@charset "utf-8";

/* ==========================================================================
   農家さんユーザー登録フォーム（WP-Members）標準縦並び・上下必須注記版
   ========================================================================== */

/* フォーム全体のコンテナ */
#wpmem_reg {
    width: 100% !important;
    max-width: none !important;
    margin: 40px auto;
    padding: 40px 35px;
    background-color: #fbf9f6;
    border-radius: 12px;
    border: 1px solid #e5ded6;
    box-shadow: 0 4px 20px rgba(74, 60, 49, 0.05);
    box-sizing: border-box;
}

/* WP-Membersのラッパーも全幅化 */
#wpmem_reg,
#wpmem_reg form,
#wpmem_reg fieldset {
    width: 100% !important;
    max-width: none !important;
}

/* --------------------------------------------------------------------------
   【新設】フォーム上部への「*必須項目」の追加
   -------------------------------------------------------------------------- */
#wpmem_register_form fieldset::before {
    content: "必須項目　≪ ユーザー名は登録後の変更不可 ≫";
    display: block;
    font-size: 13px;
    color: #de5d26;
    font-weight: 700;
    margin-bottom: 20px;
    text-align: left;
    border-bottom: 1px dashed #e5ded6;
    padding-bottom: 8px;
}

/* プラグイン標準の不要な枠線をクリア */
#wpmem_reg fieldset {
    border: none !important;
    padding: 0 !important;
    margin: 0 !important;
    display: block !important;
}

/* 各入力欄の親要素：一列にきれいに縦に並べる */
#wpmem_reg .div_text {
    display: block !important;
    width: 100% !important;
    margin-bottom: 24px !important;
    float: none !important;
    clear: both !important;
}

/* ラベル（項目名）のデザイン */
#wpmem_reg label.text {
    display: block !important;
    font-weight: 700 !important;
    margin-top: 0 !important;
    margin-bottom: 8px !important;
    color: #4a3c31;
    font-size: 14px;
    letter-spacing: 0.05em;
    float: none !important;
    text-align: left !important;
    clear: both !important;
    width: auto !important;
}

/* 必須マーク */
#wpmem_reg span.req {
    color: #de5d26 !important;
    margin-left: 4px !important;
}

/* --------------------------------------------------------------------------
   入力フィールドのモダンデザイン（共通）
   -------------------------------------------------------------------------- */
#wpmem_reg input.textbox,
#wpmem_reg input[type="email"],
#wpmem_reg input#siteguard_captcha {
    display: block !important;
    width: 100% !important;
    max-width: 100%;
    padding: 12px 14px !important;
    border: 1px solid #cbd5e1 !important;
    border-radius: 6px !important;
    font-size: 16px !important;
    color: #334155 !important;
    background-color: #ffffff !important;
    box-sizing: border-box !important;
    transition: border-color 0.2s, box-shadow 0.2s;
}

/* フォーカス時 */
#wpmem_reg input.textbox:focus,
#wpmem_reg input[type="email"]:focus,
#wpmem_reg input#siteguard_captcha:focus {
    border-color: #d89134 !important;
    box-shadow: 0 0 0 4px rgba(216, 145, 52, 0.15) !important;
    outline: none !important;
}

/* --------------------------------------------------------------------------
   個別幅調整（PC・タブレット）
   -------------------------------------------------------------------------- */
@media screen and (min-width: 560px) {
    #wpmem_reg input#username         { max-width: 280px; }
    #wpmem_reg input#last_name        { max-width: 200px; }
    #wpmem_reg input#first_name       { max-width: 200px; }
    #wpmem_reg input#billing_postcode { max-width: 160px; }
    #wpmem_reg input#billing_state    { max-width: 180px; }
    #wpmem_reg input#billing_city     { max-width: 340px; }
    #wpmem_reg input#billing_phone    { max-width: 240px; }
}

/* スマホ */
@media screen and (max-width: 559px) {

    /* ① Cocoonの.wrapのpaddingを上書き（ブラウザ左右余白の本命） */
    .page-id-818 .content-in,
    .page-id-1450 .content-in {
        padding-left: 4px !important;
        padding-right: 4px !important;
    }

    /* ② 枠の内側（枠とフォームの左右余白）を詰める */
    .page-id-818 #wpmem_reg,
    .page-id-1450 #wpmem_reg {
        padding-left: 14px !important;
        padding-right: 14px !important;
        margin-left: 0 !important;
        margin-right: 0 !important;
    }

    /* ③ 入力フィールドは引き続き全幅 */
    #wpmem_reg input.textbox,
    #wpmem_reg input[type="email"] {
        max-width: 100% !important;
    }
}

/* --------------------------------------------------------------------------
   キャプチャ・ボタン・下部注記
   -------------------------------------------------------------------------- */

#wpmem_reg p {
    clear: both !important;
    margin-bottom: 15px !important;
}

#wpmem_reg label[for="siteguard_captcha"] {
    font-weight: bold !important;
    font-size: 14px !important;
    color: #4a3c31 !important;
}

#wpmem_reg input#siteguard_captcha {
    max-width: 160px !important;
    display: inline-block !important;
}

#wpmem_reg .req-text {
    font-size: 13px !important;
    color: #7f8c8d !important;
    margin-top: 15px !important;
    display: block !important;
    clear: both !important;
}

/* ボタンコンテナ */
#wpmem_reg div.button_div {
    margin-top: 35px !important;
    text-align: center !important;
    clear: both !important;
}


/* 登録ボタン */
#wpmem_reg input[type="submit"].buttons {
    width: 100% !important;
    max-width: 300px !important;
    padding: 14px 35px !important;
    background-color: #d89134 !important;
    color: #ffffff !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    letter-spacing: 0.05em !important;
    border: none !important;
    border-radius: 50px !important;
    cursor: pointer !important;
    box-shadow: 0 4px 12px rgba(216, 145, 52, 0.25) !important;
    transition: background-color 0.2s, box-shadow 0.2s !important;
}

#wpmem_reg input[type="submit"].buttons:hover {
    background-color: #be7a25 !important;
    box-shadow: 0 6px 16px rgba(216, 145, 52, 0.35) !important;
}