.elementor-kit-6{--e-global-color-primary:#666666;--e-global-color-secondary:#54595F;--e-global-color-text:#EFEFEF;--e-global-color-accent:#009B8E;--e-global-color-2d7d6e1:#009B8E;--e-global-color-9a5bd47:#87702A;--e-global-color-2b043ae:#B39253;--e-global-typography-primary-font-family:"Noto Sans JP";--e-global-typography-primary-font-size:18px;--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-family:"Noto Sans JP";--e-global-typography-secondary-font-size:16px;--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-family:"Noto Sans JP";--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-family:"Noto Sans JP";--e-global-typography-accent-font-size:42px;--e-global-typography-accent-font-weight:900;--e-global-typography-8903c2e-font-family:"Noto Sans JP";--e-global-typography-8903c2e-font-size:18px;--e-global-typography-8903c2e-font-weight:400;--e-global-typography-992501f-font-family:"Noto Sans JP";--e-global-typography-992501f-font-size:35px;--e-global-typography-992501f-font-weight:400;font-family:"Noto Sans JP", Sans-serif;font-size:16px;}.elementor-kit-6 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}.site-header .site-branding{flex-direction:column;align-items:stretch;}.site-header{padding-inline-end:0px;padding-inline-start:0px;}.site-footer .site-branding{flex-direction:column;align-items:stretch;}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-kit-6{--e-global-typography-primary-font-size:5.3vw;--e-global-typography-secondary-font-size:4.7vw;--e-global-typography-text-font-size:4.4vw;--e-global-typography-accent-font-size:4.2vw;--e-global-typography-8903c2e-font-size:5.3vw;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* --- レイアウトの基本設定 --- */
.faq-item {
    position: relative;
    border-bottom: 1px solid #77b8bb;
    padding: 30px 0;
}

/* 質問と回答の行をFlexboxにする */
.faq-question-row,
.faq-answer-row {
    display: flex;
    align-items: flex-start; /* 上揃え */
    width: 100%;
    padding-right: 60px; /* ボタン用の余白 */
}

/* 番号部分（Q1. A1.）の幅を固定 */
.q-num,
.a-num {
    flex: 0 0 50px; /* 番号の幅（文字数に合わせて調整してください） */
    font-weight: bold;
    color: #008186;
    font-size: 24px;
    line-height: 1.2;
}

/* テキスト部分を可変にする */
.q-text {
    flex: 1;
    color: #008186;
    font-size: 24px;
    font-weight: 500;
    line-height: 1.4;
}

.a-text {
    flex: 1;
    color: #333;
    font-size: 18px;
    line-height: 1.8;
}

/* --- ボタンの配置（絶対配置） --- */
.faq-open-btn,
.faq-close-btn {
    position: absolute;
    right: 0;
    width: 45px;
    text-align: center;
    color: #008186;
    font-size: 11px;
    font-weight: bold;
}

/* Qの行のボタン位置 */
.faq-open-btn {
    top: 40px; /* faq-itemのpadding-topと同じ */
}

/* Aの行のボタン位置 */
.faq-close-btn {
    top: 60px; /* faq-answerの中での位置 */
}

.faq-open-btn::before,
.faq-close-btn::before {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background-color: #008186;
    margin-bottom: 8px;
}

/* --- スマホ対応 (sp.pngの再現) --- */
@media (max-width: 767px) {
    .q-num, .a-num {
        flex: 0 0 40px; /* スマホでは少し幅を狭く */
        font-size: 20px;
    }
    .q-text {
        font-size: 18px;
    }
    .a-text {
        font-size: 15px;
    }
    /* ボタンの位置調整 */
    .faq-open-btn, .faq-close-btn {
        width: 40px;
    }
}

/* 表示制御 */
.faq-open-btn { display: none; }
.faq-item.is-closed .faq-answer { display: none; }
.faq-item.is-closed .faq-open-btn { display: block; }


/* スマホ改行 */

@media (max-width: 767px) {
    /* スマホの時は改行タグを無効化する */
    .pc-only {
        display: none;
    }
    
    /* フッターメニュー */
    .elementor-widget-n-menu .e-n-menu-item {
    width: 45%;}
}/* End custom CSS */