@charset "utf-8";
/* CSS Document */
html{
    scroll-behavior: smooth;
}
body{
    font-feature-settings: "palt";
}
h2{
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 800;
}
h3{
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
}
h4 , h4 span{
    font-size: 2.0rem;
    color: #ED6E45;
    margin: 16px auto 8px auto;
}
p,li{
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    font-size: 2.0rem;
}
p{
    margin-bottom: 0;
}

ul li{
    list-style: none;
}
ul{
    padding: 0;
}

section{
    margin-bottom: 0;
}
.btn{
    border: none;
}
#btn01{
    background: #1DB68A;
    border: none;
}
#btn01:hover{
    color: #1DB68A;
    border: 1px solid #1DB68A;
    background: #fff;
}
#btn02{
    background: #E60012;
    border: none;
}
#btn02:hover{
    color: #E60012;
    border: 1px solid #E60012;
    background: #fff;
}

footer .inner .ta-c{
    margin-bottom: 16px;
}
footer .inner p{
    line-height: 2.8rem;
}
footer .inner .ta-c br{
    margin-bottom: 0;
}
.banner{
    margin-top: 24px;
}
span{
    color: #ED6E45;
}
#eye_catcher{
    display: none!important;
    width: 0!important;
    height: 0!important;
}

/* PC
------------------------------------------------------------*/
@media (min-width: 769px) {

    /*メインビジュアルの調整*/
    .welfare-mv , .welfare-mv .inner , .dis-pc img{
        width: 100%;
    }
    .inner{
        padding: 0;
    }
    .sp{
        display: none;
    }

    /*.welfare-facilities-main*/
    .welfare-facilities-main{
        margin: 0 auto 60px auto;
    }

    /*.link-button*/
    .link-button{
        width: 360px;
        height: 60px;
        margin: 0 auto;
        background: #ED6E45;
        box-shadow: 0px 5px 0px 0px rgba(211,92,54,1);
        text-align: center;
        line-height: 60px;
        border-radius: 30px;
    }
    .link-button a{
        font-weight: 900;
        font-size: 2.0rem;
        color: #fff;
        text-decoration: none;
        display: block;
    }
    .link-button:hover{
        box-shadow: none;
        background: rgba(211,92,54,1);
        position: relative;
        top: 4px;
    }

    .welfare-massege{
        width: 100%;
        padding: 60px 0;
        background: #FFF4E9;
    }
    .welfare-massege h2{
        font-size: 4.0rem;
        text-align: center;
    }
    .welfare-massege h2::after{
        content: "";
        display: block;
        width: 240px;
        height: 1px;
        text-align: center;
        margin: 24px auto;
        border-bottom: dotted #ED6E45 5px;
    }
    .welfare-massege ul{
        width: 560px;
        margin: 40px auto 0 auto;
        background: #fff;
        padding: 24px 60px;
        border-radius: 8px;
    }
    .welfare-massege ul li{
        margin-bottom: 8px;
        display: flex;
        
    }
    .welfare-massege ul li::before{
        content: "";
        display: block;
        width: 6px;
        height: 6px;
        background: #ED6E45;
        margin: auto 8px auto 0;
    }
    .welfare-massege ul li span{
        margin-left: 4px;
    }

    /*.massege-cta*/
    .massege-cta{
        width: 80%;
        margin: 40px auto;
    }
    .massege-cta p:first-child{
        font-size: 2.4rem;
        text-align: center;
    }
    .massege-cta p:nth-child(2){
        font-size: 4.0rem;
        text-align: center;
        font-weight: 900;
        margin-top: 8px;
    }
    .massege-cta p:nth-child(2) span{
        font-size: 5.6rem;
        margin: 0 2px;
    }
    .massege-cta .link-button{
        margin-top: 40px;
    }

    /*.welfare-points*/
    .welfare-points{
        width: 100%;
    }
    .welfare-points h2{
        font-size: 4.0rem;
        margin: 40px auto 0 auto;
        text-align: center;
    }
    .welfare-points h2 span{
        margin: auto 2px;
    }
    .welfare-points h2::after{
        content: "";
        display: block;
        width: 240px;
        height: 1px;
        text-align: center;
        margin: 24px auto;
        border-bottom: dotted #ED6E45 5px;
    }
    .welfare-points p{
        font-size: 2.4rem;
        text-align: center;
        margin: 40px auto 0 auto;
    }
    .points-group{
        width: calc(100% - 80px);
        margin: 60px auto 0 auto;
        max-width: 1200px;
    }
    .points-group h3{
        font-size: 3.2rem;
        font-weight: 900;
        color: #000;
        text-align: center;
    }
    .points-group h4{
        height: 6.0rem;
        font-size: 2.0rem;
        font-weight: 400;
        color: #ED6E45;
    }
    .points-group p{
        font-size: 2.0rem;
        text-align: left;
        margin-top: 24px;
    }
    .points-group ul{
        display: flex;
        justify-content: space-between;

    }
    .points-group ul li{
        width: 31%;
    }
    .points-group ul li p{
        margin-top: 16px;
    }
    .points-cta{
        width: 80%;
        margin: 40px auto 0 auto;
        padding: 40px 80px;
        background: #FFF4E9;
    }
    .points-cta p{
        font-size: 4.0rem;
        font-weight: 900;
        margin: 0 auto 24px auto;
    }

    /*.casa-contents*/
    .casa-contents{
        width: 100%;
        margin: 60px auto 0 auto;
        padding: 40px 0 80px 0;
        background: #FFF4E9;
    }
    .casa-contents h2{
        font-size: 4.0rem;
        margin: 20px auto 0 auto;
        width: calc(100% - 80px);
        max-width: 1200px;
        text-align: center;
    }
    .casa-contents ul{
        width: calc(100% - 40px);
        max-width: 1200px;
        margin: 40px auto 0 auto;
    }
    .casa-contents ul li{
        margin-bottom: 32px;
        padding: 30px 40px;
        background: #fff;
        border-radius: 8px;
        display: flex;
        justify-content: space-between;
    }
    .casa-contents ul li:last-child{
        margin-bottom: 0;
    }
    .casa-contents ul li img{
        width: 40%;
        object-fit: cover;
    }
    .casa-contents ul li div{
        width: 58%;
    }
    .facility-name{
        font-weight: 900;
        margin-bottom: 8px;
    }
    .casa-contents ul li div h3{
        font-size: 2.4rem;
        font-weight: 900;
        color: #ED6E45;
        margin-bottom: 16px;
    }
    .casa-contents .link-button{
        margin-top: 60px;
    }
    /*.flow-contents*/
    .flow-contents{
        width: calc(100% - 80px);
        max-width: 1200px;
        margin: 0 auto;
    }
    .flow-contents h2{
        font-size: 3.2rem;
        color: #ED6E45;
        margin: 40px auto 0 auto;
        text-align: center;
    }
    .flow-contents ul{
        display: flex;
        flex-wrap: wrap;
        row-gap: 24px;
        margin-top: 40px;
    }
    .flow-contents ul li{
        width: 22%;
        
    }
    .flow-contents ul .dotted{
        width: 4%;
        height: 1px;
        text-align: center;
        margin: auto 0;
        border-bottom: dotted #D9D9D9 8px;
        border-radius: 0;
        box-shadow: none;
    }
    .flow-contents ul li img{
        width: 100%;
        height: auto;
        border-radius: 50%;
        aspect-ratio: 1 / 1;
        box-shadow: 0px 0px 4px 0px rgba(0,0,0,0.24);
        padding: 20px;
        object-fit: contain;
    }
    .flow-contents ul li div{
        margin-top: 16px;
        text-align: center;
    }
    .flow-contents ul li div .number{
        color: #B4B4B4;
    }
    .flow-contents ul li div .flow-title{
        color: #ED6E45;
    }

    /*.flow-cta*/
    .flow-cta{
        width: calc(100% - 80px);
        max-width: 1000px;
        margin: 60px auto;
        background: #FFF4E9;
        padding: 40px 80px;
    }
    .flow-cta p{
        font-size: 2.4rem;
        font-weight: 900;
        text-align: center;
    }
    .flow-cta ul{
        width: 100%;
        justify-content: space-between;
    }
    .flow-cta ul li{
        width: 48%;
    }
    .flow-cta ul li .link-button{
        width: 100%;
    }
    .cost-button{
        background: #158263;
        box-shadow: 0px 5px 0px 0px rgba(15,90,69,1);
    }
    .cost-button:hover{
        box-shadow: none;
        background: rgba(15,90,69,1);
    }
    footer{
        padding-top: 30px;
    }
}

/* Tablet and SP
------------------------------------------------------------*/
@media (max-width: 768px) {
    /*header*/
    .header_link{
        width: 64%;
        max-width: 380px;
        display: flex;
        justify-content: space-between;
    }
    header h1{
        width: max(10%, 120px);
    }
    header .btn{
        padding: 10px 20px;
        text-align: center;
    }
    .header_link a{
        font-size: 1.2rem;
        display: block;
    }
    #btn01{
        width: 42%;
        border: 0px;
    }
    #btn02{
        width: 56%;
        border: 0px;
        margin-left: 8px;
    }
    .welfare-mv{
        width: 100%;
        height: auto;
        margin: 0 auto;
        position: relative;
    }
    .welfare-mv .inner{
        padding: 0;
    }
    .welfare-mv .inner .img-c img{
        width: 100%;
        height: auto;
        object-fit: contain;
    }
    /*.link-button*/
    .link-button{
        width: calc(100% - 40px);
        height: 60px;
        margin: 0 auto;
        background: #ED6E45;
        box-shadow: 0px 5px 0px 0px rgba(211,92,54,1);
        text-align: center;
        line-height: 60px;
        border-radius: 30px;
    }
    .link-button a{
        font-weight: 900;
        font-size: 2.0rem;
        color: #fff;
        text-decoration: none;
        display: block;
    }
    .link-button:hover{
        box-shadow: none;
        background: rgba(211,92,54,1);
        position: relative;
        top: 4px;
    }
    .welfare-massege{
        width: 100%;
        padding: 60px 20px;
        background: #FFF4E9;
    }
    .welfare-massege h2{
        font-size: 4.0rem;
        text-align: center;
    }
    .welfare-massege h2::after{
        content: "";
        display: block;
        width: 240px;
        height: 1px;
        text-align: center;
        margin: 24px auto;
        border-bottom: dotted #ED6E45 5px;
    }
    .welfare-massege ul{
        width: 100%;
        margin: 40px auto 0 auto;
        background: #fff;
        padding: 24px 20px;
        border-radius: 8px;
    }
    .welfare-massege ul li{
        margin-bottom: 8px;
        display: flex;
    }
    .welfare-massege ul li::before{
        content: "";
        display: block;
        width: 6px;
        height: 6px;
        background: #ED6E45;
        margin: auto 8px auto 0;
        flex-shrink: 0;
    }
    .welfare-massege ul li span{
        margin-left: 4px;
    }
    .welfare-massege ul li p{
        word-break: none;
    }
    /*.massege-cta*/
    .massege-cta{
        width: 100%;
        margin: 40px auto;
    }
    .massege-cta p:first-child{
        font-size: 2.0rem;
        text-align: center;
    }
    .massege-cta p:nth-child(2){
        font-size: 2.4rem;
        text-align: center;
        font-weight: 900;
        margin-top: 8px;
    }
    .massege-cta p:nth-child(2) span{
        font-size: 3.2rem;
        margin: 0 2px;
    }
    .massege-cta .link-button{
        margin-top: 40px;
    }
    /*.welfare-points*/
    .welfare-points{
        width: calc(100% - 40px);
        margin: 0 auto;
    }
    .welfare-points h2{
        font-size: 3.2rem;
        margin: 40px auto 0 auto;
        text-align: center;
    }
    .welfare-points h2 span{
        margin: auto 2px;
    }
    .welfare-points h2::after{
        content: "";
        display: block;
        width: 240px;
        height: 1px;
        text-align: center;
        margin: 24px auto;
        border-bottom: dotted #ED6E45 5px;
    }
    .welfare-points p{
        font-size: 2.0rem;
        text-align: left;
        margin: 16px auto 0 auto;
    }
    .points-group{
        margin: 60px auto 0 auto;
    }
    .points-group h3{
        font-size: 2.4rem;
        font-weight: 900;
        color: #000;
        text-align: center;
    }
    .points-group h4{
        font-size: 2.0rem;
        font-weight: 400;
        color: #ED6E45;
    }
    .points-group p{
        font-size: 2.0rem;
        text-align: left;
        margin-bottom: 40px;
    }
    .points-cta{
        width: 100%;
        margin: 40px auto 0 auto;
        padding: 40px 12px;
        background: #FFF4E9;
    }
    .points-cta p{
        font-size: 3.2rem;
        font-weight: 900;
        margin: 0 auto 24px auto;
        text-align: center;
    }

    /*.casa-contents*/
    .casa-contents{
        width: 100%;
        margin: 20px auto 0 auto;
        padding: 20px 0 60px 0;
        background: #FFF4E9;
    }
    .casa-contents h2{
        font-size: 3.2rem;
        margin: 16px auto 0 24px;
    }
    .casa-contents ul{
        width: calc(100% - 40px);
        margin: 40px auto 0 auto;
    }
    .casa-contents ul li{
        margin-bottom: 32px;
        padding: 20px 16px;
        background: #fff;
        border-radius: 8px;
    }
    .facility-name{
        font-weight: 900;
        margin: 16px auto 8px auto
    }
    .casa-contents ul li div h3{
        font-size: 2.4rem;
        font-weight: 900;
        color: #ED6E45;
        margin-bottom: 16px;
    }
    .casa-contents .link-button{
        margin-top: 60px;
    }

    /*.flow-contents*/
    .flow-contents{
        width: calc(100% - 40px);
        margin: 0 auto;
    }
    .flow-contents h2{
        font-size: 3.2rem;
        color: #ED6E45;
        margin: 40px auto 0 auto;
        text-align: center;
    }
    .flow-contents ul{
        width: 100%;
        margin-top: 24px;
    }
    .flow-contents ul li{
        width: 100%;
        box-shadow: 0px 0px 4px 0px rgba(0,0,0,0.24);
        margin-bottom: 24px;
        border-radius: 8px;
        text-align: center;
        padding: 16px 0;
    }
    .flow-contents ul li img{
        width: 200px;
        height: 140px;
        margin: 16px auto;
        object-fit: cover;
    }
    .flow-contents ul .dotted{
        display: none;
    }
    .flow-contents ul li:last-child{
        margin-bottom: 0;
    }
    .flow-contents ul li div{
        margin: 8px auto;
        text-align: center;
    }
    .flow-contents ul li div .number{
        color: #B4B4B4;
    }
    .flow-contents ul li div .flow-title{
        color: #ED6E45;
    }
    /*.flow-cta*/
    .flow-cta{
        width: 100%;
        margin: 60px auto;
        background: #FFF4E9;
        padding: 40px 16px;
    }
    .flow-cta ul li{
        box-shadow: none;
        margin-bottom: 16px;
        padding: 0;
    }
    .flow-cta ul li:last-child{
        margin-bottom: 0;
    }
    .flow-cta p{
        font-size: 2.4rem;
        font-weight: 900;
        text-align: center;
    }
    .flow-cta ul li .link-button{
        width: 100%;
    }
    .cost-button{
        background: #158263;
        box-shadow: 0px 5px 0px 0px rgba(15,90,69,1);
    }
    .cost-button:hover{
        box-shadow: none;
        background: rgba(15,90,69,1);
    }

}