.emdash-image-media[data-astro-cid-6depetnu]{max-width:100%;height:auto}:where(:root.dark) .emdash-image--light,:where(:root.light) .emdash-image--dark{display:none}@media (prefers-color-scheme:dark){:where(:root:not(.light)) .emdash-image--light{display:none}}@media (prefers-color-scheme:light){:where(:root:not(.dark)) .emdash-image--dark{display:none}}.has-text-align-center[data-astro-cid-44ocxh3s]{text-align:center}.has-text-align-right[data-astro-cid-44ocxh3s]{text-align:right}.has-text-align-justify[data-astro-cid-44ocxh3s]{text-align:justify}.emdash-image[data-astro-cid-nzlefzml]{margin:1.5rem 0}.emdash-image[data-astro-cid-nzlefzml] img[data-astro-cid-nzlefzml]{max-width:100%;height:auto}.emdash-image[data-astro-cid-nzlefzml] figcaption[data-astro-cid-nzlefzml]{color:var(--emdash-caption-color,var(--color-muted,#666));text-align:center;margin-top:.5rem;font-size:.875rem}.emdash-image--align-left[data-astro-cid-nzlefzml],.emdash-image--align-right[data-astro-cid-nzlefzml]{width:fit-content;max-width:50%}.emdash-image--align-left[data-astro-cid-nzlefzml]{float:left;margin:0 1.5rem 1rem 0}.emdash-image--align-right[data-astro-cid-nzlefzml]{float:right;margin:0 0 1rem 1.5rem}.emdash-image--align-center[data-astro-cid-nzlefzml]{width:fit-content;margin-inline:auto}.emdash-image--align-wide[data-astro-cid-nzlefzml],.emdash-image--align-full[data-astro-cid-nzlefzml]{width:100%}@media (width<=640px){.emdash-image--align-left[data-astro-cid-nzlefzml],.emdash-image--align-right[data-astro-cid-nzlefzml]{float:none;width:100%;max-width:100%;margin-inline:0}}.emdash-code[data-astro-cid-dgremz56]{margin:1.5rem 0}.emdash-code-filename[data-astro-cid-dgremz56]{color:#ccc;background:#2d2d2d;border-radius:.5rem .5rem 0 0;padding:.5rem 1rem;font-family:monospace;font-size:.75rem}.emdash-code[data-astro-cid-dgremz56] pre[data-astro-cid-dgremz56]{background:#1e1e1e;border-radius:.5rem;margin:0;padding:1rem;overflow-x:auto}.emdash-code-filename[data-astro-cid-dgremz56]+pre[data-astro-cid-dgremz56]{border-radius:0 0 .5rem .5rem}.emdash-code[data-astro-cid-dgremz56] code[data-astro-cid-dgremz56]{color:#e0e0e0;font-family:Fira Code,Consolas,monospace;font-size:.875rem}.emdash-embed[data-astro-cid-n4v2ghzc]{margin:1.5rem 0}.emdash-embed-video[data-astro-cid-n4v2ghzc]{height:0;padding-bottom:56.25%;position:relative;overflow:hidden}.emdash-embed-video[data-astro-cid-n4v2ghzc] iframe[data-astro-cid-n4v2ghzc],.emdash-embed-video[data-astro-cid-n4v2ghzc] video[data-astro-cid-n4v2ghzc]{border:0;width:100%;height:100%;position:absolute;top:0;left:0}.emdash-embed-audio[data-astro-cid-n4v2ghzc],.emdash-embed-audio[data-astro-cid-n4v2ghzc] audio[data-astro-cid-n4v2ghzc]{width:100%}.emdash-embed[data-astro-cid-n4v2ghzc] figcaption[data-astro-cid-n4v2ghzc]{color:var(--emdash-caption-color,var(--color-muted,#666));text-align:center;margin-top:.5rem;font-size:.875rem}.emdash-gallery[data-astro-cid-d6nmylgu]{grid-template-columns:repeat(var(--columns,3), 1fr);gap:1rem;margin:1.5rem 0;display:grid}.emdash-gallery-item[data-astro-cid-d6nmylgu]{margin:0}.emdash-gallery-item[data-astro-cid-d6nmylgu] img[data-astro-cid-d6nmylgu]{object-fit:cover;aspect-ratio:1;width:100%;height:auto}.emdash-gallery-item[data-astro-cid-d6nmylgu] figcaption[data-astro-cid-d6nmylgu]{color:var(--emdash-caption-color,var(--color-muted,#666));text-align:center;margin-top:.25rem;font-size:.75rem}@media (width<=640px){.emdash-gallery[data-astro-cid-d6nmylgu]{grid-template-columns:repeat(2,1fr)}}.emdash-columns[data-astro-cid-sjaxkm7w]{gap:2rem;margin:1.5rem 0;display:flex}.emdash-column[data-astro-cid-sjaxkm7w]{flex:1;min-width:0}@media (width<=768px){.emdash-columns[data-astro-cid-sjaxkm7w]{flex-direction:column;gap:1rem}}.emdash-break[data-astro-cid-gvovdxls]{margin:2rem 0}.emdash-break-line[data-astro-cid-gvovdxls]{border:none;border-top:1px solid var(--emdash-break-color,var(--color-border,#e0e0e0))}.emdash-break-dots[data-astro-cid-gvovdxls]{text-align:center;color:var(--emdash-break-dots-color,var(--color-muted,#999));letter-spacing:.5em}.emdash-break-space[data-astro-cid-gvovdxls]{height:2rem}iframe[data-emdash-html-block]{border:0;width:100%;margin:1.5rem 0;display:block}.emdash-html-block[data-astro-cid-7hlqo6bn]{margin:1.5rem 0}.emdash-iframe[data-astro-cid-fhxykd76]{aspect-ratio:16/9;width:100%;margin:1.5rem 0}.emdash-iframe[data-astro-cid-fhxykd76] iframe{border:0;width:100%;height:100%;display:block}.emdash-video[data-astro-cid-ymu5gvpn]{margin:1.5rem 0}.emdash-video[data-astro-cid-ymu5gvpn] video[data-astro-cid-ymu5gvpn]{width:100%;height:auto;max-height:70vh;display:block}.emdash-video[data-astro-cid-ymu5gvpn] figcaption[data-astro-cid-ymu5gvpn]{color:var(--emdash-caption-color,var(--color-muted,#666));text-align:center;margin-top:.5rem;font-size:.875rem}.emdash-table-wrapper[data-astro-cid-7uypp5bz]{overscroll-behavior-inline:contain;max-inline-size:100%;margin-block:1.5rem;overflow-x:auto}.emdash-table[data-astro-cid-7uypp5bz]{border-collapse:collapse;inline-size:100%;font-size:.9rem}.emdash-table[data-astro-cid-7uypp5bz] th[data-astro-cid-7uypp5bz],.emdash-table[data-astro-cid-7uypp5bz] td[data-astro-cid-7uypp5bz]{border:1px solid var(--color-border,#ddd);text-align:start;vertical-align:top;padding:.75rem;position:relative}.emdash-table[data-astro-cid-7uypp5bz] th[data-astro-cid-7uypp5bz] p,.emdash-table[data-astro-cid-7uypp5bz] td[data-astro-cid-7uypp5bz] p{margin:0}.emdash-table[data-astro-cid-7uypp5bz] th[data-astro-cid-7uypp5bz]{background:var(--color-surface,#f5f5f5);font-weight:600}.emdash-table[data-astro-cid-7uypp5bz] tbody[data-astro-cid-7uypp5bz] tr[data-astro-cid-7uypp5bz]:nth-child(2n){background:var(--color-bg-subtle,#fafafa)}.emdash-table[data-astro-cid-7uypp5bz] tbody[data-astro-cid-7uypp5bz] tr[data-astro-cid-7uypp5bz]:hover{background:var(--color-surface,#f0f0f0)}.emdash-button[data-astro-cid-i644adhy]{cursor:pointer;border-radius:4px;padding:.75em 1.5em;font-weight:500;text-decoration:none;transition:background-color .2s,border-color .2s,color .2s;display:inline-block}.emdash-button--default[data-astro-cid-i644adhy],.emdash-button--fill[data-astro-cid-i644adhy]{background-color:var(--emdash-button-bg,#0073aa);color:var(--emdash-button-color,#fff);border:2px solid var(--emdash-button-bg,#0073aa)}.emdash-button--default[data-astro-cid-i644adhy]:hover,.emdash-button--fill[data-astro-cid-i644adhy]:hover{background-color:var(--emdash-button-bg-hover,#005177);border-color:var(--emdash-button-bg-hover,#005177)}.emdash-button--outline[data-astro-cid-i644adhy]{color:var(--emdash-button-bg,#0073aa);border:2px solid var(--emdash-button-bg,#0073aa);background-color:#0000}.emdash-button--outline[data-astro-cid-i644adhy]:hover{background-color:var(--emdash-button-bg,#0073aa);color:var(--emdash-button-color,#fff)}.emdash-buttons[data-astro-cid-pxkpowas]{flex-wrap:wrap;gap:.75rem;margin:1.5rem 0;display:flex}.emdash-buttons--vertical[data-astro-cid-pxkpowas]{flex-direction:column;align-items:flex-start}.emdash-buttons--horizontal[data-astro-cid-pxkpowas]{flex-direction:row;align-items:center}.emdash-cover[data-astro-cid-g6rigryn]{background-color:var(--emdash-cover-fallback-bg,#333);border-radius:4px;align-items:center;margin:1.5rem 0;padding:2rem;display:flex;position:relative;overflow:hidden}.emdash-cover__background[data-astro-cid-g6rigryn]{object-fit:cover;z-index:0;width:100%;height:100%;position:absolute;inset:0}.emdash-cover__video[data-astro-cid-g6rigryn]{object-fit:cover}.emdash-cover__overlay[data-astro-cid-g6rigryn]{z-index:1;position:absolute;inset:0}.emdash-cover__content[data-astro-cid-g6rigryn]{z-index:2;width:100%;color:var(--emdash-cover-text-color,#fff);position:relative}.emdash-cover--align-left[data-astro-cid-g6rigryn]{text-align:left;justify-content:flex-start}.emdash-cover--align-center[data-astro-cid-g6rigryn]{text-align:center;justify-content:center}.emdash-cover--align-right[data-astro-cid-g6rigryn]{text-align:right;justify-content:flex-end}.emdash-cover__content[data-astro-cid-g6rigryn] h1,.emdash-cover__content[data-astro-cid-g6rigryn] h2,.emdash-cover__content[data-astro-cid-g6rigryn] h3,.emdash-cover__content[data-astro-cid-g6rigryn] h4,.emdash-cover__content[data-astro-cid-g6rigryn] p{color:inherit}.emdash-file[data-astro-cid-dsnn5jk3]{background-color:var(--emdash-file-bg,#f5f5f5);border:1px solid var(--emdash-file-border,#e0e0e0);border-radius:4px;align-items:center;gap:.75rem;margin:1rem 0;padding:1rem;display:flex}.emdash-file__link[data-astro-cid-dsnn5jk3]{color:var(--emdash-file-color,#333);flex:1;align-items:center;gap:.5rem;text-decoration:none;display:flex}.emdash-file__link[data-astro-cid-dsnn5jk3]:hover{text-decoration:underline}.emdash-file__icon[data-astro-cid-dsnn5jk3]{width:1.5rem;height:1.5rem;color:var(--emdash-file-icon-color,#666);flex-shrink:0}.emdash-file__name[data-astro-cid-dsnn5jk3]{word-break:break-all;font-weight:500}.emdash-file__download[data-astro-cid-dsnn5jk3]{background-color:var(--emdash-button-bg,#0073aa);width:2.5rem;height:2.5rem;color:var(--emdash-button-color,#fff);border-radius:4px;justify-content:center;align-items:center;transition:background-color .2s;display:flex}.emdash-file__download[data-astro-cid-dsnn5jk3]:hover{background-color:var(--emdash-button-bg-hover,#005177)}.emdash-file__download[data-astro-cid-dsnn5jk3] svg[data-astro-cid-dsnn5jk3]{width:1.25rem;height:1.25rem}.emdash-pullquote[data-astro-cid-mtrxdgkr]{border-top:4px solid var(--emdash-pullquote-border,#0073aa);border-bottom:4px solid var(--emdash-pullquote-border,#0073aa);text-align:center;margin:2rem 0;padding:1.5rem 2rem}.emdash-pullquote__text[data-astro-cid-mtrxdgkr]{color:var(--emdash-pullquote-color,#333);margin:0;font-size:1.5rem;font-style:italic;line-height:1.4}.emdash-pullquote__citation[data-astro-cid-mtrxdgkr]{color:var(--emdash-pullquote-citation-color,#666);margin-top:1rem;font-size:.9rem;font-style:normal}:root{--ink:#1b1b1b;--ink-2:#555350;--line:#e4e2dd;--paper:#fff;--tint:#f6f5f1;--accent:#23705f;--accent-ink:#fff;--radius:12px;--wrap:1120px;--font:"Noto Sans JP", "Hiragino Sans", "Yu Gothic UI", "Meiryo", system-ui, sans-serif}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:80px}body{background:var(--paper);color:var(--ink);font-family:var(--font);letter-spacing:.02em;font-feature-settings:"palt" 0;margin:0;font-size:16px;line-height:1.85}img,video{max-width:100%;height:auto;display:block}a{color:inherit}h1,h2,h3{letter-spacing:.03em;margin:0;font-weight:700;line-height:1.45}p{margin:0}:focus-visible{outline:3px solid var(--accent);outline-offset:3px;border-radius:4px}.wrap{max-width:var(--wrap);margin:0 auto;padding:0 24px}.muted{color:var(--ink-2)}.small{font-size:14px}.eyebrow{letter-spacing:.12em;color:var(--accent);margin-bottom:8px;font-size:13px;font-weight:700}.lead{color:var(--ink-2);font-size:18px;line-height:1.9}.h-small{margin-bottom:16px;font-size:20px}.skip{position:absolute;left:-999px}.skip:focus{z-index:10;background:#fff;padding:8px 12px;top:16px;left:16px}.site-header{z-index:5;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#fffffff5;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;gap:16px;height:68px;display:flex}.logo img{width:112px;height:auto}.global-nav{align-items:center;gap:28px;font-size:15px;font-weight:500;display:flex}.global-nav a:not(.btn){border-bottom:2px solid #0000;padding:6px 0;text-decoration:none}.global-nav a:not(.btn):hover,.global-nav a[aria-current]{border-bottom-color:var(--ink)}.btn{background:var(--ink);color:#fff;border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:0 28px;font-weight:700;text-decoration:none;transition:background .15s;display:inline-flex}.btn:hover{background:#000}.btn-small{min-height:40px;padding:0 20px;font-size:14px}.btn-light{color:var(--ink);background:#fff}.btn-light:hover{background:var(--tint)}.text-link{color:var(--accent);white-space:nowrap;font-weight:700;text-decoration:none}.text-link:after{content:" →"}.text-link:hover{text-underline-offset:4px;text-decoration:underline}.site-footer{border-top:1px solid var(--line);background:var(--paper);margin-top:0;padding:56px 0 24px}.footer-inner{grid-template-columns:1.4fr repeat(3,1fr);gap:32px;display:grid}.footer-logo{width:112px;margin-bottom:12px}.site-footer nav{flex-direction:column;gap:6px;font-size:14px;display:flex}.site-footer nav h2{color:var(--ink-2);letter-spacing:.1em;margin-bottom:6px;font-size:13px}.site-footer nav a{text-decoration:none}.site-footer nav a:hover{text-decoration:underline}.copyright{color:var(--ink-2);margin-top:40px;font-size:13px}.section{padding:80px 0}.section-tint{background:var(--tint)}.section-head{margin-bottom:32px}.section-head h2{margin-bottom:6px;font-size:28px}.section-head-row{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:16px;display:flex}.breadcrumb{color:var(--ink-2);flex-wrap:wrap;gap:8px;padding-top:20px;padding-bottom:4px;font-size:13px;display:flex}.breadcrumb a{color:var(--ink-2)}.page-head{padding:32px 0 40px}.page-head h1{margin-bottom:8px;font-size:36px}.stub{padding:80px 0 120px}.stub p+p{margin-top:24px}.hero{padding:56px 0 72px}.hero-inner{grid-template-columns:1fr 1.1fr;align-items:center;gap:56px;display:grid}.hero h1{margin-bottom:16px;font-size:clamp(34px,4.6vw,52px)}.hero .lead{margin-bottom:32px}.hero-visual img{aspect-ratio:16/10;object-fit:cover;border-radius:20px;width:100%}.paths{grid-template-columns:1fr 1fr;gap:12px;display:grid}.path{border:1px solid var(--line);border-radius:var(--radius);background:#fff;flex-direction:column;gap:2px;padding:18px 20px;text-decoration:none;transition:border-color .15s,box-shadow .15s;display:flex}.path:hover{border-color:var(--ink);box-shadow:0 6px 20px #0000000f}.path-label{color:var(--accent);font-size:13px;font-weight:700}.path-title{font-size:18px;font-weight:700}.path-note{color:var(--ink-2);font-size:13px}.grid{gap:32px 24px;margin:0;padding:0;list-style:none;display:grid}.grid-3{grid-template-columns:repeat(3,1fr)}.card a{height:100%;text-decoration:none;display:block}.thumb{aspect-ratio:16/10;border-radius:var(--radius);background:var(--tint);border:1px solid var(--line);overflow:hidden}.thumb img{object-fit:cover;width:100%;height:100%;transition:transform .3s}.card a:hover .thumb img{transform:scale(1.03)}.card a:hover .card-title{text-underline-offset:4px;text-decoration:underline}.card-body{padding-top:14px}.card-title{font-size:17px;line-height:1.6}.card-text{color:var(--ink-2);margin-top:2px;font-size:15px;line-height:1.7}.card-meta{color:var(--ink-2);margin-top:4px;font-size:13px}.chips{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.chips span,.chips a{background:var(--tint);color:var(--ink-2);border-radius:999px;padding:6px 10px;font-size:12px;line-height:1;text-decoration:none}.section-tint .chips span{background:#fff}.chips a:hover{background:var(--line);color:var(--ink)}.app-card-body{align-items:flex-start;gap:14px;display:flex}.app-icon{border:1px solid var(--line);border-radius:16px;flex:none;width:64px;height:64px}.app-icon-lg{border-radius:22px;width:96px;height:96px;margin-bottom:20px}.also{grid-template-columns:1fr 1fr;gap:16px;margin-top:40px;display:grid}.also-item{border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:16px;padding:12px;text-decoration:none;display:flex}.also-item:hover{border-color:var(--ink)}.also-item img{aspect-ratio:16/9;object-fit:cover;border-radius:8px;flex:none;width:160px}.also-item>span{flex-direction:column;display:flex}.also-item strong:after{content:" ↗";font-weight:400}.about{grid-template-columns:1.1fr 1fr;align-items:center;gap:56px;display:grid}.about h2{margin-bottom:20px;font-size:28px}.about-visual img{aspect-ratio:4/3;object-fit:cover;border-radius:20px;width:100%}.facts{border-top:1px solid var(--line);gap:0;margin:28px 0;display:grid}.facts div{border-bottom:1px solid var(--line);grid-template-columns:7em 1fr;gap:16px;padding:14px 0;display:grid}.facts dt{color:var(--ink-2);font-size:14px;font-weight:700}.facts dd{margin:0;font-size:15px}.facts-stack div{grid-template-columns:1fr;gap:2px}.facts-stack dd a{word-break:break-all;color:var(--accent)}.contact-band{background:var(--accent);color:var(--accent-ink);padding:56px 0}.contact-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;display:flex}.contact-band h2{margin-bottom:6px;font-size:26px}.app-hero{padding:32px 0 64px}.app-hero-inner{grid-template-columns:1fr 1fr;align-items:center;gap:56px;display:grid}.app-hero h1{margin-bottom:12px;font-size:clamp(32px,4vw,44px)}.app-hero .lead{margin-bottom:28px}.app-hero-media video{aspect-ratio:1;object-fit:cover;background:var(--tint);border-radius:24px;width:100%;max-width:480px;margin-left:auto}.stores{flex-wrap:wrap;gap:12px;margin-bottom:12px;display:flex}.store{background:var(--ink);color:#fff;border-radius:12px;flex-direction:column;justify-content:center;min-height:56px;padding:6px 22px;text-decoration:none;display:flex}.store:hover{background:#000}.store-for{opacity:.8;font-size:12px;line-height:1.4}.store-name{font-size:15px;font-weight:700;line-height:1.4}.stores-stack{flex-direction:column;align-items:stretch;min-width:260px}.stories{gap:96px;padding-bottom:96px;display:grid}.story{grid-template-columns:1fr 1fr;align-items:center;gap:56px;display:grid}.story-reverse .story-text{order:2}.story h2{margin-bottom:20px;font-size:28px}.story-media{gap:16px;display:grid}.story-media.media-2{grid-template-columns:1fr 1fr}.story-media img{border-radius:var(--radius);border:1px solid var(--line);width:100%}.prose p+p,.prose h3+p,.prose p+h3{margin-top:1.2em}.prose h3{border-left:3px solid var(--accent);padding-left:12px;font-size:17px}.prose{font-size:16px}.parent-box{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:40px;display:flex}.parent-box h2{margin-bottom:10px;font-size:24px}.parent-box p{max-width:560px;color:var(--ink-2)}.link-list{flex-wrap:wrap;gap:20px;margin:16px 0 0;padding:0;font-weight:500;list-style:none;display:flex}.link-list a{color:var(--accent)}.app-strip{grid-template-columns:repeat(4,1fr);gap:16px;margin:0;padding:0;list-style:none;display:grid}.app-strip a{border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:12px;padding:12px;font-weight:700;text-decoration:none;display:flex}.app-strip a:hover{border-color:var(--ink)}.app-strip .app-icon{border-radius:14px;width:56px;height:56px}.works-layout{grid-template-columns:240px 1fr;align-items:start;gap:40px;padding-bottom:96px;display:grid}.filters{position:sticky;top:88px}.filters summary{cursor:pointer;margin-bottom:12px;font-weight:700;list-style:none}.filters summary::-webkit-details-marker{display:none}.filter-group{margin-top:20px}.filter-label{color:var(--ink-2);letter-spacing:.1em;margin-bottom:8px;font-size:13px}.filter-chips{flex-wrap:wrap;gap:6px;display:flex}.chip{border:1px solid var(--line);background:#fff;border-radius:999px;align-items:center;gap:6px;padding:6px 12px;font-size:13px;text-decoration:none;display:inline-flex}.chip span{color:var(--ink-2);font-size:12px}.chip:hover{border-color:var(--ink)}.chip[aria-pressed=true]{background:var(--ink);color:#fff;border-color:var(--ink)}.chip[aria-pressed=true] span{color:#ddd}.result{color:var(--ink-2);margin-bottom:20px}.result strong{color:var(--ink);margin-right:2px;font-size:22px}.works{grid-template-columns:repeat(2,1fr)}.works .card-title{font-size:17px}.project-card[hidden]{display:none}.detail{padding-bottom:72px}.detail-head{max-width:860px;padding:24px 0 32px}.detail-head .chips{margin:0 0 14px}.detail-head h1{font-size:clamp(26px,3.4vw,36px)}.detail-head .lead{margin-top:14px}.detail-hero img{object-fit:contain;background:var(--tint);border:1px solid var(--line);border-radius:20px;width:100%;max-height:640px}.detail-body{grid-template-columns:1fr 320px;gap:56px;margin-top:48px;display:grid}.detail-main .prose{font-size:17px;line-height:1.95}.detail-spec{background:var(--tint);border-radius:var(--radius);align-self:start;padding:8px 24px}.detail-spec .facts{border-top:0;margin:0}.detail-spec .facts div:last-child{border-bottom:0}.gallery{gap:40px;max-width:860px;margin-top:72px;display:grid}.gallery img{border-radius:var(--radius);border:1px solid var(--line);width:100%}.gallery figure{margin:0}.gallery figcaption{color:var(--ink-2);margin-top:10px;font-size:15px}.pager{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:16px;margin-top:72px;padding-top:24px;display:grid}.pager a{flex-direction:column;padding:8px 0;font-weight:700;text-decoration:none;display:flex}.pager a:hover{text-decoration:underline}.pager-next{text-align:right}@media (width<=960px){.hero-inner,.about,.app-hero-inner,.story,.detail-body{grid-template-columns:1fr;gap:32px}.story-reverse .story-text{order:0}.hero-visual{order:-1}.grid-3{grid-template-columns:repeat(2,1fr)}.works-layout{grid-template-columns:1fr;gap:16px}.filters{border:1px solid var(--line);border-radius:var(--radius);padding:14px 16px;position:static}.filters:not([open]) summary{margin-bottom:0}.filters summary:after{content:" ＋";color:var(--ink-2)}.filters[open] summary:after{content:" －"}.footer-inner{grid-template-columns:1fr 1fr}.app-hero-media video{margin:0 auto}.app-strip{grid-template-columns:repeat(2,1fr)}.stories{gap:64px}}@media (width<=640px){body{font-size:16px}.wrap{padding:0 16px}.global-nav{gap:16px;font-size:14px}.global-nav a[href="/about/company"]{display:none}.header-inner{height:60px}.logo img{width:92px}.btn-small{padding:0 14px}.section{padding:56px 0}.hero{padding:24px 0 48px}.paths,.also,.grid-3,.works,.pager{grid-template-columns:1fr}.also-item img{width:112px}.section-head h2,.about h2,.story h2{font-size:24px}.page-head h1{font-size:28px}.facts div{grid-template-columns:5.5em 1fr}.footer-inner{grid-template-columns:1fr}.pager-next{text-align:left}.stores .store{flex:100%}.story-media.media-2{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.thumb img{transition:none}}h1,h2,.card-title,.pager a{text-wrap:balance}.keep{word-break:keep-all;overflow-wrap:anywhere}.paths{grid-template-columns:1fr;max-width:440px}.path{grid-template-columns:1fr auto;align-items:center;column-gap:16px;display:grid}.path>span{grid-column:1}.path-title:after{content:none}.path:after{content:"→";grid-area:1/2/span 3;font-size:20px;font-weight:700}.card-text{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.store-badge img{width:auto;height:52px}.store-badge:hover img{opacity:.85}.stores-stack{flex-direction:row;min-width:0}.story-solo{grid-template-columns:minmax(0,720px)}.gallery{grid-template-columns:1fr 1fr;gap:32px 24px;max-width:none}.gallery h2{grid-column:1/-1;margin-bottom:0}.gallery img{aspect-ratio:4/3;object-fit:contain;background:var(--tint)}.gallery a:hover img{border-color:var(--ink)}@media (width<=640px){.gallery{grid-template-columns:1fr}.store-badge img{height:48px}}figure{margin:0}@media (width<=640px){.app-strip{grid-template-columns:1fr}.facts:not(.facts-stack) div{grid-template-columns:5.5em 1fr}.facts-stack div{grid-template-columns:1fr}.store-badge img{height:56px}}.store-badge img{height:60px}:root{--ink-2:#4a4844;--font-body:"Noto Sans JP", "Hiragino Sans", "Yu Gothic UI", "Meiryo", system-ui, sans-serif;--font-head:var(--font-body);--w-body:500;--w-strong:700;--w-head:800;--tracking-head:.02em;--lh-body:1.85}body{font-family:var(--font-body);font-weight:var(--w-body);line-height:var(--lh-body)}h1,h2,h3,.card-title,.path-title,.eyebrow,.path-label,.btn,.text-link,.global-nav,.store-name,.also-item strong,.pager a,.app-strip a,.filters summary,.result strong,.site-footer nav h2{font-family:var(--font-head)}h1,h2,.card-title,.path-title,.result strong{font-weight:var(--w-head);letter-spacing:var(--tracking-head)}h3,.prose h3,strong,b,.btn,.text-link,.eyebrow,.path-label,.facts dt,.pager a,.app-strip a,.filters summary,.also-item strong,.global-nav{font-weight:var(--w-strong)}.hero h1{font-size:clamp(36px,5vw,56px);line-height:1.3}.page-head h1{font-size:40px}.app-hero h1{font-size:clamp(34px,4.4vw,48px)}.detail-head h1{font-size:clamp(28px,3.6vw,40px);line-height:1.4}.section-head h2,.about h2,.story h2{font-size:32px}.contact-band h2{font-size:28px}.card-title,.works .card-title{font-size:18px;line-height:1.55}.h-small{font-size:22px}.lead{color:var(--ink);font-size:18px}.card-text{color:var(--ink-2);font-size:15px}@media (width<=640px){.section-head h2,.about h2,.story h2{font-size:26px}.page-head h1{font-size:30px}.card-title,.works .card-title{font-size:17px}}.prose h3{font-size:19px;line-height:1.5}.detail-main .prose h3{margin-top:1.6em}.header-inner{height:80px}.logo{padding:4px 0;display:block}.logo img{width:168px}.footer-logo{width:144px}html{scroll-padding-top:96px}.filters{top:104px}@media (width<=640px){.header-inner{height:64px}.logo img{width:124px}.global-nav{gap:12px}.global-nav a[href="/#apps"]{display:none}}.social{flex-wrap:wrap;gap:8px;margin:16px 0 0;padding:0;list-style:none;display:flex}.social a{border:1px solid var(--line);min-height:36px;font-size:14px;font-weight:var(--w-strong);border-radius:999px;align-items:center;padding:0 14px;text-decoration:none;display:inline-flex}.social a:after{content:" ↗";color:var(--ink-2);margin-left:4px;font-weight:400}.social a:hover{border-color:var(--ink)}.about-links{flex-direction:column;align-items:flex-start;gap:20px;display:flex}.note-link{border:1px solid var(--line);border-radius:var(--radius);flex-direction:column;max-width:420px;padding:14px 18px;text-decoration:none;display:flex}.note-link:hover{border-color:var(--ink)}.note-link strong:after{content:" ↗";color:var(--ink-2);font-weight:400}.note-link span{color:var(--ink-2);font-size:14px}.thumb-note{aspect-ratio:1.91}.note-card .card-meta{align-items:center;gap:8px;margin:0 0 4px;display:flex}.note-badge{letter-spacing:.04em;background:var(--ink);color:#fff;vertical-align:2px;border-radius:4px;margin-right:8px;padding:4px 7px;font-size:11px;font-weight:700;line-height:1;display:inline-block}.note-card .note-badge{margin-right:0}.text-link-out:after{content:" ↗"}.note-feature{margin-top:56px}.note-feature a{border:1px solid var(--line);border-radius:var(--radius);align-items:center;gap:20px;max-width:860px;padding:16px;text-decoration:none;display:flex}.note-feature a:hover{border-color:var(--ink)}.note-feature img{aspect-ratio:1.91;object-fit:cover;border-radius:8px;flex:none;width:220px}.note-feature strong{font-size:18px;display:inline}.note-feature strong:after{content:" ↗";color:var(--ink-2);font-weight:400}.note-feature .muted{margin-top:4px;display:block}@media (width<=640px){.note-feature a{flex-direction:column;align-items:stretch}.note-feature img{width:100%}}.project-card .card-meta{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.prose h3{border-left:0;padding-left:0}.doc{max-width:820px;padding-bottom:96px}.prose.legal{font-size:16px}.prose.legal h2{margin:1.6em 0 .6em;font-size:22px}.prose.legal h2:first-child{margin-top:0}.prose.legal p+p{margin-top:1em}.prose.legal a,.doc a{color:var(--accent)}.prose.legal ul,.prose.legal ol{margin:.6em 0;padding-left:1.4em}.company{align-items:start;padding-bottom:80px}.company .facts{margin-top:0}.facts-wide div{grid-template-columns:9em 1fr}.contact-page{max-width:720px;padding-bottom:96px}.contact-form{gap:20px;margin-bottom:32px;display:grid}.field label{gap:6px;display:grid}.field-label{font-weight:var(--w-strong);font-size:15px}.req{color:#fff;background:var(--accent);vertical-align:1px;border-radius:4px;margin-left:6px;padding:2px 6px;font-size:11px;font-weight:700}.field input,.field textarea{font:inherit;color:var(--ink);background:#fff;border:1px solid #bdb9b1;border-radius:8px;width:100%;padding:12px 14px;font-size:16px}.field input:focus,.field textarea:focus{outline:3px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.consent{align-items:center;gap:10px;display:flex}.consent input{width:20px;height:20px;accent-color:var(--accent)}.consent a{color:var(--accent)}.contact-form .btn{justify-self:start;min-width:200px}.contact-form .btn[disabled]{opacity:.45;cursor:not-allowed}.chip[aria-current=page]{background:var(--ink);color:#fff;border-color:var(--ink)}.chip[aria-current=page] span{color:#ddd}.grid>li,.works-layout>*{min-width:0}.prose,.facts dd,.card-title{overflow-wrap:anywhere}.detail-body>*{min-width:0}.wrap.doc,.wrap.contact-page{max-width:var(--wrap)}.doc>*,.contact-page>*{max-width:760px}.signature{color:var(--ink-2);text-align:right;margin-top:1.2em;font-size:15px}
