:root{--bg:#f3f8fd;--panel:#ffffff;--ink:#1d2a44;--ink2:#51607a;--line:#1d2a44;--sky:#d4ebf8;--helmet:#f5b82e;--helmet-d:#d99a14;--orange:#f07a22;--blue:#3f8fe0;--pink:#f59aa8;--leaf:#5fb56a;--grape:#8f6ad6;--hard:4px 4px 0 var(--line);--display:"Dela Gothic One","M PLUS Rounded 1c","Hiragino Maru Gothic ProN",sans-serif;--body:"M PLUS Rounded 1c","Hiragino Maru Gothic ProN","Yu Gothic UI","Meiryo",sans-serif;--r:22px}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--bg:#141b33;--panel:#1f2846;--ink:#f4f1e8;--ink2:#b8c0d8;--line:#070b1c;--sky:#1b2550;--pink:#f08aa0}}:root[data-theme=dark]{color-scheme:dark;--bg:#141b33;--panel:#1f2846;--ink:#f4f1e8;--ink2:#b8c0d8;--line:#070b1c;--sky:#1b2550;--pink:#f08aa0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--body);font-weight:500;line-height:1.7;-webkit-font-smoothing:antialiased}a{color:inherit}img,video{max-width:100%;display:block}.wrap{width:min(1180px,100%);margin:0 auto;padding-inline:20px}h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.25;text-wrap:balance;margin:0}h2{font-size:clamp(28px,4vw,42px)}.eyebrow{display:inline-block;font-weight:800;font-size:13px;letter-spacing:.14em;color:var(--orange);margin-bottom:8px}.lead{color:var(--ink2);margin:10px 0 0;max-width:60ch}.btn{display:inline-flex;align-items:center;gap:8px;font:800 15px var(--body);padding:13px 22px;border-radius:999px;border:3px solid var(--line);text-decoration:none;box-shadow:var(--hard);transition:transform .12s,box-shadow .12s;cursor:pointer}.btn:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--line)}.btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--line)}.btn:focus-visible,a:focus-visible,button:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.btn-main{background:var(--helmet);color:#1d2a44}.btn-sub{background:var(--panel);color:var(--ink)}.card{background:var(--panel);border:3px solid var(--line);border-radius:var(--r);box-shadow:var(--hard)}section{position:relative;padding-block:72px}.site{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--bg) 88%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:3px solid var(--line)}.site .wrap{display:flex;align-items:center;gap:18px;min-height:66px}.logo{display:flex;align-items:center;gap:10px;text-decoration:none}.logo svg{flex:none}.logo b{font-family:var(--display);font-weight:400;font-size:22px;letter-spacing:.02em}.logo small{display:block;font-size:10.5px;font-weight:800;letter-spacing:.2em;color:var(--ink2);line-height:1}.nav{display:flex;gap:6px;margin-left:auto}.nav a{font-weight:800;font-size:14px;text-decoration:none;padding:8px 13px;border-radius:999px;border:2px solid transparent}.nav a:hover{border-color:var(--line);background:var(--panel)}.dm{margin-left:4px;padding:9px 18px;font-size:14px}@media(max-width:860px){.site .wrap{flex-wrap:wrap;gap:8px;padding-block:8px}.nav{order:3;width:100%;margin:0;overflow-x:auto;scrollbar-width:none;padding-bottom:2px}.nav::-webkit-scrollbar{display:none}.nav a{flex:none;border-color:var(--line);background:var(--panel);font-size:13px;padding:6px 12px}.dm{margin-left:auto}}.hero{background:radial-gradient(circle at 12% 18%,color-mix(in srgb,var(--helmet) 35%,transparent) 0 90px,transparent 91px),radial-gradient(circle at 92% 82%,color-mix(in srgb,var(--pink) 40%,transparent) 0 120px,transparent 121px),var(--sky);border-bottom:3px solid var(--line);padding-block:64px 56px;overflow:hidden}.hero .wrap{display:grid;grid-template-columns:1fr 1.12fr;gap:44px;align-items:center}.hero h1{font-size:clamp(40px,6.2vw,74px);letter-spacing:.01em}.hero h1 .mk{background:linear-gradient(transparent 62%,var(--helmet) 62% 92%,transparent 92%);padding-inline:2px}.hero p.sub{font-size:clamp(16px,1.8vw,19px);font-weight:700;color:var(--ink2);margin:18px 0 26px}.hero .ctas{display:flex;flex-wrap:wrap;gap:14px}.stats{display:flex;flex-wrap:wrap;gap:8px 22px;margin-top:30px;font-size:13.5px;color:var(--ink2);font-weight:800}.stats b{font-family:var(--display);font-weight:400;font-size:24px;color:var(--ink);margin-right:6px;font-variant-numeric:tabular-nums}.tv{position:relative}.tv .frame{background:var(--helmet);border:4px solid var(--line);border-radius:30px;padding:14px;box-shadow:8px 8px 0 var(--line)}.tv video,.tv .poster{width:100%;aspect-ratio:16/9;object-fit:cover;border-radius:18px;border:3px solid var(--line);background:#000}.tv .knobs{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding-inline:6px;font-weight:800;font-size:12.5px;color:#1d2a44}.tv .knobs span{display:flex;gap:6px}.tv .knobs i{width:14px;height:14px;border-radius:50%;border:3px solid #1d2a44;background:#fff}.sticker{position:absolute;left:-26px;top:-24px;transform:rotate(-7deg);background:var(--pink);color:#1d2a44;border:3px solid var(--line);border-radius:16px;padding:8px 14px;font:800 14px var(--body);box-shadow:var(--hard);text-decoration:none;line-height:1.3}.sticker b{display:block;font-family:var(--display);font-weight:400;font-size:20px}.sticker:hover{transform:rotate(-4deg) scale(1.04)}@media(max-width:860px){.hero .wrap{grid-template-columns:1fr}.sticker{left:auto;right:-6px;top:-22px}}.ticker{background:var(--ink);color:var(--bg);border-bottom:3px solid var(--line);overflow:hidden;white-space:nowrap}.ticker .run{display:inline-flex;gap:40px;padding:11px 0;font-weight:800;font-size:14px;animation:run 38s linear infinite}.ticker em{font-style:normal;color:var(--helmet);margin-right:8px;font-family:var(--display);font-weight:400}@keyframes run{to{transform:translate(-50%)}}@media(prefers-reduced-motion:reduce){.ticker .run{animation:none}}.head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;flex-wrap:wrap;margin-bottom:28px}.head a.more{font-weight:800;text-decoration:none;border-bottom:3px solid var(--helmet)}.feature{display:grid;grid-template-columns:1.6fr 1fr;gap:22px}.gcard{position:relative;display:flex;flex-direction:column;text-decoration:none;overflow:hidden;transition:transform .15s,box-shadow .15s}.gcard:hover{transform:translate(-3px,-3px) rotate(-.4deg);box-shadow:7px 7px 0 var(--line)}.gcard img{width:100%;aspect-ratio:16/9;object-fit:cover;border-bottom:3px solid var(--line)}.gcard .body{padding:14px 18px 18px;display:flex;flex-direction:column;gap:6px;flex:1}.gcard h3{font-size:22px}.gcard p{margin:0;color:var(--ink2);font-size:14px;line-height:1.6}.gcard .row{display:flex;justify-content:space-between;align-items:center;margin-top:auto;padding-top:8px}.tag{display:inline-block;font-weight:800;font-size:12px;padding:3px 10px;border-radius:999px;border:2px solid var(--line);color:#1d2a44}.t-sim{background:#bfe7b0}.t-act{background:#ffd6a8}.t-race{background:#b9dcff}.t-story{background:#f7c7d4}.t-play{background:#fff0a6}.play{font-weight:800;font-size:14px}.gcard.big h3{font-size:clamp(26px,3vw,34px)}.new{position:absolute;top:14px;left:14px;background:var(--helmet);color:#1d2a44;font:400 15px var(--display);padding:5px 12px;border:3px solid var(--line);border-radius:12px;transform:rotate(-5deg)}.side{display:grid;gap:22px}.side .gcard img{aspect-ratio:16/8}.shelf{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(250px,1fr);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:6px 6px 16px;margin:24px -6px 0}.shelf .gcard{scroll-snap-align:start}.shelf .gcard h3{font-size:18px}@media(min-width:1100px){.shelf{grid-auto-columns:calc((100% - 54px)/4)}}@media(max-width:860px){.feature{grid-template-columns:1fr}}.works{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.work{overflow:hidden}.work img{width:100%;aspect-ratio:4/3;object-fit:cover;border-bottom:3px solid var(--line)}.work .body{padding:14px 18px 18px}.work h3{font-size:21px}.work p{margin:6px 0 0;color:var(--ink2);font-size:14px}.band{display:flex;flex-wrap:wrap;gap:10px 30px;align-items:baseline;margin-top:24px;padding:16px 22px;border:3px dashed var(--line);border-radius:18px;font-weight:800;color:var(--ink2)}.band b{font-family:var(--display);font-weight:400;font-size:30px;color:var(--ink);margin-right:6px}@media(max-width:860px){.works{grid-template-columns:1fr}}.alist{list-style:none;margin:0;padding:0;display:grid;gap:14px}.aw{display:grid;grid-template-columns:92px 1fr auto;gap:18px;align-items:center;padding:16px 20px}.aw time{font-family:var(--display);font-size:17px;font-variant-numeric:tabular-nums}.aw h3{font-size:18px;font-family:var(--body);font-weight:800}.aw p{margin:2px 0 0;font-size:13.5px;color:var(--ink2)}.prize{font-weight:800;font-size:13px;padding:6px 12px;border-radius:12px;border:2px solid var(--line);background:#ffe89c;color:#1d2a44;white-space:nowrap}.aw .links{grid-column:2/-1;display:flex;gap:14px;font-size:13px;font-weight:800}.aw .links a{text-decoration:none;border-bottom:2px solid var(--blue)}@media(max-width:640px){.aw{grid-template-columns:1fr auto}.aw time{grid-column:1/-1}.aw .links{grid-column:1/-1}}.brains{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.brain{text-decoration:none;overflow:hidden;display:flex;flex-direction:column}.brain img{aspect-ratio:1.91/1;object-fit:cover;width:100%;border-bottom:3px solid var(--line)}.brain .body{padding:14px 18px 18px;display:flex;flex-direction:column;gap:8px;flex:1}.brain h3{font-family:var(--body);font-weight:800;font-size:16px;line-height:1.5}.brain small{color:var(--ink2);font-weight:800}@media(max-width:860px){.brains{grid-template-columns:1fr}}.together{display:grid;grid-template-columns:1fr 1fr;gap:26px;padding:34px}.svc{list-style:none;margin:18px 0 0;padding:0;display:grid;gap:14px}.svc li{display:grid;grid-template-columns:48px 1fr;gap:14px;align-items:start}.svc svg{border:3px solid var(--line);border-radius:14px;background:var(--sky)}.svc h3{font-family:var(--body);font-weight:800;font-size:17px}.svc p{margin:2px 0 0;color:var(--ink2);font-size:14px}.flow{list-style:none;margin:0;padding:0;display:grid;gap:12px;counter-reset:f}.flow li{counter-increment:f;display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:center;padding:12px 14px;border:3px solid var(--line);border-radius:16px;background:var(--bg)}.flow li:before{content:counter(f);display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--helmet);border:3px solid var(--line);font-family:var(--display);color:#1d2a44}.flow b{display:block;font-size:15px}.flow span{font-size:13px;color:var(--ink2)}@media(max-width:860px){.together{grid-template-columns:1fr;padding:22px}}footer{border-top:3px solid var(--line);padding-block:40px 60px;background:var(--sky)}footer .wrap{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between}.sns{display:flex;flex-wrap:wrap;gap:8px}.sns a{font-weight:800;font-size:13px;text-decoration:none;padding:6px 14px;border:2px solid var(--line);border-radius:999px;background:var(--panel)}footer small{color:var(--ink2);font-weight:700}.apps{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.apps .gcard img{aspect-ratio:16/9;object-fit:cover}@media(max-width:760px){.apps{grid-template-columns:1fr}}.work .case-btn{margin-top:12px;font:800 13px var(--body);border:2px solid var(--line);background:var(--bg);color:var(--ink);border-radius:999px;padding:6px 14px;cursor:pointer}.work .case-btn:hover{background:var(--helmet);color:#1d2a44}.modal-overlay{position:fixed;inset:0;z-index:100;background:#0a0f22b8;display:none;align-items:flex-start;justify-content:center;padding:40px 16px;overflow-y:auto}.modal-content{position:relative;width:min(760px,100%);background:#1d2a44;color:#f4f1e8;border:3px solid #070b1c;border-radius:22px;box-shadow:6px 6px #070b1c;padding:28px 24px}.modal-content h3{font-family:var(--display);font-weight:400;color:var(--helmet)!important}.modal-content p{color:#cfd6ea}.modal-close{position:absolute;top:10px;right:14px;font-size:30px;line-height:1;background:none;border:0;color:#fff;cursor:pointer}.case-modal-points ul{padding-left:1.1em;margin:0 0 1rem}.case-modal-label{font-weight:800;color:var(--helmet)!important}.modal-embed-container{display:grid;gap:12px;justify-items:center}.btn-more{margin:16px auto 0;display:block;font:800 14px var(--body);border:3px solid #070b1c;background:var(--helmet);color:#1d2a44;border-radius:999px;padding:10px 20px;cursor:pointer}
