@charset "UTF-8";


/*================================================
 *  一般・共通設定
 ================================================*/
body {
	font-size:16px;
	color:#000;
	font-family:"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	line-height:1.6;
	background:#fff;
}

.inner {
	position:relative;
	width:100%;
	margin:0 auto;
	font-size:10px;
}

header {
	box-sizing:border-box;
	position:relative;
	width:100%;
	background:#fff;
}


nav {
	font-family:"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	font-size:10px;
	width:100%;
	background:#fff;
	box-shadow:none;
	⁄zoom:0;
}
nav:after {
	content:'';
	display:block;
	clear:both;
}


span.nav {
	color:#000;
	font-weight:bold;
	font-size:10px;
}

#wrapper {
	width:100%;
	background:#fff;
	border-top:0px;
}

#contents {
	overflow:hidden;
	width:80%;
	margin:10px auto;
	background:#fff;
}

#wrap {
	overflow:hidden;
	width:80%;
	margin:5px auto;
	background:#fff;
}



#main {
	box-sizing:border-box;
	overflow:hidden;
	float:none;
	width:100%;
}

#sub {
	box-sizing:border-box;
	overflow:hidden;
	float:none;
	width:100%;
}

footer {
	box-sizing:border-box;
	width:100%;
	margin:10px auto;
}

a {
	color:#333;
	text-decoration:underline;
}


a:hover {
	color:#333;
	text-decoration:none;
}


h1 img {
	margin-top:3.5em;
	margin-left:10em;
	margin-bottom:0.5em;
}

h2 {
	margin-bottom:0.5em;
	padding:10px 0;
	font-size:18px;
	color:#000;
	border:none;
}

h3 {
	margin-bottom:0.25em;
	padding:2px 5px;
	color:#fff;
	font-size:16px;
	background:#000;
}

h3 a{
	margin-bottom:0.25em;
	padding:2px 5px;
	color:#000;
	font-size:16px;
	background:#fff;
	text-decoration:none;
}




h3 group {
	margin-bottom:0.25em;
	padding:2px 5px;
	color:#fff;
	font-size:16px;
	background:#000;
	box-sizing: border-box;
	text-align: center;
}



h4 {
	margin-bottom:0.25em;
	font-size:15px;
	color:#000;
	border:none;
}



h4 group {
	margin-bottom:0.25em;
	padding:2px 5px;
	font-size:15px;
	color:#000;
	border:none;
}

h5 {
	position:relative;
	margin-bottom:0.25em;
	padding-left:10px;
	color:#000;
	font-size:14px;
	font-weight:bold;
}
h5:before {
	content:"";
	margin-top:-7px;
	position:absolute;
	top:50%;
	left:0;
	width:5px;
	height:14px;
	background:#fff;
}

h6 {
	margin-bottom:0.25em;
	color:#000;
	font-size:14px;
	font-weight:bold;
}

p {
	margin:0 0 1em 0;
}

img {
	vertical-align:bottom;
}

em {
	font-weight:none;
}

strong {
	font-weight:bold;
	color:#ff0000;
}

pre {
	margin:1em 0;
	padding:1em;
}

blockquote {
	margin-bottom:1em;
	padding:1em;
	border:1px dotted #ff0000;
	border-left:5px solid #ff0000;
}

ul,ol,dl {
	margin:0 0 1em 0;
}
ul li {
	list-style:disc;
}
ol li {
	list-style:decimal;
}
li {
	margin-left:2em;
}

dt {
	margin-bottom:0.5em;
	border-bottom:1px dotted #ddd;
}
dt:before {
	content:"\0025a0";
}
dd {
	margin-bottom:1em;
}

table {
	width:100%;
	margin-bottom:1em;
	border-collapse:collapse;
	border:1px solid #ddd;
	background:#fff;
}
th {
	padding:10px;
	text-align:center;
	vertical-align:middle;
	border:1px solid #ddd;
	background:#eee;
}
td {
	padding:10px;
	text-align:center;
	vertical-align:middle;
	border:1px solid #ddd;
}

/*================================================
 *  ヘッダー
 ================================================*/
header {
	padding:0px 10px;
}

.summary {
	position:absolute;
	top:0;
	left:5px;
	margin:0;
	background:#fff;
}

/*================================================
 *  グローバルナビゲーション
 ================================================*/
@media print, screen and (min-width:768px) {
	nav {
		background:#fff;
		border-bottom:5px solid #333;
		box-shadow:none;
		z-index:3;
	}

	/* 共通 */
	nav ul {
		margin:0;
		padding:0;
	}

	nav ul li {

		position:relative;
		margin:0;
		padding:0;
		list-style:none;
	}

	nav ul li a {
		display:block;
		margin:0;
		padding:15px 0;
		background:#fff;
		color:#000;
		font-size:15px;
		font-weight:bold;
		line-height: 2.0em;
		border-right: 0px;
		text-decoration:none;
	}

	nav ul li:hover > a {
		color:#000;
		background:#fff;
	}





	nav ul.gnav_2 > li {
		position:relative;
		width:15%;
		float:left;
		margin:0;
		padding:0;
		text-align:center;
		list-style:none;

	}


	/* 1段目 */
	nav ul.gnav > li {
		position:relative;
		width:14%;
		float:left;
		margin:0;
		padding:0;
		text-align:center;
		letter-spacing: 0px;
		list-style:none;

	}

	nav ul.gnav > li:first-child {
		width:14%;
	}

	nav ul.gnav > li.subnav a {
		padding-right:12px;
	}

	nav ul.gnav > li.subnav > a:after {
		position:absolute;
		content:"";
		top:20px;
		width:0;
		height:0;
		margin-left:10px;
		border:5px solid transparent;
		border-top-color:#fff;
	}

	/* 2段目 */
	nav ul li ul {
		position:absolute;
		z-index:3;
		top:100%;
		left:0;
		width:100%;
		margin:0;
		padding:0;
	}

	nav ul li ul li {
		overflow:hidden;
		width:150%;
		height:0;
		color:#000;
		transition:.2s;
	}

	nav ul li ul li a {
		padding:13px 15px;
		text-align:left;
		background:#191970;
		font-weight:normal;
	}

	nav ul li:hover > ul > li {
		overflow:visible;
		height:40px;
		border-bottom:1px solid #fff;
	}

	nav ul li:hover ul li:last-child {
		border-bottom:none;
	}

	nav ul.gnav > li:last-child > ul {
		left:-50%;
	}

	nav ul li ul li ul:before {
		position:absolute;
		content:"";
		top:13px;
		left:-20px;
		width:0;
		height:0;
		border:5px solid transparent;
		border-left-color:#fff;
	}

	nav ul.gnav > li:last-child ul li ul:before {
		position:absolute;
		content:"";
		top:13px;
		left:200%;
		margin-left:-20px;
		border:5px solid transparent;
		border-right-color:#fff;
	}

	/* 3段目 */
	nav ul li ul li ul {
		top:0;
		left:100%;
	}

	nav ul li ul li ul li {
		width:100%;
	}

	nav ul li ul li:hover > ul > li {
		border-bottom:1px solid #191970;
	}

	nav ul.gnav > li:last-child > ul li ul {
		left:-100%;
	}

	nav ul li ul li ul li a {
		background:#4169e1;
	}

	nav ul li ul li ul li a:hover {
		background:#4191970;
	}

	.gnav {
		display:block !important;
	}

	#spMenu {
		display:none;
	}

	.fixed {
		position:fixed;
		top:0;
		left:0;
	}
}

/*================================================
 *  トピックパス（パンくずリスト）
 ================================================*/
.non {
	overflow:hidden;
}
.non ul {
	overflow:hidden;
}
.non li {
	margin:0 0 3px 0;
	padding:0;
	list-style:none;
}
.non li a:hover {
	opacity:0.8;
	filter:alpha(opacity=80);
	-ms-filter:"alpha( opacity=80 )";
}

/*================================================
 *  トピックパス（パンくずリスト）
 ================================================*/
#topicpath {
	font-size:12px;
	margin-bottom:20px;
	padding:2px;
	background:#fff;
}

/*================================================
 *  サブコンテンツ
 ================================================*/
.submenu li {
	margin:0;
	padding:0;
	list-style:none;
}
.submenu li a:before {
	content:"\0025a0";
	color:#000;
}
.submenu li a {
	display:block;
	padding:10px 2px;
	color:#000;
	border-bottom:1px dotted #ddd;
	text-decoration:none;
}
.submenu li a:hover {
	background:#fff;
}

.bnr {
	overflow:hidden;
}
.bnr ul {
	overflow:hidden;
}
.bnr li {
	margin:0 0 10px 0;
	padding:0;
	list-style:none;
}
.bnr li a:hover {
	opacity:0.8;
	filter:alpha(opacity=80);
	-ms-filter:"alpha( opacity=80 )";
}
.bnr img {
	width:100%;
}




.group {
	overflow:hidden;
}
.group ul {
	overflow:hidden;
}
.group li {
	margin:0 0 10px 0;
	padding:0;
	list-style:none;
}
.group li a:hover {
	opacity:0.8;
	filter:alpha(opacity=80);
	-ms-filter:"alpha( opacity=80 )";
}
.group img {
	width:100%;
}

/*================================================
 *  フッター
 ================================================*/
footer {
	clear: both;
	line-height: 1.5;	/*行間を基準より少し狭くする*/
	padding: 30px 0 0;	/*上、左右、下へのボックス内の余白*/
	font-size: 85%;		/*文字サイズ*/
	background: #2c3c63;	/*背景色*/
	color: #fff;	/*文字色*/
	overflow:hidden;
}
footer a {
	color: #fff;	/*リンクの文字色*/
}
footer a:hover {
	color: #fff;	/*マウスオン時のリンクの文字色*/
}


/*footer内のh3タグ*/
footer h3 {
	margin-bottom: 10px;
	font-size: 24px;	/*文字サイズ*/
	background: #2c3c63;	/*背景色*/
	border-left: 2px solid #fff;	/*左側の線の幅、線種、色*/
	color: #fff;	/*マウスオン時のリンクの文字色*/

}

/*footer内のh3タグの１文字目*/
footer h3::first-letter {
	border-left: 2px solid #fff;	/*左側の線の幅、線種、色*/
	padding-left: 10px;				/*線とテキストの間の余白*/
}
/*footer内の段落タグ*/
footer p {
	padding: 0px 10px 20px;	/*上、左右、下への余白*/
	font-size: 16px;
}
/*footer内の左側のブロック指定*/
#footer-left {
	width: 45%;	/*幅*/
	float: left;	/*左に回り込み*/
	padding-left: 5%;	/*左に空ける余白*/
	padding-bottom: 50px;	/*下に空ける余白*/
	background: #2c3c63;	/*背景色*/
	padding-bottom: 10000px;
	margin-bottom: -10000px;
}

/*フッターのロゴ画像*/
/*footer内の右側のブロック指定*/
#footer-right {
	width: 45%;	/*幅*/
	float: right;	/*右に回り込み*/
	padding-right: 5%;	/*左に空ける余白*/
	padding-bottom: 50px;	/*下に空ける余白*/
	background: #2c3c63;	/*背景色*/
}


/*ta2（footerの「診療時間のご案内」で使っているテーブル）
---------------------------------------------------------------------------*/
/*ta2設定*/
.ta2 {
	width: 100%;
	margin: 0 auto 10px;
	border-bottom: 1px solid #fff;	/*テーブルの下の枠線の幅、線種、色*/
	text-align: center;
}
/*td,th共通*/
.ta2 td, .ta2 th {
	border-top: 1px solid #fff;	/*td,thの上側の線の幅、線種、色*/
	padding: 5px 10px;	/*ボックス内の余白*/
	color: #2c3c63;
	font-weight: bold;
	font-size:18px;
}
/*th見出し*/
.ta2 th {
	background: rgba(0,0,0,0.2);	/*背景色*/
}


/*================================================
 *  ページトップへの戻り
 ================================================*/



.totop {
	clear: both;
	position:fixed;
	bottom:15px;
	right:15px;
	background: #fff;	/*背景色*/

}
.totop a {
	display:block;
	text-decoration:none;
}
.totop img {
	background:#00008b ;
}
.totop img:hover {
	background:#900000;
}


/*コピーライト
---------------------------------------------------------------------------*/
#copyright {
	clear: both;
	text-align: center;
	background: #333;	/*背景色*/
	color:#fff;
}


/*================================================
 *  クラス
 ================================================*/



.list {
	padding:0 0 0 0.5em;
}
.list li {
	margin:0;
	padding:0 0 0 15px;
	list-style:none;
	background:url(../images/check.png) 0 5px no-repeat;
}

.info dt {
	border-bottom:none;
}
.info dd {
	padding-bottom:1em;
	border-bottom:1px solid #ddd;
}





.col_two_one {
	overflow:hidden;
	text-align: center;
}

.col_two_one ul {
	overflow:hidden;
	margin:2% -2% 0 0;
}
.col_two_one li {
	list-style:none;
	float:left;
	width:23%;
	margin:0 2% 2% 0;
}
.col_two_one li:nth-child(4n+1) {
	clear:both;
}
.col_two_one li img {
	width:150px;
	margin-bottom:2.5%;
}


.l1 p { font-size: 110%;
	text-align: left;
	 }


/* 写真右寄せ */
.imgR {
	clear:both;
	overflow:hidden;
	margin-bottom:50px;
}

.imgR img {
	float:right;
	margin:0 0 2em 2em;
	border-radius:5px;
}

/* 写真左寄せ */
.imgL {
	clear:both;
	overflow:hidden;
	margin-bottom:5px;
}
.imgL img {
	float:left;
	margin: 1em 2em 1em 1em;
}


/*================================================
 * オプション
 ================================================*/
.hyoL	table {
	width:80%;
	margin-bottom:1em;
	border-collapse:collapse;
	border:1px solid #ddd;
	background:#fff;
}
.hyoL	th {
	padding:10px;
	text-align:center;
	vertical-align:middle;
	border:1px solid #ddd;
	background:#eee;
}
.hyoL	td {
	padding:10px;
	text-align:left;
	border:1px solid #ddd;
}

#sub
{display:none;}
