.anchor {
  position: relative;
}

.anchor_box {
  position: absolute;
  top: -15vw;
  left: 0;
  right: 0;
  width: 10vw;
  height: 10vw;
  opacity: 0;
  pointer-events: none;
}

.intr_heading {
  margin: 6vw auto 0;
  text-align: center;
}

.intr_heading h4 {
  margin-bottom: 16vw;
  font-size: 4.26vw;
  font-weight: 600;
  line-height: 1.8;
  color: #E60019;
}

.siteContainer {
  margin: auto;
  padding: 0 6.66vw;
  width: 100%;
  max-width: 100%;
}

.faq {
  margin: 0 auto;
  width: 100%;
}

.faq_container {
  margin: 14.26vw auto 0;
}

.faq_block.avocado-block {
  margin-top: 29.86vw;
}

.faq_block.cutfruit-block {
  margin-top: 29.73vw;
}

.faq_block.snackpersimmon-block {
  margin-top: 29.73vw
}

.faq_block.general-block {
  margin: 30vw auto 33.2vw;
}

.faq_block_heading {
  padding: 2.26vw 1vw 4.13vw;
  background-color: #3A7961;
  text-align: center;
}

.faq_block_heading h3 {
  font-size: 6.4vw;
  font-weight: 700;
  line-height: 1.5;
  color: #fff;
}

.faq_anchors {
  margin: 10.66vw auto 29.73vw;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  gap: 5.33vw;
}

.faq_anchor_itm {
  padding: 0 4.86vw 0 4.13vw;
  width: 100%;
  min-height: 24vw;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  border: 0.26vw solid #d9d9d9;
  border-radius: 4vw;
  position: relative;
}

.faq_anchor_img_wrapper {
  width: 100%;
  max-width: 24.93vw;
}

.faq_anchor_img_wrapper img {
  margin: auto;
  display: block;
}

.faq_anchor_itm:nth-child(1) img {
  width: 21.2vw;
}

.faq_anchor_itm:nth-child(2) img {
  width: 24.93vw;
}

.faq_anchor_itm:nth-child(3) img {
  width: 19.2vw;
}

.faq_anchor_itm:nth-child(4) img {
  width: 16.40vw;
}

.faq_anchor_itm h3 {
  margin-left: 2.93%;
  font-size: 5.33vw;
  font-weight: 700;
  line-height: 1.6;
}

.faq_anchor_itm:after {
  content: '';
  position: absolute;
  top: 50%;
  right: 5.60vw;
  transform: translateY(-50%);
  width: 2.66vw;
  height: 7.86vw;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  background-image: url(../images/faq/img-anchor-arrow.png);
}


.faq_block_ttl {
  margin-bottom: 6.26vw;
  font-size: 8.53vw;
  font-weight: 700;
  line-height: 1.6;
  position: relative;
}

.faq_itms {
  margin: auto;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 6.4vw;
}

.faq_itm {
  width: 100%;
  display: block;
  border-bottom: 0.26vw solid #aaaaaa;
}

.faq_itm.disabled .faq_itm_ttl {
  padding-left: 0;
}

.faq_itm.disabled .faq_itm_ttl:before {
  display: none;
}

.faq_itm.is-active .faq_itm_indicator {
  background-color: #D9D9D9;
}

.faq_itm.is-active .faq_itm_indicator img {
  transform: rotate(180deg);
}

.faq_itm_indicator {
  position: absolute;
  top: 50%;
  right: 0;
  transform: translateY(-50%);
  width: 7.19vw;
  height: 7.19vw;
  background-color: #000;
  border-radius: 9999px;
  display: flex;
  justify-content: center;
  align-items: center;
}

.faq_itm_indicator img {
  width: 2.13vw;
  transition: all .3s ease;
}

.faq_itm_ttl {
  margin-bottom: 9.46vw;
  padding-left: 8.13vw;
  padding-right: 10.66vw;
  font-size: 4.8vw;
  font-weight: 700;
  line-height: 1.6;
  position: relative;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 5;
  overflow: hidden;
  text-overflow: ellipsis;
  cursor: pointer;
}

.faq_itm_ttl:before {
  content: 'Q.';
  position: absolute;
  top: 0;
  left: 0;
  font-family: "Inknut Antiqua", serif;
  font-size: 4.26vw;
  font-weight: 600;
  line-height: 1.6;
}

.faq_itm_body {
  display: none;
}

.faq_itm_body div {
  font-size: 3.73vw;
  font-weight: 400;
  line-height: 1.8;
  border-top: 0.26vw solid #aaaaaa;
  padding: 8.66vw 0 9.33vw 8.13vw;
  position: relative;
  word-break: break-all;
}

.faq_itm_body div:before {
  content: 'A.';
  position: absolute;
  top: 7.73vw;
  left: 0;
  font-family: "Inknut Antiqua", serif;
  font-size: 4.26vw;
  font-weight: 700;
  line-height: 1.6;
}

.faq_itm_body div a {
  color: #0088FF;
  text-decoration: underline;
  text-underline-offset: .2em;
}

.faq_itm_body div span {
  margin-bottom: 1.73vw;
  font-size: 4.26vw;
  font-weight: 700;
  line-height: 1.8;
  display: block;
}


.inquiry {
  width: 100%;
  padding: 11.06vw 0 36.33vw;
  background-color: #F5F5F5;
  text-align: center;
}

.inquiry_main_heading {
  margin-bottom: 7.46vw;
  font-size: 6.4vw;
  font-weight: 700;
  line-height: 1.6;
}

.inquiry_sub_heading {
  margin-bottom: 0;
  font-size: 4.26vw;
  font-weight: 700;
  line-height: 1.6;
}

.inquiry_tel {
  margin-bottom: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "Oswald", sans-serif;
  font-size: 10.66vw;
  font-weight: 400;
  line-height: 1.6;
  color: #3A7961;
}

.inquiry_tel img {
  margin-right: 3.06vw;
  width: 13.33vw;
}

.inquiry_info {
  margin-bottom: 9.33vw;
  font-size: 4.26vw;
  font-weight: 700;
  line-height: 1.6;
}

.inquiry_btn {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 17.33vw;
  font-size: 4.26vw;
  font-weight: 500;
  border: 0.53vw solid #3A7961;
  border-radius: 2.66vw;
  position: relative;
  background-color: #fff;
}

.inquiry_btn img {
  position: absolute;
  top: 50%;
  right: 7.73%;
  transform: translateY(-50%);
  width: 2.30vw;
}


@media screen and (min-width: 768px) {
  .anchor_box {
    top: -2vw;
    width: 2vw;
    height: 2vw;
  }

  .intr_heading {
    margin: min(3.22vw, 70px) auto 0;
  }

  .intr_heading h4 {
    margin-bottom: min(5.45vw, 120px);
    font-size: min(1.45vw, 32px);
  }

  .siteContainer {
    padding: 0;
    max-width: 2200px;
  }

  .faq_container {
    margin: min(4.51vw, 99.29px) auto 0;
    max-width: min(1717px, 78.04vw);
  }

  .faq_block.avocado-block {
    margin-top: min(8.09vw, 178px);
  }

  .faq_block.cutfruit-block {
    margin-top: min(7.90vw, 174px);
  }

  .faq_block.snackpersimmon-block {
    margin-top: min(7.90vw, 174px);
  }

  .faq_block.general-block {
    margin: min(8vw, 176px) auto min(16.40vw, 361px);
  }

  .faq_block_heading {
    padding: min(1.09vw, 24px) 1vw min(1.09vw, 24px);
  }

  .faq_block_heading h3 {
    font-size: min(2.18vw, 48px);
  }

  .faq_anchors {
    margin: auto;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: flex-start;
    width: 100%;
    max-width: min(1330px, 60.45vw);
    margin: min(3.63vw, 80px) auto min(8.09vw, 178px);
    gap: min(1.81vw, 40px) min(1.36vw, 30px);
  }

  .faq_anchor_itm {
    padding: 0 min(1.40vw, 31px) 0 min(1.40vw, 31px);
    width: 100%;
    max-width: min(650px, 29.54vw);
    min-height: min(8.18vw, 180px);
    border: min(0.09vw, 2px) solid #d9d9d9;
    border-radius: min(1.36vw, 30px);

    transition: all .3s ease-out;
  }
  .faq_anchor_itm:hover{
    opacity: .7;
  }

  .faq_anchor_img_wrapper {
    max-width: min(187px, 8.5vw);
  }

  .faq_anchor_itm:nth-child(1) img {
    width: min(159px, 7.22vw);
  }

  .faq_anchor_itm:nth-child(2) img {
    width: min(182px, 8.27vw);
  }

  .faq_anchor_itm:nth-child(3) img {
    width: min(6.5vw, 141px);
  }

  .faq_anchor_itm:nth-child(4) img {
    width: min(123px, 5.59vw);
  }

  .faq_anchor_itm h3 {
    margin-left: min(1.86vw, 41px);
    margin-left: min(1vw, 22px);
    font-size: min(1.81vw, 40px);
  }

  .faq_anchor_itm:after {
    right: min(1.90vw, 42px);
    width: min(0.90vw, 40px);
    height: min(2.68vw, 59px);

    transition: all .3s ease-out;
  }
  .faq_anchor_itm:hover:after{
    margin-top: 2%;
  }


  .faq_block_ttl {
    margin-bottom: min(2.09vw, 46px);
    font-size: min(2.90vw, 64px);
  }

  .faq_itms {
    gap: min(2.72vw, 60px);
  }

  .faq_itm {
    border-bottom: min(0.09vw, 2px) solid #aaaaaa;
  }

  .faq_itm_indicator {
    width: min(2.45vw, 54px);
    height: min(2.45vw, 54px);
  }

  .faq_itm_indicator img {
    width: min(17px, 0.77vw);
  }

  .faq_itm_ttl {
    margin-bottom: min(3.13vw, 69px);
    padding-left: min(2.81vw, 61px);
    padding-right: min(2.72vw, 60px);
    font-size: min(1.63vw, 36px);
  }

  .faq_itm_ttl:before {
    font-size: min(1.45vw, 32px);
  }

  .faq_itm_body div {
    font-size: min(1.27vw, 28px);
    border-top: min(0.09vw, 2px) solid #aaaaaa;
    padding: min(2.95vw, 65px) 0 min(3.09vw, 68px) min(7.04vw, 155px);
  }

  .faq_itm_body div a:hover {
    text-decoration: none;
  }

  .faq_itm_body div:before {
    top: min(2.72vw, 60px);
    font-size: min(1.45vw, 32px);
  }

  .faq_itm_body div span {
    margin-bottom: min(0.72vw, 16px);
    font-size: min(1.45vw, 32px);
  }


  .inquiry {
    padding: min(3.77vw, 83px) 0 min(4.54vw, 100px);
  }

  .inquiry_container {
    max-width: min(650px, 29.54vw);
  }

  .inquiry_main_heading {
    margin-bottom: min(2.5vw, 55px);
    font-size: min(2.18vw, 48px);
  }

  .inquiry_sub_heading {
    font-size: min(1.45vw, 32px);
  }

  .inquiry_tel {
    margin-bottom: min(0.81vw, 18px);
    font-size: min(3.63vw, 80px);
  }

  .inquiry_tel img {
    margin-right: min(0.90vw, 20px);
    width: min(100px, 4.54vw);
  }

  .inquiry_info {
    margin-bottom: min(3.27vw, 72px);
    font-size: min(1.45vw, 32px);
  }
}
