@charset "UTF-8";

/*--------------------------------------------*/
body {
	font-family:  "メイリオ", meiryo, Osaka, "ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック", sans-serif;
	/*
	font-family: "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3", sans-serif;
	font-family: "ヒラギノ明朝 Pro","HiraMinPro","ＭＳ 明朝","ＭＳ Ｐ明朝","HG明朝E","MS PMincho",serif;*/
	margin:0px;
	padding:0px;
	text-align:center;
	font-size:100%;
	line-height:1em;
	color:#333;
}
a{color:#333; text-decoration: none;}
a:hover{ text-decoration:underline; }
body div, header, footer, section { margin:0 auto; text-align:left; }

h1 {font-size:175%;}
h2 {font-size:175%;}
h3 {font-size:125%;}
h4 {font-size:100%;}
h5 {font-size:100%;}
h6 {font-size:100%;}
i  {font-size:80%; font-style:normal; color:#999;}
h1,h2,h3,h4,h5,h6,div,ul,li,dl,dt,dd,p,a,table,tr,td,address,img{
	margin:0px;
	padding:0px;
	border-width:0px;
	line-height:1.5em;
	text-align:left;
	font-style:normal;
}
ul{list-style:none outside;}
input,textarea {font-family: "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3", sans-serif; color:#555555;}
table {border-collapse:collapse; border-spacing:0;}
em {font-style:normal;}
/*************/
#clear, .clear {clear:both;}
.c {margin-left:auto; margin-right:auto;}
.l {float:left;}
.r {float:right;}
#main .t_c {text-align:center;}
img.l { margin:0 10px 10px 0; }
img.r { margin:0 0 10px 10px; }

#navSub li a:hover,footer nav li a:hover{ text-decoration: none; }
/*
.ph img,
img.ph {
	border:3px solid #FFF; 
	box-shadow:2px 2px 3px 2px #CCCCCC;
	-moz-box-shadow:2px 2px 3px 2px #CCCCCC;
	-webkit-box-shadow:2px 2px 3px 2px #CCCCCC;
}

/* -------------------------------------------- */
#contents a:hover img,
.btn a:hover img, a.btn:hover img,
#navSub li a:hover
{
	opacity: .30; /* Standard: FF gt 1.5, Opera, Safari */
	filter: alpha(opacity=30); /* IE lt 8 */
	-ms-filter: "alpha(opacity=30)"; /* IE 8 */
	-khtml-opacity: .30; /* Safari 1.x */
	-moz-opacity: .30; /* FF lt 1.5, Netscape */
}
/* --------------------------------------------*/

/* wrapper */
header, footer { width:100%; min-width:960px; margin:0 auto; }

/* inner */
footer ul,
.inner { display:block; clear:both; margin:0 auto; width:960px; position:relative; }

/* header ********** */

header .header_box{
	background: url(../img/head_line.jpg) repeat-x top;
	height: 100px;
	padding-top: 30px;
}
/* logo*/
header h1{
	float: left;
	padding-top: 25px;
}
header p{
	width: 215px;
	float: right;
}
header .mv{
	background:url(../img/mv.jpg) no-repeat center top #f9f9f9;
	padding-top: 190px;
}

/* navMain */
#navMain,#navSub   {background: #FFF; padding-top: 15px;}

#navMain ul,#navSub ul{ margin:0 auto; width:960px;}

#navMain li{ float:left; width: 180px; margin-left: 14px;}
#navMain li:first-child{ margin-left:0;}

#navSub ul{ text-align: center;}
#navSub li{	display: inline-block; margin-left: 14px;}
#navSub li:first-child{ margin-left: 0;}
#navSub li a{
	background: url(../img/nav_ptn.jpg);
	font-size: 95%;
	padding: 5px 15px;
	display: inline-block;
}
#navSub li.bg01 a{ background:#FFF; border:1px solid #979998; }/* 練習内容 */
#navSub li.bg02 a{ background:#d5e5d5; }/* toyohoro */
#navSub li a.act { background:#043d60; color:#FFF; }
#navSub li.bg02 a.act { background:#0e8480; }

/* contents ********** */

#contents         { margin:50px auto 50px; }

#contents section { margin-bottom:40px; }

#contents.title1 h2 { 
	background: url(../img/title_bg.jpg);
	color: #d61826;
	line-height:100px;
	font-size: 24px;
	padding-left:25px;
	margin-bottom: 20px;
}

#contents.title2 h2 { 
	background: #f5f5f5;
	padding: 50px 20px;
	font-size: 18px;
	text-align: center;
	margin-bottom: 20px;}

#contents.title2 h2 span{
	display: inline-block;
	width: auto;
	height: auto;
	position: relative;
}

#contents.title2 h2 span:before{
	background: url(../img/title_icon.png) no-repeat left center;
	width: 65px;
	height: 30px;
	display: block;
	position: absolute;
	left:0;
	top: -2px;
	content: "";
	margin-left: -65px;
}
#contents.title2 h2 span:after{
	background: url(../img/title_icon.png) no-repeat right center;
	width: 65px;
	height: 30px;
	display: block;
	position: absolute;
	right:0;
	top: -2px;
	content: "";
	margin-right: -65px;
}

#contents p  { line-height:1.8em; text-align:justify; margin-bottom:0.8em; }

#contents h3 {
	padding-left: 20px;
	margin-bottom: 20px;
	line-height: 50px;
	/*width: 940px;*/
	background: url(../img/category_title_bg.jpg) no-repeat center;
	font-size: 16px;
}

/* pagetop ---------- */
.pagetop_area {
	padding-bottom: 50px;
	border-top: 1px solid #b1c3af;
}

.pagetop_area p{ margin-bottom: 0;}

.pagetop_area span {
	display: inline-block;
	width: 37px;
	height: 37px;
	float: right;
	position: relative;
	top:-18px;
	margin-bottom: -18px;
}

/* footer ********** */
footer {
	border-top:#d61826 1px solid;
}


/* nav */
footer nav {
	width: 960px;
	margin:0 auto;
	border-left: 1px solid #d61826;
}
footer nav ul:first-child{
	border-bottom: 1px solid #d61826;}

footer nav li{
	width: 192px;
	float: left;}

footer nav li a{
	padding: 20px 10px;
	border-right: 1px solid #d61826;
	text-align: center;
	display: block;
	font-size: 12px;
}
footer nav li a:hover{background: #f2f2f2;}

footer .footer_box{
	background: #043d60;
	border-bottom: 10px solid #d61826;
	color: #FFF;
	padding: 45px 0 20px;
}
/* copyright */
footer small {
	display:block;
	text-align: center;
	clear:both;
	font-size:12px;
	padding-top:25px;
}

/* --------------------------------------------*/
sup { font-size:60%; }

/*font-family
#contents h1,
#contents h2,
#contents h3,
#contents h4,
#contents h5,
#contents h6
{ font-family: "ヒラギノ明朝 Pro","HiraMinPro","ＭＳ 明朝","ＭＳ Ｐ明朝","HG明朝E","MS PMincho",serif; }*/

/* clearfix */
nav:after,
section:after,
article:after,
div:after,
.clearfix:after
{ content:"."; display:block; height:0; clear:both; visibility:hidden; }
nav,
section,
article,
div,
.clearfix
{ display:inline-block;}
/* ¥*/
* html nav,
* html section,
* html article,
* html div,
* html .clearfix
{ height:1%; }
nav,
section,
article,
div,
.clearfix
{ display:block; }
/* */

/* --------------------------------------------*/

/* info-not 工事中 */
.info-not {
	padding:200px 15px;
	border:1px solid #CCC; border-radius:15px;
	background:#EEE;
}
#contents p.info-not { text-align:center; letter-spacing:.2em; }
