@charset "utf-8";
@import url('html5_reset.css');
@import url('layout.css');


/********** skip_nav **********/
.skip_nav { position: relative; z-index: 1000; display: block; overflow: hidden; height: 0; background:#000; text-align: center; }
.skip_nav:focus { overflow: auto; height: auto; padding: 5px 0; color:#fff; }

/********** 숨김 **********/
.hide { overflow: hidden; position: absolute; width: 1px; height: 1px; margin: -1px; clip: rect(0 0 0 0); }

/********** overflow-hidden **********/
.overflow-hidden { overflow: hidden; }

:root {
	/********** font **********/
	--head-font: "Montserrat";
	--body-font: "Pretendard";

	/********** color **********/
	--theme1: #E1FF01;
	--theme1-light: #EBFF55;
	--theme2: #FF46F1;
	--theme2-dark: #e01cd0;

	--cate1: #FFF0A3;
	--cate2: #BFE882;
	--cate3: #c0a9ff;
	--cate4: #ade1ff;
	--cate5: #ffc4f7;

	--black90: rgba(0,0,0,.9);
	--black80: rgba(0,0,0,.8);
	--black70: rgba(0,0,0,.7);
	--black60: rgba(0,0,0,.6);
	--black50: rgba(0,0,0,.5);
	--black40: rgba(0,0,0,.4);
	--black30: rgba(0,0,0,.3);
	--black20: rgba(0,0,0,.2);
	--black10: rgba(0,0,0,.1);
	--gray-33: #333333;
	--gray-44: #444444;
	--gray-55: #555555;
	--gray-66: #666666;
	--gray-75: #757575;
	--gray-99: #999999;
	--gray-cc: #cccccc;
	--gray-dd: #dddddd;
	--gray-e5: #e5e5e5;
	--gray-f5: #f5f5f5;
	--gray-f6: #f6f6f6;
	--gray-f7: #f7f7f7;
	--gray-f9: #f9f9f9;
	--gray-fa: #fafafa;
	--gray-fc: #fcfcfc;
	--white90: rgba(255,255,255,.9);
	--white80: rgba(255,255,255,.8);
	--white70: rgba(255,255,255,.7);
	--white60: rgba(255,255,255,.6);
	--white50: rgba(255,255,255,.5);
	--white40: rgba(255,255,255,.4);
	--white30: rgba(255,255,255,.3);
	--white20: rgba(255,255,255,.2);
	--white10: rgba(255,255,255,.1);


	--error: rgb(224, 29, 29);
	--error-light: #fff3f3;
}

/* font family */
.fm-head { font-family: var(--head-font) !important; letter-spacing: -0.3px; }
.fm-body { font-family: var(--body-font); }

/* background color */
.bg-000 { background-color: #000; color: #fff; }
.bg-gray-33 { background-color: var(--gray-33); color: #fff; }
.bg-gray-44 { background-color: var(--gray-44); color: #fff; }
.bg-gray-55 { background-color: var(--gray-55); color: #fff; }
.bg-gray-66 { background-color: var(--gray-66); color: #fff; }
.bg-gray-99 { background-color: var(--gray-99); color: #fff; }
.bg-gray-dd { background-color: var(--gray-dd); color: #fff; }
.bg-gray-e5 { background-color: var(--gray-e5); }
.bg-gray-f5 { background-color: var(--gray-f5); }
.bg-gray-f7 { background-color: var(--gray-f7); }
.bg-gray-f9 { background-color: var(--gray-f9); }
.bg-gray-fa { background-color: var(--gray-fa); }
.bg-fff { background-color: #ffffff; }
.bg-theme1 { background-color: var(--theme1) !important; }
.bg-theme2 { background-color: var(--theme2) !important; }
.bg-cate1 { background-color: var(--cate1) !important; }
.bg-cate2 { background-color: var(--cate2) !important; }
.bg-cate3 { background-color: var(--cate3) !important; }
.bg-cate4 { background-color: var(--cate4) !important; }
.bg-error-light { background-color: var(--error-light); }



/* font color */
.fc-000 { color: #000; }
.fc-gray-33 { color: var(--gray-33); }
.fc-gray-44 { color: var(--gray-44); }
.fc-gray-55 { color: var(--gray-55); }
.fc-gray-66 { color: var(--gray-66); }
.fc-gray-75 { color: var(--gray-75); }
.fc-gray-99 { color: var(--gray-99); }
.fc-gray-dd { color: var(--gray-dd); }
.fc-gray-cc { color: var(--gray-cc); }
.fc-gray-e5 { color: var(--gray-e5); }
.fc-gray-f5 { color: var(--gray-f5); }
.fc-gray-f9 { color: var(--gray-f9); }
.fc-fff { color: #fff !important; }
.fc-theme1 { color: var(--theme1); }
.fc-theme2 { color: var(--theme2); }
.fc-theme2-dark { color: var(--theme2-dark); }
.fc-error { color: var(--error); }


/* border color */
.bd-000 { border: 1px solid #000; }
.bd-gray-33 { border: 1px solid var(--gray-33); }
.bd-gray-44 { border: 1px solid var(--gray-44); }
.bd-gray-55 { border: 1px solid var(--gray-55); }
.bd-gray-66 { border: 1px solid var(--gray-66); }
.bd-gray-99 { border: 1px solid var(--gray-99); }
.bd-gray-dd { border: 1px solid var(--gray-dd); }
.bd-gray-cc { border: 1px solid var(--gray-cc); }
.bd-gray-e5 { border: 1px solid var(--gray-e5); }
.bd-gray-e9 { border: 1px solid var(--gray-e9); }
.bd-gray-f5 { border: 1px solid var(--gray-f5); }
.bd-gray-f9 { border: 1px solid var(--gray-f9); }
.bd-error { border: 1px solid var(--error); }





.mx-w-200 { width: 100%; max-width: 200px; margin-left: auto; margin-right: auto; }
.mx-w-470 { width: 100%; max-width: 470px; margin-left: auto; margin-right: auto; }
.mx-w-960 { width: 100%; max-width: 960px; margin-left: auto; margin-right: auto; }
.mx-w-1500 { width: 100%; max-width: 1500px; margin-left: auto; margin-right: auto; }

.mx-h-100 { max-height: 100px; }
.mx-h-500 { max-height: 500px; }


/********** text-style **********/
.txt-55 { display: block; line-height: 1.4; font-weight: 600; font-size: 5.5rem; word-break: keep-all; }
.txt-48 { display: block; line-height: 1.4; font-weight: 600; font-size: 4.8rem; word-break: keep-all; }
.txt-36 { display: block; line-height: 1.4; font-weight: 600; font-size: 3.6rem; word-break: keep-all; }
.txt-30 { display: block; line-height: 1.4; font-weight: 600; font-size: 3rem; word-break: keep-all; }
.txt-26 { display: block; line-height: 1.4; font-weight: 600; font-size: 2.6rem; word-break: keep-all; }
.txt-24 { display: block; line-height: 1.4; font-weight: 600; font-size: 2.4rem; word-break: keep-all; }
.txt-22 { display: block; line-height: 1.4; font-weight: 600; font-size: 2.2rem; word-break: keep-all; }
.txt-20 { display: block; line-height: 1.4; font-weight: 600; font-size: 2rem; word-break: keep-all; }
.txt-18 { display: block; line-height: 1.4; font-weight: 600; font-size: 18px; word-break: keep-all; }
.txt-17 { display: block; line-height: 1.4; font-weight: 600; font-size: 17px; word-break: keep-all; }
.txt-16 { display: block; line-height: 1.4; word-break: keep-all; }
.txt-15 { display: block; line-height: 1.4; font-size: 15px; word-break: keep-all; }

.txt-55.fw-400.fm-head.fc-gray-cc { line-height: 1; }
@media only screen and (max-width: 1023px) {
	.txt-48 { font-size: 4.5rem; }
	.txt-36 { font-size: 3.3rem; }
	.txt-30 { font-size: 2.7rem; }
	.txt-26 { font-size: 2.3rem; }
	.txt-22 { font-size: 1.9rem; }
	.txt-20 { font-size: 18px; }
	.txt-18 { font-size: 17px; }
}
@media only screen and (max-width: 767px) {
	.txt-48 { font-size: 4rem; }
	.txt-36 { font-size: 3rem; }
	.txt-30 { font-size: 2.4rem; }
	.txt-26 { font-size: 2rem; }
	.txt-22 { font-size: 18px; }
	.txt-20 { font-size: 17px; }

	.txt-55.fw-400.fm-head.fc-gray-cc { font-size: 4rem; }
}

/* mark */
.m-tit-st1 { position: relative; line-height: 1.3; padding-left: 30px; }
.m-tit-st1::before { content:""; position: absolute; top: 3px; left: 0; display: block; width: 18px; height: 18px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23f25378' class='bi bi-check-lg' viewBox='0 0 16 16'%3E%3Cpath d='M12.736 3.97a.733.733 0 0 1 1.047 0c.286.289.29.756.01 1.05L7.88 12.01a.733.733 0 0 1-1.065.02L3.217 8.384a.757.757 0 0 1 0-1.06.733.733 0 0 1 1.047 0l3.052 3.093 5.4-6.425z'/%3E%3C/svg%3E") no-repeat center center / contain; }





/********** btn **********/
/* 버튼 정렬 */
.btn-lf { display: flex; justify-content: flex-start; gap: 5px; }
.btn-ce { display: flex; justify-content: center; gap: 5px; }
.btn-rg { display: flex; justify-content: flex-end; gap: 5px; }
.btn-spb { display: flex; justify-content: space-between; gap: 5px; }
@media only screen and (max-width: 560px) {
	.btn-ce { flex-wrap: wrap; }
	.btn-ce > a, .btn-ce > button { flex: 1; min-width: fit-content; }
}

.btn-bace1 { display: inline-flex; align-items: center; justify-content: center; gap: 10px; line-height: 1.2; padding: 9px 15px; font-family: "Pretendard"; font-weight: 500; text-align: center; }
.btn-bace2 { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-width: 160px; height: 50px; line-height: 50px; padding: 0 20px; font-family: "Pretendard"; font-weight: 500; font-size: 18px; text-align: center; transition: background 1s; }
.btn-bace2.bd-000:hover { color: #fff; background: #000; }
.btn-bace3 { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-width: fit-content; height: 40px; line-height: 40px; padding: 0 15px; font-size: 15px; border-radius: 2px; }
.btn-bace4 { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-width: fit-content; font-weight: 500; font-size: 17px; }
.btn-bace4:hover i { animation: shakeX 0.5s ease infinite; }
@keyframes shakeX {
  0% { transform: translateX(0); }
  50% { transform: translateX(4px); }
  100% { transform: translateX(0); }
}
.btn-bace5 { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-width: fit-content; height: 30px; line-height: 30px; padding: 0 15px; font-size: 15px; border-radius: 2px; }
.btn-bace6 { display: inline-flex; align-items: center; justify-content: center; gap: 10px; min-width: fit-content; height: 54px; line-height: 54px; padding: 0 20px; font-weight: 500; font-size: 18px; }
.list-btn { display: inline-flex; align-items: center; justify-content: center; width: 100px; height: 100px; font-size: 30px; color: #fff; background: #000; }

@media only screen and (max-width: 560px) {
	.btn-bace2 { font-size: 16px; }
	.list-btn { width: 60px; height: 60px; font-size: 20px; }
}



/********* cate *********/
/* 기본 */
.cate-st1 { display: inline-block; height: 30px; line-height: 30px; padding: 0 12px; font-weight: 500; background: var(--gray-e5); }

/* 작은버전 */
.cate-st2 { display: inline-block; height: 26px; line-height: 26px; padding: 0 8px; font-weight: 500; font-size: 13px; }

/* 가로 크기 고정 */
.cate-st3 { display: inline-block; width: 70px; height: 30px; line-height: 28px; font-weight: 500; font-size: 14px; background-color: #fff; border: 1px solid #000; text-align: center; }
@media only screen and (max-width: 560px) {
	.cate-st3 { width: 55px; height: 30px; line-height: 28px; font-size: 13px; }
	
}

.loader-wrap { position: fixed; top: 0; left: 0; z-index: 1000; display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; }
.loader { width: 120px; height: 20px; background: linear-gradient(#000 0 0) 0/0% no-repeat#ddd; animation: l1 2s infinite linear; }
@keyframes l1 { 100% { background-size: 100%; } }




/* 에디터 텍스트 */
.editor-text { line-height: 1.4 !important; font-family: "Pretendard" !important; font-size: 16px !important; word-break: break-all; word-wrap: break-word; }
.editor-text img { max-width: 100% !important; height: auto !important; }
.editor-text .youtube-wrap { max-width: 1000px; margin: 0 auto; }
.editor-text .youtube-wrap .youtube { position: relative; width: 100%; height: 0; padding-bottom: 56%; }
.editor-text .youtube-wrap .youtube iframe { position: absolute; top: 0; left: 0; width: 100% !important; height: 100% !important; }







/********** tab **********/
.tab-btn.tab-st1 { display: flex; gap: 6px; }
.tab-btn.tab-st1 > li {  }
.tab-btn.tab-st1 > li > a { display: block; height: 35px; line-height: 35px; padding: 0 20px; font-weight: 500; background: var(--gray-e5); }
.tab-btn.tab-st1 > li.on > a { color: #fff; background: #000; }

.tab-btn.tab-st2 { display: flex; }
.tab-btn.tab-st2 > li { flex: 1; }
.tab-btn.tab-st2 > li > a { display: block; width: 100%; height: 50px; line-height: 50px; padding: 0 20px; font-weight: 500; font-size: 18px; background: var(--gray-f6); text-align: center; }
.tab-btn.tab-st2 > li.on > a { font-weight: 700; color: #fff; background: #000; }

.tab-btn.tab-st3 { display: flex; flex-wrap: wrap; gap: 6px; }
.tab-btn.tab-st3 > li {  }
.tab-btn.tab-st3 > li > a { display: block; width: 70px; height: 35px; line-height: 35px; font-weight: 500; color: #000; border: 1px solid #000; text-align: center; }
.tab-btn.tab-st3 > li.on > a { color: #fff; background: #000; }

.tab-conts .tab-cont { display: none; }
.tab-conts .tab-cont.on { display: block;  }

@media only screen and (max-width: 1023px) {
	.tab-btn.tab-st2 { flex-wrap: wrap; }
	.tab-btn.tab-st2 > li { flex: 1 1 33.3%; }
}
@media only screen and (max-width: 767px) {
	.tab-btn.tab-st2 > li { flex: 1 1 50%; }
	.tab-btn.tab-st2 > li > a { font-size: 16px; }

}




.acc-wrap {  }
.acc-wrap .acc-cont { display: none; }






/********** list **********/
.list-st1 > li { position: relative; line-height: 1.5; padding-left: 15px;  }
.list-st1 > li::before { content:""; position: absolute; top: 10px; left: 3px; width: 4px; height: 4px; background: var(--gray-33); border-radius: 100%; }

.list-st2 > li { position: relative; line-height: 1.3; padding-left: 12px; color: #444; }
.list-st2 > li::before { content:""; position: absolute; top: 8px; left: 0; width: 5px; height: 1px; background: var(--gray-cc); }
.list-st2 > li + li { margin-top: 5px; }

.list-st3 > li { position: relative; line-height: 1.4; padding-left: 28px; counter-increment: number1; font-weight: 500; }
.list-st3 > li::before { content: counter(number1); display: inline-block; position: absolute; top: 2px; left: 0; width: 21px; height: 21px; line-height: 21px; font-weight: 500; font-size: 13px; color: #fff; text-align: center; background: var(--sub5); border-radius: 5px; }
.list-st3 > li + li { margin-top: 10px; }




.num-st1 { flex-shrink: 0; display: block; width: 24px; height: 24px; line-height: 24px; font-size: 14px; color: #fff; background: #000; text-align: center; border-radius: 100%; }
.num-st2 { flex-shrink: 0; display: block; width: 35px; height: 35px; line-height: 35px; font-size: 14px; background: var(--gray-f5); text-align: center; border-radius: 3px; }
.num-st3 { flex-shrink: 0; display: block; width: 48px; height: 48px; line-height: 48px; font-size: 14px; background: var(--gray-f5); text-align: center; border-radius: 3px; }
@media only screen and (max-width: 1200px) {
	.num-st3 { width: 33px; height: 33px; line-height: 33px; }

}




/********** box **********/
/* bd-box */
.bd-tp-st1 { position: relative; padding-top: 2rem; border-top: 1px solid var(--gray-e5); }
.bd-tp-st2 { position: relative; display: flex; border-top: 1px solid #000; }
.bd-tp-st2 .lf { flex-shrink: 0; width: 20%; padding-right: 3rem; }
.bd-tp-st2 .rg { flex-grow: 1; }
.bd-bt-st1 { position: relative; padding-bottom: 2rem; border-bottom: 1px solid #666; }
.bd-bt-st2 { border-bottom: 1px solid var(--gray-e5); }

.bd-box-st1 {position: relative; padding: 2rem; border: 1px solid var(--gray-e5); }

/* bg-box */
.bg-box-st1 { padding: 30px; background: var(--gray-f6); border-radius: 2px; }
/* .bg-box-st1-1 { padding: 20px; } */
@media only screen and (max-width: 767px) {
	.bg-box-st1 { padding: 20px; }
}


/********** info list **********/
.info-st1 {  }
.info-st1 > li { line-height: 1.4; }
.info-st1 > li i { margin-right: 5px; }
.info-st1 > li + li { margin-top: 8px; }

.info-st2 {  }
.info-st2 > li { display: flex; gap: 8px; }
.info-st2 > li + li { margin-top: 8px; }

.info-st3 { display: flex; align-items: flex-end; gap: 10px; }
.info-st3 li { flex: 1; display: flex; flex-direction: column; align-items: flex-end; gap: 10px; }

.info-st4 {  }
.info-st4 li { position: relative; display: inline-block; }
.info-st4 li + li { margin-left: 1.6rem; padding-left: 1.6rem; }
.info-st4 li + li::before { content:""; position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 1px; height: 70%; background: var(--gray-cc); }
@media only screen and (max-width: 1023px) {
	.info-st1 li { flex: 1 1 46%; }
}
@media only screen and (max-width: 490px) {
	.info-st1 li { flex: 1 1 100%; }
	
	.info-st3 { flex-direction: column; }
}


/* input */
.inp-st1 { height: 40px; line-height: 40px; padding: 0 15px; font-size: 15px; border: 1px solid var(--gray-dd); border-radius: 2px; background: #fff; white-space: nowrap; text-overflow: ellipsis; }
select.inp-st1 { padding: 0 40px 0 15px; background: #fff url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13.5 7.5'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: none; stroke: %23666; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2px; %7D %3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M.75.75l6,6L12.75.75'/%3E%3C/svg%3E") no-repeat right 15px center / auto 5px; appearance: none; }
textarea.inp-st1 { height: unset; padding: 15px; }
.inp-100 { max-width: 100px; }
.inp-200 { max-width: 200px; }
.inp-st2 { height: 48px; line-height: 48px; padding: 0 15px; font-size: 15px; border: 1px solid var(--gray-dd); border-radius: 2px; background: #fff; white-space: nowrap; text-overflow: ellipsis; }
.inp-st3 { height: 54px; line-height: 54px; padding: 0 15px; font-weight: 500; font-size: 16px; border: 2px solid #000; background: #fff; white-space: nowrap; text-overflow: ellipsis; }
select.inp-st3 { padding: 0 40px 0 15px; background: #fff url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 13.5 7.5'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: none; stroke: %23000; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2px; %7D %3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M.75.75l6,6L12.75.75'/%3E%3C/svg%3E") no-repeat right 15px center / auto 5px; appearance: none; }
.inp-wrap { display: flex; align-items: center; gap: 5px; }
.sch-inp-st1 { display: flex; flex-wrap: nowrap; align-items: center; border: 2px solid #000; overflow: hidden; }
.sch-inp-st1 input { width: 100%; height: 50px; line-height: 50px; border: 0; padding: 0 20px; font-size: 1.8rem; }
.sch-inp-st1 input::placeholder { font-weight: 600; font-size: 16px; color: #aaa; }
.sch-inp-st1 button { display: flex; align-items: center; justify-content: center; width: 50px; height: 50px; background: #fff; }
@media only screen and (max-width: 450px) {
	.inp-st1 { padding: 0 10px; }
	select.inp-st1 { padding: 0 30px 0 10px; background-position: right 10px center;; }
	.inp-wrap { flex-wrap: wrap; justify-content: center; }
	.inp-wrap button { width: 100%;; }
}

/********** checkbox & radio **********/
/* 리스트 */
.chk-list-st1 { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 20px; }
.chk-list-st2 { display: flex; flex-wrap: wrap; align-items: center; gap: 4px; }
.chk-list-st3 { display: flex; flex-wrap: wrap; align-items: center; }
.chk-list-st3 .chk-st2 { width: 100%; }

/* checkbox */
.chk-st1 { position: relative; }
.chk-st1 input { appearance:none; position: absolute; top: -1px; left: 0; width: 24px; height: 24px; border: none; background: transparent; }
.chk-st1 label { position: relative; display: inline-block; line-height: 1.5; padding-left: 35px; font-size: 15px; cursor: pointer; }
.chk-st1 label::before { content: ""; position: absolute; top: 50%; transform: translateY(-50%); left: 0; z-index: 1; width: 24px; height: 24px; border: 1px solid var(--gray-e5); background: #fff; }
.chk-st1 input:checked + label { font-weight: 600; color: #333; }
.chk-st1 input:checked + label::before { border: 1px solid #000; background: #000 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23fff' class='bi bi-check-lg' viewBox='0 0 16 16'%3E%3Cpath d='M12.736 3.97a.733.733 0 0 1 1.047 0c.286.289.29.756.01 1.05L7.88 12.01a.733.733 0 0 1-1.065.02L3.217 8.384a.757.757 0 0 1 0-1.06.733.733 0 0 1 1.047 0l3.052 3.093 5.4-6.425z'/%3E%3C/svg%3E") no-repeat center center / auto 15px; }

.chk-st2 { position: relative; display: block; padding: 8px 0; }
.chk-st2 input { appearance:none; position: absolute; top: 2px; right: 0; width: 18px; height: 18px; border: none; background: transparent; }
.chk-st2 label { position: relative; display: inline-block; width: 100%; line-height: 1.5; padding-right: 35px; font-size: 15px; cursor: pointer; word-break: keep-all; }
.chk-st2 label:hover { color: #555; }
.chk-st2 label::before { content: ""; position: absolute; top: 2px; right: 0; z-index: 1; width: 18px; height: 18px; border: 1px solid var(--gray-e5); background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23ccc' class='bi bi-check-lg' viewBox='0 0 16 16'%3E%3Cpath d='M12.736 3.97a.733.733 0 0 1 1.047 0c.286.289.29.756.01 1.05L7.88 12.01a.733.733 0 0 1-1.065.02L3.217 8.384a.757.757 0 0 1 0-1.06.733.733 0 0 1 1.047 0l3.052 3.093 5.4-6.425z'/%3E%3C/svg%3E") no-repeat center center / auto 13px; }
.chk-st2 label:hover::before { background-color: var(--gray-f6); }
.chk-st2 input:checked + label::before { border: 1px solid #000; background: #000 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23fff' class='bi bi-check-lg' viewBox='0 0 16 16'%3E%3Cpath d='M12.736 3.97a.733.733 0 0 1 1.047 0c.286.289.29.756.01 1.05L7.88 12.01a.733.733 0 0 1-1.065.02L3.217 8.384a.757.757 0 0 1 0-1.06.733.733 0 0 1 1.047 0l3.052 3.093 5.4-6.425z'/%3E%3C/svg%3E") no-repeat center center / auto 13px; }

.chk-st3 { position: relative; }
.chk-st3 label { position: relative; display: inline-block; width: 18px; height: 18px; background: #fff; border: 1px solid var(--gray-dd); border-radius: 4px; cursor: pointer; }
.chk-st3 input { appearance:none; position: absolute; top: 0; left: 0; width: 100%; height: 100%; margin: 0; padding: 0; cursor: pointer; }
.chk-st3 input:checked + label { border: 1px solid var(--primary1); background: var(--primary1) url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 22.64 16.16'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: %23fff; stroke-width: 1px; %7D %3C/style%3E%3C/defs%3E%3Cpolygon class='cls-1' points='0 7.91 1.77 6.14 8.25 12.62 20.87 0 22.64 1.77 8.25 16.16 0 7.91'/%3E%3C/svg%3E") no-repeat center center / 10px 7px; }
.chk-st3 input:disabled + label { background: var(--gray-e9); }

/* radio */
.rdo-st1 { flex-shrink: 0; position: relative; }
.rdo-st1 input { appearance:none; position: absolute; top: -1px; left: 0; width: 20px; height: 20px; border: none; background: transparent; }
.rdo-st1 label { position: relative; display: inline-block; line-height: 1.5; padding-left: 30px; font-size: 15px; cursor: pointer; }
.rdo-st1 label::before { content: ""; position: absolute; top: 50%; transform: translateY(-50%); left: 0; z-index: -1; width: 20px; height: 20px; border: 1px solid var(--gray-e5); border-radius: 100%; background: #fff; }
.rdo-st1 input:checked + label { font-weight: 600; }
.rdo-st1 input:checked + label::before { border-color: #000; }
.rdo-st1 input:checked + label::after { content:""; position: absolute; top: 50%; left: 4px; transform: translateY(-50%); width: 12px; height: 12px; background: #000; border-radius: 100%; }


.rdo-st2 { position: relative; }
.rdo-st2 input { appearance: none; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; background: transparent; }
.rdo-st2 label { position: relative; display: inline-block; height: 30px; line-height: 30px; padding: 0 12px; font-weight: 500; background: var(--gray-e5); cursor: pointer; }
.rdo-st2 input:checked + label { background: var(--theme1); }

/********** 폼 **********/
.esn { font-size: 14px; color: var(--theme2); }

.form-wrap-st1 { padding: 2rem; border: 1px solid var(--gray-e5); }
.form-wrap-st1 .form-group { display: flex; align-items: center; padding: 2rem 0.6rem 0.6rem 0.6rem; }
.form-wrap-st1 .form-group-st2 { align-items: flex-start; }
.form-wrap-st1 .form-group:first-child { padding-top: 0; }
.form-wrap-st1 .form-group .label { flex-shrink: 0; width: 15rem; line-height: 1.2; padding-right: 1rem; font-weight: 600; word-break: keep-all; }
.form-wrap-st1 .form-group .inp-box { flex-grow: 1; }
.form-wrap-st1 .form-group .inp-box input { width: 100%; }
.form-wrap-st1 .form-group .inp-flex { flex-grow: 1; display: flex; align-items: center; gap: 5px; }
@media only screen and (max-width: 767px) {
	.form-wrap-st1 .form-group { flex-direction: column; align-items: flex-start; }
	.form-wrap-st1 .form-group .label { width: 100%; padding-bottom: 1.2rem; }
	.form-wrap-st1 .form-group .inp-box { width: 100%; }
	.form-wrap-st1 .form-group .inp-flex { flex-direction: column; align-items: baseline; width: 100%; }
	.form-wrap-st1 .form-group .inp-flex.inp-flex-nwrap { flex-direction: row; }
	.form-wrap-st1 .form-group .inp-st1 { width: 100%; max-width: 100%; }
}


/******* 첨부파일 *******/
.file-btn-st1 { display: flex; gap: 5px }
.file-btn-st1 input[type="file"] { position: absolute; width: 0; height: 0; padding: 0; margin: -1px; overflow: hidden; border: 0; clip: rect(0, 0, 0, 0); }

.file-list-st1 { display: flex; flex-wrap: wrap; gap: 4px; }
.file-list-st1 li { width: 100px; height: 100px; }
.file-list-st1 li .img-wrap { position: relative; width: 100%; height: 0; padding-bottom: 100%; }
.file-list-st1 li .img-wrap img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.file-list-st1 li .img-wrap .delete { position: absolute; top: 8px; right: 8px; z-index: 1; display: flex; align-items: center; justify-content: center; width: 20px; height: 20px; background-color: rgba(0, 0, 0, 0.2); border: 1px solid #000; border-radius: 2px; }




/********** table **********/
.tableA { width: 100%; border-top: 2px solid var(--gray-44); border-collapse: collapse; }
.tableA tr { border-bottom: 1px solid var(--gray-dd); background: transparent; }
.tableA tr.no-list td { line-height: 100px; }
.tableA th { padding: 12px 15px; line-height: 1.4; font-weight: 600; font-size: 16px; background: var(--light3); text-align: center; border-right: 1px solid var(--gray-dd); background: var(--gray-f6); word-break: keep-all; word-wrap: break-word; }
.tableA th:last-child { border-right: none; }
.tableA td { padding: 12px 15px; line-height: 1.4; font-size: 16px; text-align: center; word-break: keep-all; border-right: 1px solid var(--gray-dd); background: #fff; }
.tableA td:last-child { border-right: none; }
.tableA td.txt-lf { text-align: left; }
.tableA tr.bg-gray-f6 td { background: var(--gray-f6); }
.tableA tr.bg-gray-f6 td[rowspan] { background: transparent; }

.tableB { width: 100%; border-top: 1px solid var(--gray-dd); border-collapse: collapse; }
.tableB tr { border-bottom: 1px solid var(--gray-dd); }
.tableB th { padding: 15px; font-weight: 500; color: #333; background: var(--gray-fc); word-break: keep-all; text-align: center; border-right: 1px solid var(--gray-dd); }
.tableB th:last-child { border-right: none; }
.tableB td { padding: 8px; color: #555; word-break: keep-all; text-align: center; border-right: 1px solid var(--gray-dd); }
.tableB td:last-child { border-right: none; }

.table-fixed-thead { border: none; border-collapse: separate; border-spacing: -1px; }
.table-fixed-thead thead {  }
.table-fixed-thead thead tr {  }
.table-fixed-thead thead tr th { position: sticky; top: 0; z-index: 1; border-top: 2px solid var(--gray-44); border-bottom: 1px solid var(--gray-e5); }
.table-fixed-thead tbody tr td { border-bottom: 1px solid var(--gray-e5); }


.table-scroll-wrap.pc-scroll { position: relative; overflow-x: scroll; }

.table-sticky-left th:first-child { position: sticky; left: 0; z-index: 1; }
@media only screen and (max-width: 1023px) {
	.tableA th { padding: 10px; font-size: 14px; }
	.tableA td { padding: 10px; font-size: 14px; }
	.tableA tfoot td { padding: 10px; font-size: 14px; }
}
@media only screen and (max-width: 767px) {
	/* .tableA colgroup,
    .tableA thead th { display: none }
    .tableA tbody tr { position: relative; display: flex; flex-wrap: wrap; padding: 10px 10px 10px 50px; border-bottom: 1px solid var(--gray-e5) }
    .tableA tbody tr.no-list { justify-content: center; padding: 50px 0; }
    .tableA tbody tr td { position: relative; display: inline-block; padding: 0; color: #666; }
    .tableA tbody tr td[data-content="번호"] { position: absolute; left: 5px; top: 50%; transform: translateY(-50%); display: inline-block; width: 40px; text-align: center; }
    .tableA tbody tr td[data-content="문의제목"] { width: 100%; padding-bottom: 5px; }
    .tableA tbody tr td .tit { display: flex; width: 100% !important; padding: 0; text-align: left !important; border-top: none; }
    .tableA tbody tr td::after { content: ""; display: inline-block; width: 1px; height: 8px; margin: 0 10px; background: #bbb; vertical-align: middle; }
    .tableA tbody tr td[data-content="번호"]::after,
    .tableA tbody tr td[data-content="답변상태"]::after,
    .tableA tbody tr td[data-content="문의제목"]::after,
    .tableA tbody tr td:last-child:after { display: none; } */


	.table-responsive1 colgroup,
    .table-responsive1 thead { display: none; }
    .table-responsive1 tbody tr { position: relative; display: block; min-height: auto; padding: 10px 10px 10px 45px; text-align: left; }
    .table-responsive1 tbody tr td { padding: 0 10px 0 0; color: #555; }
    .table-responsive1 tbody tr td::before { content: attr(data-content); display: inline-block; width: auto; margin-right: 5px; margin-bottom: 5px; font-weight: 500; font-size: 1.5rem; color: #333; text-align: left; }
    .table-responsive1 tbody tr td[data-content="번호"] { position: absolute; top: 50%; left: 0; transform: translateY(-50%); width: 40px; margin: -1px 0 0 0; padding-right: 0; text-align: center; }
    .table-responsive1 tbody tr td[data-content="번호"]::before { display: none; }
    .table-responsive1 tbody tr td[data-content="문의제목"] { padding: 0; text-align: left; }


	.table-scroll-wrap { position: relative; overflow-x: scroll; }
	.table-scroll-event { position: absolute; top: 0; left: 0; right: 0; bottom: 0; z-index: 1; background-color: rgba(255,255,255,0.8); }
	.table-scroll-event.hidden { display: none; }
	.table-scroll-event .inner { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
	.table-scroll-event .inner::before { content:""; display: block; position: absolute; top: -25px; left: 50%; transform: translateX(-50%); width: 30px; height: 30px; background-repeat: no-repeat; background-size: contain; background-position: center; background-image: url("data:image/svg+xml,%3C%3Fxml version='1.0' encoding='UTF-8'%3F%3E%3Csvg id='icon' xmlns='http://www.w3.org/2000/svg' viewBox='0 0 61 64.28'%3E%3Cdefs%3E%3Cstyle%3E .cls-1 %7B fill: none; stroke: %23000; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2px; %7D %3C/style%3E%3C/defs%3E%3Cg%3E%3Cpath class='cls-1' d='M26.24,52.94s-8.39-7.82-8.39-15.08v-8.7c0-2.32,1.88-4.2,4.2-4.2h0c2.32,0,4.2,1.88,4.2,4.2V6.25c0-2.45,2.11-4.42,4.61-4.18,2.18.21,3.79,2.17,3.79,4.36v12.24c0-2.45,2.11-4.42,4.61-4.18,2.18.21,3.79,2.17,3.79,4.36v3.74c0-2.32,1.88-4.2,4.2-4.2h0c2.32,0,4.2,1.88,4.2,4.2v3.12c0-2.59,2.35-4.64,5.04-4.11,1.99.39,3.35,2.26,3.35,4.3h0c0,5.83.45,10.07-.06,15.51-.12,1.25-.34,2.49-.67,3.7l-2.09,7.84h-30.76Z'/%3E%3Cline class='cls-1' x1='26.24' y1='29.16' x2='26.24' y2='35.78'/%3E%3Cline class='cls-1' x1='34.63' y1='18.67' x2='34.63' y2='29.16'/%3E%3Cline class='cls-1' x1='43.03' y1='20.59' x2='43.03' y2='29.16'/%3E%3Cline class='cls-1' x1='51.42' y1='25.71' x2='51.42' y2='29.16'/%3E%3Crect class='cls-1' x='26.24' y='52.94' width='30.76' height='10.34'/%3E%3C/g%3E%3Cline class='cls-1' x1='40.31' y1='7.05' x2='58.94' y2='7.05'/%3E%3Cpolyline class='cls-1' points='52.89 1 58.94 7.05 52.89 13.11'/%3E%3Cline class='cls-1' x1='19.63' y1='7.05' x2='1' y2='7.05'/%3E%3Cpolyline class='cls-1' points='7.05 1 1 7.05 7.05 13.11'/%3E%3C/svg%3E"); animation: leftRight 2.4s infinite linear; }
	@keyframes leftRight {
		0% { transform: translateX(0px); }
	 	50% { transform: translateX(-20px); }  
		100% { transform: translateX(0px); }
	}
	.table-scroll-event .inner::after { content:"좌우로 스크롤하세요"; display: block; margin-top: 15px; font-size: 14px; }
	.en .table-scroll-event .inner::after { content:"Scroll horizontally"; }
	.table-scroll-wrap table { width: 150%; }
}



.detail-tbl { border-collapse: collapse; border-spacing: 0; width: 100%; }
.detail-tbl tr { border-bottom: 1px solid var(--black10); }
.detail-tbl th { line-height: 1.3; color: var(--gray-75); font-weight: 500; text-align: left; }
.detail-tbl td { line-height: 1.3; padding: 1.8rem 1rem; word-break: keep-all; }
@media only screen and (max-width: 1023px) {
	.detail-tbl { border-top: solid 1px #000; }
	.detail-tbl colgroup { display: none;	}
	.detail-tbl tr { border: 0;	}
	.detail-tbl th { display: block; padding: 1.5rem 0 0; font-size: 1.6rem; }
	.detail-tbl td { display: block; padding: 1.5rem 0; font-size: 1.6rem;	border-bottom: solid 1px var(--black10); }
}






/*** swiper-control ***/
/* 재생/정지: 메인 */
.swiper-control-st1 { display: flex; align-items: center; gap: 15px; }
.swiper-control-st1 [class^="swiper-button-"] { width: 24px; height: 24px; background-repeat: no-repeat; background-position: center center; background-size: auto 16px; cursor: pointer; }
.swiper-control-st1 .swiper-button-pause { background-image: url("data:image/svg+xml,%3Csvg width='8' height='14' viewBox='0 0 8 14' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M1 0V14M7 0V14' stroke='white' stroke-width='2'/%3E%3C/svg%3E"); }
.swiper-control-st1 .swiper-button-play { background-image: url("data:image/svg+xml,%3Csvg width='8' height='10' viewBox='0 0 8 10' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 0.333374V9.66671L7.33333 5.00004L0 0.333374Z' fill='white'/%3E%3C/svg%3E"); }

/* 이전/다음 */
.img-swiper-st1 { position: relative; }
.swiper-btn-st1 {  }
.swiper-btn-st1 [class^="swiper-button-"] { width: 46px; height: 46px; background-color: #fff; }
.swiper-btn-st1 [class^="swiper-button-"]::after { font-weight: 700; font-size: 18px; color: #000; }

.swiper-btn-st2 { display: flex; align-items: center; gap: 10px; }
.swiper-btn-st2 [class^="swiper-button-"] { position: relative; top: unset; right: unset; bottom: unset; left: unset; width: 40px; height: 40px; margin: 0; padding: 0; border: 1px solid #fff; border-radius: 100%; }
.swiper-btn-st2 [class^="swiper-button-"]::after { font-weight: 700; font-size: 14px; color: #fff; }
@media only screen and (max-width: 1023px) {
	.swiper-btn-st2 [class^="swiper-button-"] { width: 30px; height: 30px; }
	.swiper-btn-st2 [class^="swiper-button-"]::after { font-size: 12px; }
	
}


/* 페이징: 메인 */
.swiper-bullets-st1.swiper-pagination-bullets { position: relative; top: unset; left: unset; right: unset; bottom: unset; display: flex; align-items: center; gap: 10px; width: fit-content; margin: 0; padding: 0; }
.swiper-bullets-st1.swiper-pagination-bullets .swiper-pagination-bullet { flex-shrink: 0; width: 10px; height: 10px; margin: 0; padding: 0; background: #fff; }
.swiper-bullets-st1.swiper-pagination-bullets .swiper-pagination-bullet-active { width: 20px; border-radius: 50px; }

/* 페이징: 서브 img-box */
.swiper-bullets-st2.swiper-pagination-bullets { position: relative; top: unset !important; left: unset !important; right: unset !important; bottom: unset !important; z-index: 1; display: flex; justify-content: center; }
.swiper-bullets-st2.swiper-pagination-bullets .swiper-pagination-bullet { width: 10px; height: 10px; background: #fff; border-radius: 0; cursor: pointer; }

/* 프로그레스바: 메인, 서브 img-swiper */
.swiper-progress-st1.swiper-pagination-progressbar { position: relative; top: unset; left: unset; right: unset; bottom: unset; margin: 0; padding: 0; }
.swiper-progress-st1.swiper-pagination-progressbar .swiper-pagination-progressbar-fill { background: #000; }





  

.underline { text-decoration: underline; }



/********** 팝업 **********/
.popup-st1 { display: none; position: fixed; top: 0; left: 0; z-index: 50; width: 100%; height: 100%; background: rgba(0,0,0,0.5) }
.popup-st1.active { display: block; }
.popup-st1 .popup-inner { position: absolute; top: 50%; left: 50%; width: 100%; max-width: 700px; padding: 0 20px; transform: translate(-50%, -50%); }
.popup-st1 .popup-box1 { position: relative; background: #fff; }
.popup-st1 .popup-box1 .popup-top { padding: 20px 20px 0 20px; }
.popup-st1 .popup-box1 .popup-cont { max-height: calc(100vh - 140px); padding: 30px; overflow-y: scroll; }
.popup-st1 .popup-box1 .popup-close-btn { position: absolute; top: 16px; right: 20px; z-index: 1; display: flex; align-items: center; justify-content: center; width: 35px; height: 35px; }
.popup-st1 .popup-box1 .popup-close-btn i { font-size: 25px; color: #000; }
.popup-st1 .popup-box1 .popup-close-btn i::before { font-weight: 900 !important; }

.popup-st2 { display: none; position: fixed; top: 0; left: 0; z-index: 50; align-items: center; justify-content: center; width: 100%; height: 100%; max-height: 100vh; background: rgba(0, 0, 0, 0.5); }
.popup-st2.active { display: flex; }
.popup-st2 .popup-inner { position: relative; max-width: 100%; max-height: 100%; padding: 20px; display: flex; align-items: center; justify-content: center; }
.popup-st2 .popup-inner .popup-close-btn { position: absolute; top: 10px; right: 10px; z-index: 1; display: flex; align-items: center; justify-content: center; width: 60px; height: 60px; font-size: 24px; color: #fff; background: #000;  }
.popup-st2 .popup-inner .img-wrap { position: relative; display: flex; justify-content: center; align-items: center; width: 100%; height: 100%; max-width: 100%; max-height: 100%; overflow: hidden; }
.popup-st2 .popup-inner .img-wrap img { display: block; max-width: 100%; max-height: calc(100vh - 40px); width: auto; height: auto; object-fit: contain; }
.popup-st2 .popup-inner .copy { position: absolute; bottom: 0; right: 0; padding: 10px; color: #fff; background: #000; }



@media only screen and (max-width: 1023px) {
    .popup-st1 .popup-box1 {  }
}
@media only screen and (max-width: 767px) {
	.popup-st1 .popup-inner-st1 { padding: 0; }
	.popup-st1 .popup-box1 .popup-top { padding: 15px 15px 11px 15px; }
	.popup-st1 .popup-box1 .popup-close-btn { top: 10px; right: 10px; }
	.popup-st1 .popup-box1 .popup-close-btn i { font-size: 20px; }
	.popup-st1 .popup-box1 .popup-cont { padding: 20px; }
}
@media only screen and (max-width: 560px) {
}


/********** 이미지 **********/
.img-wrap { display: block; overflow: hidden; }
.img-wrap img { max-width: 100% !important; }

.no-img { position: relative; background: var(--gray-f6); }
.no-img span { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); }
.no-img::before { content:""; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 40px; height: 40px; background: url(../img/layout/symbol-gray-cc.svg) no-repeat center center / contain; }

.img-st45 { position: relative; width: 100%; height: 0; padding-bottom: 45%; overflow: hidden; }
.img-st45 img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.img-st56 { position: relative; width: 100%; height: 0; padding-bottom: 56%; overflow: hidden; }
.img-st56 img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; object-position: top; }
.img-st65 { position: relative; width: 100%; height: 0; padding-bottom: 65%; overflow: hidden; }
.img-st65 img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; object-position: top; }
.img-st100 { position: relative; width: 100%; height: 0; padding-bottom: 100%; overflow: hidden; }
.img-st100 img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; object-position: top; }
.img-st115 { position: relative; width: 100%; height: 0; padding-bottom: 115%; overflow: hidden; }
.img-st115 img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.img-st140 { position: relative; width: 100%; height: 0; padding-bottom: 140%; overflow: hidden; }
.img-st140 img { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }


.vod-st56 { position: relative; width: 100%; height: 0; padding-bottom: 56%; overflow: hidden; }
.vod-st56 iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }


/* 이미지 확대 */
.img-zoom-wrap { position: relative; }
.img-zoom-wrap .zoom-btn { position: absolute; top: 20px; right: 20px; z-index: 1; width: 60px; height: 60px; background: rgba(0, 0, 0, 0.2) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='%23fff' class='bi bi-arrows-angle-expand' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M5.828 10.172a.5.5 0 0 0-.707 0l-4.096 4.096V11.5a.5.5 0 0 0-1 0v3.975a.5.5 0 0 0 .5.5H4.5a.5.5 0 0 0 0-1H1.732l4.096-4.096a.5.5 0 0 0 0-.707m4.344-4.344a.5.5 0 0 0 .707 0l4.096-4.096V4.5a.5.5 0 1 0 1 0V.525a.5.5 0 0 0-.5-.5H11.5a.5.5 0 0 0 0 1h2.768l-4.096 4.096a.5.5 0 0 0 0 .707'/%3E%3C/svg%3E") no-repeat center center / auto 30px; border-radius: 3px; }
@media only screen and (max-width: 560px) {
	.img-zoom-wrap .zoom-btn { top: 10px; right: 10px; width: 30px; height: 30px; background-size: auto 15px; }
}

/********** 텍스트 ...처리 **********/
.txt-over1 {display: -webkit-box; display: -ms-flexbox; overflow: hidden; text-overflow: ellipsis; word-break: break-all; -webkit-box-orient: vertical; -webkit-line-clamp: 1;} /* 1줄 */
.txt-over2 {display: -webkit-box; display: -ms-flexbox; overflow: hidden; text-overflow: ellipsis; word-break: break-all; -webkit-box-orient: vertical; -webkit-line-clamp: 2;} /* 2줄 */
.txt-over3 {display: -webkit-box; display: -ms-flexbox; overflow: hidden; text-overflow: ellipsis; word-break: break-all; -webkit-box-orient: vertical; -webkit-line-clamp: 3;} /* 3줄 */

/********** 오버플로우 스크롤 **********/
.ovf-x-scroll { overflow-x: scroll; }
.ovf-x-hidden { overflow-x: hidden; }
.ovf-y-scroll { overflow-y: scroll; }
.ovf-y-hidden { overflow-y: hidden; }
.ovf-hidden { overflow: hidden; }
.ovf-y-scroll::-webkit-scrollbar { width: 2px; }
.ovf-y-scroll::-webkit-scrollbar-track { background-color: var(--gray-fa); } 
.ovf-y-scroll::-webkit-scrollbar-thumb { background-color: var(--gray-cc); }
.scroll-txt { display: flex; align-items: center; gap: 10px; }
.mo { display: none; }
@media only screen and (max-width: 767px) {
  .mo.mo-w-767 { display: block; }

}

/********** 텍스트 정렬 **********/
.txt-lf {text-align: left;}
.txt-ce {text-align: center;}
.txt-rg {text-align: right;}

/********** font-weight **********/
.fw-300 {font-weight: 300;}
.fw-400 {font-weight: 400;}
.fw-500 {font-weight: 500;}
.fw-600 {font-weight: 600;}
.fw-700 {font-weight: 700;}

/********** font-size **********/
.fz-25 { font-size: 25px; }
.fz-24 { font-size: 24px; }
.fz-23 { font-size: 23px; }
.fz-22 { font-size: 22px; }
.fz-21 { font-size: 21px; }
.fz-20 { font-size: 20px; }
.fz-19 { font-size: 19px; }
.fz-18 { font-size: 18px; }
.fz-17 { font-size: 17px; }
.fz-16 { font-size: 16px; }
.fz-15 { font-size: 15px; }
.fz-14 { font-size: 14px; }
.fz-13 { font-size: 13px; }


/* 정렬 */
.va-t { vertical-align: top; }
.va-m { vertical-align: middle; }
.va-b { vertical-align: bottom; }

/********** display **********/
.d-block { display: block; }
.d-flex {display: flex;}

/* 정렬 */
.flx-wrap { flex-wrap: wrap; }
.flx-ali-center { align-items: center; }
.flx-jty-center { justify-content: center; }
.flx-jty-end { justify-content: flex-end; }
.flx-jty-spb { justify-content: space-between; }
.flx-shk-0 { flex-shrink: 0; }

/* gap */
.gap5 { gap: 5px; }
.gap10 { gap: 10px; }
.gap15 { gap: 15px; }
.gap20 { gap: 20px; }
.gap25 { gap: 25px; }
.gap30 { gap: 30px; }

.bdrd0 { border-radius: 0 !important; }
.bdrd5 { border-radius: 5px !important; }
.bdrd10 { border-radius: 10px !important; }
.bdrd15 { border-radius: 15px !important; }
.bdrd20 { border-radius: 20px !important; }


/* col-12 */
.col-group { display: flex; margin: 0 -2rem; }
.col-group [class*="col-"] { padding: 0 2rem; }
.col-1 { width: 8.3333%; }
.col-2 { width: 16.6667%; }
.col-3 { width: 25%; }
.col-4 { width: 33.3333%; }
.col-5 { width: 41.6667%; }
.col-6 { width: 50%; }
.col-7 { width: 58.3333%; }
.col-8 { width: 66.6667%; }
.col-9 { width: 75%; }
.col-10 { width: 83.3333%; }
.col-11 { width: 91.6667%; }
.col-12 { width: 100%; }
@media only screen and (max-width: 1023px) {
	.col-group { margin: 0 -1rem; }
	.col-group [class*="col-"] { padding: 0 1rem; }
}
@media only screen and (max-width: 767px) {
	.col-group { margin: 0 -0.5rem; }
	.col-group [class*="col-"] { padding: 0 0.5rem; }
}

/********** width **********/
.wh100p {width: 100%;}
.wh90p {width: 90%;}
.wh80p {width: 80%;}
.wh70p {width: 70%;}
.wh60p {width: 60%;}
.wh50p {width: 50%;}
.wh40p {width: 40%;}
.wh30p {width: 30%;}
.wh20p {width: 20%;}
.wh5p {width: 5%;}

/********** margin **********/
.mg0 {margin:0;}
/*** margin_top ***/
.mt-33 {margin-top:-33px;}
.mt0 {margin-top:0;}
.mt3 {margin-top:3px;}
.mt5 {margin-top:5px;}
.mt10 {margin-top:10px;}
.mt15 {margin-top:15px;}
.mt20 {margin-top:20px;}
.mt25 {margin-top:25px;}
.mt30 {margin-top:30px;}
.mt35 {margin-top:35px;}
.mt40 {margin-top:40px;}
.mt45 {margin-top:45px;}
.mt50 {margin-top:50px;}
.mt55 {margin-top:55px;}
.mt60 {margin-top:60px;}
.mt65 {margin-top:65px;}
.mt70 {margin-top:70px;}
.mt75 {margin-top:75px;}
.mt80 {margin-top:80px;}
.mt85 {margin-top:85px;}
.mt90 {margin-top:90px;}
.mt95 {margin-top:95px;}
.mt100 {margin-top:100px;}
.mt160 {margin-top:160px;}
/*** margin_bottom ***/
.mb0 {margin-bottom:0;}
.mb5 {margin-bottom:5px;}
.mb10 {margin-bottom:10px;}
.mb15 {margin-bottom:15px;}
.mb20 {margin-bottom:20px;}
.mb25 {margin-bottom:25px;}
.mb30 {margin-bottom:30px;}
.mb35 {margin-bottom:35px;}
.mb40 {margin-bottom:40px;}
.mb45 {margin-bottom:45px;}
.mb50 {margin-bottom:50px;}
.mb55 {margin-bottom:55px;}
.mb60 {margin-bottom:60px;}
.mb65 {margin-bottom:65px;}
.mb70 {margin-bottom:70px;}
.mb75 {margin-bottom:75px;}
.mb80 {margin-bottom:80px;}
.mb85 {margin-bottom:85px;}
.mb90 {margin-bottom:90px;}
.mb95 {margin-bottom:95px;}
.mb100 {margin-bottom:100px;}
/*** margin_left ***/
.ml0 {margin-left:0;}
.ml5 {margin-left:5px;}
.ml10 {margin-left:10px;}
.ml15 {margin-left:15px;}
.ml20 {margin-left:20px;}
.ml25 {margin-left:25px;}
.ml30 {margin-left:30px;}
.ml35 {margin-left:35px;}
.ml40 {margin-left:40px;}
.ml45 {margin-left:45px;}
.ml50 {margin-left:50px;}
.ml55 {margin-left:55px;}
.ml60 {margin-left:60px;}
.ml65 {margin-left:65px;}
.ml70 {margin-left:70px;}
.ml75 {margin-left:75px;}
.ml80 {margin-left:80px;}
.ml85 {margin-left:85px;}
.ml90 {margin-left:90px;}
.ml95 {margin-left:95px;}
.ml100 {margin-left:100px;}
/*** margin_right ***/
.mr0 {margin-right:0;}
.mr5 {margin-right:5px;}
.mr10 {margin-right:10px;}
.mr15 {margin-right:15px;}
.mr20 {margin-right:20px;}
.mr25 {margin-right:25px;}
.mr30 {margin-right:30px;}
.mr35 {margin-right:35px;}
.mr40 {margin-right:40px;}
.mr45 {margin-right:45px;}
.mr50 {margin-right:50px;}
.mr55 {margin-right:55px;}
.mr60 {margin-right:60px;}
.mr65 {margin-right:65px;}
.mr70 {margin-right:70px;}
.mr75 {margin-right:75px;}
.mr80 {margin-right:80px;}
.mr85 {margin-right:85px;}
.mr90 {margin-right:90px;}
.mr95 {margin-right:95px;}
.mr100 {margin-right:100px;}

@media only screen and (max-width: 560px) {
	.mt60 {margin-top: 30px;}
}

/******************** padding ********************/
.pd0 {padding:0;}
.pd5 {padding:5px;}
.pd10 {padding:10px;}
.pd15 {padding:15px;}
.pd20 {padding:20px;}
.pd25 {padding:25px;}
.pd30 {padding:30px;}
.pd35 {padding:35px;}
.pd40 {padding:40px;}
.pd45 {padding:45px;}
.pd50 {padding:50px;}
.pd55 {padding:55px;}
.pd60 {padding:60px;}
.pd65 {padding:65px;}
.pd70 {padding:70px;}
.pd75 {padding:75px;}
.pd80 {padding:80px;}
.pd85 {padding:85px;}
.pd90 {padding:90px;}
.pd95 {padding:95px;}
.pd100 {padding:100px;}
/*** padding_top ***/
.pt0 {padding-top:0;}
.pt5 {padding-top:5px;}
.pt10 {padding-top:10px;}
.pt15 {padding-top:15px;}
.pt20 {padding-top:20px;}
.pt25 {padding-top:25px;}
.pt30 {padding-top:30px;}
.pt35 {padding-top:35px;}
.pt40 {padding-top:40px;}
.pt45 {padding-top:45px;}
.pt50 {padding-top:50px;}
.pt55 {padding-top:55px;}
.pt60 {padding-top:60px;}
.pt65 {padding-top:65px;}
.pt70 {padding-top:70px;}
.pt75 {padding-top:75px;}
.pt80 {padding-top:80px;}
.pt85 {padding-top:85px;}
.pt90 {padding-top:90px;}
.pt95 {padding-top:95px;}
.pt100 {padding-top:100px;}
/*** padding_bottom ***/
.pb0 {padding-bottom:0;}
.pb5 {padding-bottom:5px;}
.pb10 {padding-bottom:10px;}
.pb15 {padding-bottom:15px;}
.pb20 {padding-bottom:20px;}
.pb25 {padding-bottom:25px;}
.pb30 {padding-bottom:30px;}
.pb35 {padding-bottom:35px;}
.pb40 {padding-bottom:40px;}
.pb45 {padding-bottom:45px;}
.pb50 {padding-bottom:50px;}
.pb55 {padding-bottom:55px;}
.pb60 {padding-bottom:60px;}
.pb65 {padding-bottom:65px;}
.pb70 {padding-bottom:70px;}
.pb75 {padding-bottom:75px;}
.pb80 {padding-bottom:80px;}
.pb85 {padding-bottom:85px;}
.pb90 {padding-bottom:90px;}
.pb95 {padding-bottom:95px;}
.pb100 {padding-bottom:100px;}
/*** padding_left ***/
.pl0 {padding-left:0;}
.pl5 {padding-left:5px;}
.pl10 {padding-left:10px;}
.pl15 {padding-left:15px;}
.pl17 {padding-left:17px;}
.pl20 {padding-left:20px;}
.pl25 {padding-left:25px;}
.pl30 {padding-left:30px;}
.pl35 {padding-left:35px;}
.pl40 {padding-left:40px;}
.pl45 {padding-left:45px;}
.pl50 {padding-left:50px;}
.pl55 {padding-left:55px;}
.pl60 {padding-left:60px;}
.pl65 {padding-left:65px;}
.pl70 {padding-left:70px;}
.pl75 {padding-left:75px;}
.pl80 {padding-left:80px;}
.pl85 {padding-left:85px;}
.pl90 {padding-left:90px;}
.pl95 {padding-left:95px;}
.pl100 {padding-left:100px;}
/*** padding_right ***/
.pr0 {padding-right:0;}
.pr5 {padding-right:5px;}
.pr10 {padding-right:10px;}
.pr15 {padding-right:15px;}
.pr17 {padding-right:17px;}
.pr20 {padding-right:20px;}
.pr25 {padding-right:25px;}
.pr30 {padding-right:30px;}
.pr35 {padding-right:35px;}
.pr40 {padding-right:40px;}
.pr45 {padding-right:45px;}
.pr50 {padding-right:50px;}
.pr55 {padding-right:55px;}
.pr60 {padding-right:60px;}
.pr65 {padding-right:65px;}
.pr70 {padding-right:70px;}
.pr75 {padding-right:75px;}
.pr80 {padding-right:80px;}
.pr85 {padding-right:85px;}
.pr90 {padding-right:90px;}
.pr95 {padding-right:95px;}
.pr100 {padding-right:100px;}