#booking-package .sun {
    
}

#booking-package .mon {
    
}

#booking-package .tue {
    
}

#booking-package .wed {
    
}

#booking-package .thu {
    
}

#booking-package .fri {
    
}

#booking-package .sat {
    
}

#booking-package .nationalHoliday {
    
}

#booking-package_calendarPage .dateField {
    /**
    background-color: #0f9b79;
    color: #fff;
    font-weight: 400;
    **/
}

#booking-package_calendarPage .startDateOfFullRoom {
    /**
    background-image: repeating-linear-gradient(270deg, #ff8989 0px 50%, transparent 0% 100%);
    **/
}

#booking-package_calendarPage .dateOfFullRoom {
    /**
    background: #ff8989;
    **/
}

/* Contact form styling to match static HTML */
.mention {
    text-align: center;
    margin: 20px 0;
}

.official-line-mention {
    font-size: 14px;
    line-height: 1.6;
    margin-bottom: 10px;
}

.official-line-mention a {
    color: #00b900;
    text-decoration: none;
    font-weight: bold;
}

.official-line-mention a:hover {
    text-decoration: underline;
}

.final-notice {
    font-size: 14px;
    color: #666;
    margin: 15px 0;
}

#booking-package_calendarPage .endDateOfFullRoom {
    /**
    background-image: repeating-linear-gradient(90deg, #ff8989 0px 50%, transparent 0% 100%);
    **/
}

.open-campus-form-wrapper {
    max-width: 800px;
    margin: 0 auto;
    padding: 60px 16px 10px;
}

.book_now_button {
    display: block;
    text-align: center;
    transition: 0.4s all;
    color: #fff;
    background: #42BEDE;
    padding: 20px 0;
    width: 100%;
    border-radius: 8px;
    font-size: 18px;
    font-weight: 700;
    border: 1px solid #42BEDE;
    letter-spacing: 1.44px;
    max-width: 300px;
    margin:0 auto;
}

.name {
    font-weight: 500 !important;
}

/* カスタム共通スタイル */
#booking-package .row .value input,
#booking-package .row .value select,
#booking-package .row .value textarea {
    padding: 8px 12px;
    border-radius: 4px;
    background: #fff;
    box-sizing: border-box;
    max-width: 400px;
    border: 1px solid #3585DB; /* デフォルトは水色 */
}

#booking-package_inputFormPanel .row, #booking-package_myBookingDetails .row, #booking-package_serviceDetails .row, #booking-package_myBookingDetailsFroVisitor .row, #booking-package-user-form .row, #booking-package-loginform .row, #booking-package-user-edit-form .row {
    border-style: none;

}

#booking-package .row .name.required + .value input,
#booking-package-user-form .row .name.required + .value input,
#booking-package-loginform .row .name.required + .value input,
#booking-package-user-edit-form .row .name.required + .value input,
#booking-package .row .name.required + .value select,
#booking-package-user-form .row .name.required + .value select,
#booking-package-loginform .row .name.required + .value select,
#booking-package-user-edit-form .row .name.required + .value select,
#booking-package .row .name.required + .value textarea,
#booking-package-user-form .row .name.required + .value textarea,
#booking-package-loginform .row .name.required + .value textarea,
#booking-package-user-edit-form .row .name.required + .value textarea {
    border: 1px solid #FF93A7;
}

/* 任意（requiredなし）の行 → 水色 */
#booking-package .row .name:not(.required) + .value input,
#booking-package .row .name:not(.required) + .value select,
#booking-package .row .name:not(.required) + .value textarea {
    border: 1px solid #3585DB;
}

.description {
    font-size: 13px;
    margin-top: 5px;
    color: #555;
}
#booking-package_inputFormPanel label, #booking-package-subscription_form label, #editCustomFormFieldPanel label, #addCustomFormFieldPanel label {
    margin-bottom: 12px;
}

#booking_package_input_terms + .description {
    color: #14D38A;
    text-align: center;
    margin: 32px 0;
    font-size: 16px;
    font-weight: 500;
}

#confirmBookingButton {
    display: block;
    text-align: center;
    transition: all 0.4s ease;
    color: #fff;
    background: #42BEDE;
    padding: 20px 0;
    width: 100%;
    max-width: 320px;
    border-radius: 8px;
    font-size: 18px;
    font-weight: bold!important;
    border: 1px solid #42BEDE;
    letter-spacing: 1.44px;
    margin: 0 auto;
    cursor: pointer;
    font-weight: bold;
}

#booking-package_inputFormPanel .value, #booking-package_serviceDetails .value, #booking-package_myBookingDetailsFroVisitor .value, #booking-package_myBookingDetails_panel .value, #booking-package-user-form .value, #booking-package-loginform .value, #booking-package-user-edit-form .value {
    font-weight: normal;
}

select#booking_package_input_year,
select#booking_package_input_month,
select#booking_package_input_day {
    width: 120px;
}
#booking-package_schedulePage .selectable_service_slot, #booking-package_servicePage .service_details {
    display: grid;
    grid-template-columns: 1fr;
}

#booking-package_inputFormPanel {
    max-width: 600px;
    margin: 0 auto;
}