/*
Theme Name: GeneratePress Child
Theme URI: https://generatepress.com
Description: Child theme for GeneratePress
Author: みかん介護サービス
Author URI: https://mikan-care.jp
Template: generatepress
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: generatepress-child
*/

/* カスタムスタイルはここに追加 */

/* ============================================
   Contact Form 7 専用スタイル
   Figmaデザインに基づくカスタマイズ
   フォームIDは functions.php の GP_CHILD_CF7_FORM_ID 定数で定義
   ============================================ */

/* 
 * セレクタの説明：
 * [id*="03ebb27"] - ID属性に「03ebb27」を含む要素を起点にセレクタを限定
 * .wpcf7[id*="03ebb27"] - Contact Form 7のクラスでIDに「03ebb27」を含む要素
 * [data-id*="03ebb27"] - data-id属性に「03ebb27」を含む要素（念のため）
 */

/* ============================================
   入力欄（input / textarea / select）
   ============================================ */
[id*="03ebb27"] .wpcf7-text,
[id*="03ebb27"] .wpcf7-email,
[id*="03ebb27"] .wpcf7-tel,
[id*="03ebb27"] .wpcf7-select,
[id*="03ebb27"] .wpcf7-textarea,
.wpcf7[id*="03ebb27"] .wpcf7-text,
.wpcf7[id*="03ebb27"] .wpcf7-email,
.wpcf7[id*="03ebb27"] .wpcf7-tel,
.wpcf7[id*="03ebb27"] .wpcf7-select,
.wpcf7[id*="03ebb27"] .wpcf7-textarea,
[data-id*="03ebb27"] .wpcf7-text,
[data-id*="03ebb27"] .wpcf7-email,
[data-id*="03ebb27"] .wpcf7-tel,
[data-id*="03ebb27"] .wpcf7-select,
[data-id*="03ebb27"] .wpcf7-textarea {
    background-color: #f3e9dd !important;
    border: none !important;
    border-radius: 12px !important;
    padding: 16px 18px !important;
    font-size: 16px !important;
    color: #333 !important;
    box-sizing: border-box !important;
    width: 100%;
}

/* フォーカス時のスタイル */
[id*="03ebb27"] .wpcf7-text:focus,
[id*="03ebb27"] .wpcf7-email:focus,
[id*="03ebb27"] .wpcf7-tel:focus,
[id*="03ebb27"] .wpcf7-select:focus,
[id*="03ebb27"] .wpcf7-textarea:focus,
.wpcf7[id*="03ebb27"] .wpcf7-text:focus,
.wpcf7[id*="03ebb27"] .wpcf7-email:focus,
.wpcf7[id*="03ebb27"] .wpcf7-tel:focus,
.wpcf7[id*="03ebb27"] .wpcf7-select:focus,
.wpcf7[id*="03ebb27"] .wpcf7-textarea:focus,
[data-id*="03ebb27"] .wpcf7-text:focus,
[data-id*="03ebb27"] .wpcf7-email:focus,
[data-id*="03ebb27"] .wpcf7-tel:focus,
[data-id*="03ebb27"] .wpcf7-select:focus,
[data-id*="03ebb27"] .wpcf7-textarea:focus {
    outline: none !important;
    box-shadow: 0 0 0 3px rgba(224, 122, 95, 0.2) !important;
}

/* テキストエリアの最小高さ */
[id*="03ebb27"] .wpcf7-textarea,
.wpcf7[id*="03ebb27"] .wpcf7-textarea,
[data-id*="03ebb27"] .wpcf7-textarea {
    min-height: 160px !important;
    resize: vertical;
}

/* セレクトボックスのカスタマイズ（デフォルト矢印を非表示、右側にカスタム矢印を表示） */
[id*="03ebb27"] .wpcf7-select,
.wpcf7[id*="03ebb27"] .wpcf7-select,
[data-id*="03ebb27"] .wpcf7-select {
    appearance: none !important;
    -webkit-appearance: none !important;
    -moz-appearance: none !important;
    background-image: url('../images/common/icon-chevron-down.svg') !important;
    background-repeat: no-repeat !important;
    background-position: right 18px center !important;
    background-size: 16px !important;
    padding-right: 48px !important;
    cursor: pointer;
}

/* ============================================
   ラベル
   ============================================ */
[id*="03ebb27"] .wpcf7-form-control-wrap label,
[id*="03ebb27"] label,
.wpcf7[id*="03ebb27"] .wpcf7-form-control-wrap label,
.wpcf7[id*="03ebb27"] label,
[data-id*="03ebb27"] .wpcf7-form-control-wrap label,
[data-id*="03ebb27"] label {
    font-weight: 500 !important;
    color: #333 !important;
}

/* ============================================
   必須マーク（*）
   ============================================ */
[id*="03ebb27"] .wpcf7-required,
[id*="03ebb27"] label .required,
[id*="03ebb27"] .required,
.wpcf7[id*="03ebb27"] .wpcf7-required,
.wpcf7[id*="03ebb27"] label .required,
.wpcf7[id*="03ebb27"] .required,
[data-id*="03ebb27"] .wpcf7-required,
[data-id*="03ebb27"] label .required,
[data-id*="03ebb27"] .required {
    color: #e07a5f !important;
}

/* ============================================
   エラー表示
   ============================================ */
/* エラー時の入力欄の枠線を弱める */
[id*="03ebb27"] .wpcf7-not-valid,
.wpcf7[id*="03ebb27"] .wpcf7-not-valid,
[data-id*="03ebb27"] .wpcf7-not-valid {
    border: 1px solid rgba(224, 122, 95, 0.4) !important;
    box-shadow: 0 0 0 3px rgba(224, 122, 95, 0.1) !important;
}

/* エラーメッセージのテキストサイズを小さく */
[id*="03ebb27"] .wpcf7-not-valid-tip,
.wpcf7[id*="03ebb27"] .wpcf7-not-valid-tip,
[data-id*="03ebb27"] .wpcf7-not-valid-tip {
    font-size: 12px !important;
    line-height: 1.4 !important;
    color: #e07a5f !important;
    margin-top: 4px;
}

/* バリデーションエラーの表示を弱める */
[id*="03ebb27"] .wpcf7-validation-errors,
.wpcf7[id*="03ebb27"] .wpcf7-validation-errors,
[data-id*="03ebb27"] .wpcf7-validation-errors {
    border: 1px solid rgba(224, 122, 95, 0.4) !important;
    background-color: rgba(248, 215, 218, 0.5) !important;
    color: #721c24 !important;
    font-size: 14px !important;
}

/* ============================================
   送信ボタン
   ============================================ */
[id*="03ebb27"] .wpcf7-submit,
[id*="03ebb27"] input[type="submit"],
.wpcf7[id*="03ebb27"] .wpcf7-submit,
.wpcf7[id*="03ebb27"] input[type="submit"],
[data-id*="03ebb27"] .wpcf7-submit,
[data-id*="03ebb27"] input[type="submit"] {
    background-color: #e76f51 !important;
    color: #fff !important;
    padding: 0 32px !important;
    height: 56px !important;
    border-radius: 50px !important;
    border: none !important;
    font-family: Arial, sans-serif !important;
    font-size: 16px !important;
    line-height: 24px !important;
    cursor: pointer !important;
    transition: background-color 0.3s ease !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    min-width: 158.75px !important;
}

[id*="03ebb27"] .wpcf7-submit:hover,
[id*="03ebb27"] input[type="submit"]:hover,
.wpcf7[id*="03ebb27"] .wpcf7-submit:hover,
.wpcf7[id*="03ebb27"] input[type="submit"]:hover,
[data-id*="03ebb27"] .wpcf7-submit:hover,
[data-id*="03ebb27"] input[type="submit"]:hover {
    background-color: #d65a40 !important;
    color: #fff !important;
}

[id*="03ebb27"] .wpcf7-submit:focus,
[id*="03ebb27"] input[type="submit"]:focus,
.wpcf7[id*="03ebb27"] .wpcf7-submit:focus,
.wpcf7[id*="03ebb27"] input[type="submit"]:focus,
[data-id*="03ebb27"] .wpcf7-submit:focus,
[data-id*="03ebb27"] input[type="submit"]:focus {
    outline: none !important;
    background-color: #d65a40 !important;
    box-shadow: 0 0 0 3px rgba(231, 111, 81, 0.3) !important;
    color: #fff !important;
}

[id*="03ebb27"] .wpcf7-submit:active,
[id*="03ebb27"] input[type="submit"]:active,
.wpcf7[id*="03ebb27"] .wpcf7-submit:active,
.wpcf7[id*="03ebb27"] input[type="submit"]:active,
[data-id*="03ebb27"] .wpcf7-submit:active,
[data-id*="03ebb27"] input[type="submit"]:active {
    background-color: #c54e35 !important;
    color: #fff !important;
}
