/* =========================
  Foundation reset + base
  ========================= */
@layer foundation {
  @import "https://unpkg.com/@acab/reset.css";
}
@layer foundation {
  :root {
    --font-sans-jp: "Zen Kaku Gothic New", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-sans-en: "Inter", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
    --font-heading-en: "Josefin Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
    --font-base: var(--font-sans-jp);

    --z-base: 0;
    --z-header: 100;
    --z-dropdown: 200;
    --z-tooltip: 300;
    --z-modal: 400;
    --z-overlay: 500;

    --black: #000000;
    --g-indigo-50: #f0f1f9;
    --g-indigo-100: #e5e7f4;
    --g-indigo-200: #d1d6ec;
    --g-indigo-700: #4f4f9b;
    --indigo-800: #3131b3;
    --indigo-950: #202050;
    --lime-300: #bfe158;
    --lime-900: #445a01;
    --white: #ffffff;

    --color-text-primary: var(--indigo-950);
    --color-link: var(--indigo-800);

    --header-h: 64px;
  }
  @media (min-width: 768px) {
    :root {
      --header-h: 120px;
    }
  }
}
@layer foundation {
  *,
  *::before,
  *::after {
    box-sizing: border-box;
  }
  html {
    font-size: 62.5%;
    font-family: var(--font-base);
    line-height: normal;
    vertical-align: baseline;
    color: var(--color-text-primary);
    scroll-behavior: smooth;
    scroll-padding-top: var(--header-h);
  }
  body {
    margin: 0;
    line-height: 1.4;
    font-size: 1.6rem;
  }
  :lang(en) {
    font-family: var(--font-sans-en);
  }
  body.is-navOpen {
    overflow: hidden;
  }
  button,
  input,
  select,
  textarea {
    font-family: inherit;
  }
  img {
    max-width: 100%;
    height: auto;
    line-height: inherit
  }
  a {
    color: var(--color-link);
    text-decoration-thickness: from-font;
    text-underline-offset: 0.15em;
    text-decoration-skip-ink: auto;
  }
  a:hover {
    text-decoration-thickness: 0.12em;
  }
}
