/* Scroll Animation */
@media(prefers-reduced-motion:no-preference){
	section:has(:where([data-se*="-left"], [data-se*="-right"], [data-se="flip-Y"])){ overflow: clip visible; }
	span[data-se]{ display: inline-block; }
	.seActive [data-se]:not([data-se*="parallax"], [data-se^="clip-"]),
	.seActive[data-se]:not([data-se*="parallax"], [data-se^="clip-"]){ transition-duration: .6s; }
	[data-se="blur"]{ filter: blur(20rem); }
	[data-se="clip-right"]{ clip-path: inset(0 100% 0 0); }
	[data-se="clip-left"]{ clip-path: inset(0 0 0 100%); }
	[data-se="clip-down"]{ clip-path: inset(0 0 100% 0); }
	[data-se*="flip-"]{ backface-visibility: hidden; }
	[data-se="flip-up"]{ transform: perspective(2500rem) rotateX(-100deg); }
	[data-se="flip-Y"]{ opacity: 0; }
	[data-se="hidden-up"]{ transform: translateY(30rem); clip-path: inset(0 0 100%); }
	[data-se="hidden-right"]{ transform: translateX(-30rem); clip-path: inset(0 100% 0 0); }
	[data-se="hidden-left"]{ transform: translateX(30rem); clip-path: inset(0 0 0 100%); }
	[data-se*="slide-"]:not(.seActive){ opacity: 0; }
	[data-se="slide-up"]{ transform: translateY(40rem); }
	[data-se="slide-left"]{ transform: translateX(40rem); }
	[data-se="slide-right"]{ transform: translateX(-40rem); }
	[data-se="swaying-top"]{ transform: perspective(400px) rotateX(90deg); transform-origin: top; backface-visibility: hidden; }
	.seActive[data-se="blur"]{ filter: blur(0); }
	.seActive[data-se*="clip-"]{ clip-path: inset(0); }
	.seActive[data-se*="flip-"]{ transform: perspective(2500rem) rotateX(0deg); }
	.seActive[data-se="flip-Y"]{ animation: flip-Y 1s both; }
	.seActive[data-se*="hidden-"]{ transform: translate(0); clip-path: inset(0); }
	.seActive[data-se*="slide-"]{ transform: translate(0); }
	@keyframes flip-Y {
		0%{ transform: perspective(400rem) rotateY(0deg); opacity: 0; }
		20%{ transform: perspective(400rem) rotateY(-30deg); }
		50%{ transform: perspective(400rem) rotateY(20deg); }
		75%{ transform: perspective(400rem) rotateY(-10deg); }
		100%{ transform: perspective(400rem) rotateY(0deg); opacity: 1; }
	}
	.seActive[data-se="swaying-top"]{ animation: swaying-top 1s both; }
	@keyframes swaying-top{
		0%{ transform: perspective(400px) rotateX(90deg); }
		20%{ transform: perspective(400px) rotateX(-60deg); }
		40%{ transform: perspective(400px) rotateX(20deg); }
		60%{ transform: perspective(400px) rotateX(-10deg); }
		80%{ transform: perspective(400px) rotateX(5deg); }
		100%{ transform: perspective(400px) rotateX(0deg); }
	}
	.seActive [data-se-delay="50"], .seActive[data-se-delay="50"]{ transition-delay: .05s; }
	.seActive [data-se-delay="100"], .seActive[data-se-delay="100"]{ transition-delay: .1s; }
	.seActive [data-se-delay="150"], .seActive[data-se-delay="150"]{ transition-delay: .15s; }
	.seActive [data-se-delay="200"], .seActive[data-se-delay="200"]{ transition-delay: .2s; }
	.seActive [data-se-delay="250"], .seActive[data-se-delay="250"]{ transition-delay: .25s; }
	.seActive [data-se-delay="300"], .seActive[data-se-delay="300"]{ transition-delay: .3s; }
	.seActive [data-se-delay="350"], .seActive[data-se-delay="350"]{ transition-delay: .35s; }
	.seActive [data-se-delay="400"], .seActive[data-se-delay="400"]{ transition-delay: .4s; }
	.seActive [data-se-delay="450"], .seActive[data-se-delay="450"]{ transition-delay: .45s; }
	.seActive [data-se-delay="500"], .seActive[data-se-delay="500"]{ transition-delay: .5s; }
	.seActive [data-se-delay="600"], .seActive[data-se-delay="600"]{ transition-delay: .6s; }
	.seActive [data-se-delay="700"], .seActive[data-se-delay="700"]{ transition-delay: .7s; }
	@media(min-width: 768px){
		[data-se] [data-se="clip-right"]{ clip-path: inset(0 100% 0 0); }
		[data-se] [data-se="clip-left"]{ clip-path: inset(0 0 0 100%); }
		[data-se] [data-se="clip-down"]{ clip-path: inset(0 0 100% 0); }
		[data-se] [data-se="slide-up"]{ transform: translateY(40rem); opacity: 0; }
		[data-se] [data-se="slide-left"]{ transform: translateX(40rem); opacity: 0; }
		[data-se] [data-se="slide-right"]{ transform: translateX(-40rem); opacity: 0; }
		.seActive[data-se] [data-se*="clip-"]{ clip-path: inset(0); }
		.seActive[data-se] [data-se*="hidden-"]{ transform: translate(0); clip-path: inset(0); }
		.seActive[data-se] [data-se*="flip-"]{ transform: perspective(2500rem) rotateX(0deg); }
		.seActive[data-se] [data-se*="slide-"]{ transform: translate(0); opacity: 1; }
		.seActive[data-se]:not([data-se-offset]) [data-se]{ transform: translate(0); opacity: 1; }
		[data-se-column] [data-se].seActive{ transition-delay: calc(var(--index) * calc(var(--delay) * 1ms)); animation-delay: calc(var(--index) * calc(var(--delay) * 1ms)); }
	}
	@media(min-width:1280px){
		.seActive[data-se^="clip-"]{ transition-duration: 1s; }
		[data-se-column="2"] > *:nth-child(2n+1) [data-se].seActive,
		[data-se-column="2"] [data-se].seActive:nth-child(2n+1){ transition-delay: calc(0 * calc(var(--delay) * 1ms)); }
		[data-se-column="2"] > *:nth-child(2n+2) [data-se].seActive,
		[data-se-column="2"] [data-se].seActive:nth-child(2n+2){ transition-delay: calc(1 * calc(var(--delay) * 1ms)); }
		[data-se-column="2"] > *:nth-child(3n+1) [data-se].seActive,
		[data-se-column="3"] [data-se].seActive:nth-child(3n+1){ transition-delay: calc(0 * calc(var(--delay) * 1ms)); }
		[data-se-column="3"] > *:nth-child(3n+2) [data-se].seActive,
		[data-se-column="3"] [data-se].seActive:nth-child(3n+2){ transition-delay: calc(1 * calc(var(--delay) * 1ms)); }
		[data-se-column="3"] > *:nth-child(3n+3) [data-se].seActive,
		[data-se-column="3"] [data-se].seActive:nth-child(3n+3){ transition-delay: calc(2 * calc(var(--delay) * 1ms)); }
		[data-se-column="4"] > *:nth-child(4n+1) [data-se].seActive,
		[data-se-column="4"] [data-se].seActive:nth-child(4n+1){ transition-delay: calc(0 * calc(var(--delay) * 1ms)); }
		[data-se-column="4"] > *:nth-child(4n+2) [data-se].seActive,
		[data-se-column="4"] [data-se].seActive:nth-child(4n+2){ transition-delay: calc(1 * calc(var(--delay) * 1ms)); }
		[data-se-column="4"] > *:nth-child(4n+3) [data-se].seActive,
		[data-se-column="4"] [data-se].seActive:nth-child(4n+3){ transition-delay: calc(2 * calc(var(--delay) * 1ms)); }
		[data-se-column="4"] > *:nth-child(4n+4) [data-se].seActive,
		[data-se-column="4"] [data-se].seActive:nth-child(4n+4){ transition-delay: calc(3 * calc(var(--delay) * 1ms)); }
		[data-se-column="5"] > *:nth-child(5n+1) [data-se].seActive,
		[data-se-column="5"] [data-se].seActive:nth-child(5n+1){ transition-delay: calc(0 * calc(var(--delay) * 1ms)); }
		[data-se-column="5"] > *:nth-child(5n+2) [data-se].seActive,
		[data-se-column="5"] [data-se].seActive:nth-child(5n+2){ transition-delay: calc(1 * calc(var(--delay) * 1ms)); }
		[data-se-column="5"] > *:nth-child(5n+3) [data-se].seActive,
		[data-se-column="5"] [data-se].seActive:nth-child(5n+3){ transition-delay: calc(2 * calc(var(--delay) * 1ms)); }
		[data-se-column="5"] > *:nth-child(5n+4) [data-se].seActive,
		[data-se-column="5"] [data-se].seActive:nth-child(5n+4){ transition-delay: calc(3 * calc(var(--delay) * 1ms)); }
		[data-se-column="5"] > *:nth-child(5n+5) [data-se].seActive,
		[data-se-column="5"] [data-se].seActive:nth-child(5n+5){ transition-delay: calc(4 * calc(var(--delay) * 1ms)); }
		[data-se-column="6"] > *:nth-child(6n+1) [data-se].seActive,
		[data-se-column="6"] [data-se].seActive:nth-child(6n+1){ transition-delay: calc(0 * calc(var(--delay) * 1ms)); }
		[data-se-column="6"] > *:nth-child(6n+2) [data-se].seActive,
		[data-se-column="6"] [data-se].seActive:nth-child(6n+2){ transition-delay: calc(1 * calc(var(--delay) * 1ms)); }
		[data-se-column="6"] > *:nth-child(6n+3) [data-se].seActive,
		[data-se-column="6"] [data-se].seActive:nth-child(6n+3){ transition-delay: calc(2 * calc(var(--delay) * 1ms)); }
		[data-se-column="6"] > *:nth-child(6n+4) [data-se].seActive,
		[data-se-column="6"] [data-se].seActive:nth-child(6n+4){ transition-delay: calc(3 * calc(var(--delay) * 1ms)); }
		[data-se-column="6"] > *:nth-child(6n+5) [data-se].seActive,
		[data-se-column="6"] [data-se].seActive:nth-child(6n+5){ transition-delay: calc(4 * calc(var(--delay) * 1ms)); }
		[data-se-column="6"] > *:nth-child(6n+6) [data-se].seActive,
		[data-se-column="6"] [data-se].seActive:nth-child(6n+6){ transition-delay: calc(5 * calc(var(--delay) * 1ms)); }
	}
	@media(max-width: 1279px){
		.seActive[data-se^="clip-"]{ transition-duration: .6s; }
		[data-se-column] [data-se*="slide-"]{ transform: translateY(40rem); }
		[data-se-column] [data-se*="slide-"].seActive{ transform: translate(0); }
	}
	@media(max-width: 1279px) and (min-width: 768px){
		/* :is([data-se-column="3"], [data-se-column="4"]) > [data-se].seActive:nth-child(odd){ transition-delay: 0s; }
		:is([data-se-column="3"], [data-se-column="4"]) > [data-se].seActive:nth-child(even){ transition-delay: calc(var(--delay) * 1ms); } */
		:is([data-se-column="5"], [data-se-column="6"]) > [data-se].seActive:is(:nth-child(6n+1), :nth-child(6n+4)){ transition-delay: calc( 0 * calc(var(--delay) * 1ms)); }
		:is([data-se-column="5"], [data-se-column="6"]) > [data-se].seActive:is(:nth-child(6n+2), :nth-child(6n+5)){ transition-delay: calc( 1 * calc(var(--delay) * 1ms)); }
		:is([data-se-column="5"], [data-se-column="6"]) > [data-se].seActive:is(:nth-child(6n+3), :nth-child(6n+6)){ transition-delay: calc( 2 * calc(var(--delay) * 1ms)); }
	}
	@media(max-width: 767px){
		#wrap [data-se-delay]{ transition-delay: 0s; }
		[data-se-column] > *:nth-child(odd){ transition-delay: 0s; }
		[data-se-column] > *:nth-child(even){ transition-delay: calc(var(--delay) * 1ms); }
	}
	@keyframes svgAni{
		0%{ stroke-dasharray: var(--totalLength); stroke-dashoffset: var(--totalLength); }
		100%{ stroke-dasharray: var(--totalLength); stroke-dashoffset: 0; }
	}
	svg.se{ opacity: 1; transform: translate(0); }
	svg.active{ animation: svgAni 1s linear both; }

	/* stroke-dasharray 최대값 */
	/* svg *{ stroke-dasharray: var(--totalLength); stroke-dashoffset: var(--totalLength); opacity: 1; transform: translate(0); }
	svg.seActive *{ animation: svgAni 1s linear both; } */
}

/* inner */
.wrapper{ position: relative; margin: 0 auto; max-width: calc(var(--inr) * 1rem); width: calc(var(--inrWidth) * 100%); }
.inr{ position: relative; margin: 0 auto; max-width: calc(var(--inr) * 1rem); width: calc(var(--inrWidth) * 100%); }
.inr-wide{ max-width: calc(var(--inrWide) * 1rem); }
.inr-narrow{ max-width: calc(var(--inrNar) * 1rem); }

/* header */
:root{
	--header_height: 80rem;
}
header{ position: absolute; width: 100%; height: var(--header_height); z-index: 10; }
header .inr{ display: flex; justify-content: center; align-items: center; height: 100%; position: static;}
.logo{ position: absolute; display: inline-block; font-size: 0; left: 80rem;}
.logo__a{ display: inline-block; }
.logo__img{  min-height: 20px; font-size: 1rem; }

@media(max-width:1280px){
	.logo {left: 20rem;}

}

header nav{ position: relative; display: flex; align-items: center; height: 100%; color: var(--black); }
header .gnb{ position: relative; display: flex; height: 100%; }
header .gnb > li{ position: relative; display: inline-block; height: 100%; pointer-events: auto; }
header .gnb [data-gnb="1"]{ display: flex; align-items: center; height: 100%; padding: 0 44.5rem; font-size: 18rem; font-weight: 500; color: #fff;}
header .gnb .sub_menu{ visibility: hidden; position: absolute; top: 75%; left: 50%; transform: translateX(-50%); min-width: 120px; width: max-content; background: #fff; border: 1px solid #ddd; opacity: 0; }
header .gnb li:hover .sub_menu{ visibility: visible; top: 80%; opacity: 1; }
header .gnb [data-gnb="2"]{ display: block; padding: 14px; color: #333; border-top: 1px solid #ddd; font-size: 14px; text-align: center; }
header .gnb [data-gnb="2"]:hover{ background: var(--primary); color: #fff; }
header .gnb .sub_menu li:first-child [data-gnb="2"]{ border-top: 0; }


/* mobile-menu */
.btn_menu{position: absolute; right: 0; top: 0; width: 80rem; height: 80rem; padding: 24rem; gap: 10rem; box-sizing: border-box; background: var(--primary); color: inherit; z-index: 3; display: flex; flex-wrap: wrap;}
.btn_menu span{ display: block; width: 10rem; height: 10rem; background: #ededed; }
/* .btn_menu span + span{ margin-top: 7rem; } */
@media(prefers-reduced-motion:no-preference){
	header,
	.logo__img,
	.gnb .sub_menu,
	.btn_menu span{ transition: .4s; }
}
@media(max-width: 1279px){
	:root{
		--header_height: 80rem;
	}
	header nav{ display: none; }
}
@media(max-width: 767px){
	:root{
		--header_height: 50rem;
	}
	.btn_menu {width: 50rem; height: 50rem; padding: 15rem;}
	.btn_menu span {width: 5rem; height: 5rem;}

}
@media(max-width: 520px){
	.logo__img {width: 70%;}

}

/* 모바일 메뉴 */
.mGnb{ overflow: hidden auto; position: fixed; top: 0; right: 0; transform: translateX(100%); max-width: 450rem; width: 100%; height: 100%; background: #083b5e; z-index: 3; } 
.mGnb.active{ transform: translateX(0); }
.mGnb__header{ display: flex; align-items: center; justify-content: flex-end; height: var(--header_height); }
.mGnb [data-gnb="1"]{ position: relative; display: block; padding: 15rem 25rem; border-bottom: 1rem solid #eaeaea; color: #fff; }
.mGnb > ul > li:first-child > a{ border-top: 1rem solid #eaeaea; }
.mGnb [data-gnb="1"].open::before{ content: ''; position: absolute; top: 50%; transform: translateY(-50%); right: 10rem; display: block; width: 11rem; height: 7rem; background: url('/images/common/menu_button.svg') no-repeat 50% 0 / contain; }
.mGnb [data-gnb="1"].active::before{ transform: translateY(-50%) rotate(180deg); }
.mGnb .sub_menu{ display: none; background: #efefef; }
.mGnb .sub_menu > li{ border-bottom: 1rem solid #dedede; }
.mGnb [data-gnb="2"]{ position: relative; display: block; padding: 15rem 25rem; font-size: 14rem; color: var(--black); }

.mGnb .btn_close{ opacity: 0; flex: 0 0 25rem; position: relative; margin-right: -100vw; display: block; width: 22rem; height: 22rem; background: 0; font-size: 0; }
.mGnb.active .btn_close{ opacity: 1; margin-right: 15rem; }
.mGnb .btn_close::before,
.mGnb .btn_close::after{ content: ''; position: absolute; top: 50%; left: 0; display: block;  width: 100%; height: 1rem; background: #fff; transform: translateY(-50%) rotate(45deg); }
.mGnb .btn_close::after{ transform: translateY(-50%) rotate(-45deg); }

.area_util_m {display: flex; flex-direction: column; padding: 30rem;}
.area_util_m .logo {position: static; text-align: center;}
.area_util_m .logo .logo__a {width: 100%;}
.area_util_m .logo .logo__a .logo__img {width: 100%;}
.area_util_m > div > a {display: block; text-align: center; background: var(--primary); color: #fff; border-radius: 20rem; padding: 15rem 30rem; margin-top: 15rem;}
.area_util_m > div > a img {margin-right: 5rem;}

.cover{ position: fixed; width: 100%; height: 100%; left: 0; top: 0; background: rgba(0, 0, 0, .4); visibility: hidden; opacity: 0; z-index: 2; }
.cover.active{ visibility: visible; opacity: 1; }
@media(prefers-reduced-motion: no-preference){
	.mGnb{ transition: .5s ease-out; }
	.mGnb .btn_close{ transition: .8s; }
	.mGnb [data-gnb="1"]{ transition: .3s; }
	.mGnb [data-gnb="1"].open::before{ transition: .4s; }
	.cover{ transition: .4s; }
}

@media(max-width: 520px){
	.mGnb {max-width: 320rem;}

}
 

/* footer */
.f_logo {font-size: 20rem; font-weight: 500; margin-bottom: 25rem;}
footer{ padding: 35rem 0 45rem; background: #444444; color: #ededed; position: relative; z-index: 10; font-size: 14rem;}
footer .inr {max-width: 1560rem;}
footer .address {display: flex; justify-content: space-between; align-items: flex-end;}
footer .address span {font-weight: 300; margin-right: 16rem;}
footer .address span b {margin-right: 5rem;}
.footer__copyright{ margin-top: 26rem; }

@media(max-width: 767px){
	footer .address {flex-direction: column; align-items: flex-start;}
	footer .address span {display: block;}
	address br {display: none; }
	footer .address p {margin-top: 20rem;}
}