/* =========================================================================
   COCOCAR FAQ アコーディオン スタイルシート
   ========================================================================= */

/* FAQ全体のコンテナ設定 */
.cococar-faq {
    max-width: 100%;
    margin: 30px auto;
    font-family: sans-serif;
}

/* 「よくある質問」セクションの見出し（H2） */
.cococar-faq h2 {
    font-size: 22px;
    color: #1a237e;
    border-left: 5px solid #1a237e;
    padding-left: 12px;
    margin-bottom: 20px;
}

/* 各FAQアイテムの枠線と余白設定 */
.cococar-faq .faq-item {
    border-bottom: 1px solid #e2e8f0;
    padding: 16px 0;
}

/* 【重要】最後のアイテムの下線を除去（重複線の表示バグを修正） */
.cococar-faq .faq-item:last-child {
    border-bottom: none !important;
}

/* 質問タイトル（H3）の基本スタイル */
.cococar-faq .faq-item h3 {
    font-size: 16px;
    color: #2d3748;
    margin: 0;
    line-height: 1.5;
    position: relative;
}

/* アコーディオン有効時の質問タイトル（H3）スタイル変更 */
.js-cococar-accordion .faq-item h3 {
    cursor: pointer;
    padding-right: 30px;
}

/* 開閉を示す矢印アイコン（▼）の配置設定 */
.js-cococar-accordion .faq-item h3::after {
    content: '▼';
    position: absolute;
    right: 5px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 11px;
    color: #a0aec0;
    transition: transform 0.2s ease;
}

/* アコーディオン展開（オープン）時の矢印の回転アニメーション */
.js-cococar-accordion .faq-item.is-open h3::after {
    transform: translateY(-50%) rotate(180deg);
}

/* 回答テキスト（pタグ）の共通スタイル設定 */
.cococar-faq .faq-item p {
    margin-top: 12px !important;
    margin-bottom: 0 !important;
    font-size: 15px;
    color: #4a5568;
    line-height: 1.6;
}

/* 初期状態：アコーディオンが閉じている時は回答を非表示 */
.js-cococar-accordion .faq-item p {
    display: none;
}

/* 展開状態：アクティブ（is-open）時に回答を表示 */
.js-cococar-accordion .faq-item.is-open p {
    display: block !important;
}

/* 【重要】空のpタグ（不要な改行等で発生する空要素）を完全に非表示化し、不要な余白をカット */
.cococar-faq .faq-item p:empty {
    display: none !important;
    margin: 0 !important;
    padding: 0 !important;
}