@charset "utf-8";

@media screen and (max-width:899px){
.sp{display:none;} 
/*-------------------------------------
	共通項目
-------------------------------------*/
	html{font-size: 100%;
	scroll-behavior: smooth;
    scroll-padding-top: 60px!important;}
	
.wrap{
	width:100%;
	position: relative;}	

#topicpath,.topicpath{
	margin: 0 0 0px;
}
		.privacy{height: 350px;
	overflow-y: scroll;
	background: #fff;
	padding: 10px;
	border: 1px solid #ccc;
	margin: 30px 0;}

.topimg img{
	object-fit: cover;}	
	
	
#page_top{
  width: 40px;
  height: 40px;
  position: fixed;
  right: 20px;
  bottom: 80px;
  opacity: 0.6;
}	
	
#page_top a{
  width: 40px;
  height: 40px;
  text-decoration: none;
}
#page_top a::before{font-size: 40px;}	
	
	
figure img{ vertical-align: bottom;}	

/* imgの基本設定 */
.aligncenter,
.alignright,
.alignleft,
.main_contents figure{
	display: block;
	margin: 0 auto 15px;
	float: none;
	text-align:center;
}
	

.aligncenter img,
.alignright img,
.alignleft img,
	.main_contents figure img{max-width: 100%;}

.wp-block-image figcaption{
	display:block	!important;}



.fullbox{
	margin: 0 -10px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding-left:15px!important;
	padding-right:15px!important;
	box-sizing: border-box;
	padding-top:30px;
	padding-bottom:30px;
}
	
.fullbox2{
	margin: 0 -10px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding-left:15px!important;
	padding-right:15px!important;
	box-sizing: border-box;
	padding-top:15px;
	padding-bottom:15px;
}	



.padding60{/*SPは約50%で表示*/
	padding-top:30px!important;
	padding-bottom:30px!important;
}
	
	.space{height: 20px!important;}
	.space60{height: 30px!important;}

.left_box2{
	margin-bottom:30px;
}	
	
/*-footer-----------------------------------------------------*/


	.footer{background-color: #fff;
	margin-top: 50px;}
.footer .about{padding: 30px 10px;}
.footer .about .about_left{
	margin: 0 0 20px;
}


.footer .about .about_left h2{background: none!important;
	padding:0!important;
	margin: 0;}
	
.footer h2 img{display: block;
	margin: 0 auto 15px;
	width: 50%;
	max-width: 200px;}

dl.add dt{
	display: block;
	float: none;
	margin: 0 0 5px;
}
dl.add dd{
	padding: 0 0 10px 0px;}


.footer .map{margin-bottom: 30px;

}
.footer .map iframe{
	width: 100%;
	height: 260px;
	display: block;}

	
footer .btmmenu {
	padding: 10px;
}



footer .btmmenu ul{
	margin: 0 0px 10px;
}
footer .btmmenu ul li{font-family: 'Noto Sans JP';font-weight: 600;
	color: #fff;
	margin: 0 0 6px;
	
		background-image:url("../image/common/list01.png");
	background-repeat: no-repeat;
	background-position: left 10px;
	padding: 0 0 6px 15px;
	background-size: auto 10px;
	border-bottom: 1px dotted #fff;
}

	footer .btmmenu ul li span{display: none;}

footer .btmmenu ul li a{
	display: block;
	color: #fff;

}
footer .btmmenu ul li a img{
display: none;
}

footer .btmmenu ul li a:hover{
	font-weight: bold;

}

footer p.copy{font-size: 0.9em;
	padding-bottom: 80px;}
	
	.footer .bn{width:80%;
		max-width: 400px;
	margin: 20px auto;}
	.footer .bn ul li{margin: 0 0 15px 0;
}


/*-style-----------------------------------------------------*/


.contents {overflow: hidden;}

.contents .main_contents{margin: 40px auto;
	padding: 0px 10px;}


/*-1カラム時のコンテンツ----------------------------*/


.contents .main_contents .outbox{
	margin: 0 auto;
	
}


.contents .main_contents .inbox:after {
  clear: both;
  content: "";
  display: block;
}




.main_contents h2{
margin: 0 0 25px;
font-size: 25px;}

h3{font-size: 22px;
	margin: 0 0 20px;}	
	
h4{font-size: 20px;
	margin: 0 0 20px 0;}



h5{font-size: 18px;
margin: 0 0 15px;}
	
h6{font-size: 18px;}







/*-------------------------------------
	コンテンツ
-------------------------------------*/


.qa dl{margin: 0 0 15px 0;}	
	
.qa dt{padding: 5px 0px 10px 30px;}


	
.qa dl dd{padding: 5px 0px 15px 30px;}	
	.photobox{background: #fff;
	margin: 0 auto 30px auto;}
.photobox .text{
        background: #fff;
padding:15px 5%;;
        box-sizing: border-box;
    }	
	

/*--選ばれる理由-----------------------------*/	
.reason .reason_box{
	margin: 0 0 30px 0;}	
	
	
.reason .reason_box h3{font-size: 20px;
	margin: 0 0px 20px 0;}
	

	
/*---------ブロックリンク-------------*/	
	
	
	.block_link2 ul{display: flex;
	flex-wrap:wrap;
	justify-content:space-around;}

	.block_link1 ul li,
	.block_link2 ul li{
	margin: 0 auto 20px auto;
	}
	
	
	.block_link2 ul li a{display: flex!important;
	flex-wrap: nowrap;}
	
	.block_link2 ul li figure.aligncenter{width:30%;
		margin: 0 auto 10px 0;
	}
	
	.block_link2 ul li figure img{aspect-ratio:1/1;
	object-fit: cover;
	border: 1px solid #ccc;}
	
	.block_link1 ul li h3,
	.block_link2 ul li h3{font-size: 1.2em;
	margin: 0 0 10px 0;
	line-height: 1.4;}	
	
	.block_link2 ul li a .text{width: calc(100% - 30% - 20px);}

/*--院長挨拶-------------------------------*/

.inchou{margin-bottom: 20px;
	max-width: 400px;}	
	.company .map{margin: 20px auto 30px auto;}
	.company .map iframe{height: 300px;}




ul.imgbox3,
ul.imgbox5{
display: flex;
flex-wrap: wrap;
align-content: center;
align-items: center;
justify-content: space-between;
}
ul.imgbox3 li,
ul.imgbox5 li{
width: 32%;
margin: 0 0 15px;

}
ul.imgbox3 li img,
ul.imgbox5 li img{
	display: block;
	margin: 0 auto;
}

/*---------------------------*/

ul.imgbox2{
display: flex;
flex-wrap: wrap;
align-content: center;
align-items: center;
justify-content: space-between;
}
ul.imgbox2 li{
width: 49%;
margin: 0 0 15px;

}
ul.imgbox2 li img{
	display: block;
	margin: 0 auto;
}

.flex2_box h3,
.flex2_box p{margin-left: 15px;
margin-right: 15px;}	
	.flex2_box p{padding-bottom: 30px;}	
/*---------------------------*/

ul.imgbox4{
	display: flex;
	flex-wrap: wrap;
	align-content: center;
	align-items: center;
	justify-content: space-between;
}
ul.imgbox4 li{
	
	width: 46%;
	margin-left:2%;
	margin-right:2%;
	text-align: center;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
ul.imgbox4 li img{
	display: block;
	margin: 0 auto 5px;
}


/*-------------施術の流れ3-----------------*/

.step ol li{margin-bottom: 30px;}
.step ol li p{margin-bottom: 0px;}
.step ol li img {
	width: 80%;
	height: auto;
	margin: 0 auto 15px;
	display: block;
}


.step ol li p.title {
	font-size: 130%;
}
/*-------------施術の流れ4-----------------*/


.step4 ol{
	margin: 5px 0 0 0;
	list-style-type: none;
}
.step4 ol li {
	width: 100%;
	background: #fff;
	margin: 0 0 50px;
	padding: 15px;
	box-sizing: border-box;
	position: relative;
}

.step4 ol li img {
	width: 40%;
	height: auto;
	margin: 0 0 15px 15px;
	float: right;
}
.step4 ol li p {
}
.step4 ol li p.title {
	font-size: 120%;
	font-weight: bold;
	margin: 0px 0 20px;
	line-height: 30px;
	font-family: 'Noto Sans JP', sans-serif;
	padding-left: 40px;
}
.step4 ol li p.title b {
	background-color: #157DB2;
	width: 30px;
	text-align: center;
	display: block;
	line-height: 30px;
	margin: 0 10px 0 -40px;
	color: #fff;
	float: left;
	border-radius: 7px;
}

.step4 ol li:last-of-type{
	margin-bottom: 20px;
}
.step4 ol li:last-of-type::after {
	display:none;
}
.step4 ol li:after {
	content: "";
	position: absolute;
	background-image: url(../image/common/arrow.png);
	background-repeat: no-repeat;
	display: block;
	width: 100%;
	background-position: center center;
	height: 30px;
	bottom: -40px;
	background-size: auto 30px;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}
/*-料金表2--------------------------*/



.ryokin2{
	margin: 0 0 10px;
	overflow: auto;
	
}
.ryokin2::-webkit-scrollbar{/*tableにスクロールバーを追加*/
 height: 5px;
}
.ryokin2::-webkit-scrollbar-track{/*tableにスクロールバーを追加*/
 background: #F1F1F1;
}
.ryokin2::-webkit-scrollbar-thumb {/*tableにスクロールバーを追加*/
 background: #BCBCBC;
}


.ryokin2 table{white-space: nowrap;/*tableのセル内にある文字の折り返しを禁止*/
	text-align: center;
	/*min-width:500px;*/
}

/*-------料金表------------------*/

	
.ryokin1 dl dt{float: none;}
.ryokin1 dl dd{display: block;
	margin: 0 0 10px;
	padding: 0 0 5px;
	word-break: break-all!important;}
	.ryokin1 dl dd:last-of-type{border-bottom: none;
	margin-bottom: 0;}



.voice{
	padding:25px 15px 15px 15px;
	margin: 0px 0 30px 0;
	position: relative;}
	

	
	.voice:last-of-type{margin-bottom: 0;}
	
	.voice h3{font-size: 19px;
	margin: 0 0 5px 0;}	
	
	
	.voice p.name{
	font-size: 15px;
	margin: 0 0 20px 0;}
	
	
/*-会社概要--------------------------*/	
	
	
	dl.about dt{
	box-sizing: border-box;
	font-weight: bold;
	margin: 0 0 5px 0;}
	dl.about dd{
	box-sizing: border-box;
	padding:0 0 0.7em;
		margin-bottom: 0.7em;
	border-bottom: 1px solid #aaa;}	
	
.timeline > li {
  overflow: hidden;
  margin: 0;
	padding: 0;
  
}

.timeline-content {
  border-left: 3px #aaa solid;
 padding: 20px 0 25px 20px;
	margin:-10px 0 0 8px;
}	
	.timeline-content p{margin-bottom: 0;}
	.timeline-date{position: relative;
	padding-left: 30px;}	
	
.timeline-date:before {
  content: "";
  width: 20px;
  height: 20px;
  background:#157DB2;
  position: absolute;
  left:0px;
 top: 0px;
  border-radius: 100%;}		
	
	

.job-table th{display: block;
	width: 100%; 
padding: 0.5em 1em;}
.job-table td{display: block;
	width: 100%; }	
	
}
