*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif}a{color:inherit}a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.cg-header{display:flex;align-items:center;gap:18px;min-height:74px;padding:12px max(18px,calc((100vw - 1180px)/2));background:var(--ink);color:var(--surface);border-bottom:4px solid var(--accent)}.cg-brand{display:flex;align-items:center;gap:10px;text-decoration:none;font-weight:900;font-size:21px}.cg-brand-mark{display:grid;place-items:center;width:42px;height:42px;flex:none;background:var(--accent);color:var(--ink);font-size:23px}.cg-brand small{display:block;font:700 9px/1.3 ui-monospace,monospace;letter-spacing:.13em;opacity:.8}.cg-header nav{display:flex;gap:14px;margin-left:auto;font-size:12px;font-weight:800}.cg-header nav a{text-underline-offset:4px}
.cg-main{width:min(1180px,100%);margin:0 auto}.cg-hero{position:relative;overflow:hidden;padding:52px clamp(22px,5vw,62px) 48px;background:var(--surface);border-bottom:2px solid var(--ink)}.cg-hero:after{content:attr(data-mark);position:absolute;right:5%;top:-65px;pointer-events:none;color:var(--accent);opacity:.17;font:900 300px/1 serif;transform:rotate(-13deg)}.cg-hero>*{position:relative;z-index:1}.cg-kicker,.cg-play-label,.cg-article-index{font:900 11px/1.5 ui-monospace,monospace;letter-spacing:.16em;color:var(--accent)}.cg-hero h1{max-width:850px;margin:14px 0;font-size:clamp(32px,5.1vw,63px);line-height:1.24;letter-spacing:-.075em}.cg-lead{max-width:700px;margin:0;color:color-mix(in srgb,var(--ink) 72%,var(--surface));font-size:clamp(15px,1.5vw,18px);line-height:1.8;font-weight:700}.cg-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:24px}.cg-actions a{display:inline-flex;align-items:center;min-height:42px;padding:8px 16px;border:1px solid var(--ink);font-size:12px;font-weight:900;text-decoration:none}.cg-actions a:first-child{background:var(--accent);border-color:var(--accent);color:var(--ink)}.cg-actions a:hover{background:var(--ink);color:var(--surface)}
.cg-play{padding:23px clamp(12px,4vw,50px) 20px;background:var(--ink);color:var(--surface);scroll-margin-top:70px}.cg-play-top{display:flex;justify-content:space-between;align-items:end;gap:15px;margin-bottom:13px}.cg-play-top h2{margin:4px 0 0;font-size:clamp(19px,2.2vw,25px);letter-spacing:-.05em}.cg-play-top p{margin:0;font-size:12px;opacity:.76}.cg-source{display:flex;flex-wrap:wrap;gap:6px 14px;margin:0 0 12px;font-size:12px;line-height:1.5}.cg-source strong{color:var(--accent)}.cg-source a{overflow-wrap:anywhere;font-weight:800;text-underline-offset:3px}.cg-frame{height:min(820px,88dvh);min-height:610px;background:#eee5d7;border:1px solid color-mix(in srgb,var(--accent) 55%,var(--surface));box-shadow:0 15px 34px #0004}.cg-frame iframe{display:block;width:100%;height:100%;border:0;background:#eee5d7}.cg-credit{margin:11px 0 0;font-size:12px;opacity:.8;line-height:1.6}
.cg-article{width:min(940px,calc(100% - 40px));margin:0 auto;padding:70px 0 78px}.cg-article-intro{display:grid;grid-template-columns:170px minmax(0,1fr);gap:30px;padding-bottom:28px;border-bottom:3px solid var(--ink)}.cg-article-intro p{margin:0;font-size:17px;line-height:1.85;font-weight:700}.cg-section{display:grid;grid-template-columns:170px minmax(0,1fr);gap:30px;padding:35px 0;border-bottom:1px solid color-mix(in srgb,var(--ink) 24%,var(--paper))}.cg-section-no{font:900 11px/1.5 ui-monospace,monospace;letter-spacing:.12em;color:var(--accent)}.cg-section h2{margin:0 0 13px;font-size:clamp(22px,2.4vw,29px);letter-spacing:-.055em}.cg-section p{margin:0;color:color-mix(in srgb,var(--ink) 78%,var(--paper));font-size:15px;line-height:1.95}.cg-faq h2{margin:0 0 19px;font-size:27px}.cg-faq details{border-top:1px solid color-mix(in srgb,var(--ink) 24%,var(--paper))}.cg-faq details:last-child{border-bottom:1px solid color-mix(in srgb,var(--ink) 24%,var(--paper))}.cg-faq summary{cursor:pointer;padding:15px 0;font-weight:800}.cg-faq details p{padding:0 0 17px}.cg-related{margin-top:35px;padding:20px;border:1px solid color-mix(in srgb,var(--ink) 25%,var(--paper));background:var(--surface)}.cg-related h2{margin:0 0 12px;font-size:16px}.cg-related a{display:inline-block;margin:0 15px 8px 0;font-size:12px;font-weight:800;text-underline-offset:3px}.cg-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:24px max(20px,calc((100vw - 1180px)/2)) 34px;border-top:2px solid var(--ink);font-size:11px;color:var(--ink)}.cg-footer nav{display:flex;flex-wrap:wrap;gap:12px}
@media(max-width:700px){.cg-header{min-height:62px}.cg-brand{font-size:16px}.cg-brand-mark{width:35px;height:35px;font-size:19px}.cg-header nav{font-size:11px}.cg-header nav a:last-child{display:none}.cg-hero{padding:38px 21px 34px}.cg-hero:after{right:-20px;top:-25px;font-size:190px}.cg-play{padding:18px 0}.cg-play-top,.cg-source,.cg-credit{margin-left:15px;margin-right:15px}.cg-play-top p{display:none}.cg-frame{height:76dvh;min-height:570px;border-left:0;border-right:0}.cg-article{width:calc(100% - 32px);padding-top:48px}.cg-article-intro,.cg-section{grid-template-columns:1fr;gap:9px}.cg-section{padding:31px 0}}
