
@font-face{font-family:Pre;src:url(fonts/pre-400.woff2);font-weight:400}
@font-face{font-family:Pre;src:url(fonts/pre-700.woff2);font-weight:700}
@font-face{font-family:Pre;src:url(fonts/pre-850.woff2);font-weight:850}
@font-face{font-family:JP;src:url(fonts/jp-400.woff2);font-weight:400}
@font-face{font-family:JP;src:url(fonts/jp-700.woff2);font-weight:700}
@font-face{font-family:Hand;src:url(fonts/KleeOne-kana.woff2)}
@page{size:A4;margin:0}*{box-sizing:border-box}html{background:#e7edf1}body{margin:0;color:#172c42;font-family:Pre,JP,sans-serif;font-size:17pt;line-height:1.52;word-break:keep-all}a{color:#194f78}button,a,audio{touch-action:manipulation}button{font:inherit}button:focus-visible,a:focus-visible{outline:3px solid #c65335;outline-offset:4px}
.sheet{width:210mm;height:297mm;padding:11mm 13mm 12mm;background:#fff;position:relative;overflow:hidden;break-after:page;page-break-after:always;margin:0 auto}.sheet:last-child{break-after:auto;page-break-after:auto}.content{padding-bottom:5px}.mast{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid #172c42;padding-bottom:12px;font-size:12pt;font-weight:700;color:#415f73}.mast img{width:148px;height:auto;display:block}.mast .label{padding-left:20px;text-align:right}h1{font-size:29pt;line-height:1.2;font-weight:850;letter-spacing:-1.1px;margin:20px 0 18px}h2{font-size:21pt;line-height:1.3;font-weight:850;letter-spacing:-.5px;margin:0 0 12px}p{margin:0 0 15px}.intro{margin-bottom:19px}.jp{font-family:JP,sans-serif;font-size:26pt;line-height:1.9;word-break:normal;letter-spacing:0}ruby{ruby-position:over;ruby-align:center}rt{font-family:JP,sans-serif;font-size:.5em;font-weight:400;line-height:1;color:#263f52}rp{display:none}.kana-hand{font-family:JP,sans-serif}.accent{color:#245d8d;font-weight:700}.rust{color:#a83e26}.hero{padding:18px 24px 20px;background:#edf3f7;border-left:5px solid #245d8d;margin-bottom:17px}.hero .jp{font-size:31pt;line-height:1.8;display:block}.phrase-piece{display:inline-block;white-space:nowrap}.meaning{font-size:21pt;font-weight:700;line-height:1.4;margin-top:6px}.ko-help{font-size:17pt;color:#405e73;margin-top:9px}.chunk-row{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:18px;padding:7px 0;border-bottom:1px solid #c1cdd6;min-height:82px}.chunk-row .jp{font-size:27pt;line-height:1.7}.chunk-row .gloss{font-size:17pt}.section-gap{margin-top:23px}.do-next{border-top:2px solid #172c42;padding-top:14px;margin-top:19px;font-size:17pt;font-weight:700;line-height:1.55}.note{background:#fbefe4;border-left:4px solid #c65335;padding:13px 17px;font-size:17pt;line-height:1.5;margin:18px 0 0}.foot a{font-size:12pt;font-weight:700;text-decoration:none;white-space:nowrap}.foot{position:absolute;bottom:9mm;left:13mm;right:13mm;border-top:1px solid #c1cdd6;padding-top:8px;display:flex;justify-content:space-between;gap:20px;color:#456074;font-size:10pt;line-height:1.3}.screen-only{margin:14px 0 0}.listen-pair{display:flex;gap:12px;flex-wrap:wrap}.sound{border:1px solid #547c98;color:#173d59;background:#fff;min-height:48px;padding:9px 15px;border-radius:5px;cursor:pointer;font-size:19px;font-weight:700}.sound:hover{background:#edf3f7}.player-note{font-size:17px;color:#46657b;line-height:1.4;margin:9px 0}.audio-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);margin:0}.audio-status[data-error="true"]{position:static;width:auto;height:auto;clip-path:none;margin:12px 20px;font-size:18px;line-height:1.5;color:#9a301e}.screen-top{max-width:794px;margin:20px auto;padding:0 20px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;font-size:18px}.screen-top a{background:#fff;border:1px solid #6e8da3;border-radius:5px;padding:10px 15px;text-decoration:none;min-height:48px}.route{display:flex;align-items:center;gap:14px;margin:18px 0;padding:5px 0 12px}.route .place{font-weight:850;font-size:23pt;line-height:1.2}.route svg{height:64px;flex:1}.read-cover{border-top:1px dashed #8199a9;margin-top:18px;padding-top:15px}.read-cover .jp{font-size:28pt}.blankline{display:block;height:50px;border-bottom:1px solid #8ca1b0;margin:7px 0 15px}.mini-caption{font-size:17pt;margin-top:7px}.swapline{display:grid;grid-template-columns:1fr 40px 1fr;gap:16px;align-items:center;border-bottom:1px solid #bbccd7;padding:6px 0 12px;margin:14px 0}.swapline .jp{font-size:28pt}.swapline .arrow{font-size:27pt;color:#6e8798}.swapline .mini-caption{font-weight:700}.paper-check{display:flex;gap:10px;align-items:flex-start;margin:14px 0;font-size:17pt}.check-box{width:23px;height:23px;border:2px solid #58748a;flex-shrink:0;margin-top:4px}
.first-five{display:grid;grid-template-columns:repeat(5,1fr);border-top:2px solid #245d8d;border-bottom:1px solid #b7c9d5;margin:18px 0 22px}.first-cell{text-align:center;padding:18px 4px 16px;border-right:1px solid #c8d5de}.first-cell:last-child{border-right:0}.first-cell .glyph{font-size:54pt;line-height:1.18;display:block}.first-cell .ko{font-size:19pt;margin-top:5px;display:block}.practice-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:9px;margin-top:13px}.write-box{height:auto;aspect-ratio:1/1;border:1.3px solid #6a8497;position:relative;display:flex;align-items:center;justify-content:center;background:linear-gradient(to right,transparent calc(50% - .5px),#c4d1da 50%,transparent calc(50% + .5px)),linear-gradient(to bottom,transparent calc(50% - .5px),#c4d1da 50%,transparent calc(50% + .5px))}.write-box .trace{font-family:Hand,JP,sans-serif;font-size:45pt;color:#718ba0;line-height:1}.write-labels{display:grid;grid-template-columns:repeat(5,1fr);text-align:center;margin-top:9px;font-size:17pt}.chart{margin-top:17px}.chart-header{display:grid;grid-template-columns:repeat(5,1fr);text-align:center;color:#3e5e75;font-size:17pt;font-weight:700;padding-bottom:9px;border-bottom:2px solid #245d8d}.chart-row{display:grid;grid-template-columns:repeat(5,1fr);border-bottom:1px solid #c0d0dc}.chart-cell{text-align:center;padding:5px 3px 6px;border-right:1px solid #d0dce5;min-height:113px}.chart-cell:last-child{border-right:0}.chart-cell .glyph{font-size:39pt;line-height:1.15;display:block}.chart-cell .ko{display:block;font-size:17pt;line-height:1.35;margin-top:2px}.chart-cell .small-blank{font-size:17pt;color:#60798a;display:block;margin-top:34px}.n-row{display:grid;grid-template-columns:83px 1fr;align-items:center;gap:18px;padding:8px 0;min-height:97px;border-bottom:1px solid #bdceda}.n-row .digit{font-size:32pt;font-weight:850;color:#245d8d;line-height:1.15}.n-row .jp{font-size:29pt;line-height:1.3;display:block}.n-row .ko{font-size:17pt;text-align:left;display:block;line-height:1.3}.n-head{border-top:2px solid #245d8d}.recall-numbers{font-size:31pt;font-weight:850;letter-spacing:6px;line-height:1.4;margin-top:13px}.join-row{padding:18px 0 21px;border-top:1px solid #b9ccd9}.join-row .formula{font-size:23pt;font-weight:850;line-height:1.2;margin-bottom:11px}.join-row .jp{font-size:30pt;line-height:1.8}.join-row .ko{font-size:17pt;margin-top:8px}.join-row .part-ten{color:#245d8d;font-weight:700}.join-row .part-one{color:#a84028;font-weight:700}.answer-fold{margin-top:20px;border-top:2px dashed #7f96a7;padding-top:15px}.answer-fold .jp{font-size:26pt}.hub{max-width:980px;margin:0 auto;padding:42px 34px 50px;background:#fff;min-height:100vh}.hub header img{width:210px;height:auto}.hub h1{font-size:47px;line-height:1.2;margin:45px 0 20px}.hub .lead{font-size:23px;line-height:1.65;max-width:780px}.gift-row{display:grid;grid-template-columns:90px 1fr;gap:25px;border-top:1px solid #aebfcc;padding:29px 0}.gift-no{font-size:50px;font-weight:850;color:#245d8d;line-height:1.1}.gift-row h2{font-size:29px;margin-bottom:10px}.gift-row p{font-size:21px;line-height:1.6}.gift-links{display:flex;gap:12px;flex-wrap:wrap}.gift-links a{padding:12px 18px;min-height:48px;border:1px solid #486f8b;border-radius:5px;text-decoration:none;font-size:19px;font-weight:700}.gift-links a.primary{background:#245d8d;color:white}.hub footer{border-top:1px solid #bacbd6;padding-top:20px;font-size:17px;color:#466276;line-height:1.6}
.compact-chart .chart-cell{min-height:105px}.n-pair{display:flex;gap:20px;align-items:center}.kana-reading{font-size:17pt;line-height:1.3}.long-tone-note{font-size:17pt;line-height:1.5;margin-top:8px}@media print{html{background:white}.screen-only,.screen-top,.audio-status{display:none!important}.sheet{margin:0}}
@media screen{.foot>span:last-child{white-space:nowrap;flex-shrink:0}.print-only{display:none}.sheet{height:auto;min-height:297mm;margin:24px auto;padding-bottom:22px;box-shadow:0 3px 22px #263b4b14;overflow:visible}.foot{position:static;margin-top:28px}.sheet .content{padding-bottom:0}}
@media screen and (max-width:760px){html{background:#fff}body{font-size:20px}.screen-top{margin:12px auto;padding:0 20px;font-size:18px}.sheet{width:100%;height:auto;min-height:0;padding:22px 20px 27px;margin:0;box-shadow:none;border-bottom:12px solid #e6edf2;overflow:visible}.mast{font-size:14px;gap:8px}.mast img{width:145px}.mast .label{padding-left:0;max-width:160px;font-size:14px}h1{font-size:32px;line-height:1.23;letter-spacing:-.8px;margin:25px 0 18px}h2{font-size:25px}.jp{font-size:31px}.hero{padding:20px 14px}.hero .jp{font-size:32px;line-height:1.85}.meaning{font-size:25px}.ko-help,.mini-caption,.do-next,.note,.paper-check,.player-note,.chunk-row .gloss,.long-tone-note,.kana-reading{font-size:20px}.chunk-row{grid-template-columns:1.1fr 1fr;gap:12px;padding:9px 0;min-height:0}.chunk-row .jp{font-size:31px}.route .place{font-size:27px}.route svg{height:55px}.foot{font-size:13px;position:static;margin-top:25px}.read-cover .jp{font-size:31px}.swapline{grid-template-columns:1fr 23px 1fr;gap:6px}.swapline .jp{font-size:31px}.first-five{grid-template-columns:repeat(5,1fr)}.first-cell{padding:13px 2px}.first-cell .sound,.chart-cell .sound{font-size:18px;padding:8px 6px;min-height:44px}.first-cell .glyph{font-size:42px}.first-cell .ko{font-size:21px}.practice-grid{gap:5px}.write-box{height:auto;aspect-ratio:1/1}.write-box .trace{font-size:36px}.write-labels{font-size:20px}.chart-header{font-size:20px}.chart-cell{min-height:96px;padding:8px 1px 9px}.chart-cell .glyph{font-size:40px}.chart-cell .ko{font-size:19px}.chart-cell .small-blank{font-size:17px;margin-top:27px}.n-row{grid-template-columns:52px 1fr 76px;gap:8px;min-height:99px;padding:12px 0}.n-row .digit{font-size:37px}.n-row .jp{font-size:32px}.n-row .ko{font-size:20px}.recall-numbers{font-size:32px;letter-spacing:2px}.join-row .formula{font-size:29px}.join-row .jp{font-size:32px}.join-row .ko{font-size:20px}.answer-fold .jp{font-size:29px}.hub{padding:28px 20px 35px}.hub header img{width:190px}.hub h1{font-size:37px;margin-top:36px}.hub .lead{font-size:21px}.gift-row{grid-template-columns:46px 1fr;gap:15px}.gift-no{font-size:34px}.gift-row h2{font-size:26px}.gift-row p{font-size:20px}.gift-links a{font-size:18px;padding:11px 14px}}
