﻿/*
-------------------------------------------------------

 initialization

-------------------------------------------------------
*/
body, div, dl, dt, dd, ul, ol, li,
h1, h2, h3, h4, h5, h6,
object, iframe, pre, code, p, blockquote,
form, fieldset, legend,
table, th, td, caption, tbody, tfoot, thead,
article, aside, figure, footer, header,
hgroup, menu, nav, section, audio, video, canvas {
	margin: 0;
	padding: 0;}
article, aside, figure, figcaption,footer,
h1, h2, h3, h4, h5, h6, header, hgroup, menu, nav, section {
	display: block;}
li { list-style: none;}
table,tr,th,td {border-collapse: collapse;}
img { vertical-align: top;border: none;}

/*
-------------------------------------------------------

 basic

-------------------------------------------------------
*/
html { overflow-y: scroll;}
body {
	color: #1f1f1f;
	font-family: '游ゴシック体', 'Yu Gothic', YuGothic, sans-serif;
	font-weight: 500;
	font-size: 16px;
	line-height: 1.0;
	*font-size: 100%;
	word-break: break-all;
	 -webkit-text-size-adjust: 100%;}
@media all and (-ms-high-contrast:none)
{ body
	{ font-family: 'メイリオ', 'Meiryo', sans-serif;}
}
html.osMac body, body.osMac {
	font-family: '游ゴシック体', 'Yu Gothic', YuGothic, sans-serif;}
body.en {
	word-break: normal;}
a, a img {
	-webkit-transition: all 0.1s ease;
	-moz-transition: all 0.1s ease;
	-o-transition: all 0.1s ease;
	transition: all  0.1s ease;
	outline: none;}
a:link, a:visited { text-decoration: none;}
a:hover, a:active  { text-decoration: none;}
a:hover img {
	opacity: 0.8;
	filter: alpha(opacity=80);}
.fix:after{
	content: ".";
	display: block;
	height: 0;
	font-size:0;
	clear: both;
	visibility:hidden;}
.fix{
	display: inline-block;}
* html .fix{
	height: 1%;}
.fix{
	display:block;}
* {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;}
.fl { float: left;}
.fr { float: right;}
p { background-image: url("../img/touka.gif");}
img {
	max-width: 100%;
	height: auto;}
em,i { font-style: normal;}
.mt5{margin-top: 5px;}
.mt10{margin-top: 10px;}
.txt-c{text-align: center;}
.txt-l{text-align: left;}
.txt-r{text-align: right;}
/* 改行 */
.pcVer { display:block;}
.spVer { display:none;}
@media only screen and (max-width:767px){
	.pcVer { display: none;}
	.spVer { display: block;}
}
.flex-c{
	display: flex;
	justify-content: center;
}
/*	記事一覧：category
===============================================================*/
.news_list {
	width: 100%;
	display: block;}
.news_list li {
	overflow: hidden;
	border: 1px solid #a3acb1;
	border-radius: 8px;}
.news_list li + li {
	margin-top: 20px;}
.news_list li a {
	display: flex;
	align-items: center;
	padding: 30px 50px;
	background: url('../img/icon_link_type_01_h_off.png') no-repeat right 30px center #fff;}
.news_list li a:hover {
	background-color: #eee;}
.news_list li a p + p {
	margin-left: 30px;}
.news_list li a .date {
	font-weight: 700;
	font-size: 14px;
	color: #798186;}
.news_list li a .cate {
	width: 80px;
	padding: 5px 0;
	border-radius: 60px;
	font-size: 12px;
	font-weight: 700;
	color: #fff;
	letter-spacing: 1px;}
.postbox .news_list li a .cate {
	display: none;}
.news_list li a .title {
	font-size: 14px;
	color: #1f1f1f;
	flex: 1;
	line-height: 1.6;
	text-align: left;}
.news_list li a .cate.news {
	background: #0070bb;}
.news_list li a .cate.pr {
	background: #199e91;}

@media (max-width: 767px) {
/*----------------------------------------------------------*/
.news_list li a {
	flex-wrap: wrap;
	align-items: center;
	padding: 30px 50px 30px 30px;
	background: url('../img/icon_link_type_01_h_sp_off.png') no-repeat right 30px center #fff;}
.news_list li a p + p {
	margin-left: 30px;}
.news_list li a .date {
	font-size: 18px;}
.news_list li a .cate {
	width: 80px;
	padding: 7px 10px;
	font-size: 16px;}
.news_list li a .title {
	width: 100%;
	margin-left: 0;
	padding-right: 30px;
	margin-top: 15px;
	line-height: 1.6;
	text-align: left;
	font-size: 22px;
    flex: initial;}
/*----------------------------------------------------------*/
}


/*	クリニック一覧：clinic
===============================================================*/
.clinic.area {
	min-width: 1200px;
	margin-bottom: 80px;
	padding-top: 80px;
	text-align: center;
}

[id="footer"] .clinic.area {
	padding-top: 0;
}

@media (max-width: 767px) {
	[id="footer"] .clinic.area {
		padding-top: 20px;
	}
}

.clinic.area .h2_txt {
	margin-bottom: 20px;
	font-size: 12px;
	font-weight: 700;
	color: #0070bb;
}

.clinic.area .flex {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-top: 50px;
}

.clinic.area .map{
	--ff_sans: "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
	position: relative;
	width: 50%;
}

.clinic.area .map-figure{aspect-ratio:10 / 8;display:flex;align-items:flex-start;}
.clinic.area .map-item{position:absolute;font-family:var(--ff_sans);}
.clinic.area .map-item.-hokkaido{top:15%;right:42.5%;}
.clinic.area .map-item.-kantou{bottom:29%;left:60%;}
.clinic.area .map-item.-tokyo{top:49.5%;right:7%;}
.clinic.area .map-item.-tyubu{bottom:17.5%;left:44.5%;}
.clinic.area .map-item.-kansai{bottom:12%;left:20%;}
.clinic.area .map-item.-chugoku{top:35%;right:60%;}
.clinic.area .map-item.-kyushu{bottom:0;left:0;}
.clinic.area .map-item a{display:block;padding:10px 15px;border:2px solid;border-radius:8px;font-weight:700;font-size:16px;text-decoration:none;}
.clinic.area .map-item a:hover{color:#fff!important;}
@media (max-width: 767px){
	.clinic.area .map{
		width: 100%;
	}
  .clinic.area .map-item a{padding:0.66666em;border-radius:0.4em;font-size:calc(20vw / 6.4);}
	.clinic.area .map-item.-kantou{bottom:27%;left:65%;}
	.clinic.area .map-item.-tokyo{right:6%;}
  .clinic.area .map-item.-tyubu{bottom:15%;left:45%;}
  .clinic.area .map-item.-kansai{bottom:12%;left:21%;}
  .clinic.area .map-item.-chugoku{top:30%;}
  .clinic.area .map-item.-hokkaido{top:10%;}
}
.clinic.area .map-item a{border-color:var(--map-area-color);color:var(--map-area-color);}
.clinic.area .map-item a:hover{background:var(--map-area-color);}
.clinic.area .map-item.-hokkaido{--map-area-color:#5384c4;}
.clinic.area .map-item.-kantou{--map-area-color:#f8b62c;}
.clinic.area .map-item.-tokyo{--map-area-color:#c84643;}
.clinic.area .map-item.-kansai{--map-area-color:#4dac8e;}
.clinic.area .map-item.-tyubu{--map-area-color:#888;}
.clinic.area .map-item.-chugoku{--map-area-color:#9a84bc;}
.clinic.area .map-item.-kyushu{--map-area-color:#ea5514;}

.clinic.area .flex .list {
	width: 465px;
	text-align: left;
}

.clinic.area .flex .list dl dt {
	margin-bottom: 10px;
	padding: 14px 20px;
	font-size: 16px;
	font-weight: 700;
	color: #fff;
}

.clinic.area .flex .list dl dt.kantou {
	background: #f8b62c;
}

.clinic.area .flex .list dl dt.tokyo {
	background: #c84643;
}

.clinic.area .flex .list dl dt.hokkaido {
	background: #5384c4;
}

.clinic.area .flex .list dl dt.tyubu {
	background: #888888;
}

.clinic.area .flex .list dl dt.kansai {
	background: #4dac8e;
}

.clinic.area .flex .list dl dt.chugoku {
	background: #9a84bc;
}

.clinic.area .flex .list dl dt.kyushu {
	background: #ea5514;
}

.clinic.area .flex .list dl dd+dt {
	margin-top: 20px;
}

.clinic.area .flex .list dl dd ul {
	display: flex;
	flex-wrap: wrap;
	gap: 0.75em 2%;
}

.clinic.area .flex .list dl dd ul li {
	width: 23.5%;
}


.clinic.area .flex .list dl dd ul li a {
	display: block;
	padding: 12px 5px;
	border-radius: 4px;
	background: url('../img/icon_link_type_01_h_off.png') no-repeat right 4px center #f6f7f7;
	font-size: 14px;
	color: #1f1f1f;
}

.clinic.area .flex .list dl dd ul li a:hover {
	background-color: #eee;
}

.clinic.all {
	min-width: 1200px;
	margin-bottom: 80px;
	text-align: center;
}

.clinic.all .h2_txt {
	margin-bottom: 20px;
	font-size: 12px;
	font-weight: 700;
	color: #0070bb;
}

.clinic.all dl dt {
	padding: 18px 0;
	font-weight: 700;
	font-size: 18px;
	letter-spacing: 1px;
	color: #fff;
}

.clinic.all dl {
	margin-top: 40px;
}

.clinic.all dl dt {
	margin-bottom: 50px;
}

.clinic.all dl dt.kantou {
	background: #f8b62c;
}

.clinic.all dl dt.tokyo {
	background: #c84643;
}

.clinic.all dl dt.hokkaido {
	background: #5384c4;
}

.clinic.all dl dt.kansai {
	background: #4dac8e;
}
.clinic.all dl dt.tyubu {
	background: #888888;
}
.clinic.all dl dt.chugoku {
	background: #9a84bc;
}

.clinic.all dl dt.kyushu {
	background: #ea5514;
}

.clinic.all dl dd+dt {
	margin-top: 80px;
}

.clinic.all dl dd ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.clinic.all dl dd ul li {
	width: 48%;
	margin-top: 50px;
}

.clinic.all dl dd ul li:nth-child(-n+2) {
	margin-top: 0;
}

.clinic.all dl dd ul li a {
	display: block;
	text-align: right;
	color: #1f1f1f;
}

.clinic.all dl dd ul li a div.flex {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.clinic.all dl dd ul li a div.flex>figure {
	width: 160px;
	border-radius: 3PX;
	overflow: hidden;
}

.clinic.all dl dd ul li a div.flex>div {
	width: 300px;
}

.clinic.all dl dd ul li a h3 {
	text-align: left;
	margin-bottom: 20px;
	line-height: 1.4;
}

.clinic.all dl dd ul li a p {
	text-align: left;
	line-height: 2.2;
	font-size: 14px;
}

.clinic.all dl dd ul li a p span {
	font-weight: 700;
}

.clinic.all dl dd ul li a span.link_type_01 {
	display: inline-block;
	margin-top: 20px;
	width: 200px;
	padding-left: 50px;
	text-align: left;
	border-color: #bcc0c3;
	background-image: url('../img/icon_link_type_01_h_off.png');
	color: #7c8489;
}

.clinic.all dl dd ul li a:hover span.link_type_01 {
	color: #fff;
	background-color: #bcc0c3;
	background-image: url('../img/icon_link_type_01_h_on.png');
}

.clinic.time {
	min-width: 1200px;
	margin-bottom: 80px;
	text-align: center;
}

.clinic.time {
	min-width: 1200px;
	margin-bottom: 80px;
	text-align: center;
}

.clinic.time .h2_txt {
	margin-bottom: 20px;
	font-size: 12px;
	font-weight: 700;
	color: #0070bb;
}

.clinic.time table {
	width: 100%;
	line-height: 2.0;
	border: solid #1f1f1f;
	border-width: 1px 0;
}

.clinic.time table thead {
	background: #f5f5f6;
	border-bottom: 1px dashed #1f1f1f;
}

.clinic.time table tbody th {
	background: #f5f5f6;
}

.clinic.time table th {
	white-space: nowrap;
	width: 180px;
	color: #0070bb;
}

.clinic.time table td {
	width: 150px;
	padding: 25px 15px;
	border-left: 1px solid #1f1f1f;
	font-weight: 700;
}

.clinic.time p:not([class]) {
	text-align: left;
	line-height: 1.6;
	margin-top: 20px;
}


@media (max-width: 767px) {

	/*----------------------------------------------------------*/
	.clinic.area {
		min-width: 100%;
		padding: 80px 30px 0;
		margin-bottom: 100px;
	}

	.clinic.area .h2_txt {
		font-size: 22px;
	}

	.clinic.area .flex {
		display: block;
	}

	.clinic.area .flex .list {
		width: 100%;
		margin-top: 120px;
	}

	.clinic.area .flex .list dl dt {
		padding: 20px;
		margin-bottom: 15px;
		font-size: 24px;
	}

	.clinic.area .flex .list dl dd+dt {
		margin-top: 30px;
	}

	.clinic.area .flex .list dl dd ul li a {
		padding: 18px;
		background: url('../img/icon_link_type_01_h_sp_off.png') no-repeat right 4px center #f6f7f7;
		font-size: 22px;
	}

	.clinic.area .flex .list dl dd ul li {
		width: 32%;
	}

	.clinic.all {
		min-width: 100%;
		padding: 0 30px;
		margin-bottom: 100px;
	}

	.clinic.all .h2_txt {
		font-size: 22px;
	}

	.clinic.all dl dt {
		padding: 20px 0;
		font-size: 24px;
	}

	.clinic.all dl {
		margin-top: 40px;
	}

	.clinic.all dl dt {
		margin-bottom: 0;
	}

	.clinic.all dl dd+dt {
		margin-top: 40px;
	}

	.clinic.all dl dd ul {
		display: block;
	}

	.clinic.all dl dd ul li {
		width: 100%;
		margin-top: 0;
	}

	.clinic.all dl dd ul li+li {
		border-top: 1px dashed #bcc0c3;
	}

	.clinic.all dl dd ul li a {
		padding: 50px 0;
	}

	.clinic.all dl dd ul li a div.flex {
		display: block;
	}

	.clinic.all dl dd ul li a div.flex>figure {
		width: auto;
		margin-bottom: 30px;
		height: 250PX;
		border-radius: 0;
	}

	.clinic.all dl dd ul li a div.flex>figure img {
		object-fit: cover;
		height: 100%;
		width: 100%;
	}

	.clinic.all dl dd ul li a div.flex>div {
		width: auto;
	}

	.clinic.all dl dd ul li a h3 {
		font-size: 24px;
	}

	.clinic.all dl dd ul li a p {
		line-height: 1.8;
		font-size: 22px;
	}

	.clinic.all dl dd ul li a span.link_type_01 {
		margin-top: 30px;
		width: 300px;
		padding: 20px 0 20px 50px;
		background-image: url('../img/icon_link_type_01_h_sp_off.png');
	}

	.clinic.time {
		min-width: 100%;
		padding: 0 30px;
		margin-bottom: 100px;
	}

	.clinic.time .h2_txt {
		font-size: 22px;
	}

	.clinic.time table {
		width: 100%;
		border-width: 2px 0 1px;
	}

	.clinic.time table th {
		padding: 10px 10px;
		font-size: 22px;
	}

	.clinic.time table td {
		width: 150px;
		padding: 10px 10px;
		line-height: 1.8;
		font-size: 20px;
		white-space: nowrap;
	}

	/*----------------------------------------------------------*/
}