.card-deck .card {
    border: #4EBCC4 solid 4px !important;
    border-radius: 0.5rem !important;
    min-width: 45% !important;
    max-width: 45% !important;
    margin-bottom: 1.5rem !important;
    min-height: 600px !important;
}


@media (max-width: 800px) {
    .card-deck .card {
        min-width: 95% !important;
        max-width: 95% !important;
    }
}
@media (max-width: 580px) {
    .card-deck .card {
        min-width: unset !important;
        max-width: unset !important;
    }
}
@media (min-width: 576px) {
    .card-deck {
        justify-content: space-between !important;
    }
}

@media (min-width: 1040px) {
    .card-deck .card {
        min-width: 43% !important;
        max-width: 43% !important;
        margin: 2rem !important;
    }
}

.card-img-top {
    object-fit: cover !important;
    min-height: 40% !important;
    max-height: 40% !important;
}

.card-deck .card .card-body {
    display: flex !important;
    flex-flow: column !important;
    justify-content: space-between !important;
}

.card-deck .card .card-body .card-text {
    padding-top: 2rem !important;
    flex-grow: 1 !important;
}

/*calender*/
#calender {
    color: #151b1e !important;
}
.out .fc-daygrid-event-dot,
.out .fc-list-event-dot {
    border-radius: 0 !important;
}
.fc-header-toolbar :first-of-type {
    display: inline-flex !important;
    align-items: center !important;
}
.fc-header-toolbar button {
    color: #FFF !important
}
td.fc-day-sat {
    background-color: rgba(234, 244, 255, 0.3) !important;
}
td.fc-day-sun {
    background-color: rgba(255, 234, 234, 0.3) !important;
}
a:not([href]):not([tabindex]):hover, a:not([href]):not([tabindex]):focus {
    text-decoration: initial !important;
}
@media (max-width: 768px) {
    .fc-dayGridMonth-view .fc-daygrid-event .fc-event-time,
    .fc-dayGridMonth-view .fc-daygrid-event .fc-event-title {
        display: none !important;
    }
    .fc-header-toolbar.fc-toolbar.fc-toolbar-ltr {
        flex-direction: column !important;
    }
    .fc-header-toolbar.fc-toolbar.fc-toolbar-ltr .fc-toolbar-chunk {
        margin-top: 10px !important;
    }
}
.fc-dayGridMonth-view .fc-daygrid-day {
    font-size: 0.7rem !important;
}
.fc-dayGridMonth-view .fc-daygrid-day .fc-daygrid-day-number {
    white-space: pre !important;
}

.fc .fc-button-primary {
    background-color: white !important;
    color: #4EBCC4 !important;
    border-top-color: #a4b7c1 !important;
    border-bottom-color: #a4b7c1 !important;
    border-right-color: #a4b7c1 !important;
    border-left-color: #a4b7c1 !important;
}
.fc .fc-button-primary:hover {
    background-color: #c2cfd6 !important;
}
.fc .fc-button-primary:not(:disabled).fc-button-active, .fc .fc-button-primary:disabled {
    color: white !important;
    background-color: #4EBCC4 !important;
}
.fc .fc-button-primary:focus, .fc .fc-button-primary:not(:disabled).fc-button-active:focus, .fc .fc-button-primary:not(:disabled):active:focus {
    box-shadow: 0 0 0 0.2rem rgba(78, 188, 196, 0.25) !important
}
.fc .fc-timegrid-slot {
    height: 4rem !important; /* 高さを調整 */
}
/*ツールバー固定*/
.app-body {
    overflow-x: visible !important;
    /*contain: paint;*/
}
.fc-header-toolbar {
    position: sticky !important;
    top: 0 !important;  /* 親要素の上端に固定 */
    background: white !important; /* 背景を指定して重なりを明確に */
    z-index: 10 !important; /* 他の要素より上に表示 */
    padding: 10px 0 !important;
}

#reservationModal .modal-dialog {
    width: 90% !important;
    max-width: 800px !important;
}

table.fc-scrollgrid thead:first-child {
    position: sticky !important;
    top: 11rem !important;
    background: white !important;
    z-index: 1000 !important;
}

div.fc-header-toolbar.fc-toolbar {
    align-items: unset !important;
    flex-flow: column !important;
    gap: 0.5rem !important;
    padding-bottom: 2rem !important;
}

@media(max-width: 448px) {
    .fc .fc-toolbar-title {
        font-size: 1rem !important;
    }
    .fc .fc-col-header-cell-cushion {
        font-size: 0.7rem !important;
    }
    table.fc-scrollgrid thead:first-child {
        top: 11rem !important;
    }
}

@media(max-width: 360px) {
    .fc-event-main .material-symbols-outlined {
        font-size: 0.7rem !important;
    }
}

@media(max-width: 500px) {
    .calender-time-text {
        display: none !important;
    }
    div.fc-header-toolbar.fc-toolbar {
        padding-bottom: 3rem !important;
    }
    .fc-timegrid-event .fc-event-main {
        align-content: center !important;
    }
}

@media(min-width: 400px) {
    .fc-event-main .material-symbols-outlined {
        font-size: 2rem !important;
    }
}

@media(min-width: 1000px) {
    .fc .fc-timegrid-slot {
        height: 7rem !important; /* 高さを調整 */
    }
    .fc-event-main .material-symbols-outlined {
        font-size: 5rem !important;
    }
}
