/*** common ***/
body {display: flex; flex-direction: column; min-height: 100vh; margin: 0; -ms-overflow-style: none;} 
body::-webkit-scrollbar {display: none;}
body > form:has( > #container ) {flex: 1;}
.wrap_comm {width: 1280px; margin: 0 auto;}
.screen_out {overflow: hidden; position: absolute; width: 0; height: 0; line-height: 0; text-indent: -9999px;}
#container {margin: 170px 0 100px; min-height: 100%;}
#container.etc_margin {margin: 70px 0;}
#container:has(> iframe) {margin: 150px 0 0;}

span.slash {display: inline-block; width: 1px; height: 20px; background: #232323; transform: rotate(20deg);}

.page_tit {width: 100%; text-align: center; padding: 50px 0; }
.page_tit strong {font-size: 36px; font-weight: bold;}
.page_tit p {font-size: 20px; color: #666; padding-top: 40px; word-break: keep-all;}

.cont_empty {width: 100%; padding: 50px 30px; display: flex; flex-direction: column; align-items: center; justify-content: center;}
.cont_empty .empty_img {height: 300px; width: 300px; background: url(../renewalimg/common/empty_list.svg) no-repeat center; background-size: 100% auto;}
.cont_empty p {color: #232323; font-size: 20px; font-weight: 600;}

.antidrag {-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;} /* 드래그방지 */
.ovh {overflow: hidden;} /* 스크롤 숨김 */
.fw600 {font-weight: 600;}

.dis_f {display: flex;}
.ai_c {align-items: center;}
.jc_sb {justify-content: space-between;}

/*** 관리자 범용 클래스 ***/

/* 정렬 */
.tac {text-align: center !important;}
.tal {text-align: left !important;}
.tar {text-align: right !important;}

.lh15 {line-height: 1.3;}

/* color */
.fcr {color: #E74C3C !important;}
.fcb {color: #3f88c5 !important;}
.fcbl {color: #232323 !important;}
.fcg {color: #666 !important;}

/* 폰트 굵기, 사이즈 등 */
.fwb {font-weight: bold !important;}
.fwn {font-weight: 500 !important;}

.fz-16 {font-size: 16px !important;}
.fz-17 {font-size: 17px !important;}
.fz-18 {font-size: 18px !important;}
.fz-19 {font-size: 19px !important;}
.fz-20 {font-size: 20px !important;}
.fz-21 {font-size: 21px !important;}
.fz-22 {font-size: 22px !important;}

/* input 입력폼  */
.common_wrap .common_tit {border-bottom: 1px solid #d9d9d9; position: relative;}
.common_wrap .common_tit.dis_f {}
.common_wrap .common_tit.dis_f button {border: 0;}
.common_wrap .common_tit:before {content: ''; position: absolute; bottom: -1px; left: 0; height: 2px; width: 33%; background-color: #232323;}
.common_wrap .common_tit strong {display: inline-block; font-size: 26px; font-weight: bold; padding: 15px 5px;}
.common_wrap .input_table {margin-top: 25px;}
.common_wrap .input_table.narrow {margin-top: 0;}
.common_wrap .input_table th,
.common_wrap .input_table td {padding: 17px 0; border-bottom: 1px solid #d9d9d9;}
.common_wrap .input_table th {font-weight: 600; font-size: 17px; padding-left: 20px; text-align: left;}
.common_wrap .input_table td {font-size: 16px;}
.common_wrap .input_table.narrow th,
.common_wrap .input_table.narrow td {padding: 14px 0; border-bottom: 1px solid #d9d9d9;}
.common_wrap .input_table.narrow th {font-weight: 600; font-size: 16px; text-align: left; padding: 14px 10px;}
.common_wrap .input_table.narrow td {font-size: 16px;}
.common_wrap .input_table.narrow td:has(input, select, textarea) {padding: 6px 0;}
.common_wrap .input_table input,
.common_wrap .input_table select,
.common_wrap .input_table textarea {color: #232323; font-weight: 500; font-size: 16px; height: 50px; width: 100%; padding: 15px 20px; background-color: #f5f7f6; border: 0; border-radius: 5px;}
.common_wrap .input_table.narrow input,
.common_wrap .input_table.narrow select,
.common_wrap .input_table.narrow textarea  {color: #232323; font-weight: 500; font-size: 16px; height: 40px; width: 100%; padding: 8px 10px; background-color: #f5f7f6; border: 0; border-radius: 5px;}
.common_wrap .input_table input:read-only {background-color: rgba(217, 217, 217, 0.7); cursor: default;}
.common_wrap .input_table input:disabled {background-color: rgba(217, 217, 217, 0.8); cursor: not-allowed;}
.common_wrap .input_table input::placeholder,
.common_wrap .input_table select::placeholder {color: #666; font-size: 16px;}
.common_wrap .input_table td .input_wrap {display: flex; align-items: center; gap: 10px;}
.common_wrap .input_table td .input_wrap button {font-size: 16px; padding: 11px 20px; border-radius: 5px; width: 200px; font-weight: 500;}
.common_wrap .input_table td .page_tit {padding: 20px 0 30px;}
.common_wrap .input_table td .page_tit strong {font-size: 30px;}
.common_wrap .input_table td .page_tit p {padding-top: 10px; font-size: 18px;}

.common_wrap .input_table select {background: #f5f7f6 url(../renewalimg/icon/icon_select_arr.svg) no-repeat right 10px center; background-size: 21px auto;}
.common_wrap .input_table ul li {font-size: 15px; margin: 5px 10px 0;}
.common_wrap .input_table input[type="file"],
.common_wrap .input_table input[type="file"]:read-only {background-color: #fff; padding: 0;}
.common_wrap .input_table input[type="file"]::file-selector-button,
label.like_file  {border: 1px solid #232323; text-align: center; padding: 10px; width: 150px; background-color: #fff; border-radius: 5px; font-weight: 500; margin-right: 10px; transition: all .25s; cursor: pointer;}
label.like_file + input[type="file"] {display: none;}
label.like_file ~ #fileName {padding: 10px 0; color: #666;}
.tm-org .common_wrap .input_table input[type="file"]::file-selector-button {color: #EA7404;}
.tm-prp .common_wrap .input_table input[type="file"]::file-selector-button {color: #7D55C7;}
.tm-nvy.common_wrap .input_table input[type="file"]::file-selector-button {color: #00205B;}
.common_wrap .input_table input[type="file"]:hover::file-selector-button {background-color: #232323; color: #fff;}
.common_wrap .input_table .dis_f input[type="text"] + span {line-height: 50px;}
.common_wrap .input_table textarea {width: 100%; resize: none; min-height: 85px;}

.common_wrap .input_table td:has(.noti_ul) {background-color: #f5f7f6;}
.common_wrap .input_table td .noti_ul li {font-size: 15px; font-weight: 500;}

.common_wrap .input_table td:has( .privacy_box) {padding: 0 30px 20px;}
.common_wrap .input_table td .privacy_box,
.common_wrap .input_table td .privacy_box .privacy_cont {margin: 0;}

.common_btn_wrap {display: flex; gap: 40px; justify-content: center; margin-top: 50px;}
.common_btn_wrap button {width: 230px; padding: 12px; border-radius: 5px; font-size: 18px; font-weight: 500;}

select {background: url(../renewalimg/icon/icon_select_arr.svg) no-repeat right 5px center;}
input:read-only {background-color: rgba(217, 217, 217, 0.7) !important; cursor: default;}

.table.no_bd tr,
.table.no_bd th,
.table.no_bd td {border: 0;}
.table.no_bd th {background-color: transparent;}

.ellipsis {overflow: hidden; white-space: nowrap; display: block; text-overflow: ellipsis; margin: 0 auto;}
.ellipsis_lines {overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; text-overflow: ellipsis; word-wrap: break-word; line-height: 1.3em; max-height: 2.6em;}

/* custom checkbox */
.common_wrap .chk_wrap {margin: 30px 0;}
.common_wrap .chk_wrap.all_chkbox {margin: 30px 0;}
.common_wrap table .chk_wrap {margin: 0;}
.chk_wrap label {height: 50px; line-height: 50px; font-size: 18px; color: #666; width: fit-content; cursor: pointer;}
.chk_wrap label input[type="checkbox"] {position: absolute; left: -99999px; width: 0; height: 0;}
.chk_wrap label span {display: inline-block; border: 1px solid #232323; width: 25px; height: 25px; margin-right: 10px; border-radius: 3px; overflow: hidden; position: relative;}
.chk_wrap label span:before {content: ''; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%) scale(.5); display: inline-block; width: 100%; height: 100%; background: #232323 url(../renewalimg/icon/icon_accodian_wh.svg) no-repeat center; background-size: 16px auto; opacity: 0; transition: all .2s;}
.chk_wrap label input[type="checkbox"]:checked ~ span:before {transform: translate(-50%, -50%) scale(1.05); opacity: 1;}
.chk_wrap label:has(p) {display: flex; align-items: center;}
.chk_wrap label p {display: inline-block;}
.chk_wrap.tac label:has(p) {justify-content: center;}

/* custom radio */
.common_wrap .radio_wrap {margin: 30px 0;}
.common_wrap .radio_wrap.dis_f {display: flex; flex-direction: row; gap: 0 15px; flex-wrap: wrap;}
.common_wrap table .radio_wrap {margin: 0;}
.radio_wrap label {height: 50px; line-height: 50px; font-size: 18px; color: #666; width: fit-content; cursor: pointer;}
.radio_wrap label input[type="radio"] {position: absolute; left: -99999px; width: 0; height: 0;}
.radio_wrap label span {display: inline-block; border: 1px solid #232323; width: 25px; height: 25px; margin-right: 10px; border-radius: 50%; overflow: hidden; position: relative;}
.radio_wrap label span:after {content: ''; position: absolute; top: 50%; left: 50%; width: 100%; height: 100%; transform: translate(-50%, -50%) scale(.5); background-color: #232323; border-radius: 50%; opacity: 0; transition: all .2s;}
.radio_wrap label span:before {content: ''; display: inline-block; position: absolute; top: 50%; left: 50%; width: 12px; height: 12px; transform: translate(-50%, -50%) scale(.5); background-size: 19px auto; background-color: #fff; border-radius: 50%; opacity: 0; z-index: 1; transition: all .2s;}
.radio_wrap label input[type="radio"]:checked ~ span:after,
.radio_wrap label input[type="radio"]:checked ~ span:before {transform: translate(-50%, -50%) scale(1.05); opacity: 1;}
.radio_wrap label:has(p) {display: flex; align-items: center;}
.radio_wrap label p {display: inline-block;}
.radio_wrap.tac label:has(p) {justify-content: center;}

.input_table.narrow .radio_wrap *,
.input_table.narrow .chk_wrap * {font-size: 16px !important;}


/* size */
.w100 {width: 100px !important;}
.w150 {width: 150px !important;}
.w200 {width: 200px !important;}
.w300 {width: 300px !important;}
.w400 {width: 400px !important;}
.w1000 {width: 1000px !important;}
.w30p {width: 30%;}
.w40p {width: 40%;}
.w50p {width: 50%;}
.w60p {width: 60%;}
.w70p {width: 70%;}
.w80p {width: 80%;}
.w90p {width: 90% !important;}
.w100p {width: 100%;}
.h100p {height: 100%;}
.h100 {height: 100px !important;}
.h200 {height: 200px !important;}

.mt0 {margin-top: 0px !important;}
.mt20 {margin-top: 20px !important;}
.mt30 {margin-top: 30px !important;}
.mr10 {margin-right: 10px !important;}
.ml_auto {margin-left: auto !important;}
.ml10 {margin-left: 10px !important;}
.pl30 {padding-left: 30px !important;}

.limit_h {overflow-y: auto;}

/* button */

button {color: #232323; border: 1px solid #d9d9d9; transition: all 0.25s;}
button:hover {color: #fff; border-color: #232323; background-color: #232323;}
button:disabled,
button.disabled {color: #666 !important; border-color: transparent !important; background-color: #d9d9d9 !important; cursor: default;}


.Cbtn_bg {border: 1px solid transparent; color: #fff; background-color: #758BAD; transition: all 0.25s;}
.tm-org .Cbtn_bg {background-color: #EA7404;} /* 오렌지 */
.tm-prp .Cbtn_bg {background-color: #7D55C7 ;} /* 보라 */
.tm-nvy .Cbtn_bg {background-color: #00205B;} /* 네이비 */
.Cbtn_bg:not(.nohover):hover,
.Cbtn_bg.on  {background-color: #232323; color: #fff; border-color: #232323;}

.Cbtn_bd {border: 1px solid #d9d9d9; color: #232323;}
.Cbtn_bd:hover {border-color: #758BAD !important; background-color: #758BAD !important; color: #fff !important;} 
.Cbtn_bd:hover span {color: #fff !important;} 

.tm-org .Cbtn_bd:hover {color: #fff !important; background-color: #EA7404 !important; border-color: #EA7404 !important;} 
.tm-org .Cbtn_bd:hover span {color: #fff !important;} 

.tm-prp .Cbtn_bd:hover {color: #fff !important;background-color: #7D55C7 !important; border-color: #7D55C7 !important;}
.tm-prp .Cbtn_bd:hover span {color: #fff !important;} 

.tm-nvy .Cbtn_bd:hover {color: #fff !important;background-color: #00205B !important; border-color: #00205B !important;}
.tm-nvy .Cbtn_bd:hover span {color: #fff !important;} 

/* custom */
.Cfont {color: #758BAD  !important;}
.tm-org .Cfont {color: #EA7404 !important;}
.tm-prp .Cfont {color: #7D55C7 !important;}
.tm-nvy .Cfont {color: #00205B !important;}

/* hover 시 */
.Hfont:hover {color: #758BAD  !important;}
.tm-org .Hfont:hover {color: #EA7404 !important;}
.tm-prp .Hfont:hover {color: #7D55C7 !important;}
.tm-nvy .Hfont:hover {color: #00205B !important;}

.btn_txt {color: #9F9F9F; font-size: 15px; border: none;}
.btn_txt:hover {color: #232323; background-color: transparent;}


/* swiper */
.swiper-slide {-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}

/* custom select */
.custom_select {position: relative; width: 160px;}
.custom_select .select_trigger {display: flex; align-items: center;justify-content: space-between;width: 100%;height: 35px;padding: 0 20px 0 20px;border: 1px solid #fff;border-radius: 30px; 
    background-color: #232323; color: #fff; font-size: 15px; font-weight: bold; cursor: pointer;text-align: left;transition: border-color 0.15s;}
.custom_select .select_trigger span {display: block; width: 100%; text-align: center;}
.select_value {flex: 1;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}
.select_arrow {width: 5px;height: 5px;margin-right: 5px;border-right: 2px solid #fff;border-bottom: 2px solid #fff;transform: rotate(45deg) translateY(-2px);transition: transform 0.2s, border-color 0.15s;flex-shrink: 0;}
.custom_select.is_open .select_arrow {transform: rotate(-135deg) translateY(-2px);}
.select_dropdown {display: none;position: absolute;top: calc(100% + 2px);left: 50%;right: 0;transform: translateX(-50%); border: 2px solid #232323;border-radius: 5px;background: #fff;list-style: none;padding: 5px 0;z-index: 200;overflow: hidden;} /* custom */
.custom_select.is_open .select_dropdown {display: block;width: 120px; animation: dropDown 0.15s ease;}
.select_dropdown li {padding: 5px 10px 5px 35px;font-size: 14px;color: #666;cursor: pointer;transition: all 0.1s, color 0.1s;line-height: 1.4;font-weight: 500;}
.select_dropdown li::before {content: '·'; display: inline-block; margin-right: 5px; font-weight: 900;}
.select_dropdown li:hover {color: #232323; text-decoration: underline;}
.select_dropdown li.is_selected {color: #232323; font-weight: bold;}

.select_dropdown_wrap {display: none;padding-top: .1rem;position: absolute;top: calc(100% + 3px);left: 0;right: 0;border-radius: 6px;background: #fff;z-index: 200;overflow: hidden;}
.custom_select.is_open .select_dropdown_wrap {display: block;animation: dropDown 0.15s ease;}

@keyframes dropDown {
    from { opacity: 0; transform: translate(-50%, -6px); }
    to   { opacity: 1; transform: translate(-50%, 0); }
}

/* common icon */
.type_badge.R01 {background: url(../renewalimg/icon/icon_hotel.svg) no-repeat center;}
.type_badge.R02 {background: url(../renewalimg/icon/icon_resort.svg) no-repeat center;}
.type_badge.R03 {background: url(../renewalimg/icon/icon_pension.svg) no-repeat center;}
.type_badge.R04 {background: url(../renewalimg/icon/icon_camping.svg) no-repeat center;}
.type_badge.THK {background: url(../renewalimg/icon/icon_theme_park.svg) no-repeat center;}
.type_badge.WPK {background: url(../renewalimg/icon/icon_water_park.svg) no-repeat center;}


/* common loader */
.loader_wrap {opacity: 0; pointer-events: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 1000; transition: opacity 0.1s;}
.loader_wrap.open {opacity: 1; pointer-events: initial;}
.loader_wrap .dim_bg {width: 100%; height: 100%; background-color: rgba(0,0,0,.5);}
.loader_wrap .loader {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); width: 130px; height: 130px;}
.loader_wrap .loader span {display: block;position: relative; left: 50%; top: 50%;width: 100px; height: 100px; margin: -55px 0 0 -55px; border-radius: 50%; border: 5px solid transparent; border-top-color: #EBC66F; -webkit-animation: spin 2s linear infinite;animation: spin 2s linear infinite;}
.loader_wrap .loader span::before {content: "";position: absolute; top: 5px; left: 5px; right: 5px; bottom: 5px; border-radius: 50%; border: 5px solid transparent; border-top-color: #D19C1D; -webkit-animation: spin 3s linear infinite; animation: spin 3s linear infinite;}
.loader_wrap .loader span::after {content: ""; position: absolute; top: 15px; left: 15px; right: 15px; bottom: 15px;border-radius: 50%;border: 5px solid transparent;border-top-color: #B48518; -webkit-animation: spin 1.5s linear infinite;animation: spin 1.5s linear infinite;} 

@-webkit-keyframes spin {
    0% {-webkit-transform: rotate(0deg); -ms-transform: rotate(0deg); transform: rotate(0deg);}
    100% {-webkit-transform: rotate(360deg); -ms-transform: rotate(360deg); transform: rotate(360deg);}
}
@keyframes spin {
    0%   {-webkit-transform: rotate(0deg); -ms-transform: rotate(0deg); transform: rotate(0deg);}
    100% {-webkit-transform: rotate(360deg); -ms-transform: rotate(360deg); transform: rotate(360deg);}
}


/*** common layer popup ***/
.layer_comm {display: none; position: fixed; top:0; left: 0; width: 100%; height: 100%;  z-index: 999;}
.layer_comm .dim_bg {width: 100%; height: 100%; background-color: rgba(0,0,0,.4);}
.layer_comm .layer_pop {max-width: 45vw; display: flex; flex-direction: column; gap: 20px; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); background: #fff; padding: 30px 50px; border-radius: 20px; box-shadow: 7px 15px 30px 0 rgba(0,0,0,.25); overflow: hidden;}
/* .layer_comm .layer_pop.open {opacity: 1; top:50%; transform: translate(-50%, -50%); transition: all .25s;} */
.layer_comm .layer_pop .pop_tit {text-align: center; display: flex; flex-direction: column; gap: 10px;}
.layer_comm .layer_pop .pop_tit strong {color: #232323; font-size: 30px; font-weight: bold;}
.layer_comm .layer_pop .pop_tit p {color: #666; font-size: 18px;}
.layer_comm .layer_pop .pop_img {height: 220px; width: auto;}
.layer_comm .layer_pop .pop_img img {height: 100%; width: auto; object-fit: cover;}
.layer_comm .layer_pop .pop_cont {text-align: center; display: flex; flex-direction: column; gap: 15px;}
.layer_comm .layer_pop .pop_cont strong {font-size: 24px; font-weight: 500;}
.layer_comm .layer_pop .pop_cont strong b {}
.layer_comm .layer_pop .pop_cont p {font-size: 16px; line-height: 1.4; color: #666; word-break: keep-all;}
.layer_comm .layer_pop .pop_cont table {border-top: 2px solid #232323; width: fit-content; min-width: 100%;}
.layer_comm .layer_pop .pop_cont table tr {border-bottom: 1px solid #d9d9d9;}
.layer_comm .layer_pop .pop_cont table tr th,
.layer_comm .layer_pop .pop_cont table tr td {padding: 8px 3px;}
.layer_comm .layer_pop .pop_cont table tr th {font-weight: 600;}
.layer_comm .layer_pop .pop_cont table tr td {color: #666; word-break: keep-all;}
.layer_comm .layer_pop .pop_cont table input,
.layer_comm .layer_pop .pop_cont table select {color: #232323; font-weight: 500; font-size: 16px; height: 50px; width: 100%; padding: 8px 10px; background-color: #f5f7f6; border: 0; border-radius: 5px;}
.layer_comm .layer_pop .pop_cont table select {background-size: 21px auto; background-position: right 10px center; padding-right: 28px;}
.layer_comm .layer_pop .btn_wrap {display: flex; gap: 20px; justify-content: center; margin-top: 10px;}
.layer_comm .layer_pop .btn_wrap button {width: 100%;padding: 12px; border-radius: 5px; font-size: 18px; font-weight: 500;}

/* toast pop */
.toast_pop {display: none; position: fixed; left: 50%; top: 50%; transform: translate(-50%, -50%); width: fit-content; max-width: 90%; background-color: #fcf0f0; padding: 20px; border-radius: 10px; border: 2px solid #E74C3C; overflow: hidden; z-index: 1000;}
.toast_pop::after {content: ''; position: absolute; top: 0px; left: 0; width: 100%; height: 3px; background: #E74C3C; animation: progress 3s linear forwards;}
@keyframes progress {
    from {width: 100%;}
    to {width: 0%;}
}
.toast_pop .dis_f {align-items: center; gap: 20px;}
.toast_pop p {word-break: keep-all; min-width: 200px;}
.toast_pop .close_x {border: 0; width: 30px; height: 30px; background: url(../renewalimg/icon/icon_close.svg) no-repeat center; background-size: 100% auto;}
.toast_pop .close_x:hover {transform: translateY(-3px);}

/* alert pop */
.layer_alert {display: none; position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 1000; padding: 30px; background-color: #fff; border-radius: 20px; box-shadow: 7px 15px 30px 0 rgba(0,0,0,.25); overflow: hidden;
min-width: 400px; min-height: 280px; box-sizing: border-box; }
/* .layer_alert.open {opacity: 1; pointer-events: all; transition: all .25s;} */
.layer_alert .pop_tit {text-align: center; display: flex; flex-direction: column; gap: 5px; margin-bottom: 20px;}
.layer_alert .pop_tit strong {color: #232323; font-size: 25px; font-weight: bold;}
.layer_alert .pop_tit p {color: #232323; font-size: 18px;}
.layer_alert .pop_img {height: 90px; width: auto; margin-bottom: 20px;}
.layer_alert .pop_img img {height: 100%; width: auto; object-fit: cover;}
.layer_alert .pop_cont {text-align: center; margin-bottom: 20px;}
.layer_alert .pop_cont strong {font-size: 24px; font-weight: 500;}
.layer_alert .pop_cont strong b {}
.layer_alert .pop_cont p {font-size: 16px; line-height: 1.4; color: #232323;}
.layer_alert .btn_wrap {display: flex; gap: 20px; justify-content: center; margin-top: 10px;}
.layer_alert .btn_wrap button {flex:1; padding: 10px; border-radius: 5px; font-size: 18px; font-weight: 500;}

/* 공지 팝업 */
.layer_comm .layer_noti {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); height: 600px; width: 550px; border-radius: 20px; overflow: hidden;box-shadow: 0 4px 10px rgba(0,0,0,.8);}
.layer_comm .layer_noti.animate__fadeInUp {animation-name: fadeInUp_noti;}
@keyframes  fadeInUp_noti {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(-50%, 100%, 0);
        transform: translate3d(-50%, 100%, 0);
    }
    100% {
        opacity: 1;
        -webkit-transform: translate3d(-50%, -50%, 0);
        transform: translate3d(-50%, -45%, 0);
    }
}
#notipop_swp {}
#notipop_swp .swiper-slide {width: auto; height: 550px;}
#notipop_swp .swiper-slide .noti_img {width: 100%; height: 100%; overflow-y: auto;}
#notipop_swp .swiper-slide *::-webkit-scrollbar {width: 6px; height: 5px;}
#notipop_swp .swiper-slide *::-webkit-scrollbar-thumb {width: 2px; background-color: #666; border-radius: 10px;}
#notipop_swp .swiper-slide .noti_img img {width: 100%; height: auto; object-fit: cover;}
#notipop_swp .swiper-slide .noti_txt {padding: 20px 30px 50px; height: 100%; background-color: #fff;}
#notipop_swp .noti_txt .noti_tit {display: flex; align-items: center; gap: 10px; padding-bottom: 10px; border-bottom: 1px solid #d9d9d9;}
#notipop_swp .noti_txt .noti_tit i.noti_pop {display: inline-block; width: 45px; height: 45px; padding: 10px; background: #f5f7f6 url(../renewalimg/icon/icon_notification.svg) no-repeat center; background-size: 35px auto; border-radius: 50%; }
#notipop_swp .noti_txt .noti_tit strong {font-size: 22px; font-weight: bold; width: calc(100% - 75px); overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; text-overflow: ellipsis; word-wrap: break-word; line-height: 1.2em; max-height: 2.4em;}
#notipop_swp .noti_txt .noti_detail {margin-top: 10px; padding: 10px; overflow-y: auto; height: calc(100% - 70px);}
#notipop_swp .noti_txt .noti_detail * {white-space: pre-line; color: #232323; font-size: 16px; word-break: keep-all;}
#notipop_swp .noti_txt .noti_detail span {vertical-align: 0;}
#notipop_swp .swiper-pagination {position: absolute; bottom: 5px; left: 50%; transform: translateX(-50%);}
#notipop_swp .swiper-pagination-bullet {border-radius: 0; margin: 0; height: 6px; width: 10px; background-color: #d9d9d9; border: 1px solid #d9d9d9; opacity: .7; transition: all .25s;}
#notipop_swp .swiper-pagination span:first-child {border-radius: 8px 0 0 8px;}
#notipop_swp .swiper-pagination span:last-child {border-radius: 0 8px 8px 0;}
#notipop_swp .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {background-color: #000; opacity: 1; border-color: transparent;}

.layer_noti .noti_btn_wrap {height: 50px; width: 100%; position: absolute; bottom: 0; left: 0; padding: 0 30px; background-color: #232323; display: flex; align-items: center; justify-content: end;}
.layer_noti .noti_btn_wrap button {all: unset; color: #fff; font-weight: 500; font-size: 15px; cursor: pointer; transition: transform .2s;}
.layer_noti .noti_btn_wrap button.no_today {margin-right: auto;}
.layer_noti .noti_btn_wrap button.close_pop {}
.layer_noti .noti_btn_wrap button:hover {transform: translateY(-3px);}


/*** KCP 윈도우 팝업 ***/
#win_pop.common_wrap {padding: 20px;}
#win_pop.common_wrap .common_tit.dis_f button.icon_print {width: 40px; height: 40px; background: url(../renewalimg/icon/icon_print.svg) no-repeat center; background-size: 100% auto;}
#win_pop.common_wrap .common_tit.dis_f button.icon_print:hover {transform: translateY(-3px);}

#win_pop.common_wrap .input_table {}
#win_pop.common_wrap .input_table td:has( input, select) {padding: 5px 0;}

#win_pop.cutline .fixed_table th,
#win_pop.cutline .fixed_table td  {font-size: 14px;}

/*** header ***/
header {background-color: #fff; position: fixed; width: 100%; height: 150px; top: 0; left: 0; z-index: 999; transition: all .25s;}
header.ontop {height: 70px;}
header.bd_b {border-bottom: 1px solid #d9d9d9; }
header .wrap_comm {padding: 50px 0; transition: all .25s;}
header.ontop .wrap_comm {padding: 10px 0;}
.head_menu {display: flex; align-items: center; gap: 40px;}
.head_menu .link_logo {height: 50px;}
.head_menu .link_logo img {height: 100%; width: auto; object-fit: cover;}
.head_search {}
.head_search .search_box {display: flex; overflow: hidden; height: 50px; width: 350px; border-radius: 50px; background: #f5f7f6; border: 1px solid transparent; transition: all .25s; position: relative;}
.head_search .search_box:has(input:focus) {border-color: #232323;}
.head_search .search_box input[type="text"] {border: none; width: calc(100% - 50px); background: #f5f7f6; padding: 0 10px 0 30px;}
.head_search .search_box .search_btn {width: 50px; height: 50px; background: #f5f7f6 url(../renewalimg/icon/icon_search.svg) no-repeat right 18px center; border:0;}
.head_menu .menu_ilst {display: flex; margin-left: auto; gap: 15px;}
.head_menu .menu_ilst li  .point_box {display: flex; flex-direction: column; border: 1px solid #666; border-radius: 5px; text-align: center; min-width: 80px;}
.head_menu .menu_ilst li .point_box strong {background-color: #666; color: #fff; font-size: 14px; padding: 2px; font-weight: 500;}
.head_menu .menu_ilst li .point_box > div {padding: 2px 5px;}
.head_menu .menu_ilst li .point_box > div p  {font-size: 14px; color: #232323; font-weight: 500;}
.head_menu .menu_ilst li a {display: block; min-width: 43px;}
.head_menu .menu_ilst li a:hover span {color: inherit;}
.head_menu .menu_ilst li span {display: block; width: 100%; text-align: center; font-weight: 600; font-size: 13px; color: #666; margin-top: 2px; transition: all .25s;}

.head_menu .menu_ilst li i.head_icon {display: block; width: 32px; height: 32px; margin: 0 auto; text-align: center; }
.head_menu .menu_ilst li a:hover i.head_icon {transform: translateY(-3px); transition: all .2s;}
.head_menu .menu_ilst li i.head_icon.home {background: url(../renewalimg/icon/icon_home.svg) no-repeat center; background-size: 32px auto;}
.head_menu .menu_ilst li i.head_icon.price {background: url(../renewalimg/icon/icon_price.svg) no-repeat center; background-size: 32px auto;}
.head_menu .menu_ilst li i.head_icon.notice {background: url(../renewalimg/icon/icon_notice.svg) no-repeat center; background-size: 32px auto;}
.head_menu .menu_ilst li i.head_icon.map {background: url(../renewalimg/icon/icon_map.svg) no-repeat center; background-size: 32px auto;}
.head_menu .menu_ilst li i.head_icon.corp {background: url(../renewalimg/icon/icon_corp.svg) no-repeat center; background-size: 32px auto;}
.head_menu .menu_ilst li i.head_icon.application {background: url(../renewalimg/icon/icon_application.svg) no-repeat center; background-size: 100% auto;}
.head_menu .menu_ilst li i.head_icon.waiting {background: url(../renewalimg/icon/icon_waiting.svg) no-repeat center; background-size: 100% auto;}
/* .head_menu .menu_ilst li i.head_icon.password {background: url(../renewalimg/icon/icon_password.svg) no-repeat center; background-size: 32px auto;} */
.head_menu .menu_ilst li i.head_icon.reserv {background: url(../renewalimg/icon/icon_reserv.svg) no-repeat center; background-size: 32px auto;}
.head_menu .menu_ilst li i.head_icon.mypage {background: url(../renewalimg/icon/icon_mypage.svg) no-repeat center; background-size: 32px auto;}
.head_menu .menu_ilst li i.head_icon.logout {background: url(../renewalimg/icon/icon_logout.svg) no-repeat center; background-size: 32px auto;}
.head_menu .menu_ilst li i.head_icon.orgmenu {background: url(../renewalimg/icon/icon_orgmenu.svg) no-repeat center; background-size: 32px auto;}
.head_menu .menu_ilst li i.head_icon.regist {background: url(../renewalimg/icon/icon_regist.svg) no-repeat left 1px center; background-size: 32px auto;}


 /* 한국전력공사 전용 아이콘 sizeup */
.head_menu .menu_ilst.sizeup li span {display: block; width: 100%; text-align: center; font-weight: 600; font-size: 15px; color: #666; transition: all .25s;}

.head_menu .menu_ilst.sizeup li i.head_icon {display: block; width: 34px; height: 34px; margin: 0 auto; text-align: center; }
.head_menu .menu_ilst.sizeup li i.head_icon.home {background: url(../renewalimg/icon/icon_home.svg) no-repeat center; background-size: 34px auto;}
.head_menu .menu_ilst.sizeup li i.head_icon.price {background: url(../renewalimg/icon/icon_price.svg) no-repeat center; background-size: 34px auto;}
.head_menu .menu_ilst.sizeup li i.head_icon.notice {background: url(../renewalimg/icon/icon_notice.svg) no-repeat center; background-size: 34px auto;}
.head_menu .menu_ilst.sizeup li i.head_icon.map {background: url(../renewalimg/icon/icon_map.svg) no-repeat center; background-size: 34px auto;}
.head_menu .menu_ilst.sizeup li i.head_icon.corp {background: url(../renewalimg/icon/icon_corp.svg) no-repeat center; background-size: 34px auto;}
.head_menu .menu_ilst.sizeup li i.head_icon.application {background: url(../renewalimg/icon/icon_application.svg) no-repeat center; background-size: 100% auto;}
.head_menu .menu_ilst.sizeup li i.head_icon.waiting {background: url(../renewalimg/icon/icon_waiting.svg) no-repeat center; background-size: 100% auto;}
.head_menu .menu_ilst.sizeup li i.head_icon.reserv {background: url(../renewalimg/icon/icon_reserv.svg) no-repeat center; background-size: 34px auto;}
.head_menu .menu_ilst.sizeup li i.head_icon.mypage {background: url(../renewalimg/icon/icon_mypage.svg) no-repeat center; background-size: 34px auto;}
.head_menu .menu_ilst.sizeup li i.head_icon.logout {background: url(../renewalimg/icon/icon_logout.svg) no-repeat center; background-size: 34px auto;}
.head_menu .menu_ilst.sizeup li i.head_icon.orgmenu {background: url(../renewalimg/icon/icon_orgmenu.svg) no-repeat center; background-size: 34px auto;}
.head_menu .menu_ilst.sizeup li i.head_icon.regist {background: url(../renewalimg/icon/icon_regist.svg) no-repeat left 1px center; background-size: 34px auto;}


/*** footer ***/
footer{width:100%; background-color: #F5F7F6; color: #666;}
.footer_wrap {width: 1280px; margin: 0 auto;}

.foot_cs {display: flex; align-items: center; height: 80px; gap: 44px; border-bottom: 1px solid #d9d9d9;}
.foot_cs strong {display: inline-block; font-size: 16px; font-weight: 600;}
.foot_cs ul {display: flex; }
.foot_cs li {display: inline-block;}
.foot_cs li:before{content:'';display:inline-block;margin:-2px 8px;width:1px;height:14px;background-color:#666;}
.foot_cs li:first-child:before{content:'';display:none;}
.foot_cs .foot_linkbox {margin-left: auto; display: flex; align-items: center;}
.foot_cs .foot_linkbox .foot_link {display: inline-block; color: #000; font-size: 15px; font-weight: bold; margin-left: 30px;}
.foot_cs .foot_linkbox .foot_link:hover {color: #758BAD;} /* custom */
.foot_cs .foot_linkbox .foot_link:first-child {margin-left: 0;}
.foot_comp{width:100%; display: flex; gap: 44px; align-items: center; padding: 30px 0; font-size: 12px;}
.foot_comp .ci_logo{height: 55px; width: 106px;}
.foot_comp .foot_info address {line-height:1.7}
.foot_comp .foot_info p{line-height:1.7}
.foot_comp .foot_info > em{display:inline-block ;font-size:12px; line-height: 2.4;}

/* top 버튼 */
#toTop {opacity: 0; pointer-events: none; position: fixed; bottom: 70px; right: 170px; z-index: 1000; transition: all .25s;}
#toTop.on {opacity: 1; pointer-events: all;}
#toTop a {display: inline-block; width: 43px; height: 43px;  border: 1px solid #d9d9d9; box-shadow: 0 5px 5px rgba(0,0,0,.18); border-radius: 50%; background: #fff url(../renewalimg/icon/icon_top_button.svg) no-repeat center; background-size: 24px auto;}
#toTop a:hover {background: #232323 url(../renewalimg/icon/icon_top_button_wh.svg) no-repeat center; background-size: 24px auto; border-color: #232323;}

/*** index - splash ***/
.index_splash {position: fixed; height: 100dvh; width: 100%; top: 0; left: 0; z-index: 1000; background-image: linear-gradient(to top, #f5f7f6 0%, white 100%); overflow: hidden; -webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}
.index_splash .splash_logo {position: absolute; top: 45%; left: 50%; transform: translate(-50%, -50%); height: fit-content; z-index: 1; flex-direction: column; gap: 10px;}
.index_splash .splash_logo h2 {font-size: 40px; font-weight: 800; font-family: 'KimJeongCheolHandwriting' !important;}
.index_splash .splash_logo img {width: auto; height: 60px; object-fit: cover;}
.index_splash .wave_wrap {position: absolute; top: 0; right: 50%; width: 100dvh; height: 100%; font-size: 100px; overflow: hidden; transform: rotate(-90deg); transform-origin: center;}
.index_splash .wave {border-width: 0.1em; border-style: solid; position: absolute; animation: wave 1500ms infinite alternate; transform: rotate(-44.5deg);}
.index_splash .wave:nth-child(1) {width: 9.5125em;  height: 9.5125em; bottom: -4.75625em; left: 0.24375em; animation-delay: 75ms; border-color: transparent transparent rgba(240, 240, 240, 1) rgba(240, 240, 240, 1); border-radius: 9.5125em;}
.index_splash .wave:nth-child(2) {width: 9.025em; height: 9.025em; bottom: -4.5125em; left: 0.4875em; animation-delay: 150ms; border-color: transparent transparent rgba(240, 240, 240, 0.9) rgba(240, 240, 240, 0.9); border-radius: 9.025em;}
.index_splash .wave:nth-child(3) {width: 8.5375em; height: 8.5375em; bottom: -4.26875em; left: 0.73125em; animation-delay: 225ms; border-color: transparent transparent rgba(240, 240, 240, 0.85) rgba(240, 240, 240, 0.85); border-radius: 8.5375em;}
.index_splash .wave:nth-child(4) {width: 8.05em; height: 8.05em; bottom: -4.025em; left: 0.975em; animation-delay: 300ms; border-color: transparent transparent rgba(240, 240, 240, 0.8) rgba(240, 240, 240, 0.8); border-radius: 8.05em;}
.index_splash .wave:nth-child(5) {width: 7.5625em; height: 7.5625em; bottom: -3.78125em; left: 1.21875em; animation-delay: 375ms; border-color: transparent transparent rgba(240, 240, 240, 0.75) rgba(240, 240, 240, 0.75); border-radius: 7.5625em;}
.index_splash .wave:nth-child(6) {width: 7.075em; height: 7.075em; bottom: -3.5375em; left: 1.4625em; animation-delay: 450ms; border-color: transparent transparent rgba(240, 240, 240, 0.7) rgba(240, 240, 240, 0.7); border-radius: 7.075em;}
.index_splash .wave:nth-child(7) {width: 6.5875em;  height: 6.5875em; bottom: -3.29375em; left: 1.70625em; animation-delay: 525ms; border-color: transparent transparent rgba(240, 240, 240, 0.65) rgba(240, 240, 240, 0.65); border-radius: 6.5875em;}
.index_splash .wave:nth-child(8) {width: 6.1em; height: 6.1em; bottom: -3.05em; left: 1.95em; animation-delay: 600ms; border-color: transparent transparent rgba(240, 240, 240, 0.6) rgba(240, 240, 240, 0.6); border-radius: 6.1em;}
.index_splash .wave:nth-child(9) {width: 5.6125em; height: 5.6125em; bottom: -2.80625em; left: 2.19375em; animation-delay: 675ms; border-color: transparent transparent rgba(240, 240, 240, 0.55) rgba(240, 240, 240, 0.55); border-radius: 5.6125em;}
.index_splash .wave:nth-child(10) {width: 5.125em; height: 5.125em; bottom: -2.5625em; left: 2.4375em; animation-delay: 750ms; border-color: transparent transparent rgba(240, 240, 240, 0.5) rgba(240, 240, 240, 0.5); border-radius: 5.125em;}
.index_splash .wave:nth-child(11) {width: 4.6375em; height: 4.6375em; bottom: -2.31875em; left: 2.68125em; animation-delay: 825ms; border-color: transparent transparent rgba(240, 240, 240, 0.45) rgba(240, 240, 240, 0.45); border-radius: 4.6375em;}
.index_splash .wave:nth-child(12) {width: 4.15em; height: 4.15em; bottom: -2.075em; left: 2.925em; animation-delay: 900ms; border-color: transparent transparent rgba(240, 240, 240, 0.4) rgba(240, 240, 240, 0.4); border-radius: 4.15em;}
.index_splash .wave:nth-child(13) {width: 3.6625em; height: 3.6625em; bottom: -1.83125em; left: 3.16875em; animation-delay: 975ms; border-color: transparent transparent rgba(240, 240, 240, 0.35) rgba(240, 240, 240, 0.35); border-radius: 3.6625em;}
.index_splash .wave:nth-child(14) {width: 3.175em; height: 3.175em; bottom: -1.5875em; left: 3.4125em; animation-delay: 1050ms; border-color: transparent transparent rgba(240, 240, 240, 0.3) rgba(240, 240, 240, 0.3); border-radius: 3.175em;}
.index_splash .wave:nth-child(15) {width: 2.6875em; height: 2.6875em; bottom: -1.34375em; left: 3.65625em; animation-delay: 1125ms; border-color: transparent transparent rgba(240, 240, 240, 0.25) rgba(240, 240, 240, 0.25); border-radius: 2.6875em;}
.index_splash .wave:nth-child(16) {width: 2.2em; height: 2.2em; bottom: -1.1em; left: 3.9em; animation-delay: 1200ms; border-color: transparent transparent rgba(240, 240, 240, 0.2) rgba(240, 240, 240, 0.2); border-radius: 2.2em}
.index_splash .wave:nth-child(17) { width: 1.7125em; height: 1.7125em; bottom: -0.85625em; left: 4.14375em; animation-delay: 1275ms; border-color: transparent transparent rgba(240, 240, 240, 0.15) rgba(240, 240, 240, 0.15); border-radius: 1.7125em;}
.index_splash .wave:nth-child(18) {width: 1.225em; height: 1.225em; bottom: -0.6125em; left: 4.3875em; animation-delay: 1350ms; border-color: transparent transparent rgba(240, 240, 240, 0.1) rgba(240, 240, 240, 0.1); border-radius: 1.225em;}
.index_splash .wave:nth-child(19) {width: 0.7375em; height: 0.7375em; bottom: -0.36875em; left: 4.63125em; animation-delay: 1425ms; border-color: transparent transparent rgba(240, 240, 240, 0.07) rgba(240, 240, 240, 0.07); border-radius: 0.7375em;}
.index_splash .wave:nth-child(20) {width: 0.25em; height: 0.25em; bottom: -0.125em; left: 4.875em; animation-delay: 1500ms; border-color: transparent transparent rgba(240, 240, 240, 0.05) rgba(240, 240, 240, 0.05); border-radius: 0.25em;}
@keyframes wave {
  to {
    transform: rotate(135deg);
  }
}

/*** index - 첫화면 ***/
body:has( .index_wrap) {overflow: hidden; height: 100vh;}
.index_wrap * {letter-spacing: -.5px;}
.index_wrap {padding: 40px 50px 60px; box-sizing: border-box; height: 100%;}
.index_wrap .logo_box {height: 50px; text-align: center; }
.index_wrap .logo_box img {display: block; height: 100%; width: auto; margin: 0 auto;}
.index_wrap .logo_box ~ form {height: calc(100% - 50px);}

#index_swp {padding: 50px 50px 20px; height: 100%;}
#index_swp .swiper-slide {min-width: calc(33% - 50px);}
#index_swp .type_option {overflow: hidden; height: 100%; border-radius: 30px; transition: all .25s;}
#index_swp .type_option:hover {box-shadow: 15px 4px 15px 0 rgba(0,0,0,.3);}
#index_swp .type_option picture {position: relative; height: 100%; width: 100%; justify-content: flex-start; transition: all .25s;}
#index_swp .type_option picture::before {content: ''; width: 100%; height: 100%; background: linear-gradient(145deg, rgba(35,35,35,.10), rgba(35,35,35,.60)); position: absolute; top:0; left: 0;}
#index_swp .type_option:hover picture::before {content: ''; background: linear-gradient(145deg, rgba(35,35,35,.10), rgba(35,35,35,.75)); }
#index_swp .type_option picture img {width: 100%; height: 100%; object-fit: cover;}
#index_swp .type_option .txt_wrap {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 1; width: 90%; color: #fff; display: flex; flex-direction: column; gap: 20px; align-items: center; text-align: center;}
#index_swp .type_option .txt_wrap strong {display: inline-block; font-size: 3.5em; font-weight: bold; position: relative; }
#index_swp .type_option .txt_wrap p {font-size: 18px; min-height: 67px; padding: 20px; text-align: center; white-space: pre-line; word-break: keep-all;}
#index_swp .type_option .btn_wrap {}
#index_swp .type_option .btn_wrap button {width: 230px; height: 55px; border: 1px solid #fff; background-color: rgba(35,35,35,.3); border-radius: 10px; color: #fff; font-size: 20px; font-weight: bold; transition: all .25s;} /* 로그인 기본 custom */
#index_swp .type_option .btn_wrap button + button {margin-top: 10px;}
/* body:not([class*="tm-"]) #index_swp .type_option .btn_wrap .custom_btn:hover {border-color: #758BAD; background-color: #758BAD;} */
#index_swp .swiper-button-prev,
#index_swp .swiper-button-next {z-index: 100;}
#index_swp .swiper-button-next::after,
#index_swp .swiper-button-prev::after {content: ''; width: 100%; height: 100%;}
#index_swp .swiper-button-next::after {background: url(../renewalimg/icon/icon_slide_next.svg) no-repeat center; background-size: auto 100%;}
#index_swp .swiper-button-prev::after {background: url(../renewalimg/icon/icon_slide_prev.svg) no-repeat center; background-size: auto 100%;}

.login_pop {display: none; position: fixed; top:0; left: 0; width: 100%; height: 100%; z-index: 1;}
.login_pop .dim_bg {position: absolute; top:0; left: 0; width: 100%; height: 100%; background-color: rgba(0,0,0,.5); z-index: 1;}
.login_pop .login_pop_close {position: absolute; top: 20px; right: 20px; width: 32px; height: 32px; background: url(../renewalimg/icon/icon_close.svg) no-repeat center; background-size: 100% auto; transition: all .25s; border:0;}
.login_pop .login_pop_close:hover {transform: translateY(-3px);}
.login_pop .login_wrap {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); background-color: #fff; width: 450px; 
    padding: 50px; border-radius: 20px; z-index: 1; text-align: center; box-shadow: 0 0 10px 0 rgba(0,0,0,.15);}
.login_pop .login_head {margin-bottom: 20px;}
.login_pop .login_head h2 {font-size: 3em; font-weight: bold;}
.login_pop .login_head p {font-size: 16px; color: #666; font-weight: 500;}
.login_pop .login_body {padding: 0 10px;}
.login_pop .login_body fieldset {display: flex; flex-direction: column; gap: 10px;}
.login_pop .login_body label input {border: 1px solid #d9d9d9; border-radius: 3px; color: #666; background-color: #fff; height: 40px; width: 100%; padding: 5px 10px; transition: all .25s;}
.login_pop .login_body label input:focus {background-color: #fff !important; border-color: #232323;}
.login_pop .login_body .btn_wrap {}
.login_pop .login_body .btn_wrap button {width: 100%; border-radius: 5px; height: 45px; line-height: 45px; font-size: 16px; font-weight: 500;}
.login_pop .login_body .btn_wrap button + button {margin-top: 10px;}

.login_pop .login_notice {text-align: left; margin-top: 20px; font-size: 15px;}
.login_pop .login_notice > ul li:before {content: '·'; margin-right: 5px;}
.login_pop .login_notice ul li a {color: #758BAD;}
.login_pop .login_notice ul li a:hover {text-decoration: underline;}

.login_pop .service_notice {margin-top: 13px; padding: 10px; background-color: #f5f7f6; border-radius: 10px; text-align: center;}
.login_pop .service_notice b ~ ul ,
.login_pop .service_notice  ul ~ b {margin-top: 10px;}
.login_pop .service_notice b {font-weight: 500;}
.login_pop .service_notice ul li b {font-weight: 600;}
.login_pop .service_notice em {font-weight: 500;}

.index_etc {height: 60px; padding-bottom: 20px; text-align: center;}
.index_etc .app_link {display: inline-block;} /* 앱다운로드 링크 */
.index_etc .app_link:hover {transform: translateY(-3px);}


/*** unable - 오류페이지 ***/
.unable_box {position: absolute; top: 52%; left: 50%; transform: translate(-50%, -50%); display: flex; gap: 30px; flex-direction: column; align-items: center; text-align: center;}
.unable_img {width: 300px; height: 250px;}
.unable_img img {display: block; margin: 0 auto; width: 100%; height: auto; object-fit: cover;}
.unable_txt strong {display: inline-block; font-size: 32px; letter-spacing: 1px; font-weight: bold; margin-bottom: 30px;}
.unable_txt p,
.unable_txt p * {font-size: 22px; font-weight: 500; line-height: 1.7;}
.unable_box .go_login {padding: 10px 20px; width: 250px; font-size: 16px; border-radius: 5px; margin: 30px auto; font-weight: 500;}


/*** password - 비밀번호 변경 ***/
.wrap_comm.password {width: 1040px;}
.common_notice {margin-top: 30px; background-color: #f5f7f6; padding: 30px; border-radius: 10px;}
.common_notice .badge {display: inline-block; color: #fff; font-weight: 500; font-size: 16px; background-color: #232323; padding: 7px 15px; border-radius: 5px; margin-bottom: 10px;}
.icon.noti {display: inline-block; width: 16px; height: 16px; background: url(../renewalimg/icon/icon_noti.svg) no-repeat center; background-size: 100% auto; margin-right: 3px; vertical-align: -3px;}
.common_notice ul li {font-weight: 500; font-size: 15px; color: #666; line-height: 1.6;}
.common_notice ul li::before {content: '·'; margin-right: 5px;}
.password .btn_wrap {display: flex; gap: 40px; justify-content: center; margin-top: 50px;}
.password .btn_wrap button {width: 300px;padding: 12px; border-radius: 5px; font-size: 18px; font-weight: 500;}


/*** privacy - 개인정보 동의 ***/
.wrap_comm.privacy {width: 1000px;}
.common_wrap .privacy_cont {margin-top: 30px; width: 100%; resize: none; border: 1px solid #d9d9d9; border-radius: 10px; padding: 15px; height: 360px; overflow-y: auto; font-size: 15px; color: #666;}
.common_wrap .privacy_cont p {margin-top: 10px;}
.common_wrap .privacy_cont strong {display: inline-block; font-weight: bold; margin: 10px 10px 0;}
.common_wrap .privacy_cont strong + p {margin-left: 15px;}
.common_wrap .privacy_cont ul li,
.common_wrap .privacy_cont ol li {margin: 5px 15px 0;}
.common_wrap .privacy_cont ul li p {margin-top: 5px;}
.common_wrap .privacy_cont table {margin-top: 20px;}
.common_wrap .privacy_cont table tr {height: auto;}
.common_wrap .privacy_cont table th {background-color: #f5f7f6;}
.common_wrap .privacy_cont table th,
.common_wrap .privacy_cont table td {border: 1px solid #d9d9d9; font-size: 15px; font-weight: 500;  padding: 10px;}

.privacy table.no_bd {width: 600px; margin: 0 auto;}
.privacy table.no_bd th,.privacy table.no_bd td {padding: 8px 0; font-size: 16px;}
.privacy .input_wrap {display: flex; gap: 10px;}
.privacy .input_wrap input[type="text"] {color: #232323; font-weight: 500; font-size: 16px; height: 50px; width: 100%; padding: 15px 20px; background-color: #f5f7f6; border: 0; border-radius: 5px;}
.privacy .input_wrap input[type="text"]::placeholder {color: #666; font-size: 16px; font-weight: normal;}
.privacy .input_wrap button {width: 150px; height: 50px; border-radius: 5px; font-size: 16px; font-weight: 500;}
.privacy .btn_wrap {display: flex; gap: 40px; justify-content: center; margin-top: 50px;}
.privacy .btn_wrap button {width: 300px;padding: 12px; border-radius: 5px; font-size: 18px; font-weight: 500;}


/*** register - 회원가입 ***/
.wrap_comm.register {width: 1000px;}
.register .btn_wrap {display: flex; gap: 40px; justify-content: center; margin-top: 50px;}
.register .btn_wrap button {width: 300px;padding: 12px; border-radius: 5px; font-size: 18px; font-weight: 500;}
.common_noti {background-color: #f8f8f8; font-size: 20px; text-align: center; width: 100%; font-weight: 600; padding: 20px 0; border-radius: 10px;}


/*** main_menu - 메인 ***/
.wrap_comm:has( .main_menu) {position: fixed; top: 170px; left: 50%; transform: translateX(-50%); z-index: 100; background-color: transparent; transition: all 0.25s;}
.wrap_comm:has( .main_menu.sticky) {top: 80px;}
.main_menu_box {height: 186px;}
.main_menu {padding: 30px; background-color: #fff;  border-radius: 30px; box-shadow: 0 0px 8px 0 rgba(0,0,0,.15);}
.main_menu.sticky {padding: 15px 30px;}
.main_menu.sticky::before {content: ''; position: absolute; top: -15%; left: -10%; width: 120%; height: 130%; background: linear-gradient(to bottom, #fff 50%, transparent);z-index: -1;}
.main_menu .tit_wrap {padding-bottom: 12px; display: flex; align-items: center; border-bottom: 1px solid #d9d9d9;}
.main_menu.sticky .tit_wrap {display: none;}
.main_menu .tit_wrap strong {font-size: 32px; font-weight: 700; margin-right: 30px;} /* custom */
.main_menu .tit_wrap .tit_link {display: inline-block; padding: 5px 20px; background-color: #fff; border: 1px solid #232323; border-radius: 5px; transition: all .25s; cursor: pointer;}
.main_menu .tit_wrap .tit_link span {cursor: inherit;}
.main_menu .tit_wrap .tit_link + .tit_link {margin-left: 15px;}
.main_menu .tit_wrap .tit_link i {display: inline-block; width: 25px; height: 25px; margin-right: 10px; }
.main_menu .tit_wrap .tit_link i.CM {background: url(../renewalimg/icon/icon_corporation.svg) no-repeat center; background-size: 25px auto;} /* 법인콘도 */
.main_menu .tit_wrap .tit_link:hover i.CM {background: url(../renewalimg/icon/icon_corporation_wh.svg) no-repeat center; background-size: 25px auto;} /* 법인콘도 hover */
.main_menu .tit_wrap .tit_link i.YL {background: url(../renewalimg/icon/icon_welfare.svg) no-repeat center; background-size: 25px auto;} /* 웰페어 */
.main_menu .tit_wrap .tit_link:hover i.YL {background: url(../renewalimg/icon/icon_welfare_wh.svg) no-repeat center; background-size: 25px auto;} /* 웰페어 hover */
.main_menu .tit_wrap .tit_link i.OF {background: url(../renewalimg/icon/icon_off-season.svg) no-repeat center; background-size: 25px auto;} /* 비수기 */
.main_menu .tit_wrap .tit_link:hover i.OF {background: url(../renewalimg/icon/icon_off-season_wh.svg) no-repeat center; background-size: 25px auto;} /* 비수기 hover */
.main_menu .tit_wrap .tit_link i.SP {background: url(../renewalimg/icon/icon_spring.svg) no-repeat center; background-size: 25px auto;} /* 봄 */
.main_menu .tit_wrap .tit_link:hover i.SP {background: url(../renewalimg/icon/icon_spring_wh.svg) no-repeat center; background-size: 25px auto;} /* 봄 hover */
.main_menu .tit_wrap .tit_link i.SU {background: url(../renewalimg/icon/icon_summer.svg) no-repeat center; background-size: 25px auto;} /* 여름 */
.main_menu .tit_wrap .tit_link:hover i.SU {background: url(../renewalimg/icon/icon_summer_wh.svg) no-repeat center; background-size: 25px auto;} /* 여름 hover */
.main_menu .tit_wrap .tit_link i.FA {background: url(../renewalimg/icon/icon_fall.svg) no-repeat center; background-size: 25px auto;} /* 가을 */
.main_menu .tit_wrap .tit_link:hover i.FA {background: url(../renewalimg/icon/icon_fall_wh.svg) no-repeat center; background-size: 25px auto;} /* 가을 hover */
.main_menu .tit_wrap .tit_link i.WI {background: url(../renewalimg/icon/icon_winter.svg) no-repeat center; background-size: 25px auto;} /* 겨울 */
.main_menu .tit_wrap .tit_link:hover i.WI {background: url(../renewalimg/icon/icon_winter_wh.svg) no-repeat center; background-size: 25px auto;} /* 겨울 hover */
.main_menu .tit_wrap .tit_link span {color: #232323; font-weight: 600; font-size: 20px; display: inline-block;}

/* .main_menu .tit_wrap .tit_link:hover span{color: #fff;} */

.main_menu .menu_wrap {display: flex; gap: 30px; padding-top: 30px;}
.main_menu.sticky .menu_wrap {padding-top: 0;}
.main_menu .menu_wrap .empty_menu {width: 100%; text-align: center; line-height: 35px;}
.main_menu .menu_wrap .custom_select + #menu_swp,
.main_menu .menu_wrap .custom_select + .empty_menu {width: calc(100% - 190px);}
#menu_swp {width: 100%; padding: 0 30px;}  
#menu_swp:has( .swiper-button-lock) {padding: 0 ;}
#menu_swp .swiper-wrapper {}  
#menu_swp .swiper-slide {width: fit-content;}
#menu_swp .swiper-slide button {height: 35px; padding: 0 20px; min-width: 150px; border-radius: 30px; font-weight: 500; transition: all .25s;}
#menu_swp .swiper-slide.active button {color: #fff; background-color: #758BAD; border-color: #758BAD;}
.tm-org #menu_swp .swiper-slide.active button {background-color: #EA7404; border-color: #EA7404;}
.tm-prp #menu_swp .swiper-slide.active button {background-color: #7D55C7; border-color: #7D55C7;}
.tm-nvy #menu_swp .swiper-slide.active button {background-color: #00205B; border-color: #00205B;}
#menu_swp .swiper-slide.active button:hover {color: #fff !important;}
#menu_swp .swiper-button-prev,
#menu_swp .swiper-button-next {background: #fff; box-shadow: 0 0 4px 3px rgba(255,255,255,.8);}
#menu_swp .swiper-button-prev {left: 0;}
#menu_swp .swiper-button-next {right: 0;}
#menu_swp .swiper-button-next:after,
#menu_swp .swiper-button-prev:after {content: ''; width: 24px; height: 24px;}
#menu_swp .swiper-button-next:after {background: url(../renewalimg/icon/icon_menu_right.svg) no-repeat center; background-size: 100% auto;}
#menu_swp .swiper-button-prev:after {background: url(../renewalimg/icon/icon_menu_left.svg) no-repeat center; background-size: 100% auto;}

/*  main goods_list */
.goods_list {margin-top: 60px;}
.goods_list .goods_tit {border-bottom: 1px solid #d9d9d9; margin-bottom: 40px; position: relative;}
.goods_list .goods_tit:after {content: ''; position: absolute; bottom: -1px; left: 0; width: 200px; height: 2px; background-color: #232323;}
.goods_list .goods_tit strong {display: inline-block; font-size: 24px; color: #666; font-weight: bold; margin-bottom: 10px;}

.goods_list .goods_wrap {display: flex; flex-wrap: wrap; flex-direction: row; gap: 30px 26px;}
.goods_list .goods_item {display: inline-block; box-sizing: border-box; width: 300px; padding: 20px 30px; border: 1px solid #f5f7f6; border-radius: 20px; box-shadow: 0 4px 10px 0 rgba(0,0,0,.15); cursor: pointer;}
.goods_list .goods_item picture {width: 240px; height: 185px; border-radius: 20px; overflow: hidden;}
.goods_list .goods_item:hover picture img {transform: scale(1.1); transition: all 0.25s;}
.goods_list .goods_item picture img {width: auto; height: 100%; object-fit: cover;}
.goods_list .goods_item .goods_info {margin-top: 20px; display: flex; flex-direction: column; gap: 10px;}
.goods_list .goods_item .goods_info .badge_wrap {display: flex; gap: 5px;}
.goods_list .goods_item .goods_info .badge_wrap span {display: inline-block; height: 24px; line-height: 24px; min-width: 40px; padding: 0 15px; text-align: center; background-color: #efe9e3; font-size: 13px; font-weight: 500; border-radius: 5px;}
.goods_list .goods_item .goods_info b {display: block; font-size: 18px; font-weight: bold; overflow: hidden; white-space: nowrap; display: block; text-overflow: ellipsis;  word-break: keep-all;}
.goods_list .goods_item .goods_info b i.type_badge {display: inline-block; margin-right: 3px; width: 23px; height: 23px; vertical-align: text-bottom;}
.goods_list .goods_item .goods_info p {font-size: 13px; color: #666; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; text-overflow: ellipsis; word-wrap: break-word; line-height: 1.5em; height: 3em;word-break: keep-all;}

.goods_list .goods_swiper {position: relative; width: 1280px; overflow: hidden; padding: 12px 13px;}
.goods_swiper .swiper-button-prev,
.goods_swiper .swiper-button-next {height: 50px; width: 50px; background-color: rgba(255,255,255,.6); border-radius: 50%; box-shadow: 0 4px 8px 0 rgba(0,0,0,.25);}
.goods_swiper .swiper-button-prev::after,
.goods_swiper .swiper-button-next::after {border-radius: 50%;}
.goods_swiper .swiper-button-prev {left: 4px;}
.goods_swiper .swiper-button-prev:after {content: ''; width: 25px; height: 25px; background: url(../renewalimg/icon/icon_slide_prev.svg) no-repeat right 3px center; background-size: auto 25px;}
.goods_swiper .swiper-button-next {right: 4px;}
.goods_swiper .swiper-button-next:after {content: ''; width: 25px; height: 25px; background:  url(../renewalimg/icon/icon_slide_next.svg) no-repeat left 3px center; background-size: auto 25px;}

/*** search list - 검색리스트 ***/
.search_result {}

.search_result_top {padding-bottom: 30px; border-bottom: 1px solid #d9d9d9;}
.search_result_top strong {display: block; color: #232323; font-size: 25px; font-weight: bold;}
.search_result_top strong span {vertical-align: 0;}

.fliter_wrap {padding: 30px 0; position: relative;}
.fliter_wrap .filter_btn {width: 150px; height: 40px; font-size: 18px; font-weight: 500; border-radius: 30px;}
.fliter_wrap .filter_btn i {display: inline-block; width: 20px; height: 20px; margin-right: 8px; background: url(../renewalimg/icon/icon_filter.svg)no-repeat center; background-size: 100% auto;}
.fliter_wrap .filter_btn:hover i {background: url(../renewalimg/icon/icon_filter_wh.svg) no-repeat center; background-size: 100% auto;}

.fliter_pop {position: absolute; top: calc(100% - 25px); left: 0; width: 320px; background-color: #fff; border: 1px solid #232323; border-radius: 5px; padding: 16px 20px; z-index: 1; opacity: 0; pointer-events: none;}
.fliter_pop.active { transition: all .25s; opacity: 1; pointer-events: all;}
.fliter_pop .pop_tit {display: flex; justify-content: space-between; padding-bottom: 10px; border-bottom: 1px solid #d9d9d9;}
.fliter_pop .pop_tit strong {font-size: 16px; font-weight: bold;}
.fliter_pop .pop_tit .close_x {width: 22px; height: 22px; background: url(../renewalimg/icon/icon_close.svg) no-repeat center; background-size: 100% auto;}
.fliter_pop .pop_cont {padding-top: 10px;}
.fliter_pop .all_select {text-align: right;}
.fliter_pop .all_select button {font-size: 13px;}
.fliter_pop .fliter_item {padding: 15px 0;}
.fliter_pop .fliter_item ul {display: flex; flex-wrap: wrap; gap: 10px; justify-content: flex-start;}
.fliter_pop .fliter_item ul li {width: calc((100% - 20px) / 3);}
.fliter_pop .fliter_item label.chk_btn {display: inline-block; border: 1px solid #d9d9d9; color: #666; border-radius: 3px; padding: 5px 0; width: 100%; 
    text-align: center; font-weight: 500; font-size: 12px; cursor: pointer; transition: all 0.25s;}
.fliter_pop .fliter_item label.chk_btn:hover {border-color: #000; color: #000;}
.fliter_pop .fliter_item label.chk_btn input[type="checkbox"] {position: absolute; left: -9999px;}
.fliter_pop .fliter_item label.chk_btn:has( input[type="checkbox"]:checked) {background-color: #000; color: #fff;}
.fliter_pop .pop_btn_wrap {display: flex; justify-content: space-between; gap: 3px;}
.fliter_pop .pop_btn_wrap button {padding: 5px 0;  border-radius: 5px;}
.fliter_pop .pop_btn_wrap button .icon.ready {display: inline-block; width: 16px;height: 16px; background: url(../renewalimg/icon/icon_refresh.svg) no-repeat center; background-size: 100% auto; margin-right: 3px;}
.fliter_pop .pop_btn_wrap button:hover .icon.ready {background: url(../renewalimg/icon/icon_refresh_c.svg) no-repeat center; background-size: 100% auto;}
.fliter_pop .pop_btn_wrap button:active .icon.ready {background: url(../renewalimg/icon/icon_refresh_wh.svg) no-repeat center; background-size: 100% auto;}

.search_result_item {padding-top: 100px; display: flex; flex-wrap: wrap; flex-direction: row; gap: 25px;}
.search_result:has( .fliter_wrap) .search_result_item {padding-top:0;}
.search_result_item .search_item {max-width: calc(50% - 50px); flex:1; display: flex; flex-direction: row; gap: 20px; padding: 20px; border-radius: 20px; box-shadow: 0 4px 10px rgba(0,0,0,0.15); border: 1px solid transparent; transition: all .25s;}
.search_result_item .search_item:hover {border-color: #232323;}
.search_result_item .search_item:last-child {margin-bottom: 0;}
.search_result_item .search_item picture {width: 270px; height: 160px; border-radius: 10px; overflow: hidden;}
.search_result_item .search_item picture img {width: 100%; height: auto; object-fit: cover;}
.search_result_item .search_item:hover picture img {transform: scale(1.1); transition: all 0.25s;}
.search_result_item .search_item .search_info {position: relative; width: calc(100% - 270px);}
.search_result_item .search_item .search_info .badge_wrap {display: flex; gap: 8px;}
.search_result_item .search_item .search_info .badge_wrap span {display: inline-block; height: 28px; line-height: 28px; min-width: 70px; padding: 0 10px; text-align: center; background-color: #efe9e3; font-size: 14px; font-weight: 600; border-radius: 5px;}
.search_result_item .search_item .search_info strong {display: block; margin: 9px 0; font-size: 20px; font-weight: bold; overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; text-overflow: ellipsis; word-wrap: break-word; line-height: 1.5em; height: 3em;}
.search_result_item .search_item .search_info strong i.type_badge {display: inline-block; margin-right: 5px; width: 25px; height: 25px; vertical-align: text-bottom;}
.search_result_item .search_item .search_info b {display: block; color: #666; font-size: 16px; font-weight: 500; margin-bottom: 5px;}
.search_result_item .search_item .search_info p {color: #666; font-size: 14px;overflow: hidden; white-space: nowrap; display: block; text-overflow: ellipsis; }


/*** board - 공지사항, 객실요금 ***/
.board_wrap {}
.board_wrap .board_top {margin-bottom: 30px; display: flex; justify-content: space-between; align-items: center;}
.board_wrap .board_top > strong {font-size: 18px; color: #232323; font-weight: 500;}
.board_wrap .board_top > strong span {vertical-align: top; color: #758BAD;} /* custom */
.board_wrap .board_top .search_box {position: relative; }
.board_wrap .board_top .search_box input[type="text"] {height: 45px; border-radius: 30px; width: 300px; padding: 0 50px 0 20px; border: 1px solid #d9d9d9; font-size: 15px; transition: all .25s;}
.board_wrap .board_top .search_box input[type="text"]:focus {border-color: #232323;}
.board_wrap .board_top .search_box input[type="text"] ~ button.search_btn {position: absolute; right: 4px; top: 50%; transform: translateY(-51%); width: 37px; height: 37px; border-radius: 50%; 
    background: #758BAD url(../renewalimg/icon/icon_search_wh.svg) no-repeat center; background-size: 23px auto;} /* custom */
.tm-org .board_wrap .board_top .search_box input[type="text"] ~ button.search_btn {border-color: transparent; background: #EA7404 url(../renewalimg/icon/icon_search_wh.svg) no-repeat center; background-size: 23px auto;}
.tm-prp .board_wrap .board_top .search_box input[type="text"] ~ button.search_btn {border-color: transparent; background: #7D55C7 url(../renewalimg/icon/icon_search_wh.svg) no-repeat center; background-size: 23px auto;}
.tm-nvy .board_wrap .board_top .search_box input[type="text"] ~ button.search_btn {border-color: transparent; background: #00205B url(../renewalimg/icon/icon_search_wh.svg) no-repeat center; background-size: 23px auto;}
.board_wrap .board_top .search_box input[type="text"] ~ button.search_btn:hover {background: #232323 url(../renewalimg/icon/icon_search_wh.svg) no-repeat center; background-size: 23px auto;}

.accodian_board {border-top: 2px solid #232323;}
.accodian_board .acco_item {border-top: 1px solid #d9d9d9;}
.accodian_board .acco_item:first-child {border-top: 0;}
.accodian_board .acco_item:last-child {border-bottom: 1px solid #d9d9d9;}
.accodian_board .acco_head {display: flex; align-items: center; padding: 15px 30px;}
.accodian_board .acco_head > strong {font-weight: 600; font-size: 20px; color: #232323; width: calc(100% - 210px); overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}
.accodian_board .acco_head .write_date {font-weight: 500; font-size: 16px; color: #666; width: 120px; text-align: center;}
.accodian_board .acco_head .btn_wrap {width: 92px; text-align: center; display: flex; align-items: center; justify-content: center; gap: 12px;}
.accodian_board .acco_head .btn_wrap .quick_down {display: block; width: 40px; height: 40px; border-radius: 3px; background: #fff url(../renewalimg/icon/icon_filedown.svg) no-repeat left 60% center; background-size: 25px auto;box-sizing: border-box;} /* custom */
.accodian_board .acco_head .btn_wrap .quick_down:hover {background: #758BAD url(../renewalimg/icon/icon_filedown_wh.svg) no-repeat left 60% center; background-size: 25px auto;; border-color: #758BAD; }
.tm-org .accodian_board .acco_head .btn_wrap .quick_down:hover {background: #EA7404 url(../renewalimg/icon/icon_filedown_wh.svg) no-repeat left 60% center; background-size: 25px auto;; border-color: #EA7404; }
.tm-nvy .accodian_board .acco_head .btn_wrap .quick_down:hover {background: #00205B url(../renewalimg/icon/icon_filedown_wh.svg) no-repeat left 60% center; background-size: 25px auto;; border-color: #7D55C7; }
.tm-prp .accodian_board .acco_head .btn_wrap .quick_down:hover {background: #7D55C7 url(../renewalimg/icon/icon_filedown_wh.svg) no-repeat left 60% center; background-size: 25px auto;; border-color: #00205B; }
.accodian_board .acco_head .btn_wrap .quick_down.no_file {background: #f5f7f6 url(../renewalimg/icon/icon_filedown.svg) no-repeat left 60% center !important; background-size: 25px auto; cursor: default;} /* 파일없음 */
.accodian_board .acco_head .btn_wrap .quick_down.no_file:hover {border-color: #d9d9d9;}

.accodian_board .acco_head .btn_wrap .accodian_btn {display: block; width: 40px; height: 40px; border-radius: 3px; border:0; background: #fff url(../renewalimg/icon/icon_accodian.svg) no-repeat center; background-size: 18px auto; box-sizing: border-box; transition: all .25s;} /* custom */
.accodian_board .acco_head .btn_wrap .accodian_btn:hover {background: url(../renewalimg/icon/icon_accodian_c.svg) no-repeat center; background-size: 18px auto;}
.accodian_board .acco_head .btn_wrap .accodian_btn:hover,
.accodian_board .acco_head .btn_wrap .accodian_btn.active {background:  #758BAD url(../renewalimg/icon/icon_accodian_wh.svg) no-repeat center; background-size: 18px auto;}
.tm-org .accodian_board .acco_head .btn_wrap .accodian_btn:hover,
.tm-org .accodian_board .acco_head .btn_wrap .accodian_btn.active {background:  #EA7404 url(../renewalimg/icon/icon_accodian_wh.svg) no-repeat center; background-size: 18px auto;}
.tm-nvy .accodian_board .acco_head .btn_wrap .accodian_btn:hover,
.tm-nvy .accodian_board .acco_head .btn_wrap .accodian_btn.active {background:  #00205B url(../renewalimg/icon/icon_accodian_wh.svg) no-repeat center; background-size: 18px auto;}
.tm-prp .accodian_board .acco_head .btn_wrap .accodian_btn:hover,
.tm-prp .accodian_board .acco_head .btn_wrap .accodian_btn.active {background:  #7D55C7 url(../renewalimg/icon/icon_accodian_wh.svg) no-repeat center; background-size: 18px auto;}

.accodian_board .acco_body {display: none; overflow: hidden;border-top: 1px solid transparent; border-left: 1px solid #d9d9d9; border-right: 1px solid #d9d9d9;}
.accodian_board .acco_body.open {display: block; border-top: 1px solid #d9d9d9;}
.accodian_board .acco_body  .file_box {padding: 20px 30px; background-color: #f5f7f6;}
.accodian_board .acco_body  .file_box a {color: #666; font-weight: 600; font-size: 16px;}
.accodian_board .acco_body  .file_box a:hover {color: #232323; text-decoration: underline;}
.accodian_board .acco_body  .file_box a i {display: inline-block; width: 18px; height: 18px; background: url(../renewalimg/icon/icon_filelink.svg)no-repeat center; background-size: 18px auto; margin-right: 5px;}
.accodian_board .acco_body  .cont_box {padding: 20px 30px; max-height: 500px; overflow-y: auto;}
.accodian_board .acco_body  .cont_box .text_wrap {white-space: pre-line; color: #666; font-size: 15px; font-weight: 500; line-height: 1.5;}
.accodian_board .acco_body  .cont_box .text_wrap *:not(div) {color: #666; font-size: 15px; font-weight: 500; line-height: 1.5; }
.accodian_board .acco_body  .cont_box .text_wrap span {vertical-align: 0;}

/*** maps - 시설지도 ***/
#container:has( .map_wrap) {margin-bottom: 0; margin-top: 150px; position: relative; overflow: hidden;}
.map_wrap {height: calc(100vh - 150px);}
.map_info_box {position: absolute; bottom: 40px; left: 50%; width: 1280px; height: 300px; border-radius: 20px; box-shadow: 0 4px 10px 0 rgba(0,0,0,0.15); transform: translate(-50%,100%); transition: transform 0.25s ease; z-index: 9999; padding: 0 20px 20px; pointer-events: none;}
.map_info_box.active {bottom: 20px; transform: translate(-50%, 0); pointer-events: auto;}
.map_info_box::before {content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; -webkit-linear-gradient(to top, transparent, #fff); background: linear-gradient(to top, transparent, #fff); border-radius: 20px; opacity: .8; backdrop-filter: blur(5px); z-index: -1;}
.map_info_box .map_info_tit p {height: 50px; line-height: 50px; text-align: center; font-size: 16px; font-weight: 600; color: #000; letter-spacing: normal;}
.map_info_box .map_info_tit p i {display: inline-block; width: 20px; height: 30px; margin-right: 2px; vertical-align: -4px; background: url(../renewalimg/icon/icon_map_marker.png) no-repeat center; background-size: auto 30px; vertical-align: -7px;}
#map_swp .swiper-slide {pointer-events: none;}
#map_swp .swiper-slide.swiper-slide-active {pointer-events: inherit;}
#map_swp .map_info picture {width: 100%; height: 230px; overflow: hidden; border-radius: 10px;}
#map_swp .map_info picture::before {content: ''; position: absolute; top:0; left: 0; width: 100%; height: 100%; border-radius: 10px; background: -webkit-linear-gradient(to bottom, transparent 40%, #232526); background: linear-gradient(to bottom, transparent 40%, #232526);}
#map_swp .map_info picture img {width: 100%; height: 100%; object-fit: cover;}
#map_swp .map_info .map_txt {position: absolute; bottom: 0; left: 0; width: 100%; padding: 15px;}
#map_swp .map_info .map_txt strong i.type_badge {display: inline-block; margin-right: 3px; width: 23px; height: 23px; vertical-align: text-bottom;}
#map_swp .map_info .map_txt strong {color: #fff; font-size: 20px; font-weight: 600; overflow: hidden; white-space: nowrap; display: block; text-overflow: ellipsis;}
#map_swp .map_info .map_txt p {color: #fff; font-size: 15px; overflow: hidden; white-space: nowrap; display: block; text-overflow: ellipsis;}
#map_swp .swiper-button-prev,
#map_swp .swiper-button-next {height: 40px; width: 40px; background-color: rgba(255,255,255,.5);}
#map_swp .swiper-button-prev::after,
#map_swp .swiper-button-next::after {border-radius: 50%;}
#map_swp .swiper-button-prev {left: 0; border-radius: 0 15px 15px 0;}
#map_swp .swiper-button-prev:after {content: ''; width: 22px; height: 22px; background: url(../renewalimg/icon/icon_slide_prev.svg) no-repeat right 1px center; background-size: auto 22px;}
#map_swp .swiper-button-next {right: 0; border-radius: 15px 0 0 15px;}
#map_swp .swiper-button-next:after {content: ''; width: 22px; height: 22px; background:  url(../renewalimg/icon/icon_slide_next.svg) no-repeat left 2px center; background-size: auto 22px;}


/*** privacy - 개인정보 처리방침 ***/
.privacy_wrap {border-top: 2px solid #232323;}
.privacy_box {margin-top: 30px;}
.privacy_box .privacy_tit {height: 50px; padding: 0 40px; background-color: #f5f7f6;}
.privacy_box .privacy_tit strong {line-height: 50px; font-size: 18px; font-weight: 500;}
.privacy_box .privacy_txt {padding: 30px 40px;}
.privacy_box .privacy_txt p {color: #666; font-size: 15px; white-space: pre-line;}
.privacy_box table {border-collapse: collapse; width: 100%;}
.privacy_box table tr {height: 55px;}
.privacy_box table th {border-top: 2px solid #232323; border-bottom: 1px solid #232323; color: #232323; text-align: center; font-size: 18px;}
.privacy_box table td {text-align: center; font-size: 16px; color: #666; border-bottom: 1px solid #d9d9d9;}
.privacy_box table td.bd-b {border-color: #232323;}
.privacy_box table td {font-size: 15px; color: #666; }


/*** mypage - 예약확인, 마이페이지 ***/

.point_wrap {display: flex; gap: 20px; justify-content: center;}
.point_wrap .point_box {border: 1px solid #d9d9d9; height: 65px; line-height: 65px; padding: 0 20px; min-width: 200px; font-size: 18px; border-radius: 5px; text-align: center;}
.point_wrap .point_box.grant {}
.point_wrap .point_box.penalty {color: #E74C3C;}
.point_wrap .point_box.residue {color: #138A36;}

.mypage_wrap {margin-top: 50px;}
.mypage_tab {}
.mypage_tab ul {display: flex; flex-direction: row; border-bottom: 1px solid #d9d9d9;}
.mypage_tab ul li {position: relative; width: 100%;}
.mypage_tab ul li.active:before {content: ''; position: absolute; bottom: -1px; left: 0; width: 100%; height: 2px; background-color: #232323;}
.mypage_tab ul li a {display: inline-block; width: 100%; height: 70px; line-height: 70px; color: #666; font-weight: 700; font-size: 20px; text-align: center;}
.mypage_tab ul li.active a,
.mypage_tab ul li:hover a {color: #232323;}

.mypage_cont {}
.mypage_cont > div {display: none;}
.mypage_cont > div.active {display: block; background-color: #fff;}
.mypage_cont table {margin-top: 50px; table-layout: auto;}
.mypage_cont table tr {height: 60px;}
.mypage_cont table tr th,
.mypage_cont table tr td {text-align: center; padding: 3px;}
.mypage_cont table tr th {border-top: 1px solid #232323; background-color: #f5f7f6; font-weight: 600; font-size: 16px;}
.mypage_cont table tr td {height: 60px; border-bottom: 1px solid #d9d9d9;}
.mypage_cont table tr td > button {padding: 5px 8px; border-radius: 5px; width: 80px;}
.mypage_cont table tr td > button:has( > i) {width: 40px; min-width: initial;}
.mypage_cont table tr td > button .icon {display: inline-block; width: 23px; height: 23px;}
.mypage_cont table tr td > button .icon.print {background: url(../renewalimg/icon/icon_winter.svg) no-repeat center;}
.mypage_cont table tr td > button:hover .icon.print {background: url(../renewalimg/icon/icon_winter_wh.svg) no-repeat center;}
.mypage_cont table tr td button {padding: 5px; border-radius: 5px; margin: 0 auto; font-weight: 500; font-size: 14px;}

.mypage_cont table tr td button.disabled {cursor: not-allowed; background-color: #f5f7f6 !important; border: 1px solid #d9d9d9 !important; color: #666 !important;}
.mypage_cont table tr td button.disabled:hover {background-color: #f5f7f6 !important; color: #666 !important; border-color: transparent;}

.mypage_cont table tr td .btn_line {border: 1px solid #d9d9d9; background-color: #f5f7f6; color: #666; cursor: default;}
.mypage_cont .mypage_item .btn_line:hover {background-color: inherit !important; color: inherit !important; cursor: default;}

.mypage_cont table tr td .btn_cancel {background-color: #666; border: 0; color: #fff;}
.mypage_cont table tr td .btn_cancel:hover {border: 0; background-color: #232323;}
.mypage_cont table tr td .btn_bg.tp1 {background-color: rgba(235, 90, 60, 0.7);  border: 0; color: #fff;}
.mypage_cont table tr td .btn_bg.tp1:hover {border: 0; background-color: rgba(235, 90, 60,1);}
.mypage_cont table tr td .btn_bg.tp2 {background-color: rgba(177,148,112,.7);  border: 0; color: #fff;}
.mypage_cont table tr td .btn_bg.tp2:hover {border: 0; background-color: rgba(177,148,112,1);}
.mypage_cont table tr td .btn_wrap {display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 5px;}
.mypage_cont table tr td .btn_wrap button {width: calc(50% - 5px);}

.mypage_cont table select {background: #f5f7f6 url(../renewalimg/icon/icon_select_arr.svg) no-repeat right 10px center; background-size: 21px auto; color: #232323; font-weight: 500; font-size: 16px; height: 40px; width: 100%; padding: 8px 10px; border: 0; border-radius: 5px;}
.mypage_cont table select:disabled {background-color: rgba(217, 217, 217, 0.7) !important;}

.mypage_cont table .common_wrap:has( >.input_table) {padding: 0;}
.mypage_cont table td.prize_td.active .common_wrap:has( >.input_table) {padding: 0 30px 20px;}
.mypage_cont table .common_wrap > .common_tit {text-align: left;}
.mypage_cont table .input_table {width: auto;}
.mypage_cont table .input_table th {border-top: 0; background: none;}
.mypage_cont table .input_table th.sub_tit {background-color: #f5f7f6; text-align: center; font-size: 18px;}
.mypage_cont table .input_table td {text-align: left;}
.mypage_cont table .input_table + .btn_wrap {display: flex; gap: 40px; justify-content: center; margin-top: 30px;}
.mypage_cont table .input_table + .btn_wrap button {width: 300px;padding: 12px; border-radius: 5px; font-size: 18px; font-weight: 500;}

.mypage_cont tr:has( td.prize_write) {height: 0;}
.mypage_cont td.prize_write {padding: 0; height: 0; border-bottom: 0;}
.mypage_cont td.prize_write > div {display: none; overflow: hidden;}
.mypage_cont td.prize_write.active > div {display: block;}


/*** acceptList - 접수/신청현황 + 대기현황 ***/
.inquiry_box select {height: 45px; min-width: 100px; width: fit-content; padding: 0 25px 0 10px; border: 1px solid #d9d9d9; border-radius: 5px; font-size: 16px; background-size: 15px auto; margin-right: 5px;}
.inquiry_box button {height: 45px; width: fit-content; padding: 0 20px; border-radius: 5px; display: inline-block; font-size:16px; font-weight: 500;}
.inquiry_box.only_btn {text-align: center; margin-bottom: 30px;}
.inquiry_box.only_btn button {width: 150px;}
.inquiry_box + .table_wrap {margin-top: 30px;}

.legend_box {width: fit-content; margin-left: auto;}
.legend_box ul {display: flex; gap: 20px;}
.legend_box ul li {font-size: 16px; font-weight: 500;}
.legend_box ul li span.chip {display: inline-block; height: 15px; width: 15px; border-radius: 5px; margin-right: 5px; vertical-align: -2px;}
.legend_box ul li .chip.bg_blue {background: #3f88c5;}
.legend_box ul li .chip.bg_red {background: #E74C3C;}
.legend_box ul li .chip.bg_pink {background: #ffdcdc; border: 1px solid#d9d9d9;}

/* fixed 필요시에만 사용할 것 */
.table_wrap {width: 100%; max-height: 650px; overflow: auto; position: relative; margin-top: 10px;}
.table_wrap .fixed_table {width: max-content; background-color: #fff; border-collapse: separate; border-spacing: 0; 
    -webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}
.table_wrap .fixed_table th,
.table_wrap .fixed_table td {min-width: 50px; width: fit-content; padding: 5px 10px; background-color: #fff;}
.table_wrap.is-y .fixed_table thead {position: sticky; top: 0; z-index: 3;} /* thead 고정 */
.table_wrap.is-x .fixed_table tbody th {position: sticky; left: 0; z-index: 2;} /* tbody th 고정 */
.table_wrap.is-x .fixed_table thead tr:first-child th:first-child,
.table_wrap.is-x.is-y .fixed_table thead tr:first-child th:first-child {position: sticky;  top: 0;  left: 0;  z-index: 4;}

.table_wrap .fixed_table thead th,
.table_wrap .fixed_table tbody th {background-color: #f5f7f6; font-weight: 500; font-size: 16px;}
.table_wrap .fixed_table tbody th {font-size: 15px; border-bottom: 1px solid #d9d9d9; text-align: left;}
.table_wrap .fixed_table tbody td {background-color: #fff; font-size: 15px; text-align: center; border-bottom: 1px solid #d9d9d9; font-weight: 500;}
.table_wrap .fixed_table tbody tr:hover th,
.table_wrap .fixed_table tbody tr:hover td {background-color: #f7ece2;}

.status_wrap .fixed_table tr th,
.status_wrap .fixed_table tr td {font-size: 14px; line-height: 2.6;}


/*** detail - 시설 상세 ***/
#container.detail {margin: 230px 0 100px}
.detail_top {display: flex; flex-wrap: wrap; gap: 50px; margin-bottom: 50px;}
#detail_swp {width: calc(50% - 25px); height: 345px; border-radius: 20px; overflow: hidden;}
#detail_swp picture {width: 100%; height: 100%; overflow: hidden;}
#detail_swp picture img {height: 100%; width: stretch; object-fit: cover;}
#detail_swp .swiper-button-next,
#detail_swp .swiper-button-prev {opacity: 0; pointer-events: none; transition: all ease .3s;}
#detail_swp:hover .swiper-button-next,
#detail_swp:hover .swiper-button-prev {opacity: 1; pointer-events: all;}
#detail_swp .swiper-button-next {right:0; width: 35px; border-radius: 5px 0 0 5px; overflow: hidden;}
#detail_swp .swiper-button-prev {left: 0; width: 35px; border-radius: 0 5px 5px 0; overflow: hidden;}
#detail_swp .swiper-button-next::after,
#detail_swp .swiper-button-prev::after {content: ''; height: 50px; width: 50px;}
#detail_swp .swiper-button-next::after {background: rgba(0,0,0,.5) url(../renewalimg/icon/icon_slide_next_wh.svg) no-repeat center; background-size: 25px 100%;}
#detail_swp .swiper-button-prev::after {background: rgba(0,0,0,.5)  url(../renewalimg/icon/icon_slide_prev_wh.svg) no-repeat center; background-size: 25px 100%;}

.detail_top .detail_info {width: calc(50% - 25px);}
.detail_top .detail_info strong {font-size: 36px; font-weight: bold;}
.detail_top .detail_info table {margin-top: 30px; table-layout: auto;}
.detail_top .detail_info table td,
.detail_top .detail_info table th {padding: 5px;}
.detail_top .detail_info table td {color: #666;}
.detail_top .detail_info table td a {overflow: hidden; white-space: nowrap; display: block; text-overflow: ellipsis; max-width: 400px;}

.detail_top .common_notice {width: 100%; margin-top: 0;}

.detail_tit  {border-bottom: 1px solid #d9d9d9; position: relative; margin-bottom: 30px; display: flex; align-items: center;}
.detail_tit:has( + .common_wrap .narrow) {margin-bottom: 0;}
.detail_tit:before {content: ''; position: absolute; bottom: -1px; left: 0; height: 2px; width: 33%; background-color: #232323;}
.detail_tit  strong {display: inline-block; font-size: 26px; font-weight: bold; padding: 15px 5px;}

.detail_choice_box {}
.detail_choice_box div {padding: 15px 50px; border-radius: 15px;}
.detail_choice_box div.Cbtn_bg {display: flex; align-items: center; gap: 20px;}
.detail_choice_box div.Cbtn_bg .detail_deco {font-size: 16px; color: #fff; width: fit-content; width: 150px; height: 38px; padding: 5px; text-align: center; background: #232323; border-radius: 30px; font-weight: 500;}
.detail_choice_box div.Cbtn_bg .detail_deco i {display: inline-block; width: 20px; height: 20px; margin-right: 3px;}
.detail_choice_box div.Cbtn_bg .detail_deco i.icon {background: url(../renewalimg/icon/icon_accodian_wh.svg) no-repeat center; background-size: 14px auto;}
.detail_choice_box div.Cbtn_bg b {display: inline-block;  font-size: 23px; font-weight: bold;}

.detail_choice_box:has( button.Cbtn_bg) {display: flex; flex-wrap: wrap; align-items: center; gap: 20px;}
.detail_choice_box button {width: calc(25% - 15px); padding: 12px 10px; border-radius: 10px; font-size: 18px; font-weight: 600; letter-spacing: 0;}
.detail_choice_box button.Cbtn_bg {}

.detail_tab {margin-top: 50px; border-bottom: 1px solid #d9d9d9; position: sticky; top: 71px; left: 0; width: 1280px; height: fit-content; background-color: #fff; z-index: 10;}
.detail_tab ul {display: flex; justify-content: space-between;}
.detail_tab ul li {flex: 1;}
.detail_tab ul li a {position: relative; display: inline-block; width: 100%; text-align: center; padding: 15px 5px; font-weight:  bold; font-size: 24px; transition: all .25s;}
.detail_tab ul li a:hover:before,
.detail_tab ul li a.active:before {content: ''; position: absolute; bottom: -1px; left: 0; height: 2px; width: 100%; background-color: #232323; z-index: 1;}

.detail_tab_box > div + div {margin-top: 70px;}
.detail_tab_box .img_cont {padding: 20px; margin-bottom: 50px;}
.detail_tab_box .img_cont img {max-width: 100%; height: auto;}
.detail .txt_cont {padding: 0 10px;}
.detail .txt_cont:first-child {margin-top: 50px;}
.detail .txt_cont + .txt_cont {margin-top: 40px;}
.detail .txt_cont strong {color: #232323; font-size: 22px; font-weight: bold;}
.detail .txt_cont > strong + div {color: #666; margin-top: 15px; line-height: 1.6; word-break: keep-all; font-size: 16px !important;}
.detail .dis_f:has( .table_cont) {gap: 50px; align-items: flex-start;}
.detail .table_cont {flex: 0 0 auto; min-height: 0;}
.detail .table_cont th,
.detail .table_cont td {padding: 8px 0; text-align: left; vertical-align: top;}
.detail .table_cont td {color: #666;}
.detail .table_cont .scroll_tr {height: 100%;}
.detail .table_cont .scroll_tr p {height: 100%;}

#mapContainer {z-index: 0; flex: 1;}

#tourlist_swp {padding: 0 35px;}
#tourlist_swp .swiper-slide {overflow: hidden; margin-top: 20px;}
#tourlist_swp .swiper-slide picture {width: 100%; height: 340px; border-radius: 20px; overflow: hidden;}
#tourlist_swp .swiper-slide picture img {width: 100%; object-fit: cover; margin: 0;}
#tourlist_swp .swiper-slide .tourlist_cont {margin-top: 20px;}
#tourlist_swp .swiper-slide .tourlist_cont strong {font-size: 32px; display: block;}
#tourlist_swp .swiper-slide .tourlist_cont table th,
#tourlist_swp .swiper-slide .tourlist_cont table td {padding: 8px 0;}
#tourlist_swp .swiper-slide .tourlist_cont table td {color: #666;}
#tourlist_swp .swiper-slide .tourlist_cont table td a {overflow: hidden; white-space: nowrap; display: block; text-overflow: ellipsis; max-width: 400px; color: #666;}
#tourlist_swp .swiper-slide .tourlist_cont table td p {white-space: inherit;}
#tourlist_swp .swiper-button-next,
#tourlist_swp .swiper-button-prev {top: 195px; transition: all ease .3s;}
#tourlist_swp .swiper-button-next {right:0; width: 35px; border-radius: 5px 0 0 5px; overflow: hidden;}
#tourlist_swp .swiper-button-prev {left: 0; width: 35px; border-radius: 0 5px 5px 0; overflow: hidden;}
#tourlist_swp .swiper-button-next::after,
#tourlist_swp .swiper-button-prev::after {content: ''; height: 50px; width: 50px; opacity: 0.4;}
#tourlist_swp .swiper-button-next::after {background: url(../renewalimg/icon/icon_slide_next.svg) no-repeat center; background-size: 25px 100%;}
#tourlist_swp .swiper-button-prev::after {background: url(../renewalimg/icon/icon_slide_prev.svg) no-repeat center; background-size: 25px 100%;}

/* calendar */
.calendar {display: flex; gap: 30px; margin-top: 40px; overflow: visible; position: relative;}
.calendar .calendar_wrap {width: 63%; position: sticky; top: 75px; z-index: 1; align-self: flex-start;}
.calendar .info_wrap {width: 100%;}
.calendar .calendar_wrap + .info_wrap {width: 37%;}

.calendar_box {display: flex; gap: 30px; position: relative;}
.calendar_box .loading_cover {opacity: 1; position: absolute; top: 0; left: 0; width: 101%; height: 100%; z-index: 10; overflow: hidden; background: #f5f7f6;}
.calendar_box .loading_cover::after {content: ''; position: absolute; top: 0; left: -150%; width: 150%; height: 100%; background: linear-gradient(90deg, rgba(255,255,255,0) 10%,rgba(255,255,255,0.6) 50%, rgba(255,255,255,0) 100%);animation: loadingShimmer 1.6s infinite;}
.calendar_box .loading_cover.hide {opacity: 0; pointer-events: none; transition: all ease-in .25s;}
.calendar_box .loading_cover.hide:after {content: none;}
@keyframes loadingShimmer {
  100% {left: 100%;}
}
.calendar_box .cal_cont {width: calc(50% - 15px);}
.calendar_box .cal_cont strong {margin-bottom: 20px; display: block; text-align: center; font-weight: 700; font-size: 20px;}
.calendar_box .cal_item {min-height: 392px; min-width: 386px;}
.calendar_box .cal_item table {border-collapse: separate;}
.calendar_box .cal_item table th,
.calendar_box .cal_item table td {box-sizing: border-box; padding: 3px;}
.calendar_box .cal_item table th {height: 50px; width: 50px;}
.calendar_box .cal_item table td a {display: flex; align-items: center; justify-content: start; flex-direction: column; padding-top: 3px; width: 50px; height: 50px; border: 1px solid transparent; box-sizing: border-box; cursor: pointer;}
.calendar_box .cal_item table td:not(.open) a {cursor: default;}
.calendar_box .cal_item table td a b {display: block; text-align: center; font-weight: 800; color: #666;}
.calendar_box .cal_item table td a span {display: block; font-size: 12.5px; font-weight: bold;color: #666;}
.calendar_box .cal_item table td a span.ready,
.calendar_box .cal_item table td a span.wait {color: #999;}
.calendar_box .cal_item table td a:has( span.wait) {background-color: #f5f7f6;}
.calendar_box .cal_item table td a em {display: inline-block; font-weight: bold;}

.calendar_box .cal_item table td.open a {background-color: #e8fdde;}
.calendar_box .cal_item table td.open a:has( .wait),
.calendar_box .cal_item table td.c_expact a,
.calendar_box .cal_item table td.open.c_expact a {background-color: #ffdcdc !important;}
.calendar_box .cal_item table td.open:hover a,
.calendar_box .cal_item table td.selday a {border-color: #232323; transition: all .3s;}

.cal_arrow {position: absolute; top: 15px; left: 0; width: 100%; height: 30px; transform: translateY(-50%); display: flex; justify-content: space-between; align-items: center; padding: 0 10px;}
.cal_arrow a.cal_left,
.cal_arrow a.cal_right {display: block; width: 20px; height: 100%;}
.cal_arrow a.cal_left {background: url(../renewalimg/icon/icon_slide_prev.svg) no-repeat center; background-size: 22px auto;}
.cal_arrow a.cal_right {background: url(../renewalimg/icon/icon_slide_next.svg) no-repeat center; background-size: 22px auto;}

.calendar .btn_wrap {display: flex; gap: 40px; justify-content: center; margin-top: 20px;}
.calendar .btn_wrap button {width: 100%;padding: 12px; border-radius: 5px; font-size: 18px; font-weight: 500;}

.calendar .input_table .privacy_td_btn {border: 0; margin-left: 10px; font-size: 15px;}
.calendar .input_table .privacy_td_btn i.accodian {width: 20px; height: 20px; display: inline-block; background: url(../renewalimg/icon/icon_accodian_c.svg) no-repeat center; background-size: 12px auto; margin-left: 3px;}
.calendar .input_table .privacy_td_btn:hover {background-color: transparent; color: #232323; font-weight: bold;}
.calendar .input_table .privacy_td {padding-bottom: 0 !important; border-bottom: 0 !important;}
.calendar .input_table .privacy_td.active {border-bottom: 1px solid #d9d9d9 !important;}
.calendar .input_table .privacy_td_inner {display: none; overflow: hidden;}
.calendar .input_table .privacy_td.active .privacy_td_inner {display: block;}

.calendar .input_table + .btn_wrap button {width: 300px;}