@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;} 

#wrapper {overflow:hidden;} 

/* header */
#header {position:relative; width:100%; background:#fff; border-bottom:1px solid #ddd; z-index:100; letter-spacing:-0.02em;} 
#header .contain {position:relative; display:flex; align-items:center; justify-content:space-between; height:var(--header-height); z-index:10; max-width:1780px !important;} 

#header .left {display:flex; align-items:center; gap:var(--space-40);}
#header .left .tel {display:flex;}
#header .left .sns-wrap {display:flex; align-items:center; gap:10px;}
#header .left .sns-wrap a {display:block;}
#header .left .sns-wrap a img {height:var(--space-40);}
#header .left .sns-wrap .tel {font-size:var(--font-size-15); margin-left:13px; font-weight:500; color:#006ec0; letter-spacing:-.02em; line-height:1.4em;}
#header .left .sns-wrap .tel strong {font-size:var(--font-size-16); display:block;}

.sitelogo a {display:block;}

#gnb {text-align:center; flex:1 1 auto; min-width:0; width:1%;} 
#gnb>ul {display:flex; justify-content:flex-end; margin-right:var(--space-120);} 
#gnb>ul>li {position:relative; padding:0 var(--space-45);} 
#gnb>ul>li>a {position:relative; display:flex; align-items:center; flex-direction:column; justify-content:center; height:var(--header-height); color:#242424; font-size:var(--font-size-18); font-weight:500; letter-spacing:-.03em; line-height:1.3em;} 
#gnb>ul>li>a:after {content:""; position:absolute; bottom:-1px; left:50%; width:0; height:4px; background:var(--color-primary); transition:.2s;} 
#gnb>ul>li.active>a:after {width:100%; left:0;} 
#gnb .submenu {display:none; position:absolute; left:50%; width:180px; transform:translateX(-50%); background:#fff; border:1px solid #ddd; border-top:0; text-align:center;} 
#gnb .submenu>ul {padding:var(--space-25) 5px;} 
#gnb .submenu>ul>li>a {display:block; padding:5px 0; color:#454545; line-height:1.33em;} 
#gnb .submenu>ul>li>a:hover {color:var(--color-primary); text-decoration:underline;} 
#gnb .submenu>ul>li.active>a {color:var(--color-primary); text-decoration:underline;} 

/* main */
[data-aos=fade-up] {transform:translate3d(0,100px,0);} 
.section {padding:var(--space-120) 0; letter-spacing:-0.02em;} 
.section .contain {max-width:1460px;} 

.m-head h2 {font-size:var(--font-size-40); color:#242424; line-height:1em;} 
.m-head strong {margin-top:10px; display:block; text-transform:uppercase; font-size:var(--font-size-80); color:var(--color-primary); line-height:1em;} 
.m-head p {margin-top:var(--space-20);} 

.btn-link {display:flex; align-items:center; justify-content:space-between; width:clamp(120px, calc(140 / var(--inner)* 100vw), 140px); height:clamp(30px, calc(40 / var(--inner)* 100vw), 40px); border-radius:50vh; padding:0 18px; color:#fff; font-size:var(--font-size-14); line-height:1em; border:1px solid #fff; transition:.3s;} 
.btn-link span {width:4px; height:9px; background:url(/images/main/arrow-wht.png) no-repeat center/contain} 
.btn-link:hover {background-color:var(--color-primary); border-color:var(--color-primary);} 

.btn-link.type2 {margin-top:var(--space-80); color:#454545; border-color:#ddd; cursor:pointer;} 
.btn-link.type2 span {background-image:url(/images/main/arrow-grey.png);} 
.btn-link.type2:hover {background-color:var(--color-primary); border-color:var(--color-primary); color:#fff;} 
.btn-link.type2:hover span {background-image:url(/images/main/arrow-wht.png);} 

/* .sec1 {padding:0;} 
.link-list {height:calc(100vh - var(--header-height)); display:grid; grid-template-columns:repeat(3, 1fr); gap:0 var(--space-20);} 
.link-list a {background:url(/images/main/mv-01.jpg) no-repeat center/cover;} 
.link-list a.box2 {background-image:url(/images/main/mv-02.jpg);} 
.link-list a.box3 {background-image:url(/images/main/mv-03.jpg);} 
.link-list .txt-wrap {display:flex; flex-direction:column; justify-content:center; align-items:center; height:100%; color:#fff; text-align:center; padding:0 10px;} 
.link-list h3 {font-size:var(--font-size-60); letter-spacing:-0.02em; line-height:1.33em;} 
.link-list .txt-wrap p {margin-top:10px; font-size:var(--font-size-16); line-height:1.63em;} 
.link-list .btn-link {margin:var(--space-60) auto 0;} */

.main-slide {padding:0;} 
.main-slide .slide-wrap {height:calc(100vh - var(--header-height)); display:flex; gap:0 var(--space-20);} 
.main-slide .slide-wrap a {display:block; width:33.3333%;} 
.main-slide .slide-wrap a .swiper {height:100%;} 
.main-slide .swiper-slide {position:relative;} 
.main-slide .swiper-slide img {width:100%; height:100%; object-fit:cover;} 
.main-slide .txt-wrap {position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); z-index:10; display:flex; flex-direction:column; justify-content:center; align-items:center; height:100%; color:#fff; text-align:center; padding:0 10px;} 
.main-slide h3 {font-size:var(--font-size-60); letter-spacing:-0.02em; line-height:1.33em;} 
.main-slide .txt-wrap p {margin-top:10px; font-size:var(--font-size-16); line-height:1.63em;} 
.main-slide .btn-link {margin:var(--space-60) auto 0;} 

.sec2 .flex-wrap .m-head {width:41.428%; padding-right:var(--space-30);} 
.sec2 .flex-wrap .txt {flex:1 1 auto; width:1%; min-width:0;} 
.sec2 .txt p {margin-bottom:var(--space-30); font-size:var(--font-size-18); line-height:1.44em;} 

.sec3 {background-color:#f9f9f9;} 
.sec3 .m-head {display:flex; flex-wrap:wrap; justify-content:space-between; align-items:flex-end; gap:16px; margin-bottom:var(--space-50);}
.sec3 .btn-link.type2 {margin-top:0;}

.bizSwiper .swiper-slide .list {display:flex; gap:0 20px; width:100%; height:100%;} 
.bizSwiper .swiper-slide a {display:block; position:relative; width:100%;} 
.bizSwiper .swiper-slide a:hover .thumb img {transform:scale(1.05)}
.bizSwiper .swiper-slide p {font-size:var(--font-size-14); line-height:1.5em; padding-top:10px;}
.bizSwiper .thumb {position:relative; padding-bottom:100%; overflow:hidden;} 
.bizSwiper .thumb img {position:absolute; inset:0; transition:.4s ease-in-out; width:100%; height:100%; object-fit:cover;} 
.bizSwiper a .tit {position:absolute; bottom:var(--space-40); left:50%; transform:translateX(-50%); display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-weight:500; font-size:var(--font-size-20); line-height:normal; color:#fff; text-align:center;} 
.bizSwiper .swiper-button-next, 
.bizSwiper .swiper-button-prev {width:40px; height:40px; border-radius:100%; border:1px solid #ddd; background-color:#fff; color:#747474; transition:.3s;} 
.bizSwiper .swiper-button-next:hover, 
.bizSwiper .swiper-button-prev:hover {background-color:var(--color-primary); border-color:var(--color-primary); color:#fff;} 
.bizSwiper .swiper-button-next {right:0; left:auto; margin-top:-40px;} 
.bizSwiper .swiper-button-prev {left:0; right:auto; margin-top:-40px;} 
.bizSwiper .swiper-button-next:after, 
.bizSwiper .swiper-button-prev:after {font-size:var(--font-size-19);} 
.bizSwiper .swiper-horizontal>.swiper-scrollbar, 
.bizSwiper .swiper-scrollbar.swiper-scrollbar-horizontal {position:absolute; left:50%; transform:translateX(-50%); bottom:auto; top:auto; z-index:50; height:2px; width:calc(100% - 40px); opacity:1 !important; margin-top:40px;} 
.biz-slide .swiper-scrollbar-drag {background-color:var(--color-primary);} 

/*.sec3 {background-color:#f9f9f9;} 
.sec3 .flex-wrap {margin-left:calc(50% - 700px);} 
.sec3 .flex-wrap .m-head {width:400px;} 
.biz-slide {position:relative; flex:1 1 auto; width:1%; min-width:0;} 
.biz-slide .slider {overflow:hidden; margin:0 -20px;} 
.biz-slide .swiper-wrapper {overflow:visible;} 
.bizSwiper {position:relative; width:100%; max-width:1040px; margin:0 !important; overflow:visible; padding:0 20px 42px;} 
.bizSwiper::after {content:""; position:absolute; display:inline-block; width:100%; height:89%; background-color:#f00; top:0; right:-100%; z-index:1; opacity:.5; background:#fff;} 
.bizSwiper .swiper-slide .list {display:flex; gap:0 20px; width:100%; height:100%;} 
.bizSwiper .swiper-slide a {display:block; position:relative; width:100%;} 
.bizSwiper .swiper-slide p {font-size:var(--font-size-14); line-height:1.5em; padding-top:10px;}
.bizSwiper .thumb {position:relative; padding-bottom:100%; overflow:hidden;} 
.bizSwiper .thumb img {position:absolute; top:50%; left:0; transition:.4s ease-in-out; 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;} 
.bizSwiper a .tit {position:absolute; bottom:var(--space-40); left:50%; transform:translateX(-50%); display:block; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; font-weight:500; font-size:var(--font-size-20); line-height:normal; color:#fff; text-align:center;} 
.bizSwiper .swiper-button-next, 
.bizSwiper .swiper-button-prev {width:40px; height:40px; border-radius:100%; border:1px solid #ddd; background-color:#fff; color:#747474; transition:.3s;} 
.bizSwiper .swiper-button-next:hover, 
.bizSwiper .swiper-button-prev:hover {background-color:var(--color-primary); border-color:var(--color-primary); color:#fff;} 
.bizSwiper .swiper-button-next {right:0; left:auto; margin-top:-40px;} 
.bizSwiper .swiper-button-prev {left:0; right:auto; margin-top:-40px;} 
.bizSwiper .swiper-button-next:after, 
.bizSwiper .swiper-button-prev:after {font-size:var(--font-size-19);} 
.bizSwiper .swiper-horizontal>.swiper-scrollbar, 
.bizSwiper .swiper-scrollbar.swiper-scrollbar-horizontal {position:absolute; left:50%; transform:translateX(-50%); bottom:auto; top:auto; z-index:50; height:2px; width:calc(100% - 40px); opacity:1 !important; margin-top:40px;} 
.biz-slide .swiper-scrollbar-drag {background-color:var(--color-primary);} */

/* sub page */
.contain {max-width:1780px; margin:0 auto; padding-left:var(--container-space); padding-right:var(--container-space);} 
#contArea {max-width:1780px; 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,
#sub .contain {max-width:1260px;} 
#sub .contain.type2 {max-width:1780px;} 

.sub-title {padding:var(--space-100) 0 var(--space-60); text-align:center;} 
.sub-title h1 {font-size:var(--font-size-40); line-height:1em; color:var(--color-dark); letter-spacing:-0.03em;} 

.real-cont {padding:0 0 var(--space-200);} 

.sub-visual {position:relative; height:400px; 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; color:#fff; text-align:center; margin-top:-30px;} 
.sub-visual .tt-wrap .tit {font-size:var(--font-size-60); line-height:1.33em; font-weight:700;} 
.sub-visual .tt-wrap .tx {line-height:1.63em; letter-spacing:0.3em;} 

.path-wrap {position:relative;; z-index:50; background-color:#242424; position:sticky; top:0; z-index:10;} 
.path-wrap .wrap {max-width:1200px; margin:0 auto;} 
.path-wrap .wrap .bar {position:relative;} 
.path-wrap .wrap .bar::after {content:""; position:absolute; top:50%; right:0; transform:translateY(-50%); width:1px; height:12px; background-color:rgba(255,255,255,0.3);} 
.path-wrap .inner {display:flex;} 
.path-wrap .home a {display:block; width:70px; height:var(--lnb-height); background:url("../images/common/home.png") 50% 50% no-repeat; background-size:16px; text-indent:-999em; overflow:hidden;} 
.path-wrap .part {position:relative; min-width:210px;} 
.path-wrap .part > a {display:flex; align-items:center; position:relative; height:var(--lnb-height); color:#fff; font-size:var(--font-size-18); font-weight:600; line-height:1.3em; padding:0 60px 0 24px;} 
.path-wrap .part > a:after {content:""; position:absolute; top:50%; right:23px; transform:translateY(-50%); width:12px; height:8px; background:url(../images/common/lng-arrow.png) 50% 50% no-repeat;} 
.path-wrap .part ul {display:none; position:absolute; left:-1px; right:-1px; background:#fff; border:1px solid #ddd; z-index:50;} 
.path-wrap .part ul li {color:#505050; line-height:1.3em; border-bottom:1px solid #ddd;} 
.path-wrap .part ul li:last-child {border-bottom:0;} 
.path-wrap .part ul li a {display:block; padding:17px 24px;} 
.path-wrap .part ul li a:hover,
.path-wrap .part ul li.active a {color:#242424; background:#f8f8f8;} 

.lnb-wrap {flex:1 1 auto; min-width:0; width:1%;} 
.lnb-wrap .contain {padding:0 var(--space-25);} 
.lnb ul {gap:0 var(--space-40);} 
.lnb ul li {width:auto; text-align:center;} 
.lnb ul li a {position:relative; display:flex; align-items:center; justify-content:center; white-space:nowrap; width:100%; height:var(--lnb-height); color:#b1b1b1; font-size:var(--font-size-18); line-height:1.2em;} 
.lnb ul li a:hover {color:#fff;} 
.lnb ul li.active a {color:#fff; font-weight:600;} 

/* .scroll-top {position:fixed; opacity:0; bottom:var(--container-space); right:var(--container-space); text-align:right; pointer-events:none;} 
.scroll-top img {width:var(--space-70); height:var(--space-70);} 
 */
.scroll-top {opacity:0; pointer-events:none;}
.scroll-top.active {opacity:1; pointer-events:auto;}

.quick {position:fixed; bottom:var(--space-50); right:var(--space-100); z-index:80; display:flex; flex-direction:column; gap:var(--space-20) 0;} 
.quick a {display:block;} 
.quick a img {display:block; transition:.2s; width:clamp(40px, calc( 60 / var(--inner) * 100vw ), 60px ); height:clamp(40px, calc( 60 / var(--inner) * 100vw ), 60px );} 
.quick a:hover img {transform:translateY(-5px);} 
.quick .go-top {text-align:center; display:block;}

/* footer */
#footer {background-color:#242424; letter-spacing:-0.04em;} 
#footer .contain {max-width:1460px !important;} 
#footer .foot-menu {padding:var(--space-30) 0; border-bottom:1px solid rgba(255,255,255,0.3);} 
#footer .foot-menu .contain {display:flex; gap:var(--space-30);} 
#footer .foot-menu li a {color:#ababab; font-size:var(--font-size-14); font-weight:500; line-height:1em;} 
#footer .flex-wrap {padding:var(--space-75) 0;} 
#footer .foot-logo {margin-right:var(--space-80);} 
#footer .foot-info {min-width:0; width:1%; flex:1 1 auto;} 
#footer .foot-info address {font-style:normal; display:flex; flex-wrap:wrap; gap:0 var(--space-30); max-width:500px;} 
#footer .foot-info address p {font-weight:500; font-size:var(--font-size-15); color:#878787; line-height:1.87em;} 
#footer .foot-info .copy {font-weight:500; font-size:var(--font-size-13); line-height:2em; color:#666666; margin-top:10px;} 

/* for mobile */
.only-mobile {display:none;} 
.btn-m-menu {position:absolute; top:50%; margin-top:-11px; right:30px; width:30px; height:22px; 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:23px; 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 {display:block; margin-bottom:20px; padding-left:15px;} 
.mobile-navigation .home a {display:block;} 
.mobile-navigation .home img {height:30px;} 
.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(--color-primary)} 
.mobile-navigation .nav-menu>ul>li.active>a:after {transform:translateY(-35%) rotate(-135deg); border-color:var(--color-primary);} 
.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(--color-primary)} 
.mobile-navigation .nav-menu .submenu>ul>li>a:hover:after {background:var(--color-primary)} 
.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;} 