@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; word-break: keep-all;}
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: var(--c-01);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%; height: 110rem; transition: background-color .4s, height .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;align-items:center; height: 100%;}

#logo{position:relative; z-index:81; margin-top: -6rem; margin-left: -20rem;}
#logo a{display:block;width: 170rem;height:70rem;background-size: contain;background-position:50% 50%;background-repeat:no-repeat;background-image:url(../img/layout/logo_w.svg); transition: .3s;}

#header.on{height: 90rem; background-color: #fff;}

/* global btn */
.lang-menu{gap:10rem; margin-left: auto;}
.lang-menu a{opacity: 0.5 !important;color:#fff;font-weight: 800;}
.lang-menu li.on a{opacity: 1 !important;}
.lang-menu .select-link{width: auto;}
.lang-menu img{height:24rem;}
.lang-menu i{position: relative; /* display:none; */color: var(--w); font-size: 13rem; font-weight: 700;}
.lang-menu .select-link__btn::before {z-index: 0; position: absolute; left:0; top: 100%; content:''; width: 100%; height: 100%; background: var(--bg-01); transition: var(--trans-01);}
.lang-menu .select-link__btn::after{/*display:none;*/flex-shrink: 0; background-image: url(../img/layout/arrow-select_w.svg);position: relative;background-size: 10rem;}
.lang-menu .select-link__btn{overflow: hidden; position: relative; display:flex; justify-content:center;padding: 3rem 15rem; padding-right: 0 !important; border-radius: 3rem; background: rgba(255, 255, 255, .12);}
.lang-menu .select-link > ul{background: var(--bg-02);}
.lang-menu .select-link > ul a{padding:3rem 15rem; font-size:13rem; text-align:center;}
.lnag-menu__icon{flex-shrink: 0; position: relative; width: 18rem;height: 18rem; margin-right: 8rem; background-position:50% 50%;background-image:url(../img/common/ic-lang_w.svg);background-repeat:no-repeat;}

#header:is(.color-on, .on) .select-link__btn {background: var(--bg-03);}
#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/layout/arrow-select.svg);}

@media (hover: hover) and (pointer: fine){
	.lang-menu .select-link__btn:hover::before {top: 0;}
	#header:is(.color-on, .on) .lang-menu .select-link__btn:hover .lnag-menu__icon{background-image:url(../img/common/ic-lang_w.svg);}
	#header:is(.color-on, .on) .lang-menu .select-link__btn:hover i{color: var(--w);}
	#header:is(.color-on, .on) .lang-menu .select-link__btn:hover::after{background-image: url(../img/layout/arrow-select_w.svg);}
}

/* basic gnb */
.gnb-container{display:inline-block;}
.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;/* top: 10rem; */ margin-left: 35rem;}
#gnb .gnb-item{display:inline-block;position:relative;padding: 0 25rem;transition:var(--trans-01);}
#gnb .gnb-item:last-child:after{background:none;}
#gnb .gnb-item > a{display:inline-block; padding:20rem 0; font-weight:600; color:var(--w); font-size:var(--font-18); transition:var(--trans-01);}
#gnb .gnb-item .sub-menu > li.on > a{color: var(--c-01) !important; }
#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; padding-bottom:0;}
#gnb.gnb-full .gnb-item .sub-menu{top:80rem; 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; border:0; color:#666; text-align:center;}
#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:-41rem; 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);}

#header::before{content:""; position:absolute; opacity:0; top:110rem; width:100%; height:1px; background:var(--br-02); transition:var(--trans-01);}
#header.color-on::before{opacity:1;}
#header.on::before {top: 90rem;}
#header:is(.color-on, .on) #logo a{background-image:url(../img/layout/logo.svg);}
#header.color-on .gnb-full-cover{opacity:1;visibility:visible;height: 750rem;}
#header:is(.color-on, .on) #gnb .gnb-item > a{color:#111;}
#header.color-on #gnb .gnb-item{/*padding: 0 35rem;*/}

/* inline gnb */
#header.color-on:has(.gnb-inline) .gnb-full-cover{height:185rem;}
#header.on:has(.gnb-inline) .gnb-full-cover {height: 165rem;}
#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:35rem;}
#gnb.gnb-inline .gnb-item .sub-menu{display:flex; justify-content:flex-start; top:113rem; padding: 0 25rem; box-shadow:none; transform:translateY(0rem); transform:translateX(-20rem);}
#gnb.gnb-inline .gnb-item.active .sub-menu{transform:translateX(0rem);}
#header.on:has(.gnb-inline) .gnb-item .sub-menu {top: 103rem;}

.btn_close{opacity:0; font-size:0;}

/* **************************************** *
 * 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:grid;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:#fff;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;align-items:center;position:relative;font-weight:700;font-size:27rem;color: var(--b-01);}
.gnb-mobile-menu{position:absolute;top:20vh;width:100%;box-sizing:border-box;padding:0rem 30rem;text-align:center;overflow: auto;}
.gnb-mobile-menu .gnb-item:not(:first-child){margin-top: 30rem;}
.gnb-mobile-menu .sub-menu{display:none; margin-top:22rem;}
.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:18rem;display: block;}
.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: -30rem;width: 26rem;height: 26rem;/* margin-left: 22rem; */background: url(../img/board/arrow-select.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.3; 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: 35rem;right:0;width:100%;padding:8rem 17rem;background:#fff;border:1rem solid #444;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: 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-family: var(--lang-ko); padding:10rem 0rem;background:#fff;border-top:1rem solid #e1e1e1;color:#404040;text-align:left;transition:var(--trans-01);}
	#gnb .gnb-item .sub-menu > li > a:hover{color: var(--c-01);}
	#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: translateY(0);}	
}

@media all and (max-width:1023px){
	#header .gnb-full-cover,
	#header::before{display:none;}
	#header:not(:has(.gnb-mobile-menu.menu--st01)).color-on #logo a{background-image:url(../img/layout/logo.svg);}

	.gnb-container-wrap{display:none;}
	.gnb-full-btn-wrap {margin-left: 30rem;}
	.gnb-mobile-btn{display:block;}
	.gnb-mobile-btn.active .inner{width:35rem;}
	.gnb-mobile-btn.active{top: -4rem;}

	.gnb-mobile-menu .gnb-item:has(li:nth-child(2)) > a{margin-left: -13rem;}	
	.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;}
}

@media (max-width: 860px){
	#header{height: 100rem;}
	#logo a {width: 155rem; height: 62rem;}
}

@media (max-width: 540px){
	#header{height: 72rem;}
	#header.on {height: 65rem;}
	#header.color-on #logo a, .scroll-hide #logo a{background-image: url(../img/layout/logo.svg) !important;}
	#logo {margin-left: -5rem;}
	#logo a{width: 110rem;height:45rem;}

	.gnb-mobile-menu{top:19vh;padding-bottom: 7vh;}
	.gnb-mobile-btn .inner{width: 26rem;height: 11rem;}
	.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:21rem;}
	.gnb-mobile-menu .gnb-item > a::after{width: 18rem;height: 18rem;background-size: 12rem;margin-left: 8rem;right: -23rem;}
	.gnb-mobile-menu .sub-menu li a{font-size:16rem;}
	.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.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;}

	.lang-menu .select-link > ul{margin-top:7rem; padding:7rem 0rem;}
	.lnag-menu__icon{width: 14rem; height: 14rem; margin-top: 1px; margin-right: 6rem;}
	.lang-menu .select-link__btn {padding: 2rem 12rem;}
	.lang-menu .select-link__btn::after {width: 32rem; height: 32rem; background-size: 9rem;}
	.lang-menu .select-link > ul a{font-size:12rem;}	
	.lang-menu i{font-size: 11rem;}
}

/* **************************************** *
 * full page gnb site map 
 * **************************************** */
 #site-map{position:fixed; opacity:0; visibility:hidden; top:0; left:0; z-index:51; width:100%; height:100vh; 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; min-width: 28vw; padding: 0 var(--margin); transform:translateX(0rem); transition:all 0.7s ease; }
#site-map.active .gnb-item::after {opacity: 0; visibility: hidden; position: absolute; right: 0; top: 50%; content:''; width: 55rem; height: 55rem; background:#fff url(../img/layout/arrow-basic.svg) no-repeat center / 13rem; border-radius: 3rem; transform: translate(50%, -50%); transition: var(--trans-01);}
 #site-map.active .gnb-item:nth-child(1){transition-delay:400ms;}
 #site-map.active .gnb-item:nth-child(2){transition-delay:500ms;}
 #site-map.active .gnb-item:nth-child(3){transition-delay:600ms;}
 #site-map.active .gnb-item:nth-child(4){transition-delay:700ms;}
 #site-map.active .gnb-item:nth-child(5){transition-delay:800ms;}
 #site-map.active .gnb-item:nth-child(6){transition-delay:900ms;}
 #site-map.active .gnb-item:nth-child(7){transition-delay:1000ms;} 
 #site-map.active .gnb-item:nth-child(8){transition-delay:1100ms;} 
 #site-map.active .gnb-item:has(.active)::after {opacity: 1; visibility: visible;}

.site-map__bg {opacity: 0; visibility: hidden; position: absolute; left:0; top:0; display: grid; grid-template-columns: 28vw 1fr 28vw; width: 100%; height: 100%;}
.site-map__bg li {position: relative;}
.site-map__bg li:not(:first-child)::before {border-left: 1px solid var(--op-w10);}
.site-map__bg li:before {position: absolute; left:0; top:0; content:''; width: 0; height: 100%; background: var(--bg-02); transition: var(--trans-02);}
#site-map.active .site-map__bg {opacity: 1; visibility: visible;}
#site-map.active .site-map__bg li:before {width: 100%;}

.site-map__aside {position: absolute; right: 0; bottom: 0; display: flex; flex-direction: column; justify-content: center; width: 28vw; height: 100%; padding-top: 110rem;}
.site-map__aside address {padding: var(--margin); font-family: var(--lang-en), var(--lang-ko); font-weight: 300; color: var(--w); border-top: 1px solid var(--op-w10); }
.site-map__aside address p {opacity: 0; display: flex; align-items: center; transform: translateX(-30rem);}
.site-map__aside address i {min-width: 56rem; margin-right: 12rem; font-weight: 600; font-family: var(--lang-en); color: var(--op-w20);}
.site-map__figure {padding: var(--margin);}
.site-map__figure > div {opacity: 0; visibility: hidden; overflow: hidden; position: relative; aspect-ratio: 1/1; border-radius: 10rem; transform: translateX(-30rem);}
.site-map__figure figure {opacity: 0; inset: 0; position: absolute; left:0; top: 100%; transition: none;}
.site-map__figure figure.active {animation: image_up 0.9s ease forwards;}

#site-map.active .site-map__figure > div {opacity: 1; visibility: visible; transform: translateX(0); transition: all 0.7s ease .4s;}
#site-map.active .site-map__aside address p {opacity: 1; transform: translateX(0); transition: all 0.7s ease .5s;}

@keyframes image_up {
  0% {opacity: 0; top: 100%;}
  100% {opacity: 1; top: 0;}
}
 .site-map-inner{display:flex; align-items:center; height:100%;}
 .site-map-list .gnb-item > a{opacity: .25; font-weight:700; font-size:50rem; color: var(--w);}
  .site-map-list .gnb-item > a:hover{opacity: 1;}
 .site-map-list.site-map--colum{display:grid; width:100%; text-align:center; grid-template-columns:repeat(6, 1fr);}
 .site-map-list.site-map--colum .sub-menu li:not(:first-child){margin-top:13rem;}
 .site-map-list.site-map--colum .sub-menu{margin-top:30rem;}
 .site-map-list.site-map--row{display:grid; gap:32rem;}
 .site-map-list.site-map--row :is(.gnb-item, .sub-menu){display:flex; align-items:center;}
 .site-map-list.site-map--row .sub-menu{margin-left:30rem;}
 .site-map-list .sub-menu a {opacity: .25; display: inline-flex; align-items: center; white-space: nowrap; padding: 10rem 0; font-size: var(--font-20); font-weight: 600; color: var(--w); transition:var(--trans-01);}
 .site-map-list .sub-menu a::before {content:''; opacity: 0; visibility: hidden; width: 0; height: 14rem; background: url(../img/layout/ic-star_c.svg) no-repeat center / contain; transition: var(--trans-01);}
 .site-map-list .sub-menu a:hover,
 .site-map-list .sub-menu a.on{opacity: 1;}
 .site-map-list .sub-menu a:hover::before,
 .site-map-list .sub-menu a.on::before {opacity: 1; visibility: visible; width: 14rem; margin-right: 12rem;}
 .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{position: absolute; left: 28vw; display:none; margin-left:100rem;}
 .site-map-list.site-map--row.row-drap .gnb-item .sub-menu > li {display:block;}
  .site-map-list.site-map--row.row-drap .gnb-item .sub-menu > li + li {margin-top: 15rem;}
 .site-map-list .gnb-item{opacity:0; transform:translateX(-30rem);}
 .site-map-list.row-drap .gnb-item > a.active{opacity: 1;}

 .gnb-full-icon{position:relative; width:60rem; height:14rem;}
 .gnb-full-icon > span{display:inline-block; position:absolute; left:0; width:100%; height:3rem; background:transparent; transition:all 0.3s;}
 .gnb-full-icon > span i {opacity: 1; visibility: visible; display: block; height: 100%; background: var(--w); transition:all 0.3s;}
 .gnb-full-btn .border-01{top:0;}
 .gnb-full-btn .border-02{top:0; bottom:0; margin:auto;}
 .gnb-full-btn .border-03{bottom:0px;}
 .gnb-full-btn .border-01 i {width: 100%;}
 .gnb-full-btn .border-03 i {position: absolute; top: 0;}
 .gnb-full-btn .border-03 i:nth-child(1) {left: 0; width: 12rem;}
 .gnb-full-btn .border-03 i:nth-child(2) {right: 0; width: 38rem;}

 @media (hover: hover) and (pointer: fine){
	.gnb-full-btn:is(:not(.active)):hover .border-01 i {width: 50%;}
	.gnb-full-btn:is(:not(.active)):hover .border-03 i:nth-child(1) {width: 100%;}
 	.gnb-full-btn:is(:not(.active)):hover .border-03 i:nth-child(2) {width: 0;}
 }

 .gnb-full-btn.active .border-01{transform:translateX(0) translateY(11rem) rotate(45deg) !important;}
 .gnb-full-btn.active .border-02{opacity:0;}
 .gnb-full-btn.active .border-03{transform:translateX(0px) translateY(0) rotate(-45deg) !important;}
 .gnb-full-btn-wrap{position:relative; z-index:100; margin-left: 37rem;}
 .gnb-full-btn.active .gnb-full-icon > span{background:var(--b-01);}
  .gnb-full-btn.active .gnb-full-icon > span i {opacity: 0; visibility: hidden;}
 .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{background:var(--w);}
 #header:is(.color-on, .on) .gnb-full-icon > span i{background:var(--b-01);}

 @media (max-width:1200px){
	.site-map__bg {grid-template-columns: 31vw 1fr 31vw;}
	#site-map.active .gnb-item {width: 31vw;}
	.site-map__aside {width: 31vw;}
	.site-map-list .gnb-item > a {font-size: 42rem;}
	.site-map-list.site-map--row.row-drap .gnb-item .sub-menu {left: 30vw;}
	#site-map.active .site-map__aside address p {flex-direction: column; align-items: flex-start;}
	#site-map.active .site-map__aside address p + p {margin-top: 12rem;}
 }

@media (max-width:1023px){
	.gnb-full-btn-wrap{display: none;}
	.gnb-full-btn-wrap.mob{display:block;}
	.gnb-mobile-btn{display:none;}
	.site-map__bg {grid-template-columns: repeat(2, 1fr);}
	.site-map__bg li:last-child,
	.site-map__aside {display: none;}

	#site-map.active .gnb-item {width: 50vw;}
	.site-map-list.site-map--row.row-drap .gnb-item .sub-menu {left: 50vw;}
}

@media (max-width: 860px){
	.gnb-full-btn-wrap {margin-left: 30rem;}
	.gnb-full-icon {width: 50rem; height: 11rem;}
	.gnb-full-icon > span {height: 2px;}
	.gnb-full-btn .border-03 i:nth-child(1) {width: 10rem;}
	.gnb-full-btn .border-03 i:nth-child(2) {width: 30rem;}
}

@media (max-width: 540px){
	.gnb-full-icon {width: 38rem; height: 8rem;}
	.gnb-full-btn-wrap {margin-left: 20rem;}
	.gnb-full-btn .border-03 i:nth-child(2) {width: 23rem;}
	.gnb-full-btn.active .border-01 {transform: translateX(0) translateY(6rem) rotate(45deg) !important;}

	.site-map-list .gnb-item > a {font-size: 24rem;}
	.site-map-list.site-map--row {gap: 20rem;}
	.site-map-list.site-map--row.row-drap .gnb-item .sub-menu {width: 50vw; padding: 0 40rem; margin-left: 0;}
	.site-map-list.site-map--row.row-drap .gnb-item .sub-menu > li + li {margin-top: 0;}
	.site-map-list .sub-menu a {font-size: var(--font-default); white-space: normal; word-break: keep-all;}
	#site-map.active .gnb-item::after {width: 30rem; height: 30rem; background-size: 11rem;}
}

/* **************************************** *
 * footer
 * **************************************** */
#footer *{color:#fff;}
#footer {position:relative; z-index: 0;}
.footer-inr {position: fixed; left:0; bottom:0; width: 100%; padding:60rem 0; background: var(--bg-01);}
.footer-inr h2 {display: inline-flex; align-items: center;}
.footer-inr h2 span {margin-right: 10rem; font-size: var(--font-59);}
#footer address strong {display: block; margin-bottom: 20rem; font-size: var(--font-24); font-weight: 600; text-transform: uppercase;}
#footer address p span {display:block; margin: 2rem 0; font-weight: 200;}
#footer address p a {font-weight: 300;}
#footer address p i {padding-right: 9rem; font-weight: 600;}
#footer address p:last-child {display: inline-flex; align-items: center; font-family: var(--lang-en);}
#footer address p:last-child span {position: relative; padding-right: 15rem; margin-right: 15rem; font-weight: 300;}
#footer address p:last-child span:not(:last-child)::after {position: absolute; right: 0; top: 50%; content:''; width: 1px; height: 14px; background: var(--op-w20); transform: translateY(-50%);}

.footer-bottom {align-items: flex-end; margin-top: 35rem; padding-top: 32rem; border-top: 1px solid var(--op-w20);}
.footer-menu {margin-bottom: 13rem;}
.footer-menu li {margin-left: 30rem;}
.footer-menu li a {font-weight: 600; transition: .3s;}
.footer-copyright{line-height: 1; font-family: var(--lang-en); font-weight: 600; font-size: var(--font-55);}

@media (hover: hover) and (pointer: fine){
	.footer-menu a:hover{text-decoration: underline; text-decoration-thickness: 2rem;  text-underline-offset:7rem;}
}

@media (max-width: 1200px){
	.footer-inr h2 span,
	.footer-copyright {font-size: var(--font-44);}
}

@media (max-width: 1023px){
	#footer address strong {margin-bottom: 17rem;}
	.footer-bottom {flex-direction: column; align-items: flex-start; margin-top: 40rem; padding-top: 35rem;}
	/* .footer-copyright,
	.footer-inr h2 span {font-size: var(--font-84);} */
	.footer-inr h2 span {margin-right: 10rem;}
	.footer-menu {margin-top: 20rem; margin-bottom: 0;}
	.footer-menu li {margin-left: 0; margin-right: 30rem;}
}

@media (max-width: 860px){
	.footer-menu {margin-top: 17rem;}
}

@media (max-width: 540px){
	.footer-bottom {margin-top: 25rem; padding-top: 25rem;}
	.footer-inr {padding: 40rem 0;}
	.footer-inr h2 span {margin-right: 0;}
	.footer-inr h2 {display: inline-block; line-height: 1.15;}
	.footer-menu {margin-top: 15rem;}
	.footer-menu li {margin-right: 20rem;}
	#footer address strong {margin-bottom: 14rem;}
	#footer address p:last-child {flex-direction: column; align-items: flex-start;}
	#footer address p:last-child span {margin-right: 0; padding-right: 0;}
	#footer address p:last-child span:not(:last-child)::after {display: none;}

}

/* **************************************** *
 * SCROLL TOP
 * **************************************** */
a.btn-top {position: absolute; overflow: hidden; top: 0; right: 0; display:flex;align-items:center;font-family:var(--lang-en);font-size: var(--font-14); flex-direction:column;transition: var(--trans-01);background: var(--bg-02);width: 90rem;height: 90rem;justify-content: center;border-radius: 3rem;}
a.btn-top::before {position: absolute; left:0; top:100%; content:''; width: 100%; height: 100%; background: var(--w); transition: var(--trans-01);}
a.btn-top span {position: relative; font-weight: 700; transition: var(--trans-01);}
a.btn-top i {display:block; width: 14rem; height:14rem; margin-bottom:9rem; background-repeat: no-repeat; background-position: center; background-size: contain; background-image:url(../img/layout/arrow-basic_w.svg); transform: rotate(-90deg); transition: var(--trans-01);}

@media (hover: hover) and (pointer: fine){
	a.btn-top:hover::before {top: 0;}
	a.btn-top:hover span {color: var(--b-01) !important;}
	a.btn-top:hover i {background-image: url(../img/layout/arrow-basic.svg);}
}

@media (max-width:1023px){
	a.btn-top {width: 82rem; height: 82rem;}
}

@media (max-width:540px){
	.btn-top-wrap{right:20rem;}
	.btn-top-wrap.fixed.active{bottom: 20rem;	}
	a.btn-top{top: -20rem; width:55rem; height:55rem; font-weight:700; font-size:10rem; }
	a.btn-top::before{background-size:10rem;margin-bottom: 2rem;}	
}

