/* =================================== */


/*	TOPページ
/* =================================== */

#mainvisual {
    display: block;
    position: relative;
    background: none;
    height: 65vh;
}

#mainvisual .mainvisual_slide {
    position: relative;
    height: 65vh;
    width: 100%;
    background-position: center;
    background-repeat: no-repeat;
    -webkit-background-size: cover;
    -moz-background-size: cover;
    -o-background-size: cover;
    background-size: cover;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

#mainvisual .inner {
    position: relative;
    margin: -65vh auto 0;
    height: inherit;
    /* 一番近い上位要素の高さを継承 */
    /* 上下左右真ん中 */
    display: flex;
    /* 子要素をflexboxで揃える */
    flex-direction: column;
    /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center;
    /* 子要素をflexboxにより中央に配置する */
    align-items: center;
    /* 子要素をflexboxにより中央に配置する */
}


/* キャッチフレーズ */

#mainvisual .inner h1 {
    margin-bottom: 5px;
    font-size: 30px;
    line-height: 44px;
    text-align: center;
    color: #fff;
    text-shadow: 0 0 6px rgba(47, 42, 26, 0.8);
    animation-delay: 0.3s;
    /* アニメーション開始時間 */
}

#mainvisual .inner h2 {
    font-size: 26px;
    line-height: 28px;
    margin: 0 auto 15px auto;
    text-align: center;
    color: #fff;
    text-shadow: 0 0 6px rgba(47, 42, 26, 0.8);
    animation-delay: 0.3s;
    /* アニメーション開始時間 */
}

#mainvisual .inner h3 {
    max-width: 550px;
    margin: 0 auto 30px;
    position: relative;
}

#mainvisual .inner h3 a {
    position: absolute;
    width: 157px;
    height: 157px;
    left: 0;
    top: 0;
    background: rgb(255 255 255 / 0%);
    border-radius: 100px;
    transition: all 300ms ease 0s;
}

#mainvisual .inner h3 a:hover {
    background: rgb(255 255 255 / 30%);
}

#mainvisual .inner .mv_text {
    max-width: 517px;
    margin: 0 auto 30px;
    display: flex;
    justify-content: space-between;
}

#mainvisual .inner .mv_text a:hover {
    opacity: 0.9;
}


/* #mainvisual .inner h3::after{
	content: "";
	position: absolute;
	width:200px;
	height: 200px;
	top: 0;
	right: 0;
	z-index: 999;
} */

#mainvisual .inner .naika_link {
    display: block;
    background: rgb(239 115 115 / 80%);
    border-radius: 15px;
    color: #ffffff;
    font-size: 18px;
    font-weight: bold;
    text-align: center;
    width: 260px;
    margin: 0 auto;
    padding: 20px 0;
    line-height: 1;
    letter-spacing: 1px;
}

#mainvisual .inner .naika_link:hover {
    background: rgb(239 115 115);
}

#mainvisual .kinshiclinic_bnr {
    position: absolute;
    left: 60px;
    bottom: 30px
}

#mainvisual .kinshiclinic_bnr img {
    max-width: 340px;
    width: 100%;
}

@media screen and (max-width:768px) {
    /* SP */
    /* スマホ */
    #mainvisual {
        height: 450px;
    }
    #mainvisual .inner {
        position: absolute;
        margin: 0 auto;
        width: 100%;
        top: 0;
    }
    #mainvisual .mainvisual_slide {
        height: 450px;
    }
    /* キャッチフレーズ */
    #mainvisual .inner h1 {
        font-size: 20px;
        line-height: 28px;
        max-width: 90%;
        margin: 0 auto;
    }
    #mainvisual .inner h2 {
        font-size: 16px;
        line-height: 22px;
        max-width: 90%;
        margin: 15px auto;
    }
    #mainvisual .inner h3 {
        max-width: 80%;
    }
    #mainvisual .inner .mv_text {
        max-width: 80%;
    }
    #mainvisual .inner .naika_link {
        font-size: 15px;
        width: 200px;
    }
    #mainvisual .kinshiclinic_bnr {
        position: absolute;
        left: 0;
        right: 0;
        margin: auto;
        width: max-content;
        bottom: -150px;
    }
    #mainvisual .inner h3 a {
        width: 126px;
        height: 126px;
    }
    #mainvisual .inner .mv_text a {
        width: 126px;
        height: 126px;
    }
}

@media screen and (max-width:540px) {
    #mainvisual .inner h3 a {
        width: 30%;
    }
    #mainvisual .inner h3 a:hover {
        background: rgb(255 255 255 / 0%);
    }
    #mainvisual .inner .mv_text a {
        width: 30%;
    }
    #mainvisual .inner .mv_text a:hover {
        background: rgb(255 255 255 / 0%);
    }
}


/* =================================== */


/* お知らせ */


/* =================================== */

#top_topics {
    padding: 20px 0;
}

#top_topics .title {
    width: 28%;
    float: left;
    text-align: center;
}

#top_topics .title h2 {
    text-align: center;
    font-size: 1.5em;
    line-height: 1.7em;
    padding: 0;
    margin-bottom: 10px;
}

#top_topics .topicsIn {
    width: 98%;
    /* IE8以下とAndroid4.3以下用フォールバック */
    width: -webkit-calc(100% - 30%);
    width: calc(100% - 30%);
    float: left;
}

#top_topics .topicsIn dl {
    padding: 0 0 5px 0;
    margin: 0;
}

#top_topics .topicsIn dl:after {
    content: "";
    clear: both;
    display: block;
}

#top_topics .topicsIn dt {
    width: 6em;
    float: left;
    text-align: right;
}

#top_topics .topicsIn dd {
    width: 98%;
    /* IE8以下とAndroid4.3以下用フォールバック */
    width: -webkit-calc(100% - 7em);
    width: calc(100% - 7em);
    float: right;
    text-align: left;
}

#top_topics .topicsIn dt,
#top_topics .topicsIn dd {
    padding: 0;
    margin: 0;
}

#top_topics .topicsIn a {
    text-decoration: none;
    color: #4c4736;
}

#top_topics .topicsIn a:hover {
    color: #699d0e;
}

@media screen and (max-width: 768px) {
    /* SP */
    #top_topics {
        float: none;
        width: 100%;
        margin: 0 auto;
    }
    #top_topics .title h2 {
        float: none;
        width: 100%;
        font-size: 1.6rem;
        margin: 0;
    }
    #top_topics .topicsIn {
        float: none;
        width: 100%;
        /* IE8以下とAndroid4.3以下用フォールバック */
        width: -webkit-calc(100% - 0);
        width: calc(100% - 0);
    }
    #top_topics .topicsIn {
        width: 90%;
        position: relative;
        margin: 0 auto;
        padding-bottom: 20px;
    }
    #top_topics .topicsIn dl {
        margin: 0;
    }
    #top_topics .topicsIn dt {
        width: 100%;
        float: none;
        text-align: left;
        font-size: 0.8rem;
    }
    #top_topics .topicsIn dd {
        width: 100%;
        float: none;
    }
    #top_topics {
        padding: 20px 0 0 0;
    }
    #top_topics .title {
        width: 100%;
        float: none;
    }
    .topicsIn .content {
        float: none;
        width: 100%;
    }
    #top_topics .title h2 {
        font-size: 1.5rem;
        line-height: 1.5rem;
        padding: 20px 0;
    }
    #top_topics .title h2 span {
        font-size: 0.8rem;
    }
}

.medicalcare {
    width: 100%;
}

.medicalcare .inner {
    box-sizing: border-box;
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    padding: 30px 0;
    display: flex;
    flex-wrap: wrap;
    height: auto;
}

.medicalcare dl {
    box-sizing: border-box;
    width: 33.33%;
    padding: 15px;
    vertical-align: top;
}

.medicalcare dl dt {
    position: relative;
    margin-bottom: 5px;
}

.medicalcare dl dt h2 {
    box-sizing: border-box;
    width: 100%;
    position: absolute;
    color: #fff;
    /*文字を白に*/
    font-size: 18px;
    padding: 10px;
    line-height: 1;
    /*行高は1に*/
    text-align: center;
    background-color: rgba(76, 71, 54, 0.9);
    bottom: 0;
    /*画像の上に配置*/
    left: 50%;
    -ms-transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    transform: translate(-50%, 0);
}

.medicalcare dl a:hover dt h2 {
    background-color: rgba(104, 100, 90, 0.8);
}

.medicalcare dl a dd {
    color: #4c4736;
}

.medicalcare dl a:hover dd {
    color: #4c4736;
}

@media screen and (max-width: 960px) {
    /* tablet */
    .medicalcare dl dt h2 {
        font-size: 14px;
    }
}

@media screen and (max-width: 768px) {
    /* SP */
    .medicalcare .inner {
        margin: 0 auto;
        width: 94%;
    }
    .medicalcare dl {
        width: 50%;
        padding: 5px;
    }
    .medicalcare dl dt h2 {
        font-size: 14px;
    }
}

#concept {
    padding: 30px 0;
}

#concept h2 {
    text-indent: -1em;
    padding: 0 0 0 0.5em;
    margin-bottom: 0;
}

#concept .inner dl {
    background-color: #fff;
    margin-bottom: 30px;
}

#concept .inner dl dt,
#concept .inner dl dd {
    padding: 0;
    margin: 0;
    width: 50%;
    vertical-align: top;
}

#concept .inner dl:nth-child(1) dt,
#concept .inner dl:nth-child(1) dd {
    height: 330px;
}

#concept .inner dl:nth-child(2) dt,
#concept .inner dl:nth-child(2) dd {
    height: 330px;
}

#concept .inner dl dd h2 {
    font-size: 1.2rem;
    line-height: 1.5;
    margin-bottom: 5px;
}

#concept .inner dl dd p {
    margin-bottom: 20px;
}

#concept .inner dl:nth-child(1) dt {
    float: right;
    background: no-repeat url("../images/top/about_img01.jpg");
    background-size: cover;
    background-position: center center;
}

#concept .inner dl:nth-child(1) dd {
    float: left;
}

#concept .inner dl:nth-child(2) {}

#concept .inner dl:nth-child(2) dt {
    float: left;
    background: no-repeat url("../images/top/about_img02.jpg");
    background-size: cover;
    background-position: center center;
}

#concept .inner dl:nth-child(2) dd {
    float: right;
}

#concept .inner dd {
    position: relative;
    padding: 0;
    margin: 0 auto;
}

#concept .inner dl dd .box {
    max-width: 520px;
    position: absolute;
    margin: 0 auto;
    padding: 40px 3%;
    box-sizing: border-box;
}

#concept .inner dl:nth-child(1) dd .box {
    right: 30px;
}

#concept .inner dl:nth-child(2) dd .box {
    left: 30px;
}

#concept .inner dl dd a.btn-type01 {
    margin-bottom: 5px;
    min-width: 160px;
}

#concept .inner dl:nth-child(1) dd .btn_container {
    text-align: right;
}

#concept .inner dl:nth-child(2) dd .btn_container {
    text-align: left;
}

@media screen and (max-width: 960px) {
    /* tablet */
    #concept .inner dl dd .button_area a.btn-type01 {
        margin-bottom: 5px;
    }
    #concept .inner dl:nth-child(1) dd .btn_container {
        text-align: center;
    }
    #concept .inner dl:nth-child(2) dd .btn_container {
        text-align: center;
    }
}

@media screen and (max-width: 768px) {
    /* SP */
    #concept .inner dl:nth-child(1) dd .box,
    #concept .inner dl:nth-child(2) dd .box {
        padding: 20px 3%;
        margin: 0 auto;
        max-width: 100%;
        height: auto;
        position: relative;
        right: 0;
        left: 0;
    }
    #concept .inner dl:nth-child(1) dt,
    #concept .inner dl:nth-child(2) dt {
        height: 200px;
        width: 100%;
        float: none;
    }
    #concept .inner dl:nth-child(1) dd,
    #concept .inner dl:nth-child(2) dd {
        height: auto;
        width: 100%;
        float: none;
        padding: 0;
        margin: 0 auto;
    }
    #concept .inner dl dd h2 {
        font-size: 1rem;
        line-height: 1.5;
    }
    #concept .inner dl dd .button_area a.btn-type01 {
        box-sizing: border-box;
        width: 100%;
        margin-bottom: 10px;
    }
}

#message {
    padding: 30px 0;
}

#message .title {
    text-align: center;
}

#message .title h2 {
    font-size: 30px;
    line-height: 1.6;
}

#message .inner {
    padding: 60px 4%;
    max-width: 980px;
    box-sizing: border-box;
    margin: 20px auto;
}

#message .inner dl {}

#message .inner dl dt {
    width: 25%;
    float: right;
}

#message .inner dl dd {
    width: 70%;
    float: left;
}

#message .inner dl dd h2,
#message .inner dl dd p {
    margin-bottom: 0.5em;
}

@media screen and (max-width: 768px) {
    /* SP */
    #message .inner dl dt {
        float: none;
        width: 100%;
        text-align: center;
    }
    #message .inner dl dt img {
        width: 50%;
        margin: 0 auto 10px auto;
    }
    #message .inner dl dd {
        float: none;
        width: 100%;
    }
    #message .inner dl dd h2 {
        font-size: 1.2rem;
    }
    #message .title h2 {
        font-size: 24px;
    }
}


/* =================================== */


/* main_secondpage */


/* =================================== */

.main_secondpage {
    padding: 0;
    margin: 0;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center middle;
    height: 200px;
    background-color: #f2f2f2;
    /* 上下左右真ん中 */
    display: flex;
    /* 子要素をflexboxで揃える */
    flex-direction: column;
    /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center;
    /* 子要素をflexboxにより中央に配置する */
    align-items: center;
    /* 子要素をflexboxにより中央に配置する */
    position: relative;
}

.main_secondpage .inner {
    position: relative;
}

.main_secondpage h1 {
    padding: 10px 0;
    font-weight: bold;
    text-align: center;
    font-size: 1.8rem;
    line-height: 2rem;
    letter-spacing: 1px;
    color: #fff;
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.3);
    /*padding: 100px 0;*/
}

.main_secondpage h1 span {
    font-size: 16px;
}

.main_secondpage#main_common {
    background-image: url("../images/title/main_common.jpg");
}

.main_secondpage#main_about {
    background-image: url("../images/title/main_about.jpg");
}

.main_secondpage#main_visit {
    background-image: url("../images/title/main_visit.jpg");
}

.main_secondpage#main_daysurgery {
    background-image: url("../images/title/main_daysurgery.jpg");
}

.main_secondpage#main_medicalcare {
    background-image: url("../images/title/main_medicalcare.jpg");
}

@media screen and (max-width: 768px) {
    /* tablet */
    .main_secondpage {
        height: 200px;
        background-size: cover;
    }
}

@media screen and (max-width: 640px) {
    /* SP */
    .main_secondpage {
        height: 180px;
        background-size: auto 100%;
        background-position: 60% top;
    }
    .main_secondpage h1 {
        font-size: 1.4rem;
        line-height: 2rem;
        padding: 0;
    }
}


/* =================================== */


/*	院内紹介、ごあいさつ
/* =================================== */

.rijicho .rinen .image {
    float: right;
    width: 38%;
}

.rijicho .rinen dl {
    float: left;
    width: 60%;
    margin-bottom: 10px;
}

.rijicho .rinen dl dt {
    float: left;
    margin-right: 20px;
    width: 55px;
}

.rijicho .rinen dl dd {
    font-size: 1.2em;
    line-height: 1.6;
    font-weight: bold;
    width: 98%;
    /* IE8以下とAndroid4.3以下用フォールバック */
    width: -webkit-calc(100% - 80px);
    width: calc(100% - 80px);
    float: left;
}

@media screen and (max-width: 768px) {
    /* SP */
    .rijicho .rinen .image {
        float: none;
        width: 50%;
        margin: 0 auto 20px auto;
    }
    .rijicho .rinen dl {
        float: none;
        width: 100%;
        margin-bottom: 10px;
    }
    .rijicho .rinen dl dt {
        margin-right: 15px;
    }
    .rijicho .rinen dl dd {
        font-size: 1em;
        line-height: 1.5;
    }
}

.profile {
    border: 1px solid #bbb;
    padding: 15px 4% 10px 4%;
    vertical-align: top;
    margin-bottom: 15px;
}

.profile:after {
    content: "";
    clear: both;
    display: block;
}

.profile p {
    padding: 0 0 10px 0;
    margin: 0;
}

.profile ul {
    box-sizing: border-box;
    padding: 0 10px 10px 0;
    margin: 0;
    vertical-align: top;
}

.profile ul li {
    text-align: left;
}

.profile.rijicho ul {
    display: inline-block;
}

.profile.rijicho ul:nth-child(1) {
    width: 60%;
}

.profile.rijicho ul:nth-child(1) {
    width: 35%;
}

@media screen and (max-width: 768px) {
    .profile.rijicho h3,
    .profile.rijicho p {
        text-align: left;
    }
    .profile.rijicho ul {
        display: block;
    }
    .profile.rijicho ul:nth-child(1) {
        width: 100%;
    }
    .profile.rijicho ul:nth-child(1) {
        width: 100%;
    }
    .profile ul {
        padding: 0;
        margin: 10px auto 20px auto;
    }
    .profile ul:last-child {
        margin: 10px auto 0 auto;
    }
}

.profile ul li {
    line-height: 1.4;
    margin-bottom: 5px;
}

.profile ul li.title {
    font-weight: bold;
}

.profile.staff:after {
    content: "";
    clear: both;
    display: block;
}

.profile.staff img {
    float: left;
    width: 16%;
}

.profile.staff table {
    float: right;
    width: 80%;
}


/* 理事だけ */


/*
.riji .profile.staff table{
	float: none;
	width: 100%;
}
*/

.profile.staff table th,
.profile.staff table td {
    vertical-align: top;
    padding: 4px 0 4px 0;
}

.profile.staff table td.name {
    font-weight: bold;
    padding-top: 10px;
    font-size: 1.2rem;
}

@media screen and (max-width: 768px) {
    /* SP */
    .profile {
        padding: 15px 4% 10px 4%;
        text-align: center;
    }
    .profile.staff img {
        float: none;
        width: 30%;
        margin: 0 auto;
    }
    .profile.staff img.noimage {
        display: none;
    }
    .profile.staff table {
        float: none;
        width: 100%;
        text-align: left;
    }
}

.content.clinic {
    margin-bottom: 140px;
}


/* slick*/

.slider_1 {
    width: 100%;
    margin: 0 auto;
}

.slick-slide {
    margin: 0px 5px;
}

.slick-slide img {
    width: 96%;
}

.slick-prev:before,
.slick-next:before {
    color: black;
}

.slick-slide {
    transition: all ease-in-out .3s;
    opacity: .2;
}

.slick-active {
    opacity: .5;
}

.slick-current {
    opacity: 1;
}

@media screen and (max-width: 768px) {
    /* SP */
    .content.clinic {
        margin-bottom: 60px;
    }
    .slider_1 {
        width: 90%;
    }
}


/* slick end*/

.facilities ul.gallery {
    box-sizing: border-box;
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    height: auto;
}

.facilities ul.gallery li {
    box-sizing: border-box;
    width: 33.33%;
    padding: 10px;
    text-align: center;
}

.facilities ul.gallery li p {
    text-align: left;
    font-size: 14px;
    line-height: 20px;
}

@media screen and (max-width: 768px) {
    /* SP */
    .facilities ul.gallery li {
        width: 50%;
        padding: 10px;
    }
}


/* =================================== */


/*	サイトマップ
/* =================================== */

.sitemap {
    padding-bottom: 50px;
}

.sitemap ul {
    box-sizing: border-box;
    width: 45%;
    display: inline-block;
    vertical-align: top;
}

.sitemap ul:nth-child(odd) {
    padding-left: 40px;
}

.sitemap ul>li {
    padding: 0;
    margin: 0 0 8px 0;
}

.sitemap ul>li:before {
    content: "・";
}

.sitemap ul li ol {
    list-style: none;
    padding: 0;
    margin: 0 0 0.8em 1.4em;
}

.sitemap ul>li>ol>li:before {
    content: "- ";
}

.sitemap a {
    color: #4c4736;
    text-decoration: none;
    transition: .2s;
}

.sitemap a:hover {
    color: #699d0e;
    text-decoration: none;
}

@media screen and (max-width: 768px) {
    /* SP */
    .sitemap ul {
        width: 90%;
        display: block;
    }
    .sitemap ul:nth-child(odd) {
        padding-left: 0;
    }
}


/* =================================== */


/*	診療案内トップ
/* =================================== */

.medicalcare.-medicaltop {
    width: 100%;
    padding-bottom: 50px;
}

.medicalcare.-medicaltop .inner {
    box-sizing: border-box;
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    height: auto;
    padding: 30px 0;
}

.box_gray {
    padding: 30px 5% 20px 5%;
    margin: 0 auto 10px auto;
    background-color: #f6f6f6;
}

.box_gray h3 {
    margin-bottom: 10px;
}

.text_bg {
    background-color: #699d0e;
    color: #fff;
    padding: 4px 0.6em;
    font-size: 1em;
    line-height: 1em;
    margin: 0 8px 5px 0;
}

.box1 {
    padding: 15px 4% 15px 4%;
    margin: 0 auto 15px auto;
    border: 1px solid #ccc;
    box-sizing: border-box;
}

.box1 ul {
    padding: 0;
}

@media screen and (max-width: 768px) {
    /* SP */
    .box1 {
        padding: 15px 5% 15px 6%;
    }
}

.box1 h3 {
    margin-bottom: 10px;
    color: #699d0e;
}
@media screen and (max-width: 768px) {
    .box1 h3 {
        line-height: 2;
    }
}


.box1 h4 {
    margin-bottom: 10px;
}

ul.list {
    margin: 10px 0 20px 1em;
}

ul.list li {
    margin-bottom: 15px;
}

ul.disc li {
    list-style: disc;
}

ul.list_colum {
    padding: 0;
    margin: 0;
}

ul.list_colum li {
    display: inline-block;
    margin-right: 2%;
    width: 23%;
    box-sizing: border-box;
}

ul.list_colum li:nth-child(4n) {
    margin-right: 0;
}

@media screen and (max-width: 768px) {
    /* SP */
    ul.list_colum li {
        margin-right: 2%;
        width: 48%;
    }
    ul.list_colum li:nth-child(2n) {
        margin-right: 0;
    }
}

.movie_container {
    text-align: center
}

.movie_container video {
    width: 600px;
    margin: 0 auto;
}

@media screen and (max-width: 768px) {
    /* SP */
    .movie_container video {
        width: 90%;
    }
}

.flow {
    position: relative;
    margin-bottom: 50px;
}

.flow h3 {
    text-align: center;
    padding: 30px 2em;
    color: #699d0e;
    font-size: 28px;
}

@media screen and (max-width: 768px) {
    .flow h3 {
        padding: 20px 0;
        font-size: 1.6rem;
        line-height: 1.4;
    }
}

.flow p {
    text-align: center;
}

.flow:after {
    width: 0;
    height: 0;
    border-left: 60px solid transparent;
    border-right: 60px solid transparent;
    border-top: 30px solid #dbe4ca;
    position: absolute;
    left: 50%;
    margin-left: -60px;
}

.flow .box {
    max-width: 860px;
    margin: 0 auto 15px auto;
    border: 1px solid #ccc;
    padding: 15px 3%;
    box-sizing: border-box;
    vertical-align: top;
}

.flow .box ul.check {
    padding: 0;
    margin: 0 0 0 0;
}

.flow .box ul.check li {
    text-align: left;
}

.flow .box ul.check li:before {
    content: "・";
}

.flow .box ul.number {
    padding: 0 0 0 0.5em;
    margin: 0 0 5px 1em;
    list-style: decimal;
}

@media screen and (max-width: 768px) {
    .flow .box ul.number {
        padding: 0 0 0 0.75em;
    }
}

.flow .box dt {
    padding: 5px 10px;
    margin-bottom: 10px;
    font-weight: bold;
}

.flow .box.box_1 dt {
    background-color: #EAF5E5;
}

.flow .box.box_2 dt {
    background-color: #f4e7ec;
}

.flow .box.box_3 dt {
    background-color: #E4EEF5;
}


/* =================================== */


/*	訪問診療
/* =================================== */

.visit_kensa img {
    max-width: 230px;
    float: left;
    margin-right: 30px;
}

@media screen and (max-width: 768px) {
    .visit_kensa img {
        max-width: 35%;
    }
}

.visit_faci ul.img_3 {
    margin: 20px auto;
    width: 100%;
}

.visit_faci ul.img_3 li {
    box-sizing: border-box;
    padding: 5px;
    width: 33%;
    display: inline-block;
    vertical-align: top;
}

.visit_faci ul.img_3 li img {
    padding: 0;
    margin: 0 auto;
    font-size: 1px;
    line-height: 1px;
}

@media screen and (max-width: 768px) {
    .visit_faci ul.img_3 li {
        width: 49%;
    }
    .visit_faci table.table1 th {
        width: 30%;
    }
}

.vist_flow dl {
    margin-bottom: 20px;
}

.vist_flow dt {
    background-color: #f6f6f6;
    padding: 10px;
    font-size: 1.2rem;
    line-height: 1.5;
    margin-bottom: 5px;
    font-weight: bold;
}

.vist_flow dt span {
    font-weight: normal;
    padding: 6px 10px 6px 10px;
    margin-right: 5px;
    border-radius: 3px;
    background-color: #699d0e;
    color: #fff;
    font-size: 1rem;
    line-height: 1.5;
}

.visit_documents ol {
    list-style: disc;
}

.visit_message {
    text-align: center;
    font-size: 1.4rem;
    line-height: 1.8;
}

.visit_voice dl {
    position: relative;
    background-color: #f6f6f6;
    height: auto;
    border-bottom: 3px dotted #fff;
}

.visit_voice dl:last-of-type {
    border-bottom: 0;
    margin-bottom: 40px;
}

.visit_voice dl:after {
    content: "";
    clear: both;
    display: block;
}

.visit_voice dl dt {
    box-sizing: border-box;
    width: 15%;
    float: left;
    padding: 20px 0 20px 20px;
}

.visit_voice dl dt img {
    width: 100%;
}

.visit_voice dl dd {
    box-sizing: border-box;
    padding: 20px 3% 0 3%;
    width: 85%;
    float: right;
}

@media screen and (max-width: 768px) {
    .visit_message {
        text-align: left;
        font-size: 1.2rem;
    }
    .visit_voice dl dt {
        width: 20%;
        padding: 20px 10px 5px 5%;
    }
    .visit_voice dl dd {
        padding: 20px 5% 20px 5%;
        width: 100%;
        float: none;
    }
    .visit_voice dl dd h4 {
        font-size: 1rem;
        line-height: 1.4rem;
    }
}


/* =================================== */


/*	ブログ機能のスタイル
/* =================================== */

#blog_page {
    padding: 0;
    margin: 40px auto 80px auto;
}

#blog_page #blog_sidemenu ul {
    margin: 0 auto 30px auto;
    padding: 0;
    vertical-align: top;
}

#blog_page #blog_sidemenu ul>li {
    margin-bottom: 20px;
}

#blog_page .date_category {
    text-align: right;
    margin-bottom: 10px;
}

.category .post-categories {
    text-align: right;
}

.category .post-categories li {
    display: inline-block;
}

.category .post-categories li a {
    padding: 4px 0.75em;
    border-radius: 1em;
    border: 1px solid #4c4736;
    color: #4c4736;
    font-size: 0.9rem;
    line-height: 1.5;
}

.category .post-categories li a:hover {
    border: 1px solid #699d0e;
    background-color: #699d0e;
    color: #fff;
}

@media screen and (max-width: 768px) {
    .post-categories {
        padding: 0;
        margin: 5px 0;
    }
}

#blog_page .contentbox {
    min-height: 200px;
}

#blog_page .nextback_btn ul {
    text-align: center;
    padding: 20px auto;
    padding: 0;
}

#blog_page .nextback_btn ul {
    text-align: center;
}

#blog_page .nextback_btn ul li {
    display: inline-block;
    padding: 10px;
}

#blog_page .nextback_btn a {
    color: #545454;
}

#blog_page .nextback_btn a:hover {
    color: #55c6ff;
}

#blog_page #blog_sidemenu h2.widgettitle {
    font-size: 18px;
    line-height: 26px;
    background-color: #f2f2f2;
    padding: 10px;
    margin: 0 auto 10px auto;
}

#blog_page #blog_sidemenu .post-date {
    font-size: 12px;
    line-height: 18px;
}

#blog_page #blog_sidemenu .widget ul {
    margin-bottom: 2.3em;
}

#blog_page #blog_sidemenu .widget ul li {
    padding: 0 0 10px 0;
    margin: 0 0 15px 0;
    font-size: 1rem;
    line-height: 1.4;
    border-bottom: 1px dotted #bbb;
}

#blog_page #blog_sidemenu .widget ul li a {}

#blog_page #blog_sidemenu .widget ul li a:hover {}

#blog_page #blog_sidemenu .widget ul li span.post-date {
    background-color: #f2f2f2;
    padding: 2px 5px;
}

#blog_page #blog_sidemenu .widget ul li a {
    color: #4c4736;
}

#blog_page #blog_sidemenu .widget ul li a:hover {
    color: #699d0e;
}

#blog_page .singlepage h2 {
    padding: 15px 10px;
    margin-bottom: 15px;
    background-color: #f2f2f2;
    border-bottom: 2px solid #699d0e;
    border-bottom: 2px solid #4c4736;
    font-size: 1.2rem;
    line-height: 1.5;
}

@media screen and (max-width: 768px) {
    /* SP */
    #blog_page {
        padding: 0;
        margin: 30px auto 50px auto;
    }
    #blog_page .contentbox {
        min-height: 100px;
    }
    #blog_page .singlepage h2 {
        padding: 10px 10px;
        font-size: 1.1em;
        line-height: 1.5;
    }
    #blog_page #blog_sidemenu h2.widgettitle,
    #blog_page #blog_sidemenu ul,
    #blog_page #blog_sidemenu ul li,
    .rightbox ul.group,
    .rightbox ul.group li {
        text-align: left;
    }
}

#blog_page .leftbox .newsList {
    min-height: 300px;
}

#blog_page .leftbox .newsList dl {
    padding: 20px 0;
    border-bottom: 1px dotted #bbb;
}

#blog_page .leftbox .newsList dl dt {
    font-size: 1.2rem;
    font-weight: bold;
    margin-bottom: 10px;
}

#blog_page .leftbox .newsList dl dt a {
    color: #4c4736;
}

#blog_page .leftbox .newsList dl dt a:hover {
    color: #699d0e;
}

#blog_page .leftbox .newsList dl dd {}

#blog_page .leftbox .newsList dl dd p.date {
    text-align: left;
    width: 8em;
    float: left;
}

.wp-pagenavi {
    text-align: center;
    padding: 30px 0;
}

.wp-pagenavi span {
    margin: 0 2em;
}

.wp-pagenavi a.page,
.wp-pagenavi span.current {
    margin: 5px 5px;
    padding: 6px 12px;
    background-color: #f2f2f2;
    color: #4c4736;
}

.wp-pagenavi a.page:hover,
.wp-pagenavi span.current {
    color: #fff;
    background-color: #4c4736;
}

.wp-pagenavi span.current {
    font-weight: bold;
}

.wp-pagenavi a.previouspostslink {
    margin: 5px 1em;
    padding: 6px 12px;
}


.alignright {
    display: block;
    margin: 0 0 0 auto!important;
}

.alignleft {
    display: block;
    margin: 0 auto 0 0!important;
}

.aligncenter {
    display: block;
    margin: 0 auto!important;
}

.category_dr {
    display: inline-block;
    margin-top: 30px;
    padding: 4px 0.75em;
    border-radius: 1em;
    border: 1px solid #4c4736;
    color: #4c4736!important;
    float: right;
    font-size: 0.9rem;
    line-height: 1.5;
}

.category_dr:hover {
    border: 1px solid #699d0e;
    background-color: #699d0e;
    color: #fff!important;
}

/* --------------------------------------------------------------- 
■ SP 費用についてのテーブル
-----------------------------------------------------------------*/
.cost-table{
    border: none;
}

.cost-table h3{
    color: #699d0e;
    font-size: 20px;
    padding: 10px 0;
}


.cost-table .table1 tr:nth-child(1){
    text-align: center;
    background: #729b2b94;
    color: #fff;
    line-height: 1.2;
    font-size: 110%;
}

.cost-table .table1 tr:nth-child(2){
    line-height: 0.8em;
    font-size: 72%;
    text-align: center;
}

.cost-table .table1 td,.cost-table .table1 th{
    text-align: center;
    width: 21vw;
    vertical-align: middle;
}

.cost-table tr span{
    text-align: left;
    font-size: 83%;
    line-height: 0;
}

.orange_txt{
    color: chocolate;
    font-weight: bold;
}

@media screen and (max-width: 768px) {
    .cost-table .table1 td,.cost-table .table1 th{
        font-size: 77%;
    }
	.cost-table .table1 .bg_gray{
          width: 21vh;
    }
}

/* --------------------------------------------------------------- 
■ 施設基準など
-----------------------------------------------------------------*/
.kijyun {
  width: 75%;
  max-width: 800px;
  margin: -20px auto 80px;
}
.kijyun h3 {
  display: inline-block;
  font-size: 16px;
  font-weight: bold;
  color: #fff;
  background: #699D0E;
  padding: 12px 36px;
}
.kijyun-wrapper {
  width: calc(100% - 2px);
  height: auto;
  border: 1px solid #BBBBBB;
}
.kijyun-wrapper > dl {
  padding: 12px 36px 24px;
}
.kijyun-wrapper dd, 
.kijyun-wrapper dt {
  color: #4C4736;
  letter-spacing: 0;
  line-height: 1.5;
}
.kijyun-wrapper dt {
  font-size: 14px;
  font-weight: 500;
  margin-top: 4px;
}
.kijyun-wrapper > dl > dt {
  font-size: 15px;
  font-weight: bold;
  margin-top: 12px;
}
.kijyun-wrapper > dl > dd {
  font-size: 14px;
  font-weight: bold;
  margin: 8px 0 0 8px;
}

@media screen and (max-width: 768px) {
  .kijyun {
    width: 100%;
    margin: -10px auto 50px;
  }
  .kijyun h3 {
    display: block;
    text-align: center;
  }
  .kijyun-wrapper > dl {
    padding: 8px 16px 32px;
  }
  .kijyun-wrapper dt {
    font-size: 13px;
  }
  .kijyun-wrapper > dl > dt {
    font-size: 14px;
    margin-top: 8px;
  }
  .kijyun-wrapper > dl > dd {
    font-size: 13px;
    margin-top: 4px;
  }
}


/* 2023.6.16追記 */
.list-show {
    list-style-type: disc;
    margin-left: 1.5em;
}

.text-center {
    text-align: center;
}

.ganken-row {
    display: flex;
    flex-wrap: wrap;
}

.ganken-row .wp-caption-text {
    text-align: center;
}

.big2 {
    font-size: 20px;
    font-weight: 700;
    color: #699d0e;
}

.sjt {
    margin: 30px 0;
    padding: 15px 15px;
    border: 1px solid #ddd;
}

ol.rg.sjts {
    margin-left: 1.5em;
    padding-left: 0px;
}

ol.rg.sjts li {
    margin-bottom: 5px;
}

.txt.po {
    display: inline-block;
    border-bottom: 1px solid #ccc;
    padding: 0;
    font-weight: bold;
}