body.cf-standalone{margin:0;}.cf-main{font:16px/1.8 system-ui,-apple-system,"Noto Sans JP",sans-serif;color:#222;max-width:1000px;width: 96%; margin:0 auto 48px ;box-sizing: border-box; text-align: left}.cf-main,.cf-main *{box-sizing:border-box}.cf-main h1{font-size:30px;font-weight:700;margin:0 0 16px}.cf-description{line-height:1.9}.cf-steps{display:flex;list-style:none;padding:0;margin:28px 0;gap:8px}.cf-steps li{flex:1;background:#edf2f6;text-align:center;border-radius:6px;padding:12px;color:#333}.cf-steps [aria-current]{background:var(--cf-color);color:white;font-weight:700}.cf-row{display:grid;grid-template-columns:240px minmax(0,1fr);gap:24px;border-top:1px solid #CCC;padding:24px 0}.cf-label{font-weight:650;line-height:1.8}.cf-required,.cf-optional{display:inline-block;font-size:12px;margin-left:12px;padding:1px 7px;border-radius:4px}.cf-required{color:#a62435;background:#fff0f1}.cf-optional{color:#607180;background:#eff3f6}.cf-control input:not([type=radio]):not([type=checkbox]):not([type=file]),.cf-control textarea,.cf-control select{width:100%;font:inherit;padding:12px 14px;border:1px solid #CCC;border-radius:6px;background:#fff;color:#222}.cf-control textarea{resize:vertical}.cf-control input:focus,.cf-control textarea:focus,.cf-control select:focus{outline:3px solid #c8e4f4;outline-offset:1px}.cf-choice{display:flex;align-items:center;gap:6px;margin:0 0 12px;line-height:1.7}.cf-choice input{width:19px;height:19px;accent-color:var(--cf-color);flex-shrink:0}.cf-help{display:block;font-size:13px;line-height:1.7;color:#607180;margin:10px 0}.cf-error{color:#af2337;line-height:1.8;font-size:14px;margin:8px 0 0}.cf-error:empty{display:none}.cf-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:14px;padding-top:26px}.cf-main button,#cf-confirm button,.cf-button{font:inherit;font-weight:650;border:1px solid var(--cf-color);border-radius:7px;background:var(--cf-color);color:#fff;padding:14px 32px;cursor:pointer;display:inline-block;text-decoration:none}.cf-main button:hover,#cf-confirm button:hover,.cf-button:hover{filter:brightness(.92)}.cf-main button:disabled,#cf-confirm button:disabled{opacity:.5;cursor:wait}.cf-main button.cf-back,#cf-confirm button.cf-back{background:white;color:var(--cf-color)}.cf-main a{color:var(--cf-color)}.cf-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.cf-vertical .cf-row{grid-template-columns:1fr;gap:10px}.cf-answer{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.8;margin:0}.cf-note{padding:16px;background:#f0f6fa;border-radius:8px;line-height:1.8}.cf-heading{font-size:22px}@media(max-width:650px){.cf-main{margin:12px auto;padding:22px 18px}.cf-row{grid-template-columns:1fr;gap:10px}.cf-steps li{font-size:14px;padding:10px 4px}.cf-main h1{font-size:25px}.cf-actions button{width:100%}}
/* Floating labels use native focus/value state, including in the sandboxed preview. */
/* 高度なフォーム。PCは12列のグリッド、スマホでは設定順に縦並びにする。 */
.cf-group-controls{display:flex;flex-direction:column;gap:16px}.cf-group-controls[data-group-layout=horizontal]{flex-direction:row;flex-wrap:wrap}.cf-group-controls[data-group-layout=grid]{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:16px 12px;align-items:start}.cf-group-child{display:flex;align-items:center;gap:7px;min-width:0}.cf-group-child[hidden]{display:none!important}.cf-group-controls[data-group-layout=grid]>.cf-group-child{grid-column:var(--cf-col)/span var(--cf-span);grid-row:var(--cf-row)}.cf-group-controls[data-group-layout=horizontal]>.cf-group-child{flex:1 1 160px}.cf-group-child>.cf-row{display:flex;flex-direction:column;gap:6px;min-width:0;width:100%;padding:0;border:0}.cf-group-child .cf-label{font-size:14px}.cf-group-child .cf-required,.cf-group-child .cf-optional{margin-left:6px;font-size:11px}.cf-group-child .cf-control{min-width:0}.cf-group-suffix{flex-shrink:0;font-size:14px;padding-top:24px}.cf-group-note{white-space:normal;overflow-wrap:anywhere;line-height:1.8}.cf-group-break{flex-basis:100%;height:0}.cf-group-controls[data-group-layout=grid]>.cf-group-break{display:none}.cf-group-child .cf-choice{margin-bottom:6px}
@media(max-width:650px){.cf-group-controls[data-group-layout=grid]{display:flex;flex-direction:column}.cf-group-child{width:100%}}
/* Placeholder site chrome is replaced together with its markup in the exported PHP. */
.cf-policy-text{height:220px;overflow-y:auto;overscroll-behavior:contain;white-space:pre-wrap;overflow-wrap:anywhere;padding:16px;border:1px solid #CCC;border-radius:6px;background:#f8fafc;line-height:1.8;margin-bottom:16px}
.cf-policy-text:focus-visible{outline:3px solid #c8e4f4;outline-offset:2px}.cf-policy-link{display:inline-block;margin-bottom:14px}
.cf-address-fields{display:grid;gap:14px}.cf-address-item{display:grid;grid-template-columns:120px minmax(0,1fr);align-items:start;gap:8px}.cf-address-item>label{font-size:14px;font-weight:600;padding-top:12px}.cf-address-item .cf-required{margin-left:8px}.cf-address-item .p-postal-code{max-width:180px}.cf-control .p-region{max-width:250px}
.cf-group-child.cf-group-label-left:not(.cf-group-hide-label)>.cf-row{display:grid;grid-template-columns:120px minmax(0,1fr);align-items:start;gap:8px}.cf-group-label-left:not(.cf-group-hide-label)>.cf-row>.cf-label{padding-top:12px}.cf-group-child .p-postal-code{max-width:180px}.cf-group-label-left>.cf-group-suffix{padding-top:0}
@media(max-width:420px){.cf-address-item,.cf-group-child.cf-group-label-left:not(.cf-group-hide-label)>.cf-row{grid-template-columns:90px minmax(0,1fr)}.cf-address-item>label,.cf-group-label-left>.cf-row>.cf-label{font-size:13px}}

/* ラベルに必要な幅だけを取り、単位など短いラベルの横に入力欄を置く。 */
.cf-group:not(.h-adr) > .cf-control > .cf-group-controls > .cf-group-label-left:not(.cf-group-hide-label) > .cf-row {
  grid-template-columns: fit-content(40%) minmax(0, 1fr);
}
.cf-group-label-left > .cf-row > .cf-label {
  min-width: 0;
  overflow-wrap: anywhere;
}
.cf-group-child .cf-control select {
  padding-inline: 10px;
}

/* プレビュー枠など、画面全体よりフォームの入力部分が狭い場合も縦に並べる。 */
.cf-group > .cf-control {
  container-type: inline-size;
}
@container (max-width: 480px) {
  .cf-group-controls[data-group-layout=grid] {
    display: flex;
    flex-direction: column;
  }
  .cf-group-controls[data-group-layout=grid] > .cf-group-child {
    width: 100%;
  }
}
.cf-name-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.cf-name-part{min-width:0}.cf-name-part input{min-width:0}.cf-visually-hidden,.cf-group-hide-label>.cf-row>.cf-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:400px){.cf-name-fields{grid-template-columns:1fr}}
.cf-date-shell{position:relative}.cf-date-shell input[data-date-picker]{padding-right:52px}.cf-main .cf-date-trigger{position:absolute;right:5px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:center;width:40px;height:40px;padding:0;border:0;border-radius:5px;background:transparent;color:#526a7c}.cf-main .cf-date-trigger:hover{background:#edf2f6}.cf-main .cf-date-trigger:focus-visible{outline:3px solid #c8e4f4}
.cf-control input[data-birthday-input]{max-width:240px;font-variant-numeric:tabular-nums}
.cf-site-header,.cf-site-footer{font:16px/1.6 system-ui,-apple-system,"Noto Sans JP",sans-serif;color:#222;background:#fff}
.cf-site-header{border-bottom:1px solid #dce4ea}.cf-site-footer{border-top:1px solid #dce4ea;text-align:center}
.cf-site-inner{max-width:1020px;margin:0 auto;padding:22px 40px;box-sizing:border-box}
.cf-site-header .cf-site-inner{display:flex;justify-content:space-between;align-items:center;gap:20px}
.cf-site-header p{margin:0}.cf-site-name{font-size:22px;font-weight:700}
@media(max-width:650px){.cf-site-inner{padding:18px 22px}.cf-site-header .cf-site-inner{flex-wrap:wrap}.cf-site-name{font-size:19px}}
.cf-floating .cf-row{grid-template-columns:1fr;gap:10px}
.cf-floating .cf-float-row{border-top:0;padding:10px 0}
.cf-floating .cf-float-shell{position:relative;min-height:74px;border-bottom:1px solid #aabac8;border-radius:6px 6px 0 0;background:transparent;transition:background 200ms ease,border-color 200ms ease,box-shadow 200ms ease}
.cf-floating .cf-float-shell+.cf-float-shell{margin-top:16px}
.cf-floating .cf-float-shell>label{position:absolute;z-index:1;left:14px;right:10px;top:37px;transform:translateY(-50%);transform-origin:left top;font-weight:600;line-height:1.5;cursor:text;transition:transform 200ms ease,color 200ms ease}
.cf-floating .cf-float-shell input,.cf-floating .cf-float-shell textarea{display:block;width:100%;height:74px;padding:32px 14px 10px;border:0;border-radius:6px 6px 0 0;background:transparent;opacity:0;transition:opacity 200ms ease,height 240ms ease}
.cf-main.cf-floating .cf-control .cf-float-shell input{padding:32px 14px 10px;border:0;border-radius:6px 6px 0 0;background:transparent}
.cf-floating .cf-float-shell textarea{min-height:74px;resize:none}
.cf-floating .cf-float-shell input::placeholder,.cf-floating .cf-float-shell textarea::placeholder{color:#758595}
.cf-floating .cf-float-shell:focus-within,.cf-floating .cf-float-shell:has(input:not(:placeholder-shown),textarea:not(:placeholder-shown)){background:#f2f7fb;border-color:var(--cf-color);box-shadow:0 1px 0 var(--cf-color)}
.cf-floating .cf-float-shell:focus-within>label,.cf-floating .cf-float-shell:has(input:not(:placeholder-shown),textarea:not(:placeholder-shown))>label{transform:translateY(-28px) scale(.78);color:var(--cf-color)}
.cf-floating .cf-float-shell:focus-within input,.cf-floating .cf-float-shell:focus-within textarea,.cf-floating .cf-float-shell:has(input:not(:placeholder-shown),textarea:not(:placeholder-shown)) input,.cf-floating .cf-float-shell:has(input:not(:placeholder-shown),textarea:not(:placeholder-shown)) textarea{opacity:1;outline:none}
.cf-floating .cf-float-shell:focus-within textarea,.cf-floating .cf-float-shell:has(textarea:not(:placeholder-shown)) textarea{height:180px;resize:vertical}
@media(prefers-reduced-motion:reduce){.cf-floating .cf-float-shell,.cf-floating .cf-float-shell>label,.cf-floating .cf-float-shell input,.cf-floating .cf-float-shell textarea{transition:none}}
.cf-complete{max-width:720px;margin:36px auto 20px;padding:40px 36px;text-align:center;border:1px solid #dce8ef;border-radius:16px;background:linear-gradient(145deg,#f5fafc 0%,#fff 68%);box-shadow:0 12px 36px #2030400c}
.cf-complete-mark{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 18px;border:1px solid color-mix(in srgb,var(--cf-color) 22%,white);border-radius:50%;background:color-mix(in srgb,var(--cf-color) 10%,white);color:var(--cf-color);font-size:32px;font-weight:700;line-height:1}
.cf-complete h2{margin:0 0 22px;color:#222;font-size:26px;line-height:1.5}
.cf-complete-message{margin:0;padding:18px 22px;border-radius:9px;background:#FFF;color:#222;line-height:1.9;overflow-wrap:anywhere}
.cf-complete-note,.cf-complete-warning{margin:20px 0 0;color:#526575;font-size:14px;line-height:1.9}
.cf-main .cf-complete .cf-top-button{color:#fff}.cf-top-button:focus-visible{outline:3px solid #c8e4f4;outline-offset:3px}
.cf-main a.cf-button,.cf-main a.cf-button:visited{color:#fff}
.cf-complete-warning{padding:14px 16px;border:1px solid #f0c2c6;border-radius:8px;background:#fff3f3;color:#9b2634}
.cf-other-wrap{margin:8px 0 14px 26px}.cf-other-wrap[hidden]{display:none}.cf-other-wrap label{display:block;margin-bottom:4px;font-size:14px;font-weight:600}.cf-other-wrap input{max-width:520px}
.cf-validation-error{display:block;margin:6px 0 0;color:#b42332;font-size:13px;line-height:1.6}.cf-invalid{border-color:#b42332!important;outline-color:#b42332!important}
/* 入力エラーは本文の高さに含めず、入力欄に少し重ねる。JS有効時はbody直下へ移動。 */
.cf-control,.cf-name-part{position:relative}
.cf-control>.cf-error:not(:empty),.cf-name-part>.cf-error:not(:empty){position:absolute;z-index:5;left:0;top:0;transform:translateY(-80%);max-width:100%;padding:6px 10px;margin:0;border-radius:5px;background:#b42332;color:#fff;font-size:12px;line-height:1.5;overflow-wrap:anywhere;pointer-events:none}
.cf-error-layer{position:fixed;inset:0;z-index:1000;pointer-events:none}
.cf-error-layer .cf-error-tip{position:fixed;box-sizing:border-box;width:max-content;max-width:calc(100vw - 16px);max-height:calc(100dvh - 16px);overflow-wrap:anywhere;visibility:hidden;margin:0;padding:6px 10px;border:1px solid #a51d2b;border-radius:5px;background:#b42332;color:#fff;font:600 12px/1.5 system-ui,-apple-system,"Noto Sans JP",sans-serif;box-shadow:0 3px 9px #57192326;pointer-events:none}
.cf-error-layer .cf-error-tip::after{content:"";position:absolute;left:var(--cf-tip-arrow,16px);bottom:-5px;width:8px;height:8px;background:#b42332;transform:translateX(-50%) rotate(45deg)}
.cf-error-layer .cf-error-tip[data-below=true]::after{top:-5px;bottom:auto}
.cf-control input[aria-invalid="true"]:not([type=radio]):not([type=checkbox]),.cf-control textarea[aria-invalid="true"],.cf-control select[aria-invalid="true"],.cf-control .cf-invalid:not([type=radio]):not([type=checkbox]){background-color:#fff1f2!important}
.cf-floating .cf-float-shell:has(input[aria-invalid="true"],textarea[aria-invalid="true"],.cf-invalid){background:#fff1f2!important;border-color:#b42332!important}
@media(max-width:650px){.cf-complete{margin:24px auto 12px;padding:30px 20px;border-radius:12px}.cf-complete-mark{width:56px;height:56px;font-size:28px}.cf-complete h2{font-size:22px}.cf-complete-message{padding:16px}}
