@charset "utf-8";


/* ファーストビューpc */


#lower-layer-layoutb-fv {
    padding: 24px 3.8%;
}

.lower-layer-layoutb-fv {
    display: flex;
    height: 237px;
    justify-content: center;
    align-items: center;
    border-radius: 0 80px;
    background: linear-gradient(90deg, #FFFAF0 0%, #D2E7CC 100%);
}

.lower-layer-layoutb-fv p {
    color: var(--primary-green);
    text-align: center;
    font-family: "Zen Maru Gothic";
    font-size: 4.0rem;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    text-decoration-line: underline;
    text-decoration-style: wavy;
    text-decoration-skip-ink: none;
    text-decoration-color: var(--primary-green);
    text-decoration-thickness: 11.5%;
    /* 4.6px */
    text-underline-offset: 25%;
    /* 10px */
    text-underline-position: from-font;
}

/* 基本style */

.title__h2 p {
    color: var(--primary-green);
    text-align: center;
    font-family: "Zen Maru Gothic";
    font-size: 2.0rem;
    font-weight: bold;
    line-height: normal;
}

h2 {
    color: var(--primary-green);
    text-align: center;
    font-family: "Zen Maru Gothic";
    font-size: 3.6rem;
    font-weight: bold;
    line-height: normal;
    margin-top: 10px;
}

.spbr {
    display: none;
}

h3 {
    position: relative;
    padding: .3em 0 .2em 0.5em;
    color: #333333;
    color: #000;
    font-family: "Zen Maru Gothic";
    font-size: 3.2rem;
    font-weight: bold;
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: auto;
    text-decoration-color: #7AA270;
    text-decoration-thickness: 13%;
    text-underline-offset: 20%;
    text-underline-position: from-font;
}

h3::before {
    position: absolute;
    top: 0;
    left: 0.2em;
    transform: rotate(55deg);
    height: 11px;
    width: 12px;
    background: #7aa270;
    content: '';
}

h3::after {
    position: absolute;
    transform: rotate(15deg);
    top: .6em;
    left: 0;
    height: 8px;
    width: 8px;
    background: #7aa270;
    content: '';
}


/* ----------------------------------------------------
基本styleタブレット用（768px〜1024px）
---------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    h2 {
        font-size: 3.2rem;
    }

    h3 {
        font-size: 2.4rem;
    }

}

/* ----------------------------------------------------
基本styleスマホ用（〜767px）
---------------------------------------------------- */
@media screen and (max-width: 768px) {
    #lower-layer-layoutb-fv {
        padding: 17px 5.6%;
    }

    .lower-layer-layoutb-fv {
        height: 100px;
        border-radius: 0 40px;
    }

    .lower-layer-layoutb-fv p {
        font-size: 2.4rem;
        font-weight: bold;
    }

    .title__h2 p {
        font-size: 1.6rem;
    }

    h2 {
        font-size: 2.4rem;
    }

    .spbr {
        display: block;
    }

    h3 {
        font-size: 2.0rem;
    }

    h3::before {
        height: 9px;
        width: 10px;
    }

    h3::after {
        height: 7px;
        width: 7px;
    }
}

/* -----------------section1------------------ */

.section1 {
    padding: 100px 19.3%;
}

.section1__image {
    margin: 100px auto 70px;
    border-radius: 20px;
}

.section1__lead {
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    line-height: 30px;
    text-align: start;
    margin-bottom: 70px;
    padding: 0 15%;
}

.section1__h3block {
    display: flex;
    flex-direction: column;
    align-items: center;

}

.section1__h3block h3 {
    text-align: center;
}

.section1__h4block {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 138px;
    margin-top: 70px;
}

.section1__box h4 {
    color: var(--primary-green);
    text-shadow: 0 4px 4px #D2E7CC;
    font-family: "Zen Maru Gothic";
    font-size: 2.4rem;
    font-weight: bold;
    line-height: normal;
    margin-bottom: 20px;
}

.section1__box p {
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    line-height: 30px;
}


/* ----------------------------------------------------
section1タブレット用（768px〜1024px）
---------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .section1 {
        padding: 100px 16.5%;
    }

    .section1__lead {
        margin-bottom: 40px;
        padding: 0;
    }
}

/* ----------------------------------------------------
section1スマホ用（〜767px）
---------------------------------------------------- */
@media screen and (max-width: 768px) {
    .section1 {
        padding: 60px 6.9%;
    }

    .section1__image {
        margin: 60px auto 40px;
        border-radius: 10px;
    }

    .section1__lead {
        margin-bottom: 40px;
        padding: 0;
    }

    .section1__h3block {
        display: flex;
        flex-direction: column;
        align-items: center;

    }

    .section1__h4block {
        display: block;
        margin-top: 40px;
    }

    .section1__box {
        margin-bottom: 40px;
    }

    .section1__box h4 {
        font-size: 2.0rem;
        font-weight: normal;
    }

}

/* -----------------section2------------------ */

.section2 {
    padding: 100px 19.3%;
    background-color: var(--primary-palegreen);
    position: relative;
    z-index: 1;
}

.section2__lead {
    margin: 70px auto 0;
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 30px;
    text-align: center;
}

.section2__h3block__unit {
    margin-top: 70px;
}

.section2__h3block {
    display: flex;
    padding: 40px 20px;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    background: var(--primary-white);
    box-shadow: 0 4px 4px 0 #C1DFC4;
    margin-bottom: 70px;
}

.section2__h3block p {
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 30px;
    padding: 0 10px;
}

/* ----------------------------------------------------
section2タブレット用（768px〜1024px）
---------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .section2 {
        padding: 100px 16.5%;
    }

    .section2__lead {
        margin: 40px auto;
        text-align: start;
    }

}

/* ----------------------------------------------------
section2スマホ用（〜767px）
---------------------------------------------------- */
@media screen and (max-width: 768px) {
    .section2 {
        padding: 60px 6.7%;
    }

    .section2__lead {
        margin: 40px auto;
        text-align: start;
    }

    .section2__h3block {
        padding: 20px 10px;
        align-items: center;
        margin-bottom: 40px;
    }

    .section2__h3block p {
        color: var(--primary-black);
        font-family: "BIZ UDPGothic";
        font-size: 1.6rem;
        font-weight: 400;
        line-height: 30px;
        padding: 0 10px;
    }

    .section2__h3block .button__unit {
        display: flex;
        flex-direction: column;
        width: 100%;
    }

    .button {
        width: 100%;
        margin: 5px 0;
    }

}

/* -----------------section3------------------ */

.section3 {
    padding: 100px 19.3%;
}

.section3__image {
    margin: 100px auto 70px;
    border-radius: 20px;
}

.section3__lead {
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    line-height: 30px;
    text-align: start;
    margin-bottom: 70px;
    text-align: center;
}



.section3__h3block {
    display: flex;
    flex-direction: column;
    align-items: center;

}

.section3__h3block h3 {
    text-align: start;
    margin-top: 70px;
}

.section3__h3block p {
    margin: 0 auto;
}


.section3__h3block p {
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 30px;
    text-align: start;
    padding: 0 2%;
    margin-top: 70px;
}

.section3__h3block ul {
    padding: 30px;
    border-radius: 20px;
    background: var(--primary-palegreen);
    margin-top: 40px;
    width: 100%;
    max-width: 800px;
}

.section3__h3block ul li {
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 30px;
    list-style: none;
    margin-top: 10px 0;
}

.section3__h3block ul li span {
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 30px;
}

.section3__h3block__text {
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 30px;
    margin-top: 70px;
}

/* ----------------------------------------------------
section4タブレット用（768px〜1024px）
---------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .section3 {
        padding: 100px 16.5%;
    }

    .section3__h3block ul .spbr {
        display: block;
    }

    .section3__h3block ul li {
        font-size: 1.6rem;
    }
}

/* ----------------------------------------------------
section4スマホ用（〜767px）
---------------------------------------------------- */
@media screen and (max-width: 768px) {
    .section3 {
        padding: 60px 6.9%;
    }

    .section3__image {
        margin: 40px auto;
        border-radius: 10px;
    }

    .section3__lead {
        margin-bottom: 40px;
    }

    .section3__h3block h3 {
        margin-top: 40px;
    }

    .section3__h3block p {
        margin: 0 auto;
    }


    .section3__h3block p {
        margin-top: 40px;
    }

    .section3__h3block ul {
        padding: 10px;
        border-radius: 10px;
        background: var(--primary-palegreen);
        margin-top: 40px;
    }

    .section3__h3block ul li {
        font-size: 1.6rem;
    }
}

/* -----------------section4------------------ */

.section4 {
    padding: 100px 19.3%;
    background-color: var(--primary-lightgreen);
    position: relative;
    z-index: 1;
}

.section4__lead {
    margin: 70px auto;
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 30px;
    text-align: center;
}

.section4__h3block {
    display: flex;
    padding: 40px 20px;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    background: var(--primary-white);
    box-shadow: 0 4px 4px 0 #C1DFC4;
    margin-bottom: 70px;
    margin-top: 70px;
}

.section4__h3block p {
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 30px;
    padding: 0 10px;
}

/* ----------------------------------------------------
section4タブレット用（768px〜1024px）
---------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .section4 {
        padding: 100px 16.5%;
    }
}

/* ----------------------------------------------------
section4スマホ用（〜767px）
---------------------------------------------------- */
@media screen and (max-width: 768px) {
    .section4 {
        padding: 60px 6.9%;
    }

    .section4__lead {
        margin: 40px auto;
        text-align: start;
    }

    .section4__h3block {
        padding: 20px 10px;
        margin-bottom: 40px;
        margin-top: 40px;
        text-align: center;
        align-items: center;
    }

    .section4__h3block h3 {
        text-align: center;
    }

    .section4__h3block p {
        text-align: start;
    }
}

/* -----------------section5------------------ */

.section5 {
    padding: 100px 19.3%;
    background-color: var(--primary-white);
    position: relative;
    z-index: 1;
}

.section5__lead {
    margin: 70px auto;
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 30px;
    text-align: center;
}

.section5__h3block {
    display: flex;
    padding: 40px 20px;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    background: var(--primary-white);
    box-shadow: 0 4px 4px 0 #C1DFC4;
    margin-bottom: 70px;
    margin-top: 70px;
}

.section5__h3block p {
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 30px;
    padding: 0 10px;
}

/* ----------------------------------------------------
section5タブレット用（768px〜1024px）
---------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .section5 {
        padding: 100px 16.5%;
    }
}

/* ----------------------------------------------------
section5スマホ用（〜767px）
---------------------------------------------------- */
@media screen and (max-width: 768px) {
    .section5 {
        padding: 60px 6.9%;
    }

    .section5__lead {
        margin: 40px auto;
        text-align: start;
    }

    .section5__h3block {
        padding: 20px 10px;
        margin-bottom: 40px;
        margin-top: 40px;
        text-align: center;
        align-items: center;
    }

    .section5__h3block h3 {
        text-align: center;
    }

    .section5__h3block p {
        text-align: start;
    }

}

/* -----------------section6------------------ */

.section6 {
    padding: 100px 19.3%;
    background-color: var(--primary-palegreen);
    position: relative;
    z-index: 1;
}

.section6__lead {
    margin: 70px auto;
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 30px;
    text-align: center;
}

.section6__h3block {
    display: flex;
    padding: 40px 20px;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    background: var(--primary-white);
    box-shadow: 0 4px 4px 0 #C1DFC4;
    margin-bottom: 70px;
}

.section6__h3block p {
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 30px;
    padding: 0 10px;
}

/* ----------------------------------------------------
section6タブレット用（768px〜1024px）
---------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .section6 {
        padding: 100px 16.5%;
    }
}

/* ----------------------------------------------------
section6スマホ用（〜767px）
---------------------------------------------------- */
@media screen and (max-width: 768px) {
    .section6 {
        padding: 60px 6.9%;
    }

    .section6__lead {
        margin: 40px auto;
        text-align: start;
    }

    .section6__h3block {
        padding: 20px 10px;
        margin-bottom: 40px;
        margin-top: 40px;
        text-align: center;
        align-items: center;
    }

    .section6__h3block h3 {
        text-align: center;
    }

    .section6__h3block p {
        text-align: start;
    }

}


/* -----------------section7------------------ */

.section7 {
    padding: 100px 19.3%;
}

.section7__lead {
    color: var(--primary-black);
    text-align: center;
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    line-height: 30px;
    margin: 60px 0 20px 0;
}

.section7__list {
    padding: 40px;
    border-radius: 20px;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
    margin: 60px auto 40px;
    max-width: 750px;
    background-color: var(--primary-palegreen);
}

.section7__item {
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    font-style: normal;
    line-height: normal;
    list-style: none;
    margin: 20px 0;
    padding: 0 15%;
}

.section7__item::before {
    content: "";
    width: 15px;
    height: 15px;
    display: inline-block;
    border-radius: 50%;
    margin-right: 10px;
    background-color: var(--primary-green);
}

.section7__note {
    color: var(--primary-black);
    text-align: center;
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    line-height: 30px;
}

/* ----------------------------------------------------
section7タブレット用（768px〜1024px）
---------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .section7 {
        padding: 100px 16.5%;
    }

    .section7__lead {
        text-align: start;
    }

    .section7__list {
        padding: 20px 10px;
        border-radius: 20px;
        box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
        margin: 20px 0;
        background-color: var(--primary-palegreen);
    }

    .section7__item {
        margin: 20px 0;
        padding: 0 3%;
        font-size: 1.6rem;
    }

    .section7__item::before {
        width: 15px;
        height: 15px;
    }

    .section7__note {
        text-align: start;
        margin-top: 40px;
    }
}

/* ----------------------------------------------------
section7スマホ用（〜767px）
---------------------------------------------------- */
@media screen and (max-width: 768px) {
    .section7 {
        padding: 60px 6.9%;
    }

    .section7__lead {
        text-align: start;
    }

    .section7__list {
        padding: 10px;
        border-radius: 20px;
        box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
        margin: 20px 0;
        background-color: var(--primary-palegreen);
    }

    .section7__item {
        margin: 20px 0;
        padding: 0 3%;
        font-size: 1.6rem;
    }

    .section7__item::before {
        width: 15px;
        height: 15px;
        margin-right: 5px;
    }

    .section7__note {
        text-align: start;
        margin-top: 40px;
    }
}

/* -----------------section8------------------ */

.section8 {
    padding: 100px 19.3%;
    background: var(--primary-lightgreen);
}

.section8_lead {
    margin-top: 70px;
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    line-height: 30px;
}

/* ----------------------------------------------------
section8タブレット用（768px〜1024px）
---------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .section8 {
        padding: 100px 16.5%;
    }
}

/* ----------------------------------------------------
section8スマホ用（〜767px）
---------------------------------------------------- */
@media screen and (max-width: 768px) {
    .section8 {
        padding: 60px 6.9%;
    }

    .section8_lead {
        margin-top: 40px;
    }
}

/* -----------------section9------------------ */

.section9 {
    padding: 100px 19.3%;
    background: var(--primary-palegreen);
}

.section9__lead {
    margin: 70px 0 40px;
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    line-height: 30px;
    text-align: center;
}

.section9__h3block {
    display: flex;
    padding: 30px 20px;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 20px;
    border: 3px solid var(--primary-green);
    background: var(--primary-white);
}

.section9__h3block__lead {
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    font-weight: 400;
    line-height: 30px;
    text-align: center;
}

.section9__h3block ul {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}

.section9__h3block ul li {
    color: var(--primary-black);
    font-family: "Zen Maru Gothic";
    font-size: 2.0rem;
    font-weight: 500;
    line-height: normal;
    list-style: none;
}

.section9__h3block ul li span {
    color: var(--primary-green);
    text-shadow: 0 4px 4px rgba(0, 0, 0, 0.10);
    font-family: "Zen Maru Gothic";
    font-size: 2.0rem;
    font-weight: 500;
    line-height: normal;
}

/* ----------------------------------------------------
section9タブレット用（768px〜1024px）
---------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .section9 {
        padding: 100px 16.5%;
    }
}

/* ----------------------------------------------------
section9スマホ用（〜767px）
---------------------------------------------------- */
@media screen and (max-width: 768px) {
    .section9 {
        padding: 60px 6.9%;
    }

    .section9__lead {
        margin-top: 40px;
        text-align: start;
    }

    .section9__h3block__lead {
        text-align: start;
    }

    .section9__h3block ul li {
        font-size: 1.6rem;
    }

    .section9__h3block ul li span {
        font-size: 1.6rem;
    }
}

/* -----------------section10------------------ */

.section10 {
    padding: 100px 19.3%;
    background: var(--primary-palegreen);
}

.section10_lead {
    margin-top: 70px;
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    line-height: 30px;
}

/* ----------------------------------------------------
section10タブレット用（768px〜1024px）
---------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .section10 {
        padding: 100px 16.5%;
    }
}

/* ----------------------------------------------------
section10スマホ用（〜767px）
---------------------------------------------------- */
@media screen and (max-width: 768px) {
    .section10 {
        padding: 60px 6.9%;
    }

    .section10_lead {
        margin-top: 40px;
    }
}

/* -----------------section11------------------ */

.section11 {
    padding: 100px 19.3%;
    background: var(--primary-white);
}

.section11_lead {
    margin-top: 70px;
    color: var(--primary-black);
    font-family: "BIZ UDPGothic";
    font-size: 1.6rem;
    line-height: 30px;
}

/* ----------------------------------------------------
section11タブレット用（768px〜1024px）
---------------------------------------------------- */
@media screen and (min-width: 768px) and (max-width: 1024px) {
    .section11 {
        padding: 100px 16.5%;
    }
}

/* ----------------------------------------------------
section11スマホ用（〜767px）
---------------------------------------------------- */
@media screen and (max-width: 768px) {
    .section11 {
        padding: 60px 6.9%;
    }

    .section11_lead {
        margin-top: 40px;
    }
}