/*---------------------------------------------------------------------------*/
.section-faq + .section-faq { margin-top: 10rem; }

.section-faq .container { padding-bottom: 1rem; }

.section-faq dl { -moz-box-shadow: 3px 3px 5px 0px gainsboro; box-shadow: 3px 3px 5px 0px gainsboro; }

.section-faq dl + dl { margin-top: 2rem; }

.section-faq dl dt { border-left: 2px solid #CC0000; position: relative; }

.section-faq dl dt:before { position: absolute; content: 'Q'; font-size: 2rem; font-weight: 600; color: #CC0000; left: 2.4rem; top: 1.5rem; font-family: "Noto Sans JP", sans-serif; }

.section-faq dl dt span { display: block; padding: 1.8rem 7rem 1.8rem 6rem; position: relative; cursor: pointer; }

.section-faq dl dt span:before, .section-faq dl dt span:after { position: absolute; content: ''; top: 50%; -webkit-transform: translateY(-50%); -moz-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); background: #CC0000; }

.section-faq dl dt span:before { right: 3.5rem; width: 2px; height: 1.4rem; -webkit-transition: all .3s ease; -moz-transition: all .3s ease; transition: all .3s ease; }

.section-faq dl dt span:after { right: 2.9rem; width: 1.4rem; height: 2px; }

.section-faq dl dt.active span:before { opacity: 0; }

.section-faq dl dd { background: #F9F9F9; padding: 1.8rem 7rem 1.8rem 2.4rem; line-height: 2; display: none; }

.section-faq dl dd a { display: inline-block; color: #CC0000; }

@media screen and (max-width: 768px) { .section-faq + .section-faq { margin-top: 13.33333vw; }
  .section-faq dl + dl { margin-top: 4vw; }
  .section-faq dl dt:before { font-size: 4vw; left: 3.2vw; top: 5.33333vw; }
  .section-faq dl dt span { padding: 5.33333vw 13.33333vw 5.33333vw 9.33333vw; }
  .section-faq dl dt span:before { right: 5.06667vw; height: 2.66667vw; }
  .section-faq dl dt span:after { right: 4vw; width: 2.66667vw; }
  .section-faq dl dd { padding: 4vw 3.46667vw 4vw 3.46667vw; } }
