:root{--bg: #fafafa;--bg-alt: #ffffff;--bg-dark: #0a0a0a;--text: #111111;--text-muted: #6b6b6b;--text-dim: #9a9a9a;--border: #e7e7e7;--border-strong: #d0d0d0;--bg-soft: #f2f2f3;--accent: #d92316;--max-width: 1240px;--radius: 6px;--radius-lg: 10px;--easing: cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{font-family:Noto Sans JP,Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;background:var(--bg);color:var(--text);line-height:1.75;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-feature-settings:"palt"}a{color:inherit;text-decoration:none}button{font-family:inherit}img{display:block;max-width:100%}iframe{display:block}.gate{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg-dark);display:flex;align-items:center;justify-content:center;z-index:100;padding:24px;background-image:radial-gradient(1200px 600px at 80% -10%,rgba(255,255,255,.04),transparent 50%),radial-gradient(800px 400px at 20% 110%,rgba(255,255,255,.03),transparent 50%)}.gate-card{width:100%;max-width:380px;text-align:center;color:#fff;animation:fadeUp .7s var(--easing) both}.gate-logo{height:48px;width:auto;margin:0 auto 32px;display:block;filter:brightness(0) invert(1)}.gate-title{font-size:32px;font-weight:300;letter-spacing:-.02em;margin-bottom:10px;font-family:Inter,Noto Sans JP,sans-serif}.gate-sub{font-size:13px;color:#888;margin-bottom:36px;letter-spacing:.5px}.gate-form{display:flex;flex-direction:column;gap:12px}.gate-input{width:100%;padding:16px 18px;background:#ffffff0a;border:1px solid #2a2a2a;color:#fff;font-size:14px;outline:none;font-family:inherit;transition:border-color .25s,background .25s;border-radius:4px;letter-spacing:.5px}.gate-input::placeholder{color:#555}.gate-input:focus{border-color:#fff;background:#ffffff0f}.gate-button{width:100%;padding:16px;background:#fff;color:#0a0a0a;border:1px solid #fff;font-size:12px;letter-spacing:4px;cursor:pointer;font-weight:600;transition:background .25s,color .25s,transform .15s;border-radius:4px}.gate-button:hover{background:transparent;color:#fff}.gate-button:active{transform:scale(.99)}.gate-error{margin-top:16px;color:#ff6b6b;font-size:12px;letter-spacing:.5px}.works{padding-bottom:0}.bar-top{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:13px 40px;background:#fafafadb;backdrop-filter:saturate(180%) blur(14px);-webkit-backdrop-filter:saturate(180%) blur(14px);border-bottom:1px solid var(--border)}.brand{display:flex;align-items:center;gap:14px;min-width:0}.brand-link{display:inline-flex;align-items:center;border-radius:4px}.brand-logo{height:22px;width:auto;display:block}.brand-sep{width:1px;height:18px;background:var(--border-strong)}.brand-label{font-size:13px;font-weight:700;letter-spacing:.02em;white-space:nowrap}.brand-count{font-family:Inter,sans-serif;font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums;white-space:nowrap}.stage{max-width:var(--max-width);margin:0 auto;padding:26px 40px 90px}.segments{position:relative;display:flex;padding:4px;border-radius:999px;background:var(--bg-soft);border:1px solid var(--border);isolation:isolate}.segment-thumb{position:absolute;z-index:-1;top:4px;bottom:4px;left:4px;border-radius:999px;background:var(--text);transition:transform .42s cubic-bezier(.34,1.56,.64,1)}.segment{position:relative;display:inline-flex;align-items:center;gap:8px;padding:9px 22px;border:0;background:transparent;cursor:pointer;font-size:14px;font-weight:700;color:var(--text-muted);border-radius:999px;transition:color .28s var(--easing);font-family:inherit;white-space:nowrap}.segment:hover{color:var(--text)}.segment--active{color:var(--bg-alt)}.segment-icon{display:inline-flex;transition:transform .42s cubic-bezier(.34,1.56,.64,1)}.segment--active .segment-icon{transform:scale(1.12) rotate(-6deg)}.segment-count{font-family:Inter,sans-serif;font-size:11px;color:var(--text-dim);font-variant-numeric:tabular-nums;font-weight:600;transition:color .28s var(--easing)}.segment--active .segment-count{color:#ffffffb8}.segment-ping{position:absolute;top:0;right:0;bottom:0;left:0;border-radius:999px;border:1.5px solid var(--accent);animation:segmentPing .6s var(--easing) both;pointer-events:none}@keyframes segmentPing{0%{opacity:.85;transform:scale(1)}to{opacity:0;transform:scale(1.28)}}.tabs{display:flex;flex-wrap:wrap;gap:6px;padding:13px 40px;max-width:var(--max-width);margin:0 auto;border-bottom:1px solid var(--border)}.tab{display:inline-flex;align-items:baseline;gap:7px;padding:6px 14px;border:1px solid var(--border);background:var(--bg-alt);color:var(--text-muted);cursor:pointer;border-radius:999px;font-size:12.5px;font-weight:500;letter-spacing:.2px;font-family:inherit;transition:color .25s var(--easing),background .25s var(--easing),border-color .25s var(--easing),transform .15s ease;white-space:nowrap}.tab:hover{color:var(--text);border-color:var(--border-strong)}.tab:active{transform:scale(.98)}.tab--active{background:var(--text);color:#fff;border-color:var(--text)}.tab--active:hover{color:#fff;border-color:var(--text)}.tab-count{font-family:Inter,sans-serif;font-size:10.5px;font-variant-numeric:tabular-nums;color:var(--text-dim);font-weight:600}.tab--active .tab-count{color:#ffffffa6}.tab--active .tab-count{background:#ffffff2e}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:stretch}.grid>.card{animation:cardIn .44s var(--easing) both;animation-delay:calc(var(--order, 0) * 32ms)}@keyframes cardIn{0%{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}.grid--dense{grid-template-columns:repeat(4,1fr);gap:16px}@media(max-width:1024px){.grid{grid-template-columns:repeat(2,1fr)}.grid--dense{grid-template-columns:repeat(3,1fr)}}.card{background:var(--bg-alt);border:1px solid var(--border);border-radius:var(--radius-lg);overflow:hidden;transition:transform .4s var(--easing),box-shadow .4s var(--easing),border-color .4s var(--easing);display:flex;flex-direction:column}.card:hover{transform:translateY(-4px);box-shadow:0 18px 40px -12px #0000001f;border-color:var(--border-strong)}.card-media{position:relative;width:100%;padding-bottom:56.25%;background:#000;overflow:hidden}.card-media iframe,.card-media .media-link,.card-media .yt-poster,.card-media .card-image,.card-media .card-paper{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.card-image{object-fit:cover;object-position:top;background:#f3f3f3;transition:transform .6s var(--easing),filter .4s ease}.card--clickable:hover .card-image{transform:scale(1.04);filter:brightness(.95)}.card-badge{position:absolute;bottom:10px;right:10px;padding:5px 11px;background:#000000c7;color:#fff;font-family:Inter,sans-serif;font-size:11px;letter-spacing:.4px;border-radius:999px;font-weight:600;pointer-events:none;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}.card-paper{display:grid;place-items:center;background:linear-gradient(160deg,#f7f7f8,#e9e9ec)}.card-paper-lines{width:46%;display:grid;gap:7px}.card-paper-lines i{display:block;height:6px;border-radius:2px;background:#cfcfd6}.card-paper-lines i:nth-child(1){width:70%;background:#b3b3bd}.card-paper-lines i:nth-child(3){width:84%}.card-paper-lines i:nth-child(4){width:55%}.card-chip{position:absolute;top:9px;left:9px;z-index:1;font-family:Inter,sans-serif;font-size:9.5px;font-weight:600;letter-spacing:.09em;color:#fff;background:#08080ab8;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:3px 8px;border-radius:4px;line-height:1.5}.card--clickable{cursor:pointer}.card:focus-visible,.tab:focus-visible,.segment:focus-visible,.brand-link:focus-visible,.more-button:focus-visible,.footer-cta:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.yt-poster{padding:0;margin:0;background:#000;overflow:hidden;display:block}.yt-poster img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--easing),filter .4s ease}.card:hover .yt-poster img,.card:focus-visible .yt-poster img{transform:scale(1.04);filter:brightness(.78)}.yt-poster-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px;border-radius:50%;background:#fffffff5;color:#0a0a0a;display:flex;align-items:center;justify-content:center;pointer-events:none;box-shadow:0 10px 30px #00000059;transition:transform .25s var(--easing),background .25s ease}.card:hover .yt-poster-play,.card:focus-visible .yt-poster-play{transform:translate(-50%,-50%) scale(1.08);background:#fff}.yt-poster-play svg{margin-left:3px}.card-body{padding:18px 20px 22px;flex:1;display:flex;flex-direction:column;gap:6px}.card-cat{font-size:10.5px;letter-spacing:.04em;color:var(--accent);margin-bottom:2px;font-weight:700}.card-title{font-size:15px;font-weight:700;line-height:1.55;letter-spacing:.2px}.card-note{font-size:12px;color:var(--text-muted);line-height:1.7;margin-top:2px}.card-link{margin-top:auto;padding-top:10px;font-family:Inter,sans-serif;font-size:12px;color:var(--text);letter-spacing:1px;align-self:flex-start;transition:opacity .2s}.card-link:hover{opacity:.6}.media-link{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#f58529,#dd2a7b,#515bd4);color:#fff;text-align:center;padding:24px;font-weight:500;letter-spacing:1px;transition:filter .3s}.media-link:hover{filter:brightness(1.08)}.media-link-inner{display:flex;flex-direction:column;align-items:center;gap:10px}.media-link-icon{font-family:Inter,sans-serif;font-size:11px;letter-spacing:3px;border:1px solid rgba(255,255,255,.6);padding:6px 12px;border-radius:999px;font-weight:600}.media-link-text{font-size:13px}.lightbox{position:fixed;top:0;right:0;bottom:0;left:0;background:#08080ac7;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);z-index:200;display:flex;align-items:flex-start;justify-content:center;overflow-y:auto;padding:80px 24px;animation:fadeIn .25s ease both}.lightbox-bar{position:fixed;top:20px;right:24px;display:flex;align-items:center;gap:14px;z-index:2}.lightbox-counter{font-family:Inter,sans-serif;font-size:13px;letter-spacing:1px;color:#ffffffbf;font-variant-numeric:tabular-nums}.lightbox-nav{position:fixed;top:50%;transform:translateY(-50%);width:52px;height:52px;border-radius:50%;background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:2;transition:background .2s,border-color .2s,transform .2s var(--easing)}.lightbox-nav:hover{background:#ffffff2e;border-color:#ffffff59}.lightbox-nav--prev{left:20px}.lightbox-nav--next{right:20px}.lightbox-nav--prev:hover{transform:translateY(-50%) translate(-3px)}.lightbox-nav--next:hover{transform:translateY(-50%) translate(3px)}.lightbox-video{position:relative;width:100%;padding-bottom:56.25%;background:#000;border-radius:8px;overflow:hidden;box-shadow:0 20px 60px #00000080}.lightbox-video iframe{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.lightbox-external{align-self:flex-start;border:1px solid rgba(255,255,255,.35);border-radius:999px;padding:12px 26px;font-size:14px;color:#fff;transition:background .2s}.lightbox-external:hover{background:#ffffff1f}.lightbox-close{width:44px;height:44px;background:#ffffff14;border:1px solid rgba(255,255,255,.15);color:#fff;font-size:28px;line-height:1;cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .2s,border-color .2s;z-index:1}.lightbox-close:hover{background:#ffffff29;border-color:#ffffff4d}.lightbox-inner{max-width:1100px;width:100%;color:#fff;display:flex;flex-direction:column;gap:32px}.lightbox-head{display:flex;flex-direction:column;gap:6px}.lightbox-cat{font-family:Inter,sans-serif;font-size:11px;letter-spacing:3px;color:#ffffff8c;text-transform:uppercase;font-weight:600}.lightbox-title{font-size:clamp(22px,3.5vw,28px);font-weight:700;letter-spacing:.2px;line-height:1.4}.lightbox-note{font-size:14px;color:#ffffffa6;line-height:1.7}.lightbox-images{display:flex;flex-direction:column;gap:20px}.lightbox-images img{width:100%;height:auto;border-radius:8px;background:#fff;box-shadow:0 20px 60px #00000080}.lightbox-pdf-wrap{display:flex;flex-direction:column;gap:12px}.lightbox-pdf{width:100%;height:80vh;border:0;border-radius:8px;background:#fff;box-shadow:0 20px 60px #00000080}.lightbox-pdf-link{align-self:flex-start;font-family:Inter,sans-serif;font-size:13px;letter-spacing:.5px;color:#fff;border-bottom:1px solid rgba(255,255,255,.4);padding-bottom:1px;transition:opacity .2s}.lightbox-pdf-link:hover{opacity:.7}@media(max-width:640px){.lightbox{padding:60px 16px 96px}.lightbox-pdf{height:70vh}.lightbox-nav{top:auto;bottom:20px;transform:none;width:46px;height:46px}.lightbox-nav--prev{left:calc(50% - 56px)}.lightbox-nav--next{right:calc(50% - 56px)}.lightbox-nav--prev:hover,.lightbox-nav--next:hover{transform:none}.lightbox-bar{top:14px;right:16px}}.more{display:flex;flex-direction:column;align-items:center;gap:10px;padding:44px 0 0}.more-button{font-family:inherit;font-size:13.5px;font-weight:700;padding:12px 40px;border-radius:999px;border:1px solid var(--border-strong);background:var(--bg-alt);color:var(--text);cursor:pointer;transition:background .2s var(--easing),border-color .2s var(--easing)}.more-button:hover{background:var(--bg-soft);border-color:var(--text)}.more-count{font-family:Inter,sans-serif;font-size:11.5px;color:var(--text-dim);font-variant-numeric:tabular-nums}.footer{border-top:1px solid var(--border);background:var(--bg-alt);padding:26px 40px}.footer-inner{max-width:var(--max-width);margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px}.footer-text{display:flex;flex-direction:column;gap:2px}.footer-name{font-size:13px;font-weight:700}.footer-tag{font-size:11.5px;color:var(--text-dim)}.footer-cta{font-size:13px;font-weight:700;padding:11px 26px;border-radius:999px;background:var(--text);color:var(--bg);transition:opacity .2s}.footer-cta:hover{opacity:.82}.contact{min-height:100vh;display:flex;flex-direction:column}.contact-back{font-size:12.5px;color:var(--text-muted);white-space:nowrap;border-radius:4px;transition:color .2s}.contact-back:hover{color:var(--text)}.contact-back:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.contact-inner{width:100%;max-width:680px;margin:0 auto;padding:56px 24px 96px;animation:fadeIn .4s var(--easing) both}.contact-title{font-size:clamp(24px,3.4vw,30px);font-weight:700;letter-spacing:-.01em;margin-bottom:12px}.contact-lead{font-size:14px;color:var(--text-muted);line-height:1.9;margin-bottom:40px}.contact-form{display:flex;flex-direction:column;gap:22px}.field{display:flex;flex-direction:column;gap:7px}.field-label{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700}.field-required{font-style:normal;font-size:10.5px;font-weight:700;color:#fff;background:var(--accent);padding:2px 7px;border-radius:3px;letter-spacing:.04em}.field-optional{font-size:10.5px;font-weight:600;color:var(--text-dim);border:1px solid var(--border-strong);padding:1px 7px;border-radius:3px}.field-input{width:100%;font-family:inherit;font-size:15px;line-height:1.7;color:var(--text);padding:12px 14px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--bg-alt);outline:none;transition:border-color .2s,box-shadow .2s;resize:vertical}.field-input:focus{border-color:var(--text);box-shadow:0 0 0 3px #11111112}.field-input:disabled{background:var(--bg-soft);color:var(--text-muted)}.field-input--error{border-color:var(--accent)}.field-input--error:focus{box-shadow:0 0 0 3px #d9231621}.field-error{font-size:12.5px;color:var(--accent)}.contact-honeypot{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);border:0}.contact-error{font-size:13.5px;color:#7d2019;background:#fdf1f0;border:1px solid #f0c8c3;border-radius:var(--radius);padding:12px 14px}.contact-actions{display:flex;flex-direction:column;gap:14px;align-items:flex-start;margin-top:6px}.contact-submit{font-family:inherit;font-size:14px;font-weight:700;padding:14px 44px;border:0;border-radius:999px;background:var(--text);color:var(--bg);cursor:pointer;transition:opacity .2s,transform .15s var(--easing)}.contact-submit:hover:not(:disabled){opacity:.85}.contact-submit:active:not(:disabled){transform:scale(.98)}.contact-submit:disabled{opacity:.5;cursor:not-allowed}.contact-submit:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.contact-privacy{font-size:12px;color:var(--text-dim)}.contact-done{text-align:left}.contact-done .contact-lead{margin-bottom:32px}@keyframes fadeUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.grid>.card{animation:none}.segment-thumb,.segment-icon{transition:none}.segment-ping{display:none}.card:hover{transform:none}}@media(max-width:768px){.bar-top{padding:11px 20px;gap:12px}.tabs{padding:11px 20px;gap:5px}.stage{padding:18px 20px 64px}.brand-logo{height:20px}.brand-count{display:none}.grid,.grid--dense{grid-template-columns:repeat(2,1fr);gap:14px}.segment{padding:6px 14px;font-size:12.5px}.tab{padding:5px 12px;font-size:12px}.footer-inner{flex-direction:column;align-items:flex-start}.footer{padding:22px 20px}}@media(max-width:420px){.gate-title{font-size:28px}.gate-logo{height:40px}.brand-label{font-size:12px}.card-body{padding:12px 13px 14px}.card-title{font-size:13.5px}}
