/* ========================================
   フラット化フォームレイアウト v2
   table ネスト → div/grid 置換用CSS
   ======================================== */

/* コンテナ */
.fv2-wrap {
  max-width: 800px;
  margin: 0 0 12px;
  font-family: 'ＭＳ Ｐゴシック', sans-serif;
  font-size: 10pt;
}

/* セクション */
.fv2-section {
  border: 1px solid #CCCCCC;
  margin-bottom: 8px;
  background: #fff;
}

/* 見出し */
.fv2-heading {
  background: #000;
  color: #fff;
  font-size: 11pt;
  font-weight: bold;
  padding: 4px 8px;
  margin: 0;
  text-align: left;
}

.fv2-subheading {
  background: #C1AAFF;
  color: #333;
  font-size: 10pt;
  font-weight: bold;
  padding: 4px 8px;
  margin: 0;
  text-align: left;
}

/* 行: ラベル150px固定 + 値 */
.fv2-row {
  display: grid;
  grid-template-columns: 150px 1fr;
  min-height: 28px;
  border-bottom: 1px solid #CCCCCC;
}
.fv2-row:last-child {
  border-bottom: none;
}

/* ラベル */
.fv2-label {
  background: #FFFFD5;
  font-size: 10pt;
  padding: 4px 6px;
  margin: 0;
  text-align: left;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  border-right: 1px solid #CCCCCC;
  white-space: nowrap;
}
.fv2-label--input {
  background: #E6E6CF;
}
.fv2-label--confirm {
  background: #E9E9E9;
}

/* 値 */
.fv2-value {
  font-size: 10pt;
  padding: 4px 6px;
  margin: 0;
  background: #E9E9E9;
}
.fv2-value--confirm {
  background: #FFFFFF;
}

/* 入力セル用 */
.fv2-value input[type="text"],
.fv2-value textarea,
.fv2-value select {
  box-sizing: border-box;
}

/* エラー表示 */
.fv2-error {
  max-width: 60%;
  margin: 12px auto;
  text-align: center;
  color: red;
  font-size: 11pt;
  border: 1px solid red;
  padding: 8px;
  background: #fff;
}

/* 必須マーク */
.fv2-req { color: red; }

/* ヒントテキスト */
.fv2-hint { font-size: 8pt; color: #7F542A; }
.fv2-hint--red { font-size: 8pt; color: #FF5555; }

/* ボタン領域 */
.fv2-actions {
  text-align: center;
  padding: 12px 8px;
}

/* 完了メッセージ */
.fv2-done {
  text-align: center;
  font-size: 13pt;
  padding: 20px;
}

/* ────────────────────────────────────
   問い合わせフォーム用 追加スタイル
   ──────────────────────────────────── */

/* セクション見出し (紫系) */
.fv2-subheading--inq {
  background: #70609F;
  color: #fff;
  font-size: 10pt;
  font-weight: bold;
  padding: 4px 8px;
  margin: 0;
}

/* 入力行ラベル (ベージュ系) */
.fv2-label--inq {
  background: #E6E6CF;
  font-size: 10pt;
  padding: 4px 6px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  border-right: 1px solid #CCCCCC;
}

/* 確認行ラベル (グレー系) */
.fv2-label--inq-confirm {
  background: #E9E9E9;
  font-size: 10pt;
  padding: 4px 6px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  border-right: 1px solid #CCCCCC;
}

/* 確認行値 */
.fv2-value--inq-confirm {
  background: #F4EFDF;
  font-size: 10pt;
  padding: 4px 6px;
}

/* 全幅セル (チェックボックスやテキストエリア等) */
.fv2-row--full {
  display: block;
  border-bottom: 1px solid #CCCCCC;
}
.fv2-row--full:last-child {
  border-bottom: none;
}
.fv2-value--full {
  font-size: 10pt;
  padding: 6px 8px;
  background: #fff;
}

/* 確認セクション見出し (グレー) */
.fv2-subheading--confirm {
  background: #CCCCCC;
  color: #333;
  font-size: 10pt;
  font-weight: bold;
  padding: 4px 8px;
  margin: 0;
}
