@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

.pc-dn{
  display:none!important;
  }
.sp-dn{
  display:block!important;
  }

  @media screen and (max-width: 890px) {
.pc-dn{
  display:block!important;
  }
.sp-dn{
  display:none!important;
  }
  }

.header-container {
  zoom: 80%;
  font-family: Meiryo, "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
  line-height: 2.0 !important;
  background-color: #fff !important;
}
/*834px以下*/
@media screen and (max-width: 834px) {
  /*必要ならばここにコードを書く*/

  .header-container {
    zoom: 100%;
  }
}
/************************************
** header
************************************/

/* =========================================================
   1. ヘッダー全体
========================================================= */

/* #header-container.ecoene-column-header {
    position: sticky;
    top: 0;
    z-index: 9999;

    width: 100%;
    max-width: none;

    margin: 0;
    padding: 0;

    background: #fff;
    border-bottom: 3px solid #30b76d;

    box-sizing: border-box;
} */

#header-container.ecoene-column-header {
    position: static;

    width: 100%;
    max-width: none;

    margin: 0;
    padding: 0;

    background: #fff;
    border-bottom: 3px solid #30b76d;

    box-sizing: border-box;
}

#header-container.ecoene-column-header #header-container-in {
    display: block;

    width: 100%;
    max-width: none;
    height: auto;
    min-height: 0;

    margin: 0;
    padding: 0;

    box-sizing: border-box;
}

#header-container.ecoene-column-header .ecoene-header {
    display: block;

    width: 100%;
    max-width: none;
    height: auto;
    min-height: 0;

    margin: 0;
    padding: 0;

    background: #fff;

    box-sizing: border-box;
}

#header-container.ecoene-column-header .header {
    min-height: 0;
}

#header-container.ecoene-column-header .wrap {
    max-width: none;
}


/* =========================================================
   2. PCヘッダー
========================================================= */

.ecoene-pc-header {
    display: block;

    width: 100%;

    margin: 0;
    padding: 0;

    background: #fff;

    box-sizing: border-box;
}

.ecoene-header-wrap {
    width: calc(100% - 40px);
    max-width: 1800px;

    margin: 0 auto;
    padding: 0;

    box-sizing: border-box;
}

.ecoene-header-main {
    display: flex;
    align-items: center;
    justify-content: flex-start;

    width: 100%;

    height: 115px;
    min-height: 115px;

    margin: 0;
    padding: 10px 0;

    gap: 28px;

    box-sizing: border-box;
}


/* =========================================================
   3. PC ロゴ
========================================================= */

.ecoene-header-logo {
    flex: 0 0 clamp(270px, 20vw, 370px);

    width: clamp(270px, 20vw, 370px);

    margin: 0;
    padding: 0;

    text-align: left;
}

.ecoene-logo-catch {
    margin: 0 0 6px;
    padding: 0;

    color: #333;

    font-size: 13px;
    font-weight: 400;
    line-height: 1.3;

    white-space: nowrap;
}

.ecoene-logo-catch strong {
    font-weight: 700;
}

.ecoene-logo-link {
    display: block;

    margin: 0;
    padding: 0;

    line-height: 0;
    text-decoration: none;
}

.ecoene-logo-link img {
    display: block;

    width: clamp(250px, 19vw, 350px);
    max-width: 100%;
    height: auto;

    margin: 0;
}


/* =========================================================
   4. PC 利用実績
========================================================= */

.ecoene-header-results {
    flex: 0 0 auto;

    width: auto;
    min-width: 0;

    margin: 0;
    padding: 0;
}

.ecoene-header-results-body {
    display: flex;
    align-items: center;

    gap: 20px;
}


/* 累計3万人以上 */

.ecoene-header-results-numbers {
    flex: 0 0 auto;

    padding-right: 20px;

    border-right: 1px solid #d6d6d6;

    text-align: left;
}

.ecoene-header-results-users {
    margin: 0;
    padding: 0;

    color: #222;

    font-size: 30px;
    font-weight: 700;
    line-height: 1.2;

    white-space: nowrap;
}

.ecoene-header-results-users strong {
    color: #f39800;

    font-size: 36px;
    font-weight: 800;
    line-height: 1;
}

.ecoene-header-results-numbers small {
    display: block;

    margin-top: 4px;

    color: #555;

    font-size: 12px;
    line-height: 1.2;

    text-align: right;
}


/* 346社 */

.ecoene-header-results-details {
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    justify-content: center;

    gap: 5px;

    min-height: 60px;

    margin: 0;
    padding: 0;
}

.ecoene-header-results-details p {
    margin: 0;
 /* padding: 0; */
}

.ecoene-header-results-dealers {
    color: #222;

    font-size: 18px;
    font-weight: 700;
    line-height: 1.2;

    white-space: nowrap;
}

.ecoene-header-results-dealers strong {
    color: #f39800;

    font-size: 28px;
    font-weight: 800;
    line-height: 1;
}


/* アドバイザー */

.ecoene-header-results-advisor {
    display: inline-block;

    width: fit-content;
    max-width: 100%;

    margin: 0;
    padding: 5px 12px;

    border: 2px solid #f5c84c;
    border-radius: 2px;

    background: #ffffc0;
    color: #222;

    font-size: 20px;
    font-weight: 800;
    line-height: 1.2;
    letter-spacing: 0.02em;

    white-space: nowrap;

    box-sizing: border-box;
}


/* =========================================================
   5. PC 電話
========================================================= */

.ecoene-header-tel {
    flex: 0 0 285px;

    width: 285px;
    min-width: 285px;

    margin: 0 0 0 auto;
    padding: 0;

    text-align: center;
}

.ecoene-header-tel p {
    margin: 0;
    padding: 0;

    color: #222;

    font-size: 14px;
    font-weight: 400;
    line-height: 1.4;

    white-space: nowrap;
}

.ecoene-header-tel .ecoene-header-tel-catch {
    margin-bottom: 2px;

    font-size: 13px;
    line-height: 1.3;

    white-space: nowrap;
}

.ecoene-header-tel a {
    display: block;

    margin: 2px 0;

    color: #36a34d;

    font-size: 34px;
    font-weight: 800;
    line-height: 1.05;

    text-decoration: none;

    white-space: nowrap;
}


/* =========================================================
   6. PC WEBお問い合わせ
========================================================= */

.ecoene-web-contact {
    flex: 0 0 190px;

    width: 190px;
    min-width: 190px;

    margin: 0;
    padding: 0;

    border-radius: 22px;

    background: #36a34d;

    overflow: hidden;

    box-sizing: border-box;
}

.ecoene-web-contact a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;

    width: 100%;
    height: 82px;
    min-height: 82px;

    padding: 6px 14px;

    color: #fff;

    text-decoration: none;

    box-sizing: border-box;
}

.ecoene-web-contact strong {
    color: #fff;

    font-size: 18px;
    font-weight: 700;
    line-height: 1.25;

    text-align: center;
}

.ecoene-web-contact span {
    display: block;

    margin-top: 4px;

    color: #fff;

    font-size: 16x;
    line-height: 1.2;
}


/* =========================================================
   7. 1091〜1350px
   PCをコンパクト化
========================================================= */

@media screen and (min-width: 1091px) and (max-width: 1350px) {

    .ecoene-header-wrap {
        width: calc(100% - 24px);
    }

    .ecoene-header-main {
        gap: 16px;
    }


    /* ロゴ */

    .ecoene-header-logo {
        flex: 0 0 clamp(235px, 20vw, 285px);
        width: clamp(235px, 20vw, 285px);
    }

    .ecoene-logo-link img {
        width: clamp(225px, 19vw, 270px);
    }

    .ecoene-logo-catch {
        font-size: 10px;
    }


    /* 実績 */

    .ecoene-header-results-body {
        gap: 12px;
    }

    .ecoene-header-results-numbers {
        padding-right: 12px;
    }

    .ecoene-header-results-users {
        font-size: 15px;
    }

    .ecoene-header-results-users strong {
        font-size: 25px;
    }

    .ecoene-header-results-dealers {
        font-size: 10px;
    }

    .ecoene-header-results-dealers strong {
        font-size: 21px;
    }

    .ecoene-header-results-advisor {
        padding: 3px 6px;

        font-size: 10px;
        letter-spacing: 0;
    }


    /* 電話 */

    .ecoene-header-tel {
        flex: 0 0 215px;

        width: 215px;
        min-width: 215px;
    }

    .ecoene-header-tel a {
        font-size: 26px;
    }

    .ecoene-header-tel p {
        font-size: 9px;
    }

    .ecoene-header-tel .ecoene-header-tel-catch {
        font-size: 8px;
    }


    /* WEB */

    .ecoene-web-contact {
        flex: 0 0 165px;

        width: 165px;
        min-width: 165px;
    }

    .ecoene-web-contact a {
        height: 78px;
        min-height: 78px;

        padding: 8px 12px;
    }

    .ecoene-web-contact strong {
        font-size: 13px;
    }

    .ecoene-web-contact span {
        font-size: 11px;
    }
}


/* =========================================================
   8. 891〜1090px
   PCをさらにコンパクト化
========================================================= */

@media screen and (min-width: 891px) and (max-width: 1090px) {

    .ecoene-header-wrap {
        width: calc(100% - 16px);
    }

    .ecoene-header-main {
        height: 90px;
        min-height: 90px;

        padding: 8px 0;

        gap: 8px;
    }


    /* ロゴ */

    .ecoene-header-logo {
        flex: 0 0 190px;
        width: 190px;
    }

    .ecoene-logo-link img {
        width: 180px;
    }

    .ecoene-logo-catch {
        font-size: 8px;
    }


    /* 実績 */

    .ecoene-header-results-body {
        gap: 8px;
    }

    .ecoene-header-results-numbers {
        padding-right: 8px;
    }

    .ecoene-header-results-users {
        font-size: 11px;
    }

    .ecoene-header-results-users strong {
        font-size: 19px;
    }

    .ecoene-header-results-numbers small {
        font-size: 8px;
    }

    .ecoene-header-results-dealers {
        font-size: 9px;
    }

    .ecoene-header-results-dealers strong {
        font-size: 18px;
    }

    .ecoene-header-results-advisor {
        padding: 2px 5px;

        font-size: 9px;
        letter-spacing: 0;
    }


    /* 電話 */

    .ecoene-header-tel {
        flex: 0 0 170px;

        width: 170px;
        min-width: 170px;
    }

    .ecoene-header-tel a {
        font-size: 21px;
    }

    .ecoene-header-tel p {
        font-size: 8px;
    }

    .ecoene-header-tel .ecoene-header-tel-catch {
        font-size: 7px;
    }


    /* WEB */

    .ecoene-web-contact {
        flex: 0 0 110px;

        width: 110px;
        min-width: 110px;
    }

    .ecoene-web-contact a {
        height: 62px;
        min-height: 62px;

        padding: 5px 6px;
    }

    .ecoene-web-contact strong {
        font-size: 10px;
    }

    .ecoene-web-contact span {
        margin-top: 3px;

        font-size: 9px;
    }
}


/* =========================================================
   9. SPヘッダー
   PCでは非表示
========================================================= */

.ecoene-sp-header,
.ecoene-sp-results {
    display: none;
}


/* =========================================================
   10. 601〜890px
   ロゴ ＋ 電話番号
========================================================= */

@media screen and (min-width: 601px) and (max-width: 890px) {

    .ecoene-pc-header {
        display: none !important;
    }


    /* 上段 */

    .ecoene-sp-header {
        display: grid !important;

        grid-template-columns: minmax(0, 1fr) 220px !important;

        align-items: center;

        width: 100%;
        height: 80px;

        margin: 0;
        padding: 0;

        background: #fff;

        box-sizing: border-box;
    }


    /* ロゴ */

    .ecoene-sp-logo {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;

        min-width: 0;
        height: 80px;

        padding: 0 20px;

        box-sizing: border-box;
    }

    .ecoene-sp-logo p {
        width: 100%;

        margin: 0 0 3px;
        padding: 0;

        color: #333;

        font-size: 10px;
        font-weight: 400;
        line-height: 1.2;

        white-space: nowrap;
    }

    .ecoene-sp-logo p strong {
        font-weight: 700;
    }

    .ecoene-sp-logo a {
        display: block;

        max-width: 100%;

        line-height: 0;
    }

    .ecoene-sp-logo img {
        display: block;

        width: 300px;
        max-width: 100%;
        height: auto;

        margin: 0;
    }


    /* 電話番号 */

    .ecoene-sp-phone {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;

        width: 220px;
        min-width: 220px;
        height: 80px;

        margin: 0;
        padding: 0 10px;

        background: #fff;

        color: #333;

        text-decoration: none;

        box-sizing: border-box;
    }

    .ecoene-sp-phone img,
    .ecoene-sp-phone-icon {
        display: none !important;
    }

    .ecoene-sp-phone-info {
        display: flex !important;
        flex-direction: column;
        align-items: center;
        justify-content: center;
    }

    .ecoene-sp-phone-label {
        display: block;

        color: #333;

        font-size: 9px;
        line-height: 1.2;

        white-space: nowrap;
    }

    .ecoene-sp-phone-number {
        display: block;

        color: #36a34d;

        font-size: 25px;
        font-weight: 800;
        line-height: 1.1;

        white-space: nowrap;
    }

    .ecoene-sp-phone-hours {
        display: block;

        color: #333;

        font-size: 9px;
        line-height: 1.2;

        white-space: nowrap;
    }


    /* ★ WEBお問い合わせは完全非表示 */

    .ecoene-sp-web-contact,
    a.ecoene-sp-web-contact {
        display: none !important;

        width: 0 !important;
        min-width: 0 !important;
        height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;
    }


    /* =====================================================
       実績
    ====================================================== */

    .ecoene-sp-results {
        position: relative;

        display: grid !important;

        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto auto;

        align-items: center;

        width: 100%;
        min-height: 54px;

        margin: 0;
        padding: 5px 20px;

        background: #fff;

        border-top: 1px solid #e5e5e5;

        box-sizing: border-box;
    }

    .ecoene-sp-results::after {
        content: "";

        position: absolute;

        top: 6px;
        bottom: 6px;
        left: 50%;

        width: 1px;

        background: #d6d6d6;

        transform: translateX(-50%);
    }

    .ecoene-sp-results-numbers {
        display: contents;
    }

    .ecoene-sp-results-numbers p:first-child {
        grid-column: 1;
        grid-row: 1;

        margin: 0;
        padding-right: 20px;

        color: #222;

        font-size: 12px;
        font-weight: 700;
        line-height: 1.25;

        text-align: right;

        white-space: nowrap;
    }

    .ecoene-sp-results-numbers p:nth-child(2) {
        grid-column: 2;
        grid-row: 1;

        margin: 0;
        padding-left: 20px;

        color: #222;

        font-size: 12px;
        font-weight: 700;
        line-height: 1.25;

        text-align: left;

        white-space: nowrap;
    }

    .ecoene-sp-results-numbers strong {
        color: #f39800;

        font-size: 18px;
        font-weight: 800;
    }

    .ecoene-sp-results-numbers small {
        display: block;

        grid-column: 1;
        grid-row: 2;

        margin: 0;
        padding-right: 20px;

        color: #555;

        font-size: 9px;
        line-height: 1.2;

        text-align: right;
    }

    .ecoene-sp-results-advisor {
        display: inline-block;

        grid-column: 2;
        grid-row: 2;

        width: fit-content;

        margin: 0 0 0 20px;
        padding: 2px 6px;

        border: 1px solid #f5c84c;
        border-radius: 3px;

        background: #ffffc0;
        color: #222;

        font-size: 10px;
        font-weight: 800;
        line-height: 1.2;

        white-space: nowrap;

        box-sizing: border-box;
    }
}


/* =========================================================
   11. 600px以下
   ロゴ ＋ 電話アイコン
========================================================= */

@media screen and (max-width: 600px) {

    .ecoene-pc-header {
        display: none !important;
    }


    /* =====================================================
       横スクロール対策
       html/bodyにはoverflowを指定しない
    ====================================================== */

    #container {
        width: 100%;
        max-width: 100%;

        overflow-x: clip;
    }

    #header-container,
    #content,
    #content-in,
    #main {
        max-width: 100%;

        box-sizing: border-box;
    }


    /* =====================================================
       上段
    ====================================================== */

    .ecoene-sp-header {
        display: grid !important;

        /* ★ ロゴ＋電話の2列だけ */
        grid-template-columns: minmax(0, 1fr) 65px !important;

        align-items: center;

        width: 100%;
        max-width: 100%;
        height: 65px;

        margin: 0;
        padding: 0;

        background: #fff;

        overflow: hidden;

        box-sizing: border-box;
    }


    /* =====================================================
       ロゴ
    ====================================================== */

    .ecoene-sp-logo {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        justify-content: center;

        width: auto;
        min-width: 0;
        max-width: 100%;
        height: 65px;

        padding: 0 8px 0 15px;

        box-sizing: border-box;
    }

    .ecoene-sp-logo p {
        width: 100%;

        margin: 0 0 2px;
        padding: 0;

        color: #333;

        font-size: 9px;
        font-weight: 400;
        line-height: 1.1;

        white-space: nowrap;
    }

    .ecoene-sp-logo p strong {
        font-weight: 700;
    }

    .ecoene-sp-logo a {
        display: block;

        max-width: 100%;

        line-height: 0;
    }

    .ecoene-sp-logo img {
        display: block;

        width: 277px;
        max-width: 100%;
        height: auto;

        margin: 0;
    }


    /* =====================================================
       電話アイコン
    ====================================================== */

    .ecoene-sp-phone {
        display: flex;
        align-items: center;
        justify-content: center;

        width: 65px;
        min-width: 65px;
        max-width: 65px;
        height: 65px;

        margin: 0;
        padding: 0;

        background: #00a95f;

        color: #fff;

        text-decoration: none;

        box-sizing: border-box;
    }

    .ecoene-sp-phone-info {
        display: none !important;
    }

    .ecoene-sp-phone img,
    .ecoene-sp-phone-icon {
        display: block !important;

        width: 29px;
        height: 29px;

        object-fit: contain;
    }


    /* =====================================================
       ★ WEBお問い合わせは完全非表示
    ====================================================== */

    .ecoene-sp-web-contact,
    a.ecoene-sp-web-contact {
        display: none !important;

        width: 0 !important;
        min-width: 0 !important;
        height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;
    }


    /* =====================================================
       実績
    ====================================================== */

    .ecoene-sp-results {
        position: relative;

        display: grid !important;

        grid-template-columns: 1fr 1fr;
        grid-template-rows: auto auto;

        align-items: center;

        width: 100%;
        max-width: 100%;
        min-height: 46px;

        margin: 0;
        padding: 3px 12px;

        background: #fff;

        border-top: 1px solid #e5e5e5;

        overflow: hidden;

        box-sizing: border-box;
    }

    .ecoene-sp-results::after {
        content: "";

        position: absolute;

        top: 5px;
        bottom: 5px;
        left: 50%;

        width: 1px;

        background: #d6d6d6;

        transform: translateX(-50%);
    }

    .ecoene-sp-results-numbers {
        display: contents;
    }

    .ecoene-sp-results-numbers p:first-child {
        grid-column: 1;
        grid-row: 1;

        margin: 0;
        padding-right: 13px;

        color: #222;

        font-size: 10px;
        font-weight: 700;
        line-height: 1.25;

        text-align: right;

        white-space: nowrap;
    }

    .ecoene-sp-results-numbers p:nth-child(2) {
        grid-column: 2;
        grid-row: 1;

        margin: 0;
        padding-left: 13px;

        color: #222;

        font-size: 10px;
        font-weight: 700;
        line-height: 1.25;

        text-align: left;

        white-space: nowrap;
    }

    .ecoene-sp-results-numbers strong {
        color: #f39800;

        font-size: 14px;
        font-weight: 800;
    }

    .ecoene-sp-results-numbers small {
        display: block;

        grid-column: 1;
        grid-row: 2;

        margin: 0;
        padding-right: 13px;

        color: #555;

        font-size: 8px;
        line-height: 1.2;

        text-align: right;
    }

    .ecoene-sp-results-advisor {
        display: inline-block;

        grid-column: 2;
        grid-row: 2;

        width: fit-content;
        max-width: calc(100% - 13px);

        margin: 0 0 0 13px;
        padding: 2px 4px;

        border: 1px solid #f5c84c;
        border-radius: 3px;

        background: #ffffc0;
        color: #222;

        font-size: 9px;
        font-weight: 800;
        line-height: 1.2;
        letter-spacing: -0.2px;

        white-space: nowrap;

        box-sizing: border-box;
    }
}


/* =========================================================
   12. 370px以下
========================================================= */

@media screen and (max-width: 370px) {

    /* ★ WEBボタンなし。ロゴ＋電話の2列 */
    .ecoene-sp-header {
        grid-template-columns: minmax(0, 1fr) 58px !important;
    }

    .ecoene-sp-logo {
        padding-left: 8px;
    }

    .ecoene-sp-logo p {
        font-size: 8px;
    }

    .ecoene-sp-logo img {
        width: 190px;
    }

    .ecoene-sp-phone {
        width: 58px;
        min-width: 58px;
        max-width: 58px;
    }

    .ecoene-sp-phone img,
    .ecoene-sp-phone-icon {
        width: 26px;
        height: 26px;
    }

    .ecoene-sp-web-contact,
    a.ecoene-sp-web-contact {
        display: none !important;
    }

    .ecoene-sp-results {
        padding-right: 7px;
        padding-left: 7px;
    }

    .ecoene-sp-results-numbers p:first-child,
    .ecoene-sp-results-numbers small {
        padding-right: 9px;
    }

    .ecoene-sp-results-numbers p:nth-child(2) {
        padding-left: 9px;
    }

    .ecoene-sp-results-numbers p:first-child,
    .ecoene-sp-results-numbers p:nth-child(2) {
        font-size: 9px;
    }

    .ecoene-sp-results-numbers strong {
        font-size: 13px;
    }

    .ecoene-sp-results-advisor {
        max-width: calc(100% - 9px);

        margin-left: 9px;
        padding: 2px 3px;

        font-size: 8px;
    }
}


/* =========================================================
   13. Cocoon旧ナビ非表示
========================================================= */

#header-container.ecoene-column-header .navi,
#header-container.ecoene-column-header .navi .naa {
    display: none !important;
}


/* =========================================================
   14. パンくず PC
========================================================= */

.breadcrumb.sbp-main-before {
    margin-top: 0;
}

#breadcrumb_wrap {
    width: 100%;

    background: #fff;
}

.breadcrumb-item,
.breadcrumb-home {
    margin-right: 20px;
    padding-right: 30px;

    color: #484848;

    text-decoration: none;

    background:
        url("https://eco-ene.com/column/wp-content/uploads/2023/02/arrow01.png")
        right center / auto 9px no-repeat;
}

.breadcrumb-item:last-child {
    background: none;
}

.breadcrumb-home span:before,
.breadcrumb-item span:before {
    content: none !important;
}

.breadcrumb-home .fa-fw,
.breadcrumb-item .fa-fw {
    width: inherit;
}


/* =========================================================
   15. 600px以下
   パンくずを完全に1行表示
========================================================= */

@media screen and (max-width: 600px) {

    #breadcrumb_wrap {
        display: block !important;

        width: 100% !important;
        max-width: 100% !important;

        height: auto !important;
        min-height: 0 !important;

        margin: 0 !important;
        padding: 0 !important;

        background: #fff !important;

        box-sizing: border-box !important;
    }


    #breadcrumb_wrap .breadcrumb {
        display: flex !important;

        flex-direction: row !important;
        flex-wrap: nowrap !important;

        align-items: center !important;
        justify-content: flex-start !important;

        width: calc(100% - 30px) !important;
        max-width: none !important;

        height: auto !important;
        min-height: 0 !important;

        margin: 0 auto !important;
        padding: 12px 0 !important;

        font-size: 13px !important;
        line-height: 1.4 !important;

        white-space: nowrap !important;

        box-sizing: border-box !important;
    }


    /* Cocoon側のfloatやwidthを解除 */

    #breadcrumb_wrap .breadcrumb > * {
        float: none !important;

        display: inline-flex !important;

        align-items: center !important;

        width: auto !important;
        max-width: none !important;
        min-width: 0 !important;

        height: auto !important;

        margin-top: 0 !important;
        margin-bottom: 0 !important;

        white-space: nowrap !important;
    }


    /* 最初の項目 */

    #breadcrumb_wrap .breadcrumb-home {
        flex: 0 0 auto !important;

        margin-right: 14px !important;
        padding-right: 25px !important;

        background:
            url("https://eco-ene.com/column/wp-content/uploads/2023/02/arrow01.png")
            right center / auto 7px no-repeat;
    }


    /* 記事一覧 */

    #breadcrumb_wrap .breadcrumb-item {
        flex: 0 0 auto !important;

        margin-right: 0 !important;
    }

    #breadcrumb_wrap .breadcrumb-item:last-child {
        padding-right: 0 !important;

        background: none !important;
    }


    /* =====================================================
       パンくず下の余白を抑える
    ====================================================== */

    #content {
        margin-top: 0 !important;
        padding-top: 15px !important;
    }

    #content-in {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    #main,
    .main {
        margin-top: 0 !important;
    }
}
/************************************
** footer
************************************/
#footer {
	color: #fff;
    background: #30b76d;
}

.footer-bottom {
    margin-top: 0;
    padding: 8px;
    position: relative;
    font-size: 14px;
}

.navi-footer-in a {
    color: #fff;
    text-decoration: none;
    display: block;
    font-size: 14px;
    transition: all 0.3s ease-in-out;
}

.navi-footer-in > .menu-footer li.menu-item {
    display: inline-block;
    width: auto;
    margin: 0;
    flex: none;
    text-align: left;
	border: none;
}

.navi-footer-in > .menu-footer li.menu-item a {
    display: inline-block;
    width: auto;
    padding: 0 10px;
}

.navi-footer li:not(:last-child):after {
    content: "\002f";
    margin: 0 12px;
}

.navi-footer li a i {
    margin-right: 8px;
}

.copyright {
    font-size: 0.85em;
}

/************************************
** サイドバー
************************************/

.sidebar h2, .sidebar h3 {
	text-align: center;
    color: #fff;
    background-color: #30B76D;
}

.widget-sidebar ul li a {
padding: 16px 0 16px 30px;
line-height: 1.5;
background: url("http://eco-ene.com/column/wp-content/uploads/2023/02/arrow01.png") 0 center / auto 9px no-repeat;
border-bottom: 1px dashed #ddd;}

.widget-sidebar ul li:nth-child(1) a {margin-top: -14px;}

/************************************
** トップカルーセルもっと見る
************************************/

.a-wrap {
  text-decoration: none;
  display: block;
  color: #333;
  padding: 1.5%;
  margin-bottom: 3%;
  transition: all 0.3s ease-in-out;
  border-bottom: 1px solid #ddd;
}

.morebtn01 {
margin-top: 40px;
padding: 2px 0;
width: 147px;
font-size: 14px;
text-align: center;
color: #fff;
background-color: #FFA800;
border-radius: 30px;}

.morebtn01:after {
content: "";
display: inline-block;
width: 29px;
height: 9px;
background: url("http://eco-ene.com/column/wp-content/uploads/2023/02/arrow02.png") right center / auto 9px no-repeat;}

@media screen and (max-width: 600px) {
.e-card-title {min-height: 80px;}

.morebtn01 {
margin-top: 0;
padding: 5px 0;
width: 130px;
font-size: 11px;}
}

/************************************
** 記事下用検索窓
************************************/

.pc {
  display: block !important;
}

.sp {
  display: none;
}

.app_box {
padding: 12px;
border: 8px solid #F4F5F7;}

.app_b_txt01 {
margin: 20px 0 30px;
font-size: 20px;
font-weight: bold;
text-align: center;
}


.app_b_txt01 strong {
font-size: 28px;
color: #f00;}

/*PCでは無効（改行しない）*/
.sma{
    display: none;
}

/*スマートフォンでは有効（改行する）*/
@media screen and (max-width:768px) {
    .sma{
        display: block;
    }
}


/************************************
** sec_select
************************************/

#sec_select {
  box-shadow: 0 3px 1px -2px rgba(0, 0, 0, 0.2), 0 2px 2px 0 rgba(0, 0, 0, 0.14),
    0 1px 5px 0 rgba(0, 0, 0, 0.12);
}

.sec_select_inner {
  border-left: 5px solid #4caf50;
  border-right: 5px solid #4caf50;
  border-bottom: 5px solid #4caf50;
  background: #4caf50;
}

.heading-img {
  background: #4caf50;
}

.heading-img img {
  background-size: cover;
  width: 100%;
}

.form-box {
  margin: 0 auto;
  padding: 24px 20px;
  background: #eafff8;
}

.form-box form {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  background: #eafff8;
}

.form-box form .box-1,
.form-box form .box-2,
.form-box form .box-btn {
  width: 33%;
  text-align: center;
  color: #009688;
  font-weight: 700;
}

.form-box form .box-1 {
  width: 33%;
  text-align: left;
  padding: 10px 0 10px 12px;
  border: 1px solid #ddd;
  margin-right: 60px;
  position: relative;
}

.form-box form .box-2 {
  width: 33%;
  text-align: left;
  padding: 10px 0 10px 12px;
  border: 1px solid #ddd;
  margin-right: 58px;
  position: relative;
}

.form-box form .box-1::before,
.form-box form .box-2::before {
  content: '';
  top: 0;
  height: 0px;
  width: 0;
  border-top: 44px solid transparent;
  border-bottom: 44px solid transparent;
  position: absolute;
  right: -39px;
  border-left: 40px solid #eafff8;
  z-index: 11;
}

.form-box form .box-1::after,
.form-box form .box-2::after {
  content: '';
  top: 0;
  height: 0px;
  width: 0;
  border-top: 44px solid transparent;
  border-bottom: 45px solid transparent;
  position: absolute;
  right: -40px;
  border-left: 40px solid #ddd;
  z-index: 10;
}

.form-box form .box-btn {
  width: 33%;
}

.box-1 p,
.box-2 p {
  text-align: left;
  width: 90%;
  font-size: 12px;
  margin: 0 0 8px 0;
  padding: 0;
  line-height: 1.5;
}


/* .box-1 select,
.box-2 input {
  margin-bottom: 6px;
  width: 90%;
  padding: 7px;
  font-size: 13px;
  border-radius: 3px;
  border: 2px solid #ddd;
} */

.box-btn .btn img {
  width: 100%;
  vertical-align: top;
}

.box-btn button {
  border: none !important;
  box-shadow: none;
  margin-bottom: 12px;
  padding: 0;
  background: #eafff8;
  cursor: pointer;
  transition: .5s;
}

.box-btn button:hover {
  opacity: 0.7;
  box-shadow: none;
/*   transform: translateY(-2px); */
}

.fixed-form-box form .box-btn a.btn02:hover {
  opacity: 0.7;
  box-shadow: none;
/*   transform: translateY(-2px); */
  transition: 0.3s;
}


@media screen and (max-width: 600px) {
  .pc {
    display: none !important;
  }

  .sp {
    display: block;
  }
  .sec_select_inner {
  border-left: 5px solid #30b76d;
  border-right: 5px solid #30b76d;
  border-bottom: 5px solid #30b76d;
  background: #30b76d;
}
  #sec_select {
    border: 5px solid #30b76d;
	margin: 0 10px;
  }

  #sec_select .heading {
    background: #30b76d;
  }

  #sec_select .heading p {
    text-align: center;
    font-size: 20px;
    color: #fff;
    font-weight: 700;
				margin-bottom: 0;
    padding-bottom: 0;
  }

  .form-box {
    padding: 10px;
  }

  .form-box form {
    flex-wrap: wrap;
  }

  .form-box form .box-1,
  .form-box form .box-2,
  .form-box form .box-btn {
    width: 100%;
    border: none;
  }

  .form-box form .box-1::before,
  .form-box form .box-2::before,
  .form-box form .box-1::after,
  .form-box form .box-2::after {
    content: none;
  }

  .form-box form .box-1,
  .form-box form .box-2 {
    padding: 0;
    width: 100%;
    margin-right: 0;
    display: flex;
    justify-content: center;
    align-items: flex-start;
    margin-bottom: 10px;
  }

  .box-1 p,
  .box-2 p {
    width: 35%;
    font-size: 14px;
    line-height: 1.5;
    text-align: left;
  }

  .box-1 select,
  .box-2 input {
    width: 65%;
    padding: 10px;
  }

  .box-btn button {
    padding: 0;
  }
  .box-btn .btn img {
	  width: 70%;
	  vertical-align: middle;
  }
}

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/

.bgimage {
	 background-image: url(http://wptest.yoshitake-natsuki.com/wp-content/uploads/2024/08/sora.png);
		background-size: 100%;
		background-repeat: repeat;
}

	h2.h2-green {
		border: 3px solid #5DB474;
		border-top: 14px solid #59B24C;
		background: initial;
		background-color: white;
		padding: 10px;
	}
	
	h2.h2-doubleline{
	 color: white;
	 border-top: 3px solid white;
		border-bottom: 3px solid white;
		background: initial;
		background-color: #5DB474;
		padding: 20px;
		position: relative;
	}
	
		h2.h2-doubleline::before {
		content:"";
		position:absolute;
		width: 100%;
		height: 15px;
		background-color: #5DB474;
		top: -10px;
		left: 0;
		z-index: -999;
	}
	
			h2.h2-doubleline::after {
		content:"";
		position:absolute;
		width: 100%;
		height: 15px;
		background-color: #5DB474;
		bottom: -10px;
		left: 0;
		z-index: -999;
	}
	

	h3.h3-green {
		border:3px solid #5DB474;
		border-left: 14px solid #59B24C;
		background: initial;
		padding: 10px;
		width: fit-content;
		background-color: white;
}

h4.h4-shortmidasi{
  border: 1px solid #5DB474;
		border-bottom: none;
		background-color: #5DB474;
		width: fit-content;
		color: white;
  border-top-left-radius: 10px; /* 左上の角を10pxの丸み */
  border-top-right-radius: 10px; /* 右上の角を10pxの丸み */
		padding: 10px;
  margin-bottom: 0;
			}

.box-p-list {
  background-color: white;
  border: 1px solid #5DB474;
		padding: 20px;
		margin-bottom: 20px;
}

h4.h4-green{
	 border: 1px solid #5DB474;
		border-bottom: none;
		background-color: #5DB474;
		color: white;
  border-top-left-radius: 10px; /* 左上の角を10pxの丸み */
  border-top-right-radius: 10px; /* 右上の角を10pxの丸み */
		padding: 10px;
  margin-bottom: 0;
}

h4.h4-title{
   color: #5FB475;
			border-top:　 none;
}

h4.point{
  border: 1px solid #99D97C;
		border-bottom: none;
		background-color: #99D97C;
		color: white;
  border-top-left-radius: 10px; /* 左上の角を10pxの丸み */
  border-top-right-radius: 10px; /* 右上の角を10pxの丸み */
		padding: 10px;
  margin-bottom: 0;
}

h4.h4-sikaku {
  box: #5DB474;  /* このプロパティはCSSの標準プロパティではありません。おそらく誤りです。 */
  color: #5DB474;
  background: initial;
  background-color: #0000;
  padding: 10px;
  position: relative;
  border: 1px solid #5DB474; /* ここで緑色の線を追加 */
}


.list{
  background-color: #e0f3f8;
		border-top: none;
		padding: 20px;
		margin-bottom: 20px;
	}

h5.h5-green {
	 border-width: 3px;
  border-color: #59B24C;
		width: fit-content;
		margin-left: auto;
		margin-right: auto;
}

.box-p-green {
  background-color: white;
  border: 1px solid #5DB474;
		border-top: none;
		padding: 20px;
		margin-bottom: 20px;
}

.box-group-green {
  border: 3px solid #59B24C;
		background-color: white;
		border-top: none;
		padding: 10px;
}
.box-group-white{
  border: 3px solid #59B24C;
  background-color: white;
		padding: 10px;
}

.box-p-point{
  background-color: white;
  border: 1px solid #99D97C;
		border-top: none;
		padding: 20px;
		margin-bottom: 20px;
}

.hojo_ul > label {
  border:3px solid #59B24C;
		background-color: #59B24C;
		color:white;
}

.hojo_ul_even > label {
  border:3px solid #92BE93;
		background-color: #92BE93;
		color:white;
}

.hojo_li {
		margin-bottom: 20px;
		padding: 20px;
		background: white;
}

.img_500px {
  width: 500px;
		margin: auto;
}

table.table-green th {
	background: green;
}

.check{
	list-style-image: url(https://eco-ene.com/column/wp-content/uploads/2024/11/check.png);
	list-style-position: inside;
}

/* .editor-styles-wrapper .toggle-button:hover {
	opacity: 1; 
	background-color: #5DB474;
} */

.editor-styles-wrapper .hojo_ul > label {
	background-color: #5DB474;
	border-color: #5DB474;
}

/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/

}

/*834px以下*/
@media screen and (max-width: 834px){
.content {
margin-top: 0;
padding-top: 10px;
background-color: #fff;
}
footer {
margin-top: 0 !important;
padding: 0 8px 8px;
padding: 10px;
background: initial;
}
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}

/*
 * 
  contact

*/
.main-contact{
	width:100%!important;
	background:#f1fff6;
}
.main-contact .main{
	width:100%;
	max-width:1200px;
	margin:0 auto;
}

.dn {
    display: none!important;
}

.contact__read-txt{
	font-weight:bold;
	border-left:6px solid #30b76d;
	margin-bottom:30px;
	padding-left:10px;
}

.haveto {
    font-size: 13px;
    padding: 5px;
    /* background: #ff9393; */
    background: #BC2800;
    color: #fff;
    border-radius: 2px;
    margin-right: 5px;
    position: relative;
    bottom: 4px;
}

.entered {
    font-size: 13px;
    padding: 5px;
    /* background: #ff9393; */
    background: #30b76d;
    color: #fff;
    border-radius: 2px;
    margin-right: 5px;
    position: relative;
    bottom: 4px;
}

.any {
    font-size: 13px;
    padding: 5px;
    background: #93c9ff;
    color: #fff;
    border-radius: 2px;
    margin-right: 5px;
    position: relative;
    bottom: 4px;
}

#formbtn {
    display: block;
    padding: 1em 0;
    margin-top: 0;
    width: 80%;
    background: #ffaa56;
    color: #fff;
    font-size: 22px;
    font-weight: bold;
    border-radius: 50px;
    border: none;
    margin-bottom: 40px;
	transition:.3s;
}

#formbtn2 {
    display: block;
    padding: 1em 0;
    margin-top: 0;
    width: 80%;
    background: #ffaa56;
    color: #fff;
    font-size: 22px;
    font-weight: bold;
    border-radius: 50px;
    border: none;
    cursor: pointer;
    margin-bottom: 60px;
	transition:.3s;
}
.decoration-none{
	text-decoration:none;
}

#formbtn:hover,#formbtn2:hover{

    background: #30b76d;
    color: #fff;

}

.qs_submit__link {
    text-decoration: underline;
    color: #008A3F!important;
}

.cf_hidden {
	display: none;
}

#cf_step2 .cf_step2__pra {
    /* font-size: 18px; */
    font-size: 20px;
    color: #ff0000;
    text-align: center;
    margin-top: 1.5rem;
    font-weight: bold;
}

#cf_step2 .cf_step2__heading-lv3 {
    /* margin-top: 3.6em; */
    color: #ffffff;
    background-color: #1da64d;
}

.qs_submit__pra {
    font-size: 13px;
    color: #008A3F;
    margin-bottom: 20px;
}

.contact__refusal {
    width: 80%;
    margin: 0 auto;
    background: #f2f2f2;
    padding: 50px 20px;
}
.contact__refusal p:first-of-type,.contact__refusal span:first-of-type{
	text-align:center;
	display:block;
}
.contact__refusal-list li{
	list-style:none;
	text-align:left;
	
}

.survey-lead01,.survey-lead02{
	color:#fff;
	background:#1da64d;
	padding-left:10px;
	margin-top:30px;
}
.survey-lead01::before{
	content:"①";
}

.survey-lead02::before{
	content:"②";
}
.survey-lead01::before,
.survey-lead02::before{
	color:rgba(255, 255, 0,1);
	margin-right:10px;
}

/*テーブル*/
.inquiry{
	margin-top:30px;
    margin-bottom: 60px;
    max-width: 100%;
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;

}
.inquiry th,
.inquiry td {
	border:none!important;
	background:#f1fff6;
}
.inquiry th.baseline{
    vertical-align: baseline;
}
.inquiry th {
    text-align: left;
    font-size: 20px;
    color: #444;
	padding:15px 0;
    padding-right: 5px;
    width: 30%;
}

.inquiry td {
    font-size: 20px;
}
@media screen and (max-width: 600px) {
  .inquiry th {
    width: 100%;
    font-size: 18px;
  }

  .inquiry tr {
    display: flex;
    flex-wrap: wrap;
  }

  .inquiry td {
    width: 100%;
    font-size: 18px;
  }

  .how-to-mitsumori {
    display: block;
  }

  .how-to-mitsumori .box-left, 
  .how-to-mitsumori .box-right {
       /* width: 100%; */
  }

}



/*太陽光フォーム*/
.contact-text{
    font-size: 1.5rem;
    color: #222;
	text-align:center;
	margin-bottom:30px;
}
@media screen and (max-width: 600px) {
.contact-text{
    font-size: 1rem;
}
}
.contact-text span{
/*     background: #F2F9F5; */
    color: #BC2800;
    font-size: 1.9rem;
    font-weight: bold;
}
@media screen and (max-width: 600px) {
.contact-text span{
    font-size: 1.4rem;
}
}

.content-contact{
	border:5px solid #e9e9e9;
	padding:60px 10px;

}

.content-contact__wrap {
    max-width: 1024px;
	margin:0 auto;
}

.tab{
    border: 1px solid #F08724;
    background: #fff;
	max-width:800px;
}
.tab input[type="text"] {
    margin-bottom: 10px;
    width: 250px;
    padding: 13px;
    font-size: 15px;
    border-radius: 3px;
    border: 1px solid #707070;
    position: relative;
    bottom: 4px;
    margin-left: 6px;
}

#tab01,
#tab02{
position: relative;
}

#tab01::before,
#tab02::before{
    content: "";
/*     width: 206px;
    height: 220px; */
	width:10vw;
	max-width:180px;
    height: 160px;
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center center;
  position: absolute;
  bottom:0;
  right:0;
}
    @media screen and (max-width:1024px) {
		#tab01::before{
					width:180px;	
		}
    }
#tab01::before{
    background-image: url(https://eco-ene.com/solor/wp-content/themes/theme01/img/form-man.png);
}
#tab02::before{
    background-image: url(https://eco-ene.com/solor/wp-content/themes/theme01/img/form-woman.png);
	display:none;
}

    @media screen and (max-width:767px) {
        #tab01::before,
#tab02::before{
    content: none;
}
    }


.tab ul{
    padding-inline-start: 0px;
	margin-bottom:0;
}

.tab p {
    display: block;
    margin-block-start: 0em;
    margin-block-end: 0em;
    margin-inline-start: 0px;
    margin-inline-end: 0px;
}

.tab button{
    background: #fff;
    border: none;
    cursor: pointer;
	margin-right:165px;
	min-width:300px;
}

@media screen and (max-width:767px) {
	.tab button{
		margin-right:auto;
		margin-left:auto;
		display:block;
}
}
@media screen and (max-width:450px) {
	.tab button{
	min-width:250px;
}
}

.tab input[type="text" i] {
    padding-block: 0px;
    padding-inline: 0px;
}

.tab .red{
    font-size: 13px;
	padding-right:80px;
}

    @media screen and (max-width:890px) {
 .tab .red{
    font-size: 12px;
}  
    }
@media screen and (max-width:767px) {
.tab .red{
	padding-right:0px;
}
}
.tab .orange{
    font-size: 28px;
}

.tab input[type="text"] {
    margin-bottom: 10px;
    width: 250px;
    padding: 13px;
    font-size: 15px;
    border-radius: 3px;
    border: 1px solid #707070;
    position: relative;
    bottom: 4px;
    margin-left: 6px;
}

    @media screen and (max-width:890px) {
.tab input[type="text"] {
    margin-bottom: 0px;
        padding: 5px;

}
    }

.tab input[type="checkbox"] {
    accent-color:#dd7a23;
    transform: scale(1.5);
}

.tab label{
    font-size: 18px;
}

    @media screen and (max-width:890px) {
.tab label{
    font-size: 14px;
}

    }
 

.tab__menu {
    display: flex;
    justify-content: center;
    margin-block-start: 0;
    margin-block-end: 0;
}

.tab__menu-item {
    list-style: none;
    padding: 20px;
    width: 100%;
    font-size: 28px;
    line-height: 1;
    background-color: #F7F7F7;
    text-align: center;
    cursor: pointer;
    color: rgba(51,51,51,30%);
}

    @media screen and (max-width:767px) {
.tab__menu-item {
    padding: 10px;
    font-size: 18px;


}
    }

.tab__menu-item p{
    border-top: 3px solid rgba(51,51,51,30%);
    font-weight: bold;
	padding:15px 0;

}

.tab01.is-active {
    color: #EF8424;
    background-color: #fff;
}
.tab02.is-active {
    color: #2F6AAF;
    background-color: #fff;
}

.tab01.is-active p{
    border-top: 3px solid #F08923;
}
.tab02.is-active p{
    border-top: 3px solid #2F6AAF;
}



.tab__content {

    margin-block-start: 0;
    margin-block-end: 0;
}

.tab__content-item {
    padding: 25px;
    display: none;
    background-color: #fff;

}

.tab__content-item.is-active {
    display: block;
}

.form__thumb {
    display: flex;
}
@media screen and (max-width:767px) {
.form__thumb {
	justify-content:center;
}
}
.form__img {
    flex-shrink:0;
	width:14vw;
}


    @media screen and (max-width:890px) {
.form__img {
    display: none;
}
    }
.form__txt {
    text-align: left;
    margin-left: 30px;
}

    @media screen and (max-width:767px) {

        .form__txt {

    margin-left: 0px;
    font-size: 16px;
}
.form__txt span.tab02-red{
    display: block;
    margin: 0 auto;
    font-size: 12px;
    margin-top: 10px;

}
    }




.form__flexbox {
/*     display: flex; */

}

    @media screen and (max-width:890px) {
.form__flexbox {
    flex-direction: column;
}
    }

.orange {
}
.form__checkbox {
    margin-left: 20px;
    margin-top: -5px;
}
    @media screen and (max-width:890px) {
.form__checkbox {
    margin-left: 0px;
    margin-top: 0;
}
    }


#tab02 p{
    font-size: 24px;
    color: #2F70BA;
    line-height: 1.5;

}

    @media screen and (max-width:767px) {
#tab02 p{
    font-size: 13px;


}
    }

#tab02 span {
    font-size: 18px;
    color: #fff;
    background-color: #BC2701;
    border-radius: 10px;
    padding: 10px 10px;
    line-height: 1;
    display: inline-block;
    margin-bottom: 15px;
}

    @media screen and (max-width:890px) {
#tab02 span {
    font-size: 15px;
}
    }

.tab input[type="tel"] {
    margin-bottom: 10px;
    width: 250px;
    padding: 13px;
    font-size: 15px;
    border-radius: 3px;
    border: 1px solid #707070;
    position: relative;
    bottom: 4px;
    margin-left: 6px;
}

/** サンクスページ **/
.thanks {
}
.inner {
}
.thanks__thumb {
  display: flex;
}

    @media screen and (max-width:767px) {
.thanks__thumb {
  flex-direction: column;
}
    }
.thanks__lead {
}
.thanks__heading-lv2 {
  font-size: 35px;
}

    @media screen and (max-width:767px) {
.thanks__heading-lv2 {
  font-size: 25px;
}
    }
.thanks__lead-txt {
}
.thanks__img {
    height: inherit;
    width: 30%;
    margin-left: 100px;
}
    @media screen and (max-width:767px) {
.thanks__img {
    width: 200px;
    margin: 0 auto;
    margin-top: 20px;
}
    }

.thanks__txt {
  text-align: center;
  margin-top: 100px;
}

    @media screen and (max-width:767px) {
.thanks__txt {
margin-top: 0;
}
    }
.thanks__heading-lv3 {
    font-size: 25px;
}
    @media screen and (max-width:767px) {
.thanks__heading-lv3 {
    font-size: 20px;
}
    }
.thanks__pra {
}
/**********集合住宅フォーム*************************/
.article ul li, .article ol li {
    margin: 0;
}
.contact-house {
  max-width: 1200px;
  margin: 0 auto;
	margin-top:30px;
}
.contact-house button {
  background: transparent;
  border: 0;
}
.contact-house p {
  margin: 0;
}
.contact-house ul {
  padding: 0;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
	background:#5CBC75;
	overflow:hidden;
}
.contact-house li {
  list-style: none;
  width: 100%;
  background: #5CBC75;
  text-align: center;
  padding: 10px 0;
  color: #fff;
  position: relative;

}
@media screen and (max-width: 600px) {
  .contact-house li {
    font-size: 12px;
  }
}
@media screen and (max-width: 500px) {
.contact-house li:nth-child(2){
    padding: 0 15px;
    white-space: nowrap;
    display: flex;
    align-items: center;
}
}


.contact-house li:nth-child(1)::after,
.contact-house li:nth-child(2)::after {
  content: "";
  display: block;
  width: 50px;
  height: 50px;
  /* border-bottom: 1px solid #fff; */
  /* border: 1px solid #fff; */
  position: absolute;
  top: 50%;
  z-index: 1;
}
.contact-house li:nth-child(1)::after,
.contact-house li:nth-child(2)::after {
  right: 0;
  -webkit-transform: translate(0%, -50%) rotate(-45deg);
      -ms-transform: translate(0%, -50%) rotate(-45deg);
          transform: translate(0%, -50%) rotate(-45deg);
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}
.contact-house__wrap {
  text-align: center;
  font-weight: bold;
  position: relative;
  padding-bottom: 20px;
  border: 1px solid #5CBC75;
}

@media screen and (max-width: 600px) {
.contact-house__wrap {
	padding-left:20px;
	padding-right:20px;
}
}

p.contact-house-lead {
  font-size: 21px;
  font-weight: bold;
  letter-spacing: 0.2em;
  margin-top:20px;
}
@media screen and (max-width: 600px) {
p.contact-house-lead {
  font-size: 14px;
}
}

.contact-house-lead span {
  color: #BC2800;
}
.contact-house-lead strong {
  font-size: 28px;
}
.contact-house-lead br {
  display: none;
}
@media screen and (max-width: 800px) {
  .contact-house-lead br {
    display: block;
  }
}

.contact-house__form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
	    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  gap: 30px;
  max-width: 615px;
  margin: 0 auto;
  margin-top: 1%;
}
.contact-house__form select {
  font-size: 18px;
  max-width:166px;
}
.contact-house__form input {
  font-size: 18px;
}
@media screen and (max-width: 900px) {
  .contact-house__form {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 10px;
    max-width: 500px;
    margin: 0 auto;
    margin-top: 20px;
  }
}
.contact-house__input{
	display:flex;
	align-items:center;
}
@media screen and (max-width: 600px) {
.contact-house__input{
	flex-direction:column;
/* 	align-items:flex-start; */
}
}

.contact-house__input p {
	white-space:nowrap;
	margin-left:5px;

}
.contact-house__input span {
  color: #008A3F;
}

.contact-house__btn {
  background: -webkit-gradient(linear, left top, right top, from(#FFD600), to(#EF8126));
  background: linear-gradient(to right, #FFD600, #EF8126);
  border-radius: 50px;
  max-width: 460px;
  margin: 0 auto;
  margin-top: 30px;
  cursor: pointer;
}

.contact-house__btn button {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 20px;
  padding: 5px 0;
}

label{
	cursor:auto;
}

@media screen and (max-width: 500px) {
.contact-house__btn button {
  gap: 5px;
}
}
.contact-house__btn .muryo {
  display: inline-grid;
  color: #BC2800;
  font-size: 1.3rem;
  font-weight: bold;
  background-color: #fff;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  text-align: center;
  -ms-flex-line-pack: center;
      align-content: center;
}
.contact-house__btn .txt {
  font-size: 14px;
  color: #222;
  font-weight: bold;
  line-height: 0.9;
}
@media screen and (max-width: 800px) {
  .contact-house__btn .txt {
    font-size: 12px;
  }
}
.contact-house__btn .txt span {
  color: #BC2800;
}
.contact-house__btn .txt strong {
  font-size: 28px;
}
.contact-house__btn .mitumori {
  -webkit-text-stroke: 4px #fff;
  position: relative;
  font-size: 1.5rem;
  font-weight: bold;
  color: #36A34D;
  letter-spacing: 5px;
}
@media screen and (max-width: 800px) {
  .contact-house__btn .mitumori {
    font-size: 3vw;
  }
}
.contact-house__btn .mitumori::before {
  content: "スピード見積もり";
  -webkit-text-stroke: 0;
  position: absolute;
  bottom: 0;
}
@media screen and (max-width: 800px) {
  .contact-house__btn .mitumori::before {
    font-size: 3vw;
  }
}
.contact-house__btn .white {
  color: #fff;
  font-size: 0.8rem;
}

.contact-img {
  width: 18%;
  position: absolute;
  bottom: 0;
  right: 1%;
}
@media screen and (max-width: 900px) {
  .contact-img {
    display: none;
  }
}





/************************************
** solar-footer-custom-button
************************************/

#solar-footer-custom-button {
  display: block;
  width: 100%;
  background: rgb(0 0 0 / 70%);
/*   position: fixed;
  bottom: 0;
  z-index: 999; */
  padding: 15px 0;
  margin-bottom: 0;
  zoom: 80%;
  opacity: 0;
  transition: 1s;
  text-align: center;
  box-sizing: border-box;
  overflow-wrap: break-word;
  font-weight: 400;
  font-size: 18px;
  color: #484848;
  line-height: 1.8;
}

@media screen and (max-width: 890px) {
  #solar-footer-custom-button {
    display: none;
  }
}

#solar-mobile-footer-custom-button {
  display: none;
}

@media screen and (max-width: 890px) {
  #solar-mobile-footer-custom-button {
    display: block;
  }
}


@media screen and (max-width: 600px) {

  #solar-mobile-footer-custom-button {
/*     position: fixed;
    bottom: 0;
    left: 0; */
    width: 100%;
/*     z-index: 100;
    margin-bottom: 50px; */
    opacity: 0;
    transition: 0.7s;
	  background:#fff;
  }

  .solar-flowting-box {
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .solar-flowting-box div {
    text-decoration: none;
    color: #ffffff;
  }

  .solar-flowting-box div i {
    padding: 0.5em;
  }

  .solar-flowting-box .solar-left {
    width: 100%;
    padding: 5px;
    text-align: center;
    background: rgb(255 255 255 / 70%);
	  background:#fff;
	  text-align:center;
  }

  .solar-flowting-box .solar-right {
    width: 50%;
    padding: 5px;
    text-align: center;
    background: rgb(255 255 255 / 70%);
  }

  /* 表示制御用 */
  #solar-mobile-footer-custom-button.is-show {
    opacity: 1;
    visibility: visible;
  }

  #solar-mobile-footer-custom-button.is-hidden {
    opacity: 0;
    visibility: hidden;
  }
}





#solar-footer-custom-button .solar-fixed-form-box {
  margin: 0 auto;
  height: auto;
  background: #fff;
  box-shadow: none;
  display: flex;
  align-items: center;
  box-sizing: border-box;
  overflow-wrap: break-word;
}

.solar-fixed-form-box form {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.solar-fixed-form-wrap {
  margin: 0 auto;
  max-width: 1280px;
  padding: 0 20px;
}

@media screen and (max-width: 1024px) {
  .solar-fixed-form-wrap {
    width: auto;
  }
}

.solar-flexbox {
  display: flex;
}

@media screen and (max-width: 890px) {
  .solar-flexbox._cf_step2 {
    flex-direction: column;
  }
}

.solar-fixed-form-box form .solar-box-1,
.solar-fixed-form-box form .solar-box-2 {
  width: 33%;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

.solar-fixed-form-box .solar-box-1 p,
.solar-fixed-form-box .solar-box-2 p {
  font-size: 22px;
  font-weight: 700;
  margin: 0;
  text-align: left;
  width: 90%;
  padding: 0;
}

@media screen and (max-width: 890px) {
  .solar-fixed-form-box .solar-box-1 p,
  .solar-fixed-form-box .solar-box-2 p {
    font-size: 15px;
  }
}

.solar-fixed-form-box form .solar-box-btn {
  display: flex;
}

@media screen and (max-width: 890px) {
  .solar-fixed-form-box form .solar-box-btn {
    flex-direction: column;
    padding: 10px;
  }
}

.solar-fixed-form-box form .solar-box-btn button,
.solar-fixed-form-box form .solar-box-btn a {
  margin: 0 auto;
  padding: 15px 20px;
  width: 300px;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  border: none;
  position: relative;
  letter-spacing: 0.07em;
  text-decoration: none;
}

.solar-fixed-form-box form .solar-box-btn button.solar-btn01 {
  background: linear-gradient(
    #f4c043 0%,
    #f4bc43 16.06%,
    #f4b83f 34.92%,
    #f3b13e 52.06%,
    #f1ab3d 69.47%,
    #f2a13a 86.78%,
    #f19f3a 100%
  );
  border-radius: 31px;
  margin-left: 20px;
}

.solar-fixed-form-box form .solar-box-btn a.solar-btn02 {
  background: linear-gradient(
    #9fce63 0%,
    #89c861 16.06%,
    #73c05f 34.92%,
    #5eb85d 52.06%,
    #52b05b 69.47%,
    #4fad5b 86.78%,
    #4fad5b 100%
  );
  margin-left: 20px;
}

@media screen and (max-width: 890px) {
  .solar-fixed-form-box form .solar-box-btn a.solar-btn02 {
    margin-top: 10px;
  }
}

.solar-fixed-form-box form .solar-box-btn button::after,
.solar-fixed-form-box form .solar-box-btn a.solar-btn02::after {
  content: "";
  width: 7px;
  height: 7px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  position: absolute;
  top: 50%;
  right: 25px;
  transform: translate(0, -50%) rotate(45deg);
}

/* input styling */

.solar-fixed-form-box .solar-box-2 input[type="text"] {
  margin-bottom: 10px;
  width: 90%;
  padding: 11px;
  font-size: 16px;
  border-radius: 3px;
  border: 2px solid #ddd;
}

.solar-fixed-form-box .solar-box-2 li:last-child {
  display: flex;
  position: relative;
  top: -5px;
  font-size: 16px;
}

.solar-fixed-form-box .solar-box-2 li label {
  margin-left: 10px;
}

.solar-fixed-form-box .solar-box-2 input {
  display: block;
}





/************************************
** battery-footer-custom-button
************************************/


#battery-footer-custom-button {
  display: block;
  width: 100%;
  background: rgb(0 0 0 / 70%);
/*   position: fixed;
  bottom: 0;
  z-index: 999; */
  padding: 15px 230px 25px;
  margin-bottom: 0;
  zoom: 80%;
  opacity: 0;
  transition: 1.0s;

}

#battery-footer-custom-button .battery-fixed-form-box {
  margin: 0 auto;
  padding: 10px 50px 15px;
  height: auto;
  background: #fff;
  box-shadow: none;
  display: flex;
  align-items: center;
}

.battery-fixed-form-box form {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}

.battery-fixed-form-box form .battery-box-1,
.battery-fixed-form-box form .battery-box-2 {
  width: 33%;
}

.battery-fixed-form-box .battery-box-1 p,
.battery-fixed-form-box .battery-box-2 p {
  text-align: center;
  font-size: 20px;
  font-weight: 700;
}

.battery-fixed-form-box form .battery-box-btn {
  width: 33%;
}

.battery-fixed-form-box form .battery-box-btn button {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  padding: 1em 2em;
  width: 300px;
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  background: linear-gradient(60deg, #ffc107 0%, #ff9800 100%);
  border-radius: 50vh;
  border-color: transparent;
  position: relative;
}

.battery-fixed-form-box form .battery-box-btn button::after {
  content: '';
  width: 7px;
  height: 7px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 25px;
  transform: translate(0,-50%) rotate(45deg);
}

.battery-fixed-form-box form .battery-box-btn button:hover{
    
}

@media screen and (max-width: 890px) {
  #battery-footer-custom-button {
    display: none;
  }
}



#battery-mobile-footer-custom-button {
  display: none;
}

@media screen and (max-width: 890px) {
  #battery-mobile-footer-custom-button {
    display: block;
  }
}


@media screen and (max-width: 600px) {


  #battery-mobile-footer-custom-button {
/*     position: fixed;
    bottom: 0;
    left: 0; */
    width: 100%;
    margin-bottom: 0px;
/*     opacity: 0; */
    transition: 0.7s;
	  background:#fff;
  }

  .battery-flowting-box {
    display: flex;
    justify-content: center;
    align-items: center;
  }

  .battery-flowting-box div {
    text-decoration: none;
    color: #ffffff;
  }

  .battery-flowting-box div i {
    padding: 0.5em;
  }

  .battery-flowting-box .battery-left {
    width: 100%;
    padding: 5px;
    text-align: center;
    background: rgb(255 255 255 / 70%);
  }

  .battery-flowting-box .battery-right {
    width: 50%;
    padding: 5px;
    text-align: center;
    background: rgb(255 255 255 / 70%);
  }
}





/************************************
** アニメーション制御
************************************/
@keyframes hidden-anm {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
@keyframes show-anm {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.is-hidden {
  visibility: hidden;
  animation-name: hidden-anm;
  animation-duration: 0.5s;
  animation-fill-mode: forwards;
	height:0;
}
.is-show {

	height:auto;
  	animation-name: show-anm;
	animation-duration: 0.5s;	
	animation-fill-mode: forwards;
}


/***
 人気記事
****/
.cat-item-166,.cat-item-167,
.cat-item-215,.cat-item-216,.cat-item-217,.cat-item-218,.cat-item-219,.cat-item-220,.cat-item-221,.cat-item-222,.cat-item-223,.cat-item-224,.cat-item-225,.cat-item-226,.cat-item-227,.cat-item-228,.cat-item-229,.cat-item-230,.cat-item-231,.cat-item-232,.cat-item-233,.cat-item-234,.cat-item-235,.cat-item-236,.cat-item-237,.cat-item-238,.cat-item-239,.cat-item-240,.cat-item-241,.cat-item-242,.cat-item-243,.cat-item-244,.cat-item-245,.cat-item-246,.cat-item-247,.cat-item-248,.cat-item-249,.cat-item-250,.cat-item-251,.cat-item-252,.cat-item-253,.cat-item-254,.cat-item-255,.cat-item-256,.cat-item-257,.cat-item-258,.cat-item-259,.cat-item-260,.cat-item-261 {
	display:none!important;
}


#popular_entries-2{
	display:block;
	@media screen and (max-width:1023px) {
    display: none!important;
  }
}

.category .popluar-article__wrap-main{display:none!important;}
.blog .popluar-article__wrap-cat{display:none!important;}

.popluar-article__wrap {
  display: none;
  @media screen and (max-width:1023px) {
    display: block;
	 margin-bottom:30px;

  }
}
.popluar-article__widget-title{
	display:none;
  text-align: center;
  color: #fff;
  background-color: #30B76D;
		@media screen and (max-width:1023px) {
    display: block;
  }
}
.popluar-article__list {
	list-style:none;
	padding:0;
	padding-top:20px;
  display: flex;
	flex-wrap:wrap;
	gap:10px;
}
.popluar-article__item {
	width:calc((100% - 10px) / 2);
	border: 1px solid #ddd;
}
.popluar-article__item a{
	text-decoration:none;
	transition:.3s;
}
.popluar-article__item a:hover{
	opacity:0.5;
}
.popluar-article__body {
}

.popluar-article__date {
	font-size: 12px;
    color: #9d9d9d;
	padding-left:10px;
}
.popluar-article__title {
	font-size: 17px;
    color: #000;
    padding: 10px;
	padding-top:0;
    line-height: 1.5;
}
.popluar-article__image {
}

.popluar-article__image img{
	width:100%
}

/****
 フッター　サイトマップ
 ***/

.footer{margin-top:0px!important;}

.cat-item-227,.cat-item-228{
	display:none!important;
}

.footer-site-map {
	margin-top:20px;
	background:#f1f1f1;
		@media screen and (max-width:1280px) {
	margin-top:0px;
  }
}
.footer-site-map__wrap {
	max-width:1256px;
	margin:0 auto;
	padding:20px 0px;
	@media screen and (max-width:1280px) {
		padding-left:30px;
		padding-right:30px;
  }
	@media screen and (max-width:1023px) {
		padding-left:10px;
		padding-right:10px;
  }
}
.footer-site-map__ttl {
	font-size:17px;
	border-bottom:1px solid #32b76d;
	cursor:pointer;
	pointer-events:none;
	display:flex;
	justify-content:space-between;
	align-items:center;
	
	@media screen and (max-width:1023px) {
		pointer-events:auto;
  }
}

.footer-site-map__ttl .icon {
    display: none;
	margin-right:10px;
    box-sizing: border-box;
    width: 10px;
    height: 10px;
    border-style: solid;
    border-width: 2px 2px 0px 0px;
    border-color: #FFA800;
    transform: rotate(135deg);
	transition:.3s;
	@media screen and (max-width:1023px) {
			display:block;
  }
}
.footer-site-map__ttl.open .icon {
	transform: rotate(-45deg);
}

.footer-site-map__prefectures {

		@media screen and (max-width:1023px) {
			display:none;
  }
	
}
.footer-site-map__prefectures-inner {
	display:flex;
	flex-wrap:wrap;
	gap:5px;	
	}

.footer-site-map__prefectures a{
	text-decoration:none;
	color:#000;
	font-size:16px;
	transition:.3s
}
.footer-site-map__prefectures a:hover{
	opacity:0.5;
}
/***
固定フッター
***/
.mobile-menu-buttons {
	position:static;
}

.mobile-footer-menu{
/* 	display:none; */
	position:fixed;
	bottom:0;
	left:0;
	z-index:2;
	width:100%;
	text-align:center;
}

/**
スマホ　サイドバー
**/
#slide-in-sidebar
.widget-sidebar-title + ul{
	text-align:left;
}

.toc-content > ol > li { 
 list-style-type: numbers;
}

/* =========================================================
   スマホ：パンくず下～人気記事の余白を詰める
========================================================= */

@media screen and (max-width: 600px) {

    /* パンくず */
    #breadcrumb_wrap {
        margin-bottom: 0 !important;
    }

    #breadcrumb_wrap .breadcrumb {
        margin-bottom: 0 !important;
        padding-top: 12px !important;
        padding-bottom: 12px !important;
    }

    /* メインコンテンツ上部 */
    #content {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    #content-in {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }

    #main,
    .main {
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
}

/* =========================================================
   地域別補助金情報
   記事サイト / Cocoon用
========================================================= */

/* セクション全体 */
#subsidy {
    width: 100%;
/*     margin: 100px auto 80px; */
	margin: 100px auto 0;
/*     padding: 0; */
	padding: 100px 0;
    overflow: hidden;
    box-sizing: border-box;
	background-color: #fff
}

/* メイン見出し */
#subsidy > h3 {
    margin: 0 0 60px;
    padding: 0;
    text-align: center;
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1.5;
    letter-spacing: 2px;
    border: none;
    background: none;
}

#subsidy > h3 span {
    color: #008a3f;
}


/* =========================================================
   PC：地図全体
========================================================= */

#subsidy .map-container {
    position: relative;

    width: 1200px;
    height: 1075px;

    margin: 0 auto !important;
    padding: 0 !important;

    box-sizing: border-box;
}


/* =========================================================
   地図画像
========================================================= */

#subsidy .pc {
    display: block;
}

#subsidy .map-img1,
#subsidy .map-img2,
#subsidy .map-img3 {
    max-width: none;
    height: auto;
}

#subsidy .map-img1 {
    position: absolute;
    top: 47px;
    left: 55px;
}

#subsidy .map-img2 {
    position: absolute;
    top: 31px;
    right: 18px;
}

#subsidy .map-img3 {
    position: absolute;
    top: 524px;
    left: 0;
}


/* =========================================================
   都道府県エリア共通
========================================================= */

#subsidy .area-search {
    max-width: 1000px;
    margin: 0 auto;
    padding: 0;
}

#subsidy .area-block {
    margin: 0 0 30px;
    padding: 0;
}

#subsidy .area-block h3 {
    margin: 0 0 20px;
    padding: 0 0 0 12px;

    font-size: 22px;
    font-weight: 700;
    line-height: 1.5;

    background: none;
}

#subsidy .area-block ul {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;

    width: 290px;

    margin: 0;
    padding: 0;
}

#subsidy .area-block ul li {
    width: 86px;

    margin: 0;
    padding: 0;

    list-style: none;
}

#subsidy .area-block ul li::before,
#subsidy .area-block ul li::after {
    content: none;
}

#subsidy .area-block a {
    display: block;

    padding: 9px 0;

    color: #333;
    background: #f5f5f5;

    border: none;
    border-radius: 6px;

    font-size: 17px;
    font-weight: 400;
    line-height: 1.4;
    text-align: center;
    text-decoration: none;

    box-shadow: none;

    transition:
        background-color 0.25s ease,
        color 0.25s ease;
}


/* =========================================================
   北海道
========================================================= */

#subsidy .area--hokkaido {
    position: absolute;
    top: 20px;
    right: 264px;
}

#subsidy .area--hokkaido h3 {
    border-left: 10px solid #8a80bb;
    border-bottom: 2px solid #8a80bb;
}

#subsidy .area--hokkaido ul {
    width: 93px;
}

#subsidy .area--hokkaido a:hover {
    color: #fff;
    background: #8a80bb;
}


/* =========================================================
   東北
========================================================= */

#subsidy .area--tohoku {
    position: absolute;
    top: 334px;
    right: 0;
}

#subsidy .area--tohoku h3 {
    border-left: 10px solid #61a6db;
    border-bottom: 2px solid #61a6db;
}

#subsidy .area--tohoku ul {
    width: 191px;
}

#subsidy .area--tohoku a:hover {
    color: #fff;
    background: #61a6db;
}


/* =========================================================
   関東
========================================================= */

#subsidy .area--kantou {
    position: absolute;
    right: 0;
    bottom: 191px;
}

#subsidy .area--kantou h3 {
    border-left: 10px solid #8cc55b;
    border-bottom: 2px solid #8cc55b;
}

#subsidy .area--kantou a:hover {
    color: #fff;
    background: #8cc55b;
}


/* =========================================================
   中部
========================================================= */

#subsidy .area--tyubu {
    position: absolute;
    top: 200px;
    left: 500px;
}

#subsidy .area--tyubu h3 {
    border-left: 10px solid #5d9d5b;
    border-bottom: 2px solid #5d9d5b;
}

#subsidy .area--tyubu a:hover {
    color: #fff;
    background: #5d9d5b;
}


/* =========================================================
   関西
========================================================= */

#subsidy .area--kansai {
    position: absolute;
    right: 373px;
    bottom: 0;
}

#subsidy .area--kansai h3 {
    border-left: 10px solid #f1a653;
    border-bottom: 2px solid #f1a653;
}

#subsidy .area--kansai ul {
    width: 191px;
}

#subsidy .area--kansai a:hover {
    color: #fff;
    background: #f1a653;
}


/* =========================================================
   中国
========================================================= */

#subsidy .area--tyugoku {
    position: absolute;
    top: 318px;
    left: 254px;
}

#subsidy .area--tyugoku h3 {
    border-left: 10px solid #ed6d3d;
    border-bottom: 2px solid #ed6d3d;
}

#subsidy .area--tyugoku ul {
    width: 191px;
}

#subsidy .area--tyugoku a:hover {
    color: #fff;
    background: #ed6d3d;
}


/* =========================================================
   四国
========================================================= */

#subsidy .area--shikoku {
    position: absolute;
    left: 370px;
    bottom: 59px;
}

#subsidy .area--shikoku h3 {
    border-left: 10px solid #f2a0b8;
    border-bottom: 2px solid #f2a0b8;
}

#subsidy .area--shikoku ul {
    width: 191px;
}

#subsidy .area--shikoku a:hover {
    color: #fff;
    background: #f2a0b8;
}


/* =========================================================
   九州
========================================================= */

#subsidy .area--kyusyu {
    position: absolute;
    left: 20px;
    bottom: 0;
}

#subsidy .area--kyusyu h3 {
    border-left: 10px solid #e83820;
    border-bottom: 2px solid #e83820;
}

#subsidy .area--kyusyu a:hover {
    color: #fff;
    background: #e83820;
}


/* =========================================================
   沖縄
========================================================= */

#subsidy .area--okinawa {
    position: absolute;
    top: 581px;
    left: 100px;
}

#subsidy .area--okinawa h3 {
    border-left: 10px solid #93278f;
    border-bottom: 2px solid #93278f;
}

#subsidy .area--okinawa ul {
    width: 93px;
}

#subsidy .area--okinawa a:hover {
    color: #fff;
    background: #93278f;
}


/* =========================================================
   1200px以下
   地図を非表示 → 地域一覧に切り替え
========================================================= */

@media screen and (max-width: 1200px) {

    #subsidy {
	 /* margin: 80px auto 60px; */
		margin: 80px auto 0;
	 /* padding: 0 30px; */
		padding: 100px 30px;
    }

    #subsidy > h3 {
        margin-bottom: 45px;
        font-size: 2rem;
    }

    /* 地図画像を非表示 */
    #subsidy .pc {
        display: none;
    }

    #subsidy .map-container {
        width: 100%;
        max-width: 100%;
        height: auto;

        margin: 0 auto !important;
        padding: 0 !important;
    }

    #subsidy .area-search {
        width: 100%;
        max-width: 900px;

        margin: 0 auto;
        padding: 0;
    }

    /* 絶対配置を解除 */
    #subsidy .area--hokkaido,
    #subsidy .area--tohoku,
    #subsidy .area--kantou,
    #subsidy .area--tyubu,
    #subsidy .area--kansai,
    #subsidy .area--tyugoku,
    #subsidy .area--shikoku,
    #subsidy .area--kyusyu,
    #subsidy .area--okinawa {
        position: static;

        width: 100%;

        margin: 0 0 35px;
    }

    #subsidy .area-block ul,
    #subsidy .area--hokkaido ul,
    #subsidy .area--tohoku ul,
    #subsidy .area--kantou ul,
    #subsidy .area--tyubu ul,
    #subsidy .area--kansai ul,
    #subsidy .area--tyugoku ul,
    #subsidy .area--shikoku ul,
    #subsidy .area--kyusyu ul,
    #subsidy .area--okinawa ul {
        width: 100%;
    }
}


/* =========================================================
   スマホ 780px以下
========================================================= */

@media screen and (max-width: 780px) {

    #subsidy {
        margin: 60px 0 0;
        padding: 0 15px;
    }

    #subsidy > h3 {
        margin-bottom: 35px;
		margin-top: 80px;

        font-size: 1.5rem;
        letter-spacing: 1px;
    }

    #subsidy .area-search {
        padding: 0;
    }

    #subsidy .area--hokkaido,
    #subsidy .area--tohoku,
    #subsidy .area--kantou,
    #subsidy .area--tyubu,
    #subsidy .area--kansai,
    #subsidy .area--tyugoku,
    #subsidy .area--shikoku,
    #subsidy .area--kyusyu,
    #subsidy .area--okinawa {
        margin-bottom: 30px;
    }

    #subsidy .area-block h3 {
        margin-bottom: 15px;

        font-size: 18px;
    }

    #subsidy .area-block ul {
        gap: 10px;
    }

    /* 4列 */
    #subsidy .area-block ul li {
        width: calc((100% - 30px) / 4);
    }

    #subsidy .area-block a {
        padding: 8px 2px;

        font-size: 14px;
        white-space: nowrap;
    }
}


/* =========================================================
   小さいスマホ
========================================================= */

@media screen and (max-width: 390px) {

    #subsidy {
        padding: 80px 12px 0;
    }

    #subsidy .area-block ul {
        gap: 8px;
    }

    #subsidy .area-block ul li {
        width: calc((100% - 24px) / 4);
    }

    #subsidy .area-block a {
        font-size: 13px;
    }
}

/* =========================================================
   補助金マップ：1200px以下では地図を確実に非表示
========================================================= */

@media screen and (max-width: 1201px) {

    #subsidy .map-container > .pc {
        display: none !important;
    }

    #subsidy .map-img1,
    #subsidy .map-img2,
    #subsidy .map-img3 {
        display: none !important;
    }
}
