section, section *{ box-sizing:border-box; }
*{ box-sizing:border-box; }
section{ overflow:hidden; }
section:last-child{ padding-bottom:150px !important; }
.mc-con{ max-width:1700px; width:100%; margin:0 auto;}
.sc-con{ max-width:1280px; width:100%; margin:0 auto; }
.main-con{width: 100%; margin: 0 auto; padding: 0 2rem;}

/*sc01*/
#sc01{ background-color:#333; height: 100vh; position: relative; overflow: hidden;}

.main-wrap{width: 100%; max-width: 1700px; position: absolute; bottom: 5rem; left: 50%; transform: translateX(-50%); z-index: 99; color: #fff; display: flex; justify-content: space-between; align-items: flex-end;}

.main-caption > h2{font-size: 60px; font-weight: 800; line-height: 1;}
.main-caption > h2 > span{font-size: 40px;}
.main-caption > h3{font-size: 60px; font-weight: 400; margin-bottom: 1.5rem;}
.main-caption > h5{font-size: 16px; font-weight: 400;}
.main-logo{text-align: center; padding-bottom: 1.5rem; display: inline-block; margin: 0 auto 1.5rem; border-bottom: 1px dotted #ddd;}
.main-logo > img{width: 400px;}

.spinner-wrap{width: 120px; height: 120px; position: relative;}

.spinner{width: 120px; height: 120px; border-radius: 50%; position: absolute; top: 0; left: 0; box-sizing: border-box; animation: spin 4s linear infinite; border: 1px solid rgba(255, 255, 255, 0.5);}
.spinner::after{content: ""; box-sizing: border-box; position: absolute; inset: -1px; border-radius: 50%; border: 1px solid #fff; animation: prixClipFix 5s linear infinite ;}

@keyframes spin {
	100% { transform: rotate(360deg)}
} 
@keyframes prixClipFix {
0%   {clip-path:polygon(50% 50%,0 0,0 0,0 0,0 0,0 0)}
25%  {clip-path:polygon(50% 50%,0 0,100% 0,100% 0,100% 0,100% 0)}
50%  {clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,100% 100%,100% 100%)}
75%  {clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 100%)}
100% {clip-path:polygon(50% 50%,0 0,100% 0,100% 100%,0 100%,0 0)}
}

.mouse-s{position: absolute; top: 30px; left: 0; width: 100%; text-align: center; z-index: 8; color: #fff;}
.mouse-s > span{display: block; font-size: 30px; transition: all 1s ease-in-out; animation: mousey 1.5s infinite;}

@keyframes mousey{
	0%{opacity: 0; transform: translateY(0);}
	100%{opacity: 1; transform: translateY(10px);}
}

.sc01Sli{ position:relative; z-index:1; background-color:#333; overflow:hidden; }
.sc01_bg{ position:absolute; z-index:1; top:0; bottom:0; left:0; right:0; background-color:#333; background-position:center; background-size:cover; background-repeat:no-repeat; }
.sc01_mbg{ display:none; position:absolute; z-index:1; top:0; bottom:0; left:0; right:0; background-color:#333; background-position:center; background-size:cover; background-repeat:no-repeat; }
.sc01_fr{ position:relative; z-index:1; min-height:max(600px,36.4583333vw); padding:150px 70px; display:flex; align-items:center; /*background-color:rgba(0,0,0,.35);*/ }

.sc01_txt{ max-width:1400px; width:100%; margin:0 auto; }
.sc01_txt > h2{ font-size:50px; font-weight:700; line-height:1.2em; margin-bottom:30px; }
.sc01_txt > hr{ display:block; width:100px; height:3px; margin:0 0 30px; border:none; }
.sc01_txt > p{ font-size:18px; font-weight:300; line-height:1.5em; }
.sc01_txt > a{ display:inline-block; margin:40px 0 0; padding:13px 40px; border-radius:100px; font-size:18px; font-weight:300; line-height:1em; text-align:center; transition:0.4s all; }

.sc01_nav{ position:absolute; z-index:60; top:50%; width:30px; height:80px; margin:-40px 0 0; cursor:pointer; }
.sc01_nav.swiper-button-disabled{ opacity:0.3; }
.sc01_nav#sc01pr{ left:20px; }
.sc01_nav#sc01pr:before{ content:''; position:absolute; z-index:1; top:0; left:0; width:4px; height:40px; transform:skew(-33deg); transform-origin:left bottom; }
.sc01_nav#sc01pr:after{ content:''; position:absolute; z-index:1; bottom:0; left:0; width:4px; height:40px; transform:skew(33deg); transform-origin:left top; }
.sc01_nav#sc01nx{ right:20px; }
.sc01_nav#sc01nx:before{ content:''; position:absolute; z-index:1; top:0; right:0; width:4px; height:40px; transform:skew(33deg); transform-origin:right bottom; }
.sc01_nav#sc01nx:after{ content:''; position:absolute; z-index:1; bottom:0; right:0; width:4px; height:40px; transform:skew(-33deg); transform-origin:right top; }

.sc01_btn{ display:flex; align-items:center; position:absolute; z-index:60; bottom:30px; left:50%; width:auto; transform:translate(-50%, 0); }
#sc01pg{ margin-right:10px; }
#sc01pg > .swiper-pagination-bullet{ opacity:1; width:12px; height:12px; border-radius:100px; margin:0 3px; transition:0.5s all; }
#sc01pg > .swiper-pagination-bullet-active{ width:40px; }
.sc01_ap{ cursor:pointer; border-radius:100%; font-size:20px; }
.sc01_ap .la-play{ display:none; }
.sc01_ap .la-pause{ display:block; }
.sc01_ap.paused .la-play{ display:block; }
.sc01_ap.paused .la-pause{ display:none; }

.sc01mw{ position:relative; z-index:1; overflow:hidden; background-color:#333; width: 100%; height: 100%;}
.sc01mw > .sc01_bdo{ position:absolute; z-index:1; top:50%; left:50%; min-width:100%; height:155%; transform:translate(-50%,-50%); }

.vimeo_player_wrapper{opacity: 1 !important;}

/* sc02 */
#sc02{width: 100%; padding: 150px 0; background-color: #F6F0E6;}
.sc02-caption > p{font-size: 18px; font-weight: 400; color: #707070; opacity: 0; transition: 1s;}
.sc02-caption > p:nth-child(1){display: flex; justify-content: flex-start; margin-bottom: 3rem; transform: translateX(100px);}
.sc02-caption > p:nth-child(2){display: flex; justify-content: flex-end; margin-bottom: 3rem; transform: translateX(-100px);}
.sc02-caption > p:nth-child(3){text-align: center; transform: translateY(100px);}

.sc02-caption > p:nth-child(1).ani.act{transform: translateX(0); opacity: 1;}
.sc02-caption > p:nth-child(2).ani.act{transform: translateX(0); opacity: 1;}
.sc02-caption > p:nth-child(3).ani.act{transform: translateY(0); opacity: 1;}

.ver-line{width: 1px; height: 200px; background-color: rgba(112, 112, 112, 0.3); position: relative; overflow: hidden; margin: 3rem auto; opacity: 0; transition: .5s;}
.ver-line::after{content: ""; width: 1px; height: 200px; background-color: #707070; position: absolute; top: -100%; left: 0; animation: line 5s ease-in-out infinite;}
.ver-line.ani.act{opacity: 1;}

@keyframes line{
	0%{top: -100%;}
	100%{top: 100%;}
}

.sc02-wrap > h2{color: #636363; font-size: 130px; font-weight: 200; margin-bottom: 3rem; text-align: center; line-height: 1;}
.sc02-wrap > h2 > span{font-size: 110px;}

.sc02-img{width: 100%; max-width: 720px; margin: 0 auto; display: flex; position: relative; overflow: hidden;}
.sc02-img > img{width: 100%;}
.sc02-img::after{content: ""; width: 100%; height: 100%; background-color: #F6F0E6; position: absolute; top: 0; left: 0; transition: 3s;}
.sc02-img.ani.act::after{top: 100%;}




/*scad*/
#scad{ position:relative; z-index:1; }
.scad_iw{ height:100vh; width:100%; position:absolute; top:0; left:0; z-index:1; }
.scad_iw.fix{ position:fixed; top:0; left:0; }
.scad_iw.fix.arrived{ position:absolute; top:unset; bottom:0; }
.scad_ib{ max-width:1500px; width:100%; position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); }
.scad_ip{ display:flex; flex-flow:row wrap; }
.scad_ip:not(:last-child){ margin-bottom:10px; }
.scad_ip > .scad_img{ background-color:#1f1f1f; border-radius:10px; overflow:hidden; }
.scad_ip > .scad_img.hide{ opacity:0; visibility:hidden; pointer-events:none; }
.scad_ip > .scad_img:not(:last-child){ margin-right:10px; }
.scad_img > div{ background-position:center; background-size:cover; background-repeat:no-repeat; }
.scad_img.img01{ width:32.66666666666667%; margin:0 0 0 auto; }
.scad_img.img01 > div{ padding-top:40.81632653061224%; }
.scad_img.img02{ width:calc(23% - 10px); align-self:flex-end; }
.scad_img.img02 > div{ padding-top:110.4477611940299%; }
.scad_img.img03{ width:calc(23% - 10px); align-self:flex-start; }
.scad_img.img03 > div{ padding-top:110.4477611940299%; }
.scad_img.img04{ width:32.66666666666667%; margin:0 0 0 0; }
.scad_img.img04 > div{ padding-top:40.81632653061224%; }
.scad_img.img05{ width:54%; }
.scad_img.img05 > div{ padding-top:55.55555555555556%; }

.scad_img.ct{ height:100%; position:absolute; top:0; left:50%; transform:translate(-50%, 0); display:flex; align-items:center; }
.scad_img.ct > div{ position:relative; z-index:1; overflow:hidden; width:100%; border-radius:10px; background-color:#111; }
.scad_img.ct > div > div{ position:absolute; z-index:1; top:0; bottom:0; left:0; right:0; background-position:center; background-size:cover; background-repeat:no-repeat; background-attachment:fixed; }

.scad_low{ min-height:100vh; position:relative; z-index:10; display:flex; align-items:flex-end; box-sizing:content-box; padding:0 40px; }
.scad_txt{ max-width:1500px; width:100%; margin:0 auto; padding:0 0  120px; word-break:keep-all; }
.scad_txt > h2{ max-width:1250px; width:100%; font-size:60px; font-weight:400; color:#fff; line-height:1.1em; margin:0 0 35vh auto; text-align:right; }
.scad_txt > p{ max-width:620px; width:100%; font-size:16px; font-weight:300; color:#fff; line-height:1.5em; }
/*.scad_txt > p > span{ background-color:#111; }*/

@media (max-width: 1699px){
	.scad_low{ padding:0 15px; }
}
@media(max-width:850px){
	.scad_ib{ max-width:700px; width:95%; }
	/*.scad_img.img05{ width:100%; }
	.scad_ip > .scad_img:not(:last-child){ margin-right:0; margin-bottom:10px; }*/
	.scad_img.img01{ width:45%; }
	.scad_img.img01 > div{ padding-top:50%; }
	.scad_img.img02 > div{ padding-top:135%; }
	.scad_img.img03 > div{ padding-top:135%; }
	.scad_img.img04{ width:45%; }
	.scad_img.img04 > div{ padding-top:50%; }
	.scad_img.img05 > div{ padding-top:125%; }

	.scad_txt{ padding:0 0 60px; }
	.scad_txt > h2{ font-size:45px; margin:0 0 10vh; }
}
@media(max-width:600px){
	.scad_txt > h2{ font-size:30px; }
	.scad_txt > p{ font-size:14px; }
}





/* sc03 */
#sc03{width: 100%; padding: 100px 0; background-color: #F6F0E6;}
.sc03-wrap{width: 100%; padding-right: 1rem; position: relative;}
.sc03-cont{width: 100%;}
.sc03-ct{width: 100%; display: flex; justify-content: space-between; align-items: center;}
.sc03-ct > p{font-size: 16px; font-weight: 400; color: #707070;}
.sc03-ct > .ct-line{width: 150px; height: 1px; background-color: #707070;}
.sc03-img{width: 100%; display: flex; padding: 1rem 0; opacity: 0; transition: 1s;}
.sc03-img > img{width: 100%;}

.sc03-img.ani.act{opacity: 1;}

.sc03-wrap > h5{position: absolute; bottom: 51px; right: 0; transform: rotate(90deg); transform-origin: bottom right; font-size: 16px; color: #707070; font-weight: 400; opacity: 0; transition: 1s opacity 0.3s;}
.sc03-wrap > h5.ani.act{opacity: 1;}

/* sc04 */
#sc04{width: 100%; height: 100%; position: relative;}
.sc04_bdo{width: 100%;}
.sc04-caption{width: 100%; max-width: 1700px; position: absolute; bottom: 5rem; left: 50%; transform: translateX(-50%); z-index: 99; color: #fff;}
.sc04-caption > h2{font-size: 60px; font-weight: 800; line-height: 1;}
.sc04-caption > h2 > span{font-size: 40px;}
.sc04-caption > h3{font-size: 60px; font-weight: 400; margin-bottom: 1.5rem;}
.sc04-caption > h5{font-size: 16px; font-weight: 400;}

/* sc05 */
#sc05{padding: 150px 0; width: 100%; background-color: #F6F0E6;}
.sc05-tit{margin-bottom: 2rem;}
.sc05-tit > h2{color: #636363; font-size: 130px; font-weight: 200; opacity: 0; transition: 1s;}
.sc05-tit > h2.ani.act{opacity: 1;}
.sc05-wrap{width: 100%; display: flex; justify-content: space-between;}
.sc05-box{width: 32%;}
.sc05-img{width: 100%; display: flex; position: relative;}
.sc05-img > img{width: 100%;}
.sc05-img > span{width: 100px; height: 100px; display: inline-block; border-radius: 50%; background-color: rgba(246, 240, 230, 0.7); text-align: center; color: #fff; line-height: 100px; font-size: 24px; position: absolute; top: 50%; left: 50%; transform: translate(-50%,-0%); transition: .5s; opacity: 0;}
.sc05-box > p{padding-top: 1rem; font-size: 18px; font-weight: 400; text-align: right; color: #636363;}

.sc05-box:hover .sc05-img > span{transform: translate(-50%,-50%); opacity: 1;}

/* sc06 */
#sc06{width: 100%; padding: 80px 0; background-color: #fff;}
.slider{width: 100%; height: 400px; position: relative; overflow: hidden;}
.slider:first-child{margin-bottom: 20px;}
.slider-box.sb-left{width: 5280px; height: 100%; display: flex; flex-wrap: nowrap; animation: sliderl 50s linear infinite;}
.slider-box.sb-right{width: 5280px; height: 100%; display: flex; flex-wrap: nowrap; animation: sliderr 50s linear infinite;}

@keyframes sliderl {
	0% {
		transform: translate(0, 0);
	}
	100% {
		transform: translate(-50%, 0);
	}
}

@keyframes sliderr {
	0% {
		transform: translate(-50%, 0);
	}
	100% {
		transform: translate(0, 0);
	}
}

.slider-img{flex: 0 0 auto; padding: 0 10px;}
.slider-img img{width: 100%;}

@media(min-width:992px){
	.ms-img{display: block; width: 100%; height: 100vh; background-repeat: no-repeat; background-position: center; background-size: cover;}
	.ms-img-m{display: none;}

	.sc03-mo{display: none;}
}
@media(max-width:1699px){
	.mc-con{padding: 0 3rem;}
	.main-wrap{padding: 0 3rem;}
	.sc04-caption{padding: 0 3rem;}
}
@media(max-width:1279px){
	.sc-con{padding: 0 3rem;}
}
@media(max-width:991px){
	.sc01_fr{ padding:150px 15px; }
	.sc01_nav{ display:none; }

	.mc-con{padding: 0 15px;}
	.sc-con{padding: 0 15px;}
	.sc04-caption{padding: 0 15px; bottom: 2rem;}

	.ms-img{display: none;}
	.ms-img-m{display: block; width: 100%; height: 100vh; background-repeat: no-repeat; background-position: center; background-size: cover;}

	.main-wrap{bottom: 6rem; justify-content: center; text-align: center; padding: 0 15px;}

	.main-caption{padding: 0 15px;}
	.main-caption > h2{font-size: 45px;}
	.main-caption > h2 > span{font-size: 29px;}
	.main-caption > h3{font-size: 15px; margin-bottom: 1rem;}
	.main-caption > h5{font-size: 12px;}

	.spinner-wrap{display: none;}

	#sc02{padding: 100px 0;}
	.sc02-caption > p{font-size: 14px;}

	.sc02-caption > p:nth-child(1){margin-bottom: 1.5rem;}
	.sc02-caption > p:nth-child(2){margin-bottom: 1.5rem; justify-content: flex-start;}
	.sc02-wrap > h2{font-size: 43px; margin-bottom: 1.5rem;}
	.sc02-wrap > h2 > span{font-size: 36px;}

	.sc03-wrap{padding-right: 0;}
	.sc03-wrap > h5{display: none;}
	.sc03-ct > p{font-size: 14px;}
	.sc03-ct{flex-direction: column; align-items: flex-start;}
	.sc03-ct.pc{display: none;}
	.sc03-ct > .ct-line{display: none;}
	.sc03-img{padding: 1.5rem 0;}
	.sc03-mo{display: block; color: #636363;}
	.sc03-mo > h5{font-size: 14px; margin-bottom: 1rem; padding-bottom: 1rem; position: relative;}
	.sc03-mo > h5::after{content: ""; width: 30%; height: 1px; background-color: #ddd; position: absolute; left: 0; bottom: 0;}
	.sc03-mo > p{font-size: 14px;}

	#sc04{height: 100vh; background-repeat: no-repeat; background-position: center; background-size: cover;}
	.sc04_bdo{display: none;}

	.sc04-caption > h2{font-size: 43px;}
	.sc04-caption > h2 > span{font-size: 29px;}
	.sc04-caption > h3{font-size: 15px; margin-bottom: 1rem;}
	.sc04-caption > h5{font-size: 12px;}

	#sc05{padding: 50px 0;}
	.sc05-tit{margin-bottom: 1.5rem;}
	.sc05-tit > h2{font-size: 42px;}
	.sc05-wrap{flex-direction: column;}
	.sc05-box{width: 100%; margin-bottom: 1.5rem;}
	.sc05-box:last-child{margin-bottom: 0;}
	.sc05-box > p{padding-top: 10px; text-align: center; font-size: 16px;}

	#sc06{padding: 50px 0;}

	.slider{height: 250px;}
	.slider-img{flex: 1 1 auto;}
}

/* animation */

.ani.up{
	transform: translateY(100px);
	opacity: 0;
	transition: 1s;
}
.ani.up.delay{
	transition: 1s opacity 0.2s, 1s transform 0.2s;
}
.ani.up.delay2{
	transition: 1s opacity 0.5s, 1s transform 0.5s;
}
.ani.up.delay3{
	transition: 1s opacity 0.8s, 1s transform 0.8s;
}
.ani.up.act{
	transform: translateY(0);
	opacity: 1;
}
.ani.left{
	transform: translateX(100px);
	opacity: 0;
	transition: 1s;
}
.ani.left.act{
	transform: translateX(0);
	opacity: 1;
}
.ani.right{
	transform: translateX(-100px);
	opacity: 0;
	transition: 1s;
}
.ani.right.act{
	transform: translateX(0);
	opacity: 1;
}