/*------------------------------------------
wysiwyg
------------------------------------------*/
.wysiwyg {
  word-break: break-all;
}
.wysiwyg *,
.wysiwyg ::before,
.wysiwyg ::after {
  -webkit-box-sizing: content-box;
          box-sizing: content-box;
}

.wysiwyg h1 {
  font-size: 2em;
  font-weight: 600;
}

.wysiwyg h2 {
  font-size: 1.5em;
  font-weight: 600;
}

.wysiwyg h3 {
  font-size: 1.17em;
  font-weight: 600;
}

.wysiwyg h4 {
  font-weight: 600;
}

.wysiwyg h5 {
  font-size: 0.83em;
  font-weight: 600;
}

.wysiwyg h6 {
  font-size: 0.67em;
  font-weight: 600;
}

.wysiwyg hr {
  display: block;
}

.wysiwyg a {
  color: #2c893a;
  text-decoration: underline;
  -webkit-transition: opacity 0.2s ease;
  transition: opacity 0.2s ease;
}

@media (hover: hover) and (pointer: fine) {
  .wysiwyg a:hover {
    opacity: 0.6;
  }
}
.wysiwyg strong,
.wysiwyg b {
  font-weight: 600;
}

.wysiwyg em {
  font-style: italic;
}

.wysiwyg ul,
.wysiwyg ol {
  padding-left: 1.5em;
}

.wysiwyg ul {
  list-style: disc;
}

.wysiwyg ol {
  list-style: decimal;
}

.wysiwyg table {
  border-collapse: separate;
}

.wysiwyg table[cellpadding] > tr > th,
.wysiwyg table[cellpadding] > tr > td,
.wysiwyg table[cellpadding] > thead > tr > th,
.wysiwyg table[cellpadding] > thead > tr > td,
.wysiwyg table[cellpadding] > tbody > tr > th,
.wysiwyg table[cellpadding] > tbody > tr > td,
.wysiwyg table[cellpadding] > tfoot > tr > th,
.wysiwyg table[cellpadding] > tfoot > tr > td {
  padding: var(--wysiwyg-cell-padding, 0);
}

@media (max-width: 1024px) {
  .to-pc {
    display: none !important;
  }
}
@media (min-width: 1025px) {
  .to-sp {
    display: none !important;
  }
}
/*------------------------------------------
nav__container
------------------------------------------*/
.nav__container {
  background: #f6f6f6;
  padding: 16px 0;
}
@media (min-width: 1025px) {
  .nav__container {
    padding: 32px 0;
  }
}

.nav__list {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.nav__list > li {
  width: 100%;
  height: 100%;
}
@media (min-width: 1025px) {
  .nav__list > li {
    width: 25%;
    height: 80px;
  }
}
.nav__list > li > a {
  border-top: 1px solid #ccc;
  border-left: 1px solid #ccc;
  background: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
  line-height: 1.5;
  color: #333333;
  font-size: 14px;
  padding: 15px 52px 15px 18px;
  position: relative;
}
@media (min-width: 1025px) {
  .nav__list > li > a {
    font-size: 16px;
    padding: 0 58px 0 22px;
    border-bottom: 1px solid #ccc;
  }
}
@media (max-width: 1024px) {
  .nav__list > li > a {
    border-right: 1px solid #ccc;
  }
}
.nav__list > li > a:after {
  content: "";
  width: 6px;
  height: 6px;
  position: absolute;
  top: 0;
  right: 20px;
  bottom: 3px;
  margin: auto;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  border-right: 2px solid #2c893a;
  border-bottom: 2px solid #2c893a;
}
@media (min-width: 1025px) {
  .nav__list > li > a:after {
    right: 22px;
  }
}
@media (min-width: 1025px) {
  .nav__list > li:nth-child(n+5) > a {
    border-top: none;
  }
  .nav__list > li:nth-child(4n) > a {
    border-right: 1px solid #ccc;
  }
  .nav__list > li:last-child > a {
    border-right: 1px solid #ccc;
  }
}
@media (max-width: 1024px) {
  .nav__list > li:last-child > a {
    border-bottom: 1px solid #ccc;
  }
}

/*------------------------------------------
js-acc-area
------------------------------------------*/
.js-acc-area {
  height: 0;
  overflow: hidden;
  -webkit-transition: height 0.3s ease;
  transition: height 0.3s ease;
}

/*------------------------------------------
faq__container
------------------------------------------*/
.faq__container {
  padding: 50px 0 60px;
}
@media (min-width: 1025px) {
  .faq__container {
    padding: 70px 0 100px;
  }
}
.faq__container .faq__block .tpl-ttl3 {
  margin-bottom: 20px;
}
@media (min-width: 1025px) {
  .faq__container .faq__block .tpl-ttl3 {
    margin-bottom: 40px;
  }
}
.faq__container .faq__block .tpl-ttl3 .ttl {
  margin-top: 0;
}
.faq__container .faq__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 16px;
}
.faq__container .faq__item {
  color: #333333;
  background: #f6f6f6;
  padding: 20px;
}
@media (min-width: 1025px) {
  .faq__container .faq__item {
    padding: 30px;
  }
}
.faq__container .faq__item .faq__question {
  cursor: pointer;
  padding: 0 30px 0 42px;
  position: relative;
}
@media (min-width: 1025px) {
  .faq__container .faq__item .faq__question {
    padding: 0 30px 0 45px;
  }
}
.faq__container .faq__item .faq__question::before {
  content: "";
  background: url(../images/faq/ico_q.svg) no-repeat center/100%;
  position: absolute;
  top: 2px;
  left: 0;
  width: 30px;
  height: 21px;
}
@media (min-width: 1025px) {
  .faq__container .faq__item .faq__question::before {
    width: 33px;
    height: 22px;
    top: 4px;
  }
}
.faq__container .faq__item .faq__question .ttl {
  font-weight: bold;
  font-size: 14px;
  position: relative;
}
@media (min-width: 1025px) {
  .faq__container .faq__item .faq__question .ttl {
    font-size: 16px;
  }
}
.faq__container .faq__item .faq__question .ttl::before, .faq__container .faq__item .faq__question .ttl::after {
  content: "";
  background: #2c893a;
  position: absolute;
}
.faq__container .faq__item .faq__question .ttl::before {
  width: 20px;
  height: 2px;
  top: 11.5px;
  right: -30px;
}
@media (min-width: 1025px) {
  .faq__container .faq__item .faq__question .ttl::before {
    top: 10.5px;
  }
}
.faq__container .faq__item .faq__question .ttl::after {
  width: 2px;
  height: 20px;
  top: 2px;
  right: -20.5px;
  -webkit-transition: 0.2s;
  transition: 0.2s;
}
@media (min-width: 1025px) {
  .faq__container .faq__item .faq__question .ttl::after {
    right: -21.5px;
  }
}
.faq__container .faq__item .faq__question.is-open .ttl::after {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.faq__container .faq__item .faq__answer {
  padding: 0 0 0 42px;
  line-height: 2;
  font-weight: 500;
  font-size: 14px;
}
@media (min-width: 1025px) {
  .faq__container .faq__item .faq__answer {
    padding: 0 50px 0 45px;
    font-size: 16px;
  }
}
.faq__container .faq__item .faq__answer .anseer__detail {
  margin-top: 16px;
}
@media (min-width: 1025px) {
  .faq__container .faq__item .faq__answer .anseer__detail {
    margin-top: 20px;
  }
}
.faq__container .more__btn {
  width: 230px;
  height: 50px;
  border: 1px solid #2c893a;
  background: #fff;
  color: #2c893a;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin: 30px auto 0;
  font-weight: 400;
  font-size: 14px;
}
@media (min-width: 1025px) {
  .faq__container .more__btn {
    height: 60px;
    font-size: 15px;
    -webkit-transition: 0.2s;
    transition: 0.2s;
  }
  .faq__container .more__btn:hover {
    background: #2c893a;
    color: #fff;
  }
}

/*------------------------------------------
info__container
------------------------------------------*/
.info__container {
  padding: 36px 0 30px;
}
@media (min-width: 1025px) {
  .info__container {
    padding: 52px 0 60px;
  }
}
.info__container .info__ttl {
  text-align: center;
  font-weight: bold;
  font-size: 16px;
}
@media (min-width: 1025px) {
  .info__container .info__ttl {
    font-size: 26px;
  }
}
.info__container .tpl-txt {
  text-align: center;
  margin: 15px 0;
}
@media (min-width: 1025px) {
  .info__container .tpl-txt {
    margin: 30px 0 40px;
  }
}

.information-box {
  position: relative;
  width: 560px;
  padding: 27px 0 30px;
  background-color: #f6f6f6;
  margin: 0 auto;
  text-align: center;
}
@media (max-width: 1024px) {
  .information-box {
    width: 100%;
  }
}
.information-box .information-box-head {
  color: #fff;
  background-color: #2c893a;
  font-size: 18px;
  width: 220px;
  height: 40px;
  margin: 0 auto 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media (max-width: 1024px) {
  .information-box .information-box-head {
    font-size: 14px;
    width: 226px;
    height: 30px;
    margin: 0 auto 3px;
  }
}
.information-box .phone-number {
  margin: 0 auto 5px;
}
@media (max-width: 1024px) {
  .information-box .phone-number {
    margin: 0 auto 10px;
  }
}
.information-box .phone-number span {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  line-height: 1.2;
  display: block;
  font-size: 44px;
  position: relative;
}
@media (max-width: 1024px) {
  .information-box .phone-number span {
    font-size: 36px;
  }
}
.information-box .phone-number span::before {
  display: inline-block;
  content: "";
  background: url(/matsudo/assets/images/faq/ico_phone.svg) no-repeat center/100%;
  position: absolute;
  top: 0;
  left: -57px;
  bottom: 0;
  margin: auto;
  width: 47px;
  height: 47px;
}
@media (max-width: 1024px) {
  .information-box .phone-number span::before {
    left: -48px;
    width: 40px;
    height: 40px;
  }
}
.information-box .phone-number span a {
  color: #333333;
}
.information-box .info-txt {
  text-align: center;
  font-size: 16px;
}
@media (max-width: 1024px) {
  .information-box .info-txt {
    font-size: 14px;
  }
}