.game-hidden,.title-screen[hidden]{display:none!important}.title-screen:not([hidden])~.legal-note{display:none}
.title-screen{position:relative;min-height:100vh;overflow:hidden;background:#071b20!important;color:#edf9f5;padding:0 clamp(24px,5vw,72px);display:flex;flex-direction:column;font-family:"Noto Sans JP",sans-serif}.title-grid{position:absolute;inset:0;opacity:.14;background-image:linear-gradient(rgba(105,213,193,.22) 1px,transparent 1px),linear-gradient(90deg,rgba(105,213,193,.22) 1px,transparent 1px);background-size:42px 42px;mask-image:linear-gradient(90deg,#000,transparent 80%)}.title-glow{position:absolute;width:620px;height:620px;border-radius:50%;right:-80px;top:10%;background:radial-gradient(circle,rgba(65,218,190,.16),transparent 68%)}
.title-top,.title-footer{position:relative;z-index:2;display:flex;justify-content:space-between;padding:25px 0;color:#78979b;font:700 9px monospace;letter-spacing:.18em}.title-top{border-bottom:1px solid #1c3a3f}.title-footer{margin-top:auto;border-top:1px solid #1c3a3f}.title-content{position:relative;z-index:2;flex:1;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;max-width:1180px;width:100%;margin:auto}.title-kicker{font:700 10px monospace;letter-spacing:.2em;color:#69d5c1}.title-kicker i{display:inline-block;width:28px;height:1px;background:#69d5c1;vertical-align:middle;margin-right:9px}.title-copy h1{font:900 clamp(70px,10vw,138px)/.8 "Zen Kaku Gothic New","Noto Sans JP",sans-serif;letter-spacing:-.08em;margin:30px 0 0;color:#edf9f5}.title-copy h1 span{color:#69d5c1}.title-jp{font:700 clamp(18px,2vw,25px) "Zen Kaku Gothic New","Noto Sans JP",sans-serif;letter-spacing:.35em;margin:24px 0;color:#edf9f5}.title-lead{color:#9fb7b9;font-size:13px;line-height:2}.title-actions{display:flex;gap:10px;margin-top:36px}.start-btn{min-width:290px;padding:15px 20px;border:0;background:#69d5c1;color:#09272a;text-align:left;font:800 14px "Noto Sans JP",sans-serif;cursor:pointer;box-shadow:0 0 30px rgba(105,213,193,.18);transition:.2s}.start-btn:hover{transform:translateY(-2px);box-shadow:0 0 38px rgba(105,213,193,.38)}.start-btn small{display:block;font:700 8px monospace;letter-spacing:.2em;margin-bottom:4px}.start-btn b{float:right;font-size:20px}.how-btn{border:1px solid #355158;background:transparent;color:#bdd0d0;padding:0 24px;font-weight:700;cursor:pointer}.how-btn:hover{border-color:#69d5c1;color:#69d5c1}.last-result{display:flex;gap:15px;margin-top:22px;font:9px monospace;color:#5f7f83}.last-result b{color:#91abae}
.title-visual{height:600px;position:relative;display:grid;place-items:center}.title-body{height:430px;width:auto;overflow:visible;filter:drop-shadow(0 0 28px rgba(105,213,193,.2));animation:titleFloat 5s ease-in-out infinite}.title-body>circle,.title-body>path{fill:rgba(105,213,193,.13)!important;stroke:#69d5c1!important;stroke-width:1}.title-body .title-heart{fill:#db4f59!important;stroke:#ff8188!important;animation:titleHeartbeat .9s infinite;transform-origin:90px 135px;filter:drop-shadow(0 0 8px #e33c4b)}.orbit{position:absolute;border:1px solid rgba(105,213,193,.19);border-radius:50%;animation:orbitSpin 18s linear infinite}.orbit-a{width:430px;height:430px}.orbit-b{width:520px;height:280px;transform:rotate(60deg);animation-direction:reverse}.title-diagnostic{position:absolute;border-left:2px solid #69d5c1;padding:8px 12px;background:rgba(9,37,40,.78);backdrop-filter:blur(4px);font:8px monospace;color:#739397}.title-diagnostic b{display:block;color:#d8f4ec;font-size:17px;margin-top:3px}.d1{left:8%;top:28%}.d2{right:1%;top:43%}.d3{left:15%;bottom:22%}
.how-panel{position:absolute;z-index:5;left:50%;top:50%;transform:translate(-50%,-50%);width:min(480px,calc(100% - 32px));background:#f7faf8;color:#102a30;padding:38px;box-shadow:0 35px 100px #000}.how-panel[hidden]{display:none}.how-panel>button{position:absolute;right:15px;top:12px;border:0;background:none;font-size:25px}.how-panel h2{font:900 25px "Zen Kaku Gothic New","Noto Sans JP",sans-serif}.how-panel ol{padding:0;list-style:none}.how-panel li{display:grid;grid-template-columns:120px 1fr;gap:12px;padding:14px 0;border-bottom:1px solid #dce5e1;font-size:11px}.how-panel li span{color:#698086;line-height:1.6}.how-panel>p:last-child{font-size:11px;color:#d94b4b;font-weight:700}
@keyframes titleFloat{50%{transform:translateY(-12px)}}@keyframes orbitSpin{to{transform:rotate(360deg)}}@keyframes titleHeartbeat{50%{transform:scale(1.13)}}
@media(max-width:760px){.title-content{grid-template-columns:1fr;padding:36px 0}.title-copy h1{font-size:72px}.title-visual{height:310px;grid-row:1}.title-body{height:245px}.orbit-a{width:270px;height:270px}.orbit-b{width:310px;height:180px}.title-actions{flex-direction:column}.start-btn{min-width:0;width:100%}.how-btn{padding:15px}.title-top span:last-child,.d3{display:none}.title-lead br{display:none}}
