/* CSS Document */

@media screen and (max-width:640px) {

body{
	font-size: 14px;
}
body,
#mainvisual .inner,
header,
footer{
	min-width: 100%;
}

*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}



/*============================================================================

	header

============================================================================*/

header {
	display:none;
}
.header_wrap {
	display: none;
}


/*============================================================================

    nav

============================================================================*/

.sp_navi_btn_area {
  position: absolute;
  width: calc(100% - 66px);
  z-index: 1;
  margin-left: 4px;
}
.sp_navi_btn_area li {
  display: block;
  width: calc(100% / 2 ) !important;
  float: left;
  text-align: center;
}
.sp_navi_btn_area li a {
  display: block;
  color: #fff;
  height: 54px;
  line-height: 54px;
  margin: 4px;
  border-radius: 5px;
  font-family: "fot-tsukuardgothic-std",sans-serif;
  font-size: 4vw;
  background: #88d4b5;
}
.sp_navi_btn_area li i {
  position: relative;
  font-size: 1.3em !important;
  top: 2px;
  left: -5px;
  color: #fff;
}
.sp_navi_btn_area li:nth-child(2) i {
  font-size: 1.6em !important;
}

nav{
    display:none ;
}
.sp_navi {
    display:block;
    position:fixed;
    top:0;
    left:0;
    width:100%;
  height:100%;
    font-size:18px;
    font-weight:bold;
    z-index: 9998;
  height: 124px;
  overflow-y: scroll;
  -webkit-overflow-scrolling:touch;
  overflow-x: hidden;
}
.sp_navi_fixed_area {
    z-index: 999;
}
.sp_navi h1{
  position: relative;
  top: 0;
  display: block;
  width: 100%;
  text-align: left;
  padding-left: 2%;
  height: 62px;
  background: #fff;
}
.sp_navi h1 span,
.sp_navi h1 img{
    display:block;
    width: 250px;
    height: 50px;
  margin: auto;
  padding-top: 8px;
}


.sp_navi h1 img{

    z-index: 9999;
    position:relative;

}
.sp_navi dl{
    background-color: rgba(255,255,255,1.0);

}
.sp_navi dl dt {
  position: relative;
    height: 62px;
    font-weight:bold;
    padding: 0 4%;
    font-size:18px;
    display:block;
    color:#fff;
    line-height: 2;
}
.sp_navi dl dt i{
      position: relative;
    top: 20px;
    font-size: 9px;
    font-style: normal;
    margin-right: 2%;
}
.sp_navi_list {
    display:none;
}
.sp_navi ul{
    /*padding:4% 2% 4% 8%;*/

}
.sp_navi_list li {
    display: block;
    width: 100% ;
    float: left ;
    line-height:1.4;
    font-size:15px;
    font-weight:normal;
  text-align: center;
}
.sp_navi_list li i{
    margin-right: 4%;
    color: #ba9275;
    font-size: 11px;
    vertical-align: middle;
    position: relative;
    top: -1px;
    left: -6px;
}

.sp_navi_list i.fa-facebook-square,.sp_navi ul li i.fa-home{
    font-size:16px;
}

.sp_navi_list li a,
.sp_navi_parent > div {
  display: block;
  position: relative;
    vertical-align:middle;
    width:100%;
    height: 50px;
    color:#fff;
    text-decoration:none;
  font-size: 1.1em;
  background: #00a4cd;
  border-bottom: solid 2px #fff;
  font-family: "fot-tsukuardgothic-std",sans-serif;
  font-weight: 700;
  line-height: 50px;
}
.sp_navi_children li a {
  background: #6cc3c6!important;
}
.sp_navi_children li a span {
	font-size: 12px;
}

.sp_navi_parent > div::after {
  position: absolute;
  right: 17px;
  content: "\f067";
  font-family: "Font Awesome 5 Free";
  font-size: 1.0em;
}
.sp_navi_parent_active > div::after {
  position: absolute;
  right: 17px;
  content: "\f068";
  font-family: "Font Awesome 5 Free";
  font-size: 1.0em;
}
.sp_navi_list li a::after {
  position: absolute;
  right: 20px;
  content: ">";
}

/*ボタンの動き*/
.sp_navi dt a {
    display: block;
    width: 62px;
    height:62px;
    position: absolute;
    /*top:5px;*/
    right: -5px;
    z-index: 9999999;
    text-align: center;
    background-color: #00a4cd;
}
.sp_navi dt a i{
  position:relative;
  top:25px;
  font-size: 9px;
  font-style:normal;
  color: #FFF;
  font-weight: 600;
}
.sp_navi dt a span {
    display: block;
    background: #FFF;
    width: 33px;
    height: 2px;
    position: absolute;
    left: 12px;
    transition: all 0.4s;
    -webkit-transition: all 0.4s;
    -moz-transition: all 0.4s;
}
.sp_navi dt a span:nth-child(1) {
    top: 14px;
}
.sp_navi dt a span:nth-child(2) {
    margin-top: -8px;
    top: 50%;
}
.sp_navi dt a span:nth-child(3) {
    bottom: 29px;
}
.sp_navi dt a i {
  position: relative;
  left: -2px;
  bottom: 6px;
}
.sp_navi dt a.active {
  background: #00a4cd;
}

.sp_navi dt a.active i {
  color: #fff;
}
.sp_navi dt a.active span {
  background: #fff;
}
.sp_navi dt a.active span:nth-child(1) {
    -webkit-transform: translateY(8px) rotate(225deg);
    -moz-transform: translateY(8px) rotate(225deg);
    -ms-transform: translateY(8px) rotate(225deg);
    transform: translateY(8px) rotate(225deg);
}
.sp_navi dt a.active span:nth-child(2) {
    opacity: 0;
}
.sp_navi dt a.active span:nth-child(3) {
    -webkit-transform: translateY(-8px) rotate(-225deg);
    -moz-transform: translateY(-8px) rotate(-225deg);
    -ms-transform: translateY(-8px) rotate(-225deg);
    transform: translateY(-8px) rotate(-225deg);
}



/*============================================================================

	#mainvisual

============================================================================*/

#mainvisual{
	background-position: center;
	background-attachment: scroll;
	height:200px;
	margin-top: 124px;
}
#mainvisual .inner{
	width: auto;
	height:inherit;
}

/* 下層ページヘッドライン */
#mainvisual h2{
	font-size:24px;
}
.mainvisual_headline {
	padding-top: 0;
}

/* トップページキャッチフレーズ */
.main_open {
	position: absolute;
	top:auto;
	bottom: 50px;
	right: 0;
	left: 0;
	width: 200px;
	margin: auto;
}

.mainvisual_open {
	position: absolute;
	bottom: 10px;
	left: 0;
	width: 180px;	
}
.mainvisual_yoyaku {
	position: absolute;
	top: 20px;
	right: 8px;
	width: 120px;
}
.mainvisual_recruit {
	position: absolute;
	top: 150px;
	right: 8px;
	width: 120px;
}
.mainvisual_catch {
	top:20px;
	left: 20px;
	right: auto;
	margin-right: auto;
}
.mainvisual_wrap > div {
	margin-top: 124px!important;
	background-size: cover!important;
}





/*============================================================================

	#contents

============================================================================*/

.box1{
	width:auto;
	margin:0 6% 80px;
}
.box2{
	width:auto;
	margin:0 6% 80px;
}
#contents{
	width:auto;
}
#contents_left{
	width:auto;
	float:none;
	margin-right:0;
}
#contents_right{
	width:auto;
	padding:0 6%;
	float:none;
}







/*============================================================================

	footer

============================================================================*/



.footer_info .inner{
	width: 100%;
	padding: 40px 6%;
	flex-direction: column;
}
.footer_info_left,.footer_info_right {
	width: 100%;
}
.footer_info_right {
	padding-top: 15px;
}
.footer_info_overview {
	flex-direction: column;
}
.footer_info_ov_left {
	width: 33%;
	margin: 0 auto;
	padding-top: 0; 
}
.footer_info_ov_right {
	width: 100%;
	padding-top: 10px;
}
.footer_info_ov_logo2 {
	width: 100%;
	max-width: 280px;
	margin: 0 auto;
}
.footer_info_ov_tel {
  text-align: center;
}
.footer_info_ov_tel a {
	font-size: 26px;
}
.footer_info_ov_tel a span:before {
	position: absolute;
	top: -16px;
	right: 2px;
	font-size: 10px;
}
.schedule_note {
	font-size: 12px;
}

/*.footer_info dl{
	float:none;
	width:88%;
	padding:0 6%;
}
.footer_info dl dt{
	float:none;
	text-align: center;
	margin:0 auto 30px;
}
.footer_info_logo,
.footer_info_logo img{
	width:222px;
	height:148px;
}
.footer_info dl dd{
	float:none;
	margin-left:0;
}
.footer_info_overview_tel{
	padding-bottom:20px;
}

.footer_info_sche{
	float:none;
	width:100%;
	font-size:13.5px;
}
.footer_info_sche p{
	margin:0;
}*/
.footer_navi{
	display:none;
}

.pagetop {
	margin: 0 10px 0 auto;
}


/*============================================================================

	$top

============================================================================*/
.top_news .box1 {
	flex-direction: column;
}
.top_news_h3 {
	width: 177px;
	margin: 0 auto;
}
.top_news_flame {
	width: 100%;
	padding: 27px 10px 23px 10px;
}
.scroll_area {
	height: auto;
}
.mCSB_container_wrapper > .mCSB_container {
	width: 100%!important;
	min-width: 244px!important;
}

.top_doctor .box1 {
	padding-top: 60px;
	padding-bottom: 50px;
	height: auto;
}
.top_doctor .text{
	width: auto;
	float: none;
}
.top_doctor_img {
	position: relative;
	left:0;
	top:0;
	text-align: center;
}
.top_doctor_img2 {
	display: none;
}
.top_doctor_img3 {
	display: none;
}
.top_doctor_h3 {
	position: relative;
	left: 0;
	top: 0;
	-webkit-writing-mode: horizontal-tb;
	-moz-writing-mode: horizontal-tb;
	-ms-writing-mode: lr-tb;
	-ms-writing-mode: horizontal-tb;
	writing-mode: horizontal-tb;
	font-size: 16px;
}
.top_doctor .text {
	width: 100%;
	float: none;
	margin-top: 15px;
}

.top_medical {
	background: url(../images/top_medical_bg.png) repeat top left;
}
.top_medical_list dl {
	margin-right: 0;
}
.top_medical_list dl.top_medical_list_item04, .top_medical_list dl.top_medical_list_item05 {
	margin-bottom: 104px;
}

.top_medical4_list{
	width:auto;
	margin:0 0;
	flex-direction: column;
	justify-content: center;
    gap: 40px 0;
}
.top_medical4_list dl {
	margin: 0 auto;
}
/*.top_medical4_list dl{
	float: none;
	width: auto;
	margin-right: 0;
}*/
.top_medical4_list dd {
	padding: 36px 0 26px 0;
}
.top_medical4_list_item01 dd {
    padding: 30px 0 12px 0;
}

/*============================================================================

	$breadcrumb ぱんくず

============================================================================*/

.breadcrumb {
	width:92%;
	margin:-10px 4% 40px;
}
.breadcrumb li{
	display:inline-block;
}




/*============================================================================

	$共通

============================================================================*/

#contents{
	padding-bottom:70px;
}
.box{
	width:auto;
	padding:0 6% 8%;
}
.text{
	float:none;
	width: auto;
	padding:0;
	border:none;
}
 h3.tit01,
 h3.tit02,
 h3.tit03,
 h3.tit04,
 h3.tit05 {
    width: 100%;
	box-sizing:border-box;
	font-size: 21px;
	margin-bottom:25px;
    text-align: center;
}
h4.tit01,
h4.tit02,
h4.tit04{
	font-size:19px;
}
h5.tit01{
	font-size:18px;
}
h3.tit02::before{
bottom:0;
left: 0;
right: 0;
margin: auto;
width: 40px;
height: 57px;
background-image: url(../images/tit02_bg.png);
background-repeat: no-repeat;
background-size: cover;
}
h3.tit04 span span::before{
	display:none;
}

.nowrap{
	white-space:normal;
}

/* リスト */
.list08{
	padding:6%;
}
/* テーブル */
.tb01{
	white-space:inherit;
}
.tb01 td, .tb01 th{

	padding:2% 2%;
}
.tb01 th{
width: 105px;
	font-size:12.5px;
}
.tb01 td{
		font-size:11px;
}
.tb03,.tb03 th{
	white-space:inherit;
}
.tb03.w075par{
	width:100%;
}	
.tb04,
.tb04 th{
	white-space:normal;
}
.tb04 th{
	font-size:13px;
}
.tb04 td, .tb04 th{
	padding:2%;
}
.tb05 {
  border-collapse: collapse;
}
.tb05 td, .tb05 th {
  display: block;
  padding: 12px!important;
}
	
/* ボタン */
.btn01 a{
	display:block;
}

/* アンカーリンク */
.ank01{
	width:88%;
	padding:0 6%;
}
.ank01 li{
	width: 49%;
	margin-bottom:3%;
	margin-left:0;
}
.ank01 li:nth-child(even){
	margin-left:2%;
}
.ank02 li{
	float:none;
	width:100%;
	height:auto !important;
	margin-bottom:3%;
	margin-left:0;
}

.ank01 li span{
	font-size:12.5px;
}

/* 画像右寄せ */
.img_fr{
	float:none;
	margin-left:0;
	text-align:center;
}
.img_fl img,
.img_fr img {
    margin-bottom: 15px;
    width: auto;
    max-width: 100%;
    max-height: 300px;
    height: auto;
}


/*============================================================================

	$doctor

============================================================================*/
.doctor_greeting {
	flex-direction: column;
}
.doctor_greeting_text {
	width: 100%;
	margin-right: 0;
}
.doctor_greeting_photo {
	width: 100%;
	max-width: 300px;
	margin: 0 auto;
}

/* ごあいさつ */
.doctor_greet{
}
.doctor_greet .text{
	float:none;
	width:auto;
}

/* 経歴、資格 */
.doctor_carr {
	flex-direction: column;
}
.doctor_carr_sec1{
	float:none;
	width:auto;
	margin-right:0;
	margin-bottom:30px;
}


/*============================================================================

	$clinic

============================================================================*/

/* 医院概要 */
.clinic_sec1 dt{
	width:30%;
}
.clinic_sec1 dd{
	width:70%;
}
.clinic_sec1 .schedule .tb01{
	width:100%;
}
.schedule table tr:first-child td {
	padding: 12px 5px 6px 5px;
}

/* 院内スライド */
.clinic_slides1 {
	margin-bottom:100px;
}
.clinic_slides1 .flexslider{
	float:none;
	width:100%;
}
.clinic_slides1 .flexslider li div{
	display:block;
	margin-top:19%;
	margin-left:0;
	text-align:center;
	top: 33px;
}
.clinic_slides1 .flexslider p{
	display:block;
}
.clinic_slides1 .flex-control-nav.flex-control-thumbs{
	position: absolute;
	right: auto;
	width: auto;
	top:auto;
	bottom: 10%;
	z-index: 2;
}
.clinic_slides1 .flex-control-thumbs li {
    position: relative ;
    width: 14.3% ;
    margin: 0 0 4% 2% ;
}
.clinic_slides1 .flex-control-thumbs img{
	border: 3px solid #e0e0e0 ;
}



.clinic_slides2 {
	margin-bottom:90px;
}
.clinic_slides2 .flexslider{
	float:none;
	width:100%;
}
.clinic_slides2 .flexslider li div{
	display:block;
	width:100%;
	margin-top:6%;
	margin-left:0;
	text-align:center;
}
.clinic_slides2 .flexslider p{
	display:block;
}
.clinic_slides2 .flex-control-nav.flex-control-thumbs{
	position: absolute;
	right: auto;
	width: auto;
	top:auto;
	bottom: -17%;
	z-index: 2;
}
.clinic_slides2 .flex-control-thumbs li {
    position: relative ;
    width: 14.3% ;
    margin: 0 0 4% 2% ;
}
.clinic_slides2 .flex-control-thumbs img{
	border: 3px solid #e0e0e0 ;
}




.clinic_slides3 {
	margin-bottom:120px;
}
.clinic_slides3 .flexslider{
	float:none;
	width:100%;
}
.clinic_slides3 .flexslider li div{
	display:block;
	width:100%;
	margin-top:7%;
	margin-right:0;
	margin-left:0;
}
.clinic_slides3 .flexslider h4{
	display:block;
	width:100%;
	text-align:center;
	padding: 0;
}
.clinic_slides3 .flexslider p{
	display:block;
	text-align:center;
	padding: 0;
}
.clinic_slides3 .flex-control-nav.flex-control-thumbs{
	position: absolute;
	right: auto;
	width: auto;
	top:auto;
	bottom: -17%;
	z-index: 2;
}
.clinic_slides3 .flex-control-thumbs li {
    position: relative ;
    width: 14.3% ;
    margin: 0 0 4% 2% ;
}
.clinic_slides3 .flex-control-thumbs img{
	border: 3px solid #e0e0e0 ;
}



.clinic_slides4 {
	margin-bottom:120px;
}
.clinic_slides4 .flexslider{
	float:none;
	width:100%;
}
.clinic_slides4 .flexslider li div{
	display:block;
	position: absolute;
	bottom: auto;
	width:100%;
	margin-top:8%;
	margin-right:0;
	margin-left:0;
}
.clinic_slides4 .flexslider h4{
	display:block;
	width:100%;
	text-align:center;
	padding: 0;
}
.clinic_slides4 .flexslider p{
	display:block;
	text-align:center;
	padding: 0;
}
.clinic_slides4 .flex-control-nav.flex-control-thumbs{
	position: absolute;
	right: auto;
	width: auto;
	top:auto;
	bottom: -15%;
	z-index: 2;
}
.clinic_slides4 .flex-control-thumbs li {
    position: relative ;
    width: 14.3% ;
    margin: 0 0 4% 2% ;
}
.clinic_slides4 .flex-control-thumbs img{
	border: 3px solid #e0e0e0 ;
}




.clinic_slides5 {
	margin-bottom:120px;
}
.clinic_slides5 .flexslider{
	float:none;
	width:100%;
}
.clinic_slides5 .flexslider li div{
	display:block;
	bottom:-19%;
	width:100%;
	margin-top:0px;
	margin-right:0;
	margin-left:0;
}
.clinic_slides5 .flexslider h4{
	display:block;
	width:100%;
	text-align:center;
	padding: 0;
}
.clinic_slides5 .flexslider p{
	display:block;
	text-align:center;
	padding: 0;
}
.clinic_slides5 .flex-control-nav.flex-control-thumbs{
	position: absolute;
	right: auto;
	width: auto;
	top:auto;
	bottom: -14%;
	z-index: 2;
}
.clinic_slides5 .flex-control-thumbs li {
    position: relative ;
    width: 14.3% ;
    margin: 0 0 4% 2% ;
}
.clinic_slides5 .flex-control-thumbs img{
	border: 3px solid #e0e0e0 ;
}



/*============================================================================

	$facilities

============================================================================*/


.facilities_equip{
}
.facilities_equip dl{
	float:none;
	width:100%;
	padding:6% 10% 10%;
	box-sizing:border-box;
}
.facilities_equip_img{
	float:none;
	width:100%;
	margin-bottom:8%;
	margin-left:0;
	padding:0 10%;
	box-sizing:border-box;
}
.facilities_equip_img img{
	width:300px;
}


.facilities_equip2{
}
.facilities_equip2 dl,
.facilities_equip2 dl:nth-child(3n){
	width:90%;
	height:auto !important;
	margin:0 5% 30px;
}

.facilities_equip2 dl:nth-child(even){
	margin-right:0;
}




.facilities_equip3{
}
.facilities_equip3 dl{
	width:90%;
	height:auto !important;
	margin:0 5% 30px;
}

.facilities_equip3 dl:nth-child(even){
	margin-right:0;
}
.facilities_equip3 dl,
.facilities_equip3 dl:nth-child(3n){
	width:90%;
	height:auto !important;
	margin:0 5% 30px;
}




/*============================================================================

	$access

============================================================================*/





/*============================================================================

	$first

============================================================================*/





/*============================================================================

	$medical

============================================================================*/

.layout01 dt {
    display: block;
    width: 100%;
    padding: 3%;
    line-height: 1.5;
    font-size: 16px;
}
.layout01 dt em{
	display:block;
	margin-right:0;
	font-size: 24px;
	text-align:center;
}
.layout01 dd {
    display: block;
    width: 100%;
}
.medical_list_img {
	float: none;
}

	
	.tb03.medical05-tb th,
	.tb03.medical05-tb td{
		padding: 4%;
	}
		
	.clinic_sec1.medical05 ul li dl{
		display: block;
	}
	.clinic_sec1.medical05 ul li dt,
	.clinic_sec1.medical05 ul li dd{
		width: 100%;
	}
/*============================================================================

	.modal

============================================================================*/

.overlay {
    display: none;
    width: 100vw;
    height: 100vh;
    background: rgba(0,0,0,0.4);
    position: fixed;
    z-index: 99999;
    margin: 0 auto;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.btn_area {
    width: 80vw;
    height: 40vh;
	padding: 35px 20px 50px;
}
.modal-box {
    padding: 5%;
}
.js-modal{
	display:none;	
	}	
	
.modal{
	position: fixed;
    z-index: 99999;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    background-color: rgba(0, 0, 0, 0.3);
    padding: 20px;
    display: none;
	}
	
.modal_content{
	background-color: #fff;
    left: 50%;
    padding: 40px 25px;
    position: absolute;
    top: 50%;
    transform: translate(-50%,-50%);
    width: 80vw;
    height: 50vh;
    overflow: auto;
    font-family: "FOT-筑紫A丸ゴシック Std R";
	}	
	
	
	.close-btn{
	text-align: right;
    font-size: 20px;
	font-family: "FOT-筑紫A丸ゴシック Std R";
	}
	
	

/*============================================================================

	$news

============================================================================*/
.news_text p strong {
	display: block;
	margin-left: 0;
}





/*============================================================================

	$layout

============================================================================*/
.layout02_A{
	display: block;
}
.layout02_A dl {
	width: 100%;
}
	

	.layout03 dl{
		display: grid;
		padding: 3% 3.9% 4%;
	}
	.layout03 dt,
	.layout03 dd{
		width: 100%;
	}
	
	
	.layout05 dl{
		display: grid;
		padding: 3% 3.9% 4%;
	}
	.layout05 dt,
	.layout05 dd{
		width: 100%!important;
	}
	
	
	
	
	
.layout06 dt,
.layout06 dd{
	display:block!important;
	width: 100%!important;
}
.layout06 dd:nth-child(2){
	width:100%;
}
.layout06 dd:nth-child(3){
	width:100%;
}
.layout06 dt{
	line-height:1.5;
	font-size:16px;
}
.layout06 dt em{
	display:block;
	margin-right:0;
	line-height:1;
}
.layout06 dd{
	padding:3% 6% 2%;
}
.layout06 dd h5{
	font-size:14px;
}
.layout06 dd h5 span{
	font-size:26px;
}

.layout06 dt,
.layout06 dd:nth-child(2),
.layout06 dd:nth-child(3){
		width:auto;
}
.layout06 dt{
	padding:6% 15%
}
.layout06 dd:nth-child(3){
	border-left: none;

}

/* layout10 */
  .layout10 .flow_box{
      justify-content: space-between;
      padding: 6%;
  }
  .layout10 .flow_box::before{
      display: none;
  }
  .layout10 .flow_box .number{
      width: 42px;
      height: 42px;
      margin-right: 0;
      font-size: 20px;
  }
  .layout10 .flow_box .layout10_box{
      width: 80%;
  }
  .layout10 .flow_box .layout10_text .title{
      font-size: 14px;
      line-height: 1.4;
  }
  .layout10 .flow_box .layout10_text .title span{
      display: block;
      padding-bottom: 8px;
      font-weight: bold;
  }
  .layout10 .flow_box .layout10_text .title span::after{
      display: none;
  }
  .course_ablation::before{
      display: none;
  }

}
@media screen and (max-width:480px) {
	.feature_item {
		flex-direction: column;
	}
	/*.feature_item:nth-child(2) .fi_img,
	.feature_item:nth-child(4) .fi_img,
	.feature_item:nth-child(6) .fi_img {
		order: 1;
	}*/
	.fi_img {
		display: block;
		width: 100%;
	}
	.fi_img dl {
	width: 100%;
	margin-left: 0;
	margin-bottom: 30px;

}
	.fi_text {
		width: 100%;
		margin-bottom: 20px;
	}

	.clinic_slides1 .flex-control-nav.flex-control-thumbs {
		bottom: 15%;
	}
	.layout05_text02 dl {
	flex-direction: column-reverse;
	margin-bottom: 40px;
}
.layout05_text02 dl::after {
	display: none;
}
.layout05_text02 dl dt,
.layout05_text02 dl dd {
	width: 100%;
}
.layout05_text02 dl dd {
	margin-bottom: 10px;
}
}


@media screen and (max-width:320px) {
	
.main_open{
	position: absolute;
	top:auto;
	bottom: 50px;
	right: 0;
	left: 0;
	width: 50%;
	margin: auto;
}

/*============================================================================

	.layout

============================================================================*/

.layout02 dl{
	float:none;
	width:auto;
	height:auto !important;
	margin-right:0;
	padding: 7%;
}

	
	
.layout03 dt,
.layout03 dd{
	display:block;
}
.layout03 dt,
.layout03 dd:nth-child(2),
.layout03 dd:nth-child(3){
		width:auto;
}
.layout03 dt{
	padding:2% 20% 2%;
}
.layout03 dt img{
	margin-top:10px;
}
.layout03 dt,
.layout03 dd{
	display:block;
}
.layout03 dd{
	padding:5% 6% 2%;
}
.layout03 dd h5{
	font-size:17px;
	text-align:center;
}
.layout03 dd h5 span{
	font-size:26px;
}



.layout04 dt,
.layout04 dd{
	display:block;
}
.layout04 dt,
.layout04 dd:nth-child(2),
.layout04 dd:nth-child(3){
		width:auto;
}
.layout04 dt{
	padding:0 15% 2%;
}



.layout05 dt,
.layout05 dd{
	display:block;
}
.layout05 dd{
	padding:5% 6% 2%;
}
.layout05 dd h5{
	font-size:17px;
}
.layout05 dd h5 span{
	font-size:26px;
}

.layout05 dt,
.layout05 dd:nth-child(2),
.layout05 dd:nth-child(3){
		width:auto;
}
.layout05 dt{
	padding:6% 15%
}
.layout05 dd:nth-child(3){
	border:none;
}

}




.layout08 dl{
	float:none;
	width:auto;
	height:auto !important;
	margin-right:0;
	padding: 7%;
}
.layout08 dl::before{
	display:none;
}






}
