@charset "utf-8";
* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
html {
	font-size: 62.5%;
	/* ルートFontSizeを10pxで統一 */
}
body {
	background: #FFF;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
	font-size: 1.6em;
	/* FontSize16pxで標準化 */
}
img {
	max-width: 100%;
	height: auto;
}
a {
	color: #00678C;
}
/*-----------------------------
　to Englishボタン追加
-------------------------------*/
.en {
	background: red;
	text-align: center;
	color: #fff;
	font-size: 2rem;
	margin: 30px auto 5px auto;
	width: 400px;
	max-width: 90%;
	padding: 8px 20px 6px 20px;
	border-radius: 20px;
	box-shadow: 3px 3px 2px #ccc;
}
.en a {
	display: block;
	text-decoration: none;
	color: #fff;
}
.en:hover {
	background: orange
}
/*-----------------------------
　header
-------------------------------*/
h1 {
	background: #595656;
	height: 1.6rem;
	color: #fff;
	text-align: center;
	font-size: 1.2rem;
	font-weight: normal;
}
header {
	height: 490px;
	max-height: 500px;
	width: 100%;
	max-width: 100%;
	background: url(img/head1.jpg) no-repeat top center;
	background-size: cover;
	position: relative;
	z-index: 1;
}
.logo {
	width: 450px;
	height: 206px;
	margin: auto;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
.title {
	text-align: center;
	position: relative;
	width: 1200px;
	max-width: 100%;
	margin: 0 auto;
}
.title img {
	max-width: 80%;
	position: relative;
	z-index: 5;
	margin-top: -20px;
}
.title::before {
	position: absolute;
	content: url(img/flag-l.png);
	top: 0px;
	left: 0;
	z-index: 0;
}
.title::after {
	position: absolute;
	content: url(img/flag-r.png);
	top: 0px;
	right: 0;
	z-index: 0;
}
.title h2 {
	font-size: 5.4rem;
	color: #595656;
	line-height: 6.2rem;
	position: relative;
	width: 940px;
	max-width: 100%;
	margin: 0 auto
}
.title span,
.under {
	background: url(img/nami.png) bottom repeat-x;
	background-size: 20px;
}
.title h2::before {
	position: absolute;
	content: url(img/line-l.png);
	top: 20px;
	left: 0;
	z-index: 0;
}
.title h2::after {
	position: absolute;
	content: url(img/line-r.png);
	top: 20px;
	right: 0;
	z-index: 0;
}
/*-----------------------------
　観光拠点に
-------------------------------*/
.kankou {
	background: url(img/kankou.jpg) no-repeat center;
	background-size: cover;
	height: 450px;
	width: 100%;
	margin-top: 30px;
	position: relative;
}
.boxY {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background-color: rgba(255, 255, 230, 0.9);
	width: 700px;
	max-width: 90%;
	border-radius: 10px;
	box-shadow: 4px 4px 5px #333;
	margin: 120px auto;
	text-align: center;
}
.boxY p {
	margin: 40px auto;
	font-size: 2rem;
}
.boxY p.Ktitle {
	font-size: 3.2rem;
	margin-bottom: -20px;
}
/*-----------------------------
　お知らせ
-------------------------------*/
.wood {
	background: url(img/wood.jpg);
	padding: 50px
}
.topics {
	border: 3px #EDB88F solid;
	border-radius: 20px;
	padding: 0px 50px 50px 50px;
	width: 930px;
	max-width: 100%;
	margin: 0 auto;
	background: rgba(255, 255, 255, 0.8) url(img/topics2.png) no-repeat bottom right;
}
img.tpcsT {
	display: block;
	margin: -20px auto 20px auto;
}
/*-----------------------------
　施設紹介
-------------------------------*/
h3 {
	text-align: center;
	line-height: 120px;
	height: 120px;
	font-size: 3.2rem;
	background: url(img/h3.png) no-repeat center;
	color: #595656;
}
h3.qa {
	text-align: center;
	line-height: 120px;
	height: 120px;
	font-size: 3.2rem;
	background: url(img/h3-qa.png) no-repeat center;
	color: #595656;
}
h3::after,h3.qa::after {
	border-bottom: dotted 3px #C7E29E
}
img.w-img {
	display: block;
	margin: 0 auto;
	text-align: center;
}
.green {
	background: url(img/bg-g.png);
}
.space {
	height: auto;
	min-height: 300px;
	width: 100%;
	text-align: center;
}
.m-tb40 {
	/*スペーサー*/
	margin: 40px auto;
}
.center,
img.center {
	display: block;
	margin: 20px auto;
	text-align: center;
}
.boxW {
	background: rgba(255, 255, 255, 0.5)
		/*url(img/set-bk.png) no-repeat bottom right*/
	;
	width: 1000px;
	border-radius: 3px;
	border: 2px dashed #E2C996;
	margin: 0 auto;
}
.left-b, .right-b {
	width: 40%;
	height: auto;
	display: inline-block;
}
.boxW ul {
	list-style: none;
	margin: 30px;
	vertical-align: top;
}
.boxW li {
	position: relative;
	height: 182px;
	width: 90%;
	color: #595353;
	margin-bottom: 10px
}
.boxW li div {
	height: 2rem;
	width: 100%;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 240px;
	bottom: 0;
	font-size: 1.8rem;
	font-weight: bold;
}
.boxW li div span {
	display: block;
	font-size: 1.4rem;
	font-weight: normal;
}
/*-----------------------------
　料金
-------------------------------*/
.flag {
	background: url(img/flag-c.png) top repeat-x;
	height: 45px;
	width: 100%;
}
h3.ptitle {
	line-height: 43px;
	height: 43px;
	width: 600px;
	max-width: 96%;
	margin: 20px auto;
	background: #595353;
	color: #fff;
	font-size: 2.8rem;
	position: relative;
}
h3.ptitle::before,
h3.ptitle::after {
	position: absolute;
	content: '';
	border-radius: 100%;
}
h3.ptitle::before {
	top: .5em;
	left: .4em;
	z-index: 2;
	width: 13px;
	height: 13px;
	background: rgba(246, 224, 203, 1);
}
h3.ptitle::after {
	top: .5em;
	right: .4em;
	z-index: 3;
	width: 13px;
	height: 10px;
	background: rgba(246, 224, 203, 1);
}
.ptitle-sub {
	font-size: 3.3rem;
	color: #595656;
	text-align: center;
	font-weight: bold;
	line-height: 3.6rem
}
.under {
	padding-bottom: 8px
}
.boxPay {
	text-align: center;
	margin: 30px auto 0 auto;
}
.mCatch {
	font-size: 1.6rem;
	line-height: 1.6rem;
	text-align: center;
}
button {
	display: block;
	border-radius: 10px;
	border: none;
	font-size: 2.3rem;
	font-weight: bold;
	box-shadow: 3px 3px 3px #ccc;
	text-decoration: none;
	padding: 20px;
	width: 500px;
	max-width: 90%;
	margin: 10px auto;
	color: #fff;
	background: -webkit-gradient(left top, left bottom, color-stop(0%, rgba(250, 145, 47, 1)), color-stop(46%, rgba(250, 145, 47, 1)), color-stop(55%, rgba(255, 96, 10, 1)), color-stop(100%, rgba(255, 96, 10, 1)));
	background: -webkit-linear-gradient(top, rgba(250, 145, 47, 1) 0%, rgba(250, 145, 47, 1) 46%, rgba(255, 96, 10, 1) 55%, rgba(255, 96, 10, 1) 100%);
	background: -o-linear-gradient(top, rgba(250, 145, 47, 1) 0%, rgba(250, 145, 47, 1) 46%, rgba(255, 96, 10, 1) 55%, rgba(255, 96, 10, 1) 100%);
	background: -ms-linear-gradient(top, rgba(250, 145, 47, 1) 0%, rgba(250, 145, 47, 1) 46%, rgba(255, 96, 10, 1) 55%, rgba(255, 96, 10, 1) 100%);
	background: linear-gradient(to bottom, rgba(250, 145, 47, 1) 0%, rgba(250, 145, 47, 1) 46%, rgba(255, 96, 10, 1) 55%, rgba(255, 96, 10, 1) 100%);
}
a.btn  {
	text-decoration: none;
	position: relative;
	padding-left: 32px;
}
button:hover {
	opacity: 0.7;
}
a::button before {
	content: '';
	display: inline-block;
	position: absolute;
	width: 26px;
	height: 26px;
	top: -2px;
	left: 0px;
	background: url(img/ico.png) no-repeat left;
}
/*-----------------------------
　ご利用方法
-------------------------------*/
.boxBl {
	/*2カラム統合*/
	width: 950px;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
	text-align: center;
}
.flow {
	display: inline-block;
	background: #fff;
	vertical-align: top;
	width: 450px;
	min-height: 280px;
	margin: 20px auto;
	padding: 20px
}
.flow.left {
	margin-right: 40px
}
.flowT {
	background: #7FAF52;
	color: #fff;
	font-weight: bold;
	margin-bottom: 20px;
	padding: 5px 0;
	font-size: 2rem;
}
ol {
	counter-reset: my-counter;
	list-style: none;
	padding: 0;
	margin: 0 20px 0 2px;
}
ol li {
	font-size: 1.7rem;
	padding-left: 30px;
	position: relative;
	text-align: left;
	line-height: 2.4rem;
	margin: 22px auto;
}
ol li:before {
	content: counter(my-counter);
	counter-increment: my-counter;
	background-color: #B28500;
	color: #222;
	display: block;
	float: left;
	line-height: 22px;
	margin-left: -30px;
	text-align: center;
	height: 22px;
	width: 22px;
	color: #fff;
	font-weight: bold;
	font-size: 1.4rem;
}
ol li.last {
	margin-bottom: 0
}
.box-at {
	/*注意事項枠*/
	width: 950px;
	max-width: 96%;
	height: auto;
	margin: 0 auto;
	text-align: center;
	background: #FDF9BE;
	overflow: auto;
}
.chui {
	padding: 30px;
	text-align: left;
}
.box-at ul {
	list-style-position: outside;
	margin-left: 25px;
}
.box-at ul li {
	margin-bottom: 10px;
}
.box-at h4 {
	font-size: 2.2rem;
	padding-bottom: 8px;
	margin-bottom: 20px;
	color: #FF7F00;
	border-bottom: #FF7F00 dotted 2px;
}
img.right {
	float: right;
	margin-left: 20px;
}
/*---------------
周辺施設
--------------*/
.neighborhood {
	background: #FCF7F0;
	width: 950px;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
	padding: 20px;
}
.neighborhood h4 {
	color: #4D4848;
	font-size: 2.2rem;
	background: url(img/wood-t.jpg);
	border-radius: 10px;
	line-height: 60px;
	text-align: center;
}
.col4, .col3 {
	display: block;
	margin: 20px 0 20px 8px;
	line-height: 1.8rem;
	font-weight: bold;
	color: #4D4848;
}
.col4 span, .col3 span {
	font-size: 1.3rem;
	font-weight: normal;
}
.col4 img, .col3 img {
	margin: 0 auto -10px auto;
	display: block;
}
.col4 section {
	display: inline-block;
	text-align: center;
	margin: 0 auto;
	width: 24.3%;
	height: auto;
	vertical-align: top;
}
.col3 section {
	display: inline-block;
	text-align: center;
	margin: 0;
	width: 32.9%;
	height: auto;
	vertical-align: top;
	position: relative;
}
.col3 div {
	position: relative;
	width: 259px;
	max-width: 100%;
	font-weight: normal;
	background: #D6E1C0;
	margin: 5px auto;
	font-size: 1.4rem;
	padding: 10px;
	line-height: 1.6rem;
	min-height: 80px;
}
.blwn {
	color: #595454;
	font-size: 1.4rem;
}
/*---------------
 map
--------------*/
.map {
	text-align: center;
	margin-bottom: 30px;
}
iframe {
	max-width: 100%;
}
.kiyaku {
	margin-top: 30px;
	padding: 20px;
	text-align: center;
}
.kiyaku a {
	display: block;
	margin: 30px auto 20px auto;
	font-size: 1.8rem;
	color: #00678C;
	font-weight: bold;
}
.kiyaku a img {
	margin-right: 10px;
}
/*---------------
Footer
--------------*/
address {
	font-style: normal;
	text-align: center;
	color: #595656;
	padding: 30px 0 10px 0;
	margin-top: 30px;
}
address p {
	margin-bottom: 20px
}
address span a {
	font-size: 2.2rem;
	color: #595656;
	text-decoration: none;
	border-bottom: 1px dashed #595656;
}
footer {
	background: #595656;
	text-align: center;
	color: #fff;
	font-size: 1.2rem;
}
.emergency {
	font-size: 1.8rem;
	font-weight: bold;
}
address br {
	display: none
}

/*---------------
Q&A
--------------*/
.qa-list {
			max-width:950px;
			margin:20px auto;
}
.qa-list dl {
    position: relative;
    margin: 10px 0 0;
    cursor: pointer;
    border: 1px solid #E1EED7;
}
.qa-list dl:first-child {
  margin-top: 0;
}
.qa-list dl::after {
    position: absolute;
    top: 17px;
    right: 26px;
    display: block;
    width: 7px;
    height: 7px;
    margin: auto;
    content: '';
    transform: rotate(135deg);
    border-top: 3px solid #7BAB50;
    border-right: 3px solid #7BAB50;
}
.qa-list .open::after {
    transform: rotate(-45deg);
}
.qa-list dl dt {
    position: relative;
    margin: 0;
    padding: 8px 20px 8px 60px;
    background: #EEF4E8;
}
.qa-list dl dt::before {
    font-size: 22px;
    line-height: 1;
    position: absolute;
    top: 5px;
    left: 20px;
    display: block;
    content: url(img/q.png);
    color: #3285bf;
}
.qa-list dl dd::before {
    font-size: 22px;
    line-height: 1;
    position: absolute;
    left: 26px;
    display: block;
    content: 'A.';
    color: #7FAF52;
}
.qa-list dl dd {
    position: relative;
    margin: 0;
    padding: 20px 20px 20px 60px;
}
.qa-list dl dd p {
    margin: 30px 0 0;
}
.qa-list dl dd p:first-child{
    margin-top: 0;
}
.faq-link{
	text-align: center;
	margin: 30px auto  60px auto;
	position: relative;
}
.faq-link a{
	text-decoration: none;
	border-bottom: 2px dotted #7FAF52;
	padding-bottom: 4px;
	font-size:20px;
	color: #595656;
	font-weight: bold;
}
.faq-link a::before {
    content: url(img/faq-ico.png);
		position: relative;
		top:17px;
		padding-right: 8px;
}
/*-----------------------------------------------------------------------------------------*/
@media screen and (max-width: 1024px) {
	body {
		max-width: 100%;
	}
	/*タブレット縦*/
	.logo {
		width: 50%;
		height: auto;
	}
	.title h2 {
		font-size: 4.2rem;
	}
	.boxW {
		max-width: 98%;
		margin: -10px;
		padding: 0;
	}
	.flow {
		display: inline-block;
		background: #fff;
		vertical-align: top;
		width: 43%;
		min-height: 330px;
		margin: 20px auto;
		padding: 20px;
	}
	.flow.left {
		margin-right: 40px
	}
}
/*-----------------------------------------------------------------------------------------*/
@media screen and (max-width: 896px) {
	/*スマホ横*/
	.wood.setubi {
		padding: 10px
	}
	.boxW {
		width: 100%;
		border-radius: 3px;
		margin: 0 auto;
		text-align: center;
	}
	.left-b, .right-b {
		width: 43%;
		height: auto;
		display: inline-block;
		marign: 0 auto
	}
	.boxW ul {
		margin: 8px;
	}
	.boxW li img {
		display: block;
		width: 100%;
	}
	.boxW li {
		position: relative;
		height: auto;
		width: 100%;
		color: #595353;
		margin-bottom: 5px
	}
	.boxW li div {
		min-height: 46px;
		width: 100%;
		margin: auto;
		position: relative;
		top: 0px;
		left: 0;
		text-align: center;
		font-size: 1.4rem;
		font-weight: bold;
	}
	.boxW li div br {
		display: none;
	}
	.boxW li div span {
		font-size: 1.1rem;
		line-height: 1.2rem
	}
	.col3 section {
		width: 32.6%;
	}
/*---QA---*/
	 .qa-list dl {
	    margin: 10px 0 0;
	}
	.qa-list dl:after {
	    top: 20px;
	    right: 20px;
	    width: 7px;
	    height: 7px;
	}
	.qa-list dl dt {
	    padding: 16px 16px 16px 50px;
	}
	.qa-list dl dt::before {
	    font-size: 16px;
	    top: 20px;
	    left: 20px;
	}
	.qa-list dl dd::before {
	    font-size: 16px;
	    left: 20px;
	    margin-top: 5px;
	}
	.qa-list dl dd {
	    margin: 0;
	    padding: 16px 16px 16px 50px;
	    font-size: 14px;
	}
	.qa-list dl dd p {
	    margin: 30px 0 0;
	}
	.qa-list dl dd p:first-child{
	    margin-top: 0;
	}
}
/*-----------------------------------------------------------------------------------------*/
@media screen and (max-width: 480px) {
	/*スマホ縦*/
	.logo {
		width: 70%;
		height: auto;
	}
	h1 {
		display: none
	}
	.title h2 {
		font-size: 2.6rem;
		line-height: 3.2rem;
		width: 94%;
		margin: 0 5px;
	}
	.title img {
		margin-top: -20px;
		padding: 5px 0
	}
	.title::before,
	.title::after,
	.title h2::before,
	.title h2::after {
		content: none;
	}
	.boxY {
		left: 0;
		background-color: rgba(255, 255, 230, 0.8);
		width: 86%;
		border-radius: 10px;
		box-shadow: 3px 3px 5px #333;
		margin: 120px auto;
	}
	.boxY p {
		font-size: 1.6rem;
	}
	.boxY p.Ktitle {
		font-size: 2.6rem;
		margin-bottom: -20px;
		width: 90%;
	}
	.wood {
		background: url(img/wood.jpg);
		padding: 40px 10px 30px 10px
	}
	.topics {
		padding: 0px 12px 50px 12px;
		width: 100%;
		font-size: 1.5rem;
	}
	h3 {
		font-size: 2.8rem;
		line-height: 88px;
		height: 88px;
	}
	.wood.setubi {
		padding: 10px
	}
	.boxW {
		width: 100%;
		border-radius: 3px;
		margin: 0 auto;
		text-align: center;
	}
	.left-b, .right-b {
		width: 43%;
		height: auto;
		display: inline-block;
		marign: 0 auto
	}
	.boxW ul {
		margin: 8px;
	}
	.boxW li img {
		display: block;
		width: 100%;
	}
	.boxW li {
		position: relative;
		height: auto;
		width: 100%;
		color: #595353;
		margin-bottom: 5px
	}
	.boxW li div {
		min-height: 46px;
		width: 100%;
		margin: auto;
		position: relative;
		top: 0px;
		left: 0;
		text-align: center;
		font-size: 1.4rem;
		font-weight: bold;
	}
	.boxW li div br {
		display: none;
	}
	.boxW li div span {
		font-size: 1.1rem;
		line-height: 1.2rem
	}
	.m-tb40 {
		margin: 25px auto 20px auto;
	}
	h3.ptitle {
		font-size: 2rem;
		height: 35px;
		line-height: 35px;
	}
	p.ptitle-sub {
		font-size: 2.5rem;
	}
	.boxPay {
		margin: 20px auto
	}
	.boxPay img {
		margin: -5px auto;
		max-width: 90%;
	}
	.mCatch {
		font-size: 1.3rem;
	}
	button {
		font-size: 1.8rem
	}
	button a::before {
		top: -4px;
	}
	.boxBl {
		padding-top: 20px;
	}
	.flow {
		width: 450px;
		max-width: 96%;
		min-height: auto;
		margin: 20px auto;
		padding: 16px
	}
	.flow.left {
		margin: 0px auto
	}
	ol li {
		font-size: 1.6rem;
		padding-left: 30px;
		line-height: 2rem;
		margin: 22px auto;
	}
	img.right {
		float: none;
		margin: 0 auto 10px auto;
	}
	iframe {
		height: 350px;
	}
	.neighborhood h4 {
		font-size: 2rem;
		line-height: 46px;
	}
	.col4, .col3 {
		line-height: 1.6rem;
		font-size: 1.4rem;
		margin: 13px 0;
	}
	.col4 span, .col3 span {
		font-size: 1.2rem;
		font-weight: normal;
	}
	.col4 section {
		width: 48%;
	}
	.col3 section {
		display: inline-block;
		text-align: center;
		margin: 0;
		width: 48%;
		height: auto;
		vertical-align: top;
		position: relative;
	}
	.col3 div {
		width: 100%;
		font-size: 1.2rem
	}
	address br {
		display: block;
	}
	dl.qa dt{
		padding-right: 4rem;
		paddging-left:3em;
		font-size: 1.5rem
	}
	h3.qa {
		margin-left:-2.5rem;
		background: url(img/h3-qa.png) no-repeat center;
		background-size: 280%;
		font-size:2.7rem;
	}
	.qa-list dl dt::before {
	    left: 10px;
	}
}
