/* 構音・発話の教材（追加分 speech2）の紙面。クラスは .xs2- で始める。 */

/* 共通：下線と記録の□ */
.xs2-kt u, .xs2-mb u, .xs2-yt u{text-decoration:underline; text-decoration-thickness:1.6px; text-underline-offset:3px;}
.xs2-bxs{display:inline-flex; gap:1.5mm; flex:0 0 auto; margin-left:auto; align-self:center;}
.xs2-bx{display:inline-block; width:6mm; height:6mm; border:1px solid #555;}
.xs2-kt rt, .xs2-mb rt, .xs2-yt rt, .xs2-pk rt, .xs2-ys rt, .xs2-mt rt{font-size:.5em; letter-spacing:0;}

/* 構音文 */
.xs2-ki{display:flex; align-items:baseline; gap:0 2mm; padding:1.5mm 0; border-bottom:1px dotted #bbb;}
.xs2-ki:last-child{border-bottom:none;}
.xs2-kt{flex:1 1 auto; line-height:1.9; letter-spacing:.04em;}
.xs2-kt.xs2-ruby{line-height:2.2;}

/* ペーシング */
.xs2-pgrid{flex:1 1 auto; align-content:space-around;}
.xs2-pi{display:flex; align-items:center; gap:0 2mm;}
.xs2-pr{display:flex; flex-wrap:wrap; align-items:flex-end; gap:3mm 4mm; flex:1 1 auto;}
.xs2-pi.word .xs2-pr{flex-direction:column; align-items:flex-start; gap:0;}
.xs2-pw{font-size:.5em; color:#666;}
.xs2-pg{display:inline-flex; flex-wrap:nowrap; align-items:flex-end; gap:0 1mm;}
.xs2-pc{display:inline-flex; flex-direction:column; align-items:center; min-width:1.25em;}
.xs2-pk{line-height:1.25;}
.xs2-pd{display:block; width:3.2mm; height:3.2mm; border-radius:50%; background:#222; margin-top:1.2mm;}
.xs2-pc.xs2-masu .xs2-pk{border:1px solid #444; padding:.08em .12em; min-width:1.15em; text-align:center;}
.xs2-pc.bun{margin-right:2mm;}
.xs2-pc.bun{flex:0 0 auto;}
.xs2-pc.bun .xs2-pk{line-height:1.9; white-space:nowrap;}
.xs2-pc.bun.xs2-masu .xs2-pk{padding:0 .25em;}
.xs2-pe{margin-left:-1mm; align-self:flex-start; line-height:2.6;}
.xs2-pp{align-self:flex-start; line-height:1.25;}

/* 交互音節 */
.xs2-ti{padding:.5mm 0 1mm; border-bottom:1px dotted #bbb;}
.xs2-ti:last-child{border-bottom:none;}
.xs2-th{display:flex; align-items:baseline; gap:0 3mm;}
.xs2-ts{font-size:17pt; line-height:1.3; font-weight:700; letter-spacing:.1em;}
.xs2-tm{font-size:11pt; color:#555; letter-spacing:.05em; overflow:hidden; white-space:nowrap;}
.xs2-tt{border-collapse:collapse; margin:1mm 0 0 6mm; font-size:10.5pt;}
.xs2-tt th, .xs2-tt td{border:1px solid #888; padding:.5mm 2.5mm; text-align:center;}
.xs2-tt th{font-weight:400; background:#f4f4f4;}
.xs2-tt td{width:30mm; text-align:right;}
.xs2-tb{display:inline-block; width:16mm;}
.xs2-tmemo{margin:1mm 0 0 6mm; font-size:10pt; color:#444; border-bottom:1px solid #aaa; padding-bottom:2.5mm;}

/* 抑揚 */
.xs2-yl{display:flex; gap:6mm; font-size:10pt; color:#444; margin-bottom:2mm;}
.xs2-yl span{display:inline-flex; align-items:center; gap:1mm;}
.xs2-ar{width:6mm; height:6mm; flex:0 0 auto; fill:none; stroke:#222; stroke-width:2.6; stroke-linecap:round; stroke-linejoin:round;}
.xs2-ar rect, .xs2-ar circle{fill:#222; stroke:none;}
.xs2-yl .xs2-ar{width:4.5mm; height:4.5mm;}
.xs2-yi{padding:1mm 0; border-bottom:1px dotted #bbb;}
.xs2-yi:last-child{border-bottom:none;}
.xs2-yh{height:0;}
.xs2-yr{display:flex; align-items:center; gap:0 3mm; padding:.6mm 0 .6mm 6mm;}
.xs2-yr.solo{padding-left:0;}
.xs2-yn{display:inline-flex; align-items:center; gap:1mm; width:24mm; flex:0 0 auto; font-size:10pt; color:#444;}
.xs2-yt{flex:1 1 auto; line-height:1.9;}
.xs2-cv{width:18mm; height:7mm; flex:0 0 auto; fill:none; stroke:#555; stroke-width:1.6; stroke-linecap:round; stroke-linejoin:round;}
.xs2-y5{padding:1mm 0; border-bottom:1px dotted #bbb;}
.xs2-y5:last-child{border-bottom:none;}
.xs2-ys{font-size:11.5pt; line-height:1.9; display:flex; align-items:baseline; gap:0 2mm;}
.xs2-yb{font-size:9pt; border:1px solid #888; padding:0 1.5mm; flex:0 0 auto;}
.xs2-ych{display:inline-flex; gap:3mm; flex:0 0 auto;}
.xs2-ya{font-size:10.5pt; color:#444; width:18mm;}

/* 物語 */
.xs2-mt{font-size:16pt; font-weight:700; text-align:center; margin:0 0 2mm; line-height:2;}
.xs2-mb{flex:1 1 auto; min-height:0; letter-spacing:.03em;}
.xs2-mb p{margin:0; text-indent:1em;}
.xs2-mr{border-collapse:collapse; width:100%; font-size:10pt; margin-top:2mm; flex:0 0 auto;}
.xs2-mr th, .xs2-mr td{border:1px solid #888; padding:1.2mm 2mm; height:7mm;}
.xs2-mr th{font-weight:400; background:#f4f4f4; white-space:nowrap;}
.xs2-mr td:nth-child(2){width:20mm; text-align:center;}
.xs2-mr td:nth-child(3){width:30mm; text-align:right;}

@media print{
  .xs2-tt th, .xs2-mr th{-webkit-print-color-adjust:exact; print-color-adjust:exact;}
}
