@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;
}


li {
  list-style: none;
}

header {
  max-width: ;
  width: 100%;
}
/*
コンテンツ幅を設定するための共通クラス
*/


/*-------------------------------------------
ヘッダー
-------------------------------------------*/
/*
「position: fixed;」でヘッダーを固定し、「z-index: 10;」で前面に表示
※他のコンテンツでpositionをrelative、absolute、fixedのいずれかに
設定している場合は、z-indexの数値が大きい方が前面に表示される
*/
#header {
  width: 100%;
  height: auto;
  color: #fff;
  background-color: ;
  display: grid;
  justify-content: center;
  position: fixed;
  z-index: 30;
}
.wrapper {
  width: ;
  height: ;
  background-color: #fff;
  opacity: 0.6;
  padding: 110px 0 0 0;
}
.top-rogo {
  width: 380px;
  display: grid;
  justify-self: center;
  position: absolute;
  padding: 17px 10px 0 0;

}




/*
ハンバーガーメニュー
メニューが閉じている時は、「left: -300px;」で画面左に隠し、
「opacity: 0;」で非表示にしている
*/
#navi {
  position: fixed;
  top: 0;
  right: -300px;
  width: ;
  color: #fff;
  padding: 10% 0 0 60%;
  transition: all 2.5s;
  z-index: 20;
  opacity: 0;
  font-size: 20px;
}
#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 80%;
  margin: 20px;
}
/*
ハンバーガーメニューの線の設定（メニューが閉じている時）
*/
.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: 100%;
  height: 100%;
  background: #164d17;
  opacity: 2.8;
  z-index: 10;
  cursor: pointer;
}


.top-bac {
  display: grid;

}
.top-img {
  max-width:;
  width: 100%;
  height: auto;
  object-fit: cover;
  position: relative;
}

.content {
    display: grid;
    grid-template-columns: 60%;
    grid-template-rows: auto;
    place-content: center;
    word-break: break-all;
}

.box-H  {
  display: grid;
  place-items: center;
  font-size: 18px;
  padding: 30px 0;
  
    
  }
  


.info {
  display: grid;
  grid-template-columns: 80%;
  grid-template-rows: auto;
  place-content: center;
  padding: 80px 0;
}
.info-box {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(270px, auto));
  grid-template-rows: 50px;
  font-size: 22px;
  justify-content: center;
  justify-items: center;
  row-gap: 20px;
  
  
}
.info-text1 {
  width: 220px;
  display: grid;
  place-items: end;
  box-shadow: 5px 5px 0 0 #828282;
  border-radius: 3px;
  padding: 0 20px 10px 0;
}
.info-text2 {
  width: 150px;
  display: grid;
  place-items: end;
  box-shadow: 5px 5px 0 0 #828282;
  border-radius: 3px;
  padding: 0 20px 10px 0;
}



.oshirase-top {
  display: grid;
  grid-template-columns: auto;
  grid-template-rows: auto;
  place-content: center;
}



.H2-1 {
  display: grid;
  place-items: center;
  padding: 100px 0 0 0 ;
}
.H2-2 {
  display: grid;
  place-items: center;
  padding: 0 0 5px;
}

.line1 {
  display: grid;
  place-self: center;
  width: 350px;
  border-radius: 5px;
  border: solid 3px #979393;
}

.line2 {
  display: grid;
  place-self: center;
  width: 100%;
  border-radius: 3px;
  border: solid 1x #979393;
  margin: 50px 0;

}
.line3 {
  display: grid;
  place-self: center;
  width: 80%;
  border-radius: 3px;
  border: solid 1px #000000;
  

}

 /* お知らせ毎月更新～*/

.oshirase_list {
  display: grid;
  grid-template-columns: 70%;
  place-content: center;
}

.month {
  place-self: start;
  height: 30px;
  
}

.Jan {
 display: grid;
 grid-template-columns: repeat(auto-fill, minmax(380px, 1fr));
 grid-auto-rows: 350px;
 row-gap:30px;
 padding: 0 30px 0 30px;
}
.month1-tex {
  display: grid;
  place-self: ;
  font-size: 18px;
  height: auto;
  word-break: break-all;
  padding: ;
}
.month1-im1 {
  display: grid;
  justify-items: center;
  place-self:;
  
}

/*-2月------------------------------------*/

.Feb {
 display: grid;
 grid-template-columns: repeat(auto-fill, minmax(380px, 1fr));
 grid-auto-rows: 350px;
 row-gap:30px;
 padding: 0 30px 0 30px;
}
.month2-im1 {
  display: grid;
  justify-items:center;
  width: ;
}
.month2-tex {
  display: grid;
  font-size: 18px;
  height: auto;
  word-break: break-all;
}




/*-３月------------------------------------*/





.content2 {
    display: grid;
    grid-template-columns: 100%;
    grid-template-rows: auto;
    place-content: center;
    padding: 100px 0;
}

.box-Agata {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(380px, 1fr));
    grid-template-rows: auto;
    place-items: center;
    place-items: center;
    row-gap: 30px;
    padding: 0 40px 0 40px; 
}

.Agata-top {
  width: 300px;
  height: auto;
  display: grid;
  place-items: center;
  color: #fff;
  background-color: rgb(4, 2, 38);
  padding: 30px;
}
.Agata1-text {
  width: 300px;
}
.Agata1-img {
    display: grid;
    justify-items: center;
}
.Agata1-img2 {
    display: grid;
    justify-items: center;
}

.box2-Agata {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(380px, 1fr));
    grid-template-rows: auto;
    place-items: center;
    row-gap: 30px;
    padding: 0 40px 0 40px;  
}
.Agata2-text {
  width: 300px;
  padding: 50px 0 50px 0;
}
.Agata2-img {
    display: grid;
    justify-items: center;
}

.box3 {
  display: grid;
  grid-template-columns: 80%;
  place-content: center;
  place-items: center;
 
}

.box-h3 {
  padding: 50px 0 0 0;
}
.box3-Agata {
  display: grid;
  
  place-self: center;
  word-break: break-all;
  padding:20px 0 20px 0 ;
}

.box4-Agata {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(400px, 1fr));
    grid-template-rows: auto;
    place-items: center;
    row-gap: 30px;
    column-gap:;   
}
.box3 {
  display: grid;
  place-content: center;
}


.Agata4-text {
  width: ;
  padding: 50px 0;
}
.Agata4-img {
  display: grid;
  place-items: center;

}

.box5 {
  display: grid;
  place-items: center;
}




.footer {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(400px, 1fr));
    grid-template-rows: auto;
    justify-content: center;
    place-items: center;
    padding: 50px;
}
.address {
    font-size: 20px;
    height: 100%;
    display: grid;
    align-items: center;
    padding: 0 0 40px 0;
    
}
.map {
    width: 100%;
    height: 100%;
    display: grid;
    place-content: center;
    padding: 15px;
  
}




form {
  display: grid;
  place-content: center;
  /* Just to center the form on the page */
  margin: 0 auto;
  width: 75%;
  height: 400px;

  /* To see the limits of the form */
  padding: ;
  border: ;
  border-radius: ;
}

.toiawase {
  justify-self: center;
  text-decoration: underline solid 1px  rgb(0, 0, 0) ;
  text-underline-offset: 5px;
  padding: 0 0 20px 0;
}


label {
  /* To make sure that all label have the same size and are properly align */
  display: inline-block;
  width: 90px;
  text-align: right;
}

input,
textarea {
  /* To make sure that all text field have the same font settings
     By default, textarea are set with a monospace font */
  font: 1em sans-serif;

  /* To give the same size to all text field */
  width: 400px;
  height: 40px;
  -moz-box-sizing: border-box;
  box-sizing: border-box;

  /* To harmonize the look & feel of text field border */
  border: 1px solid #999;
}

input:focus,
textarea:focus {
  /* To give a little highlight on active elements */
  border-color: #000;
}

textarea {
  /* To properly align multiline text field with their label */
  vertical-align: top;

  /* To give enough room to type some text */
  height: 5em;

  /* To allow users to resize any textarea vertically
     It works only on Chrome, Firefox and Safari */
  resize: vertical;
}

.button {
  display: grid;
  justify-items: center;

  /* To position the buttons to the same position of the text fields */
  padding-left: ; /* same size as the label elements */
}

button {
  /* This extra margin represent the same space as the space between
     the labels and their text fields */
  margin-left: 0.5em;
  width: 200px;
  height: 35px;
  background-color: black;
  color: white;
  margin: 30px 0 0 0;

}



.content3-bac {
  
}

.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;
}










