body > main > section {
  padding: 0 0 14.6153846154vw;
}
body > main > section > h2 {
  width: 100%;
  margin: 10.2564102564vw 0 0;
  font-family: "Noto Sans JP", serif;
  font-weight: 700;
  font-size: 5.1282051282vw;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: center;
  color: rgb(0, 100, 40);
}
body > main > section > h2 > span {
  display: inline-block;
  font-size: 2.3076923077vw;
  line-height: 1.5555555556;
  color: rgb(0, 0, 0);
}
body > main > section > a[href] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 58.7179487179vw;
  height: 11.5384615385vw;
  margin: 9.2307692308vw auto 0;
  font-family: "Noto Sans JP", serif;
  font-weight: 400;
  font-size: 3.5897435897vw;
  line-height: 1;
  text-decoration: none;
  color: rgb(255, 255, 255);
  background: url(../image/header_03_1.svg) center right 3.4615384615vw/5.3846153846vw no-repeat, linear-gradient(135deg, rgb(17, 93, 27) 0%, rgb(76, 155, 82) 100%);
}
body > main #about {
  padding: 0;
}
body > main #about > img {
  display: block;
  width: 100%;
  height: auto;
}
body > main #about > div {
  display: flex;
  flex-wrap: wrap;
  width: 89.7435897436vw;
  margin: 0 auto;
}
body > main #about > div > div:nth-of-type(2) {
  display: flex;
  flex-wrap: wrap;
}
body > main #about > div > div:nth-of-type(2) > img {
  display: block;
  width: 43.5897435897vw;
  height: auto;
  margin: 9.6153846154vw auto 0;
}
body > main #about > div > div:nth-of-type(2) > p {
  margin: 13.2051282051vw auto 0;
  padding: 5.1282051282vw;
  font-size: 2.8205128205vw;
  line-height: 1.5454545455;
  background: rgb(240, 240, 240);
}
body > main #about > div > div > p {
  width: 89.7435897436vw;
  box-sizing: border-box;
  margin: 7.1794871795vw auto 0;
  font-family: "Noto Sans JP", serif;
  font-weight: 400;
  font-size: 3.5897435897vw;
  line-height: 2;
  color: rgb(0, 0, 0);
}
body > main #report {
  width: 100%;
  margin: 18.2051282051vw 0 0;
  padding: 0 0 18.0769230769vw;
  background: rgb(240, 240, 240);
}
body > main #report > div {
  width: 100%;
  height: calc(58.7179487179vw * 1.2);
  overflow: hidden;
  position: relative;
  top: -10.2564102564vw;
}
body > main #report > div > div {
  width: calc(100vw * 1.06);
  height: calc(58.7179487179vw * 1.06);
  overflow: hidden;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) rotate(5deg);
  transform-origin: center;
}
body > main #report > div > div::before {
  content: "";
  display: block;
  width: calc(100vw * 1.06);
  height: calc(66.6666666667vw * 1.06);
  position: absolute;
  top: 50%;
  left: 50%;
  background: url(../image/index/report_01.jpg) center/cover no-repeat;
  transform: translate(-50%, -50%) rotate(-5deg);
  transform-origin: center;
}
body > main #report > h2 {
  margin: -2.5641025641vw 0 0;
}
body > main #report > p {
  width: 89.7435897436vw;
  box-sizing: border-box;
  margin: 7.1794871795vw auto 0;
  font-family: "Noto Sans JP", serif;
  font-weight: 400;
  font-size: 3.5897435897vw;
  line-height: 2;
  color: rgb(0, 0, 0);
}
body > main #report > ul {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 1.2820512821vw;
  width: 100%;
  margin: 12.8205128205vw 0 0;
  padding: 0;
}
body > main #report > ul > li {
  width: calc(50% - 0.7051282051vw);
  line-height: 0;
}
body > main #report > ul > li > img {
  width: 100%;
  height: auto;
}
body > main #report > a[href] {
  margin: 15.3846153846vw auto 0;
  background: url(../image/header_03_2.svg) bottom 2.0512820513vw right 2.0512820513vw/4.1025641026vw no-repeat, linear-gradient(135deg, rgb(17, 93, 27) 0%, rgb(76, 155, 82) 100%);
}
body > main #rules {
  overflow: hidden;
}
body > main #list {
  overflow: hidden;
  background: rgb(240, 240, 240);
}
body > main #member {
  overflow: hidden;
  padding: 0 0 7.8205128205vw;
}
body > main #member > ul {
  list-style: none;
  width: 100%;
  padding: 0;
}
body > main #member > ul.navigation {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 4.4871794872vw 6.4102564103vw;
  width: 89.8717948718vw;
  margin: 7.4358974359vw auto 0;
}
body > main #member > ul.navigation > li {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(12.8205128205vw - 2px);
  height: calc(12.8205128205vw - 2px);
  font-family: "Noto Sans JP", serif;
  font-weight: 500;
  font-size: 7.6923076923vw;
  line-height: 1;
  color: rgb(255, 255, 255);
  background: rgb(0, 140, 60);
  border: solid 1px rgb(0, 140, 60);
}
body > main #member > ul.navigation > li:nth-of-type(9) {
  margin-right: 19.2307692308vw;
}
body > main #member > ul.navigation > li.active {
  color: rgb(0, 140, 60);
  background: rgb(255, 255, 255);
}
body > main #member > ul.list {
  margin: 5.641025641vw 0 0;
  background: rgb(240, 240, 240) url(../image/index/member_01.svg) top 21.1538461538vw center/51.2820512821vw repeat-y;
}
body > main #member > ul.list > li {
  display: none;
  width: 90.1282051282vw;
  margin: 0 auto;
  padding: 6.9230769231vw 0 12.8205128205vw;
}
body > main #member > ul.list > li.active {
  display: block;
}
body > main #member > ul.list > li > h3 {
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(7.9487179487vw - 2px);
  height: calc(7.9487179487vw - 2px);
  margin: 10.2564102564vw 0 0;
  font-family: "Noto Sans JP", serif;
  font-weight: 500;
  font-size: 4.6153846154vw;
  line-height: 1;
  color: rgb(0, 140, 60);
  background: rgb(255, 255, 255);
  border: solid 1px rgb(0, 140, 60);
}
body > main #member > ul.list > li > h3:nth-of-type(1) {
  margin: 0;
}
body > main #member > ul.list > li > ul {
  list-style: none;
  width: 100%;
  margin: 2.5641025641vw 0 0;
  padding: 0;
}
body > main #member > ul.list > li > ul > li {
  width: 100%;
  margin: 3.8461538462vw 0 0;
  padding: 0 0 2.5641025641vw;
  font-family: "Noto Sans JP", serif;
  font-weight: 400;
  font-size: 3.8461538462vw;
  line-height: 1;
  color: rgb(0, 0, 0);
  border-bottom: dotted 2px rgb(200, 200, 200);
}
body > main #member > ul.list > li > ul > li > a {
  color: rgb(0, 121, 70);
  text-decoration: none;
}
@media (min-width: 768px) {
  body > header {
    height: 110px;
    position: absolute;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.75) 80%, rgba(0, 0, 0, 0) 100%);
  }
  body > main > section {
    padding: 0 0 100px;
  }
  body > main > section > h2 {
    margin: 90px 0 0;
    font-size: 50px;
  }
  body > main > section > h2 > span {
    font-size: 18px;
  }
  body > main > section > a[href] {
    width: 400px;
    height: 80px;
    margin: 72px auto 0;
    font-size: 24px;
    background: url(../image/header_03_1.svg) center right 24px/36px no-repeat, linear-gradient(135deg, rgb(17, 93, 27) 0%, rgb(76, 155, 82) 100%);
  }
  body > main #about {
    padding: 0;
  }
  body > main #about > img {
    height: 43.2291666667vw;
    min-height: 553.3333333333px;
    object-fit: cover;
  }
  body > main #about > div {
    justify-content: center;
    gap: 0 90px;
    width: 1200px;
    margin: 56px auto 0;
  }
  body > main #about > div > div {
    width: 550px;
  }
  body > main #about > div > div:nth-of-type(2) {
    align-content: center;
    justify-content: center;
    gap: 80px 0;
  }
  body > main #about > div > div:nth-of-type(2) > img {
    width: 340px;
    margin: 0;
  }
  body > main #about > div > div:nth-of-type(2) > p {
    margin: 0;
    padding: 20px 40px;
    font-size: 14px;
    line-height: 2;
  }
  body > main #about > div > div > p {
    width: 100%;
    margin: 0;
    font-size: 18px;
    line-height: 2.3333333333;
  }
  body > main #report {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 0 90px;
    margin: max(234px + 8.8541666667vw, 404px) 0 0;
    padding: 0 0 148px;
  }
  body > main #report > div {
    min-width: 1280px;
    height: 49.6354166667vw;
    min-height: 953px;
    top: min(-8.8541666667vw, -170px);
  }
  body > main #report > div > div {
    min-width: 2035.2px;
    height: 43.5041666667vw;
    min-height: 836.34px;
  }
  body > main #report > div > div::before {
    min-width: 2157.312px;
    height: 74.9066666667vw;
    min-height: 1438.208px;
  }
  body > main #report > h2 {
    margin: -2.5641025641vw 0 0;
  }
  body > main #report > p {
    width: 560px;
    margin: 56px 0 0;
    font-size: 18px;
    line-height: 2.3333333333;
  }
  body > main #report > ul {
    justify-content: space-between;
    gap: 0;
    margin: 156px auto 0;
  }
  body > main #report > ul > li {
    width: calc(25% - 6px);
  }
  body > main #report > a[href] {
    margin: 130px auto 0;
    background: url(../image/header_03_2.svg) bottom 14px right 14px/28px no-repeat, linear-gradient(135deg, rgb(17, 93, 27) 0%, rgb(76, 155, 82) 100%);
  }
  body > main #member {
    padding: 0 0 136px;
  }
  body > main #member > ul {
    width: 1200px;
  }
  body > main #member > ul.navigation {
    display: none;
  }
  body > main #member > ul.list {
    margin: 80px auto 0;
    background: transparent url(../image/index/member_01.svg) top 352px center/400px repeat-y;
  }
  body > main #member > ul.list > li {
    display: block;
    width: 100%;
    margin: 0 auto;
    padding: 0;
  }
  body > main #member > ul.list > li > h3 {
    width: 50px;
    height: 50px;
    margin: 65px 0 0;
    font-size: 30px;
    color: rgb(255, 255, 255);
    background: rgb(0, 140, 60);
    border: none;
  }
  body > main #member > ul.list > li > h3:nth-of-type(1) {
    margin: 65px 0 0;
  }
  body > main #member > ul.list > li > ul {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    width: 100%;
    margin: 15px 0 0;
    padding: 0;
    background: url(../image/index/member_02.svg) top left/contain repeat-y;
  }
  body > main #member > ul.list > li > ul > li {
    width: 33.33333%;
    margin: 12px 0 0;
    padding: 0 0 11px;
    font-size: 18px;
    border-bottom: none;
  }
}