/* ========================================= */
/* フォーム CSS 超高優先度セレクタを使用 (PC/SP共通) */
/* ========================================= */

/* フォームを囲む要素（LPのコンテンツエリア）の幅をPCで制限 */
@media screen and (min-width: 769px) {
    body #main .post-content {
        max-width: 500px !important; /* PCでの最大幅を500pxに制限 */
        margin-left: auto !important; /* 中央寄せ */
        margin-right: auto !important; /* 中央寄せ */
    }
}


/* フォーム全体と項目（form-list） */
/* body #main .post-content を使用して、CSSの優先度を最大限に高める */
body #main .post-content .form-list {
    margin-bottom: 25px !important;
    padding: 0 !important;
    display: block !important;
    clear: both !important;
}

/* 項目名（ラベル）のスタイル */
body #main .post-content .form-list > label {
    display: block !important;
    font-size: 17px !important; 
    font-weight: bold !important;
    margin-bottom: 8px !important;
    color: #333 !important;
    line-height: 1.5 !important;
}

/* 必須マークのデザイン */
body #main .post-content .form-list label .required {
    background-color: #ff5555 !important; 
    color: #fff !important;
    font-size: 13px !important;
    padding: 2px 6px !important;
    border-radius: 3px !important;
    margin-left: 8px !important;
    font-weight: normal !important;
}

/* 入力エリア (input-area) の調整 */
body #main .post-content .form-list .input-area {
    display: block !important;
    width: 100% !important;
    position: relative !important;
}

/* 全ての入力フィールドとセレクトボックスをターゲット */
body #main .post-content .input-area input[type="text"],
body #main .post-content .input-area input[type="email"],
body #main .post-content .input-area input[type="tel"],
body #main .post-content .input-area select {
    width: 100% !important; 
    max-width: none !important;
    height: 52px !important; /* タップしやすい高さ */
    padding: 12px 15px !important;
    font-size: 16px !important; 
    box-sizing: border-box !important;
    border: 1px solid #ccc !important; 
    border-radius: 6px !important; /* 角丸 */
    background-color: #f9f9f9 !important; 
    box-shadow: 0 1px 3px rgba(0,0,0,0.05) !important; 
}

/* セレクトボックスの調整（カスタム矢印） */
body #main .post-content .input-area select {
    background-color: #fff !important; 
    /* カスタム矢印のSVGデータ */
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path fill="%23333" d="M9.293 12.95l.707.707L15.657 8l-1.414-1.414L10 10.828 5.757 6.586 4.343 8z"/></svg>') !important;
    background-repeat: no-repeat !important;
    background-position: right 10px top 50% !important;
    background-size: 16px auto !important;
    padding-right: 35px !important;
    appearance: none !important;
    -webkit-appearance: none !important;
}

/* チェックボックス (プライバシーポリシー) の調整 */
body #main .post-content .form-list.privacy {
    margin-top: 20px !important;
    text-align: center !important;
}

/* 送信ボタンの調整 */
body #main .post-content .wpcf7-submit.submit,
body #main .post-content input[type="submit"].submit { 
    display: block !important; 
    width: 100% !important;
    margin-top: 35px !important;
    padding: 18px 10px !important; 
    font-size: 19px !important; 
    font-weight: bold !important;
    line-height: 1.2 !important;
    height: auto !important;
    border-radius: 8px !important;
}