@charset "utf-8";
:root {
	--w-60: 60px;

	--fs-12: 12px;
	--fs-14: 14px;
	--fs-16: 16px;
	--fs-18: 18px;
	--fs-20: 20px;
	--fs-22: 22px;
	--fs-26: 26px;
	--fs-30: 30px;
	--fs-32: 32px;
	--fs-36: 36px;
	--fs-48: 48px;
	--fs-62: 62px;
	--fs-68: 68px;
	--fs-82: 82px;
	--fs-110: 110px;
	--fs-115: 115px;
	--fs-150: 150px;
	--fs-240: 240px;
	--fs-300: 300px;

	--cl-8: 8px;
	--cl-9: 9px;
	--cl-10: 10px;
	--cl-12: 12px;
	--cl-13: 13px;
	--cl-14: 14px;
	--cl-20: 20px;
	--cl-28: 28px;
	--cl-31: 31px;
	--cl-50: 50px;
	--cl-64: 64px;

	--minmax-66: 66px;
}

/* 프린트 background 강제 적용 */
body { -webkit-print-color-adjust: exact; /* Chrome, Safari용 */ print-color-adjust: exact; }

.xs { display: none !important; }
.md { display: none !important; }
.xl { display: block !important; }
.xl-none { display: none !important; }
.xs-flex { display: none !important; }
.md-flex { display: none !important; }
.xl-flex { display: flex !important; }

.xs-inline { display: none !important; }
.md-inline { display: none !important; }
.xl-inline { display: inline-block !important; }

.inner-wrap { padding-left: var(--w-60); padding-right: var(--w-60); }
.xl-inner { padding-left: var(--w-60); padding-right: var(--w-60); }
.xl-keep-all {  }

.d-xl-flex { display: flex !important; }
.flex-xl-center { justify-content: center !important; align-items: center !important; }
.flex-xl-wrap { flex-wrap: wrap !important; }
.flex-xl-ac { align-items: center !important; }
.flex-xl-as { align-items: flex-start !important; }
.flex-xl-ae { align-items: flex-end !important; }
.flex-xl-js { justify-content: flex-start !important; }
.flex-xl-je { justify-content: flex-end !important; }
.flex-xl-jc { justify-content: center !important; }
.flex-xl-jsb { justify-content: space-between !important; }
.flex-xl-col { flex-direction: column !important; }
.flex-xl-0-0-auto { flex: 0 0 auto !important; }
.flex-xl-1-1-auto { flex: 1 1 auto !important; }
.flex-xl-0-1-auto { flex: 0 1 auto !important; }
.flex-xl-1-0-auto { flex: 1 0 auto !important; }
.mx-xl-auto { margin-left: auto !important; margin-right: auto !important; }

.ellipsis-xl-1 { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; word-wrap: normal; }
.ellipsis-xl-2 { overflow: hidden; display: -webkit-box !important; -webkit-line: 2; -webkit-box-orient: vertical; text-overflow: ellipsis; }
.ellipsis-xl-3 { overflow: hidden; display: -webkit-box !important; -webkit-line: 3; -webkit-box-orient: vertical; text-overflow: ellipsis; }
.ellipsis-xl-4 { overflow: hidden; display: -webkit-box !important; -webkit-line: 4; -webkit-box-orient: vertical; text-overflow: ellipsis; }
.ellipsis-xl-5 { overflow: hidden; display: -webkit-box !important; -webkit-line: 5; -webkit-box-orient: vertical; text-overflow: ellipsis; }
.ellipsis-xl-6 { overflow: hidden; display: -webkit-box !important; -webkit-line: 6; -webkit-box-orient: vertical; text-overflow: ellipsis; }





/*=========================== common ===========================*/
[data-aos^=fade][data-aos^=fade] {
    opacity: 1 !important;
    transition-property: opacity, transform;
}

[data-aos=fade-up] {
    transform: translate3d(0, 0, 0) !important;
}


#wrap { width: 100%; }
#header { display: none; }
#container { width: 100%; margin-top: 0; }
#container .main-title { font-size: var(--fs-82); font-weight: 800; padding-top: 0; }
#container .snb { display: none; }
#container .contents { width: 100%; padding-bottom: 0; }
#footer { display: none; }
#gnb { display: none; }





/*=========================== 갤러리 view 공통 ===========================*/
#container.default.view {}
#container.default.view .contents {}
#container.default.view .contents .section1 {}
#container.default.view .contents .section1 .inner-wrap { padding-bottom: 0; }
#container.default.view .contents .section1 .inner-wrap .aside { display: none; }

#container.default.view .contents .section1 .inner-wrap .title { font-size: var(--fs-30); font-weight: 600; line-height: normal; padding-top: 50px; display: flex; align-items: center; gap: 24px; }
#container.default.view .contents .section1 .inner-wrap .title > span { font-size: var(--fs-14); font-weight: 700; background: #000 !important; color: #fff; border-radius: 100px; width: var(--cl-64); height: var(--cl-64); display: flex; justify-content: center; align-items: center; aspect-ratio: 1; }
#container.default.view .contents .section1 .inner-wrap .title > span.on { background: var(--text-highlight); }

#container.default.view .contents .section1 .inner-wrap .article { padding: 40px 0 0; display: flex; flex-direction: column; align-items: center; }
#container.default.view .contents .section1 .inner-wrap .article .textarea { padding: 0 0 80px; font-size: var(--fs-18); line-height: 1.42; }

#container.default.view .contents .section1 .inner-wrap .article .view-nav { display: none; }
#container.default.view .contents .section1 .inner-wrap .article .toList { display: none; }
#container.default.view .contents .section2 { display: none; }


/* galley view */
#container.default.gallery.view .contents .section1 .inner-wrap .article .img { width: 100%; border-radius: 6px; overflow: hidden; aspect-ratio: 1195/674; }
#container.default.gallery.view .contents .section1 .inner-wrap .article .img+.textarea { padding-top: 50px; }





/*=========================== product view 공통 ===========================*/
#container.product.view {}
#container.product.view .contents {}
#container.product.view .contents .section1 {}
#container.product.view .contents .section1 .inner-wrap {}
#container.product.view .contents .section1 .inner-wrap .aside {}
#container.product.view .contents .section1 .inner-wrap .aside .inner {}
#container.product.view .contents .section1 .inner-wrap .aside .inner.up {}
#container.product.view .contents .section1 .inner-wrap .aside .inner.down {}

#container.product.view .contents .section1 .inner-wrap .aside .inner > div {}

#container.product.view .contents .section1 .inner-wrap .aside .inner .tag { display: flex; gap: 4px; flex-wrap: wrap; }
#container.product.view .contents .section1 .inner-wrap .aside .inner .tag > li { padding: 8px 12px; border: var(--static-10) solid #C2BEB8; border-radius: 100px; font-size: var(--fs-14); font-weight: 600; color: var(--text-dark); }
#container.product.view .contents .section1 .inner-wrap .aside .inner .tag > li:nth-of-type(1) { font-weight: 700; color: var(--text-highlight); }

#container.product.view .contents .section1 .inner-wrap .aside .inner .title { margin-top: 20px; font-size: var(--fs-36); font-weight: 800; line-height: normal; }

#container.product.view .contents .section1 .inner-wrap .aside .inner .sub-title { margin-top: 14px; font-size: var(--fs-20); font-weight: 700; line-height: normal; }

#container.product.view .contents .section1 .inner-wrap .aside .inner .copylink-wrap { display: none; }
#container.product.view .contents .section1 .inner-wrap .aside .inner .print { display: none; }
#container.product.view .contents .section1 .inner-wrap .aside .inner .download { display: none; }


#container.product.view .contents .section1 .inner-wrap .article { padding-top: 50px; }
#container.product.view .contents .section1 .inner-wrap .article > div {}
#container.product.view .contents .section1 .inner-wrap .article > div > p:nth-of-type(1) { font-size: var(--fs-26); font-weight: 800; }

#container.product.view .contents .section1 .inner-wrap .article .information { width: 100%; }
#container.product.view .contents .section1 .inner-wrap .article .information .slide .swiper { width: 100%; height: auto; overflow: hidden; position: relative; }
#container.product.view .contents .section1 .inner-wrap .article .information .slide .swiper .swiper-wrapper { height: 700px; }
#container.product.view .contents .section1 .inner-wrap .article .information .slide .swiper .swiper-slide { width: 100%; height: 700px; border-radius: 6px; overflow: hidden; display: flex; justify-content: center; }
#container.product.view .contents .section1 .inner-wrap .article .information .slide .swiper .swiper-slide > img { height: 100%; }
#container.product.view .contents .section1 .inner-wrap .article .information .slide .swiper .swiper-slide > video,
#container.product.view .contents .section1 .inner-wrap .article .information .slide .swiper .swiper-slide.fit > img { width: 100%; height: 100%; object-fit: cover; object-position: center; }
#container.product.view .contents .section1 .inner-wrap .article .information .slide .swiper .btn { display: flex; height: 26px; align-items: center; justify-content: center; gap: 40px; margin-top: 22px; }
#container.product.view .contents .section1 .inner-wrap .article .information .slide .swiper .btn > div { position: relative; width: 51px; cursor: pointer; }
#container.product.view .contents .section1 .inner-wrap .article .information .slide .swiper .btn > div > img { width: 100%; }
#container.product.view .contents .section1 .inner-wrap .article .information .slide .swiper .btn .next::before { content: ''; position: absolute; left: -20px; top: 50%; width: var(--static-10); height: 26px; background: #DEDDCF; margin-top: -13px; }

#container.product.view .contents .section1 .inner-wrap .article .information > ul { margin-top: 22px; display: grid; grid-template-columns: repeat(2, 50%); border-bottom: var(--static-10) solid #C2BEB8; }
#container.product.view .contents .section1 .inner-wrap .article .information > ul > li { display: flex; padding: 27px 0; gap: 20px; border-top: var(--static-10) solid #C2BEB8; }
#container.product.view .contents .section1 .inner-wrap .article .information > ul > li:last-child:nth-child(odd) { grid-column: 1 / -1; }
#container.product.view .contents .section1 .inner-wrap .article .information > ul > li > p { width: 90px; flex: 0 0 auto; line-height: 1.6; font-size: var(--fs-16); font-weight: 700; color: var(--text-darkest); }
#container.product.view .contents .section1 .inner-wrap .article .information > ul > li > div { padding-right: 60px;  line-height: 1.42; font-size: var(--fs-18); color: var(--text-darkest); }
#container.product.view .contents .section1 .inner-wrap .article .information > ul > li > div > a { text-decoration: underline; }

#container.product.view .contents .section1 .inner-wrap .article .information .cause { display: flex; margin-top: 30px; color: var(--text-highlight); font-weight: 500; font-size: var(--fs-14); align-items: center; gap: 8px; }
#container.product.view .contents .section1 .inner-wrap .article .information .cause > img { width: 20px; }


#container.product.view .contents .section1 .inner-wrap .article .portfolio { margin-top: 60px; }
#container.product.view .contents .section1 .inner-wrap .article .portfolio > ul { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 30px; gap: 60px 20px; }
#container.product.view .contents .section1 .inner-wrap .article .portfolio > ul > li {}
#container.product.view .contents .section1 .inner-wrap .article .portfolio > ul > li > p:nth-of-type(1) { aspect-ratio: 77/85; border-radius: 6px; overflow: hidden; }
#container.product.view .contents .section1 .inner-wrap .article .portfolio > ul > li > p:nth-of-type(2) { margin-top: 20px; font-size: var(--fs-26); font-weight: 600; line-height: normal;  color: var(--text-darkest); }
#container.product.view .contents .section1 .inner-wrap .article .portfolio > ul > li > dl { margin-top: 16px; display: grid; grid-template-columns: minmax(37px, auto) auto; gap: 2px 14px; justify-content: start; align-items: center; }
#container.product.view .contents .section1 .inner-wrap .article .portfolio > ul > li > dl > dt { font-size: var(--fs-14); font-weight: 700; color: var(--text-dark); }
#container.product.view .contents .section1 .inner-wrap .article .portfolio > ul > li > dl > dd { line-height: 1.48; font-size: var(--fs-16); color: var(--text-dark); }

#container.product.view .contents .section1 .inner-wrap .article .portfolio > ul > li > div { font-size: var(--fs-14); font-weight: 500; line-height: normal; color: var(--text-dark);  padding-top: 20px; margin-top: 20px; padding-right: 40px; border-top: var(--static-10) dashed #C2BEB8; }


#container.product.view .contents .section1 .inner-wrap .article .location { margin-top: 60px; border-bottom: var(--static-10) solid #C2BEB8; }
#container.product.view .contents .section1 .inner-wrap .article .location #map { margin-top: 30px; width: 100%; aspect-ratio: 239/128; }
#container.product.view .contents .section1 .inner-wrap .article .location > a { display: none; }

#container.product.view.fundView .contents .section1 .inner-wrap .article .location { border-bottom: 0; }
#container.product.view.fundView .contents .section1 .inner-wrap .article .location > a { margin-bottom: 0; }


#container.product.view .contents .section1 .inner-wrap .article .list { margin-top: 60px; }
#container.product.view .contents .section1 .inner-wrap .article .list .faq-list { margin-top: 30px; }


#container.product.view .contents .section1 .inner-wrap .article .construction { margin-top: 50px; }
#container.product.view .contents .section1 .inner-wrap .article .construction .title { display: flex; justify-content: space-between; align-items: center; }
#container.product.view .contents .section1 .inner-wrap .article .construction .title > p { font-size: var(--fs-26); font-weight: 800; text-transform: uppercase; }
#container.product.view .contents .section1 .inner-wrap .article .construction .title > div { width: 200px; }
#container.product.view .contents .section1 .inner-wrap .article .construction .title > div > select {}

#container.product.view .contents .section1 .inner-wrap .article .construction .slide { width: 100%; overflow: hidden; margin-top: 20px; }
#container.product.view .contents .section1 .inner-wrap .article .construction .slide .construct { position: relative; border-radius: 6px; overflow: hidden; }

#container.product.view .contents .section1 .inner-wrap .article .construction .slide .construct .swiper-slide { width: 100%; height: 640px; }
#container.product.view .contents .section1 .inner-wrap .article .construction .slide .construct .swiper-slide > img { width: 100%; height: 100%; object-fit: cover; object-fit: center; }

#container.product.view .contents .section1 .inner-wrap .article .construction .slide .construct .process { position: absolute; left: 0; bottom: 0; width: 100%; height: 132px; background: rgba(0,0,0,0.4); z-index: 2; }
#container.product.view .contents .section1 .inner-wrap .article .construction .slide .construct .process > p { height: 100%; width: 45%; background: var(--text-highlight); }
#container.product.view .contents .section1 .inner-wrap .article .construction .slide .construct .process > div { position: absolute; left: 0; top: 12px; width: 100%; height: 100%; color: #fff; display: flex; flex-direction: column; justify-content: flex-end; align-items: center; }
#container.product.view .contents .section1 .inner-wrap .article .construction .slide .construct .process > div > div { display: flex; gap: 28px; font-size: var(--fs-20); font-weight: 700; }
#container.product.view .contents .section1 .inner-wrap .article .construction .slide .construct .process > div > div > p:nth-of-type(2) { position: relative; }
#container.product.view .contents .section1 .inner-wrap .article .construction .slide .construct .process > div > div > p:nth-of-type(2)::after { content: ''; position: absolute; left: -14px; top: 50%; width: var(--static-10); height: 24px; background: #817E7A; margin-top: -12px; }
#container.product.view .contents .section1 .inner-wrap .article .construction .slide .construct .process > div > p { margin-top: 20px; font-size: var(--fs-82); font-weight: 800; }

#container.product.view .contents .section1 .inner-wrap .article .construction .slide .btn { display: flex; justify-content: center; height: 26px; align-items: center; margin-top: 20px; gap: 40px; position: relative; }
#container.product.view .contents .section1 .inner-wrap .article .construction .slide .btn::after { content: ''; position: absolute; width: var(--static-10); height: 26px; top: 0; left: calc(50% -var(--static-10));  background: #DEDDCF; opacity: 0.4; }
#container.product.view .contents .section1 .inner-wrap .article .construction .slide .btn > div { width: 18px; cursor: pointer; }
#container.product.view .contents .section1 .inner-wrap .article .construction .slide .btn > div > img { width: 100%; }



/* faq 형식 */
#container .faq-list > dl {}
#container .faq-list > dl:nth-of-type(1) { border-top: var(--static-10) solid #4A4948; }
#container .faq-list > dl:last-of-type { border-bottom: var(--static-10) solid #C2BEB8; }
#container .faq-list > dl > dt { position: relative; display: flex; align-items: center; padding: 27px 82px 27px 0; font-size: var(--fs-16); font-weight: 500; color: var(--text-dark); cursor: pointer; }
#container .faq-list > dl~dl > dt { border-top: var(--static-10) solid #C2BEB8; }
#container .faq-list > dl > dt::after { content: ''; position: absolute; top: 50%; margin-top: -6px; right: 10px; width: 12px; height: 12px; background: url('../img/icon-faq-plus.svg') center/100% no-repeat; }
#container .faq-list > dl > dt.active::after { background: url('../img/icon-faq-minus.svg') center/100% no-repeat; }
#container .faq-list > dl > dt > p { width: 135px; flex: 0 0 auto; }
#container .faq-list > dl > dt > div { flex: 1 1 0; font-size: var(--fs-18); line-height: 1.42; color: #000;  }
#container .faq-list > dl > dt.active > div { font-weight: 700; }
#container .faq-list > dl > dt > span { width: 100px; text-align: right; flex: 0 0 auto; }

#container .faq-list > dl > dd { display: none; border-top: var(--static-10) solid #C2BEB8; padding: 40px 135px; background: #f2f2f2; font-size: var(--fs-18); line-height: 1.42; color: var(--text-dark);  }
#container .faq-list > dl > dd .download { margin-top: 20px; }
#container .faq-list .paging { border-top: 0; }


#container .contents .paging { padding-top: 60px; display: flex; justify-content: center; align-items: center; border-top: var(--static-10) solid #C2BEB8; }
#container .contents .paging > p { cursor: pointer; }
#container .contents .paging > p.prev { margin-left: 15px; }
#container .contents .paging > p.next { margin-right: 15px; }
#container .contents .paging > p.inactive { opacity: 0.3; }
#container .contents .paging > ul { margin: 0 24px; display: flex; gap: 8px; }
#container .contents .paging > ul > li.dot { display: flex; justify-content: center; align-items: center; padding-bottom: 10px; }
#container .contents .paging > ul > li > a { display: block; width: 46px; height: 46px; display: flex; justify-content: center; align-items: center; border: var(--static-10) solid #EFEFE9; border-radius: 100px; font-size: var(--fs-16); font-weight: 500; color: var(--text-body); }
#container .contents .paging > ul > li > a.current { background: #000; border: var(--static-10) solid #000; color: #fff; }




/*=========================== 개인정보처리방침 공통 ===========================*/
#container[data-name-group="개인정보처리방침"] {}
#container[data-name-group="개인정보처리방침"] .contents { line-height: normal; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap {}

#container[data-name-group="개인정보처리방침"] .contents .inner-wrap .aside { display: none; }


#container[data-name-group="개인정보처리방침"] .contents .inner-wrap > .title { font-size: var(--fs-30); font-weight: 600; line-height: 1; margin-bottom: 20px; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap > .title > span+span { font-size: var(--fs-14); display: block; margin-top: 20px; color: var(--text-body); font-weight: 400; }


#container[data-name-group="개인정보처리방침"] .contents .inner-wrap > .top-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 0 10px; border-top: var(--static-20) solid #4A4948; border-bottom: var(--static-10) solid #4A4948; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap > .top-grid > li { padding: 10px 0; font-size: var(--fs-14); font-weight: 700; border-bottom: var(--static-10) dashed #C2BEB8; }
#container.trems_02 .contents .inner-wrap > .top-grid > li:nth-last-child(-n+2) { border-bottom: 0; }
#container.terms_03 .contents .inner-wrap > .top-grid > li:nth-last-child(-n+1) { border-bottom: 0; }
#container.terms_04 .contents .inner-wrap > .top-grid > li:nth-last-child(-n+2) { border-bottom: 0; }
#container.terms_05 .contents .inner-wrap > .top-grid > li:nth-last-child(-n+2) { border-bottom: 0; }
#container.terms_06 .contents .inner-wrap > .top-grid > li:nth-last-child(-n+2) { border-bottom: 0; }


#container[data-name-group="개인정보처리방침"] .contents .inner-wrap > .article { margin-top: 20px; font-size: var(--fs-16); line-height: 1.48; color: var(--text-dark); }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap > .title+.article { margin-top: 0; }
#container.terms_07 .contents .inner-wrap > .title+.article,
#container.terms_08 .contents .inner-wrap > .title+.article { border-top: var(--static-10) solid #4A4948; }
#container.terms_08 .contents .inner-wrap > .title+.article { padding-top: 20px; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap > .article h3 { font-size: var(--fs-20); font-weight: 700; color: var(--text-darkest); line-height: normal; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap > .article h3+a { margin-top: 20px; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap > .article h4 { font-size: var(--fs-18); font-weight: 600; color: #000; line-height: normal; margin-bottom: 16px; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap > .article h4~h4 { margin-top: 30px; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap > .article ul.dot { padding-left: 10px; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap > .article ul.dot > li { display: flex; gap: 10px; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap > .article ul.dot > li::before { content: ''; width: 3px; height: 3px; border-radius: 100px; background: var(--text-body); margin-top: 10px; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap > .article dl.list { display: flex; gap: 3px; }

#container[data-name-group="개인정보처리방침"] .contents .inner-wrap > .article > dl { margin-top: 50px; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap > .article > dl > dt { margin-bottom: 30px; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap > .article > dl > dd {}


#container[data-name-group="개인정보처리방침"] .contents .inner-wrap .table-wrap {}
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap table { width: 100%; border-top: var(--static-20) solid #4A4948; border-collapse: collapse; border-spacing: 0; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap table td { color: #000; font-size: var(--fs-16); padding: 10px 20px; word-break: keep-all; line-height: 1.48; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap table td:nth-of-type(1) { padding-left: 0; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap table td:last-of-type { padding-right: 0; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap table td > strong { color: var(--text-dark); }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap table thead { border-bottom: var(--static-10) solid #4A4948; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap table thead > tr > td { color: var(--text-dark); font-weight: 700; }
#container[data-name-group="개인정보처리방침"] .contents .inner-wrap table tbody > tr { border-bottom: var(--static-10) solid #C2BEB8; }


#container.terms_04 .contents .inner-wrap table thead > tr > td:nth-of-type(1) { font-weight: 500; }
#container.terms_06 .contents .inner-wrap .table-wrap+.info { display: none; }
#container.terms_06 .contents .inner-wrap .table-2 tr > td { text-align: center; }
#container.terms_06 .contents .inner-wrap .table-3 tr > td { text-align: center; }
