@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: absolute; left: 0; top: 0; right: 0; z-index: 90; height: 100px; background-color: rgba(0,0,0,.6); } 
#header .contain { height: 100px; max-width: 100%; padding: 0 100px; } 
#header .sitelogo { position: absolute; top: 50%; transform: translateY(-50%); z-index: 2 } 
#header .sitelogo a { display: block; } 
#header.header-hover { background-color: transparent; } 

#gnb>ul { display: flex; justify-content: center; margin: 0 -30px; } 
#gnb>ul>li { position: relative; text-align: center; padding: 0 30px; } 
#gnb>ul>li>a { position: relative; display: inline-block; color: #fff; font-size: 20px; line-height: 100px; padding: 0 12px; letter-spacing: -0.02em; font-weight: 500; } 
#gnb .submenu { position: absolute; top: 100px; left: 0; width: 100%; height: 0; overflow: hidden; z-index: 20; } 
#gnb>ul>li.active>a:after { width: 100%; left: 0; } 
#gnb .submenu ul { display: block; padding: 40px 0 40px; } 
#gnb .submenu ul li { padding: 0; text-align: center; } 
#gnb .submenu ul li:last-child { margin-bottom: 0; } 
#gnb .submenu ul li a { display: inline-block; color: #fff; font-size: 17px; line-height: 2.647em; position: relative; } 
#gnb .submenu ul li a:hover { color: #ffe289; } 
.submenu-bg { background-color: rgba(0,0,0,.6); position: absolute; top: 100px; left: 0; width: 100%; z-index: 15; } 

.contain { position: relative; max-width: 1460px; padding-left: 30px; padding-right: 30px; margin: 0 auto; height: 100%; } 

#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; color: #fff; height: 100vh; } 
.section .main-visual .contain { height: 100%; max-width: 1260px; } 
.main-visual .item { position: relative; overflow: hidden; height: 100vh; } 
.main-visual .image { position: relative; height: 100vh; overflow: hidden; transition: 5s; transform: scale(1.1); } 
.main-visual .slick-active .image { transform: scale(1); } 
.main-visual .image img { position: absolute; top: 50%; left: 0; 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; } 
.main-visual .slick-arrow { position: absolute; top: 50%; transform: translateY(-50%); width: 60px; height: 60px; background: url("../images/main/slide_btn.png") 50% 50% no-repeat; border: 1px solid rgba(255,255,255,.3); border-radius: 100%; overflow: hidden; text-indent: -9999em; line-height: 0; font-size: 0; z-index: 50; } 
.main-visual .slick-arrow:hover { background-color: #202020; border-color: #202020; } 
.main-visual .slick-prev { left: 100px; } 
.main-visual .slick-next { right: 100px; transform: rotate(180deg); } 
.main-visual .slick-dots { display:flex; align-items:center; position: absolute; left:50%; transform:translateX(-50%); bottom:80px; z-index:1; cursor: pointer; } 
.main-visual .slick-dots li { padding:0 5px; } 
.main-visual .slick-dots li button { font-size:0; display:block; background-color:transparent; width:14px; height:14px; border-radius:50%; border:2px solid #f9fbfb; transition:.3s; } 
.main-visual .slick-dots li.slick-active button { background-color: #fff; border-color:#fff; } 
.main-visual .controls { position:absolute; bottom:80px; left: 43px; width:100%; display:flex; align-items:center; justify-content:center; z-index:50; } 
.main-visual .controls .bt { width:9px; height:14px; background-position:50% 50%; background-repeat:no-repeat; margin-left: 17px; } 
.main-visual .controls .bt.play { background-image:url("../images/main/btn-play.png"); display:none; } 
.main-visual .controls .bt.stop { background-image:url("../images/main/btn-stop.png"); } 
.main-visual .caption { position: absolute; top: 50%; transform: translateY(-50%); width: 100%; z-index: 40; } 
.main-visual .caption p { opacity: 0; transform: translateY(50px); transition: 1.4s; } 
.main-visual .caption .t1 { font-size: 70px; font-weight: 500; line-height: 1.3em; margin-bottom: 5px; } 
.main-visual .caption .t2 { font-size: 34px; font-weight: 500; line-height: 1.3em; } 
.main-visual .active .caption p { opacity: 1; transform: translateY(0); } 
.main-visual .active .caption .t1 { transition-delay: .4s; } 
.main-visual .active .caption .t2 { transition-delay: .6s; } 

.section .contain { max-width: 1780px; position: relative; height: 100vh; color: #fff; } 
.sec1 { background: url("../images/main/sec1.jpg") no-repeat 50% 50%/cover; } 
.sec1 .caption-wrap .caption { width: max-content; padding-left: 60px; margin: 0 auto 60px; padding-top: 73px; position: absolute; z-index: 10; left: 50%; top: 50%; transform: translate(-50%, -70%); } 
.sec1 .caption-wrap .caption::before { content: ""; position: absolute; left: 0; top: 0; width: 200px; height: 200px; background: linear-gradient(129deg, rgba(86,139,200,1) 0%, rgba(23,48,79,1) 100%); opacity: .7; border-radius: 50%; z-index: -1; } 
.sec1 .caption-wrap .caption strong { display: block; font-size: 30px; line-height: 1.833em; } 
.sec1 .caption-wrap .caption p { font-weight: 500; font-size: 38px; line-height: 1.447em; } 
.sec1 .caption-wrap .caption .border { position: relative; padding-left: 180px; margin-left: 18px; } 
.sec1 .caption-wrap .caption .border::before { content: ""; position: absolute; top: 50%; transform: translateY(-50%); left: 6px; width: 150px; background-color: #788392; height: 1px; } 
.sec1 .caption-wrap .eng { position: absolute; right: 30px; bottom: 160px; } 

.sec2 .contain, .sec3 .contain { max-width: 100%; padding: 0; } 
.main-list ul { display: flex; } 
.main-list ul li { text-align: center; width: 33.3333%; height: 100vh; display: flex; flex-direction: column; justify-content: center; align-items: center; padding-top: 200px; } 
.main-list ul li a { display: block; } 
.main-list ul a .txt-wrap .tit { font-weight: 500; font-size: 40px; line-height: 1.375em; padding-bottom: 32px; margin-bottom: 40px; position: relative; } 
.main-list ul a .txt-wrap .tit::after { content: ""; position: absolute; bottom: 0; left: 50%; transform: translateX(-50%); width: 48px; height: 4px; background-color: #ffe289; } 
.main-list ul a .txt-wrap p { font-weight: 500; line-height: 1.666em; margin-bottom: 40px; padding: 0 15px; } 
.btn-link { width: 60px; height: 0; margin: 0 auto; border-radius: 50%; opacity: 0; height: 60px; font-size: 0; background: rgba(255,226,137,0.8) url("../images/main/slide_btn.png") 50% 50% no-repeat; transition: .3s; transform: rotate(180deg); } 
.main-list ul li a:hover .btn-link { opacity: .8; } 
.main-list ul .bg { background-position:50% 50%; background-repeat:no-repeat; background-size: cover; } 
.sec2 .main-list ul .bg.li01 { background-image: url("../images/main/sec2-img1.jpg"); } 
.sec2 .main-list ul .bg.li02 { background-image: url("../images/main/sec2-img2.jpg"); } 
.sec2 .main-list ul .bg.li03 { background-image: url("../images/main/sec2-img3.jpg"); } 

.sec3 .main-list ul .bg { background-position: top center; } 
.sec3 .main-list ul .bg.li01 { background-image: url("../images/main/sec3-img1.jpg"); } 
.sec3 .main-list ul .bg.li02 { background-image: url("../images/main/sec3-img2.jpg"); } 
.sec3 .main-list ul .bg.li03 { background-image: url("../images/main/sec3-img3.jpg"); } 
.sec3 .main-list ul .bg.li04 { background-image: url("../images/main/sec3-img4.jpg"); } 

.sec3 .main-list ul li { padding-top: 250px; } 
/* sub page */

.sub-visual { position:relative; height:660px; 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); /* 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-visual .tt-wrap { /* width: 100%; */
 position: absolute; left: 30px; top: 50%; transform: translatey(-50%); z-index: 1; color: #fff; } 
.sub-visual .tt-wrap .tit { font-weight: 500; font-size: 70px; line-height: 1em; margin-bottom: 30px; } 
.sub-visual .tt-wrap .tt { font-size: 22px; line-height: 1em; position: relative; width: fit-content; } 
.sub-visual .tt-wrap .tt::before { content: ""; position: absolute; bottom: 0; left: 0; height: 5px; width: 100%; background-color: rgba(198,232,85,0.5); } 

.sub-visual .container-wrap { position:absolute; bottom: 0; left:0; width:100%; height:80px; background-color: #fff; border-top-right-radius: 75px; } 

#lnb { position: absolute; bottom: 110px; left: 50%; transform: translateX(-50%); max-width: 1460px; width: 100%; padding: 0 30px; } 
.lnb { margin: 0 auto; max-width: 1400px; } 
.lnb .swiper-container { margin-bottom:-1px; padding-left:1px; } 
.lnb ul li { width:auto; } 
.lnb ul li a { display: flex; align-items: center; justify-content: center; height: 45px; padding: 0 24px; color: #fff; font-size: 20px; line-height: 1.2em; transition: none; margin-right: 45px; } 

.lnb ul li.active a { background: #fff; border-radius: 22px; color: #121212; font-weight: 600; } 

.real-cont { padding:70px 0 200px; } 
.real-cont.type2 { padding-bottom: 100px; } 

/* .quick { position: fixed; top: 310px; right: 50px; z-index: 80; } 
.quick a { width: 95px; height: 95px; background-color: #000000; border-radius: 50%; display: flex; flex-direction: column; box-shadow: 6px 3px 11.57px 1.43px rgba(0, 0, 0, 0.4); justify-content: center; align-items: center; } 
.quick a p { color: #ffe289; font-size: 15px; font-weight: 500; line-height: 2em; margin-top: 5px; }  */

.quick { position:fixed; top:180px; right:0; z-index:91; transition:.6s; transform:translateX(100%);} 
.quick a { position:absolute; top:0; left:-45px; width:46px; height:95px; overflow:hidden; border-radius:6px 0 0 6px; background:#000000; color:#ffe289;font-size:17px; line-height:1em; } 
.quick a p {position:absolute; top:50%; left:50%;  transform:translate(-50%,-50%) ;  margin-top:-.04em;}  


/* footer */
#footer { background-color: #000000; padding: 60px 0; letter-spacing: -0.02em; line-height: 2em; } 
#footer .contain { display: flex; justify-content: space-between; max-width: 1780px; } 
.section #footer .contain { height: auto; } 
#footer .foot-info { max-width: 750px; color: #b8b8b8; } 
#footer .foot-info .tit { margin-bottom: 30px; } 
#footer .foot-info address { display: flex; flex-wrap: wrap; margin: 0 -17px; } 
#footer .foot-info address p { padding: 0 17px; font-style: normal; font-size: 15px; } 
#footer .foot-info .copy { margin-top: 15px; font-size: 14px; } 
#footer .foot-info .copy a { color: #454545; } 
#footer .foot-menu { display: flex; justify-content: flex-end; margin: 0 -25px; align-items: center; width: 100%; } 
#footer .foot-menu li { padding: 0 25px; } 
#footer .foot-menu li a { position: relative; padding-left: 21px; color: #b8b8b8; font-size: 15px; } 
#footer .foot-menu li a:before { content: ''; width: 15px; height: 15px; background: url('../images/common/pop_up.png')no-repeat 50% 50%/contain; position: absolute; left: 0; top: 2px; } 
#footer .copy a:hover { text-decoration: underline; } 

.m-br { display: none; } 

.scroll-top { font-size: 15px; font-weight: 600; background-color: #000; color: #fff; line-height: 1.866em; border: 1px solid #888888; width: 100px; height: 40px; position: absolute; right: 30px; top: 0; /* right: 100px; bottom: 200px; */
 z-index: 100; display: flex; align-items: center; justify-content: center; } 
.scroll-top .img { margin-left: 8px; display: inline-block; height: 8px; margin-top: -4px; } 
.fp-viewing-Visual .scroll-top { display:none; } 
.fp-viewing-Vision .scroll-top { display:none; } 
.fp-viewing-About .scroll-top { display:none; } 
.fp-viewing-Services .scroll-top { display:none; } 

/* for mobile */
.only-mobile { display:none; } 

.list-icon { display:block; position:absolute; top:50%; margin-top:-11px; right:100px; width:30px; height:22px; text-align:center; text-indent:-9999em; z-index:99; transition:all 0.5s ease-in-out; } 
.list-icon span { position:absolute; right:0; top:50%; margin-top:-1px; height:2px; width:23px; background:#fff; } 
.list-icon span:before,
.list-icon span:after { content:" "; position:absolute; right:0; width:30px; height:2px; background:#fff; transition-duration:0.3s, 0.3s; transition-delay:0.3s, 0s; } 
.list-icon span:before { top:-11px; transition-property:top, transform; } 
.list-icon span:after { bottom:-11px; transition-property:bottom, transform; } 

.btn-m-menu { display: none; } 
.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:#ffe289 } 
.mobile-navigation .nav-menu>ul>li.active>a:after { transform:translateY(-35%) rotate(-135deg); border-color:#ffe289; } 
.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:#ffe289 } 
.mobile-navigation .nav-menu .submenu>ul>li>a:hover:after { background:#ffe289 } 
.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; } 