/* About
--------------------------------------------------------------------*/
.about-page { padding: 96px 32px 140px; }
.about__brand { display: flex; justify-content: center; margin: 0 auto 96px; padding: 0; }
.about__brand-reveal { display: flex; flex-direction: column; align-items: center; width: min(100%, 760px); overflow: hidden; clip-path: inset(0 100% 0 0); animation: about-logo-reveal 1.8s cubic-bezier(.45,0,.2,1) .15s forwards; }
.about__brand img { display: block; height: auto; }
.about__brand-jtm { width: 30%; margin-bottom: 20px; }
.about__brand-name { width: 100%; }
.about__brand-tagline { width: 36%; margin-top: 26px; }
@keyframes about-logo-reveal { 0% { clip-path: inset(0 100% 0 0); opacity: .65; } 100% { clip-path: inset(0 0 0 0); opacity: 1; } }
.about__gallery { position: relative; width: 100%; max-width: 1200px; aspect-ratio: 3 / 2; margin: 0 auto; overflow: hidden; border-radius: 4px; }
.about__slide { position: absolute; inset: 0; opacity: 0; transition: opacity 1.2s ease-in-out; pointer-events: none; }
.about__slide.is-active { opacity: 1; }
.about__slide img { display: block; width: 100%; height: 100%; object-fit: cover; }
.about__body { width: 100%; max-width: 800px; margin: 48px auto 0; font-family: 'Zen Kaku Gothic New', sans-serif; font-size: 1rem; font-weight: 500; line-height: 2.35; letter-spacing: .02em; }
.about__body p { margin: 0 0 44px; }
.about__body p:last-child { margin-bottom: 0; }
@media (max-width: 1023px) {
  .about-page { padding-right: 24px; padding-left: 24px; }
}
@media (max-width: 767px) {
  .about-page { padding: 76px 24px 100px; }
  .about__brand { margin-bottom: 64px; width: 85%; margin-left: auto; margin-right: auto; }
  .about__brand-reveal { width: 100%; }
  .about__brand-jtm { margin-bottom: 12px; }
  .about__brand-tagline { margin-top: 16px; }
  .about__body { margin-top: 36px; font-size: 0.875rem; line-height: 2.2; }
  .about__body p { margin-bottom: 34px; }
  .about__body .display_pc { display: none; }
}
@media (prefers-reduced-motion: reduce) {
  .about__brand-reveal { animation: none; clip-path: none; opacity: 1; }
  .about__slide { transition: none; }
}
