@charset "UTF-8";
:root { color-scheme:light; --outer:#635b68; --paper:#cec1b3; --ink:#444; --light:#cec1b3; --rule:#a99d90; }
* { box-sizing:border-box; }
body { margin:0; background:var(--outer); color:var(--ink); font:14px/1.8 Verdana,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif; }
a { color:inherit; text-underline-offset:.25em; }
a:hover { color:#222; }
a:focus-visible,summary:focus-visible { outline:3px solid currentColor; outline-offset:4px; }
img { max-width:100%; height:auto; }
.layout { display:grid; grid-template-columns:121px minmax(0,764px) 194px; gap:0 77px; align-items:start; max-width:1433px; margin:0 auto; padding:0 100px; }
main { min-width:0; min-height:100vh; background-color:var(--paper); padding:42px 82px 48px; }
h1,h2,h3 { line-height:1.6; overflow-wrap:anywhere; }
h1 { color:#fff; font-size:20px; margin:0 0 20px; padding-bottom:20px; border-bottom:1px solid #eee; }
h2 { color:#333; font-size:16px; margin:0 0 14px; }
h3 { color:#555; font-size:14px; margin:24px 0 12px; }
p { margin:0 0 16px; }
.intro { margin:0 0 20px; font-size:14px; }
.sidebar { color:var(--light); font-size:13px; line-height:1.6; }
.sidebar a,.sidebar a:visited,.sidebar a:hover,.sidebar a:active { text-decoration:none; }
.sidebar a:hover { color:#fff; }
.sidebar a { display:inline-block; padding:3px 0; font-weight:bold; }
.sidebar ul { list-style:none; margin:0; padding:0; }
.sidebar li { margin-bottom:17px; }
.left { text-align:right; }
.site-seal { display:block; margin:0 0 25px; }
.site-seal img { display:block; width:121px; }
.left li:first-child { margin-bottom:32px; }
.left li:nth-last-child(-n+3) { margin-bottom:5px; }
.right { padding-top:40px; }
.right h2 { margin:0 0 25px; color:var(--light); font-size:13px; }
.right li { margin:0; }
.right li:nth-child(2),.right li:nth-child(4),.right li:nth-child(6),.right li:nth-child(9),.right li:nth-child(11),.right li:nth-child(12),.right li:nth-child(13) { margin-bottom:30px; }
.book-index { margin:0 0 24px; font-size:13px; }
.book-index summary { cursor:pointer; padding:6px 0; }
.book-index ol { padding-left:22px; }
.book-index li { margin:7px 0; }
.book-card { display:flex; gap:15px; padding:24px 0; border-bottom:1px solid #eee; }
.book-card h2 a { text-decoration:none; }
.book-card h2 a:hover { text-decoration:underline; }
.cover { width:80px; height:auto; max-height:180px; object-fit:contain; align-self:flex-start; flex-shrink:0; }
.book-card>div { flex:1; min-width:0; }
.read-more { display:inline-block; padding:5px 0; font-size:13px; }
dl { display:grid; grid-template-columns:105px minmax(0,1fr); font-size:13px; margin:16px 0; }
dt,dd { margin:0; padding:6px 0; border-bottom:1px solid var(--rule); }
dd { overflow-wrap:anywhere; }
.list-bibliography { font-size:12px; grid-template-columns:90px minmax(0,1fr); }
.list-bibliography dt,.list-bibliography dd { padding:2px 0; border:0; }
.breadcrumb { font-size:12px; margin-bottom:20px; }
.book-overview { display:flex; gap:15px; margin:24px 0; }
.book-overview section { min-width:0; }
.book-detail section { margin-bottom:30px; }
.book-detail p { overflow-wrap:anywhere; }
.author-comment { border-top:1px solid #eee; padding-top:24px; }
.inline-image { margin:16px 0; }
.inline-image img { max-width:min(100%,240px); }
.site-footer { color:var(--light); text-align:center; padding:24px; font-size:12px; }
.site-footer a:hover { color:#fff; }
.site-footer p { margin-top:16px; }
.skip { position:absolute; left:16px; top:-100px; padding:16px; background:var(--paper); z-index:10; }
.skip:focus { top:16px; }
.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
@media (max-width:1300px) {
 .layout { padding:0 24px; column-gap:32px; grid-template-columns:121px minmax(0,1fr) 175px; }
 main { padding-left:40px; padding-right:40px; }
}
@media (min-width:1051px) and (max-width:1300px) {
 main { background-size:30px auto !important; }
}
@media (max-width:1050px) {
 .layout { column-gap:24px; grid-template-columns:121px minmax(0,1fr) 155px; padding:0 16px; }
 main { padding:32px 24px; }
 .sidebar { font-size:12px; }
}
@media (max-width:760px) {
 .layout { display:flex; flex-direction:column; padding:0 12px; }
 main,.sidebar { width:100%; }
 main { min-height:0; padding:28px 20px; }
 .left { text-align:left; padding:16px 0; }
 .site-seal { margin:0 0 14px; }
 .site-seal img { width:70px; }
 .left ul { display:flex; flex-wrap:wrap; gap:4px 16px; }
 .left li,.left li:first-child,.left li:nth-last-child(-n+3) { margin:0; }
 .sidebar a { padding:7px 0; }
 .right { padding:28px 8px; }
 .right ul { columns:2; }
 .right li { break-inside:avoid; }
 h1 { font-size:20px; }
 .book-overview { display:block; }
 .book-overview .cover { display:block; margin:0 0 20px; }
 dl,.list-bibliography { grid-template-columns:1fr; }
 dt,.list-bibliography dt { border:0; font-weight:bold; padding-bottom:0; }
 dd,.list-bibliography dd { padding-top:0; margin-bottom:5px; }
}
@media print {
 body { background:white; }
 .sidebar,.site-footer,.breadcrumb,.skip,.book-index { display:none; }
 .layout { display:block; padding:0; }
 main { background:white !important; padding:0; min-height:0; }
 h1 { color:#333; }
 .book-card { break-inside:avoid; }
}

/* 正誤表とエッセイ */
.correction,main>article{border-top:1px solid #eee;margin-top:28px;padding-top:26px;display:flow-root}
.correction p,main>article p{overflow-wrap:anywhere}.errata-cover{float:left;margin:0 15px 16px 0;width:80px;height:auto}
.article-index{margin-bottom:28px}.article-index ul{list-style:none;padding:0}.article-index li{margin-bottom:10px}.article-index a{display:inline-block;padding:3px 0}
main>article h2{scroll-margin-top:20px}.poem{margin:24px 0;padding:10px 18px;border-left:2px solid #998e82;font-weight:bold}.poem p{margin:0}.back-top{text-align:right;margin-top:24px;font-size:12px}em{font-style:normal;font-weight:bold}

/* Article photographs, scores and book covers keep their original proportions. */
.article-image{max-width:100%;height:auto;vertical-align:top;margin:8px 12px 12px 0}article::after{content:"";display:block;clear:both}

/* Give the left menu more room without moving the seal or article column. */
@media (min-width:761px) {
 .sidebar.left nav { width:calc(100% + 24px); margin-left:-24px; }
}
