@charset "UTF-8";


/* --- 初期設定 --- */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;

    /* outline: 1px solid red !important; */
}
html {
    scroll-behavior: smooth;
}
body {
    /* width: 933px; */
    width: calc(100% - 200px);
    max-width: 1250px;
    margin: 0 auto;
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}
.contents {
    overflow: hidden;
}
a {
    text-decoration: none;
    color: inherit;
}

@media screen and (max-width: 430px) {
    body {
        width: 100%;
    }
    .contents {
        width: 355px;
        margin: 0 auto;
    }
}



/* --- スマホの表示非表示切り替え --- */
.only-pc {
    display: block;
}
.only-sp {
    display: none;
}
@media screen and (max-width: 430px) {
    .only-pc {
        display: none;
    }
    .only-sp {
        display: block;
    }
}


.header-pc {
    width: 100%;
}





/* --- 新プランが登場！！ポップ --- */
.new-plan__pop {
    width: 90%;
    margin: 50px auto 0 auto;
}





.price-button a {
    display: flex;
    justify-content: center;
    margin-top: 20px;
}
.price-button img {
    width: 40%;
}
@media screen and (max-width: 430px) {
    .price-button a {
        margin-bottom: 50px;
    }
    .price-button img {
        width: 80%;
    }
}






/* --- 利用者からのコメント --- */
.user-comment {
    width: 100%;
}
@media screen and (max-width: 430px) {
    .user-comment {
        width: 85%;
        margin: 0 auto;
    }
}






/* --- ナビゲーション --- */
.plan-nav {
    width: 100%;
    display: flex;
    justify-content: center;
    gap: 40px;
    margin: 100px auto;
}
.plan-nav__item img{
    width: 100%;
}

@media screen and (max-width: 430px) {
    .plan-nav {
        width: 85%;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 25px;
        margin: 80px auto;
    }
}







/* --- プラン共通 --- */
#light, #original, #after, #flow {
    margin-bottom: 150px;
}
.plan-lead {
    margin: 50px auto;
    text-align: center;
    width: 90%;
}
@media screen and (max-width: 430px) {
    #light, #original, #after, #flow {
        margin-bottom: 100px;
    }
}







/* --- NEW 家ごと丸ごと ライトプラン［ 単発 ］ --- */
.light-plan__box {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 30px;
    position: relative;
}
.light-plan__box img {
    width: 27.87%;
}
.light-plan__card-01-point {
    width: 50%;
    position: absolute;
    top: 7%;
    left: 21%;
}
.light-plan__card-05-point {
    width: 50%;
    position: absolute;
    top: 60%;
    left: 52%;
}

@media screen and (max-width: 430px) {
    .light-plan__box {
        width: 85%;
        gap: 30px;
        margin: 0 auto;
    }
    .light-plan__box img {
        width: 80%;
    }
    .light-plan__card-01-point {
        top: 2.5%;
        left: 55%;
    }
    .light-plan__card-05-point {
        top: 70%;
        left: 55%;
    }
}






/* --- 家ごと丸ごと オリジナルプラン［ 定期 ］ --- */
.original-plan__service img{
    width: 100%;
    margin-top: 100px;
}
.original-plan__point {
    width: 90%;
    margin: 0 auto;
}
@media screen and (max-width: 430px) {
    .original-plan__service img{
        width: 90%;
        margin: 50px auto 0 auto;
    }
}







/* --- NEW 死後事務プラン --- */
.after-plan__comment {
    display: flex;
    gap: 10px;
    margin: 50px auto;
}
.after-plan__comment img {
    width: 24%;
}

.after-plan__title {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 20px;
    color: #1CA866;
    font-size: 28px;
}
.after-plan__title::before,
.after-plan__title::after {
    content: "";
    flex: 1;
    height: 3px;
    background-color: #1CA866;
}

.after-plan__lead-card {
    margin-bottom: 150px;
}
.after-plan__price-list img {
    width: 100%;
    margin: 50px 0 150px 0;
}

.after-plan__table-list img {
    margin-top: 120px;
}

@media screen and (max-width: 430px) {
    .after-plan__comment {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        gap: 10px;
        margin: 30px;
    }
    .after-plan__comment img {
        width: 100%;
    }
    .after-plan__title {
        font-size: 22px;
    }
    .after-plan__lead-card {
        margin: 0 auto 100px auto;
        width: 90%;
    }
    .after-plan__price-list img {
        margin: 50px 0 100px 0;
    }
    .after-plan__table-list img {
        margin-top: 40px;
    }
}





/* --- ご利用の流れ --- */
.flow-card img {
    width: 100%;
}






/* --- トップへ戻る --- */
.to-top {
    position: fixed;
    bottom: -1%;
    left: 65%;
    z-index: 1;
}
.to-top img {
    width: 40%;
}

@media (max-width: 1024px) {
    .to-top {
        left: 70%;
    }
    .to-top img {
        width: 85%;
    }
}
@media (max-width: 430px) {
    .to-top {
        left: 45%;
    }
    .to-top img {
        width: 95%;
    }
}








/* --- フッター --- */
.footer__inner {
    width: 100%;
    position: relative;
}
.footer__tel-box {
    position: absolute;
    top: 75%;
    left: 33%;
}
.footer__tel-box a {
    color: #F08D2C;
    font-size: 37px;
}
.footer__tel-box img {
    width: 42%;
}
.footer__copyright {
    text-align: center;
    color: #fff;
    background-color: #453E3B;
    padding: 10px 0 50px 0;
}

@media screen and (max-width: 430px) {
    .footer__tel-box {
        position: absolute;
        top: 79%;
        left: 23%;
    }
    .footer__tel-box a {
        font-size: 33px;
    }
    .footer__tel-box img {
        width: 80%;
    }
}