@charset "UTF-8";
/* CSS Document */

#mainVisual{
	background-image: url(../img/info/img_main.jpg);
}

#mainContents #sec01{
	padding: 0 0 130px;
	position: relative;
}

#mainContents #sec01 .infoBlock{
	float: left;
	width:530px;
	border-right: 1px solid #CCCCCC;
}

#mainContents #sec01 .infoText{
	text-align: left;
	line-height: 1.5em;
}

#mainContents #sec01 .infoText .orange{
	color: #E88000;
}

#mainContents #sec01 .infoBlock h3{
	text-align: left;
	font-size:18px;
	font-weight: bold;
	margin-bottom: 25px;
}

#mainContents #sec01 .infoData{
	margin-bottom: 30px;
}

#mainContents #sec01 .infoData dt{
	float: left;
	color: #E88000;
	font-weight: bold;
}

#mainContents #sec01 .infoData dd{
	margin-left: 140px;
	margin-bottom: 20px;
	text-align: left;
}

#mainContents #sec01 .infoData dd .tel{
	pointer-events: none;
	cursor: default;
}

#mainContents #sec01 .profileGroup{
	float: right;
	width:50%;
}

#mainContents #sec01 .profileGroup li{
	float: left;
	width:50%;
	text-align: left;
}

.profileGroup li .nameWrap{
	margin-bottom: 50px;
}

.profileGroup li .nameWrap .position{
	display: block;
	font-size: 14px;
	margin-bottom: 10px;
}

.profileGroup li .nameWrap .name{
	display: block;
	font-size: 22px;
	margin-bottom: 10px;
	font-weight:bold;
}

.profileGroup li .nameWrap .ruby{
	display: block;
	font-size: 14px;
}

.profileGroup li .history{
	font-size: 14px;
	line-height: 1.7em;
}

#mainContents #sec02{
	padding: 90px 0 90px;
	position: relative;
}

#mainContents #sec02 h3{
	width: 345px;
	margin: 0 auto 47px;
}

#mainContents #sec02 h3 .ruby{
	display: block;
	margin-top: 20px;
}

.treatmentGroup{
	width: 360px;
	margin: auto;
	text-align: center;
}

.treatmentGroup li{
	display: inline-block;
	margin-bottom: 20px;
	margin-right: 10px;
}

#mainContents #sec03{
	padding: 140px 0 130px;
}

#mainContents #sec03 .inner{
	width: 980px;
	margin: auto;
}

#mainContents #sec03 h3:first-child{
	width: 166px;
	margin: 0 auto 70px;
}

#mainContents #sec03 h3 .ruby{
	display: block;
	margin-top: 20px;
}

.futureList{
	margin-bottom: 140px;
}

.futureList li{
	display: inline-block;
	width: 230px;
	border: 1px solid #999999;
	box-sizing: border-box;
	padding: 25px 28px;
	text-align: center;
	margin-bottom: 10px;
	margin-right: 3px;
	letter-spacing: 1px;
}

#mainContents #sec03 .textWrap{
	width: 840px;
	font-size: 15px;
	text-align: left;
	line-height: 2em;
	margin: auto;
}

#mainContents #sec03 .textWrap_type01{
	width: 600px;
	margin:0 auto 70px;
}

#mainContents #sec03 .contentWrap{
	width:614px;
	margin:0 auto 50px;
	position: relative;
}

#mainContents #sec03 .contentWrap .textWrap{
	float: left;
	width: 50%;
	position: relative;
	z-index: 100;
}

#mainContents #sec03 .contentWrap .textWrap h4{
	font-size: 20px;
	color: #E88000;
	text-align: left;
	padding-left: 40px;
	margin-bottom: 26px;
}

#mainContents #sec03 .contentWrap .textWrap .text{
	display: block;
	background-color: #333333;
	color: #FFFFFF;
	line-height: 2em;
	padding: 40px 20px 20px;
	box-sizing: border-box;
	font-size: 15px;
	text-align: left;
}

#mainContents #sec03 .contentWrap .textWrap .text .orange{
	color: #E88000;
}

#mainContents #sec03 .contentWrap .imgWrap{
	float: right;
	position: absolute;
	top:0;
	right: 32px;
	width: 315px;
}

#mainContents #sec03 .contentWrap_type01 .textWrap{
	float: right;
	width: 50%;
	position: relative;
	z-index: 100;
}

#mainContents #sec03 .contentWrap_type01 .imgWrap{
	float: left;
	position: absolute;
	top: 76px;
	right: auto;
	left: 32px;
}

#mainContents #sec03 .contentWrap .imgWrap img{
	width: 100%;
}

#mainContents .contentsBlock .textBlock {
	width: 820px;
}

#mainContents #sec03 h3.orange{
	color: #E88000;
	font-size: 20px;
	padding-bottom: 20px;
	border-bottom: 1px solid #E88000;
	display: inline-block;
	line-height: 1.5em;
	margin-bottom: 60px;
}

#mainContents #sec03 .btnGroup{
	margin-bottom: 160px;
}

#mainContents #sec04{
	padding: 100px 0 80px;
}

#specialist{
	position: relative;
	border: 18px solid #FFE9D5;
	box-sizing: border-box;
	padding: 30px 60px;
	margin: 40px auto 66px;
	width: 840px;
}

#specialist li:first-child{
	float: left;
	width: 20%;
}

#specialist li:last-child{
	float: right;
	width: 70%;
	font-size: 15px;
	text-align: left;
	line-height: 2.2em;
	letter-spacing: 1px;
	margin-top: 25px;
}

#mainContents #sec05{
	padding: 120px 0 80px;
}

#mainContents #sec05 h3{
	width: 240px;
	margin:0 auto 45px;
}
/*
.googleMap{
	position: relative;
    padding-bottom: 56.25%;
    padding-top: 30px 80px;
    height: 0;
    overflow: hidden;
}

.googleMapWrap{
	position:relative;
	margin:auto;
	padding:0;
}

.mapCanvas {
	width: 980px;
	height: 560px;
	margin: auto;
}
*/
.googleMapWrap{
	position:relative;
	width: 980px;
	height: 560px;
	margin:auto;
	padding:0;
}

/*画面サイズが1100px以下の場合*/
@media screen and (max-width: 1100px) {
	#mainContents #sec01 .infoBlock{
		float: none;
		width:90%;
		padding-bottom: 30px;
		margin:0 auto 30px;
		border-right: none;
		border-bottom: 1px solid #CCCCCC;
	}
	
	#mainContents #sec01 .profileGroup{
		float: none;
		width:90%;
		margin: auto;
	}
		
	#mainContents #sec03 .inner {
		width: auto;
	}
    /*	
	.mapCanvas {
		width: 100%;
	}*/
	.googleMapWrap {
		width: 100%;
	}
}

@media screen and (max-width: 980px) {
	#mainContents .contentsBlock .textBlock {
		width: auto;
	}
	
	#mainContents #sec03 .textWrap {
		width: auto;
	}
	
	#specialist{
		width: auto;
	}
}


/*画面サイズが850px以下の場合*/
@media screen and (max-width: 850px) {
	#mainContents #sec01 {
		padding: 0 0 80px;
	}
	
	#mainContents #sec02 {
		padding: 50px 0;
		position: relative;
	}
	
	#mainContents #sec03 {
		padding: 50px 0;
	}
	
	#mainContents #sec04 {
		padding: 50px 0;
	}
	
	.futureList {
		margin-bottom: 60px;
	}
	
	.btnGroup {
		margin-bottom: 60px;
	}
	
	#specialist{
		padding: 30px;
	}
}

/*画面サイズが680px以下の場合*/
@media screen and (max-width: 680px) {
	#mainContents #sec01 .infoData dd .tel{
		pointer-events:auto;
		text-decoration: underline;
	}
	
	#mainContents #sec01 {
		padding: 0 0 40px;
	}
	
	#mainContents h3 img{
		width: 100%;
	}
	
	#mainContents #sec01 .infoBlock{
		width:auto;
	}
	
	#mainContents #sec01 .profileGroup{
		width:auto;
	}
	
	#mainContents #sec03 h3 .ruby {
		margin-top: 10px;
	}
	
	#mainContents #sec01 {
		padding: 0 0 40px;
	}
	
	#mainContents #sec03 .contentWrap .textWrap .text {
		padding: 20px 20px !important;
	}

	#mainContents #sec02 h3 {
		width: 270px;
		margin: 0 auto 30px;
	}
	
	#mainContents #sec03 h3:first-child  {
		width: 120px;
		margin: 0 auto 30px;
	}
	
	#mainContents #sec05 h3 {
		width: 180px;
		margin: 0 auto 30px;
	}
	
	#specialist{
		border: 10px solid #FFE9D5;
	}

	#specialist li:first-child{
		width: 35%;
	}

	#specialist li:first-child img{
		width: 100%;
	}

	#specialist li:last-child{
		width: 60%;
		line-height: 2em;
	}
	
	#mainContents #sec03 .btnGroup{
		margin:50px 0;
	}
	
	#mainContents #sec05 {
		padding: 60px 0;
	}
}

/*画面サイズが600px以下の場合*/
@media screen and (max-width: 600px) {

	#mainContents #sec01 .profileGroup li {
		float: none;
		width: auto;
		margin-bottom: 50px;
	}
	
	#mainContents #sec01 .profileGroup li:last-child{
		margin-bottom: 0;
	}
	
	.profileGroup li .nameWrap {
		margin-bottom: 20px;
	}
	
	#mainContents #sec03 .contentWrap{
		width:auto;
	}

	#mainContents #sec03 .contentWrap .textWrap{
		float: none;
		width: auto;
		margin-bottom: 10px;
	}

	#mainContents #sec03 .contentWrap .textWrap h4{
		font-size: 16px;
		padding-left: 0;
		margin-bottom: 10px;
	}

	#mainContents #sec03 .contentWrap .textWrap .text{
		display: block;
		background-color: #333333;
		color: #FFFFFF;
		line-height: 1.5em;
		padding: 40px 20px 20px;
		box-sizing: border-box;
		font-size: 15px;
		text-align: left;
	}

	#mainContents #sec03 .contentWrap .imgWrap{
		float: none;
		position: relative;
		top:0;
		right: 0;
		width: auto;
	}

	#mainContents #sec03 .contentWrap_type01 .textWrap{
		float: none;
		width: auto;
	}

	#mainContents #sec03 .contentWrap_type01 .imgWrap{
		float: none;
		position: relative;
		top: 0;
		right: auto;
		left: 0;
	}
	
	.btnGroup li a {
		display: block;
		padding: 20px 50px 20px 50px;
		width: auto;
		box-sizing: border-box;
		font-size: 16px;
		letter-spacing: 1px;
		text-align: left;
	}
}

/*画面サイズが600px以下の場合*/
@media screen and (max-width: 600px) {
	#specialist li:last-child{
		margin-top: 0;
	}
}

/*画面サイズが480px以下の場合*/
@media screen and (max-width: 480px) {
	
	#mainContents #sec01 .infoData dt{
		float: none;
		color: #E88000;
		margin-bottom: 10px;
		text-align: left;
	}

	#mainContents #sec01 .infoData dd{
		margin-left: 0;
		margin-bottom: 20px;
		text-align: left;
	}

	.treatmentGroup {
		width: auto;
		margin: auto;
	}
	
	#specialist li:first-child{
		width: 50%;
		float: none;
		margin: auto;
	}
	
	#specialist li:last-child{
		width: auto;
		float: none;
	}
}