@charset "utf-8";
/* layout.css는 전체적인 레이아웃 스타일을 정의합니다. */

#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}

#wrapper{position:relative;overflow:hidden;}
/* header */
#header {position:absolute;left:0;top:0;right:0;z-index:90;}
#header .contain{max-width:1780px;width:100%;height:100px;}
#header .sitelogo {position:absolute; top:26px; left:30px; z-index:2}
#header .sitelogo a {display:block;}

#gnb>ul {display:flex; justify-content:center;margin:0 -83px;} 
#gnb>ul>li {position:relative; text-align:center; padding:0 83px;}
#gnb>ul>li>a {position:relative; display:inline-block; color:#fff; font-size:20px; line-height:100px; font-weight:600;}

#header .btn-link{position: absolute;right:30px;top:50%;transform:translateY(-50%);display:inline-flex;justify-content:center;align-items:center;padding:0 34px;height:48px;border-radius:24px;background-color:var(--pri);color: #fff;font-weight:600;line-height:1.2em;}

/* #header.header-up{transform:translateY(-100%);} */

.intro #gnb,
.intro #header .btn-link{display:none;}
.intro #footer{display:none;}
.intro .quick{display:none;}

.intro-pg{display:flex;justify-content:center;align-items:center;min-height:100vh;padding-top:100px;background:url('/images/common/intro-bg.jpg')no-repeat 50% 50%/cover;}
.intro-pg .contain{width:100%;}
.intro-pg .tt-wrap{margin-bottom:var(--size60);color: #fff;text-align:center;}
.intro-pg .tt-wrap .tit{margin-bottom:var(--size20);font-size:var(--fz60);font-weight:700;line-height:1.2em;font-weight:400;}
.intro-pg .tt-wrap .tit strong{font-weight:700;}
.tt18{font-size:var(--fz18);line-height:1.44em;}
.intro-pg .con{max-width:520px;margin:0 auto;}
.intro-pg .con ul{display:flex;margin:0 -20px;}
.intro-pg .con ul li{width:50%;padding:0 20px;}
.intro-pg .con ul li .box{display:flex;justify-content:center;background-color:rgba(255,255,255,.15);border-radius:var(--bd16);min-height:240px;padding:22px;color: #fff;text-align:center;height:100%;}
.intro-pg .con ul li .box .ic{margin-bottom:var(--size20);}
.intro-pg .con ul li .box .tit{margin-bottom:3px;font-size:var(--fz24);font-weight:700;line-height:1.2em;}
.intro-pg .con ul li .box .eng{line-height:1.5em;}

.contain {position:relative; max-width:1260px; padding-left:30px; padding-right:30px; margin:0 auto;}
#contArea {max-width:1260px; padding-left:30px; padding-right:30px; margin:0 auto;}
#contArea.wide {max-width:100%; padding-left:0; padding-right:0;}

/* main */ 
.main-visual {position:relative; overflow:hidden;}
.main-visual .item {position:relative; height:800px;}
.main-visual .bg {position:absolute; top:0; left:0; width:100%; height:100%; background-repeat:no-repeat; background-position:center center; background-size:cover;/*  -ms-transform:scale(1.1); -webkit-transform:scale(1.1); transform:scale(1.1); */ -webkit-transition:all 0.9s; -ms-transition:all 0.9s; transition:all 0.9s; -webkit-transition-timing-function:ease; transition-timing-function:ease;}
/* .main-visual .active .bg{-ms-transform:scale(1); -webkit-transform:scale(1); transform:scale(1); -webkit-transition:all 10s; -ms-transition:all 10s; transition:all 10s; -webkit-transition-timing-function:ease; transition-timing-function:ease;} */
/* main-vis text motion */
/* .main-visual .caption .tit{opacity:0; transform:translateX(50px);}
.main-visual .active .caption .tit{transform:translateX(0); opacity:1; transition:1s all 0.7s ease;} */
.main-visual .tt-wrap{position: absolute;left:0;top:50%;transform:translateY(-50%);padding:0 140px;z-index:1;pointer-events:none;text-align:center;color: #fff;width:100%;}
.main-visual .tt-wrap .tit{margin-bottom:var(--size20);font-size:var(--fz70);font-weight:400;line-height:1.2em;}
.main-visual .tt-wrap .tit strong{font-weight:700;}
.main-visual .tt-wrap .tt{font-size:var(--fz24);line-height:1.42em;}
.main-visual .slick-arrow{display:block;width:100px;height:25px;margin-top:-12px;background-repeat:no-repeat;background-size:contain;position: absolute;top:50%;z-index:2;transition:.3s;background-color:transparent;border:none;font-size:0;}
.main-visual .slick-prev{background-image: url('/images/main/vis-prev.png');left:0;background-position:0 50%;}
.main-visual .slick-next{background-image: url('/images/main/vis-next.png');right:0;background-position:100% 50%;}

.section .contain{max-width:1460px;}
.sec1{padding:clamp(3.75rem, 2.7632rem + 3.9474vw, 7.5rem) 0 clamp(3.75rem, 1.4474rem + 9.2105vw, 12.5rem);}
.sec-tit{margin-bottom:var(--size60);text-align:center;font-size:var(--fz48);line-height:1em;color:var(--dark);}
.sec1 .tab-menu{padding-bottom:40px;margin-bottom:40px;border-bottom:1px solid #ddd;}
.sec1 .tab-menu ul{display:flex;gap:20px;}
.sec1 .tab-menu ul li{flex:1;}
.sec1 .tab-menu ul li a{display:flex;justify-content:center;align-items:center;min-height:80px;padding:5px 10px;background-color: #f6f6f6;border-radius:var(--bd8);text-align:center;transition:.3s;}
.sec1 .tab-menu ul li a p{font-size:var(--fz24);font-weight:700;line-height:1.42em;transition:.3s;}
.sec1 .tab-menu ul li a p small{display:block;font-size:var(--fz18);color: #aaa;line-height:1.3em;font-weight:400;transition:.3s;}
.sec1 .tab-menu ul li.active a{background-color:var(--pri);}
.sec1 .tab-menu ul li.active a p,
.sec1 .tab-menu ul li.active a p small{color: #fff;}

.service-con{display:flex;margin:0 -20px;}
.service-con .img{width:50%;padding:0 20px;}
.service-con .img img{border-radius:var(--bd16);}
.service-con .tt-wrap{width:50%;padding:0 20px;}
.service-con .tt-wrap .tit-wrap{position:relative;padding-top:20px;margin-bottom:var(--size60);}
.service-con .tt-wrap .tit-wrap:before{content:'';width:30px;height:4px;background-color:var(--pri);position: absolute;left:0;top:0;}
.service-con .tt-wrap .tit-wrap .title{margin-bottom:var(--size20);font-size:var(--fz40);font-weight:700;color:var(--dark);line-height:1.2em;}
.service-con .tt-wrap .tit-wrap .title small{margin-left:20px;font-size:var(--fz24);color: #aaa;font-weight:400;}
.service-con .tt-wrap .info .tit{margin-bottom:10px;font-size:var(--fz24);font-weight:700;color:var(--dark);}
.dot-list>li{position:relative;padding-left:15px;font-size:var(--fz18);line-height:1.67em;}
.dot-list>li:before{content:'';width:5px;height:5px;border-radius:50%;background-color:var(--pri);position: absolute;left:0;top:11px;}


/* sub page */

.sub-visual {position:relative; height:400px; z-index:10;overflow:hidden;}
.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);
	    -moz-transform:scale(1.09);
	    -webkit-transform:scale(1.09);
	    -o-transform:scale(1.09); */
	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 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:var(--size100) 0 60px;text-align:center;}
.sub-title h1{font-size:var(--fz48);line-height:1em;color:var(--dark);}

.real-cont {padding:0 0 var(--size100);}
.real-cont.none{padding-bottom:0;}

/* footer */
#footer {padding:var(--size60) 0;background-color: #1a1a1a;}
#footer .contain{display:flex;align-items:flex-end;max-width:1460px;}
#footer .foot-info{min-width:0;width:1%;flex:1 1 auto;margin-right:40px;}
#footer .foot-info .logo{margin-bottom:35px;}
#footer .foot-info address {display:flex;flex-wrap:wrap;font-style:normal;margin:0 -16px;}
#footer .foot-info address p{padding:0 16px;color: #999;}
#footer .foot-info .copy{margin-top:10px;font-size:var(--fz14);color: #555;line-height:1.3em;}
#footer .foot-menu ul{display:flex;margin:0 -9px;}
#footer .foot-menu ul li{padding:0 9px;color: #878787;font-size:var(--fz14);line-height:1.3em;}

.quick{position: fixed;right:100px;bottom:20%;z-index:100;max-width:80px;width:100%;}
.quick .btn-fold{display:flex;justify-content:center;align-items:center;width:100%;height:40px;border-radius:20px;border:1px solid #ddd;color:var(--dark);font-size:var(--fz14);font-weight:600;line-height:1.2em;background-color: #fff;transition:.3s;box-shadow:5px 5px 10px rgba(0,0,0,.3);display:none;}
.quick .btns{margin-bottom:10px;display:none;display:block;}
.quick .btns li{margin-bottom:10px;}
.quick .btns li:last-child{margin-bottom:0;}
.quick .btns li .btn{display:flex;justify-content:center;align-items:center;height:80px;background-color:var(--pri);border-radius:var(--bd8);color: #fff;text-align:center;}
.quick .btns li .btn .ic{display:flex;justify-content:center;align-items:center;margin-bottom:10px;}
.quick .btns li .btn p{font-size:var(--fz14);font-weight:600;line-height:1.2em;}
.quick.active .btn-fold{background-color: #000;border-color: #000;color: #fff;}


/* for mobile */
.only-mobile {display:none;}
.btn-m-menu {display:none; position:absolute; top:50%; margin-top:-11px; right:30px; width:30px; height:22px;  text-align:center; text-indent:-9999em; z-index:99; transition:all 0.5s ease-in-out;}
.btn-m-menu span {position:absolute; right:0; top:50%; margin-top:-1px; height:2px; width:23px;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:-10px; transition-property:top, transform;}
.btn-m-menu span:after {bottom:-10px; transition-property:bottom, transform;}
.mobile-navigation {position:fixed; top:0; right:0; padding:20px 0; width:400px; height:100%; overflow:auto; transition:.3s ease-in-out; -ms-transform:translateX(100%); transform:translateX(100%); background:#fff; z-index:202;}
.mobile-navigation .home {margin-bottom:20px; padding-left:15px;}
.mobile-navigation .home img {height:23px;}
.mobile-navigation .nav-menu>ul{margin-top:30px;}
.mobile-navigation .nav-menu>ul>li {border-bottom:1px solid #dfdfdf;}
.mobile-navigation .nav-menu>ul>li>a {position:relative; padding:12px 15px; display:block; color:#454545; font-size:18px; font-weight:500; line-height:1.3em;}
.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;display:none;}
.mobile-navigation .nav-menu>ul>li.active>a {color:var(--pri)}
.mobile-navigation .nav-menu>ul>li.active>a:after {transform:translateY(-35%) rotate(-135deg); border-color:var(--pri);}
.mobile-navigation .nav-menu .submenu {display:none; margin:-1px 0 0 0; padding:0 15px 15px;}
.mobile-navigation .nav-menu .submenu>ul:after {content:"";display:block;clear:both;}
.mobile-navigation .nav-menu .submenu>ul>li>a {display:block; position:relative; padding:5px 15px; color:#454545; font-size:16px; font-weight:400; line-height:1.3em;}
.mobile-navigation .nav-menu .submenu>ul>li>a:after {display:block; content:"";position:absolute; top:14px; left:5px; width:4px; height:4px; background:#dfdfdf; border-radius:50%; transition:.3s ease-in-out;}
.mobile-navigation .nav-menu .submenu>ul>li>a:hover{color:var(--pri)}
.mobile-navigation .nav-menu .submenu>ul>li>a:hover:after {background:var(--pri)}
.mobile-navigation .close {position:absolute; top:20px; right:15px; 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:#2c2c2c;}
.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:0.6; z-index:201;}

html.menu-opened {overflow:hidden;}
html.menu-opened .mobile-navigation {-ms-transform:translateX(0); transform:translateX(0); }
html.menu-opened .mobile-overlay {display:block;}