/* field-group block. Page-specific declaration differences are scoped with data-page. */
.field-group__title{display:flex; align-items:center; gap:10px; margin-bottom:16px; font-size:16px; font-weight:700; letter-spacing:0.05em;}
.field-group{padding:28px 30px; border:1px solid var(--line-soft); border-radius:16px; background:rgba(255,255,255,0.55);}
/* グループ内の行（銀行／支店 → 種別／番号 → 名義人）を、列の gap と同じ間隔で分ける。 */
.field-group > .field-row + .field-row,
.field-group > .field-row + .field{margin-top:24px;}
@media (max-width:768px){
  /* 見出し〜各項目を同じ間隔にし、箱の左右も画面余白に合わせる。 */
  .field-group{display:flex; flex-direction:column; gap:24px; padding:24px 20px;}
  .field-group__title{margin-bottom:0;}
  .field-group > .field-row + .field-row,
  .field-group > .field-row + .field{margin-top:0;}
}

/* 解約される物件の種別（マンション／アパート／戸建）。1つだけ選ぶラジオ。 */
.field__radios{display:flex; flex-wrap:wrap; gap:14px 28px;}
.field__radios label{display:inline-flex; align-items:center; gap:10px; min-height:44px; font-size:16px; cursor:pointer;}
.field__radios input[type="radio"]{width:20px; height:20px; accent-color:var(--accent);}
.field-group:has(.field__radios){padding-top:24px; padding-bottom:24px;}
/* 送信後のご案内。パンダの吹き出しは使わず、静かなトーンで置く。 */
.form-note{margin-top:40px; color:var(--ink-soft); font-size:15px; line-height:1.9; text-align:left;}
@media (max-width:768px){
  .field__radios{gap:12px 20px;}
  .form-note{margin-top:32px;}
}
