
.tbl_basic th{
    font-size: 15px;
}
.tbl_basic td{
    font-size: 14px;
}
.mobile-th{
    display: none;
}
.modal-content{
    width: 100% !important;
}
#myTable input[type="text"]:not(.select_car input[type="text"],.td-class input[type="text"], ),
#myTable select:not(.select_car select, .attendee-info-container select),
.responsive-table input:not(.input_phone),
.responsive-table select{
    width: 250px !important;
}
/* 학년 반 */
.td-class .input_txt,
.select_car .select{
    width: 120px !important;
    max-width: 114px;
    flex-shrink: 0;
}

.calendar-info-text{ 
    margin-left: 10rem;
    margin-bottom: 1rem;
}

/* 사전답사 캘린더 */
.presurvey-calendar{
    display: none;
}
.responsive-table .calendar-wrap{
    margin:0 auto;
}
/* 동의 */
.agree-container{
    text-align: right;
}

/* 사전답사 부가정보 처음엔 안뜨게 */
.mobile-con{
    display: none;
}

/*피크닉룸 부가정보 입력 */
#myTable .picnic{
    display: flex;
}
#myTable .picnic .title{
    width: 280px;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}
#myTable .picnic .radio_con{
    height: 100%;
}
.car-border{
    border-right: none;
    position: absolute;
    width: 700px !important;
    height: 228px;
    background-color: #fff;
    border-bottom: 1px solid #c4c4c4;
}
.car-border .input_con{
    width: 700px;
    height: calc(100% - 1px);
}
.td__div-border--left{
    border-left:1px solid #c4c4c4;
}
.input_con:has(label[for="manager-phone-prefix"]){
    border: none;
}
/* 좌석은 선착순으로 */
.picnic-span{
    font-size: 14px;
}


/* 버튼 */
.btn-wrap{
    display: flex; 
    justify-content: flex-end; 
    gap:0.8rem; 
    padding: 2rem 0 7rem;
}
.visit-table-container .table-title{
    font-weight: 600;
}
.selected-discount-price{
    width: 40%;
}
#tab2 .booking_con1,
#tab3 .booking_con1{
    padding: 0;
}
.visit-table-container .reservationCapacity{
    display: flex;
    gap:8px;
}
.flex-container{
    display: flex;
}
.subtitle-mg{
    list-style: none !important;
    margin-left: 0 !important;
    margin-top: 2rem;
}
.subtitle-disc{
    list-style: disc;
    margin-top: 2rem;
}
.subtitle-disc:first-child{
    margin-top: 0;
}
.visit-table-container strong{
    line-height: 1.6;
}

/* 예약인원 금액 */
/* .headcount-con{
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    width: 100%;
}
.headcount-con div{
    width: 100%;
} */
.headcount-con div,
.headcount-con div p,
.headcount-con div span,
.booking-selected-info.price,
.booking-selected-info.price>span,
.booking-selected-info.headcount{
    font-size:22px;
}
/* .headcount-con div:first-child{
    border-bottom:1px solid #ddd;
    padding-bottom: 2rem;
    margin-bottom: 2rem;
} */

.res_type{
    width: 100px; 
    position: absolute;
    border-right: 1px solid #C4C4C4; 
    height: auto; 
    background: white;
}
.res-parent{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 60px;
    border-bottom: 1px solid #c4c4c4; 
    text-align: center;
}
.res-child{
    display: flex;
    justify-content: center;
    align-items: center;
    height: 240px;
    text-align: center;
}
.res-table{
    width: 100px; 
    position: absolute; 
    border-right: 1px solid #C4C4C4; 
    height: auto; 
    background: white;
}
.res-table p:first-child{
    padding: 42px 0px; 
    border-bottom: 1px solid #c4c4c4; 
    text-align: center;
}
.res-table p:nth-child(2){
    padding: 85.5px 0px; 
    text-align: center;
}
/* 테이블 전체 */
.type-head{
    height: 44px;
    background: #0A2963;
    color: white;
    text-align: center;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.headcount-list .type-head{
    padding:15px 45px 15px 40px;
}

/* 유형 */
.left-con .p-kind{
    width: 460px;
}

/* 금액 */
.left-con .type-head .p-price, .left-con .headcount-kind .price{
    width: 50%;
    text-align: center;
}

/* 인솔자 */
.left-con .headcount-kind .kind{
    width: 70%;
}
/* 왼쪽 테이블 */
.left-con .type-head,
.right-con .type-head{
    justify-content: flex-start;
}

.left-con .type-head .p-kind,
.left-con .headcount-kind .kind{
    display: block;
    padding-left: 10px;
    line-height: 1.5;
}
.left-con .type-head .p-price,
.left-con .headcount-kind .price{
    width: 80px;
}
.booking-select-container .right-con ul.top-li>li>ul>li{
    justify-content: flex-start !important;
}
.right-con .headcount-kind,
.right-con .type-head .p-price {
    display: flex;
    justify-content: flex-end;
}
.right-con .type-head .p-kind{
    display: block;
    width: 246px;
    margin-left: 146px;
    text-align: center;
    line-height: 1.5;
}
.right-con .headcount-kind .price{
    width:auto;
}
.right-con .type-head .p-price{
    width: 100%;
    padding-right:50px;
}


/* d */

.booking_con1 .booking_txt_right li,
.booking_con2 .booking_txt_right li,
.booking_con3 .booking_txt_right li{
    margin-left: 35px;
}
.headcount-kind{
    display: flex;
    justify-content: flex-start;
}
.item_wrap{
    width: 100%;
}

/* 관람예약 > 타이틀*/
.booking_txt_right strong{
    font-size: 2rem;
}
.booking_con1 .booking_txt_right h2{
    margin-top: 30px;
    margin-bottom: 16px;
}
.booking_con1 .booking_txt_right h2:first-child{
    margin-top: 0;
}

/* 달력 */
.date-display{
    justify-content: flex-start;
    gap: 2rem;
}
.assymmetry-box:last-child{
    width: 100%;
}
.date-display-info-text{
    width: 100%;
}

/* 폰트 여백 */

/* 폰트 행간 통일 */
.tab_section{
    line-height: 2;
}
.booking_con1{
    padding: 0 20px;
}
/* 사전답사 페이지가 있는 li의 div에만 스타일 */
.presurvey-container{
    padding: 0;
}
.booking_con1 .booking_txt_right li, .booking_con2 .booking_txt_right li, .booking_con3 .booking_txt_right li{
    margin-left: 10px;
}
.booking_con1 .booking_txt_right li, 
.booking_con2 .booking_txt_right li, 
.booking_con3 .booking_txt_right li{
    margin-left: 35px;
}

/* 탭 */
.tab-ul{
    height: 70px;
}
.tab-ul.type1 li[rel="tab1"] a{
    height: 100%;
    border-top-left-radius: 30px;
}
.tab-ul.type1 li[rel="tab2"] a{
    height: 100%;
}
.tab-ul.type1 li[rel="tab3"] a{
    height: 100%;
    border-top-right-radius: 30px;
}

/* 위 사항에 동의하였습니다. */
.tem-agree{
    font-size: 2rem; 
    font-weight:700; 
    margin-left: 10px; 
    cursor:pointer;  
    width: max-content; 
    display: block;
}
.refund-noti-checkbox{
    width:22px !important; 
    height: 22px; 
    vertical-align:bottom; 
    cursor:pointer;
}


/* 예약인원 선택 현황 */
.booking-selected-cycle-info-container{
    /* width: 100%; */
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
}
.booking-selected-cycle-info-container div{
    font-weight: 600;
}

@media screen and (max-width:1500px){
    
    /* 레이아웃 변경 */
    /* 테이블 */
    .headcount-list .type-head{
        padding:0;
    }
    .right-con .headcount-kind .price{
        padding-right: 20px;
    }
    .left-con .p-kind,
    .left-con .headcount-kind .kind{
        width: 70%;
    }

    .right-con .type-head .p-price{
        padding-right: 20px;
    }

    .visit-table-container .reservationCapacity,.closed-contents{
        border-radius: 10px;
        flex-wrap: wrap;
        padding:10px;
    }
    .input_con{
        padding: 10px;
        max-width: 1400px;
        width: 100%;
    }

    .input_con p{
        margin-left: 0px;
    }
    .headcount-container > .headcount-kind {
        padding: 0px; 
    }
    .res_type{display: none;}
    
    .edu-group__wrap .input_con{
        padding: 10px !important;
    }
    .select_car{
        margin-left: 0;
        width: auto;
    }
    .phone_con{
        justify-content: flex-start;
    }

    #fileUploader{
        margin-left: 0;
    }
    #myTable .input_con .input_txt{
        margin: 0;
    }
    #myTable .picnic{
        gap: 0;
    }

    .responsive-table .input_con .input_txt,
    .responsive-table .phone_con{
        margin: 0;
    }


}
@media screen and (max-width:1400px){
    .cont_wrap{
        padding: 0 20px;
    }
    
    .title-menu-container a{
        display: none;
    }
    .visit-table-container{
        width: 100%;
    }
    .visit-table-container .reservationCapacity{
        justify-content: center;
        font-size: 1.4rem;
    }
    .visit-table-container .table-title{
        flex-direction: column;
        align-items: flex-start;
        gap: 8px;
        flex-wrap: nowrap !important;
    }
        /* 캘린더 레이아웃 아래로 */

    .date-display {
        flex-wrap: wrap;
    }
    .calendar-wrap{
        width: 100%;
    }

    .visit-table-container .table-title{
        padding: 2rem;
    }
    #myTable .picnic{
        gap: 0;
    }
    .car-border{
        position: static;
    }
    .td__div-border--left{
        border: none;
    }

}


@media screen and (max-width:1280px){
    .headcount-table tr td .headcount-input{
        width: 5rem;
    }
    .right-con .type-head .p-kind{
        width: 286px;
    }
    
}
@media screen and (max-width:1200px){
    .booking_step .off{
        margin: 0 !important;
    }
    .off, .on{
        font-size: 16px;
    }
    /* 할인유형선택 */

    /* 전시유형 및 회차 */
    .visit-table-container table th,
    .visit-table-container table td {
        padding: 1rem 1.5rem;
    }
    /* 테이블 */
    .left-con .type-head .p-kind, .left-con .headcount-kind .kind{
        width: 65%;
    }
    .certi-container .box-contents {
        padding: 5rem 5rem;
    }
    .certi-container .box-contents p:nth-of-type(2){
        word-break: break-word;
        text-align: center;
    }
    .deco-table-wrap table th{
        word-break: break-word;
        padding: 10px 0
    }
    .deco-table-wrap table .text{
        margin:0 5px;
        width: 100%;
    }
    #kids-username-input{
        width: 50%;
    }
    #signupInfo .birth .text,  #signupInfo .number .text{
        width: 100px !important;
    }
    .birth .text, .number .text{
        width: 80px !important;
    }

    .deco-table-wrap .address, .td-wrap{
        flex-wrap: wrap;
    }
    #foreigner-signup-info .deco-table-wrap .address{
        flex-wrap: nowrap !important;
    }
    .caution-text:not(#signupInfo .caution-text, #foreigner-signup-info .caution-text){
        margin: 13px 0;
        line-height: 1.5;
    }

    .deco-table-wrap table .select{
        width: 85px;
        font-size: 15px;
    }

    .email select{
        width: 100% !important;
    }
    /* 회원가입 이름 */
     #signupInfo input[id="parents-name-input"]{
        width: fit-content;
        /* width: 90%; */
    }

    .booking-type-container .type-btn-container{
        display: block;
        width: 100%;
    }

    .booking-type-container{
        padding: 50px;
    }

    .booking-type-container .type-btn-container .type-btn{
        width: 100%;
    }

    .booking-select-container div ul.top-li > li > ul {
        padding-left: 0rem;
    }
}   
@media screen and (max-width:1042px) {
    #header .logoContainer{
        top: 0px;
        left: 1rem;
    }

    /* 테이블 */
    .right-con .type-head .p-kind,
    .headcount-input-container{
        margin-left: 80px;
    }

    .right-con .type-head .p-kind{
        width: 196px;
    }  
    .right-con .type-head .p-price{
        width: 80%;
    }

    /* 폰트통일 */
    label, .font_red, .font_size, 
    .booking_txt_right li,
    .booking_con_txt ul li{
        font-size: 1.7rem;
        line-height: 2;
        word-break:keep-all;
    } 

}
@media screen and (max-width:900px){
    .left-con .type-head .p-price, .left-con .headcount-kind .price{
        width: 50%;
    }
    .right-con .type-head .p-kind{
        width: 216px;
    }
    .closed-contents,
    .visit-table-container .reservationCapacity{
        width: 100%;
        height: 6rem;
    }
    .storage-cycle-list-container{
        padding: 30px 20px;
    }
}
@media screen and (max-width:800px){
    .car-border{
        width: auto !important;
    }
    /* 예약 테이블 */
    .headcount-table tbody td[rowspan]{
        padding: 0;
        white-space: nowrap;
    }
    /* 예약 테이블 인원 */
    .headcount-table tbody td:has(.headcount-minus-button){
        padding: 0;
        white-space: nowrap;
    }
    .headcount-table tbody td:not(td[rowspan]){
        padding: 0 10px;
    }
    /* 회원가입 */
    .deco-table-wrap table tr td{
        padding: 20px 0;
    }
    #signupInfo #man-radio{
        margin-left: 6px;
    }
    /* 테이블 */
    .left-con .type-head .p-kind, .left-con .headcount-kind .kind{
        width: 60%;
    }
    /* 부가정보 입력 레이아웃 변경*/
    #myTable tbody .input_con,
    .attendee-info-container .input_con:not(.opst-Table .attendee-info-container .input_con){
        display: grid;
        grid-template-columns:190px 1fr;
    }
    #myTable tbody .input_con p{
        width: auto;
    }
}

@media screen and (max-width:680px){
    .booking_con1{
        padding: 0 10px;
    }
    /* 폰트 행간 통일 */
    label, .font_red, .font_size, .booking_txt_right li, .booking_con_txt ul li{
        line-height: 1.8;
    }
    .flex {
        display: flex;
        flex-wrap: wrap;
    }
	.flex-container.flex {flex-wrap: wrap !important;}
    .visit-table-container .reservationCapacity span{
        font-size: 14px;
    }
    .select_car label{
        width: 96px;
    }
}

@media screen and (max-width: 380px) {
    .visit-table-container .reservationCapacity:not(.storage-cycle-list-container .reservationCapacity){
        width: 130px;
    }
    body > div.cont_wrap > div > div.tab > div.booking-select-container > div.flex-container.flex > div.left-con > ul > li > div:nth-child(2)
    {width: 70px !important;}
    textarea {
        height: 111px;
        width: 100%;
        border: 1px solid #c9c9c9;
    }
    
    .headcount-list {
        position: relative;
    }
}



@media screen and (max-width: 790px) {
    .headcount-input-container {
        display: flex;
        flex-wrap: nowrap;
        gap: 10px;
    }

    #fileUploader {
        width: 100%;
    }
}

/* 미디어 쿼리로 1400px 이하일 때 테이블을 처리하기 위한 기본 스타일 */
@media screen and (max-width: 1400px) {
    .responsive-table .calendar-cell{
        border: none;
    }
    .split-row td {
        display: block;
        width: 100%;
    }

    td[rowspan="3"] {
        border: none !important;
    }

    .booking_input table tr td {
        width: 100%;
    }

    .booking-select-container .left-con {
        border-right: 0;
    }

    .visitor-category-container {
        display: flex !important;
    }

    .visitor-category-container .booking-additional-info-container-title {
        width: 100%;
    }
    /* 사전답사 - 부가정보 입력 */
    .visitor-category-container .booking-additional-info-container-title.mobile {
        display: none;
    }
    .visitor-category-container .booking-additional-info-container-title.mobile2 {
        display: block;
    }

    .input_con {
        padding: 10px;
    }

    .select_car {
        width: auto !important;
    }

    .booking_input table tr td:not(:first-child) {
        border-left: none;
    }

}

@media screen and (max-width: 1250px) {
    .booking-selected-info.headcount{
        width: 100%;
        white-space: nowrap;
    }

    .headcount-con {
        display: flex;
        justify-content: space-between;
        width: 100%;
        flex-wrap: nowrap;
        gap:10px;
    }

    .booking-detail-container{
        justify-content: end;
        gap: 10px;
    }

    .booking-selected-info.headcount {
        border-right:none;
        padding-right: 0px;
    }
}


@media (max-width: 1400px) {
    .responsive-table {
        display: block;
    }
    .responsive-table > tbody > tr > td {
        display: block;
        width: 100%;
        box-sizing: border-box;
        border-right: none !important;
    }

    .responsive-table .calendar-wrap {
        order: -1;
        margin: 0;
        margin-bottom: 20px;
    }
    .res-border{
        border-top: 1px solid #c4c4c4;
    }

    .calendar-info-text{
        margin-left: 1rem;
    }
}

@media screen and (max-width:750px) {
        /* 부가정보 입력 레이아웃 변경 */
        #myTable tbody .input_con,
        .responsive-table .input_con,
        .attendee-info-container .input_con{
            display: flex;
            flex-direction: column;
            align-items: flex-start;
            justify-content: space-between;
            gap: 1rem;
            width: 100%;
        }
        #myTable tbody .input_con,
        .responsive-table .input-con{
            padding: 1.2rem 0;
        }
        .car-border .input_con{
            gap: 0 !important;
        }
        .select_car label{
            margin: 0;
        }
        .car-border .title{
            margin-bottom: 10px;
        }
        .phone_con{
            gap: 10px;
        }
        .headcount-con{
            flex-wrap: wrap;
        }
        .booking-selected {
            padding: 20px 16px !important;
        }
}

@media only screen and (max-width: 650px) {
    .selected-discount-list-container li{
        gap: 1.5rem;
    }
    .booking-selected-payment-info-container,
    .selected-discount{
        padding: 2.5rem;
        flex-wrap: wrap;
    }
    .left-con .type-head .p-kind, .left-con .headcount-kind .kind{
        width: 70%;
    }
    .right-con .type-head .p-kind, .headcount-input-container{
        margin-left: 50px;
    }

    .headcount-kind .price{width: 90px;}
    .headcount-container * {
        font-size: 14px !important;
    }

    .headcount-input-container button {
        width: 1.8rem;
        height: 2rem;
    }
    .headcount-kind .kind{
        word-break: keep-all;
    }
    .headcount-kind .price{
        width: 55px;
        word-break: keep-all;
    }
    .right-con .top-li > li > ul > li> .headcount-kind .price {
        text-align: right;
    }
}
@media only screen and (max-width: 600px) {
    #foreigner-signup-info .deco-table-wrap table tr td,
    #signupInfo .deco-table-wrap table tr td{
        padding: 10px 0;
    }
    /* 예약테이블 */
    .headcount-table tbody td, .headcount-table tbody td span{
        font-size: 1.4rem;
        line-height: 1.5;
    }
    .headcount-table .col-name1{
        width: 10%;
    }
    .headcount-table .col-name2{
        width: 20%;
    }
    .headcount-table .col-price{
        width: 20%;
    }
    .headcount-table .col-headcount{
        width: 30%;
    }
    .headcount-table .col-totalprice{
        width: 20%;
    }
    .headcount-table tr td .headcount-input{
        margin: 0;
    }
    .headcount-table tbody td:not(td[rowspan]){
        padding: 0 8px;
        word-break: keep-all;
    }
    /* 감면 및 할인대상자 테이블 */
    .discount_list table{
        table-layout: fixed;
    }
    .discount_list table colgroup col:nth-child(1){
        width: 106px;
    }
    .discount_list table colgroup col:nth-child(2){
        width: 100px;
    }
    .discount_list table colgroup col:nth-child(3){
        width: 100px;
    }
    .discount_list table colgroup col:nth-child(4){
        width: 35px;
    }
    /* 감면 및 할인대상자 내용 */
    .tbl_basic th{
        font-size: 13px;
    }
    .tbl_basic td{
        font-size: 12px;
    }
    .headcount-con{
        flex-wrap: wrap;
    }
    /* 할인내역 폰트 */
    .headcount-con div,
    .headcount-con div p,
    .headcount-con div span,
    .booking-selected-info.price,
    .booking-selected-info.price>span,
    .booking-selected-info.headcount,
    .booking-selected-info.headcount>span{
        font-size:18px !important;
        justify-content: end;
        gap:10px;
    }
    .sub-title {
        font-size: 2rem !important;
    }
    .left-con .type-head .p-kind, .left-con .headcount-kind .kind{
        width: 60%;
    }
    .right-con .headcount-container{
        width: 100%;
    }
    .booking-select-container .right-con ul.top-li>li>ul>li{
        padding: 0;
    }
    .right-con .type-head .p-kind,
    .right-con .headcount-container-list .headcount-input-container{
        margin-left: 10%;
    }
    .right-con .type-head .p-price{
        width: 110%;
    }
    .item_wrap .blue-btn,
    .item_wrap .gray-btn{
        padding: 1.4rem;
    }
}


@media only screen and (max-width:580px) {
    .tbl_basic td:not(#resi_table td){
        padding: 16px 0px !important;
    }
    .attendee-info-container .input_con{
        display: flex;
        flex-direction: row !important;
        align-items: center;
    }
    .left-con .type-head .p-kind, .left-con .headcount-kind .kind{
        width: 70%;
    }
    .attendee-info-container .input_con{
        margin-bottom: 0;
    }
    .headcount-input-container input{width: 4rem; font-size: 9px;}
}

@media only screen and (max-width:430px){
	.agree-container { 
        float: none !important; 
        align-items: center;
        display: flex;
        align-items: center;
        justify-content: flex-end;
    }
}

@media only screen and (max-width:580px){
    .booking_con1 .booking_txt_right li, .booking_con2 .booking_txt_right li, .booking_con3 .booking_txt_right li{
        margin-left: 20px;
    }
    .date-display-info-text{
        font-size: 15px;
    }
    .visit-date-select-container *{
        font-size: 15px;
    }
    
    .login-contents > div, 
    .login-contents > input, 
    .login-input, 
    #loginBtn, 
    .login-contents > label:has(#loginBtn),
    .password-container > label:has(#confirm-password),
    .password-container > label:has(#new-password){
        width: 100%;
    }
    .related_img{
        width: 150px;
        height: 150px;
    }

    .box-contents img{
        width: 80%;
    }
    .on,.off{
        font-size: 13px !important;
        text-align: center;
        line-height: 1.3;
        word-break: keep-all;
    }
    .circle{
        width: 1.6rem;
        height: 1.6rem;
        margin: 0;
        font-size: 12px !important;
    }

    .tab-ul li a span{
        text-align: center;
        padding:0 10px;
        font-size: 13px;
        word-break: keep-all;
    }

    .booking_con1{
        display: block !important;
    }

    .booking-select-container .left-con {
        border: none;
    }

    .headcount-con{
        font-size: 15px !important;
        margin-left: auto;
    }

    .booking-selected-info.price>span{
        width: 10.5rem;
    }
    .type-head{
        grid-template-columns: 1fr 0.4fr 0.2fr;
    }

    .right-con > ul > div {
        padding: 15px 55px;
    }

    .booking-selected-info.headcount{
        width: 100%;
        margin-top: 15px;
    }

    .blue-btn-con{
        margin-left: auto;
    }

    .booking-selected-payment-info-container{
        padding: 2.5rem
    }

    .input_con{
        display: flex;
        flex-wrap: wrap;
    }
    .phone_con{
        width: 100%;
    }
    
    .input_phone{
        width: 70px;
    }
    .booking_con1 .booking_txt_right li, .booking_con_txt li{
        margin-bottom: 10px;
    }
    .subtitle-mg{
        margin-bottom: 0 !important;
    }   
    /* 왼쪽, 오른쪽 마감 버튼 */
    tr[data-cycle-seq="1"] td:first-child,
    tr[data-cycle-seq="2"] td:first-child,
    tr[data-cycle-seq="3"] td:first-child{
        padding-right: 0.5rem;
        padding-left: 1rem;
    }
    tr[data-cycle-seq="1"] td:last-child,
    tr[data-cycle-seq="2"] td:last-child,
    tr[data-cycle-seq="3"] td:last-child{
        padding-left: 0;
        padding-right: 0.5rem;
    }

    /* 테이블 레이아웃 변경 */
    .attendee-info-container > div{
        display: flex;
        flex-direction: column;
    }
}

@media screen and (max-width:450px){
    .headcount-table tbody td:not(td[rowspan]){
        padding: 0 2px;
    }
    .mobile-th{
        display: table-cell;
        border-bottom: 1px solid #c4c4c4;
        background-color: #f7f7f7;
        padding: 12px 0;
        color: #555;
        font-weight: 600;
    }
    /* 예약 테이블 */
    .headcount-table tbody td, .headcount-table tbody td span{
        font-size: 1.4rem;
    }
    .headcount-table .col-name1{
        display: none;
    }
    .headcount-table .col-name2, .headcount-table .col-price, .headcount-table .col-totalprice{
        width: 20%;
    }
    .headcount-table .col-headcount{
        width: 40%;
    }
    .headcount-table tbody td[rowspan]{
        white-space: normal;
        display: none;
    }
    
    .type_sign, .certi-button input{
        border-radius: 6px;
    }
    .booking_txt_right li.subtitle-mg{
        margin-bottom: 10px !important;
    }
    .mobile-con{
        display: none !important;
    }
    .sel-city{
        margin-top: 10px !important;
    }

    /* 부가정보 입력 */
    .phone_con{
        gap: 6px;
    }
    /* 감면 및 할인대상자 */
    .tbl_basic th{
        font-size: 12px;
    }
    .tbl_basic td{
        font-size: 12px;
        letter-spacing: -0.25px;
    }
    .discount_list table colgroup col:nth-child(1){
        width: 94px;
        white-space: nowrap;
    }
    .discount_list table colgroup col:nth-child(2),
    .discount_list table colgroup col:nth-child(3){
        width: 80px;
    }
    .booking_con_txt ul li .korean-style,
    .booking_con_txt ul li .english-style,
    .booking_con_txt p{
        font-size: 1.5rem !important;
    }
    #myTable td{
        font-size: 15px !important;
    }

    /* 폰트 통일 */
    label, .font_red, .font_size,
    .booking_txt_right li,
    .booking_con_txt ul li{
        font-size: 1.5rem !important;
        line-height: 1.6 !important;
    } 
    .booking_txt_right li .korean-style,
    .booking_txt_right li .english-style{
        font-size: 1.5rem !important;
    }
    /* 할인내역 폰트 */
    .headcount-con div,
    .headcount-con div p,
    .headcount-con div span,
    .booking-selected-info.price,
    .booking-selected-info.price>span,
    .booking-selected-info.headcount,
    .booking-selected-info.headcount>span{
        font-size:15px !important;
    }
    /* 테이블 폰트 */
    .headcount-container *{
        font-size: 1.2rem !important;
    }
    .reservationCapacity span{
        font-size: 1.4rem;
    }  
    .booking_con1 .booking_txt_right li,
    .booking_con_txt li{
        margin-bottom: 10px;
    }
    .booking-selected-discount-info > ul > li:first-child,
    .tem-agree{
        font-size: 1.6rem;
    }
    #bootstrap-confirm-box-modal .modal-dialog .modal-content .modal-body p div {font-size: 14px !important;}
    .privacy_con5{overflow-x: scroll; overflow-y: hidden;}
    /* .privacy_con5,h2{margin:0px !important;} */
    .privacy_con5 table { max-width: fit-content !important; min-width: auto !important;}
    /* .privacy_con5 ul > li, a{margin:0px !important} */
    #bootstrap-confirm-box-modal .modal-header{padding:10px;}
    .txtarea{padding: 0px;}
    .agree_con{
        padding: 20px 16px;
    }
    .certi-container .box-contents{padding: 3rem !important;}
    .box-contents img{width: 50%;}

    /* 예약인원 선택 현황 */
    .sub-title{
        font-size: 1.8rem !important;
    }
    .booking-selected-cycle-info-container,
    .booking-selected-cycle-info-container div{
        font-size: 1.6rem !important;
        gap: 1.2rem;
    }
    .headcount-con{
        display: flex;
        flex-direction: row;
    }

    /* 관람예약 */
    /* .cont_wrap:not(#signupInfo, #signupTerm ){
        margin-top: 5rem !important;
    } */
    .process-briefing p{
        font-size: 28px !important;
    }
    .process-briefing span{
        font-size: 24px;
    }
    .booking_con1{
        padding:0 !important;
    }
    .booking_con1 .booking_txt_right h2{
        margin-top: 30px;
        margin-bottom: 16px;
    }
    .booking_con1 .booking_txt_right h2:first-child{
        margin-top: 0;
    }
    .booking_txt_right strong{
        font-size: 1.8rem !important;
    }
    .booking-select-container-title{
        font-size: 18px;
        padding:50px 0 20px;
    }
    .m_bt{
        margin-bottom: 40px;
    }

    /* 전체 subtitle */
    .title-mg{
        padding: 40px 0 20px;
        display: flex;
        flex-direction: column;
        gap: 1rem;
    }
    
    /* 탭 */
    .tab-ul li a span{
        font-size: 14px !important;
    }
    .tab-ul li a .font_mobile-sm{
        font-size: 12px !important;
        padding: 0;
	}
    .tab-ul.type1 li[rel="tab1"] a{
        height: 100%;
        border-top-left-radius: 10px;
    }
    .tab-ul.type1 li[rel="tab2"] a{
        height: 100%;
    }
    .tab-ul.type1 li[rel="tab3"] a{
        height: 100%;
        border-top-right-radius: 10px;
    }
    .tab_section{
        padding: 40px 0;
    }
    .tab-ul{
        height: 60px;
    }
    .tab-ul li,
    .tab-ul li a,
    .tab-ul li span{
        height: 100%;
    }
    .booking_con1 .booking_txt_right li, 
    .booking_con2 .booking_txt_right li, 
    .booking_con3 .booking_txt_right li{
        margin-left: 16px;
    }
    .date-display-info-text{
        padding: 40px 0 16px;
    }
    /* 전시유형 및 회차 선택 */
    .visit-table-container{
        height: auto;
    }
    .visit-table-container table{
        margin: 20px 0;
    }
    .visit-table-container .table-title{
        padding: 1rem;
        font-weight: bold;
        font-size: 1.6rem;
    }
    .visit-table-container strong{
        font-size: 1.3rem;
        margin-top: 0.5rem;
        word-break: keep-all;
    }
    .visit-table-container table td{
        padding: 0.5rem 1rem;
    }
    .visit-table-container table th{
        padding: 1rem;
    }
    .visit-table-container .reservationCapacity{
        padding: 0.8rem !important;
        text-align: center;
    }
    .visit-table-container .reservationCapacity span{
        margin: 0;
    }

    /* 테이블 */
    .left-con .p-kind{
        width: 120px;
    }
    /* 왼쪽 테이블 */
    .left-con .type-head,
    .right-con .type-head{
        padding: 0 !important;
    }
    /* 오른쪽 테이블 */
    .right-con .type-head .p-kind{
        width: 100%;
    }
    .right-con .type-head .p-price{
        width: 120%;
    }
    .right-con .headcount-kind .price{
        text-align: right;
    }
    .left-con .type-head .p-kind, 
    .left-con .headcount-kind .kind{
        width: 60%;
    }
    .right-con .headcount-kind{
        width: 70%;
    }
    .right-con .type-head .p-kind, .right-con .headcount-input-container{
        margin-left: 15%;
    }
    .left-con .type-head .p-kind, .left-con .headcount-kind .kind{
        padding-left: 5px;
    }
    .right-con .headcount-kind .price,
    .right-con .type-head .p-price{
        padding-right: 5px;
    }
    .headcount-input-container{
        gap: 5px;
    }
    
    /* 할인 및 유형 */
    .booking-selected-discount-info{
        padding: 2.4rem 0 0;
    }
    .booking-selected-discount-info > ul > li:first-child{
        margin-bottom: 10px;
        font-size: 16px;
    }
    .blue-btn-con .blue-btn{
        padding:12px;
    }

    /* 전시를 선택해주세요 */
    .booking-select-info-text,
    .booking-additional-info-text{
        font-size: 1.3rem;
    }

    /* 예약인원 선택 */
    .txt-box{
        padding-bottom: 16px;
        line-height: 1.5;
    }
    .booking-select-container .type-head{
        height: 40px;
    }
    .booking-select-container .right-con ul.top-li>li>ul>li{
        padding: 0;
    }
    .type-head > p{
        font-size: 13px;
    }
    .headcount-input-container input{
        font-size: 14px;
    }
    .sub-title.booking-selected.booking-selected-info-container{
        gap: 20px !important;
    }

    /* 개인정보 이용동의 */
    .booking_con_txt{
        padding: 20px 0 40px !important;
    }
    .refund-noti-checkbox{
        width: 20px;
        height: 20px;
    }
    .tem-agree{
        margin-left: 6px;
    }

    /* 관람 전 유의사항 */
    .booking_con_txt ul{
        padding: 0 20px;
    }
    .booking-selected-info.price>span,
    .booking-selected-info.headcount>span{
        width: 9rem;
    }

    .selected-discount{
        padding: 1rem;
        border-bottom: 1px solid #e8e8e8;
    }
    .selected-discount:last-child {
        border: none;
    }

    /* 모든 항목을 필수로 */
    .booking-additional-info-primary.asterisk{
        display: block;
        font-size: 12.5px;
    }
    .title-mg .asterisk{
        display: block;
        font-size: 13px;
        margin: 10px 0 0 0;
    }
    /* 부가정보 입력 */
    .input_con{
        padding: 30px 10px;
        display: flex;
        align-items: flex-start;
        justify-content: flex-start;
        flex-wrap: wrap;
    }
    .input_con .input_txt{
        margin: 0;
    }

    /* 차량 종류 */
    .select_car select{
        width: 80px;
        padding: 0 10px;
        font-size: 1.4rem !important;
    }
    .select_car .input_txt{
        width: 34%;
    }

    /* 할인 선택됨 */
    .headcount-con div:first-child{
        border:none;
        margin-bottom: 0;
    }
    .booking-selected-info.price {
        width: 100%;
    }
    .select_car .select{
        width: 60px !important;
    }
}
@media screen and (max-width: 400px){
    .headcount-input-container input{
        width: 3rem;
    }
    .right-con .type-head .p-kind, .right-con .headcount-input-container{
        margin-left: 8%;
    }
    .right-con .type-head .p-kind, .right-con .headcount-container-list .headcount-input-container{
        margin-left: 8%;
    }
    /* 테이블 */
    .right-con .headcount-input-container{
        width: 100px;
    }
    .booking-select-container .left-con, 
    .booking-select-container .right-con{
        width: 50%;
    }
    .right-con .type-head .p-price{
        width: 90%;
    }
    .visit-table-container .reservationCapacity{
        gap: 0.4rem;
    }

}

@media screen and (max-width: 380px) {
	body > div.cont_wrap > div > div.tab > div.booking-select-container > div.flex-container.flex > div.left-con > ul > li > div:nth-child(2)
	{width: 70px !important;}
    .date-display-info-text{
        padding: 30px 0 16px;
    }
    .visit-table-container .reservationCapacity span{
        font-size: 13px;
    }
    #myTable .title{
        font-size: 15px !important;
    }
}

