/*=======================
  よくあるご質問
==========================*/
.fs-16 {
  font-size: 1.6rem;
}

.question-section {
  padding-top: 100px;
}

.container.question-section-container {
  padding-left: 20px;
}

.question-section .question-container {
  width: 1200px;
  padding-bottom: 100px;
}

.question-wrapper-body {
  width: 95%;
  margin: 100px auto 0 auto;
}

/* アコーディオン対応 */
.question-accordion {
  margin: 0 auto 40px auto;
  border: none;
  box-shadow: 0 4px 4px rgb(0 0 0 / 2%), 0 2px 3px -2px rgba(0 0 0 / 5%);
  background-color: #fff;
}

summary {
  list-style: none;
}

summary::-webkit-details-marker {
  display: none;
}

.question-accordion summary {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: relative;
  padding: 1em 2em 1em 3em;
  color: #333333;
  cursor: pointer;
}

.question-accordion summary::before,
.question-accordion p::before {
  position: absolute;
  left: 25px;
  font-size: 2.5rem;
}

.question-accordion summary::before {
  color: #c4ecc6;
  content: "Q";
}

/* 「v」の調整 */
.question-accordion summary::after {
  transform: translateY(-25%) rotate(45deg);
  width: 10px;
  height: 10px;
  margin-left: 10px;
  border-bottom: 3px solid #333333b3;
  border-right: 3px solid #333333b3;
  content: "";
  transition: transform 0.5s;
}

/* 「v」の回転調整 */
.question-accordion[open] summary::after {
  transform: rotate(225deg);
}

.question-accordion p {
  position: relative;
  transform: translateY(-10px);
  opacity: 0;
  margin: 0;
  padding: 0.5em 3em 0.5em;
  color: #313131;
  transition: transform 0.5s, opacity 0.5s;
}

.question-accordion[open] p {
  transform: none;
  opacity: 1;
}

.question-accordion > p::before {
  color: #c4ecc6;
  line-height: 0.9;
  margin-left: 5px;
  content: "A";
}

.answer-ditail {
  display: flex;
  justify-content: center;
}

/* ボーダー */
.question-accordion[open] .answer-border {
  border-top: 1px solid #c4ecc6;
  width: 90%;
  margin: auto;
}

.answer-ditail {
  padding-bottom: 80px;
  text-align: center;
}

.question-accordion .answer-ditail-link {
  padding-top: 30px;
  color: #439247;
}

.question-accordion .answer-imgs-container {
  margin: 0 auto;
  display: flex;
  justify-content: center;
  padding-bottom: 80px;
  flex-wrap: wrap;
}

.question-accordion .answer-img {
  width: 300px;
  height: 300px;
  margin: 0 auto;
}

.question-accordion .answer-img img {
  object-fit: contain;
  width: 100%;
}

.question-accordion .answer-imgs {
  width: 200px;
  height: 150px;
  text-align: center;
}

.question-accordion .answer-imgs img {
  object-fit: contain;
}

.question-accordion .answer-imgs p {
  padding: 0;
}

.question-accordion summary:not(::before),
.question-accordion summary:not(::after) {
  width: 80%;
}

@media (max-width: 600px) {
  summary {
    width: 100%;
  }

  .question-section {
    padding-top: 50px;
  }

  .question-wrapper-body {
    margin: 50px auto 0 auto;
  }

  .question-accordion summary {
    padding-left: 60px;
    font-size: 1rem;
  }

  .question-accordion summary::after {
    width: 8px;
    height: 8px;
  }

  .question-accordion p {
    padding-left: 60px;
    font-size: 1rem;
  }
}
