.cbc-month-title {
    font-size: clamp(20px, calc(30/1440*100vw), 30px);
    line-height: 1;
}
.cbc-nav {
    display: flex;
    justify-content: space-between;
    align-items: center;
    /* margin-top: clamp(25px, calc(50/1440*100vw), 50px); */
    margin-bottom: clamp(15px, calc(25/1440*100vw), 25px);
}
.cbc-nav button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: clamp(80px, calc(100/1440*100vw), 100px);
    height: clamp(30px, calc(40/1440*100vw), 40px);
    cursor: pointer;
    font-weight: bold;
    font-size: clamp(10px, calc(14/1440*100vw), 14px);
    color: #fff;
    background: #AD8A5B;
    border-radius: 40px;
}
.cbc-table {
    width: 100%;
    border-top: 1px solid #2D3458;
    border-right: 1px solid #2D3458;
    text-align: center;
}
.cbc-table th,
.cbc-table td {
    padding: clamp(5px, calc(10/1440*100vw), 10px) 0;
    font-size: clamp(12px, calc(15/1440*100vw), 15px);
    line-height: 1.3;
    text-align: center;
    border-left: 1px solid #2D3458;
    border-bottom: 1px solid #2D3458;
}
.cbc-table th {
    background-color: #364896;
    font-weight: normal;
}
.cbc-table th.cbc-saturday {
    color: #4da8da; /* 土曜日：青系 */
}
.cbc-table th.cbc-sunday {
    color: #ff9fb8; /* 日曜日：赤/ピンク系 */
}
.cbc-table td.cbc-available {
    color: #d12e2e;
    cursor: pointer;
}
.cbc-table td.cbc-few {
    color: #e67e22;
    cursor: pointer;
}
.cbc-table td.cbc-unavailable {
    color: #999;
}
.cbc-table td.cbc-available,
.cbc-table td.cbc-few,
.cbc-table td.cbc-unavailable {
    font-size: clamp(16px, calc(20/1440*100vw), 20px);
}

/* セル内の日付表示（左上に小さく表示） */
.cbc-date {
    display: block;
    font-size: clamp(12px, calc(14/1440*100vw), 14px);
    color: #fff;
    font-weight: normal;
}

/* その他入力欄の初期非表示設定 */
.hide-other,
.hide-type,
.hide-chance {
    display: none;
    margin-top: 10px;
}