﻿@charset "UTF-8";
@import url(https://fonts.googleapis.com/css?family=Maven+Pro);
@import url(https://fonts.googleapis.com/css?family=Noto+Sans);
@import url(https://fonts.googleapis.com/css?family=Courgette);
@import url(https://fonts.googleapis.com/css?family=Pacifico);
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	vertical-align: baseline;
	background: transparent;
}
body {
	font-size: 15px;

	font-family: 'Maven Pro', HiraKakuProN-W3, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	/*color: #f2f2f2;*/
	color: #333;
	width: 100%;
	min-width: 320px;
	-webkit-text-size-adjust: none;
	background: #fff;
}
nav ul {
	list-style: none;
}
ol {
	margin-left: 20px;
}
/*header*/
#header {
	position: relative;
	width: 100%;
}
#header p {
	text-align: center;
	background: #f0f0f0;
	font-size: 12px;
}
#header h1 {
	text-align: center;
	margin: 40px 0 20px 0;
	padding: 0;
	font-weight: bold;
	font-family: 'Pacifico', cursive;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
}
#header h1 a, #header h1 a:link, #header h1 a:visited {
	color: #000;
	text-decoration: none;
}
#header h1 a span, #header h1 a:link span, #header h1 a:visited span {
	color: #686868;
	text-decoration: none;
}
#mainvisual {
	position: relative;
	width: 100%;
	margin-bottom: 0px;
}
#mainvisual-inner {
	position: relative;
	width: 100%;
	text-align: center;
	overflow: hidden;
}
#mainvisual-inner .img {
	position: absolute;
	display: none;
	width: 100%;	/* 画像の幅 */
	top: 0;
}
#mainvisual-inner .img:first-child {
	position: relative;
	display: block;
}
header h1 img {
	max-width: 100%;
	margin: 0 0 0 0;
}
.gnav p {
	text-align: center;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
	color: #ccc;
}
.gnav p a {
	font-size: 14px;
	display: inline-block;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
.gnav p a:link, .gnav p a:visited {
	color: #222;
	text-decoration: none;
	border-bottom: 2px solid #fff;
}
.gnav p a:hover {
	color: #007ddb;
	border-bottom: 2px solid #007ddb;
}
.gnav p a.active {
	color: #007ddb;
	border-bottom: 2px solid #007ddb;
}
.gnav div.center a{
	display: inline-block;
	margin: 1px 1px 0;
}
.main2 {
	width: 100%;
	margin-top: 20px;
	padding-top: 5px;
	padding-bottom: 5px;
	/*background: url(../img/main.jpg) 0 0 no-repeat;
	background-size: cover;*/
	background: #f0f0f0;
}
.main div {
	width: 95%;
	margin: 0 auto;
	position: relative;
}
.main div p.catch {
	position: absolute;
	top: 150px;
}
/*main*/
#main {
	background: #fff;
}
.contents {
	padding: 20px;
}
.contents p {
	margin-top: 15px;
}
/*　オリジナル　*/

ul.pagenav {
	width: 100%;
	overflow: auto;
	padding: 0;
	margin: 16px 0 16px -16px;
}
ul.pagenav li {
	list-style: none;
	margin-bottom: 0px;
	margin: 2em 0;
	padding: 0;
}
ul.pagenav li a {
	font-size: 80%;
	display: inline-block;
	float: left;
	padding: 12px;
	background: #dc4437;
	border-radius: 3px;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
	color: #f2f2f2;
	margin-left: 16px;
}
ul.pagenav li.new {
	float: left;
	text-align: right;
}
ul.pagenav li.old {
	float: right;
	text-align: right;
	margin-right: 40px;
}
ul.pagenav li a:link, ul.pagenav li a:visited {
	text-decoration: none;
}
ul.pagenav li a:hover {
	background: #ff6666;
	color: #FFFFFF;
}
ul.pagenav li.old a:hover {
	background: #ff6666;
}
#gnav nav {
	width: 100%;
}
#gnav nav ul {
	float: none;
	width: 100%;
	border-left: none;
	border-right: none;
	overflow: auto;
	padding-left: 0;
	margin-left: 0;
	border-radius: 5px;
}
#gnav nav ul li {
	float: left;
	width: 25%;
 *width: 24.9%;
	margin-bottom: 0px;
}

@media screen and (max-width: 720px) {
#gnav nav ul li {
	float: left;
	width: 50%;
 *width: 49.9%;
	margin-bottom: 0px;
}
}
#gnav nav ul li a {
	display: block;
	padding: 16px 16px;
	border-left: solid 1px #333;
	border-right: solid 1px #111;
	border-top: solid 1px #333;
	border-bottom: solid 1px #111;
	font-size: 83%;
}
#gnav nav ul li a:link, #gnav nav ul li a:visited {
	background-color: #222;
	color: #ccc;
	text-decoration: none;
}
#gnav nav ul li a:hover, #gnav nav ul li a:active, #gnav nav ul li a.current {
	background-color: #333;
	color: #fff;
	text-decoration: none;
}
/* ------ Mainvisual ------ */

#mainvisual {
	position: relative;
	width: 100%;
	margin: 20px 0;
	
}
#mainvisual-inner {
	position: relative;
	width: 100%;
	text-align: center;
	overflow: hidden;
}
#mainvisual-inner .img {
	position: absolute;
	display: none;
	width: 100%;	/* 画像の幅 */
	top: 0;
}
#mainvisual-inner .img:first-child {
	position: relative;
	display: block;
}
#mainvisual-btn {
	width: 100%;
	height: 10px;
	margin-top: 10px;
	text-align: center;
}
#mainvisual-btn div {
	display: inline-block;
	width: 10px;
	height: 10px;
	margin: 0 8px;
	overflow: hidden;
	vertical-align: top;
}
#mainvisual-btn div {
 *display: inline;
}
#mainvisual-btn a {
	display: block;
	width: 10px;
	height: 20px;
}
#mainvisual-btn a:link, #mainvisual-btn a:visited {
	margin-top: 0px;
}
#mainvisual-btn a:hover, #mainvisual-btn a:active, #mainvisual-btn a.current {
	margin-top: -10px;
}
#mainvisual-btn a img {
	vertical-align: top;
}
#mainvisual-arrow {
	position: absolute;
	z-index: 200;
	width: 100%;
	top: 50%;
	left: 0;
	margin-top: -20px;
}
#mainvisual-arrow-inner {
	position: relative;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}
#mainvisual-arrow .prev, #mainvisual-arrow .next {
	position: absolute;
	width: 27px;
	height: 27px;
	overflow: hidden;
}
#mainvisual-arrow .prev {
	left: 3%;
}
#mainvisual-arrow .next {
	right: 3%;
}
#mainvisual-arrow a {
	display: block;
	width: 27px;
	height: 54px;
}
#mainvisual-arrow a:link, #mainvisual-arrow a:visited {
	margin-top: 0px;
}
#mainvisual-arrow a:hover, #mainvisual-arrow a:active {
	margin-top: -27px;
}
#mainvisual-arrow a img {
	vertical-align: top;
}
.img img {
	max-width: 100%;
}
.fig {
	max-width: 100%;
}
.size-full {
	max-width: 100%;
}
/* グローバル */
.contents {
	max-width: 1020px;
	margin: 0 auto;
}
h1 {
	margin: 1em 0 0em 0;
	font-size: 28px;
	font-weight: bold;
	line-height: 1.6em;
	text-align: center;
	padding: 8px 0;/*	border-left:1px solid #666;
	border-right:1px solid #666;*/
}
h2 {
	margin: 40px 0;
	text-align: center;
	font-size: 24px;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}
h2.bar {
	margin: 40px 0 20px 0;
	text-align: left;
	color: #fff;
	font-size: 18px;
	padding: 20px;
	background: #2a88d3;
	background: -moz-linear-gradient(left, #0a538e 0%, #2a88d3 100%);
	background: -webkit-linear-gradient(left, #0a538e 0%, #2a88d3 100%);
	background: linear-gradient(to right, #0a538e 0%, #2a88d3 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0a538e', endColorstr='#2a88d3', GradientType=1 );
	border-radius: 3px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
h2.first {
	margin-top: 20px;
}
h3 {
	margin: 0 0 0 0;
	padding: 20px 0;
	text-align: center;
	font-size: 20px;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}
h3.bar {
	margin: 40px 0 20px;
	text-align: left;
	font-size: 16px;
	padding: 15px;
	border-left: 5px solid #2a88d3;
	;
	background: #f0f0f0;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
h2 + h3.bar {
	margin-top: 20px;
}
.col h3 {
	margin: 0 0 0 0;
	padding: 20px 0;
	border-top: 1px solid #000000;
	text-align: center;
	font-size: 20px;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}
h4 {
	margin: 30px 0 20px 0;
	line-height: 1.6em;
	border-top: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	padding: 10px 0
}
h5 {
	margin: 2em 0;
	line-height: 1.6em;
	border-left: 3px solid #000000;
	padding: 5px 18px;
}
h6 {
	margin: 2em 0;
	line-height: 1.6em;
}
a:link, a:visited {
	color: #007ddb;
}
a:hover {
	color: #50b0f8;
}
a.btn {
	color: #fff;
	border-radius: 3px;
	padding: 25px 30px;
	text-decoration: none;
	font-weight: bold;
	font-size: 16px;
	border: #207ce5 solid 1px;
	background: #499bea;
	background: -moz-linear-gradient(top, #499bea 0%, #207ce5 100%);
	background: -webkit-linear-gradient(top, #499bea 0%, #207ce5 100%);
	background: linear-gradient(to bottom, #499bea 0%, #207ce5 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#499bea', endColorstr='#207ce5', GradientType=0 );
	transition: all 0.5s ease;
	-webkit-transition: all 1s ease;
	-moz-transition: all 1s ease;
	-o-transition: all 1s ease;
}
a.btn:hover {
	background: #207ce5;
	border: #50b0f8 solid ipx;
	color: #fff;
}
.col3 .col a.btn {
	padding: 15px 11px;
}
p {
	line-height: 1.8em;
}

.mt2 {
	margin-top: 40px;
}
.mt6 {
	margin-top: 60px;
}
.mb2 {
	margin-bottom: 20px;
}
table.general td.center {
	text-align: center;
}
.contents ul {
	margin: 1em;
}
.contents ul li {
	margin-bottom: 8px;
}
table.news {
	width: 100%;
	margin: 0px auto 0px auto;
	border-collapse: collapse;
}
table.news th {
	color: #333;
	padding: 10px 15px;
	text-align: center;
	white-space: normal;
	word-break: break-all;
}
table p, table ol li {
	margin: 0;
	padding: 0;
}
table p, table ol, table ul {
	margin: 0;
	padding-left: 1.5em;
}
table.news thead th {
	color: #333;
	text-align: center;
	font-size: 14px;
}
table.news tbody th {
	color: #333;
	text-align: left;
}
table.news td {
	padding: 0 5px;
	text-align: left;
}
table.news td.center {
	text-align: center;
}
table.news td.center {
	text-align: center;
}
th.date {
	width: 6em;
	padding-left: 0;
	padding-right: 0;
}
td.cat {
	width: 7em;
	padding-left: 0;
	padding-right: 0;
	font-size: 12px;
	color: #fff;
	text-align:left;
}
td.cat span {
	background: #8c0846;
	padding: 5px;
	text-align: center;
	display: inline-block;
	width: 5em;
}
td.cat span.news {
	background: #3e8296;
}
td.cat span.event {
	background: #bf1500;
}
td.cat span.diary {
	background: #6d8a1f;
}
table.general {
	width: 100%;
	border: 1px solid #ccc;
	margin: 30px auto 30px auto;
	border-collapse: collapse;
}
table.general th {
	color: #333;
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	padding: 15px;
	text-align: center;
	white-space: normal;
	word-break: break-all;
	vertical-align: top;
}
table.general thead th {
	color: #333;
	text-align: center;
	font-size: 14px;
	background: #eee;
}
table.general tbody th {
	color: #333;
	text-align: left;
	background: #eee;
}
table.general td {
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	padding: 15px;
	text-align: left;
}
table.general td.center {
	text-align: center;
}
table.general td.center {
	text-align: center;
}
.gree {
	background: #f0f0f0;
	padding: 40px 0;
}
div.gree_box {
	max-width: 980px;
	margin: 0 auto;
	padding: 0 20px;
	overflow: auto;
	display: table;
}
div.face_gree {
	width: 80px;
	display: table-cell;
	vertical-align: top;
}
div.face_gree img{
	width: 80px;
}
div.text_gree {
	padding-left: 40px;
	display: table-cell;
	vertical-align: top;
}
.gree div h1 {
	text-align: left;
	font-size: 24px;
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
	margin: 0 0 10px 0;
}
.gree div h1 small {
	font-size: 16px;
}
.contact {
	background: #f0f0f0;
	padding: 40px 0 60px 0;
	text-align: center;
}
footer {
	background: #f0f0f0;
	padding: 40px 0;
	text-align: center;
}
footer h3 {
	margin-top: 0;
	padding: 0;
	border: none;
}
.center {
	text-align: center;
}
p.bread {
	text-align: left;
	font-size: 10px;
	color: #686868;
	max-width: 1020px;
	margin: 0 auto 20px;
	padding: 0;
}
ul.sns {
	list-style: none;
	text-align: center;
	overflow: auto;
	padding-top: 20px;
	margin-bottom: 20px;
}
ul.sns li {
	list-style: none;
	display: inline-block;
	margin-right: 5px;
	margin-left: 5px;
}
figure {
	margin: 0 0;
}
figcaption {
	text-align: center;
	color: #686868;
	font-size: 12px;
}
.topic {
	margin: 20px 0;
	background: #e8f6ff;
	padding: 1em 2em 2em 2em;
	border: 1px solid #2a88d3;
}
.topic * {
	color: #325266;
}
.bordered {
	border-left: 3px solid #37a639;
	padding-left: 1.5em;
}
/*comment*/
.comment_block label {
	display: block;
	color: #606060;
}
.comment_block input {
	padding: 10px;
}
textarea {
	width: 80%;
}
/* col */
.col {
	margin-bottom: 2em;
}
.col2 {
	width: 100%;
	display: table;
}
.col2 .col {
	width: 50%;
	display: table-cell;
	vertical-align: top;
	padding: 10px;
}
.col2 .col figure img {
	width: 100%;
}
.col2foot {
	text-align: center;
	overflow: auto;
}
.col2foot .col{ text-align:center;}
.col2foot ul {
	margin: 0 0 0 -10px;
	padding: 0;
}
.col2foot ul li {
	margin: 0;
	padding: 0 0px 5px 10px;
	list-style: none;
	display: inline;
}
.col3 .col a {
	text-decoration: none;
	display: block;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
.col4 {
}
.col4 .col {
	padding-bottom: 2em;
}
.col4 figure {
	margin: 0;
}
.col4 h4 {
	border: none;
	margin: 0;
}
.col4 p {
	font-size: 12px;
}
.col4 a h4 {
}
#parent {
	position: fixed;
	left: 0;
	top: 0;
	right: 0px;
	height: 50px;
	padding: 10px;
	background: #DDD;
	z-index: 500;
}
/*INdex*/
.index {
	overflow: auto;
	margin-top: 20px
}
.index div {
}
.index div a {
	width: 100%;
	display: block;
	padding: 0 16px 20px 16px;
	border: 1px solid #2b2b2b;
	margin-bottom: 20px;
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}
.index div a:link, .index div a:visited {
	color: #dcdcdc;
	text-decoration: none;
}
.index div a:hover {
	background: #2b2b2b;
}
.index div h2 {
	margin: 16px 0 0 0;
}
#page-top {
	position: fixed;
	bottom: 20px;
	right: 20px;
	font-size: 77%;
}
#page-top a {
	text-decoration: none;
	color: #fff;
	width: 67px;
	text-align: center;
	display: block;
	border-radius: 5px;
}
#page-top a:hover {
	text-decoration: none;
}
.sectionhead {
	width: 100%;
	height: 100px;
	margin-top: 30px;
	background: url(../img/main_bg.jpg) 0 0 no-repeat;
	background-size: cover;
}
.sectionhead h1 {
	max-width: 1020px;
	margin: 0 auto;
	text-align: left;
	padding: 0 20px;
	vertical-align: middle;
	line-height:100px;
	font-size:22px;
	font-weight:bold;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
}

.map{ padding:20px; border:1px solid #ccc;}
.icon{ height:15px; width:15px; margin-right:10px;}
.big{ font-size:16px;}
.error{ color:#e42128;}
/*　PC　*/
@media screen and (max-width: 1061px) {
.comment_block textarea {
	width: 92%;
}
}

/*　タブレット　*/
@media screen and (min-width: 720px) {
.col4 {
	display: table;
	width: 100%;
}
.col4 .col {
	width: 25%;
	display: table-cell;
	vertical-align: top;
	padding: 16px;
}
.col4 .col figure img {
	width: 100%;
}
.col2foot {
	width: 100%;
	display: table;
}
.col2foot .col {
	width: 50%;
	display: table-cell;
	vertical-align: top;
	padding: 10px;
}
.col2foot ul li {
	margin: 0;
	padding: 0 0px 5px 10px;
	list-style: none;
	display: inline;
	float:left;
}
.blank{position:absolute; top:75px; right:30px; }
.blank2{position:absolute; top:30px; right:30px; }
}

/*　スマホ　*/
@media screen and (min-width: 480px) {
.col3 {
	display: table;
	width: 100%;
}
.col3 .col {
	width: 33%;
	display: table-cell;
	vertical-align: top;
	padding: 20px;
}
.col3 .col figure img {
	width: 100%;
}
.col3 .col a:hover {
}

.mt2em {
	margin-top: 2em;
}
.mt3em {
	margin-top: 3em;
}


.main div {
	width: 90%;
	margin: 0 auto;
	position: relative;
}
.main div p.catch {
	position: absolute;
	top: 150px;
	right: 0;
}

div.face_gree {
	width: 170px;
	display: table-cell;
	vertical-align: top;
}
div.face_gree img{
	width: 170px;
}
.main2 {
	width: 100%;
	margin-top: 20px;
	padding-top: 20px;
	padding-bottom: 20px;
	/*background: url(../img/main.jpg) 0 0 no-repeat;
	background-size: cover;*/
	background: #f0f0f0;
}

}
a.alph {
	-webkit-transition: all 0.5s ease;
	-moz-transition: all 0.5s ease;
	-o-transition: all 0.5s ease;
	transition: all 0.5s ease;
}
a.alph:hover {
	opacity:0.5;
}
.blank{ margin:0px 0 0 0; }


