/* ===============================================
#header
=============================================== */
.header
{
    position: fixed;
    z-index: 100;
    top: 0;
    left: 0;

    width: 100%;
    padding: 20px 0;

    -webkit-transition: all .5s;

    transition: all .5s;

    background: linear-gradient(90.73deg, rgba(172, 121, 49, 0) 1.01%, rgba(201, 161, 104, 0) 48.94%, rgba(172, 121, 49, 0) 98.9%);
}

@media screen and (min-width: 1024px)
{
    .header.headerColorScroll
    {
        background: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    }
}
.header.headerColorScroll .header__lists
{
    margin-top: 0;
}

@media screen and (max-width: 1023px)
{
    .header.headerColorScroll .header__lists
    {
        -webkit-box-pack: center;
            -ms-flex-pack: center;
                justify-content: center;
    }
}
.header__inner
{
    max-width: 1764px;
}

.header__logo
{
    position: absolute;
    top: 0;
    left: 100px;

    width: 178px;
}

@media screen and (max-width: 1500px)
{
    .header__logo
    {
        left: 20px;

        width: 108px;
    }
}
@media screen and (max-width: 1023px)
{
    .header__logo
    {
        display: none;
    }
}
.header__lists
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    margin-top: 5px;

    -webkit-transition: all .5s;

    transition: all .5s;

    -webkit-box-pack: end;

        -ms-flex-pack: end;

            justify-content: flex-end;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (max-width: 1023px)
{
    .header__lists
    {
        display: none;
    }
}
.header__list a
{
    font-family: 'Zen Old Mincho', serif;

    display: block;

    color: #fff;
}

.header__list:nth-of-type(n + 2)
{
    margin-left: 12px;
}

/* ===============================================
#footer
=============================================== */
.footer
{
    padding: 44px 10px 41px;

    text-align: center;

    background-color: #95774a;
}

@media screen and (max-width: 767px)
{
    .footer
    {
        padding: 20px 10px 20px;
    }
}
.footer small
{
    font-family: 'Zen Old Mincho', serif;

    color: #fff;
}

.mv
{
    padding-top: 60px;
    padding-bottom: 190px;

    background: transparent url(./../image/mv-bg.jpg) no-repeat top center/cover;
}

@media screen and (max-width: 767px)
{
    .mv
    {
        padding-top: 20px;
        padding-bottom: 140px;

        background: transparent url(./../image/mv-bg-sp.jpg) no-repeat top center/cover;
    }
}
.mv__inner
{
    max-width: 1662px;
}

.mv__heading
{
    max-width: 980px;
    margin: 0 auto 0;
}

@media screen and (max-width: 767px)
{
    .mv__heading
    {
        max-width: 400px;
        margin: 0 auto 0;
    }
}
@media screen and (min-width: 1180px)
{
    .mv__container
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
    }
}
.mv__container-left
{
    font-family: 'Zen Old Mincho', serif;

    max-width: 610px;
    padding-top: 32px;
}

@media screen and (max-width: 1179px)
{
    .mv__container-left
    {
        max-width: 810px;
        margin: 0 auto 30px;
    }
}
@media screen and (max-width: 767px)
{
    .mv__container-left
    {
        width: 100%;
        padding-top: 0;
    }
}
.mv__container-right
{
    font-family: 'Zen Old Mincho', serif;

    position: relative;

    max-width: 408px;
}

@media screen and (max-width: 1179px)
{
    .mv__container-right
    {
        max-width: 608px;
        margin: 0 auto;
    }
}
.mv__text-top
{
    font-size: 40px;
    font-size: 4rem;
    line-height: 1.65;

    width: 535px;
    margin: 0 auto 20px;
    padding-bottom: 17px;

    text-align: center;

    color: #ac7931;
    border-bottom: 1px solid #ac7931;
}

@media screen and (max-width: 767px)
{
    .mv__text-top
    {
        font-size: 28px;
        font-size: 2.8rem;

        width: 100%;
    }
}
.mv__text-bottom
{
    font-size: 96px;
    font-size: 9.6rem;
    line-height: 1.3;

    text-align: center;
    letter-spacing: .05em;

    color: #fff;
    text-shadow: 0 0 4px rgba(0, 0, 0, .45), 0 6px 24px #bda482;
}

@media screen and (max-width: 767px)
{
    .mv__text-bottom
    {
        font-size: 47px;
        font-size: 4.7rem;
    }
}
.mv__point
{
    position: absolute;
    top: 0;
    left: -138px;

    width: 239px;
}

@media screen and (max-width: 1179px)
{
    .mv__point
    {
        left: -10px;
    }
}
@media screen and (max-width: 767px)
{
    .mv__point
    {
        top: 14px;

        width: 119px;
    }
}
.mv__main-name
{
    font-size: 28px;
    font-size: 2.8rem;

    margin-bottom: 9px;

    text-align: right;

    color: #fff;
}

@media screen and (max-width: 767px)
{
    .mv__main-name
    {
        font-size: 19px;
        font-size: 1.9rem;
    }
}
@media screen and (max-width: 767px)
{
    .mv__lists
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;
    }
}
.mv__list
{
    font-size: 24px;
    font-size: 2.4rem;

    padding: 20px 0;

    text-align: center;

    border: 1px solid #b69c84;
    border-radius: 1px;
    background: rgba(255, 255, 255, .8);
    -webkit-box-shadow: 0 4px 24px rgba(0, 0, 0, .1);
            box-shadow: 0 4px 24px rgba(0, 0, 0, .1);
}

@media screen and (max-width: 767px)
{
    .mv__list
    {
        font-size: 16px;
        font-size: 1.6rem;

        padding: 10px 0;
    }
}
.mv__list span
{
    font-size: 36px;
    font-size: 3.6rem;

    background: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    -webkit-background-clip: text;
    text-shadow: 0 4px 24px rgba(0, 0, 0, .1);

    -webkit-text-fill-color: transparent;
}

@media screen and (max-width: 767px)
{
    .mv__list span
    {
        font-size: 25px;
        font-size: 2.5rem;
    }
}
.mv__list span.mv-price
{
    font-size: 44px;
    font-size: 4.4rem;
}

@media screen and (max-width: 767px)
{
    .mv__list span.mv-price
    {
        font-size: 30px;
        font-size: 3rem;
    }
}
.mv__list:nth-of-type(1)
{
    font-size: 35px;
    font-size: 3.5rem;

    margin-bottom: 18px;
    padding: 2px 0;

    color: #fff;
    border: none;
    border-radius: 0;
    background: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
}

@media screen and (max-width: 767px)
{
    .mv__list:nth-of-type(1)
    {
        font-size: 24px;
        font-size: 2.4rem;

        margin-bottom: 0;
    }
}
.mv__list:nth-of-type(n + 3)
{
    margin-top: 16px;
}

.mv__list:nth-of-type(4)
{
    padding: 30px 33px 3px;

    text-align: left;
}

@media screen and (max-width: 1179px)
{
    .mv__list:nth-of-type(4)
    {
        text-align: center;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .mv__list:nth-of-type(2)
    {
        -webkit-box-ordinal-group: 4;
            -ms-flex-order: 3;
                order: 3;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .mv__list:nth-of-type(3)
    {
        -webkit-box-ordinal-group: 5;
            -ms-flex-order: 4;
                order: 4;
    }
}
@media screen and (max-width: 767px) and (max-width: 767px)
{
    .mv__list:nth-of-type(4)
    {
        -webkit-box-ordinal-group: 3;
            -ms-flex-order: 2;
                order: 2;
    }
}
@media screen and (max-width: 767px)
{
    .mv__list:nth-of-type(n + 2)
    {
        margin-top: 16px;
    }
}
.mv__text
{
    line-height: 1.6;
}

.mv__btn
{
    position: relative;
    z-index: 10;

    display: block;

    width: 105%;
    margin: 0 auto;
}

@media screen and (max-width: 1179px)
{
    .mv__btn
    {
        width: 100%;
    }
}
.mv__invisa
{
    position: absolute;
    bottom: -112px;
    left: -198px;

    width: 322px;
}

@media screen and (max-width: 1179px)
{
    .mv__invisa
    {
        bottom: -152px;
        left: -108px;
    }
}
@media screen and (max-width: 767px)
{
    .mv__invisa
    {
        bottom: -120px;
        left: -38px;

        width: 222px;
    }
}
.repeatParts
{
    padding: 51px 0;

    background-color: #c4ac88;
}

@media screen and (max-width: 767px)
{
    .repeatParts
    {
        padding: 25px 0;
    }
}
.repeatParts__inner
{
    max-width: 1075px;
}

@media screen and (min-width: 768px)
{
    .repeatParts__container
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
        -webkit-box-align: end;
            -ms-flex-align: end;
                align-items: flex-end;
    }
}
@media screen and (max-width: 1023px)
{
    .repeatParts__container
    {
        max-width: 80%;
        margin: 0 auto;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
    }
}
@media screen and (max-width: 767px)
{
    .repeatParts__container
    {
        max-width: 100%;
    }
}
.repeatParts__text
{
    font-family: 'Zen Old Mincho', serif;
    font-size: 32px;
    font-size: 3.2rem;
    line-height: 1.4;

    width: 230px;

    color: #fff;
    text-shadow: 0 0 4px rgba(0, 0, 0, .45), 0 6px 24px #bda482;
}

@media screen and (max-width: 767px)
{
    .repeatParts__text
    {
        font-size: 18px;
        font-size: 1.8rem;

        width: 100%;
        margin-bottom: 20px;
    }
}
.repeatParts__btn-box
{
    width: calc(100% - 255px);
}

@media screen and (min-width: 1024px)
{
    .repeatParts__btn-box
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
    }
}
@media screen and (max-width: 767px)
{
    .repeatParts__btn-box
    {
        width: 100%;
    }
}
.repeatParts__btn-center
{
    display: block;
}

@media screen and (min-width: 1024px)
{
    .repeatParts__btn-center
    {
        width: 48%;
    }
}
@media screen and (max-width: 1023px)
{
    .repeatParts__btn-center
    {
        margin-bottom: 20px;
    }
}
.repeatParts__btn-right
{
    display: block;
}

@media screen and (min-width: 1024px)
{
    .repeatParts__btn-right
    {
        width: 48%;
    }
}
.popular
{
    padding: 88px 0 114px;

    background: linear-gradient(102.95deg, #f8f4e9 19.2%, #ede9db 78.66%);
}

@media screen and (max-width: 767px)
{
    .popular
    {
        padding: 70px 0 80px;
    }
}
.popular__inner
{
    max-width: 1057px;
}

.popular__heading
{
    margin-bottom: 38px;
}

.popular__container
{
    position: relative;
}

.popular__icon
{
    position: absolute;
    bottom: -71px;
    left: -180px;

    width: 282px;
}

@media screen and (max-width: 1350px)
{
    .popular__icon
    {
        bottom: -151px;
        left: -60px;
    }
}
@media screen and (max-width: 1023px)
{
    .popular__icon
    {
        bottom: -131px;
        left: -70px;
    }
}
@media screen and (max-width: 767px)
{
    .popular__icon
    {
        bottom: -101px;
        left: -40px;

        width: 192px;
    }
}
@media screen and (min-width: 1024px)
{
    .popular__lists
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
            -ms-flex-direction: column;
                flex-direction: column;

        width: 982px;
        height: 332px;
        margin: 0 auto;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
        -ms-flex-line-pack: justify;
            align-content: space-between;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}
.popular__list
{
    font-family: 'Zen Old Mincho', serif;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.85;

    padding: 7px 0 5px;

    text-align: center;
    letter-spacing: .04em;

    border: 1px solid #d3d3d3;
    border-radius: 1px;
    background: rgba(255, 255, 255, .8);
    -webkit-box-shadow: 0 2px 14px rgba(0, 0, 0, .1);
            box-shadow: 0 2px 14px rgba(0, 0, 0, .1);
}

@media screen and (min-width: 1024px)
{
    .popular__list
    {
        width: 48.2%;
    }
}
@media screen and (max-width: 767px)
{
    .popular__list
    {
        font-size: 16px;
        font-size: 1.6rem;
    }
}
@media screen and (max-width: 1023px)
{
    .popular__list:nth-of-type(n + 2)
    {
        margin-top: 20px;
    }
}
.popular__list span
{
    font-size: 30px;
    font-size: 3rem;

    background: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

@media screen and (max-width: 767px)
{
    .popular__list span
    {
        font-size: 21px;
        font-size: 2.1rem;
    }
}
.worry
{
    padding: 102px 0 193px;
}

@media screen and (max-width: 767px)
{
    .worry
    {
        padding: 70px 0 135px;
    }
}
.worry__heading
{
    margin-bottom: 39px;
}

.worry__inner
{
    max-width: 1450px;
}

.worry__container
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (max-width: 1023px)
{
    .worry__container
    {
        max-width: 715px;
        margin: 0 auto;

        -ms-flex-wrap: wrap-reverse;

            flex-wrap: wrap-reverse;
    }
}
.worry__wrapper
{
    width: 50%;
    padding: 47px 86px 51px 66px;

    background: transparent url(./../image/worry-bg.jpg) no-repeat top center/cover;
}

@media screen and (max-width: 1023px)
{
    .worry__wrapper
    {
        width: 100%;
    }
}
@media screen and (max-width: 767px)
{
    .worry__wrapper
    {
        padding: 10px 15px 30px;

        background: transparent url(./../image/worry-bg-sp.jpg) no-repeat top center/cover;
        -webkit-box-shadow: 0 2px 14px rgba(0, 0, 0, .1);
                box-shadow: 0 2px 14px rgba(0, 0, 0, .1);
    }
}
.worry__list
{
    font-family: 'Zen Old Mincho', serif;
    font-size: 24px;
    font-size: 2.4rem;

    position: relative;

    padding: 18px 0 17px;

    letter-spacing: .04em;

    border-bottom: 1px solid #ac7931;
    -o-border-image: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
       border-image: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    border-image-slice: 1;
}

@media screen and (max-width: 767px)
{
    .worry__list
    {
        font-size: 16px;
        font-size: 1.6rem;
    }
}
.worry__list span
{
    background: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

.worry__list:nth-of-type(1)
{
    padding: 18px 210px 17px 0;
}

@media screen and (max-width: 767px)
{
    .worry__list:nth-of-type(1)
    {
        padding: 18px 130px 17px 0;
    }
}
.worry__btn
{
    position: absolute;
    top: -6px;
    right: 6px;

    display: block;

    width: 217px;
}

@media screen and (max-width: 767px)
{
    .worry__btn
    {
        top: 8px;
        right: -18px;

        width: 167px;
    }
}
.worry__img-box
{
    width: 46%;
}

@media screen and (max-width: 1023px)
{
    .worry__img-box
    {
        width: 100%;
        margin-bottom: 20px;
    }
}
@media screen and (max-width: 767px)
{
    .worry__img-box
    {
        width: 80%;
        margin: 0 auto 20px;
    }
}
@media screen and (min-width: 1024px)
{
    .worry__img
    {
        margin-right: calc((100vw - 217%) / 2 * -1);
    }
}
.solution
{
    margin-bottom: 118px;
}

@media screen and (max-width: 767px)
{
    .solution
    {
        margin-bottom: 70px;
    }
}
.solution__inner
{
    max-width: 1130px;
}

.solution__heading
{
    max-width: 1322px;
    margin: 0 auto 17px;

    -webkit-transform: translateY(-50%);

            transform: translateY(-50%);
}

@media screen and (max-width: 1023px)
{
    .solution__heading
    {
        margin: 0 auto -80px;
    }
}
@media screen and (max-width: 767px)
{
    .solution__heading
    {
        max-width: 380px;
        margin: 0 auto -80px;
    }
}
.solution__container
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

    -webkit-box-pack: justify;

        -ms-flex-pack: justify;

            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
}

@media screen and (max-width: 1023px)
{
    .solution__container
    {
        -ms-flex-wrap: wrap-reverse;
            flex-wrap: wrap-reverse;
    }
}
.solution__textarea
{
    font-family: 'Zen Old Mincho', serif;
}

@media screen and (min-width: 1024px)
{
    .solution__textarea
    {
        width: 54.6%;
    }
}
@media screen and (min-width: 1024px)
{
    .solution__img-box
    {
        width: 45%;
    }
}
.solution__img
{
    width: 118%;
    margin: 0 auto;
}

@media screen and (max-width: 1023px)
{
    .solution__img
    {
        width: 60%;
        margin: 0 auto 30px;
    }
}
.solution__lead
{
    font-size: 38px;
    font-size: 3.8rem;
    line-height: 1.7;

    margin-bottom: 19px;

    text-align: center;
}

@media screen and (max-width: 767px)
{
    .solution__lead
    {
        font-size: 26px;
        font-size: 2.6rem;
    }
}
.solution__text
{
    font-size: 20px;
    font-size: 2rem;
    line-height: 2.25;

    margin-bottom: 17px;

    letter-spacing: .05em;
}

@media screen and (max-width: 767px)
{
    .solution__text
    {
        font-size: 16px;
        font-size: 1.6rem;
    }
}
.solution__link
{
    font-size: 20px;
    font-size: 2rem;

    text-decoration: underline;
    letter-spacing: .05em;

    color: #1b0eaa;
}

@media screen and (max-width: 767px)
{
    .solution__link
    {
        font-size: 16px;
        font-size: 1.6rem;
    }
}
.merit
{
    margin-bottom: 139px;
}

@media screen and (max-width: 767px)
{
    .merit
    {
        margin-bottom: 70px;
    }
}
.merit__heading
{
    margin-bottom: 108px;
}

@media screen and (max-width: 767px)
{
    .merit__heading
    {
        margin-bottom: 50px;
    }
}
@media screen and (min-width: 1024px)
{
    .merit__wrapper
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
    }
}
.merit__wrapper:nth-of-type(n + 2)
{
    margin-top: 85px;
}

@media screen and (max-width: 767px)
{
    .merit__wrapper:nth-of-type(n + 2)
    {
        margin-top: 40px;
    }
}
@media screen and (min-width: 1024px)
{
    .merit__wrapper:nth-of-type(even)
    {
        -webkit-box-orient: horizontal;
        -webkit-box-direction: reverse;
            -ms-flex-direction: row-reverse;
                flex-direction: row-reverse;
    }
}
.merit__wrapper:nth-of-type(1) .merit__number
{
    top: -20px;
    left: 12px;

    width: 73px;
}

@media screen and (max-width: 767px)
{
    .merit__wrapper:nth-of-type(1) .merit__number
    {
        top: -14px;

        width: 53px;
    }
}
.merit__wrapper:nth-of-type(2) .merit__number
{
    top: -4px;
    left: 9px;

    width: 83px;
}

@media screen and (max-width: 1023px)
{
    .merit__wrapper:nth-of-type(2) .merit__number
    {
        top: -23px;
    }
}
@media screen and (max-width: 767px)
{
    .merit__wrapper:nth-of-type(2) .merit__number
    {
        width: 63px;
    }
}
.merit__wrapper:nth-of-type(3) .merit__number
{
    top: -26px;
    left: 40px;

    width: 82px;
}

@media screen and (max-width: 1023px)
{
    .merit__wrapper:nth-of-type(3) .merit__number
    {
        top: -23px;
        left: 11px;
    }
}
@media screen and (max-width: 767px)
{
    .merit__wrapper:nth-of-type(3) .merit__number
    {
        width: 62px;
    }
}
.merit__img
{
    width: 32.4%;
}

@media screen and (max-width: 1023px)
{
    .merit__img
    {
        width: 60%;
        margin: 0 auto 30px;
    }
}
.merit__textarea
{
    position: relative;

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    padding: 30px 32px;

    background: rgba(255, 255, 255, .6);

    -webkit-box-align: center;

        -ms-flex-align: center;

            align-items: center;
}

@media screen and (min-width: 1024px)
{
    .merit__textarea
    {
        width: 62.7%;
    }
}
.merit__number
{
    position: absolute;
}

.merit__wrapper-title
{
    font-family: 'Zen Old Mincho', serif;
    font-size: 30px;
    font-size: 3rem;

    margin-bottom: 13px;

    letter-spacing: .03em;

    background: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

@media screen and (max-width: 767px)
{
    .merit__wrapper-title
    {
        font-size: 21px;
        font-size: 2.1rem;
    }
}
.merit__text
{
    line-height: 1.55;

    letter-spacing: .06em;
}

.feature
{
    padding-bottom: 175px;
}

@media screen and (max-width: 767px)
{
    .feature
    {
        padding-bottom: 70px;
    }
}
.feature__heading
{
    margin-bottom: 112px;
}

@media screen and (max-width: 767px)
{
    .feature__heading
    {
        margin-bottom: 50px;
    }
}
.shopMerit
{
    padding: 129px 0 210px;

    background: linear-gradient(126.53deg, #e4d4bd 61.79%, #c4ab89 97.39%);
}

@media screen and (max-width: 767px)
{
    .shopMerit
    {
        padding: 70px 0 70px;
    }
}
.shopMerit__heading
{
    margin-bottom: 16px;
}

.shopMerit__cards
{
    max-width: 1176px;
    margin: 0 auto;
}

@media screen and (min-width: 768px)
{
    .shopMerit__cards
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
        -ms-flex-wrap: wrap;
            flex-wrap: wrap;
    }
}
.shopMerit__card
{
    border: 1px solid #d3d3d3;
    background: rgba(255, 255, 255, .8);
    -webkit-box-shadow: 0 2px 14px rgba(0, 0, 0, .1);
            box-shadow: 0 2px 14px rgba(0, 0, 0, .1);
}

@media screen and (min-width: 768px)
{
    .shopMerit__card
    {
        width: 49.3%;
        padding: 42px 20px;
    }

    .shopMerit__card:nth-of-type(n + 3)
    {
        margin-top: 16px;
    }
}
@media screen and (max-width: 767px)
{
    .shopMerit__card
    {
        padding: 30px 15px;
    }

    .shopMerit__card:nth-of-type(n + 2)
    {
        margin-top: 16px;
    }
}
.shopMerit__img
{
    width: 60%;
    margin: 0 auto 12px auto;
}

.shopMerit__title
{
    font-family: 'Zen Old Mincho', serif;
    font-size: 30px;
    font-size: 3rem;
    line-height: 1.85;

    margin-bottom: 5px;

    text-align: center;
    letter-spacing: .04em;
}

@media screen and (max-width: 767px)
{
    .shopMerit__title
    {
        font-size: 21px;
        font-size: 2.1rem;
        line-height: 1.6;
    }
}
.shopMerit__title span
{
    background: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

.shopMerit__text
{
    line-height: 1.7;

    letter-spacing: .06em;
}

.flow
{
    padding: 141px 0 251px;

    background: linear-gradient(102.95deg, #fffdf4 19.2%, #fffbee 78.66%);
}

@media screen and (max-width: 767px)
{
    .flow
    {
        padding: 70px 0 140px;
    }
}
.flow__heading
{
    margin-bottom: 84px;
}

@media screen and (max-width: 767px)
{
    .flow__heading
    {
        margin-bottom: 50px;
    }
}
.flow__container
{
    position: relative;
}

.flow__goal
{
    position: absolute;
    top: 124px;
    left: -172px;

    width: 219px;
}

@media screen and (max-width: 1500px)
{
    .flow__goal
    {
        display: none;
    }
}
.flow__list
{
    padding: 32px 82px;

    border: 1px solid #d3d3d3;
    background: rgba(255, 255, 255, .8);
    -webkit-box-shadow: 0 2px 14px rgba(0, 0, 0, .1);
            box-shadow: 0 2px 14px rgba(0, 0, 0, .1);
}

.flow__list:nth-of-type(n + 2)
{
    margin-top: 24px;
}

@media screen and (max-width: 1023px)
{
    .flow__list
    {
        padding: 32px 22px;
    }
}
@media screen and (min-width: 768px)
{
    .flow__list
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-pack: justify;

            -ms-flex-pack: justify;

                justify-content: space-between;
        -webkit-box-align: center;
            -ms-flex-align: center;
                align-items: center;
    }
}
.flow__img
{
    width: 195px;
}

@media screen and (max-width: 767px)
{
    .flow__img
    {
        margin: 0 auto 20px;
    }
}
@media screen and (min-width: 768px)
{
    .flow__textarea
    {
        width: calc(100% - 235px);
    }
}
.flow__title
{
    font-family: 'Zen Old Mincho', serif;
    font-size: 30px;
    font-size: 3rem;

    margin-bottom: 8px;

    letter-spacing: .03em;

    background: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

@media screen and (max-width: 767px)
{
    .flow__title
    {
        font-size: 21px;
        font-size: 2.1rem;
    }
}
.flow__text
{
    line-height: 1.7;

    letter-spacing: .06em;
}

.flow__btn-box
{
    max-width: 612px;
    margin-top: 20px;
}

@media screen and (min-width: 768px)
{
    .flow__btn-box
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
}
.flow__btn
{
    display: block;
}

@media screen and (min-width: 768px)
{
    .flow__btn:nth-of-type(n + 2)
    {
        margin-left: 16px;
    }
}
@media screen and (max-width: 767px)
{
    .flow__btn:nth-of-type(n + 2)
    {
        margin-top: 16px;
    }
}
.simu
{
    padding-bottom: 71px;

    background: linear-gradient(126.53deg, #e4d4bd 61.79%, #c4ab89 97.39%);
}

@media screen and (max-width: 767px)
{
    .simu
    {
        padding-bottom: 70px;
    }
}
.simu__heading
{
    line-height: 1.65;

    margin-bottom: 65px;
    padding: 17px 0;

    -webkit-transform: translateY(-50%);

            transform: translateY(-50%);
}

@media screen and (max-width: 767px)
{
    .simu__heading
    {
        font-size: 20px;
        font-size: 2rem;

        margin-bottom: -25px;
    }
}
.simu__container
{
    max-width: 1300px;
}

.simu__wrapper
{
    position: relative;
}

@media screen and (min-width: 1024px)
{
    .simu__wrapper
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
    }
}
.simu__img
{
    width: 46.1%;
}

@media screen and (max-width: 1023px)
{
    .simu__img
    {
        width: 60%;
        margin: 0 auto 30px;
    }
}
@media screen and (min-width: 1024px)
{
    .simu__textarea
    {
        position: absolute;
        top: 50%;
        left: 47.2%;

        width: 718px;
        margin-left: -2.2%;

        -webkit-transform: translateY(-50%);

                transform: translateY(-50%);
    }
}
@media screen and (max-width: 1023px)
{
    .simu__textarea
    {
        max-width: 830px;
        margin: 0 auto;
    }
}
@media screen and (min-width: 768px)
{
    .simu__textarea
    {
        padding: 56px 108px 67px 125px;

        background: transparent url(./../image/simu-bg.svg) no-repeat top center/contain;
    }
}
@media screen and (max-width: 767px)
{
    .simu__textarea
    {
        padding: 10px 15px 30px 15px;

        background: linear-gradient(148.83deg, rgba(242, 234, 222, .7) 18.84%, rgba(235, 210, 177, .7) 95.76%);
        -webkit-box-shadow: 0 2px 14px rgba(0, 0, 0, .1);
                box-shadow: 0 2px 14px rgba(0, 0, 0, .1);
    }
}
.simu__list
{
    font-family: 'Zen Old Mincho', serif;
    font-size: 24px;
    font-size: 2.4rem;

    position: relative;

    padding: 18px 0 17px;

    letter-spacing: .04em;

    border-bottom: 1px solid #ac7931;
    -o-border-image: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
       border-image: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    border-image-slice: 1;
}

@media screen and (max-width: 767px)
{
    .simu__list
    {
        font-size: 16px;
        font-size: 1.6rem;
    }
}
.simu__list span
{
    background: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

.comparison
{
    margin-top: 139px;
    padding-bottom: 120px;
}

@media screen and (max-width: 767px)
{
    .comparison
    {
        margin-top: 55px;
        padding-bottom: 70px;
    }
}
.comparison__inner
{
    max-width: 1320px;
}

.comparison__heading
{
    margin-bottom: 45px;
}

.comparison__heading-bottom
{
    margin-bottom: 71px;
}

@media screen and (max-width: 767px)
{
    .comparison__heading-bottom
    {
        margin-bottom: 40px;
    }
}
.comparison__container:nth-of-type(n + 2)
{
    margin-top: 124px;
}

@media screen and (max-width: 767px)
{
    .comparison__container:nth-of-type(n + 2)
    {
        margin-top: 50px;
    }
}
.comparison__table
{
    background-color: #fffdf9;
}

@media screen and (max-width: 767px)
{
    .comparison__table
    {
        display: block;
        overflow-x: scroll;
    }
}
@media screen and (max-width: 767px)
{
    .comparison__table tbody
    {
        display: block;

        width: 540px;

        border-collapse: collapse;
    }
}
.comparison__table th,
.comparison__table td
{
    height: 89px;
    padding: 0 16px;

    vertical-align: middle;

    border: 1px solid #ac7931;
    -o-border-image: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
       border-image: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    border-image-slice: 1;
}

.comparison__table th span,
.comparison__table td span
{
    font-family: 'Zen Old Mincho', serif;
    font-size: 24px;
    font-size: 2.4rem;

    letter-spacing: .03em;

    background: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

@media screen and (max-width: 767px)
{
    .comparison__table th span,
    .comparison__table td span
    {
        font-size: 16px;
        font-size: 1.6rem;
    }
}
.comparison__table th:nth-child(even),
.comparison__table td:nth-child(even)
{
    background-color: #f9f1e5;
}

.comparison__table th:nth-child(1),
.comparison__table td:nth-child(1)
{
    width: 19%;
}

.comparison__table th:nth-child(2),
.comparison__table td:nth-child(2)
{
    width: 42.5%;
}

.comparison__table th:nth-child(3),
.comparison__table td:nth-child(3)
{
    width: 38.5%;
}

.comparison__table th
{
    text-align: left;
}

.comparison__table th.fontbig span
{
    font-size: 30px;
    font-size: 3rem;
}

@media screen and (max-width: 767px)
{
    .comparison__table th.fontbig span
    {
        font-size: 21px;
        font-size: 2.1rem;
    }
}
.comparison__table td
{
    letter-spacing: .06em;
}

.price
{
    padding: 229px 0 141px;

    background: linear-gradient(126.53deg, #e4d4bd 61.79%, #c4ab89 97.39%);
}

@media screen and (max-width: 767px)
{
    .price
    {
        padding: 100px 0 70px;
    }
}
.price__container
{
    font-family: 'Zen Old Mincho', serif;

    padding: 0 20px 117px;

    text-align: center;

    border: 1px solid #d3d3d3;
    background: rgba(255, 255, 255, .8);
    -webkit-box-shadow: 0 2px 14px rgba(0, 0, 0, .1);
            box-shadow: 0 2px 14px rgba(0, 0, 0, .1);
}

@media screen and (max-width: 767px)
{
    .price__container
    {
        padding: 0 15px 50px;
    }
}
.price__heading
{
    max-width: 336px;
    margin: 0 auto;

    -webkit-transform: translateY(-50%);

            transform: translateY(-50%);
}

.price__simu
{
    font-size: 30px;
    font-size: 3rem;

    margin-top: 32px;
    margin-bottom: 14px;

    letter-spacing: .03em;
}

@media screen and (max-width: 767px)
{
    .price__simu
    {
        font-size: 21px;
        font-size: 2.1rem;

        margin-top: 10px;
    }
}
.price__simu span
{
    background: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

.price__simu .price-border
{
    position: relative;
}

.price__simu .price-border::before
{
    position: absolute;

    width: 100%;
    height: 100%;

    content: '';

    background: -webkit-gradient(linear, left top, left bottom, color-stop(98%, transparent), color-stop(0%, #ac7931));

    background: linear-gradient(transparent 98%, #ac7931 0%);
}

.price__note
{
    font-family: 'Noto Sans JP', sans-serif;

    margin-bottom: 47px;

    letter-spacing: .06em;
}

.price__note span
{
    font-weight: 700;

    background: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

.price__case
{
    font-size: 24px;
    font-size: 2.4rem;

    margin-bottom: 14px;

    letter-spacing: .04em;
}

@media screen and (max-width: 767px)
{
    .price__case
    {
        font-size: 16px;
        font-size: 1.6rem;
    }
}
.price__total
{
    max-width: 266px;
    margin: 0 auto 6px;
    padding: 12px 0 9px;

    letter-spacing: .05em;

    background-color: #eeebe2;
}

.price__price
{
    font-size: 30px;
    font-size: 3rem;

    margin-bottom: 13px;

    letter-spacing: .06em;
}

@media screen and (max-width: 767px)
{
    .price__price
    {
        font-size: 21px;
        font-size: 2.1rem;
    }
}
.price__price span
{
    font-size: 38px;
    font-size: 3.8rem;

    background: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

@media screen and (max-width: 767px)
{
    .price__price span
    {
        font-size: 26px;
        font-size: 2.6rem;
    }
}
.price__text
{
    font-family: 'Noto Sans JP', sans-serif;

    margin-bottom: 25px;

    letter-spacing: .06em;
}

.price__frame
{
    line-height: 1.6;

    max-width: 551px;
    margin: 0 auto 27px;
    padding: 12px 0 14px;

    letter-spacing: .06em;

    border: 1px solid #ac7931;
    -o-border-image: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
       border-image: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    border-image-slice: 1;
}

.price__h3
{
    font-size: 30px;
    font-size: 3rem;

    margin-bottom: 18px;
}

@media screen and (max-width: 767px)
{
    .price__h3
    {
        font-size: 21px;
        font-size: 2.1rem;
    }
}
.price__lists
{
    max-width: 551px;
    margin: 0 auto 74px;
}

.price__list
{
    font-size: 24px;
    font-size: 2.4rem;

    width: 100%;
    padding: 22px 0;

    letter-spacing: .06em;

    background: linear-gradient(90.62deg, #ede9db .04%, #fff 48.05%, #ede9db 98.1%);
    -webkit-box-shadow: 0 4px 24px rgba(0, 0, 0, .1);
            box-shadow: 0 4px 24px rgba(0, 0, 0, .1);
}

.price__list:nth-of-type(n + 2)
{
    margin-top: 9px;
}

@media screen and (max-width: 767px)
{
    .price__list
    {
        font-size: 16px;
        font-size: 1.6rem;
    }
}
.price__number
{
    background: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

.price__small
{
    font-size: 16px;
    font-size: 1.6rem;
}

.price__h4
{
    font-size: 30px;
    font-size: 3rem;

    margin-bottom: 28px;

    letter-spacing: .03em;
}

@media screen and (max-width: 767px)
{
    .price__h4
    {
        font-size: 21px;
        font-size: 2.1rem;
    }
}
.price__or
{
    font-size: 30px;
    font-size: 3rem;

    margin-bottom: 52px;
}

@media screen and (max-width: 767px)
{
    .price__or
    {
        font-size: 21px;
        font-size: 2.1rem;
    }
}
.price__or span
{
    font-size: 24px;
    font-size: 2.4rem;
    font-size: 16px;
    font-size: 1.6rem;

    margin: 0 13px;
}

.price__img
{
    max-width: 413px;
    margin: 0 auto;
}

.intro
{
    padding: 145px 0 155px;

    background: linear-gradient(102.95deg, #fffdf4 19.2%, #fffbee 78.66%);
}

@media screen and (max-width: 767px)
{
    .intro
    {
        padding: 70px 0 70px;
    }
}
.intro__heading
{
    margin-bottom: 108px;
}

@media screen and (max-width: 767px)
{
    .intro__heading
    {
        margin-bottom: 60px;
    }
}
.intro__container
{
    margin-bottom: 41px;
}

@media screen and (min-width: 1024px)
{
    .intro__container
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
    }
}
.intro__container-left
{
    width: 50%;
}

@media screen and (max-width: 1023px)
{
    .intro__container-left
    {
        width: 100%;
        max-width: 470px;
        margin: 0 auto 30px;
    }
}
@media screen and (min-width: 768px)
{
    .intro__container-left
    {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;

        -webkit-box-align: center;

            -ms-flex-align: center;

                align-items: center;
    }
}
@media screen and (max-width: 767px)
{
    .intro__container-left
    {
        width: 100%;
    }
}
@media screen and (min-width: 768px)
{
    .intro__img
    {
        max-width: 214px;
        margin-right: 56px;
    }
}
@media screen and (max-width: 767px)
{
    .intro__img
    {
        max-width: 40%;
        margin: 0 auto 20px;
    }
}
@media screen and (max-width: 767px)
{
    .intro__name-area
    {
        text-align: center;
    }
}
.intro__director
{
    margin-bottom: 2px;
}

.intro__name
{
    font-family: 'Zen Old Mincho', serif;
    font-size: 38px;
    font-size: 3.8rem;

    background: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

@media screen and (max-width: 767px)
{
    .intro__name
    {
        font-size: 26px;
        font-size: 2.6rem;
    }
}
.intro__history-lists
{
    -o-border-image: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
       border-image: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    border-image-slice: 1;
}

@media screen and (min-width: 1024px)
{
    .intro__history-lists
    {
        width: 50%;
        padding-left: 60px;

        border-left: 1px solid #ac7931;
    }
}
@media screen and (max-width: 1023px)
{
    .intro__history-lists
    {
        width: 100%;
        max-width: 470px;
        margin: 0 auto;
        padding-top: 22px;

        border-top: 1px solid #ac7931;
    }
}
.intro__history-list
{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.intro__year
{
    width: 90px;
}

.intro__history
{
    width: calc(100% - 90px);
}

.intro__title
{
    font-family: 'Zen Old Mincho', serif;
    font-size: 30px;
    font-size: 3rem;

    margin-bottom: 26px;

    background: linear-gradient(90.73deg, #ac7931 1.01%, #c9a168 48.94%, #ac7931 98.9%);
    -webkit-background-clip: text;

    -webkit-text-fill-color: transparent;
}

@media screen and (max-width: 767px)
{
    .intro__title
    {
        font-size: 21px;
        font-size: 2.1rem;
    }
}
.intro__text
{
    margin-bottom: 20px;
}

/* ==========================================================================
   toppage
   ========================================================================== */
