/* この実験のスタイルは、このディレクトリだけで完結する。 */
:root{--paper:#eceee5;--ink:#223e32;--muted:#69766b;--line:#cbd1c6;--lime:#d4f18c;--orange:#dc673c;--gutter:clamp(24px,4.6vw,88px);--sans:Arial,"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;--serif:"Yu Mincho","Hiragino Mincho ProN",serif;color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-feature-settings:"palt";font-size:15px;-webkit-font-smoothing:antialiased}::selection{background:var(--lime);color:var(--ink)}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:3px solid var(--orange);outline-offset:6px}button{border:0}img{display:block;max-width:100%;height:auto}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:700}h2{letter-spacing:-.065em;line-height:1.4}section{scroll-margin-top:20px}.skip{position:fixed;top:-80px;left:20px;z-index:100;background:var(--lime);padding:18px}.skip:focus{top:15px}.header{height:112px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;font-size:29px;font-weight:800;letter-spacing:-1.5px}.brand-mark{width:44px;height:44px;border:2px solid var(--ink);border-radius:50%;display:grid;place-items:center;font-size:37px;line-height:1;padding-bottom:5px;font-style:italic}.brand-sub{display:block;font-size:8px;letter-spacing:1.05px;line-height:1.6;font-weight:500}.header nav{display:flex;gap:34px;font-size:12px;font-weight:600}.header nav a{position:relative;padding:10px 0}.header nav a:after{content:"";position:absolute;bottom:3px;left:0;width:100%;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .3s}.header nav a:hover:after{transform:scaleX(1)}.header-contact{border:1px solid var(--ink);border-radius:40px;padding:13px 22px;font-size:12px;display:flex;gap:35px;align-items:center;transition:background .25s}.header-contact:hover{background:var(--lime)}.header-contact span{font-size:20px}
.hero{padding:23px var(--gutter) 0;display:grid;grid-template-columns:1fr 1.03fr;gap:0 30px;min-height:calc(100svh - 112px);max-width:1800px;margin:auto;align-content:center}.hero-copy{padding:18px 0 24px;align-self:center}.eyebrow{font-size:9px;letter-spacing:1.65px;display:flex;gap:9px;align-items:center;font-weight:600;margin-bottom:32px}.status-dot{background:var(--orange);width:6px;height:6px;border-radius:50%;box-shadow:0 0 0 4px #dc673c16}h1{font-size:clamp(60px,6.6vw,122px);letter-spacing:-.09em;line-height:1.25;font-weight:800}h1>span{display:block;animation:rise .9s cubic-bezier(.2,.7,.25,1) both}h1>span:nth-child(2){animation-delay:.1s}h1>span:nth-child(3){animation-delay:.2s}.last-line{position:relative;white-space:nowrap}.period{color:var(--orange)}.hero-bottom{margin-top:35px;display:flex;align-items:center;justify-content:space-between;max-width:440px;gap:20px}.hero-bottom p{font-size:12px;line-height:2;letter-spacing:.025em}.circle-link{height:62px;width:62px;border-radius:50%;border:1px solid var(--ink);display:grid;place-items:center;font-size:32px;transition:transform .3s,background .3s;flex:none}.circle-link:hover{background:var(--lime);transform:rotate(45deg)}.workbench{position:relative;min-height:530px;aspect-ratio:1/1.04;background:#dfe6d7;border-radius:3px;overflow:hidden;isolation:isolate;transition:background .6s,color .6s}.workbench:before{content:"";position:absolute;inset:0;z-index:-1;background-image:linear-gradient(#26473209 1px,transparent 1px),linear-gradient(90deg,#26473209 1px,transparent 1px);background-size:40px 40px;mask-image:radial-gradient(ellipse,black,transparent 75%)}.stage-meta{position:absolute;top:24px;left:25px;right:25px;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.2px;z-index:3;gap:12px}.live-label{display:flex;align-items:center;gap:6px}.live-label i{width:5px;height:5px;border-radius:50%;background:var(--orange)}.scene-wrap{position:absolute;inset:35px -8% 10px}.scene-poster{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;transition:opacity .4s}.scene-wrap canvas{position:absolute;inset:0;width:100%;height:100%;touch-action:pan-y;cursor:grab;opacity:0;transition:opacity .4s}.scene-wrap canvas:active{cursor:grabbing}.scene-wrap.ready canvas{opacity:1}.scene-wrap.ready .scene-poster{opacity:0}.stage-orbit{position:absolute;border:1px dashed #7688744a;border-radius:50%;width:88%;height:68%;left:6%;top:17%;transform:rotate(-15deg)}.float-note{position:absolute;background:#f4f5ebea;box-shadow:0 5px 25px #243e3210;border:1px solid #ffffffe0;padding:12px 15px;font-size:11px;letter-spacing:.04em;border-radius:2px;z-index:2;animation:float 6s ease-in-out infinite;pointer-events:none}.note-one{left:7%;top:18%;transform:rotate(-5deg)}.note-dot{display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--orange);margin-right:7px}.note-two{right:5%;bottom:20%;animation-delay:-3s}.note-two>span{font-size:24px;color:var(--orange);vertical-align:middle;margin-left:12px}.stage-bottom{position:absolute;bottom:22px;left:25px;right:25px;display:flex;justify-content:space-between;align-items:center;z-index:3;gap:10px}.stage-bottom>span{font-size:8px;letter-spacing:1.8px;display:flex;align-items:center;gap:10px}.stage-bottom>span>span{font-size:22px}.light-toggle{background:transparent;border-bottom:1px solid currentColor;padding:6px 0;display:flex;align-items:center;gap:16px;font-size:10px}.light-toggle span{font-size:20px}.workbench.night{background:#183126;color:#e8efd9}.workbench.night .stage-orbit{border-color:#9cb48845}.workbench.night .float-note{background:#294839;color:#e8efd9;border-color:#64825940}.hero-foot{grid-column:1/-1;display:flex;justify-content:space-between;padding:29px 0 25px;font-size:8px;letter-spacing:1.5px;align-items:center;gap:18px}.hero-foot span:last-child{letter-spacing:.08em}.ticker{background:var(--lime);overflow:hidden;border-top:1px solid #223e3215;border-bottom:1px solid #223e3215}.ticker>div{display:flex;align-items:center;gap:38px;width:max-content;padding:17px 0;animation:ticker 36s linear infinite}.ticker span{font-size:13px;font-weight:700;letter-spacing:1.4px}.ticker b{font-size:26px;font-weight:400;line-height:1}
.section{padding:90px var(--gutter);max-width:1800px;margin:auto}.section-label{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line);padding-bottom:20px;gap:20px;font-size:10px;letter-spacing:1.2px}.section-label>span:last-child{letter-spacing:.08em;font-size:11px}.about-grid{display:grid;grid-template-columns:.95fr 1.1fr;gap:80px;padding:80px 45px}.about-portrait{position:relative;display:grid;place-items:center;min-height:350px}.about-portrait img{width:205px;border-radius:50%;z-index:1;filter:saturate(.8)}.portrait-ring{width:290px;height:290px;position:absolute;border:1px solid var(--line);border-radius:50%;box-shadow:0 0 0 40px #dfe5d533,0 0 0 80px #dfe5d522}.portrait-ring:before{content:"";position:absolute;width:16px;height:16px;background:var(--orange);border-radius:50%;left:8px;top:56px}.portrait-tag{position:absolute;bottom:23px;font-size:11px;letter-spacing:2px}.portrait-star{position:absolute;font-size:86px;left:calc(50% + 70px);top:20px;color:var(--orange);z-index:2;animation:spin 50s linear infinite}.about-copy h2{font-size:clamp(32px,3.5vw,58px);margin-bottom:27px}.about-copy p{line-height:2.1;font-size:13px;margin-bottom:18px;letter-spacing:.02em}.about-tags{display:flex;gap:8px;margin-top:25px;flex-wrap:wrap}.about-tags span{font-size:10px;border:1px solid var(--line);border-radius:30px;padding:7px 13px}.belief-line{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:38px 0 0;gap:24px}.belief-line>span:first-child{font-size:9px;letter-spacing:1.2px}.belief-line>span:last-child{font-size:48px;font-weight:400}.belief-line p{font-size:clamp(22px,2.5vw,40px);letter-spacing:-.03em}.belief-line em{font-family:var(--serif);font-style:normal;background:linear-gradient(transparent 60%,var(--lime) 60%)}
.works{padding-top:38px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin:55px 0 42px;gap:24px}.section-heading h2{font-size:clamp(34px,4.2vw,68px)}.section-heading p{font-size:12px;line-height:2.1;max-width:230px;margin-right:4%}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.work-card{min-width:0}.work-visual{height:470px;position:relative;overflow:hidden;border-radius:3px}.photo-card .work-visual{background:#dde5d4}.video-card .work-visual{background:#e1d9c9}.work-number{position:absolute;top:25px;left:25px;font-size:9px;letter-spacing:1.4px;z-index:2}.photo-art{position:absolute;width:100%;height:100%;perspective:1000px}.photo-art figure{position:absolute;background:#fbf8ee;left:50%;top:52%;width:53%;transform:translate(-50%,-50%) rotate(-8deg);padding:12px 12px 21px;box-shadow:8px 20px 40px #304a3025;transition:transform .6s}.photo-art figure img{width:100%;height:275px;object-fit:cover;object-position:center 47%;filter:saturate(.8)}.photo-art figcaption{padding:20px 3px 0;font-size:13px;font-family:var(--serif);letter-spacing:.08em}.photo-back{position:absolute;width:53%;height:340px;left:48%;top:54%;transform:translate(-50%,-50%) rotate(8deg);background:#a7b594;box-shadow:5px 10px 25px #304a3020}.work-card:hover .photo-art figure{transform:translate(-50%,-50%) rotate(-3deg) translateY(-9px)}.paper-stamp{position:absolute;right:7%;bottom:7%;transform:rotate(8deg);font-size:23px;font-weight:800;letter-spacing:-.5px;line-height:1.06;opacity:.62}.work-info{padding:24px 0;display:flex;justify-content:space-between;align-items:center;gap:15px}.work-info h3{display:flex;gap:11px;align-items:center;font-size:24px;letter-spacing:-.7px}.work-info img{border-radius:8px}.work-info p{font-size:11px;margin-top:12px;color:var(--muted)}.work-info>a{border:1px solid var(--line);border-radius:50%;width:48px;height:48px;display:grid;place-items:center;font-size:24px;flex:none;transition:background .25s}.work-info>a:hover{background:var(--lime);border-color:var(--ink)}.film-art{position:absolute;left:7%;right:7%;top:24%;transform:rotate(6deg);background:#293328;box-shadow:7px 17px 35px #42382330;padding:0;transition:transform .6s}.work-card:hover .film-art{transform:rotate(2deg)}.film-art video{display:block;width:100%;height:210px;object-fit:cover;filter:saturate(.7)}.film-perforation{height:25px;background:radial-gradient(ellipse 5px 7px at 15px 12px,#e1d9c9 99%,transparent 100%) repeat-x;background-size:25px 25px}.film-ui{display:flex;align-items:center;justify-content:space-between;padding:0 15px 11px;color:#f1eee3;font-size:8px;letter-spacing:1px}.video-toggle{background:transparent;padding:7px 0;font-size:10px;display:flex;gap:10px}.ribbon{position:absolute;top:-23px;right:12%;height:76px;width:25px;background:#a23c34;clip-path:polygon(0 0,100% 0,100% 100%,50% 80%,0 100%);box-shadow:0 2px 5px #0002}.film-caption{position:absolute;bottom:36px;left:36px;font-family:var(--serif);font-size:22px;letter-spacing:.08em}.on-the-desk{display:grid;grid-template-columns:.6fr 1fr 1fr;gap:35px;margin-top:28px;padding:30px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center}.on-the-desk>span{font-size:9px;letter-spacing:1.3px}.on-the-desk>div{display:flex;align-items:center;gap:13px}.on-the-desk img{border-radius:9px}.on-the-desk p{flex:1}.on-the-desk b{display:block;font-size:15px}.on-the-desk small{display:block;font-size:10px;color:var(--muted);margin-top:6px}.preparing{font-size:9px;border:1px solid var(--line);padding:5px 10px;border-radius:30px;white-space:nowrap}.book-icon{width:42px;height:42px;border-radius:9px;background:#dbcaad;display:grid;place-items:center;font-family:var(--serif);font-size:22px}
.process{background:#1d332a;color:#e9efdf;padding:74px var(--gutter) 58px}.process .section-label{border-color:#a2b79b40}.process-intro{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-top:50px}.process-intro h2{font-size:clamp(32px,3.6vw,58px)}.process-intro h2 span{color:#b9cdad}.process-intro p{font-size:12px;line-height:2.1;color:#b9cdad;max-width:300px}.particle-stage{height:440px;position:relative;margin-top:30px;overflow:hidden}.particle-stage canvas{width:100%;height:100%;display:block}.particle-coordinate{position:absolute;top:26px;left:0;font-size:8px;letter-spacing:1.8px;color:#92a888}.process-controls{position:absolute;bottom:5px;left:50%;transform:translateX(-50%);display:flex;gap:8px;white-space:nowrap}.process-controls button{padding:13px 25px;border:1px solid #81997a55;border-radius:30px;background:transparent;color:#b9cdad;font-size:12px;transition:background .3s,color .3s}.process-controls button span{font-size:9px;margin-right:7px}.process-controls button[aria-pressed=true]{background:var(--lime);color:var(--ink);border-color:var(--lime)}.process-controls button:hover{border-color:var(--lime)}.process-description{display:flex;justify-content:center;align-items:center;gap:24px;min-height:90px;padding:25px 0}.process-description span{font-size:8px;letter-spacing:1px;color:#9db293}.process-description p{font-size:12px;line-height:1.9;text-align:center}.notes-link{display:flex;justify-content:space-between;align-items:center;padding:22px 0 0;border-top:1px solid #a2b79b40;font-size:11px;color:#b9cdad}.notes-link>span:last-child{font-size:28px}.notes-link:hover{color:var(--lime)}
.contact{padding-top:80px;padding-bottom:80px}.contact-pre{font-size:11px;letter-spacing:.06em;margin-top:60px}.contact h2{font-size:clamp(38px,5.5vw,87px);line-height:1.45;margin:22px 0 45px;letter-spacing:-.05em}.contact h2 em{font-family:var(--serif);font-style:normal;color:var(--orange)}.contact-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:25px}.mail-link{font-size:20px;display:grid;grid-template-columns:1fr auto;gap:12px 50px;border-bottom:1px solid var(--ink);padding-bottom:18px;min-width:300px}.mail-link>span{font-size:35px;line-height:1}.mail-link small{grid-column:1/-1;font-size:10px;letter-spacing:.9px}.social-links{display:flex;gap:30px;font-size:13px}.social-links a:hover{color:var(--orange)}footer{border-top:1px solid var(--line);padding:35px var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:8px;letter-spacing:1px}.footer-brand{font-size:27px;font-weight:800;letter-spacing:-1px;display:flex;align-items:center;gap:20px}.footer-brand span{font-size:10px;font-weight:400;letter-spacing:.08em}footer>a:last-child{padding:10px 0}.reading-progress{position:fixed;left:0;top:0;height:3px;width:100%;background:var(--orange);z-index:90;transform:scaleX(0);transform-origin:left}.js .reveal{opacity:0;transform:translateY(30px);transition:opacity .8s,transform .8s}.js .reveal.visible{opacity:1;transform:none}
@keyframes rise{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes float{0%,100%{translate:0 0}50%{translate:0 -9px}}@keyframes ticker{to{transform:translateX(-50%)}}@keyframes spin{to{transform:rotate(360deg)}}
.motion-toggle{background:transparent;border-bottom:1px solid var(--line);padding:7px 0;font-size:9px}.still{scroll-behavior:auto}.still *,.still *:before,.still *:after{animation:none!important;transition:none!important}.still .reveal{opacity:1;transform:none}
@media(min-width:1600px){.hero{gap:50px}.workbench{max-height:730px}.hero h1{font-size:116px}}
@media(max-width:1100px){.header{height:95px}.header nav{gap:20px}.hero{padding-top:5px;gap:20px;min-height:calc(100svh - 95px)}h1{font-size:6.9vw}.workbench{min-height:460px}.stage-meta{font-size:7px;left:20px;right:20px}.live-label{display:none}.hero-bottom{margin-top:25px}.hero-bottom p{font-size:11px}.circle-link{height:50px;width:50px}.about-grid{padding:65px 0;gap:40px}.about-portrait{min-height:340px}.work-visual{height:410px}.photo-art figure{width:59%}.photo-art figure img{height:235px}.photo-back{width:59%;height:300px}.film-art video{height:190px}.film-ui>span{font-size:6px}.on-the-desk{gap:20px}.process-intro p{max-width:260px}}
@media(max-width:760px){.header{height:90px;gap:12px}.brand{font-size:24px;gap:9px}.brand-mark{width:35px;height:35px;font-size:29px}.brand-sub{font-size:6px;letter-spacing:.7px}.header nav{display:none}.header-contact{padding:10px 14px;gap:20px;font-size:10px}.header-contact span{font-size:17px}.hero{grid-template-columns:1fr;gap:24px;min-height:0;padding-top:17px}.hero-copy{padding:0}.eyebrow{font-size:8px;letter-spacing:1px;margin-bottom:25px}h1{font-size:clamp(56px,14vw,97px);line-height:1.22;letter-spacing:-.08em}.hero h1>span:nth-child(2),.hero h1>span:nth-child(3){display:inline}.hero h1>span:nth-child(2):after{content:"";display:block}.hero-bottom{margin-top:24px;max-width:none}.hero-bottom p{font-size:11px}.workbench{min-height:0;aspect-ratio:1/1.06;margin-top:8px}.scene-wrap{inset:25px -5% 0}.stage-meta{top:20px;font-size:7px}.stage-bottom{bottom:14px;left:20px;right:20px}.stage-bottom>span{font-size:7px;letter-spacing:1px}.float-note{font-size:9px;padding:9px 11px}.note-one{top:17%;left:6%}.note-two{bottom:21%;right:4%}.note-two>span{font-size:18px;margin-left:6px}.hero-foot{padding:0 0 24px;gap:10px;font-size:7px;letter-spacing:1px}.hero-foot span:nth-child(2){display:none}.ticker>div{padding:14px 0;gap:23px}.ticker span{font-size:10px}.ticker b{font-size:20px}.section{padding:60px var(--gutter)}.section-label{font-size:8px;padding-bottom:16px}.section-label>span:last-child{font-size:9px}.about-grid{grid-template-columns:1fr;gap:38px;padding:50px 0}.about-portrait{min-height:265px}.about-portrait img{width:160px}.portrait-ring{width:220px;height:220px;box-shadow:0 0 0 25px #dfe5d533,0 0 0 50px #dfe5d522}.portrait-tag{bottom:2px;font-size:9px}.portrait-star{font-size:67px;left:calc(50% + 53px);top:10px}.about-copy h2{font-size:36px;line-height:1.45;margin-bottom:25px}.about-copy p{font-size:12px}.belief-line{padding-top:25px;flex-wrap:wrap;gap:16px}.belief-line>span:first-child{width:100%;font-size:8px}.belief-line p{font-size:25px}.belief-line>span:last-child{font-size:31px}.works{padding-top:10px}.section-heading{margin:36px 0 30px;display:block}.section-heading h2{font-size:38px}.section-heading p{font-size:11px;margin-top:20px}.work-grid{grid-template-columns:1fr;gap:28px}.work-visual{height:420px}.work-info{padding:20px 0}.work-info h3{font-size:22px}.work-info p{font-size:10px;line-height:1.8}.photo-art figure{width:56%;padding:11px 11px 20px}.photo-art figure img{height:235px}.photo-back{width:56%;height:295px}.paper-stamp{font-size:22px;right:6%;bottom:7%}.film-art video{height:180px}.film-art{top:26%}.film-ui>span{font-size:7px}.film-caption{bottom:34px;left:25px;font-size:21px}.on-the-desk{grid-template-columns:1fr;gap:24px;padding:25px 0}.on-the-desk>span{font-size:8px}.on-the-desk>div{gap:12px}.on-the-desk b{font-size:14px}.on-the-desk small{font-size:10px}.process{padding:55px var(--gutter) 40px}.process-intro{display:block;margin-top:35px}.process-intro h2{font-size:30px;line-height:1.55;letter-spacing:-.06em}.process-intro p{font-size:11px;margin-top:22px}.particle-stage{height:350px;margin-top:20px;margin-left:-10px;margin-right:-10px}.particle-coordinate{font-size:7px;left:10px;top:15px}.process-controls{gap:6px;bottom:10px}.process-controls button{font-size:11px;padding:11px 14px}.process-controls button span{font-size:8px;margin-right:4px}.process-description{flex-direction:column;gap:10px;min-height:100px;padding:20px 0}.process-description p{font-size:11px}.notes-link{font-size:10px;padding-top:18px;gap:15px}.contact-pre{font-size:10px;margin-top:40px}.contact h2{font-size:clamp(30px,7.4vw,48px);margin:25px 0 38px;line-height:1.6;letter-spacing:-.055em}.contact-bottom{display:block}.mail-link{font-size:19px;min-width:0;max-width:330px}.social-links{margin-top:38px;gap:29px;font-size:12px}footer{flex-wrap:wrap;padding:25px var(--gutter);gap:22px;font-size:7px}.footer-brand{width:100%;font-size:24px;gap:18px}.footer-brand span{font-size:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}.scene-wrap canvas{touch-action:pan-y}}
