/* 単元ドリル「プリント」：A4・1枚に詰めた紙面（PDF出力技術 仕様書 §2-4）
   UNIT_MASTER.print.fit が true の単元だけに #pr-sheet.pr-fit が付く。
   - 紙面を A4 の印刷範囲の高さに広げ、問題欄の行を残りの高さいっぱいに均等に伸ばす。
   - 各問の最小の高さ（cellMinH）は使わず、余白・解答線・答えの並びを詰める。
   - 中身が入りきらないときは紙面が伸びて2頁になり、1枚の検査で見つかる（はみ出しを隠さない）。
   画面（印刷ボタンの撮影）とブラウザ印刷の両方に効かせるため、高さ以外は @media の外に書く。 */

#pr-sheet.pr-fit {
  display:grid !important; box-sizing:border-box;
  grid-template-columns:auto auto minmax(0,1fr);
  grid-template-rows:auto auto auto auto minmax(0,1fr) auto auto auto;
  min-height:290mm;
}
#pr-sheet.pr-fit[data-force-landscape="1"] { min-height:204mm; }
#pr-sheet.pr-fit > * { grid-column:1 / -1; }
#pr-sheet.pr-fit > .pr-title-box { grid-row:1; padding:3pt 0 !important; margin-bottom:3pt !important; }
#pr-sheet.pr-fit > .pr-header-row1 { grid-row:2; grid-column:auto; width:auto !important; min-width:0 !important; }
#pr-sheet.pr-fit > .pr-solid { grid-row:3; margin:2pt 0 3pt !important; }
#pr-sheet.pr-fit > .pr-inst { grid-row:4; margin-bottom:2pt !important; }
#pr-sheet.pr-fit > #pr-problems { grid-row:5; align-content:stretch !important; row-gap:4pt !important; column-gap:8pt !important; }
/* 列の幅は中身で広げない（広がると紙の幅を超え、ブラウザ印刷が紙面全体を縮める） */
#pr-sheet.pr-fit > #pr-problems.pr-cols2 { grid-template-columns:repeat(2,minmax(0,1fr)) !important; }
#pr-sheet.pr-fit > #pr-problems.pr-cols3 { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
#pr-sheet.pr-fit > #pr-problems.pr-cols4 { grid-template-columns:repeat(4,minmax(0,1fr)) !important; }
#pr-sheet.pr-fit > #pr-problems.pr-cols5 { grid-template-columns:repeat(5,minmax(0,1fr)) !important; }
#pr-sheet.pr-fit > .pr-dashed { grid-row:6; margin:4pt 0 2pt !important; }
#pr-sheet.pr-fit > .pr-ans-header { grid-row:7; margin-bottom:1pt !important; }
#pr-sheet.pr-fit > #pr-answers { grid-row:8; }
#pr-sheet.pr-fit[data-force-landscape="1"] > #pr-answers { grid-template-columns:repeat(10,minmax(0,1fr)) !important; }
#pr-sheet.pr-fit .pr-row { padding:3pt 5pt !important; gap:1pt !important; min-height:0 !important; }
#pr-sheet.pr-fit .pr-ans-write { min-height:15pt !important; }
#pr-sheet.pr-fit .pr-graph-block { padding-bottom:1pt !important; }
/* 選択肢は横に並べ、問題文と同じ大きさで読めるようにする */
#pr-sheet.pr-fit .pr-choice-list { display:flex !important; flex-wrap:wrap; column-gap:14pt; row-gap:1pt; font-size:12.5pt !important; line-height:1.25 !important; }

/* 表：セルの余白を詰め、問題文の前にある表は問題文の左に置く */
#pr-sheet.pr-fit .pr-q table td, #pr-sheet.pr-fit .pr-q table th,
#pr-sheet.pr-fit .pr-graph-block table td, #pr-sheet.pr-fit .pr-graph-block table th { padding:1pt 6pt !important; height:auto !important; line-height:1.25 !important; }
#pr-sheet.pr-fit .pr-q table, #pr-sheet.pr-fit .pr-graph-block table { margin:1pt auto !important; }
#pr-sheet.pr-fit .pr-q:has(> table:first-child) { display:grid !important; grid-template-columns:auto minmax(0,1fr); column-gap:6pt; align-items:center; }

/* 文字の多い単元：行間・解答線を少し詰める（UNIT_MASTER.print.fitTight） */
#pr-sheet.pr-fit-tight .pr-q { line-height:1.12 !important; }
#pr-sheet.pr-fit-tight > #pr-problems { row-gap:3pt !important; }
#pr-sheet.pr-fit-tight .pr-ans-write { min-height:13pt !important; }

/* 図を問題文の右に置く（UNIT_MASTER.print.fitSide）。図の幅は図の中の文字の大きさ（fitSvgPt）で決まる */
#pr-sheet.pr-fit-side .pr-row { display:grid !important; grid-template-columns:minmax(0,1fr) auto; grid-template-rows:auto 1fr auto; column-gap:6pt; }
#pr-sheet.pr-fit-side .pr-row > * { grid-column:1; }
#pr-sheet.pr-fit-side .pr-row > .pr-row-header { grid-row:1; }
#pr-sheet.pr-fit-side .pr-row > .pr-choice-list { grid-row:2; align-self:start; }
#pr-sheet.pr-fit-side .pr-row > .pr-ans-box { grid-row:3; }
#pr-sheet.pr-fit-side .pr-row > .pr-graph-block { grid-column:2; grid-row:1 / span 3; align-self:center; padding-bottom:0 !important; }

@media print {
  #page-print #pr-sheet.pr-fit { display:grid !important; min-height:268mm; }
  #page-print #pr-sheet.pr-fit[data-force-landscape="1"] { min-height:186mm; }
}

/* ── 単元ごとの調整（単元仕様書の印刷の節に対応） ── */
/* addition_meaning：A4横・2列。絵を問題文の右に置き、絵の行間を詰める */
#pr-sheet.pr-fit[data-unit="addition_meaning"] .pr-q { line-height:1.12 !important; }
#pr-sheet.pr-fit[data-unit="addition_meaning"] .pr-row > .pr-graph-block { width:48mm; }
#pr-sheet.pr-fit[data-unit="addition_meaning"] .pr-graph-block [data-add-figure] { margin:0 !important; }
#pr-sheet.pr-fit[data-unit="addition_meaning"] [data-add-object],
#pr-sheet.pr-fit[data-unit="addition_meaning"] [data-add-figure] > div > div > div:last-child { line-height:1.15 !important; }
/* 時計の単元：時計が1つの問題は問題文の右に、選ぶ時計は横一列に並べ、番号（①②③）は時計の左上に置く */
#pr-sheet.pr-fit .clock-cell { margin:1px 2px !important; }
#pr-sheet.pr-fit .pr-q:has(> div:only-of-type .clock-cell:only-child){display:grid !important;grid-template-columns:auto minmax(0,1fr);align-items:center;column-gap:6pt}
#pr-sheet.pr-fit .pr-q:has(> div:only-of-type .clock-cell:only-child) > div{margin:0 !important}
#pr-sheet.pr-fit .clock-cell:not(:only-child){position:relative}
#pr-sheet.pr-fit .clock-cell:not(:only-child) > br{display:none}
#pr-sheet.pr-fit .clock-cell:not(:only-child) > .clock-label{position:absolute;left:0;top:0}
#pr-sheet.pr-fit .pr-q:has(> div + div .clock-cell:only-child):not(:has(> div + div + div)){display:grid !important;grid-template-columns:auto auto minmax(0,1fr);align-items:center;column-gap:4pt}
#pr-sheet.pr-fit .pr-q:has(> div + div .clock-cell:only-child):not(:has(> div + div + div)) > div{margin:0 !important}
/* two_way_table_sets2_4（単元仕様書 v1.3 §7、DEC-08）：A4縦・2列。問題文は番号のすぐ後から行いっぱいに書き（2行目からは番号の下へ回り込む）、その下の左に二次元表、右に答えの欄を置く。B型の「しゃ線のますの合計が ？」は表の右・答えの欄の上に置く */
#pr-sheet.pr-fit[data-unit="two_way_table_sets2_4"] .pr-row{display:grid !important;grid-template-columns:auto minmax(0,1fr);grid-template-rows:auto auto;column-gap:8pt;row-gap:1pt;align-content:start;padding:2pt 4pt !important}
#pr-sheet.pr-fit[data-unit="two_way_table_sets2_4"] .pr-q{line-height:1.06 !important}
#pr-sheet.pr-fit[data-unit="two_way_table_sets2_4"] .pr-row > .pr-row-header{grid-column:1 / -1;grid-row:1;display:block !important}
#pr-sheet.pr-fit[data-unit="two_way_table_sets2_4"] .pr-num{display:inline-block;min-width:0 !important;margin-right:3pt}
#pr-sheet.pr-fit[data-unit="two_way_table_sets2_4"] .pr-row > .pr-graph-block{display:contents !important}
#pr-sheet.pr-fit[data-unit="two_way_table_sets2_4"] .pr-graph-block svg{grid-column:1;grid-row:2;align-self:center;justify-self:start;margin:0 !important}
#pr-sheet.pr-fit[data-unit="two_way_table_sets2_4"] .pr-graph-block .g4xtw-note{grid-column:2;grid-row:2;align-self:start;justify-self:start;font-size:9.5pt !important;line-height:1.2 !important;text-align:left !important;margin:1pt 0 0 !important}
#pr-sheet.pr-fit[data-unit="two_way_table_sets2_4"] .pr-row > .pr-ans-box{grid-column:2;grid-row:2;align-self:end;margin:0 !important}
/* calendar_date_weekday_1：A4縦・3列。カレンダーのマスの余白を詰める */
#pr-sheet.pr-fit[data-unit="calendar_date_weekday_1"] .pr-q table td, #pr-sheet.pr-fit[data-unit="calendar_date_weekday_1"] .pr-q table th, #pr-sheet.pr-fit[data-unit="calendar_date_weekday_1"] .pr-graph-block table td, #pr-sheet.pr-fit[data-unit="calendar_date_weekday_1"] .pr-graph-block table th{padding:0 1.5pt !important;line-height:1.15 !important}
/* length_reason_1：図を問題文の左に置く */
#pr-sheet.pr-fit[data-unit="length_reason_1"] .pr-q:has(> svg:first-child){display:grid !important;grid-template-columns:auto minmax(0,1fr);column-gap:6pt;align-items:center}
#pr-sheet.pr-fit[data-unit="length_reason_1"] .pr-q > svg:first-child{margin:0 !important}
/* sum_difference_model_1：A4横・2列。問題文は行いっぱいに書き（英語でも2行に収める）、その下に選択肢（2行2列）、選択肢の右にテープ図と答えの欄を置く */
#pr-sheet.pr-fit-side[data-unit="sum_difference_model_1"] .pr-row{grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto auto;align-content:space-between}
#pr-sheet.pr-fit-side[data-unit="sum_difference_model_1"] .pr-row > .pr-row-header{grid-column:1 / -1;grid-row:1}
#pr-sheet.pr-fit-side[data-unit="sum_difference_model_1"] .pr-row > .pr-graph-block{grid-column:2;grid-row:2;align-self:center}
#pr-sheet.pr-fit-side[data-unit="sum_difference_model_1"] .pr-row > .pr-choice-list{grid-column:1;grid-row:2 / span 2;align-self:center;display:grid !important;grid-template-columns:repeat(2,max-content);column-gap:10pt}
#pr-sheet.pr-fit-side[data-unit="sum_difference_model_1"] .pr-row > .pr-ans-box{grid-column:2;grid-row:3;align-self:end;width:26mm;margin:0 0 0 6pt !important}
#pr-sheet.pr-fit[data-unit="sum_difference_model_1"] .pr-graph-block svg{height:auto !important;margin:0 auto !important}
/* number_relation_grid_1：A4縦・1列。表を左、問題文を中、きまりの枠と答えの欄を右に置く */
#pr-sheet.pr-fit[data-unit="number_relation_grid_1"] .pr-row{display:grid !important;padding:1.5pt 4pt !important;grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:auto auto;column-gap:4pt;align-content:center}
#pr-sheet.pr-fit[data-unit="number_relation_grid_1"] .pr-row > .pr-row-header{grid-column:2;grid-row:1 / span 2;align-self:center}
#pr-sheet.pr-fit[data-unit="number_relation_grid_1"] .pr-row > .pr-graph-block{display:contents}
#pr-sheet.pr-fit[data-unit="number_relation_grid_1"] .pr-graph-block > table{grid-column:1;grid-row:1 / span 2;align-self:center;margin:0 !important}
#pr-sheet.pr-fit[data-unit="number_relation_grid_1"] .pr-graph-block > .number-relation-rules{grid-column:3;grid-row:1;margin:0 !important;padding:1pt 4pt !important;font-size:10pt;line-height:1.3 !important;max-width:none !important;border-width:1.5px !important}
#pr-sheet.pr-fit[data-unit="number_relation_grid_1"] .pr-graph-block td{min-width:6.5mm !important;height:5.5mm !important;padding:0 1.5pt !important}
#pr-sheet.pr-fit[data-unit="number_relation_grid_1"] .pr-graph-block caption{display:none}
#pr-sheet.pr-fit[data-unit="number_relation_grid_1"] .pr-row > .pr-ans-box{grid-column:3;grid-row:2;margin-top:1pt !important}
/* clock_time_interval2_1：時計の図の高さの指定（main.css）を外し、縮尺で描く */
#pr-sheet.pr-fit[data-unit="clock_time_interval2_1"] .pr-graph-block svg{height:auto !important;margin:0 auto !important}
#pr-sheet.pr-fit[data-unit="clock_time_interval2_1"] .pr-graph-block:has(> svg ~ svg){display:flex;align-items:center;gap:6pt}
/* sum_grid_1：main.css の 9pt の指定を外し、問題文・表・答えを 12.5pt で書く */
#pr-sheet.pr-fit[data-unit="sum_grid_1"] .pr-q { font-size:12.5pt !important; line-height:1.2 !important; }
#pr-sheet.pr-fit[data-unit="sum_grid_1"] .pr-row { padding:3pt 5pt !important; gap:1pt !important; }
#pr-sheet.pr-fit[data-unit="sum_grid_1"] .pr-graph-block .sum-grid-table { width:42mm !important; }
#pr-sheet.pr-fit[data-unit="sum_grid_1"] .pr-graph-block .sum-grid-table td { height:7mm !important; font-size:12.5pt !important; }
#pr-sheet.pr-fit[data-unit="sum_grid_1"] .pr-graph-block .sum-grid-caption { font-size:11pt !important; line-height:1.2 !important; }
#pr-sheet.pr-fit[data-unit="sum_grid_1"] .pr-ans-box { font-size:10pt !important; }
#pr-sheet.pr-fit[data-unit="sum_grid_1"] .pr-ans-write { min-height:15pt !important; }
#pr-sheet.pr-fit[data-unit="sum_grid_1"] .pr-ans-cell, #pr-sheet.pr-fit[data-unit="sum_grid_1"] .pr-ans-val { font-size:11pt !important; }
/* make_ten_multi_add2_1：複数頁の専用の並べ方（main.css）をやめ、10題を1枚の2列に流す。
   式は左、「10の くみ」の○と答えの欄は右に置く */
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"] > #pr-problems { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; height:auto !important; }
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"] .make-ten-print-page,
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"] .make-ten-print-page > div { display:contents !important; }
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"] > #pr-ans-label { break-before:auto !important; page-break-before:auto !important; }
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"] > #pr-answers { height:auto !important; grid-template-rows:none !important; gap:2pt 6pt !important; }
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"]> #pr-answers { grid-template-columns:repeat(3,minmax(0,1fr)) !important; }
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"] .pr-ans-cell { padding:0 3pt !important; min-height:0 !important; }
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"] .pr-ans-val { font-size:10.5pt !important; line-height:1.2 !important; white-space:nowrap !important; }
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"] .make-ten-print-row { display:grid !important; grid-template-columns:minmax(0,1fr) auto; grid-template-rows:auto auto auto; column-gap:6pt; min-height:0 !important; height:auto !important; padding:2pt 6pt !important; break-inside:avoid; }
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"] .make-ten-print-row > .pr-row-header { grid-column:1 / -1; grid-row:1; }
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"] .make-ten-print-row > .make-ten-print-expression { grid-column:1; grid-row:2 / span 2; align-self:center; margin:1pt 0 0 !important; font-size:14pt !important; gap:3pt !important; }
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"] .make-ten-print-addend small { font-size:9pt !important; margin-top:0 !important; line-height:1.15 !important; white-space:normal !important; word-break:keep-all; text-align:center; }
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"] .make-ten-print-plus { flex:0 0 9pt !important; }
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"] .make-ten-print-row > .make-ten-print-pair-space { grid-column:2; grid-row:2; margin:2pt 0 0 !important; gap:4pt !important; justify-content:flex-start !important; }
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"] .make-ten-print-pair-space i { width:24pt !important; height:20pt !important; }
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"] .make-ten-print-row > .pr-ans-box { grid-column:2; grid-row:3; align-self:end; margin:0 !important; }
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"] .make-ten-print-row .pr-q { line-height:1.12 !important; }
#page-print #pr-sheet.pr-fit[data-unit="make_ten_multi_add2_1"] .make-ten-print-row > .pr-ans-box { gap:3pt !important; }
/* number_line_addition2_1：複数頁の専用の並べ方（main.css）をやめ、10題を1枚の2列に流す。
   数直線の右に「まるを つけよう」の指示を置く。答えは数だけを書き、たどった道の図は画面の答え合わせに任せる */
#page-print #pr-sheet.pr-fit[data-unit="number_line_addition2_1"] .number-line-print-page { display:contents !important; }
#page-print #pr-sheet.pr-fit[data-unit="number_line_addition2_1"] .number-line-print-page > .pr-row.number-line-print-row { height:auto !important; min-height:0 !important; padding:2pt 6pt !important; display:grid !important; grid-template-columns:auto minmax(0,1fr); column-gap:8pt; align-items:center; }
#page-print #pr-sheet.pr-fit[data-unit="number_line_addition2_1"] .number-line-print-row > .pr-row-header { grid-column:1 / -1; }
#page-print #pr-sheet.pr-fit[data-unit="number_line_addition2_1"] .number-line-print-row > .number-line-print-instruction { grid-column:2; font-size:10pt !important; line-height:1.25 !important; }
#page-print #pr-sheet.pr-fit[data-unit="number_line_addition2_1"] .number-line-addition-svg { height:auto !important; margin:0 auto !important; }
#page-print #pr-sheet.pr-fit[data-unit="number_line_addition2_1"] .number-line-print-answer-path { display:none !important; }
#page-print #pr-sheet.pr-fit[data-unit="number_line_addition2_1"] #pr-answers .pr-ans-cell { min-height:0 !important; display:flex !important; }
/* length_volume_conservation2_1：問題文は行いっぱいに書き（英語の文が長くても行が増えないように）、その下に選択肢と図を並べる */
#pr-sheet.pr-fit-side[data-unit="length_volume_conservation2_1"] .pr-row > .pr-row-header { grid-column:1 / -1; }
#pr-sheet.pr-fit-side[data-unit="length_volume_conservation2_1"] .pr-row > .pr-graph-block { grid-row:2; }
#pr-sheet.pr-fit-side[data-unit="length_volume_conservation2_1"] .pr-row > .pr-choice-list { align-self:center; }
#pr-sheet.pr-fit-side[data-unit="length_volume_conservation2_1"] .pr-row > .pr-ans-box { grid-column:1 / -1; }
/* sum_difference_model_1：答え（「larger 14, smaller 12」など）が3行に折れないよう、答えは5列で2段に並べる */
#pr-sheet.pr-fit[data-force-landscape="1"][data-unit="sum_difference_model_1"] > #pr-answers { grid-template-columns:repeat(5,minmax(0,1fr)) !important; }
/* picture_tally_1：表のセルと絵の行間を詰める（表と長い問題文が重なる問題があっても1枚に収める） */
#pr-sheet.pr-fit[data-unit="picture_tally_1"] .pr-q table td, #pr-sheet.pr-fit[data-unit="picture_tally_1"] .pr-q table th { padding:0 4pt !important; line-height:1.12 !important; }
#pr-sheet.pr-fit[data-unit="picture_tally_1"] .pr-graph-block { line-height:1.05 !important; }
/* blocks_count_build2_1：つみ木の図（HTML）を小さくし（1段20px・列の幅30px） */
#pr-sheet.pr-fit[data-unit="blocks_count_build2_1"] .pr-graph-block [role="img"]{grid-template-columns:none !important;grid-auto-flow:column;grid-auto-columns:30px;gap:4px !important;margin:2px auto !important}
#pr-sheet.pr-fit[data-unit="blocks_count_build2_1"] .pr-graph-block [role="img"] div[style*="height:24px"]{height:20px !important}
#pr-sheet.pr-fit[data-unit="blocks_count_build2_1"] .pr-graph-block [role="img"] div[style*="height:48px"]{height:40px !important}
#pr-sheet.pr-fit[data-unit="blocks_count_build2_1"] .pr-graph-block [role="img"] div[style*="height:72px"]{height:60px !important}
#pr-sheet.pr-fit[data-unit="blocks_count_build2_1"] .pr-graph-block [role="img"] div[style*="height:96px"]{height:80px !important}
#pr-sheet.pr-fit[data-unit="blocks_count_build2_1"] .pr-graph-block [role="img"] div[style*="height:120px"]{height:100px !important}
#pr-sheet.pr-fit[data-unit="blocks_count_build2_1"] .pr-graph-block [role="img"] small{line-height:1.1}
/* compare_survey_1：表のセルを詰め、問題文の幅を広げる（英語の長い問題文でも1枚に収める） */
#pr-sheet.pr-fit[data-unit="compare_survey_1"] .pr-q table td, #pr-sheet.pr-fit[data-unit="compare_survey_1"] .pr-q table th { padding:0 3pt !important; line-height:1.12 !important; }
#pr-sheet.pr-fit[data-unit="compare_survey_1"] .pr-q { line-height:1.15 !important; }

/* ── 2年生 ── */
/* right_angle_2：選ぶ図形4つを横一列に、図形が1つの問題は図形を問題文の右に置く */
#pr-sheet.pr-fit[data-unit="right_angle_2"] .pr-q div[style*="flex-wrap"] { margin:2px 0 !important; flex-wrap:nowrap !important; }
#pr-sheet.pr-fit[data-unit="right_angle_2"] .pr-q div[style*="inline-block"] { margin:0 4px !important; line-height:1; }
#pr-sheet.pr-fit[data-unit="right_angle_2"] .pr-q div[style*="inline-block"] svg { width:52px !important; height:auto !important; }
#pr-sheet.pr-fit[data-unit="right_angle_2"] .pr-q div[style*="inline-block"] span { font-size:10pt !important; }
#pr-sheet.pr-fit[data-unit="right_angle_2"] .pr-q div[style*="center"] { margin:2px 0 !important; }
#pr-sheet.pr-fit[data-unit="right_angle_2"] .pr-q div[style*="center"] > svg { width:auto !important; height:24mm !important; }
#pr-sheet.pr-fit[data-unit="right_angle_2"] .pr-q:has(> div[style*="center"]) { display:grid !important; grid-template-columns:minmax(0,1fr) auto; column-gap:4pt; align-items:start; }
/* table_make_2：表のセルを詰める */
#pr-sheet.pr-fit[data-unit="table_make_2"] .pr-q table td, #pr-sheet.pr-fit[data-unit="table_make_2"] .pr-q table th { padding:0 4pt !important; line-height:1.12 !important; }
/* incomplete_table_restore2_2：表の図を幅62mmまでにする */
#pr-sheet.pr-fit[data-unit="incomplete_table_restore2_2"] .pr-graph-block svg { max-width:62mm !important; margin:1px auto !important; }
/* timetable_reverse2_2：時刻表の見出し（しゅっぱつ・とうちゃく）をマスに収める */
#pr-sheet.pr-fit[data-unit="timetable_reverse2_2"] .pr-graph-block rect[fill="#e3f2fd"] + text { font-size:12.5px !important; }
/* missing_quantity_word2_2：2頁用の区切り（.missing-quantity-print-page）を外して2列5行に並べ、
   途中式の線は1本、解答（式と確かめ）は2列に詰める */
#page-print #pr-sheet.pr-fit[data-unit="missing_quantity_word2_2"] > #pr-problems { display:grid !important; }
#page-print #pr-sheet.pr-fit[data-unit="missing_quantity_word2_2"] .missing-quantity-print-page,
#page-print #pr-sheet.pr-fit[data-unit="missing_quantity_word2_2"] .missing-quantity-print-column { display:contents !important; }
#page-print #pr-sheet.pr-fit[data-unit="missing_quantity_word2_2"] .pr-row { padding:3pt 5pt !important; overflow:visible !important; }
#page-print #pr-sheet.pr-fit[data-unit="missing_quantity_word2_2"] .pr-q { line-height:1.2 !important; }
#page-print #pr-sheet.pr-fit[data-unit="missing_quantity_word2_2"] .pr-ans-box { margin:0 !important; }
#page-print #pr-sheet.pr-fit[data-unit="missing_quantity_word2_2"] .missing-quantity-print-working { min-height:0 !important; margin-top:0 !important; gap:0 !important; grid-template-rows:16pt !important; }
#page-print #pr-sheet.pr-fit[data-unit="missing_quantity_word2_2"] .missing-quantity-print-working span + span { display:none !important; }
#page-print #pr-sheet.pr-fit[data-unit="missing_quantity_word2_2"] > #pr-answers { grid-template-columns:repeat(2,minmax(0,1fr)) !important; grid-template-rows:none !important; height:auto !important; gap:1pt 8pt !important; }
#page-print #pr-sheet.pr-fit[data-unit="missing_quantity_word2_2"] .pr-ans-cell { padding:0 !important; }
#page-print #pr-sheet.pr-fit[data-unit="missing_quantity_word2_2"] .pr-ans-val { font-size:10pt !important; line-height:1.2 !important; }
/* matome4_g2（16問）：表のある問題は1行に3問、文章だけの問7〜10は1行に4問。
   表は見出しを横書きのまま詰め、解答は答えの長さに合わせて横に流す */
#pr-sheet.pr-fit[data-unit="matome4_g2"] > #pr-problems { grid-template-columns:repeat(12,minmax(0,1fr)) !important; row-gap:2pt !important; column-gap:5pt !important; }
#pr-sheet.pr-fit[data-unit="matome4_g2"] > #pr-problems > .pr-row { grid-column:span 4; padding:1pt 4pt 0 !important; }
#pr-sheet.pr-fit[data-unit="matome4_g2"] > #pr-problems > .pr-row:nth-child(n+7):nth-child(-n+10) { grid-column:span 3; }
#pr-sheet.pr-fit[data-unit="matome4_g2"] .pr-q:has(> table:first-child) { display:block !important; }
#pr-sheet.pr-fit[data-unit="matome4_g2"] .pr-q table { margin:1pt 0 1pt -16pt !important; font-size:10pt !important; }
#pr-sheet.pr-fit[data-unit="matome4_g2"] .pr-q table td, #pr-sheet.pr-fit[data-unit="matome4_g2"] .pr-q table th { padding:0 2pt !important; line-height:1.1 !important; white-space:nowrap; writing-mode:horizontal-tb !important; }
#pr-sheet.pr-fit[data-unit="matome4_g2"] .pr-q table td[style*="min-width"] { min-width:0 !important; }
#pr-sheet.pr-fit[data-unit="matome4_g2"] .pr-ans-box { margin-top:0 !important; }
#page-print #pr-sheet.pr-fit[data-unit="matome4_g2"] > #pr-answers { display:flex !important; flex-wrap:wrap; column-gap:10pt; row-gap:0; }
/* compare_data_2：絵グラフを問題文の左に置く（表の問題と同じ並び） */
#pr-sheet.pr-fit[data-unit="compare_data_2"] .pr-q:has(> svg:first-child) { display:grid !important; grid-template-columns:auto minmax(0,1fr); column-gap:6pt; align-items:center; }
#pr-sheet.pr-fit[data-unit="compare_data_2"] .pr-q > svg:first-child { margin:0 !important; }
/* bar_graph_2：棒グラフを問題文の左に置く。大きくした文字が重ならないよう、単位を上へ、
   2本目と4本目の棒の名前を一段下へずらす */
#pr-sheet.pr-fit[data-unit="bar_graph_2"] .pr-q:has(> div:first-child > svg) { display:grid !important; grid-template-columns:auto minmax(0,1fr); column-gap:6pt; align-items:center; }
#pr-sheet.pr-fit[data-unit="bar_graph_2"] .pr-q > div:first-child { margin:12px 0 0 !important; }
#pr-sheet.pr-fit[data-unit="bar_graph_2"] .pr-q > div:first-child > svg { margin:0 !important; }
#pr-sheet.pr-fit[data-unit="bar_graph_2"] .bar-svg { overflow:visible; }
#pr-sheet.pr-fit[data-unit="bar_graph_2"] .bar-svg .bar-unit-label { transform:translateY(-14px); }
#pr-sheet.pr-fit[data-unit="bar_graph_2"] .bar-svg text.bar-axis-label:is([x="184.0"],[x="360.0"]) { transform:translateY(20px); }
/* grid_shape_draw2_2：かく形は塗らない（印刷ボタンの専用の紙面と同じ） */
#pr-sheet.pr-fit[data-unit="grid_shape_draw2_2"] .pr-graph-block svg polygon { fill:none !important; }
/* かけ算の筆算（.pr-row-hissan）：列を増やして行を減らし、計算の余白（.pr-hissan-work）は行の高さいっぱいに伸ばす */
#pr-sheet.pr-fit > #pr-problems:has(> .pr-row-hissan) { align-items:stretch !important; }
#pr-sheet.pr-fit .pr-row-hissan .pr-hissan-work { min-height:90pt !important; flex:1 1 auto; }

/* 筆算の枠（.hissan-question）：main.css の [style*="border-radius:10px"] の縮めは、印刷ボタンの撮影（html2canvas）では
   style 属性の書き方が変わって当たらない。紙面を詰めた単元ではクラスで同じ縮めを当てる。 */
#pr-sheet.pr-fit .pr-q .hissan-question { font-size:1.1rem !important; padding:8px 14px 6px !important; margin:2px 0 !important; border-width:1.5pt !important; }
#pr-sheet.pr-fit .pr-q .hissan-question > div:last-child { display:none !important; }
/* 印刷ボタン（html2canvas）は、背景色のある inline-block の箱の中の子要素の文字を描かない（背景で塗りつぶす）。
   筆算の枠を重ね順の基点にして、数字が消えないようにする（全単元・紙面を詰めない単元も含む）。 */
#pr-sheet .pr-q .hissan-question { position:relative; z-index:0; }
/* simple_graph：○のグラフの問い（1〜4）は2問ずつ横に並べて行を折り返さず、表の問い（5〜10）は3問ずつ並べる。表は詰める */
#pr-sheet.pr-fit[data-unit="simple_graph"] > #pr-problems.pr-cols3 { grid-template-columns:repeat(6,minmax(0,1fr)) !important; }
#pr-sheet.pr-fit[data-unit="simple_graph"] > #pr-problems > .pr-row { grid-column:span 2; }
#pr-sheet.pr-fit[data-unit="simple_graph"] > #pr-problems > .pr-row:not(.pr-row-graph):has(.pr-q br) { grid-column:span 3; }
#pr-sheet.pr-fit[data-unit="simple_graph"] .pr-graph-block > div { margin:1pt 0 !important; }
#pr-sheet.pr-fit[data-unit="simple_graph"] .pr-graph-block > div > div:first-child { margin-bottom:1pt !important; }
#pr-sheet.pr-fit[data-unit="simple_graph"] .pr-graph-block > div > div:first-child { font-size:10pt !important; }
#pr-sheet.pr-fit[data-unit="simple_graph"] .pr-graph-block table { font-size:10pt !important; }
#pr-sheet.pr-fit[data-unit="simple_graph"] .pr-graph-block td, #pr-sheet.pr-fit[data-unit="simple_graph"] .pr-graph-block th { padding:0 6pt !important; line-height:1.2 !important; }
#pr-sheet.pr-fit[data-unit="simple_graph"] .pr-graph-block > div > div:first-child { margin-bottom:0 !important; line-height:1.15; }
/* overlapping_shape_count2_2：問題文を行の幅いっぱいに書き、図は答えの欄の右に置く（英語の長い問題文を細く折り返さない） */
#pr-sheet.pr-fit-side[data-unit="overlapping_shape_count2_2"] .pr-row { grid-template-rows:auto 1fr auto; }
#pr-sheet.pr-fit-side[data-unit="overlapping_shape_count2_2"] .pr-row > .pr-row-header { grid-column:1 / -1; grid-row:1; }
#pr-sheet.pr-fit-side[data-unit="overlapping_shape_count2_2"] .pr-row > .pr-graph-block { grid-column:2; grid-row:2 / span 2; align-self:end; }
#pr-sheet.pr-fit-side[data-unit="overlapping_shape_count2_2"] .pr-row > .pr-ans-box { grid-column:1; grid-row:3; }

/* そろばん（soroban_*）：そろばんの図を問題文の左に置く（3年） */
#pr-sheet.pr-fit[data-unit^="soroban_"] .pr-q > svg:first-child { float:left; margin:0 8pt 0 0 !important; }
#pr-sheet.pr-fit[data-unit^="soroban_"] .pr-q { display:flow-root; }
#pr-sheet.pr-fit[data-unit^="soroban_"] .pr-q > div > br + span { font-size:12.5pt !important; }
/* そろばん たまえらび（soroban_pic_*）：1列。問題のそろばん・問題文・答えを左に、選択肢4つを右に1行で並べる */
#pr-sheet.pr-fit[data-unit^="soroban_pic_"] .pr-row { display:grid !important; grid-template-columns:auto minmax(0,1fr); grid-template-rows:auto auto; column-gap:6pt; row-gap:0 !important; align-content:center; }
#pr-sheet.pr-fit[data-unit^="soroban_pic_"] .pr-row > .pr-row-header { grid-column:1; grid-row:1; }
#pr-sheet.pr-fit[data-unit^="soroban_pic_"] .pr-soroban-pic-q { display:grid !important; grid-template-columns:auto 7.6em; align-items:center; column-gap:4pt; }
#pr-sheet.pr-fit[data-unit^="soroban_pic_"] .pr-soroban-pic-q > img { width:17mm !important; height:auto !important; margin:0 !important; }
#pr-sheet.pr-fit[data-unit^="soroban_pic_"] .pr-soroban-pic-q > div { font-size:12.5pt !important; text-align:left !important; line-height:1.15; margin:0 !important; }
#pr-sheet.pr-fit[data-unit^="soroban_pic_"] .pr-soroban-choices { grid-column:2; grid-row:1 / span 2; align-self:center; grid-template-columns:repeat(4,minmax(0,1fr)) !important; gap:3pt !important; margin:0 !important; }
#pr-sheet.pr-fit[data-unit^="soroban_pic_"] .pr-soroban-choice { display:flex; align-items:center; justify-content:center; gap:2pt; padding:1pt 2pt !important; min-width:0; }
#pr-sheet.pr-fit[data-unit^="soroban_pic_"] .pr-sc-lbl { font-size:10pt !important; margin:0 !important; }
#pr-sheet.pr-fit[data-unit^="soroban_pic_"] .pr-soroban-choice img { width:20mm !important; height:auto !important; margin:0 !important; min-width:0; }
#pr-sheet.pr-fit[data-unit^="soroban_pic_"] .pr-row > .pr-ans-box { grid-column:1; grid-row:2; }
/* 3年のまとめ・しあげ：文の前後に表がある問題は表を文の間に置き、答えは詰めて並べる */
#pr-sheet.pr-fit:is([data-unit^="matome"][data-unit$="_g3"],[data-unit="shiage_g3"],[data-unit^="matome"][data-unit$="_g4"],[data-unit="shiage_g4"]) .pr-q:has(> table:first-child) { display:block !important; }
#page-print #pr-sheet.pr-fit:is([data-unit^="matome"][data-unit$="_g3"],[data-unit="shiage_g3"],[data-unit^="matome"][data-unit$="_g4"],[data-unit="shiage_g4"],[data-unit="large_num_4"]) > #pr-answers { display:flex !important; flex-wrap:wrap; column-gap:10pt; row-gap:0; }
/* graph_3：棒グラフの6問は2列、文だけの4問は4列で1行に並べる */
#pr-sheet.pr-fit[data-unit="graph_3"] > #pr-problems.pr-cols2 { grid-template-columns:repeat(4,minmax(0,1fr)) !important; }
#pr-sheet.pr-fit[data-unit="graph_3"] > #pr-problems > .pr-row:nth-child(-n+6) { grid-column:span 2; }
/* tally_to_graph_3（単元仕様書 v1.2 §7）：A4縦・2列×5段・1ページ。左列4問・右列6問、4段目は左に(7)(8)で共有するしるしの表、右に(7)(8)。
   しるしは縮めない（たての線6.35mm以上、図の縮尺は UNIT_MASTER.print.fitSvgScale で全問同じ）。図の文字9pt、Bの絵10.5pt。
   Aの記入の四角は図の右、Bは絵の行の右、C1・C2は3列の表の下。選択肢の一覧はEだけで、1つずつ行を分けて1行に収める。 */
#page-print #pr-sheet.pr-fit[data-unit="tally_to_graph_3"] > #pr-answers, #pr-sheet.pr-fit[data-unit="tally_to_graph_3"] > #pr-answers { display:flex !important; flex-wrap:wrap; column-gap:10pt; row-gap:0; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .pr-ans-cell { white-space:nowrap; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .pr-row { padding:2pt 4pt !important; justify-content:flex-start !important; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .pr-graph-block { padding-bottom:0 !important; min-width:0; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-pfig { font-size:9pt; line-height:1.2; color:#111; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-p-title { font-size:9pt; font-weight:700; margin:0 0 1pt; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-p-row { display:flex; flex-wrap:wrap; align-items:center; column-gap:6pt; row-gap:1pt; font-size:9pt; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-p-label { white-space:nowrap; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-pr-line { display:flex; align-items:flex-end; justify-content:space-between; gap:4pt; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-pr-line > .pr-graph-block, #pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-pr-line > .tt-p-pics { flex:1 1 auto; min-width:0; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-pr-ans-side { flex:none !important; width:26mm; margin:0 !important; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-p-pics { font-size:10.5pt; line-height:1.25; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-p-pics .tt-pic-row { display:flex; gap:1.5pt; white-space:nowrap; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-p-cands { display:grid; grid-template-columns:auto auto; justify-content:start; column-gap:8pt; row-gap:1pt; margin-top:2pt; font-size:9pt; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-p-cands .tt-cand { display:flex; align-items:center; gap:3pt; white-space:nowrap; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-p-cands .tt-mark { min-width:0; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-pfig .tt-table { border-collapse:collapse; margin:0 !important; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-pfig .tt-table th, #pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-pfig .tt-table td { border:1px solid #888; padding:0.5pt 4pt !important; font-size:9pt; line-height:1.15 !important; white-space:nowrap; font-weight:400; text-align:left; vertical-align:middle; height:auto !important; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-pfig .tt-table tr:first-child th { background:#f3f3f3; font-weight:700; text-align:center; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-pfig .tt-table td.tt-num { text-align:right; min-width:2.4em; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-pfig .tt-box { border-width:1.5px !important; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .pr-choice-list.tt-pr-choices { display:flex !important; flex-direction:column; flex-wrap:nowrap; row-gap:0; margin:1pt 0 1pt 14pt !important; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-pr-choices > div { display:flex; gap:4pt; white-space:nowrap; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-pr-dq { justify-content:space-evenly !important; gap:4pt !important; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-pr-dsub { display:flex; flex-direction:column; gap:1pt; }
#pr-sheet.pr-fit[data-unit="tally_to_graph_3"] .tt-pr-ans-name .pr-ans-write { flex:none !important; width:40mm !important; }

/* route_vs_distance2_3（単元仕様書 v1.3 §7・§7-1）：A4縦・2列×5段・1ページ。1行目に問題番号と印刷の問いの文（12.5pt）。
   その下に、左に地図（幅54mm、TS・TDは58mm。図の中の文字9pt）、右の欄の上に見本（2行）、下に記入欄名のない記入の四角。
   TS・TDは注記を列の幅いっぱいに1行（9pt）。地図と見本の大きさは図の側で mm で決め、ここでは縮めない。答えは語の途中で折り返さない。 */
#page-print #pr-sheet.pr-fit[data-unit="route_vs_distance2_3"] > #pr-answers, #pr-sheet.pr-fit[data-unit="route_vs_distance2_3"] > #pr-answers { display:flex !important; flex-wrap:wrap; column-gap:10pt; row-gap:0; }
#pr-sheet.pr-fit[data-unit="route_vs_distance2_3"] .pr-ans-cell { white-space:nowrap; }
#pr-sheet.pr-fit[data-unit="route_vs_distance2_3"] .pr-row.rvd-pr { padding:2pt 4pt !important; justify-content:flex-start !important; }
#pr-sheet.pr-fit[data-unit="route_vs_distance2_3"] .rvd-pr-line { display:flex; align-items:stretch; justify-content:space-between; gap:3mm; margin-top:1pt; }
#pr-sheet.pr-fit[data-unit="route_vs_distance2_3"] .rvd-pr-map { flex:none; display:flex; align-items:center; }
#pr-sheet.pr-fit[data-unit="route_vs_distance2_3"] .rvd-pr-side { flex:1 1 auto; min-width:0; display:flex; flex-direction:column; justify-content:space-between; align-items:flex-end; gap:1.2mm; }
#pr-sheet.pr-fit[data-unit="route_vs_distance2_3"] .rvd-pr-legend { align-self:flex-start; }
#pr-sheet.pr-fit[data-unit="route_vs_distance2_3"] .pr-ans-box.rvd-pr-ans { flex:none !important; display:block !important; width:100%; max-width:24mm; height:10mm; min-height:0 !important; margin:0 !important; padding:0 !important; border:1.2pt solid #333 !important; border-radius:1.5mm; box-sizing:border-box; }
#pr-sheet.pr-fit[data-unit="route_vs_distance2_3"] .pr-ans-box.rvd-pr-ans .pr-ans-write { display:none !important; }
#pr-sheet.pr-fit[data-unit="route_vs_distance2_3"] .rvd-pr-note { font-size:9pt; line-height:1.2; white-space:nowrap; margin-top:1pt; color:#111; }

/* sum_diff_multiple_relation2_3（単元仕様書 v1.3 §7・§7-1）：A4縦・2列×5段・1ページ（縮めない）。1行目に問題番号と問題文（12.5pt）。
   その下の行に、左に線分図（幅58mm・図の文字F＝18で約9.2pt）、すき間2mm、右に記入の欄（欄名を上・記入の線を下、残りの幅で18mm以上）。
   記入の欄の下はしは線分図の下はしにそろえる。共通の図の決まり（列の幅いっぱい・最大320px）で線分図の大きさを変えない。 */
#pr-sheet[data-unit="sum_diff_multiple_relation2_3"] .sdm-pr-line { display:flex; align-items:flex-end; gap:2mm; }
#pr-sheet[data-unit="sum_diff_multiple_relation2_3"] .sdm-pr-fig { flex:0 0 58mm; width:58mm; margin:0.5mm 0 0; padding:0; }
#pr-sheet[data-unit="sum_diff_multiple_relation2_3"] .sdm-pr-fig svg.sdm-print-svg { display:block; width:58mm !important; max-width:none !important; height:auto !important; margin:0 !important; overflow:visible; }
#pr-sheet[data-unit="sum_diff_multiple_relation2_3"] .pr-ans-box.sdm-pr-ans { flex:1 1 auto; min-width:18mm; margin-top:0; display:flex; flex-direction:column; align-items:stretch; gap:1pt; min-height:24pt; }
#pr-sheet[data-unit="sum_diff_multiple_relation2_3"] .pr-ans-box.sdm-pr-ans .pr-ans-write { min-width:0; width:100%; flex:0 0 auto; }

/* 3年「さくらんぼ計算（たし算とひき算をまとめて）」：単元自身が1〜5と6〜10の2列（.add-sub-grouping-print-grid）を組むため、
   印刷ボタンの取り込み（画面向けの表示）でもブラウザ印刷と同じ2列にする（#pr-problems の格子の1列目に押し込まれて縦に伸び、縮小されるのを防ぐ） */
#pr-sheet.pr-fit[data-unit="add_sub_grouping2_3"] > #pr-problems { display:block !important; }
#pr-sheet.pr-fit[data-unit="add_sub_grouping2_3"] .add-sub-grouping-print-grid { display:grid !important; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:8pt; }
#pr-sheet.pr-fit[data-unit="add_sub_grouping2_3"] .add-sub-grouping-print-column { display:grid; grid-template-rows:repeat(5,minmax(80pt,auto)); gap:4pt; min-width:0; }

/* 4年「ともなって変わる量を表で見よう」：表の数字や見出しが半分の幅で折り返さないようにする（2桁の数が縦に割れて紙面が伸び、英語で2頁になる） */
#pr-sheet.pr-fit[data-unit="table_covariation_4"] .pr-q table td, #pr-sheet.pr-fit[data-unit="table_covariation_4"] .pr-q table th { padding:1pt 3pt !important; font-size:11pt !important; white-space:nowrap; writing-mode:horizontal-tb !important; }
/* 5年：問題文の段落（p）が 12pt で組まれる単元を、紙の上で 12.5pt にそろえる（共通仕様書 CP-09） */
#pr-sheet.pr-fit[data-unit="fraction_reduce_5"] .pr-q p, #pr-sheet.pr-fit[data-unit="equiv_frac_5"] .pr-q p, #pr-sheet.pr-fit[data-unit="tsuubun_5"] .pr-q p, #pr-sheet.pr-fit[data-unit="frac_add_sub_5"] .pr-q p, #pr-sheet.pr-fit[data-unit="circle_pi_5"] .pr-q p, #pr-sheet.pr-fit[data-unit="sector_5"] .pr-q p { font-size:12.5pt !important; }
#pr-sheet.pr-fit[data-unit="frac_add_sub_5"] .pr-q span[style*="font-size:1rem"] { font-size:12.5pt !important; }
/* 5年「かんたんな比例」：C群の選択肢は単元仕様書 §7 のとおり、問題文の下に1行に1つずつ、問題文より小さい文字（縮小はしない）で置く。
   答えの記入線は選択肢の右に並べ、2列×5段の紙面を日英ともA4・1枚・縮小なしに収める */
#pr-sheet.pr-fit[data-unit="proportion_5"] .pr-row:has(> .pr-choice-list) { display:grid !important; grid-template-columns:minmax(0,1fr) auto; column-gap:6pt; align-items:end; }
#pr-sheet.pr-fit[data-unit="proportion_5"] .pr-row:has(> .pr-choice-list) > .pr-row-header { grid-column:1 / -1; align-self:start; }
#pr-sheet.pr-fit[data-unit="proportion_5"] .pr-row > .pr-choice-list { display:block !important; grid-column:1; font-size:10pt !important; line-height:1.2 !important; margin:1pt 0 0 20pt !important; }
#pr-sheet.pr-fit[data-unit="proportion_5"] .pr-row:has(> .pr-choice-list) > .pr-ans-box { grid-column:2; width:30mm; }
/* congruent_draw_5：A4縦・2列×5段。各問の4つの選択肢を2列×2行（10pt）、解答一覧を2列×5行に置く（単元仕様書 §7）。
   英語の選択肢が長いため、問題枠の余白と行間を詰めて1枚に収める（文字の大きさは変えない） */
#pr-sheet.pr-fit[data-unit="congruent_draw_5"] > #pr-problems { row-gap:2pt !important; column-gap:6pt !important; }
#pr-sheet.pr-fit[data-unit="congruent_draw_5"] .pr-row { padding:2pt 4pt !important; }
#pr-sheet.pr-fit[data-unit="congruent_draw_5"] .pr-choice-list { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)); column-gap:5pt; row-gap:0; font-size:10pt !important; line-height:1.1 !important; margin:1pt 0 0 2pt !important; }
#pr-sheet.pr-fit[data-unit="congruent_draw_5"] .pr-choice-list > div { min-width:0; }
#pr-sheet.pr-fit[data-unit="congruent_draw_5"] > #pr-answers { display:grid !important; grid-template-columns:repeat(2,minmax(0,1fr)) !important; column-gap:8pt; row-gap:0; }
#pr-sheet.pr-fit[data-unit="congruent_draw_5"] .pr-ans-cell { align-items:flex-start; padding:0 3pt !important; line-height:1.15 !important; }
/* fraction_div_integer_transform2_5（単元仕様書 v1.4 §5-3 共通処理の手当て5・7、§7）：A群の選択肢は横に流さず、1行に1つずつ縦に並べる（12.5pt）。
   C群の図の幅は最大55mmにする（印刷の共通の規則が図を枠いっぱいに広げるため、本単元の紙面だけで上書きする）。 */
#pr-sheet.pr-fit[data-unit="fraction_div_integer_transform2_5"] .pr-choice-list { display:block !important; }
#pr-sheet.pr-fit[data-unit="fraction_div_integer_transform2_5"] .pr-graph-block svg { max-width:55mm !important; margin:1px auto !important; }

/* 追加の作り直し（2〜4年・図を印刷用に描き直した単元）。図は js 側で印刷用の寸法に描き、ここでは表・解答欄を整える */
/* 4年「折れ線グラフ」：問題文の段落（p）が 12pt で組まれるため、紙の上で 12.5pt にそろえる（共通仕様書 CP-09） */
#pr-sheet.pr-fit[data-unit="line_graph_4"] .pr-q p { font-size:12.5pt !important; }
/* 4年「わりあいのきほん2」：長い解答の行が高くならないよう、解答の文字を小さくし、長い8番の解答を2列分に広げる */
#pr-sheet.pr-fit[data-unit="ratio_basic2_4"] .pr-ans-val { font-size:10pt !important; line-height:1.15 !important; }
#pr-sheet.pr-fit[data-unit="ratio_basic2_4"] #pr-answers > :nth-child(8) { grid-column:span 2 !important; }
/* 3年「2つのグラフをくらべよう」「グラフからわかること」：長い解答の行を詰める */
#pr-sheet.pr-fit[data-unit="compare_graphs_3"] .pr-ans-val, #pr-sheet.pr-fit[data-unit="graph_insight_3"] .pr-ans-val { font-size:9.5pt !important; line-height:1.1 !important; }
/* 3年「表の読み取り」：同じ調べの見出し・説明を最初の問題だけに置き、表を小さく組む（全問で同じ表のため、見出しの繰り返しを省く） */
#pr-sheet.pr-fit[data-unit="table_read_3"] .pr-q table td, #pr-sheet.pr-fit[data-unit="table_read_3"] .pr-q table th { padding:0 2pt !important; font-size:10.5pt !important; line-height:1.15 !important; white-space:nowrap !important; min-width:0 !important; }
#pr-sheet.pr-fit[data-unit="table_read_3"] #pr-problems > .pr-row:nth-child(n+2) .pr-q > div:nth-child(-n+2) { display:none !important; }
#pr-sheet.pr-fit[data-unit="table_read_3"] .pr-q > div:nth-child(2) { display:none !important; }
#pr-sheet.pr-fit[data-unit="table_read_3"] .pr-q table { margin:2pt auto 2pt !important; }
#pr-sheet.pr-fit[data-unit="table_read_3"] .pr-q > div:nth-child(1) { margin:0 0 1pt !important; }
#pr-sheet.pr-fit[data-unit="table_read_3"] .pr-q > p { font-size:12.6pt !important; margin:2pt 0 0 !important; line-height:1.15 !important; }
/* 4年「変化を言葉で説明しよう」：表と解答欄を小さく組む */
#pr-sheet.pr-fit[data-unit="line_graph_describe_4"] .pr-q table td, #pr-sheet.pr-fit[data-unit="line_graph_describe_4"] .pr-q table th { padding:0 2pt !important; font-size:10pt !important; line-height:1.1 !important; white-space:nowrap !important; min-width:0 !important; }
#pr-sheet.pr-fit[data-unit="line_graph_describe_4"] .pr-q table { margin:1pt auto !important; }
#pr-sheet.pr-fit[data-unit="line_graph_describe_4"] .pr-q svg { margin-top:0 !important; margin-bottom:0 !important; }
#pr-sheet.pr-fit[data-unit="line_graph_describe_4"] .pr-ans-val { font-size:9pt !important; line-height:1.1 !important; }

/* 対象単元のみ。仕様v1.5 §7: A4 portrait / 利用可能190×277mm、実配置190×276.8mm、本文実効12.5pt以上。 */
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] { position:relative !important;display:block !important;width:190mm !important;height:276.8mm !important;min-height:276.8mm !important;padding:0 !important;margin:0 auto !important;box-sizing:border-box !important;border:0 !important; }
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] *, #page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] *::before, #page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] *::after {box-sizing:border-box;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] .pr-title-box {position:absolute !important;left:0;top:0;width:190mm;height:7mm;margin:0 !important;padding:0 !important;border:0 !important;text-align:left !important;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] #pr-title {font-size:16.01pt !important;line-height:1.15 !important;white-space:nowrap;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] > .dse23-print-meta-row {position:absolute !important;display:flex !important;left:0;top:7mm;width:190mm;height:7mm;margin:0 !important;padding:0 !important;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] > .dse23-print-meta-row > .pr-field, #page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] > .dse23-print-hidden-row, #page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] > .pr-solid {display:none !important;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] .dse23-print-meta {font-size:12.51pt !important;line-height:1.15 !important;white-space:pre;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] #pr-inst {position:absolute;top:14mm;left:0;width:190mm;height:7mm;font-size:12.51pt !important;line-height:1.2 !important;margin:0 !important;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] #pr-problems {position:absolute !important;top:21mm;left:0;width:190mm;height:220mm;display:block !important;margin:0 !important;padding:0 !important;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] .dse23-print-row {position:relative !important;height:22mm !important;min-height:22mm !important;width:190mm;border:0 !important;border-bottom:.15mm solid #ddd !important;padding:.8mm 0 0 !important;margin:0 !important;break-inside:avoid;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] .pr-row-header {display:block !important;margin:0 !important;padding:0 !important;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] .pr-q {display:block !important;margin:0 0 0 8mm !important;width:182mm !important;font-size:12.51pt !important;line-height:1.15 !important;overflow-wrap:normal;word-break:normal;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] .pr-num {position:absolute;left:0;top:.8mm;font-size:12.51pt !important;line-height:1.15 !important;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] .dse23-field-line {position:absolute;left:8mm;bottom:0;height:9mm;display:flex;align-items:center;gap:2mm;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] .dse23-equation-field {display:inline-block !important;width:45mm !important;min-width:45mm !important;height:9mm !important;min-height:9mm !important;margin:0 !important;padding:0 !important;border:.2mm solid #444 !important;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] .dse23-answer-unit {font-size:12.51pt !important;line-height:1.15 !important;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] > .pr-dashed {position:absolute;top:241mm;left:0;width:190mm;height:10mm;margin:0 !important;border:0;border-bottom:.2mm dashed #777;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] #pr-ans-label {position:absolute;left:0;top:251mm;margin:0 !important;padding:0 !important;font-size:12.51pt !important;font-weight:400 !important;line-height:1.16 !important;border:0 !important;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] #pr-answers {position:absolute;top:251mm;left:0;width:190mm;height:25.8mm;display:grid !important;grid-template-columns:95mm 95mm !important;grid-template-rows:repeat(5,5.16mm) !important;grid-auto-flow:column;gap:0 !important;padding:0 !important;margin:0 !important;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] .pr-ans-cell {font-size:12.51pt !important;line-height:1.16 !important;white-space:nowrap;display:flex !important;gap:1mm !important;padding:0 !important;margin:0 !important;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] .pr-ans-cell:nth-child(-n+5) {padding-left:20mm !important;}
#page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] .pr-ans-val, #page-print #pr-sheet.pr-fit[data-unit="division_story_equation2_3"] .pr-ans-num {font-size:12.51pt !important;line-height:1.16 !important;}

/* ── 5年生 ── */
/* volume_capacity_word_5（単元仕様書 v1.6 §7）：A4縦。問1〜8は2列×4段で、見取図を枠の右上に置き、問題文を図の左から
   図の下へ回り込ませる（図は印刷層が問題文の前へ移す）。答えの欄は枠の下。問9・問10（図なし）は紙の幅いっぱいの枠に
   1問ずつ置き、答えの欄を右に置く。答えは問題番号順に続けて並べる */
#pr-sheet.pr-fit[data-unit="volume_capacity_word_5"] .pr-row-header { display:block !important; }
#pr-sheet.pr-fit[data-unit="volume_capacity_word_5"] .pr-num { display:inline-block; min-width:0 !important; margin-right:3pt; }
#pr-sheet.pr-fit[data-unit="volume_capacity_word_5"] .pr-row-header > .pr-graph-block { float:right; margin:0 0 1pt 6pt !important; padding:0 !important; }
#pr-sheet.pr-fit[data-unit="volume_capacity_word_5"] .pr-graph-block svg { margin:1pt 0 0 !important; min-width:0 !important; }
#pr-sheet.pr-fit[data-unit="volume_capacity_word_5"] > #pr-problems > .pr-row:nth-child(n+9) { grid-column:1 / -1; display:grid !important; grid-template-columns:minmax(0,1fr) 44mm; grid-template-rows:auto minmax(0,1fr); column-gap:10pt; align-content:stretch; }
#pr-sheet.pr-fit[data-unit="volume_capacity_word_5"] > #pr-problems > .pr-row:nth-child(n+9) > * { grid-column:1; align-self:start; }
#pr-sheet.pr-fit[data-unit="volume_capacity_word_5"] > #pr-problems > .pr-row:nth-child(n+9) > .pr-ans-box { grid-column:2; grid-row:1 / span 2; align-self:end; margin:0 !important; }
/* 問9の選択肢（Q-D1-06）は1行に1つずつ、番号を付けて縦に並べる */
#pr-sheet.pr-fit[data-unit="volume_capacity_word_5"] .pr-choice-list { display:block !important; margin:1pt 0 0 14pt !important; }
#page-print #pr-sheet.pr-fit[data-unit="volume_capacity_word_5"] > #pr-answers { display:flex !important; flex-wrap:wrap; column-gap:14pt; row-gap:1pt; }
#page-print #pr-sheet.pr-fit[data-unit="volume_capacity_word_5"] .pr-ans-cell { min-height:0 !important; padding:0 !important; }

/* 4年「折れ線グラフをよもう」：10問が同じ図を読むので、図は紙の上に1つだけ置く（js 側で問題の前へ置く）。
   図は幅150mmで置き、目もり・月の文字は図の10px（紙の上で約10.6pt）にそろえる */
#page-print #pr-sheet.pr-fit[data-unit="line_graph_read_4"] > #pr-problems { display:grid !important; }
#page-print #pr-sheet.pr-fit[data-unit="line_graph_read_4"] > #pr-problems > .line-graph-read4-shared { grid-column:1 / -1 !important; }
#pr-sheet.pr-fit[data-unit="line_graph_read_4"] .line-graph-read4-shared > div:first-child { margin:0 0 1pt !important; }
#page-print #pr-sheet.pr-fit[data-unit="line_graph_read_4"] .pr-q { display:block !important; }
#pr-sheet.pr-fit[data-unit="line_graph_read_4"] .pr-q table { margin:2pt auto !important; }
#pr-sheet.pr-fit[data-unit="line_graph_read_4"] .line-graph-read4-shared > svg { width:150mm !important; max-width:100% !important; height:auto !important; margin:0 auto !important; }
#page-print #pr-sheet.pr-fit[data-unit="line_graph_read_4"] .line-graph-read4-shared > svg text { font-size:10px !important; }

/* 4年「2つの折れ線グラフをくらべよう」：10問が同じ図と表を使うので、図と表は紙の上に1つずつ（js 側で問題の前へ置く）。図は幅112mm（目もり・月・凡例は紙の上で約10pt） */
#page-print #pr-sheet.pr-fit[data-unit="line_graph_compare_4"] > #pr-problems > .line-graph-compare4-shared{grid-column:1 / -1 !important;display:flex !important;gap:8mm;align-items:center;justify-content:center;}
#pr-sheet.pr-fit[data-unit="line_graph_compare_4"] .line-graph-compare4-graph{flex:0 0 auto;width:112mm;}
#pr-sheet.pr-fit[data-unit="line_graph_compare_4"] .line-graph-compare4-graph > div{margin:0 0 1pt !important;font-size:8.5pt !important;}
#pr-sheet.pr-fit[data-unit="line_graph_compare_4"] .line-graph-compare4-graph > svg{width:112mm !important;max-width:100% !important;height:auto !important;margin:0 !important;}
#pr-sheet.pr-fit[data-unit="line_graph_compare_4"] .line-graph-compare4-table{flex:1 1 auto;}
#pr-sheet.pr-fit[data-unit="line_graph_compare_4"] .line-graph-compare4-table table{width:100% !important;font-size:9.5pt !important;margin:0 !important;}
#page-print #pr-sheet.pr-fit[data-unit="line_graph_compare_4"] .pr-q{display:block !important;}
#pr-sheet.pr-fit[data-unit="line_graph_compare_4"] .line-graph-compare4-table table th:first-child, #pr-sheet.pr-fit[data-unit="line_graph_compare_4"] .line-graph-compare4-table table td:first-child{width:17mm;white-space:nowrap;padding:2px 2px !important;}
#pr-sheet.pr-fit[data-unit="line_graph_compare_4"] .line-graph-compare4-table table th, #pr-sheet.pr-fit[data-unit="line_graph_compare_4"] .line-graph-compare4-table table td{white-space:nowrap;padding:2px 1px !important;}
#pr-sheet.pr-fit[data-unit="line_graph_compare_4"] .line-graph-compare4-table table th:first-child, #pr-sheet.pr-fit[data-unit="line_graph_compare_4"] .line-graph-compare4-table table td:first-child{padding:2px 2px !important;}
#pr-sheet.pr-fit[data-unit="quad_draw_4"] .pr-row[data-quad-print-cols="1"]{grid-column:1 / -1;}

/* 総まとめ(5)（3・4年）：共通の表を上に1回だけ置く */
#page-print #pr-sheet.pr-fit:is([data-unit="matome5_g4"],[data-unit="matome5_g3"]) > #pr-problems > .matome-shared-tables{grid-column:1 / -1 !important;display:flex !important;gap:8mm;align-items:flex-start;justify-content:center;}
#pr-sheet.pr-fit:is([data-unit="matome5_g4"],[data-unit="matome5_g3"]) .matome-shared-tables table{margin:0 !important;font-size:10.5pt !important;}
#pr-sheet.pr-fit:is([data-unit="matome5_g4"],[data-unit="matome5_g3"]) .matome-shared-tables table th,#pr-sheet.pr-fit:is([data-unit="matome5_g4"],[data-unit="matome5_g3"]) .matome-shared-tables table td{white-space:nowrap !important;padding:1pt 4pt !important;line-height:1.2 !important;}
#pr-sheet.pr-fit:is([data-unit="matome5_g4"],[data-unit="matome5_g3"]) .pr-row{padding:1.5pt 4pt !important;gap:0 !important;}
#pr-sheet.pr-fit:is([data-unit="matome5_g4"],[data-unit="matome5_g3"]) .pr-ans-write{min-height:11pt !important;}
#pr-sheet.pr-fit:is([data-unit="matome5_g4"],[data-unit="matome5_g3"]) > #pr-problems{row-gap:2pt !important;}
#pr-sheet.pr-fit:is([data-unit="matome5_g4"],[data-unit="matome5_g3"]) .matome-shared-cap{font-size:9.5pt;font-weight:700;margin:0 0 1pt;}
/* triangle_area_ratio_5（6年へ移した）：右に置く図と答えの記入線の間を1mm以上あける（.pr-fit .pr-row の gap:1pt が効いて0.99mmだった。2026-10-11） */
#pr-sheet.pr-fit-side[data-unit="triangle_area_ratio_5"] .pr-row { column-gap:2pt !important; }
/* scale_figure_6（縮図・拡大図（縮尺）。単元仕様書 v1.2 §7）：4つの選択肢を問題文の下の1行に収めるため、選択肢のあいだと左の余白をせまくする（A4・1枚に収める） */
#pr-sheet.pr-fit[data-unit="scale_figure_6"] .pr-choice-list { column-gap:6pt !important; margin-left:8pt !important; }
/* scale_figure_6：右に置く図と答えの記入欄の間を1mm以上あける（図の幅が広い問で0.7〜0.9mmだった。triangle_area_ratio_5 と同じ手当て） */
#pr-sheet.pr-fit-side[data-unit="scale_figure_6"] .pr-row { column-gap:8pt !important; }

/* conditional_counting2_6（場合の数を条件でしぼろう、単元仕様書 v1.3 §7・§7-1）：A4縦・2列×5段。各問は1行目に問題番号と問題文、
   その下の行に、左に図（図の1単位を0.228mm。UNIT_MASTER.print.fitSvgScale）、すき間2mm、右に記入の欄（欄名「答え」／"Answer" を上、
   記入の線を下。幅は残り、18mm以上）。記入の欄の下はしは図の下はしにそろえる。問題の枠の組み立て（js/print-layer.js）は共通のまま。 */
#pr-sheet.pr-fit[data-unit="conditional_counting2_6"] .pr-row-graph { display:grid !important; grid-template-columns:auto minmax(18mm,1fr); grid-template-rows:auto 1fr; column-gap:2mm !important; row-gap:1pt !important; align-content:start; }
#pr-sheet.pr-fit[data-unit="conditional_counting2_6"] .pr-row-graph > .pr-row-header { grid-column:1 / -1; grid-row:1; }
#pr-sheet.pr-fit[data-unit="conditional_counting2_6"] .pr-row-graph > .pr-graph-block { grid-column:1; grid-row:2; align-self:end; margin:0 !important; padding:0 !important; }
#pr-sheet.pr-fit[data-unit="conditional_counting2_6"] .pr-row-graph > .pr-graph-block svg { margin:0 !important; }
#pr-sheet.pr-fit[data-unit="conditional_counting2_6"] .pr-row-graph > .pr-ans-box { grid-column:2; grid-row:2; align-self:end; min-width:18mm; margin:0 !important; display:flex; flex-direction:column; align-items:stretch; gap:1pt; }
#pr-sheet.pr-fit[data-unit="conditional_counting2_6"] .pr-row-graph > .pr-ans-box .pr-ans-write { min-width:0; width:100%; flex:0 0 auto; }
/* express_formula_4（単元仕様書 v1.2 §7、品質検査33 DEC-02）：A4縦・2列。「どれですか」の8問の選択肢を足したぶん、表のセルの上下の余白と
   選択肢・表の行の高さと問題の枠の上下の余白を詰めて、縮小なしの1枚（問題文・選択肢12.5pt）に収める（UNIT_MASTER.print.fitTight と合わせて使う） */
#pr-sheet.pr-fit[data-unit="express_formula_4"] .pr-q table td, #pr-sheet.pr-fit[data-unit="express_formula_4"] .pr-q table th { padding:0 4pt !important; line-height:1.15 !important; }
#pr-sheet.pr-fit[data-unit="express_formula_4"] .pr-q p { margin:0 !important; }
#pr-sheet.pr-fit[data-unit="express_formula_4"] .pr-choice-list { line-height:1.15 !important; }
#pr-sheet.pr-fit[data-unit="express_formula_4"] .pr-row { padding:2pt 5pt !important; }
