/* 写真（左に見出し、右に6枚を段違いに並べる） */
.photo { position: relative; display: grid; grid-template-columns: minmax(0, 4fr) repeat(3, minmax(0, 2fr)); gap: 16px; align-items: start; padding: 0 6vw 170px; max-width: 1480px; margin: 0 auto; }
.photo__inr { grid-row: 1 / span 2; position: sticky; top: 140px; padding-right: 3vw; }
.photo__ttl { font-size: 5.3333rem; line-height: .8; margin-bottom: 40px; white-space: nowrap; }
.photo__ttl .min { display: block; font-size: .7333rem; letter-spacing: .1em; line-height: 2; margin-bottom: 19px; }
.photo__fig { overflow: hidden; clip-path: inset(0 0 100% 0); transition: clip-path 1.1s var(--ease); }
.photo.is-in .photo__fig, .is-capture .photo__fig { clip-path: inset(0); }
.photo__fig .pic img { transform: scale(1.12); transition: transform 1.6s cubic-bezier(.16, 1, .3, 1); }
.photo.is-in .photo__fig .pic img, .is-capture .photo__fig .pic img { transform: none; }
.photo__fig--1 { aspect-ratio: 3 / 4; }
.photo__fig--2 { aspect-ratio: 1; margin-top: 70px; transition-delay: .1s; }
.photo__fig--3 { aspect-ratio: 3 / 4; transition-delay: .2s; }
.photo__fig--4 { aspect-ratio: 1; transition-delay: .15s; }
.photo__fig--5 { aspect-ratio: 3 / 4; margin-top: 70px; transition-delay: .25s; }
.photo__fig--6 { aspect-ratio: 1; transition-delay: .35s; }
@media (max-width: 1200px) { .photo__ttl { font-size: calc((100vw - 376px) / 826 * 30 + 50px); } }
@media (max-width: 750px) {
  .photo { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; padding: 0 28px 110px; }
  .photo__inr { grid-column: 1 / -1; grid-row: auto; position: static; padding: 0 0 26px; }
  .photo__ttl { margin: 0 0 24px; }
  .photo__ttl .min { margin-bottom: 15px; }
  .photo__fig--2, .photo__fig--5 { margin-top: 36px; }
}
