@charset "utf-8";
/* layout.css는 전체적인 레이아웃 스타일을 정의합니다. */

.only-desktop {display:block;}
.only-tablet {display:none;}
.only-tablet-mobile {display:none;}
.only-mobile {display:none;}
.only-desktop-tablet {display:block;}

#wrapper {position:relative; overflow:hidden;}
#sub #wrapper {padding-top:var(--header-height);}
#skipToContent a {z-index:100000;position:absolute;top:0;left:0;width:1px;height:1px;font-size:0;line-height:0;overflow:hidden}
#skipToContent a:focus, 
#skipToContent a:active {width:200px;height:50px;background:#21272e;color:#fff;font-size:14px;font-weight:bold;text-align:center;text-decoration:none;line-height:50px}

.contain {position:relative; width:100%; max-width:1460px; padding-left:var(--container-space); padding-right:var(--container-space); margin:0 auto;}
.contain:after {content:" "; display:block; clear:both;}

/* header */
#header  {position:fixed; z-index:90; left:0; top:0; width:100%; transition:0.2s all ease;}
#header .contain {max-width:var(--container-max);}
html.up #header {top:calc(0px - var(--header-height));}
.sitelogo {position:absolute; left:var(--container-space); top:50%; margin-top:-25px; z-index:10;}
.sitelogo a {display:block; text-indent:-999em; overflow:hidden; width:245px; height:50px; background-repeat:no-repeat; background-position:50% 50%; background-size:contain; background-image:url("../images/common/logo.png");}

#gnb > ul {position:relative; display:flex; justify-content:center;}
#gnb > ul > li {position:relative;}
#gnb > ul > li > a {position:relative; display:flex; padding:0 clamp(20px, calc( 60 / var(--inner) * 100vw ), 60px); align-items:center; justify-content:center; font-size:clamp(16px, calc(20/ var(--inner) * 100vw ),20px); font-weight:700; height:var(--header-height); letter-spacing:-0.04em; color:#fff;}
#gnb > ul > li > a:before {content:''; position:absolute; left:50%; bottom:14px; margin-left:-8px; width:16px; height:8px; background:url('/images/common/bullet.png') no-repeat 50% 50%/contain; opacity:0; transform:translateY(-10px); transition:0.2s all ease;}
#gnb > ul > li.active > a {color:#2c2c2c !important;}
#gnb > ul > li.active > a:before {opacity:1; transform:translateY(0);}

#gnb .submenu {height:0; position:absolute; left:0; width:100%; z-index:102; overflow:hidden; text-align:center;}
#gnb .submenu > ul {padding:20px 0 70px;}
#gnb .submenu > ul > li {margin-bottom:17px;}
#gnb .submenu > ul > li:last-child {margin-bottom:0;}
#gnb .submenu > ul > li > a {display:block; vertical-align:middle; position:relative; font-size:clamp(14px, calc(18/ var(--inner) * 100vw ),18px); color:#2c2c2c; font-weight:600; line-height:1.2em; letter-spacing:-0.04em; transition: all 0.2s ease-in; text-align:center;}

#gnb .submenu-depth {margin-top:17px;}
#gnb .submenu-depth > ul > li {padding:5px 0;}
#gnb .submenu-depth > ul > li > a {display:block; font-size:clamp(14px, calc(17/ var(--inner) * 100vw ),17px); font-weight:400; line-height:1.4; letter-spacing:-0.04em; color:#878787;}
#gnb .submenu-depth > ul > li > a:hover {color:#2161f2;}
#gnb .join-btn {display:inline-block !important; padding:0.8em 1.13em; background:#f1f1f1; border-radius:100vh;}
#header .submenu-bg {display:none; position:absolute; left:0; width:100%; background:#fff;}

.head-btn-wrap {position:absolute; top:50%; right:var(--container-space); transform:translateY(-50%);}
.head-login-btn {display:inline-block; margin-right:8px; padding:0.72em 1.2em; border:1px solid #fff; border-radius:0.5em; font-size:clamp(14px, calc(18/ var(--inner) * 100vw ),18px); font-weight:600; line-height:1.2; letter-spacing:-0.04em; color:#fff;}
.head-login-btn:last-child {margin-right:0;}
.head-login-btn:hover {background:#2161f2 !important; color:#fff !important;}

.m-head-btn-wrap {display:none; position:static; transform:translate(0);}
.m-head-btn-wrap a {display:block; flex:1; position:relative; margin-left:-1px; padding:0.72em 1.2em; border:1px solid #505050; border-right:0; font-size:clamp(14px, calc(18/ var(--inner) * 100vw ),18px); font-weight:600; line-height:1.2; letter-spacing:-0.04em; text-align:center;}
.m-head-btn-wrap a:first-child {border-left:0; margin-left:0;}

.header-white {background:#fff;}
.header-white .sitelogo a {background-image:url("../images/common/logo2.png")}
.header-white #gnb > ul > li > a {color:#2c2c2c;}
.header-white .btn-m-menu span,
.header-white .btn-m-menu span:before,
.header-white .btn-m-menu span:after {background:#2c2c2c;}
.header-white .head-login-btn {background:#fff; border-color:#2161f2; color:#2161f2;}

.header-fixed #header {background:#fff; border-bottom:1px solid #ddd;}
.header-fixed #header .sitelogo a {background-image:url("../images/common/logo2.png")}
.header-fixed #header #gnb > ul > li > a {color:#2c2c2c;}
.header-fixed #header .btn-m-menu span,
.header-fixed #header .btn-m-menu span:before,
.header-fixed #header .btn-m-menu span:after {background:#2c2c2c;}
.header-fixed #header .head-login-btn {background:#fff; border-color:#2161f2; color:#2161f2;}


/* for mobile */
.btn-m-menu {display:none; position:absolute; top:50%; margin-top:-15px; right:var(--container-space); width:30px; height:30px; text-align:center; text-indent:-9999em; z-index:92; transition: all 0.5s ease-in-out;}
.btn-m-menu span {position:absolute; right:0; top:14px; height:2px; width:30px; background:#fff;}
.btn-m-menu span:before,
.btn-m-menu span:after {content:" "; position:absolute; right:0; width:30px; height:2px; background:#fff; transition-duration:0.3s, 0.3s; transition-delay:0.3s, 0s;}
.btn-m-menu span:before {top:-14px; transition-property:top, transform;}
.btn-m-menu span:after {bottom:-14px; transition-property:bottom, transform;}

.mobile-navigation {position:fixed; top:0; right:0; padding:20px 0; width:300px; height:100%; overflow:auto; transition:.3s ease-in-out; -ms-transform:translateX(100%); transform:translateX(100%); background:#ffffff; z-index:101;}
.mobile-navigation .home {padding-bottom:20px; padding-left:15px;}
.mobile-navigation .home img {height:30px; width:auto;}
.mobile-navigation .nav-menu>ul>li {border-bottom:1px solid #ddd;}
.mobile-navigation .nav-menu>ul>li>a {position:relative; padding:14px 15px; display:block; color:#242424; font-size:1.3em; font-weight:500; line-height:1.3em;}
.mobile-navigation .nav-menu>ul>li.active>a {color:var(--color-primary) ;}
.mobile-navigation .nav-menu>ul>li>a:after {content:""; position:absolute; top:50%; right:15px; transform:translateY(-75%) rotate(45deg); width:10px; height:10px; border-right:2px solid #2c2c2c; border-bottom:2px solid #2c2c2c;}
.mobile-navigation .nav-menu>ul>li.active>a:after{transform: translateY(-35%) rotate(-135deg); border-color: var(--color-primary) ;}
.mobile-navigation .nav-menu .submenu {display:none; position:static; transform: translateX(0); margin:-1px 0 0 0; width:100%;  padding:10px 0;background:var(--color-primary) ; padding-bottom:10px;}
.mobile-navigation .nav-menu .submenu>ul {display:block; width:100%;}
.mobile-navigation .nav-menu .submenu>ul>li {text-align:left; padding:0;}
.mobile-navigation .nav-menu .submenu>ul>li>a {display:block; position:relative; padding:5px 0 5px 25px; color:#fff; font-size:16px; font-weight:400; line-height:1.3em;}
.mobile-navigation .nav-menu .submenu>ul>li>a:after {content:"";position:absolute; top:14px; left:15px; width:4px; height:4px; border-radius:100%; background:#fff; transition:.2s ease-in-out;}
.mobile-navigation .nav-menu .submenu>ul>li>a:hover {color:#fff}
.mobile-navigation .nav-menu .submenu>ul>li>a:hover:after {background:#fff}

.mobile-navigation .nav-menu .submenu-depth>ul>li>a {display:block; position:relative; padding:5px 0 5px 35px; color:#fff; font-size:16px; font-weight:400; line-height:1.3em;;}
.mobile-navigation .nav-menu .submenu-depth>ul>li>a:after {content:"";position:absolute; top:14px; left:25px; width:4px; height:1px; background:#fff; transition:.2s ease-in-out;}

.mobile-navigation .close {position:absolute; top:20px; right:18px; width:24px; height:24px; text-indent:-9999em; overflow:hidden;}
.mobile-navigation .close:before,
.mobile-navigation .close:after {content:" "; position:absolute; top:12px; left:0; width:100%; height:2px; background:#242424;}
.mobile-navigation .close:before {transform:rotate(45deg);}
.mobile-navigation .close:after {transform:rotate(-45deg);}
.mobile-overlay {display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:#000; opacity:.76; z-index:98;} 

html.menu-opened {overflow:hidden;}
html.menu-opened .mobile-navigation {-ms-transform:translateX(0); transform:translateX(0);}
html.menu-opened .mobile-overlay {display:block;}

/* main */ 
.main-visual .mv {
	position:absolute; 
	top:0; 
	left:0;
	width:100%; height:100%;
	background-position:50% 50%;
	background-repeat:no-repeat;
	background-size:cover;
	transform:scale(1.09);
    -ms-transform:scale(1.09); /* IE 9 */
    -moz-transform:scale(1.09); /* Firefox */
    -webkit-transform:scale(1.09); /* Safari and Chrome */
    -o-transform:scale(1.09); /* Opera */
	
	z-index:0;
}
.main-visual .slick-active .mv {
	transform:scale(1);
    -ms-transform:scale(1); /* IE 9 */
    -moz-transform:scale(1); /* Firefox */
    -webkit-transform:scale(1); /* Safari and Chrome */
    -o-transform:scale(1); /* Opera */
	transition: all 4s ease-out 0s;
	transition-delay: 0.1s;
}

.main-visual {position:relative; overflow:hidden;}
.main-visual .item {position:relative; padding:20px 0; min-height:100vh; overflow:hidden;}
.main-visual .cnt {position:absolute; z-index:1; top:24%; left:50%; padding:var(--container-space) 0; width:100%; max-width:1260px; transform:translateX(-50%); color:#fff; text-align:left;}
.main-visual .cnt .inner {display:flex; min-height:58vh; flex-direction:column; justify-content:space-between; width:55%; margin-left:auto;}
.main-visual .cnt .cont-wrap {margin-bottom:var(--size20);}
.main-visual .cnt .cate {margin-bottom:var(--size60); font-size:clamp(14px, calc(22/ var(--inner) * 100vw ),22px); font-weight:600; line-height:1; letter-spacing:-0.04em; color:#fff; opacity:0; transform:translateX(50px);}
.main-visual .cnt .tit {padding-bottom:0.5em; margin-bottom:0.5em; border-bottom:1px solid rgba(255,255,255,0.2); font-size:clamp(20px, calc(72/ var(--inner) * 100vw ),72px); font-weight:800; line-height:1.2; letter-spacing:0.04em; color:#fff; opacity:0; transform:translateX(50px);}
.main-visual .cnt .txt {font-size:clamp(16px, calc(34/ var(--inner) * 100vw ),34px); font-weight:600; line-height:1.2; letter-spacing:-0.04em; color:#fff; opacity:0; transform:translateX(50px);}
.main-visual .cnt .tx {font-size:clamp(14px, calc(22/ var(--inner) * 100vw ),22px); font-weight:500; line-height:1.2; letter-spacing:-0.04em; color:#fff; opacity:0; transform:translateX(50px);}

.main-visual .slick-active .cate {transform:translateX(0); opacity:1; transition:1s all 0.3s ease;}
.main-visual .slick-active .tit {transform:translateX(0); opacity:1; transition:1s all 0.5s ease;}
.main-visual .slick-active .txt {transform:translateX(0); opacity:1; transition:1s all 0.7s ease;}
.main-visual .slick-active .tx {transform:translateX(0); opacity:1; transition:1s all 0.9s ease;}

.main-visual .slick-dots {display:flex; position:absolute; left:clamp(15px, calc(100/ var(--inner) * 100vw ),100px); bottom:clamp(20px, calc(160/ var(--inner) * 100vw ),160px);}
.main-visual .slick-dots li {margin-right:10px;}
.main-visual .slick-dots li:last-child {margin-right:0;}
.main-visual .slick-dots li button {display:block; position:relative; padding-bottom:1.13em; width:var(--btn-size); padding-bottom:1.2em; border:0; background:0; font-size:0.88em; font-weight:600; line-height:1.2; letter-spacing:-0.04em; color:#fff; opacity:0.4; text-align:left;}
.main-visual .slick-dots li button:before {content:'0';}
.main-visual .slick-dots li button:after {content:''; position:absolute; left:0; bottom:0; width:100%; height:0.29em; background:#fff;}
.main-visual .slick-dots li.slick-active button {opacity:1;}

.scroll-icon {position:absolute; left:clamp(15px, calc(100/ var(--inner) * 100vw ),100px); top:50%; animation:move_up_down 2s linear infinite; z-index:10;}
@keyframes move_up_down {
  0%,100%{transform:translateY(0);}
  50% {transform:translateY(15px);}
}

.section-bg-wrap {padding:clamp(40px, calc(140/ var(--inner) * 100vw ),140px) 0; background:url('/images/main/member-bg-1.jpg') no-repeat center top/cover;}
.section-bg-wrap .contain {max-width:1460px;}

.main-tit {display:inline-block; margin-bottom:var(--size100); font-size:clamp(20px, calc(44/ var(--inner) * 100vw ),44px); font-weight:800; line-height:1.2; letter-spacing:-0.04em; color:#2c2c2c;}
.main-tit.white {color:#fff;}

.main-tit span {display:block; position:relative; margin-bottom:1em; padding-bottom:1em; font-size:clamp(14px, calc(22/ var(--inner) * 100vw ),22px); font-weight:600; line-height:1;}
.main-tit span:before {content:''; position:absolute; left:0; bottom:0; width:100%; height:3px; background:#2c2c2c;}
.main-tit.white span:before {background:#fff;}

.main-membership-info .wrap {display:flex; margin:0 calc(0px - var(--size20));}
.main-membership-info .col {position:relative; width:50%; padding:0 var(--size20);}
.main-membership-info .col h3 {margin-bottom:0.8em; font-size:clamp(16px, calc(40/ var(--inner) * 100vw ),40px); font-weight:600; line-height:1.4; letter-spacing:-0.04em; color:#fff;}
.main-membership-info .col h3 span {display:block; margin-bottom:1em; font-size:clamp(14px, calc(20/ var(--inner) * 100vw ),20px); font-weight:600; line-height:1; color:#76d5ff;}
.main-membership-info .box {min-height:clamp(100px, calc(619/ var(--inner) * 100vw ),619px); padding:var(--size60); padding-right:var(--size40); border-radius:var(--size30);}
.main-membership-info .box dl {display:flex; margin-bottom:var(--size20); font-size:clamp(14px, calc(26/ var(--inner) * 100vw ),26px); line-height:1.3; letter-spacing:-0.04em; color:#505050;}
.main-membership-info .box dl:last-child {margin-bottom:0;}
.main-membership-info .box dt {min-width:125px; margin-right:10px; font-weight:700; color:#2c2c2c; letter-spacing:-0.02em;}
.main-membership-info .box dd {flex:1 1 auto; min-width:0; width:1%;}
.main-membership-info .box dd .line {margin-bottom:0.6em;}
.main-membership-info .box dd .line:last-child {margin-bottom:0;}
.main-membership-info .box dd strong {font-weight:600;}
.main-membership-info .box dd .small {color:#878787;}

.main-membership-info .box.green {background:#fff url('/images/main/member-box-txt1.png') no-repeat right center;}
.main-membership-info .box.solar {background:#fff url('/images/main/member-box-txt2.png') no-repeat right center;}
.main-membership-info .more-btn {position:absolute; right:var(--size20); top:calc(clamp(16px, calc(38/ var(--inner) * 100vw ),38px) - 2px);}
.main-membership-info .more-btn a {display:inline-block; padding:0.94em 1.47em; background:#2c2c2c; border-radius:100vh; font-size:clamp(13px, calc(17/ var(--inner) * 100vw ),17px); font-weight:600; line-height:1; letter-spacing:-0.04em; color:#fff;}
.main-membership-info .more-btn a:hover {background:#2161f2;}

.main-arrow-btn {margin-top:var(--size70); text-align:right;}
.main-arrow-btn a {display:inline-block; padding:1em 1em 1em 1.5em; border:1px solid #fff; border-radius:100vh; font-size:clamp(14px, calc(22/ var(--inner) * 100vw ),22px); font-weight:600; line-height:1; letter-spacing:-0.04em; color:#fff;}
.main-arrow-btn a:hover {background:#2161f2 !important; border-color:#2161f2 !important; color:#fff !important;}
.main-arrow-btn a .bar {display:inline-block; width:var(--size40);}

.main-arrow-btn.black a {color:#2c2c2c; border-color:#dfdfdf;}
.main-arrow-btn.blue a {color:#2161f2; border-color:#2161f2; background:#fff;}

.main-membership-service {padding-top:clamp(40px, calc(115/ var(--inner) * 100vw ),115px);}
.main-membership-service .tit-wrap {margin-bottom:clamp(20px, calc(65/ var(--inner) * 100vw ),65px); text-align:center;}
.main-membership-service .tit-wrap p {margin-bottom:1em; font-size:clamp(14px, calc(20/ var(--inner) * 100vw ),20px); font-weight:600; line-height:1.2; letter-spacing:-0.04em; color:#fff; opacity:0.5;}
.main-membership-service .tit-wrap h2 {font-size:clamp(20px, calc(40/ var(--inner) * 100vw ),40px); font-weight:600; line-height:1.2; letter-spacing:-0.04em; color:#fff;}
.main-membership-service .wrap {display:flex; flex-wrap:wrap; justify-content:center; margin:calc(0px - var(--size25)) calc(0px - var(--size20));}
.main-membership-service .box {width:33.333%; padding:var(--size25) var(--size20);}
.main-membership-service .inner {position:relative;}
.main-membership-service .cnt {position:absolute; left:0; top:0; width:100%; height:100%;}
.main-membership-service h3 {display:flex; align-items:center; justify-content:center; height:25%; font-size:clamp(14px, calc(26/ var(--inner) * 100vw ),26px); font-style:italic; font-weight:700; line-height:1; letter-spacing:-0.04em; color:#fff; text-align:center;}
.main-membership-service .txt {display:flex; align-items:center; justify-content:center; position:relative; height:75%; padding-top:11%; text-align:center;}
.main-membership-service .txt:before {content:''; position:absolute; left:50%; top:20%; margin-left:calc(0px - var(--size10)/2); width:var(--size10); height:var(--size10); background:rgba(255,255,255,0.5); border-radius:100vh;}
.main-membership-service p {font-size:clamp(15px, calc(28/ var(--inner) * 100vw ),28px); line-height:1.4; font-weight:500; letter-spacing:-0.04em; color:#fff;}

.main-banner-txt {padding:var(--size80) 0; background:linear-gradient(45deg, #2161f2, #76d5ff); background-size:200% 200%; animation:gradient 10s ease infinite; font-family:"Host Grotesk", sans-serif; color:#fff; text-align:center;}
.main-banner-txt .tit {font-size:clamp(20px, calc(88/ var(--inner) * 100vw ),88px); font-weight:800; line-height:1.2; letter-spacing:-0.022em;}
.main-banner-txt .txt {margin-top:0.7em; font-size:clamp(14px, calc(34/ var(--inner) * 100vw ),34px); font-weight:700; line-height:1.4; letter-spacing:-0.02em; opacity:0.5;}
@keyframes gradient {
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}

.main-plant {padding:clamp(50px, calc(140/ var(--inner) * 100vw ),140px) 0;}
.main-plant .main-arrow-btn {position:absolute; right:var(--container-space); top:15px; margin-top:0;}
.main-plant .wrap {margin-bottom:var(--size50); text-align:center;}
.main-plant .wrap .tit {font-size:clamp(20px, calc(58/ var(--inner) * 100vw ),58px); font-weight:700; line-height:1.2; letter-spacing:-0.04em; color:#76d5ff;}
.main-plant .wrap .en-txt {margin:1em 0 var(--size40); font-size:clamp(14px, calc(26/ var(--inner) * 100vw ),26px); font-weight:600; line-height:1.4; letter-spacing:-0.04em; color:#ccc;}
.main-plant .wrap .txt {font-size:clamp(14px, calc(26/ var(--inner) * 100vw ),26px); font-weight:500; line-height:1.6; letter-spacing:-0.04em; color:#2c2c2c;}

.plant-pos-wrap {position:relative;}
.plant-bg-txt {position:absolute; top:50%; left:50%; z-index:-1; transform:translate(-50%,-50%);}
.plant-bg-txt .slick-slide {margin:0 20px;}
.plant-pos-wrap .img-wrap {max-width:920px; margin:0 auto; position:relative;}
.plant-pos-wrap .img-wrap .img {position:absolute; left:0; top:0;}

.main-benefits {position:relative; padding:clamp(50px, calc(140/ var(--inner) * 100vw ),140px) 0; background:#121212;}
.main-benefits .col {display:flex; align-items:center; padding:var(--size50) 0; border-bottom:1px solid #878787;}
.main-benefits .col:first-child {border-top:1px solid #878787;}
.main-benefits .in {flex:1 1 auto; min-width:0; width:1%; padding-left:var(--size50);}
.main-benefits h3 {position:relative; z-index:1; margin-bottom:0.92em; font-size:clamp(16px, calc(40/ var(--inner) * 100vw ),40px); font-weight:600; line-height:1.2; letter-spacing:-0.04em; color:#ccc;}
.main-benefits h3 .num {position:absolute; z-index:-1; top:calc(0px - var(--size70)); left:calc(0px - var(--size50)); font-family:"Host Grotesk", sans-serif; font-weight:600; font-size:clamp(30px, calc(100/ var(--inner) * 100vw ),100px); color:#2c2c2c; font-style:italic; line-height:1;}
.main-benefits .txt {font-size:clamp(14px, calc(22/ var(--inner) * 100vw ),22px); font-weight:500; line-height:1.7; letter-spacing:-0.04em; color:#fff;}
.main-benefits .txt span {font-weight:500;}

.benefit-bg-txt {position:absolute; top:0; right:clamp(15px, calc(100/ var(--inner) * 100vw ),100px); height:100%; width:95px;}

.main-cc {position:relative; padding:clamp(50px, calc(140/ var(--inner) * 100vw ),140px) 0;}
.main-cc:before {content:''; position:absolute; left:0; bottom:0; z-index:-1; width:45%; height:70%; background:#e9f5fa; border-radius:2em;}
.main-cc .main-arrow-btn {position:absolute; right:var(--container-space); top:15px; margin-top:0;}
.main-cc .wrap {position:relative; padding-top:var(--size60);}
.main-cc .local-tabs {margin-bottom:var(--size100);}
.main-cc .local-tabs ul {display:flex; gap:10px;}
.main-cc .local-tabs ul li a {display:block; padding:0.7em 1.2em; border-radius:100vh; border:1px solid #fff; background:#fff; font-size:clamp(12px, calc(24/ var(--inner) * 100vw ),24px); font-weight:700; line-height:1; color:#a8a8a8;}
.main-cc .local-tabs ul li.active a {border-color:var(--color-primary); color:var(--color-primary);}

#sub .main-cc {padding:0 0 clamp(40px, calc(100/ var(--inner) * 100vw ),100px);}
#sub .main-cc:before {width:70vw; height:100%; transform:translateX(-50%);}

.gal-slider .ctrl {display:flex; gap:12px; justify-content:flex-end; position:absolute; right:0; top:var(--size60);}
.gal-slider .slick-arrow {display:block;  width:var(--btn-size); height:var(--btn-size); border-radius:100%; border:0; background-color:#e9f5fa; background-repeat:no-repeat; background-size:18% auto; background-position:50% 50%; text-indent:-999em; overflow:hidden; transition:0.2s all ease;}
.gal-slider .slick-arrow:hover {background-color:#2161f2;}
.gal-slider .slick-prev {background-image:url('/images/main/sld-prev.png');}
.gal-slider .slick-next {background-image:url('/images/main/sld-next.png');}
.gal-slider .slick-prev:hover {background-image:url('/images/main/sld-prev-white.png');}
.gal-slider .slick-next:hover {background-image:url('/images/main/sld-next-white.png');}

.gal-slider .slick-list {overflow:visible; margin:0 calc(var(--size25) * -1);}
.gal-slider .slick-slide {margin:0 var(--size25);}
.gal-slider .inner {display:block; position:relative; border-radius:2em; overflow:hidden;}
.gal-slider .inner:before {content:''; position:absolute; z-index:1; width:100%; height:0; left:0; bottom:0; background:linear-gradient(to top, rgba(32,92,228,0.8) 10%, rgba(0,0,0,0) 60%); opacity:0; transition:0.2s all ease;}
.gal-slider .hover {display:flex; flex-direction:column; justify-content:space-between; position:absolute; left:0; top:0; z-index:1; width:100%; height:100%; padding:var(--size40);}
.gal-slider .hover:before {content:''; position:absolute; z-index:-1; width:100%; height:100%; left:0; bottom:0; background: linear-gradient(to top, rgba(0,0,0,0.8) 10%, rgba(0,0,0,0) 60%); transition:0.2s all ease;}
.gal-slider .inner:hover {transform:translateY(calc(var(--size30) * -1));}
.gal-slider .inner:hover .hover:before {height:0; opacity:0;}
.gal-slider .inner:hover:before {opacity:1; height:100%;}

.gal-slider .thumb {position:relative; padding-bottom:110%; border-radius:2em; overflow:hidden;}
.gal-slider .thumb img {position:absolute; top:50%; left:0; transition:.4s ease-in-out; transform:translateY(-50%); -ms-transform:translateY(-50%); -webkit-transform:translateY(-50%); width:100%; height:auto !important; max-width:100%; min-height:100%; object-fit:cover;}
.gal-slider .thumb:after {content:""; position:absolute; top:0; left:0; right:0; bottom:0; border:1px solid rgba(0,0,0,.08);}
.gal-slider .info span {display:inline-block; margin-right:0.4em; padding:0.5em 0.8em; border-radius:0.5em; background:rgba(255,255,255,0.3); font-size:var(--font-size-15); font-weight:600; line-height:1; color:#fff;} 
.gal-slider .info span:last-child {margin-right:0;}
.gal-slider .info .nat {background:#2161f2;}
.gal-slider .tit {margin-bottom:0.75em; font-size:clamp(15px, calc(32/ var(--inner) * 100vw ),32px); font-weight:800; line-height:1.4; color:#fff;}
.gal-slider .more {display:inline-block; padding:0.8em 1.3em; background:rgba(255,255,255,0.1); border-radius:100vh; font-size:var(--font-size-17); font-weight:700; line-height:1; color:#fff;}

.main-qna {padding:clamp(50px, calc(140/ var(--inner) * 100vw ),140px) 0;}
.main-qna .main-arrow-btn {position:absolute; right:var(--container-space); top:15px; margin-top:0;}
.main-qna .wrap {display:flex; margin:calc(0px - var(--size10));}
.main-qna .box {width:25%; padding:var(--size10);}
.main-qna .box .in {height:100%; padding:var(--size50) var(--size35); background:#f8f8f8; border-radius:var(--size30); overflow:hidden; transition:0.2s all ease;}
.main-qna .box .num {position:relative; margin-bottom:1em; font-family:"Host Grotesk", sans-serif; font-style:italic; line-height:1.4; font-size:clamp(16px, calc(30/ var(--inner) * 100vw ),30px); font-weight:800; line-height:1.2; letter-spacing:-0.02em; color:#76d5ff; transition:0.2s all ease;}
.main-qna .box .num:before {content:''; position:absolute; left:2.39em; top:50%; margin-top:-0.125em; width:0.25em; height:0.25em; background:#2161f2; border-radius:100%; transition:0.2s all ease;}
.main-qna .box .num:after {content:''; position:absolute; left:2.39em; top:50%; margin-top:-0.5px; width:100vw; height:1px; background:#2161f2; transition:0.2s all ease;}
.main-qna .box h3 {margin-bottom:var(--size40); font-size:clamp(16px, calc(26/ var(--inner) * 100vw ),26px); font-weight:700; letter-spacing:-0.04em; color:#2c2c2c; transition:0.2s all ease;}
.main-qna .txt-wrap .tt {margin-bottom:0.8em; font-family:"Host Grotesk", sans-serif; font-style:italic; font-size:clamp(15px, calc(30/ var(--inner) * 100vw ),30px); font-weight:800; line-height:1; letter-spacing:-0.02em; color:#ccc; transition:0.2s all ease;}
.main-qna .txt-wrap .txt {margin-bottom:1.7em; font-size:clamp(14px, calc(18/ var(--inner) * 100vw ),18px); letter-spacing:-0.04em; color:#505050; transition:0.2s all ease;}
.main-qna .txt-wrap .txt:last-child {margin-bottom:0;}

.main-qna .box .in:hover {background:#2161f2;}
.main-qna .box .in:hover .num {color:rgba(255,255,255,0.5);}
.main-qna .box .in:hover .num:before,
.main-qna .box .in:hover .num:after {background:#fff;}
.main-qna .box .in:hover h3 {color:#fff;}
.main-qna .in:hover .txt-wrap .tt {color:rgba(255,255,255,0.5);}
.main-qna .in:hover .txt-wrap .txt {color:#fff;}

.main-procedure {position:relative; height:874px; background:url('/images/main/procedure-bg.jpg') no-repeat bottom center/cover;}
.main-procedure .main-tit {position:absolute; z-index:1; left:50%; top:clamp(50px, calc(155/ var(--inner) * 100vw ),155px); padding:0 var(--container-space); transform:translateX(-50%); text-align:center;}
.main-procedure .wrap {display:flex; height:100%;}
.main-procedure .box {display:flex; height:100%; position:relative; justify-content:center; align-items:flex-end; flex:1; text-align:center;}
.main-procedure .box:after {content:''; position:absolute; width:1px; height:100%; right:0; bottom:0; background:rgba(255,255,255,0.25);}
.main-procedure .box:last-child:after {display:none;}
.main-procedure .box:before {content:''; position:absolute; left:0; bottom:0; width:100%; height:80%; background:linear-gradient(to top, #2161f2, rgba(255,255,255,0)); opacity:0; transition:0.2s all ease;}
.main-procedure .box:hover:before {opacity:1;}
.main-procedure .box .in {position:relative; z-index:1; padding-bottom:clamp(40px, calc(150/ var(--inner) * 100vw ),150px); color:#fff;}
.main-procedure .box .ico {margin-bottom:var(--size40);}
.main-procedure .box .num {margin-bottom:1.2em; font-size:clamp(14px, calc(22/ var(--inner) * 100vw ),22px); font-family:"Host Grotesk", sans-serif; font-style:italic; font-weight:600; line-height:1; letter-spacing:-0.02em;}
.main-procedure .box .tit {position:relative; margin-bottom:0.48em; padding-bottom:0.48em; font-size:clamp(16px, calc(30/ var(--inner) * 100vw ),30px); font-weight:700; line-height:1.2; letter-spacing:-0.04em; color:#fff;}
.main-procedure .box .txt {font-size:clamp(14px, calc(18/ var(--inner) * 100vw ),18px); font-weight:400; line-height:1.6; letter-spacing:-0.04em; color:#fff;}
.main-procedure .box .tit:before {content:''; position:absolute; left:50%; bottom:0; margin-left:-0.05em; width:0.11em; height:0.11em; background:#fff; border-radius:100%;}

.main-cs {padding:clamp(60px, calc(175/ var(--inner) * 100vw ),175px) 0; background:url('/images/main/cs-bg.jpg') no-repeat 50% 50%/cover; text-align:center;}
.main-cs h2 {font-size:clamp(20px, calc(70/ var(--inner) * 100vw ),70px); font-family:"Host Grotesk", sans-serif; font-weight:800; line-height:1; letter-spacing:-0.02em; color:#fff;}
.main-cs p {margin-top:1.5em; font-size:clamp(14px, calc(22/ var(--inner) * 100vw ),22px); font-weight:500; line-height:1.7; letter-spacing:-0.04em; color:#fff;}
.main-cs .main-arrow-btn {text-align:center;}

/* sub page */ 
.sub-visual {display:flex; align-items:center; overflow:hidden; position:relative; width:100%; height:clamp(200px, calc(670/ var(--inner) * 100vw ),670px); padding-bottom:var(--size100); background-repeat:no-repeat; background-position:50% 50%; background-size:cover;}
.sub-visual .content {position:relative; z-index:1; max-width:1460px; padding:0 var(--container-space); width:100%; margin:0 auto; color:#fff;}
.sub-visual .content h2 {font-size:clamp(26px, calc(72/ var(--inner) * 100vw ),72px); font-weight:600; line-height:1.2em; letter-spacing:-0.04em;}
.sub-visual .content p {margin-bottom:1.5em; font-size:clamp(14px, calc(22/ var(--inner) * 100vw ),22px); font-weight:600; line-height:1.2em; letter-spacing:-0.04em;}

.sub-visual .background {
	position:absolute; 
	top:0; 
	left:0;
	width:100%; height:100%;	
	background-position:50% 50%;
	background-repeat:no-repeat;
	background-size:cover;
	transform:scale(1.09);
    -ms-transform:scale(1.09); /* IE 9 */
    -moz-transform:scale(1.09); /* Firefox */
    -webkit-transform:scale(1.09); /* Safari and Chrome */
    -o-transform:scale(1.09); /* Opera */
	transition: all 2s ease-out 0s;
	transition-delay: 0.1s;
	z-index:0;
}
.sub-visual.load .background {
	transform:scale(1);
    -ms-transform:scale(1); /* IE 9 */
    -moz-transform:scale(1); /* Firefox */
    -webkit-transform:scale(1); /* Safari and Chrome */
    -o-transform:scale(1); /* Opera */
}

.sub-title {margin:clamp(40px, calc(120/ var(--inner) * 100vw ), 120px) 0 clamp(40px, calc(70/ var(--inner) * 100vw ),70px); text-align:center;}
.sub-title h1 {position:relative; color:#2c2c2c; font-size:clamp(22px, calc(48/ var(--inner) * 100vw ),48px); line-height:1.2em; font-weight:600; letter-spacing:-0.04em;}
.sub-title p {margin-top:1.13em; font-size:clamp(14px, calc(18/ var(--inner) * 100vw ),18px); letter-spacing:-0.04em; color:#505050; line-height:1.2;}

#lnb {display:flex; position:absolute; left:0; bottom:0; width:100%;}
.lnb {padding-left:23%; flex:1 1 auto; min-width:0; width:1%; background:#fff;}
.lnb ul {max-width:680px;}
.lnb ul li {width:auto; margin-right:var(--size70);}
.lnb ul li:last-child {margin-right:0;}
.lnb ul li a {display:flex; position:relative; align-items:center; height:clamp(40px, calc( 100 / var(--inner) * 100vw ), 100px); font-size:clamp(14px, calc(22/ var(--inner) * 100vw ),22px); font-weight:600; line-height:1.2; letter-spacing:-0.04em; color:#505050;}
.lnb ul li a:before {content:''; position:absolute; left:0; top:0; width:0; height:0.45em; background:#2161f2; transition:0.2s all ease;}
.lnb ul li.active a:before {width:100%;}
.lnb ul li.active a {color:#2161f2;}

@media (max-width: 1920px) {
	.lnb {padding-left:14%;}
}

.sub-visual-logo {position:relative; margin-bottom:-3px;}
.sub-visual-logo img {max-height:clamp(43px, calc( 103 / var(--inner) * 100vw ), 103px);}

#contArea {max-width:1460px; padding-left:var(--container-space); padding-right:var(--container-space); margin:0 auto;}
#contArea.wide {max-width:100%; padding-left:0; padding-right:0;}

.real-cont {padding-bottom:clamp(40px, calc(200/ var(--inner) * 100vw ),200px);}
.real-cont.none {padding-bottom:0;}

/* quickmenu */

.quick {position:fixed; right:var(--size50); bottom:clamp(20px, calc(140/ var(--inner) * 100vw ),140px); z-index:20;}
.quick .btns {margin-bottom:var(--size30); text-align:center;}
.quick .btns ul li {margin-bottom:10px;}
.quick .btns ul li:last-child {margin-bottom:0;}

.quick .inquiry-btn {position:relative;}
.quick .inquiry-btn a {position:relative; display:flex; align-items:center; justify-content:center; border-radius:50%; width:clamp(45px, calc(85/ var(--inner) * 100vw ),85px); height:clamp(45px, calc(85/ var(--inner) * 100vw ),85px); background:#2161f2; font-size:clamp(10px, calc(20/ var(--inner) * 100vw ),20px); color:#fff; text-align:center;}
.quick .inquiry-btn a.mo {display:none;}
.quick .inquiry-btn .circle {display:block; height:clamp(45px, calc(85/ var(--inner) * 100vw ),85px); width:clamp(45px, calc(85/ var(--inner) * 100vw ),85px); border-radius:50%; border:3px solid rgba(255,255,255,0.24); transition:5s ease; z-index:-1; position:absolute; top:0px}

.quick .delay1 {animation: waves 2.5s linear; animation-delay: 0.3s;}
.quick .delay2 {animation: waves 2.5s linear .7s infinite;}
.quick .delay3 {animation: waves 2.5s linear 1.5s infinite;}
.quick .delay4 {animation: waves 2.5s linear 1.9s infinite;}
@-webkit-keyframes waves {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  
  100% {
    transform: scale(1.5);
    opacity: 0;
  }
}
.quick .circle:hover {animation:none !important;}

/* footer */
#footer {position:relative; background:#1c1c1c; color:#a8a8a8; font-size:clamp(14px, calc(18/ var(--inner) * 100vw ),18px); font-weight:400; letter-spacing:-0.04em; line-height:1.8em; padding:clamp(20px, calc(80/ var(--inner) * 100vw ),80px) 0;}
#footer .contain {display:flex; flex-direction:row-reverse; max-width:1780px;}
.footer-cs-info {display:flex; flex-direction:column; justify-content:space-between; width:50%; max-width:670px;}
.footer-cs-info h3 {margin-bottom:var(--size20); font-size:clamp(14px, calc(20/ var(--inner) * 100vw ),20px); font-weight:700; color:#fff;}
.footer-cs-info h3 img {display:inline-block; margin-right:0.2em; vertical-align:middle;}
.footer-cs-info .tel {font-family:"Host Grotesk", sans-serif; font-size:clamp(16px, calc(40/ var(--inner) * 100vw ),40px); font-weight:800; letter-spacing:-0.02em; color:#76d5ff;}
.footer-cs-info .txt {margin-top:var(--size30);}
.footer-cs-info .info p {font-size:clamp(12px, calc(16/ var(--inner) * 100vw ),16px);}

#footer address {font-style:normal; flex:1 1 auto; min-width:0; width:1%;}
#footer address .copyright {display:block; position:absolute; bottom:0; right:var(--container-space);}
#footer address .col:first-child {margin-bottom:var(--size60);}
#footer address strong {display:block; margin-bottom:0.5em; color:#fff; font-size:clamp(14px, calc(24/ var(--inner) * 100vw ),24px);}

.f-menu {position:absolute; bottom:var(--size40); right:var(--container-space); color:#fff; font-weight:500;}

.scroll-top {display:block; position:absolute; right:var(--container-space); top:0;}
.scroll-top a {display:block;}