@charset "UTF-8";
:root{color-scheme:dark;--bg:#121310;--surface:#1b1d18;--text:#eeeae0;--muted:#b8b8aa;--gold:#c4ad78;--line:#454538;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;--sans:"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:2rem}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--serif);font-size:16px;line-height:1.9;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--gold);outline-offset:7px}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}ruby rt{font-size:.6em}::selection{background:var(--gold);color:var(--bg)}.wrap{width:min(1120px,calc(100% - 96px));margin-inline:auto}.header{display:flex;align-items:center;justify-content:space-between;padding-block:30px;border-bottom:1px solid var(--line)}.brand{font-size:1.8rem;letter-spacing:.16em;display:flex;align-items:center;gap:20px;white-space:nowrap}.brand span{font-size:.75rem;color:var(--muted);letter-spacing:.12em}.header-link{font-size:.875rem;letter-spacing:.08em}.header-link span{margin-left:18px;color:var(--gold)}.hero{position:relative;display:grid;grid-template-columns:1.1fr 1fr;gap:0 44px;padding-top:62px}.hero-copy{padding:20px 0 30px;z-index:1}.eyebrow{font-size:.875rem;letter-spacing:.15em;color:var(--gold)}h1{font-size:clamp(2.5rem,4.3vw,3.6rem);line-height:1.65;letter-spacing:.075em;margin:24px 0}h1 em{font-style:normal;color:var(--gold)}.intro{color:var(--muted);line-height:2.15;margin-bottom:30px}.button{display:flex;justify-content:space-between;align-items:center;gap:20px;width:fit-content;max-width:100%;padding:17px 23px;border:1px solid var(--gold);background:#c4ad7810;font-size:.9375rem;transition:background .2s}.button:hover{background:#c4ad7826}.button span{font-size:1.3rem;color:var(--gold)}.caption{font-family:var(--sans);font-size:.75rem;color:var(--muted);margin-top:12px;line-height:1.8}.portrait-link{position:relative;align-self:stretch;min-height:560px;overflow:hidden;background:#393a32}.portrait{width:100%;height:100%;object-fit:cover;position:absolute;object-position:50% 45%;filter:brightness(.82);transition:filter .3s,transform .7s}.portrait-link:hover .portrait{filter:brightness(.95);transform:scale(1.025)}.portrait-link:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#10120deb,transparent 46%);pointer-events:none}.portrait-sign{position:absolute;right:26px;bottom:67px;z-index:1;writing-mode:vertical-rl;font-size:3.2rem;letter-spacing:.22em;line-height:1.4}.portrait-sign>span{font-size:.75rem;letter-spacing:.45em;margin-left:10px}.portrait-label{position:absolute;bottom:22px;left:26px;right:26px;display:flex;justify-content:space-between;z-index:1;font-size:.875rem;border-top:1px solid #d5c59466;padding-top:14px;letter-spacing:.12em}.hero-foot{grid-column:1/-1;display:flex;justify-content:space-between;padding:26px 0 30px;border-bottom:1px solid var(--line);font-size:.75rem;letter-spacing:.08em;color:var(--muted)}.hero-foot a{font-size:.875rem}.hero-foot a span{margin-left:22px;color:var(--gold)}.section{padding-block:100px}.about{display:grid;grid-template-columns:1fr 2fr;gap:50px}.section-label{display:flex;align-items:center;gap:20px;color:var(--gold)}.section-label>span{font-size:1rem;display:grid;place-items:center;border:1px solid var(--line);width:38px;height:38px}.section-label p{font-size:.875rem;letter-spacing:.12em}h2{font-size:clamp(1.65rem,2.5vw,2.3rem);line-height:1.85;letter-spacing:.08em}.prose{margin-top:32px;color:var(--muted);font-size:1rem}.prose p+p{margin-top:24px}.kegare{background:var(--surface);border-block:1px solid #34362b;text-align:center}.kegare h2{margin:30px 0 22px;color:var(--text);font-size:clamp(1.5rem,2.3vw,1.9rem)}.kegare p:not(.eyebrow){color:var(--muted);line-height:2.2}.kegare p+p{margin-top:26px}.reading-heading{display:grid;grid-template-columns:1fr 2fr;gap:50px}.reading h2{font-size:2.8rem;margin:16px 0 18px}.reading h2 small{font-size:.75rem;letter-spacing:.15em;display:inline-block;margin-left:22px;color:var(--muted)}.reading-description{color:var(--muted)}.reading-list{list-style:none;padding:0;margin:55px 0 0;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.reading-list li{padding:30px 24px 0 0}.reading-list li+li{padding-left:30px;border-left:1px solid var(--line)}.number{font-family:var(--serif);font-size:.875rem;letter-spacing:.1em;color:var(--gold)}h3{font-size:1.2rem;margin:24px 0 16px;letter-spacing:.03em}.reading-list p{font-size:.9375rem;line-height:2;color:var(--muted)}.invitation{border:1px solid var(--line);padding:64px 32px;text-align:center;background:var(--surface)}.invitation-top img{width:64px;height:64px;object-fit:cover;border-radius:50%;margin:0 auto 25px;border:1px solid var(--gold)}.invitation h2{margin:23px 0}.invitation>p{color:var(--muted)}.image-cta{display:block;position:relative;overflow:hidden;width:min(480px,100%);min-height:178px;margin:34px auto 0;border:1px solid var(--gold);text-align:left;background:#27271e}.image-cta>img{position:absolute;left:0;top:0;width:47%;height:100%;object-fit:cover;object-position:center 38%;filter:brightness(.75);transition:filter .3s}.image-cta:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,transparent 18%,#27271e 48%);pointer-events:none}.image-cta-copy{position:relative;z-index:1;display:flex;flex-direction:column;padding:23px 25px 22px 44%}.cta-overline{font-size:.75rem;color:var(--gold);letter-spacing:.07em}.image-cta strong{font-weight:400;font-size:1.9rem;letter-spacing:.08em;line-height:1.8}.cta-bottom{display:flex;justify-content:space-between;font-size:.875rem;margin-top:10px;color:var(--text)}.image-cta:hover>img{filter:brightness(1)}.image-cta:hover{background:#323024}.waiting{font-size:.875rem;margin-top:25px;line-height:2}.footer{display:flex;align-items:center;justify-content:space-between;padding-block:55px;color:var(--muted)}.footer .brand{color:var(--text)}.footer>p,.footer>small{font-size:.75rem;letter-spacing:.08em}.skip{position:absolute;left:10px;top:-100px;z-index:10;background:var(--gold);color:var(--bg);padding:10px}.skip:focus{top:10px}
@media(min-width:1400px){.hero{padding-top:76px}.hero-copy{padding-bottom:50px}}
@media(max-width:900px){.wrap{width:calc(100% - 48px)}.hero{gap:0 24px}.portrait-link{min-height:520px}h1{font-size:2.6rem}.button{padding:14px;font-size:.875rem;gap:10px}.about,.reading-heading{grid-template-columns:1fr 2fr;gap:25px}.reading-list{grid-template-columns:1fr}.reading-list li,.reading-list li+li{display:flex;gap:32px;padding:25px 0;border-left:0;border-bottom:1px solid var(--line)}.reading-list h3{margin:0 0 10px}.number{margin-top:5px}.reading-list br{display:none}.section{padding-block:76px}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.header{padding-block:20px}.brand{font-size:1.6rem;gap:12px}.brand span{font-size:.6875rem}.header-link{font-size:.75rem}.header-link span{margin-left:6px}.hero{grid-template-columns:1fr;padding-top:30px;gap:0}.hero-copy{padding:4px 0 24px}.eyebrow{font-size:.8125rem;letter-spacing:.08em}h1{font-size:clamp(2.05rem,8.3vw,3rem);margin:21px 0;line-height:1.6}.intro{font-size:.9375rem;margin-bottom:24px}.button{width:100%;padding:17px 18px;font-size:.875rem}.hero-copy .caption{text-align:center}.portrait-link{min-height:0;aspect-ratio:1.12;margin-top:10px}.portrait{object-position:50% 39%}.portrait-sign{font-size:2.5rem;bottom:60px;right:20px}.hero-foot{gap:12px;align-items:center;padding-block:21px;font-size:.625rem}.hero-foot a{font-size:.75rem;white-space:nowrap}.hero-foot a span{margin-left:8px}.about,.reading-heading{grid-template-columns:1fr;gap:30px}.section{padding-block:60px}.about h2{font-size:1.8rem}.section-label{gap:13px}.section-label>span{width:30px;height:30px}.prose{font-size:.9375rem;margin-top:25px}.desktop-break{display:none}.kegare{text-align:left}.kegare h2{font-size:1.5rem;line-height:2;margin-block:24px}.kegare p:not(.eyebrow){font-size:.9375rem}.kegare br{display:none}.reading h2{font-size:2.4rem;margin-top:10px}.reading h2 small{margin-left:16px}.reading-description{font-size:.9375rem}.reading-list{margin-top:30px}.reading-list li,.reading-list li+li{gap:22px}.reading-list h3{font-size:1.15rem}.invitation{width:calc(100% - 28px);padding:40px 20px}.invitation h2{font-size:1.8rem}.invitation>p:not(.caption){font-size:.875rem}.image-cta{min-height:160px}.image-cta-copy{padding:23px 13px 20px 39%}.image-cta strong{font-size:1.6rem}.cta-bottom{font-size:.75rem}.cta-overline{font-size:.6875rem}.footer{padding-block:35px;flex-wrap:wrap;gap:18px}.footer>p{display:none}.footer .brand{font-size:1.5rem}.footer small{font-size:.6875rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* 明朝体と、淡い光沢を持つゴールドの濃淡。 */
:root{--cta-gold:linear-gradient(125deg,#b79a61 0%,#d1b77e 27%,#ead8ab 49%,#d2b77e 72%,#b79a61 100%);--cta-gold-hover:linear-gradient(125deg,#c5a970 0%,#dfc793 27%,#f2e3c1 49%,#dfc793 72%,#c5a970 100%)}
.button{background:var(--cta-gold);color:#171812;border-color:#dac391;font-weight:600;box-shadow:inset 0 1px 0 #fff4,0 5px 22px #0003}
.button span{color:inherit}
.button:hover{background:var(--cta-gold-hover)}
.portrait-label{background:var(--cta-gold);color:#171812;border:1px solid #dac391;padding:11px 16px;font-weight:600;letter-spacing:.08em}
.portrait-sign{bottom:88px}
.image-cta{background:var(--cta-gold);color:#171812;border-color:#dac391;box-shadow:inset 0 1px 0 #fff4,0 6px 24px #0003}
.image-cta:after{background:var(--cta-gold);-webkit-mask-image:linear-gradient(90deg,transparent 15%,#000 39%);mask-image:linear-gradient(90deg,transparent 15%,#000 39%)}
.image-cta .cta-overline,.image-cta .cta-bottom{color:#171812}
.image-cta strong,.image-cta .cta-bottom{font-weight:600}
.image-cta:hover,.image-cta:hover:after{background:var(--cta-gold-hover)}

.section-label>span,.number{display:inline-grid;place-items:center;flex-shrink:0;width:44px;height:44px;background:var(--cta-gold);color:#171812;border:1px solid #dac391;box-shadow:inset 0 1px 0 #fff4;font-family:var(--serif);font-size:1.125rem;font-weight:600;line-height:1;letter-spacing:0}
.section-label p{font-family:var(--serif);font-size:1rem;font-weight:600;color:var(--text)}
.reading-list h3{font-weight:600}
.button,.portrait-label,.image-cta-copy{font-family:var(--serif);font-weight:600}
.button{font-size:1.0625rem;line-height:1.7;min-height:60px}
.button>span{flex-shrink:0}
.portrait-label{font-size:1rem;font-weight:600;letter-spacing:.02em}
.image-cta strong{font-size:2rem;font-weight:600;letter-spacing:.02em}
.image-cta .cta-overline{font-size:.875rem;font-weight:600;letter-spacing:0}
.image-cta .cta-bottom{font-size:1rem;font-weight:600;gap:8px;flex-wrap:wrap;line-height:1.7}
@media(max-width:600px){.button{font-size:1rem;padding:18px 14px}.image-cta-copy{padding-left:34%;padding-right:12px}.image-cta strong{font-size:1.75rem}.image-cta:after{-webkit-mask-image:linear-gradient(90deg,transparent 8%,#000 33%);mask-image:linear-gradient(90deg,transparent 8%,#000 33%)}.reading-list li>div{min-width:0}}
