@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} 

.only-desktop-tablet {display:block;} 
.only-desktop {display:block;} 
.only-tablet {display:none;} 
.only-mobile {display:none;} 


/* header */
#header {position:relative; position:fixed; top:0; left:0; width:100%; transition:.2s; background:transparent; z-index:100;} 
#header .contain {height:100px; display:flex; justify-content:center; z-index:2;} 

#sub #header {border-bottom: 1px solid rgba(221,221,221,0.3);} 

#header.header-white {background: #fff;} 
#header.header-white .sitelogo a {background-image: url("../images/common/logo-on.png");} 
#header.header-white #gnb>ul>li>a {color: #242424;} 
#header.header-white .btn-all-menu span, #header.header-white .btn-all-menu span:before, #header.header-white .btn-all-menu span:after {background: #242424;} 
#header.header-white .btn-m-menu span, #header.header-white .btn-m-menu span:before, #header.header-white .btn-m-menu span:after {background: #242424;} 

.sitelogo {position:absolute; top:50%; left:var(--container-space2); transform: translateY(-50%);} 
.sitelogo a {display:block; width:95px; height:64px; background:url("../images/common/logo.png") no-repeat center/contain; overflow:hidden; font-size:0; line-height:0; text-indent:-9999em;} 
#gnb > ul {display:flex; text-align:center;} 
#gnb > ul > li {position:relative; padding:0 70px;} 
#gnb > ul > li > a {position:relative; display:flex; align-items:center; justify-content:center; height:100px; color:#fff; font-size:var(--font-size-20); font-weight:600; line-height:1.3em; letter-spacing:-.03em;} 
#gnb > ul > li.active > a {color: #1b4fa3 !important;} 
#gnb .submenu {position:absolute; z-index:50; left:0; width:100%; height:0; overflow:hidden;} 
#gnb .submenu ul {padding:20px 0;} 
#gnb .submenu ul li {padding:15px;} 
#gnb .submenu ul li a {display:block; font-size:17px; color:#fff; line-height:1.3em;} 
#gnb .submenu ul li a:hover {text-decoration: underline;} 

.submenu-bg {display:none; position:absolute; left:0; width:100%; background-color: #1b4fa3;} 

#main.fp-viewing-1 #header,
#main.fp-viewing-2 #header,
#main.fp-viewing-3 #header {background:#fff; box-shadow:0 7px 10px rgba(0,0,0,0.05)} 
#main.fp-viewing-1 #header .sitelogo a,
#main.fp-viewing-2 #header .sitelogo a,
#main.fp-viewing-3 #header .sitelogo a {background-image:url("../images/common/logo-on.png")} 
#main.fp-viewing-1 #header #gnb > ul > li > a,
#main.fp-viewing-2 #header #gnb > ul > li > a,
#main.fp-viewing-3 #header #gnb > ul > li > a {color:#242424;} 
#main.fp-viewing-1 #header .btn-all-menu span,
#main.fp-viewing-1 #header .btn-all-menu span:before,
#main.fp-viewing-1 #header .btn-all-menu span:after,
#main.fp-viewing-2 #header .btn-all-menu span,
#main.fp-viewing-2 #header .btn-all-menu span:before,
#main.fp-viewing-2 #header .btn-all-menu span:after,
#main.fp-viewing-3 #header .btn-all-menu span,
#main.fp-viewing-3 #header .btn-all-menu span:before,
#main.fp-viewing-3 #header .btn-all-menu span:after,

#main.fp-viewing-1 #header .btn-m-menu span,
#main.fp-viewing-1 #header .btn-m-menu span:before,
#main.fp-viewing-1 #header .btn-m-menu span:after,
#main.fp-viewing-2 #header .btn-m-menu span,
#main.fp-viewing-2 #header .btn-m-menu span:before,
#main.fp-viewing-2 #header .btn-m-menu span:after,
#main.fp-viewing-3 #header .btn-m-menu span,
#main.fp-viewing-3 #header .btn-m-menu span:before,
#main.fp-viewing-3 #header .btn-m-menu span:after {background:#242424;} 

.header-fixed #header {background:#fff; box-shadow:0 7px 10px rgba(0,0,0,0.05)} 
.header-fixed #header .sitelogo a {background-image:url("../images/common/logo.png")} 
.header-fixed #header .btn-all-menu span,
.header-fixed #header .btn-all-menu span:before,
.header-fixed #header .btn-all-menu span:after {background:#242424;} 

.btn-all-menu {position:absolute; top:50%; right:var(--container-space2); margin-top: -15px; width:30px; height: 30px; text-indent:-9999em; line-height:0; font-size:0;} 
.btn-all-menu span {position:absolute; left:8px; right:0; top:50%; height:2px; margin-top: 0px; background:#fff;} 
.btn-all-menu span:before,
.btn-all-menu span:after {content:" "; position:absolute; left:-8px; right:0; height:2px; background:#fff;} 
.btn-all-menu span:before {top: -11px;} 
.btn-all-menu span:after {bottom: -11px;} 


/* for mobile */
.btn-m-menu {display:none; position:absolute; top:50%; right:var(--container-space); margin-top:-15px; width:30px; height:30px; text-indent:-9999em; line-height:0; font-size:0;} 
.btn-m-menu span {position:absolute; left:8px; right:0; top:50%; height:2px; margin-top:-1px; background:#fff;} 
.btn-m-menu span:before,
.btn-m-menu span:after {content:" "; position:absolute; left:-8px; right:0; height:2px; background:#fff;} 
.btn-m-menu span:before {top:-11px;} 
.btn-m-menu span:after {bottom:-11px;} 

.mobile-navigation {position:fixed; top:0; right:0; width:300px; height:100%; overflow:auto; transition:.2s linear; -ms-transform:translateX(100%); transform:translateX(100%); background:#fff; z-index:102;} 
.mobile-navigation .home {height:80px; padding:0 20px; display:flex; align-items:center;} 
.mobile-navigation .home a {display:block;} 
.mobile-navigation .home img {height:50px;} 
.mobile-navigation .nav-menu>ul {border-top:1px solid #dfdfdf;} 
.mobile-navigation .nav-menu>ul>li {border-bottom:1px solid #dfdfdf;} 
.mobile-navigation .nav-menu>ul>li>a {position:relative; padding:13px 40px 13px 20px; display:block; color:#333; font-size:17px; font-weight:600; line-height:1.5em;} 
.mobile-navigation .nav-menu>ul>li>a:after {content:""; position:absolute; top:50%; right:20px; transform:translateY(-75%) rotate(45deg); width:12px; height:12px; border-right:2px solid #242424; border-bottom:2px solid #242424;} 
.mobile-navigation .nav-menu>ul>li.active>a {color:#34509f;} 
.mobile-navigation .nav-menu>ul>li.active>a:after {transform:translateY(-35%) rotate(-135deg);} 
.mobile-navigation .nav-menu .submenu {display:none; padding:10px 20px; background:#34509f; color:#fff; font-size:16px; line-height:1.5em;} 
.mobile-navigation .nav-menu .submenu > ul > li > a {display:block; padding:6px 0;} 
.mobile-navigation .close {position:absolute; top:16px; right:10px; width:24px; height:24px; text-indent:-9999em; overflow:hidden;} 
.mobile-navigation .close:before,
.mobile-navigation .close:after {content:" "; position:absolute; top:11px; left:0; width:100%; height:2px; background:#242424; border-radius:3px;} 
.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:101;} 

html.menu-opened {overflow:hidden;} 
html.menu-opened .mobile-navigation {-ms-transform:translateX(0); transform:translateX(0);} 
html.menu-opened .mobile-overlay {display:block;} 


/* main */
.main-visual {position:relative; text-align:center;} 
.main-visual .item {position:relative; width:100%; height:100vh; overflow:hidden;} 
.main-visual .item > .img {position:absolute; top:0; left:0; width:100%; height:100%; overflow:hidden; transition:4.5s; transform:scale(1.06);} 
.main-visual .item.slick-active > .img {transform:scale(1);} 
.main-visual .item > .img > 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 .caption {position:absolute; top:50%; transform: translateY(-50%); width:100%; display:flex; justify-content:center; z-index:30;} 
.main-visual .caption .inner {color: #fff;} 
.main-visual .caption .inner .img {margin-bottom:20px;} 
.main-visual .caption .inner .img img {margin:0 auto;} 
.main-visual .caption h2 {margin-bottom:20px; font-size:var(--font-size-60); font-weight:700; line-height:1.3em;} 
.main-visual .caption p {font-size:var(--font-size-24); font-weight:500; line-height:1.25em;} 
.main-visual .slick-arrow {position:absolute; top:50%; width:30px; height:57px; background-color:transparent; background-position:50% 50%; background-repeat:no-repeat; background-size: contain; border:0; overflow:hidden; text-indent:-9999em; z-index:50; opacity:0.5;} 
.main-visual .slick-prev {left:100px; background-image:url("../images/main/slide-prev.png");} 
.main-visual .slick-next {right:100px; background-image:url("../images/main/slide-next.png");} 
.main-visual .slick-prev:hover,
.main-visual .slick-next:hover {opacity:1;} 
.main-visual .scroll {position:absolute; bottom:0; left:50%; transform: translateX(-50%); margin-left: -30px; text-align:center; z-index:50; animation:move_up_down 2s linear infinite;} 
@keyframes move_up_down {0%,100% {transform:translateY(0);} 
 50% {transform:translateY(15px);} 
}

.btn-contact {display:block; position: absolute; right:var(--container-space); bottom:40px; z-index:10; cursor:pointer;} 


/* section */
.section-inner {padding:150px 0 50px;} 

.m-head {margin-bottom:var(--margin-70); text-align: center;} 
.m-head h2 {margin-bottom:20px; color:#242424; font-size:52px; font-weight:700; line-height:1.5em;} 
.m-head p {font-size:18px; line-height:1.4em;} 


.main-business .m-head {position:relative;} 
.main-business .m-head::before {content: ''; position: absolute; top: -50px; left:140px; width: 141px; height: 141px; background: url(../images/main/bg-logo.png) no-repeat 50% 50%/contain; z-index:-1;} 

.main-business .list ul {display:flex; margin:0 -10px;} 
.main-business .list ul li {padding:0 10px; flex:1 0 auto; transition:.3s;} 
.main-business .list a {cursor:pointer; display:flex; align-items:flex-end; justify-content: center; padding:var(--padding-40); height:480px; position: relative; background-position:32% 50%; background-repeat:no-repeat; background-size:cover;} 
.main-business .list ul li:nth-child(1) a {background-image:url("../images/main/business-01.jpg"); border-top-left-radius: var(--border-radius-40);} 
.main-business .list ul li:nth-child(2) a {background-image:url("../images/main/business-02.jpg");} 
.main-business .list ul li:nth-child(3) a {background-image:url("../images/main/business-03.jpg");} 
.main-business .list ul li:nth-child(4) a {background-image:url("../images/main/business-04.jpg");} 
.main-business .list ul li:nth-child(5) a {background-image:url("../images/main/business-05.jpg"); border-bottom-right-radius: var(--border-radius-40);} 
.main-business .list .txt {display:flex; flex-direction: column; justify-content:end; align-items:center; height: 100%; text-align: center; color:#fff; z-index:10; transition: .3s;} 
.main-business .list .txt h3 {font-size:var(--font-size-24); line-height:1.4em; margin-bottom:10px;} 
.main-business .list .txt p {display:none; transition:.3s; font-size:var(--font-size-18); line-height:1.4em;} 
.main-business .list .inner {padding:var(--padding-50); transition:.3s; background:rgba(0,0,0,0.5); position:absolute; left:0; top:0; width:100%; height:100%;} 
.main-business .list ul li:first-child .inner {border-top-left-radius: var(--border-radius-40);} 
.main-business .list ul li:last-child .inner {border-bottom-right-radius: var(--border-radius-40);} 
.main-business .list .inner .ico {position: absolute; top:50%; left:50%; transform: translate(-50%, -50%);} 
.main-business .list ul li.active {width: 29.5%; flex:0 0 auto;} 
.main-business .list ul li.active a {box-shadow:3px 0 10px rgba(0,0,0,0.3);} 
.main-business .list ul li.active a .inner {background: rgba(2,22,79,0.6);} 
.main-business .list ul li.active a .txt h3 {font-size: var(--font-size-30); margin-bottom: 5px;} 
.main-business .list ul li.active a .txt p {display:block;} 

.main-company {background-color: #eaedf5;} 
.main-company .icon-list {display: flex; margin-left: -40px; padding-bottom:var(--padding-100);} 
.main-company .icon-list .box {display:flex; flex-direction: column; justify-content: center; align-items: center; width: calc(16.6666% - 40px); margin-left: 40px; background: #fff; text-align: center; padding: 30px 0; border-radius: var(--border-radius-30); box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.1);} 
.main-company .icon-list .box .icon {margin: 0 auto 15px auto;} 
.main-company .icon-list .box .tt {font-size: var(--font-size-18); font-weight: 600; color: #242424;} 
.main-company .icon-list .box .tx {font-size: var(--font-size-15); font-weight: 500; line-height: 2em; color: #898989;} 

.btn-company {display: flex; justify-content: space-between; align-items: center; width: fit-content; margin: 0 auto; padding: 13px 20px; background-color: #34509f; border-radius: 5px;} 
.btn-company p {position:relative; padding-right: 75px; font-weight: 600; line-height:1.5em; color: #fff;} 
.btn-company p::after {content: ''; position: absolute; top: 50%; transform: translateY(-50%); right:0; width: 20px; height: 13px; background: url(../images/main/arrow-more.png) no-repeat 50% 50%/contain;} 


/* sub page */
.contain {max-width:1540px; margin:0 auto; padding-left:var(--container-space); padding-right:var(--container-space);} 

#sub .contain {max-width: 1340px;} 
#contArea {max-width:1540px; padding-left:var(--container-space); padding-right:var(--container-space); margin:0 auto;} 
#contArea.wide {max-width:100% !important; padding-left:0; padding-right:0;} 
#sub #contArea {max-width:1340px;} 
 
.sub-title {width: fit-content; margin: var(--margin-110) auto var(--margin-80);} 
.sub-title.type2 {margin:var(--margin-80) auto;} 

.sub-title h1 {position:relative; font-weight:600; font-size: var(--font-size-35); color: #242424; text-align:center; padding-top:var(--padding-40); line-height:1em;} 
.sub-title h1::after {content: ""; position: absolute; top:0; left:50%; transform: translateX(-50%); width: 20px; height: 20px; background: url(../images/sub/bullet.png) no-repeat center/contain;} 


.real-cont {padding : 0 0 var(--padding-100);} 

.sub-visual {position:relative; height:440px; 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: 0; top: 50%; transform: translateY(-50%); z-index: 1; padding-top:var(--padding-60); color: #fff; text-align: center;} 
.sub-visual .tt-wrap .tit {font-size: var(--font-size-50); line-height: 1.2em; font-weight: 700;} 

/* lnb */
.lnb-wrap {position:relative;} 
.lnb {margin:0 auto; max-width:1200px; position: absolute; top:-30px; left:50%; transform: translateX(-50%); width:100%; z-index:10;} 
.lnb .swiper {box-shadow: 0px 5px 10px 0px rgba(0, 0, 0, 0.15); border-radius: 50vh; background: #fff;} 
.lnb ul {display:flex;} 
.lnb ul li {position:relative; flex:1; text-align:center;} 
.lnb ul li a {position: relative; display:flex; flex-direction:column; justify-content:center; align-items:center; width:100%; height:var(--lnb-height); font-weight:500; color: #242424; font-size: 18px;} 
.lnb ul li a::after {content: ""; position: absolute; top:50%; right:0; transform: translateY(-50%); width:1px; height:20px; background-color: #ddd;} 
.lnb ul li:first-child a {border-top-left-radius: var(--border-radius-30); border-bottom-left-radius: var(--border-radius-30);} 
.lnb ul li:last-child a {border-top-right-radius: var(--border-radius-30); border-bottom-right-radius: var(--border-radius-30);} 
.lnb ul li.active a {color: #fff; background: var(--color-third); margin-left: -2px; border-radius: 50vh; width: calc(100% + 5px);} 
.lnb ul li.active a::after {display:none;} 

/* footer */
#footer {background-color: #282e3d; padding: 34px 0; font-size: 15px; letter-spacing: -0.02em;} 
#footer .contain {display: flex; justify-content: space-between;} 
#footer .foot-info {max-width: 900px;} 
#footer .foot-info .tit {color: #ffffff; font-size: 18px; line-height: 1.666em; font-weight: 600;} 
#footer .foot-info address {font-style: normal; display: flex; flex-wrap: wrap; margin: 0 -15px;} 
#footer .foot-info address p {line-height: 2em; padding: 0 15px; color: #d9d9d9; font-weight:300;} 
#footer .foot-info .copy {color: #d9d9d9; line-height: 1.5em; font-weight:300;} 
#footer .foot-info .copy a {color: #a5a5a5; font-size: var(--font-size-14);} 
#footer .foot-menu {display: flex; justify-content: flex-end; margin: 0 -25px;} 
#footer .foot-menu li {padding: 0 25px;} 
#footer .foot-menu li a {position: relative; padding-left: 21px; color: #b8b8b8; line-height: 1.571em;} 
#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;} 
