@charset 'utf-8';

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,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{border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;margin:0;padding:0;}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:none;}a{font-size:100%;vertical-align:baseline;background:transparent;margin:0;padding:0;}ins{background-color:#ff9;color:#000;text-decoration:none;}mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold;}del{text-decoration:line-through;}abbr[title],dfn[title]{border-bottom:1px dotted;cursor:help;}table{border-collapse:collapse;border-spacing:0;}hr{display:block;height:1px;border:0;border-top:1px solid #cccccc;margin:1em 0;padding:0;}input,select{vertical-align:middle;}

img{max-width:100%;}
html,body{font-size:15px;line-height:1.4;-webkit-text-size-adjust:none;}
table{width:100%;}
body{overflow-x:hidden;height:100%;position:relative;}

/* clearfix */
.cf:before,.cf:after{content:"";display:table;}
.cf:after {clear:both;}
/* /clearfix */

body {
	color: #000;
    font-family: sans-serif;
}

/* ヘッダー */
header {
	background-color:#000;
	position:relative;
	border-top:6px solid #F3D57C;
	padding:10px;
}
header h1 {
	font-size:20px;
	float:left;
}
#site_title a{
	text-decoration: none;
	color:#fff;
}
#site_title  img{
	width:150px;
	padding-top:4px;
}

header #header_menu{
	text-align:right;
}

header #header_menu img{
	width:50px;
}

/* /ヘッダー */

/* フッター */

#page_footer {
	padding: 0;
}


#footer_nav {
	overflow: hidden;
	background: #fff;
	border-top:3px solid #B38A11;
	border-bottom:3px solid #B38A11;
}

#footer_nav h2, #fn_sub li {
	position: relative;
	background: #DEDEDE; /* Old browsers */
	background: -webkit-gradient(linear, left top, left bottom,
	color-stop(0%,#FFFFFF), color-stop(100%,#DEDEDE)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #FFFFFF 0%,#DEDEDE 100%); /*
	Chrome10+,Safari5.1+ */
	background: linear-gradient(to bottom,  #FFFFFF 0%,#DEDEDE 100%); /* W3C */
	cursor: pointer;
	line-height: 1.54;
	padding: 10px 20px;
	background-color:#3C3D45;
	color:#2F2E36;
}
#footer_nav h2::before, #fn_sub li::before {
	position: absolute;
	background-position: center -110px;
	content: url("../images/allow_2.png");
	width: 22px;
	height: 22px;
	margin-top: -11px;
	top: 50%;
	right: 10px;
}
.selected::before {
	-moz-transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}

#footer_nav a {
	display: block;
	color: inherit;
	text-decoration: none;
	padding: 10px 20px;
}

#footer_nav a[target="_blank"]::after {
	float: right;
	background-position: center -167px;
	content: "";
	width: 12px;
	height: 12px;
	 margin-top: 4px;
}

.co_nav {
	overflow: hidden;
	-webkit-transition: height .3s;
	-moz-transition: height .3s;
	transition: height .3s;
}

.co_nav li {
	position: relative;
	border-top: 1px solid #000000;
	border-bottom: 1px solid #616374;
	font-size: 107.7%;
	background-color:#3D3E47;
	color:#FFF;
}

.co_nav li:first-child {
    box-shadow: 0 2px 3px #151515 inset;
}

.co_nav li:last-child {
    box-shadow: 0 -2px 3px #151515 inset;
}

.co_nav li.active {
    background-color: #222;
}

.co_nav li:after {
	position: absolute;
	content: url("../images/allow.png");
	width: 0;
	height: 0;
	margin-top: -9px;
	top: 50%;
	right: 30px;

}
.co_nav ul  {
/*
#121315#313239
*/
}



#fn_sub li {
	padding: 0;
}

#fn_sub a {
	font-weight: bold;
	padding: 10px 20px;
}

#footer_bottom_area{
	background-color:#000;
}

#footer_btn_area{
	width:94%;
	padding:3%;
}
#footer_btn_area img{
	width:100px;
}

#footer_btn_area #btn_left{
	float:left;
}

#footer_btn_area #btn_right{
	text-align:right;
}

#copyright{
	text-align:center;
	padding-bottom:10px;
}

#copyright small{
	font-size:12px;
	color:#FFF;
}



/* /フッター */

/* 共通パーツ */
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.clearfix {
	zoom: 1;
}

.clear {
	clear: both;
}/* /clearfix */


.area_off{
	color:#8C8C8C;
}

#main_image{
}

#main_text{
	border-top:3px solid #666666;
	padding:10px;
}

#main_text p{
	font-size:12px;
}

.common_title_h2{
	border-top:3px solid #666666;
	background-image: url('../images/title_bg.png');
	color:#FFF;
	font-size:18px;
	line-height:18px;
	padding:10px 15px;
}

.common_title_h2_2{
	border-top:3px solid #666666;
	background-image: url('../images/title_bg.png');
	color:#FFF;
	font-size:18px;
	line-height:40px;
	padding:0 15px;
}

.btn_h2 {float: right}
.btn_h2 img {vertical-align: middle}

/* TOP */


#top_contents li{
	border-bottom:1px solid #999;
}

#top_contents li a{
	display: block;
	text-decoration: none;
	padding:5px 10px;
}


#top_contents .login_area{
	background-color:#FFF;
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	-ms-border-radius:10px;
	-o-border-radius:10px;
	border-radius:10px;
	border:3px solid #F3D57C;
	margin:15px;
	padding:10px 0;
	font-size:13px;
}

.login_area p{
	margin:0 5px;
}

.login_area p:first-child {margin-bottom: 5px;}

#login_txt{
	font-weight:bold;
	font-size:14px;
	 vertical-align:middle;
}

#search_contents{
	font-size: 80%;
	padding:10px;
}

#search_contents .search_area{
	background: #585858; /* Old browsers */
	background: -webkit-gradient(linear, left top, left bottom,
	color-stop(0%,#585858), color-stop(100%,#9A9A9A)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #585858 0%,#9A9A9A 100%); /*
	Chrome10+,Safari5.1+ */
	background: linear-gradient(to bottom,  #585858 0%,#9A9A9A 100%); /* W3C */

	-moz-border-radius:3px;
	-webkit-border-radius:3px;
	-ms-border-radius:3px;
	-o-border-radius:3px;
	border-radius:3px;
	margin:5px 0;
	padding:4px;
}

.search_area_title{
	padding-bottom:2px;
	color:#fff;
	text-align:center;
}

.search_f_area{
	background-color:#FFF;
	padding:10px;
}

.search_f_area input[type="text"] {
	width: 65%;
}

.search_f_area2 {
	background-color:#FFF;
}

.search_f_area2 td {
	width:50%;
	border-collapse: collapse;
	border:2px solid #CCC;
	text-align:center;
}

.search_f_area2 a {
	display: block;
	padding: 8px 0;
}

/* /TOP */

/* /CLINIC */
#area_list li{
	border-bottom:1px solid #999;
}
#area_list .nolink {padding: 5px 10px}

#area_list a {
	display: block;
	text-decoration: none;
	padding: 5px 10px;
}


#clinic_contents .clinic_area{
	background: #CFA015; /* Old browsers */
	background: -webkit-gradient(linear, left top, left bottom,
	color-stop(0%,#CFA015), color-stop(100%,#F3D57C)); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top,  #CFA015 0%,#F3D57C 100%); /*
	Chrome10+,Safari5.1+ */
	background: linear-gradient(to bottom,  #CFA015 0%,#F3D57C 100%); /* W3C */

	-moz-border-radius:3px;
	-webkit-border-radius:3px;
	-ms-border-radius:3px;
	-o-border-radius:3px;
	border-radius:3px;
	margin:15px;
	padding:4px 0;
	font-size:13px;
}

.clinic_area_title{
	font-size:12px;
	padding-bottom:2px;
	text-align:center;
}
.clinic_area_title a{
	color:#000;
}

.clinic_f_area{
	background-color:#FFF;
	margin:0 4px;
	padding:10px;
}
.clinic_f_area p{
	padding:2px 0;
}

.clinic_area .detail_btn_area{
	text-align:center;
	padding-top:10px;
}
#search_non {
	font-size:12px;
	padding:10px;
}
.require{
	color:red;
}

.require_text{
	color:red;
	padding:5px 15px 0;
	font-size:10px;
}
/* /CLINIC */

/* お知らせ */
#info_contents{
}
#news_list li{
	border-bottom:1px solid #999;
}

#news_list a{
	display: block;
	text-decoration: none;
	padding:5px 10px;
}

#news_list .date{
	width:75px;
	color:#000;
}

#info_contents #info_area{
	margin:10px;
}

#info_contents #info_area #date_area,
#info_contents #info_area #cont_area,
#info_contents #info_area #image_area,
#info_contents #info_area #pdf_area
{
	width:100%;
	margin:3px;
}
#info_contents #info_area #date_area{
	font-size:12px;
}
#info_contents #info_area #image_area{
	text-align:center;
}
#info_contents #info_area #image_area img{
	width:70%;
}
/* /お知らせ */

/* お問合せ */
.contact {
	border: 0;
	width: 100%;
}
.contact tr{
	border-bottom:1px solid #CCC;
}
.contact th{
	font-size:10px;
	width:100px;
	vertical-align: top;
	padding:5px 0;
}
.contact td {
	padding:5px 0;
}

.contact td ,
.address_table td
{
	font-size:10px;
}
.address_table tr{
	border:none;
}

.errorMessage {
	font-size:10px;
	color:red;
}

#contact_sub_area {
	margin:15px;
	font-size:12px;
}

#contact_sub_area #sub_text_1{
	color:#666666;
}

#contact_confirm_text{
	font-size:10px;
	margin:10px;
}

.button{
	padding:10px;
	text-align:center;
}
.button li{
	display: inline-block;
	padding: 0em 0.3em;
}

.button a, .button input, .display_select a, .btn {
	display: inline-block;
	background: #f6f6f6;
	background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#f6f6f6));
	background: -webkit-linear-gradient(#fff, #f6f6f6);
	background: linear-gradient(#fff, #f6f6f6);
	border: 0;
	border-radius: 2px;
	-webkit-box-shadow: 0 0 2px #666;
	box-shadow: 0 1px 2px #000, 0 1px 0 rgba(0,0,0,.3) inset, 0 -1px 0 rgba(255,255,255,.5) inset;
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
	color: #333;
	min-width: 3em;
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	-webkit-text-shadow: 0 -1px 0 rgba(255,255,255,.5);
	text-shadow: 0 -1px 0 rgba(255,255,255,.5);
	vertical-align: middle;
	padding: 7px 12px;
	cursor: pointer;
}

.button input, input.btn {
	height: 28px;
	padding: 0 12px;
}

.next input, .btn {
	background: #f2d375;
	background: -webkit-gradient(linear, left top, left bottom, from(#f2d375), to(#ecbe32));
	background: -webkit-linear-gradient(#f2d375, #ecbe32);
	background: linear-gradient(#f2d375, #ecbe32);
}
/* /お問合せ */


/* ふきだし */
.balloon {
    position: relative;
    margin: 10px 0;
}

.balloon > .balloon-text {
    background: #ffe9a6;
    border-radius: 5px;
    padding: 10px 5px;
    position: relative;
    font-size: 12px;
}

.balloon.left > .balloon-text {
    margin-left: 40px;
}

.balloon.right > .balloon-text {
    margin-right: 40px;
}

.balloon > .balloon-text:before {
    content: "";
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-bottom: 5px solid transparent;
    position: absolute;
    top: 10px;
}

.balloon.left > .balloon-text:before {
    border-left: 0px solid transparent;
    border-right: 5px solid #ffe9a6;
    left: -5px;
}

.balloon.right > .balloon-text:before {
    border-left: 5px solid #ffe9a6;
    border-right: 0px solid transparent;
    right: -5px;
}

.balloon.left > .charactor {
    position: absolute;
    top: 0;
    left: 0;
}


.balloon.right > .charactor {
    position: absolute;
    top: 0;
    right: 0;
}

.balloon > .balloon-text p:last-child {
    margin-bottom: 0 !important;
}

.contents section {
    margin-left: 10px;
    margin-right: 10px;
}

.contents section p {
    margin-bottom: 10px;
}

.contents section h2 {
    margin-left: -10px;
    margin-right: -10px;
}

.contents section h3 {
    margin: 10px -10px 5px;
    border-top: 2px solid #f3d57c;
    border-bottom: 1px solid #afafaf;
    padding: 5px 10px;
    background: #fdfdfc; /* Old browsers */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#fdfdfc), color-stop(100%,#ebe9e2)); /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top,  #fdfdfc 0%,#ebe9e2 100%); /* Chrome10+,Safari5.1+ */
    background: linear-gradient(to bottom,  #fdfdfc 0%,#ebe9e2 100%); /* W3C */
}

.contents section h4 {
    margin-top: 10px;
}

.contents section dl {
}

.contents section dt {
    background: url(../images/icon_biwa.png) no-repeat 0 50%;
    border-bottom: 1px dashed #ccc;
    -webkit-background-size: 20px;
    padding-left: 25px;
    padding-top: 5px;
    padding-bottom: 5px;
    color: #c30;
}

.contents section dd {
    margin-bottom: 10px;
}

#books tr {
}

#books td {
    padding: 10px 0;
    vertical-align: top;
}

#books .book-title {
    font-weight: bold;
    margin-bottom: 5px;
    margin-right: 5px;
}

#books .book-subtitle {
    font-weight: normal;
    font-size: 12px;
}

#books .book-author {
    margin-bottom: 5px;
    font-size: 12px;
}

#books .book-price .price {
    color: #c33;
    font-size: 13px;
}

.schedule {
    margin-bottom: 10px;
}

.schedule-dates {
    font-size: 11px;
}

.figure {
    margin: 10px 0;
}

.figure.center {
    text-align: center;
}

.figure > .figcaption {
    text-align: center;
    display: block;
}

.contents section ul,
.contents section ol {
    margin-left: 20px;
    margin-top: 10px;
    margin-bottom: 10px;
}

.contents section ul li {
    list-style: disc;
}

.contents section ol li {
    list-style: numeric;
}

.comment {
    background: #eee;
    border-radius: 5px;
    margin: 10px 0;
    padding: 5px;
}

.comment > .comment-author {
    text-align: right;
    font-size: 12px;
    margin: 0;
}

.prices tr {
}

.prices th {
    text-align: left;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    vertical-align: middle;
    padding: 5px 0;
}

.prices td {
    white-space: nowrap;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    vertical-align: middle;
    padding: 5px 0;
}

#products_list li{
	padding:10px 10px;;
	border-bottom:1px solid #999999;
	list-style:none;
}

#products_list a{
	text-decoration: none;
}


.close_btn::before {
	content: "\d7\a0";
	color: red;
}

.login_error {
	color:red;
	padding:5px;
}

/*==========*/
.banner,
.link {
	text-align: center;
	margin: 20px 0;
}

.lead ul {
	color: #f60;
	font-weight: bold;
}

.course {
	border: 2px solid #9bb673;
	width: 100%;
	margin: 20px 0;
}

.course th,
.course td {
	border: 1px solid #9bb673;
	padding: 5px;
}

.course th {
	background: none repeat scroll 0 0 #d1ddbf;
	text-align: center;
}

.course th:first-child {
	width: 6em;
}

.course caption {
	background: none repeat scroll 0 0 #698244;
	color: #fff;
	font-size: 16px;
	padding: 5px 0;
}

.biwamushi-usage {
	border-bottom: 1px solid #ccc;
}

.biwamushi-usage h4 {
	color: #F08100;
}

.biwamushi-usage .complement {
	color: #999;
	font-size: .85em;
}