/* 家族葬会館びわこメモリアルホール フォーム */
.bm-form{max-width:760px;margin:0 auto 48px;font-size:16px;line-height:1.8;color:#1d2a2f}
.bm-form-visual{margin:0 0 28px;border-radius:6px;overflow:hidden}
.bm-form-visual img{display:block;width:100%;height:auto;aspect-ratio:1360/420;object-fit:cover}
.bm-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.bm-fields{display:grid;gap:20px}
.bm-h{font-size:19px;margin:16px 0 0;padding-bottom:6px;border-bottom:1px solid #d6dddb;color:#000c2e}
.bm-p{margin:0;font-size:14.5px;color:#4a575c}
.bm-field label{display:grid;gap:6px}
.bm-label{font-weight:700;font-size:15px;display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.bm-req,.bm-opt{font-size:11.5px;font-weight:700;padding:1px 8px;border-radius:3px;letter-spacing:.05em}
.bm-req{background:#9a4a3c;color:#fff}
.bm-opt{background:#e3eae9;color:#4a575c}
.bm-note{font-size:13px;color:#5d6b70}
.bm-form input[type=text],.bm-form input[type=email],.bm-form input[type=tel],.bm-form input[type=number],.bm-form select,.bm-form textarea{
  width:100%;box-sizing:border-box;font:inherit;font-size:16px;padding:12px 14px;border:1px solid #b9c4c2;border-radius:4px;background:#fff;color:#1d2a2f}
.bm-form input:focus,.bm-form select:focus,.bm-form textarea:focus{outline:2px solid #a9864f;outline-offset:1px;border-color:#a9864f}
.bm-form .bm-invalid{border-color:#9a4a3c;background:#fdf3f1}
.bm-inline{display:inline-flex!important;align-items:center;gap:6px;margin-right:24px;font-size:16px}
.bm-consent label{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.bm-group{display:grid;gap:20px;padding:16px;background:#f3f5f4;border-radius:4px}
.bm-group[hidden],.bm-form [hidden]{display:none!important}
.bm-confirm-lead{font-weight:700}
.bm-confirm-list{display:grid;grid-template-columns:minmax(8em,14em) 1fr;margin:0;border-top:1px solid #d6dddb}
.bm-confirm-list dt,.bm-confirm-list dd{margin:0;padding:10px 8px;border-bottom:1px solid #d6dddb;white-space:pre-wrap;word-break:break-word}
.bm-confirm-list dt{font-weight:700;background:#f3f5f4}
.bm-error{background:#fdf3f1;border:1px solid #9a4a3c;color:#7a2f22;padding:12px 14px;border-radius:4px;margin:20px 0 0}
.bm-actions{display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin-top:28px}
.bm-btn{font:inherit;font-size:16px;font-weight:700;padding:14px 28px;border-radius:4px;cursor:pointer;border:1px solid #000c2e}
.bm-to-confirm,.bm-submit{background:#000c2e;color:#fff}
.bm-back{background:#fff;color:#000c2e}
.bm-btn:disabled{opacity:.6;cursor:default}
.bm-done{background:#f3f5f4;border-left:4px solid #a9864f;padding:20px 22px;margin-top:8px}
.bm-done-title{font-size:19px;font-weight:700;margin:0 0 6px}
@media (max-width:600px){.bm-confirm-list{grid-template-columns:1fr}.bm-confirm-list dt{border-bottom:0}.bm-btn{width:100%}}
