/* 既存の無料の教材に足した種類（lang7＝呼称・喚語・意味）の紙面。白黒で刷る前提＝色で区別しない。 */
.l7cell{display:inline-block; min-width:30mm; height:9mm; border-bottom:1px solid #555; vertical-align:bottom; margin:0 1mm;}
.l7cell.wide{min-width:45mm;}
.l7cells{flex:1 1 100%; display:grid; grid-template-columns:repeat(3,1fr); gap:0 6mm; margin:1mm 0 0 7mm;}
.l7cells .l7cell{min-width:0; margin:0;}
.l7fix{font-size:13pt; margin:0 2mm;}
.l7eq{font-size:13pt; margin:0 2mm;}
.l7w{font-size:14pt; min-width:26mm;}

/* 3段の木 */
.l7tree{flex:1 1 100%; display:flex; flex-direction:column; gap:1.5mm; margin:1mm 0 0 7mm; border-left:1px solid #777; padding-left:3mm;}
.l7tree > div{display:flex; align-items:baseline; font-size:12.5pt;}
.l7tree > div:nth-child(2){margin-left:6mm;}
.l7tree > div:nth-child(3){margin-left:12mm;}
.l7tree b{font-weight:400; font-size:10pt; color:#444; min-width:30mm;}
.l7ti{border-bottom:1px dotted #bbb; padding:1.5mm 0 2.5mm;}

/* 見方を変えて分ける */
.l7sets{flex:1 1 auto; display:flex; flex-direction:column; justify-content:space-around; gap:5mm;}
.l7set{border:1px solid #999; padding:2mm 3mm; break-inside:avoid;}
.l7set .bank{margin-bottom:1.5mm;}
.l7set .bgrid{gap:2mm 4mm;}
.l7set .bbox{padding:1mm 2mm;}
.l7set .bbox .bh{margin-bottom:1mm; padding-bottom:0.5mm;}
.l7wh{font-size:12pt; margin:1.5mm 0 1mm;}
.l7set .bbox .bl{height:5.5mm; min-height:5mm; flex:0 0 auto;}
.l7set.big .bbox .bl{height:10mm;}
.l7bhb{display:inline-block; width:100%; height:6mm;}

/* マスの数に合うことば */
.l7mgrid{flex:1 1 auto; display:grid; grid-template-columns:repeat(2,1fr); align-content:space-around; gap:6mm 10mm;}
.l7mr{display:flex; align-items:center; gap:3mm;}
.l7masu{margin:0;}
.l7masu span{width:13mm; height:13mm; font-size:16pt; display:inline-flex; align-items:center; justify-content:center;}

/* まとめることば */
.l7mat{border-bottom:1px dotted #bbb; padding:1mm 0 1.5mm;}
.l7mat .schoice{margin-left:7mm;}
.l7mline{display:flex; align-items:baseline; gap:2mm; margin:1.5mm 0 0 7mm; font-size:12pt;}

/* ヒント3つ・説明 */
.l7three{border-bottom:1px dotted #bbb; padding:1.5mm 0 2mm;}
.l7hs{margin:0 0 0 2mm; padding-left:6mm; font-size:12.5pt; line-height:1.6;}
.l7hl{display:flex; align-items:baseline; gap:3mm; margin:1mm 0 0 7mm; font-size:12.5pt;}
.l7hl > span:first-child{flex:0 0 auto; font-size:10pt; border:1px solid #777; padding:0 1.5mm;}
.l7ht{flex:1 1 auto;}
.l7ln{flex:1 1 auto; border-bottom:1px solid #888; height:8mm;}
.l7big{font-size:15pt;}
.l7opts{margin:1mm 0 0 7mm; font-size:12pt; line-height:1.7;}
.l7two2{display:flex; align-items:baseline; gap:2mm; margin:1.5mm 0 0 7mm; font-size:12pt;}
.l7two2 > span:first-child{min-width:26mm; font-size:10.5pt; color:#444;}
.l7yn span{width:14mm !important; font-size:13pt;}
