.aboutus h2 + h3 {
  margin-top: 1.0714285714rem
}
.aboutus h3 {
  margin: 1.875em 0 .78125em;
  font-size: 1.1428571429rem;
  color: #b28c35;
  padding: 0;
  background: unset
}
@media screen and (min-width: 751px) {
  .aboutus h3 {
    margin: 2em 0 .8em;
    font-size: 1.25rem
  }
}
.aboutus h3 + p {
  padding-left: 1em
}
.aboutus h3 + p + p {
  padding-left: 1em
}
@media screen and (min-width: 751px) {
  .aboutus h3 br {
    display: none
  }
}
.aboutus .wp-block-table td {
  border-left-width: 1px;
  border-right-width: 1px
}
.aboutus .wp-block-table td:first-child:not(:last-child) {
  padding-right: .85715em;
  text-align: center;
  background: #fff5cc
}
.aboutus #summary .is-layout-flex {
  gap: .7142857143rem
}
@media screen and (min-width: 782px) {
  .aboutus #summary .is-layout-flex {
    gap: 2.3255813953%
  }
}
.aboutus iframe {
  aspect-ratio: 690/460
}
@media screen and (min-width: 751px) {
  .aboutus iframe {
    aspect-ratio: 860/360
  }
}
.post_content .faq_list {
  position: relative;
  padding: 0;
  border: unset
}
.post_content .faq_list__item {
  margin-bottom: 0;
  padding: .7142857143rem 0 1.0714285714rem;
  border-top: .0714285714rem solid #ccc
}
.post_content .faq_list__item:last-child {
  border-bottom: .0714285714rem solid #ccc
}
.post_content .faq_list__item::before {
  display: none
}
@media screen and (min-width: 751px) {
  .post_content .faq_list__item {
    padding: .85rem 2.3255813953% 1.25rem
  }
}
.faq_ttl {
  position: relative;
  padding-left: 10.1449275362%;
  padding-right: 7.2463768116%;
  font-size: 1.1428571429rem;
  font-weight: 400;
  cursor: pointer
}
.faq_ttl::before {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  right: unset;
  bottom: unset;
  left: 0;
  box-sizing: border-box;
  width: 8.6956521739%;
  aspect-ratio: 1;
  background: #f90;
  border-radius: 50%;
  text-align: center;
  line-height: 1;
  font-size: 1.2857142857rem;
  font-weight: 700;
  color: #fff
}
@media screen and (min-width: 751px) {
  .faq_ttl::before {
    width: 4.8780487805%;
    font-size: 1.5rem
  }
}
.faq_ttl::before {
  content: "Q"
}
.faq_ttl::after {
  position: absolute;
  top: calc(50% + .025em);
  right: 0;
  bottom: unset;
  left: unset;
  display: block;
  content: "";
  width: 5.2173913043%;
  aspect-ratio: 36/20;
  background: url(../img/icon_arrow.png) no-repeat;
  background-size: contain;
  transform: translateY(-50%);
  transition: .4s
}
.show .faq_ttl::after {
  transform: translateY(-50%) rotate(-180deg)
}
@media screen and (min-width: 751px) {
  .faq_ttl {
    padding-top: .25rem;
    padding-left: 6.0975609756%;
    padding-right: 4.8780487805%;
    font-size: 1rem
  }
  .faq_ttl::after {
    top: calc(50% + .25rem);
    width: 1.5em
  }
}
.faq_cont {
  position: relative;
  opacity: 0;
  height: 0;
  transition: .4s;
  padding-left: 10.1449275362%;
  font-weight: 400
}
.faq_cont::before {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 0;
  right: unset;
  bottom: unset;
  left: 0;
  box-sizing: border-box;
  width: 8.6956521739%;
  aspect-ratio: 1;
  background: #f90;
  border-radius: 50%;
  text-align: center;
  line-height: 1;
  font-size: 1.2857142857rem;
  font-weight: 700;
  color: #fff
}
@media screen and (min-width: 751px) {
  .faq_cont::before {
    width: 4.8780487805%;
    font-size: 1.5rem
  }
}
.faq_cont::before {
  content: "A";
  background: #47b28e
}
.show .faq_cont {
  height: auto;
  opacity: 1;
  margin-top: 1.0714285714rem;
  padding-top: .25rem
}
@media screen and (min-width: 751px) {
  .faq_cont {
    padding-left: 5.8139534884%;
    font-size: .875rem
  }
  .show .faq_cont {
    padding-top: .5rem
  }
}
@media screen and (max-width: 750px) {
  .service h2 {
    font-size: 4.7vw
  }
}
@media screen and (min-width: 1201px) {
  .service .cta02 {
    width: 95.3488372093%;
    margin: 0 auto
  }
}
.service #about h2 {
  margin-bottom: 0;
  padding: .25em 0 .11667em;
  background: #47b28e;
  text-align: center;
  font-size: 2.1428571429rem;
  color: #fff
}
@media screen and (min-width: 751px) {
  .service #about h2 {
    padding: .2103em 0 .04em;
    font-size: 3rem
  }
}
.service #about h2 .sm {
  font-size: .7666666667em
}
.service #about h3 {
  margin: 1.875em 0 .78125em;
  font-size: 1.1428571429rem;
  color: #b28c35;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 1.0714285714rem;
  padding: 0;
  background: unset;
  font-size: 1.2857142857rem
}
@media screen and (min-width: 751px) {
  .service #about h3 {
    margin: 2em 0 .8em;
    font-size: 1.25rem
  }
}
.service #about h3::before, .service #about h3::after {
  display: inline-block;
  content: "";
  width: 11.5942028986%;
  height: .0714285714rem;
  background: #b28c35
}
@media screen and (min-width: 751px) {
  .service #about h3 {
    margin-top: .8333333333em;
    font-size: 1.5rem
  }
  .service #about h3::before, .service #about h3::after {
    width: 20%;
    height: 1px
  }
}
@media screen and (min-width: 1201px) {
  .service #about h3::before, .service #about h3::after {
    width: 27.9069767442%
  }
}
.service #about ul {
  border-radius: 0;
  border-left: 0;
  border-right: 0
}
.service #about ul:not(.contact_list) {
  position: relative;
  padding: 1.4285714286rem .7142857143rem
}
.service #about ul:not(.contact_list)::before, .service #about ul:not(.contact_list)::after {
  position: absolute;
  top: 0;
  right: unset;
  bottom: unset;
  left: 0;
  display: block;
  content: "";
  width: 100%;
  height: 1.4285714286rem;
  border-left: .0714285714rem solid #f90;
  border-right: .0714285714rem solid #f90
}
.service #about ul:not(.contact_list)::after {
  top: unset;
  bottom: 0
}
@media screen and (min-width: 751px) {
  .service #about ul:not(.contact_list) {
    padding: 1.875rem 4.8780487805%
  }
}
@media screen and (min-width: 1201px) {
  .service #about ul:not(.contact_list) {
    width: 95.3488372093%;
    margin-left: auto;
    margin-right: auto
  }
}
.service #about ul li:not(.contact_list__item) {
  margin-bottom: 1.1428571429rem
}
@media screen and (min-width: 751px) {
  .service #about ul li:not(.contact_list__item) {
    margin-bottom: 1.25rem
  }
}
.service #about ul li:not(.contact_list__item):last-child {
  margin-bottom: 0
}
.service #price h2 .sm {
  font-size: .7777777778em
}
.service #price h3 {
  margin: 0;
  padding: .4em 0 .25em;
  background: #b28c35;
  text-align: center;
  font-size: 1.4285714286rem;
  color: #fff
}
@media screen and (min-width: 751px) {
  .service #price h3 {
    padding: .6em 0 .5em;
    font-size: 1.25rem
  }
}
.service #price .price_column {
  border: .2857142857rem solid #b28c35;
  border-top-width: 0
}
.service #price .price_column__inner {
  padding: .7142857143rem
}
@media screen and (min-width: 751px) {
  .service #price .price_column__inner {
    padding: .6rem .9rem
  }
}
.service #price .price_column h4 {
  margin: 0 0 .5em;
  font-size: 1.2857142857rem
}
.service #price .price_column ol {
  margin: -1em 0 0;
  padding: 0;
  border: unset
}
.service #price .price_column ol li {
  margin-bottom: 0;
  padding-left: 1.2em;
  font-weight: 400
}
.service #price .price_column ol li::before {
  top: .4em;
  width: 1rem;
  border: 1px solid #262626;
  background: unset;
  font-size: .9em;
  font-weight: 400;
  color: #262626
}
.service #price .price_column ul {
  margin: 0;
  padding: 0;
  border: unset
}
.service #price .price_column ul li {
  padding-left: .7857142857em;
  font-weight: 400
}
.service #price .price_column ul li::before {
  top: .5em;
  width: .3571428571em;
  background: #262626;
  border-radius: unset
}
.service #price .price_column ul li::before {
  background: #b28c35
}
@media screen and (min-width: 751px) {
  .service #price .price_column br {
    display: none
  }
}
.service #price .wp-block-columns {
  margin-bottom: 1.0714285714rem
}
@media screen and (min-width: 751px) {
  .service #price .wp-block-columns {
    margin-bottom: 1.25rem
  }
}
.service #price .wp-block-columns:last-child {
  margin-bottom: 0
}
.service #price :where(.wp-block-columns.is-layout-flex) {
  gap: 1.0714285714rem
}
@media screen and (min-width: 751px) {
  .service #price :where(.wp-block-columns.is-layout-flex) {
    gap: 1.25rem
  }
}
.service #shogai-nenkin ul {
  background: #f2f2f2;
  border: unset;
  border-radius: unset
}
.service #shogai-nenkin ul li {
  padding-left: .7857142857em;
  font-weight: 400
}
.service #shogai-nenkin ul li::before {
  top: .5em;
  width: .3571428571em;
  background: #262626;
  border-radius: unset
}
.service #shogai-nenkin ul li::before {
  background: #f90
}
.service #shinsa-seikyu h3 {
  margin: 1.875em 0 .78125em;
  font-size: 1.1428571429rem;
  color: #b28c35;
  margin-top: 1.0714285714rem;
  padding: 0;
  background: unset;
  font-size: 1.2857142857rem
}
@media screen and (min-width: 751px) {
  .service #shinsa-seikyu h3 {
    margin: 2em 0 .8em;
    font-size: 1.25rem
  }
}
@media screen and (min-width: 751px) {
  .service #shinsa-seikyu h3 {
    margin: 0 0 .5em
  }
}
.service #shinsa-seikyu ul {
  padding: .6428571429rem 0;
  border-left-width: 0;
  border-right-width: 0;
  border-radius: 0
}
.service #shinsa-seikyu ul li:not(:last-child) {
  margin-bottom: .6em
}
@media screen and (min-width: 751px) {
  .service #shinsa-seikyu ul {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    padding: .625rem
  }
  .service #shinsa-seikyu ul li {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content
  }
  .service #shinsa-seikyu ul li:not(:last-child) {
    margin-bottom: .75em
  }
}
.voice .sec__container {
  padding: 1.0714285714rem;
  background: url(../img/voice_bg.png)
}
@media screen and (min-width: 751px) {
  .voice .sec__container {
    padding: 1.25rem
  }
}
.voice .sec__container .main_sec {
  padding-top: 0
}
@media screen and (min-width: 751px) {
  .voice .sec__container .main_sec + .main_sec {
    padding-top: 1.25rem
  }
}
.voice .sec__container h2 {
  position: relative;
  margin-bottom: .7142857143rem;
  padding: .45rem 2.1428571429rem .4077rem 4.2857142857rem;
  font-size: 1.1428571429rem
}
.voice .sec__container h2::before {
  position: absolute;
  top: 50%;
  right: unset;
  bottom: unset;
  left: 3.1746031746%;
  display: block;
  content: "";
  width: 14.2857142857%;
  aspect-ratio: 90/60;
  background: url(../img/icon_voice.png) no-repeat center;
  background-size: contain;
  transform: translateY(-50%)
}
@media screen and (min-width: 751px) {
  .voice .sec__container h2 {
    margin-bottom: 1.25rem;
    padding: .75em 2.4390243902% .75em 10.9756097561%;
    font-size: 1.25rem
  }
  .voice .sec__container h2:before {
    left: 2.3255813953%;
    width: 6.976744186%
  }
}
@media screen and (min-width: 1201px) {
  .voice .sec__container .letter > .wp-block-group__inner-container {
    display: flex;
    justify-content: space-between;
    align-items: flex-start
  }
}
.letter_txt {
  padding: 1.0714285714rem;
  background: #fff;
  font-size: .9285714286rem
}
@media screen and (min-width: 1201px) {
  .letter_txt {
    width: 68.2926829268%;
    padding: 1.25rem
  }
}
@media screen and (min-width: 1201px) {
  .letter_img {
    width: 29.2682926829%
  }
}
.letter_img h3 {
  margin: 1.875em 0 .78125em;
  font-size: 1.1428571429rem;
  color: #b28c35;
  margin: 1.4285714286rem 0 .6428571429rem;
  padding: 0;
  background: unset;
  text-align: center;
  font-size: 1.2857142857rem
}
@media screen and (min-width: 751px) {
  .letter_img h3 {
    margin: 2em 0 .8em;
    font-size: 1.25rem
  }
}
@media screen and (min-width: 1201px) {
  .letter_img h3 {
    margin: 0 0 .5em
  }
}
.letter_img__inner .wp-block-group__inner-container {
  display: flex;
  flex-direction: column-reverse;
  gap: .7142857143rem
}
.letter_img__inner .wp-block-group__inner-container .wp-block-image {
  width: 76.1904761905%;
  margin-left: auto;
  margin-right: auto
}
@media screen and (min-width: 1201px) {
  .letter_img__inner .wp-block-group__inner-container .wp-block-image {
    width: 100%;
    gap: .625rem
  }
}
.letter_img__inner .wp-block-group__inner-container .wp-block-buttons {
  margin: 0
}
.letter_img__inner .wp-block-group__inner-container .wp-block-buttons .wp-block-button:first-child:last-child .wp-block-button__link {
  gap: 3.4375%;
  width: 50.7936507937%;
  aspect-ratio: 320/80;
  padding: 0;
  font-size: 1rem
}
.letter_img__inner .wp-block-group__inner-container .wp-block-buttons .wp-block-button:first-child:last-child .wp-block-button__link::before {
  position: unset;
  width: 11.25%;
  height: auto;
  aspect-ratio: 1;
  background: url(../img/icon_loupe.png) no-repeat center;
  background-size: contain;
  transform: unset
}
.letter_img__inner .wp-block-group__inner-container .wp-block-buttons .wp-block-button:first-child:last-child .wp-block-button__link::after {
  display: none
}
@media screen and (min-width: 1201px) {
  .letter_img__inner .wp-block-group__inner-container .wp-block-buttons .wp-block-button:first-child:last-child .wp-block-button__link {
    width: 66.6666666667%
  }
}