html,body {
	color: #344335;
	background: #fff;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	font-size: 100%;
	font-weight: 500;
	line-height: 1.75;
	-webkit-overflow-scrolling: touch;
}
html {
	scroll-behavior: smooth;
	scroll-padding-top: 80px;
}
html:has(body.admin-bar) {
	scroll-padding-top: 112px;/*80+32*/
}
@media screen and (max-width:782px) {
	html:has(body.admin-bar) {
		scroll-padding-top: 126px;/*80+46*/
	}
}
body {
	overflow-x: hidden;
}
/*+++ Base +++*/
img {
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}
a {
	color: #4CAF50;
	text-decoration: underline;
	transition: .3s;
}
a:hover {
	color: #A1AF9F;
}
.inner {
	margin: 0 auto;
	width: 96%;
	max-width: 1280px;
}
.forPC,
.forPCT {
	display: none;
}
.forSP,
.forSPT {
	display: block;
}
:focus-visible {
	outline: 2px solid;
}
@media print, screen and (min-width:620px) {
	.forPCT {
		display: block;
	}
	.forSPT {
		display: none;
	}
}
@media print, screen and (min-width:960px) {
	.forPC {
		display: block;
	}
	.forSP {
		display: none;
	}
}
/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important; /* Many screen reader and browser combinations announce broken words as they would appear visually. */
}

/*+++ Layout +++*/
/*++ header ++*/
#header {
	background: #fff;
	width: 100%;
	height: 5rem;	/*80px*/
	position: fixed;
	z-index: 999999;
}
.h-inner {
	max-width: 1200px;	/*1280 - (40 * 2)*/
	display: flex;
	justify-content: space-between;
}
#header a,
#gnav a {
	color: #344335;
	text-decoration: none;
}
/*+ logo +*/
#header-logo {
	padding: 0.75rem 0;	/* (5rem -3.5rem) /2*/
}
#header-logo a {
	width: 3.5rem;	/*56px*/
	height: 3.5rem;	/*56px*/
	display: block;
}
/*+ spmenu +*/
#spmenu {
	font-size: 0.75rem;	/*12px*/
	font-weight: 600;
	line-height: 1;
	display: flex;
	flex-flow: column nowrap;
	align-items: center;
	justify-content: center;
	cursor: pointer;
}
#spmenu i.bx {
	color: #4CAF50;
	font-size: 3.5rem;
	margin: -0.5rem auto -0.5rem;
	width: 3.5rem;
	height: 3.5rem;
	display: block;
}
/*+ gnav +*/
#gnav {
	background: #fff;
	padding-bottom: 2.5rem;	/*40px*/
	width: 100%;
	max-height: calc(100% - 5rem);
	/* overflow: hidden; */
	overflow-y: auto;
	position: fixed;
	top: 5rem;
	right: -100%;
	z-index: 999999;
	transition: 1s;
}
.admin-bar #gnav {
	top: calc(5rem + 46px);
}
.gnav-list {
	margin-bottom: 2.5rem;	/*40px*/
	border-top: 2px solid #4CAF50;
	display: flex;
	flex-flow: column nowrap;
}
.gnav-list .gnav-list-item {
	font-weight: 600;
	border-bottom: 1px dashed #4CAF50;
	height: 3rem;	/*48px*/
	position: relative;
}
.gnav-list .gnav-list-item a,
.gnav-sublist .gnav-sublist-item a {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.gnav-list .gnav-list-item a {
	flex-flow: row nowrap;
}
.gnav-list .gnav-list-item a::after {
	color: #4caf50;
	font-family: Arial, Helvetica, "sans-serif";
	font-size: 0.875rem;	/*14px*/
	font-weight: 400;
	margin-left: 1rem;	/*16px*/
}
.gnav-list .gnav-list-item.aboutus a::after {
	content: "About Us"
}
.gnav-list .gnav-list-item.ourservices a::after {
	content: "Our services"
}
.gnav-list .gnav-list-item.facilities a::after {
	content: "Facilities"
}
.gnav-list .gnav-list-item.formember a::after {
	content: "For Members"
}
.gnav-list .gnav-list-item.forkids a::after {
	content: "For Kids"
}
.gnav-list .gnav-list-item > button.arrow {
	display: none;
}
.gnav-list .gnav-list-item .sub-menu {
	display: none;
}
.gnav-sublist {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
}
.gnav-sublist .gnav-sublist-item {
	width: 4rem;	/*64px*/
	height: 4rem;	/*64px*/
	border: 2px solid #4CAF50;
	flex-shrink: 0;
}
.gnav-sublist .gnav-sublist-item + .gnav-sublist-item {
	margin-left: 0.5rem;	/*8px*/
}
.gnav-sublist .gnav-sublist-item a {
	font-size: 0.625rem;	/*10px*/
	line-height: 1.4;
	flex-flow: column nowrap;
}
.gnav-sublist .gnav-sublist-item i.bx {
	color: #4CAF50;
	font-size: 2rem;	/*32px*/
	line-height: 1;
	width: 2rem;	/*32px*/
	height: 2rem;	/*32px*/
}
#gnav.active {
	right: 0;
	/* overflow: visible; */
}
.gnav-list .gnav-list-item.disp-none {
	display: none;
}
body.gnav-open {
	overflow: clip;
}
@media print, screen and (min-width:783px) {
	.admin-bar #gnav {
		top: calc(5rem + 32px);
	}
}
@media print, screen and (min-width:960px) {
	#spmenu {
		display: none;
	}
	#gnav {
		padding-bottom: 0;
		margin-left: auto;
		height: 5rem;	/*80px*/
		position: static;
		display: flex;
		justify-content: flex-end;
		overflow: visible;
	}
	.gnav-list {
		margin-bottom:0;
		border-top: 0;
		flex-flow: row nowrap;
	}
	.gnav-list .gnav-list-item {
		border-bottom: 0;
		height: auto;
		display: flex;
		align-items: baseline;
	}
	.gnav-list .gnav-list-item > button.arrow {
		margin-left: 0.25rem;
		display: inline-block;
	}
	.gnav-list .gnav-list-item > button.arrow i {
/*		margin-left: 0.25rem;*/
		transition: 0.3s;
		position: relative;
		bottom: 0;
	}
/*	.gnav-list .gnav-list-item::after {
		content: "\ea0f";
		font-family: 'boxicons';
		margin-left: 0.25rem;
		display: block;
		position: relative;
		bottom: -0.125rem;
		transition: .3s;
	}*/
	.gnav-list .gnav-list-item + .gnav-list-item {
		margin-left: 1rem;	/*16px*/
	}
	.gnav-list .gnav-list-item a,
	.gnav-sublist .gnav-sublist-item a {
		text-align: center;
		flex-flow: column nowrap;
	}
	.gnav-list .gnav-list-item > a {
		flex-shrink: 0;
		height: 5rem;
	}
	.gnav-list .gnav-list-item > a::after {
		margin-left: 0;
	}
	.gnav-list .gnav-list-item .sub-menu {
		display: block;
		visibility: hidden;
		position: absolute;
		top: 5rem;
		left: 50%;
		transform: translateX(-100px);
		z-index: 999999;
		opacity: 0;
		transition: 1s;
	}
	.gnav-list .gnav-list-item .gnav-sub-menu-item + .gnav-sub-menu-item {
		margin-top: 0.25rem;	/*4px*/
	}
	.gnav-list .gnav-list-item .gnav-sub-menu-item a {
		background: rgba(255, 255, 255, 0.9);
		font-weight: 500;
		padding: 10px;
		width: 200px;
		min-height: 40px;
		display: flex;
		flex-flow: row wrap;
		justify-content: center;
		align-items: center;
	}
	.gnav-list .gnav-list-item .sub-menu a::after {
		content: none;
	}
	.gnav-list .gnav-list-item.open > button.arrow i {
		opacity: 0.6;
		bottom: -0.5rem;
		transform: rotate(180deg);
	}
/*	.gnav-list .gnav-list-item.open::after {
		opacity: 0.6;
		bottom: -0.5rem;
		transform: rotate(180deg);
	}*/
	.gnav-list .gnav-list-item.open .sub-menu {
		visibility: visible;
		margin-top: 1rem;
		opacity: 1;
	}
	.gnav-list .gnav-list-item.open .gnav-sub-menu-item a {
		opacity: 1;
	}
	#gnav .gnav-list .gnav-list-item.open .gnav-sub-menu-item a:hover {
		color: #fff;
		background: #4CAF50;
	}
	.gnav-sublist {
		margin-left: 2.5rem;
		justify-content: flex-end;
	}
	.gnav-sublist .gnav-sublist-item {
		width: auto;
		height: auto;
		border: 0;
	}
	.gnav-list .gnav-list-item a:hover,
	.gnav-sublist .gnav-sublist-item a:hover {
		opacity: 0.6;
	}
	.gnav-list .gnav-list-item .gnav-sub-menu-item.disp-none {
		display: none;
	}
}
@media print, screen and (min-width:1280px) {
	.gnav-sublist {
		margin-left: 5rem;	/*80px*/
	}
	.gnav-list .gnav-list-item + .gnav-list-item {
		margin-left: 2rem;	/*32px*/
	}
	.gnav-sublist .gnav-sublist-item + .gnav-sublist-item {
		margin-left: 1rem;	/*16px*/
	}
}
/*++ main ++*/
#main {
	background: url("../img/bg-summer.jpg") no-repeat center bottom, url("../img/bg.jpg");
	background-size: contain, auto;
	padding-top: 5rem;	/*80px*/
}
#main-contents {}
.m-inner {
	padding: 4rem 0 0;	/*64px 0 0*/
	display: flex;
	flex-flow: column nowrap;
	gap: 2rem min(3.125%, 40px);/*32px 40px*/
}
/*+ main +*/
.m-main {
	overflow-wrap : break-word;
}
.page .m-main,
.single-haisuipost .m-main {
	order: 1;
}
.m-section + .m-section {
	margin-top: 4.5rem;	/*72px*/
}
.m-section-contents {
	padding: 0 1.5rem;	/*0 24px*/
	position: relative;
	z-index: 1;
}
.m-section:nth-child(even) .m-section-contents {
	padding: 2.5rem 1.5rem;	/*40px 24px*/
}
.m-section:nth-child(even) .m-section-contents::before {
	content: "";
	background: #F7FAF5;
	width: 100vw;
	height: 100%;
	margin: 0 calc(50% - 50vw);
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
}
.m-section-contents + .m-section-contents {
	margin-top: 4rem;
}
.m-section-contents p:not(:last-child) {
	margin-bottom: 1rem;
}
.sub-section + .sub-section {
	margin-top: 3.5rem;	/*56px*/
}
.sub2-section + .sub2-section {
	margin-top: 2.5rem;	/*56px*/
}
.sub3-section + .sub3-section {
	margin-top: 2.5rem;	/*56px*/
}
.sub4-section + .sub4-section {
	margin-top: 1.5rem;	/*56px*/
}
/* blog-aechive */
.single-haisuipost .news-list {
	margin: 0 1.5rem;
}
.news-list-item {
	margin-bottom: 5rem;
}
.single .news-list-item {
	margin-bottom: 3rem;
}
.news-list-item + .news-list-item {}
.news-list-header {
	padding-bottom: 0.5rem;
/*	margin-bottom: 1.5rem;*/
	position: relative;
	display: flex;
	flex-flow: row wrap;
	align-items: baseline;
}
.news-list-header::after {
	content: "";
	background: -webkit-repeating-linear-gradient(-45deg, rgba(75, 175, 79, 0.4), rgba(75, 175, 79, 0.4) 2px, #fff 2px, #fff 4px);
	background: repeating-linear-gradient(-45deg, rgba(75, 175, 79, 0.4), rgba(75, 175, 79, 0.4) 2px, #fff 2px, #fff 4px);
	width: 100%;
	height: 0.25rem;
	position: absolute;
	left: 0;
	bottom: 0;
}
.news-title {
	color: #344335;
	font-size: 1.25rem;	/*20px*/
	font-weight: 600;
	width: 100%;
}
.news-title a {
	color: #344335;
	text-decoration: none;
}
.news-title a:hover {
	color: #A1AF9F;
}
.news-cat {
	font-size: 0.75rem;	/*12px*/
/*	text-decoration: none;*/
	margin-left: auto;
	display: flex;
	flex-flow: row wrap;
	align-items: center;
	position: relative;
	top: 0.125rem;	/*2px*/
}
.news-cat::before {
/*	content: "";*/
	font-family: "boxicons";
	font-size: 1rem;	/*16px*/
	line-height: 1;
	margin-right: 0.25rem;
/*	width: 1.5rem;	*//*24px*/
/*	height: 1.5rem;	*//*24px*/
	display: inline-block;
	height: 15.9px;
	overflow-y: hidden;
	position: relative;
	top: -1px;
}
.news-time {
	margin-left: 1rem;
}
.weblog .news-time {
	margin-left: auto;
}
.news-cat.new {
	color: #00A2FF;
}
.news-cat.new::before {
	content: "\eb3a";
}
.news-cat.construction {
	color: #F7761D;
}
.news-cat.construction::before {
	content: "\ebd6";
}
.news-cat:hover {
	opacity: 0.7;
}
.news-list-content {
	padding: 1.5rem 1rem 0;
	/* margin-bottom: -1.75rem; */
}
.news-list-content p,
.news-list-content figure {
	margin-bottom: 1rem;
}
.news-list-content table {
	width: 100%;
	border: 1px solid #A1AF9F;
}
.news-list-content th,
.news-list-content td {
	vertical-align: middle;
	padding: 0.25rem;
	border: 1px solid #A1AF9F;
}
.news-list-content th {
	background: #F1FDEF;
}
.news-list-content thead th {
	text-align: center;
}
.news-list-content tfoot {
	border-top: 3px double #A1AF9F;
}
.news-allbutton {}
.news-allbutton a {
	color: #4CAF50;
	text-decoration: none;
	margin: 0 auto;
	border-width: 2px;
	border-style: solid;
	border-color: #4caf50;
	width: 12.5rem;	/*200px*/
	height: 3rem;	/*48px*/
	display: flex;
	align-items: center;
	justify-content: center;
}
.news-allbutton a:hover {
	color: #fff;
	background: #4CAF50;
	border: 2px solid #4CAF50;
}
/*archive pagenation*/
.archive-pagination {
	margin-top: 3rem;/*48px*/
}
.nav-links ul.page-numbers {
	margin: 0 -0.5rem;
	display: flex;
	justify-content: center;
}
.nav-links ul.page-numbers li {
	margin: 0 0.5rem;
}
.nav-links ul.page-numbers .page-numbers {
	text-decoration: none;
	padding: 0.25rem 0.5rem;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	border: 1px solid;
}
.nav-links ul.page-numbers span.page-numbers {
	border-color: #A1AF9F;
}
.nav-links ul.page-numbers span.page-numbers.dots {
	border: none;
}
.nav-links ul.page-numbers .prev.page-numbers,
.nav-links ul.page-numbers .next.page-numbers {
	font-size: 1.5rem;	/*24px*/
	padding: 0.25rem 0;
	border-color: #fff;
}
/* single pagenation */
.post-navigation {
	margin-top: 2rem;
}
.post-navigation .nav-links {
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
.post-navigation .nav-links.next-only {
	justify-content: flex-end;
}
.post-navigation .nav-links.prev-only {
	justify-content: flex-start;
}
.post-navigation .nav-prev,
.post-navigation .nav-all,
.post-navigation .nav-next {
	width: 100%;
}
.post-navigation .nav-all {
	flex-shrink: 0
}
.post-navigation a {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
}
.post-navigation .nav-next a {
	justify-content: flex-end;
}
.post-navigation .nav-all {
	margin: 0.5rem 0;
}
.post-navigation .nav-all a {
	text-decoration: none;
	padding: 0.25rem 1rem;
	border: 1px solid;
	justify-content: center;
}
.post-navigation i {
	font-size: 1.5rem;	/*24px*/
	height: 1.437rem;	/*23px*/
	overflow: hidden;
	position: relative;
	top: -1px;
}
.post-navigation .nav-prev i {
	margin-right: 0.5rem;
}
.post-navigation .nav-bext i {
	margin-left: 0.5rem;
}
/*+ sub +*/
.m-sub {
	margin-bottom: 3rem;
	order: 0;
	z-index: 9999;
}
.sub-content {
	padding: 0 1.5rem;	/*0 24px*/
	margin-left: auto;
	margin-right: auto;
	width: 96%;
}
.sub-content + .sub-content {
	margin-top: 1.5rem;	/*24px*/
}
.sidebar-content-link li,
.widget_categories li,
.widget_archive li,
.sidebar-weblog-archive li {
	display: flex;
/*	align-items: center;*/
}
.sidebar-content-link li::before,
.widget_categories li::before,
.widget_archive li::before,
.sidebar-weblog-archive li::before {
	content: "\eb17";
	font-family: 'boxicons';
	margin-right: 0.5rem;
}
.sidebar-content-link li.has-sublist {
	flex-flow: row wrap;
}
.sidebar-content-link-sublist {
	margin-left: 1.5rem;
	width: calc(100% - 1.5rem);
}
.sidebar-content-link-sublist li::before {
	content: "\ead6";
/*	color: #006B0E;*/
}
.has-more-list-item {
	height: auto;
	overflow: visible;
	opacity: 1;
	transition: opacity .6s;
}
.has-more-list-item.item-hidden {
	height: 0;
	overflow: hidden;
	opacity: 0;
}
.sidebar-content-link-sublist.has-more-list li.has-more-list-item.item-more::before,
.sidebar-weblog-archive li.has-more-list-item.item-more::before {
	content: none;
}
.has-more-list-item-more-button {
	color: #344335;
	background: rgba(161, 175, 159, 0.4);
	text-align: center;
	width: 100%;
	display: block;
	transition: background .3s;
}
.has-more-list-item-more-button::after {
	content: "\ea0f";
	font-family: 'boxicons';
	margin-left: 0.25rem;
	display: inline-block;
}
.has-more-list-item-more-button.more-non::after {
	content: "\ea1c"
}
.has-more-list-item-more-button:hover {
	background: rgba(161, 175, 159, 0.2);
}
.has-more-list-item-more-button:focus-within {
	outline: 2px solid;
}
#wp-calendar,
.wp-calendar {
	width: 100%;
}
#wp-calendar caption,
.wp-calendar caption {
	font-size: 1.25rem;
	font-weight: 600;
	padding-bottom: 0.5rem;
	margin-bottom: 1.5rem;
	position: relative;
}
#wp-calendar caption::after,
.wp-calendar caption::after {
	content: "";
	background: -webkit-repeating-linear-gradient(-45deg, rgba(75, 175, 79, 0.4), rgba(75, 175, 79, 0.4) 2px, #fff 2px, #fff 4px);
	background: repeating-linear-gradient(-45deg, rgba(75, 175, 79, 0.4), rgba(75, 175, 79, 0.4) 2px, #fff 2px, #fff 4px);
	width: 100%;
	height: 0.25rem;
	position: absolute;
	left: 0;
	bottom: 0;
}
#wp-calendar thead th,
#wp-calendar tbody td,
.wp-calendar thead th,
.wp-calendar tbody td {
	text-align: center;
	border: 1px solid #4CAF50;
}
#wp-calendar thead th,
.wp-calendar thead th {
	color: #fff;
	background: rgba(75, 175, 79, 1);
}
#wp-calendar tfoot #prev,
.wp-calendar tfoot #prev {
	font-weight: 600;
	padding-left: 0.5rem;
}
#wp-calendar tfoot #next,
.wp-calendar tfoot #next {
	font-weight: 600;
	text-align: right;
	padding-right: 0.5rem;
}
.widget_categories li::before {
	content: "\eb56";
}
.widget_archive li::before,
.sidebar-weblog-archive li::before {
	content: "\e987";
}
.sub-content.widget_calendar h2.sub-content-headline {
	display: none;
}
@media print, screen and (min-width:768px) {
	.m-inner {
		flex-flow: row nowrap;
		justify-content: space-between;
	}
	.m-main {
		/* width: 71.875%; */
		flex: 1;
		max-width: 920px;
		order: 0;
	}
	.m-main.m-main-full {
		width: 100%;
		max-width: 100%;
	}
	.m-main.m-main-full .sub-section {
		margin-left: auto;
		margin-right: auto;
		max-width: 920px;
	}
	.news-list-header .news-title {
		width: auto;
	}
	.m-sub {
		margin-bottom: 0;
		width: 25%;
		max-width: 320px;
		order: 1;
	}
	.m-sub div.sticky {
		max-height: calc(100vh - 6rem);
		overflow-y: auto;
		position: -webkit-sticky;
		position: sticky;
		top: 6rem;
		z-index: 999;
		/*for FireFox*/
		scrollbar-width: thin;/*細さ(幅・高さ両方に適用)*/
		scrollbar-color: rgba(161, 175, 159, 0.7) rgba(0, 0, 0, .1);/*つまみの色 軌道の色*/
	}
	.m-sub div.sticky::-webkit-scrollbar {
	width: 0.25rem;
	}
	.m-sub div.sticky::-webkit-scrollbar-track {
	border-radius: 0.125rem;
	box-shadow: inset 0 0 5px rgba(0, 0, 0, .1);
	}
	.m-sub div.sticky::-webkit-scrollbar-thumb {
	background-color: rgba(161, 175, 159, 0.7);
	border-radius: 0.125rem;
	box-shadow:0 0 0 1px rgba(255, 255, 255, .3);
	}
	.admin-bar .m-sub div.sticky {
		top: calc(6rem + 64px);
	}
/*	_:-ms-input-placeholder, :root .m-sub div.sticky.sticky-fixed.is-sticky {
		width: 25%;
		max-width: 320px;
		z-index: 9999;
	}
	_:-ms-input-placeholder, :root .m-sub div.sticky.sticky-fixed.is-absolute {
		width: 100%;
		max-width: 320px;
	}*/
	.sub-content {
		padding: 0 0 1.5rem;
		margin-left: 0;
		margin-right: 0;
		width: 100%;
	}
	.m-section:nth-child(even) .m-section-contents::before {
		margin: 0 calc(30% - 50vw) 0 calc(70% - 50vw);
	}
}
@media print, screen and (min-width:783px) {
	.admin-bar .m-sub div.sticky {
		top: calc(6rem + 32px);
	}
}
@media print, screen and (min-width:960px) {
	.post-navigation .nav-all a {
		width: 50%;
		margin: 0 auto;
	}
	.post-navigation .nav-links {
		flex-flow: row nowrap;
	}
	.post-navigation .nav-prev,
	.post-navigation .nav-next {
		flex: 1 1 0%;
	}
	.post-navigation .nav-prev {
		margin-right: 0.5rem;
	}
	.post-navigation .nav-next {
		margin-left: 0.5rem;
	}
}

/*+ banner +*/
#banner {}
.b-inner {
	padding: 4.5rem 0 5rem;	/*72px 0 80px*/
}
.banner-list {
	margin-bottom: -0.5rem;
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
.banner-list-item {
	margin-bottom: 0.5rem;
	height: 10rem;	/*160px*/
	transition: .3s;
}
.banner-list-item a {
	color: #fff;
	text-decoration: none;
	padding: 0.5rem;	/*8px*/
	width: 100%;
	height: 100%;
	display: flex;
	flex-flow: column nowrap;;
	align-items: center;
	justify-content: center;
}
.banner-list-item a::before {
	content: "";
	width: 3rem;	/*48px*/
	height: 3rem;	/*48px*/
}
.banner-list-item .banner-list-item-title {
	height: 18px;
}
.banner-list-item.download,
.banner-list-item.kids,
.banner-list-item.nature,
.banner-list-item.katsuura,
.banner-list-item.mikan,
.banner-list-item.livecamera {
	width: calc((100% - 0.5rem) / 2);
}
.banner-list-item.dam {
	width: 100%;
}
.banner-list-item.download {
	background: url("../img/aside/banner/download-bg.jpg") no-repeat center center;
	background-size: cover;
}
.banner-list-item.kids {
	background: url("../img/aside/banner/kids-bg.jpg") no-repeat center center;
	background-size: cover;
}
.banner-list-item.nature {
	background: url("../img/aside/banner/nature-bg.jpg") no-repeat center center;
	background-size: cover;
}
.banner-list-item.katsuura {
	background: url("../img/aside/banner/katsuura-bg.jpg") no-repeat center center;
	background-size: cover;
}
.banner-list-item.mikan {
	background: url("../img/aside/banner/mikan-bg.jpg") no-repeat center center;
	background-size: cover;
}
.banner-list-item.livecamera {
	background: url("../img/aside/banner/livecamera-bg.jpg") no-repeat center center;
	background-size: cover;
}
.banner-list-item.dam {
	background: url("../img/aside/banner/dam-bg.jpg") no-repeat center center;
	background-size: cover;
	font-size: 0.875rem;	/*14px*/
}
.banner-list-item.download a::before {
	background: url("../img/aside/banner/download-icon.svg") no-repeat center center;
	background-size: contain;
}
.banner-list-item.kids a::before {
	background: url("../img/aside/banner/kids-icon.svg") no-repeat center center;
	background-size: contain;
	margin-top: 0.25rem;	/*4px*/
	margin-bottom: 0.25rem;	/*4px*/
	width: 2.5rem;	/*40px*/
	height: 2.5rem;	/*40px*/
}
.banner-list-item.nature a::before {
	background: url("../img/aside/banner/nature-icon.svg") no-repeat center center;
	background-size: contain;
}
.banner-list-item.katsuura a::before {
	background: url("../img/aside/banner/katsuura-icon.svg") no-repeat center center;
	background-size: contain;
	margin-top: 0.25rem;	/*4px*/
	margin-bottom: 0.25rem;	/*4px*/
	width: 2.5rem;	/*40px*/
	height: 2.5rem;	/*40px*/
}
.banner-list-item.mikan a::before {
	background: url("../img/aside/banner/mikan-icon.svg") no-repeat center center;
	background-size: contain;
	margin-top: 0.25rem;	/*4px*/
	margin-bottom: 0.25rem;	/*4px*/
	width: 2.5rem;	/*40px*/
	height: 2.5rem;	/*40px*/
}
.banner-list-item.livecamera a::before {
	background: url("../img/aside/banner/livecamera-icon.svg") no-repeat center center;
	background-size: contain;
}
.banner-list-item.dam a::before {
	content: none;
}
.banner-list-item.dam .dam-point {
	line-height: 1.4;
	margin-top: 0.5rem;
}
.banner-list-item.dam .dam-source {
	font-size: 0.625rem;	/*10px*/
	text-align: right;
}
/*hover*/
.banner-list-item.download:hover {
	background: url("../img/aside/banner/download-bg_hover.jpg") no-repeat center center;
	background-size: cover;
}
.banner-list-item.kids:hover {
	background: url("../img/aside/banner/kids-bg_hover.jpg") no-repeat center center;
	background-size: cover;
}
.banner-list-item.nature:hover {
	background: url("../img/aside/banner/nature-bg_hover.jpg") no-repeat center center;
	background-size: cover;
}
.banner-list-item.katsuura:hover {
	background: url("../img/aside/banner/katsuura-bg_hover.jpg") no-repeat center center;
	background-size: cover;
}
.banner-list-item.mikan:hover {
	background: url("../img/aside/banner/mikan-bg_hover.jpg") no-repeat center center;
	background-size: cover;
}
.banner-list-item.livecamera:hover {
	background: url("../img/aside/banner/livecamera-bg_hover.jpg") no-repeat center center;
	background-size: cover;
}
.banner-list-item.dam:hover {
	background: url("../img/aside/banner/dam-bg_hover.jpg") no-repeat center center;
	background-size: cover;
}
@media screen and (max-width:374px) {
	.banner-list-item.dam {
		font-size: 0.75rem;	/*12px*/
	}
}
@media print, screen and (min-width:768px) {
	.banner-list-item.nature,
	.banner-list-item.katsuura,
	.banner-list-item.mikan,
	.banner-list-item.livecamera {
		width: calc((100% - 1rem) / 3);
	}
	.banner-list-item.dam {
		width: calc((((100% - 1rem) / 3) * 2) + 0.5rem);
	}
	.banner-list-item .banner-list-item-title {
		height: auto;
	}
}
/*+ main-footer +*/
#main-footer {}
.mf-inner {
	padding: 0 1rem;	/* 0 16px*/
	display: flex;
	flex-flow: row wrap;
	justify-content: space-between;
}
.main-footer-twitter,
.main-footer-weaternews {
	width: 100%;
}
.main-footer-twitter-headline,
.main-footer-weaternews-headline {
	padding-bottom: 0.5rem;	/*8px*/
	margin-bottom: 1.5rem;	/*24px*/
	border-bottom-width: 4px;
	border-bottom-style: solid;
	border-bottom-color: #4caf50;
}
/* twitter */
.main-footer-twitter-headline {
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.main-footer-twitter .twitter-tweet {
	margin: 0 !important;
}
.main-footer-twitter-timeline {
	background: rgba(255, 255, 255, 0.8);
	padding: 1rem;	/*16px*/
	overflow: hidden;
}
/*.main-footer-twitter-timeline .twitter-timeline {
	min-height: 200px;
}*/
.main-footer-twitter-timeline iframe {
	width: 100%;
	height: 100%;
}
.twitter-timeline-contents {
	color: #344335;
	background: rgba(255, 255, 255, 0.8);
	font-size: 0.875rem;	/*14px*/
	text-decoration: none;
	padding: 1rem;	/*16px*/
	display: block;
}
.twitter-timeline-contents::before {
	content: "";
	background: url("../img/aside/twitter-icon.png") no-repeat center center;
	background-size: contain;
	border-radius: 50%;
	width: 3rem;	/*48px*/
	height: 3rem;	/*48px*/
	display: block;
	position: absolute;
}
.twitter-timeline-contents:hover {
	color: #344335;
	opacity: 0.7;
}
.twitter-name {
	margin-left: 3.5rem;	/*56px*/
	height: 3rem;	/*48px*/
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
}
.twitter-name-jp {
	font-weight: 600;
}
.twitter-name-en {
	opacity: 0.7;
}
.twitter-text {
	white-space: pre-line;
	padding: 0.25rem 0.25rem 0.5rem;	/*4px 4px 8px*/
}
.twitter-dates {
	font-size: 0.75rem;	/*12px*/
	text-align: right;
	padding: 0.5rem 0.25rem 0;	/*8px 4px 0*/
	border-top: 1px dashed #4CAF50;
}
/*weather news*/
.main-footer-weaternews {
	margin-top: 2.5rem;	/*40px*/
}
.main-footer-weaternews-content {
	font-size: 0.812rem;	/*13px*/
	background: rgba(255, 255, 255, 0.8);
	padding: 1rem;	/*16px*/
}
.main-footer-weaternews-content-list {
	width: 100%;
	border-right: 1px solid #4CAF50;
	border-top: 1px solid #4CAF50;
	display: flex;
	flex-flow: row wrap;
}
.main-footer-weaternews-content-list-item {
	padding: 0.25rem;
	border-left: 1px solid #4CAF50;
	border-bottom: 1px solid #4CAF50;
	flex: 1 1 auto;
}
.weather-dates {}
.weather-day,
.weather-temperature,
.weather-icon {
	text-align: center;
}
.lowest {
	color: #006FD1;
}
.highest {
	color: #FF4444;
}
.weather-icon img {
	width: 64px;
}
.weather-icon::after {
	content: attr(data-text);
	text-align: center;
	display: block;
}
.weather-source {
	font-size: 0.75rem;	/*12px*/
	text-align: right;
	margin-top: 1rem;
}
@media screen and (max-width:413px) {
	.main-footer-weaternews-headline::after {
		text-align: right;
		margin-top: 0.5rem;	/*8px*/
		display: block	!important;
	}
}
@media print, screen and (min-width:640px) {
	.main-footer-weaternews-content-list {
		border-right: 0;
		border-top: 0;
		flex-flow: row nowrap;
	}
	.main-footer-weaternews-content-list-item {
		border-left: 0;
		border-bottom: 0;
	}
	.main-footer-weaternews-content-list-item + .main-footer-weaternews-content-list-item {
		border-left: 1px dashed #4CAF50;
	}
}
@media print, screen and (min-width:960px) {
	.mf-inner {
		padding: 0 2.5rem;	/* 0 40px*/
	}
	.main-footer-twitter,
	.main-footer-weaternews {
		width: 48%;
		max-width: 560px;
		display: flex;
		flex-flow: column nowrap;
	}
	.main-footer-twitter-timeline,
	.main-footer-weaternews-content {
		flex: 1 1 auto;
	}
	.twitter-timeline-contents-list {
		padding-left: 3.5rem;	/*56px*/
	}
	.twitter-name {
		margin-left: 0;
	}
	.twitter-dates {
		border-top: 0;
	}
	.twitter-dates::before {
		content: "";
		margin: 0 auto;
		width: calc(100% + 3.5rem);
		height: 1px;
		border-top: 1px dashed #4CAF50;
		display: block;
		position: relative;
		left: -3.5rem;
		top: -0.5rem;
	}
	.main-footer-weaternews {
		margin-top: 0;
	}
	.main-footer-weaternews-content {
		font-size: 1rem;	/*16px*/
		padding: 1.5rem 0;	/*24px 0*/
	}
	.main-footer-weaternews-content-list {
		display: grid;
		display: -ms-grid;
		grid-template-columns: 50% 50%;
		-ms-grid-columns: 50% 50%;
		grid-template-rows: 64px 64px 64px 56px;
		-ms-grid-rows: 64px 64px 64px 56px;
	}
	.main-footer-weaternews-content-list-item {
		padding: 0;
		display: flex;
		align-items: center;
	}
	.main-footer-weaternews-content-list-item:nth-child(1) {
		grid-column: 1;
		-ms-grid-column: 1;
		grid-row: 1;
		-ms-grid-row: 1;
	}
	.main-footer-weaternews-content-list-item:nth-child(1).no-data {
		grid-column: 1 / -1;
		-ms-grid-column: 1;
		-ms-grid-column-span: 2;
		grid-row: 1 / -1;
		-ms-grid-row: 1;
		-ms-grid-row-span: 4;
	}
	.main-footer-weaternews-content-list-item:nth-child(2) {
		grid-column: 1;
		-ms-grid-column: 1;
		grid-row: 2;
		-ms-grid-row: 2;
	}
	.main-footer-weaternews-content-list-item:nth-child(3) {
		grid-column: 1;
		-ms-grid-column: 1;
		grid-row: 3;
		-ms-grid-row: 3;
	}
	.main-footer-weaternews-content-list-item:nth-child(4) {
		grid-column: 1;
		-ms-grid-column: 1;
		grid-row: 4;
		-ms-grid-row: 4;
	}
	.main-footer-weaternews-content-list-item:nth-child(5) {
		grid-column: 2;
		-ms-grid-column: 2;
		grid-row: 2;
		-ms-grid-row: 2;
	}
	.main-footer-weaternews-content-list-item:nth-child(6) {
		grid-column: 2;
		-ms-grid-column: 2;
		grid-row: 3;
		-ms-grid-row: 3;
	}
	.main-footer-weaternews-content-list-item:nth-child(7) {
		grid-column: 2;
		-ms-grid-column: 2;
		grid-row: 4;
		-ms-grid-row: 4;
	}
	.main-footer-weaternews-content-list-item:nth-child(-n + 4) {
		justify-content: flex-end;
		padding-right: 1rem;	/*16px*/
	}
	.main-footer-weaternews-content-list-item:nth-child(-n + 4).no-data {
		justify-content: center;
	}
	.main-footer-weaternews-content-list-item:nth-child(n + 5) {
		padding-left: 1rem;	/*16px*/
	}
	.main-footer-weaternews-content-list-item + .main-footer-weaternews-content-list-item {
		border-left: 0;
	}
	.weather-icon img {
		width: 80px;
	}
	.weather-dates {
		line-height: 1.5;
		margin-right: 1rem;	/*16px*/
	}
	.weather-source {
		font-size: 0.875rem;	/*14px*/
		padding-right: 1rem;	/*16px*/
	}
}
@media print, screen and (min-width:1280px) {
	.main-footer-weaternews-content-list {
		grid-template-rows: 72px 72px 72px 56px;
		-ms-grid-rows: 72px 72px 72px 56px;
	}
	.main-footer-weaternews-content-list-item:nth-child(-n + 4) {
		padding-right: 2rem;	/*32px*/
	}
	.main-footer-weaternews-content-list-item:nth-child(n + 5) {
		padding-left: 2rem;	/*32px*/
	}
}
/*+ pagetop +*/
#pagetop {
	margin-top: 1.5rem;	/*24px*/
	margin-left: auto;
	width: 5rem;	/*64px + 16px*/
	height: 5rem;	/*64px + 16px*/
	position: -webkit-sticky;
	position: sticky;
	bottom: 0;
	right: 0;
	z-index: 99999;
}
#pagetop a {
	width: 4rem;	/*64px*/
	height: 4rem;	/*64px*/
	color: #fff;
	background: #4CAF50;
	font-size: 0.75rem;	/*12px*/
	text-decoration: none;
	border: 2px solid #4CAF50;
	display: flex;
	flex-flow: column nowrap;
	align-items: center;
	justify-content: center;
}
#pagetop a::before {
	content: "";
	background: url("../img/pagetop-arrow.svg") no-repeat center center;
	background-size: contain;
	width: 1.5rem;	/*24px*/
	height: 1.5rem;	/*24px*/
}
#pagetop a:hover {
	color: #4CAF50;
	background: #fff;
}
#pagetop a:hover::before {
	background: url("../img/pagetop-arrow_hover.svg") no-repeat center center;
	background-size: contain;
}
@media print, screen and (min-width:960px) {
	#pagetop {
		width: 6.5rem;	/*64px + 40px*/
		height: 5.5rem;	/*64px + 24px*/
	}
}
/*++ footer ++*/
#footer {
}
.f-inner {
	padding: 3.5rem 2.5rem 0;	/*56px 40px 0*/
	display: flex;
	flex-flow: row wrap;
	align-items: flex-end;
	justify-content: space-between;
}
/*+ footer-info +*/
/*.footer-info-headline a {
	display: block;
}*/
.footer-info-headline img {
	vertical-align: middle;
}
.footer-info-headline-text {
	margin: 0 0 0 1rem;	/*0 0 0 16px*/
}
.footer-info-address {
	margin-top: 1.5rem;	/*24px*/
}
/*+ footer-nav +*/
.footer-nav {
	margin-top: 1.5rem;	/*24px*/
	margin-left: auto;
}
.footer-nav a {
	color: #344335;
	text-decoration: none;
	border-bottom: 1px solid #A1AF9F;
}
.footer-nav a:hover {
	color: #4CAF50;
	border-bottom-color: #4CAF50;
}
ul[class^="footer-nav"] {
	font-size: 0.875rem;	/*14px*/
	display: flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-end;
}
ul[class^="footer-nav-list"] li + li {
	margin-left: 0.5rem
}
ul[class^="footer-nav"] li + li::before {
	content: "|";
	color: #4CAF50;
	display: inline-block;
	margin-right: 0.5rem;
}
.footer-nav-list1 ul.sub-menu,
.footer-nav-list2 i {
	display: none;
}
/*+ copyright +*/
#copyright {
	color: #fff;
	background: #4CAF50;
	text-align: center;
	margin-top: 3.5rem;	/*56px*/
	width: 100%;
	min-height: 2.5rem;	/*40px*/
	display: flex;
	align-items: center;
	justify-content: center;
}
_:-ms-input-placeholder, :root #copyright {
	height: 2.5rem;	/* 40px */
}

/*+++ Module +++*/
.inblock {
	display: inline-block;
}
.block {
	display: block;
}
.rm1 {
	margin-right: 1rem;
}
.lm1 {
	margin-left: 1rem;
}
/**++ headline ++**/
.page-headline {
	background-repeat: no-repeat;
	background-position: center right;
	background-size: cover;
	position: relative;
	z-index: 1;
}
.page-headline::before {
	content: "";
	background: linear-gradient( rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.7) ) no-repeat center center;
	background-size: auto;
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
}
.ph-inner {
	position: relative;
}
.page-headline-text {
	font-size: 1.5rem;	/*24px*/
	font-weight: 600;
	text-align: center;
	padding: 5rem 0;
}
.has-sub::after {
	content: attr(data-text);
	color: #4CAF50;
	font-family: Arial, Helvetica, "sans-serif";
	font-size: 0.875rem;	/*14px*/
	font-weight: 500;
	line-height: 1;
	vertical-align: baseline;
	margin-left: 1.5rem;	/*24px*/
	display: inline-block;
}
.page-headline-text.has-sub {
	line-height: 1;
}
.page-headline-text.has-sub::after {
	content: "- " attr(data-text) " -";
	vertical-align: middle;
}
.m-section-headline,
.sub-content-headline {
	font-size: 1.5rem;	/*24px*/
	font-weight: 600;
	padding-bottom: 0.25rem;
	margin-bottom: 2rem;	/*32px*/
	position: relative;
}
.m-section-headline::after,
.sub-content-headline::after {
	content: "";
	background: -webkit-repeating-linear-gradient(-45deg, rgba(75, 175, 79, 0.4), rgba(75, 175, 79, 0.4) 2px, #fff 2px, #fff 4px);
	background: repeating-linear-gradient(-45deg, rgba(75, 175, 79, 0.4), rgba(75, 175, 79, 0.4) 2px, #fff 2px, #fff 4px);
	width: 100%;
	height: 0.25rem;	/*4px*/
	position: absolute;
	left: 0;
	bottom: 0;
}
.sub-section-headline {
	background: #e5efde;
	font-size: 1.125rem;	/*18px*/
	font-weight: 600;
	padding: 0.25rem 0.25rem 0 0.5em;	/*4px 4px 0 8px*/
	margin-bottom: 1.5rem;	/*24px*/
	border-left-width: 0.25rem;	/*4px*/
	border-left-style: solid;
	border-left-color: #4caf50;
	position: relative;
}
.sub2-section-headline,
.sub-section-headline2 {
	font-size: 1.125rem;	/*18px*/
	font-weight: 600;
	padding: 0 0.25rem;
	margin-bottom: 1rem;	/*16px*/
	border-bottom-width: 3px;
	border-bottom-style: double;
	border-bottom-color: #4caf50;
}
.sub3-section-headline,
.sub-section-headline3 {
	font-size: 1rem;	/*16px*/
	font-weight: 600;
	padding: 0 0.25rem;
	margin-bottom: 1rem;	/*16px*/
	border-bottom-width: 3px;
	border-bottom-style: dotted;
	border-bottom-color: rgba(75, 175, 79, 0.7);
}
@media print, screen and (min-width:960px) {
	.page-headline::before {
		background-image: inherit;
		content: "";
		width: 45%;
		height: 100%;
		z-index: -1;
	}
	.page-headline::after {
		background:linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 18%, rgba(255, 255, 255, 0.8) 36%, rgba(255, 255, 255, 1) 45%, rgba(255, 255, 255, 1) 100%) no-repeat center right;
		background-size: auto;
		content: "";
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		right: 0;;
		z-index: -1;
	}
}
/*++ text ++*/
.text-center {
	text-align: center;
}
.text-right {
	text-align: right;
}
.text-left {
	text-align: left;
}
/**++ figure ++**/
.img-border {
	margin: 0 auto;
	display: table;
	position: relative;
}
.img-border::after {
	content: "";
	border: 4px solid rgba(255, 255, 255, 0.4);
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}
.img-border.border-midori::after {
	border-color: #4CAF50;
}
.img-center,
.img-left,
.img-right{
	text-align: center;
	margin: 1rem 0;
}
.img-row {
	margin: 1rem -0.5rem 0;
	display: flex;
	flex-flow: row wrap;
	align-items: flex-end;
}
.img-row.row-re {
	flex-flow: row-reverse wrap;
}
.img-row.has-text {
	align-items: stretch;
}
.img-row.align-center {
	align-items: center;
}
.img-row figure {
	text-align: center;
	padding: 0 0.5rem;
	margin-bottom: 1rem;
}
.img-row.row-re {
	
}
.img-row .img-border {
	display: block;
}
.img-row .img-border img {
	flex-shrink: 0;
}
.img-row .row-text {
	padding: 0 0.5rem;
	flex-grow: 1;
}
.img-center-row {
	justify-content: center;
}
.cap-center figcaption {
	text-align: center;
}
.cap-bold figcaption {
	font-weight: 600;
	text-align: left;
	margin-bottom: 6px;
	border-bottom-width: 3px;
	border-bottom-style: double;
	border-bottom-color: #4caf50;
}
@media print, screen and (min-width:600px) {
	.img-row3 figure {
		width: calc(100% / 2);
	}
}
@media print, screen and (min-width:768px) {
	.img-right {
		padding: 0 0.5rem 0 1rem;
		margin: 0;
		float: right;
	}
	.img-left {
		padding: 0 1rem 0 0.5rem;
		margin: 0;
		float: left;
	}
	.img-row2 figure {
		width: 50%;
	}
}
@media print, screen and (min-width:960px) {
	.img-row3 figure {
		width: calc(100% / 3);
	}
}
/*++ table ++*/
.m-table {
	margin: 1rem 0;
	width: 100%;
	border-top: 1px solid #A1AF9F;
	border-left: 1px solid #A1AF9F;
	border-right: 1px solid #A1AF9F;
}
.m-table th,
.m-table td {
	background: #fff;
	vertical-align: middle;
	padding: 0.25rem;
	border-bottom: 1px solid #A1AF9F;
}
.m-table th {
	background: #F1FDEF;
}
.m-table thead th {
	text-align: center;
}
.m-table td + td,
.m-table td:first-child {
	border-left: 1px solid #A1AF9F;
}
.m-table tfoot {
	border-top: 3px double #A1AF9F;
}
.m-table.th-center th,
.m-table.td-center td,
.m-table tbody.td-center td {
	text-align: center;
}
@media screen and (max-width:619px) {
	.m-table,
	.m-table thead,
	.m-table tbody,
	.m-table tfoot,
	.m-table tr,
	.m-table th,
	.m-table td {
		display: block;
	}
	.m-table td + td,
	.m-table td:first-child {
		border-left: 0;
	}
}
@media screen and (min-width:620px) {
	.m-table th {
		font-weight: 500;
		white-space: nowrap;
		border-right: 1px solid #A1AF9F;
	}
	.m-table th.th-normal {
		white-space: normal;
	}
	.m-table.th-right th,
	.m-table.td-right td,
	.m-table tbody.td-right td {
		text-align: right;
	}
}

/*++ list ++*/
.li-disc,
.news-list-content ul {
	margin-left: 1.5rem;
	list-style: disc;
}
.li-square {
	margin-left: 1.5rem;
	list-style: square;
}
.li-decimal,
.news-list-content ol {
	margin-left: 1.5rem;
	list-style: decimal;
}
.link-list {
	margin: 1rem 0;
}
.link-list li {
	display: flex;
	align-items: center;
}
.link-list li::before {
	content: "\eb69";
	font-family: 'boxicons';
	margin-right: 0.5rem;
}
.link-list.row {
	display: flex;
	flex-flow: row wrap;
}
.link-list.row li + li {
	margin-left: 1.75rem;
}
.text-center .link-list.row {
	justify-content: center;
}
/*+ table-style +*/
.table-style-list {
	display: flex;
	flex-flow: row wrap;
	border-top: 1px solid #A1AF9F;
	border-left: 1px solid #A1AF9F;
}
.table-style-list-item {
	border-right: 1px solid #A1AF9F;
	border-bottom: 1px solid #A1AF9F;
	flex: 1 1 8em;
}
.table-style-list-item a {
	background: #fff;
	text-align: center;
	padding: 0.125rem;
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.table-style-list-item.empty {
	display: none;
}
@media print, screen and (min-width:960px) {
	.table-style-list-item {
		width: calc(100% / 5);
		flex: 1 1 auto;
	}
	.table-style-list-item.empty {
		background: #fff;
		padding: 0.125rem;
		display: flex;
		align-items: center;
		justify-content: center;
	}
}

/*++ modal ++*/
.overlay {
	background: rgba(0, 0, 0, 0.8);
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 999999;
	visibility: hidden;
	opacity: 0;
	transition: 1s;
}
.overlay .modal-div {
	width: 90vw;
	height: 90vh;
	position: absolute;
	top: 5vh;
	left: 5vw;
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	align-items: center;
}
.overlay .modal-div img {
	border: 0.5rem solid #fff;
	border-radius: 0.5rem;
	max-width: 100%;
	max-height: 100%;
}
.modal-img-title {
	color: #fff;
}
.overlay.modalactive {
	visibility: visible;
	opacity: 1;
}
.overlay li {
	visibility: hidden;
}
_:-ms-input-placeholder, :root .overlay li {
	transition: opacity 0;
}
.overlay li .modal-div {
	opacity: 0.5;
	transition: opacity .5s;
}
.overlay li.is-active {
	visibility: visible;
}
.overlay li.is-active .modal-div {
	opacity: 1;
	transition: opacity 1s;
}
.prev-button,
.next-button {
	background: rgba(0, 0, 0, 0.4);
	width: 50%;
	height: 5%;
	position: absolute;
	bottom: 0;
}
.prev-button {
	left: 0;
}
.next-button {
	right: 0;
}
.prev-button i,
.next-button i {
	color: #fff;
	font-size: 4.5vw;
	position: absolute;
	bottom: 50%;
	left: 50%;
	transform: translate(-50%, 50%);
}
@media print, screen and (min-width:768px) {
	.prev-button,
	.next-button {
		width: 5%;
		height: 100%;
	}
}
@media print, screen and (min-width:1280px) {
	.prev-button i,
	.next-button i {
		font-size: 2.5rem;	/*40px*/
	}
}

/*+++ midorinet +++*/
.midorinet-list-line {
	display: flex;
	align-items: center;
}
.midorinet-list-line + .midorinet-list-line {
	margin-top: 1rem;
}
.midorinet-list-line dt {
	width: 100px;
	flex-shrink: 0;
}
.midorinet-list-line.net {
	align-items: flex-start;
}
@media print, screen and (min-width:960px) {
	.midorinet-list-line.net {
		align-items: center;
	}
}
/*+++ history +++*/
.history .m-section-contents + .m-section-contents {
	margin-top: 3rem;	/*48px*/
}
.history-content {
	width: 100%;
	display: flex;
	flex-flow: column nowrap;
}
.history-outline {
	border-top: 2px solid #A1AF9F;
	border-left: 2px solid #A1AF9F;
	border-right: 2px solid #A1AF9F;
}
.history-outline + .history-outline {
	border-top: 1px solid #A1AF9F;
	border-bottom: 2px solid #A1AF9F;
}
.history-outline-headline {
	font-weight: 600;
	text-align: center;
	padding: 0.125rem;
}
.history-outline-list {}
.history-outline-line {
	border-top: 1px solid #A1AF9F;
	display: flex;
}
.history-outline-line dt {
	text-align: right;
	padding: 0.125rem 0.25rem 0;
	width: 6em;
	border-right: 3px double #A1AF9F;
	flex-shrink: 0;
}
.history-outline-line dd {
	padding: 0.125rem 0.25rem 0;
}
.history-summary {
	margin-top: 2rem;	/*32px*/
}
.history-summary-list {
	margin-bottom: -0.5rem;
}
.history-summary-list dt {
	font-weight: 600;
}
.history-summary-list dt.weight-normal {
	font-weight: 500;
}
.history-summary-list dd {
	font-weight: 500;
	margin-bottom: 0.5rem;
}
.history-summary-list .history-summary-list-content {
	margin-left: 0.5rem;
}
.history-summary-list .hosoku {
	margin-top: 0.5rem;
}
.history-content-photo {
	margin: 2rem -0.5rem -0.5rem;	/*32px auto 0*/
}
.history-content-photo li {
	text-align: center;
	padding: 0 0.5rem 0.5rem;
}
@media print, screen and (min-width:501px) {
	.history-content {
		margin: 0 auto;
		width: 95%;
		max-width: 828px;
	}
}
@media print, screen and (min-width:1280px) {
	.history-content {
		flex-flow: row nowrap;
		justify-content: space-between;
	}
	.history-content-text {
		flex: 1 1 0%;
	}
	.history-content-photo {
		margin: 0 0 -0.5rem;
		width: 44%;
		ma-width: 360px;
	}
	.history-content-photo li {
		padding: 0 0 1rem 1rem;
	}
}
/*+++ shutsudou +++*/
.shutsudou-number-list {
	margin-bottom: 2rem;
	border-top: 1px solid #A1AF9F;
	border-left: 1px solid #A1AF9F;
	width: 100%;
	display: flex;
	flex-flow: row wrap;
}
.shutsudou-number-list + .shutsudou-number-list {
	margin-top: -0.5rem;
}
.shutsudou-number-list-line {
	border-right: 1px solid #A1AF9F;
	border-bottom: 1px solid #A1AF9F;
	flex: 1 1 0%;
}
.shutsudou-number-list.month .shutsudou-number-list-line {
	flex: auto;
	width: calc(100% / 6);
}
.shutsudou-number-list-line dt {
	text-align: center;
	white-space: nowrap;
	padding: 0.25rem 0.25rem 0.125rem;
	border-bottom: 1px solid #A1AF9F;
}
.shutsudou-number-list-line dd {
	text-align: right;
	padding: 0.25rem 0.5rem 0.125rem;
}
@media print, screen and (min-width:600px) {
	.shutsudou-number-list {
		flex-flow: row nowrap;
	}
	.shutsudou-number-list-line {
	}
}

/*+++ jigyou +++*/
.m-table.jigyou-table {
	width: 100%;
}
.m-table.jigyou-table tbody th {
	width: 8em;
}
.m-table.jigyou-table {
	margin-top: 0.5rem;
}
.m-table.jigyou-table.thw-auto tbody th {
	width: auto;
}
.m-table.hatake td {
	text-align: right;
}
.m-table.hatake tbody td.koukei,
.m-table.hatake tbody td.year,
.m-table.hatake tfoot td.koukei,
.m-table.hatake tfoot td.suuryou,
.m-table.hatake tfoot td.kei02,
.m-table.hatake tfoot td.year,
.m-table.hatake tfoot td.other {
	text-align: center;
}
.m-table.shinchoku th {
	text-align: center
}
.m-table.shinchoku th,
.m-table.shinchoku td {
	padding: 0.125rem;
}
.m-table.shinchoku tbody td {
	text-align: center;
	height: 5.36rem;
}
.m-table.shinchoku td.kosuu,
.m-table.shinchoku td.kutcisuu,
.m-table.shinchoku td.sa,
.m-table.shinchoku td.biki {
	text-align: right;
	vertical-align: bottom;
}
.m-table.shinchoku span {
	display: block;
}
.m-table.shinchoku span.top {
	margin-bottom: 1.75rem;
}
.forSP-shinchoku {
	display: block;
}
.forPC-shinchoku {
	display: none;
}
.m-table.noudou th {
	text-align: center;
}
.m-table.noudou th {
	vertical-align: middle
}
.m-table.noudou td.extend,
.m-table.noudou td.num {
	text-align: right;
}
@media screen and (max-width:619px) {
	.m-table.jigyou-table thead{
		border: 0;
		clip: rect(1px, 1px, 1px, 1px);
		clip-path: inset(50%);
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute !important;
		width: 1px;
		word-wrap: normal !important;
	}
	.m-table.jigyou-table tbody th {
		width: 100%
	}
}
@media screen and (min-width:1152px) {
	.forPC-shinchoku {
		display: block;
	}
	.forSP-shinchoku {
		display: none;
	}
}


/*+++ haisui single +++*/
@media print, screen and (min-width:960px) {
	.news-list-content.haisui-content {
		display: flex;
		align-items: center;
	}
	.news-list-content.haisui-content figure {
		margin: 0 1rem 0 0;
		width: 50%;
	}
	.news-list-content.haisui-content figure img {
		width: 100%;
	}
	.news-list-content.haisui-content table.m-table {
		width: 50%;
	}
}

/*+++ member +++*/
@media screen and (max-width:619px) {
	.m-table.nouki-table thead {
		border: 0;
		clip: rect(1px, 1px, 1px, 1px);
		clip-path: inset(50%);
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute !important;
		width: 1px;
		word-wrap: normal !important;
	}
	.m-table.nouki-table .kikan,
	.m-table.nouki-table .nouki {
		padding: 0;
		display: flex;
	}
	.m-table.nouki-table .kikan::before,
	.m-table.nouki-table .nouki::before {
		background: #F1FDEF;
		text-align: center;
		width: 4rem;
		border-right: 3px double #A1AF9F;
	}
	.m-table.nouki-table .kikan::before,
	.m-table.nouki-table .nouki::before,
	.m-table.nouki-table .nouki-table-td {
		padding: 0.25rem;
	}
	.m-table.nouki-table .kikan::before {
		content: "期間";
	}
	.m-table.nouki-table .nouki::before {
		content: "納期";
	}
	.m-table.nouki-table .nouki-table-td {
		text-align: center;
		flex: 1 1 0%;
	}
}

/*+++ access +++*/
.gmap {
	margin: 0 auto;
	width: 100%;
	max-width: 800px;
	height: 448px;
}
.gmap iframe {
	width: 100%;
	height: 100%;
	border: none;
}

/*+++ katsuura +++*/
.kankoumap-list {
	margin-bottom: -1rem;
	display: flex;
	flex-flow: row wrap;
}
.kankoumap-list-item {
	padding: 0 1rem 1rem;
	margin-bottom: 1rem;
	width: 100%;
	border-radius: 1rem;
}
.kankoumap-list-item dd{
	background: #fff;
	padding: 0.5rem;
	border-radius: 0.75rem;
}
.kankoumap-list-item.mikan dd,
.kankoumap-list-item.hotaru dd,
.kankoumap-list-item.musha dd,
.kankoumap-list-item.hina dd {
	text-align: center;
}

.kankoumap-list-item.big-ayu {
	background: url("../img/katsuura/event/ayu_bg.png");
}
.kankoumap-list-item.mikan {
	background: url("../img/katsuura/event/mikan_bg.png");
}
.kankoumap-list-item.hotaru {
	background: url("../img/katsuura/event/hotaru_bg.png");
}
.kankoumap-list-item.musha {
	background: url("../img/katsuura/event/musha_bg.png");
}
.kankoumap-list-item.hina {
	background: url("../img/katsuura/event/hina_bg.png");
}
@media print, screen and (min-width:768px) {
	.kankoumap-list {
		justify-content: space-between;
	}
	.kankoumap-list-item.mikan,
	.kankoumap-list-item.hotaru,
	.kankoumap-list-item.musha,
	.kankoumap-list-item.hina {
		width: calc(50% - 0.5rem);
	}
	.kankoumap-list-item dd {
		padding: 1rem;
	}
}

/*+++ mikan +++*/
.img-mikan02-row {
	justify-content: center;
}
@media print, screen and (min-width:768px) {
	.img-mikan02-row {
		flex-flow: row nowrap;
		align-items: stretch;
	}
	.img-row2 figure.img-mikan02-row_1 {
		width: calc( (100% + 1rem) * 0.252252 );
		max-width: 224px;
	}
	.img-row2 figure.img-mikan02-row_2 {
		width: calc( (100% + 1rem) * 0.729730);
		max-width: 648px;
	}
}
/*+++ sitemap +++*/
.sitemap-list {
	margin-left: 1rem;
}
.sitemap-list li {
	display: flex;
}
.sitemap-list > li {
	flex-flow: row wrap;
}
.sitemap-list .sub-menu > li {
	flex-flow: row nowrap;
}
.sitemap-list > li::before {
	content: "\eb17";
	font-family: 'boxicons';
	margin-right: 0.5rem;
}
.sitemap-list .sub-menu {
	padding-left: 1.5rem;
	margin-bottom: 1rem;
	width: 100%;
}
.sitemap-list .sub-menu li::before {
	content: "\ead6";
	font-family: 'boxicons';
	margin-right: 0.5rem;
}
.sitemap-list li.gnav-sub-menu-item br,
.sitemap-list li.gnav-sublist-item.download,
.sitemap-list li.gnav-sublist-item a i {
	display: none;
}
@media print, screen and (min-width:768px) {
	.sitemap-list {
		margin-left: 0;
		border-top: 1px solid #A1AF9F;
		border-left: 1px solid #A1AF9F;
	}
	.sitemap-list li {
		display: list-item;
	}
	.sitemap-list > li {
		display: flex;
		align-items: center;
		justify-content: space-between;
		border-right: 1px solid #A1AF9F;
		border-bottom: 1px solid #A1AF9F;
	}
	.sitemap-list .sub-menu {
		padding-left: 0;
		margin-bottom: 0;
		width: calc(100% - 15em);
		border-left: 1px solid #A1AF9F;
	}
	.sitemap-list .sub-menu li + li {
		border-top: 1px solid #A1AF9F;
	}
	.sitemap-list a {
		padding: 0.5rem 1rem 0.25rem;
		display: inline-block;
	}
	.sitemap-list a .inblock {
		text-decoration: underline;
	}
	.sitemap-list > li::before,
	.sitemap-list .sub-menu li::before {
		content: none;
	}
}

/*+++ link +++*/
.link .link-list {
	margin-left: 1rem;
}
.link .link-list a .inblock {
	text-decoration: underline;
}
@media print, screen and (min-width:768px) {
	.link .link-list {
		margin-left: 0;
		margin-bottom: -0.5rem;
		display: flex;
		flex-flow: row wrap;
	}
	.link .link-list li {
		margin-bottom: 0.5rem;
		width: 50%;
	}
}
@media print, screen and (min-width:1280px) {
	.link .link-list li {
		width: calc(100% / 3);
	}
}