@charset "UTF-8";


.txt_orange{
color: #f39800 !important;
}


.txt_green{
color: #03a36a !important;
}


/*pc*/
@media all and (min-width:751px) {
body{
background: #e6eeff;
}


.allwrap{
max-width: 800px;
margin: 0 auto;
}

.header_flex{
    display: flex;
    width: 800px;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
    position: relative;
    padding: 0 3rem;
}


.header_tel{
width: 80px;
height: 80px;
display: flex;
justify-content: center;
align-items: center;
}

.header_tel a{
width: 80px;
height: 80px;
display: flex;
justify-content: center;
align-items: center;
color: #fff;
background: rgb(89,141,223);
background: linear-gradient(135deg, rgba(89,141,223,1) 0%, rgba(28,80,161,1) 100%);
border-radius: 5px;
}

.header_tel a span{
font-size: 2rem;

}

.header_tel a span::before{
content: "";
background: url(../images/ic_tel.svg) no-repeat;
width: 40px;
height: 40px;
display: block;
margin: 0 auto;

}




/*　ハンバーガーボタン　*/
.hamburger {
display: block;
z-index: 3;
width: 70px;
height: 100px;
cursor: pointer;
text-align: center;
margin: 0 30px 0 0;
}
.hamburger span {

}
.hamburger span:nth-child(1) {
top: 10px; 
display: block;
position: absolute;
width: 70px;
height: 2px;
background: #1489bd;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}
.hamburger span:nth-child(2) {
top: 30px;
display: block;
position: absolute;
width: 70px;
height: 2px;
background: #1489bd;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}
.hamburger span:nth-child(3) {
top: 50px;
display: block;
position: absolute;
width: 70px;
height: 2px;
background: #1489bd;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
}
.hamburger span:nth-child(4) {
top: 58px;
display: block;
position: absolute;
width: 70px;
height: 0.3vw;
-webkit-transition: 0.3s ease-in-out;
-moz-transition: 0.3s ease-in-out;
transition: 0.3s ease-in-out;
color: #1489bd;
font-size: 2.4rem;
text-align: center;
}

/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
top: 35px;
right: 30px;
-webkit-transform: rotate(-45deg);
-moz-transform   : rotate(-45deg);
transform        : rotate(-45deg);
background : #1489bd;

}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
top: 35px;
right: 30px;
-webkit-transform: rotate(45deg);
-moz-transform   : rotate(45deg);
transform        : rotate(45deg);
background : #1489bd;

}

.hamburger.active span:nth-child(4) {
color : #1489bd;
}


nav.globalMenuSp {
position: fixed;
z-index : 2;
top  : 0;
left : 0;
color: #000;
background: #1489bd;
text-align: center;
transform: translateX(100%);
transition: all 0.6s;
width: 100%;
}

nav.globalMenuSp ul {
background: #fbfbfb;
margin: 0 auto;
padding: 0;
width: 100%;
}

nav.globalMenuSp ul li {
list-style-type: none;
padding: 0;
width: 100%;
border-bottom: 1px solid #d6d6d6;
}
nav.globalMenuSp ul li:last-child {
padding-bottom: 0;
border-bottom: none;
}
nav.globalMenuSp ul li:hover{
background :#ececec;
}

nav.globalMenuSp ul li a {
display: flex;
color: #1489bd;
padding: 1em 0;
text-decoration: none;
height: 120px;
justify-content: center;
align-items: center;
font-size: 2rem;
letter-spacing: .2rem;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
transform: translateX(0%);
}

.mainimage{
width: 100%;
margin: 120px 0 0 0;
}

.mainimage img{
width: 100%;
}



.subnav{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 auto;
}

.subnavbox{
width: 32%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0 20px 0;
box-shadow: 5px 5px 20px #0873a2;
background: #fff;
padding: 20px 0 10px 0;
border-radius: 10px;
}

.subnavbox span{
width: 100%;
text-align: center;
font-size: 2rem;
letter-spacing: .2rem;
font-weight: 700;
}

.subnavbox span::before{

}

.subnavbox span.subnavbox1::before{
content: "";
background: url(../images/nav1.svg) no-repeat;
display: block;
width: 60px;
height: 60px;
margin: 0 auto 10px;
}

.subnavbox span.subnavbox2::before{
content: "";
background: url(../images/nav2.svg) no-repeat;
display: block;
width: 60px;
height: 60px;
margin: 0 auto 10px;
}

.subnavbox span.subnavbox3::before{
content: "";
background: url(../images/nav3.svg) no-repeat;
display: block;
width: 60px;
height: 60px;
margin: 0 auto 10px;
}

.subnavbox span.subnavbox4::before{
content: "";
background: url(../images/nav4.svg) no-repeat;
display: block;
width: 60px;
height: 60px;
margin: 0 auto 10px;
}

.subnavbox span.subnavbox5::before{
content: "";
background: url(../images/nav5.svg) no-repeat;
display: block;
width: 60px;
height: 60px;
margin: 0 auto 10px;
}

.subnavbox span.subnavbox6::before{
content: "";
background: url(../images/nav6.svg) no-repeat;
display: block;
width: 60px;
height: 60px;
margin: 0 auto 10px;
}











































/*common*/

.anchor{
display: block;
padding-top: 11vh;
margin-top: -11vh;
margin-bottom: 12vw;
}




/*<!--header-->*/
header{
display: flex;
justify-content: space-between;
width: 100%;
}

.header_logo{
text-align: center;
margin: .4rem 0 0 0;
}

.header_logo img{
display: inline-block;
width: 330px;
}

.header_nav{
width: 14vw;
}
.header_rsv{
    width: 90px;
    height: 90px;
    right: 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    position: fixed;
}

.header_rsv a{
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
background: linear-gradient(135deg, #ff945f 0%, #ff681d 100%);
    border-radius: 5px;
    box-shadow: 5px 5px 8px #FFC6A9;
    text-align: center;
}

.header_rsv a:hover{
    transform: translateY(-3px);
    opacity: .8;
}


.header_rsv a span{
    font-size: 2.3rem;
    letter-spacing: .1rem;
}

.header_rsv a span::before{
    background: url(../images/ic_calendar_white.svg) no-repeat;
    width: 36px;
    height: 36px;
    display: block;
    margin: 0 auto 0.1rem;
}

nav.NavMenu{
position: fixed;
z-index: 2;
top: 0;
left: 0;
background: #f7f9f9;
color: #000;
text-align: center;
width: 100%;
transform: translateY(-100%);
transition: all 0.7s;
padding: 3vh 0 3vh 0;
}

nav.NavMenu ul{
width: 100%;
margin: 0 auto;
padding: 0;
}

nav.NavMenu ul li{
font-size: 1.8rem;
list-style-type: none;
padding: 0;
width: 100%;
line-height: 1.3;
letter-spacing: .2rem;
}

nav.NavMenu ul li:last-child{
padding-bottom: 0;
border-bottom: none;	/*最後のメニュー項目のみ下線を消す*/
}

nav.NavMenu ul li a{
display: inline-block;		/*クリックできる領域を広げる*/
padding: 1rem 0;
transition: .4s;
}

nav.NavMenu ul li a:link,
nav.NavMenu ul li a:visited{
color: #323335;
}

nav.NavMenu ul li a:hover,
nav.NavMenu ul li a:active{
color: #1489bd;
transform: translate(0,-2px);
}

nav.NavMenu ul li.nav_tel{
font-size: 2.5rem;
font-weight: bold;
padding: 0 0 5vw 0;
}

nav.NavMenu ul li.nav_tel span{
color: #323335;
}

nav.NavMenu ul li.nav_tel span::before{
content: "";
background: url("../images/ic_tel.svg") no-repeat;
width: 30px;
height: 30px;
display: inline-block;
background-size: contain;
vertical-align: middle;
margin: 0 2vw 0 0;
}

nav.NavMenu ul li.nav_teltime{
font-size: 1.3rem;
padding: 0 0 30px 0;
font-weight: normal;
}

nav.NavMenu ul li.nav_free{
width: 100%;
text-align: center;
padding: 30px 0 0 0;
}

nav.NavMenu ul li.nav_free span{
display: inline-block;
background: #fdf7e7;
border-radius: 100px;
text-align: center;
padding: 3vw 8vw;
color: #1489bd;
letter-spacing: .1rem;
font-size: 1.6rem;
margin: 0 0 3vw 0;
}

nav.NavMenu ul li.nav_rsv{
margin: 0 0 5vw 0;
}

nav.NavMenu ul li.nav_rsv a{
display: inline-block;
border-radius: 5px;
text-align: center;
padding: 3vw 5vw;
transition: .6s;
position: relative;
font-size: 1.6rem;
letter-spacing: 0.01rem;
background: linear-gradient(135deg, #f8a23f 0%,#f76b1c 100%);
color: #ffffff;
box-shadow: 0px 0px 5px 0px #d2e5f7;
}

nav.NavMenu ul li.nav_rsv a:active,
nav.NavMenu ul li.nav_rsv a:hover{
transform: translate(0,-3px);
opacity: .9;
}

nav.NavMenu ul li.nav_rsv span::before{
content: "";
background: url("../images/ic_calendar.svg") no-repeat;
width: 30px;
height: 30px;
display: inline-block;
background-size: contain;
vertical-align: middle;
margin: 0 2vw 0 0;
}

nav.NavMenu.active{
transform: translateY(0%);		/*ナビを表示する*/
height: 100vh;
overflow-y: auto;
}

.Toggle {
display: block;
position: fixed;
top: 0.5rem;
right: 3.5vw;
width: 10vw;
cursor: pointer;
z-index: 3;
height: 5rem;
}

.Toggle span {
display: block;
position: absolute;
width: 10vw;
border-top: solid 1px #000;
-webkit-transition: .35s ease-in-out;	/*変化の速度を指定*/
-moz-transition: .35s ease-in-out;		/*変化の速度を指定*/
transition: .35s ease-in-out;			/*変化の速度を指定*/
}

.Toggle span:nth-child(1) {
top: 1rem;
}

.Toggle span:nth-child(2) {
top: 2.2rem;
}

.Toggle span:nth-child(3) {
top: 3.4rem;
}

/* 最初のspanをマイナス45度に */
.Toggle.active span:nth-child(1) {
top: 5vw;
left: 0;
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
transform: rotate(-45deg);
}

/* 2番目と3番目のspanを45度に */
.Toggle.active span:nth-child(2),
.Toggle.active span:nth-child(3) {
top: 5vw;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
transform: rotate(45deg);
}
















/*<!--mainimage-->*/
.mainimg_w{
position:relative;
height: 70vh;
background-position: 80% 0% !important;
background-size: cover !important;
text-align: center;
}

.slick_box{
background: #fff;
width: 90vw;
padding: 5vw 5vw 7vw;
display: flex;
flex-wrap: wrap;
justify-content: center;
margin: -10vh auto 3vh;
box-shadow: 0px 0px 10px 0px #00000014;
border-radius: 3px;
}

.slick_box0{
width: 100%;
text-align: center;
padding: 0 0 4vw 0;
letter-spacing: .1rem;
font-size: 1.5rem;
color: #484542;
}

.slick_box0 span{
font-size: 1.8rem;
color: #ffa37c;
font-weight: bold;
}

.slick_box0 span.header_subject{
color: #484542;
font-size: 1.7rem;
font-weight: bold;
}

.slick_box1{
width: 100%;
text-align: center;
padding: 0 0 4vw 0;
letter-spacing: .1rem;
font-size: 1.5rem;
}

.slick_box2{
padding: 0 0 2vw 0;
}

.slick_box2 img{
width: 100%;
}

.slick_box3{
width: 100%;
padding: 0 0 6vw 0;
font-size: 1.3rem;
text-align: center;
}

.slick_box3 span{
color: #3fb7c3;
}

.slick_box4{
width: 100%;
text-align: center;
padding: 0 0 3vw 0;
letter-spacing: .1rem;
font-size: 1.5rem;
}

.slick_box5{
width: 100%;
font-size: 2.5rem;
font-weight: bold;
text-align: center;
padding: 0 0 3vw 0;
line-height: 1;
letter-spacing: .2rem;
}

.slick_box5 span::before{
content: "";
background: url("../images/ic_tel.svg") no-repeat;
width: 2.5rem;
height: 2.5rem;
display: inline-block;
background-size: contain;
margin: 0 5px 0 0;
vertical-align: bottom;
}

.slick_box6{
padding: 0 0 4vw 0;
}

.slick_box7{
width: 100%;
}

.slick_box7 a{
display: block;
background: #3e88c9;
color: #fff;
text-align: center;
border-radius: 3px;
padding: 1vw 1vw;
font-size: 1.2rem;
transition: .3s;
box-shadow: 0px 0px 10px 0px #00000014;
width: 30vw;
margin: 0 auto;
}

.slick_box7 a:hover,
.slick_box7 a:active{
transform: translate(0,-2px);
opacity: .9;
box-shadow: 0px 0px 10px 0px #00000014;
}


.mainimage_t{
color: #1489bd;
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;
}














/*<!--news-->*/
.news__w{
width:100%;
background:#fdfcf9;
    margin: 120px 0 0 0;
}

.news__wi{
width: 100%;
margin: 0 auto;
padding: 70px 0;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
background: #f9f4ff;
}

.news__w h2{
text-align: center;
margin: 0 auto;

}

.news__w h2 span{
    display: inline-block;
    margin: 0 auto;
    letter-spacing: 0.2rem;
font-size: 4rem;
font-weight: 700;
  line-height: 1.4;
  color: #5313b3;
}

.news_kiji__w{
width: 100%;
border-top: 1px solid #e8e8e8;
}

.kiji__w{
border-bottom: 1px solid #e8e8e8;
padding: 30px 30px;
display: flex;
flex-wrap: wrap;
width: 100%;
justify-content: space-between;
align-items: center;
}

.kiji_d{
font-size: 1.2rem;
color: #797979;
display: inline-block;
width: 100%;
margin: 0 0 1vw 0;
}

.kiji_h{
font-size: 1.8rem;
display: inline-block;
width: 100%;
color: #1489bd;
margin: 0 0 1vw 0;
}

.kiji_t{
width: 100%;
font-size: 1.6rem;

}







/*<!--feature-->*/
.feature__w{
width: 100%;
background: #fff;
padding: 0 0 50px 0;
}

.feature__wi{
width: 100%;
margin: 0 auto;
}

.feature1_box{
position: relative;
}

.feature1_i{
width: 100%;
}

.feature1_i img{
width: 100%;
}

.feature1_bg{
background: rgba(255,255,255,0.9);
padding: 30px 30px 50px;
}

.feature1_hh{
color: #1489bd;
font-size: 3.5rem;
line-height: 2;
letter-spacing: 0.3rem;
text-align: center;
font-weight: 700;

}

.feature1_h{
padding: 20px 0 0;
color: #3c3c3d;
font-size: 1.6rem;
letter-spacing: .1rem;
line-height: 2;
text-align: center;
}

.feature1_t{
padding: 4vw 0 0;
line-height: 1.6;
color: #3c3c3d;

}

.feature2_box{
position: relative;
}

.feature2_i{
right: 0;
width: 100%;
background: rgba(255,255,255,0.9);
}

.feature2_i img{
width: 100%;
}

.feature2_bg{
background: rgba(255,255,255,0.9);
padding: 30px 30px 50px;

}

.feature2_hh{
color: #1489bd;
font-size: 3.5rem;
line-height: 2;
letter-spacing: 0.3rem;
text-align: center;
font-weight: 700;

}

.feature2_h{
padding: 20px 0 0;
color: #3c3c3d;
font-size: 1.6rem;
letter-spacing: .1rem;
line-height: 2;
}

.feature2_t{
padding: 4vw 0 0;
line-height: 1.6;
color: #3c3c3d;

}

.feature3_box{
position: relative;
}

.feature3_i{
width: 100%;
}

.feature3_i img{
width: 100%;
}

.feature3_bg{
background: rgba(255,255,255,0.9);
padding: 30px 30px 80px;
}

.feature3_hh{
color: #1489bd;
font-size: 3rem;
line-height: 2;
letter-spacing: 0.1rem;
text-align: center;
font-weight: bold;
}

.feature3_h{
padding: 20px 0 0;
color: #3c3c3d;
font-size: 1.6rem;
letter-spacing: .2rem;
line-height: 2;
}

.feature3_t{
padding: 4vw 0 0;
line-height: 1.6;
color: #3c3c3d;
font-family: 'Kosugi Maru';
}


.feature4_box{
position: relative;
margin-bottom: 8vw;
}

.feature4_i{
width: 100%;
}

.feature4_i img{
width: 100%;
}

.feature4_bg{
background: rgba(255,255,255,0.9);
padding: 4vw 5vw 5vw;
}

.feature4_hh{
color: #309dca;
font-size: 2.2rem;
line-height: 2;
letter-spacing: 0.3rem;
}

.feature4_h{
padding: 2vw 0 0;
color: #3c3c3d;
font-size: 1.7rem;
letter-spacing: .2rem;
line-height: 1.6;
}

.feature4_t{
padding: 4vw 0 0;
line-height: 1.6;
color: #3c3c3d;

}












/*<!--medical-->*/
.medical__w{
width: 100%;
background: #3ac7a6;
}

.medical__wi{
width: 100%;
margin: 0 auto;
padding: 10vw 0 5vw;
}

.medical__w h2{
font-size: 2rem;
letter-spacing: 0.2rem;
text-align: center;
margin: 0 auto 6vw;
}

.medical__w h2 span{
display: inline-block;
margin: 0 auto;
color: #fff;

}

.medical__w h2 span::before{
content: "";
background: url(../images/logo-s.svg) no-repeat;
display: block;
width: 10vw;
height: 10vw;
margin: 0 auto 2vw;
background-size: cover;
}

.medical__w h2 span::after{
content: "medical";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;

}

.medical_nav__w{
padding: 4vw 0 0 0;
}

.medical_nav__w ul{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
padding: 0 4vw;
}

.medical_nav__w ul li{
width: 48%;
text-align: center;
margin: 0 0 2vw 0;
}

.medical_nav__w ul li a{
width: 100%;
background: #fff;
border-radius: 10px;
display: block;
box-shadow: 0px 0px 5px 0px #f3edde;
padding: 5vw 0;
transition: .3s;
margin: 0 0 2vw 0;
}

.medical_nav__w ul li a:hover{
transform: translate(0,-3px);
background: #ffffff;

}

.mdnav1{
}

.medical_nav__w ul li a span{

color: #1489bd;
font-size: 1.6rem;
letter-spacing: .1rem;
}

.medical_nav__w ul li a span::before{
content: "";
width: 15vw;
height: 15vw;
display: block;
background-size: cover;
margin: 0 auto 4vw;
}

.mdnav1 a span::before{
background: url(../images/ic-medical01.svg) no-repeat center;
} 

.mdnav2 a span::before{
background: url(../images/ic-medical02.svg) no-repeat center;
} 

.mdnav3 a span::before{
background: url(../images/ic-medical03.svg) no-repeat center;
} 

.mdnav4 a span::before{
background: url(../images/ic-medical04.svg) no-repeat center;
} 

.mdnav5 a span::before{
background: url(../images/ic-medical05.svg) no-repeat center;
} 

.mdnav6 a span::before{
background: url(../images/ic-medical06.svg) no-repeat center;
} 

.mdnav7 a span::before{
background: url(../images/ic-medical07.svg) no-repeat center;
} 

.mdnav8 a span::before{
background: url(../images/ic-medical08.svg) no-repeat center;
} 

.mdnav9 a span::before{
background: url(../images/ic-medical09.svg) no-repeat center;
} 

.mdnav10 a span::before{
background: url(../images/ic-medical10.svg) no-repeat center;
} 




















/*<!--doctor-->*/
.doctor__w{
width: 100%;
background: #f7f5fd;
padding: 0 0 50px 0;
}

.doctor__wi{
width: 100%;
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.doctor__w h2{
letter-spacing: 0.2rem;
text-align: center;
margin: 60px auto 0;
font-size: 3rem;
font-weight: 700;

width: 100%;
}

.doctor__w h2 span{
    display: inline-block;
    margin: 0 auto;
    border-top: 1px solid #0b308e;
    border-bottom: 1px solid #0b308e;
    padding: 2rem 40px;
    line-height: 1;
    background: #fff;
}


.doctor_i{
width: 80%;
margin: 50px auto 0;
}

.doctor_i img {
width: 100%;
border-radius: 10px;
}

.doctor_t{
width: 100%;
}

.doctor_t1{
font-size: 3.5rem;
text-align: center;
letter-spacing: .2rem;
padding: 50px 0 20px 0;
font-weight: 700;
color: #2896c7;
}

.doctor_t2{
font-size: 2.7rem;
text-align: center;
letter-spacing: .1rem;
font-weight: bold;
}

.doctor_t3{
line-height: 2;
letter-spacing: .05rem;
margin: 0 0 50px 0;
padding: 0 100px;
}

.doctor_btn{
text-align: center;
}

.doctor_btn a{
display: inline-block;
border-radius: 5px;
text-align: center;
padding: 20px 50px;
transition: .6s;
position: relative;
font-size: 1.5rem;
letter-spacing: 0.01rem;
background: linear-gradient(135deg, rgb(60 160 205) 0%, rgb(46 89 166) 100%);
color: #ffffff;
box-shadow: 0px 3px 3px 0px #e4e4e4;
}

.doctor_btn a:active,
.doctor_btn a:hover{
transform: translate(0,-3px);
}

.doctor_btn span::before{
content: "";
position: absolute;
left: 20px;
font-size: 1rem !important;
top: 50%;
transform: translateY(-50%) translateX(-50%);
margin: auto;
color: #aedce0;
}





/*<!--doctor-->*/
.recruit__w{
    width: 100%;
    background: #fff;
    padding: 0 0 20px 0;
}

.recruit__wi{
width: 100%;
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.recruit__w h2{
letter-spacing: 0.2rem;
text-align: center;
margin: 60px auto 0;
font-size: 3rem;
font-weight: 700;

width: 100%;
}

.recruit__w h2 span{
    display: inline-block;
    margin: 0 auto;
    border-top: 1px solid #5313b3;
    border-bottom: 1px solid #5313b3;
    padding: 2rem 40px;
    line-height: 1;
    background: #fff;
    color: #1d093a;
}
.recruit1{
width: 100%;
}

.recruit1 table{
width: 95%;
margin: 0 auto;
border: 1px solid #000;
background: #fff;
}

.recruit1 th{
    width: 30%;
    border: 1px solid #5a5a5a;
    padding: 2.5rem;
    vertical-align: middle;
    background: #f6f6f6;
}

.recruit1 td{
width: 70%;
border: 1px solid #5a5a5a;
padding: 2.5rem;
}










/*<!--loopslide-->*/
.loopslide{
padding: 12vw 0;
background: #f7f5ec;
}

.simply-scroll-container {
position: relative;
}

.simply-scroll-clip {
position: relative;
overflow: hidden;
}

.simply-scroll-list {
overflow: hidden;
margin: 0;
padding: 0;
}

.simply-scroll-list li {
float: left; /* Horizontal scroll only */
padding: 0;
margin: 0;
width: 80vw;
}

.simply-scroll-list li img {
display: block;
width: 100%;
}















/*<!--common clinic-->*/
.clinic__w{
width: 100%;
margin: 0 auto;
display: flex;
justify-content: space-between;
padding: 80px 0 0;
flex-wrap: wrap;
background: #f9f4ff;
}

.clinic_box1{
width: 100%;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.clinic_box2{
width: 100%;
margin: 0 0 10px 0;
}

.clinic1{
width: 100%; 
text-align: center;
padding: 0 0 30px 0;
}

.clinic1 img{
width: 40%;
display: inline-block;
}

.clinic2{
width: 100%;
font-size: 1.6rem;
line-height: 2;
text-align: center;
padding: 0 0 30px;
}

.clinic2 span{
font-size: 2.8rem;
color: #ffa37c;
font-weight: bold;
}

.clinic3{
width: 100%;
font-size: 1.8rem;
text-align: center;
}

.clinic4{
width: 100%;
font-size: 4rem;
font-weight: bold;
text-align: center;
line-height: 1;
padding: 0 0 70px;
}

.clinic4 a span{
color: #323232;
}

.clinic4 span::before{
content: "";
background: url("../images/ic_tel.svg") no-repeat;
width: 2.8rem;
height: 2.8rem;
display: inline-block;
background-size: contain;
margin: 0 5px 0 0;
vertical-align: bottom;
}

.clinic5{
width: 100%;
padding: 5vw 0 12vw;
text-align: center;
}

.clinic5 a{
display: inline-block;
border-radius: 5px;
text-align: center;
padding: 3vw 8vw;
transition: .6s;
position: relative;
font-size: 1.3rem;
letter-spacing: 0.01rem;
background: #ef799c;
background-image: linear-gradient(180deg, #fe7bb0 0%, #ff689c 74%);
color: #fff;
box-shadow: 0px 3px 3px 0px #e4e4e4;
}

.clinic5 a:active,
.clinic5 a:hover{
transform: translate(0,-3px);
}

.clinic5 span::before{

}

.clinic6{
width: 100%;
padding: 0 70px 20px 70px;
text-align: center;
}

.clinic6 img{
width: 100%;
}

.clinic6 span{
display: inline-block;
background: #ff774e;
border-radius: 100px;
text-align: center;
padding: 1vw 5vw;
color: #fff;
letter-spacing: .2rem;
}

.clinic7{
padding: 0 70px 0 70px;
font-size: 1.6rem;
width: 100%;
line-height: 2;
}

.clinic7 span{
color: #ec1b1b;
}

.clinic8{
width: 100%;
text-align: center;
padding: 0 70px 50px 70px;
}

.clinic8 span{
}

.clinic8 iframe{
width: 100%;
height: 600px;
margin: 0 auto;
}

.clinic9{
width: 100%;
padding: 0 70px 0 70px;
margin: 0 auto 50px;
}

.clinic9 img{
    width: 100%;
    border: 3px solid #005da8;
    border-radius: 10px;
        box-sizing: content-box;
}














/*<!--footer-->*/
.footer__w{
width: 100%;
background: #6600ff;
position: relative;
}

.footer__wi{
background-size: contain;
width: 100%;
margin: 0 auto;
position: relative;
}

.footer__w p{
font-size: 1.4rem;
text-align: center;
color: #fff;
padding: 20px 0;
}














/*<!--breadcrumb-->*/
.bc__ww{
margin: 0 auto 0;
}

.bc__w{
width: 100%;
padding: 20px 40px;
font-size: 1.3rem;
background: #f8f9f9;
margin: 0 0 0 0;
}

.bc__w ol{
padding: 0;
}

.bc__w ol li{
list-style:none;
display:inline;
}

.bc__w ol li a:link,
.bc__w ol li a:visited{
color:#0068b7 !important;
}

.bc__w ol li a:hover,
.bc__w ol li a:active{
color:#0068b7 !important;
}

.bc__w ol li:last-of-type a{
color:#333 !important;
}









/*access*/
.access_tbl__w{
width: 100%;
margin: 50px 0 100px 0;
}

.access_tbl{
width: 80%;
margin: 0 auto;
border: 1px solid #eaeaea;
}

.access_tbl th{
width: 20%;
background: #fafafa;
vertical-align: middle;
padding: 15px 10px;
border: 1px solid #eaeaea;
}

.access_tbl td{
width: 80%;
font-size: 1.5rem;
vertical-align: middle;
padding: 15px 20px;
border: 1px solid #eaeaea;
}












































/*<!--information-->*/
.info__w{
margin: 0 auto;
padding: 0 5vw;
}

.info_box{
width: 100%;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.info_box1{
margin: 0 0 8vw;
order: 1;
width: 100%;
}

.info_box1 h3{
font-weight: bold;
font-size: 1.6rem;
border: 1px solid #a1cbd6;
padding: 2vw 3vw;
color: #45a8c1;
display: block;
letter-spacing: .2rem;
text-align: center;
margin: 0 0 3vw 0;
}


.info_box1 h4{
font-weight: bold;
font-size: 1.5rem;
padding-top: 8rem;
margin-top: -8rem;
}

.info_box1 h4::before{
font-weight: bold;
content: "■";
font-size: 1.5rem;
display: inline-block;
margin: 0 1vw 0 0;
color: #45a8c1;
}









.info_box1 p{

}

.info_box2{
width: 50%;
order: 3;
margin: 0 auto 3vw;
}

.info_box2 img{
width: 100%;
}
























/*<!--subdoctor-->*/
.subdoctor__w{
width: 100%;
background: #f7f5fd;
}

.subdoctor__wi{
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.subdoctor_i{
width: 80%;
margin: 0 auto;
}

.subdoctor_i img{
width: 100%;
border-radius: 10px;
}

.subdoctor_t{
width: 100%;
}

.subdoctor_t1{
font-size: 2.2rem;
text-align: center;
letter-spacing: .2rem;
color: #1489bd;
}

.subdoctor_t2{
font-size: 1.6rem;
text-align: center;
letter-spacing: .1rem;
padding: 0 0 7vw;
}

.subdoctor_t3{
line-height: 2;
padding: 2vw 6vw 10vw;
font-size: 1.4rem;
}

.subdoctor_t4{
}












/*<!--doctorhistory-->*/
.doctorhistory__w{
width: 100%;
background: #fff;
padding: 10vw 0 10vw;
}

.doctorhistory_box{
width: 100%;
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.doctorhistory_box1{
width: 90%;
padding: 4vw 4vw;
background: #f9f9f9;
margin: 0 auto 5vw;
}

.doctorhistory_box1 h3{
font-weight: bold;
font-size: 1.6rem;
margin: 0 0 1vw 0;
}

.doctorhistory_box1 p{
line-height: 2.5;
}

.doctorhistory_box2{
width: 90%;
padding: 4vw 4vw;
background: #f9f9f9;
margin: 0 auto 5vw;

}

.doctorhistory_box2 h3{
font-weight: bold;
font-size: 1.6rem;
margin: 0 0 1vw 0;
}

.doctorhistory_box2 p{
line-height: 2.5;
}

.subdoctor_name{
text-align: center;
padding: 10vw 0 10vw;
font-size: 1.8rem;
background: #f9f9f9;
margin: 0 0 5vw 0;

}













/*<!--sub gallery-->*/
.sub_gallery__w{
}

.sub_gallery_box__w{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 100%;
padding: 0 1vw;
}

.sub_gallery_box{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 49%;
margin: 0 0 5vw 0;
flex-direction: column;
background: #fafafa;
}

.sub_gallery_box1{
width: 100%;
}

.sub_gallery_box1 img{
width: 100%;
}

.sub_gallery_box2{
width: 100%;
font-size: 1.4rem;
padding: 2vw 0 2vw 0;
background: #fafafa;
display: flex;
flex-wrap: wrap;
margin-bottom: auto;
}

.gallery_h{
font-size: 1.6rem;
text-align: center;
display: inline-block;
width: 100%;
justify-content: center;
color: #000;
padding: 0 2vw 0;
}

.gallery_t{
font-size: 1.5rem;
display: flex;
width: 100%;
padding: 2vw 3vw 2vw;
}

.gallery_nobox{
background: #fff !important;
}





header {
position: fixed;
top: 0;
left: 0;
z-index: 2;
background: #fff;
transition: .3s;
align-items: center;
padding: 1rem 0 1rem;
height: 120px;
box-sizing: border-box;
}






/*<!--subpage h1-->*/
.subtitle__w{
margin: 0 auto 8vw;
width: 100%;
padding: 5vh 0 5vh 0;
}

.subtitle__w h1{
font-size: 2.2rem;
letter-spacing: 0.2rem;
text-align: center;
margin: 0 auto;
color: #fff;
}

.subtitle__w h1 span{
display: inline-block;
margin: 0 auto;
}

.h_information{
background: url("../images/subtitle_bg1.jpg") no-repeat;
background-size: cover;
}

.h_information h1 span::after{
content: "information";
display: block;
font-size: 1.3rem;
letter-spacing: .2rem;
line-height: 1;
}

.h_doctor{
background: url("../images/subtitle_bg2.jpg") no-repeat;
background-size: cover;
}

.h_doctor h1 span::after{
content: "doctor";
display: block;
font-size: 1.3rem;
letter-spacing: .2rem;
line-height: 1;
}

.h_facilities{
background: url("../images/subtitle_bg4.jpg") no-repeat;
background-size: cover;
}

.h_facilities h1 span::after{
content: "facilities";
display: block;
font-size: 1.3rem;
letter-spacing: .2rem;
line-height: 1;
}

.h_faq{
background: url("../images/subtitle_bg4.jpg") no-repeat;
background-size: cover;
}

.h_faq h1 span::after{
content: "faq";
display: block;
font-size: 1.3rem;
letter-spacing: .2rem;
line-height: 1;
}

.h_access{
background: url("../images/subtitle_bg6.jpg") no-repeat;
background-size: cover;
}

.h_access h1 span::after{
content: "access";
display: block;
font-size: 1.3rem;
letter-spacing: .2rem;
line-height: 1;
}

.h_contract{
background: url("../images/subtitle_bg3.jpg") no-repeat;
background-size: cover;
}

.h_contract h1 span::after{
content: "contract";
display: block;
font-size: 1.3rem;
letter-spacing: .2rem;
line-height: 1;
}

.h_medicalcare{
background: url("../images/subtitle_bg3.jpg") no-repeat;
background-size: cover;
}

.h_medicalcare h1 span::after{
content: "medical care";
display: block;
font-size: 1.3rem;
letter-spacing: .2rem;
line-height: 1;
}

.h_reservation{
background: url("../images/subtitle_bg5.jpg") no-repeat;
background-size: cover;
}

.h_reservation h1 span::after{
content: "reservation";
display: block;
font-size: 1.3rem;
letter-spacing: .2rem;
line-height: 1;
}






/*subtitle*/
.subimage{
width: 100%;
margin: 150px 0 0 0;
background: url(../images/subimage6.jpg);
background-size: cover;
display: flex;
align-items: center;
justify-content: center;
}

.subimage h2{
width: 100%;
color: #fff;
text-align: center;
text-shadow: 0px 0px 15px #1489bd;

letter-spacing: 0.5rem;
font-size: 3.7rem;
font-weight: 700;
margin: 50px 0 50px 0;
}

.subh2{

}

.subh2 span{
display: inline-block;
margin: 0 auto;
}

.subh2 span::before{
content: "";
background: url(../images/logo-s.svg) no-repeat;
display: block;
width: 60px;
height: 60px;
margin: 0 auto 0;
background-size: cover;
}

.subh2 span::after{
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
line-height: 1;
color: #fff;
text-shadow: 0px 0px 15px #1489bd;
}

.h2_news span::after{
content: "news";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
line-height: 1;
color: #1489bd;
}

.h2_doctor span::after{
content: "doctor";
}

.h2_access span::after{
content: "access";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
line-height: 1;
color: #fff;
}

.h2_facilities span::after{
content: "facilities";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
line-height: 1;
color: #1489bd;
}

.h2_jihi span::after{
content: "self-pay care";
}

.h2_hifu span::after{
content: "dermatology";
}

/*subtitle*/










/*parts*/
.footer_border{
border: solid 2vh #f5f5f5;
}


























.s_01 .accordion_one .accordion_header:hover {
opacity: .8;
}

.s_01 .accordion_one .accordion_header .i_box .one_i {
display: block;
width: 18px;
height: 18px;
transform-origin: center center;
transition-duration: 0.2s;
position: relative;
}
.s_01 .accordion_one .accordion_header.open .i_box {
}
.s_01 .accordion_one .accordion_header .i_box .one_i:before, .s_01 .accordion_one .accordion_header .i_box .one_i:after {
display: flex;
content: '';
background-color: #fff;
border-radius: 10px;
width: 14px;
height: 2px;
position: absolute;
top: 8px;
left: 2px;
transform-origin: center center;
}
.s_01 .accordion_one .accordion_header .i_box .one_i:before {
width: 2px;
height: 14px;
top: 2px;
left: 8px;
}
.s_01 .accordion_one .accordion_header.open .i_box .one_i:before {
content: none;
}
.s_01 .accordion_one .accordion_header.open .i_box .one_i:after {
}
.s_01 .accordion_one .accordion_inner {
display: none;
border-left: 1px solid #e1f0f3;
border-right: 1px solid #e1f0f3;
border-bottom: 1px solid #e1f0f3;
box-sizing: border-box;
background: #fff;
position: relative;
padding: 1.5rem 6rem 1.5rem 5rem;
}

.s_01 .accordion_one .accordion_inner .box_one {
}
.s_01 .accordion_one .accordion_inner p.txt_a_ac {
margin: 0;
}

.s_01 .accordion_one .accordion_header .i_box {
width: 30px;
height: 30px;
margin-top: -15px;
}
.s_01 .accordion_one {
max-width: 1200px;
margin: 0 auto 15px;
}
.txt_a_ac::before{
position: absolute;
content: "A";
font-size: 2.2rem;
left: 4vw;
top: 0.9rem;
color: #ffbe6e;
font-weight: bold;
}
.s_01 .accordion_one .accordion_header .i_box {
display: flex;
justify-content: center;
align-items: center;
position: absolute;
top: 55%;
right: 3%;
width: 30px;
height: 30px;
border: 1px solid #fff;
margin-top: -20px;
box-sizing: border-box;
transform-origin: center center;
transition-duration: 0.2s;
background: #3e88c9;
border-radius: 100px;
}
.s_01 .accordion_one .accordion_header {
background-color: #ffffff;
font-size: 1.5rem;
padding: 1.5rem 6rem 1.5rem 5rem;
position: relative;
z-index: +1;
cursor: pointer;
transition-duration: 0.2s;
border: 1px solid #e1f0f3;
}

.s_01 .accordion_one .accordion_header::before{
position: absolute;
content: "Q";
font-size: 2.2rem;
left: 4vw;
top: 0.9rem;
color: #3e88c9;
}

.s_01 {
padding: 0 0 10vw 0;
}

.qa_link_btn{
display: block;
border: solid 2px #d7cbb6;
width: 30%;
padding: 5px;
text-align: center;
margin: 10px 0;
text-decoration: none !important;
color: #bf9c6f !important;
font-weight: bold;
}

.qa_link_btn span{
display: block;
width: 100%;
position: relative;
}

.qa_link_btn span::after{
content: "\0bb";
position: absolute;
right: 10px;
}




/*<!--アクセス-->*/
.access__w{
width: 100%;
margin: 0 auto;
padding: 0 5vw;
}

.submap_box{

}

.submap_gmap{
width: 100%;
height: 70vw;

}

.submap_gmap iframe{
width: 100%;
height: 70vw;

}

.submap_link{
text-align: center;

}

.submap_link a{
display: inline-block;
border-radius: 5px;
text-align: center;
padding: 3vw 10vw;
transition: .6s;
position: relative;
font-size: 1.4rem;
letter-spacing: 0.01rem;
background: #1489bd;
color: #fff;
box-shadow: 0px 3px 3px 0px #e4e4e4;
}

.submap_link a:active, .submap_link a:hover {
transform: translate(0,-2px);
opacity: .9;
box-shadow: 0px 3px 3px 0px #e4e4e4;
}

.submap_link span::before {
content: "";
position: absolute;
left: 20px;
font-size: 1rem !important;
top: 50%;
transform: translateY(-50%) translateX(-50%);
margin: auto;
color: #aedce0;
}


.submap_traffic{
padding: 4vw;
border: .5rem solid #f2f2f2;
margin: 5vw 0 10vw;
}

.submap_traffic_address{
font-size: 1.4rem;
margin: 0 0 6vw 0;
}

.submap_traffic_box{

}

.submap_traffic_box1{
font-size: 1.7rem;
color: #1489bd;

}

.submap_traffic_box2{
margin: 0 0 6vw 0;
font-size: 1.4rem;
}

.submap_traffic_box:last-child .submap_traffic_box2{
margin: 0;
}

.submap_route{
display: flex;
flex-wrap: wrap;
width: 100%;
justify-content: space-between;

}

.submap_route_box{
width: 100%;
}

.submap_route_box1{
width: 100%;
}


.submap_route_box:after{
content: "\025bc";
color: #43b4cd;
text-align: center;
width: 100%;
display: inline-block;
margin: 10vw 0;
}

.submap_route_box:last-child:after{
content: "";
}


.submap_route_box1 img{
width: 100%;
}


.submap_route_box2{
display: flex;
justify-content: space-between;
width: 100%;
font-size: 1.6rem;
align-items: center;
padding: 5vw 0 0 0;
}

.route_number{
display: inline-block;
padding: .5rem 0;
background: #e9fafc;
color: #3e88c9;
font-weight: bold;
font-size: 1.5rem;
width: 10%;
text-align: center;
}

.route_txt{
display: inline-block;
width: 90%;
padding: 0 0 0 4vw;
line-height: 1.5;
font-size: 1.4rem;

}










.footer_sitemap__w{
margin: 0 0 80px 0;
}

.footer_sitemap__w ul{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 100%;
margin: 0 auto;
text-align: center;
}

.footer_sitemap__w ul li{
display: block;
width: 48%;
}

.footer_sitemap__w ul li a{
display: inline-block;
padding: 5px 5px;
font-size: 1.6rem;
color: #ffffff;
border-radius: 5px;
transition: .3s;
}













.footer_sitemap__w ul li a:hover,
.footer_sitemap__w ul li a:active{
opacity: .7;
}

.footer_logo{
width: 100%;
margin: 0 auto;
padding: 50px 200px 50px;
}

.footer_logo img{
width: 100%;
}





/* <!--PC 申込ボタン--> */
.btn_pagetop{
position: absolute;
bottom: 30px;
right: 30px;
z-index: 1;
}

.btn_pagetop a{
    width: 60px;
    height: 60px;
    border-radius: 5px;
    display: table-cell;
    color: #60f;
    text-align: center;
    font-size: 1.4rem;
    position: relative;
    letter-spacing: .1rem;
    vertical-align: middle;
    line-height: 1.5;
    background: #ffffff;
    transition: .5s !important;
    font-weight: bold;
    border: 2px solid #60f;
}

.btn_pagetop a:hover,
.btn_pagetop a:active{
transform: translate(0,-2px);
opacity: .9;
box-shadow: 0px 0px 10px 0px #00000014;
}



.contact__w{
width: 100%;
background: #f3f3f3;
}

.contact__wi{
width: 100%;
margin: 0 auto;
padding: 10vw 0 0;
}

.contact__w h2{
font-size: 1.8rem;
letter-spacing: 0.2rem;
text-align: center;
margin: 0 auto;
}

.contact__w h2 span{
display: inline-block;
margin: 0 auto;
}

.contact__w h2 span::after{
content: "medical";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
}

.info_box100{
width: 100% !important;
}

.info_box100 h3{
font-size: 1.6rem;
padding: 2vw 3vw;
color: #fff;
display: block;
letter-spacing: .2rem;
text-align: center;
margin: 0 0 5vw 0;
background: #1489bd;
}

.info_box100 p{

}

.info_box100 h4{
text-align: center;
}


.info_box100 h4 span{
font-size: 1.4rem;
color: #fff;
display: inline-block;
letter-spacing: .2rem;
margin: 0 0 5vw 0;
background: #5dabc1;
border-radius: 100px;
padding: 2vw 5vw;
}



/*faq*/
.faq_h2{
margin: 0 auto;
font-weight: bold;
padding: 0 5vw;
}

.faq_h2 span{
font-size: 1.8rem;
display: inline-block;
letter-spacing: .2rem;
}




/*<!--sservice-->*/
.sservice__w{
width: 100%;
background: url(../images/sservice_bg.jpg) no-repeat;
background-size: cover;
padding: 5vw 3vw;
}

.sservice__wi{
width: 100%;
margin: 0 auto;
padding: 5vw 5vw;
background: rgba(255,255,255,0.95);
border-radius: 5px;
}

.sservice__w h2{
font-size: 1.8rem;
letter-spacing: 0.2rem;
text-align: center;
margin: 0 auto 7vw;
}

.sservice__w h2 span{
display: inline-block;
margin: 0 auto;
color: #0893ce;
}

.sservice__w h2 span::before{
content: "";
background: url("../images/logo-s.svg") no-repeat;
display: block;
width: 64px;
height: 60px;
margin: 0 auto 10px;
}
.sservice__w h2 span::after{
content: "industrial physician";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
}

.sservice_t{
background: #fff;
padding: 40px 40px;
border-radius: 5px;
}

.sservice_t2{
margin: 4vw 0 3vw;
font-size: 1.6rem;
font-weight: bold;
}

.sservice_fx{
display: flex;
flex-wrap: wrap;
justify-content: space-around;
margin: 0 0 5vw 0;
}

.sservice_fx li{
width: 100%;
font-size: 1.3rem;
}

.sservice_fx li:before{
content: "■";
font-size: 1.9rem;
display: inline-block;
margin: 0 1vw 0 0;
color: #45a8c1;
}


/*<!--kservice-->*/
.kservice__w{
width: 100%;
background: url(../images/kservice_bg.jpg) no-repeat;
background-size: cover;
padding: 5vw 3vw;
}

.kservice__wi{
width: 100%;
margin: 0 auto;
padding: 5vw 5vw;
background: rgba(255,255,255,0.95);
border-radius: 5px;
}

.kservice__w h2{
font-size: 1.8rem;
letter-spacing: 0.2rem;
text-align: center;
margin: 0 auto 7vw;
}

.kservice__w h2 span{
display: inline-block;
margin: 0 auto;
color: #0893ce;
}

.kservice__w h2 span::before{
content: "";
background: url("../images/logo-s.svg") no-repeat;
display: block;
width: 64px;
height: 60px;
margin: 0 auto 10px;
}
.kservice__w h2 span::after{
content: "consulting";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
}







/*<!--sservice-->*/
.gservice__w{
width: 100%;
background: url(../images/gservice_bg.jpg) no-repeat;
background-size: cover;
padding: 5vw 3vw;
}

.gservice__wi{
width: 100%;
margin: 0 auto;
padding: 5vw 5vw;
background: rgba(255,255,255,0.95);
border-radius: 5px;
}

.gservice__w h2{
font-size: 1.8rem;
letter-spacing: 0.2rem;
text-align: center;
margin: 0 auto 7vw;
}

.gservice__w h2 span{
display: inline-block;
margin: 0 auto;
color: #0893ce;
}

.gservice__w h2 span::before{
content: "";
background: url("../images/logo-s.svg") no-repeat;
display: block;
width: 64px;
height: 60px;
margin: 0 auto 10px;
}
.gservice__w h2 span::after{
content: "obligation";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
}

.gservice_nav__w{
}


.gservice_t1{
font-size: 1.4rem;
}

.gservice_t2{
margin: 4vw 0 3vw;
font-size: 1.6rem;
font-weight: bold;
}

.gservice_t3{
padding: 1vw 2vw;
display: inline-block;
background: #45a8c1;
color: #fff;
margin: 0 0 20px 0;
}

.gservice_fx{
display: flex;
flex-wrap: wrap;
justify-content: space-around;
margin: 0 0 30px 0;
}

.gservice_fx li{
width: 100%;
font-size: 1.4rem;
}

.gservice_fx li:before{
content: "■";
font-size: 1.4rem;
display: inline-block;

color: #45a8c1;
}

.gservice_fx2{
display: flex;
flex-wrap: wrap;
justify-content: space-around;
margin: 0 0 3vw 0;
}

.gservice_fx2 li{
width: 100%;
font-size: 1.4rem;
}

.gservice_fx2 li:before{
content: "■";
font-size: 1.4rem;
display: inline-block;
color: #45a8c1;
}





.illustmap{
width: 100%;
margin: 0 auto;
}

.illustmap img{
width: 100%;
height: 100%;
border-radius: 10px;
border: 1px solid #1489bd;
}

.info_memo1{
width: 100%;
padding: 5vw 4vw;
border-radius: 10px;
background: #f6f6f6;
order: 4;
}

.info_memo1_h{
font-size: 1.6rem;
color: #2196f3;
margin: 0 0 20px 0;
}

.info_memo1_t{
line-height: 2;

}

.info_memo_ic{
width: 1.8rem;
height: 1.8rem;
display: inline-block;
margin: 0 1vw 0 0;
vertical-align: middle;
}

.info_memo_ic img{
width: 100%;
height: 100%;
}

.info_memo2{
width: 100%;
padding: 5vw 4vw;
border-radius: 10px;
background: #f6f6f6;
order: 5;
}


.rsv_link{
text-align: center;

}

.rsv_link a{
display: inline-block;
border-radius: 5px;
text-align: center;
padding: 3vw 10vw;
transition: .6s;
position: relative;
font-size: 1.4rem;
letter-spacing: 0.01rem;
background: #00ade4;
color: #fff;
box-shadow: 0px 3px 3px 0px #e4e4e4;
}

.rsv_link a:active, .rsv_link a:hover {
transform: translate(0,-2px);
opacity: .9;
box-shadow: 0px 3px 3px 0px #e4e4e4;
}

.rsv_link span::before {
content: "";
position: absolute;
left: 20px;
font-size: 1rem !important;
top: 50%;
transform: translateY(-50%) translateX(-50%);
margin: auto;
color: #aedce0;
}






.headertelpc{
    color: #323232;
    font-size: 5rem;
    font-weight: bold;
    line-height: 1;
}

.headertelpc span{
}
.headertelpc span::before{
content: "";
background: url(../images/ic_tel.svg) no-repeat;
width: 3.2rem;
height: 3.2rem;
display: inline-block;
background-size: contain;
margin: 0 8px 0 0;
vertical-align: middle;
}

.headertelpctxt{
    color: #323232;
    font-size: 1.6rem;
    line-height: 1;
    margin-top: 1rem;
}




/*nocontent*/
.nocontent{
text-align: center;
font-size: 2rem;
width: 100%;
color: #555;
padding: 150px 0 50px;
}


/*access*/
.photo__w{
width: 90%;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
margin: 0 auto 50px;
}

.photobox{
width: 48%;
margin: 0 0 40px 0;
}

.photobox_i{
width: 100%;
margin: 0 0 10px 0;
}

.photobox_i img{
width: 100%;
border-radius: 10px;
}

.photobox_t{
width: 100%;
font-size: 1.5rem;
text-align: center;
line-height: 1.3;
background: #f6f7f9;
padding: 10px 0 12px;
color: #1d63ab;
}

.photoboxh{
width: 100%;
margin: 0 0 50px 0;
text-align: center;
}

.photoboxh_t{
color: #222;
font-size: 2.5rem;
letter-spacing: .2rem;
font-weight: 700;

display: inline-block;
}

.photoboxh_t::after{
content: "";
display: block;
width: 40px;
height: 5px;
background: #3ca0cd;
border-radius: 3px;
margin: 0 auto;
}





/*自費診療*/
.subpage__w{
width: 100%;
background: #fff;
padding: 50px 0 80px 0;
}

.subpage__wi{
width: 100%;
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.subpage__wi h3{
width: 100%;
margin: 0 auto 0;
display: flex;
justify-content: center;
font-size: 3rem;

font-weight: 700;
letter-spacing: .3rem;
}

.subpage__wi h3 span{

}

.subpage__wi h3 span::after{
content: "";
display: block;
width: 40px;
height: 5px;
background: #3ca0cd;
border-radius: 3px;
margin: 0 auto;
}

.box{
width: 90%;
margin: 0 auto 70px;
border-radius: 20px;
background: #fbfbfb;
padding: 30px 40px 30px;
box-shadow: 10px 10px 15px #f1f1f1;
}

.box h4{
font-size: 2.6rem;

font-weight: 700;
letter-spacing: .1rem;
border-bottom: 1px solid #cecece;
color: #1e3348;
margin: 0 0 30px 0;
padding: 0 0 10px 0;
}

.box_memo{
width: 100%;
margin: 0 auto;
border-radius: 2px;
background: #fff;
padding: 20px 30px;
line-height: 2.2;
}

.txt_blue{
color: #26a2de;
}


.jihi_flow__w{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.jihi_flow_box{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0 30px 0;
}

.jihi_flow1_w{
width: 55%;
}

.jihi_flow1{
width: 100%;
font-size: 2.2rem;
color: #0d8bc3;
font-weight: 700;
margin: 0 0 5px 0;
}

.jihi_flow2{
width: 100%;
}

.jihi_flow3{
width: 40%;
}

.jihi_flow3 img{
width: 100%;
}

.item_h{
font-size: 2rem;
color: #077eb7;
margin: 0 0 30px 0;
}

.item_t{
margin: 0 0 40px 0;
}
/*自費診療*/








/*医師紹介*/

.doctor_name{
    font-size: 3.2rem;
    text-align: center;
    letter-spacing: .1rem;
    padding: 30px 0 30px;
    font-weight: bold;
    width: 100%;
    background: #f8f9f9;
    margin: 0 0 40px 0;
}

.doctor_photo{
width: 90%;
margin: 0 auto 70px;
}

.doctor_photo img{
width: 100%;
border-radius: 10px;
}


.profile__w{
width: 100%;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.profile1{
width: 100%;
display: flex;
justify-content: space-between;
margin: 0 0 8px 0;
align-items: center;
}

.profile2{
width: 20%;
background: #f5f5f5;
padding: 2px 0;
text-align: center;
color: #7d7d7d;
}

.profile3{
width: 77%;
}






/*price*/
.price_h{
font-size: 2.4rem;
color: #077eb7;
margin: 0 0 20px 0;
font-weight: 700;
}

.price_tbl{
width: 100%;
border: 1px solid #ccc;
font-size: 1.5rem;
margin: 0 0 50px 0;
}

.price_tbl th{
border: 1px solid #ccc;
vertical-align: middle;
padding: 10px 20px;
background: #f7f7f7;
font-size: 1.7rem;
color: #077eb7;
}

.price_tbl td{
border: 1px solid #ccc;
padding: 10px 20px;
vertical-align: middle;
}

.price1{
text-align: center;
font-size: 1.6rem;
background: #f7f7f7;
}

.price2{
font-size: 2.2rem;
font-weight: 700;
text-align: right;
color: #3ca0cd;
}

.price3{
font-size: 1.5rem;
line-height: 1.4;
font-weight: 400;
display: inline-block;
margin: 10px 0 0 0;
color: #333;
}

.price4{
color: #3ca0cd;
font-weight: 700;
}

.price5{
text-align: center;
font-size: 1.6rem;
background: #f7f7f7;
width: 40%;
}

.price6{
font-size: 2.2rem;
font-weight: 700;
text-align: right;
color: #3ca0cd;
}
/*price*/





/*hifu*/
.hifu1{
margin: 0 0 15px 0;
}

.hifu1 span{
    padding: 6px 25px;
    background: #3d9fe6;
    border-radius: 100px;
    color: #fff;
}

.qabox{
margin: 0 0 30px 0;
border-bottom: 1px dotted #ccc;
padding: 0 0 30px 0;
}

.qa1{
text-indent: -3.5rem;
padding-left: 3.5rem;
line-height: 1.6;
margin: 0 0 10px 0;
}

.qa1 span{
    font-weight: 700;
}

.qa1 span::before{
content: "";
background: url("../images/ic_q.svg");
display: inline-block;
width: 2.5rem;
height: 2.5rem;
vertical-align: middle;
margin: 0 10px 0 0;
}

.qa2{
text-indent: -3.5rem;
padding-left: 3.5rem;
line-height: 1.6;
}

.qa2 span{

}

.qa2 span::before{
content: "";
background: url("../images/ic_a.svg");
display: inline-block;
width: 2.5rem;
height: 2.5rem;
vertical-align: middle;
margin: 0 10px 0 0;
}



/*hifu*/






.medical1{
width: 90%;
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.medical2{
width: 100%;
border: 2px solid #005da8;
padding: 2rem 2rem;
text-align: center;
border-radius: 500px;
background: #f7f4fc;
color: #005da8;
margin: 0 0 2rem 0;
font-size: 3rem;
font-weight: 700;
}

.medical2:last-child{
margin: 0 0 0 0;
}

.medical3{
width: 80%;
padding: 2rem;
background: #fffee2;
text-align: center;
margin: 0 auto;
}

.medical3 span{
color: #e63e3e;
}



.reservation1{
width: 90%;
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.reservation2{
width: 100%;
margin: 0 0 5rem 0;
display: flex;
flex-wrap: wrap;
}

.reservation2a{
  width: 100%;
  text-align: center;
  font-size: 2rem;
  font-weight: 700;
  color: #660dff;
}

.reservation2b{
width: 100%;
text-align: center;
}

.reservation2:last-child{
margin: 0 0 0 0;
}

.reservation2 a {
    color: #323232;
    font-size: 5rem;
    font-weight: bold;
}

.reservation2 a span::before {
    content: "";
    background: url(../images/ic_tel.svg) no-repeat;
    width: 3.2rem;
    height: 3.2rem;
    display: inline-block;
    background-size: contain;
    margin: 0 8px 0 0;
    vertical-align: middle;
}

.reservation3{
width: 100%;
margin: 0 0 3rem 0;
}

.reservation3 a{
    font-size: 2.5rem;
    font-weight: 700;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background: #6600ff;
    border-radius: 5px;
    box-shadow: 5px 5px 8px #dccbf1;
    padding: 2rem 2rem;
    text-align: center;
    transition: .5s;
}

.reservation3 a:hover{
transform: translateY(-3px);
opacity: .8;
}

.reservation3:last-child{
margin: 0 0 0 0;
}




.teikei1{
width: 100%;
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.teikei1 a{
display: block;
width: 30%;
margin: 0 auto;
}

.teikei1 a img{
width: 100%;
}


/*calendar*/

.calendar1{
width: 90%;
margin: 0 auto;
}

.xo-event-calendar table.xo-month .month-header>span {
  display: inline-block;
  font-size: 2rem;
  line-height: 1.3;
  text-align: center;
  vertical-align: middle;
  padding: .5rem 2rem;
  background: #f5f5f5;
  color: #202020;
  margin: 1.5rem 0 .5rem 0;
}

.xo-event-calendar {
font-family: YakuHanJP_Narrow, 'Zen Kaku Gothic New', sans-serif;
  position: relative;
}

.xo-event-calendar p.holiday-title {
  font-size: 1.6rem;
  margin: 0;
  padding: 2px 0;
  vertical-align: middle;
}

.xo-event-calendar table.xo-month .month-dayname td div {
  border-width: 1px 1px 0 0;
  font-size: 1.7rem;
  height: 1000px;
  line-height: 1.2em;
  padding: 4px;
  text-align: right;
}

/*calendar*/



.topnews__w {
width: 100%;
margin-top: 170px;
}

.topnews1 {
    width: 100%;
    background: #fff;
    border: 2px solid #005da8;
    padding: 1rem;
}

.topnews1 iframe {
    width: 100%;
height: 30rem;
overflow-y: scroll;
}



.topnews2 {
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
border-bottom: 1px solid #ccc;
padding: 2rem 0;
}

.topnews2:last-child {
border-bottom: none;
}

.topnews3 {
width: 100%;
font-size: 2.5rem;
font-weight: 700;
}

.topnews4 {
width: 100%;
font-size: 1.7rem;
margin-top: .5rem
}


.about_shinsatsu__w{
width: 100%;
text-align: center;
margin: 5rem 0 3rem;
}
.about_shinsatsu1{
    display: inline-block;
    padding: 2.5rem 4rem;
    text-align: center;
    font-size: 2.7rem;
    background: #fff;
    border-radius: 5px;
		width: 800px;
		font-weight:600;
}

.about_shinsatsu1 span{
color: #1c78c3;
}













}



/* pc*/
























/*sp*/
@media all and (max-width:750px) {

body{
background: #e6eeff;
}


.header_flex{
display: flex;
width: 100%;
justify-content: space-between;
padding: 0 1rem;
}


.header_tel{
width: 6rem;
height: 6rem;
right: 2rem;
display: flex;
justify-content: center;
align-items: center;
}

.header_tel a{
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background: #32cd32;
    border-radius: 5px;
    box-shadow: 5px 5px 8px #c4ffc4;
}

.header_tel a span{
font-size: 1.2rem;
padding: 2vw 0 0 0;
}

.header_tel a span::before{
content: "";
background: url(../images/ic_tel_white.svg) no-repeat;
width: 4vw;
height: 4vw;
display: block;
margin: 0 auto .1rem;
}


.header_rsv{
width: 6rem;
height: 6rem;
right: 2rem;
display: flex;
justify-content: center;
align-items: center;
}

.header_rsv a{
    width: 100%;
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background: linear-gradient(135deg, #ff945f 0%, #ff681d 100%);
    border-radius: 5px;
    box-shadow: 5px 5px 8px #ffdac8;
}

.header_rsv a span{
font-size: 1.5rem;
}

.header_rsv a span::before{
background: url(../images/ic_calendar_white.svg) no-repeat;
width: 4vw;
height: 4vw;
display: block;
margin: 0 auto .1rem;
}

.headertelsptxt{
width: 100%;
text-align: center;
font-size: 1.3rem;
margin-top: 1rem;
}




/*　ハンバーガーボタン　*/
.hamburger {
display: block;
position: fixed;
z-index: 3;
right: 2vw;
top: 2vw;
width: 4.2rem;
height: 4.2rem;
cursor: pointer;
text-align: center;
margin: 0 1vw 0 0;
}
.hamburger span {

}
.hamburger span:nth-child(1) {
top: 2vw;
display : block;
position: absolute;
width: 10vw;
height: 2px;
background : #1489bd;
-webkit-transition: 0.3s ease-in-out;
-moz-transition   : 0.3s ease-in-out;
transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(2) {
top: 4vw;
display : block;
position: absolute;
width: 10vw;
height: 2px;
background : #1489bd;
-webkit-transition: 0.3s ease-in-out;
-moz-transition   : 0.3s ease-in-out;
transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(3) {
top: 6vw;
display : block;
position: absolute;
width: 10vw;
height: 2px;
background : #1489bd;
-webkit-transition: 0.3s ease-in-out;
-moz-transition   : 0.3s ease-in-out;
transition        : 0.3s ease-in-out;
}
.hamburger span:nth-child(4) {
top: 7vw;
display : block;
position: absolute;
width: 10vw;
height: 0.3vw;
-webkit-transition: 0.3s ease-in-out;
-moz-transition   : 0.3s ease-in-out;
transition        : 0.3s ease-in-out;
color: #1489bd;
font-size: 1.2rem;
text-align: center;
}

/* ナビ開いてる時のボタン */
.hamburger.active span:nth-child(1) {
top: 4vw;
left: 0;
-webkit-transform: rotate(-45deg);
-moz-transform   : rotate(-45deg);
transform        : rotate(-45deg);
background : #1489bd;

}

.hamburger.active span:nth-child(2),
.hamburger.active span:nth-child(3) {
top: 4vw;
-webkit-transform: rotate(45deg);
-moz-transform   : rotate(45deg);
transform        : rotate(45deg);
background : #1489bd;

}

.hamburger.active span:nth-child(4) {
color : #1489bd;
}


nav.globalMenuSp {
position: fixed;
z-index : 2;
top  : 0;
left : 0;
color: #000;
background: #1489bd;
text-align: center;
transform: translateX(100%);
transition: all 0.6s;
width: 100%;
}

nav.globalMenuSp ul {
background: #fbfbfb;
margin: 0 auto;
padding: 0;
width: 100%;
}

nav.globalMenuSp ul li {
list-style-type: none;
padding: 0;
width: 100%;
border-bottom: 1px solid #d6d6d6;
}
nav.globalMenuSp ul li:last-child {
padding-bottom: 0;
border-bottom: none;
}
nav.globalMenuSp ul li:hover{
background :#0579ads;
}

nav.globalMenuSp ul li a {
display: flex;
color: #1489bd;
text-decoration: none;
height: 16vw;
justify-content: center;
align-items: center;
}

/* このクラスを、jQueryで付与・削除する */
nav.globalMenuSp.active {
transform: translateX(0%);
}

.mainimage{
width: 100%;
margin: 17vw 0 0 0;
}

.mainimage img{
width: 100%;
}



.subnav__w{
width: 100%;
background: #3ca0cd;
padding: 7vw 0 5vw 0;
}

.subnavbox{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0 2vw 0;
box-shadow: 1px 3px 2px #ececec;
}



.subnav{
width: 95%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 auto;
}

.subnavbox{
width: 31%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0 3vw 0;
box-shadow: 5px 5px 20px #0873a2;
background: #fff;
padding: 3vw 0 2vw 0;
border-radius: 10px;
}

.subnavbox span{
width: 100%;
text-align: center;
font-size: 1.5rem;
letter-spacing: .05rem;
}

.subnavbox span::before{

}

.subnavbox span.subnavbox1::before{
content: "";
background: url(../images/nav1.svg) no-repeat;
display: block;
width: 10vw;
height: 10vw;
margin: 0 auto 1vw;
}

.subnavbox span.subnavbox2::before{
content: "";
background: url(../images/nav2.svg) no-repeat;
display: block;
width: 10vw;
height: 10vw;
margin: 0 auto 1vw;
}

.subnavbox span.subnavbox3::before{
content: "";
background: url(../images/nav3.svg) no-repeat;
display: block;
width: 10vw;
height: 10vw;
margin: 0 auto 1vw;
}

.subnavbox span.subnavbox4::before{
content: "";
background: url(../images/nav4.svg) no-repeat;
display: block;
width: 10vw;
height: 10vw;
margin: 0 auto 1vw;
}

.subnavbox span.subnavbox5::before{
content: "";
background: url(../images/nav5.svg) no-repeat;
display: block;
width: 10vw;
height: 10vw;
margin: 0 auto 1vw;
}

.subnavbox span.subnavbox6::before{
content: "";
background: url(../images/nav6.svg) no-repeat;
display: block;
width: 10vw;
height: 10vw;
margin: 0 auto 1vw;
}










































/*common*/

.anchor{
display: block;
padding-top: 11vh;
margin-top: -11vh;
margin-bottom: 12vw;
}




/*<!--header-->*/
header{
display: flex;
justify-content: space-between;
width: 100%;
}

.header_logo{
    text-align: center;
    width: calc(100vw - 20rem);
    margin-right: 2rem;
}

.header_logo img{
    display: inline-block;
    max-height: 7rem;
}

.header_nav{
width: 14vw;
}


nav.NavMenu{
position: fixed;
z-index: 2;
top: 0;
left: 0;
background: #f7f9f9;
color: #000;
text-align: center;
width: 100%;
transform: translateY(-100%);
transition: all 0.7s;
padding: 3vh 0 3vh 0;
}

nav.NavMenu ul{
width: 100%;
margin: 0 auto;
padding: 0;
}

nav.NavMenu ul li{
font-size: 1.8rem;
list-style-type: none;
padding: 0;
width: 100%;
line-height: 1.3;
letter-spacing: .2rem;
}

nav.NavMenu ul li:last-child{
padding-bottom: 0;
border-bottom: none;	/*最後のメニュー項目のみ下線を消す*/
}

nav.NavMenu ul li a{
display: inline-block;		/*クリックできる領域を広げる*/
padding: 1rem 0;
transition: .4s;
}

nav.NavMenu ul li a:link,
nav.NavMenu ul li a:visited{
color: #323335;
}

nav.NavMenu ul li a:hover,
nav.NavMenu ul li a:active{
color: #1489bd;
transform: translate(0,-2px);
}

nav.NavMenu ul li.nav_tel{
font-size: 2.5rem;
font-weight: bold;
padding: 0 0 5vw 0;
}

nav.NavMenu ul li.nav_tel span{
color: #323335;
}

nav.NavMenu ul li.nav_tel span::before{
content: "";
background: url("../images/ic_tel.svg") no-repeat;
width: 30px;
height: 30px;
display: inline-block;
background-size: contain;
vertical-align: middle;
margin: 0 2vw 0 0;
}

nav.NavMenu ul li.nav_teltime{
font-size: 1.3rem;
padding: 0 0 30px 0;
font-weight: normal;
}

nav.NavMenu ul li.nav_free{
width: 100%;
text-align: center;
padding: 30px 0 0 0;
}

nav.NavMenu ul li.nav_free span{
display: inline-block;
background: #fdf7e7;
border-radius: 100px;
text-align: center;
padding: 3vw 8vw;
color: #1489bd;
letter-spacing: .1rem;
font-size: 1.6rem;
margin: 0 0 3vw 0;
}

nav.NavMenu ul li.nav_rsv{
margin: 0 0 5vw 0;
}

nav.NavMenu ul li.nav_rsv a{
display: inline-block;
border-radius: 5px;
text-align: center;
padding: 3vw 5vw;
transition: .6s;
position: relative;
font-size: 1.6rem;
letter-spacing: 0.01rem;
background: linear-gradient(135deg, #f8a23f 0%,#f76b1c 100%);
color: #ffffff;
box-shadow: 0px 0px 5px 0px #d2e5f7;
}

nav.NavMenu ul li.nav_rsv a:active,
nav.NavMenu ul li.nav_rsv a:hover{
transform: translate(0,-3px);
opacity: .9;
}

nav.NavMenu ul li.nav_rsv span::before{
content: "";
background: url("../images/ic_calendar.svg") no-repeat;
width: 30px;
height: 30px;
display: inline-block;
background-size: contain;
vertical-align: middle;
margin: 0 2vw 0 0;
}

nav.NavMenu.active{
transform: translateY(0%);		/*ナビを表示する*/
height: 100vh;
overflow-y: auto;
}

.Toggle {
display: block;
position: fixed;
top: 0.5rem;
right: 3.5vw;
width: 10vw;
cursor: pointer;
z-index: 3;
height: 5rem;
}

.Toggle span {
display: block;
position: absolute;
width: 10vw;
border-top: solid 1px #000;
-webkit-transition: .35s ease-in-out;	/*変化の速度を指定*/
-moz-transition: .35s ease-in-out;		/*変化の速度を指定*/
transition: .35s ease-in-out;			/*変化の速度を指定*/
}

.Toggle span:nth-child(1) {
top: 1rem;
}

.Toggle span:nth-child(2) {
top: 2.2rem;
}

.Toggle span:nth-child(3) {
top: 3.4rem;
}

/* 最初のspanをマイナス45度に */
.Toggle.active span:nth-child(1) {
top: 5vw;
left: 0;
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
transform: rotate(-45deg);
}

/* 2番目と3番目のspanを45度に */
.Toggle.active span:nth-child(2),
.Toggle.active span:nth-child(3) {
top: 5vw;
-webkit-transform: rotate(45deg);
-moz-transform: rotate(45deg);
transform: rotate(45deg);
}
















/*<!--mainimage-->*/
.mainimg_w{
position:relative;
height: 70vh;
background-position: 80% 0% !important;
background-size: cover !important;
text-align: center;
}

.slick_box{
background: #fff;
width: 90vw;
padding: 5vw 5vw 7vw;
display: flex;
flex-wrap: wrap;
justify-content: center;
margin: -10vh auto 3vh;
box-shadow: 0px 0px 10px 0px #00000014;
border-radius: 3px;
}

.slick_box0{
width: 100%;
text-align: center;
padding: 0 0 4vw 0;
letter-spacing: .1rem;
font-size: 1.5rem;
color: #484542;
}

.slick_box0 span{
font-size: 1.8rem;
color: #ffa37c;
font-weight: bold;
}

.slick_box0 span.header_subject{
color: #484542;
font-size: 1.7rem;
font-weight: bold;
}

.slick_box1{
width: 100%;
text-align: center;
padding: 0 0 4vw 0;
letter-spacing: .1rem;
font-size: 1.5rem;
}

.slick_box2{
padding: 0 0 2vw 0;
}

.slick_box2 img{
width: 100%;
}

.slick_box3{
width: 100%;
padding: 0 0 6vw 0;
font-size: 1.3rem;
text-align: center;
}

.slick_box3 span{
color: #3fb7c3;
}

.slick_box4{
width: 100%;
text-align: center;
padding: 0 0 3vw 0;
letter-spacing: .1rem;
font-size: 1.5rem;
}

.slick_box5{
width: 100%;
font-size: 2.5rem;
font-weight: bold;
text-align: center;
padding: 0 0 3vw 0;
line-height: 1;
letter-spacing: .2rem;
}

.slick_box5 span::before{
content: "";
background: url("../images/ic_tel.svg") no-repeat;
width: 2.5rem;
height: 2.5rem;
display: inline-block;
background-size: contain;
margin: 0 5px 0 0;
vertical-align: bottom;
}

.slick_box6{
padding: 0 0 4vw 0;
}

.slick_box7{
width: 100%;
}

.slick_box7 a{
display: block;
background: #3e88c9;
color: #fff;
text-align: center;
border-radius: 3px;
padding: 1vw 1vw;
font-size: 1.2rem;
transition: .3s;
box-shadow: 0px 0px 10px 0px #00000014;
width: 30vw;
margin: 0 auto;
}

.slick_box7 a:hover,
.slick_box7 a:active{
transform: translate(0,-2px);
opacity: .9;
box-shadow: 0px 0px 10px 0px #00000014;
}


.mainimage_t{
color: #1489bd;
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;
}














/*<!--news-->*/
.news__w{
    width: 100%;
    background: #fdfcf9;
        margin: 20vw 0 0 0;
}

.news__wi{
width: 100%;
margin: 0 auto;
padding: 10vw 0 10vw;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
background: #f9f4ff;
}

.news__w h2{
font-size: 3rem;
letter-spacing: 0.2rem;
text-align: center;
margin: 0 auto;
font-weight: bold;
}

.news__w h2 span{
  display: inline-block;
  margin: 0 auto;
  line-height: 1.4;
  color: #5313b3;
}

.news_kiji__w{
width: 100%;
border-top: 1px solid #e8e8e8;
}

.kiji__w{
border-bottom: 1px solid #e8e8e8;
padding: 5vw 4vw;
display: flex;
flex-wrap: wrap;
width: 100%;
justify-content: space-between;
align-items: center;
}

.kiji_d{
font-size: 1.1rem;
color: #797979;
display: inline-block;
width: 100%;
margin: 0 0 1vw 0;
}

.kiji_h{
font-size: 1.6rem;
display: inline-block;
width: 100%;
color: #1489bd;
margin: 0 0 1vw 0;
}

.kiji_t{
width: 100%;

}







/*<!--feature-->*/
.feature__w{
width: 100%;
background: #fff;
padding: 0 0 3vw 0;
}

.feature__wi{
width: 100%;
margin: 0 auto;
}

.feature1_box{
position: relative;
}

.feature1_i{
width: 100%;
}

.feature1_i img{
width: 100%;
}

.feature1_bg{
background: rgba(255,255,255,0.9);
padding: 6vw 5vw 10vw;
}

.feature1_hh{
color: #1489bd;
font-size: 3rem;
line-height: 2;
letter-spacing: 0.25rem;
text-align: center;
font-weight: 700;

}

.feature1_h{
padding: 2vw 0 0;
color: #3c3c3d;
font-size: 1.4rem;
letter-spacing: .05rem;
line-height: 1.6;
}

.feature1_t{
padding: 4vw 0 0;
line-height: 1.6;
color: #3c3c3d;

}

.feature2_box{
position: relative;
}

.feature2_i{
right: 0;
width: 100%;
background: rgba(255,255,255,0.9);
}

.feature2_i img{
width: 100%;
}

.feature2_bg{
background: rgba(255,255,255,0.9);
padding: 6vw 5vw 10vw;
}

.feature2_hh{
color: #1489bd;
font-size: 3rem;
line-height: 2;
letter-spacing: 0.25rem;
text-align: center;
font-weight: 700;

}

.feature2_h{
padding: 2vw 0 0;
color: #3c3c3d;
font-size: 1.4rem;
letter-spacing: .05rem;
line-height: 1.6;
}

.feature2_t{
padding: 4vw 0 0;
line-height: 1.6;
color: #3c3c3d;

}

.feature3_box{
position: relative;
}

.feature3_i{
width: 100%;
}

.feature3_i img{
width: 100%;
}

.feature3_bg{
background: rgba(255,255,255,0.9);
padding: 6vw 5vw 12vw;
}

.feature3_hh{
color: #1489bd;
font-size: 2.8rem;
line-height: 2;
letter-spacing: 0.15rem;
text-align: center;
}

.feature3_h{
padding: 2vw 0 0;
color: #3c3c3d;
font-size: 1.4rem;
letter-spacing: .2rem;
line-height: 1.6;
}

.feature3_t{
padding: 4vw 0 0;
line-height: 1.6;
color: #3c3c3d;

}


.feature4_box{
position: relative;
margin-bottom: 8vw;
}

.feature4_i{
width: 100%;
}

.feature4_i img{
width: 100%;
}

.feature4_bg{
background: rgba(255,255,255,0.9);
padding: 4vw 5vw 5vw;
}

.feature4_hh{
color: #309dca;
font-size: 2.2rem;
line-height: 2;
letter-spacing: 0.3rem;
}

.feature4_h{
padding: 2vw 0 0;
color: #3c3c3d;
font-size: 1.7rem;
letter-spacing: .2rem;
line-height: 1.6;
}

.feature4_t{
padding: 4vw 0 0;
line-height: 1.6;
color: #3c3c3d;

}












/*<!--medical-->*/
.medical__w{
width: 100%;
background: #3ac7a6;
}

.medical__wi{
width: 100%;
margin: 0 auto;
padding: 10vw 0 5vw;
}

.medical__w h2{
font-size: 2rem;
letter-spacing: 0.2rem;
text-align: center;
margin: 0 auto 6vw;
}

.medical__w h2 span{
display: inline-block;
margin: 0 auto;
color: #fff;

}

.medical__w h2 span::before{
content: "";
background: url(../images/logo-s.svg) no-repeat;
display: block;
width: 10vw;
height: 10vw;
margin: 0 auto 2vw;
background-size: cover;
}

.medical__w h2 span::after{
content: "medical";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;

}

.medical_nav__w{
padding: 4vw 0 0 0;
}

.medical_nav__w ul{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
padding: 0 4vw;
}

.medical_nav__w ul li{
width: 48%;
text-align: center;
margin: 0 0 2vw 0;
}

.medical_nav__w ul li a{
width: 100%;
background: #fff;
border-radius: 10px;
display: block;
box-shadow: 0px 0px 5px 0px #f3edde;
padding: 5vw 0;
transition: .3s;
margin: 0 0 2vw 0;
}

.medical_nav__w ul li a:hover{
transform: translate(0,-3px);
background: #ffffff;

}

.mdnav1{
}

.medical_nav__w ul li a span{

color: #1489bd;
font-size: 1.6rem;
letter-spacing: .1rem;
}

.medical_nav__w ul li a span::before{
content: "";
width: 15vw;
height: 15vw;
display: block;
background-size: cover;
margin: 0 auto 4vw;
}

.mdnav1 a span::before{
background: url(../images/ic-medical01.svg) no-repeat center;
} 

.mdnav2 a span::before{
background: url(../images/ic-medical02.svg) no-repeat center;
} 

.mdnav3 a span::before{
background: url(../images/ic-medical03.svg) no-repeat center;
} 

.mdnav4 a span::before{
background: url(../images/ic-medical04.svg) no-repeat center;
} 

.mdnav5 a span::before{
background: url(../images/ic-medical05.svg) no-repeat center;
} 

.mdnav6 a span::before{
background: url(../images/ic-medical06.svg) no-repeat center;
} 

.mdnav7 a span::before{
background: url(../images/ic-medical07.svg) no-repeat center;
} 

.mdnav8 a span::before{
background: url(../images/ic-medical08.svg) no-repeat center;
} 

.mdnav9 a span::before{
background: url(../images/ic-medical09.svg) no-repeat center;
} 

.mdnav10 a span::before{
background: url(../images/ic-medical10.svg) no-repeat center;
} 




















/*<!--doctor-->*/
.doctor__w{
width: 90%;
background: #f9f4ff;
padding: 4rem 0;
margin: 0 auto;
}

.doctor__wi{
width: 100%;
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.doctor_i{
width: 80%;
margin: 10vw auto 0;
}

.doctor_i img {
width: 100%;
border-radius: 10px;
}

.doctor_t{
width: 100%;
}

.doctor_t1{
font-size: 2rem;
text-align: center;
letter-spacing: .2rem;
padding: 10vw 0 3vw;
font-weight: 700;
color: #2896c7;
}

.doctor_t2{
font-size: 1.8rem;
text-align: center;
letter-spacing: .1rem;
font-weight: bold;
}

.doctor_t3{
line-height: 2;
padding: 0 4vw 6vw 4vw;
letter-spacing: .05rem;
}

.doctor_btn{
text-align: center;
}

.doctor_btn a{
display: inline-block;
border-radius: 5px;
text-align: center;
padding: 3vw 10vw;
transition: .6s;
position: relative;
font-size: 1.3rem;
letter-spacing: 0.01rem;
background: linear-gradient(135deg, rgba(89,141,223,1) 0%, rgba(28,80,161,1) 100%);
color: #ffffff;
box-shadow: 0px 3px 3px 0px #e4e4e4;
}

.doctor_btn a:active,
.doctor_btn a:hover{
transform: translate(0,-3px);
}

.doctor_btn span::before{
content: "";
position: absolute;
left: 20px;
font-size: 1rem !important;
top: 50%;
transform: translateY(-50%) translateX(-50%);
margin: auto;
color: #aedce0;
}





/*<!-.recruit-->*/
.recruit__w{
width: 90%;
background: #fff;
padding: 4rem 0 ;
margin: 0 auto;
}

.recruit__wi{
width: 100%;
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.recruit1{
width: 100%;
}

.recruit1 table{
width: 95%;
margin: 0 auto;
border: 1px solid #000;
background: #fff;
}

.recruit1 th{
    width: 35%;
    border: 1px solid #5a5a5a;
    padding: .5rem;
    vertical-align: middle;
    background: #f6f6f6 ;
}

.recruit1 td{
width: 65%;
border: 1px solid #5a5a5a;
padding: 1.5rem;
}






/*<!--loopslide-->*/
.loopslide{
padding: 12vw 0;
background: #f7f5ec;
}

.simply-scroll-container {
position: relative;
}

.simply-scroll-clip {
position: relative;
overflow: hidden;
}

.simply-scroll-list {
overflow: hidden;
margin: 0;
padding: 0;
}

.simply-scroll-list li {
float: left; /* Horizontal scroll only */
padding: 0;
margin: 0;
width: 80vw;
}

.simply-scroll-list li img {
display: block;
width: 100%;
}















/*<!--common clinic-->*/
.clinic__w{
width: 100%;
margin: 0 auto;
display: flex;
justify-content: space-between;
padding: 4rem 0 0;
flex-wrap: wrap;
background: #f9f4ff;
}

.clinic_box1{
width: 100%;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.clinic_box2{
width: 100%;
margin: 0 0 15vw 0;
}

.clinic1{
width: 100%;
text-align: center;
padding: 0 0 5vw 0;
}

.clinic1 img{
width: 60%;
display: inline-block;
}

.clinic2{
width: 100%;
font-size: 1.4rem;
line-height: 2;
text-align: center;
padding: 0 0 5vw;
}

.clinic2 span{
font-size: 2.8rem;
color: #ffa37c;
font-weight: bold;
}

.clinic3{
width: 100%;
font-size: 1.6rem;
padding: 0 3vw 0;
text-align: center;
}

.clinic4{
width: 100%;
font-size: 2.8rem;
font-weight: bold;
text-align: center;
line-height: 1;
padding: 0 0 12vw;
}

.clinic4 a span{
color: #323232;
}

.clinic4 span::before{
    content: "";
    background: url("../images/ic_tel.svg") no-repeat;
    width: 2.2rem;
    height: 2.2rem;
    display: inline-block;
    background-size: contain;
    margin: 0 .5rem 0 0;
    vertical-align: middle;
}

.clinic5{
width: 100%;
padding: 5vw 0 12vw;
text-align: center;
}

.clinic5 a{
display: inline-block;
border-radius: 5px;
text-align: center;
padding: 3vw 8vw;
transition: .6s;
position: relative;
font-size: 1.3rem;
letter-spacing: 0.01rem;
background: #ef799c;
background-image: linear-gradient(180deg, #fe7bb0 0%, #ff689c 74%);
color: #fff;
box-shadow: 0px 3px 3px 0px #e4e4e4;
}

.clinic5 a:active,
.clinic5 a:hover{
transform: translate(0,-3px);
}

.clinic5 span::before{

}

.clinic6{
width: 100%;
padding: 0 4vw 2vw 4vw;
text-align: center;
}

.clinic6 img{
width: 100%;
}

.clinic6 span{
display: inline-block;
background: #ff774e;
border-radius: 100px;
text-align: center;
padding: 1vw 5vw;
color: #fff;
letter-spacing: .2rem;
}

.clinic7{
padding: 0 4vw 0 4vw;
font-size: 1.4rem;
width: 100%;
}

.clinic7 span{
color: #ec1b1b;
}

.clinic8{
width: 90%;
text-align: center;
margin: 0 auto 8vw;
}

.clinic8 span{
}

.clinic8 iframe{
width: 100%;
height: 50vh;
margin: 0 auto;
}

.clinic9{
width: 90%;
margin: 0 auto 12vw;
}

.clinic9 img{
    width: 100%;
    border: 3px solid #005da8;
    border-radius: 10px;
    box-sizing: content-box;
}














/*<!--footer-->*/
.footer__w{
width: 100%;
background: #6600ff;
position: relative;
}

.footer__wi{
background-size: contain;
width: 100%;
margin: 0 auto;
position: relative;
}

.footer__w p{
font-size: 1.1rem;
text-align: center;
color: #fff;
padding: 2vw 0 2vw 0;
}














/*<!--breadcrumb-->*/
.bc__ww{
margin: 6rem auto 0;
}

.bc__w{
width: 100%;
padding: 2vw 4vw;
font-size: 1.3rem;
background: #f8f9f9;
margin: 0 0 0 0;
}

.bc__w ol{
padding: 0;
}

.bc__w ol li{
list-style:none;
display:inline;
}

.bc__w ol li a:link,
.bc__w ol li a:visited{
color:#0068b7 !important;
}

.bc__w ol li a:hover,
.bc__w ol li a:active{
color:#0068b7 !important;
}

.bc__w ol li:last-of-type a{
color:#333 !important;
}

















/*<!--information-->*/
.info__w{
margin: 0 auto;
padding: 0 5vw;
}

.info_box{
width: 100%;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.info_box1{
margin: 0 0 8vw;
order: 1;
width: 100%;
}

.info_box1 h3{
font-weight: bold;
font-size: 1.6rem;
border: 1px solid #a1cbd6;
padding: 2vw 3vw;
color: #45a8c1;
display: block;
letter-spacing: .2rem;
text-align: center;
margin: 0 0 3vw 0;
}


.info_box1 h4{
font-weight: bold;
font-size: 1.5rem;
padding-top: 8rem;
margin-top: -8rem;
}

.info_box1 h4::before{
font-weight: bold;
content: "■";
font-size: 1.5rem;
display: inline-block;
margin: 0 1vw 0 0;
color: #45a8c1;
}









.info_box1 p{

}

.info_box2{
width: 50%;
order: 3;
margin: 0 auto 3vw;
}

.info_box2 img{
width: 100%;
}
























/*<!--subdoctor-->*/
.subdoctor__w{
width: 100%;
background: #f8fbfb;
}

.subdoctor__wi{
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.subdoctor_i{
width: 80%;
margin: 0 auto;
}

.subdoctor_i img{
width: 100%;
border-radius: 10px;
}

.subdoctor_t{
width: 100%;
}

.subdoctor_t1{
font-size: 2.2rem;
text-align: center;
letter-spacing: .2rem;
color: #1489bd;
}

.subdoctor_t2{
font-size: 1.6rem;
text-align: center;
letter-spacing: .1rem;
padding: 0 0 7vw;
}

.subdoctor_t3{
line-height: 2;
padding: 2vw 6vw 10vw;
font-size: 1.4rem;
}

.subdoctor_t4{
}












/*<!--doctorhistory-->*/
.doctorhistory__w{
width: 100%;
background: #fff;
padding: 10vw 0 10vw;
}

.doctorhistory_box{
width: 100%;
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.doctorhistory_box1{
width: 90%;
padding: 4vw 4vw;
background: #f9f9f9;
margin: 0 auto 5vw;
}

.doctorhistory_box1 h3{
font-weight: bold;
font-size: 1.6rem;
margin: 0 0 1vw 0;
}

.doctorhistory_box1 p{
line-height: 2.5;
}

.doctorhistory_box2{
width: 90%;
padding: 4vw 4vw;
background: #f9f9f9;
margin: 0 auto 5vw;

}

.doctorhistory_box2 h3{
font-weight: bold;
font-size: 1.6rem;
margin: 0 0 1vw 0;
}

.doctorhistory_box2 p{
line-height: 2.5;
}

.subdoctor_name{
text-align: center;
padding: 10vw 0 10vw;
font-size: 1.8rem;
background: #f9f9f9;
margin: 0 0 5vw 0;
}













/*<!--sub gallery-->*/
.sub_gallery__w{
}

.sub_gallery_box__w{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 100%;
padding: 0 1vw;
}

.sub_gallery_box{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 49%;
margin: 0 0 5vw 0;
flex-direction: column;
background: #fafafa;
}

.sub_gallery_box1{
width: 100%;
}

.sub_gallery_box1 img{
width: 100%;
}

.sub_gallery_box2{
width: 100%;
font-size: 1.4rem;
padding: 2vw 0 2vw 0;
background: #fafafa;
display: flex;
flex-wrap: wrap;
margin-bottom: auto;
}

.gallery_h{
font-size: 1.6rem;
text-align: center;
display: inline-block;
width: 100%;
justify-content: center;
color: #000;
padding: 0 2vw 0;
}

.gallery_t{
font-size: 1.5rem;
display: flex;
width: 100%;
padding: 2vw 3vw 2vw;
}

.gallery_nobox{
background: #fff !important;
}





header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2;
    background: #fff;
    transition: .3s;
    align-items: center;
    padding: 1rem 0 1rem;
    box-shadow: 0px 0px 5px 0px #eaeaea;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    height: 13rem;
}






/*<!--subpage h1-->*/
.subtitle__w{
margin: 0 auto 8vw;
width: 100%;
padding: 5vh 0 5vh 0;
}

.subtitle__w h1{
font-size: 2.2rem;
letter-spacing: 0.2rem;
text-align: center;
margin: 0 auto;
color: #fff;
}

.subtitle__w h1 span{
display: inline-block;
margin: 0 auto;
}

.h_information{
background: url("../images/subtitle_bg1.jpg") no-repeat;
background-size: cover;
}

.h_information h1 span::after{
content: "information";
display: block;
font-size: 1.3rem;
letter-spacing: .2rem;
line-height: 1;
}

.h_doctor{
background: url("../images/subtitle_bg2.jpg") no-repeat;
background-size: cover;
}

.h_doctor h1 span::after{
content: "doctor";
display: block;
font-size: 1.3rem;
letter-spacing: .2rem;
line-height: 1;
}

.h_facilities{
background: url("../images/subtitle_bg4.jpg") no-repeat;
background-size: cover;
}

.h_facilities h1 span::after{
content: "facilities";
display: block;
font-size: 1.3rem;
letter-spacing: .2rem;
line-height: 1;
}

.h_faq{
background: url("../images/subtitle_bg4.jpg") no-repeat;
background-size: cover;
}

.h_faq h1 span::after{
content: "faq";
display: block;
font-size: 1.3rem;
letter-spacing: .2rem;
line-height: 1;
}

.h_access{
background: url("../images/subtitle_bg6.jpg") no-repeat;
background-size: cover;
}

.h_access h1 span::after{
content: "access";
display: block;
font-size: 1.3rem;
letter-spacing: .2rem;
line-height: 1;
}

.h_contract{
background: url("../images/subtitle_bg3.jpg") no-repeat;
background-size: cover;
}

.h_contract h1 span::after{
content: "contract";
display: block;
font-size: 1.3rem;
letter-spacing: .2rem;
line-height: 1;
}

.h_medicalcare{
background: url("../images/subtitle_bg3.jpg") no-repeat;
background-size: cover;
}

.h_medicalcare h1 span::after{
content: "medical care";
display: block;
font-size: 1.3rem;
letter-spacing: .2rem;
line-height: 1;
}

.h_reservation{
background: url("../images/subtitle_bg5.jpg") no-repeat;
background-size: cover;
}

.h_reservation h1 span::after{
content: "reservation";
display: block;
font-size: 1.3rem;
letter-spacing: .2rem;
line-height: 1;
}





/*<!--subpage h2-->*/






.subtitle_h2{
text-align: center;
}


.subtitle_h2 h2{
color: #222;
letter-spacing: .2rem;
font-size: 2rem;
display: inline-block;
font-weight: bold;
}



.subtitle_h2 h2 span{

}
.subtitle_h2 h2 span::after{
content: "";
border-bottom: solid 4px #1489bd;
width: 30px;
display: block;
margin: 1vw auto 0;
}











/*parts*/
.footer_border{
border: solid 2vh #f5f5f5;
}


























.s_01 .accordion_one .accordion_header:hover {
opacity: .8;
}

.s_01 .accordion_one .accordion_header .i_box .one_i {
display: block;
width: 18px;
height: 18px;
transform-origin: center center;
transition-duration: 0.2s;
position: relative;
}
.s_01 .accordion_one .accordion_header.open .i_box {
}
.s_01 .accordion_one .accordion_header .i_box .one_i:before, .s_01 .accordion_one .accordion_header .i_box .one_i:after {
display: flex;
content: '';
background-color: #fff;
border-radius: 10px;
width: 14px;
height: 2px;
position: absolute;
top: 8px;
left: 2px;
transform-origin: center center;
}
.s_01 .accordion_one .accordion_header .i_box .one_i:before {
width: 2px;
height: 14px;
top: 2px;
left: 8px;
}
.s_01 .accordion_one .accordion_header.open .i_box .one_i:before {
content: none;
}
.s_01 .accordion_one .accordion_header.open .i_box .one_i:after {
}
.s_01 .accordion_one .accordion_inner {
display: none;
border-left: 1px solid #e1f0f3;
border-right: 1px solid #e1f0f3;
border-bottom: 1px solid #e1f0f3;
box-sizing: border-box;
background: #fff;
position: relative;
padding: 1.5rem 6rem 1.5rem 5rem;
}

.s_01 .accordion_one .accordion_inner .box_one {
}
.s_01 .accordion_one .accordion_inner p.txt_a_ac {
margin: 0;
}

.s_01 .accordion_one .accordion_header .i_box {
width: 30px;
height: 30px;
margin-top: -15px;
}
.s_01 .accordion_one {
max-width: 1200px;
margin: 0 auto 15px;
}
.txt_a_ac::before{
position: absolute;
content: "A";
font-size: 2.2rem;
left: 4vw;
top: 0.9rem;
color: #ffbe6e;
font-weight: bold;
}
.s_01 .accordion_one .accordion_header .i_box {
display: flex;
justify-content: center;
align-items: center;
position: absolute;
top: 55%;
right: 3%;
width: 30px;
height: 30px;
border: 1px solid #fff;
margin-top: -20px;
box-sizing: border-box;
transform-origin: center center;
transition-duration: 0.2s;
background: #3e88c9;
border-radius: 100px;
}
.s_01 .accordion_one .accordion_header {
background-color: #ffffff;
font-size: 1.5rem;
padding: 1.5rem 6rem 1.5rem 5rem;
position: relative;
z-index: +1;
cursor: pointer;
transition-duration: 0.2s;
border: 1px solid #e1f0f3;
}

.s_01 .accordion_one .accordion_header::before{
position: absolute;
content: "Q";
font-size: 2.2rem;
left: 4vw;
top: 0.9rem;
color: #3e88c9;
}

.s_01 {
padding: 0 0 10vw 0;
}

.qa_link_btn{
display: block;
border: solid 2px #d7cbb6;
width: 30%;
padding: 5px;
text-align: center;
margin: 10px 0;
text-decoration: none !important;
color: #bf9c6f !important;
font-weight: bold;
}

.qa_link_btn span{
display: block;
width: 100%;
position: relative;
}

.qa_link_btn span::after{
content: "\0bb";
position: absolute;
right: 10px;
}




/*<!--アクセス-->*/
.access__w{
width: 100%;
margin: 0 auto;
padding: 0 5vw;
}

.submap_box{

}

.submap_gmap{
width: 100%;
height: 70vw;

}

.submap_gmap iframe{
width: 100%;
height: 70vw;

}

.submap_link{
text-align: center;

}

.submap_link a{
display: inline-block;
border-radius: 5px;
text-align: center;
padding: 3vw 10vw;
transition: .6s;
position: relative;
font-size: 1.4rem;
letter-spacing: 0.01rem;
background: #1489bd;
color: #fff;
box-shadow: 0px 3px 3px 0px #e4e4e4;
}

.submap_link a:active, .submap_link a:hover {
transform: translate(0,-2px);
opacity: .9;
box-shadow: 0px 3px 3px 0px #e4e4e4;
}

.submap_link span::before {
content: "";
position: absolute;
left: 20px;
font-size: 1rem !important;
top: 50%;
transform: translateY(-50%) translateX(-50%);
margin: auto;
color: #aedce0;
}


.submap_traffic{
padding: 4vw;
border: .5rem solid #f2f2f2;
margin: 5vw 0 10vw;
}

.submap_traffic_address{
font-size: 1.4rem;
margin: 0 0 6vw 0;
}

.submap_traffic_box{

}

.submap_traffic_box1{
font-size: 1.7rem;
color: #1489bd;

}

.submap_traffic_box2{
margin: 0 0 6vw 0;
font-size: 1.4rem;
}

.submap_traffic_box:last-child .submap_traffic_box2{
margin: 0;
}

.submap_route{
display: flex;
flex-wrap: wrap;
width: 100%;
justify-content: space-between;

}

.submap_route_box{
width: 100%;
}

.submap_route_box1{
width: 100%;
}


.submap_route_box:after{
content: "\025bc";
color: #43b4cd;
text-align: center;
width: 100%;
display: inline-block;
margin: 10vw 0;
}

.submap_route_box:last-child:after{
content: "";
}


.submap_route_box1 img{
width: 100%;
}


.submap_route_box2{
display: flex;
justify-content: space-between;
width: 100%;
font-size: 1.6rem;
align-items: center;
padding: 5vw 0 0 0;
}

.route_number{
display: inline-block;
padding: .5rem 0;
background: #e9fafc;
color: #3e88c9;
font-weight: bold;
font-size: 1.5rem;
width: 10%;
text-align: center;
}

.route_txt{
display: inline-block;
width: 90%;
padding: 0 0 0 4vw;
line-height: 1.5;
font-size: 1.4rem;

}










.footer_sitemap__w{
margin: 0 0 20vw 0;
}

.footer_sitemap__w ul{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 90vw;
margin: 0 auto;
text-align: center;
}

.footer_sitemap__w ul li{
display: block;
width: 48%;
}

.footer_sitemap__w ul li a{
display: inline-block;
padding: 5px 5px;
font-size: 1.6rem;
color: #ffffff;
border-radius: 5px;
transition: .3s;
}













.footer_sitemap__w ul li a:hover,
.footer_sitemap__w ul li a:active{
opacity: .7;
}

.footer_logo{
width: 70vw;
margin: 0 auto;
padding: 10vw 0 10vw;
}

.footer_logo img{
width: 100%;
}





/* <!--PC 申込ボタン--> */
.btn_pagetop{
position: absolute;
bottom: 2vw;
right: 2vw;
z-index: 1;
}

.btn_pagetop a{
width: 12vw;
height: 12vw;
border-radius: 10px;
padding: 1vw 1vw;
display: table-cell;
color: #60f;
text-align: center;
font-size: 1.2rem;
position: relative;
letter-spacing: .1rem;
vertical-align: middle;
line-height: 1.5;
background: #fff;
transition: .5s !important;
font-weight: bold;
border: 2px solid #60f;
}

.btn_pagetop a:hover,
.btn_pagetop a:active{
transform: translate(0,-2px);
opacity: .9;
box-shadow: 0px 0px 10px 0px #00000014;
}



.contact__w{
width: 100%;
background: #f3f3f3;
}

.contact__wi{
width: 100%;
margin: 0 auto;
padding: 10vw 0 0;
}

.contact__w h2{
font-size: 1.8rem;
letter-spacing: 0.2rem;
text-align: center;
margin: 0 auto;
}

.contact__w h2 span{
display: inline-block;
margin: 0 auto;
}

.contact__w h2 span::after{
content: "medical";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
}

.info_box100{
width: 100% !important;
}

.info_box100 h3{
font-size: 1.6rem;
padding: 2vw 3vw;
color: #fff;
display: block;
letter-spacing: .2rem;
text-align: center;
margin: 0 0 5vw 0;
background: #1489bd;
}

.info_box100 p{

}

.info_box100 h4{
text-align: center;
}


.info_box100 h4 span{
font-size: 1.4rem;
color: #fff;
display: inline-block;
letter-spacing: .2rem;
margin: 0 0 5vw 0;
background: #5dabc1;
border-radius: 100px;
padding: 2vw 5vw;
}



/*faq*/
.faq_h2{
margin: 0 auto;
font-weight: bold;
padding: 0 5vw;
}

.faq_h2 span{
font-size: 1.8rem;
display: inline-block;
letter-spacing: .2rem;
}




/*<!--sservice-->*/
.sservice__w{
width: 100%;
background: url(../images/sservice_bg.jpg) no-repeat;
background-size: cover;
padding: 5vw 3vw;
}

.sservice__wi{
width: 100%;
margin: 0 auto;
padding: 5vw 5vw;
background: rgba(255,255,255,0.95);
border-radius: 5px;
}

.sservice__w h2{
font-size: 1.8rem;
letter-spacing: 0.2rem;
text-align: center;
margin: 0 auto 7vw;
}

.sservice__w h2 span{
display: inline-block;
margin: 0 auto;
color: #0893ce;
}

.sservice__w h2 span::before{
content: "";
background: url("../images/logo-s.svg") no-repeat;
display: block;
width: 64px;
height: 60px;
margin: 0 auto 10px;
}
.sservice__w h2 span::after{
content: "industrial physician";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
}

.sservice_t{
background: #fff;
padding: 40px 40px;
border-radius: 5px;
}

.sservice_t2{
margin: 4vw 0 3vw;
font-size: 1.6rem;
font-weight: bold;
}

.sservice_fx{
display: flex;
flex-wrap: wrap;
justify-content: space-around;
margin: 0 0 5vw 0;
}

.sservice_fx li{
width: 100%;
font-size: 1.3rem;
}

.sservice_fx li:before{
content: "■";
font-size: 1.9rem;
display: inline-block;
margin: 0 1vw 0 0;
color: #45a8c1;
}


/*<!--kservice-->*/
.kservice__w{
width: 100%;
background: url(../images/kservice_bg.jpg) no-repeat;
background-size: cover;
padding: 5vw 3vw;
}

.kservice__wi{
width: 100%;
margin: 0 auto;
padding: 5vw 5vw;
background: rgba(255,255,255,0.95);
border-radius: 5px;
}

.kservice__w h2{
font-size: 1.8rem;
letter-spacing: 0.2rem;
text-align: center;
margin: 0 auto 7vw;
}

.kservice__w h2 span{
display: inline-block;
margin: 0 auto;
color: #0893ce;
}

.kservice__w h2 span::before{
content: "";
background: url("../images/logo-s.svg") no-repeat;
display: block;
width: 64px;
height: 60px;
margin: 0 auto 10px;
}
.kservice__w h2 span::after{
content: "consulting";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
}







/*<!--sservice-->*/
.gservice__w{
width: 100%;
background: url(../images/gservice_bg.jpg) no-repeat;
background-size: cover;
padding: 5vw 3vw;
}

.gservice__wi{
width: 100%;
margin: 0 auto;
padding: 5vw 5vw;
background: rgba(255,255,255,0.95);
border-radius: 5px;
}

.gservice__w h2{
font-size: 1.8rem;
letter-spacing: 0.2rem;
text-align: center;
margin: 0 auto 7vw;
}

.gservice__w h2 span{
display: inline-block;
margin: 0 auto;
color: #0893ce;
}

.gservice__w h2 span::before{
content: "";
background: url("../images/logo-s.svg") no-repeat;
display: block;
width: 64px;
height: 60px;
margin: 0 auto 10px;
}
.gservice__w h2 span::after{
content: "obligation";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
}

.gservice_nav__w{
}


.gservice_t1{
font-size: 1.4rem;
}

.gservice_t2{
margin: 4vw 0 3vw;
font-size: 1.6rem;
font-weight: bold;
}

.gservice_t3{
padding: 1vw 2vw;
display: inline-block;
background: #45a8c1;
color: #fff;
margin: 0 0 20px 0;
}

.gservice_fx{
display: flex;
flex-wrap: wrap;
justify-content: space-around;
margin: 0 0 30px 0;
}

.gservice_fx li{
width: 100%;
font-size: 1.4rem;
}

.gservice_fx li:before{
content: "■";
font-size: 1.4rem;
display: inline-block;

color: #45a8c1;
}

.gservice_fx2{
display: flex;
flex-wrap: wrap;
justify-content: space-around;
margin: 0 0 3vw 0;
}

.gservice_fx2 li{
width: 100%;
font-size: 1.4rem;
}

.gservice_fx2 li:before{
content: "■";
font-size: 1.4rem;
display: inline-block;
color: #45a8c1;
}





.illustmap{
width: 100%;
margin: 0 auto;
}

.illustmap img{
width: 100%;
height: 100%;
border-radius: 10px;
border: 1px solid #1489bd;
}

.info_memo1{
width: 100%;
padding: 5vw 4vw;
border-radius: 10px;
background: #f6f6f6;
order: 4;
}

.info_memo1_h{
font-size: 1.6rem;
color: #2196f3;
margin: 0 0 20px 0;
}

.info_memo1_t{
line-height: 2;

}

.info_memo_ic{
width: 1.8rem;
height: 1.8rem;
display: inline-block;
margin: 0 1vw 0 0;
vertical-align: middle;
}

.info_memo_ic img{
width: 100%;
height: 100%;
}

.info_memo2{
width: 100%;
padding: 5vw 4vw;
border-radius: 10px;
background: #f6f6f6;
order: 5;
}


.rsv_link{
text-align: center;

}

.rsv_link a{
display: inline-block;
border-radius: 5px;
text-align: center;
padding: 3vw 10vw;
transition: .6s;
position: relative;
font-size: 1.4rem;
letter-spacing: 0.01rem;
background: #00ade4;
color: #fff;
box-shadow: 0px 3px 3px 0px #e4e4e4;
}

.rsv_link a:active, .rsv_link a:hover {
transform: translate(0,-2px);
opacity: .9;
box-shadow: 0px 3px 3px 0px #e4e4e4;
}

.rsv_link span::before {
content: "";
position: absolute;
left: 20px;
font-size: 1rem !important;
top: 50%;
transform: translateY(-50%) translateX(-50%);
margin: auto;
color: #aedce0;
}


.doctor__w h2{
font-size: 2rem;
letter-spacing: 0.2rem;
text-align: center;
width: 100%;
font-weight: bold;
}

.doctor__w h2 span{
    display: inline-block;
    margin: 0 auto;
    border-top: 1px solid #0b308e;
    border-bottom: 1px solid #0b308e;
    padding: 1.5rem 40px;
    line-height: 1;
    background: #fff;
}

.recruit__w h2{
font-size: 2rem;
letter-spacing: 0.2rem;
text-align: center;
width: 100%;
font-weight: bold;
}

.recruit__w h2 span{
    display: inline-block;
    margin: 0 auto;
    border-top: 1px solid #5313b3;
    border-bottom: 1px solid #5313b3;
    padding: 1.5rem 40px;
    line-height: 1;
    background: #fff;
    color: #1d093a;
}


/*subtitle*/
.subimage{
width: 100%;
margin: 18vw 0 0 0;
background: url(../images/subimage6.jpg);
background-size: cover;
display: flex;
align-items: center;
justify-content: center;
padding: 10vw 0;
}

.subimage h2{
width: 100%;
color: #fff;
font-size: 3rem;
text-align: center;
letter-spacing: .2rem;
text-shadow: 0px 0px 15px #1489bd;
font-weight: 700;
}

.subh2{

}

.subh2 span{
display: inline-block;
margin: 0 auto;
}

.subh2 span::before{
content: "";
background: url(../images/logo-s.svg) no-repeat;
display: block;
width: 6rem;
height: 6rem;
margin: 0 auto 0;
background-size: cover;
}

.subh2 span::after{
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
line-height: 1;
color: #fff;
text-shadow: 0px 0px 15px #1489bd;
}

.h2_news span::after{
content: "news";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
line-height: 1;
color: #1489bd;
}

.h2_doctor span::after{
content: "doctor";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
line-height: 1;
color: #1489bd;
}

.h2_access span::after{
content: "access";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
line-height: 1;
color: #1489bd;
}

.h2_facilities span::after{
content: "facilities";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
line-height: 1;
color: #1489bd;
}

.h2_jihi span::after{
content: "self-pay care";
}

/*subtitle*/














/*access*/
.access_tbl__w{
width: 100%;
margin: 5vw 0 15vw 0;
}

.access_tbl{
width: 95%;
margin: 0 auto;
border: 1px solid #eaeaea;
}

.access_tbl th{
width: 25%;
background: #fafafa;
vertical-align: middle;
padding: 2vw 3vw;
border: 1px solid #eaeaea;
}

.access_tbl td{
width: 75%;
font-size: 1.3rem;
vertical-align: middle;
padding: 2vw 3vw;
border: 1px solid #eaeaea;
background: #fff;
line-height: 1.4;
}



/*h2_*/
.h2_news span::after{
content: "news";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
line-height: 1;
color: #1489bd;
}

.h2_doctor span::after{
content: "doctor";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
line-height: 1;
color: #1489bd;
}

.h2_access span::after{
content: "access";
display: block;
font-size: 1.3rem;
letter-spacing: .1rem;
line-height: 1;
color: #1489bd;
}







/*nocontent*/
.nocontent{
text-align: center;
font-size: 1.6rem;
width: 100%;
color: #555;
padding: 10vw 0 5vw;
}




/*access*/
.photo__w{
width: 90%;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
margin: 0 auto 0;
}

.photobox{
width: 48%;
margin: 0 0 4vw 0;
}

.photobox_i{
width: 100%;
margin: 0 0 2vw 0;
}

.photobox_i img{
width: 100%;
border-radius: 10px;
}

.photobox_t{
width: 100%;
font-size: 1.2rem;
line-height: 1.3;
border-radius: 100px;
padding: 2vw 3vw 2vw;
background: #f6f7f9;
color: #1d63ab;
text-align: center;
}


.photoboxh{
width: 100%;
margin: 0 0 5vw 0;
text-align: center;
}

.photoboxh_t{
color: #222;
font-size: 2rem;
font-weight: 700;

display: inline-block;
}

.photoboxh_t::after{
content: "";
display: block;
width: 5vw;
height: 1vw;
background: #3ca0cd;
border-radius: 3px;
margin: 0 auto;
}







/*自費診療*/
.subpage__w{
width: 100%;
background: #fff;
padding: 50px 0 80px 0;
}

.subpage__wi{
width: 100%;
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.subpage__wi h3{
width: 100%;
margin: 0 auto 50px;
display: flex;
justify-content: center;
font-size: 3rem;

font-weight: 700;
letter-spacing: .3rem;
}

.subpage__wi h3 span{

}

.subpage__wi h3 span::after{
content: "";
display: block;
width: 40px;
height: 5px;
background: #3ca0cd;
border-radius: 3px;
margin: 0 auto;
}

.box{
width: 95%;
margin: 0 auto 10vw;
border-radius: 20px;
background: #fbfbfb;
padding: 5vw 5vw 5vw;
box-shadow: 10px 10px 15px #f1f1f1;
}

.box h4{
font-size: 2rem;

font-weight: 700;
letter-spacing: .1rem;
border-bottom: 1px solid #cecece;
color: #1e3348;
margin: 0 0 3vw 0;
padding: 0 0 2vw 0;
}

.box_memo{
width: 100%;
margin: 0 auto;
border-radius: 2px;
background: #fff;
padding: 3vw 4vw;
line-height: 2;
}

.txt_blue{
color: #26a2de;
}


.jihi_flow__w{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

.jihi_flow_box{
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
margin: 0 0 3vw 0;
}

.jihi_flow1_w{
width: 55%;
}

.jihi_flow1{
width: 100%;
font-size: 1.8rem;
color: #0d8bc3;
font-weight: 700;
margin: 0 0 2vw 0;
}

.jihi_flow2{
width: 100%;
}

.jihi_flow3{
width: 40%;
}

.jihi_flow3 img{
width: 100%;
}

.item_h{
font-size: 1.6rem;
color: #077eb7;
margin: 0 0 3vw 0;
}

.item_t{
margin: 0 0 4vw 0;
}
/*自費診療*/





/*医師紹介*/

.doctor_name{
font-size: 2.7rem;
text-align: center;
letter-spacing: .1rem;
padding: 3vw 0 3vw;
font-weight: bold;
width: 100%;
    background: #f8f9f9;
    margin: 0 0 8vw 0;
}

.doctor_photo{
width: 95%;
margin: 0 auto 10vw;
}

.doctor_photo img{
width: 100%;
border-radius: 10px;
}



.profile__w{
width: 100%;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.profile1{
width: 100%;
display: flex;
justify-content: space-between;
margin: 0 0 3vw 0;
flex-wrap: wrap;
}

.profile2{
width: 100%;
background: #f5f5f5;
padding: .5vw 2vw;
color: #7d7d7d;
margin: 0 0 1vw 0;
}

.profile3{
width: 100%;
padding: 0 2vw;

}



/*price*/
.price_h{
font-size: 1.8rem;
color: #077eb7;
margin: 0 0 3vw 0;
font-weight: 700;
}

.price_tbl{
width: 100%;
border: 1px solid #ccc;
font-size: 1.3rem;
margin: 0 0 5vw 0;
}

.price_tbl th{
border: 1px solid #ccc;
vertical-align: middle;
padding: 2vw 2vw;
background: #f7f7f7;
font-size: 1.4rem;
color: #077eb7;
}

.price_tbl td{
border: 1px solid #ccc;
padding: 2vw 2vw;
vertical-align: middle;
}

.price1{
text-align: center;
font-size: 1.3rem;
background: #f7f7f7;
}

.price2{
font-size: 1.6rem;
font-weight: 700;
text-align: right;
color: #3ca0cd;
}

.price3{
font-size: 1.2rem;
line-height: 1.4;
font-weight: 400;
display: inline-block;
margin: 2vw 0 0 0;
color: #333;
}

.price4{
color: #3ca0cd;
font-weight: 700;
}

.price5{
text-align: center;
font-size: 1.3rem;
background: #f7f7f7;
width: 40%;
}

.price6{
font-size: 1.6rem;
font-weight: 700;
text-align: right;
color: #3ca0cd;
}
/*price*/



/*hifu*/
.hifu1{
margin: 0 0 3vw 0;
}

.hifu1 span{
    padding: 1vw 3vw;
    background: #3d9fe6;
    border-radius: 100px;
    color: #fff;
}

.qabox{
margin: 0 0 30px 0;
border-bottom: 1px dotted #ccc;
padding: 0 0 30px 0;
}

.qa1{
text-indent: -3.5rem;
padding-left: 3.5rem;
line-height: 1.6;
margin: 0 0 2vw 0;
}

.qa1 span{
    font-weight: 700;
}

.qa1 span::before{
content: "";
background: url("../images/ic_q.svg");
display: inline-block;
width: 2.5rem;
height: 2.5rem;
vertical-align: middle;
margin: 0 2vw 0 0;
}

.qa2{
text-indent: -3.5rem;
padding-left: 3.5rem;
line-height: 1.6;
}

.qa2 span{

}

.qa2 span::before{
content: "";
background: url("../images/ic_a.svg");
display: inline-block;
width: 2.5rem;
height: 2.5rem;
vertical-align: middle;
margin: 0 2vw 0 0;
}





.medical1{
width: 90%;
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.medical2{
width: 100%;
border: 2px solid #005da8;
padding: 2rem 2rem;
text-align: center;
border-radius: 500px;
background: #f7f4fc;
color: #005da8;
margin: 0 0 2rem 0;
font-size: 2rem;
font-weight: 700;
}

.medical2:last-child{
margin: 0 0 0 0;
}

.medical3{
    width: 80%;
    padding: 2rem;
    background: #fffee2;
    margin: 0 auto;
}

.medical3 span{
color: #e63e3e;
}

.reservation1{
width: 90%;
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.reservation2{
width: 100%;
margin: 0 0 5rem 0;
display: flex;
justify-content: center;
flex-wrap: wrap;
}

.reservation2 a{
color: #323232;
    width: 100%;
    font-size: 2.8rem;
    font-weight: bold;
    text-align: center;
    line-height: 1;
}

.reservation2:last-child{
margin: 0 0 0 0;
}

.reservation2a{
width: 100%;
margin: 0 0 1.5rem 0;
text-align: center;
font-weight: 700;
font-size: 1.7rem;
  color: #660dff;

}

.reservation2b a span::before {
    content: "";
    background: url("../images/ic_tel.svg") no-repeat;
    width: 2.2rem;
    height: 2.2rem;
    display: inline-block;
    background-size: contain;
    margin: 0 .5rem 0 0;
    vertical-align: middle;
}

.reservation3{
width: 100%;
margin: 0 0 3rem 0;
}

.reservation3 a{
    font-size: 2rem;
    font-weight: 700;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    background: #6600ff;
    border-radius: 5px;
    box-shadow: 5px 5px 8px #dccbf1;
    padding: 2rem 2rem;
    text-align: center;
}

.reservation3:last-child{
margin: 0 0 0 0;
}

.teikei1{
width: 100%;
margin: 0 auto;
display: flex;
justify-content: space-between;
flex-wrap: wrap;
}

.teikei1 a{
display: block;
width: 40%;
margin: 0 auto;
}

.teikei1 a img{
width: 100%;
}




/*calendar*/

.calendar1{
width: 90%;
margin: 0 auto;
}

.xo-event-calendar table.xo-month .month-header>span {
  display: inline-block;
  font-size: 1.7rem;
  line-height: 1.3;
  text-align: center;
  vertical-align: middle;
  padding: .5rem 2rem;
  background: #f5f5f5;
  color: #202020;
  border-radius: 5px;
  margin: 1.5rem 0 .5rem 0;
}

.xo-event-calendar {
font-family: YakuHanJP_Narrow, 'Zen Kaku Gothic New', sans-serif;
  position: relative;
}

.xo-event-calendar p.holiday-title {
  font-size: 1.5rem;
  margin: 0;
  padding: 2px 0;
  vertical-align: middle;
}

.xo-event-calendar table.xo-month .month-dayname td div {
  border-width: 1px 1px 0 0;
  font-size: 1.5rem;
  height: 1000px;
  line-height: 1.2em;
  padding: 4px;
  text-align: right;
}

/*calendar*/






.topnews__w {
width: 100%;
margin-top: 17rem;
}

.topnews1 {

    border: 2px solid #005da8;
    
        width: 90%;
    background: #fff;
    padding: 1rem;
    margin: 0 auto;
}

.topnews1 iframe {
    width: 100%;
height: 20rem;
overflow-y: scroll;
}


.topnews2 {
width: 100%;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
border-bottom: 1px solid #ccc;
padding: 2rem 0;
}

.topnews2:last-child {
border-bottom: none;
}

.topnews3 {
width: 100%;
font-size: 2rem;
font-weight: 700;
}

.topnews4 {
width: 100%;
font-size: 1.4rem;
margin-top: .5rem
}



.about_shinsatsu__w{
width: 100%;
text-align: center;
margin: 5rem 0 3rem;
}
.about_shinsatsu1{
    display: inline-block;
    padding: 2.5rem 1rem;
    text-align: center;
    font-size: 1.7rem;
    background: #fff;
    border-radius: 5px;
		width: 100%;
font-weight: 600;
}

.about_shinsatsu1 span{
color: #1c78c3;
}








}
/* sp*/
