@charset "utf-8";

/*------------------------------------------------------------
	リセット
------------------------------------------------------------*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, figure { margin: 0; padding: 0; background: transparent; border: 0; outline: 0; font-size: 1em; }
body, table, input, textarea, select, option { font-family: HiraKakuProN-W3; font-size: 1em; } article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, figure  { display: block; } ol, ul { list-style: none; } blockquote, q { quotes: none; } :focus { outline: 0; } ins { text-decoration: none; } del { text-decoration: line-through; }

table{ border-collapse:collapse;border-spacing:0; }


/*------------------------------------------------------------
	html,body
------------------------------------------------------------*/
html{
	height: 100%;
}

body{
	font-size: 14px;
	font-family:'Lato', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, 'メイリオ', sans-serif;
}


/*------------------------------------------------------------
	リンク
------------------------------------------------------------*/
a:link {
	text-decoration: none;
	-webkit-tap-highlight-color: rgba(255,0,0,.2); 
}
a:visited {
	text-decoration: none;	
}
a:hover {
	text-decoration: none;	
}
a:active {
	text-decoration: none;	
}


/*------------------------------------------------------------
	コンテナ
------------------------------------------------------------*/
#container{
	position: relative;
	width: 100%;

	/* コンテンツ部分の高さが画面に収まらない場合はコンテンツの高さに合わせる*/
	height: auto !important;

	/* コンテンツ部分の高さが画面より低い場合は画面の高さに合わせる*/
	height: 100%;
	min-height: 100%;
}


/*------------------------------------------------------------
	ライン
------------------------------------------------------------*/
div.line_2{
	width: 100%;
	height: 2px;
	background-color: #644637;
	margin: 2px 0 0;
}
div.line_5{
	width: 100%;
	height: 5px;
	background-color: #644637;
}
div.line_stripe{
	width: 100%;
	height: 8px;
	margin-top: 3px;
	margin-bottom: 5px;
	background-image: linear-gradient(
	-45deg,
	#FFFFFF 25%,
	#644637 25%, #644637 50%,
	#FFFFFF 50%, #FFFFFF 75%,
	#644637 75%, #644637);
	background-image: -webkit-ladial-gradient(
	-45deg,
	#FFFFFF 25%,
	#644637 25%, #644637 50%,
	#FFFFFF 50%, #FFFFFF 75%,
	#644637 75%, #644637);
	background-size: 4px 4px;
}
div.line_red{
	width: 100%;
	height: 2px;
	background-color: #DC0018;
}


/*------------------------------------------------------------
	ヘッダー
------------------------------------------------------------*/
#header{
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
#header div.logo{
	width: 100%;
	background-color: #644637;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0;
	padding: 3px 0px 5px 5px;
}
#header div.logo a{
	display:block;
	background:url(../img/header_title_logo.png) no-repeat;
	width:120px;
	height:24px;
	overflow:hidden;
	text-indent:100%;
	line-height:24px;
}
div#category{
	display: table;
	width: 100%;
	height: 18px;
	background-color: #644637;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.gyoshu{
	display: table-cell;
	vertical-align: middle;
	font-size: 90%;
	color: #FFFFFF;
	width: 40px;
	text-align: center;
	background-color: #FF9900;
	margin: 0;
	padding: 0;
}
div.category{
	display: table-cell;
	vertical-align: middle;
	width: auto;
	font-size: 90%;
	color: #FFFFFF;
	background-color: #993300;
	line-height: 1.3em;
	margin: 0;
	padding: 2px 8px 2px 8px;
}
div.header_pcmode{
	display: table-cell;
	vertical-align: middle;
	width: 58px;
	font-size: 90%;
	color: #FFFFFF;
	margin: 0;
	padding: 0;
	text-align: center;
}
div.header_pcmode a{
	color: #FFFFFF;
}
div.header_info{
	width: 100%;
	height: 72px;
	position: relative;
	display: table;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0;
	padding: 0;
}
div.header_info_tel{
	background-image: 	url(../img/header_tel_call.png),
						url(../img/header_tel_call2.png);
	background-repeat:	no-repeat,
						repeat;
	background-position:	right center,
							top top;
	background-size:	58px 72px,
						36px 36px;
	width: 58px;
	display: table-cell;
	margin: 0;
	padding: 0;
}
div.header_info_tel a{
	display: block;
	width: 58px;
	min-height: 72px;
	position: absolute;
	top: 0px;
	right: 0px;
}
div.header_info_add{
	width: auto;
	display: table-cell;
	margin: 0;
	padding: 5px;
	word-break: break-all;
}
div.header_info_add p{
	position: relative;
	bottom: 0;
	left: 0;
	color: #4D4D4D;
}
span#rubi{
	color: #644637;
	font-size: 85%;
}
span#mapicon{
	font-size: 85%;
	color: #FFFFFF;
	background-color: #FF9900;
	margin: 0;
	padding: 2px 4px;
	text-align: center;
	border-radius: 3px;
}
span#mapicon a{
	color: #FFFFFF;
}
h2{
	color: #644637;
	font-size: 125%;
}


/*------------------------------------------------------------
	ナビゲーション
------------------------------------------------------------*/
ul.tp_001_nav{
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
ul.tp_001_nav li{
	background-image: url(../img/001_dotbox.png), url(../img/001_arrow.png);
	background-repeat: no-repeat, no-repeat;
	background-origin: content-box, content-box;
	-webkit-background-position: left -14px center, right 10px center;
	background-position: left center, right center;
	-webkit-background-size: 5px 23px, 14px 14px;
	background-size: 5px 23px, 14px 14px;
	height: 36px;
	border-bottom: 1px solid #644637;
	margin: 0;
	padding: 0 10px 0 10px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
ul.tp_001_nav li a{
	display: block;
	display: box;
	color: #4D4D4D;
	text-decoration: none;
	padding: 8px 0 0 14px;
}


/*------------------------------------------------------------
	サブタイトル
------------------------------------------------------------*/
h2.s_title{
	width: 100%;
	height: 26px;
	background-color: #644637;
	text-align: center;
	margin: 10px 0;
	font-size: 115%;
	color: #FFFFFF;
	line-height: 26px;
	font-weight:normal;
}

/*------------------------------------------------------------
	コンテンツ
------------------------------------------------------------*/
div.ph_001{
	width: 100%;
	margin: 0;
	padding: 0;
}
div.ph_001 img{
	width: 100%;
	vertical-align: bottom;
	margin: 0;
	padding: 0;
}
div.ph_002{
	width: 100%;
	margin: 20px 0 0;
	text-align: center;
}
div.ph_002 img{
	width: 100%;
	vertical-align: bottom;
}
div.ph_003{
	width: 100%;
	background-image: -webkit-radial-gradient(circle farthest-side, #644637, #644637 50%, #FFFFFF 50%, #FFFFFF);
	background-image: radial-gradient(circle farthest-side, #644637, #644637 50%, #FFFFFF 50%, #FFFFFF);
	background-size: 3px 3px;
	margin: 10px 0 10px 0;
	text-align: center;
}
div.ph_003 img{
	/*width: 260px;*/
	max-width: 100%;
	vertical-align: bottom;
}
div#catch_copy{
	width: 100%;
	background-color: #F5EDE0;
	margin: 5px 0;
	padding: 10px 0 10px 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.catch_copy_inbox{
	width: 90%;
	background-color: #FFFFFF;
	padding: 5px;
	margin: 0 auto;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.catch_copy_inbox p{
	color: #644637;
	line-height: 1.3em;
}


/*------------------------------------------------------------
	テキスト
------------------------------------------------------------*/
div.text_box_t{
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	padding: 5px 0 15px 0;
}
div.main_c{
	font-size: 125%;
	font-weight: bold;
	color: #371E19;
	border-bottom: 2px dotted #CCCCCC;
	padding: 5px;
	line-height: 1.4em;
}
div.sub_c{
	font-size: 115%;
	font-weight: bold;
	color: #644637;
	padding: 5px;
	line-height: 1.4em;
}
div.text_c{
	color: #4d4d4d;
	padding: 0 5px 5px 5px;
	line-height: 1.3em;
}


/*------------------------------------------------------------
	お知らせ
------------------------------------------------------------*/
div#news{
	width: 100%;
	margin: 5px 0;
	padding: 0;
}
div.news_line{
	width: 100%;
	height: 2px;
	background-color: #993300;
}
div.news{
	color: #660000;
	font-weight: bold;
	width: 100%;
	height: 22px;
	text-align: center;
	background-color: #F0F0F0;
	background-image: -webkit-linear-gradient(45deg, #C8852A 25%, transparent 25%, transparent 75%, #C8852A 75%, #C8852A), 
		-webkit-linear-gradient(45deg, #C8852A 25%, transparent 25%, transparent 75%, #C8852A 75%, #C8852A);
	background-image: linear-gradient(45deg, #C8852A 25%, transparent 25%, transparent 75%, #C8852A 75%, #C8852A), 
		linear-gradient(45deg, #C8852A 25%, transparent 25%, transparent 75%, #C8852A 75%, #C8852A);
	background-size: 4px 4px;
	background-position: 0 0, 2px 2px
}
div.news p{
	padding: 2px 0 0 0;
}
div.news span.news{
	background-color: #FFFFFF;
	padding: 0 3px;
	border-radius: 3px;
}
div.news_info{
	width: 100%;
	margin: 0;
	padding: 5px 10px;
	background-color: #F5EDE0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.news_info dt{
	font-weight: bold;
}
div.news_info dd{
	padding: 0px 0 5px 0;
}

/*------------------------------------------------------------
	フリーページ
------------------------------------------------------------*/
div#freePage div.fs_box{
	overflow:hidden;
	/*margin-top:10px;*/
	/*margin-bottom:10px;*/
}

div#freePage h2.title_box{
	width: 100%;
	height: 26px;
	background-color: #644637;
	text-align: center;
	margin: 10px 0;
	font-size: 115%;
	color: #FFFFFF;
	line-height: 26px;
	font-weight:normal;
}

div#freePage div.photo_box{
	width: 100%;
	background-image: -webkit-radial-gradient(circle farthest-side, #644637, #644637 50%, #FFFFFF 50%, #FFFFFF);
	background-image: radial-gradient(circle farthest-side, #644637, #644637 50%, #FFFFFF 50%, #FFFFFF);
	background-size: 3px 3px;
	margin: 10px 0 10px 0;
	text-align: center;
}

div#freePage div.photo_box img{
	/*width: 100%;
	vertical-align: bottom;
	margin: 0;
	padding: 0;*/
	max-width: 100%;
	vertical-align: bottom;
}

div#freePage div.text_box{
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin: 0px 0px 10px 0px;
}


/*------------------------------------------------------------
	診療時間
------------------------------------------------------------*/
div.scheduleImage{
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.scheduleImage img{
	max-width: 100%;
	vertical-align: bottom;
}
div#client_timedate{
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
table#client_timedate_table{
	width: 100%;
	text-align: center;
	color: #4D4D4D;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	margin-bottom: 3px;
}
table#client_timedate_table tr{
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
table#client_timedate_table td{
	padding: 3px 0;
	border: 1px solid #CCCCCC;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
table#client_timedate_table td.time_title{
	background-color: #F0E8E4;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
table#client_timedate_table td.time_text{
	padding: 3px 3px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div#client_timedate div.scheduleNote{
	padding: 2px 10px 10px 10px;
	color: #4d4d4d;
}



/*------------------------------------------------------------
	クーポン
------------------------------------------------------------*/
div#coupon{
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.cp_shop{
	width: 100%;
	padding: 5px;
	background-color: #F0E8E4;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.cp_service{
	width: 100%;
	padding: 5px;
	font-weight: bold;
	color: #FF3333;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.cp_info{
	width: 100%;
	padding: 0;
	border-top: 1px dotted #CCCCCC;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.cp_info dl{
	width: 100%;
	font-size: 90%;
	line-height: 1.2;
	overflow: hidden;
}
div.cp_info dt{
	float: left;
	width: 70px;
	padding: 5px 0 0 5px;
}
div.cp_info dd{
	margin-left: 75px;
	padding: 5px 5px 0 0;
}
div.cp_limit{
	width: 100%;
	padding: 0;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.cp_limit dl{
	width: 100%;
	font-size: 90%;
	line-height: 1.2;
	overflow: hidden;
}
div.cp_limit dt{
	float: left;
	width: 70px;
	padding: 5px 0 5px 5px;
}
div.cp_limit dd{
	margin-left: 75px;
	padding: 5px 5px 5px 0;
}


/*------------------------------------------------------------
	基本情報
------------------------------------------------------------*/
div#client_information{
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
table#client_information_table{
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
table#client_information_table tr{
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
table#client_information_table td.t_title{
	background-color: #F0E8E4;
	color: #333333;
	width: 20%;
	border: 1px solid #CCCCCC;
	padding: 5px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
table#client_information_table td.t_text{
	color: #333333;
	width: 80%;
	border: 1px solid #CCCCCC;
	padding: 5px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
table#client_information_table td.t_text a{
	color: #EE6633;
}


/*------------------------------------------------------------
	ブログ
------------------------------------------------------------*/
div#blog{
	width: 100%;
	padding: 0;
	margin: 0 0 15px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.blog_info{
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.blog_info dl{
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.blog_info dt{
	width: 100%;
	padding: 5px 10px 0;
	font-weight: bold;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.blog_info dd{
	width: 100%;
	border-bottom: 1px dotted #CCCCCC;
	padding: 0 10px 5px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.blog_info dd a{
	text-decoration: underline;
	color: #000000;
}
div.blog_info dd a:hover{
	text-decoration: none;
}


/*------------------------------------------------------------
	ブログ（ページ）
------------------------------------------------------------*/
div.blogEntry{
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.blog_update{
	padding: 5px 10px;
	font-size: 90%;
}
div.blog_post_wrap{
	width: 100%;
	padding: 0 10px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.blog_post_title{
	padding: 2px 5px;
	font-size: 115%;
	font-weight: bold;
}
div.blog_post_content{
	padding: 5px;
	word-break: break-all;
}
div.blog_post_content img{
	width: 100%;
	margin: 10px 0;
}
div.blog_category{
	font-size: 90%;
	text-align: right;
	border-bottom: 1px dotted #999999;
	margin: 0 0 30px;
	padding: 0 5px 15px;
}


/*------------------------------------------------------------
	ブログ（カテゴリやら）
------------------------------------------------------------*/
div#sub_title{
	padding: 0 10px;
	margin: 0 0 10px;
}
div.sub_title{
	padding: 5px 10px;
}
div#blog_search{
	width: 100%;
	text-align: center;
	margin: 0 0 15px;
}
div#blog_newpost{
	padding: 0 10px 0 10px;
	margin: 0 0 15px;
}
div#blog_category_list{
	padding: 0 10px 0 10px;
	margin: 0 0 15px;
}
div#blog_archives{
	padding: 0 10px 0 10px;
	margin: 0 0 15px;
}
div.sub_content{
	padding: 0 10px;
	line-height: 1.8em;
}
div.sub_content a{
	color: #000000;
}

/*------------------------------------------------------------
	Googleマップ
------------------------------------------------------------*/
div#gmap{
	text-align: center;
	margin-bottom: 10px;
}

div#mapCanvas{
	width: 100%;
	height:240px;
}


/*------------------------------------------------------------
	フッター
------------------------------------------------------------*/
#footer{
	width: 100%;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
div.copyright{
	width: 100%;
	height: 100px;
	background-color: #371E19;
	text-align: center;
}
div.copyright p{
	font-size: 85%;
	color: #FFFFFF;
	line-height: 1.3em;
	padding: 4px 0 0;
}
div.copyright a{
	color: #FFFFFF;
}
div.ft_button{
	width: 100%;
	height: 50px;
	background-image: -webkit-radial-gradient(circle farthest-side, #CC9966, #CC9966 50%, #FFFFFF 50%, #FFFFFF);
	background-image: radial-gradient(circle farthest-side, #CC9966, #CC9966 50%, #FFFFFF 50%, #FFFFFF);
	background-size: 3px 3px;
}
ul.ft_button{
	display: table;
	width: 100%;
}
ul.ft_button li{
	height: 50px;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}
ul.ft_button li p{
	font-size: 110%;
	width: 120px;
	height: 28px;
	color: #FFFFFF;
	background-color: #371E19;
	margin: 0 auto;
	padding: 4px 0 0 0;
	border-radius: 6px;
}
ul.ft_button li a{
	color: #FFFFFF;
}
div.ft_nav{
	width: 100%;
	height: 60px;
	background-color: #644637;
}
ul.ft_nav{
	width: 100%;
	display: table;
	height: 60px;
}
ul.ft_nav li{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}
ul.ft_nav li.ft_pc{
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}
ul.ft_nav li p{
	width: 80px;
	height: 38px;
	background-color: #EE6633;
	margin: 0 auto;
	padding: 4px 0 0 0;
	border-radius: 6px;
	line-height: 1.2em;
}
ul.ft_nav li.ft_pc p{
	width: 80px;
	height: 38px;
	background-color: #FFFFFF;
	margin: 0 auto;
	padding: 4px 0 0 0;
	border-radius: 6px;
	line-height: 1.2em;
}
ul.ft_nav li a{
	color: #FFFFFF;
}
ul.ft_nav li.ft_pc a{
	color: #333333;
}

/*------------------------------------------------------------
	その他
------------------------------------------------------------*/

#topcontrol {
	width:46px;
	height:46px;
	background:url(../img/up.png) no-repeat;
}

/*------------------------------------------------------------
	お問い合わせ(別ファイル)
------------------------------------------------------------*/


/*------------------------------------------------------------
	音声ガイド（スマホ版）
------------------------------------------------------------*/
.voice-guide{
	margin:0 auto;
}
.voice-02sp{
	margin:0 auto 20px;
	text-decoration: none;
	border-top: 1px solid #4477AA;
	border-left: 1px solid #4477AA;
	border-right: 1px solid #224477;
	border-bottom: 1px solid #224477;
	padding: 30px 10px;
	display: block;
	width: 200px;
	text-align: center;
	color: #333;
	background-image:-webkit-linear-gradient(#224477,#336699);
	background-image:linear-gradient(#224477,#336699);
	color: #fff;
	box-shadow: 0 6px 2px 1px #999999;
	position: relative;
	top: 0;
	border-radius: 6px;
}
.voice-02sp:hover{
	border-color: #0e6b99;
	box-shadow: none;
	top: 6px;
}
.voice-02sp a{
	color:#FFFFFF;
	font-size:150%;
	display: block;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	padding-top:16px;
}

