@layer page {
  @media screen and (min-width: 768px) {
    .event-list {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 5.75rem 3.75rem;
    }
  }
  @media screen and (max-width: 767px) {
    .event-list {
      display: flex;
      flex-direction: column;
      gap: 12.8205128205vw;
    }
  }
  @media screen and (min-width: 768px) {
    .event-sec {
      padding-left: 2.1875rem;
      padding-right: 2.1875rem;
    }
  }
  .event-sec + .event-sec {
    margin-top: 6.25rem;
    padding-top: 7.5rem;
    border-top: 1px solid #D0CECE;
  }
  @media screen and (max-width: 767px) {
    .event-sec + .event-sec {
      margin-top: 10.2564102564vw;
      padding-top: 17.9487179487vw;
    }
  }
  .event-hdr {
    margin-bottom: 3.125rem;
  }
  @media screen and (max-width: 767px) {
    .event-hdr {
      margin-bottom: 10.2564102564vw;
    }
  }
  .event-hdr__ttl {
    color: var(--accent);
    font-size: 1.5rem;
    border-left: 1px solid var(--accent);
    padding-left: 1.5rem;
    letter-spacing: 0.2em;
    line-height: 1.3;
  }
  @media screen and (max-width: 767px) {
    .event-hdr__ttl {
      padding-left: 3.0769230769vw;
      font-size: 3.8461538462vw;
    }
  }
  .event-item {
    position: relative;
    color: var(--accent);
  }
  .event-item__name {
    font-size: 1.5rem;
    line-height: 1.5833333333;
    margin-top: 1.625rem;
    letter-spacing: 0.2em;
  }
  @media screen and (max-width: 767px) {
    .event-item__name {
      margin-top: 5.1282051282vw;
      font-size: 4.6153846154vw;
      line-height: 1.7777777778;
    }
  }
  @media (hover: hover) {
    .event-item__link {
      transition: 0.4s opacity;
    }
    .event-item__link:hover {
      opacity: 0.6;
    }
  }
  .event-item__thumb {
    aspect-ratio: 960/640;
  }
  .event-item__thumb img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    background: rgba(255, 255, 255, 0.4);
  }
  .event-item__day, .event-item__locate {
    font-size: 0.9375rem;
    font-family: var(--sans-serif);
  }
  @media screen and (max-width: 767px) {
    .event-item__day, .event-item__locate {
      font-size: 3.3333333333vw;
    }
  }
  .event-item__day {
    margin-top: 1.125rem;
  }
  @media screen and (max-width: 767px) {
    .event-item__day {
      margin-top: 2.5641025641vw;
    }
  }
  .event-item__locate {
    margin-top: 0.25rem;
  }
  .event-item__end {
    position: absolute;
    z-index: 10;
    pointer-events: none;
    left: 1.25rem;
    top: 1.25rem;
    font-size: 0.9375rem;
    padding: 0.4375rem 0.5rem 0.375rem 0.75rem;
    background: #707070;
    color: #fff;
    line-height: 1.1;
    border-radius: 6.25rem;
    font-family: var(--sans-serif);
    letter-spacing: 0.2em;
  }
  @media screen and (max-width: 767px) {
    .event-item__end {
      left: 4.1025641026vw;
      top: 4.1025641026vw;
      padding: 1.2820512821vw 1.7948717949vw 1.0256410256vw 2.8205128205vw;
      font-size: 2.8205128205vw;
    }
  }
}