/* 既存CSSを維持し、入力操作・エラー表示だけ補助します。 */
.sfm-error{border:2px solid #b00020;background:#fff5f5;color:#8a0018;padding:1em;margin:1em 0}.sfm-required{color:#a60018;font-size:.85em}.sfm-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.sfm-value{overflow-wrap:anywhere}#sfm-form input,#sfm-form textarea,#sfm-form select{box-sizing:border-box;max-width:100%;padding:.5em;font-size:16px}#sfm-form small{display:block;margin-top:.4em}button{cursor:pointer;padding:.6em 1em;font-size:16px}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #176caa;outline-offset:3px}[aria-invalid=true]{border:2px solid #b00020}button:disabled{opacity:.6}.sfm-menu-open{display:block!important;visibility:visible!important;transform:none!important;z-index:1000;position:fixed!important;top:0;left:0;bottom:0;background:#fff;overflow:auto;min-width:240px;max-width:85vw}
#sfm-form .sfm-inline-fields{display:flex;flex-wrap:nowrap;align-items:center;gap:4px;max-width:100%}
#sfm-form .sfm-inline-fields input{width:6em;min-width:0;margin:0;flex:0 1 auto}
#sfm-form .sfm-inline-fields span{flex:0 0 auto;white-space:nowrap}
#sfm-form .sfm-postal-action{margin-top:12px}

#sfm-form .sfm-radio-group{display:flex;flex-wrap:wrap;gap:1em}#sfm-form .sfm-radio-group input{width:auto}
#sfm-form #year{width:5em}#sfm-form #month,#sfm-form #day{width:3em}

#sfm-form .sfm-required{color:#ffdb83}#sfm-form .sfm-field-error{color:#a60018}#sfm-form .sfm-radio-group label{display:inline-flex;align-items:center;gap:.4em}#sfm-form .sfm-inline-fields input{display:inline-block}#sfm-form #address2{width:100%}.sfm-value{white-space:normal}
