
#sch-calendar .overlay {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.7);
    z-index: 2;
    display: none;
}

        #sch-calendar #calendar {
            position: absolute;
            background: white;
            border: none;
            padding: 10px;
            z-index: 1000;
            box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
            overflow-y: auto; /* 縦スクロールを許可 */
        }

        #sch-calendar .header {
            display: flex;
            justify-content: space-between;
            align-items: center;
        }

        #sch-calendar .month {
            display: inline-block;
            vertical-align: top;
            margin: 10px;
                    position: relative;
        }

        #sch-calendar .month-name {
            text-align: center;
            font-weight: bold;
            margin-bottom: 10px;
        }

        #sch-calendar .day {
    display: flex;
    width: 14.28%;
    text-align: center;
    cursor: pointer;
    align-items: center;
    align-content: center;
    justify-content: center;
                font-weight: bold;

            background-color: #f4f4f4; /* 薄い赤 */
        }
#sch-calendar .days div {
     width: calc(100% / 7 - 4px);
    border-radius: 4px;
    margin: 2px;
    min-height: 38px;
    font-size: 13px;
}
#sch-calendar .day:hover {
            background-color: #fff;
        }

#sch-calendar .weekdays {
            display: flex;
            font-weight: bold;
            justify-content: space-between;
            margin-bottom: 5px;
            text-align: center;
            font-size: 11px;
    color: #555;
        }
#sch-calendar .weekdays div:first-child{
            color: #cc0000
        }
#sch-calendar .weekdays div:last-child{
            color: #0092cc
        }
#sch-calendar .selected {
    border: 2px solid #565656;
    box-sizing: border-box;
/*
    color: #fff;
            background-color: #56a8bf; 
*/
        }
 #sch-calendar .days {
            display: flex;
            flex-wrap: wrap;

        }
#sch-calendar button{
    border-radius: 30px;
    height: 30px;
    width: 30px;
    border: 1px solid #ccc;
    background: #fff;
    cursor: pointer;
    font-size: 11px;
}
#sch-calendar .sunday,#sch-calendar .holiday {
            background-color: #fff0f0; /* 薄い赤 */
        }

#sch-calendar .saturday {
            background-color: #f1f7ff; /* 薄い青 */
        }

#sch-calendar .undefined-button {
    cursor: pointer;
    color: #56a8bf;
/*    text-decoration: underline;*/
    margin-left: 5px;
    position: absolute;
    right: 0;
    top: -4px;
    font-size: 13px;
/*
    border: 1px solid #ccc;
    border-radius: 4px;
*/
    font-size: 12px;
    padding: 5px 5px;
}
#sch-calendar .undefined-button:after{
    border-bottom: 1px solid #56a8bf;
    content: "";
    height: 1px;
    width: 100%;
    display: block;
    margin-top: 3px;
}
#sch-calendar .undefined-button:hover:after{
    border-bottom: none;
}
#sch-calendar .notselect {
            color: #ccc; /* 選択不可の日付は灰色 */
            cursor: not-allowed; /* ポインタを無効にする */
        }

#sch-calendar button#close {
    position: absolute;
    right: 10px;
    border: none;
    font-size: 25px;
    top: 2px;
}
#sch-calendar .disabled {
            display: none;
            opacity: 0.5; /* 無効なボタンの透明度を下げる */
            cursor: not-allowed; /* 無効なボタンのカーソルを無効にする */
        }
/* PC表示: 3か月分 */
@media (min-width: 750px) {
    #sch-calendar #calendar {
        width: 1000px;
        padding: 35px 30px 10px;
        overflow-x: auto;
        overflow-y: hidden;
        position: fixed;
        top: 40%;
        left: 50%;
                height: 352px;
        border-radius: 10px;
        transform: translate(-50%, -50%);
    }
#sch-calendar .header {
padding-top: 0;
        padding-bottom: 0;
        justify-content: center;
    }
#sch-calendar .header > p {
    display: none;
}
#sch-calendar .month {
     width: calc(33.33% - 20px); /* 3か月分 */
            }
#sch-calendar .month-name {
    font-size: 17px;
}
#sch-calendar .undefined-button {
    cursor: pointer;
    color: #56a8bf;
/*    text-decoration: underline;*/
    margin-left: 5px;
    position: absolute;
    right: 0;
    top: -4px;
/*
    border: 1px solid #ccc;
    border-radius: 12px;
*/
    font-size: 13px;
    padding: 5px 7px;
}
    #sch-calendar .undefined-button:hover{
        text-decoration: none;
    }
#sch-calendar button#prev, #sch-calendar button#next {
    position: absolute;
    top: 47%;
}
#sch-calendar button#prev:before, #sch-calendar button#next:before {
    font-family: 'design_plus';
    font-size: 15px;
    top: 1px;
    position: relative;
    color: #000;
    -webkit-font-smoothing: antialiased;
    transition: transform 0.25s ease;
    transform: scale(1);
    transform-origin: 10px;
}
#sch-calendar button#prev{
                left: 5px
            }
#sch-calendar button#prev:before {
    content: '\e90f';
    left: 0px;
}
#sch-calendar button#next{
                right: 5px;
            }
#sch-calendar button#next:before {
    content: '\e910';
    right: 0px;
}
        }

        /* スマホ表示: 1年分 */
        @media (max-width: 750px) {
#sch-calendar #calendar {
    position: fixed;
    background: white;
    border: 1px solid #ccc;
    padding: 0px;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.2);
    overflow-y: auto;
    max-height: 100vh;
    box-sizing: border-box;
    width: 100%;
    left: 0;
    top: 0;
}
#sch-calendar .weekdays div {
    padding: 1vw 0px 0.6vw;
}
#sch-calendar .month-name {
    font-size: 5.07vw;
margin-bottom: 3vw;
}
#sch-calendar div#months{
   padding: 10px 20px 30px;
            }
_::-webkit-full-page-media, _:future, :root #sch-calendar div#months {
              padding: 10px 10px 7.5rem;
}
#sch-calendar .month {
                width: 100%; /* スマホ用の月の幅を指定 */
                margin: 20px 0;

            }
#sch-calendar .weekdays {
     font-size: 2.8vw;
            }
#sch-calendar button#prev, button#next {
     display: none; /* 矢印ボタンを非表示 */
            }
#sch-calendar .header {
display: flex;
        justify-content: center;
        align-items: center;
        position: sticky;
        top: -2px;
        left: 0;
        width: 100%;
        background: #fff;
        /* height: 60px; */
        z-index: 1;
        text-align: center;
        border-bottom: 1px solid #ccc;
        padding: 12px 10px;
        z-index: 100;
        border-bottom: 1px solid #ccc;
        font-size: 3.67vw;
        font-weight: bold;
}
#sch-calendar .days div {
    width: calc(100% / 7 - 1vw);
    border-radius: 4px;
    margin: 0.5vw;
    box-sizing: border-box;
    min-height: 50px;
}
#sch-calendar .days {
font-size: 3vw;
        }
#sch-calendar .undefined-button {
    font-size: 3.2vw;
            top: -2px;
}
#tour_list .choose ul li.calender::after {
position: absolute;
bottom: 3px;
    margin: 0;
width: 100%;
}
        }