@media (min-width: 769px) {
  .site-navigation--header > .site-navigation__list > li > .link > .navigation-label--multiline {
    display: inline-block;
    line-height: 1.6;
    vertical-align: middle;
  }
}
.site-navigation--header .parent {
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  text-align: left;
  cursor: pointer;
}
@media (max-width: 768px) {
  .site-navigation--header .parent {
    width: 100%;
    line-height: inherit;
  }
}
.site-navigation--header .parent:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: -3px;
}
@media (min-width: 769px) {
  .site-navigation--header .sub-link {
    width: max-content;
    max-width: min(40rem, 100vw - 2.4rem);
  }
}
@media (min-width: 769px) {
  .site-navigation--header .sub-link > .sub-menu {
    max-height: calc(100dvh - 11rem - var(--admin-bar-offset, 0px));
    overflow-y: auto;
  }
}
.site-navigation--header .sub-link .sub-menu .link {
  white-space: normal;
  overflow-wrap: anywhere;
}
.site-navigation--header .sub-link .sub-menu .link::before {
  flex-shrink: 0;
}
.site-navigation--header .sub-link .sub-menu .link:focus-visible {
  outline: 2px solid #2A4037;
  outline-offset: 3px;
}
.site-navigation--header .sub-link .sub-menu .sub-menu {
  padding: 0;
  margin-top: 1rem;
  margin-left: 2rem;
  background: transparent;
  box-shadow: none;
}

@media (max-width: 768px) {
  .site-navigation--footer {
    width: 28rem;
    margin-inline: auto;
  }
}
@media (min-width: 769px) {
  .site-navigation--footer {
    width: 46.1rem;
  }
}
.site-navigation--footer > .site-navigation__list {
  columns: 2;
  column-gap: 2rem;
}
.site-navigation--footer > .site-navigation__list > li {
  break-inside: avoid;
  margin-bottom: 1rem;
}
@media (min-width: 769px) {
  .site-navigation--footer > .site-navigation__list > li {
    margin-bottom: 1.5rem;
  }
}
.site-navigation--footer > .site-navigation__list > li > .link {
  font-family: "EB Garamond", "Hina Mincho", serif;
  font-size: 1.6rem;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
@media (min-width: 769px) {
  .site-navigation--footer > .site-navigation__list > li > .link {
    font-size: 1.9rem;
  }
}
.site-navigation--footer .sub-menu {
  margin-top: 0.5rem;
}
.site-navigation--footer .sub-menu > li + li {
  margin-top: 0.5rem;
}
.site-navigation--footer .sub-menu .link {
  display: flex;
  align-items: flex-start;
  font-family: "EB Garamond", "Hina Mincho", serif;
  font-size: 1.2rem;
  line-height: 1.6;
  overflow-wrap: anywhere;
}
@media (min-width: 769px) {
  .site-navigation--footer .sub-menu .link {
    font-size: 1.4rem;
  }
}
.site-navigation--footer .sub-menu .link::before {
  content: "";
  flex-shrink: 0;
  width: 1rem;
  margin-top: 0.8em;
  margin-right: 1rem;
  border-bottom: 1px solid currentColor;
}
@media (min-width: 769px) {
  .site-navigation--footer .sub-menu .link::before {
    width: 1.5rem;
  }
}
.site-navigation--footer .sub-menu .sub-menu {
  margin-left: 2rem;
}
.site-navigation--footer .link:focus-visible {
  outline: 2px solid #2A4037;
  outline-offset: 3px;
}
.site-navigation--footer .border-anime {
  background-image: linear-gradient(90deg, #000, #000);
}

.header {
  top: var(--admin-bar-offset, 0px);
}
.header .header-btn {
  padding: 0;
  border: 0;
  background: transparent;
  cursor: pointer;
}
.header .header-btn:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: 4px;
}
@media (max-width: 768px) {
  .header .menu {
    height: calc(100dvh - var(--admin-bar-offset, 0px));
  }
}
@media (prefers-reduced-motion: reduce) {
  .header .menu > ul > li.open-close > .parent::after,
  .header .menu > ul > li.open-close .sub-link {
    transition-duration: 0s;
  }
}

@media (max-width: 768px) {
  .navOpen {
    overflow: hidden;
  }
}

.admin-bar .header {
  --admin-bar-offset: 32px;
}
@media (max-width: 782px) {
  .admin-bar .header {
    --admin-bar-offset: 46px;
  }
}
