:root {
  --min-device-width: 360px;
  --site-width: 70rem;
  --space-inline-negative: calc(var(--space-inline) * -1);
  --vw100: max(calc(100vw - var(--scrollbar-width, 0)), var(--min-device-width));
  --vw: calc(var(--vw100) / 100);
  --site-outer: max(0px, calc((var(--vw100) - var(--site-width)) / 2));
  --site-gutter: max(var(--site-outer), var(--space-inline));
  --half-leading: calc((1lh - 1em) / 2);
  --half-leading-trim: calc(var(--half-leading) * -1);
  --ascender: 0.15em;
}
@supports not (top: 1lh) {
  :root {
    --half-leading: 0px;
  }
}

:root {
  --letter-spacing: 0;
}

:not(:root) {
  letter-spacing: var(--letter-spacing);
}

:root {
  --color-base: #15191A;
  --color-base-rgb:21, 25, 26;
  --color-primary: #259FE5;
  --color-primary-rgb:37, 159, 229;
  --color-primary2: #10A9FF;
  --color-primary2-rgb:16, 169, 255;
  --color-primary-border1: #4C98D1;
  --color-primary-border1-rgb:76, 152, 209;
  --color-primary3: #0E4EA2;
  --color-primary3-rgb:14, 78, 162;
  --color-primary4: #0E4996;
  --color-primary4-rgb:14, 73, 150;
  --color-primary-border2: #99B4D8;
  --color-primary-border2-rgb:153, 180, 216;
  --color-primary-grade: #2899D9;
  --color-primary-grade-rgb:40, 153, 217;
  --color-primary-grade2: #2CA9FF;
  --color-primary-grade2-rgb:44, 169, 255;
  --color-primary-grade3: #0C4EAC;
  --color-primary-grade3-rgb:12, 78, 172;
  --color-annotation: #758288;
  --color-annotation-rgb:117, 130, 136;
  --color-secondary: #FF2003;
  --color-secondary-rgb:255, 32, 3;
  --color-bg-base: #ffffff;
  --color-bg-base-rgb:255, 255, 255;
  --color-bg-ash: #E6E8E9;
  --color-bg-ash-rgb:230, 232, 233;
  --color-bg-dark: #1E2426;
  --color-bg-dark-rgb:30, 36, 38;
  --color-bg-primary: #3268B0;
  --color-bg-primary-rgb:50, 104, 176;
  --color-border1: #EBECED;
  --color-border1-rgb:235, 236, 237;
  --color-border2: #D3D9DC;
  --color-border2-rgb:211, 217, 220;
  --color-border3: #718188;
  --color-border3-rgb:113, 129, 136;
  --color-border4: #C1CACE;
  --color-border4-rgb:193, 202, 206;
  --color-shadow: #00274E;
  --color-shadow-rgb:0, 39, 78;
  --color-light: #ffffff;
  --color-light-rgb:255, 255, 255;
  --color-dark: #000000;
  --color-dark-rgb:0, 0, 0;
}

:root {
  --ff-noto: "Noto Serif JP", serif;
  --ff-biz: "BIZ UDPGothic", sans-serif;
  --ff-oxanium: "Oxanium", sans-serif;
  --ff-inter: "Inter", sans-serif;
  --ff-serif: var(--ff-noto);
  --ff-sans-serif-secondary: var(--ff-biz);
  --ff-sans-serif-tertiary: var(--ff-oxanium);
  --ff-sans-serif-tertiary2: var(--ff-inter);
}

:root {
  --typography-base-font-family: var(--ff-sans-serif-secondary);
  --typography-base-font-weight: 700;
  --typography-base-font-size: 1rem;
  --typography-base-line-height: 1.75;
  --typography-base-letter-spacing: 0em;
  --typography-txt-sm-font-family: var(--ff-sans-serif-secondary);
  --typography-txt-sm-font-weight: 700;
  --typography-txt-sm-font-size: 0.875rem;
  --typography-txt-sm-line-height: 1.25;
  --typography-txt-sm-letter-spacing: 0em;
  --typography-txt-lg-font-family: var(--ff-sans-serif-secondary);
  --typography-txt-lg-font-weight: 700;
  --typography-txt-lg-font-size: 1.125rem;
  --typography-txt-lg-line-height: 3;
  --typography-txt-lg-letter-spacing: 0em;
  --typography-oxanium-80-56-font-family: var(--ff-sans-serif-tertiary);
  --typography-oxanium-80-56-font-weight: 700;
  --typography-oxanium-80-56-font-size: 5rem;
  --typography-oxanium-80-56-line-height: 1.125;
  --typography-oxanium-80-56-letter-spacing: 0em;
  --typography-oxanium-36-font-family: var(--ff-sans-serif-tertiary);
  --typography-oxanium-36-font-weight: 700;
  --typography-oxanium-36-font-size: 2.25rem;
  --typography-oxanium-36-line-height: 1.2;
  --typography-oxanium-36-letter-spacing: 0em;
  --typography-biz-12-font-family: var(--ff-sans-serif-secondary);
  --typography-biz-12-font-weight: 700;
  --typography-biz-12-font-size: 0.75rem;
  --typography-biz-12-line-height: 1.75;
  --typography-biz-12-letter-spacing: 0em;
  --typography-biz-15-14-font-family: var(--ff-sans-serif-secondary);
  --typography-biz-15-14-font-weight: 700;
  --typography-biz-15-14-font-size: 0.9375rem;
  --typography-biz-15-14-line-height: 1.75;
  --typography-biz-15-14-letter-spacing: 0em;
  --typography-inter16-font-family: var(--ff-sans-serif-tertiary2);
  --typography-inter16-font-weight: 700;
  --typography-inter16-font-size: 1rem;
  --typography-inter16-line-height: 1.75;
  --typography-inter16-letter-spacing: 0em;
  --typography-ttl-serif-font-family: var(--ff-serif);
  --typography-ttl-serif-font-weight: 700;
  --typography-ttl-serif-font-size: 2.6875rem;
  --typography-ttl-serif-line-height: 1.4186046512;
  --typography-ttl-serif-letter-spacing: 0.1em;
}
@media (width <= 48rem) {
  :root {
    --typography-base-font-size: 0.875rem;
    --typography-base-line-height: 1.4285714286;
  }
}
@media (width <= 48rem) {
  :root {
    --typography-txt-sm-font-size: 0.75rem;
    --typography-txt-sm-line-height: 1.4166666667;
  }
}
@media (width <= 48rem) {
  :root {
    --typography-txt-lg-font-size: 0.875rem;
    --typography-txt-lg-line-height: 3;
  }
}
@media (width <= 48rem) {
  :root {
    --typography-oxanium-80-56-font-size: 3.5rem;
    --typography-oxanium-80-56-line-height: 1.1785714286;
  }
}
@media (width <= 48rem) {
  :root {
    --typography-biz-12-font-size: 0.75rem;
    --typography-biz-12-line-height: 1.4285714286;
  }
}
@media (width <= 48rem) {
  :root {
    --typography-biz-15-14-font-size: 0.875rem;
    --typography-biz-15-14-line-height: 1.4285714286;
  }
}
@media (width <= 48rem) {
  :root {
    --typography-ttl-serif-font-size: 1.5rem;
    --typography-ttl-serif-line-height: 1.4583333333;
  }
}

:root {
  --space-inline: 1.25rem;
}

:root {
  --space-block-xxl: 12.5rem;
  --space-block-xl: 7.5rem;
  --space-block-lg: 5rem;
  --space-block-md: 3.75rem;
  --space-block-sm: 2.5rem;
  --space-block-xs: 1.25rem;
  --space-block-xxs: 0.625rem;
  --space-block-xxl-trim: calc(var(--space-block-xxl) - var(--half-leading));
  --space-block-xl-trim: calc(var(--space-block-xl) - var(--half-leading));
  --space-block-lg-trim: calc(var(--space-block-lg) - var(--half-leading));
  --space-block-md-trim: calc(var(--space-block-md) - var(--half-leading));
  --space-block-sm-trim: calc(var(--space-block-sm) - var(--half-leading));
  --space-block-xs-trim: calc(var(--space-block-xs) - var(--half-leading));
  --space-block-xxs-trim: calc(var(--space-block-xxs) - var(--half-leading));
}
@media (width <= 48rem) {
  :root {
    --space-block-xxl: 7.5rem;
    --space-block-xl: 5rem;
    --space-block-lg: 2.5rem;
    --space-block-md: 2.5rem;
    --space-block-sm: 1.875rem;
    --space-block-xs: 1.25rem;
    --space-block-xxs: 0.625rem;
  }
}
:root {
  --scroll-adjust: 12.5rem;
  --sec: 0.5s;
  --sec-fast: 0.2s;
  --sec-slow: 0.8s;
  --opacity: 0.6;
  --zoom: 1.1;
  --radius: 0.75rem;
}
@media (width <= 48rem) {
  :root {
    --scroll-adjust: 6.25rem;
  }
}

