.faqHeader {
  text-align: center;
}
.faqHeader .ttl {
  font-weight: 400;
  line-height: 1.24;
}
.faqHeader .ttl .en, .faqHeader .ttl .ja {
  display: block;
}
.faqHeader .ttl .en {
  letter-spacing: 0.05em;
}
.faqHeader .ttl .ja {
  font-size: 1rem;
}
@media print, screen and (min-width: 768px) {
  .faqHeader {
    padding: 90px 0 60px;
  }
  .faqHeader .ttl .en {
    font-size: 50px;
    padding-bottom: 10px;
  }
}
@media screen and (max-width: 767px) {
  .faqHeader .ttl {
    padding: 13% 0;
  }
  .faqHeader .ttl .en {
    font-size: 2.3rem;
    padding-bottom: .5em;
  }
  .faqHeader .serif {
    padding: 0 6% 13%;
    font-size: 1.38rem;
    line-height: 2.16;
  }
}

.faqSec {
  position: relative;
  margin: 0 auto;
}
.faqSec .faqSecTtl {
  line-height: 1.4;
  padding-bottom: 1em;
  text-align: center;
}
.faqSec .faqSecTtl .en {
  display: block;
  padding-top: .5em;
  font-weight: 400;
  color: #999;
  font-size: 60%;
}
@media print, screen and (min-width: 768px) {
  .faqSec {
    max-width: 1142px;
    padding: 0 4% 100px;
  }
  .faqSec .faqSecTtl {
    font-size: 1.75rem;
  }
}
@media screen and (max-width: 767px) {
  .faqSec {
    padding: 0 4% 16%;
  }
  .faqSec .faqSecTtl {
    font-size: 1.42rem;
  }
}

.QuestionAndAnswer {
  border-bottom: 1px solid #ccc;
}

.QuestionAccordion,
.QuestionAccordionAnswer {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.QuestionAccordionAnswer {
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: opacity .5s ease, padding .5s ease, max-height .5s ease;
}

.QuestionAccordion {
  padding: 2em 0;
  border-top: 1px solid #ccc;
  cursor: pointer;
}
.QuestionAccordion.active + .QuestionAccordionAnswer {
  padding: 0 0 2em;
  max-height: none;
  opacity: 1;
}

.QuestionTitleQ,
.QuestionArrow,
.QuestionTitleA {
  white-space: nowrap;
}

.QuestionTitleQ,
.QuestionTitleA {
  font-weight: 400;
  line-height: 1;
  font-family: Times, "Times New Roman", "serif";
}

.QuestionTitleQ {
  color: #be0909;
}

.QuestionTitleA {
  color: #0047bb;
}

.QuestionAnswerSubTitle{
	font-size: 20px;
	font-weight: 700;
	padding: 0 0 0 15px;
	text-align: left;
	color: #fff;
	background: #376eaa;
}

.QuestionTitle.QuestionAnswerText p{
	color: #376eaa;
	font-weight: 700;
	padding-top: 40px;
}
.QuestionArrow {
  margin-left: auto;
  position: relative;
}
.QuestionArrow i {
  display: inline-block;
  width: 1em;
  height: 1em;
}
.QuestionArrow i:before {
  content: "";
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  width: .8em;
  height: .8em;
  margin: -0.6em 0 0 -0.4em;
  box-sizing: border-box;
  border-right: 2px solid #333;
  border-bottom: 2px solid #333;
  transform: rotate(45deg);
}

.active .QuestionArrow i:before {
  margin-top: -0.2em;
  transform: rotate(-135deg);
}

.QuestionTitleTx,
.QuestionTitleTxLine {
  font-weight: 700;
  line-height: 1.75;
}

.QuestionAnswerText,
.QuestionAnswerTxLine {
  line-height: 1.875;
}
.QuestionAnswerText a,
.QuestionAnswerTxLine a {
  color: #74aa50;
  text-decoration: underline;
}

@media print, screen and (min-width: 768px) {
  .QuestionTitleQ,
  .QuestionTitleA {
    font-size: 50px;
  }

  .QuestionTitleTx,
  .QuestionTitleTxLine,
  .QuestionAnswerText,
  .QuestionAnswerTxLine {
    padding-left: 2em;
    max-width: calc(100% - 50px);
  }

  .QuestionTitleTx,
  .QuestionTitleTxLine {
    max-width: calc(100% - 3em - 50px);
  }

  .QuestionAnswerText a:hover,
  .QuestionAnswerTxLine a:hover {
    text-decoration: none;
  }

  .QuestionArrow {
    width: 3em;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .QuestionTitleQ,
  .QuestionTitleA {
    font-size: 1.78rem;
  }

  .QuestionTitleTx,
  .QuestionTitleTxLine,
  .QuestionAnswerText,
  .QuestionAnswerTxLine {
    font-size: 1.14rem;
    padding-left: .5em;
    max-width: calc(100% - 2em);
  }

  .QuestionTitleTx,
  .QuestionTitleTxLine {
    max-width: calc(100% - 4em);
  }

  .QuestionArrow {
    width: 2.5em;
    text-align: center;
  }
}
.ProductsCustomerContents {
  text-align: center;
}
.ProductsCustomerContents a {
  position: relative;
  display: inline-block;
  padding: .5em 3em;
  font-weight: bold;
  border: 1px solid #707070;
  border-radius: 20em;
  background: #fff;
  transition: background .15s linear;
}
.ProductsCustomerContents a:after {
  content: "";
  display: block;
  position: absolute;
  right: 1em;
  top: 50%;
  width: .6em;
  height: .6em;
  margin-top: -0.3em;
  box-sizing: border-box;
  border-top: 2px solid #333;
  border-right: 2px solid #333;
  transform: rotate(45deg);
  transition: right .15s linear;
}
@media print, screen and (min-width: 768px) {
  .ProductsCustomerContents {
    padding-top: 60px;
  }
  .ProductsCustomerContents + .ProductsCustomerContents {
    padding-top: 20px;
  }
  .ProductsCustomerContents a:hover {
    background: #f2f2f2;
  }
  .ProductsCustomerContents a:hover:after {
    right: .8em;
  }
}
@media screen and (max-width: 767px) {
  .ProductsCustomerContents {
    padding-top: 8%;
  }
  .ProductsCustomerContents + .ProductsCustomerContents {
    padding-top: 4%;
  }
  .ProductsCustomerContents a {
    display: block;
  }
}
