@charset "UTF-8";

/* faq */

.faq_elements {
  margin-right: 0;
  margin-left: auto;
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  dl {
    width: 100%;
    .faq_title {
      width: 72px;
      text-align: center;
      font-size: 3.6rem;
      font-weight: bold;
    }
    .faq_title_q {
      font-family: var(--en);
      color: #fff;
      font-size: 4.8rem;
    }
    .faq_title_a {
      font-family: var(--en);
      color: #f0a475;
      font-size: 4.8rem;
    }
    dt {
      position: relative;
      display: flex;
      flex-wrap: wrap;
      gap: 0;
      cursor: pointer;
      background: #d7dfb6;
      h3 {
        width: calc(100% - 72px);
        font-size: 1.6rem;
        font-weight: 600;
        color: #91754d;
        padding-right: 90px;
        margin-top: 30px;
        margin-bottom: 30px;
      }
    }
    dt::before {
      content: "";
      display: block;
      width: 40px;
      height: 4px;
      background: var(--c2);
      position: absolute;
      top: 41px;
      right: 24px;
    }
    dt::after {
      content: "";
      display: block;
      width: 4px;
      height: 40px;
      background: var(--c2);
      position: absolute;
      top: 23px;
      right: 42px;
    }
    dd {
      .faq_a_wrap {
        display: flex;
        flex-wrap: wrap;
        gap: 0;
        margin-top: 10px;
      }
      p {
        margin-top: 30px;
        padding-right: 90px;
        width: calc(100% - 72px);
      }
    }
  }
}

/* page */

.faq_categories {
  display: flex;
  flex-wrap: wrap;
  gap: 40px 2%;
  container-type: inline-size;
  .faq_category {
    position: relative;
    width: calc(94% / 4);
    padding: 26px 64px 26px 38px;
    border: 2px solid var(--c2);
    border-radius: 16px;
    color: #91754d;
    text-decoration: none;
    font-size: 1.6cqw;
  }
  .faq_category::before {
    display: block;
    content: "";
    width: 12px;
    height: 12px;
    border-left: 1px solid #fff;
    border-bottom: 1px solid #fff;
    position: absolute;
    top: calc(50% - 2px);
    transform: translateY(-50%) rotate(-45deg);
    right: 33px;
    z-index: 10;
  }
  .faq_category::after {
    display: block;
    content: "";
    width: 32px;
    height: 32px;
    background: var(--c2);
    border-radius: 50%;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 24px;
    z-index: 5;
  }
}

.faq_area {
  margin-top: 60px;
  h2 {
    color: var(--c2);
    font-size: 4rem;
    font-family: var(--go);
    margin-bottom: 40px;
    text-align: center;
  }
}

@media screen and (max-width: 1110px) {
  .faq_categories {
    gap: 16px 2%;
    .faq_category {
      width: calc(98% / 2);
      font-size: 2cqw;
      padding: 16px 20px 48px 20px;
    }
    .faq_category::before {
      width: 8px;
      height: 8px;
      border-left: 2px solid #fff;
      border-bottom: 2px solid #fff;
      top: auto;
      bottom: 24px;
      transform: translateX(-50%) translateY(0) rotate(-45deg);
      right: auto;
      left: 50%;
    }
    .faq_category::after {
      top: auto;
      bottom: 16px;
      left: 50%;
      transform: translateY(0);
      transform: translateX(-50%);
      width: 24px;
      height: 24px;
    }
  }
  .faq_area {
    h2 {
      font-size: 2.4rem;
    }
  }
}
@media screen and (max-width: 740px) {
}
@media screen and (max-width: 639px) {
}
@media screen and (max-width: 500px) {
}
