@charset "utf-8";

/* reset */
* { margin:0; padding:0; box-sizing:border-box; -webkit-text-size-adjust:none; -ms-text-size-adjust:none; -moz-text-size-adjust:none; -o-text-size-adjust:none; }
html, body { height:100%; width:100%; }
body * { font-family:'IBM Plex Sans KR', 'Nanum Gothic', 'Noto Sans KR', sans-serif; font-weight:400; font-size:14px; }

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, 
a, button, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strike, strong, sub, sup, 
tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, hr{ margin:0; padding:0; }

table { width:100%; table-layout:fixed; border-spacing:0; }
img { vertical-align:middle; }
ol, ul, li { list-style:none; }
em { font-style:normal; }
a { outline:none; text-decoration:none; }
button { border:0; cursor:pointer; z-index:1; } /* background:inherit; */


/* color setting */
:root {
	--transback30:rgba(0,0,0,0.30);
	--transback60:rgba(0,0,0,0.60);
	--background:#FDFDFC;
	--black_19:#191919;
	--point_red:#FF4026;
	--point_green:#0C9A56;
	
	--over_green:#E8F7F4;
	--over_yellow:#FFFBC9;
	--over_blue:#E3F1FF;
	
	--input:#f3f5f8;
	
	--gray900:#FAFAFA;
	--gray800:#F3F4F6;
	--gray750:#EFEFEF;
	--gray700:#DDE1E6;
	--gray600:#B8BEC5;
	--gray500:#A0A0A0;
	--gray400:#929292;
	--gray300:#777777;
	--gray200:#444444;

	--green300:#006064;
	--yellow300:#F4D35E;
	--darkgreen300:#97971e;
	
}

/* font color */
.red { color:var(--point_red); }
.green { color:var(--point_green); }
.height100 { height:100px; }

/* toast msg */
#toast { 
	display:none; z-index:70; visibility:hidden; position:fixed; left:50%; top:90px; width:320px; 
	margin-left:-160px; padding:10px; background:var(--transback60); color:#FFFFFF; transition-duration:0.25s; 
	text-align:center; font-size:14px; border-radius:5px; line-height:150%;
}
#toast.show { visibility:visible; animation:fadein 0.5s, fadeout 0.5s 4s; }
@keyframes fadein { from { top:60px; opacity:0; } to { top:90px; opacity:1; } }
@keyframes fadeout { from { top:90px; opacity:1; } to { top:120px; opacity:0; } }
#toast > strong, span { font-size:14px; }


/* loading bar */
@keyframes lotate { 100% { transform:rotate(360deg); } }
#pageloading { display:none; position:fixed; z-index:80; top:0px; left:0px; right:0px; bottom:0px; } 
.loadingbg { position:fixed; top:0px; left:0px; right:0px; bottom:0px; background-color:rgba(0, 0, 0, 0.2); }
.loadingimg { 
	position:fixed; z-index:1; animation-name:lotate; animation:lotate 3s infinite; top:50%; left:50%; width:36px; height:36px; 
	margin-top:-18px; margin-left:-18px; border-radius:36px; background-image:url("/images/comm/loading.svg"); background-size:36px auto; 
	background-position:center; background-repeat:no-repeat; 
}

/* hr */
hr { border: none; /* 기본 테두리 제거 */
	height: 1px; /* 선의 굵기 설정 (높이로 지정) */
	background-color: var(--gray700); /* 선의 색상 설정 */
	width: 100%; /* 선의 길이 설정 */
	margin: 10px 0; /* 상하 여백 설정 */ }

/* button */
.btn_type_1 { background:var(--black_19); color:#fff; border:1px solid var(--black_19); } 
.btn_type_2 { background:var(--gray400); color:#fff; border:1px solid var(--gray400); }
.btn_type_2.-padding50 { padding-left:50px; padding-right:50px; }

.btn_type_3 { background:#FFF; color:var(--gray300); border:1px solid var(--gray700); }
.btn_type_3.-padding10 { padding-left:10px; padding-right:10px; }
.btn_type_3.-padding50 { padding-left:50px; padding-right:50px; }


.btn_line_1 { background:#fff; color:var(--black_19); border:1px solid var(--black_19); }
.btn_line_2 { background:#fff; color:var(--point_red); border:1px solid var(--point_red); }
.btn_line_3 { background:#fff; color:var(--point_green); border:1px solid var(--point_green); }
.btn_line_4 { background:#fff; color:var(--gray500); border:1px solid var(--gray500); }

.btn_xs { padding:7px; border-radius:3px; font-size:13px; }
.btn_s { padding-top:10px; padding-bottom:10px; border-radius:3px; font-size:13px; }
.btn_m { padding-top:14.5px; padding-bottom:14.5px; border-radius:3px; font-size:15px; }
.btn_left { margin-left:5px; }

.btnpadding10 { padding-left:10px; padding-right:10px; }
.btn50 { width:50px; }
.btn70 { width:70px; }
.btn80 { width:80px; }
.btn90 { width:90px; }
.btn100 { width:100px; }
.btn120 { width:120px; }
.btn150 { width:150px; }
.btnh36 { height:36px; line-height:16px; }
.btnh36:hover { border:1px solid var(--black_19); }







/* input */
.custom_input { box-sizing: border-box; height:36px; background-color:#fff; border:1px solid var(--gray700); border-radius:3px; padding:9px 10px; font-size:13px; color:var(--black_19); vertical-align:middle; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.custom_input:focus { border-color:var(--mint500); outline:none; color:var(--gray200); }
.custom_input.-err { border:1px solid var(--point_red); }
.custom_input.-hidden { display:none; }
.custom_input.-all { width:100%; }
.custom_input.-mid { max-width:300px; width:100%; }
.custom_input.-short { max-width:110px; width:100%; }
.custom_input.-short2 { max-width:180px; width:100%; }
.custom_input.-long { max-width:500px; width:100%; }
.custom_input.-verylong { max-width:800px; width:100%; }
.custom_input.-readonly { background-color:var(--gray750); }
.custom_input.-input { background-color:var(--input); }
.custom_input.-noinput { border:1px solid transparent; outline:none; background:transparent; }
.custom_input.-font18 { font-size:18px; }
.custom_input::placeholder { color:var(--gray600); font-weight:400; font-size:13px; line-height:13px; }

/* iOS에서만 적용: font-family: monospace; -> 숫자 넓이 고정 */
@supports (-webkit-touch-callout: none) {
	.custom_input { font-family: monospace; letter-spacing: 0; }
}


input[type="text"].flatpickr-input {
	-webkit-appearance: none; /* iOS 기본 스타일 제거 */
	/* 기타 사용자 정의 스타일 */
}


/* input 크롬 자동입력 파란화면 제거 */
input:-webkit-autofill { -webkit-box-shadow:0 0 0 1000px white inset; box-shadow:0 0 0 1000px white inset; }

/* select */
.custom_selectbox { min-width:80px; height:36px; appearance:none; -webkit-appearance:none; -moz-appearance:none; background-color:#fff; border:1px solid var(--gray700); border-radius:3px; padding:7px 30px 7px 10px; font-size:13px; color:var(--gray300); cursor:pointer; outline:none; position:relative; box-sizing:border-box; vertical-align:middle; } 
.custom_selectbox { background-image:url("/images/comm/ico_select.svg"); background-repeat:no-repeat; background-position:right 10px center; background-size:16px; }
.custom_selectbox:hover { border-color:var(--gray600); }
.custom_selectbox:focus { border-color:var(--black_19); } /* box-shadow:0 0 5px rgba(0, 123, 255, 0.5); */
.custom_selectbox.-input { background-color:var(--input); }
.custom_selectbox::placeholder { color:var(--gray600); font-weight:400; font-size:13px; line-height:13px; }


.custom_select { height:36px; appearance:none; -webkit-appearance:none; -moz-appearance:none; background-color:#fff; border:1px solid var(--gray700); border-radius:3px; padding:9px 30px 9px 10px; font-size:13px; color:var(--gray400); cursor:pointer; outline:none; position:relative; box-sizing:border-box; vertical-align:middle; } 
.custom_select { background-image:url("/images/comm/ico_select.svg"); background-repeat:no-repeat; background-position:right 10px center; background-size:16px; }
.custom_select { flex-grow:1; height:50px; font-size: 16px; color: var(--black_19); line-height:20px; }
.custom_select:hover { border-color:var(--gray600); }
.custom_select:focus { border-color:var(--black_19); } /* box-shadow:0 0 5px rgba(0, 123, 255, 0.5); */
.custom_select::placeholder { color:var(--gray600); font-weight:400; font-size:13px; line-height:13px; }

.custom_select.btn_s { padding-top:10px; padding-bottom:10px; border-radius:3px; font-size:13px; }


/* input */
.custom_textarea { height:100px; background-color:#fff; border:1px solid var(--gray700); border-radius:3px; padding:9px 10px; font-size:14px; line-height:150%; color:var(--gray400); vertical-align:middle; }
.custom_textarea:focus { border-color:var(--mint500); outline:none; color:var(--gray200); }
.custom_textarea.-err { border:1px solid var(--point_red); }
.custom_textarea.-colorblack { color:var(--black_19); }
.custom_textarea.-borderblack { border-color:var(--black_19); }
.custom_textarea.-hidden { display:none; }
.custom_textarea.-all { width:100%; }
.custom_textarea.-mid { max-width:300px; width:100% }
.custom_textarea.-short { max-width:110px; width:100%; }
.custom_textarea.-long { max-width:500px; width:100% }
.custom_textarea.-readonly { background-color:var(--gray750); }
.custom_textarea.-input { background-color:var(--input); }
.custom_textarea.-default { width:100%; height:300px; }
.custom_textarea::placeholder { color:var(--gray600); font-weight:400; font-size:13px; line-height:13px; }

/* input 크롬 자동입력 파란화면 제거 */
textarea:-webkit-autofill { -webkit-box-shadow:0 0 0 1000px white inset; box-shadow:0 0 0 1000px white inset; }


/* 테이블 스타일 */
.custom_table { table-layout:auto; width:100%; border-collapse:collapse; border-top:1px solid var(--gray700); }
.custom_table .checkbox-container { margin: 0 auto; }
.custom_table th { border-top:1px solid var(--gray750); text-align:center; vertical-align:middle; white-space:nowrap; max-width:300px; overflow:hidden; text-overflow:ellipsis; }
.custom_table td { border-top:1px solid var(--gray750); text-align:center; vertical-align:middle; white-space:nowrap; max-width:300px; overflow:hidden; text-overflow:ellipsis; }

.custom_table thead th { border-bottom:1px solid var(--black_19); line-height:100%; text-align:center; vertical-align:middle; color:var(--black_19); font-size:14px; padding:18px 7px; border-top:none; font-weight:600; }
.custom_table thead th label { display:inline-block; text-align:center; margin:0px; padding:0px; margin-top:2px; }

.custom_table tbody tr:hover { background-color: var(--gray800); }
.custom_table tbody tr.on { background-color: var(--over_yellow); }
.custom_table tbody tr.on:hover { background-color: var(--over_yellow); }

.custom_table tbody td { border-bottom:1px solid var(--gray750); line-height:100%; text-align:center; vertical-align:middle; color:var(--gray200); font-size:13px; padding:7px; }
.custom_table tbody td:hover { background-color:var(--gray750); }
.custom_table tbody td.narrow { padding:0px 7px 0px 7px; }
.custom_table tbody td.hight { padding:13px 7px 13px 7px; }
.custom_table tbody td.small { font-size:10px; }
.custom_table tbody td.line150 { line-height:150%; }
.custom_table tbody td.red { background-color:#cc0000; color:#FFFFFF; }
.custom_table tbody td.left { text-align:left; }
.custom_table tbody td.right { text-align:right; }
.custom_table tbody td.center { text-align:center; }
.custom_table tbody td span.marginleft { margin-left:50px; }
.custom_table tbody td.wrap {
	white-space:normal;    /* 줄바꿈 허용 */
	overflow:visible;      /* 내용 숨김 해제 */
	text-overflow:clip;    /* ellipsis 제거 */
	word-break:break-all;  /* 한국어/영문 모두 줄바꿈 */
	max-width:300px;       /* 기존 max-width 유지 */
}

.custom_table tbody td label { display:inline-block; text-align:center; margin:0px; padding:0px; margin-top:2px; }




/* paging */
.pagination_wrap { width:100%; margin-top:24px; padding:0 8px; }
.pagination { display:flex; align-items:center; justify-content:center; gap:12px; width:100%; max-width:100%; }
.pagination .num { display:flex; align-items:center; justify-content:center; gap:6px; min-width:0; flex-wrap:wrap; }
.pagination button { display:inline-flex; align-items:center; justify-content:center; width:36px; min-width:36px; height:36px; padding:0; border:1px solid var(--gray700); color:var(--gray200); background:#fff; cursor:pointer; transition:all 0.18s ease; border-radius:999px; font-size:13px; font-weight:500; line-height:1; }
.pagination button:hover { border-color:var(--black_19); background:var(--gray900); }
.pagination button.active { background:var(--black_19); color:#fff; cursor:default; border-color:var(--black_19); }
.pagination button.disabled { opacity:0.35; cursor:default; pointer-events:none; }

.pagination button.first { border:1px solid var(--gray700); background:#fff url(/images/comm/ico_paging_first_only.svg) no-repeat 50% 50%; background-size:18px 18px; }
.pagination button.prev { border:1px solid var(--gray700); background:#fff url(/images/comm/ico_paging_prev.svg) no-repeat 50% 50%; background-size:18px 18px; }
.pagination button.next { border:1px solid var(--gray700); background:#fff url(/images/comm/ico_paging_next.svg) no-repeat 50% 50%; background-size:18px 18px; }
.pagination button.last { border:1px solid var(--gray700); background:#fff url(/images/comm/ico_paging_last_only.svg) no-repeat 50% 50%; background-size:18px 18px; }

@media (max-width:767px) {
	.pagination_wrap { margin-top:20px; padding:0; }
	.pagination { gap:8px; }
	.pagination .num { gap:4px; }
	.pagination button { width:32px; min-width:32px; height:32px; font-size:12px; }
	.pagination button.first, .pagination button.last { display:none; }
}

.partner_notification_backdrop { position:fixed; z-index:46; top:var(--service-header-height, 70px); left:0; right:0; bottom:0; background:rgba(17, 17, 17, 0.16); opacity:0; visibility:hidden; pointer-events:none; transition:opacity .18s ease, visibility .18s ease; }
.partner_notification_panel { position:fixed; z-index:47; top:var(--service-header-height, 70px); right:0; bottom:0; width:min(300px, 100vw); border-left:1px solid var(--gray700); background:#fff; box-shadow:-16px 0 32px rgba(0, 0, 0, 0.12); transform:translateX(100%); opacity:0; visibility:hidden; transition:transform .22s ease, opacity .18s ease, visibility .18s ease; }
body.partner-notification-open .partner_notification_backdrop { opacity:1; visibility:visible; pointer-events:auto; }
body.partner-notification-open .partner_notification_panel { transform:translateX(0); opacity:1; visibility:visible; }
.partner_notification_inner { height:100%; display:flex; flex-direction:column; background:#fff; }
.partner_notification_head { display:flex; align-items:flex-start; justify-content:space-between; gap:12px; padding:18px 14px 14px 14px; border-bottom:1px solid var(--gray750); }
.partner_notification_title { font-size:18px; font-weight:600; color:var(--black_19); }
.partner_notification_desc { margin-top:6px; font-size:12px; line-height:1.7; color:var(--gray300); }
.partner_notification_close { width:32px; min-width:32px; height:32px; border:1px solid var(--gray700); border-radius:32px; background:#fff url(/images/comm/layer_close.svg) no-repeat 50% 50%; background-size:16px 16px; }
.partner_notification_summary { display:flex; align-items:center; gap:8px; flex-wrap:wrap; padding:14px; border-bottom:1px solid var(--gray750); }
.partner_notification_summary_item { display:inline-flex; align-items:center; justify-content:center; min-height:28px; padding:0 10px; border-radius:999px; background:#f4f4f4; font-size:12px; font-weight:600; color:var(--gray200); }
.partner_notification_summary_item.-action { background:#eef5ff; color:#1d4ed8; }
.partner_notification_sections { flex:1; overflow-y:auto; padding:14px; display:flex; flex-direction:column; gap:18px; }
.partner_notification_group { display:flex; flex-direction:column; gap:10px; }
.partner_notification_group_title { font-size:13px; font-weight:600; color:var(--gray200); }
.partner_notification_item { display:block; width:100%; padding:12px; border:1px solid var(--gray750); border-radius:12px; background:#fff; color:var(--gray200); text-align:left; cursor:pointer; }
.partner_notification_item.-action { border-color:#dbeafe; background:#f8fbff; }
.partner_notification_item.-new { box-shadow:0 0 0 1px rgba(29, 78, 216, 0.08); }
.partner_notification_item.-read { background:#fff; }
.partner_notification_item.-read .partner_notification_item_title { color:#475569; }
.partner_notification_item.-read .partner_notification_item_link { color:#64748b; }
.partner_notification_item_head { display:flex; align-items:center; gap:6px; }
.partner_notification_badge { display:inline-flex; align-items:center; justify-content:center; min-height:24px; padding:0 8px; border-radius:999px; background:#f4f4f4; font-size:11px; font-weight:600; color:var(--gray200); }
.partner_notification_badge.invite { background:#eef5ff; color:#1d4ed8; }
.partner_notification_badge.application { background:#f5f3ff; color:#6d28d9; }
.partner_notification_badge.notice { background:#f0fdf4; color:#15803d; }
.partner_notification_badge.request { background:#fff7ed; color:#c2410c; }
.partner_notification_badge.default { background:#f4f4f4; color:var(--gray200); }
.partner_notification_dot { width:8px; height:8px; border-radius:8px; background:#ef4444; }
.partner_notification_item_title { margin-top:8px; font-size:13px; font-weight:600; line-height:1.6; color:var(--black_19); word-break:break-all; }
.partner_notification_item_summary { margin-top:6px; font-size:12px; line-height:1.7; color:var(--gray300); word-break:break-all; }
.partner_notification_item_meta { margin-top:10px; display:flex; align-items:center; justify-content:space-between; gap:8px; font-size:11px; color:var(--gray400); }
.partner_notification_item_link { font-weight:600; color:var(--black_19); }
.partner_notification_empty { display:flex; align-items:center; justify-content:center; min-height:180px; padding:20px; border:1px dashed var(--gray700); border-radius:12px; background:#fafafa; font-size:13px; line-height:1.8; color:var(--gray300); text-align:center; }
.partner_notification_popup_wrap { display:grid; gap:14px; }
.partner_notification_popup_detail { display:grid; gap:12px; }
.partner_notification_popup_head { display:block; min-width:0; font-size:16px; font-weight:800; line-height:1.6; color:#111827; word-break:break-word; }
.partner_notification_popup_badge { display:inline-flex; align-items:center; justify-content:center; min-height:28px; margin-right:8px; padding:0 12px; border-radius:999px; background:#f1f5f9; color:#334155; font-size:12px; font-weight:700; white-space:nowrap; vertical-align:middle; }
.partner_notification_popup_title { display:inline; color:#111827; word-break:break-word; white-space:normal; vertical-align:middle; }
.partner_notification_popup_line { border-top:1px dotted #cbd5e1; }
.partner_notification_popup_body { font-size:13px; line-height:1.65; color:#111827; word-break:break-word; white-space:pre-wrap; }
.partner_notification_popup_date { display:block; margin-top:4px; text-align:right; font-size:11px; line-height:1.6; color:#64748b; }
.partner_notification_popup_section { display:grid; grid-template-columns:32px minmax(0, 1fr); gap:10px; align-items:flex-start; }
.partner_notification_popup_label { display:inline-flex; align-items:center; justify-content:center; width:32px; height:32px; border-radius:999px; background:#f1f5f9; color:#334155; font-size:13px; font-weight:800; }
.partner_notification_popup_section.-answer .partner_notification_popup_label { background:#ecfdf5; color:#166534; }
.partner_notification_popup_content { min-width:0; }





/* scroll bar */
*::-webkit-scrollbar { width:8px; height:8px; }
*::-webkit-scrollbar-thumb { background-color:var(--gray600); border-radius:10px; background:var(--gray300); }
*::-webkit-scrollbar-track { background-color:var(--gray900); }


/* 체크박스 스타일
.checkbox-container input[type="checkbox"] {display: none;}
.custom-checkbox {width:24px;height:24px; background: url(/images/chk2.svg) no-repeat center center; background-size: cover; display: flex;justify-content: center;align-items: center;}
.checkbox-container input[type="checkbox"]:checked ~ .custom-checkbox {background-image: url(/images/chk2_active.svg);}

체크박스 스타일 - 우측에 label 텍스트 있을 때
.checkbox-container-txt{display: flex;align-items: center;margin-left: 8px;}
.checkbox-container-txt .txt{padding-left: 4px;font-size: 13px;color: var(--gray400);}
 */

/* checkbox  */
/*
.checkbox_container { display:block; width:24px; height:24px; cursor:pointer; }
.checkbox_container input[type="checkbox"] { display:none; }

.checkbox_container .custom_checkbox { display:inline-block; top:0px; left:0px; width:22px; height:22px; margin:0px; line-height:24px; border:1px solid var(--gray600); border-radius:5px; }
.checkbox_container .custom_checkbox::after { top:50%; margin-top:-12px; }
.checkbox_container:hover .custom_checkbox { border:1px solid var(--black_19); }
.checkbox_container input[type="checkbox"]:checked ~ .custom_checkbox { border:1px solid var(--black_19); background:var(--black_19); background-image:url(/images/comm/checked_white.svg); background-position:center; background-repeat:no-repeat; background-size:12px; }
*/

.checkbox_area { display:block; width:100%; transition:all 0.1s ease; cursor:pointer; margin-bottom:1px; }
.checkbox_area input[type="checkbox"] { display:none; }

.checkbox_area .custom_checkbox { display:inline-block; top:0px; left:0px; width:24px; height:24px; margin:0px; line-height:24px; transition:all 0.1s ease; border:1px solid var(--gray600); border-radius:5px; }
.checkbox_area .custom_checkbox::after { top:50%; margin-top:-12px; }
.checkbox_area:hover .custom_checkbox { border:1px solid var(--black_19); }
.checkbox_area input[type="checkbox"]:checked ~ .custom_checkbox { border:1px solid var(--black_19); background:var(--black_19); background-image:url(/images/comm/checked_white.svg); background-position:center; background-repeat:no-repeat; background-size:12px; }

.checkbox_area .custom_txt { display:inline-block; width:calc(100% - 40px); margin-left:10px; vertical-align:top; font-size:14px; line-height:150%; text-align:left; }
.checkbox_area_none { display:block; width:100%; cursor:pointer; margin:8px 0px 8px 0px; }


/* radio */
.radiobox_area { display:block; width:100%; transition:all 0.1s ease; cursor:pointer; margin-bottom:1px; }
.radiobox_area input[type="radio"] { display:none; }

.radiobox_area .custom_radio { display:inline-block; top:0px; left:0px; width:18px; height:18px; margin:5px 0px 5px 0px; line-height:16px; transition:all 0.1s ease; border:1px solid var(--gray600); border-radius:22px; }
.radiobox_area .custom_radio::after { top:50%; margin-top:-12px; }
.radiobox_area:hover .custom_radio { border:1px solid var(--black_19); }
.radiobox_area input[type="radio"]:checked ~ .custom_radio { border:1px solid var(--black_19); background:var(--black_19); background-image:url(/images/comm/checked_white.svg); background-position:center; background-repeat:no-repeat; background-size:10px; }

.radiobox_area .custom_txt { display:inline-block; width:calc(100% - 40px); margin-left:10px; vertical-align:top; font-size:14px; line-height:150%; text-align:left; }
.radiobox_area_none { display:block; width:100%; cursor:pointer; margin:10px 0px 10px 0px; }

/* popup layer */
/*
layer_pop :배경
layer_box :박스
layer_title_txt :제목
layer_close :X
layer_content :내용
*/
.layer_pop { display:none; z-index:500; position:fixed; top:0px; left:0px; bottom:0px; right:0px; text-align:center; background:var(--transback30); }
.layer_pop .layer_box { display:flex; flex-direction:column; }

.layer_pop .layer_box .layer_inside { position:relative; margin:30px auto; vertical-align:top; top:0px; width:760px; border-radius:10px; background:#FFF; }
.layer_pop .layer_box .layer_inside.w860 { width:860px; }

.layer_pop .layer_box .layer_inside .layer_title { z-index:1; position:relative; text-align:left; top:0px; width:100%; left:0px; height:60px; }
.layer_pop .layer_box .layer_inside .layer_title .layer_title_txt { position:relative; padding:20px 60px 20px 20px; font-weight:600; font-size:20px; white-space:nowrap; overflow:hidden;text-overflow:ellipsis; }
.layer_pop .layer_box .layer_inside .layer_title .layer_close { position:absolute; top:12px; right:10px; width:24px; height:24px; padding:20px; background:url(/images/comm/layer_close.svg) no-repeat center; cursor:pointer; border-radius:5px; }
.layer_pop .layer_box .layer_inside .layer_title .layer_close:hover { background-color:var(--gray700); }

.layer_pop .layer_box .layer_inside .layer_data { position:sticky; text-align:left; left:0px; right:0px; max-height:calc(100svh - 140px); overflow-y:auto; overflow-x:hidden; }
.layer_pop .layer_box .layer_inside .layer_data .layer_content { position:relative; top:0px; padding:20px; word-break:break-all; }

.layer_pop .layer_box .layer_inside .layer_footer { position:sticky; text-align:left; left:0px; right:0px; height:20px; }

@media (max-width:799px) {
	.layer_pop .layer_box .layer_inside { width:100%; margin:0px; height:100svh; border-radius:0; }
	.layer_pop .layer_box .layer_inside .layer_data { max-height:calc(100svh - 70px); }
}


/* popup_over layer */
/*
layer_over_pop :배경
layer_box :박스
layer_over_title_txt :제목
layer_over_close :X
layer_over_content :내용
*/
.layer_over_pop{ display:none; z-index:501; position:fixed; top:0px; left:0px; bottom:0px; right:0px; text-align:center; background:var(--transback30); }
.layer_over_pop .layer_box { display:flex; flex-direction:column; }

.layer_over_pop .layer_box .layer_inside { position:relative; margin:30px auto; vertical-align:top; top:0px; width:760px; border-radius:10px; background:#FFF; }

.layer_over_pop .layer_box .layer_inside .layer_title { z-index:1; position:relative; text-align:left; top:0px; width:100%; left:0px; height:60px; }
.layer_over_pop .layer_box .layer_inside .layer_title .layer_over_title_txt { position:relative; padding:20px 60px 20px 20px; font-weight:600; font-size:20px; white-space:nowrap; overflow:hidden;text-overflow:ellipsis; }
.layer_over_pop .layer_box .layer_inside .layer_title .layer_over_close { position:absolute; top:12px; right:10px; width:24px; height:24px; padding:20px; background:url(/images/comm/layer_close.svg) no-repeat center; cursor:pointer; border-radius:5px; }
.layer_over_pop .layer_box .layer_inside .layer_title .layer_over_close:hover { background-color:var(--gray700); }

.layer_over_pop .layer_box .layer_inside .layer_data { position:sticky; text-align:left; left:0px; right:0px; max-height:calc(100svh - 140px); overflow-y:auto; overflow-x:hidden; }
.layer_over_pop .layer_box .layer_inside .layer_data .layer_over_content { position:relative; top:0px; padding:20px; word-break:break-all; }

.layer_over_pop .layer_box .layer_inside .layer_footer { position:sticky; text-align:left; left:0px; right:0px; height:20px; }

@media (max-width:799px) {
	.layer_over_pop .layer_box .layer_inside { width:100%; margin:0px; height:100svh; border-radius:0; }
	.layer_over_pop .layer_box .layer_inside .layer_data { max-height:calc(100svh - 70px); }
}


/* alert layer */
/*
alert_pop :배경
alert_close :X
alert_title :제목
alert_content :내용
alert_btn :버튼
*/
.alert_pop{ display:none; z-index:600; position:fixed; top:0px; left:0px; bottom:0px; right:0px; text-align:center; background:var(--transback30); }
.alert_pop::after { content:''; display:inline-block; vertical-align:middle; width:0px; height:100%; }

.alert_pop .alert_box { position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); width:320px; height:auto; padding:20px; background:#fff; box-sizing:border-box; border-radius:5px; }
.alert_pop .alert_box .alert_close { display:none; position:absolute; top:12px; right:10px; width:24px; height:24px; padding:20px; background:url(/images/comm/layer_close.svg) no-repeat center; cursor:pointer; border-radius:5px; }
.alert_pop .alert_box .alert_close:hover { background-color:var(--gray700); }

.alert_pop .alert_box .alert_title { margin-bottom:10px; color:var(--black_19); font-size:11px; padding-right:40px; text-align:left; }
.alert_pop .alert_box .alert_content { margin-bottom:20px; color:var(--gray300); font-size:16px; line-height:150%; text-align:left; font-weight:400; }
.alert_pop .alert_box .alert_content > strong, span { color:var(--black_19); }
.alert_pop .alert_box .alert_content > span { font-size:14px; }
.alert_pop .alert_box .alert_btn { position:relative; height:40px; }



/* alert_over layer */
/*
alert_over_pop :배경
alert_over_close :X
alert_over_title :제목
alert_over_content :내용
alert_over_btn :버튼
*/
.alert_over_pop{ display:none; z-index:601; position:fixed; top:0px; left:0px; bottom:0px; right:0px; text-align:center; background:var(--transback30); }
.alert_over_pop::after { content:''; display:inline-block; vertical-align:middle; width:0px; height:100%; }

.alert_over_pop .alert_box { position:absolute; top:50%; left:50%; transform:translate(-50%, -50%); width:320px; height:auto; padding:20px; background:#fff; box-sizing:border-box; border-radius:5px; }
.alert_over_pop .alert_box .alert_over_close { display:none; position:absolute; top:12px; right:10px; width:24px; height:24px; padding:20px; background:url(/images/comm/layer_close.svg) no-repeat center; cursor:pointer; border-radius:5px; }
.alert_over_pop .alert_box .alert_over_close:hover { background-color:var(--gray700); }

.alert_over_pop .alert_box .alert_over_title { margin-bottom:10px; color:var(--black_19); font-size:11px; padding-right:40px; text-align:left; }
.alert_over_pop .alert_box .alert_over_content { margin-bottom:20px; color:var(--gray300); font-size:16px; line-height:150%; text-align:left; font-weight:400; }
.alert_over_pop .alert_box .alert_over_content > strong, span { color:var(--black_19); }
.alert_over_pop .alert_box .alert_over_content > span { font-size:14px; }
.alert_over_pop .alert_box .alert_over_btn { position:relative; height:40px; }
