@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 */
#wrapper{overflow:hidden;position:relative;}
#sub #wrapper{padding-top:100px;}
#header {z-index:90;left:0;right:0;top:0;position:fixed;transition:.3s;background-color:#fff;}
#main #header{position:absolute;}
#header:hover{background-color: #fff !important;}
#header .contain{height:100px;max-width:1780px;}
#header .sitelogo {position:absolute; top:30px; left:30px; z-index:2}
#header .sitelogo a {display:block;}

#gnb{padding-right:210px;}
#gnb>ul {display:flex; justify-content:flex-end;margin:0 -55px;} 
#gnb>ul>li {position:relative; text-align:center; padding:0 55px;}
#gnb>ul>li>a {position:relative; display:inline-block; color:#242424; font-size:20px; line-height:100px; font-weight:600;font-family: 'Montserrat',sans-serif;}
#gnb>ul>li>a:after{content:'';width:50px;height:3px;background-color:#242424;position: absolute;left:50%;transform:translateX(-50%);bottom:-1px;z-index:1;opacity:0;transition:.3s;}
#gnb>ul>li:hover>a:after{opacity:1;}

#gnb .submenu {position:absolute; top:100px; left:0; width:100%; height:0; overflow:hidden; z-index:20;}
#gnb .submenu ul {display:block; padding:40px 0;}
#gnb .submenu ul li {text-align:center;margin-bottom:18px;}
#gnb .submenu ul li:last-child{margin-bottom:0;}
#gnb .submenu ul li a {display:inline-block; color:#686868; font-size:16px; line-height:1.2em;position:relative;transition:.3s;}
#gnb .submenu ul li a:hover {color:#242424;font-weight:600;}

.submenu-bg {background-color:#fff;position: absolute;left:0;right:0;top:99px;border-top:1px solid #ddd;display:none;}

.fp-viewing-Visual #header{background-color: #f6f6f6;}

.fp-tableCell{padding-top:100px;}
.main-visual .fp-tableCell,
#section4 .fp-tableCell{padding-top:0;}


.contain {position:relative; max-width:1460px; padding-left:30px; padding-right:30px; margin:0 auto;}
#contArea {max-width:1460px; 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 .items{height:100%;}
.main-visual .items .slick-list{height:100%;}
.main-visual .items .slick-list .slick-track{height:100%;}
.main-visual .item {position:relative;/* height:100%; */height:100vh;}
.main-visual .item .img{width:100%;height:100%;}
.main-visual .item .img img{width:100%;height:100%;}

.sec-tit{font-family: 'Montserrat',sans-serif;color: #242424;font-weight:600;font-size:60px;line-height:.8em;margin-bottom:20px;}
.sec-tt{font-size:18px;line-height:1.444em;margin-bottom:50px;}
.doc-sec .contain{display:flex;}
.doc-sec .tt-box{max-width:470px;width:100%;position:relative;padding-right:20px;}
.link-more{display:flex;justify-content:center;align-items:center;max-width:220px;width:100%;height:60px;border:1px solid #ddd;background-color: #fff;}
.link-more span{padding-right:62px;padding-top:3px;position:relative;display:inline-block;font-size:17px;font-weight:500;color: #151515;}
.link-more span:after{content:'';width:49px;height:13px;background:url('../images/main/link_arr.png')no-repeat 50% 50%/contain;position: absolute;right:0;top:8px;}
.doc-sec .right-con{min-width:0;width:1%;flex:1 1 auto;}
.doc-sec .project-slide .items{margin:0 -15px;}
.doc-sec .project-slide .items .item{padding:0 15px;}
.doc-sec .project-slide .items .item .img{position:relative; height:0; padding-bottom:125.34%; overflow:hidden;}
.doc-sec .project-slide .items .item .img 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;}
.doc-sec .project-slide .items .item .img .radi-view{font-family: 'Montserrat',sans-serif;font-size:20px;font-weight:600;color: #242424;display:flex;justify-content:center;align-items:center;width:100px;height:100px;border-radius:50%;background-color:rgba(255,255,255,.8);position: absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:1;transition:.3s;opacity:0;}
.doc-sec .project-slide .items .item a:hover .img .radi-view{opacity:1;}
.doc-sec .project-slide .items .item .tit{font-size:18px;font-weight:500;margin-top:10px;}

.sec1 .slide-btns{display:flex;padding:0 22px;position:absolute;display:inline-block;left:0;bottom:0;}
.sec1 .slide-btns .custom-paging li {font-size:18px; font-weight:500;color:#242424; line-height:1.5em; display:none;}
.sec1 .slide-btns .custom-paging li.slick-active {display:block;}
.sec1 .slide-btns .custom-paging li .wrap{color: #9c9c9c;}
.sec1 .slide-btns .custom-paging li .wrap .slash{width:11px;height:11px;background:url('../images/main/slash.png')no-repeat 50% 50%/contain;display:inline-block;}
.sec1 .slide-btns .slick-arrow{font-size:0;border:0;background-color:transparent;background-repeat:no-repeat;background-size:contain;background-position:50% 50%;width:11px;height:19px;position: absolute;top:50%;transform:translateY(-50%);}
.sec1 .slide-btns .slick-prev{background-image:url('../images/main/project_prev.png');left:0;}
.sec1 .slide-btns .slick-next{background-image:url('../images/main/project_next.png');right:0;}


.sec2 .right-con .items{display:flex;flex-wrap:wrap;margin:0 -15px -20px;}
.sec2 .right-con .items .item{padding:0 15px;margin-bottom:20px;width:50%;}
.sec2 .right-con .items .item .img{position:relative; height:0; padding-bottom:71.112%; overflow:hidden;}
.sec2 .right-con .items .item .img 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;}
.sec2 .right-con .items .item .tit{font-size:18px;font-weight:500;margin-top:10px;}

.ct-sec{}
.ct-sec .tt-box .info{}
.ct-sec .tt-box .info .cnt{margin-bottom:30px;}
.ct-sec .tt-box .info .cnt:last-child{margin-bottom:0;}
.ct-sec .tt-box .info .cnt .tit{color: #242424;font-size:18px;font-weight:600;letter-spacing:-.02em;margin-bottom:10px;}
.ct-sec .tt-box .info .cnt .wrap{margin-bottom:8px;} 
.ct-sec .tt-box .info .cnt .wrap .tt{letter-spacing:-.02em;line-height:1.2em;margin-bottom:3px;}
.ct-sec .tt-box .info .cnt .wrap .tt:last-child{margin-bottom:0;}
.ct-sec .tt-box .info .cnt .map-link{font-size:16px;letter-spacing:-.02em;color: #242424;padding-left:24px;position:relative;}
.ct-sec .tt-box .info .cnt .map-link:before{content:'';width:14px;height:19px;background:url('../images/main/icon_location.png')no-repeat 50% 50%/contain;position: absolute;left:0;top:0px;}
.ct-sec .tt-box .call{padding-left:100px;position:relative;margin-top:70px;}
.ct-sec .tt-box .call:before{content:'';width:80px;height:80px;border-radius:50%;background:#fff url('../images/main/icon_tel.png')no-repeat 50% 50%/30px;border:1px solid #ddd;position: absolute;left:0;top:50%;transform:translateY(-50%);}
.ct-sec .tt-box .call .tit{font-size:20px;line-height:1.2em;margin-bottom:5px;}
.ct-sec .tt-box .call .tt{font-size:25px;line-height:1.2em;font-weight:600;}

.ct-sec .contact-form{border-top:2px solid #242424;padding-top:25px;}
.ct-sec .contact-form .flex-wrap{display:flex;margin:0 -15px;}
.ct-sec .contact-form .flex-wrap .col{width:50%;padding:0 15px;}
.ct-sec .contact-form .flex-wrap .col .row{margin-bottom:30px;}
.ct-sec .contact-form .flex-wrap .col .row:last-child{margin-bottom:0;}
.ct-sec .contact-form .flex-wrap .col .row label{font-size:18px;font-weight:600;color: #242424;letter-spacing:-.02em;display:inline-block;margin-bottom:15px;}
.ct-sec form .form-btm{margin-top:35px;}
.ct-sec form .form-btm .checkbox{font-size:16px;}
.ct-sec form .form-btm .buttons{margin:0;margin-top:30px;}
.btn-pack.wide-btn{width:100%;height:60px;font-size:20px;line-height:60px;background-color: #242424;border-color:#242424;color: #fff;font-weight:600;letter-spacing:-.02em;}

.brochure{margin-top:120px;margin-bottom:154px;}
.brochure .bg-con{background:url('../images/main/brochure_bg.jpg')no-repeat 50% 50%/cover;padding:45px 70px 35px;}
.brochure .bg-con .bro-tit{font-size:42px;font-weight:700;margin-bottom:40px;}
.brochure .bg-con .items{display:flex;margin:0 -74px;justify-content:center;}
.brochure .bg-con .items .item{padding:0 74px;text-align:center;}
/* .brochure .bg-con .items .item .img{position:relative; height:0; padding-bottom:147.06%; overflow:hidden;box-shadow:5px 5px 5px rgba(0,0,0,.35);} */
.brochure .bg-con .items .item .img img{box-shadow:5px 5px 5px rgba(0,0,0,.35);width:auto;}
/* .brochure .bg-con .items .item .img 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;} */
.brochure .bg-con .items .item .tit{color: #242424;font-size:18px;line-height:1.2em;font-weight:600;margin:20px 0 5px;}
.brochure .bg-con .items .item .oad{font-size:14px;font-weight:500;color: #e60027;line-height:1.2em;}


/* sub page */
.sub-visual {position:relative; height:350px; z-index:10;}
.sub-visual .background {position:absolute; top:0; left:0; width:100%; height:100%; background-position:center; background-size:cover;}
.sub-visual .tit{font-size:40px;color: #242424;font-weight:700;font-family:'Montserrat',sans-serif;position: absolute;z-index:1;left:0;width:100%;text-align:center;top:50%;transform:translateY(-50%);}

#lnb{max-width:1460px;width:100%;margin:-30px auto 0;position:relative;z-index:11;padding:0 30px;}
.lnb {border-radius:10px;box-shadow:3px 3px 11px rgba(0,0,0,.35);overflow:hidden;}
.lnb ul{display:flex;}
.lnb ul li{flex:1;position:relative;}
.lnb ul li:after{content:'';width:1px;height:30px;background-color:#ddd;position: absolute;right:0;top:50%;transform:translateY(-50%);}
.lnb ul li:last-child:after{display:none;}
.lnb ul li a{display:flex;justify-content:center;align-items:center;font-size:20px;font-weight:500;background-color: #fff;height:60px;position:relative;text-align:center;}
.lnb ul li.active a{background-color: #e60027;color: #fff;}
.lnb ul li.active:after{display:none;}

.sub-title{margin:55px 0 50px;text-align:center;}
.sub-title h2{font-size:28px;font-weight:600;color: #242424;position:relative;padding-bottom:19px;display:inline-block;}
.sub-title h2:after{content:'';width:100%;height:3px;background-color:#e60027;position: absolute;left:50%;bottom:0;transform:translateX(-50%);}

.real-cont {padding-bottom:150px;}
.real-cont.type2{padding-bottom: 0;}

/* footer */
#footer{background-color: #ddd;padding:75px 0;}
#footer .contain{display:flex;}
#footer .foot-logo{max-width:143px;width:100%;margin-right:57px;}
#footer .foot-info{min-width:0;width:1%;flex:1 1 auto;margin-right:30px;}
#footer .foot-info address .wrap{margin-bottom:20px;font-size:15px;line-height:1.2em;letter-spacing:-.02em;}
#footer .foot-info address .wrap:last-child{margin-bottom:0;}
#footer .foot-info address .wrap .tit{margin-bottom:5px;}
#footer .foot-info address .wrap .tt-wrap{display:flex;margin:0 -9px -5px;flex-wrap:wrap;}
#footer .foot-info address .wrap .tt-wrap p{display:inline-block;padding:0 9px;margin-bottom:5px;}
#footer .foot-right{max-width:315px;width:100%;text-align:right;}
#footer .foot-right .foot-menu{margin:0 -25px;display:flex;}
#footer .foot-right .foot-menu li{padding:0 25px;}
#footer .foot-right .foot-menu li a{display:inline-block;font-size:15px;padding-left:20px;position:relative;letter-spacing:-.02em;}
#footer .foot-right .foot-menu li a:before{content:'';width:15px;height:15px;background:url('../images/common/foot_link.png')no-repeat 50% 50%/contain;position: absolute;left:0;top:4px;}
#footer .foot-right .copy{font-size:14px;line-height:1.571em;letter-spacing:-.02em;margin-top:20px;}
#footer address {font-style:normal;}

.scroll-top{width:70px;height:70px;border-radius:50%;background-color:#e60027;display:flex;justify-content:center;align-items:center;position:fixed;right:40px;bottom:40px;z-index: 999999;}
.scroll-top span{display:inline-block;font-size:12px;font-weight:700;letter-spacing:-.06em;padding-top:15px;position:relative;color: #fff;line-height:1.2em;}
.scroll-top span:before{content:'';width:12px;height:8px;background:url('../images/common/icon_top.png')no-repeat 50% 50%/contain;position: absolute;top:0;left:50%;transform:translateX(-50%);}

/* for mobile */
.only-mobile {display:none;}
.btn-m-menu {display:block; position:absolute; top:50%; margin-top:-11px; right:30px; width:30px; height:21px;  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:3px; width:22px;background:#242424;}
.btn-m-menu span:before,
.btn-m-menu span:after {content:" "; position:absolute; right:0; width:30px; height:3px; background:#242424; 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:#e60027}
.mobile-navigation .nav-menu>ul>li.active>a:after {transform:translateY(-35%) rotate(-135deg); border-color:#e60027;}
.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:#e60027}
.mobile-navigation .nav-menu .submenu>ul>li>a:hover:after {background:#e60027}
.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;}
