
/* 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;
}


.anchor{
	display: block;
	margin-top: -80px;
	padding-top: 80px;
}
*[id*="sec"] {
  margin-top: -80px !important;
  padding-top: 80px !important;
}
	
/*============================================================================

	header

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

header {
 display: none;
}
/*============================================================================

	nav

============================================================================*/
.fixed {
 width: 100%;
}
.fixed li a {
 padding: 0;
}
.fixed li {
 display: block;
}
.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: #1c4872;
 height: 54px;
 line-height: 54px;
 margin: 4px;
 border-radius: 5px;
 font-family: "Sawarabi Mincho";
 font-size: 4vw;
 border: 1px solid #1c4872;
}
.sp_navi_btn_area li i {
 position: relative;
 font-size: 1.3em !important;
 top: 2px;
 left: -5px;
 color: #1c4872;
}
.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;
 margin-bottom: 30px;
}
.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;
 margin-left: 0;
}
.sp_navi h1 span, .sp_navi h1 img {
 display: block;
 width: 320px;
 height: 56px;
 margin: auto;
 padding-top: 8px;
}
.sp_navi h1 img {
 z-index: 9999;
 position: relative;
}
.sp_navi dl {
 background-color: #fff;
}
.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.0em;
 background-color: #89a4be;
 border-bottom: solid 2px #fff;
 font-family: "Rounded Mplus 1c";
 font-weight: 500;
 line-height: 50px;
}
.sp_navi_children li a {
 background: #637e98 !important;
}
.sp_navi_parent > div::after {
 position: absolute;
 right: 17px;
 content: "\f067";
 font-family: FontAwesome;
 font-size: 1.0em;
}
.sp_navi_parent_active > div::after {
 position: absolute;
 right: 17px;
 content: "\f068";
 font-family: FontAwesome;
 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: rgba(17, 73, 126, 0.5);
}
.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-color: rgba(17, 73, 126, 0.5);
}
.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: 62px;
}
#mainvisual .inner {
 width: auto;
 height: inherit;
}
/* 下層ページヘッドライン */
#mainvisual h2 {
 font-size: 22px;
}
.mainvisual_headline {
 padding-top: 40px;
}
/* トップページキャッチフレーズ */
.main_catch {
 position: absolute;
 top: 50px;
 width: 100%;
 text-align: center;
}
.main_catch h2 {
 margin-bottom: 10px;
 font-size: 22px;
}
.main_catch p {
 font-size: 15px;
}
.main_open {
 position: absolute;
 top: auto;
 bottom: 50px;
 right: 0;
 left: 0;
 width: 200px;
 margin: auto;
}

	
/* バナー */

.mainvisual_bnr_outer{
	width: auto;
	position: relative;
	margin: 0 auto;
	z-index: 1;
}
.mainvisual_bnr{
	position: absolute;
    flex-wrap: wrap;
    justify-content: center;
	top: 390px;
	/*top: 370px;*/
	/*bottom: -480px;*/
	bottom: unset;
	left: 0;
	right: 0;
	width: auto;
    max-width: 350px;
    margin: 0 auto;
	text-align: center;
	transform: translate(0%, 0%);
}
.mainvisual_bnr2{
	position: absolute;
	top: 180px;
	left: 0;
	right: 0;
	bottom: unset;
	text-align: right;
}
    .mainvisual_bnr a{
        display: inline-block;
        width: 49%;
    }
    .mainvisual_bnr .sp_top_online a{
        width: 100%;
    }
.mainvisual_bnr img,
.mainvisual_bnr2 img{
	width: 100%;
    height: auto;
}
.sp_top_bengoshi{
	margin-top:10px;
	text-align: center;
	margin-bottom: 20px;
	}
.sp_top_bengoshi p{
		
	
	background-color:#fff;
	padding:7px;
	margin-top:5px;
	border:3px double orange;
	font-size: 10px;
	}
.sponly{
	display: block;
	margin: 0 auto;
	text-align: center;
}
	
.sponly_mainvisual_bnr{
		margin: -140px 0 0 0;
		right:unset;
	}
.sponly_mainvisual_bnr img{
		margin: 0 auto;
	}

	
.mainvisual_banner {
 width: 100%;
 left: auto;
 bottom: -91px;
 padding: 5%;
 box-sizing: border-box;
 background: url(../images/sp_skin_banner.png);
 background-color: #163a5b;
 background-size: cover;
 border-radius: 5px;
 height: auto;
 z-index: 99;
}
.mainvisual_banner br {
 display: none;
}
.bnr_company {
 position: absolute;
 top: auto;
 bottom: 40px;
 right: 0;
 left: 0;
 width: 220px;
 margin: auto;
}
.bnr_company ul li {
 width: 220px;
}
.bnr_antiaging.sp {
 position: absolute;
 top: 152px;
 right: 0;
 left: 0;
 margin: auto;
 width: 220px;
}
/*
  .mainvisual_boder01,.mainvisual_border02{
    border-top: none;
  }
*/
  
.scroll {
    display: none;
/*
 bottom: 55px;
 left: 6px;
*/
}
/*
.scroll p {
 margin-top: 30px;
 margin-left: -3px;
 -webkit-writing-mode: vertical-rl;
 -moz-writing-mode: vertical-rl;
 -ms-writing-mode: tb-rl;
 -ms-writing-mode: vertical-rl;
 writing-mode: vertical-rl;
}
*/
/*============================================================================

	#contents

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

.box1 {
 width: auto;
 margin: 0 6% 40px;
}
.box2 {
 width: auto;
 margin: 0 6% 40px !important;
}
.box2:last-child {
 margin-bottom: 0;
}
.flex_box {
 flex-wrap: wrap;
}
.flex_box02 {
 flex-wrap: wrap;
}
.flex_box div, .flex_box02 div {
 text-align: center;
}
.flex_box div:first-child, .flex_box02 div:first-child {
 margin-bottom: 20px;
}
.oder {
 display: flex;
 flex-wrap: wrap;
}
.oder01 {
 order: 1;
}
.oder02 {
 order: 2;
}
#contents {
 width: auto;
}
#contents_left {
 width: auto;
 float: none;
 margin-right: 0;
}
#contents_right {
 width: auto;
 padding: 0 6%;
 float: none;
}
.flex_box .w025par, .flex_box .w70par {
 width: 100%;
}
.flex_box .w025par h5.tit01 br {
 display: none;
}
.flex_box .w025par p {
 text-align: center;
}
.flex_box02 div:first-child.mr30 {
 margin-right: 0;
}
/*============================================================================

	fotter

============================================================================*/
.footer_info {
 width: auto;
 flex-wrap: wrap;
 padding-top: 20px;
 margin: 0 6%;
}
.footer_info .inner {
 width: 88%;
 padding: 40px 6%;
}
.footer_info dl {
 float: none;
}
.footer_info dl dt {
 box-sizing: border-box;
 width: 30%;
}
.footer_info_logo, .footer_info_logo img {
 width: 310px;
 height: 60px;
}
.footer_info dl dd {
 width: 70%;
}
.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;
}
	.footer_tel_note{
		width: 100%;
	}
.footer_tel {
 width: 100%;
 height: 100px /*80px*/;
 flex-direction: column;
 padding: 0 12px;
 background-size: contain;
 text-align: center;
}
.footer_tel p:first-child {
 top: 13px;
}
.footer_tel p:first-child span {
 display: inline;
 padding-left: 10px;
}
.footer_cards {
 width: 100%;
}
.schedule_note {
  font-size: 15px;
}
.schedule_note li {
  margin-right: inherit;
line-height: 1.3;
}
.copy {
 margin-top: 35px;
}
.pagetop {
 z-index: 9;
 bottom: -74px;
}
.footer_info .bnr_caution{
  margin-top: 10px;
}
	.schedule dl dt{
		width: 30%;
		margin-right: 10px;
	}
	.schedule dl dd{
		width: 60%;
	}
	.schedule p {
	}
	
/*============================================================================

	$top

============================================================================*/
	.top_concept .text {
		text-align: left;
		width: 90%;
	}
.top_news {
 margin-top: 0px;
 /*padding-top: 200px;*/
 padding-top: 100px;
  /*padding-top: 270px;*/
	/*padding-top: 450px;*//*590px620px;*/
}
.top_news .box1 {
 width: 100%;
 flex-wrap: wrap;
 flex-direction: column;
}
.top_news .box1::before {
 width: 190px;
 height: 190px;
 right: 0;
 left: 0;
 top: -39px;
 margin: auto;
}
.news_left {
 margin-bottom: 20px;
}
.top_news h3.tit01 {
 padding: 10px 0 0 0px;
}
.top_news_flame {
/*
	width: 370px;
	height: 290px;
	margin: 0 6%;
	padding: 8% 9%;
*/
 width: 90%;
 height: 290px;
 margin: 0 6%;
 padding: 12% 6%;
 box-sizing: border-box;
 background: url(../images/sp_top_news_flame_bg.png) no-repeat center;
 background-size: contain;
}
.scroll_area {
 height: 235px;
}
.features_list dl, .features_list:nth-child(2) dl, .features_list:nth-child(3) dl, .features_list:last-child dl {
 width: 90%;
 margin: 50px auto 0;
 background-size: contain;
}
.features_list:first-child, .features_list:nth-child(3), .features_list:nth-child(4) {
 width: 100%;
 margin: auto;
 padding-left: 0;
}
.features_list:nth-child(2), .features_list:last-child {
 width: 100%;
 margin: auto;
 padding-right: 0;
}
.features_list:nth-child(5), .features_list:nth-child(6) {
 width: 100%;
 margin: auto;
 padding-right: 0;
}
.features_list dt {
 font-size: 6vw;
}
.top_gallery h3.tit01 {
 padding-top: 34px;
 height: 200px;
}
.top_doctor .box1 {
 flex-wrap: wrap;
 margin: 0 6%;
 text-align: center;
}
.top_doctor h3 {
 margin-top: -13px;
}
.top_doctor .top_doctor_left .text {
 width: auto;
}
.doctor_career {
 padding: 8%;
 text-align: left;
}
.doctor_carr dl {
 width: 100%;
}
.doctor_carr dt, .doctor_carr dd {
 float: none;
}
.doctor_carr dd {
 padding-left: 20px;
}
.doctor_career .list01 li {
}
.doctor_career, .doctor_item {
 width: auto;
}
.top_doctor .top_doctor_left .text {
/*
 margin-top: 40px;
 padding: 8%;
*/
 text-align: left;
}
.doctor_item {
 margin: 20px auto;
}
.doctor_greet02 {
 margin: 80px 6% 0;
}
.doctor_greet02_right {
 width: 100%;
}
.doctor_greet02 p.doctor2_tit {
 margin: 20px 0 0 0;
}

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

	$breadcrumb ぱんくず

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

.breadcrumb {
 width: 92%;
 margin: -10px 4% 40px;
}
.breadcrumb li {
 display: inline-block;
}
.top_features .box1 {
 width: auto;
 min-width: auto;
}
.features_list {
 width: auto;
}
/*============================================================================

	$共通

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

#contents {
 padding-top: 60px;
 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 {
 font-weight: normal;
 padding: 1% 2%;
}
.tb01 th {
 font-size: 12.5px;
}
.tb01 td {
 font-size: 11px;
}
.tb01 tr:last-child th, .tb01 tr:last-child td {
 padding-bottom: 0;
}
.tb03, .tb03 th {
 white-space: inherit;
}
.tb03.w075par {
 width: 100%;
}
.medical_tb tr th {
 padding: 1% 2%;
}
.tb03 td, .tb03 th {
 padding: 2% 5%;
}
/*
.tb03 td, .tb03 th {
 padding: 1% 2%;
}
*/
.tb04, .tb04 th {
 white-space: normal;
}
.tb04 th {
 font-size: 13px;
}
.tb04 td, .tb04 th {
 padding: 2%;
}
/* ボタン */
.btn_jp a {
 line-height: 1.5;
 text-align: left;
}
/* アンカーリンク */
.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: auto;
 text-align: center;
}
.img_fr img {
 margin-bottom: 15px;
}
.list09 li {
 padding-left: 0;
}
/* リスト */
.list02 {
 margin-bottom: 20px !important;
}
/*============================================================================

	$doctor

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

/* ごあいさつ */
.doctor_greet {
	margin-top: -60px;
}
.doctor_greet .text {
 float: none;
 width: auto;
}
/* 経歴、資格 */
.doctor_carr_sec1 {
 float: none;
 width: auto;
 margin-right: 0;
 margin-bottom: 30px;
}
/*============================================================================

	$clinic

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

/* 医院概要 */
.clinic_sec1 dt {
 width: 30%;
 text-align: left;
}
.clinic_sec1 dd {
 width: 70%;
 text-align: left;
}
.clinic_sec1 .schedule .tb01 {
 width: 100%;
}
.clinic_sec1 {
 width: 100%;
}
.clinic_sec1 li:last-child dt, .clinic_sec1 li:last-child dd {
 display: block;
 width: 100%;
}
.clinic_sec1 li:last-child dt {
 margin-bottom: 12px;
}
.clinic_img {
 margin: auto;
}
/* 院内スライド */
.clinic_slides1 {
 margin-bottom: 20px;
}
.clinic_slides1 .flexslider {
 float: none;
 width: 100%;
}
.clinic_slides1 .flexslider li div {
 display: block;
 margin-top: 70px;
 margin-left: 0;
 text-align: center;
}
.clinic_slides1 .flexslider p {
 display: block;
}
.clinic_slides1 .flex-control-nav.flex-control-thumbs {
 position: absolute;
 right: auto;
 width: auto;
 top: auto;
 bottom: 14%;
 z-index: 2;
}
.clinic_slides1 .flex-control-thumbs li {
 position: relative;
 width: 14.3%;
 margin: 0 0 1% 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;
}
	
	.clinic_sec1 li:last-child .schedule_230529 dt {
		display: inherit;
    width: 40%;
		margin-right: 0;
	}
	.clinic_sec1 li:last-child .schedule_230529 dd {
		width: 60%;
	}
/*============================================================================

	$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

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

.img_fr img {
 margin-bottom: 15px;
 margin-left: 0;
}
/*=================================
　.layout
=================================*/
.layout01 dl, .layout01 dt, .layout01 dd {
 display: block;
 width: auto;
}
.layout01 dt em {
 display: inline-block !important;
}
.layout01 dt {
 padding: 10px 0;
 line-height: 1.5;
 font-size: 20px;
}
.layout02 dl, .layout02 dt, .layout02 dd {
 display: block;
 width: 100% !important;
 height: auto !important;
}
.layout03 dl, .layout03 dt, .layout03 dd {
 display: block;
 width: auto;
 padding: 20px;
 box-sizing: border-box;
}
.layout03 dt {
 text-align: center;
}
.layout03 dt img {
 width: 70%;
}
.layout04 dl, .layout04 dt, .layout04 dd {
 display: block;
 width: auto;
 padding: 20px;
 box-sizing: border-box;
}
.layout04 dt {
 text-align: center;
}
.layout04 dt img {
 width: 70%;
}
.layout05 dl, .layout05 dt, .layout05 dd {
 display: block;
 width: auto!important;
}
.layout05 dl {
 padding: 8%;
 box-sizing: border-box;
}
.layout05 dt {
 text-align: center;
 margin-bottom: 20px;
}
.layout05 dt strong {
 display: block;
}
.layout05 dt img {
 width: 70%;
}
.layout05 dd:nth-child(3) {
 padding-top: 16px;
 border: none;
 border-top: 2px solid #fff;
}
.layout06 dl, .layout06 dt, .layout06 dd {
 display: block;
 width: 100% !important;
}
.layout06 dt {
 margin-bottom: 15px;
}
.layout06 dd:nth-child(3) {
 border: none;
}
.layout06 dt {
 text-align: center;
}
.layout06 dt em {
 position: relative;
 display: inline-block;
 padding: 10px 0;
 top: 5px;
}
.medical_order06 dl {
 padding: 5%;
}
.layout08 {
 flex-wrap: wrap;
}
.layout08 dl {
 width: 100%;
 margin-right: 0;
 padding: 5%;
}
.layout08 dl::after {
 width: 100%;
 height: 100%;
}
.layout08 dl::before {
 top: auto;
 bottom: -15px;
 right: 0;
 left: 0;
 text-align: center;
 transform: rotate(135deg);
}
	
p.point{
	line-height: 1.5;
}

	
.madical_smoking_list01 li span {
    font-size: 17px !important;
}	
.medical_well_l {
	position: relative;
    width: auto;
}
.medical_smoking_box {
    margin-bottom: 0px;
}
.medical_well_l:after {
    width: 100%;
    height: 100%;
	overflow-x: hidden
}	
	



.houmon_flex{
	display: block;
}
.houmon_flex_img{
	width: auto;
	margin-bottom: 15px;
}
.houmon_flex_table{
	width: auto;
}

	

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

	$news

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

iframe{
    width: 100%;
    height: 100%;
}


	.sp_left {
		text-align: left!important;
	}


#mainvisual.medical42 h2 {
	font-size: 18px;
	line-height: 1.6;
}



}

@media screen and (max-width:320px) {
.main_open {
 position: absolute;
 top: auto;
 bottom: 50px;
 right: 0;
 left: 0;
 width: 50%;
 margin: auto;
}
.features_list dl {
 height: auto;
 background-image: none !important;
 background-color: #0000004d !important;
}
	h3.tit01 span{
		font-size: 21px;
	}
/*============================================================================

	.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;
}
.layout06 dt, .layout06 dd {
 display: block;
}
.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: 15px;
}
.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;
}
.layout08 dl {
 float: none;
 width: auto;
 height: auto !important;
 margin-right: 0;
 padding: 7%;
}
}

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

	$iphone5

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

@media screen and (min-width:320px) and (max-width:374px) {
.footer_info_logo, .footer_info_logo img {
 width: 270px;
 height: 55px;
}
.btn04 {
 width: 280px;
}
.tb01 td em {
 font-size: 16px;
}
}

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

	$スマホ横画面

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

/*@media (min-width: 600px) and (max-width: 800px) {*/
@media (min-width: 600px) and (max-width: 1400px) {
/* style */

body, header, footer {
 min-width: 1400px;
}
.features_list:first-child {
 margin-left: calc(50% - 700px);
 padding-left: calc(700px - 50%);
}
.features_list:nth-child(2) {
 margin-right: calc(50% - 700px);
 padding-right: calc(700px - 50%);
}
.features_list:nth-child(3) {
 margin-left: calc(50% - 700px);
 padding-left: calc(700px - 50%);
}
.features_list:nth-child(4) {
 margin-right: calc(50% - 700px);
 padding-right: calc(700px - 50%);
}
.features_list:nth-child(5) {
margin-left: calc(50% - 700px);
    padding-left: calc(700px - 50%);
}
.features_list:nth-child(6) {
 margin-right: calc(50% - 700px);
 padding-right: calc(700px - 50%);
}
}


@media (min-width: 600px) and (max-width: 640px) {
.features_list dl {
	background-position: center!important;
}
}