@import "https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Noto+Sans+JP:wght@300;400;500;700&family=Noto+Serif+JP:wght@400;700;900&display=swap";
*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--bg-deep:#0d0d0d;--bg-shallow:#1a1a1a;--text:#f0ede8;--text-muted:#f0ede8c7;--text-faint:#f0ede885;--border:#f0ede81f;--card-bg:#ffffff0a;--spotify:#1db954;--apple-from:#9b59b6;--apple-to:#8e44ad;--font-serif:"Noto Serif JP",serif;--font-sans:"Noto Sans JP",sans-serif;--font-mono:"DM Mono",monospace}html{scroll-behavior:auto;-moz-text-size-adjust:100%;text-size-adjust:100%}body{font-family:var(--font-sans);background-color:var(--bg-deep);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-weight:400;line-height:1.8;overflow-x:hidden}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:#f0ede833;border-radius:3px}.section{max-width:900px;margin:0 auto;padding:64px 24px}.section-label{margin-bottom:32px}.section-label-text{font-family:var(--font-serif);letter-spacing:.05em;color:var(--text);font-size:28px;font-weight:700}.section-label-wave{margin-top:4px}.words-lead-wave{margin:20px 0 36px}.wave{width:100%;height:36px;display:block;overflow:visible}.wave-line{fill:none;stroke:var(--text);stroke-width:1.1px;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px}.wave.is-drawn .wave-line{animation:1.3s cubic-bezier(.22,.75,.2,1) forwards waveDraw}.wave-node{fill:#dce9ff;opacity:0;filter:drop-shadow(0 0 3px #5aa7ff)drop-shadow(0 0 8px #2f7fe0)}.wave.is-drawn .wave-node--a{animation:.4s forwards nodeGlow}.wave.is-drawn .wave-node--b{animation:.5s 1.15s forwards nodeGlow}.wave-walker{opacity:0}.wave.is-drawn .wave-walker{animation:.5s 1.1s forwards walkerIn}.wk-body,.wk-arm,.wk-leg{fill:none;stroke:var(--text);stroke-width:1.2px;stroke-linecap:round}.wk-head{fill:var(--text)}@keyframes walkerIn{to{opacity:.92}}@keyframes waveDraw{to{stroke-dashoffset:0}}@keyframes nodeGlow{to{opacity:1}}@media (prefers-reduced-motion:reduce){.wave-line{stroke-dashoffset:0}.wave-node{opacity:1}.wave.is-drawn .wave-line,.wave.is-drawn .wave-node--a,.wave.is-drawn .wave-node--b{animation:none}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.fade-in{opacity:0;animation:.8s forwards fadeInUp}.reveal{opacity:0}.reveal.is-revealed{opacity:1;animation:.7s cubic-bezier(.22,.75,.2,1) revealIn}@keyframes revealIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.reveal{opacity:1}.reveal.is-revealed{animation:none}}.fade-in-delay-1{animation-delay:.1s}.fade-in-delay-2{animation-delay:.2s}.fade-in-delay-3{animation-delay:.3s}.fade-in-delay-4{animation-delay:.4s}.fade-in-delay-5{animation-delay:.5s}.fade-in-delay-6{animation-delay:.6s}.flowing-bg{z-index:0;pointer-events:none;-moz-text-size-adjust:none;text-size-adjust:none;width:100%;height:100%;position:fixed;top:0;left:0;overflow:hidden}.flowing-bg:before,.flowing-bg:after{content:"";z-index:1;height:90px;position:absolute;left:0;right:0}.flowing-bg:before{background:linear-gradient(to bottom,var(--bg-deep),transparent);top:0}.flowing-bg:after{background:linear-gradient(to top,var(--bg-deep),transparent);bottom:0}.flowing-row{white-space:nowrap;font-family:var(--font-sans);-moz-text-size-adjust:none;text-size-adjust:none;max-height:999999px;padding:12px 0;font-size:14px;font-weight:300;display:flex}.flowing-row-inner{will-change:transform;animation:1200s linear infinite flowLeft;display:flex}.flowing-row.reverse .flowing-row-inner{animation-name:flowRight}.flowing-row span{flex-shrink:0}.flowing-veil{z-index:2;pointer-events:none;background:#0d0d0dad;position:absolute;inset:0}@keyframes flowLeft{0%{transform:translate(0)}to{transform:translate(-50%)}}@keyframes flowRight{0%{transform:translate(-50%)}to{transform:translate(0)}}.main-content{z-index:1;position:relative}.header{z-index:100;-webkit-backdrop-filter:blur(20px);border-bottom:1px solid var(--border);background:#0d0d0dcc;position:fixed;top:0;left:0;right:0}.header-inner{justify-content:space-between;align-items:center;max-width:1200px;height:64px;margin:0 auto;padding:0 24px;display:flex}.header-logo{align-items:center;text-decoration:none;display:flex}.header-logo-img{width:auto;height:23px;display:block}@media (max-width:480px){.header-logo-img{height:22px}}.header-nav{gap:32px;list-style:none;display:flex}.header-nav a{font-family:var(--font-mono);letter-spacing:.1em;color:var(--text-muted);font-size:12px;text-decoration:none;transition:color .3s}.header-nav a:hover{color:var(--text)}.mobile-menu-btn{color:var(--text);cursor:pointer;background:0 0;border:none;padding:4px;font-size:24px;display:none}@media (max-width:768px){.header-nav{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-bottom:1px solid var(--border);background:#0d0d0df2;flex-direction:column;gap:20px;padding:24px;display:none;position:absolute;top:64px;left:0;right:0}.header-nav.open{display:flex}.mobile-menu-btn{display:block}}.hero{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;padding:120px 24px 48px;display:flex}.hero-stage{flex-direction:column;justify-content:center;align-items:center;width:100%;display:flex}.hero-visual-wrap{width:100%;max-width:896px;margin-bottom:32px;line-height:0;position:relative}.hero-visual{border:1px solid var(--border);border-radius:16px;width:100%;display:block}.hero-pulses{pointer-events:none;border-radius:16px;position:absolute;inset:0;overflow:hidden}.hero-pulse-track{height:0;position:absolute}.hero-pulse{mix-blend-mode:screen;opacity:0;width:54px;height:54px;animation:2.88s cubic-bezier(.5,0,.5,1) infinite heroPulse;animation-delay:var(--pulse-delay,0s);background:radial-gradient(circle,#bedcffe6 0%,#5aa7ff73 35%,#2f7fe000 70%);border-radius:50%;margin:-27px 0 0 -27px;position:absolute;top:0;left:0}@keyframes heroPulse{0%{opacity:1;left:0}38%{opacity:1}41.7%{opacity:0;left:100%}to{opacity:0;left:100%}}@media (prefers-reduced-motion:reduce){.hero-pulses{display:none}}.hero-label{font-family:var(--font-mono);letter-spacing:.3em;text-transform:uppercase;color:var(--text-muted);margin-bottom:24px;font-size:12px}.hero-subtitle{font-family:var(--font-sans);color:var(--text-muted);margin-bottom:16px;font-size:16px;font-weight:300}.hero-title{font-family:var(--font-serif);letter-spacing:.05em;margin-bottom:24px;font-size:clamp(48px,10vw,96px);font-weight:900;line-height:1.1}.hero-hosts{font-family:var(--font-sans);color:var(--text-muted);letter-spacing:.1em;margin-bottom:16px;font-size:15px;font-weight:400}.hero-note{background:var(--bg-deep);border:1px solid var(--border);border-radius:14px;flex-direction:column;align-items:center;gap:18px;max-width:620px;margin:8px auto 28px;padding:24px 28px;display:flex}.hero-note-text{color:var(--text-muted);text-align:center;margin:0;font-size:13px;line-height:2.1}.hero-note-count{font-family:var(--font-mono);color:var(--text);letter-spacing:.04em;padding:0 5px;font-size:15px}.hero-note-link{color:var(--bg-deep);background:var(--text);white-space:nowrap;border-radius:100px;align-items:center;gap:9px;padding:11px 20px;font-size:13px;font-weight:500;text-decoration:none;transition:opacity .3s,transform .2s;display:inline-flex}.hero-note-link:after{content:"→";font-size:14px}.hero-note-link:hover{opacity:.85}.hero-note-icon{flex-shrink:0;width:15px;height:15px}@media (max-width:560px){.hero-note{margin-left:4px;margin-right:4px;padding:20px 18px}}.hero-cta{flex-wrap:wrap;justify-content:center;gap:16px;display:flex}.btn{font-family:var(--font-sans);cursor:pointer;border:none;border-radius:100px;padding:14px 32px;font-size:14px;font-weight:500;text-decoration:none;transition:all .3s}.btn-primary{background:var(--text);color:var(--bg-deep)}.btn-primary:hover{opacity:.85;transform:translateY(-1px)}.btn-secondary{color:var(--text);border:1px solid var(--border);background:0 0}.btn-secondary:hover{border-color:var(--text-muted);transform:translateY(-1px)}.about-text{color:var(--text);max-width:640px;margin-bottom:64px;font-size:16px;font-weight:400;line-height:2}.word-chain{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.word-chain-item{font-family:var(--font-sans);color:var(--text);background:var(--card-bg);border:1px solid var(--border);white-space:nowrap;border-radius:100px;padding:8px 16px;font-size:14px;font-weight:400}.word-chain-arrow{color:var(--text-muted);flex-shrink:0;font-size:14px}.members-photo{border:1px solid var(--border);border-radius:12px;width:100%;max-width:720px;margin:0 auto 64px;display:block}.members-grid{grid-template-columns:repeat(3,1fr);gap:48px;max-width:720px;margin:0 auto;display:grid}@media (max-width:640px){.members-grid{grid-template-columns:1fr;gap:40px}}.member-name{font-family:var(--font-serif);margin-bottom:4px;font-size:18px;font-weight:700}.member-reading{font-family:var(--font-sans);color:var(--text-muted);margin-bottom:8px;font-size:12px}.member-title{font-family:var(--font-sans);color:var(--text-muted);font-size:13px;font-weight:400;line-height:1.6}.visual-section{padding:0 24px 64px}.visual-img{border:1px solid var(--border);border-radius:12px;width:100%;max-width:720px;margin:0 auto;display:block}.rules-list{counter-reset:rules;max-width:780px;list-style:none}.rules-list li{counter-increment:rules;border-bottom:1px solid var(--border);align-items:center;gap:clamp(16px,2.5vw,32px);padding:clamp(24px,3vw,36px) 0;display:flex}.rules-list li:last-child{border-bottom:none}.rules-list li:before{content:counter(rules);font-family:var(--font-mono);color:var(--text);border:1.5px solid #f0ede866;border-radius:50%;flex-shrink:0;place-items:center;width:clamp(52px,6vw,72px);height:clamp(52px,6vw,72px);font-size:clamp(20px,2.4vw,28px);line-height:1;display:grid}.rules-list li.is-revealed:before{animation:.9s cubic-bezier(.2,.8,.2,1) backwards ruleNode;animation-delay:inherit}@keyframes ruleNode{0%{opacity:0;transform:scale(.6);box-shadow:0 0 #5aa7ff00}55%{opacity:1;box-shadow:0 0 0 10px #5aa7ff29,0 0 22px #5aa7ff59}to{opacity:1;transform:scale(1);box-shadow:0 0 #5aa7ff00}}.rules-list li strong{font-family:var(--font-serif);font-size:clamp(17px,2vw,24px);font-weight:700;line-height:1.7}@media (prefers-reduced-motion:reduce){.rules-list li.is-revealed:before{animation:none}}.leapbot-description{color:var(--text);max-width:560px;margin-bottom:32px;font-size:15px}@media (max-width:768px){.br-pc{display:none}}.chat-container{background:var(--card-bg);border:1px solid var(--border);border-radius:16px;max-width:640px;overflow:hidden}.chat-messages{flex-direction:column;gap:16px;max-height:400px;padding:24px;display:flex;overflow-y:auto}.chat-messages::-webkit-scrollbar{width:4px}.chat-messages::-webkit-scrollbar-thumb{background:#f0ede826;border-radius:2px}.chat-message{white-space:pre-wrap;border-radius:16px;max-width:85%;padding:14px 18px;font-size:14px;line-height:1.8}.chat-message.user{background:#f0ede81a;border-bottom-right-radius:4px;align-self:flex-end}.chat-message.bot{background:var(--card-bg);border:1px solid var(--border);border-bottom-left-radius:4px;align-self:flex-start}.chat-leap-marker{align-self:center;width:180px;max-width:60%;padding:2px 0}.chat-input-area{border-top:1px solid var(--border);align-items:flex-end;gap:12px;padding:16px;display:flex}.chat-input-area textarea{border:1px solid var(--border);color:var(--text);font-family:var(--font-sans);resize:none;background:0 0;border-radius:12px;outline:none;flex:1;min-height:44px;max-height:120px;padding:12px 16px;font-size:14px;line-height:1.6;transition:border-color .3s}.chat-input-area textarea::placeholder{color:var(--text-muted)}.chat-input-area textarea:focus{border-color:var(--text-muted)}.chat-send-btn{background:var(--text);width:44px;height:44px;color:var(--bg-deep);cursor:pointer;border:none;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:18px;transition:opacity .3s;display:flex}.chat-send-btn:hover:not(:disabled){opacity:.85}.chat-send-btn:disabled{opacity:.3;cursor:not-allowed}.chat-typing{font-family:var(--font-mono);color:var(--text-muted);align-self:flex-start;padding:8px 0;font-size:12px}.chat-typing:after{content:"";animation:1.5s infinite dots}@keyframes dots{0%,20%{content:""}40%{content:"."}60%{content:".."}80%,to{content:"..."}}.chat-empty{text-align:center;color:var(--text-muted);padding:48px 24px;font-size:14px}.chat-error{color:#e74c3c;text-align:center;padding:8px 16px;font-size:13px}.episodes-list{flex-direction:column;gap:16px;max-width:720px;display:flex}.episode-card{background:var(--card-bg);border:1px solid var(--border);border-radius:12px;padding:24px;scroll-margin-top:90px;transition:background .3s}.episode-card:hover{background:#ffffff0f}.episode-card.is-target{animation:2.6s forwards episodeTarget}@keyframes episodeTarget{0%,60%{background:#5aa7ff12;border-color:#5aa7ffd9;box-shadow:0 0 0 1px #5aa7ff80,0 0 28px #2f7fe052}to{border-color:var(--border);box-shadow:none;background:var(--card-bg)}}@media (prefers-reduced-motion:reduce){.episode-card.is-target{border-color:#5aa7ffd9;animation:none}}.episode-header{justify-content:space-between;align-items:center;margin-bottom:8px;display:flex}.episode-number{font-family:var(--font-mono);color:var(--text-muted);font-size:13px}.episode-date{font-family:var(--font-mono);color:var(--text-muted);font-size:12px}.episode-title{font-family:var(--font-serif);margin-bottom:8px;font-size:17px;font-weight:700;line-height:1.5}.episode-guest{font-family:var(--font-mono);color:var(--text-muted);border:1px solid var(--border);border-radius:100px;margin-bottom:12px;padding:2px 10px;font-size:11px;display:inline-block}.episode-chain{flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:12px;display:flex}.episode-chain-word{color:var(--text-muted);font-size:12px}.episode-chain-arrow{color:var(--text-faint);margin:0 2px;font-size:11px}.episode-links{gap:16px;display:flex}.episode-listen{font-family:var(--font-mono);color:var(--text-muted);font-size:12px;text-decoration:none;transition:color .3s}.episode-listen:hover{color:var(--text)}.episodes-more-btn{font-family:var(--font-sans);color:var(--text);background:var(--card-bg);border:1px solid var(--border);cursor:pointer;border-radius:100px;margin:32px auto 0;padding:14px 32px;font-size:14px;font-weight:400;transition:all .3s;display:block}.episodes-more-btn:hover{background:#ffffff14}.listen-grid{grid-template-columns:repeat(2,1fr);gap:16px;max-width:520px;display:grid}@media (max-width:480px){.listen-grid{grid-template-columns:1fr}}.listen-card{background:var(--card-bg);border:1px solid var(--border);color:var(--text);border-radius:12px;align-items:center;gap:16px;padding:20px 24px;text-decoration:none;transition:all .3s;display:flex}.listen-card:hover{background:#ffffff14;transform:translateY(-2px)}.listen-card-icon{flex-shrink:0;width:32px;height:32px}.listen-card-name{font-family:var(--font-sans);flex:1;font-size:15px;font-weight:500}.listen-card-arrow{color:var(--text-muted);font-size:18px}.games-description{color:var(--text);max-width:560px;margin-bottom:32px;font-size:15px;line-height:1.9}.games-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px;max-width:720px;display:grid}.game-card{background:var(--card-bg);border:1px solid var(--border);border-radius:14px;flex-direction:column;gap:8px;padding:24px 24px 20px;transition:background .3s,transform .3s,border-color .3s;display:flex}.game-card:hover{background:#ffffff14;border-color:#f0ede83d;transform:translateY(-2px)}.game-card-body{color:var(--text);flex-direction:column;gap:8px;text-decoration:none;display:flex}.game-card-ep{font-family:var(--font-sans);letter-spacing:.08em;color:var(--text-faint);border-bottom:1px solid #0000;align-self:flex-start;font-size:12px;text-decoration:none;transition:color .2s,border-color .2s}.game-card-ep:hover{color:var(--text);border-bottom-color:#f0ede866}.game-card-name{font-family:var(--font-serif);font-size:20px;font-weight:700;line-height:1.4}.game-card-desc{color:var(--text-muted);font-size:13px;line-height:1.7}.game-card-arrow{font-family:var(--font-sans);color:var(--text-muted);margin-top:6px;font-size:14px;font-weight:500}.game-card:hover .game-card-arrow{color:var(--text)}.words-page{background:var(--bg-deep);min-height:100vh}.words-back{font-family:var(--font-mono);color:var(--text-muted);margin-bottom:40px;font-size:13px;text-decoration:none;transition:color .3s;display:inline-block}.words-back:hover{color:var(--text)}.words-title{font-family:var(--font-serif);letter-spacing:.04em;margin-bottom:16px;font-size:clamp(26px,4vw,38px);font-weight:700}.words-lead{color:var(--text-muted);max-width:42em;margin-bottom:48px;font-size:14px;line-height:2}.words-count{font-family:var(--font-mono);color:var(--text);letter-spacing:.04em;padding:0 5px;font-size:16px}.words-chain{list-style:none;display:block}.words-chain li{display:inline}.words-word{color:var(--text);border-bottom:1px solid #0000;font-size:15px;line-height:2.2;text-decoration:none;transition:color .2s,border-color .2s}.words-word:hover,.words-word:focus-visible{color:#9cc6ff;border-bottom-color:#5aa7ff}.words-chain li.is-in .words-word{animation:.5s backwards wordIn,6.5s ease-in-out infinite wordBreathe;animation-delay:calc(var(--i,0)*26ms),calc(var(--i,0)*90ms);animation-play-state:running,paused}.words-chain li.is-in .words-arrow{animation:6.5s ease-in-out infinite arrowBreathe;animation-delay:calc(var(--i,0)*90ms - .22s);animation-play-state:paused}.words-chain li.is-live .words-word{animation-play-state:running,running}.words-chain li.is-live .words-arrow{animation-play-state:running}@keyframes wordIn{0%{opacity:0}to{opacity:1}}@keyframes wordBreathe{0%,to{opacity:.62}50%{opacity:1}}@keyframes arrowBreathe{0%,to{opacity:.5;color:var(--text-faint)}50%{opacity:1;color:#5aa7ff}}@media (prefers-reduced-motion:reduce){.words-chain li.is-in .words-word,.words-chain li.is-live .words-word,.words-chain li.is-live .words-arrow{animation:none}}.words-arrow{color:var(--text-faint);padding:0 6px;font-size:13px}@media (max-width:640px){.words-page .section{padding:40px 16px 64px}.words-chain{text-align:justify;word-break:break-all}.words-word{font-size:13px;line-height:1.95}.words-arrow{padding:0 3px;font-size:11px}}.footer{text-align:center;font-family:var(--font-mono);color:var(--text-muted);border-top:1px solid var(--border);padding:48px 24px;font-size:12px}@media (max-width:768px){.section{padding:48px 20px}.section-label{font-size:22px}.hero{justify-content:flex-start;min-height:0;padding:0 12px 56px}.hero-stage{min-height:calc(100svh - 64px);margin-top:64px}.hero-visual-wrap{margin-bottom:0}.hero-note{margin-top:40px}.hero-hosts{font-size:13px}}
