/*
** #pagetop
*/

#pagetop {
  bottom: 3.6rem;
  right: 3.6rem;
  width: 5rem;
  height: 5rem;
  font-size: 2.5rem;
  border-radius: 0.8rem;
}


/*
** .footer
*/

.footer {
  margin-top: calc((108 / var(--standard-font-size)) * 1em);
}

.footer::before {
  right: 3.6rem;
  width: 12rem;
  height: 6rem;
}

.footer::after {
  mask-image: url(../../image/common/bg_footer-mask@xl.svg);
}

.footer__inner {
  padding-top: min(calc((72 / var(--standard-width-xl)) * 100vw), calc((72 / var(--standard-width-xl)) * var(--max-display-size)));
  padding-left: 3.6rem;
  padding-right: 3.6rem;
}


/*
** .footer__global
*/

.footer__global {
  grid-row-gap: calc((18 / var(--standard-font-size)) * 1em);
}

.footer__global-inner {
  grid-template-columns: auto 1fr;
  grid-column-gap: calc((20 / var(--standard-font-size)) * 1em);
}

.footer__global-summary {
  grid-template-columns: minmax(auto, calc((250 / var(--standard-font-size)) * 1em));
  grid-row-gap: calc((10 / var(--standard-font-size)) * 1em);
}

.footer__global-logo {
  grid-row-gap: calc((4 / var(--standard-font-size)) * 1em);
}

.footer__global-address {
  font-size: calc((14 / var(--standard-font-size)) * 1em);
}

.footer__global-menu-container {
  container-type: inline-size; /* コンテナクエリ */
  container-name: footer-global-menu;
}

.footer__global-menu {
  grid-template-columns: repeat(5, max-content);
  justify-content: end;
  grid-row-gap: calc((15 / var(--standard-font-size)) * 1em);
}

@container footer-global-menu (max-width: 65em) and (min-width: 45em) {
  .footer__global-menu {
    grid-template-columns: repeat(3, max-content);
  }
}

@container footer-global-menu (max-width: 45em) {
  .footer__global-menu {
    grid-template-columns: repeat(2, max-content);
  }
}

.footer__global-menu > .menu-item {
  padding: 0 calc((15 / var(--standard-font-size)) * 1em) 0 calc((10 / var(--standard-font-size)) * 1em);
}

.footer__global-menu > .menu-item:not(:last-child) {
  border-bottom: none;
  border-right: 0.1rem dotted #969696;
}

.footer__global-menu > .menu-item > a {
  font-size: calc((15 / var(--standard-font-size)) * 1em);
  margin-bottom: calc((10 / var(--standard-font-size)) * 1em);
}

.footer__global-menu .sub-menu {
  grid-row-gap: calc((9 / var(--standard-font-size)) * 1em);
}

.footer__global-menu .sub-menu > .menu-item {
  font-size: calc((12 / var(--standard-font-size)) * 1em);
}

.footer__global-related {
  grid-template-columns: max-content minmax(auto, calc((265 / var(--standard-font-size)) * 1em));
  justify-content: end;
  align-items: center;
  grid-column-gap: calc((15 / var(--standard-font-size)) * 1em);
}

.footer__global-related-label {
  font-size: calc((15 / var(--standard-font-size)) * 1em);
}


/*
** .footer__local
*/

.footer__local-inner {
  grid-template-columns: 1fr max-content;
  grid-column-gap: calc((54 / var(--standard-font-size)) * 1em);
}

.footer__local-summary {
  container-type: inline-size; /* コンテナクエリ */
  container-name: footer-local-summary;
}

.footer__local-summary-inner {
  grid-template-columns: max-content 1fr;
  grid-column-gap: calc((54 / var(--standard-font-size)) * 1em);
}

@container footer-local-summary (max-width: 60em) {
  .footer__local-summary-inner {
    grid-template-columns: 100%;
    grid-row-gap: calc((20 / var(--standard-font-size)) * 1em);
  }
}

.footer__local-info {
  grid-template-columns: 100%;
  grid-row-gap: calc((12 / var(--standard-font-size)) * 1em);
  text-align: unset;
}

.footer__local-info-group {
  font-size: calc((32 / var(--standard-font-size)) * 1em) !important;
}

.footer__local-inquiry {
  container-type: inline-size; /* コンテナクエリ */
  container-name: footer-local-inquiry;
}

.footer__local-inquiry-inner {
  grid-auto-flow: column;
  grid-template-columns: repeat(2, auto);
  grid-template-rows: repeat(3, auto);
  grid-gap: calc((5 / var(--standard-font-size)) * 1em) calc((54 / var(--standard-font-size)) * 1em);
  justify-content: left;
  text-align: unset;
}

@container footer-local-inquiry (max-width: 42.5em) {
  .footer__local-inquiry-inner {
    grid-auto-flow: unset;
    grid-template-columns: 100%;
    grid-template-rows: unset;
  }
}

.footer__local-inquiry-label {
  font-size: calc((18 / var(--standard-font-size)) * 1em);
}

* + .footer__local-inquiry-label {
  margin-top: 0;
}

.footer__local-inquiry-tel a {
  font-size: calc((32 / var(--standard-font-size)) * 1em);
}

.footer__local-inquiry-hour {
  font-size: calc((15 / var(--standard-font-size)) * 1em);
}

.footer__local-nav {
  grid-template-columns: minmax(auto, calc((270 / var(--standard-font-size)) * 1em));
  margin-top: auto;
}

.footer__local-nav-inner {
  grid-row-gap: calc((8 / var(--standard-font-size)) * 1em);
  padding: calc((10 / var(--standard-font-size)) * 1em);
}

.footer__local-logo {
  grid-gap: calc((5 / var(--standard-font-size)) * 1em);
}


/*
** .footer__copyright
*/

.footer__copyright {
  font-size: calc((12 / var(--standard-font-size)) * 1em);
  padding-top: calc((12 / var(--standard-font-size)) * 1em);
  padding-bottom: calc((10 / var(--standard-font-size)) * 1em);
  margin-top: calc((10 / var(--standard-font-size)) * 1em);
}
