@charset "utf-8";
/* CSS Document */
/* Refresh Style   */
/*----------------- HTML 5 サポート -----------------*/
header, section, footer, aside, nav, article, figure {
	display: block;
}
html, body {
	margin: 0;
	padding: 0;
	font-style: normal;
	vertical-align: baseline;
	background: transparent;
	text-indent: 0;
	font-size: 0.9em; /* size:M */
	/*	font-size: 1em;  size:M */
/*	font-family: "ＭＳ ゴシック", "MS Gothic", "Osaka－等幅", Osaka-mono, monospace;
*/
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}
/*\*/ html:\html {font-family:inherit;} /* end */ 

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, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	background: transparent;
	font-size: 100%;
	font-style: normal;
	text-indent: 0;
	list-style: none;
}
body {
	line-height: 1;
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
nav ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
a {
	margin: 0;
	padding: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
	text-decoration: none;
}
del {
	text-decoration: line-through;
}
abbr[title], dfn[title] {
	border-bottom: 1px dotted;
	cursor: help;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
th {
	font-weight: normal;
}
hr {
	display: block;
	height: 1px;
	border: 0;
	border-top: 1px solid #cccccc;
	margin: 1em 0;
	padding: 0;
}
input, select {
	vertical-align: middle;
}
ul, ol, dl, li {
	padding: 0;
	margin: 0;
}
#container ol li {
	margin-left: 1.5em;
	list-style: decimal;
	padding-left: normal;
}
/* End Refresh Style ------------------------*/



/*
bodyに0.88emをかけたので
12px 	0.857em
14px 	1em 	100%
16px 	1.143em
18px 	1.286em
20px 	1.429em
22px 	1.571em
24px 	1.714em

*/

/* 初期化
/////////////////////////////////////////*/

body {
	background: #fffaee;
	background: url(../img/body_bg.jpg) no-repeat center top;
	background-attachment: fixed;
}
a:link {
	color: #1e0fc5;
	text-decoration: none;
}
a:visited {
	color: #1e0fc5;
	text-decoration: none;
}
a:hover {
	color: #1122d1;
	text-decoration: underline;
}
#contents a:link, #contents a:visited {
	text-decoration: underline;
}
nav li a:hover, a:hover img, a:active img {
	opacity: 0.7;
	filter: alpha(opacity=70);
	-ms-filter: "alpha( opacity=70 )";
}
strong {
	font-weight: normal;
}
/* ボックス
/////////////////////////////////////////*/
#wrapper {
	width: 100%;
	background: url(../type1/img/bottom_bg.gif) repeat-x;
	background-position: bottom;
}
header, #container, footer {
	position: relative;
	padding: 0;
	margin: 0 auto;
	/*	overflow:hidden;
*/	clear: both;/*	border-left: 1px solid #7fbb2b;
	border-right: 1px solid #7fbb2b;*/
}
/*header,*/
#container/*,
footer */ {
	max-width: 900px;
	width: 90%;
}
nav {
	width: 100%;
}
#contents {
	width: 60%;
}
#sidebar {
	width: 30%;
}
header {
	background: /*#7fbb2b */url(../type1/img/c_wrapper_bg.jpg);
}
footer {
	background: url(../img/f_wrapper_bg.png) no-repeat;
	background-position: center;
	border: 1px solid #7fbb2b;
}
#container {
	min-height: 300px;
	padding: 25px 0;
	overflow: hidden;
	background: #fff;
	margin-bottom: 40px;
	line-height: 1.5em;
	border: 1px solid #7fbb2b;
	border-radius: 10px;
}
.cf {
	zoom: 1;
}
.cf:before, .cf:after {
	content: "";
	display: table;
}
.cf:after {
	clear: both;
}
/* ヘッダー
/////////////////////////////////////////*/

#header {
	position: relative;
	width: 100%;
	min-height: 80px;
	margin: 0 auto;
	padding: 0;
	margin-bottom: 20px;
	overflow: hidden;/*	background-color:#FFF;
*/
}
#header #header_logo {
	position: relative;
	max-width: 900px;
	width: 90%;
	margin: 0 auto;
}
#header h1 {
	margin: 0;
	padding: 5px;
	background: #7fbb2b;
	color: #ffffff;
	font-size: 0.9em;
	text-align: center;
}
#header #h_banner img {
	width: 50%;
	max-width: 300px;
	height: auto;
	margin-top: 5px;
	text-align: center;
}
#header #h_add {
	position: absolute;
	top: 27px;
	right: 20px;
	text-align: right;
}
#header #h_add a {
	color: #7fbb2b;
}
#header #h_add span {
	display: block;
	height: 44px;
	padding-left: 20px;
	font-size: 30px;
	font-weight: bold;
	color: #7fbb2b;
}
/* グローバルナビゲーション
/////////////////////////////////////////*/
nav {
	position: relative;
	background: url(../img/photo.jpg) no-repeat left top;
	background-size: contain;
	border-top: 2px solid #7fbb2b;
	border-bottom: 2px solid #7fbb2b;
	overflow: hidden;
	margin: 0 auto;
	margin-bottom: 20px;
	border: 1px solid #7fbb2b;
	max-width: 900px;
}
/*
nav p img {
	position:absolute;
	top: 50%;
	right: 0;
	width: 100%;
	max-width: 520px;
	height: auto;	
}
*/

nav ul {
	float: right;
	width: 58.6%;
	max-width: 540px;
}
nav ul li {
	float: left;
	width: 50%;
	max-width: 270px;
	height: auto;
}
nav li img {
	display: block;
	width: 100%;
	height: auto;
}
nav ul li span {
	display: block;
	position: absolute;
	text-indent: -9999px;
}
nav li a {
	display: block;
	width: 100%;
}
/*nav li.menu1 a { background:url(../img/menu1.jpg) no-repeat; }
nav li.menu2 a { background:url(../img/menu2.jpg) no-repeat; }
nav li.menu3 a { background:url(../img/menu3.jpg) no-repeat; }
nav li.menu4 a { background:url(../img/menu4.jpg) no-repeat; }
*/


/* サイドコンテンツ
/////////////////////////////////////////*/
#sidebar {
	position: relative;
	float: left;
	padding-left: 2%;
}
#sidebar section {
	margin-bottom: 2em;
}
#sidebar h2 {
	margin-bottom: 0.5em;
	padding: 4px 0 2px 6px;
	background: #7fbb2b;
	color: #fff;
	border-left: 5px solid #e5e8e8;
	font-size: 1.2em;
}
#sidebar #youtube h3{
	font-size: 1.2em;
	text-align:center;
}
#sidebar #youtube h3:before{
	content:"◆";
	color:#ff7f00;
}
#sidebar #youtube h3:after{
	content:"◆";
	color:#ff7f00;
}
#sidebar #youtube h3 span:before{
	content:"◆ ";
	color:#4cb5e8;
}
#sidebar #youtube h3 span:after{
	content:" ◆";
	color:#4cb5e8;
}
#sidebar iframe {
	width: 100%;
	height: 400px;
	/*	max-width: 250px;
*/	border: none;
}
/*navi hov*/
#sidebar a:hover img {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}
#qrwaku {
	margin-top: 20px;
	min-height: 100px;
	width: 240px;
	border: 1px solid #ccc;
}
#qrwaku span {
	display: block;
	margin: 5px;
	font-size: 90%;
}
#clinic ul li:before {
	content: "● ";
	color: #ffcc00;
}
#clinic ul li {
}
/* コンテンツ
/////////////////////////////////////////*/

#contents {
	float: right;
	position: relative;/*	padding-right: 2%;
*/
}
#contents section {
	margin-bottom: 2em;
	padding-bottom: 2em;
	border-bottom: 2px dotted #7fbb2b;
}
#contents h2 {
	margin-bottom: 1em;
	border-bottom: 3px double #7fbb2b;
	font-size: 1.2em;
	color: #7fbb2b;
	letter-spacing: 0.2em;
}
#contents h2 span {
	font-size: 1.3em;
	color: #ff7f00;
	font-weight: bold;
	text-shadow: #CCC 1px 1px;
}

#contents strong {
	font-weight: bold;
}
#news_banner {
	margin-bottom: 25px;
	border: 1px solid #999;
}
#news_banner a {
	display: block;
	padding: 10px 0;
	text-align: center;
	text-decoration: none;
	color: #000;
	font-weight: bold;
	background: #CCC;
}
#news_banner a:hover {
	color: #000;
	background: #666;
}

#time_table table {
	width: 100%;
}

#time_table th {
	border: 1px solid #00becc;
	padding: 5px;
	text-align: center;
	vertical-align: middle;
	background-color: #e5e8e8;
	white-space: nowrap;
}

#time_table td {
	width: 50px;
	vertical-align: middle;
	border: 1px solid #00becc;
	text-align: center;
	color: #00becc/*#f39800*/;
}

#time_table p {
	margin-top: 10px;
	font-size: 95%;
}


#aisatsu p {
	margin-bottom: 1em;	
}

#aisatsu strong {
	color:#ff7f00;
	font-weight: bold;
	font-size: 1.2em;	
}

#contents #aisatsu .posL {
	float: left;
	width: 40%;
	margin: 0;
	padding: 0;
}
#contents #aisatsu .posR {
	float: right;
	width: 57%;
	margin: 0;
	padding: 0;
}

#contents .mc_box li {
	margin: 0 0 0.9em 0;
	padding: 1%;
	font-size: 0.8em;
	border: 1px solid #cccccc;
	text-align: center;
}

#contents #aisatsu img {
	display: block;
	width: 100%;
	height: auto;
}


/*お知らせ*/
.news dt{
	font-weight:bold;
}
.news dd{
	border-bottom:1px dotted #ffcc00;
	margin-bottom:1em;
}
.news dd:last-child{
	border:none;
}
.news .none{
	display:none;
	border:none;
}

/*Googleマップ埋め込み*/
#googlemap { position: relative; padding-bottom: 80%; height: 0; overflow: hidden; max-width: 100%; } #googlemap iframe, #googlemap object, #googlemap embed { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
#sidebar #blog{
	padding:0;
	margin-top:0;
}
#sidebar  #blog p{
	margin-bottom:0;
	padding:0;
	line-height:0;
}
/* BLOG RSS*/
#blog_rss {
	margin-top:0;
/*	border-radius: 9px;
*/	line-height: 1em;
	font-size: 0.9em;
	background: #ffffff;
}

#blog_rss dl{
	margin: 0.8em 0.5em;
}

#blog_rss dt {
	margin-bottom: 0.3em;
	color: #6b2b00;
}
#blog_rss dd {
	margin-bottom: 1em;
}
#blog_rss dd a {
	color: #428aec !important;
	text-decoration: underline;
}
.auto_img img {
	width:100%;
	height:auto;
}

/* フッター
/////////////////////////////////////////*/
footer {
	height: 117px;
	/*	overflow: hidden;
*/	text-align: center;
	background: #7fbb2b;
}
footer, footer a:link, footer a:visited, footer a:active {
	color: #ffffff;
}
footer > div {
	position: relative;
	max-width: 900px;
	margin: 0 auto;
}
footer .pagetop {
	position: absolute;
	right: 5px;
	top: -40px;
}
footer address {
	margin: 20px 0;
	font-size: 1em;
	line-height: 1.4em;
}
footer p.ddmap {
	margin-bottom: 5px;
	font-size: 0.9em;
}
footer address, footer p {
	text-shadow: #666 1px 1px;
}
footer .pagetop a {
	color: #ff7f00;
	text-shadow: none;
}
/* 注意事項
/////////////////////////////////////////*/
.red {
	color: #F00;
}
.img_left {
	float: left;
}
.bold {
	font-weight: bold;
}
.orange{
	color:#7fbb2b;
}
.dark_orange{
	color:#ff7f00;
}
.green{
	color:#7fbb2b;
}
.dark_green{
	color:#4da619;
}
.shadow{
		text-shadow: #CCC 1px 1px;
}
/*Youtube動画*/
.youtube {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	margin-bottom:20px;
}
.youtube iframe {
	position: absolute;
	top: 0;
	right: 0;
	width: 100% !important;
	height: 100% !important;
}

/*############################################################################################*/
/* スマホ向けのレイアウトの指定：～480px */

@media only screen and (max-width: 480px) {
.hidden-phone {
	display: none;
}
header,
footer {
	width: 100%;
}
#header {
	min-height: auto;
	margin-bottom: 0px;
}

footer {
	height: 150px;
}
#container {
	width: 96%;
	margin: 0 auto;
	margin-bottom: 40px;
}
#contents {
	width: 99%;
	padding: 1%;
}
#sidebar {
	width: 99%;
}
.w240 img{
	width:100%;
	height:auto;
}

nav {
	width: 100%;
	background: none;
	border: none;
	border-top: 1px solid #7fbb2b;
}
nav p {
	width: 100%;
}
nav p img {
	display: block;
	width: 100%;
	height: auto;
}
nav ul {
	float: none;
	width: 100%;
}
nav ul li {
	width: 50%;
	background: #7fbb2b;
}
nav ul li img {
	display: none;
}
nav ul li span {
	display: block;
	position: relative;
	text-indent: 0;
	text-align: center;
	padding: 17px 0;
	color: #ffffff;
	text-shadow: 1px 1px 1px #000000;
	border-right: 1px solid #fff6e7;
	border-bottom: 1px solid #fff6e7;
}
#header #h_add {
/*	display: none;
*/}

#header #h_add {
	position: absolute;
	top: 0.8em;
	right: 0px;
	font-size: 0.8em;
}
#header #h_add span {
	height: auto;
	padding-left: 0px;
	font-size: 1.5em;
}


#header #h_banner img {
	width: 50%;
}
/*#sidebar iframe {
	width: 100%;
	height: 220px;
}*/
#container {
	font-size: 1.143em;
}
#time_table th span {
	display: block;
}
#contents #aisatsu .posL,
#contents #aisatsu .posR {
	float: none;
	width: 100%;
}

}

/*############################################################################################*/
/* スマホ～タブレット向けのレイアウトの指定：～768px */

@media only screen and (max-width: 768px) {
#contents, #sidebar {
	float: none;
	width: 98%;
	padding: 1%;
}
}

/*############################################################################################*/
/* タブレット向けのレイアウトの指定：481px～768px */

@media only screen and (min-width: 481px) and (max-width: 768px) {
.visible-phone {
	display: none;
}
header, footer {
	width: 100%;
}
nav, #container {
	width: 96%;
	margin: 0 auto;
	margin-bottom: 10px;
}
#container {
	margin-bottom: 40px;
}
nav {
	border-radius: 10px;
}
#header #h_banner img {
	width: 60%;
}
#header #h_add {
	font-size: 80%;
}
#header #h_add span {
	font-size: 200%;
}
footer .pagetop a {
	display: block;
	width: 115px;
	background: url(../img/page_top.png) no-repeat right top;
	text-indent: -9999px;
}
}

/*############################################################################################*/
/* PC向けおよび大型タブレット向けのレイアウトの指定：769px～960px */

@media only screen and (min-width: 769px) {
.visible-phone {
	display: none;
}
nav {
	border-radius: 10px;
}
#container {
	max-width: 900px;
	width: 95%;
}
#contents {
	width: 60%;
	float: right;
	padding-right: 2%;
}
#sidebar {
	width: 30%;
	float: left;
}
.w240 img{
	width:100%;
	height:auto;
}
#blog_rss {
	margin-top:0;
	border-left: 1px solid #f39800;
	border-right: 1px solid #f39800;
	border-bottom: 1px solid #f39800;
}
#blog_rss dl{
	margin-top:0;
	padding-top:0.8em;
}
footer .pagetop a {
	display: block;
	width: 115px;
	background: url(../img/page_top.png) no-repeat right top;
	text-indent: -9999px;
}
}

/*############################################################################################33*/
/* 印刷向けレイアウトの指定 */

@media only print {
.visible-phone {
	display: none;
}
header, #container, footer {
	width: 900px;
}
#contents {
	width: 570px;
}
#sidebar {
	width: 265px;
}
}
