/* WordPress-specific integration layered over the original site styles. */
:root {
  --font-noto-serif-jp: "Noto Serif JP";
  --font-noto-sans-jp: "Noto Sans JP";
}

.site-header {
  width: min(calc(100% - clamp(44px, 6vw, 104px)), var(--content-width));
}

.desktop-nav,
.mobile-menu__list,
.site-footer__nav {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* .mobile-menu__list {
  display: grid;
} */

.mobile-menu__list {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.desktop-nav-wrap,
.site-footer__nav-wrap {
  display: contents;
}
.company-story__image img {
    position: absolute;
}
header.site-header a.logo img.brand-logo {
    width: 40px;
}
footer.site-footer a.site-footer__logo img.brand-logo {
    width: 50px;
}
.loader .loader__inner img.brand-logo {
    margin: 0 auto;
    text-align: center;
}
@media (max-width: 960px) {
header.site-header a.logo img.brand-logo {
    width: 30px;
}
footer.site-footer a.site-footer__logo img.brand-logo {
    width: 40px;
}
}
@media (min-width: 961px) {
  .hero {
    min-height: calc(min(100svh, 980px) - 114px);
  }
}

@media (min-width: 1600px) {
  .site-header {
    width: min(92vw, var(--content-width));
  }

  .hero {
    min-height: calc(min(100svh, 1020px) - 122px);
  }
}

@media (max-width: 960px) {
  .desktop-nav-wrap {
    display: none;
  }
}
