.emdash-image-media[data-astro-cid-4d2fiirg]{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-ztmds7sd]{text-align:center}.has-text-align-right[data-astro-cid-ztmds7sd]{text-align:right}.has-text-align-justify[data-astro-cid-ztmds7sd]{text-align:justify}.emdash-image[data-astro-cid-zgknrkpr]{margin:1.5rem 0}.emdash-image[data-astro-cid-zgknrkpr] img[data-astro-cid-zgknrkpr]{max-width:100%;height:auto}.emdash-image[data-astro-cid-zgknrkpr] figcaption[data-astro-cid-zgknrkpr]{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-zgknrkpr],.emdash-image--align-right[data-astro-cid-zgknrkpr]{width:fit-content;max-width:50%}.emdash-image--align-left[data-astro-cid-zgknrkpr]{float:left;margin:0 1.5rem 1rem 0}.emdash-image--align-right[data-astro-cid-zgknrkpr]{float:right;margin:0 0 1rem 1.5rem}.emdash-image--align-center[data-astro-cid-zgknrkpr]{width:fit-content;margin-inline:auto}.emdash-image--align-wide[data-astro-cid-zgknrkpr],.emdash-image--align-full[data-astro-cid-zgknrkpr]{width:100%}@media (width<=640px){.emdash-image--align-left[data-astro-cid-zgknrkpr],.emdash-image--align-right[data-astro-cid-zgknrkpr]{float:none;width:100%;max-width:100%;margin-inline:0}}.emdash-code[data-astro-cid-3nbszaos]{margin:1.5rem 0}.emdash-code-filename[data-astro-cid-3nbszaos]{color:#ccc;background:#2d2d2d;border-radius:.5rem .5rem 0 0;padding:.5rem 1rem;font-family:monospace;font-size:.75rem}.emdash-code[data-astro-cid-3nbszaos] pre[data-astro-cid-3nbszaos]{background:#1e1e1e;border-radius:.5rem;margin:0;padding:1rem;overflow-x:auto}.emdash-code-filename[data-astro-cid-3nbszaos]+pre[data-astro-cid-3nbszaos]{border-radius:0 0 .5rem .5rem}.emdash-code[data-astro-cid-3nbszaos] code[data-astro-cid-3nbszaos]{color:#e0e0e0;font-family:Fira Code,Consolas,monospace;font-size:.875rem}.emdash-embed[data-astro-cid-blhqu362]{margin:1.5rem 0}.emdash-embed-video[data-astro-cid-blhqu362]{height:0;padding-bottom:56.25%;position:relative;overflow:hidden}.emdash-embed-video[data-astro-cid-blhqu362] iframe[data-astro-cid-blhqu362],.emdash-embed-video[data-astro-cid-blhqu362] video[data-astro-cid-blhqu362]{border:0;width:100%;height:100%;position:absolute;top:0;left:0}.emdash-embed-audio[data-astro-cid-blhqu362],.emdash-embed-audio[data-astro-cid-blhqu362] audio[data-astro-cid-blhqu362]{width:100%}.emdash-embed[data-astro-cid-blhqu362] figcaption[data-astro-cid-blhqu362]{color:var(--emdash-caption-color,var(--color-muted,#666));text-align:center;margin-top:.5rem;font-size:.875rem}.emdash-gallery[data-astro-cid-r44yp3v5]{grid-template-columns:repeat(var(--columns,3), 1fr);gap:1rem;margin:1.5rem 0;display:grid}.emdash-gallery-item[data-astro-cid-r44yp3v5]{margin:0}.emdash-gallery-item[data-astro-cid-r44yp3v5] img[data-astro-cid-r44yp3v5]{object-fit:cover;aspect-ratio:1;width:100%;height:auto}.emdash-gallery-item[data-astro-cid-r44yp3v5] figcaption[data-astro-cid-r44yp3v5]{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-r44yp3v5]{grid-template-columns:repeat(2,1fr)}}.emdash-columns[data-astro-cid-4i2s3fla]{gap:2rem;margin:1.5rem 0;display:flex}.emdash-column[data-astro-cid-4i2s3fla]{flex:1;min-width:0}@media (width<=768px){.emdash-columns[data-astro-cid-4i2s3fla]{flex-direction:column;gap:1rem}}.emdash-break[data-astro-cid-mk2zx736]{margin:2rem 0}.emdash-break-line[data-astro-cid-mk2zx736]{border:none;border-top:1px solid var(--emdash-break-color,var(--color-border,#e0e0e0))}.emdash-break-dots[data-astro-cid-mk2zx736]{text-align:center;color:var(--emdash-break-dots-color,var(--color-muted,#999));letter-spacing:.5em}.emdash-break-space[data-astro-cid-mk2zx736]{height:2rem}iframe[data-emdash-html-block]{border:0;width:100%;margin:1.5rem 0;display:block}.emdash-html-block[data-astro-cid-t3733jx3]{margin:1.5rem 0}.emdash-iframe[data-astro-cid-7uubwm2q]{aspect-ratio:16/9;width:100%;margin:1.5rem 0}.emdash-iframe[data-astro-cid-7uubwm2q] iframe{border:0;width:100%;height:100%;display:block}.emdash-video[data-astro-cid-udirvwsv]{margin:1.5rem 0}.emdash-video[data-astro-cid-udirvwsv] video[data-astro-cid-udirvwsv]{width:100%;height:auto;max-height:70vh;display:block}.emdash-video[data-astro-cid-udirvwsv] figcaption[data-astro-cid-udirvwsv]{color:var(--emdash-caption-color,var(--color-muted,#666));text-align:center;margin-top:.5rem;font-size:.875rem}.emdash-table-wrapper[data-astro-cid-ecfs7e5z]{overscroll-behavior-inline:contain;max-inline-size:100%;margin-block:1.5rem;overflow-x:auto}.emdash-table[data-astro-cid-ecfs7e5z]{border-collapse:collapse;inline-size:100%;font-size:.9rem}.emdash-table[data-astro-cid-ecfs7e5z] th[data-astro-cid-ecfs7e5z],.emdash-table[data-astro-cid-ecfs7e5z] td[data-astro-cid-ecfs7e5z]{border:1px solid var(--color-border,#ddd);text-align:start;vertical-align:top;padding:.75rem;position:relative}.emdash-table[data-astro-cid-ecfs7e5z] th[data-astro-cid-ecfs7e5z] p,.emdash-table[data-astro-cid-ecfs7e5z] td[data-astro-cid-ecfs7e5z] p{margin:0}.emdash-table[data-astro-cid-ecfs7e5z] th[data-astro-cid-ecfs7e5z]{background:var(--color-surface,#f5f5f5);font-weight:600}.emdash-table[data-astro-cid-ecfs7e5z] tbody[data-astro-cid-ecfs7e5z] tr[data-astro-cid-ecfs7e5z]:nth-child(2n){background:var(--color-bg-subtle,#fafafa)}.emdash-table[data-astro-cid-ecfs7e5z] tbody[data-astro-cid-ecfs7e5z] tr[data-astro-cid-ecfs7e5z]:hover{background:var(--color-surface,#f0f0f0)}.emdash-button[data-astro-cid-tmrbaehk]{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-tmrbaehk],.emdash-button--fill[data-astro-cid-tmrbaehk]{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-tmrbaehk]:hover,.emdash-button--fill[data-astro-cid-tmrbaehk]:hover{background-color:var(--emdash-button-bg-hover,#005177);border-color:var(--emdash-button-bg-hover,#005177)}.emdash-button--outline[data-astro-cid-tmrbaehk]{color:var(--emdash-button-bg,#0073aa);border:2px solid var(--emdash-button-bg,#0073aa);background-color:#0000}.emdash-button--outline[data-astro-cid-tmrbaehk]:hover{background-color:var(--emdash-button-bg,#0073aa);color:var(--emdash-button-color,#fff)}.emdash-buttons[data-astro-cid-z5b6nsd4]{flex-wrap:wrap;gap:.75rem;margin:1.5rem 0;display:flex}.emdash-buttons--vertical[data-astro-cid-z5b6nsd4]{flex-direction:column;align-items:flex-start}.emdash-buttons--horizontal[data-astro-cid-z5b6nsd4]{flex-direction:row;align-items:center}.emdash-cover[data-astro-cid-llqibot6]{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-llqibot6]{object-fit:cover;z-index:0;width:100%;height:100%;position:absolute;inset:0}.emdash-cover__video[data-astro-cid-llqibot6]{object-fit:cover}.emdash-cover__overlay[data-astro-cid-llqibot6]{z-index:1;position:absolute;inset:0}.emdash-cover__content[data-astro-cid-llqibot6]{z-index:2;width:100%;color:var(--emdash-cover-text-color,#fff);position:relative}.emdash-cover--align-left[data-astro-cid-llqibot6]{text-align:left;justify-content:flex-start}.emdash-cover--align-center[data-astro-cid-llqibot6]{text-align:center;justify-content:center}.emdash-cover--align-right[data-astro-cid-llqibot6]{text-align:right;justify-content:flex-end}.emdash-cover__content[data-astro-cid-llqibot6] h1,.emdash-cover__content[data-astro-cid-llqibot6] h2,.emdash-cover__content[data-astro-cid-llqibot6] h3,.emdash-cover__content[data-astro-cid-llqibot6] h4,.emdash-cover__content[data-astro-cid-llqibot6] p{color:inherit}.emdash-file[data-astro-cid-mds42srx]{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-mds42srx]{color:var(--emdash-file-color,#333);flex:1;align-items:center;gap:.5rem;text-decoration:none;display:flex}.emdash-file__link[data-astro-cid-mds42srx]:hover{text-decoration:underline}.emdash-file__icon[data-astro-cid-mds42srx]{width:1.5rem;height:1.5rem;color:var(--emdash-file-icon-color,#666);flex-shrink:0}.emdash-file__name[data-astro-cid-mds42srx]{word-break:break-all;font-weight:500}.emdash-file__download[data-astro-cid-mds42srx]{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-mds42srx]:hover{background-color:var(--emdash-button-bg-hover,#005177)}.emdash-file__download[data-astro-cid-mds42srx] svg[data-astro-cid-mds42srx]{width:1.25rem;height:1.25rem}.emdash-pullquote[data-astro-cid-ubkgogrr]{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-ubkgogrr]{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-ubkgogrr]{color:var(--emdash-pullquote-citation-color,#666);margin-top:1rem;font-size:.9rem;font-style:normal}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#fff;--ink:#1c1c1c;--mute:#767676;--rule:#e1e1e1;--chip:#efefef;--studio:#0e0f11;--studio-ink:#f2f2f2;--teal:#14435b;--mustard:#e2a72e;--cream:#f3ead6;--display:"Archivo", "Helvetica Neue", Arial, sans-serif;--body:"Zen Kaku Gothic New", "Hiragino Sans", "Yu Gothic", sans-serif;--gut:max(16px, env(safe-area-inset-left,0px));--gutr:max(16px, env(safe-area-inset-right,0px))}@media (width>=600px){:root{--gut:max(24px, env(safe-area-inset-left,0px));--gutr:max(24px, env(safe-area-inset-right,0px))}}@media (width>=900px){:root{--gut:max(46px, env(safe-area-inset-left,0px));--gutr:max(46px, env(safe-area-inset-right,0px))}}*{box-sizing:border-box}html{scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--paper);color:var(--ink);font-family:var(--body);margin:0;font-size:15px;font-weight:500;line-height:1.85;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}a:focus-visible,button:focus-visible{outline-offset:3px;outline:2px solid}.disp{font-family:var(--display);text-transform:uppercase;letter-spacing:-.01em;font-weight:900;font-stretch:72%;line-height:.82}.inner{padding-left:var(--gut);padding-right:var(--gutr)}.skip{position:absolute;left:-9999px}.skip:focus{z-index:10;background:var(--ink);color:#fff;padding:8px 12px;top:16px;left:16px}.head{z-index:5;padding-top:calc(22px + env(safe-area-inset-top,0px));justify-content:space-between;align-items:center;gap:16px;display:flex;position:relative}.is-home .head{position:absolute;top:0;left:0;right:0}.logo{font-family:var(--display);letter-spacing:-.02em;font-size:30px;font-weight:900;font-stretch:68%;line-height:1}.gnav{font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;align-items:center;gap:clamp(22px,2.6vw,36px);font-size:13px;font-weight:600;font-stretch:88%;line-height:1;display:flex}.gnav a{padding-block:8px}.gnav a:not(.gnav__contact),.foot nav a{background:linear-gradient(currentColor,currentColor) right 100%/0 1.5px no-repeat;transition:background-size .35s cubic-bezier(.22,1,.36,1)}.gnav a:not(.gnav__contact):hover,.gnav a:not(.gnav__contact):focus-visible,.foot nav a:hover,.foot nav a:focus-visible{background-position:0 100%;background-size:100% 1.5px}.gnav .gnav__contact{background:var(--ink);color:#fff;border-radius:4px;padding:14px 18px}.gnav .gnav__contact:hover,.gnav .gnav__contact:focus-visible{opacity:.85}.menu-btn{color:inherit;cursor:pointer;font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;background:0 0;border:0;align-items:center;gap:12px;padding:10px 0;font-size:13px;font-weight:700;font-stretch:88%;line-height:1;display:none}.menu-btn__icon{width:24px;height:10px;position:relative}.menu-btn__icon:before,.menu-btn__icon:after{content:"";background:currentColor;width:100%;height:2px;transition:transform .35s cubic-bezier(.77,0,.18,1),top .35s cubic-bezier(.77,0,.18,1);position:absolute;left:0}.menu-btn__icon:before{top:0}.menu-btn__icon:after{top:8px}.spmenu .menu-btn__icon:before{top:4px;transform:rotate(45deg)scaleX(.85)}.spmenu .menu-btn__icon:after{top:4px;transform:rotate(-45deg)scaleX(.85)}@media (width<=720px){.gnav{display:none}.menu-btn{display:inline-flex}}.spmenu{z-index:40;-webkit-backdrop-filter:blur(18px)saturate(140%);backdrop-filter:blur(18px)saturate(140%);color:#fff;background:#0c0d0fd1;position:fixed;inset:0;overflow-y:auto}.spmenu[hidden]{display:none}.spmenu .spmenu__bar.head{z-index:1;color:#fff;position:relative}.spmenu__bar .menu-btn{display:inline-flex}.spmenu__nav{min-height:calc(100% - 80px);padding-top:36px;padding-bottom:calc(32px + env(safe-area-inset-bottom,0px));flex-direction:column;display:flex}.spmenu__nav ul{border-top:1px solid #ffffff2e;margin:0;padding:0;list-style:none}.spmenu__nav li{border-bottom:1px solid #ffffff2e;overflow:hidden}.spmenu__nav li a{grid-template-columns:2.4em 1fr auto;align-items:center;gap:8px;padding-block:18px;display:grid}.spmenu__no{font-family:var(--display);letter-spacing:.04em;color:#ffffff80;font-size:12px;font-weight:600;font-stretch:88%}.spmenu__nav li .disp{font-size:clamp(48px,15vw,72px)}.spmenu__arrow{font-family:var(--display);font-size:22px}.spmenu__contact{color:var(--ink);background:#fff;border-radius:6px;justify-content:space-between;align-items:center;margin-top:28px;padding:18px 20px;display:flex}.spmenu__contact .disp{font-size:34px}.spmenu__contact span[aria-hidden]{font-family:var(--display);font-size:22px}.spmenu__small{font-family:var(--display);text-transform:uppercase;letter-spacing:.04em;color:#ffffff8c;margin-top:auto;padding-top:28px;font-size:12px;font-weight:600;font-stretch:88%}.spmenu li>a,.spmenu__contact,.spmenu__small{opacity:0;transition:transform .5s cubic-bezier(.22,1,.36,1),opacity .3s;transition-delay:calc(var(--i) * 60ms);transform:translateY(110%)}.spmenu.-in li>a,.spmenu.-in .spmenu__contact,.spmenu.-in .spmenu__small{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){.spmenu li>a,.spmenu__contact,.spmenu__small{transition:none}}.menu-open{overflow:hidden}.hero{padding-top:calc(150px + env(safe-area-inset-top,0px));text-align:center;padding-bottom:90px;position:relative}.hero h1{z-index:1;font-family:var(--display);font-weight:900;font-stretch:68%;font-size:calc((100vw - var(--gut) - var(--gutr)) / 2.7);letter-spacing:-.025em;margin:0;line-height:.78;position:relative}@keyframes slide{to{transform:translate(-50%)}}.dev{aspect-ratio:393/852;background:#000;border:6px solid #2b2c30;border-radius:22px;flex:none;height:clamp(240px,30vw,440px);overflow:hidden}.dev img{object-fit:cover;object-position:top;width:100%;height:100%}.label{margin:0;padding-bottom:clamp(20px,3vw,36px);font-size:clamp(64px,13vw,190px)}#business{padding-top:clamp(70px,9vw,130px)}.biz{grid-template-columns:minmax(0,5fr) minmax(0,6fr);min-height:640px;display:grid}@media (width<=900px){.biz{grid-template-columns:1fr;min-height:0}}.biz .txt{flex-direction:column;gap:18px;min-width:0;padding-block:clamp(40px,6vw,80px) 56px;display:flex}.biz .big{margin:0;font-size:clamp(60px,9vw,140px)}.biz h3{margin:6px 0 0;font-size:clamp(24px,2.4vw,32px);font-weight:900;line-height:1.3}.biz h3 img{width:auto;height:clamp(34px,3.4vw,46px)}.works{width:100%;max-width:34em;margin:6px 0 10px;padding:0;font-size:15px;list-style:none}.works li{border-bottom:1px solid color-mix(in srgb, currentColor 22%, transparent);padding:11px 0}.works a:hover,.works a:focus-visible{text-underline-offset:4px;text-decoration:underline}.btn{background:var(--ink);color:#fff;font-family:var(--display);letter-spacing:.03em;text-transform:uppercase;cursor:pointer;border:0;border-radius:4px;align-items:center;gap:22px;width:max-content;padding:13px 16px 13px 18px;font-size:12px;font-weight:700;font-stretch:88%;display:inline-flex}.btn span[aria-hidden]{font-size:15px;line-height:1}.btn.light{color:var(--studio);background:#fff}.btn.mustard{background:var(--mustard);color:#101010}.biz .pic{place-items:center;min-width:0;padding:clamp(24px,4vw,56px);display:grid}.stack{flex-wrap:nowrap;justify-content:center;align-items:center;gap:clamp(10px,1.4vw,18px);display:flex}.stack .dev{height:clamp(220px,26vw,400px)}@media (width<=560px){.stack .dev{border-width:4px;border-radius:14px;height:min(380px,59.2593vw - 37.9259px)}.stack{gap:8px}}.studio{background:var(--studio);color:var(--studio-ink)}.studio .pic{background:#17181b}.fumi{background:var(--teal);color:var(--cream)}.fumi .big{color:var(--mustard)}.fumi .pic{background:#0f3649}.fumi .dev{border-color:#0a2a39}.news-sec{padding-top:clamp(80px,10vw,140px)}.news{border-top:2px solid var(--ink);margin:0;padding:0;list-style:none}.news li{border-bottom:1px solid var(--rule)}.news a{grid-template-columns:8em minmax(0,1fr);gap:20px;padding-block:18px;display:grid}.news a:hover .t,.news a:focus-visible .t{text-underline-offset:4px;text-decoration:underline}.news time{font-family:var(--display);color:var(--mute);letter-spacing:.02em;font-size:14px;font-weight:600;font-stretch:88%}@media (width<=560px){.news a{grid-template-columns:1fr;gap:2px}}.news-empty{border-top:2px solid var(--ink);color:var(--mute);margin:0;padding-block:18px;font-size:14px}.more{margin-top:24px}.company{padding-top:clamp(80px,10vw,140px)}dl{border-top:2px solid var(--ink);margin:0}dl div{border-bottom:1px solid var(--rule);grid-template-columns:10em minmax(0,1fr);gap:20px;padding-block:18px;display:grid}@media (width<=560px){dl div{grid-template-columns:1fr;gap:2px}}dt{color:var(--mute);font-size:13px}dd{margin:0}dd ul{margin:0;padding:0;list-style:none}.contact-cta{background:var(--chip);flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-top:clamp(80px,10vw,140px);padding-block:clamp(36px,5vw,64px);display:flex}.contact-cta .disp{margin:0;font-size:clamp(54px,10vw,150px)}.page{padding-top:clamp(60px,9vw,120px);padding-bottom:clamp(40px,6vw,80px)}.page__sub{color:var(--mute);margin:0 0 clamp(24px,4vw,40px);font-size:14px}.page__body{max-width:46em}.crumbs{color:var(--mute);flex-wrap:wrap;gap:8px;margin:0 0 24px;padding:0;font-size:12px;list-style:none;display:flex}.crumbs li+li:before{content:"/";margin-right:8px}.crumbs a:hover{text-decoration:underline}.article{border-top:2px solid var(--ink);padding-top:28px}.article h1{margin:10px 0 0;font-size:clamp(24px,3vw,34px);font-weight:900;line-height:1.45}.article time{font-family:var(--display);color:var(--mute);font-size:14px;font-weight:600;font-stretch:88%}.prose{margin-top:28px;font-size:16px;line-height:2}.prose h2{margin:2.4em 0 .6em;font-size:20px;font-weight:900;line-height:1.5}.prose h3{margin:2em 0 .5em;font-size:17px;font-weight:700}.prose p{margin:0 0 1.2em}.prose ul,.prose ol{margin:0 0 1.2em;padding-left:1.4em}.prose a{text-underline-offset:3px;text-decoration:underline}.prose img{margin:1.6em 0}.back{margin-top:48px}.contact-body{border-top:2px solid var(--ink);grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:clamp(24px,5vw,80px);padding-top:28px;display:grid}@media (width<=820px){.contact-body{grid-template-columns:1fr}}.contact-notes{color:var(--mute);align-content:start;gap:8px;margin:0;padding:0;font-size:13px;list-style:none;display:grid}.contact-notes li{text-indent:-1em;padding-left:1em}.contact-notes li:before{content:"※"}.contact-form{gap:22px;min-width:0;display:grid;position:relative}.contact-form label{gap:8px;font-size:14px;font-weight:700;display:grid}.contact-form em{font-style:normal;font-family:var(--display);letter-spacing:.04em;background:var(--ink);color:#fff;vertical-align:2px;border-radius:3px;margin-left:6px;padding:2px 6px;font-size:10px;font-weight:700;font-stretch:88%}.contact-form input[type=text],.contact-form input[type=email],.contact-form textarea{width:100%;min-width:0;font:inherit;color:var(--ink);background:var(--chip);border:1px solid #0000;border-radius:4px;padding:13px 14px;font-size:16px;font-weight:500}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--ink);background:#fff;outline:none}.contact-form textarea{resize:vertical;min-height:180px;line-height:1.7}.contact-form__trap{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.contact-form__note{color:var(--mute);margin:0;font-size:12px}.contact-form a{text-underline-offset:3px;text-decoration:underline}.contact-form label.contact-form__agree{cursor:pointer;align-items:center;gap:10px;font-weight:500;display:flex}.contact-form__agree input{width:18px;height:18px;accent-color:var(--ink);flex:none;margin:0}.contact-form__submit{cursor:pointer;background:var(--ink);color:#fff;font-family:var(--body);letter-spacing:.03em;border:0;border-radius:4px;justify-self:start;align-items:center;gap:22px;padding:15px 18px 15px 22px;font-size:14px;font-weight:700;display:inline-flex}.contact-form__submit:after{content:"→";font-family:var(--display);font-size:15px}.contact-form__submit:hover,.contact-form__submit:focus-visible{opacity:.85}.contact-form__submit:disabled{opacity:.5;cursor:wait}.contact-form__status{margin:0;font-size:14px}.contact-form__status:empty{display:none}.contact-form__status[data-state=ok]{color:#1f7a45}.contact-form__status[data-state=error]{color:#b3261e}.cf-turnstile{min-height:65px}@media (width<=359px){.contact-page{padding-left:12px;padding-right:12px}}.foot{padding-block:48px calc(40px + env(safe-area-inset-bottom,0px));border-top:1px solid var(--rule);color:var(--mute);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:20px;margin-top:clamp(60px,8vw,100px);font-size:12px;display:flex}.is-home .foot{border-top:0;margin-top:0}.foot .logo{color:var(--ink)}.foot nav{font-family:var(--display);text-transform:uppercase;flex-wrap:wrap;gap:20px;font-weight:600;font-stretch:88%;display:flex}.foot nav a:hover{color:var(--ink)}.page__head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:clamp(24px,4vw,40px);display:flex}.page__head .page__sub{margin:0}.page__date{font-family:var(--display);letter-spacing:.04em;text-transform:uppercase;color:var(--mute);margin:0;font-size:13px;font-weight:600;font-stretch:88%}.policy{border-top:2px solid var(--ink)}.policy>section{border-bottom:1px solid var(--rule);grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:clamp(16px,4vw,64px);padding-block:clamp(28px,4vw,44px);display:grid}.policy h2{margin:0;font-size:17px;font-weight:900;line-height:1.6}.policy .prose{max-width:44em;margin:0;font-size:15px;line-height:2}.policy .prose>:last-child{margin-bottom:0}.policy .prose li+li{margin-top:.4em}@media (width>=821px){.policy h2{align-self:start;position:sticky;top:24px}}@media (width<=820px){.policy>section{grid-template-columns:1fr}}.fx-dots{z-index:0;pointer-events:none;position:fixed;inset:0}.head,main,.foot{z-index:1;position:relative}.skip{z-index:2}.is-home .head{position:absolute}.fx-a{z-index:-1;pointer-events:none;position:absolute}.hero,#business,.news-sec,.company{position:relative}.a-h1{width:9%;height:26%;top:64%;left:3%}.a-h2{width:12.5%;height:20%;top:18%;right:5%}.a-biz{aspect-ratio:180/260;width:12.5%;top:clamp(50px,6vw,100px);right:8%}.a-news{aspect-ratio:112/177;width:8%;top:30px;right:14%}.a-co{aspect-ratio:180/180;width:12.5%;top:40px;left:52%}@media (width<=720px){.a-h1{width:12%;height:26%;top:46%;left:2%}.a-h2{width:22%;height:34%;top:12%;right:3%}.a-biz{width:22%;top:40px;right:6%}.a-news{width:18%;top:50px;right:10%}.a-co{width:20%;top:60px;left:auto;right:6%}}.btn .btxt,.contact-form__submit .btxt{white-space:nowrap;display:inline-block}.btn.-typing .btxt:after,.contact-form__submit.-typing .btxt:after{content:"_"}.btn.-typed .btxt:after,.contact-form__submit.-typed .btxt:after{content:"_";animation:.6s step-end 2 forwards fx-cursor}@keyframes fx-cursor{0%{visibility:visible}50%{visibility:hidden}to{visibility:hidden}}[data-mosaic]{position:relative}.fx-mosaic{width:100%;height:100%;image-rendering:pixelated;pointer-events:none;position:absolute;inset:0}@media (width<=720px){.hero{padding-top:calc(96px + env(safe-area-inset-top,0px));padding-bottom:56px}#business{padding-top:64px}.news-sec,.company{padding-top:72px}.contact-cta{margin-top:72px}.biz .txt{gap:14px;padding-block:44px 40px}.works li{padding:9px 0}}.hero__copy{white-space:nowrap;text-transform:uppercase;font-size:calc((100vw - var(--gut) - var(--gutr)) / 7.3)!important;line-height:.86!important}.hero__copy span{display:block}@media (width<=720px){.hero__copy{font-size:calc((100vw - var(--gut) - var(--gutr)) / 4.6)!important}.hero__copy .sp{display:inline}}.hero{min-height:100svh;padding-top:calc(110px + env(safe-area-inset-top,0px));isolation:isolate;color:#fff;background:#0e0f11;align-items:center;padding-bottom:80px;display:grid;overflow:hidden}.wall{z-index:0;flex-direction:column;justify-content:center;gap:clamp(12px,1.4vw,20px);display:flex;position:absolute;inset:-4% 0}.wall:after{content:"";background:#0a0b0d8c;position:absolute;inset:0}.wall__row{gap:clamp(12px,1.4vw,20px);width:max-content;padding-right:clamp(12px,1.4vw,20px);animation:90s linear infinite slide;display:flex}.wall__row.-rev{animation-duration:110s;animation-direction:reverse}.wall__row:nth-child(3){animation-duration:100s}@media (prefers-reduced-motion:reduce){.wall__row{animation:none}}.wall .dev{background:#222;border:0;border-radius:18px;height:clamp(220px,21vw,340px)}.hero__copy{z-index:1;color:#fff;position:relative}.is-home .head{z-index:3}.hero-dark .head{color:#fff}.hero-dark .gnav .gnav__contact{color:var(--ink);background:#fff}.fx-dots{z-index:2;mix-blend-mode:difference}@media (width<=720px){.hero{min-height:88svh;padding-top:calc(96px + env(safe-area-inset-top,0px));padding-bottom:64px}.wall .dev{border-radius:14px;height:190px}}.hero__copy .sp{display:none}@media (width<=720px){.hero__copy{font-size:calc((100vw - var(--gut) - var(--gutr)) / 4.6)!important}.hero__copy .sp{display:inline}}.biz .txt{container-type:inline-size}.biz .big{white-space:nowrap;font-size:min(140px,17.094cqi)}.intro-cover{display:none}.fx-intro .intro-cover{z-index:100;background:var(--paper);pointer-events:none;animation:0s 3s forwards intro-safety;display:block;position:fixed;inset:0}@keyframes intro-safety{to{visibility:hidden}}.wall{background:#0e0f11}.hero__copy,.hero-dark .head,.hero-dark .gnav .gnav__contact{transition:background-color .9s,color .9s}.wall{transition:opacity .9s}.fx-pre .hero{background:var(--paper);color:var(--ink);animation:0s 3.5s forwards pre-bg}.fx-pre .hero__copy{color:var(--ink);animation:0s 3.5s forwards pre-copy}.fx-pre .wall{opacity:0;animation:0s 3.5s forwards pre-wall}.fx-pre .hero-dark .head{color:var(--ink);animation:0s 3.5s forwards pre-copy}.fx-pre .hero-dark .gnav .gnav__contact{background:var(--ink);color:#fff}@keyframes pre-bg{to{color:#fff;background:#0e0f11}}@keyframes pre-copy{to{color:#fff}}@keyframes pre-wall{to{opacity:1}}.btn span[aria-hidden],.spmenu__contact span[aria-hidden]{display:inline-block}@media (hover:hover){.btn:hover span[aria-hidden],.btn:focus-visible span[aria-hidden],.contact-form__submit:hover:after{animation:.5s cubic-bezier(.22,1,.36,1) fx-arrow}}.contact-form__submit:after{display:inline-block}@keyframes fx-arrow{0%{opacity:1;transform:none}45%{opacity:0;transform:translate(10px)}46%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:none}}.btn:hover,.btn:focus-visible{opacity:1}
