@charset 'utf-8';

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

	当クリニックについて

   ========================================================================== */
#time {
	padding-top: 150px;
    margin-top: -150px;
}
.kono h4 small {
	font-size: 50%;
	font-weight: normal;
}
p.intro {
	text-align: center;
}
.state {
	margin-bottom: 20px;
}
.white {
	background-color: rgba(245, 245, 245, 1);
}
.white h4 span {
	background-color: rgba(245, 245, 245, 1)!important;
}
.box_txt {
    width: 50%;
  }
.box_img {
    width: 45%;
  }
.state h4 {
	margin: 0;
}


.contents_ttl div {
	padding-top: 50px;
	padding-bottom: 30px;
}
.contents_ttl h2 {
	margin-bottom: 50px!important;
}
.contents_ttl p {
  font-size: 20px;
}
.contents_ttl {
padding-bottom: 0px;
}

h3 {
	padding-top: 90px;
}

.box_img {
	text-align: left;
}

.contents_intro {
	margin-bottom: 50px;
}

.name {
	text-align: right;
	margin: 20px 0 0 auto;
}

.contents_area strong {
	display: block;
	font-weight: bold;
	font-size: 130%;
	margin: 0 auto 20px 0;
}

.photo_area {
	padding: 15px 0;
	height: auto;
	overflow: hidden;
}
.photo_area figure {
	width: 31%;
	margin-right: 2%;
	float: left;
	text-align: center;
	margin-bottom: 30px;
}

.photo_area figure:nth-of-type(3n) {
	margin-right: 0;
}

.photo_area figure img {
	width: 100%;
	margin-bottom: 5px;
}

.sign {
	margin-top: 15px;
	text-align: right;
}
.sign img {
	width: 150px;
}

/*--------------------------------
	ごあいさつ
--------------------------------*/

.top_greeting {
	padding: 100px 0 0;
	background-size: 300px auto;
}
/*.top_greeting div.sign {
		width: 17%;
		margin-top: 10px;
	}

*/
.top_greeting  strong {
	display: block;
	margin: 0 auto 30px;
	font-size: 2.4rem;
}

.top_greeting .inner p em {
	display: block;
	margin: 20px auto 0;
	font-size: 1.5rem;
}
.top_greeting .inner p{
	line-height: 200%;
	font-size: 16px;
}

.top_greeting img {
	float: left;
	width: 300px;
	height: auto;
	margin: 0 50px 25px 0;
}

/*--------------------------------
	その他リンク
--------------------------------*/

.top_etc {
	margin: 100px auto 100px;
}

.top_etc .inner > div {
	float: left;
	width: 48.5%;
	font-size: 0;
}

.top_etc .inner > div:nth-of-type(1) {
	margin: 0 3% 0 0;
}

.top_etc .inner > div a {
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
}


.top_etc .inner > div a img {
	-webkit-transition: .8s ease-out;
	transition: .8s ease-out;
}

.top_etc .inner > div a:hover img {
	transform: scale(1.1);
}

.top_etc .inner > div a p {
	position: absolute;
	top:50%;
	left:50%;
	-webkit-transform:translate(-50%, -50%);
	transform:translate(-50%, -50%);
}

.top_etc .inner > div a p span {
	display: inline-block;
	min-width: 285px;
	height: 85px;
	padding: 10px 0 0;
	font-size: 2.4rem;
	font-family: "游明朝", YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
	text-align: center;
	background-color: #fff;
	letter-spacing: 0.05em;
}

.top_etc .inner > div a p span small {
	display: block;
	font-size: 1.1rem;
	color: #a7a7a7;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", Arial, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
}

/* マップ */

.footer_map {
	position: relative;
	width: 100%;
	height: 500px;
	margin: 0 auto;
}

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

.footer_map > a {
	display: block;
	width: 300px;
	height:70px;
	padding: 18px 0 0;
	line-height: 1;
	font-size: 1.8rem;
	letter-spacing: 0.05em;
	text-align: center;
	position: absolute;
	bottom: 50px;
	left: 50%;
	-webkit-transform:translate(-50%,0);
	transform:translate(-50%, 0);
	-webkit-box-shadow: rgba(0, 0, 0, 0.3) 0px 1px 4px -1px;
	box-shadow: rgba(0, 0, 0, 0.3) 0px 1px 4px -1px;
}

.footer_map > a svg {
	width: 15px;
	height: 4px;
	position: absolute;
	right: 5%;
	top: 50%;
	margin: -2px 0 0;
}

.footer_map > a:hover svg {
	transform:translate3d(3px, 0, 0);
	fill: #ccc;
}

.footer_map > a small {
	display: block;
	margin: 5px auto 0;
	font-size: 1.1rem;
	color: #a7a7a7;
}

.footer_map > a:link,
.footer_map > a:visited { color: #000; background-color: #fff; }
.footer_map > a:hover,
.footer_map > a:active { color: #ccc; background-color: #282828; }

.acccess_how {
	display: flex;
	flex-wrap: wrap;
}
.acccess_how > div {
	width: 50%;
	margin-bottom: 30px;
}

.acccess_how img {
	width: 105px;
	height: 105px;
	display: block;
	float: left;
	margin: 0 30px 20px 0;
}
.acccess_how em {
	display: block;
	font-size: 24px;
	color: #b49c23;
	margin: 10px 0 5px 0;
}
.top_map .inner p {
	font-size: 22px;
	line-height: 150%;
	margin-bottom: 20px;
}
.top_map .inner {
padding-top: 30px;
padding-bottom: 30px;
}
.acccess_how {
	display: flex;
	flex-wrap: wrap;
}
.acccess_how > div {
	width: 50%;
	margin-bottom: 30px;
}

.acccess_how img {
	width: 105px;
	height: 105px;
	display: block;
	float: left;
	margin: 0 30px 20px 0;
}
.acccess_how em {
	display: block;
	font-size: 24px;
	color: #b49c23;
	margin: 10px 0 5px 0;
}
.top_map .inner p {
	font-size: 22px;
	line-height: 150%;
	margin-bottom: 20px;
}
.top_map .inner {
padding-top: 30px;
padding-bottom: 30px;
}
table.data {
	width: 100%;
    border-collapse:  collapse;
	text-align: center;
	margin-bottom: 30px;
}
table.data td, table.data tr {
	border: solid 1px #b49c23;
	padding: 20px 0;
}
.card {
	display: block;
	width: 300px;
	float: right;
	margin: 0 0 0 30px;
}

/* ============================== SP ============================== */

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

	h3 {
		padding-top: 70px;
	}
	
	.contents_area strong {
		font-size: 1.5rem;
	}
	.contents_ttl p {
  font-size: 14px;
		width: 90%;
		margin: 0 auto;
}
	table.data {
	font-size: 12px;
}
table.data td, table.data tr {
	padding: 10px 0;
}
.card {
	display: block;
	width: 100%;
	float: none;
	margin: 0 0 30px 0;
}
	.photo_area figure {
		width: 100%;
		margin-right: 0;
		text-align: center;
		margin-bottom: 20px;
	}

	.sign {
		width: 40%;
		margin-left: auto;
	}
	/*--------------------------------
		ごあいさつ
	--------------------------------*/
	
	.top_greeting {
		padding: 50px 0 0;
		background-size: 110px auto;
	}
	
	.top_greeting .inner {
		max-width: 100%;
	}
	
	.top_greeting .inner strong {
		display: block;
		margin: 0 auto 20px;
		font-size: 1.8rem;
	}
	
	.top_greeting .inner p {
	}
		.top_greeting .inner img {
			width: 45%;
			margin: 0 20px 15px 0;
	}

	.top_greeting .inner p em {
		margin: 30px auto 0;
		font-size: 1.4rem;
	}
/*--------------------------------
		その他リンク
	--------------------------------*/
	
	.top_etc {
		margin: 50px auto 100px;
	}
	
	.top_etc .inner > div {
		float: none;
		width: 100%;
	}
	
	/* .top_etc .inner > div:nth-of-type(1) {
		margin: 0 auto 30px;
	} */
	
	.top_etc .inner > div a:hover img {
		transform: scale(1);
	}

	.top_etc .inner > div a p span {
		min-width: 180px;
		height: 55px;
		padding: 10px 0 0;
		font-size: 1.8rem;
		line-height: 1.3;
	}
	
	.top_etc .inner > div a p span small {
		font-size: 1rem;
	}
	
/* マップ */
	
.footer_map {
		height: 300px;
		margin: 0 auto;
	}
	
	.footer_map > a {
		width: 200px;
		height: 55px;
		padding: 13px 0 0;
		font-size: 1.6rem;
		letter-spacing: 0.05em;
		bottom: 20px;
	}
	
	.footer_map > a:hover svg {
		transform:translate3d(0, 0, 0);
		fill: #000;
	}
	
	.footer_map > a small {
		margin: 3px auto 0;
		font-size: 1rem;
	}
	
	.footer_map > a:link,
	.footer_map > a:visited { color: #000; background-color: #fff; }
	.footer_map > a:hover,
	.footer_map > a:active { color: #000; background-color: #fff; }
	

.acccess_how > div {
	width: 100%;
	margin-bottom: 30px;
	display: flex;
}
.acccess_how div {
	width: 100%;
}
.acccess_how img {
	width: 60px;
	height: 60px;
	display: block;
	margin: 0 15px 0 0;
}
.acccess_how em {
	font-size: 15px;
	color: #b49c23;
	margin: 10px 0 5px 0;
}
.top_map .inner p {
	font-size: 14px;
	line-height: 150%;
	margin-bottom: 20px;
}
.top_map .inner {
 padding-top: 30px;
	padding-bottom: 50px;}
	
	
.box_txt {
    width: 100%!important;
  }
.box_img {
    width: 100%!important;
  }
	.doc {
		padding: 0!important;
		margin-bottom: 20px;
	}
	#time {
	padding-top: 100px;
    margin-top: -100px;
}
	

}






