@import url('https://fonts.googleapis.com/css2?family=Marcellus&family=Noto+Sans:ital,wght@0,100..900;1,100..900&family=Noto+Serif+KR:wght@200..900&family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');
@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-1Thin.woff') format('woff');
    font-weight: 100;
    font-display: swap;
}

@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-2ExtraLight.woff') format('woff');
    font-weight: 200;
    font-display: swap;
}

@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-3Light.woff') format('woff');
    font-weight: 300;
    font-display: swap;
}

@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-4Regular.woff') format('woff');
    font-weight: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-5Medium.woff') format('woff');
    font-weight: 500;
    font-display: swap;
}

@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-6Bold.woff') format('woff');
    font-weight: 600;
    font-display: swap;
}

@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-7ExtraBold.woff') format('woff');
    font-weight: 700;
    font-display: swap;
}

@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-8Heavy.woff') format('woff');
    font-weight: 800;
    font-display: swap;
}

@font-face {
    font-family: 'Escoredream';
    src: url('https://cdn.jsdelivr.net/gh/projectnoonnu/noonfonts_six@1.2/S-CoreDream-9Black.woff') format('woff');
    font-weight: 900;
    font-display: swap;
}
@font-face {
    font-family: PT;
    src: url(../fonts/Pretendard-Light.woff2);
    font-weight: 300;
}
@font-face {
    font-family: PT;
    src: url(../fonts/Pretendard-Regular.woff2);
    font-weight: 400;
}
@font-face {
    font-family: PT;
    src: url(../fonts/Pretendard-Medium.woff2);
    font-weight: 500;
}
@font-face {
    font-family: PT;
    src: url(../fonts/Pretendard-Bold.woff2);
    font-weight: 700;
}
@font-face {
    font-family: AV;
    src: url(../fonts/Antro_Vectra.woff2);
    font-weight: 400;
}
@font-face {
    font-family: AV;
    src: url(../fonts/Antro_Vectra_Bolder.woff2);
    font-weight: 700;
}
@font-face {
    font-family: CC;
    src: url(../fonts/CarismaClassic-600DemiBold.woff2);
    font-weight: 600;
}
@font-face {
    font-family: CG;
    src: url(../fonts/CarismaGothic-500Medium.woff2);
    font-weight: 500;
}
@font-face {
    font-family: NS;
    src: url(../fonts/NanumSquareR.woff2);
    font-weight: 400;
}
@font-face {
    font-family: NS;
    src: url(../fonts/NanumSquareB.woff2);
    font-weight: 700;
}
@font-face {
    font-family: NM;
    src: url(../fonts/NanumMyeongjo.woff2);
    font-weight: 400;
}

@font-face {
    font-family: brown;
    src: url(../fonts/Brown_Regular.woff2);
    font-weight: 400;
}
@font-face {
    font-family: brown;
    src: url(../fonts/Brown-Light.woff2);
    font-weight: 300;
}
@font-face {
    font-family: SHNEO;
    src: url(../fonts/SpoqaHanSansNeo-Bold.woff2);
    font-weight: 700;
}
@font-face {
    font-family: SHNEO;
    src: url(../fonts/SpoqaHanSansNeo-Medium.woff2);
    font-weight: 500;
}
@font-face {
    font-family: SHNEO;
    src: url(../fonts/SpoqaHanSansNeo-Regular.woff2);
    font-weight: 400;
}
@font-face {
    font-family: SHNEO;
    src: url(../fonts/SpoqaHanSansNeo-Light.woff2);
    font-weight: 300;
}

*{margin : 0;padding : 0; box-sizing: border-box;}
li{list-style: none;}
a{text-decoration: none; color : inherit}
img{display: block;max-width: 100%;}
.moView{display : none !important}

html{scroll-behavior: smooth;}

body.fixed{overflow: hidden;}
/* 마우스오버 ANIMATION CSS */
.hover_ani{position:relative;/*width:500px;height:500px;*/}
.hover_ani>span.line{position:absolute;transition:width .5s,height .5s;background:#111;z-index: 10;}
.hover_ani>span.line:nth-child(1){width:0px;height:1px;left:0;top:0;}
.hover_ani>span.line:nth-child(2){width:1px;height:0px;right:0;top:0;}
.hover_ani>span.line:nth-child(3){width:0px;height:1px;right:0;bottom:0;}
.hover_ani>span.line:nth-child(4){width:1px;height:0px;left:0;bottom:0;}
.hover_ani:hover>span.line:nth-child(1),.hover_ani:hover>span.line:nth-child(3){width:100%;height:1px;}
.hover_ani:hover>span.line:nth-child(2),.hover_ani:hover>span.line:nth-child(4){width:1px;height:100%;}
/* 마우스오버 ANIMATION CSS END*/

/**/
.header{width : 100%;height : 100px;position : fixed;left : 0;top : 0;background : rgba(255,255,255,0);z-index: 1001;border-bottom : 1px solid transparent;transition : background .5s, border-color .5s, transform 1s;padding : 0 4.42vw; transform: translateY(-100%);}
.header.show{transform: translateY(0);}
.header::after{position : absolute;content : '';width : 100%;height : 0;background : #fff;top : calc(100% + 1px);left : 0;transition : height .5s;z-index : -1;}
.header.on{background : #fff;border-bottom : 1px solid rgba(0,0,0,0.2);}
.header.hide{transform: translateY(-100%);}
.header.on::after{height : 0;}

.header.sub{position : absolute;}
.header-inner{display: flex;align-items: center;justify-content: space-between;width : 100%;max-width: 1750px;min-width: 1200px;height : 100%;margin : 0 auto;}
/* @media(max-width : 1600px){
	.header{padding : 0 30px;}
	.header-inner{width : 100%;min-width : 0;}
} */
.header-right{display: flex;align-items: center;gap : 30px;flex-shrink: 0;height: 100%;}

.header .customer{display: flex; color : #fff; align-items: center; gap : 8px; font-size: 15px; font-family: PT; font-weight: 500; transition : color .5s;}
.header.dark .customer{color : #000c42}
/* .header.sub .customer{color : #000c42} */
.header.on .customer{color : #000c42}

.header-tel{display: flex;align-items: center;gap : 9px;font-size: 30px;color : #fff;transition: color .5s; font-family: DINPro; font-weight: bold;}
.header-tel-icon{width : 27px;height : 25px;background : url(../images/common/header-tel-icon.png)no-repeat center / contain; transition : background .5s;}
.header.dark .header-tel{color : #000c42;}
/* .header.sub .header-tel{color : #000c42;} */
.header.on .header-tel{color : #000c42;}

.main-logo{width : 170px;height : 51px;background : url(../images/common/main-logo.png)no-repeat center / contain; transition : background .5s;}
.header.dark .main-logo{background : url(../images/common/main-logo-dark.png)no-repeat center / contain}
/* .header.sub .main-logo{background : url(../images/common/main-logo-dark.png)no-repeat center / contain} */
.header.on .main-logo{background : url(../images/common/main-logo-dark.png)no-repeat center / contain}
.main-logo > a{display: block;width : 100%;height : 100%;font-size: 0;line-height: 0;color : transparent;}

.header-nav{display: flex;justify-content: center;height : 100%;}
.header-nav > ul{display: flex;align-items: center;height : 100%;white-space : nowrap;}
.header-nav > ul > li{display : flex;justify-content : center;height : 100%;position : relative;}
.header-nav > ul > li > a{display: flex;align-items: center;height : 100%;padding : 0 23px;font-size: 18px;letter-spacing: -0.04em;color : #fff;position : relative; font-family: SHNEO; transition : color .5s;}
/* .header.sub .header-nav > ul > li > a{color : #000c42;} */
.header.dark .header-nav > ul > li > a{color : #000c42;}
.header.on .header-nav > ul > li > a{color : #000c42;}
.header.on .header-nav > ul > li:hover > a{font-weight: 700;color : #214757 !important;}
.header-nav > ul > li > a::after{position : absolute;content : '';left : 50%;top : 0;width : 1px;height : 0;background : #214757;transform: translateX(-50%);transition : height .5s, background .5s;}
/* .header-nav > ul > li:hover > a::after{height : 20px;}
.header-nav > ul > li > a::before{position : absolute;content : '';width : 5px;height : 5px;background : #214757;border-radius: 50%;top : 20px;left : 50%;transform: translateX(-50%) scale(0);transition : transform .5s, background .5s;}
.header-nav > ul > li:hover > a::before{transform: translateX(-50%) scale(1);} */
.header-nav > ul > li > ul {position : absolute;top : 100%;padding : 20px 0 0;opacity : 0;pointer-events : none;transition : opacity .5s;}
.header.on .header-nav > ul > li > ul{opacity : 1;pointer-events : all;}
.header-nav > ul > li > ul > li > a{display : block;color : #111;font-size : 14px;text-align : center;padding : 3px 0;letter-spacing : -0.04em;}
.header-nav > ul > li > ul > li > a:hover{font-weight : 500;color : #981B1E;}

.header.dark .header-tel-icon{background : url(../images/common/header-tel-icon-dark.png)no-repeat center / contain}
/* .header.sub .header-tel-icon{background : url(../images/common/header-tel-icon-dark.png)no-repeat center / contain} */
.header.on .header-tel-icon{background : url(../images/common/header-tel-icon-dark.png)no-repeat center / contain}

/**/
.hamburger-nav{display: none;}
.hamburger{display: none;}
.hamburger-nav{display : none;}
.hamburger-dim{display : none;}

/**/

/* 오리발 */
.page_info{display: flex;flex-direction: column;justify-content: center;background : #f7f7f7;max-width : 1408px;border : 1px solid #e5e5e5;padding : 25px 60px 25px 120px;min-height : 120px;font-size: 13px;letter-spacing: -0.04em;color : #777;position : relative;margin : 2em auto 0;}
.page_info::after{display: flex;align-items: center;justify-content: center;color : #fff;font-size: 36px;font-weight: 700;content : '!';position : absolute;width : 70px;height : 70px;border-radius: 50%;background : #ddd;left : 25px;top : 50%;transform: translateY(-50%);}
.page_info > li{position : relative;padding-left : 14px;}
.page_info > li + li{margin-top : 3px;}
.page_info > li::before{content : '※ ';position : absolute;left : 0;font-size: 11px;line-height: 18px;}

.page_info > li p{display : flex; font-size : 12px;gap : 5px;}
.page_info > li p:nth-of-type(1){margin-top: 5px;}
.page_info > li p + p{margin-top: 3px;}

.page_info > li > p b{white-space : nowrap;}

#footer { overflow: visible; }

.footer {position : relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  background: #14213f;
  padding: 50px 129px;
}

.footer-inner {
  display: flex;
  align-items: center;
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
  gap: 65px;
}

/* 좌측 로고 */
.footer-logo {
  flex-shrink: 0;
}
.footer-logo img {
  width: 110px;
  height: auto;
  display: block;
}

/* 중앙 정보 (좌측에 구분선) */
.footer-info {
  flex: 1;
  padding-left: 59px;
  border-left: 1px solid rgba(255, 255, 255, .15);
}

.footer-tit {
  font-family: 'Noto Sans KR', sans-serif;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -.05em;
  color: #fff;
  margin-bottom: 12px;
}
.footer-tit span { color: rgba(255, 255, 255, .35); margin: 0 8px; font-weight: 400; }

.footer-detail {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-bottom: 16px;
  list-style: none;
  padding: 0;
}
.footer-detail li {
  font-family: 'Noto Sans KR', sans-serif;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: -.05em;
  line-height: 1.5;
  color: rgba(255, 255, 255, .6);
}
.footer-detail li span { color: rgba(255, 255, 255, .3); margin: 0 6px; }

.footer-notice {
  display: flex;
  flex-direction: column;
  margin-bottom: 40px;
  list-style: none;
  padding: 0;
}
.footer-notice li {
  font-family: PT, 'Noto Sans KR', sans-serif;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: -.025em;
  line-height: 1.5;
  color: rgba(255, 255, 255, .45);
}

.footer-copy {
  font-family: PT, 'Noto Sans KR', sans-serif;
  font-size: 12px;
  letter-spacing: .05em;
  color: rgba(255, 255, 255, .35);
}

/* 우측 전화 */
.footer-tel {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: DINPro; 
  font-size: 36px;
  font-weight: bold;
  letter-spacing: .01em;
  color: #fff;
  padding-bottom: 80px;
}
.footer-tel img {
  width: 28px;
  height: auto;
  display: block;
}
.top-btn {z-index:99;position: absolute; top: 0; right: 3.65vw; display: inline-block; margin-top: -30px; cursor:pointer; }
/**/


/* 오리발 */
.page_info{display: flex;flex-direction: column;justify-content: center;background : #f7f7f7;max-width : 1408px;border : 1px solid #e5e5e5;padding : 25px 60px 25px 120px;min-height : 120px;font-size: 13px;letter-spacing: -0.04em;color : #777;position : relative;margin : 2em auto 0;}
.page_info::after{display: flex;align-items: center;justify-content: center;color : #fff;font-size: 36px;font-weight: 700;content : '!';position : absolute;width : 70px;height : 70px;border-radius: 50%;background : #ddd;left : 25px;top : 50%;transform: translateY(-50%);}
.page_info > li{position : relative;padding-left : 14px;}
.page_info > li + li{margin-top : 3px;}
.page_info > li::before{content : '※ ';position : absolute;left : 0;font-size: 11px;line-height: 18px;}

.page_info > li p{display : flex; font-size : 12px;gap : 5px;}
.page_info > li p:nth-of-type(1){margin-top: 5px;}
.page_info > li p + p{margin-top: 3px;}

.page_info > li > p b{white-space : nowrap;}

.hamburger-scroll{display : flex; flex-direction : column; align-items : center; position : absolute; right : 30px; gap : 7px; bottom : 102px;}
.hamburger-progress{display : flex; justify-content : center; width : 1px;height : 108px; background: rgba(0,0,0,0.1);position :relative;}
.hamburger-progress::after{position : absolute; content :''; width : 10px;height : 10px; border-radius : 50%; top : 0; background: #303D47; transform : translateY(0); animation : hamburger-dot 2s both infinite}
@keyframes hamburger-dot{
	100%{top : 100%; transform : translateY(-100%)}
}
.hamburger-scroll > span{font-family : trajan-pro-3; font-size : 14px; writing-mode : vertical-lr}

@media (max-width : 1200px){
	.quick-menu{display : none;}
	.moView{display : block !important;}
	.pcView{display : none !important;}
	.header{background: #fff; padding: 0 20px;flex-direction: column; max-width: 1200px; left : 50%;transform: translateX(-50%);}
    .header-open{display: none;}
    .header-left{width : 100%;}
    /* .header-right{display: none;} */

    .customer > span{display: none;}
    .header-tel{border : 1px solid #303D47; border-radius: 50%;}

    .hamburger{margin-left: 10px;}
    .hamburger > span{max-width: 26px}
    .hamburger::before,
    .hamburger::after{background: #000 !important;}
    .hamburger > span{color: #000 !important;}
    .header-inner{justify-content: space-between; border-bottom : 1px solid rgba(0,0,0,0.1); padding :0; background: #fff;}
    .main-logo{background: url(/assets/images/common/main-logo-dark.png)no-repeat left center / contain !important;max-width : 192px;width : 40%;height : 30px;}

	.hamburger-nav{width : 100%;}
    .header-right{gap : 5px;}

    .hamburger-copy{bottom : 16px; font-size: 12px; white-space: nowrap;;}

	.hamburger-inner{padding : 90px 20px 0px}
	.hamburger-inner > ul{max-height: calc(100% - 150px); padding-bottom: 50px; mask-image: linear-gradient(to top, transparent 0%, transparent 3%, #fff 7%, #fff 100%);}
	.hamburger-inner > ul > li{display: block; height : auto; background: #F4F4F4;position : relative; border : 1px solid #E8E8E8; opacity: 0; transition : background .3s, border-color .3s, opacity .5s;height : auto; min-height: 60px;}

	.hamburger-inner > ul > li + li{margin-top: 10px;}

	.hamburger-inner > ul > li > a{font-family: futura-pt; font-size: 18px; position :static; transform: translateX(0%); padding : 0; display: flex; height : 60px;}
	/* .hamburger-inner > ul > li:hover > a{color : #fff; left : 90px; transform: translateX(0);} */

	.hamburger-num{width : 50px;}
	.eng-menu{padding-left: 16px; font-size : 18px;}
	.kor-menu{padding-left: 8px; font-size : 15px; padding-top: 0px;}

	.hamburger-inner > ul > li > ul{display: block; position : static; opacity : 1; height : auto; pointer-events : all; padding : 0 0 0 50px; width : 100%;z-index : 1; text-align : left; color : #000; display: none;}
	.hamburger-inner > ul > li > ul > li{display : block;height : auto;}
	.hamburger-inner > ul > li > ul > li > a{display : flex; align-items : center; padding : 8px 16px;height : 100%; font-size: 14px; font-weight: 500; letter-spacing: -0.04em; font-family: PT;}

	.hamburger-inner > ul > li > ul > li:first-child > a{padding : 16px 16px 8px 16px;}
	.hamburger-inner > ul > li > ul > li:last-child > a{padding : 8px 16px 16px 16px;}

	.hamburger-inner > ul > li > ul > li:only-child > a {padding: 16px}

	.hamburger-inner > ul > li > ul > li:hover > a{font-weight : 600; text-decoration : underline}

	.hamburger-inner > ul > li.hover .hamburger-num{transform : translateY(0)}
	.hamburger-inner > ul > li.hover .eng-menu{transform : translateY(0);}
	.hamburger-inner > ul > li.hover .kor-menu{transform : translateY(0);}

	.hamburger-inner > ul > li.active .hamburger-num{transform : translateY(100%)}
	.hamburger-inner > ul > li.active .eng-menu{transform : translateY(100%); transition-delay : 0.05s;}
	.hamburger-inner > ul > li.active .kor-menu{transform : translateY(100%); transition-delay : 0.1s;}

	.hamburger-plus{width : 18px; height : 18px;right : 20px;}
    /**/

    .footer{background:#0b1628;padding:10.67vw 6.67vw 8vw;}
    .sigong{display:flex;align-items:center;gap:4.27vw;margin-bottom:6.67vw;padding-bottom:6.67vw;border-bottom:1px solid rgba(255,255,255,.1);}
    .sigong h4{font-size:3.47vw;font-weight:700;color:rgba(255,255,255,.5);white-space:nowrap;}
    .sigong img{height:5.33vw;width:auto;}
    .footer-info{display:flex;flex-direction:column;gap:2.13vw;margin-bottom:5.33vw;}
    .footer-info li{font-size:2.67vw;color:rgba(255,255,255,.4);line-height:1.6;letter-spacing:-.02em;}
    .footer-copy{font-size:2.67vw;color:rgba(255,255,255,.3);letter-spacing:.02em;}

	.hamburger-scroll{right : 50%;transform : translateX(50%); gap : 4px; bottom : 50px;}
	.hamburger-progress{height : 60px; }
	.hamburger-progress::after{width : 7px;height : 7px;}
	.hamburger-scroll > span{font-size : 9px; writing-mode : horizontal-tb}
}

@media (max-width : 768px){
	.header{height : 60px;padding : 0 20px;}
	/* .hamburger{width : 38px;height : 38px;left : 15px;} */
	/* .header-tel{width : 20px;} */
}