@charset "utf-8";
/* -----------------------------
 common.css
----------------------------- */

/* リセット */
@import url("./destyle.css");

/* 巻物スタイル */
@import url("./scroll.css");

/* 張り紙スタイル */
@import url("./flyer.css");

/* 看板スタイル */
@import url("./sign-board.css");

:root {
	--header-margin: 0px;
}

body {
	background-color: #FFFFFF;
	background-image: url(../../images/common/bg.png);
}

/* ------------------------------
 general
------------------------------ */

.wholeLink {
	cursor: pointer;
}

span.nowrap {
	display: inline-block;
	white-space: nowrap;
}

button {
	padding: 2px 15px;
	border: 1px solid #999999;
	border-radius: 2px;
	background:
		linear-gradient(
			to bottom,
			#EEEEEE 0%,
			#DDDDDD 100%
		);
	color: #333333;
}

button:active {
	background:
		linear-gradient(
			to bottom,
			#DDDDDD 0%,
			#EEEEEE 100%
		);
}

/* ------------------------------
 header
------------------------------ */
header {
	background-color: #FFFFFF;
	margin: auto;
	color: var(--color-x-pale);
}

header h1 {
	max-width: 1000px;
	margin: 0px auto;
	padding: 10px;
	font-size: medium;
}

header h1 img {
	width: 75px;
	height: auto;
}

/* ------------------------------
 nav
------------------------------ */


/* ------------------------------
 main
------------------------------ */
main {
	color: var(--color-x-dark);
}

article {
	display: flex;
	flex-direction: column;
	flex-wrap: nowrap;
	align-items: center;
}

article .content {
	order: 10;

	width: 100%;
	max-width: 1000px;
	padding: 20px 5px 20px;
	line-height: 150%;
}

/* ------------------------------
 footer
------------------------------ */
footer {
	margin-top: 50px;
	color: var(--color-x-pale);
}

footer.isfixed {
	position: fixed;
	bottom: 0px;
	left: 0px;
	width: 100%;
	z-index: 50;
}

footer .gotop {
	padding-top: 20px;
	height: 150px;
	background-image:
		url(../../images/common/building.png),
		url(../../images/common/sun.png)
	;
	background-position:
		center bottom,
		center top
	;
	background-repeat:
		repeat-x,
		no-repeat
	;
	background-size:
		auto 150px,
		200px auto
	;
	text-align: center;
}

footer .gotop img {
	width: 38px;
	height: auto;
}

footer nav {
	background-color: var(--color-x-dark);
	background-image: url(../../images/common/grass.png);
	background-position: center bottom;
	background-repeat: repeat-x;
	background-size: auto 60px;
}

footer nav div {
	max-width: 1000px;
	min-height: 250px;
	margin: auto;
	background-image: url(../../images/common/samurai.png);
	background-position: right 20px bottom;
	background-repeat: no-repeat;
	background-size: auto 170px;
}

footer nav ul {
	padding: 15px;
	padding-bottom: 170px;
}

footer nav ul li {
	line-height: 150%;
}

footer nav ul li a {
}

footer .copy {
	background-color: var(--color-x-dark);
	padding: 5px;
	text-align: center;
	font-size: x-small;
	line-height: 150%;
}

/* -----------------------------
 PC
----------------------------- */
@media screen and (min-width:1000px) {
	.onlysp {
		display: none;
	}

	header h1 img {
		width: 150px;
	}

	header nav {
		background-color: var(--color-x-dark);
	}

	header nav h2 {
		display: none;
	}

	header nav ul {
		display: flex;
		max-width: 1000px;
		margin: 0px auto;
	}

	header nav ul li {
	}

	header nav ul li.on {
		background-color: #990000;
	}

	header nav ul li a {
		display: block;
		min-width: 100px;
		padding: 0px 5px;
		line-height: 30px;
		text-align: center;
		text-decoration: none;
	}

	header nav ul li a:hover {
		background-color: #990000;
	}

	article .content {
		box-sizing: content-box;
	}

	footer .gotop {
		padding-top: 30px;
		height: 282px;
		background-size:
			auto auto,
			auto auto
		;
	}

	footer nav {
		background-image:
			url(../../images/common/grass.png),
			url(../../images/common/logotext.png)
		;
		background-position:
			center bottom,
			center top 20px
		;
		background-size:
			auto auto,
			auto auto
		;
		background-repeat:
			repeat-x,
			no-repeat
		;
	}

	footer nav div {
		background-size: auto auto;
	}

	footer nav ul {
		padding-bottom: 130px;
	}
}

/* -----------------------------
 SP
----------------------------- */
@media screen and (max-width:999px) {
	.onlypc {
		display: none;
	}

	header {
		position: fixed;
		width: 100%;
		margin-top: var(--header-margin);
		box-shadow: 0px 2px 2px #666666;
		z-index: 50;
	}

	header nav h2 {
		margin:0px;
		padding:0px;
		position: absolute;
		top: 5px;
		right: 10px;
		width: 30px;
		height: 37px;
		background-image: url(../../images/common/list-b.png);
		background-position: center center;
		background-repeat: no-repeat;
		background-size: 30px;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		cursor: pointer;
	}

	header nav ul {
		display: none;
		position: absolute;
		top: 44px;
		right: 0px;
		min-width: 200px;
		max-height: calc(100vh - 50px);
		background-color: #222222;
		box-shadow: 0px 2px 3px #999999;
	}

	header nav ul li:not(:last-child) {
		border-bottom: 1px solid #505050;
	}

	header nav ul li a {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		height: 40px;
		padding: 0px 10px;
		text-decoration: none;
	}

	main {
		padding-top: calc(44px + var(--header-margin));
	}
}
