@charset "utf-8";

/****************** Sub Content -Component *************************************/



/****************** 소개 *************************************/
.sub_01_imgs_wrapper{overflow: hidden; display: flex; margin: 35px 0 30px;}
.sub_01_imgs_wrapper .text_box{flex: 1; padding-top: 20px;}
.sub_01_imgs_wrapper .img_box{flex-shrink: 0; margin-left: 70px;}

.sub_01_img_box{margin-bottom: 20px;}

@media screen and (max-width: 1050px) {
    .sub_01_imgs_wrapper{flex-wrap: wrap; margin-top: 30px;}
    .sub_01_imgs_wrapper .text_box{width: 100%; padding-top: 0;}
    .sub_01_imgs_wrapper .img_box{flex-shrink: 0; margin-left: 0; width: 100%; margin-top: 20px;}

    .sub_01_img_box{margin-bottom: 10px;}
}








/****************** 관람안내 *************************************/
.sub_sight_button_box{display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 60px;}
.sight_address_btn_box{width: 393px; background-color: var(--gray-bg-app); border-radius: 30px 0 30px 0; padding: 40px 35px 40px 40px; display: flex; gap: 5px; flex-wrap: wrap;}
.sight_address_btn_box .tit{font-size: 16px; font-weight: 600; color: #111; margin-bottom: 10px; width: 100%;}
.sight_address_btn_box .address{font-size: 15px; color: #333;}
.sight_address_btn_box .btn_copy{margin-left: auto; align-self: flex-end; min-width: 80px; background-color: white; border-radius: 20px; height: 30px; font-size: 13px; color: #111; transition: .25s;}
.sight_address_btn_box .btn_copy:hover{background-color: #eee;}


@media screen and (max-width: 1050px) {
    .sub_sight_button_box{margin-bottom: 30px;}
    .sight_address_btn_box{width: auto; flex: 1 0 180px; border-radius: 20px 0 20px 0; padding: 20px 15px 20px 25px;}
    .sight_address_btn_box .tit{font-size: 14px; margin-bottom: 5px;}
    .sight_address_btn_box .address{font-size: 13px;}
    .sight_address_btn_box .btn_copy{min-width: 70px; font-size: 12px; height: 25px;}
}








/****************** FAQ *************************************/
.sub_FAQ_list_wrap{width: 100%; margin-bottom: 40px;}

.sub_FAQ_list{width: 100%; border-top: 2px solid #111;}
.sub_FAQ_list > li{border-bottom: 1px solid #ddd;}
.sub_FAQ_list .accor_tit{width: 100%; display: block; position: relative; padding: 25px 45px 25px 25px; color: #222; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; min-height: 60px; line-height: 1.4; font-size: 16px;}
.sub_FAQ_list .accor_tit::after{content: ""; width: 20px; height: 20px; position: absolute; right: 10px; top: calc(50% - 10px); background: url('../images/ic_arrow_down.svg') no-repeat center center; transition: .25s;}
.sub_FAQ_list .accor_cont{display: grid; grid-template-rows: 0fr; overflow: hidden; transition: .3s ease-out;}
.sub_FAQ_list .accor_cont .cont{min-height: 0;}
.sub_FAQ_list .accor_cont .cont-pd{padding: 25px 40px; background-color: #FAFAFA; font-size: 15px; line-height: 1.75; color: #555; font-weight: 400;}

.sub_FAQ_list .accor_tit.on{white-space: inherit; text-overflow: inherit;}
.sub_FAQ_list .accor_tit.on::after{transform: rotate(180deg);}
.sub_FAQ_list .accor_tit.on + .accor_cont{grid-template-rows: 1fr;}


@media screen and (max-width: 1050px) {
    .sub_FAQ_list_wrap{margin-bottom: 30px;}

    .sub_FAQ_list .accor_tit{padding: 18px 32px 18px 15px; min-height: 40px; font-size: 14px;}
    .sub_FAQ_list .accor_tit::after{width: 15px; height: 15px; right: 7px; top: calc(50% - 7px); background-size: 12px;}
    .sub_FAQ_list .accor_cont .cont-pd{padding: 20px 20px; font-size: 13px;}
}








/****************** 방문등록 > 서비스선택 *************************************/
.sub_service_select_wrapper{display: flex; gap: 10px 20px; width: 100%; max-width: 900px; margin: 70px auto 50px;}
.sub_service_select_box{flex: 1; display: block; border: 1px solid var(--primary-blue); border-radius: 30px 0 30px 0; padding: 40px 120px 35px 45px; position: relative; box-shadow: 0 10px 10px rgba(0,0,0,.1); background-color: white; transition: .25s;}
.sub_service_select_box:hover{background-color: #f2f4ff;}
.sub_service_select_box:hover::after{right: 20px;}
.sub_service_select_box::after{content: ""; width: 80px; height: 20px; background: url('../images/ic_arrow_long_right.svg') no-repeat left top / 100%; position: absolute; right: 30px; bottom: 45px; transition: .25s;}
.sub_service_select_box h3{font-family: var(--font-sCoreDream); font-weight: 500; color: var(--primary-blue); font-size: 20px; margin-bottom: 10px;}
.sub_service_select_box h4{color: #555; font-size: 15px; line-height: 1.35; margin-bottom: 10px;}



@media screen and (max-width: 750px) {
    .sub_service_select_wrapper{gap: 10px 10px; margin: 30px auto 30px;}
    .sub_service_select_box{flex: 1; border-radius: 15px 0 15px 0; padding: 20px 20px 30px 25px;}
    .sub_service_select_box:hover::after{right: 20px;}
    .sub_service_select_box::after{width: 50px; height: 15px; right: 20px; bottom: 15px;}
    .sub_service_select_box h3{font-size: 15px; margin-bottom: 10px;}
    .sub_service_select_box h4{font-size: 13px; line-height: 1.35;}
    .sub_service_select_box h4 br{display: none;}
}








/****************** 등록 조회 결과 - 결과 화면 *************************************/
.regist_result_text{margin: 70px 0 25px; text-align: center; color: #333; font-size: 24px; font-weight: 300; font-family: var(--font-sCoreDream);}
.regist_result_text b{color: var(--primary-blue); font-weight: 600; font-size: 1.1em; padding: 0 2px;}

.regist_result_number_box{background-color: #f2f8ff; border: 1px solid #e0e0e0; width: 100%; max-width: 600px; margin: 0 auto 20px; text-align: center; padding: 30px;}
.regist_result_number_box .tit{font-size: 18px; font-weight: 400; margin: 0 0 5px; color: #333;}
.regist_result_number_box .number{font-size: 30px; font-weight: 600; color: var(--primary-blue2); letter-spacing: 0.05em;}

.regist_result_compliance_box{background-color: #fafbfc; border: 1px solid #e0e0e0; width: 100%; max-width: 600px; margin: 0 auto 20px; text-align: center; padding: 30px 50px;}
.regist_result_compliance_box .list > li{margin-top: 10px; width: 100%; text-align: left; padding: 14px 25px; background-color: white; border-radius: 5px; border: 1px solid #ddd; font-size: 15px; color: #444; line-height: 1.4;}
.regist_result_compliance_box .list > li:first-of-type{margin-top: 0;}
.regist_result_compliance_box .alert{font-size: 14px; margin-top: 15px; color: var(--red-color); opacity: 0.9;}


@media screen and (max-width: 1050px) {
    .regist_result_text{margin: 35px 0 20px; font-size: 18px;}

    .regist_result_number_box{padding: 25px;}
    .regist_result_number_box .tit{font-size: 15px;}
    .regist_result_number_box .number{font-size: 25px;}

    .regist_result_compliance_box{padding: 25px 20px;}
    .regist_result_compliance_box .list > li{margin-top: 7px; padding: 12px 20px; font-size: 13px;}
    .regist_result_compliance_box .alert{font-size: 12px; margin-top: 10px;}
}









/****************** 등록 조회 결과 - 등록내용 없을때 *************************************/
.regist_btn_box{margin: 80px 0 100px; text-align: center;}
.regist_btn_box .icon{margin-bottom: 25px;}
.regist_btn_box .icon span{font-size: 100px; color: #e6ecf3;}
.regist_btn_box .regist_list_txt{margin: 0 0 50px; font-size: 25px; font-family: var(--font-sCoreDream); color: #777; font-weight: 500;}

.regist_alert_box{margin-top: 100px; width: 100%; max-width: 700px; margin: 100px auto 0; background-color: #fafbfc; border: 1px solid #e0e0e0; padding: 40px 50px;}
.regist_alert_box .pd-box{padding: 20px;}

.title_exclamtion{margin: 0 auto 25px; text-align: center; font-size: 18px; font-weight: 600; color: #111;}
.title_exclamtion::before{content: "\e87f"; font-family: var(--font-material); font-size: 1.25em; margin-right: 10px; vertical-align: middle; display: inline-block;}

.cr_list > li{margin-top: 12px; position: relative; font-size: 15px; color: #333; padding-left: 15px; line-height: 1.6;}
.cr_list > li::after{content: ""; display: block; position: absolute; left: 0; top: 9px; width: 4px; height: 4px; border-radius: 50%; background-color: #333;}
.cr_list > li:first-of-type{margin-top: 0;}

.sq_list > li{margin-top: 4px; font-size: 14px; color: #555; padding-left: 18px; line-height: 1.6; position: relative;}
.sq_list > li::after{content: ""; display: block; position: absolute; left: 0; top: 10px; width: 5px; height: 1px; background-color: #333;}
.sq_list > li:first-of-type{margin-top: 0;}

@media screen and (max-width: 1050px) {
    .regist_btn_box{margin: 20px 0 50px;}
    .regist_btn_box .icon{margin-bottom: 15px;}
    .regist_btn_box .icon span{font-size: 70px;}
    .regist_btn_box .regist_list_txt{margin: 0 0 20px; font-size: 18px; line-height: 1.6; word-break: keep-all;}

    .regist_alert_box{margin: 60px auto 0; padding: 30px 25px;}
    .regist_alert_box .pd-box{padding: 15px; padding-bottom: 0;}

    .title_exclamtion{margin: 0 auto 15px; font-size: 15px;}

    .cr_list > li{margin-top: 10px; font-size: 14px; padding-left: 12px;}
    .cr_list > li::after{top: 9px; width: 3px; height: 3px;}

    .sq_list > li{margin-top: 3px; font-size: 13px; padding-left: 15px;}
    .sq_list > li::after{top: 10px; width: 4px;}
}








/****************** 등록 조회 *************************************/
.regit_check_form_box{width: 100%; max-width: 500px; margin: 80px auto;}
.regit_check_form_box label{font-size: 17px; font-weight: 500; margin-bottom: 10px; color: #111; display: block; padding: 0 5px;}
.btn_send{flex-shrink: 0; margin-left: 5px; padding: 10px 15px; background-color: #1a1a1a; color: white; height: 50px; border-radius: 5px; transition: .25s;}
.btn_send:not(:disabled):hover{background-color: #000;}
.btn_send:disabled{background-color: #eee; color: #bbb; pointer-events: none;}
.regit_check_form_box .form-box{margin-bottom: 20px;}

.regit_check_form_box .certified_text_box{margin: 10px auto 30px; }

.certified_text_box{border: 1px solid #ddd; border-radius: 10px; padding: 13px 15px; text-align: center; background-color: #f2f4ff; font-size: 15px; font-weight: 500; color: #222; width: 100%;}
.certified_text_box.minW{width: 100%; max-width: 400px; margin-left: auto; margin-right: auto;}
.certified_text_box p::before{content: "\e2e6"; font-family: var(--font-material); font-size: 1.2em; margin-right: 10px; vertical-align: middle; display: inline-block; color: var(--primary-blue);}

.regit_check_form_box .btn_nor2{margin-top: 60px;}


/* alert 팝업 */
.pop_alert{display: none; position: fixed; left: 50%; top: 50%; transform: translate(-50%, -50%); z-index: 900; background-color: white; width: 90%; max-width: 460px; border: 1px solid #ddd; border-radius: 20px; box-shadow: 0 5px 10px rgba(0,0,0,.16); padding: 50px 40px 45px; text-align: center;}
.pop_alert.show{display: block;}
.pop_alert .tit{font-size: 20px; font-weight: 600; color: #111;}
.pop_alert .sub{font-size: 16px; font-weight: 400; color: #777; margin-top: 15px; word-break: keep-all;}
.pop_alert .btn_ok{display: inline-block; width: 100%; padding: 12px 10px; text-align: center; border: 1px solid #999; color: #222; font-weight: 500; border-radius: 5px; max-width: 150px; margin-top: 30px; font-size: 15px; transition: .25s;}
.pop_alert .btn_ok:hover{background-color: #222; color: white;}




@media screen and (max-width: 1050px) {
    .regit_check_form_box{margin: 30px auto; min-height: auto; display: block;}
    .regit_check_form_box label{font-size: 14px;}
    .btn_send{margin-left: 0px; padding: 10px 10px; height: 40px; font-size: 12px;}
    .regit_check_form_box .form-box{margin-bottom: 10px;}

    .regit_check_form_box .certified_text_box{margin: 10px auto 20px; }

    .certified_text_box{padding: 10px 10px; font-size: 13px;}
    
    .regit_check_form_box .btn_nor2{margin-top: 20px;}

    /* alert 팝업 */
    .pop_alert{padding: 40px 30px 35px;}
    .pop_alert .tit{font-size: 16px;}
    .pop_alert .sub{font-size: 13px; margin-top: 6px;}
    .pop_alert .btn_ok{padding: 10px 10px; font-size: 13px; margin-top: 20px;}
}








/****************** 방문자 등록 - 방문형태 선택 *************************************/
.visit_step_button_box{width: 100%; max-width: 750px; margin: 0 auto 40px; background-color: #fafbfc; padding: 40px 55px; border-radius: 10px; border: 1px solid #e5e5e5;}
.visit_step_button_box .tit{margin-bottom: 25px; text-align: center; font-size: 18px; font-weight: 600; color: #111;}
.visit_step_button_box .row{display: flex; gap: 10px 20px;}
.visit_step_button_box .row .visit_step_button{flex: 1 0 10px;}

.visit_step_button{display: flex; border-radius: 20px; background-color: #fff; border: 1px solid #e5e5e5; padding: 25px 30px; gap: 20px 30px; align-items: center; transition: .25s;}
.visit_step_button .icon{flex-shrink: 0; width: 70px; height: 70px; background-color: #f7f9ff; border-radius: 20px 20px 20px 0; display: flex; justify-content: center; align-items: center; font-size: 28px; border: 1px solid #cad3ff; box-shadow: 0 0px 3px rgba(1, 1, 1, .1); transition: .25s;}
.visit_step_button .icon span{font-size: inherit; color: #3f51b5; transition: .25s;}
.visit_step_button .text{flex: 1;}
.visit_step_button .sbj{font-size: 20px; font-weight: 600; color: #111; font-family: var(--font-sCoreDream); transition: .25s;}
.visit_step_button .sub{font-size: 15px; font-weight: 400; color: #888; margin: 3px 0 0 3px; transition: .25s;}

.visit_step_button:hover,
.visit_step_button.on{border-color: var(--primary-blue2); background-color: #ecefff;}

.visit_step_button:hover .sbj,
.visit_step_button.on .sbj{color: var(--primary-blue2);}

.visit_step_button:hover .icon,
.visit_step_button.on .icon{background-color: var(--primary-blue);}

.visit_step_button:hover .icon span,
.visit_step_button.on .icon span{color: white;}

.visit_step_button:hover .sub,
.visit_step_button.on .sub{color: var(--primary-blue2);}



@media screen and (max-width: 1050px) {
    .visit_step_button_box{margin: 0 auto 25px; padding: 30px 20px;}
    .visit_step_button_box .tit{margin-bottom: 20px; font-size: 16px;}
    .visit_step_button_box .row{flex-wrap: wrap; gap: 10px;}
    .visit_step_button_box .row .visit_step_button{flex: 1 0 100%;}

    .visit_step_button{border-radius: 20px; padding: 18px 20px; gap: 20px 20px;}
    .visit_step_button .icon{width: 50px; height: 50px; border-radius: 20px 20px 20px 0; font-size: 25px;}
    .visit_step_button .sbj{font-size: 16px;}
    .visit_step_button .sub{font-size: 13px;}
}








/****************** 약관동의 *************************************/
.regist-progress-wrapper{width: 100%; display: flex; height: 10px; border-radius: 10px; background-color: var(--gray-bg-table); margin-bottom: 85px; overflow: hidden;}
.regist-progress-wrapper:has(+ .term_all_check_box){margin-bottom: 60px;}
.regist-progress-wrapper .bar{flex: 1 0 10px;}
.regist-progress-wrapper .bar.on{background-color: var(--primary-blue);}

.term_all_check_box{text-align: right; margin-bottom: 40px;}
.term_all_check_box label{font-size: 15px; font-weight: 500; color: #888;}
.term_all_check_box label input{vertical-align: middle; margin-right: 5px;}
.term_all_check_box label:has(input:checked){color: #111;}

.agree_term_contents{border-radius: 5px; padding: 30px 25px; max-height: 200px; overflow: auto; border: 1px solid #ddd; line-height: 1.7; font-size: 15px; color: #555;}
.agree_term_contents b{font-weight: 600; color: #222;}

.term_agree_box{margin-top: 15px; text-align: right;}
.term_agree_box label{font-size: 15px; font-weight: 500; color: #777;}
.term_agree_box label b{margin: 0 2px; font-weight: 600; color: var(--red-color);}
.term_agree_box label input{vertical-align: middle; margin-right: 5px;}
.term_agree_box label:has(input:checked){color: #111;}
.term_agree_box label:has(input:checked) b{color: #111;}



@media screen and (max-width: 1050px) {
    .regist-progress-wrapper{height: 7px; margin-bottom: 45px;}
    .regist-progress-wrapper:has(+ .term_all_check_box){margin-bottom: 25px;}

    .term_all_check_box{margin-bottom: 20px;}
    .term_all_check_box label{font-size: 13px;}

    .agree_term_contents{padding: 20px 25px; max-height: 180px; font-size: 13px;}

    .term_agree_box{margin-top: 13px;}
    .term_agree_box label{font-size: 13px;}
}








/****************** 방문인원선택 *************************************/
.term_warning_gather_box{border: 1px solid #ddd; padding: 30px; text-align: center; background-color: var(--gray-bg-table); margin-bottom: 50px;}
.term_warning_gather_box p{margin-top: 5px;}
.term_warning_gather_box p:first-of-type{margin-top: 0;}


.regist-select-person-list > li{border-top: 1px solid #eee; display: flex; padding: 30px 35px 26px; align-items: center; gap: 10px 20px;}
.regist-select-person-list > li:first-of-type{border-top: none;}

.regist-select-person-list > li .text_b{flex: 1;}
.regist-select-person-list > li .tit{font-size: 20px; font-weight: 600; margin-bottom: 5px; color: #222;}
.regist-select-person-list > li .sub{font-size: 14px; font-weight: 400; margin-bottom: 3px; color: #777;}

.regist-select-person-list > li .btn_b{flex-shrink: 0; display: flex; align-items: center; gap: 7px;}
.regist-select-person-list > li .btn_b .number{width: 30px; text-align: center; font-weight: 500; color: #111; font-size: 17px;}

.regist-select-person-list > li.result{background-color: var(--gray-bg-table); margin-top: 15px; border-bottom: 1px solid #eee;}
.regist-select-person-list > li.result .tit{font-size: 22px;}
.regist-select-person-list > li.result .result_number{font-size: 17px; color: #111;}
.regist-select-person-list > li.result .result_number b{font-weight: 700; color: var(--primary-blue); font-size: 35px; font-weight: 600; margin: 0 5px;}


.btn_sq{width: 30px; height: 30px; background-color: white; overflow: hidden; text-indent: -9999px; border: 1px solid #ddd; border-radius: 5px; background-repeat: no-repeat; background-position: center center; transition: .25s; background-size: 15px;}
.btn_sq.minus{background-image: url('../images/ic_minus_2.svg');}
.btn_sq.plus{background-image: url('../images/ic_plus_2.svg');}
.btn_sq:not(:disabled):hover{background-color: #fafafa;}
.btn_sq:disabled{background-color: #ddd; opacity: .25; pointer-events: none;}


@media screen and (max-width: 1050px) {
    .term_warning_gather_box{padding: 30px 25px 30px 40px; text-align: left; margin-bottom: 30px;}

    .regist-select-person-list > li{padding: 20px 20px 20px;}

    .regist-select-person-list > li .tit{font-size: 16px; margin-bottom: 3px;}
    .regist-select-person-list > li .sub{font-size: 12px;}

    .regist-select-person-list > li .btn_b{gap: 5px;}
    .regist-select-person-list > li .btn_b .number{width: 22px;  font-size: 13px;}

    .regist-select-person-list > li.result{margin-top: 5px;}
    .regist-select-person-list > li.result .tit{font-size: 18px;}
    .regist-select-person-list > li.result .result_number{font-size: 14px;}
    .regist-select-person-list > li.result .result_number b{font-size: 25px;}

    .btn_sq{width: 25px; height: 25px; background-size: 13px;}
}








/****************** 대표자 정보입력 *************************************/
.senior_information_write_wrapper{width: 100%; gap: 40px 50px; display: grid; grid-template-columns: 1fr 1fr; margin-bottom: 50px;}




@media screen and (max-width: 1050px) {
    .senior_information_write_wrapper{gap: 25px; grid-template-columns: 100%; margin-bottom: 30px;}
}








/****************** 동승자 정보 입력 *************************************/
.partner_information_write_wrapper{border-bottom: 1px solid #ddd;}
.partner_information_write_wrapper .partner_info_wrap{border-top: 1px solid #ddd;}
.partner_information_write_wrapper .partner_info_wrap:nth-of-type(2n-1){background-color: #fbfbff;}
.partner_info_wrap{width: 100%; padding: 40px 35px;}
.partner_info_wrap .tit_box{display: flex; align-items: center; width: 100%; margin-bottom: 15px;}
.partner_info_wrap .tit_box .cate{font-size: 14px; font-weight: 500; color: #888;}
.partner_info_wrap .tit_box label{margin-left: auto; font-size: 14px;}
.partner_info_wrap .tit_box label input{margin-right: 5px; vertical-align: middle;}
.partner_info_wrap .rows{display: grid; grid-template-columns: 1fr 1fr 1.5fr; gap: 50px;}
.partner_info_wrap .rows :is(*, .sbj){font-size: 15px;}
.partner_info_wrap .rows :is(input, select){height: 43px;}

.partner_check_box{text-align: center; margin: 50px;}
.partner_check_box label{font-size: 16px; color: #888;}
.partner_check_box label input{vertical-align: middle; margin-right: 5px;}
.partner_check_box label:has(input:checked){color: #222; font-weight: 500;}



@media screen and (max-width: 1050px) {
    .partner_info_wrap{padding: 30px 25px;}
    .partner_info_wrap .tit_box{margin-bottom: 15px;}
    .partner_info_wrap .tit_box .cate{font-size: 13px;}
    .partner_info_wrap .tit_box label{font-size: 13px;}
    .partner_info_wrap .rows{grid-template-columns: 1fr; gap: 10px;}
    .partner_info_wrap .rows :is(*, .sbj){font-size: 13px;}
    .partner_info_wrap .rows :is(input, select){height: 40px;}

    .partner_check_box{margin: 25px 0 0;}
    .partner_check_box label{font-size: 13px;}
}








/****************** 동승자 정보 등록 *************************************/
.partner_entity_info_wrapper{border: 1px solid #ddd; border-radius: 20px; padding: 50px; text-align: center; max-width: 900px; margin: 0 auto 50px;}
.partner_entity_info_wrapper h4{font-size: 20px; text-align: center; font-weight: 700; color: #333; margin-bottom: 20px;}
.partner_entity_info_wrapper .btns_box{display: flex; gap: 20px 30px;}
.partner_entity_info_wrapper .btns_box > a{flex: 1 0 10px;}
.partner_entity_info_wrapper .alt_list{margin-top: 30px; display: inline-block; text-align: left;}
.partner_entity_info_wrapper .alt_list > li{margin-top: 5px; font-size: 14px; color: #111;}
.partner_entity_info_wrapper .alt_list > li:first-of-type{margin-top: 0;}

.btn_partner_upload{display: flex; padding: 30px; background-color: #e9f4ff; border-radius: 30px 0 30px 0; align-items: center; justify-content: center; transition: .25s; border: 1px solid #e3e9ff;}
.btn_partner_upload:hover{background-color: #d8eafc;}
.btn_partner_upload:nth-of-type(2n){background-color: #eff2ff;}
.btn_partner_upload:nth-of-type(2n):hover{background-color: #dbe1f9;}
.btn_partner_upload .icons{flex-shrink: 0; margin-right: 20px; width: 80px; height: 80px; border-radius: 50%; background-color: white; display: flex; justify-content: center; align-items: center;}
.btn_partner_upload .icons > span{display: block; width: 30px; height: 30px; background-repeat: no-repeat; background-position: center center; background-size: 100%;}
.btn_partner_upload .icons > span.excel{background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='15 15 70 70'%3E%3Cpath fill='%2302198b' d='M28,20v14H18v36h10v10h52V20H28z M28,44h5.3l2.7,4l2.7-4H44l-5.3,8l5.3,8h-5.3L36,56l-2.7,4H28l5.3-8L28,44z M76,76H32v-6 h22V58h16v-4H54v-4h16v-4H54v-4h16v-4H54v-4H32V24h44V76z'/%3E%3C/svg%3E");}
.btn_partner_upload .icons > span.imgs{background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath fill='%2302198b' d='M360-400h400L622-580l-92 120-62-80-108 140Zm-40 160q-33 0-56.5-23.5T240-320v-480q0-33 23.5-56.5T320-880h480q33 0 56.5 23.5T880-800v480q0 33-23.5 56.5T800-240H320Zm0-80h480v-480H320v480ZM160-80q-33 0-56.5-23.5T80-160v-560h80v560h560v80H160Zm160-720v480-480Z'/%3E%3C/svg%3E");}

.btn_partner_upload .text_box p{font-size: 20px; font-weight: 300; color: #222;}
.btn_partner_upload .text_box p b{font-size: 1.1em; font-weight: 600; color: var(--primary-blue); margin: 0 5px;}


@media screen and (max-width: 1050px) {
    .partner_entity_info_wrapper{padding: 25px 30px; margin: 0 auto 30px;}
    .partner_entity_info_wrapper h4{font-size: 18px; margin-bottom: 15px;}
    .partner_entity_info_wrapper .btns_box{flex-wrap: wrap; gap: 10px 10px;}
    .partner_entity_info_wrapper .btns_box > a{width: 100%; display: flex; flex: 1 0 100%;}
    .partner_entity_info_wrapper .alt_list{margin-top: 20px; display: block; width: 100%;}
    .partner_entity_info_wrapper .alt_list > li{font-size: 13px;}

    .btn_partner_upload{display: flex; padding: 15px 20px; border-radius: 20px 0 20px 0; justify-content: flex-start;}
    .btn_partner_upload .icons{margin-right: 10px; width: 40px; height: 40px;}
    .btn_partner_upload .icons > span{width: 15px; height: 18px; background-repeat: no-repeat; background-position: center center; background-size: 100%;}

    .btn_partner_upload .text_box p{font-size: 14px;}
}








/****************** 개인정보 처리방침 *************************************/
.sub-policy-title{font-size: 22px; font-weight: 600; color: #333; margin-bottom: 30px;}
.sub-policy-desc{font-size: 16px; font-weight: 400; color: #333; margin-bottom: 30px; line-height: 1.6;}

.sub-policy-tbl-sbj{text-align: center; margin-bottom: 15px; font-weight: 600; color: black; font-size: 16px;}

.sub-policy-tbl-sbj ~ .tbl_normal_box .tbl_normal :is(th, td){padding: 1.1em; font-size: 15px; line-height: 1.6; word-break: break-all;}

.sub-policy-list-box{background-color: #f9fafb; border: 1px solid #ddd; border-radius: 0; padding: 30px 50px; margin-bottom: 70px;}
.sub-policy-list{display: grid; gap: 10px 20px; grid-template-columns: 1fr 1fr;}
.sub-policy-list > li > a{font-size: 15px; font-weight: 500; color: #333;}
.sub-policy-list > li > a:hover{text-decoration: underline;}

.sub-policy-sbj{font-size: 20px; font-weight: 600; color: black; margin: 60px 0 20px;}
.sub-policy-in-desc{font-size: 16px; font-weight: 400; color: black; margin: 7px 0; line-height: 1.6;}
.sub-policy-in-desc.indent{padding-left: 1em; text-indent: -1em;}
.sub-policy-in-desc.sm{font-size: 15px; color: #333;}
.sub-policy-in-desc .sm-txt{color: #666; font-size: 0.9em; line-height: 1.4;}
.sub-policy-in-desc .sm-link{color: #125ec4; font-size: 0.9em; line-height: 1.4;}
.sub-policy-in-desc .a-link{text-decoration: underline;}

.sub-policy-pdL{padding-left: 20px;}

.sub-policy-in-num{font-size: 15px; font-weight: 400; color: #222; margin: 5px 0;}
.dot-text{font-size: 15px; font-weight: 400; color: #222; list-style-type: disc; display: list-item; margin: 7px 20px; line-height: 1.6;}

.gap-h-30{width: 100%; height: 30px;}
.gap-h-50{width: 100%; height: 50px;}


@media screen and (max-width: 1050px) {
    .sub-policy-title{font-size: 18px; margin-bottom: 20px; line-height: 1.5;}
    .sub-policy-desc{font-size: 14px; margin-bottom: 20px;}

    .sub-policy-tbl-sbj{margin-bottom: 10px; font-size: 14px;}

    .sub-policy-tbl-sbj ~ .tbl_normal_box .tbl_normal :is(th, td){font-size: 14px; word-break: break-all;}

    .tbl_normal_box{width: 100%; overflow-y: auto;}
    .tbl_normal_box .tbl_normal{min-width: 450px;}

    .sub-policy-list-box{padding: 25px 25px; margin-bottom: 50px;}
    .sub-policy-list{gap: 10px 20px; grid-template-columns: 1fr;}
    .sub-policy-list > li > a{font-size: 14px;}

    .sub-policy-sbj{font-size: 17px; margin: 40px 0 10px;}
    .sub-policy-in-desc{font-size: 14px;}
    .sub-policy-in-desc.sm{font-size: 13px;}
    
    .sub-policy-pdL{padding-left: 10px;}

    .sub-policy-in-num{font-size: 14px; margin-left: 10px;}
    .dot-text{font-size: 14px;}

    .gap-h-30{height: 20px;}
    .gap-h-50{height: 35px;}
}








/****************** 이용안내 - 출입신고 절차안내 방문자 등록 *************************************/
.sub-app-title-01{font-size: 30px; font-weight: 500; color: #000; margin-bottom: 20px;}
.sub-app-text-01{font-size: 20px; color: #333;}

.sub-app-produce-01-wrap{margin: 65px 0 50px; gap: 60px; display: flex; flex-wrap: wrap; position: relative;}
.sub-app-produce-01-wrap .col{flex: 1; position: relative; padding: 0 22px;}
.sub-app-produce-01-wrap .app-intro-number-text{min-height: 110px;}
.sub-app-produce-01-wrap .img-box{text-align: center; margin-top: 20px;}
.sub-app-produce-01-wrap .arrow-box{position: absolute; left: calc(100% - 10px); width: 50%;}
.sub-app-produce-01-wrap .col:nth-of-type(1) .arrow-box{left: calc(100% - 79px); bottom: 170px;}
.sub-app-produce-01-wrap .col:nth-of-type(2) .arrow-box{left: 83%; bottom: 236px;}

.sub-app-produce-02-title-wrap{display: flex; flex-wrap: wrap; gap: 27px; margin: 55px 0 90px; justify-content: center; padding-right: 70px;}
.sub-app-produce-02-title-wrap .col{position: relative;}
.sub-app-produce-02-title-wrap .col .arrow{position: absolute; top: calc(100%);}
.sub-app-produce-02-title-wrap .col:first-of-type .arrow{right: 50%;}
.sub-app-produce-02-title-wrap .col:last-of-type .arrow{left: 50%;}
.sub-app-produce-02-title-wrap .button-icon{width: 242px; min-height: 95px; display: flex; flex-direction: column; border-radius: 20px; background-color: #03BD66; padding-left: 99px; justify-content: center; color: white; position: relative;}
.sub-app-produce-02-title-wrap .button-icon.blue{background-color: #0376BD;}
.sub-app-produce-02-title-wrap .button-icon p{font-size: 21px; font-weight: 600;}
.sub-app-produce-02-title-wrap .button-icon em{font-size: 18px;}
.sub-app-produce-02-title-wrap .button-icon::before{content: ""; position: absolute; background-color: white; width: 55px; height: 54px; border-radius: 20px 20px 20px 0; left: 23px; top: 50%; transform: translateY(-50%); background-repeat: no-repeat; background-position: center center;}
.sub-app-produce-02-title-wrap .button-icon.green::before{background-image: url("data:image/svg+xml,%3Csvg width='23' height='21' viewBox='0 0 23 21' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20.2067 2.06473C19.9629 1.33331 19.2315 0.845703 18.5001 0.845703H5.0908C4.23749 0.845703 3.62798 1.33331 3.38417 2.06473L0.824219 9.37887V19.1311C0.824219 19.7406 1.43373 20.3501 2.04324 20.3501H3.26227C3.99368 20.3501 4.48129 19.7406 4.48129 19.1311V17.912H19.1096V19.1311C19.1096 19.7406 19.7191 20.3501 20.3286 20.3501H21.5476C22.1571 20.3501 22.7667 19.7406 22.7667 19.1311V9.37887L20.2067 2.06473ZM5.45651 3.28375H18.0125L19.3534 6.94083H4.23749L5.45651 3.28375ZM20.3286 15.474H3.26227V9.37887H20.3286V15.474ZM6.30983 10.5979C7.28505 10.5979 8.13837 11.4512 8.13837 12.4264C8.13837 13.4017 7.28505 14.255 6.30983 14.255C5.33461 14.255 4.48129 13.4017 4.48129 12.4264C4.48129 11.4512 5.33461 10.5979 6.30983 10.5979ZM17.2811 10.5979C18.2563 10.5979 19.1096 11.4512 19.1096 12.4264C19.1096 13.4017 18.2563 14.255 17.2811 14.255C16.3058 14.255 15.4525 13.4017 15.4525 12.4264C15.4525 11.4512 16.3058 10.5979 17.2811 10.5979Z' fill='%2303BD66'/%3E%3C/svg%3E%0A");}
.sub-app-produce-02-title-wrap .button-icon.blue::before{background-image: url("data:image/svg+xml,%3Csvg width='25' height='24' viewBox='0 0 25 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M3.77344 9.82091C3.77344 5.69287 3.77344 3.62831 5.0564 2.34644C6.33936 1.06457 8.40283 1.06348 12.5309 1.06348C16.6589 1.06348 18.7235 1.06348 20.0053 2.34644C21.2872 3.6294 21.2883 5.69287 21.2883 9.82091V12.0103C21.2883 16.1383 21.2883 18.2029 20.0053 19.4847C18.7224 20.7666 16.6589 20.7677 12.5309 20.7677C8.40283 20.7677 6.33827 20.7677 5.0564 19.4847C3.77453 18.2018 3.77344 16.1383 3.77344 12.0103V9.82091Z' stroke='%230376BD' stroke-width='2'/%3E%3Cpath d='M16.3621 16.3893H18.0042M7.05738 16.3893H8.6994M5.9627 20.2207V21.8627C5.9627 22.153 6.07803 22.4315 6.28332 22.6368C6.48862 22.8421 6.76705 22.9574 7.05738 22.9574H8.6994C8.98972 22.9574 9.26816 22.8421 9.47345 22.6368C9.67874 22.4315 9.79407 22.153 9.79407 21.8627V20.768M19.0988 20.2207V21.8627C19.0988 22.153 18.9835 22.4315 18.7782 22.6368C18.5729 22.8421 18.2945 22.9574 18.0042 22.9574H16.3621C16.0718 22.9574 15.7934 22.8421 15.5881 22.6368C15.3828 22.4315 15.2675 22.153 15.2675 21.8627V20.768M21.2882 8.72656H22.3829C22.6732 8.72656 22.9516 8.84189 23.1569 9.04719C23.3622 9.25248 23.4776 9.53091 23.4776 9.82124V10.9159C23.4776 11.0859 23.438 11.2535 23.362 11.4055C23.286 11.5575 23.1756 11.6897 23.0397 11.7917L21.2882 13.1053H3.77334L2.02186 11.7917C1.8859 11.6897 1.77555 11.5575 1.69955 11.4055C1.62355 11.2535 1.58398 11.0859 1.58398 10.9159V9.82124C1.58398 9.53091 1.69932 9.25248 1.90461 9.04719C2.1099 8.84189 2.38834 8.72656 2.67866 8.72656H3.77334' stroke='%230376BD' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M20.7405 4.34766H4.32031' stroke='%230376BD' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E%0A");}

.sub-app-produce-02-wrap{display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 60px;}
.sub-app-produce-02-wrap .col{position: relative; padding: 0 20px; min-width: 0; flex: 1;}
.sub-app-produce-02-wrap .col:last-of-type{flex: 1.8;}
.sub-app-produce-02-wrap .app-intro-number-text{margin: 0 10px 20px 40px;}
.sub-app-produce-02-wrap .img-box{display: flex; gap: 10px; justify-content: center;}
.sub-app-produce-02-wrap .sub-app-note-warning{margin-top: 20px;}

.sub-app-produce-03-wrap{display: flex; flex-wrap: wrap; gap: 10px; margin: 35px 0 75px;}
.sub-app-produce-03-wrap .img-box{flex: 2.2; min-width: 0; display: flex; padding: 0 20px; gap: 10px;}
.sub-app-produce-03-wrap .img-box span{align-self: flex-end; margin: 0 0 90px -30px;}
.sub-app-produce-03-wrap .info-box{flex: 1; min-width: 0; display: flex; flex-direction: column; justify-content: flex-end;}
.sub-app-produce-03-wrap .info-box .sub-app-note-warning{margin-top: 50px;}




.app-intro-number-text{font-size: 16px; font-weight: 400; color: #111; padding-left: 35px; position: relative;}
.app-intro-number-text .number{display: block; width: 26px; height: 26px; line-height: 26px; text-align: center; border-radius: 50%; background-color: #03035F; color: white; font-size: 16px; font-weight: 800; position: absolute; left: 0; top: 0;}

.app-red-text{color: #FF0000; font-weight: 500;}

.app-cate-01{background-color: #03BD66; display: inline-block; margin: 3px 7px 3px 0; vertical-align: middle; padding: 3px 7px; color: white; font-weight: 600; font-size: 16px;}
.app-cate-01.blue{background-color: #0376BD;}

.sub-app-note-warning{border: 1px solid #DDDDDD;}
.sub-app-note-warning .title{background-color: #FBFBFB; padding: 15px 20px;}
.sub-app-note-warning .title p{font-size: 16px; font-weight: 600; color: #000;}
.sub-app-note-warning .content{padding: 15px 20px; color: #000; line-height: 1.5;}
.sub-app-note-warning .content .text{font-size: 15px; color: #000; margin-bottom: 10px;}

.app-dot-list > li{margin-bottom: 5px; position: relative; padding-left: 15px; color: #000; line-height: 1.5;}
.app-dot-list > li::before{content: ""; position: absolute; left: 0; top: 8px; width: 4px; height: 4px; border-radius: 50%; background-color: #000;}
.app-dot-list > li:last-of-type{margin-bottom: 0;}
.app-dot-list > li b{font-weight: 600;}


@media screen and (max-width: 1300px) {
    .sub-app-produce-01-wrap .arrow-box{width: 43%;}
    .sub-app-produce-01-wrap .col:nth-of-type(1) .arrow-box{left: calc(100% - 50px);}
    .sub-app-produce-01-wrap .col:nth-of-type(2) .arrow-box{left: 87%;;}
}
@media screen and (max-width: 1050px) {
    .sub-app-title-01{font-size: 20px; margin-bottom: 10px;}
    .sub-app-text-01{font-size: 16px;}

    .sub-app-produce-01-wrap{margin: 40px 0 30px; gap: 40px; flex-direction: column;}
    .sub-app-produce-01-wrap .col{padding: 0 10px; flex: 1 0 100%;}
    .sub-app-produce-01-wrap .app-intro-number-text{min-height: auto;}
    .sub-app-produce-01-wrap .img-box{margin-top: 18px;}
    .sub-app-produce-01-wrap .arrow-box{display: none;}

    .sub-app-produce-02-title-wrap{gap: 10px; margin: 55px 0 50px; justify-content: center; padding-right: 0;}
    .sub-app-produce-02-title-wrap .col{position: relative;}
    .sub-app-produce-02-title-wrap .col .arrow{display: none;}
    .sub-app-produce-02-title-wrap .button-icon{width: auto; flex: 1; min-height: auto; padding: 20px; padding-left: 65px;}
    .sub-app-produce-02-title-wrap .button-icon p{font-size: 16px;}
    .sub-app-produce-02-title-wrap .button-icon em{font-size: 13px;}
    .sub-app-produce-02-title-wrap .button-icon::before{width: 35px; height: 35px; border-radius: 10px 10px 10px 0; left: 18px; background-size: 17px;}

    .sub-app-produce-02-wrap{flex-direction: column; gap: 40px; margin-bottom: 40px;}
    .sub-app-produce-02-wrap .col{padding: 0 10px; flex: 1 0 100%;}
    .sub-app-produce-02-wrap .col:last-of-type{flex: 1 0 100%;}
    .sub-app-produce-02-wrap .app-intro-number-text{margin: 0 0px 20px 10px;}
    .sub-app-produce-02-wrap .img-box{display: flex; flex-wrap: wrap; gap: 10px; justify-content: center;}
    .sub-app-produce-02-wrap .sub-app-note-warning{margin-top: 15px;}

    .sub-app-produce-03-wrap{flex-direction: column; gap: 40px; margin: 20px 0 55px;}
    .sub-app-produce-03-wrap .img-box{flex: 1 0 100%; flex-wrap: wrap; padding: 0 10px; gap: 10px; justify-content: center;}
    .sub-app-produce-03-wrap .img-box span{display: none;}
    .sub-app-produce-03-wrap .info-box{flex: 1 0 100%;}
    .sub-app-produce-03-wrap .info-box .sub-app-note-warning{margin-top: 20px;}



    .app-intro-number-text{font-size: 15px; padding-left: 33px;}
    .app-intro-number-text .number{width: 24px; height: 24px; line-height: 24px; font-size: 15px;}

    .app-cate-01{margin: 3px 5px 3px 0; padding: 3px 7px; font-size: 15px;}

    .sub-app-note-warning .content .text{font-size: 14px;}

    .app-dot-list > li{padding-left: 15px; font-size: 15px;}
}








/****************** Sub *************************************/


@media screen and (max-width: 1050px) {}








/****************** Sub *************************************/


@media screen and (max-width: 1050px) {}








/****************** Sub *************************************/


@media screen and (max-width: 1050px) {}








/****************** Sub *************************************/


@media screen and (max-width: 1050px) {}























