/* ////////////////////////////////// */
/* トップイメージ画像 */
/* ////////////////////////////////// */
.lower_top_service {
    background-image: url(../images/service/topimg.jpg);
    background-size: cover;
    background-position: center top;
}


/* ////////////////////////////////// */
/* One handの療育について */
/* ////////////////////////////////// */
#menu1 {
    margin-top: 130px;
}
.m1_p {
    margin-bottom: 30px;
    text-align: center;
}
.m1_flex {
    display: flex;
    justify-content: space-between;
    margin: 0 auto 130px;
    max-width: 1000px;
}
.m1_block {
    display: block;
    width: calc(100% / 2 - 20px);
    padding: 30px;
    border-radius: 20px;
}
.m1_block_left {
    background: #feebd9;
}
.m1_block_right {
    background: #dbf4d8;
}
.m1_block h4 {
    font-size: 28px;
    margin-bottom: 20px;
}
.m1_block p {
    line-height: 1.8;
}


/* ////////////////////////////////// */
/* One handの特徴 */
/* ////////////////////////////////// */
.m2_flex {
    display: flex;
    justify-content: space-between;
    margin: 0 auto 70px;
    max-width: 1000px;
}
.m2_flex_last {
    margin-bottom: 130px;
}
.m2_block_txt {
    display: block;
    width: 445px;
}
.m2_block_txt img {
    width: 70px;
}
.m2_block_txt h4 {
    font-size: 28px;
    margin-bottom: 20px;
}
.m2_block_txt h4 span {
    display: block;
    width: 135px;
    border: solid 1px;
    border-radius: 30px;
    font-size: 16px;
    padding: 3px 0;
    text-align: center;
    margin-top: 7px;
}
.m2_block_txt p {
    line-height: 1.8;
}
.m2_block_img {
    width: 500px;
    height: 350px;
    position: relative;
    border-radius: 20px;
}
.m2_flex .img1 {
    background-image: url(../images/service/img2_1.jpg);
    background-size: cover;
    background-position: center center;
}
.m2_flex .img2 {
    background-image: url(../images/service/img2_2.jpg);
    background-size: cover;
    background-position: center center;
}
.m2_flex .img3 {
    background-image: url(../images/service/img2_3.jpg);
    background-size: cover;
    background-position: center center;
}


/* ////////////////////////////////// */
/* １日の流れ */
/* ////////////////////////////////// */
.m3_flex {
    display: flex;
    justify-content: space-between;
    margin: 0 auto 130px;
    max-width: 1000px;
}
.m3_flex img {
    width: calc(100% / 2 - 20px);
}


/* ////////////////////////////////// */
/* 年間行事 */
/* ////////////////////////////////// */
.m4_back {
    position: relative;
    background-image: url(../images/service/img4_back.png);
    background-size: cover;
    background-position: center center;
    width: 100%;
    height: 1500px;
    margin: 130px 0;
}
.m4_title_block {
    position: absolute;
    top: 65px;
    left: 50%;
    z-index: 2;
    width: 100%;
    -webkit-transform: translate(-50%, 0%);
    -moz-transform: translate(-50%, 0%);
    transform: translate(-50%, 0%);
}
.m4_title_block h3 span {
    color: unset;
}
.m4_flex {
    display: flex;
    justify-content: space-between;
    width: 1000px;
    flex-wrap: wrap;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -moz-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}
.m4_block {
    display: block;
    width: calc(100% / 2 - 20px);
}
.m4_month_flex {
    display: flex;
    justify-content: space-between;
    border-radius: 20px;
    padding: 20px;
    background: #fff;
    margin-top: 30px;
    height: 175px;
}
.m4_month_flex img {
    width: 150px;
}
.m4_month_flex p {
    width: calc(100% - 150px - 20px);
    display: flex;
    align-items: center;
}


/* /////////////////////// */
/* サイズの大きいPC */
/* /////////////////////// */
/*
@media screen and (min-width:1350px){
    .m3_back {
        height: 1200px;
    }
}
@media screen and (min-width:1450px){
    .m3_back {
        height: 1300px;
    }
}
*/
@media screen and (min-width:1500px){
    /*
    .lower_top_service {
        background-position: center top;
    }
    */
}

/* /////////////////////// */
/* サイズの小さいPC */
/* /////////////////////// */
@media screen and (max-width:1250px){
}
@media screen and (max-width:1050px){
    /*
    .lower_top_service {
        background-position: center -30%;
    }
    */
    .m1_flex {
        max-width: 750px;
    }
    .m1_block {
        width: calc(100% / 2 - 10px);
        padding: 20px;
    }
    .m2_flex {
        max-width: 750px;
    }
    .m2_block_txt {
        width: 380px;
    }
    .m2_block_txt img {
        width: 60px;
    }
    .m2_block_txt h4 {
        font-size: 24px;
    }
    .m2_block_img {
        width: 340px;
        height: 340px;
    }
    .m2_flex .img1 {
        background-position: 65% center;
    }
    .m2_flex .img3 {
        background-position: 25% center;
    }
    .m3_flex {
        max-width: 750px;
    }
    .m3_flex img {
        width: calc(100% / 2 - 10px);
    }
    .m4_flex {
        max-width: 750px;
    }
    .m4_block {
        width: calc(100% / 2 - 10px);
    }
    .m4_month_flex img {
        width: 120px;
        height: 110px;
    }
    .m4_month_flex p {
        width: calc(100% - 120px - 20px);
    }
}


/* /////////////////////// */
/* レスポンシブ対応 */
/* /////////////////////// */
@media screen and (max-width:767px){
    .lower_top_service {
        background-image: url(../images/service/topimg_sp.jpg);
        background-position: center top;
    }
    #menu1 {
        margin-top: 50px;
    }
    .m1_p {
        width: calc(100% - 30px);
        margin: 0 auto 30px;
    }
    .m1_flex {
        flex-wrap: wrap;
        margin-bottom: 80px;
    }
    .m1_block {
        width: calc(100% - 30px);
        margin: 0 auto 20px;
    }

    .m2_flex {
        flex-wrap: wrap;
        flex-direction: column-reverse;
        width: calc(100% - 30px);
        margin-bottom: 80px;
    }
    .m2_block_img {
        width: 100%;
        height: 230px;
    }
    .m2_block_txt {
        width: 100%;
        margin-top: 15px;
    }
    .m2_block_txt img {
        margin: 0 auto;
        display: block;
    }
    .m2_block_txt h4 {
        font-size: 22px;
        text-align: center;
    }
    .m2_block_txt h4 span {
        margin: 7px auto 0;
    }

    .m3_flex {
        width: calc(100% - 30px);
        flex-wrap: wrap;
        margin-bottom: 80px;
    }
    .m3_flex img {
        width: 100%;
        margin-bottom: 20px;
    }

    .m4_back {
        margin-top: 0;
        margin-bottom: 100px;
        height: 2200px; /* 暫定的に */
    }
    .m4_flex {
        width: calc(100% - 30px);
    }
    .m4_block {
        width: 100%;
    }
    .m4_month_flex {
        height: 140px;
        padding: 15px;
        margin-top: 20px;
    }
    .m4_month_flex img {
        width: 100px;
        height: 90px;
    }
    .m4_month_flex p {
        width: calc(100% - 100px - 20px);
        font-size: 14px;
    }
}