@charset "utf-8";

/*
	** 콘텐츠 CSS
*/

/* 프로그램 */
.program-list {
    display:flex;
    flex-wrap:wrap;
    gap: 60px 40px;
    margin: 40px 0 60px;
}
.program-list .item {
    flex: 0 0 calc((100% - 120px) / 4);
    position:relative;
    box-shadow: 3px 3px 20px rgba(0,0,0,0.2);
    overflow: hidden;
    border-radius:20px 0 20px 0;
    transition: all 0.2s;
}
.program-list .item .item-img {
    position:relative;
    width:100%;
    height:0;
    padding-top:110%;
    overflow:hidden;
}
.program-list .item .item-img img {
    position:absolute;
    left:50%;
    top:0%;
    transform:translateX(-50%);
    width:100%;
    transition: all 0.2s;
}
.program-list .item .item-body {
    position:relative;
    background:#fff;
    padding:20px;
    border-radius:0 0 20px 0;
}
.program-list .item .item-body .title {
    font-size: 1.3em;
    font-weight: 600;
    margin-bottom: 10px;
}
.program-list .item .program-state {
    position:absolute;
    right:0;
    top:0;
}
.program-state {
    padding:10px;
    min-width:70px;
    text-align:center;
    color:#fff;
    background: #222;
    border-radius:0;
}
.state-progress .program-state,
.state-progress.program-state {
    background: var(--primary-color);
}
.state-pending .program-state,
.state-pending.program-state {
    background: var(--secondary-color);
}
.state-close .program-state,
.state-close.program-state {
    background: #222;
}
.program-list .item.state-close .item-img::after {
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:100%;
    background:rgba(0,0,0,0.4);

}
.program-list .item .item-body .item-contents
.program-list .item .item-body .item-contents .title {
    font-size:1.2em;
    font-weight:500;
    margin-bottom:10px;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-word;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    font-weight:700;
    height: 60px;
}
.program-list .item .item-body .item-contents .content p {
    position:relative;
    display:block;
    font-size: 0.9em;
    color:#999;
    padding-left:60px;
    text-overflow: ellipsis;
    height: 23px;
    overflow: hidden;
    white-space: nowrap;
}
.program-list .item .item-body .item-contents .content p .tit {
    position:absolute;
    left:0;
    display:inline-block;
    color:#333;
    margin-right:10px;
    width:55px;
}
.program-list .item .item-body .item-contents .content p .tit::after {
    content:"";
    position:absolute;
    display:inline-block;
    width:4px;
    height:4px;
    border-radius:100%;
    background:#9f9f9f;
    right:10px;
    top:50%;
    transform:translateY(-50%);
}
.program-list .item:hover {
    box-shadow: 10px 10px 20px rgba(0,0,0,0.2);
}
.program-list .item:hover .item-img img {
    transform:translateX(-50%) scale(1.1);
}
.program-list .item:hover .item-body .item-contents .title {
    color:var(--primary-color);
}

@media screen and (max-width:1200px) {
    .program-list .item {
        flex: 0 0 calc((100% - 80px) / 3);
    }
}
@media screen and (max-width:1024px) {
    .program-list {
        gap: 40px 20px;
    }
    .program-list .item {
        flex: 0 0 calc((100% - 40px) / 3);
    }
}
@media screen and (max-width:768px) {
    .program-list .item {
        flex: 0 0 calc((100% - 20px) / 2);
    }
    .program-list .item .item-body .item-contents .title {
        height: 50px;
    }
}
@media screen and (max-width:520px) {
    .program-list .item {
        flex: 0 0 100%;
    }
    .program-list .item .item-body .item-contents .title {
        height: 50px;
    }
}

/* 프로그램 - 상세 */
.summary_wrap {
    position:relative;
    display:flex;
    padding-bottom:40px;
    gap:40px;
}
.summary_wrap .summary_img {
    flex: 0 0 310px;
    height: 100%;
    position: relative;
    background: #efefef;
    display: flex;
    justify-content: center;
}
.summary_wrap .summary_img img {
    max-width: 100%;
    max-height: 600px;
}
.summary_wrap .program-state {
    position:absolute;
    left:0;
    top:0;
}
.summary_wrap .summary_body {
    position:relative;
    width:100%;
}
.summary_wrap .summary_body h1 {
    font-size:1.8em;
    font-weight:700;
    margin-bottom:20px;
}
.summary_wrap .summary_body .infos {
    display:flex;
}
.summary_wrap .summary_body .info {
    display:inline-block;
    margin-right:40px;
    color:#888;
}
.summary_wrap .summary_body .info .tit {
    display:inline-block;
    margin-right:10px;
    font-weight:500;
    color:#333;
}
.summary_wrap .summary_body .infos.type02 {
    border-top:2px solid var(--primary-color);
    margin:20px 0;
    display:flex;
    flex-wrap:wrap;
}
.summary_wrap .summary_body .infos.type02 .info {
    position:relative;
    width:100%;
    padding:15px 10px 15px 160px;
    border-bottom:1px solid #ccc;
    margin-right:0;
}
.summary_wrap .summary_body .infos.type02 .info .tit {
    position:absolute;
    left:0;
    top:0;
    width:140px;
    height:100%;
    padding:15px 20px;
    background:#efefef;
    border-right:1px solid #ccc;
}
.summary_wrap .summary_body .infos.type02 .info.wid50 {
    width:50%;
}
.summary_wrap .summary_body .button-wrap {
    justify-content: end;
}
.summary_wrap .summary_body .btn_wrap .btn {
    position:relative;
    flex:1;
    background:#fff;
    color:#666;
    border:1px solid #787878;
    border-radius:30px;
    padding:5px 20px ;
    text-align:center;
    min-width:150px;
}
.summary_wrap .summary_body .btn_wrap .primary {
    border-color:var(--primary-color);
    color:var(--primary-color);
}
.summary_wrap .summary_body .btn_wrap .btn:hover {
    background:#efefef;
}
.summary_wrap .summary_body .btn_wrap .primary:hover {
    background:var(--primary-color);
    color:#fff;
}
.summary_wrap .m-board-state {
    position:absolute;
    left:0;
    top:0;
    padding:10px;
    min-width:90px;
    text-align:center;
    color:#fff;
    border-radius:0;
}

.summary_wrap .board-view-file {
    border-bottom: none;
    padding:0 0 0 30px;
    min-height: 0;
}
.summary_wrap .board-icon-file::before {
    left: 0;
}
.summary_wrap .board-view-file .board-col {
    text-decoration: underline;
    font-size: 0.9em;
}
.summary_wrap .board-view-file .board-col:hover {
    color: #000;
}
.detail_wrap {
    min-height:200px;
    border-top:2px solid #efefef;
    border-bottom:2px solid #efefef;
    padding:30px 0;
}

@media screen and (max-width:1024px) {
    .summary_wrap .summary_img {
        flex: 0 0 250px;
    }
}

@media screen and (max-width:768px) {
    .summary_wrap {
        flex-direction: column;
        align-items: center;
    }
    .summary_wrap .summary_img {
        max-width: 300px;
    }
    .summary_wrap .summary_body .infos.type02 .info {
        padding: 10px 10px 10px 120px;
    }
    .summary_wrap .summary_body .infos.type02 .info .tit {
        padding: 10px 20px;
        width: 100px;
    }
    .summary_wrap .summary_body .infos {
        display: flex;
        flex-wrap: wrap;
    }
    .summary_wrap .summary_body .info {
        margin-right: 20px;
    }
    .summary_wrap .summary_body .button-wrap {
        justify-content: center;
    }
}


.apply_wrap {
    max-width:1200px;
    margin:0 auto 50px;
    border:1px solid #ddd;
    box-shadow:10px 10px 20px rgba(0,0,0,0.2);
    padding: 50px 80px;
    border-radius: 20px 0 20px 0;
}
.apply_head {
    border-bottom:2px solid var(--primary-color);
    padding-bottom:30px;
    margin-bottom:30px;
}
.apply_head h1 {
    font-size:1.8em;
    font-weight:600;
    text-align:center;
}
.apply_head .infos {
    text-align:center;
    padding-top:10px;
}
.apply_head .infos .info {
    font-weight:500;
    padding:0 10px;
}
.apply_head .infos .info .tit {
    display:inline-block;
    font-weight:400;
    color:#777;
    margin-right:10px;
}
.apply_info {
    margin-bottom:10px;
}
.apply_body .form-title {
    flex: 0 0 160px;
    font-weight: 500;
}
.apply_body .button-wrap-full .button-color-primary {
    flex: 0 0 70%;
}
@media screen and (max-width:1024px) {
    .apply_wrap {
        padding: 40px;
    }
}
@media screen and (max-width:768px) {
    .apply_wrap {
        padding:0 20px;
        border:none;
        box-shadow:none;
        border-radius:0;
    }
    .apply_head {
        border-top: 1px solid #ddd;
        padding-top:20px;
        margin-bottom:0;
    }
    .form_wrap .item .title {
        width:100px;
    }
    .form_wrap .item .form {
        width:calc(100% - 100px);
    }
    .form_wrap .item .form .hyphen {
        padding:0 5px;
    }
    .form_wrap .item .form .input_radio label {
        margin-right:15px;
    }
    .form_wrap .item .infoTxt.type02 {
        padding-left:100px;
    }
    .agree_wrap .agree_body.scroll_none  * {
        font-size: 14px;
    }
}
@media screen and (max-width:500px) {
    .apply_wrap {
        padding:0;
    }
    .form_wrap .item {
        display:block
    }
    .form_wrap .item .title {
        width:100% ;
        padding-bottom:5px;
    }
    .form_wrap .item .form {
        width:100% ;
    }
    .form_wrap .item .infoTxt.type02 {
        padding-left:0px;
    }
}

/* 시설대관 */
.facility_list .item {
    display: flex;
    gap: 0;
    position:relative;
    overflow: hidden;
    border-radius:20px 0 20px;
    box-shadow:0 0 20px rgba(0,0,0,0.2);
    margin-bottom:40px;
    min-height: 400px;
}
.facility_list .item .img {
    flex:0 0 50%;
    position:relative;
    overflow: hidden;
    min-height:100%;
    background: #efefef;
}
.facility_list .item .img img {
    position:absolute;
    top:50%;
    left:50%;
    transform: translate(-50%, -50%);
    min-height:100%;
    object-fit: cover;
}
.facility_list .item .text_box {
    display: flex;
    flex-flow: column;
    justify-content: space-between;
    width:100%;
    background:#fff;
    padding:30px 50px;
    gap: 25px;
}
.facility_list .item .text_box h4 {
    font-size:1.6em;
    font-weight:600;
}
.facility_list .item .text_box ul li {
    display:flex;
    padding:10px 0;
    border-bottom:1px solid #ddd;
}
.facility_list .item .text_box ul li:first-child {
    border-top:1px solid #ddd;
}
.facility_list .item .text_box ul .title {
    position: relative;
    flex:0 0 100px;
    font-weight:500;
}
.facility_list .item .text_box ul .title::after {
    content: "";
    position:absolute;
}
.facility_list .item .text_box .button-wrap {
    justify-content: flex-end;
    margin-top:0;
}
@media screen and (max-width:1024px) {
    .facility_list .item .text_box {padding:30px;}
}
@media screen and (max-width:768px) {
    .facility_list .item {flex-flow: column; min-height: 0;}
    .facility_list .item .img img {position: relative; top:0; left:0; transform: translate(0, 0); width: 100%;}
    .facility_list .item .text_box {padding:20px; gap: 15px;}
    .facility_list .item .text_box ul .title {flex:0 0 80px;}
    .facility_list .item .text_box .button-wrap {
        justify-content: center;
    }
}

.space-between {content:" "; margin:40px 0; border-top:1px solid #ccc;}

.area_new .facility_summary {margin-top:0;}

.facility_con_type02 {background-color:#fff; border:1px solid #ccc;}
.facility_con_type02 .content {padding:40px;}
.area_apply {}
.area_apply .section {margin-bottom:40px;}
.area_apply .facility_con {padding:40px 50px; background-color:#fff; border:1px solid #cccccc;}
.area_apply .facility_con .notice {font-size:0.9em;}
.facility_con.gray_back {background-color:#f1f1f1;}
.facility_con.gray_back p {color:#919191;}
.facility_con_type02.border-black {border:1px solid black; box-shadow:1px 1px 10px rgba(0,0,0,0.15);}
.area_apply .border-black  .subtitle_type02 {border-bottom:1px solid black;}
.area_apply .steps {position:relative; display:flex; padding:0; gap: 40px; border:none;}
.area_apply .steps::before {content:""; display:block; width:100%; height:1px; background-color:#ccc; position:absolute; top:50%; left:0; transform:translateY(-50%);}
.area_apply .step {display: flex; color:#999; font-weight:500; cursor:pointer; align-items: center;}
.area_apply .step .num {position: relative; background: #999; color: #fff; width: 40px; height: 40px; border-radius: 50%; display: flex; align-items: center; justify-content: center; line-height: 1; font-size: 0.9em;}
.area_apply .step .text {position: relative; background: #fff; padding:0 10px;}
.area_apply .step.active {flex: 1;}
.area_apply .step.active .num {background: var(--primary-color); color: #fff;}
.area_apply .step.active .text {color: var(--primary-color);}

@media screen and (max-width:1024px) {
    .facility_con_type02 .content {padding:30px;}
    .area_apply .facility_con {padding:20px;}
    .area_apply .section {margin-bottom:20px;}
}
@media screen and (max-width:768px) {
    .facility_con_type02 .content {
        padding: 20px;
    }
    .area_apply .steps::before {display: none;}
    .area_apply .step {display: none;}
    .area_apply .step.active {display: flex;}
}


.apply-select-wrap {display: flex; gap: 40px}
.apply-select-wrap .apply-select {width: 100%;}
.apply-select-wrap .apply-total {flex:0 0 360px;}
.apply-select-wrap .section {margin-bottom: 0;}

.area_apply .subtitle_type01 {margin-bottom:30px; font-size:30px; font-weight:500; text-align:center;}
.area_apply .subtitle_type01.underline {padding-bottom:30px; border-bottom:1px solid #d6d6d6;}
.area_apply .subtitle_type02 {padding:25px 50px; position:relative; font-size:20px; font-weight:500; background-color:#f1f1f1; border-bottom:1px solid #ccc;}
.area_apply .subtitle_type02 .img {margin-right:9px; position:relative;}
.area_apply .subtitle_type02 .box_refresh {position:absolute; top:50%; right:24px; transform:translateY(-50%);}
.area_apply .subtitle_type02 .box_refresh .hyphen {margin-left:5px; margin-right:9px; position:relative; top:-2px; font-size:13px;}
.area_apply .subtitle_type02 .box_refresh span {position:relative; font-size:14px; color:#999;}
.area_apply .subtitle_type02 .btn_refresh  {background-color:transparent; cursor:pointer;}
.area_apply .subtitle_type02 .btn_refresh .text {margin-left:2px; font-size:14px; font-weight:bold; color:#3a2288; }
.area_apply .subtitle_type02 .btn_refresh img {position:relative; top:-2px;}

@media screen and (max-width:1440px) {
    .apply-select-wrap {gap: 20px}
}

@media screen and (max-width:1024px) {
    .facility_summary{margin-top:-69px;}
    .photo_wrap .info{margin:0 50px -30px}
    .photo_wrap .info .info_txt{width:100%;}
    .photo_wrap .info ul{width:100%;}
    .photo_wrap .info ul li{width:100%; border-left:none; margin-bottom:10px;}
    .photo_wrap .thumb_wrap{margin:0 50px;}
    .apply-select-wrap {flex-flow: column;}
    .area_apply .subtitle_type02 {padding:20px 30px;}
    .slick-slide img {width:100%}
}
@media screen and (max-width:768px) {
    .photo_wrap .info{margin:0 0px 30px}
    .photo_wrap .thumb_wrap{margin:0;}
    .photo_wrap .thumb_wrap .slick-slide{height:80px;}
    .area_apply .subtitle_type02 {padding:20px;}
    .facility_con section{margin-bottom:40px;}
}
@media screen and (max-width:520px) {
    .photo_wrap .thumb_wrap{display:none;}
}

.area_apply .content_sub {padding:40px; background-color:#f1f1f1;}

.area_apply .alert {display:block; margin-bottom:20px; text-align:center;}
.area_apply .alert .img {margin-right:5px;}
.area_apply .alert .text {position:relative; top:1px; font-size:0.9em; font-weight:500;}

.area_apply .box_info {display:inline-block;}
.area_apply .box_info .title {display:inline-block; font-weight:500;}
.area_apply .infos .title {display:block; margin-bottom:10px;}

.area_apply .box_info .subtitle {display:block; position:relative; font-size:14px; font-weight:100; color:#a9a9a9;}
.area_apply .box_info .body {display:inline-block; padding:0;}
.area_apply .box_info.underline {padding-bottom:15px; border-bottom:1px solid #ccc;}
.area_apply .box_info .question img {display:none;}
.area_apply .box_info .question {display:inline-block; content:""; width:20px; height:20px; position:relative; margin-right:3px; cursor:pointer; background:url('../img/icon_question_circle.png') no-repeat; background-size:cover;}
.area_apply .box_info .question.active {background:url('../img/icon_question_circle_active.png') no-repeat; background-size:cover;}
.area_apply .box_info .answer {display:none; width:296px; max-height:560px; overflow-y:auto; padding:35px 35px 25px 35px; position:absolute; top:53px; right:50%; transform:translateX(50%); text-align:center; background-color:#3a3f4d; z-index:10;}
.area_apply .box_info .answer.point {width:242px; padding:20px 10px; top:35px; left:-249px; right:auto;}
.area_apply .box_info .answer.point .title {font-size:12px !important;}
.area_apply .box_info .answer.point .text {font-size:12px;}
.area_apply .box_info .answer.active {display:block; box-shadow:0px 3px 6px rgba(0,0,0,0.16);}
.area_apply .box_info .answer .title {width:unset; margin-right:0; font-size:18px !important; color:#fff;}
.area_apply .box_info .answer .detail {padding-bottom:10px;}
.area_apply .box_info .answer .detail:first-child {padding-top:10px;}
.area_apply .box_info .answer .text {display:block; margin-right:0; float:none; font-size:0.9em;}
.area_apply .box_info .answer .box {border-top:none; padding:0; background-color:#3a3f4d;}
.area_apply .box_info .answer .box02 {border-top:1px solid #c5c5c5; background-color:#3a3f4d;}

.area_apply .box_title {margin:60px auto; padding:0 30px; text-align:center;}
.area_apply .box_title .comment { text-align:center;}
.area_apply .box_title .title {display:inline-block; margin-bottom:10px; font-size:1.6em;; font-weight:500;}
.area_apply .box_title .check-circle {padding-left:55px;}
.area_apply .box_title .check-circle:before {width:35px; height:37px; top:50%; transform:translateY(-50%); background-size:100%;}

.area_apply .box_notice_type02 {position:relative; padding-left:43px;}
.area_apply .box_notice_type02:before {content:""; display:inline-block; width:23px; height:23px; position:absolute; top:50%; left:0; transform:translateY(-50%); background:url('../img/icon_notice_circle_gray.png') no-repeat;}

.area_apply .box_post .box_img {text-align:center;}
.area_apply .box_post .box_img img {display:inline-block; width:236px;}
.area_apply .box_post .title_main { display:block; margin:30px 0; float:none; font-size:22px; font-weight:500; text-align:center;}
.area_apply .box_post .box_info .title {width:83px; font-size:0.9em; margin-bottom:10px;}
.area_apply .box_post .box_info .body {margin-bottom:10px;}
.area_apply .box_post .answer {top:auto; bottom:37px;}
.area_apply .box_post .answer .title {width:auto;}
.area_apply .box_post .box_info .answer:before {top:auto; bottom:-10px;}

.table .box_post_type02:after {display:block; content:""; clear:both;}
.table .box_post_type02 .box_img {width:116px; float:left;}
.table .box_post_type02 .box_img img {width:100%;}
.table .box_post_type02 .box_text {margin-left:30px; padding-top:30px; float:left;}
.table .box_post_type02 .title_main {margin-bottom:33px; font-size:0.9em; font-weight:600;}
.table .box_post_type02 .body {padding:0; font-size:0.9em; color:#555; text-align:left;}

.area_apply .box_price {text-align: right;}
.area_apply .box_price .text {display:inline-block; margin-right:15px; position:relative; bottom:2px; font-weight:400;}
.area_apply .box_price .price {display:inline-block; font-size:1.6em;; font-weight:400;}

/* 특정 */
.area_apply .input_text {max-width:500px;}
.area_apply .box_times .box_info {display:inline-block; width:49%; text-align:center;}
.area_apply .box_calendar {text-align:center;}
.area_apply .box_calendar .box_info {display:inline-block;}
.area_apply .box_calendar .box_info .title {margin-right:14px;}
.area_apply .box_calendar .wave {margin:0 15px;}
.area_apply .box_calendar .input_date input {width:184px; height:auto; padding:13px 22px; line-height:normal;}
.area_apply .box_calendar.version01 .times {margin-top:30px; display: flex; flex-flow: wrap; gap: 15px;}
.area_apply .box_calendar.version01 .time {flex:0 0 calc((100% - 30px) / 3); cursor:pointer; box-sizing:border-box;}
.area_apply .box_calendar.version01 .time label {display:block; width:100%; padding:15px; box-sizing:border-box;  border:2px solid #d7d7d7; }
.area_apply .box_calendar.version01 .time label:before {display:none;}
.area_apply .box_calendar.version01 .time input:checked + label {border:2px solid var(--primary-color);}
.area_apply .box_calendar.version01 .time input:disabled + label {background-color:#f1f1f1; color:#999999;}
.area_apply .box_other {display:flex; flex-flow: wrap; gap: 20px;}
.area_apply .box_other .checkbox {flex:0 0 calc((100% - 40px) / 3);}
.area_apply .box_reservation {box-shadow:1px 1px 10px rgba(0,0,0,0.15);}
.area_apply .box_reservation .item {margin-top:10px; font-size:0.9em;}
.area_apply .box_reservation .item .point {margin-left:10px; font-size:14px; font-weight:100; color:#a9a9a9;}
.area_apply .box_pay .box_info {width:100%; margin-top:40px;}
.area_apply .box_pay .box_info:first-child {margin-top:0;}
.area_apply .box_pay .box_info .body { font-weight:500; float:right;}
.area_apply .box_pay .box_info .input_checkbox {margin-top:20px; font-size:0.9em;}
.area_apply .box_pay .box_info .input_checkbox label {font-size:0.9em; cursor:pointer;}
.area_apply .box_pay .box_info .input_checkbox .subtitle {display:inline-block; margin-left:7px;}
.area_apply .box_pay .box_top {min-height:300px; max-height:500px; overflow-y:auto; overflow-x:hidden;}
.area_apply .box_pay .box_bottom {padding-top:30px; border-top:1px solid #ccc;}
.area_apply .box_pay .box_bottom .btn_remove {display:none; margin-top:8px; padding:0 12px; font-size:14px; line-height:30px; color:#fff; background-color:red; border-radius:5px; border:none;}
.area_apply .box_pay .box_bottom .box_price .price {font-size:1.6em;; font-weight:600; color:var(--primary-color);}

@media screen and (max-width:1024px) {
    .area_apply .box_calendar.version01 .time {flex:0 0 calc((100% - 15px) / 2);}
}

.area_apply .box_reservator {text-align:left;}
.area_apply .box_reservator .box_info {margin-bottom:15px; display: inline-block; text-align:left;}
.area_apply .box_reservator .box_info:last-child {margin-bottom:0;}
.area_apply .box_reservator .box_info .title {width:160px; font-weight:300;}
.area_apply .box_reservator .box_info .title.point {position:relative; bottom:25px;}
.area_apply .box_reservator .box_info .input_text input {width:360px;}
.area_apply .box_reservator .box_info .input_three {width:360px;}
.area_apply .box_reservator .box_info .input_three input {width:100%;}
.area_apply .box_reservator .box_info .input_three select {border-radius:5px;}
.area_apply .box_reservator .box_info .input_text.with_btn input {width:100%;}
.area_apply .box_reservator .box_info .input_radios {width:360px;}
.area_apply .box_reservator .box_info .subtitle {width:360px; margin-top:5px; text-align:left;}
.area_apply .box_reservator .box_info.phone .title {position:relative; top:-15px;}
.area_apply .box_reservator .facility_con_type02 .content {padding:20px 0; margin:0 40px; }
.area_apply .box_reservator .facility_con_type02 .content .form-row:last-child {border-bottom: none;}
.area_apply .box_reservator .facility_con_type02 .content:last-child {border-bottom:none;}
.area_apply .section.place .box_info:after {display:block; content:""; clear:both;}
.area_apply .section.place .box_info {display:block; margin-top:10px;}
.area_apply .section.place .box_info:first-child {margin-top:0;}
.area_apply .section.place .box_info .title {width:100px; float:left;}
.area_apply .box_reservator .input_date {display:inline-block;}
.area_apply .box_reservator .input_date input {display:inline-block; max-width:500px; height:auto; line-height:normal; padding:13px 22px; max-width:171px;}
.area_apply .box_reservator input {border-radius:6px;}
.area_apply .date_performaance .title { position:relative; top:-32px;}
.area_apply .box_reservator .box_address .input_text {margin-bottom:10px;}
.area_apply .box_reservator .box_address .title {position:relative; top:-115px;}
.area_apply .box_reservator .box_number_performance .title {position:relative; top:-37px;}
.area_apply .box_file .title {position:relative; top:-45px;}
.area_apply .content02 .box_info .subtitle {width:100%;}
.area_apply .box_reservator .box_contents {display:block; margin-top:100px;}
.area_apply .box_reservator .box_contents .title {display:block; margin-bottom:15px;}
.area_apply .box_reservator .box_contents .body {display:block; width:100%;}
.area_apply .box_reservator .box_contents .input_textarea {width:100%;}
.area_apply .box_reservator .box_contents .input_textarea textarea {width:100%;}
.area_apply .box_reservator .gray_back {margin:20px 0;}
.area_apply .box_reservator .box_agree {display:block; border-bottom:1px solid #ccc; margin-bottom:0; padding:25px 50px;}
.area_apply .box_reservator .box_agree .check-circle:before {top:3px;}
.area_apply .box_reservator .box_agree .title {width:220px; float:left;}
.area_apply .box_reservator .box_agree .input_checkbox.check-circle label {padding-left:0; font-size:20px; font-weight:bold; cursor:pointer;}
.area_apply .box_reservator .box_agree .input_checkbox.check-circle input:checked + label:before {top:3px;}
.area_apply .box_reservator .box_agree .input_checkbox.check-circle input:checked + label:before {top:3px;}
.area_apply .box_reservator .box_agree a {font-weight:500;}

.area_apply .box_reservation_success .btn_finish {padding:0 45px;}
.area_apply .box_reservation_success .box_info {display:block; margin-top:15px;}
.area_apply .box_reservation_success .box_info .title {width:130px;  float:left;}
.area_apply .box_reservation_success .box_info .body .text { line-height:30px;}
.area_apply .box_reservation_success .box_info:first-child {margin-top:0;}
.area_apply .box_reservation_success .content_sub {position:relative;}
.area_apply .box_reservation_success .content_sub .box_price {position:absolute; top:50%; right:40px; transform: translateY(-50%);}
.area_apply .box_reservation_success .content_sub .box_price .text {margin-right:10px;  font-weight:400;}
.area_apply .box_reservation_success .content_sub .box_price .price {font-size:1.6em;; font-weight:400;}

.area_apply .box_reservation_perform .tab_content .subtitle {padding-top:3px; float:right; font-size:14px; color:#a9a9a9;}
.area_apply .box_reservation_perform .box_btns {margin-top:30px;}
.area_apply .box_reservation_perform .choice .content {max-height:500px; overflow-y:auto;}
.area_apply .box_reservation_perform .box_info {display:block;}


.area_apply .input_text .file_name {position:relative;}
.area_apply .input_text .file_name .btn_x {display: inline-block; position: absolute; right: 10px; top: 50%; transform: translateY(-50%); background: #f5f5f5; padding: 4px; cursor:pointer;}

.area_reservation_login {text-align:center;}
.area_reservation_login .wrap {width:360px; margin:0 auto;}
.area_reservation_login .title {margin-bottom:30px;}
.area_reservation_login .box_inputs {margin-bottom:15px; box-shadow:0px 3px 6px rgba(0,0,0,0.16); border-radius:15px; overflow:hidden;}
.area_reservation_login .input {height:60px; background-color:#fff; border-bottom:1px solid #e1e1e1;}
.area_reservation_login .input input {display:block; width:100%; padding-left:30px; height:60px; line-height:60px; border:none; border-bottom:1px solid #eee;}
.area_reservation_login .btn_blue {display:block; width:100%; margin-bottom:55px; padding:10px 0; font-size:17px; color:white; background-color:#00a1e9; border-radius:22.5px;}
.area_reservation_login .link:before {content:"|"; margin-left:5px; margin-right:8px; position:relative; top:-3px; font-size:10px; color:#ccc;}
.area_reservation_login .link:first-child:before {display:none;}
.area_reservation_login .box { padding-bottom:75px;}
.area_reservation_login .box_top {border-bottom:1px solid #ccc;}
.area_reservation_login .box_bottom {padding-top:80px;}
.area_reservation_login .comment {margin-bottom:37px; color:#999;}

.area_reservation_check {text-align:center;}
.area_reservation_check .wrap {width:360px; margin:0 auto;}
.area_reservation_check .title {margin-bottom:30px;}
.area_reservation_check .subtitle {margin-bottom:40px; color:#888;}
.area_reservation_check .box_inputs {margin-bottom:30px; box-shadow:0px 3px 6px rgba(0,0,0,0.16); border-radius:15px; overflow:hidden;}
.area_reservation_check .input {height:60px; background-color:#fff; border-bottom:1px solid #e1e1e1;}
.area_reservation_check .input input {display:block; width:100%; padding-left:30px; height:60px; line-height:60px; border:none; border-bottom:1px solid #eee;}
.area_reservation_check .btn_blue {display:block; width:100%; margin-bottom:55px; padding:10px 0; font-size:17px; color:white; background-color:#00a1e9; border-radius:22.5px;}
.area_reservation_check .tabs {margin-bottom:30px;}
.area_reservation_check .tab {margin:0 10px; padding:0; font-size:20px; font-weight:600; color:#bfbfbf; background-color:transparent; border:none;}
.area_reservation_check .tab.active {position:relative; color:#333; background-color:transparent;}
.area_reservation_check .tab.active:after {display:inline-block; content:""; width:100%; height:1px; position:absolute; bottom:-8px; left:0;  background-color:black;}

.area_performance .box_post .box_info {display:block;}
.area_performance .box_perform_info .box_img img {display:inline-block;}
.area_performance .box_reservation_perform .facility_con_type02 .content {min-height:495px;}
.area_performance .step {width:25%;}
.area_performance .width-33 {width:32.33%; margin-left:1.5%;}
.area_performance .box_choice_seat .width-33 {width:31.33%; margin-left:2%;}

.area_performance .box_btns {margin-top:30px;}
.area_performance .box_price {display:block; width:100%; margin-top:50px; padding-top:30px; border-top:1px solid #ccc; text-align:right;}
.area_performance .box_choice_seat .content_people .box_info {margin-left:35px;}
.area_performance .box_choice_seat .content_people .title {padding-top:10px; float:left;}
.area_performance .box_choice_seat .content_people .body {margin-left:12px; float:left;}

.area_performance .box_input_info .width-33 {margin-left:1%;}
.area_performance .box_input_info .width-66 .box_info {display:block; margin-top:17px;}
.area_performance .box_input_info .width-66 .box_info.phone .title {position:relative; top:-18px;}
.area_performance .box_input_info .width-66 .box_info:first-child {margin-top:0;}
.area_performance .box_input_info .width-66 .box_info .title {width:120px; font-weight:400;}
.area_performance .box_input_info .input_select select {width:240px;}
.area_performance .box_input_info .input_text input {width:234px;}
.area_performance .box_input_info .input_text.long input {width:343px;}
.area_performance .body .input_radio {position:relative; top:6px;}
.area_performance .body .input_radio label {cursor:pointer;}
.area_performance .input_three {width:344px;}
.area_performance .section_agree .check-circle:before {top:1px;}
.area_performance .section_agree .input_checkbox.check-circle input:checked + label:before {top:1px;}
.area_performance .section_agree .facility_con_type02 .content {padding:21px 40px;}

.area_performance .input_three .input input {width:100%; text-align:center;}
.area_performance .input_three .input select {width:100%;}

.area_performance .box_check_order .box_img {width:20%; margin-right:4%;}
.area_performance .box_check_order .box_text {width:76%;}
.area_performance .box_check_order .box_post .title_main {margin-top:0; text-align:left;}
.area_performance .box_check_order .box_info {display:block;}
.area_performance .box_check_order .box_price {padding:40px; background-color:#f1f1f1;}
.area_performance .box_check_order .box_price .price {display:inline-block;}
.area_performance .box_check_order .box_price .box_info {text-align:left;}
.area_performance .box_check_order .box_post .box_img img {width:100%;}

.area_about_reservation .contents_wrap {background-color:#fff;}
.area_about_reservation .facility_summary {background-color:#fff;}
.area_about_reservation .table .box_info {display:block; margin-top:7px;}
.area_about_reservation .table .box_info:first-child {margin-top:0;}
.area_about_reservation .table .box_info .title {width:90px;}
.area_about_reservation .table .td02 {text-align:center;}
.area_about_reservation .table .td02 .box_post_type02 {display:inline-block;}
.area_about_reservation .table .td02 .box_info {text-align:left;}

.area_about_reservation .box_reservation_performance_view .title_main {padding-bottom:25px; font-size:30px; font-weight:500; background-color:#fff;}
.area_about_reservation .box_reservation_performance_view .box {padding:45px; border-top:2px solid black;}
.area_about_reservation .box_reservation_performance_view .box02 {background-color:#fff}
.area_about_reservation .box_reservation_performance_view .box02 .body {float:right;}
.area_about_reservation .box_reservation_performance_view .box02 .price {font-size:1.6em;; font-weight:500;}
.area_about_reservation .box_reservation_performance_view .box02 .point {margin-right:5px; padding:1px 3px; font-size:14px; background-color:#d7d7d7;}
.area_about_reservation .box_reservation_performance_view .box02 .answer {top:auto; bottom:53px;}
.area_about_reservation .box_reservation_performance_view .box_parent {background-color:#f1f1f1; border-bottom:1px solid #ccc;}
.area_about_reservation .box_reservation_performance_view .box_info {display:block; margin-top:24px;}
.area_about_reservation .box_reservation_performance_view .box_info:first-child {margin-top:0;}
.area_about_reservation .box_reservation_performance_view .box_info .title {width:120px;}
.area_about_reservation .box_reservation_performance_view .box_info:after {display:block; content:""; clear:both;}

.area_about_reservation .box_reservation_performance_view .red {font-weight:500;}
.area_about_reservation .box_reservation_performance_view .icon_notice {display:block; margin-bottom:10px;}
.area_about_reservation .box_reservation_performance_view .box_agree {padding-top:23px; padding-bottom:25px; border-top:1px solid #ccc; border-bottom:1px solid #ccc;}
.area_about_reservation .box_reservation_performance_view .box_agree .title {width:auto; margin-left:40px;}
.area_about_reservation .box_reservation_performance_view .box_agree label {display:block; width:auto; padding-left:0; padding-top:6px; font-size:20px; font-weight:600;}
.area_about_reservation .box_reservation_performance_view .box_btns {margin-top:100px;}
.area_about_reservation .box_reservation_performance_view .box .box_btns {margin-top:30px;}
.area_about_reservation .box_reservation_performance_view .btn_print_see {width:175px; margin:0 10px; padding:5px 0; font-size:0.9em; color:#8f8f8f; background-color:#fff; border:1px solid #8f8f8f; cursor:pointer;}
.area_about_reservation .box_reservation_performance_view .btn_print_see .active {display:none;}
.area_about_reservation .box_reservation_performance_view .btn_print_see img {display:inline-block; position:relative; right:5px; top:-2px;}
.area_about_reservation .box_reservation_performance_view .btn_print_see .text {display:inline-block; position:relative;}
.area_about_reservation .box_reservation_performance_view .btn_print_see:hover {background-color:#8f8f8f;}
.area_about_reservation .box_reservation_performance_view .btn_print_see:hover .text {color:#fff;}
.area_about_reservation .box_reservation_performance_view .btn_print_see:hover img {display:none;}
.area_about_reservation .box_reservation_performance_view .btn_print_see:hover .active {display:inline-block;}
.area_about_reservation .box_reservation_performance_view .box_post_type02 {margin-bottom:100px; padding:27px 60px; border-top:2px solid black; border-bottom:1px solid #ccc;}
.area_about_reservation .box_reservation_performance_view .box_post_type02 .title_main {padding-bottom:0; margin-bottom:25px; font-size:1.6em;;}
.area_about_reservation .box_reservation_performance_view .box_post_type02 .box_info {margin-top:8px;}
.area_about_reservation .box_reservation_performance_view .box_post_type02:after {display:block; content:""; clear:both;}
.area_about_reservation .box_reservation_performance_view .box_post_type02 .box_img {width:236px; height:340px; float:left;}
.area_about_reservation .box_reservation_performance_view .box_post_type02 .box_img img {display:block; width:100%;}
.area_about_reservation .box_reservation_performance_view .box_post_type02 .box_text {display:inline-block; margin-left:60px; padding-top:30px;}
.area_about_reservation .box_reservation_performance_view .box_post_type02 .box_infos {margin-bottom:40px;}
.area_about_reservation .box_reservation_performance_view.view02 .box_info {margin-top:8px;}
.area_about_reservation .box_reservation_performance_view.view02 .box_info .question {float:right; position:relative; top:2px; right:5px;}
.area_about_reservation .pagination {margin-top:30px;}

.area_reservation_rental_view .box_reservation_performance_view .box_top {margin-bottom:95px; border-bottom:1px solid #ccc;}
.area_reservation_rental_view .box_reservation_performance_view.view02 .box_info {margin-top:20px;}
.area_reservation_rental_view .box_reservation_performance_view.view02 .box_info:first-child {margin-top:0;}
.area_reservation_rental_view .link {padding-bottom:4px; color:#3b87dc; text-decoration: underline;}
.area_reservation_rental_view .box_reservation_performance_view .box_info .title {width:182px; float:left;}
.area_reservation_rental_view .box_reservation_performance_view.view02 .box_info .question {font-size:1.6em;;}
.area_reservation_rental_view .box_reservation_performance_view .box02 {min-height:295px;}
.area_reservation_rental_view .box_reservation_performance_view .question .box02 {min-height:auto;}

.area_reservation_rental_cancel .box_info .title {float:left;}
.area_reservation_rental_cancel .box02 {min-height:485px;}
.area_reservation_step2 .content.point {padding:0; overflow-x:auto;}

/* ## 팝업 ## */
.pop-up {
	position: absolute;
	z-index: 9980;
	background: #fff;
	box-shadow: 2px 2px 10px rgba(0,0,0,0.25);
}
.pop-up .pop-up-body {
	width: 100%;
	height: 100%;
}
.pop-up .pop-up-body img {
	width: 100%;
	height: 100%;
}
.pop-up .pop-up-footer {
	width: 100%;
	height: 36px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-left: 12px;
	background: #555;
	color: #fff;
	font-weight: 300;
	font-size: var(--font-size-13);
	box-shadow: 2px 2px 10px rgba(0,0,0,0.25);
}
.pop-up .pop-up-footer .checkbox {
	--checkbox-size: 15px;
}
.pop-up .pop-up-close {
	background: #333;
	padding: 0 12px;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 0 6px;
	color: #fff;
	font-weight: 400;
}
.pop-up .pop-up-close::before {
	display: block;
	content:"\f00d";
	font-family: "Font Awesome 6 Pro";
	font-weight: 400;
	font-size: var(--font-size-20);
}
.pop-up.pop_window {
	width: 100% !important;
	height: auto !important;
	left: 0 !important;
	margin-left: 0;
	top: 0 !important;
}
@media screen and (max-width:767px) {
	.pop-up {
		width: 90% !important;
		height: auto !important;
		left: 50% !important;
		transform: translateX(-50%);
	}
	.pop-up .pop-up-footer {
		height: 34px;
	}
}

/* 공통 */
.card-group {
    display: flex;
}
.card-box {
    flex: 1;
    background-color: #fff;
    border: 1px solid #D2D6D3;
    border-radius: 16px ;
}
/* 카드 박스 패딩 종류 */
.card-box.pd-y32-x40 {
    padding: 32px 40px;
}
.card-box.pd-y32-x32 {
    padding: 32px;
}
.card-box.pd-y24-x32 {
    padding: 24px 32px;
}
.card-box.pd-y16-x16 {
    padding: 16px;
}
.card-box .card-title {
    font-weight: 600;
    font-size: var(--font-size-24);
    color: #1E1F1E;
    margin-bottom: 8px;
    display: flex;
    justify-content: space-between;
}
.card-box .title-area.bd-btm {
    border-bottom: 1px solid #D2D6D3;
    margin-bottom: 16px;
}
.card-box .card-title .card-title-required {
    font-size: 16px;
    font-weight: 400;
    margin: 0 0 0 auto;
}
.card-box .card-title .card-title-required span {
    color: #E16A0F;
}
.card-box .card-desc {
    font-size: var(--font-size-16);
}
.card-box .list-area ul li {
    font-size: var(--font-size-16);
    line-height: 1.8;
    padding-left: 12px;
    position: relative;
}
.card-box .list-area ul li::before {
    content: "●";
    position: absolute;
    left: 0;
    font-size: 4px;
    top: 9px;
    color: #119129;
}
.card-box.state-disabled .list-area ul li::before {
    color: #777A77;
}
/* 버튼 공통 */
.btn {
    border-radius: 6px;
    text-align: center;
}
.btn .icon{
    line-height: 0;
}
.btn.sm {
    font-size: var(--font-size-16);
    font-weight: 600;
    padding: 10px 18px;
}
.btn.md {
    font-size: var(--font-size-18);
    font-weight: 600;
    padding: 9px 24px;
}
.btn.lg {
    font-size: var(--font-size-20);
    font-weight: 500;
    padding: 12px 32px;
}
@media all and (max-width: 640px) {
    .btn.md {
        font-size: var(--font-size-16);
        font-weight: 500;
    }
}
@media all and (max-width: 480px) {
    .btn.md {
        font-size: var(--font-size-15);
    }
}
.btn-gray-bg {
    background-color: #9CA19D;
    color: #fff;
    transition: 0.1s;
}
.btn-green-bg {
    background-color: #119129;
    color: #fff;
    transition: 0.1s;
}
.btn-green-bg.state-disabled {
    background-color: #BABFBC;
}
.btn-green-bg.state-disabled .icon {
    display: none;
} 
.btn-green-outline {
    border: 1px solid #119129;
    color: #119129;
    background-color: #fff;
}
.btn-gray-outline {
    border: 1px solid #777A77;
    color: #777A77;
    background-color: #fff;
}
.btn.rounded {
    border-radius: 50px;
}
.btn.arrow {
    position: relative;
    display: flex;
    align-items: center;
    gap: 12px;
    justify-content: center;
}
.btn.plus {
    position: relative;
    display: flex;
    align-items: center;
    gap: 10px;
    justify-content: center;
    padding-inline: 18px;
}
/* 뱃지공통 */
.n-badge {
    font-weight: 600;
    font-size: var(--font-size-14);
    padding: 7px 10px;
    border-radius: 50px;
    display: inline-block;
    line-height: 1;    
}
.n-badge.green {
    color: #fff;
    background-color: #119129;
}
.n-badge.green-light {
    color: #0C761F;
    background-color: #CAF2D2;
}
/* 필드 공통 */
.field-box.field-half {
    max-width: 788px;
}
.field-box.field-full {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 4px 40px;
}
.field-area {
    /* display: flex; */
    margin-bottom: 20px;
}
.field-area .field {
    display: flex;
    gap: 58px;
}
.field-area .field > label {
    font-weight: 600;
    font-size: var(--font-size-18);
    min-width: 103px;
    height: 42px;
    line-height: 42px;
}
.field-area .field > label.max-label {
    min-width: 120px;
}
.field-area .field > label .req {
    color: #E16A0F;   
}
.field-area .field-inline {
    display: flex;
    align-items: center;
    gap: 8px;
    flex: 1;
}
.field-area .field-inline select {
    flex: 1;
}
.field-area .field-input,
.field-area .field-select {
    border-color: #D2D6D3;
    border-radius: 6px;
    height: 42px;
    line-height: 42px;
    width: 100%;
}
.field-area .field-input.state-disabled,
.field-area .field-select.state-disabled {
    border-color: #D2D6D3;
    background-color: #F0F3F1;
    color: #777A77;
}
.field-area .field-input.state-readonly,
.field-area .field-select.state-readonly{
    border-color: #9CA19D;
    color: #1E1F1E;
}
.field-area .field-input:not(.state-disabled):not(.state-readonly):focus,
.field-area .field-select:not(.state-disabled):not(.state-readonly):focus {
    border-color: #119129;
}
.field-area .field-select {
    min-width : 80px;
}
.field-area .field-select.state-readonly,
.field-area .field-select.state-disabled {
    background-image: none;
}

/* 파일 업로드 */
.file-upload-wrap {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.file-upload-row {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
}
/* 숨긴 input */
.file-upload-row .file-input {
    display: none;
}
/* 선택된 파일 표시 영역 */
.file-upload-row .file-result {
    display: none;
    align-items: center;
    gap: 8px;
    height: 36px;
    padding: 0 10px;
    background: #f0faf4;
    border: 1px solid #a8d5b8;
    border-radius: 6px;
    color: #1e6e3a;
    max-width: 360px;
    min-width: 0;
}
.file-upload-row .file-result.visible {
    display: flex;
}
.file-upload-row .file-result-name {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    flex: 1;
    min-width: 0;
}
.file-upload-row .file-result-remove {
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #a8d5b8;
    border: none;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    transition: background 0.15s;
}
.file-upload-row .file-result-remove:hover {
    background: #87c39c;
}
.file-upload-wrap .file-hint {
    line-height: 1.5;
}
/* 타이틀 */
.title-box {
    display: flex;
    justify-content: space-between;
    margin-bottom: 16px;
}
.title-box .title{
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.title-box .section-title{
    font-size: var(--font-size-28);
    font-weight: 600;
    line-height: 1.6;
}
.title-box .section-desc{
    font-size: var(--font-size-18);
    font-weight: 500;
    line-height: 1.6;
}
.title-box .btn {
    align-self: end;
    background-color: #fff;
    border: 1px solid #D2D6D3;
    border-radius: 50px;
    padding: 9px 16px;
    color: #777A77;
    font-size: var(--font-size-16);
    font-weight: 500;
    transition: 0.1s;
}
.title-box .btn:hover {
    border-color: #1E1F1E;
    color: #1E1F1E;
}


/* ===================== 유의사항 박스 ===================== */
.notice-box {
    background: #FFF8F2;
    border-radius: 16px;
    padding: 32px;
    margin-bottom: 24px;
}
.notice-head {
    display: flex;
    align-items: center;
    gap: 7px;
    font-size: var(--font-size-18);
    font-weight: 600;
    color: #E16A0F;
    margin-bottom: 8px;
}
.notice-icon {
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    flex-shrink: 0;
}
.notice-box ul {
    list-style: none;
    padding: 0;
    padding-left: 24px;
}
.notice-box ul li {
    font-size: var(--font-size-16);
    color: #E16A0F;
    line-height: 1.8;
    padding-left: 11px;
    position: relative;
}
.notice-box ul li::before {
    content: "●";
    position: absolute;
    left: 0;
    font-size: 4px;
    top: 9px;
}
.status-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px;
    padding: 4px 10px;
    font-size: 16px;
    font-weight: 600;
    color: #fff;
    white-space: nowrap;
}
.status-badge.approved { 
    background: #119129;
}
.status-badge.rejected { 
    background: #CE3535;
}
.summary-item {
    display: flex;
    align-items: center;
    gap: 12px;
}
.settle-req-wrap .summary-count {
    display: flex;
    align-items: center;
    gap: 4px;
    line-height: 27px;
}
.status-area {
    margin-top: 16px;
    display: flex;
    align-items: center;
    gap: 8px;
}
.status-reason.rejected {
    color: #CE3535;
    font-weight: 500;
}

/* 스텝퍼 */
.pre-register-wrap .stepper {
    display: flex;
    align-items: center;
    margin-bottom: 112px;
}
.pre-register-wrap .step {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: var(--font-size-18);
    font-weight: 500;
    color: #777A77;
    flex: 1;
    padding: 0 10px 10px;
    border-bottom: 1px solid #D2D6D3;
}
.pre-register-wrap .step.active {
    color: #1E1F1E;
    font-weight: 600;
    position: relative;
} 
.pre-register-wrap .step.active::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    right: 0;
    border-bottom: 2px solid #119129;
}
.pre-register-wrap .step-num {
    width: 29px;
    height: 29px;
    border-radius: 50%;
    background: #777A77;
    color: #fff;   
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}
.pre-register-wrap .step.active .step-num {
    background: #119129;
}

.pre-register-wrap .section-block {
    margin-bottom: calc(var(--space-md) * 2.4);
}
.pre-register-wrap .section-block:last-child {
    margin-bottom: 0;
}
.pre-register-wrap .section-block .section-set {
    margin-bottom: calc(var(--space-md) * 0.8);
}
.pre-register-wrap .section-block .section-set:last-child {
    margin-bottom: 0;
}
.pre-register-wrap .card-group {
    gap: 24px;
}
.pre-register-wrap .badge-area {
    display: flex;
    align-items: center;
    gap: 6px;
    margin-bottom: 12px;
}
.pre-register-wrap .title-area {
    padding-bottom: 16px;
    margin-bottom: 4px;
}
.pre-register-wrap .list-area {
    color: #1E1F1E;
}
.pre-register-wrap .card-box {
    display: flex;
    flex-direction: column;
}
.pre-register-wrap .btn-area {
    flex: 1;
    display: flex;
    align-items: flex-end;
    margin-top: 24px;
    justify-content: center;
}
.pre-register-wrap .btn-green-bg.rounded.arrow {
    width: 100%;
}
.pre-register-wrap .card-box.state-disabled {
    background-color: #F9FBFA;
}
.pre-register-wrap .card-box.state-disabled .n-badge.green {
    background-color: #BABFBC;
}
.pre-register-wrap .card-box.state-disabled .n-badge.green-light {
    background-color: #F0F3F1;
    color: #BABFBC;
}
/* 인증완료 아이콘 */
.pre-register-wrap .is-verified {
    position: relative;
    padding-left: 28px;
    line-height: 1;
    align-self: center; 
}
.pre-register-wrap .is-verified::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background-image: url("data:image/svg+xml,%3Csvg width='26' height='26' viewBox='0 0 26 26' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cmask id='mask0_67_3587' style='mask-type:luminance' maskUnits='userSpaceOnUse' x='2' y='2' width='22' height='22'%3E%3Cpath d='M13 21.5001C14.1164 21.5014 15.2221 21.2822 16.2536 20.8549C17.285 20.4277 18.2219 19.8008 19.0103 19.0104C19.8008 18.222 20.4276 17.2851 20.8549 16.2537C21.2821 15.2222 21.5014 14.1165 21.5 13.0001C21.5014 11.8836 21.2821 10.7779 20.8549 9.74647C20.4276 8.71502 19.8008 7.77816 19.0103 6.98972C18.2219 6.19928 17.285 5.57243 16.2536 5.14518C15.2221 4.71793 14.1164 4.49869 13 4.50007C11.8836 4.49869 10.7779 4.71793 9.74641 5.14518C8.71496 5.57243 7.7781 6.19928 6.98965 6.98972C6.19922 7.77816 5.57237 8.71502 5.14512 9.74647C4.71787 10.7779 4.49863 11.8836 4.50001 13.0001C4.49863 14.1165 4.71787 15.2222 5.14512 16.2537C5.57237 17.2851 6.19922 18.222 6.98965 19.0104C7.7781 19.8008 8.71496 20.4277 9.74641 20.8549C10.7779 21.2822 11.8836 21.5014 13 21.5001Z' fill='white' stroke='white' stroke-width='4' stroke-linejoin='round'/%3E%3Cpath d='M9.71387 13.1889L12.3205 15.7956L17.5339 10.5823' stroke='black' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/mask%3E%3Cg mask='url(%23mask0_67_3587)'%3E%3Cpath d='M2 2H23.9355V23.9355H2V2Z' fill='%23119129'/%3E%3C/g%3E%3C/svg%3E%0A");
    width: 26px;
    height: 26px;
}
/* 인증대기 아이콘 */
.pre-register-wrap .is-not-verified {
    position: relative;
    padding-left: 28px;
    line-height: 1;
    align-self: center;
}
.pre-register-wrap .is-not-verified::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background-repeat: no-repeat;
    background-size: cover;
    background-image: url("data:image/svg+xml,%3Csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10 1.5C7.74566 1.5 5.58365 2.39553 3.98959 3.98959C2.39553 5.58365 1.5 7.74566 1.5 10C1.5 12.2543 2.39553 14.4163 3.98959 16.0104C5.58365 17.6045 7.74566 18.5 10 18.5C12.2543 18.5 14.4163 17.6045 16.0104 16.0104C17.6045 14.4163 18.5 12.2543 18.5 10C18.5 7.74566 17.6045 5.58365 16.0104 3.98959C14.4163 2.39553 12.2543 1.5 10 1.5ZM10.7969 5.75V11.0625H9.20312V5.75H10.7969ZM10.7969 12.6562V14.25H9.20312V12.6562H10.7969Z' fill='%23E16A0F'/%3E%3C/svg%3E%0A");
    width: 26px;
    height: 26px;
}
.pre-register-wrap .card-group .field-area:last-child {
    margin-bottom: 0;
}
.pre-register-wrap .participant-list {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.pre-register-wrap .bottom-block {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
}

.pre-register-wrap .bottom-block .btn {
    min-width: 180px;
}

.pre-register-wrap .agree-box {
    margin-top: 32px;
}
.pre-register-wrap .agree-box-title {
    font-size: var(--font-size-18);
    font-weight: 600;
    margin-bottom: 8px;
}
.pre-register-wrap .agree-box-title .req {
    color: #E16A0F;
}

/* ===================== 동의 박스 ===================== */
.pre-register-wrap .consent-box {
    border-top: 1px solid #e0e0e0;
    padding-top: 12px;
    display: flex;
    align-items: center;
}
.pre-register-wrap .checkbox-input:checked + .checkbox-check {
	background:#119129;
	border-color: #119129;
}
.pre-register-wrap .checkbox-text {
    margin-right: 8px;
}
.pre-register-wrap .checkbox-check {
    border-radius: 4px;
}
.consent-box .btn-detail {
    border-bottom   : 1px solid #111111;
    color: #111111;
}
.consent-box .btn-remove {
    margin: 0 0 0 auto;
}
/* 신청 인원 */
.pre-register-wrap .apply-count {
    color: #000000;
    font-weight: 600;
    font-size: var(--font-size-20);
    text-align: center;
    margin-top: 24px;
}
.pre-register-wrap .apply-count .num {
    color: #119129;
}

/* 이용동의 */
.pre-register-wrap .privacy-wrap {
    font-size: var(--font-size-14);
    line-height: 1.8;
    max-height: 180px;
    overflow-y: auto;
    margin-bottom: 8px;
}
.pre-register-wrap .privacy-intro {
  margin: 0 0 0.5em;
}
.pre-register-wrap .privacy-section-title {
    font-size: 15px;
    font-weight: bold;
    /* margin: 1.5em 0 0.5em; */
}
.pre-register-wrap .privacy-section-body {
    margin: 0 0 0.5em;
    padding-left: 1em;
}
.pre-register-wrap .privacy-list {
    margin: 0.25em 0 0.5em 0;
    padding-left: 1.3em;
}
.pre-register-wrap .privacy-list__item {
    margin-bottom: 0.2em;
    position: relative;
}
.pre-register-wrap .privacy-list__item::before {
    content: '-';
    position: absolute;
    left: -0.75em;
}
.pre-register-wrap .privacy-sub-section {
    margin: 0.75em 0 0.5em 1em;
}
.pre-register-wrap .privacy-sub-section__title {
    font-weight: bold;
    margin: 0 0 0.25em;
}
.pre-register-wrap .privacy-note {
    margin: 0.5em 0 0;
}

/* 사전신청 3단계 */
.complete-header {
    text-align: center;
    margin-bottom: 40px;
}
.complete-header-title {
    font-size: var(--font-size-28);
    font-weight: 600;
    margin-bottom: 16px;
}
.complete-header-title-em {
    font-weight: 600;
    color: #119129;
}
.complete-header-desc {
    font-size: var(--font-size-18);
    color: #4B4D4C;
    line-height: 1.5;
}
 
/* info */
.complete-info {
    border: 1px solid #D2D6D3;
    border-radius: 16px;
    padding: 32px 40px;
}
.complete-info-list {
    list-style: none;
}
.complete-info-row {
    display: flex;
    align-items: center;
    padding: 12px 8px;
    border-bottom: 1px solid #D2D6D3;
    line-height: 1.4;
}
.complete-info-row:last-child {
    border-bottom: none;
}
.complete-info-label {
    width: 100px;
    font-size: var(--font-size-18);
    font-weight: 600;
    color: #000;
    flex-shrink: 0;
}
.complete-info-value {
    font-size: var(--font-size-18);
}
.complete-info-value--point {
    color: #119129;
    font-weight: 600;
}
.complete-steps-list {
    display: flex;
    align-items: center;
    gap: 43px;
    list-style: none;
    margin-bottom: calc(var(--space-md) * 1.2);
}
.complete-step {
    flex: 1;    
    border: 1px solid #D2D6D3;
    border-radius: 16px;
    padding: 32px;
    min-width: 0;
    position: relative;
}
 
.complete-step:not(:last-child)::after {
    content: '';
    position: absolute;
    background-image: url("data:image/svg+xml,%3Csvg width='27' height='28' viewBox='0 0 27 28' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 28L10 14L0 0H4.9L14.9 14L4.9 28H0ZM11.9 28L21.9 14L11.9 0H16.8L26.8 14L16.8 28H11.9Z' fill='%2364A36F'/%3E%3C/svg%3E%0A");
    left: calc(100% + 8px);
    top: 50%;
    transform: translateY(-50%);
    width: 27px;
    height: 28px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}

.complete-step-header {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 24px;
}

.complete-step-num {
    width: 32px;
    height: 32px;
    border-radius: 50%;
    background: #119129;
    color: #fff;
    font-size: var(--font-size-20);
    font-weight: 600;
    display: flex;
    align-items: center;
    justify-content: center;
}
.complete-step-name {
    font-size: var(--font-size-24);
    font-weight: 600;
}
.complete-step-desc {
    line-height: 1.6;
}
@media (max-width: 1390px) {
    .field-box.field-full {
        gap: 0 10px;
    }
    .field-area .field {
        gap: 30px;
    }
}
@media (max-width: 1390px) {
    .field-box.field-full {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 1048px) {
    .pre-register-wrap .type-box {
        display: grid;
        grid-template-columns: repeat(2,1fr);
    }
    .title-box .section-title{
        font-size: var(--font-size-26);
    }
    .title-box .section-desc{
        font-size: var(--font-size-18);
    }
    .card-box .card-title {
        font-size: var(--font-size-22);
    }
}
@media (max-width: 768px) {
    .title-box .section-title{
        font-size: var(--font-size-24);
    }
    .title-box .section-desc{
        font-size: var(--font-size-16);
    }
    .card-box .card-title {
        font-size: var(--font-size-20);
    }
    .pre-register-wrap .step {
        font-size: var(--font-size-16);
    }
    .pre-register-wrap .step-num {
        width: 24px;
        height: 24px;
        font-size: var(--font-size-14);
    }
    .title-box .btn {
        font-size: var(--font-size-15);
    }
    .notice-box {
        padding: 24px;
    }
    .pre-register-wrap .consent-box {
        flex-direction: column;
    }
    .consent-box .btn-detail {
        margin-bottom: 20px;
        align-self: end;
    }
    .complete-header-title {
        font-size: var(--font-size-24);
    }
    .complete-info {
        padding: 24px 32px;
    }
    .complete-info-row {
        flex-direction: column;
        align-items: baseline;
    }
    .complete-step {
        padding: 20px;
    }
    .complete-steps-list {
        display: grid;
        grid-template-columns: repeat(2,1fr);
    }
}
@media (max-width: 710px) {
    .field-area {
        margin-bottom: 10px;
    }
    .field-area .field {
        flex-direction: column;
        gap: 0px;
    }
    .card-box.pd-y32-x32 {
        padding: 24px;
    }
}
@media (max-width: 560px) {
    .title-box .section-title {
        font-size: var(--font-size-22);
    }
    .pre-register-wrap .type-box .card-box.pd-y32-x32{
        padding: 18px;
    }
    .pre-register-wrap .type-box {
        grid-template-columns: 1fr;
    }
    .pre-register-wrap .bottom-block .btn {
        min-width: auto;
    }
    .complete-steps-list {
        flex-direction: column;
        align-items: stretch;
    }
    .complete-step:not(:last-child)::after {
        right: auto;
        left: 50%;
        top: auto;
        top: calc(100% + 8px);
        transform: translateX(-50%) rotate(90deg);
    }
    .card-box.pd-y32-x40 {
        padding: 24px 30px;
    }
    .title-box:has(.btn) {
        flex-direction: column;
        gap: 12px;
    }
    .field-area .field-inline:has(.is-verified) {
        flex-direction: column;
        align-items: baseline;
    }
    .pre-register-wrap .is-verified {
        align-self: inherit;
    }
    .pre-register-wrap .consent-box {
        margin-top: 20px;
    }
    .field-area .field > label.max-label + .field-inline{
        flex-direction: column;
    }
    .complete-header-title {
        font-size: var(--font-size-22);
    }
    .complete-info {
        padding: 20px 24px;
    }
}
/* 정산신청 */
.settle-req-wrap .section-block {
    margin-bottom: calc(var(--space-md) * 2.4);
}
.settle-req-wrap .section-block:last-child {
    margin-bottom: 0;
}
.settle-req-wrap .section-block .section-set {
    margin-bottom: calc(var(--space-md) * 0.8);
}
.settle-req-wrap .section-block .section-set:last-child {
    margin-bottom: 0;
}
.settle-req-wrap .guide-card {
    background-color: #FFF8F2;
    padding: 32px;
}
.settle-req-wrap .guide-header {
    display: flex;
    align-items: center;
}
.settle-req-wrap .guide-columns {
    display: flex;
    justify-content: space-between;
    gap: 48px;
}
.settle-req-wrap .guide-col {
    display: flex;
    gap: 16px;
    align-items: center;
    flex: 1;
}
.settle-req-wrap .guide-thumb {
    padding: 10px;
}
.settle-req-wrap .guide-thumb.good {
    border: 2px solid #119129;
    border-radius: 16px;
}
.settle-req-wrap .guide-thumb.bad {
    border: 2px solid #CE3535;
    border-radius: 16px;
}
.settle-req-wrap .guide-badge {
    color: #fff;
    font-size: var(--font-size-18);
}
.settle-req-wrap .guide-badge {
    padding: 7px 12px 7px 43px;
    border-radius: 6px;
    margin-bottom: 16px;
    position: relative;
    width: 100%;
    display: inline-block;
    width: 100%;
}
.settle-req-wrap .guide-badge::before {
    content: '';
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    background-position: center;
    background-size: cover;
    width: 24px;
    height: 24px;
}
.settle-req-wrap .guide-badge.good::before {
    background-image: url(../img/contents/guide-badge-good.png);
}
.settle-req-wrap .guide-badge.bad::before {
    background-image: url(../img/contents/guide-badge-bad.png);
}
.settle-req-wrap .guide-badge.good {
    background-color: #119129;
}
.settle-req-wrap .guide-badge.bad {
    background-color: #CE3535;
}
.settle-req-wrap .guide-content {
    flex: 1;
}
.settle-req-wrap .guide-list {
    padding-left: 11px;
    margin-left: 8px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}
.settle-req-wrap .guide-list li {
    position: relative;
    line-height: 1.6;
}
.settle-req-wrap .guide-list li::before {
    content: '';
    position: absolute;
    left: -11px;
    top: 7px;
    width: 3px;
    height: 3px;
    border-radius: 50%;
}
.settle-req-wrap .guide-list.good li::before {
    background-color:#119129;
}
.settle-req-wrap .guide-list.bad li::before {
    background-color:#CE3535;
}
.settle-req-wrap .upload-card {
    border: 1px solid #D2D6D3;
    padding: 32px;
    background-color: #F9FBFA;
    border-radius: 16px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.settle-req-wrap .upload-card.drag-over {
  border-color: #119129;
  background: #f0f8f1;
}
.settle-req-wrap .upload-card .upload-label {
    text-align: center;
    font-size: var(--font-size-20);
    font-weight: 600;
    margin-bottom: 16px;
}
.settle-req-wrap .content-box {
    display: flex;
    flex-direction: column;
    gap: 32px;
}
.settle-req-wrap .attach-item {
    border-top: 1px solid #D2D6D3;
    margin-top: 16px;
    position: relative;
}
.settle-req-wrap .field-area{
    display: flex;
    margin-bottom: 0;
    gap: 32px;
    padding-top: 40px;
}
.settle-req-wrap .status-area + .field-area {
    padding-top: 12px;
}
.settle-req-wrap .field-area .field {
    flex: 1;
    flex-direction: column; 
    gap: 12px;
}
.settle-req-wrap .field-area .field > label {
    height: auto;
    line-height: 1.6;
}
.settle-req-wrap .attach-link {
    text-decoration: underline;
    flex: 1;
    display: flex;
    align-items: center;
}
.settle-req-wrap .field-value  {
    flex: 1;
    display: flex;
    align-items: center;
    word-break: break-word;
}
.settle-req-wrap .card-box .delete-btn{
    position: absolute;
    right: 0;
    top: 16px;
}
.settle-req-wrap .final-check {
    background-color: #F9FBFA;
}
.settle-req-wrap .final-check .accordion {
    margin-bottom: 16px;
}
.settle-req-wrap .final-check .card-title {
    justify-content: flex-start;
    gap: 16px;
    margin-bottom: 0;
    font-size: var(--font-size-20);
}
.settle-req-wrap .final-check .card-title .amount {
    color: #119129;
    font-weight: 600;
}
.settle-req-wrap .final-check .title-area {
    position: relative;
}
.settle-req-wrap .accordion-toggle{
    position: absolute;
    background: url(../img/contents/icon-arrow-bottom-gray.png) no-repeat center;
    width: 24px;
    height: 24px;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    transition: transform 0.3s ease;
}
.settle-req-wrap .is-open .accordion-toggle {
    transform: rotate(180deg) translateY(50%);
}
.settle-req-wrap .accordion-body {
    /* display: none; */
    overflow: hidden;
    max-height: 0;
    border-top: 1px solid transparent;
    margin-top: 0;
    padding-top: 0;
    transition: max-height 0.3s ease, padding-top 0.3s ease, margin-top 0.3s ease, border-top 0.3s ease;
}
.settle-req-wrap .is-open .accordion-body {
    /* display: block; */
    border-top: 1px solid #ebebeb;
    margin-top: 16px;
    padding-top: 16px;
    max-height: 300px;
}
.settle-req-wrap .accordion-list {
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.settle-req-wrap .accordion-list li {
    font-size: var(--font-size-18);
    padding-left: 28px;
    position: relative;
}
.settle-req-wrap .accordion-list {
    counter-reset: accordion-counter;
}
.settle-req-wrap .accordion-list li {
    counter-increment: accordion-counter;
}
.settle-req-wrap .accordion-list li::before {
    content: counter(accordion-counter);
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 9px;
    border: 2px solid #1E1F1E;
    border-radius: 50%;
    width: 10px;
    height: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 14px;
    font-weight: 900;
}
.settle-req-wrap .accordion-list li strong {
    font-weight: 600;
}
.settle-req-wrap .final-check .card-group {
    display: flex;
    gap: 16px;
}
.settle-req-wrap .summary-count {
    color: #1E1F1E;
    font-weight: 600;
}
.settle-req-wrap .summary-count strong {
    font-size: 24px;
    font-weight: 700;
    color: #2e7d2e;
}
.settle-req-wrap .summary-count.rejected strong {
    color: #CE3535;
}
.settle-req-wrap .summary-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 8px;
    font-size: var(--font-size-18);
    flex-wrap: wrap;
    gap: 6px;
}
.settle-req-wrap .summary-row + .summary-confirm {
    margin-top: 12px;
}
.settle-req-wrap .summary-confirm strong {
    font-weight: 600;
    padding-left: 8px;
}

.settle-req-wrap .bottom-block {
    display: flex;
    gap: 16px;
    justify-content: center;
}
.settle-req-wrap .bottom-block .btn {
    min-width: 180px;
}
.settle-req-wrap .history-box .card-group {
    gap: 32px;
    margin-bottom: 48px;
}
.settle-req-wrap .history-box .card-title{
    font-size: var(--font-size-20);
}
@media (max-width: 1260px) {
    .settle-req-wrap .guide-thumb {
        flex: 0.9;
    }
}
@media (max-width: 1060px) {
    .settle-req-wrap .guide-columns {
        flex-direction: column;
        gap: 20px;
    }
    .settle-req-wrap .guide-thumb {
        flex: none;
    }
    .settle-req-wrap .field-area {
        flex-direction: column;
        gap: 10px;
        padding-top: 25px;
    }
    .settle-req-wrap .field-area .field {
        padding-top: 16px;
        gap: 5px;
    }
    .settle-req-wrap .final-check .card-group {
        flex-direction: column;
    }
    .status-area {
        margin-top: 64px;
    }
}
@media (max-width: 768px) {
    .settle-req-wrap .guide-thumb {
        flex: 0.6;
    }
}
@media (max-width: 630px) {
    .settle-req-wrap .guide-col {
        flex-direction: column;
        align-items: stretch;
        width: 100%;
    }
    .settle-req-wrap .guide-columns {
        align-items: baseline;
    }
    .settle-req-wrap .guide-thumb {
        align-self: baseline;
    }
}
@media (max-width: 560px) {
    .settle-req-wrap .bottom-block .btn {
        min-width: auto;
    }
    .settle-req-wrap .history-box .card-group {
        flex-direction: column;
        gap: 16px;
    }
}
@media (max-width: 435px) {
    .settle-req-wrap .final-check .card-title {
        flex-direction: column;
    }
}
/* 팝업 검색 영역 */
.apply-detail-popup {
    
}
.apply-detail-popup .search-wrap {
    border: none;
    background: none;
    padding: 0;
    padding-bottom: 16px;
    border-bottom: 1px solid #D2D6D3;
    margin-bottom: 16px;
}
.apply-detail-popup .search-form {
    flex: 1;
    position: relative;
}
.apply-detail-popup .search-form::before {
    content: '';
    position: absolute;
    left: 12px;
    top: 50%;
    transform: translateY(-50%);
    background-image: url("data:image/svg+xml,%3Csvg width='26' height='26' viewBox='0 0 26 26' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M21.6667 21.6666L17.2792 17.2791M17.2792 17.2791C17.9834 16.5749 18.5421 15.7389 18.9232 14.8188C19.3043 13.8987 19.5004 12.9125 19.5004 11.9166C19.5004 10.9207 19.3043 9.93454 18.9232 9.01444C18.5421 8.09434 17.9834 7.25832 17.2792 6.55411C16.575 5.84989 15.739 5.29128 14.8189 4.91016C13.8988 4.52904 12.9126 4.33289 11.9167 4.33289C10.9208 4.33289 9.93466 4.52904 9.01456 4.91016C8.09446 5.29128 7.25844 5.84989 6.55423 6.55411C5.132 7.97633 4.33301 9.90528 4.33301 11.9166C4.33301 13.9279 5.132 15.8569 6.55423 17.2791C7.97645 18.7013 9.9054 19.5003 11.9167 19.5003C13.9281 19.5003 15.857 18.7013 17.2792 17.2791Z' stroke='%231E1F1E' stroke-width='2.16667' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E%0A");
    background-size: 26px 26px;
    width: 26px;
    height: 26px;
}
.apply-detail-popup .search-btn {
    background-color: #119129;
    color: white;
    border-radius: 0 8px 8px 0;
    padding: 0 26px;
    white-space: nowrap;
    width: auto;
}
.apply-detail-popup .search-btn:before {
    content: none;
}
.apply-detail-popup input {
    padding-left: 45px;
    padding-right: 92px;
}
.apply-detail-popup input, select {
    line-height: 42px;
    height: 42px;
    border-radius: 6px;
}
.attraction-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    max-height: 595px;
    overflow-y: auto;
}
.attraction-item {
    padding: 12px;
    border-radius: 12px;
    border: 1px solid #D2D6D3;
    display: flex;
    align-items: center;
    gap: 16px;
}
.attraction-item:hover {
    background-color: #F5FFF7;
    border-color: #D2D6D3;
    box-shadow: 0px 4px 8px 0px #00000014;
}
.attraction-item:hover .btn.btn-gray-outline {
    border-color: #119129;
    color: #119129;
}
.attraction-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
    line-height: 1.6;
}
.attraction-title {
    font-weight: 500;
    font-size: var(--font-size-18);
}
.attraction-thumb {
    width: 124px;
    height: 93px;
    flex-shrink: 0;
    overflow: hidden;
}
.attraction-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.attraction-desc {
    color: #4B4D4C;
}
.attraction-item .btn {
    flex-shrink: 0;
}
.apply-detail-popup .more-area {
    margin-top: 12px;
}
.apply-detail-popup .more-area .btn-more {
    background-color: #CAF2D2;
    color: #119129;
    font-weight: 600;
    width: 100%;
    padding-block: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 4px;
}
.apply-detail-popup .total-count {
    text-align: right;
    color: #4B4D4C;
    font-size: var(--font-size-14);
    padding-top: 4px;
    border-top: 1px solid #D2D6D3;
    margin-top: 16px;
}