.rf{--c-primary:var(--color-brand);--c-primary-dk:color-mix(in srgb, var(--c-primary) 75%, black);--c-err:var(--color-red);--c-border:var(--border-light);--c-focus:var(--color-brand);--c-txt:var(--text-dark);--c-txt-lt:#231e1ea8;--c-txt-mt:#231e1e80;--c-bg-mt:var(--bg-cream);--c-border-lt:var(--border-light);--ff:var(--font-roboto), "Roboto", var(--font-noto), "Noto Sans JP", sans-serif;--sp-xs:5px;--sp-sm:8px;--sp-md:15px;--sp-lg:20px;--sp-xl:30px;--r-sm:6px;--r-md:8px;max-width:600px;padding:var(--sp-xl) var(--sp-lg);font:16px/1.6 var(--ff);margin:0 auto}.rf-hd{text-align:center;margin-bottom:var(--sp-xl)}.rf-hd h1{font-size:var(--text-lg);color:var(--c-txt);margin:0;font-weight:700;line-height:1.4}.rf-info{background:var(--c-bg-mt);border-radius:var(--r-md);padding:var(--sp-lg);margin-bottom:var(--sp-xl);color:var(--c-txt-lt);font-size:12px;line-height:1.7}.rf-info p{margin:0 0 var(--sp-md)}.rf-info p:last-child{margin-bottom:0}.rf-note{color:var(--c-txt-mt);font-size:12px;line-height:1.7}.rf-sec{margin-bottom:var(--sp-xl);padding-bottom:var(--sp-lg);border-bottom:1px solid var(--c-border-lt)}.rf-sec:last-of-type{border-bottom:0}.rf-sec h3{font-size:var(--text-base);margin-bottom:var(--sp-md);color:var(--c-txt);font-weight:700;line-height:1.6}.rf-g{margin-bottom:var(--sp-lg)}.rf-lb{margin-bottom:var(--sp-sm);color:var(--c-txt);font-size:14px;font-weight:500;line-height:1.6;display:block}.rf-r{color:var(--c-err);font-size:12px;font-weight:700}.rf-in,.rf-sl,.rf-ta{width:100%;font:inherit;border:1px solid var(--c-border);border-radius:var(--r-sm);background:var(--bg-white);box-sizing:border-box;padding:12px 15px;transition:border-color .2s,box-shadow .2s}.rf-in:focus,.rf-sl:focus,.rf-ta:focus{border-color:var(--c-focus);box-shadow:0 0 0 3px color-mix(in srgb, var(--c-primary) 12%, transparent);outline:0}.rf-in.err{border-color:var(--c-err)}.rf-ta{resize:vertical;min-height:100px}.rf-inline{align-items:center;gap:8px;display:flex}.rf-inline .rf-in,.rf-inline .rf-sl{flex:1}.rf-inline .rf-sep{color:var(--c-txt-mt);flex-shrink:0;font-size:14px}.rf-ht{color:var(--c-txt-mt);margin-top:6px;font-size:12px;line-height:1.7}.rf-er{color:var(--c-err);margin-top:6px;font-size:12px;display:none}.rf-er.show{display:block}.rf-rg{margin-top:var(--sp-xs);gap:24px;display:flex}.rf-rg label{cursor:pointer;align-items:center;gap:6px;padding:10px 4px;font-size:14px;display:flex}.rf-rg input[type=radio]{width:18px;height:18px;accent-color:var(--c-primary)}.rf-cg{margin-top:var(--sp-xs);flex-direction:column;gap:12px;display:flex}.rf-cg label{cursor:pointer;align-items:center;gap:8px;font-size:14px;display:flex}.rf-cg input[type=checkbox]{width:17px;height:17px;accent-color:var(--c-primary);flex-shrink:0}.rf-bx{background:var(--c-bg-mt);border-left:4px solid var(--border-light);padding:var(--sp-md) var(--sp-lg);border-radius:0 var(--r-md) var(--r-md) 0;margin-bottom:var(--sp-lg)}.rf-bx h4{font-size:var(--text-sm);color:var(--c-txt);margin:0 0 var(--sp-sm);font-weight:700;line-height:1.6}.rf-bx p{color:var(--c-txt-lt);margin:0;font-size:12px;line-height:1.7}.rf-bx.pr{padding:var(--sp-lg)}.rf-bx.pr p{margin-bottom:var(--sp-md)}.rf-ck{align-items:center;gap:10px;display:flex}.rf-ck input{cursor:pointer;width:18px;height:18px}.rf-ck label{color:var(--c-txt);cursor:pointer;font-size:14px}.rf-rb{color:var(--c-err);margin-left:var(--sp-xs);font-size:12px;font-weight:700}.rf-ac{margin-top:var(--sp-xl);text-align:center}.rf-btn{font:700 16px var(--ff);color:var(--bg-white);background:var(--c-primary);border-radius:var(--r-md);cursor:pointer;border:0;width:100%;max-width:300px;padding:15px 60px;transition:background .2s,transform .1s}.rf-btn:hover{background:var(--c-primary-dk)}.rf-btn:active{transform:scale(.98)}.rf-btn:disabled{background:var(--border-light);cursor:not-allowed;transform:none}.rf-msg{margin-top:var(--sp-lg);padding:var(--sp-md);border-radius:var(--r-sm);text-align:center;white-space:pre-line;font-size:14px;display:none}.rf-msg.ok{background:var(--tint-green);color:var(--text-dark);border:1px solid var(--color-green);display:block}.rf-msg.ng{background:var(--tint-red);color:var(--text-dark);border:1px solid var(--color-red);display:block}.rf-hp{opacity:0;pointer-events:none;position:absolute;left:-9999px}@media (max-width:767px){.rf{padding:var(--sp-lg) 0}.rf-btn{max-width:none;padding:15px 20px}.rf-rg{gap:16px}.rf-inline{gap:4px}}select.rf-sl{appearance:none;background-image:var(--form-select-arrow);background-position:right 15px center;background-repeat:no-repeat;padding-right:40px}
