:root{--teal:#a6cfd5;--teal-deep:#3f7580;--teal-soft:#eef6f7;--paper:#fff;--tint:#f6f5f1;--ink:#1b2a30;--text:#2c3a40;--text-muted:#5f6e74;--text-invert:#f4f7f7;--line:#e6e5df;--line-soft:#efeeea;--ink-900:#17262c;--ink-950:#14232a;--ink-990:#101c22;--text-sub:#5c6a70;--bar-track:#eceae5;--bar-fill:#c0c7c9;--sans:"Zen Kaku Gothic New", "Hiragino Kaku Gothic ProN", "Yu Gothic", "Meiryo", system-ui, sans-serif;--en:"Outfit", "Zen Kaku Gothic New", system-ui, sans-serif;--fs-display:clamp(1.9rem, 4.2vw, 3rem);--fs-h2:clamp(1.4rem, 2.9vw, 2.05rem);--fs-h3:1.02rem;--fs-lede:clamp(.98rem, 1.4vw, 1.06rem);--maxw:1080px;--maxw-wide:1280px;--gutter:clamp(22px, 6vw, 56px);--radius:6px;--ease:cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--sans);color:var(--text);background:var(--paper);letter-spacing:.07em;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;font-weight:400;line-height:2.05}img{max-width:100%;height:auto;display:block}picture{display:block}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}h1,h2,h3,h4{font-family:var(--sans);color:var(--ink);word-break:auto-phrase;text-wrap:pretty;margin:0;font-weight:500}.lede,.note,.kv-copy p,.col p,.lines li,.figure p,figcaption{word-break:auto-phrase}.lede,.note,.col p,.lines li,.figure p,figcaption,.center h1,.center h2,.center .lede{text-wrap:pretty}h1{font-size:var(--fs-display);letter-spacing:.08em;line-height:1.65}h2{font-size:var(--fs-h2);letter-spacing:.08em;line-height:1.72}h3{font-size:var(--fs-h3);letter-spacing:.06em;line-height:1.85}p{margin:0}.container{width:100%;max-width:var(--maxw);padding-inline:var(--gutter);margin-inline:auto}.container--wide{max-width:var(--maxw-wide)}.section{padding-block:clamp(76px,10vw,128px)}.section--tight{padding-block:clamp(56px,7.5vw,92px)}.section--tint{background:var(--tint)}section[id],div[id]{scroll-margin-top:96px}.narrow{max-width:640px}.center{text-align:center}.center .narrow,.narrow.center{margin-inline:auto}.mt-s{margin-top:18px}.mt-m{margin-top:32px}.mt-l{margin-top:clamp(36px,5vw,60px)}.kana{letter-spacing:.32em;color:var(--text-muted);margin-bottom:14px;font-size:.72rem;line-height:2}.lede{font-size:var(--fs-lede);color:var(--text-muted);line-height:2.15}.note{color:var(--text-muted);font-size:.78rem;line-height:1.9}.product-name{font-family:var(--en);letter-spacing:.04em;font-weight:600}.accent{color:var(--teal-deep)}.title-en{font-family:var(--en);letter-spacing:.02em;color:var(--ink);margin:0;font-size:clamp(2rem,4.6vw,3.1rem);font-weight:600;line-height:1.3}.link-more{letter-spacing:.1em;color:var(--ink);border-bottom:1px solid var(--line);transition:color .3s var(--ease), border-color .3s var(--ease);align-items:center;gap:.7em;padding-bottom:6px;font-size:.92rem;display:inline-flex}.link-more .arrow{transition:transform .3s var(--ease)}.link-more:hover{color:var(--teal-deep);border-color:var(--teal-deep)}.link-more:hover .arrow{transform:translate(5px)}.btn{letter-spacing:.1em;transition:background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease);white-space:nowrap;border:1px solid #0000;border-radius:999px;align-items:center;gap:.7em;padding:16px 34px;font-size:.92rem;font-weight:500;display:inline-flex}.btn--fill{background:var(--ink);color:#fff}.btn--fill:hover{background:var(--teal-deep)}.btn--line{border-color:var(--line);color:var(--ink)}.btn--line:hover{border-color:var(--ink)}.btn--invert{color:var(--ink);background:#fff}.btn--invert:hover{background:var(--teal-soft)}.btn .arrow{transition:transform .3s var(--ease)}.btn:hover .arrow{transform:translate(4px)}.btn-row{flex-wrap:wrap;gap:14px;display:flex}.center .btn-row{justify-content:center}.site-header{z-index:100;-webkit-backdrop-filter:saturate(150%)blur(12px);transition:border-color .3s var(--ease), background .3s var(--ease);background:#ffffffdb;border-bottom:1px solid #0000;position:sticky;top:0}.site-header.is-scrolled{border-bottom-color:var(--line-soft);background:#fffffff0}.header-inner{justify-content:space-between;align-items:center;height:76px;display:flex}.brand img{width:auto;height:22px}.nav{align-items:center;gap:40px;margin-left:auto;display:flex}.nav a{letter-spacing:.12em;color:var(--text);padding-block:6px;font-size:.88rem;position:relative}.nav a:after{content:"";background:var(--ink);width:0;height:1px;transition:width .3s var(--ease);position:absolute;bottom:0;left:0}.nav a:hover:after,.nav a.is-active:after{width:100%}.header-actions{align-items:center;gap:16px;display:flex}.header-actions:empty{display:none}.header-actions .btn{padding:11px 24px;font-size:.84rem}.nav-toggle{background:0 0;border:none;width:44px;height:44px;display:none;position:relative}.nav-toggle span{background:var(--ink);height:1px;transition:transform .3s var(--ease), opacity .2s;position:absolute;left:11px;right:11px}.nav-toggle span:first-child{top:17px}.nav-toggle span:nth-child(2){top:22px}.nav-toggle span:nth-child(3){top:27px}.nav-toggle[aria-expanded=true] span:first-child{transform:translateY(5px)rotate(45deg)}.nav-toggle[aria-expanded=true] span:nth-child(2){opacity:0}.nav-toggle[aria-expanded=true] span:nth-child(3){transform:translateY(-5px)rotate(-45deg)}.kv{background-position:50%;background-size:cover;align-items:center;min-height:clamp(520px,82vh,800px);display:flex;position:relative;overflow:hidden}.kv--home{background:var(--tint)}.kv .container{z-index:1;width:100%;position:relative}.kv-copy{max-width:560px;padding-block:clamp(80px,12vw,132px)}.kv-copy h1{margin-bottom:28px}.kv-copy .lede{max-width:34em}.kv-copy .btn-row{margin-top:44px}.kv-copy .note{margin-top:28px}.kv--product{background:#fff url(/assets/img/product-hero.jpg) 100% 100%/auto 96% no-repeat;min-height:clamp(560px,78vh,760px)}.kv--product .kv-copy{max-width:52%;padding-block:clamp(64px,10vw,120px)}.kv--product .kana{color:var(--teal-deep);margin-bottom:18px}.kv-title{font-family:var(--en);letter-spacing:.005em;color:var(--ink);font-size:clamp(2.2rem,4.6vw,4rem);font-weight:600;line-height:1.1}.kv-layer{opacity:0;transition:opacity 1.6s var(--ease);position:absolute;inset:0}.kv-layer>picture{width:100%;height:100%}.kv-layer img{object-fit:cover;object-position:center;width:100%;height:100%}.kv-layer--scrim-day{background:linear-gradient(100deg,#fffffff7 0%,#ffffffed 32%,#ffffff6b 50%,#ffffff0f 62%,#fff0 70%)}.kv-layer--scrim-night{background:linear-gradient(100deg,#0c1216e6 0%,#0c1216cc 32%,#0c121661 50%,#0c121614 62%,#0c121600 70%)}.kv--switch:not(.is-night) .kv-layer--day,.kv--switch:not(.is-night) .kv-layer--scrim-day,.kv--switch.is-night .kv-layer--night,.kv--switch.is-night .kv-layer--scrim-night{opacity:1}.kv-copy .lede{color:var(--text)}.kv-copy .note{color:var(--text-sub)}.kv--switch .kv-copy h1,.kv--switch .kv-copy .lede,.kv--switch .kv-copy .note,.kv--switch .kv-copy .btn--fill,.kv--switch .kv-copy .btn--line{transition:color 1.6s var(--ease), background-color 1.6s var(--ease), border-color 1.6s var(--ease)}.kv--switch:not(.is-night) .kv-copy .btn--line{color:var(--ink);border-color:#1b2a3080}.kv--switch:not(.is-night) .kv-copy .btn--line:hover{border-color:var(--ink);background:#fff9}.kv--switch.is-night .kv-copy .btn--fill{color:var(--ink);background:#fff}.kv--switch.is-night .kv-copy .btn--fill:hover{background:var(--teal-soft)}.kv--switch.is-night .kv-copy h1{color:#fff}.kv--switch.is-night .kv-copy .lede{color:#ffffffeb}.kv--switch.is-night .kv-copy .note{color:#ffffffc7}.kv--switch.is-night .kv-copy .btn--line{color:#fff;background:#ffffff14;border-color:#ffffffb8}.kv--switch.is-night .kv-copy .btn--line:hover{background:#ffffff2e;border-color:#fff}@media (width>=901px) and (width<=1199px){.kv--switch .kv-copy{max-width:430px}.kv--product{background-size:auto 82%}.kv--product .kv-copy{max-width:46%}}.page-head{padding-block:clamp(56px,7.5vw,92px) clamp(36px,5vw,60px)}.media-full--band img{aspect-ratio:2.9;object-fit:cover;object-position:center 42%}@media (width<=700px){.media-full--band img{aspect-ratio:2.1}}.media-full{position:relative}.media-full img{width:100%}.media-full .caption{left:var(--gutter);letter-spacing:.12em;color:#fff;text-shadow:0 1px 12px #00000080;font-size:.78rem;position:absolute;bottom:26px}.block{grid-template-columns:1.05fr 1fr;align-items:center;gap:clamp(36px,6vw,88px);display:grid}.block+.block{margin-top:clamp(72px,10vw,132px)}.block--flip .block-media{order:2}.block-media img{border-radius:var(--radius)}.block-body h2{margin-bottom:24px}.block-body .lede+.lines,.block-body .lede+.btn-row{margin-top:34px}@media (width>=901px) and (width<=1199px){.block{grid-template-columns:1fr;gap:clamp(30px,3.5vw,42px);max-width:720px;margin-inline:auto}.block--flip .block-media{order:-1}.block-body{max-width:none}.block+.block{margin-top:clamp(64px,8vw,96px)}}.lines{border-top:1px solid var(--line-soft);margin:0;padding:0;list-style:none}.lines li{border-bottom:1px solid var(--line-soft);color:var(--text);padding:15px 0;font-size:.94rem;line-height:1.95}.lines li b{color:var(--ink);font-weight:500}.lines--plain{border-top:none}.lines--plain li{color:var(--text-muted);border-bottom:none;padding:8px 0}.cols{grid-template-columns:repeat(3,1fr);gap:0;display:grid}.cols--2{grid-template-columns:repeat(2,1fr)}.col{border-left:1px solid var(--line);padding-inline:clamp(22px,2.6vw,40px)}.col:first-child{border-left:none;padding-left:0}.col:last-child{padding-right:0}.col .idx{font-family:var(--en);letter-spacing:.22em;color:var(--teal-deep);font-size:.74rem;font-weight:600}.col h3{margin:0 0 12px}.col .idx+h3{margin-top:10px}.col p{color:var(--text-muted);font-size:.92rem;line-height:2}.mission .col{border-left-color:#fff3}.figures{grid-template-columns:repeat(2,1fr);gap:0;display:grid}.figure{border-left:1px solid var(--line);padding-inline:clamp(24px,3vw,48px)}.figure:first-child{border-left:none;padding-left:0}.figure:last-child{padding-right:0}.figure-media{margin:0 0 24px}.figure-media img{border-radius:var(--radius);width:100%}.figure-media figcaption{color:var(--text-muted);letter-spacing:.04em;margin-top:12px;font-size:.78rem;line-height:1.85}.figure .figure-label{color:var(--teal-deep);letter-spacing:.08em;font-size:.84rem}.figure .figure-value{font-family:var(--en);color:var(--ink);margin-top:10px;font-size:clamp(1.9rem,4.2vw,3rem);font-weight:600;line-height:1.15}.figure .figure-value small{letter-spacing:.04em;margin-left:6px;font-size:.36em}.figure-value .fv-pre{font-family:var(--sans);letter-spacing:.04em;color:var(--ink);margin-right:5px;font-size:.4em;font-weight:500}.figure-value .fv-suf{font-family:var(--sans);letter-spacing:.05em;color:var(--ink);white-space:nowrap;font-size:1.1rem;font-weight:500}.figure .figure-label b{color:var(--ink);font-weight:500}.figure-value .fv-suf{margin-left:10px}.figure .figure-value{flex-wrap:wrap;align-items:baseline;display:flex}.figure p.note{margin-top:16px}.bars{gap:20px;display:grid}.bar{grid-template-columns:minmax(112px,150px) 1fr 76px;align-items:center;gap:14px;display:grid}.bar .bar-label{color:var(--text-muted);letter-spacing:.04em;font-size:.8rem;line-height:1.6}.bar .bar-kw{font-family:var(--en);color:var(--ink);letter-spacing:.02em;font-size:.86rem;font-weight:600}.bar .bar-track{background:var(--bar-track);border-radius:3px;height:26px;position:relative;overflow:hidden}.bar .bar-fill{width:var(--w,50%);background:var(--bar-fill);border-radius:3px;position:absolute;inset:0 auto 0 0}.bar .bar-value{font-family:var(--en);color:var(--text-muted);white-space:nowrap;letter-spacing:.02em;text-align:right;font-size:1.05rem;font-weight:600}.bar .bar-value small{margin-left:2px;font-size:.62em}.bar.is-lead .bar-fill{background:var(--teal)}.bar.is-lead .bar-value{color:var(--ink);font-size:1.3rem}.tags{flex-wrap:wrap;gap:10px;display:flex}.tag{letter-spacing:.06em;color:var(--text-muted);border:1px solid var(--line);border-radius:999px;padding:7px 16px;font-size:.78rem}.table{border-collapse:collapse;width:100%}.table th,.table td{text-align:left;border-bottom:1px solid var(--line-soft);vertical-align:top;padding:20px 4px}.table tr:first-child th,.table tr:first-child td{border-top:1px solid var(--line)}.table th{width:32%;color:var(--ink);letter-spacing:.08em;font-size:.9rem;font-weight:500}.table td{color:var(--text-muted);font-size:.94rem}.disclosure{border-top:1px solid var(--line)}.disclosure>summary{cursor:pointer;letter-spacing:.08em;color:var(--ink);border-bottom:1px solid var(--line-soft);transition:color .25s var(--ease);justify-content:space-between;align-items:center;gap:16px;padding:22px 2px;font-size:.94rem;list-style:none;display:flex}.disclosure>summary::-webkit-details-marker{display:none}.disclosure>summary:hover{color:var(--teal-deep)}.disclosure-mark{flex:none;width:13px;height:13px;position:relative}.disclosure-mark:before,.disclosure-mark:after{content:"";transition:transform .3s var(--ease), opacity .3s var(--ease);background:currentColor;position:absolute}.disclosure-mark:before{width:13px;height:1px;top:6px;left:0}.disclosure-mark:after{width:1px;height:13px;top:0;left:6px}.disclosure[open] .disclosure-mark:after{opacity:0;transform:scaleY(0)}.disclosure-body{padding-top:26px;padding-bottom:8px}.disclosure-body .table tr:first-child th,.disclosure-body .table tr:first-child td{border-top:none}@media (width>=1200px){.js .disclosure{border-top:none}.js .disclosure>summary{display:none}.js .disclosure-body{padding-top:0;padding-bottom:0}.js .disclosure-body .table tr:first-child th,.js .disclosure-body .table tr:first-child td{border-top:1px solid var(--line)}}.mail-link{font-family:var(--en);letter-spacing:.04em;color:var(--ink);border-bottom:1px solid var(--line);transition:color .3s var(--ease), border-color .3s var(--ease);padding-bottom:6px;font-size:clamp(1.1rem,2.6vw,1.5rem);font-weight:600}.mail-link:hover{color:var(--teal-deep);border-color:var(--teal-deep)}.table .mail-link{font-size:.96rem}.mission,.section--ink,.site-footer{background:linear-gradient(168deg, var(--ink-900) 0%, var(--ink-950) 58%, var(--ink-990) 100%);position:relative;overflow:hidden}.mission:before,.section--ink:before,.site-footer:before{content:"";pointer-events:none;opacity:.07;mix-blend-mode:screen;background:url(/assets/img/pattern-maru.webp) 50%/cover no-repeat;position:absolute;inset:0}.mission:after,.section--ink:after{content:"";pointer-events:none;position:absolute;inset:0}.mission:after{background:radial-gradient(120% 90% at 78% 12%,#a6cfd52e 0%,#a6cfd500 58%),radial-gradient(90% 70% at 8% 92%,#a6cfd517 0%,#a6cfd500 60%)}.section--ink:after{background:radial-gradient(110% 80% at 82% 8%,#d8c4961c 0%,#d8c49600 55%)}.mission>.container,.section--ink>.container,.site-footer>.container{z-index:1;position:relative}.mission{color:#fff}.mission .container{z-index:1;position:relative}.mission h2,.mission h3{color:#fff}.mission .lede{color:#ffffffdb}.mission .kana{color:#ffffffb3}.mission .col{border-top-color:#ffffff40}.mission .col p{color:#ffffffc7}.mission .col .idx{color:var(--teal)}.mission .tag{color:#ffffffdb;border-color:#ffffff52}.section--ink{color:#f4f7f7d1}.section--ink h1,.section--ink h2,.section--ink h3{color:#fff}.section--ink .kana{color:#ffffffa8}.section--ink .lede{color:#ffffffdb}.section--ink .note{color:#ffffff9e}.section--ink .lines{border-top-color:#ffffff2e}.section--ink .lines li{color:#ffffffd1;border-bottom-color:#ffffff24}.section--ink .lines li b{color:#fff}.section--ink .tag{color:#ffffffdb;border-color:#ffffff4d}.section--ink .block-media img{box-shadow:0 0 0 1px #ffffff14}.site-footer{color:#f4f7f7b3;padding-block:clamp(64px,9vw,104px)}.footer-top{grid-template-columns:1.5fr 1fr 1fr;gap:44px;display:grid}.site-footer .logo-full{width:auto;height:84px}.footer-tag{color:#f4f7f7b8;max-width:30ch;margin-top:18px;font-size:.86rem}.footer-col h4{font-family:var(--en);letter-spacing:.24em;text-transform:uppercase;color:var(--teal);margin-bottom:18px;font-size:.72rem;font-weight:600}.footer-col ul{gap:14px;margin:0;padding:0;list-style:none;display:grid}.footer-col a{color:#f4f7f7b3;font-size:.88rem;transition:color .25s}.footer-col a:hover{color:#fff}.footer-bottom{color:#f4f7f79e;border-top:1px solid #ffffff1f;flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:56px;padding-top:26px;font-size:.76rem;display:flex}.reveal{opacity:0;transition:opacity .9s var(--ease), transform .9s var(--ease);transform:translateY(20px)}.reveal.is-visible{opacity:1;transform:none}.reveal.d1{transition-delay:90ms}.reveal.d2{transition-delay:.18s}.reveal.d3{transition-delay:.27s}@media (width<=900px){body{line-height:1.95}.kv{min-height:72vh}.kv--product{--kv-h:calc(100vh - 76px);--kv-img:calc(var(--kv-h) * .62);min-height:var(--kv-h);padding-bottom:var(--kv-img);background-position:calc(50% + var(--kv-img) * .167) bottom;background-size:auto var(--kv-img);align-content:center;display:grid}@supports (height:100svh){.kv--product{--kv-h:calc(100svh - 76px)}}.kv--product .kv-copy{max-width:none;padding-block:0}.media-full--band{display:none}.kv--light:before{background:linear-gradient(#fffffff0 0%,#ffffffb3 58%,#fff3 100%)}.kv--switch{--kv-band:min(64vw, 330px);background:var(--paper);min-height:0;display:block}.kv--switch .kv-layer{height:var(--kv-band);inset:0 0 auto}.kv--switch .kv-layer--scrim-day,.kv--switch .kv-layer--scrim-night{display:none}.kv--switch .kv-copy{padding:calc(var(--kv-band) + 44px) 0 clamp(48px, 11vw, 72px)}.kv--switch.is-night .kv-copy h1{color:var(--ink)}.kv--switch.is-night .kv-copy .lede{color:var(--text)}.kv--switch.is-night .kv-copy .note{color:var(--text-sub)}.kv--switch.is-night .kv-copy .btn--line{color:var(--ink);background:0 0;border-color:#1b2a3080}.kv--switch.is-night .kv-copy .btn--fill{background:var(--ink);color:#fff}.kv--dark:before{background:linear-gradient(#0c1216bd 0%,#0c121670 58%,#0c12162e 100%)}.block{grid-template-columns:1fr}.cols,.cols--2,.figures{grid-template-columns:1fr;gap:0}.col,.figure{border-left:none;border-top:1px solid var(--line-soft);padding-block:clamp(24px,4vw,32px);padding-inline:0}.col:first-child,.figure:first-child{border-top:none;padding-top:0}.col:last-child,.figure:last-child{padding-bottom:0}.mission .col{border-top-color:#ffffff29;border-left-color:#0000}.block{max-width:720px;margin-inline:auto}.block--flip .block-media{order:-1}.bar{grid-template-columns:1fr 76px;gap:4px 12px}.bar .bar-label{grid-column:1/-1}.footer-top{grid-template-columns:1fr 1fr}.nav-toggle{display:block}.nav{backdrop-filter:blur(12px);padding:16px var(--gutter) 26px;border-bottom:1px solid var(--line);opacity:0;pointer-events:none;transition:transform .3s var(--ease), opacity .3s var(--ease);background:#fffffffa;flex-direction:column;align-items:flex-start;gap:0;position:fixed;inset:76px 0 auto;transform:translateY(-10px)}.nav.is-open{opacity:1;pointer-events:auto;transform:none}.nav a{border-bottom:1px solid var(--line-soft);width:100%;padding:14px 0;font-size:.98rem}.header-actions .btn{display:none}}@media (width<=560px){.footer-top{grid-template-columns:1fr}.footer-bottom{flex-direction:column}}@media print{*{print-color-adjust:exact}.site-header{background:#fff;position:static}.reveal{opacity:1!important;transform:none!important}.nav-toggle{display:none}.kv{min-height:auto;padding-block:48px}}@media (prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reveal{transition:none;opacity:1!important;transform:none!important}}
