/*------------------------------------------------------------
  FormNest（お問い合わせフォーム）
  旧 MW WP Form の #contactWrapper dl/dt/dd デザイン（content.css）を FormNest の出力に当て直す。
  プラグインCSSより後に読み込む（functions.php で優先度20）。
------------------------------------------------------------*/

#contact .formnest-form-container{
    max-width: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    background: none !important;
    border: none !important;
    box-shadow: none !important;
    /* プラグインの prefers-color-scheme: dark で文字が白くなるのを防ぐ */
    color: #000 !important;
    color-scheme: light;
}
#contact .formnest-form-header,
#contact .formnest-form-footer{
    display: none !important;
}
#contact .formnest-form-fields{
    margin: 0 0 30px !important;
}

/* dl/dt/dd 風の2列 */
#contact .formnest-form-table,
#contact .formnest-form-table tbody{
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    border: none !important;
    background: none !important;
}
#contact tr.formnest-form-row{
    display: flex !important;
    flex-wrap: wrap;
    margin: 0 !important;
    border: none !important;
    background: none !important;
}
#contact th.formnest-form-label{
    display: flex !important;
    flex-wrap: wrap;
    align-items: flex-start;
    align-content: flex-start;
    width: 35% !important;
    padding: 10px !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    font-weight: 400 !important;
    color: #000 !important;
    text-align: left !important;
    vertical-align: top;
    border: none !important;
    background: none !important;
}
#contact td.formnest-form-field{
    display: block !important;
    flex: 0 0 auto !important;
    width: 65% !important;
    padding: 10px !important;
    font-size: 14px !important;
    line-height: 1.6 !important;
    color: #000 !important;
    border: none !important;
    background: none !important;
}

/* 旧デザインは「必須お名前 (漢字)」のように文字で前置き */
#contact .formnest-required{
    order: -1;
    margin: 0 !important;
    padding: 0 !important;
    font-size: inherit !important;
    font-weight: inherit !important;
    line-height: inherit !important;
    color: inherit !important;
    background: none !important;
    border: none !important;
    border-radius: 0 !important;
}

/* 入力欄 */
#contact .formnest-form-input input.formnest-input,
#contact .formnest-form-input textarea.formnest-field__input{
    display: block;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 10px !important;
    font-size: 14px !important;
    line-height: normal !important;
    color: #000 !important;
    background: #fff !important;
    border: 1px solid #d0d0d0 !important;
    border-radius: 3px !important;
    box-shadow: none !important;
}
#contact .formnest-form-input textarea.formnest-field__input{
    height: 102px !important;
}
#contact .formnest-form-input td:has(textarea){
    padding-bottom: 18px !important;
}
#contact .formnest-form-input td:has(.formnest-tel)::after{
    content: "ご自身がはじめに受けられる電話番号をご記入ください。";
    display: block;
    margin: 16px 0;
    color: #b62121;
    font-size: 12px;
    font-weight: bold;
    line-height: 1.8;
}

/* ラジオ */
#contact .formnest-radio-group{
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: none !important;
}
#contact .formnest-radio-label{
    display: inline !important;
    margin: 0 15px 0 0 !important;
    padding: 0 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    background: none !important;
    border: none !important;
}
#contact .formnest-radio-text{
    color: inherit !important;
}
#contact input.formnest-radio{
    position: static !important;
    display: inline-block !important;
    width: 13px !important;
    height: 13px !important;
    margin: 0 5px 0 0 !important;
    opacity: 1 !important;
    appearance: auto !important;
    -webkit-appearance: radio !important;
    vertical-align: -1px;
}

/* エラー */
#contact .formnest-field__error{
    margin: 5px 0 0 !important;
    padding: 0 !important;
    color: #b62121 !important;
    font-size: 12px !important;
    font-weight: bold;
    background: none !important;
    border: none !important;
}

/* reCAPTCHA（左寄せ） */
#contact .formnest-field--recaptcha{
    margin: 0 !important;
    padding: 0 !important;
}
#contact .formnest-field--recaptcha .formnest-field__input{
    justify-content: flex-start !important;
    text-align: left !important;
}
#contact .formnest-field--recaptcha .formnest-field__input > div{
    margin: 0 !important;
}

/* ボタン（旧 #contact [type="submit"] と同じ） */
#contact .formnest-form-submit{
    margin: 20px 0 0 !important;
    padding: 0 !important;
    border: none !important;
}
#contact .form_submit_btn_area{
    display: flex !important;
    flex-direction: column;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    gap: 0 !important;
}
#contact .formnest-form-submit button{
    display: block !important;
    width: 100% !important;
    max-width: none !important;
    height: auto !important;
    margin: 5px 0 !important;
    min-height: 0 !important;
    padding: 14px 0 !important;
    font-size: 16px !important;
    line-height: 18.4px !important;
    font-weight: bold !important;
    letter-spacing: 0.5rem;
    color: #fff !important;
    background: #a58e51 !important;
    border: none !important;
    border-radius: 3px !important;
    box-shadow: none !important;
    text-shadow: none !important;
    transform: none !important;
    -webkit-appearance: none;
    appearance: none;
    cursor: pointer;
}
#contact .formnest-submit-text{
    font-size: inherit !important;
    line-height: inherit !important;
    letter-spacing: inherit;
}
/* ボタン文言の設定は入力・確認画面で共用（「送信する」）。入力画面だけ「確認画面へ」に差し替える */
#contact .formnest-form-input .formnest-submit-text{
    font-size: 0 !important;
    letter-spacing: 0;
}
#contact .formnest-form-input .formnest-submit-text::after{
    content: "確認画面へ";
    font-size: 16px;
    letter-spacing: 0.5rem;
}
#contact .formnest-form-submit button.formnest-button-back{
    order: -1;
    background: #a0a0a0 !important;
}

/* 確認画面 */
#contact .formnest-confirm-value{
    flex: 0 0 auto !important;
    width: 65% !important;
}

/* 完了画面: 文言は page-contact-complete.php に直書きしているので FormNest の完了表示は出さない */
#contact .formnest-form-complete{
    display: none !important;
}

@media (max-width: 480px){
    #contact th.formnest-form-label,
    #contact td.formnest-form-field,
    #contact .formnest-confirm-value{
        width: 100% !important;
    }
}
