/* 技能検定（技能士）。原稿固有の配置だけを共通CSSに追加。 */
#header .card > div:last-child { grid-template-columns: minmax(0,1fr); }
.fv-context { order: 8; }
#check .card { display: grid; grid-template-columns: 40px minmax(0,1fr); gap: 16px; align-items: start; }
#check .card > div { min-width: 0; margin-top: 0; }
table[data-table-kind="shikaku"] { table-layout: fixed; }
table[data-table-kind="shikaku"] th:first-child { width: 6.5em; min-width: 0; }
table[data-table-kind="nittei"] { table-layout: fixed; }
table[data-table-kind="nittei"] th:first-child { width: 30%; }
table[data-table-kind="tesuryo"] { min-width: 0; table-layout: fixed; }
table[data-table-kind="tesuryo"] th:nth-child(2) { width: 9.3em; }
table[data-table-kind="tesuryo"] .n { text-align: left; }
.money-amount { white-space: nowrap; font-variant-numeric: tabular-nums; }
table[data-table-kind="kojin"] { table-layout: fixed; }
table[data-table-kind="kojin"] th:first-child { width: 7.5em; min-width: 0; }
table[data-table-kind="gokaku"] { table-layout: fixed; }
table[data-table-kind="gokaku"] th:first-child { width: 31%; }
table[data-table-kind="gokaku"] td.n { white-space: normal; overflow-wrap: anywhere; }
@media (max-width: 767px) { table[data-table-kind="gokaku"] :is(th, td) { padding-inline: 4px; } }
table[data-table-kind="shokushu"] { table-layout: fixed; }
table[data-table-kind="shokushu"] th:first-child { width: 38%; }
@media (max-width: 767px) {
  table[data-table-kind="tesuryo"] th, table[data-table-kind="tesuryo"] td { padding-inline: 4px; }
  table[data-table-kind="tesuryo"] th:first-child { min-width: 0; }
}
@media (min-width: 768px) {
  #header .card > div:last-child { width: auto; }
  #fv .fv-context { grid-area: 8 / 1 / 9 / -1; }
}

/* 第3回：原稿のカード・手順を図として整える。 */
.gino-photo { min-width:0; order:9; }
.gino-photo .photo-placeholder { width:100%; aspect-ratio:4/3; }
.verification-support { display:grid; gap:16px; padding:20px; border:2px solid var(--color-navy); border-radius:12px; background:var(--color-bg); }
.verification-heading { font-weight:700; color:var(--color-navy); margin:0; }
.verification-support .card { background:var(--color-bg-alt); }
.verification-icon { width:48px; height:48px; float:right; margin:0 0 12px 16px; color:var(--color-navy); }
.verification-item > div { display:flow-root; min-width:0; }
#flow .gino-steps { display:grid; grid-template-columns:minmax(0,1fr); gap:24px; }
#flow .step { min-width:0; }
#flow .step .num { border-radius:50%; }
#staff .photo-placeholder { display:grid; place-items:center; aspect-ratio:1; font-size:14px; color:var(--color-text-sub); }
@media (min-width:768px) {
 #fv .gino-photo { grid-area:4 / 2 / 6 / 3; align-self:start; }
 #fv .gino-photo .photo-placeholder { aspect-ratio:16/9; }
 #flow .gino-steps { max-width:960px; grid-template-columns:repeat(6,minmax(0,1fr)); gap:16px; align-items:start; }
 #flow .step { display:flex; flex-direction:column; align-items:flex-start; gap:12px; padding:0; }
 #flow .step > div { width:100%; min-width:0; }
 #flow .step h3 { font-size:16px; line-height:1.8; }
 #flow .step p { font-size:14px; line-height:1.85; }
 #flow .step:not(:last-child)::after { left:40px; top:19px; bottom:auto; width:calc(100% - 24px); height:2px; }
 #flow .step .flow-note { margin-top:16px; padding:12px; }
}
