@charset "UTF-8";

/** default setting **********************************************************/

html,
body {
	width: 100%;
	min-width: 100%;
}

html {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

body {
	color: #492c0b;
	background: #fff;
	font-size: 16px;
	font-family: sans-serif;
	font-weight: 500;
	line-height: 1.6;
	letter-spacing: -0.001em;
	text-align: center;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	position: relative;
}

a:link {
	color: #08156b;
	text-decoration: none;
}
a:visited {
	color: #901fba;
}

table,input,textarea,select,option {
	font-size: 100%;
	font-family: sans-serif;
}

img {
	border: none;
	vertical-align: middle;
	max-width: 100%;
	height: auto;
}

ul { list-style-type: none; }
hr { clear: both; }

blockquote {
	padding: 10px 10px 10px 20px;
	background: #f1ead8;
}

input[type="submit"] {
  -webkit-appearance: none;
  border-radius: 0;
}

option {
  font-family: inherit;
}

.text-right { text-align: right!important; }
.text-center { text-align: center!important; }
.text-left { text-align: left!important; }
.color-red { color: #DD2625!important; }
.color-green { color: #a8c57d!important; }
.bold { font-weight: bold!important; }
.small { font-size: 75%; }
.big { font-size: 130%; }

.sp-invisible { display: none; }
.pc-invisible { display: block; }

.btn-green a {
	width: 280px;
	height: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
	text-decoration: none;
	background: #578f0a;
	color: #fff;
	font-size: 18px;
	text-align: center;
	font-weight: 700;
	border-radius: 10px;
	box-shadow: 0 3px 6px rgb(0,0,0,16%);
	margin: 0 auto; 
}	

.l, .r {
	margin-bottom: 20px;
	text-align: center;
}

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

header {
	background: #fff;
}

header #modal-open {
	position: absolute;
	right: 5px;
	top: 5px;
}

header h1,
header #logo {
	padding: 15px;
}

header #sitenav {
	background: #492c0b;
	display: none;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 100;
}
header #sitenav {
	padding: 0px 0;
	margin-top: 80px;
}
header #sitenav a {
	display: block;
}
header #sitenav a li {
	color: #fff!important;
	border-bottom: dotted 1px #fff;
	padding: 15px;
	text-align: left;
	display: block;
}
header #sitenav a:last-child li {
	border-bottom: none;
}
header #sitenav li a:focus {
	background: #fff;
	color: #492c0b!important;
}
header #glovalnav {
	margin-bottom: 30px;
}
header #glovalnav ul {
	margin: 0 30px;
}

header #glovalnav ul li img{
	background: #80a220;
}
header #glovalnav ul li:last-child {
	padding: 0 1px;
	background: #80a220;
}
#page header #glovalnav {
	margin: 0;
}

header #glovalnav li {
	display: inline-block;
	_display: inline;
}

#page #mainvisual {
	margin: -20px 0 30px;
	padding: 30px 10px 5px;
	background: url(../images/bg_header_page.png) no-repeat 50% 0%;
}
#page.joseibu #mainvisual {
	background: url(../images/bg_header_josei.png) repeat-x 50% 0%;
}
#page.seinenbu #mainvisual {
	background: url(../images/bg_header_seinen.png) repeat-x 50% 0%;
}

/** main *********************************************************************/

#maincontents {
	width: 100%;
}

article {
	padding: 0 10px;
	margin: 0 auto 60px;
}
article:after {
	content: "";
	display: block;
	clear: both;
}

section {
	margin-bottom: 30px;
}

#page section.contents {
	text-align: left;
}

#breadcrumb {
	font-size:  75%;
	margin-bottom: 20px;
	text-align: left;
}
#breadcrumb li {
	display: inline-block;
	_display: inline;
}
#breadcrumb li a {
	text-decoration: underline;
}
#breadcrumb li:after {
	content: ">";
	padding: 0 5px;
}
#breadcrumb li:last-child:after {
	content: "";
}

article h1 {
	font-size: 170%;
	line-height: 1.3;
	margin-bottom: 15px;
}

section h1 {
	padding: 0 0 5px;
	border-bottom: solid 1px #91ac3d;
}

section h2 {
	color: #fff;
	font-size: 145%;
	line-height: 1.4;
	background: url(../images/bg_headline.png) no-repeat 0% 0%;
	margin-bottom: 10px;
	padding: 8px 10px;
}
section h2 a:link {
	color: #fff;
	text-decoration: underline;
}
section h2 a:visited {
	color: #eee;
}

section h3 {
	font-size: 140%;
	margin-bottom: 10px;
}

section h3:before {
	content: "■";
	font-size: 130%;
	color: #91ac3d;
	padding-right: 2px;
	vertical-align: middle;
}
section h4 {
	line-height: 1.2;
	margin: 0 0 10px 5px;
	border-left: solid 8px #91ac3d;
	padding-left: 8px;
}

/* index */

article section.news {
	width: 100%;
	background: url(../images/bg_info_head.png) no-repeat 50% 0%;
	background-size: 100%;
	padding-top: 7px;
}
article section.news .news-inner {
	border: solid 1px #91ac3d;
	border-top: none;
	-webkit-border-bottom-right-radius: 5px;
	-webkit-border-bottom-left-radius: 5px;
	-moz-border-radius-bottomright: 5px;
	-moz-border-radius-bottomleft: 5px;
	border-bottom-right-radius: 5px;
	border-bottom-left-radius: 5px;
	padding: 15px 15px 0;
}
article section.news .news-inner h1 {
	border-bottom: dotted 1px #91ac3d;
}
article section.news .news-inner li {
	margin-bottom: 20px;
}
article section.news .news-inner li .thumb {
	margin-bottom: 15px;
}
article section.news .news-inner li .text {
	text-align: left;
}
article section.news .news-inner li .text h2 {
	background: none;
	margin-bottom: 5px;
	padding: 0;
}
article section.news .news-inner li .text h2 a:link {
	color: #08156b;
	text-decoration: none;
}
article section.news .news-inner li .text h2 a:hover {
	color: #578f0a!important;
	text-decoration: underline;
}
article section.news .news-inner li .text h2 a:visited {
	color: #901fba;
}
article section.news .news-inner li .text .datetime {
	text-align: right;
	font-size: 90%;
}
article section.news .news-inner .more {
	text-align: center;
}


/* page */

#page section.contents p {
	letter-spacing: 0.025em;
	line-height: 1.65;
}

#page section.contents p,
#page section.contents table,
#page section.contents ul,
#page section.contents ol {
	margin-bottom: 20px;
}

#page section.contents table {
	border-collapse: collapse;
}
#page section.contents table th,
#page section.contents table td {
	padding: 5px 0;
	border-bottom: dotted 1px #91ac3d;
	vertical-align: top;
	text-align: left;
}
#page section.contents table.memberlist {
	width: 100%;
	font-size: 85%;
}
#page section.contents table.memberlist th,
#page section.contents table.memberlist td {
	padding: 5px 0 5px 5px;
}
#page section.contents ul.maplist li:before,
#page section.contents table.list th:before {
	content: "●";
	color: #91ac3d;
}
#page section.contents table td ul {
	margin-bottom: 0;
}
#page section.contents ul.maplist li {
	width: 49%;
	display: inline-block;
	_display: inline;
	vertical-align: top;
	margin-bottom: 5px;
}
.fleximg li {
	margin: 0 0 10px;
}

.gmap {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
	margin-bottom: 30px;
}
 
.gmap iframe,
.gmap object,
.gmap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

#page section table {
	text-align: left;
	margin: 0 0 15px 0;
}
#page section table th,
#page section table td {
	padding: 5px;
	text-align: left;
}

#page section ul {
	margin: 0 0 15px 0;
}
#page section ol {
	margin: 0 0 15px 2.5em;
}
#page section ul li {
	list-style: none;
	border: none;
	padding-bottom: 0;
	margin-bottom: 0;
	float: none;
}
#page section ul li:before {
	content: "●";
	color: #7F9E2E;
	padding-right: 2px;
}

#page section ol li {
	list-style: decimal;
	border: none;
	padding-bottom: 0;
	margin-bottom: 0;
	float: none;
}

#page ul.banners3column {
	width: 100%;
	text-align: center;
}
#page ul.banners3column li {
	display: inline-block;
	_display: inline;
	margin-bottom: 5px;
}

.snsbtns {
	width: 100%;
	clear: both;
	margin-bottom: 15px;
	text-align: center;
}

.snsbtns div {
	width: 100px;
	display: inline-block;
	vertical-align: top;
	text-align: left;
}

.snsbtns div.facebook {
	width: 160px;
	margin-top: -3px;
}

/* support */

#page section .box {
	border: solid 1px #91ac3d;
	margin-bottom: 15px;
}

#page section .box h2 {
	background: #7F9E2E;
	margin-bottom: 10px;
	padding: 8px 10px;
	line-height: 1.2;
	text-shadow: 1px 1px 1px #000;
}
#page section .box p {
	padding: 0 15px;
}
#page section .box .more {
	text-align: right;
	margin-right: 15px;
}
#page section .box .more a {
	background: url(../images/icn_more.png) no-repeat 0% 50%;
	padding-left: 17px;
}
#page section .box ul {
	margin-left: 15px;
}

#page section #zeimu h2 {
	background: url(../images/shien_icn_kichyo.png) no-repeat 10px 50% #91ac3d;
	padding-left: 45px;
}
#page section #kinyu h2 {
	background: url(../images/shien_icn_kinyu.png) no-repeat 10px 50% #91ac3d;
	padding-left: 45px;
}
#page section #roumu h2 {
	background: url(../images/shien_icn_roumu.png) no-repeat 10px 50% #91ac3d;
	padding-left: 45px;
}
#page section #kyosai h2 {
	background: url(../images/shien_icn_kyosai.png) no-repeat 5px 50% #91ac3d;
	padding-left: 45px;
}
#page section #kosyukai h2 {
	background: url(../images/shien_icn_kousyu.png) no-repeat 8px 50% #91ac3d;
	padding-left: 45px;
}
#page section #sougou h2 {
	background: url(../images/shien_icn_sougou.png) no-repeat 5px 50% #91ac3d;
	padding-left: 45px;
}

/* information */

#page .entrybody {
	margin-bottom: 60px;
}

#page section.contents .entrybody table {
	border-collapse: collapse;
}
#page section.contents .entrybody table th,
#page section.contents .entrybody table td {
	border: solid 1px #91ac3d;
	padding: 5px 8px;
}

#page .entrybody ul {
	margin-left: 15px;
}

#page .information {
	margin-bottom: 30px;
}

#page .information ul li {
	width: 100%;
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: dotted 1px #91ac3d;
	position: relative;
	text-align: left;
}
#page .information ul li:before {
	content: "";
	display: none;
}
#page .information .thumb {
	text-align: center;
	margin-bottom: 15px;
}
#page .information .text h2 {
	border: none;
	padding: 0;
	margin-bottom: 5px;
	text-align: left;
	background: none;
}
#page .information .text h2 a:link {
	color: #08156b;
	text-decoration: none;
}
#page .information .text h2 a:visited {
	color: #901fba;
}
#page .information .text h2 a:hover {
	color: #578f0a;
	text-decoration: underline;
}

#page .information .text p {
	margin-bottom: 0;
	font-size: 90%;
}

#page .entrydeta {
	margin-bottom: 10px;
	text-align: right;
}
#page .entrydeta .datetime,
#page .text .datetime {
	font-size: 90%;
	font-weight: bold;
	line-height: 1.5;
	background: url(../images/icn_pen.png) no-repeat 0% 0%;
	padding-left: 20px;
	margin-bottom: 5px;
}
#page .text .category {
	font-size: 90%;
	line-height: 1.5;
	background: url(../images/icn_category.png) no-repeat 0% 50%;
	padding-left: 20px;
	position: absolute;
	top: 0;
	right: 0;
}
#page .entrydeta .category {
	font-size: 90%;
	line-height: 1.5;
	background: url(../images/icn_category.png) no-repeat 0% 50%;
	padding-left: 20px;
}

.pagenation {
	text-align: right;
}

.pagenation .link-prev:before {
	content: "◀";
	padding-right: 0.25em;
}

.pagenation .link-next:after {
	content: "▶";
	padding-left: 0.25em;
}

.pagenation .next {
	background: url(../images/icn_more.png) no-repeat 0% 50%;
	padding-left: 17px;
}

/* seinenbu.joseibu */

#page.seinenbu .information h1,
#page.joseibu .information h1 {
	color: #fff;
	letter-spacing: 0.12em;
	line-height: 1.4;
	background: url(../images/bg_headline.png) no-repeat 50% 0%;
	margin-bottom: 10px;
	padding: 8px 10px;
}

/* sights */

#page #maincontents ul.items,
#page #maincontents ul.spot {
	width: 100%;
	margin: 0 0 30px;
	text-align: left;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}
#page ul.items li,
#page ul.spot li {
	width: 24.5%;
	text-align: center;
	margin: 0 0 10px;
}

#page ul.spot li:before,
#page ul.items li:before {
	content: "";
	display: none;
}
#page ul.spot li .thumb,
#page ul.items li .thumb {
	margin-bottom: 10px;
}
#page ul.spot li .text {
	font-size: 80%;
	line-height: 1.2;
}
#page ul.items li p {
	font-size: 80%;
	line-height: 1.2;
	padding: 0 5px;
}

/* contact */

#page section .contact {
	font-size: 120%;
}
#page section .contact p {
	font-size: 80%;
}
#page section ul.contact li {
	margin-bottom: 15px;
	padding-bottom: 15px;
	border-bottom: dotted 1px #91ac3d;
}
#page section .contact li:before {
	content: "";
	padding: 0;
}
#page section .contact li ul {
	margin-bottom: 0;
}
#page section .contact li ul li {
	border-bottom: none;
	padding-bottom: 0;
}
#page section .contact li ul li:last-child {
	margin-bottom: 0;
}
#page section .contact li:last-child {
	border: none;
}
#page section .contact li ul li:before {
	content: "●";
	color: #91ac3d;
	padding-right: 2px;
}

/** sidenav ******************************************************************/

article #sidenav ul.banners li {
	margin-bottom: 10px;
}
article #sidenav ul.banners {
	margin-bottom: 0px;
}
article #sidenav .sidelist {
	width: 300px;
	margin-bottom: 15px;
	border: solid 1px #91ac3d;
	border-top: none;
	-webkit-border-bottom-right-radius: 5px;
	-webkit-border-bottom-left-radius: 5px;
	-moz-border-radius-bottomright: 5px;
	-moz-border-radius-bottomleft: 5px;
	border-bottom-right-radius: 5px;
	border-bottom-left-radius: 5px;
}
article #sidenav .sidelist ul {
	padding: 15px;
	text-align: left;
}
article #sidenav .sidelist ul li:before {
	content: "●";
	color: #91ac3d;
	padding-right: 2px;
}
article #sidenav .sidelist ul.archivelist {
	margin-bottom: 0px;
	padding-top: 0;
	display: none;
}
article #sidenav .sidelist ul.archivelist li {
	margin-left: 20px;
}
article #sidenav .sidelist h3 {
	text-align: left;
	padding: 2px 10px;
	font-size: 110%;
}
article #sidenav .sidelist h3:before {
	content: "▼";
	color: #91ac3d;
	padding-right: 2px;
}
article #sidenav .sidelist h3.on:before {
	content: "▶";
	color: #91ac3d;
	padding-right: 2px;
}

/** footer *******************************************************************/

#pagetop {
	text-align: right;
	border: none;
	clear: both;
	position: fixed;
	right: 10px;
	bottom: 10px;
	width: 50px;
}
footer {
	border-top: solid 1px #492c0b;
	width: 100%;
	padding-top: 25px;
	background: url(../images/bg_footer.png) no-repeat 50% 100%;
}
footer address {
	font-style: normal;
	text-decoration: none;
}
footer .footeraddress h2 {
	margin-bottom: 15px;
}
footer .footeraddress .contact {
	font-size: 140%;
	font-weight: bold;
}
footer .footermenu {
	display: none;
}
footer .footernav {
	font-size: 75%;
	padding-top: 5px;
	padding-bottom: 1px;
}
footer .footernav ul {
	text-align: center;
}
footer .footernav ul li {
	line-height: 1.2;
	display: inline-block;
	_display: inline;
	padding: 0 5px;
	border-right: solid 1px #fff;
}
footer .footernav ul li:first-child {
	padding-left: 0;
}
footer .footernav ul li:last-child {
	border-right: none;
}
footer .footernav ul li a {
	color: #fff;
}
footer .footernav .copyright {
	color: #fff;
}

/**********  P C  ***********************************************************/

@media print, screen and (min-width: 769px){

	body,table,input,select,textarea,option {
		font-family: '游ゴシック', 'Yu Gothic', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	}
	body {
		font-size: 15px;
	}

	.btn-yellow a:hover,
	.btn-green a:hover {
		color: #fff;
		text-decoration: none;
		opacity: 0.8;
		filter: alpha(opacity=80);
		-ms-filter: "alpha( opacity=80 )";
		transition-duration: 0.5s;
	}

	.sp-invisible { display: block; }
	.pc-invisible { display: none; }

	a:hover {
		color: #578f0a;
		text-decoration: underline;
	}
	a img:hover,
	.btn:hover {
		opacity: 0.8;
		filter: alpha(opacity=80);
		-ms-filter: "alpha( opacity=80 )";
		transition-duration: 0.5s;
	}
	header #glovalnav li a img:hover {
		opacity: 1;
		filter: alpha(opacity=100);
		-ms-filter: "alpha( opacity=100 )";
	}
	.sp-button:hover {
		opacity: 0.8;
		filter: alpha(opacity=80);
		-ms-filter: "alpha( opacity=80 )";
		transition-duration: 0.5s;
	}

	.l { float: left; margin: 0 20px 20px 0; }
	.r { float: right; margin: 0 0 20px 20px; }
	.clear { clear: both; }

	.mtop20 { margin-top: 20px; }

	header #glovalnav {
		margin-bottom: 70px;
	}
	#main-index header #glovalnav ul {
		width: 100%;
		position: absolute;
		top: 390px;
		background: none;
	}
	header .sp-buttons {
		display: none;
	}
	#container {
		margin: 0 auto;
		text-align: center;
	}
	article {
		width: 960px;
		margin: 0 auto 60px;
	}
	article #maincontents {
		width: 620px;
		float: left;
	}
	article #sidenav {
		width: 300px;
		float: right;
	}
	article section.read {
		width: 820px;
	}
	section.read p {
		text-align: center;
	}
	article section.news {
		width: 100%;
		background-size: auto;
		padding-top: 19px;
	}
	article section.news .news-inner li {
		width: 100%;
		float: left;
		margin-bottom: 15px;
	}
	article section.news .news-inner li .thumb {
		width: 170px;
		margin-bottom: 10px;
		float: left;
	}
	article section.news .news-inner li .text {
		width: 400px;
		float: right;
	}
	article section.news .news-inner .more {
		text-align: right;
	}
	#page .information ul li {
		width: 100%;
		float: left;
	}
	#page .information ul li .thumb {
		width: 170px;
		float: left;
	}
	#page .information ul li .text {
		width: 430px;
		float: right;
	}
	footer .footer-inner {
		width: 960px;
		margin: 0 auto;
	}
	footer .footermenus {
		width: 100%;
		float: left;
		margin-bottom: 30px;
	}
	footer .footeraddress {
		width: 400px;
		float: right;
		text-align: right;
	}
	footer .footermenu {
		width: 540px;
		float: left;
		display: block;
	}
	footer .footermenu ul {
		width: 32%;
		float: left;
		text-align: left;
		font-size: 85%;
		display: block;
	}
	footer .footermenu ul li {
		background: url(../images/icn_footermenu.png) no-repeat 0% 50%;
		padding-left: 15px;
		margin-bottom: 20px;
	}
	footer .footernav {
		width: 960px;
		margin: 0 auto;
		padding-bottom: 10px;
		clear: both;
	}
	footer .footernav ul {
		text-align: left;
	}

	footer .footernav .copyright {
		text-align: right;
		margin-top: -20px;
	}

}

@media only screen
 and (min-device-width: 768px)
 and (max-device-width: 1024px) {
	header #glovalnav ul {
		margin: 0 150px;
	}
	article section.news {
		padding-top: 16px;
	}
	article section.news .news-inner li {
		display: -webkit-inline-flex;
		display: inline-flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}
	article section.news .news-inner li .thumb {
		width: 20%;
	}
	article section.news .news-inner li .text {
		width: 70%;
	}
	article section.news .news-inner .more {
		text-align: right;
	}
	article #sidenav ul.banners {
		width: 100%;
	}
	article #sidenav ul.banners li {
		width: 45%;
		display: inline-block;
		_display: inline;
	}
	article #sidenav .sidelist {
	    display: inline-block;
		_display: inline;
	}
	article #sidenav ul.banners.lastbn {
  	  width: 45%;
  	  display: inline-block;
  	  vertical-align: top;
  	  text-align: right;
	}
	article #sidenav ul.banners.lastbn li {
		width: 100%;
	}
}

@media only screen
 and (device-width: 1024px) {
	header #glovalnav ul {
		margin: 0px;
	}
	article #sidenav ul.banners li {
		width: 100%;
		display: list-item;
	}
	article #sidenav ul.banners.lastbn {
		width: 100%;
		display: block;
	}
	footer .footermenu,
	footer .footermenu ul {
		display: block;
	}
}

img.pc-invisible,
img.sp-invisible { margin: 0 auto; }