@charset "UTF-8";



/* ----------------------------
	Reset
---------------------------- */
a,abbr,acronym,address,applet,article,aside,audio,b,big,blockquote,body,canvas,caption,center,cite,code,dd,del,details,dfn,div,dl,dt,em,embed,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,header,hgroup,html,i,iframe,img,ins,kbd,label,legend,li,main,mark,menu,nav,object,ol,output,p,pre,q,ruby,s,samp,section,small,span,strike,strong,sub,summary,sup,table,tbody,td,tfoot,th,thead,time,tr,tt,u,ul,var,video{margin:0;padding:0;border:0;font:inherit;vertical-align:baseline}article,main,aside,details,figcaption,figure,footer,header,hgroup,picture,menu,nav,section{display:block}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:after,blockquote:before,q:after,q:before{content:'';content:none}table{border-collapse:collapse;border-spacing:0}



/* ----------------------------
	Fonts
---------------------------- */

/* Noto Sans
---------------------------- */
@font-face {
	font-family: 'Noto Sans CJK';
	font-style: normal;
	font-weight: 400;
	src: url('../font/NotoSansCJK/NotoSansCJKjp-Regular.woff2') format('woff2'),
			 url('../font/NotoSansCJK/NotoSansCJKjp-Regular.woff') format('woff');
}
@font-face {
	font-family: 'Noto Sans CJK';
	font-style: normal;
	font-weight: 600;
	src: url('../font/NotoSansCJK/NotoSansCJKjp-Bold.woff2') format('woff2'),
			 url('../font/NotoSansCJK/NotoSansCJKjp-Bold.woff') format('woff');
}


/* Futura Std
---------------------------- */
@import url("//hello.myfonts.net/count/39dd18");
@font-face {
	font-family: 'FuturaStd-Bold';
	src: url('../font/FuturaStd/39DD18_0_0.eot');
	src: url('../font/FuturaStd/39DD18_0_0.eot?#iefix') format('embedded-opentype'),
			 url('../font/FuturaStd/39DD18_0_0.woff2') format('woff2'),
			 url('../font/FuturaStd/39DD18_0_0.woff') format('woff'),
			 url('../font/FuturaStd/39DD18_0_0.ttf') format('truetype');
}



/* ----------------------------
	Base
---------------------------- */
html, body {
	height: 100%;
}
body {
	line-height: 1.5;
	font-size: 20px;
	font-size: 1.6666667vw; /* 20px/1200px */
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-text-size-adjust: 100%;
	font-feature-settings: "palt";
	font-family: 'Noto Sans CJK', sans-serif;
	color: #000;
	position: relative;
}

@media screen and (min-width: 1200px) {
	body {
		font-size: 20px;
	}
}

@media screen and (max-width: 812px) {
	body {
		font-size: 4vw; /* 30px/750px */
	}
}


/* Anchor
---------------------------- */
a {
	outline: none;
	text-decoration: none;
	color: inherit;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-box-shadow: none;
	box-shadow: none;
}


/* Image
---------------------------- */
img {
	max-width: 100%;
	height: auto;
	vertical-align: top;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-box-shadow: none;
	box-shadow: none;
}


/* Button
---------------------------- */
button {
	display: block;
	margin: 0;
	padding: 0;
	width: auto;
	background: none;
	border: 0;
	outline: none;
	box-sizing: border-box;
	letter-spacing: inherit;
	cursor: pointer;
	font: inherit;
	color: inherit;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	-webkit-box-shadow: none;
	box-shadow: none;
}


/* Media
---------------------------- */
svg {
	display: block;
}



/* ----------------------------
	Utilities
---------------------------- */

/* Container
---------------------------- */
.container {
	margin-left: auto;
	margin-right: auto;
	padding-left: 2em;
	padding-right: 2em;
	width: 100%;
	max-width: 1200px;
	box-sizing: border-box;
}

@media screen and (max-width: 812px) {
	.container {
		padding-left: 0;
		padding-right: 0;
	}
}


/* Break Line
---------------------------- */
.pc { display: block !important; }
.sp { display: none !important; }

@media screen and (max-width: 812px) {
	.pc { display: none !important; }
	.sp { display: block !important; }
}


/* Button Menu
---------------------------- */
.button-menu {
	width: 3.5em;
	height: 3.1em;
}
.button-menu span {
	display: block;
	width: 1.5em;
	height: .2em;
	background: #fff;
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	margin-left: auto;
	margin-right: auto;
	transition: transform 0.4s;
}

@media screen and (max-width: 812px) {
	.button-menu {
		width: 14.1333333vw;
		height: 12.5333333vw;
	}
	.button-menu span {
		width: 6.1333333vw;
		height: 0.8vw;
	}
}

/* Each */
.button-menu span:nth-child(1) { margin-top: -.55em; }
.button-menu span:nth-child(2) { margin-top: -.1em; }
.button-menu span:nth-child(3) { margin-top: .35em; }

@media screen and (max-width: 812px) {
	.button-menu span:nth-child(1) { margin-top: -2.2666667vw; }
	.button-menu span:nth-child(2) { margin-top: -.4vw; }
	.button-menu span:nth-child(3) { margin-top: 1.4666667vw; }
}

/* Theme */
.button-menu-white span {
	background: #fff;
}
.button-menu-beige span {
	background: #ccaf98;
}

/* Hover */
.button-menu:hover span:nth-child(1) {
	-webkit-transform: translate3d(.1em, -.05em, 0);
	transform: translate3d(.1em, -.05em, 0);
}
.button-menu:hover span:nth-child(2) {
	-webkit-transform: translate3d(-.1em, 0, 0);
	transform: translate3d(-.1em, 0, 0);
}
.button-menu:hover span:nth-child(3) {
	-webkit-transform: translate3d(.1em, .05em, 0);
	transform: translate3d(.1em, .05em, 0);
}

@media screen and (max-width: 812px) {
	.button-menu:hover span:nth-child(1),
	.button-menu:hover span:nth-child(2),
	.button-menu:hover span:nth-child(3) {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

/* Fixed */
.button-menu-fixed {
	position: fixed;
	top: 0;
	right: 0;
	z-index: 10000;
	opacity: 0;
	visibility: hidden;
	transition: opacity 1s, visibility 1s;
}
.button-menu-fixed-visible .button-menu-fixed {
	opacity: 1;
	visibility: visible;
}


/* Loader
---------------------------- */
.loader {
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10001;
	-webkit-transition: opacity 1.2s, visibility 1.2s;
	transition: opacity 1.2s, visibility 1.2s;
}
.loaded .loader {
	opacity: 0;
	visibility: hidden;
}
.loader-spin {
	height: 36px;
	width: 36px;
	border-radius: 100%;
	border: 2px solid #ccaf98;
	-webkit-animation: loader-ripple 1s 0s infinite cubic-bezier(.21,.53,.56,.8);
	animation: loader-ripple 1s 0s infinite cubic-bezier(.21,.53,.56,.8);
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}

@-webkit-keyframes loader-ripple {
	0% {
		-webkit-transform: scale(.1);
		transform: scale(.1);
		opacity: 1;
	}
	70% {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 0.7;
	}
	100% {
		opacity: 0;
	}
}
@keyframes loader-ripple {
	0% {
		-webkit-transform: scale(.1);
		transform: scale(.1);
		opacity: 1;
	}
	70% {
		-webkit-transform: scale(1);
		transform: scale(1);
		opacity: 0.7;
	}
	100% {
		opacity: 0;
	}
}



/* ----------------------------
	Wrapper
---------------------------- */
.wrapper {
	width: 100%;
	height: 100%;
}



/* ----------------------------
	Header
---------------------------- */
.header {
	position: relative;
	z-index: 10000;
}


/* Header Logo
---------------------------- */
.header-logo {
	width: 3.3em;
	height: 1.4em;
	line-height: 1;
	position: absolute;
	top: 1em;
	left: 1em;
}
.header-logo a {
	display: block;
	height: 100%;
	transition: opacity 0.4s;
}
.header-logo a:hover {
	opacity: 0.6;
}

@media screen and (max-width: 812px) {
	.header-logo {
		width: 14.6666667vw;
		height: auto;
		top: 4vw;
		left: 4vw;
	}
	.header-logo a {
		height: auto;
	}
	.header-logo a:hover {
		opacity: 1;
	}
}


/* Header Button
---------------------------- */
.header-button {
	position: absolute;
	top: 0;
	right: 0;
}



/* ----------------------------
	Hero
---------------------------- */
.hero {
	height: 100%;
	background: #ccaf98;
	box-sizing: border-box;
	color: #fff;
	position: relative;
}

@media screen and (max-width: 812px) {
	.hero {
		padding-top: 20.4vw;
		padding-bottom: 12.2666667vw;
		height: auto;
	}
}


/* Hero Movie
---------------------------- */
.hero-movie {
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
}
.hero-movie video {
	width: auto;
	height: auto;
	min-width: 100%;
	min-height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	opacity: 0;
	visibility: hidden;
	z-index: 1;
}
.hero-movie video.playing {
	opacity: 1;
	visibility: visible;
	z-index: 2;
}

@media screen and (max-width: 812px) {
	.hero-movie {
		height: 56.25vw;
		position: relative;
	}
	.hero-movie video {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 0;
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
	}
}


/* Hero Lead
---------------------------- */
.hero-lead {
	display: none;
}

@media screen and (max-width: 812px) {
	.hero-lead {
		display: block;
		margin: 4.5333333vw auto 0;
		width: 87.6vw;
		height: 14.9333333vw;
		background: url(../img/lead-sp.png) no-repeat center;
		background-size: contain;
		opacity: 0;
		transition: opacity 1s;
	}
	.loaded .hero-lead {
		opacity: 1;
		transition-delay: 0.6s;
	}
}


/* Hero Play
---------------------------- */
.hero-play {
	position: absolute;
	left: 1.5em;
	bottom: 1.5em;
	z-index: 3;
	color: #000;
	opacity: 0;
	transition: opacity 1s;
}
.loaded .hero-play {
	opacity: 1;
	transition-delay: 0.9s;
}
.hero-play button {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	transition: opacity 0.4s;
}
.hero-play button:hover {
	opacity: 0.6;
}

@media screen and (max-width: 812px) {
	.hero-play {
		margin-top: 10.1333333vw;
		color: #fff;
		position: relative;
		left: 0;
		bottom: 0;
	}
	.hero-play button {
		margin: 0 auto;
	}
	.hero-play button:hover {
		opacity: 1;
	}
}

/* Hero Play Icon */
.hero-play i {
	display: block;
	width: 2.3em;
	height: 2.3em;
	border: .4em solid;
	box-sizing: border-box;
	border-radius: 100%;
	position: relative;
}
.hero-play i:before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: .35em 0 .35em .55em;
	border-color: transparent transparent transparent currentColor;
	position: absolute;
	top: 0;
	bottom: 0;
	left: .55em;
	margin: auto 0;
}

@media screen and (max-width: 812px) {
	.hero-play i {
		width: 10.1333333vw;
		height: 10.1333333vw;
		border: 1.6vw solid;
	}
	.hero-play i:before {
		border-width: 1.7333333vw 0 1.7333333vw 2.6666667vw;
		left: 2.5333333vw;
	}
}

/* Hero Play Label */
.hero-play span {
	display: block;
	margin-left: .238095238em;
	line-height: 1;
	font-family: "FuturaStd-Bold", "Futura", sans-serif;
	font-size: 2.1em;
	position: relative;
	top: .119047619em;
}

@media screen and (max-width: 812px) {
	.hero-play span {
		margin-left: 2vw;
		font-size: 2em;
		top: .8vw;
	}
}


/* Hero Scroll
---------------------------- */
.hero-scroll {
	padding-top: 1em;
	width: 2.1em;
	height: 0;
	overflow: hidden;
	background: url(../img/hero-arrow-down.png) no-repeat center;
	background-size: contain;
	position: absolute;
	bottom: 2em;
	left: 50%;
	opacity: 0;
	z-index: 3;
	margin-left: -1.2em;
}
.loaded .hero-scroll {
	-webkit-animation: scroll-down 2s infinite 0.6s;
	animation: scroll-down 2s infinite 0.6s;
}

/* Animation */
@-webkit-keyframes scroll-down {
	0% {
		-webkit-transform: translateY(-6px);
		transform: translateY(-6px);
		opacity: 0;
	}
	50% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
	100% {
		-webkit-transform: translateY(6px);
		transform: translateY(6px);
		opacity: 0;
	}
}
@keyframes scroll-down {
	0% {
		-webkit-transform: translateY(-6px);
		transform: translateY(-6px);
		opacity: 0;
	}
	50% {
		-webkit-transform: translateY(0);
		transform: translateY(0);
		opacity: 1;
	}
	100% {
		-webkit-transform: translateY(6px);
		transform: translateY(6px);
		opacity: 0;
	}
}

@media screen and (max-width: 812px) {
	.hero-scroll {
		display: none;
	}
}



/* ----------------------------
	Intro
---------------------------- */

/* Intro Image
---------------------------- */
.intro-image {
	overflow: hidden;
	position: relative;
}
.intro-image img {
	max-width: none;
	width: 100%;
	opacity: 0;
	-webkit-transform: scale(1.032);
	transform: scale(1.032);
	transition: all 1s;
	position: relative;
}
.intro-image.on img {
	opacity: 1;
	-webkit-transform: scale(1);
	transform: scale(1);
}
.intro-image figcaption {
	font-size: .5em;
	position: absolute;
	right: 2em;
	bottom: 1.8em;
}

@media screen and (max-width: 812px) {
	.intro-image:before {
		content: "";
		display: block;
		width: 100%;
		background: #ccaf98;
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		bottom: 1px;
	}
	.loaded .intro-image img {
		opacity: 1;
		-webkit-transform: scale(1);
		transform: scale(1);
		transition-delay: 1.2s;
	}
	.intro-image figcaption {
		font-size: .666666667em;
		right: auto;
		bottom: 1.8666667vw;
		left: 4vw;
	}
}


/* Intro Body
---------------------------- */
.intro-body {
	margin-top: -4.5em;
	padding-bottom: 5em;
	text-align: center;
	position: relative;
}

@media screen and (max-width: 812px) {
	.intro-body {
		margin-top: 0;
		padding-top: 10.1333333vw;
		padding-bottom: 13.3333333vw;
	}
}


/* Intro Title
---------------------------- */
.intro-title {
	margin-left: auto;
	margin-right: auto;
	width: 26.3em;
	opacity: 0;
	-webkit-transform: translate3d(.6em, 0, 0);
	transform: translate3d(.6em, 0, 0);
	transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.on .intro-title {
	opacity: 1;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

@media screen and (max-width: 812px) {
	.intro-title {
		width: 75.7333333vw;
		-webkit-transform: translate3d(2.6666667vw, 0, 0);
		transform: translate3d(2.6666667vw, 0, 0);
	}
}


/* Intro Lead
---------------------------- */
.intro-lead {
	margin: 1.9em auto 0;
	width: 37em;
	opacity: 0;
	-webkit-transform: translate3d(-.6em, 0, 0);
	transform: translate3d(-.6em, 0, 0);
	transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.on .intro-lead {
	opacity: 1;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

@media screen and (max-width: 812px) {
	.intro-lead {
		display: none;
	}
}


/* Intro Text
---------------------------- */
.intro-text {
	margin-top: 1.428571429em;
	line-height: 1.428571429;
	font-weight: bold;
	font-size: .7em;
	opacity: 0;
	transition: opacity 1s;
}
.on .intro-text {
	opacity: 1;
	transition-delay: 0.5s;
}

@media screen and (max-width: 812px) {
	.intro-text {
		margin-top: 4vw;
		line-height: 1.416666667;
		font-size: .8em;
	}
}


/* Intro Detail
---------------------------- */
.intro-detail {
	margin-top: .7em;
	opacity: 0;
	transition: opacity 1s;
}
.on .intro-detail {
	opacity: 1;
	transition-delay: 0.5s;
}
.intro-detail dt {
	letter-spacing: -0.01em;
	line-height: 1.214285714;
	font-weight: bold;
	font-size: 1.05em;
}
.intro-detail dd {
	display: inline-block;
	margin-top: .3em;
	vertical-align: top;
}
.intro-detail dd a {
	display: block;
	padding-top: .210526316em;
	padding-right: 1em;
	background: url(../img/arrow-right-beige.png) no-repeat right center;
	background-size: .421052632em auto;
	font-family: "FuturaStd-Bold", "Futura", sans-serif;
	font-size: .95em;
	color: #ccaf98;
	transition: opacity 0.4s;
}
.win .intro-detail dd a {
	padding-top: 0;
	padding-bottom: .1em;
}
.intro-detail dd a:hover {
	opacity: 0.6;
}

@media screen and (max-width: 812px) {
	.intro-detail {
		margin-top: 3.4666667vw;
	}
	.intro-detail dt {
		letter-spacing: -0.02em;
		line-height: 1.214285714;
		font-size: .933333333em;
		color: #ccaf98;
	}
	.intro-detail dd {
		margin-top: .5333333vw;
	}
	.intro-detail dd a {
		padding-top: 1.0666667vw;
		padding-right: 1em;
		background-size: 1.7333333vw auto;
		font-size: 1.066666667em;
	}
	.intro-detail dd a:hover {
		opacity: 1;
	}
}


/* Intro Button
---------------------------- */
.intro-button {
	margin: 1.125em auto 0;
	width: 10.416666667em;
	line-height: 3.333333333;
	background: #000;
	text-align: center;
	font-family: "FuturaStd-Bold", "Futura", sans-serif;
	font-size: 1.2em;
	color: #fff;
	opacity: 0;
	transition: background 0.4s, opacity 1s 0.5s;
}
.on .intro-button {
	opacity: 1;
}
.intro-button:hover {
	background: #ccaf98;
}

@media screen and (max-width: 812px) {
	.intro-button {
		margin-top: 5.8666667vw;
		width: 56vw;
		line-height: 2.954545455;
		font-size: 1.466666667em;
	}
	.intro-button:hover {
		background: #000;
	}
}


/* Intro Banner
---------------------------- */
.intro-banner {
	margin: 1.6em auto 0;
	width: 29em;
	height: 16.3em;
	overflow: hidden;
	position: relative;
	opacity: 0;
	transition: opacity 1s 0.5s;
}
.on .intro-banner {
	opacity: 1;
}

@media screen and (max-width: 812px) {
	.intro-banner {
		margin-top: 5.6vw;
		width: 92vw;
		height: 51.6vw;
	}
}

/* Background */
.intro-banner:before,
.intro-banner:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	transition: all 0.6s;
}
.intro-banner:before {
	background: url(../img/intro-banner-bg.png) no-repeat center;
	background-size: cover;
}
.intro-banner:after {
	background: rgba(0, 0, 0, .25);
}
.intro-banner:hover:before {
	-webkit-transform: scale(1.115);
	transform: scale(1.115);
}
.intro-banner:hover:after {
	opacity: 0;
}

@media screen and (max-width: 812px) {
	.intro-banner:hover:before {
		-webkit-transform: scale(1);
		transform: scale(1);
	}
	.intro-banner:hover:after {
		opacity: 1;
	}
}

/* Label */
.intro-banner img {
	display: block;
	margin: auto;
	width: 18em;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	transition: all 0.4s;
}
.intro-banner:hover img {
	opacity: 0;
	visibility: hidden;
}

@media screen and (max-width: 812px) {
	.intro-banner img {
		width: 65.7333333vw;
	}
	.intro-banner:hover img {
		opacity: 1;
		visibility: visible;
	}
}



/* ----------------------------
	Look
---------------------------- */
.looks {
	padding-bottom: 5em;
}

@media screen and (max-width: 812px) {
	.looks {
		padding-bottom: 0;
	}
}


/* Look Container
---------------------------- */
.look {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	margin-top: 3em;
}
.look:first-child {
	margin-top: 0;
}
.look:nth-child(even) {
	-webkit-box-direction: reverse;
	-webkit-flex-direction: row-reverse;
	flex-direction: row-reverse;
}

@media screen and (max-width: 812px) {
	.look {
		display: block;
		margin-top: 0;
		padding-bottom: 13.3333333vw;
	}
}


/* Look Head
---------------------------- */
.look-head {
	width: 50%;
	position: relative;
}

@media screen and (max-width: 812px) {
	.look-head {
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
		-webkit-box-orient: vertical;
		-webkit-box-direction: reverse;
		-webkit-flex-direction: column-reverse;
		flex-direction: column-reverse;
		width: 100%;
		overflow: hidden;
	}
}


/* Look Title
---------------------------- */
.look-title {
	position: absolute;
	bottom: 1.85em;
}
.look-title em {
	display: block;
	line-height: .837837838;
	font-family: "FuturaStd-Bold", "Futura", sans-serif;
	color: #ccaf98;
}
.look-title span {
	display: block;
	letter-spacing: -0.01em;
	font-weight: bold;
	font-size: .7em;
}

@media screen and (max-width: 812px) {
	.look-title {
		position: relative;
		bottom: 0;
	}
	.look-title em {
		line-height: .828571429;
	}
	.look-title span {
		font-size: .8em;
	}
}

/* Each Position */
.look:nth-child(odd) .look-title {
	text-align: right;
	right: -3.5em;
}
.look:nth-child(even) .look-title {
	text-align: left;
	left: -3.5em;
}

@media screen and (max-width: 812px) {
	.look:nth-child(odd) .look-title {
		text-align: center;
		right: 0;
	}
	.look:nth-child(even) .look-title {
		text-align: center;
		left: 0;
	}
}

/* Transition */
.look-title {
	opacity: 0;
	transition: all 1s cubic-bezier(0.165, 0.84, 0.44, 1);
	z-index: 1;
}
.look:nth-child(odd) .look-title {
	-webkit-transform: translate3d(-.5em, 0, 0);
	transform: translate3d(-.5em, 0, 0);
}
.look:nth-child(even) .look-title {
	-webkit-transform: translate3d(.5em, 0, 0);
	transform: translate3d(.5em, 0, 0);
}
.look.on .look-title {
	opacity: 1;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	transition-delay: 0.3s;
}

@media screen and (max-width: 812px) {
	.look:nth-child(odd) .look-title {
			-webkit-transform: translate3d(-2.1333333vw, 0, 0);
			transform: translate3d(-2.1333333vw, 0, 0);
		}
	.look:nth-child(even) .look-title {
			-webkit-transform: translate3d(2.1333333vw, 0, 0);
			transform: translate3d(2.1333333vw, 0, 0);
		}
	.look.on .look-title {
		-webkit-transform: translate3d(0, 0, 0);
		transform: translate3d(0, 0, 0);
	}
}

/* Each Size */
.look-beni .look-title em {
	margin-bottom: -.09em;
	letter-spacing: -0.05em;
	font-size: 5em;
}
.look-beni:nth-child(even) .look-title span {
	text-indent: .357142857em;
}
.look-miu .look-title em {
	margin-bottom: -.09em;
	letter-spacing: -0.05em;
	font-size: 5em;
}
.look-mio .look-title em {
	margin-bottom: -.054054054em;
	letter-spacing: -0.04em;
	font-size: 3.7em;
}
.look-ayaka .look-title em {
	margin-bottom: -.028571429em;
	letter-spacing: -0.04em;
	font-size: 3.5em;
}
.look-kana .look-title em {
	margin-bottom: -.054054054em;
	letter-spacing: -0.04em;
	font-size: 3.7em;
}

@media screen and (max-width: 812px) {
	.look-beni .look-title em {
		margin-top: -7.4666667vw;
		margin-bottom: -1.8666667vw;
		text-indent: -1.0666667vw;
		font-size: 5.666666667em;
	}
	.look-beni:nth-child(even) .look-title span {
		text-indent: 0;
	}
	.look-miu .look-title em {
		margin-top: -7.4666667vw;
		margin-bottom: -1.8666667vw;
		font-size: 5.666666667em;
	}
	.look-mio .look-title em {
		margin-top: -6.133333333vw;
		margin-bottom: -1.3333333vw;
		letter-spacing: -0.05em;
		font-size: 4.666666667em;
	}
	.look-ayaka .look-title em {
		margin-top: -6.133333333vw;
		margin-bottom: -1.3333333vw;
		letter-spacing: -0.05em;
		font-size: 4.666666667em;
	}
	.look-kana .look-title em {
		margin-top: -6.133333333vw;
		margin-bottom: -1.3333333vw;
		letter-spacing: -0.05em;
		font-size: 4.666666667em;
	}
}

/* Win */
.win .look-beni .look-title em {
	margin-bottom: 3px;
}
.win .look-miu .look-title em {
	margin-bottom: 3px;
}
.win .look-mio .look-title em {
	margin-bottom: 5px;
}
.win .look-ayaka .look-title em {
	margin-bottom: 5px;
}
.win .look-kana .look-title em {
	margin-bottom: 5px;
}


/* Look Image
---------------------------- */
.look-image {
	overflow: hidden;
}
.look-image img {
	max-width: none;
	width: 100%;
	opacity: 0;
	-webkit-transform: scale(1.032);
	transform: scale(1.032);
	transition: all 1s ease-out;
}
.on .look-image img {
	opacity: 1;
	-webkit-transform: scale(1);
	transform: scale(1);
}


/* Look Body
---------------------------- */
.look-body {
	width: 50%;
	box-sizing: border-box;
	opacity: 0;
	transition: opacity 1s;
}
.on .look-body {
	opacity: 1;
	transition-delay: 0.6s;
}

@media screen and (max-width: 812px) {
	.look-body {
		margin-top: 4.2666667vw;
		width: 100%;
	}
}

/* Each */
.look:nth-child(odd) .look-body {
	padding-left: 10.2678571%;
	padding-right: 6.6964286%;
}
.look:nth-child(even) .look-body {
	padding-left: 6.6964286%;
	padding-right: 10.2678571%;
}

@media screen and (max-width: 812px) {
	.look:nth-child(odd) .look-body,
	.look:nth-child(even) .look-body {
		padding-left: 4vw;
		padding-right: 4vw;
	}
}


/* Look Movie
---------------------------- */
.look-movie {
	/* border: .3em solid #ccaf98; */
	background: #e5e5e5;
	overflow: hidden;
	box-sizing: border-box;
	position: relative;
}
.look-movie:before {
	content: "";
	display: block;
	padding-top: 56.25%;
}
.look-movie .video-js {
	width: 100%;
	height: 100%;
	outline: none;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.look-movie .vjs-poster {
	background-color: #ccaf98;
	background-size: cover;
}

@media screen and (max-width: 812px) {
	.look-movie {
		/* border: 1.3333333vw solid #ccaf98; */
	}
}

/* Play Button */
.look-movie-play {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.look-movie-play img {
	width: 2.7em;
}

@media screen and (max-width: 812px) {
	.look-movie-play img {
		width: 12.8vw;
	}
}


/* Look Lead
---------------------------- */
.look-lead em {
	display: block;
	line-height: 1.25;
	font-family: "FuturaStd-Bold", "Futura", sans-serif;
	font-size: .8em;
	color: #ccaf98;
}
.look-lead span {
	display: block;
	margin-top: .0625em;
	line-height: 1.25;
	font-weight: bold;
	font-size: .8em;
}

@media screen and (max-width: 812px) {
	.look-lead em {
		font-size: 1.066666667em;
	}
	.look-lead span {
		margin-top: 0;
		font-size: 1em;
	}
}


/* Look Text
---------------------------- */
.look-text {
	margin-top: .65em;
}
.look-text dd {
	margin-top: .428571429em;
	line-height: 1.571428571;
	font-size: .7em;
}

@media screen and (max-width: 812px) {
	.look-text {
		margin-top: 2.9333333vw;
	}
	.look-text dd {
		margin-top: 1.3333333vw;
		line-height: 1.5;
		font-size: .8em;
	}
}


/* Look Detail
---------------------------- */
.look-detail {
	margin-top: .6em;
	text-align: right;
	line-height: 1;
}
.look-detail a {
	display: inline-block;
	padding: .307692308em 1.307692308em 0 1em;
	background: url(../img/arrow-right-beige.png) no-repeat right .384615385em center;
	background-size: .384615385em auto;
	white-space: nowrap;
	vertical-align: top;
	line-height: 1.25;
	font-family: "FuturaStd-Bold", "Futura", sans-serif;
	font-size: .65em;
	color: #ccaf98;
	transition: opacity 0.4s;
}
.look-detail a:hover {
	opacity: 0.6;
}
.win .look-detail a {
	padding-top: 0;
}

@media screen and (max-width: 812px) {
	.look-detail {
		margin-top: 3.2vw;
	}
	.look-detail a {
		padding-top: 0.8vw;
		padding-right: 1.333333333em;
		background-position: right 1.3333333vw center;
		background-size: 1.2vw auto;
		font-size: .733333333em;
	}
}


/* Look Recommend
---------------------------- */
.look-recommend {
	margin-top: .75em;
	padding-top: .8em;
	border-top: .25em solid #ccaf98;
}
.look-recommend dt {
	margin-bottom: .8em;
}

@media screen and (max-width: 812px) {
	.look-recommend {
		margin-top: 4vw;
		padding-top: 2.9333333vw;
		border-top: 1.3333333vw solid #ccaf98;
	}
	.look-recommend dt {
		margin-bottom: 3.7333333vw;
	}
}

/* Look Recommend Item */
.look-recommend-item {
	border-top: 1px solid rgba(204, 175, 152, 0.5);
}
.look-recommend-item:last-child {
	border-bottom: 1px solid rgba(204, 175, 152, 0.5);
}
.look-recommend-item a {
	display: block;
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	min-height: 2.45em;
	height: 2.45em;
	transition: opacity 0.4s;
}
.look-recommend-item a:hover {
	opacity: 0.6;
}

@media screen and (max-width: 812px) {
	.look-recommend-item a {
		min-height: 11.7333333vw;
		height: 11.7333333vw;
	}
	.look-recommend-item a:hover {
		opacity: 1;
	}
}

/* Look Recommend Label */
.look-recommend-label {
	display: block;
	line-height: 1.285714286;
	font-size: .7em;
}

@media screen and (max-width: 812px) {
	.look-recommend-label {
		line-height: 1.333333333;
		font-size: .8em;
	}
}

/* Look Recommend Detail */
.look-recommend-detail {
	display: block;
	padding: .307692308em 1.307692308em 0 1em;
	background: url(../img/arrow-right-beige.png) no-repeat right .384615385em center;
	background-size: .384615385em auto;
	white-space: nowrap;
	line-height: 1.25;
	font-family: "FuturaStd-Bold", "Futura", sans-serif;
	font-size: .65em;
	color: #ccaf98;
}
.win .look-recommend-detail {
	padding-top: 0;
}

@media screen and (max-width: 812px) {
	.look-recommend-detail {
		padding-top: 0.8vw;
		padding-right: 1.333333333em;
		background-position: right 1.3333333vw center;
		background-size: 1.2vw auto;
		font-size: .733333333em;
	}
}



/* ----------------------------
	Product
---------------------------- */
.product {
	padding-top: 5em;
	background: #000;
	text-align: center;
	color: #fff;
}

@media screen and (max-width: 812px) {
	.product {
		padding-top: 13.3333333vw;
	}
}


/* Product Image
---------------------------- */
.product-image {
	margin-left: auto;
	margin-right: auto;
	width: 33.5em;
	overflow: hidden;
}
.product-image img {
	max-width: none;
	width: 100%;
	opacity: 0;
	-webkit-transform: scale(1.032);
	transform: scale(1.032);
	transition: all 1s ease-out;
}
.on .product-image img {
	opacity: 1;
	-webkit-transform: scale(1);
	transform: scale(1);
}

@media screen and (max-width: 812px) {
	.product-image {
		width: 90.7894737vw;
	}
}


/* Product Body
---------------------------- */
.product-body {
	opacity: 0;
	transition: opacity 1s;
}
.on .product-body {
	opacity: 1;
	transition-delay: 0.3s;
}


/* Product Title
---------------------------- */
.product-title {
	margin: 2.6em auto 0;
	width: 37.05em;
}

@media screen and (max-width: 812px) {
	.product-title {
		margin-top: 5.3333333vw;
		width: 78.4vw;
	}
}


/* Product Text
---------------------------- */
.product-text {
	margin-top: 1.285714286em;
	line-height: 1.428571429;
	font-weight: bold;
	font-size: .7em;
}

@media screen and (max-width: 812px) {
	.product-text {
		margin-top: 4.2666667vw;
		line-height: 1.5;
		font-weight: normal;
		font-size: .8em;
	}
}


/* Product Info
---------------------------- */
.product-info {
	margin-top: .6em;
}
.product-info dt {
	line-height: 1.375;
	font-weight: bold;
	font-size: .8em;
}
.product-info dd {
	line-height: 1.833333333;
	font-size: .6em;
}

@media screen and (max-width: 812px) {
	.product-info {
		margin-top: 3.7333333vw;
	}
	.product-info dt {
		line-height: 1.384615385;
		font-size: .866666667em;
	}
	.product-info dd {
		line-height: 1.8;
		font-size: .666666667em;
	}
}


/* Product Button
---------------------------- */
.product-button {
	display: inline-block;
	margin-top: .3em;
	vertical-align: top;
}
.product-button a {
	display: block;
	padding-top: .210526316em;
	padding-right: 1em;
	background: url(../img/arrow-right-beige.png) no-repeat right center;
	background-size: .421052632em auto;
	font-family: "FuturaStd-Bold", "Futura", sans-serif;
	font-size: .95em;
	color: #ccaf98;
	transition: opacity 0.4s;
}
.win .product-button a {
	padding-top: 0;
}
.product-button a:hover {
	opacity: 0.6;
}

@media screen and (max-width: 812px) {
	.product-button {
		margin-top: 1.0666667vw;
	}
	.product-button a {
		padding-top: 0.9333333vw;
		background-size: 1.7333333vw auto;
		font-size: 1.066666667em;
	}
	.product-button a:hover {
		opacity: 1;
	}
}



/* ----------------------------
	Event Info
---------------------------- */
.event {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	background: rgba(255, 255, 255, 0.85);
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10001;
	opacity: 0;
	visibility: hidden;
	transition: all 0.8s;
}
.event-visible .event {
	opacity: 1;
	visibility: visible;
}

@media screen and (max-width: 812px) {
	.event {
		padding: 4vw;
	}
}


/* Event Container
---------------------------- */
.event-container {
	width: 45em;
	max-height: 100%;
	border: .45em solid #000;
	box-sizing: border-box;
	background: #fff;
	position: relative;
}

@media screen and (max-width: 812px) {
	.event-container {
		width: 100%;
		height: 100%;
		border: 1.3333333vw solid #000;
	}
}


/* Event Inner
---------------------------- */
.event-inner {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	padding: 3.5em 0 3.5em 3.5em;
	box-sizing: border-box;
	position: relative;
}

@media screen and (max-width: 812px) {
	.event-inner {
		display: block;
		padding: 6.6666667vw;
		height: 100%;
		overflow: hidden;
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
	}
}


/* Event Map
---------------------------- */
.event-map {
	width: 43.3497537%;
	background: #f8f8f8 url(../img/event-map.png) no-repeat center;
	background-size: cover;
	overflow: hidden;
	position: relative;
}
.event-map:before {
	content: "";
	display: block;
	padding-top: 100%;
}
.event-map iframe {
	display: none;
	pointer-events: none;
}

@media screen and (max-width: 812px) {
	.event-map {
		width: 100%;
	}
}


/* Event Body
---------------------------- */
.event-body {
	padding: 0 7.3891626%;
	width: 56.6502463%;
	box-sizing: border-box;
}

@media screen and (max-width: 812px) {
	.event-body {
		margin-top: 9.3333333vw;
		padding: 0;
		width: 100%;
	}
}


/* Event Title
---------------------------- */
.event-title {
	margin-left: auto;
	margin-right: auto;
	width: 15.35em;
	line-height: 1;
}
.event-title img {
	max-width: none;
	width: 100%;
}

@media screen and (max-width: 812px) {
	.event-title {
		width: 61.6vw;
	}
}


/* Event Text
---------------------------- */
.event-text {
	margin-top: 3.142857143em;
	text-align: justify;
	line-height: 1.571428571;
	font-size: .7em;
}

@media screen and (max-width: 812px) {
	.event-text {
		margin-top: 8.2666667vw;
		line-height: 1.5;
		font-size: .8em;
	}
}


/* Event List
---------------------------- */
.event-list {
	margin-top: .6em;
}
.event-list li {
	line-height: 1.571428571;
	font-weight: bold;
	font-size: .7em;
}

@media screen and (max-width: 812px) {
	.event-list {
		margin-top: 2.1333333vw;
	}
	.event-list li {
		line-height: 1.5;
		font-size: .8em;
	}
}


/* Event Close
---------------------------- */
.event-close {
	width: 2.5em;
	height: 2.5em;
	background: #000;
	line-height: 1;
	position: absolute;
	top: -.45em;
	right: -.45em;
}
.event-close img {
	width: .9em;
}

@media screen and (max-width: 812px) {
	.event-close {
		width: 13.3333333vw;
		height: 13.3333333vw;
		top: -1.3333333vw;
		right: -1.3333333vw;
	}
	.event-close img {
		width: 5.6vw;
	}
}



/* ----------------------------
	Menu
---------------------------- */

/* Menu Container
---------------------------- */
.menu-container {
	width: 100%;
	height: 100%;
	overflow: hidden;
	overflow-y: auto;
	background: #ccaf98;
	color: #fff;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10001;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.8s, visibility 0.8s;
}
.menu-visible .menu-container {
	opacity: 1;
	visibility: visible;
}


/* Menu Body
---------------------------- */
.menu-body {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	padding: 3em 0;
	min-height: 100%;
	height: 100%;
	box-sizing: border-box;
}
.menu-inner {
	padding-top: 1em;
	text-align: center;
}

@media screen and (max-width: 812px) {
	.menu-body {
		padding: 2em 0;
		height: auto;
	}
	.menu-inner {
		padding-top: 4.8vw;
	}
}


/* Menu Title
---------------------------- */
.menu-title {
	width: 15.2em;
}

@media screen and (max-width: 812px) {
	.menu-title {
		width: 55.7333333vw;
	}
}


/* Menu List
---------------------------- */
.menu-list {
	margin-top: 1.7em;
}
.menu-list a {
	display: block;
	line-height: 1.5;
	letter-spacing: -0.01em;
	font-family: "FuturaStd-Bold", "Futura", sans-serif;
	font-size: 2em;
	transition: opacity 0.4s;
}
.menu-list a:hover {
	opacity: 0.6;
}

@media screen and (max-width: 812px) {
	.menu-list {
		margin-top: 9.6vw;
	}
	.menu-list a {
		line-height: 1.944444444;
		letter-spacing: 0;
		font-size: 1.8em;
	}
	.menu-list a:hover {
		opacity: 1;
	}
}


/* Menu Close
---------------------------- */
.menu-close {
	width: 3.5em;
	height: 3.1em;
	position: absolute;
	top: 0;
	right: 0;
	transition: opacity 0.4s;
}
.menu-close:hover {
	opacity: 0.6;
}
.menu-close img {
	width: 1.5em;
	opacity: 0;
	transition: all 0.8s;
}
.menu-visible .menu-close img {
	opacity: 1;
	transition-delay: 1.2s;
}

@media screen and (max-width: 812px) {
	.menu-close {
		width: 14.1333333vw;
		height: 12.5333333vw;
	}
	.menu-close:hover {
		opacity: 1;
	}
	.menu-close img {
		width: 5.6vw;
	}
}


/* Menu Transition
---------------------------- */
.menu-title,
.menu-list li {
	opacity: 0;
	visibility: hidden;
	-webkit-transform: translate3d(0, .4em, 0);
	transform: translate3d(0, .4em, 0);
	transition: all 0.8s;
}
.menu-visible .menu-title,
.menu-visible .menu-list li {
	opacity: 1;
	visibility: visible;
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

@media screen and (max-width: 812px) {
	.menu-title,
	.menu-list li {
		-webkit-transform: translate3d(0, 2.1333333vw, 0);
		transform: translate3d(0, 2.1333333vw, 0);
	}
}

/* Delay */
.menu-visible .menu-title { transition-delay: 0.4s; }
.menu-visible .menu-list li:nth-child(1) { transition-delay: 0.5s; }
.menu-visible .menu-list li:nth-child(2) { transition-delay: 0.6s; }
.menu-visible .menu-list li:nth-child(3) { transition-delay: 0.7s; }
.menu-visible .menu-list li:nth-child(4) { transition-delay: 0.8s; }



/* ----------------------------
	Information
---------------------------- */
.info {
	padding-top: 2.75em;
	padding-bottom: 6.4em;
	background: #000;
	text-align: center;
	color: #fff;
}

@media screen and (max-width: 812px) {
	.info {
		padding-top: 7.7333333vw;
		padding-bottom: 16.5333333vw;
	}
}


/* Info Contact
---------------------------- */
.info-contact {
	line-height: 1.857142857;
	font-size: .7em;
}

@media screen and (max-width: 812px) {
	.info-contact {
		line-height: 1.769230769;
		font-size: .866666667em;
	}
}


/* Info Button
---------------------------- */
.info-button {
	margin: 1.2em auto 0;
	width: 17.5em;
}
.info-button a {
	display: block;
	height: 4em;
	background: #fff;
	position: relative;
	transition: opacity 0.4s;
}
.info-button a:hover {
	opacity: 0.6;
}
.info-button img {
	margin: 0 auto;
	width: 13.1em;
	position: absolute;
	top: 1.45em;
	left: 0;
	right: 0;
}

@media screen and (max-width: 812px) {
	.info-button {
		margin-top: 5.3333333vw;
		width: 77.3333333vw;
	}
	.info-button a {
		height: 17.3333333vw;
	}
	.info-button a:hover {
		opacity: 1;
	}
	.info-button img {
		width: 62.1333333vw;
		top: 6.2666667vw;
	}
}


/* Info Share
---------------------------- */
.info-share {
	margin-top: 2.3em;
}
.info-share dt {
	letter-spacing: -0.01em;
	font-family: "FuturaStd-Bold", "Futura", sans-serif;
	font-size: .9em;
}
.info-share dd {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	margin-top: .15em;
}

@media screen and (max-width: 812px) {
	.info-share {
		margin-top: 6.6666667vw;
	}
	.info-share dt {
		font-size: 1.066666667em;
	}
	.info-share dd {
		margin-top: 0.6666667vw;
	}
}

/* Info Share Icon */
.info-share a {
	display: block;
	margin: 0 .25em;
	width: 3em;
	height: 3em;
	border: .2em solid #fff;
	border-radius: 100%;
	box-sizing: border-box;
	position: relative;
	transition: background 0.4s;
}
.info-share a:hover {
	background: #fff;
}
.info-share svg {
	display: block;
	height: 100%;
	fill: #fff;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0 auto;
	transition: fill 0.4s;
}
.info-share a:hover svg {
	fill: #ccaf98;
}

@media screen and (max-width: 812px) {
	.info-share a {
		margin: 0 1.3333333vw;
		width: 13.8666667vw;
		height: 13.8666667vw;
		border: 1.0666667vw solid #fff;
	}
	.info-share a:hover {
		background: transparent;
	}
	.info-share a:hover svg {
		fill: #fff;
	}
}

/* Each */
.info-share-facebook svg { width: .6em; }
.info-share-twitter svg { width: 1.2em; }
.info-share-line svg { width: 1.2em; }

@media screen and (max-width: 812px) {
	.info-share-facebook svg { width: 2.1333333vw; }
	.info-share-twitter svg { width: 4.8vw; }
	.info-share-line svg { width: 5.0666667vw; }
}


/* Info Transition
---------------------------- */
.info > * {
	opacity: 0;
	transition: opacity 1s;
}
.info.on > * {
	opacity: 1;
	transition-delay: 0.3s;
}



/* ----------------------------
	Footer
---------------------------- */
.footer {
	padding: 2em 0;
	background: #303030;
	text-align: center;
	color: #fff;
	position: relative;
}

@media screen and (max-width: 812px) {
	.footer {
		padding: 8% 0 7.4666667%;
	}
}


/* Footer Logo
---------------------------- */
.footer-logo {
	margin: 0 auto;
	width: 7.9em;
}
.footer-logo a {
	display: block;
	transition: opacity 0.4s;
}
.footer-logo a:hover {
	opacity: 0.6;
}

@media screen and (max-width: 812px) {
	.footer-logo {
		width: 32vw;
	}
	.footer-logo a:hover {
		opacity: 1;
	}
}


/* Footer SNS
---------------------------- */
.footer-sns {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	line-height: 1;
	margin-top: 1em;
}
.footer-sns a {
	display: block;
	padding: .75em;
	transition: opacity 0.4s;
}
.footer-sns a:hover {
	opacity: 0.6;
}
.footer-sns svg {
	width: 1.25em;
	height: 1.25em;
	fill: #fff;
}

@media screen and (max-width: 812px) {
	.footer-sns {
		margin-top: 9.3333333vw;
	}
	.footer-sns a {
		padding: 4.4vw;
	}
	.footer-sns a:hover {
		opacity: 1;
	}
	.footer-sns svg {
		width: 7.4666667vw;
		height: 7.4666667vw;
	}
}


/* Footer Copy
---------------------------- */
.footer-copy {
	margin-top: 1.8em;
	letter-spacing: 0.02em;
	line-height: 1.4;
	font-size: .5em;
}

@media screen and (max-width: 812px) {
	.footer-copy {
		margin-top: 7.7333333vw;
		line-height: 1.777777778;
		font-size: .666666667em;
	}
}




/* ----------------------------
	Modal
---------------------------- */
.modal {
	display: -webkit-box;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	-webkit-box-align: center;
	-webkit-align-items: center;
	align-items: center;
	width: 100%;
	height: 100%;
	background: rgba(255, 255, 255, 0.85);
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 10001;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.8s, visibility 0.8s;
}
.modal-visible .modal {
	opacity: 1;
	visibility: visible;
}


/* Modal Movie
---------------------------- */
.modal-movie {
	width: 45em;
	background: #f9f9f9;
	overflow: hidden;
	position: relative;
}
.modal-movie:before {
	content: "";
	display: block;
	padding-top: 56.25%;
}
.modal-movie .video-js {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	opacity: 0;
	visibility: hidden;
}
.modal-movie .video-js.modal-movie-visible {
	opacity: 1;
	visibility: visible;
}
.modal-movie .vjs-resize-manager {
	display: none;
}


@media screen and (max-width: 812px) {
	.modal-movie {
		width: 100%;
	}
}


/* Modal Close
---------------------------- */
.modal-close {
	width: 3.5em;
	height: 3.1em;
	position: absolute;
	top: 0;
	right: 0;
}
.modal-close img {
	width: 1.5em;
}

@media screen and (max-width: 812px) {
	.modal-close {
		width: 14.1333333vw;
		height: 12.5333333vw;
	}
	.modal-close img {
		width: 5.6vw;
	}
}
