@import url(https://fonts.googleapis.com/css?family=Roboto:400,400italic,500italic,500,700,700italic);
body {
	font-family:Roboto, "Droid Sans", "游ゴシック体", "Yu Gothic", "YuGothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	background:url(../images/body_bg.png)
}
.layout {
	width:960px;
	margin:0 auto;
	overflow:hidden
}
#wrap {
	background:url(../images/wrap_bg.png) repeat-x
}
#hd {
	position:fixed;
	left:0;
	top:0;
	width:100%;
	z-index:-100
}
#nav ul {
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap
}
#nav ul li {
	width:100%
}
#nav ul li a {
	display:block;
	padding:10px 15px;
	color:#fff;
	text-decoration:none;
	text-shadow:2px 2px 2px rgba(0, 0, 0, 0.2);
	font-size:1.2em;
	border-bottom:1px solid rgba(255, 255, 255, 0.3);
	border-top:1px solid rgba(0, 0, 0, 0.3);
	-webkit-transition:All 0.5s ease;
	transition:All 0.5s ease;
	position:relative
}
#nav ul li a span {
	display:block;
	font-size:0.8em
}
#nav ul li a::after {
content:"";
z-index:100;
position:absolute;
right:10px;
top:calc(50% - 5px);
width:0;
height:0;
border-style:solid;
border-width:5px 0 5px 8.7px;
border-color:transparent transparent transparent rgba(255, 255, 255, 0.5);
-webkit-transition:All 0.5s ease;
transition:All 0.5s ease
}
#nav ul li a:hover, #nav ul li a.current {
	box-shadow:inset 0 0 18px rgba(0, 0, 0, 0.5)
}
#nav ul li a:hover::after, #nav ul li a.current::after {
content:"";
z-index:100;
position:absolute;
right:10px;
top:calc(50% - 5px);
width:0;
height:0;
border-style:solid;
border-width:5px 0 5px 8.7px;
border-color:transparent transparent transparent #fff;
-webkit-transform:rotate(90deg);
-ms-transform:rotate(90deg);
transform:rotate(90deg)
}
#nav img {
	-webkit-transition:All 0.5s ease;
	transition:All 0.5s ease
}
#con {
	background:url(../images/con_bg.png) left top #fff;
	display:-webkit-box;
	display:-webkit-flex;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:center;
	-webkit-justify-content:center;
	-ms-flex-pack:center;
	justify-content:center;
	margin-top:30vw
}
#main {
	margin-top:20px;
	padding:10px 10px 10px 20px;
	width:720px;
	background:rgba(255, 255, 255, 0.6);
	box-shadow:0px 0px 4px rgba(0, 0, 0, 0.3)
}
#main ol, #main ul {
	padding:5px 0px 5px 25px
}
#main ul {
	list-style-type:disc
}
#main ol li, #main ul li {
	padding:5px 0px
}
#main table {
	margin:10px 0px
}
#main table th, #main table td {
	padding:5px
}
#main a img {
	display:inline-block;
	-webkit-transition:All 0.5s ease;
	transition:All 0.5s ease
}
#main a img:hover {
	opacity:0.7
}
#main h1 {
	font-size:2.2em;
	font-weight:normal;
	color:#000000;
	padding:0.7em;
	margin:0 0 25px 0;
	background:url(../images/h1_bg.png) left center no-repeat #eee
}
#main h2 {
	font-size:1.4em;
	font-weight:normal;
	padding:0.4em 0 0.4em 0.6em;
	margin:24px 0 14px 0;
	background:url(../images/h3_bg.png) left center no-repeat #eee
}
#main h3 {
	font-size:1.1em;
	font-weight:bold;
	padding:1px 0 1px 10px;
	margin:12px 0 8px 0;
	border-left:4px solid #000000
}
#main h4 {
	font-size:1.0em;
	font-weight:bold;
	padding:4px 0 4px 10px;
	background: #eee;
}
#side {
	background:#294A13;
	box-shadow:0 0 5px rgba(0, 0, 0, 0.5);
	margin:-30vw 5px 0px 5px;
	width:220px
}
#side h2 {
	font-size:1.1em;
	font-weight:bold;
	color:#000000;
	text-align:center;
	padding:10px;
	margin:0 0 6px 0;
	background:url(../images/h2_bg.png) no-repeat #eee
}
#bnr {
	width:100%
}
#bnr li {
	margin-bottom:4px
}
#bnr li a {
	width:100%;
	padding:16px 16px 16px 42px;
	border:1px solid #000000;
	border-radius:3px;
	display:block;
	text-decoration:none;
	background:url(../images/common/bnr_bg.png) no-repeat 16px center;
	font-size:12px;
	color:#000000
}
#center {
	width:20px
}
#ft {
	padding-top:10px;
	padding-bottom:10px;
	text-align:center;
	color:#fff;
	background:#0F1B07
}
#i_news {
	height:250px;
	overflow:auto
}
#i_news table {
	width:100%
}
#i_news table tr {
	border-bottom:1px dotted #cccccc
}
#i_news table td {
	vertical-align:top;
	font-size:0.9em;
	padding:10px
}
#i_news table td:first-child {
	width:140px;
	background:url(../images/common/news_icon.png) 5px 18px no-repeat;
	padding-left:20px
}
#page-top {
	position:fixed;
	bottom:20px;
	right:20px;
	font-size:0.9em;
	background:#294A13;
	text-decoration:none;
	color:#ffffff;
	padding:10px 15px;
	text-align:center;
	display:block;
	border-radius:5px
}
.brackets {
	margin:25px 0;
	position:relative;
	width:100%;
	padding:0 30px 25px;
	box-sizing:border-box
}
/*
.brackets::before, .brackets::after {
position:absolute;
top:0;
content:'';
width:20px;
height:100%;
border-top:1px solid rgba(0, 0, 0, 0.2);
border-bottom:1px solid rgba(0, 0, 0, 0.2);
box-sizing:border-box
}
.brackets::before {
left:0;
border-left:1px solid rgba(0, 0, 0, 0.2)
}
.brackets::after {
right:0;
border-right:1px solid rgba(0, 0, 0, 0.2)
}*/
.brackets h2 {
	font-weight:bold !important;
	text-align:center;
	background:none !important;
	padding:10px;
	margin:15px 0 15px 0 !important
}
.map {
	width:calc(100% - 20px);
	height:200px;
	margin:10px
}

.page #con {
    margin-top: 10vw;
}
.page #side {
    margin: -10vw 5px 0px 5px;
}
h2#title {
	background:#294A13;
	color:#FFF;
	font-size:1.8em;
	line-height:1.25em;
}
h2#title span {
	display:block;
	font-size:0.6em;
}

.table_member {
	border-top: 1px solid #D7D7D7;
	border-left: 1px solid #D7D7D7;
}
.table_member td {
	border-right: 1px solid #D7D7D7;
	border-bottom: 1px solid #D7D7D7;
	background-color: #eee;
	text-align: center;
}
.table_member th {
	border-right: 1px solid #D7D7D7;
	border-bottom: 1px solid #D7D7D7;
	font-weight: bold;
}