:root{--ink:#151a21;--ink-2:#1d2530;--paper:#f6f5f1;--white:#fff;--dim:#5a6270;--line:#151a211a;--navy:#1b3b6f;--navy-l:#7fa3d4;--navy-d:#142c53;--sand:#8a6a3b;--disp:"Zen Old Mincho", "Hiragino Mincho ProN", serif;--body:"Noto Sans JP", system-ui, "Hiragino Sans", sans-serif;--mono:ui-monospace, SFMono-Regular, Menlo, monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--paper);color:var(--ink);font-family:var(--body);-webkit-text-size-adjust:100%;margin:0;font-size:16px;line-height:1.85;overflow-x:hidden}.wrap{width:min(1160px,100% - 40px);margin-inline:auto}h1,h2,h3{font-family:var(--disp);letter-spacing:-.01em;font-weight:700}a{color:inherit}.skip{z-index:100;background:var(--ink);color:var(--white);border-radius:6px;padding:10px 16px;font-size:14px;font-weight:700;text-decoration:none;transition:top .14s;position:absolute;top:-60px;left:12px}.skip:focus{top:12px}.site{backdrop-filter:blur(10px);box-shadow:0 1.2px 0 0 var(--line);z-index:20;background:#f6f5f1db;position:sticky;top:0}.sitein{justify-content:space-between;align-items:center;gap:20px;min-height:64px;display:flex}.brand{align-items:center;gap:10px;text-decoration:none;display:flex}.brand-mark{background:linear-gradient(135deg, var(--navy) 0%, var(--sand) 100%);border-radius:3px;flex:none;width:22px;height:22px}.brand-name{font-family:var(--disp);letter-spacing:.01em;font-size:17px;font-weight:700}.nav ul{align-items:center;gap:4px;margin:0;padding:0;list-style:none;display:flex}.navlink{color:var(--ink);border-radius:6px;padding:8px 12px;font-size:14px;font-weight:500;text-decoration:none;display:inline-block}.navlink:hover{background:#151a210d}.navlink[aria-current=page]{color:var(--navy);font-weight:700}.navcta[aria-current=page]{color:var(--white);box-shadow:inset 0 0 0 2px #ffffff8c}.navcta{background:var(--navy-d);color:var(--white);padding:10px 18px;font-weight:700}.navcta:hover{background:var(--navy)}:target,:focus{scroll-margin-top:88px}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--navy);outline-offset:2px}@media (width<=767px){.sitein{gap:12px;min-height:56px}.brand-name{white-space:nowrap;font-size:15px}.brand-mark{width:18px;height:18px}.nav li:not(:last-child){display:none}.navcta{white-space:nowrap;padding:9px 15px;font-size:13px}}.band{padding-block:72px;position:relative}.band--peak{padding-block:88px}.band--quiet{padding-block:56px}.band--quiet .wrap{width:min(820px,100% - 40px)}.band--dark{background:var(--ink);color:var(--white)}.band--dark h2{color:var(--white)}@media (width>=1000px){.band{padding-block:104px}.band--peak{padding-block:128px}.band--quiet{padding-block:80px}}.kicker{letter-spacing:.18em;color:var(--sand);margin:0 0 12px;font-size:12px;font-weight:700}.band--dark .kicker{color:#d3b58a}h1{margin:0 0 20px;font-size:32px;line-height:1.3}h2{margin:0 0 24px;font-size:26px;line-height:1.35}h3{margin:0 0 8px;font-size:18px;line-height:1.5}@media (width>=700px){h1{font-size:44px}h2{font-size:32px}}@media (width>=1000px){h1{font-size:56px}h2{font-size:40px}}.lede{letter-spacing:-.005em;max-width:38em;margin:0 0 24px;font-size:17px;font-weight:500}.note{color:var(--dim);margin:16px 0 0;font-size:13px}.band--dark .note{color:#9aa3b1}.cardgrid{gap:16px;margin:0;padding:0;list-style:none;display:grid}@media (width>=700px){.cardgrid{grid-template-columns:repeat(3,1fr);gap:20px}}.cardgrid.two{grid-template-columns:1fr}@media (width>=700px){.cardgrid.two{grid-template-columns:repeat(2,1fr)}}.card{background:var(--white);box-shadow:inset 0 0 0 1px var(--line), 0 1px 2px #151a210a;border-radius:10px;align-content:start;gap:10px;padding:22px;display:grid}.card-label{font-family:var(--mono);letter-spacing:.14em;color:var(--sand);font-size:11px;font-weight:700}.card-title{margin:0;font-size:17px;font-weight:700}.card-text{color:var(--dim);margin:0;font-size:14px;line-height:1.8}.band--dark .card{background:#ffffff0d;box-shadow:inset 0 0 0 1px #ffffff1a}.band--dark .card-title{color:var(--white)}.band--dark .card-text{color:#b6bdc9}.band--dark .card-label{color:#d3b58a}.btn{background:var(--navy-d);color:var(--white);cursor:pointer;font-size:16px;font-weight:700;font-family:var(--body);border:0;border-radius:8px;align-items:center;gap:10px;padding:16px 28px;text-decoration:none;display:inline-flex}.btn:hover{background:var(--navy)}.btn--ghost{color:var(--ink);background:0 0;box-shadow:inset 0 0 0 1px #151a2138}.btn--ghost:hover{background:#151a210d}.site-foot{background:var(--ink);color:#aab2c0;padding-block:48px 32px}.foot-grid{gap:28px;display:grid}@media (width>=700px){.foot-grid{grid-template-columns:1fr auto}}.foot-name{font-family:var(--disp);color:var(--white);margin:0 0 8px;font-size:18px;font-weight:700}.foot-line{margin:0;font-size:14px}.foot-tel{color:var(--white);font-weight:700}.foot-nav{gap:10px;margin:0;padding:0;font-size:14px;list-style:none;display:grid}.foot-nav a{text-decoration:none}.foot-nav a:hover{text-decoration:underline}@media (width<=699px){.foot-nav{grid-template-columns:1fr 1fr;gap:12px 16px}}.disclaimer{margin:32px 0 0;padding-top:20px;font-size:12px;line-height:1.9;box-shadow:inset 0 -1.2px #ffffff1f}.disclaimer b{color:#e6c88f}@keyframes fv-up{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes rise{0%{opacity:0;translate:0 20px}to{opacity:1;translate:0}}@keyframes wipe{0%{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){.reveal{animation-name:rise;animation-duration:1ms;animation-timing-function:linear;animation-fill-mode:both;animation-range:entry entry 60%}.wipein{animation-name:wipe;animation-duration:1ms;animation-timing-function:cubic-bezier(.24,.13,.26,1.01);animation-fill-mode:both;animation-range:entry entry 70%}}@supports (animation-timeline:view()) and (animation-range:entry){.reveal,.wipein{animation-timeline:view()}}.fvup{animation:.7s cubic-bezier(.22,.61,.36,1) both fv-up}.fvup--1{animation-delay:.1s}.fvup--2{animation-delay:.22s}.fvup--3{animation-delay:.34s}.fvup--4{animation-delay:.46s}.navlink,.btn,.card{transition:background-color .16s,box-shadow .16s}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal,.wipein,.fvup{animation:none!important}}
