body{
    font-family: "Zen Maru Gothic", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
    background-color: #fff;
    font-size: 18px;
    line-height: 1.8;
    box-sizing: border-box;
    letter-spacing: 0.08em;
    position: relative;
    overflow-x: hidden;
    color: #414141;
    z-index: 0;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
}
p{
    font-family: "Noto Sans JP", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
}
a{
    color: #414141;
}
img{
    width: 100%;
    height: auto;
    object-fit: cover;
}
.col_green_01{
    color: #126F16;
}
.wrapper{
    overflow-x: hidden;
    position: relative;
}
.contents{
    width: 88%;
    max-width: 1200px;
    margin: 0 auto;
}
.flexbx{
    display: flex;
    align-items: center;
}
.num,
.en{
    font-family: "Quicksand","Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
}
.mb0{
    margin-bottom: 0!important;
}
.mb16{
    margin-bottom: 16px!important;
}

/* コンテンツ両側余白 */
.contents_pd{
    padding: 100px 0;
}

/* 白背景 */
.wht_bx{
    background: #fff;
    border-radius: 20px;
}

/* PCのみ表示 */
.pc,
.forpc{
    display: flex;
}
/* スマホのみ非表示 */
.sp,
.sp_639{
    display: none;
}

/* スマホのみ改行 */
.txt_br{
    display: none;
}

/* 横並び共通画像 高さ550px固定*/
.img_bx img{
    /* display: block; */
    width: 100%;
    height: 550px;
    object-fit: cover;
    border-radius: 20px;
}

/* 共通リンクボタン01 */
.button_bx{
    width: 196px;
    height: 50px;
    background-color: #126F16;
    color: #fff;
    font-weight: 500;
    border-radius: 40px;
    border: #126F16 solid 2px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    margin: 40px 0 0 0;
}
.button_bx:hover{
    background: #fff;
    transition: 0.3s;
    color: #126F16;
}
.button_bx::before,
.button_bx::after{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.button_bx:hover:before{
    background:#126F16;
}
.button_bx::before{
    width: 10px;
    height: 2px;
    background:#fff;
}
.button_bx::before{
    left: 82%;
}
.button_bx.back::before{
    left: 10%;
}
.button_bx::after{
    width: 6px;
    height: 6px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.button_bx.next::after{
    left: 83%;
    border-top: #fff solid 2px;
    border-right: #fff solid 2px;
}
.button_bx.back::after{
    left: 10%;
    border-bottom: #fff solid 2px;
    border-left: #fff solid 2px;
}
.button_bx:hover:after{
    border-color: #126F16;
}

/* サービスページ共通リンクボタン */
.service_links{
    margin-top: 100px;
}
.service_links .links .links_item{
    width: 48%;
}
.service_links .links .links_item .links_bx{
    font-size: 24px;
    display: block;
    padding: 46px 40px;
}
.service_links .links .links_item a::before{
    left: 88%;
}
.service_links .links .links_item a::after{
    left: 88.5%;
}
.service_links .links .links_item .links_bx span::before{
    width: 48px;
    height: 48px;
    padding-right: 24px;
}
.service_links .links .links_item .admission::before{
    background:url(../imges/page/icon_admission.svg)no-repeat;
}
.service_links  .links .links_item .homecare::before{
    background:url(../imges/page/icon_homecare.svg)no-repeat;
}
.service_links .links .links_item .daycarecenter::before{
    background:url(../imges/page/icon_daycarecenter.svg)no-repeat;
}

/* h2 */
.ttl_bx{
    position: relative;    
}
.ttl_bx .en{
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 0;
}
.ttl_bx .en:before{
    content: "";
    display: inline-block;
    align-items: center;
    width: 56px;
    height: 50px;
    background: url(../imges/common/ttl_img01.png) no-repeat;
    background-size: cover;
    position: absolute;
    top: -26px;
    left: -28px;
}
.ttl_bx .ttl{
    font-size: 30px;
    font-weight: 500;
    margin-bottom: 64px;
}

/* h3 */

/* ページ内リンク */
.page_nav{
    margin: 80px auto;
}
.page_nav_wrapper{
    justify-content: center;
}
.page_nav_item{
    width: 220px;
    padding-bottom: 10px;
    text-align: center;
    border-bottom: 2px solid #EDEDED;
    position: relative;
}
.page_nav_item a{
    font-weight: 500;
    width: 100%;
    display: block;
}
.page_nav_item:hover{
    border-color: #126F16;
    transition: .3s;
}
.page_nav_item::after{
    content: "";
    position: absolute;
    top: 11px;
    right: 6px;
    width: 6px;
    height: 6px;
    border-bottom: 2px solid #126F16;
    border-right: 2px solid #126F16;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.page_nav_item:nth-of-type(n+2){
    margin-left: 40px;
}


/* 下層MV - 01 */
.mv{
    width: 100%;
}
.mv_wrapper{
    width: 100%;
    height: 450px;
    margin-top: 100px;
    display: flex;
    align-items: flex-end;
    justify-content: flex-end;
}
.mv .mv_title{
    writing-mode: vertical-rl;
    font-size: 32px;
    margin-right: 6.5%;
    letter-spacing: 0.2em;
}
.mv .mv_img{
    width: 77.5%;
    height: 100%;
}
.mv .mv_img img{
    border-radius: 20px 0 0 20px;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* 下層MV - 02 */
.mv .mv_title_02{
    font-size: 32px;
    text-align: center;
    padding: 230px 0 120px;
    border-bottom: 2px solid #EDEDED;
}

/* パンくずリスト */
.breadcrumb{
    margin-top: 24px;
    font-size: 14px;
}
.breadcrumb .breadcrumb_wrapper.flexbx{
    justify-content: flex-end;
}
.breadcrumb a{
    color: #BABABA;
    text-decoration: underline;
}
.breadcrumb_wrapper > li{
    position: relative;
}
.breadcrumb_wrapper > li:nth-of-type(n+2){
    margin-left: 24px;
}
.breadcrumb_wrapper > li:nth-of-type(n+2)::before{
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: -17px;
    margin: auto;
    width: 6px;
    height: 6px;
    border-top: 1px solid #414141;
    border-right: 1px solid #414141;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    vertical-align: middle;
}

/* ヘッダー */
.header_bx .header_bx_wrap{
    z-index: 999;
    background: #fff;
    position: fixed;
    top: 0;
    width: 100%;
    transition: .5s;
}
.header_bx .header_bx_wrap.hide{
    top: -100px;
}
.header_bx .header_bx_inner{
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 24px 40px 20px;
}
.header_logo img{
    width: 247px;
    height: auto;
}
.header_nav{
    font-weight: 500;
}
.header_nav .button_bx{
    margin-top: 0;
    margin-left: 24px;
}
.header_nav ul.pc li{
    display: inline-block;
}
.header_nav > ul.pc > li{
    margin: 0 12px;
}
.header_nav > ul.pc > li a{
    padding: 10px 0;
    display: block;
}
.header_nav > ul.pc > li a.arrow{
    padding-right: 16px;
}
.header_nav > ul.pc > li a.arrow::after{
    position: absolute;
    top: 45px;
    margin: 0 6px;
    content: "";
    display: inline-block;
    width: 6px;
    height: 6px;
    border-bottom: #126F16 solid 2px;
    border-right: #126F16 solid 2px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.header_nav > ul.pc > li::after{
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    background: #126F16;
    visibility: hidden;
}
.header_nav > ul.pc > li:hover::after{
    visibility: visible;
    transition: .3s;
}

/* メガメニュー */
.header_nav .sub_menu{
    position: absolute;
    top: 80px;
    left: 0;
    z-index: 999;
    width: 100%;
    display: none;
}
.header_nav .sub_menu_wrapper{
    padding-top: 50px;
}
body::after{
    width: 100%;
    height: 100%;
    position: absolute;
    backdrop-filter: blur(12px);
    background-color: rgba(186, 186, 186, 0.3);
    content: "";
    top: 0;
    left: 0;
    z-index: -1;
    opacity: 0;
    -webkit-transition: all 0.6s;
    transition: all 0.6s;
}
body.overlay:after{
    z-index: 1;
    opacity: 1;
}
.header_nav .sub_menu .sub_menu_list{
    position: absolute;
    /* width: 85.3%; */
    width: 95%;
    left: 2.9%;
    background: #fff;
    padding: 40px 40px 40px 80px;
    border-radius: 20px;
    justify-content: space-between;
    box-sizing: border-box;
}
.header_nav .sub_menu .sub_menu_ttl{
    font-size: 32px;
    width: 26.7%;
}
/* リンク2つ */
.header_nav .sub_menu .sub_menu_list .sub_menu_item2{
    width: 47.7%;
}
/* リンク3つ */
.header_nav .sub_menu .sub_menu_list .sub_menu_item3{
    width: 30.2%;
}
.header_nav .sub_menu .sub_menu_list .sub_menu_item2,
.header_nav .sub_menu .sub_menu_list .sub_menu_item3{
    border: 2px solid #EDEDED;
    text-align: center;
    border-radius: 20px;
    color: #126F16;
    margin-left: 3.6%;
}
.header_nav .sub_menu .sub_menu_list li:hover{
    border-color: #126F16;
    transition: .3s;
}
.header_nav .sub_menu .sub_menu_list li a{
    color: #126F16;
    display: block;
    padding: 24px 0;
}
.header_nav .sub_menu .sub_menu_list li a::before{
    content: "";
    display: block;
    width: 66px;
    height: 48px;
    margin: 0 auto;
    padding-bottom: 16px;
}
.header_nav .sub_menu .sub_menu_list .admission a::before{
    background:url(../imges/common/icon_admission.svg)no-repeat center;
}
.header_nav .sub_menu .sub_menu_list .homecare a::before{
    background:url(../imges/common/icon_homecare.svg)no-repeat center;
}
.header_nav .sub_menu .sub_menu_list .daycarecenter a::before{
    background:url(../imges/common/icon_daycarecenter.svg)no-repeat center;
}
.header_nav .sub_menu .sub_menu_list .flow a::before{
    background:url(../imges/common/icon_header_flow.svg)no-repeat center;
}
.header_nav .sub_menu .sub_menu_list .fee a::before{
    background:url(../imges/common/icon_fee.svg)no-repeat center;
}

/* 共通リンクブロック */
.all_links{
    background: #DCE3CB;
    margin-top: 20px;
}
.all_links_inner_txt{
    font-size: 20px;
    font-weight: 500;
    text-align: center;
    margin-bottom: 40px;
    margin-top: 0;
}
.links{
    display: flex;
    justify-content: flex-start;
    align-items: center;
}
.links .links_item{
    width: 30.6%;
    position: relative;
}
.all_links .links .links_item:nth-of-type(1){
    pointer-events: none;
}
.links .links_item .links_bx{
    border: 2px solid #EDEDED;
    border-radius: 20px;
    background: #fff;
}
.links .links_item a:hover{
    border-color: #126F16;
    transition: 0.3s;
}
.links .links_item a::before,
.links .links_item a::after{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.links .links_item a.tel_bx::before,
.links .links_item a.tel_bx::after{
    content: none;
}
.links .links_item a::before{
    width: 10px;
    height: 2px;
    background:#414141;
    left: 82%;
}
.links .links_item a::after{
    width: 6px;
    height: 6px;
    border-top: #414141 solid 2px;
    border-right: #414141 solid 2px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    left: 83%;
}
.links .links_item:nth-child(n+2){
    margin-left: 40px;
}
.links .links_item .links_bx span::before{
    content: "";
    display: inline-block;
    align-items: center;
    width: 40px;
    height: 40px;
    padding-right: 8px;
}
.links .links_item .links_bx span{
    display: flex;
    align-items: center;
}
.links_item .tel{
    font-family: "Quicksand","Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
    font-size: 24px;
}
.links .links_item .links_bx{
    display: flex;
    align-items: center;
    padding: 24px;
    font-weight: 500;
} 
.all_links_inner .links .links_item .tel::before{
    background:url(../imges/common/icon_tel.svg)no-repeat;
}
.all_links_inner .links .links_item .contact::before{
    background:url(../imges/common/icon_contact.svg)no-repeat;
}
.all_links_inner .links .links_item .flow::before{
    background:url(../imges/common/icon_flow.svg)no-repeat;
}

/* ページトップボタン */
.page_top{
    position: relative;
}
.page_top .page_top_btn{
    width: 50px;
    height: 50px;
    background: #126F16;
    border-radius: 50%;
    border: 2px solid #126F16;
    position: absolute;
    top: -105px;
    right: 8%;
    z-index: 5
}
.page_top .page_top_btn:hover{
    background: #fff;
    transition: .3s;
}
.page_top .page_top_btn::before,
.page_top .page_top_btn::after{
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.page_top .page_top_btn::before{
    width: 2px;
    height: 14px;
    background:#fff;
    top: 0;
}
.page_top .page_top_btn::after{
    width: 6px;
    height: 6px;
    top: -6px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    border-top: #fff solid 2px;
    border-left: #fff solid 2px;
}
.page_top .page_top_btn:hover::before{
    background:#126F16;
}
.page_top .page_top_btn:hover::after{
    border-color: #126F16;
}

/* フッター */
#footer{
    background:#F5F7F0;
    padding-top: 80px;
    padding-bottom: 32px;
    position: relative;
}
#footer p,#footer a{
    font-size: 14px;
    color: #126F16;
}
#footer a:hover{
    opacity: 0.7;
    transition: 0.3s;
}
#footer .footer_img01,
#footer .footer_img02{
    position: absolute;
}
#footer .footer_img01{
    width: 132px;
    height: 142px;
    top: -42px;
    left: -24px;
}
#footer .footer_img02{
    width: 122px;
    height: 138px;
    bottom: 64px;
    right: -24px;
}
#footer .footer_bx{
    display: flex;
    justify-content: space-between;
    margin-bottom: 32px;
}
#footer .footer_bx .logo{
    width: 168px;
    height: auto;
    margin-bottom: 16px;
}
#footer .footer_bx .logo img{
    width: 100%;
    height: auto;
}
#footer .footer_bx .footer_bx_left{
    width: 40%;
}
/* #footer .footer_bx .footer_bx_left div:nth-of-type(1) {
    border-bottom: 1px solid #CADEC7;
    padding-bottom: 24px;
    padding-right: 0;
    margin-bottom: 24px;
    margin-right: 0;
} */
#footer .footer_bx .footer_bx_left .info_bx .info_bx_name{
    font-weight: 500;
    margin-bottom: 6px;
    font-size: 16px;
    color: #126F16;
}
#footer .footer_bx .footer_bx_left .info_bx .info_bx_name span{
    font-size: 18px;
}
#footer .footer_bx_right{
    width: 455px;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
}
#footer .footer_bx_right .nav_bx{
    width: 130px;
    margin-right: 32px;
    letter-spacing: 0.02em;
    display: inline-block;
}
#footer .footer_bx_right .nav_bx:nth-child(n+4){
    margin-top: 16px;
}
#footer .footer_bx_right .nav_bx:nth-child(3n){
    margin-right: 0;
}
#footer .footer_bx_right .nav_bx .nav_heading{
    font-size: 16px;
    font-weight: 500;
    border-bottom: 1px solid #126F16;
    padding-bottom: 4px;
    margin-bottom: 8px;
    vertical-align: top;
}
#footer .footer_bx_right .nav_bx .nav_heading li{
    display: inline-block;
}
#footer .small{
    font-family: "Quicksand","Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
    font-size: 10px;
    margin-top: 0;
    display: block;
}
#footer .txt_bx{
    display: flex;
    justify-content: space-between;
}
#footer .txt_bx a{
    text-decoration: underline;
}

/* 無限ループスライダー */
.loop_slide{
    max-width: 360px;
    width: 100%;
    margin: 0 auto;
    font-size: 0;
}
.swiper-container .swiper-wrapper {
    transition-timing-function: linear !important;
}

/* news */
.news_bx .news_bx_inner{
    justify-content: space-between;
    margin-bottom: 20px;
}
.news_bx .news_bx_inner .cat_nav{
    width: 70.4%;
}
.news_bx .news_bx_inner .cat_nav li{
    width: 17.3%;
    text-align: center;
    border-radius: 20px;
}
.news_bx .news_bx_inner .cat_nav li .cat_nav_item{
    color: #126F16;
    width: 100%;
    display: block;
    border-radius: 20px;
    border: 2px solid #EDEDED;
}
.news_bx .news_bx_inner .cat_nav li .cat_nav_item:hover,
.news_bx .news_bx_inner .cat_nav li .cat_nav_item.is-active{
    color: #fff;
    background: #126F16;
    border-color: #126F16;
    transition: .3s;
}
.news_bx .news_bx_inner .cat_nav li:nth-of-type(n+2){
    margin-left: 3.4%;
}
.news_bx .news_bx_list{
    margin-top: 64px;
    display: none;
}
.news_bx .news_bx_list.is-active{
    display: block;
}
.news_bx .news_bx_list li{
    border-bottom: 2px solid #EDEDED;
    position: relative;
}
.news_bx .news_bx_list li:nth-of-type(1){
    border-top: 2px solid #EDEDED;
}
.news_bx .news_bx_list li a::before,
.news_bx .news_bx_list li a::after{
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.news_bx .news_bx_list li a::before{
    width: 10px;
    height: 2px;
    background:#414141;
    left: 97%;
    top: 0;
    bottom: 0;
    margin: auto;
}
.news_bx .news_bx_list li a::after{
    width: 6px;
    height: 6px;
    border-top: #414141 solid 2px;
    border-right: #414141 solid 2px;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    left: 97.2%;
    top: 0;
    bottom: 0;
    margin: auto;
}
.news_bx .news_bx_list li a:hover::before{
    left: 97.6%;
    transition: .3s;
}
.news_bx .news_bx_list li a:hover::after{
    left: 97.8%;
    transition: .3s;
}
.news_bx .news_bx_list li .news_bx_list_item{
    padding: 24px 20px;
    display: flex;
}
.news_bx .news_bx_list li .news_bx_list_item:hover{
    /* background: #FAFAFA; */
    background: #F9FAF7;
    transition: .3s;
}
.news_bx .news_bx_list li .news_bx_list_item span{
    display: inline-block;
    vertical-align: top;
}
.news_bx_list_item .date.num{
    width: 116px;
}
.news_bx .news_bx_list li .news_bx_list_item .cate{
    width: 120px;
    height: 36px;
    background: #F1F3EA;
    color: #126F16;
    border-radius: 20px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}
.news_bx .news_bx_list li .news_bx_list_item .ttl{
    width: calc(100% - 288px);
    padding-left: 32px;
    padding-top: 2px;
}
.news_bx .button_bx{
    margin: 56px auto 0;
}






