/* ============================================================
   order.css  –  ご注文の流れ・ご依頼フォーム（order-sus）専用
   ../css/style.css → css/inquiry.css の後に読み込む
   ============================================================ */

/* ---- お取引の流れ ---- */
.order-flow-lead{
  max-width:860px;margin:0 auto clamp(24px,3vw,36px);
  color:var(--ink);font-weight:500;line-height:1.9;
  font-size:clamp(14px,1.5vw,16px);
}
.order-flow{
  list-style:none;margin:0;padding:0;
  display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(14px,2vw,22px);
}
.order-flow .flow-step{max-width:none;min-width:0;margin:0;text-align:left}
.order-flow .flow-step h3{font-size:clamp(16px,1.7vw,18px)}
.order-flow .flow-step p{font-size:clamp(13px,1.3vw,14.5px);line-height:1.85}

/* ---- フォーム内の見出し ---- */
.order-form-h{
  font-size:clamp(17px,1.9vw,20px);font-weight:700;color:var(--blue-deep);
  margin:clamp(28px,4vw,40px) 0 .9em;padding-bottom:.5em;
  border-bottom:1px solid var(--line);
}
form > .order-form-h:first-of-type{margin-top:clamp(16px,2vw,24px)}
.inquiry-wrap .inquiry-table{margin-bottom:0}

/* 表の中の小見出し（住所・ヒアリング内容） */
.inquiry-table tr.row-subhead th{
  width:auto;background:var(--blue-light);color:var(--blue-deep);
  font-size:clamp(14px,1.4vw,15px);
}

/* ---- 添付欄（2列・削除ボタン付き） ---- */
.upload-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px 20px}
.upload-blc{
  display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px;
  background:var(--blue-tint);border:1px solid var(--line);padding:12px 14px;
}
.upload-blc.has-error{background:#fff8f8;border-color:#e5b4ae}
.upload-blc .upload-label{width:100%;font-size:clamp(12.5px,1.25vw,13.5px);font-weight:700;color:var(--blue-deep)}
.upload-blc .input-file{flex:1;min-width:0;width:auto;padding:0;font-size:clamp(12.5px,1.3vw,14px);color:var(--ink)}
.upload-blc .input-file::file-selector-button{
  margin-right:10px;padding:6px 14px;border:1px solid var(--blue);
  background:var(--blue);color:#fff;font:inherit;cursor:pointer;
  transition:background .2s,color .2s;
}
.upload-blc .input-file::file-selector-button:hover{background:#fff;color:var(--blue)}
.upload-clear{
  flex:0 0 36px;width:36px;height:36px;display:flex;align-items:center;justify-content:center;
  border:1px solid var(--blue);background:#fff;color:var(--blue);cursor:pointer;
  transition:background .2s,color .2s;
}
.upload-clear:not(:disabled):hover{background:var(--blue);color:#fff}
.upload-clear:disabled{opacity:.4;cursor:not-allowed}
.upload-clear svg{width:17px;height:17px}
.upload-blc .field-note,
.upload-blc .error-text{width:100%;margin-top:0}
.upload-caution{
  margin-top:14px;font-size:clamp(12.5px,1.3vw,13.5px);
  color:var(--ink-soft);line-height:1.8;
}

/* ---- レスポンシブ ---- */
@media(max-width:860px){
  .order-flow{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:640px){
  .order-flow{grid-template-columns:1fr}
  .upload-list{grid-template-columns:1fr}
  .inquiry-table tr.row-subhead th{padding-bottom:.9rem}
}
