.img01 {
  max-width: 100%;
  width: 100%;
}
.img01 img {
  width: 100%;
}

.leftBg::after {
  z-index: 1;
}

#kinkyo h2 {
  font-size: clamp(16px, 2.5cqw, 30px);
  padding: 60px 0;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 520px) {
  #kinkyo h2 {
    padding: 30px 0;
  }
}
#kinkyo h2 span {
  color: #226d4f;
  font-size: 220%;
}
@media screen and (max-width: 520px) {
  #kinkyo h2 span {
    font-size: 25px;
  }
}
#kinkyo h3 {
  font-size: clamp(18px, 2.2cqw, 30px);
  line-height: 1.3;
  padding: 1.2em 0;
  position: relative;
  font-weight: 500;
  z-index: 2;
}
#kinkyo h3::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 6px;
  border-top: #ccc solid 1px;
  border-bottom: #ccc solid 1px;
}
#kinkyo h3::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 6px;
  border-top: #ccc solid 1px;
  border-bottom: #ccc solid 1px;
}
#kinkyo .img02 {
  padding: 45px 0 90px;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 820px) {
  #kinkyo .img02 {
    padding: 25px 0 45px;
  }
}
#kinkyo .flexArea {
  padding: 45px 0 90px;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 520px) {
  #kinkyo .flexArea {
    padding: 30px 0;
    flex-direction: column;
  }
}
#kinkyo .flexArea .flexItem {
  width: calc(50% - 15px);
}
@media screen and (max-width: 520px) {
  #kinkyo .flexArea .flexItem {
    width: 100%;
    margin-bottom: 20px;
  }
}
#kinkyo .img05,
#kinkyo .img06 {
  padding: 45px 0;
}
@media screen and (max-width: 820px) {
  #kinkyo .img05,
  #kinkyo .img06 {
    padding: 30px 0;
  }
}
#kinkyo .redText {
  background-color: #ce2e2e;
  color: #fff;
  font-size: clamp(16px, 2.8cqw, 30px);
  line-height: 1.3;
  padding: 1em;
  margin-bottom: 90px;
}
@media screen and (max-width: 520px) {
  #kinkyo .redText {
    text-align: left;
    margin-bottom: 45px;
  }
}
#kinkyo .redText02 {
  color: #ce2e2e;
  font-size: clamp(18px, 2.4cqw, 30px);
  padding-bottom: 120px;
}
@media screen and (max-width: 520px) {
  #kinkyo .redText02 {
    padding-bottom: 60px;
  }
}

.wrapper {
  max-width: 1000px;
}

.wrapper1240 {
  max-width: 1240px;
}

.fadein {
  visibility: hidden;
}

.fadeInUp {
  animation-name: fadeInUp;
  animation-fill-mode: both;
  animation-duration: 1s;
  visibility: visible !important;
  opacity: 0;
  filter: blur(10px);
}

@keyframes fadeInUp {
  from {
    opacity: 0;
    filter: blur(10px);
    transform: translate3d(0, 20px, 0);
  }
  to {
    opacity: 1;
    filter: blur(0);
    transform: none;
  }
}
.caption_area {
  background-color: #fff;
  padding: 40px 0 60px;
}
@media screen and (max-width: 520px) {
  .caption_area {
    padding: 25px 0 60px;
  }
}