@charset "UTF-8";


h2 { padding: 40px 12px 12px; }
.FORM { padding: 40px 0; }
.FORM__ERROR { padding-bottom: 40px; color: red; font-weight: 700; }
.FORM__DT { display: flex; justify-content: space-between; align-items: center; padding: 12px 20px; background: #F7F4E6; border-radius: 8px; font-weight: 700; }
.FORM__NE { padding: 4px 6px; background: red; color: #FFF; font-size: 14px; line-height: 1em; }
.FORM__DD { padding: 12px 12px 20px; }
.FORM__DD .checkbox_group { display: flex; flex-wrap: wrap; gap: 12px 20px; margin-top: 12px; }
.FORM__DD .checkbox_group label { width: 100%; }
.FORM__TEXTAREA,.FORM__L,.form-line input { width: 100%; padding: 6px 12px; background: #F8F8F8; border-radius: 8px; }
.FORM__TEXTAREA { margin-top: 12px; }
.FORM__DD .form-line { padding-bottom: 20px; }
.FORM__DD .form-line:last-child { padding-bottom: 0; }
.FORM__DD .form-line .form-label { display: block; width: 100%; padding-bottom: 12px; line-height: 1em; font-weight: 700; }
.FORM__PRIVACY { display: flex; flex-direction: column; align-items: center; gap: 20px; margin: 40px 0; }
.FORM__PRIVACY .cf-turnstile { width: 300px; }
.FORM__PRIVACY .cf-turnstile div{ display: flex; }
.FORM__PRIVACY .FORM__LABELS { display: flex; flex-direction: row; flex-wrap: wrap; align-items: start; gap: 8px; }
.FORM__PRIVACY .FORM__LABEL { display: flex; align-items: center; flex-wrap: wrap; }
.FORM__PRIVACY .FORM__LABEL a { padding: 0.2em 0; border-bottom: 1px solid #000; }
/* hover */
.FORM__PRIVACY .FORM__LABEL a:hover { border-color: transparent; } 
@media screen and (min-width: 768px) {
    .FORM__DL { display: flex; gap: 12px; margin-bottom: 9px; }
    .FORM__DL:last-child { margin-bottom: 0; }
    .FORM__DT { width: 240px; flex-shrink: 0; }
    .FORM__DD { position: relative; flex-grow: 1; padding: 20px; }
    .first_item .FORM__DD::before { content: ''; position: absolute; top: -4px; right: 0; left: 0; width: 100%; height: 1px; background: #B4B4B4;  }
    .FORM__DD::after { content: ''; position: absolute; bottom: -4px; right: 0; left: 0; width: 100%; height: 1px; background: #B4B4B4; }
    .FORM__PRIVACY { margin: 80px 0; }
}
@media screen and (min-width: 1025px) {
    .FORM__DT { width: 280px; }
    .FORM__DD .checkbox_group label { width: calc(calc(100% - 20px) / 2); max-width: 300px; }
}

/*送信完了*/
.contentForm { width:100%; margin:20px 0 0 0; padding:10px; background:#F7F4E6; }
.contentInputs { width:100%; padding:10px; display:block; background:#fff; }
@media screen and (min-width: 768px) {
    .contentForm { margin:50px 0 0 0; padding:20px; }
    .contentInputs { padding:50px 10%; }
}