@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,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	color: #333333;
	font-family:"ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-size: 100%;
	font-weight: normal;
	line-height: 170%;
}

/* remember to define focus styles! */
:focus {outline: 0;}
ul {list-style: none;}
/* tables still need 'cellspacing="0"' in the markup */
img {border:0;}


/* body */
body {
	margin: 0;
	padding: 0;
	text-align: center;
	font-size:14px;
	background-position: center;
	background-image: url(images/head/head_back.jpg);
	background-repeat: repeat-x;
	background-position:top center;
}

.fl-s{
	float:left;
	width:200px;
}
.fr-s{
	float:right;
	width:380px;
	font-size:100%!important;
}
a img {border: 0px;}
a {
	text-decoration:none;
}
a:hover{
	color: #59C6EC;
}
a:active, a:hover {text-decoration: underline;}

p {
	margin: 0 0 12px 0;
	padding: 0;
	}
.re{
	color: #DC0000;
}
.or{
	color: #FF7F00;
}
.lor{
	color: #FF7F00;
}
.gr{
	color: #5CBA00;
}
.bl{
	color:#00A4E1;}
.marker{
	background-color: #ECF8C2;
	padding:3px 4px;
	}
strong {font-weight: bold;}
.bold {font-weight: bold;}

.bottom5{ margin-bottom:5px;}
.bottom7{ margin-bottom:7px;}
.bottom10{ margin-bottom:10px;}
.bottom15{ margin-bottom:15px;}
.bottom20{ margin-bottom:20px;}
.bottom30{ margin-bottom:30px;}
.bottom40{ margin-bottom:40px;}
.bottom50{ margin-bottom:50px;}
.top5{ margin-top:5px;}
.top10{ margin-top:10px;}
.top15{ margin-top:15px;}
.top20{ margin-top:20px;}
.top30{ margin-top:30px;}
.top80{ margin-top:80px;}

.right10{margin-right:10px;}
.right20{margin-right:20px;}
.left10{ margin-left:10px;}
.left30{ margin-left:30px;}

.block {display: block;}
.center {text-align: center;}
.right {float: right;}
.left {float: left;}
.clear {clear: both;}
.img_r{margin:0 0 10px 20px; float:right; overflow:hidden;}
.img_l{margin:0 20px 10px 0; float:left; overflow:hidden;}


h1 {
	margin:0;
	padding:0;
}
h2 {
	font-size:24px;
	margin: 0 0 7px 0;
	padding: 0;
}
h3 {
	font-size:21px;
	margin: 0 0 10px 0;
	padding: 0;
}
h3.green{
	font-size:21px;
	line-height:100%;
	margin: 0;
	padding: 0;
	color:#5CBA00;
}
h4{
	font-size:18px;
	margin:10px 0 10px 0;
	}
h5{
	font-weight:bold;
	}
/* -------------------------------------------------------------------
 pagetop
------------------------------------------------------------------- */

.pagetop{
	position: fixed;
	right:50px;
	bottom:130px;
	z-index:100;
	}


/* -------------------------------------------------------------------
 header
------------------------------------------------------------------- */
#component_header {
	width: auto;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
}
#header {
	width:980px;
	overflow: hidden;
	margin: 0 auto;
	padding:20px 0;
}
#header h1 img{
	margin: 6px auto 0;
	padding:0;
	float:left;
}
#header p,
#header p img{
	text-align:right;
	color:#FF8000;
	}

#header p a.btn {
	display: inline-block;
	margin-left: 20px;
	transition: .3s;
}

#header p a.btn:hover {
	opacity: .8;
}

/* -------------------------------------------------------------------
 nav
------------------------------------------------------------------- */
#component_nav {
	width: auto;
	margin: 0 auto 30px;
	padding: 0;
	text-align: left;
	overflow: hidden;
	height: 50px;
}
#nav {
	width: 981px;
	margin: 0 auto;
	padding:0;
	overflow: hidden;
	clear: both;
	display:block;
}
#nav ul{
	margin:0;
	padding:0;
	}
#nav ul li{
	float:left;
	margin:0;
	padding:0;
	}
#nav ul li.end{
	float:left;
	margin:0 ;
	padding:0;
	}


/* -------------------------------------------------------------------
 home rotation
------------------------------------------------------------------- */
#component_rotation{
	clear: both;
	width: auto;
	margin: 0 auto 30px auto;
	padding: 0;
	overflow: hidden;
	}

#rotation{
	width:980px;
	height: 380px;
	overflow: hidden;
	margin: 0 auto;
	padding:0;
	border:none;
	}

ul.pics{
	float:left;
	margin:0 auto;
	padding:0;}
ul.pics img{
	float:left;
	border:0;
	margin:0 auto;
}
ul.pics li{
	width:980px;
	}


/* -------------------------------------------------------------------
 content_flame
 ------------------------------------------------------------------- */
.component_content{
	clear: both;
	width: auto;
	margin: 0 auto ;
	padding:0;
	overflow: hidden;
	}
.content{
	clear: both;
	width: 980px;
	margin:20px auto 0 auto;
	padding:0;
	overflow: hidden;
	text-align: left;
	}


.l_content{
	float:left;
	width:640px;
	margin:0 0 30px 0;
	text-align:left;
	overflow:hidden;
	}
.l_content .inner{
	margin:0 0 40px 0;
	overflow:hidden;
	}


.l_content h2{
	margin:0 0 20px 0;
	}
.l_content h3{
	margin:0 0 22px 0;
	}





/* -------------------------------------------------------------------
 home l_content
 ------------------------------------------------------------------- */

.bnr_yoyaku {
	margin-bottom: 20px;
}
.bnr_yoyaku a {
	transition: .3s;
}
.bnr_yoyaku a:hover {
	opacity: .8;
}

#pickup{
	overflow:hidden;
	margin:0 0 40px 0;
	}
#pickup img{
	float:left;
	margin:0;
	padding:0;
	}
#treatment_menu{
	overflow:hidden;
	margin:0 0 40px 0;
	}
#treatment_menu ul{
	width:640px;
	overflow:hidden;
	margin:0;
	padding:0;
	}
#treatment_menu ul li{
	float:left;
	margin:0 20px 10px 0;
	padding:0;
	}
#treatment_menu ul li.end{
	float:left;
	margin:0 0 10px 0;
	padding:0;
	}
#cal{
	overflow:hidden;
	margin:0 0 40px 0;
	}

#news{
	overflow:hidden;
	margin:0 0 40px 0;
	}
#news h3{
	margin:0 0 10px 0;}
#news dl{
	width:600px;
	margin:0 auto;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #CCC;
	padding:7px 0;
	}
#news dl dt{
	background-image: url(images/arrow_gr.png);
	background-repeat: no-repeat;
	background-position: 4px 6px;
	padding:0 0 0 16px;
	color:#54B200;
	}

#news dl dd{
	}

#profile{
	overflow:hidden;
	margin:0 0 40px 0;
	}
#profile .inner{
	overflow:hidden;
	width:600px;
	margin:0 auto;
	padding:0;
	}
#profile .inner_back{
	overflow: hidden;
	width: 570px;
	margin: 0 auto;
	padding:15px 5px 15px 25px;
	background-image: url(images/profile_back.jpg);
	background-repeat: repeat;
	}
#profile .inner_back .left{
	overflow: hidden;
	width: 345px;
	margin: 0 0 20px 0 ;
	padding:0;
	}
#profile .inner_back .right{
	float:left;
	overflow: hidden;
	width: 210px;
	margin: 0 ;
	padding:0;
	}
ul.list{
	float:left;
	clear:both;
	overflow:hidden;
	margin:20px 0 0 0;
	}
ul.list li{
	background-image: url(images/icon_bl.png);
	background-repeat: no-repeat;
	background-position: left center;
	padding:0 0 0 12px;
	}
#access{
	overflow:hidden;
	margin:0 0 40px 0;
	}
#access a{
	float:right;}


/* -------------------------------------------------------------------
 side
 ------------------------------------------------------------------- */


#side{
	float:left;
	width:300x;
	margin:0 38px 40px 0 ;
	overflow:hidden;
	}
#side .inner{
	clear:both;
	float:left;
	margin:0 0 40px 0 ;
	overflow:hidden;
	}
#side h3{ color:}
#side h4{ color:#FF7F00; font-size:14px;}
#side .banner{
	clear:both;
	float:left;
	margin:0 0 25px 0 ;
	overflow:hidden;
	width:300px;
	}
#side .banner img{
	margin:0 0 15px 0;
	}
.movie{
	margin-bottom:15px;
}
/* -------------------------------------------------------------------
 footer
 ------------------------------------------------------------------- */
#component_footer_nav{
	clear: both;
	width: auto;
	margin: 0 auto;
	padding: 0;
	overflow: hidden;
	padding: 10px 0 3px 0;
	background-color: #E2F5FB;
	border-bottom:solid 1px #FFF;
}
#footer_nav{
	overflow: hidden;
	margin: 0 auto;
	padding:0 0 ;
	width: 970px;
	height:38px;
	text-align: left;
	}

#footer_nav ul{
	width: 970px;
	margin:5px 0 0 0;
	padding:0;
	}
#footer_nav ul li{
	float: left;
	margin: 0 30px 0 0;
	padding: 0 0 0 12px;
	background-image: url(images/foot_bl.png);
	background-repeat: no-repeat;
	background-position: left center;
	}


#component_footer{
	clear: both;
	width: auto;
	margin: 0 auto 0;
	padding: 0;
	overflow: hidden;
	background-color:;
	padding: 10px 0 3px 0;
	background-color: #F6F7FA;
}
#footer{
	overflow: hidden;
	margin: 0 auto;
	padding:10px 0 15px 0;
	width: 980px;
	text-align: left;
	}
#foot01{
	overflow:hidden;
	float:left;
	width:376px;
	}
#foot02{
	overflow:hidden;
	float:left;
	width:268px;
	margin:0 15px 0 0;
	}
#foot03{
	overflow:hidden;
	float:left;
	width:319px;
	}
p.copy {
	clear:both;
	display:block;
	margin:0 auto 5px;
	width: 980px;
	text-align: left;
	padding:0;
	font-size:10px;
	}



#message{
	background-color: #F6F2E4;
	padding: 20px 20px 10px 20px;
}
#message p{
	font-family:"ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
}

/* -------------------------------------------------------------------
 2nd
 ------------------------------------------------------------------- */
.l_2nd_content {
	float:left;
	width:640px;
	margin:0 0 30px 0;
	text-align:left;
	overflow:hidden;
	}
.l_2nd_content .inner{
	margin:0 auto 40px;
	overflow:hidden;
	}

.l_2nd_content .inner620{
	width:620px;
	margin:0 auto 50px;
	overflow:hidden;
	}
.l_2nd_content h3{
	margin:0 0 22px 0;
	}
.l_2nd_content h4{
	margin:0 0 18px 0;
	}

.free_box{
	overflow:hidden;}

/* -------------------------------------------------------------------
 staff
 ------------------------------------------------------------------- */
.staff_box{
	overflow: hidden;
	width: 620px;
	background-image: url(../staff/images/border.gif);
	background-repeat: no-repeat;
	background-position: center bottom;
	padding:0 0 30px 0;
	margin:30px 0 0 0;
	}
.staff_box2{
	overflow: hidden;
	width: 620px;
	background-image: url(../staff/images/border.gif);
	background-repeat: no-repeat;
	background-position: center bottom;
	padding:0 0 30px 0;
	margin:30px 0 0 0;
	}
.staff_box img{
	float:left;
	clear:both;
	margin:0 30px 10px 0;
	}
.staff_box2 img{
	float:left;
	clear:both;
	margin:0 30px 10px 0;
	}
.staff_box h5{
	color:#00A5DF;
	margin:0 0 12px 0;
	}
.staff_box2 h5{
	color:#00A5DF;
	margin:0 0 12px 0;
	}
.staff_box .name{
	overflow: hidden;
	font-size: 18px;
	width: 390px;
	margin: 0 0 20px 0;
	border-bottom: 1px dotted #999;
	padding:0 0 20px 0;
	}
.staff_box2 .name{
	overflow: hidden;
	font-size: 18px;
	width: 390px;
	margin: 0 0 20px 0;
	border-bottom: 1px dotted #999;
	padding:0 0 20px 0;
	}
.staff_box .name span{
	padding:0 0 0 20px;
	font-size:12px;
	color:#00A5DF;
}
.staff_box2 .name span{
	padding:0 0 0 20px;
	font-size:12px;
	color:#00A5DF;
}

/* -------------------------------------------------------------------
 treatment
 ------------------------------------------------------------------- */
ul#treatment_menu{
	overflow:hidden;
	margin:0;
	padding:0
	}
ul#treatment_menu li{
	float: left;
	width: 199px;
	margin: 0 ;
	background-image: url(images/foot_bl.png);
	background-repeat: no-repeat;
	background-position: 0px 9px;
	padding:0 0 7px 12px;
	}

ul.check_re{
	margin:0 0 20px 0;
	}
ul.check_re li{
	margin:0 0 7px 0;
	background-image: url(images/icon_check_r.gif);
	background-repeat: no-repeat;
	background-position: 0px 3px;
	padding:0 0 0 23px;
	}

ul.check_g{
	margin:0 0 20px 0;
	}
ul.check_g li{
	margin:0 0 7px 0;
	background-image: url(images/icon_check_g.jpg);
	background-repeat: no-repeat;
	background-position: 0px 3px;
	padding:0 0 0 23px;
	}

ul.merit{
	margin:0 0 20px 0;
	padding:0;
	}
ul.merit li{
	margin:0 0 7px 0;
	background-image: url(images/icon_merit.gif);
	background-repeat: no-repeat;
	background-position: 0px 2px;
	padding:0 0 0 65px;
	}

ul.star{
	margin:0 0 20px 0;
	padding:0;
	}
ul.star li{
	width:100%;
	float:left;
	margin:0 0 12px 0;
	background-image: url(images/icon_star.gif);
	background-repeat: no-repeat;
	background-position: 0px 2px;
	padding:0 0 0 24px;
	color:#49BB00;
	font-weight:bold;
	overflow:hidden;
	}
ul.star li p{
	clear:both;
	display:block;
	width:100%;
	color:#333;
	font-weight: normal;
	}

.kids_box{
	clear: both;
	overflow: hidden;
	text-align: left;
	border-radius: 7px;        /* CSS3草案 */
	-webkit-border-radius: 6px;    /* Safari,Google Chrome用 */
	-moz-border-radius: 6px;   /* Firefox用 */
	width: 556px;
	padding: 35px;
	margin: 0 0 20px 0;
	text-align: center;
	display: block;
	border: 7px solid #B0E18B;
	background-color: #F7FFEE
	}
.kids_box h5{
	margin:12px 0;}
.kids_box p{
	text-align:left;
	}


/* -------------------------------------------------------------------
 clinic
 ------------------------------------------------------------------- */

/*-----------gallery common-----------*/

#plan_box{
	position: relative;
	margin:0 auto ;
	height:412px;
	background-color: #FFF;
}
#plan_box #plan_view {
	position: relative;
	width:435px;
	height:290px;
	top:0px;
	overflow:hidden;
	left: 210px;
}
#plan_box #plan_view p {
	position: absolute;
	top: 0px;
}
#plan_box #plan_sam {
	list-style-type: none;
	top: 0px;
	position: absolute;
	width: 212px;
	overflow:hidden;
}

#plan_box #plan_sam li {
	float: left;
	margin:0 10px 8px 0px;
	vertical-align: bottom;
}
#plan_box #plan_sam li img {
	vertical-align: bottom;
	cursor: pointer;
	border:solid 3px #CCCCCC;
}
#plan_box #plan_sam li.active img{
	opacity:1.0;
	filter:alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
	width: 90px;
	height: 90px;
}
#plan_box #plan_sam li img:hover {
	opacity: 0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha( opacity=60 )";
	border:solid 3px #0054A7;
}

#plan_box #caption_plan01 {
	padding:7px 10px 0 220px;
	text-align: left;
	display: block;
	height:21px;
}
#plan_box #caption_plan01 p {
	font-size:16px;
	font-weight: bold;
	color: #00A5DF;
}
#plan_box #caption_plan02 {
	text-align: left;
	padding:3px 10px 10px 220px;
	width: auto;
	display: block;
	overflow:hidden;
}

/* -------------------------------------------------------------------
 access
 ------------------------------------------------------------------- */
/*
p.access1{
	display:block;
	width:210px;
	margin:0;
	float:left;
	}
p.access2{
	display:block;
	width:198px;
	margin:0 ;
	float:left;
	}
 */

 ul#guide{}
 ul#guide li{
	 margin:0 0 30px 0;
	 }

/* -------------------------------------------------------------------
 voice
 ------------------------------------------------------------------- */
.voice_txt{
	margin:0 0 40px 0;
	padding:0 0 4px 0;
	overflow:hidden;
	border-bottom: double 3px #CCCCCC;
	}
.voice_txt h5{
	background-color: #E2F5FB;
	padding: 7px;
	margin:0 0 14px 0;
	}
/* -------------------------------------------------------------------
 price
 ------------------------------------------------------------------- */
 .l_2nd_content .price_border{
	width:620px;
	margin:0 auto 40px;
	padding:0 0 20px 0;
	overflow:hidden;
	border-bottom:dotted 1px #999999;
	}
 .l_2nd_content .price{
	width:620px;
	margin:0 auto 20px;
	padding:0 0 20px 0;
	overflow:hidden;
	}

 .price_border h3{
	font-size:32px;
	color:#00A6DD;
	font-weight:bold;
	margin:0 0 25px 0;
	line-height:100%;
	}

 .price h3{
	font-size:32px;
	color:#00A6DD;
	font-weight:bold;
	margin:0 0 5px 0;
	line-height:100%;
	}

 .price_border h4,
 .price h4{
	background-image: url(../price/images/icon_h5.gif);
	background-repeat: no-repeat;
	background-position: left center;
	padding:0 0 0 30px;
	}
 .price_border h5 ,
 .price h5{
	background-image: url(../price/images/icon_price.gif);
	background-repeat: no-repeat;
	background-position: left center;
	padding:0 0 0 30px;
	margin:0 0 18px 0;
	color:#FF2500;
	}


table#table-01 {
    width: 610px;
    border-top: 1px #999 dotted;
    border-bottom: 1px #999 dotted;
    border-collapse: collapse;
    border-spacing: 0;
	padding:0 0 10px 0;
	margin:0 0 10px 0;
}

table#table-01 th {
    padding: 10px;
    border-top: 1px #999 dotted;
    border-bottom: 1px #999 dotted;
    border-width: 0 0 1px 1px;
    background: #F5F5F5;
    line-height: 120%;
    text-align: left;
}
table#table-01 td {
    padding: 10px;
    border-top: 1px #999 dotted;
    border-bottom: 1px #999 dotted;
    border-width: 0 0 1px 1px;
    text-align: left;
}

table#table-01 td.p{
	text-align:right;
	}

.price ul{
	overflow:hidden;
	margin:10px 0 20px 0;
	}
.price ul li{
	background-image: url(../price/images/icon_list.gif);
	background-repeat: no-repeat;
	background-position: left center;
	padding:0 0 0 24px;
	color:#EF4B54;
	}
/* -------------------------------------------------------------------
 recruit
 ------------------------------------------------------------------- */

/* -------------------------------------------------------------------
 2017.05～
 ------------------------------------------------------------------- */
.title-voice{
	font-size:16px;
	border-left:#00A6DD solid 8px;
	border-bottom:#00A6DD solid 1px;
	margin-bottom:20px;
	background-color:#EFEFEF;
	padding:5px 10px;
	font-weight:bold;
}
.voice-p{
	float:right;
	margin:0 0 20px 20px;
}
.voice-t{
	margin:50px 0 0 0;
	border-top:#666 dashed 1px;
	padding-top:30px;
}
.p-b1{
	margin-bottom:30px;
}
/* -------------------------------------------------------------------
 2019.06～ 
 ------------------------------------------------------------------- */
.color-b{
	color: #00A6DD;
}
.voice-s{
	margin-bottom: 25px;
}
table.infield tr th{
	width: 170px;
	text-align: left!important;
}
/* -------------------------------------------------------------------
 2021.06～ 
 ------------------------------------------------------------------- */
 #dr #dr_message{
	width:100%;
	float:right;
	margin:-70px 0 40px 0;
	padding:10px 0 0 0;
	}
#dr{
	width:640px;
	margin:0 auto;
	padding:0;
	overflow:hidden;
	}
#dr #dr_photo{
	width:220px;
	float:left;
	margin:0;
	padding:0;
	margin-bottom:180px;
	}
#dr ul{
	margin:20px 0 0 0;
	}
#dr ul li{
	margin:0 0 7px 0;
	padding:0;
	}
#dr ol{
	margin:0 0 20px 0;
	}
#dr ol li{
	margin:0 0 6px 0;
	padding:0;
	list-style-type:none;
	}
	.esguide-1{
	width:200px;
	float:left;
}
.esguide-2{
	width:200px;
	float:left;
	margin:0 20px;
}
.esguide-3{
	width:200px;
	float:left;
}
.esguide-box{
	margin-top:20px;
	clear:both;
	padding-bottom:20px;
}
.esguide-m{
	margin-top:70px!important;
}
.esguide-price{
	padding:10px;
	border-bottom:#AF0000 solid 1px;
	border-top:#AF0000 solid 1px;
	color:#AF0000;
	clear:both;
	margin-top:20px;
	padding-left:0px;
}
.w188{
	width:156px;
	float:right;
}
span.or1{
	color:#DF7000;
}
.esguide-box{
	margin-top:20px;
	clear:both;
	padding-bottom:20px;
}
.esguide-m{
	margin-top:70px!important;
}
.esguide-price{
	padding:10px;
	border-bottom:#AF0000 solid 1px;
	border-top:#AF0000 solid 1px;
	color:#AF0000;
	clear:both;
	margin-top:20px;
	padding-left:0px;
}