:root{--night:#121630;--dusk:#27305e;--haze:#57588a;--dawn:#d9b4a6;--dawn-2:#f1dcc5;--moon:#f2e8cc;--paper:#f5f5f9;--sheet:#fff;--ink:#191c33;--muted:#5d6280;--line:#dcdde8;--link:#3a45a0;--on-night:#e9e7f4;--on-night-muted:#a9acd0;--display:"Cormorant Garamond", "Shippori Mincho", Georgia, serif;--sans:"Hanken Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;--measure:68ch}html:lang(ja){--display:"Shippori Mincho", "Hiragino Mincho ProN", serif;--sans:"Zen Kaku Gothic New", "Hiragino Sans", system-ui, sans-serif}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-padding-top:84px}body{background:var(--paper);color:var(--ink);font:400 17.5px/1.72 var(--sans);-webkit-font-smoothing:antialiased;margin:0}html:lang(ja) body{letter-spacing:.02em;font-size:16px;line-height:1.95}img,svg{max-width:100%}a{color:var(--link);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--ink)}h1,h2,h3{font-family:var(--display);color:var(--ink);letter-spacing:-.005em;text-wrap:balance;font-weight:600;line-height:1.15}:where(html:lang(ja)) :is(h1,h2,h3){letter-spacing:.02em;line-height:1.45}h2{margin:0 0 1.1rem;font-size:clamp(1.75rem,3vw,2.25rem)}h2:where(:lang(ja)){font-size:clamp(1.35rem,2.4vw,1.7rem)}h3{margin:0 0 .4rem;font-size:1.4rem}h3:where(:lang(ja)){font-size:1.12rem}p{margin:0 0 1rem}.wrap{width:min(1160px,100% - 40px);margin-inline:auto}@media (width<=520px){.wrap{width:calc(100% - 32px)}}.skip{z-index:50;background:#fff;border-radius:6px;padding:8px 12px;position:absolute;top:8px;left:-9999px}.skip:focus{left:8px}:focus-visible{outline:2px solid var(--link);outline-offset:3px;border-radius:2px}.on-night :focus-visible,.site-header :focus-visible,.site-footer :focus-visible{outline-color:var(--moon)}.site-header{background:var(--night);z-index:20;border-bottom:1px solid #ffffff0f;position:sticky;top:0}.site-header .bar{align-items:center;gap:20px;min-height:64px;display:flex}.brand{color:var(--on-night);letter-spacing:.01em;align-items:center;gap:10px;font:600 1.45rem/1 Cormorant Garamond,Georgia,serif;text-decoration:none;display:inline-flex}.brand:hover{color:#fff}.brand svg{flex:none}.site-header nav{align-items:center;gap:26px;margin-left:auto;display:flex}.site-header nav a{color:var(--on-night-muted);font-size:.93rem;text-decoration:none}.site-header nav a:hover{color:#fff}.lang-switch{position:relative}.lang-switch summary{cursor:pointer;color:var(--on-night);border:1px solid #ffffff38;border-radius:999px;padding:5px 14px;font-size:.88rem;list-style:none}.lang-switch summary:hover{border-color:#ffffff80}.lang-switch summary::-webkit-details-marker{display:none}.lang-switch ul{background:var(--sheet);border-radius:10px;min-width:210px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 10px);right:0;box-shadow:0 18px 40px #0a0c1e47}.lang-switch li a{color:var(--ink);border-radius:6px;padding:9px 12px;font-size:.95rem;text-decoration:none;display:block}.lang-switch li a:hover,.lang-switch li a[aria-current]{background:var(--paper)}@media (width<=680px){.site-header nav .nav-link{display:none}.brand{font-size:1.3rem}}.sky{color:var(--on-night);background:linear-gradient(180deg, var(--night) 0%, #171c3d 34%, var(--dusk) 62%, var(--haze) 82%, var(--dawn) 94%, var(--dawn-2) 100%);position:relative;overflow:hidden}.sky:after{content:"";background:linear-gradient(90deg,#0000,#fff7e8e6 30% 70%,#0000);height:1px;position:absolute;bottom:0;left:0;right:0}.sky .wrap{z-index:1;padding:clamp(56px,9vw,112px) 0 clamp(72px,10vw,128px);position:relative}.moon{z-index:0;aspect-ratio:1;pointer-events:none;width:clamp(220px,34vw,440px);animation:1.6s cubic-bezier(.2,.7,.2,1) both moonrise;position:absolute;top:clamp(24px,5vw,64px);right:max(-60px,50% - 640px)}@keyframes moonrise{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.moon{animation:none}}@media (width<=760px){.moon{opacity:.55;width:240px;top:20px;right:-70px}}.sky h1{color:#fff;letter-spacing:-.02em;max-width:11ch;margin:0 0 1.4rem;font-size:clamp(3.1rem,8.4vw,6.6rem);font-weight:500;line-height:.98}html:lang(ja) .sky h1{letter-spacing:.02em;max-width:12em;font-size:clamp(2.3rem,6vw,4.4rem);font-weight:600;line-height:1.25}.sky .lead{color:var(--on-night);opacity:.86;max-width:34em;margin-bottom:2.2rem;font-size:1.12rem}.search{max-width:620px;position:relative}.search label{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.search input{width:100%;font:500 1.12rem/1.3 var(--sans);color:var(--ink);background:var(--sheet) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none' stroke='%235d6280' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='9' cy='9' r='6.5'/%3E%3Cpath d='m14 14 4.5 4.5'/%3E%3C/svg%3E") no-repeat 20px 50%;border:1px solid #ffffff2e;border-radius:12px;padding:19px 22px 19px 54px;box-shadow:0 24px 60px #06081859}.search input::placeholder{color:#8b8fa8}.search-results{z-index:5;background:var(--sheet);border-radius:12px;max-height:340px;margin:0;padding:6px;list-style:none;position:absolute;top:calc(100% + 8px);left:0;right:0;overflow:auto;box-shadow:0 24px 60px #06081859}.search-results a{color:var(--ink);border-radius:8px;padding:10px 14px;text-decoration:none;display:block}.search-results a:hover,.search-results a:focus{background:var(--paper)}.search-results .empty{color:var(--muted);padding:10px 14px}.quick{flex-wrap:wrap;align-items:baseline;gap:6px 18px;max-width:640px;margin:22px 0 0;padding:0;font-size:.95rem;list-style:none;display:flex}.quick .q-label{color:var(--on-night-muted)}.quick a{color:#fff;border-bottom:1px solid #ffffff59;padding-bottom:1px;text-decoration:none}.quick a:hover{border-bottom-color:#fff}.page-head{background:linear-gradient(180deg, var(--night) 0%, var(--dusk) 100%);color:var(--on-night);padding:34px 0 46px;position:relative}.page-head:after{content:"";background:linear-gradient(90deg, var(--dusk), var(--dawn) 50%, var(--dusk));opacity:.8;height:3px;position:absolute;bottom:0;left:0;right:0}.page-head h1{color:#fff;letter-spacing:-.015em;max-width:18ch;margin:.9rem 0;font-size:clamp(2.3rem,5.4vw,3.9rem);font-weight:500;line-height:1.04}html:lang(ja) .page-head h1{letter-spacing:.02em;max-width:22em;font-size:clamp(1.65rem,4vw,2.5rem);font-weight:600;line-height:1.4}.page-head .lead{color:var(--on-night);opacity:.85;max-width:40em;margin:0;font-size:1.08rem}.crumbs{color:var(--on-night-muted);flex-wrap:wrap;gap:4px 8px;font-size:.84rem;display:flex}.crumbs a{color:var(--on-night);text-decoration:none}.crumbs a:hover{color:#fff;text-decoration:underline}.crumbs .sep{opacity:.5}.meta-line{color:var(--on-night-muted);flex-wrap:wrap;gap:4px 22px;margin:0;font-size:.88rem;display:flex}.meta-line a{color:var(--on-night)}.band{padding:clamp(56px,7vw,96px) 0}.band+.band{padding-top:0}.band-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:1.4rem;display:flex}.band-head h2{margin:0}.band-head a{font-size:.95rem}.index{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:40px;margin:0;padding:0;list-style:none;display:grid}.index.two{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width<=900px){.index{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=600px){.index,.index.two{grid-template-columns:minmax(0,1fr)}}.index li{border-top:1px solid var(--line)}.index a{color:var(--ink);padding:18px 0 20px;text-decoration:none;display:block}.index strong{font:600 1.5rem/1.15 var(--display);margin-bottom:6px;transition:color .15s;display:block}html:lang(ja) .index strong{font-size:1.12rem;line-height:1.5}.index span{-webkit-line-clamp:2;color:var(--muted);-webkit-box-orient:vertical;font-size:.93rem;line-height:1.6;display:-webkit-box;overflow:hidden}.index a:hover strong{color:var(--link)}.themes{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:0 40px;margin:0;padding:0;list-style:none;display:grid}.themes li{border-top:1px solid var(--line)}.themes a{color:var(--ink);font:600 1.3rem/1.2 var(--display);justify-content:space-between;align-items:baseline;gap:12px;padding:14px 0;text-decoration:none;display:flex}html:lang(ja) .themes a{font-size:1.02rem}.themes small{font:400 .85rem/1 var(--sans);color:var(--muted);font-variant-numeric:tabular-nums}.themes a:hover{color:var(--link)}.ways{grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;display:grid}@media (width<=800px){.ways{grid-template-columns:minmax(0,1fr);gap:8px}}.ways div{border-top:2px solid var(--ink);padding-top:18px}.ways h3{font-size:1.65rem;font-style:italic;font-weight:500}html:lang(ja) .ways h3{font-size:1.15rem;font-style:normal}.ways p{color:var(--muted)}.steps{counter-reset:s;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;margin:0;padding:0;list-style:none;display:grid}@media (width<=900px){.steps{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.steps{grid-template-columns:minmax(0,1fr);gap:22px}}.steps li{counter-increment:s}.steps li:before{content:counter(s);color:var(--haze);margin-bottom:10px;font:500 3.4rem/1 Cormorant Garamond,Georgia,serif;display:block}.steps strong{margin-bottom:4px;font-weight:600;display:block}.steps span{color:var(--muted)}.reading-band{background:var(--night);color:var(--on-night);padding:clamp(64px,8vw,112px) 0;position:relative;overflow:hidden}.reading-band:before{content:"";pointer-events:none;background:radial-gradient(closest-side,#d9b4a638,#0000);height:90%;position:absolute;inset:auto -10% -60%}.reading-grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(32px,6vw,80px);display:grid;position:relative}@media (width<=860px){.reading-grid{grid-template-columns:minmax(0,1fr)}}.reading-band h2{color:#fff;margin-bottom:1.2rem;font-size:clamp(2.2rem,4.6vw,3.4rem);font-weight:500;line-height:1.05}html:lang(ja) .reading-band h2{font-size:clamp(1.6rem,3.4vw,2.3rem);font-weight:600;line-height:1.4}.reading-band p{color:var(--on-night);opacity:.82;max-width:30em}.tag{color:var(--night);background:var(--moon);border-radius:999px;margin-bottom:1.2rem;padding:4px 12px;font-size:.82rem;font-weight:600;display:inline-block}.sheet{background:var(--sheet);color:var(--ink);border-radius:14px;padding:clamp(24px,3.4vw,40px);transform:rotate(-.6deg);box-shadow:0 40px 90px #00000073}@media (prefers-reduced-motion:no-preference){.sheet{transition:transform .4s}.sheet:hover{transform:none}}.sheet .s-label{color:var(--muted);margin:0 0 6px;font-size:.82rem;font-weight:600}.sheet blockquote{border-bottom:1px solid var(--line);font:italic 500 1.42rem/1.4 var(--display);color:var(--ink);margin:0 0 22px;padding:0 0 22px}html:lang(ja) .sheet blockquote{font-size:1.05rem;font-style:normal;line-height:1.9}.sheet .s-reading{color:var(--ink);opacity:1;max-width:none;font-size:.98rem}.sheet .s-themes{flex-wrap:wrap;gap:8px;margin:18px 0 0;padding:0;list-style:none;display:flex}.sheet .s-themes li{border:1px solid var(--line);color:var(--muted);border-radius:999px;padding:3px 11px;font-size:.82rem}.faq details{border-top:1px solid var(--line)}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font:600 1.32rem/1.3 var(--display);padding:20px 40px 20px 0;list-style:none;position:relative}html:lang(ja) .faq summary{font-size:1.02rem;line-height:1.6}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"";border-right:1.5px solid var(--muted);border-bottom:1.5px solid var(--muted);width:12px;height:12px;margin-top:-8px;transition:transform .2s;position:absolute;top:50%;right:4px;transform:rotate(45deg)}.faq details[open] summary:after{margin-top:-2px;transform:rotate(-135deg)}.faq details>div{color:var(--ink);max-width:var(--measure);padding:0 0 18px}.narrow{max-width:820px}.layout{grid-template-columns:minmax(0,760px) 240px;justify-content:space-between;gap:64px;padding:56px 0 96px;display:grid}.layout.single{grid-template-columns:minmax(0,1fr);max-width:780px}@media (width<=1000px){.layout{grid-template-columns:minmax(0,1fr);gap:0;padding-top:32px}.side{display:none}}.content{min-width:0}.content>section{margin-bottom:64px}.content>section:last-of-type{margin-bottom:40px}.answer{border-bottom:1px solid var(--line);padding-bottom:40px}.answer h2{font:600 .9rem/1.4 var(--sans);color:var(--muted);letter-spacing:0;margin:0 0 12px}.answer p{font:500 clamp(1.32rem, 1rem + 1.2vw, 1.62rem)/1.42 var(--display);color:var(--ink);max-width:34em}html:lang(ja) .answer p{font-size:1.16rem;line-height:2}.answer p:last-child{margin:0}.answer strong{font-weight:700}.ways-read{margin:0}.ways-read div{border-top:1px solid var(--line);grid-template-columns:190px minmax(0,1fr);gap:32px;padding:26px 0 10px;display:grid}@media (width<=700px){.ways-read div{grid-template-columns:minmax(0,1fr);gap:6px}}.ways-read dt{font:italic 500 1.45rem/1.25 var(--display);color:var(--ink)}html:lang(ja) .ways-read dt{font-size:1.05rem;font-style:normal;font-weight:600;line-height:1.7}.ways-read dd{margin:0}.scenario{border-top:1px solid var(--line);padding:24px 0 8px}.scenario h3{font-size:1.5rem}html:lang(ja) .scenario h3{font-size:1.1rem}.ask{background:var(--night);color:var(--on-night);border-radius:16px;padding:clamp(28px,4vw,44px)}.ask h2{color:#fff;font-weight:500}.ask ol{counter-reset:q;margin:0;padding:0;list-style:none}.ask li{counter-increment:q;font:italic 500 1.32rem/1.45 var(--display);color:#fff;border-top:1px solid #ffffff1a;grid-template-columns:34px minmax(0,1fr);max-width:none;padding:12px 0;display:grid}html:lang(ja) .ask li{font-size:1.02rem;font-style:normal;line-height:1.8}.ask li:before{content:counter(q);font:400 .85rem/2.2 var(--sans);color:var(--on-night-muted);font-style:normal}.ask .cta{border-top:1px solid #ffffff2e;flex-wrap:wrap;align-items:baseline;gap:8px 20px;margin-top:26px;padding-top:22px;display:flex}.ask .cta strong{color:var(--moon);font-weight:600}.ask .cta span{color:var(--on-night-muted);flex:260px;font-size:.95rem}.ask .cta a{color:#fff;font-weight:600}.note{color:var(--muted);border-top:1px solid var(--line);padding-top:18px;font-size:.88rem}.side-inner{font-size:.9rem;position:sticky;top:96px}.side-title{color:var(--ink);margin-bottom:10px;font-weight:600}.toc{margin:0;padding:0;list-style:none}.toc a{color:var(--muted);border-top:1px solid var(--line);padding:6px 0;text-decoration:none;display:block}.toc a:hover{color:var(--ink)}.toc-mobile{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:32px;padding:12px 0}.toc-mobile summary{cursor:pointer;font-weight:600}.toc-mobile ol{margin:10px 0 0;padding-left:20px}@media (width>=1001px){.toc-mobile{display:none}}.group{margin-bottom:56px}.group h2{margin-bottom:.6rem;font-size:1.9rem}.group h2 a{color:var(--ink);text-decoration:none}.group h2 a:hover{color:var(--link)}.count{color:var(--muted);margin-bottom:40px}.prose-page section{margin-bottom:40px}.prose-page h2{font-size:1.7rem}.site-footer{background:var(--night);color:var(--on-night-muted);padding:64px 0 32px;font-size:.92rem}.site-footer a{color:var(--on-night);text-decoration:none}.site-footer a:hover{color:#fff;text-decoration:underline}.foot-top{grid-template-columns:2fr 1fr 1fr;gap:48px;display:grid}@media (width<=760px){.foot-top{grid-template-columns:minmax(0,1fr);gap:32px}}.site-footer h2{color:#fff;font:600 .95rem/1.4 var(--sans);letter-spacing:0;margin:0 0 12px}.site-footer ul{margin:0;padding:0;list-style:none}.site-footer li{margin:6px 0}.site-footer .brand{margin-bottom:16px}.site-footer p{max-width:40em}.foot-bottom{border-top:1px solid #ffffff1a;margin-top:40px;padding-top:18px;font-size:.85rem}.not-found{padding:64px 0}
