@charset "UTF-8";
.board__box-energy .board__btn {
  margin-top: 32px;
}
@media only screen and (max-width: 767px) {
  .board__box-energy {
    text-align: center;
  }
}
.board__box-energy a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 24px;
  border: 2px solid #2E5884;
  background-color: #2E5884;
  border-radius: 4px;
  font-size: 16px;
  font-weight: 400;
  color: #ffffff;
}
@media only screen and (max-width: 767px) {
  .board__box-energy a {
    padding: 8px;
    width: 80%;
    font-size: 14px;
  }
}
.board__box-energy a {
  /*
  &::before {
    content: "";
    display: inline-block;
    width: 22px;
    height: 22px;
    margin-right: 15px;
    mask-image: url(/assets/images/common/icon_pdf.svg);
    background: $white;
    mask-position: center;
    mask-repeat: no-repeat;
    mask-size: contain;
    transition: 0.3s;

    @include mixin.media("sp") {
      width: 16px;
      height: 16px;
    }
  }
    */
}
@media (any-hover: hover) {
  .board__box-energy a {
    transition: background-color 0.3s ease, color 0.3s ease;
  }
  .board__box-energy a:hover {
    background-color: #ffffff;
    color: #2E5884;
  }
}

.visit__box {
  background-color: #F8F8F8;
  padding: 80px 20px;
}
@media only screen and (max-width: 767px) {
  .visit__box {
    padding: 48px 20px;
  }
}
.visit__inner {
  border: 1px solid #dddddd;
  max-width: 1000px;
  margin: 0 auto;
  background-color: #ffffff;
  padding: 60px;
  /*
  border-radius: 8px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05); // わずかな影で浮き出し効果
  */
}
@media only screen and (max-width: 767px) {
  .visit__inner {
    padding: 32px 20px;
  }
}
.visit__title {
  margin-bottom: 32px;
}
@media only screen and (max-width: 767px) {
  .visit__title {
    margin-bottom: 24px;
  }
}
.visit__list {
  margin-bottom: 24px;
}
.visit__list ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px 32px;
  margin-bottom: 12px;
}
@media only screen and (max-width: 767px) {
  .visit__list ul {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}
.visit__list li {
  align-items: start;
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  color: #333333;
  letter-spacing: 0.02em;
}
@media only screen and (max-width: 767px) {
  .visit__list li {
    font-size: 14px;
  }
}
.visit__list p {
  font-size: clamp(calc(12 / 16 * 1rem), calc(14 / 1440 * 100vw), calc(14 / 16 * 1rem));
  color: #757575;
  line-height: 1.6;
}
@media only screen and (max-width: 767px) {
  .visit__list p {
    font-size: 12px;
  }
}
.visit__time {
  /*
  margin-bottom: 40px;
  @include mixin.media("sp") {
    margin-bottom: 32px;
  }
    */
}
.visit__time ol {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 12px 32px;
  margin-bottom: 16px;
}
@media only screen and (max-width: 767px) {
  .visit__time ol {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}
.visit__time ol li {
  padding-left: 1em;
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  font-weight: 700;
  color: #333333;
  letter-spacing: 0.02em;
}
@media only screen and (max-width: 767px) {
  .visit__time ol li {
    font-size: 14px;
  }
}
.visit__time p {
  font-size: clamp(calc(12 / 16 * 1rem), calc(14 / 1440 * 100vw), calc(14 / 16 * 1rem));
  color: #757575;
  line-height: 1.6;
}
@media only screen and (max-width: 767px) {
  .visit__time p {
    font-size: 12px;
  }
}
.visit__attention {
  border: 2px solid #3A6EA5;
  background-color: #F0F7FF;
  padding: 60px;
  max-width: 1000px;
  margin: 60px auto 0;
  border-radius: 4px;
}
@media only screen and (max-width: 767px) {
  .visit__attention {
    margin-top: 20px;
    padding: 20px;
  }
}
.visit__attention--title {
  font-size: clamp(calc(16 / 16 * 1rem), calc(20 / 1440 * 100vw), calc(20 / 16 * 1rem));
  font-weight: 700;
  color: #3A6EA5;
  margin-bottom: 16px;
  letter-spacing: 0.02em;
}
@media only screen and (max-width: 767px) {
  .visit__attention--title {
    font-size: 18px;
    margin-bottom: 12px;
  }
}
.visit__attention--text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 2;
  color: #333333;
}
@media only screen and (max-width: 767px) {
  .visit__attention--text p {
    font-size: 14px;
    line-height: 1.8;
  }
}

.visit__attention + .payment__btn {
  margin-top: 24px;
}

.payment__box {
  padding: 80px 20px;
}
@media only screen and (max-width: 767px) {
  .payment__box {
    padding: 48px 20px;
  }
}
.payment__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.payment__inner + .payment__inner {
  padding-top: 80px;
}
@media only screen and (max-width: 767px) {
  .payment__inner + .payment__inner {
    padding-top: 48px;
  }
}
.payment__title {
  margin-bottom: 32px;
}
@media only screen and (max-width: 767px) {
  .payment__title {
    margin-bottom: 24px;
  }
}
.payment__list {
  margin-bottom: 24px;
}
.payment__list ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px 32px;
  margin-bottom: 12px;
}
@media only screen and (max-width: 767px) {
  .payment__list ul {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}
.payment__list li {
  align-items: start;
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  color: #333333;
  letter-spacing: 0.02em;
}
@media only screen and (max-width: 767px) {
  .payment__list li {
    font-size: 14px;
  }
}
.payment__list li em {
  font-weight: 700;
  color: #CA0817;
}
.payment__list p {
  font-size: clamp(calc(12 / 16 * 1rem), calc(14 / 1440 * 100vw), calc(14 / 16 * 1rem));
  color: #757575;
  line-height: 1.6;
}
@media only screen and (max-width: 767px) {
  .payment__list p {
    font-size: 12px;
  }
}
.payment__text {
  margin-bottom: 24px;
}
.payment__text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  color: #333333;
  letter-spacing: 0.02em;
}
@media only screen and (max-width: 767px) {
  .payment__text p {
    font-size: 16px;
  }
}

.payment__btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 420px;
  margin-inline: auto;
  background-color: #3A6EA5;
  border: 2px solid #3A6EA5;
  color: #ffffff;
  padding: 14px 24px 13px;
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  font-weight: 700;
  border-radius: 4px;
  text-decoration: none;
}
@media only screen and (max-width: 767px) {
  .payment__btn a {
    font-size: 16px;
  }
}
@media (any-hover: hover) {
  .payment__btn a {
    transition: background-color 0.3s ease, color 0.3s ease;
  }
  .payment__btn a:hover {
    background-color: #ffffff;
    color: #3A6EA5;
  }
}

.purge__box {
  padding: 80px 20px;
}
@media only screen and (max-width: 767px) {
  .purge__box {
    padding: 48px 20px;
  }
}
.purge__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.purge__title {
  margin-bottom: 32px;
}
@media only screen and (max-width: 767px) {
  .purge__title {
    margin-bottom: 24px;
  }
}
.purge__text {
  margin-bottom: 24px;
}
.purge__text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  color: #333333;
  letter-spacing: 0.02em;
}
@media only screen and (max-width: 767px) {
  .purge__text p {
    font-size: 16px;
  }
}
.purge__btn {
  margin-top: 24px;
}
@media only screen and (max-width: 767px) {
  .purge__btn {
    font-size: 12px;
  }
}
.purge__btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 420px;
  margin-inline: auto;
  background-color: #3A6EA5;
  border: 2px solid #3A6EA5;
  color: #ffffff;
  padding: 14px 24px 13px;
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  font-weight: 700;
  border-radius: 4px;
  text-decoration: none;
}
@media only screen and (max-width: 767px) {
  .purge__btn a {
    font-size: 16px;
  }
}
@media (any-hover: hover) {
  .purge__btn a {
    transition: background-color 0.3s ease, color 0.3s ease;
  }
  .purge__btn a:hover {
    background-color: #ffffff;
    color: #3A6EA5;
  }
}

.system__box {
  background-color: #EEEEEE;
  padding: 80px 20px;
}
@media only screen and (max-width: 767px) {
  .system__box {
    padding: 40px 20px;
  }
}
.system__inner {
  max-width: 640px;
  margin-inline: auto;
}
.system__equation {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
@media only screen and (max-width: 767px) {
  .system__equation {
    gap: 12px;
  }
}
.system__accordion {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s ease-out;
  overflow: hidden;
}
.system__accordion.active {
  grid-template-rows: 1fr;
}
.system__accordion--inner {
  background: #ffffff;
  min-height: 0;
}
.system__text {
  padding: 20px;
}
.system__text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  font-weight: 400;
}
.system__price {
  width: 100%;
  background-color: #3A6EA5;
  color: #ffffff;
  font-size: clamp(calc(18 / 16 * 1rem), calc(24 / 1440 * 100vw), calc(24 / 16 * 1rem));
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 24px;
  border-radius: 8px;
  letter-spacing: 0.05em;
}
@media only screen and (max-width: 767px) {
  .system__price {
    font-size: 18px;
    padding: 16px;
  }
}
.system__price::before {
  content: "￥";
  font-size: 1.4em;
  margin-right: 12px;
  font-weight: normal;
}
@media only screen and (max-width: 767px) {
  .system__price::before {
    margin-right: 8px;
  }
}
.system__symbol {
  font-size: clamp(calc(22 / 16 * 1rem), calc(32 / 1440 * 100vw), calc(32 / 16 * 1rem));
  font-weight: 700;
  color: #666666;
  line-height: 1;
  transform: rotate(90deg);
}
@media only screen and (max-width: 767px) {
  .system__symbol {
    font-size: 24px;
  }
}
.system--item {
  width: 100%;
}

.trend__box {
  padding: 80px 20px;
}
@media only screen and (max-width: 767px) {
  .trend__box {
    padding: 40px 20px;
  }
}
.trend__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.trend__table {
  padding: 40px 0 0;
}
@media only screen and (max-width: 767px) {
  .trend__table {
    padding: 20px 0 0;
  }
}
.trend__table p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  font-weight: 400;
  display: block;
  text-align: center;
  padding: 20px;
}
@media only screen and (max-width: 767px) {
  .trend__table p {
    font-size: 14px;
  }
}
.trend__attention {
  padding: 40px 0 0;
}
@media only screen and (max-width: 767px) {
  .trend__attention {
    padding: 20px 0 0;
  }
}
.trend__attention p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .trend__attention p {
    font-size: 14px;
  }
}

.ref__box {
  background-color: #F0F7FF;
  padding: 80px 20px;
}
@media only screen and (max-width: 767px) {
  .ref__box {
    padding: 40px 20px;
  }
}
.ref__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.ref__list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0 64px;
}
@media only screen and (max-width: 767px) {
  .ref__list {
    grid-template-columns: 1fr;
    gap: 24px 0;
  }
}
.ref__list li {
  display: grid;
  grid-template-rows: subgrid;
  grid-row: span 3;
  gap: 0;
}
.ref__list--title {
  font-size: clamp(calc(16 / 16 * 1rem), calc(20 / 1440 * 100vw), calc(20 / 16 * 1rem));
  font-weight: 700;
  margin-bottom: 32px;
}
@media only screen and (max-width: 767px) {
  .ref__list--title {
    font-size: 18px;
    margin-bottom: 16px;
  }
}
.ref__list--text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  font-weight: 400;
  margin-bottom: 32px;
}
@media only screen and (max-width: 767px) {
  .ref__list--text p {
    font-size: 18px;
    margin-bottom: 16px;
  }
}
.ref__list .link-group {
  width: 100%;
}
.ref__list .link-group .link-group__list {
  grid-template-columns: 1fr;
}

.credit__box {
  padding: 80px 20px 0;
}
@media only screen and (max-width: 767px) {
  .credit__box {
    padding: 40px 20px 0;
  }
}
.credit__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.credit__title {
  font-size: clamp(calc(16 / 16 * 1rem), calc(20 / 1440 * 100vw), calc(20 / 16 * 1rem));
  font-weight: 700;
  margin-bottom: 32px;
}
@media only screen and (max-width: 767px) {
  .credit__title {
    font-size: 18px;
    margin-bottom: 16px;
  }
}
.credit__text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .credit__text p {
    font-size: 16px;
  }
}
.credit__text p + p {
  margin-top: 1em;
}
.credit__text p em {
  color: #3A6EA5;
  font-weight: 700;
}
.credit__list {
  padding-block: 48px;
}
@media only screen and (max-width: 767px) {
  .credit__list {
    padding-block: 24px;
  }
}
.credit__list ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0 64px;
}
@media only screen and (max-width: 767px) {
  .credit__list ul {
    gap: 0 20px;
  }
}
.credit__list ul li {
  display: grid;
  grid-template-rows: subgrid;
}
.credit__list--image {
  border: 1px solid #d9d9d9;
  display: flex;
  align-items: center;
  justify-content: center;
}
.credit__list p {
  padding-top: 20px;
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .credit__list p {
    font-size: 14px;
  }
}
.credit__guidance {
  border: 1px solid #CCD6DF;
  border-radius: 8px;
  padding: 20px;
  background: #F0F7FF;
}
.credit__guidance + .credit__guidance {
  margin-top: 48px;
}
@media only screen and (max-width: 767px) {
  .credit__guidance + .credit__guidance {
    margin-top: 24px;
  }
}
.credit__guidance--title {
  font-size: clamp(calc(16 / 16 * 1rem), calc(20 / 1440 * 100vw), calc(20 / 16 * 1rem));
  font-weight: 700;
  margin-bottom: 24px;
}
@media only screen and (max-width: 767px) {
  .credit__guidance--title {
    font-size: 18px;
    margin-bottom: 16px;
  }
}
.credit__guidance--text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .credit__guidance--text p {
    font-size: 16px;
  }
}
.credit__guidance--text p + p {
  margin-top: 0.5em;
}

.transfer__box {
  padding: 80px 20px 0;
}
@media only screen and (max-width: 767px) {
  .transfer__box {
    padding: 40px 20px 0;
  }
}
.transfer__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.transfer__title {
  font-size: clamp(calc(16 / 16 * 1rem), calc(20 / 1440 * 100vw), calc(20 / 16 * 1rem));
  font-weight: 700;
  margin-bottom: 32px;
}
@media only screen and (max-width: 767px) {
  .transfer__title {
    font-size: 18px;
    margin-bottom: 16px;
  }
}
.transfer__text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .transfer__text p {
    font-size: 16px;
  }
}
.transfer__text p + p {
  margin-top: 1em;
}
.transfer__text p em {
  color: #3A6EA5;
  font-weight: 700;
}
.transfer__image {
  margin-block: 48px;
  border: 2px solid #d9d9d9;
  background: #F0F7FF;
  padding: 24px;
  border-radius: 8px;
  width: -moz-fit-content;
  width: fit-content;
}
@media only screen and (max-width: 767px) {
  .transfer__image {
    margin-block: 24px;
    margin-inline: 20px;
  }
}
.transfer__image--center {
  display: flex;
  justify-content: center;
}
.transfer__subtitle {
  font-size: clamp(calc(16 / 16 * 1rem), calc(20 / 1440 * 100vw), calc(20 / 16 * 1rem));
  font-weight: 700;
  margin-bottom: 24px;
}
@media only screen and (max-width: 767px) {
  .transfer__subtitle {
    font-size: 18px;
    margin-bottom: 16px;
  }
}

.slip__box {
  padding: 80px 20px 0;
}
@media only screen and (max-width: 767px) {
  .slip__box {
    padding: 40px 20px 0;
  }
}
.slip__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.slip__image {
  border: 2px solid #d9d9d9;
  background: #F0F7FF;
  padding: 24px;
  border-radius: 8px;
}
@media only screen and (max-width: 767px) {
  .slip__image {
    margin-block: 24px;
  }
}
.slip__image--title {
  background: #ffffff;
  padding: 8px 16px;
  text-align: center;
  font-size: clamp(calc(15 / 16 * 1rem), calc(18 / 1440 * 100vw), calc(18 / 16 * 1rem));
  font-weight: 700;
  margin-bottom: 16px;
}
@media only screen and (max-width: 767px) {
  .slip__image--title {
    font-size: 18px;
    margin-bottom: 8px;
  }
}

.payplace__box {
  padding: 80px 20px;
}
@media only screen and (max-width: 767px) {
  .payplace__box {
    padding: 40px 20px;
  }
}
.payplace__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.payplace__text + .payplace__text {
  margin-top: 64px;
}
@media only screen and (max-width: 767px) {
  .payplace__text + .payplace__text {
    margin-top: 48px;
  }
}
.payplace__subtitle {
  font-size: clamp(calc(15 / 16 * 1rem), calc(18 / 1440 * 100vw), calc(18 / 16 * 1rem));
  font-weight: 700;
  margin-bottom: 32px;
}
@media only screen and (max-width: 767px) {
  .payplace__subtitle {
    font-size: 18px;
    margin-bottom: 16px;
  }
}
.payplace__list {
  display: inline-flex;
  flex-wrap: wrap;
  gap: 10px 20px;
}
@media only screen and (max-width: 767px) {
  .payplace__list {
    gap: 0.5em;
  }
}
.payplace__list p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .payplace__list p {
    width: 100%;
    font-size: 16px;
  }
}

.faq__box {
  padding: 80px 20px 0;
}
@media only screen and (max-width: 767px) {
  .faq__box {
    padding: 40px 20px 0;
  }
}
.faq__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.faq__text {
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  .faq__text {
    margin-top: 24px;
  }
}
.faq__text:first-of-type {
  margin-top: 0;
}
.faq__text--subtitle {
  font-size: clamp(calc(15 / 16 * 1rem), calc(18 / 1440 * 100vw), calc(18 / 16 * 1rem));
  font-weight: 700;
  margin-bottom: 32px;
}
@media only screen and (max-width: 767px) {
  .faq__text--subtitle {
    font-size: 18px;
    margin-bottom: 16px;
  }
}
.faq__text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .faq__text p {
    font-size: 16px;
  }
}
.faq__text p + p {
  margin-top: 1em;
}
.faq__text p em {
  color: #3A6EA5;
  font-weight: 700;
}
.faq__list {
  border: 2px solid #d9d9d9;
  background: #F0F7FF;
  padding: 18px;
  border-radius: 8px;
}
.faq__list ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 5px 40px;
  align-content: start;
}
@media only screen and (max-width: 767px) {
  .faq__list ul {
    grid-template-columns: 1fr;
    gap: 0;
  }
}
.faq__list ul li {
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .faq__list ul li {
    font-size: 16px;
  }
}
@media only screen and (max-width: 767px) {
  .faq__list ul li + li {
    margin-top: 0.5em;
  }
}
.faq__list ul li::before {
  content: "";
  display: inline-flex;
  width: 12px;
  height: 12px;
  background: #3A6EA5;
  margin-right: 10px;
}
.faq__list .ul__text {
  display: block;
  width: 100%;
  padding-left: 22px;
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .faq__list .ul__text {
    font-size: 16px;
  }
}
.faq__list--attention {
  margin-bottom: 5px;
}
.faq__list + .faq__list--attention {
  margin-bottom: 0;
  margin-top: 5px;
}
.faq__list--attention p {
  display: inline-flex;
  font-size: clamp(calc(12 / 16 * 1rem), calc(14 / 1440 * 100vw), calc(14 / 16 * 1rem));
  line-height: 2;
}
@media only screen and (max-width: 767px) {
  .faq__list--attention p {
    font-size: 14px;
  }
}
.faq__list--text {
  padding-block: 1rem;
}
.faq__list--text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .faq__list--text p {
    font-size: 16px;
  }
}
.faq__list--text p em {
  color: #3A6EA5;
  font-weight: 700;
}

.mypage__box {
  padding: 80px 20px 0;
}
@media only screen and (max-width: 767px) {
  .mypage__box {
    padding: 40px 20px 0;
  }
}
.mypage__image {
  text-align: center;
}
.mypage__image img {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
}
.mypage__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.mypage__text {
  margin-top: 40px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .mypage__text {
    margin-top: 24px;
  }
}
.mypage__text p {
  display: inline-block;
  text-align: left;
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .mypage__text p {
    font-size: 16px;
  }
}
.mypage__text p + p {
  margin-top: 1em;
}
.mypage__text p em {
  color: #3A6EA5;
  font-weight: 700;
}
.mypage__btn {
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  .mypage__btn {
    margin-top: 24px;
  }
}
.mypage__btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 420px;
  margin-inline: auto;
  background-color: #3A6EA5;
  border: 2px solid #3A6EA5;
  color: #ffffff;
  padding: 14px 24px 13px;
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  font-weight: 700;
  border-radius: 4px;
  text-decoration: none;
}
@media only screen and (max-width: 767px) {
  .mypage__btn a {
    font-size: 16px;
  }
}
@media (any-hover: hover) {
  .mypage__btn a {
    transition: opacity 0.3s ease;
  }
  .mypage__btn a:hover {
    background-color: #ffffff;
    color: #3A6EA5;
  }
}

.dec__box {
  padding: 80px 20px 0;
}
@media only screen and (max-width: 767px) {
  .dec__box {
    padding: 40px 20px 0;
  }
}
.dec__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.dec__list ul li + li {
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  .dec__list ul li + li {
    margin-top: 20px;
  }
}
.dec__list--title {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: clamp(calc(16 / 16 * 1rem), calc(20 / 1440 * 100vw), calc(20 / 16 * 1rem));
  font-weight: 700;
  color: #3a4454;
  line-height: 1.4;
}
@media only screen and (max-width: 767px) {
  .dec__list--title {
    font-size: 16px;
    gap: 10px;
  }
}
.dec__list--title span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  background: linear-gradient(to right, #93c8ff, #145ca9);
  color: #ffffff;
  border-radius: 4px;
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  font-weight: 700;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .dec__list--title span {
    width: 28px;
    height: 28px;
    font-size: 14px;
  }
}
.dec__list--text {
  margin-top: 24px;
}
@media only screen and (max-width: 767px) {
  .dec__list--text {
    margin-top: 16px;
  }
}
.dec__list--text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .dec__list--text p {
    font-size: 16px;
  }
}
.dec__list--text p + p {
  margin-top: 0.4em;
}
.dec__text {
  margin-top: 24px;
  text-align: right;
}
@media only screen and (max-width: 767px) {
  .dec__text {
    margin-top: 16px;
  }
}
.dec__text p {
  font-size: clamp(calc(12 / 16 * 1rem), calc(14 / 1440 * 100vw), calc(14 / 16 * 1rem));
  line-height: 1.8;
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .dec__text p {
    font-size: 14px;
  }
}

.change__box {
  padding: 80px 20px 0;
}
@media only screen and (max-width: 767px) {
  .change__box {
    padding: 40px 20px 0;
  }
}
.change__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.change__image {
  width: 100%;
  max-width: 650px;
  margin-inline: auto;
  border: 1px solid #d9d9d9;
}
.change__text {
  margin-top: 24px;
}
@media only screen and (max-width: 767px) {
  .change__text {
    margin-top: 16px;
  }
}
.change__text > * {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .change__text > * {
    font-size: 16px;
  }
}
.change__text > * + * {
  margin-top: 0.5em;
}
.change__attention {
  border: 2px solid #3A6EA5;
  background-color: #F0F7FF;
  padding: 60px;
  max-width: 1000px;
  margin: 60px auto 0;
  border-radius: 4px;
}
@media only screen and (max-width: 767px) {
  .change__attention {
    margin-top: 20px;
    padding: 20px;
  }
}
.change__attention--title {
  font-size: clamp(calc(16 / 16 * 1rem), calc(20 / 1440 * 100vw), calc(20 / 16 * 1rem));
  font-weight: 700;
  color: #3A6EA5;
  margin-bottom: 16px;
  letter-spacing: 0.02em;
}
@media only screen and (max-width: 767px) {
  .change__attention--title {
    font-size: 18px;
    margin-bottom: 12px;
  }
}
.change__attention--text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 2;
  color: #333333;
}
@media only screen and (max-width: 767px) {
  .change__attention--text p {
    font-size: 14px;
    line-height: 1.8;
  }
}

.pay-trend__box {
  padding: 80px 20px 0;
}
@media only screen and (max-width: 767px) {
  .pay-trend__box {
    padding: 40px 20px 0;
  }
}
.pay-trend__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.pay-trend__list {
  margin-bottom: 24px;
}
.pay-trend__list ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px 48px;
  margin-bottom: 12px;
}
@media only screen and (max-width: 767px) {
  .pay-trend__list ul {
    grid-template-columns: 1fr;
    gap: 24px 0;
  }
}
.pay-trend__list ul li {
  display: grid;
  grid-template-columns: subgrid;
  grid-row: span 2;
}
.pay-trend__list--image {
  border: 1px solid #d9d9d9;
  margin-bottom: 24px;
}
@media only screen and (max-width: 767px) {
  .pay-trend__list--image {
    margin-bottom: 1em;
  }
}
.pay-trend__list--image img {
  display: flex;
  align-items: center;
}
.pay-trend__list--text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  color: #333333;
  line-height: 1.6;
}
@media only screen and (max-width: 767px) {
  .pay-trend__list--text p {
    font-size: 16px;
  }
}
.pay-trend__list--text p + p {
  margin-top: 0.5em;
}
.pay-trend__list--text p:last-child {
  font-size: clamp(calc(12 / 16 * 1rem), calc(14 / 1440 * 100vw), calc(14 / 16 * 1rem));
}
@media only screen and (max-width: 767px) {
  .pay-trend__list--text p:last-child {
    font-size: 14px;
  }
}
.pay-trend__text {
  margin-top: 48px;
}
@media only screen and (max-width: 767px) {
  .pay-trend__text {
    margin-top: 24px;
  }
}
.pay-trend__text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  color: #333333;
  line-height: 1.6;
}
@media only screen and (max-width: 767px) {
  .pay-trend__text p {
    font-size: 16px;
  }
}
.pay-trend__text p + p {
  margin-top: 0.5em;
}

.announce__box {
  padding: 80px 20px 0;
}
@media only screen and (max-width: 767px) {
  .announce__box {
    padding: 40px 20px 0;
  }
}
.announce__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.announce__image {
  width: 100%;
  max-width: 650px;
  margin-inline: auto;
  border: 1px solid #d9d9d9;
}
.announce__image img {
  display: flex;
  align-items: center;
}
.announce__text {
  width: 100%;
  max-width: 650px;
  margin-inline: auto;
  margin-top: 24px;
}
@media only screen and (max-width: 767px) {
  .announce__text {
    margin-top: 16px;
  }
}
.announce__text p {
  font-size: clamp(calc(12 / 16 * 1rem), calc(14 / 1440 * 100vw), calc(14 / 16 * 1rem));
  color: #333333;
  line-height: 1.6;
}
@media only screen and (max-width: 767px) {
  .announce__text p {
    font-size: 14px;
  }
}

.calculate__box {
  padding: 80px 20px 0;
}
@media only screen and (max-width: 767px) {
  .calculate__box {
    padding: 40px 20px 0;
  }
}
.calculate__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.calculate__inner + .calculate__inner {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  .calculate__inner + .calculate__inner {
    margin-top: 40px;
  }
}
.calculate__formula {
  border: 2px solid #3A6EA5;
  background-color: #ffffff;
  padding: 32px;
  border-radius: 4px;
}
@media only screen and (max-width: 767px) {
  .calculate__formula {
    padding: 20px;
  }
}
.calculate__formula--detail {
  background-color: #F0F7FF;
  padding: 32px 24px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 32px;
}
@media only screen and (max-width: 767px) {
  .calculate__formula--detail {
    flex-direction: column;
    padding: 24px 16px;
    gap: 20px;
  }
}
.calculate__formula--head {
  font-size: clamp(calc(16 / 16 * 1rem), calc(20 / 1440 * 100vw), calc(20 / 16 * 1rem));
  font-weight: 700;
  color: #333333;
  text-align: center;
  line-height: 1.4;
  flex-shrink: 0;
}
@media only screen and (max-width: 767px) {
  .calculate__formula--head {
    font-size: 16px;
  }
}
.calculate__formula--head sup {
  font-size: 0.7em;
}
.calculate__formula--body {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 16px;
}
@media only screen and (max-width: 767px) {
  .calculate__formula--body {
    flex-direction: column;
    gap: 8px;
  }
}
.calculate__formula--body span {
  display: block;
  text-align: center;
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.4;
  color: #333333;
}
@media only screen and (max-width: 767px) {
  .calculate__formula--body span {
    font-size: 16px;
  }
}
.calculate__formula--body span sup {
  font-size: 0.7em;
}
.calculate__formula--note {
  width: 100%;
  border-top: 1px solid #d9d9d9;
  padding-top: 12px;
}
.calculate__formula--note p {
  display: inline-flex;
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.4;
  color: #333333;
}
@media only screen and (max-width: 767px) {
  .calculate__formula--note p {
    font-size: 14px;
  }
}
.calculate__formula > .calculate__formula--text {
  margin-block: 24px;
}
@media only screen and (max-width: 767px) {
  .calculate__formula > .calculate__formula--text {
    margin-block: 16px;
  }
}
.calculate__formula > .calculate__formula--text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  color: #333333;
}
@media only screen and (max-width: 767px) {
  .calculate__formula > .calculate__formula--text p {
    font-size: 14px;
  }
}
.calculate__formula--point {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  padding-top: 24px;
  margin-top: 24px;
  border-top: 1px solid #d9d9d9;
}
@media only screen and (max-width: 767px) {
  .calculate__formula--point {
    padding-top: 16px;
    margin-top: 16px;
    gap: 12px;
  }
}
.calculate__formula--point + .calculate__formula--point {
  margin-top: 24px;
  padding-top: 0;
  border-top: none;
}
@media only screen and (max-width: 767px) {
  .calculate__formula--point + .calculate__formula--point {
    margin-top: 16px;
  }
}
.calculate__formula--point .calculate__formula--icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  flex-shrink: 0;
}
.calculate__formula--point .calculate__formula--icon img {
  width: 32px;
  height: auto;
  margin-bottom: 4px;
}
@media only screen and (max-width: 767px) {
  .calculate__formula--point .calculate__formula--icon img {
    width: 28px;
  }
}
.calculate__formula--point .calculate__formula--icon span {
  font-size: clamp(calc(10 / 16 * 1rem), calc(12 / 1440 * 100vw), calc(12 / 16 * 1rem));
  font-weight: 700;
  color: #3A6EA5;
  line-height: 1;
}
.calculate__formula--point .calculate__formula--text {
  flex: 1;
}
.calculate__formula--point .calculate__formula--text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  color: #333333;
}
@media only screen and (max-width: 767px) {
  .calculate__formula--point .calculate__formula--text p {
    font-size: 14px;
  }
}

.rate-info__box {
  padding: 80px 20px 0;
}
@media only screen and (max-width: 767px) {
  .rate-info__box {
    padding: 40px 20px 0;
  }
}
.rate-info__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.rate-info__text {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  color: #333333;
}
@media only screen and (max-width: 767px) {
  .rate-info__text {
    font-size: 16px;
  }
}
.rate-info__subtitle {
  font-size: clamp(calc(15 / 16 * 1rem), calc(18 / 1440 * 100vw), calc(18 / 16 * 1rem));
  font-weight: 700;
  margin-top: 48px;
  margin-bottom: 32px;
}
@media only screen and (max-width: 767px) {
  .rate-info__subtitle {
    font-size: 18px;
    margin-top: 24px;
    margin-bottom: 16px;
  }
}
.rate-info__attention {
  border: 2px solid #3A6EA5;
  background-color: #ffffff;
  padding: 32px;
  border-radius: 4px;
}
@media only screen and (max-width: 767px) {
  .rate-info__attention {
    padding: 20px;
  }
}
.rate-info__note p {
  font-size: clamp(calc(12 / 16 * 1rem), calc(14 / 1440 * 100vw), calc(14 / 16 * 1rem));
  line-height: 1.8;
  color: #333333;
}
@media only screen and (max-width: 767px) {
  .rate-info__note p {
    font-size: 14px;
  }
}
.rate-info__flow ol li {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  color: #333333;
}
@media only screen and (max-width: 767px) {
  .rate-info__flow ol li {
    font-size: 16px;
  }
}

.plan__box {
  padding: 80px 20px 0;
}
@media only screen and (max-width: 767px) {
  .plan__box {
    padding: 40px 20px 0;
  }
}
.plan__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.plan__case + .plan__case {
  padding-top: 40px;
}
.plan__case--title {
  background-color: #3A6EA5;
  color: #ffffff;
  font-size: clamp(calc(16 / 16 * 1rem), calc(20 / 1440 * 100vw), calc(20 / 16 * 1rem));
  padding: 5px 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0;
}
@media only screen and (max-width: 767px) {
  .plan__case--title {
    justify-content: flex-start;
    font-size: 16px;
  }
}
.plan__case--title::before {
  content: "";
  display: inline-block;
  width: 36px;
  height: 36px;
  margin-right: 16px;
  background-color: #ffffff;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
}
@media only screen and (max-width: 767px) {
  .plan__case--title::before {
    width: 24px;
    height: 24px;
    margin-right: 12px;
  }
}
.plan__case--title.house::before {
  -webkit-mask-image: url(/assets/images/common/icon_house_detached.svg);
          mask-image: url(/assets/images/common/icon_house_detached.svg);
}
.plan__case--title.mansion::before {
  -webkit-mask-image: url(/assets/images/common/icon_house_multi-unit.svg);
          mask-image: url(/assets/images/common/icon_house_multi-unit.svg);
}
.plan__case--table {
  padding: 24px 0 0;
}
@media only screen and (max-width: 767px) {
  .plan__case--table {
    padding: 16px 0 0;
  }
}
.plan__case--table p {
  display: none;
}
@media only screen and (max-width: 767px) {
  .plan__case--table p {
    display: block;
    font-size: 14px;
    font-weight: 400;
    display: block;
    text-align: center;
    padding: 20px;
  }
}
.plan__note {
  padding-top: 48px;
}
@media only screen and (max-width: 767px) {
  .plan__note {
    padding-top: 24px;
  }
}
.plan__note p + p {
  margin-top: 0.5em;
}

.invoice__box {
  padding: 80px 20px 0;
}
@media only screen and (max-width: 767px) {
  .invoice__box {
    padding: 40px 20px 0;
  }
}
.invoice__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.invoice__text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  color: #333333;
}
@media only screen and (max-width: 767px) {
  .invoice__text p {
    font-size: 16px;
  }
}

.inport__box {
  padding: 80px 20px 0;
}
@media only screen and (max-width: 767px) {
  .inport__box {
    padding: 40px 20px 0;
  }
}
.inport__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.inport__inner + .inport__inner {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  .inport__inner + .inport__inner {
    margin-top: 40px;
  }
}
.inport__text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  color: #333333;
}
@media only screen and (max-width: 767px) {
  .inport__text p {
    font-size: 16px;
  }
}

.safety-top__box {
  padding: 80px 20px;
}
@media only screen and (max-width: 767px) {
  .safety-top__box {
    padding: 60px 20px;
  }
}
.safety-top__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.safety-top__item {
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  .safety-top__item {
    margin-bottom: 32px;
  }
}
.safety-top__accordion {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.3s ease-out;
  overflow: hidden;
}
.safety-top__accordion.active {
  grid-template-rows: 1fr;
}
.safety-top__accordion--inner {
  min-height: 0;
  padding-top: 0;
}
.safety-top__title {
  align-items: flex-start;
}
.safety-top__title span {
  padding-right: 0.5em;
}
.safety-top {
  /* セル（画像とテキストのブロック） */
}
.safety-top__cell {
  padding-top: 40px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px 40px;
  align-items: center;
}
@media only screen and (max-width: 767px) {
  .safety-top__cell {
    padding-top: 24px;
    grid-template-columns: 1fr;
    gap: 16px;
  }
}
.safety-top__cell--title {
  grid-column: 1/-1;
  order: 1;
  font-size: clamp(calc(18 / 16 * 1rem), calc(24 / 1440 * 100vw), calc(24 / 16 * 1rem));
  font-weight: 700;
  color: #333333;
  line-height: 1.5;
  margin-bottom: 0;
}
@media only screen and (max-width: 767px) {
  .safety-top__cell--title {
    font-size: 16px;
  }
}
.safety-top__cell--title span {
  display: block;
  color: #3A6EA5;
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  margin-bottom: 8px;
}
@media only screen and (max-width: 767px) {
  .safety-top__cell--title span {
    font-size: 13px;
    margin-bottom: 4px;
  }
}
.safety-top__cell--image {
  border: 1px solid #d9d9d9;
  order: 3;
}
@media only screen and (max-width: 767px) {
  .safety-top__cell--image {
    order: 2;
  }
}
.safety-top__cell--image img {
  width: 100%;
  height: auto;
  display: block;
}
.safety-top__cell--text {
  display: flex;
  flex-direction: column;
  order: 2;
}
@media only screen and (max-width: 767px) {
  .safety-top__cell--text {
    order: 3;
  }
}
.safety-top__cell--text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  color: #333333;
  margin-bottom: 24px;
}
@media only screen and (max-width: 767px) {
  .safety-top__cell--text p {
    font-size: 14px;
    margin-bottom: 16px;
  }
}
.safety-top__cell--text .safety-top__btn {
  margin-top: auto;
  margin-bottom: 16px;
}
@media only screen and (max-width: 767px) {
  .safety-top__cell--text .safety-top__btn {
    margin-top: 0;
  }
}
.safety-top__cell--text .link-group {
  margin-top: 0;
  width: 100%;
}
.safety-top__cell--text .link-group .link-group__list {
  grid-template-columns: 1fr;
}
.safety-top {
  /* 受賞歴ブロック */
}
.safety-top__history {
  margin-top: 64px;
}
@media only screen and (max-width: 767px) {
  .safety-top__history {
    margin-top: 40px;
  }
}
.safety-top__history--title {
  background-color: #3A6EA5;
  color: #ffffff;
  font-size: clamp(calc(16 / 16 * 1rem), calc(20 / 1440 * 100vw), calc(20 / 16 * 1rem));
  padding: 10px 20px;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 0;
  border-radius: 4px;
}
@media only screen and (max-width: 767px) {
  .safety-top__history--title {
    font-size: 16px;
    padding: 8px 16px;
  }
}
.safety-top__history--title::before {
  content: "";
  display: inline-block;
  width: 24px;
  height: 24px;
  margin-right: 12px;
  background-color: #ffffff;
  -webkit-mask-size: contain;
          mask-size: contain;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center;
          mask-position: center;
  -webkit-mask-image: url(/assets/images/common/icon_trophy.svg);
          mask-image: url(/assets/images/common/icon_trophy.svg);
}
@media only screen and (max-width: 767px) {
  .safety-top__history--title::before {
    width: 20px;
    height: 20px;
    margin-right: 8px;
  }
}
.safety-top__history--text {
  padding-top: 8px;
}
.safety-top__history--text dl {
  display: flex;
  flex-wrap: wrap;
  padding: 24px 16px;
  border-bottom: 1px solid #d9d9d9;
}
@media only screen and (max-width: 767px) {
  .safety-top__history--text dl {
    padding: 16px 0;
  }
}
.safety-top__history--text dl dt {
  width: 80px;
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  font-weight: 700;
  color: #333333;
  flex-shrink: 0;
  line-height: 1.6;
}
@media only screen and (max-width: 767px) {
  .safety-top__history--text dl dt {
    width: 60px;
    font-size: 14px;
  }
}
.safety-top__history--text dl dd {
  width: calc(100% - 80px);
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.6;
  color: #333333;
}
@media only screen and (max-width: 767px) {
  .safety-top__history--text dl dd {
    width: calc(100% - 60px);
    font-size: 14px;
  }
}
.safety-top__history--text dl dd + dd {
  margin-top: 8px;
  margin-left: 80px;
}
@media only screen and (max-width: 767px) {
  .safety-top__history--text dl dd + dd {
    margin-left: 60px;
  }
}
.safety-top {
  /* 04. 対応エリアブロック */
}
.safety-top__area {
  margin-top: 64px;
  padding-top: 40px;
  border-top: 1px solid #d9d9d9;
}
@media only screen and (max-width: 767px) {
  .safety-top__area {
    margin-top: 40px;
    padding-top: 32px;
    border-top: none;
  }
}
.safety-top__area--title {
  font-size: clamp(calc(18 / 16 * 1rem), calc(24 / 1440 * 100vw), calc(24 / 16 * 1rem));
  font-weight: 700;
  color: #333333;
  margin-bottom: 24px;
}
@media only screen and (max-width: 767px) {
  .safety-top__area--title {
    font-size: 20px;
    margin-bottom: 16px;
  }
}
.safety-top__area--subtitle {
  display: inline-block;
  background-color: #3A6EA5;
  color: #ffffff;
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  font-weight: 700;
  padding: 4px 16px;
  border-radius: 4px;
  margin-bottom: 16px;
  margin-top: 32px;
  line-height: 1.4;
}
.safety-top__area--subtitle:first-of-type {
  margin-top: 0;
}
@media only screen and (max-width: 767px) {
  .safety-top__area--subtitle {
    font-size: 14px;
    padding: 4px 12px;
    margin-top: 24px;
    margin-bottom: 12px;
  }
}
.safety-top__area .area__list ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
}
@media only screen and (max-width: 767px) {
  .safety-top__area .area__list ul {
    gap: 4px 8px;
  }
}
.safety-top__area .area__list ul li {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.6;
  color: #333333;
}
.safety-top__area .area__list ul li.hanging {
  text-indent: 0;
}
@media only screen and (max-width: 767px) {
  .safety-top__area .area__list ul li {
    font-size: 14px;
  }
}
.safety-top__area--note {
  text-align: right;
  margin-top: 24px;
}
@media only screen and (max-width: 767px) {
  .safety-top__area--note {
    margin-top: 16px;
  }
}
.safety-top__area--note p {
  font-size: clamp(calc(12 / 16 * 1rem), calc(14 / 1440 * 100vw), calc(14 / 16 * 1rem));
  color: #757575;
}
@media only screen and (max-width: 767px) {
  .safety-top__area--note p {
    font-size: 12px;
  }
}
.safety-top__area--note p.hanging {
  text-indent: 0;
}
.safety-top {
  /* 下部テキストブロック（4年に1回以上の点検・調査 / 会話でつながる定期点検） */
}
.safety-top__list {
  margin-top: 64px;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
}
@media only screen and (max-width: 767px) {
  .safety-top__list {
    margin-top: 48px;
    grid-template-columns: 1fr;
    gap: 40px;
  }
}
.safety-top__check--title, .safety-top__talk--title {
  font-size: clamp(calc(16 / 16 * 1rem), calc(20 / 1440 * 100vw), calc(20 / 16 * 1rem));
  font-weight: 700;
  color: #333333;
  margin-bottom: 16px;
}
@media only screen and (max-width: 767px) {
  .safety-top__check--title, .safety-top__talk--title {
    font-size: 18px;
    margin-bottom: 12px;
  }
}
.safety-top__check--text p, .safety-top__talk--text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  color: #333333;
}
@media only screen and (max-width: 767px) {
  .safety-top__check--text p, .safety-top__talk--text p {
    font-size: 14px;
  }
}

.certif__box {
  padding: 80px 20px 0;
}
@media only screen and (max-width: 767px) {
  .certif__box {
    padding: 40px 20px 0;
  }
}
.certif__inner {
  max-width: 1000px;
  margin-inline: auto;
}
.certif__list ul li + li {
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  .certif__list ul li + li {
    margin-top: 20px;
  }
}
.certif__list--title {
  display: flex;
  align-items: center;
  gap: 12px;
  font-size: clamp(calc(16 / 16 * 1rem), calc(20 / 1440 * 100vw), calc(20 / 16 * 1rem));
  font-weight: 700;
  color: #3a4454;
  line-height: 1.4;
}
@media only screen and (max-width: 767px) {
  .certif__list--title {
    font-size: 16px;
    gap: 10px;
  }
}
.certif__list--title span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  background: linear-gradient(to right, #93c8ff, #145ca9);
  color: #ffffff;
  border-radius: 4px;
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  font-weight: 700;
  line-height: 1;
}
@media only screen and (max-width: 767px) {
  .certif__list--title span {
    width: 28px;
    height: 28px;
    font-size: 14px;
  }
}
.certif__list--text {
  margin-top: 24px;
}
@media only screen and (max-width: 767px) {
  .certif__list--text {
    margin-top: 16px;
  }
}
.certif__list--text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .certif__list--text p {
    font-size: 14px;
  }
}
.certif__list--text p + p {
  margin-top: 0.4em;
}
.certif__text {
  margin-top: 24px;
}
@media only screen and (max-width: 767px) {
  .certif__text {
    margin-top: 16px;
  }
}
.certif__text p {
  font-size: clamp(calc(14 / 16 * 1rem), calc(16 / 1440 * 100vw), calc(16 / 16 * 1rem));
  line-height: 1.8;
  font-weight: 400;
}
@media only screen and (max-width: 767px) {
  .certif__text p {
    font-size: 16px;
  }
}

@media only screen and (max-width: 767px) {
  .contact__energy .contact__time + .contact__area {
    margin-top: 8px;
  }
}
@media only screen and (max-width: 767px) {
  .contact__energy .contact__time .flex-container {
    justify-content: start;
  }
}

.contact__energy--start .contact__energy .contact__read:nth-of-type(2) {
  display: none;
}

.contact__energy--stop .contact__energy .contact__read:nth-of-type(1) {
  display: none;
}

.pay--on .contact__box .contact__inner .ptn--service {
  display: none;
}
.pay--on .contact__box .contact__inner .ptn--pay {
  display: block;
}

.service--on .contact__box .contact__inner .ptn--service {
  display: block;
}
.service--on .contact__box .contact__inner .ptn--pay {
  display: none;
}