:root{--palette-navy:#0b2d5b;--palette-navy-deep:#071e3f;--palette-navy-ink:#061a38;--palette-navy-lift:#0d3f78;--palette-blue:#007bff;--palette-blue-aa-text:#0069da;--palette-blue-aa-fill:#0071eb;--palette-cyan:#00c2ff;--palette-pale-blue:#e6f4ff;--palette-gray-50:#f5f7fa;--palette-gray-100:#e3e8ef;--palette-gray-150:#dde3ec;--palette-gray-200:#c9d2df;--palette-gray-300:#b4bdcb;--palette-gray-400:#98a2b3;--palette-gray-450:#888e97;--palette-gray-500:#6e7582;--palette-gray-550:#656e7b;--palette-gray-600:#6b7280;--palette-gray-650:#5a6478;--palette-gray-700:#4a5568;--palette-gray-900:#333;--palette-white:#fff;--palette-error:#b42318;--color-navy:var(--palette-navy);--color-blue:var(--palette-blue);--color-cyan:var(--palette-cyan);--color-pale-blue:var(--palette-pale-blue);--color-background:var(--palette-gray-50);--color-white:var(--palette-white);--color-ground-dark:var(--palette-navy);--color-ground-light:var(--palette-white);--color-ground-gray:var(--palette-gray-50);--color-ground-pale:var(--palette-pale-blue);--gradient-hero:linear-gradient(120deg, var(--palette-navy-ink) 0%, var(--palette-navy) 55%, var(--palette-navy-lift) 100%);--gradient-hero-mobile:linear-gradient(160deg, var(--palette-navy-ink) 0%, var(--palette-navy) 55%, var(--palette-navy-lift) 100%);--gradient-route:linear-gradient(90deg, var(--palette-navy), var(--palette-blue) 70%, var(--palette-cyan));--gradient-route-vertical:linear-gradient(180deg, var(--palette-navy), var(--palette-blue) 70%, var(--palette-cyan));--color-heading:var(--palette-navy);--color-text:var(--palette-gray-900);--color-text-secondary:var(--palette-gray-700);--color-text-tertiary:var(--palette-gray-650);--color-text-footnote:var(--palette-gray-600);--color-text-muted:var(--palette-gray-550);--color-text-placeholder:var(--palette-gray-500);--color-text-decorative:var(--palette-gray-400);--color-link-hover:var(--palette-blue-aa-text);--color-accent-rule:var(--palette-blue);--color-accent-on-dark:var(--palette-cyan);--color-error:var(--palette-error);--color-on-dark:var(--palette-white);--color-on-dark-94:#fffffff0;--color-on-dark-88:#ffffffe0;--color-on-dark-86:#ffffffdb;--color-on-dark-78:#ffffffc7;--color-on-dark-74:#ffffffbd;--color-on-dark-72:#ffffffb8;--color-on-dark-60:#fff9;--color-on-dark-32:#ffffff52;--color-on-dark-14:#ffffff24;--color-border:var(--palette-gray-100);--color-border-row:var(--palette-gray-150);--color-border-field:var(--palette-gray-450);--color-border-dashed:var(--palette-gray-300);--color-track:var(--palette-gray-200);--color-focus-ring:var(--palette-blue);--color-focus-ring-on-dark:var(--palette-cyan);--color-button-hover:var(--palette-blue-aa-fill);--color-scrim:color-mix(in srgb, var(--palette-navy-ink) 62%, transparent);--grid-texture-navy:#0b2d5b09;--signal-color:var(--palette-cyan);--signal-core:6px;--signal-core-lg:8px;--signal-halo:#00c2ff47;--signal-halo-size:19px;--bridge-stroke:var(--palette-cyan);--bridge-stroke-opacity:.35;--font-latin:var(--font-montserrat,"Montserrat");--font-japanese:var(--font-noto-sans-jp,"Noto Sans JP");--font-sans:var(--font-latin), var(--font-japanese), system-ui, sans-serif;--fs-h1:clamp(2.5rem, calc(2.5rem + 22 * ((100vw - 390px) / 510)), 3.875rem);--fs-h2:clamp(2rem, calc(2rem + 12 * ((100vw - 390px) / 510)), 2.75rem);--fs-h2-compact:clamp(1.75rem, calc(1.75rem + 12 * ((100vw - 390px) / 510)), 2.5rem);--fs-h2-contact:clamp(1.875rem, calc(1.875rem + 10 * ((100vw - 390px) / 510)), 2.5rem);--fs-h3-card:clamp(1.3125rem, calc(1.3125rem + 3 * ((100vw - 390px) / 510)), 1.5rem);--fs-h3-principle:clamp(1.1875rem, calc(1.1875rem + 2 * ((100vw - 390px) / 510)), 1.3125rem);--fs-h3-step:clamp(1.0625rem, calc(1.0625rem + 1 * ((100vw - 390px) / 510)), 1.125rem);--fs-h3-trust:clamp(.9375rem, calc(.9375rem + 2 * ((100vw - 390px) / 510)), 1.0625rem);--fs-lead:clamp(1.03125rem, calc(1.03125rem + 3.5 * ((100vw - 390px) / 510)), 1.25rem);--fs-body:clamp(.96875rem, calc(.96875rem + 1.5 * ((100vw - 390px) / 510)), 1.0625rem);--fs-paragraph:clamp(.9375rem, calc(.9375rem + 1.5 * ((100vw - 390px) / 510)), 1.03125rem);--fs-paragraph-lg:clamp(1rem, calc(1rem + 2 * ((100vw - 390px) / 510)), 1.125rem);--fs-support:clamp(.90625rem, calc(.90625rem + 1.5 * ((100vw - 390px) / 510)), 1rem);--fs-small:.90625rem;--fs-caption:.8125rem;--fs-footnote:.78125rem;--fs-label:clamp(.6875rem, calc(.6875rem + 1 * ((100vw - 390px) / 510)), .75rem);--fs-numeral:clamp(1.75rem, calc(1.75rem + 12 * ((100vw - 390px) / 510)), 2.5rem);--fs-nav:.8125rem;--fs-lang-switch:.78125rem;--fs-button:.9375rem;--fs-chip:.8125rem;--fs-field-label:.84375rem;--fs-input:1rem;--fw-regular:400;--fw-medium:500;--fw-semibold:600;--fw-bold:700;--lh-tight:1.14;--lh-heading:1.2;--lh-snug:1.3;--lh-lead:1.6;--lh-body:1.7;--lh-relaxed:1.8;--ls-h1:-.012em;--ls-h2:-.01em;--ls-label:.22em;--ls-eyebrow:.28em;--ls-index:.2em;--ls-button:.02em;--container-max:1280px;--safe-top:env(safe-area-inset-top,0px);--safe-right:env(safe-area-inset-right,0px);--safe-bottom:env(safe-area-inset-bottom,0px);--safe-left:env(safe-area-inset-left,0px);--measure-copy:560px;--measure-form:520px;--gutter:max(clamp(24px, calc(24px + 16 * ((100vw - 390px) / 510)), 40px), var(--safe-left), var(--safe-right));--grid-gap:32px;--section-pad-block:clamp(80px, calc(80px + 50 * ((100vw - 390px) / 510)), 130px);--section-pad-utility:clamp(40px, calc(40px + 24 * ((100vw - 390px) / 510)), 64px);--section-head-gap:clamp(40px, calc(40px + 32 * ((100vw - 390px) / 510)), 72px);--label-gap:clamp(18px, calc(18px + 8 * ((100vw - 390px) / 510)), 26px);--header-h-top:84px;--header-h-solid:72px;--header-h-mobile:64px;--header-h:var(--header-h-mobile);--radius-badge:3px;--radius-chip:4px;--radius-button:6px;--radius-media:8px;--radius-card:10px;--button-h:54px;--button-h-lg:56px;--field-h:50px;--touch-min:44px;--shadow-card:0 30px 80px -40px #0b2d5b47;--shadow-drawer:-20px 0 60px -30px #061a38b3;--photo-grade:radial-gradient(125% 100% at 50% 45%, transparent 45%, #061a384d 100%), linear-gradient(180deg, transparent 30%, #0b2d5b29 100%);--z-ground:0;--z-scene:1;--z-content:2;--z-section-overlay:3;--z-header:50;--z-menu:60;--z-wipe:90;--z-loader:100;--z-cursor:200;--z-debug:300;--ease-standard:cubic-bezier(.215, .61, .355, 1);--ease-ui:cubic-bezier(.25, .46, .45, .94);--ease-reveal:cubic-bezier(.19, 1, .22, 1);--ease-in-out:cubic-bezier(.645, .045, .355, 1);--dur-micro:.2s;--dur-ui:.3s;--dur-hover:.25s;--dur-reveal:.8s}@media (min-width:900px){:root{--header-h:var(--header-h-top)}}
*,:before,:after{box-sizing:border-box}html{-moz-text-size-adjust:100%;text-size-adjust:100%;scroll-padding-top:calc(var(--header-h-mobile) + var(--safe-top));scroll-padding-bottom:max(64px, calc(var(--safe-bottom) + 12px));background:var(--color-ground-dark);overflow-x:clip}@media (min-width:900px){html{scroll-padding-top:calc(var(--header-h-solid) + var(--safe-top))}}body{background:var(--color-ground-light);min-height:100svh;color:var(--color-text);font-family:var(--font-sans);font-size:var(--fs-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0}h1,h2,h3,p,ul,ol,dl,dd,figure{margin:0}ul[role=list],ol[role=list]{padding:0;list-style:none}img,svg,video,canvas{max-width:100%;display:block}input,textarea,button,select{font:inherit;color:inherit}button{cursor:pointer}a{color:var(--color-heading);text-decoration:none}@media (hover:hover){a:hover{color:var(--color-link-hover)}}::placeholder{color:var(--color-text-placeholder)}:focus-visible{outline:2px solid var(--color-focus-ring);outline-offset:3px}[data-ground=navy] :focus-visible{outline-color:var(--color-focus-ring-on-dark)}:lang(ja) h1,:lang(ja) h2,:lang(ja) h3{letter-spacing:0;word-break:auto-phrase}@supports not (word-break:auto-phrase){:lang(ja) h1,:lang(ja) h2{word-break:keep-all;overflow-wrap:anywhere}}.visually-hidden{clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.skip-link{top:max(12px, var(--safe-top));left:max(12px, var(--safe-left));z-index:calc(var(--z-loader) + 1);border-radius:var(--radius-button);background:var(--color-white);color:var(--color-navy);font-weight:var(--fw-semibold);padding:12px 18px;position:fixed;transform:translateY(-200%)}.skip-link:focus-visible{transform:none}.not-found{min-height:70svh;padding:calc(var(--header-h) + 64px) var(--gutter) 96px;text-align:center;background:var(--color-ground-dark);color:var(--color-on-dark);place-content:center;gap:16px;display:grid}.not-found__code{font-size:var(--fs-label);font-weight:var(--fw-semibold);letter-spacing:var(--ls-eyebrow);color:var(--color-accent-on-dark)}.not-found__title{font-size:var(--fs-h2);line-height:var(--lh-heading)}.not-found__link{padding-block:calc((var(--touch-min) - var(--lh-body) * 1em) / 2);margin-block:calc((var(--touch-min) - var(--lh-body) * 1em) / -2);color:var(--color-on-dark);font-weight:var(--fw-semibold);display:block}html.lenis,html.lenis body{height:auto}.lenis:not(.lenis-autoToggle).lenis-stopped{overflow:clip}.lenis [data-lenis-prevent],.lenis [data-lenis-prevent-wheel],.lenis [data-lenis-prevent-touch],.lenis [data-lenis-prevent-vertical],.lenis [data-lenis-prevent-horizontal]{overscroll-behavior:contain}.lenis.lenis-smooth iframe{pointer-events:none}html[data-scroll-locked]{overflow:clip}html[data-cursor=custom],html[data-cursor=custom] *{cursor:none!important}html[data-cursor=custom] input,html[data-cursor=custom] textarea{cursor:text!important}@keyframes kk-failsafe-reveal{to{visibility:visible;opacity:1;clip-path:none;transform:none}}html.js-motion:not(.motion-ready) [data-intro]{opacity:0;animation:0s linear 4s forwards kk-failsafe-reveal}@media print{[data-reveal],[data-reveal-rule],[data-reveal-text],.kk-line,.kk-line-mask,[data-intro]{opacity:1!important;visibility:visible!important;clip-path:none!important;transform:none!important}[data-reveal=draw]:is(path,circle,rect,line,polyline),[data-reveal=draw] :is(path,circle,rect,line,polyline){stroke-dasharray:none!important;stroke-dashoffset:0!important}canvas,[data-print-hide]{display:none!important}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}}
