/* 玉掛け・クレーン：共通CSSを保持したまま補うページ固有の指定。 */
#fv .fv-notice { order: 9; }
#footer { background: var(--color-navy); }
[data-complete-title] { scroll-margin-top: var(--header-offset); }
#fv .fv-photo-block { order: 8; min-width: 0; }
#fv .fv-photo-block .photo-placeholder { aspect-ratio: 4 / 3; }
#fv .fv-photo-block img { object-fit: contain; background: #edf0f2; }
#work .work-photo-block { max-width: var(--width-text); }
#work .work-photo-block img { object-fit: contain; }
#check .card-icon {
  float: right;
  width: 48px;
  height: 48px;
  margin: 0 0 12px 12px;
  color: var(--color-navy);
}
#check .check-card > div { display: flow-root; }

#nenshu .kpi { color: var(--color-navy); font-weight: 700; }
#nenshu .big {
  color: var(--color-navy);
  font-size: clamp(32px, 8vw, 44px);
  font-weight: 700;
  line-height: 1.4;
  font-variant-numeric: tabular-nums;
}
.check-card {
  display: grid;
  grid-template-columns: var(--size-number) minmax(0, 1fr);
  gap: var(--space-4);
}
.check-card > div { min-width: 0; }
#faq .q { margin: 0; align-items: start; }
#faq .a {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: var(--space-3);
  align-items: start;
}
#faq .q > .qm, #faq .a > .am { margin-top: 2px; }

/* 複数の条件と法令名を含む表。横スクロールを枠内に限定する。 */
#hiyou th:first-child { width: 19%; }
#hiyou th:nth-child(2) { width: 25%; }
#hiyou th:nth-child(3) { width: 38%; }
#hiyou th:nth-child(4) { width: 18%; }
#hayami :is(th, td), #hiyou :is(th, td) { overflow-wrap: anywhere; }
.opt > span { overflow-wrap: anywhere; }

@media (min-width: 768px) {
  #fv .fv-photo-block { grid-area: 4 / 2 / 6 / 3; align-self: start; }
  #fv .fv-photo-block .photo-placeholder { aspect-ratio: 16 / 9; }
  #fv .fv-notice { grid-column: 1 / -1; grid-row: 8; }
}
@media print {
}
