*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
ul,
ol,
dl,
li,
dt,
dd,
p,
div,
span,
img,
a,
table,
tr,
th,
td {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: normal;
  font-size: 100%;
  vertical-align: baseline;
}

header,
footer,
nav,
section,
article,
main,
aside,
figure,
figcaption {
  display: block;
}

ol,
ul {
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

a {
  color: inherit;
  text-decoration: none;
}

button {
  margin: 0;
  padding: 0;
  border: none;
  -webkit-box-shadow: none;
          box-shadow: none;
  background: transparent;
  cursor: pointer;
  font: inherit;
}

input,
select,
textarea {
  font: inherit;
  color: inherit;
  vertical-align: top;
}

body {
  background-color: #FFF;
  font-family: "Noto Sans JP", sans-serif;
  color: #565956;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.64px;
}

.l-header {
  position: fixed;
  top: 0px;
  left: 0px;
  z-index: 99;
  width: 100%;
  background-color: #FFF;
}

.l-inner {
  padding-inline: 16px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .l-inner {
    max-width: 1300px;
    padding-inline: 60px;
    margin-inline: auto;
  }
}
@media screen and (min-width: 1280px) {
  .l-inner {
    max-width: 1440px;
    padding-inline: 130px;
    margin-inline: auto;
  }
}

.l-footer {
  background-color: #565956;
}

.c-section-title {
  text-align: center;
}

.c-section-title__ja {
  display: block;
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.96px;
  -webkit-padding-after: 16px;
          padding-block-end: 16px;
}
@media screen and (min-width: 1280px) {
  .c-section-title__ja {
    font-size: 24px;
  }
}

.c-section-title__en {
  position: relative;
  -webkit-padding-before: 17px;
          padding-block-start: 17px;
  display: block;
  color: #565956;
  font-family: "Jost", sans-serif;
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%;
  letter-spacing: 0.96px;
}
@media screen and (min-width: 1280px) {
  .c-section-title__en {
    font-size: 24px;
  }
}
.c-section-title__en::before {
  position: absolute;
  top: 0px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  content: "";
  display: block;
  width: 160px;
  height: 1px;
  background-color: #565956;
}

.c-button {
  display: inline-block;
  padding: 20px 24px;
  border-radius: 16px;
  background: linear-gradient(87deg, #698 2.32%, #689 96.4%);
  max-width: 400px;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.c-button:hover {
  opacity: 0.56;
}

.c-button__text {
  position: relative;
  -webkit-padding-end: 40px;
          padding-inline-end: 40px;
  color: #FFF;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.8px;
}
.c-button__text::after {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0px;
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  background-image: url(../img/button_arrow.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

.c-button.--qa {
  padding: 20px 40px 20px 56px;
  border-radius: 99999px;
  background: #609484;
}
@media screen and (max-width: 374.99px) {
  .c-button.--qa {
    padding: 20px 30px 20px 46px;
  }
}

.c-button__text.--qa {
  -webkit-padding-end: 59.25px;
          padding-inline-end: 59.25px;
  font-size: 16px;
  letter-spacing: 0.64px;
}
.c-button__text.--qa::after {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0px;
  content: "";
  display: block;
  width: 11.25px;
  height: 14.999px;
  background-image: url(../img/button_triangle.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

.c-button.--header {
  text-align: center;
  padding: 7px 23px 6px 23px;
  border-radius: 99999px;
  border: 1px solid #565956;
  background: #FFF;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.c-button.--header:hover {
  background: #565956;
}
.c-button.--header:hover .c-button__text.--header {
  color: #FFF;
}

.c-button__text.--header {
  position: static;
  -webkit-padding-end: 0px;
          padding-inline-end: 0px;
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.56px;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.c-button__text.--header::after {
  background-image: none;
}

.c-header__sub-menu {
  display: none;
  position: fixed;
  top: 56px;
  left: 50%;
  z-index: 999;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 343px;
  padding: 16px 16px;
  background-color: #FFF;
  border-radius: 8px;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
@media screen and (max-width: 374.99px) {
  .c-header__sub-menu {
    width: 290px;
  }
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-header__sub-menu {
    top: 87px;
    padding: 24px 40px 27px 42px;
    width: 750px;
  }
}
@media screen and (min-width: 1280px) {
  .c-header__sub-menu {
    top: 87px;
    padding: 24px 40px 27px 42px;
    width: 1180px;
  }
}

.c-header__sub-menu-title {
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.64px;
  -webkit-margin-after: 21px;
          margin-block-end: 21px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-header__sub-menu-title {
    font-size: 20px;
    letter-spacing: 0.8px;
    -webkit-margin-after: 24px;
            margin-block-end: 24px;
  }
}
@media screen and (min-width: 1280px) {
  .c-header__sub-menu-title {
    font-size: 20px;
    letter-spacing: 0.8px;
    -webkit-margin-after: 24px;
            margin-block-end: 24px;
  }
}

.c-header__sub-menu-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 30px 24px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-header__sub-menu-list {
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 49px 22px;
  }
}
@media screen and (min-width: 1280px) {
  .c-header__sub-menu-list {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    gap: 49px 22px;
  }
}

.c-header__sub-menu-item {
  border-bottom: 2px solid #F2F4F1;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.c-header__sub-menu-item:hover {
  border-bottom: 2px solid #609484;
}

.c-header__sub-menu-link {
  display: inline-block;
  width: 100%;
  text-align: left;
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.56px;
  padding: 0px 16px 5px 0px;
}
@media screen and (max-width: 374.99px) {
  .c-header__sub-menu-link {
    font-size: 12px;
  }
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-header__sub-menu-link {
    font-size: 16px;
    letter-spacing: 0.64px;
  }
}
@media screen and (min-width: 1280px) {
  .c-header__sub-menu-link {
    font-size: 16px;
    letter-spacing: 0.64px;
  }
}

.c-header__sub-menu-bg {
  display: none;
  position: fixed;
  top: 48px;
  left: 0px;
  z-index: 10;
  width: 100%;
  height: 100vh;
  background: rgba(86, 89, 86, 0.56);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-header__sub-menu-bg {
    top: 69px;
  }
}
@media screen and (min-width: 1280px) {
  .c-header__sub-menu-bg {
    top: 69px;
  }
}

.c-label {
  text-align: center;
  padding: 16px;
  border-radius: 16px;
  background: #565956;
  color: #FFF;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.64px;
  max-width: 400px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-label {
    padding: 16px 16px 16px 14px;
  }
}
@media screen and (min-width: 1280px) {
  .c-label {
    padding: 16px 16px 16px 14px;
  }
}

.c-label.--step {
  white-space: nowrap;
  width: 260px;
  position: relative;
  padding: 15px 40px;
  border-radius: 0;
  background: #F2F4F1;
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.8px;
}
.c-label.--step::after {
  position: absolute;
  bottom: -14px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  content: "";
  display: block;
  width: 11px;
  height: 19px;
  background-image: url(../img/label_polygon.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
@media screen and (min-width: 1280px) {
  .c-label.--step::after {
    left: auto;
    right: -10px;
    bottom: auto;
    top: calc(50% - 12px);
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    width: 18px;
    height: 29px;
    -webkit-transform: rotate(270deg);
            transform: rotate(270deg);
  }
}

.c-benefit-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.c-benefit-item__label {
  display: inline-block;
  text-align: center;
  padding: 4px 24px;
  background-color: #948260;
  color: #FFF;
  font-family: "Jost", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%;
  letter-spacing: 0.8px;
}

.c-benefit-item__image-box {
  width: 168px;
}

.c-benefit-item__image {
  width: 100%;
  aspect-ratio: 168/168;
  height: auto;
}

.c-benefit-item__text {
  color: #565956;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.64px;
}

.c-voice-item {
  background: #F2F4F1;
}

.c-voice-item__image-box {
  position: relative;
  width: 100%;
}

.c-voice-item__image-tag {
  top: 0px;
  left: 0px;
  position: absolute;
  padding: 9px 16px 7px 16px;
  background: #609484;
  color: #FFF;
  font-family: "Jost", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%;
  letter-spacing: 0.64px;
}

.c-voice-item__image {
  width: 100%;
  aspect-ratio: 343/192;
  height: auto;
}

.c-voice-item__body {
  padding: 24px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 16px;
}
@media screen and (min-width: 1280px) {
  .c-voice-item__body {
    padding: 25px 47px 24px 48px;
  }
}

.c-voice-item__body.--3 {
  padding: 24px 23px 24px 24px;
}
@media screen and (min-width: 1280px) {
  .c-voice-item__body.--3 {
    padding: 25px 47px 24px 48px;
  }
}

.c-voice-item__label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  row-gap: 8px;
}

.c-voice-item__label-text1 {
  white-space: nowrap;
  display: inline-block;
  padding: 4px 10px;
  background-color: #948260;
  color: #FFF;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.8px;
}
@media screen and (max-width: 374.99px) {
  .c-voice-item__label-text1 {
    font-size: 16px;
  }
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-voice-item__label-text1 {
    font-size: 16px;
  }
}

.c-voice-item__label-text2 {
  white-space: nowrap;
  display: inline-block;
  padding: 4px 10px;
  background-color: #948260;
  color: #FFF;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.8px;
}
@media screen and (max-width: 374.99px) {
  .c-voice-item__label-text2 {
    font-size: 16px;
  }
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-voice-item__label-text2 {
    font-size: 16px;
  }
}

.c-voice-item__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  row-gap: 16px;
}
@media screen and (min-width: 1280px) {
  .c-voice-item__text {
    row-gap: 40px;
  }
}

.c-voice-item__text-text {
  display: block;
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.64px;
}

.c-voice-item__text-profile {
  display: block;
  color: t-gray;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.64px;
}

.c-solution-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  row-gap: 16px;
  padding: 28px 50px;
  border-radius: 32px;
  background: #FFF;
  -webkit-box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.16);
}
@media screen and (min-width: 1280px) {
  .c-solution-item {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    row-gap: 0px;
    -webkit-column-gap: 32px;
       -moz-column-gap: 32px;
            column-gap: 32px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
}

.c-solution-item__image-box {
  width: 32px;
}

.c-solution-item__image {
  width: 100%;
  aspect-ratio: 32/32;
  height: auto;
}

.c-solution-item__text {
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.8px;
}

.c-style-mv__image-box {
  position: relative;
  width: 100%;
  -webkit-padding-before: 11.3px;
          padding-block-start: 11.3px;
}
@media screen and (min-width: 1280px) {
  .c-style-mv__image-box {
    -webkit-padding-before: 30px;
            padding-block-start: 30px;
  }
}

.c-style-mv__image-tag {
  position: absolute;
  top: 0px;
  left: 12px;
  color: #565956;
  font-family: "Jost", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%;
  letter-spacing: 0.64px;
}
@media screen and (min-width: 1280px) {
  .c-style-mv__image-tag {
    left: 39px;
    font-size: 40px;
    letter-spacing: 1.6px;
  }
}

.c-style-mv__image {
  width: 100%;
  aspect-ratio: 343/138.072;
  height: auto;
}

.c-style-sub-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 8px;
}

.c-style-sub-title__ja {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.8px;
}
.c-style-sub-title__ja::before, .c-style-sub-title__ja::after {
  content: "";
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 1px;
  background: #565956;
}
.c-style-sub-title__ja::before {
  -webkit-margin-end: 24px;
          margin-inline-end: 24px;
}
@media screen and (min-width: 1280px) {
  .c-style-sub-title__ja::before {
    -webkit-margin-end: 140px;
            margin-inline-end: 140px;
  }
}
.c-style-sub-title__ja::after {
  -webkit-margin-start: 24px;
          margin-inline-start: 24px;
}
@media screen and (min-width: 1280px) {
  .c-style-sub-title__ja::after {
    -webkit-margin-start: 140px;
            margin-inline-start: 140px;
  }
}

.c-style-sub-title__en {
  display: block;
  color: #b1b6af;
  font-family: "Jost", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%;
  letter-spacing: 0.8px;
}

.c-style-card {
  background: #F2F4F1;
  -webkit-box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.16);
  border-radius: 0px 0px 8px 8px;
}

.c-style-card__link:hover {
  cursor: pointer;
}

.c-style-card__image-box {
  overflow: hidden;
  width: 100%;
}

.c-style-card__image {
  width: 100%;
  aspect-ratio: 300/300;
  height: auto;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.c-style-card__image:hover {
  -webkit-transform: scale(1.2);
          transform: scale(1.2);
}

.c-style-card__content-box {
  padding: 24px 24px 64px 24px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  row-gap: 8px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-style-card__content-box {
    padding: 24px 24px 24px 24px;
  }
}

.c-style-card__name {
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.8px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-style-card__name {
    font-size: 16px;
  }
}

.c-style-card__detail {
  color: #565956;
  font-family: "Jost", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%;
  letter-spacing: 0.64px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-style-card__detail {
    font-size: 12px;
  }
}

.c-style-item__label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  row-gap: 8px;
  -webkit-margin-after: 36px;
          margin-block-end: 36px;
}
@media screen and (min-width: 1280px) {
  .c-style-item__label {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    row-gap: 0px;
  }
}

.c-style-item__label-text1 {
  padding: 4px 8px;
  background-color: #948260;
  display: inline-block;
  color: #FFF;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.96px;
}
@media screen and (min-width: 1280px) {
  .c-style-item__label-text1 {
    padding: 4px 0 4px 8px;
  }
}

.c-style-item__label-text2 {
  padding: 4px 8px;
  background-color: #948260;
  display: inline-block;
  color: #FFF;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.96px;
}
@media screen and (min-width: 1280px) {
  .c-style-item__label-text2 {
    -webkit-margin-start: 0px;
            margin-inline-start: 0px;
    padding: 4px 8px 4px 0px;
  }
}

.c-features-item {
  padding: 32px 16px;
  border-radius: 16px;
  background: #FFF;
  -webkit-box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
          box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 24px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-features-item {
    padding: 32px 50px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: 0;
    -webkit-column-gap: 30px;
       -moz-column-gap: 30px;
            column-gap: 30px;
  }
}
@media screen and (min-width: 1280px) {
  .c-features-item {
    padding: 32px 106px;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: 0;
    -webkit-column-gap: 80px;
       -moz-column-gap: 80px;
            column-gap: 80px;
  }
}

.c-features-item__image-box {
  width: 100%;
}

.c-features-item__image.--second {
  aspect-ratio: 311/168;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-features-item__image.--second {
    aspect-ratio: 452/244;
  }
}
@media screen and (min-width: 1280px) {
  .c-features-item__image.--second {
    aspect-ratio: 452/244;
  }
}

.c-features-item__image {
  width: 100%;
  aspect-ratio: 311/192;
  height: auto;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-features-item__image {
    aspect-ratio: 446/275;
  }
}
@media screen and (min-width: 1280px) {
  .c-features-item__image {
    aspect-ratio: 446/275;
  }
}

.c-features-item__content-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 12px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-features-item__content-box {
    max-width: 400px;
  }
}
@media screen and (min-width: 1280px) {
  .c-features-item__content-box {
    max-width: 445px;
  }
}

.-c-features-item__label {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  display: inline-block;
  padding: 4px 16px;
  background-color: #948260;
  color: #FFF;
  font-family: "Jost", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%;
  letter-spacing: 0.8px;
}

.c-features-item__title {
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.8px;
}

.c-features-item__title.--big {
  color: #948260;
  font-size: 24px;
  letter-spacing: 0.96px;
}

.c-features-item__text {
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.64px;
}

.c-how-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 24px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-how-item {
    row-gap: 28px;
  }
}
@media screen and (min-width: 1280px) {
  .c-how-item {
    row-gap: 28px;
  }
}

.c-how-item__image-box {
  width: 100%;
}

.c-how-item__image {
  width: 100%;
  aspect-ratio: 343/343;
  height: auto;
}

.c-how-item__content-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 14px;
}

.c-how-item__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-column-gap: 24px;
     -moz-column-gap: 24px;
          column-gap: 24px;
}

.c-how-item__title-number {
  -webkit-margin-before: -3px;
          margin-block-start: -3px;
  -webkit-margin-start: 2px;
          margin-inline-start: 2px;
  color: #609484;
  font-family: Inter;
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: normal;
}

.c-how-item__title-text {
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.8px;
}

.c-how-item__text {
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.64px;
}

.c-cta-card {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 24px;
  padding: 32px 16px;
  border-radius: 16px;
  background-color: #FFF;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-cta-card {
    width: 719px;
    margin-inline: auto;
    padding: 56px 64px;
  }
}
@media screen and (min-width: 1280px) {
  .c-cta-card {
    width: 719px;
    margin-inline: auto;
    padding: 56px 64px;
  }
}

.c-cta-card__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 8px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-cta-card__title {
    position: relative;
  }
}
@media screen and (min-width: 1280px) {
  .c-cta-card__title {
    position: relative;
  }
}

.c-cta-card__title-top {
  padding-inline: 16px;
  background-color: #565956;
  color: #FFF;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.64px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-cta-card__title-top {
    position: absolute;
    top: -10px;
    left: -40px;
    -webkit-transform: rotate(-29.317deg);
            transform: rotate(-29.317deg);
  }
}
@media screen and (min-width: 1280px) {
  .c-cta-card__title-top {
    position: absolute;
    top: -10px;
    left: -40px;
    -webkit-transform: rotate(-29.317deg);
            transform: rotate(-29.317deg);
  }
}

.c-cta-card__title-center {
  white-space: nowrap;
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.64px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-cta-card__title-center {
    font-size: 24px;
    letter-spacing: 0.96px;
  }
}
@media screen and (min-width: 1280px) {
  .c-cta-card__title-center {
    font-size: 24px;
    letter-spacing: 0.96px;
  }
}

.c-cta-card__title-bottom {
  text-align: center;
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 28px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 1.12px;
}

.c-cta-card__label-box {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 8px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-cta-card__label-box {
    display: grid;
    grid-template-columns: 191px 191px 191px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    row-gap: 0px;
    -webkit-column-gap: 8px;
       -moz-column-gap: 8px;
            column-gap: 8px;
    -webkit-margin-after: 32px;
            margin-block-end: 32px;
  }
}
@media screen and (min-width: 1280px) {
  .c-cta-card__label-box {
    display: grid;
    grid-template-columns: 191px 191px 191px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    row-gap: 0px;
    -webkit-column-gap: 8px;
       -moz-column-gap: 8px;
            column-gap: 8px;
    -webkit-margin-after: 32px;
            margin-block-end: 32px;
  }
}

.c-cta-card__label {
  width: 100%;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-cta-card__label {
    white-space: nowrap;
  }
}
@media screen and (min-width: 1280px) {
  .c-cta-card__label {
    white-space: nowrap;
  }
}

.c-cta-card__content-box {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 30px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-cta-card__content-box {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    row-gap: 0px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-column-gap: 36px;
       -moz-column-gap: 36px;
            column-gap: 36px;
  }
}
@media screen and (min-width: 1280px) {
  .c-cta-card__content-box {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    row-gap: 0px;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-column-gap: 36px;
       -moz-column-gap: 36px;
            column-gap: 36px;
  }
}

.c-cta-card__button {
  width: 100%;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .c-cta-card__button {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media screen and (min-width: 1280px) {
  .c-cta-card__button {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}

.c-footer-title {
  position: relative;
  color: #FFF;
  font-family: "Jost", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%;
  letter-spacing: 0.8px;
  -webkit-padding-after: 7px;
          padding-block-end: 7px;
}
.c-footer-title::after {
  position: absolute;
  bottom: 0px;
  left: 0px;
  content: "";
  display: block;
  width: 72.028px;
  height: 1px;
  background-color: #FFF;
}

.c-footer-item-box__title {
  -webkit-margin-after: 16px;
          margin-block-end: 16px;
}

.c-footer-item-box__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  row-gap: 8px;
}

.c-footer-item-box__item {
  width: 100%;
}

.c-footer-item-box__link {
  display: inline-block;
  width: 100%;
  white-space: nowrap;
  color: #FFF;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.64px;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.c-footer-item-box__link:hover {
  color: #b1b6af;
}

.p-header__inner {
  padding-block: 9px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media screen and (min-width: 1280px) {
  .p-header__inner {
    display: grid;
    grid-template-columns: auto 1fr;
    padding-block: 12px;
  }
}

.p-header__logo {
  width: 52px;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-header__logo {
    width: 113px;
  }
}
@media screen and (min-width: 1280px) {
  .p-header__logo {
    width: 113px;
  }
}
.p-header__logo:hover {
  opacity: 0.7;
}

.p-header__logo-image {
  width: 100%;
  aspect-ratio: 52/21;
  height: auto;
}

.p-header__content-box {
  display: contents;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-header__content-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 32px;
       -moz-column-gap: 32px;
            column-gap: 32px;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: end;
  }
}
@media screen and (min-width: 1280px) {
  .p-header__content-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 32px;
       -moz-column-gap: 32px;
            column-gap: 32px;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: end;
  }
}

.p-header__nav {
  -webkit-margin-start: 16px;
          margin-inline-start: 16px;
}
@media screen and (min-width: 1280px) {
  .p-header__nav {
    -webkit-margin-start: 0px;
            margin-inline-start: 0px;
  }
}

.p-header__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 16px;
     -moz-column-gap: 16px;
          column-gap: 16px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-header__list {
    -webkit-column-gap: 32px;
       -moz-column-gap: 32px;
            column-gap: 32px;
  }
}
@media screen and (min-width: 1280px) {
  .p-header__list {
    -webkit-column-gap: 35px;
       -moz-column-gap: 35px;
            column-gap: 35px;
  }
}

.p-header__item {
  position: relative;
  -webkit-margin-before: 2px;
          margin-block-start: 2px;
}

.p-header__link {
  display: none;
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 14px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.56px;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-header__link {
    display: inline-block;
    font-size: 16px;
    letter-spacing: 0.64px;
  }
}
@media screen and (min-width: 1280px) {
  .p-header__link {
    display: inline-block;
    font-size: 16px;
    letter-spacing: 0.64px;
  }
}
.p-header__link:hover {
  opacity: 0.7;
}

.p-header__link.--icon {
  display: inline-block;
  position: relative;
  -webkit-padding-end: 20px;
          padding-inline-end: 20px;
}
.p-header__link.--icon::after {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  right: 0px;
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  background-image: url(../img/header_link-icon.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-header__link.--icon::after {
    right: -3px;
  }
}
@media screen and (min-width: 1280px) {
  .p-header__link.--icon::after {
    right: -3px;
  }
}

.p-header__link.--icon.--is-open {
  opacity: 0.64;
}
.p-header__link.--icon.--is-open::after {
  -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
  top: calc(50% - 6px);
}

.p-header__button {
  display: none;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-header__button {
    display: inline-block;
    -webkit-margin-end: 8px;
            margin-inline-end: 8px;
  }
}
@media screen and (min-width: 1280px) {
  .p-header__button {
    display: inline-block;
    -webkit-margin-end: 8px;
            margin-inline-end: 8px;
  }
}

.p-header__icon-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-column-gap: 16px;
     -moz-column-gap: 16px;
          column-gap: 16px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.p-header__icon-box-link {
  display: inline-block;
  width: 24px;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-header__icon-box-link {
    width: 32px;
  }
}
@media screen and (min-width: 1280px) {
  .p-header__icon-box-link {
    width: 32px;
  }
}
.p-header__icon-box-link:hover {
  opacity: 0.7;
}

.p-header__icon-box-image {
  width: 100%;
  aspect-ratio: 24/24;
  height: auto;
}

.p-fv {
  -webkit-margin-before: 48px;
          margin-block-start: 48px;
  position: relative;
  background-image: url(../img/fv_sp.jpg);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  width: 100%;
  height: 742px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-fv {
    -webkit-margin-before: 69px;
            margin-block-start: 69px;
    background-image: url(../img/fv_pc.jpg);
    background-size: cover;
    height: 476px;
  }
}
@media screen and (min-width: 1280px) {
  .p-fv {
    -webkit-margin-before: 69px;
            margin-block-start: 69px;
    background-image: url(../img/fv_pc.jpg);
    background-size: cover;
    height: 476px;
  }
}

.p-fv__content-box {
  position: absolute;
  top: 256px;
  left: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  row-gap: 24px;
}
@media screen and (max-width: 374.99px) {
  .p-fv__content-box {
    left: 50%;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-fv__content-box {
    top: 128px;
    left: 130px;
  }
}
@media screen and (min-width: 1280px) {
  .p-fv__content-box {
    top: 128px;
    left: calc(50% - 590px);
  }
}

.p-fv__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  row-gap: 8px;
}

.p-fv__text-1 {
  white-space: nowrap;
  padding: 4px 24px;
  background-color: #FFF;
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 28px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 1.12px;
}
@media screen and (max-width: 374.99px) {
  .p-fv__text-1 {
    font-size: 24px;
  }
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-fv__text-1 {
    font-size: 40px;
    letter-spacing: 1.6px;
  }
}
@media screen and (min-width: 1280px) {
  .p-fv__text-1 {
    font-size: 40px;
    letter-spacing: 1.6px;
  }
}

.p-fv__text-2 {
  white-space: nowrap;
  padding: 4px 24px;
  background-color: #FFF;
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 28px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 1.12px;
}
@media screen and (max-width: 374.99px) {
  .p-fv__text-2 {
    font-size: 24px;
  }
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-fv__text-2 {
    font-size: 40px;
    letter-spacing: 1.6px;
  }
}
@media screen and (min-width: 1280px) {
  .p-fv__text-2 {
    font-size: 40px;
    letter-spacing: 1.6px;
  }
}

.p-fv__text-2.--sub {
  display: none;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-fv__text-2.--sub {
    padding: 0px;
    display: inline-block;
    background-color: #FFF;
    color: #565956;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 40px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    letter-spacing: 1.6px;
  }
}
@media screen and (min-width: 1280px) {
  .p-fv__text-2.--sub {
    padding: 0px;
    display: inline-block;
    background-color: #FFF;
    color: #565956;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 40px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    letter-spacing: 1.6px;
  }
}

.p-fv__text-3 {
  white-space: nowrap;
  padding: 4px 24px;
  background-color: #FFF;
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 28px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 1.12px;
}
@media screen and (max-width: 374.99px) {
  .p-fv__text-3 {
    font-size: 24px;
  }
}
@media screen and (min-width: 1280px) {
  .p-fv__text-3 {
    font-size: 40px;
    letter-spacing: 1.6px;
  }
}

.p-fv__text-3.--sub {
  display: block;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-fv__text-3.--sub {
    display: none;
  }
}
@media screen and (min-width: 1280px) {
  .p-fv__text-3.--sub {
    display: none;
  }
}

.p-fv__sub-text {
  padding: 8px 24px;
  background-color: #FFF;
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.64px;
}
@media screen and (max-width: 374.99px) {
  .p-fv__sub-text {
    font-size: 12px;
  }
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-fv__sub-text {
    font-size: 24px;
    letter-spacing: 0.96px;
  }
}
@media screen and (min-width: 1280px) {
  .p-fv__sub-text {
    font-size: 24px;
    letter-spacing: 0.96px;
  }
}

.p-cta {
  background-color: #F2F4F1;
  background-image: url(../img/cta_back.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

.p-cta__inner {
  padding-block: 56px;
}
@media screen and (min-width: 1280px) {
  .p-cta__inner {
    padding-block: 48px;
  }
}

@media screen and (min-width: 1280px) {
  .p-cta__inner.--padding {
    padding-block: 50px 48px;
  }
}

.p-benefit__inner {
  padding-block: 87px 88px;
}

.p-benefit__title {
  -webkit-margin-after: 64px;
          margin-block-end: 64px;
}

.p-benefit-items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 32px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-benefit-items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media screen and (min-width: 1280px) {
  .p-benefit-items {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: 32px;
  }
}

.p-topic {
  background-image: url(../img/topic_bg-sp.png);
  background-repeat: no-repeat;
  background-position: top 0px center;
  background-size: cover;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-topic {
    background-image: url(../img/topic_bg-pc.png);
  }
}
@media screen and (min-width: 1280px) {
  .p-topic {
    background-image: url(../img/topic_bg-pc.png);
  }
}

.p-topic__inner {
  position: relative;
  padding: 18px 16px;
  text-align: center;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-topic__inner {
    padding: 54px 16px;
  }
}
@media screen and (min-width: 1280px) {
  .p-topic__inner {
    padding: 54px 16px;
  }
}
.p-topic__inner::before, .p-topic__inner::after {
  content: "";
  position: absolute;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 56px;
  height: 71.556px;
  background-image: url(../img/topic_bg-leaf.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-topic__inner::before, .p-topic__inner::after {
    width: 158px;
    height: 203px;
  }
}
@media screen and (min-width: 1280px) {
  .p-topic__inner::before, .p-topic__inner::after {
    width: 158px;
    height: 203px;
  }
}
.p-topic__inner::before {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
  top: calc(50% - 37px);
  left: calc(50% - 169px);
}
@media screen and (max-width: 374.99px) {
  .p-topic__inner::before {
    top: calc(50% - 37px);
    left: calc(50% - 155px);
  }
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-topic__inner::before {
    top: calc(50% - 105px);
    left: calc(50% - 378px);
  }
}
@media screen and (min-width: 1280px) {
  .p-topic__inner::before {
    top: calc(50% - 105px);
    left: calc(50% - 378px);
  }
}
.p-topic__inner::after {
  top: calc(50% - 0px);
  right: calc(50% - 169px);
}
@media screen and (max-width: 374.99px) {
  .p-topic__inner::after {
    right: calc(50% - 155px);
  }
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-topic__inner::after {
    right: calc(50% - 378px);
  }
}
@media screen and (min-width: 1280px) {
  .p-topic__inner::after {
    right: calc(50% - 378px);
  }
}

.p-topic__title {
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.64px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-topic__title {
    font-size: 24px;
    letter-spacing: 0.96px;
  }
}
@media screen and (min-width: 1280px) {
  .p-topic__title {
    font-size: 24px;
    letter-spacing: 0.96px;
  }
}

.p-topic__text {
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 32px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 1.28px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-topic__text {
    font-size: 64px;
    letter-spacing: 2.56px;
  }
}
@media screen and (min-width: 1280px) {
  .p-topic__text {
    font-size: 64px;
    letter-spacing: 2.56px;
  }
}

.p-voice__inner {
  padding: 55px 16px 56px 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 64px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 1280px) {
  .p-voice__inner {
    padding: 86px 60px 90px 60px;
  }
}
@media (min-width: 1440px) {
  .p-voice__inner {
    padding: 86px 130px 90px 130px;
  }
}

.p-voice__title-ja {
  text-indent: -5px;
}

.p-voice__items {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-voice__items {
    display: grid;
    grid-template-columns: 33% 33% 33%;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
}
@media screen and (min-width: 1280px) {
  .p-voice__items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}

.p-voice__item {
  width: 100%;
}
.p-voice__item:nth-of-type(2n) {
  background-color: #FFF;
}

.p-solution {
  background-image: url(../img/solution_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.p-solution__inner {
  padding: 55px 16px 112px 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 32px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-solution__inner {
    padding: 86px 130px 112px 130px;
    row-gap: 64px;
  }
}
@media screen and (min-width: 1280px) {
  .p-solution__inner {
    padding: 86px 130px 112px 130px;
    row-gap: 64px;
  }
}

.p-solution__items {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 24px;
}
@media screen and (min-width: 1280px) {
  .p-solution__items {
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "item1 item1" "item2 item2" "item3 item3" "item4 item5" "item6 item6";
    -webkit-column-gap: 24px;
       -moz-column-gap: 24px;
            column-gap: 24px;
  }
}

.p-solution__item {
  width: 100%;
}
@media screen and (min-width: 1280px) {
  .p-solution__item:nth-of-type(1) {
    grid-area: item1;
  }
}
@media screen and (min-width: 1280px) {
  .p-solution__item:nth-of-type(2) {
    grid-area: item2;
  }
}
@media screen and (min-width: 1280px) {
  .p-solution__item:nth-of-type(3) {
    grid-area: item3;
  }
}
@media screen and (min-width: 1280px) {
  .p-solution__item:nth-of-type(4) {
    grid-area: item4;
  }
}
@media screen and (min-width: 1280px) {
  .p-solution__item:nth-of-type(5) {
    grid-area: item5;
  }
}
@media screen and (min-width: 1280px) {
  .p-solution__item:nth-of-type(6) {
    grid-area: item6;
  }
}

.p-style {
  position: relative;
}

.p-style__content-body-bg {
  position: absolute;
  top: 885px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: -1;
  width: 100%;
  height: 1982px;
  background: #F2F4F1;
}
@media screen and (max-width: 374.99px) {
  .p-style__content-body-bg {
    top: 835px;
  }
}
@media (min-width: 875px) and (max-width: 999.99px) {
  .p-style__content-body-bg {
    top: 600px;
    height: 1940px;
  }
}
@media (min-width: 1000px) and (max-width: 1439px) {
  .p-style__content-body-bg {
    top: 485px;
    height: 1230px;
  }
}
@media (min-width: 1440px) {
  .p-style__content-body-bg {
    top: 485px;
    height: 1369px;
  }
}

.p-style__content-body-bg.--reverse {
  position: absolute;
  top: auto;
  bottom: 655px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: -1;
  width: 100%;
  height: 1363px;
  background: #F2F4F1;
}
@media (min-width: 875px) and (max-width: 999.99px) {
  .p-style__content-body-bg.--reverse {
    bottom: 170px;
    height: 1930px;
  }
}
@media (min-width: 1000px) and (max-width: 1439px) {
  .p-style__content-body-bg.--reverse {
    bottom: 230px;
    height: 1230px;
  }
}
@media (min-width: 1440px) {
  .p-style__content-body-bg.--reverse {
    bottom: 280px;
    height: 1396px;
  }
}

.p-style__inner {
  position: relative;
  padding-block: 239px 56px;
}
@media screen and (max-width: 374.99px) {
  .p-style__inner {
    padding-block: 200px 56px;
  }
}
@media (min-width: 875px) and (max-width: 999px) {
  .p-style__inner {
    padding-block: 386px 107px;
  }
}
@media (min-width: 1000px) and (max-width: 1439px) {
  .p-style__inner {
    padding-block: 139px 107px;
  }
}
@media (min-width: 1440px) {
  .p-style__inner {
    padding-block: 139px 107px;
  }
}

.p-style__fukidashi {
  position: absolute;
  top: -55.5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 308px;
  padding: 30px 23px;
  background-color: #609484;
  color: #FFF;
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.8px;
}
@media screen and (max-width: 374.99px) {
  .p-style__fukidashi {
    padding: 20px 23px;
    width: 255px;
  }
}
@media (min-width: 875px) and (max-width: 999px) {
  .p-style__fukidashi {
    top: -15.5px;
    width: 595px;
    padding: 50px 46px;
    font-size: 24px;
    letter-spacing: 0.96px;
  }
}
@media (min-width: 1000px) and (max-width: 1439px) {
  .p-style__fukidashi {
    top: -15.5px;
    width: 900px;
    padding: 30px 46px;
    font-size: 20px;
    letter-spacing: 0.96px;
  }
}
@media (min-width: 1440px) {
  .p-style__fukidashi {
    top: -15.5px;
    width: 1115px;
    padding: 30px 46px;
    font-size: 24px;
    letter-spacing: 0.96px;
  }
}
.p-style__fukidashi::after {
  position: absolute;
  top: 13.5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  content: "";
  width: 343px;
  height: 237px;
  background-image: url(../img/style-fukidashi_sp.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
@media screen and (max-width: 374.99px) {
  .p-style__fukidashi::after {
    top: -3.5px;
    width: 286px;
  }
}
@media (min-width: 875px) and (max-width: 999px) {
  .p-style__fukidashi::after {
    top: -36px;
    background-image: url(../img/style-fukidashi_sp.png);
    width: 540px;
    height: 374px;
  }
}
@media (min-width: 1000px) and (max-width: 1439px) {
  .p-style__fukidashi::after {
    top: 13px;
    background-image: url(../img/style-fukidashi_pc.png);
    width: 1130px;
    height: 98px;
  }
}
@media (min-width: 1440px) {
  .p-style__fukidashi::after {
    top: 9px;
    background-image: url(../img/style-fukidashi_pc.png);
    width: 1180px;
    height: 123px;
  }
}

.p-style__title {
  -webkit-margin-after: 29px;
          margin-block-end: 29px;
}
@media (min-width: 1000px) and (max-width: 1439px) {
  .p-style__title {
    -webkit-margin-after: 62px;
            margin-block-end: 62px;
  }
}
@media (min-width: 1440px) {
  .p-style__title {
    -webkit-margin-after: 62px;
            margin-block-end: 62px;
  }
}

.p-style__warp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 64.63px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-style__warp {
    row-gap: 133px;
  }
}
@media screen and (min-width: 1280px) {
  .p-style__warp {
    row-gap: 133px;
  }
}

.p-style__content-mv {
  -webkit-margin-after: 24px;
          margin-block-end: 24px;
}
@media (min-width: 1000px) and (max-width: 1439px) {
  .p-style__content-mv {
    -webkit-margin-after: 48px;
            margin-block-end: 48px;
  }
}
@media (min-width: 1440px) {
  .p-style__content-mv {
    -webkit-margin-after: 48px;
            margin-block-end: 48px;
  }
}

.p-style__content-body {
  padding: 0 15px 32px 16px;
  background: #FFF;
  -webkit-box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.16);
          box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.16);
  -webkit-margin-after: 78px;
          margin-block-end: 78px;
}
@media (min-width: 1000px) and (max-width: 1439px) {
  .p-style__content-body {
    padding: 64px 64px 64px 64px;
    width: 52.3728813559%;
  }
}
@media (min-width: 1440px) {
  .p-style__content-body {
    padding: 64px 64px 64px 64px;
    width: 52.3728813559%;
    -webkit-margin-after: 82px;
            margin-block-end: 82px;
  }
}

@media (min-width: 1000px) and (max-width: 1439px) {
  .p-style__content-body.--reverse {
    padding: 61px 34px 64px 64px;
    -webkit-margin-start: auto;
            margin-inline-start: auto;
    width: 49.8305084746%;
  }
}
@media (min-width: 1440px) {
  .p-style__content-body.--reverse {
    padding: 61px 34px 64px 64px;
    -webkit-margin-start: auto;
            margin-inline-start: auto;
    width: 49.8305084746%;
  }
}

.p-style__content-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
  row-gap: 8px;
  -webkit-margin-after: 36px;
          margin-block-end: 36px;
}
@media (min-width: 1000px) and (max-width: 1439px) {
  .p-style__content-title {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    display: block;
    padding: 4px 8px 4px 8px;
    background-color: #948260;
    white-space: nowrap;
  }
}
@media (min-width: 1440px) {
  .p-style__content-title {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    display: block;
    padding: 4px 8px 4px 8px;
    background-color: #948260;
    white-space: nowrap;
  }
}

.p-style__content-title-text {
  padding: 4px 8px 4px 8px;
  background-color: #948260;
  color: #FFF;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 24px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.96px;
}
@media screen and (max-width: 374.99px) {
  .p-style__content-title-text {
    font-size: 18px;
  }
}
@media (min-width: 875px) and (max-width: 999px) {
  .p-style__content-title-text {
    padding: 4px 8px 4px 8px;
    background-color: #948260;
    color: #FFF;
    font-family: "Noto Sans JP", sans-serif;
    font-size: 24px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    letter-spacing: 0.96px;
  }
}
@media (min-width: 1000px) and (max-width: 1439px) {
  .p-style__content-title-text {
    padding: 0px;
    background-color: transparent;
    font-size: 16px;
  }
}
@media (min-width: 1440px) {
  .p-style__content-title-text {
    padding: 0px;
    background-color: transparent;
  }
}

@media (min-width: 1000px) and (max-width: 1439px) {
  .p-style__content-title-text:nth-of-type(2) {
    -webkit-margin-start: -4px;
            margin-inline-start: -4px;
  }
}
@media (min-width: 1440px) {
  .p-style__content-title-text:nth-of-type(2) {
    -webkit-margin-start: -4px;
            margin-inline-start: -4px;
  }
}

.p-style__content-item-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 48px;
}
@media (min-width: 1000px) and (max-width: 1439px) {
  .p-style__content-item-box {
    -webkit-padding-end: 30px;
            padding-inline-end: 30px;
    row-gap: 50px;
  }
}
@media (min-width: 1440px) {
  .p-style__content-item-box {
    -webkit-padding-end: 30px;
            padding-inline-end: 30px;
    row-gap: 50px;
  }
}

.p-style__content-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 16px;
}

.p-style__content-item-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 24px;
     -moz-column-gap: 24px;
          column-gap: 24px;
}
.p-style__content-item-title::after {
  content: "";
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 1px;
  background-color: #565956;
}

.p-style__content-item-title-text {
  color: #565956;
  font-family: "Jost", sans-serif;
  font-size: 20px;
  font-style: normal;
  font-weight: 600;
  line-height: 150%;
  letter-spacing: 0.8px;
}

.p-style__content-item-text {
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.64px;
}

.p-style__content-item-image-box {
  width: 100%;
}
@media (min-width: 1000px) and (max-width: 1439px) {
  .p-style__content-item-image-box {
    display: none;
  }
}
@media (min-width: 1440px) {
  .p-style__content-item-image-box {
    display: none;
  }
}

.p-style__content-item-image {
  width: 100%;
  aspect-ratio: 311/176;
  height: auto;
}

.p-style__pc-box {
  position: relative;
}

.p-style__content-images {
  display: none;
}
@media (min-width: 1000px) and (max-width: 1439px) {
  .p-style__content-images {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    right: 0px;
    display: block;
    width: 51.7279661017%;
    aspect-ratio: 610.39/451;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 27.17px;
       -moz-column-gap: 27.17px;
            column-gap: 27.17px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media (min-width: 1440px) {
  .p-style__content-images {
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
    right: 0px;
    display: block;
    width: 51.7279661017%;
    aspect-ratio: 610.39/451;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-column-gap: 27.17px;
       -moz-column-gap: 27.17px;
            column-gap: 27.17px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

@media (min-width: 1000px) and (max-width: 1439px) {
  .p-style__content-images.--reverse {
    left: 0px;
    right: auto;
  }
}
@media (min-width: 1440px) {
  .p-style__content-images.--reverse {
    left: 0px;
    right: auto;
  }
}

@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-style__content-images-image-box:nth-of-type(1) {
    -webkit-margin-before: 80.17px;
            margin-block-start: 80.17px;
  }
}
@media screen and (min-width: 1280px) {
  .p-style__content-images-image-box:nth-of-type(1) {
    -webkit-margin-before: 80.17px;
            margin-block-start: 80.17px;
  }
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-style__content-images-image-box:nth-of-type(2) {
    -webkit-margin-before: -5px;
            margin-block-start: -5px;
  }
}
@media screen and (min-width: 1280px) {
  .p-style__content-images-image-box:nth-of-type(2) {
    -webkit-margin-before: -5px;
            margin-block-start: -5px;
  }
}

@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-style__content-images-image-box.--reverse:nth-of-type(1) {
    -webkit-margin-before: 78.17px;
            margin-block-start: 78.17px;
  }
}
@media screen and (min-width: 1280px) {
  .p-style__content-images-image-box.--reverse:nth-of-type(1) {
    -webkit-margin-before: 78.17px;
            margin-block-start: 78.17px;
  }
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-style__content-images-image-box.--reverse:nth-of-type(2) {
    -webkit-margin-before: -8px;
            margin-block-start: -8px;
  }
}
@media screen and (min-width: 1280px) {
  .p-style__content-images-image-box.--reverse:nth-of-type(2) {
    -webkit-margin-before: -8px;
            margin-block-start: -8px;
  }
}

@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-style__line-up {
    padding-inline: 90px;
  }
}
@media screen and (min-width: 1280px) {
  .p-style__line-up {
    padding-inline: 90px;
  }
}

.p-style__line-up-title {
  -webkit-margin-after: 24px;
          margin-block-end: 24px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-style__line-up-title {
    -webkit-margin-start: -8px;
            margin-inline-start: -8px;
    -webkit-margin-after: 23px;
            margin-block-end: 23px;
  }
}
@media screen and (min-width: 1280px) {
  .p-style__line-up-title {
    -webkit-margin-start: -8px;
            margin-inline-start: -8px;
    -webkit-margin-after: 23px;
            margin-block-end: 23px;
  }
}

.p-style__line-up-cards {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 49px;
  padding-inline: 21.5px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-style__line-up-cards {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    row-gap: 0px;
    -webkit-column-gap: 49px;
       -moz-column-gap: 49px;
            column-gap: 49px;
    padding-inline: 0px;
  }
}
@media screen and (min-width: 1280px) {
  .p-style__line-up-cards {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    row-gap: 0px;
    -webkit-column-gap: 49px;
       -moz-column-gap: 49px;
            column-gap: 49px;
    padding-inline: 0px;
  }
}

.p-features {
  background-image: url(../img/features_bg.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}

.p-features__inner {
  padding-block: 55px 54px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-features__inner {
    padding-block: 80px 80px;
  }
}
@media screen and (min-width: 1280px) {
  .p-features__inner {
    padding-block: 80px 80px;
  }
}

.p-features__title {
  -webkit-margin-after: 51px;
          margin-block-end: 51px;
}
@media screen and (min-width: 1280px) {
  .p-features__title {
    -webkit-margin-after: 55px;
            margin-block-end: 55px;
  }
}

.p-features__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 32px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-features__items {
    row-gap: 34px;
  }
}
@media screen and (min-width: 1280px) {
  .p-features__items {
    row-gap: 34px;
  }
}

@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-features__item:nth-of-type(2n) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}
@media screen and (min-width: 1280px) {
  .p-features__item:nth-of-type(2n) {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}

.p-how__inner {
  padding: 56px 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 32px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-how__inner {
    padding: 86px 20px;
    row-gap: 65px;
  }
}
@media screen and (min-width: 1280px) {
  .p-how__inner {
    padding: 86px 128px;
    row-gap: 65px;
  }
}

.p-how__items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 32px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-how__items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-column-gap: 36px;
       -moz-column-gap: 36px;
            column-gap: 36px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
  }
}
@media screen and (min-width: 1280px) {
  .p-how__items {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    -webkit-box-align: stretch;
        -ms-flex-align: stretch;
            align-items: stretch;
    -webkit-column-gap: 36px;
       -moz-column-gap: 36px;
            column-gap: 36px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.p-faq__inner {
  padding-block: 54px 56px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  row-gap: 32px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-faq__inner {
    padding-block: 88px 88px;
    row-gap: 64px;
  }
}
@media screen and (min-width: 1280px) {
  .p-faq__inner {
    padding-block: 88px 88px;
    row-gap: 64px;
  }
}

.p-faq__accordion-box {
  width: 100%;
  -webkit-margin-before: -24px;
          margin-block-start: -24px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-faq__accordion-box {
    display: grid;
    grid-template-columns: 1fr 1fr;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    -webkit-column-gap: 24px;
       -moz-column-gap: 24px;
            column-gap: 24px;
  }
}
@media screen and (min-width: 1280px) {
  .p-faq__accordion-box {
    display: grid;
    grid-template-columns: 1fr 1fr;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: start;
    -webkit-column-gap: 24px;
       -moz-column-gap: 24px;
            column-gap: 24px;
  }
}

.p-faq__accordion-item {
  border-bottom: 1px solid #565956;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-faq__accordion-item {
    padding-inline: 20px 22px;
  }
}
@media screen and (min-width: 1280px) {
  .p-faq__accordion-item {
    padding-inline: 20px 22px;
  }
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-faq__accordion-item:nth-of-type(2) {
    padding-inline: 22px 22px;
  }
}
@media screen and (min-width: 1280px) {
  .p-faq__accordion-item:nth-of-type(2) {
    padding-inline: 22px 22px;
  }
}
.p-faq__accordion-item:nth-of-type(3) .p-faq__accordion-question {
  padding-block: 33px 23px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-faq__accordion-item:nth-of-type(4) {
    padding-inline: 22px 22px;
  }
}
@media screen and (min-width: 1280px) {
  .p-faq__accordion-item:nth-of-type(4) {
    padding-inline: 22px 22px;
  }
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-faq__accordion-item:nth-of-type(4) .p-faq__accordion-question {
    padding-block: 33px 23px;
  }
}
@media screen and (min-width: 1280px) {
  .p-faq__accordion-item:nth-of-type(4) .p-faq__accordion-question {
    padding-block: 33px 23px;
  }
}
.p-faq__accordion-item:nth-of-type(5) .p-faq__accordion-question {
  padding-block: 33px 23px;
}

.p-faq__accordion-question {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 24px;
  -webkit-column-gap: 24px;
     -moz-column-gap: 24px;
          column-gap: 24px;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-block: 24px 23px;
}

.p-faq__accordion-question-text {
  position: relative;
  text-align: left;
  -webkit-padding-start: 38px;
          padding-inline-start: 38px;
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.64px;
}
.p-faq__accordion-question-text::before {
  position: absolute;
  content: "";
  left: 0px;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 14px;
  height: 22px;
  background-image: url(../img/accordion_q.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

.p-faq__accordion-question-icon {
  display: inline-block;
  width: 24px;
  height: 24px;
  background-image: url(../img/accordion_icon-plus.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}

.p-faq__accordion-answer {
  display: none;
  padding-block: 23px;
  padding-inline: 0px 22px;
}

.p-faq__accordion-answer-text {
  position: relative;
  -webkit-padding-start: 36px;
          padding-inline-start: 36px;
  color: #565956;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}
.p-faq__accordion-answer-text::before {
  position: absolute;
  left: 0px;
  top: 0px;
  content: "A";
  color: #948260;
  font-family: "Futura PT";
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: normal;
}

.p-faq__accordion-question.--is-open .p-faq__accordion-question-icon {
  background-image: url(../img/accordion_icon-mainasu.png);
}

.p-faq__button {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.p-footer__inner {
  padding-block: 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 72px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-footer__inner {
    padding-block: 56px 31px;
  }
}
@media screen and (min-width: 1280px) {
  .p-footer__inner {
    padding-block: 56px 31px;
  }
}

.p-footer__nav-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  row-gap: 49px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-footer__nav-box {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    row-gap: 0px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}
@media screen and (min-width: 1280px) {
  .p-footer__nav-box {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-direction: row;
            flex-direction: row;
    row-gap: 0px;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
}

.p-footer__sns-box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: start;
      -ms-flex-pack: start;
          justify-content: start;
  -webkit-column-gap: 20px;
     -moz-column-gap: 20px;
          column-gap: 20px;
}

.p-footer__sns-link {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}
.p-footer__sns-link:hover {
  opacity: 0.7;
}

.p-footer__sns-image-box {
  width: 32px;
}

.p-footer__sns-image {
  width: 100%;
  aspect-ratio: 32/32;
  height: auto;
}

.p-footer__text {
  color: #FFF;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 12px;
  font-style: normal;
  font-weight: 700;
  line-height: 150%;
  letter-spacing: 0.48px;
  -webkit-margin-after: 10px;
          margin-block-end: 10px;
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .p-footer__text {
    -webkit-margin-after: 10px;
            margin-block-end: 10px;
  }
}
@media screen and (min-width: 1280px) {
  .p-footer__text {
    -webkit-margin-after: 10px;
            margin-block-end: 10px;
  }
}

.p-footer__copy-small {
  color: #FFF;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 10px;
  font-style: normal;
  font-weight: 500;
  line-height: 150%;
  letter-spacing: 0.4px;
}

.p-footer__copy-text {
  display: inline-block;
  -webkit-padding-start: 2px;
          padding-inline-start: 2px;
}

.u-parts {
  margin-block: 50px;
}

@media screen and (min-width: 1280px) {
  .u-pc-none {
    display: none;
  }
}

@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .u-pc-none.--tb {
    display: none;
  }
}

@media screen and (max-width: 374.99px) {
  .u-pc-none.--solution {
    display: none;
  }
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .u-pc-none.--solution {
    display: none;
  }
}

@media screen and (max-width: 374.99px) {
  .u-pc-none.--features {
    display: none;
  }
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .u-pc-none.--features {
    display: none;
  }
}

@media screen and (max-width: 374.99px) {
  .u-pc-none.--voice {
    display: none;
  }
}
@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .u-pc-none.--voice {
    display: none;
  }
}
@media screen and (min-width: 1280px) {
  .u-pc-none.--voice {
    display: block;
  }
}

.u-sp-none {
  display: none;
}
@media screen and (min-width: 1280px) {
  .u-sp-none {
    display: block;
  }
}

@media screen and (min-width: 875px) and (max-width: 1279.99px) {
  .u-sp-none.--tb {
    display: none;
  }
}