.p-calendar .xo-event-calendar {
    font-family: inherit;
}

.holiday-titles {
    display: none;
}

.p-calendar .xo-event-calendar tr {
    display: table-row;
}
.p-calendar .xo-event-calendar th,
.p-calendar .xo-event-calendar td {
    display: table-cell;
}

.xo-months {
    display: grid;
    gap: 2.4rem;
}
@media (min-width:960px) {
    .xo-months {
        grid-template-columns: repeat(2, 1fr);
    }
}

.p-calendar .xo-event-calendar table.xo-month .month-header>span {
    color: #E85670;
    font-size: 2.2rem;
}

.p-calendar .xo-event-calendar table.xo-month > thead th {
    background-color: #eae5dc;
    font-size: 1em;
}

.p-calendar .xo-event-calendar table.xo-month .month-event-space {
    height: 2em;
}

.p-calendar .xo-event-calendar table.xo-month .month-dayname td div.today {
    color: inherit;
}

.p-calendar .xo-event-calendar table.xo-month .month-dayname td div.other-month {
    opacity: 0;
    visibility: hidden;
}

.holiday-all::after,
.holiday-holiday::after,
.holiday-pm::after,
.holiday-toban::after {
    display: block;
    width: 100%;
    text-align: center;
    color: #fff;
    font-size: 1.2rem;
    padding: .1em 0;
    border-radius: 4px;
    margin-top: .25em;
    font-weight: normal;
}

.holiday-all::after,
.holiday-holiday::after {
    content: '休診';
    background-color: #e67c73;
}
.holiday-pm::after {
    content: '午後休診';
    background-color: #7cb342;
}
.holiday-toban::after {
    content: '当番医';
    background-color: #039be5;
}
