

/*-------------------------------------------------------------------*
|                        index 전체동의 박스
*--------------------------------------------------------------------*/
.form-check2{
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #E7E8FF;
    border: 1px solid #8E8E8E;
    padding: 4px 23px 9px 17px;
    margin: 5px 0 17px;
}
.agree_div{
    cursor: pointer;
}
.form-check-label.agree_str{
    cursor: pointer;
}
.form-check2 .str1{
    font-size: 17px;
}
.form-check2 .str2{
    font-size: 13px;
    font-weight: 300;
    color: #737373;
}
.form-check2 .form-check-input{
    padding: 7px;
    cursor: pointer;
}
@media (max-width: 767px){
    .form-check2 .form-check-input{
        padding: 11px;
    }
}

/*-------------------------------------------------------------------*
|                        물음표 툴팁
*--------------------------------------------------------------------*/
.bi.bi-question-circle-fill{
    color: darkgray;
}
.custom-tooltip {
    --bs-tooltip-bg: #33396B!important;
}
.custom-tooltip .tooltip-inner {
    max-width: 300px;
}

/*-------------------------------------------------------------------*
|                        안내 문구
*--------------------------------------------------------------------*/
.form-label.form-label-1.step_str, .step_str{
    font-weight: 500;
    margin-top: 7px;
    font-size: 15px;
    margin-bottom: 8px;
}
.select_str{
    font-size: 11px;
    margin-bottom: 0;
    margin-left: 5px;
}
.zipcode_button {
    padding: 0 18px;
    height: 32px;
    font-size: 10px;
    background: #4C52B7;
    border: 0;
    color: #fff;
    border-radius: 30px;
}
.face_str {
    color: #DC0000;
    font-size: 11px;
    font-weight: 300;
}
.disease_str {
    color: #4E4E4E;
    border: 1px solid #4E4E4E;
    border-radius: 5px;
    padding: 11px;
    font-size: 11px;
    font-weight: 300;
}
.agree_str {
    font-weight: 500;
    font-size: 14px;
    margin-left: 7px;
    margin-top: 5px;
}
.text-align-end {
    text-align: end;
}
.terms_str {
    color: #2832E8;
    display: flex;
    align-items: center;
    margin-bottom: 13px;
    font-size: 14px;
}
@media (max-width: 767px){
    .form-label.form-label-1.step_str, .step_str {
        font-weight: 700;
        font-size: 1rem;
        line-height: 1.75;
    }
    .select_str {
        font-weight: 400;
        font-size: 1rem;
        line-height: 1.5;
    }
    .zipcode_button {
        height: 2.5rem;
        font-size: 1rem;
    }
    .face_str {
        font-size: 0.8rem;
    }
    .disease_str {
        font-size: 0.8rem;
    }
    .agree_str {
        font-size: 1rem;
    }
    .terms_str {
        font-size: 1rem;
        font-weight: 700;
    }
}

/*-------------------------------------------------------------------*
|                        입력 폼, 체크박스, 라디오박스
*--------------------------------------------------------------------*/
:root {
    --form-check-input: 18px;
    --form-check-input-mobile: 22px;
}

.form-control {
    /*font-size: 11px !important;*/
}
.face_upload_name, .pass_upload_name, .upload_name {
    font-size: 12px;
    font-weight: 300;
    color: #223AB7;
    text-decoration: underline;
}
.form-check-input {
    width: var(--form-check-input) !important;
    height: var(--form-check-input) !important;
}
.form-check-input.index_check_input{
    padding: 7px;
}
.other_visits_div{
    display: flex;
    align-items: center;
}
.form-control-m{
    margin: .5rem 0;
}
.focus:focus {
    /*border-color: #4C52B7FF!important;*/
    /*box-shadow: 0px 0px 0px 1px #4C52B7FF!important;*/
    /*border-color: rgb(251,0,27)!important;*/
    /*box-shadow: 0px 0px 0px 1px rgb(251,0,27)!important;*/
    border: 1.3px solid #4C52B7!important;
    box-shadow: 4px 5px 8px -4px rgba(0, 0, 0, 0.2)!important;
}
.focus.empty-effect{
    border: 1.3px solid #ff7b88 !important;
    box-shadow: 4px 5px 8px -4px rgb(255 0 0 / 20%) !important
}
@media (max-width: 767px){
    .form-control {
        /*font-size: 1rem !important;*/
        /*font-weight: 400 !important;*/
    }
    .face_upload_name, .pass_upload_name, .upload_name {
        font-size: 0.9rem;
    }
    .form-check-input {
        width: var(--form-check-input-mobile) !important;
        height: var(--form-check-input-mobile) !important;
    }
}

/*-------------------------------------------------------------------*
|                        다음/이전 버튼
*--------------------------------------------------------------------*/
.button_section{
    margin-bottom: 55px;
}
.button_section > .container{
    display: flex;
    justify-content: center;
}
.btn.btn-apply-now.btn-primary{
    height: 36px;
    font-size: 12px;
    border-radius: 8px;
    box-shadow: 1px 3px 7px 0px rgba(0, 0, 0, 0.3);
    border-color: #4C52B7;
    display: flex;
    align-items: center;
    justify-content: center;
}
.btn.btn-apply-now.btn-primary.btn_pre{
    background: white;
    color: #4C52B7;
    width: 107px;
}
.btn.btn-apply-now.btn-primary.btn_next{
    background: #4C52B7;
    width: 173px;
}
@media all and (max-width:767px) {
    .btn.btn-apply-now.btn-primary{
        font-size: 1.1rem;
        min-height: 12vw;
        height:unset;
        padding: 1px 8px;
    }
    .btn.btn-apply-now.btn-primary.btn_pre{
        min-width: 107px;
        width:unset;
    }
    .btn.btn-apply-now.btn-primary.btn_next{
        min-width: 173px;
        width:unset;
    }
    .button_section{
        /*margin-bottom: 100px;*/
        margin-bottom: 35px;
    }
}


/*-------------------------------------------------------------------*
|                        기존 css
*--------------------------------------------------------------------*/
.row{
    padding-right: unset;
    padding-left: unset;
    overflow-x: unset;
}
.clean_div{
    height: 100px;
}
.step_section .container{
    display: flex;
    align-items: center;
    justify-content: space-evenly;
}
.step{
    min-width: 10%;
    padding: 0 21px;
    height: 30px;
    border-radius: 20px;
    color: #A7A7A7;
    text-align: center;
    font-size: 12px;
    font-weight: 600;
    display: flex;
    justify-content: center;
    align-items: center;
    box-shadow: inset 0px 0px 4px 0px #A7A7A7;
}
.step.current_step{
    background-color: #4C52B7;
    color: white;
    box-shadow: inset 3px 3px 2px 0px rgb(50,54,126);
}
.step_section img{
    width: 32px;
}
.info_div {
    border-bottom: 1px dashed black;
    padding: 12px 0;
    font-size: 13px;
}
.circle {
    background-color: #2832E8;
    width: 8px;
    height: 8px;
    border-radius: 20px;
    margin-right: 9px;
}
pre {
    height: 240px;
    border: solid 1px #EAEAEA;
    white-space: pre-wrap;
    padding: 12px 26px;
    font-size: 13px;
    font-family: Poppins,Arial,sans-serif;
}
/*.form-check {*/
/*    float: right;*/
/*    display: flex;*/
/*    align-items: center;*/
/*}*/
/*.form-check-input {*/
/*    border-color: #A9A9A9;*/
/*    background-color: #F6F6F6;*/
/*}*/
/*.form-check-input[type=checkbox] {*/
/*    border-radius: 1.25em;*/
/*}*/
/*.form-check-input:checked {*/
/*    background-color: #4C52B7;*/
/*    border: none;*/
/*}*/
/*.form-check-input:focus {*/
/*    border-color: #A9A9A9;*/
/*    outline: none;*/
/*    box-shadow: none;*/
/*}*/
.button_section{
    margin-top: 50px;
}
.button_section > .container{
    display: flex;
    justify-content: center;
}
@media all and (max-width:990px) {
    .step_section .container{
        justify-content: left;
    }
    .terms_section{
        margin-bottom: 100px;
    }
    /*.button_section {*/
    /*    margin-bottom: 0px;*/
    /*    margin-top: 0px;*/
    /*    padding: 15px;*/
    /*    position: fixed;*/
    /*    bottom: 0px;*/
    /*    width: 100%;*/
    /*    background-color: white;*/
    /*    height: auto;*/
    /*    box-shadow: 0px -10px 22px -11px rgba(0, 0, 0, 0.2);*/
    /*}*/
    .footer{
        display: none;
    }
    #about{
        margin-bottom: 3rem;
    }
}
@media all and (min-width:768px) and (max-width:990px) {
    .step{
        min-width: 27%;
        padding: 0 36px;
    }
}
@media all and (max-width:767px) {
    .step{
        width: auto;
        font-size: 0.9rem;
        padding: 0 30px;
    }
    .info_div {
        font-size: 0.85rem;
    }
    .clean_div{
        height: 60px;
    }
    pre {
        height: 120px;
    }
    /*.form-check-input {*/
    /*    margin-left: 8px;*/
    /*}*/
    .mt_20{
        margin-top: 20px;
    }
    .button_section{
        margin-top: 0px;
    }
}

/*-------------------------------------------------------------------*
|                        신규 css
*--------------------------------------------------------------------*/
.form-label-blue {
    /*color: #1460aa;*/
    /*font-size: 13px;*/
    font-size: 15px;
    font-weight: 500;
}
.form-label-black-2 {
    color: #333;
    font-size: 15px;
    font-weight: 500;
}
.form-label-black {
    color: #333;
    font-size: 15px;
    font-weight: 500;
}

.form-control {
    /*border: none;*/
    /*border-bottom: 1px solid #555;*/
    /*border-radius: 0;*/
    /*background-color: transparent;*/
    /*box-shadow: none;*/
    /*outline: none;*/
    /*font-size: 13px;*/
    /*color: #333;*/
    border-radius: 30px;
    padding: .5rem 1rem;
    font-size: 11px;
    min-height: calc(1.5em + 1rem + 2px);
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    background-color: #fff;
    border: 1px solid #ced4da;
}

.form-control:not(:disabled):hover {
    /*background-color: #1460aa1a;*/
}

.form-control:focus
/*, .select2-container--default .select2-selection--single:focus*/
{
    /*border-bottom: 1px solid #1c3764;*/
    /*box-shadow: none !important;*/
    /*outline: none;*/
    border: 1.3px solid #4C52B7!important;
    box-shadow: 4px 5px 8px -4px rgba(0, 0, 0, 0.2)!important;
}

.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--open .select2-selection--single {
    border: 1.3px solid #4C52B7 !important;
    box-shadow: 4px 5px 8px -4px rgba(0, 0, 0, 0.2) !important;
}

.select2-container--open .select2-dropdown--below {
    border-top-left-radius: 4px!important;
    border-top-right-radius: 4px!important;
    border:1px solid #aaa !important;
    margin-top: 5px;
}

.select2-container--open .select2-dropdown--above {
    border-bottom-left-radius: 4px!important;
    border-bottom-right-radius: 4px!important;
    border:1px solid #aaa !important;
    transform: translateY(-5px);
}

.btn-sm.remove-entry:disabled {
    opacity: 0.5;
    pointer-events: none;
}

input[type='radio'] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 18px;
    height: 18px;
    border: 1px solid #6b6b6b;
    border-radius: 50%;
    outline: none;
    cursor: pointer;
}

input[type='radio']:checked {
    /*background-color: #1460aa;*/
    border: 3px solid white;
    /*box-shadow: 0 0 0 1.6px #1460aa;*/
    background-color: #4C52B7;
    box-shadow: 0 0 0 1.6px #4C52B7;
}

/*.is-invalid input[type='radio'] {*/
/*    background-color: #ffffff;*/
/*    border: 5px solid #F44336;*/
/*    box-shadow: 0 0 0 4px #ffd4d1;*/
/*}*/

input[type="radio"] + label,
input[type="checkbox"] + label {
    cursor: pointer;
}

.radio-group {
    display: flex;
    align-items: center;
    font-size: 15px;
}

.radio-group label {
    margin-left: 6px;
}

.radio-group .invalid-feedback {
    display: none;
}

.radio-group.is-invalid .invalid-feedback {
    display: block;
}

.select2-container--default .select2-selection--single {
    /*height: unset !important;*/
    /*padding: .375rem .75rem!important;*/
    /*line-height: 1.5!important;*/
    /*background-color: transparent;*/
    /*box-shadow: none!important;*/
    /*outline: none!important;*/
    /*color: #333!important;*/
    padding: .5rem 1rem!important;
    min-height: calc(1.5em + 1rem + 2px)!important;
    line-height: 1.5!important;
    color: #212529!important;
    background-color: #fff!important;
    font-size: 11px!important;
    font-weight: 400!important;
}

.select2-container--default.select2-container--disabled .select2-selection--single {
    background-color: #e9ecef!important;
}

.select2-container--default.select2-container--disabled {
    pointer-events: none;
}

.select2-container--default .select2-selection--single:hover {
    /*background-color: #1460aa1a;*/
}

select.is-invalid + .select2-container--default .select2-selection--single {
    border-color: red !important;
}

.select2-container--default .select2-selection--single .select2-selection__rendered {
    line-height: 1.5!important;
    padding: 0!important;
    /*padding: 0 0 20px !important;*/
}

.select2-container--default .select2-selection--single {
    /*border: none!important;*/
    /*border-bottom: 1px solid #555!important;*/
    /*border-radius: 0!important;*/
    border-radius: 30px!important;
    border: 1px solid #ced4da!important;
}

.select2-results__option--selectable {
    font-size: 13px!important;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    top: 50%!important;
    transform: translateY(-50%);
    right: 8px!important;
}

.tooltip .tooltip-inner {
    background-color: #33396B !important;
}

.tooltip {
    z-index: 1049;
}

.label-required {
    color: #dc3545;
    font-size: 0.5em;
    vertical-align: super;
}

.invalid-feedback, .date-invalid-feedback, .checkbox-invalid-feedback, .email-invalid-feedback, .email-mismatch-feedback {
    font-size: 13px;
    color: #d50000;
}

.tooltip-inner {
    font-size: 12px;
}
@media (max-width: 767px) {
    .tooltip-inner {
        font-size: 14px;
    }
}
.tooltip.bs-tooltip-top .arrow::before,
.tooltip.bs-tooltip-bottom .arrow::before,
.tooltip.bs-tooltip-right .arrow::before,
.tooltip.bs-tooltip-left .arrow::before {
    /*border-top-color: #f0ad4e;*/
}

.form-label-title{
    color: #1c3764;
    font-size: 20px;
    font-weight: 500;
}
.vertical-line {
    border-left: 4px solid #1460aa;
    padding-left: 10px;
}
.form-check-input:checked {
    /*background-color: #1460aa;*/
    /*border-color: #1460aa;*/
    background-color: #4C52B7;
    border-color: #4C52B7;
}
.form-check-input[type=checkbox] {
    border-radius: 1px;
}
.form-check-input:focus {
    box-shadow: none;
}
.form-check-input:hover {
    cursor: pointer;
}
/*.select-hidden {*/
/*    opacity: 0;*/
/*    visibility: hidden;*/
/*}*/
#page-spinner{
    --bs-bg-opacity: 0;
}
#page-spinner > img{
    width: 50px;
    height: 50px;
}
#about{
    min-height: 45vh;
}
#login{
    min-height: 35vh;
}
.form-select{
    /*border: none;*/
    /*border-bottom: 1px solid #555;*/
    /*border-radius: 0;*/
    /*background-color: transparent;*/
    /*box-shadow: none;*/
    /*outline: none;*/
    /*font-size: 13px;*/
    /*color: #333;*/
    border-radius: 30px;
    padding: .5rem 1rem;
    font-size: 11px;
    min-height: calc(1.5em + 1rem + 2px);
    font-weight: 400;
    line-height: 1.5;
    color: #212529;
    background-color: #fff;
    border: 1px solid #ced4da;
}

.certificate{
    margin-top: 6px;
}
@media (max-width: 767px) {
    .certificate{
        margin-top: unset;
    }
}

.checkbox-vertical-center {
    display: flex;
    align-items: center;
}
.checkbox-vertical-center > input {
    margin-top: unset;
}
.checkbox-vertical-center > label {
    font-weight: normal;
    margin-bottom: unset;
    margin-left: 6px;
}
/*-------------------------------------------------------------------*
|                        기존 css unset 처리
*--------------------------------------------------------------------*/

@media screen and (max-width: 990px) {
    .col-md-2 {
        width: 100%;
    }
    .row .col-md-4 {
        margin-top: 10px;
    }
}
@media (max-width: 767px) {
    .row .col-md-4 {
        margin-top: unset;
    }
}
/*-------------------------------------------------------------------*
|                       SweetAlert2  처리
*--------------------------------------------------------------------*/

.swal2-popup {
    border-radius: 2px;
}
.swal2-title {
    background: #fafafb;
    border-bottom: 1px solid #ddd;
    text-align: left;
    font-size: 22px;
    padding: 0.8em 1em 0.7em;
    font-weight: 500;
}
.swal2-html-container{
    font-size: 0.95rem;
}
.swal2-popup button{
    font-size: 0.9rem;
    padding: 0.5rem 1.5rem;
    border-radius: 2px;
}
.swal2-popup button:focus {
    box-shadow: none !important;
}
/* 제출경고 */
.submit-popup{
    padding-top: 20px;
}
.missing-fields{
    color: #4C52B7;
    font-weight: 600;
}

/* 여권 샘플 */
.sample-popup.swal2-popup {
    width: 700px;
}
.sample-popup.swal2-popup .swal2-html-container{
    text-align: left;
    overflow: visible;
}
.overflow-y {
    max-height: 60vh;
    overflow-y: auto;
    padding-right: 5px;
    box-sizing: border-box;
}
.sample-popup img{
    width: 450px;
    max-width: 100%;
    display: block;
    margin: 0 auto;
}
.sample-popup strong{
    display: block;
    margin: 10px 0 5px;
}


/* 부속 */
.bi.bi-exclamation-circle{
    color: #ff6d00;
    text-shadow: 0 0 1.2px currentColor;
    margin-right: 3px;
}
.swal2-popup .upload-btn{
    border-radius: 0px;
    background: #808080;
    color: #ffffff;
    border: none;
}
.swal2-popup .loading-txt{
    color: #686868;
    margin-top: 5px;
}
/* 버튼 */
.my-confirm-btn{
    background-color: #4C52B7;
}
.my-confirm-btn:hover{
    background-color: #3E438E;
}


/*-------------------------------------------------------------------*
|                       모바일
*--------------------------------------------------------------------*/
@media (max-width: 990px) {
    /*.button_section {*/
    /*    z-index: 1053;*/
    /*}*/
}
@media (max-width: 767px){
    .form-label-black, .form-label-black-2, .form-label-blue {
        font-size: 1rem;
    }
    .form-control {
        min-height: calc(1.5em + 1rem + 2px)!important;
        font-size: 1rem!important;
    }
    .select2-container .select2-selection--single {
        min-height: 42px !important;
        font-size: 1rem !important;
    }
    .select2-results__option--selectable {
        font-size: 16px !important;
    }
    .radio-group {
        font-size: 16px;
    }
}









