@import url('https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=Shippori+Mincho:wght@400;500;600;700&display=swap');
:root{--night:#171a2b;--night2:#22263b;--ink:#292b39;--muted:#858495;--paper:#faf8f4;--line:#e9e5df;--serif:'Shippori Mincho','Yu Mincho',serif;--mono:'DM Mono',monospace}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);line-height:1.8}.site-header{height:76px;padding:0 max(calc((100% - 1080px)/2),32px);display:flex;justify-content:space-between;align-items:center;background:var(--night);color:#f4f0e8}.wordmark{display:inline-flex;align-items:center;gap:10px;font-size:14px;letter-spacing:.08em;color:inherit;text-decoration:none}.logo{color:#d4b275;font-size:21px}.site-header nav{display:flex;gap:31px}.site-header nav a{font-size:11px;color:#c1c0ca;text-decoration:none;letter-spacing:.08em}.site-header nav a:hover{color:#e5c886}.hero{height:490px;position:relative;overflow:hidden;background:radial-gradient(ellipse at 73% 45%,#333653 0,#22263b 25%,var(--night) 65%);color:#f4f0e8;padding:76px max(calc((100% - 980px)/2),50px) 45px}.hero .kicker,.kicker{font:10px var(--mono);letter-spacing:.18em;color:#c7a873}.hero h1{font-size:57px;line-height:1.55;letter-spacing:.1em;font-weight:500;margin:19px 0 10px;position:relative;z-index:1}.hero h1 em{font-style:normal;color:#ddbd7d}.hero-lead{font-size:13px;line-height:2.2;color:#c2c0cb;position:relative;z-index:1}.hero-link{display:inline-flex;gap:28px;align-items:center;margin-top:14px;color:#e7d4a9;text-decoration:none;border-bottom:1px solid #766c5c;padding:5px 0;font-size:11px;letter-spacing:.1em;position:relative;z-index:1}.hero-link span{font-size:17px}.hero-stars{position:absolute;right:12%;top:72px;color:#d7c38e;font-size:19px;letter-spacing:1em;opacity:.78}.moon{position:absolute;width:220px;height:220px;right:18%;top:120px;border-radius:50%;background:linear-gradient(135deg,#e9d8b0,#bdad91);box-shadow:0 0 80px #c5b2802b}.moon:after{content:'';position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 30% 32%,#9f967d 0 3px,transparent 4px),radial-gradient(circle at 65% 61%,#a99c80 0 7px,transparent 8px),radial-gradient(circle at 45% 75%,#c1b18e 0 4px,transparent 5px),radial-gradient(circle at 73% 27%,#c2b492 0 11px,transparent 12px);opacity:.55}.hero-bottom{position:absolute;bottom:23px;left:max(calc((100% - 980px)/2),50px);font:8px var(--mono);letter-spacing:.2em;color:#78798b}.works{max-width:1080px;margin:auto;padding:77px 40px 85px}.section-title{display:flex;align-items:end;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:17px}.section-title .kicker{margin-bottom:6px;color:#9b8052}.section-title h2{font-size:29px;font-weight:500;letter-spacing:.12em;margin:0}.count{font:10px var(--mono);color:#9995a0;letter-spacing:.08em}.section-intro{font-size:12px;color:#777583;margin:17px 0 28px}.story-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:19px}.story-card{display:block;text-decoration:none;color:inherit;border:1px solid #eae5df;background:#fffdfa;padding:16px 17px 19px;transition:transform .2s,box-shadow .2s}.story-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #25243a12}.card-top{display:flex;justify-content:space-between;align-items:center}.genre{font:9px var(--mono);letter-spacing:.05em;color:#777588}.arrow{font:16px;color:#a69a7e}.mini-art{height:146px;margin:15px 0 17px;display:grid;place-items:center;position:relative;overflow:hidden}.card-blue .mini-art{background:#e5e9ed}.card-rose .mini-art{background:#eee4e4}.card-gold .mini-art{background:#eee9dd}.window{font:36px var(--serif);color:#e4d39e;position:relative;z-index:1}.rail{position:absolute;bottom:31px;color:#8b91a0;font-size:22px;letter-spacing:-.1em}.train-art:before{content:'';position:absolute;width:110px;height:45px;bottom:28px;border:1px solid #6d7486;border-bottom:4px solid #6d7486;background:#454b60;clip-path:polygon(10% 0,90% 0,100% 100%,0 100%)}.train-art:after{content:'';position:absolute;width:5px;height:5px;background:#e9d494;border-radius:50%;top:40px;left:48%;box-shadow:9px 0 #e9d494}.window-frame{display:grid;grid-template-columns:repeat(2,29px);grid-template-rows:repeat(2,29px);gap:5px;border:6px solid #5c5a70;box-shadow:0 0 0 14px #c6a7a9}.window-frame i{background:#8f9db2}.tiny-star{position:absolute;right:27%;top:24%;font-size:21px;color:#af9263}.envelope{font-size:59px;color:#aa9470;transform:rotate(-8deg)}.spark{position:absolute;right:29%;top:23%;font-size:23px;color:#c59b60}.story-no{font:9px var(--mono);letter-spacing:.17em;color:#a08d68;margin:0 0 5px}.story-card h3{font-size:19px;letter-spacing:.08em;font-weight:500;margin:0 0 7px}.card-desc{font-size:11px;color:#777583;min-height:40px;margin:0 0 13px}.read-more{display:flex;justify-content:space-between;border-top:1px solid #eee9e4;padding-top:10px;font-size:10px;color:#8b7e6b;letter-spacing:.08em}.read-more b{font:14px var(--mono)}.about{background:#eeece8;padding:63px max(calc((100% - 1000px)/2),50px);display:grid;grid-template-columns:95px 1fr 190px;gap:25px;align-items:center}.about-symbol{width:70px;height:70px;border-radius:50%;background:var(--night2);display:grid;place-items:center;color:#dfc583;font-size:33px}.about .kicker{color:#9b8052;margin-bottom:7px}.about h2{font-weight:500;letter-spacing:.1em;font-size:23px;line-height:1.8;margin:0 0 10px}.about p:not(.kicker){font-size:11px;line-height:2;color:#777580;max-width:520px;margin:0}.about-note{font-size:11px;line-height:2.1;color:#8b7e6b;border-left:1px solid #d5cfc7;padding:10px 0 10px 20px}footer{min-height:78px;background:var(--night);color:#c1c0ca;padding:20px max(calc((100% - 1080px)/2),32px);display:flex;justify-content:space-between;align-items:center}footer>span,footer>a:last-child{font:8px var(--mono);letter-spacing:.12em;color:#858596;text-decoration:none}
/* 個別シナリオ */.detail-hero{position:relative;padding:38px max(calc((100% - 850px)/2),40px) 49px;color:#f7f2e8;overflow:hidden}.blue-detail{background:linear-gradient(110deg,#242b40,#39445a)}.rose-detail{background:linear-gradient(110deg,#342c3c,#65505f)}.gold-detail{background:linear-gradient(110deg,#34332f,#665c48)}.back-link{display:inline-block;color:#d2c6a8;text-decoration:none;font-size:10px;margin-bottom:28px}.detail-hero .kicker{margin:0 0 11px;color:#d9c48e}.detail-hero h1{font-size:42px;letter-spacing:.13em;font-weight:500;margin:0 0 7px}.detail-subtitle{font-size:12px;color:#d5d0d3;margin:0}.detail-ornament{position:absolute;right:max(calc((100% - 850px)/2),40px);bottom:29px;font:9px var(--mono);letter-spacing:.15em;color:#bdb198}.detail-content{max-width:850px;margin:auto;padding:35px 35px 80px}.meta-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);background:#fffdfa}.meta-grid div{padding:14px 16px;border-right:1px solid var(--line)}.meta-grid div:last-child{border:0}.meta-grid span,.meta-grid b{display:block}.meta-grid span{font:9px var(--mono);color:#9b8a70;margin-bottom:4px}.meta-grid b{font-size:11px;font-weight:500}.prose{max-width:660px;margin:53px auto 48px}.prose .kicker{color:#a08a5e;margin-bottom:6px}.prose h2{font-size:22px;font-weight:500;letter-spacing:.1em;margin:0 0 16px}.prose p{font-size:13px;line-height:2.3;color:#625f66;margin-bottom:15px}.script-sample{margin:31px 0;padding:23px 26px;background:#f0eeea;border-left:2px solid #b7a375}.scene-label{font:9px var(--mono);color:#96835a;letter-spacing:.08em}.script-sample p{font-size:12px;margin:13px 0 0}.script-sample b{display:inline-block;min-width:50px;color:#4a4b58;font-weight:600}.stage-note{display:block;margin-top:17px;font-size:10px;color:#99919a}.next-story{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:17px 2px;text-decoration:none;color:#706855}.next-story span{font:9px var(--mono);letter-spacing:.1em;color:#9a8b74}.next-story b{font-size:12px;font-weight:500}
@media(max-width:720px){.site-header{height:66px;padding:0 20px}.wordmark{font-size:12px}.site-header nav{gap:15px}.site-header nav a{font-size:9px}.hero{height:455px;padding:60px 28px}.hero h1{font-size:44px}.hero-lead{font-size:11px}.moon{width:135px;height:135px;right:9%;top:100px;opacity:.65}.hero-stars{right:4%;top:55px;font-size:13px}.hero-bottom{left:28px;font-size:7px}.works{padding:58px 23px}.section-title h2{font-size:25px}.story-grid{grid-template-columns:1fr;gap:14px}.story-card{padding:14px 15px 17px}.mini-art{height:130px}.card-desc{min-height:0}.about{padding:47px 26px;grid-template-columns:55px 1fr;gap:16px}.about-symbol{width:48px;height:48px;font-size:23px}.about h2{font-size:19px}.about-note{grid-column:2;border-left:0;border-top:1px solid #d5cfc7;padding:12px 0 0}footer{padding:18px 20px;gap:12px;flex-wrap:wrap}footer>span{order:3;width:100%;text-align:center}.detail-hero{padding:29px 24px 65px}.detail-hero h1{font-size:31px}.detail-subtitle{font-size:11px}.detail-ornament{left:24px;right:auto;bottom:22px;font-size:8px}.back-link{margin-bottom:23px}.detail-content{padding:24px 20px 55px}.meta-grid{grid-template-columns:repeat(2,1fr)}.meta-grid div:nth-child(2){border-right:0}.meta-grid div:nth-child(-n+2){border-bottom:1px solid var(--line)}.meta-grid div{padding:12px}.prose{margin:38px 0}.prose p{font-size:12px}.script-sample{padding:19px 17px}.next-story b{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
