/* XXBase 無料体験フォーム（最小限。見た目の仕上げはHP担当） — css/style.css の .form/.field/.btn を使う */
.trial { max-width: 880px; margin: 0 auto; padding: 48px var(--pad, 20px) 80px; }
.trial__kicker { font-weight: 900; letter-spacing: .3em; font-size: 12px; margin: 0; }
.trial__title { margin: 6px 0 12px; }
.trial__slots { display: inline-block; font-weight: 900; padding: 6px 12px; border: 2px solid var(--ink, #111); border-radius: 3px; }
.trial__slots.is-full { border-style: dashed; }
.trial__step { border: 0; padding: 0; margin: 0 0 8px; min-width: 0; }
.trial__step legend, .trial__h2 { font-weight: 900; font-size: 16px; letter-spacing: .1em; margin: 20px 0 10px; padding: 0; }
.trial__num { display: inline-grid; place-items: center; width: 1.8em; height: 1.8em; margin-right: .5em; background: var(--ink, #111); color: var(--paper, #fff); border-radius: 50%; font-size: 13px; }
.trial__choices { display: grid; gap: 10px; }
@media (min-width: 640px) { #goal-choices { grid-template-columns: 1fr 1fr; } }
.trial__choice, .trial__check { display: flex; gap: 12px; align-items: flex-start; padding: 12px 14px; border: 2px solid var(--line, #333); border-radius: 3px 5px 4px 6px; cursor: pointer; font-weight: 700; letter-spacing: .04em !important; font-size: 15px !important; }
.trial__choice input, .trial__check input { width: 22px; height: 22px; margin: 2px 0 0; flex: none; accent-color: var(--ink, #111); }
.trial__choice small { display: block; font-weight: 400; font-size: 13px; color: var(--ink-soft, #555); }
.trial__choice:has(input:checked) { box-shadow: 0 0 0 3px var(--ink, #111); }
.trial__choice:focus-within, .trial__check:focus-within { outline: 3px solid var(--ink, #111); outline-offset: 2px; }
.trial__req { font-size: 11px; font-weight: 900; border: 1.5px solid currentColor; padding: 0 5px; margin-left: 4px; letter-spacing: .1em; }
.trial__privacy { font-size: 13px; margin: 8px 0; }
.field.has-error .trial__choice, .field.has-error .trial__check { border-style: dashed; }
.trial__done { padding: 40px 0; }
.trial__done:focus { outline: none; }
.cf-turnstile { margin-top: 8px; min-height: 65px; }
/* style.css の .field input { appearance:none; padding… } を、選択肢では元に戻す */
.field .trial__choice input, .field .trial__check input { -webkit-appearance: auto; appearance: auto; padding: 0; box-shadow: none; border: 0; width: 22px; height: 22px; }
