@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}

/* header */
#header {position:fixed;left:0;top:0;right:0;z-index:90;}
#header:after{content:'';width:100%;height:1px;background-color: #ddd;position: absolute;left:0;top:100px;transition:.3s;opacity:0;}
#header .contain{max-width:1460px;height:100px;}
#header .sitelogo {position:absolute; top:25px; left:30px; z-index:2}
#header .sitelogo a {display:block;}
#header .sitelogo a img.on{display:none;}

#gnb{padding-right:270px;}
#gnb>ul {display:flex; justify-content:flex-end;margin:0 -45px;} 
#gnb>ul>li {position:relative; text-align:center; padding:0 45px;}
#gnb>ul>li>a {position:relative; display:inline-block; color:#fff; font-size:20px; line-height:100px; font-weight:600;}
#gnb>ul>li:hover>a{color: #4caee8 !important;}

#gnb .submenu {position:absolute; top:100px; left:0; width:100%; height:0; overflow:hidden; z-index:20;}
#gnb .submenu ul {display:block; padding:30px 0 45px;}
#gnb .submenu ul li {margin-bottom:20px;text-align:center;}
#gnb .submenu ul li a {display:inline-block;font-size:16px; line-height:1.4em; position:relative;}
#gnb .submenu ul li a:hover {color:#4caee8;}

.submenu-bg {background-color:#fff;}


.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;}


#header:hover{background-color: #fff;}
#header:hover:after{opacity:1;}
#header:hover .sitelogo a img.off{display:none;}
#header:hover .sitelogo a img.on{display:block;}
#header:hover #gnb>ul>li>a{color: #242424;}
#header:hover .btn-m-menu span,
#header:hover .btn-m-menu span:before,
#header:hover .btn-m-menu span:after{background-color: #242424;}

.header-fixed #header{background-color: #fff;}
.header-fixed #header:after{opacity:1;}
.header-fixed #header .sitelogo a img.off{display:none;}
.header-fixed #header .sitelogo a img.on{display:block;}
.header-fixed #header #gnb>ul>li>a{color: #242424;}
.header-fixed #header .btn-m-menu span,
.header-fixed #header .btn-m-menu span:before,
.header-fixed #header .btn-m-menu span:after{background-color: #242424;}

/* main */ 
.main-visual {position:relative; overflow:hidden;}
.main-visual .item {position:relative; height:100vh;}
.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); -webkit-transform:scale(1.1); transform:scale(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 .contain{position: absolute;left:50%;top:50%;transform:translate(-50%,-50%);max-width:1460px;width:100%;color: #fff;}
.main-visual .contain .txt{font-size:60px;line-height:1.2em;}
.main-visual .contain .wrap{display:flex;align-items:center;margin-top:35px;}
.main-visual .contain .wrap .btns{display:flex;align-items:center;margin-right:24px;}
.main-visual .contain .wrap .btns .custom_paging{margin:0 24px;}
.main-visual .contain .wrap .btns .custom_paging li {color:#fff; line-height:1.5em; display:none;}
.main-visual .contain .wrap .btns .custom_paging li.slick-active {display:block;}
.main-visual .contain .wrap .btns .custom_paging li .bar{margin:0 10px;}
.main-visual .contain .wrap .slick-arrow{display:block;width:9px;height:16px;background-color:transparent;background-repeat:no-repeat;background-size:contain;border:none;font-size:0;}
.main-visual .contain .wrap .slick-prev{background-image:url('../images/main/vis-prev.png');background-position:0 50%;}
.main-visual .contain .wrap .slick-next{background-image:url('../images/main/vis-next.png');background-position:100% 50%;}
.main-visual .contain .wrap .slide-btn{width:13px;height:16px;background-repeat:no-repeat;background-size:contain;background-position:50% 50%;;font-size:0;border:none;background-color:transparent;}
.main-visual .contain .wrap .slide-btn.slide-stop{background-image:url('../images/main/vis-pause.png');}
.main-visual .contain .wrap .slide-btn.slide-play{display:none;background-image:url('../images/main/vis-play.png');}

.main-visual .scroll {position:absolute; bottom:50px; left:50%;text-align:center; z-index:50; animation:move_up_down 2s linear infinite;} 
@keyframes move_up_down { 
  0%,100%{ 
    transform:translate(-50%,0); 
  } 
  50% { 
    transform:translate(-50%,15px); 
  } 
}

.section{padding:100px 0;}
.section .contain{max-width:1460px;}
.section .sec-tit{margin-bottom:70px;}
.section .sec-tit .eng{margin-bottom:7px;font-size:14px;line-height:1.2em;}
.section .sec-tit .tit{font-size:50px;line-height:1.2em;color: #242424;}
.section .sec-tit .tt{margin-top:25px;color: #686868;}
.sec1 .contain{display:flex;align-items:center;}
.sec1 .img{margin-right:100px;}
.sec1 .img img{border-radius:100px 0 100px 0;}
.sec1 .tt-wrap{min-width:0;width:1%;flex:1 1 auto;}
.sec1 .tt-wrap .sec-tit{margin-bottom:100px;}
.sec1 .tt-wrap .sec-tit .tt{margin-top:40px;}
.doc-btn{position:relative;z-index:1;}
.doc-btn a{display:inline-block;position:relative;padding-left:25px;padding-right:28px;line-height:1.2em;color: #686868;letter-spacing:.03em;transition:.3s;}
.doc-btn a:hover{color: #242424;}
.doc-btn a:before{content:'';position: absolute;left:0;top:-14px;width:42px;height:42px;border-radius:50%;background-color:rgba(74,149,194,.3);z-index:-1;}
.doc-btn a:after{content:'';position: absolute;right:0px;top:0px;width:16px;height:17px;background:url('../images/main/btn-arr.png')no-repeat 100% 50%/contain;}

.sec2 .sec-tit,
.sec3 .sec-tit{text-align:center;}

.sec2{background-color: #f4f4f4;}
.sec2 ul{display:flex;}
.sec2 ul li{width:25%;}
.sec2 ul li:nth-child(odd){padding:30px 0;margin-bottom:-30px;}
.sec2 ul li a{position:relative;display:flex;justify-content:center;align-items:center;height:480px;background-repeat:no-repeat;background-size:cover;background-position:50% 50%;}
.sec2 ul li a .inner{width:100%;padding:0 15px;text-align:center;}
.sec2 ul li a .inner .tit{position:relative;padding-bottom:75px;font-size:30px;font-weight:700;line-height:1.2em;color: #fff;}
.sec2 ul li a .inner .tit:after{content:'';position: absolute;left:50%;bottom:0;transform:translateX(-50%);width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.35);background:url('../images/main/sec2-arr.png')no-repeat 50% 50%/16px;transition:.3s;}
.sec2 ul li a:hover .inner .tit:after{border-color: #4a95c2;background-color: #4a95c2;}

.main-project .sld .item .inner{display:flex;align-items:center;}
.main-project .sld .item .inner .img{width:750px;margin-right:60px;}
.main-project .sld .item .inner .img .pic {position:relative; height:0; padding-bottom:56%; overflow:hidden;}
.main-project .sld .item .inner .img .pic img {position:absolute; top:50%; left:0; transform:translateY(-50%); width:100% !important; height:100% !important; max-width:100%; min-height:100%; object-fit:cover; transition:0.3s;}
.main-project .sld .item .inner .tt-wrap{min-width:0;width:1%;flex:1 1 auto;}
.main-project .sld .item .inner .tt-wrap .tit{margin-bottom:25px;font-size:30px;line-height:1.67em;font-weight:700;color: #242424;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;}
.main-project .sld .item .inner .tt-wrap .tt{margin-bottom:80px;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp:3;-webkit-box-orient: vertical;color: #686868;}
.main-project .dots{margin-top:30px;}
.main-project .dots .slick-dots{display:flex;margin:0 -14px;}
.main-project .dots .slick-dots li{padding:0 14px;}
.main-project .dots .slick-dots li button{display:block;width:13px;height:13px;background-color: #c7c7c7;border:none;font-size:0;border-radius:100px;transition:.3s;}
.main-project .dots .slick-dots li.slick-active button{background-color: #1d2252;}

.sec4{background:url('../images/main/inq-bg.jpg')no-repeat 50% 50%/cover;}
.sec4 .contain{display:flex;}
.sec4 .left{display:flex;flex-direction:column;justify-content:space-between;min-width:0;width:1%;flex:1 1 auto;margin-right:50px;}
.sec4 .left .tit{font-size:32px;line-height:1.63em;color: #fff;}
.sec4 .left .btn{display:flex;justify-content:center;align-items:center;width:250px;height:70px;background-color: #4caee8;}
.sec4 .left .btn span{position:relative;padding-right:75px;font-size:18px;font-weight:600;line-height:1.2em;color: #fff;}
.sec4 .left .btn span:after{content:'';position: absolute;right:0;top:4px;width:21px;height:16px;background:url('../images/main/sec4-arr.png')no-repeat 100% 50%/contain;}
.sec4 .right{width:760px;background-color:rgba(255,255,255,.85);padding:50px 0;}
.sec4 .right ul{display:flex;}
.sec4 .right ul li{width:50%;}
.sec4 .right ul li .box{position:relative;border-right:1px solid #c9c9c9;padding:0 50px;}
.sec4 .right ul li:last-child .box{border-right:0;}
.sec4 .right ul li .box:after{content:'';position: absolute;right:50px;bottom:0;width:86px;height:85px;background:url('../images/main/inq-ic1.png')no-repeat 100% 50%/contain;}
.sec4 .right ul li.type2 .box:after{background-image:url('../images/main/inq-ic2.png');}
.sec4 .right ul li .box .inner .wrap{margin-bottom:75px;letter-spacing:-.01em;}
.sec4 .right ul li .box .inner .wrap .tit{position:relative;padding-top:15px;margin-bottom:10px;font-size:22px;font-weight:600;line-height:1.2em;color: #242424;}
.sec4 .right ul li .box .inner .wrap .tit:before{content:'';position: absolute;left:0;top:0;width:20px;height:3px;background-color: #4caee8;}

/* sub page */

.sub-visual {position:relative; height:460px; z-index:10;overflow:hidden;}
.sub-visual .tit{position: absolute;left:0;top:240px;text-align:center;width:100%;font-size:40px;font-weight:700;line-height:1.2em;color: #fff;z-index:1;}
.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 */
}

#lnb{position:relative;z-index:11;max-width:1200px;width:100%;margin:-30px auto 0;overflow:hidden;border-radius:50px 0 50px 0;box-shadow:0px 0px 10px rgba(0,0,0,.3);}
.lnb ul{display:flex;}
.lnb ul li{width:auto;flex:1;}
.lnb ul li a{display:flex;justify-content:center;align-items:center;text-align:center;height:60px;padding:0 10px;font-size:18px;line-height:1.3em;font-weight:500;background-color: #fff;border-right:1px solid #ddd;}
.lnb ul li.active a{background-color: #4caee8;color: #fff;font-weight:700;border-right:0;}

.sub-title{margin:75px 0;text-align:center;}
.sub-title h1{font-size:30px;line-height:1.2em;color: #242424;font-weight:700;}

.real-cont {padding:0 0 150px;}

/* footer */
#footer {padding:40px 0;background-color: #1f1f1f;}
#footer .contain{display:flex;max-width:1460px;}
#footer .foot-info{min-width:0;width:1%;flex:1 1 auto;margin-right:10px;}
#footer .foot-info .tit{margin-bottom:15px;font-size:18px;font-weight:700;line-height:1.2em;color: #fff;opacity:.5;}
#footer .foot-info address{display:flex;flex-wrap:wrap;margin:0 -15px -10px;font-style:normal;}
#footer .foot-info address p{padding:0 15px;margin-bottom:10px;font-size:15px;color: #686868;line-height:1.3em;}
#footer .foot-info .copy{margin-top:25px;font-size:14px;line-height:1.2em;letter-spacing:0;color: #636363;}
#footer .foot-info .copy span{margin-right:8px;}
#footer .foot-info .copy a{display:inline-block;font-size:13px;}
#footer .foot-menu ul{display:flex;margin:0 -20px;}
#footer .foot-menu ul li{padding:0 20px;}
#footer .foot-menu ul li a{position:relative;padding-left:25px;font-size:15px;color: #686868;}
#footer .foot-menu ul li a:before{content:'';position: absolute;left:0;top:1px;width:15px;height:15px;background:url('../images/common/ic-link.png')no-repeat 50% 50%/contain;}



/* for mobile */
.only-mobile {display:none;}
.btn-m-menu {display:block; position:absolute; top:50%; margin-top:-11px; right:30px; width:32px; height:24px;  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:32px;background:#fff;}
.btn-m-menu span:before,
.btn-m-menu span:after {content:" "; position:absolute; right:0; width:32px; 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;}
.mobile-navigation .nav-menu>ul>li.active>a {color:#1d2252}
.mobile-navigation .nav-menu>ul>li.active>a:after {transform:translateY(-35%) rotate(-135deg); border-color:#1d2252;}
.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:#1d2252}
.mobile-navigation .nav-menu .submenu>ul>li>a:hover:after {background:#1d2252}
.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;}