@charset "utf-8";
/* CSS Document */



/*==================================================
スタート時は要素自体を透過0にするためのopacity:0;を指定する
===================================*/

.box{
opacity: 0;
}

/*==================================================
ふわっ
===================================*/

.fadeUp {
animation-name:fadeUpAnime;
animation-duration:1.5s;
animation-fill-mode:forwards;
opacity: 0;
}
@keyframes fadeUpAnime{
from {
opacity: 0;
transform: translateY(100px);
}

to {
opacity: 1;
transform: translateY(0);
}

}


/* PC */
@media screen and (min-width:751px) {


.wrapper {
   overflow: hidden;
}


/* header */

header{
width: 100%;
display: flex;
align-items: flex-start;
flex-wrap: wrap;
position: relative;
background: #fff;
height: 60px;
}


.header1{
    width: 980px;
    margin: 7px auto 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}

.header2{
width: 400px;
}

.header2 h1{

}

.header2 h1 a{
display: block;
}

.header2 h1 a img{
width: 100%;
}
.header3{
z-index:1;
}

.header4{
width: 100%;
text-align: center;
}

.header4 a{
width: 100%;
display: block;
font-size: 3.4rem;
line-height: 1;
/*font-family: "Zen Kaku Gothic New", serif;    */
font-family: 'Zen Old Mincho', serif;
font-weight: 600;    
color: #442f06;    
}

.header4 a span{

}

.header4 a span::before{
content: "";
background: url("../images/ic_tel.svg");
display: inline-block;
width: 2.5rem;
height: 2.5rem;
margin-right: 1rem;
}

.header5{
width: 100%;
text-align: center;
font-size: 1.8rem;
font-weight: 700;
letter-spacing: .15rem;
color: #6b3e03;
margin: 2rem 0 8px;
background: #fff;
padding: 3px 0;
border-radius: 50px;
border: 1px solid #6b3e03;
position: relative;
}

/*.header5::before {
position: absolute;
content:"";
background: url(../images/ilst_car.svg);
background-repeat:no-repeat;
background-position:right;
display:block;
width: 100px;
height: 20px;
top:-16px;
right:4px;
}
*/

.header6{
width: 300px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
font-size: 1.4rem;
font-weight: 500;
line-height: 1.4;
}

.header7{
width: 100%;
display: flex;
flex-wrap: wrap;
margin: 0 0 3px 0;
}

.header8{
width: 7rem;
}

.header8 span{
display: inline-block;
text-align: left;

line-height: 1;
width: 100%;
}

/*.header9{
width: calc(100% - 7.4rem);
}*/

.header10{
width: 100%;
display: flex;
flex-wrap: wrap;
}

.header11{
width: 7rem;
}

.header11 span{
display: inline-block;
text-align: left;
line-height: 1;
width: 100%;
color: #ef3d46;
}

.header12{
width: calc(100% - 7.4rem);
color: #ef3d46;
}





.header13{
width: 100%;
display: flex !important;
align-items: center;
justify-content: center;
height: 3.5rem;
font-size: 1.3rem;
color: #ffffff;
letter-spacing: .1rem;
padding: 1.5rem 0;
text-align: center;
background: #239f67;
}

.header13 span{
}

.header14{
width: 100%;
font-size: 1.3rem;
letter-spacing: 0;
}

.header15{
width: 100%;
}





/* header */



.link{
    width: 100%;
}    
.link a {
    color: #6aa7c9;
    border-bottom: 1px #6aa7c9 dotted;
    padding: 0 0 5px;
    font-size: 1.6rem;
	line-height: 2em;
}    












/* nav */


/*========= ドロップダウンのためのCSS ===============*/

/*==ナビゲーション全体の設定*/
nav{
text-align: center;
padding: 20px 0 20px;
height: 120px;    

}

/*ナビゲーションを横並びに*/
nav ul{
/*2階層目の基点にするためrelativeを指定*/
position: relative;
list-style: none;
display: flex;
justify-content: space-between;
width: 900px;
margin: 0 auto;
border-radius: 6px;
}

nav ul li{
border-right: 1px dotted #a9a9a9;
width: 16.6%;    
}

nav ul li:first-child{
border-left: 1px dotted #a9a9a9;
}    
    
nav ul li li{
margin: 0 0 0 0;
}


/*2階層目以降は横並びにしない*/
nav ul ul{
display: block;
}

/*ナビゲーションのリンク設定*/
nav ul li a{
/*矢印の基点にするためrelativeを指定*/
  position: relative;
  display: block;
  text-decoration: none;
  transition: all .3s;
  font-size: 1.7rem;
  font-weight: 500;
  letter-spacing: .15rem;
  font-family: "Zen Maru Gothic";
  line-height: 1.3;
  color: #442f06;
}

nav ul li li a{
padding:20px;
}

nav ul li a:hover{
/*color: #292e38;   */ 
        opacity: 0.5;
}

/*==矢印の設定*/

/*2階層目を持つliの矢印の設定*/

nav ul li.has-child > a::before{
content:'';
position: absolute;
left:0;
top:60px;
width:6px;
height:6px;
border-top: 2px solid #fff;
border-right:2px solid #fff;
transform: rotate(135deg);
}

/*==2階層目以降の画像設定*/

nav ul li.has-child img{
width: 80%;
height: auto;
transition: all .5s;
vertical-align: bottom;
border-radius: 8px 3px 8px 3px;
}

/*hoverしたら画像拡大*/
nav ul li.has-child img:hover{
transform: scale(1.2);
}

nav ul li.has-child dt{
overflow: hidden;
margin: 0 0 16px 0;
}

nav ul li.has-child dd{
font-size: 1.6rem;
font-weight: 500;
letter-spacing: .05rem;
}

@media screen and (max-width:1200px){
nav ul li.has-child dt{
height: 12vh;
}

}

/*== 2層目の設定 */

nav li.has-child ul{
position: absolute;
top: 84px;
z-index: 4;
display: flex;
justify-content: flex-start;
flex-wrap: wrap;
visibility: hidden;
opacity: 0;
transition: all .4s;
border-radius: 0 0 6px 6px;
}

nav li.has-child ul.has-child1{
width: 240px;
left: 259px;
}

nav li.has-child ul.has-child2{
width: 220px;
left: 428px;
}

nav li.has-child ul.has-child3{
width: 220px;
left: 645px;
}

nav li.has-child ul.has-child4{
width: 220px;
left: 735px;
}

/*hoverしたら表示*/
nav li.has-child:hover > ul{
visibility: visible;
opacity: 1;
z-index: 100;
}

/*各ナビゲーション横幅*/
nav li.has-child ul li{
width: 260px;
background: #43ab57;
}

/*ナビゲーションaタグの形状*/
nav li.has-child ul li a{
color: #fff;
padding: 8px 15px 8px 30px;
font-size: 1.7rem;
font-weight: 500;
letter-spacing: 0;
text-align: left;
  text-shadow: 1px 1px 3px #237833;
}

nav li.has-child ul li a:hover,
nav li.has-child ul li a:active{
background: #57b96a;
opacity: .9;
}


.navbnr{
display: flex;
align-items: center;
}

.navbnr a{
display: inline-block;
background: #02b2bf;
padding: 15px 18px;
color: #fff;
border-radius: 12px 5px 12px 5px;
}

.navbnr a:hover{
background: #25C5D0;
color: #fff;
}






/* nav */











/* slider */

.swiper__w {
    width: 100%;
    position: relative;
}
/* 両脇のイラスト */
 
.swiper-illustration {
    position: absolute;
    bottom: 0;
    width: auto;
    height: 65%; 
    z-index: 2;
}

/* 左のイラスト */
.left {
    left: 0; /* 左端に固定 */

}

/* 右のイラスト */
.right {
    right: 0; /* 右端に固定 */

}
    
.swiper__w {
   /* width: 90%;
    margin: 0 5%;*/
    width: 100%;
    position: relative; /* イラストの絶対配置を可能にする */
    overflow: hidden; /* はみ出し防止 */
    /*border-radius: 80px 80px 0 0;*/
}

.swiper {
    width: 100%;
    height: calc(100vh - 80px); /* ヘッダーの高さを引く */
}

/* 下に配置するイラスト（幅いっぱい） */
    
.swiper-illustration.top {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%; 
    height: auto;
    max-height: 100vh; 
    object-fit: cover; 
    z-index: 2;
}
   /* 白い曲線 */
.swiper-wave {
    position: absolute;
    bottom: -2px; /* 自然につなげる */
    left: 0;
    width: 100%;
    /*height: 120px;  曲線の高さを調整 */
   /* background: url('../images/ill_b2.png') no-repeat center bottom / cover;
    background: url('../images/ill_b3.png') no-repeat center bottom / cover;*/
    z-index: 2;
}
  
    
.swiper {
    width: 100%;
   /* height: calc(100vh - 250px);PC画面に合わせて％高さを指定*/
    height: calc(92rem - 250px);
    position: relative;
}

.swiper-slide {
text-align: center;
font-size: 18px;
background: #fff;

/* Center slide text vertically */
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
-webkit-justify-content: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
-webkit-align-items: center;
align-items: center;
}

.swiper-slide img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}

.swiper-slide:nth-child(2) img {/*先生の写真のみ調整*/
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}



 .swiper_txtb{
    position: absolute;
    left: 20%;
    top: 128px;
    z-index: 10;
    text-align: center;
} 
.swiper_txt1 {
display: block;
text-align: center;
}

.swiper_txt1 img {
    display: block;
    width: 700px;
}
    
  .swiper_txt{
    position: absolute;
    right: 8%;
    bottom: 100px;
    width: 600px;
    z-index: 10;
    text-align: center;
}
.swiper_txt2 {
display: block;
text-align: center;
}

.swiper_txt2 img {
    display: block;
    width: 500px;
}

.swiper_txt3 {
display: block;
text-align: center;
}

.swiper_txt3 img {
    display: block;
    width: 500px;
    margin: 0 auto;
}

.swiper-button-next, .swiper-button-prev {
    display: none !important;
}

.swiper_txt4 {
    display: block;
    width: 350px;
    margin: 0 auto;
}

.swiper_txt4 img {
    display: block;
    width: 100%;
    border-radius: 10px;
}


/* slider */



/*<!--mai image-->*/
.mainimg_w{
position:relative;
width: 100%;
}

.mainimage_area{
position: relative;
top: 120px;
}

.topimage_layer{
position: absolute;
left: 6%;
top: 100px;
width: 38%;
}

.topimage_layer img{
max-width: 550px;
display: block;
width: 100%;
}

.slick_slider_w{
}

.slick_slider_u{
}

.slick_slider_u li{
width:980px;
height:820px;
}

.slick_slider_b{
z-index:1;
position : absolute;
top: 390px;
left: 50%;
transform : translate(-50%, -50%);
}

.slick_box{
    background: #ffffffcc;
    width: 580px;
    position: absolute;
    right: 100px;
    padding: 20px 30px 30px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    z-index: 1;
    top: 100px;
}

.slick_box1{
    width: 100%;
    text-align: center;
    margin: 0 0 10px 0;
    letter-spacing: .3rem;
    font-size: 2rem;
        color: #666;
}

.slick_box2{
padding: 0 0 10px 0;
width: 100%;
}

.slick_box2 img{
width: 100%;
}

.slick_box3{
width: 100%;
font-size: 1.5rem;
text-align: center;
}

.slick_box3 span{
color: #f55656;
}

.slick_box4{
width: 100%;
text-align: center;
padding: 0 0 0 0;
letter-spacing: .1rem;
font-size: 1.6rem;
color: #191e5f;
}

.slick_box5{
width: 100%;
text-align: center;
margin: 0 0 20px 0;
}

.slick_box5 a{
    width: 100%;
    display: block;
    font-size: 3.4rem;
    color: #666;
    font-weight: 600;
    line-height: 1;
    font-family: 'Asap', sans-serif;
}

.slick_box5 span::before{
    content: "";
    background: url("../images/ic_tel.svg");
    display: inline-block;
    width: 2.3rem;
    height: 2.3rem;
    margin-right: .3rem;
    vertical-align: middle;
}

.slick_box6{
width: 100%;
text-align: center;
font-size: 1.5rem;
    color: #666;

}

.slick_box6 a{
display: inline-block;
border-radius: 5px;
background: #fff;
color: #5fc6d0;
text-align: center;
padding: 15px 30px;
transition: .6s;
position: relative;
font-size: 1.6rem;
width: 250px;
box-shadow: 0px 0px 10px 0px #bfe4e4;
font-weight: bold;
}

.slick_box6 a:active,
.slick_box6 a:hover{
transform: translate(0,-3px);
opacity: .9;
}

.slick_box6 span::before{
content: "";
position: absolute;
left: 20px;
font-size: 1rem !important;
top: 50%;
transform: translateY(-50%) translateX(-50%);
margin: auto;
    color: #666;
}

.slick_box7{
    width: 100%;
    text-align: center;
}

.slick_box7 a{
    display: inline-block;
    border-radius: 5px;
    background: url(../images/bg03.jpg);
    color: #fff;
    text-align: center;
    padding: 12px 0;
    transition: .6s;
    position: relative;
    font-size: 1.5rem;
    width: 240px;
    box-shadow: 3px 3px 10px #a5c2e7;
    margin-left: 3px;
}

.slick_box7 a span::after {
    content: "";
    background: url(../images/arrow-white.svg);
    width: 1.6rem;
    height: 1.6rem;
    position: absolute;
    right: 15px;
    font-size: 1rem !important;
    top: 1.5rem;
    color: #aedce0;
}

.slick_box7 a:hover,
.slick_box7 a:active{
opacity: .8;
}

.mainimage_t{
position: absolute;
color: #009a3e;
font-size: 4rem;
letter-spacing: .3rem;
line-height: 2.5;
}

.mainimage_t span{
display: inline;
background: #ffffff;
}

.slick_box8{
width: 100%;
text-align: center;
margin: 0 0 .5rem 0;
font-size: 1.4rem;
line-height: 1.6;
letter-spacing: 0.05rem;
}


.slick_box9__w{
    width: 100%;
    margin: 15px auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
}

.slick_box9{
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
        align-items: center;
}

.slick_box10{
width: 100%;
text-align: center;
margin-bottom: .5rem;
}

.slick_box10 span{
    display: inline-block;
    text-align: center;
    font-size: 1.5rem;
    letter-spacing: 0;
    font-weight: 500;
    color: #666;
}


.slick_box11{
width: 100%;
text-align: center;
}

.slick_box11 a{
    width: 100%;
    display: block;
    font-size: 3.4rem;
    color: #666;
    font-weight: 600;
    line-height: 1;
    font-family: 'Asap', sans-serif;
}

.slick_box11 a span{

}

.slick_box11 a span::before{
    content: "";
    background: url("../images/ic_tel.svg");
    display: inline-block;
    width: 2.3rem;
    height: 2.3rem;
    margin-right: .3rem;
    vertical-align: middle;
}

.slick_box12{
text-align: center;
}

.slick_box12 a{
    width: 100%;
    display: block;
    font-size: 3rem;
color: #e9618d;
font-weight: 900;
    line-height: 1;
}

.slick_box12 a span{

}

.slick_box12 a span::before{
content: "";
background: url("../images/ic_tel2.svg");
display: inline-block;
width: 2.2rem;
height: 2.2rem;
margin: 0 7px 0 0;
vertical-align: middle;
}

.slick_box13{
color: #e9618d;
}

.slick_box14{
font-size: 1.4rem;
text-align: right;
width: 100%;
  margin-bottom: 10px;
}

.slick_box14 > span {
  color: #f1a000;
  font-weight: 700;
}


/* office-hours */
.office-hours_box{
background: #ffffffcc;
width: 700px;
display: flex;
flex-wrap: wrap;
justify-content: center;
margin: 0 auto;
padding: 80px 0 100px;
}
.office-hours0{
width: 100%;
}    
    
    .office-hours1 {
        text-align: center;
        margin: 0 0 80px 0;
    }
        .office-hours1 h2 {
        display: block;
        text-align: center;
        font-size: 4rem;
        letter-spacing: .3rem;
        color: #442f06;
        line-height: 1;
        font-family: 'Zen Maru Gothic', sans-serif;
        font-weight: 500;
    }
    

        .office-hours1 h2 span {
        display: block;
        position: relative;
    }
        .office-hours1 h2 span::before {
        font-size: 1.5rem;
        letter-spacing: .15em;
        text-align: center;
        content: "TIMETABLE";
        display: block;
        font-weight: 500;
        margin: 0 auto 10px;
        color: #8fc31f;
    }
    
    /*
.office-hours1{
width: 100%;
text-align: center;
margin: 0 0 10px 0;
letter-spacing: .3rem;
font-size: 2rem;
color: #666;
}
*/
    
.office-hours2{
padding: 0 0 10px 0;
width: 100%;
}

.office-hours2 img{
width: 100%;
}

.office-hours3{
width: 100%;
font-size: 1.5rem;
text-align: center;
}

.office-hours3 span{
color: #ea4335;
}

.office-hours6{
width: 100%;
text-align: center;
font-size: 1.5rem;
    color: #666;

}

.office-hours6 a{
display: inline-block;
border-radius: 5px;
background: #fff;
color: #5fc6d0;
text-align: center;
padding: 15px 30px;
transition: .6s;
position: relative;
font-size: 1.6rem;
width: 250px;
box-shadow: 0px 0px 10px 0px #bfe4e4;
font-weight: bold;
}

.office-hours6 a:active,
.office-hours6 a:hover{
transform: translate(0,-3px);
opacity: .9;
}

.office-hours6 span::before{
content: "";
position: absolute;
left: 20px;
font-size: 1rem !important;
top: 50%;
transform: translateY(-50%) translateX(-50%);
margin: auto;
    color: #666;
}

.office-hours7{
    width: 100%;
    text-align: center;
}

.office-hours7 a{
    display: inline-block;
    border-radius: 5px;
    background: url(../images/bg03.jpg);
    color: #fff;
    text-align: center;
    padding: 12px 0;
    transition: .6s;
    position: relative;
    font-size: 1.5rem;
    width: 240px;
    box-shadow: 3px 3px 10px #a5c2e7;
    margin-left: 3px;
}

.office-hours7 a span::after {
    content: "";
    background: url(../images/arrow-white.svg);
    width: 1.6rem;
    height: 1.6rem;
    position: absolute;
    right: 15px;
    font-size: 1rem !important;
    top: 1.5rem;
    color: #aedce0;
}

.office-hours7 a:hover,
.office-hours7 a:active{
opacity: .8;
}

.office-hours8{
width: 100%;
text-align: center;
margin: 0 0 .5rem 0;
font-size: 1.4rem;
line-height: 1.6;
letter-spacing: 0.05rem;
}


.office-hours9__w{
    width: 100%;
    margin: 15px auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    align-items: center;
}

.office-hours9{
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
        align-items: center;
}

.office-hours10{
width: 100%;
text-align: center;
margin-bottom: .5rem;
}

.office-hours10 span{
    display: inline-block;
    text-align: center;
    font-size: 1.5rem;
    letter-spacing: 0;
    font-weight: 500;
    color: #666;
}


.office-hours11{
width: 100%;
text-align: center;
}

.office-hours11 a{
    width: 100%;
    display: block;
    font-size: 3.4rem;
    color: #666;
    font-weight: 600;
    line-height: 1;
    font-family: 'Asap', sans-serif;
}

.office-hours11 a span{

}

.office-hours11 a span::before{
    content: "";
    background: url("../images/ic_tel.svg");
    display: inline-block;
    width: 2.3rem;
    height: 2.3rem;
    margin-right: .3rem;
    vertical-align: middle;
}

/* office-hours */


/* pagetop */

/*
#page-top {
    position: fixed;
    bottom: 3rem;
    right: 2rem;
    z-index: 9;
}
#page-top a {
width: 90px;
display: block;
opacity: 0.9;
transition: all .3s ease;
}
#page-top a:hover {
text-decoration: none;
opacity: .5;
}


#page-top a img{
width: 100%;
display: block;
}*/
#page-top {
    position: fixed;
    bottom: 3rem;
    right: 2rem;
    z-index: 9;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease-in-out, visibility 0.5s ease-in-out;
}

#page-top.show {
    opacity: 1;
    visibility: visible;
}

#page-top a {
    width: 70px;
    display: block;
    opacity: 0.9;
    transition: all 0.3s ease;
}

#page-top a:hover {
    text-decoration: none;
    opacity: 0.5;
}

#page-top a img{
width: 100%;
display: block;
}

/* pagetop */






/* breadcrumb */

.breadcrumb__w{
width: 100%;
margin: 0 auto;
padding: 15px 0 15px 30px;
font-size: 1.5rem;
background: #f5f5f5;
}

.breadcrumb__w ol{
padding: 0;
color: #333 !important;
margin: 0 auto;
text-align: center;
}

.breadcrumb__w ol li{
list-style:none;
display:inline;
}

.breadcrumb__w ol li a:link,
.breadcrumb__w ol li a:visited{
color:#333 !important;
}

.breadcrumb__w ol li a:hover,
.breadcrumb__w ol li a:active{
opacity: .7;
}

.breadcrumb__w ol li:last-of-type a{
color:#333 !important;
}

.breadcrumb__w ol li:last-of-type a:hover,
.breadcrumb__w ol li:last-of-type a:active{
opacity: .7;
}

/* breadcrumb */


/*特徴*/
.topfeature1{
text-align: center;
margin: 0 0 80px 0;
}
.topfeature1 h2::before{
content: "";
background: url("../images/icon_leaf.png");
display: block;
width: 43px;
height: 43px;
margin: 0 auto 10px;
}

.topfeature1 h2 span::after{
    font-size: 1.5rem;
    letter-spacing: .15em;
    text-align: center;
    content: "FEATURE";
    display: block;
    font-weight: 500;
    margin: 10px auto;
    color: #8fc31f;
}

.topfeature1 h2 span{
display: block;
position: relative;
}

.topfeature1 h2 {
    display: block;
    text-align: center;
    font-size: 4rem;
    letter-spacing: .3rem;
    color: #442f06;
    line-height: 1;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 500;
}

.topfeature2{
width: 1100px;
        margin: 0 auto;
        display: flex;
        flex-wrap: wrap;
        z-index: 2;
        position: relative;
        row-gap: 80px;
        column-gap: 50px;
        justify-content: center;  
}

.topfeature3{
width: 480px;



    
}
.topfeature3::before {
    
}
.topfeature3:first-child .topfeature10::before {
    /*content: "";
    display: block;
    background: url(../images/ic_01.svg);
    width: 100px;
    height: 100px;
    background-size: cover;
    top: 40px;
    position: relative;*/
    content: "";
    display: block;
    background: url(../images/ic_01.svg);
    width: 240px; /* 幅を指定 */
    height: 67px; /* 高さを画像の比率に合わせて指定 */
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    top: -30px;
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
    margin: 0 auto;
}
.topfeature3:nth-child(2) .topfeature10::before {
    content: "";
    display: block;
    background: url(../images/ic_02.svg);
    width: 240px; /* 幅を指定 */
    height: 67px; /* 高さを画像の比率に合わせて指定 */
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    top: -30px;
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
    margin: 0 auto;
}   
.topfeature3:nth-child(3) .topfeature10::before {
    content: "";
    display: block;
    background: url(../images/ic_03.svg);
    width: 240px; /* 幅を指定 */
    height: 67px; /* 高さを画像の比率に合わせて指定 */
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    top: -30px;
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
    margin: 0 auto;
}
  .topfeature3:nth-child(4) .topfeature10::before {
    content: "";
    display: block;
    background: url(../images/ic_04.svg);
    width: 240px; /* 幅を指定 */
    height: 67px; /* 高さを画像の比率に合わせて指定 */
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    top: -30px;
    left: 50%;
    transform: translateX(-50%);
    position: absolute;
    margin: 0 auto;
} 
    
    
    h3.topfeature_hd{
        font-family: 'Zen Maru Gothic', sans-serif;
        font-weight: 500;
        font-size: 2.5rem;
        box-sizing: border-box;
        margin: 50px 0 20px;
        color: #239f67;
        line-height: 1.5;
        letter-spacing: 0.12em;
        text-align: center;
    }
    
    
.topfeature4{
/*text-align: center;*/
letter-spacing: .2rem;
margin: 25px 0 20px 0;
line-height: 1.3;
display: flex;
align-items: center;
justify-content: center;
font-family: 'Zen Maru Gothic', sans-serif;
}

.topfeature4 span{
    line-height: 1.6;
    font-size: 2rem;
}

.topfeature4 span::before{
}


.topfeature8{
width: 100%;
font-size: 1.6rem;
line-height: 1.7;
letter-spacing: 0;
padding: 0 1vw 0 1vw;    
}

.topfeature9{
width: 100%;
}

.topfeature9 a{
    display: block;
    width: 200px;
    margin: 0 auto;
    background: #e56ca3;
    padding: 12px 0;
    text-align: center;
    letter-spacing: -.005rem;
    color: #ffffff;
    box-shadow: 6px 6px 15px #f1b2cf;
    font-weight: 500;
    font-size: 1.4rem;
    line-height: 1;
    position: relative;
    border-radius: 3px;
}

.topfeature9 a span{
display: block;
width: 100%;
}

.topfeature9 a span::after{
content: "";
background: url("../images/ic_arrow1.svg");
display: inline-block;
width: 1.6rem;
height: 1.6rem;
position: absolute;
top: 11px;
right: 8px;
}

.topfeature9 a:hover{
transform: translateY(-3px);
opacity: .5;
}

.topfeature10{
width: 100%;
text-align: center;
margin: 0 0 17px 0;
position: relative;
}

.topfeature10 img{
width: 100%; 
border-radius: 5px;    
}

.topfeature11{
margin: 50px auto 50px;  
text-align: center;   
}
.topfeature11 span{
    width: 100%;
    font-size: 2rem;
    font-weight: 500;
    
}
.topfeature12{
margin: 50px auto 50px;
width: 1000px;     
}
.topfeature12 span{
    width: 100%;
    font-size: 1.7rem;
    font-weight: 500;
    
}


/* medical */

/*.topmedical__w{
  width: 100%;
  padding: 80px 0 100px;
  background: url("../images/medi_bg.png") #deefe7;
    background-size: cover,auto;
 position: relative;
}*/
    .topmedical__w{
 width: 100%;
  padding: 80px 0;
  background: url("../images/bg_cta.jpg") #deefe7;
    background-size: cover,auto;
 position: relative;
		
 /*width: 100%;
  clear: both;
  position: relative;
  background: url("../images/medi_bg.png") #deefe7;
  background: linear-gradient(to bottom, #ecf7f3 40%, #ecf7f3 72%, rgba(236, 247, 243, 0) 80%, rgba(236, 247, 243, 0) 100%);
  padding: 80px 0 0;*/	
		
		
}
 /*.topmedical__w ::before {
    content: '';
    position: absolute;
    background: url("../images/border_smooth_w.png") no-repeat top center;
    background-size: cover;
    width: 100%;
    height: 171px;
    top: -1px;
    left: 0;
    right: 0;
    margin: 0 auto; }
   */


.topmedical1{
text-align: center;
margin: 0 0 40px 0;
}

.topmedical1 h2{
display: block;
    text-align: center;
    font-size: 4.8rem;
    letter-spacing: .3rem;
    color: #fff;
    line-height: 1;
    font-family: 'Zen Maru Gothic', sans-serif;
	text-shadow: #407457 2px 0 10px;
    font-weight: 500;
}

.topmedical1 h2 span{
    display: block;
    position: relative;
}
/*.topmedical1 h2::before{
content: "";
background: url("../images/icon_leaf.png");
display: block;
width: 43px;
height: 43px;
margin: 0 auto 10px;
}*/

.topmedical1 h2 span::after{
font-size: 1.5rem;
    letter-spacing: .15em;
    text-align: center;
    content: "MEDICAL";
    display: block;
    font-weight: 500;
    margin: 10px auto;
    color: #fff;
}
.topmedical1 p{
display: block;
    text-align: center;
    font-size: 1.6rem;
    letter-spacing: .3rem;
	margin-top: 3.2rem;
    color: #fff;
    line-height: 2;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 500;
	text-shadow: #407457 2px 0 10px;
}

.topmedical2{
/*width: 810px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
z-index: 9;
        position: relative;    */
width: 960px;
    margin: 0 auto 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    position: relative;
    grid-gap: 20px;
    
}

/*追加*/
.topsubject_box {
    width: calc((100% - 60px) / 3);
    text-align: center;
    border-radius: 20px;
}

/*.topsubject_box a {
          width: 100%;
        padding: 3.5rem 0;
        display: flex;
        height: 100%;
        border-radius: 20px;
        background: #ffffff;
        transition: all .2s;
        color: #442f06;
        position: relative;
        background-repeat: no-repeat;
        background-size: cover;
        border: solid 2px #d3e3cc;
}*/



	
.topsubject_box .waku {
          width: 100%;
        padding: 3.5rem 0;
        display: flex;
        height: 100%;
        border-radius: 10px;
        background: #ffffff;
        transition: all .2s;
        color: #442f06;
        position: relative;
        background-repeat: no-repeat;
        background-size: cover;
        border: solid 2px #d3e3cc;
}
    
.topsubject_box2 {
    /*width: 250px;
    text-align: center;
    border-radius: 20px;
    margin: 0;
    transition: all .3s;*/
    width: 250px;
    text-align: center;
    border-radius: 20px;
    margin: 0;
    transition: all .3s;
    z-index: 2;
    position: relative;

}
    
 .popupstyle{
        width: 100%;
  padding: 3rem 0;
  display: flex;
  height: 100%;
  border-radius: 10px;
  background: #ffffff;
  transition: all .3s;
  color: #666;
  position: relative;
  box-shadow: 10px 10px 5px rgb(194 223 235);
  background-repeat: no-repeat;
  background-size: cover;
        
    }    
.topsubject_box div.icon {
    width: 9rem;
    height: 9rem;
    display: block;
    margin: 0 auto 10px;
    background: url("../images/ic_bg.png");
    background-size: cover;
    
}
.topsubject_box a:hover,
.topsubject_box a:active{
/*opacity: .6;*/
transform: translateY(-3px);
box-shadow: 0 5px 0 rgb(150 211 126 / 30%);  
}
    
/* link先なし */
.topsubject_box .no-hover {  
    width: 100%;
    padding: 1rem 0;
    display: flex;
    height: 100%;
    border-radius: 20px;
    background: #ffffff;
    transition: all .2s;
    color: #442f06;
    position: relative;
    background-repeat: no-repeat;
    background-size: cover;
    border: solid 2px #d3e3cc;
}
.no-hover:hover, .no-hover:active {
    transform: none;
    box-shadow: none;
    cursor: default;
}
.topsubject_box .no-hover div.icon {
        width: 12rem;
        height: 12rem;
        display: block;
        margin: 0 auto 0;
        background: url(../images/ic_bg.png);
        background-size: cover;
    }    
.topsubject_box .no-hover span {
        text-align: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-content: center;
        height: 4rem;
        font-size: 1.9rem;
        line-height: 1.4;
        letter-spacing: .1rem;
        font-weight: 500;
        font-family: "Zen Maru Gothic";
        /*border-bottom: 4px #71bc54 dotted;*/
}
.topsubject_box .no-hover span:last-child {
        text-align: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-content: center;
        height: 4rem;
        font-size: 1.5rem;
        line-height: 1.5;
        letter-spacing: .1rem;
        font-weight: 500;
        font-family: "Zen Maru Gothic";
        border: none;
    margin: 1rem 0 0 ;
}    
/* link先なし */   
    
    
.topsubject_box2 div.icon {
    width: 5rem;
    height: 5rem;
    display: block;
    margin: 0 auto 15px;
}
.topsubject_box2:hover,
.topsubject_box2:active{
/*opacity: .6;*/
transform: translateY(-3px);
}
    

.topsubject_t {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    flex-direction: column;
}
.topsubject_t2 {
  display: block;
  font-size: 1.6rem;
  line-height: 1.6;
  width: 100%;
}
.topsubject_box a span,
	.topsubject_box2 span {
            text-align: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-content: center;
        height: 4rem;
        font-size: 1.9rem;
        line-height: 1.4;
        letter-spacing: .1rem;
        font-weight: 500;
        font-family: "Zen Maru Gothic";
        /*border-bottom: 4px #71bc54 dotted;*/
}

.topmedical3{
width: 19%;
background-size: cover;
box-shadow: 5px 5px 5px #F7F6F4;
border-radius: 30px 10px 30px 10px;
opacity: 1;
padding: 0 0 10px 0;
}

.topmedical4{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
position: relative;
margin: 0 0 60px 0;
}

.topmedical4 a{
display: block;
width: 100%;
border-radius: 2px 2px 2px 2px;
}


.topmedical5{
position: absolute;
z-index: 2;
width: 100%;
left: 50%;
bottom: -50px;
transform: translateX(-50%);
}

.topmedical5b{
  display: block;
  width: 92%;
  height: 100%;
  background: linear-gradient(0deg, white, rgb(255 255 255 / 85%));
  text-align: center;
  font-size: 2.2rem;
  font-weight: 500;
  padding: 30px 0;
  font-family: 'Zen Maru Gothic', serif;
  position: relative;
  box-shadow: 2px 2px 1px rgb(106 199 122);
  border-radius: 3px;
  margin: 0 auto;
}

.topmedical5b span{
display: block;
}

.topmedical5b span::before{
content: "";
position: absolute;
display: block;
background: url("../images/ic_arrow3.svg") no-repeat;
width: 15px;
height: 15px;
right: 5px;
bottom: 5px;
}

.topmedical6{
position: relative;
z-index: 1;
}

.topmedical6 img{
  width: 100%;
  border-radius: 10px 40px 10px 40px;
}

.topmedical7{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
position: relative;
}

.topmedical8{
width: 100%;
margin: 0 0 10px 0;
}

.topmedical8 a{
width: 93%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
position: relative;
background: #fff;
margin: 0 auto;
align-items: center;
padding: 5px 5px;
border-radius: 2px 2px 2px 2px;
}

.topmedical9{
width: 20%;
}

.topmedical9 img{
width: 100%;
}

.topmedical10{
width: 75%;
}

.topmedical11{
font-weight: 500;
width: 100%;
font-size: 1.7rem;
text-align: center;
letter-spacing: 0.02rem;
position: relative;
line-height: 1.3;
}

.topmedical11 span{
display: block;
}

/*
.topmedical11 span::after{
position: absolute;
content: "";
background: url("../images/ic_arrow2.svg") no-repeat;
display: block;
width: 1.2rem;
height: 1.2rem;
margin: 0 0 0 9px;
vertical-align: baseline;
right: 2px;
top: 11px;
}
*/

.topmedical12{
width: 100%;
font-size: 1.3rem;
letter-spacing: 0;
line-height: 1.6;
margin: 0 0 12px 0;
}



/* medical */







/* news */

.topnews__w{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
background: #fff;
}

.topnews1{
text-align: center;
background: url("../images/topnewsbg.jpg") left center;
background-size: cover;
padding: 80px 0 380px;
width: 500px;
}

.topnews2{
text-align: center;
margin: 0 0 90px 0;
}

.topnews2 h2{
  font-size: 2.5rem;
  font-weight: 500;
  letter-spacing: .3rem;
  color: #666;
  margin: 0 auto;
  box-shadow: 15px 15px 0px rgb(232 243 223 / 60%);
  text-align: right;
  padding: 18px 22px;
  background: #fff;
  width: 550px;
}

.topnews2 h2 span{
}

.topnews2 h2 span::before{
  content: "NEWS";
  display: block;
  text-align: right;
  font-size: 4.5rem;
  letter-spacing: .3rem;
  color: #cbde7e;
  font-weight: 700;
  line-height: 1;
  font-family: 'Zen Maru Gothic', sans-serif;
  margin: 0 0 3px 0;
}


.topnews3{
width: calc(100% - 600px);
/*background: #ffffff;*/
}

.topnews4{
    width: calc(100% - 100px);
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 105px 0 70px 70px;
}



.topnews5{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
align-items: center;
margin: 0 0 30px;
}


.topnews6{
width: 100%;
font-size: 1.3rem;
color: #a4a4a4;
margin-right: 30px;
}
.topnews7{
color: #4b4948;
font-size: 1.7rem;
margin: 0 0 5px 0;
font-weight: 700;
}

.topnews7 a{
display: block;
}

.topnews7 a span{
}

.topnews7 a span::after{
content: "";
background: url("../images/ic_arrow2.svg") no-repeat;
display: inline-block;
width: 1.4rem;
height: 1.4rem;
margin: 0 0 0 50px;
vertical-align: baseline;
}

.topnews8{
width: 100%;
color: #4b4948;
font-size: 1.8rem;
text-align: center;
margin: 30px 0 0 0;
}

.topnews8 a{
display: inline-block;
border: 1px solid #009f88;
border-radius: 200px;
text-align: center;
padding: 7px 50px;
background: #fff;
color: #009f88;
font-size: 2rem;
}

.topnews8 a span{
}

.topnews8 a span::after{
}

.topnews9{
width: 100%;
font-size: 1.5rem;
color: #454545;
}
    /*お知らせ*/
    .news__w {
        width: 100%;
        background: #fff;
        padding: 60px 0 80px 0;
    }
    
.news_kiji__w{
    width: calc(100% - 230px);
    /*height: 300px;*/
    height: 100%;
    /*padding: 5rem 0;*/
}

.news_kiji__w iframe{
width: 100%;
/*height: 100%;*/
height: 300px;    
background: #fff;
}
.news__wi {
        width: 95%;
        max-width: 1200px;
        margin: 0 auto;
        padding: 60px 0 60px;
        display: flex;
        justify-content: space-between;
        min-height: 300px;
        background: #fff;
    }    
.news__w h2 {
        width: 200px;
        text-align: center;
    }
        .news__w h2 span {
        display: inline-block;
        margin: 0 auto;
        font-size: 2.5rem;
        letter-spacing: 0.2rem;
        font-family: 'Zen Maru Gothic', sans-serif;
        font-weight: 500;
    }
        .news__w h2 span::before {
        content: "";
        background: url("../images/log-s.svg") no-repeat;
        display: block;
        width: 5rem;
        height: 5rem;
        margin: 0 auto 1rem;
    }
    .news__w h2 span::after {
        content: "NEWS";
        display: block;
        font-size: 1.4rem;
        letter-spacing: .1rem;
        color: #8fc31f;
    }
    /*
        .news_kiji__w {
        width: 980px;
        border-top: 1px solid #e8e8e8;
        height: 300px;
    }
        .news_kiji__w iframe {
        width: 100%;
        height: 100%;
    }*/
    /*お知らせ*/
    
    
    
.newskiji1 {
    width: 100%;
    border-bottom: 1px dotted #cac8bc;
    padding: 0 0 30px 0;
    margin: 0 0 30px;
}
.newskiji2 {
    width: 100%;
    font-size: 1.3rem;
    margin: 0 0 0 0;
    color: #8C8C8C;
}  
.newskiji3 {
    width: 100%;
}
.newskiji4 {
  display: inline-block;
  font-size: 2rem;
  margin: 0 0 1rem 0;
  color: #ff984b;
    font-weight: 600;
} 
.newskiji5 {
    width: 100%;
    font-size: 1.5rem;
}


/* news */












.topcovid19__w{
    width: 100%;
    background: #f7f6f4;
    padding: 60px 0 60px;
}
.infection_w {
    width: 1200px;
    padding: 0 0 40px;
    margin: 0 auto;
}
.infection0 {
    text-align: center;
    color: #ffffff;
    font-size: 2.3rem;
    letter-spacing: .1rem;
    line-height: 1.5;
    padding: 18px 0;
    background: #ff6262;
    width: 100%;
    margin: 40px auto;
}
.infection1 {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
}
.infection2 {
    width: 30%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
}

.infection3 {
    width: 60%;
    margin: 0 auto 30px;
    position: relative;
}


.infection3 img {
    width: 100%;
}
.infection4 {
    width: 100%;
    font-size: 2rem;
    letter-spacing: .1rem;
    line-height: 1.5;
    display: inline-block;
    text-align: center;
    margin: 0 0 27px;
    border-radius: 15px;
    font-weight: 700;
    color: #41241F;
}
.infection4::first-letter {
    color: #ff6262;
}
.infection5 {
    letter-spacing: .05rem;
    font-size: 1.4rem;
    text-align: justify;
    line-height: 2.4;
        color: #41241F;
}


/* timetable */

.toptimetable__w {
width: 100%;
padding: 100px 0;
background:#fffdf7;
position:relative;
z-index:1;
}

.toptimetable__w.yoyaku {
    padding-top: 20px;
}


.toptimetable_ilst {
    background-image: url(../images/ilst03.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: right;
    width: 100%;
    height: 100%;
    position: absolute;
    top:-20px;
    right:0;
    z-index:-1;
}

.toptimetable1{
text-align: center;
margin: 0 0 80px 0;
}

.toptimetable1 h2{
display: block;
    text-align: center;
    font-size: 4rem;
    letter-spacing: .3rem;
    color: #6b3e03;
    line-height: 1;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: bold;
}

.toptimetable1 h2 span{
display: block;
    position: relative;
}

.toptimetable1 h2 span::before{
font-size: 1.5rem;
    font-weight: 400;
    letter-spacing: .15em;
    text-align: center;
    content: "TIMETABLE";
    display: block;
    font-weight: bold;
    margin: 0 auto 10px;
    color: #ef7c1d;
}

/*.toptimetable2 h2 span::after{
    content: "";
    background: url("../images/ic_timetable.svg");
    width: 70px;
    height: 70px;
    display: block;
    top: -40px;
    left: -40px;
    position: absolute;
}*/


.toptimetable3{
}

.toptimetable4{
}

.toptimetable4a{
background: url(../images/toptimetable1.png) no-repeat left center;
background-size: 450px 300px;
}

.toptimetable4b{
background: url(../images/toptimetable2.png) no-repeat right center;
background-size: 450px 300px;
}

.toptimetable4c{
background: url(../images/toptimetable3.png) no-repeat left center;
background-size: 450px 300px;
}

.toptimetable4d{
background: url(../images/toptimetable4.png) no-repeat right center;
background-size: 450px 300px;
}

.toptimetable4e{
background: url(../images/toptimetable5.png) no-repeat left center;
background-size: 450px 300px;
}



.toptimetable5{
width: 750px;
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
align-items: center;
margin: 0 auto;
}

.toptimetable6{
color: #000;
display: block;
text-align: center;
font-size: 2.4rem;
font-weight: 700;
font-family: 'Zen Old Mincho', serif;
margin: 0 0 20px 0;
width: 100%;
letter-spacing: .3rem;
}

.toptimetable7{
width: 100%;

}

table.toptimetable8{
    width: 100%;
    background: #fff;
    margin: 0 auto;
}

table.toptimetable8 th{
    text-align: center;
    font-weight: 500;
    font-size: 1.6rem;
    padding: 15px 0;
    line-height: 1;
    width: 10%;
    color: #fff;
    letter-spacing: .2rem;
    background: #239f67;
}

table.toptimetable8 th:first-child{
width: 30%;
}

table.toptimetable8 td{
    background: #fdfdfd;
    text-align: center;
    font-weight: 500;
    font-size: 1.6rem;
    padding: 25px 0;
    line-height: 1;
    width: 10%;
    color: #239f67;
    letter-spacing: 0.05rem;
    border-bottom: 1px solid #e1e1e1;
    vertical-align: middle;
}

table.toptimetable8 td:first-child{
    width: 30%;
    background: #deefe7;
    font-weight: 600;
    font-family: "Zen Kaku Gothic New", serif;
    font-size: 2rem;
    color: #442f06;
}
table.toptimetable8 td .item {
    display: inline-block;
    margin: 1rem 0 0 0;
    font-size: 1.6rem;
    line-height: 1.3;
    font-family: "Zen Maru Gothic";
    font-weight: 500;
    letter-spacing: .085rem;
}
table.toptimetable8 tr{
}

.toptimetable9{
width: 570px;
margin: 0 auto;
text-align: right;
padding: 0 15px 0 0;
font-size: 1.8rem;
}

table.toptimetable8 td.toptimetable10a{
color: #fff;
text-align: center;
font-size: 1.8rem;
font-family: 'Zen Maru Gothic', serif;
letter-spacing: .35rem;
padding: 10px 0;
background: linear-gradient(90deg, #ed6d00, #ed6d00);
line-height: 1;
font-weight: 500;
}

table.toptimetable8 td.toptimetable10b{
color: #fff;
text-align: center;
font-size: 1.8rem;
font-family: 'Zen Maru Gothic', serif;
letter-spacing: .15rem;
padding: 10px 0;
background: linear-gradient(90deg, #01aee4, #01aee4);
line-height: 1;
font-weight: 500;
}

.toptimetable11{
font-size: 1.3rem;
letter-spacing: -.05rem;
font-weight: 700;
}

.toptimetable12{
width: 100%;
text-align: center;
}

.toptimetable12 > .closed{
    display: inline-block;
    font-size: 1.7rem;
    color: #e89338;
    width: 680px;
    margin: 0 auto 10px;
    text-align: left;    
}
.toptimetable12 > .repletion{
width: 680px;
margin: 0 auto;
text-align: left;
}
.toptimetable12_f{
text-align: center;
width: 700px;
margin: 0 auto;
}

.toptimetable12_f > .closed{
padding: 3px 0px;
font-size: 1.5rem;
color: #ea4335;
width: 100%;
margin: 0 auto;
text-align: left;    
}
.toptimetable12_f > .repletion{
width: 100%;
margin: 0 auto;
text-align: left;
font-size: 1.4rem;    
}    
.toptimetable13{
width: 100%;
text-align: center;
}

.toptimetable13 span{
display: inline-block;
text-align: center;
padding: 5px 20px;
background: #fff;
font-size: 1.7rem;
color: #1ea189;
border: 2px solid #1ea189;
border-radius: 5px;
}

.toptimetable14{
width: 930px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 auto;
}

.toptimetable15{
width: 100%;
text-align: center;
}

.toptimetable15 span{
  display: inline-block;
  text-align: center;
  padding: 8px 30px;
  background: #ffffff;
  font-size: 1.9rem;
  color: #1fa189;
  border: 1px solid #1fa189;
  font-weight: 700;
}

.toptimetable16{
width: 450px;
}

.toptimetable16 a{
  display: inline-block;
  text-align: center;
  background: #fff;
  font-size: 1.6rem;
  color: #1ea189;
  border: 1px solid #1ea189;
  font-weight: 700;
  line-height: 1;
  box-shadow: 4px 4px 10px #ced1d8;
  box-sizing: content-box;
    width: 450px;
}

.toptimetable16 a:hover{
opacity: .7;
}

.toptimetable16 a img{
width: 100%;
}

.toptimetable17{
width: 450px;
}

.toptimetable17 a{
  display: inline-block;
  text-align: center;
  background: #fff;
  font-size: 1.6rem;
  color: #1ea189;
  border: 1px solid #fd6c58;
  font-weight: 700;
  line-height: 1;
  box-shadow: 4px 4px 10px #ced1d8;
  box-sizing: content-box;
  width: 450px;
}

.toptimetable17 a:hover{
opacity: .7;
}

.toptimetable17 a img{
width: 100%;
}




.toptimetable18{
width: 750px;
margin: 0 auto;
}

.toptimetable18 a{
width: 100%;
display: block;
text-align: center;
}


.toptimetable18 a img{
  width: 55%;
  box-shadow: 10px 10px 15px #bfbfbf;
  border-radius: 5px;
}

.toptimetable19{
font-weight: 400;
}

.toptimetable1.yoyaku h2 span::before{
    content: "APPOINTMENT";
}


.toptimetable20 {
width: 850px;
text-align:ceter;
margin: 0 auto;
}

.toptimetable21 {
display:flex;
flex-direction:row;
align-items:flex-start;
justify-content:space-between;
}

.toptimetable21 img {
width:155px;
}

.toptimetable22 {
    font-size:2.6rem;
    font-weight:bold;
    font-family:'Zen Maru Gothic', sans-serif;
}

.toptimetable23 {
    margin-top: 30px;
}

.toptimetable23 span {
    font-weight:bold;
    font-size:3.2rem;
    background:#ffd58a;
    border-radius:3px;
    letter-spacing:0;
    margin: 0 10px;
    font-family:'Roboto', YakuHanJP_Narrow, 'Zen Kaku Gothic New', Meiryo, sans-serif;
}

.toptimetable24 {
    font-weight:bold;
    font-size:1.8rem;
}

.toptimetable25 {
    display:flex;
    justify-content:space-between;
}

.toptimetable25-item {
    width:31%;
    margin-top: 50px;
    background:#fff;
    border-radius:10px;
    position:relative;
    box-shadow: 5px 5px 0px #cdcdcda8;
}

.step {
    position:absolute;
    content:"";
    display:inline-block;
    width:75px;
    height: 75px;
    line-height:75px;
    text-align:center;
    border-radius: 50%;
    border:1px solid #ef7c1d;
    background:#fff;
    font-size:1.4rem;
    top:-40px;
    left:0;
}

.step_info {
    font-size:1.5rem;
    padding: 0 1em 2em 1em;

}

.step_info span {
    font-weight:bold;
}


.toptimetable25-item img {
    display:block;
    width:70%;
    margin:auto;
}

.lacoon {
    width:300px;
    margin: 50px auto 0;
}

.lacoon a {
    display:block;
    width:300px;
}
.lacoon a img {
    border-radius:10px;
}

.toptimetable26 {
font-size: 1.4rem;
width: 100%;
}





/* timetable */




/* reservation */

.topreservation__w{
width: 100%;
padding: 80px 0 80px;
background: #f9f8ee;
background-size: cover;
}

.topreservation1{
text-align: center;
margin: 0 0 60px 0;
}

.topreservation1 h2{
    font-size: 2rem;
    font-weight: 400;
    letter-spacing: .5rem;
    color: #622b11;
    background: linear-gradient(45deg, #ffef72, #ffed62);
    width: 500px;
    margin: 0 auto;
    box-shadow: 15px 15px 0px rgb(210 207 129 / 20%);
    text-align: right;
    padding: 18px 22px;
}

.topreservation1 h2 span{
    display: block;
    position: relative;
}

.topreservation1 h2 span::before{
content: "RESERVATION";
display: block;
text-align: right;
font-size: 4rem;
letter-spacing: .3rem;
color: #622b11;
font-weight: 400;
line-height: 1;
font-family: 'Zen Maru Gothic', sans-serif;
margin: 0 0 12px 0;
}

.topreservation2 h2 span::after{
    content: "";
    background: url("../images/ic_timetable.svg");
    width: 100px;
    height: 100px;
    display: block;
    top: -50px;
    left: -50px;
    position: absolute;
    filter: drop-shadow(3px 6px 0px rgba(255,251,221,.50));
}


.topreservation3{
width: 730px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
background: #fff;
padding: 40px 40px;
}

.topreservation4{
width: 100%;

}



.topreservation5{
width: 100%;
font-size: 1.5rem;
line-height: 2;
}

.topreservation6{
width: 100%;
    position: relative;
    margin-bottom: 5px;
    padding-left: 2.5rem;
    font-size: 1.8rem;
    color: #000;
    line-height: 1.4;
    font-weight: 700;
}

.topreservation6::before{
  position: absolute;
  content: "";
  left: 0;
  top: .3rem;
  width: 1.8rem;
  height: 1.8rem;
  border: 0.25em solid #f5cb00;
  border-radius: 50%;
  box-sizing: border-box;

}


.topreservation7{
width: 100%;
font-size: 2.7rem;
font-weight: 900;
}

.topreservation7 a span::before {
    content: "";
    background: url("../images/ic_tel.svg");
    display: inline-block;
    width: 2.7rem;
    height: 2.7rem;
    margin: 0 8px 0 0;
    vertical-align: middle;
}

.topreservation8{
width: 100%;
margin: 15px 0 0 0;
}

.topreservation8 a{
    width: 24rem;
    display: flex;
    color: #ffffff;
    text-align: center;
    font-size: 1.8rem;
    position: relative;
    letter-spacing: .1rem;
    box-shadow: 3px 3px 3px rgb(255 174 133 / 70%);
    vertical-align: middle;
    line-height: 1.4;
    transition: .5s;
    background: linear-gradient(135deg, #ff945f 0%, #ff681d 100%);
    justify-content: center;
        border-top: 2px solid #ffffff;
    border-left: 2px solid #ffffff;
    border-bottom: 2px solid #ffffff;
    border-radius: 3px 0 0 3px;
    align-items: center;
    padding: 10px;
}

.topreservation8 a:hover,
.topreservation8 a:active{
opacity: .8;
box-shadow: 0px 0px 10px 0px #00000014;
transform: translateY(-2px);
}

.topreservation8 a span::before{
  content: "";
  background: url("../images/ic_calendar2.svg");
  width: 2rem;
  height: 2rem;
  display: inline-block;
  opacity: .9;
  vertical-align: text-top;
  margin: 0 10px 0 0;
}

.topreservation9{
font-size: 2rem;
font-weight: 700;
width: 100%;
padding: 0 0 0 2rem;
}

.topreservation9 a span::before{
content: "→";
display: inline-block;
margin: 0 7px 0 0;
}



/* reservation */




/* feature */
/*.feature__w {
    width: 100%;
    padding: 100px 0 100px;
    background: url("../images/fea_bg.svg");
    background-repeat: repeat;
    background-size: 15%;
}*/
    
.feature__wi {
    width: 1080px;
    margin: 0 auto;
    
}
.feature1 {
    text-align: center;
    margin: 0 0 90px 0;
}
.feature1 h2 {
    font-size: 2.5rem;
    font-weight: 400;
    letter-spacing: .5rem;
    color: #ffffff;
    background: linear-gradient(45deg, #937165, #583428);
    width: 500px;
    margin: 0 auto;
    box-shadow: 15px 15px 0px rgb(97 55 42 / 20%);
    text-align: right;
    padding: 18px 22px;
} 
.feature1 h2 span {
    display: block;
    position: relative;
}
.feature1 h2 span::before {
    content: "FEATURE";
    display: block;
    text-align: right;
    font-size: 4.5rem;
    letter-spacing: .6rem;
    color: #fff;
    font-weight: 400;
    line-height: 1;
    font-family: 'Zen Maru Gothic', sans-serif;
    margin: 0 0 3px 0;
} 
.feature1 h2 span::after {
    content: "";
    background: url(../images/ic_feature.svg);
    width: 70px;
    height: 70px;
    display: block;
    top: -40px;
    left: 0;
    position: absolute;
    /*filter: drop-shadow(4px 4px 3px #469C57);*/
}    
.feature1_box {
    position: relative;
    height: 400px;
    margin-bottom: 60px;
}
.feature1_i {
    position: absolute;
    width: 600px;
}
.feature1_i img {
    width: 100%;
    border-radius: 120px 10px 70px 10px;
}
.feature1_bg {
    background: #fff;
    position: absolute;
    top: 90px;
    right: 0;
    width: 550px;
    padding: 65px 20px 75px 20px;
    box-shadow: 20px 20px 20px #e0ddca;
    border-radius: 3px
}
.feature1_hh {
    color: #28634c;
    font-size: 2.5rem;
    line-height: 1.4;
    letter-spacing: 0.1rem;
    text-align: center;
    font-weight: 700;
}
.feature1_hh span {
  border-bottom:2px dashed #f39800;
  padding: 0 0 10px;
}
.feature1_h {
    padding: 30px 0 0;
    color: #3c3c3d;
    font-size: 1.7rem;
    letter-spacing: .1rem;
    line-height: 1.8;
    text-align: center;
}
.feature2_box {
    position: relative;
    height: 400px;
    margin: 0 0 60px 0;
}
.feature2_i {
    position: absolute;
    right: 0;
    width: 600px;
}
.feature2_i img {
    width: 100%;
    border-radius: 20px 120px 10px 70px;
}
.feature2_bg {
    background: #fff;
    position: absolute;
    top: 90px;
    width: 550px;
    padding: 65px 20px 75px 20px;
    box-shadow: -20px 20px 20px #e0ddca;
    border-radius: 3px
}
.feature2_hh {
    color: #28634c;
    font-size: 2.5rem;
    line-height: 1.4;
    letter-spacing: 0.1rem;
    text-align: center;
    font-weight: 700;
}
.feature2_hh span {
  border-bottom:2px dashed #f39800;
  padding: 0 0 10px;
}    
.feature2_h {
    padding: 30px 0 0;
    color: #3c3c3d;
    font-size: 1.7rem;
    letter-spacing: .1rem;
    line-height: 1.8;
    text-align: center;
}
.feature3_box {
    position: relative;
    height: 400px;
    margin: 0;
}
.feature3_i {
    position: absolute;
    width: 600px;
}
.feature3_i img {
    width: 100%;
    border-radius: 120px 10px 70px 10px;
}
.feature3_bg {
    background: #fff;
    position: absolute;
    top: 90px;
    right: 0;
    width: 550px;
    padding: 65px 20px 75px 20px;
    box-shadow: 20px 20px 20px #e0ddca;
    border-radius: 3px
}
.feature3_hh {
    color: #28634c;
    font-size: 2.5rem;
    line-height: 1.4;
    letter-spacing: 0.1rem;
    text-align: center;
    font-weight: 700;
}
.feature3_hh span {
  border-bottom:2px dashed #f39800;
  padding: 0 0 10px;
}    
.feature3_h {
    padding: 30px 0 0;
    color: #3c3c3d;
    font-size: 1.7rem;
    letter-spacing: .1rem;
    line-height: 1.8;
    text-align: center;
}
/* feature */




/* corona */

.topcorona__w{
width: 100%;
background: #ff5152;
text-align: center;
padding: 20px 0;

}

.topcorona__w span{
line-height: 1;
color: #fff;
font-size: 2.2rem;
}
.topcorona__w span::before{
    content: "";
    display: inline-block;
    background: url("../images/ic_shield.svg");
    margin: 0 10px 0 0;
    width: 2.5rem;
    height: 2.5rem;
  vertical-align: sub;
}
/* corona */











/* footer */
.subpage_bmimg {
  background-image: url("../images/subpage_bmimg.svg") !important;
  background-repeat: repeat-x;
  background-position: center;
  height: 20px;
    background: #ffffff;
}
footer{
    width: 100%;
    padding: 80px 0 0 0;
        clear: both;
        background: url(../images/bg_baige.jpg);
        position: relative;
}

.footer__w{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}

.footer__w2{
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    padding-bottom: 8rem;
	
	
}

.footer1{
    width: 700px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 0 5rem;
}

.footer2{
width: 100%;
text-align: center;
margin: 0 0 30px 0;
}

.footer2 img{
width: 450px;
}

.footer3{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
margin: 0 auto 30px;
}

.footer4{
    display: inline-block;
    font-weight: 500;
    font-size: 1.5rem;
    letter-spacing: 0.05rem;
    background: #a0c8de;
    text-align: center;
    padding: 3px 10px;
    margin: 0 1.5rem 0 0;
    width: 24%;
    border-radius: 100px;
    color: #fff;
}


.footer4:last-child{
    margin: 0 0 0 0;
}

.footer5{
width: 100%;
text-align: center;
margin: 0 0 30px 0;
}

.footer6{
width: 100%;
font-weight: 700;
font-size: 1.4rem;
letter-spacing: 0.05rem;

}


.footer7{
width: 100%;
}


.footer7 a{
width: 100%;
display: block;
font-size: 4rem;
color: #4c4948;
font-weight: 900;
line-height: 1;
}

.footer7 a span{

}

.footer7 a span::before{
content: "";
background: url("../images/ic_tel.svg");
display: inline-block;
width: 3.2rem;
height: 3.2rem;
margin: 0 10px 0 0;
vertical-align: bottom;
}

.footer8{
    width: 100%;
    font-size: 1.5rem;
    margin: 0 0 20px 0;
    color: #666;
}

.footer9{
    font-size: 1.5rem;
    font-weight: 500;
    margin: 0 auto;
    border-radius: 3px;
    width: 500px;
}

.footer10{
    display: inline-block;
    background: #8fc31f;
    text-align: center;
    padding: 3px 14px;
    margin: 0 15px 0 0;
    color: #ffffff;
    border-radius: 3px;
    font-size: 1.4rem;
    letter-spacing: 0;
    /*border: 1px solid #36a34c;*/
    width: 10rem;
}

.footer11{
    font-size: 1.6rem;
    font-weight: normal;
    margin: 0 auto 10px;
    border-radius: 3px;
    width: 500px;
    display: flex;
}

.footer12{
    display: inline-block;
    background: #ffffff;
    text-align: center;
    padding: 3px 14px;
    margin: 0 15px 0 0;
    color: #f57b43;
    border-radius: 3px;
    font-size: 1.4rem;
    letter-spacing: 0;
    border: 1px solid #f57b43;
    width: 10rem;
}

.footer13{
  font-size: 1.4rem;
  margin: 0 auto;
  width: 100%;
  text-align: center;
}

.footer14{
  margin: 0 auto 30px;
  width: 90%;
  text-align: center;
}
.footer14 img{
  width: 100%;
}

.footer15{
    margin: 0 auto;
    width: 100%;
    text-align: center;
    background: #fffdf1;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.footer16{
  margin: 0 40px 0 0;
  width: 550px;
  text-align: center;
  padding: 35px 0;
}
.footer16 img{
    width: 100%;
    box-shadow: 4px 4px 10px #DCD8BE;
}

.footer16:last-child{
  margin: 0 0 0 0;
}



.footer17{
width: 100%;
margin: 30px 0 30px 0;
}

.footer18{
            display: table;
        margin: 0 auto 0;
}
.footer18 span{
    display: inline-block;
  padding: 2px 20px;
  text-align: center;
  font-size: 1.5rem;
  letter-spacing: .15rem;
  color: #442f06;
    background: #fff;
    border-radius: 50px;
    border: 2px solid #c5c0b6;
}
.footer19{
width: 100%;
margin: 10px 0 0 0;
text-align: center;    
}

.footer19 a{
    width: 100%;
    display: block;
    font-size: 3.4rem;
    line-height: 1;
     /*font-family: "Zen Kaku Gothic New", serif;*/
	font-family: 'Zen Old Mincho', serif;
	font-weight: 600;    
	color: #442f06;
}

.footer19 a span{

}

.footer19 a span::before{
    content: "";
        background: url(../images/ic_tel.svg);
        display: inline-block;
        width: 2.5rem;
        height: 2.5rem;
        margin-right: 1rem;
}



.footer20{
  width: 100%;
  font-size: 1.6rem;
  letter-spacing: 0;
  text-align: center;
}


.footer21{
width: 100%;
margin: 0 0 20px 0;
}


.footer22{
  width: 100%;
  text-align: center;
  font-size: 1.4rem;
  font-weight: 500;
  letter-spacing: .02rem;
  color: #545454;
  margin: 0 0 2px 0;
}

.footer23{
width: 100%;
text-align: center;
margin: 0 0 10px 0;
}

.footer23 a{
width: 100%;
display: block;
font-size: 3rem;
color: #333;
font-weight: 900;
line-height: 1;
}

.footer23 a span{

}

.footer23 a span::before{
    content: "";
    background: url("../images/ic_tel.svg");
    display: inline-block;
    width: 2.5rem;
    height: 2.5rem;
    margin: 0 6px 0 0;
    vertical-align: middle;
}







.footerbnr__w{
  width: 500px;
  margin: 0 auto;
}

.footerbnr__w img{
  width: 100%;
  border: 1px solid #009f59;
}

.footerbnr1{
width: 160px;
}

.footerbnr1 a img{
  width: 100%;
  border: 1px dotted #dbdbdb;
  box-shadow: 2px 2px 2px rgb(241 241 241 / 70%);
  border-radius: 5px;
}




.sitemap__w{
    background: #239f67;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding: 6rem 0;
    width: 100%;
    /* margin: 60px 0 0 0; */
}

.sitemap1{
margin: 0 2.8rem 0 0;
line-height: 2.7;
letter-spacing: .01rem;
}

.sitemap1:last-child{
margin: 0 0 0 0;
}

.sitemap2{
width: 100%;
}

.sitemap2 a{
font-weight: 400;
font-size: 1.6rem;
color: #fff;
letter-spacing: .1rem;
}

.sitemap3{
width: 100%;
font-size: 1.5rem;
line-height: 2.3;
}

.sitemap3 a{
display: block;
width: 100%;
}

.googlemaps__w{
    width: calc(100% - 700px);
    padding: 0 4rem 0 0;
}

.googlemaps__w iframe{
    width: 100%;
    height: 550px;
}




/* footer */






/* copyright */


.copyright {
width: 100%;
padding: 20px 0;
background: #57B468;
background-size:cover;
text-align: center;
color: #fff;
font-size: 1.2rem;
}



/* copyright */













/* subpage */

.subpagetitle__w{
width: 100%;
padding: 30px 0;
position: relative;
background: #ebd5c8 url(../images/subpagetitle.jpg) left center no-repeat;
background-size: cover;
}

.subpagetitle__w::after {
content: '';
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
	
.subpage_nav_h{
width: 100%;
margin: 3rem 0 7rem;
}

.subpage_nav_h h2{
font-size: 3.2rem;
color: #473a2c;
display: inline-block;
letter-spacing: .2rem;
line-height: 1;
font-weight: 700;
  font-family: "Zen Maru Gothic";
  width: 100%;
  text-align: center;
}

.subpage_nav_h h2 span{
}



	
	
	
	
.subpagetitle__w1{
background: #ebd5c8 url(../images/subpagetitle.jpg) left center no-repeat;
background-size: contain;
}

.subpagetitle__w1{
background: #ebd5c8 url(../images/subpagetitle.jpg) left center no-repeat;
background-size: cover;
}

.subpagetitle__w2{
background: #ebd5c8 url(../images/subpagetitle.jpg) left center no-repeat;
background-size: cover;
}

.subpagetitle__w3{
background: #ebd5c8 url(../images/subpagetitle.jpg) left center no-repeat;
background-size: cover;
}

.subpagetitle__w4{
background: #ebd5c8 url(../images/subpagetitle.jpg) left center no-repeat;
background-size: cover;
}

.subpagetitle__w5{
background: #ebd5c8 url(../images/subpagetitle.jpg) left center no-repeat;
background-size: cover;
}




.subpagetitle1{
text-align: center;
position: relative;
/*z-index: 10;*/
}

.subpagetitle1 h2{
  font-size: 4rem;
    font-weight: 500;
    letter-spacing: .3rem;
    color: #fff;
    line-height: 1.2;
    display: inline-block;
   /* background: rgba(107,62,3,70%);*/
    padding: 35px 0;
    border-radius: 5px;
    width: 600px;
	font-family: 'Zen Maru Gothic', sans-serif;
	}

.subpagetitle1 h2 span{
}

.subpagetitle1 h2 span::after{
  display: block;
    text-align: center;
    font-size: 1.3rem;
    letter-spacing: .2rem;
    padding: 12px 0 0 0;
    color: #fff;
    font-weight: 500;
    line-height: 1.2;
    white-space: pre-wrap;
    font-family: 'Zen Maru Gothic';
}

.subpagetitle1a h2 span::after{
content: "DOCTOR";
}

.subpagetitle1b h2 span::after{
content: "MEDICAL";
}

.subpagetitle1c h2 span::after{
content: "ABOUT";
}

.subpagetitle1d h2 span::after{
content: "FACILITY";
}

.subpagetitle1e h2 span::after{
content: "ACCESS";
}

.subpagetitle1f h2 span::after{
content: "RESERVATION";
}





















.subpagetitle2{
width: 1000px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.subpagetitle3{
width: 100%;
background: #fff;
padding: 20px 20px 20px;
border-radius: 30px 10px 30px 10px;

}
.subpagetitle4{
width: 100%;
}

.subpagetitle4 img{
border-radius: 30px 10px 30px 10px;
}

.subpage__w{
width: 100%;
/*background: #fbf0e9;*/
background: linear-gradient(to bottom, rgba(239, 248, 245, 0) 0%, #f5fcf0 40%, #f5fcf0 52%, #f5fcf0 80%, #fff 99%, #fff 100%);
padding: 120px 0 0;
}

.subpage_nav_w {
    width: 100%;
background: #f2f8fb;
/*background-image: url(../images/bg.jpg);	*/
/*background:url(../images/bg10.jpg);*/
padding: 40px 0 40px;
background-repeat: no-repeat;
    background-size: cover;
}
.subpage_nav {
    width: 1000px;
    margin: 0 auto;
}
	
	
	
	
	
	
	
.subpage1{
    width: 1000px;
    margin: 0 auto;
    background: #fff;
    padding: 60px 50px 70px;
    border-radius: 20px;
}

.subpage2{
width: 100%;
border-bottom: 6px solid #ECECEC;
margin: 0 0 50px 0;
}

.subpage2 h2{
    font-size: 3.1rem;
    font-weight: 700;
    letter-spacing: .4rem;
    line-height: 1;
    padding: 60px 0 30px 0;
    text-align: center;
    font-family: 'Zen Maru Gothic';
    background: url("../images/ic_subpage.svg") no-repeat center top / auto 50px;
}

/*.subpage2 h2 span {
    display: block;
    position: relative;
    padding-top: 45px;
}

.subpage2 h2 span::before {
    content: "";
    position: absolute;
    background: url(../images/deco_title.svg) no-repeat center;
    display: block;
    text-align: center;
    width: 120px;
    height: 40px;
    top: 0;
    right: 0;
    left: 0;
    margin: auto;
}*/


.subpage3{
width: 100%;
padding: 0 10px;
line-height: 1.9;
}

.subpage4{
width: 100%;
}

.subpage4 a{
display: block;
width: 400px;
margin: 0 auto;
background: #ffee9c;
padding: 20px 0;
text-align: center;
letter-spacing: -.005rem;
color: #643e2f;
box-shadow: 6px 6px 15px #fff2b3;
font-weight: 500;
font-size: 2rem;
line-height: 1;
position: relative;
}

.subpage4 a span{
display: block;
width: 100%;
}

.subpage4 a span::after{
content: "";
background: url("../images/ic_arrow1.svg");
display: inline-block;
width: 2.2rem;
height: 2.2rem;
position: absolute;
top: 20px;
right: -10px;
}

.subpage4 a:hover{
transform: translateY(-3px);
opacity: .5;
}

.subpage5{
width: 100%;
position: relative;
padding: 30px 30px;
background: #f5f5f5;
border-radius: 10px;
}

.subpage5 ul{
width: 100%;
}

.subpage5 ul li{
width: 100%;
line-height: 2;
margin: 0 0 15px 0;
}

.subpage5 ul li:last-child{
margin: 0 0 0 0;
}

.subpage5 ul li span{
width: 100%;
}

.subpage5 ul li span::before{
content: "";
display: inline-block;
background: url("../images/ic_check.svg");
width: 2rem;
height: 2rem;
margin: 0 10px 0 0;
vertical-align: sub;
}

.subpage6{
width: 100%;
padding: 30px 30px;
position: relative;
background: #f5f5f5;
border-radius: 10px;
}

.subpage6 ul{
width: 100%;
}

.subpage6 ul li{
width: 100%;
line-height: 2;
margin: 0 0 15px 0;
}

.subpage6 ul li:last-child{
margin: 0 0 0 0;
}

.subpage6 ul li span{
width: 100%;
}

.subpage6 ul li span::before{
content: "";
display: inline-block;
background: url("../images/ic_check2.svg");
width: 2rem;
height: 2rem;
margin: 0 10px 0 0;
vertical-align: sub;
}

.subpage6 .subpage_list-1of2 {
display: flex;
flex-wrap: wrap;
}

.subpage6 .subpage_list-1of2 li {
width: 50%;
}

.subpage7{
width: 100%;
}

.subpage7 ul{
width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}
.subpage7 ul::after{
  content:"";
  display: block;
  width:45%;
}
.subpage7 ul li{
width: 45%;
margin: 0 0 28px 0;
display: flex;
flex-direction: column;
}

/*.subpage7 ul li:nth-child(3) {
    width:100%;
}*/
.subpage7 ul.checkup li a {
    background: url(../images/bg03.jpg) !important;
}
.subpage7 ul li a {
  display: flex;
    align-items: center;
    width: 100%;
    margin: 0 auto;
    background: url(../images/bg02.jpg);
    padding: 15px 0;
    text-align: center;
    letter-spacing:.05rem;
    color: #fff;
    font-weight: 500;
    font-size: 2rem;
    line-height: 1.3;
    position: relative;
    border-radius: 20px;
    flex-grow: 1;
/*    border: solid 2px #90d4ec;*/
    height: 80px;
}
.subpage7 ul li:nth-last-child{
    margin: 0;
}

.subpage7 ul li:nth-child(3) a {
    width: 450px;
}
/*.subpage7 ul li:nth-last-child(1){
margin: 0 3% 0 0;
}

.subpage7 ul li:nth-last-child(2){
margin: 0 3% 0 0;
}

.subpage7 ul li:nth-last-child(3){
margin: 0 3% 0 0;
}*/

.subpage7 ul li a:hover{
transform: translateY(-4px);
opacity: .8;
box-shadow: 0px 6px 6px #6aa7c9;
}

.subpage7 ul li a span{
width: 100%;
}

.subpage7 ul li span::after {
    content: "";
    background: url(../images/ic_arrow1.svg);
    display: inline-block;
    width: 3rem;
    height: 3rem;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    opacity: .9;
}

.subpage8{
width: 100%;
}

.subpage8 h3{
font-size: 2.2rem;
        letter-spacing: .02rem;
        line-height: 1.8;
        padding: 2px 0 5px 25px;
        position: relative;
        font-weight: 700;
        font-family: 'Zen Maru Gothic', sans-serif;
}

.subpage8 h3::before{
    border-left: 10px solid #39a674;
    content: "";
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
}

.subpage9{
width: 400px;
margin: 0 auto;
}

.subpage9 img{
width: 100%;
border-radius: 10px;
}

.subpage10{
width: 100%;
background: #F5F5F5;
position: relative;
padding: 30px 30px 30px;
border-radius: 0;
margin: 0 auto;
}

.subpage10 ul{
width: 100%;
}

.subpage10 ul li{
width: 100%;
line-height: 2.2;
}

.subpage10 ul li span{
width: 100%;
}

.subpage10 ul li span::before{
content: "";
display: inline-block;
background: url("../images/ic_check3.svg");
width: 2rem;
height: 2rem;
margin: 0 10px 0 0;
vertical-align: sub;
}

.subpage11{
display: inline-block;
margin: -4.5rem 0 0 0;
background: #47c8af;
color: #fff;
text-align: center;
padding: 4px 20px;
border-radius: 3px;
position: absolute;
font-size: 1.7rem;
}

.subpage12{
padding: 12px 0 0 0;
font-size: 1.6rem;
line-height: 2;
}

.subpage13{
display: inline-block;
margin: -4.5rem 0 0 0;
background: #f99027;
color: #fff;
text-align: center;
padding: 4px 20px;
border-radius: 3px;
position: absolute;
font-size: 1.7rem;
}

.subpage14{
display: inline-block;
margin: -4.5rem 0 0 0;
background: #7dadd4;
color: #fff;
text-align: center;
padding: 4px 20px;
border-radius: 3px;
position: absolute;
font-size: 1.7rem;
}

.subpage15{
width: 100%;
line-height: 1.8;
}

.subpage16{
width: 100%;
}

.subpage16 span{
line-height: 1.8;
font-size: 1.7rem;
font-family: 'Zen Old Mincho', serif;
font-weight: 700;
display: inline-block;
padding: 2px 20px;
letter-spacing: 0;
background: #fff;
border-radius: 100px;
color: #4387bf;
}

.subpage17{
width: 100%;
}

.subpage17 span{
line-height: 1.8;
        font-size: 1.8rem;
        font-weight: 600;
        display: inline-block;
        padding: 2px 20px;
        letter-spacing: .1rem;
        background: #6ebb52;
        border-radius: 100px;
        color: #fff;
}

.subpage18{
width: 100%;
}


.subpage18 nav ul{
display: flex;
justify-content: space-between;
flex-wrap: wrap;  
background-color: #fff;
padding: 0;
}


/*各ナビゲーション横幅*/
.subpage18 nav ul li{
width:33.3%;
}

/*ナビゲーションaタグの形状*/
.subpage18 nav ul li a{
color: #044589;
padding: 15px 0 15px;
font-size: 1.8rem;
font-weight: 500;
letter-spacing: 0;
}

.subpage18 nav ul li a:hover,
.subpage18 nav ul li a:active{
background:#fffdec;
}

.subpage18 nav ul li img {
width: 50%;
height: auto;
transition: all .5s;
vertical-align: bottom;
border-radius: 15px 5px 15px 5px;
}

.subpage18 nav ul li img:hover{
transform: scale(1.2);
}

.subpage18 nav ul li dt{
overflow: hidden;
margin: 0 0 8px 0;
}


.subpage19{
width: 1000px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding: 30px 0 30px;
}

.subpage20{
width: 100%;
margin: 0 0 15px 0;
}

.subpage20 h4{
  font-size: 1.9rem;
  letter-spacing: .05em;
  line-height: 1.5;
  position: relative;
  font-weight: 500;
  padding: 5px 15px;
  display: inline-block;
  margin: 0 0 0 10px;
  color: #32698f;
  background: #fdfdfd;
  border: 1px solid #83aac5;
}

.subpage21{
  font-size: 1.6rem;
  letter-spacing: .05rem;
  font-weight: 700;
  display: inline-block;
  margin: 0 0 15px 10px;
  color: #2a2840;
  background: #f5f5f5;
  padding: 7px 15px;
}

.subpage22{
  width: 880px;
  border: 1px dashed #ffabab;
  background: #fff8f8;
  padding: 22px 20px 28px;
  color: #e93131;
  margin: 0 auto;
  text-align: center;
}

.subpage23{
margin: 0 0 15px 0;
font-size: 1.7rem;
text-align: left;
line-height: 1.4;
}

.subpage24{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.subpage25{
width: 49%;
border: 1px solid #70b4e4;
}

.subpage26{
  background: #70b4e4;
  font-size: 2.5rem;
  color: #fff;
  padding: 5px;
  display: flex;
  align-items: center;
  width: 100%;
  line-height: 1.6;
}

.subpage26 span::before{
  content: "";
  background: url("../images/ic_first1.svg");
  width: 4rem;
  height: 4rem;
  display: inline-block;
  vertical-align: middle;
  margin: 0 15px 0 0;
}


.subpage27{
padding: 15px;
font-size: 1.8rem;
font-weight: 700;
line-height: 2;
}

.subpage28{
  margin: 0 15px 15px 15px;
  background: #eaf6ff;
  padding: 5px;
  }

.subpage29{
width: 49%;
border: 1px solid #70b4e4;
}

.subpage30{
  background: #0093DF;
  font-size: 2.5rem;
  color: #fff;
  padding: 5px;
  display: flex;
  align-items: center;
  width: 100%;
  line-height: 1.6;
}

.subpage30 span::before{
  content: "";
  background: url("../images/ic_first2.svg");
  width: 4rem;
  height: 4rem;
  display: inline-block;
  vertical-align: middle;
  margin: 0 15px 0 0;
}

.subpage31{
padding: 15px;
font-size: 1.8rem;
font-weight: 700;
line-height: 2;
}

.subpage32{
  margin: 0 15px 15px 15px;
  background: #eaf6ff;
  padding: 5px;
}

.subpage33{
  width: 100%;
  padding: 15px 20px;
  line-height: 2.4;
  background: #f7f7f7;
  color: #204354;
}

.subpage33 ul{

}

.subpage33 ul{

}

.subpage33 ul li::before{
  content: "";
  background: url("../images/ic_checkbox.svg");
  width: 2rem;
  height: 2rem;
  display: inline-block;
  vertical-align: sub;
  margin: 0 10px 0 0;
}

.subpage34{
width: 100%;
}

.subpage34 table{
width: 100%;
border: 1px solid #000;

}

.subpage34 table th{
padding: 2rem 1rem;
font-size: 2rem;
text-align: center;
border: 1px solid #015a33;
background: #009f59;
color: #fff;
}

.subpage34 table td{
    padding: 2rem 1rem;
    text-align: center;
    font-size: 1.7rem;
    border: 1px solid #015a33;
    background: #faf9f7;
}

.subpage34-1{

}

.subpage34-2{
color: #f9e440 !important;
}

.subpage34-3{

}

.subpage34-4{
text-align: center;
}

.subpage34-5{
    color: #009f59;
    font-weight: 900 !important;
}

.subpage34-6{

}
.subpage35{
     box-shadow: 0 3px 0 #eee;
    border: 2px solid #eee;
    border-radius: 15px;   
    padding: 30px 40px;
    background: #fff;
    width: 100%;
}
.item_list li {
    width: 100%;
    line-height: 1.5;
    margin: 0 0 10px 0;
}
.item_list li:last-child {
    width: 100%;
    line-height: 2;
    margin: 0;
}    
.item_list li:before {
    content: "";
    width: 10px;
    height: 10px;
    display: inline-block;
    background: #2da932;
    border-radius: 50%;
    margin-right: 12px;
}
 .subpage36 {
    width: 100%;
    text-align: center;
     margin: 0 0 50px;
}   
.subpage36 a {
    width: 70%;
    display: block;
}    
.subpage36 a img {
    width: 100%;
    box-shadow: 5px 5px 10px #ccc;
} 
	
.subpage46{
width: 100%;
background: #fafbf7;
padding: 50px 40px 50px;
border-radius: 10px;
position: relative;
}
.subpage53{
text-align: center;
padding: 0 1rem;
width: 10rem;
height: 10rem;
background: url(../images/ic_bg.png);
background-size: cover;
display: flex;
justify-content: center;  
z-index: 1;
}

.subpage53 img{
width: 100%;
}

.subpage54{
width: calc(100% - 20rem);
line-height: 2; 
}

.subpage55{
width: 100%;
padding: 0 0 0 30px;
line-height: 2.2;
font-weight: 700;
font-family: 'Zen Maru Gothic', sans-serif;
}

.subpage56{
width: 100%;
font-size: 1.9rem;
position: relative;  
}

.subpage56::before {
display: block;
position: absolute;
top: 1.75rem;
left: -1.7rem;
width: 0.8rem;
height: 0.8rem;
background-color: #6aa7c9;
border-radius: 50%;
content: '';  
}
.subpage57{
width: 100%;
color: #ea4335;
line-height: 1.5;
/* text-indent: -1em;
padding-left: 1em;*/
}    
.subpage58{
display: flex;
column-gap: 30px;
align-items: center;
}
.subpage58 h3{
letter-spacing: .3rem;
line-height: 1.8;
font-size: 3.2rem;
font-weight: 700;
text-align: center;
border-bottom: 4px #71bc54 dotted;
display: inline-block;
}  
.subpage59{
width: 95%;
margin: 0 auto;
}
.subpage59 ul li {
width: 100%;
line-height: 2;
margin: 0 0 10px 0;
}
.subpage59 ul li span::before {
content: "";
display: inline-block;
background: url(../images/ic_check.svg);
width: 2rem;
height: 2rem;
margin: 0 10px 0 0;
vertical-align: sub;
}
.item_list_2 li {
    width: 100%;
    line-height: 1.5;
    margin: 0 0 10px 0;
    font-size: 1.8rem;
}
.item_list_2 li:last-child {
    width: 100%;
    line-height: 2;
    margin: 0;
}    
.item_list_2 li:before {
    content: "";
    width: 10px;
    height: 10px;
    display: inline-block;
    background: #9b9b9b;
    border-radius: 50%;
    margin-right: 12px;
}
.info_memo_h {
    font-size: 2.2rem;
    color: #2da932;
    margin: 0 0 30px 0;
    line-height: 1;
}    
.subpage60{
display: flex;
column-gap: 30px;    
}
.subpage61{
flex: 1;
}
.subpage62{
width: 300px;
    padding: 50px;
background: #fbf0e9;   
    border-radius: 10px;
}
.subpage62 img{
width: 100%;    
}   
    
.subpage63 {
/*position: relative;*/
width: 100%;
height: auto;
padding: 0 100px;
}

/*コーナーを作る場合*/
    /*
    .subpage63 .corner-left-top {
      position: absolute;
      top: 0;
      left: 0;
      width: 80px;
      height: 80px;
      border-color: #fbf0e9;
      border-style: solid;
      border-width: 15px 15px 0 0;
      transform: rotate(270deg);
    }
    .subpage63 .corner-right-top {
      position: absolute;
      top: 0;
      right: 0;
      width: 80px;
      height: 80px;
      border-color: #fbf0e9;
      border-style: solid;
      border-width: 0 15px 15px 0;
      transform: rotate(270deg);
    }
    .subpage63 .corner-right-bottom {
      position: absolute;
      bottom: 0;
      right: 0;
      width: 80px;
      height: 80px;
      border-color: #fbf0e9;
      border-style: solid;
      border-width: 15px 0 0 15px;
      transform: rotate(180deg);
    }
    .subpage63 .corner-left-bottom {
      position: absolute;
      bottom: 0;
      left: 0;
      width: 80px;
      height: 80px;
      border-color: #fbf0e9;
      border-style: solid;
      border-width: 15px 15px 0 0;
      transform: rotate(180deg);
    }  */  
.subpage64{
line-height: 3;
text-align: center;
}
.subpage65{
width: 260px;
margin: 0 auto 0;
padding: 50px 0 0;
}
.subpage65 img{
width: 100%;
}
.dashed-note {
background-color: #fff;
background-image: linear-gradient(90deg, transparent 0%, transparent 50%, #fff 50%, #fff 100%), /* 点線1の色 */
linear-gradient(180deg, #ccc 1px, transparent 1px); /* 点線2の色と太さ */
background-size: 8px 100%, /* 点線1のサイズ */
100% 3.5em; /* 点線2のサイズ */
line-height: 3.5em; /* 文字の高さ */
padding-bottom: 1px; /* 最終行の下にも罫線を引く */
}
/* subpage */



/* access */
.access__w{
width: 100%;
padding: 8rem 0 0;
background: #fff;
}


.access__w2{
width: 900px;
margin: 0 auto;
/*padding-bottom: 80px;*/
}
.topaccess1{
text-align: center;
margin: 0 0 80px 0;
}

.topaccess1 h2{
display: block;
    text-align: center;
    font-size: 4.0rem;
    letter-spacing: .3rem;
    color: #442F06;
    line-height: 1;
	font-family: "Zen Old Mincho", serif;
    /*font-family: 'Zen Maru Gothic', sans-serif;*/
    font-weight: 500;
}

.topaccess1 h2 span{
    display: block;
    position: relative;
}
/*.topaccess1 h2::before{
content: "";
background: url("../images/icon_leaf.png");
display: block;
width: 43px;
height: 43px;
margin: 0 auto 10px;
}*/

.topaccess1 h2 span::after{
font-size: 1.5rem;
    letter-spacing: .15em;
    text-align: center;
    content: "ACCESS";
    display: block;
    font-weight: 500;
    margin: 10px auto;
    color: #8fc31f;
}

.access1{
width: 100%;
}

.access1 img{
width: 100%;
}

.access2{
width: 100%;
height: 600px;
}

.access2 iframe{
width: 100%;
height: 600px;
}

.access3{
width: 100%;
}
.access3 span{
display: inline-block;
text-align: center;
color: #0060ad;
font-size: 1.7rem;
}

.access4{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}

.access5{
width: 50%;
}

.access5 img{
width: 100%;
}

.access6{
width: 45%;
}

.access6 img{
width: 100%;
}
	
/* Google Maps */
.gm_w{
width:100%;
margin:20px auto 0;
text-align:center;
z-index: 3;
}

.gm_w iframe{
width:100%;
height:500px;
border-radius: 10px;
z-index: 3;}
	
/* table */
.outlinetbl{
width: 100%;
z-index: 3;
}

.outlinetbl tr{

}


.outlinetbl th{
padding: 30px 0;
width: 220px;
background: #efefef;
vertical-align: middle;
border:1px solid #DBDBDB;

}




.outlinetbl td{
padding: 30px 30px;
background: #fdfdfd;
vertical-align: middle;
line-height: 1.5;
border:1px solid #DBDBDB;
}

.outlinetbl td ul li{
text-indent: -1em;
padding-left: 1em;
margin: 0 0 .8rem;
}
	
	
/*	
	
.access__w{
width: 100%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.access1{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0 60px 0;
}

.access2{
width: 100%;
text-align: center;
}

.access2 img{
width: 400px;
}

.access3{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
text-align: center;
}

.access4{
        display: table;
        margin: 0 auto 0;
}
.access4 span {
        display: inline-block;
        padding: 2px 20px;
        text-align: center;
        font-size: 1.5rem;
        letter-spacing: .15rem;
        color: #442f06;
        background: #fff;
        border-radius: 50px;
        border: 2px solid #c5c0b6;
    }
.access5{
width: 100%;
    margin: 10px 0 0 0;
}


.access5 a{
        width: 100%;
        display: block;
        font-size: 3.4rem;
        line-height: 1;
        font-family: "Zen Kaku Gothic New", serif;
        font-weight: 600;
        color: #442f06;
}

.access5 a span{

}

.access5 a span::before{
content: "";
        background: url(../images/ic_tel.svg);
        display: inline-block;
        width: 2.5rem;
        height: 2.5rem;
        margin-right: 1rem;
}

.access6{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.access7{
width: 85%;
border-radius: 10px;
margin: 0 auto;
}

.access8{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: stretch;
margin: 0 0 5px 0;
}

.access8:first-child{
}


.access8:last-child{

}

.access9{
width: 30%;
font-size: 1.6rem;
line-height: 1.2;
background: #f9f8f5;
padding: 25px 15px;
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
}

.access10{
width: 66%;
line-height: 1.5;
font-weight: 500;
font-size: 1.6rem;
padding: 25px 0;
}

.access11{
width: 80%;
margin: 0 auto;
}

.access12{
}

.access13{
width: 100%;
}

.access14{
width: 100%;
margin: 0 0 50px;    
}

.access14 iframe{
width: 100%;
border-radius: 20px;
}

.access15{
width: 100%;
padding: 20px;
background: #f7f7f7;
border-radius: 20px;
}

.access16{
width: 100%;
text-align: center;
}

.access16 img{
width: 100%;
}

.access17{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 auto 50px;
}

.access18{
width: 32%;
}

.access18 img{
width: 100%;
border-radius: 3px;
margin: 0 0 15px;    
}
.access18 span{   
padding-left:1em;
text-indent:-1em;
display: inline-block;    
}


.access19{
width: 100%;
margin: 20px 0 0;
text-align: center;
}

.access20{
  font-size: 1.9rem;
  text-align: center;
  display: inline-block;
  padding: 8px 25px;
  border-radius: 5px;
  color: #1258a3;
  background: #effbfd;
}

.access21{
width: 100%;
font-size: 1.6rem;
font-weight: 700;
margin: 0 0 5px 0;

}
.access22{
width: 100%;
margin: 0 0 25px 0;
}

.access22:last-child{
width: 100%;
margin: 0 0 0 0;
}




.access_route {
    width: 100%;
    margin: 0 0 20px 0;
}
.access_route span {
    display: inline-block;
    padding: 0 15px;
    border: 1px solid #28634c;
    background: #fff;
    color: #28634c;
    border-radius: 3px;
    font-size: 2rem;
}

*/
/* access */







/* dooctor */

.doctor1{
        width: 1100px;
        margin: 0 auto;
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: flex-start;
}

.doctor2{
width: 430px;
margin-right: 100px;
}

.doctor2 img{
border-radius: 5px;
}

.doctor3{
flex: 1;
        display: flex;
        justify-content: center;
        border-radius: 5px;
        flex-direction: column;
}

.doctor4{
font-size: 2.2rem;
line-height: 1.4;
/*margin: 15px 0 10px 0;*/
font-weight: 500;
width: 100%;
letter-spacing: .25rem;
text-indent:.25rem;
font-family: 'Zen Old Mincho', serif;
/*font-family: 'Zen Maru Gothic', sans-serif;*/
}

.doctor5{
font-size: 4rem;
margin: 0 0 5px 0;
font-weight: 500;
letter-spacing: 0.1em;
font-family: 'Zen Old Mincho', serif;
/*font-family: 'Zen Maru Gothic', sans-serif;*/

}
.doctor5_s{
font-size: 2.8rem;
        margin: 0 0 0 30px;
        font-weight: 500;
        letter-spacing: 0.1em;
        text-indent: 0.2em;
font-family: 'Zen Old Mincho', serif;
/*font-family: 'Zen Maru Gothic', sans-serif;*/
    }
.doctor6{
font-size: 1.6rem;
width: 100%;
letter-spacing: .2rem;
text-indent: .3em;
margin: 0;
font-family: 'Zen Old Mincho', serif;
/*font-family: 'Zen Maru Gothic', sans-serif;*/
}



.doctor7{
width: 100%;
}

.doctor7 h3{
font-size: 2.5rem;
    font-weight: 500;
        /*padding: 1rem 0 1rem 5.5rem;*/
    padding: 1rem 0 1.5rem 1rem;
        margin: 0 0 3rem;
        width: 100%;
    /*background: url("../images/ic_doctor_profile.svg") no-repeat left center / auto 50px;*/
    position: relative;
    
}
.doctor7 h3::after {
content: "";
        position: absolute;
        background: #8fc31f;
        width: 50px;
        height: 4px;
        display: block;
        bottom: 0;
        left: 1rem;
        border-radius: 50px;
}
.doctor8{
    border-radius: 20px;
        width: 1100px;
        margin: 0 auto;
        line-height: 2;
        text-align: justify;
        padding: 60px 100px 60px;
        background: #fff;
        border: 10px solid #e6f9d9;
}
.doctor8 p {
	font-size: 1.7rem;
        font-weight: 500;
}
.doctor9{
  width: 100%;
  margin: 0 auto 15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.doctor9:last-child{
  margin: 0 auto 0;
}

.doctor10{
  width: 100%;
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.2;
  color: #939393;
}

.doctor11{
   width: 100%;
    position: relative;
    padding: 0 0 0 1.5em;
    line-height: 1.4;
    margin: 0 0 1rem;
}
.doctor11::before {
    display: block;
    position: absolute;
    top: .7rem;
    left: .5rem;
    width: 1rem;
    height: 1rem;
    background-color: #8fc31f;
    content: '';
    border-radius: 50%;
}
.doctor11 span {
    width: 10px;
    height: 10px;
    display: inline-block;
}

.doctor12{
background: #fff;
border-radius: 10px;
padding: 30px 70px;
width: 100%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.doctor13{
width: 100%;
color: #322A2C;
font-weight: 400;
}

.doctor14{
width: 100%;
margin: 0 0 18px 0;
line-height: 1.3;
}

.doctor15{
width: 48%;
}

.doctor16{
background: #fff;
border-radius: 10px;
padding: 30px 60px;
width: 100%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
line-height: 2;
}
.doctor16 ul li{
padding-left:1em;
text-indent:-1em;
}
.doctor17{
  width: 100%;
  font-size: 2.7rem;
  text-align: center;
  margin: 0 0 30px 0;
  color: #36a34c;
  font-weight: 500;
}

.doctor18{
width: 100%;
font-size: 1.6rem;
line-height: 1.8;
}
    
.doctor19{
    width: 1100px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.doctor20 {
       width: 48%;
        display: flex;
        flex-direction: column;
        align-items: flex-start;
}  
.doctor21 {
    background: #ffffff;
    border-radius: 10px;
    padding: 40px;
    width: 100%;
    margin: 0 auto;
    flex-grow: 1;
}

.doctor22 {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.doctor23 {
    width: 15%;
}

.doctor24 {
    width: 100%;
        border-bottom: 1px dotted #dbceb4;
        padding: 15px 5px 15px;
	    font-size: 1.7rem;
}

.doctor25 {
    font-size: 2rem;
   font-weight: 500;
    margin: 0 0 10px;
}    
.doctor26 {
    width: 100%;
    margin: 20px 0 0;
    font-size: 2.2rem;
   font-weight: 500;
   text-align: right;
}  
    /*
.doctor27 h3{    
margin: 0 auto 50px;
        text-align: center;
        border-image-slice: 1;
        font-size: 3rem;
        font-weight: bold;
        display: block;
        letter-spacing: .3rem;
}
.doctor27 h3::before {
        content: "";
        vertical-align: middle;
        display: inline-block;
        margin-right: 3rem;
        height: 50px;
        width: 50px;
        background: url("../images/ic_subpage.svg") left center no-repeat;
    }
.doctor27 h3::after {
        content: "";
        vertical-align: middle;
        display: inline-block;
        margin-left: 3rem;
        height: 50px;
        width: 50px;
        background: url("../images/ic_subpage.svg") right center no-repeat;
    }*/
.doctor27 h3 {
   font-size: 3.6rem;
        font-weight: 500;
        letter-spacing: 0.2em;
        position: relative;
    padding: 0 0 40px;
        text-align: center;
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
font-family: 'Zen Old Mincho', serif;
    /*font-family: 'Zen Maru Gothic', sans-serif;*/
}  
    /*
.doctor27 h3::before {
    position: absolute;
    content: "";
    background: url("../images/ic_doctor_profile.svg") no-repeat;
    width: 80px;
    height: 80px;
    left: 0;
    right: 0;
    margin: auto;
    top: 0;
}*/
.doctor27 p {
    font-size: 1.5rem;
        letter-spacing: .15em;
        text-align: center;
    line-height: 1;
    color: #8fc31f;
    font-weight: 500;
}    
/* dooctor */






/* about */

.about1{
width: 90%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 auto;
}

.about2{
width: 45%;
background: #F7F7F7;
border-radius: 30px 10px 10px 10px;
margin: 0 0 40px 0;
}


.about3{
width: 100%;
margin: 0 0 15px 0;
}

.about3 img{
width: 100%;
border-radius: 10px 10px 0 0;
}

.about4{
width: 100%;
font-size: 2.2rem;
text-align: center;
font-family: 'Zen Maru Gothic', sans-serif;
margin: 0 0 15px 0;
line-height: 1.4;
}

.about5{
width: 100%;
padding: 0 20px;
margin: 0 0 20px 0;
font-size: 1.5rem;
letter-spacing: 0;
}

/* about */



/* check */
.check1{
width: 100%;
}

table.check2{
width: 100%;
}

.check2 th{
padding: 15px 20px;
text-align: center;
background: #f1f1f1;
border: 1px solid #D0D0D0;
}

.check2 th:nth-child(1){
width: 25%
}

.check2 th:nth-child(2){
width: 50%
}

.check2 th:nth-child(3){
width: 25%
}

.check2 td{
padding: 15px 20px;
border: 1px solid #D0D0D0;
vertical-align: middle;
background: #FDFDFD;
}

.check2 td:nth-child(1){
text-align: center;
}

.check2 td:nth-child(2){
width: 50%
}

.check2 td:nth-child(3){
text-align: center;
}

/* check */








/* top-seikeigeka */

.service_nav{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
}

.service_nav1{
width: 31%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
background: #fafafa;
box-shadow: 8px 8px 3px #eaebeb;
margin: 0 3% 30px 0;
transition: .5s;
border: solid 1px #e1e1e1;
}
.service_nav1:nth-child(3n){
margin: 0 0 30px 0;
}

.service_nav1:hover{
transform: translateY(-5px);
}

.service_nav2{
display: block;
}

.service_nav3{
width: 100%;
text-align: center;
}
.service_nav3 img{
width: 100%;
}
.service_nav4{
width: 100%;
text-align: center;
font-size: 1.9rem;
padding: 25px 0;
letter-spacing: .03rem;
font-weight: 500;
color: #162c4c;

}

.service_nav4 span{
position: relative;
display: block;
width: 100%;
}

.service_nav4 span::after{
position: absolute;
right: 7px;
top: 1.1rem;
content: "";
background: url("../images/ic_arrow2.svg");
width: 15px;
height: 15px;
display: inline-block;
margin: 0 0 0 8px;
text-align: center;
}



/* top-seikeigeka */



/*renewal*/

.renewal__w{
width: 100%;
display: flex;
flex-wrap: wrap;
padding: 80px 0;
background: #fffdf0;
}

.renewal1{
width: 800px;
display: flex;
flex-wrap: wrap;
margin: 0 auto;
}
.renewal2{
width: 100%;
margin: 0 0 20px 0;
}
.renewal3{
width: 100%;
text-align: center;
font-size: 3.2rem;
margin: 0 0 40px 0;
font-family: 'Zen Old Mincho', serif;
font-weight: 700;
}

.renewal4{
width: 100%;
text-align: center;
margin: 0 0 30px 0;
}

.renewal4 img{
width: 550px;
}

.renewal5{
width: 100%;
text-align: center;
font-size: 3.2rem;
font-family: 'Zen Old Mincho', serif;
font-weight: 700;
}

.renewal6{
width: 100%;
text-align: center;
margin: 0 0 80px 0;
}

.renewal7{
width: 100%;
font-family: 'Zen Old Mincho', serif;
font-size: 3rem;
  color: #623f2f;
font-weight: 900;
letter-spacing: .5rem;
}

.renewal8{
  width: 100%;
  font-family: 'Zen Old Mincho', serif;
  font-size: 5rem;
  color: #623f2f;
  font-weight: 900;
  letter-spacing: .7rem;
  line-height: 1.4;
}

.renewal9{
    text-align: center;
    padding: 30px 50px;
    border: 2px solid #38a34c;
    margin: 0 auto;
    background: #ffffff;
    color: #42372e;
    border-radius: 5px;

}

.renewal10{
width: 100%;
margin: -60px 0 20px 0;
}

.renewal10 span{
display: inline-block;
background: #38a34c;
padding: 10px 40px;
text-align: center;
color: #fff;
font-size: 2.5rem;
border-radius: 5px;
}

.renewal11{
width: 100%;
font-size: 3.4rem;
margin: 0 0 0 0;
font-weight: 700;

}

.renewal12{
width: 100%;
font-size: 2.7rem;
margin: 0 0 15px 0;
font-weight: 700;

}

.renewal13{
width: 100%;
font-size: 1.5rem;
text-align: left;
}

/*renewal*/










/*sns*/
.sns__w{
position: fixed;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 100px;
z-index: 1000;
bottom: 150px;
right: 0;
}

.sns1{
    width: 100%;
    margin: 0 auto 15px;
    display: flex;
    border-radius: 300px;
    text-align: center;
    align-items: center;
}

.sns1:hover{
transform: translateY(-3px);
color: #000;
}

.sns2{
width: 100%;
margin: 0 auto;
}

.sns2 img{
width: 60%;
}

.sns3{
width: 100%;
text-align: center;
font-size: 1.4rem;
font-weight: 700;
}

/*sns*/










.nav1::before{
content: "";
display: block;
margin: 0 auto 8px;
background: url("../images/ic_nav1.svg");
width: 50px;
height: 50px;
/*filter: drop-shadow(2px 2px 3px #187a2b);*/
}

.nav2::before{
content: "";
display: block;
margin: 0 auto 8px;
background: url("../images/ic_nav2.svg");
width: 50px;
height: 50px;
}

.nav3::before{
content: "";
display: block;
margin: 0 auto 8px;
background: url("../images/ic_nav3.svg");
width: 50px;
height: 50px;
}

.nav4::before{
content: "";
display: block;
margin: 0 auto 8px;
background: url("../images/ic_nav4.svg");
width: 50px;
height: 50px;
}

.nav5::before{
content: "";
display: block;
margin: 0 auto 8px;
background: url("../images/ic_nav5.svg");
width: 50px;
height: 50px;
}

.nav6::before{
content: "";
display: block;
margin: 0 auto 8px;
background: url("../images/ic_nav6.svg");
width: 50px;
height: 50px;
}

.nav7::before{
content: "";
display: block;
margin: 0 auto 7px;
background: url("../images/ic_nav7.svg");
width: 50px;
height: 50px;
}

.nav8::before{
content: "";
display: block;
margin: 0 auto 7px;
background: url("../images/ic_nav8.svg");
width: 50px;
height: 50px;
}



/*HeightMinというクラス名がついたら高さを小さく、上部固定に*/
#fixnav.HeightMin{
    position: fixed;
    z-index: 10;
    animation: DownAnime 0.5s forwards;
  top: 0;
  width: 100%;
  text-align: center;
}

#fixnav{
background: #fff;
}


/*nav*/
	
/*お悩み*/
.topnayami__w {
width: 100%;
background: #fff;
padding: 40px 0 0px;
position: relative;
z-index:3;
}
.topnayami__wi {
    width: 1200px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: self-start;
}
	
.topnayami_midashi01{
width: 1080px;
margin: 0 auto;
	}

/*topkaiketsu*/

.topkaiketsu__w {
width: 100%;
background: #45ac58;
padding: 60px 0 60px;
position: relative;
z-index:3;
}
	
.topkaiketsu__wi {
    width: 1000px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: self-start;
}
	
.top_kaiketsu01{
width: 800px;
margin: 0 auto;
	}


/*解決の下の見出し*/

.top_midashi__w {
width: 100%;
  clear: both;
  background: url("../images/bg_baige.jpg");
  position: relative;	
  padding: 10rem 0 8rem;	
z-index:3;
}
/*.top_midashi__wi ::after{
        content: "";
        display: block;
        background: url("../images/onayami_sankaku.png");
        width: 290px;
        height: 78px;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        top: -10px;
        left: 50%;
        transform: translateX(-50%);
        position: absolute;
        margin: 0 auto;
}*/
	
.top_midashi__wi {
    width: 1000px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: self-start;
}
	
.top_midashi01{
width: 480px;
margin: 0 auto;
	}
.top_midashi_bg {
    background-image: url(../images/ilst07.webp);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: bottom;
        width: 240px;
        height: 460px;
        position: absolute;
        top: -180px;
        left: 10%;
        z-index: 1;
}


    
.top_midashi_bg2 {
    background-image: url(../images/ilst08.webp);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: bottom;
        width: 240px;
        height: 460px;
        position: absolute;
        bottom: 0px;
        right: 10%;
        z-index: 1;
}
   
	
/*TOPページ院長挨拶*/
	
.topdoctor__w {
width: 100%;
    width: 100%;
    clear: both;
    background: linear-gradient(to bottom, rgba(239, 248, 245, 0) 0%, #eff8f5 40%, #eff8f5 52%, #eff8f5 80%, rgba(239, 248, 245, 0) 99%, rgba(239, 248, 245, 0) 100%);
    padding: 60px 20px 120px 20px;
    position: relative;
position: relative;
z-index:3;
}
.topdoctor_bg {
    background-image: url(../images/ilst07.png);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: bottom;
        width: 350px;
        height: 350px;
        position: absolute;
        top: -80px;
        left: 2%;
        z-index: 1;
}
.topdoctor_ilst {
    background-image:url(../images/ilst06.png);
    background-repeat:no-repeat;
    background-size:contain;
    background-position:top;
width: 240px;
    height: 240px;
    position: absolute;
    bottom: 0;
    right: 5px;
    z-index: -1;
    top: 0;
    margin: auto;
}
	
.topdoctor_bg2 {
    background-image: url(../images/ilst08.svg);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: bottom;
        width: 250px;
        height: 250px;
        position: absolute;
        bottom: 50px;
        right: 5px;
        z-index: 1;
}
    
.topdoctor_ilst2 {
    background-image:url(../images/ilst09.png);
    background-repeat:no-repeat;
    background-size:contain;
    background-position:bottom;
    width: 100%;
    height: 100%;
    position:absolute;
    bottom:0px;
    left:0;
    z-index:2;
}
	
.topdoctor__wi {
    width: 1000px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: self-start;
}

.topdoctor1{
text-align: center;
margin: 0 0 80px 0;
}

.topdoctor1 h2{
display: block;
    text-align: center;
    font-size: 4.0rem;
    letter-spacing: .3rem;
    color: #442F06;
    line-height: 1;
	font-family: "Zen Old Mincho", serif;
    /*font-family: 'Zen Maru Gothic', sans-serif;*/
    font-weight: 500;
}

.topdoctor1 h2 span{
    display: block;
    position: relative;
}
/*.topdoctor1 h2::before{
content: "";
background: url("../images/icon_leaf.png");
display: block;
width: 43px;
height: 43px;
margin: 0 auto 10px;
}*/

.topdoctor1 h2 span::after{
font-size: 1.5rem;
    letter-spacing: .15em;
    text-align: center;
    content: "DOCTOR";
    display: block;
    font-weight: 500;
    margin: 10px auto;
    color: #8fc31f;
}
	
/*
.topdoctor1{
text-align: center;
margin: 0 0 90px 0;
}

.topdoctor1 h2{
font-size: 2.5rem;
font-weight: 400;
letter-spacing: .5rem;
color: #ffffff;
background: linear-gradient(45deg, #4dcb64, #27bb77);
width: 500px;
margin: 0 auto;
box-shadow: 15px 15px 0px rgb(66 198 106 / 20%);
text-align: right;
padding: 18px 22px;
}

.topdoctor1 h2 span{
display: block;
position: relative;
}

.topdoctor1 h2 span::before{
content: "GREETING";
display: block;
text-align: right;
font-size: 4.5rem;
letter-spacing: .6rem;
color: #fff;
font-weight: 400;
line-height: 1;
font-family: 'Zen Maru Gothic', sans-serif;
margin: 0 0 3px 0;
}

.topdoctor1 h2 span::after{
content: "";
background: url("../images/ic_nav1.svg");
width: 70px;
height: 70px;
display: block;
top: -40px;
left: -40px;
position: absolute;
filter: drop-shadow(4px 4px 3px #469C57);
}*/


.topdoctor2{
width: 900px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
background: #fdfdfb;
box-shadow: 15px 15px 0px rgb(186 238 200);
}

.topdoctor3{
width: 100%;
margin: 0 0 35px 0;
}

.topdoctor3 img{
width: 100%;
}

.topdoctor4{
width: 100%;
font-size: 3.3rem;
font-family: 'Zen Maru Gothic', sans-serif;
margin: 0 0 10px 0;
text-align: center;
color: #36a34b;
font-weight: 700;
letter-spacing: -0.1rem;
transform: scaleY(1.05);
}

.topdoctor5{
width: 100%;
font-size: 1.8rem;
padding: 20px 80px 30px;
line-height: 1.7;
}

.topdoctor6{
width: 100%;
font-size: 2.3rem;
text-align: right;
padding: 0 40px 10px 0;
font-family: 'Zen Old Mincho';
font-weight: 700;
}

.topdoctor7{
width: 100%;
font-size: 1.5rem;
text-align: right;
padding: 0 40px 40px 0;
}

.topdoctor_i {
    width: 360px;
}

.topdoctor_img {
    text-align:center;
}

.topdoctor_img img {
    width: 67%;
    border-radius: 10px;
    margin: 0 0 20px;
}   
.topdoctor_logo{
    width: 70%;
    margin: 0 auto;
    padding: 0 0 20px;
}   
.topdoctor_logo img{
    width: 100%;
}   
.topdoctor_t {
    width: 550px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.topdoctor_t1 {
    font-size: 3.2rem;
    font-weight: 600;
    font-family: 'Zen Maru Gothic', sans-serif;
    letter-spacing: .1rem;
    line-height: 1.5;
    transform: scaleY(1.05);
    margin: 0 0 4rem;
    position: relative;
    padding-top: 55px;
    color: #60a8ce;
}

.topdoctor_t1::before {
    content: "";
    position: absolute;
    background: url(../images/deco_title.svg) no-repeat center;
    display: block;
    text-align: center;
    width: 120px;
    height: 40px;
    top: 0;
    left: 0;
}

.topdoctor_t2 {
line-height: 2.5;
padding: 0;
text-align: justify;
}

.topdoctor_t3 {
    font-size: 2.8rem;
    text-align: center;
    letter-spacing: .25rem;
    text-indent:.25rem;
    font-weight: 500;
    width: 100%;
    margin: 0 0 20px;
}

.topdoctor_t3 span {
    font-size: 1.6rem;
    text-align: center;
    letter-spacing: .25rem;
    text-indent:.25rem;;
    font-weight: 500;
    width: 100%;
    margin: 0 0 5px; /* 余白を調整 */
    display: block;
}

.topdoctor_t3 ruby {
    margin-top: 0; /* 上方向の余白を削除 */
    display: block;
}

.topdoctor_t3 ruby rt {
    display: block;
    text-align: center;
        font-weight: 500;

}

.topdoctor_btn {
    text-align: center;
    width: 100%;
}
.topdoctor_btn a {
display: inline-block;
        border-radius: 5px;
        background: #9ecd08;
        color: #fff;
        text-align: center;
        padding: 2rem 6rem;
        transition: .6s;
        position: relative;
        font-size: 1.6rem;
        box-shadow: 0 3px 5px #e1e1e1;
    
}
    
.topdoctor_btn a:hover {
        text-decoration: none;
        opacity: 0.5;
    }    
.topdoctor_btn span::after {
    content: "";
        background: url(../images/arrow-white.svg);
        width: 1.8rem;
        height: 1.8rem;
        position: absolute;
        right: 2rem;
        font-size: 1rem !important;
        top: 2.3rem;
        color: #aedce0;
}





/*toppcr*/

.toppcr__w{
width: 100%;
padding: 80px 0;
background: url("../images/toppcrbg.jpg");
background-size: cover;
}

.toppcr1{
width: 960px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
background: rgba(255,255,255,.80);
padding: 50px 30px 60px;
}

.toppcr2{
width: 100%;
text-align: center;
}

.toppcr2 h2{
font-size: 5.3rem;
font-weight: 900;
margin: 0 0 30px 0;
color: #36a34b;
letter-spacing: 0.5rem;
transform: scaleY(1.05);
line-height: 1.4;
}

.toppcr3{
width: 100%;
text-align: center;
margin: 0 0 40px 0;
}

.toppcr3 span{
display: inline-block;
text-align: center;
font-size: 3.2rem;
font-weight: 700;
padding: 8px 40px;
background: #f7f7f7;
color: #fd6da3;
border-radius: 2px;
font-family: 'Zen Maru Gothic', sans-serif;
width: 100%;
}

.toppcr4{
width: 900px;
margin: 0 auto 50px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.toppcr5{
width: 500px;
font-family: 'Zen Maru Gothic', sans-serif;
font-size: 2.4rem;
font-weight: 500;
text-align: center;
line-height: 1.7;
}

.toppcr5b{
width: 100%;
margin: 40px 0 0 0;
display: flex;
flex-wrap: wrap;
justify-content: center;
}

.toppcr5b span{
display: inline-block;
text-align: center;
font-size: 1.7rem;
padding: 2px 15px;
background: #1AAFC9;
color: #ffffff;
border-radius: 200px;
font-family: 'Zen Kaku Gothic New', sans-serif;
margin: 0 12px 0 0;
}

.toppcr6{
width: 380px;
background: #cfeeef;
}

.toppcr6 img{
width: 100%;
}


.toppcr7{
width: 900px;
margin: 0 auto 20px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: baseline;
}

.toppcr8{
width: 72%;
margin: 0 0 20px 0;
display: flex;
flex-wrap: wrap;
justify-content: center;
}

.toppcr8 span{
display: block;
text-align: center;
font-size: 2rem;
padding: 8px 15px;
color: #322A2C;
border-radius: 2px;
font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
margin: 0 12px 0 0;
border-bottom: 5px solid #0b891a;
font-weight: 700;
letter-spacing: 0;
width: 100%;
}

.toppcr9{
width: 28%;
}

.toppcr9 span{
display: block;
text-align: center;
font-size: 2.7rem;
font-weight: 700;
padding: 8px 15px;
background: #0b891a;
color: #fff;
border-radius: 2px;
font-family: YakuHanJP, 'Zen Maru Gothic', sans-serif;
margin: 0 12px 0 0;
border: 1px solid #0b891a;
}



.toppcr9 span > a,
.toppcr12 span > a{
color:#ffffff;
}

.toppcr10{
width: 900px;
margin: 0 auto 20px;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: baseline;
}

.toppcr11{
width: 72%;
margin: 0 0 20px 0;
display: flex;
flex-wrap: wrap;
justify-content: center;
}

.toppcr11 span{
display: block;
text-align: center;
font-size: 2rem;
padding: 8px 15px;
color: #322A2C;
border-radius: 2px;
font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
margin: 0 12px 0 0;
border-bottom: 5px solid #2bb73c;
font-weight: 700;
letter-spacing: 0;
width: 100%;
}

.toppcr12{
width: 28%;
}

.toppcr12 span{
display: block;
text-align: center;
font-size: 2.7rem;
font-weight: 700;
padding: 8px 15px;
background: #2bb73c;
color: #fff;
border-radius: 2px;
font-family: 'Zen Maru Gothic', sans-serif;
margin: 0 12px 0 0;
border: 1px solid #2bb73c;
}

.toppcr13{
width: 100%;
text-align: center;
margin: 0 0 40px 0;
font-size: 1.6rem;
}

.toppcr14{
width: 100%;
text-align: center;
}

.toppcr14 a{
display: inline-block;
background: #fff;
text-align: center;
padding: 10px 40px;
color: #2bb73c;
font-weight: 700;
font-size: 1.7rem;
letter-spacing: -.06rem;
box-shadow: 15px 15px 15px #bfdae7;
border-radius: 5px;
}

.toppcr14 a span{
}

.toppcr14 a span::before{
content:"";
background: url("../images/ic_arrow2.svg");
width: 1.8rem;
height: 1.8rem;
display: inline-block;
margin: 0 15px 0 0;
vertical-align: middle;
}

.toppcr15{
font-size: 1.5rem;
display: inline;
}

.toppcr16{
font-size: 2.8rem;
display: block;
letter-spacing: .05rem;
font-weight: 500;
}

.toppcr17{
width: 960px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
background: rgba(255,255,255,.80);
padding: 50px 30px 60px;
}

.toppcr18{
width: 100%;
text-align: center;
}

.toppcr18 h2{
font-size: 4rem;
font-weight: 900;
margin: 0 0 30px 0;
color: #36a34b;
letter-spacing: 0.3rem;
transform: scaleY(1.05);
line-height: 1.4;
}

.toppcr19{
font-size: 1.6rem;
width: 100%;
margin: 0 0 30px 0;
padding: 0 0 0 150px;
line-height: 2;
}

.toppcr20{
width: 95%;
margin: 0 auto 40px;
display: flex;
flex-wrap: wrap;
background: rgba(255,255,255,.50);
padding: 30px 30px;
}

.toppcr21{
margin: 0 0 18px 0;
}

.toppcr21:last-child{
margin: 0 0 0 0;
}

.toppcr21 span::before{
content: "●";
color: #36a34b;
display: inline-block;
margin: 0 5px 0 0;
}

.toppcr22{
width: 100%;
text-align: center;
font-size: 1.7rem;
margin: 0 0 30px 0;
}

.toppcr23{
width: 960px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
background: rgb(54 163 76);
padding: 40px 30px 40px;
}

.toppcr24{
width: 100%;
margin: 0 auto 20px;
display: flex;
flex-wrap: wrap;
background: #fff;
align-items: center;
border-radius: 5px;

}

.toppcr25{
width: 40%;
text-align: center;
padding: 15px 0;
font-weight: 700;
color: #157e2a;
font-size: 1.7rem;
font-family: YakuHanJP, 'Zen Maru Gothic', sans-serif;
}

.toppcr26{
font-size: 1.5rem;
width: 18%;
}

.toppcr27{
font-size: 1.5rem;
}

.toppcr28{
width: 100%;
text-align: center;
}

.toppcr28 a{
text-align: center;
display: inline-block;
border-bottom: 1px dotted #eaff8a;
color: #eaff8a;
}

/*toppcr*/

.newspage1{
width: 100%;
display: flex;
flex-wrap: wrap;

}

.newspage2{
width: 100%;
font-size: 1.4rem;
  margin: 0 0 8px 0;
color: #555;
}

.newspage3{
  width: 100%;
  font-size: 2.2rem;
  color: #3caa30;
  margin: 0 0 10px 0;
}

.newspage4{
width: 100%;
  font-size: 1.6rem;
}





.cashless__w{
width: 100%;
background: #e7f0f9;
padding: 60px 0;
}

.cashless1{
width: 850px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.cashless2{
text-align: center;
margin: 0 0 30px 0;
width: 100%;
}

.cashless2 span{
display: inline-block;
text-align: center;
background: #004d9f;
padding: 7px 30px;
color: #fff;
font-size: 2rem;
font-family: "Zen Maru Gothic";
border-radius: 100px;
}

.cashless3{
margin: 0 0 15px 0;
font-size: 1.8rem;
text-align: center;
width: 100%;
}

.cashless4{
  width: 100%;
  font-size: 1.8rem;
  text-align: center;
  font-weight: 900;
  margin: 0 0 15px 0;

}

.cashless5{
  width: 100%;
  font-size: 1.5rem;
  text-align: center;
  color: #f31d1d;
  font-weight: 700;
  margin: 0 0 30px 0;
}

.cashless6{
width: 100%;
text-align: center;
}

.cashless6 img{
width: 750px;
border-radius: 10px;
}




/* <!--btn reservation--> */
.btn_fix__w{
    position: fixed;
    top: 270px;
    right: 10px;
    z-index: 5;
}
/*
.btn_fix__w a::after{
    position: absolute;
    right: 80px;
    top: 90px;
    background: url("../images/ic_yoyaku.svg") top center no-repeat;
    width: 100%;
    height: 60px;
    background-size: contain;
    content: "";
    transform-origin: center bottom;
    animation: yurayura 2s linear infinite;
}
    */
.btn_fix__w a{
    width: 130px;
        height: 130px;
        display: flex;
        color: #ffffff;
        text-align: center;
        font-size: 1.8rem;
        position: relative;
        letter-spacing: .1rem;
        vertical-align: middle;
        line-height: 1.4;
        transition: .5s;
        justify-content: center;
        align-items: center;
        font-weight: 500;
        background: #ff984b;
        border-radius: 10px;

}
.btn_fix__w a::after{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  left: 20px;
  top: -12px;
  border-right: 15px solid transparent;
  border-bottom: 15px solid #ff984b;
  border-left: 15px solid transparent;
}
.btn_fix__w a:hover,
.btn_fix__w a:active{
transform: translateY(-5px);
}
    
/* ホバー時にキャラクターが揺れるアニメーション */
.btn_fix__w a:hover .symbol,
.btn_fix__w a:active .symbol {
    opacity: 1;
    transform: translateX(-50%) translateY(0); /* 頭だけ出る */
    animation: shake 0.5s ease forwards; /* ふるふる揺れるアニメーション */
    z-index: -1 !important;
}    
/* ホバーが外れてもキャラクターを表示したままにする */
.btn_fix__w a .symbol {
    opacity: 1;
    transform: translateY(0); /* 頭だけ出る */
}

    .symbol{
       /*position: fixed;
    top: 190px;
    right: 20px;
    width: 100px;
    height: 100px;
    background-image: url("../images/symbol.png") ;
    background-size: cover;
    opacity: 0;
    transform: translateY(50px);
    animation: fadeInHead 1s ease-out 0.5s forwards;
        z-index: 5;*/
        position: absolute;
    top: -100px; /* ボタンの上に配置 */

    width: 100px;
    height: 100px;
    background-image: url("../images/symbol.png") ;
    background-size: cover;
    opacity: 0;
    transform: translateY(-50px); /* 初期状態で少し下に隠れる */
    transition: opacity 0.5s ease-out, transform 0.5s ease-out;

    } 
    
/*.btn_fix__w a span::before{
  content: "";
  background: url("../images/ic_calendar.svg");
  width: 40px;
  height: 40px;
  display: block;
  margin: 0 auto 15px;
}*/


/* <!--btn reservation--> */
.btn_fix2__w{
    position: fixed;
    top: 400px;
    right: 30px;
    z-index: 2100;
}
.btn_fix2__w a::after {
    position: absolute;
    right: 60px;
    top: 80px;
    background: url(../images/ic_yoyaku2.svg) top center no-repeat;
    width: 100%;
    height: 120px;
    background-size: contain;
    content: "";
    transform-origin: center bottom;
    animation: yurayura 2s linear infinite;
}
.btn_fix2__w a{
  width: 150px;
    height: 150px;
    display: flex;
    color: #ffffff;
    text-align: center;
    font-size: 1.8rem;
    position: relative;
    letter-spacing: .03rem;
    vertical-align: middle;
    line-height: 1.2;
    transition: .5s;
    justify-content: center;
    align-items: center;
    font-weight: 700;
    border: 2px dashed #fff1f1;
    box-shadow: 0 0 0 8px #fbcb09;
    padding: 15px;
    background: #fbcb09;
    border-radius: 10px;
}

.btn_fix2__w a:hover,
.btn_fix2__w a:active{
opacity: .8;
transform: translateY(-5px);
box-shadow: 0 0 0 8px #fbcb09;    
}

/*.btn_fix2__w a span::before{
  content: "";
  background: url("../images/ic_beginner.svg");
  width: 40px;
  height: 40px;
  display: block;
  margin: 0 auto 15px;
}*/
	
	
	

/*発熱のある方*/

/* <!--btn fever--> */
.btn_fix__w3{
    position: fixed;
    top: 440px;
    right: 30px;
    z-index: 6;
}
    
.btn_fix__w3 a{
	width: 130px;
	height: 130px;
	display: flex;
	color: #ffffff;
	text-align: center;
	font-size: 1.8rem;
	position: relative;
	letter-spacing: .1rem;
	vertical-align: middle;
	line-height: 1.4;
	transition: .5s;
	justify-content: center;
	align-items: center;
	font-weight: 500;
	border: 2px dashed #fff1f1;
	box-shadow: 0 0 0 8px #ff4b4b;
	padding: 15px;
	background: #ff4b4b;
	border-radius: 10px;
}

.btn_fix__w3 a:hover,
.btn_fix__w3 a:active{
opacity: .8;
transform: translateY(-5px);
}

/*モーダルを開くボタン*/
.modal-open{
	background: #f4b1b1;
	margin: 0 auto;
	padding: 20px 0;
	display: block;
	border-radius: 5px;
	color: #ffffff;
	font-size: 2.5rem;
	cursor: pointer;
}
	
/*モーダル本体の指定 + モーダル外側の背景の指定*/
.modal-container{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0,0,0,50%);
  padding: 40px 20px;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transition: .3s;
  box-sizing: border-box;
	z-index: 100;
}
/*モーダル本体の擬似要素の指定*/
.modal-container:before{
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
/*モーダル本体に「active」クラス付与した時のスタイル*/
.modal-container.active{
  opacity: 1;
  visibility: visible;
}
/*モーダル枠の指定*/
.modal-body{
  position: relative;
  display: inline-block;
  vertical-align: middle;
  max-width: 800px;
  width: 90%;
}
/*モーダルを閉じるボタンの指定*/
.modal-close{
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: -40px;
  right: -40px;
  width: 40px;
  height: 40px;
  font-size: 40px;
  color: #fff;
  cursor: pointer;
}
/*モーダル内のコンテンツの指定*/
.modal-content{
  background: #fff;
  text-align: left;
  padding: 30px;
}

/*初診の方*/

/* <!--btn fever--> */
.btn_fix__w4{
        position: fixed;
        top: 100px;
        right: 30px;
        z-index: 11;
}
    
.btn_fix__w4 a{
	width: 130px;
        height: 130px;
        display: flex;
        color: #ffffff;
        text-align: center;
        font-size: 1.8rem;
        position: relative;
        letter-spacing: .1rem;
        vertical-align: middle;
        line-height: 1.4;
        transition: .5s;
        justify-content: center;
        align-items: center;
        font-weight: 500;
        border: 2px dashed #fff1f1;
        box-shadow: 0 0 0 8px #61a9c9;
        padding: 15px;
        background: #61a9c9;
        border-radius: 10px;
}

.btn_fix__w4 a:hover,
.btn_fix__w4 a:active{
opacity: .8;
transform: translateY(-5px);
}

/*モーダルを開くボタン*/
.modal-open2{
	background: #f4b1b1;
	margin: 0 auto;
	padding: 20px 0;
	display: block;
	border-radius: 5px;
	color: #ffffff;
	font-size: 2.5rem;
	cursor: pointer;
}
	
/*モーダル本体の指定 + モーダル外側の背景の指定*/
.modal-container2{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0,0,0,50%);
  padding: 40px 20px;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transition: .3s;
  box-sizing: border-box;
	z-index: 100;
}
/*モーダル本体の擬似要素の指定*/
.modal-container2:before{
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
/*モーダル本体に「active」クラス付与した時のスタイル*/
.modal-container2.active{
  opacity: 1;
  visibility: visible;
}
/*モーダル枠の指定*/
.modal-body2{
  position: relative;
  display: inline-block;
  vertical-align: middle;
  max-width: 800px;
  width: 90%;
}
/*モーダルを閉じるボタンの指定*/
.modal-close2{
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: -40px;
  right: -40px;
  width: 40px;
  height: 40px;
  font-size: 40px;
  color: #fff;
  cursor: pointer;
}
/*モーダル内のコンテンツの指定*/
.modal-content2{
  background: #fff;
  text-align: left;
  padding: 30px;
}
	

/*初診の方*/
	
	
	
/*3つのポイント*/
.toppoint__w {
  /*width: 100%;
  padding: 6rem 0 8rem;
        background: url(../images/bg_baige.jpg);
        background-size: cover;
        position: relative;*/
	
width: 100%;
  clear: both;
  background: url("../images/bg_baige.jpg");
  position: relative;	
  padding: 6rem 0 8rem;	
}


.toppoint__wi {
    width: 1080px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: self-start;
}

	
.toppoint_h{
text-align: center;
margin: 0 0 80px 0;
}

.toppoint_h h2{
display: block;
    text-align: center;
    font-size: 3.6rem;
    color: #442f06;
    line-height: 1;
    font-family: 'Zen Maru Gothic', sans-serif;
    letter-spacing: .1rem;
    font-weight: 500;
}

.toppoint_h h2 span{
    display: block;
    position: relative;
}
.toppoint_h h2::before{
content: "";
background: url("../images/ladies_icon.png");
display: block;
width: 20px;
height: 43px;
margin: 0 auto 10px;
}

.toppoint_h h2 span::after{
font-size: 1.5rem;
    font-family: 'Zen Maru Gothic', sans-serif;
    letter-spacing: .05rem;
    text-align: center;
    content: "Maternity & Gynecology";
    display: block;
    font-weight: 500;
    margin: 10px auto 10px;
    color: #f37bb1;
}
	
	
	
	
	
.toppoint_i {
    width: 520px;
}

.toppoint_img {
    text-align:center;
}

.toppoint_img img {
    width: 100%;
    border-radius: 10px;
    margin: 0 0 20px;
}   
.toppoint_logo{
    width: 70%;
    margin: 0 auto;
    padding: 0 0 20px;
}   
.toppoint_logo img{
    width: 100%;
}   
.toppoint_t {
    width: 550px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.toppoint_t img {
width: 240px;
margin: 0 auto;
}
.toppoint_t1, .toppoint_t1_03, .toppoint_t1_05 {
    font-size: 3.6rem;
    font-weight: 500;
	font-family: "Zen Old Mincho", serif;
    /*font-family: 'Zen Maru Gothic', sans-serif;*/
    letter-spacing: .3rem;
    line-height: 1.5;
    transform: scaleY(1.05);
    margin: 0 0 4rem;
    position: relative;
    padding-top: 24px;
    color: #442F06;
}

/*.toppoint_t1::before {
    content: "";
    position: absolute;
    background: url(../images/deco_title.png) no-repeat center;
    display: block;
    text-align: center;
    width: 235px;
    height: 84px;
    top: -50px;
    left: 0;
}
	
.toppoint_t1_02::before {
    content: "";
    position: absolute;
    background: url(../images/deco_title02.png) no-repeat center;
    display: block;
    text-align: center;
    width: 235px;
    height: 84px;
    top: -50px;
    left: 0;
}
.toppoint_t1_03::before {
    content: "";
    position: absolute;
    background: url(../images/deco_title03.png) no-repeat center;
    display: block;
    text-align: center;
    width: 235px;
    height: 84px;
    top: -50px;
    left: 0;
}
.toppoint_t1_04::before {
    content: "";
    position: absolute;
    background: url(../images/deco_title04.png) no-repeat center;
    display: block;
    text-align: center;
    width: 235px;
    height: 84px;
    top: -50px;
    left: 0;
}
.toppoint_t1_05::before {
    content: "";
    position: absolute;
    background: url(../images/deco_title05.png) no-repeat center;
    display: block;
    text-align: center;
    width: 235px;
    height: 84px;
    top: -50px;
    left: 0;
}*/

.toppoint_t2 {
    font-size: 2.0rem;
	font-weight: 400;
line-height: 2.2;
padding: 0 1.6rem;
text-align: justify;
}

.toppoint_t3 {
    font-size: 2.8rem;
    text-align: center;
    letter-spacing: .25rem;
    text-indent:.25rem;
    font-weight: 500;
    width: 100%;
    margin: 0 0 20px;
}

.toppoint_t3 span {
    font-size: 1.6rem;
    text-align: center;
    letter-spacing: .25rem;
    text-indent:.25rem;;
    font-weight: 500;
    width: 100%;
    margin: 0 0 5px; /* 余白を調整 */
    display: block;
}

.toppoint_t3 ruby {
    margin-top: 0; /* 上方向の余白を削除 */
    display: block;
}

.toppoint_t3 ruby rt {
    display: block;
    text-align: center;
        font-weight: 500;

}

.toppoint_btn {
    text-align: center;
    width: 100%;
}
.toppoint_btn a {
display: inline-block;
        border-radius: 30px;
        background: #fff;
        color: #f37bb1;
		border:1px solid  #f37bb1;
        text-align: center;
        padding: 0.6rem 6rem;
        transition: .6s;
        position: relative;
        font-size: 1.6rem;
        box-shadow: 0 3px 5px #e1e1e1;
    
}
    
.toppoint_btn a:hover {
        text-decoration: none;
        opacity: 0.5;
    }    
.toppoint_btn span::after {
    content: "";
        background: url(../images/arrow-white.svg);
        width: 1.8rem;
        height: 1.8rem;
        position: absolute;
        right: 2rem;
        font-size: 1rem !important;
        top: 2.3rem;
        color: #aedce0;
}
/*ポイント02*/
.toppoint02__w {
width: 100%;
  clear: both;
  background: url("../images/bg_baige.jpg");
  position: relative;	
  padding: 6rem 0 8rem;	
}


.toppoint02__wi {
    width: 1000px;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: self-start;
}

	
.toppoint02_h{
text-align: center;
margin: 0 0 80px 0;
}

.toppoint02_h h2{
display: block;
    text-align: center;
    font-size: 3.6rem;
    color: #442f06;
    line-height: 1;
    font-family: 'Zen Maru Gothic', sans-serif;
    letter-spacing: .1rem;
    font-weight: 500;
}

.toppoint02_h h2 span{
    display: block;
    position: relative;
}
.toppoint02_h h2::before{
content: "";
background: url("../images/pain_icon.png");
display: block;
width: 26px;
height: 24px;
margin: 0 auto 10px;
}

.toppoint02_h h2 span::after{
font-size: 1.5rem;
    font-family: 'Zen Maru Gothic', sans-serif;
    letter-spacing: .05rem;
    text-align: center;
    content: "Pain Clinic";
    display: block;
    font-weight: 500;
    margin: 10px auto 10px;
    color: #3378d5;
}
	
	
	
	
	
.toppoint02_i {
    width: 520px;}

.toppoint02_img {
    text-align:center;
}

.toppoint02_img img {
    width: 100%;
    border-radius: 10px;
    margin: 20px 0 20px;
}   
.toppoint02_logo{
    width: 70%;
    margin: 0 auto;
    padding: 0 0 20px;
}   
.toppoint02_logo img{
    width: 100%;
}   
.toppoint02_t {
    width: 550px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.toppoint02_t img {
width: 240px;
margin: 0 auto;
}
.toppoint02_t1 {
    font-size: 3.6rem;
    font-weight: 500;
	font-family: "Zen Old Mincho", serif;
   /* font-family: 'Zen Maru Gothic', sans-serif;*/
    letter-spacing: .3rem;
    line-height: 1.5;
    transform: scaleY(1.05);
    margin: 0 0 4rem;
    position: relative;
    padding-top: 24px;
    color: #442F06;
}
.toppoint04_t1 {
    font-size: 3.6rem;
    font-weight: 500;
	font-family: "Zen Old Mincho", serif;
    letter-spacing: .3rem;
    line-height: 1.5;
    transform: scaleY(1.05);
    margin: 0 0 4rem;
    position: relative;
    padding-top: 24px;
    color: #442F06;
}

/*.toppoint02_t1::before {
    content: "";
    position: absolute;
    background: url(../images/deco_title02.png) no-repeat center;
    display: block;
    text-align: center;
    width: 235px;
    height: 84px;
    top: -50px;
    left: 0;
}

.toppoint04_t1::before {
    content: "";
    position: absolute;
    background: url(../images/deco_title04.png) no-repeat center;
    display: block;
    text-align: center;
    width: 235px;
    height: 84px;
    top: -50px;
    left: 0;
}*/

.toppoint02_t2 {
font-size: 2.0rem;
font-weight: 400;
line-height: 2.2;
padding: 0 1.6rem;
text-align: justify;
}

.toppoint02_t3 {
    font-size: 2.8rem;
    text-align: center;
    letter-spacing: .25rem;
    text-indent:.25rem;
    font-weight: 500;
    width: 100%;
    margin: 0 0 20px;
}

.toppoint02_t3 span {
    font-size: 1.6rem;
    text-align: center;
    letter-spacing: .25rem;
    text-indent:.25rem;;
    font-weight: 500;
    width: 100%;
    margin: 0 0 5px; /* 余白を調整 */
    display: block;
}

.toppoint02_t3 ruby {
    margin-top: 0; /* 上方向の余白を削除 */
    display: block;
}

.toppoint02_t3 ruby rt {
    display: block;
    text-align: center;
        font-weight: 500;

}

.toppoint02_btn {
    text-align: center;
    width: 100%;
}
.toppoint02_btn a {
display: inline-block;
        border-radius: 30px;
        background: #fff;
        color: #3378d5;
		border:1px solid  #3378d5;
        text-align: center;
        padding: 0.6rem 6rem;
        transition: .6s;
        position: relative;
        font-size: 1.6rem;
        box-shadow: 0 3px 5px #e1e1e1;
    
}
    
.toppoint02_btn a:hover {
        text-decoration: none;
        opacity: 0.5;
    }    
.toppoint02_btn span::after {
    content: "";
        background: url(../images/arrow-white.svg);
        width: 1.8rem;
        height: 1.8rem;
        position: absolute;
        right: 2rem;
        font-size: 1rem !important;
        top: 2.3rem;
        color: #aedce0;
}
	
/*アンダーライン*/	
.text-underline {
  display: inline-block;
  position: relative;
}

.text-underline::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -4px;
  width: 0;
  height: 12px;
  background: #fcf149;
  transition: width 0.4s ease;
}

/* 表示されたら伸びる */
.text-underline.active::after {
  width: 100%;
}
    
/*特徴*/    
.feature__w {   
width: 80%;
    min-width: 1100px;
        padding: 80px 0 80px;
        background-color: #fbf5f0;
        background-image: url(../images/feature_bg.png);
        background-size: 400px;
        /* background-size: cover; */
        /* background-repeat: repeat; */
        margin: 0 auto 5%;
        border-radius: 60px;
}    
.feature_w {
    width: 1000px;
    margin: 0 auto;
}
.feature {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 60px 0;
}    
.feature_item {
    background: #ffffff;
    /*width: calc((100% - 30px) / 3);*/
    display: flex;
    align-items: center;
    margin: 0 auto;
    position: relative;
    box-shadow: 10px 10px 0px rgb(255 229 229);
    padding: 10px 30px;
    border-radius: 20px;
    justify-content: center;
    border: dotted 2px #ffc2ce;
    height: 200px;

}   
.feature_item01::before {
    content: "";
    background: url(../images/ic_feature_01.svg);
    width: 120px;
    height: 120px;
    display: block;
    margin: 0 auto 15px;
    top: -120px;
    left: 50%;
    transform: translate(-50%);
    position: absolute;
}  
.feature_item02::before {
    content: "";
    background: url(../images/ic_feature_02.svg);
    width: 120px;
    height: 120px;
    display: block;
    margin: 0 auto 15px;
    top: -120px;
    left: 50%;
    transform: translate(-50%);
    position: absolute;
} 
.feature_item03::before {
    content: "";
    background: url(../images/ic_feature_03.svg);
    width: 120px;
    height: 120px;
    display: block;
    margin: 0 auto 15px;
    top: -120px;
    left: 50%;
    transform: translate(-50%);
    position: absolute;
}     
.feature_item_img{
    width: 30%;
    margin: 0 auto;
    position: absolute;
    left: 0%;
}    
.feature_item_img img{
    width: 100%;
}   
.feature_item_txt {
    color: #837362;
    text-align: center;
    margin: 20px 0 20px 0;
    flex-grow: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 2rem;
}    
 .feature_item_txt span.txt_s {
     font-size: 1.5rem;
}     


	
	

	
	
	
	
	
	
	
	
	
    
    
    
    
/*.feature {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    gap: 40px;
}    
.feature_item {
    background: #ffffff;
    width: calc((100% - 30px * 2) / 2);
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    position: relative;
    box-shadow: 10px 10px 0px rgb(255 229 229);
     padding: 0 10px;
        border-radius: 20px;
}   

.feature_item_img{
    width: 40%;
    margin: 0 auto;
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translate(-50%);
    filter: drop-shadow(10px 10px 0px rgb(255 229 229));
}    
.feature_item_img img{
    width: 100%;
}   
.feature_item_txt {
    color: #837362;
    font-size: 20px;
    text-align: center;
    margin: 190px 0 20px;
    flex-grow: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}    
 .feature_item_txt span.txt_s {
     font-size: 1.5rem;
}     
/*.feature_item_txt {
    position: relative;
  width: 80%;
  margin: 0 auto 40px;
  padding: 20px;
  background: #ddd;
  text-align: center;
  border-radius: 10px;
    top: 50px;
}
.feature_item_txt::before {
  content: '';
  position: absolute;
  bottom: -28px;
  left: 50%;
  margin-left: -14px;
  border: 14px solid transparent;
  border-top-color: #ddd;
}*/
    
    
    
    
    
    
    
/*アレルギー*/
.movie {
    width: 100%;
    text-align: center;
}
.movie video {
    width: 90%;
    border-radius: 10px;
}  
.movie img {
    width: 90%;
    border-radius: 10px;
} 
    
    
    
    
/*新規開院*/
.open_w {
  padding: 20px 0 10px;
    /*半分background: linear-gradient(90deg, #4CAF50 0%, #4CAF50 50%, #8BC34A 50%, #8BC34A 100%);*/
/*    background: rgb(76,175,80);
    background: linear-gradient(227deg, rgba(76,175,80,1) 0%, rgba(97,205,87,1) 100%);*/
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 180px;
    background:url(../images/bg02.jpg);
}

.open {
    margin: 0 auto;
    width: 460px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.open::before,
.open::after {
    content: '';
    width: 2px;
    height: 56px;
    background-color: #fff;
}

.open::before {
    margin-right: 50px;
    transform: rotate(-35deg)
}
.open::after {
    margin-left: 40px;
    transform: rotate(35deg)
}


.open2 {
    text-align: center;
    color: #000000;
    line-height: 1.4;
}
.open3 {
    text-align: center;
    color: #000000;
    line-height: 1.4;
} 
.open_day1 {
  color: #FFEB3B;
    font-size: 4rem;
    display: block;
    width: 100%;
    font-family: 'Zen Maru Gothic', sans-serif;
}
.open_day2 {
  font-size: 4rem;
    font-weight: normal;
    margin: 0 0 10px;
    color: #fff;
    display: flex;
    align-items: flex-end;
    justify-content:center;
    line-height: .8;
}

.open4 .open_day2 {
    font-size:40px;
    display:flex;
    align-items:center;
}

.open4 .open_day2.mb0 {
    margin-bottom:0;
}

.open_day_week {
    font-size: 2rem;
    background: #ffffff;
    border-radius: 50%;
    text-align: center;
    padding-left:1px;
    color: #4caf50;
    width: 30px;
    height: 30px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
}
.open_day_time {
    font-size: 2.5rem;
    line-height: 1.4;
    color: #fff;
}

/*medical 装飾追加*/

.item_list_1 {
    width: 100%;
    display: block;
    list-style: none;
    font-size: 1.6rem;
    border-radius: 10px;
    margin: 0 0 10px;
}
.item_list_1 li {
    width: 100%;
    line-height: 1.5;
    margin: 0 0 10px 0;
    padding-left: 1em;
    text-indent: -1em;
}
.item_list_1 li:before {
    content: "";
    width: 10px;
    height: 10px;
    display: inline-block;
    background: #ccc;
    border-radius: 50%;
    margin-right: 12px;
}
.item_list_3_w {
    width: 100%;
    position: relative;
    padding: 30px 40px 20px;
    border: solid 1px #d6d6d6;
}  
.item_list_3_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 50px;
    border-radius: 5px 5px 0 0;
/*    background-color: #57aa00;*/
    background:url(../images/bg02.jpg);
    text-align: center;
    width: 200px;
    color: #fff;
}    
.item_list_3 {
    width: 95%;
    margin: 0 auto;
    display: flex;
    list-style: none;
    flex-wrap: wrap;
    font-size: 1.6rem;
    position: relative;
    column-gap: 20px;
} 

.item_list_3 li {
        width: calc((100% - 20px) / 2);
        line-height: 1.5;
        margin: 0 auto 10px 0;
        position: relative;
        text-indent: -20px;
        padding-left: 20px;
}
.item_list_3 li:nth-last-child(-n+2) {
        margin: 0 auto 0 0;
    }
.item_list_3 li span {
    font-size:1.3rem;
}

.item_list_3 li.medi05 {
    width:54%;
}
.item_list_3 li:before {
    content: "";
    width: 10px;
    height: 10px;
    display: inline-block;
    background: #57aa00;
    border-radius: 50%;
    margin-right: 10px;
}

.topdoctor_btn.subpage a {
    width:280px;
}

#schedule {
    position:relative;
}

#schedule::after {
    content:"";
    background:url(../images/ilst_sche.svg) space;
    position:absolute;
    top:0;
    right:0;
    left:0;
    display:block;
    width:780px;
    height: 40px;
    margin: auto;
    right:-40px;
}

#schedule .subpage2 {
    text-align:center;
    border-bottom:0;
}

#schedule .subpage2 h2 {
    background: url(../images/bg08.jpg) no-repeat;
    background-size:cover;
    display:inline-block;
    border-radius:20px;
    width: 480px;
    color:#fff;
    font-weight:700;
    font-size:2.1rem;
    padding:20px 0;
    margin-top: 30px;
    letter-spacing: .4rem;
}

#schedule table {
border-collapse: collapse;
width: 100%;
line-height: 1.5;
}

#schedule th, #schedule td {
border: solid 1px #d6d6d6 !important;
padding: 14px 8px;
text-align: left;
}

#schedule td {
font-size: 1.4rem;
font-weight: 400;
}

#schedule td.name {
    font-size:1.55rem;
    font-weight:600;
    width:23%;
}

/*#schedule td.name2 {
    font-weight: 600;
}*/

#schedule th {
background-color: #C8EFEA;
}

#schedule th.th-first {
    width:34%;
}

#schedule th.th-second {
    width:34%;
}

.ft_ilst {
}

.ft_ilst img {
    width:100%;
}


/*求人告知*/
.toprecruit__w {
    padding: 50px 0;
    background:url(../images/bg.jpg);
    text-align: center;
}

.toprecruit__w_inner {
    width:500px;
    margin:auto;
}

/*.toprecruit__w_inner {
    background:#fff;
    width:500px;
    margin:auto;
    border-radius:50px 20px 50px 20px;
    position:relative;
    top: -20px;
    z-index:1;
    border: 2px dashed  #ef7c1d;
    box-shadow:0 0 0 8px #fff;
}

.toprecruit1 {
    position: relative;
    display: inline-block;
    height: 40px;
    line-height: 40px;
    padding: 0 1rem;
    background: #ef7c1d;
    color: #fff;
    font-family:'Zen Maru Gothic', sans-serif;
    font-size: 1.8rem;
    font-weight: bold;
    text-align: center;
    z-index:2;
}

.toprecruit1::before,
.toprecruit1::after {
    position: absolute;
    top: 0;
    width: 0px;
    height: 0px;
    border-color: #ef7c1d transparent;
    border-style: solid;
    content: '';
}

.toprecruit1::before {
    left: -15px;
    border-width: 20px 0px 20px 15px;
}

.toprecruit1::after {
    right: -15px;
    border-width: 20px 15px 20px 0px;
}

.toprecruit_2 {
    display:flex;
    width:500px;
    align-items:center;
    margin: 3rem auto 0;
}

.toprecruit_2 img {
    display:flex;
    width:45%;
    border-radius:20px;
}

.toprecruit_2 p {
    display:inline-block;
    width:calc(100% - 50%);
    font-size:2.4rem;
    font-family:'Zen Maru Gothic', sans-serif;
    letter-spacing:.12em;
}*/

.toprecruit_3 {
    background: #ffd58a;
    display:inline-block;
    padding:4px 20px;
    border-radius:3px;
    width:100%;
}

.toprecruit_3 span {
    background:#fff;
    padding: 1px 10px;
    border-radius:50px;
    margin: 0 10px;
    letter-spacing: .1em;
}





.topaboutreservation__w {
width: 100%;
padding: 4rem 0;
background-image: url(../images/ilst03.svg);
background-repeat: no-repeat;
background-size: contain;
background-position: right;

}

.topaboutreservation1 {
width: 800px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding: 7rem 5rem;
border-radius: 46% 54% 44% 56% / 52% 38% 62% 48%;
background: #fefae4;
}

.topaboutreservation2 {
width: 100%;
margin: 0 auto 2rem;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.topaboutreservation3 {
width: 100%;
font-size: 2.7rem;
font-weight: 700;
letter-spacing: .05rem;
line-height: 1;
padding: 40px 0 30px 0;
text-align: center;
color: #5e3715;
font-family: 'Zen Maru Gothic';
background: url(../images/deco_title.svg) no-repeat center top / auto 30px;
}

.topaboutreservation6{
     background: linear-gradient(transparent 70%, #FFF787 30%);
      display: inline-block;
      }
.topaboutreservation3 span {
font-size: 2rem;
}

.topaboutreservation4 {
width: 100%;
text-align: center;
font-size: 1.7rem;
}

.topaboutreservation5 {
width: 100%;
text-align: center;
}


.topaboutreservation5 a {
display: inline-block;
width: 27rem;
margin: 0 auto;
background: url(../images/bg02.jpg);
padding: 1.5rem 0;
text-align: center;
letter-spacing: .05rem;
color: #fff;
font-weight: 500;
font-size: 2rem;
line-height: 1.3;
position: relative;
border-radius: 20px;
}

.topaboutreservation5 a span::after {
content: "";
background: url(../images/ic_arrow1.svg);
display: inline-block;
width: 2rem;
height: 2rem;
position: absolute;
right: 1.5rem;
top: 50%;
transform: translateY(-50%);
opacity: .9;
}



#popup {
    display: none;
}
.topbnr_gray {	
    display: none;
}
#popup:checked + .topbnr_gray {	
    display: block;
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: 9999;
    background: rgba(0, 0, 0, 0.6);
}
.topbnr_window {
    position: fixed;
    top: 50%;
    left: 50%;
    width: 800px;
    max-width: 800px;
    padding: 40px 70px;
    background-color: #fff;
    border-radius: 4px;
    align-items: center;
    transform: translate(-50%, -50%);    
}
.topbnr_title{
    width: 100%;
    display: block;
    font-size: 2.3rem;
    color: #ff5717;
    line-height: 1;
    text-align: center;
    margin: 0 0 30px 0;
    font-family: 'Zen Maru Gothic', sans-serif;   
    font-weight: bold;
}
.topbnr_title span{
    border-bottom: 1px dashed #ffabab;
}    
.topbnr_close {	
    position: absolute;
    color: #fff;
    background-color:#6aa7c9;
    padding: 5px 13px;
    border-radius: 3px;
    top: 20px;
    right: 20px;
    cursor:pointer;
} 
.popup_txt{
    margin: 0 0 2rem;
        text-align: left;
    }  
.popup_img{
     width: 80%;
    margin: 0 auto;
    }
.popup_img img{
     width: 100%;
    
    } 
    
    
.pdf_link {
position: relative;
padding-left: 18px;
line-height: 1;
margin: 20px 0 0;
}    
.pdf_link::before {
content: "";
position: absolute;
top: 50%;
left: 2px;
margin-top: -6px;
border: 6px solid transparent;
border-left: 10px solid #9fc7dd;
}
    
}
/* PC */




































@keyframes DownAnime{
  from {
    opacity: 0;
    transform: translateY(-170px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}




@keyframes yurayura {
  0% , 100%{
      transform: rotate(10deg);
  }
  50%{
      transform: rotate(-10deg);
  }
}




@keyframes fadeInHead {
    from {
        opacity: 0;
        transform: translateY(50px); /* 下に隠れている */
    }
    to {
        opacity: 1;
        transform: translateY(0); /* 頭だけ出る */
    }
}



/* キャラクターがふるふる揺れるアニメーション */
@keyframes shake {
    0% {
        transform: translateY(0) rotate(0deg);
    }
    25% {
        transform: translateY(-5px) rotate(-5deg);
    }
    50% {
        transform: translateY(5px) rotate(5deg);
    }
    75% {
        transform: translateY(-5px) rotate(-5deg);
    }
    100% {
        transform: translateY(0) rotate(0deg);
    }
}














/* sp */
@media screen and (max-width:750px) {

.wrapper {
/*padding-bottom: 7rem;*/
}

/* header */

header{
  width: 100%;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  height: 7rem;
  position: fixed;
  top: 0;
  z-index: 100;
  background: #fafdff;
}

.header1{
  width: calc(100%);
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.header2{
  width: 100%;
  margin: 0 auto;
}

.header2 h1{
  width: 100%;
  height: 7rem;
  display: flex;
  align-items: center;
  /*padding-left: 2rem;*/
	padding-left: 6rem;
}

.header2 h1 a{
display: inline-block;
}

.header2 h1 a img{
    width: auto;
    height: 4.4rem;
    max-width: calc(100% - 4rem);
}
.header3{
  display: none;
  width: 100%;
  margin: 0 auto;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  text-align: center;
}

.header4{
width: 100%;
text-align: center;
margin: 0 0 2vw 0;
}

.header4 a{
width: 100%;
display: block;
font-size: 3rem;
color: #333;
font-family: 'Zen Old Mincho', serif;
font-weight: 700;
line-height: 1;
}

.header4 a span{

}

.header4 a span::before{
    content: "";
    background: url("../images/ic_tel.svg");
    display: inline-block;
    width: 2.4rem;
    height: 2.4rem;
    margin: 0 5px -1px 0;
    background-repeat: no-repeat;
}

.header5{
    width: 240px;
    text-align: center;
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: .1rem;
    color: #6b3e03;
    margin: 0 auto 3vw;
    background: #fff;
    padding: 3px 0;
    border-radius: 50px;
    border: 1px solid #6b3e03;
    position: relative;
}

.header5::before {
    position: absolute;
    content:"";
    background: url(../images/ilst_car.svg);
    background-repeat:no-repeat;
    background-position:right;
    display:block;
    width: 100px;
    height: 20px;
    top:-16px;
    right:4px;
}



.header6{
width: 35rem;
margin: 0 auto;
font-size: 1.5rem;
font-weight: 500;
line-height: 1.4;
}

.header7{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0 1vw 0;
}

.header8{
width: 7.5rem;
text-align: center;
}

.header8 span{
display: inline-block;
border-radius: 100px;
text-align: center;
line-height: 1;
width: 100%;
color: #6b3e03;
font-size: 1.3rem;
}

.header9{
width: calc(100% - 9rem);
color: #6b3e03;
font-size: 1.3rem;
}

.header10{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}

.header11{
width: 7.5rem;
text-align: center;
}

.header11 span{
display: inline-block;
border-radius: 100px;
text-align: center;
line-height: 1;
width: 100%;
    color: #eb5e5e;
font-size: 1.3rem;
}

.header12{
    width: calc(100% - 9rem);
    color: #eb5e5e;
    font-size: 1.3rem;

}



.header13{
width: calc(100% - 70px);
display: flex;
align-items: center;
justify-content: center;
font-size: 1rem;
color: #696969;
letter-spacing: 0rem;
    padding: 2vw 0 2vw 2vw;
    line-height: 1.2;
}

.header13 span{
  /*border-bottom: 2px dotted #f9e43f;*/
  }

.header14{
  width: 100%;
  font-size: 1.3rem;
  letter-spacing: 0;
}

.header15{
  width: 100%;
  padding: 0 0 20px 0;
}


/* header */



.link{
    width: 100%;
}    
.link a {
    color: #6aa7c9;
    border-bottom: 1px #6aa7c9 dotted;
    padding: 0 0 5px;
    font-size: 1.4rem;
	line-height: 1.6em;
}    






/* nav */

/*========= ナビゲーションのためのCSS ===============*/

#g-nav{
    position: fixed;
    z-index: -1;
    opacity: 0;
    top: 0;
    width: 100%;
    height: 100vh;
    background: #239f67;
    background-size:cover;
    transition: all 0.3s;
}

/*アクティブクラスがついたら透過なしにして最前面へ*/
#g-nav.panelactive{
opacity: 1;
z-index:999;
}

/*ナビゲーションの縦スクロール*/
#g-nav.panelactive #g-nav-list{
/*ナビの数が増えた場合縦スクロール*/
position: fixed;
z-index: 999; 
width: 100%;
height: 100vh;/*表示する高さ*/
overflow: auto;
-webkit-overflow-scrolling: touch;
}

/*ナビゲーション*/
#g-nav ul {
display: none;
/*ナビゲーション天地中央揃え*/
z-index: 999;
}

#g-nav.panelactive ul {
width: 100%;
display: flex !important;
flex-wrap: wrap;
justify-content: space-between;
margin: 15vw 0 0 0;
}

/*リストのレイアウト設定*/

#g-nav li{
  list-style: none;
  text-align: center;
  width: 100%;
  margin: 0 auto 3rem;
}

#g-nav li a{
  color: #fff;
  text-decoration: none;
  text-transform: uppercase;
  letter-spacing: 0.1rem;
  font-weight: 700;
  font-size: 1.6rem;
  border-radius: 5px;
}

#g-nav.panelactive ul li ul{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
margin: 2vw auto 0;
}

#g-nav.panelactive ul li ul li{
width: 49%;
margin: 0 2% 2vw 0;
align-items: center;
display: flex;
}

#g-nav.panelactive ul li ul li:nth-child(2n){
margin: 0 0 2vw 0;
}

#g-nav.panelactive ul li ul li a{
font-size: 1.3rem;
background: #36a34b;
line-height: 1.2;
padding: 1vw 1vw;
display: block;
width: 100%;
letter-spacing: -0.05rem;
border-radius: 200px;
}

#g-nav.panelactive ul li ul li img{
width: 100%;
border-radius: 10px 3px 10px 3px;
}








/*========= ボタンのためのCSS ===============*/
.openbtn{
  position: fixed;
  z-index: 9999;
  top: 1rem;
  right: 2rem;
  cursor: pointer;
  width: 3.5rem;
  height: 5rem;
}

/*×に変化*/    
.openbtn span{
  display: inline-block;
  transition: all .4s;
  position: absolute;
  height: 3px;
  border-radius: 2px;
  background-color: #8fc31f !important;
  width: 100%;
}

.active span{
  display: inline-block;
  transition: all .4s;
  position: absolute;
  height: 3px;
  border-radius: 2px;
  background-color:  #fff !important;
  width: 100%;
}

.openbtn span:nth-of-type(1) {
  top: 1rem;
}

.openbtn span:nth-of-type(2) {
  top: 2.2rem;
}

.openbtn span:nth-of-type(3) {
  top: 3.4rem;
}

.openbtn.active span:nth-of-type(1) {
  top: 1rem;
  transform: translateY(6px) rotate(-45deg);
  width: 100%;
}

.openbtn.active span:nth-of-type(2) {
opacity: 0;
}

.openbtn.active span:nth-of-type(3){
  top: 2.2rem;
  transform: translateY(-6px) rotate(45deg);
  width: 100%;
}


nav ul li.has-child dt{
overflow: hidden;
margin: 0 0 1vw 0;
}

nav ul li.has-child dd{
padding: 1vw 0;
font-weight: 500;
letter-spacing: -.05rem;
}

nav ul li.has-child dd.has-child-last{
padding: 0;
}




#g-nav li.navbnr a{
background: #02b2bf;
color: #fff;
}

.spnavinfo__w{
width: 100%;
display: flex;
flex-wrap: wrap;
align-content: center;
}

.spnavinfo1{

}

.spnavinfo2{

}



/* nav */






/* slider */

.swiper {
width: 100%;
height: 100%;
}

.swiper-slide {
text-align: center;
font-size: 18px;
background: #fff;

/* Center slide text vertically */
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
-webkit-justify-content: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
-webkit-align-items: center;
align-items: center;
}

.swiper-slide img {
display: block;
width: 100%;
height: 100%;
object-fit: cover;
}

.swiper-button-next,
.swiper-button-prev {
--swiper-navigation-color: #009f88;
}


/* slider */










/* pagetop */


#page-top {
  position: fixed;
  bottom: 1.7rem;
  right: 1.7rem;
  z-index: 99;
  opacity: 1;
}
#page-top a {
  width: 4rem;
  display: block;
  opacity: 0.9;
  transition: all .3s ease;
}
#page-top a:hover {
text-decoration: none;
opacity: .5;
}


#page-top a img{
width: 100%;
display: block;
}


/* pagetop */






/* breadcrumb */

.breadcrumb__w{
width: 100%;
padding: 3vw 0 3vw 3vw;
font-size: 1.2rem;
background: #fff;
}

.breadcrumb__w ol{
padding: 0;
color: #333 !important;
width: 100%;
margin: 0 auto;

}

.breadcrumb__w ol li{
list-style:none;
display:inline;
}

.breadcrumb__w ol li a:link,
.breadcrumb__w ol li a:visited{
color:#333 !important;
}

.breadcrumb__w ol li a:hover,
.breadcrumb__w ol li a:active{
opacity: .7;
}

.breadcrumb__w ol li:last-of-type a{
color:#333 !important;
}

.breadcrumb__w ol li:last-of-type a:hover,
.breadcrumb__w ol li:last-of-type a:active{
opacity: .7;
}

/* breadcrumb */


	
	

/*初診の方*/
   
.first__w {
	width: 100%;
	margin: 0 auto;
	text-align: center;
	font-family: 'Zen Maru Gothic', sans-serif;
	font-weight: 500;
	background: #fafdff;
	padding: 30px 0 0;
	}    	
   
.first_btn {
	}    	
	
   
.first_btn a{
	width: 80%;
	display: flex;
	color: #ffffff;
	text-align: center;
	font-size: 1.9rem;
	position: relative;
	letter-spacing: .1rem;
	vertical-align: middle;
	line-height: 1.4;
	transition: .5s;
	justify-content: center;
	align-items: center;
	font-weight: 500;
	border: 2px dashed #fff1f1;
	box-shadow: 0 0 0 8px #61a9c9;
	padding: 15px;
	background: #61a9c9;
	border-radius: 10px;
}

/*モーダルを開くボタン*/
.modal-open2{
	background: #f4b1b1;
	margin: 0 auto;
	padding: 20px 0;
	display: block;
	border-radius: 5px;
	color: #ffffff;
	font-size: 2.5rem;
	cursor: pointer;
}
	
/*モーダル本体の指定 + モーダル外側の背景の指定*/
.modal-container2{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0,0,0,50%);
  padding: 40px 20px;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transition: .3s;
  box-sizing: border-box;
	z-index: 100;
}
/*モーダル本体の擬似要素の指定*/
.modal-container2:before{
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
/*モーダル本体に「active」クラス付与した時のスタイル*/
.modal-container2.active{
  opacity: 1;
  visibility: visible;
}
/*モーダル枠の指定*/
.modal-body2{
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 98%;
}
/*モーダルを閉じるボタンの指定*/
.modal-close2{
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: -40px;
  right: 1px;
  width: 40px;
  height: 40px;
  font-size: 40px;
  color: #fff;
  cursor: pointer;
}
/*モーダル内のコンテンツの指定*/
.modal-content2{
  background: #fff;
  text-align: left;
  padding: 20px;
}
	

/*初診の方*/


/*3つの特長*/

.toppoint__w {
width: 100%;
padding: 4rem 0 4rem;
position:relative;
  clear: both;
  background: url("../images/bg_baige.jpg");
}    
	
.toppoint_h{
text-align: center;
margin: 0 0 3rem 0;
}

.toppoint_h h2{
    display: block;
    text-align: center;
    font-size: 2.3rem;
    letter-spacing: .3rem;
    line-height: 1;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 500;
}

.toppoint_h h2 span{
    display: block;
    position: relative;
}
.toppoint_h h2::before{
content: "";
background: url("../images/ladies_icon.png");
display: block;
width: 20px;
height: 43px;
margin: 0 auto 10px;
}
.toppoint_h h2 span::after{
    font-size: 1.5rem;
    font-family: 'Zen Maru Gothic', sans-serif;
    letter-spacing: .005rem;
    text-align: center;
    content: "Maternity & Gynecology";
    display: block;
    font-weight: 700;
    margin: 10px auto 10px;
    color: #f37bb1;
}
.toppoint__wi {
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.toppoint_i {
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

.toppoint_img img {
    width: 80%;
    border-radius: 8px;
    margin: 0 0 5vw;
}    
.toppoint_logo{
    width: 60%;
    margin: 0 auto;
    padding: 0 0 20px;
}   
.toppoint_logo img{
    width: 100%;
}   
    
.toppoint_t {
    width: 100%;
}
.toppoint_t img {
width: 40%;
margin: 0 auto;
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.toppoint_t1, .toppoint_t1_02, .toppoint_t1_03, .toppoint_t1_04, .toppoint_t1_05{
    font-size: 2.6rem;
	font-family: "Zen Old Mincho", serif;
    /*font-family: 'Zen Maru Gothic', sans-serif;*/
    text-align: center;
    letter-spacing: .1rem;
    font-weight: 500;
margin: 0 0 3rem 0;
    line-height: 1.5;
    position: relative;
    padding-top: 10px;
    color: #442F06;
}

/*.toppoint_t1::before {
    content: "";
    position: absolute;
    background: url(../images/deco_title_sp.png) no-repeat center;
    display: block;
    text-align: center;
    width: 120px;
    height: 43px;
    top: -50px;
    left: 0;
    right:0;
    margin:auto;
}
.toppoint_t1_02::before {
    content: "";
    position: absolute;
    background: url(../images/deco_title02_sp.png) no-repeat center;
    display: block;
    text-align: center;
    width: 120px;
    height: 43px;
    top: -50px;
    left: 0;
    right:0;
    margin:auto;
}
.toppoint_t1_03::before {
    content: "";
    position: absolute;
    background: url(../images/deco_title03_sp.png) no-repeat center;
    display: block;
    text-align: center;
    width: 120px;
    height: 43px;
    top: -50px;
    left: 0;
    right:0;
    margin:auto;
}
.toppoint_t1_04::before {
    content: "";
    position: absolute;
    background: url(../images/deco_title04_sp.png) no-repeat center;
    display: block;
    text-align: center;
    width: 120px;
    height: 43px;
    top: -50px;
    left: 0;
    right:0;
    margin:auto;
}
.toppoint_t1_05::before {
    content: "";
    position: absolute;
    background: url(../images/deco_title05_sp.png) no-repeat center;
    display: block;
    text-align: center;
    width: 120px;
    height: 43px;
    top: -50px;
    left: 0;
    right:0;
    margin:auto;
}*/

.toppoint_t2 {
	    font-size: 1.8rem;
	font-weight: 400;
    line-height: 1.8;
padding: 0 1.6rem;
margin-bottom: 1rem;
    position: relative;
        z-index: 2;;
}
.toppoint_t3 {
    text-align: center;
    letter-spacing: .1rem;
    color: #424242;
    line-height: 2rem;
    margin-bottom: 4rem;
  font-weight: 500;
    font-size: 2rem;
}

.toppoint_t3 span {
  margin-right: 1.6rem;
  font-weight: 500;
  font-size: 1.8rem;
}

.toppoint_t3 ruby {
    margin-top: 0; /* 上方向の余白を削除 */
}

.toppoint_t3 ruby rt {
    text-align: center;
        font-weight: 400;
        }


.toppoint_btn {
    text-align: center;
}
.toppoint_btn a {
   display: inline-block;
        border-radius: 30rem;
        background: #ffffff;
        color: #ffffff;
        text-align: center;
        padding: 1rem 5rem;
        transition: .6s;
        position: relative;
        font-size: 1.4rem;
        letter-spacing: 0.01rem;
}
.toppoint_btn a:hover {
        text-decoration: none;
        opacity: 0.5;
    }      
.toppoint_btn span::after {
    content: "";
    background: url(../images/arrow-white.svg);
    width: 1.6rem;
    height: 1.6rem;
    position: absolute;
    right: 3vw;
    top: 1.5rem;
}
	
	
	
/*アンダーライン*/	
	
.text-underline {
  display: inline-block;
  position: relative;
}

.text-underline::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -6px;
  width: 0;
  height: 10px;
  background: #fcf149;
  transition: width 0.4s ease;
}

/* 表示されたら伸びる */
.text-underline.active::after {
  width: 100%;
}

	

/*発熱のある方*/
   
.fever__w {
	width: 100%;
	margin: 0 auto;
	text-align: center;
	font-family: 'Zen Maru Gothic', sans-serif;
	font-weight: 500;
	background: #fafdff;
	padding: 30px 0;
	}    	
   
.fever_btn {
	}    	
	
   
.fever_btn a{
	width: 80%;
	display: flex;
	color: #ffffff;
	text-align: center;
	font-size: 1.9rem;
	position: relative;
	letter-spacing: .1rem;
	vertical-align: middle;
	line-height: 1.4;
	transition: .5s;
	justify-content: center;
	align-items: center;
	font-weight: 500;
	border: 2px dashed #fff1f1;
	box-shadow: 0 0 0 8px #ff4b4b;
	padding: 15px;
	background: #ff4b4b;
	border-radius: 10px;
}

/*モーダルを開くボタン*/
.modal-open{
	background: #f4b1b1;
	margin: 0 auto;
	padding: 20px 0;
	display: block;
	border-radius: 5px;
	color: #ffffff;
	font-size: 2.5rem;
	cursor: pointer;
}
	
/*モーダル本体の指定 + モーダル外側の背景の指定*/
.modal-container{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  background: rgba(0,0,0,50%);
  padding: 40px 20px;
  overflow: auto;
  opacity: 0;
  visibility: hidden;
  transition: .3s;
  box-sizing: border-box;
	z-index: 100;
}
/*モーダル本体の擬似要素の指定*/
.modal-container:before{
  content: "";
  display: inline-block;
  vertical-align: middle;
  height: 100%;
}
/*モーダル本体に「active」クラス付与した時のスタイル*/
.modal-container.active{
  opacity: 1;
  visibility: visible;
}
/*モーダル枠の指定*/
.modal-body{
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 98%;
}
/*モーダルを閉じるボタンの指定*/
.modal-close{
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: -40px;
  right: 1px;
  width: 40px;
  height: 40px;
  font-size: 40px;
  color: #fff;
  cursor: pointer;
}
/*モーダル内のコンテンツの指定*/
.modal-content{
  background: #fff;
  text-align: left;
  padding: 20px;
}
	

/*発熱のある方*/	


/*特徴*/
.topfeature1{
text-align: center;
margin: 0 0 3rem 0;
}

.topfeature1 h2 span::before{
    font-size: 1.5rem;
        letter-spacing: .15em;
        text-align: center;
        content: "FEATURE";
        display: block;
        font-weight: 500;
        margin: 0 auto 10px;
        color: #8fc31f;
}

.topfeature1 h2 span{
display: block;
position: relative;
}

.topfeature1 h2 {
    display: block;
    text-align: center;
    font-size: 2.3rem;
    letter-spacing: .3rem;
    line-height: 1;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 500;
}


.topfeature2{
width: 100%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.topfeature3{
width: 80%;
margin: 0 auto 4rem;
position: relative;
overflow: hidden;
z-index: 1;
}

.topfeature3:last-child{
margin: 0 auto 0;
}

.topfeature3:first-child .topfeature10::before {
        content: "";
        display: block;
        background: url(../images/ic_01.svg);
        width: 160px;
        height: 45px;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        top: -30px;
        left: 50%;
        transform: translateX(-50%);
        position: absolute;
        margin: 0 auto;
    }   
    .topfeature3:nth-child(2) .topfeature10::before {
        content: "";
        display: block;
        background: url(../images/ic_02.svg);
        width: 160px;
        height: 45px;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        top: -30px;
        left: 50%;
        transform: translateX(-50%);
        position: absolute;
        margin: 0 auto;
    }   
    .topfeature3:nth-child(3) .topfeature10::before {
        content: "";
        display: block;
        background: url(../images/ic_03.svg);
        width: 160px;
        height: 45px;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        top: -30px;
        left: 50%;
        transform: translateX(-50%);
        position: absolute;
        margin: 0 auto;
    }
    .topfeature3:nth-child(4) .topfeature10::before {
        content: "";
        display: block;
        background: url(../images/ic_04.svg);
        width: 160px;
        height: 45px;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        top: -30px;
        left: 50%;
        transform: translateX(-50%);
        position: absolute;
        margin: 0 auto;
    } 
    h3.topfeature_hd {
        font-family: 'Zen Maru Gothic', sans-serif;
        font-weight: 500;
        font-size: 2rem;
        box-sizing: border-box;
        margin: 50px 0 20px;
        color: #239f67;
        line-height: 1.5;
        letter-spacing: 0.12em;
        text-align: center;
    }    
.topfeature4{
    letter-spacing: .2rem;
        margin: 25px 0 20px 0;
        line-height: 1.3;
        display: flex;
        align-items: center;
        justify-content: center;
        font-family: 'Zen Maru Gothic', sans-serif;
}

.topfeature4 span{
}

.topfeature4 span::before{
}


.topfeature8{
width: 100%;
font-size: 1.3rem;
line-height: 1.6;
padding: 0 5vw;
margin: 0 0 2vw;    
}

.topfeature9{
width: 100%;
}

.topfeature9 a{
display: block;
width: 80%;
margin: 0 auto;
background: #e56ca3;
padding: 2vw 0;
text-align: center;
letter-spacing: -.005rem;
color: #ffffff;
box-shadow: 6px 6px 15px #f1b2cf;
font-weight: 500;
font-size: 1.3rem;
line-height: 1;
position: relative;
}

.topfeature9 a span{
display: block;
width: 100%;
}

.topfeature9 a span::after{
content: "";
background: url("../images/ic_arrow1.svg");
display: inline-block;
width: 1.6rem;
height: 1.6rem;
position: absolute;
top: .85rem;
right: 1rem;
}

.topfeature9 a:hover{
transform: translateY(-3px);
opacity: .5;
}

.topfeature10{
width: 100%;
text-align: center;
margin: 0 0 1rem 0;    
position: relative;    
}

.topfeature10 img{
width: 100%;
border-radius: 5px;    
}

.topfeature11{
margin: 2vw auto 5vw;
width: 90%;    
text-align: center;    
}
.topfeature11 span{
width: 100%;
font-size: 1.5rem;
font-weight: 500;

}

.topfeature12{
margin: 2vw auto 5vw;
width: 90%;    
}
.topfeature12 span{
width: 100%;
font-weight: 500;

}
  

    
.feature__w {
        width: 90%;
        padding: 4rem 0 4rem;
        background-color: #fbf5f0;
        background-image: url(../images/feature_bg.png);
        background-size: 300px;
        /* background-size: cover; */
        /* background-repeat: repeat; */
        margin: -5% auto 5%;
        border-radius: 20px;
    }    
.feature_w {
        width: 90%;
    margin: 0 auto;
}

.topfeature_wrapper {
    display:flex;
    flex-direction:column;
    margin: auto;
    justify-content:center;
}

.topfeature_item {
    width:315px;
    height: 285px;
    background: url(../images/feature01.svg);
    background-size:contain;
    background-repeat:no-repeat;
    margin:auto;
}

.topfeature_item:nth-child(2) {
    background: url(../images/feature02.svg);
    background-size:contain;
    background-repeat:no-repeat;
}

.topfeature_item:nth-child(3) {
    background: url(../images/feature03.svg);
    background-size:contain;
    background-repeat:no-repeat;
}






/* medical */
/*
.topmedical__w{
  width: 100%;
  padding: 4rem 0 4rem;
        background: url(../images/medi_bg.png);
        background-size: cover;
        position: relative;
}*/
.topmedical__w{
  width: 100%;
  padding: 4rem 0;
        background: url(../images/bg_cta.jpg);
        background-size: cover;
        position: relative;
	
/*width: 100%;
  clear: both;
  position: relative;
  background: linear-gradient(to bottom, #ecf7f3 40%, #ecf7f3 72%, rgba(236, 247, 243, 0) 80%, rgba(236, 247, 243, 0) 100%);
  padding: 4rem 0 0;	*/
	
}
/*.topmedical__w ::before {
    content: '';
    position: absolute;
    background: url("../images/border_smooth_w.png") no-repeat top center;
    background-size: cover;
    width: 100%;
    height: 171px;
    top: -1px;
    left: 0;
    right: 0;
    margin: 0 auto; }*/
	
.topmedical_bg {
  content: "";
  display: block;
  width: 45%;
  height: 380px;
  background-image: url(../images/ilst05.svg);
  background-repeat: no-repeat;
  background-size: contain;
  background-position: right bottom;
  position: absolute;
  bottom: 3rem;
  right: 1%;
  z-index: 1;
  opacity: .8;
}

.topmedical_ilst {
    background-image:url(../images/ilst06.svg);
    background-repeat:no-repeat;
    background-size:contain;
    background-position:top;
    width:280px;
    height: 280px;
    position:absolute;
    top:34px;
    left:30px;
}
.topmedical1{
text-align: center;
margin: 0 0 4rem 0;
	    color: #fff;
}

.topmedical1 h2{
display: block;
    text-align: center;
    font-size: 2.8rem;
    letter-spacing: .3rem;
    color: #fff;
    line-height: 1;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 500;
	text-shadow: #407457 2px 0 10px;}

.topmedical1 h2 span{
    display: block;
    position: relative;
}
/*.topmedical1 h2::before{
content: "";
background: url("../images/icon_leaf.png");
display: block;
width: 43px;
height: 43px;
margin: 0 auto 10px;
}*/

.topmedical1 h2 span::after{
font-size: 1.5rem;
    letter-spacing: .15em;
    text-align: center;
    content: "MEDICAL";
    display: block;
    font-weight: 500;
    margin: 10px auto;
    color: #fff;
}

.topmedical1 p{
display: block;
    text-align: center;
    font-size: 1.4rem;
    letter-spacing: .3rem;
    color: #fff;
    line-height: 1.6;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: 500;
	padding: 0 2rem;
	margin-top: 1rem;
	text-shadow: #407457 2px 0 10px;
}

.topmedical2{
width: 90%;
margin: 0 auto;
display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        position: relative;
        grid-gap: 2rem;
}


/*
.topsubject_box:nth-child(5)
{
    margin: 0 3rem 0 0;
}
*/


.topsubject_box div.icon {
            width: 7rem;
        height: 7rem;
        display: block;
        margin: 0 auto 10px;
        background: url(../images/ic_bg.png);
        background-size: cover;
}
    

    
.topsubject_box a:hover,
.topsubject_box a:active{
/*opacity: .6;*/
transform: translateY(-3px);
box-shadow: 0 5px 0 rgb(150 211 126 / 30%);      
}
  
/* link先なし */
.topsubject_box .no-hover {  
     width: 100%;
        padding: 2rem 0;
        display: flex;
        height: 100%;
        border-radius: 10px;
        background: #ffffff;
        transition: all .2s;
        color: #442f06;
        position: relative;
        background-repeat: no-repeat;
        background-size: cover;
        border: solid 2px #d3e3cc;
}
.no-hover:hover, .no-hover:active {
    transform: none;
    box-shadow: none;
    cursor: default;
}
.topsubject_box .no-hover div.icon {
         width: 7rem;
        height: 7rem;
        display: block;
        margin: 0 auto 0;
        background: url(../images/ic_bg.png);
        background-size: cover;
    }      
.topsubject_box .no-hover span {
        text-align: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-content: center;
        height: 4rem;
        font-size: 1.6rem;
        line-height: 1.4;
        letter-spacing: .1rem;
        font-weight: 500;
        font-family: "Zen Maru Gothic";
        border-bottom: 2px #71bc54 dotted;
}
.topsubject_box .no-hover span:last-child {
        text-align: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-content: center;
        height: 4rem;
        font-size: 1.3rem;
        line-height: 1.3;
        letter-spacing: .1rem;
        font-weight: 500;
        font-family: "Zen Maru Gothic";
        border: none;
    margin: 1rem 0 0 ;
}        
/* link先なし */   
    
    
.topsubject_box2:hover,
.topsubject_box2:active{
opacity: .6;
transform: translateY(-3px);
}
    
.topsubject_box2 {
    width: 100%;
    text-align: center;
    border-radius: 20px;
    transition: all .3s;
      z-index: 2;
    position: relative;
}
.popupstyle{
          width: 100%;
        padding: 3rem 0;
        display: flex;
        height: 100%;
        border-radius: 10px;
        background: #ffffff;
        transition: all .3s;
        color: #666;
        position: relative;
        box-shadow: 10px 10px 5px rgb(194 223 235);
        background-repeat: no-repeat;
        background-size: cover;
}
.topsubject_box2 div.icon {
    width: 5rem;
    height: 5rem;
    display: block;
    margin: 0 auto 15px;
}
.topsubject_box2:hover,
.topsubject_box2:active{
opacity: .6;
transform: translateY(-3px);
}
    

.topsubject_t {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    flex-direction: column;
	padding: 0 1rem;
}
.topsubject_t2 {
  display: block;
  font-size: 1.6rem;
  line-height: 1.6;
  width: 100%;
}
.topsubject_box a span,.topsubject_box2 span {
text-align: center;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-content: center;
        height: 4rem;
        font-size: 1.6rem;
        line-height: 1.4;
        letter-spacing: .1rem;
        font-weight: 500;
        font-family: "Zen Maru Gothic";
      /*  border-bottom: 2px #71bc54 dotted;*/
}
    


.topmedical3{
width: 19%;
background-size: cover;
box-shadow: 5px 5px 5px #F7F6F4;
border-radius: 30px 10px 30px 10px;
opacity: 1;
padding: 0 0 10px 0;
}

.topmedical4{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
position: relative;
margin: 0 0 60px 0;
}

.topmedical4 a{
display: block;
width: 100%;
border-radius: 2px 2px 2px 2px;
}


.topmedical5{
position: absolute;
z-index: 2;
width: 100%;
left: 50%;
bottom: -50px;
transform: translateX(-50%);
}

.topmedical5b{
  display: block;
  width: 92%;
  height: 100%;
  background: linear-gradient(0deg, white, rgb(255 255 255 / 85%));
  text-align: center;
  font-size: 2.2rem;
  font-weight: 500;
  padding: 30px 0;
  font-family: 'Zen Maru Gothic', serif;
  position: relative;
  box-shadow: 2px 2px 1px rgb(106 199 122);
  border-radius: 3px;
  margin: 0 auto;
}

.topmedical5b span{
display: block;
}

.topmedical5b span::before{
content: "";
position: absolute;
display: block;
background: url("../images/ic_arrow3.svg") no-repeat;
width: 15px;
height: 15px;
right: 5px;
bottom: 5px;
}

.topmedical6{
position: relative;
z-index: 1;
}

.topmedical6 img{
  width: 100%;
  border-radius: 10px 40px 10px 40px;
}

.topmedical7{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
position: relative;
}

.topmedical8{
width: 100%;
margin: 0 0 10px 0;
}

.topmedical8 a{
width: 93%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
position: relative;
background: #fff;
margin: 0 auto;
align-items: center;
padding: 5px 5px;
border-radius: 2px 2px 2px 2px;
}

.topmedical9{
width: 20%;
}

.topmedical9 img{
width: 100%;
}

.topmedical10{
width: 75%;
}

.topmedical11{
font-weight: 500;
width: 100%;
font-size: 1.7rem;
text-align: center;
letter-spacing: 0.02rem;
position: relative;
line-height: 1.3;
}

.topmedical11 span{
display: block;
}

/*
.topmedical11 span::after{
position: absolute;
content: "";
background: url("../images/ic_arrow2.svg") no-repeat;
display: block;
width: 1.2rem;
height: 1.2rem;
margin: 0 0 0 9px;
vertical-align: baseline;
right: 2px;
top: 11px;
}
*/



    .topsubject_box {
        width: calc((100% - 2rem) / 2);
        text-align: center;
        border-radius: 20px;
    }

/*.topsubject_box a{
    width: 100%;
        padding: 2rem 0;
        display: flex;
        height: 100%;
        border-radius: 10px;
        background: #ffffff;
        transition: all .2s;
        color: #442f06;
        position: relative;
        background-repeat: no-repeat;
        background-size: cover;
        border: solid 2px #d3e3cc;
}*/
.topsubject_box .waku{
    width: 100%;
        padding: 2rem 0;
        display: flex;
        height: 100%;
        border-radius: 10px;
        background: #ffffff;
        transition: all .2s;
        color: #442f06;
        position: relative;
        background-repeat: no-repeat;
        background-size: cover;
        border: solid 2px #d3e3cc;
}
    

#popup {
    display: none;
}
.topbnr_gray {	
    display: none;
}
#popup:checked + .topbnr_gray {	
    display: block;
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: 99999;
    background: rgba(0, 0, 0, 0.6);
}
.topbnr_window {
    position: fixed;
    top: 50%;
    left: 50%;
    width: 90%;
    max-width: 90%;
    padding: 5vw 10vw;
    background-color: #fff;
    border-radius: 4px;
    align-items: center;
    transform: translate(-50%, -50%);    
}
.topbnr_title{
    width: 100%;
    display: block;
    font-size: 1.6rem;
    color: #ff5717;
    line-height: 1;
    text-align: center;
    margin: 0 0 5vw 0;
    font-family: 'Zen Maru Gothic', sans-serif;   
    font-weight: bold;
}
.topbnr_title span{
    border-bottom: 1px dashed #ffabab;
}    
.topbnr_close {	
    position: absolute;
    color: #fff;
    background-color:#6aa7c9;
    padding: 1vw 2vw;
    border-radius: 3px;
    top: 2vw;
    right: 2vw;
    cursor:pointer;
}     
.popup_txt{
    margin: 0 0 2rem;
        text-align: left;
    }  
.popup_img{
     width: 80%;
    margin: 0 auto;
    }
.popup_img img{
     width: 100%;
    
    }    
    /*
    
.item_list_3_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 7vw;
    border-radius: 5px 5px 0 0;
    background-color: #13ae67;
    text-align: center;
    width: 40%;
    color: #fff;
}  
.item_list_3_w {
    width: 100%;
    position: relative;
    padding: 3vw 4vw 2vw;
    border: solid 1px #d6d6d6;
}        */
/* medical */







/* news */

.topnews__w{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
background: #ffffff;
}

.topnews1{
text-align: center;
background: url("../images/topnewsbg.jpg") right center;
background-size: cover;
padding: 6rem 0;
width: 100%;
}

.topnews2{
text-align: center;
}

.topnews2 h2{
font-size: 1.6rem;
font-weight: 500;
letter-spacing: .3rem;
  color: #666;

width: 80%;
margin: 0 auto;
  box-shadow: 15px 15px 0px rgb(232 243 223 / 60%);
text-align: center;
padding: 2rem;
  background: #fff;

}

.topnews2 h2 span{
}

.topnews2 h2 span::before{
content: "NEWS";
display: block;
text-align: center;
font-size: 2.7rem;
letter-spacing: .3rem;
  color: #cbde7e;
font-weight: 700;
line-height: 1;
font-family: 'Zen Maru Gothic', sans-serif;
margin: 0 0 .5rem 0;
}


.topnews3{
width: 100%;
}

.topnews4{
width: 100%;
padding: 5vw 5vw;
background: #ffffff;
}



.topnews5{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
align-items: center;
margin: 0 0 2vw;
border-bottom: 1px dotted #ccc;
padding: 0 0 3vw 0;
}


.topnews6{
width: 100%;
font-size: 1.2rem;
color: #a4a4a4;
}
.topnews7{
width: 100%;
color: #4b4948;
font-size: 1.4rem;
font-weight: 700;
}

.topnews7 a{
display: block;
}

.topnews7 a span{
}

.topnews7 a span::after{
content: "";
background: url("../images/ic_arrow2.svg") no-repeat;
display: inline-block;
width: 1.4rem;
height: 1.4rem;
margin: 0 0 0 6vw;
vertical-align: baseline;
}

.topnews8{
width: 100%;
color: #4b4948;
text-align: center;
margin: 5vw 0 0 0;
}

.topnews8 a{
display: inline-block;
border: 1px solid #009f88;
border-radius: 200px;
text-align: center;
padding: 1vw 5vw;
background: #fff;
color: #009f88;
font-size: 1.4rem;
}

.topnews8 a span{
}

.topnews8 a span::after{
}


.topnews8{
width: 100%;
color: #4b4948;
font-size: 1.8rem;
text-align: center;
margin: 30px 0 0 0;
}

.topnews9{
width: 100%;
font-size: 1.3rem;
line-height: 1.4;
}
    
    
/*お知らせ*/
   .news__w {
        width: 100%;
        background: #fff;
        padding: 6rem 0 6rem 0;
    }
       .news__wi {
        width: 95%;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        min-height: 300px;
        background: #fff;
        flex-direction: column;
        flex-wrap: wrap;
    } 
    .news__w h2 {
        display: block;
        text-align: center;
        font-size: 2.3rem;
        letter-spacing: .3rem;
        line-height: 1;
        font-family: 'Zen Maru Gothic', sans-serif;
        font-weight: 500;
    }
        .news__w h2 span {
        display: block;
        position: relative;
    }
        .news__w h2 span::before {
        content: "";
        background: url("../images/log-s.svg") no-repeat;
        display: block;
        width: 3rem;
        height: 3rem;
        margin: 0 auto .5rem;
    }
    .news__w h2 span::after {
        font-size: 1.5rem;
        letter-spacing: .15rem;
        text-align: center;
        content: "NEWS";
        display: block;
        font-weight: 500;
        color: #8fc31f;
        margin: 1rem 0 0;
    }
/*お知らせ*/    
.newskiji1 {
    margin: 0 auto 3rem;
border-bottom: 1px dotted #cac8bc;
    padding: 0 0 3rem 0;
}
.newskiji2 {
    width: 100%;
    font-size: 1.25rem;
    margin: 0 0 0 0;
color: #8C8C8C;
}
.newskiji3 {
    width: 100%;
}
.newskiji4 {
    display: inline-block;
    font-size: 1.6rem;
    margin: 0 0 1rem 0;
    font-weight: 600;
     color: #ff984b;
} 

.newskiji5 {
    width: 100%;
    line-height: 1.4;
    font-size: 1.4rem;
}

.news_kiji__w{
width: 95%;
height: 100%;    
/*height: 40vh;*/
/*border-top: 1px solid #e8e8e8;*/
margin: 0 auto;
padding: 2rem 0;
}

.news_kiji__w iframe{
width: 100%;
height: 40vh;    
background: #fff;
}
/* news */








.topcovid19__w{
    width: 100%;
    background: #f7f6f4;
    padding: 8vw 0;
}
.infection_w {
    width: 100%;
    margin: 0 auto;
}
.infection0 {
    text-align: center;
    color: #ffffff;
    font-size: 1.5rem;
    letter-spacing: .1rem;
    line-height: 1.5;
    padding: 2vw 0;
    background: #ff6262;
    width: 90%;
    margin: 0 auto 4vw;
}
.infection1 {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
}
.infection2 {
    width: 100%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
}

.infection3 {
    width: 60%;
    margin: 0 auto 30px;
    position: relative;
}


.infection3 img {
    width: 100%;
}
.infection4 {
    width: 100%;
    font-size: 1.6rem;
    letter-spacing: .1rem;
    line-height: 1.5;
    display: inline-block;
    text-align: center;
    margin: 0 0 2vw;
    border-radius: 15px;
    font-weight: 700;
    color: #41241F;
}
.infection4::first-letter {
    color: #ff6262;
}
.infection5 {
    letter-spacing: .05rem;
    font-size: 1.3rem;
    text-align: justify;
    line-height: 1.7;
        color: #41241F;
        width: 90%;
        margin: 0 auto;
}


    
    
    
    

/* timetable */

.toptimetable__w{
width: 100%;
padding: 12vw 0;
background:#fffdf7;
position:relative;
z-index:1;
}

.toptimetable_ilst {
    background-image: url(../images/ilst03.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: right;
    width: 70%;
    height: 70%;
    position: absolute;
    top: -45px;
    right: 0;
    z-index: -1;
}

.toptimetable1{
text-align: center;
margin: 0 0 10vw 0;
}

.toptimetable1 h2{
display: block;
    text-align: center;
    font-size: 2.7rem;
    letter-spacing: .3rem;
    color: #6b3e03;
    line-height: 1;
    font-family: 'Zen Maru Gothic', sans-serif;
    font-weight: bold;
}

.toptimetable1 h2 span{
    display: block;
    position: relative;
}

.toptimetable1 h2 span::before{
font-size: 1.25rem;
    font-weight: 400;
    letter-spacing: .15em;
    text-align: center;
    content: "TIMETABLE";
    display: block;
    font-weight: bold;
    margin: 0 auto 10px;
    color: #ef7c1d;
}

/*.toptimetable1 h2 span::after{
content: "";
background: url("../images/ic_timetable.svg");
width: 10vw;
height: 10vw;
display: block;
top: -7vw;
left: 0;
position: absolute;
    filter: drop-shadow(3px 6px 0px rgba(255,251,221,.50));
}*/


.toptimetable3{
}

.toptimetable4{
padding: 3vw 0;
}

.toptimetable4a{
background: url(../images/toptimetable1.png) no-repeat left top;
background-size: 60vw 30vw;
}

.toptimetable4b{
background: url(../images/toptimetable2.png) no-repeat right top;
background-size: 60vw 30vw;
}

.toptimetable4c{
background: url(../images/toptimetable3.png) no-repeat left top;
background-size: 60vw 30vw;
}

.toptimetable4d{
background: url(../images/toptimetable4.png) no-repeat left top;
background-size: 60vw 30vw;
}

.toptimetable5{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
align-items: center;
margin: 0 auto;
}

.toptimetable6{
color: #000;
display: block;
text-align: center;
font-size: 2.2rem;
font-weight: 700;
font-family: 'Zen Old Mincho', serif;
margin: 0 0 10vw 0;
width: 100%;
letter-spacing: .3rem;
text-shadow:
3px 3px 3px #fff, -3px -3px 3px #fff,
-3px 3px 3px #fff,  3px -3px 3px #fff,
3px 0px 3px #fff, -3px -0px 3px #fff,
0px 3px 3px #fff,  0px -3px 3px #fff;
line-height: 1.4;
}

.toptimetable7{
width: 100%;
padding: 0 3rem;
margin-bottom: 1rem;
}

table.toptimetable8{
width: 100%;
background: #fff;
margin: 0 auto;
}

table.toptimetable8 th{
text-align: center;
font-weight: 500;
font-size: 1.2rem;
padding: 1.5vw 0;
line-height: 1;
width: 10%;
color: #fff;
background: #239f67;    
}

table.toptimetable8 th:first-child{
width: 23%;
        background: #239f67;    
}

table.toptimetable8 td{
background: #fdfdfd;
text-align: center;
font-weight: 500;
font-size: 1.2rem;
padding: 1vw 0;
line-height: 1;
width: 11%;
color: #239f67;
border-bottom: 1px solid #e1e1e1;
vertical-align: middle;
}

table.toptimetable8 td:first-child{
    width: 23%;
    color: #442f06;
    background: #deefe7;
}
table.toptimetable8 td .item {
    display: inline-block;
        margin: .5rem 0 0 0;
        font-size: 1.2rem;
        line-height: 1.2;
        font-family: "Zen Maru Gothic";
        font-weight: 500;
        letter-spacing: .085rem;
}
table.toptimetable8 tr{

}

.toptimetable9{
width: 90%;
margin: 0 auto;
text-align: right;
padding: 0 1vw 0 0;
font-size: 1.4rem;
}



table.toptimetable8 td.toptimetable10a{
color: #fff;
text-align: center;
font-size: 1.6rem;
font-family: 'Zen Maru Gothic', serif;
letter-spacing: .15rem;
padding: 1.5vw 0;
background: linear-gradient(90deg, #ed6d00, #ed6d00);
line-height: 1;
font-weight: 500;
}

table.toptimetable8 td.toptimetable10b{
color: #fff;
text-align: center;
font-size: 1.6rem;
font-family: 'Zen Maru Gothic', serif;
letter-spacing: .15rem;
padding: 1.5vw 0;
background: linear-gradient(90deg, #01aee4, #01aee4);
line-height: 1;
font-weight: 500;
}

.toptimetable11{
font-size: 1.1rem;
letter-spacing: -.05rem;
font-weight: 700;
}

.toptimetable12{
width: 100%;
text-align: center;
}

.toptimetable12 > .closed{
    text-align: left;
    font-size: 1.3rem;
    color: #e89338;
    margin: 0 auto;
    width: 90%; 
}
.toptimetable12 > .repletion {
    width: 90%;
    margin: 0 auto;
    text-align: left;
        font-size: 1.3rem;
    line-height: 1.5;
}
    
.toptimetable12_f{
width: 100%;
text-align: center;
padding: 0 1rem;}

.toptimetable12_f  > .closed{
text-align: left;
font-size: 1.4rem;
        color: #ea4335;
margin: 0 auto;  
width: 100%;
padding: 0 3rem;
}
.toptimetable12_f > .repletion {
    width: 90%;
    margin: 0 auto;
    text-align: left;
}   
.toptimetable13{
width: 100%;
text-align: center;
}

.toptimetable13 span{
display: inline-block;
text-align: center;
padding: 1vw 3vw;
background: #fff;
font-size: 1.3rem;
color: #1ea189;
border-radius: 5px;
border: 2px solid #1ea189;
line-height: 1.3;
}

.toptimetable14{
width: 100%;
text-align: center;
}

.toptimetable14 a{
  display: inline-block;
  border: 1px solid #1ea189;
  box-shadow: 4px 4px 10px #ced1d8;
  width: 60%;
  box-sizing: content-box;
}

.toptimetable14 a:hover{
opacity: .7;
}

.toptimetable14 a img{
width: 100%;
}

.toptimetable15{
width: 100%;
text-align: center;
}

.toptimetable15 span{
  display: inline-block;
  text-align: center;
  padding: 1vw 3vw;
  background: #ffffff;
  font-size: 1.3rem;
  color: #1fa189;
  border: 1px solid #1fa189;
  letter-spacing: 0.005rem;
}

.toptimetable16{
    display: block;
    transform: rotate(90deg);
    margin: .5vw 0;
}


.toptimetable18{
width: 100%;
margin: 0 auto;
}

.toptimetable18 a{
width: 100%;
display: block;
text-align: center;
}


.toptimetable18 a img{
  width: 60%;
  box-shadow: 10px 10px 15px #bfbfbf;
  border-radius: 5px;
}
.toptimetable19 {
    font-weight: 400;
}


.toptimetable1.yoyaku h2 span::before{
    content: "APPOINTMENT";
}

.toptimetable20 {
width: 90%;
text-align:ceter;
margin: 0 auto;
}

.toptimetable22 {
    font-size: 1.5rem;
    font-weight:bold;
    text-align:center;
    font-family:'Zen Maru Gothic', sans-serif;
}

.toptimetable23 {
    margin: 5vw 0;
    text-align:center;
}

.toptimetable23 span {
    font-weight:bold;
    font-size:1.6rem;
    background:#ffd58a;
    border-radius:3px;
    letter-spacing:0;
    margin: 0 3px;
    font-family:'Roboto', YakuHanJP_Narrow, 'Zen Kaku Gothic New', Meiryo, sans-serif;
}

.toptimetable24 {
    font-weight:bold;
}

.toptimetable25 {
    margin:auto;
    width:96%;
}

.toptimetable25-item {
    margin: 50px 0;
    background:#fff;
    border-radius:10px;
    position:relative;
    box-shadow: 3px 3px 0px #cdcdcda8;
}

.step {
    position:absolute;
    content:"";
    display:inline-block;
    width:55px;
    height: 55px;
    line-height:55px;
    text-align:center;
    border-radius: 50%;
    border:1px solid #ef7c1d;
    background:#fff;
    font-size:1.2rem;
    top:-40px;
    left:-4%;
}

.step_info {
    font-size:1.3rem;
    padding: 0 1em 2em 1em;
}

.step_info span {
    font-weight:bold;
}

.toptimetable25-item img {
    display:block;
    width:70%;
    margin:auto;
}

.lacoon {
    width: 240px;
    margin: 5vw auto 0;
}

.lacoon a {
    display:block;
    width: 240px;
}
.lacoon a img {
    border-radius:10px;
}

.toptimetable26 {
font-size: 1.4rem;
width: 100%;
padding: 0 3rem;
margin-bottom: .5rem;
}

/* timetable */







/* reservation */

.topreservation__w{
width: 100%;
padding: 12vw 0 10vw;
background: #f9f8ee;
background-size: cover;
}

.topreservation1{
  text-align: center;
  margin: 0 0 10vw 0;
}

.topreservation1 h2{
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: .3rem;
    color: #622b11;
    background: linear-gradient(45deg, #ffef72, #ffed62);
  width: 80%;
  margin: 0 auto;
  box-shadow: 8px 8px 0px rgb(210 207 129 / 20%);
  text-align: right;
  padding: 3vw 3vw;
}


.topreservation1 h2 span{
    display: block;
    position: relative;
}

.topreservation1 h2 span::before{
content: "RESERVATION";
  display: block;
  text-align: right;
  font-size: 2.7rem;
  letter-spacing: .3rem;
  color: #622b11;
  font-weight: 400;
  line-height: 1;
  font-family: 'Zen Maru Gothic', sans-serif;
  margin: 0 0 1vw 0;
}

.topreservation2 h2 span::after{
  content: "";
  background: url("../images/ic_timetable.svg");
  width: 10vw;
  height: 10vw;
  display: block;
  top: -7vw;
  left: 0;
  position: absolute;
      filter: drop-shadow(3px 6px 0px rgba(255,251,221,.50));

}


.topreservation3{
width: 95%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
background: #fff;
padding: 4vw 4vw;
}

.topreservation4{
width: 100%;

}



.topreservation5{
width: 100%;
font-size: 1.3rem;
line-height: 1.7;
}

.topreservation6{
width: 100%;
    position: relative;
    margin-bottom: 5px;
    padding-left: 2rem;
    font-size: 1.4rem;
    color: #000;
    line-height: 1.4;
    font-weight: 700;
}

.topreservation6::before{
  position: absolute;
  content: "";
  left: 0;
  top: .2rem;
  width: 1.5rem;
  height: 1.5rem;
  border: 0.25em solid #f5cb00;
  border-radius: 50%;
  box-sizing: border-box;

}


.topreservation7{
width: 100%;
font-size: 2.2rem;
font-weight: 900;
}

.topreservation7 a span::before {
  content: "";
  background: url("../images/ic_tel.svg");
  display: inline-block;
  width: 2rem;
  height: 2rem;
  margin: 0 .5rem 0 0;
  vertical-align: middle;
}

.topreservation8{
width: 100%;
margin: 3vw 0 0 0;
}

.topreservation8 a{
    width: 24rem;
    display: flex;
    color: #ffffff;
    text-align: center;
    font-size: 1.5rem;
    position: relative;
    letter-spacing: .1rem;
    box-shadow: 3px 3px 3px rgb(255 174 133 / 70%);
    vertical-align: middle;
    line-height: 1.4;
    transition: .5s;
    background: linear-gradient(135deg, #ff945f 0%, #ff681d 100%);
    justify-content: center;
        border-top: 2px solid #ffffff;
    border-left: 2px solid #ffffff;
    border-bottom: 2px solid #ffffff;
    border-radius: 3px 0 0 3px;
    align-items: center;
    padding: 2vw;
}

.topreservation8 a:hover,
.topreservation8 a:active{
opacity: .8;
box-shadow: 0px 0px 10px 0px #00000014;
transform: translateY(-2px);
}

.topreservation8 a span::before{
  content: "";
  background: url("../images/ic_calendar2.svg");
  width: 1.8rem;
  height: 1.8rem;
  display: inline-block;
  opacity: .9;
  vertical-align: text-top;
  margin: 0 1.5vw 0 0;
}

.topreservation9{
font-size: 1.6rem;
font-weight: 700;
width: 100%;
padding: 0 0 0 2rem;
}

.topreservation9 a span::before{
content: "→";
display: inline-block;
margin: 0 1rem 0 0;
}




/* reservation */



























/* corona */

.topcorona__w{
width: 100%;
background: #ff5152;
text-align: center;
padding: 1.7vw 0;

}

.topcorona__w span{
line-height: 1.3;
color: #fff;
font-size: 1.2rem;
display: inline-block;
}
.topcorona__w span::before{
    content: "";
    display: inline-block;
    background: url("../images/ic_shield.svg");
    margin: 0 1.5vw 0 0;
    width: 1.3rem;
    height: 1.3rem;
  vertical-align: middle;
}


/* corona */








.subpage_bmimg {
  background-image: url("../images/subpage_bmimg.svg") !important;
  background-repeat: repeat-x;
  background-position: center;
  height: 20px;
    background: #fffcf0;
}  


/* footer */
footer{
	width: 100%;
    padding: 2rem 0 0 0;
    clear: both;
    background: url(../images/bg_baige.jpg);
    position: relative;
}

.footer__w{
width: 100%;
display: flex;
flex-wrap: wrap;
}

.footer1{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0 2rem;
}

.footer2{
  width: 100%;
  margin: 0 0 4rem 0;
  padding: 0;
  text-align: center;
}

.footer2 img{
width: 80%;
}

.footer3{
width: 90%;
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
margin: 0 auto 5vw;
}

.footer4{
display: block;
font-weight: 500;
font-size: 1.2rem;
letter-spacing: 0.05rem;
    background: #ffd58a;
text-align: center;
padding: .3vw 2vw;
margin:  0 1vw 1vw 0;
/*width: 32%;*/
border-radius: 100px;
}

.footer5{
width: 100%;
text-align: center;
margin: 0 0 6vw 0;
}

.footer6{
width: 100%;
font-weight: 500;
font-size: 1.4rem;
letter-spacing: 0.05rem;

}


.footer7{
width: 100%;
}


.footer7 a{
width: 100%;
display: block;
font-size: 3.5rem;
color: #4c4948;
font-weight: 900;
line-height: 1;
}

.footer7 a span{

}

.footer7 a span::before{
content: "";
background: url("../images/ic_tel.svg");
display: inline-block;
width: 2.7rem;
height: 2.7rem;
margin: 0 2vw 0 0;
vertical-align: bottom;
}

.footer8{
  width: 100%;
  padding: 0 3rem;
  color: #666;
  margin-bottom: 2rem;
}

.footer9{
font-size: 1.2rem;
font-weight: 500;
padding: 1vw 1vw;
margin: 0 auto;
border-radius: 3px;
width: 90%;
}


.footer10{
  display: inline-block;
  background: #8fc31f;
  text-align: center;
  padding: 3px 14px;
  margin: 0 0 1.5rem 0;
  color: #ffffff;
  border-radius: 3px;
  font-size: 1.4rem;
  letter-spacing: 0;
  /* border: 1px solid #36a34c; */
  width: 10rem; 
}

.footer11{
  width: 100%;
  padding: 0 3rem;
    margin-bottom: 2rem;
    display: flex;
        flex-direction: column;

}

.footer12{
  display: inline-block;
  background: #ffffff;
  text-align: center;
  padding: .2vw 1vw;
  margin: 0 2vw 0 0;
  color: #f57b43;
  border-radius: 3px;
  font-size: 1.2rem;
  letter-spacing: 0;
  border: 1px solid #f57b43;
  width: 8rem;
}

.footer13{
  font-size: 1.2rem;
  margin: 0 auto;
  width: 100%;
  text-align: center;
}

.footer14{
  margin: 0 auto 5vw;
  width: 90%;
  text-align: center;
}
.footer14 img{
  width: 100%;
}

.footer15{
    margin: 0 auto;
    width: 100%;
    text-align: center;
    background: #fffdf1;
      padding: 6vw 0;
      display: flex;
      justify-content: center;
      flex-wrap: wrap;
}

.footer16{
  margin: 0 0 5vw 0;
  width: 90%;
  text-align: center;
}
.footer16 img{
    width: 100%;
    box-shadow: 4px 4px 10px #DCD8BE;
}

.footer16:last-child{
  margin: 0 0 0 0;
}




.footer17{
width: 100%;
margin: 0 0 3vw 0;
}

.footer18{
 display: table;
        margin: 0 auto 0;
}
.footer18 span {
        display: inline-block;
        padding: 2px 20px;
        text-align: center;
        font-size: 1.5rem;
        letter-spacing: .15rem;
        color: #442f06;
        background: #fff;
        border-radius: 50px;
        border: 2px solid #c5c0b6;
    }
.footer19{
width: 100%;
        text-align: center;   
            margin: 1rem 0 1rem 0;
}

.footer19 a{
    width: 100%;
        display: block; 
        font-size: 2.8rem;
        line-height: 1;
        /*font-family: "Zen Kaku Gothic New", serif;*/
		font-family: 'Zen Old Mincho', serif;
		font-weight: 600;
        color: #442f06;
	
}

.footer19 a span{

}

.footer19 a span::before{
    content: "";
    background: url("../images/ic_tel.svg");
    display: inline-block;
    width: 2rem;
    height: 2rem;
    margin-right: .3rem;
}


.footer20{
  width: 100%;
  font-size: 1.3rem;
  letter-spacing: 0;
  text-align: center;
}


.footer21{
width: 100%;
margin: 0 0 6vw 0;
}


.footer22{
  width: 100%;
  text-align: center;
  font-size: 1.3rem;
  font-weight: 500;
  letter-spacing: .02rem;
  color: #545454;
  margin: 0 0 1vw 0;
}

.footer23{
width: 100%;
text-align: center;
margin: 0 0 1vw 0;
}

.footer23 a{
width: 100%;
display: block;
font-size: 2.2rem;
color: #333;
font-weight: 900;
line-height: 1;
}

.footer23 a span{

}

.footer23 a span::before{
content: "";
background: url("../images/ic_tel.svg");
display: inline-block;
width: 2rem;
height: 2rem;
margin: 0 .6rem 0 0;
vertical-align: middle;
}










.footerbnr__w{
  width: 90%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  background: #fff;
  margin: 5vw auto 0;
}

.footerbnr__w a{
  width: 100%;
display: block;}

.footerbnr__w a img{
  width: 100%;
  border: 1px solid #009f59;
}

.footerbnr1{
width: 32%;
text-align: center;
margin: 0 0 3vw 0;
}

.footerbnr1 a img{
  width: 100%;
  border: 1px dotted #dbdbdb;
  box-shadow: 2px 2px 2px rgb(241 241 241 / 70%);
  border-radius: 5px;
}



.sitemap__w{
width: 100%;
background: #239f67;
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
padding: 5rem 0 5rem 0;
text-align: center;
}

.sitemap1{
line-height:4;
letter-spacing: .05rem;
text-align: center;
margin: 0 auto;
width: 100%;
}


.sitemap2{
width: 100%;
}

.sitemap2 a{
font-weight: 500;
font-size: 1.4rem;
color: #fff;
}

.sitemap3{
font-size: 1.2rem;
padding: 0 0 0 3vw;
}

.sitemap3 a{
display: block;
width: 100%;
}

.googlemaps__w{
width: 100%;
text-align: center;
margin: 0 0 3rem 0;
}

.googlemaps__w iframe{
width: 90%;
height: 45vh;
}




/* footer */






/* copyright */


.copyright {
  width: 100%;
  padding: 1rem 0;
  background: #57B468;
  background-size:cover;
  text-align: center;
  font-size: 1.1rem;
  color: #fff;
}



/* copyright */






/* sp footer */

.spfooternav__w{
width: 100%;
display: flex !important;
justify-content: space-between;
position: fixed;
bottom: 0;
z-index: 1000;
height: 7rem;
        border-top: 1px #ccc solid;
}

.spfooternav1{
  width: calc(100% - 8.5rem);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  padding: 1rem 0;
  background: #fff;
}

.spfooternav1 a{
font-size: 2.3rem;
line-height: 1.5;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
font-weight: 500;
}

.spfooternav1 a span{
}

.spfooternav1 a span::before{
content: "";
background: url("../images/ic_tel.svg") no-repeat;
display: inline-block;
width: 1.8rem;
height: 1.8rem;
margin-right: .5rem;
}

.spfooternav2{
width: 8.5rem;
display: flex;
align-items: center;
justify-content: center;
background: #f79742;
}

.spfooternav2 a{
padding: 1rem 0;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
font-size: 1.3rem;
color: #fff;
letter-spacing: 0.05rem;
}

.spfooternav2 a span::before{
content: "";
background: url("../images/ic_access.svg") no-repeat;
display: block;
width: 2.5rem;
height: 2.5rem;
margin: 0 auto .5rem;
}




.spfooternav2 a span{

}

.spfooternav3{
width: 8.5rem;
display: flex;
align-items: center;
justify-content: center;
background: #fff;
}

.spfooternav3 a{
padding: 2vh 0;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
font-size: 1.2rem;
letter-spacing: 0rem;
text-align: center;
}

.spfooternav3 a span{
line-height: 1.2;
}

.spfooternav3 a span::before{
content: "";
background: url(../images/ic_access.svg) no-repeat;
display: block;
width: 2.4rem;
height: 2.5rem;
margin: 0 auto 1.3vw;
}

.spfooternav5{
font-size: 1.2rem;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
letter-spacing: 0.1rem;
margin: 0 0 .3rem 0;
line-height: 1;
}


/* sp footer */









/* subpage */

.subpagetitle__w{
width: 100%;
padding: 3vw 0;
position: relative;
background: #ebd5c8 url(../images/subpagetitle.jpg) left center no-repeat;
background-size: cover;

}

.subpagetitle__w::after {
content: '';
position: static;
top: 0;
left: 0;
width: 100%;
height: 100%;
	}
	
.subpage_nav_h{
width: 100%;
margin: 0 0 3rem;
}

.subpage_nav_h h2{
width: 100%;
font-size: 1.8rem;
color: #473a2c;
display: inline-block;
letter-spacing: .2rem;
line-height: 1;
font-weight: 700;
  font-family: "Zen Maru Gothic";
  text-align: center;
}

.subpage_nav_h p{

}
	
	
	

.subpagetitle__w1{
background: #ebd5c8 url(../images/subpagetitle.jpg) left center no-repeat;
background-size: cover;
}

.subpagetitle__w2{
background: #ebd5c8 url(../images/subpagetitle.jpg) left center no-repeat;
background-size: cover;
}

.subpagetitle__w3{
background: #ebd5c8 url(../images/subpagetitle.jpg) left center no-repeat;
background-size: cover;
}

.subpagetitle__w4{
background: #ebd5c8 url(../images/subpagetitle.jpg) left center no-repeat;
background-size: cover;
}

.subpagetitle__w5{
background: #ebd5c8 url(../images/subpagetitle.jpg) left center no-repeat;
background-size: cover;
}


.subpagetitle1{
text-align: center;
position: relative;
/*z-index: 100;*/
}

.subpagetitle1 h2{
    font-size: 2rem;
    font-weight: 700;
    letter-spacing: .3rem;
    color: #fff;
    line-height: 1.2;
    display: inline-block;
    /*background: rgba(107,62,3,70%);*/
    padding: 3vw 0;
    border-radius: 5px;
    width: 70%;
font-family: 'Zen Maru Gothic', sans-serif;}

.subpagetitle1 h2 span{
}

.subpagetitle1 h2 span::after{
    display: block;
    text-align: center;
    font-size: 1rem;
    letter-spacing: .2rem;
    width: 80%;
    margin: 1.5vw auto 0;
    padding: 1.5vw 0 0 0;
    color: #fff;
    font-weight: 500;
    line-height: 1.2;
  font-family: 'Zen Maru Gothic';
    white-space: pre-wrap;
}

.subpagetitle1a h2 span::after{
content: "DOCTOR";
}

.subpagetitle1b h2 span::after{
content: "MEDICAL";
}

.subpagetitle1c h2 span::after{
content: "ABOUT";
}

.subpagetitle1d h2 span::after{
content: "FACILITY";
}

.subpagetitle1e h2 span::after{
content: "ACCESS";
}

.subpagetitle1f h2 span::after{
content: "RESERVATION";
}


.subpagetitle2{
width: 100%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.subpagetitle3{
width: 90%;
background: #fff;
padding: 2vw;
border-radius: 30px 10px 30px 10px;
margin: 0 auto;
}

.subpagetitle4{
width: 100%;
}

.subpagetitle4 img{
border-radius: 30px 10px 30px 10px;
}

.subpage_nav_w{
width: 100%;
background: #f2f8fb;
	
/*background: #d9f2fb;
background:url(../images/bg10.jpg);*/
padding: 10vw 0 10vw;
background-repeat: no-repeat;
    background-size: cover;
}    
.subpage_nav {
width: 95%;
margin: 0 auto;
} 
.subpage__w{
width: 100%;
/*background: #fbf0e9;*/
background: linear-gradient(to bottom, rgba(239, 248, 245, 0) 0%, #eff8f5 40%, #eff8f5 52%, #eff8f5 80%, rgba(239, 248, 245, 0) 99%, rgba(239, 248, 245, 0) 100%);padding: 80px 0 0;
padding: 5rem 0 0;
}

.subpage1{
width: 95%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
background: #fff;
padding: 6vw 5vw 6vw;
border-radius: 20px;
}

.subpage2{
width: 100%;
border-bottom: 6px solid #ECECEC;
margin: 0 0 5vw 0;
}


.subpage2 h2{
font-size: 1.8rem;
        font-weight: 700;
        letter-spacing: .2rem;
        line-height: 1.5;
        padding: 24px 0 3vw 0;
        padding: 5rem 0 1rem 0;
        text-align: center;
        font-family: 'Zen Maru Gothic';
        background: url(../images/ic_subpage.svg) no-repeat center top / auto 50px;
}


.subpage3{
width: 100%;
padding: 0 1vw;
line-height: 1.8;
}

.subpage4{
width: 100%;
}

.subpage4 a{
display: block;
width: 80%;
margin: 0 auto;
background: #ffee9c;
padding: 4vw 0;
text-align: center;
letter-spacing: -.005rem;
color: #643e2f;
box-shadow: 6px 6px 15px #fff2b3;
font-weight: 500;
font-size: 1.4rem;
line-height: 1;
position: relative;
}

.subpage4 a span{
display: block;
width: 100%;
}

.subpage4 a span::after{
content: "";
background: url("../images/ic_arrow1.svg");
display: inline-block;
width: 2.2rem;
height: 2.2rem;
position: absolute;
top: 1.2rem;
right: -1.2rem;
}

.subpage4 a:hover{
transform: translateY(-3px);
opacity: .5;
}

.subpage5{
width: 100%;
position: relative;
padding: 3vw 3vw;
background: #f5f5f5;
border-radius: 10px;
}

.subpage5 ul{
width: 100%;
}

.subpage5 ul li{
width: 100%;
line-height: 1.6;
margin: 0 0 1vw 0;
}

.subpage5 ul li:last-child{
margin: 0 0 0 0;
}

.subpage5 ul li span{
width: 100%;
}

.subpage5 ul li span::before{
content: "";
display: inline-block;
background: url("../images/ic_check.svg");
width: 1.6rem;
height: 1.6rem;
margin: 0 1vw 0 0;
vertical-align: sub;
}

.subpage6{
width: 100%;
padding: 5vw 5vw;
position: relative;
background: #f5f5f5;
border-radius: 10px;
}

.subpage6 ul{
width: 100%;
}

.subpage6 ul li{
width: 100%;
line-height: 2;
margin: 0 0 4vw 0;
}

.subpage6 ul li:last-child{
margin: 0 0 0 0;
}

.subpage6 ul li span{
width: 100%;
}

.subpage6 ul li span::before{
content: "";
display: inline-block;
background: url("../images/ic_check2.svg");
width: 1.6rem;
height: 1.6rem;
margin: 0 1vw 0 0;
vertical-align: sub;
}

.subpage7{
width: 100%;
}

.subpage7 ul{
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.subpage7 ul li{
  width: 100%;
  margin: 0 0 1.2rem 0;
}

.subpage7 ul li:last-child{
margin: 0 0 0 0;
}

.subpage7 ul li a {
    display: flex;
    align-items: center;
    width: 100%;
    margin: 0 auto;
    background: url(../images/bg02.jpg);
    padding: 1.2rem 0;
    text-align: center;
    letter-spacing: -.005rem;
    color: #ffffff;
    font-weight: 500;
    font-size: 1.4rem;
    line-height: 1.4;
    position: relative;
     border-radius: 8px;
    flex-grow: 1;
/*    border: solid 1px #90d4ec;*/
}

.subpage7 ul.checkup li a {
    background: url(../images/bg03.jpg) !important;
}

.subpage7 ul li a:hover{
transform: translateY(-4px);
opacity: .8;
box-shadow: 0px 6px 6px #6aa7c9;
}

.subpage7 ul li a span{
width: 95%;
    margin: 0 auto;
    position: relative;
}

.subpage7 ul li span::before {
    content: "";
    background: url(../images/ic_arrow1.svg);
    display: inline-block;
    width: 1.8rem;
    height: 1.8rem;
    opacity: .9;
    position: absolute;
    left: 0;
    top: .2rem;
}

.subpage8{
width: 100%;
margin: 0 0 6vw 0;
}

.subpage8 h3{
font-size: 1.7rem;
letter-spacing: .02rem;
line-height: 1.2;
padding: 1vw 0 1vw 2rem;
position: relative;
font-weight: 700;
font-family: 'Zen Maru Gothic', sans-serif;
}

.subpage8 h3::before{
    border-left: 10px solid #39a674;
content: "";
height: 100%;
left: 0;
position: absolute;
top: 0;
}

.subpage9{
width: 80%;
margin: 0 auto;
}

.subpage9 img{
width: 100%;
border-radius: 10px;
}

.subpage10{
width: 100%;
background: #F5F5F5;
position: relative;
padding: 5vw;
border-radius: 0;
margin: 0 auto;
}

.subpage10 ul{
width: 100%;
}

.subpage10 ul li{
width: 100%;
line-height: 2.2;
}

.subpage10 ul li span{
width: 100%;
}

.subpage10 ul li span::before{
content: "";
display: inline-block;
background: url("../images/ic_check3.svg");
width: 1.6rem;
height: 1.6rem;
margin: 0 10px 0 0;
vertical-align: sub;
}

.subpage11{
display: inline-block;
margin: -4.5rem 0 0 0;
background: #47c8af;
color: #fff;
text-align: center;
padding: 1vw 3vw;
border-radius: 3px;
position: absolute;
font-size: 1.5rem;
}

.subpage12{
padding: 2vw 0 0 0;
font-size: 1.4rem;
line-height: 2;
}

.subpage13{
display: inline-block;
margin: -4.5rem 0 0 0;
background: #f99027;
color: #fff;
text-align: center;
padding: 1vw 3vw;
border-radius: 3px;
position: absolute;
font-size: 1.5rem;
}

.subpage14{
display: inline-block;
margin: -4.5rem 0 0 0;
background: #7dadd4;
color: #fff;
text-align: center;
padding: 1vw 3vw;
border-radius: 3px;
position: absolute;
font-size: 1.5rem;
}

.subpage15{
width: 100%;
line-height: 1.8;
}

.subpage16{
width: 100%;
}

.subpage16 span{
line-height: 1.8;
font-size: 1.5rem;
font-family: 'Zen Old Mincho', serif;
font-weight: 700;
display: inline-block;
padding: 1vw 3vw;
letter-spacing: 0;
background: #fff;
border-radius: 100px;
color: #4387bf;
}

.subpage17{
width: 100%;
}

.subpage17 span{
line-height: 1.8;
        font-size: 1.6rem;
        font-weight: 600;
        display: inline-block;
                padding: 1px 15px 2px;
        letter-spacing: .1rem;
        background: #6ebb52;
        border-radius: 100px;
        color: #fff;
}


.subpage18 {
width: 100%;
}
.subpage18 ul{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.subpage18 ul li {
width: 32%;
margin: 0 0 2vw 0;
align-items: stretch;
display: flex;
text-align: center;
}

.subpage18 ul li a {
width: 100%;
font-size: 1.1rem;
line-height: 1.2;
padding: 1vw 1vw 1vw;
color: #18599d;
display: block;
}
.subpage18 ul li dt{
margin: 0 0 1vw 0;
}

.subpage18 ul li dt img {
width: 80%;
border-radius: 10px 3px 10px 3px;
}

.subpage18 ul li dd{
padding: 1vw 0;
font-weight: 500;
letter-spacing: -.05rem;
}



.subpage22{
  width: 100%;
  border: 1px dashed #ffabab;
  background: #fff8f8;
  padding: 3vw 2vw 4vw;
  color: #e93131;
  margin: 0 auto;
}

.subpage23{
margin: 0 0 2vw 0;
font-size: 1.3rem;
}

.subpage24{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.subpage25{
width: 49%;
border: 1px solid #70b4e4;
}

.subpage26{
  background: #70b4e4;
  font-size: 1.6rem;
  color: #fff;
  padding: 1vw;
  display: flex;
  align-items: center;
  width: 100%;
  line-height: 1.6;
}

.subpage26 span::before{
  content: "";
  background: url("../images/ic_first1.svg");
  width: 3rem;
  height: 3rem;
  display: inline-block;
  vertical-align: middle;
  margin: 0 1vw 0 0;
}


.subpage27{
padding: 2vw;
font-size: 1.4rem;
font-weight: 700;
line-height: 1.5;
}

.subpage28{
  margin: 0 2vw 2vw 2vw;
  background: #eaf6ff;
  padding: 5px;
  }

.subpage29{
width: 49%;
border: 1px solid #70b4e4;
}

.subpage30{
  background: #0093DF;
  font-size: 1.6rem;
  color: #fff;
  padding: 1vw;
  display: flex;
  align-items: center;
  width: 100%;
  line-height: 1.6;
}

.subpage30 span::before{
  content: "";
  background: url("../images/ic_first2.svg");
  width: 3rem;
  height: 3rem;
  display: inline-block;
  vertical-align: middle;
  margin: 0 1vw 0 0;
}

.subpage31{
padding: 2vw;
font-size: 1.4rem;
font-weight: 700;
line-height: 1.5;
}

.subpage32{
  margin: 0 2vw 2vw 2vw;
  background: #eaf6ff;
  padding: 5px;
}

.subpage33{
  width: 100%;
  padding: 3vw 3vw;
  line-height: 1.6;
  background: #f7f7f7;
  color: #204354;
}

.subpage33 ul{

}

.subpage33 ul li{
margin: 0 0 1rem 0;

}

.subpage33 ul li::before{
  content: "";
  background: url("../images/ic_checkbox.svg");
  width: 1.8rem;
  height: 1.8rem;
  display: inline-block;
  vertical-align: sub;
  margin: 0 1vw 0 0;
}


.subpage34{
width: 100%;
}

.subpage34 table{
width: 100%;
border: 1px solid #000;

}

.subpage34 table th{
padding: 2rem .5rem;
font-size: 1.3rem;
text-align: center;
border: 1px solid #015a33;
background: #009f59;
color: #fff;
}

.subpage34 table td{
    padding: 2rem .5rem;
    text-align: center;
    font-size: 1.3rem;
    border: 1px solid #015a33;
    background: #faf9f7;
}

.subpage34-1{

}

.subpage34-2{
color: #f9e440 !important;
}

.subpage34-3{

}

.subpage34-4{
text-align: center;
}

.subpage34-5{
    color: #009f59;
    font-weight: 900 !important;
}

.subpage34-6{

}

.subpage46{
width: 100%;
        background: #fafbf7;
        padding: 3rem 2rem 3rem;
        border-radius: 10px;
    position: relative;
}
.subpage53{
text-align: center;
padding: 0 1rem;
width: 8rem;
height: 8rem;
background: url(../images/ic_bg.png);
background-size: cover;
display: flex;
justify-content: center;  
z-index: 1;
}

.subpage53 img{
width: 100%;
}

.subpage54{
width: calc(100% - 20rem);
line-height: 2; 
}

.subpage55{
width: 100%;
padding: 0 0 0 30px;
line-height: 2.2;
font-weight: 700;
font-family: 'Zen Maru Gothic', sans-serif;
}

.subpage56{
width: 100%;
font-size: 1.9rem;
position: relative;  
}

.subpage56::before {
display: block;
position: absolute;
top: 1.75rem;
left: -1.7rem;
width: 0.8rem;
height: 0.8rem;
background-color: #6aa7c9;
border-radius: 50%;
content: '';  
}
.subpage57{
width: 100%;
color: #ea4335;
line-height: 1.5;
/* text-indent: -1em;
padding-left: 1em;*/
}    
.subpage58{
display: flex;
        column-gap: 30px;
        align-items: center;
        flex-direction: column;
        flex-wrap: wrap;
}
.subpage58 h3{
letter-spacing: .3rem;
line-height: 1.8;
font-size: 2.3rem;
font-weight: 700;
text-align: center;
border-bottom: 3px #71bc54 dotted;
display: inline-block;
}  
.subpage59{
width: 95%;
margin: 0 auto;
}
.subpage59 ul li {
width: 100%;
line-height: 2;
margin: 0 0 1rem 0;
}
.subpage59 ul li span::before {
content: "";
display: inline-block;
background: url(../images/ic_check.svg);
width: 2rem;
height: 2rem;
margin: 0 10px 0 0;
vertical-align: sub;
}
.subpage63 {
/*position: relative;*/
width: 100%;
height: auto;
padding: 0 1vw;
}
.subpage64{
}
.subpage65{
width: 40%;
margin: 0 auto 0;
padding: 5vw 0 0;
}
.subpage65 img{
width: 100%;
}
.dashed-note {
background-color: #fff;
background-image: linear-gradient(90deg, transparent 0%, transparent 50%, #fff 50%, #fff 100%), /* 点線1の色 */
linear-gradient(180deg, #ccc 1px, transparent 1px); /* 点線2の色と太さ */
background-size: 8px 100%, /* 点線1のサイズ */
100% 3em; /* 点線2のサイズ */
line-height: 3em; /* 文字の高さ */
padding-bottom: 1px; /* 最終行の下にも罫線を引く */
}    
/* subpage */












/* access */

	
.access__w{
width: 100%;
padding: 4rem 0 0;
background: #fff;
}


.access__w2{
width: 95%;
margin: 0 auto;
}
.topaccess1{
text-align: center;
margin: 0 0 40px 0;
}

.topaccess1 h2{
display: block;
    text-align: center;
    font-size: 2.6rem;
    letter-spacing: .3rem;
    color: #442F06;
    line-height: 1;
	font-family: "Zen Old Mincho", serif;
    /*font-family: 'Zen Maru Gothic', sans-serif;*/
    font-weight: 500;
}

.topaccess1 h2 span{
    display: block;
    position: relative;
}
.topaccess1 h2::before{
content: "";
/*background: url("../images/icon_leaf.png");*/
display: block;
width: 43px;
height: 43px;
margin: 0 auto 10px;
}

.topaccess1 h2 span::after{
font-size: 1.3rem;
    letter-spacing: .15em;
    text-align: center;
    content: "ACCESS";
    display: block;
    font-weight: 500;
    margin: 10px auto;
    color: #8fc31f;
}

.access1{
width: 100%;
}

.access1 img{
width: 100%;
}

.access2{
width: 100%;
height: 40vh;
}

.access2 iframe{
width: 100%;
height: 40vh;
}

.access3{
width: 100%;
}
.access3 span{
display: inline-block;
text-align: center;
color: #0060ad;
font-size: 1.4rem;
font-weight: 700;
}

.access4{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}

.access5{
width: 100%;
text-align: center;
}

.access5 img{
width: 90%;
}

.access6{
width: 100%;
text-align: center;
}

.access6 img{
width: 90%;
}
	
/* Google Maps */
.gm_w{
width:95%;
margin:0 auto 0;
text-align:center;
}

.gm_w iframe{
width:100%;
height:40vh;
}
	
/* table */	
.outlinetbl{
width: 95%;
margin: 0 auto;
z-index: 3;
}

.outlinetbl tr{

}


.outlinetbl th{
padding: 1rem 1.5rem;
width: 100%;
background: #efefef;
vertical-align: middle;
display: block;
border:1px solid #DBDBDB;
}




.outlinetbl td{
width: 100%;
padding: 1rem 1.5rem;
background: #fdfdfd;
vertical-align: middle;
display: block;
line-height: 1.4;
border:1px solid #DBDBDB;
border-top:0;
}

.outlinetbl td ul li{
text-indent: -1em;
padding-left: 1em;
margin: 0 0 .8rem;
}    
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
/*	
.access__w{
width: 100%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.access1{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0 8vw 0;
}

.access2{
width: 100%;
text-align: center;
margin: 0 0 7vw 0;
}

.access2 img{
width: 70%;
}

.access3{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
text-align: center;
}

.access4{
        display: table;
        margin: 0 auto 0;
}
    .access4 span {
        display: inline-block;
        padding: 2px 20px;
        text-align: center;
        font-size: 1.5rem;
        letter-spacing: .15rem;
        color: #442f06;
        background: #fff;
        border-radius: 50px;
        border: 2px solid #c5c0b6;
    }
.access5{
        width: 100%;
        text-align: center;
        margin: 1rem 0 1rem 0;
}


.access5 a{
width: 100%;
        display: block;
        font-size: 2.8rem;
        line-height: 1;
        font-family: "Zen Kaku Gothic New", serif;
        font-weight: 600;
        color: #442f06;
}

.access5 a span{

}

.access5 a span::before{
        content: "";
        background: url(../images/ic_tel.svg);
        display: inline-block;
        width: 2rem;
        height: 2rem;
        margin-right: .3rem;
}

.access6{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.access7{
width: 100%;
border-radius: 7px;
}

.access8{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: stretch;
margin: 0 0 1vw 0;
}

.access8:first-child{

}


.access9{
width: 10rem;
text-align: center;
font-size: 1.2rem;
letter-spacing: .025rem;
line-height: 1.5;
background: #f9f8f5;
padding: 5vw 2vw;
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
}

.access10{
width: calc(100% - 12rem);
line-height: 1.5;
font-weight: 500;
font-size: 1.2rem;
letter-spacing: .025rem;
padding: 5vw 0;
display: flex;
flex-wrap: wrap;
align-items: center;
}

.access11{
width: 100%;
}

.access12{
width: 100%;
margin: 0 auto;
}

.access13{
width: 100%;
}

.access14{
width: 100%;
margin: 0 auto 6vw;
}

.access14 iframe{
width: 100%;
border-radius: 20px;
}

.access15{
width: 100%;
padding: 3vw;
background: #f7f7f7;
border-radius: 20px;
}

.access16{
width: 100%;
text-align: center;
}

.access16 img{
width: 100%;
}

.access17{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 auto 5vw;
}

.access18{
width: 48%;
margin: 0 0 2vw;
}
.access18:last-child{
width: 48%;
margin: 0;
}
.access18 img{
width: 100%;
border-radius: 3px;
margin: 0 0 1vw;    
}
.access18 span {
    padding-left: 1em;
    text-indent: -1em;
    display: inline-block;
    line-height: 1.5;
}


.access19{
width: 100%;
margin: 3vw 0 0;
text-align: center;
}

.access20{
  font-size: 1.5rem;
  text-align: center;
  display: inline-block;
  padding: 1vw 3vw;
  border-radius: 5px;
  color: #1258a3;
  background: #effbfd;
}

.access21{
width: 100%;
font-size: 1.3rem;
font-weight: 700;
margin: 0 0 1vw 0;

}
.access22{
width: 100%;
margin: 0 0 2vw 0;
}

.access22:last-child{
width: 100%;
margin: 0 0 1vw 0;
}


.access_route {
    width: 100%;
    margin: 0 0 2vw 0;
}
.access_route span {
    display: inline-block;
    padding: 0 2vw;
    border: 1px solid #28634c;
    background: #fff;
    color: #28634c;
    border-radius: 3px;
    font-size: 1.5rem;
}*/
/* access */



/* dooctor */

.doctor1{
width: 100%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.doctor2{
width: 100%;
text-align: center;
margin: 0 0 5vw 0;
}

.doctor2 img{
width: 60%;
border-radius: 3px;
}

.doctor3{
width: 80%;
margin: 0 auto;
display: flex;
        justify-content: center;
        border-radius: 5px;
        flex-direction: column;
}

.doctor4{
font-size: 1.5rem;
line-height: 1.3;
margin: 0 0 1vw 0;
font-weight: 500;
width: 100%;
letter-spacing: .3rem;
text-align: center;
font-family: 'Zen Old Mincho', serif;
/*font-family: 'Zen Maru Gothic', sans-serif;*/
	}

.doctor5 {
font-size: 2.8rem;
        width: 100%;
        font-weight: 500;
        text-align: center;
font-family: 'Zen Old Mincho', serif;
/*font-family: 'Zen Maru Gothic', sans-serif;*/
        display: flex;
        flex-direction: column;
	}
    .doctor5_s {
        font-size: 1.8rem;
        font-weight: 500;
        letter-spacing: 0.1em;
        text-indent: 0.2em;
font-family: 'Zen Old Mincho', serif;
/*font-family: 'Zen Maru Gothic', sans-serif;*/
    }
.doctor6{
/*font-size: 1.4rem;
text-align: center;
width: 100%;
letter-spacing: .1rem;
font-family: 'Zen Maru Gothic', sans-serif;*/
    display: none;
	}

.doctor6{
width: 100%;
margin: 0 0 0 0;
}


.doctor7{
width: 100%;
}

.doctor7 h3{
font-size: 1.7rem;
        font-weight: 500;
        padding: 1rem 0 1.5rem 1rem;
        margin: 0 auto 2rem;
        width: 90%;
        position: relative;
}
.doctor7 h3::after {
        content: "";
        position: absolute;
        background: #8fc31f;
        width: 50px;
        height: 3px;
        display: block;
        bottom: 0;
        left: 1rem;
        border-radius: 50px;
    }
.doctor8{
border-radius: 10px;
        width: 90%;
        margin: 0 auto;
        line-height: 2;
        text-align: justify;
        padding: 5vw 8vw;
        background: #fff;
        border: 8px solid #e6f9d9;    
}
.doctor8 p {
	font-size: 1.6rem;
        font-weight: 500;
}

.doctor9{
    width: 100%;
    margin: 0 auto 1rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.doctor9:last-child{
  margin: 0 auto 0;
}

.doctor10{
    width: 100%;
  font-weight: 700;
  line-height: 1.2;
  color: #939393;
  font-size: 1.2rem;
}

    .doctor11 {
        width: 100%;
        position: relative;
        padding: 0 0 0 1.5em;
        line-height: 1.4;
        margin: 0 0 .5rem;
    }
    .doctor11::before {
        display: block;
        position: absolute;
        top: .4rem;
        left: .5rem;
        width: 1rem;
        height: 1rem;
        background-color: #8fc31f;
        content: '';
        border-radius: 50%;
    }


.doctor12{
background: #fff;
border-radius: 10px;
padding: 3vw 5vw;
width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.doctor13{
width: 100%;
color: #322A2C;
font-weight: 400;
}

.doctor14{
width: 100%;
}

.doctor15{
width: 100%;
}

.doctor16{
background: #fff;
border-radius: 10px;
padding: 3vw 5vw;
width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
line-height: 2;
}

.doctor17{
width: 100%;
font-size: 1.8rem;
  color: #36a34c;
  font-weight: 500;
  text-align: center;
  margin: 0 0 3vw 0;
  line-height: 1.6;
}

.doctor18{
width: 100%;
font-size: 1.4rem;
}
.doctor21{    
            background: #ffffff;
        border-radius: 10px;
        padding: 5vw 6vw;
        width: 90%;
        margin: 0 auto;
        flex-grow: 1;
}

.doctor19,
.doctor22 {
    width: 100%;
    display: block;
}

.doctor22 {
    margin:2vw 0;
}

.doctor23,

.doctor24 {
    width: 100%;
        border-bottom: 1px dotted #dbceb4;
        padding: 1vw .5vw 1vw;
		font-size: 1.6rem;
}
.doctor25 {
    font-size: 1.8rem;
   font-weight: 500;
    margin: 0 0 10px;
} 
.doctor26 {
    width: 100%;
    margin: 20px 0 0;
    font-size: 1.8rem;
   font-weight: 500;
   text-align: right;
}  
.doctor27 h3 {
   font-size: 2.62rem;
        font-weight: 500;
        letter-spacing: 0.2em;
        position: relative;
    padding: 0 0 2vw;
        text-align: center;
        display: flex;
        flex-direction: column;
        flex-wrap: wrap;
font-family: 'Zen Old Mincho', serif;
/*font-family: 'Zen Maru Gothic', sans-serif;*/
}  
    /*
.doctor27 h3::before {
    position: absolute;
    content: "";
    background: url("../images/ic_doctor_profile.svg") no-repeat;
    width: 80px;
    height: 80px;
    left: 0;
    right: 0;
    margin: auto;
    top: 0;
}*/
.doctor27 p {
    font-size: 1.3rem;
        letter-spacing: .15em;
        text-align: center;
    line-height: 1;
    color: #8fc31f;
    font-weight: 500;
}        
/* dooctor */






/* about */

.about1{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.about2{
width: 48%;
background: #F7F7F7;
border-radius: 30px 10px 10px 10px;
margin: 0 0 5vw 0;
}

.about2:nth-child(2n){
margin: 0 0% 5vw 0;
}

.about3{
width: 100%;
margin: 0 0 2vw 0;
}

.about3 img{
width: 100%;
border-radius: 10px 10px 0 0;
}

.about4{
width: 100%;
font-size: 1.3rem;
padding: 0 2vw;
font-family: 'Zen Maru Gothic', sans-serif;
margin: 0 0 2vw 0;
line-height: 1.4;
text-align: center;
}

.about5{
width: 100%;
padding: 0 2vw;
margin: 0 0 3vw 0;
font-size: 1.3rem;
letter-spacing: 0;
line-height: 1.5;
word-break: break-word;
}

/* about */




/* check */
.check1{
width: 100%;
}

table.check2{
width: 100%;
}

.check2 th{
padding: 2vw 2vw;
text-align: center;
background: #f1f1f1;
border: 1px solid #D0D0D0;
font-size: 1.2rem;
}

.check2 th:nth-child(1){
width: 25%
}

.check2 th:nth-child(2){
width: 50%
}

.check2 th:nth-child(3){
width: 25%
}

.check2 td{
padding: 2vw 2vw;
border: 1px solid #D0D0D0;
vertical-align: middle;
background: #FDFDFD;
font-size: 1.2rem;
}

.check2 td:nth-child(1){
text-align: center;
}

.check2 td:nth-child(2){
width: 50%
}

.check2 td:nth-child(3){
text-align: center;
}

/* check */







/* top-seikeigeka */

.service_nav{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.service_nav1{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
background: #fafafa;
box-shadow: 8px 8px 5px #f5f5f5;
margin: 0 0 4vw 0;
}
.service_nav2{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
}

.service_nav3{
width: 30%;
text-align: center;
}
.service_nav3 img{
width: 100%;
}
.service_nav4{
width: 70%;
text-align: center;
font-size: 1.4rem;
padding: 2vw 0;
letter-spacing: 0;
font-weight: 500;
color: #162c4c;
}

.service_nav4::after{
content: "";
background: url("../images/ic_arrow2.svg");
width: 1.5rem;
height: 1.5rem;
display: block;
margin: 1vw auto 0;
text-align: center;
}

/* top-seikeigeka */





/*renewal*/

.renewal__w{
width: 100%;
display: flex;
flex-wrap: wrap;
padding: 5vw 0 10vw;
background: #fffdf0;
}

.renewal1{
width: 100%;
display: flex;
flex-wrap: wrap;
margin: 0 auto;
}
.renewal2{
width: 100%;
margin: 3vw 0 3vw 0;
}
.renewal3{
width: 100%;
text-align: center;
font-size: 1.8rem;
margin: 0 0 5vw 0;
font-family: 'Zen Old Mincho', serif;
font-weight: 700;
}

.renewal4{
width: 100%;
text-align: center;
margin: 0 0 3vw 0;
}

.renewal4 img{
width: 60%;
}

.renewal5{
width: 100%;
text-align: center;
font-size: 1.8rem;
font-family: 'Zen Old Mincho', serif;
font-weight: 700;
}

.renewal6{
width: 100%;
text-align: center;
margin: 0 0 12vw 0;
}

.renewal7{
width: 100%;
font-family: 'Zen Old Mincho', serif;
font-size: 2.5rem;
color: #623f2f;
font-weight: 900;
letter-spacing: .5rem;
}

.renewal8{
width: 100%;
font-family: 'Zen Old Mincho', serif;
font-size: 2.5rem;
color: #623f2f;
font-weight: 900;
}

.renewal9{
width: 90%;
text-align: center;
padding: 3vw;
border: 1px solid #38a34c;
margin: 0 auto;
    background: #ffffff;
    color: #42372e;
}

.renewal10{
width: 100%;
margin: -7vw 0 3vw 0;
}

.renewal10 span{
display: inline-block;
background: #38a34c;
padding: 1vw 4vw;
text-align: center;
color: #fff;
font-size: 1.5rem;
}

.renewal11{
width: 100%;
font-size: 1.6rem;
font-weight: 700;
}

.renewal12{
width: 100%;
font-size: 1.6rem;
margin: 0 0 2vw 0;
font-weight: 700;

}

.renewal13{
width: 100%;
font-size: 1.2rem;
line-height: 1.4;
text-align: left;
}

/*renewal*/



/*sns*/
.sns__w{
  position: absolute;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 20vw;
  z-index: 100;
  top: 15px;
  right: calc(50px + 5vw);
  align-items: center;
}

.sns1{
  width: 32%;
  padding: 1vw 1vw;
  display: block;
}

.sns1:hover{
transform: translateY(-3px);
color: #000;
}

.sns2{
width: 100%;
margin: 0 auto;
}

.sns2 img{
width: 100%;
}

.sns3{
display: none;
}

/*sns*/





/*top_midashi*/



.top_midashi_bg {
     /*background-image: url(../images/ilst07.svg);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: bottom;
        width: 150px;
        height: 150px;
        position: absolute;
        top: -50px;
        left: 2%;
        z-index: 1;*/
    display: none;
}
    .topdoctor_bg2 {
        background-image: url(../images/ilst08.svg);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: bottom;
        width: 150px;
        height: 150px;
        position: absolute;
        bottom: 50px;
        right: 5px;
        z-index: 1;
    }
 
	
/*topdoctor*/	
	
	
	
.topdoctor__w {
width: 100%;
background: linear-gradient(to bottom, #ecf7f3 40%, #ecf7f3 72%, rgba(236, 247, 243, 0) 80%, rgba(236, 247, 243, 0) 100%);
padding: 4rem 0 4rem;
position:relative;
}    
.topdoctor__wi {
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}

.topdoctor_bg {
     /*background-image: url(../images/ilst07.svg);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: bottom;
        width: 150px;
        height: 150px;
        position: absolute;
        top: -50px;
        left: 2%;
        z-index: 1;*/
    display: none;
}
    .topdoctor_bg2 {
        background-image: url(../images/ilst08.svg);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: bottom;
        width: 150px;
        height: 150px;
        position: absolute;
        bottom: 50px;
        right: 5px;
        z-index: 1;
    }

.topdoctor_ilst {
    background-image:url(../images/ilst06.svg);
    background-repeat:no-repeat;
    background-size:contain;
    background-position:top;
    width:160px;
    height: 160px;
    position:absolute;
    top: 0;
    bottom:0;
    right:1vw;
    margin: auto;
    z-index:-1;
}


.topdoctor_ilst2 {
    background-image:url(../images/ilst09.svg);
    background-repeat:no-repeat;
    background-size:contain;
    background-position:bottom;
    width: 100vw;
    height:100%;
    position:absolute;
    bottom:0px;
    left:0;
    z-index:2;
}
	
.topdoctor1{
text-align: center;
margin: 0 0 40px 0;
}

.topdoctor1 h2{
display: block;
    text-align: center;
    font-size: 2.6rem;
    letter-spacing: .3rem;
    color: #442F06;
    line-height: 1;
	font-family: "Zen Old Mincho", serif;
    /*font-family: 'Zen Maru Gothic', sans-serif;*/
    font-weight: 500;
}

.topdoctor1 h2 span{
    display: block;
    position: relative;
}
.topdoctor1 h2::before{
content: "";
/*background: url("../images/icon_leaf.png");*/
display: block;
width: 43px;
height: 43px;
margin: 0 auto 10px;
}

.topdoctor1 h2 span::after{
font-size: 1.3rem;
    letter-spacing: .15em;
    text-align: center;
    content: "DOCTOR";
    display: block;
    font-weight: 500;
    margin: 10px auto;
    color: #8fc31f;
}

	
	
/*
.topdoctor1{
text-align: center;
margin: 0 0 12vw 0;
}

.topdoctor1 h2{
  font-size: 1.6rem;
  font-weight: 400;
  letter-spacing: .3rem;
  color: #ffffff;
  background: linear-gradient(45deg, #4dcb64, #27bb77);
  width: 80%;
  margin: 0 auto;
  box-shadow: 15px 15px 0px rgb(66 198 106 / 20%);
  text-align: right;
  padding: 3vw 3vw;
}

.topdoctor1 h2 span{
display: block;
position: relative;
}

.topdoctor1 h2 span::before{
  content: "GREETING";
  display: block;
  text-align: right;
  font-size: 2.7rem;
  letter-spacing: .6rem;
  color: #fff;
  font-weight: 400;
  line-height: 1;
  font-family: 'Zen Maru Gothic', sans-serif;
  margin: 0 0 1vw 0;
}

.topdoctor1 h2 span::after{
content: "";
background: url("../images/ic_nav1.svg");
width: 10vw;
height: 10vw;
display: block;
top: -7vw;
left: -7vw;
position: absolute;
filter: drop-shadow(4px 4px 3px #469C57);
}*/
.topdoctor_t {
    width: 100%;
}
.topdoctor_t1 {
    font-size: 2.3rem;
    font-family: 'Zen Maru Gothic', sans-serif;
    text-align: center;
    letter-spacing: .005rem;
    font-weight: 700;
margin: 0 0 3rem 0;
    line-height: 1.5;
    position: relative;
    padding-top: 50px;
    color: #60a8ce;
}

.topdoctor_t1::before {
    content: "";
    position: absolute;
    background: url(../images/deco_title.svg) no-repeat center;
    display: block;
    text-align: center;
    width: 100px;
    height: 32px;
    top: 0;
    left: 0;
    right:0;
    margin:auto;
}

.topdoctor_t2 {
    line-height: 2;
padding: 0 4rem;
margin-bottom: 4rem;
    position: relative;
        z-index: 2;;
}

.topdoctor2{
width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
background: #fdfdfb;
box-shadow: 15px 15px 0px rgb(186 238 200);
}

.topdoctor3{
width: 100%;
margin: 0 0 5vw 0;
}

.topdoctor3 img{
width: 100%;
}

.topdoctor4{
width: 100%;
font-size: 1.8rem;
font-family: 'Zen Maru Gothic', sans-serif;
margin: 0 0 2vw 0;
text-align: center;
color: #36a34b;
font-weight: 700;
letter-spacing: -0.1rem;
transform: scaleY(1.05);
}

.topdoctor5{
width: 100%;
font-size: 1.3rem;
padding: 3vw 5vw 6vw;
line-height: 1.7;
}

.topdoctor6{
width: 100%;
font-size: 1.8rem;
text-align: right;
padding: 0 6vw 2vw 0;
font-family: 'Zen Old Mincho';
font-weight: 700;
}

.topdoctor7{
width: 100%;
font-size: 1.2rem;
text-align: right;
padding: 0 6vw 6vw 0;
}
.topdoctor_i {
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

.topdoctor_img img {
    width: 42%;
    border-radius: 8px;
    margin: 0 0 5vw;
}    




/*toppcr*/

.toppcr__w{
width: 100%;
padding: 4vw 0;
background: url("../images/toppcrbg.jpg");
background-size: cover;
}

.toppcr1{
width: 92%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
background: rgba(255,255,255,.80);
padding: 5vw 5vw 10vw;
}

.toppcr2{
width: 100%;
text-align: center;
}

.toppcr2 h2{
font-size: 2rem;
font-weight: 900;
margin: 0 0 3vw 0;
color: #36a34b;
letter-spacing: 0.5rem;
transform: scaleY(1.05);
line-height: 1.4;
}

.toppcr3{
width: 100%;
text-align: center;
margin: 0 0 3vw 0;
}

.toppcr3 span{
display: inline-block;
text-align: center;
font-size: 1.5rem;
font-weight: 500;
padding: 2vw 2vw;
background: #f7f7f7;
color: #fd6da3;
border-radius: 2px;
font-family: 'Zen Maru Gothic', sans-serif;
width: 100%;
line-height: 1.4;
}

.toppcr4{
width: 100%;
margin: 0 auto 5vw;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.toppcr5{
width: 100%;
font-family: 'Zen Maru Gothic', sans-serif;
text-align: center;
line-height: 1.7;
}

.toppcr5b{
width: 100%;
margin: 3vw 0 5vw 0;
display: flex;
flex-wrap: wrap;
justify-content: center;
}

.toppcr5b span{
display: inline-block;
text-align: center;
font-size: 1.2rem;
padding: 1vw 2vw;
background: #1AAFC9;
color: #ffffff;
border-radius: 200px;
font-family: 'Zen Kaku Gothic New', sans-serif;
margin: 0 1vw 0 0;
}

.toppcr6{
width: 100%;
background: #cfeeef;
text-align: center;
}

.toppcr6 img{
width: 60%;
}


.toppcr7{
width: 100%;
margin: 0 auto 5vw;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: baseline;
}

.toppcr8{
width: 100%;
margin: 0 0 3vw 0;
display: flex;
flex-wrap: wrap;
justify-content: center;
}

.toppcr8 span{
display: block;
font-size: 1.4rem;
padding: 2vw 2vw;
color: #322A2C;
border-radius: 2px;
font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
margin: 0 3vw 0 0;
border-bottom: 5px solid #0b891a;
font-weight: 700;
letter-spacing: 0;
width: 100%;
line-height: 1.4;
}

.toppcr9{
width: 100%;
text-align: center;
}

.toppcr9 span{
display: inline-block;
text-align: center;
font-size: 2rem;
font-weight: 700;
padding: 8px 15px;
background: #0b891a;
color: #fff;
border-radius: 2px;
font-family: YakuHanJP, 'Zen Maru Gothic', sans-serif;
margin: 0 12px 0 0;
border: 1px solid #0b891a;
}



.toppcr9 span > a,
.toppcr12 span > a{
color:#ffffff;
}

.toppcr10{
width: 900px;
margin: 0 auto 7vw;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
align-items: baseline;
}

.toppcr11{
width: 100%;
margin: 0 0 3vw 0;
display: flex;
flex-wrap: wrap;
justify-content: center;
}

.toppcr11 span{
display: block;
font-size: 1.4rem;
padding: 2vw 2vw;
color: #322A2C;
border-radius: 2px;
font-family: YakuHanJP, 'Zen Kaku Gothic New', sans-serif;
margin: 0 3vw 0 0;
border-bottom: 5px solid #2bb73c;
font-weight: 700;
letter-spacing: 0;
width: 100%;
line-height: 1.4;
}

.toppcr12{
width: 100%;
text-align: center;
}

.toppcr12 span{
display: inline-block;
text-align: center;
font-size: 2rem;
font-weight: 700;
padding: 8px 15px;
background: #2bb73c;
color: #fff;
border-radius: 2px;
font-family: YakuHanJP, 'Zen Maru Gothic', sans-serif;
margin: 0 12px 0 0;
border: 1px solid #2bb73c;
}

.toppcr13{
width: 100%;
text-align: center;
margin: 0 0 5vw 0;
font-size: 1.2rem;
}

.toppcr14{
width: 100%;
text-align: center;
}

.toppcr14 a{
display: inline-block;
background: #fff;
text-align: center;
padding: 3vw 7vw;
color: #2bb73c;
font-weight: 700;
font-size: 1.3rem;
letter-spacing: -.06rem;
box-shadow: 15px 15px 15px #bfdae7;
border-radius: 5px;
}

.toppcr14 a span{
}

.toppcr14 a span::before{
content:"";
background: url("../images/ic_arrow2.svg");
width: 1.4rem;
height: 1.4rem;
display: inline-block;
margin: 0 1vw 0 0;
vertical-align: middle;
}

.toppcr15{
font-size: 1.5rem;
display: inline;
}

.toppcr16{
font-size: 1.3rem;
display: block;
letter-spacing: .05rem;
font-weight: 500;
}


.toppcr17{
width: 92%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
background: rgba(255,255,255,.80);
padding: 5vw 5vw 10vw;
}

.toppcr18{
width: 100%;
text-align: center;
}

.toppcr18 h2{
font-size: 2rem;
font-weight: 900;
margin: 0 0 3vw 0;
color: #36a34b;
letter-spacing: 0.2rem;
transform: scaleY(1.05);
line-height: 1.4;
}

.toppcr19{
font-size: 1.3rem;
width: 100%;
margin: 0 0 5vw 0;
line-height: 2;
}

.toppcr20{
width: 100%;
margin: 0 auto 5vw;
display: flex;
flex-wrap: wrap;
background: rgba(255,255,255,.50);
padding: 4vw 4vw;
}

.toppcr21{
margin: 0 0 3vw 0;
font-size: 1.3rem;
}

.toppcr21:last-child{
margin: 0 0 0 0;
}

.toppcr21 span::before{
content: "●";
color: #36a34b;
display: inline-block;
margin: 0 1vw 0 0;
}

.toppcr22{
width: 100%;
font-size: 1.3rem;
margin: 0 0 6vw 0;
}

.toppcr23{
width: 100%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
background: rgb(54 163 76);
padding: 3vw;
}

.toppcr24{
width: 100%;
margin: 0 auto 20px;
display: flex;
flex-wrap: wrap;
background: #fff;
align-items: center;
border-radius: 5px;
padding: 2vw;
}

.toppcr25{
width: 100%;
text-align: center;
font-weight: 700;
color: #157e2a;
font-size: 1.4rem;
font-family: YakuHanJP, 'Zen Maru Gothic', sans-serif;
}

.toppcr26{
font-size: 1.2rem;
width: 100%;
text-align: center;
}

.toppcr27{
width: 100%;
font-size: 1.3rem;
text-align: center;
}

.toppcr28{
width: 100%;
text-align: center;
}

.toppcr28 a{
text-align: center;
display: block;
border: 1px dotted #eaff8a;
color: #eaff8a;
font-size: 1.3rem;
line-height: 1.3;
padding: 2vw;
}










/*toppcr*/







.cashless__w{
width: 100%;
background: #e7f0f9;
padding: 8vw 0 8vw;
}

.cashless1{
width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.cashless2{
text-align: center;
margin: 0 0 3vw 0;
width: 100%;
}

.cashless2 span{
display: inline-block;
text-align: center;
background: #004d9f;
padding: 1vw 5vw;
color: #fff;
font-size: 1.5rem;
font-family: "Zen Maru Gothic";
border-radius: 100px;
}

.cashless3{
margin: 0 0 3vw 0;
font-size: 1.4rem;
text-align: center;
width: 100%;
}

.cashless4{
  width: 100%;
  font-size: 1.4rem;
  text-align: center;
  font-weight: 900;
  margin: 0 0 3vw 0;

}

.cashless5{
  width: 100%;
  font-size: 1.3rem;
  text-align: center;
  color: #f31d1d;
  font-weight: 700;
  margin: 0 0 3vw 0;
}

.cashless6{
width: 100%;
text-align: center;
}

.cashless6 img{
width: 750px;
border-radius: 10px;
}


/*お悩み*/

.topnayami__w {
width: 100%;
background: #fff;
padding: 4rem 0 0rem;
position:relative;
}    
.topnayami__wi {
    width: 100%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.topnayami_midashi01{
width: 90%;
margin: 0 auto;
	}


/*topkaiketsu*/

.topkaiketsu__w {
width: 100%;
background: #45ac58;
padding: 20px 0 30px;
position: relative;
z-index:3;
}
	
.topkaiketsu__wi {
width: 100%;
        margin: 0 auto;
        display: flex;
        justify-content: space-between;
        align-items: self-start;
}
	
.top_kaiketsu01{
width: 90%;
margin: 0 auto;
	}

/*解決の下の見出し*/

.top_midashi__w {
width: 100%;
  clear: both;
  background: url("../images/bg_baige.jpg");
  position: relative;	
  padding: 4rem 0 4rem;	
}    
.top_midashi__wi {
    width: 80%;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
/*.top_midashi__wi ::after{
        content: "";
        display: block;
        background: url("../images/onayami_sankaku.png");
        width: 80px;
        height: 22px;
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        top: -10px;
        left: 50%;
        transform: translateX(-50%);
        position: absolute;
        margin: 0 auto;
}*/
	
.top_midashi01{
width: 90%;
margin: 0 auto;
	}
.top_midashi_bg {
    background-image: url(../images/ilst07.webp);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: bottom;
        width: 150px;
        height: 150px;
        position: absolute;
        bottom: 0;
        left: 0;
        z-index: 1;
}
.top_midashi_bg1 {
    background-image: url(../images/ilst07.webp);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: bottom;
        width: 120px;
        height: 203px;
        position: absolute;
        bottom: 0;
        left: 0;
        z-index: 1;
}


    
.top_midashi_bg2 {
    background-image: url(../images/ilst08.webp);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: bottom;
        width: 120px;
        height: 203px;
        position: absolute;
        bottom: 0;
        right: 0;
        z-index: 1;
}





/*アレルギー*/
.movie {
    width: 100%;
    text-align: center;
}
.movie video {
    width: 100%;
    border-radius: 10px;
}
.movie img {
    width: 100%;
    border-radius: 10px;
}
    
/*新規開院*/
.open_w {
  padding: 2vw 0;
    /*半分background: linear-gradient(90deg, #4CAF50 0%, #4CAF50 50%, #8BC34A 50%, #8BC34A 100%);*/
/*    background: rgb(76,175,80);
    background: linear-gradient(227deg, rgba(76,175,80,1) 0%, rgba(97,205,87,1) 100%);*/
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    background:url(../images/bg02.jpg);
}

.open {
  margin: 0 auto;
  width: 260px;
display: flex;
justify-content: center;
align-items: center;
}

.open::before,
.open::after {
    content: '';
    width: 1px;
    height: 33px;
    background-color: #fff;
}

.open::before {
    margin-right: 30px;
    transform: rotate(-35deg)
}
.open::after {
    margin-left: 20px;
    transform: rotate(35deg)
}

.open1{
   display: flex;
    flex-direction: column;
}

.open2 {
    text-align: center;
    color: #000000;
    line-height: 1.4;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    padding: 2.3vw 0 1.5vw;
    margin: 0 auto;
}
.open3 {
    text-align: center;
    color: #000000;
    line-height: 1.4;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    flex-direction: column;
    justify-content: center;
    width: 90%;
    margin: 0 auto;
}
.open4 {
    display: flex;
    text-align: center;
    color: #000000;
    line-height: 1.4;
    flex-wrap: wrap;
    align-items: center;
    flex-direction: row;
    justify-content: center;
    padding: 2vw 0 0;
}
.open_day1 {
  color: #FFEB3B;
    font-size: 2rem;
    margin: 0 3vw 0 0;
font-family: 'Zen Maru Gothic', sans-serif;
}
.open_day2 {
  font-size: 2rem;
    font-weight: normal;
    color: #fff;
    display: flex;
    align-items: center;
    line-height: .8;
}
.open_day_week {
    font-size: 1.35rem;
    background: #ffffff;
    border-radius: 50%;
    text-align: center;
    color: #4caf50;
    width: 23px;
    height: 23px;
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    padding-left:1px;
}
.open_day_time {
    font-size: 1.6rem;
    line-height: 1.4;
    color: #fff;
}
    
    
.subpage35{
     box-shadow: 0 3px 0 #eee;
    border: 2px solid #eee;
    border-radius: 5px;   
    padding: 3vw 4vw;
    background: #fff;
    width: 100%;
}
.item_list li {
    width: 100%;
    line-height: 1.3;
    margin: 0 0 10px 0;
}
.item_list li:last-child {
    width: 100%;
    line-height: 1.3;
    margin: 0;
}    
.item_list li:before {
    content: "";
    width: 10px;
    height: 10px;
    display: inline-block;
    background: #2da932;
    border-radius: 50%;
    margin-right: 1vw;
}
 .subpage36 {
    width: 100%;
    text-align: center;
     margin: 0 0 5vw;
}   
.subpage36 a {
    width: 100%;
    display: block;
}    
.subpage36 a img {
    width: 100%;
    box-shadow: 5px 5px 10px #ccc;
} 
    
.item_list_2 li {
    width: 100%;
    line-height: 1.3;
    margin: 0 0 10px 0;
}
.item_list_2 li:last-child {
    width: 100%;
    line-height: 1.3;
    margin: 0;
}    
.item_list_2 li:before {
    content: "";
    width: 10px;
    height: 10px;
    display: inline-block;
    background: #9b9b9b;
    border-radius: 50%;
    margin-right: 1vw;
}
.info_memo_h {
    font-size: 1.7rem;
    color: #2da932;
    margin: 0 0 3vw 0;
    line-height: 1;
}


/*medical 装飾追加*/
.item_list_1 {
    width: 100%;
    display: block;
    list-style: none;
    font-size: 1.3rem;
    border-radius: 10px;
    margin: 0 0 10px;
}
.item_list_1 li {
    width: 100%;
    line-height: 1.5;
    margin: 0 0 10px 0;
    padding-left: 1em;
    text-indent: -1em;
}
.item_list_1 li:before {
    content: "";
    width: 0.7em;
    height: 0.7em;
    display: inline-block;
    background: #ccc;
    border-radius: 50%;
    margin-right: 1vw;
}


.item_list_3_w {
    width: 100%;
    position: relative;
    padding: 30px 40px 20px;
    border: solid 1px #d6d6d6;
}  
.item_list_3_ttl {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 50px;
    border-radius: 5px 5px 0 0;
/*    background-color: #57aa00;*/
    background:url(../images/bg02.jpg);
    text-align: center;
    width: 200px;
    color: #fff;
}    
.item_list_3 {
width: 95%;
        margin: 0 auto;
        display: flex;
        list-style: none;
        flex-wrap: wrap;
        position: relative;
        column-gap: 20px;
        flex-direction: column;
} 

.item_list_3 li {
        width: 100%;
        line-height: 1.5;
        margin: 0 auto 1rem 0;
        position: relative;
        text-indent: -1.8rem;
        padding-left: 1.8rem;
}
.item_list_3 li:last-child {
        margin: 0 auto 0 0;
    }
.item_list_3 li span {
    font-size:1.3rem;
}

.item_list_3 li.medi05 {
    width:54%;
}
.item_list_3 li:before {
    content: "";
    width: 1rem;
    height: 1rem;
    display: inline-block;
    background: #57aa00;
    border-radius: 50%;
    margin-right: .8rem;
}


#schedule {
    position:relative;
}

#schedule::after {
    content:"";
    background:url(../images/ilst_sche.svg) space;
    position:absolute;
    top:0;
    right:0;
    left:0;
    display:block;
    width: 80%;
    height: 20px;
    margin: auto;
    right:-20px;
}

#schedule .subpage2 {
    text-align:center;
    border-bottom:0;
}

#schedule .subpage2 h2 {
    background: url(../images/bg08.jpg);
    display:inline-block;
    border-radius:8px;
    width: 100%;
    color:#fff;
    font-size:1.6rem;
    padding:10px 0;
    margin-top: 30px;
}

#schedule table {
border-collapse: collapse;
width: 100%;
line-height: 1.5;
}

#schedule th, #schedule td {
border: solid 1px #d6d6d6 !important;
padding: 8px;
text-align: left;
}

#schedule td {
font-size: 1.3rem;
font-weight: 400;
}

#schedule td.name {
    font-size:1.3rem;
    font-weight:600;
}

/*#schedule td.name2 {
    font-weight: 600;
}*/

#schedule th {
background-color: #DFECAA;
width:33%;
}

/*#schedule th.th-first {
    width:18%;
}*/


.ft_ilst {
}

.ft_ilst img {
    width:100%;
}




/*求人告知*/
.toprecruit__w {
    padding: 40px 0 50px;
    background:url(../images/bg.jpg);
    text-align: center;
}

.toprecruit__w_inner {
    width:95%;
    margin:auto;
}
/*
.toprecruit1 {
    position: relative;
    display: inline-block;
    height: 30px;
    line-height: 30px;
    padding: 0 1rem;
    background: #ef7c1d;
    color: #fff;
    font-family:'Zen Maru Gothic', sans-serif;
    font-size: 1.4rem;
    font-weight: bold;
    text-align: center;
    z-index:2;
}

.toprecruit1::before,
.toprecruit1::after {
    position: absolute;
    top: 0;
    width: 0px;
    height: 0px;
    border-color: #ef7c1d transparent;
    border-style: solid;
    content: '';
}

.toprecruit1::before {
    left: -15px;
    border-width: 15px 0px 15px 15px;
}

.toprecruit1::after {
    right: -15px;
    border-width: 15px 15px 15px 0px;
}

.toprecruit_2 {
    width: 80%;
    align-items:center;
    margin: 3.5rem auto 0;
}

.toprecruit_2 img {
    width: 70%;
    border-radius:20px;
    margin: 1.2rem auto 0;
}

.toprecruit_2 p {
    display:inline-block;
    width: 100%;
    text-align:center;
    font-size: 2.2rem;
    font-family:'Zen Maru Gothic', sans-serif;
    letter-spacing:.12em;
}*/

.toprecruit_3 {
    background: #ffd58a;
    display: inline-block;
    padding:4px 10px;
    border-radius:3px;
    letter-spacing:0;
    width: 100%;
}

.toprecruit_3 span {
    background:#fff;
    padding: 1px 7px;
    border-radius:50px;
    margin: 0 2px;
    letter-spacing: .1em;
}








.topaboutreservation__w {
width: 100%;
padding: 4rem 0;
background-image: url(../images/ilst03.svg);
background-repeat: no-repeat;
background-size: contain;
background-position: right;

}

.topaboutreservation1 {
width: 90%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
padding: 3rem 5rem 5rem;
border-radius: 46% 54% 44% 56% / 52% 38% 62% 48%;
background: rgba(254,250,228,.75);
}

.topaboutreservation2 {
width: 100%;
margin: 0 auto 2rem;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.topaboutreservation3 {
width: 100%;
font-size: 1.8rem;
font-weight: 700;
letter-spacing: .05rem;
line-height: 1.4;
padding: 40px 0 2rem 0;
text-align: center;
color: #5e3715;
font-family: 'Zen Maru Gothic';
background: url(../images/deco_title.svg) no-repeat center top / auto 30px;
}
.topaboutreservation3 span {
font-size: 1.5rem;
}

.topaboutreservation4 {
width: 100%;
text-align: center;
font-size: 1.5rem;
}

.topaboutreservation5 {
width: 100%;
text-align: center;
}


.topaboutreservation5 a {
display: inline-block;
width: 22rem;
margin: 0 auto;
background: url(../images/bg02.jpg);
padding: 1.2rem 0;
text-align: center;
letter-spacing: .05rem;
color: #fff;
font-weight: 500;
font-size: 1.6rem;
line-height: 1.3;
position: relative;
border-radius: 20px;
}

.topaboutreservation5 a span::after {
content: "";
background: url(../images/ic_arrow1.svg);
display: inline-block;
width: 1.7rem;
height: 1.7rem;
position: absolute;
right: 1.5rem;
top: 50%;
transform: translateY(-50%);
opacity: .9;
}
.topaboutreservation6{
     background: linear-gradient(transparent 70%, #FFF787 30%);
      display: inline;
      }




/* slider */

.swiper__w {
  width: 100%;
  position: relative;
    overflow: hidden;
   /*margin-top: 7rem;
   height: calc(100vh - 150px);*/
    
}topdoctor_bg
.swiper-wave {
        position: absolute;
        bottom: -2px;
        left: 0;
        width: 100%;
        /*height: 50px;
        background: url(../images/ill_b.svg) no-repeat center bottom / cover;
		background: url("../images/ill_b3.png") no-repeat center bottom / cover;*/
        z-index: 2;
    }
    
.swiper-illustration {
        position: absolute;
        bottom: 0;
        width: auto;
        height: 30%;
        z-index: 2;
    }
        .right {
        right: 0;
    }
        .left {
        left: 0;
    }
    .swiper_txt{
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
  z-index: 10;
  width: 100%;
}
        .swiper_txt1 {
        display: block;
        text-align: right;
    }
   
    .swiper_txt1 img {
        width: 100%;
		margin: 6.4rem auto;
    }
        .swiper_txtb {
            width: 90%;
        position: absolute;
        right: 5%;
        top: 3rem;
        z-index: 10;
        text-align: center;
    }
        .swiper_txt2 {
        display: block;
        text-align: center;
    }
        .swiper_txt2 img {
        display: block;
        width: 100%;
    }
    
.swiper {
width: 100%;
height: 100%;
position: relative;/*
z-index: 4 !important;*/
}

.swiper-slide {
text-align: center;
font-size: 18px;
background: #fff;

/* Center slide text vertically */
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
-webkit-justify-content: center;
justify-content: center;
-webkit-box-align: center;
-ms-flex-align: center;
-webkit-align-items: center;
align-items: center;
    z-index: 100;

}

.swiper-slide img {
display: block;
width: 100%;
/*height: calc(90vh - 5rem - 18vw);*/
object-fit: cover;
}


/*
.swiper_txt2{
width: 100%;
margin: 0 auto;
text-align: center;
order: 2;
}

.swiper_txt2 img{
width: 100%;
}
*/
.swiper_txt3{
width: 50%;
margin: 0 auto;
text-align: center;
order: 3;
position: absolute;
top: -25rem;
left: -4rem;
}

.swiper_txt3 img{
width: 100%;

}

.swiper_txt4{
width: 85%;
margin: 0 auto;
text-align: center;
order: 1;
}

.swiper_txt4 img{
width: 100%;
border-radius: 10px;
}

.swiper-button-next, .swiper-button-prev {
    display: none !important;
}

/* slider */





.slick_box{
  background: #fafdff;
  width: 100%;
  padding: 5rem 2rem 7rem;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 auto;
}

.slick_box0{
width: 100%;
text-align: center;
padding: 0 0 2vw 0;
letter-spacing: .1rem;
font-size: 1.3rem;
color: #484542;
}

.slick_box0 span{
font-size: 1.5rem;
color: #ffa37c;
font-weight: bold;

}

.slick_box0 span.header_subject{
color: #484542;
font-size: 1.5rem;
font-weight: bold;
}

.slick_box1{
width: 100%;
text-align: center;
color: #666;
font-size: 1.8rem;
margin-bottom: 2rem;
}

.slick_box2{
margin-bottom: 0 0 2rem 0;
width: 100%;
}

.slick_box2 img{
width: 100%;
}

.slick_box3{
width: 100%;
margin: 0 0 3rem 0;
text-align: center;
}

.slick_box3 span{
color: #f55656;
}

.slick_box4{
width: 100%;
text-align: center;
padding: 0 0 1vw 0;
letter-spacing: .1rem;
font-size: 1.3rem;
color: #191e5f;
}

.slick_box5{
width: 100%;
text-align: center;
padding: 0 0 2vw 0;

}

.slick_box5 a{
color: #363a5b;
display: inline-block;
border-radius: 100px;
font-weight: 700;
font-family: YakuHanJP, 'Kosugi Maru', sans-serif;
line-height: 1;
letter-spacing: .2rem;
font-size: 2rem;

}

.slick_box5 span::before{
content: "";
background: url("../images/ic_tel.svg") no-repeat;
width: 1.7rem;
height: 1.7rem;
display: inline-block;
background-size: contain;
margin: 0 1.5vw 0 0;
vertical-align: bottom;
}

.slick_box6{
  width: 100%;
  text-align: center;
  font-size: 1.5rem;
  color: #666;
  margin-bottom: 3rem;
}
.slick_box7{
    width: 100%;
    text-align: center;
}

.slick_box7 a{
  display: inline-block;
  border-radius: 5px;
  background: url(../images/bg03.jpg);
  color: #fff;
  text-align: center;
  padding: 12px 0;
  transition: .6s;
  position: relative;
  font-size: 1.5rem;
  width: 20rem;
  box-shadow: 3px 3px 10px #d4d4d4;
  margin-left: 3px;
}

.slick_box7 a span::after{
  content: "";
  background: url(../images/arrow-white.svg);
  width: 1.6rem;
  height: 1.6rem;
  position: absolute;
  right: 15px;
  font-size: 1rem !important;
  top: 1.5rem;
  color: #aedce0;
}

.slick_box7 a:hover,
.slick_box7 a:active{
opacity: .8;
}


.mainimage_t{
color: #009a3e;
font-size: 1.6rem;
letter-spacing: .1rem;
line-height: 2.5;
padding: 30vw 0 0 0;
}

.mainimage_t span{
display: inline;
background: #ffffff;
font-weight: bold;
}

.slick_box8{
margin: 1rem 0 1rem 0;
width: 100%;
text-align: center;
}


.slick_box9__w{
  width: 100%;
  margin: 0 auto 3rem;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
}

.slick_box9{
    width: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
        align-items: center;
}

.slick_box9:last-child{
    margin: 0 0 0 0;
}

.slick_box10{
  width: 100%;
  text-align: center;
  margin-bottom: .5rem;
}

.slick_box10 span{
    display: inline-block;
    text-align: center;
}


.slick_box11{
width: 100%;
text-align: center;
}

.slick_box11 a{
  width: 100%;
  display: block;
  font-size: 2.8rem;
  color: #666;
  font-weight: 600;
  line-height: 1;
  font-family: 'Asap', sans-serif;
}

.slick_box11 a span{

}

.slick_box11 a span::before{
  content: "";
  background: url("../images/ic_tel.svg");
  display: inline-block;
  width: 2rem;
  height: 2rem;
  margin-right: .4rem;
  vertical-align: middle;
}

.slick_box12{
text-align: center;
}

.slick_box12 a{
    width: 100%;
    display: block;
    font-size: 1.8rem;
color: #e9618d;
font-weight: 900;
    line-height: 1;
}

.slick_box12 a span{

}

.slick_box12 a span::before{
content: "";
background: url("../images/ic_tel2.svg");
display: inline-block;
width: 1.5rem;
height: 1.5rem;
margin: 0 7px 0 0;
vertical-align: middle;
}

.slick_box13{
color: #e9618d;
}

.slick_box14{
font-size: 1rem;
text-align: right;
width: 100%;
  margin-bottom: 10px;
}

.slick_box14 > span {
  color: #f1a000;
  font-weight: 700;
}


/* office-hours */
.office-hours_box{
background: #fafdff;
width: 100%;
padding: 4rem 0 4rem;
display: flex;
flex-wrap: wrap;
justify-content: center;
margin: 0 auto;
}
.office-hours0{
width: 100%;
padding: 0 3rem;   
}
    /*
.office-hours1{
text-align: center;
color: #666;
font-size: 1.8rem;
margin-bottom: 2rem; 
}
*/
        .office-hours1 {
        text-align: center;
        margin: 0 0 3rem 0;
    }
        .office-hours1 h2 {
        display: block;
        text-align: center;
        font-size: 2.3rem;
        letter-spacing: .3rem;
        line-height: 1;
        font-family: 'Zen Maru Gothic', sans-serif;
        font-weight: 500;
    }
        .office-hours1 h2 span {
        display: block;
        position: relative;
    }
    .office-hours1 h2 span::before {
        font-size: 1.5rem;
        letter-spacing: .15em;
        text-align: center;
        content: "TIMETABLE";
        display: block;
        font-weight: 500;
        margin: 0 auto 10px;
        color: #8fc31f;
    }
    
.office-hours2{
    width: 100%;
            padding: 0 0 1rem 0;
}

.office-hours2 img{
width: 100%;
}

.office-hours3{
width: 100%;
text-align: center;
}

.office-hours3 span{
color: #f55656;
}
    
.office-hours6{
  width: 100%;
  text-align: center;
  font-size: 1.5rem;
  color: #666;
  margin-bottom: 3rem;
}
.office-hours7{
    width: 100%;
    text-align: center;
}

.office-hours7 a{
  display: inline-block;
  border-radius: 5px;
  background: url(../images/bg03.jpg);
  color: #fff;
  text-align: center;
  padding: 12px 0;
  transition: .6s;
  position: relative;
  font-size: 1.5rem;
  width: 20rem;
  box-shadow: 3px 3px 10px #d4d4d4;
  margin-left: 3px;
}

.office-hours7 a span::after{
  content: "";
  background: url(../images/arrow-white.svg);
  width: 1.6rem;
  height: 1.6rem;
  position: absolute;
  right: 15px;
  font-size: 1rem !important;
  top: 1.5rem;
  color: #aedce0;
}

.office-hours7 a:hover,
.office-hours7 a:active{
opacity: .8;
}


.office-hours8{
margin: 1rem 0 1rem 0;
width: 100%;
text-align: center;
}


.office-hours9__w{
  width: 100%;
  margin: 0 auto 3rem;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: center;
}

.office-hours9{
    width: 100%;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
        align-items: center;
}

.office-hours9:last-child{
    margin: 0 0 0 0;
}

.office-hours10{
  width: 100%;
  text-align: center;
  margin-bottom: .5rem;
}

.office-hours10 span{
    display: inline-block;
    text-align: center;
}


.office-hours11{
width: 100%;
text-align: center;
}

.office-hours11 a{
  width: 100%;
  display: block;
  font-size: 2.8rem;
  color: #666;
  font-weight: 600;
  line-height: 1;
  font-family: 'Asap', sans-serif;
}

.office-hours11 a span{

}

.office-hours11 a span::before{
  content: "";
  background: url("../images/ic_tel.svg");
  display: inline-block;
  width: 2rem;
  height: 2rem;
  margin-right: .4rem;
  vertical-align: middle;
}
/*
.slick_box12{
text-align: center;
}

.slick_box12 a{
    width: 100%;
    display: block;
    font-size: 1.8rem;
color: #e9618d;
font-weight: 900;
    line-height: 1;
}

.slick_box12 a span{

}

.slick_box12 a span::before{
content: "";
background: url("../images/ic_tel2.svg");
display: inline-block;
width: 1.5rem;
height: 1.5rem;
margin: 0 7px 0 0;
vertical-align: middle;
}

.slick_box13{
color: #e9618d;
}

.slick_box14{
font-size: 1rem;
text-align: right;
width: 100%;
  margin-bottom: 10px;
}

.slick_box14 > span {
  color: #f1a000;
  font-weight: 700;
}    */
/* office-hours */
   
.pdf_link {
position: relative;
padding-left: 15px;
line-height: 1;
margin: 10px 0 0;
}    
.pdf_link::before {
content: "";
position: absolute;
top: 50%;
left: 2px;
margin-top: -5px;
border: 5px solid transparent;
border-left: 8px solid #9fc7dd;
}




}
/* sp */



















@media screen and (min-width: 1560px) {
/*.ft_ilst {
    margin-top:-70px;
}*/
.ft_ilst {
    margin:0;
}    
}




















