:root {
    /* ---- Color ------------------------------------------- */
    --c-navy: #0d3b87;
    --c-navy-deep: #0b1a33;
    --c-ink: #1f293d;
    --c-white: #fff;
    --c-blue: #7EA6EA;
    --c-sky: #f7f9fb;
    /* 本文 */
    --c-text: #3b445c;

    --c-white-78: rgb(255 255 255 / 78%);
    --c-white-65: rgb(255 255 255 / 65%);
    --c-white-16: rgb(255 255 255 / 16%);

    --c-ink-71: rgb(31 41 61 / 71%);

    --c-border: rgb(31 41 61 / 14%);

    --c-on-dark: rgb(255 255 255 / 82%);
    /* MV 本文 */

    --c-bg: #fff;
    --c-header-bg: rgb(255 255 255 / 80%);

    /* MV オーバーレイ*/
    --mv-overlay: linear-gradient(180deg,
            rgb(11 26 51 / 55%) 0%,
            rgb(11 26 51 / 15%) 32%,
            rgb(11 26 51 / 72%) 78%,
            rgb(13 59 135 / 90%) 100%);

    /* ---- Typography --------------------------------------- */
    --ff-jp: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", meiryo, sans-serif;
    --ff-en: "Manrope", var(--ff-jp);

    --fw-extralight: 200;
    --fw-light: 300;
    --fw-regular: 400;
    --fw-medium: 500;
    --fw-semibold: 600;
    --fw-bold: 700;
    --fw-extrabold: 800;

    --fz-display: clamp(48px, 7.19vw, 138px);
    --fz-h2: clamp(32px, 4.79vw, 92px);
    --fz-h3: clamp(22px, 1.88vw, 36px);

    --fz-lead: clamp(18px, 1.41vw, 27px);
    --fz-body: clamp(15px, 0.91vw, 17.5px);
    --fz-base: 16px;
    --fz-btn: 15.5px;
    --fz-label: 14px;
    --fz-eyebrow: 10.5px;

    --lh-display: 0.96;
    --lh-head: 1;
    --lh-body: 1.95;

    --ls-display: -0.015em;
    --ls-lead: 0.13em;
    --ls-body: 0.04em;
    --ls-nav: 0.036em;
    --ls-btn: 0.06em;
    --ls-label: 0.137em;
    --ls-eyebrow: 0.28em;

    /* ---- Layout ------------------------------------------- */
    --container: 1440px;
    --gutter: clamp(20px, 3.02vw + 9px, 54px);
    --header-h: 113px;
    --mv-h: 920px;

    /* ---- Component ---------------------------------------- */
    --radius: 12px;
    --btn-pad-y: 22px;
    --btn-pad-x: 34px;
    --btn-gap: 14px;
    --btn-radius: 66px;
    --dot: 6px;
    --contact-w: 164px;
    --logo-w: clamp(370px, min(19.52vw + 147px, 100vw - 950px), 522px);

    --blur: 8px;
    --ease: cubic-bezier(0.22, 1, 0.36, 1);
    --dur: 0.4s;
}