@charset "utf-8";

body {
	font-size: 15px;
	font-family: verdana, sans-serif;
	line-height: 1.8;
}

@media screen and (max-width: 767px) {

	body {
		font-size: 16px;
	}

}

.font-large {
	font-size: 17px;
}

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

.right { float: right;}
.left { float: left;}

img.left {
	margin: 0 20px 20px 0;
}

img.right {
	margin: 0 0 20px 20px;
}

img.alignright {
	float: right;
	margin: 0 0 20px 20px;
}

.text-center { text-align: center;}
.text-right { text-align: right;}

p {
	margin-bottom: 1.8em;
}

.radius {
	border-radius: 8px;
}

.cf:after {
	content: '';
	clear: both;
	display: block;
}

.clear {
	clear: both;
}

.section {
	margin-bottom: 60px;
}

.section:last-child {
	margin-bottom: 0;
}

a,
a img {
	transition-property: all;
	transition: 0.3s linear;
}

a:hover img {
	filter:alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
}


/* ----------------------------------------

 	head

---------------------------------------- */

.key h1 {
	margin: 0;
	font-size: 40px;
	line-height: 1.2;
	color: #fff !important;
	text-align: center;
	letter-spacing: 4px;
}

.primary h1 {
	margin: 1em 0 2em;
	font-size: 32px;
	line-height: 1.4;
	text-align: center;
}

.entry-head {
	margin-bottom: 3em;
	text-align: center;
}

.entry-head__data {
	margin: 0 0 1em;
}

.entry-head h1 {
	margin-top: 0;
	margin-bottom: 16px;
}

.entry-head__cate > span {
	padding: 4px;
	border-radius: 4px;
	line-height: 1;
	font-size: 13px;
}

h2 {
	margin: 0 0 32px;
	font-size: 30px;
	line-height: 1.2;
	text-align: center;
}

.icon-park:before {
	content: '';
	overflow: hidden;
	display: block;
	width: 74px;
	height: 44px;
	margin: 0 auto 12px;
	background: url("../images/common/icon-park.png") no-repeat center center;
	background-size: contain;
}

.icon-microphone:before {
	content: '';
	overflow: hidden;
	display: block;
	width: 44px;
	height: 44px;
	margin: 0 auto 12px;
	background: url("../images/common/icon-microphone.png") no-repeat center center;
	background-size: contain;
}

.icon-map:before {
	content: '';
	overflow: hidden;
	display: block;
	width: 44px;
	height: 44px;
	margin: 0 auto 12px;
	background: url("../images/common/icon-pin-large.png") no-repeat center center;
	background-size: contain;
}

.icon-kouen:before {
	content: '';
	overflow: hidden;
	display: block;
	width: 44px;
	height: 44px;
	margin: 0 auto 12px;
	background: url("../images/common/icon-kouen.png") no-repeat center center;
	background-size: contain;
}

h3 {
	margin: 1em 0;
	padding-left: 16px;
	border-left: 5px solid #14a83b;
	font-size: 20px;
}

h4 {
	margin: 1em 0;
	font-size: 16px;
}

@media screen and (max-width: 767px) {

	.primary h1 {
		font-size: 24px;
	}

	h2 {
		margin: 0 0 24px;
		font-size: 24px;
	}

}


/* ----------------------------------------

 	list

---------------------------------------- */

ul {
	margin-bottom: 1.8em;
	margin-left: 1.8em;
}

ul li {
}

ol {
	margin-bottom: 1.8em;
	margin-left: 1.8em;
}

ol li {
}

dl {
	margin-bottom: 1.8em;
}

.faq-list dt {
	position: relative;
	padding: 4px 0 16px 46px;
}

.faq-list dt:before {
	content: 'Q';
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 36px;
	height: 36px;
	text-align: center;
	border-radius: 18px;
	line-height: 36px;
}

.faq-list dd {
	position: relative;
	margin-bottom: 1.8em;
	padding: 4px 0 16px 46px;
}

.faq-list dd:before {
	content: 'A';
	position: absolute;
	left: 0;
	top: 0;
	display: block;
	width: 36px;
	height: 36px;
	text-align: center;
	border-radius: 18px;
	line-height: 36px;
}

.privacy-list dt {
	font-weight: bold;
}

.privacy-list dd {
	margin-bottom: 1.8em;
}

.inline-list {
	margin-left: 0;
	list-style: none;
}

.inline-list li {
	display: inline-block;
	padding: 0 16px 0 0;
}

.restaurant-list dt {
	font-weight: bold;
}

.woods-list dl {
	overflow: hidden;
}

.woods-list dt {
	clear: both;
	float: left;
}

.woods-list dd {
	float: left;
}

.woods-list dd + dd:before {
	content: '・';
}

@media screen and (max-width: 767px) {

	.woods-list dt {
		float: none;
	}

}


/* ----------------------------------------

	table

---------------------------------------- */

table {
	width: 100%;
	margin-bottom: 1.8em;
}

th,
td {
	box-sizing: border-box;
}

th > :last-child,
td > :last-child {
	margin-bottom: 0;
}

.table01 {
	border-top: 1px solid #eee;
	border-left: 1px solid #eee;
}

.table01 th,
.table01 td {
	padding: 16px;
	border-right: 1px solid #eee;
	border-bottom: 1px solid #eee;
	text-align: left;
	vertical-align: top;
}

.table01 td {
}

.ryokuka-table th {
	width: 30%;
}

.ryokuka-table td {
	width: 70%;
}

[href="#primary"] {
	position: absolute;
	top: 0;
	right: 100%;
}

[href="#primary"]:focus {
	right: auto;
}


/* ----------------------------------------

	btn

---------------------------------------- */

.btn {
	display: inline-block;
	box-sizing: border-box;
	padding: 13px;
	background-color: #14a83b;
	border: 1px solid #14a83b;
	border-radius: 8px;
	color: #fff;
	text-decoration: none;
	line-height: 1;
	transition: all .3s;
}

.btn:hover {
	background-color: #57be6d;
}

.btn--contact {
	padding-left: 20px;
	padding-right: 20px;
}

.btn--contact:before {
	content: '';
	position: relative;
	top: 2px;
	display: inline-block;
	width: 20px;
	height: 16px;
	margin: 0 10px 0 0;
	background: url("../images/common/icon-mail.png") no-repeat center center;
	background-size: contain;
}

.page-list-arrow {
	margin-top: 40px;
}

.page-list-arrow a {
	text-decoration: none;
	color: #333;
}

.page-list-arrow a:hover {
	text-decoration: none;
	color: #333;
}

.page-list-arrow a:before {
	position: relative;
	top: 4px;
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0 10px 0 0;
	background: url(../images/common/arrow-next-green.png) no-repeat center center;
	background-size: contain;
}


/* ----------------------------------------

	head-parts

---------------------------------------- */

.head-parts {
	overflow: hidden;
}

.head-parts__title {
	float: left;
}

.head-parts__btn {
	float: right;
	margin: 0;
}


/* ----------------------------------------

	key

---------------------------------------- */

.key {
	margin-top: 1px;
	padding: 0;
}

.key-park {
	padding: 0 0 220px;
	background-position: center top;
	background-repeat: no-repeat;
}


/* ----------------------------------------

	breadcrumb

---------------------------------------- */

.breadcrumb {
	padding: 28px 0 60px;
	font-size: 13px;
}

.breadcrumb .inner a:after {
	content: '';
	overflow: hidden;
	display: inline-block;
	width: 6px;
	height: 10px;
	margin: 0 8px;
	background: url("../images/common/arrow_next-02.png") no-repeat 0 0;
	background-size: contain;
}

.breadcrumb a {
	text-decoration: none;
}

.key-park .breadcrumb,
.key-park .breadcrumb a {
	color: #fff;
}


/* ----------------------------------------

	width

---------------------------------------- */

.w8 { width: 8%;}
.w10 { width: 10%;}
.w12 { width: 12%;}
.w15 { width: 15%;}
.w20 { width: 20%;}
.w30 { width: 30%;}


/* ----------------------------------------

	maegin

---------------------------------------- */

.margin-b10 { margin-bottom: 10px;}
.margin-t80 { margin-top: 80px;}


/* ----------------------------------------

	inner

---------------------------------------- */

.inner {
	box-sizing: border-box;
	width: 100%;
	max-width: 1360px;
	margin: 0 auto;
	padding: 0 40px;
}

.main-contents {
	margin-top: 30px;
}

@media screen and (max-width: 767px) {

	.inner {
		padding: 0 20px;
	}

}


/* ----------------------------------------

	primary

---------------------------------------- */

.primary {
	margin-top: -68px;
	margin-bottom: 30px;
	padding: 50px;
	border-radius: 8px;
}

.single-park .primary {
	margin-top: -148px;
}

.home .primary {
	box-sizing: border-box;
	float: left;
	width: 75.78125%;
	margin: 0;
	padding: 0;
	background-color: transparent;
	border-radius: 0;
}

@media screen and (max-width: 767px) {

	.primary {
		padding: 32px;
	}

	.home .primary {
		float: none;
		width: 100%;
	}

}


.page-nav {
	margin: 0 0 60px;
}

.page-nav ul {
	overflow: hidden;
	display: table;
	table-layout: fixed;
	width: 100%;
	margin: 0;
	list-style: none;
	border-radius: 8px;
	font-weight: bold;
}

.page-nav li {
	box-sizing: border-box;
	display: table-cell;
	border-right: 1px solid #fff;
}

.page-nav li:last-child {
	border-right: none;
}

.page-nav a {
	display: block;
	padding: 20px 4px;
	text-align: center;
	text-decoration: none;
}

@media screen and (max-width: 1024px) {

	.page-nav {
		margin: 0 0 30px;
	}

	.page-nav ul {
		display: block;
		border-radius: 0;
		margin: 0 -2px;
	}

	.page-nav li {
		box-sizing: border-box;
		display: block;
		float: left;
		width: 33.333333333%;
		padding: 2px;
		border-right: none;
	}

	.page-nav li:nth-child(3n+1) {
		clear: both;
	}

	.page-nav a {
		border-radius: 8px;
	}

}

@media screen and (max-width: 767px) {

	.page-nav li {
		width: 50%;
	}

	.page-nav li:nth-child(3n+1) {
		clear: none;
	}

	.page-nav li:nth-child(odd) {
		clear: both;
	}

}


/* ----------------------------------------

	secondary

---------------------------------------- */

.home .secondary {
	float: right;
	width: 21.09375%;
}

@media screen and (max-width: 767px) {

	.home .secondary {
		float: none;
		width: 100%;
	}

}

.banner-list {
	margin: 0 0 40px;
}

.banner-list ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.banner-list li {
	margin-bottom: 10px;
	padding: 0;
	border-radius: 6px;
}

.banner-list a {
	display: block;
	text-decoration: none;
}

@media screen and (max-width: 767px) {

	.banner-list {
		margin-bottom: 20px;
	}

	.banner-list ul {
		overflow: hidden;
		margin: 0 -10px;
		padding: 0;
		list-style: none;
	}

	.banner-list li {
		box-sizing: border-box;
		float: left;
		width: 50%;
		margin-bottom: 20px;
		padding: 0 10px;
	}

	.banner-list li:nth-child(odd) {
		clear: both;
	}

}


/* ----------------------------------------

	header-up

---------------------------------------- */

.header-up__wrap {
	display: flex;
	justify-content: flex-end;
}

.site-font {
	padding: 8px 0 0;
}

.site-font dl {
	margin: 0;
}

.site-font dt {
	display: inline-block;
}

.site-font dd {
	display: inline-block;
}

.site-font a {
	display: block;
	width: 26px;
	height: 26px;
	border-radius: 4px;
	text-align: center;
	text-decoration: none;
	line-height: 26px;
	font-weight: bold;
}

.site-languages {
	margin-left: 24px;
	padding: 7px 0 0;
}

.site-languages select {
	margin: 0;
	padding: 0 0 0 26px;
	background: transparent url("../images/common/icon-languages.png") no-repeat left center;
	border: none;
	color: #fff;
	font-size: 100%;
	line-height: 26px;
	outline: none;
	-webkit-appearance: button;
    -moz-appearance: button;
    appearance: button;
}

.site-languages select option {
	color: #333;
}

/* Googleカスタム検索 */
.searchBox {
	position: relative !important;
	margin: 0 0 0 20px !important;
	padding: 0 !important;
	background-color: #ece7db;
}

.searchBox .gsc-input,
.searchBox .gsc-input-box,
.searchBox .gsc-control-cse,
.searchBox .gsc-control-wrapper-cse {
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	background-color: #ece7db !important;
	border: none !important;
}

.searchBox table.gstl_50,
.searchBox table.gstl_50 tbody
.searchBox table.gstl_50 tr {
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	border: none !important;
}

.searchBox .gsc-search-box td.gsib_a {
	width: 250px !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	vertical-align: top !important;
	border: none !important;
	outline: none !important;
}

.searchBox .gsc-search-box td.gsib_a input {
	display: inline !important;
	box-sizing: border-box !important;
	width: 100% !important;
	padding: 0 10px !important;
	background-color: transparent !important;
	border: none !important;
	font-size: 100% !important;
	outline: none !important;
	vertical-align: middle !important;
	line-height: 40px !important;
	background-position: 10px !important;
}

.searchBox button {
	position: absolute !important;
	top:0 !important;
	right: 0 !important;
	z-index: 1 !important;
	overflow: hidden !important;
	width: 40px !important;
	height: 40px !important;
	margin: 0 !important;
	padding: 0 !important;
	background: transparent url("../images/common/icon-search.png") no-repeat center center !important;
	border: none !important;
	text-indent: -9999px !important;
	outline: none !important;
}



/*
.searchBox {
	position: relative;
	margin: 0 0 0 24px;
	background-color: #ece7db;
}

.searchBox input {
	box-sizing: border-box;
	width: 100%;
	padding: 0 16px;
	background-color: transparent;
	border: none;
	font-size: 100%;
	line-height: 40px;
	outline: none;
}

.searchBox button {
	position: absolute;
	top:0;
	right: 0;
	z-index: 1;
	overflow: hidden;
	width: 40px;
	height: 40px;
	background: transparent url("../images/common/icon-search.png") no-repeat center center;
	border: none;
	text-indent: -9999px;
	outline: none;
}
*/


@media screen and (max-width: 767px) {

	.header-up .inner {
		padding: 0 !important;
	}

	.header-up__wrap {
		overflow: hidden;
		display: block;
	}

	.site-font {
		display: none;
	}

	.site-languages {
		float: left;
		width: calc(40% - 20px);
		margin: 0;
		padding-left: 20px;
	}

	.searchBox {
		float: right;
		width: 60% !important;
		margin: 0 !important;
	}

	.searchBox .gsc-search-box td.gsib_a {
		width: 100% !important;
	}

}


/* ----------------------------------------

	header

---------------------------------------- */

.header {
	background: #fff url("../images/common/header_bg.png") no-repeat center bottom;
}

.header .inner {
	overflow: hidden;
	display: flex;
	align-items: flex-end;
}

.header__logo {
	padding-right: 36px;
}

.header__logo img {
	vertical-align: top;
}

.header__info ul {
	margin: 0 0 20px;
	padding: 0;
	list-style: none;
}

.header__info li {
	display: inline-block;
}

.header__info li:before {
	content: '|';
	padding: 0 16px;
	color: #333;
}

.header__info li:last-child:after {
	content: '|';
	padding: 0 16px;
	color: #333;
}

.header__info a {
	text-decoration: none;
	color: #333;
	transition: all .3s;
}

.header__info a:hover {
	color: #707070;
}

.header__nav-sp {
	display: none;
}

@media screen and (max-width: 767px) {

	.header .inner {
		align-items: center;
		justify-content: space-between;
	}

	.header {
		background-image: none;
	}

	.header__logo {
		padding-right: 0;
	}

	.header__logo img {
		width: 200px;
	}

	.header__info {
		display: none;
	}

	.header__nav-sp {
		float: right;
		display: block;
		width: 32px;
		height: 32px;
		background: url("../images/common/icon-menu.png") no-repeat center center;
		background-size: contain;
	}

	.home .header__nav-sp {
		display: none;
	}

}


/* ----------------------------------------

	main-nav

---------------------------------------- */

.main-nav {
	margin: 6px 0 0;
	background-color: #fff;
}

.main-nav__main {
	position: relative;
	margin: 0;
	padding: 0;
	list-style: none;
}

.main-nav__main > li {
	box-sizing: border-box;
	float: left;
	width: 25%;
	border-left: 1px solid #eae9e5;
	padding: 0;
	text-align: center;
}

.main-nav__main > li:last-child {
	border-right: 1px solid #eae9e5;
}

.main-nav__main > li > a {
	position: relative;
	display: block;
}

.main-nav__main > li > a .main-nav-down {
	display: none;
	box-sizing: border-box;
	position: absolute;
	left: 50%;
	top: 100%;
	z-index: 1001;
	width: 16px;
	height: 16px;
	margin: 13px 0 0 -10px;
	background-color: #fff;
	border-top: solid 3px #14a83b;
	border-right: solid 3px #14a83b;
	-ms-transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.nav-overlay-wrap {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	z-index: 1000;
	padding-top: 20px;
}

.nav-overlay {
	margin: 0;
	padding: 45px 30px 20px;
	background-color: #fff;
	border: 3px solid #14a83b;
	border-radius: 8px;
}

@media screen and (max-width: 767px) {

	.main-nav .inner {
		padding-left: 0;
		padding-right: 0;
	}

	.main-nav__main {
		display: none;
	}

	.home .main-nav__main {
		display: block;
	}

	.main-nav__main > li {
		float: none;
		width: 100%;
		border-left: none;
		border-bottom: 1px solid #eae9e5;
	}

	.main-nav__main > li:last-child {
		border-right: none;
	}

	.dispaly-pc .main-nav__main > li > a .main-nav-down {
		display: none !important;
	}

	.nav-overlay-wrap {
		position: static;
	}

	.nav-overlay {
		padding: 20px;
		border: 0;
		border-radius: 0;
	}

}


/* ----------------------------------------

	main-nav - メニュー

---------------------------------------- */

.nav-banner ul {
	overflow: hidden;
	margin: 0 -20px;
	padding: 0;
	list-style: none;
}

.nav-banner li {
	box-sizing: border-box;
	float: left;
	width: 20%;
	margin: 0 0 20px;
	padding: 0 10px;
}

.nav-banner li:nth-child(5n+1) {
	clear: both;
}

@media screen and (max-width: 767px) {

	.nav-banner ul {
		margin: 0 -10px;
	}

	.nav-banner li {
		width: 50%;
	}

	.nav-banner li:nth-child(5n+1) {
		clear: none;
	}

	.nav-banner li:nth-child(odd) {
		clear: both;
	}

}


/* ----------------------------------------

	main-nav - 大規模公園から探す

---------------------------------------- */

.nav-overlay__head {
	margin: 0 0 22px;
}

.nav-overlay__head ul {
	overflow: hidden;
	margin: 0 -10px;
	padding: 0;
	list-style: none;
}

.nav-overlay__head li {
	box-sizing: border-box;
	float: left;
	width: 20%;
	margin: 0 0 20px;
	padding: 0 10px;
	text-align: left;
}

.nav-overlay__head li:nth-child(5n+1) {
	clear: both;
}

.nav-overlay__head a {
	overflow: hidden;
	display: table;
	width: 100%;
	background-color: #f9edb9;
	text-decoration: none;
	color: #333;
	border-radius: 8px;
	transition: all .3s;
}

.nav-overlay__head a:hover {
	background-color: #f1c214;
	color: #fff;
}

.nav-overlay__thumbnail {
	display: table-cell;
	width: 45.454545%;
	vertical-align: middle;
}

.nav-overlay__text {
	box-sizing: border-box;
	display: table-cell;
	width: 54.545455%;
	padding: 0 20px;
	vertical-align: middle;
	text-align: left;
	line-height: 1.6;
}

.nav-overlay__small ul {
	overflow: hidden;
	margin: 0 -10px;
	padding: 0;
	list-style: none;
}

.nav-overlay__small li {
	box-sizing: border-box;
	float: left;
	width: 20%;
	margin: 0 0 20px;
	padding: 0 10px;
	text-align: left;
}

.nav-overlay__small li:nth-child(5n+1) {
	clear: both;
}

.nav-overlay__small a {
	text-decoration: none;
	color: #333;
	transition: all .3s;
}

.nav-overlay__small a:hover {
	color: #707070;
}

.nav-overlay__small a:before {
	position: relative;
	top: 4px;
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0 10px 0 0;
	background: url(../images/common/arrow-next-green.png) no-repeat center center;
	background-size: contain;
}

@media screen and (max-width: 767px) {

	.nav-overlay__head li {
		width: 100%;
	}

	.nav-overlay__head li:nth-child(5n+1) {
		clear: none;
	}

	.nav-overlay__thumbnail {
		width: 30%;
	}

	.nav-overlay__text {
		width: 70%;
	}

	.nav-overlay__text br {
		display: none;
	}

	.nav-overlay__small li {
		width: 50%;
	}

	.nav-overlay__small li:nth-child(5n+1) {
		clear: none;
	}

	.nav-overlay__small li:nth-child(odd) {
		clear: both;
	}

}


/* ----------------------------------------

	footer-opt

---------------------------------------- */

.footer-opt {
	padding: 28px 0 40px;
	background-color: #e5f4e9;
}

.footer-opt .inner {
	overflow: hidden;
}

.footer-opt__row {
	margin: 0 -20px;
}

.footer-opt__col {
	box-sizing: border-box;
	float: left;
	width: 50%;
	padding: 0 20px;
}

.footer-opt h3 {
	margin: 0 0 16px;
	padding: 0;
	border: none;
	color: #14a83b;
	font-size: 24px;
	line-height: 1.2;
}

.footer-opt .icon-link:before,
.footer-opt .icon-company:before {
	overflow: hidden;
	content: '';
	position: relative;
	top: 7px;
	display: inline-block;
	width: 32px;
	height: 32px;
	margin-right: 10px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
}

.footer-opt .icon-link:before {
	background-image: url("../images/common/icon-link.png");
}

.footer-opt .icon-company:before {
	background-image: url("../images/common/icon-company.png");
}

.footer-opt__box {
	overflow: hidden;
}

.footer-opt__company {
	background-color: #fff;
}

@media screen and (max-width: 767px) {

	.footer-opt {
		padding: 20px 0;
	}

	.footer-opt__row {
		margin: 0;
	}

	.footer-opt__col {
		float: none;
		width: 100%;
		padding: 0;
	}

	.footer-opt__col + .footer-opt__col {
		margin-top: 20px;
	}

}

.link-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.link-list li {
	margin-bottom: 1px;
	padding: 0;
}

.link-list li:last-child {
	margin-bottom: 0;
}

.link-list a {
	display: block;
	padding: 16px 10px;
	text-decoration: none;
}

.link-list a:before {
	position: relative;
	top: 4px;
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0 10px 0 0;
	background: url("../images/common/arrow-next-green.png") no-repeat center center;
	background-size: contain;
}

.opt-logo {
	margin-bottom: 16px;
}

.footer-opt__company {
	padding: 24px;
}

.opt-company {
	overflow: hidden;
}

.opt-company__text {
	box-sizing: border-box;
	float: left;
	width: 71.678322%;
	padding-right: 20px;
}

.opt-company__text > :last-child {
	margin-bottom: 0;
}

.opt-company__btn {
	float: left;
	width: 28.321678%;
}

.opt-company__btn > :last-child {
	margin-bottom: 0;
}

@media screen and (max-width: 767px) {

	.opt-company__text {
		float: none;
		width: 100%;
		margin-bottom: 16px;
		padding-right: 0;
	}

	.opt-company__btn {
		float: none;
		width: 100%;
	}

}


/* ----------------------------------------

	footer-banner

---------------------------------------- */

.footer-banner {
	padding: 40px 0 26px;
}

.footer-banner ul {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 0;
	text-align: center;
}

.footer-banner li {
	display: inline-block;
	padding: 0 14px 14px;
	font-size: 0;
}

.footer-banner img {
	vertical-align: top;
}


/* ----------------------------------------

	footer

---------------------------------------- */

.footer {
	padding: 36px 0 24px;
	text-align: center;
}

.footer p {
	margin-bottom: 12px;
}

.copyright {
	margin: 0;
	font-size: 11px;
}

.btn-pageTop {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 9999;
	overflow: hidden;
	margin: 0;
	border-radius: 8px;
}

.btn-pageTop > span {
	display: table;
	width: 80px;
}

.btn-pageTop a {
	display: table-cell;
	z-index: 999;
	height: 80px;
	font-weight: bold;
	text-decoration: none;
	text-align: center;
	vertical-align: middle;
	font-size: 13px;
	line-height: 1.4;
	transition: all .3s;
}

.btn-pageTop a:hover {
	text-decoration: none;
	opacity: 0.7;
}


/* ----------------------------------------

	ページャー

---------------------------------------- */

.posts-nav {
	overflow: hidden;
	margin-top: 40px;
	padding-top: 20px;
	border-top: 1px solid #eae9e5;
}

.posts-nav__prev {
	float: left;
	width: 50%;
}

.posts-nav__next {
	float: right;
	width: 50%;
	text-align: right;
}

.posts-nav a {
	color: #14a83b;
	font-weight: bold;
	text-decoration: none;
}

.posts-nav__prev a:before {
	content: '';
	overflow: hidden;
	display: inline-block;
	width: 6px;
	height: 10px;
	margin: 0 8px 0 0;
	background: url(../images/common/arrow_prev-02.png) no-repeat 0 0;
	background-size: contain;
}

.posts-nav__next a:after {
	content: '';
	overflow: hidden;
	display: inline-block;
	width: 6px;
	height: 10px;
	margin: 0  0 0 8px;
	background: url(../images/common/arrow_next-02.png) no-repeat 0 0;
	background-size: contain;
}


/* ----------------------------------------

	top

---------------------------------------- */

.top-key {
	padding: 20px 0;
	text-align: center;
}

.top-galler .inner {
	position: relative;
}

.top-galler__head {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	z-index: 6;
	display: table;
	background: url("../images/top/top_gallery_bg01.png") repeat center center;
}

.top-galler__head h2 {
	display: table-cell;
	height: 380px;
	vertical-align: middle;
	background: url("../images/top/top_gallery_bg02.png") no-repeat center center;
	background-size: contain;
}

@media screen and (max-width: 767px) {

	.top-key {
		display: none;
	}

	.top-key .inner {
		padding: 0;
	}

	.top-key img {
		border-radius: 0;
	}

	.top-galler .inner {
		position: static;
		padding: 0;
	}

	.top-galler__head {
		position: static;
		display: block;
		width: 100%;
	}

	.top-galler__head h2 {
		display: block;
		height: auto;
		margin: 0;
		padding: 8px 0;
		text-align: center;
	}

	.top-galler__head h2 img {
		width: 210px;
	}

}

.slick-list {
	z-index: 5;
}

.top-galler ul {
	margin: 0;
}

.top-galler__up img {
	max-width: none;
}

.top-sns {
	height: 1132px;
	background: #fff url("../images/top/top_sns_bg.png") repeat center top;
}

.top-sns__head {
	display: table;
	max-width: 370px;
	width: 100%;
	margin: -24px 0 0 -58px;
	background: url("../images/top/h2_top_sns_bg.png") no-repeat center center;
	background-size: contain;
}

.top-sns__head h2 {
	display: table-cell;
	height: 370px;
	margin: 0;
	padding: 0;
	background:  transparent none;
	vertical-align: middle;
}

@media screen and (max-width: 767px) {

	.top-sns__head {
		max-width: 240px;
		margin: -24px 0 -48px 0;
	}

	.top-sns__head h2 {
		height: 240px;
	}

	.top-sns__head h2 img {
		width: 200px;
	}

}

.top-sns .inner {
	position: relative;
	z-index: 3;
}

.top-snsbox {
	position: absolute;
}

.top-snsbox__box {
	position: relative;
	z-index: 2;
}

.top-snsbox__logo {
	margin: 0 0 18px;
}

.top-snsbox__btn ul {
	overflow: hidden;
	margin: 0;
	padding: 0;
	list-style: none;
}

.top-snsbox__btn li {
	float: left;
	margin: 0 10px 10px 0;
	padding: 0;
	vertical-align: top;
	font-size: 13px;
}

.top-snsbox__btn li:last-child {
	margin-right: 0;
}

.i-blog a {
	display: block;
	padding: 0 20px;
	border-radius: 4px;
	line-height: 34px;
	text-decoration: none;
	text-align: center;
	transition: all .3s;
}

.i-blog a:before {
	content: '';
	position: relative;
	top: 6px;
	display: inline-block;
	width: 22px;
	height: 22px;
	margin: 0 6px 0 0;
	background: url("../images/common/icon-pen.png") no-repeat center center;
	background-size: contain;
}

.top-snsbox__photo {
	position: absolute;
	z-index: 1;
}

.top-snsbox01 {
	top: 336px;
	left: 584px;
}

.top-snsbox01 .top-snsbox__photo {
	top: -138px;
	left: -248px;
}

.top-snsbox02 {
	top: 212px;
	left: 910px;
}

.top-snsbox02 .top-snsbox__photo {
	top: -146px;
	left: -126px;
}

.top-snsbox03 {
	top: 590px;
	left: 180px;
}

.top-snsbox03 .top-snsbox__photo {
	top: -58px;
	right: -228px;
}

.top-snsbox04 {
	top: 638px;
	left: 944px;
}

.top-snsbox04 .top-snsbox__photo {
	top: -170px;
	left: -100px;
}

.top-snsbox05 {
	top: 884px;
	left: 380px;
}

.top-snsbox05 .top-snsbox__photo {
	top: -58px;
	left: -294px;
}

.top-snsbox06 {
	top: 980px;
	left: 740px;
}

.top-snsbox06 .top-snsbox__photo {
	top: -184px;
	right: -260px;
}

@media screen and (max-width: 1024px) {

	.top-sns {
		height: auto;
	}

	.top-sns .inner {
		overflow: hidden;
	}

	.top-snsbox {
		overflow: hidden;
		position: static;
		float: left;
		width: 50%;
		margin-bottom: 20px;
	}

	.top-snsbox:nth-child(odd) {
		clear: both;
	}

	.top-snsbox:last-child {
		margin-bottom: 0;
	}

	.top-snsbox__box {
		box-sizing: border-box;
		position: static;
		float: right;
		width: 80%;
		padding-left: 20px;
	}

	.top-snsbox__photo {
		position: static;
		float: left;
		width: 20%;
	}

}

@media screen and (max-width: 767px) {

	.top-snsbox {
		float: none;
		width: 100%;
	}

}


/* ----------------------------------------

	公園

---------------------------------------- */

.google-map {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 56.25%;
	overflow: hidden;
}

.google-map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


/* ----------------------------------------

	トピックス

---------------------------------------- */

.topics-list-wrap {
	margin-top: 80px;
}

.topics-list__header {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin: 0 0 16px;
}

.topics-list__header__inner {
	display: flex;
	align-items: flex-end;
}

.topics-list__header h2 {
	margin: 0 12px 0 0;
	padding: 0;
	color: #14a83b;
	font-size: 34px;
	line-height: 1;
	text-align: left;
}

.topics-list__header .ja {
	margin: 0;
	line-height: 1;
	font-size: 16px;
	color: #202020;
}

.topics-list__btn {
	margin: 0;
	line-height: 1;
}

.topics-list__btn a {
	color: #999;
	text-decoration: none;
	font-size: 13px;
	transition: all .3s;
}

.topics-list__btn a:hover {
	color: #707070;
}

.topics-list__btn a:before {
	content: '';
	position: relative;
	top: 2px;
	overflow: hidden;
	display: inline-block;
	width: 14px;
	height: 14px;
	margin: 0 6px 0 0;
	background: url("../images/common/arrow-next-gray.png") no-repeat center center;
	background-size: contain;
}

.topics-list__body ol {
	margin: 0 0 40px;
	padding: 0;
	list-style: none;
}

.topics-list__body ol > li {
	margin: 0 0 2px;
	padding: 0;
}

.topics-list__body a {
	overflow: hidden;
	display: block;
	padding: 30px;
	border-radius: 8px;
	text-decoration: none;
}

.topics-list__photo {
	float: left;
	width: 15.384615%;
}

.topics-list__photo img {
	max-width: 140px;
	border-radius: 8px;
}

.topics-list__text {
	box-sizing: border-box;
	float: left;
	width: 84.615385%;
	padding-left: 40px;
}

.topics-list__head {
	display: flex;
	margin-bottom: 14px;
	line-height: 1;
}

.topics-list__head p {
	margin: 0 16px 0 0;
}

.topics-list__head .topics-list__cate {
	margin-top: -3px;
	padding: 4px;
	border-radius: 4px;
	line-height: 1;
	font-size: 13px;
}

.topics-list__title {
	margin: 16px 0;
	padding: 0;
	border: none;
	font-size: 16px;
	line-height: 1.4;
}

.topics-list__title:before {
	position: relative;
	top: 4px;
	content: '';
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0 10px 0 0;
	background: url("../images/common/arrow-next-green.png") no-repeat center center;
	background-size: contain;
}

.topics-list__desc p {
	margin: 0;
	font-size: 14px;
}

@media screen and (max-width: 767px) {

	.topics-list__body a {
		padding-left: 0;
		padding-right: 0;
	}

	.home .topics-list__body a {
		padding-left: 30px;
		padding-right: 30px;
	}

	.topics-list__photo {
		width: 20%;
		margin: 0 16px 16px 0;
	}

	.topics-list__photo img {
		max-width: 100%;
	}

	.topics-list__head {
		display: block;
	}

	.topics-list__text {
		float: none;
		width: 100%;
		padding: 0;
	}

	.topics-list__title {
		clear: both;
		margin-bottom: 0;
	}

	.topics-list__head .topics-list__data {
		margin-bottom: 16px;
	}

	.topics-list__head .topics-list__cate {
		display: inline-block;
	}

	.topics-list__desc {
		display: none;
	}

}


/* ----------------------------------------

	公園　詳細

---------------------------------------- */

.park-photo {
	margin-bottom: 16px;
}

.park-photo ul {
	overflow: hidden;
	margin: 0 -10px;
	padding: 0;
	list-style: none;
}

.park-photo li {
	box-sizing: border-box;
	float: left;
	width: 25%;
	margin: 0 0 32px;
	padding: 0 10px;
	text-align: center;
}

.park-photo li:nth-child(4n+1) {
	clear: both;
}

.park-photo a {
	display: block;
	text-decoration: none;
}

.park-photo p {
	margin: 0;
	line-height: 1.4;
}

.park-photo p + p {
	margin-top: 16px;
}

@media screen and (max-width: 767px) {

	.park-photo li {
		width: 50%;
		margin-bottom: 16px;
	}

	.park-photo li:nth-child(4n+1) {
		clear: none;
	}

	.park-photo li:nth-child(odd) {
		clear: both;
	}

}


/* ----------------------------------------

	公園　アクセス・駐車場

---------------------------------------- */

.access-box {
	overflow: hidden;
	margin-bottom: 80px;
}

.access-box__photo {
	float: left;
	width: 38.983051%;
}

.access-box__text {
	box-sizing: border-box;
	float: left;
	width: 61.016949%;
	padding-left: 40px;
}

.access-box__text dt {
	font-weight: bold;
}

.access-box__text dd {
	margin-bottom: 1em;
}

.access-box__text dd:last-child {
	margin-bottom: 0;
}


/* ----------------------------------------

	トピックス一覧

---------------------------------------- */

.topics-list-4col ul {
	overflow: hidden;
	margin: 0 -10px;
	padding: 0;
	list-style: none;
}

.topics-list-4col li {
	box-sizing: border-box;
	float: left;
	width: 25%;
	margin: 0 0 32px;
	padding: 0 10px;
}

.topics-list-4col li:nth-child(4n+1) {
	clear: both;
}

.topics-list-4col li img {
	border-radius: 8px;
}

.topics-list-4col a {
	display: block;
	text-decoration: none;
}

.topics-list-4col p {
	margin: 0;
}

.topics-list-4col dt {
	margin: 18px 0 8px;
	line-height: 1.4;
}

.topics-list-4col dd {
	line-height: 1.4;
}

@media screen and (max-width: 767px) {

	.topics-list-4col li {
		width: 50%;
	}

	.topics-list-4col li:nth-child(4n+1) {
		clear: none;
	}

	.topics-list-4col li:nth-child(odd) {
		clear: both;
	}

}

.topics-list__thumbnail {
	overflow: hidden;
	text-align: center;
}

.topics-list__thumbnail--yes img {
	display: block;
	max-width: none;
	width: 100%;
	height: 180px;
	object-fit: cover;
}

.topics-list__thumbnail--no {
	height: 180px;
}

.topics-list__thumbnail--no img {
	margin-top: 20px;
}

@media screen and (max-width: 767px) {

	.topics-list__thumbnail--yes img {
		height: 140px;
	}

	.topics-list__thumbnail--no {
		height: auto;
	}

	.topics-list__thumbnail--no img {
		margin-top: 0;
		height: 140px;
		object-fit: cover;
	}

}


/* ----------------------------------------

 	市民農園のご案内

---------------------------------------- */

.gardening-row {
	overflow: hidden;
	margin: 40px -10px
}

.gardening-row:last-child {
	margin-bottom: 0;
}

.gardening-row__col {
	box-sizing: border-box;
	float: left;
	width: 50%;
	padding: 0 10px;
}

.gardening-row__box {
	padding: 20px;
	border: 1px solid #eae9e5;
	border-radius: 8px;
}

.gardening-row__box h4 {
	margin: 0 0 16px;
	text-align: center;
}

.gardening-row__photo {
	margin-bottom: 0;
}

.gardening-row__box tr {
	border-bottom: 1px solid #eae9e5;
}

.gardening-row__box th {
	width: 30%;
	padding: 16px 0;
	text-align: left;
}

.gardening-row__box td {
	width: 70%;
	padding: 16px 0;
}

@media screen and (max-width: 767px) {

	.gardening-row {
		margin: 0
	}

	.gardening-row__col {
		float: none;
		width: 100%;
		margin-bottom: 20px;
		padding: 0;
	}

	.gardening-row__photo {
		margin-left: -20px;
		margin-right: -20px;
	}

}


/* ----------------------------------------

 	神戸の身近な公園情報 - 一覧

---------------------------------------- */

.keikaku-nav {
	margin: 20px 0 40px;
}

.keikaku-nav__col {
	box-sizing: border-box;
	float: left;
	width: 50%;
	padding: 0 20px;
}

.keikaku-nav dl {
	position: relative
}

.keikaku-nav dt {;
	box-sizing: border-box;
	border: 2px solid #14a83b;
	border-radius: 6px;
	padding: 16px;
    font-size: 14px;
	text-align: center;
	font-weight: bold;
	cursor: pointer;
}

.keikaku-nav dt.is-active {
	border-radius: 6px 6px 0 0;
}

.keikaku-nav dd {
	display: none;
	overflow: hidden;
	position: absolute;
	left: 0;
	right: 0;
	z-index: 1;
	top: 100%;
	padding: 16px;
	background-color: #fff;
	border: 2px solid #14a83b;
	border-top: none;
	border-radius: 0 0 6px 6px;
}

.keikaku-head {
	margin: 0 0 40px;
}

.keikaku-nav ul {
	overflow: hidden;
	margin: 0;
	padding: 0;
	list-style: none;
}

.keikaku-nav li {
	float: left;
	width: 50%;
	padding: 0;
}

.keikaku-nav li:nth-child(odd) {
	clear: both;
}

.keikaku-nav a {
	display: block;
	padding: 8px 0;
	text-decoration: none;
}

.keikaku-nav a:before {
	overflow: hidden;
	content: '';
	position: relative;
	top: 4px;
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0 8px 0 0;
	background: url("../images/common/arrow-next-green.png") no-repeat center center;
	background-size: contain;
}

.keikaku-list > ul {
	overflow: hidden;
	margin: 0 -20px;
	list-style: none;
}

.keikaku-list > ul > li {
	box-sizing: border-box;
	float: left;
	width: 50%;
	margin: 0 0 36px;
	padding: 0 20px;
}

.keikaku-list > ul > li:nth-child(odd) {
	clear: both;
}

.keikaku-list__row {
	overflow: hidden;
	position: relative;
	margin: 0 0 16px;
}

.keikaku-list a {
	text-decoration: none;
}

.keikaku-list__photo {
	float: left;
	width: 25.862069%;
}

.keikaku-list__photo img {
	border-radius: 8px;
}

.keikaku-list__text {
	box-sizing: border-box;
	float: left;
	width: 74.137931%;
	padding-left: 20px;
}

.keikaku-list__text h3 {
	margin: 0 0 8px;
	padding: 0;
	border: none;
}

.keikaku-list__badges {
	position: relative;
	top: -2px;
	display: inline-block;
	margin: 0 8px 0 0;
	padding: 4px;
	font-size: 13px;
	border-radius: 4px;
	line-height: 1.2;
}

.keikaku-list__data dl {
	overflow: hidden;
	margin: 0 0 14px;
}

.keikaku-list__data dt {
	clear: both;
	float: left;
	width: 3.5em;
}

.keikaku-list__data dt:after {
	content: '/';
	padding: 0 8px;
}

.keikaku-list__data dd {
	padding-left: 3.5em;
}

.keikaku-list__icon ul {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 0;
}

.keikaku-list__icon li {
	display: inline-block;
	padding: 0 8px 0 0;
}

.keikaku-list__icon img {
	border-radius: 4px;
}

.keikaku-list__cat {
	padding: 8px 16px;
	border-radius: 8px;
}

.keikaku-list__cat ul {
	margin: 0;
	padding: 0;
	list-style: none;
	font-size: 13px;
}

.keikaku-list__cat li {
	display: inline-block;
}

.keikaku-list__cat li:after {
	content: ',';
	padding: 0 4px;
}

.keikaku-list__cat li:last-child:after {
	content: '';
	padding: 0;
}


/* ----------------------------------------

 	神戸の身近な公園情報 - 詳細

---------------------------------------- */

.keikaku-row {
	overflow: hidden;
}

.keikaku-row__photo {
	float: right;
	width: 25.423729%;
}

.keikaku-row__photo ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.keikaku-row__photo li {
	margin: 0 0 1em;
	padding: 0;
}

.keikaku-row__text {
	box-sizing: border-box;
	float: left;
	width: 74.576271%;
	padding-right: 20px;
}

.keikaku-row__text dt {
	font-weight: bold;
}

.keikaku-row__text dd {
	margin-bottom: 1em;
}

.keikaku-cat {
	padding: 16px;
	border: 1px solid #eae9e5;
	border-radius: 8px;
}

.keikaku-cat ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.keikaku-cat li {
	margin: 0;
	padding: 0;
	list-style: none;
}

.keikaku-cat a {
	text-decoration: none;
}


/* ----------------------------------------

 	駐車場

---------------------------------------- */

.parking-box h4 { margin-top:  0;}

.parking-box__head {
	overflow: hidden;
}

.parking-box__head h3 {
	float: left;
	margin-top: 0;
}

.parking-box__btn {
	float: right;
	margin: 0;
}

.parking-price {
	overflow: hidden;
}

.parking-price dt {
	clear: both;
	float: left;
}

.parking-price dt:after {
	content: ':';
	padding: 0 8px;
}

.parking-price dd {
	padding-left: 5em;
}

@media screen and (max-width: 767px) {

	.parking-box th,
	.parking-box td {
		display: block;
		width: 100%;
	}

}


/* ----------------------------------------

 	公園ウォーキングクラブ

---------------------------------------- */

@media screen and (max-width: 767px) {

	.walking-img {
		width: 30%;
	}

}


/* ----------------------------------------

 	お問い合わせ

---------------------------------------- */

.contact-form dl {
	overflow: hidden;
	display: flex;
	padding: 16px 0;
	border-bottom: 1px dotted #ccc;
}

.contact-form dl:first-child {
	border-top: 1px dotted #ccc;
}

.contact-form dt {
	box-sizing: border-box;
	position: relative;
	width: 20%;
	padding-top: 12px;
	padding-right: 52px;
	font-weight: bold;
}

.required-text {
	margin-top: 4px;
	color: #c23635;
	font-weight: normal;
	line-height: 1.4;
	font-size: 13px;
}

.contact-form dt.required:after {
	content: '必須';
	position: absolute;
	top: 13px;
	right:  0;
	display: inline-block;
	margin-right: 20px;
	padding: 4px;
	background-color: #c23635;
	border-radius: 4px;
	font-size: 12px;
	line-height: 1;
	font-weight: normal;
}

.contact-form dd {
	width: 80%;
}

@media screen and (max-width: 767px) {

	.contact-form dl {
		display: block;
		margin-bottom: 16px;
	}

	.contact-form dt {
		width: 100%;
		margin: 0 0 8px;
		padding: 0;
	}

	.contact-form dt.required:after {
		top: 0;
		margin-right: 0;
	}

	.contact-form dd {
		width: 100%;
	}

}

.mw_wp_form_preview .contact-form dt,
.mw_wp_form_preview .contact-form dd {
	padding-top: 12px;
	padding-bottom: 12px;
}

.contact-form__btn-area {
	margin: 40px 0 0;
	text-align: center;
}

.contact-form__btn-area br {
	display: none;
}

.contact-form input[type="text"],
.contact-form input[type="tel"],
.contact-form input[type="email"],
.contact-form textarea {
	box-sizing: border-box;
	max-width: 100% !important;
	padding: 12px;
	border: 1px solid #ccc;
	border-radius: 0;
	background-color: transparent;
	font-size: 100%;
	outline: none;
	-webkit-appearance: none;
	appearance: none;
}

.contact-form textarea {
	max-width: 100%;
	width: 100%;
	height: 10em;
}

.contact-form select {
	box-sizing: border-box;
	padding: 12px;
	border: 1px solid #ccc;
	border-radius: 0;
	background-color: transparent;
	font-size: 13px;
	outline: none;
	-webkit-appearance: none;
	appearance: none;
}

.contact-form input[type="tel"]#zip,
.contact-form input[type="tel"]#zip1 {
	width: 100px;
}

.contact-form input[type="submit"] {
	box-sizing: border-box;
	max-width: 100%;
	width: 320px;
	margin: 0 16px;
	padding: 20px 2px;
	border: none;
	border-radius: 4px;
	background-color: #14a83b;
	text-align: center;
	font-size: 14px;
	color: #fff;
	outline: none;
	cursor: pointer;
	-webkit-appearance: none;
	appearance: none;
	transition: all .3s;
}

.contact-form input[type="submit"]:hover {
	background-color: #5ac275;
}


.contact-form input[type="submit"].form-prev {
	background-color: #666;
}

.contact-form input[type="submit"].form-prev:hover {
	background-color: #949494;
}

@media screen and (max-width: 767px) {

	.contact-form input[type="submit"] {
		width: 100%;
		margin: 0 0 20px;
	}

}


/* ----------------------------------------

 	春らんまん！！須磨さくらウォーク　参加申込書

---------------------------------------- */

.sakurawalk-note {
	margin: 0 0 40px;
	padding: 20px;
	background-color: #f5f2e4;
	border-radius: 8px;
}

.sakurawalk-note > :last-child {
	margin-bottom: 0;
}

.sakurawalk-note__head {
	margin-bottom: 16px;
}

.sakurawalk-note__head > span {
	display: inline-block;
	padding: 8px;
	background-color: #14a83b;
	color: #fff;
}

.sakurawalk-note-sup {
	display: inline-block;
	font-weight: bold;
	color: #c23635;
}

.joinDay {
	display: table;
	width: 100%;
	margin-bottom: 20px;
}

.joinDay__head {
	display: table-cell;
	width: 5.5em;
}

.joinDay__body {
	display: table-cell;
}

.salurawalkparticipant {
	display: table;
	width: 100%;
}

.salurawalkparticipant__num {
	display: table-cell;
	width: 3.5em;
	padding-right: 10px;
	padding-bottom: 30px;
	text-align: right;
}

.salurawalkparticipant__name {
	position: relative;
	display: table-cell;
	width: 200px;
	padding-right: 20px;
	padding-bottom: 30px;
}

.salurawalkparticipant__furigana {
	position: relative;
	display: table-cell;
	width: 180px;
	padding-bottom: 30px;
}

.salurawalkparticipant__furigana input {
	width: 160px;
}

.salurawalkparticipant__age {
	position: relative;
    display: table-cell;
	width: 80px;
	padding-bottom: 30px;
}

.salurawalkparticipant__unit {
	position: absolute;
	left: 70px;
	top: 0;
	margin-top: 0.5em;
}

.salurawalkparticipant__sex {
	    position: relative;
    	display: table-cell;
    	width: 120px;
    	padding-bottom: 30px;
}

.salurawalkparticipant__name input[type="text"] {
	width: 100%;
}

.salurawalkparticipant__age input[type="text"] {
	width: 60px;
}

.salurawalkparticipant__name .error,
.salurawalkparticipant__furigana .error,
.salurawalkparticipant__age .error,
.salurawalkparticipant__sex .error {
	position: absolute;
	bottom: 2px;
	left: 0;
}

.contact-form .error {
	display: inline-block;
	padding: 2px 4px;
	background-color: #fccfda;
}


.salurawalk-foot {
	float: right;
	margin-top: 40px;
}

.sakurawalk-confirm .joinDay,
.sakurawalk-confirm .salurawalkparticipant {
	float: none;
	width: 100%;
}

.sakurawalk-confirm .form-info-text,
.sakurawalk-confirm .sakurawalk-agree {
	display: none;
}

.sakurawalk-confirm .salurawalkparticipant__num,
.sakurawalk-confirm .salurawalkparticipant__name,
.sakurawalk-confirm .salurawalkparticipant__furigana,
.sakurawalk-confirm .salurawalkparticipant__age,
.sakurawalk-confirm .salurawalkparticipant__unit,
.sakurawalk-confirm .salurawalkparticipant__sex {
	display: inline-block;
	width: auto;
	margin: 0;
	padding: 0;
}


.sakurawalk-confirm .salurawalkparticipant__age,
.sakurawalk-confirm .salurawalkparticipant__sex {
	padding-left: 24px;
}

.sakurawalk-confirm .salurawalkparticipant__unit {
	position: static;
}

strong .mwform-checkbox-field-text {
	font-weight: bold;
}

.sakurawalk-confirm .sakurawalk-note,
.sakurawalk-confirm .sakurawalk-note-foot,
.sakurawalk-confirm .required-text {
	display: none;
}

@media screen and (max-width: 1180px) {

	.salurawalkparticipant__furigana {
		width: 160px;
	}

	.salurawalkparticipant__furigana input {
		width: 100px;
	}

	.salurawalkparticipant__sex {
		width: 80px;
		padding-top: 0;
		padding-left: 10px;
	}

	.salurawalkparticipant__sex label {
		display: block;
		position: relative;
		top: -14px;
	}

	.salurawalkparticipant__sex .horizontal-item + .horizontal-item {
		margin-left: 0;
	}

}

@media screen and (max-width: 767px) {

	.salurawalkparticipant__num {
		display: block;
		width: 100%;
		padding: 0 0 8px;
		font-weight: bold;
		text-align: left;
	}

	.salurawalkparticipant__name,
	.salurawalkparticipant__furigana,
	.salurawalkparticipant__age,
	.salurawalkparticipant__sex {
		box-sizing: border-box;
		display: block;
		width: 100%;
		padding: 0 0 20px;
	}

	.salurawalkparticipant__unit {
		position: static;
	}

	.salurawalkparticipant__furigana input {
		width: 200px;
	}

	.salurawalkparticipant__sex label {
		position: static;
		display: inline-block;
	}

	.salurawalkparticipant__sex .horizontal-item + .horizontal-item {
		margin-left: 20px;
	}

	.salurawalkparticipant__name .error,
	.salurawalkparticipant__furigana .error,
	.salurawalkparticipant__age .error,
	.salurawalkparticipant__sex .error {
		position: static;
	}

}


/* ----------------------------------------

	gallery

---------------------------------------- */

.gallery {
	overflow: hidden;
	margin: 0 -15px 40px;
}

.gallery-item {
	box-sizing: border-box;
	float: left;
	margin-bottom: 30px;
	padding: 0 15px;
}

.gallery-columns-2 .gallery-item {
	width: 50%;
}

.gallery-columns-2 .gallery-item:nth-child(odd) {
	clear: both;
}

.gallery-columns-3 .gallery-item {
	width: 33.333333333%;
}

.gallery-columns-3 .gallery-item:nth-child(3n+1) {
	clear: both;
}

.gallery-columns-4 .gallery-item {
	width: 25%;
}

.gallery-columns-4 .gallery-item:nth-child(4n+1) {
	clear: both;
}

.gallery-columns-5 .gallery-item {
	width: 20%;
}

.gallery-columns-5 .gallery-item:nth-child(5n+1) {
	clear: both;
}

.gallery img {
	display: block;
	max-width: none;
	width: 100%;
	border-radius: 4px;
}

@media screen and (max-width: 767px) {

	.gallery-columns-3 .gallery-item,
	.gallery-columns-4 .gallery-item,
	.gallery-columns-5 .gallery-item {
		width: 50%;
	}

	.gallery-columns-3 .gallery-item:nth-child(3n+1),
	.gallery-columns-4 .gallery-item:nth-child(4n+1),
	.gallery-columns-5 .gallery-item:nth-child(5n+1) {
		clear: none;
	}

	.gallery .gallery-item:nth-child(odd) {
		clear: both;
	}

}



/* ----------------------------------------

 	BW Customize

---------------------------------------- */
.BW-box {
	width: 90%;
	max-width: 700px;
	margin: 0 auto 2.7em auto;
	padding: 1.8em 1.8em 0.1em 1.8em;
	background-color: #f5f2e4;
	border-radius: 15px;
}




/* ----------------------------------------

 	color

---------------------------------------- */

body,
.table01 th,
.page-nav a {
	background-color: #f5f2e4;
}

.primary,
.footer-banner,
.font-large .small a,
.site-font .large a,
.link-list a,
.topics-list__body a {
	background-color: #fff;
}

.keikaku-list__cat,
.key-park {
	background-color: #e5f4e9;
}

.footer,
.keikaku-list__badges,
.keikaku-nav dt.is-active,
.entry-head__cate > span,
.topics-list__thumbnail--no,
.faq-list dt:before,
.topics-list__head .topics-list__cate,
.i-blog a,
.header-up {
	background-color: #14a83b;
}

.is-active a,
.faq-list dd:before {
	background-color: #f1c214;
}

.font-large .large a,
.btn-pageTop a,
.site-font a,
.site-font a:hover {
	background-color: #fcf149;
}

.top-key {
	background-color: #d4e9da;
}

.i-blog a:hover {
	background: #57be6d;
}



body,
.breadcrumb a {
	color: #333;
}


a {
	color: #129eaf;
}

a:hover {
	color: #12af8c;
}


.key h1,
.primary h1,
h2,
h4,
.page-nav a,
.btn-pageTop a,
.topics-list-4col dd,
.topics-list__title,
.site-font a {
	color: #14a83b;
}

.h1-sup {
	margin: 0 0 8px;
	text-align: center;
}

.h1-sup span {
	display: inline-block;
	padding: 8px 16px;
	background-color: #14a83b;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
}

.text-danger,
.contact-form dt.required:after {
	color: #c43530;
}

.keikaku-nav dt.is-active,
.contact-form dt.required:after,
.faq-list dt:before,
.faq-list dd:before,
.page-nav .is-active a,
.page-nav .is-active a:hover,
.keikaku-list__badges,
.entry-head__cate > span,
.footer,
.topics-list__head .topics-list__cate,
.i-blog a,
.header-up,
.site-font dt,
.btn:hover {
	color: #fff;
}

.keikaku-nav a,
.keikaku-list a,
.park-photo a,
.topics-list-4col a,
.topics-list__body a,
.link-list a {
	color: #333;
}

.keikaku-list__data dt:after {
	color: #999;
}

.page-list-arrow a:hover,
.topics-list__desc p {
	color: #6e6e6e;
}

.page-nav a:hover,
.link-list a:hover,
.topics-list__title:hover,
.topics-list-4col a:hover dd {
	color: #12af8c;
}
