@charset "utf-8";


.uvb .list{
margin-bottom:10px;
}

.lst_top_sns {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: .4rem 0;
	padding: 0 .4rem;
	margin-bottom: 2rem;
	li {
	width: 100%;
	a {
		text-decoration: none;
		display: block;
		width: auto;
		max-width: calc(100% - 40px);
        margin: 0 auto;
        height: fit-content;
		aspect-ratio: 3 / 1;
		border: 1px solid #ccc;
		border-radius: 5px;
		padding: 20px;
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
		gap: 20px;
		&::before {
			display: block;
			width: 40px;
			height: 40px;
			content:"";
			background: #ccc;
		}
		p {
			width: 40%;
			text-align: center;
			span {
				display: block;
				font-size: 80%;
			}
		}
		&.instagram {
			position: relative;
			align-items: flex-end;
				&::before {
				display: block;
				width: auto;
				height: 42px;
				content: "";
				aspect-ratio: 23 / 7;
				background: url(../images/icon_instagram2.png) no-repeat center / contain;
				}
				/* p {
					padding-top: 40px;
				} */
		}
		&.instagram.dr {
			&::after {
				position: absolute;
				left: 20px;
				width: auto;
				height: calc(100% - 40px); 
				aspect-ratio: 1 / 1;
				border-radius: 100vh;
				display: block;
				content: "";
			background: url(../images/img_doctor.jpg) no-repeat  center / contain;
			border-radius: 100vh;
			}
		}
		&.instagram.clinic {
			background: url(../images/header_logo.png) no-repeat left 9% center / 28%;
		}
		&.line {
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		aspect-ratio: 5 / 1;
			&::before {
			width: 50px;
			height: 50px;
				background: url(../images/icon_line.png) no-repeat center / contain;
			}
		}

	}
	&.no_sns {
		a {
			padding: 0;
			margin: 0;
			aspect-ratio: unset;
			max-width: 100%;
			height: fit-content;
		&::before {
			display: none;
		}
		img {
			width: 100% !important;
			height: auto;
			margin: 0 !important;
		}
		}

	}
}
}
/*for pc RWD*/
@media print, screen and (min-width: 768px) {
	.lst_top_sns {
	padding: 0;
	li {
	width: 48%;
	height: auto;
	a {
		p {
			width: 60%;
		}
		&:hover {
			opacity: 0.8;
		}
	}
	}
}
}

/*for pc RWD*/
@media print, screen and (min-width: 768px) {
.pchide {
	display: none!important
}
#top-main-flow{
position: relative;
}
#top-main-flow1{
position: absolute;
bottom:20px;
left:20px;
display: block;
width:60%;
height:100px;
}
#top-main-flow2{
position: absolute;
bottom:20px;
right:20px;
display: block;
width:30%;
height:200px;
}

.call{
	pointer-events: none;
}

    
    

.movie_sp {
    display: none;
    }
.movie_pc {
    display: block;
    }
    
 .movie_pc video {
    width: 750px;
    height: 500px;
    display: block;
    margin: 0 auto;
}   
    

}


/*forsp RWD*/
@media screen and (max-width: 767px) {

ul.sp_bt_nav{
	position:fixed; 
	bottom: 0; 
	width: 100%; 
	background: #fff; 
	display: flex;
	 z-index: 100
}
ul.sp_bt_nav li{
	width: 50%;
}
ul.sp_bt_nav li a:link{

	display: block
}

.smoothScrolls {
	bottom: 80px;
}
#footer{
	margin-bottom: 40px;
}
#footer_area{
	padding-bottom: 20px;
}


.footer_waku,
.footer_logo,
#main_nav,
#logo,
.sphide {
	display: none!important
}



/* :::::::::: clearfix :::::::::: */
.clearfix {
 	display: inline-block;
}

.clearfix {
 	display: block;
}

.clearfix:after {
 	content: ".";
 	display: block;
 	clear: both;
 	height: 0;
 	visibility: hidden;
}
	
/* :::::::::: 回り込み、解除 :::::::::: */
.left {
 	float:left;
}
.right {
 	float:right;
}
.clear {
 	clear:both;
 	display:block;
 	margin:0;
 	padding:0;
 	height:0;
 	line-height:0px;
 	font-size:0px;
}
/*画像の左へ回り込み */
img .left {
 	float:left;
 	margin-top:0px;
 	margin-right:0px;
}
/*画像の右へ回り込み */
img .right {
 	float:right;
 	margin-top:0px;
 	margin-left:0px;
 	margin-right:0px;
}

/* :::::::::: フォント :::::::::: */
p,li,dt,dd {
 	font-size:14px;
 	line-height:150%;
 	color:#4c4c4c;
 	-webkit-text-size-adjust: none;
}
.icon {
 	margin:0;
 	padding:0 5px 0 0;
 	vertical-align:baseline;
}

/* :::::::::: リンクカラー 	:::::::::: */
a:link,
a:visited {
 	color:#000000;
 	text-decoration:underline;
}

a:hover,
a:active {
 	color:#999999;
 	text-decoration:none;
}


/*rwd start here*/
.topics,
.footer_nav,
.footer_waku,
#footer,
#sub_contents,
#main_contents #clinic_info,
#main_contents,
#contents_wrapper,
#wrapper{width:100%;
float:none;
}

#marl{
  float:none;
  width:87%;
  margin-top:0;
}
.menu{
  float:right;
  width:13%;
  margin-bottom:15px;
}

/* :::::::::: ナビ :::::::::: */

nav.spnav {
  position:absolute;
  top:138px;
  left:0px;
  z-index: 100;
	width:100%;
	margin:0 0 20px;
	text-align:center;
}

nav.spnav ul.main_nav {}

nav.spnav ul.main_nav li {
	width:100%;
	height:40px;
	margin:0 auto 0px auto;
	background-color: #cdebfb;
 	border-top: 1px solid #398abc;

}

nav.spnav ul.main_nav li a {
	display:block;
  box-sizing:border-box;
	width:100%;
  padding:0 0 0 2%;
	font-size:14px;
	font-weight:bold;
 	line-height:40px;
	 text-align:left;
	text-decoration:none;
}
#sub_nav li a{
  background-color:#398abc;
	display:block;
  box-sizing:border-box;
	width:100%;
  padding:0 0 0 2%;
	font-size:14px;
	font-weight:bold;
 	line-height:35px;
	 text-align:left;
	text-decoration:none;
  color:#FFF;
}
#sub_nav li:first-child{
  box-sizing:border-box;
  padding:0 0 0 2%;
  background-color:#398abc;
  border-top:2px solid #FFF;
  border-bottom:2px solid #FFF;
  font-size:16px;
  color:#FFF;
  line-height: 50px;
  text-align:left;
}

nav ul.main_nav li a:link,
nav ul.main_nav li a:visited,
nav ul.main_nav li a:hover,
nav ul.main_nav li a:active {
	color:#2380b8;
}

ul#sub_nav {
   	margin-top: 0px;
    margin-bottom: 0px;
}


img.fluid-image {
    max-width: 100%;
    height: auto;
}

body{background-image:none}

#header h1{
height:auto;
	margin: 0 0 15px 0;
	padding: 1px;
	color: #FFF;
	background-color: #f37fa0;
	text-align: center;
	font-weight: normal;
	font-size: 10px;
		overflow: hidden;
	white-space: nowrap;
	text-overflow: ellipsis;
	letter-spacing: 0;
}
#sub_nav li{border:none}

img{max-width:100%;
height:auto;
}

ul.side_ads{
letter-spacing: -1em;
}
ul.side_ads li{
display: inline-block;
letter-spacing: normal;
width:50%;
vertical-align: top;
text-align: center;
}
ul.side_ads li a{
display: block;
width:96%;
padding:20px 0;
height:auto;
margin:0 auto;
}
ul.side_ads li:nth-child(6) a,
ul.side_ads li:nth-child(7) a{
display: block;
width:96%;
padding:13px 0;
height:auto;
margin:0 auto;
}

#topic {}

.topics > div {
    float: none;
    width: 100%;
    height: auto;
}
.topics > div P{
text-align: left;
padding-left:10px;
}
.topics > div P.open::after{
font-family: FontAwesome;
content: '\f077 ';
position: absolute;
right:10px;
color:#2380B8;
}

 
.topics > div P::after{
font-family: FontAwesome;
content: '\f078 ';
position: absolute;
right:10px;
color:#2380B8;
}
.topics > div ul{margin:0 0 15px;}
#main_contents #topic p{margin:0;}

#togglecont6,
#togglecont5,
#togglecont4,
#togglecont3,
#togglecont2,
#togglecont{
display: none;
}
.top_charact{padding:20px 0;}

.top_charact h4{
border: 1px solid #edd8e0;
margin: 20px 10px 10px;
padding: 10px 40px 10px 15px;
font-size:1em;
font-weight: normal;
color: #a07d8a;
text-align: left;
}

.top_charact p{
padding:0 10px;
}

.home_map{float:none;
text-align: center;
padding:10px;
}

.overview{float:none;
text-align: left;
padding:10px;
}


.bold{font-weight:bold;}

.red {color:#FF0004!important;}
.pink {color:#E46C80!important;}
.navy{color: #165A83!important}


.doctor_table td.red,
.doctor_table th.red{color:#FF0004!important;background:#FFEEEE}

.blue {color:#165A83!important;}

.doctor_table td.blue,
.doctor_table th.blue{color:#165A83!important;background:#EAF6FC}

.doctor_table tr:first-child th,
.Chour_table tr:first-child th{
background-color: #f9eac1;
color: #da6d0d;
}

#sub_contents .mt20,
.sub_nav3{
text-align: center;
}


.bg_logo{
display: none;
}


html {
	overflow: auto;
}
body {
	overflow: hidden;
	min-width: 100%;
}


#main_contents,
.mb35{
margin-bottom:20px;
}
.pad10{padding:0 10px;}

.copyright{text-align: center;}

.btn_tel{
padding:20px 5px 40px;
}

.col2banners{
letter-spacing: -0.5em;
}
.col2{
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;

letter-spacing: normal;
width:50%;
text-align: center;
vertical-align: top;
display: inline-block;
padding:0 5px;
}

.sub_nav3{margin-bottom:0;}



h3 span{
font-size:1em;
}

#main_contents img{
max-width:100%;
height:auto;
display: block;
margin:0 auto 10px;
padding:0;
}

.calendar2{
padding:5px;
}

.gv_galleryWrap {
	padding: 0!important;
	margin:0 auto!important;
}
.gv_filmstripWrap {
	display: none;
}
.gv_navWrap {
	left: 120px;
}
.gv_galleryWrap img{
left:0!important;
}


.clinic .left,
.clinic .right,
.doctor .right,
.doctor .left,
.atheroma .right,
.spring .right{
float:none!important;
max-width:100%!important;
margin:0;
}
.top_banners,
.booking{
padding:3px;
}
.subbox3{
padding:5px;
}

.atheroma .dliststyle1 dt .pic{
float:none;
max-width:100%;
height:auto;
display: block;
margin:0 auto 10px;
padding:0;
}

.fee td{line-height:1.2;}

h3,
h4{line-height: 1.2}

.job .job_table th,
.job .job_table td{
display: block;
width:100%;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box;
}

.uvb .box4 h4{
margin:0 20px 20px;
}


.clinic .subbox3{
margin:0!important;
}


#top-main-flow{
position: relative;
}
#top-main-flow1{
position: absolute;
bottom:10px;
left:10px;
display: block;
width:60%;
height:50px;
}
#top-main-flow2{
position: absolute;
bottom:10px;
right:10px;
display: block;
width:30%;
height:150px;
}

table.detail_table th,
table.detail_table td{
	font-size: 14px;
}
table.detail_table th{
  width: 30%;
}
	
.page_nav{
	width: 90%!important;
	margin-left: auto!important;
	margin-right: auto!important;
	padding: 3%;
	}
.page_nav ul{
    display: block;
	

}

.page_nav ul li{
	width: 100%;
	margin-bottom: .5em;
}

.page_nav ul li a{
	text-decoration: none;
	position: relative;
	padding-left: 20px;
}

.page_nav ul li a::before{
content: '\f105 ';
    font-family: FontAwesome;
    position: absolute;
    left: 0px;
    top: 0px;	
		color: #83C5EC;
}
	
.bn_reserve{
    display: block;
}

.bn_reserve div{
	width:100%;
	margin-right: 0%;
	margin-bottom: 2%;
}

.row3{
    display: block;
}
	
.row3 div{
	width:100%;
	margin-right: 0%;
	margin-bottom: 2%;
}
.row3 div:last-child{
	margin-right: 0;
}




.col2 {
width: 100%;
}

.pointer-pc-none {
pointer-events: auto;
text-decoration: none !important;
}

 .movie_pc {
        display: none;
    } 
    
  .movie_sp {
        display: block;
    }
    
.movie_sp video {
    width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
}

#sp_head {
    position: relative;
}
#sp_head .menu {
    position: absolute;
    top: 0;
    right: 0;
}
.pchide .h_sns a {
	text-decoration: none;
	margin-left: 0.5rem;
}
.pchide .h_sns a:nth-of-type(2) {
	margin-left: 1rem;
}
.pchide .h_sns a:nth-of-type(3) {
	margin-left: 1rem;
}
.h_acs {
    margin-top: .5rem;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
img.h_logo{
	width: 54%;
}
img.h_insta {
	width: 13%;
}
img.h_line {
	width: 13%;
}


    
/*rwd end here*/
}









