@charset "utf-8";
.theme_main_only p {
  margin: 0;
}
#faq dl {
  border-bottom: 1px solid #ccc;
  margin: 0 auto;
  font-size: 18px;
}
#faq dt {
  border-top: 1px solid #ccc;
  padding: 15px 45px 15px 45px;
  position: relative;
  line-height: 160%;
  cursor: pointer;
}
#faq dt .firstletter {
  width: 40px;
  font-weight: 700;
  font-size: 1.2em;
  text-align: center;
  color: #3399CC;
  display: inline-block;
  margin-left: -40px;
}
#faq dt.active {
  font-weight: 700;
  color: #000;
  background-color: rgba(196, 0, 0, 0.05);
}
#faq dt::before {
  position: absolute;
  display: block;
  content: '';
  width: 24px;
  height: 24px;
  background-color: #C40000;
  border-radius: 50%;
  top: 50%;
  right: 10px;
  -moz-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -o-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
#faq dt::after {
  position: absolute;
  display: block;
  content: '';
  width: 8px;
  height: 8px;
  border-right: solid 2px #fff;
  border-bottom: solid 2px #fff;
  top: 50%;
  margin-top: -6px;
  right: 18px;
  -moz-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  transition: 0.5s;
}
#faq dt.active::after {
  position: absolute;
  display: block;
  content: '';
  width: 8px;
  height: 8px;
  border-right: solid 2px #fff;
  border-bottom: solid 2px #fff;
  top: 50%;
  margin-top: -3px;
  right: 18px;
  -moz-transform: rotate(225deg);
  -webkit-transform: rotate(225deg);
  -o-transform: rotate(225deg);
  -ms-transform: rotate(225deg);
  transform: rotate(225deg);
}
#faq dd {
  display: none;
  padding: 5px 45px 20px 45px;
  line-height: 160%;
}
#faq dd.active {
  display: block;
  background-color: rgba(196, 0, 0, 0.05);
}
#faq dd .firstletter {
  width: 40px;
  font-weight: 700;
  font-size: 1.2em;
  text-align: center;
  color: #e62328;
  display: inline-block;
  margin-left: -40px;
  vertical-align: top;
}
#faq dd p {
  display: inline-block;
}
#faq dd p.red {
  color: #e62328;
}
#faq dd p.capText {
  text-indent: -1em;
  padding-left: 1em;
  font-weight: 400;
  margin: 0;
}
#faq dd p.bold {
  font-weight: 700;
}
#faq dd ul {
  list-style-type: disc;
  padding-left: 1.5em;
  margin: 0 0 10px;
}
#faq dd li {
  margin: 10px 0;
}
#faq dd li p {
  display: block;
}
@media screen and (min-width: 768px) {
  #faq {
    max-width: 83.33333333%;
    margin: 0 auto;
  }
  #faq dt:hover {
    background-color: rgba(196, 0, 0, 0.05);
  }
}
@media screen and (max-width: 767px) {
  #faq dl {
    font-size: 16px;
  }
  #faq dt {
    padding: 10px 45px 10px 40px;
  }
  #faq dd {
    padding: 5px 45px 15px 40px;
  }
}