@charset "UTF-8";
:root{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#3e4038;background:#e5e1d7;font-synthesis:none;--paper:#fcfaf2;--muted:#77796c;--accent:#62704b;--page-width:480px;--page-height:650px;--font-size:16px;--pad-x:44px;--pad-y:48px}
*{box-sizing:border-box}body{margin:0;min-height:100vh;background:radial-gradient(ellipse at 50% 45%,#f2efe8 0,#e5e1d7 65%);padding:0 5vw}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;background:none;border:0}button:disabled{opacity:.27;cursor:default}a{color:inherit;text-underline-offset:4px}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:5px}[hidden]{display:none!important}.skip{position:fixed;top:12px;left:20px;z-index:20;padding:12px;background:var(--paper);opacity:0;pointer-events:none}.skip:focus{opacity:1;pointer-events:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
.reader-header{height:82px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #c7c6ba;gap:20px;max-width:1320px;margin:auto}.wordmark{font:bold 26px Georgia,serif;letter-spacing:-1.2px;text-decoration:none;white-space:nowrap}.wordmark span{color:var(--accent)}.edition-label{font:10px ui-monospace,monospace;letter-spacing:.14em;color:var(--muted)}.edition-label span{margin:0 10px;color:#a6a698}.exit-link{font-size:12px;text-decoration:none;color:#626658}
main{margin:auto;max-width:1320px}.toolbar{max-width:960px;display:flex;align-items:center;gap:10px;margin:16px auto 20px;height:42px;font-size:12px}.toolbar button{min-height:40px;padding:8px 10px;display:inline-flex;align-items:center;gap:7px;border-radius:3px}.toolbar button:hover:not(:disabled){background:#ffffff65}.toolbar-rule{width:1px;height:16px;background:#c5c7bb;margin:0 5px}.toolbar-space{flex:1}.languages{display:flex;gap:3px}.languages button{font-size:11px;color:var(--muted)}.languages [aria-pressed=true]{color:#354329;background:#d6dacb}.size-symbol{font-size:10px}.toolbar #bookmark[aria-pressed=true]{color:#8e5139}.toolbar #bookmark[aria-pressed=true] svg{fill:#b56b4b35}
.reading-desk{position:relative;display:flex;justify-content:center;align-items:center;perspective:1800px}.book{position:relative;display:flex;width:calc(var(--page-width)*2);height:var(--page-height);background:var(--paper);border-radius:3px 6px 6px 3px;box-shadow:0 1px 0 #a6a292,0 3px 0 #eee9dc,0 4px 0 #aba696,0 6px 0 #eeeadd,0 7px 0 #a8a28f,0 9px 0 #ede9dc,0 12px 0 #8e8b77,0 23px 35px -16px #332f2460,0 40px 70px -32px #332f2440;isolation:isolate}.book::after{content:"";position:absolute;left:50%;top:0;bottom:0;width:44px;transform:translateX(-50%);background:linear-gradient(90deg,transparent,#a49c8310 30%,#766f5926 48%,#655f4d39 50%,#fffef55c 53%,#b0a88c13 65%,transparent);pointer-events:none;z-index:3}.page{position:relative;flex:0 0 var(--page-width);width:var(--page-width);height:var(--page-height);padding:var(--pad-y) var(--pad-x);background:var(--paper);overflow:hidden}.page:first-child{border-radius:3px 0 0 3px;background:linear-gradient(90deg,#fffdf7,#fcfaf2 92%,#f6f2e8)}.page:nth-child(2){border-radius:0 5px 5px 0;background:linear-gradient(90deg,#f6f2e8,#fcfaf2 8%,#fffdf7)}.page-body{height:100%;font-family:Georgia,"Hiragino Mincho ProN","Yu Mincho",serif;font-size:var(--font-size);line-height:1.8;overflow-wrap:break-word;display:flow-root}.page-body:lang(ja){line-height:1.95;font-family:"Hiragino Mincho ProN","Yu Mincho",Georgia,serif;font-weight:500}.running-head{position:absolute;top:20px;left:var(--pad-x);right:var(--pad-x);display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #dedbd0;padding-bottom:7px;font:8px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.05em;color:#969486;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.folio{position:absolute;bottom:17px;left:var(--pad-x);right:var(--pad-x);text-align:center;font:11px Georgia,serif;color:#888575}.page-ribbon{position:absolute;right:24px;top:0;width:17px;height:40px;background:#a06043;clip-path:polygon(0 0,100% 0,100% 100%,50% 80%,0 100%);z-index:4}
.page-body p{margin:0 0 .95em;text-align:justify}.page-body h1,.page-body h2,.page-body h3{font-family:inherit;line-height:1.45;text-align:left}.page-body h2{font-size:1.16em;border-top:2px solid #666454;padding-top:.6em;margin:1.2em 0 .7em}.page-body h3{font-size:1.05em;margin:1em 0 .5em}.page-body a{color:#4d6241;text-decoration-color:#9ba78e}.page-body code{font: .82em/1.5 ui-monospace,monospace;overflow-wrap:anywhere}.page-body pre{white-space:pre-wrap;font-size:.8em;background:#eeede4;padding:12px;margin:1em 0;overflow:auto}.page-body ul,.page-body ol{padding-left:1.35em;margin:0 0 .8em}.page-body li{margin:0 0 .5em}.page-body figure{margin:1em 0 1.2em;text-align:center}.page-body figure img{display:block;max-width:100%;max-height:calc((var(--page-height) - var(--pad-y)*2)*.55);width:auto;height:auto;object-fit:contain;margin:auto;cursor:zoom-in}.page-body figcaption{font:10px/1.6 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#6c6c61;text-align:left;margin-top:9px}.page-body .opener img{max-height:calc((var(--page-height) - var(--pad-y)*2)*.28);mix-blend-mode:multiply}.chapter-title{margin:12px 0 24px}.page-body .chapter-number{font:10px/1.4 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;letter-spacing:.14em;color:#8e8b7c;text-align:left;margin:0 0 16px}.chapter-title h1{font-size:1.85em;font-weight:600;line-height:1.3;margin:0;letter-spacing:-.03em}.page-body .chapter-deck{font-size:.92em;color:#64675a;border-left:2px solid #b3b59f;padding-left:14px;margin:1em 0 1.5em}.page-body .sidebar,.page-body .column{background:#eeede5;padding:12px 16px;margin:.8em 0;border-top:1px solid #c4c5b7;font-size:.88em}.page-body .sidebar p,.page-body .column p{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.8}.page-body .sidebar-title,.page-body .column-title{font-weight:600!important;text-align:left;font-size:1em;margin:0 0 .8em}.page-body .column-art img{max-height:180px;mix-blend-mode:multiply}.page-body blockquote{margin:1em 0;padding-left:1em;border-left:2px solid #bec2b0}.table-wrap{overflow:auto;max-width:100%;font-size:.75em}.table-wrap table{border-collapse:collapse}.table-wrap th,.table-wrap td{padding:6px;border:1px solid #d1d1c3;text-align:left}.oversized{max-height:100%;overflow:auto}.page-body > :first-child{margin-top:0}.page-body > :last-child{margin-bottom:0}
.title-page{height:100%;display:flex;flex-direction:column;justify-content:space-between;text-align:center;padding:20px 0 5px}.title-page .book-label{font:10px/1.5 ui-monospace,monospace;letter-spacing:.25em;text-align:center;color:#858877}.title-page h1{font:normal clamp(30px,3.3vw,44px)/1.13 Georgia,serif;text-align:center;letter-spacing:-1.3px;margin:18px 0}.title-page .book-subtitle{font-size:12px;text-align:center;line-height:1.8}.title-art{width:100%;height:160px;object-fit:contain;mix-blend-mode:multiply}.title-page .author{font:15px Georgia,serif;text-align:center;margin:16px 0 0}.title-page .imprint{font:9px ui-monospace,monospace;letter-spacing:.16em;color:#969281;text-align:center;margin:10px 0 0}.contents-page{padding-top:28px}.contents-page .toc-eyebrow{font:9px ui-monospace,monospace;letter-spacing:.15em;color:#888c79}.contents-page h2{border:0;padding:0;font-size:27px;font-weight:400;margin:20px 0 35px}.printed-toc{list-style:none!important;padding:0!important;margin:0!important}.printed-toc li{padding:19px 0;margin:0!important;border-bottom:1px solid #d9d7c9}.printed-toc button,.printed-toc .unpublished{display:flex;align-items:baseline;gap:14px;width:100%;padding:0;text-align:left;font-family:inherit;font-size:14px;line-height:1.7}.toc-number{font:italic 22px Georgia,serif;color:#90917d}.toc-name{flex:1}.toc-page{font:12px Georgia,serif;color:#8a8b7a}.unpublished{color:#939383}.unpublished small{font:9px sans-serif;white-space:nowrap}.contents-page .edition-note{margin-top:35px;color:#929080;font-size:10px;text-align:left}.end-page{display:flex;flex-direction:column;justify-content:center;height:100%;text-align:center}.end-page h2{border:0;text-align:center;font-size:26px;font-weight:400}.end-page p{text-align:center;color:#777c6b;font-size:13px}.end-page a{font-size:12px}.end-page .like-button{display:block;margin:20px auto 0;padding:10px 20px;border:1px solid #b9bfaa;border-radius:3px;font-size:12px}.end-page .like-status{font-size:11px;min-height:24px}.blank-page{display:grid;place-items:center;height:100%;color:#c9c5b5;font:italic 26px Georgia,serif}
.edge-button{position:absolute;top:45%;font:38px Georgia,serif;width:45px;min-height:70px;color:#8b8e7e}.edge-prev{left:0}.edge-next{right:0}.reading-controls{max-width:960px;margin:28px auto 6px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;font-size:10px;color:#7b7e6e}.reading-controls>span{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.reading-controls>span:last-child{text-align:right;font:9px ui-monospace,monospace;letter-spacing:.1em}.pager{display:flex;align-items:center;gap:10px}.pager button{width:36px;height:36px;font-size:16px}.pager output{font:12px ui-monospace,monospace;min-width:100px;text-align:center}.progress-wrap{display:block;max-width:960px;margin:0 auto}.progress-wrap input{width:100%;height:16px;accent-color:#75815e;cursor:pointer;margin:0}.reader-note{font-size:10px;line-height:1.8;color:#8d8d7e;text-align:center;margin:9px 0 20px}.loading{display:flex;align-items:center;justify-content:center;flex-direction:column;width:100%;color:#8b8b78;font-size:12px}.loading-mark{font:italic 45px Georgia,serif;letter-spacing:-4px}.measure-page{position:fixed!important;left:-10000px;top:0;visibility:hidden;pointer-events:none;z-index:-1;border-radius:0!important;background:var(--paper)!important}.measure-page .page-body{overflow:visible}.turning-sheet{position:absolute!important;z-index:6;top:0;pointer-events:none;backface-visibility:hidden;box-shadow:0 0 30px #382e2425;animation:turn-forward .42s ease-in both;transform-origin:left center}.turning-sheet.backward{transform-origin:right center;animation-name:turn-backward}.turning-sheet::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#96866c16,transparent 40%,#fff8);pointer-events:none}@keyframes turn-forward{to{transform:rotateY(-105deg);opacity:.15}}@keyframes turn-backward{to{transform:rotateY(105deg);opacity:.15}}
dialog{border:1px solid #dad7c9;background:#fcfaf2;color:#3e4038;box-shadow:0 30px 100px #211c2555;padding:30px 35px;max-width:480px;width:calc(100% - 32px);max-height:85vh}dialog::backdrop{background:#272b2266;backdrop-filter:blur(3px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center}.eyebrow{font:10px ui-monospace,monospace;letter-spacing:.2em;color:#8a8e79}.close-dialog{font-size:28px;width:40px;height:40px}.dialog-subtitle{font:italic 15px Georgia,serif;color:#8a8e79}dialog h2{font:normal 30px Georgia,"Hiragino Mincho ProN",serif;margin:16px 0}.return-bookmark{font-size:12px;padding:15px 0;color:#9a654b;text-align:left}#contents-list{list-style:none;padding:0;margin:25px 0}#contents-list li{border-top:1px solid #d9d7c9}#contents-list button,#contents-list .unpublished{display:flex;gap:18px;align-items:baseline;text-align:left;width:100%;padding:19px 0;font:15px/1.6 Georgia,"Hiragino Mincho ProN",serif}.publication-note,.original-link{font-size:11px;line-height:1.8;color:#808573}#figure-dialog{max-width:min(1100px,94vw);width:fit-content;padding:20px;text-align:center}#figure-dialog .close-dialog{display:block;margin-left:auto}#expanded-figure{display:block;max-width:100%;max-height:65vh;width:auto;height:auto;margin:auto}#expanded-caption{font-size:12px;line-height:1.8;text-align:left;max-width:75ch;margin:15px auto 0}
body.single .book{width:var(--page-width)}body.single .book::after{display:none}body.single .page{border-radius:3px 5px 5px 3px!important;background:linear-gradient(90deg,#f5f1e7,#fcfaf2 4%,#fffdf7)!important}body.single .edge-button{display:none}
@media(max-width:1050px){body{padding:0 3vw}.edge-button{display:none}.toolbar,.reading-controls,.progress-wrap{max-width:var(--page-width)}}
@media(max-width:600px){body{padding:0 14px}.reader-header{height:64px}.wordmark{font-size:22px}.edition-label{display:none}.exit-link{font-size:10px}.toolbar{margin:9px auto 12px;height:38px;gap:1px}.toolbar button{padding:8px;min-height:38px}.toolbar-rule{margin:0 3px}.bookmark-label{display:none}.toolbar #bookmark{padding-left:10px}.reading-controls{margin-top:22px;grid-template-columns:1fr auto;gap:5px}.reading-controls>span:last-child{display:none}.pager{gap:0}.pager output{font-size:10px;min-width:88px}.page-body figcaption{font-size:9px}.running-head{font-size:7px;top:16px}.folio{font-size:10px;bottom:13px}.title-page{padding-top:20px}.title-page h1{font-size:35px}.title-art{height:130px}.title-page .book-subtitle{font-size:11px}.contents-page{padding-top:12px}.contents-page h2{margin:12px 0 22px}.printed-toc li{padding:14px 0}.printed-toc button,.printed-toc .unpublished{font-size:12px;gap:10px}.toc-number{font-size:19px}.contents-page .edition-note{margin-top:22px}.reader-note{font-size:9px}.chapter-title h1{font-size:1.65em}dialog{padding:20px 25px}}
/* Reserve figure space before each cloned image decodes. */
.special-page .page-body{overflow:auto;scrollbar-width:thin}
.title-art{min-height:0;flex-shrink:1}
@media(max-height:650px){.contents-page{padding-top:0}.contents-page h2{font-size:24px;margin:10px 0 16px}.printed-toc li{padding:9px 0}.contents-page .edition-note{display:none}.title-page{padding-top:0}.title-page h1{font-size:30px;margin:12px 0}.title-art{height:60px}.title-page .book-label{margin-top:0}}
.page-body figure img{width:100%;height:min(calc((var(--page-height) - var(--pad-y)*2)*.55),calc((var(--page-width) - var(--pad-x)*2)*var(--image-ratio,.6)))}
.page-body .opener img{height:min(calc((var(--page-height) - var(--pad-y)*2)*.28),calc((var(--page-width) - var(--pad-x)*2)*var(--image-ratio,.6)))}
.page-body .column-art img{height:min(180px,calc((var(--page-width) - var(--pad-x)*2 - 32px)*var(--image-ratio,.6)))}
.article-feedback{border-top:1px solid #d9d7c9;margin-top:20px;padding-top:12px;font-size:11px;color:#808573}.article-feedback button{border:1px solid #b9bfaa;padding:8px 16px;border-radius:3px}.article-feedback .like-status:empty{display:none}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}
