@charset "utf-8";

/* *************************************************************************************
*
* 게시판 검색
*
* **************************************************************************************/

/* *************************************************************************************
* 
* 필터 검색
*  
* **************************************************************************************/
.filter_search {margin-bottom: 3.5rem;}
.filter_search .search_inner {padding: 0 3rem; background-color: #f6f3ff; border-radius: var(--border-radius-base);}
.filter_search .count {color: #dc4870;}
.filter_search .search_option {padding: 3rem 0; display: flex; align-items: center; flex-wrap: wrap; gap: 2rem; border-bottom: 1px solid var(--border-color);}
.filter_search .search_option.selected {border-bottom: 0;}
.filter_search .search_option.selected .option_list {width: calc(100% - 6rem); max-width: none;}
.filter_search .option_list {width: 100%;}
.filter_search .option_list.flex_row {display: flex; gap: 0 15rem; flex-wrap: wrap;}
.filter_search .item {display: flex; align-items: center; flex-wrap: wrap; gap: 2rem;}
.filter_search .item + .item {margin-top: 1rem;}
.filter_search .search_label {min-width: 10rem; font-size: 1.8rem; font-weight: 600; color: #333;}
.filter_search .search_check {display: flex; gap: 1rem; flex-wrap: wrap;}
.filter_search .search_check .checkbox_group {position: relative; margin-right: 0;}
.filter_search .search_check input {position: absolute; left: 0; top: 0; width: 100%; height: 100%; opacity: 0; cursor: pointer;}
.filter_search .search_check label {height: 5rem; line-height: 5rem; padding: 0 2rem; background-color: #fff; color: #555; font-weight: 500; border-radius: 1rem; cursor: pointer;}
.filter_search .search_check input:checked + label {background-color: var(--primary-color); color: #fff;}
.filter_search .search_check input:checked + label span {display: inline-block; padding-left: 2rem; background: url("../images/icon/ico_check.svg") left center no-repeat; background-size: 1.5rem;}
.filter_search .reset_btn {width: 4rem; height: 4rem; background: #fff url("../images/icon/ico_reset.png") center no-repeat; border-radius: 50%;}
.filter_search .selected_remove {display: flex; gap: 1rem; flex-wrap: wrap;}
.filter_search .selected_remove button {height: 4rem; line-height: 4rem; padding: 0 4rem 0 1.5rem; background: #fff url("../images/icon/ico_search_cancel.svg") right 1rem center no-repeat; color: #555; font-weight: 500; border-radius: 5rem;}
.filter_search .toggle_btn {width: 4rem; height: 4rem; transform: rotate(180deg); background: #333 url("../images/icon/arr_down_wh.svg") center no-repeat; background-size: 1.4rem; border-radius: 50%;}
.filter_search .toggle_btn.is-active {transform: rotate(360deg);}
.filter_search .mobile_only {display: none;}
.filter_search_btn {display: none;}

/* *************************************************************************************
* 
* 공지사항 게시판
*  
* **************************************************************************************/
.table_responsive {margin-top: 2rem; border-top: 2px solid var(--primary-color);}


/*목록*/
.board_none {margin: 3rem 0; color: #888; font-size: 1.8rem; font-weight: 500; text-align: center;}

.board_page {margin: 2.5rem 0; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap;}
.board_page .filter {display: flex;}
.board_page .filter_select {height: 4rem; color: #555; border-radius: 0.5rem;}
.filter_keyword {width: 100%; margin-bottom: 2rem;}
.filter_keyword .search_inner {display: flex; justify-content: right; gap: 0.8rem; flex-wrap: wrap;}
.filter_keyword .search_group {position: relative; width: 35rem;}
.filter_keyword .search_input {width: 100%; height: 4.5rem; padding: 0 1.5rem; border: 1px solid var(--border-color); border-radius: 1rem; box-sizing: border-box;}
.filter_keyword .search_submit {position: absolute; right: 1.5rem; top: 50%; transform: translateY(-50%); width: 3rem; height: 3rem; background: url("../images/icon/ico_search_pu.svg") right center no-repeat; background-size: 2.2rem;}
.mobile_search {display: none;}
.filter_check {margin-bottom: 3.5rem; padding: 0 3rem; background-color: #f6f3ff; border-radius: var(--border-radius-base);}
.filter_check .count {color: #dc4870;}
.filter_check .item {display: flex; align-items: center; flex-wrap: wrap; gap: 2rem;}
.filter_check .item + .item {margin-top: 1rem;}
.filter_check .search_label {min-width: 15rem; font-size: 1.8rem; font-weight: 600; color: #333;}
.filter_check .search_check {width: calc(100% - 17rem); display: flex; gap: 1rem; flex-wrap: wrap;}
.search_option {padding: 3rem 0; display: flex; align-items: center; flex-wrap: wrap; gap: 2rem; border-bottom: 1px solid var(--border-color);}
.search_option.selected {border-bottom: 0;}
.search_option.selected .option_list {width: calc(100% - 6rem); max-width: none;}
.search_option .option_list {width: 100%;}
.search_option .reset_btn {width: 4rem; height: 4rem; background: #fff url("../images/icon/ico_reset.png") center no-repeat; border-radius: 50%;}
.search_option .selected_remove {display: flex; gap: 1rem; flex-wrap: wrap;}
.search_option .selected_remove button {height: 4rem; line-height: 4rem; padding: 0 4rem 0 1.5rem; background: #fff url("../images/icon/ico_search_cancel.svg") right 1rem center no-repeat; color: #555; font-weight: 500; border-radius: 5rem;}
.search_wrapper {display: flex; gap: 0 2.5rem; flex-wrap: wrap;}
.search_wrapper .filter_check {background-color: #f5f7fa; border-radius: 1rem;}
.search_wrapper .search_option.selected {padding: 2rem 0;}
.search_wrapper .search_list {width: calc(100% - 41rem);}
#creatorSearchForm.is-loading .search_list {opacity: 0.55; pointer-events: none;}
.search_aside .search_sheet {width: 38.5rem;}
.search_aside .filter_check {padding: 2rem 2.5rem 5rem;}
.search_aside .search_option {padding: 0; border: 0;}
.search_aside .search_option.selected {padding: 2rem 2.5rem; background-color: #f5f7fa; border-radius: 1rem;}
.search_aside .option_list > li {padding: 3rem 0;}
.search_aside .option_list > li + li {border-top: 1px solid var(--border-color);}
.search_aside .search_label {margin-bottom: 2rem;}
.search_aside .search_check {width: 100%; gap: 1.5rem;}
.search_aside .checkbox_group {width: calc(50% - 0.75rem); margin-right: 0;}
.creator_list {display: flex; gap: 2rem; flex-wrap: wrap;}
.creator_list > li {position: relative; width: calc(100% / 3 - 1.33333rem); padding: 5rem 1.5rem 2rem; border: 1px solid var(--border-color); border-radius: 1rem; overflow: hidden;}
.creator_list > li::before {position: absolute; left: 0; top: 0; width: 100%; height: 10rem; background-color: #f1f3f6; content: '';}
.creator_list .profile {position: relative; width: 10rem; height: 10rem; margin: 0 auto 1.5rem; border-radius: 50%; background-color: #f7f7f7; overflow: hidden;}
.creator_list .profile img {position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover;}
.creator_list .info {margin-bottom: 1.5rem; text-align: center;}
.creator_list .name {display: block; margin-bottom: 1.5rem; font-size: 1.9rem; font-weight: 500;}
.creator_list .desc {color: #888; font-size: 1.6rem;}
.creator_list .sns_list {margin-bottom: 2rem; display: flex; justify-content: center; gap: 1rem; flex-wrap: wrap;}
.creator_list .sns_list > li {width: 3rem; height: 3rem; background: #f7f7f7; border-radius: 50%;}
.creator_list .sns_list > li > a {display: flex; justify-content: center; align-items: center; width: 100%; height: 100%;}
.creator_list .sns_list > li img {width: 1.6rem;}
.creator_list .sns_list > li.youtube {background: #ed332c;}
.creator_list .sns_list > li.youtube img {width: 1.6rem;}
.creator_list .sns_list > li.tiktok {background: #1a121f;}
.creator_list .sns_list > li.tiktok img {width: 2rem;}
.creator_list .sns_list > li.instagram {background: linear-gradient(185deg, #6d55a4 2%, #eb3485 30%, #ef3c5b 50%, #f1b854 100%);}
.creator_list .sns_list > li.facebook {background: #3d5b9b;}
.creator_list .data_list {display: flex; gap: 0.6rem; flex-wrap: wrap;}
.creator_list .data_list > li {width: calc(100% / 4 - 0.45rem); padding: 1rem 0.5rem; text-align: center; background-color: #edf0f3; border-radius: 1rem;}
.creator_list .data_list b {display: block; font-size: 1.6rem; font-weight: 500;}
.creator_list .data_list span {display: block; font-size: 1.2rem; color: #555;}
.creator_list .tag_list {padding-top: 0; border-top: 0;}
.creator_list .tag_list .item_list > li {color: #555; font-size: 1.4rem; font-weight: 400;}
.creator_list .basic_btn {margin-top: 2rem; gap: 1rem;}
.creator_list .basic_btn .btn {display: flex; width: calc(50% - 0.5rem); min-width: auto; padding: 0 1rem; align-items: center; justify-content: center; font-size: 1.6rem;}
.creator_list .basic_btn .primary {text-align: left;}

/*상세*/
.board_view:has(> .wrapper) {display: flex; align-items: flex-start; padding: 3rem 0; flex-wrap: wrap;}
.board_view .wrapper {display: flex; width: calc(100% - 38rem); margin-right: 3rem; flex-wrap: wrap;}
.board_view .board_info h3 {padding-bottom: 1.5rem; font-size: 2.9rem; font-weight: 600; border-bottom: 1px solid var(--border-color);}
.board_view .board_info .text {min-height: 20rem; padding: 2rem 0; color: #555; font-weight: 500;}
.board_view .board_info .tag {background-color: var(--primary-color); color: #fff;}
.board_view .board_detail {width: 100%; margin-top: 7rem; padding-top: 3rem; border-top: 1px solid var(--border-color); border-bottom: 1px solid var(--border-color);}
.board_view .tag_list .item_list {padding-top: 3rem;}
.table_responsive {margin-top: 2rem; overflow-x: auto; border-top: 1px solid var(--primary-color);}
.table_scroll {margin-top: 2rem;}
.basic_table {width: 100%; border-top: 1px solid var(--primary-color);}
.basic_table th {background-color: #f5f7fa; font-weight: 600;}
.basic_table th, .basic_table td {padding: 1.5rem; vertical-align: middle; text-align: center; border-bottom: 1px solid var(--border-color);}
.basic_table th + th {border-left: 1px solid var(--border-color);}
.basic_table td + td {border-left: 1px solid var(--border-color);}

.board_editor {color: #555;}
.board_editor .box {margin-bottom: 3rem; padding: 2rem; border: 1px solid var(--border-color);}
.board_editor .dl_list dt {width: 10rem; text-align: center;}
.board_editor .dl_list dd {width: calc(100% - 11rem);}
.board_editor .dl_list a {color: #3d8bfd; font-weight: 500; text-decoration: underline;}
.board_editor .map_frame {width: 100%; height: 53rem; border: 1px solid var(--border-color);}
.board_editor .map_frame iframe {width: 100%; height: 100%;}
.board_editor .textarea {width: 100%; height: 17rem; padding: 2rem; border: 1px solid var(--border-color); resize: none; box-sizing: border-box;}
.board_thumb {width: 65rem; margin-right: 5rem; padding-bottom: 3.5rem;}
.board_thumb .board_image {position: relative; display: block; width: 100%; height: 0; padding-top: 56.924%; overflow: hidden;}
.board_thumb .board_image img {position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover;}
.board_thumb + .board_info {width: calc(100% - 70rem);}
.board_thumb + .board_info .category {margin-bottom: 1rem;}
.board_thumb .board_view_slider {position: relative;}
.board_thumb .board_view_slider .item {position: relative; display: block; width: 100%; height: 0; padding-top: 56.924%; overflow: hidden;}
.board_thumb .board_view_slider .item img {position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover;}
.board_thumb .board_view_slider .slide_controls {position: absolute; left: 50%; bottom: -5rem; transform: translateX(-50%);}
.board_thumb .board_view_slider .swiper-pagination {background-color: transparent;}
.board_thumb .swiper-pagination {width: 100%; display: flex; align-items: center; justify-content: center; flex-wrap: wrap;}
.board_thumb .swiper-pagination-bullet {width: 1rem; height: 1rem; background-color: #888; opacity: 1;}
.board_thumb .swiper-pagination-bullet-active {width: 1.8rem; height: 1.8rem; background-color: var(--primary-color);}
.board_thumb .board_dl {position: relative; padding: 5rem 3rem; background-color: #f9f8fd; z-index: -1;}
.board_thumb .board_dl strong {display: block; margin-bottom: 1.5rem; font-size: 1.8rem;}
.board_view_list > li {padding: 3rem 0 5rem;}
.board_view_list > li:first-child {padding-top: 0;}
.board_view_list h4 {margin-bottom: 2.5rem; font-size: 2rem; font-weight: 600;}
.board_view_list .board_title {padding-left: 2.8rem; background-image: url("../images/icon/ico_arrow.png"); background-size: 1.8rem; background-position: left top 0.4rem; background-repeat: no-repeat;}
.board_detail .board_view_list > li + li, .reserve_detail .board_view_list > li + li {border-top: 1px solid var(--border-color);}

.aside_sticky {position: sticky; top: 15.5rem; right: 0; width: 35rem; padding: 2.5rem 1rem 1rem; background-color: #f1f3fb; border: 1px solid var(--border-color); border-radius: 1rem;}
.aside_sticky em {display: block; padding-left: 1rem; margin-bottom: 2rem; font-size: 2.1rem; font-weight: 600;}
.aside_sticky .item_list {padding: 0.5rem 1.5rem; background-color: #fff; border-radius: 1rem;}
.aside_sticky .item_list > li {display: flex; gap: 1rem; padding: 1.5rem 0;}
.aside_sticky .item_list > li + li {border-top: 1px solid var(--border-color);}
.aside_sticky .thumb {position: relative; width: 10rem; height: 0; padding-top: 28.525%; overflow: hidden;}
.aside_sticky .thumb img {position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover;}
.aside_sticky .thumb + .info {width: calc(100% - 11rem);}
.aside_sticky .info {width: 100%;}
.aside_sticky .info .tit {display: block; margin-bottom: 1.5rem; font-size: 1.5rem; font-weight: 500;}
.aside_sticky .category {margin-bottom: 1rem;}
.aside_sticky .tag {font-size: 1.2rem;}
.aside_sticky .meta_info {display: flex; align-items: center; gap: 1.5rem; flex-wrap: wrap;}
.aside_sticky .meta_info > li {font-size: 1.2rem; color: #555;}

/* *************************************************************************************
* 
* 작성 form
*  
* **************************************************************************************/
.basic_form {padding: 3rem 0; border-top: 1px solid var(--border-color);  border-bottom: 1px solid var(--border-color);}
.basic_form label {font-weight: 600;}
.basic_form .w100p {width: 100%;}
.basic_form .item {display: flex; align-items: center; gap: 1rem; flex-wrap: wrap;}
.basic_form .nowrap {flex-wrap: nowrap;}
.basic_form .form_title {display: block; margin-bottom: 1.5rem; color: var(--primary-color); font-size: 1.8rem; font-weight: 600;}
.basic_form .form_label {width: 14rem;}
.basic_form .form_label + .form_input {width: calc(100% - 15rem);}
.basic_form .form_list > li {margin-bottom: 1.2rem; min-height: 5rem; }
.basic_form input[disabled], .basic_form input[disabled] + label {opacity: 0.5;}

/* 소셜로그인 */
.basic_form .social_btn .btn {max-width: 17rem; width: 17rem; height: 5rem; line-height: 5rem;} 

/* 휴대폰 번호 입력 */
.basic_form .phone_input {display: flex; gap: 1.2rem;}
.basic_form .phone_input select {flex: 1;}
.basic_form .phone_input input {flex: 1; width: calc(100% / 3 - 0.8rem);}

/* 인증번호 */
.basic_form .verify_code {display: flex; align-items: center; gap: 1.2rem;}
.basic_form .verify_code input {width: calc(100% - 11.4rem);}
.basic_form .verify_code button {width: 10.2rem; height: 5rem; line-height: 5rem; border: 1px solid #222; border-radius: 1rem;}
.basic_form .verify_code .time {flex: 1; display: inline-flex; justify-content: center; color: #836dd9; font-size: 2rem; font-weight: 600;}

/* 프로필 사진 파일선택 */
.basic_form .profile_input {display: flex; gap: 1.2rem;}
.basic_form .profile_input .file_upload {width: calc(100% - 11.2rem);}
.basic_form .profile_input .file_select {position: relative; margin-bottom: 1rem; display: flex; align-items: center; gap: 1rem;}
.basic_form .profile_input .file_select label {position: relative; display: block; width: 10rem; height: 4rem; line-height: 4rem; font-weight: 500; background-color: #fff; border: 1px solid; border-radius: 0.8rem; text-align: center; cursor: pointer; z-index: 1;}
.basic_form .profile_input .file_select input[type="file"] {position: absolute; left: 0; top: 0; display: block; width: 1px; height: 1px;}
.basic_form .profile_input .file_select input[type="file"]:focus-visible {width: 100%; height: 100%; outline: 2px dashed var(--focus-color);}
.basic_form .profile_view {width: 10rem; height: 10rem; background: #f4f5f9 url("../images/icon/ico_profile.png") center no-repeat; border-radius: 1rem; overflow: hidden;}

/* 영상채널 추가 */
.basic_form .form_video {width: 100%;}
.basic_form .form_video .form_label {width: 100%; display: flex; align-items: center; justify-content: space-between;}
.basic_form .form_video button {width: 10rem; height: 5rem; line-height: 5rem; font-size: 1.6rem; font-weight: 500; text-align: center; border-radius: 1rem;}
.basic_form .form_video button span {display: inline-block; padding-left: 1.5rem; background-position: left center; background-repeat: no-repeat;}
.basic_form .form_video .file_btn.add {border: 1px solid;}
.basic_form .form_video .file_btn.remove {color: #555; background-color: #f4f4f4; font-weight: 500;}
.basic_form .form_video .file_btn.add span {background-image: url("../images/icon/ico_file_add.png");}
.basic_form .form_video .file_btn.remove span {background-image: url("../images/icon/ico_file_remove.png");}
.basic_form .form_video .form_url {margin-top: 0.8rem; display: flex; gap: 1.2rem;}
.basic_form .form_video .form_url input {width: calc(100% - 11.2rem);}
.basic_form .form_video .btn_confirm {background-color: #308ef6; color: #fff;}
.basic_form .form_video .btn_confirm span {background-image: url("../images/icon/ico_check.svg"); background-size: 1.4rem;}
.basic_form .form_video .btn_cancel {background-color: #ec587c; color: #fff;}
.basic_form .form_video .btn_cancel span {background-image: url("../images/icon/ico_close.svg"); background-size: 1.2rem;}

.form_notice {margin-bottom: 1rem; color: #555;}
.form_import {color: #dc4870; font-weight: 500;}
.form_import + .form_import {margin-top: 0.5rem;}

/* *************************************************************************************
* 
* 시설 & 장비 예약 - 목록
*  
* **************************************************************************************/
.reserve_list {display: flex; gap: 3rem; flex-wrap: wrap;}
.reserve_list > li {padding: 3rem; border: 1px solid var(--border-color); border-radius: var(--border-radius-base);}
.reserve_list .swiper-slide .item {position: relative; height: 0; padding-top: 67.86%; display: block; width: 100%;}
.reserve_list .swiper-slide img {position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover;}
.reserve_list .slide_controls {margin-top: 0.8rem;}
.reserve_list .box_tit {display: block; width: 100%; padding: 0.8rem; margin-bottom: 1.5rem; background-color: #eee; text-align: center; font-weight: 600; border-radius: 1rem;}
.reserve_list .info_area {display: flex; gap: 2.5rem; flex-wrap: wrap;}
.reserve_list .reserve_area {display: flex; gap: 2.5rem;}
.reserve_list .board_thumb {width: 28rem; margin-right: 0;}
.reserve_list .board_info {width: calc(100% - 30.5rem);}
.reserve_list .board_info .tit {display: block; margin-bottom: 1.5rem; font-size: 2rem; font-weight: 700;}
.reserve_list .board_info .desc {margin-bottom: 1.2rem; color: #555; font-weight: 500;}
.reserve_list .board_info .dl_list dd {color: #555;}
.reserve_list .notice_list {margin-bottom: 1.2rem;}
.reserve_list .reserve_apply {width: 32rem;}
.reserve_list .reserve_apply .apply_list {margin-top: 3rem; margin-bottom: 2rem;}
.reserve_list .reserve_apply .apply_list > li {display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap;}
.reserve_list .reserve_apply .apply_list > li + li {margin-top: 0.6rem;}
.reserve_list .reserve_apply .apply_list span {color: #555;}
.reserve_list .reserve_apply .apply_list b {font-weight: 600;}
.reserve_list .reserve_apply .apply_list .price {color: #222; font-weight: 600;}
.reserve_list .apply_btn {width: 100%; height: 6rem; line-height: 6rem; margin-top: 2.5rem; background-color: #fff; color: var(--primary-color); font-size: 1.8rem; font-weight: 600; text-align: center; border: 1px solid var(--primary-color); border-radius: 1rem;}
.reserve_list .apply_btn span {display: inline-block; padding-left: 3.8rem; background: url("../images/icon/ico_reserv.png") left center no-repeat; background-size: 2.9rem;}
.reserve_list .board_example {width: 22rem;}
.reserve_list .board_example iframe {position: absolute; left: 0; top: 0; width: 100%; height: 100%;}
.reserve_list .board_example .slide_controls {margin-top: 2rem; justify-content: center;}
.reserve_list .board_example .swiper-pagination {width: 6rem; height: 3rem; line-height: 3rem;}
.reserve_list .board_example .slide_btn {width: 3rem; height: 3rem;}
.reserve_list .board_example .slide_btn img {width: 0.6rem;}
.reserve_list.type_basic > li {width: calc(50% - 1.5rem);}
.reserve_list.type_detail > li {display: flex; width: 100%; gap: 2.5rem; flex-wrap: wrap;}
.reserve_list.type_detail .info_area {width: calc(100% - 59rem);}

/* 시설 & 장비예약 - 상세 */
.reserve_form .apply_btn {display: block; width: 100%; height: 6rem; line-height: 6rem; margin-top: 2.5rem; background-color: #fff; color: var(--primary-color); font-size: 1.8rem; font-weight: 600; text-align: center; border: 1px solid var(--primary-color); border-radius: 1rem;}
.reserve_form .apply_btn:disabled {background-color: #959595; border-color: #959595; color: #fff;}
.reserve_form .apply_btn span {display: inline-block; padding-left: 3.8rem; background: url("../images/icon/ico_reserv.png") left center / 2.9rem no-repeat;}
.reserve_view .wrapper {padding-bottom: 5rem; display: flex; align-items: flex-start; flex-wrap: wrap;}
.reserve_view .reserve_form {width: calc(100% - 70rem);}
.reserve_view .basic_form {padding: 0;}
.reserve_view .basic_form > li {padding: 2rem 0;}
.reserve_view .basic_form > li + li {border-top: 1px solid var(--border-color);}
.reserve_view .basic_form .item {align-items: flex-start;}
.reserve_view .basic_form .item + .item {margin-top: 1.5rem;}
.reserve_view .basic_form .form_input label {color: #555;}
.reserve_view .reserve_date {position: relative; display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; margin-bottom: 1rem; padding: 1.2rem 2rem; background-color: #eee; border-radius: 1rem;}
.reserve_view .reserve_date p {width: calc(100% - 5rem); font-weight: 600;}
.reserve_view .reserve_date .cancel_btn {width: 2.8rem; height: 2.8rem; background-color: #dc4870; background-image: url("../images/icon/ico_close.svg"); background-position: center; background-size: 1.2rem; background-repeat: no-repeat; border-radius: 50%;}
.reserve_view .agree_btn {width: 10rem; height: 4rem; border: 1px solid #888da6; text-align: center; border-radius: 1rem;}
.reserve_view .datepicker_input {position: relative; display: inline-block; width: 20rem; color: #555;}
.reserve_view .datepicker_input input[type="text"] {width: 100%; height: 5rem; padding: 0 4.5rem 0 1.5rem; color: #555; background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='21' height='22' viewBox='0 0 21 22'%3E%3Cg fill='none' stroke='%23005eb8' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='2.5' y='4.5' width='16' height='15' rx='1.5'/%3E%3Cpath d='M6.5 2.5v4M14.5 2.5v4M2.5 8.5h16'/%3E%3Cpath d='M6.5 12h1M10 12h1M13.5 12h1M6.5 15.5h1M10 15.5h1M13.5 15.5h1'/%3E%3C/g%3E%3C/svg%3E") right 1.5rem center / 21px 22px no-repeat; border: 1px solid #dbdbdb; border-radius: 1rem; box-sizing: border-box; cursor: pointer;}
.reserve_view .datepicker_input .ui-datepicker-trigger {position: absolute; right: 1.5rem; top: 50%; transform: translateY(-50%);}
.reserve_view .document_input {display: flex; margin: 1rem 0; flex-wrap: wrap;}
.reserve_view .document_input .file_name {width: calc(100% - 10rem);}
.reserve_view .document_input .upload_name {width: 100%; color: #555; border: 1px solid var(--primary-color); border-radius: 1rem 0 0 1rem;}
.reserve_view .document_input .file_select {position: relative;}
.reserve_view .document_input .file_select label {position: relative; display: block; width: 10rem; height: 5rem; line-height: 5rem; font-weight: 500; background-color: var(--primary-color); color: #fff; border-radius: 0 1rem 1rem 0; text-align: center; cursor: pointer; z-index: 1;}
.reserve_view .document_input .file_select input[type="file"] {position: absolute; left: 0; top: 0; display: block; width: 1px; height: 1px;}
.reserve_view .document_input .file_select input[type="file"]:focus-visible {width: 100%; height: 100%; outline: 2px dashed var(--focus-color);}
#rentalCalendarPage .reserve_view .possibleTimeList > ul {display: flex; gap: 0.8rem; flex-direction: column;}
#rentalCalendarPage .reserve_view .possibleTimeList li {margin: 0; padding: 0; border: 0; border-radius: 0;}
#rentalCalendarPage .reserve_view .possibleTimeList li.is-active {background-color: transparent;}
#rentalCalendarPage .reserve_view .possibleTimeList li > a {position: relative; display: inline-flex; width: auto; min-height: 2.4rem; padding-left: 3rem; align-items: center; justify-content: flex-start; color: #555;}
#rentalCalendarPage .reserve_view .possibleTimeList li > a::before {position: absolute; left: 0; top: 50%; width: 2rem; height: 2rem; border: 1px solid #aaa; border-radius: 50%; transform: translateY(-50%); content: '';}
#rentalCalendarPage .reserve_view .possibleTimeList li.is-active > a::after {position: absolute; left: 0.5rem; top: 50%; width: 1rem; height: 1rem; background-color: var(--primary-color); border-radius: 50%; transform: translateY(-50%); content: '';}
#rentalCalendarPage .reserve_view .possibleTimeList li.is-disable > a {color: #aaa; pointer-events: none;}
#rentalCalendarPage .reserve_view .possibleTimeList .state {display: none;}
#rentalCalendarPage .reserve_view.type_common .possibleTimeList > ul {display: flex; gap: 0 0.6rem; flex-direction: row; flex-wrap: wrap;}
#rentalCalendarPage .reserve_view.type_common .possibleTimeList li {display: inline-block; margin: 0 0 1rem;}
#rentalCalendarPage .reserve_view.type_common .possibleTimeList li > a {display: block; width: 10rem; height: 5rem; line-height: 5rem; padding: 0 1.5rem; color: #555; background-color: #fff; border: 1px solid var(--border-color); border-radius: 1rem; text-align: center; white-space: nowrap; box-sizing: border-box;}
#rentalCalendarPage .reserve_view.type_common .possibleTimeList .clock {white-space: nowrap;}
#rentalCalendarPage .reserve_view.type_common .possibleTimeList li > a::before,
#rentalCalendarPage .reserve_view.type_common .possibleTimeList li > a::after {display: none;}
#rentalCalendarPage .reserve_view.type_common .possibleTimeList li.is-active > a {color: #fff; background-color: var(--primary-color); border-color: var(--primary-color);}
#rentalCalendarPage .reserve_view.type_common .possibleTimeList li.is-active .clock {display: inline-block; padding-left: 2rem; background: url("../images/icon/ico_check.svg") left center / 1.5rem no-repeat;}
#rentalCalendarPage .reserve_view.type_common .possibleTimeList li.is-disable > a {color: #aaa; background-color: #f5f5f5; cursor: default;}
#ui-datepicker-div {width: 36rem; max-width: calc(100vw - 3rem); padding: 1rem; font-size: 1.8rem; box-sizing: border-box;}
#ui-datepicker-div .ui-datepicker-header {padding: 0.8rem 0;}
#ui-datepicker-div .ui-datepicker-title {line-height: 2.4rem;}
#ui-datepicker-div th {padding: 1rem 0.5rem;}
#ui-datepicker-div td {padding: 0.2rem;}
#ui-datepicker-div td span,
#ui-datepicker-div td a {padding: 0.7rem; text-align: center;}
.reserve_view.type_common .reserve_form .reserve_info {position: relative; display: flex; align-items: center; justify-content: space-between; margin-bottom: 1rem; padding: 1.2rem 2rem; background-color: #eee; border-radius: 1rem;}
.reserve_view.type_common .reserve_form .reserve_info p {width: calc(100% - 5rem); font-weight: 600;}
.reserve_view.type_common .reserve_form .reserve_info .cancel_btn {width: 2.8rem; height: 2.8rem; background: #dc4870 url("../images/icon/ico_close.svg") center / 1.2rem no-repeat; border-radius: 50%;}
.reserve_view.type_common .reserve_apply .apply_btn {margin-bottom: 0;}
.reserve_view .apply_btn {max-width: 23.5rem; margin: 4rem auto; background-color: var(--primary-color); color: #fff;}
.reserve_view .apply_btn span {background-image: url("../images/icon/ico_reserv_wh.png");}
.reserve_view .reserve_confirm {padding-top: 2.5rem; border-top: 1px solid var(--primary-color);}
.reserve_view .reserve_confirm em {display: block; margin-bottom: 2rem; font-size: 1.8rem; font-weight: 600;}
.reserve_view .board_example {position: relative; padding: 0 6.5rem;}
.reserve_view .board_example .item {position: relative; height: 0; padding-top: 58.912%; overflow: hidden;}
.reserve_view .board_example .item img, .reserve_view .board_example .item iframe {position: absolute; left: 0; top: 0; width: 100%; height: 100%; object-fit: cover;}
.reserve_view .board_example .slide_btn {position: absolute; top: 50%; transform: translateY(-50%);}
.reserve_view .board_example .slide_btn.prev {left: 0;}
.reserve_view .board_example .slide_btn.next {right: 0;}
.reserve_view .price {color: var(--primary-color); font-weight: 600;}
.reserve_view .reserve_detail {padding: 3rem 0; border-top: 1px solid var(--border-color); border-bottom: 1px solid var(--border-color);}
.reserve_view .board_view_list > li {padding: 3rem 0 5rem;}
.reserve_view .board_view_list > li:first-child {padding-top: 0;}
.reserve_view .board_view_list > li + li {border-top: 1px solid var(--border-color);}
.reserve_view .arrow_title {display: block; margin-bottom: 2.5rem; padding-left: 2.8rem; color: #222; background: url("../images/icon/ico_arrow.png") left top / 1.8rem no-repeat;}
.reserve_view .board_editor, .reserve_view table td {color: #555;}
.reserve_process {width: 100%; margin-bottom: 7rem; background-color: #fff; border-radius: var(--border-radius-base); box-shadow: 0 7px 18px rgba(0, 0, 0, 0.1); overflow: hidden;}
.reserve_process .toggle_btn {position: relative; width: 100%; padding: 2.5rem 8rem 2.5rem 3rem; font-size: 1.8rem; font-weight: 600; text-align: left; background-color: #f5f7fa;}
.reserve_process .toggle_btn::before {position: absolute; right: 3rem; top: 2rem; width: 3.5rem; height: 3.5rem; background: #333 url("../images/icon/arr_down_wh.svg") center / 1.4rem no-repeat; border-radius: 50%; transition: transform 0.3s; content: '';}
.reserve_process .toggle_btn.is-open::before {transform: rotate(180deg);}
.reserve_process .toggle_cnt {padding: 3rem;}
.reserve_process .process_list {display: flex; justify-content: center; gap: 3rem; flex-wrap: wrap; overflow: hidden;}
.reserve_process .process_list > li {position: relative; width: calc(100% / 6 - 2.5rem); text-align: center;}
.reserve_process .process_list > li + li::before {position: absolute; left: -2.5rem; top: 2rem; width: 2rem; height: 2rem; background: url("../images/icon/arr_right_wh.svg") center no-repeat; filter: brightness(0) saturate(100%) invert(56.3%); content: '';}
.reserve_process .process_list .box {padding: 1.5rem 1rem; border: 1px solid #b1badb; border-radius: 1rem;}
.reserve_process .process_list .box.active {background-color: #eff2fd;}
.reserve_process .process_list .ico {display: inline-block; padding-left: 3.5rem; color: #252e57; font-size: 1.8rem; font-weight: 600; background-position: left center; background-size: 2.8rem; background-repeat: no-repeat;}
.reserve_process .process_list .apply {background-image: url("../images/icon/ico_process_apply.png");}
.reserve_process .process_list .wait {background-image: url("../images/icon/ico_process_wait.png");}
.reserve_process .process_list .complete {background-image: url("../images/icon/ico_process_complete.png");}
.reserve_process .process_list .pay {background-image: url("../images/icon/ico_process_pay.png");}
.reserve_process .process_list .calender {background-image: url("../images/icon/ico_process_calender.png");}
.reserve_process .process_list .use {background-image: url("../images/icon/ico_process_use.png");}
.reserve_process .process_list .desc {display: block; margin-top: 0.8rem; color: #555; font-size: 1.6rem; font-weight: 500;}

.partner_facility_search {margin-bottom: 4rem; padding: 3rem; background-color: #f7f8fa; border-radius: 1.6rem;}
.partner_facility_search .search_keyword {display: grid; grid-template-columns: auto minmax(18rem, 1fr) auto minmax(24rem, 2fr) 10rem; align-items: center; gap: 1.2rem;}
.partner_facility_search .search_keyword label, .partner_facility_search .filter_group > strong {font-weight: 700; color: #222;}
.partner_facility_search .search_keyword input {height: 5rem; padding: 0 1.6rem; background: #fff; border: 1px solid #d7dbe2; border-radius: 1rem;}
.partner_facility_search .search_btn, .partner_facility_search .apply_btn, .partner_facility_search .reset_btn {display: inline-flex; height: 5rem; padding: 0 2rem; align-items: center; justify-content: center; border-radius: 1rem; font-weight: 700;}
.partner_facility_search .search_btn, .partner_facility_search .apply_btn {background-color: var(--primary-color); color: #fff;}
.partner_facility_search .reset_btn {background-color: #fff; border: 1px solid #8d94a0; color: #333;}
.partner_facility_search .search_filters {margin-top: 2.5rem; padding-top: 2.5rem; border-top: 1px solid #dde0e5;}
.partner_facility_search .filter_group {display: flex; gap: 2rem;}
.partner_facility_search .filter_group + .filter_group {margin-top: 1.8rem;}
.partner_facility_search .filter_group > strong {width: 8rem; padding-top: .8rem; flex: 0 0 auto;}
.partner_facility_search .filter_values {display: flex; gap: 1rem 1.6rem; flex-wrap: wrap;}
.partner_facility_search .filter_actions {display: flex; justify-content: flex-end; gap: 1rem; margin-top: 2.5rem;}
.partner_facility_list > ul {display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 3rem;}
.partner_facility_list .facility_card {display: block; height: 100%; overflow: hidden; background: #fff; border: 1px solid var(--border-color); border-radius: 1.6rem; transition: transform .2s, box-shadow .2s;}
.partner_facility_list .facility_card:hover {transform: translateY(-.5rem); box-shadow: 0 1.2rem 3rem rgba(0, 0, 0, .1);}
.partner_facility_list .thumb {position: relative; padding-top: 62.5%; overflow: hidden; background-color: #f2f3f5;}
.partner_facility_list .thumb img {position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover;}
.partner_facility_list .info {padding: 2.2rem;}
.partner_facility_list .name {display: block; color: #222; font-size: 2.1rem;}
.partner_facility_list .region {display: inline-block; margin-top: 1rem; color: var(--primary-color); font-weight: 700;}
.partner_facility_list .address {min-height: 4.8rem; margin-top: .8rem; color: #666;}
.partner_facility_list .tags, .partner_facility_view .tags {display: flex; flex-wrap: wrap; gap: .7rem; margin-top: 1.5rem;}
.partner_facility_list .tags span, .partner_facility_view .tags span {padding: .6rem 1rem; background-color: #f0f3ff; border-radius: 2rem; color: #3658b5; font-size: 1.4rem;}
.partner_facility_view .facility_summary {display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(34rem, .85fr); gap: 5rem; padding: 3rem; background: #fff; border: 1px solid var(--border-color); border-radius: 2rem;}
.partner_facility_view .facility_gallery {position: relative; min-width: 0; overflow: hidden; border-radius: 1.5rem;}
.partner_facility_view .facility_gallery .swiper-slide {position: relative; padding-top: 62.5%; background: #f2f3f5;}
.partner_facility_view .facility_gallery img {position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover;}
.partner_facility_view .slide_controls {position: absolute; left: 0; bottom: 1.5rem; width: 100%; z-index: 2;}
.partner_facility_view .facility_info h3 {margin-bottom: 2rem; color: #222; font-size: 3rem; line-height: 1.3;}
.partner_facility_view .facility_info dl {display: grid; grid-template-columns: 8rem 1fr; gap: 1.2rem; padding: 1.5rem 0; border-bottom: 1px solid var(--border-color);}
.partner_facility_view .facility_info dt {font-weight: 700; color: #222;}
.partner_facility_view .facility_info dd {color: #555;}
.partner_facility_view .homepage_btn {display: inline-flex; height: 5rem; margin-top: 2.5rem; padding: 0 2.5rem; align-items: center; border-radius: 1rem; background-color: var(--primary-color); color: #fff; font-weight: 700;}
.partner_facility_view .facility_content {margin-top: 4rem; padding: 3rem 0; border-top: 1px solid var(--border-color); border-bottom: 1px solid var(--border-color);}
.partner_facility_view .facility_content h3 {margin-bottom: 2rem; font-size: 2.4rem; color: #222;}
.partner_facility_view .basic_btn {display: flex; justify-content: center; margin-top: 4rem;}
.partner_facility_view .basic_btn .btn {display: inline-flex; min-width: 14rem; height: 5rem; align-items: center; justify-content: center; border: 1px solid #555; border-radius: 1rem; font-weight: 700;}

.reservation_complete {max-width: 90rem; margin: 0 auto; padding: 6rem; background: #fff; border: 1px solid var(--border-color); border-radius: 2rem; text-align: center;}
.reservation_complete .complete_icon {display: block; width: 8rem; height: 8rem; margin: 0 auto 2rem; border-radius: 50%; background: var(--primary-color);}
.reservation_complete .complete_icon::after {display: block; width: 2.2rem; height: 4rem; margin: 0 auto; border: solid #fff; border-width: 0 .6rem .6rem 0; transform: translateY(1.4rem) rotate(45deg); content: '';}
.reservation_complete .complete_message h3 {font-size: 3rem; color: #222;}
.reservation_complete .complete_message p {margin-top: 1rem; color: #666;}
.reservation_complete .complete_summary {margin-top: 4rem; border-top: 2px solid #333; text-align: left;}
.reservation_complete .complete_summary dl {display: grid; grid-template-columns: 18rem 1fr; border-bottom: 1px solid var(--border-color);}
.reservation_complete .complete_summary dt, .reservation_complete .complete_summary dd {padding: 1.8rem 2rem;}
.reservation_complete .complete_summary dt {background-color: #f7f8fa; font-weight: 700; color: #222;}
.reservation_complete .complete_actions {display: flex; justify-content: center; gap: 1rem; margin-top: 4rem;}
.reservation_complete .complete_actions .btn {display: inline-flex; min-width: 15rem; height: 5rem; align-items: center; justify-content: center; border: 1px solid #555; border-radius: 1rem; font-weight: 700;}
.reservation_complete .complete_actions .primary {background-color: var(--primary-color); border-color: var(--primary-color); color: #fff;}

body.rental-terms-open {overflow: hidden;}
.rental_terms_modal {position: fixed; inset: 0; display: none; align-items: center; justify-content: center; padding: 2rem; z-index: 100;}
.rental_terms_modal.is-open {display: flex;}
.rental_terms_modal .terms_backdrop {position: absolute; inset: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, .6);}
.rental_terms_modal .terms_dialog {position: relative; display: flex; width: min(72rem, 100%); max-height: min(76rem, calc(100vh - 4rem)); flex-direction: column; overflow: hidden; background: #fff; border-radius: 1.6rem; z-index: 1;}
.rental_terms_modal .terms_header {display: flex; min-height: 7rem; padding: 2rem 7rem 2rem 2.5rem; align-items: center; border-bottom: 1px solid var(--border-color);}
.rental_terms_modal .terms_header h3 {font-size: 2.2rem; color: #222;}
.rental_terms_modal .terms_header .terms_close {position: absolute; right: 2.5rem; top: 2rem; width: 3rem; height: 3rem; background: url("../images/icon/ico_close.svg") center / 1.8rem no-repeat;}
.rental_terms_modal .terms_content {padding: 2.5rem; overflow-y: auto; color: #555;}
.rental_terms_modal .terms_actions {padding: 2rem; border-top: 1px solid var(--border-color); text-align: center;}
.rental_terms_modal .terms_actions .terms_close {min-width: 12rem; height: 4.8rem; padding: 0 2rem; background: var(--primary-color); border-radius: 1rem; color: #fff; font-weight: 700;}


/* *************************************************************************************
*
* 페이징
*
* **************************************************************************************/
.pagination {margin-top: 8rem; display: flex; justify-content: center; align-items: center; gap: 2rem 8rem;}
.pagination .paging {display: flex; gap: 0.5rem;}
.pagination .paging a {display: flex; width: 4.5rem; height: 4.5rem; align-items: center; justify-content: center; font-weight: 500; border-radius: 50%;}
.pagination .paging .page {background-color: #fff; background-position: center; background-repeat: no-repeat; border: 1px solid var(--border-color);}
.pagination .page.prev {transform: rotate(180deg);}
.pagination .page_select {display: flex; align-items: center; gap: 1rem;}
.pagination .page_select select {min-width: 8.5rem; height: 4.5rem; font-size: 1.6rem; border-radius: 5rem;}
.pagination .page_select .total {font-size: 1.5rem;}

/* *************************************************************************************
*
* 반응형
* 
* **************************************************************************************/
/* Only PC */
@media all and (min-width:1280px){
    .reserve_list .apply_btn:hover {background-color: var(--primary-color); color: #fff; transition: all 0.3s ease-in-out;}
    .reserve_list .apply_btn:hover span {background-image: url("../images/icon/ico_reserv_wh.png"); transition: all 0.3s ease-in-out;}
}

/* Laptop */
@media all and (max-width:1280px){
    .board_thumb {width: 43rem; margin-right: 2rem;}
    .board_thumb .board_dl {padding: 5rem 1.5rem 3rem;}
    .board_thumb + .board_info {width: calc(100% - 45rem);}
    /* 시설 & 장비예약 - 목록 */
    .reserve_list .board_thumb {width: 20rem;}
    .reserve_list .board_info {width: calc(100% - 22.5rem);}
    .reserve_list.type_detail .info_area {width: calc(100% - 34.5rem);}
    .reserve_list.type_detail .board_example {display: none;}
    .reserve_view .reserve_form {width: calc(100% - 45rem);}
    .reserve_process .process_list .ico {font-size: 1.5rem;}
}

/* Tablet */ 
@media all and (max-width:1024px){
    .table_scroll {overflow-x: auto;}
    .table_scroll table {min-width: 780px;}
    .board_view .wrapper {width: 100%;}
    .board_thumb {width: 38rem;}
    .board_thumb .dl_list dl + dl {margin-top: 2rem;}
    .board_thumb .dl_list dd {width: 100%;}
    .aside_sticky {display: none;}
    /* 시설 & 장비예약 - 목록 */
    .reserve_list {gap: 2rem;}
    .reserve_list > li {padding: 2rem;}
    .reserve_list.type_basic > li {width: calc(50% - 1rem);}
    .reserve_list.type_basic .info_area {width: 100%;}
    .reserve_list.type_basic .board_thumb {width: 100%;}
    .reserve_list.type_basic .board_info {width: 100%;}
    .reserve_list.type_basic .reserve_area {width: 100%;}
    .reserve_list.type_basic .reserve_apply {width: 100%;}
    .reserve_list .reserve_apply .apply_btn {margin-top: 3rem;}
    .reserve_view .reserve_form {width: calc(100% - 40rem);}
    .reserve_process .process_list > li {width: calc(100% / 3 - 2rem);}
    .partner_facility_list > ul {grid-template-columns: repeat(2, minmax(0, 1fr));}
    .partner_facility_view .facility_summary {grid-template-columns: 1fr;}
    .creator_list {gap: 1.5rem;}
    .creator_list > li {width: calc(50% - 0.777rem);}
    .creator_list .data_list > li {width: calc(50% - 0.3rem);}
    .pagination .paging .first, .pagination .paging .last {display: none;}
    .mobile_search {display: block;}
    .filter_search_btn .filter_btn {position: relative; width: 3rem; height: 3rem; background: url("../images/icon/ico_filter.svg") center no-repeat; background-size: 2.8rem;}
    .filter_search_btn .count {position: absolute; right: 0; top: -2.2rem; padding: 0.3rem 0.8rem 0.2rem; background-color: #dd4870; color: #fff; border-radius: 5rem; font-size: 1.2rem;}
    .search_wrapper .search_list {width: 100%;}
    .search_wrapper .search_list .filter_check {display: none;}
    .search_aside {display: none; position: fixed; left: 0; bottom: 0; width: 100%; height: 100%; z-index: 20;}
    .search_aside.is-open {display: block;}
    .search_aside.is-open::before {position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.6); content: '';}
    .search_aside .search_sheet {position: absolute; left: 0; bottom: 0; width: 100%; max-height: 90vh; overflow-y: auto;}
    .search_aside .filter_check {margin-bottom: 0; border-radius: var(--border-radius-base) var(--border-radius-base) 0 0;}
    .search_aside .search_header {display: flex; justify-content: space-between;}
    .search_aside .search_header .search_label {font-size: 2rem;}
    .search_aside .search_header .close_btn {width: 2.5rem; height: 2.5rem; background: url("../images/icon/ico_close.svg") center no-repeat; background-size: 2rem; filter: brightness(0) invert(0);}
    .search_aside .basic_btn {display: flex; margin-top: 3rem;}
    .creator_list .basic_btn .btn {font-size: 1.4rem;}
    .creator_list .basic_btn .primary {text-align: center;}
    .creator_list .basic_btn .pc_only {display: none;}
}

/* Mobile */
@media all and (max-width:780px){
    .board_thumb {width: 100%; margin-right: 0;}
    /* 필터검색 */
    .filter_search {display: none; position: fixed; left: 0; bottom: 0; width: 100%; height: 100%; margin-bottom: 0; z-index: 20;}
    .filter_search.is-open {display: flex; flex-direction: column; justify-content: end;}
    .filter_search::before {position: absolute; left: 0; bottom: 0; display: block; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.6); content: '';}
    .filter_search .mobile_only {display: flex;}
    .filter_search .search_header {justify-content: space-between;}
    .filter_search .search_header .search_label {font-size: 2rem;}
    .filter_search .search_header .close_btn {width: 2.5rem; height: 2.5rem; background: url("../images/icon/ico_close.svg") center no-repeat; background-size: 2rem; filter: brightness(0) invert(0);}
    .filter_search .search_inner {position: relative; padding: 3rem 2rem; border-radius: 3rem 3rem 0 0;}
    .filter_search .search_option.selected {display: none;}
    .filter_search .option_list {width: 100%;}
    .filter_search .item {width: 100%;}
    .filter_search .item + .item {margin-top: 3rem; padding-top: 3rem; border-top: 1px solid var(--border-color);}
    .filter_search .search_check {width: 100%;}
    .filter_search .search_check label {font-size: 1.5rem;}
    .filter_search .basic_btn {margin-top: 3rem;}
    .filter_search_btn {display: block; margin-bottom: 1.5rem; text-align: right;}
    .filter_search_btn .filter_btn {width: 3rem; height: 3rem; background: url("../images/icon/ico_filter.svg") center no-repeat; background-size: 2.8rem;}

    /* 시설 & 장비예약 - 목록 */
    .reserve_list.type_detail .info_area {width: 100%;}
    .reserve_list.type_detail .reserve_area {width: 100%;}
    .reserve_list.type_detail .reserve_apply {width: 100%;}
    .reserve_view .reserve_form {width: 100%;}
    .reserve_view .board_example {padding: 0 5rem;}
    .reserve_view .board_example .item {padding-top: 68.66%;}
    .reserve_process .process_list > li {width: calc(50% - 1.5rem);}
    .partner_facility_search {padding: 2rem;}
    .partner_facility_search .search_keyword {grid-template-columns: 1fr;}
    .partner_facility_search .filter_group {display: block;}
    .partner_facility_search .filter_group > strong {display: block; width: 100%; margin-bottom: 1rem;}
    .partner_facility_list > ul {grid-template-columns: 1fr;}
    .reservation_complete {padding: 4rem 2rem;}
    .reservation_complete .complete_summary dl {grid-template-columns: 11rem 1fr;}
    .board_page {border-bottom: 1px solid #555;}
    .board_page .page .result {display: none;}
    .board_page .filter_select {border: 0;}
    .creator_list > li {width: 100%;}
}

@media all and (max-width:480px){
    /* 작성폼 */
    .basic_form {padding: 2rem 0;}
    .basic_form .form_label {width: 100%;}
    .basic_form .form_label + .form_input {width: 100%;}
    .basic_form .form_list > li {margin-bottom: 3.5rem;}
    .basic_form .social_btn .btn {width: 100%; max-width: none;}
    .basic_form .phone_input {gap: 0.6rem;}
    .basic_form .verify_code {gap: 0.6rem;}
    .basic_form .profile_input .form_import {font-size: 1.4rem;}

    /* 시설 & 장비예약 - 목록 */
    .reserve_list.type_basic > li {width: 100%;}
    .reserve_list .board_thumb {width: 100%;}
    .reserve_list .board_info {width: 100%;}
    .partner_facility_view .facility_summary {padding: 2rem;}
    .partner_facility_view .facility_info h3, .reservation_complete .complete_message h3 {font-size: 2.4rem;}
    .reservation_complete .complete_summary dl {grid-template-columns: 1fr;}
    .reservation_complete .complete_summary dt, .reservation_complete .complete_summary dd {padding: 1.3rem 1.5rem;}
    .reservation_complete .complete_actions {flex-direction: column;}
    .pagination {gap: 2rem; justify-content: space-between;}
}
    .board_view .board_info {width: 100%; margin-top: 3rem; padding: 2rem; background-color: #f9f8fd;}
    .board_view .board_info h3 {font-size: 2.2rem;}
    .board_view .board_info .text {min-height: auto;}
    .board_view .board_detail {margin-top: 4rem;}
    .board_view .tag_list .item_list {padding-top: 2rem;}
    .board_view_list .board_title {padding-left: 2.2rem; background-size: 1.6rem; font-size: 1.8rem;}
    .board_view_list .board_editor .map_frame {height: 40rem;}
