@charset "utf-8";

#faq_wrapper {
  position: relative;
  width: 800px;
  margin: 20px auto;
}
.category {
  width: 800px;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.6;
  border-bottom: solid 1px #555;
  margin: 40px 0 20px;
  text-indent: 12px;
}
.category:first-child {margin-top: 0 !important;}
.question {
  position: relative;
  width: 718px;
  margin: 0 0 20px 40px;
  padding: 4px 40px 4px 0;
  text-indent: -28px;
}
.question::before {
  content: "Q.";
  color: #777;
  font-size: 20px;
  font-weight: 600;
  margin-right: 8px;
}
.opened::after {
  content: "";
  position: absolute;
  display: inline-block;
  top: 8px;
  right: 4px;
  width: 20px;
  height: 20px;
  background-image: url(../images/common/fold_on.png);
  background-size: contain;
  background-repeat: no-repeat;
}
.closed::after {
  content: "";
  position: absolute;
  display: inline-block;
  top: 8px;
  right: 4px;
  width: 20px;
  height: 20px;
  background-image: url(../images/common/fold_off.png);
  background-size: contain;
  background-repeat: no-repeat;
}
.answer {
  position: relative;
  width: 718px;
  margin: 0 0 20px 40px;
  padding: 4px 28px 4px 0;
  text-indent: -28px;
  display: none;
}
.answer::before {
  content: "A.";
  color: #777;
  font-size: 20px;
  font-weight: 600;
  margin-right: 8px;
}
.answer a {
  text-decoration: underline;
}
.answer img {
  width: 18px;
  vertical-align: middle;
  margin: 0 4px;
}

.answer ul{
  list-style: disc;
  list-style-position: outside;
  margin: 1em 0;
  padding-left: 20px;
}
.answer li{
  padding-left: 0;
  text-indent: 0;
}
.answer li::marker{
  font-size: 1em;
}
.answer li{
  padding-left: 0.6em;
}
.answer .figure{
  text-indent: 0;
  margin: 1.2em auto;
}
.answer .figure img{
  display: block;
  width: 80%;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

#faq_wrapper p {
  margin-top: 1em;
  text-indent: 0;
}

@media only screen and (min-width:641px) and (max-width:999px) {
  #faq_wrapper {width: 90%;}
  .category {width: 100%;}
  .question {width: 80%;}
  .answer {width: 80%;}
}

@media only screen and (max-width: 640px) {
  #faq_wrapper {
    width: 90%;
    margin: 4vw auto;
  }
  .category {
    width: 100%;
    font-size: 5vw;
    margin: 5vw 0 3vw;
  }
  .question {
    width: 80%;
    margin: 0 0 5vw 10vw;
    padding: 0.5vw 8vw 0.5vw 0;
    text-indent: -5.5vw;
  }
  .question::before {
    content: "Q.";
    font-size: 5vw;
    margin-right: 1vw;
  }
  .opened::after {
    content: "";
    position: absolute;
    display: inline-block;
    top: 1.5vw;
    right: 0.5vw;
    width: 5vw;
    height: 5vw;
    background-image: url(../images/common/fold_on.png);
    background-size: contain;
    background-repeat: no-repeat;
  }
  .closed::after {
    content: "";
    position: absolute;
    display: inline-block;
    top: 1.5vw;
    right: 0.5vw;
    width: 5vw;
    height: 5vw;
    background-image: url(../images/common/fold_off.png);
    background-size: contain;
    background-repeat: no-repeat;
  }
  .answer {
    width: 80%;
    margin: 0 0 5vw 10vw;
    padding: 0.5vw 8vw 0.5vw 0;
    text-indent: -5.5vw;
    display: none;
  }
  .answer::before {
    content: "A.";
    font-size: 5vw;
    margin-right: 1vw;
  }
  .answer ul{
    padding-inline-start: 2vw;
    margin-block: 2vw;
  }
  .answer li{
    padding-inline-start: 0;
    text-indent: 0;
  }
  .answer li{
    padding-inline-start: 2.2vw;
  }
  .answer li::marker{
    font-size: 1em;
  }
  .answer .figure{
    margin: 4vw auto;
  }
  .answer .figure img{
    width: 100%;
  }
}
