@charset "utf-8";

/*
* File       : layout.css
* Author     : B-WORKER
* Dependency : css/reset.css
*      
 * SUMMARY:
 * 레이아웃 관련만 선언합니다.
 *
 * 01) GLOBAL BODY
 * 02) HEADER 
 * 03) FOOTER
 * 04) SCROLL TOP
 * 05) 404        
*/

/* **************************************** *
 * GLOBAL
 * **************************************** */
body{overflow-x:hidden;overflow-y:overlay;}
body.scroll-hide{overflow-y:hidden;}
body.scroll-hide #header{position: fixed;}
body::after{content:"";position: fixed;opacity:1;top:0;left:0;z-index:9999;width:100%;height:100%;background:#fff;transition: all 0.7s ease;}
body:has(#main)::after{display: none;}
body.motion-on::after{opacity:0; visibility:hidden;}

body.fixed{overflow:hidden; top:0; right:0; bottom:0; left:0; width:100%; height:100%;}

body[data-bg="dark"]::after{background:#111;}

/* scroll set */
::selection{background: #111f50;color:#fff;}

/* 스크롤바 커스텀 */
*::-webkit-scrollbar{width:16rem;background-color:#ebebeb;}
*::-webkit-scrollbar-thumb:hover{background-color: #a7a7a7;}
::-webkit-scrollbar-thumb{background-color:#C1C1C1;}

@media (max-width:860px){
	*::-webkit-scrollbar{display:none !important; width:0; height:0;}
}

/* **************************************** *
 * HEADER
 * **************************************** */
#header{position: fixed;z-index:51;width:100%;padding: 18rem 0;transition: background-color .4s, padding .4s, border-bottom-color .3s, transform .4s;/* transform:translateY(-100rem); */background-color: transparent;border-bottom: 1px solid transparent;}
#header.hide{transform: translateY(-100%) !important;}
#header h1{font-size:0;}
#header:has(#site-map.active){position:fixed;}


.motion-on #header{/* transform:translateY(0rem); */}

.header-inner{display:flex;justify-content:space-between;align-items:center; /* margin: 0 80rem; */ max-width: 1760rem; width: 100%; margin: 0 auto;} 

#logo{position:relative; z-index:81;}
#logo a{display:block;width: 99rem;height: 44rem;background-size: 100%;background-position:50% 50%;background-repeat:no-repeat;background-image:url(../img/layout/logo_w.svg);}
#logo img{height:100%}

#header.on{background-color: #fff;padding:20rem 0;border-bottom-color: #eee;}

/* global btn */
.lang-menu > ul{gap:23rem; display: flex; position: relative; margin-right: 16rem;}
.lang-menu > ul::before{content: "";width: 1px;height: 12rem;background-color: var(--op-w50);position: absolute;/* left: 54%; */left: 52%;transform: translateX(-50%) rotate(20deg);top: 8rem;}
.lang-menu a{opacity: 0.5 !important;color:#fff;font-weight: 600; font-size: 14rem;}
.lang-menu li.on a{opacity: 1 !important;}
.lang-menu .select-link{width: 60rem;}
.lang-menu img{height:24rem;}
.lang-menu i{/* display:none; */color: var(--w);}
.lang-menu .select-link__btn::after{/*display:none;*/background-image: url(../img/board/arrow-select_w.svg);position: relative;background-size: 12rem;}
.lang-menu .select-link__btn{display:flex; justify-content:center;}
.lang-menu .select-link > ul{}
.lang-menu .select-link > ul a{padding:3rem 15rem; font-size:13rem; text-align:center;}
.lnag-menu__icon{width: 35rem;height: 35rem;background-position:50% 50%;background-image:url(../img/common/ic-lang_w.svg);background-repeat:no-repeat;}

.header-right-wrap{align-items: center; position: relative; z-index: 110;}

.header-contact{border-radius: 90rem;background-color:var(--op-w10); margin-right: 6rem; width: 132rem;height: 44rem;padding: 12rem 16rem;display: flex;align-items: center;justify-content: space-between;}
.header-contact span{color: var(--w);font-size: 14rem;font-weight: 600;}
.header-contact i{min-width: 4rem;height: 4rem;display: block;border-radius: 20rem;background-color: var(--c-01);}

#header:is(.color-on, .on) .lang-menu a{color:#aaa;}
#header:is(.color-on, .on) .lang-menu li.on a{color:var(--c-01);}
#header:is(.color-on, .on) .lnag-menu__icon{background-image:url(../img/common/ic-lang.svg);}
#header:is(.color-on, .on) .lang-menu i{color: var(--b-01);}
#header:is(.color-on, .on) .lang-menu .select-link__btn::after{background-image: url(../img/board/arrow-select.svg);}
#header:is(.color-on, .on) .lang-menu > ul::before{background-color: var(--op-b10);}
#header:is(.color-on, .on) .header-contact{background-color: var(--bg-surface);}
#header:is(.color-on, .on) .header-contact span{color: var(--c-primary);}
#header:is(.color-on, .on) .gnb-full-btn{background-color: var(--bg-surface);}

/* basic gnb */
.gnb-container{display:inline-block; margin-left: 100rem;}
.gnb-full-cover{position:absolute; opacity:0; visibility:hidden; top:0; left:0; z-index:-1; width:100%; height:100%; background:#fff; box-shadow:15rem 20rem 29rem 0rem rgba(0, 0, 0, 0.23); transition:var(--trans-01);}

#gnb{text-align:center;position: relative; display: flex; align-items: center; gap: 79rem; transition: var(--trans-01);}
#gnb .gnb-item{position:relative;transition:var(--trans-01);}
#gnb .gnb-item:last-child:after{background:none;}
#gnb .gnb-item > a{display:inline-block; padding:25rem 0; font-weight:500; color:#fff; font-size:18rem; transition:var(--trans-01);}
#gnb .gnb-item .sub-menu > li.on > a{/* color: var(--c-01) !important; */font-weight: 700 !important;}
#gnb .gnb-item > a.on{color: var(--c-02) !important;}
.color-on #gnb .gnb-item > a.on {color: var(--c-01) !important;}

.sub-menu-depth{display: none;} /* 3차메뉴 숨김 */

/* full gnb */
#gnb.gnb-full .gnb-item > a{position:relative;}
#gnb.gnb-full .gnb-item .sub-menu{top:110rem; padding:0; background:none; border:0; box-shadow:none; transition:none;}
#gnb.gnb-full .gnb-item .sub-menu > li > a{padding:8rem 0rem; background:none; word-break: keep-all; border:0; color:var(--c-primary);  white-space: nowrap; text-align:center; transition: var(--trans-01);}
#gnb.gnb-full .gnb-item.active .sub-menu{transition:all 0.4s ease-out; transition-delay:0.2s;}
#gnb.gnb-full .gnb-item > a::after{content:""; position:absolute; bottom:-13rem; left:0; width:100%; height:3px; background:var(--c-01); transition:var(--trans-01); transform:scaleX(0);}
#gnb.gnb-full .gnb-item > a{position:static;}
#gnb.gnb-full .gnb-item:hover > a::after{transform:scaleX(1);}
#gnb.gnb-full .gnb-item .sub-menu > li > a:hover{text-decoration: underline;}

#header::before{content:""; position:absolute; opacity:0; top:100rem; width:100%; height:1px; background:#eee; transition:var(--trans-01);}
#header.color-on{padding: 12rem 0;}
#header.color-on::before{opacity:1;}
#header:is(.color-on) #logo a{background-image:url(../img/layout/logo.svg);background-size: 100%;}
#header:is(.on) #logo a{background-image:url(../img/layout/logo.svg);background-size: 100%;}

#header.color-on .gnb-full-cover{opacity:1;visibility:visible;height: 390rem;}
#header:is(.color-on, .on) #gnb .gnb-item > a{color:var(--c-primary);}
#header.color-on #gnb .gnb-item{/*padding: 0 35rem;*/}
#header.color-on #gnb{gap: 132rem;}
/* #header.color-on #logo{position: absolute; top: 48rem; left: 50rem; } */

/* inline gnb */
#header.color-on:has(.gnb-inline) .gnb-full-cover{height:185rem;}
#header:has(.gnb-inline) .gnb-full-cover{transition:all 0.3s ease;}
#gnb.gnb-inline .gnb-item .sub-menu{display:flex; left:0; width:auto; padding:0; background:none; border:0; white-space:nowrap;}
#gnb.gnb-inline .gnb-item .sub-menu > li > a{padding:0; background:none; border:0;}
#gnb.gnb-inline .gnb-item .sub-menu > li:not(:last-child){margin-right:20rem;}
#gnb.gnb-inline .gnb-item .sub-menu{display:flex; justify-content:center; top:85rem; box-shadow:none; transform:translateY(0rem); transform:translateX(-20rem);}
#gnb.gnb-inline .gnb-item > a{padding-bottom:0;}
#gnb.gnb-inline .gnb-item.active .sub-menu{transform:translateX(0rem);}

.btn_close{opacity:0; font-size:0;}


@media (max-width:1800px){

    .header-inner{padding: 0 80rem;}

    #header.color-on #gnb{gap: 100rem;}
    #header.color-on .gnb-full-cover{height: 470rem;}
}
@media (max-width:1680px){

    .header-inner{padding: 0 60rem;}
    .gnb-container {margin-left: 60rem;}
}
@media (max-width:1480px){

     #header.color-on .gnb-full-cover{height: 430rem;}
}
@media all and (max-width:1200px){
	#gnb{gap: 50rem;}
    .gnb-container{margin-left: 60rem;}
    .header-contact{width: 120rem;}

    .gnb-container{display: none;}

    #logo{top: 7rem;}
    #header.on #logo{top: 0;}
}
@media all and (max-width:1023px){
	.header-inner{padding: 0 40rem;}
    .header-right-wrap{padding-right: 50rem;}
}
@media (max-width:860px){

}
@media (max-width: 540px){

    .header-inner{padding: 0 20rem;}
}
/* **************************************** *
 * MOBILE MENU
 * **************************************** */
.gnb-mobile-btn{display:none; position:relative; z-index:80; padding:10rem 0rem; cursor:pointer;}
.gnb-mobile-btn span{display:block; position:relative; width:100%; height:3px; background:#fff; transition:all 0.4s ease;}
.gnb-mobile-btn .inner{display:none;width: 32rem;height: 11rem;align-content:space-between;}
.gnb-mobile{position:fixed;opacity:0;visibility:hidden;overflow:hidden;top:0;right: 0;width:100%;height:100vh;background:rgba(46, 46, 46, 0.20); backdrop-filter: blur(10rem); padding: 20rem; transition:all 0.3s ease;overflow-y: scroll;}
.gnb-mobile:has(.menu--st01){max-width: 550rem;}
.gnb-mobile-btn.active span:nth-child(1){top: 8rem;transform:rotate(45deg);}
.gnb-mobile-btn.active span:nth-child(2){transform:rotate(-45deg);}
.gnb-mobile-btn.active span{background:#222;}
.gnb-mobile.active{opacity:1; visibility:visible;}
.gnb-mobile-menu .gnb-item > a{display:inline-flex; width: 100%; align-items:center;position:relative;font-weight:700;font-size:22rem;color: var(--w);}
.gnb-mobile-menu--wrap{position:relative;top:0;width:100%;box-sizing:border-box;padding:130rem 30rem 0; height: 100%; text-align:center;overflow: auto; border-radius: 10rem; background-color: var(--c-primary);}
.gnb-mobile-menu .gnb-item:not(:first-child){margin-top:20rem; padding-top: 20rem; border-top: 1px dashed var(--op-w20);}
.gnb-mobile-menu .sub-menu{display:none; margin-top:22rem; text-align: left;}
.gnb-mobile-menu .sub-menu li a.on{color: var(--c-01);}
.gnb-mobile-menu .gnb-item.active{padding-bottom:15rem;}
.gnb-mobile-menu .sub-menu li a{font-size:16rem;display: block; color: var(--op-w70);}
.gnb-mobile-menu .sub-menu li:not(:first-child){margin-top:12rem;}
.gnb-mobile-menu .gnb-item:has(li:nth-child(2)){}
.gnb-mobile-menu .gnb-item > a::after{content:"";display:none;position:absolute;right:0rem;width: 26rem;height: 26rem;/* margin-left: 22rem; */background: url(../img/board/arrow-select_w.svg) no-repeat 50% 50%;/* transform: rotate(90deg); */background-size: 16rem;}
.gnb-mobile-menu .gnb-item.active:has(li:nth-child(2)) > a::after{transform: rotate(180deg);}
.gnb-mobile-menu .gnb-item:has(li:nth-child(2)) > a::after{display:block;}
.gnb-mobile__copy{position:absolute; opacity:0.7; color: var(--w); bottom:30rem; width:100%; font-weight:800; text-align:center;}
.gnb-mobile-menu .gnb-item{opacity:0; transition:all 0.7s ease; transform:translateY(30rem);}
.gnb-mobile.active  .gnb-item{opacity:1; transform:translateY(0rem);}
.gnb-mobile.active  .gnb-item:nth-child(1){transition-delay:100ms;}
.gnb-mobile.active  .gnb-item:nth-child(2){transition-delay:200ms;}
.gnb-mobile.active  .gnb-item:nth-child(3){transition-delay:300ms;}
.gnb-mobile.active  .gnb-item:nth-child(4){transition-delay:400ms;}
.gnb-mobile.active  .gnb-item:nth-child(5){transition-delay:500ms;}
.gnb-mobile.active  .gnb-item:nth-child(6){transition-delay:600ms;}
.gnb-mobile.active  .gnb-item:nth-child(7){transition-delay:700ms;}
.gnb-mobile.active  .gnb-item:nth-child(8){transition-delay:800ms;}

/* st 1 */
.gnb-mobile-menu.menu--st01{top:auto; bottom:0; height:calc(100% - 100rem); border-top:1px solid #f3f3f3; text-align:left;}
.gnb-mobile-menu.menu--st01::before{content:""; position:absolute; top:0; right:0; width:50%; height:100%; background:#f7f7f7;}
.gnb-mobile-menu.menu--st01 .gnb-item{width:50%;}
.gnb-mobile-menu.menu--st01 .sub-menu{position:absolute; top:0; left:100%; width:100%; box-sizing:border-box; margin-top:0;}
.gnb-mobile-menu.menu--st01 .gnb-item.active{padding:0;}
.gnb-mobile-menu.menu--st01 .gnb-item > a{font-size:20rem;}
.gnb-mobile-menu.menu--st01 .gnb-item:nth-child(1){margin-top:40rem;}
.gnb-mobile-menu.menu--st01 .gnb-item > a{display:flex;}
.gnb-mobile-menu.menu--st01 .gnb-item > a::after{right:25rem; width:12rem; height:12rem; transform:rotate(-90deg) !important;}
.gnb-mobile-menu.menu--st01 .gnb-item:not(:first-child){margin-top:23rem;}
.gnb-mobile-menu.menu--st01 .gnb-item.active > a{color:var(--c-01);}
.gnb-mobile-menu.menu--st01 .gnb-item.active > a::after{background-image:url(../img/common/arrow-basic_c.svg);}
.gnb-mobile-menu.menu--st01 .sub-menu.active{opacity:1; visibility:visible; transform:translateY(0rem);}
.gnb-mobile-menu.menu--st01 .sub-menu{display:block; opacity:0; visibility:hidden; transition:var(--trans-01); transform:translateY(15rem);}

@media (max-width:1480px){
	#gnb .gnb-item > a{}
}

@media (max-width:1200px){

}

@media (min-width: 1024px){
	#gnb .gnb-item .sub-menu{display:none;position:absolute;opacity:0;visibility:hidden;top: 65rem; left: 50%;  border-radius: 5rem; width:160rem; padding:8rem 17rem; border:1rem solid var(--op-w10); background-color: #fff;  box-shadow:15rem 20rem 29rem 0rem rgba(0, 0, 0, 0.23);transition:all 0.4s ease-out;transition-property: opacity, transform, visibility;transition-delay:0s, 0s, 0s;transform: translateX(-50%) translateY(-20rem);}
	#gnb .gnb-item .sub-menu{display:block; transition-delay:0.1s;}	
	#gnb .gnb-item .sub-menu > li > a{display:block;position:relative;  font-size: 16rem; font-family: var(--lang-ko); padding:10rem 0rem;border-top:1rem dashed var(--op-b10);color:#404040;text-align:left;transition:var(--trans-01);}
	#gnb .gnb-item .sub-menu > li > a:hover{opacity:0.5;}
	#gnb .gnb-item .sub-menu > li:first-child > a{border-top-width:0rem;}
	#gnb .gnb-item.active .sub-menu{opacity:1;visibility:visible;z-index:10;transition-delay:0s, 0s, 0s;transform: translateX(-50%) translateY(0);}	

    .gnb-container-wrap{display: flex; align-items: center;}
}

@media all and (max-width:1023px){	
	#header{padding: 30rem 0;}
	#header .gnb-full-cover,
	#header::before{display:none;}
	/* #header:not(:has(.gnb-mobile-menu.menu--st01)).color-on #logo a{background-size:100%; background-image:url(../img/layout/logo.svg);} */

	/* .gnb-container-wrap{display:none;} */
    .gnb-container{display: none;}
	.gnb-mobile-btn{display:flex; gap: 6rem; position: absolute; align-items: center; justify-content: center;  right: 40rem; z-index:200; width: 44rem; height: 44rem; border-radius: 100%; background-color: var(--op-w10);}
	.gnb-mobile-btn i{width: 3rem; height: 3rem; border-radius: 30rem; background-color: var(--w);}
    .gnb-mobile-btn.active .inner{width:35rem;}
	.gnb-mobile-btn.active{top: 46rem; right: 60rem;}

	.gnb-mobile-menu .gnb-item:has(li:nth-child(2)) > a{margin-left: 0rem;}	
	.gnb-mobile-menu.menu--st01 .gnb-item:has(li:nth-child(2)) > a{margin-left:0;}
	.gnb-mobile-menu.menu--st01 .sub-menu li a{display:block; padding:4rem 20rem; font-size:16rem;}
	
	.sub-menu-depth{display:none;}

    .lang-menu > ul::before{top: 6rem;}

    #header:is(.color-on) #logo{position: absolute; left: 50rem; top:52rem;}
    .gnb-mobile-btn.active{right: 50rem;}

}

@media (max-width: 540px){
	#header{padding: 20rem 0;}
	#header.color-on #logo a{background-image: url(../img/layout/logo_w.svg)}
    #header.on #logo a{background-image: url(../img/layout/logo.svg) !important;}

	#logo a{width: 54rem; height: 30rem;}
    .header-contact{display: none;}

    #header:is(.color-on) #logo{left: 28rem; top: 26rem;}
  
    .gnb-mobile{padding: 8rem;  height: 100dvh; }
	.gnb-mobile-menu{top:-20rem; position: relative; padding-bottom: 7vh;overflow-y: scroll;height:calc(66vh - 74rem);}
    .gnb-mobile-menu--wrap{padding: 104rem 25rem 0;}
    .gnb-mobile-btn{right: 20rem; gap: 4rem; top: 20rem;  width: 32rem; height: 32rem;}
	.gnb-mobile-btn .inner{width: 26rem;height: 11rem;}
    .gnb-mobile-btn.active{right: 20rem; top: 20rem;}
	.gnb-mobile-btn.active .inner{width:26rem;}
	.gnb-mobile-btn.active span:nth-child(1){top: 8rem;}
	.gnb-mobile-menu .gnb-item:not(:first-child){margin-top: 19rem;}
	.gnb-mobile-menu .gnb-item > a{font-weight: 700;font-size:17rem;}
    .gnb-mobile-menu .gnb-item > a::after	.gnb-mobile-menu .sub-menu li a{font-size:12rem;}
	.gnb-mobile-menu .sub-menu li:not(:first-child){margin-top: 12rem;}	
	.gnb-mobile-menu .sub-menu{display:none; margin-top:18rem;}
    .gnb-mobile-menu .sub-menu li a{font-size: 14rem;}
    .gnb-mobile-menu .gnb-item.active{padding-bottom: 0;}

	.gnb-mobile-menu.menu--st01{height: calc(100% - 80rem); padding:0rem 20rem;}
	.gnb-mobile-menu.menu--st01 .gnb-item > a{font-size:16rem;}
	.gnb-mobile-menu.menu--st01 .gnb-item > a::after{right:20rem; width:10rem; height:10rem;}
	.gnb-mobile-menu.menu--st01 .sub-menu li a{padding:2rem 18rem; font-size:14rem;}
	.gnb-mobile-menu.menu--st01 .gnb-item:nth-child(1){margin-top:25rem;}

	.gnb-mobile-menu .gnb-item > a::after{background-size: 12rem;}

    .lang-menu > ul{margin-right: 0;}
    .lang-menu > ul::before{top: 4rem; left: 51%;}
}

/* **************************************** *
 * full page gnb site map 
 * **************************************** */
 #site-map{position:fixed; opacity:0; visibility:hidden; top:0; left:0; z-index:100; width:100%; height:var(--height-full); background:rgba(246, 246, 246, 0.10); padding: 22rem 20rem; backdrop-filter: blur(10rem); transition:var(--trans-01); transition-delay:0.1s;}
 #site-map.active{opacity:1; visibility:visible; transition-delay:0s;}
 #site-map.active .gnb-item{opacity:1; transform:translateY(0rem);}
 #site-map.active .gnb-item:nth-child(1){transition-delay:100ms;}
 #site-map.active .gnb-item:nth-child(2){transition-delay:200ms;}
 #site-map.active .gnb-item:nth-child(3){transition-delay:300ms;}
 #site-map.active .gnb-item:nth-child(4){transition-delay:400ms;}
 #site-map.active .gnb-item:nth-child(5){transition-delay:500ms;}
 #site-map.active .gnb-item:nth-child(6){transition-delay:600ms;}
 #site-map.active .gnb-item:nth-child(7){transition-delay:700ms;} 
 #site-map.active .gnb-item:nth-child(8){transition-delay:800ms;} 
 #site-map strong{font-size: 70rem; font-weight: 700; color: var(--w); display: block;  line-height: 1.5;  padding: 38rem 0 19rem; border-bottom: 1px solid var(--op-w20);} 

.site-map-inner{width: 100%;height: 100%;  background-color: var(--c-primary); border-radius: 20rem; overflow: hidden;}
.site-map-inner .bg{width: 510rem;aspect-ratio: 1 / 1;background: var(--c-01);filter: blur(260rem);opacity: 0.27;position: absolute;right: -23rem;bottom: -70rem;}
.site-map-list .gnb-item > a{font-weight:700; font-size:30rem; color: var(--w);}
.site-map-list.site-map--colum{display:grid; width:100%;  grid-template-columns:repeat(6, 1fr); margin-top: 136rem;}
.site-map-list.site-map--colum .sub-menu li:not(:first-child){margin-top: 20rem;}
.site-map-list.site-map--colum .sub-menu{margin-top:30rem;}
.site-map-list.site-map--row{display:grid; gap:40rem;}
.site-map-list.site-map--row :is(.gnb-item, .sub-menu){display:flex; align-items:center;}
.site-map-list.site-map--row .sub-menu li:not(:first-child){margin-left:30rem;}
.site-map-list.site-map--row .sub-menu{margin-left:30rem;}
.site-map-list .sub-menu a{font-size: 19rem;transition:var(--trans-01);color: var(--op-w40); font-weight: 300; word-break: keep-all;}
.site-map-list .sub-menu a:hover,
.site-map-list .sub-menu a.on{color:var(--w); text-decoration: underline;}
.site-map-list.site-map--row.row-drap .gnb-item{display:flex; align-items:flex-start; flex-direction:column;}
.site-map-list.site-map--row.row-drap .gnb-item .sub-menu{display:none; ; margin-left:0;}
.site-map-list.site-map--row.row-drap .gnb-item .sub-menu > li:not(:first-child){margin-left:20rem;}
.site-map-list.site-map--row.row-drap .gnb-item .sub-menu > li{display:inline-block;}
.site-map-list .gnb-item{opacity:0; transition:all 0.7s ease; transform:translateY(30rem);}
 
.site-map-list.row-drap .gnb-item > a.active{color: var(--c-01);}
 
.site-map__bottom{position: absolute; bottom: 52rem; left: 0; width: 100%;}
.site-map__bottom p{color:var(--op-w20); font-size:14rem; font-weight: 500;}
.site-map__bottom ul{position: absolute;right: -60rem;bottom: 0;z-index: 1;}

.site-map__link{align-items: center; gap: 10rem;}
.site-map__link a{display: inline-flex;  padding: 12rem; min-width: 180rem; align-items: center; height: 60rem; gap: 17rem; background-color: var(--c-primary); border-radius: 8rem; transition: var(--trans-01);}
.site-map__link a figure{width: 36rem;height: 36rem;border-radius: 5rem;overflow: hidden; border:1px solid var(--c-01)}
.site-map__link .site-map__desc span{font-size:12rem;font-weight: 400;color: var(--op-w40);display: block; white-space: nowrap;}
.site-map__link .site-map__desc em{font-size: 14rem;font-weight: 400;color: var(--w);display: block;margin-top: -1rem;}
.site-map__link li:hover > a{background-color: var(--c-01);}

.gnb-full-cover .site-map__link{position: absolute; right: 30rem; bottom: 30rem;}
.gnb-full-cover .site-map__link a{background-color: var(--bg-surface); /* border:1px solid var(--op-b10) */}
.gnb-full-cover .site-map__link .site-map__desc span{color: var(--op-b20);}
.gnb-full-cover .site-map__desc em{color: var(--b-01);}
.gnb-full-cover .site-map__link a figure{border:none}
.gnb-full-cover .site-map__link li:hover .site-map__desc span,
.gnb-full-cover .site-map__link li:hover .site-map__desc em{color:var(--w)}

.gnb-mobile .site-map__link{position: absolute; left: 50%; transform: translateX(-50%); bottom: 70rem;}
.gnb-mobile .site-map__link a{background-color: var(--op-b20); }

body.fixed .header-right-wrap > *:not(.gnb-full-btn-wrap){display: none;}
body.fixed  .gnb-full-btn.active .gnb-full-icon > span{width: 2rem; height: 14rem; background-color: var(--w);}

.gnb-full-icon{position:relative; width: 100%; height: 100%; display: flex; align-items: center; gap: 4rem; justify-content: center;}
.gnb-full-icon > span{display:inline-block;  width:4rem;  height:4rem; border-radius: 10rem;  background:#FFF; transition:all 0.3s;}
.gnb-full-btn{width: 44rem; height: 44rem; border-radius: 100%; background-color: var(--op-w10); }

body.fixed .gnb-full-btn{position: absolute; right: 0; top: 0;}

.gnb-full-btn .text{display:inline-block; width:100%; font-size:11rem; color:#FFF; text-align:center; transition:all 0.3s;}
.gnb-full-btn .text::after{content:"MENU"; display:block; margin-top:6rem; font-weight:700;}
.gnb-full-btn.active .text::after{content:"CLOSE";}
.gnb-full-btn.active .border-01{transform: translateX(7rem) translateY(0rem) rotate(45deg) !important;}
.gnb-full-btn.active .border-02{opacity:0;}
.gnb-full-btn.active .border-03{transform: translateX(-5rem) translateY(0) rotate(-45deg) !important;}
.gnb-full-btn-wrap{position:relative; z-index:100;}
.gnb-full-btn.active .gnb-full-icon > span{background:var(--b-01);}
.gnb-full-btn{display:flex;align-items:center;flex-direction:column;cursor: pointer;}

.gnb-full-btn.active .text,
 #header:is(.color-on, .on) .gnb-full-btn .text{color:var(--b-01);}
 .gnb-full-btn.active .gnb-full-icon > span,
 #header:is(.color-on, .on) .gnb-full-icon > span{background:var(--c-01); }
 #header:is(.on) .gnb-mobile-btn{background-color: var(--bg-default);}
#header:is(.on) .gnb-mobile-btn i{background-color: var(--c-01);}
 #header:has(#site-map.active) #logo a{background-size:100%; background-image:url(../img/layout/logo.svg);}
  

@media (max-width:1800px){

    .site-map__bottom ul{position: relative; right: 0;}
    .site-map__bottom .wrap{display: flex; justify-content: space-between; align-items: flex-end;}
}
@media (max-width:1480px){

    .site-map-list .gnb-item > a{font-size: 26rem;}
    #site-map strong{font-size: 58rem;}

    body.fixed .gnb-full-btn-wrap{top: 30rem;}

    body.fixed .gnb-full-btn{top:-30rem;}


}
@media all and (max-width:1200px){
	.site-map-list.site-map--colum{margin-top: 90rem;}
    body.fixed .gnb-full-btn{top:0;}

    
}

@media (max-width:1023px){
	.gnb-full-btn-wrap{display: none;}
	.gnb-full-btn-wrap.mob{display:block;}
	

      .gnb-full-btn{width: 38rem; height: 38rem;}
      .gnb-full-icon > span{width: 3rem; height: 3rem;}

      .site-map-list .gnb-item > a{font-size: 24rem;}
      .site-map-inner .bg{display: none;}
}

@media (max-width:860px){
    #site-map strong{font-size: 30rem}

    .site-map-list{margin-top: 40rem;height: 57vh;overflow: hidden;overflow-y: scroll;}
    #site-map.active .gnb-item{padding: 22rem 0; border-bottom:1px dashed var(--op-w10);}
    #site-map.active .gnb-item:nth-child(1){padding-top: 0;}
    .site-map-list .gnb-item > a{font-size: 20rem; display: block; width: 100%;}
    .site-map__bottom p{display: none;}

    .gnb-mobile .site-map__link{width: 100%; padding: 0 25rem; justify-content: center; }
    /* .gnb-mobile .site-map__link > li{flex: 1;} */
    .site-map__link a{width: 100%;}
}
@media (max-width: 540px){

    #site-map{padding: 10rem;}
    .site-map-inner{border-radius: 10rem;}
    #site-map strong{padding: 20rem 0 14rem;  font-size: 27rem;}
    .site-map-list .gnb-item > a{font-size: 18rem;}
    .site-map-list .gnb-item .sub-menu{margin-top: 0; display: none;}
    .site-map-list .gnb-item .sub-menu li a{font-size: 15rem; padding: 4rem 0;}
    .site-map-list .gnb-item .sub-menu li + li{margin-top: 4rem;}

    .site-map__bottom ul{gap: 14rem;}
    .site-map__link a{flex-direction: column; justify-content: center; align-items: flex-start; min-width: auto; height: auto; padding: 8rem; gap: 6rem;}
    .site-map__link a figure{width: 30rem; height: 30rem;}
    .site-map__link .site-map__desc span{font-size: 10rem;}
    .site-map__link .site-map__desc em{font-size: 12rem;}
    .gnb-mobile .site-map__link li{flex: 1;}
    .gnb-mobile .site-map__link{bottom: 50rem;}
    .site-map-list.site-map--row{gap: 0;}
    .gnb-mobile__copy{bottom: 20rem;}

     #site-map.active .gnb-item a.active + .sub-menu{padding-top: 12rem;}


     #header:is(.on) .gnb-mobile-btn{/* top: 9rem; */}

}

/* **************************************** *
 * footer
 * **************************************** */
/* #footer *{color:#fff;} */

#footer{position:relative;z-index: 50; padding-top: 90rem; background: var(--bg-dark); }
#footer .footer-logo img{height: 73rem;}
#footer .footer-logo{margin-bottom: 45rem; display: block;}
#footer address strong{font-size: 18rem; color: var(--w); font-weight: 600; line-height: 1.44; display: block;}
#footer address *:not(strong){font-size: 15rem; font-weight: 300; color: var(--op-w50); display: block;}
#footer address span{margin-top: 18rem;}
#footer address .mail{text-decoration: underline;}


.footer-top{padding-bottom: 40rem; position: relative; }
.footer-top .btn-basic.square{width: 217rem;}
.footer-top .btn-basic.square *{color: var(--w);}
.footer-top .btn-basic.square em{text-transform: capitalize;}
.footer-top .btn-basic.square.primary:hover{background-color: var(--op-w10);}
.footer-top .btn-basic.square:not(.primary){background-color: var(--op-w10); border-color: transparent;}
.footer-top .btn-basic.square:not(.primary):hover{border-color: var(--c-01);}

.footer-top .btn-wrap:has(.square){gap: 6rem; margin-top: 120rem;}
.footer-news{position: absolute; right: 0; top: 0;}
.footer-news strong{font-size: 36rem; font-weight: 600; line-height: 1.27; color: var(--w);}
.footer-news .btn-wrap{margin-top: 25rem}
.footer-news a{background-color: var(--w); height: 66rem; width: 240rem; border-color: var(--w); padding: 20rem 20rem 20rem 26rem;}
.footer-news a em{color: #050817; font-size: 16rem; }
.footer-news a span{background-color: var(--bg-dark); }
.footer-news a span path{stroke:var(--w);}

.footer-bottom{justify-content: space-between; align-items: flex-end; padding: 34rem 0 54rem; border-top: 1px solid var(--op-w10);}
.footer-privacy *{color: var(--op-w40);}
.footer-privacy a{font-size: 14rem;}
.footer-privacy p{margin-top: 11rem; font-size: 15rem;}
.footer-privacy [data-between="line"] > *::after{margin: 0 15rem; height: 12rem; background: var(--op-w40);}

.footer-sns{align-items: center; gap: 26rem;}
.footer-sns a{opacity: 0.4; transition: var(--trans-01);}
.footer-sns a:hover{opacity: 1;}

@media (hover: hover) and (pointer: fine){
	.footer-menu a:hover{opacity:0.6;}
    .footer-news a:hover span path{stroke: var(--c-01);}
}


@media all and (max-width:1023px){
	#footer{padding-top: 50rem;}
    #footer .footer-logo img{height: 53rem;}
    
    .footer-news{position: relative; text-align: center; padding-bottom: 50rem; border-bottom: 1px dashed var(--op-w20);}
    .footer-news .btn-wrap{justify-content: center;}
    .footer-news a{padding: 16rem 20rem; min-width: 210rem; width: auto; height: 60rem;}

    .footer-info{margin-top: 55rem;}
    .footer-info{display: flex; justify-content: space-between;}
    .footer-top .btn-wrap:has(.square){justify-content: flex-end;}
    

}
@media (max-width:860px){

}
@media (max-width: 540px){

    .footer-info{flex-direction: column; margin-top: 50rem;}
    #footer .footer-logo img{height: 35rem;}
    #footer address strong{font-size: 16rem;}
    #footer address *:not(strong){margin-top: 6rem;}
    #footer address span{margin-top: 12rem;}
    #footer .footer-logo{margin-bottom: 25rem;}
    .footer-top .btn-wrap:has(.square){margin-top: 60rem;}

    .footer-news strong{font-size: 26rem;}
    .footer-news a em{font-size: 14rem;}
    .footer-news a{padding: 12rem 12rem 12rem 20rem; height: 54rem; min-width: 180rem; gap: 16rem;}
        
    .footer-privacy p{margin-top: 5rem;}
    .footer-bottom{flex-direction: column-reverse; gap: 30rem; align-items: flex-start; padding: 26rem 0 40rem;}

}

/* **************************************** *
 * SCROLL TOP
 * **************************************** */
.btn-top-wrap{position: fixed;bottom: 50rem;right:50rem;visibility: hidden;opacity: 0;transition: var(--trans-01);}
.btn-top-wrap.fixed.active{position:fixed;opacity:1;visibility:visible;top:auto;bottom:50rem;}
.btn-top-wrap.active{position:absolute; opacity:1; visibility:visible; top:0rem;}
a.btn-top{display:flex;align-items:center;font-family:var(--lang-en);font-size: 12rem;flex-direction:column;transition: var(--trans-01);background: var(--b-01);width: 70rem;height: 70rem;justify-content: center;border-radius: 100%;font-weight: 700;}
a.btn-top i{position:relative; margin-bottom:10rem;}
a.btn-top::before{content:"";display:block;height:10rem;margin-bottom:5rem;background:url(../img/common/arrow-basic_w.svg) no-repeat 50% 50%;transform: rotate(270deg);min-width:11rem;}

@media (max-width:540px){
	.btn-top-wrap{right:20rem;}
	.btn-top-wrap.fixed.active{bottom: 20rem;	}
	a.btn-top{width:55rem; height:55rem; font-weight:700; font-size:10rem; }
	a.btn-top::before{background-size:10rem;margin-bottom: 2rem;}	
}

.popup-layer{display:none;position:fixed;inset:0;z-index:1000;}
.popup-layer-inner{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);}
html.is-popup-open,body.is-popup-open{overflow:hidden;touch-action:none;}