@font-face{font-family:Noto Sans JP;src:url(/fonts/noto-jp-var.woff2?v=20261110d)format("woff2");font-weight:400 650;font-display:swap}@font-face{font-family:Ubuntu;src:url(/fonts/ubuntu-400.woff2?v=20261109f)format("woff2");font-weight:400;font-display:block}@font-face{font-family:Ubuntu;src:url(/fonts/ubuntu-500.woff2?v=20261109f)format("woff2");font-weight:500 600;font-display:block}@font-face{font-family:Ubuntu;src:url(/fonts/ubuntu-700.woff2?v=20261109f)format("woff2");font-weight:700 800;font-display:block}:root{--navy:#2f2766;--charcoal:#241d52;--paper:#efeaf9;--paper-deep:#e3dcf4;--card:#fbfaff;--ink:#2a2150;--ink-soft:#5f5890;--on-navy:#fbfaff;--on-navy-soft:#cfc8ee;--indigo:#5b4fd0;--violet:#7a63e6;--violet-light:#9a89f0;--rule-light:#d4cbee;--rule-dark:#4a4190;--emerald:#1fa67a;--emerald-deep:#0f7a5a;--mint:#e1f2ee;--mint-soft:#f1faf7;--mint-deep:#d3ece6;--mint-line:#c2e0d8;--grad:linear-gradient(135deg, var(--violet), var(--emerald));--font-ja:"Noto Sans JP", "Hiragino Sans", "Yu Gothic UI", "Yu Gothic", Meiryo, sans-serif;--font-en:"Ubuntu", "Noto Sans JP", "Hiragino Sans", "Yu Gothic UI", sans-serif;--gutter:clamp(20px, 5vw, 80px);--content:1360px;--section:clamp(80px, 11vw, 168px);--header-h:72px;--ease:cubic-bezier(.16, 1, .3, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;color-scheme:light;scroll-padding-top:100px}body{background:var(--paper);color:var(--ink);font-family:var(--font-ja);letter-spacing:.02em;line-break:strict;overflow-wrap:break-word;font-kerning:normal;-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.9}@media (width<=767px){body{font-size:16px;line-height:1.85}:root{--header-h:60px}html{scroll-padding-top:25px}}p,dd,li{word-break:auto-phrase;text-wrap:pretty}img{max-width:100%;height:auto;display:block}picture{display:contents}h1,h2,h3,p,ol,ul,dl,dd,figure{margin:0}ol,ul{padding:0;list-style:none}a{color:inherit}a[href^=tel\:]{min-height:24px;line-height:24px;display:inline-block}:focus-visible{outline:3px solid var(--focus,var(--indigo));outline-offset:3px}.on-dark{--focus:var(--violet-light);color:var(--on-navy)}a[href^=mailto\:]{min-height:24px;line-height:24px;display:inline-block}.wrap{width:min(100% - var(--gutter) * 2, var(--content));margin-inline:auto}.heading{letter-spacing:-.02em;word-break:auto-phrase;text-wrap:balance;font-size:clamp(32px,4.1vw,60px);font-weight:700;line-height:1.32}.eyebrow{flex-direction:column;align-items:flex-start;gap:4px;font-size:14px;line-height:1.4;display:flex}.eb-no{font-family:var(--font-en);letter-spacing:.06em;color:var(--emerald-deep);order:0;font-weight:500}.eb-no:after{content:"."}.eb-en{font-family:var(--font-en);letter-spacing:-.005em;color:var(--navy);text-transform:capitalize;order:1;margin-left:-.07em;font-size:clamp(38px,5.4vw,64px);font-weight:500;line-height:1.15}.eb-ja{letter-spacing:.06em;color:var(--ink-soft);order:2}.eb-ja:before{content:"{ "}.eb-ja:after{content:" }"}.on-dark .eb-no{color:#7a63e6}.on-dark .eb-en{color:#fbfaff}.on-dark .eb-ja{color:var(--on-navy-soft)}.section-title{letter-spacing:-.01em;margin-top:10px;font-size:clamp(28px,2.7vw,38px);font-weight:700;line-height:1.4}.lead{max-width:34em;word-break:auto-phrase;text-wrap:pretty}.en{font-family:var(--font-en)}.soft{color:var(--ink-soft)}.on-dark .soft{color:var(--on-navy-soft)}.btn{background:var(--navy);min-height:58px;color:var(--on-navy);letter-spacing:.04em;white-space:nowrap;cursor:pointer;border:0;border-radius:999px;justify-content:center;align-items:center;gap:14px;padding:12px 30px;font-size:17px;font-weight:700;line-height:1.4;text-decoration:none;transition:background-color .3s cubic-bezier(.2,.8,.2,1),color .3s cubic-bezier(.2,.8,.2,1),transform .15s;display:inline-flex}.btn svg{width:18px;height:18px;fill:var(--violet-light);flex:none;transition:transform .3s cubic-bezier(.2,.8,.2,1)}@media (hover:hover){.btn:hover{background:var(--charcoal)}.btn:hover svg{transform:translate(3px)}}.btn:has(.badge){gap:20px;min-height:56px;padding:6px 6px 6px 28px}.badge{background:var(--grad);color:#fbfaff;border-radius:50%;flex:none;place-items:center;width:44px;height:44px;display:grid;position:relative}.badge svg{fill:none;width:22px;height:22px;transition:transform .3s cubic-bezier(.2,.8,.2,1)}@media (hover:hover) and (prefers-reduced-motion:no-preference){a:hover>.badge svg,a:focus-visible>.badge svg{transform:translate(2px,-2px)}}:is(.btn,.header-cta,.hero-button,.pill-link,.menu-cta,.desktop-nav a):active{scale:.98}.on-dark .btn{background:var(--paper);color:var(--navy)}.on-dark .btn svg{fill:var(--indigo)}@media (hover:hover){.on-dark .btn:hover{background:#fbfaff}}.text-link{text-underline-offset:6px;min-height:44px;text-decoration:underline 1px;text-decoration-color:var(--rule-dark);align-items:center;font-weight:700;transition:color .25s cubic-bezier(.2,.8,.2,1),text-decoration-color .25s cubic-bezier(.2,.8,.2,1),text-underline-offset .25s cubic-bezier(.2,.8,.2,1);display:inline-flex}@media (hover:hover){.text-link:hover{color:var(--indigo);text-decoration-color:var(--indigo);text-underline-offset:4px}}.skip{z-index:100;background:var(--paper);color:var(--navy);padding:12px 20px;font-weight:700;position:absolute;top:-80px;left:12px}.skip:focus{top:12px}.defer{content-visibility:auto;contain-intrinsic-size:auto 900px}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}@supports (animation-timeline:view()){.rise{animation-name:rise;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:view();animation-range:entry entry 30%}@keyframes rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.story .prose p,.philosophy .text>*,.services .intro-main .lead{animation-name:text-focus;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:view();animation-range:entry cover}@keyframes text-focus{0%{opacity:0;filter:blur(5px);scale:.96}12%{opacity:1;filter:blur()}16%{scale:1}80%{opacity:1;scale:1}to{opacity:.15}}.eb-en{animation-name:title-rise;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:view();animation-range:entry entry 35%}@keyframes title-rise{0%{opacity:0;translate:0 20px}to{opacity:1;translate:0}}.card-photo,.rep-photo{animation-name:photo-follow;animation-timing-function:linear;animation-fill-mode:both;animation-timeline:view();animation-range:entry entry 50%}@keyframes photo-follow{0%{translate:0 24px}to{translate:0}}}}@media (prefers-reduced-motion:reduce){.btn,.btn svg{transition:none}}.site-header[data-astro-cid-nen7h5rs]{z-index:20;height:96px;color:var(--navy);letter-spacing:normal;background:linear-gradient(#efeaf9eb 0%,#efeaf999 55%,#efeaf900 100%);grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;padding:0 4.45%;font-size:16px;line-height:normal;display:grid;position:sticky;top:0}.brand-logo[data-astro-cid-nen7h5rs]{flex-shrink:0;justify-self:start;align-items:center;width:222px;min-height:48px;line-height:0;transition:opacity .2s;display:inline-flex}.brand-logo[data-astro-cid-nen7h5rs] svg{width:100%;height:auto;display:block}@media (hover:hover){.brand-logo[data-astro-cid-nen7h5rs]:hover{opacity:.78}}.desktop-nav[data-astro-cid-nen7h5rs]{backdrop-filter:blur(12px);letter-spacing:.05em;background:#fbfaff99;border:1px solid #2f27661a;border-radius:999px;justify-self:center;align-items:center;gap:2px;padding:5px;font-size:14px;font-weight:600;display:flex;position:relative}.desktop-nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{z-index:1;height:42px;color:var(--ink);white-space:nowrap;border-radius:999px;align-items:center;padding:0 18px;text-decoration:none;transition:color .3s cubic-bezier(.2,.8,.2,1);display:flex;position:relative}.nav-label[data-astro-cid-nen7h5rs]{line-height:24px;display:block}.nav-indicator[data-astro-cid-nen7h5rs]{background:var(--navy);opacity:0;border-radius:999px;width:0;transition:transform .35s cubic-bezier(.2,.8,.2,1),width .35s cubic-bezier(.2,.8,.2,1),opacity .2s linear;display:block;position:absolute;top:5px;bottom:5px;left:0}.desktop-nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs].is-on{color:#fbfaff}.menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]{color:var(--navy);box-shadow:inset 3px 0 0 var(--emerald);font-weight:700}.header-cta[data-astro-cid-nen7h5rs]{background:var(--navy);color:#fbfaff;letter-spacing:.06em;border-radius:999px;justify-self:end;align-items:center;gap:20px;padding:5px 5px 5px 26px;font-size:14px;font-weight:700;text-decoration:none;transition:background-color .3s cubic-bezier(.2,.8,.2,1),color .3s cubic-bezier(.2,.8,.2,1);display:flex}@media (hover:hover){.header-cta[data-astro-cid-nen7h5rs]:hover{background:var(--charcoal)}}@media (prefers-reduced-motion:reduce){.header-cta[data-astro-cid-nen7h5rs],.desktop-nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs],.desktop-nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:after,.nav-indicator[data-astro-cid-nen7h5rs]{transition:none!important}}.menu[data-astro-cid-nen7h5rs]{display:none}summary[data-astro-cid-nen7h5rs]{cursor:pointer;flex-direction:row;justify-content:center;align-items:center;gap:0;width:auto;min-width:44px;height:44px;padding:4px 0;list-style:none;display:flex}.menu-label[data-astro-cid-nen7h5rs]{font-family:var(--font-en);letter-spacing:.04em;font-size:14px;font-weight:500}summary[data-astro-cid-nen7h5rs] i[data-astro-cid-nen7h5rs]{flex-direction:column;gap:5px;margin-left:14px;display:flex}summary[data-astro-cid-nen7h5rs]::-webkit-details-marker{display:none}summary[data-astro-cid-nen7h5rs] span[data-astro-cid-nen7h5rs]{background:var(--navy);width:30px;height:2px;transition:transform .25s;display:block}.menu[data-astro-cid-nen7h5rs][open] summary[data-astro-cid-nen7h5rs] span[data-astro-cid-nen7h5rs]:first-child{transform:translateY(3.5px)rotate(20deg)}.menu[data-astro-cid-nen7h5rs][open] summary[data-astro-cid-nen7h5rs] span[data-astro-cid-nen7h5rs]:last-child{transform:translateY(-3.5px)rotate(-20deg)}.menu-panel[data-astro-cid-nen7h5rs]{background:var(--card);border-radius:0 0 24px 24px;flex-direction:column;padding:20px 5% 32px;display:flex;position:absolute;top:100%;left:0;right:0;box-shadow:0 15px 18px #2f276614}.menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{letter-spacing:.04em;border-radius:12px;justify-content:space-between;align-items:center;min-height:52px;margin-inline:-16px;padding:0 16px;font-size:15px;font-weight:600;text-decoration:none;transition:background-color .25s cubic-bezier(.2,.8,.2,1),color .25s cubic-bezier(.2,.8,.2,1);display:flex;position:relative}.menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:not(.menu-cta)+a[data-astro-cid-nen7h5rs]:not(.menu-cta):before{content:"";background:var(--rule-light);height:1px;position:absolute;top:0;left:16px;right:16px}.menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:not(.menu-cta):after{content:"→";font-family:var(--font-en);opacity:0;font-size:15px;transition:opacity .25s cubic-bezier(.2,.8,.2,1),transform .25s cubic-bezier(.2,.8,.2,1);transform:translate(-8px)}.menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:not(.menu-cta):hover,.menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:not(.menu-cta):focus-visible,.menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:not(.menu-cta):active{background:var(--navy);color:#fbfaff;box-shadow:none}.menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:not(.menu-cta):hover:after,.menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:not(.menu-cta):focus-visible:after,.menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:not(.menu-cta):active:after,.menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current=page]:after{opacity:1;transform:none}.menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover:before,.menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover+a[data-astro-cid-nen7h5rs]:before,.menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:active:before,.menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:active+a[data-astro-cid-nen7h5rs]:before{opacity:0}.menu-cta[data-astro-cid-nen7h5rs]{background:var(--navy);color:#fbfaff;font-weight:700;border-radius:999px!important;margin:18px 0 0!important;padding:5px 5px 5px 22px!important}.menu-cta[data-astro-cid-nen7h5rs]:active{background:var(--charcoal)}@media (prefers-reduced-motion:no-preference){.menu[data-astro-cid-nen7h5rs][open] .menu-panel[data-astro-cid-nen7h5rs]{animation:.28s cubic-bezier(.2,.8,.2,1) both menu-open}.menu[data-astro-cid-nen7h5rs][open] .menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{animation:.32s cubic-bezier(.2,.8,.2,1) both menu-item;animation-delay:calc(var(--i,0) * 28ms + 60ms)}@keyframes menu-open{0%{opacity:0;transform:translateY(-8px)}}@keyframes menu-item{0%{opacity:0;transform:translateY(8px)}}}@media (prefers-reduced-motion:reduce){.menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs],.menu-panel[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:after{transition:none}}@media (width<=1200px){.site-header[data-astro-cid-nen7h5rs]{gap:16px;padding:0 4%}.desktop-nav[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{padding:0 14px}.header-cta[data-astro-cid-nen7h5rs]{gap:16px;padding-left:22px}.brand-logo[data-astro-cid-nen7h5rs]{width:204px}}@media (width<=1100px){.site-header[data-astro-cid-nen7h5rs]{display:flex}.desktop-nav[data-astro-cid-nen7h5rs]{display:none}.header-cta[data-astro-cid-nen7h5rs]{margin-left:auto}.menu[data-astro-cid-nen7h5rs]{display:block}}@media (width<=767px){.site-header[data-astro-cid-nen7h5rs]{gap:16px;height:76px;padding:0 6%}.header-cta[data-astro-cid-nen7h5rs]{display:none}.brand-logo[data-astro-cid-nen7h5rs]{width:150px;min-height:44px}.menu[data-astro-cid-nen7h5rs]{flex-shrink:0;margin-left:auto}summary[data-astro-cid-nen7h5rs]{min-width:36px}}@media (width<=359px){.brand-logo[data-astro-cid-nen7h5rs]{width:140px}}.footer[data-astro-cid-jo6i4kqk]{color:var(--ink);background:#fbfaff;padding-block:clamp(48px,5vw,72px) 32px;font-size:15px}.top[data-astro-cid-jo6i4kqk]{grid-template-columns:1.6fr 1fr 1fr 1fr;gap:36px clamp(24px,4vw,64px);display:grid}.logo[data-astro-cid-jo6i4kqk]{letter-spacing:.14em;align-items:center;gap:10px;min-height:44px;font-size:20px;font-weight:800;text-decoration:none;display:inline-flex}.logo[data-astro-cid-jo6i4kqk] svg{width:30px;height:30px;fill:var(--navy)}nav[data-astro-cid-jo6i4kqk] h2[data-astro-cid-jo6i4kqk]{color:var(--ink-soft);margin-bottom:8px;font-size:14px;font-weight:700;line-height:1.6}nav[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{align-items:center;min-height:40px;text-decoration:none;display:inline-flex}@media (hover:hover){nav[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover,.legal[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{text-underline-offset:5px;text-decoration:underline}}address[data-astro-cid-jo6i4kqk]{gap:2px;margin-top:12px;font-size:14px;font-style:normal;line-height:1.8;display:grid}.entity[data-astro-cid-jo6i4kqk]{color:var(--ink);font-weight:700}.bottom[data-astro-cid-jo6i4kqk]{border-top:1px solid var(--rule-light);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 32px;margin-top:32px;padding-top:20px;display:flex}.copyright[data-astro-cid-jo6i4kqk]{color:var(--ink-soft);font-size:14px}.legal[data-astro-cid-jo6i4kqk]{flex-wrap:wrap;gap:0 24px;font-size:14px;display:flex}.legal[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{align-items:center;min-height:40px;text-decoration:none;display:inline-flex}@media (width<=1023px){.top[data-astro-cid-jo6i4kqk]{grid-template-columns:1fr 1fr 1fr}.brand[data-astro-cid-jo6i4kqk]{grid-column:1/-1}}@media (width<=767px){.footer[data-astro-cid-jo6i4kqk]{padding-bottom:104px}.top[data-astro-cid-jo6i4kqk]{grid-template-columns:1fr 1fr}}@media (width<=359px){.top[data-astro-cid-jo6i4kqk]{grid-template-columns:1fr}}.contact-cta[data-astro-cid-tv4n2zuu]{border-top:3px solid #0000;border-image:linear-gradient(90deg, var(--violet), var(--emerald)) 1;background:var(--navy);padding-block:clamp(72px,8vw,128px);position:relative}.grid[data-astro-cid-tv4n2zuu]{grid-template-columns:repeat(12,1fr);align-items:end;gap:32px clamp(16px,2vw,32px);display:grid}.intro[data-astro-cid-tv4n2zuu]{grid-column:1/8;gap:22px;display:grid}.intro[data-astro-cid-tv4n2zuu] .heading[data-astro-cid-tv4n2zuu]{font-size:clamp(30px,3.5vw,50px)}.actions[data-astro-cid-tv4n2zuu]{grid-column:9/-1;justify-items:start;gap:18px;display:grid}.direct[data-astro-cid-tv4n2zuu]{font-size:15px;line-height:1.9}@media (width<=899px){.intro[data-astro-cid-tv4n2zuu],.actions[data-astro-cid-tv4n2zuu]{grid-column:1/-1}}@media (width<=599px){.actions[data-astro-cid-tv4n2zuu] .btn[data-astro-cid-tv4n2zuu]{width:100%}}.mobile-cta[data-astro-cid-5jkxjsho]{display:none}@media (width<=767px){.mobile-cta[data-astro-cid-5jkxjsho]:not([hidden]){z-index:15;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--rule-light);background:#fffffff7;display:block;position:fixed;bottom:0;left:0;right:0}.mobile-cta[data-astro-cid-5jkxjsho] .btn[data-astro-cid-5jkxjsho]{width:100%;min-height:52px}}
