@charset "utf-8";
/* ====================================================
タイムテーブル .timetable-area
==================================================== */
.contents-area.timetable-area {
  padding: 64px 0 0;
}
.contents-area.timetable-area .timetable-note {
  font-size: var(--fs14);
  line-height: 1.75;
  text-align: right;
  color: #262626;
}
.contents-area.timetable-area .timetable-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  column-gap: 6.078431%; /* 62 / 1020 */
  max-width: 1020px;
  margin: 40px auto 0;
}
.contents-area.timetable-area .timetable-ttl {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 54px;
  border-radius: 27px;
  background-color: #4bb23d;
  font-size: var(--fs24);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.05em;
  color: #fff;
}
.contents-area.timetable-area .timetable-img {
  margin-top: 40px;
}
.contents-area.timetable-area .timetable-img img {
  display: block;
  width: 100%;
  height: auto;
}

/* ====================================================
写真 .photo-area
==================================================== */
.contents-area.photo-area {
  padding: 62px 0 150px;
}
/* カンプ上の配置（1200 x 470）を％で保持 */
.contents-area.photo-area .photo-list {
  position: relative;
  aspect-ratio: 1200 / 470;
}
.contents-area.photo-area .photo-item {
  position: absolute;
  overflow: hidden;
  border-radius: 40px;
}
.contents-area.photo-area .photo-item img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.contents-area.photo-area .photo-item:nth-child(1) {
  top: 0;
  left: 0;
  width: 31.166667%; /* 374 / 1200 */
  aspect-ratio: 374 / 251;
}
.contents-area.photo-area .photo-item:nth-child(2) {
  top: 58.510638%; /* 275 / 470 */
  left: 16.166667%; /* 194 / 1200 */
  width: 19.833333%; /* 238 / 1200 */
  aspect-ratio: 238 / 158;
}
.contents-area.photo-area .photo-item:nth-child(3) {
  top: 17.87234%; /* 84 / 470 */
  left: 40%; /* 480 / 1200 */
  width: 26.833333%; /* 322 / 1200 */
  aspect-ratio: 322 / 336;
}
.contents-area.photo-area .photo-item:nth-child(4) {
  top: 16.595745%; /* 78 / 470 */
  left: 71.416667%; /* 857 / 1200 */
  width: 19.5%; /* 234 / 1200 */
  aspect-ratio: 234 / 164;
}
.contents-area.photo-area .photo-item:nth-child(5) {
  top: 60%; /* 282 / 470 */
  left: 74.75%; /* 897 / 1200 */
  width: 22.666667%; /* 272 / 1200 */
  aspect-ratio: 272 / 187;
}

/* ====================================================
TAB
==================================================== */
@media screen and (max-width: 1024px) {
  .contents-area.timetable-area {
    padding-top: 50px;
  }
  .contents-area.timetable-area .timetable-list {
    column-gap: 4%;
    margin-top: 30px;
  }
  .contents-area.timetable-area .timetable-ttl {
    height: 48px;
    border-radius: 24px;
    font-size: var(--fs22);
  }
  .contents-area.timetable-area .timetable-img {
    margin-top: 30px;
  }
  .contents-area.photo-area {
    padding: 50px 0 110px;
  }
  .contents-area.photo-area .photo-item {
    border-radius: 30px;
  }
}

/* ====================================================
SP
==================================================== */
@media screen and (max-width: 767px) {
  .contents-area.timetable-area {
    padding-top: 35px;
  }
  .contents-area.timetable-area .timetable-note {
    font-size: var(--fs12);
    text-align: left;
  }
  .contents-area.timetable-area .timetable-list {
    display: block;
    max-width: 480px;
    margin-top: 20px;
  }
  .contents-area.timetable-area .timetable-box + .timetable-box {
    margin-top: 45px;
  }
  .contents-area.timetable-area .timetable-ttl {
    height: 44px;
    border-radius: 22px;
    font-size: var(--fs18);
  }
  .contents-area.timetable-area .timetable-img {
    margin-top: 20px;
  }

  /* 写真：SPカンプ（375 x 502）基準のコラージュ */
  .contents-area.photo-area {
    padding: 60px 0 30px;
  }
  .contents-area.photo-area .max-inner {
    padding: 0; /* 375基準で配置するため */
  }
  .contents-area.photo-area .photo-list {
    aspect-ratio: 375 / 502;
  }
  .contents-area.photo-area .photo-item {
    border-radius: 20px;
    box-shadow: 0 0 0 3px #fff; /* 重なり部分の白フチ */
  }
  .contents-area.photo-area .photo-item:nth-child(1) {
    z-index: 1;
    top: 0;
    left: 22.666667%; /* 85 / 375 */
    width: 70.533333%; /* 264.5 / 375 */
    aspect-ratio: 529 / 353;
  }
  .contents-area.photo-area .photo-item:nth-child(2) {
    z-index: 3;
    top: 42.629482%; /* 214 / 502 */
    left: 37.066667%; /* 139 / 375 */
    width: 56.133333%; /* 210.5 / 375 */
    aspect-ratio: 421 / 295;
  }
  .contents-area.photo-area .photo-item:nth-child(3) {
    z-index: 4;
    top: 65.438247%; /* 328.5 / 502 */
    left: 6.4%; /* 24 / 375 */
    width: 43.2%; /* 162 / 375 */
    aspect-ratio: 324 / 280;
  }
  .contents-area.photo-area .photo-item:nth-child(4) {
    z-index: 2;
    top: 27.390438%; /* 137.5 / 502 */
    left: 9.333333%; /* 35 / 375 */
    width: 40%; /* 150 / 375 */
    aspect-ratio: 300 / 207;
  }
  .contents-area.photo-area .photo-item:nth-child(5) {
    z-index: 1;
    top: 80.179283%; /* 402.5 / 502 */
    left: 53.866667%; /* 202 / 375 */
    width: 39.333333%; /* 147.5 / 375 */
    aspect-ratio: 295 / 198;
  }
}
