@charset 'utf-8';

/** common */
*, :after, :before {
    -webkit-box-sizing:border-box;
    -moz-box-sizing:border-box;
    box-sizing:border-box;
}
* {
	font-family: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;

	-webkit-tap-highlight-color:  rgba(255, 255, 255, 0); 
}
a {
	-webkit-touch-callout: none;
    -webkit-user-select:none;
    user-select:none;
    -webkit-tap-highlight-color:rgba(255,255,255,0);
    cursor:pointer;
}
body {
	background: #FAFAFA; 
	-webkit-text-size-adjust: none; 
}
button {
	display: flex; justify-content: center; align-items: center; width: 100%; height: 52px; border-radius: 10px; color: #000;
    -webkit-user-select:none;
    user-select:none;
}
button:disabled {background: #F5F5F5; color: #DDD; cursor: not-allowed;}
img {
	max-width: 100%; height: auto; vertical-align: middle; 
	
	/* translate blurry solve */
	-webkit-backface-visibility: hidden; 
    -ms-transform: translateZ(0); /* IE 9 */
    -webkit-transform: translateZ(0); /* Chrome, Safari, Opera */
    transform: translateZ(0);

	image-rendering: optimizeSpeed;             /*                     */
	image-rendering: -moz-crisp-edges;          /* Firefox             */
	image-rendering: -o-crisp-edges;            /* Opera               */
	image-rendering: -webkit-optimize-contrast; /* Chrome (and Safari) */
	image-rendering: optimize-contrast;         /* CSS3 Proposed       */
	-ms-interpolation-mode: nearest-neighbor;   /* IE8+                */

	filter: blur(0);
	-webkit-filter: blur(0);
}
img[src=""] {display: none; }
select {background: none; outline: none; -webkit-outline: none; appearance: none; -webkit-appearance: none; }

.relative {position: relative; }
.inner {padding-left: 20px; padding-right: 20px; }
.layout {width: 100%; max-width: 768px; margin: 0 auto; }
.form_layout {width: 100%; max-width: 380px; margin: 0 auto; }
.alert_layout {width: 100%; max-width: 350px; margin: 0 auto; }
.confirm_layout {width: 100%; max-width: 480px; margin: 0 auto; }

.is_main_header:before {display: block; clear: both; content: ''; padding-top: 90px; }
.is_bottom_tab:after {display: block; clear: both; content: ''; padding-bottom: 77px; }

.req {position: relative;}
.req:after {display: block; clear: both; content: ''; position: absolute; top: 0; left: 100%; width: 4px; height: 4px; margin-left: 3px; border-radius: 1px; background: #FD5858; }

.overlay {width: 100%; height: 100%; background: rgba(0,0,0,0.5)}

.grabbing {
	user-select: none; 
	-webkit-user-select: none;
    cursor: grabbing;
    cursor: -moz-grabbing;
    cursor: -webkit-grabbing;
}

.grabbing:active {
	user-select: none; 
	-webkit-user-select: none;
    cursor: grabbing;
    cursor: -moz-grabbing;
    cursor: -webkit-grabbing;
}

.click_disabled {pointer-events: none;}


/** form - common */
form fieldset {display: flex; flex-direction: column; gap: 40px; }
.field_content {display: flex; justify-content: space-between; gap: 10px; }
.field_content > div {flex: 1; }
.field_content button, .field_content .btn {display: flex; width: 95px; height: 48px; border-radius: 10px; border: 1px solid #000; font-size: 16px; overflow: hidden; cursor: pointer}

.field_group {display: flex; flex-direction: column; gap: 10px;}


/** input - common */
input:read-only {cursor: default;}
input[type="checkbox"] {position: absolute; top: 50%; left: 50%; width: 1px; height: 1px; margin: -1px; border: 0; overflow: hidden; clip: rect(0, 0, 0, 0); outline: none;}
input[type="radio"]:checked:before {display: none; }

.field_subject {display: flex; align-items: baseline; gap: 8px; margin-bottom: 10px; }
.field_subject > * {font-size: 14px; font-weight: bold;}
.field_subject .sub {color: #FD5858; font-size: 12px; font-weight: 500;}
.field_wrap {position: relative; }
.field_text {display: flex; align-items: center; position: relative; height: 48px; border-radius: 10px; overflow: hidden;}
.field_text input:not([type="hidden"]) {display: block; width: 100%; height: 100%; background: #F8F8F8; font-size: 16px; font-weight: 600;}
.field_text input::placeholder {font-weight: 400;}

.field_textarea {display: flex; align-items: center; position: relative; border-radius: 10px; overflow: hidden;}
.field_textarea textarea {display: block; width: 100%; height: 190px; padding: 15px 20px; background: #F8F8F8; font-size: 16px; font-weight: 600; resize: none; }
.field_textarea textarea::placeholder {color: #B6B7B8; font-weight: 400;}
.field_text.fake {padding: 0 20px; background: #F8F8F8; }
.field_text.fake span {text-overflow: hidden; }


.field_text .countdown {position: absolute; top: 50%; right: 20px; transform: translate(0, -50%); color: #FD5858; font-size: 12px; font-weight: 600;}

.valid_msg {display: block; position: absolute; top: 100%; left: 0; margin-top: 5px; font-size: 12px; }
.valid_msg.done {color: #62B23F; }
.valid_msg.warn {color: #FD5858; }

.caution_text {color: #FD5858; font-size: 12px; font-weight: 500;}



/** select */
.select_wrap {position: relative; width: 138px; }
.select_wrap .sel_label {display: flex; align-items: center; gap: 15px; height: 50px; padding: 0 20px; border: 1px solid #000; border-radius: 25px; font-size: 15px; font-weight: 600; cursor: pointer; user-select: none; -webkit-user-select: none; }
.select_wrap .sel_arrow {position: absolute; top: 50%; right: 20px; transform: translate(0, -50%) rotate(0deg); width: 10px; height: 6px; background: url('/image/web/icon_sel_arrow@2x.png') no-repeat center / 12px 8px; }
.select_wrap .select_ul {display: none; position: absolute; top: 100%; left: 0; width: 100%; z-index: 100;}
.select_wrap .select_ul li {position: relative; padding: 0 10px; font-size: 15px; font-weight: 600; cursor: pointer; }
.select_wrap .select_ul li span {display: block; position: relative; padding: 12px 10px;}
.select_wrap.active .select_ul {display: block; }
.select_wrap.active.bottom .select_ul {top: auto; bottom: 100%; }

.sel_type_sfl {width: 138px;}
.sel_type_sfl .select_ul {margin-top: 10px; }
.sel_type_sfl .select_ul li {margin-bottom: -1px; border: 1px solid #000; border-top-color: transparent; border-bottom-color: transparent; background: #FFF; }
.sel_type_sfl .select_ul li span {margin-bottom: -1px; }
.sel_type_sfl .select_ul li span:after {display: block; clear: both; content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; background: #C5C5C6; z-index: 1; }

.sel_type_sfl .select_ul li:first-child {border-top-color: #000; border-top-left-radius: 20px; border-top-right-radius: 20px;}
.sel_type_sfl .select_ul li:last-child {border-bottom-color: #000; border-bottom-left-radius: 20px; border-bottom-right-radius: 20px; margin-bottom: 0; }
.sel_type_sfl .select_ul li:last-child span:after {display: none;}

.sel_type1 {width: auto; }
.sel_type1 .sel_label {height: 48px; border: none; border-radius: 10px; background: #F8F8F8; font-size: 16px; }
.sel_type1 .select_ul {border-radius: 10px; background: #F8F8F8; max-height: 300px; overflow: auto;}
.sel_type1 .select_ul li {font-size: 16px; }


/** sch_wrap */
.sch_wrap {}
.sch_wrap .keword_wrap {display: flex; align-items: center; gap: 10px; }

.sch_wrap .select_wrap .select_ul {width: 100%; }

.sch_wrap .sel_loc_wrap {width: 138px;}
.sch_wrap .sel_loc_wrap .sel_loc_text {height: 50px; border: 1px solid #000; border-radius: 25px; background: #FFF; overflow: hidden;}

.sch_wrap .stx_wrap {flex: 1; display: flex; align-items: center; height: 50px; padding: 0 20px; border: 1px solid #000; border-radius: 25px; overflow: hidden;}
.sch_wrap .input_wrap {flex: 1; height: 100%;}
.sch_wrap .input_wrap input {width: 100%; height: inherit; font-size: 15px; }
.sch_wrap .sch_submit {width: 32px; height: 32px; margin-right: -5px; background: url('/image/web/icon_sch@2x.png') no-repeat center / 28px 28px; font-size: 0; }



/** button - common */
.button_wrap {display: flex; align-items: center; gap: 10px;}
.btn {display: flex; justify-content: center; align-items: center; height: 52px; font-size: 17px; }
.btn_border {border: 1px solid #000; }
.btn_submit {background: #E50019; color: #FFF; font-size: 17px; font-weight: bold;}
.btn_close {width: 20px; height: 20px; background: url('/image/web/btn_close@2x.png') no-repeat center/contain;}
.btn_close_w {width: 18px; height: 18px; background: url('/image/web/btn_close_w@2x.png') no-repeat center/contain;}

.btn_small {border: 1px solid #E50019; height: 40px; color: #E50019; font-size: 15px; font-weight: bold; }

.more_button_wrap {display: none; padding: 40px 0 20px; }
.more_button_wrap button {border: 1px solid #000; font-size: 15px; font-weight: bold;}

.file_hidden {display: none; }

.field_img_group {display: flex; align-items: center; gap: 10px; }
.field_img_group .img_area {display: flex; align-items: center; gap: 10px; }
.field_img_group .img_area .preview_img {position: relative;}
.field_img_group .img_area .preview_img .btn_img_del {position: absolute; top: 0; right: 0; width: 20px; height: 20px; border-radius: 0; background: url('/image/web/btn_close_w@2x.png') no-repeat center / 16px 16px, #000; z-index: 10;}
.field_img_group .img_area .preview_img .img_div {width: 100px; height: 100px; border-radius: 8px; overflow: hidden;}
.field_img_group .img_area .preview_img .img_div img {width: 100%; height: 100%; object-fit: cover; }
.field_img_group .img_del_area {display: none;}

.btn_add_img {display: flex; justify-content: center; align-items: center;  width: 100px; height: 100px; border-radius: 8px; border: 1px solid #DDDDDD; cursor: pointer;}
.btn_add_img i {display: block; width: 24px; height: 24px; margin: 0 auto; background: url('/image/web/icon_add_img@2x.png') no-repeat center / 24px 24px; }
.btn_add_img .text {margin-top: 3px; font-size: 15px; font-weight: 500; }

.float_submit {height: 52px;}
/* .float_submit:before {display: block; clear: both; content: ''; height: 52px; } */
.float_submit button, .float_submit a {position: fixed; bottom: 0; /* left: 50%; transform: translateX(calc((-100% - 1px) / 2)); */ width: 100%; height: inherit; border-radius: 0; z-index: 100;}



/** sns - common */
.sns_button {display: flex; justify-content: center; align-items: center; border-radius: 10px; }
.sns_button i {display: block; width: 20px; height: 20px; margin-right: 10px;}
.sns_button span {font-size: 16px; font-weight: bold; }
.naver_login {background: #03CF5D; color: #FFF; }
.naver_login i {background: url('/image/web/sns_naver_logo@2x.png') no-repeat center /contain;}
.kakao_login {background: #FFE812; color: #3C1E1E; }
.kakao_login i {background: url('/image/web/sns_kakao_logo@2x.png') no-repeat center /contain;}

.sns_badge_wrap {display: flex; gap: 10px; }
.sns_badge_wrap .sns_button {width: 160px; height: 48px; cursor: default; user-select: none; -webkit-user-select: none; }



/** gall list - common */
#gall_ul {display: flex; flex-wrap: wrap; gap: 0 20px; margin-top: 30px; }
#gall_ul > li {width: calc((100% - 20px) / 2); margin-bottom: 40px; }
#gall_ul > li a {display: block; }
#gall_ul > li .thumb {display: block; position: relative; border-radius: 10px; overflow: hidden;}
#gall_ul > li .thumb:before {display: block; clear: both; content: ''; padding-bottom: calc((226 / 354) * 100%);}
#gall_ul > li .thumb img {position: absolute; top: 50%; left: 50%; transform: translateX(-50%) translateY(-50%); width: 100%; height: 100%; object-fit: cover; }
#gall_ul > li .tour_top_info {display: flex; justify-content: space-between; align-items: center; padding: 10px 0; }
#gall_ul > li .tour_top_info .created_at {color: #999; font-size: 12px; font-weight: 500; }
#gall_ul > li .mb_info {flex: 1; display: flex; align-items: center; gap: 10px; }
#gall_ul > li .mb_info .profile {width: 35px; height: 35px; border-radius: 35px; overflow: hidden; }
#gall_ul > li .mb_info .profile img {width: 100%; height: 100%; object-fit: cover; }
#gall_ul > li .mb_info .nick {font-size: 14px; font-weight: bold; }
#gall_ul > li .tour_gall_info .subj {line-height: 1.3em; font-size: 16px; font-weight: bold; }
#gall_ul > li .tour_gall_info .desc {
	line-height: 1.3em; margin-top: 5px; color: #666; font-size: 14px; font-weight: 500; 
	display: -webkit-box; text-overflow: ellipsis; overflow: hidden; white-space: normal; word-wrap: break-word; word-break: normal;
    -webkit-line-clamp: 2; /* 라인수 */
    -webkit-box-orient: vertical;
}

#gall_ul > li.empty_li {flex: 1; display: flex; justify-content: center; align-items: center; padding: 40px 0; text-align: center; font-weight: 500; }



/** location list - common */
.location_list {display: flex; flex-wrap: wrap; gap: 0 20px; margin-top: 30px; }
.location_list li {width: calc((100% - 20px) / 2); margin-bottom: 40px; }
.location_list li .thumb_area {position: relative; border-radius: 10px; overflow: hidden;}
.location_list li .thumb_area:before {display: block; clear: both; content: ''; padding-bottom: calc((226 / 354) * 100%);}
.location_list li .thumb_area img {position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.location_list li .thumb_area .btn_pl_like {
	position: absolute; top: 20px; right: 20px; width: 40px; height: 40px; border-radius: 20px; background: url('/image/web/icon_like2_off@2x.png') no-repeat center / 20px 20px, #FFF;
	-webkit-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
	-moz-box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
	box-shadow: 0px 3px 6px 0px rgba(0,0,0,0.16);
}
.location_list li .thumb_area .btn_pl_like.on {background-image: url('/image/web/icon_like2_on@2x.png')}
.location_list li .desc_area {margin-top: 15px; }
.location_list li .desc_area .top {display: flex; align-items: center; }
.location_list li .desc_area .top .rec_badge {margin-right: 8px; padding: 3px 6px; border-radius: 5px; background: #FBD4D8; color: #E50019; font-size: 12px; font-weight: 600;}
.location_list li .desc_area .top .subj {
	line-height: 1.3em; font-size: 16px; font-weight: bold; 
	display: -webkit-box; text-overflow: ellipsis; overflow: hidden; white-space: normal; word-wrap: break-word; word-break: normal;
    -webkit-line-clamp: 2; /* 라인수 */
    -webkit-box-orient: vertical;
}
.location_list li .desc_area .desc {
	margin: 10px 0; line-height: 1.3em; color: #666; font-size: 14px; font-weight: 500;
	display: -webkit-box; text-overflow: ellipsis; overflow: hidden; white-space: normal; word-wrap: break-word; word-break: normal;
    -webkit-line-clamp: 2; /* 라인수 */
    -webkit-box-orient: vertical;
}
.location_list li .price_area {padding-top: 10px; border-top: 1px solid #F5F5F5; }
.location_list li .price_area > div {display: flex; align-items: center; gap: 5px; margin-bottom: 5px;}
.location_list li .price_area .badge {padding: 3px 6px; border-radius: 5px; background: #E50019; color: #FFF; font-size: 12px; font-weight: bold;}
.location_list li .price_area .price {color: #999; font-size: 13px; font-weight: 500; text-decoration: line-through;}
.location_list li .price_area .real_price {align-items: baseline;}
.location_list li .price_area .real_price .price {color: #333; font-size: 18px; font-weight: bold; text-decoration: none;}
.location_list li .price_area .real_price .std {color: #999; font-size: 12px; font-weight: 500;}
.location_list li.empty_li {display: flex; justify-content: center; align-items: center; width: 100%; padding: 40px 0; text-align: center; font-weight: 500; }




/** dayplan list - common */
#dayplan_ul > li {padding-top: 30px; padding-bottom: 30px; border-bottom: 1px solid #00000080; }
#dayplan_ul > li:last-child {border-bottom: 0; }
#dayplan_ul .map_wrap {margin-bottom: 30px; padding: 20px; border-radius: 10px; background: #F5F6F8; }
#dayplan_ul .map_wrap .map_head {display: flex; align-items: center; gap: 10px; position: relative; }
#dayplan_ul .map_wrap .map_head .seq_day {font-size: 16px; font-weight: bold; }
#dayplan_ul .map_wrap .map_head .plan_date {color: #999; font-size: 13px; font-weight: 500; }
#dayplan_ul .map_wrap .map_head a {
	display: block; position: absolute; top: 50%; right: 0; transform: translateY(-50%); 
	/* width: 60px; */ padding: 0 20px; line-height: 20px; border-radius: 5px; border: 1px solid #848484; background: #FFF; text-align: center; color: #848484; font-size: 11px; font-weight: bold; 
}
#dayplan_ul .map_content {display: none; position: relative; margin-top: 15px; border-radius: 10px; overflow: hidden; }
#dayplan_ul .map_content.on {display: block;}
#dayplan_ul .map_content:before {display: block; clear: both; content: ''; padding-bottom: calc((314 / 688) * 100%);}
#dayplan_ul .map_content > div {position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
#dayplan_ul .map_content .spot_wrap {width: 32px; height: 32px; border-radius: 32px; border: 1px solid #BFBFBF; background: #FFF; padding: 2px; user-select: none; -webkit-user-select: none;}
#dayplan_ul .map_content .spot_wrap div {display: flex; justify-content: center; align-items: center; height: 100%; width: 100%; border-radius: 100%; }
#dayplan_ul .map_content .spot_wrap span {color: #FFF; font-size: 16px; font-weight: bold;}

#dayplan_ul .button_area {}
#dayplan_ul .add_place {max-width: 360px; margin: 0 auto; background: #FEF2F3; color: #E50019; font-size: 14px; font-weight: bold; }
#dayplan_ul .add_place i {display: block; width: 14px; height: 14px; margin-right: 6px; background: url('/image/web/icon_add_r@2x.png') no-repeat center / 10px 10px; }

#dayplan_ul .place_area {margin-top: 30px;}
#dayplan_ul .place_area.none {display: none; }
#dayplan_ul .place_area .place {
	display: flex; align-items: center; gap: 10px; padding: 15px 20px; border-radius: 10px; background: #FFF; z-index: 50; cursor: grab; -webkit-cursor: grab;
	-webkit-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.16);
	-moz-box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.16);
	box-shadow: 0px 0px 6px 0px rgba(0,0,0,0.16);
}
#dayplan_ul .place_area .place:active {
	user-select: none; 
	-webkit-user-select: none;
    cursor: grabbing;
    cursor: -moz-grabbing;
    cursor: -webkit-grabbing;
}
#dayplan_ul .place_area .place .num {
	width: 18px; height: 18px; line-height: 18px; border-radius: 18px; color: #FFF; text-align: center; font-family: 'SCoreDream'; font-size: 13px; font-weight: 900; 
	user-select: none; -webkit-user-select: none;
}
#dayplan_ul .place_area .place .info {flex: 1; }
#dayplan_ul .place_area .place .info_top {margin-bottom: 5px; font-size: 14px; }
#dayplan_ul .place_area .place .info .info_subj {font-weight: bold; }
#dayplan_ul .place_area .place .info .info_cat {font-size: 12px;}
#dayplan_ul .place_area .place .info .info_addr {line-height: 1.3em; color: #999; font-size: 13px; font-weight: 500; word-wrap: break-word; word-break: keep-all;}
#dayplan_ul .place_area .place .btn_del {width: 38px; height: 38px; border-radius: 10px; background: url('/image/web/icon_del_w@2x.png') no-repeat center / 20px 20px, #B2B2B2;}
#dayplan_ul .place_area .dist {
	position: relative; width: 3px; height: 21px; margin: 20px auto; background: url('/image/web/icon_dist@2x.png') no-repeat center / 3px 21px; z-index: 40;
	user-select: none; -webkit-user-select: none;
}
#dayplan_ul .place_area .dist span {position: absolute; top: 50%; left: 100%; transform: translateY(-50%); margin-left: 10px; font-size: 14px; font-weight: bold; }




/** select location - common */
.sel_loc_wrap .sel_loc_text {display: flex; align-items: center; gap: 15px; height: 38px; border-radius: 8px; background: #F8F8F8; cursor: pointer;}
.sel_loc_wrap .sel_loc_text i {width: 12px; height: 16px; background: url('/image/web/icon_pl_loca@2x.png') no-repeat center / 16px 16px;}
.sel_loc_wrap .sel_loc_text span {font-size: 15px; font-weight: 600;}



/** caution-box - common */
.caution_box {padding: 20px; border-radius: 10px; background: #E500190D; }
.caution_box b {display: block; line-height: 1.2em; margin-bottom: 5px; padding-left: 20px; background: url('/image/web/icon_caution@2x.png') no-repeat left center / 15px 15px; color: #E50019; font-size: 14px;}
.caution_box span {display: block; line-height: 1.3em; padding-left: 20px; font-size: 14px; font-weight: 500;}
.caution_box .paragraph {display: block; margin-bottom: 20px;}
.caution_box .paragraph:last-child {margin-bottom: 0; }
.caution_box .red {color: #E50019; }

.caution_box.w_box {background: #FFF; }


/** term check - common */
.term_chk_wrap .btn_agree_term {display: flex; align-items: center; position: relative; width: 100%; height: 52px; padding: 0 20px; border-radius: 10px; background: #F9F9F9; cursor: pointer; }
.term_chk_wrap .chk_box {width: 22px; height: 22px; margin-right: 15px; border-radius: 22px; background: url('/image/web/chk_on2@2x.png') no-repeat center / 22px 22px, #EDEDED; overflow: hidden; }
.term_chk_wrap input[type="checkbox"]:checked ~ .chk_box {background: url('/image/web/chk_on2@2x.png') no-repeat center / 22px 22px, #E50019; }
.term_chk_wrap .btn_agree_term span {font-size: 15px; font-weight: bold; }
.term_chk_wrap .agree_group {display: flex; flex-direction: column; gap: 5px; padding: 10px 0 20px; }
.term_chk_wrap .agree_group li {display: flex; justify-content: space-between; align-items: center; gap: 10px; padding: 10px 20px; }
.term_chk_wrap .agree_group li label {display: flex; justify-content: flex-start; position: relative; cursor: pointer; }
.term_chk_wrap .agree_group li label span {line-height: 1.3em; }
.term_chk_wrap .agree_group li a {display: block; width: 16px; height: 16px; background: url('/image/web/btn_arrow_term@2x.png') no-repeat center / 8px 14px; cursor: pointer; }



/** place category color */
.cat1 {background: #E50019; }
.cat2 {background: #926DD5; }
.cat3 {background: #5384D0; }
.cat4 {background: #E5794B; }
.cat5 {background: #E5C34B; }
.cat6 {background: #6EC380; }
.cat7 {background: #4BAFC6; }



/** header */
header {position: fixed; top: 0; left: 0; width: 100%; z-index: 100;}
.header_wrap {display: flex; align-items: center; gap: 10px; padding-top: 20px; padding-bottom: 20px; background: #FFF; }
.header_wrap > div {display: flex; align-items: center;}
.header_wrap .side {position: relative; }
.header_wrap .center {flex: 1; justify-content: center; text-align: center; padding: 0 20px; overflow: hidden;}
.header_wrap .center img {width: auto; height: 50px; }
.header_wrap .left .header_back {position: absolute;  left: -3px; width: 18px; height: 24px; background: url('/image/web/btn_header_back@2x.png') no-repeat center/contain; }
.header_wrap .right {justify-content: flex-end; }
.header_wrap .login a {display: block; position: absolute; width: max-content; color: #999; font-size: 13px; font-weight: 500;}
.header_wrap .hd_btn_wrap {display: flex; align-items: center; gap: 24px; position: absolute; }
.header_wrap:not(.main_header) .hd_btn_wrap {right: 20px; }
.header_wrap .hd_btn_wrap button {width: 28px; height: 28px; font-size: 0; }
.header_wrap .hd_btn_wrap .alarm {position: relative; background: url('/image/web/icon_alarm@2x.png') no-repeat center / 28px 28px;}
.header_wrap .hd_btn_wrap .no_read:after {display: block; clear: both; content: ''; position: absolute; top: 2px; right: 0; width: 5px; height: 5px; border-radius: 5px; background: #E50019;}
.header_wrap .hd_btn_wrap .menu {position: relative; background: url('/image/web/icon_menu@2x.png') no-repeat center / 28px 28px;} 
.header_wrap .btn_mod_option {position: absolute; top: 50%; right: -10px; transform: translate(0, -50%); width: 24px; height: 24px; background: url('/image/web/icon_mod_option@2x.png') no-repeat center / 16px 16px; }

.sub_header {height: 60px; }
.header_wrap h1 {font-size: 18px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis;}

.header_is_tab {justify-content: space-between; }
.header_is_tab .tab_ul {display: flex; align-items: center; gap: 10px; margin-left: -10px; }
.header_is_tab .tab_ul li a {display: block; padding: 10px; text-align: center; color: #BEBEBE; font-size: 18px; font-weight: bold;}
.header_is_tab .tab_ul li.on a {color: #000; }



/** sidebar */
#side_menu {display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 200;}
#side_menu .sidebar {
	display: flex; flex-direction: column; justify-content: space-between; 
	position: absolute; top: 0; right: 50%; transform: translateX(calc(768px / 2)); width: 100%; max-width: 500px; height: 100%; background: #FFF; 
}
#side_menu .sidebar_top {flex: 1; display: flex; flex-direction: column; overflow: hidden;}
#side_menu .sidebar_top {}
#side_menu .sidebar_top_info {padding: 30px; border-bottom: 10px solid #F5F5F5; }
#side_menu .sidebar_top_info .btn_close {position: absolute; top: 50%; right: 0; transform: translate(0, -50%); }
#side_menu .sidebar_top_info .mb_profile {display: flex; align-items: center; gap: 15px; margin-top: 70px; margin-bottom: 40px; }
#side_menu .sidebar_top_info .mb_profile .mb_img {position: relative; width: 60px; height: 60px; border-radius: 60px; overflow: hidden;}
#side_menu .sidebar_top_info .mb_profile .mb_img img {width: 100%; height: 100%; object-fit: cover;}
#side_menu .sidebar_top_info .mb_profile .mb_nick {display: flex; align-items: center; gap: 8px;}
#side_menu .sidebar_top_info .mb_profile .mb_nick i {width: 20px; height: 20px; }
#side_menu .sidebar_top_info .mb_profile .mb_nick .icon_kakao {background: url('/image/web/icon_kakao@2x.png') no-repeat center / 20px 20px;}
#side_menu .sidebar_top_info .mb_profile .mb_nick .icon_naver {background: url('/image/web/icon_naver@2x.png') no-repeat center / 20px 20px;}
#side_menu .sidebar_top_info .mb_profile .mb_nick .nick_text {display: block; padding-right: 17px; background: url('/image/web/btn_arrow_right@2x.png') no-repeat right center / 10px 16px; font-size: 18px; font-weight: bold;}
#side_menu .sidebar_top_info .mb_menu {display: flex;}
#side_menu .sidebar_top_info .mb_menu li {flex: 1; display: flex; justify-content: center; align-items: center; }
#side_menu .sidebar_top_info .mb_menu li a {display: block; text-align: center;}
#side_menu .sidebar_top_info .mb_menu i {display: block; width: 32px; height: 28px; margin: 0 auto; }
#side_menu .sidebar_top_info .mb_menu span {display: block; margin-top: 10px; text-align: center; font-size: 17px; font-weight: 600;}
#side_menu .sidebar_top_info .mb_menu .schedule i {background: url('/image/web/icon_menu_schedule@2x.png') no-repeat center / contain; }
#side_menu .sidebar_top_info .mb_menu .wish i {background: url('/image/web/icon_menu_wish@2x.png') no-repeat center / contain; }
#side_menu .sidebar_top_info .mb_menu .review i {background: url('/image/web/icon_menu_review@2x.png') no-repeat center / contain; }
#side_menu .sidebar_top_info .mb_menu .trip i {background: url('/image/web/icon_menu_trip@2x.png') no-repeat center / contain; }
#side_menu .sidebar_top_menu {padding: 0 30px; border-bottom: 10px solid #F5F5F5; }
#side_menu .sidebar_top_menu li {padding: 10px 0; border-bottom: 1px solid #F5F5F5; }
#side_menu .sidebar_top_menu li a {display: block; position: relative; padding: 20px 0; background: url('/image/web/btn_arrow_right@2x.png') no-repeat right center / 10px 16px;}
#side_menu .sidebar_top_menu li a .name {font-size: 16px; font-weight: 600;}
#side_menu .sidebar_top_menu li a .cnt {position: absolute; top: 50%; right: 20px; transform: translate(0, -50%); color: #E50019; font-size: 16px; font-weight: 500;}
#side_menu .sidebar_top_menu .invited_li a {background: none; cursor: default; }
#side_menu .sidebar_top_menu .invited_li .invite {display: flex; align-items: center; gap: 8px; position: absolute; top: 50%; right: 0; transform: translate(0, -50%); cursor: pointer; }
#side_menu .sidebar_top_menu .invited_li .invite span {border-bottom: 1px solid #999; color: #999; font-size: 16px; font-weight: 600;}
#side_menu .sidebar_top_menu .invited_li .invite img {width: 13px; height: 15px; object-fit: contain; }
#side_menu .sidebar_top_logout {padding: 20px 30px; }
#side_menu .sidebar_top_logout a {display: block; padding: 10px 0; color: #999; font-size: 16px; font-weight: 600;}

#side_menu .sidebar_bot {display: flex; align-items: center; padding: 40px 0; }
#side_menu .sidebar_bot > li {flex: 1; position: relative; }
#side_menu .sidebar_bot > li:after {display: block; clear: both; content: ''; position: absolute; top: 50%; right: 0; transform: translate(0, -50%); width: 1px; height: 8px; background: #BEBEBE; }
#side_menu .sidebar_bot > li:last-child:after {display: none;}
#side_menu .sidebar_bot > li a {display: block; padding: 10px 0; text-align: center; font-size: 15px; font-weight: 600;}
#side_menu .sidebar_bot > li a .name {font-size: 16px; font-weight: 600;}



/** footer */
footer {margin-top: 20px; padding: 40px 0;}
footer .info_ul {display: flex; flex-wrap: wrap; gap: 10px 20px;}
footer .info_ul li {color: #555; font-size: 13px; font-weight: 500;}
footer .terms_ul {display: flex; gap: 10px 20px; margin-top: 20px; }
footer .terms_ul li a {font-size: 14px; font-weight: 500;}
.disclaimer {margin: 20px 0 0; color: #555; font-size: 12px; font-weight: 500; font-style: italic;}



/** bottom tab */
.main_bot_tab {position: fixed; bottom: 0; left: 0; width: 100%; z-index: 100;}
.main_bot_tab .tab_wrap {display: flex; border-radius: 10px 10px 0 0; border-top: 1px solid #EAEAEA; background: #FFF; }
.main_bot_tab .tab_wrap > a {flex: 1; display: flex; justify-content: center; align-items: center; height: 76px; }
.main_bot_tab .tab_wrap > a div {flex: 1; }
.main_bot_tab .tab_wrap > a div i {display: block; width: 25px; height: 23px; margin: 0 auto; background-size: contain !important;
	-webkit-transition: all 0.2s linear; 
    -moz-transition: all 0.2s linear; 
    -o-transition: all 0.2s linear; 
	transition: all 0.2s linear; 
}
.main_bot_tab .tab_wrap > a div span {display: block; margin-top: 5px; text-align: center; color: #C8CAD5; font-size: 14px; font-weight: 500; 
	-webkit-transition: all 0.2s linear; 
    -moz-transition: all 0.2s linear; 
    -o-transition: all 0.2s linear; 
	transition: all 0.2s linear; 
}
.main_bot_tab .tab_wrap .tab_home i {background: url('/image/web/tab_home_off@2x.png') no-repeat center;}
.main_bot_tab .tab_wrap .tab_home.on i {background: url('/image/web/tab_home_on@2x.png') no-repeat center;}
.main_bot_tab .tab_wrap .tab_trip i {background: url('/image/web/tab_trip_off@2x.png') no-repeat center;}
.main_bot_tab .tab_wrap .tab_trip.on i {background: url('/image/web/tab_trip_on@2x.png') no-repeat center;}
.main_bot_tab .tab_wrap .tab_map i {background: url('/image/web/tab_map_off@2x.png') no-repeat center;}
.main_bot_tab .tab_wrap .tab_map.on i {background: url('/image/web/tab_map_on@2x.png') no-repeat center;}
.main_bot_tab .tab_wrap .tab_my i {background: url('/image/web/tab_my_off@2x.png') no-repeat center;}
.main_bot_tab .tab_wrap .tab_my.on i {background: url('/image/web/tab_my_on@2x.png') no-repeat center;}
.main_bot_tab .tab_wrap a.on span {color: #E50019; font-weight: 600;}


/** page content */
#wrapper {position: relative; min-height: 100vh; background: #FFF;}



/** login */
#login_section {padding-top: 80px; }

#form_login fieldset {display: flex; flex-direction: column; gap: 40px; }
.auto_n_link {display: flex; justify-content: space-between; align-items: center; margin-top: 15px;}
.auto_n_link .auto_login {position: relative; display: flex; align-items: center; cursor: pointer; user-select: none; }
.auto_n_link .auto_login input[type="checkbox"] {position: absolute; top: 50%; left: 50%; width: 1px; height: 1px; margin: -1px; border: 0; overflow: hidden; clip: rect(0, 0, 0, 0); outline: none;}
.auto_n_link .auto_login .chk_box {width: 18px; height: 18px; margin-right: 8px; border: 1px solid #C2C2C2; border-radius: 5px; }
.auto_n_link .auto_login span {font-size: 13px; font-weight: 500;}
.auto_n_link .auto_login input[type="checkbox"]:checked ~ .chk_box {border-color: #E50019; background: url('/image/web/chk_on@2x.png') no-repeat center/contain, #E50019; }
.auto_n_link .find_link {display: flex; align-items: center; }
.auto_n_link .find_link li {position: relative; padding-right: 17px; }
.auto_n_link .find_link li:after {display: block; clear: both; content: ''; position: absolute; top: 50%; right: 8px; transform: translate(0, -50%); width: 1px; height: 8px; background: #999; }
.auto_n_link .find_link li:last-child {padding-right: 0;}
.auto_n_link .find_link li:last-child:after {display: none; }
.auto_n_link .find_link a {display: block; color: #999; font-size: 13px; font-weight: 500;}

#form_login .button_wrap {margin-top: 40px; }
#form_login .sign_up {margin: 30px 0 60px; text-align: center; }
#form_login .sign_up p {color: #999; font-size: 14px; font-weight: 500;}
#form_login .sign_up a {display: inline-block; margin-top: 10px; font-size: 16px; font-weight: bold; }
#form_login .sns_login .legend {height: 1px; margin-bottom: 30px; background: #EBEBEB;}
#form_login .sns_login .legend h3 {position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); padding: 10px; background: #FFF; color: #999; font-size: 15px; font-weight: 500;}
#form_login .sns_login button {margin-bottom: 24px; font-size: 16px; }
#form_login .sns_login button:last-of-type {margin-bottom: 0; }



/** join - terms */
#join_term_section {padding-top: 140px; }
#form_join_term {}
#form_join_term * {
	-webkit-user-select:none; 
	user-select: none; 
}



/** join - form */
#join_form_section {padding-top: 140px; padding-bottom: 70px; }
#form_join {}



/** find - common */
.find_common {padding-top: 140px; }



/** find - result - common */
.find_result_common {padding-top: 140px; }
.find_result_common .result_img {width: 69px; height: 69px; margin: 0 auto; }
.find_result_common .result_img img {width: 100%; height: 100%; object-fit: contain; }
.find_result_common h3 {margin: 30px 0 20px; text-align: center; font-size: 22px; font-weight: bold;}
.find_result_common .result_text {margin-bottom: 10px; text-align: center; color: #E50019; font-size: 20px; font-weight: 600;}
.find_result_common .result_info {text-align: center; color: #999; font-size: 16px; font-weight: 500;}
.find_result_common .button_wrap {margin-top: 40px; }
.find_result_common .button_wrap a {flex: 1; border-radius: 10px; text-align: center; font-weight: bold; }



/** term_section */
#term_section {padding-top: 80px; }



/** alarm */
#alarm_section {padding-top: 60px; }
#alarm_section #list_ul {}
#alarm_section #list_ul li {padding: 20px 0; border-bottom: 1px solid #F1F1F1; }
#alarm_section #list_ul li .created_at {color: #666; font-size: 14px; font-weight: 500;}
#alarm_section #list_ul li .subj {margin-top: 10px; font-size: 18px; font-weight: bold; }
#alarm_section #list_ul li .cont {line-height: 1.3em; margin-top: 10px; font-size: 16px; font-weight: 500;}
#alarm_section #list_ul li.empty_li {display: flex; justify-content: center; align-items: center; padding: 40px 0; border-bottom: 0; text-align: center; font-weight: 500;}


/** main start { */

/** index */
#index_content {padding-top: 90px; }

.main_sch {margin-top: 5px; }
.main_sch .go_sch_btn {display: flex; align-items: center; height: 38px; border-radius: 38px; background: url('/image/web/icon_sch@2x.png') no-repeat right 13px center / 28px 28px, #EEF0F2; cursor: pointer;}
.main_sch .go_sch_btn span {color: #C8C8C8; font-size: 15px; }

.main_map_wrap {margin-top: 30px; }
.main_map_wrap .main_map {display: flex; justify-content: center; align-items: center; position: relative; width: 100%; min-height: 300px; }
.main_map_wrap .main_map:after {display: block; clear: both; content: ''; padding-bottom: calc((314 / 728) * 100%);}
.main_map_wrap .main_map #map {position: absolute; width: 100%; height: 100%; }

.main_event {margin-top: 30px; }
.main_event .swiper .slide-card {}
.main_event .swiper .swiper-slide {position: relative; width: 335px; border-radius: 10px; overflow: hidden; }
.main_event .swiper .swiper-slide:before {display: block; clear: both; content: ''; padding-bottom: calc((126 / 335) * 100%);}
.main_event .swiper .swiper-slide a {position: absolute; top: 0; left: 0; display: block; width: 100%; height: 100%; }
.main_event .swiper .swiper-slide a img {width: 100%; height: 100%; object-fit: cover; }
.main_event .swiper .empty-slide {display: flex; justify-content: center; align-items: center; width: 100%; height: 120px; text-align: center; }
.main_event .swiper .swiper-pagination {position: static; padding: 15px 0; font-size: 0; }
.main_event .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet {margin: 0 2px; }
.main_event .swiper-pagination-bullet {width: 6px; height: 6px; background: #CCC; opacity: 1; }
.main_event .swiper-pagination-bullet-active {background: #E50019; }

.main_pension {margin-top: 10px; }
.main_camp {margin-top: 25px; }

.swiper_type01 .swiper-slide {width: 315px; }
.swiper_type01 .swiper-slide a {display: block; width: 100%;}
.swiper_type01 .swiper-slide .thumb_img {position: relative; width: 100%; border-radius: 10px; overflow: hidden; }
.swiper_type01 .swiper-slide .thumb_img:before {display: block; clear: both; content: ''; width: 100%; padding-bottom: calc((200 / 315) * 100% ); }
.swiper_type01 .swiper-slide .thumb_img img {position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.swiper_type01 .swiper-slide .desc {margin: 10px 0; }
.swiper_type01 .swiper-slide .desc span {display: block; color: #999; font-size: 12px; font-weight: 500;}
.swiper_type01 .swiper-slide .desc strong {display: block; margin-top: 5px; font-size: 16px; }

.swiper_type01 .swiper-slide .price_area {margin-top: 10px; padding-top: 10px; border-top: 1px solid #F5F5F5; }
.swiper_type01 .swiper-slide .price_area .disc_price {display: flex; align-items: baseline; gap: 5px; margin-bottom: 5px; }
.swiper_type01 .swiper-slide .price_area .badge {padding: 3px 6px; border-radius: 5px; background: #E50019; color: #FFF; font-size: 12px; font-weight: bold; }
.swiper_type01 .swiper-slide .price_area .disc_price .price {color: #999; font-size: 13px; font-weight: 500; text-decoration: line-through; }
.swiper_type01 .swiper-slide .price_area .real_price {display: flex; align-items: baseline; gap: 5px; }
.swiper_type01 .swiper-slide .price_area .real_price .price {line-height: 1.3em; color: #333; font-size: 18px; font-weight: bold; }
.swiper_type01 .swiper-slide .price_area .real_price .std {color: #999; font-size: 12px; font-weight: 500;}

/* .swiper_type01 .swiper-slide .price {padding-top: 10px; padding-bottom: 10px; border-top: 1px solid #F5F5F5; }
.swiper_type01 .swiper-slide .price b {}
.swiper_type01 .swiper-slide .price span {color: #999; font-size: 12px; font-weight: 500;} */
.swiper_type01 .empty-slide {display: flex; justify-content: center; align-items: center; width: 100%; height: 120px; text-align: center; }

.main_leisure {margin-top: 25px; }
.main_leisure .swiper .swiper-slide {width: 180px; }
.main_leisure .swiper .swiper-slide a {display: block; }
.main_leisure .swiper .swiper-slide a .thumb_img {position: relative; border-radius: 10px; overflow: hidden; }
.main_leisure .swiper .swiper-slide a .thumb_img:before {display: block; clear: both; content: ''; padding-bottom: 100%; }
.main_leisure .swiper .swiper-slide a .thumb_img img {position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.main_leisure .swiper .swiper-slide a .desc {padding-top: 10px; padding-bottom: 10px; }
.main_leisure .swiper .swiper-slide a .desc strong {font-size: 16px;}
.main_leisure .swiper .empty-slide {display: flex; justify-content: center; align-items: center; width: 100%; height: 120px; text-align: center; }

.main_activities {margin-top: 25px; }
.main_course {margin-top: 35px; }

.swiper_type02 .slide-card {height: 280px; }
.swiper_type02 .swiper-slide {width: 240px; }
.swiper_type02 .swiper-slide a {position: relative; display: block; border-radius: 10px; overflow: hidden; }
.swiper_type02 .swiper-slide .thumb_img {position: relative; width: 100%; }
.swiper_type02 .swiper-slide .thumb_img:after {position: relative; display: block; clear: both; content: ''; width: 100%; padding-bottom: calc((280 / 240) * 100% ); background: rgba(0,0,0,0.5); }
.swiper_type02 .swiper-slide .thumb_img img {position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.swiper_type02 .swiper-slide .desc {position: absolute; top: 0; left: 0; width: 100%; height: 100%; padding: 20px; }
.swiper_type02 .swiper-slide .desc strong {
	display: -webkit-box;
    -webkit-line-clamp: 2; /* 라인수 */
    -webkit-box-orient: vertical;
	max-height: 2.4em;
	white-space: normal; word-wrap: break-word; word-break: normal;
	line-height: 1.2em; color: #FFF; font-size: 20px; overflow: hidden;
}
.swiper_type02 .swiper-slide .desc p {
	display: -webkit-box;
    -webkit-line-clamp: 2; /* 라인수 */
    -webkit-box-orient: vertical;
	max-height: 2.4em;
	white-space: normal; word-wrap: break-word; word-break: normal;
	margin-top: 20px; line-height: 1.2em; color: #FFF; font-size: 16px; overflow: hidden;
}
.swiper_type02 .empty-slide {display: flex; justify-content: center; align-items: center; width: 100%; height: 120px; text-align: center; }


.main_mannani {margin-top: 35px; }
.main_mannani .mannani_tab {
	position: relative; margin-bottom: 15px; 
    -webkit-user-select:none;
    user-select:none;
}
.main_mannani .mannani_tab > ul {display: flex; gap: 5px; }
.main_mannani .mannani_tab > ul > li {display: flex; justify-content: center; align-items: center; width: 86px; height: 34px; border-radius: 17px; background: #F6F6F6; text-align: center; color: #666; font-size: 13px; font-weight: 500; cursor: pointer; }
.main_mannani .mannani_tab > ul > li.on {background: #E50019; color: #FFF; font-weight: bold; }
.main_mannani .swiper .swiper-slide {width: 180px; }
.main_mannani .swiper .swiper-slide a {display: block; position: relative; }
.main_mannani .swiper .swiper-slide .thumb_img {position: relative;	border-radius: 10px; overflow: hidden; }
.main_mannani .swiper .swiper-slide .thumb_img:after {position: relative; display: block; clear: both; content: ''; padding-bottom: 100%; background: rgba(0,0,0,0.3); }
.main_mannani .swiper .swiper-slide .thumb_img img {position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.main_mannani .swiper .swiper-slide .desc {position: absolute; bottom: 20px; left: 0; width: 100%; }
.main_mannani .swiper .swiper-slide .desc .rec {position: absolute; bottom: 100%; left: 20px; margin-bottom: 5px; padding: 3px 6px; border-radius: 5px; background: rgba(255,255,255,0.9); font-size: 12px; font-weight: 600;}
.main_mannani .swiper .swiper-slide .desc strong {display: block; width: 100%; color: #FFF; font-size: 16px; overflow: hidden; text-overflow: ellipsis; white-space:nowrap;}
.main_mannani .swiper .empty-slide {display: flex; justify-content: center; align-items: center; width: 100%; text-align: center; height: 120px; }

h2.sec_title {position: relative; padding: 15px 20px; font-size: 18px; font-weight: bold;}

.more_arrow {
	display: block; position: absolute; top: 50%; right: 12px; transform: translate(0, -50%); 
	width: 24px; height: 24px; background: url('/image/web/icon_more_arrow.png') no-repeat center; font-size: 0; cursor: pointer;
}



/** search - main */
#search_main_section {padding-top: 80px; }
#search_main_section .curated_block {margin: 40px 0 60px;}
#search_main_section .curated_block:last-of-type {margin-bottom: 0; }
#search_main_section .curated_block .cont {display: flex; flex-wrap: wrap; gap: 20px; padding: 0 20px; }
#search_main_section .curated_block .cont a {display: block; position: relative; width: calc((100% - 40px) / 3); max-width: 100px; border-radius: 100px; overflow: hidden;}
#search_main_section .curated_block .cont a:before {display: block; clear: both; content: ''; padding-bottom: 100%; }
#search_main_section .curated_block .cont a img {position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }



/** search - list */
#search_list_section {padding-top: 80px; }



/** location - list */
#loca_list_section {padding-top: 80px; }



/** location - view - common */
.loc_common_section {padding-top: 80px;}
.loc_common_section .swiper-slide {position: relative; }
.loc_common_section .swiper-slide .thumb_img {position: relative; }
.loc_common_section .swiper-slide .thumb_img:before {display: block; clear: both; content: ''; padding-bottom: calc((500 / 768) * 100%);}
.loc_common_section .swiper-slide img {position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
.loc_common_section .swiper-pagination-fraction {bottom: 20px; left: 50%; transform: translateX(-50%); width: auto; user-select: none; -webkit-user-select: none; }
.loc_common_section .swiper-pagination-fraction .fraction_wrap {line-height: 24px; padding: 0 8px; border-radius: 12px; background: #00000080; color: #FFF; font-size: 12px; font-weight: bold; }

.loc_common_section .detail_top {padding: 20px; }
.loc_common_section .location_info {padding: 20px; }
.loc_common_section .loca_info {display: flex; justify-content: space-between; align-items: flex-start; gap: 20px; }
.loc_common_section .loca_info .left {}
.loc_common_section .loca_info .subj {display: flex; align-items: flex-start; gap: 8px; }
.loc_common_section .loca_info .subj .recm {line-height: 22px; padding: 0 6px; border-radius: 5px; background: #FAD3D7; color: #E50019; font-size: 13px; font-weight: 600;}
.loc_common_section .loca_info .subj .text {flex: 1; line-height: 22px; font-size: 18px; font-weight: bold; }
.loc_common_section .loca_info .addr {display: flex; align-items: center; gap: 5px; margin-top: 10px; }
.loc_common_section .loca_info .addr i {width: 16px; height: 16px; background: url('/image/web/icon_pl_loca@2x.png') no-repeat center / 16px 16px; }
.loc_common_section .loca_info .addr span {flex: 1; font-size: 14px; font-weight: 500;}
.loc_common_section .loca_info .call {display: flex; align-items: center; gap: 5px; margin-top: 10px; }
.loc_common_section .loca_info .call i {width: 16px; height: 16px; background: url('/image/web/icon_pl_call@2x.png') no-repeat center / 16px 16px; }
.loc_common_section .loca_info .call span {flex: 1; font-size: 14px; font-weight: 500;}

.loc_common_section .loca_info .tool_area {display: flex; align-items: center; gap: 8px; }
.loc_common_section .loca_info .tool_area button {width: 36px; height: 36px; border: 1px solid #E3E3E3; border-radius: 4px;}
.loc_common_section .loca_info .tool_area a {display: block; width: 36px; height: 36px; border: 1px solid #E3E3E3; border-radius: 4px;}
.loc_common_section .loca_info .tool_area .like {background: url('/image/web/icon_like_off@2x.png') no-repeat center / 22px 22px; }
.loc_common_section .loca_info .tool_area .like.on {background: url('/image/web/icon_like_on@2x.png') no-repeat center / 22px 22px; }
.loc_common_section .loca_info .tool_area .copy {background: url('/image/web/icon_link_copy@2x.png') no-repeat center / 18px 18px; }
.loc_common_section .loca_info .tool_area .homepage {background: url('/image/web/icon_link_site@2x.png') no-repeat center / 20px 20px; }

.loc_common_section .loca_desc {margin-top: 10px; color: #666; font-size: 14px; font-weight: 500;} 
.loc_common_section .loca_cp_wrap {margin-top: 20px; }
.loc_common_section .loca_cp_wrap a {display: flex; justify-content: space-between; align-items: center; padding: 15px 20px; border: 1px solid #E6E6E6; border-radius: 8px; }
.loc_common_section .loca_cp_wrap a .subj {display: flex; align-items: center; gap: 5px; }
.loc_common_section .loca_cp_wrap a .subj i {width: 22px; height: 22px; background: url('/image/web/icon_speaker@2x.png') no-repeat center / 22px 22px;}
.loc_common_section .loca_cp_wrap a .subj .text {font-size: 14px; font-weight: 500; }
.loc_common_section .loca_cp_wrap a .subj .text b {color: #E50019; }
.loc_common_section .loca_cp_wrap a .desc {color: #999; font-size: 12px; font-weight: 500;}

.loc_common_section .tab_cont_wrap .tab_cont h3 {font-size: 18px; margin-bottom: 20px; }

.loc_common_section #map_info {}
.loc_common_section .map_wrap {position: relative; }
.loc_common_section .map_wrap:before {display: block; clear: both; content: ''; padding-bottom: 314px; }
.loc_common_section #loca_map {position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.loc_common_section #map_info .addr {margin-top: 20px; }
.loc_common_section #map_info .addr span {font-size: 15px; font-weight: 600;}

.loc_common_section #loca_detail button {border: 1px solid #000; font-weight: bold; }

.loc_common_section #review_list ul {margin-bottom: 80px; }
.loc_common_section #review_list ul li {margin-bottom: 10px; padding: 20px; border-radius: 10px; border: 1px solid #F1F1F1;	}
.loc_common_section #review_list ul li:last-child {margin-bottom: 0; }
.loc_common_section #review_list ul li .top_area {position: relative; }
.loc_common_section #review_list ul li .top_area .mb_info {display: flex; align-items: center; gap: 10px; }
.loc_common_section #review_list ul li .top_area .profile {width: 35px; height: 35px; border-radius: 35px; overflow: hidden; }
.loc_common_section #review_list ul li .top_area .profile img {width: 100%; height: 100%; object-fit: cover;}
.loc_common_section #review_list ul li .top_area .nick {font-size: 14px; font-weight: bold; }
.loc_common_section #review_list ul li .top_area .rm_name {margin-top: 5px; color: #666; font-size: 12px; font-weight: 500;}
.loc_common_section #review_list ul li .top_area .created_at {position: absolute; top: 0; right: 0; color: #999; font-size: 12px; font-weight: 500;}
.loc_common_section #review_list ul li .img_area {display: flex; align-items: center; gap: 10px; margin-top: 20px; overflow: auto; }
.loc_common_section #review_list ul li .img_area .thumb {flex: 0 0 150px; position: relative; height: 150px; border-radius: 10px; overflow: hidden; cursor: pointer; }
.loc_common_section #review_list ul li .img_area .thumb img {width: 100%; height: 100%; object-fit: cover;}
.loc_common_section #review_list ul li .cont_area {line-height: 1.3em; margin-top: 20px; font-size: 15px; font-weight: 500; word-wrap: break-word; word-break: normal;}

.loc_common_section #review_list ul .empty_li {display: flex; justify-content: center; align-items: center; padding: 40px 0; border: 0; text-align: center; font-weight: 500;}
.loc_common_section #review_list .btn_go_list {max-width: 320px; margin: 0 auto; border: 1px solid  #E7E7E7; border-radius: 8px; font-size: 14px; font-weight: bold; }

.loc_common_section .float_button {position: fixed; bottom: 0; /* left: 50%; transform: translate(-50%, 0); */ }
.loc_common_section .float_button {z-index: 10;}
.loc_common_section .float_button .button_wrap {flex-direction: column; position: absolute; right: 30px; bottom: 40px; }
.loc_common_section .float_button .button_wrap button {flex-direction: column; gap: 2px; width: 58px; height: 58px; border-radius: 58px; font-size: 10px; font-weight: 800;}
.loc_common_section .float_button .button_wrap .btn_event {border: 1px solid #DBCD29; background: #FFF584; color: #8B6957; }
.loc_common_section .float_button .button_wrap .btn_event i {width: 28px; height: 28px; background: url('/image/web/icon_event@2x.png') no-repeat center / 28px 28px;}
.loc_common_section .float_button .button_wrap .btn_add_my {border: 1px solid #E50019; background: #FFF; color: #E50019; }
.loc_common_section .float_button .button_wrap .btn_add_my i {width: 28px; height: 28px; background: url('/image/web/icon_add_schedule@2x.png') no-repeat center / 28px 28px;}



/** location - view - 숙소 */
#loc_detail_section .room_filter {display: flex; align-items: center; gap: 10px;}
#loc_detail_section .room_filter button {position: relative; height: 45px; border: 1px solid #F1F1F1; border-radius: 23px; }
#loc_detail_section .room_filter button i {position: absolute; left: 20px; }
#loc_detail_section .room_filter button > div {flex: 1; padding: 0 60px; }
#loc_detail_section .room_filter button span {font-size: 14px; font-weight: bold; }
#loc_detail_section .room_filter .btn_period {flex: 2; }
#loc_detail_section .room_filter .btn_period i {width: 20px; height: 20px; background: url('/image/web/icon_calendar@2x.png') no-repeat center / 20px 20px;}
#loc_detail_section .room_filter .btn_people {flex: 1; } 
#loc_detail_section .room_filter .btn_people i {width: 20px; height: 20px; background: url('/image/web/icon_pple@2x.png') no-repeat center / 20px 20px;}
/* #loc_detail_section .room_filter .btn_people > div {display: flex; align-items: center; } */
#loc_detail_section .tab_ul {display: flex; margin-top: 30px; overflow: auto; user-select: none; -webkit-user-select: none;}
#loc_detail_section .tab_ul > li {flex: 1; display: flex; justify-content: center; align-items: center; border-bottom: 3px solid transparent; padding: 10px 0; color: #999; font-size: 15px; font-weight: 500; cursor: pointer; }
#loc_detail_section .tab_ul > li.on {border-color: #000; color: #000; font-weight: bold; }
#loc_detail_section .tab_cont_wrap {}
#loc_detail_section .tab_cont_wrap .tab_cont {display: none; padding: 30px 20px 50px; }
#loc_detail_section .tab_cont_wrap .tab_cont.on {display: block; }

#loc_detail_section #room_result {}
#loc_detail_section #room_result li {margin-left: -20px; margin-right: -20px; padding: 30px 20px; border-bottom: 10px solid #F5F5F5; }
#loc_detail_section #room_result li:last-child {border-bottom: 0; }
#loc_detail_section #room_result li.empty_li {padding: 40px 0; text-align: center; font-weight: 500;}
#loc_detail_section #room_result li .thumb_area {border-radius: 15px; overflow: hidden;}
#loc_detail_section #room_result li .thumb_area .thumb_img {position: relative; cursor: pointer; }
#loc_detail_section #room_result li .thumb_area .thumb_img:before {display: block; clear: both; content: ''; padding-bottom: calc((455 / 728) * 100%); }
#loc_detail_section #room_result li .thumb_area .thumb_img img {position: absolute; top: 0 ; left: 0; width: 100%; height: 100%; object-fit: cover; }

#loc_detail_section #room_result li .info_area {border-bottom: 1px solid #F5F5F5; cursor: pointer; }
#loc_detail_section #room_result li .info_area h3 {margin-top: 20px; font-size: 18px; font-weight: bold; }
#loc_detail_section #room_result li .info_area .time {margin-top: 5px; color: #999; font-size: 14px; font-weight: 500; }
#loc_detail_section #room_result li .info_area .pple {margin-top: 5px; color: #999; font-size: 14px; font-weight: 500; }
#loc_detail_section #room_result li .info_area .desc {display: flex; gap: 8px; }
#loc_detail_section #room_result li .info_area .desc i {display: block; width: 12px; height: 12px; margin-top: 10px; margin-bottom: 10px; background: url('/image/web/icon_chk_b@2x.png') no-repeat center / 14px 14px;}
#loc_detail_section #room_result li .info_area .desc .group {flex: 1; display: flex; align-items: center; flex-wrap: wrap; gap: 8px 0; margin-top: 10px; margin-bottom: 10px; }
#loc_detail_section #room_result li .info_area .desc .group span {position: relative; padding-right: 17px; color: #4D4D4D; font-size: 14px; font-weight: 500;}
#loc_detail_section #room_result li .info_area .desc .group span:after {
	display: block; clear: both; content: ''; 
	position: absolute; top: 50%; right: 8px; transform: translateY(-50%); width: 1px; height: 8px; background: #999;
}
#loc_detail_section #room_result li .info_area .desc .group span:last-child {padding-right: 0; }
#loc_detail_section #room_result li .info_area .desc .group span:last-child:after {display: none; }

#loc_detail_section #room_result li .price_area {margin-top: 10px; }
#loc_detail_section #room_result li .price_area .disc_price {display: flex; align-items: baseline; gap: 5px; margin-bottom: 5px; }
#loc_detail_section #room_result li .price_area .badge {padding: 3px 6px; border-radius: 5px; background: #E50019; color: #FFF; font-size: 12px; font-weight: bold; }
#loc_detail_section #room_result li .price_area .disc_price .price {color: #999; font-size: 13px; font-weight: 500; text-decoration: line-through; }
#loc_detail_section #room_result li .price_area .real_price {display: flex; align-items: baseline; gap: 5px; }
#loc_detail_section #room_result li .price_area .real_price .price {line-height: 1.3em; color: #333; font-size: 18px; font-weight: bold; }
#loc_detail_section #room_result li .price_area .real_price .std {color: #999; font-size: 12px; font-weight: 500;}

#loc_detail_section #room_result li .btn {margin-top: 20px; border-radius: 10px;}
#loc_detail_section #room_result li .btn_disabled {border-color: #DDD; background: #F5F5F5; color: #999; }

#loc_detail_section #loca_detail .info_text {line-height: 1.3em; margin-bottom: 60px; color: #3A3A3A; font-size: 15px; font-weight: 500;}

#loc_detail_section #faci_service hr {margin: 30px -20px; height: 10px; border: none; background: #F5F5F5; }
#loc_detail_section #faci_service .facilities {display: flex; align-items: center; flex-wrap: wrap; gap: 20px; margin-top: 30px; }
#loc_detail_section #faci_service .facilities div {display: flex; align-items: center; gap: 10px; width: calc((100% - 60px) / 4); }
#loc_detail_section #faci_service .facilities div i {width: 18px; height: 14px; background: url('/image/web/icon_facilities@2x.png') no-repeat center / 18px 14px;}
#loc_detail_section #faci_service .facilities div span {flex: 1; color: #3A3A3A; font-size: 14px; font-weight: 500;}
/* #loc_detail_section #faci_service .services {line-height: 1.3em; margin-bottom: 60px; color: #3A3A3A; font-size: 14px; } */
#loc_detail_section #faci_service .services {display: flex; align-items: center; flex-wrap: wrap; gap: 20px 0; margin-top: 30px;}
#loc_detail_section #faci_service .services div {display: flex; align-items: center; gap: 10px; width: calc((100% - 60px) / 4); }
#loc_detail_section #faci_service .services div i {width: 18px; height: 14px; background: url('/image/web/icon_facilities@2x.png') no-repeat center / 18px 14px;}
#loc_detail_section #faci_service .services div span {color: #3A3A3A; font-size: 14px; font-weight: 500;}

#loc_detail_section #use_info .info_text {line-height: 1.3em; margin-bottom: 60px; color: #3A3A3A; font-size: 14px; }

#loc_detail_section #rsv_info .info_text {line-height: 1.3em; margin-bottom: 60px; color: #3A3A3A; font-size: 14px; }

#loc_detail_section #cancel_info h4 {color: #3A3A3A; font-size: 14px; }
#loc_detail_section #cancel_info .group {display: flex; flex-direction: column; gap: 10px; margin-top: 10px; margin-bottom: 20px; }
#loc_detail_section #cancel_info .group li {display: flex; gap: 8px;}
#loc_detail_section #cancel_info .group li i {display: block; width: 5px; height: 5px; margin-top: 6px; border-radius: 1px; background: #3A3A3A; }
#loc_detail_section #cancel_info .group li div {line-height: 1.3em; color: #3A3A3A; font-size: 14px; }
#loc_detail_section #cancel_info .info_text {line-height: 1.3em; margin-top: 10px; margin-bottom: 30px; padding-left: 10px; color: #3A3A3A; font-size: 14px; }



/** location - view - 숙소 제외 */
#loc2_detail_section {}
#loc2_detail_section .tab_cont {padding: 30px 20px; border-top: 10px solid #F5F5F5; }


#loc2_detail_section #form_reply_write fieldset {gap: 10px; margin-bottom: 20px; }
#loc2_detail_section #form_reply_write .field_textarea {border: 1px solid #DDDDDD; overflow: hidden;}
#loc2_detail_section #form_reply_write textarea {height: 100px; background: #FFF; }
#loc2_detail_section #reply_write .caution_box {margin-top: 30px;}



/** order - form */
#order_form_section {padding-top: 80px; }
#order_form_section .box_area {padding: 30px 20px; border-bottom: 10px solid #F5F5F5; }
#order_form_section .box_area.last {padding-bottom: 0; border-bottom: 0; }
#order_form_section .field_group {display: flex; flex-direction: column; gap: 10px; }
#order_form_section .box_area .rows {display: flex; gap: 10px; }
#order_form_section .box_area .rows .field_wrap {flex: 1; }

#order_form_section .box_area .dl_wrap {display: flex; flex-direction: column; gap: 10px; }
#order_form_section .box_area dl {display: flex; gap: 10px; font-size: 15px; font-weight: 500;}
#order_form_section .box_area dl dt {flex: 3; color: #888; }
#order_form_section .box_area dl dd {flex: 7; text-align: right; color: #333; }

#order_form_section h3 {margin-bottom: 20px; font-size: 18px;}
#order_form_section h3 span {display: inline-block; position: relative; line-height: 1em; }

#order_form_section .req:after {display: block; clear: both; content:''; position: absolute; top: 0; left: 100%; margin-left: 3px; border-radius: 1px; background: #FD5858; }
#order_form_section h3 .req:after {width: 6px; height: 6px; }

#order_form_section #order_location strong {font-size: 20px; }
#order_form_section #order_location p {margin-top: 20px; font-size: 16px; font-weight: 500; }
#order_form_section #order_discount .btn_cp_del {
	display: none; 
	position: absolute; right: 10px; width: 30px; height: 30px; border: none; border-radius: 8px; 
	background: url('/image/web/icon_del_w@2x.png') no-repeat center / 20px 20px;
	background-color: #000; 
}
#order_form_section #order_discount #cp_idx:not([value=""]) ~ #vs_cp_name {padding-right: 60px}
#order_form_section #order_discount #cp_idx:not([value=""]) ~ .btn_cp_del {display: block;}
#order_form_section #order_discount .btn_cp_trg {width: 150px; border: none; background: #E50019; color: #FFF; font-weight: bold; }
#order_form_section #order_discount .man_cash {margin-top: 30px; }
#order_form_section #order_discount .man_cash .man_cash_label {display: flex; align-items: center; color: #888; font-size: 15px; font-weight: 500;}
#order_form_section #order_discount .man_cash .field_text {flex: initial; width: 120px; }
#order_form_section #order_discount .man_cash .field_text input {border: 1px solid #DDDDDD; border-radius: 10px; background: #FFF; text-align: right; }
#order_form_section #order_discount .man_cash .enabled_cash {display: flex; justify-content: flex-end; align-items: center; margin-top: 10px; font-size: 12px; font-weight: bold;}
#order_form_section #order_discount .man_cash #own_man_cash {color: #E50019; }

#order_form_section #order_paym_amount .total_wrap {margin-top: 20px; padding-top: 20px; border-top: 1px solid #F1F1F1; }
#order_form_section #order_paym_amount .total_wrap dl {font-size: 18px; }
#order_form_section #order_paym_amount .total_wrap dl dt {color: #000; }
#order_form_section #order_paym_amount .total_wrap dl dd {color: #000; font-weight: bold; }

#order_form_section #order_paym_method {}
#order_form_section #order_paym_method .method_ul {display: flex; gap: 10px; }
#order_form_section #order_paym_method .method_ul li {flex: 1; }
#order_form_section #order_paym_method .method_ul .radio_label {display: block; position: relative; cursor: pointer; user-select: none; -webkit-user-select: none; }
#order_form_section #order_paym_method .method_ul .radio_label input {position: absolute; left: 50%; width: 2px; height: 2px; margin: -2px; border: none; overflow: hidden; }
#order_form_section #order_paym_method .method_ul .radio_label .button {
	display: flex; justify-content: center; align-items: center; 
	height: 60px; border-radius: 10px; border: 1px solid #F1F1F1; background: #FFF; font-size: 16px; font-weight: 500;
}
#order_form_section #order_paym_method .method_ul .radio_label input:checked ~ .button {border: 1px solid #E50019; background: #E50019; color: #FFF; }
#order_form_section #order_paym_method .mutong_info {display: none; margin-top: 40px; }
#order_form_section #order_paym_method .mutong_info .caution_wrap {margin-left: -20px; margin-right: -20px; }
#order_form_section #order_paym_method .mutong_info .caution_wrap .caution_box {margin-top: 20px; padding: 0 20px; }

#order_form_section #order_paym_refund .caution_box {margin-top: 20px;}
#order_form_section .term_chk_wrap {padding: 30px 20px; }


/** order - result */
#order_result_section {padding-top: 80px; }
#order_result_section .receipt_wrap {width: 100%; max-width: 640px; margin: 0 auto; padding: 60px 0;}
#order_result_section .receipt_wrap .img_area {text-align: center; }
#order_result_section .receipt_wrap .desc_area {margin-top: 40px; margin-bottom: 30px; text-align: center; }
#order_result_section .receipt_wrap .desc_area strong {font-size: 20px; }
#order_result_section .receipt_wrap .desc_area span {display: block; margin-top: 10px; font-size: 16px; font-weight: 500;}
#order_result_section .receipt_wrap .desc_area .wait {color: #E50019; }
#order_result_section .receipt_wrap .desc_area .notice {color: #666B6F; }
#order_result_section .receipt_wrap .receipt {padding: 30px; border-radius: 10px; background: #F5F6F8; }
#order_result_section .receipt_wrap .receipt h3 {margin-bottom: 30px; font-size: 18px;}
#order_result_section .receipt_wrap .receipt > div {display: flex; flex-direction: column; gap: 20px; }
#order_result_section .receipt_wrap .receipt dl {display: flex; gap: 10px; }
#order_result_section .receipt_wrap .receipt dl dt {flex: 1; color: #666; font-size: 16px; font-weight: 500;}
#order_result_section .receipt_wrap .receipt dl dd {flex: 5; text-align: right; font-size: 16px; font-weight: bold;}



/** tour - common */
.tour_main .tour_top_tab {display: flex; align-items: center; gap: 10px; margin: 0 -10px; padding: 10px 0; }
.tour_main .tour_top_tab li a {display: block; padding: 10px; color: #DDD; font-size: 18px; font-weight: bold; }
.tour_main .tour_top_tab li.on a {color: #000;}
.tour_main .float_button {position: fixed; bottom: 0; left: 50%; transform: translate(-50%, 0); }
.tour_main .btn_write_tour {display: flex; justify-content: center; align-items: center; position: absolute; bottom: 0; right: 20px; width: auto; height: 48px; margin-bottom: 120px; border-radius: 24px; background: #E50019; }
.tour_main .btn_write_tour i {width: 18px; height: 18px; background: url('/image/web/icon_share_tour@2x.png') no-repeat center / 18px 18px;}
.tour_main .btn_write_tour span {margin-left: 5px; color: #FFF; font-size: 15px; font-weight: bold;}


/** tour - mannani */
#tour_mannani_section {}




/** tour - user */
#tour_user_section {}



/** tour - insert */
#tour_ins_section {padding-top: 80px; }
#tour_ins_section hr {height: 10px; margin: 30px 0; border: 0; background: #F5F5F5; }
#tour_ins_section .caution_box1 {margin-bottom: 30px; }
#tour_ins_section .caution_box2 {margin-top: 30px; margin-bottom: 60px; }

#tour_ins_section .title_period {display: flex; align-items: center; margin-top: 20px; padding: 20px 0 10px; border-bottom: 2px solid #000; }
#tour_ins_section .title_period span {font-size: 18px; }

#load_result {display: none;}
#load_result.on {display: block; }
#load_result #dayplan_ul .map_wrap {margin-bottom: 20px; }
#load_result #dayplan_ul .place_area .place {display: block; padding: 0 20px; box-shadow: none; -webkit-box-shadow: none; cursor: default;}
#load_result #dayplan_ul .place_area .place_text {display: flex; align-items: center; gap: 10px; margin-bottom: 10px; border-radius: 10px; background: #FFF;}
#load_result #dayplan_ul .place_content {margin-top: 15px; }
#load_result #dayplan_ul .place_content textarea {
	display: block; width: 100%; height: 96px; padding: 15px 20px; border: 1px solid #DDDDDD; border-radius: 10px; background: #FFF; font-size: 16px; font-weight: 600; resize: none; 
}
#load_result #dayplan_ul .place_content textarea::placeholder {color: #B6B7B8; font-weight: 400;}



/** tour - view */
#tour_view_section {padding-top: 80px; }
#tour_view_section hr {height: 10px; margin: 30px 0; border: 0; background: #F5F5F5; }

#tour_view_section .swiper-slide {position: relative; }
#tour_view_section .swiper-slide .thumb_img {position: relative; }
#tour_view_section .swiper-slide .thumb_img:before {display: block; clear: both; content: ''; padding-bottom: calc((500 / 768) * 100%);}
#tour_view_section .swiper-slide img {position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
#tour_view_section .swiper-pagination-fraction {bottom: 20px; left: 50%; transform: translateX(-50%); width: auto; user-select: none; -webkit-user-select: none; }
#tour_view_section .swiper-pagination-fraction .fraction_wrap {line-height: 24px; padding: 0 8px; border-radius: 12px; background: #00000080; color: #FFF; font-size: 12px; font-weight: bold; }

#tour_view_section .view_info {padding-top: 20px; }
#tour_view_section .info_top {display: flex; justify-content: space-between; }
#tour_view_section .info_top .profile {display: flex; align-items: center; gap: 10px; }
#tour_view_section .info_top .profile .mb_img {width: 35px; height: 35px; border-radius: 35px; overflow: hidden;}
#tour_view_section .info_top .profile .mb_img img {width: 100%; height: 100%; object-fit: cover; }
#tour_view_section .info_top .profile .mb_nick {font-size: 14px; font-weight: bold; }
#tour_view_section .info_top .tool_area {display: flex; align-items: center; gap: 8px; }
#tour_view_section .info_top .tool_area button {width: 36px; height: 36px; border: 1px solid #E3E3E3; border-radius: 4px;}
#tour_view_section .info_top .tool_area .like {background: url('/image/web/icon_like_off@2x.png') no-repeat center / 22px 22px; }
#tour_view_section .info_top .tool_area .like.on {background: url('/image/web/icon_like_on@2x.png') no-repeat center / 22px 22px; }
#tour_view_section .info_top .tool_area .copy {background: url('/image/web/icon_link_copy@2x.png') no-repeat center / 18px 18px; }
#tour_view_section .info_bot .subject {margin-top: 10px; font-size: 18px; font-weight: bold;}
#tour_view_section .info_bot .daynight {margin-top: 5px; color: #333; font-size: 14px; font-weight: 500;}
#tour_view_section .info_bot .desc {margin-top: 10px; line-height: 1.3em; color: #666; font-size: 14px; font-weight: 500; word-wrap: break-word; word-break: normal;}
#tour_view_section .info_bot .created_at {margin-top: 10px; color: #999; font-size: 12px; font-weight: 500;}

#plan_ul > li {padding-top: 30px; padding-bottom: 30px; border-bottom: 1px solid #000; }
#plan_ul > li:last-child {border-bottom: 0; }
#plan_ul > li .map_wrap {position: relative; min-height: 200px; margin-bottom: 30px; }
#plan_ul > li .map_wrap:before {display: block; clear: both; content: ''; padding-bottom: calc((314 / 728) * 100%);}
#plan_ul > li .map_wrap .map_content {position: absolute; top: 0; width: 100%; height: 100%; }
#plan_ul > li .map_wrap .map_content .spot_wrap {width: 32px; height: 32px; border-radius: 32px; border: 1px solid #BFBFBF; background: #FFF; padding: 2px; user-select: none; -webkit-user-select: none;}
#plan_ul > li .map_wrap .map_content .spot_wrap div {display: flex; justify-content: center; align-items: center; height: 100%; width: 100%; border-radius: 100%; }
#plan_ul > li .map_wrap .map_content .spot_wrap span {color: #FFF; font-size: 16px; font-weight: bold;}
#plan_ul > li .date_plan {}
#plan_ul > li .date_plan .header {display: flex; align-items: center; gap: 10px; padding: 15px 20px; border-radius: 10px; background: #F5F6F8; }
#plan_ul > li .date_plan .header .seq_day {font-size: 16px; font-weight: bold; }
#plan_ul > li .date_plan .header .plan_date {color: #999; font-size: 13px; font-weight: 500; }
#plan_ul > li .date_plan .body {margin-top: 30px; padding: 0 20px;}
#plan_ul > li .date_plan .body .place {position: relative; }
#plan_ul > li .date_plan .body .place:before {display: block; clear: both; content: ''; position: absolute; top: 9px; left: 8px; width: 1px; height: 100%; background: #DEE0E3; z-index: 1;}
#plan_ul > li .date_plan .body .place:last-child:before {display: none; }
#plan_ul > li .date_plan .body .place .top {display: flex; align-items: center; position: relative; z-index: 1; }
#plan_ul > li .date_plan .body .place .num {width: 18px; height: 18px; line-height: 18px; border-radius: 18px; font-family: 'SCoreDream'; color: #FFF; text-align: center; font-size: 13px; font-weight: 900; }
#plan_ul > li .date_plan .body .place .pl_name {margin-left: 10px; font-size: 14px; font-weight: bold; }
#plan_ul > li .date_plan .body .place .ca_name {margin-left: 8px; font-size: 12px; }
#plan_ul > li .date_plan .body .place .bot {margin-left: 28px; }
#plan_ul > li .date_plan .body .place .img_area {display: flex; align-items: center; gap: 10px; margin-top: 10px; }
#plan_ul > li .date_plan .body .place .img_area .thumb_img {width: 100px; height: 100px; border-radius: 10px; overflow: hidden;}
#plan_ul > li .date_plan .body .place .img_area .thumb_img img {width: 100%; height: 100%; object-fit: cover;}
#plan_ul > li .date_plan .body .place .cont_area {margin-top: 10px; line-height: 1.3em; font-size: 14px; font-weight: 500;}
#plan_ul > li .date_plan .body .place .dist {margin-left: -10px; padding-top: 40px; padding-bottom: 40px; color: #AAB1B8; font-size: 14px; text-decoration: underline; font-weight: bold;}





/** map - main */
#map_section {height: calc(100vh - 77px); }
#map_section .map_sch_area {position: absolute; top: 50px; left: 0; width: 100%; z-index: 50;}
#map_section .map_sch_wrap {border-radius: 25px; border: 1px solid #000; background: #FFF; overflow: hidden;}
#map_section .map_sch_wrap #form_map_sch {position: relative; }
#map_section .map_sch_wrap #form_map_sch input {padding-right: 60px; padding-left: 20px; background: #FFF; }
#map_section .map_sch_wrap #form_map_sch .btn_sch {position: absolute; top: 50%; right: 15px; transform: translate(0, -50%); width: 28px; height: 28px; background: url('/image/web/icon_sch@2x.png') no-repeat center / 28px 28px; }
#map_section .map_sch_wrap #sch_result {}
#map_section .map_sch_wrap #sch_result.on {padding: 5px 20px; }
#map_section .map_sch_wrap #sch_result li {display: flex; align-items: center; gap: 8px; flex-wrap: wrap; padding: 15px 0; border-top: 1px solid #F5F5F5; cursor: pointer; }
#map_section .map_sch_wrap #sch_result li:first-child {border-top: 0; }
#map_section .map_sch_wrap #sch_result li .subj {font-size: 15px; font-weight: bold;}
#map_section .map_sch_wrap #sch_result li span {display: block; width: 3px; height: 3px; border-radius: 3px; background: #000;}
#map_section .map_sch_wrap #sch_result li .addr {flex: 1 1 80%; font-size: 15px; font-weight: 500; word-wrap: break-word; word-break: keep-all;}
#map_section #map {width: 100%; height: 100%; }

#map_section .swiper_wrap {display: none; position: absolute; bottom: 40px; left: 50%; transform: translateX(-50%); width: 100%; max-width: 600px; border-radius: 10px; overflow: hidden; z-index: 120; }
#map_section .swiper_wrap.on {display: block; }
#map_section .swiper_wrap .pl_swiper {width: 100%; background: #FFF; }
#map_section .swiper_wrap .pl_swiper .swiper-slide {display: flex; gap: 20px; padding: 20px; }
#map_section .swiper_wrap .pl_swiper .swiper-slide .img_area {width: 190px; height: 120px; border-radius: 10px; overflow: hidden; }
#map_section .swiper_wrap .pl_swiper .swiper-slide .img_area img {width: 100%; height: 100%; object-fit: cover; }
#map_section .swiper_wrap .pl_swiper .swiper-slide .img_area img[src=""] {display: none;}
#map_section .swiper_wrap .pl_swiper .swiper-slide .info_area {flex: 1; padding: 10px 0; }
#map_section .swiper_wrap .pl_swiper .swiper-slide .info_area .subj {font-size: 18px; font-weight: 600;}
#map_section .swiper_wrap .pl_swiper .swiper-slide .info_area ul li {display: flex; gap: 8px; margin-top: 10px; }
#map_section .swiper_wrap .pl_swiper .swiper-slide .info_area ul li i {display: block; width: 16px; height: 16px; }
#map_section .swiper_wrap .pl_swiper .swiper-slide .info_area ul li .text {flex: 1; font-size: 14px; font-weight: 500;}
#map_section .swiper_wrap .pl_swiper .swiper-slide .info_area ul .loca i {background: url('/image/web/icon_pl_loca@2x.png') no-repeat center / 16px 16px; }
#map_section .swiper_wrap .pl_swiper .swiper-slide .info_area ul .call i {background: url('/image/web/icon_pl_call@2x.png') no-repeat center / 16px 16px; }
#map_section .swiper_wrap .pl_swiper .swiper-slide .info_area ul .call .text {flex: 1; color: #666;}
#map_section .swiper_wrap .pl_swiper .swiper-slide .badge_rec {position: absolute; top: 20px; right: 20px; padding: 3px 6px; border-radius: 5px; background: #FBD4D8; color: #E50019; font-size: 12px; font-weight: 600;}


#map_section .swiper_wrap .swiper-button {position: absolute; top: 0; width: 20px; height: 100%; background: #F5F5F5; z-index: 5; cursor: pointer; }
#map_section .swiper_wrap .swiper-button:after {
	display: block; clear: both; content: '';
	position: absolute; top: 50%; left: 50%; width: 10px; height: 16px; transform: translate(-50%, -50%); 
}
#map_section .swiper_wrap .pl_prev {left: 0; }
#map_section .swiper_wrap .pl_prev:after {background: url('/image/web/btn_arrow_left@2x.png') no-repeat center / 10px 16px;}
#map_section .swiper_wrap .pl_next {right: 0; }
#map_section .swiper_wrap .pl_next:after {background: url('/image/web/btn_arrow_right@2x.png') no-repeat center / 10px 16px;}
#map_section .swiper_wrap .swiper-button-disabled {cursor: auto;}
#map_section .swiper_wrap .swiper-button-disabled:after {opacity: 0.2;}
#map_section .swiper_wrap .swiper-button-lock {display: block;}

#map_section .float_button {position: fixed; bottom: 0; left: 50%; transform: translateX(-50%); z-index: 110;}
#map_section .my_position {
	position: absolute; left: 30px; bottom: 0; width: 44px; height: 44px; border-radius: 44px; margin-bottom: 120px; background: url('/image/web/icon_my_position@2x.png') no-repeat center / 44px 44px, #FFF; 
	-webkit-box-shadow: 0px 2px 15px 0px rgba(0,0,0,0.16);
	-moz-box-shadow: 0px 2px 15px 0px rgba(0,0,0,0.16);
	box-shadow: 0px 2px 15px 0px rgba(0,0,0,0.16);
}
#map_section .btn_add_place {display: flex; justify-content: center; align-items: center; gap: 7px; position: absolute; right: 20px; bottom: 0; width: 116px; height: 48px; margin-bottom: 120px; border-radius: 25px; background: #E50019; }
#map_section .btn_add_place i {display: block; width: 16px; height: 16px; background: url('/image/web/icon_flag_w@2x.png') no-repeat center / 16px 16px; }
#map_section .btn_add_place b {color: #FFF; font-size: 15px;}



/** map - request */
#map_request_section {padding-top: 80px; }

#map_request_section #post_ifrm {display: none; position: relative;}
#map_request_section #post_ifrm #btn_fold_wrap {cursor: pointer; position: absolute; right: 0px; top: -1px; z-index: 1;}
#map_request_section .caution_box {padding: 20px; border-radius: 10px; background: #E500190D; }
#map_request_section .caution_box b {display: block; line-height: 1.2em; margin-bottom: 5px; padding-left: 20px; background: url('/image/web/icon_caution@2x.png') no-repeat left center / 15px 15px; color: #E50019; font-size: 14px;}
#map_request_section .caution_box span {display: block; line-height: 1.5em; padding-left: 20px; font-size: 14px; font-weight: 500;}
#map_request_section .float_button {position: fixed; bottom: 0; z-index: 10;}
#map_request_section .float_button button {border-radius: 0; }



/** my - schedule */
#my_schedule_section {padding-top: 80px; }
#my_schedule_section .schedule_ul {display: flex; flex-direction: column; gap: 10px; }
#my_schedule_section .schedule_ul > li {position: relative; }
#my_schedule_section .schedule_ul > li a {display: block; padding: 15px 60px 15px 20px; border-radius: 8px; border: 1px solid #E6E6E6; }
#my_schedule_section .schedule_ul > li a .subject {display: flex; align-items: flex-start;}
#my_schedule_section .schedule_ul > li a .subject i {display: block; width: 22px; height: 22px; background: url('/image/web/icon_schedule@2x.png') no-repeat center / 22px 22px;}
#my_schedule_section .schedule_ul > li a .subject .text {flex: 1; margin-left: 7px; line-height: 22px; font-size: 18px; font-weight: 500;}
#my_schedule_section .schedule_ul > li a .period {margin-top: 10px; color: #666; font-size: 14px; font-weight: 500;}
#my_schedule_section .schedule_ul > li button {position: absolute; top: 0; right: 0; width: 38px; height: 38px; border-radius: 0 8px 0 8px; background: url('/image/web/icon_del_w@2x.png') no-repeat center / 20px 20px, #B2B2B2; }
#my_schedule_section .schedule_ul > .empty_li {display: flex; justify-content: center; align-items: center; padding: 40px 20px; font-weight: 500;}
#my_schedule_section .schedule_ul > .empty_li p {font-size: 16px; font-weight: 500;}
#my_schedule_section .float_button {position: fixed; bottom: 0; left: 50%; transform: translate(-50%, 0); }
#my_schedule_section .show_schedule {position: absolute; bottom: 0; right: 20px; width: auto; height: 48px; margin-bottom: 120px; padding: 0 20px; border-radius: 24px; background: #E50019; color: #FFF; font-size: 15px; font-weight: bold; }
#my_schedule_section .show_schedule i {width: 14px; height: 14px; background: url('/image/web/icon_add_w@2x.png') no-repeat center / 18px 18px;}
#my_schedule_section .show_schedule span {margin-left: 8px; }



/** my - schedule detail */
#my_schedule_detail_section {padding-top: 80px; height: 100%; }
#my_schedule_detail_section hr {height: 10px; margin: 30px 0; border: 0; background: #F5F5F5; }
#my_schedule_detail_section .title_period {display: flex; align-items: center; padding: 20px 0 10px; border-bottom: 2px solid #000; }
#my_schedule_detail_section .title_period i {display: block; width: 22px; height: 22px; margin-right: 5px; background: url('/image/web/icon_schedule@2x.png') no-repeat center / 22px 22px; cursor: pointer; }
#my_schedule_detail_section .title_period span {font-size: 18px; }

#my_schedule_detail_section .button_wrap {position: fixed; bottom: 0; left: 50%; transform: translate(-50%, 0); z-index: 100;}
#my_schedule_detail_section .button_wrap button {border-radius: 0; }



/** my - save */
#my_save_section {padding-top: 80px; }

#my_save_section #save_ul {display: flex; flex-direction: column; gap: 10px; }
#my_save_section #save_ul > li {}
#my_save_section #save_ul > li a {display: flex; align-items: center; gap: 10px; padding: 15px 20px; border: 1px solid #E6E6E6; border-radius: 8px; }
#my_save_section #save_ul > li .info {flex: 1; }
#my_save_section #save_ul > li .info .subj {font-size: 18px; font-weight: 500;}
#my_save_section #save_ul > li .info .addr {display: flex; align-items: center; gap: 8px; margin-top: 10px; }
#my_save_section #save_ul > li .info .addr i {width: 12px; height: 15px; background: url('/image/web/icon_pl_loca@2x.png') no-repeat center / 15px 15px; }
#my_save_section #save_ul > li .info .addr .text {flex: 1; font-size: 14px; font-weight: 500;}
#my_save_section #save_ul > li .period {margin-top: 10px; font-size: 14px; font-weight: 500;}
#my_save_section #save_ul > li .info .ca_name {margin-top: 10px; color: #666; font-size: 14px; font-weight: 500;}
#my_save_section #save_ul > li .like {width: 22px; height: 22px; background: url('/image/web/icon_like_on@2x.png') no-repeat center / 22px 22px;}
#my_save_section #save_ul > li.empty_li {display: flex; justify-content: center; align-items: center; padding: 40px 0; border: 0; font-weight: 500;}



/** my - booking - common */
.status.pay_w {color: #FF7600; } /* 입금대기 */
.status.rsv_d {color: #4E61B2; } /* 예약완료 */
.status.rsv_c {color: #E50019; } /* 예약취소 */
.status.use_d {color: #000000; } /* 이용완료 */

/** my - booking */
#my_booking_section {padding-top: 80px; }
#my_booking_section #booking_ul {}
#my_booking_section #booking_ul li {display: flex; align-items: flex-start; flex-wrap: wrap; position: relative; margin-bottom: 30px; gap: 10px; padding-bottom: 30px; border-bottom: 1px solid #F1F1F1; }
#my_booking_section #booking_ul li:last-child {margin-bottom: 0; border-bottom: 0; }
#my_booking_section #booking_ul li .booking_num {position: absolute; top: 0; right: 0; color: #666; font-size: 14px; font-weight: 500;}
#my_booking_section #booking_ul li .img_area {position: relative; width: 176px; border-radius: 10px; overflow: hidden; }
#my_booking_section #booking_ul li .img_area:before {display: block; clear: both; content: ''; padding-bottom: calc((117 / 176) * 100%); }
#my_booking_section #booking_ul li .img_area a {display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
#my_booking_section #booking_ul li .img_area img {width: 100%; height: 100%; object-fit: cover; }
#my_booking_section #booking_ul li .text_area {flex: 1; display: flex;}
#my_booking_section #booking_ul li .info {display: block; }
#my_booking_section #booking_ul li .info .status {font-size: 13px; font-weight: 600; }
#my_booking_section #booking_ul li .info .subj {margin-top: 8px; font-size: 16px; font-weight: bold; }
#my_booking_section #booking_ul li .info .addr {display: flex; gap: 8px; margin-top: 9px; }
#my_booking_section #booking_ul li .info .addr i {width: 12px; height: 15px; background: url('/image/web/icon_pl_loca@2x.png') no-repeat center / 15px 15px; }
#my_booking_section #booking_ul li .info .addr .text {flex: 1; color: #333; font-size: 14px; font-weight: 500;}
#my_booking_section #booking_ul li .info .period {margin-top: 9px; font-size: 13px; font-weight: 500;}
#my_booking_section #booking_ul li .info .rm_name {margin-top: 9px; color: #999; font-size: 14px; font-weight: 500;}
#my_booking_section #booking_ul li .button_wrap {display: flex; justify-content: flex-end; margin-top: 10px; }
#my_booking_section #booking_ul li .btn {position: absolute; bottom: 30px; right: 0; width: 120px; height: 40px; border-radius: 10px; background: #FFF; font-size: 15px; font-weight: bold; }
#my_booking_section #booking_ul li.empty_li {display: flex; justify-content: center; align-items: center; padding: 40px 0; text-align: center; font-weight: 500; }
#my_booking_section .btn.book_cancel {border: 1px solid #E50019; color: #E50019; }
#my_booking_section .btn.write_reply {border: 1px solid #000; color: #000; }
#my_booking_section .btn.write_reply.disabled {border: 1px solid #DDDDDD; background: #F5F5F5; color: #999; }



/** my - booking - view */
#my_order_section {padding-top: 80px; }
#my_order_section hr {height: 10px; margin: 30px 0; border: 0; background: #F5F5F5; }

#my_order_section .detail_info {}
#my_order_section .detail_info h3 {margin-bottom: 20px; padding-bottom: 10px; border-bottom: 2px solid #000; font-size: 16px; font-weight: bold; }
#my_order_section .detail_info .card {display: flex; align-items: flex-start; gap: 15px; }
#my_order_section .detail_info .card .img_area {position: relative; width: 176px; border-radius: 10px; overflow: hidden; }
#my_order_section .detail_info .card .img_area:before {display: block; clear: both; content: ''; padding-bottom: calc((118 / 176) * 100%);}
#my_order_section .detail_info .card .img_area img {position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }
#my_order_section .detail_info .card .text_area {}
#my_order_section .detail_info .card .text_area .subj {font-size: 16px; font-weight: bold; }
#my_order_section .detail_info .card .text_area .addr {display: flex; align-items: center; gap: 5px; margin-top: 9px; }
#my_order_section .detail_info .card .text_area .addr i {width: 16px; height: 16px; background: url('/image/web/icon_pl_loca@2x.png') no-repeat center / 16px 16px;}
#my_order_section .detail_info .card .text_area .addr span {font-size: 14px; font-weight: 500;}
#my_order_section .detail_info .card .text_area .call {display: flex; align-items: center; gap: 5px; margin-top: 9px; }
#my_order_section .detail_info .card .text_area .call i {width: 16px; height: 16px; background: url('/image/web/icon_pl_call@2x.png') no-repeat center / 16px 16px;}
#my_order_section .detail_info .card .text_area .call span {font-size: 14px; font-weight: 500;}
#my_order_section .detail_info .card .text_area .room {margin-top: 9px; color: #999; font-size: 14px; font-weight: 500;}
#my_order_section .detail_info .card .text_area .period {margin-top: 9px; font-size: 13px; font-weight: 500;}

#my_order_section .receipt_info {}
#my_order_section .receipt_info > div {margin-bottom: 30px; padding-bottom: 30px; border-bottom: 1px solid #F1F1F1; }
#my_order_section .receipt_info > div:last-child {border-bottom: 0; }
#my_order_section .receipt_info h3 {margin-bottom: 30px; font-size: 18px; font-weight: bold; }


#my_order_section .receipt_ul {display: flex; flex-direction: column; gap: 20px; }
#my_order_section .receipt_ul li {display: flex; justify-content: space-between; gap: 10px; }
#my_order_section .receipt_ul li .title {color: #666; font-size: 16px; font-weight: 500; }
#my_order_section .receipt_ul li .desc {font-size: 16px; font-weight: bold; }
#my_order_section .receipt_ul li .red {color: #E50019; }
#my_order_section .receipt_ul li .total {text-decoration: underline;}
#my_order_section .caution_box_wrap {}
#my_order_section .caution_box {margin-bottom: 20px; }

/** } main end */



/** member edit */
#edit_form_section {padding-top: 70px; }

#edit_form_section .field_content button, #edit_form_section .field_content .btn { width: 150px;}
#edit_form_section #mb_img_name {user-select: none; -webkit-user-select: none; }

#edit_form_section .float_submit {margin-left: -20px; margin-right: -20px; }


.mb_ul {margin-top: -10px; margin-bottom: 30px; }
.mb_ul li {padding: 10px 0; border-bottom: 1px solid #F5F5F5; }
.mb_ul li:last-child {border-bottom: none; }
.mb_ul li a {display: block; padding: 20px 0; background: url('/image/web/btn_arrow_right@2x.png') no-repeat right center / 10px 16px; font-size: 16px; font-weight: 600;}
.mb_ul li.withdrawal a {color: #999; }



/** review list */
#review_list_section {padding-top: 60px; }
#review_list_section #tab_ul {display: flex; align-items: center; }
#review_list_section #tab_ul li {flex: 1; position: relative; }
#review_list_section #tab_ul li:after {display: block; clear: both; content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 1px; background: #F1F1F1; }
#review_list_section #tab_ul li a {display: block; padding: 15px 0; text-align: center; color: #BEBEBE; font-size: 18px; font-weight: 500; }

#review_list_section #tab_ul li.on:after {height: 2px; background: #E50019; }
#review_list_section #tab_ul li.on a {color: #E50019; font-weight: bold;}

#review_list_section #list_ul {display: flex; flex-direction: column; gap: 10px; padding: 30px 20px; }
#review_list_section #list_ul li {position: relative; border-radius: 10px; overflow: hidden;}
#review_list_section #list_ul li.empty_li {border-radius: 0; text-align: center; font-weight: 500;}
#review_list_section #list_ul li .card {border: 1px solid #F1F1F1; border-radius: 10px; padding: 20px; }
#review_list_section #list_ul li .card .top {display: flex; justify-content: space-between;}
#review_list_section #list_ul li .card .top .mb_info {display: flex; gap: 5px; }
#review_list_section #list_ul li .card .top .mb_info .profile {width: 35px; height: 35px; border-radius: 35px; overflow: hidden;}
#review_list_section #list_ul li .card .top .mb_info .profile img {width: 100%; height: 100%; object-fit: cover; }
#review_list_section #list_ul li .card .top .mb_info .nick {font-size: 14px; font-weight: bold; }
#review_list_section #list_ul li .card .top .mb_info .pl_name {margin-top: 5px; color: #666; font-size: 12px; font-weight: 500;}
#review_list_section #list_ul li .card .top .created_at {color: #999; font-size: 12px; font-weight: 500;}
#review_list_section #list_ul li .card .bot {overflow: auto; }
#review_list_section #list_ul li .card .img_group {display: flex; align-items: center; gap: 10px; margin-top: 20px; }
#review_list_section #list_ul li .card .img_group .img_wrap {position: relative; min-width: 100px; width: 100%; max-width: 150px; border-radius: 10px; overflow: hidden;}
#review_list_section #list_ul li .card .img_group .img_wrap:before {display: block; clear: both; content: ''; padding-bottom: 100%;}
#review_list_section #list_ul li .card .img_group .img_wrap img {position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover;}
#review_list_section #list_ul li .card .content {margin-top: 20px; font-size: 15px; font-weight: 500;}

#review_list_section #list_ul.review_ul li .card > .top {margin-right: 40px; }
#review_list_section #list_ul.review_ul li a {position: absolute; top: 0; right: 0; padding: 5px 10px; border-radius: 0 10px 0 10px; background: #B2B2B2; color: #FFF; font-size: 12px; font-weight: 500;}



/** coupon */
#coupon_list_section {padding-top: 60px; }
#coupon_list_section #cp_list_ul {display: flex; flex-direction: column; gap: 10px; }
#coupon_list_section #cp_list_ul li {padding: 15px 20px; border: 1px solid #E6E6E6; border-radius: 8px; }
#coupon_list_section #cp_list_ul li .top {display: flex; align-items: center; gap: 10px; }
#coupon_list_section #cp_list_ul li .top i {width: 19px; height: 19px; background: url('/image/web/icon_coupon@2x.png') no-repeat center / 20px 20px; }
#coupon_list_section #cp_list_ul li .top .text {font-size: 18px; }
#coupon_list_section #cp_list_ul li .top b {color: #E50019; font-weight: bold;}
#coupon_list_section #cp_list_ul li .top span {font-weight: 500;}
#coupon_list_section #cp_list_ul li .period {margin-top: 10px; color: #666; font-size: 14px; font-weight: 500;}
#coupon_list_section #cp_list_ul li.empty_li {display: flex; justify-content: center; align-items: center; padding: 40px 0; border: 0; text-align: center; font-weight: 500;}



/** point */
#point_list_section {padding-top: 60px;}
#point_list_section hr {height: 10px; margin: 30px 0; border: 0; background: #F5F5F5; }
#point_list_section .point_board {padding: 15px 20px; border-radius: 8px; background: #FEF2F3; color: #E50019; }
#point_list_section .point_board p {font-size: 14px; font-weight: 500;}
#point_list_section .point_board b {display: block; margin-top: 5px; font-size: 28px;}
#point_list_section .tab_ul {display: flex; align-items: center; gap: 10px; margin-top: -10px; margin-left: -10px;}
#point_list_section .tab_ul li a {display: block; padding: 10px; text-align: center; color: #BEBEBE; font-size: 18px; font-weight: bold; }
#point_list_section .tab_ul li.on a {color: #000; }
#point_list_section #list_ul {}
#point_list_section #list_ul li {padding: 30px 0; border-bottom: 1px solid #F1F1F1; }
#point_list_section #list_ul li .top {display: flex; justify-content: space-between; gap: 10px; font-size: 16px; font-weight: 500;}
#point_list_section #list_ul li .top .point.add {color: #E50019; }
#point_list_section #list_ul li .top .point.sub {color: #8B8B8B; }
#point_list_section #list_ul li .created_at {margin-top: 5px; color: #666; font-size: 14px; font-weight: 500;}
#point_list_section #list_ul li.empty_li {display: flex; justify-content: center; align-items: center; padding: 40px 0; border: 0; text-align: center; font-weight: 500; }



/** board - notice list */
#notice_list_section {padding-top: 80px; }
#notice_list_section #list_ul {}
#notice_list_section #list_ul li {border-bottom: 1px solid #F1F1F1; }
#notice_list_section #list_ul li a {display: block; margin: 30px 0; }
#notice_list_section #list_ul li .subj {font-size: 16px; font-weight: bold; }
#notice_list_section #list_ul li .created_at {margin-top: 10px; color: #666; font-size: 14px; font-weight: 500;}
#notice_list_section #list_ul li.empty_li {display: flex; justify-content: center; align-items: center; padding: 40px 0; border-bottom: 0; text-align: center; font-weight: 500;}



/** board - notice view */
#notice_view_section {padding-top: 60px; }
#notice_view_section .view_head {padding: 30px 0; border-bottom: 1px solid #F1F1F1; }
#notice_view_section .view_head .subj {font-size: 16px; font-weight: bold; }
#notice_view_section .view_head .created_at {margin-top: 10px; color: #666; font-size: 14px; font-weight: 500;}
#notice_view_section .view_body {line-height: 1.3em; padding: 30px 0; font-size: 14px; font-weight: 500; word-wrap: break-word; word-break: normal;}



/** board - faq */
#faq_section {padding-top: 80px; }
#faq_section .inq_wrap {margin-bottom: 20px; padding-bottom: 20px; border-bottom: 1px solid #F1F1F1; }
#faq_section .inq_wrap .btn_kakao {display: flex; justify-content: space-between; align-items: center; gap: 10px; height: auto; padding: 20px; border-radius: 15px; background: #FEE711; }
#faq_section .inq_wrap .btn_kakao .top {display: flex; align-items: center; gap: 5px; }
#faq_section .inq_wrap .btn_kakao i {width: 18px; height: 18px; background: url('/image/web/sns_kakao_logo@2x.png') no-repeat center / 20px 20px;}
#faq_section .inq_wrap .btn_kakao span {color: #3C1E1E; font-size: 16px; font-weight: 600;}
#faq_section .inq_wrap .btn_kakao .bot {margin-top: 5px; color: #3C1E1E; font-size: 14px; font-weight: 500;}
#faq_section .inq_wrap .btn_kakao .right {display: flex; justify-content: center; align-items: center; padding: 10px 20px; border-radius: 15px; background: #FFF; font-size: 16px; font-weight: bold;}
#faq_section .inq_wrap .btn_call {display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-top: 10px; padding: 20px; border-radius: 15px; background: #F9F9F9; }
#faq_section .inq_wrap .btn_call .left {display: flex; align-items: center; gap: 6px;}
#faq_section .inq_wrap .btn_call .left i {width: 18px; height: 18px; background: url('/image/web/icon_cs_call@2x.png') no-repeat center / 20px 20px;}
#faq_section .inq_wrap .btn_call .left span {font-size: 16px; font-weight: 600;}
#faq_section .faq_wrap {}
#faq_section .faq_wrap h3 {font-size: 18px; font-weight: bold; }
#faq_section .faq_wrap .ca_group {display: flex; align-items: center; gap: 10px; padding-top: 20px; padding-bottom: 10px; }
#faq_section .faq_wrap .ca_group a {display: flex; align-items: center; width: auto; height: auto; padding: 8px 20px; border-radius: 17px; background: #F9F9F9; color: #666; font-size: 14px; font-weight: 500;}
#faq_section .faq_wrap .ca_group a.on {border: 1px solid #E50019; background: #FFF; color: #E50019; }
#faq_section #faq_ul {}
#faq_section #faq_ul li {border-bottom: 1px solid #F1F1F1; }
#faq_section #faq_ul li .question {display: flex; align-items: center; gap: 20px; padding: 30px 0; cursor: pointer;}
#faq_section #faq_ul li .question .ca_name {min-width: 80px; font-size: 16px; font-weight: bold;} 
#faq_section #faq_ul li .question .subj {flex: 1; font-size: 16px; font-weight: 500;} 
#faq_section #faq_ul li .question i {width: 12px; height: 12px; background: url('/image/web/icon_faq_arrow@2x.png') no-repeat center / 14px 14px; }
#faq_section #faq_ul li .answer {display: none; line-height: 1.3em; padding: 20px; border-radius: 10px; background: #F9F9F9; font-size: 16px; font-weight: 500;}

#faq_section #faq_ul li.on {border-bottom: 0; }
#faq_section #faq_ul li.on .question i {transform: rotate(-180deg)}
#faq_section #faq_ul li.on .answer {display: block; }

#faq_section #faq_ul li.empty_li {display: flex; justify-content: center; align-items: center; padding: 40px 0; border-bottom: 0; text-align: center; font-weight: 500;}



/** modal - common */
.sys_modal {display: none; justify-content: center; align-items: center; position: fixed; top: 0; left: 0; width: 100%; height: 100%; z-index: 200;}
.sys_modal .overlay {position: absolute; top: 0; left: 0;}
.sys_modal .modal_content {display: flex; flex-direction: column; position: relative; border-radius: 17px; background: #FFF; overflow: hidden; }
.sys_modal .mod_cont_head {display: flex; justify-content: center; align-items: center; }
.sys_modal .mod_cont_head h3 {font-size: 18px;}
.sys_modal .mod_cont_head .btn_close {position: absolute; top: 50%; right: 0; transform: translate(0, -50%);}
.sys_modal .mod_cont_body {display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 30px 20px; }
.sys_modal .mod_cont_body .msg {line-height: 1.3em; text-align: center; font-size: 16px; font-weight: bold; word-wrap: break-word; word-break: keep-all;}
.sys_modal .mod_cont_body .caution {margin-top: 10px; line-height: 1.3em; text-align: center; color: #E50019; font-size: 14px; font-weight: 500;}
.sys_modal .mod_cont_foot {display: flex; justify-content: center; border-top: 1px solid #EBEBEB; }
.sys_modal .mod_cont_foot button {flex: 1; height: 56px; border-radius: 0; font-size: 16px; font-weight: bold; }



/** modal - post option */
#modal_option_sheet .modal_content {border-radius: 17px 17px 0 0; }
#modal_option_sheet .mod_cont_head {display: none; padding: 20px; }
#modal_option_sheet .mod_cont_head .pan_handler {display: block; width: 36px; height: 4px; margin: 0 auto; border-radius: 2px; background: #DBDBDB; }
#modal_option_sheet .mod_cont_head .btn_close {right: 20px; }
#modal_option_sheet .mod_cont_body {padding: 0 0 30px; }
#modal_option_sheet .btn_mod_option {height: 50px; font-size: 18px; font-weight: 500;}
#modal_option_sheet .fn_del {color: #999; }



/** modal - alert */
#modal_alert {z-index: 400;}



/** modal - confirm */
#modal_confirm {z-index: 300;}



/** modal - term */
#modal_term {}
#modal_term .modal_content {height: 100%; padding: 20px; border-radius: 0; }
#modal_term .mod_cont_body {flex: 1; display: block; margin-top: 20px; overflow: auto; }
#modal_term .term_content {display: none; }
#modal_term .term_content.on {display: block; }



/** modal - calendar */
.modal_sheet {align-items: flex-end; }
.modal_sheet .modal_content {border-radius: 10px 10px 0 0; }
.modal_sheet .pan_area {padding-top: 20px; padding-bottom: 20px; }
.modal_sheet .pan_area span {display: block; width:36px; height: 4px; margin: 0 auto; border-radius: 4px; background: #DBDBDB; }
.modal_sheet .mod_cont_head {margin-bottom: 20px; }
.modal_sheet .mod_cont_head h4 {text-align: center; }
.modal_sheet .mod_cont_head .btn_close {right: 20px; }
.modal_sheet .mod_cont_body form {width: 100%; }

.modal_calendar .cal_layout {width: 100%; max-width: 340px; margin: 0 auto; }
.modal_calendar .modal_content {height: 90vh;}
.modal_calendar .mod_cont_body {flex: 1; padding: 30px 0; overflow: hidden;}
.modal_calendar .mod_cont_body form {flex: 1; display: flex; flex-direction: column; overflow: hidden; user-select: none; -webkit-user-select: none;}
.modal_calendar .mod_cont_body .cal_row {display: flex; align-items: center; gap: 10px; margin-bottom: 10px; }
.modal_calendar .mod_cont_body .cal_row:last-child {margin-bottom: 0; }
.modal_calendar .mod_cont_body .cal_row .date_cell {
	display: flex; justify-content: center; align-items: center; 
	position: relative; width: calc((100% - 60px) / 7); border-radius: 10px; font-size: 16px; font-weight: 500;
}
.modal_calendar .mod_cont_body .cal_row .date_cell:before {display: block; clear: both; content: ''; padding-bottom: 100%; }
.modal_calendar .mod_cont_body .cal_row .date_cell:nth-of-type(1) {color: #E53E30;}
.modal_calendar .mod_cont_body .cal_row .date_cell.disabled {color: #CCC; cursor: default; }
.modal_calendar .mod_cont_body .cal_row .date_cell.holiday {color: #E53E30;}
.modal_calendar .mod_cont_body .cal_row .date_cell.today {font-weight: 900;}
.modal_calendar .mod_cont_body .cal_row .date_cell.selected {background: #E50019; color: #FFF; }
.modal_calendar .mod_cont_body .cal_row .date_cell.belong {background: #E5001933; color: #FFF; }
.modal_calendar .mod_cont_body .cal_row .date_cell span {position: absolute; left: 50%; transform: translateX(-50%);}
.modal_calendar .mod_cont_body .week_header {margin-bottom: 10px; font-size: 16px; font-weight: 500;}

.modal_calendar .mod_cont_body .calendar_list {flex: 1; border-top: 1px solid #F1F1F1; margin-bottom: 20px; overflow: auto; }
.modal_calendar .mod_cont_body .calendar_list .month_name {padding: 20px 40px; font-size: 18px; }
.modal_calendar .mod_cont_body .calendar_list .date_cell {cursor: pointer;}

.modal_calendar .btn_submit .text_wrap {display: flex; justify-content: center; align-items: center; flex-wrap: wrap; }



/** modal - sch */
#modal_sch_place {}
#modal_sch_place .modal_content {padding: 20px; }
#modal_sch_place .mod_cont_body {flex: 1; max-height: 90vh; padding: 0; }
#modal_sch_place #sch_result {flex: 1; display: flex; flex-direction: column; gap: 10px; width: 100%; overflow: auto;}
#modal_sch_place #sch_result li {display: flex; align-items: center; gap: 10px; width: 100%; }
#modal_sch_place #sch_result li .img_area {width: 80px; height: 80px; border-radius: 5px; overflow: hidden;}
#modal_sch_place #sch_result li .img_area img {width: 100%; height: 100%; object-fit: cover; }
#modal_sch_place #sch_result li .img_area img[src=""] {display: none;}
#modal_sch_place #sch_result li .info_area {flex: 1; }
#modal_sch_place #sch_result li .info_area .lc_info {margin-bottom: 10px; }
#modal_sch_place #sch_result li .info_area .lc_info .lc_subject {font-size: 16px; font-weight: bold; }
#modal_sch_place #sch_result li .info_area .lc_info .lc_cat {font-size: 14px; }
#modal_sch_place #sch_result li .info_area .lc_addr {color: #666; font-size: 14px; }
#modal_sch_place #sch_result li button {width: auto; height: auto; padding: 7px 15px; border-radius: 20px; background: #F0F0F0; font-weight: 500;}
#modal_sch_place #sch_result li.empty_li {justify-content: center; padding: 40px 0; text-align: center; font-weight: 500;}

.form_search {width: 100%; margin-top: 30px; margin-bottom: 30px; }
.field_sch_wrap {position: relative; width: 100%;}
.field_sch_wrap .field_text {border: 1px solid #000; border-radius: 50px; }
.field_sch_wrap .field_text input {padding-right: 60px; padding-left: 30px; }
.field_sch_wrap .btn_sch {position: absolute; top: 50%; right: 15px; transform: translate(0, -50%); width: 28px; height: 28px; background: url('/image/web/icon_sch@2x.png') no-repeat center / 28px 28px; }



/** modal - modal_people */
#modal_people {}
#modal_people .modal_content {padding: 30px 20px; }
#modal_people .mod_cont_body {padding: 0; } 
#modal_people .mod_cont_body {}
#modal_people .mod_cont_body form {width: 100%;}
#modal_people .mod_cont_body ul {display: flex; flex-direction: column; gap: 20px; margin: 30px 0; }
#modal_people .mod_cont_body ul li {display: flex; justify-content: space-between; align-items: center;}
#modal_people .mod_cont_body ul span {font-size: 16px; font-weight: bold; }
#modal_people .mod_cont_body ul div {display: flex; align-items: center; }
#modal_people .mod_cont_body ul div button {width: 28px; height: 28px; border-radius: 14px; background: #E50019; font-size: 0; overflow: hidden;}
#modal_people .mod_cont_body ul div button[disabled] {background: #E50019; opacity: 0.3; }
#modal_people .mod_cont_body ul div button img {width: 20px; height: 20px; object-fit: cover;}
#modal_people .mod_cont_body ul div input {width: 50px; text-align: center; font-size: 16px; font-weight: 500;}



/** modal - location */
#modal_location {}
#modal_location .btn_close_w {position: absolute; bottom: 100%; right: 20px; margin-bottom: 20px; border-radius: 0; }
#modal_location .modal_content {max-height: 75vh; }
#modal_location .location_area {flex: 1; display: flex; width: 100%; overflow: hidden; }
#modal_location .location_area > div {flex: 1; display: flex; flex-direction: column; border-right: 1px solid #F5F5F5; }
#modal_location .location_area > div:last-child {border-right: 0; }
#modal_location .location_area > div > div {border-bottom: 1px solid #F5F5F5; }
#modal_location .location_area .loc_head {display: flex; justify-content: center; align-items: center; height: 50px; text-align: center; font-size: 16px; font-weight: bold; }
#modal_location .location_area .loc_body {flex: 1; overflow: hidden; }
#modal_location .location_area .loc_body ul {display: flex; flex-direction: column; gap: 10px; height: 100%; overflow: auto; padding: 15px; }
#modal_location .location_area .loc_body ul li {display: flex; justify-content: center; align-items: center; cursor: pointer; user-select: none; -webkit-user-select: none; }
#modal_location .location_area .loc_body ul li span {padding: 5px 12px; border-radius: 15px; text-align: center; font-size: 15px; font-weight: 600; word-wrap: break-word; word-break: keep-all; }
#modal_location .location_area .loc_body ul li.on span {background: #E50019; color: #FFF;}
#modal_location .select_area {display: flex; flex-wrap: wrap; gap: 10px; padding: 15px 20px 0; }
#modal_location .select_area li {display: flex; align-items: center; gap: 5px; padding: 5px; border: 1px solid #E50019; border-radius: 5px; user-select: none; -webkit-user-select: none;}
#modal_location .select_area li span {color: #E50019; font-size: 12px; font-weight: 600; cursor: default;}
#modal_location .select_area li button {width: 12px; height: 12px; background: url('/image/web/btn_del_loc@2x.png') no-repeat center / 10px 10px; }
#modal_location .button_area {padding: 30px; }



/** modal - my list */
#modal_my_list {}
#modal_my_list .modal_content {height: 100%; border-radius: 0; }
#modal_my_list .mod_cont_head {display: flex; justify-content: center; align-items: center; padding: 30px 20px; }
#modal_my_list .mod_cont_head h3 {font-size: 18px; font-weight: bold; }
#modal_my_list .mod_cont_head .btn_close {right: 20px; }
#modal_my_list .mod_cont_body {flex: 1; justify-content: stretch; align-items: initial; padding: 0 0 20px; overflow: hidden; }
#modal_my_list .mod_cont_body .caution_area {margin-bottom: 20px; }
#modal_my_list .mod_cont_body #my_list_area {display: flex; flex-direction: column; gap: 10px; width: 100%; height: 100%; overflow: auto; }
#modal_my_list .mod_cont_body #my_list_area label {display: block; position: relative; }
#modal_my_list .mod_cont_body #my_list_area label input {position: absolute; top: 50%; right: 0; transform: translate(0, -50%); width: 1px; height: 1px; margin: -1px; overflow: hidden; }
#modal_my_list .mod_cont_body #my_list_area .list_card {display: flex; align-items: center; gap: 20px; border: 1px solid #E6E6E6; border-radius: 8px; padding: 15px 20px; cursor: pointer; user-select: none; -webkit-user-select: none}
#modal_my_list .mod_cont_body #my_list_area .list_card .txt_area {flex: 1; }
#modal_my_list .mod_cont_body #my_list_area .list_card .txt_area .txt_top {display: flex; align-items: center; gap: 7px; }
#modal_my_list .mod_cont_body #my_list_area .list_card .txt_area .txt_top i {display: block; width: 22px; height: 22px; background: url('/image/web/icon_schedule@2x.png') no-repeat center / 22px 22px; }
#modal_my_list .mod_cont_body #my_list_area .list_card .txt_area .txt_top span {display: block; font-size: 18px; font-weight: 500;}
#modal_my_list .mod_cont_body #my_list_area .list_card .txt_area .txt_bot {margin-top: 10px; color: #666; font-size: 14px; font-weight: 500;}
#modal_my_list .mod_cont_body #my_list_area .list_card .chk_box {width: 22px; height: 22px; border-radius: 22px; background: url('/image/web/chk_on2@2x.png') no-repeat center / 22px 22px, #EDEDED;}
#modal_my_list .mod_cont_body #my_list_area label input:checked ~ .list_card .chk_box {background-color: #E50019;}

#modal_my_list .mod_cont_foot {}
#modal_my_list .mod_cont_foot button {height: 52px; }



/** modal - tour copy */
#modal_tour_copy {}
#modal_tour_copy .modal_content {height: 100%; border-radius: 0; }
#modal_tour_copy .mod_cont_head {display: flex; justify-content: center; align-items: center; padding: 30px 20px; }
#modal_tour_copy .mod_cont_head h3 {font-size: 18px; font-weight: bold; }
#modal_tour_copy .mod_cont_head .btn_close {right: 20px; }
#modal_tour_copy .mod_cont_body {flex: 1; justify-content: stretch; align-items: initial; padding: 0 0 20px; overflow: hidden; }
#modal_tour_copy .mod_cont_body .top {}
#modal_tour_copy .mod_cont_body h4 {margin-top: 40px; margin-bottom: 20px; padding-bottom: 10px; border-bottom: 2px solid #000; font-size: 16px; font-weight: bold; }
#modal_tour_copy .mod_cont_body #my_list_area {display: flex; flex-direction: column; gap: 10px; width: 100%; height: 100%; overflow: auto; }
#modal_tour_copy .mod_cont_body #my_list_area label {display: block; position: relative; }
#modal_tour_copy .mod_cont_body #my_list_area label input {position: absolute; top: 50%; right: 0; transform: translate(0, -50%); width: 1px; height: 1px; margin: -1px; overflow: hidden; }
#modal_tour_copy .mod_cont_body #my_list_area .list_card {
	display: flex; align-items: center; gap: 20px; border: 1px solid #E6E6E6; border-radius: 8px; padding: 15px 20px; cursor: pointer; 
	user-select: none; -webkit-user-select: none;
}
#modal_tour_copy .mod_cont_body #my_list_area .list_card .txt_area {flex: 1; }
#modal_tour_copy .mod_cont_body #my_list_area .list_card .txt_area .txt_top {display: flex; align-items: center; gap: 7px; }
#modal_tour_copy .mod_cont_body #my_list_area .list_card .txt_area .txt_top i {display: block; width: 22px; height: 22px; background: url('/image/web/icon_schedule@2x.png') no-repeat center / 22px 22px; }
#modal_tour_copy .mod_cont_body #my_list_area .list_card .txt_area .txt_top span {display: block; font-size: 18px; font-weight: 500;}
#modal_tour_copy .mod_cont_body #my_list_area .list_card .txt_area .txt_bot {margin-top: 10px; color: #666; font-size: 14px; font-weight: 500;}
#modal_tour_copy .mod_cont_body #my_list_area .list_card .chk_box {width: 22px; height: 22px; border-radius: 22px; background: url('/image/web/chk_on2@2x.png') no-repeat center / 22px 22px, #EDEDED;}
#modal_tour_copy .mod_cont_body #my_list_area label input:checked ~ .list_card .chk_box {background-color: #E50019;}



/** modal - room image */
#modal_all_image {}
#modal_all_image .modal_content {height: 100%; border-radius: 0; }
#modal_all_image .mod_cont_head {padding: 30px 20px; }
#modal_all_image .mod_cont_head .btn_close {right: 20px; }
#modal_all_image .mod_cont_body {flex: 1; justify-content: initial; padding: 30px 0 0; overflow: hidden;}
#modal_all_image .mod_cont_body #image_list {width: 100%; overflow: auto;}
#modal_all_image .mod_cont_body #image_list li {position: relative; margin-bottom: 10px;}
#modal_all_image .mod_cont_body #image_list li:last-child {margin-bottom: 0; }
#modal_all_image .mod_cont_body #image_list li:before {display: block; clear: both; content: ''; padding-bottom: 455px;}
#modal_all_image .mod_cont_body #image_list li img {position: absolute; top: 0; left: 0; width: 100%; height: 100%; object-fit: cover; }



/** modal - room info */
#modal_room_info .modal_content {max-height: 80vh; padding: 30px 20px; }
#modal_room_info .mod_cont_head {justify-content: initial; margin-top: -15px; padding: 15px 0; border-bottom: 2px solid #000; }
#modal_room_info .mod_cont_body {flex: 1; justify-content: initial; align-items: initial; margin: 0 -20px; padding: 0 20px; overflow: auto;}
#modal_room_info .mod_cont_body > div {padding: 20px 0 30px; border-bottom: 1px solid #999999; }
#modal_room_info .mod_cont_body > div:last-of-type {border-bottom: 0; }
#modal_room_info .mod_cont_body h4 {margin-bottom: 20px; font-size: 18px; font-weight: bold; }
#modal_room_info .mod_cont_body .info_area {color: #3A3A3A; font-size: 14px; }



/** modal - room seller info */
#modal_seller_info {}
#modal_seller_info .modal_content {padding: 30px 20px; }
#modal_seller_info .mod_cont_head {}
#modal_seller_info .mod_cont_body {justify-content: initial; }
#modal_seller_info .mod_cont_body ul {width: 100%; }
#modal_seller_info .mod_cont_body li {display: flex; margin-bottom: 10px; }
#modal_seller_info .mod_cont_body li:last-child {margin-bottom: 0; }
#modal_seller_info .mod_cont_body li b {flex: 1; line-height: 1.3em; color: #999; font-size: 16px;}
#modal_seller_info .mod_cont_body li span {flex: 3; line-height: 1.3em; font-size: 16px; font-weight: 500;}



/** modal - review image */
#modal_review_image {}
#modal_review_image .modal_content {max-height: 90vh;}
#modal_review_image .mod_cont_head {padding: 30px 20px; }
#modal_review_image .mod_cont_head .btn_close {right: 20px; }
#modal_review_image .mod_cont_body {flex: 1; justify-content: initial; align-items: initial; padding: 0 0 30px; overflow: hidden;}
#modal_review_image .mod_cont_body #image_list {width: 100%; flex: 1; overflow: auto;}
#modal_review_image .mod_cont_body li {text-align: center; }



/** modal - event */
#modal_event {}
#modal_event .modal_content {height: 100%; border-radius: 0; }
#modal_event .mod_cont_head {display: flex; justify-content: center; align-items: center; padding: 30px 20px; }
#modal_event .mod_cont_head .btn_close {right: 20px; }
#modal_event .mod_cont_body {flex: 1; justify-content: initial; align-items: initial; overflow: auto; padding: 30px 0; }
#modal_event .mod_cont_body img {width: 100%; height: auto; }



/** modal - add plan */
#modal_add_plan {}
#modal_add_plan .modal_content {height: 100%; border-radius: 0; }
#modal_add_plan .mod_cont_head {display: flex; justify-content: center; align-items: center; padding: 30px 20px; }
#modal_add_plan .mod_cont_head h3 {font-size: 18px; font-weight: bold; }
#modal_add_plan .mod_cont_head .btn_close {right: 20px; }
#modal_add_plan .mod_cont_body {flex: 1; justify-content: initial; align-items: initial; overflow: auto; }
#modal_add_plan .mod_cont_body #list_area {display: flex; flex-direction: column; gap: 10px; }
#modal_add_plan .mod_cont_body #list_area .list_card {padding: 15px 20px; border: 1px solid #E6E6E6; border-radius: 8px; cursor: pointer; user-select: none; -webkit-use-select: none; }
#modal_add_plan .mod_cont_body #list_area .list_card .txt_top {display: flex; align-items: center; gap: 7px; }
#modal_add_plan .mod_cont_body #list_area .list_card .txt_top i {display: block; width: 22px; height: 22px; background: url('/image/web/icon_schedule@2x.png') no-repeat center / 22px 22px; }
#modal_add_plan .mod_cont_body #list_area .list_card .txt_top span {display: block; font-size: 18px; font-weight: 500;}
#modal_add_plan .mod_cont_body #list_area .list_card .txt_bot {margin-top: 10px; color: #666; font-size: 14px; font-weight: 500;}
#modal_add_plan .mod_cont_body #list_area .list_card .select_wrap {display: none; margin-top: 10px}
#modal_add_plan .mod_cont_body #list_area .empty_card {display: flex; justify-content: center; align-items: center; padding: 40px; 0; text-align: center; font-weight: 500;}

#modal_add_plan .mod_cont_body #list_area .list_card.active {border: 1px solid #E50019; }
#modal_add_plan .mod_cont_body #list_area .list_card.active .select_wrap {display: block; }


/** modal - coupon select */
#modal_coupon {}
#modal_coupon .modal_content {height: 100%; border-radius: 0; }
#modal_coupon .mod_cont_head {margin-top: 30px; margin-bottom: 30px; }
#modal_coupon .mod_cont_head .btn_close {right: 20px; }
#modal_coupon .mod_cont_body {flex: 1; justify-content: initial; align-items: initial; padding: 0; overflow: auto; }
#modal_coupon .mod_cont_body #coupon_ul {display: flex; flex-direction: column; gap: 10px; padding-bottom: 30px; }
#modal_coupon .mod_cont_body #coupon_ul li label {display: block; position: relative; }
#modal_coupon .mod_cont_body #coupon_ul li label input[type="radio"] {position: absolute; width: 1px; height: 1px; margin: -1px; border: none; overflow: hidden; }
#modal_coupon .mod_cont_body #coupon_ul li .card {display: flex; align-items: center; gap: 20px; padding: 15px 20px; border: 1px solid #E6E6E6; border-radius: 8px; cursor: pointer; user-select: none; -webkit-user-select: none; }
#modal_coupon .mod_cont_body #coupon_ul li .card .left {flex: 1; }
#modal_coupon .mod_cont_body #coupon_ul li .card .subj {display: flex; flex-wrap: wrap; gap: 7px; }
#modal_coupon .mod_cont_body #coupon_ul li .card .subj i {display: block; width: 20px; height: 20px; background: url('/image/web/icon_coupon@2x.png') no-repeat center / 20px 20px;}
#modal_coupon .mod_cont_body #coupon_ul li .card .subj .text span {font-size: 18px; font-weight: 500; vertical-align: baseline; }
#modal_coupon .mod_cont_body #coupon_ul li .card .subj .text b {font-size: 18px; color: #E50019; }
#modal_coupon .mod_cont_body #coupon_ul li .card .period {margin-top: 10px; color: #666; font-size: 14px; font-weight: 500;}
#modal_coupon .mod_cont_body #coupon_ul li .card .right .chk_box {width: 22px; height: 22px; border-radius: 22px; background: url('/image/web/chk_on2@2x.png') no-repeat center / 22px 22px, #EDEDED;}
#modal_coupon .mod_cont_body #coupon_ul li input[type="radio"]:checked ~ .card .chk_box {background-color: #E50019; }
#modal_coupon .mod_cont_body #coupon_ul .empty_li {display: flex; align-items: center; justify-content: center; padding: 40px 0; font-weight: 500;}
#modal_coupon .mod_cont_foot {border: none; }




/** media hover */
@media (hover: hover){

	/** select */
	.sel_type_sfl .select_ul li:hover {border-color: #E50019 !important; z-index: 2;}
	.sel_type_sfl .select_ul li:hover span {color: #E50019; }
	.sel_type_sfl .select_ul li:hover span:after {display: none;}

	.sel_type1 .select_ul li:hover span {color: #E50019; }



	/** footer */
	footer .terms_ul li a:hover {color: #ccc; font-weight: bold; }



	/** bottom tab */
	.main_bot_tab .tab_wrap .tab_home:hover i {background: url('/image/web/tab_home_on@2x.png') no-repeat center;}
	.main_bot_tab .tab_wrap .tab_trip:hover i {background: url('/image/web/tab_trip_on@2x.png') no-repeat center;}
	.main_bot_tab .tab_wrap .tab_map:hover i {background: url('/image/web/tab_map_on@2x.png') no-repeat center;}
	.main_bot_tab .tab_wrap .tab_my:hover i {background: url('/image/web/tab_my_on@2x.png') no-repeat center;}
	.main_bot_tab .tab_wrap a:hover span {color: #E50019; font-weight: 600;}

}



/** responsive */
@media screen and (max-width: 767px) {
	/** common */
	body {background: #FFF; }



	/** sidebar */
	#side_menu .sidebar {right: 0; transform: translateX(0);}



	/** location - view - 숙소 */
	#loc_detail_section .tab_ul > li {flex: 1 0 calc(100% / 4); }



	/** order - form */
	#order_form_section .field_group {gap: 20px; }
	#order_form_section .box_area .rows {flex-direction: column; gap: 20px; }
}


@media screen and (max-width: 639px) {
	/** caution-box - common */
	.caution_box span {padding-left: 0; }



	/** sidebar */
	#side_menu .sidebar_top_info {padding: 30px 20px; }
	#side_menu .sidebar_top_info .mb_profile {margin-top: 30px; margin-bottom: 30px; }
	/* #side_menu .sidebar_top_info .mb_menu i {width: 24px; height: 21px; } */
	#side_menu .sidebar_top_menu {padding: 0 20px; }
	#side_menu .sidebar_top_menu li {padding: 0; }
	#side_menu .sidebar_top_logout {padding: 0 20px; }
	#side_menu .sidebar_top_logout a {padding: 20px 0; }
	#side_menu .sidebar_bot {padding: 20px 0; }


	/** gall list - common */
	#gall_ul > li {width: 100%; }



	/** location list - common */
	.location_list li {width: 100%;}


	
	/** location - view - common */



	/** location - view - 숙소 */
	#loc_detail_section .room_filter {flex-direction: column; }
	#loc_detail_section .room_filter .btn_period {flex: initial; }
	#loc_detail_section .room_filter .btn_people {flex: initial; }

	#loc_detail_section #faci_service .facilities div {width: calc((100% - 40px) / 3); }
	#loc_detail_section #faci_service .services div {width: calc((100% - 40px) / 3); }



	
	/** my - booking */
	#my_booking_section #booking_ul li {margin-bottom: 20px; padding-bottom: 20px; }
	#my_booking_section #booking_ul li .booking_num {position: static; width: 100%; text-align: right; }
	#my_booking_section #booking_ul li .img_area {width: 120px; }
	#my_booking_section #booking_ul li .text_area {flex-direction: column; }
	#my_booking_section #booking_ul li .btn {position: static; }
}


@media screen and (max-width: 425px) {
	/** header */
	.header_is_tab .tab_ul li a {font-size: 16px; }



	/** location - view - 숙소 */
	#loc_detail_section .tab_ul > li {flex: 1 0 calc(100% / 3); }

	#loc_detail_section .room_filter button {}

	#loc_detail_section #faci_service .facilities div {width: calc((100% - 20px) / 2); }
	#loc_detail_section #faci_service .services div {width: calc((100% - 20px) / 2); }



	/** order - form */
	#order_form_section .box_area .dl_wrap {gap: 20px;}
	#order_form_section .box_area dl {flex-direction: column; gap: 5px; }
	#order_form_section .box_area dl dd {text-align: initial; }



	/** tour - common */
	.tour_main .tour_top_tab li a {font-size: 16px; }



	/** order - result */
	#order_result_section .receipt_wrap .receipt dl {flex-direction: column; }
	#order_result_section .receipt_wrap .receipt dl dd {text-align: initial; }



	/** my - booking - view */
	#my_order_section .receipt_ul li {flex-direction: column; }



	/** point */
	#point_list_section .tab_ul li a {font-size: 16px; }



	/** dayplan list - common */
	#dayplan_ul .map_content {margin-left: -10px; margin-right: -10px; }
	#dayplan_ul .map_content:before {padding-bottom: calc((344 / 688) * 100%)}



	/** my - schedule detail */
	#my_schedule_detail_section .title_period span {font-size: 16px; }



	/** member edit */
	#edit_form_section .field_content button, #edit_form_section .field_content .btn {width: 100px; }

}


@media screen and (max-width: 375px) {
	.header_wrap .center img {height: 40px; }
	.header_wrap .hd_btn_wrap {gap: 12px;}



	.sel_type_sfl {width: 100%; }



	/** sch_wrap */
	.sch_wrap .keword_wrap {flex-direction: column; }
	.sch_wrap .sel_loc_wrap {width: 100%; }
	.sch_wrap .stx_wrap {flex: initial; width: 100%; }



	/** search - main */
	#search_main_section .curated_block {margin: 20px 0 30px; }
	#search_main_section .curated_block .cont a {max-width: auto;}


	/** modal - calendar */
	.modal_calendar .mod_cont_body .calendar_list .month_name {padding: 20px; }



	/** modal - location */
	#modal_location .modal_content {max-height: 70vh; }
}