.elementor-2356 .elementor-element.elementor-element-a0ac483{--display:flex;--min-height:100vh;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-2356 .elementor-element.elementor-element-a0ac483:not(.elementor-motion-effects-element-type-background), .elementor-2356 .elementor-element.elementor-element-a0ac483 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:transparent;background-image:linear-gradient(135deg, #F0F4F8 0%, #E5E9EF 100%);}.elementor-2356 .elementor-element.elementor-element-e487236 .jet-form-builder__label{text-align:left;font-family:"Noto Sans JP", Sans-serif;}.elementor-2356 .elementor-element.elementor-element-e487236 .jet-form-builder__label .jet-form-builder__required{font-family:"Noto Sans JP", Sans-serif;}.elementor-2356 .elementor-element.elementor-element-e487236 .jet-form-builder__desc{text-align:left;font-family:"Noto Sans JP", Sans-serif;}.elementor-2356 .elementor-element.elementor-element-e487236 .jet-form-builder__fields-group{gap:0.7em 0.7em;}.elementor-2356 .elementor-element.elementor-element-e487236 .jet-form-builder__field-wrap.checkradio-wrap span{gap:8px;}.elementor-2356 .elementor-element.elementor-element-e487236 .jet-form-builder__field:not(.checkradio-field):not(.range-field):not(.jet-form-builder-repeater):not(.wysiwyg-field){font-family:"Noto Sans JP", Sans-serif;}.elementor-2356 .elementor-element.elementor-element-e487236 .jet-form-builder input{color-scheme:normal;}.elementor-2356 .elementor-element.elementor-element-e487236 .jet-form-builder__heading{font-family:"Noto Sans JP", Sans-serif;}.elementor-2356 .elementor-element.elementor-element-e487236 .jet-form-builder__heading-desc{font-family:"Noto Sans JP", Sans-serif;}.elementor-2356 .elementor-element.elementor-element-e487236 .jet-form-builder-repeater__row-remove{align-self:flex-start;}.elementor-2356 .elementor-element.elementor-element-e487236 .jet-form-builder__action-button{transition:all 0.3s;}.elementor-2356 .elementor-element.elementor-element-e487236 .jet-form-builder__next-page-wrap{text-align:left;}.elementor-2356 .elementor-element.elementor-element-e487236 .jet-form-builder-progress-pages{font-family:"Noto Sans JP", Sans-serif;font-size:0.5rem;border-style:none;}.elementor-2356 .elementor-element.elementor-element-e487236 .jet-form-builder-progress-pages__item--wrapper.active-page .jet-form-builder-progress-pages__item{font-family:"Noto Sans JP", Sans-serif;}.elementor-2356 .elementor-element.elementor-element-e487236 .jet-form-builder-message--success{text-align:center;}.elementor-2356 .elementor-element.elementor-element-e487236 .jet-form-builder-message--error{text-align:center;}.elementor-2356 .elementor-element.elementor-element-7a48fb0{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:-75px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-widget-icon.elementor-view-stacked .elementor-icon{background-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-widget-icon.elementor-view-framed .elementor-icon, .elementor-widget-icon.elementor-view-default .elementor-icon svg{fill:var( --e-global-color-primary );}.elementor-2356 .elementor-element.elementor-element-3018dc3{width:initial;max-width:initial;z-index:30;}.elementor-2356 .elementor-element.elementor-element-3018dc3 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:0px 30px 0px 0px;}.elementor-2356 .elementor-element.elementor-element-3018dc3.elementor-element{--flex-grow:0;--flex-shrink:0;}.elementor-2356 .elementor-element.elementor-element-3018dc3 .elementor-icon-wrapper{text-align:right;}.elementor-2356 .elementor-element.elementor-element-3018dc3.elementor-view-stacked .elementor-icon:hover{background-color:#61A8FA;}.elementor-2356 .elementor-element.elementor-element-3018dc3.elementor-view-framed .elementor-icon:hover, .elementor-2356 .elementor-element.elementor-element-3018dc3.elementor-view-default .elementor-icon:hover{color:#61A8FA;border-color:#61A8FA;}.elementor-2356 .elementor-element.elementor-element-3018dc3.elementor-view-framed .elementor-icon:hover, .elementor-2356 .elementor-element.elementor-element-3018dc3.elementor-view-default .elementor-icon:hover svg{fill:#61A8FA;}.elementor-2356 .elementor-element.elementor-element-3018dc3 .elementor-icon{font-size:50px;}.elementor-2356 .elementor-element.elementor-element-3018dc3 .elementor-icon svg{height:50px;}body.elementor-page-2356:not(.elementor-motion-effects-element-type-background), body.elementor-page-2356 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-56d363b );}/* Start custom CSS for jet-form-builder-form, class: .elementor-element-e487236 *//*
 * AGO LP BOOST - JetFormBuilderフォームスタイル (最終版 - 送信ボタン中央寄せ・タイトル/説明文調整)
 * 送信ボタンを確実に中央寄せし、タイトルと説明文のサイズを最適化、説明文を左寄せに
 */

:root {
    /* rem計算の基準となるベースフォントサイズ */
    font-size: 16px;
}

body {
    font-family: 'Noto Sans JP', sans-serif;
    margin: 0;
    padding: 0;
    background-color: #f8f9fa; /* 薄い背景色 (統一) */
    line-height: 1.5; /* 全体の行間 (統一) */
    color: #555; /* 全体のテキスト色 (統一) */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* --- 共通カラー定義 --- */
.text-primary-blue { color: #0EA5E9 !important; } /* AGO LP BoostのPrimaryカラー */
.text-danger { color: #dc3545 !important; } /* 注意喚起の赤 */
.text-success { color: #28a745 !important; } /* 成功・強調の緑 */
.font-bold { font-weight: 700 !important; } /* 強調用 */
.text-dark-gray { color: #2c3e50 !important; } /* 濃いグレー */


/* --- Elementor セクション/コンテナの背景スタイル --- */
/* JetFormBuilderウィジェットを配置するElementorのセクションまたはコンテナに直接適用してください */
/* 例: Elementorのセクション設定 > スタイル > 背景 > タイプ: グラデーション */
/* 色1: #f0f4f8, 色2: #e5e9ef, 角度: 135deg */
/* 例: Elementorのセクション設定 > レイアウト > 高さ: 最小の高さ, 最小の高さ(px): 100vh */
/* 例: Elementorのセクション設定 > レイアウト > コンテンツの配置: 中央揃え */

/* もしカスタムCSSでElementorのセクションの背景と中央揃えを強制するなら以下 */
/* .elementor-section.elementor-top-section {
    background: linear-gradient(135deg, #f0f4f8, #e5e9ef) !important;
    padding: 3.0rem 1rem !important;
    min-height: 100vh !important;
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    box-sizing: border-box !important;
} */


/* --- フォーム全体をまるごとカード化するスタイル --- */
.jet-form-builder {
    max-width: 900px !important; /* 全ページのコンテナ幅と統一 */
    margin: 3rem auto !important;
    padding: 2rem !important;
    background-color: #ffffff !important;
    border-radius: 1.25rem !important;
    box-shadow: 0 1rem 3rem rgba(0, 0, 0, 0.15) !important;
    border: 1px solid #e0e0e0 !important;
    box-sizing: border-box !important;
    position: relative;
    z-index: 1;
}

/* 各ステップのタイトル (JetFormBuilderのページタイトル) */
.jet-form-builder-page h2.wp-block-heading {
    font-size: 1.8rem !important; /* ★修正: 見出しサイズをさらに縮小 (2rem -> 1.8rem) */
    color: #2c3e50 !important;
    text-align: center !important;
    margin-bottom: 0.5rem !important; /* ★修正: 余白を詰める (0.6rem -> 0.5rem) */
    font-weight: 800 !important;
    letter-spacing: -0.02em !important;
    font-family: "Noto Sans JP", sans-serif !important;
}

/* ステップの説明文 */
.jet-form-builder-page p {
    font-size: 0.9rem !important; /* ★修正: 説明文の文字サイズをさらに縮小 (0.95rem -> 0.9rem) */
    color: #555 !important;
    text-align: left !important; /* ★修正: 説明文を左寄せ */
    margin-bottom: 1.2rem !important; /* ★修正: 余白を詰める (1.5rem -> 1.2rem) */
    line-height: 1.6 !important; /* 行間調整 */
    max-width: 600px; /* 必要に応じて幅を制限 */
    margin-left: auto !important; /* 左寄せにしつつ中央に配置 */
    margin-right: auto !important; /* 左寄せにしつつ中央に配置 */
}

/* 各入力フィールドの行（フィールドのラッパー） */
.jet-form-builder-row {
    margin-bottom: 1rem !important;
    padding: 1rem 1.2rem !important;
    background-color: #ffffff !important;
    border-radius: 0.75rem !important;
    border: 1px solid #f0f0f0 !important;
    box-shadow: 0 0.25rem 0.75rem rgba(0,0,0,0.05) !important;
    transition: all 0.2s ease !important;
}

/* フィールドにフォーカスされた行のスタイル */
.jet-form-builder-row:focus-within {
    background-color: #f7fcff !important;
    border-color: #0EA5E9 !important;
    box-shadow: 0 0 0 0.2rem rgba(14, 165, 233, 0.25) !important;
}

/* ラベルのスタイル */
.jet-form-builder__label-text {
    font-size: 0.9rem !important; /* ★修正: ラベルの文字サイズを縮小 (0.95rem -> 0.9rem) */
    font-weight: 600 !important;
    color: #333 !important;
    margin-bottom: 0.3rem !important;
    display: block !important;
}

/* 必須マーク */
.jet-form-builder__required {
    color: #dc3545 !important;
    margin-left: 0.3rem !important;
    font-size: 0.8em !important; /* ★修正: 必須マークの文字サイズを縮小 (0.85em -> 0.8em) */
}

/* 入力フィールド全般のスタイル */
.jet-form-builder__field {
    width: 100% !important;
    padding: 0.6em 0.8em !important;
    border: 1px solid #ddd !important;
    border-radius: 0.4rem !important;
    font-size: 0.9em !important; /* ★修正: 入力文字のサイズを縮小 (0.95em -> 0.9em) */
    color: #333 !important;
    box-sizing: border-box !important;
    line-height: 1.3 !important;
    transition: border-color 0.2s ease, box-shadow 0.2s ease !important;
}

.jet-form-builder__field:focus {
    outline: none !important;
    border-color: #0EA5E9 !important;
    box-shadow: 0 0 0 0.2rem rgba(14, 165, 233, 0.25) !important;
}

/* テキストエリアの高さ調整 */
textarea.jet-form-builder__field {
    min-height: 5rem !important; /* ★修正: 高さをさらに縮小 (6rem -> 5rem) */
    resize: vertical !important;
}

/* ラジオボタンとチェックボックスのスタイル */
.jet-form-builder__field-label.for-radio,
.jet-form-builder__field-label.for-checkbox {
    display: flex !important;
    align-items: center !important;
    cursor: pointer !important;
    font-size: 0.9rem !important; /* ★修正: 文字サイズを縮小 (0.95rem -> 0.9rem) */
    color: #555 !important;
    margin-bottom: 0.3rem !important;
}

.jet-form-builder__field.radio-field,
.jet-form-builder__field.checkbox-field {
    width: auto !important;
    margin-right: 0.6rem !important;
    vertical-align: middle !important;
}

/* フィールドの説明文 */
.jet-form-builder__desc small {
    display: block !important;
    font-size: 0.75rem !important; /* ★修正: 説明文の文字サイズをさらに縮小 (0.8rem -> 0.75rem) */
    color: #888 !important;
    margin-top: 0.3rem !important;
    line-height: 1.3 !important;
    text-align: left !important;
}

/* フォームのページ切り替えボタンと送信ボタンのラッパー */
.jet-form-builder__next-page-wrap,
.jet-form-builder__prev-page-wrap,
.jet-form-builder__submit-wrap {
    text-align: center !important; /* ★修正: テキストアラインメントを中央に強制 */
    margin-top: 1.8rem !important; /* ★修正: 余白を詰める (2rem -> 1.8rem) */
}

.jet-form-builder__next-page,
.jet-form-builder__prev-page,
.jet-form-builder__action-button.jet-form-builder__submit {
    background-color: #0EA5E9 !important;
    color: white !important;
    border: none !important;
    padding: 0.8em 2em !important;
    font-size: 1rem !important; /* ★修正: ボタンの文字サイズを縮小 (1.1rem -> 1rem) */
    font-weight: 600 !important;
    border-radius: 0.5rem !important;
    cursor: pointer !important;
    transition: background-color 0.2s ease, transform 0.15s ease !important;
    min-width: 160px !important;
    box-shadow: 0 0.3rem 0.8rem rgba(14, 165, 233, 0.25) !important;
}

.jet-form-builder__next-page:hover,
.jet-form-builder__prev-page:hover,
.jet-form-builder__action-button.jet-form-builder__submit:hover {
    background-color: #007BB6 !important;
    transform: translateY(-0.15rem) !important;
    box-shadow: 0 0.4rem 1rem rgba(14, 165, 233, 0.35) !important;
}

.jet-form-builder__prev-page {
    background-color: #64748B !important;
    margin-right: 1.2rem !important;
    box-shadow: 0 0.3rem 0.8rem rgba(100, 116, 139, 0.25) !important;
}

.jet-form-builder__prev-page:hover {
    background-color: #4B5563 !important;
    box-shadow: 0 0.4rem 1rem rgba(100, 116, 139, 0.35) !important;
}

/* リピーターフィールドの追加/削除ボタン */
.jet-form-builder-repeater__new,
.jet-form-builder-repeater__remove {
    background-color: #28a745 !important;
    color: white !important;
    border: none !important;
    padding: 0.5em 1em !important;
    border-radius: 0.375rem !important;
    cursor: pointer !important;
    font-size: 0.85rem !important;
    transition: background-color 0.2s ease !important;
}
.jet-form-builder-repeater__remove {
    background-color: #dc3545 !important;
}
.jet-form-builder-repeater__new:hover {
    background-color: #218838 !important;
}
.jet-form-builder-repeater__remove:hover {
    background-color: #c82333 !important;
}

/* フォームの検証エラー時のスタイル */
.jet-form-builder__field[required]:invalid:not(:focus) {
    border-color: #dc3545 !important;
}
.jet-form-builder__field[required]:invalid:not(:focus)::placeholder {
    color: #dc3545 !important;
}

/* フォームのページ切り替え時のアニメーション */
.jet-form-builder-page.jet-form-builder-page--hidden {
    display: none !important;
    opacity: 0 !important;
    transition: opacity 0.5s ease-out !important;
}
.jet-form-builder-page:not(.jet-form-builder-page--hidden) {
    opacity: 1 !important;
}

/* プログレスバーの基本スタイル (非表示のまま) */
.jet-form-builder__progress-pages {
    display: none !important;
}
.jet-form-builder__progress-page {
    display: none !important;
}
.jet-form-builder__progress-page-num {
    display: none !important;
}
.jet-form-builder__progress-page-title {
    display: none !important;
}
.jet-form-builder__progress-page:not(:last-child)::after {
    display: none !important;
}


/* --- レスポンシブ調整 --- */
@media (max-width: 768px) {
    .jet-form-builder {
        margin: 1.2rem auto !important; /* ★修正: モバイルでのマージンをさらに詰める (1.5rem -> 1.2rem) */
        padding: 1.2rem !important;
        border-radius: 0.75rem !important;
    }

    .jet-form-builder-page h2.wp-block-heading {
        font-size: 1.5rem !important; /* ★修正: モバイルでの見出しサイズをさらに縮小 (1.6rem -> 1.5rem) */
        margin-bottom: 0.4rem !important; /* ★修正: 余白を詰める */
    }

    .jet-form-builder-page p {
        font-size: 0.8rem !important; /* ★修正: モバイルでの説明文の文字サイズをさらに縮小 (0.85rem -> 0.8rem) */
        margin-bottom: 1rem !important; /* ★修正: 余白を詰める */
        line-height: 1.5 !important; /* ★修正: 行間調整 */
    }

    .jet-form-builder-row {
        margin-bottom: 0.6rem !important; /* ★修正: モバイルでの項目間余白をさらに詰める (0.8rem -> 0.6rem) */
        padding: 0.8rem 1rem !important; /* ★修正: モバイルでのパディングをさらに詰める */
        border-radius: 0.4rem !important;
    }

    .jet-form-builder__label-text {
        font-size: 0.85rem !important; /* ★修正: モバイルでのラベルサイズを縮小 (0.9rem -> 0.85rem) */
        margin-bottom: 0.2rem !important; /* ★修正: 余白を詰める */
    }

    .jet-form-builder__required {
        font-size: 0.7em !important; /* ★修正: モバイルでの必須マークの文字サイズ */
    }

    .jet-form-builder__field {
        padding: 0.4em 0.6em !important; /* ★修正: モバイルでの入力フィールドパディングをさらに縮小 */
        font-size: 0.8em !important; /* ★修正: モバイルでの入力文字サイズを縮小 */
        border-radius: 0.3rem !important;
    }

    textarea.jet-form-builder__field {
        min-height: 4rem !important; /* ★修正: モバイルでのテキストエリア高さをさらに縮小 (5rem -> 4rem) */
    }

    .jet-form-builder__field-label.for-radio,
    .jet-form-builder__field-label.for-checkbox {
        font-size: 0.85rem !important; /* ★修正: モバイルでの文字サイズを縮小 */
        margin-bottom: 0.2rem !important; /* ★修正: 余白を詰める */
    }

    .jet-form-builder__field.radio-field,
    .jet-form-builder__field.checkbox-field {
        margin-right: 0.4rem !important; /* ★修正: 余白を詰める */
    }

    .jet-form-builder__desc small {
        font-size: 0.65rem !important; /* ★修正: モバイルでの説明文の文字サイズをさらに縮小 (0.7rem -> 0.65rem) */
        margin-top: 0.2rem !important; /* ★修正: 余白を詰める */
        line-height: 1.2 !important;
    }

    .jet-form-builder__next-page-wrap,
    .jet-form-builder__prev-page-wrap,
    .jet-form-builder__submit-wrap {
        margin-top: 1.5rem !important; /* ★修正: モバイルでのボタン余白を縮小 (1.8rem -> 1.5rem) */
    }

    .jet-form-builder__next-page,
    .jet-form-builder__prev-page,
    .jet-form-builder__action-button.jet-form-builder__submit {
        padding: 0.7em 1.5em !important; /* ★修正: モバイルでのボタンパディングを縮小 */
        font-size: 0.9rem !important; /* ★修正: モバイルでのボタン文字サイズを縮小 */
        min-width: 120px !important; /* ★修正: モバイルでの最小幅を縮小 */
    }

    .jet-form-builder__prev-page {
        margin-right: 0.6rem !important; /* ★修正: モバイルでの余白を詰める */
    }

    .jet-form-builder-repeater__new,
    .jet-form-builder-repeater__remove {
        padding: 0.3em 0.6em !important; /* ★修正: モバイルでのパディングをさらに縮小 */
        font-size: 0.7rem !important; /* ★修正: モバイルでの文字サイズを縮小 */
    }
}/* End custom CSS */




