.calendar-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.main {
    display: flex;
}

/****** ここからカレンダー用 ******/

.calendar table {
    border-spacing: 0;
    table-layout: fixed;
    width: 100%;
}

.calendar table tr {
    height: 75px;
}

.calendar table tr th,
.calendar table tr td {
    border: 1px solid #CCC;
}

.calendar table tr th {
    text-align: center;
}

table table tr td {
    padding: 3px 5px;
}

.calendar table tr .blank {
    background-color: #EEE;
}

.calendar table tr td.day {
    height: 80px;
    overflow-y: scroll;
    font-size: 12px;
    vertical-align: top;
    min-width: 100px;
}

.event:hover {
    color: white;
}

.sunday {
    background-color: #FFD5EC;
}

.saturday {
    background-color: #D9E5FF;
}

.calendar table tr.month-row, .calendar table tr.weekTit {
    height: fit-content;
}

.calendar table tr.month-row td {
    border-top: none;
    border-left: none;
    border-right: none;
}

.today {
    color: white;
    background: #007bff;
    height: 22px;
    width: 22px;
    border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    text-align: center;
    position: relative;
}

 /* カレンダーのスクロールバー非表示 */
.day {
    -ms-overflow-style: none;    /* IE, Edge 対応 */
    scrollbar-width: none;       /* Firefox 対応 */
}
.day::-webkit-scrollbar {
    display:none;   /* Chrome, Safari 対応 */
}
a.link, .nolink{
    font-size: 15px;
    font-weight: 600;
    height: 22px;
    width: 22px;
    display:block
}
.nolink{
    opacity: 0.6;
}
/****** ここまでカレンダー ******/

table.event-list {
    border-spacing: 0;
}

table.event-list tr th,
table.event-list tr td {
    border: 1px solid #CCC;
    padding: 0.5rem;
}

.price-area {
  display: flex;
  align-items: center;
}