@charset "UTF-8";
/* ----------------------------------------
よくある質問
 ---------------------------------------- */ 

/* PC */
@media (min-width: 769px){
}
/* SP */
@media (max-width: 768px) {
}
/* print */
@media print {
}

/* ----------------------------------------
faq_category
 ---------------------------------------- */ 
.faq_category{
  padding-top: 65px;
}
.faq_category:first-child{
  padding-top: 0;
}

/* ----------------------------------------
faq_category_ttlBox
 ---------------------------------------- */ 
.faq_category_ttlBox{
  border-bottom: 1px solid #b5b5b5;
  margin-bottom: 36px;
  padding-bottom: 30px;
  display: flex;
  align-items: start;
  justify-content: space-between;
  gap: 10px;
}
.faq_category_ttl{
  font-size: 2rem;
  color: #3a9d27;
  font-weight: 700;
  letter-spacing: 0.075em;
}
/* SP */
@media (max-width: 768px) {
  .faq_category_ttlBox{
    margin-bottom: 33px;
    padding-bottom: 12px;
    align-items: flex-end;
  }
  .faq_category_ttl{
    font-size: 1.5rem;
    padding-bottom: 3px;
  }
}

/* ---faq_openAll--- */
.faq_openAll{
  font-size: 1.5rem;
  font-weight: 700;
  position: relative;
  transition: 0.2s;
  margin-top: 0.2em;
  padding-right: 40px;
  padding-top: 5px;
  padding-bottom: 5px;
}
  .faq_openAll:hover{
    opacity: 0.5;
    cursor: pointer;
  }
.faq_openAll i{
  position: absolute;
  top: calc(0.4em + 5px);
  right: 5px;
  transition: 0.2s;
  transform: scaleY(1);
}
.faq_openAll.allOpen i{
  top: calc(0.8em + 5px);
  transform: scaleY(-1);
}
.faq_openAll i::before{
  content: "";
  display: block;
  width: 9px;
  height: 9px;
  border-right: 1px solid #464646;
  border-bottom: 1px solid #464646;
  transform: rotate(45deg);
}
/* SP */
@media (max-width: 768px) {
  .faq_openAll{
    margin-top: 0;
    font-size: 1.3rem;
    padding-right: 30px;
  }
}

/* ----------------------------------------
faq_question
 ---------------------------------------- */ 
.faq_item{
  border-bottom: 1px solid #b5b5b5;
  margin-bottom: 36px;
  padding-bottom: 35px;
}
.faq_category:last-child .faq_items:last-child .faq_item:last-child{
  margin-bottom: 0;
}
/* SP */
@media (max-width: 768px) {
  .faq_item{
    margin-bottom: 33px;
    padding-bottom: 33px;
  }
}

/* ----------------------------------------
faq_question
 ---------------------------------------- */ 
.faq_question{
  font-size: 1.8rem;
  position: relative;
  padding-left: 80px;
  padding-right: 30px;
  transition: 0.2s;
}

.faq_question::before{
  content: "Q.";
  display: inline-block;
  font-size: 3.2rem;
  position: absolute;
  top: -0.4em;
  left: 10px;
}
/* SP */
@media (max-width: 768px) {
  .faq_question{
    font-size: 1.5rem;
    padding-left: 47px;
    padding-right: 40px;
  }
  .faq_question::before{
    font-size: 2.5rem;
    left: 0;
  }
}

  .faq_question:hover{
    opacity: 0.5;
    cursor: pointer;
  }
.faq_question i{
  position: absolute;
  top: calc(0.2em + 5px);
  right: 5px;
  transition: 0.2s;
  transform: scaleY(1);
}
.faq_question.active i{
  top: calc(0.6em + 5px);
  transform: scaleY(-1);
}
.faq_question i::before{
  content: "";
  display: block;
  width: 9px;
  height: 9px;
  border-right: 1px solid #464646;
  border-bottom: 1px solid #464646;
  transform: rotate(45deg);
}

/* ----------------------------------------
.faq_answer
 ---------------------------------------- */ 
.faq_answer{
  display: none;
  font-size: 1.5rem;
  position: relative;
  margin-top: 30px;
  padding-left: 80px;
}
.faq_answer::before{
  content: "A.";
  color: #3a9d27;
  display: inline-block;
  font-size: 3.2rem;
  position: absolute;
  top: -0.45em;
  left: 10px;
}
/* SP */
@media (max-width: 768px) {
  .faq_answer{
    font-size: 1.3rem;
    margin-top: 13px;
    padding-left: 47px;
    padding-right: 40px;
  }
  .faq_answer::before{
    font-size: 2.5rem;
    left: 0;
  }
}

/* ----------------------------------------
.faq_detail
 ---------------------------------------- */ 
/* ---faq_detail_moreBtn--- */
.faq_detail_moreBtn{
  text-align: center;
  margin-top: 35px;
  padding-right: 60px;
  font-size: 1.5rem;
}
.faq_detail_moreBtn span{
  display: inline-block;
  padding: 5px 35px 5px 0;
  position: relative;
  transition: 0.2s;
}
  .faq_detail_moreBtn span:hover{
    opacity: 0.5;
    cursor: pointer;
  }
/* SP */
@media (max-width: 768px) {
  .faq_detail_moreBtn{
    font-size: 1.3rem;
    margin-top: 12px;
    padding-left: 10px;
    padding-right: 0;
  }
}
.faq_detail_moreBtn i{
  position: absolute;
  top: calc(0.4em + 5px);
  right: 5px;
  transition: 0.2s;
  transform: scaleY(1);
}
.faq_detail_moreBtn.active i{
  top: calc(0.8em + 5px);
  transform: scaleY(-1);
}
.faq_detail_moreBtn i::before{
  content: "";
  display: block;
  width: 9px;
  height: 9px;
  border-right: 1px solid #464646;
  border-bottom: 1px solid #464646;
  transform: rotate(45deg);
}

/* ---faq_detail--- */
.faq_detail{
  display: none;
  font-size: 1.5rem;
  margin-top: 32px;
}
/* SP */
@media (max-width: 768px) {
  .faq_detail{
    font-size: 1.3rem;
    margin-top: 15px;
  }
}