/* Readable without JavaScript; existing reveal classes opt in after initialization. */
html:not(.mirai-motion-enabled) .main-visual__text-container,
html:not(.mirai-motion-enabled) .main-visual__image,
html:not(.mirai-motion-enabled) .main-visual__image-container:before,
html:not(.mirai-motion-enabled) .gallery-1__image,
html:not(.mirai-motion-enabled) .gallery-2__image,
html:not(.mirai-motion-enabled) .gallery-3__image {
  opacity: 1;
  filter: none;
}
/* Preserve the supplied logo's transparent canvas and natural proportions. */
.l-header__logo { width: 260px; flex-shrink: 0; }
.l-header__logo img { display: block; width: 100%; height: auto; }
@media (min-width: 768px) and (max-width: 1199px) {
  .l-header__logo { width: 240px; }
  .l-header__nav { display: none !important; }
  .l-header__hamburger-button {
    position: absolute; top: 50%; right: 0; display: block;
    width: 56px; height: 50px; transform: translateY(-50%);
    cursor: pointer; transition: .3s;
  }
  .l-header__hamburger-button:before,
  .l-header__hamburger-button:after {
    position: absolute; left: 15px; width: 26px; height: 3px;
    border-radius: 9999px; background: #354b71; content: ""; transition: .3s;
  }
  .l-header__hamburger-button:before { top: 18px; }
  .l-header__hamburger-button:after { top: 29px; }
  .l-header__hamburger-button.is-active:before { top: 23px; transform: rotate(45deg); }
  .l-header__hamburger-button.is-active:after { top: 23px; transform: rotate(-45deg); }
  .l-mobile-nav { padding-top: 136px; }
}
@media (max-width: 767px) {
  .l-header__logo { width: 200px; max-width: calc(100vw - 90px); }
}
.news__time { color: #626c7b; }
img.mirai-activity-art { object-fit: contain !important; background: #fff; }
.mirai-legal { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 24px; margin-top: 24px; font-size: 12px; line-height: 1.8; }
.mirai-legal a { color: #354b71; text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
@media (max-width: 767px) {
  .mirai-legal { justify-content: center; gap: 10px 18px; text-align: center; }
}
@media (prefers-reduced-motion: reduce) {
  .main-visual__text-container,
  .main-visual__image,
  .main-visual__image-container:before,
  .gallery-1__image,
  .gallery-2__image,
  .gallery-3__image { opacity: 1 !important; filter: none !important; }
}
