@charset "utf-8";
* {
	box-sizing: border-box;
}
img {
	max-width: 100%;
}
body {
	font: 1em "Yu Gothic", "游ゴシック", sans-serif;
	margin: 0;
	padding: 0;
	color: #2C6645;
	background-color: #F6F3EF;
	border-bottom: 7px solid #2C6645;
}
/* ~~ エレメント / タグセレクター ~~ */
ul, ol, dl { /* ブラウザー間の相違により、リストの余白とマージンをゼロにすることをお勧めします。一貫性を保つために、量をここで指定するか、リストに含まれるリスト項目 (LI、DT、DD) で指定できます。より詳細なセレクターを記述しない限り、ここで指定する内容が .nav リストにも適用されることに注意してください。 */
	padding: 0;
	margin: 0;
	list-style: none;
}
h1, h2, h3, h4, h5, h6, p {
	margin-top: 0;
}
h4 {
	font-size: 1.5em;
	font-weight: bold;
	color: #2C6645;
	margin: 20px 0px;
}
.h4back {
	font-size: 1em;
	font-weight: bold;
	margin: 10px 0px;
	padding: 20px;
	color: #2C6645;
	background-image: url(../images/icon-1-4.png);
	background-repeat: no-repeat;
	background-size: contain;
}
#kago {
	background-image: url(../image/h2_kago.png);
	background-repeat: no-repeat;
	background-size: contain;
}
#info {
	background-image: url(../image/h2_info.png);
	background-repeat: no-repeat;
	background-size: contain;
	font-size: 3em;
}
#access {
	background-image: url(../image/h2_access.png);
	background-repeat: no-repeat;
	background-size: contain;
	font-size: 3em;
	margin:0;
	/*position: absolute;
	top: 0;
	left: 0;
	padding: 70px;
*/}
a img {
	border: none;
}
/* ~~ サイトのリンクのスタイル付けは、ホバー効果を作成するセレクターグループも含め、この順序にする必要があります。~~ */
a:link {
	color: #2C6645;
	text-decoration: none; /* 非常に特殊な表示方法でリンクをスタイル付けする場合を除き、一目で見分けられるように下線を指定することをお勧めします。 */
}
a:visited {
	color: inherit;
	text-decoration: none;
}
a:hover, a:active, a:focus { /* このセレクターグループは、キーボードを使用するユーザーに対し、マウスを使用するユーザーと同じホバー効果を提供します。 */
	text-decoration: none;
	color: #999;
	opacity: 0.8;
}
/* ~~ このコンテナが他のすべての div を囲み、パーセンテージに基づいた幅を指定します。~~ */

.backwrap {
	border-radius: 0px 0px 20px 20px;
	width: 85%;
	margin: 0 auto;
}
.container {
	width: 90%;
	margin: 0 auto; /* 幅に加え、両側を自動値とすることで、レイアウトが中央に揃います。.container の幅を 100% に設定した場合、これは必要ありません。 */
}
/* ~~ ヘッダーには幅は指定されません。ヘッダーはレイアウトの幅全体まで広がります。ヘッダーには、ユーザー独自のリンクされたロゴに置き換えられるイメージプレースホルダーが含まれます。~~ */

.header {
	padding: 2em;
}
.footer {
	padding: 3em 2em;
	background-color: #D3DBD8;
}
.title {
	float: left;
	width: 35%;
}
.title img {
	max-width: 100%;
}
.menuarea {
	margin: 20px auto;
	width: 100%;
	border-top: 5px solid #2C6645;
}
#menubtn {
	display: none;
}
#nav {
	list-style: none;
	display: flex;
	justify-content: space-around;
	margin: 2em auto;
	width: 90%;
	color: #000;
}
#footnav {
	list-style: none;
	display: flex;
	justify-content: space-around;
	margin-bottom: 1em;
	float: none;
	color: #000;
}
#nav li {
}
ul li a, .morebtn a {
	color: #000!important;
}
.eye {
	background-image: url(../image/eyeback.png);
	background-position: center top;
	background-size: cover;
	background-repeat: no-repeat;
	border-radius: 20px 20px 0px 0px;
	width: 100%;
	text-align: center;
}
.eye img {
	width: 100%;
	margin: 10px auto;
}
/* ~~ これはレイアウト情報です。~~ 

1) 余白は、div の上部または下部にのみ配置されます。この div 内のエレメントには、それ自体に余白があるので、ボックスモデル計算を行う必要がありません。ただし、div 自体に両側の余白やボーダーを指定した場合、その値が加算されたものが合計幅になることに注意してください。div 内のエレメントの余白を削除し、さらにその div 内に、全体のデザインに必要な幅や余白を指定していない 2 つ目の div を追加することもできます。

*/
.content {
	padding: 10px 0;
}
.h1top {
	font-weight: lighter;
	margin-top: 20px;
	float: left;
}
.infobox {
	display: flex;
	justify-content: center;
	font-size: 1.5em;
	font-weight: bolder;
	float: right;
}
.infobox2 {
	display: flex;
	width: 100%;
	justify-content: center;
	font-size: 1.5em;
	font-weight: bolder;
	background-color: #FFF;
	border: 1px solid #000;
}
.infobox2 p:first-of-type {
	border-right: 3px solid #000;
}
.infobox2 p {
	padding: 0 20px;
	margin: 30px 0;
}
.infobox p {
	padding: 0 10px;
	margin: 10px 0;
}
.infobox p:first-of-type {
	border-right: 3px solid #000;
}
.infobox3 {
	float: right;
	margin-top: 20px;
	margin-bottom: 0;
}
.mainbox {
	position: relative;
	padding-bottom: 50%;
}
.ibox {
	float: right;
	width: 40%;
	position: absolute;
	bottom: 0;
	left: 60%;
}
.tbox {
	float: left;
	width: 60%;
	border-top: 7px solid #2C6645;
	padding-top: 15px;
	padding-right: 20px;
}
.tbox p {
	font-size: 1.5em;
	font-weight: bolder;
}
.big {
	font-size: 1.5em;
	font-weight: bold;
}
.gline {
	line-height: 0;
	border-top: 7px solid #2C6645;
	margin-bottom: 15px;
}
.gline2 {
	line-height: 0;
	border-top: 3px solid #2C6645;
}
.h3douga {
	background-image: url(../images/icon-1.png);
	background-repeat: no-repeat;
	background-size: contain;
	font-size: 1.5em;
	padding-top: 1em;
	padding-bottom: 1em;
	padding-left: 15%;
	margin-top: 2em;
	position: relative;
}
.h3douga:after {
	content: "";
	border-top: 7px solid #2C6645;
	width: 70%;
	position: absolute;
	top: 50%;
	left: 30%;
}
.h3shippei {
	background-image: url(../images/icon-1-2.png);
	background-repeat: no-repeat;
	background-size: contain;
	font-size: 1.5em;
	padding-top: 1em;
	padding-bottom: 1em;
	padding-left: 15%;
	margin-top: 2em;
	position: relative;
}
.h3shippei:after {
	content: "";
	border-top: 7px solid #2C6645;
	width: 55%;
	position: absolute;
	top: 50%;
	left: 45%;
}
.h3youken {
	background-image: url(../images/icon-1-3.png);
	background-repeat: no-repeat;
	background-size: contain;
	font-size: 1.5em;
	padding-top: 1em;
	padding-bottom: 1em;
	padding-left: 15%;
	margin-top: 2em;
	position: relative;
}
.h3youken:after {
	content: "";
	border-top: 7px solid #2C6645;
	width: 45%;
	position: absolute;
	top: 50%;
	left: 55%;
}
.mainbox2 {
	position: relative;
}
.p1 {
	position: absolute;
	top: 20%;
	left: 45%;
	font-size: 2.5em;
}
.p2 {
	position: absolute;
	top: 75%;
	left: 50%;
	transform: translateX(-50%);
	color: #FFF;
	font-size: 2.5em;
}
.nineflex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-top: 2em;
}
.nineflex .box {
	width: 30%;
	margin-bottom: 3%;
	position: relative;
	display: flex;
	flex-direction: column;
}
.nineflex .box p {
	padding: 10px;
}
.morebtn {
	margin-top: auto;
	padding-bottom: 0;
}
.wflex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: baseline;
	margin-bottom: 2em;
}
.wflex a {
	width: 50%;
	padding: 30px;
	text-align: center;
}
.triflex {
	display: flex;
	justify-content: space-between;
	align-items: baseline;
	margin: 50px 0;
}
.triflex a {
	width: 30%;
	text-align: center;
	border: 1px solid #000;
	background-color: #FFF;
	border-radius: 10px;
	padding: 10px;
	font-size: 1.2em;
}
.mbox {
	width: 50%;
	padding-right:10px;
}
.button {
	background-color: #D3DBD8;
	border: 3px solid #2C6645;
	border-radius: 10px;
	padding: 10px;
	margin-bottom: 5px;
}
.button:hover {
	border: 3px solid #2C6645;
}
.button:after {
	content: "→";
	margin-left: 20px;
}
.yoyaku {
	font-size: 1.3em;
	font-weight: bolder;
	display: block;
	text-align: center;
}
.moviewrap {
	position: relative;
	width: 50%;
	height: auto;
}
.moviewrap iframe {
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
	max-width: 600px;
	display: block;
	margin: auto;
}
.flex {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 20px 0;
}
/* ~~ その他の float/clear クラス ~~ */
.fltrt {  /* このクラスを使用すると、ページ内でエレメントを右にフローティングさせることができます。フローティングさせるエレメントは、ページ内で横に並べて表示するエレメントの前に指定する必要があります。 */
	float: right;
	margin-left: 8px;
}
.fltlft { /* このクラスを使用すると、ページ内でエレメントを左にフローティングさせることができます。フローティングさせるエレメントは、ページ内で横に並べて表示するエレメントの前に指定する必要があります。 */
	float: left;
	margin-right: 8px;
}
.clear { /* このクラスは、#footer が #container から削除されているか取り出されている場合に、<br /> または空の div で、フローティングさせる最後の div に続く最後のエレメントとして (#container 内に) 配置できます。 */
	clear: both;
	height: 0;
	font-size: 1px;
	line-height: 0px;
}
.line {
	clear: both;
	height: 0;
	font-size: 1px;
	line-height: 0px;
	border-top: 1px solid #000;
}
.kagoli {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	width: 80%;
	margin: 0 auto;
}
.kagoli li {
	width: 50%;
	font-size: 1.2em;
	padding: 20px 10px;
	text-align: right;
}
.kagoli li:after {
	content: "→";
	margin-left: 10px;
}
.twitter {
	display: flex;
	width: 60%;
	margin: 0px auto;
	padding: 50px 0px;
}
.twitter p {
	padding-left: 20px;
}
.acposi {
	position: relative;
	margin: 2em;
}
.acflex {
	display: flex;
	flex-wrap: wrap;
	width: 100%;
	align-items: flex-end;
	justify-content: space-evenly;
}
.accesstxt {
	width: 30%;
	padding: 10px;
}
.accesstxt p {
	padding-top: 10px;
}
.center {
	text-align: center;
	margin: 0 auto;
}
#page-top {
	position: fixed;
	bottom: 3%;
	right: 20px;
	font-size: 14px;
	line-height: 1;
	z-index: 99;
	opacity: 0;
}
#page-top a {
	background: #2C6645;
	text-decoration: none;
	color: #fff;
	width: 100px;
	padding: 22px 5px;
	text-align: center;
	display: block;
	border-radius: 90px;
	opacity: 0.9;
	transition: all .3s ease;
}
 @media screen and (max-width:480px) and (max-width:1000px) {
}
 @media screen and (max-width:480px) {
#menubtn {
	display: block;
	background-color: #2C6645;
	color: #FFF;
	border: none;
	padding: 15px 10px;
	float: right;
}
.menuarea {
	width: 100%;
	float: none;
}
#nav {
	display: none;
}
.title {
	width: 70%;
}
h2 {
	padding: 50px;
}
.wflex {
	display: block;
	padding: 30px 0px;
}
.wflex a {
	width: 100%;
	padding: 0px;
}
.nineflex {
	display: block;
	flex-wrap: wrap;
	justify-content: space-between;
}
.nineflex .box {
	width: 100%;
}
.kagoli {
	display: block;
}
.kagoli li {
	width: 100%;
	font-size: 1em;
	padding: 10px;
}
.twitter {
	width: 100%;
}
.triflex {
	display: block;
	text-align: center;
}
.acposi {
	margin: 0;
}
#access {
	position: relative;
	padding: 50px;
}
.acflex {
	display: block;
}
.accesstxt, iframe {
	width: 100%;
}
iframe {
	height: 300px;
	padding: 0px;
}
#footnav {
	display: block;
	float: left;
}
.infobox p:first-of-type, .infobox2 p:first-of-type {
	border-right: none;
}
.infobox, .infobox2 {
	display: block;
}
.triflex a {
	width: 100%;
	display: block;
	margin-bottom: 10px;
}
 input[type="checkbox"], input[type="checkbox" i] {
 width:20px!important;
 height:20px!important;
 -moz-transform:		scale(1.4);
 -webkit-transform:	scale(1.4);
 transform:		scale(1.4);
}