:root{--paper:#f6f2e9;--sheet:#fffcf5;--ink:#2b2340;--purple:#3d2f5c;--rust:#a5523a;--line:#d9d2c2;--muted:#706a76;--green:#446853;--frame:300px;color-scheme:light}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Yu Gothic","Meiryo",sans-serif;line-height:1.8}a{color:inherit;text-underline-offset:5px}button,input,select,textarea{font:inherit}button,.button{display:inline-block;cursor:pointer;border:1px solid var(--purple);background:var(--purple);color:var(--sheet);padding:10px 19px;border-radius:3px;text-decoration:none;line-height:1.5}button:hover,.button:hover{filter:brightness(1.13)}button:disabled{opacity:.5;cursor:default}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--rust);outline-offset:4px}.quiet{background:transparent;color:var(--purple);border-color:var(--line)}.skip{position:fixed;top:-80px;z-index:30;background:var(--sheet);padding:12px}.skip:focus{top:0}header{border-bottom:1px solid var(--line);background:var(--paper)}.header-inner{max-width:1240px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 34px}.brand{display:flex;gap:12px;align-items:center;text-decoration:none;white-space:nowrap}.brand img{width:43px;height:43px}.brand span{display:block;font-size:19px;font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:bold;letter-spacing:.12em}.brand small{display:block;font-size:9px;letter-spacing:.25em;line-height:1.3}nav{display:flex;gap:23px;flex-wrap:wrap}nav a{font-size:13px;text-decoration:none;padding:4px 0}nav a[aria-current=page]{border-bottom:2px solid var(--rust)}main{max-width:1170px;margin:auto;padding:36px 30px 70px}h1,h2,h3{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;line-height:1.5;font-weight:600}h1{font-size:42px;margin:12px 0 20px;letter-spacing:.08em}h2{font-size:27px}h3{font-size:21px}p{margin:12px 0}.eyebrow{font-size:11px;letter-spacing:.2em;color:var(--rust);font-weight:bold}.muted,small{color:var(--muted)}.breadcrumb{font-size:12px;color:var(--muted);display:flex;gap:12px;flex-wrap:wrap;margin-bottom:24px}.hero{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;min-height:360px;border-bottom:1px solid var(--line);padding-bottom:35px}.hero h1{font-size:49px;letter-spacing:.1em;margin-top:16px}.hero p:not(.eyebrow){max-width:490px;font-size:14px;line-height:2}.hero img{width:100%;max-width:500px}.actions{display:flex;flex-wrap:wrap;gap:10px;margin:22px 0}.section-head{display:flex;justify-content:space-between;align-items:baseline;gap:20px;margin-top:50px}.section-head h2{margin:0}.filters{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:23px 0;margin:24px 0}.search-row{display:flex;gap:12px;align-items:end;margin-bottom:15px}.search-row label{flex:1}.search-row label span{display:block;font-size:12px;margin-bottom:6px}input[type=search],input[type=text],textarea,select{border:1px solid var(--line);background:var(--sheet);color:var(--ink);border-radius:3px;padding:10px 12px;max-width:100%}input[type=search]{width:100%}.chips{display:flex;gap:7px;flex-wrap:wrap}.chip{font-size:12px;padding:7px 13px;background:transparent;color:var(--ink);border-color:var(--line)}.chip[aria-pressed=true]{background:var(--purple);color:var(--sheet);border-color:var(--purple)}.extra-filters{display:flex;flex-wrap:wrap;gap:18px;align-items:center;margin-top:16px;font-size:12px}.results-info{font-size:12px;margin:20px 0}.books{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.book{background:var(--sheet);border:1px solid var(--line);border-left:4px solid #b9abbe;padding:24px;position:relative;min-height:222px;display:flex;flex-direction:column}.book[data-era=奈良]{border-left-color:#9f7459}.book[data-era=鎌倉]{border-left-color:#7d8b73}.book[data-era=江戸]{border-left-color:#7b8e97}.book[data-era=昔話]{border-left-color:#bc9c64}.book h3{margin:10px 0 0;font-size:23px}.book .reading{font-size:10px;letter-spacing:.1em;margin:0}.book .meta{font-size:11px;margin-top:12px}.book .blurb{font-size:12px;margin:8px 0 16px;flex:1}.book-bottom{display:flex;align-items:center;justify-content:space-between;font-size:11px;gap:8px}.badge{display:inline-block;font-size:10px;padding:2px 8px;background:#ece6f0;color:var(--purple);border-radius:2px}.textbook{font-size:10px;color:var(--rust)}.sample{margin:60px 0 20px;padding:35px;border:1px solid var(--line);display:grid;grid-template-columns:1fr 1.4fr;gap:40px;background:var(--sheet)}.sample .vertical-title{writing-mode:vertical-rl;font-size:40px;letter-spacing:.2em;margin:0 auto;min-height:240px}.notice{padding:14px 18px;border-left:3px solid var(--rust);background:#ede5db;font-size:13px;margin:20px 0}.panel{padding:26px;border:1px solid var(--line);background:var(--sheet);margin:20px 0}.chapter-list{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;list-style:none;padding:0}.chapter-list li{border-bottom:1px solid var(--line);padding:14px 8px}.chapter-list b{font-family:serif;font-size:20px}.chapter-list small{display:block;font-size:10px}.chapter-list .number{font-size:11px;margin-right:9px;color:var(--rust)}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px}.people{display:flex;gap:8px;flex-wrap:wrap}.people a{font-size:13px}.toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;font-size:12px;margin:14px 0}.toolbar button,.toolbar select{font-size:12px;padding:7px 10px}.toolbar label{display:flex;gap:7px;align-items:center}.read-guide{border-bottom:1px solid var(--line);padding-bottom:16px}.read-guide summary{cursor:pointer}.reader-page{padding-bottom:calc(var(--frame) + 65px)}.reader-page h1{font-size:30px;margin:10px 0}.reader-page .breadcrumb{margin-bottom:12px}.original-scroll{border:1px solid var(--line);background:var(--sheet);height:clamp(290px,40vh,430px);overflow-x:auto;overflow-y:hidden;overscroll-behavior:contain;padding:20px;direction:rtl;scrollbar-color:var(--purple) var(--paper)}.original-text{writing-mode:vertical-rl;direction:ltr;height:100%;font-family:"Yu Mincho","Hiragino Mincho ProN","Noto Serif CJK JP",serif;font-size:21px;line-height:2.5;letter-spacing:.06em;width:max-content;min-width:100%;padding-left:20px}.original-text p{margin:0 0 0 25px;white-space:normal}.segment{font:inherit;line-height:inherit;letter-spacing:inherit;color:var(--ink);border:0;border-radius:0;border-bottom:1px dotted var(--line);padding:0;background:transparent;display:inline;cursor:pointer;text-align:inherit}.segment:hover{background:#ede6db;filter:none}.segment.active{background:#e9dff0;color:var(--purple);box-shadow:inset -3px 0 var(--purple)}.seen{color:var(--green)}rt{font-family:"Yu Gothic",sans-serif;font-size:.45em;letter-spacing:0}.hide-ruby rt{visibility:hidden}.tcy{text-combine-upright:all}.reader-frame{position:fixed;z-index:10;bottom:0;left:50%;transform:translateX(-50%);width:min(980px,calc(100% - 32px));height:var(--frame);background:var(--sheet);border:1px solid var(--purple);border-top:4px solid var(--purple);border-radius:2px 2px 0 0;padding:18px 30px;box-shadow:0 -8px 30px #2b23400c;color:var(--ink);text-align:initial;display:flex;flex-direction:column;align-items:stretch}.reader-frame:hover{filter:none;background:#fffaf0}.frame-top{display:flex;justify-content:space-between;gap:15px;font:11px "Yu Gothic",sans-serif;color:var(--muted);height:22px;flex-shrink:0}.frame-content{display:flex;flex:1;min-height:0;justify-content:center;gap:25px;flex-direction:row-reverse;overflow:auto}.frame-content>span{writing-mode:vertical-rl;font-family:"Yu Mincho",serif;font-size:23px;line-height:1.8;max-width:44%;height:100%;overflow:visible;overflow-wrap:anywhere;letter-spacing:.05em}.frame-content .frame-reading{font-family:"Yu Gothic",sans-serif;font-size:13px;color:var(--muted);max-width:20%}.frame-content .frame-modern{color:var(--rust);font-size:19px}.frame-content .frame-start{writing-mode:horizontal-tb;align-self:center;text-align:center;font-size:21px;max-width:100%}.frame-bottom{font-size:10px;color:var(--muted);height:18px;text-align:center;flex-shrink:0}.reader-frame:focus-visible{outline-offset:-7px}.horizontal .original-text{writing-mode:horizontal-tb;width:100%;font-size:19px;min-height:100%;height:auto;padding:0}.horizontal .original-scroll{overflow-y:auto;direction:ltr}.horizontal .original-text p{margin:0 0 20px}.horizontal .frame-content{flex-direction:column;align-items:center;gap:8px;overflow:auto}.horizontal .frame-content>span{writing-mode:horizontal-tb;height:auto;max-width:100%;font-size:19px}.horizontal .frame-content .frame-reading{font-size:12px}.horizontal .frame-content .frame-modern{font-size:16px}.translation p{line-height:2.2}.translation{font-size:16px}.read-mode-original .translation,.read-mode-original .frame-modern{display:none}.plain-reader{height:65vh}.plain-reader .original-text{font-size:24px}.paragraph-records{display:flex;gap:12px;flex-wrap:wrap}.paragraph-records button{font-size:12px}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.stat{border:1px solid var(--line);background:var(--sheet);padding:22px}.stat strong{font:36px serif;display:block}.choice-list{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:25px 0}.question{max-width:720px}.question .example{font-family:serif;font-size:26px;padding:25px 0}.review-row{border-bottom:1px solid var(--line);padding:18px 0;display:flex;justify-content:space-between;gap:16px;align-items:center}.review-row small{display:block;font-size:12px}.prose{max-width:800px}.prose h2{margin-top:35px}.prose li{margin-bottom:8px}footer{border-top:1px solid var(--line);padding:25px 34px;display:flex;gap:24px;justify-content:center;font-size:12px;flex-wrap:wrap}.save-status{position:fixed;top:0;left:0;right:0;z-index:25;background:#a5523a;color:white;padding:10px;text-align:center}.empty{grid-column:1/-1;padding:35px;text-align:center;border:1px solid var(--line)}[hidden]{display:none!important}.js-only{display:none}.js .js-only{display:initial}.js .reader-frame{display:flex}noscript .notice{margin-top:0}
.js .toolbar.js-only,.js .actions.js-only{display:flex}.reader-settings{font-size:12px;margin:12px 0}.reader-settings summary{cursor:pointer}.reader-settings .toolbar{margin-bottom:4px}
.read-mode-modern .reader-frame{display:none}.read-mode-modern .reader-page{padding-bottom:30px}.frame-content>span{overflow:auto;scrollbar-width:thin}.waka-lines{display:inline-flex;writing-mode:vertical-rl;gap:1.8em;line-height:1.8;font-family:"Yu Mincho",serif;font-size:1.15em;margin:14px 8px;vertical-align:top}.waka-lines>span{display:block}.segment .waka-lines{margin:0;gap:1em;font-size:inherit}.family-tree{list-style:none;padding:0}.family-tree li{display:flex;align-items:center;gap:15px;flex-wrap:wrap;margin:12px 0}.family-tree .relation{border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:12px;padding:4px 18px}.horizontal .segment .waka-lines{writing-mode:horizontal-tb;display:block}
@media(max-width:800px){.header-inner{padding:18px 20px;display:block}nav{margin-top:16px;gap:19px}.hero h1{font-size:38px}.books{grid-template-columns:repeat(2,1fr)}.chapter-list{grid-template-columns:repeat(3,1fr)}.hero{grid-template-columns:1.1fr .9fr;min-height:320px}.sample{gap:20px;padding:25px}.two-col{grid-template-columns:1fr}.brand span{font-size:18px}}
@media(max-width:520px){:root{--frame:320px}main{padding:24px 18px 45px}.hero{display:block;position:relative;min-height:350px;padding-bottom:28px}.hero h1{font-size:36px;max-width:290px}.hero img{position:absolute;width:175px;right:-10px;top:10px;opacity:.35;z-index:-1}.hero p:not(.eyebrow){font-size:13px;max-width:330px}.hero .actions{margin-top:24px}h1{font-size:32px}h2{font-size:24px}.section-head{margin-top:35px;gap:10px}.section-head>a{font-size:11px}.books{grid-template-columns:1fr 1fr;gap:10px}.book{padding:16px 12px;min-height:235px}.book h3{font-size:20px}.book .meta,.book .blurb{font-size:11px}.book-bottom{display:block}.book-bottom a{display:block;margin-top:8px}.search-row{display:block}.search-row select{margin-top:10px}.extra-filters{gap:12px}.sample{grid-template-columns:65px 1fr;padding:22px 15px;gap:10px}.sample h2{font-size:23px}.sample p{font-size:13px}.sample .vertical-title{font-size:29px;min-height:260px}.chapter-list{grid-template-columns:repeat(2,1fr)}.chapter-list li{padding:10px 4px}.panel{padding:18px}.reader-page{padding-bottom:calc(var(--frame) + 50px)}.reader-page h1{font-size:25px}.reader-page .eyebrow{font-size:9px}.reader-frame{width:calc(100% - 16px);padding:14px 13px}.frame-content{gap:13px}.frame-content>span{font-size:20px}.frame-content .frame-modern{font-size:17px}.frame-content .frame-reading{font-size:12px}.original-scroll{height:310px;padding:14px}.original-text{font-size:20px;line-height:2.4}.toolbar{gap:8px}.toolbar button{padding:6px 8px}.stats{gap:8px}.stat{padding:12px;font-size:11px}.stat strong{font-size:29px}.choice-list{grid-template-columns:1fr}.question .example{font-size:23px}.plain-reader{height:65vh}.read-guide{font-size:12px}.notice{font-size:12px}.header-inner nav{gap:17px}nav a{font-size:12px}.review-row{align-items:start}footer{padding:22px 18px;gap:16px}}
@media(max-width:520px){.hero h1{font-size:31px;max-width:none}.reader-page .eyebrow{margin:6px 0}.reader-page .breadcrumb{margin-bottom:10px}.reader-page h1{font-size:23px;margin:5px 0}.reader-page .toolbar{margin:8px 0}.reader-settings{margin:6px 0}.reader-page .original-scroll{height:310px}}

.waka-lines{flex-direction:column}.frame-waka{margin:0;font-size:1em;gap:1em}.frame-waka>span>span{display:block}

.frame-content .frame-original.is-waka{font-size:20px;line-height:1.1}.frame-waka{gap:.7em}
