/* 既存の教材に足した種類（担当 lang9・2026-10-18 第9弾＝読み書き）の紙面。白黒で刷る前提・影や色の面は使わない。 */
.l8anote{font-size:10pt; margin:0 0 2mm;}

/* 四方の熟語・漢字しりとり＝漢字のマス */
.l9x{display:inline-flex; align-items:center; justify-content:center; width:15mm; height:15mm; border:1.2px solid #000; font-size:24pt; box-sizing:border-box;}
.l9x.e{border:0;}
.l9x.c{border:1.6px solid #000;}
.l9crosses{flex:1 1 auto; display:grid; grid-template-columns:repeat(2,1fr); grid-auto-rows:1fr; gap:4mm 10mm; align-content:space-around; justify-items:center;}
.l9cross{position:relative; break-inside:avoid; display:flex; align-items:center;}
.l9cno{font-size:13pt; font-weight:700; min-width:8mm; align-self:flex-start;}
.l9xg{display:grid; grid-template-columns:repeat(3,15mm); grid-template-rows:repeat(3,15mm);}
.l9xg .l9x.c{width:15mm; height:15mm; border-width:2px;}
.l9bank{display:flex; flex-wrap:wrap; gap:1mm 8mm; justify-content:center; border:1px solid #000; padding:2mm; font-size:18pt; margin-bottom:3mm;}

/* 文の中の漢字 */
.l9slist{flex:1 1 auto; display:flex; flex-direction:column; justify-content:space-around; min-height:0;}
.l9srow{border-bottom:1px dotted #bbb; padding:1.4mm 0; break-inside:avoid;}
.l9srow:last-child{border-bottom:0;}
.l9sq{display:flex; align-items:baseline; gap:2mm;}
.l9no{flex:0 0 7mm; font-size:13pt; font-weight:700; text-align:center;}
.l9sent{font-size:14.5pt; line-height:2.1;}
.l9t{position:relative; text-decoration:underline; text-underline-offset:1.5mm; text-decoration-thickness:1.4px; font-weight:700; margin:0 0.5mm;}
.l9tg{position:absolute; left:0; top:-3.6mm; font-size:8.5pt; font-weight:400; line-height:1; text-decoration:none;}
.l9sa{display:flex; flex-wrap:wrap; gap:1mm 8mm; margin:0.5mm 0 0 9mm; align-items:flex-end;}
.l9bx{display:inline-flex; align-items:flex-end; gap:1.5mm;}
.l9lab{font-size:10.5pt; border:1px solid #777; padding:0 1.2mm; margin-bottom:1mm;}
.l9kb{display:inline-flex;}
.l9kb .l9kbox{width:10mm; height:10mm; margin:0;}
.l9slist.kaki .l9sent{line-height:1.85;}
.l9slist.kaki .l9srow{padding:0.8mm 0;}
.l9yl{display:inline-block; width:50mm; height:9mm; border-bottom:1px solid #000;}

/* 50音表の穴埋め */
.l9mwrap{display:flex; justify-content:center; align-items:center;}
.l9mg{display:grid; width:100%; max-width:120mm; height:100%; max-height:225mm; border-top:1px solid #000; border-left:1px solid #000;}
.l9mg.dan{max-width:180mm; max-height:120mm;}
.l9m{display:flex; align-items:center; justify-content:center; border-right:1px solid #000; border-bottom:1px solid #000; font-size:20pt; min-height:12mm;}
.l9m{position:relative;}
.l9m.e svg{position:absolute; inset:0; width:100%; height:100%;}
.l9m.b{border-width:0 1.6px 1.6px 0;}
.l9mans .l9mg{height:auto; max-width:90mm;}
.l9mans .l9mg.dan{max-width:150mm;}
.l9mans .l9m{font-size:13pt; min-height:8mm; color:#999;}
.l9mans .l9m b{color:#000; font-size:14pt;}

/* 漢字さがし */
.l9kgrid span{text-align:center;}
.l9kh{font-weight:700; border:1.4px solid #000; border-radius:50%;}

/* 漢字しりとり */
.l9chains{flex:1 1 auto; display:flex; flex-direction:column; justify-content:space-around; min-height:0;}
.l9chain{display:flex; align-items:center; break-inside:avoid;}
.l9chain .l9x{width:14mm; height:14mm; font-size:22pt;}
.l9j{display:inline-block; width:4mm; height:0; border-top:1px solid #000;}

@media print{
  .l9srow, .l9cross, .l9chain{break-inside:avoid;}
}
