@charset "UTF-8";


/* ==========================================================================
   FAQ
========================================================================== */
#faq .anchor-links {
   margin-right: -5px;
   margin-left: -5px;
}
#faq .anchor-links li {
   padding-right: 5px;
   padding-left: 5px;
   margin-bottom: 10px;
}
.anchor-links li a {
   display: inline-block;
   max-width: 100%;
   width: 100%;
   font-size: .923em;
   font-weight: 700;
   line-height: 1.25;
   padding: 1.25em 4em 1.25em 2.25em;
   border-radius: 3em;
   border: 1px solid currentColor;
   text-decoration: none;
   white-space: nowrap;
   cursor: pointer;
   position: relative;
   transition: .2s ease-in-out;
}
.anchor-links li a:before {
   content: '';
   display: block;
   width: 1em;
   height: 1.25em;
   position: absolute;
   top: 50%;
   right: 2em;
   background: url(../_assets/common/img/icon-arrow-b.svg) no-repeat center center / contain;
   transform: translateY(-50%) rotate(90deg);
}

@media only screen and (min-width: 768px) {
   .anchor-links li a {
      width: auto;
   }
}
@media only screen and (min-width: 992px) {
   #faq .anchor-links {
      margin-right: -15px;
      margin-left: -15px;
   }
   #faq .anchor-links li {
      padding-right: 15px;
      padding-left: 15px;
      margin-bottom: 15px;
   }
   .anchor-links li a {
      font-size: .875em;
   }
   .anchor-links li a:before {
      width: 0.75em;
      height: 1em;
   }
}

.faq-head {
   margin-bottom: .25em;
}
.faq-head .ttl {
   padding: .9em 0;
   border-bottom: 2px solid currentColor;
}

.acc {
   padding: 1.5em 0;
   border-bottom: 2px solid #DDD;
}
.acc_head {
   font-size: 1.077em;
   font-weight: 700;
   line-height: 1.75;
   padding-right: 4em;
   position: relative;
}
.acc_head:before {
   content: '';
   display: block;
   width: 2.75em;
   height: 2.75em;
   border-radius: 3em;
   border: 1px solid currentColor;
   position: absolute;
   top: 50%;
   right: 0;
   transform: translateY(-50%);
}
.acc_head:after {
   content: '';
   display: block;
   width: 0.8em;
   height: 1.071em;
   position: absolute;
   top: 50%;
   right: 1em;
   background: url(../_assets/common/img/icon-arrow-b.svg) no-repeat center center / contain;
   transform: translateY(-45%) rotate(90deg);
}
.acc_head.on:after {
   transform: translateY(-50%) rotate(-90deg);
}

.acc_body {
   padding-top: 1.5em;
   font-size: .813rem;
}

@media only screen and (min-width: 992px) {
   .acc {
      padding: 2em 0;
   }
   .acc_head {
      font-size: 1.25em;
   }
   .acc_head:before {
      width: 2.5em;
      height: 2.5em;
   }
   .acc_head:after {
      width: 0.45em;
      height: 0.75em;
      right: 1.05em;
   }
}




