@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;padding-top:100px;background-color: #f6f5f1;}
/* header */
#header {position:fixed;top:0;left:0;width:100%;z-index:90;transition:.3s;background-color: #f6f5f1;}
#header:after{content:"";width:100%;height:1px;background-color: #ddd;position: absolute;left:0;top:100px;opacity:0;transition:.3s;}
#header .contain{height:100px;max-width:100%;padding:0 100px;}
#header .sitelogo {position:absolute; top:24px; left:100px; z-index:2}
#header .sitelogo a {display:block;}

#gnb{padding-right:260px;}
#gnb>ul {display:flex; justify-content:flex-end;margin:0 -63px;} 
#gnb>ul>li {position:relative; padding:0 63px;}
#gnb>ul>li>a {position:relative; display:inline-block; line-height:100px;color:var(--dark); font-size:22px; font-weight:600; letter-spacing:0;}
#gnb .submenu {display:none; position:absolute; left:50%; width:180px; transform:translateX(-50%); background:var(--pri);text-align:center;border-radius:0 0 var(--bd24) var(--bd24);}
#gnb .submenu>ul {padding:35px 5px;}
#gnb .submenu>ul>li{margin-bottom:10px;text-align:center;}
#gnb .submenu>ul>li:last-child{margin-bottom:0;}
#gnb .submenu>ul>li>a {display:inline-block;color:#fff; font-size:16px; line-height:1.3em;position: relative;}
#gnb .submenu>ul>li>a:after{content: '';position: absolute;left:50%;bottom:0;width:0;height:1px;opacity:0;transition:.3s;background-color: #fff;}
#gnb .submenu>ul>li>a:hover:after{width:100%;opacity:1;left:0;}

#header.header-up{transform:translateY(-100%);}

.contain {position:relative; max-width:1260px; padding-left:30px; padding-right:30px; margin:0 auto;width:100%;}
#contArea {max-width:1260px; padding-left:30px; padding-right:30px; margin:0 auto;width:100%;}
#contArea.wide {max-width:100%; padding-left:0; padding-right:0;}

/* main */ 
.main-vis-wrap{padding-left:100px;}
.main-visual {position:relative; overflow:hidden;border-radius:160px 0 0 0;}
.main-visual .item {position:relative; height: calc(100vh - 100px);}
.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-visual .tt-wrap {position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); z-index:1;max-width:1460px;width:100%;text-shadow:3px 3px 5px rgba(0,0,0,.4);padding:0 30px;}
.main-visual .tt-wrap .tt {margin-bottom:var(--size40);font-size:var(--fz64);font-family:var(--ebs);line-height:1.2em;color: #fff;}
.main-visual .controls {display: flex;justify-content:center;align-items:center;position:absolute; left:50%; z-index:1;bottom:65px;transform:translateX(-50%);}
.main-visual .controls .sld-btn{display: block;width:43px;height:9px;background-repeat:no-repeat;background-size:contain;font-size:0;background-color:transparent;border: none;}
.main-visual .controls .sld-btn.prev{background-image:url(/images/main/vis-prev.png);background-position:0 50%;}
.main-visual .controls .sld-btn.next{background-image:url(/images/main/vis-next.png);background-position:100% 50%;}

.main-visual .center{position:relative;margin:0 20px;width:160px;}
.main-visual .paging ul li{width:160px;display: flex;justify-content:space-between;align-items:center;color: #fff;position: absolute;top:50%;transform:translateY(-50%);opacity:0;transition:.3s;font-weight:600;line-height:1em;}
.main-visual .paging ul li.slick-active{opacity:1;}
.main-visual .paging ul li .back{opacity:.6}
.main-visual .circle {display: flex;align-items: center;justify-content: center;border-radius: 50%;width: 48px;height: 48px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);overflow: hidden;}
.main-visual .circle:before{content:'';width:44px;height:44px;border: 3px solid rgba(255,255,255,.4);position: absolute;left:50%;top:50%;transform:translate(-50%,-50%);border-radius:100%;}
.main-visual .circle svg {position: absolute;left: 0;top: 0;width: 48px !important; height: 48px !important; transform: rotate(-90deg);}
.main-visual .circle svg circle {fill: none;stroke-linecap: round;stroke-width: 3;}
.main-visual .circle svg .progress {stroke: #fff;stroke-dasharray: 131.95; /* 2π × 21 = 131.95 */stroke-dashoffset: 131.95; transition: stroke-dashoffset 0.3s ease;}
.main-visual .circle.animated svg .progress {animation: progressAnimation linear forwards;}

/* Progress 애니메이션 */
@keyframes progressAnimation {
    from {
        stroke-dashoffset: 131.95;
    }
    to {
        stroke-dashoffset: 0;
    }
}


.section{padding:var(--size150) 0;}
.section .contain{max-width:1780px;}
.sec-tit{text-align:center;margin-bottom:var(--size75);}
.sec-tit .tit{font-size:var(--fz60);font-weight:600;color:var(--pri);line-height:1.2em;font-family:var(--ebs);}
.sec1 .row{display: flex;align-items:center;margin-bottom:var(--size100);}
.sec1 .row:last-child{margin-bottom:0;}
.sec1 .row .imgs{width:65.6976%;}
.sec1 .row .imgs ul{display: flex;margin:0 -20px;}
.sec1 .row .imgs ul li{width:50%;padding:0 20px;}
.sec1 .row .imgs ul li .pic img{border-radius:var(--bd24);}
.sec1 .row .tt-wrap{min-width:0;width:1%;flex:1 1 auto;padding-left:var(--size80);}
.sec1 .row .tt-wrap .tit{display: inline-block;position: relative;margin-bottom:var(--size20);padding-right:22px;font-size:var(--fz56);font-weight:600;line-height:1.2em;color:var(--pri);font-family:var(--ebs);}
.sec1 .row .tt-wrap .tit:after{content: '';position: absolute;right:0;top:0;width:12px;height:12px;border-radius:50%;background-color: #c0b6ac;}
.sec1 .row .tt-wrap .tt1{margin-bottom:var(--size25);font-size:var(--fz22);font-weight: 500;color:var(--dark);line-height:1.5em;}
.sec1 .row .tt-wrap .tt2{margin-bottom:var(--size75);color:#686868;}
.main-more{display: flex;justify-content:center;align-items:center;width:150px;height:48px;border-radius:24px;border: 1px solid var(--pri);color:var(--pri);line-height:1.2em;transition:.3s;}
.main-more:hover{background-color: var(--pri);color: #fff;}
.sec1 .row:nth-child(even){flex-direction: row-reverse;}
.sec1 .row:nth-child(even) .tt-wrap{padding-left:0;padding-right:var(--size80);}

.sec2{background:url('/images/main/sec2-bg.jpg') no-repeat center center; background-size: cover;}
.sec2 .sec-tit{margin-bottom:var(--size55);}
.sec2 .sec-tit .tit{color: #fff;}
.sec2 .sec-tit .tt20{margin-top:var(--size40);color: #fff;}
.tt20{font-size:var(--fz20);line-height:1.6em;}
.sec2 .main-more{margin:0 auto;border-color: #fff;color: #fff;}
.sec2 .main-more:hover{background-color: var(--pri);border-color:var(--pri);}





/* sub page */
.sub-vis-wrap{position: relative;padding-left:100px;overflow:hidden;}
.sub-visual {position:relative; height:440px; z-index:10;overflow:hidden;border-radius:160px 0 0 0;}
.sub-visual .tit{font-size:var(--fz80);font-weight:400;line-height:1em;color: #fff;position: absolute;left:0;top:50%;width:100%;text-shadow: 3px 3px 5px rgba(0,0,0,.4);text-align:center;z-index:1;font-family:var(--ebs);transform:translateY(-50%);}
.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);
    -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 */
}

.lnb-wrap{background-color:var(--pri);position: relative;overflow:hidden;}
.lnb-wrap:before{content:'';width:100px;height:100%;background-color:#f6f5f1;position: absolute;left:0;top:0;z-index:1;}
.lnb{max-width:1200px;margin:0 auto;}
.lnb ul{display: flex;}
.lnb ul li{width:auto;flex:1;}
.lnb ul li a{display: flex;justify-content:center;align-items:center;font-size:18px;height:60px;font-weight:600;line-height:1.2em;color:#fff;text-align:center;padding:0 10px;}
.lnb ul li.active a{background-color:#fff;color:var(--pri);}

.sub-title{margin:var(--size110) 0 60px;text-align:center;text-align:center;}
.sub-title h1{font-size:var(--fz40);font-family:var(--ebs);color:var(--pri);line-height:1.2em;font-weight: 600;}

.real-cont {padding:0 0 var(--size100);}
.real-cont.none{padding-bottom:0;}

/* footer */
#footer {background:url('/images/common/foot-bg.jpg') no-repeat center center; background-size: cover;padding:var(--size60) 0;color: #fff;}
#footer .contain{display: flex;max-width:100%;padding:0 100px;}
#footer .foot-logo{margin-right:40px;}
#footer .foot-cnt{min-width:0;width:1%;flex:1 1 auto;}
#footer .foot-cnt .flex{display: flex;gap:20px;justify-content: space-between;}
#footer .foot-cnt .col-tit{margin-bottom:var(--size25);font-size:var(--fz20);font-weight:700;line-height:1.2em;}
#footer .foot-cnt address{font-style:normal;display: flex;flex-wrap:wrap;gap:0 34px;max-width:660px;}
#footer .foot-cnt .copy{margin-top:var(--size20);font-size:13px;font-weight:200;letter-spacing:0;line-height:1.3em;}
#footer .foot-cnt .copy a{display: inline-block;color: #7c6c5f;}
#footer .foot-cnt .col.type2{max-width:250px;width:100%;}
#footer .foot-cnt .menu ul li{padding-bottom:10px;margin-bottom:10px;border-bottom: 1px solid rgba(255,255,255,.2);}
#footer .foot-cnt .menu ul li:last-child{margin-bottom:0;}
#footer .foot-cnt .foot-contact .plus{margin-bottom:var(--size10);font-size:var(--fz24);line-height:1.2em;}
#footer .foot-cnt .foot-contact .plus strong{font-weight:600;}
#footer .foot-cnt .foot-contact .tt{margin-bottom:var(--size10);}
#footer .foot-cnt .foot-contact .time{font-size:var(--fz14);line-height:1.43em;}

.quick{position: fixed;right: 30px;bottom:30px;z-index:100;}
.quick ul li{margin-bottom:10px;}
.quick ul li:last-child{margin-bottom:0;}
.quick ul li a{display: block;}

/* for mobile */
.only-mobile {display:none;}
.btn-m-menu {display:block; position:absolute; top:50%; margin-top:-13px; right:100px;text-align:center;z-index:99; transition:all 0.5s ease-in-out;}
.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:var(--snd); 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;}
.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;}