@charset "utf-8";

@import "normalize.css";

html{
	overflow-y: scroll;
}

body{
	color: #333;
	font-size: 14px;
	font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	line-height: 1.5;
	text-align: center;
	background-image : url(back1h.png);
	background-repeat: repeat-x;
}


#container{
	width: 960px;
	margin: auto;
	text-align: center;
	overflow: hidden;
}

a:link{
	color: #0a891e;
}

a:visited{
	color: #0a891e;
}

a:active{
	color: #6fd47f;
}

a:hover{
	color: #6fd47f;
}


/* header */

header{
	width: 960px;
	height: 89px;
	margin: 0 auto 15px;
	display: flex;
	flex-direction: column; 
	justify-content: center;
}

header h1{
	margin: 0;
	font-size: 25px;
	color: #FFFFFF;
	font-weight: bold;
	text-align: left;
	line-height: 1.2;
}


/* nav */

#nav_frame{
	width: 190px;
	height: auto;
	margin: 0 18px 15px 0;
	padding: 0px;
	float: left;
	clear: left;
}

nav{
	width: 190px;
	margin: 0 0 70px;
	padding: 0;
}

ul#nav1{
	list-style-type: none;
	margin: 0;
	padding: 0;
	font-size: 15px;
}

ul#nav1 li{
	width: auto;
	height: auto;
	margin: 0 0 8px;
	padding: 0;
	text-align: left;
	display: block;
	list-style: none;
	position: relative;
}

ul#nav1 a:link, ul#nav1 a:visited{
	width: 154px;
	height: auto;
	padding: 12px 17px 10px;
	text-decoration: none;
	display: block;
	list-style: none;
	color: #0a891e;
	border: 1px solid #0a891e;
	background-color: #FFF;
}

ul#nav1 a:active, ul#nav1 a:hover{
	color: #0a891e;
	border: 1px solid #f1f2ed;
	background-color: #f1f2ed;
}

ul#nav1 li a::before{
    display: block;
    content: "";
    position: absolute;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 50%;
	right: 20px;
    width: 6px;
    height: 6px;
    margin-top: -4px;
    background: #0a891e;
}

ul#nav1 li a::after{
    display: block;
    content: "";
    position: absolute;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    top: 50%;
    right: 21px;
    width: 6px;
    height: 6px;
    margin-top: -4px;
    background: #FFF;
}

ul#nav1 li a:hover::before{
    background: #0a891e;
}

ul#nav1 li a:hover::after{
    background: #f1f2ed;
}

#link{
	width: 190px;
	margin: 0 0 50px;
	padding: 12px 0 30px;
	text-align: left;
}

#link p{
	margin: 0;
	padding: 7px 3px 0;
	text-indent: 0;
	border-top: 4px solid #f1f2ed;
	font-size: 15px;
}

ul#nav2{
	list-style: none;
	margin : 8px 10px;
	padding : 0;
}

ul#nav2 li{
	margin: 0;
	padding: 2px 0 2px;
	background-image: none;
	list-style: none;
	color: #0129BC;
	list-style-image: none;
}


/* footer */

footer{
	width: auto;
	height: 56px;
	margin: 0 auto;
	padding: 0 auto;
	font-size: 12px;
	color: #FFF;
	clear: both;
	background-image : url(back1f.png);
	background-repeat: repeat-x;
}

#footer_color{
	width: 960px;
	height: 56px;
	margin: 0 auto;
}

#copy{
	width: auto;
	height: auto;
	margin: 20px 0 0;
	padding: 0;
	float: left;
}

#flink{
	width: auto;
	height: auto;
	margin: 20px 0 0;
	padding: 0;
	font-size: 14px;
	float: right;
}

#flink a{
	color: #FFFFFF;
	font-size: 12px;
}


/* top */

#top{
	width: 750px;
	margin: 0 0 15px;
	float: right;
}

#news{
	width: 750px;
	height: auto;
	margin: 0;
	padding: 0 0 10px;
}

#news ul{
	width: auto;
	height: 160px;
	margin: 0;
	padding: 10px 10px 20px 35px;
	overflow: auto;
}

#news ul li{
	padding: 2px 0 13px;
}

#about{
	width: 750px;
	height: auto;
	margin: 0 0 20px;
	padding: 0 0 2px;
}

#about p{
	margin: 5px 10px;
	padding: 0;
	text-indent: 0;
	line-height: 1.7;
}


/* main */

#main{
	width: 750px;
	text-align: left;
	margin: 0;
	padding: 0 0 25px;
	float: right;
	clear: right;
	overflow: hidden;
}

#main h1{
	width: 725px;
	height: 24px;
	margin: 0 0 15px;
	padding: 24px 0 20px 25px;
	color: #FFF;
	line-height: 24px;
	font-size: 24px;
	font-weight: bold;
	background-color: #0a891e;
}

h2{
	width: 740px;
	font-size: 22px;
	font-weight: normal;
	margin: 30px auto 10px;
	padding: 8px 5px 0;
	line-height: 22px;
	border-top: 5px solid #0a891e;
	clear: both;
}

h3{
	margin: 15px 5px 5px 8px;
	padding: 0;
	font-weight: normal;
	font-size: 20px;
	clear: both;
}

h3.top{
	margin: 0 10px;
	font-size: 21px;
	color: #0a891e;
}

h4{
	padding: 0;
	font-size: 18px;
	margin: 15px 5px 5px 13px;
	font-weight: normal;
	clear: both;
}

h5{
	padding: 0;
	font-size: 16px;
	margin: 15px 5px 5px 18px;
	font-weight: normal;
	clear: both;
}

p{
	margin: 5px 15px 5px 20px;
	padding: 0;
	text-indent: 0.7em;
}

p.noindent{
	text-indent: 0;
}


/* list */

ul{
	margin: 5px 15px 5px 47px;
	padding: 0;
}

ul li{
	list-style: none;
	padding: 2px 0;
	list-style-type: disc
;
}

li ul{
	margin: 5px 0 0 15px;
}

ol{
	margin: 5px 15px 5px 50px;
	padding: 0;
}

ol li{
	margin: 0;
	padding: 2px 0;
}

li ol{
	margin: 5px 0 0 10px;
}


/* table */

table{
	padding: 0;
	margin: 10px 10px 10px 30px;
}

table th{
	border: 1px solid #CCC;
	padding: 5px;
	font-weight: normal;
	text-align: center;
	background-color: #F2F2F2;
}

table td{
	border: 1px solid #CCC;
	padding: 5px;
}

table.noborder{
	padding: 0;
	margin: 10px 10px 10px 30px;
}

table.noborder th{
	padding: 5px;
	font-weight: normal;
	text-align: center;
	background-color: #F2F2F2;
	border: none;
}

table.noborder td{
	padding: 5px;
	border: none;
}

table.center{
	margin: 10px auto;
	text-align: left;
}

table.member{
	width: 700px;
}


/* figure */

figure{
	margin: 10px 20px;
}

figure.center{
	margin: 10px auto;
}

figure.fr{
	float: right;
	margin: 0 15px 5px 10px;
}

figure.fl{
	float: left;
	margin: 0 10px 5px 25px;
}

figure img{
	margin: 5px;
}

figcaption{
	font-size: 0.85em;
	line-height: 1.1;
	padding: 0 5px;
}


/* utility */

.mb0{
	margin-bottom: 0;
}

.mb05{
	margin-bottom: 5px;
}

.mb10{
	margin-bottom: 10px;
}

.mb15{
	margin-bottom: 15px;
}

.mb20{
	margin-bottom: 20px;
}

.mb25{
	margin-bottom: 25px;
}

.mb30{
	margin-bottom: 30px;
}

.mt0{
	margin-top: 0;
}

.mt05{
	margin-top: 5px;
}

.mt10{
	margin-top: 10px;
}

.mt15{
	margin-top: 15px;
}

.mt20{
	margin-top: 20px;
}

.mt25{
	margin-top: 25px;
}

.mt30{
	margin-top: 30px;
}

.clear{
	clear: both;
}

.center{
	text-align: center;
	text-indent: 0;
}

.right{
	text-align: right;
}

.left{
	text-align: left;
}

.small{
	font-size: 0.85em;
}

hr{
	border: 1px dotted #666666;
	margin: 15px 15px;
	clear: both;
}

blockquote{
	margin: 5px 10px 5px 10px;
}

blockquote p{
	text-indent: 0;
}