/* フッター：パソコンの専用寸法と配置。スマホの変更は../responsive.css。 */
:where([data-section="footer"][data-ui="nexa"]).site-footer {
  padding-block: var(--space-footer-y);
  border-block-start: var(--size-line) solid var(--color-line);
}

:where([data-section="footer"][data-ui="nexa"]) .site-footer__layout {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: var(--space-card-gap) var(--space-grid);
}

:where([data-section="footer"][data-ui="nexa"]) .site-footer__brand {
  display: flex;
  align-items: center;
  gap: var(--space-small);
  text-decoration: none;
}

:where([data-section="footer"][data-ui="nexa"]) .site-footer__name {
  font-family: var(--font-latin);
  font-size: var(--font-size-brand);
  font-weight: var(--weight-title);
  letter-spacing: var(--track-brand);
}

:where([data-section="footer"][data-ui="nexa"]) .site-footer__text {
  margin-block: var(--space-stack);
  color: var(--color-text-muted);
}

:where([data-section="footer"][data-ui="nexa"]) .site-footer__social {
  display: flex;
  gap: var(--space-stack);
}

:where([data-section="footer"][data-ui="nexa"]) .site-footer__nav {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: var(--space-stack);
}

:where([data-section="footer"][data-ui="nexa"]) .site-footer__group {
  display: grid;
  align-content: start;
  gap: var(--space-small);
}

:where([data-section="footer"][data-ui="nexa"]) .site-footer__heading {
  font-family: var(--font-title);
  font-size: var(--font-size-button);
  font-weight: var(--weight-title);
}

:where([data-section="footer"][data-ui="nexa"]) .site-footer__group a {
  color: var(--color-text-muted);
  font-family: var(--font-control);
  font-size: var(--font-size-button);
  text-decoration: none;
  transition: color var(--motion-duration) var(--motion-easing);
}

:where([data-section="footer"][data-ui="nexa"]) :is(.site-footer__group a, .site-footer__social a):is(:hover, :focus-visible) {
  color: var(--color-primary);
}

:where([data-section="footer"][data-ui="nexa"]) :is(.site-footer__copyright, .site-footer__policies) {
  color: var(--color-text-muted);
  font-size: var(--font-size-small);
}

:where([data-section="footer"][data-ui="nexa"]) .site-footer__policies {
  display: flex;
  justify-content: flex-end;
  gap: var(--space-stack);
}
