@charset "utf-8";

/* layout */
:root{
	--theme-color: #024647;
	--dark-color: #148ec5;
	--main-color: #006a86;
	--menu-color:#12284c;
  --accent-color: #9854a7;
	--second-color: #9854a7;
	--basic-color: #c1b9ad;
	--simple-color: #f1f1f1;	
	--white: #fff;	
  --hover-color: #f5f38f;
  --green-color: #1ca56e;
	--header-color: rgba(255,255,255,.05);
	--header-color-on: rgba(255,255,255,.95);
	--white-a: rgba(255,255,255,.8);
	--white-a1: rgba(255,255,255,.1);
	--white-a2: rgba(255,255,255,.2);
	--white-a3: rgba(255,255,255,.3);
	--white-a5: rgba(255,255,255,.5);
	--brightgray: #fcfcfc;
	--lightgray: #e4e4e4;
	--gray: #cccccc;
	--mudgray: #686868;
	--darkgray: #555555;
	--tanblack: #333;  
	--black: #111;  
	--black-a: rgba(0,0,0,.2);  
	--black-a1: rgba(0,0,0,.1);
	--transparent: transparent;	
	--transition: all 0.3s ease-in-out;
	--transition2: all 0.2s ease-in-out;
	--backdrop-filter: blur(2px);
	--filter: blur(10px) brightness(0.85);
	--box-shadow: 1px 1px 8px rgba(0,0,0,.3);
	--box-shadow1: 1px 1px 8px rgba(0,0,0,.1);
	--box-shadow2: 0px 5px 5px rgba(0,0,0,.1);
	--box-shadow3: 0px 0px 1px rgba(0,0,0,.5);
	--box-shadow4: 0px 0px 8px rgba(0,0,0,.95);
	--transform: scale(1.1);
  --logo: 22rem;
	--logo-height: 5.3rem;
  --header-height: 12rem;
  --header-height-: -12rem;
  --header-menu-height: 36rem;
  --smenu-height: 16rem;
  --sub-visual-height: 30vh;
	--section-width: 1800px;
	--common-width: 1300px; /* 1920 */ /* 1280 */ /* 1024 */ /* 800 */ /* 680 */ /* 480 */
	--wide-width: 1200px; /* 1330 */ 
	--width: 900px;
  --wide-padding: 5vw;
  --common-padding: 5vw;
	--footer-color: #414141;
	--footer-font: #bbbbbb;
	--footer-height: 28rem;
	--pretendard: 'Pretendard', "나눔고딕", NanumGothic, "Nanum Gothic", "돋움", Dotum, Apple Gothic, Tahoma, Verdana, sans-serif;
	--noto: 'Noto Sans KR', "나눔고딕", NanumGothic, "Nanum Gothic", "돋움", Dotum, Apple Gothic, Tahoma, Verdana, sans-serif;
	--nanum: 'NanumSquare', "나눔고딕", NanumGothic, "Nanum Gothic", "돋움", Dotum, Apple Gothic, Tahoma, Verdana, sans-serif;
	--neo: 'NanumSquareNeo', "나눔고딕", NanumGothic, "Nanum Gothic", "돋움", Dotum, Apple Gothic, Tahoma, Verdana, sans-serif;
	--sans: 'GmarketSansMedium', "나눔고딕", NanumGothic, "Nanum Gothic", "돋움", Dotum, Apple Gothic, Tahoma, Verdana, sans-serif;
	--awesome: 'Font Awesome 6 Free', 'Font Awesome 6 Brands';
}

/* 기본설정:폰트크기 */
/* font */
/* @media all and (max-width:1280px){
	:root{font-size:0.759vw;} 
}
@media all and (max-width:1000px){
	:root{font-size:0.859vw;} 
} */
/* 
@media all and (max-width:800px){
	:root{font-size:0.825vw;} 
}
@media all and (max-width:640px){
	:root{font-size:0.800vw;}
}
@media all and (max-width:480px){
	:root{font-size:0.785vw}
} */

/* @media (max-width:800px){
	:root{font-size: 0.825vw;}
} */
/* @media all and (max-width:412px){
	:root{font-size:2.0vw}
}
@media all and (max-width:390px){
	:root{font-size:2.1795vw} 
} */
/* @media (max-width:800px){
  :root {font-size: 10px;}
}
@media (max-width:600px){
  :root {font-size: 10px;}
}
@media (max-width:480px){
  :root {font-size: 11px;}
} */
@media all and (max-width:1500px){
	:root{font-size:0.558rem;}
}
@media all and (max-width:1024px){
  :root{
    --sub-visual-height: 20vh;
    --logo: 20rem;
    --logo-height: 7rem;
  }
}
@media all and (max-width:800px){
  :root{
    --header-height: 10rem;
  }
}

@media all and (max-width:480px){
	:root{font-size: 0.465rem;}
}
@media all and (max-width:360px){
	:root{font-size: 0.4055rem;}
}


html {scroll-behavior: smooth; font-size: 10px;}
body {font-family: var(--neo); font-weight: 400; font-size: 2rem; letter-spacing: -0.03em; line-height: 1.2; color: var(--black); -webkit-font-smoothing: antialiased;}
::selection {background: var(--theme-color); color: var(--basic-color);}
::-moz-selection {background: var(--theme-color); color: var(--basic-color);}
::after {font-family: var(--awesome); font-weight: 600; font-size: 2.35rem;}
::before {font-family: var(--awesome); font-weight: 600; font-size: 2.35rem;}
.opacity {opacity: 0;}
br.pc {display: inline;}
br.mo {display: none;}
.mobile br.mo {display: block;}
.mo {display: none;}
img.mo {display: none;}

/* 슬라이드넘버 */
.main-visual .pag.act1 .bar:after {width: calc(100% / 03 * 1);}
.main-visual .pag.act2 .bar:after {width: calc(100% / 03 * 2);}
.main-visual .pag.act3 .bar:after {width: calc(100% / 03 * 3);}

/* 모바일 메뉴등장시 알파값 */
.mo-bg {}
/* .mbg {display:block; position:fixed; left:0; top:0; width:100%; height:100%; background-color:rgba(0,0,0,.7); z-index:10;} */
body.mo-menu {overflow:hidden; height:100%; -ms-touch-action: none; touch-action: none; -webkit-overflow-scrolling: none; overflow: hidden; -ms-scroll-chaining: none; overscroll-behavior: none;}
#wrap {position: relative; width: 100%; margin: 0 auto; min-width:320px; overflow: hidden;}
#container { position: relative; z-index: 1;}

/* magnifier */
.map {/* width: 100%; height: 100%;  background:url(../images/main/main_loc.jpg) no-repeat center center / cover;border:1px solid var(--lightgray);*/  position: relative;}
.map .magnifier {width:20rem; height:20rem; position: absolute; border-radius: 50rem; box-shadow: 0 0 0 3px rgba(255, 255, 255, 0.85), 0 0 3px 3px rgba(0, 0, 0, 0.25); display: none; visibility: hidden!important; }
.map .target {display: block; width: 100%;}



/* header */
#header {position: fixed; top: 0; left: 0; width: 100%; background:transparent; display: flex; justify-content: center; z-index: 2; transition: var(--transition2); box-shadow: var(--box-shadow1); backdrop-filter: var(--backdrop-filter);border-bottom: 1px solid rgba(229, 229, 229, 0.3);}
#header.hidden{transform:translateY(-100%);}
#header.scrolled {
	background: #fff;
}
/* #header.bg {box-shadow: var(--box-shadow); height: var(--header-menu-height);} */
#header:after {content: ""; width: 100%; height: 0; background: var(--header-color-on); position: absolute; left: 0; top: 0 /* var(--header-height) */; z-index: -1; transform: translateY(0px); opacity: 0; transition: var(--transition2); transition-property: all;}
#header.on:after {box-shadow: var(--box-shadow2); height: calc(var(--header-height) + var(--header-menu-height)); transform: translateY(0); opacity: 1;}
#header .inner {width: 100%; padding: 0 var(--common-padding); height: var(--header-height); display: flex; align-items: center; justify-content: space-between; gap: 2rem;}
#header .inner.on{background:linear-gradient(#fff, rgb(255 246 256 / 80%));}
#header .inner.on .logo a.logo-img{background:url(../images/common/logo.png) no-repeat left center / contain;}
#header .inner.on #gnb.depth1-list >li .depth1{color:var(--menu-color);}
#header .logo {height: var(--logo-height); line-height: var(--logo-height);	display: flex; justify-content: space-between; align-items: center;}
#header .logo a {display: flex; height: var(--logo-height); width: var(--logo); text-align: center; letter-spacing: -0.05em; line-height: 1; align-items: center; justify-content: center; flex-direction: column; gap: 0.2rem;}
#header .logo a.logo-img {background: url(../images/common/logo_on.png) no-repeat left center / contain;}
#header.on .logo a.logo-img{background: url(../images/common/logo.png) no-repeat left center / contain;}
#header.scrolled .logo a.logo-img{background: url(../images/common/logo.png) no-repeat left center / contain;}
#header .logo a.logo-txt {font-size: 2.8rem; font-weight: 700; color: var(--dark-color);}
#header .logo a.logo-txt em {font-size: 1.85rem; font-weight: 400; color: var(--main-color);}
.utill {display: flex; align-items: center; margin-left: auto; gap: 2rem;}
.inner.on .utill a{color:var(--menu-color);}
.inner.on .utill .bt-mn i{background:var(--menu-color);}
.utill .bt-cs, .utill .bt-tel {display: flex; align-items: center; justify-content: center; gap: 0.5rem; line-height: 2; letter-spacing: -0.08em;}
.utill .bt-cs {color:var(--white); font-size: 2rem; font-weight: 500;}
#header.on .utill .bt-cs{color:var(--theme-color);}
#header.scrolled .utill .bt-cs{color:var(--theme-color);}
.utill .bt-tel {color: var(--white); font-size: 2rem; font-weight: 800;}
#header.on .utill .bt-tel{color:var(--theme-color);}
#header.scrolled .utill .bt-tel{color:var(--theme-color);}
.utill .bt-cs::before, .utill .bt-tel::before {display: flex; align-items: center; justify-content: center; gap: 0.7rem;}
.utill .bt-cs::before {content: "\f015";}
.utill .bt-tel::before {/*content: "\f879";*/ font-size: 2rem; font-weight: 300;}
.utill .bt-mn {display: flex; align-items: center; justify-content: center; flex-direction: column; gap: 0.445rem; display: none;}
.utill .bt-mn i {display: block; width: 3rem; height: 3px; background: var(--white); transition: var(--transition2); border-radius: 5rem;}
.utill .bt-mn.open i:nth-child(1) {margin-top: 0; transform: rotate(-45deg);}
.utill .bt-mn.open i:nth-child(2) {margin-top: 0;}
.utill .bt-mn.open i:nth-child(3) {margin-top: 0; transform: rotate(45deg);}

#gnbWrap {flex: 1; display: grid; /* align-items: center; justify-content: center; padding: 0; */}
#gnb {display: grid; grid-template-columns: repeat(auto-fit, minmax(12%, auto)); width: calc(80% - 0rem); justify-content: space-around; margin: 0 auto;}
#gnb.depth1-list >li {/* display: inline-block; vertical-align: top; */ position: relative; box-sizing: border-box; padding: 0 3rem; display: flex; align-items: center; justify-content: center;}
#gnb.depth1-list >li .depth1 {display: block; /* margin:0; padding: 0 2rem; */ height: var(--header-height); line-height: var(--header-height); font-weight: 500; font-size: 18px; text-shadow: var(--box-shadow3); color: /* var(--theme-color) */var(--white); transition: var(--transition2); position: relative;}
#gnb.depth1-list >li .depth1:after {content: ""; display: block; height:4px; margin-top: -4px; background: var(--menu-color)/* var(--accent-color) */; transform: scaleX(0); transition: var(--transition2);}

/* 메뉴온추가 */
#header.on #gnb.depth1-list >li .depth1 {color:/*  var(--accent-color) */var(--menu-color);}
#header.scrolled #gnb.depth1-list >li .depth1 {color:/*  var(--accent-color) */var(--menu-color);}
/* 메뉴온추가 */

#gnb.depth1-list >li:hover .depth1 {color:/*  var(--accent-color) */var(--menu-color); font-weight: 500;}
#gnb.depth1-list >li:hover .depth1:after {transform: scaleX(1.0);}
/* .active */
#gnb.depth1-list >li.active:after {content: ""; display: block; margin-top: -4px; border-bottom: 4px solid /* var(--accent-color) */var(--menu-color);}
#gnb.depth1-list >li.active a {color: /* var(--accent-color) */var(--menu-color); font-weight: 500;}
/* depth2 */
#gnb.depth1-list .depth2, #gnb.depth1-list .depth2.on {position: absolute; padding: 1rem 0rem; display: flex; align-items: center; justify-content: center; flex-direction: column; flex-wrap: nowrap; top: var(--header-height); left: 0; width: 100%; padding-top: 1.5rem; box-sizing: border-box; opacity: .95; display: none;}
#gnb.depth1-list .depth2 li a {display: flex; align-items: center; justify-content: center; text-align: center; line-height: 2.4; padding: 0; font-size: 15px; color: /* var(--theme-color) */#333333; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;transition:all 0.3s ease 0s;}
#gnb.depth1-list .depth2 li a:hover {color: /* var(--accent-color) */var(--menu-color);font-weight:700;}


/* mobileMenu 모바일 햄버거버튼 */
#mobileMenu {position: fixed; display: block; top: -100vh; right: 0; height: 100vh; width: 100vw; opacity: 0; transition:var(--transition2); background: var(--theme-color); z-index: 9999;}
#mobileMenu.open {top:0; opacity: 1;}
#mobileMenu .inner {display: flex; flex-direction: column; align-items: center; justify-content: flex-start; height: calc(100vh - 0rem); padding: 3rem; gap: 5rem; box-sizing: border-box;}
#mobileMenu .bt {position:relative; display: flex; justify-content: center; align-items: center; overflow:hidden;align-self: end;}
#mobileMenu .mo-bt-close {position: relative; width: 5rem; height: 5rem; display:block; margin: 0 auto;}
#mobileMenu .mo-bt-close::after {/* content: "\f00d";  */font-size: 6rem; color: var(--basic-color);}
#mobileMenu .mo-bt-close span {position: absolute; top: -9999px; left: -9999px;}
#mobileMenu .mo-bt-close i{ position: absolute; top: 50%; left: 50%; margin: -.1px 0 0 -25px; width: 50px; height: 2px; background-color: var(--white); display: block; transform: rotate(45deg);}
#mobileMenu .mo-bt-close i:nth-child(2){ transform: rotate(-45deg);}
#mobileMenu .utill {padding: 0 1.8rem; display: flex;}
#mobileMenu .utill .bt-cs {height: 4rem; padding: 0; font-size: 1.4rem; color: var(--white); width: 12.8rem;}
#mobileMenu .utill .bt-tel {flex: 1; height: 4rem; font-size: 1.4rem;}
#mobileMenu .btn-tell {color: var(--white);	margin-top: auto; letter-spacing: -0.05em; display: flex; align-items: center; justify-content: center; gap: 1rem; flex-direction: column;}
#mobileMenu .btn-tell .tel-number {font-size: 4rem; font-weight: 800; line-height: 1; text-align: center; color: var(--white-a5);}
/* 모바일메뉴-리스트 */
.mo-menu {display: grid; grid-template-columns: 1fr; grid-auto-columns: 1fr; gap: 0rem 2rem; width: 100%;}
.mo-menu > li {display: flex; flex-direction: column; align-items: flex-start; justify-content: center; }
.mo-menu > li {border-top: 1px solid var(--white-a2);}
.mo-menu > li:last-of-type {border-bottom: 1px solid var(--white-a2);}
.mo-menu > li > a {font-size: 2rem; color: var(--white-a); padding: 2.5rem 2rem; display: flex; width: 100%; box-sizing: border-box; align-items: center; justify-content: flex-start;}
.mo-menu > li > a::before {content: "\2b"; font-size: 1rem; margin-right: 1rem; color: var(--white-a3);}
/* 2depth */
.mo-menu .depth2 {display: flex; flex-direction: column; align-items: center; justify-content: center; box-sizing: border-box; width: 100%; margin-bottom: 3rem; display: none;}
.mo-menu .depth2 li a {display: flex; font-size: 1.85rem; line-height: 5rem; height: 5rem; padding: 0rem 3rem; font-weight: 200; color: var(--white-a); border-bottom: 1px dotted var(--white-a1); align-items: center; justify-content: flex-start;}
.mo-menu .depth2 li a:hover {color: var(--basic-color);}
.mo-menu .depth2 li:last-of-type a{border-bottom:none;}
.mo-menu .depth2 li:first-of-type a {border-top: 1px solid var(--white-a1);}
.mo-menu .depth2 li a::before {content: "\f068"; font-size: 0.85rem; margin-right: 1rem; color: var(--white-a3); color: var(--basic-color);}



/************** 공통섹션-customer 관심고객등록 **************/
[class*=section].customer {background: url(../images/main/premium_bg.jpg);background-blend-mode: multiply;background-color: #f1f1f1;}
[class*=section].customer .title {margin: 0px auto 10px!important;}
[class*=section].customer .common-customer {display: flex; align-items: stretch; justify-content: space-between; gap: 0rem; max-width: 100%!important; margin-top: 0rem;}
[class*=section].customer .common-customer .space {width: 48vw; height: auto; padding: 0; background: url(../images/main/main_customer_bg.jpg) no-repeat center center / cover;}
[class*=section].customer .common-customer .customer-box {display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2rem; padding: 5rem 0rem; width: calc(52vw - 10vw); margin: 0 auto; box-sizing: border-box;}
[class*=section].customer .common-customer .frm-customer {display: flex; align-items: center;	justify-content: center; width: 100%;}
[class*=section].customer .common-customer .frm-customer fieldset {width: 100%;}
[class*=section].customer .common-customer .frm-customer .desc {display: flex; align-items: center; /* justify-content: space-between; */ gap: 2rem; padding: 1rem 2rem; line-height: 2.2; border: 1px solid var(--mudgray); border-radius: 0.5rem; color: var(--tanblack); font-weight: 600; box-sizing: border-box;}
[class*=section].customer .common-customer .frm-customer p {margin-bottom: 1rem;}
/* .common-customer .frm-customer p+p {margin-bottom: 2rem;} */
[class*=section].customer .common-customer .frm-customer p:nth-last-of-type(2){margin-bottom: 2rem;}
[class*=section].customer .common-customer .frm-customer .desc label {/* flex: 2; flex: 0 1 8rem; margin-right: 0; */flex-basis: 10rem; width: 10rem;}
[class*=section].customer .common-customer .frm-customer .desc input {/* flex: 8;  margin-left: 0;*/ line-height: 4rem; font-size: 2rem; width: 100%;}
[class*=section].customer .common-customer .frm-customer .desc .content {width: 100%; resize: none; overflow: hidden; border: none; padding: 0; height: 2.5rem; line-height: 1.3; background: var(--transparent);}
[class*=section].customer .common-customer .frm-customer input[type=text],
[class*=section].customer .common-customer .frm-customer input[type=date],
[class*=section].customer .common-customer .frm-customer input[type=time] {border: none;}
[class*=section].customer .common-customer .frm-customer .privacy .input {display: flex; flex-direction: row; gap: 5rem;}
[class*=section].customer .common-customer .frm-customer .privacy .input input {display: none;}
[class*=section].customer .common-customer .frm-customer .privacy {color: var(--theme-color); font-size: 1.85rem; display: flex; align-items: center; justify-content: flex-start; gap: 4rem;}
[class*=section].customer .common-customer .frm-customer .privacy .text {font-weight: 600; text-decoration: underline;}
[class*=section].customer .common-customer .frm-customer .privacy .text a:hover {text-decoration: underline;}
[class*=section].customer .common-customer .frm-customer .agree {position: relative; opacity: 1; top: 0; left: 0;}
/* .common-customer .frm-customer .agree:before {position: absolute; top: 0; left: 0; display: inline-block; vertical-align: middle; width: 1.5rem; height: 1.5rem; border-radius: 20rem; cursor: pointer; transition: 0.2s; content: '';}
.common-customer .frm-customer .agree:checked:before {position: absolute; top: 0; left: 0; display: inline-block; background: var(--theme-color);	cursor: pointer; transition: 0.2s; content: '';} */
[class*=section].customer .common-customer .frm-customer .privacy .input label {position: relative; margin-right: 0;}
[class*=section].customer .common-customer .frm-customer .privacy .input label::before {position: absolute; top: 0px; left: -18px; display: inline-block; vertical-align: middle; width: 1.5rem; height: 1.5rem; line-height: 1.5; border-radius: 20rem; cursor: pointer; transition: 0.2s; content: '\f111'; font-size: 1.65rem; color:var(--theme-color); font-weight: 300;}
[class*=section].customer .common-customer .frm-customer .privacy .input input:checked + label::after {position: absolute; top: 0px; left: -18px; display: inline-block; cursor: pointer; transition: 0.2s; content: '\f058'; font-size: 1.65rem; line-height: 1.5; color:var(--theme-color);}
[class*=section].customer .common-customer >a {margin: 1rem auto;}
[class*=section].customer .common-customer .btn-register {display: flex; align-items: center; justify-content: center; gap: 1rem; border-radius: 0.5rem; border: 1px solid var(--white-a2); background: var(--theme-color); color: var(--white); width: 100%; padding: 3rem 0; transition: var(--transition2); cursor: pointer; font-size: 2.65rem;font-family: 'Noto Sans KR';}
/* [class*=section].customer .common-customer .btn-register::after {content: "\f090";} */
[class*=section].customer .common-customer .btn-register::after {content: "";    background: url(../images/common/btn_register.png) no-repeat center bottom / contain;width: 32px;height: 26px;aspect-ratio: 16 / 3;}
[class*=section].customer .common-customer >a:hover.btn-register {backdrop-filter:var(--backdrop-filter);}
/* input 텍스트컬러설정 */
[class*=section].customer .common-customer .frm-customer .desc input[type=text],
[class*=section].customer .common-customer .frm-customer .desc input[type=text]:read-only,
[class*=section].customer .common-customer .frm-customer .desc input[type=number],
[class*=section].customer .common-customer .frm-customer .descinput[type=password],
[class*=section].customer .common-customer .frm-customer .desc textarea
 {font-family: var(--pretendard); font-size: 2rem; letter-spacing: -0.03em; color: var(--mudgray)!important;}






/************** 공통섹션-zzim 하단한줄고정 관심고객등록 ************/
.pop-zzim-layer {position: fixed; left: 2rem; bottom: 2rem; width: calc(100% - 4rem); background: var(--white); z-index: 2; box-sizing: border-box; border-radius: 1rem; box-shadow: var(--box-shadow1); background: var(--theme-color); overflow: hidden;}
.pop-zzim-layer .zzim-box {display: flex; align-items: center; justify-content: space-evenly; height: 6.8rem;}
.pop-zzim-layer .zzim-box .txt {display: flex; width: 20rem; align-items: center; justify-content: center; height: 100%; color: var(--white); border-radius: 1rem 0 0 1rem; gap:0.5rem; font-size: 2.25rem;}
.pop-zzim-layer .zzim-box .txt::before {content: '\f044'; font-weight: 300;}
.pop-zzim-layer .zzim-box .desc {display: flex; width: calc(100% - 50rem); height: 100%; align-items: center; justify-content: space-evenly; padding: 0 0; font-size: 1.65rem; background: var(--simple-color); color: var(--black);}
.pop-zzim-layer .zzim-box .desc p {}
.pop-zzim-layer .zzim-box .desc p + p {}
.pop-zzim-layer .zzim-box .desc .privacy a:hover {text-decoration: underline;}
.pop-zzim-layer .zzim-box .desc label {margin-right: 1rem;}
.pop-zzim-layer .zzim-box .desc input[type=text] {border: none; font-weight: 100; margin-right: 2rem;}
.pop-zzim-layer .i-agree {position: relative; opacity: 1; top: -2px; left: -2px;}
.pop-zzim-layer .i-agree:before {position: absolute; top: 0; left: 0; display: inline-block; vertical-align: middle; width: 1.5rem; height: 1.5rem; border-radius: 20rem; cursor: pointer; transition: 0.2s; content: '';}
.pop-zzim-layer .i-agree:checked:before {position: absolute; top: 0; left: 0; display: inline-block; background: var(--theme-color);	cursor: pointer; transition: 0.2s; content: '';}

.pop-zzim-layer .zzim-box .button {display: flex; width: 20rem; height: 100%; align-items: center; justify-content: center; color: var(--white);}
.pop-zzim-layer .zzim-box .button .bt-zzim {height: 100%; color: var(--white); font-size: 2rem; font-weight: 500; line-height: 0.7; letter-spacing: -0.09em; gap: 1rem; display: flex; align-items: center;	justify-content: center;}
.pop-zzim-layer .zzim-box .button .bt-zzim::after {content: '\f061';}



/************************ 공통섹션 pop-quick-layer 퀵레이어 *****************/
.pop-quick-layer {position: fixed; right: 0rem; top: 0rem; width: 13rem; height: 100vh; background: var(--theme-color); z-index: 1000; box-sizing: border-box; border-radius: 0rem; box-shadow: var(--box-shadow1); overflow: hidden;}
.pop-quick-layer .quick {display: flex; flex-direction: column;}
.pop-quick-layer .quick > div > a {height: calc(100vh/7); width: 100%; display: flex; align-items: center; justify-content: center; font-size: 1.65rem; letter-spacing: -0.045em; color: var(--white-a5);}
.pop-quick-layer .quick > div > a span {display: flex; justify-content: center;	flex-direction: column;	align-items: center; gap: 1rem;}
.pop-quick-layer .quick .login {background: var(--main-color);}
.pop-quick-layer .quick .quick {}
.pop-quick-layer .quick .number {/* background: var(--main-color); */}
.pop-quick-layer .quick .gotop {background: var(--dark-color);}
.pop-quick-layer [class*=quick] span::before {font-size: 3.2rem;} /* 공통 */
.pop-quick-layer .quick .login span::before {content: "\f011";} /* 로그인 */
.pop-quick-layer .quick .quick-01 span::before {content: "\f0f3";} /* 관심고객등록 */
.pop-quick-layer .quick .quick-02 span::before {content: "\f15c";} /* 사업안내 */
.pop-quick-layer .quick .quick-03 span::before {content: "\f3c5";} /* 오시는길 */
.pop-quick-layer .quick .quick-04 span::before {content: "\f05a";} /* 고객센터 */
.pop-quick-layer .quick .quick-05 span::before {content: "\f302";} /* 팝업 */
.pop-quick-layer .quick .number span::before {content: "분양문의전화"; font-size: 1.35rem;} /* 전화번호 */
.pop-quick-layer .quick .number span {font-size: 3.5rem; font-weight: 600; text-align: center; line-height: 0.9; gap:0.8rem;}
.pop-quick-layer .quick .gotop span::before {content: "\f106";} /* 맨위로 */ 


/************************* 푸터 **********************/
footer {background: var(--footer-color); color: var(--footer-font); padding: var(--common-padding); padding-bottom: 7vw; }
footer .inner {margin: 0; display: flex; justify-content: space-between;}
/* 좌측텍스트정보 */
footer .footer-txt {display: flex; flex-direction: column; gap: 1rem; align-items: start; justify-content: center;}
footer .logo-img {width: 25rem; height: 4rem; background: url(../images/main/footer_logo.png) no-repeat left center / contain;}
footer .logo-txt {font-size: 3rem; font-weight: 500;}
footer address {font-size: 1.85rem;	line-height: 1.8; opacity: .8; margin: 1rem 0;}
footer address p {display: flex; align-items: center;}
footer address p span {display: flex; align-items: center;}
footer address p span em {margin-right: 1rem;}
footer address p span .f-txt1 {}
footer address p span .f-txt2 {}
footer address p span + span {position: relative; padding-left: 1rem; margin-left: 1rem;}
footer address p span + span:before {content: ''; display: block; width: 0.1rem; height: 1.2rem; background: var(--footer-font); position: absolute; left: 0; top: 50%; margin-top: -0.7rem;}
footer address p + p {/* margin-top: 1rem; */}
footer .caution {display: flex;  flex-direction: column; align-items: flex-start; justify-content: center; width: 100%; font-weight: 300; font-size: 1.5rem; line-height: 1.5; padding: 0 0 1rem 0;}
footer .caution li {display: flex;}
footer .caution li:before {display: inline-block; content: "※"; font-size: inherit; font-weight: 400; padding-right: 0.5rem;}
footer .bt-privacy_div{display:flex;}
footer .bt-privacy_div > .bt-privacy:first-child{margin-right:10px;}
footer .bt-privacy {/* margin-top: 2rem; */ /* width: 20rem; height: 6rem; */ display: flex; justify-content: center; align-items: center; gap: 0.5rem; /* border: 1px solid var(--footer-font); */ color: var(--footer-font); /*display: none;*/line-height: 1.1; cursor: pointer;}
footer .bt-privacy::before {content: "\f058"; font-size: 1.35rem;}
footer .copy {font-size: 1.65rem; opacity: .5;}
footer .license {font-size: 1.5rem; font-weight: 200; opacity: .5; display: none;}
footer .license em {display: inline-block; margin: 0 0.5rem; position: relative;}
footer .license em:hover {}
footer .license em:after {content: ''; display: block; position: absolute; bottom: -1px; left: 0; width: 100%; height: 1px; background: var(--white);}

/* 우측탑버튼등 */
footer .footer-rt {padding:0; display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-end; gap: 1rem;}
footer #btTop {margin-bottom: auto; z-index: 4;}
footer #btTop::after {content: "\f062"; font-size: 5rem; color: var(--footer-font);}
footer .footer-tel {/* margin-top: 6rem;  */display: flex; flex-direction: column; align-items: flex-end;}
footer .footer-tel span{font-size:3rem;}
footer .footer-tel b.tel {font-size: 5rem; font-weight: 800; letter-spacing: -0.05em;}
/* footer #btTop {background: url(../images/main/bt_top.png) no-repeat center center; width: 46px; height: 52px; z-index: 4; margin-bottom: auto;} */

/* 하단 고정 전화번호 */
/* .tel-fix {position: fixed; z-index: 9999; display: flex; align-items: center; justify-content: center; bottom: 0; left: 0; width: 100%; height: 70px; background: var(--accent-color); opacity: 1; z-index: 10;}
.tel-fix .tel-num {position: relative; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; gap: 1.5rem; font-size: 23px; font-weight: 200; color: var(--white); letter-spacing: -0.03em;}
.tel-fix .tel-num em {font-size: 25px; font-weight: 600;}
.tel-fix .tel-num::before {content: "\f095"; font-size: 20px;} */

/* 하단 고정 전화번호 라운드로 변경 */
.tel-fix {position: fixed; z-index: 9998; display: flex; align-items: center; justify-content: center; bottom: 0; left: 0%; width: 100%; height: 75px; background: var(--theme-color); opacity: 1; z-index: 10; box-shadow: var(--box-shadow1); border-radius: 20px 20px 0 0; color: var(--theme-color); border: 3px solid currentColor; box-sizing: border-box;}
.tel-fix .tel-num {position: relative; width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; gap: 1rem; font-size: 3rem; font-weight: 500; color: var(--white); letter-spacing: -0.05em;}
.tel-fix .tel-num em {font-size: 3rem; font-weight: 800; color: var(--white); margin-left: 2rem;}
.tel-fix .tel-num::before {content: "\f232"; font-size: 3.5rem; font-weight: 600;}

/************** 우측고정-관심고객등록박스 **************/
/* 모달등장시알파값등장 */
.full-bg {/* display:block; */ position:fixed; left:0; top:0; width:100vw; height:100vh; background: var(--tanblack); opacity: .95; z-index:10; display: none;}
/* 관심고객등록플로팅버튼 */
.fix-customer-btn {position: fixed; top: 40%; right: 0; z-index: 111; transform: translate(0, -40%); opacity: 1; transition: .3s; transition-property: all; display: none;}
.fix-customer-btn.off {transform: translate(10rem, -40%); opacity: 0;}
.fix-customer-btn .toggle-close span {display: flex; align-items: center; justify-content: center; gap: 10px; height: 25rem; width: 7rem; font-size: 2.2rem; letter-spacing: -.22em; writing-mode: vertical-lr; border-radius: 1rem 0 0 1rem; background: var(--theme-color); color: var(--white); transition: var(--transition2); font-family: var(--pretendard); font-weight: 400; box-shadow: var(--box-shadow); transition: background 0.2s, color 0.2s;}
.fix-customer-btn .toggle-close span::after {content: "\f044"; font-size: 2rem; font-weight: 300;}
.fix-customer-btn .toggle-close span:hover {background: var(--accent-color);}

/* 등록입력박스 */
.fix-customer-box {/* display: none;  */position: fixed; top: 50%; right: 50%; z-index: 111; background: linear-gradient(0.96turn, var(--gray) 10%, var(--lightgray) 30%); padding: 3rem; border-radius: 3rem; border: 1px solid var(--theme-color); box-shadow: var(--box-shadow2); transform: translate(300%, -50%); opacity: 0; transition: .3s; transition-property: all; width: 100%; max-width: 40rem;pointer-events: none;}
.fix-customer-box.active {transform: translate(50%, -50%); opacity: 1;pointer-events: auto;}
/* 박스 */
.fix-customer-box .customer-box {display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 1.5rem; width: 100%;}
.fix-customer-box .customer-box .title {display: flex; flex-direction: column; gap: 3px; width: 100%;}
.fix-customer-box .customer-box .title .maintit {color: var(--theme-color); font-size: 2.8rem; letter-spacing: -.06em; display: flex; gap: 8px;}
.fix-customer-box .customer-box .title .maintit::before {content: "\f044"; font-weight: 400; font-size: inherit;}
.fix-customer-box .customer-box .title .subtit {font-size: 1.6rem;}
.fix-customer-box .customer-box .phone {display: flex; color: var(--theme-color); font-size: 3rem; font-weight: 800; margin-left: 0; margin-right: auto; letter-spacing: -0.06em;}
.fix-customer-box .customer-box .phone .number {display: flex; gap: 10px;}
.fix-customer-box .customer-box .phone .number::before {content: "\f095"; font-size: inherit;}
/* 등록버튼 */
.fix-customer-box .fix-confirm-btn {display: flex; flex-direction: row; align-items: center; justify-content: center; gap: 0.5rem; color: var(--white); font-size: 1.8rem; width: 100%; text-align: center;} 
.fix-customer-box .fix-confirm-btn span {display: flex; align-items: center; justify-content: center; gap: 5px; flex: 1; padding: 2rem 0rem; transition: var(--transition2); border-radius: 1rem; cursor: pointer;}
.fix-customer-box .fix-confirm-btn .btn-register {background: var(--theme-color);}
.fix-customer-box .fix-confirm-btn .btn-register:hover {background: var(--accent-color);}
.fix-customer-box .fix-confirm-btn .btn-register:hover::after {animation: sonaEffect 0.5s linear infinite;}
.fix-customer-box .fix-confirm-btn .btn-register::after {content: "\f00c"; font-size: inherit;}
.fix-customer-box .fix-confirm-btn .btn-close {background: var(--mudgray);}
.fix-customer-box .fix-confirm-btn .btn-close:hover {background: var(--darkgray);}
.fix-customer-box .fix-confirm-btn .btn-close:hover::after {animation: sonaEffect 0.5s linear infinite;}
.fix-customer-box .fix-confirm-btn .btn-close::after {content: "\f00d"; font-size: inherit;}
.fix-customer-box .frm-customer {display: flex; align-items: center;	justify-content: center; width: 100%;}
.fix-customer-box .frm-customer fieldset {display: flex; gap: 1rem; flex-direction: column; justify-content: center; align-items: center; width: 100%;}
.fix-customer-box .frm-customer .desc {width: 100%; display: flex; align-items: center; justify-content: flex-start; gap: 1rem; border: 1px solid var(--mudgray); line-height: 1.8; padding: 1rem 2rem; border-radius: 1rem; color: var(--tanblack); box-sizing: border-box;}
.fix-customer-box .frm-customer p {margin-bottom:0;}
.fix-customer-box .frm-customer p+p {margin-bottom: 2px;}
.fix-customer-box .frm-customer .desc label {flex-shrink: 0; width: 6rem; font-size: 15px; font-weight: 500;}
.fix-customer-box .frm-customer .desc input {flex-grow: 1; width: calc(100% - 6rem); border: none; font-size: 15px; padding: 0;}
.fix-customer-box .frm-customer .privacy input {display: none;}
.fix-customer-box .frm-customer .privacy {color: var(--theme-color); font-size: 1.5rem; display: flex; align-items: center; justify-content: flex-end; gap: 4rem; width: 100%; }
.fix-customer-box .frm-customer .privacy .text {font-weight: 600; flex-shrink: 0; width: 18rem; margin-left: 0; margin-right: auto;}
.fix-customer-box .frm-customer .privacy .text a:hover {text-decoration: underline; background: var(--hover-color);}
.fix-customer-box .frm-customer .agree {position: relative; opacity: 1; top: 0; left: 0;}
.fix-customer-box .frm-customer .privacy label {position: relative; margin-right: 0;}
.fix-customer-box .frm-customer .privacy label::before {position: absolute; top: 0px; left: -18px; display: inline-block; vertical-align: middle; width: 1.5rem; height: 1.5rem; border-radius: 20rem; cursor: pointer; transition: 0.2s; content: '\f111'; font-size: 1.65rem; color:var(--theme-color); font-weight: 300;}
.fix-customer-box .frm-customer .privacy input:checked + label::after {position: absolute; top: 0px; left: -18px; display: inline-block; cursor: pointer; transition: 0.2s; content: '\f058'; font-size: 1.65rem; color:var(--theme-color);}

/* 아이콘효과 */
@keyframes spinAround{
	from {transform: rotate(0deg);}
	to {transform: rotate(360deg);}
}
@keyframes sonaEffect{
  0% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
  50% {
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
  }
  100% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }
}
/* 버튼 무브효과 */
@keyframes moveUpDown{
  0% {transform: translate(0%, 0%);}
  50% {transform: translate(0%, -10%);}
  100% {transform: translate(0%, 0%);}
}





/**************  배지레이어 ***********/
.badge-wrap {position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: 3; /* display: none; */}
.badge-wrap .badge {display: flex; align-items: center; justify-content: center;}
/* .badge-wrap .badge.badge1 {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 15rem; height: 15rem; background: url(../images/main/medal_dday.png) no-repeat center center / contain; position: absolute; z-index: 1; top: 25rem; right: 5rem; order: 3; 순위정하기} */
.badge-wrap .badge.badge1 {position: absolute; top: 2vw; right: 2vw; transform: translate(0vw, 0vw); max-width: 20vw; width: 15vw; min-width: 12rem;}
.badge-wrap .badge.badge2 {position: absolute; bottom: 2vw; right: 2vw; transform: translate(0vw, 0vw); max-width: 50vw; width: 40vw; min-width: 30rem;}
.badge-wrap .badge.badge3 {position: absolute; bottom: 0; left: 0; display: none;}

/************** 모바일알림박스추가 **************/
.fix-box-alram {position: fixed; z-index: 10; bottom: 0; right:0; width: 90px; transform: translate(0, 0); /* display: grid; grid-template-columns: repeat(auto-fit, minmax(16%, auto)); grid-auto-flow: dense;*/ grid-template-rows: repeat(1, minmax(7rem, auto)); display: flex; flex-wrap: wrap; /* flex-direction: row; */ font-weight: 600; font-size: 1.5rem; text-transform: uppercase; cursor: pointer;flex-direction: column;transition:all 0.3s ease 0s;}
.fix-box-alram.toggled{transform:translate(100%,50%);}
.fix-box-alram.toggled .popArrow::after{content: "\f053";font-family: var(--awesome);}
.fix-box-alram >div {flex: 1; box-shadow: var(--box-shadow); width: 100%; display: flex; flex-direction: row; align-items: center; justify-content: center; padding: 2rem 2.5rem; box-sizing: border-box; height: 7rem;/* flex-grow: 1; */}
.fix-box-alram >div .title {display: flex; align-items: center; gap: 0.5rem;}
.fix-box-alram >div .date, .fix-box-alram >div .num, .fix-box-alram >div .desc {margin-right: 0; display: flex; align-items: center; gap: 0.5rem;flex-direction: column;}
/* 방문상담신청 */
.fix-box-alram .open-box {background: #222b66; color: var(--white); opacity: 1; transition-property: all; flex: 0 1 15rem;}
/* .fix-box-alram .open-box a {color: var(--hover-color);} */
.fix-box-alram .open-box .date::before {content: "\f015"; font-weight: 800; font-size: 2rem;}
.fix-box-alram .open-box .date:hover::before {animation: sonaEffect 0.5s linear infinite;}
/* .fix-box-alram .open-box.off {transform: translateY(-20%); opacity: 0;} */
/* 팝업박스보기 */
.fix-box-alram .pop-box {background: #95785e; color: var(--white); opacity: 1; transition-property: all; flex: 0 1 15rem;border-radius:0;}
.fix-box-alram .pop-box a {display: flex; flex-direction: row; align-items: center; justify-content: space-between; font-size: 3rem;}
.fix-box-alram .pop-box .desc::before {content: "\f0f3"; font-weight: 300; font-size: 2rem;}
.fix-box-alram .pop-box .desc:hover::before {animation: sonaEffect 0.5s linear infinite;}
.fix-box-alram .pop-btn{border-radius:0 0 0 1rem;background:#d0b787; flex: 0 1 7rem;height:3rem;}
.fix-box-alram .popArrow::after{content: "\f054"; font-family: var(--awesome);display:inline-block;}
.fix-box-alram.openPopUp{transform:translate(100%, 0);bottom:0;}
.fix-box-alram.toggled.openPopUp{transform:translate(0, 0);bottom: 0;display: block;}
.openPopUp{width:50px;height:50px;display:inline-block;position:absolute;left:50%;top:50%;transform: translate(-50%, -50%);border-radius:50px 0% 0 50px;background:#95785e;opacity:0;pointer-events: none;transition:all 0.3s ease 0s;height: 70px;padding: 1rem;}
.openPopUp:after{content:'\f053';color:var(--white);transform:translateX(-100%)}
.fix-box-alram.toggled .openPopUp{opacity:1;pointer-events: auto;transform: translate(-100%, 0%);box-shadow:none;transition:all 0.3s ease 0s;height: 70px;padding: 1rem;bottom: 0;top: 0;}
.fix-box-alram.toggled .openPopUp:hover{transform: translate(-120%, -0%);}
/* .openPopUp .pop-btn{right: 0%;border-radius: 0;width: 15rem;height: 15rem;background-color: #8a95a7;clip-path: polygon(0 100%, 100% 0, 100% 100%, 0% 100%);opacity:0;pointer-events: none;}
.openPopUp .open{position: absolute;bottom: 10%;left: 60%;transform: translate(-50%, -50%);}
.fix-box-alram.toggled .pop-btn{opacity:1;pointer-events: auto;} */
/* 분양문의전화 */
.fix-box-alram .phone-box {background: #1b3666; color: var(--white);/* grid-column: auto / span 2; */ flex: 1 1 50rem;}
.fix-box-alram .phone-box a {display: flex; flex: 1; flex-direction: row; align-items: center; justify-content: space-between;flex-direction: column;}
.fix-box-alram .phone-box .num {font-size: 2rem; margin-top:0.5rem;}
.fix-box-alram .phone-box .num::before {content: "\f232"; font-weight: 300; font-size: 3rem;}
.fix-box-alram .phone-box .num:hover::before {animation: sonaEffect 0.5s linear infinite;}

/* 상담신청 */
.selItem{height: 27px;line-height: 27px;background: none;font-weight: 700;border: none;appearance: revert;color:var(--theme-color);}


@media screen and (max-width: 1740px) {
	
	@media screen and (max-width: 1500px){		
  }
	@media screen and (max-width: 1470px){			
  }
	@media all and (max-width:1280px){
		/* 유틸아이콘만남기기 */
		.utill {gap: 2rem;}
		.utill .bt-cs,
		.utill .bt-tel {font-size: 0; padding: 0; gap: 0;}
		/* 하단관심고객숨기기 */
		.pop-zzim-layer {display: none;}
		/* 푸터 */
		footer .inner {display: block; position: relative; padding-bottom: 5.5rem;}
		footer .license {position: absolute; left: 0; bottom: 0;}
		footer .footer-rt {align-items: flex-start; padding: 0; margin-top: 4rem;}
		footer #btTop {position: absolute; right: 20px; top: 20px;}
		footer .footer-tel {align-items: flex-start;}
	}
	@media screen and (max-width: 1024px){
    #gnb {width: calc(100% - 0rem);}
		#gnb.depth1-list >li .depth1 {font-size: 2rem; padding: 0;}
	}
	@media screen and (max-width: 800px){ /* breakpoint */
		#header .inner {padding: 0 var(--wide-padding);}
    #header:after {display: none;}
	#header.on .logo a.logo-img{background: url(../images/common/logo_on.png) no-repeat left center / contain;}
	
		/* 메뉴숨기기 */
		#gnbWrap {display: none;}
		.mbg{ z-index: 2;}   
		br.mo {display: block;}
		/* 고객센터 좌측이미지 숨기기 */		
    /* [class*=section].customer .common-customer {flex-direction:column;} */
		[class*=section].customer .common-customer .space {display: none;}
    [class*=section].customer .common-customer .customer-box {width: calc(100vw - 10vw); padding: 3rem 0;}
		.utill .bt-mn {display: flex;}
		#header.on .utill .bt-cs, #header.on .utill .bt-tel{color:var(--white);}
		#header.on .inner.on .utill .bt-cs, #header.on .inner.on .utill .bt-tel{color:var(--menu-color);}
		/* 돋보기숨기기 */
		.map .magnifier {visibility: hidden;}
  }
 
	@media screen and (max-width: 640px){
	#header.on .logo a.logo-img{background: url(../images/common/logo_on.png) no-repeat left center / contain;}
    footer {padding-top:5rem;}
		footer address p {display: flex; flex-direction: column; align-items: flex-start;}
		footer address p span {line-height: 1.6;}
		footer address p span + span {padding-left: 0rem; margin-left: 0rem;}
		footer address p span + span:before {display: none;}
		/* footer .logo-img {width: 20rem; height: 3rem;} */
    /* 전화번호픽스 사이즈 줄이기 */
		.tel-fix {display: flex; gap: 1rem; opacity: 1; left: 2%; width: 96%; height: 70px; border-radius: 70px; bottom: 1%; background: var(--white); /* color: var(--theme-color); border: 2px solid currentColor; */}
    .tel-fix .tel-num {gap: 5px; color: currentColor;}
    .tel-fix .tel-num, .tel-fix .tel-num em {font-size: 24px; }
    .tel-fix .tel-num::before {}
    .tel-fix .tel-num em {color: var(--dark-color); margin-left: 0;}
    .tel-fix .fix-top {display: flex; align-items: center; justify-content: center; /* margin: 2.5rem; */ cursor: pointer; width: 10rem; height: 10rem;}
    .tel-fix .fix-top::before {content: '\f0aa'; font-size: 4rem; line-height: 1; color:var(--theme-color);}
    /* 모바일알림박스추가 */
    .fix-box-alram {/* grid-template-columns: repeat(auto-fit, minmax(49%, auto)); */}
    .fix-box-alram .phone-box {/* grid-column: auto / span 2; */}
  }
	@media screen and (max-width: 480px){	/* breakpoint */
    
  }
	@media screen and (max-width: 360px){		
		/* [class*=section].customer .common-customer .customer-box {width: 100%; padding: 5rem 0rem 0;} */
		/* [class*=section].customer .common-customer .frm-customer {width: 80%;} */
  } 
}