.calendar_container a {
    text-decoration: none;
}
html body .calendar_container h3 a {
    display: inline-block;
    margin: 5px 15px;
    color: rgb(82, 180, 245) !important;
    -webkit-text-stroke: 1.5px rgb(82, 180, 245);
}
html body .calendar_container h3 a:first-child {
    margin-left: 0px;
}
.calendar_container th {
    height: 30px;
    text-align: center;
}
.calendar_container td {
    height: 100px;
    background-color: white;
    color: black;
    width: calc(100% / 7);
    font-weight: 500;
    padding-bottom: 15px;
}
.calendar_container .today {
    background: rgb(255, 240, 212) !important;
}
.calendar_container th:nth-of-type(1), td:nth-of-type(1) {
    color: red;
    background-color: rgb(255, 248, 248);
}
.calendar_container th:nth-of-type(7), td:nth-of-type(7) {
    color: blue;
    background-color: rgb(255, 248, 248);
}
.calendar_container td span {
    display: block;
    line-height: 120%;
    margin-top: 5px;
}
.calendar_container td small {
    display: block;
    font-size: 11px;
    line-height: 100%;
}
.calendar_container td a {
    text-decoration: underline !important;
    color: rgb(82, 180, 245);
}


.calendar_container {
    margin-bottom: 20px;
}
.calendar_container > .cc-wrap > table {
    margin-bottom: 0px;
}
.cc-top {
    display: none;
}
@media only screen and (max-width:989px) {
    .cc-top {
        overflow-x: scroll;
        overflow-y: hidden;
        height: 20px;
        display: block;
        padding: 0px 10px 0px 10px;
    }
    .cc-top .cc-inner {
        height: 1px;
    }
    .calendar_container > .cc-wrap {
        overflow-x: scroll;
        padding: 10px 10px 5px 10px;
        box-shadow: inset 0 0 5px rgba(0,0,0,0.1);
    }
    .cc-top .cc-inner,
    .calendar_container > .cc-wrap > table {
        min-width: 1050px;
        width: 1050px;
    }
}



.calendar_container td .c_date {
    margin-bottom: 10px;
    font-weight: bold;
}
.calendar_container td .honkan {
    color: rgb(150, 51, 51);
}
.calendar_container td .dai {
    color: rgb(70, 70, 197);
}
.calendar_container td .zassi {
    color: rgb(69, 133, 69);
}
.calendar_container td .comment {
    font-size: 12px;
    padding: 5px;
    background-color: transparent;
    border: 1px solid #ddd;
    line-height: 14px;
    color: #555;
    margin-top: 10px;
}
.calendar_container .td .closed {
    padding:1px 3px 1px 3px; 
    border-radius: 2px; 
    background-color:#2f4f61; 
    color:white;
}
.calendar_container .td .all_closed {
    padding:1px 3px 1px 3px; 
    border-radius: 2px; 
    background-color: #2b1607; 
    color:white;
}
table.calendar span.clmn1 {
    color: #2b1607;
}
table.calendar span.clmn2,
table.calendar span.clmn3 {
    display: inline-block;
    margin: 0px;
}
table.calendar span.clmn2 {
    margin-right: 0.5em;
}
#top .calendar_container td .all-closed {
    color: white;
}
#top .calendar_container td .closed {
    color: white;
}
#top .calendar_container td.holiday {
    background-color: rgb(255, 248, 248);
}
#top .calendar_container td.holiday .c_date {
    color: red;
}

/*mobile*/
#top .is_mobile.calendar_container td:empty {
    background-color: unset;
}
#top .is_mobile.calendar_container td {
    background-color: unset;
    vertical-align: top;
    padding: 10px 0px;
}
#top #wrap_all  .is_mobile.calendar_container th {
    padding: 10px;
    background-color: white;
    color: #323232;
}
#top #wrap_all .is_mobile.calendar_container th:nth-of-type(1), 
#top #wrap_all .is_mobile.calendar_container td:nth-of-type(1) {
    background-color: unset;
    color: initial;
}
#top #wrap_all .is_mobile.calendar_container table {
    width: 100%;
    max-width: 100%;
    min-width: 100%;
}
#top #wrap_all .is_mobile.calendar_container table tr {
    background-color: white;
}
#top #wrap_all .is_mobile.calendar_container table tr > td:nth-of-type(1) {
    width: 10%;
    text-align: center;
}
#top #wrap_all .is_mobile.calendar_container table tr > td:nth-of-type(2) {
    width: 14%;
    text-align: center;
}
#top #wrap_all .is_mobile.calendar_container table tr > td:nth-of-type(3) {
    width: 38%;
}
#top #wrap_all .is_mobile.calendar_container table tr > td:nth-of-type(3) > span {
    padding: 3.5px 7px;
}
#top #wrap_all .is_mobile.calendar_container table tr > td:nth-of-type(4) *,
#top #wrap_all .is_mobile.calendar_container table tr > td:nth-of-type(3) * {
    font-size: 12px !important;
    border: none;
}
#top #wrap_all .is_mobile.calendar_container table tr > td:nth-of-type(4) {
    width: 38%;
    padding: 10px;
}
#top #wrap_all .is_mobile.calendar_container table tr.holiday,
#top #wrap_all .is_mobile.calendar_container table tr:nth-of-type(7n+2):not(:first-of-type),
#top #wrap_all .is_mobile.calendar_container table tr:nth-of-type(7n+1):not(:first-of-type) {
    background-color: rgb(255, 248, 248) !important;
}
#top #wrap_all .is_mobile.calendar_container table tr:nth-of-type(7n+2):not(:first-of-type) > td:nth-of-type(1),
#top #wrap_all .is_mobile.calendar_container table tr:nth-of-type(7n+2):not(:first-of-type) > td:nth-of-type(2) {
    color: red;
}
#top #wrap_all .is_mobile.calendar_container table tr:nth-of-type(7n+1):not(:first-of-type) > td:nth-of-type(1),
#top #wrap_all .is_mobile.calendar_container table tr:nth-of-type(7n+1):not(:first-of-type) > td:nth-of-type(2) {
    color: blue;
}
#top #wrap_all .is_mobile.calendar_container table tr:nth-of-type(1) {
    border-bottom: 2px solid #ccc;
}
#top #wrap_all  .is_mobile.calendar_container .cc-top {
    display: none;
}
#top #wrap_all  .is_mobile.calendar_container .cc-wrap {
    padding: 0px;
    box-shadow: none;
}
#top .is_mobile.calendar_container td .comment {
    border: 1px solid #ccc !important;
    padding: 3px;
}

/*20251225*/
td.holiday .comment {
    background-color: transparent;
}