.photo { padding-top: 4rem; overflow: hidden; }
.photo__track { overflow: hidden; }
.photo__list { display: flex; gap: 30px; width: max-content; animation: photo 70s linear infinite; }
.photo__list li { flex: none; height: 35vw; max-height: 620px; aspect-ratio: 4 / 3; }
.photo__list li.is-p { aspect-ratio: 3 / 4; }
.photo:hover .photo__list { animation-play-state: paused; }
@keyframes photo { to { transform: translateX(calc(-50% - 15px)); } }
@media (max-width: 680px) {
  .photo__list { gap: 20px; animation-duration: 50s; }
  .photo__list li { height: 60vw; }
  @keyframes photo { to { transform: translateX(calc(-50% - 10px)); } }
}
.photo__list li { background: var(--ph); }
