@charset "UTF-8";


/* Reset
--------------------------------------------------*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
article, aside, dialog, figure, footer, header,
hgroup, nav, section {
	display:block;
	position: relative;
	/zoom: 1;
}
html {
    height: 100%;
}
body {
	line-height: 1;
    height: 100%;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

/* remember to define focus styles! */
:focus {
	outline: 0;
}

/* remember to highlight inserts somehow! */
ins {
	text-decoration: none;
}
del {
	text-decoration: line-through;
}

/* tables still need 'cellspacing="0"' in the markup */
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* Reset
--------------------------------------------------*/
body {
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",Sans-Serif;
	line-height: 1.8;
	font-size: 15px;
	height: 100%;
	color: #3F1F00;
	-webkit-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
}

/* Reset
--------------------------------------------------*/
.clear,
.clearfix:after {
	content: '';
	display: block;
	clear: both;
	height: 0;
}
.clearfix { /zoom: 1; } /* IE */

/* Reset
--------------------------------------------------*/
p, ul, ol, dl {
	margin: 0;
	text-align: justify;
}
h1, h2, h3, h4, h5 {
	line-height: 1.6;
}
table {
	width: 100%;
	margin: 0;
}
table p {
	text-align: left;
}
caption {
	font-weight: bold;
	text-align: left;
}
img {
	border: none;
	vertical-align: bottom;
}
em {
	font-weight: bold;
	font-style: normal;
}
strong {
	font-weight: bold;
}
a {
	color: #3F1F00;
	-moz-transition: 0.2s;
	-webkit-transition: 0.2s;
	-o-transition: 0.2s;
	-ms-transition: 0.2s;
	transition: 0.2s;
}
a:link {
	text-decoration: none;
}
a:visited {
	text-decoration: none;
}
a:hover {
}


/* ------------------------------------------------

	common

--------------------------------------------------*/
body {
	background: url(../common_images/bg.png) center top;
}



/* header
--------------------------------------------------*/
header {
	width: 100%;
	min-width: 980px;
	height: 80px;
	background: #FFF;
	position: fixed;
	z-index: 10;
	top: 0;
}
header .logo {
	position: absolute;
	left: 25px;
	top: 22px;
}
header #gNav {
	float: right;
}
header #gNav li {
	display: inline-block;
	margin: 0 15px;
	font-family: "ヒラギノ明朝 Pro W3","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
	font-weight: bold;
}
header #gNav li a {
	display: block;
	line-height: 80px;
	position: relative;
}
header #gNav li a:hover {
	color: #b20000;
}
header #gNav li a:before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 6px;
	border-color: transparent transparent transparent #b20000;
	position: absolute;
	top: 50%;
	left: -13px;
	margin: -5px 0 0 0;
}

header #gNav li.web {
	margin: 0;
}
header #gNav li.web a {
	background: #b20000;
	color: #FFF;
	padding: 0 15px;
}
header #gNav li.web a:before {
	display: none;
}
header #gNav li.web a:hover {
	background: #DD1212;
}




/* contents
--------------------------------------------------*/
#wrap {
	min-width: 1000px;
	margin-top: 80px;
}
#wrap h1:first-child {
	text-align: center;
	background: url(../common_images/bg_tit.png) center;
	line-height: 140px;
	min-width: 1000px;
}
#wrap h1:first-child img {
	vertical-align: middle;
}
#wrap h1 + .pho {
	text-align: center;
	background: rgba(64,32,0,0.3);
	filter:progid:DXImageTransform.Microsoft.Gradient(GradientType=0,StartColorStr=#443f1f00,EndColorStr=#443f1f00);/*IE8以下用*/
}
#contents {
	width: 980px;
	margin: 60px auto 80px;
	padding: 0 10px;
}
#contents .lead {
	border-bottom: 1px dotted #402000;
	text-align: center;
	padding-bottom: 55px;
	margin-bottom: 50px;
	font-size: 16px;
	font-weight: bold;
	line-height: 2;
}
.schedule:after {
	content: "";
	display: block;
	height: 0;
	clear: both;
}
.schedule table {
	width: 580px;
	border: 1px solid #402000;
	float: left;
}
.schedule th {
	border: 1px solid #402000;
	vertical-align: middle;
}
.schedule .week th {
	background: #D1C192;
	height: 45px;
}
.schedule .week .sat {
	background: #00698C;
	color: #FFF;
}
.schedule .week .sun {
	background: #8C0000;
	color: #FFF;
}
.schedule td {
	border: 1px solid #402000;
	text-align: center;
	width: 60px;
	height: 55px;
	vertical-align: middle;
	font-weight: bold;
}
.contact {
	width: 350px;
	float: right;
	margin: 15px 0 0 0;
}
.contact p {
	text-align: center;
	line-height: 1.4;
}
.contact strong {
	font-size: 38px;
	font-weight: bold;
	font-family: Arial, Helvetica, sans-serif;
	border-bottom: 1px dotted #402000;
	margin-bottom: 15px;
	padding-bottom: 5px;
	display: block;
}


/* footer
--------------------------------------------------*/
footer {
	background: #3F1F00;
	color: #9F8E7F;
	width: 100%;
	min-width: 1000px;
	position: relative;
}
footer .pagetop a {
	position: absolute;
	top: -26px;
	left: 50%;
	margin-left: -30px;
}
footer .pagetop a:hover {
	top: -30px;
}
footer .footNav {
	width: 980px;
	margin: 0 auto;
	padding: 20px 10px;
	border-bottom: 1px dotted #9F8E7F;
}
footer .footNav:after {
	content: "";
	display: block;
	height: 0;
	clear: both;
}
footer address {
	font-style: normal;
	float: left;
}
footer address span {
	font-weight: bold;
}
footer address + p {
	float: left;
	clear: left;
	font-size: 12px;
}
footer ul {
	text-align: right;
}
footer li {
	display: inline;
}
footer li + li:before {
	content: "｜";
	margin: 0 5px;
}
footer a {
	color: #9F8E7F;
}
footer li a:hover {
	color: #FFF;
}
footer .copyright {
	text-align: center;
	font-size: 12px;
	padding: 60px;
	font-family: Arial, Helvetica, sans-serif;
}




/* ------------------------------------------------

	トップ

--------------------------------------------------*/
.top #wrap {
	overflow: hidden;
}
.top .mainvis {
	width: 980px;
	margin: 0 auto;
	position: relative;
}
.top .mainVisIn {
	width: 1280px;
	margin: 0 -150px;
	position: relative;
}
.top .mainVisIn .img01 {
	position: relative;
}
.top .mainVisIn .img02,
.top .mainVisIn .img03,
.top .mainVisIn .img04 {
	position: absolute;
	bottom: 0;
}
.top .mainVisIn .img02 {
	left: 20px;
}
.top .mainVisIn .img03 {
	left: 355px;
}
.top .mainVisIn .img04 {
	left: 500px;
}
.top .mainVisIn h1 {
	position: absolute;
	bottom: 25px;
	left: 50%;
	margin-left: -253px;
	z-index: 2;
}
.top .bg {
	display: block;
	position: relative;
	width: 100%;
	height: 182px;
	background: url(../images/img_main_bg.png) repeat-x;
	margin-top: -182px;
}
.top .bnr {
	display: block;
	position: absolute;
	bottom: 20px;
	right: 50%;
	margin-right: calc(-50vw + 20px);
	z-index: 10;
}
.top .bnr img {
	width: 220px;
}

@media screen and (max-width:980px) { 
	.top .bnr {
		right: 0;
		margin-right: 0;
	}
}




.top .topics {
	background: #FFF;
	width: 100%;
	min-width: 1000px;
}
.top .topics dl {
	width: 980px;
	margin: 0 auto;
	padding: 15px 0;
}
.top .topics dt {
	background: #3F1F00;
	line-height: 30px;
	border-radius: 15px;
	color: #FFF;
	font-weight: bold;
	float: left;
	margin-right: 20px;
	padding: 0 20px;
}
.top .topics dd {
	overflow: hidden;
	line-height: 30px;
}


.top .announce {
	background: #FFF;
	text-align: center;
	border: 1px solid #B20000;
	color: #B20000;
	font-weight: bold;
	padding: 15px;
	margin: 40px 0;
}
.top #contents {
	margin-bottom: 60px;
}
.top .topNav ul {
	text-align: justify;
}
.top .topNav ul:after {
	content:"";
	display: inline-block;
	width: 100%;
	line-height:0;
	height: 0;
}
.top .topNav li {
	display: inline-block;
	width: 160px;
	text-align: center;
}
.top .topNav li a {
	display: block;
}
.top .topNav li a:hover {
	opacity: 0.7;
}
.top .topNav li span {
	display: block;
	background: #402000;
	color: #FFF;
	font-weight: bold;
	line-height: 40px;
}

.top .bnrArea {
	background: #ded9c2;
	padding: 40px 0;
}
.top .bnrArea ul {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	gap: 20px;
}
.top .bnrArea li {
	max-width: 280px;
	height: 90px;
}
.top .bnrArea img {
	height: 100%;
}
.top .bnrArea a:hover {
	opacity: 0.8;
}

.top .map {
	margin-bottom: -9px;
}



/* ------------------------------------------------

	ごあいさつ

--------------------------------------------------*/
.greeting #wrap {
	background: url(../greeting/images/bg_illust.png) no-repeat center bottom;
	padding-bottom: 520px;
}
.greeting #contents {
	margin-bottom: -25px;
}
.greeting #contents p {
	font-size: 16px;
	margin-bottom: 25px;
	text-align: center;
	font-weight: bold;
	line-height: 2;
}


/* ------------------------------------------------

	診療について

--------------------------------------------------*/
.about #contents h2 {
	font-size: 18px;
	color: #B30A00;
	margin-bottom: 10px;
}
.about .schedule {
	margin-bottom: 50px;
}
.about .course {
	text-align: justify;
	margin-top: 30px;
}
.about .course:after {
	content:"";
	display: inline-block;
	width: 100%;
	line-height:0;
	height: 0;
}
.about .course li {
	display: inline-block;
	width: 300px;
	background: #FFF;
	border: 1px solid #D2C290;
	vertical-align: top;
}
.about .course li h3 {
	font-size: 16px;
	line-height: 40px;
	background: #D2C290;
	text-align: center;
}
.about .course li p {
	padding: 20px;
}


/* ------------------------------------------------

	スタッフ紹介

--------------------------------------------------*/
.staff #contents h2 {
	font-size: 20px;
	margin-bottom: 10px;
}
.staff .phoKatsu {
	float: left;
}
.staff .profKatsu {
	width: 680px;
	float: right;
}
.staff .profKatsu h2 + p {
	margin-bottom: 27px;
}
.staff dl.prof {
	width: 425px;
	float: left;
	background: url(../common_images/bg_tit.png);
	padding: 20px 20px 15px 20px;
	margin-right: 15px;
	font-size: 14px;
	line-height: 1.6;
}
.staff dl.prof dt {
	float: left;
	width: 9em;
	font-weight: bold;
	margin-bottom: 5px;
}
.staff dl.prof dd {
	overflow: hidden;
	margin-bottom: 5px;
}
.staff .staffProf {
	padding-top: 50px;
	clear: both;
	text-align: justify;
}
.staff .staffProf:after {
	content:"";
	display: inline-block;
	width: 100%;
	line-height:0;
	height: 0;
}
.staff .staffProf > div {
	display: inline-block;
	vertical-align: top;
	width: 465px;
}
.staff .staffProf > div > p {
	float: left;
	margin-right: 30px;
}
.staff .staffProf > div ul {
	font-size: 13px;
}
.staff .staffProf > div li {
	margin-bottom: 7px;
}
.staff .staffProf > div li em {
	display: inline-block;
	padding-right: 15px;
}


/* ------------------------------------------------

	医院紹介

--------------------------------------------------*/
.clinic .phoWrap {
	width: 880px;
	margin: 0 auto;
}
.clinic .phoWrap:after {
	content: "";
	display: block;
	height: 0;
	clear: both;
}
.clinic .phoWrap div {
	width: 380px;
	float: left;
	margin: 0 30px 30px;
}
.clinic .phoWrap div img {
	margin-bottom: 10px;
}


/* ------------------------------------------------

	よくある質問

--------------------------------------------------*/
.faq #contents dt {
	width: 250px;
	float: left;
	clear: left;
	font-weight: bold;
	background: url(../faq/images/ico_q.png) no-repeat left top;
	margin-bottom: 40px;
	padding: 7px 40px 0 55px;
	min-height: 43px;
}
.faq #contents dd {
	overflow: hidden;
	background: url(../faq/images/ico_a.png) no-repeat left top;
	margin-bottom: 40px;
	padding: 7px 0 0 55px;
	min-height: 43px;
}
.faq #contents dd a {
	text-decoration: underline;
}
.faq #contents dd a:hover {
	text-decoration: none;
}



/* ------------------------------------------------

	アクセス

--------------------------------------------------*/
.access .map {
	margin-bottom: -9px;
}
.access .lead {
	font-size: 16px;
	margin: 30px 0;
	text-align: center;
	font-weight: bold;
}



















