.p-faq-search {
  width: 65.4%;
  margin: 0 auto;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .p-faq-search {
    width: 100%;
  }
}
.p-faq-search__input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: 100%;
  padding: 15px 20px 15px 49px;
  border: 1px solid #ccc;
  border-radius: 5px;
}
.p-faq-search__input::placeholder {
  color: #514F4E;
  font-size: 1.4rem;
  font-weight: 600;
}
.p-faq-search__btn {
  position: relative;
  height: 100%;
  background: none;
  margin: 0 15px 0 0;
  border: none;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 22px;
}
.p-faq-search__btn::before {
  content: "\f002";
  position: absolute;
  top: 55%;
  left: 0;
  color: #e60012;
  font-family: "fontawesome solid";
  font-size: 1.2rem;
  -webkit-transform: translateY(-55%);
  transform: translateY(-55%);
}
.p-faq-search__btn:focus, .p-faq-search__btn:focus-visible {
  border: 2px solid #333 !important;
}
.p-faq .c-button:focus, .p-faq .c-button:focus-visible,
.p-faq .p-box--alert-02 .c-button-03__item:focus,
.p-faq .p-box--alert-02 .c-button-03__item:focus-visible,
.p-faq .c-button-06__item:focus,
.p-faq .c-button-06__item:focus-visible {
  border: 1px solid #333 !important;
}
.p-faq .c-list-accd__item .c-list-qanda--003__item:last-of-type {
  border-bottom: none;
}
.p-faq .c-list-accd__item.is-open {
  padding-bottom: 0;
}
.p-faq .c-list-accd__item.is-open .c-list-qanda--003__item:first-of-type {
  border-top: 1px solid #dcdddd;
}
.p-faq .c-list-accd__item.is-open .c-list-accd__question {
  color: #000;
}
.p-faq .p-pager--faq {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  width: 90%;
  margin: 0 auto;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  -webkit-justify-content: space-between;
          justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
          align-items: center;
}
@media print, screen and (min-width: 768px) {
  .p-faq .p-pager--faq {
    width: 100%;
    padding: 10px 0;
  }
}
.p-faq .p-pager--faq__item {
  position: relative;
  margin-top: 0;
  padding: 5px 0;
}
.p-faq .p-pager--faq__item[data-position=left] {
  text-align: left;
  width: 20%;
  -webkit-box-ordinal-group: 2;
  -webkit-order: 1;
      -ms-flex-order: 1;
          order: 1;
}
@media print, screen and (min-width: 768px) {
  .p-faq .p-pager--faq__item[data-position=left] {
    width: 10%;
  }
}
.p-faq .p-pager--faq__item[data-position=left] .p-pager--faq__item--link {
  padding-left: 30px;
}
.p-faq .p-pager--faq__item[data-position=left] .p-pager--faq__item--link::before {
  content: "\f104";
  display: inline-block;
  position: absolute;
  top: 50%;
  left: 14px;
  color: #e60012;
  font-family: "fontawesome solid";
  font-size: 1.6rem;
  -webkit-transform: translateY(-46%);
  transform: translateY(-46%);
}
.p-faq .p-pager--faq__item[data-position=center] {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-ordinal-group: 3;
  -webkit-order: 2;
      -ms-flex-order: 2;
          order: 2;
}
.p-faq .p-pager--faq__item[data-position=center] li {
  margin: 5px 0;
  padding: 0 10px;
  border-right: 1px solid #dcdddd;
}
@media print, screen and (min-width: 768px) {
  .p-faq .p-pager--faq__item[data-position=center] li {
    padding: 0 15px;
  }
}
.p-faq .p-pager--faq__item[data-position=center] li:last-of-type {
  border-right: none;
}
.p-faq .p-pager--faq__item[data-position=center] li.is-active {
  font-weight: 700;
  pointer-events: none;
}
.p-faq .p-pager--faq__item[data-position=right] {
  text-align: right;
  width: 20%;
  -webkit-box-ordinal-group: 4;
  -webkit-order: 3;
      -ms-flex-order: 3;
          order: 3;
}
@media print, screen and (min-width: 768px) {
  .p-faq .p-pager--faq__item[data-position=right] {
    width: 10%;
  }
}
.p-faq .p-pager--faq__item[data-position=right] .p-pager--faq__item--link {
  padding-right: 30px;
}
.p-faq .p-pager--faq__item[data-position=right] .p-pager--faq__item--link::before {
  content: "\f105";
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 14px;
  color: #e60012;
  font-family: "fontawesome solid";
  font-size: 1.6rem;
  -webkit-transform: translateY(-46%);
  transform: translateY(-46%);
}
.p-faq .p-pager--faq__item a:hover {
  text-decoration: underline;
}

.c-list-qanda--003__answer a {
  color: #065eb6;
  text-decoration: underline;
  position: relative;
  padding-left: 19px;
}
@media only screen and (max-width: 767px) {
  .c-list-qanda--003__answer a {
    padding-left: 5.06667vw;
  }
}
.c-list-qanda--003__answer a:before {
  content: "\f138";
  display: inline-block;
  position: absolute;
  top: -3px;
  left: 0;
  font-family: "fontawesome solid";
  color: #065eb6;
}
@media only screen and (max-width: 767px) {
  .c-list-qanda--003__answer a:before {
    top: -1px;
  }
}
.c-list-qanda--003__answer a[target=_blank]:before {
  content: "\f35d";
}
.c-list-qanda--003__answer a[href*=".pdf"]:before {
  content: "\f1c1";
  left: 2px;
  color: #e60012;
}
.c-list-qanda--003__answer a[href$=".doc"]:before, .c-list-qanda--003__answer a[href$=".docx"]:before {
  content: "\f1c2";
  left: 2px;
}
.c-list-qanda--003__answer a[href$=".xls"]:before, .c-list-qanda--003__answer a[href$=".xlsm"]:before, .c-list-qanda--003__answer a[href$=".xlsx"]:before {
  content: "\f1c3";
  left: 2px;
  color: #116b38;
}
.c-list-qanda--003__answer a:hover {
  text-decoration: none;
}

/*20260703追加分*/
.l-main .c-heading-06 {
    padding-bottom: 18px;
    margin-bottom: 28px;
    font-size: 24px;
}
.c-heading-06 {
    position: relative;
    font-weight: bold;
    padding-bottom: 0.71429em;
    margin-bottom: 1.07143em;
    font-size: 1.5rem;
    line-height: 1.5;
}
.c-heading-06::before, .c-heading-06::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background: #ccc;
}
.c-heading-06::after {
    background: #e60012;
    width: 30px;
}
.p-title-icon01 {
    display: inline-block;
    width: 24px;
    height: 24px;
    background: url("/faq/img/icon_faq.svg") no-repeat center;
    background-size: contain;
    vertical-align: middle;
    margin-right: 8px;
}
.p-title-icon02 {
    display: inline-block;
    width: 24px;
    height: 24px;
    background: url("/faq/img/icon_envelope.svg") no-repeat center;
    background-size: contain;
    vertical-align: middle;
    margin-right: 8px;
}
.c-heading-4 {
    margin: 1em 0;
    position: relative;
    border-left: 4px solid #e60012;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 15px;
    padding-left: 16px;
}

/* 背景色赤・青エリア*/
.p-box--red01 {
  background-color:#F7E7E8;
  border-left: 2px solid #E60012;
  padding: 30px 40px;
}
.p-box--blue01 {
  background-color: #E7E9EF;
  border-left: 2px solid #0F2566;
  padding: 30px 40px;
}
.p-box--red01 .c-button-group, .p-box--blue01 .c-button-group {
    display:flex;
    gap: 20px;
}
*+.c-button-group {
    margin-top: 15px;
}
.p-box--title {
  font-size: 18px;
  font-weight: 600;
  line-height: 125%; 
}
 .p-bunner-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 200px;
    border: 1px solid #ddd;
    border-radius: 5px;
    padding: 25px 25px 30px;
    background: #fff;
    position: relative;
}
.p-bunner-box::after {
    content: "\f35d";
    position: absolute;
    bottom: 3px !important;
    right: 6px;
    font-family: "fontawesome solid";
    font-size: 1.2rem;
    color:#e60012;
}
.p-bunner-box:hover{
        opacity: .7;
}
.p-bunner-box--icon {
  width: 60px;
  margin: 0 auto;
}
.p-title-tag01 {
  display: block;
  font-size: 1.5rem;
  font-weight: 700;
  margin-bottom: 10px;
  margin-top:5px;
  border-radius: 4px;
}
.p-title-tag02 {
  color: rgb(255, 255, 255);
  font-size: 12px;
  font-weight: 600;
  line-height: 170%; /* 20.4px */
  background-color: #333;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2px 11px;
  border-radius: 4px;
  margin-top: auto;
  
}
@media only screen and (max-width: 1365px) {
.p-bunner-box {
    padding: 25px 25px 30px 25px;
}
@media only screen and (max-width: 767px) {
  .p-faq--contents .l-col-12-sp {
    padding-bottom: 30px;
  }
  .p-box--red01, .p-box--blue01 {
    padding: 20px 30px;
  }
  .p-box--red01 .c-button-group, .p-box--blue01 .c-button-group {
    flex-direction: column;
    gap: 20px 0;
  }
    .p-bunner-box {
        display: block;
        width: 100%;
        box-sizing: border-box;
    }
    .p-bunner-box {
      padding: 25px 25px 30px 25px;
    }
}

}
/* ここまで　背景色赤・青エリア*/

/*.p-contents01 ここから*/
.p-contents01  {
  display:flex;
  gap: 40px;
  margin-top: 40px;
}
.p-bunner-box--wrap {
  display:flex;
  gap: 30px;
  justify-content: center;
}
.p-contents01 .p-bunner-box {
width: calc((100% - 80px) / 3);
padding: 50px 48px;
}
.p-contents01 .p-contents01--text {
  text-align: center;
}

@media only screen and (max-width: 1365px) {

.p-contents01 .p-bunner-box {
    padding: 20px 10px;
}
}
@media only screen and (max-width: 767px) {
  .p-contents01  {
    flex-direction: column;
    gap: 20px 0;
    padding: 0 30px;
    margin-top: 10px;
  }
  .p-contents01 .p-bunner-box--wrap {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
}
  .p-contents01 .p-bunner-box {
    width: 100%;
    margin: 0 auto;
    padding: 25px 25px 30px;
  }
  .p-contents01 .p-title-tag01 {
    margin-top: 5px;
    margin-bottom: 10px;
  }
}
/*.p-contents01 ここまで*/
/*その他のよくある質問 ここから*/
.p-faq--contents .c-button-06__item::after {
  content: "\f35d";
  position: absolute;
  top: auto;
  bottom: 7px !important;
  right: 6px;
  font-family: "fontawesome solid";
  font-size: 1.2rem;
  color:#e60012;
}
@media only screen and (max-width: 767px) {
  .p-faq--contents .c-button-06__item+.c-button-06__item {
    margin-top: 20px;
  }
}
/*その他のよくある質問 ここまで*/
/*.p-contents02 ここから*/
.p-contents02  {
  display:flex;
  gap: 40px;
  margin-top: 30px; 
}
.p-contents02 .p-bunner-box {
  width: calc((100% - 120px) / 4);
  padding: 35px 25px;
}
.p-contents02 .p-bunner-box::after {
    content: "\f138";
    position: absolute;
    bottom: 3px !important;
    right: 6px;
    margin: auto .8rem .5rem auto;
    font-family: "fontawesome solid";
    color: #e60012;
}
.p-contents02 .p-title-tag01 {
  text-align: center;
  margin: 15px 0 0;
}


@media only screen and (max-width: 767px) {
  .p-contents02 {
    flex-direction: column;
    gap: 20px 0;
    padding: 0 30px;
    margin-top: 20px;
  }
  .p-contents02 .p-bunner-box {
    width: 100%;
    margin: 0 auto;
    padding: 35px 25px 30px;
    text-align: center;
  }
}
/*.p-contents02 ここまで*/

.p-info__tag01 {
  display: flex;
  height: 18px;
  color: rgb(255, 255, 255);
  font-size: 12px;
  line-height: 1.1;
  background-color: rgb(81, 79, 78);
  align-items: center;
  justify-content: center;
  margin: 2px 0px 2px 10px;
  margin-left: auto;
  padding: 3px 10px;
  border-radius: 3px;
}


.p-faq--contents .c-heading-02 {
    display: flex;
    align-items: center;
    gap: 5px;
}

.p-faq--contents .c-heading-main {
    flex-shrink: 0;
    margin-right:auto;
}

.p-faq--contents .c-heading-02 .p-info__tag01 {
  height: 100%;
    color: #fff;
    font-size: 12px;
    line-height: 170%;
    background-color: #333333;
    padding: 2px 15px;
    border-radius: 4px;
    margin: 3.5px 0;
    
}
  .p-faq--contents .p-info__tags {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    gap: 6px;
  }

@media only screen and (max-width: 767px) {
  .p-faq--contents .c-heading-02 {
    display: flex;
    flex-wrap: wrap;
  }

  .p-faq--contents .c-heading-main {
    width: 100%;
    text-align: left; 
  }

  .p-faq--contents .p-info__tags {
    width: 100%;
    display: flex;
    justify-content: flex-end;
    gap: 6px;
    margin-top: 8px;
  }

  .p-faq--contents .p-info__tag01 {
    display: inline-flex;
    margin: 0;
  }
}