@charset "utf-8";

/* ----------------------------------basic style----------------------------------- */
body{
	font-family:"Hiragino Maru Gothic Pro", "ヒラギノ丸ゴ Pro W4", sans-serif;
	font-size:10px;
	line-height:1.7;
}
* html body{
	font-size:62.5%;
	font-family:Verdana,"MS P ゴシック",sans-serif;
}
*:first-child+html body{
	font-family: 'メイリオ', Meiryo, sans-serif;
}
html { overflow-y: scroll;	margin-bottom:1px; }
html,body,h1,h2,h3,h4,h5,h6,div,p,ol,ul,li,dl,dt,dd,pre,blockquote,address,table,tr,th,td,form,fieldset{
	margin: 0;
	padding: 0;
	font-style: normal;
	list-style-type: none;
}
table{ border-collapse: collapse;}
img{border: none;vertical-align:bottom;}

h1{font-size: 2em;}
h2{font-size: 1.7em;}
h3{font-size: 1.5em;}
h4,h5,h6,p,li,dt,dd,th,td{font-size: 1.3em;}
pre{
	border: solid 1px #ccc;
	padding: 5px;
	margin: 0 0 10px 0;
	background: #f6f6f6;
	font-family: monospace;
}

a:link,a:visited {
	color:#666;
}
a:hover,a:active {
	color:#999;
	text-decoration:none;
}
/*--------------------------
clearfix
---------------------------*/
.clearfix:after{content:".";display: block;height: 0;clear: both;visibility: hidden;}
.clearfix{ display:inline-table; }
/* Mac OS版IEには適用しない \*/
* html .clearfix { height: 1%; }
*+html .clearfix { height: 1%; }
.clearfix{ display: block; }
/**/



/*--------------------------
Sticky Footer by Ryan Fait
http://ryanfait.com/
--------------------------*/
*{margin: 0;}
html,body {height: 100%;}
#container{min-height: 100%;height: auto !important;height: 100%;margin-bottom:0px;}
#footer{height:30px;}



/* ----------------------------------main style----------------------------------- */

body {
	background:url(../images/bg.jpg) repeat-x left top;
	color:#333;
}

#container {
	width:960px;
	margin:0 auto;
	padding:0 7px 30px;
	background:url(../images/main_bg.png) repeat-y left top;
}

#header {
	height:102px;
	background:url(../images/header_bg.gif) repeat-x left top;
	padding:20px 0 0 35px;
}
#header h1 {
	text-indent:-9999px;
}
#header h1 a {
	display:block;
	width:242px;
	height:80px;
	line-height:1;
	font-size:1em;
	overflow:hidden;
	background:url(../images/logo.gif) no-repeat left top;
}
#g_navi {
	width:960px;
	margin:0 0 35px;
}
#g_navi ul {
	line-height:1;
	font-size:10px;
	margin:0;
	padding:0;
}
#g_navi li {
	line-height:1;
	font-size:1em;
	display:inline;
	text-indent:-9999px;
}
#g_navi li a:link,
#g_navi li a:visited {

	display:inline;
	width:320px;
	height:50px;
	background:url(../images/navi.jpg) no-repeat left top;
	float:left;
	overflow:hidden;
}
#g_navi #g_aisatsu a:link,
#g_navi #g_aisatsu a:visited {
	background-position:0 0;
} 
#g_navi #g_aisatsu a:hover {
	background-position:0 -50px;
}
#g_navi #g_about a:link,
#g_navi #g_about a:visited {
	background-position:-320px 0;
} 
#g_navi #g_about a:hover {
	background-position:-320px -50px;
}
#g_navi #g_practice a:link,
#g_navi #g_practice a:visited {
	background-position:-640px 0;
}
#g_navi #g_practice a:hover {
	background-position:-640px -50px;
}
#footer {
	width:974px;
	padding:18px 0 0;
	margin:0 auto;
	background:url(../images/footer_bg.png) no-repeat left top;
	clear:both;
}
#footer p {
	font-size:1.2em;
	text-align:center;
}

#keyvisiual{
	margin:0;
	padding:0;
	line-height:0;
	font-size:10px;
	overflow:hidden;
}

div#content {
	padding:0 25px 20px;
}

.r_c {
	color:#c03;
}
.b_c {
	color:#06c;
}

/* ----------------------------------top----------------------------------- */

.top #main {
	width:600px;
	display:inline;
	float:left;
}
.top #sub {
	width:298px;
	display:inline;
	float:left;
	padding:0 0 0 12px;
}
.top h2 {
	line-height:1;
	font-size:1em;
	margin:0 0 12px
}
.newsbox {
	padding:6px 22px 8px 12px;
}
.newsbox h3 {
	line-height:1.2em;
	font-size:1.4em;
	font-weight:normal;
	background:url(../images/icon_dot.jpg) no-repeat 0 0;
	padding:2px 0 4px 24px;
}
.newsbox dl {
	padding:0 0 10px 24px;
	border-bottom:1px solid #ccc;
}
.newsbox dt,
.newsbox dd {
	font-size:1.4em;
	line-height:1.2em;
	margin:0 0 8px;
}
.b_links li {
	line-height:1;
	font-size:1em;
	margin:0 0 10px;
}

/* ----------------------------------aisatsu----------------------------------- */

div#content.aisatsu h2 {
	margin-bottom:28px;
}
.aisatsu #main {
	width:640px;
	display:inline;
	float:right;
	margin:0 30px 0 0;
}
.aisatsu #main p {
	font-size:1.4em;
	line-height:1.5em;
	margin:0 0 20px;
}
.aisatsu #main .names {
	text-align:right;
	padding:17px 0;
}
.aisatsu #sub {
	width:195px;
	display:inline;
	float:left;
	padding:0 0 0 20px;
}

/* ----------------------------------photo gallery----------------------------------- */
#gallery {
	width:564px;
	margin:0 28px 0;
}
#gallery li {
	width:70px;
	padding:7px 7px;
	font-size:1em;
	line-height:1em;
	background:url(../images/practice/gallery_item_bg.gif) no-repeat left top;
	margin:0 10px 10px 0;
	display:inline;
	float:left;
}


/* ----------------------------------sets----------------------------------- */


.sets #main {
	width:670px;
	display:inline;
	float:left;
}
.sets #sub {
	width:240px;
	display:inline;
	float:left;
}
.sets h2 {
	font-size:2em;
	padding:0 0 0 10px;
	font-family:"ＭＳ Ｐ明朝", "細明朝体", "ヒラギノ明朝 Pro W3";
	background:url(../images/title_bg.jpg) repeat-y left top;
	margin-bottom:18px;
}
.sets #sub h2 {
	padding:0;
}
.sets h3 {
	background:url(../images/stitle_bg_behind.jpg) repeat-y 0 0;
	padding:2px 0;
	margin:0 0 20px;
	font-size:1.6em;
	line-height:1.2em;
	font-weight:normal;
}
.sets h3 span {
	display:block;
	background:url(../images/stitle_bg.jpg) repeat-y 0 0;
	padding:5px 150px 4px 27px;
}
.sets p {
	font-size:1.4em;
	line-height:1.2em;
	padding:0 12px;
	margin:0 0 15px;
}
#submenu {
	padding:0px 10px;
}
#submenu li{
	font-size:1.4em;
	line-height:1.3em;
	padding:0px 0 1px;
	margin:0 0 9px;
	width:100%;
	vertical-align:bottom;
	background:url(../images/subm_bg_bottom.gif) repeat-x left bottom;
}
#submenu li a {
	color:#666;
	display:block;
	margin:0 0 2px;
	padding:3px 0 4px 14px;
	background:url(../images/subm_bg_left.gif) repeat-y left top;
}
#submenu li a:hover {
	color:#999;
}
#submenu .subm_bit,
#submenu .subm_bit li,
#submenu .subm_bit a {
	background:none;
}

#submenu .subm_bit ul {
	padding:0;
	margin:0;
	width:194px;
}
#submenu .subm_bit ul li {
	font-size:1em;
	line-height:1.2em;
	padding:0 0 0 24px;
	margin:0;
}
#submenu .subm_bit ul li a:link,
#submenu .subm_bit ul li a:visited {
	background:url(../images/icon_subm.gif) no-repeat left 0px;
	padding:0 0 0 20px;
	margin:0 0 6px;
}
#main .gototop {
	clear:both;
	text-align:right;
	margin:0 10px 15px 0;
	font-size:1.1em;
}
.gototop a {
	color:#666;
}
.gototop a:hover {
	color:#999;
}
.s_box {
	border-bottom:1px solid #ccc;
	margin-bottom:24px;
}
.s_box.ends {
	border-bottom:none;
}
.n_box dl,
.s_box dl {
	padding:0 10px;
	margin:0 0 25px;
}
.n_box dt,
.s_box dt {
	font-size:1.4em;
	line-height:1.2em;
	background:url(../images/icon_dot.jpg) no-repeat left 1px;
	padding:2px 0 4px 24px;
}
.n_box dd,
.s_box dd{
	font-size:1.4em;
	line-height:1.2em;
	margin:0 24px 15px;
}

.maps {
	margin:0 0 30px 34px;
}

#main .photos {
	width:187px;
	padding:0 0 17px;
	margin:0 0 22px;
	background:url(../images/flame_bottom_photo.jpg) no-repeat right bottom;
}
#main .photos img {
	display:block;
	background:url(../images/flame_top_photo.jpg) no-repeat left top;
	padding:15px 0 0 13px;
}

.n_box_main {
	width:455px;
	display:inline;
	float:left;
}
.n_box_sub {
	width:198px;
	display:inline;
	float:left;
}
.s_box_main {
	width:446px;
	display:inline;
	float:left;
}
.s_box_sub {
	width:187px;
	display:inline;
	float:left;
}
.m_box .date_list {
	padding:0 0 20px;
	margin:0 12px 24px;
	border-bottom:1px solid #ccc;
}
.m_box .date_list li {
	font-size:1.4em;
	line-height:1.2em;
	background:url(../images/icon_dot.jpg) no-repeat left 1px;
	padding:2px 0 3px 24px;
	margin:0 0 2px;
}
.m_box h3 {
	font-size:1.4em;
	font-weight:normal;
	line-height:1.2em;
	background:url(../images/icon_dot.jpg) no-repeat left 1px;
	padding:2px 0 3px 24px;
	margin:0 12px 6px;
}
.sche_box {
	clear:both;
	padding:0 0 0 35px;
	margin:0 0 18px;
}
.sche_box table{
	width:277px;
	display:inline;
	float:left;
	padding:0 0 0 0;
	margin:0 21px 0px 0;
}

.sche_box tr.heads th {
	 width:277px;
	 font-size:1.4em;
	 font-weight:normal;
	 line-height:1.2em;
	 background:#ccc;
	 padding:2px 5px;
	 text-align:left;
	 border:1px solid #999;
}
.sche_box tr.bodys th {
	width:78px;
	font-size:1.4em;
	line-height:1.2em;
	font-weight:normal;
	text-align:left;
	padding:2px 5px;
	border:1px solid #999;
}
.sche_box tr.bodys td {
	width:37px;
	text-align:center;
	font-size:1.4em;
	line-height:1.2em;
	padding:2px 0;
	border:1px solid #999;
	color:#666;
}
.sche_box .o_area {
	width:270px;
	display:inline;
	float:left;
}

.l_box {
	padding:0 10px 10px 24px;
}
.l_box .l_box_img {
	width:196px;
	display:inline;
	float:left;
}
.l_box .l_box_main {
	width:410px;
	display:inline;
	float:left;
}
.l_box .head {
	background:url(../images/icon_dot.jpg) no-repeat 0 1px;
	padding:2px 0 3px 24px;
	margin:5px 0;
}
.l_box .sub_box_b {
	width:380px;
	background:url(../images/practice/sub_bg_bottom.gif) no-repeat left bottom;
	padding:5px 0;
	margin: 0 0 20px 20px;
}
.l_box .sub_box {
	background:url(../images/practice/sub_bg.gif) repeat-y left top;
	padding:3px 2px 5px;
	margin:0px 0 0;
}
.l_box .sub_box_b h4 {
	font-size:1.4em;
	color:#c03;
	background:url(../images/practice/sub_bg_head.gif) no-repeat left 11px;
	font-weight:normal;
	padding:0 12px;
}
.l_box .sub_box_b h4 span {
	background:#fff;
	padding:3px 1px;
}
.sub_box .floating {
	display:inline;
	float:left;
}
#main .pdf a:link,
#main .pdf a:visited {
	display:block;
	background:url(../images/icon_pdf.jpg) no-repeat left top;
	padding:4px 0 10px 33px;
	color:#c00;
}
#main .pdf a:hover {
	color:#f66;
}
#main .block {
	display:block;
}
#main .leftturn {
	float:left;
	padding:0 10px;
}
#main .clear{
	clear:both;
}