body {
  color: #1A1A1A;
}

/* p-calendar-yearly
---------------------------------------------------------------------------- */
.p-calendar-yearly {
  padding-block: 8.8rem 10rem;
}

.p-calendar-yearly-img {
  width: 100%;
  aspect-ratio: 1200/228;
}
.p-calendar-yearly-img > img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center;
}

@media screen and (max-width: 767px) {
  .p-calendar-yearly {
    padding-block: 13.3333333333vw 18.6666666667vw;
  }
  .p-calendar-yearly-img {
    aspect-ratio: 336/352;
  }
}
/* p-calendar-daily
---------------------------------------------------------------------------- */
.p-calendar-daily {
  padding-bottom: 10rem;
}

.p-calendar-daily-container {
  display: flex;
  flex-direction: column;
  gap: 5rem;
}

.p-calendar-daily-table {
  width: 100%;
}

.p-calendar-daily-table-row {
  display: grid;
  grid-template-columns: 18rem 1fr;
  font-size: 1.6rem;
  line-height: 1.8125;
  letter-spacing: 0.06em;
  font-weight: 400;
  border-bottom: 1px solid #BEBEBE;
}
.p-calendar-daily-table-row:first-of-type {
  background-color: #073190;
  border-top: 1px solid #BEBEBE;
}
.p-calendar-daily-table-row:first-of-type .p-calendar-daily-table-header {
  font-size: 2.4rem;
  line-height: 1.125;
  letter-spacing: 0.08em;
  font-weight: 700;
  padding-block: 1.8rem;
  padding-left: 2rem;
  color: #fff;
  background-color: inherit;
}
.p-calendar-daily-table-row:nth-of-type(even) .p-calendar-daily-table-data {
  background-color: #F8F8F8;
}

.p-calendar-daily-table-header {
  font-size: 1.8rem;
  line-height: 1.6111111111;
  letter-spacing: 0.06em;
  font-weight: 700;
  color: #073190;
  align-content: center;
  text-align: left;
  background-color: #E9F6FF;
  padding-block: 2.3rem;
  padding-left: 3rem;
}

.p-calendar-daily-table-data {
  text-align: left;
  align-content: center;
  height: 100%;
  padding-block: 2.3rem;
  padding-left: 3rem;
  border-left: 1px solid #BEBEBE;
}

@media screen and (max-width: 767px) {
  .p-calendar-daily {
    padding-bottom: 13.3333333333vw;
  }
  .p-calendar-daily-container {
    gap: 8vw;
  }
  .p-calendar-daily-table-row {
    grid-template-columns: 32vw 1fr;
    font-size: 4.2666666667vw;
  }
  .p-calendar-daily-table-row:first-of-type .p-calendar-daily-table-header {
    font-size: 5.3333333333vw;
    padding-block: 4.8vw;
    padding-left: 5.3333333333vw;
  }
  .p-calendar-daily-table-header {
    align-content: start;
    font-size: 4.2666666667vw;
    line-height: 1.8125;
    padding-block: 4.8vw 4.5333333333vw;
    padding-left: 5.3333333333vw;
  }
  .p-calendar-daily-table-data {
    align-content: start;
    padding-block: 4.8vw 4.5333333333vw;
    padding-inline: 5.3333333333vw;
  }
}
