@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 *{background-size:cover; background-repeat: no-repeat;background-position: 50% 50%;}
body *:is(:not(table *)) {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;}
}

/* **************************************** *
 * 사이트 시작시 커버
 * **************************************** */
.main-cover{position:fixed;opacity:1;visibility:visible;top:0;left:0;z-index:999;width:100%;height:100%;background:#000;/* transition:all 1.2s ease 0s; */}
.main-cover > i {position: absolute; left: 50%; top: 50%; transform: translate(-50%, -50%); animation: intro_logo 1s ease-in-out 1s forwards;}
.main-cover > i img {width: 740rem;}
.main-cover .btn-wrap {position: absolute; bottom:50rem; justify-content: center; width: 100%;}
.main-cover .btn-wrap a {backdrop-filter: blur(20rem); -webkit-backdrop-filter: blur(20rem); display: inline-flex; align-items: center; justify-content: center; padding: 18rem 20rem; padding-left: 25rem; border-radius: 100rem; border: 1px solid var(--op-w10); background:var(--op-w10); transition: var(--trans-01);}
.main-cover .btn-wrap a::after {content:''; width: 12rem; height: 12rem; margin-left: 12rem; background-repeat: no-repeat; background-position: center; background-size: contain; background-image: url(../img/common/arrow-basic_w.svg); transition: var(--trans-01);}

.intro-inr {opacity: 0; visibility: hidden; position: absolute; left:0; top:0; width: 100%; height: 100%; animation: intro_inr 1s ease-in-out 2s forwards;}
.intro-bg {overflow: hidden; position: absolute; left:0; top:0; width: 100%; height: 100%;}
.intro-bg figure {overflow: hidden; position: relative; width: 100%; height: 100%;}
.intro-bg figure img {height: 100%; animation: intro_bg 2s 2s forwards;}
.intro-bg i {position: absolute; top: 0; width: 20rem; height: 100%; background: #000; animation:intro_bg_line 2s 4s forwards}
.intro-bg i:nth-child(2) {left: 33.33%;}
.intro-bg i:nth-child(3) {right: 33.33%;}

.intro-txt {position: relative; justify-content: space-between; height: 100%; padding: 80rem;}
.intro-txt h2 {overflow: hidden;}
.intro-txt h2 span {display: inline-block; font-size: 90rem; font-weight: 700; }
.intro-txt h2 br {display: none;}
.intro-txt h2:nth-child(1) {margin-top: 100rem; }
.intro-txt h2:nth-child(1) span {opacity: 0; animation: intro_txt_top 2s 2.8s forwards;}
.intro-txt h2:nth-child(2) {margin-bottom: 120rem; text-align: right;}
.intro-txt h2:nth-child(2) span {opacity: 0; animation: intro_txt_bottom 2s 3.8s forwards;}

 .main-cover.hide {opacity:0;visibility:hidden;z-index: -1;}

@keyframes intro_logo {
	from{opacity:1; transform: translate(-50%, -50%) scale(1);}
	to{opacity:0; transform: translate(-50%, -50%) scale(0.5);}
}

@keyframes intro_inr {
	from{opacity:0; visibility: hidden;}
	to{opacity:1; visibility: visible;}
}

@keyframes intro_bg {
	from{transform: scale(1.5);}
	to{transform: scale(1);}
}

@keyframes intro_bg_line {
	from{clip-path: inset(0 0 0 0);}
	to{clip-path: inset(0 100% 0 0);}
}

@keyframes intro_txt_top {
	from{opacity:0; transform:translateX(-50rem);}
	to{opacity:1; transform:translateX(0);}
}

@keyframes intro_txt_bottom {
	from{opacity:0; transform:translateX(50rem);}
	to{opacity:1; transform:translateX(0);}
}

@media (hover: hover) and (pointer: fine){
	.main-cover .btn-wrap a:hover {color: var(--c-01); background: var(--w);}
	.main-cover .btn-wrap a:hover::after {background-image: url(../img/common/arrow-basic_c.svg);}
}

@media (max-width:1480px){
	.intro-txt {padding: 80rem 60rem;}
}
@media all and (max-width:1200px){
	.intro-txt {padding: 80rem 40rem;}
	.intro-txt h2 span {font-size: 80rem;}
}
@media all and (max-width:1023px){
	.main-cover > i img {width: 540rem;}
	.intro-txt h2 span {font-size: 70rem;}
	.intro-txt h2:nth-child(1) {margin-top: 80rem;}
}

@media (max-width:860px){
	.main-cover > i img {width: 500rem;}
	.intro-txt h2 br {display: block;}
	.intro-txt h2 span {line-height: 1.25;}
	.intro-txt h2:nth-child(1) {margin-top: 66rem;}
}

@media (max-width: 540px){
	.main-cover > i img {width: 200rem;}
	.main-cover .btn-wrap a {padding: 15rem; padding-left: 20rem;}
	.main-cover .btn-wrap a::after {margin-left: 7rem;}

	.intro-bg i {width: 100%; height: 20rem;}
	.intro-bg i:nth-child(2) {left: 0; top: 33.33%;}
	.intro-bg i:nth-child(3) {right: 0; top: auto; bottom: 33.33%;}

	.intro-txt {justify-content: center;gap: 170rem;}
	.intro-txt h2 br {display: none;}
	.intro-txt h2 span {font-size:32rem; font-weight: 700;}
	.intro-txt h2:nth-child(1) {margin-top: 0; text-align: center;}
	.intro-txt h2:nth-child(2) {margin-bottom: 0; text-align: center;}

	@keyframes intro_bg_line {
		from{clip-path: inset(0 0 0 0);}
		to{clip-path: inset(0 0 100% 0);}
	}

	@keyframes intro_txt_top {
		from{opacity:0; transform:translateY(-50rem);}
		to{opacity:1; transform:translateX(0);}
	}

	@keyframes intro_txt_bottom {
		from{opacity:0; transform:translateY(50rem);}
		to{opacity:1; transform:translateX(0);}
	}

}




/* **************************************** *
 * HEADER
 * **************************************** */
#header{position: fixed;z-index:51;width:100%;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; height: 120rem; padding: 0 50rem; transition: var(--trans-01);}

#logo{position:relative; z-index:81;}
#logo a{display:block;width: 197rem;height: 32rem;background-size: contain;background-position:50% 50%;background-repeat:no-repeat;background-image:url(../img/layout/logo_w.svg);}
#logo img{height:47rem;}

#header.on {backdrop-filter: blur(20rem); -webkit-backdrop-filter: blur(20rem); background: var(--op-b10); border-bottom: 1px solid var(--op-w10);}
#header.on .header-inner {height: 100rem;}
#header.on .gnb-full-btn-wrap {top: 26rem;}

/* global btn */
.lang-menu{gap:10rem; margin-right: 50rem;}
.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: 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; height: 60rem;}
.lang-menu .select-link > ul{margin-top: -6rem;}
.lang-menu .select-link > ul a{padding:3rem 15rem; font-size:13rem; text-align:center;}
.lnag-menu__icon{min-width: 20rem;height: 20rem;background-position:50% 50%;background-image:url(../img/common/ic-lang_w.svg);background-repeat:no-repeat; transition: var(--trans-01);}


/* basic gnb */
.gnb-container-wrap {margin-left: auto;}
.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{display: flex; align-items: center; text-align:center;position: relative;/* top: 10rem; */}
#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:25rem 0; font-weight:600; color:#fff; font-size:var(--kr-m); transition:var(--trans-01);}
#gnb .gnb-item .sub-menu > li.on > a{color: var(--c-02) !important;font-weight: 700 !important;}
#gnb .gnb-item > a.on{color: var(--c-01) !important;}

.sub-menu-depth{display: none;} /* 3차메뉴 숨김 */

.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{backdrop-filter: blur(10rem); -webkit-backdrop-filter: blur(10rem); display:none;position:absolute;opacity:0;visibility:hidden;top:62rem; left: 50%; min-width: 120rem; width:100%;padding:15rem; border-radius:max(1.0417vw, 10rem); background:var(--op-w10);border:1rem solid var(--op-w10);box-shadow:10rem 10rem 20rem 0 var(--op-b20); transition:all 0.4s ease-out;transition-property: opacity, transform, visibility;transition-delay:0s, 0s, 0s;transform:translateX(-50%);}
	#gnb .gnb-item .sub-menu{display:block; transition-delay:0.1s;}	
	#gnb .gnb-item .sub-menu > li > a{display:block;position:relative; font-size: var(--font-16); padding:7rem 0rem; color: var(--op-w70); text-align:center;transition:var(--trans-01);}
	#gnb .gnb-item .sub-menu > li > a:hover{font-weight: 700; color:var(--c-02);}
	#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;}	
}

@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-size:100%; background-image:url(../img/layout/logo.svg);}

	.header-inner {height: 100rem; padding: 0 40rem;}

	#logo a {width: 170rem; height: 27rem;}

	.gnb-container-wrap{display:none;}
	.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;}

	.lang-menu{position:absolute;right: 30rem;}
	.lang-menu .select-link{width:50rem;}
}

@media (max-width: 540px){
	#header.color-on #logo a, .scroll-hide #logo a{background-image: url(../img/layout/logo.svg) !important;}
	#logo a{width: 126rem;height:20rem;}

	.header-inner {height: 70rem; padding: 0 20rem;}
	#header.on .header-inner {height: 70rem;}
	#header.on .gnb-full-btn-wrap {top: 10rem;}

	.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{right: 10rem;margin-top: -1rem;}
	.lang-menu .select-link{width:50rem;}
	.lang-menu .select-link__btn {height: 50rem;}
	.lang-menu .select-link > ul{margin-top:0; padding:7rem 0rem;}
	.lang-menu .select-link > ul a{font-size:12rem;}	
	.lang-menu i{font-size: 12rem;}
}

/* **************************************** *
 * full page gnb site map 
 * **************************************** */
 #site-map{position:fixed;opacity:0;visibility:hidden;top:0;left:0;z-index:81;width:100%;/* height:100vh; background:#fff; */transition: none;transition-delay:0.1s;}
 #site-map.active{opacity:1;visibility:visible;transition-delay:0s;/*transition: all 0.5s ease;*/}
 #site-map.active .gnb-item{opacity:1;transform:translateY(0rem);transition: all 0.7s 
ease;}
 #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:has(.non-full){display:flex; justify-content:flex-end; right:0; left:auto; width:100%;}
#site-map:has(.non-full)::before {opacity: 0; visibility: hidden; backdrop-filter: blur(10rem); -webkit-backdrop-filter: blur(10rem); position: fixed; left:0; top:0; content:''; width: 100%; height: 100vh; background: var(--op-b70); transition: .3s;}
#site-map:has(.non-full) .site-map-inner{backdrop-filter: blur(50rem); -webkit-backdrop-filter: blur(50rem); display: block; width:100%; margin:10rem; padding:100rem 60rem 50rem; max-width:650rem; height: auto; max-height: 100%; border-radius:max(1.5625vw, 20rem); background: var(--op-w10); border: 1px solid var(--op-w10);}
#site-map:has(.non-full).active::before {opacity: 1; visibility: visible;} 

 .site-map-inner{display:flex;align-items:center;height:100%;padding: 0 60rem;background: var(--w);}
 .site-map-list .gnb-item > a{font-weight:700; font-size:var(--kr-3xl); color: var(--w);}
 .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:20rem;}
 .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{transition:var(--trans-01);}
 .site-map-list .sub-menu a:hover,
 .site-map-list .sub-menu a.on{color:var(--c-01);}
 .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: 20rem 0;}
 .site-map-list.site-map--row.row-drap .gnb-item .sub-menu > li{display:inline-block; margin-right: 30rem;}
  .site-map-list.site-map--row.row-drap .gnb-item .sub-menu > li a {color: var(--op-w50);}
    .site-map-list.site-map--row.row-drap .gnb-item .sub-menu > li a.on {color: var(--w);}
 .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-02);}
 .site-map__cancle{position:absolute; top:40rem; right:40rem;}

 .site-map-bottom {margin-top: 80rem;}
 .site-map-bottom * {color: var(--op-w40); font-size: var(--kr-sm); font-weight: 300;}
 .site-map-bottom em {display: inline-block; min-width: 57rem; margin-right: 30rem;}
 .site-map-bottom li + li {margin-top: 12rem;}

 .gnb-full-icon{position:relative; width:50rem; height:50rem;}
 .gnb-full-icon > span{display:inline-block; position:absolute; left:12rem; width:26rem; height:2rem; background:#FFF; transition:all 0.3s;}
 .gnb-full-btn .border-01{top:20rem;}
 .gnb-full-btn .border-02{top:0; bottom:0; margin:auto;}
 .gnb-full-btn .border-03{bottom:20rem;}
 .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(0) translateY(3rem) rotate(45deg) !important;}
 .gnb-full-btn.active .border-02{opacity:0;}
 .gnb-full-btn.active .border-03{transform:translateX(0px) translateY(-5rem) rotate(-45deg) !important;}
  .gnb-full-btn-wrap {z-index: 100; position: absolute; right: 50rem; top: 35rem; transition: var(--trans-01);}
 .gnb-full-btn.active .gnb-full-icon > span{background:var(--w);}
 .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(--w);} */
 #header:has(#site-map.active):not(:has(.non-full)) #logo a{background-size:100%; background-image:url(../img/layout/logo.svg);}
  .gnb-full-btn-wrap:has(.gnb-full-btn.active){/* z-index:1; */position: fixed;right: 40rem;top: 40rem;}

@media (hover: hover) and (pointer: fine){
	 .gnb-full-btn:is(:not(.active)):hover .border-01 {top: 18rem;}
	 .gnb-full-btn:is(:not(.active)):hover .border-03 {bottom: 18rem;}
}

@media (max-width:1023px){
	#site-map{display:flex; justify-content:flex-end; right:0; left:auto; width:100%;}
	#site-map::before {opacity: 0; visibility: hidden; backdrop-filter: blur(10rem); -webkit-backdrop-filter: blur(10rem); position: fixed; left:0; top:0; content:''; width: 100%; height: 100vh; background: var(--op-b70); transition: .3s;}
	#site-map .site-map-inner{backdrop-filter: blur(50rem); -webkit-backdrop-filter: blur(50rem); display: block; width:100%; margin:10rem; padding:100rem 60rem 50rem; max-width:600rem; height: auto; max-height: 100%; border-radius:max(1.5625vw, 20rem); background: var(--op-w10); border: 1px solid var(--op-w10);}
	#site-map.active::before {opacity: 1; visibility: visible;} 

	.gnb-full-btn-wrap{display: none;}
	.gnb-full-btn-wrap.mob{display:block;}
	.gnb-full-btn-wrap {top: 25rem; right: 30rem;}
	body:has(.gnb-full-btn-wrap.mob) .gnb-mobile-btn{display:none;}
}

@media (max-width:860px){
	#site-map .site-map-inner {max-width: 520rem; padding: 80rem 50rem 40rem;}
	.site-map-bottom {margin-top: 70rem;}
} 

@media (max-width:540px){
	#site-map {height: 100%}
	#site-map .site-map-inner {display: flex; flex-direction: column; justify-content: flex-start; align-items: flex-start; padding: 80rem 30rem 40rem; border-radius: 10rem;}
	.site-map-list.site-map--row.row-drap .gnb-item .sub-menu {margin: 15rem 0;}
	.site-map-list.site-map--row.row-drap .gnb-item .sub-menu > li {margin-right: 20rem;}
	.site-map-bottom {margin-top: auto;}
	.gnb-full-btn-wrap:has(.gnb-full-btn.active) {right: 20rem; top: 23rem;}
	.gnb-full-btn-wrap {top: 10rem; right: 15rem;}
} 

/* **************************************** *
 * footer
 * **************************************** */
#footer *{color:#fff;}

#footer {position:relative;z-index: 50; padding: var(--space100) 0 var(--space50); background: var(--bg-dark);}
#footer .btn-basic {position: absolute; right: 0; top: 100rem;}
#footer .btn-basic i {width: 14rem; height: 14rem; margin-right: 10rem; background: url(../img/layout/ic-inquiry.svg) no-repeat center / contain;}
.footer-logo {width: 204rem; height: 33rem; background: url(../img/layout/logo.svg) no-repeat center / contain;}
.footer-info address {margin-top:50rem;}
.footer-info address * {font-size: var(--kr-sm); font-weight: 600;}
.footer-info address p {display: flex; align-items: center;}
.footer-info address p + p {margin-top: 12rem;}
.footer-info address p i {min-width: 57rem; margin-right: 30rem;}
.footer-bottom {margin-top: 40rem; padding-top: 30rem; border-top: 1px solid var(--op-w10);}
.footer-menu {display: inline-flex; align-items: center;}
.footer-menu a {margin-right: 30rem; font-size: var(--kr-sm); font-weight: 600; color: var(--op-w40) !important;}
.footer-copyright {font-weight: 600;}


@media (max-width: 540px){
	.footer-logo {width: 137rem; height: 22rem;}
	#footer address {margin-top: 30rem;}
	.footer-info address p + p {margin-top: 5rem;}
	.footer-info address * {font-weight: 400;}

	#footer .btn-basic {position: relative; right: auto; top: auto; margin-top: 40rem;}
	.footer-bottom {flex-direction: column; align-items: flex-start; margin-top: 25rem; padding-top: 25rem;}
	.footer-copyright {margin-top: 20rem;}
}

/* **************************************** *
 * 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{position: absolute; top: -27rem; right: 0; display:flex;align-items:center;font-weight: 700; font-size: var(--kr-xs);flex-direction:column;transition: var(--trans-01);background: var(--op-w10);width: 80rem;height: 80rem;justify-content: center;border-radius: 100%;font-weight: 700; border: 1px solid var(--op-w10);}
a.btn-top i{position:relative; margin-bottom:10rem;}
a.btn-top::before{content:"";display:block;height:12rem;margin-bottom:6rem;background:url(../img/common/arrow-basic_w.svg) no-repeat 50% 50%;transform: rotate(270deg);min-width:12rem;}

@media (max-width:540px){
	a.btn-top {top: -20rem; width:55rem; height:55rem; font-weight:700; font-size:10rem;}
}

