@charset "UTF-8";
/* A Modern CSS Reset */
*, *::before, *::after {
  box-sizing: border-box;
}

body, h1, h2, h3, h4, p, figure, blockquote, dl, dd {
  margin: 0;
}

ul, li[role=list], ol[role=list] {
  list-style: none;
  margin: 0;
  padding: 0;
}

body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

a:not([class]) {
  text-decoration-skip-ink: auto;
}

img, picture {
  max-width: 100%;
  display: block;
}

input, button, textarea, select {
  font: inherit;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}
html {
  font-size: 16px;
  scroll-behavior: smooth;
}

body {
  color: #41220F;
  font-family: "Noto Sans JP", sans-serif;
  font-style: normal;
  letter-spacing: 2px;
  position: relative;
}

img {
  width: 100%;
}

.wrapper {
  overflow: hidden;
  position: relative;
}

a {
  text-decoration: none;
  transition: 0.3s;
}
a:hover {
  opacity: 0.8;
}

.box {
  width: 75.6510416667vw;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .box {
    width: 100%;
  }
}

.spshow {
  display: none;
}

@media screen and (max-width: 768px) {
  .spnone {
    display: none;
  }
  .spshow {
    display: block;
  }
}
.fwh-header {
  position: fixed;
  width: 100%;
  top: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-right: 1%;
  z-index: 100;
}
@media screen and (max-width: 768px) {
  .fwh-header {
    align-items: flex-start;
  }
}
.fwh-header h1 {
  width: 100px;
}
@media screen and (max-width: 768px) {
  .fwh-header h1 {
    width: 17%;
    max-width: 110px;
    position: relative;
    z-index: 3;
  }
}
.fwh-header nav {
  font-size: 1.0416666667vw;
  box-shadow: 0px 3px 18px rgba(106, 152, 97, 0.14);
  background: #fff;
  border-radius: 45px;
  display: flex;
  justify-content: space-between;
  height: 50%;
  width: 47%;
  min-width: 500px;
  padding: 5px;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .fwh-header nav {
    font-size: 2.0833333333vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-header nav {
    justify-content: flex-end;
    width: 70%;
    min-width: 255px;
    flex-wrap: wrap;
    border-radius: 22px;
    margin-top: 1.5%;
  }
}
.fwh-header nav ul {
  display: flex;
  align-items: center;
  padding: 0 0 0 5%;
}
@media screen and (max-width: 768px) {
  .fwh-header nav ul {
    display: none;
    width: 100%;
    order: 3;
    flex-wrap: wrap;
    padding-top: 10%;
    padding: 8% 1% 0;
  }
}
.fwh-header nav ul li {
  margin-right: 13%;
}
@media screen and (max-width: 768px) {
  .fwh-header nav ul li {
    width: 100%;
    text-align: center;
    margin: 0 0 5%;
  }
}
.fwh-header nav ul li a {
  color: #41220F;
  padding: 0 1%;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .fwh-header nav ul li a {
    font-size: 1.5625vw;
    padding: 2% 1% 3%;
    display: block;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-header nav ul li a {
    font-size: 3.125vw;
  }
}
.fwh-header__toggle {
  display: none;
}
@media screen and (max-width: 768px) {
  .fwh-header__toggle {
    display: flex;
    position: relative;
    width: 16%;
    margin-right: 2%;
    z-index: 200;
    order: 1;
  }
  .fwh-header__toggle.open + ul {
    display: flex;
  }
  .fwh-header__toggle:before, .fwh-header__toggle:after {
    content: "";
    position: absolute;
    height: 2px;
    background-color: #41220F;
    width: 55%;
    left: 50%;
    transform: translateX(-50%);
  }
  .fwh-header__toggle:before {
    top: 28%;
  }
  .fwh-header__toggle:after {
    bottom: 24%;
  }
  .fwh-header__toggle button {
    height: 100%;
    width: 100%;
    border: none;
    background: #FFF;
  }
  .fwh-header__toggle button:before {
    content: "";
    position: absolute;
    height: 2px;
    background-color: #41220F;
    width: 55%;
    left: 50%;
    transform: translateX(-50%);
  }
  .fwh-header__toggle.open:before {
    transform: translateX(-50%) rotate(45deg);
    transform-origin: left top;
    top: 30%;
  }
  .fwh-header__toggle.open:after {
    transform: translateX(-50%) rotate(-45deg);
    transform-origin: left bottom;
  }
  .fwh-header__toggle.open button:before {
    opacity: 0;
  }
}
.fwh-header__btn {
  position: relative;
  order: 2;
  width: 40%;
}
@media screen and (max-width: 768px) {
  .fwh-header__btn {
    width: 80%;
  }
}
.fwh-header__btn .btn {
  padding: 4% 6% 4% 3%;
  font-size: 1.0416666667vw;
  white-space: nowrap;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .fwh-header__btn .btn {
    font-size: 2.0833333333vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-header__btn .btn {
    padding: 3.4% 12% 3.4% 6%;
    font-size: 1.4322916667vw;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-header__btn .btn {
    font-size: 2.8645833333vw;
  }
}

.fwh-cta {
  padding: 6rem 5% 0;
  background: url(../images/cta_bg.png) no-repeat bottom center;
  background-size: cover;
}
@media screen and (max-width: 768px) {
  .fwh-cta {
    padding: 16% 0 0;
    background: url(../images/cta_bg-sp.png) no-repeat bottom center;
    background-size: cover;
  }
}
.fwh-cta .box {
  position: relative;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .fwh-cta .box {
    display: block;
  }
}
.fwh-cta .box:before {
  background: #8FC329;
  content: "";
  position: absolute;
  width: 100vw;
  left: 50%;
  bottom: 0;
  height: 34%;
  transform: translateX(-50%);
}
@media screen and (max-width: 768px) {
  .fwh-cta .box:before {
    height: 17%;
  }
}
.fwh-cta__title {
  padding-bottom: 6%;
  position: relative;
  z-index: 1;
  width: 52%;
}
@media screen and (max-width: 768px) {
  .fwh-cta__title {
    width: 85%;
    margin: 0 auto;
    padding-bottom: 0;
  }
}
.fwh-cta__title:before {
  content: "";
  position: absolute;
  right: -19%;
  top: 1%;
  width: 19.53125vw;
  height: 30%;
  background: url(../images/cta_img03.png) no-repeat;
  background-size: 100%;
}
@media screen and (max-width: 768px) {
  .fwh-cta__title:before {
    top: 0%;
    width: 42%;
    right: -12%;
  }
}
.fwh-cta__title p {
  width: 24.4140625vw;
  margin: 0 0 1% -6%;
}
@media screen and (max-width: 768px) {
  .fwh-cta__title p {
    width: 55%;
  }
}
.fwh-cta__title h2 {
  margin: 0% 0% 2% 3%;
}
@media screen and (max-width: 768px) {
  .fwh-cta__title h2 {
    margin-left: 0;
  }
}
.fwh-cta__title ul {
  width: 100%;
  display: flex;
  justify-content: space-between;
  margin-bottom: 3%;
}
.fwh-cta__title ul li {
  width: calc(33.3333333333% - 4px);
}
.fwh-cta__title span {
  width: 28.0598958333vw;
  margin: 0 auto;
  display: block;
}
@media screen and (max-width: 768px) {
  .fwh-cta__title span {
    width: 63%;
    margin-bottom: 5%;
  }
}
.fwh-cta__btns {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  position: relative;
  z-index: 1;
  margin-top: 4%;
  width: 46%;
}
@media screen and (max-width: 768px) {
  .fwh-cta__btns {
    width: 73%;
    margin: 0 auto;
    align-items: center;
    padding-bottom: 5%;
  }
}
.fwh-cta__btns p {
  margin-bottom: 4%;
}
.fwh-cta__btns p img {
  position: relative;
  right: -3%;
}
@media screen and (max-width: 768px) {
  .fwh-cta__btns p img {
    right: 0;
  }
}
.fwh-cta__btns span {
  display: block;
  text-align: center;
  width: 31.25vw;
  color: #FFF;
  padding: 2% 0 1%;
  font-size: 1.171875vw;
  margin: 0 auto;
  position: relative;
  left: 5%;
}
@media screen and (max-width: 768px) {
  .fwh-cta__btns span {
    font-size: 2.34375vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-cta__btns span {
    width: 90%;
    left: initial;
    padding-top: 3%;
  }
}
.fwh-cta__btns span:before, .fwh-cta__btns span:after {
  content: "/";
  margin: 0 2%;
  display: inline-block;
  transform: rotate(15deg);
}
.fwh-cta__btns span:before {
  transform: scale(-1, 1) rotate(17deg);
}

.btn {
  width: 90%;
  border: 2px solid #fff;
  border-radius: 43px;
  font-size: 1.8229166667vw;
  text-align: center;
  padding: 3% 5%;
  box-shadow: 0px 3px 18px rgba(106, 152, 97, 0.34);
  position: relative;
  cursor: pointer;
  display: block;
  transition: 0.3s;
}
@media screen and (max-width: 768px) {
  .btn {
    font-size: 3.6458333333vw;
  }
}
.btn:hover {
  opacity: 0.6;
}
@media screen and (max-width: 768px) {
  .btn {
    font-size: 1.5625vw;
    padding: 4% 5%;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .btn {
    font-size: 3.125vw;
  }
}
.btn:before {
  content: "";
  position: absolute;
  right: 4%;
  top: 30.9%;
  width: 9%;
  height: 42%;
}
.btn_red {
  background: transparent linear-gradient(101deg, #DD4557 0%, #EA6D5D 100%) 0% 0% no-repeat padding-box;
  color: #fff;
}
@media screen and (max-width: 768px) {
  .btn_red {
    background: #D0474F;
  }
}
.btn_red:before {
  background: url(../images/arrow_wh.png) no-repeat;
  background-size: 100%;
}
.btn_white {
  background: #fff;
  color: #8FC329;
}
.btn_white:before {
  background: url(../images/arrow_gr.png) no-repeat;
  background-size: 100%;
}

.fwh-sec01 {
  background: #8FC329;
  padding: 0 5% 5%;
}
@media screen and (max-width: 768px) {
  .fwh-sec01 {
    padding-top: 5%;
  }
}
.fwh-sec01__title {
  position: relative;
  padding: 4% 2% 4% 3.5%;
  border-top: solid 2px #ADD35B;
  border-right: solid 2px #ADD35B;
  display: flex;
  z-index: 1;
  justify-content: space-between;
  align-items: flex-start;
}
@media screen and (max-width: 768px) {
  .fwh-sec01__title {
    display: block;
    position: relative;
    padding: 5%;
  }
}
.fwh-sec01__title:before, .fwh-sec01__title:after {
  content: "";
  position: absolute;
  height: 100%;
}
.fwh-sec01__title:before {
  border-top: solid 2px #fff;
  border-left: solid 2px #fff;
  left: 0;
  top: -2px;
  width: 54%;
}
.fwh-sec01__title:after {
  right: 0;
  bottom: 0;
  background: linear-gradient(154deg, transparent 0%, transparent 50%, rgba(255, 255, 255, 0.3) 50%);
  width: 58%;
  z-index: -1;
}
.fwh-sec01__title h3 {
  color: #fff;
  font-size: 2.9296875vw;
  font-weight: 900;
  letter-spacing: 4px;
  margin-right: 4%;
  width: 65%;
}
@media screen and (max-width: 768px) {
  .fwh-sec01__title h3 {
    font-size: 5.859375vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec01__title h3 {
    width: 100%;
    font-size: 1.8880208333vw;
    letter-spacing: 2px;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-sec01__title h3 {
    font-size: 3.7760416667vw;
  }
}
.fwh-sec01__title h3 span {
  display: inline-block;
  background-color: #fff;
  color: #41220F;
  padding: 0% 2.5% 1% 2%;
  line-height: 1;
  margin-top: 3%;
}
@media screen and (max-width: 768px) {
  .fwh-sec01__title h3 span {
    font-size: 2.6692708333vw;
    letter-spacing: px;
    display: block;
    text-align: center;
    margin-top: 4%;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-sec01__title h3 span {
    font-size: 5.3385416667vw;
  }
}
.fwh-sec01__title h3 span b {
  color: #8FC329;
  font-size: 4.1666666667vw;
}
@media screen and (max-width: 768px) {
  .fwh-sec01__title h3 span b {
    font-size: 8.3333333333vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec01__title h3 span b {
    width: 100%;
    font-size: 3.7760416667vw;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-sec01__title h3 span b {
    font-size: 7.5520833333vw;
  }
}
.fwh-sec01__title img {
  width: 31%;
  margin-top: -2.5%;
}
@media screen and (max-width: 768px) {
  .fwh-sec01__title img {
    position: absolute;
    top: 5%;
    right: 5%;
    margin-top: 0;
    width: 25%;
  }
}
.fwh-sec01__content {
  text-align: center;
  padding: 5% 0 3%;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .fwh-sec01__content {
    padding-top: 8%;
  }
}
.fwh-sec01__content h4 {
  font-weight: 900;
  position: relative;
  font-size: 1.8229166667vw;
  letter-spacing: 3px;
  padding-bottom: 3%;
  margin-bottom: 3%;
}
@media screen and (max-width: 768px) {
  .fwh-sec01__content h4 {
    font-size: 3.6458333333vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec01__content h4 {
    padding-bottom: 4%;
    margin-bottom: 4%;
  }
}
.fwh-sec01__content h4:before {
  content: "";
  width: 2.8645833333vw;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  background: url(../images/title_line01.png) top center no-repeat;
  background-size: 100%;
  height: 10%;
}
@media screen and (max-width: 768px) {
  .fwh-sec01__content h4:before {
    width: 8%;
  }
}
.fwh-sec01__content h4 span {
  color: #8FC329;
  font-size: 2.9296875vw;
}
@media screen and (max-width: 768px) {
  .fwh-sec01__content h4 span {
    font-size: 5.859375vw;
  }
}
.fwh-sec01__content p {
  font-size: 1.6276041667vw;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  .fwh-sec01__content p {
    font-size: 3.2552083333vw;
  }
}
.fwh-sec01__content p b {
  color: #D0474F;
}
.fwh-sec01__content ul {
  display: flex;
  width: 58.59375vw;
  justify-content: space-between;
  margin: 4% auto 0;
}
@media screen and (max-width: 768px) {
  .fwh-sec01__content ul {
    display: block;
    width: 80%;
  }
}
.fwh-sec01__content ul li {
  width: 28.3333333333%;
  position: relative;
}
@media screen and (max-width: 768px) {
  .fwh-sec01__content ul li {
    width: 100%;
    margin: 0 auto 5%;
  }
}
.fwh-sec01__content ul li p {
  position: absolute;
  bottom: 3%;
  left: 0;
  width: 100%;
  z-index: 1;
  letter-spacing: 0;
  font-size: 1.4973958333vw;
  min-height: 25%;
  font-weight: 700;
  display: flex;
  align-items: flex-start;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .fwh-sec01__content ul li p {
    font-size: 2.9947916667vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec01__content ul li p {
    min-height: initial;
    padding-bottom: 15%;
    font-size: 1.8880208333vw;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-sec01__content ul li p {
    font-size: 3.7760416667vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec01__content ul li img {
    width: 65%;
    margin: 0 auto;
  }
}
.fwh-sec01__content ul li:after {
  content: "";
  position: absolute;
  top: 27%;
  right: -22%;
  width: 2.0833333333vw;
  height: 6%;
  background: url(../images/sec01_arrow.png) center top no-repeat;
  background-size: 100%;
}
@media screen and (max-width: 768px) {
  .fwh-sec01__content ul li:after {
    top: initial;
    right: 50%;
    transform: translateX(50%) rotate(90deg);
    bottom: 2%;
    width: 8%;
  }
}
.fwh-sec01__content ul li:last-child:after {
  display: none;
}

.fwh-sec02 {
  padding: 4% 0 1%;
  background: #F8F8F8;
}
@media screen and (max-width: 768px) {
  .fwh-sec02 {
    padding-top: 8%;
  }
}
.fwh-sec02 .box {
  max-width: calc(1000px + 10%);
  padding: 0 5%;
}
.fwh-sec02 h3 {
  font-size: 3.8411458333vw;
  font-weight: 900;
  text-align: center;
  letter-spacing: 3px;
  margin-bottom: 4%;
}
@media screen and (max-width: 768px) {
  .fwh-sec02 h3 {
    font-size: 7.6822916667vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec02 h3 {
    width: 90%;
    margin: 0 auto 8%;
    line-height: 1.2;
  }
}
.fwh-sec02 h3 span {
  font-size: 2.6692708333vw;
}
@media screen and (max-width: 768px) {
  .fwh-sec02 h3 span {
    font-size: 5.3385416667vw;
  }
}
.fwh-sec02 h3 span .green {
  font-size: 3.8411458333vw;
  color: #8FC329;
}
@media screen and (max-width: 768px) {
  .fwh-sec02 h3 span .green {
    font-size: 7.6822916667vw;
  }
}
.fwh-sec02 h3 span .red {
  font-size: 3.8411458333vw;
  color: #D0474F;
}
@media screen and (max-width: 768px) {
  .fwh-sec02 h3 span .red {
    font-size: 7.6822916667vw;
  }
}
.fwh-sec02__tab img {
  height: 52px;
  width: auto;
  margin: 0 auto -1px;
}
.fwh-sec02__exam {
  margin-bottom: 5%;
  box-shadow: 0px 3px 18px rgba(106, 152, 97, 0.14);
  position: relative;
}
@media screen and (max-width: 768px) {
  .fwh-sec02__exam {
    margin-bottom: 10%;
  }
}
.fwh-sec02__exam:after {
  content: "";
  position: absolute;
  width: 3.4505208333vw;
  height: 9%;
  background: url(../images/sec02_arrow.png) no-repeat top center;
  left: 50%;
  transform: translateX(-50%);
  background-size: 100%;
  z-index: 1;
  bottom: -7%;
}
@media screen and (max-width: 768px) {
  .fwh-sec02__exam:after {
    width: 9%;
    height: 10%;
    bottom: -9%;
  }
}
.fwh-sec02__exam-title {
  text-align: center;
}
.fwh-sec02__exam-title p {
  background: #41220F;
  color: #fff;
  font-size: 1.4973958333vw;
  padding: 2%;
  font-weight: 700;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .fwh-sec02__exam-title p {
    font-size: 2.9947916667vw;
  }
}
.fwh-sec02__exam-title p b {
  font-size: 1.8229166667vw;
}
@media screen and (max-width: 768px) {
  .fwh-sec02__exam-title p b {
    font-size: 3.6458333333vw;
  }
}
.fwh-sec02__exam-title p b span {
  font-size: 1.4973958333vw;
}
@media screen and (max-width: 768px) {
  .fwh-sec02__exam-title p b span {
    font-size: 2.9947916667vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec02__exam-title p b .spblock {
    display: block;
  }
  .fwh-sec02__exam-title p b:first-child {
    display: block;
  }
}
.fwh-sec02__exam-text {
  text-align: center;
  padding: 3%;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .fwh-sec02__exam-text {
    padding: 5% 4%;
  }
}
.fwh-sec02__exam-text p {
  font-size: 1.4973958333vw;
}
@media screen and (max-width: 768px) {
  .fwh-sec02__exam-text p {
    font-size: 2.9947916667vw;
  }
}
.fwh-sec02__exam.green:after {
  display: none;
}
.fwh-sec02__exam.green .fwh-sec02__exam-title p {
  background: #8FC329;
}
.fwh-sec02__title {
  background: #41220F;
  padding: 2%;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .fwh-sec02__title {
    padding: 4% 2%;
  }
}
.fwh-sec02__title p {
  color: #FFF;
  font-size: 1.8229166667vw;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .fwh-sec02__title p {
    font-size: 3.6458333333vw;
  }
}

.fwh-sec03 {
  padding: 0 5% 4%;
  position: relative;
  background: url(../images/cta_bg.png) no-repeat top center;
  background-size: 100%;
}
@media screen and (max-width: 768px) {
  .fwh-sec03 {
    background: url(../images/cta_bg-sp.png) no-repeat top center;
    background-size: 100%;
  }
}
.fwh-sec03:before, .fwh-sec03:after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
}
.fwh-sec03:before {
  background: linear-gradient(196deg, transparent 0%, transparent 62%, rgb(143, 195, 40) 62%);
  top: 0;
  height: 19%;
}
@media screen and (max-width: 768px) {
  .fwh-sec03:before {
    background: linear-gradient(200deg, transparent 0%, transparent 62%, rgb(143, 195, 40) 62%);
    top: 0;
  }
}
.fwh-sec03:after {
  background: rgb(143, 195, 40);
  bottom: 0;
  height: 81%;
}
@media screen and (max-width: 768px) {
  .fwh-sec03:after {
    height: 83%;
  }
}
.fwh-sec03 .box {
  position: relative;
  z-index: 1;
}
.fwh-sec03__lead {
  display: flex;
  justify-content: space-between;
  max-width: 1040px;
  margin: 0 auto;
  padding-top: 7%;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__lead {
    display: block;
    position: relative;
  }
}
.fwh-sec03__lead-title {
  position: relative;
}
.fwh-sec03__lead-title:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 2%;
  height: 70%;
  width: 2px;
  background: #41220F;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__lead-title:before {
    top: 106%;
    left: 2%;
    height: 45%;
  }
}
.fwh-sec03__lead-title h3 {
  font-weight: 900;
  font-size: 2.2786458333vw;
  margin-bottom: 5%;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__lead-title h3 {
    font-size: 4.5572916667vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec03__lead-title h3 {
    width: 80%;
  }
}
.fwh-sec03__lead-title h3 span {
  color: #8FC329;
  font-size: 2.9947916667vw;
  vertical-align: baseline;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__lead-title h3 span {
    font-size: 5.9895833333vw;
  }
}
.fwh-sec03__lead-title h3 span.sizel {
  font-size: 4.5572916667vw;
  letter-spacing: 5px;
  position: initial;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__lead-title h3 span.sizel {
    font-size: 9.1145833333vw;
  }
}
.fwh-sec03__lead-img {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__lead-img {
    margin: -10% 0 0 auto;
    width: 43%;
  }
}
.fwh-sec03__head {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  max-width: 1040px;
  margin: 0 auto 3%;
}
.fwh-sec03__head p:first-child {
  width: 45%;
  padding-top: 23%;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__head p:first-child {
    width: 73%;
    padding-top: 3%;
  }
}
.fwh-sec03__head p:last-child {
  width: 50%;
  margin-right: -5%;
  padding-top: 9%;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__head p:last-child {
    width: 41%;
  }
}
.fwh-sec03__points {
  padding-bottom: 2%;
}
.fwh-sec03__point {
  background: #fff;
  padding: 3% 11.5% 5%;
  margin-bottom: 4.5%;
  box-shadow: 0px 3px 18px rgba(106, 152, 97, 0.5);
  position: relative;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point {
    padding: 5%;
  }
}
.fwh-sec03__point:before {
  content: "";
  position: absolute;
  top: 10px;
  left: 10px;
  width: 12.7604166667vw;
  height: 15%;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point:before {
    width: 20%;
  }
}
.fwh-sec03__point:nth-child(1):before {
  background: url(../images/sec03_point01.png) no-repeat top center;
  background-size: 100%;
}
.fwh-sec03__point:nth-child(2):before {
  background: url(../images/sec03_point02.png) no-repeat top center;
  background-size: 100%;
}
.fwh-sec03__point:nth-child(3):before {
  background: url(../images/sec03_point03.png) no-repeat top center;
  background-size: 100%;
}
.fwh-sec03__point-title {
  margin-bottom: 4%;
  position: relative;
  z-index: 1;
}
.fwh-sec03__point-title p {
  text-align: center;
  font-size: 1.8229166667vw;
  position: relative;
  padding-bottom: 2%;
  margin-bottom: 1%;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-title p {
    font-size: 3.6458333333vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-title p {
    margin-bottom: 2%;
  }
}
.fwh-sec03__point-title p:before {
  content: "";
  width: 2.8645833333vw;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  background: url(../images/title_line01.png) top center no-repeat;
  background-size: 100%;
  height: 10%;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-title p:before {
    width: 8%;
  }
}
.fwh-sec03__point-title p b {
  color: #8FC329;
}
.fwh-sec03__point-title h4 {
  font-size: 2.2786458333vw;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-title h4 {
    font-size: 4.5572916667vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-title h4 {
    font-size: 2.2135416667vw;
    letter-spacing: 0;
    width: 110%;
    margin-left: -5%;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-sec03__point-title h4 {
    font-size: 4.4270833333vw;
  }
}
.fwh-sec03__point-title h4 span {
  color: #D0474F;
}
.fwh-sec03__point-detail {
  margin-bottom: 3%;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-detail {
    margin-bottom: 5%;
  }
}
.fwh-sec03__point-detail .img_sizes {
  width: 48.1770833333vw;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-detail .img_sizes {
    width: 100%;
  }
}
.fwh-sec03__point-detail p {
  text-align: center;
  font-size: 1.4973958333vw;
  margin-bottom: 1%;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-detail p {
    font-size: 2.9947916667vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-detail p {
    margin-bottom: 3%;
  }
}
.fwh-sec03__point-detail span {
  text-align: center;
  font-size: 1.171875vw;
  margin-bottom: 1.5%;
  display: block;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-detail span {
    font-size: 2.34375vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-detail span {
    margin-bottom: 6%;
  }
}
.fwh-sec03__point-detail dl {
  display: flex;
  flex-wrap: wrap;
  letter-spacing: 0;
}
.fwh-sec03__point-detail dl dt {
  background: #8FC329;
  color: #fff;
  display: flex;
  align-items: center;
  padding: 3% 0% 3% 2%;
  width: 19%;
  border-bottom: solid 2px #fff;
  font-size: 1.171875vw;
  font-weight: 800;
  min-height: 140px;
  position: relative;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-detail dl dt {
    font-size: 2.34375vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-detail dl dt {
    width: 30%;
    padding: 2% 0 2% 3%;
    min-height: 100px;
  }
}
.fwh-sec03__point-detail dl dt:before {
  position: absolute;
  content: "";
  right: 1%;
  bottom: 0;
  width: 6.5755208333vw;
  height: 25%;
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: bottom left;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-detail dl dt:before {
    width: 39%;
  }
}
.fwh-sec03__point-detail dl dt.num01:before {
  background-image: url(../images/sec03_exam01.png);
}
.fwh-sec03__point-detail dl dt.num02:before {
  background-image: url(../images/sec03_exam02.png);
}
.fwh-sec03__point-detail dl dt.num03:before {
  background-image: url(../images/sec03_exam03.png);
}
.fwh-sec03__point-detail dl dt.num04:before {
  background-image: url(../images/sec03_exam04.png);
}
.fwh-sec03__point-detail dl dt.num05:before {
  background-image: url(../images/sec03_exam05.png);
}
.fwh-sec03__point-detail dl dt.num06:before {
  background-image: url(../images/sec03_exam06.png);
}
.fwh-sec03__point-detail dl dt.num07:before {
  background-image: url(../images/sec03_exam07.png);
}
.fwh-sec03__point-detail dl dt.num08:before {
  background-image: url(../images/sec03_exam08.png);
}
.fwh-sec03__point-detail dl dd {
  width: 30.5%;
  display: flex;
  align-items: center;
  border-bottom: solid 2px #8FC329;
  border: solid 1px #8FC329;
  font-size: 0.9765625vw;
  font-weight: 500;
  padding: 1% 0 1% 1%;
  line-height: 1.4;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-detail dl dd {
    font-size: 1.953125vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-detail dl dd {
    width: 69.5%;
    padding: 1% 4%;
    font-size: 1.171875vw;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-sec03__point-detail dl dd {
    font-size: 2.34375vw;
  }
}
.fwh-sec03__point-detail dl dd:nth-child(even) {
  margin-right: 0.5%;
}
.fwh-sec03__point-text p {
  font-size: 1.4973958333vw;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-text p {
    font-size: 2.9947916667vw;
  }
}
.fwh-sec03__point-text p b {
  color: #D0474F;
}
.fwh-sec03__point-text span {
  font-size: 1.171875vw;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__point-text span {
    font-size: 2.34375vw;
  }
}
.fwh-sec03__end {
  display: flex;
  max-width: 1000px;
  margin: 0 auto;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__end {
    display: block;
  }
}
.fwh-sec03__end-title {
  width: 58%;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__end-title {
    width: 80%;
    position: relative;
    z-index: 1;
  }
}
.fwh-sec03__end-img {
  width: 34%;
  margin-top: -2%;
}
@media screen and (max-width: 768px) {
  .fwh-sec03__end-img {
    position: absolute;
    bottom: -1.4%;
    right: 2%;
    width: 25%;
    margin-top: 0%;
  }
}

.fwh-cta02 {
  padding: 3% 0 2%;
  position: relative;
  background: url(../images/cta_bg.png) top center;
  background-size: 100%;
}
@media screen and (max-width: 768px) {
  .fwh-cta02 {
    background-size: contain;
  }
}
.fwh-cta02:before {
  background: #8FC329;
  content: "";
  position: absolute;
  width: 100%;
  left: 50%;
  bottom: 0;
  height: 41%;
  transform: translateX(-50%);
}
.fwh-cta02__hukidashi {
  width: 23.4375vw;
  margin: 0 auto;
  position: relative;
  left: -1%;
}
@media screen and (max-width: 768px) {
  .fwh-cta02__hukidashi {
    width: 48%;
  }
}
.fwh-cta02 .box {
  display: flex;
  position: relative;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .fwh-cta02 .box {
    display: block;
  }
}
.fwh-cta02__img {
  width: 50%;
}
@media screen and (max-width: 768px) {
  .fwh-cta02__img {
    width: 80%;
    margin: 0 auto 2%;
  }
  .fwh-cta02__img .spshow {
    margin-bottom: 5%;
  }
  .fwh-cta02__img .spsmall {
    width: 80%;
    margin: 0 auto;
  }
}
.fwh-cta02 .fwh-cta__btns {
  margin-top: 0;
}
.fwh-cta02 .fwh-cta__btns p {
  margin-bottom: 2%;
}

.fwh-sec04 {
  padding: 5% 5% 5.2%;
  background: url(../images/sec04_bg.png);
  background-size: 100%;
}
@media screen and (max-width: 768px) {
  .fwh-sec04 {
    padding: 8% 5% 5.2%;
  }
}
.fwh-sec04__title {
  margin-bottom: 2%;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__title {
    margin-bottom: 8%;
  }
}
.fwh-sec04__title h3 {
  width: 44.53125vw;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__title h3 {
    width: 100%;
  }
}
.fwh-sec04__characters {
  display: flex;
  justify-content: space-between;
  padding: 3% 0;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__characters {
    display: block;
    padding: 3% 0 0;
  }
}
.fwh-sec04__character {
  width: 48%;
  display: flex;
  padding: 2.5% 3%;
  background: #fff;
  position: relative;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__character {
    width: 100%;
    margin-bottom: 8%;
  }
}
.fwh-sec04__character:before {
  content: "";
  position: absolute;
  bottom: 100%;
  left: -3px;
  width: 11.71875vw;
  height: 13%;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__character:before {
    width: 24%;
  }
}
.fwh-sec04__character:nth-child(1) {
  border: solid 3px #8FC329;
}
.fwh-sec04__character:nth-child(1):before {
  background: url(../images/sec04_tab01.png) no-repeat;
  background-size: 100%;
}
.fwh-sec04__character:nth-child(1) dl dd:before {
  color: #8FC329;
}
.fwh-sec04__character:nth-child(2) {
  border: solid 3px #5F93B4;
}
.fwh-sec04__character:nth-child(2):before {
  background: url(../images/sec04_tab02.png) no-repeat;
  background-size: 100%;
}
.fwh-sec04__character:nth-child(2) dl dd:before {
  color: #5F93B4;
}
.fwh-sec04__character img {
  width: 11.0677083333vw;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__character img {
    width: 26%;
  }
}
.fwh-sec04__character dl {
  margin-left: 5%;
  width: 100%;
}
.fwh-sec04__character dl dt {
  font-size: 1.8229166667vw;
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__character dl dt {
    font-size: 3.6458333333vw;
  }
}
.fwh-sec04__character dl dd {
  padding: 3% 0 3% 9%;
  font-size: 1.171875vw;
  border-bottom: solid 1px #ddd;
  position: relative;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__character dl dd {
    font-size: 2.34375vw;
  }
}
.fwh-sec04__character dl dd:last-child {
  border: none;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__character dl dd {
    padding: 3% 0 3% 6%;
  }
}
.fwh-sec04__character dl dd:before {
  content: "■";
  position: absolute;
  left: 0;
  top: 8px;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__character dl dd:before {
    top: 7px;
  }
}
.fwh-sec04__talks {
  margin: 5% auto 0;
  max-width: 1000px;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__talks {
    margin: 0 auto 10%;
  }
}
.fwh-sec04__talks details[open] .fwh-sec04__talks-toggle {
  animation: fadeIn 0.5s ease forwards;
}
.fwh-sec04__talks details[open] summary:before {
  content: "▲";
}
@keyframes fadeIn {
  0% {
    opacity: 0;
    transform: translateY(-10px);
  }
  100% {
    opacity: 1;
    transform: none;
  }
}
.fwh-sec04__talks summary {
  margin: 5% auto 1%;
  width: 16.2760416667vw;
  color: #fff;
  font-size: 1.5625vw;
  padding: 1% 0;
  text-align: center;
  background: #41220F;
  border-radius: 30px;
  display: block;
  cursor: pointer;
  position: relative;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__talks summary {
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec04__talks summary {
    width: 33%;
    padding: 1% 0 1.5%;
  }
}
.fwh-sec04__talks summary::-webkit-details-marker {
  display: none;
}
.fwh-sec04__talks summary:before {
  content: "▼";
  position: absolute;
  right: 8%;
  top: 24%;
  font-size: 1.3020833333vw;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__talks summary:before {
    font-size: 2.6041666667vw;
  }
}
.fwh-sec04__talks-toggle {
  padding-top: 3%;
}
.fwh-sec04__talks-img {
  margin-top: 5%;
  width: 106%;
  margin-left: -3%;
}
.fwh-sec04__talks-title {
  text-align: center;
  padding: 3% 0;
}
.fwh-sec04__talks-title p {
  display: inline-block;
  font-size: 2.6041666667vw;
  font-weight: 900;
  position: relative;
  padding-bottom: 2%;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__talks-title p {
    font-size: 5.2083333333vw;
  }
}
.fwh-sec04__talks-title p:before {
  content: "";
  width: 2.8645833333vw;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  background: url(../images/title_line01.png) top center no-repeat;
  background-size: 100%;
  height: 10%;
}
.fwh-sec04__talk {
  margin-bottom: 3.5%;
  position: relative;
}
.fwh-sec04__talk:before {
  content: "";
  position: absolute;
  width: 13%;
  height: 100%;
  top: 6%;
  min-height: 300px;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__talk:before {
    width: 14%;
  }
}
.fwh-sec04__talk p {
  border: 3px solid #E0E0E0;
  font-size: 1.4322916667vw;
  background: #fff;
  border-radius: 20px;
  letter-spacing: 0;
  padding: 5% 3% 5% 5%;
  box-shadow: 6px 6px 7px rgba(0, 0, 0, 0.1);
  position: relative;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__talk p {
    font-size: 2.8645833333vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec04__talk p {
    padding: 5% 3% 5% 4%;
    border: 1px solid #E0E0E0;
    box-shadow: 6px 6px 7px rgba(0, 0, 0, 0.05);
    border-radius: 15px;
  }
}
.fwh-sec04__talk p span {
  color: #D0474F;
}
.fwh-sec04__talk p:before {
  content: "";
  position: absolute;
  width: 40px;
  height: 30px;
  background: url(../images/sec04_hukidashi.png) no-repeat top left;
  background-size: 100%;
  top: 25px;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__talk p:before {
    width: 4%;
  }
}
.fwh-sec04__talk.charaA {
  padding: 2% 0 0 18%;
}
.fwh-sec04__talk.charaA:before {
  background: url(../images/sec04_talk_a.png) no-repeat;
  background-size: 100%;
  left: 0;
}
.fwh-sec04__talk.charaA p:before {
  right: calc(100% - 1px);
}
.fwh-sec04__talk.charaB {
  padding: 2% 18% 0 0;
}
.fwh-sec04__talk.charaB:before {
  background: url(../images/sec04_talk_b.png) no-repeat;
  background-size: 100%;
  right: 0;
}
.fwh-sec04__talk.charaB p:before {
  left: calc(100% - 1px);
  transform: scale(-1, 1);
}
.fwh-sec04__talk.charaC {
  padding: 2% 0 0 18%;
}
.fwh-sec04__talk.charaC:before {
  background: url(../images/sec04_talk_c.png) no-repeat;
  background-size: 100%;
  left: 0;
}
.fwh-sec04__talk.charaC p:before {
  right: calc(100% - 1px);
}
.fwh-sec04__result {
  position: relative;
  text-align: center;
  padding: 6% 2% 3%;
  background: url(../images/cta_bg.png) #fff bottom center no-repeat;
  background-size: 100%;
  margin-top: 8%;
  box-shadow: 0px 3px 18px rgba(0, 0, 0, 0.1);
}
@media screen and (max-width: 768px) {
  .fwh-sec04__result {
    width: 100vw;
    transform: translateX(-50%);
    left: 50%;
    padding: 8% 2% 6%;
    background-size: cover;
  }
}
.fwh-sec04__result span {
  position: absolute;
  top: -6%;
  left: 50%;
  transform: translateX(-50%);
  width: 18.2291666667vw;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__result span {
    width: 35%;
  }
}
.fwh-sec04__result p {
  font-size: 1.7578125vw;
  margin-bottom: 3%;
}
@media screen and (max-width: 768px) {
  .fwh-sec04__result p {
    font-size: 3.515625vw;
  }
}
.fwh-sec04__result p b {
  color: #D0474F;
}

.fwh-sec05 {
  background: url(../images/sec04_bg.png) no-repeat top center;
  background-size: 100%;
  position: relative;
  padding: 0 5% 5%;
}
.fwh-sec05:before, .fwh-sec05:after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
}
.fwh-sec05:before {
  background: linear-gradient(196deg, transparent 0%, transparent 47%, rgb(143, 195, 40) 47%);
  top: -5%;
  height: 19%;
}
@media screen and (max-width: 768px) {
  .fwh-sec05:before {
    background: linear-gradient(199deg, transparent 0%, transparent 42%, rgb(143, 195, 40) 42%);
  }
}
.fwh-sec05:after {
  background: rgb(143, 195, 40);
  bottom: 0;
  height: 86%;
}
.fwh-sec05 .box {
  max-width: 1000px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
}
.fwh-sec05__title {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__title {
    align-items: flex-end;
  }
}
.fwh-sec05__title h3 {
  margin-top: 5%;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__title h3 {
    width: 65%;
    padding-bottom: 4%;
    margin-top: 9%;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec05__title picture {
    width: 55%;
    margin-right: -13%;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec05__steps {
    padding-top: 10%;
  }
}
.fwh-sec05__steps ul {
  display: flex;
  justify-content: space-between;
  padding-top: 4%;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__steps ul {
    display: block;
  }
}
.fwh-sec05__steps ul li {
  width: 48%;
  position: relative;
  padding: 5% 4% 2.5%;
  background: #fff;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__steps ul li {
    width: 100%;
    padding: 5% 4% 4%;
  }
}
.fwh-sec05__steps ul li h4 {
  text-align: center;
  font-size: 1.8229166667vw;
  font-weight: 900;
  padding-bottom: 13%;
  position: relative;
  margin-bottom: 5%;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__steps ul li h4 {
    font-size: 3.6458333333vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec05__steps ul li h4 {
    font-size: 2.2135416667vw;
    padding-bottom: 7%;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-sec05__steps ul li h4 {
    font-size: 4.4270833333vw;
  }
}
.fwh-sec05__steps ul li h4:before {
  content: "";
  width: 2.8645833333vw;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  background: url(../images/title_line01.png) top center no-repeat;
  background-size: 100%;
  height: 10%;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__steps ul li h4:before {
    width: 8%;
  }
}
.fwh-sec05__steps ul li h4 span {
  color: #D0474F;
}
.fwh-sec05__steps ul li p {
  font-size: 1.4322916667vw;
  margin-bottom: 4%;
  letter-spacing: 0;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__steps ul li p {
    font-size: 2.8645833333vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec05__steps ul li p {
    font-size: 1.6276041667vw;
    text-align: center;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-sec05__steps ul li p {
    font-size: 3.2552083333vw;
  }
}
.fwh-sec05__steps ul li .btn {
  margin-top: 9%;
  display: block;
  width: 100%;
  font-size: 1.6276041667vw;
  text-align: left;
  padding: 5% 5% 5% 10%;
  box-shadow: 0px 3px 18px rgb(106, 152, 97);
}
@media screen and (max-width: 768px) {
  .fwh-sec05__steps ul li .btn {
    font-size: 3.2552083333vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec05__steps ul li .btn {
    width: 80%;
    margin: 3% auto;
    text-align: center;
    border-radius: 56px;
    font-size: 1.6927083333vw;
    padding: 4% 5% 4%;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-sec05__steps ul li .btn {
    font-size: 3.3854166667vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec05__steps ul li:nth-child(1) {
    margin-bottom: 10%;
  }
}
.fwh-sec05__steps ul li:nth-child(1):after {
  content: "";
  position: absolute;
  top: 36%;
  right: -12%;
  width: 17%;
  height: 15%;
  background: url(../images/sec05_arrow.png) no-repeat top center;
  background-size: 100%;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__steps ul li:nth-child(1):after {
    content: none;
  }
}
.fwh-sec05__steps ul li:nth-child(2) h4 {
  padding-bottom: 6%;
  margin-top: -3%;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__steps ul li:nth-child(2) h4 {
    margin-top: 0;
  }
}
.fwh-sec05__steps ul li:nth-child(2) img {
  width: 23.2421875vw;
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__steps ul li:nth-child(2) img {
    width: 100%;
  }
}
.fwh-sec05__steps-num {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: calc(100% - 6px);
  width: 12.3697916667vw;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__steps-num {
    width: 30%;
  }
}
.fwh-sec05__intro {
  position: relative;
  padding: 0 2% 2% 4.5%;
  border-top: solid 2px #ADD35B;
  border-right: solid 2px #ADD35B;
  display: flex;
  z-index: 1;
  margin-top: 13.5%;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__intro {
    padding: 0 0 4.5% 4.5%;
  }
}
.fwh-sec05__intro:before, .fwh-sec05__intro:after {
  content: "";
  position: absolute;
  height: 100%;
}
.fwh-sec05__intro::before {
  border-top: solid 2px #fff;
  border-left: solid 2px #fff;
  left: 0;
  top: -2px;
  width: 54%;
}
.fwh-sec05__intro:after {
  right: 0;
  bottom: 0;
  background: linear-gradient(155deg, transparent 0%, transparent 50%, rgba(255, 255, 255, 0.3) 50%);
  width: 58%;
  z-index: -1;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__intro:after {
    background: linear-gradient(150deg, transparent 0%, transparent 53%, rgba(255, 255, 255, 0.3) 53%);
  }
}
.fwh-sec05__intro-img {
  width: 27.9947916667vw;
  position: relative;
  z-index: 1;
}
.fwh-sec05__intro-img img {
  margin-top: -10%;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__intro-img {
    width: 50%;
  }
}
.fwh-sec05__intro-names {
  margin: 4% 0 0 3%;
  flex: 1;
}
.fwh-sec05__intro-names .type {
  font-size: 2.2786458333vw;
  background: #fff;
  line-height: 1;
  font-weight: 700;
  padding: 0 4% 0 2%;
  display: inline-block;
  margin-bottom: 4%;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__intro-names .type {
    font-size: 4.5572916667vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec05__intro-names .type {
    font-size: 1.6927083333vw;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-sec05__intro-names .type {
    font-size: 3.3854166667vw;
  }
}
.fwh-sec05__intro-names .type span {
  color: #8FC329;
  font-size: 2.9947916667vw;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__intro-names .type span {
    font-size: 5.9895833333vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec05__intro-names .type span {
    font-size: 2.2786458333vw;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-sec05__intro-names .type span {
    font-size: 4.5572916667vw;
  }
}
.fwh-sec05__intro-names span {
  display: inline-block;
  background: #fff;
  line-height: 1;
  font-weight: 700;
  padding: 1% 1% 1.5%;
  font-size: 1.6927083333vw;
  margin-bottom: 1.5%;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__intro-names span {
    font-size: 3.3854166667vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec05__intro-names span {
    font-size: 1.2369791667vw;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-sec05__intro-names span {
    font-size: 2.4739583333vw;
  }
}
.fwh-sec05__intro-names .name {
  font-size: 3.6458333333vw;
  background: #fff;
  line-height: 1;
  font-weight: 900;
  padding: 0 2% 1%;
  display: inline-block;
  margin-bottom: 5%;
  white-space: nowrap;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__intro-names .name {
    font-size: 7.2916666667vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec05__intro-names .name {
    font-size: 2.7994791667vw;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-sec05__intro-names .name {
    font-size: 5.5989583333vw;
  }
}
.fwh-sec05__detail {
  padding: 5% 5% 1.5%;
  background: #fff;
  box-shadow: 0px 3px 18px rgba(106, 152, 97, 0.14);
  margin-bottom: 5%;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__detail {
    margin-bottom: 8%;
    padding: 6% 7% 1.5%;
  }
}
.fwh-sec05__detail p {
  font-size: 1.171875vw;
  letter-spacing: 0;
  line-height: 1.8;
  margin-bottom: 4.4%;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__detail p {
    font-size: 2.34375vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec05__detail p {
    font-size: 1.6276041667vw;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-sec05__detail p {
    font-size: 3.2552083333vw;
  }
}
.fwh-sec05__timeline {
  position: relative;
}
.fwh-sec05__timeline-title p {
  font-size: 2.9296875vw;
  background: #fff;
  line-height: 1;
  font-weight: 700;
  padding: 2% 1% 3%;
  display: inline-block;
  margin-bottom: 5%;
  white-space: nowrap;
  margin-bottom: 2%;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__timeline-title p {
    font-size: 5.859375vw;
  }
}
.fwh-sec05__timeline-title p b {
  font-size: 3.6458333333vw;
  color: #D0474F;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__timeline-title p b {
    font-size: 7.2916666667vw;
  }
}
.fwh-sec05__timeline-img {
  position: absolute;
  bottom: 0;
  right: -3%;
  width: 19.53125vw;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__timeline-img {
    bottom: -3%;
  }
}
.fwh-sec05__timeline dl {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  padding-left: 3.5%;
  position: relative;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__timeline dl {
    padding-left: 5%;
    margin-top: 3%;
  }
}
.fwh-sec05__timeline dl:before {
  content: "";
  position: absolute;
  width: 0.4%;
  height: 94%;
  background: #fff;
  left: 1%;
  top: 4%;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__timeline dl:before {
    left: 2.2%;
    top: 2%;
  }
}
.fwh-sec05__timeline dl dt {
  width: 15%;
  font-size: 1.953125vw;
  background: #fff;
  line-height: 1;
  font-weight: 700;
  padding: 1% 1% 1% 1.5%;
  white-space: nowrap;
  text-align: center;
  position: relative;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__timeline dl dt {
    font-size: 3.90625vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec05__timeline dl dt {
    width: 19%;
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-sec05__timeline dl dt {
    font-size: 3.125vw;
  }
}
.fwh-sec05__timeline dl dt:before {
  position: absolute;
  content: "◆";
  color: #fff;
  top: 25%;
  left: -25%;
  font-size: 1.8229166667vw;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__timeline dl dt:before {
    font-size: 3.6458333333vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec05__timeline dl dt:before {
    top: 25%;
    left: -23%;
    font-size: 1.5625vw;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-sec05__timeline dl dt:before {
    font-size: 3.125vw;
  }
}
.fwh-sec05__timeline dl dd {
  width: 82.5%;
  margin-bottom: 4%;
  padding: 1% 4% 0 2%;
  color: #fff;
  font-size: 1.5625vw;
}
@media screen and (max-width: 768px) {
  .fwh-sec05__timeline dl dd {
    font-size: 3.125vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-sec05__timeline dl dd {
    width: 77%;
    padding: 0 0 0 3%;
    margin-bottom: 6%;
    font-size: 1.4322916667vw;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .fwh-sec05__timeline dl dd {
    font-size: 2.8645833333vw;
  }
}
.fwh-sec05__timeline dl dd img {
  margin-top: 2%;
}

.fwh-sec06 {
  padding-top: 5%;
}
.fwh-sec06 .fwh-cta__btns {
  margin-top: 8%;
}
@media screen and (max-width: 768px) {
  .fwh-sec06 .fwh-cta__btns {
    margin-top: 4%;
  }
}

.fwh-footer {
  background: #5C6A3D;
  padding: 3% 2% 2%;
}
@media screen and (max-width: 768px) {
  .fwh-footer {
    padding: 5% 0 3%;
  }
}
.fwh-footer .box {
  max-width: 900px;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .fwh-footer .box {
    display: block;
    justify-content: center;
  }
}
.fwh-footer ul {
  display: flex;
  width: 60%;
}
@media screen and (max-width: 768px) {
  .fwh-footer ul {
    width: 100%;
    justify-content: center;
    margin-bottom: 3%;
  }
}
.fwh-footer ul li {
  padding-left: 6%;
  position: relative;
  margin-right: 3%;
}
@media screen and (max-width: 768px) {
  .fwh-footer ul li {
    padding-left: 4%;
    margin: 0 2%;
    white-space: nowrap;
  }
}
.fwh-footer ul li a {
  color: #fff;
  font-size: min(2.3vw, 21px);
  white-space: nowrap;
}
.fwh-footer ul li:before {
  content: "";
  position: absolute;
  top: 10%;
  left: 0;
  width: 1.8229166667vw;
  min-height: 23px;
  max-width: 23px;
  background: url(../images/footer_arrow.png) no-repeat top center;
  background-size: 100%;
}
@media screen and (max-width: 768px) {
  .fwh-footer ul li:before {
    top: 35%;
    height: 40%;
    min-width: 10px;
  }
}
.fwh-footer p {
  color: #fff;
  font-size: 0.9114583333vw;
  font-size: min(1.4vw, 14px);
  position: relative;
  top: 5px;
}
@media screen and (max-width: 768px) {
  .fwh-footer p {
    font-size: 1.8229166667vw;
  }
}
@media screen and (max-width: 768px) {
  .fwh-footer p {
    text-align: center;
  }
}

summary::-webkit-details-marker {
  display: none;
}