#qa {
  padding-top: 120px; }
  #qa dl {
    padding-bottom: 100px; }
    #qa dl dt {
      border-bottom: 1px solid #002c78;
      text-align: center;
      font-size: 22px;
      font-size: 2.2rem;
      font-weight: 500;
      padding-top: 30px;
      padding-bottom: 40px;
      position: relative; }
      #qa dl dt:before {
        content: "Q";
        z-index: -1;
        top: 0;
        left: 50%;
        -webkit-transform: translate(-50%, 0%);
        transform: translate(-50%, 0%);
        position: absolute;
        color: #ebebeb;
        font-size: 68px;
        font-size: 6.8rem;
        line-height: 1;
        font-family: 'Noto Serif JP', serif;
        font-weight: 700; }
    #qa dl dd {
      font-size: 16px;
      font-size: 1.6rem;
      line-height: 1.875;
      padding-top: 50px;
      width: 81.6%;
      margin: 0 auto; }

@media screen and (max-width: 1200px) {
  #qa {
    padding: calc(120 / 1200 * 100vw) 15px 0; }
    #qa dl {
      padding-bottom: calc(100 / 1200 * 100vw); }
      #qa dl dt {
        font-size: calc(28 / 1200 * 100vw);
        padding-top: calc(30 / 1200 * 100vw);
        padding-bottom: calc(40 / 1200 * 100vw); }
        #qa dl dt:before {
          font-size: calc(70 / 1200 * 100vw); }
      #qa dl dd {
        font-size: calc(20 / 1200 * 100vw);
        padding-top: calc(50 / 1200 * 100vw); } }
@media screen and (max-width: 750px) {
  #qa {
    padding: calc(120 / 750 * 100vw) calc(40 / 750 * 100vw) 0; }
    #qa dl {
      padding-bottom: calc(100 / 750 * 100vw); }
      #qa dl dt {
        font-size: calc(32 / 750 * 100vw);
        line-height: 1.5;
        padding-top: calc(30 / 750 * 100vw);
        padding-bottom: calc(40 / 750 * 100vw); }
        #qa dl dt:before {
          font-size: calc(100 / 750 * 100vw); }
      #qa dl dd {
        font-size: calc(25 / 750 * 100vw);
        padding-top: calc(50 / 750 * 100vw);
        width: 90%;
        margin: 0 auto; } }
