@charset "UTF-8";

html {
  font-size: 100%;
}

a,
a:hover,
a:visited {
  color: inherit;
}

/*
フッターを画面下に配置するために、
「position: relative;」を設定
「min-height」で最小の高さを画面の高さにあわせる
*/
body {
  color: #333;
  position: relative;
}

* {
  margin: 0;
  padding: 0;
}

/*リンクのデコレーション無し*/
a {
  text-decoration: none;
}


li {
  list-style: none;
}

header {
  max-width: 1500px;
  width: 100%;
}

/*
コンテンツ幅を設定するための共通クラス
*/


/*-------------------------------------------
ヘッダー
-------------------------------------------*/
/*
「position: fixed;」でヘッダーを固定し、「z-index: 10;」で前面に表示
※他のコンテンツでpositionをrelative、absolute、fixedのいずれかに
設定している場合は、z-indexの数値が大きい方が前面に表示される
*/
#header {
  width: 100%;
  height: auto;
  color: #fff;
  display: grid;
  justify-content: center;
  position: fixed;
  z-index: 30;
}

.wrapper {

  background-color: #fff;
  opacity: 0.8;
  padding: 110px 0 0 0;
}

.top-rogo {
  width: 380px;
  display: grid;
  position: absolute;
  padding: 17px 10px 0 30px;

}




/*
ハンバーガーメニュー
メニューが閉じている時は、「left: -300px;」で画面左に隠し、
「opacity: 0;」で非表示にしている
*/
#navi {
  position: fixed;
  top: 0;
  right: -300px;
  color: #fff;
  padding: 10% 0 0 50%;
  transition: all 2.5s;
  z-index: 20;
  opacity: 0;
  font-size: 25px;
}

#navi a {

  color: #fff;
}

#navi ul {
  padding: 60px 0 0 0;

}

#navi li {
  margin-bottom: 14px;
}

/*
ハンバーガーメニュー
メニューが開いている時は、「left: 0;」「opacity: 1;」で
画面左に表示する
*/
.open #navi {
  left: 0;
  opacity: 1;
}

.toggle_btn {
  width: 30px;
  height: 22px;
  position: absolute;
  transition: all 0.5s;
  cursor: pointer;
  z-index: 20;
  padding: 0 0 0 85%;
  margin: 30px 0;
}

/*
ハンバーガーメニューの線の設定（メニューが閉じている時）
*/
.toggle_btn span {
  display: block;
  position: absolute;
  width: 40px;
  height: 3px;
  background-color: #0b0b0b;
  border-radius: 4px;
  transition: all 0.5s;
}

/*
1本目の線の位置を設定
*/
.toggle_btn span:nth-child(1) {
  top: 1px;
}

/*
2本目の線の位置を設定
*/
.toggle_btn span:nth-child(2) {
  bottom: 10px;
}

/*
ハンバーガーメニューの線の設定（メニューが開いている時）
線の色を白に変更
*/
.open .toggle_btn span {
  background-color: #fff;
}

/*
1本目の線を-45度回転
*/
.open .toggle_btn span:nth-child(1) {
  -webkit-transform: translateY(4px) rotate(-45deg);
  transform: translateY(4px) rotate(-45deg);
}

/*
2本目の線を45度回転
*/
.open .toggle_btn span:nth-child(2) {
  -webkit-transform: translateY(-4px) rotate(45deg);
  transform: translateY(-4px) rotate(45deg);
}

#mask {
  display: none;
  transition: all 0.5s;
}

/*
メニューを開いている時は、全体を黒背景にする
*/
.open #mask {
  display: block;
  position: fixed;
  top: 0;
  right: 0;
  width: 60%;
  height: 100%;
  background: #164d17;
  opacity: 2.8;
  z-index: 10;
  cursor: pointer;
}


.top-bac {
  display: grid;

}

.top-img {
  width: 100%;
  height: auto;
  object-fit: cover;
  position: relative;
}

.H-list {
  width: 100%;
  height: 80px;
  background-color: #d1cccc;
  padding: 30px 50px;

}


.box-H {
  width: 100%;
  height: 10px;
  background-color: rgb(255, 248, 35);
  margin: 30px 0;
  padding: 15px 0 0 0;
  text-align: center;
}

.content {
  display: grid;
  grid-template-columns: 100%;
  grid-template-rows: auto;
  justify-items: center;
  font-size: 20px;
  margin: 30px 50px;

}

.line-1 {
  width: 100%;
  border: 0;
  border-top: 5px solid #99d2ac;
  margin: 32px 0;
}


.content3 {
  display: grid;
  width: 100%;
  height: auto;
  background-color: #48790b;
  grid-template-columns: repeat(auto-fill, minmax(400px, 1fr));
  grid-template-rows: auto;
}

.foot-im {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: 90px;
  justify-content: start;
  grid-template-areas: "a" "b";
  padding: 50px 0 0 30px;
}


.foot-im1 {
  display: grid;
  width: 100px;
  height: 100px;
  grid-area: a;

}

.foot-im2 {
  width: 300px;
  height: 100px;
  place-items: start;
  grid-area: b;
}


.foot-menw {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto;
  place-items: start;
  font-size: 20px;
  font-style: bold;
  color: #fff;
  padding: 50px 0 100px 30px;
}