.legal-links{display:flex;flex-wrap:wrap;gap:8px 24px;width:100%;padding-top:20px;margin-top:20px;border-top:1px solid #647582;color:#e4edf2;font-size:.875rem}.legal-links a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px}.legal-links a:focus-visible{outline:3px solid #ffe3a2;outline-offset:3px}
.legal-page{margin:0;color:#e5edf2;background:linear-gradient(#071520d9,#071520ed),url('/images/arcade-background.webp') center/cover fixed;font:1rem/1.9 'Noto Sans JP','Yu Gothic',Meiryo,sans-serif}.legal-page *{box-sizing:border-box}.legal-page header,.legal-page footer{max-width:960px;margin:auto;padding:24px;display:flex;flex-wrap:wrap;gap:12px 28px;justify-content:space-between}.legal-page a{color:#ffe3a2;text-underline-offset:4px;overflow-wrap:anywhere}.legal-page header a,.legal-page footer a{display:inline-flex;align-items:center;min-height:44px}.legal-page main{max-width:912px;margin:12px auto 32px;padding:40px;background:#112330;border:1px solid #7d795d;border-radius:8px}.legal-page h1{font-size:2rem;line-height:1.5;color:#ffe3a2;overflow-wrap:anywhere}.legal-page h2{font-size:1.375rem;margin-top:36px;color:#ffe3a2}.legal-kicker{font-size:.875rem;letter-spacing:.12em}.legal-page li{margin-block:12px}.legal-page input,.legal-page textarea,.legal-page button{font:inherit}.legal-page label{display:block;margin-top:24px;font-weight:700}.legal-page input[type=email],.legal-page textarea{display:block;width:100%;min-height:48px;background:#091823;color:#fff;border:1px solid #899ba5;border-radius:4px;padding:12px;margin-top:8px}.legal-page textarea{resize:vertical}.legal-page .consent{display:flex;align-items:flex-start;gap:12px;font-weight:400;min-height:44px}.legal-page .consent input{width:24px;height:24px;flex-shrink:0;margin:5px 0}.legal-page button{background:#f4dba1;color:#152b39;min-height:48px;padding:12px 24px;border:1px solid #ffebbc;border-radius:4px;font-weight:700;margin-top:24px;cursor:pointer}.legal-page button:disabled{opacity:.65;cursor:wait}.legal-page :focus-visible{outline:3px solid #ffe3a2;outline-offset:4px}.legal-page #contact-status{padding-block:8px}.legal-page p{overflow-wrap:anywhere}@media(max-width:720px){.legal-page main{margin:8px 16px 24px;padding:24px 20px}.legal-page h1{font-size:1.625rem}.legal-page header,.legal-page footer{padding:20px}.legal-page ul{padding-left:24px}.legal-page button{width:100%}}
