/* contact_form.html(iframe の中身)の見た目。field 名・action は旧来のまま */
*{box-sizing:border-box}
body{margin:0;padding:16px;background:#fff;color:#1b1d2b;font-family:"Noto Sans JP",system-ui,-apple-system,"Hiragino Sans","Yu Gothic UI",sans-serif;font-size:16px;line-height:1.7}
.ot-form{max-width:760px;margin:0 auto}
.row{display:grid;grid-template-columns:1fr;gap:6px;padding:10px 0;border:0;margin:0}
fieldset.row{min-width:0}
legend{padding:0;font-weight:700;color:#4b4f63;font-size:14px}
label,.label{font-weight:700;color:#4b4f63;font-size:14px}
.req{color:#d8365a;font-size:12px}
input[type=text],input[type=email],textarea{width:100%;border:1.5px solid #c9cddd;border-radius:10px;padding:10px 12px;font-size:16px;font-family:inherit;color:#1b1d2b;background:#fff}
input:focus,textarea:focus{outline:2px solid #3cc5cf;outline-offset:1px;border-color:#3cc5cf}
textarea{resize:vertical;min-height:7em}
.tel{display:flex;align-items:center;gap:6px}
.tel input{flex:1 1 0;min-width:0;max-width:110px}
.radios label{display:block;font-weight:400;font-size:15px;color:#1b1d2b;padding:4px 0}
.radios input{margin-right:8px}
.submit{padding:24px 0 8px;text-align:center}
.btn-submit{display:inline-block;min-width:260px;padding:14px 32px;border:0;border-radius:999px;background:#d8365a;color:#fff;font-weight:700;font-size:16px;font-family:inherit;cursor:pointer;transition:.2s}
.btn-submit:hover{background:#b92a4a;transform:translateY(-1px)}
@media (min-width:640px){
  .row{grid-template-columns:140px 1fr;align-items:start}
  .row > label,.row > .label,legend{padding-top:10px}
  fieldset.row{display:grid}
  legend{grid-column:1;float:left}
  .radios{grid-column:2}
}
