@charset "UTF-8";
body * {
  font-family: "Zen Kaku Gothic New", "Noto Sans JP", "Poppins", sans-serif;
}

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

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

/* リキッドレイアウト対応 */
@font-face {
  font-family: "DIN";
  src: url("../../src/fonts/DIN_Alternate_Bold.ttf") format("truetype");
}
html {
  font-size: 16px;
}
@media screen and (min-width: 768px) {
  html {
    font-size: 2vw;
  }
}
@media (max-width: 375px) {
  html {
    font-size: 4.2666666667vw;
  }
}
@media (min-width: 800px) {
  html {
    font-size: 16px;
  }
}

body {
  font-family: "Zen Kaku Gothic New", "Noto Sans JP", "Poppins", sans-serif;
  line-height: 1.5;
  overflow-x: hidden;
  color: #222;
  background-color: #fff;
  -webkit-text-size-adjust: 100%;
}

/* pcの電話番号発信対応 */
@media screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

/* ホバー */
a {
  transition: opacity 0.3s;
  text-decoration: none;
  color: inherit;
}
@media screen and (min-width: 768px) {
  a:hover {
    opacity: 0.8;
  }
}

@media (hover: hover) {
  a:hover {
    cursor: pointer;
    opacity: 0.7;
  }
}
*:focus {
  outline: none;
}

strong {
  font-weight: 900;
}

b {
  font-weight: 700;
}

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

/* Remove default padding */
ul,
ol {
  padding: 0;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Set core root defaults */
html {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100vh;
  text-rendering: optimizeSpeed;
  line-height: 1.5;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul,
ol {
  list-style: none;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
  text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img {
  max-width: 100%;
  display: block;
  width: 100%;
}

/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Blur images when they have no alt attribute */
img:not([alt]) {
  -webkit-filter: blur(10px);
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feGaussianBlur stdDeviation="10" /></filter></svg>#filter');
  filter: blur(10px);
}

/* フォームリセット */
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

/* テキスト */
.p-faq__content_text {
  margin: 0;
  color: #707070;
  padding-block: min(3.2vw, 12px);
  padding-block: min(3.2vw, 0.75rem);
  font-size: min(3.2vw, 12px);
  font-size: min(3.2vw, 0.75rem);
  font-weight: 400;
  text-align: left;
  color: #222;
  line-height: 1.4166666667;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-faq__content_text {
    padding-block: min(1.8518518519vw, 1.25rem);
    font-size: min(1.4814814815vw, 1rem);
  }
}

* + .p-faq__content_text {
  margin: min(1.4814814815vw, 16px) 0 0 0;
  margin: min(1.4814814815vw, 1rem) 0 0 0;
}

/* アコーディオン ------------------------------*/
.p-faq__wrapper {
  position: relative;
  outline: 0;
  border-top: none;
}
@media screen and (min-width: 768px) {
  .p-faq__wrapper {
    width: 100%;
  }
}

.p-faq__item:not(:last-child) {
  border-bottom: none;
}

/* 見出し */
.p-faq__content_q {
  background: #0e967e;
  font-size: min(6.4vw, 24px);
  font-size: min(6.4vw, 1.5rem);
  font-weight: 600;
  text-align: left;
  color: #fff;
  line-height: 1.8333333333;
  letter-spacing: 0em;
}
@media screen and (max-width: 769px) {
  .p-faq__content_q {
    padding-block: min(0vw, 0rem);
    padding-inline: min(3.8666666667vw, 0.90625rem);
  }
}
@media screen and (min-width: 768px) {
  .p-faq__content_q {
    line-height: 1.8333333333;
    letter-spacing: 0em;
    padding-block: min(0.1851851852vw, 0.125rem);
    padding-inline: min(1.3425925926vw, 0.90625rem);
    font-size: min(2.2222222222vw, 1.5rem);
  }
}

.p-faq__title {
  position: relative;
  gap: min(3.2vw, 12px);
  gap: min(3.2vw, 0.75rem);
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 600;
  text-align: left;
  color: #fff;
  line-height: 1.4375;
  letter-spacing: 0em;
  transition: 0.2s ease-in-out;
  background: #0e967e;
  cursor: pointer;
  justify-content: flex-start;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .p-faq__title {
    gap: min(1.1111111111vw, 0.75rem);
    font-size: min(1.4814814815vw, 1rem);
  }
}

.p-faq__title span {
  position: relative;
  display: inline-block;
}

.p-faq__title span::before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: max(-1.1111111111vw, -12px);
  left: max(-1.1111111111vw, -0.75rem);
  display: block;
  border-left: 1px solid #fff;
}
@media screen and (max-width: 769px) {
  .p-faq__title span::before {
    left: max(-3.2vw, -0.75rem);
  }
}

@media screen and (max-width: 769px) {
  .p-faq__title.c-flex > span {
    max-width: 70%;
    display: inline-block;
    padding-block: min(3.2vw, 0.75rem);
  }
}

.p-faq__title:hover {
  opacity: 0.7;
}

/* アイコン */
.p-faq__icon span {
  position: absolute;
  content: "";
  top: min(1.0666666667vw, 4px);
  top: min(1.0666666667vw, 0.25rem);
  bottom: 0;
  right: min(2.9333333333vw, 11px);
  right: min(2.9333333333vw, 0.6875rem);
  height: 2px;
  width: min(3.7333333333vw, 14px);
  width: min(3.7333333333vw, 0.875rem);
  margin: auto;
  transition: 0.2s ease-in-out;
  background: #fff;
}
@media screen and (min-width: 768px) {
  .p-faq__icon span {
    top: 0;
    right: min(1.5740740741vw, 1.0625rem);
    height: 2px;
    width: min(1.2962962963vw, 0.875rem);
  }
}

.p-faq__icon span:nth-child(2) {
  transform: rotate(-90deg);
}

.p-faq__title.active .p-faq__icon span:nth-child(1) {
  transform: rotate(180deg);
}

.p-faq__title.active .p-faq__icon span:nth-child(2) {
  transform: rotate(90deg);
}

/* コンテンツ */
.p-faq__content {
  background: #fff;
  margin-top: 0;
  padding-inline: min(3.2vw, 12px);
  padding-inline: min(3.2vw, 0.75rem);
  display: none;
}
@media screen and (min-width: 768px) {
  .p-faq__content {
    padding-inline: min(1.8518518519vw, 1.25rem);
  }
}

.inner {
  width: 100%;
  max-width: 480px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 20px;
  padding-left: 20px;
  padding-block: min(9.2592592593vw, 100px);
  padding-block: min(9.2592592593vw, 6.25rem);
}
@media screen and (min-width: 768px) {
  .inner {
    max-width: 977.4px;
    padding-right: min(16.6666666667vw, 88.7px);
    padding-left: min(16.6666666667vw, 88.7px);
  }
}
@media screen and (max-width: 769px) {
  .inner {
    padding-block: min(10.6666666667vw, 2.5rem);
  }
}

header .p-inner {
  padding-right: 90px;
  padding-right: 5.625rem;
}
@media screen and (max-width: 769px) {
  header .p-inner {
    padding: 0rem;
  }
}

/* ヘッダー */
button {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  transition: all 4s ease;
}

.c-button {
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: #222;
  min-width: 120px;
  padding: 16px 0;
  padding: 1rem 0;
  border-radius: 5px;
  text-align: center;
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 900;
  text-align: center;
  color: #222;
  line-height: 1.18;
  letter-spacing: 0.05em;
  transition: 0.2s;
  /* 0.2秒アニメーション */
}
@media screen and (min-width: 768px) {
  .c-button {
    font-size: 1rem;
  }
}

.c-button:hover {
  -webkit-filter: brightness(1.2);
  filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="1.2" /><feFuncG type="linear" slope="1.2" /><feFuncB type="linear" slope="1.2" /></feComponentTransfer></filter></svg>#filter');
  filter: brightness(1.2);
  transition: 0.2s;
  /* 0.2秒アニメーション */
  -webkit-transition: 0.2s;
  opacity: 1;
}

.c-button--orange {
  background: #0e967e;
  color: #fff;
}

.c-button--trans {
  background: transparent;
  border: 1px solid #222;
}

.c-button--trans:hover {
  background: #0e967e;
  color: #fff;
  border: none !important;
}

.c-button--none {
  color: #fff;
  padding: 0;
}

.c-button--long {
  max-width: 330px;
  max-width: 20.625rem;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .c-button--long {
    max-width: 31.25rem;
  }
}

.c-button svg {
  display: inline-block;
  vertical-align: middle;
  width: 24px;
  height: 24px;
  fill: #fff;
}

.c-button span {
  display: none;
}

@media (min-width: 600px) {
  .c-button span {
    display: inline;
    display: initial;
  }
}
.c-button--icon {
  min-width: 0;
  min-width: initial;
  padding: 8px;
  padding: 0.5rem;
}

.c-grid {
  display: grid;
}

.c-flex {
  display: flex;
}

/*ボタン外側※レイアウトによってpositionや形状は適宜変更してください*/
.c-hamburger {
  position: absolute;
  /*ボタン内側の基点となるためrelativeを指定*/
  z-index: 999;
  top: 26px;
  top: 1.625rem;
  right: 20px;
  right: 1.25rem;
  width: 48px;
  width: 3rem;
  height: 50px;
  cursor: pointer;
  transition: 0.5s;
}

/*ボタン内側*/
.c-hamburger span {
  position: absolute;
  left: 50%;
  display: inline-block;
  height: 2px;
  transition: all 0.4s;
  /*アニメーションの設定*/
  transform: translateX(-50%);
  border-radius: 0.5px;
  background: #222;
}

.c-decoration {
  /* gradation */
  background: linear-gradient(226.6deg, #1e365b 16.22%, #f8e8d5 84.13%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  text-fill-color: transparent;
}

.c-decoration2 {
  /* gradation */
  background: linear-gradient(226.6deg, #1e365b 16.22%, #f8e8d5 84.13%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  text-fill-color: transparent;
}

.c-big {
  font-size: min(10.6666666667vw, 40px);
  font-size: min(10.6666666667vw, 2.5rem);
  font-weight: 600;
  text-align: left;
  color: #222;
  line-height: 1.45;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .c-big {
    line-height: 1.4411764706;
    letter-spacing: 0em;
    font-size: min(6.2962962963vw, 4.25rem);
  }
}

.c-green {
  color: #2aa57f;
}

@media screen and (min-width: 768px) {
  .utils-hidden-mobile {
    display: inline-block !important;
  }
}
@media screen and (max-width: 769px) {
  .utils-hidden-mobile {
    display: none !important;
  }
}

@media screen and (min-width: 768px) {
  .utils-block-hidden-mobile {
    display: block !important;
  }
}
@media screen and (max-width: 769px) {
  .utils-block-hidden-mobile {
    display: none !important;
  }
}

@media screen and (min-width: 768px) {
  .utils-hidden-pc {
    display: none !important;
  }
}
@media screen and (max-width: 769px) {
  .utils-hidden-pc {
    display: inline-block !important;
  }
}

@media screen and (min-width: 768px) {
  .utils-block-hidden-pc {
    display: inline !important;
  }
}
@media screen and (max-width: 769px) {
  .utils-block-hidden-pc {
    display: none !important;
  }
}

.utils-hidden {
  display: none !important;
}

@media screen and (min-width: 768px) {
  .utils-color-invert {
    -webkit-filter: brightness(0) invert(1);
    filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="1" /><feFuncG type="linear" slope="1" /><feFuncB type="linear" slope="1" /></feComponentTransfer><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="table" tableValues="1 0" /><feFuncG type="table" tableValues="1 0" /><feFuncB type="table" tableValues="1 0" /></feComponentTransfer></filter></svg>#filter');
    filter: brightness(0) invert(1);
  }
}

@media screen and (max-width: 769px) {
  .utils-color-invert-sp {
    -webkit-filter: brightness(0) invert(1);
    filter: url('data:image/svg+xml;charset=utf-8,<svg xmlns="http://www.w3.org/2000/svg"><filter id="filter"><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="linear" slope="1" /><feFuncG type="linear" slope="1" /><feFuncB type="linear" slope="1" /></feComponentTransfer><feComponentTransfer color-interpolation-filters="sRGB"><feFuncR type="table" tableValues="1 0" /><feFuncG type="table" tableValues="1 0" /><feFuncB type="table" tableValues="1 0" /></feComponentTransfer></filter></svg>#filter');
    filter: brightness(0) invert(1);
  }
}

.utils-bg-gray {
  background-color: #4d4d4d;
}

.utils-visible {
  visibility: visible !important;
  opacity: 1 !important;
}

.p-about {
  background: #c6e6c9;
  position: relative;
  z-index: 2;
}

.p-about__point,
.p-about__point2 {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 3;
}

.p-about__point::before,
.p-about__point::after,
.p-about__point2::before,
.p-about__point2::after {
  content: "";
  position: absolute;
  width: min(2.1333333333vw, 8px);
  width: min(2.1333333333vw, 0.5rem);
  aspect-ratio: 1/1;
  border-radius: 50%;
  background: #0e967e;
  display: block;
}
@media screen and (min-width: 768px) {
  .p-about__point::before,
.p-about__point::after,
.p-about__point2::before,
.p-about__point2::after {
    width: min(1.4814814815vw, 1rem);
  }
}

.p-about__point::before {
  top: min(2.6666666667vw, 10px);
  top: min(2.6666666667vw, 0.625rem);
  left: min(2.6666666667vw, 10px);
  left: min(2.6666666667vw, 0.625rem);
}
@media screen and (min-width: 768px) {
  .p-about__point::before {
    top: min(1.8518518519vw, 1.25rem);
    left: min(1.8518518519vw, 1.25rem);
  }
}

.p-about__point::after {
  top: min(2.6666666667vw, 10px);
  top: min(2.6666666667vw, 0.625rem);
  right: min(2.6666666667vw, 10px);
  right: min(2.6666666667vw, 0.625rem);
}
@media screen and (min-width: 768px) {
  .p-about__point::after {
    top: min(1.8518518519vw, 1.25rem);
    right: min(1.8518518519vw, 1.25rem);
  }
}

.p-about__point2::before {
  bottom: min(2.6666666667vw, 10px);
  bottom: min(2.6666666667vw, 0.625rem);
  left: min(2.6666666667vw, 10px);
  left: min(2.6666666667vw, 0.625rem);
}
@media screen and (min-width: 768px) {
  .p-about__point2::before {
    bottom: min(1.8518518519vw, 1.25rem);
    left: min(1.8518518519vw, 1.25rem);
  }
}

.p-about__point2::after {
  bottom: min(2.6666666667vw, 10px);
  bottom: min(2.6666666667vw, 0.625rem);
  right: min(2.6666666667vw, 10px);
  right: min(2.6666666667vw, 0.625rem);
}
@media screen and (min-width: 768px) {
  .p-about__point2::after {
    bottom: min(1.8518518519vw, 1.25rem);
    right: min(1.8518518519vw, 1.25rem);
  }
}

.p-about__wrapper {
  padding-block: min(10.6666666667vw, 40px);
  padding-block: min(10.6666666667vw, 2.5rem);
}
@media screen and (min-width: 768px) {
  .p-about__wrapper {
    padding-block: min(9.2592592593vw, 6.25rem);
  }
}

.p-about__box {
  position: relative;
  z-index: 5;
  background: #fff;
  padding-bottom: min(10.6666666667vw, 40px);
  padding-bottom: min(10.6666666667vw, 2.5rem);
  margin-inline: min(5.3333333333vw, 20px);
  margin-inline: min(5.3333333333vw, 1.25rem);
  border-radius: 0.75rem;
}
@media screen and (min-width: 768px) {
  .p-about__box {
    padding-bottom: min(4.6296296296vw, 3.125rem);
    max-width: min(83.3333333333vw, 56.25rem);
    margin-inline: auto;
  }
}
@media (max-width: 768px) and (min-width: 376px) {
  .p-about__box {
    max-width: min(133.3333333333vw, 31.25rem);
    margin-inline: auto;
  }
}

.p-about__img {
  margin-inline: auto;
  max-width: min(66.4vw, 249px);
  max-width: min(66.4vw, 15.5625rem);
  width: 100%;
  margin-bottom: min(6.1333333333vw, 23px);
  margin-bottom: min(6.1333333333vw, 1.4375rem);
}
@media screen and (min-width: 768px) {
  .p-about__img {
    max-width: min(39.8148148148vw, 26.875rem);
    width: 100%;
    margin-bottom: min(2.962962963vw, 2rem);
  }
}

.p-about__img img {
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
  width: 100%;
  margin-inline: auto;
  max-width: min(66.4vw, 249px);
  max-width: min(66.4vw, 15.5625rem);
  aspect-ratio: 249/156;
}
@media screen and (min-width: 768px) {
  .p-about__img img {
    max-width: min(39.8148148148vw, 26.875rem);
    aspect-ratio: 430/270;
    transform: translateX(max(-0.9259259259vw, -0.625rem));
  }
}
@media screen and (max-width: 769px) {
  .p-about__img img {
    transform: translateX(max(-1.6vw, -0.375rem));
  }
}

.p-about__ttl {
  justify-content: center;
  align-items: center;
  max-width: min(73.3333333333vw, 275px);
  max-width: min(73.3333333333vw, 17.1875rem);
  margin-inline: auto;
  padding-top: min(1.8666666667vw, 7px);
  padding-top: min(1.8666666667vw, 0.4375rem);
  padding-bottom: min(1.6vw, 6px);
  padding-bottom: min(1.6vw, 0.375rem);
  font-size: min(3.7333333333vw, 14px);
  font-size: min(3.7333333333vw, 0.875rem);
  font-weight: 600;
  text-align: left;
  color: #0e967e;
  line-height: 2;
  letter-spacing: 0em;
  border-block: 1px solid #0e967e;
  margin-bottom: min(6.4vw, 24px);
  margin-bottom: min(6.4vw, 1.5rem);
}
@media screen and (min-width: 768px) {
  .p-about__ttl {
    padding-bottom: min(0.1851851852vw, 0.125rem);
    padding-top: min(0.5555555556vw, 0.375rem);
    max-width: min(25.462962963vw, 17.1875rem);
    font-size: min(1.4814814815vw, 1rem);
    margin-bottom: min(1.4814814815vw, 1rem);
  }
}

@media screen and (max-width: 769px) {
  .p-about__ttl span {
    transform: translate(2px, 4px);
    letter-spacing: 0.1em;
  }
}
@media screen and (min-width: 768px) {
  .p-about__ttl span {
    transform: translateY(2px);
  }
}

.p-about__ttl img {
  aspect-ratio: 160/22.67;
  width: 100%;
  max-width: min(42.6666666667vw, 160px);
  max-width: min(42.6666666667vw, 10rem);
  height: auto;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
  margin-right: min(1.3333333333vw, 5px);
  margin-right: min(1.3333333333vw, 0.3125rem);
}
@media screen and (min-width: 768px) {
  .p-about__ttl img {
    margin-right: min(0.462962963vw, 0.3125rem);
    aspect-ratio: 160/22.67;
    width: 100%;
    max-width: min(14.8148148148vw, 10rem);
  }
}

.p-about__desc {
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 400;
  text-align: center;
  color: #222;
  line-height: 2;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-about__desc {
    font-size: min(1.4814814815vw, 1rem);
  }
}

.p-buy {
  background: linear-gradient(180deg, rgba(173, 233, 129, .3) 0%, rgba(1, 144, 126, .3) 100%);
  position: relative;
  z-index: 2;
}

.p-buy__wrapper {
  padding-top: min(10.6666666667vw, 40px);
  padding-top: min(10.6666666667vw, 2.5rem);
  padding-bottom: min(10.6666666667vw, 40px);
  padding-bottom: min(10.6666666667vw, 2.5rem);
}
@media screen and (min-width: 768px) {
  .p-buy__wrapper {
    padding-top: min(9.2592592593vw, 6.25rem);
    padding-bottom: min(9.2592592593vw, 6.25rem);
  }
}

.p-buy__title_box {
  text-align: center;
  margin-bottom: min(8vw, 30px);
  margin-bottom: min(8vw, 1.875rem);
}
@media screen and (min-width: 768px) {
  .p-buy__title_box {
    margin-bottom: min(4.7222222222vw, 3.1875rem);
  }
}

.p-buy__subtitle {
  display: inline-block;
  margin-inline: auto;
  font-size: min(8.5333333333vw, 32px);
  font-size: min(8.5333333333vw, 2rem);
  font-weight: 600;
  text-align: center;
  color: #0e967e;
  line-height: 1.4375;
  letter-spacing: 0em;
  margin-bottom: min(6.4vw, 24px);
  margin-bottom: min(6.4vw, 1.5rem);
  padding: min(2.6666666667vw, 10px);
  padding: min(2.6666666667vw, 0.625rem);
  background: #fff;
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width: 768px) {
  .p-buy__subtitle {
    line-height: 1.45;
    letter-spacing: 0em;
    font-size: min(3.7037037037vw, 2.5rem);
    margin-bottom: min(3.1481481481vw, 2.125rem);
    padding: min(0.9259259259vw, 0.625rem);
  }
}

.p-buy__titles {
  flex-direction: column;
  margin-bottom: min(6.4vw, 24px);
  margin-bottom: min(6.4vw, 1.5rem);
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-buy__titles {
    margin-bottom: min(3.7342592593vw, 2.520625rem);
  }
}
@media screen and (max-width: 769px) {
  .p-buy__titles {
    gap: min(2.1333333333vw, 0.5rem);
  }
}

.p-buy__title {
  width: 100%;
  font-size: min(5.3333333333vw, 20px);
  font-size: min(5.3333333333vw, 1.25rem);
  font-weight: 600;
  text-align: center;
  color: #0e967e;
  line-height: 1.6;
  letter-spacing: 0em;
  display: inline-block;
  margin-bottom: min(3.2vw, 12px);
  margin-bottom: min(3.2vw, 0.75rem);
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-buy__title {
    line-height: 1.1428571429;
    letter-spacing: 0em;
    font-size: min(2.5925925926vw, 1.75rem);
    margin-bottom: min(1.6666666667vw, 1.125rem);
  }
}

.p-buy__desc {
  font-size: min(3.7333333333vw, 14px);
  font-size: min(3.7333333333vw, 0.875rem);
  font-weight: 400;
  text-align: center;
  color: #222;
  line-height: 1.2142857143;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-buy__desc {
    line-height: 1.1875;
    letter-spacing: 0em;
    font-size: min(1.4814814815vw, 1rem);
  }
}

@media screen and (max-width: 769px) {
  .p-buy__title + .p-buy__title {
    width: 100%;
    margin-top: min(0.7407407407vw, 0.5rem);
  }
}

.p-buy__cont_boxes {
  margin-bottom: min(6.4vw, 24px);
  margin-bottom: min(6.4vw, 1.5rem);
}
@media screen and (min-width: 768px) {
  .p-buy__cont_boxes {
    max-width: min(101.8518518519vw, 68.75rem);
    margin-inline: auto;
    margin-bottom: min(2.8703703704vw, 1.9375rem);
  }
}
@media screen and (max-width: 769px) {
  .p-buy__cont_boxes {
    max-width: calc(100% - 2.5rem) !important;
    margin-inline: auto;
  }
}
@media (max-width: 768px) and (min-width: 376px) {
  .p-buy__cont_boxes {
    max-width: min(106.6666666667vw, 25rem) !important;
    margin-inline: auto;
  }
}

.p-buy__cont__attention {
  font-family: "Intel One Mono", monospace, "DIN", sans-serif;
  font-size: min(2.1333333333vw, 8px);
  font-size: min(2.1333333333vw, 0.5rem);
  font-weight: 400;
  text-align: center;
  color: #222;
  line-height: 1.25;
  letter-spacing: 0em;
  margin-top: min(13.8666666667vw, 52px);
  margin-top: min(13.8666666667vw, 3.25rem);
}
@media screen and (min-width: 768px) {
  .p-buy__cont__attention {
    max-width: min(101.8518518519vw, 68.75rem);
    margin-inline: auto;
    line-height: 1.2;
    letter-spacing: 0em;
    text-align: right;
    font-size: min(0.9259259259vw, 0.625rem);
    margin-top: min(5.8333333333vw, 3.9375rem);
  }
}

.p-buy__cont_box {
  border-radius: 0.75rem;
  background-color: #0e967e;
  padding-inline: min(5.3333333333vw, 20px);
  padding-inline: min(5.3333333333vw, 1.25rem);
  padding-block: min(5.3333333333vw, 20px);
  padding-block: min(5.3333333333vw, 1.25rem);
}
@media screen and (min-width: 768px) {
  .p-buy__cont_box {
    padding-inline: min(1.8518518519vw, 1.25rem);
    padding-block: min(1.8518518519vw, 1.25rem);
  }
}

.p-buy__cont_img {
  max-width: min(78.6666666667vw, 295px);
  max-width: min(78.6666666667vw, 18.4375rem);
  width: 100%;
  margin-bottom: min(3.2vw, 12px);
  margin-bottom: min(3.2vw, 0.75rem);
  margin-inline: auto;
}
@media screen and (min-width: 768px) {
  .p-buy__cont_img {
    margin-bottom: min(1.1111111111vw, 0.75rem);
    max-width: min(27.3148148148vw, 18.4375rem);
  }
}

.p-buy__cont_img img {
  max-width: min(78.6666666667vw, 295px);
  max-width: min(78.6666666667vw, 18.4375rem);
  width: 100%;
  aspect-ratio: 295/200;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
}
@media screen and (min-width: 768px) {
  .p-buy__cont_img img {
    max-width: min(27.3148148148vw, 18.4375rem);
  }
}

.p-buy__cont_midashi {
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 600;
  text-align: left;
  color: #fff;
  line-height: 2;
  letter-spacing: 0em;
  padding-bottom: min(1.3333333333vw, 5px);
  padding-bottom: min(1.3333333333vw, 0.3125rem);
  border-bottom: 2px solid #fff;
  margin-bottom: min(3.2vw, 12px);
  margin-bottom: min(3.2vw, 0.75rem);
}
@media screen and (min-width: 768px) {
  .p-buy__cont_midashi {
    padding-bottom: min(0.6481481481vw, 0.4375rem);
    font-size: min(1.4814814815vw, 1rem);
    margin-bottom: min(1.1111111111vw, 0.75rem);
  }
}

.p-buy__cont_information {
  margin-bottom: min(2.9333333333vw, 11px);
  margin-bottom: min(2.9333333333vw, 0.6875rem);
  align-items: center;
}
@media screen and (min-width: 768px) {
  .p-buy__cont_information {
    margin-bottom: min(1.1111111111vw, 0.75rem);
  }
}

.p-buy__cont_information .p-buy__cont_info--year {
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 600;
  text-align: left;
  color: #0e967e;
  line-height: 2;
  letter-spacing: 0em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background: #fff;
  margin-right: min(3.2vw, 12px);
  margin-right: min(3.2vw, 0.75rem);
  padding-inline: min(2.1333333333vw, 8px);
  padding-inline: min(2.1333333333vw, 0.5rem);
}
@media screen and (min-width: 768px) {
  .p-buy__cont_information .p-buy__cont_info--year {
    font-size: min(1.4814814815vw, 1rem);
    margin-right: min(1.1111111111vw, 0.75rem);
    padding-inline: min(0.7407407407vw, 0.5rem);
  }
}

.p-buy__cont_info--price {
  font-size: min(6.4vw, 24px);
  font-size: min(6.4vw, 1.5rem);
  font-weight: 600;
  text-align: left;
  color: #f8fea1;
  line-height: 1.1666666667;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-buy__cont_info--price {
    font-size: min(2.2222222222vw, 1.5rem);
  }
}
@media screen and (max-width: 769px) {
  .p-buy__cont_info--price {
    transform: translateY(-2px);
  }
}

.p-buy__cont_box .p-buy__cont_lists {
  list-style: DISC;
  margin-left: 1.55em;
}

.p-buy__cont_lists .p-buy__cont_list {
  font-size: min(3.7333333333vw, 14px);
  font-size: min(3.7333333333vw, 0.875rem);
  font-weight: 600;
  text-align: left;
  color: #fff;
  line-height: 2;
  letter-spacing: 0em;
  text-indent: -0.3em;
}
@media screen and (min-width: 768px) {
  .p-buy__cont_lists .p-buy__cont_list {
    font-size: min(1.2962962963vw, 0.875rem);
  }
}

.p-buy__cont_list::marker {
  transform: translateX(3px);
}

@media screen and (min-width: 768px) {
  .p-buy__wrapper .slick-slider .slick-track {
    gap: min(2.5925925926vw, 1.75rem);
  }
}

.p-buy__wrapper .slick-dots {
  bottom: max(-8.8vw, -33px);
  bottom: max(-8.8vw, -2.0625rem);
}
@media screen and (min-width: 768px) {
  .p-buy__wrapper .slick-dots {
    bottom: max(-3.4259259259vw, -2.3125rem);
  }
}

@media screen and (min-width: 1040px) {
  .p-buy__cont_boxes .slick-list {
    transform: translateX(min(1.8518518519vw, 1.25rem));
  }
}

.p-cta {
  position: fixed;
  bottom: 0;
  width: 100%;
  z-index: 100;
  left: 0;
}

.p-cta__wrapper {
  padding-block: min(3.7333333333vw, 14px);
  padding-block: min(3.7333333333vw, 0.875rem);
  background: #fff;
}
@media screen and (min-width: 768px) {
  .p-cta__wrapper {
    padding-block: min(1.8518518519vw, 1.25rem);
  }
}

.p-cta__img {
  width: 100%;
  margin-inline: auto;
  justify-content: center;
  gap: min(1.866666vw, 7px);
  gap: min(1.866666vw, 0.436rem);
  background-color: #00b900;
  padding: min(3.2vw, 12px) min(5.3333333333vw, 20px);
  padding: min(3.2vw, 0.75rem) min(5.3333333333vw, 1.25rem);
  width: 100%;
  border-radius: 3px;
  box-shadow: 0px 4px 0px 0px #036803, inset 0px -4px 6px -2px rgba(0, 0, 0, .4);
  border-radius: min(4.2666666667vw, 1rem);
  transition: 0.3s;
  align-items: center;
  max-width: min(89.3333333333vw, 335px);
  max-width: min(89.3333333333vw, 20.9375rem);
}
@media screen and (min-width: 768px) {
  .p-cta__img {
    border-radius: min(1.4814814815vw, 1rem);
    padding: min(1.1111111111vw, 0.75rem) min(1.8518518519vw, 1.25rem);
    gap: min(1.1111111111vw, 0.75rem);
    max-width: min(58.3333333333vw, 39.375rem);
  }
}

.p-cta__img:hover {
  transition: 0.3s;
  box-shadow: none;
  box-shadow: initial;
  transform: translateY(4px);
  opacity: .85;
}

.p-cta__img img {
  max-width: min(9.6vw, 36px);
  max-width: min(9.6vw, 2.25rem);
  width: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
}
@media screen and (min-width: 768px) {
  .p-cta__img img {
    max-width: min(7.4074074074vw, 5rem);
  }
}

.p-cta__img span {
  font-size: min(4.444444167vw, 1.041rem);
  font-weight: 700;
  text-align: center;
  color: #fff;
  line-height: 1.45;
  letter-spacing: 0em;
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .p-cta__img span {
    line-height: 1.4523809524;
    letter-spacing: 0em;
    font-size: min(3.24073333vw, 2.01923rem);
  }
}

.p-faq {
  background: #ade981;
  background: linear-gradient(180deg, rgba(173, 233, 129, .3) 0%, rgba(1, 144, 126, .3) 100%);
}

.p-faq__wrapper {
  padding-block: min(10.6666666667vw, 40px);
  padding-block: min(10.6666666667vw, 2.5rem);
  margin-inline: min(5.3333333333vw, 20px);
  margin-inline: min(5.3333333333vw, 1.25rem);
}
@media screen and (min-width: 768px) {
  .p-faq__wrapper {
    margin-inline: auto;
    max-width: min(74.0740740741vw, 50rem);
    padding-block: min(9.2592592593vw, 6.25rem);
  }
}

.p-faq__items {
  display: flex;
  flex-direction: column;
  gap: min(6.4vw, 24px);
  gap: min(6.4vw, 1.5rem);
}
@media screen and (min-width: 768px) {
  .p-faq__items {
    gap: min(2.2222222222vw, 1.5rem);
  }
}
@media (max-width: 768px) and (min-width: 376px) {
  .p-faq__items {
    max-width: min(133.3333333333vw, 31.25rem);
    margin-inline: auto;
  }
}

.p-faq__item {
  position: relative;
}

.p-faq__titles {
  text-align: center;
}

.p-faq__titles_txt {
  background: #fff;
  font-size: min(8.5333333333vw, 32px);
  font-size: min(8.5333333333vw, 2rem);
  font-weight: 600;
  text-align: center;
  color: #0e967e;
  line-height: 1.4375;
  letter-spacing: 0em;
  padding: min(2.6666666667vw, 10px);
  padding: min(2.6666666667vw, 0.625rem);
  margin-inline: auto;
  display: inline-block;
  margin-bottom: min(10.6666666667vw, 40px);
  margin-bottom: min(10.6666666667vw, 2.5rem);
}
@media screen and (min-width: 768px) {
  .p-faq__titles_txt {
    line-height: 1.45;
    letter-spacing: 0em;
    font-size: min(3.7037037037vw, 2.5rem);
    margin-bottom: min(3.7037037037vw, 2.5rem);
    padding: min(0.9259259259vw, 0.625rem);
  }
}

.p-flow {
  background: #00b900;
}

@media screen and (max-width: 769px) {
  .p-flow__wrapper {
    padding-top: min(13.8666666667vw, 3.25rem);
    padding-bottom: min(10.6666666667vw, 2.5rem);
  }
}

.p-flow__titles {
  margin-bottom: min(6.4vw, 24px);
  margin-bottom: min(6.4vw, 1.5rem);
}
@media screen and (min-width: 768px) {
  .p-flow__titles {
    margin-bottom: min(6.4vw, 1.5rem);
  }
}

.p-flow__titles .p-flow__title {
  font-size: min(7.4666666667vw, 28px);
  font-size: min(7.4666666667vw, 1.75rem);
  font-weight: 600;
  text-align: center;
  color: #fff;
  line-height: 1.2857142857;
  letter-spacing: 0em;
  padding-top: min(8vw, 30px);
  padding-top: min(8vw, 1.875rem);
  padding-bottom: min(5.0666666667vw, 19px);
  padding-bottom: min(5.0666666667vw, 1.1875rem);
  border-block: 1px solid #fff;
}
@media screen and (min-width: 768px) {
  .p-flow__titles .p-flow__title {
    font-size: min(4.4444444444vw, 3rem);
    line-height: 1.3333333333;
    letter-spacing: 0em;
    padding-top: min(2.5925925926vw, 1.75rem);
    padding-bottom: min(2.4074074074vw, 1.625rem);
  }
}

.p-flow__titles .p-flow__subtitle {
  font-size: min(3.7333333333vw, 14px);
  font-size: min(3.7333333333vw, 0.875rem);
  font-weight: 600;
  text-align: center;
  color: #00b900;
  line-height: 1;
  letter-spacing: 0em;
  background: #fff;
  padding: min(1.0666666667vw, 4px);
  padding: min(1.0666666667vw, 0.25rem);
  display: inline-block;
  margin-inline: auto;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: max(-2.9333333333vw, -11px);
  top: max(-2.9333333333vw, -0.6875rem);
  text-transform: uppercase;
}
@media screen and (min-width: 768px) {
  .p-flow__titles .p-flow__subtitle {
    line-height: 1.2857142857;
    letter-spacing: 0em;
    font-size: min(1.6666666667vw, 1.125rem);
    padding: min(0.462962963vw, 0.3125rem) min(0.7407407407vw, 0.5rem);
    top: max(-0.462962963vw, -0.3125rem);
  }
}

.p-flow__title_desc {
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 500;
  text-align: left;
  color: #fff;
  line-height: 2;
  letter-spacing: 0em;
  margin-bottom: min(6.4vw, 24px);
  margin-bottom: min(6.4vw, 1.5rem);
}
@media screen and (min-width: 768px) {
  .p-flow__title_desc {
    font-size: min(1.4814814815vw, 1rem);
    margin-bottom: min(3.7037037037vw, 2.5rem);
    text-align: center;
  }
}

.p-flow__title_box {
  border-radius: 0.75rem;
  position: relative;
  gap: min(1.9444444444vw, 21px);
  gap: min(1.9444444444vw, 1.3125rem);
}
@media screen and (max-width: 769px) {
  .p-flow__title_box {
    padding-bottom: min(6.4vw, 1.5rem);
    flex-direction: column;
  }
}
@media screen and (min-width: 768px) {
  .p-flow__title_box {
    padding: min(0.9259259259vw, 0.625rem) min(1.8518518519vw, 1.25rem);
    text-align: center;
  }
}

@media screen and (min-width: 768px) {
  .p-flow__wrapper > .p-flow__title_box {
    padding-top: min(0.9259259259vw, 0.625rem);
    padding-bottom: min(3.7037037037vw, 2.5rem);
  }
}

.p-flow__title_boxes {
  gap: min(6.4vw, 24px);
  gap: min(6.4vw, 1.5rem);
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .p-flow__title_boxes {
    gap: min(2.2222222222vw, 1.5rem);
  }
}

.p-flow__title_boxes .p-flow__title_box {
  background: #fff;
  width: 100%;
  align-items: center;
}
@media screen and (max-width: 769px) {
  .p-flow__title_boxes .p-flow__title_box {
    padding: min(5.3333333333vw, 1.25rem);
    gap: min(3.2vw, 0.75rem);
  }
}

.p-flow__title_box_ttl {
  font-size: min(5.3333333333vw, 20px);
  font-size: min(5.3333333333vw, 1.25rem);
  font-weight: 600;
  text-align: left;
  color: #00b900;
  line-height: 1.4285714286;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-flow__title_box_ttl {
    font-size: min(1.8518518519vw, 1.25rem);
    height: 100%;
    height: min(12.962962963vw, 8.75rem);
  }
}
@media screen and (max-width: 769px) {
  .p-flow__title_box_ttl {
    position: absolute;
    top: min(3.4666666667vw, 0.8125rem);
    left: min(5.3333333333vw, 1.25rem);
  }
}

.p-flow__title_box_img {
  max-width: min(42.6666666667vw, 160px);
  max-width: min(42.6666666667vw, 10rem);
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-flow__title_box_img {
    max-width: min(11.1111111111vw, 7.5rem);
  }
}

.p-flow__title_box_img img {
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
  width: 100%;
  margin-inline: auto;
  max-width: min(42.6666666667vw, 160px);
  max-width: min(42.6666666667vw, 10rem);
  aspect-ratio: 120/120;
}
@media screen and (min-width: 768px) {
  .p-flow__title_box_img img {
    max-width: min(11.1111111111vw, 7.5rem);
  }
}

.p-flow__title_box_cont {
  width: 100%;
}

.p-flow__title_box_cont-ttl {
  font-size: min(5.3333333333vw, 20px);
  font-size: min(5.3333333333vw, 1.25rem);
  font-weight: 600;
  text-align: center;
  color: #00b900;
  line-height: 1.455;
  letter-spacing: 0em;
  padding-bottom: min(3.4666666667vw, 13px);
  padding-bottom: min(3.4666666667vw, 0.8125rem);
  border-bottom: 1px solid #00b900;
  margin-bottom: min(5.3333333333vw, 20px);
  margin-bottom: min(5.3333333333vw, 1.25rem);
}
@media screen and (min-width: 768px) {
  .p-flow__title_box_cont-ttl {
    font-size: min(1.8518518519vw, 1.25rem);
    text-align: left;
    padding-bottom: min(1.0185185185vw, 0.6875rem);
    margin-bottom: min(1.8518518519vw, 1.25rem);
  }
}
@media screen and (max-width: 769px) {
  .p-flow__title_box_cont-ttl {
    margin-inline: max(-5.3333333333vw, -1.25rem);
  }
}

.p-flow__title_box_cont-desc {
  font-size: min(4vw, 15px);
  font-size: min(4vw, 0.9375rem);
  font-weight: 500;
  text-align: center;
  color: #222;
  line-height: 1.4375;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-flow__title_box_cont-desc {
    text-align: left;
    font-size: min(1.4814814815vw, 1rem);
    transform: translateY(-10px);
  }
}
@media screen and (max-width: 769px) {
  .p-flow__title_box_cont-desc {
    letter-spacing: 0.075em;
  }
}

footer {
  background: #0e967e;
     padding-bottom: min(23.4666666667vw, 88px);
  padding-bottom: min(23.4666666667vw, 5.5rem);
}
@media screen and (min-width: 768px) {
  footer {
     padding-bottom: min(13.3333333333vw, 9rem);
  }
}
.p-copyright {
  font-size: min(3.2vw, 12px);
  font-size: min(3.2vw, 0.75rem);
  font-weight: 400;
  text-align: center;
  color: #fff;
  line-height: 1.18;
  letter-spacing: 0em;
  padding-block: min(2vw, 7.5px);
  padding-block: min(2vw, 0.46875rem);
}
@media screen and (min-width: 768px) {
  .p-copyright {
    font-size: min(1.1111111111vw, 0.75rem);
    padding-block: min(0.6944444444vw, 0.46875rem);
  }
}

.p-fv__header {
  max-width: min(42.6666666667vw, 160px);
  max-width: min(42.6666666667vw, 10rem);
  width: 100%;
  margin-inline: auto;
  padding-top: min(3.7333333333vw, 14px);
  padding-top: min(3.7333333333vw, 0.875rem);
  background: #fff;
  padding-bottom: min(3.5546666667vw, 13.33px);
  padding-bottom: min(3.5546666667vw, 0.833125rem);
}
@media screen and (min-width: 768px) {
  .p-fv__header {
    max-width: min(14.8148148148vw, 10rem);
    padding-top: min(1.2962962963vw, 0.875rem);
    padding-bottom: min(1.2342592593vw, 0.833125rem);
  }
}

.p-fv__header img {
  max-width: min(42.6666666667vw, 160px);
  max-width: min(42.6666666667vw, 10rem);
  width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
  aspect-ratio: 160/22.67;
  height: auto;
}
@media screen and (min-width: 768px) {
  .p-fv__header img {
    max-width: min(14.8148148148vw, 10rem);
  }
}

.p-fv__img {
  width: 100%;
  margin-bottom: -5px;
}

.l-header {
  position: fixed;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 85px;
  height: 5.3125rem;
}
@media screen and (min-width: 768px) {
  .l-header {
    height: 8.75rem;
  }
}

.active .l-header {
  height: 100vh;
}

/* 
** The Header Media Queries **
** Tweak as per your needs **
*/
.p-header__wrapper {
  max-width: 1320px;
  max-width: 82.5rem;
  padding-top: 12px;
  padding-top: 0.75rem;
  padding-bottom: 12px;
  padding-bottom: 0.75rem;
  margin-left: auto;
  margin-right: auto;
}

.p-header__img img {
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
  width: 100%;
  aspect-ratio: 118.3/56;
  max-width: 118.3px;
  max-width: 7.39375rem;
}

.p-header__top {
  background-color: #fff;
}

.p-header__top ul {
  display: flex;
}

.p-header__top li:not(:last-child) {
  margin-right: 24px;
  margin-right: 1.5rem;
}

.p-header__top .p-header__start {
  display: none;
}

@media (max-width: 939px) {
  .p-header__bottom .p-header__end {
    order: -1;
  }
}
.p-header__wrapper {
  display: flex;
  justify-content: space-between;
}

.p-header__wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px;
  padding: 1rem;
}

@media (min-width: 940px) {
  .p-header__wrapper {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
}
.p-header__end {
  display: grid;
  grid-template-columns: 1fr;
  align-items: center;
  gap: 10px 0;
  gap: 0.625rem 0;
  max-width: 60%;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-header__end {
    max-width: 50%;
    gap: 0 1rem;
    grid-template-columns: auto min(12.7777777778vw, 8.625rem) 10.75rem;
  }
}

.p-header__end_btn {
  min-width: inherit;
}

.p-header__tel_box .p-header__tel_number {
  font-size: 20px;
  font-size: 1.25rem;
  font-weight: 600;
  text-align: center;
  color: #222;
  line-height: 1.3;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-header__tel_box .p-header__tel_number {
    font-size: 1.25rem;
    margin-bottom: 0.1875rem;
  }
}

.p-header__tel_number span {
  max-width: 15px;
  max-width: 0.9375rem;
  width: 100%;
  font-family: "Intel One Mono", monospace, "DIN", sans-serif;
  font-weight: 700;
}

.p-header__tel_number span img {
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
  width: 100%;
  aspect-ratio: 1/1;
  max-width: 15px;
  max-width: 0.9375rem;
  display: inline-block;
}

.p-header__tel_box .p-header__tel_txt {
  font-size: 12px;
  font-size: 0.75rem;
  font-weight: 500;
  text-align: center;
  color: #222;
  line-height: 1.116;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-header__tel_box .p-header__tel_txt {
    font-size: 0.75rem;
  }
}

.p-loan {
  background-color: #0e967e;
}

.p-loan__container {
  position: relative;
  z-index: 4;
}

.p-loan__container::before {
  z-index: -1;
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 769px) {
  .p-loan__container::before {
    background: url("../images/loan_bg_sp.png") center center no-repeat;
    background-size: contain;
    aspect-ratio: 563/603;
    max-width: 100%;
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .p-loan__container::before {
    background: url("../images/loan_bg_pc.png") center center no-repeat;
    aspect-ratio: 1524/841;
    -o-object-fit: contain;
    object-fit: contain;
    max-width: 100%;
    width: 100%;
    background-size: contain;
  }
}
@media screen and (min-width: 1441px) {
  .p-loan__container::before {
    max-height: 49.6875rem;
  }
}
@media (max-width: 768px) and (min-width: 376px) {
  .p-loan__container::before {
    right: 50%;
    transform: translateX(50%);
    max-width: min(100vw, 23.4375rem);
  }
}

.p-loan__wrapper {
  position: relative;
  margin-inline: min(5.3333333333vw, 20px);
  margin-inline: min(5.3333333333vw, 1.25rem);
  padding-bottom: min(10.6666666667vw, 40px);
  padding-bottom: min(10.6666666667vw, 2.5rem);
  padding-top: min(11.2vw, 42px);
  padding-top: min(11.2vw, 2.625rem);
}
@media screen and (min-width: 768px) {
  .p-loan__wrapper {
    max-width: min(101.8518518519vw, 68.75rem);
    margin-inline: auto;
    padding-bottom: min(11.5740740741vw, 7.8125rem);
    padding-top: min(9.2592592593vw, 6.25rem);
  }
}

.p-loan__titles {
  margin-bottom: min(66.6666666667vw, 250px);
  margin-bottom: min(66.6666666667vw, 15.625rem);
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .p-loan__titles {
    margin-bottom: min(3.8888888889vw, 2.625rem);
  }
}
@media screen and (max-width: 769px) {
  .p-loan__titles {
    margin-left: min(-5.3333333333vw, -1.25rem);
  }
}
@media (max-width: 768px) and (min-width: 376px) {
  .p-loan__titles {
    margin-left: 0;
  }
}

@media screen and (max-width: 769px) {
  .p-loan__title_box {
    margin-bottom: min(6.4vw, 1.5rem);
  }
}

.p-loan__title {
  background: #fff;
  font-size: min(10.6666666667vw, 40px);
  font-size: min(10.6666666667vw, 2.5rem);
  font-weight: 600;
  text-align: left;
  color: #222;
  line-height: 1.45;
  letter-spacing: 0em;
  padding-inline: min(1.0666666667vw, 4px);
  padding-inline: min(1.0666666667vw, 0.25rem);
  padding-bottom: min(1.0666666667vw, 4px);
  padding-bottom: min(1.0666666667vw, 0.25rem);
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width: 768px) {
  .p-loan__title {
    line-height: 1.4411764706;
    letter-spacing: 0em;
    font-size: min(6.2962962963vw, 4.25rem);
    padding-inline: min(0.9259259259vw, 0.625rem);
    padding-bottom: min(0.6796296296vw, 0.45875rem);
    padding-top: min(0.6481481481vw, 0.4375rem);
  }
}

.p-loan__title.p-loan__title--green {
  padding-left: min(1.0666666667vw, 4px);
  padding-left: min(1.0666666667vw, 0.25rem);
  padding-right: min(1.0666666667vw, 4px);
  padding-right: min(1.0666666667vw, 0.25rem);
  padding-bottom: min(1.0666666667vw, 4px);
  padding-bottom: min(1.0666666667vw, 0.25rem);
}
@media screen and (min-width: 768px) {
  .p-loan__title.p-loan__title--green {
    padding-left: min(1.8518518519vw, 1.25rem);
    padding-right: min(1.8518518519vw, 1.25rem);
    padding-bottom: min(0.7407407407vw, 0.5rem);
  }
}

.p-loan__title span.c-small {
  font-size: min(6.4vw, 24px);
  font-size: min(6.4vw, 1.5rem);
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .p-loan__title span.c-small {
    font-size: min(4.4444444444vw, 3rem);
  }
}

.p-loan__title span.c-green {
  color: #0e967e;
}

.p-loan__title + .p-loan__title {
  margin-top: min(3.6426666667vw, 13.66px);
  margin-top: min(3.6426666667vw, 0.85375rem);
}
@media screen and (min-width: 768px) {
  .p-loan__title + .p-loan__title {
    margin-top: min(1.2648148148vw, 0.85375rem);
  }
}

.p-loan__desc {
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 500;
  text-align: left;
  color: #fff;
  line-height: 2;
  letter-spacing: 0.04em;
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .p-loan__desc {
    max-width: min(31.0185185185vw, 20.9375rem);
    line-height: 2;
    letter-spacing: 0.045em;
    font-size: min(1.8518518519vw, 1.25rem);
    margin-bottom: min(14.8148148148vw, 10rem);
  }
}

.p-loan__cont_box--img {
  position: relative;
  z-index: 2;
  width: 100%;
  margin-inline: auto;
  max-width: min(32.5866666667vw, 122.2px);
  max-width: min(32.5866666667vw, 7.6375rem);
  transform: translateY(56%);
}
@media screen and (min-width: 768px) {
  .p-loan__cont_box--img {
    max-width: min(9.2222222222vw, 6.225rem);
  }
}

.p-loan__cont_box--img img {
  width: 100%;
  max-width: min(32.5333333333vw, 122px);
  max-width: min(32.5333333333vw, 7.625rem);
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
}
@media screen and (min-width: 768px) {
  .p-loan__cont_box--img img {
    transform: translateX(5px);
    aspect-ratio: 99.6/98.94;
    max-width: min(9.2222222222vw, 6.225rem);
  }
}

.p-loan__cont_boxes {
  gap: min(7.4666666667vw, 28px);
  gap: min(7.4666666667vw, 1.75rem);
  grid-template-columns: 1fr;
}
@media screen and (min-width: 768px) {
  .p-loan__cont_boxes {
    gap: min(1.8518518519vw, 1.25rem);
    grid-template-columns: 1fr 1fr 1fr 1fr;
    margin-bottom: min(3.2407407407vw, 2.1875rem);
  }
}
@media screen and (max-width: 769px) {
  .p-loan__cont_boxes {
    margin-bottom: min(10.6666666667vw, 2.5rem);
  }
}
@media (max-width: 768px) and (min-width: 376px) {
  .p-loan__cont_boxes {
    gap: 1.875rem;
  }
}

.p-loan__cont_box {
  position: relative;
}
@media screen and (max-width: 769px) {
  .p-loan__cont_box {
    margin-top: -21%;
  }
}
@media (max-width: 768px) and (min-width: 376px) {
  .p-loan__cont_box {
    margin-top: -4.6875rem;
    max-width: min(133.3333333333vw, 31.25rem);
    margin-inline: auto;
    width: 100%;
  }
}

.p-loan__cont_box--detail {
  position: relative;
  z-index: 6;
  background: #fff;
  border-radius: 0.584375rem;
  padding-top: min(6.4vw, 24px);
  padding-top: min(6.4vw, 1.5rem);
  padding-inline: min(5.3333333333vw, 20px);
  padding-inline: min(5.3333333333vw, 1.25rem);
}
@media screen and (min-width: 768px) {
  .p-loan__cont_box--detail {
    min-height: min(19.2592592593vw, 13rem);
    padding-top: min(1.7314814815vw, 1.16875rem);
    padding-inline: min(1.3888888889vw, 0.9375rem);
  }
}
@media screen and (max-width: 769px) {
  .p-loan__cont_box--detail {
    padding-bottom: min(6.4vw, 1.5rem);
  }
}

.p-loan__cont_box--ttl {
  font-size: min(5.3333333333vw, 20px);
  font-size: min(5.3333333333vw, 1.25rem);
  font-weight: 600;
  text-align: center;
  color: #0e967e;
  line-height: 1.45;
  letter-spacing: 0em;
  padding-bottom: min(3.2vw, 12px);
  padding-bottom: min(3.2vw, 0.75rem);
  border-bottom: 1px solid #0e967e;
  margin-bottom: min(2.0773333333vw, 7.79px);
  margin-bottom: min(2.0773333333vw, 0.486875rem);
}
@media screen and (min-width: 768px) {
  .p-loan__cont_box--ttl {
    line-height: 1.4444444444;
    letter-spacing: 0em;
    font-size: min(1.6666666667vw, 1.125rem);
    padding-bottom: min(0.8666666667vw, 0.585rem);
    margin-bottom: min(0.7212962963vw, 0.486875rem);
  }
}

.p-loan__cont_box--desc {
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 500;
  text-align: left;
  color: #222;
  line-height: 2;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-loan__cont_box--desc {
    line-height: 1.7785714286;
    letter-spacing: 0em;
    font-size: min(1.2962962963vw, 0.875rem);
  }
}

.p-loan__cont2__ttl {
  font-size: min(8.5333333333vw, 32px);
  font-size: min(8.5333333333vw, 2rem);
  font-weight: 600;
  text-align: center;
  color: #f8fea1;
  line-height: 1.5;
  letter-spacing: 0em;
  margin-bottom: min(5.6vw, 21px);
  margin-bottom: min(5.6vw, 1.3125rem);
}
@media screen and (min-width: 768px) {
  .p-loan__cont2__ttl {
    font-size: min(3.7037037037vw, 2.5rem);
    margin-bottom: min(3.5185185185vw, 2.375rem);
  }
}

.p-loan__cont2__ttl span {
  background: linear-gradient(transparent 98%, #f8fea1 0%);
}

.p-loan__cont2--def {
  background-color: #eaeaea;
  position: relative;
  overflow: hidden;
}

.p-loan__cont2--plus {
  position: relative;
  overflow: hidden;
  background-color: #c6e6c9;
}

.p-loan__cont2__box--ttl {
  background-color: #fff;
  margin-bottom: min(5.3333333333vw, 20px);
  margin-bottom: min(5.3333333333vw, 1.25rem);
  margin-inline: min(5.3333333333vw, 20px);
  margin-inline: min(5.3333333333vw, 1.25rem);
  padding-block: min(3.2vw, 12px) min(3.4666666667vw, 13px);
  padding-block: min(3.2vw, 0.75rem) min(3.4666666667vw, 0.8125rem);
  font-size: min(5.3333333333vw, 20px);
  font-size: min(5.3333333333vw, 1.25rem);
  font-weight: 600;
  text-align: center;
  color: #222;
  line-height: 1.18;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-loan__cont2__box--ttl {
    margin-inline: min(1.8518518519vw, 1.25rem);
    margin-bottom: min(1.8518518519vw, 1.25rem);
    padding-block: min(1.1111111111vw, 0.75rem);
    font-size: min(1.8518518519vw, 1.25rem);
  }
}

.p-loan__cont2__boxes {
  grid-template-columns: 1fr 1fr;
  gap: min(5.8666666667vw, 22px);
  gap: min(5.8666666667vw, 1.375rem);
}
@media screen and (max-width: 769px) {
  .p-loan__cont2__boxes {
    flex-direction: column;
    grid-template-columns: 1fr;
  }
}
@media screen and (min-width: 768px) {
  .p-loan__cont2__boxes {
    grid-template-columns: 1fr 1fr;
    gap: min(3.7037037037vw, 2.5rem);
  }
}

.p-loan__cont2__box {
  border-radius: 0.75rem;
  z-index: 3;
  padding-bottom: min(12vw, 45px);
  padding-bottom: min(12vw, 2.8125rem);
  padding-top: min(5.3333333333vw, 20px);
  padding-top: min(5.3333333333vw, 1.25rem);
}
@media screen and (min-width: 768px) {
  .p-loan__cont2__box {
    padding-bottom: min(3.7037037037vw, 2.5rem);
    padding-top: min(1.8518518519vw, 1.25rem);
  }
}
@media (max-width: 768px) and (min-width: 376px) {
  .p-loan__cont2__box {
    max-width: min(133.3333333333vw, 31.25rem);
    margin-inline: auto;
    width: 100%;
    text-align: center;
  }
}

.p-loan__cont2--plus .p-loan__cont2__box--ttl {
  color: #0e967e;
}

.p-loan__cont2__box--img {
  border-radius: 0.75rem;
  margin-bottom: min(5.0666666667vw, 19px);
  margin-bottom: min(5.0666666667vw, 1.1875rem);
}
@media screen and (min-width: 768px) {
  .p-loan__cont2__box--img {
    width: 100%;
    margin-bottom: min(1.7592592593vw, 1.1875rem);
  }
}
@media screen and (max-width: 769px) {
  .p-loan__cont2__box--img {
    margin-inline: min(5.3333333333vw, 1.25rem);
  }
}

.p-loan__cont2__box--img img {
  margin-inline: auto;
  max-width: min(78.6666666667vw, 295px);
  max-width: min(78.6666666667vw, 18.4375rem);
  aspect-ratio: 295/324;
  height: auto;
  width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
}
@media screen and (min-width: 768px) {
  .p-loan__cont2__box--img img {
    aspect-ratio: 490/324;
    max-width: min(45.3703703704vw, 30.625rem);
  }
}

.p-loan__cont2__box--desc {
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 500;
  text-align: center;
  color: #222;
  line-height: 2;
  letter-spacing: 0em;
  margin-bottom: min(2.9333333333vw, 11px);
  margin-bottom: min(2.9333333333vw, 0.6875rem);
}
@media screen and (min-width: 768px) {
  .p-loan__cont2__box--desc {
    font-size: min(1.4814814815vw, 1rem);
    margin-bottom: min(2.037037037vw, 1.375rem);
  }
}
@media screen and (max-width: 769px) {
  .p-loan__cont2__box--desc {
    margin-inline: min(5.3333333333vw, 1.25rem);
    text-align: left;
  }
}

.p-loan__cont2__box--tri {
  max-width: min(25.6vw, 96px);
  max-width: min(25.6vw, 6rem);
  width: 100%;
  margin-inline: auto;
  margin-bottom: min(7.0666666667vw, 26.5px);
  margin-bottom: min(7.0666666667vw, 1.65625rem);
}
@media screen and (min-width: 768px) {
  .p-loan__cont2__box--tri {
    max-width: min(9.4444444444vw, 6.375rem);
    margin-bottom: min(3.0555555556vw, 2.0625rem);
  }
}
@media screen and (max-width: 769px) {
  .p-loan__cont2__box--tri {
    transform: translateX(-5px);
  }
}

.p-loan__cont2__box--tri img {
  max-width: min(25.6vw, 96px);
  max-width: min(25.6vw, 6rem);
  width: 100%;
  aspect-ratio: 110/60;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
  height: auto;
}
@media screen and (min-width: 768px) {
  .p-loan__cont2__box--tri img {
    max-width: min(29.3333333333vw, 6.875rem);
  }
}
@media screen and (max-width: 769px) {
  .p-loan__cont2__box--tri img {
    transform: translateX(6px);
  }
}

.p-loan__cont2__box--att {
  font-size: min(5.3333333333vw, 20px);
  font-size: min(5.3333333333vw, 1.25rem);
  font-weight: 600;
  text-align: left;
  color: #222;
  line-height: 1.8;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-loan__cont2__box--att {
    line-height: 1.8571428571;
    letter-spacing: 0em;
    font-size: min(2.5925925926vw, 1.75rem);
  }
}

@media screen and (min-width: 768px) {
  .p-loan__cont2--def .p-loan__cont2__box--att {
    margin-left: min(3.9814814815vw, 2.6875rem);
  }
}
@media screen and (max-width: 769px) {
  .p-loan__cont2--def .p-loan__cont2__box--att {
    margin-left: min(5.3333333333vw, 1.25rem);
  }
}

.p-loan__cont2--plus .p-loan__cont2__box--atts .p-loan__cont2__box--att {
  color: #0e967e;
}
@media screen and (min-width: 768px) {
  .p-loan__cont2--plus .p-loan__cont2__box--atts .p-loan__cont2__box--att {
    margin-left: min(20.9259259259vw, 14.125rem);
  }
}
@media screen and (max-width: 769px) {
  .p-loan__cont2--plus .p-loan__cont2__box--atts .p-loan__cont2__box--att {
    margin-left: calc(52% - 1.25rem);
  }
}

.p-loan__cont2--plus .p-loan__cont2__box--atts .p-loan__cont2__box--att span {
  background: linear-gradient(transparent 59%, #f8fea1 0%);
}

.p-loan__cont2__box--person {
  max-width: min(30.4vw, 114px);
  max-width: min(30.4vw, 7.125rem);
  width: 100%;
  margin-inline: auto;
  position: absolute;
}
@media screen and (min-width: 768px) {
  .p-loan__cont2__box--person {
    max-width: min(14.2592592593vw, 9.625rem);
  }
}

.p-loan__cont2__box--person img {
  max-width: min(30.4vw, 114px);
  max-width: min(30.4vw, 7.125rem);
  width: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
}
@media screen and (min-width: 768px) {
  .p-loan__cont2__box--person img {
    max-width: min(41.0666666667vw, 9.625rem);
  }
}

.p-loan__cont2--def .p-loan__cont2__box--person {
  bottom: min(10.6666666667vw, 40px);
  bottom: min(10.6666666667vw, 2.5rem);
  right: min(5.3333333333vw, 20px);
  right: min(5.3333333333vw, 1.25rem);
}
@media screen and (min-width: 768px) {
  .p-loan__cont2--def .p-loan__cont2__box--person {
    bottom: min(3.7962962963vw, 2.5625rem);
    right: min(3.7962962963vw, 2.5625rem);
  }
}
@media screen and (max-width: 769px) {
  .p-loan__cont2--def .p-loan__cont2__box--person {
    max-width: min(29.3333333333vw, 6.875rem);
  }
}

.p-loan__cont2--plus .p-loan__cont2__box--person {
  bottom: max(-0.8vw, -3px);
  bottom: max(-0.8vw, -0.1875rem);
  left: min(5.6vw, 21px);
  left: min(5.6vw, 1.3125rem);
}
@media screen and (min-width: 768px) {
  .p-loan__cont2--plus .p-loan__cont2__box--person {
    bottom: min(3.7037037037vw, 2.5rem);
    left: min(3.7037037037vw, 2.5rem);
  }
}
@media screen and (max-width: 769px) {
  .p-loan__cont2--plus .p-loan__cont2__box--person {
    max-width: min(30.1333333333vw, 7.0625rem);
  }
}

.p-loan__cont2--def::before {
  content: "";
  background: url("../images/loan_bg_sp.svg") center center no-repeat;
  background-size: cover;
  position: absolute;
  bottom: 0;
  left: 0;
  aspect-ratio: 427.5/331;
  width: 103%;
  bottom: 0;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .p-loan__cont2--def::before {
    background-size: contain;
    width: 100%;
    bottom: max(-2.5vw, -1.6875rem);
    aspect-ratio: 606.5/455.41;
    background: url("../images/loan_bg_pc.svg") center center no-repeat;
  }
}

.p-loan__cont2--plus::before {
  content: "";
  background: url("../images/loan_bg2_sp.svg") center center no-repeat;
  background-size: contain;
  position: absolute;
  bottom: 0;
  left: 0;
  aspect-ratio: 619/385;
  width: 100%;
  bottom: max(-4.8vw, -18px);
  bottom: max(-4.8vw, -1.125rem);
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .p-loan__cont2--plus::before {
    aspect-ratio: 606.5/455.41;
    background: url("../images/loan_bg2_pc.svg") center center no-repeat;
    bottom: max(-8.7037037037vw, -5.875rem);
  }
}

@media screen and (max-width: 769px) {
  .p-loan__cont2__box.p-loan__cont2--def {
    padding-bottom: min(9.0666666667vw, 2.125rem);
  }
}

.p-loan__cont2--def .p-loan__cont2__box--person img {
  aspect-ratio: 109/121;
}
@media screen and (min-width: 768px) {
  .p-loan__cont2--def .p-loan__cont2__box--person img {
    aspect-ratio: 154/171;
  }
}
@media screen and (max-width: 769px) {
  .p-loan__cont2--def .p-loan__cont2__box--person img {
    max-width: min(29.3333333333vw, 6.875rem);
  }
}

.p-loan__cont2--plus .p-loan__cont2__box--person img {
  aspect-ratio: 114/135;
}
@media screen and (min-width: 768px) {
  .p-loan__cont2--plus .p-loan__cont2__box--person img {
    aspect-ratio: 154/183;
  }
}
@media screen and (max-width: 769px) {
  .p-loan__cont2--plus .p-loan__cont2__box--person img {
    max-width: min(30.1333333333vw, 7.0625rem);
  }
}

.p-merit {
  background: linear-gradient(180deg, #fff 0%, #009f16 100%);
  position: relative;
  z-index: 2;
}

.p-merit__container {
  position: absolute;
  background: url("../images/solution_bg.svg") top center no-repeat;
  bottom: max(-27.962962963vw, -302px);
  bottom: max(-27.962962963vw, -18.875rem);
  left: 0;
  aspect-ratio: 1729/1075;
  overflow: hidden;
  z-index: -1;
  width: 100%;
  height: min(94.6296296296vw, 1022px);
  height: min(94.6296296296vw, 63.875rem);
}
@media screen and (min-width: 1441px) {
  .p-merit__container {
    height: min(103.2407407407vw, 69.6875rem);
    background-size: cover;
  }
}
@media screen and (max-width: 769px) {
  .p-merit__container {
    bottom: max(-52.5333333333vw, -12.3125rem);
    height: min(122.6666666667vw, 28.75rem);
    aspect-ratio: 750/525;
    background: url("../images/solution_bg_sp.png") top center no-repeat;
    background-size: contain;
  }
}
@media (max-width: 768px) and (min-width: 376px) {
  .p-merit__container {
    height: 125vw;
    bottom: -65vw;
  }
}

.p-merit__wrapper {
  margin-inline: min(5.3333333333vw, 20px);
  margin-inline: min(5.3333333333vw, 1.25rem);
  padding-top: min(10.6666666667vw, 40px);
  padding-top: min(10.6666666667vw, 2.5rem);
  padding-bottom: 0;
}
@media screen and (min-width: 768px) {
  .p-merit__wrapper {
    margin-inline: auto;
    max-width: min(101.8518518519vw, 68.75rem);
    padding-bottom: min(0vw, 0rem);
    padding-top: min(9.2592592593vw, 6.25rem);
  }
}
@media screen and (max-width: 769px) {
  .p-merit__wrapper {
    margin-bottom: max(-10.6666666667vw, -2.5rem);
  }
}
@media (max-width: 768px) and (min-width: 376px) {
  .p-merit__wrapper {
    max-width: min(133.3333333333vw, 31.25rem);
    margin-inline: auto;
  }
}

.p-merit__title_box {
  text-align: center;
}

.p-merit__subtitle {
  display: inline-block;
  margin-inline: auto;
  font-size: min(5.3333333333vw, 20px);
  font-size: min(5.3333333333vw, 1.25rem);
  font-weight: 600;
  text-align: center;
  color: #0e967e;
  line-height: 1.4642857143;
  letter-spacing: 0em;
  margin-bottom: min(5.8666666667vw, 22px);
  margin-bottom: min(5.8666666667vw, 1.375rem);
  padding-bottom: min(0.8vw, 3px);
  padding-bottom: min(0.8vw, 0.1875rem);
  border-bottom: 1px solid #0e967e;
}
@media screen and (min-width: 768px) {
  .p-merit__subtitle {
    font-size: min(2.5925925926vw, 1.75rem);
    margin-bottom: min(3.4259259259vw, 2.3125rem);
    padding-bottom: min(0.3703703704vw, 0.25rem);
  }
}

.p-merit__titles {
  flex-direction: column;
  margin-bottom: min(5.8666666667vw, 22px);
  margin-bottom: min(5.8666666667vw, 1.375rem);
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-merit__titles {
    margin-bottom: min(3.6111111111vw, 2.4375rem);
  }
}
@media screen and (max-width: 769px) {
  .p-merit__titles {
    gap: min(2.1333333333vw, 0.5rem);
  }
}

.p-merit__title {
  padding: min(1.0666666667vw, 4px) 0 min(1.0666666667vw, 4px) min(5.3333333333vw, 20px);
  padding: min(1.0666666667vw, 0.25rem) 0 min(1.0666666667vw, 0.25rem) min(5.3333333333vw, 1.25rem);
  background: #0e967e;
  font-size: min(10.6666666667vw, 40px);
  font-size: min(10.6666666667vw, 2.5rem);
  font-weight: 600;
  text-align: center;
  color: #fff;
  line-height: 1.45;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-merit__title {
    padding: min(0.6796296296vw, 0.45875rem) min(0.6333333333vw, 0.4275rem) 0;
    line-height: 1.58;
    letter-spacing: 0em;
    font-size: min(6.2962962963vw, 4.25rem);
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    display: inline-block;
    margin-inline: auto;
  }
}

@media screen and (max-width: 769px) {
  .p-merit__title + .p-merit__title {
    width: 100%;
    margin-top: min(0.7407407407vw, 0.5rem);
  }
}

.p-merit__title .c-yellow,
.p-merit__title.c-underline {
  color: #f8fea1;
}

.p-merit__title .c-small {
  font-size: min(6.4vw, 24px);
  font-size: min(6.4vw, 1.5rem);
  font-weight: 600;
  text-align: center;
  color: #fff;
  line-height: 1;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-merit__title .c-small {
    font-size: min(4.4444444444vw, 3rem);
  }
}

.p-merit__desc {
  margin-bottom: min(11.2vw, 42px);
  margin-bottom: min(11.2vw, 2.625rem);
  text-align: center;
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 400;
  text-align: center;
  color: #222;
  line-height: 2;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-merit__desc {
    margin-bottom: min(7.037037037vw, 4.75rem);
    font-size: min(1.4814814815vw, 1rem);
  }
}

.p-merit__cont_boxes {
  gap: min(6.4vw, 24px);
  gap: min(6.4vw, 1.5rem);
}
@media screen and (min-width: 768px) {
  .p-merit__cont_boxes {
    grid-template-columns: 1fr 1fr;
    gap: min(2.2222222222vw, 1.5rem);
  }
}

.p-merit__cont_boxes + .p-merit__cont_boxes {
  margin-top: min(6.4vw, 24px);
  margin-top: min(6.4vw, 1.5rem);
  margin-bottom: min(34.9333333333vw, 131px);
  margin-bottom: min(34.9333333333vw, 8.1875rem);
}
@media screen and (min-width: 768px) {
  .p-merit__cont_boxes + .p-merit__cont_boxes {
    margin-top: min(2.2222222222vw, 1.5rem);
    margin-bottom: min(23.3675925926vw, 15.773125rem);
  }
}
@media (max-width: 768px) and (min-width: 376px) {
  .p-merit__cont_boxes + .p-merit__cont_boxes {
    margin-bottom: min(21.3333333333vw, 5rem);
  }
}

.p-merit__cont_boxes.c-grid-third {
  gap: min(6.6666666667vw, 25px);
  gap: min(6.6666666667vw, 1.5625rem);
}
@media screen and (min-width: 768px) {
  .p-merit__cont_boxes.c-grid-third {
    grid-template-columns: 1fr 1fr 1fr;
    gap: min(2.2222222222vw, 1.5rem);
  }
}

.p-merit__cont_box {
  text-align: center;
  border-radius: 0.75rem;
  background: #fff;
  padding-inline: min(5.2453333333vw, 19.67px);
  padding-inline: min(5.2453333333vw, 1.229375rem);
  padding-bottom: min(5.0666666667vw, 19px);
  padding-bottom: min(5.0666666667vw, 1.1875rem);
}
@media screen and (min-width: 768px) {
  .p-merit__cont_box {
    padding-inline: min(1.8518518519vw, 1.25rem);
    padding-bottom: min(1.5740740741vw, 1.0625rem);
  }
}
@media (max-width: 768px) and (min-width: 376px) {
  .p-merit__cont_box {
    margin-inline: min(5.3333333333vw, 1.25rem);
  }
}

.p-merit__cont_midashi {
  font-size: min(5.3333333333vw, 20px);
  font-size: min(5.3333333333vw, 1.25rem);
  font-weight: 600;
  text-align: center;
  color: #fff;
  line-height: 1.4285714286;
  letter-spacing: 0em;
  margin-bottom: min(6.4vw, 24px);
  margin-bottom: min(6.4vw, 1.5rem);
  padding: min(0.5333333333vw, 2px) min(3.2vw, 12px);
  padding: min(0.5333333333vw, 0.125rem) min(3.2vw, 0.75rem);
  background: #0e967e;
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .p-merit__cont_midashi {
    font-size: min(1.8518518519vw, 1.25rem);
    margin-bottom: min(2.2222222222vw, 1.5rem);
    padding: min(0.9259259259vw, 0.625rem);
    padding: min(0.3703703704vw, 0.25rem) min(1.0185185185vw, 0.6875rem) min(0.1851851852vw, 0.125rem);
  }
}

.p-merit__cont_title {
  font-size: min(5.3333333333vw, 20px);
  font-size: min(5.3333333333vw, 1.25rem);
  font-weight: 600;
  text-align: center;
  color: #0e967e;
  line-height: 1.6;
  letter-spacing: 0em;
  margin-bottom: min(6.4vw, 24px);
  margin-bottom: min(6.4vw, 1.5rem);
}
@media screen and (min-width: 768px) {
  .p-merit__cont_title {
    font-size: min(1.8518518519vw, 1.25rem);
    margin-bottom: min(2.2222222222vw, 1.5rem);
  }
}

.p-merit__cont_desc {
  border: 20px;
  border: 1.25rem;
  padding-block: min(5.3333333333vw, 20px);
  padding-block: min(5.3333333333vw, 1.25rem);
  background-color: #e4f3e5;
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 500;
  text-align: center;
  color: #222;
  line-height: 1.8;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-merit__cont_desc {
    line-height: 1.9;
    letter-spacing: 0em;
    padding-block: min(1.8518518519vw, 1.25rem);
    font-size: min(1.4814814815vw, 1rem);
  }
}

.p-merit__add {
  position: relative;
}

.p-merit__add_txts {
  position: absolute;
  top: max(-10.6666666667vw, -40px);
  top: max(-10.6666666667vw, -2.5rem);
  right: 0;
}
@media screen and (min-width: 768px) {
  .p-merit__add_txts {
    top: max(-4.7222222222vw, -3.1875rem);
    right: min(6.1111111111vw, 4.125rem);
  }
}
@media (max-width: 768px) and (min-width: 376px) {
  .p-merit__add_txts {
    right: min(2.1333333333vw, 0.5rem);
  }
}

.p-merit__add_img {
  max-width: min(68.5185185185vw, 740px);
  max-width: min(68.5185185185vw, 46.25rem);
  width: 100%;
  margin-inline: auto;
}
@media screen and (max-width: 769px) {
  .p-merit__add_img {
    max-width: min(68.5605333333vw, 16.068875rem);
  }
}

.p-merit__add_img img {
  max-width: min(68.5185185185vw, 740px);
  max-width: min(68.5185185185vw, 46.25rem);
  aspect-ratio: 736.06/492.03;
  height: auto;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
  transform: translateX(max(-9.2592592593vw, -6.25rem));
}
@media screen and (max-width: 769px) {
  .p-merit__add_img img {
    max-width: min(68.5605333333vw, 16.068875rem);
  }
}

.p-merit__add_txt {
  position: relative;
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 600;
  text-align: left;
  color: #222;
  line-height: 1.90625;
  letter-spacing: 0em;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (min-width: 768px) {
  .p-merit__add_txt {
    line-height: 1.897826087;
    letter-spacing: 0em;
    font-size: min(4.2592592593vw, 2.875rem);
  }
}

.p-merit__add_txt::before {
  content: "";
  position: absolute;
  background: #f6f1bb;
  width: 104%;
  height: min(1.2962962963vw, 14px);
  height: 33%;
  left: -2%;
  bottom: 20%;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .p-merit__add_txt::before {
    width: 103%;
    height: min(1.2962962963vw, 14px);
    height: 44%;
    left: -1.5%;
    bottom: 9%;
  }
}

.p-program {
  background: url("../images/bg_program_sp.png") center center no-repeat;
  background-size: cover;
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .p-program {
    background: url("../images/bg_program.png") center center no-repeat;
  }
}
@media screen and (min-width: 1441px) {
  .p-program {
    background-size: cover;
  }
}

.p-program__container {
  padding-bottom: min(10.6666666667vw, 40px);
  padding-bottom: min(10.6666666667vw, 2.5rem);
}
@media screen and (min-width: 768px) {
  .p-program__container {
    padding-bottom: min(9.2592592593vw, 6.25rem);
  }
}

.p-program__wrapper {
  padding-bottom: min(10.6666666667vw, 40px);
  padding-bottom: min(10.6666666667vw, 2.5rem);
}
@media screen and (min-width: 768px) {
  .p-program__wrapper {
    padding-bottom: min(3.7037037037vw, 2.5rem);
  }
}

.p-program__point,
.p-program__point2 {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 3;
}

.p-program__point::before,
.p-program__point::after,
.p-program__point2::before,
.p-program__point2::after {
  content: "";
  position: absolute;
  width: min(2.1333333333vw, 8px);
  width: min(2.1333333333vw, 0.5rem);
  aspect-ratio: 1/1;
  border-radius: 50%;
  background: #0e967e;
  display: block;
}
@media screen and (min-width: 768px) {
  .p-program__point::before,
.p-program__point::after,
.p-program__point2::before,
.p-program__point2::after {
    width: min(1.4814814815vw, 1rem);
  }
}

.p-program__point::before {
  top: min(2.6666666667vw, 10px);
  top: min(2.6666666667vw, 0.625rem);
  left: min(2.6666666667vw, 10px);
  left: min(2.6666666667vw, 0.625rem);
}
@media screen and (min-width: 768px) {
  .p-program__point::before {
    top: min(1.8518518519vw, 1.25rem);
    left: min(1.8518518519vw, 1.25rem);
  }
}

.p-program__point::after {
  top: min(2.6666666667vw, 10px);
  top: min(2.6666666667vw, 0.625rem);
  right: min(2.6666666667vw, 10px);
  right: min(2.6666666667vw, 0.625rem);
}
@media screen and (min-width: 768px) {
  .p-program__point::after {
    top: min(1.8518518519vw, 1.25rem);
    right: min(1.8518518519vw, 1.25rem);
  }
}

.p-program__point2::before {
  bottom: min(2.6666666667vw, 10px);
  bottom: min(2.6666666667vw, 0.625rem);
  left: min(2.6666666667vw, 10px);
  left: min(2.6666666667vw, 0.625rem);
}
@media screen and (min-width: 768px) {
  .p-program__point2::before {
    bottom: min(1.8518518519vw, 1.25rem);
    left: min(1.8518518519vw, 1.25rem);
  }
}

.p-program__point2::after {
  bottom: min(2.6666666667vw, 10px);
  bottom: min(2.6666666667vw, 0.625rem);
  right: min(2.6666666667vw, 10px);
  right: min(2.6666666667vw, 0.625rem);
}
@media screen and (min-width: 768px) {
  .p-program__point2::after {
    bottom: min(1.8518518519vw, 1.25rem);
    right: min(1.8518518519vw, 1.25rem);
  }
}

.p-program__wrapper {
  padding-block: min(10.6666666667vw, 40px);
  padding-block: min(10.6666666667vw, 2.5rem);
}
@media screen and (min-width: 768px) {
  .p-program__wrapper {
    padding-block: min(9.2592592593vw, 6.25rem);
  }
}

.p-program__box {
  position: relative;
  z-index: 5;
  background: #fff;
  padding-top: min(10.6666666667vw, 40px);
  padding-top: min(10.6666666667vw, 2.5rem);
  padding-bottom: min(10.6666666667vw, 40px);
  padding-bottom: min(10.6666666667vw, 2.5rem);
  margin-inline: min(5.3333333333vw, 20px);
  margin-inline: min(5.3333333333vw, 1.25rem);
  border-radius: 0.75rem;
}
@media screen and (min-width: 768px) {
  .p-program__box {
    padding-bottom: min(4.9074074074vw, 3.3125rem);
    padding-top: min(5.1851851852vw, 3.5rem);
    max-width: min(83.3333333333vw, 56.25rem);
    margin-inline: auto;
  }
}
@media (max-width: 768px) and (min-width: 376px) {
  .p-program__box {
    max-width: min(133.3333333333vw, 31.25rem);
    margin-inline: auto;
  }
}

.p-program__img {
  margin-inline: auto;
  max-width: min(68vw, 255px);
  max-width: min(68vw, 15.9375rem);
  width: 100%;
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .p-program__img {
    margin-bottom: max(-0.1851851852vw, -0.125rem);
    max-width: min(42.5925925926vw, 28.75rem);
    width: 100%;
  }
}
@media screen and (max-width: 769px) {
  .p-program__img {
    transform: translateX(-9px);
  }
}

.p-program__img img {
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
  width: 100%;
  margin-inline: auto;
  max-width: min(68vw, 255px);
  max-width: min(68vw, 15.9375rem);
  aspect-ratio: 255/109.25;
}
@media screen and (min-width: 768px) {
  .p-program__img img {
    max-width: min(42.5925925926vw, 28.75rem);
    aspect-ratio: 460/198;
  }
}

.p-program__ttl {
  justify-content: center;
  align-items: center;
  max-width: min(74.6666666667vw, 280px);
  max-width: min(74.6666666667vw, 17.5rem);
  margin-inline: auto;
  padding-top: min(3.2vw, 12px);
  padding-top: min(3.2vw, 0.75rem);
  padding-bottom: min(2.5866666667vw, 9.7px);
  padding-bottom: min(2.5866666667vw, 0.60625rem);
  font-size: min(5.3333333333vw, 20px);
  font-size: min(5.3333333333vw, 1.25rem);
  font-weight: 600;
  text-align: center;
  color: #0e967e;
  line-height: 1.45;
  letter-spacing: 0em;
  border-block: 1px solid #0e967e;
  margin-bottom: min(6.4vw, 24px);
  margin-bottom: min(6.4vw, 1.5rem);
}
@media screen and (min-width: 768px) {
  .p-program__ttl {
    line-height: 1.4583333333;
    letter-spacing: 0em;
    padding-bottom: min(2.2222222222vw, 1.5rem);
    padding-top: min(1.8518518519vw, 1.25rem);
    max-width: min(62.962962963vw, 42.5rem);
    font-size: min(2.2222222222vw, 1.5rem);
    margin-bottom: min(2.5925925926vw, 1.75rem);
  }
}

.p-program__ttl span {
  transform: translateY(2px);
}

.p-program__ttl img {
  aspect-ratio: 160/22.67;
  width: 100%;
  max-width: min(42.6666666667vw, 160px);
  max-width: min(42.6666666667vw, 10rem);
  height: auto;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
  margin-right: min(1.3333333333vw, 5px);
  margin-right: min(1.3333333333vw, 0.3125rem);
}
@media screen and (min-width: 768px) {
  .p-program__ttl img {
    margin-right: min(0.462962963vw, 0.3125rem);
    aspect-ratio: 160/22.67;
    width: 100%;
    max-width: min(14.8148148148vw, 10rem);
  }
}

.p-program__desc {
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 400;
  text-align: center;
  color: #222;
  line-height: 2;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-program__desc {
    font-size: min(1.4814814815vw, 1rem);
  }
}
@media screen and (max-width: 769px) {
  .p-program__desc {
    padding-inline: min(5.3333333333vw, 1.25rem);
  }
}

.p-program__tri {
  max-width: min(29.3333333333vw, 110px);
  max-width: min(29.3333333333vw, 6.875rem);
  margin-inline: auto;
  width: 100%;
  width: 100%;
  margin-bottom: min(5.3333333333vw, 20px);
  margin-bottom: min(5.3333333333vw, 1.25rem);
}
@media screen and (min-width: 768px) {
  .p-program__tri {
    max-width: min(20.3703703704vw, 13.75rem);
    margin-bottom: min(3.7962962963vw, 2.5625rem);
  }
}

.p-program__tri img {
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
  width: 100%;
  margin-inline: auto;
  max-width: min(29.3333333333vw, 110px);
  max-width: min(29.3333333333vw, 6.875rem);
  aspect-ratio: 220/120;
}
@media screen and (min-width: 768px) {
  .p-program__tri img {
    transform: translate(0px, 10px);
    max-width: min(20.3703703704vw, 13.75rem);
  }
}

.p-program__midashi {
  font-size: min(7.4666666667vw, 28px);
  font-size: min(7.4666666667vw, 1.75rem);
  font-weight: 600;
  text-align: center;
  color: #0e967e;
  line-height: 1.1428571429;
  letter-spacing: 0em;
  margin-bottom: min(1.3333333333vw, 5px);
  margin-bottom: min(1.3333333333vw, 0.3125rem);
}
@media screen and (min-width: 768px) {
  .p-program__midashi {
    line-height: 1.125;
    letter-spacing: 0em;
    font-size: min(3.3333333333vw, 2.25rem);
    margin-bottom: min(2.2222222222vw, 1.5rem);
  }
}

.p-reason {
  background: linear-gradient(180deg, #ade981 0%, #01907e 100%);
  position: relative;
  z-index: 8;
}

.p-reason__wrapper {
  padding-bottom: min(10.6666666667vw, 40px);
  padding-bottom: min(10.6666666667vw, 2.5rem);
  margin-inline: min(5.3333333333vw, 20px);
  margin-inline: min(5.3333333333vw, 1.25rem);
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .p-reason__wrapper {
    padding-bottom: min(9.2592592593vw, 6.25rem);
    max-width: min(101.8518518519vw, 68.75rem);
    margin-inline: auto;
  }
}

.p-reason__boxes {
  grid-template-columns: 1fr;
  gap: min(10.6666666667vw, 40px);
  gap: min(10.6666666667vw, 2.5rem);
}
@media screen and (min-width: 768px) {
  .p-reason__boxes {
    grid-template-columns: 1fr 1fr 1fr;
    gap: min(1.8518518519vw, 1.25rem);
  }
}
@media screen and (max-width: 769px) {
  .p-reason__boxes {
    max-width: 20.9375rem;
    margin-inline: auto;
  }
}

.p-reason__box {
  border-radius: 0.75rem;
  background: #fff;
  position: relative;
  padding-top: min(5.3333333333vw, 20px);
  padding-top: min(5.3333333333vw, 1.25rem);
}
@media screen and (min-width: 768px) {
  .p-reason__box {
    padding-top: min(1.8518518519vw, 1.25rem);
  }
}

.p-reason__title_box {
  background: white;
  padding-top: min(5.392vw, 20.22px);
  padding-top: min(5.392vw, 1.26375rem);
  padding-bottom: min(21.0666666667vw, 79px);
  padding-bottom: min(21.0666666667vw, 4.9375rem);
  position: relative;
  text-align: center;
  margin-bottom: min(16.5333333333vw, 62px);
  margin-bottom: min(16.5333333333vw, 3.875rem);
  -webkit-clip-path: polygon(0 0, 100% 0%, 100% 80%, 50% 100%, 0 80%);
  clip-path: polygon(0 0, 100% 0%, 100% 80%, 50% 100%, 0 80%);
}
@media screen and (min-width: 768px) {
  .p-reason__title_box {
    padding-top: min(1.8722222222vw, 1.26375rem);
    padding-bottom: min(10.462962963vw, 7.0625rem);
    max-width: min(64.8148148148vw, 43.75rem);
    margin-inline: auto;
    -webkit-clip-path: polygon(0 0, 100% 0%, 100% 75%, 50% 100%, 0 75%);
    clip-path: polygon(0 0, 100% 0%, 100% 75%, 50% 100%, 0 75%);
  }
}
@media screen and (max-width: 769px) {
  .p-reason__title_box {
    margin-bottom: max(6.4vw, 1.5rem);
    margin-inline: max(-5.3333333333vw, -1.25rem);
    max-width: min(100vw, 23.4375rem);
  }
}
@media (max-width: 768px) and (min-width: 376px) {
  .p-reason__title_box {
    margin-inline: auto;
    max-width: 23.4375rem;
  }
}

.p-reason__title_box::before {
  content: "";
  position: absolute;
  width: 100%;
  display: block;
  aspect-ratio: 700/95;
  bottom: min(2.4vw, 9px);
  bottom: min(2.4vw, 0.5625rem);
  left: 0;
  background: url("../images/reason_parts_sp.png") bottom center no-repeat;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .p-reason__title_box::before {
    bottom: min(1.8518518519vw, 1.25rem);
    aspect-ratio: 1050/142;
    bottom: min(1.8518518519vw, 1.25rem);
    background: url("../images/reason_parts_pc.png") bottom center no-repeat;
    max-width: min(64.8148148148vw, 43.75rem);
    background-size: contain;
  }
}

.p-reason__subtitle {
  font-size: min(3.7333333333vw, 14px);
  font-size: min(3.7333333333vw, 0.875rem);
  font-weight: 600;
  text-align: center;
  color: #0e967e;
  line-height: 2.5714285714;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-reason__subtitle {
    font-size: min(1.2962962963vw, 0.875rem);
  }
}

.p-reason__titles {
  display: flex;
  flex-direction: column;
}

.p-reason__title {
  position: relative;
  font-size: min(7.4666666667vw, 28px);
  font-size: min(7.4666666667vw, 1.75rem);
  font-weight: 600;
  text-align: center;
  color: #0e967e;
  line-height: 1.2857142857;
  letter-spacing: 0em;
  display: inline-block;
  margin-inline: auto;
  z-index: 4;
}
@media screen and (min-width: 768px) {
  .p-reason__title {
    line-height: 1.1666666667;
    letter-spacing: 0em;
    font-size: min(4.4444444444vw, 3rem);
  }
}

.p-reason__title.c-underline::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 13px;
  height: 0.8125rem;
  position: absolute;
  bottom: 0;
  left: 0;
  background: #f8fea1;
  z-index: -1;
}

.p-reason__box__numbers {
  position: absolute;
  right: min(2.6666666667vw, 10px);
  right: min(2.6666666667vw, 0.625rem);
  top: max(-10.1333333333vw, -38px);
  top: max(-10.1333333333vw, -2.375rem);
  font-size: min(21.3333333333vw, 80px);
  font-size: min(21.3333333333vw, 5rem);
  font-weight: 600;
  text-align: center;
  color: #a5deb7;
  line-height: 1;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-reason__box__numbers {
    right: min(0.9768518519vw, 0.659375rem);
    top: max(-3.7037037037vw, -2.5rem);
    font-size: min(7.4074074074vw, 5rem);
  }
}

.p-reason__box__title {
  background: #f6f1bb;
  font-size: min(6.4vw, 24px);
  font-size: min(6.4vw, 1.5rem);
  font-weight: 500;
  text-align: center;
  color: #222;
  line-height: 1.4583333333;
  letter-spacing: 0em;
  padding: min(1.0666666667vw, 4px);
  padding: min(1.0666666667vw, 0.25rem);
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  position: relative;
  z-index: 4;
}
@media screen and (min-width: 768px) {
  .p-reason__box__title {
    font-size: min(2.2222222222vw, 1.5rem);
    padding: min(0.3703703704vw, 0.25rem);
  }
}

.p-reason__box__title + .p-reason__box__title {
  margin-top: min(2.1333333333vw, 8px);
  margin-top: min(2.1333333333vw, 0.5rem);
}
@media screen and (min-width: 768px) {
  .p-reason__box__title + .p-reason__box__title {
    margin-top: min(0.7407407407vw, 0.5rem);
  }
}

.p-reason__box__img {
  width: 100%;
  max-width: min(78.6666666667vw, 295px);
  max-width: min(78.6666666667vw, 18.4375rem);
  margin-inline: auto;
  position: relative;
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .p-reason__box__img {
    margin-top: max(-1.6666666667vw, -1.125rem);
    max-width: min(28.8092592593vw, 19.44625rem);
  }
}
@media screen and (max-width: 769px) {
  .p-reason__box__img {
    margin-top: max(-5.3333333333vw, -1.25rem);
  }
}

.p-reason__box__img img {
  max-width: min(78.6666666667vw, 295px);
  max-width: min(78.6666666667vw, 18.4375rem);
  aspect-ratio: 295/160;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
  width: 100%;
  height: auto;
}
@media screen and (min-width: 768px) {
  .p-reason__box__img img {
    aspect-ratio: 295/151;
    -o-object-fit: cover;
    object-fit: cover;
    max-width: min(28.8092592593vw, 19.44625rem);
  }
}

.p-reason__box__conts {
  gap: min(1.0666666667vw, 4px);
  gap: min(1.0666666667vw, 0.25rem);
  transform: translateY(max(-5.3333333333vw, -1.25rem));
  justify-content: center;
  position: relative;
  z-index: 5;
}
@media screen and (min-width: 768px) {
  .p-reason__box__conts {
    margin-bottom: max(-0.1851851852vw, -0.125rem);
    gap: min(0.3703703704vw, 0.25rem);
    transform: translate(max(-0.462962963vw, -0.3125rem), max(-1.7592592593vw, -1.1875rem));
  }
}

.p-reason__box__cont {
  flex-direction: column;
  background: linear-gradient(180deg, #ade981 0%, #01907e 100%);
  width: min(18.6666666667vw, 70px);
  width: min(18.6666666667vw, 4.375rem);
  border-radius: 50%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1/1;
  height: auto;
  font-size: min(3.2vw, 12px);
  font-size: min(3.2vw, 0.75rem);
  font-weight: 600;
  text-align: center;
  color: #fff;
  line-height: 1.6666666667;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-reason__box__cont {
    width: min(6.4814814815vw, 4.375rem);
    font-size: min(1.1111111111vw, 0.75rem);
  }
}

.p-reason__box__cont.c-middle {
  font-size: min(3.2vw, 12px);
  font-size: min(3.2vw, 0.75rem);
  font-weight: 600;
  text-align: center;
  color: #fff;
  line-height: 1.4166666667;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-reason__box__cont.c-middle {
    line-height: 1.6666666667;
    letter-spacing: 0em;
    width: min(6.4814814815vw, 4.375rem);
    font-size: min(1.1111111111vw, 0.75rem);
  }
}

.p-reason__box__cont.c-narrow {
  line-height: 1.1666666667;
  letter-spacing: 0em;
}

.p-reason__box__conts .p-reason__box__cont span.c-small {
  font-size: min(0.9259259259vw, 10px);
  font-size: min(0.9259259259vw, 0.625rem);
}
@media screen and (max-width: 769px) {
  .p-reason__box__conts .p-reason__box__cont span.c-small {
    font-size: min(2.6666666667vw, 0.625rem);
  }
}

.p-reason__box__cont.c-small {
  font-size: min(3.2vw, 12px);
  font-size: min(3.2vw, 0.75rem);
  font-weight: 600;
  text-align: center;
  color: #fff;
  line-height: 1.6666666667;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-reason__box__cont.c-small {
    font-size: min(1.1111111111vw, 0.75rem);
  }
}

.p-reason__box__cont span {
  font-size: min(2.6666666667vw, 10px);
  font-size: min(2.6666666667vw, 0.625rem);
  font-weight: 600;
  text-align: center;
  color: #fff;
  line-height: 1.3;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-reason__box__cont span {
    font-size: min(0.9259259259vw, 0.625rem);
  }
}

.p-reason__box__cont.c-narrow span {
  font-size: min(2.1333333333vw, 8px);
  font-size: min(2.1333333333vw, 0.5rem);
  font-weight: 600;
  text-align: center;
  color: #fff;
  line-height: 1.375;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-reason__box__cont.c-narrow span {
    font-size: min(0.9259259259vw, 0.625rem);
  }
}

.p-support {
  position: relative;
  background-color: #eeeddb;
  overflow-x: hidden;
}

.p-support__wrapper {
  position: relative;
  padding-top: min(12.7777777778vw, 138px);
  padding-top: min(12.7777777778vw, 8.625rem);
  padding-bottom: min(13.8888888889vw, 150px);
  padding-bottom: min(13.8888888889vw, 9.375rem);
  max-width: min(101.8518518519vw, 1100px);
  max-width: min(101.8518518519vw, 68.75rem);
  margin-inline: auto;
}
@media screen and (max-width: 769px) {
  .p-support__wrapper {
    padding-top: min(10.6666666667vw, 2.5rem);
    padding-bottom: min(63.2vw, 14.8125rem);
    margin-inline: auto;
    max-width: min(100vw, 23.4375rem);
  }
}

.p-support__wrapper::before {
  background: url("../images/support_bg_sp.png") center center no-repeat;
  background-size: contain !important;
  content: "";
  position: absolute;
  aspect-ratio: 533/336;
  width: min(94.6666666667vw, 355px);
  width: min(94.6666666667vw, 22.1875rem);
  height: auto;
}
@media screen and (max-width: 769px) {
  .p-support__wrapper::before {
    bottom: min(10.6666666667vw, 2.5rem);
    transform: translateX(50%);
    right: calc(50% - 0.625rem);
  }
}
@media screen and (min-width: 768px) {
  .p-support__wrapper::before {
    right: 0;
    top: min(3.9814814815vw, 2.6875rem);
    background: url("../images/support_bg_pc.png") center center no-repeat;
    aspect-ratio: 644/440;
    width: min(59.6296296296vw, 40.25rem);
    height: auto;
  }
}

.p-support__title_box {
  position: relative;
  margin-bottom: min(6.4vw, 24px);
  margin-bottom: min(6.4vw, 1.5rem);
  display: flex;
  flex-direction: column;
}
@media screen and (max-width: 769px) {
  .p-support__title_box {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media screen and (min-width: 768px) {
  .p-support__title_box {
    margin-bottom: min(2.962962963vw, 2rem);
  }
}

@media screen and (max-width: 769px) {
  .p-support__title_box::before {
    background: url("../images/support_word.svg") center center no-repeat;
    background-size: contain;
    content: "";
    position: absolute;
    top: 48%;
    transform: translateY(-50%);
    right: max(-17.8666666667vw, -4.1875rem);
    width: min(35.7333333333vw, 8.375rem);
    height: auto;
    aspect-ratio: 96/42;
  }
}

.p-support__att {
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 500;
  text-align: left;
  color: #222;
  line-height: 2;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-support__att {
    font-size: min(1.4814814815vw, 1rem);
    max-width: min(39.8148148148vw, 26.875rem);
  }
}
@media (max-width: 1100px) {
  .p-support__att {
    margin-left: min(0.9259259259vw, 0.625rem);
  }
}
@media screen and (max-width: 769px) {
  .p-support__att {
    letter-spacing: 0.04em;
    margin-left: min(5.3333333333vw, 1.25rem);
    margin-right: min(5.3333333333vw, 1.25rem);
  }
}

.p-support__title {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  background: #fff;
  display: inline-block;
  padding: min(1.0666666667vw, 4px);
  padding: min(1.0666666667vw, 0.25rem);
  font-size: min(6.4vw, 24px);
  font-size: min(6.4vw, 1.5rem);
  font-weight: 600;
  text-align: left;
  color: #222;
  line-height: 1;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-support__title {
    padding: min(0.6796296296vw, 0.45875rem) min(0.5814814815vw, 0.3925rem);
    font-size: min(4.4444444444vw, 3rem);
  }
}

.p-support__title + .p-support__title {
  margin-top: min(2.1333333333vw, 8px);
  margin-top: min(2.1333333333vw, 0.5rem);
}
@media screen and (min-width: 768px) {
  .p-support__title + .p-support__title {
    margin-top: min(1.2648148148vw, 0.85375rem);
  }
}

.p-voice {
  background-color: #c6e6c9;
  position: relative;
  z-index: 2;
}

.p-voice::before {
  content: "";
  background: url("../images/voice_bg.png") bottom center no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  aspect-ratio: 563/334;
  max-width: 100%;
  width: 100%;
  max-height: min(71.7333333333vw, 269px);
  max-height: min(71.7333333333vw, 16.8125rem);
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .p-voice::before {
    aspect-ratio: 2160/578;
    max-width: 100%;
    height: min(35vw, 23.625rem);
    max-height: none;
    max-height: initial;
    background: url("../images/voice_bg_pc.png") bottom center no-repeat;
    background-size: contain;
  }
}
@media screen and (min-width: 1441px) {
  .p-voice::before {
    background-size: cover;
    height: min(40.2777777778vw, 27.1875rem);
  }
}

.p-voice__wrapper {
  position: relative;
  margin-inline: min(5.3333333333vw, 20px);
  margin-inline: min(5.3333333333vw, 1.25rem);
  padding-top: min(5.8666666667vw, 22px);
  padding-top: min(5.8666666667vw, 1.375rem);
  padding-bottom: min(8vw, 30px);
  padding-bottom: min(8vw, 1.875rem);
  overflow: hidden;
  z-index: 3;
}
@media screen and (min-width: 768px) {
  .p-voice__wrapper {
    margin-inline: auto;
    max-width: min(106.4814814815vw, 71.875rem);
    padding-bottom: min(9.2592592593vw, 6.25rem);
    padding-top: min(7.4074074074vw, 5rem);
  }
}
.p-voice__att {
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 400;
  text-align: center;
  color: #222;
  line-height: 2;
  letter-spacing: 0em;
  margin-bottom: min(8.5333333333vw, 32px);
  margin-bottom: min(8.5333333333vw, 2rem);
}
@media screen and (min-width: 768px) {
  .p-voice__att {
    font-size: min(1.4814814815vw, 1rem);
    margin-bottom: min(3.4259259259vw, 2.3125rem);
  }
}

.p-voice__title_box {
  position: relative;
  text-align: center;
  margin-bottom: min(14.3518518519vw, 155px);
  margin-bottom: min(14.3518518519vw, 9.6875rem);
}
@media screen and (max-width: 769px) {
  .p-voice__title_box {
    margin-bottom: max(25.6vw, 6rem);
  }
}

.p-voice__subtitle {
  font-size: min(3.7333333333vw, 14px);
  font-size: min(3.7333333333vw, 0.875rem);
  font-weight: 600;
  text-align: center;
  color: #0e967e;
  line-height: 2.5714285714;
  letter-spacing: 0em;
  margin-bottom: min(0vw, 0px);
  margin-bottom: min(0vw, 0rem);
}
@media screen and (min-width: 768px) {
  .p-voice__subtitle {
    font-size: min(1.2962962963vw, 0.875rem);
    margin-bottom: min(1.1111111111vw, 0.75rem);
  }
}

.p-voice__titles {
  display: flex;
  flex-direction: column;
}

.p-voice__title {
  position: relative;
  font-size: min(7.4666666667vw, 28px);
  font-size: min(7.4666666667vw, 1.75rem);
  font-weight: 600;
  text-align: center;
  color: #0e967e;
  line-height: 1.2857142857;
  letter-spacing: 0em;
  display: inline-block;
  margin-inline: auto;
  z-index: 4;
}
@media screen and (min-width: 768px) {
  .p-voice__title {
    line-height: 1.0416666667;
    letter-spacing: 0em;
    font-size: min(4.4444444444vw, 3rem);
  }
}

.p-voice__title.c-underline::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 13px;
  height: 0.8125rem;
  position: absolute;
  bottom: 0;
  left: 0;
  background: #f8fea1;
  z-index: -1;
}

@media screen and (max-width: 769px) {
  .p-voice__title:has(span.utils-hidden-mobile)::before {
    display: none;
  }
}

@media screen and (max-width: 769px) {
  .p-voice__title:not(:has(span.utils-hidden-mobile)) {
    font-size: min(10.1333333333vw, 2.375rem);
    line-height: 1.38;
  }
}

.slick-slider .slick-track {
  display: flex;
}
@media screen and (min-width: 768px) {
  .slick-slider .slick-track {
    gap: min(3.7037037037vw, 2.5rem);
  }
}

.slick-slider .slick-slide {
  height: auto;
  height: initial;
  float: none;
  float: initial;
}

.slick-slider .slick-track::before,
.slick-slider .slick-track::after {
  display: none;
}

.slick-slider .slick-slide > div {
  height: 100%;
}

.p-voice__cont_boxes {
  display: flex;
  gap: min(6.4vw, 24px);
  gap: min(6.4vw, 1.5rem);
}
@media screen and (min-width: 768px) {
  .p-voice__cont_boxes {
    gap: min(3.7037037037vw, 2.5rem);
  }
}

.p-voice__cont_boxes + .p-voice__cont_boxes {
  margin-top: min(6.4vw, 24px);
  margin-top: min(6.4vw, 1.5rem);
  margin-bottom: min(34.9333333333vw, 131px);
  margin-bottom: min(34.9333333333vw, 8.1875rem);
}
@media screen and (min-width: 768px) {
  .p-voice__cont_boxes + .p-voice__cont_boxes {
    margin-top: min(2.2222222222vw, 1.5rem);
    margin-bottom: min(23.3675925926vw, 15.773125rem);
  }
}

.p-voice__cont_boxes.c-grid-third {
  gap: min(6.4vw, 24px);
  gap: min(6.4vw, 1.5rem);
}
@media screen and (min-width: 768px) {
  .p-voice__cont_boxes.c-grid-third {
    grid-template-columns: 1fr 1fr 1fr;
    gap: min(2.2222222222vw, 1.5rem);
  }
}

.p-voice__cont_box {
  border: 1px solid #0e967e;
  text-align: center;
  height: inherit;
  border-radius: 0.75rem;
  background: #fff;
  padding-inline: min(5.2453333333vw, 19.67px);
  padding-inline: min(5.2453333333vw, 1.229375rem);
  padding-bottom: min(6.1333333333vw, 23px);
  padding-bottom: min(6.1333333333vw, 1.4375rem);
}
@media screen and (min-width: 768px) {
  .p-voice__cont_box {
    padding-inline: min(1.8518518519vw, 1.25rem);
    padding-bottom: min(1.8518518519vw, 1.25rem);
  }
}
@media (max-width: 768px) and (min-width: 376px) {
  .p-voice__cont_box {
    margin-inline: auto;
    max-width: min(133.3333333333vw, 31.25rem);
  }
}

@media (max-width: 768px) and (min-width: 376px) {
  .p-voice__wrapper .slick-slider .slick-slide {
    text-align: center;
  }
}

.p-voice__cont_midashi {
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 600;
  text-align: center;
  color: #fff;
  line-height: 2;
  letter-spacing: 0em;
  margin-bottom: min(3.2vw, 12px);
  margin-bottom: min(3.2vw, 0.75rem);
  padding-inline: min(1.0666666667vw, 4px);
  padding-inline: min(1.0666666667vw, 0.25rem);
  background: #0e967e;
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .p-voice__cont_midashi {
    line-height: 2.6666666667;
    letter-spacing: 0em;
    font-size: min(1.1111111111vw, 0.75rem);
    margin-bottom: min(1.1111111111vw, 0.75rem);
    padding: min(0.3703703704vw, 0.25rem);
  }
}
@media screen and (max-width: 769px) {
  .p-voice__cont_midashi {
    transform: translate(max(-0.8vw, -0.1875rem), max(-0.5333333333vw, -0.125rem));
  }
}

.p-voice__cont_title {
  background: #0e967e;
  position: relative;
  padding: min(2.6666666667vw, 10px) min(5.3333333333vw, 20px);
  padding: min(2.6666666667vw, 0.625rem) min(5.3333333333vw, 1.25rem);
  font-size: min(5.3333333333vw, 20px);
  font-size: min(5.3333333333vw, 1.25rem);
  font-weight: 600;
  text-align: left;
  color: #fff;
  line-height: 1.6;
  letter-spacing: 0em;
  margin-inline: max(-5.3333333333vw, -20px);
  margin-inline: max(-5.3333333333vw, -1.25rem);
  margin-bottom: min(6.9253333333vw, 25.97px);
  margin-bottom: min(6.9253333333vw, 1.623125rem);
}
@media screen and (min-width: 768px) {
  .p-voice__cont_title {
    text-align: center;
    margin-inline: max(-1.8518518519vw, -1.25rem);
    padding: min(0.9259259259vw, 0.625rem) min(1.8518518519vw, 1.25rem);
    font-size: min(1.8518518519vw, 1.25rem);
    margin-bottom: min(2.4046296296vw, 1.623125rem);
  }
}
@media screen and (max-width: 769px) {
  .p-voice__cont_title {
    line-height: 1.49;
    letter-spacing: 0.053em;
    padding-right: min(0.5333333333vw, 0.125rem);
  }
}

.p-voice__cont_title::before {
  content: "";
  position: absolute;
  bottom: max(-2.2222222222vw, -24px);
  bottom: max(-2.2222222222vw, -1.5rem);
  left: 50%;
  transform: translateX(-50%);
  border-top: 12px solid #0e967e;
  border-bottom: 12px solid transparent;
  border-left: 12px solid transparent;
  border-right: 12px solid transparent;
}
@media screen and (max-width: 769px) {
  .p-voice__cont_title::before {
    bottom: max(-6.1333333333vw, -1.4375rem);
  }
}

.p-voice__cont_desc {
  border: 20px;
  border: 1.25rem;
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 500;
  text-align: center;
  color: #222;
  line-height: 2;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-voice__cont_desc {
    font-size: min(1.4814814815vw, 1rem);
  }
}

.p-voice__cont_img {
  max-width: min(37.3333333333vw, 140px);
  max-width: min(37.3333333333vw, 8.75rem);
  margin-inline: auto;
  margin-bottom: min(4.68vw, 17.55px);
  margin-bottom: min(4.68vw, 1.096875rem);
}
@media screen and (min-width: 768px) {
  .p-voice__cont_img {
    max-width: min(12.962962963vw, 8.75rem);
    margin-bottom: min(1.4814814815vw, 1rem);
  }
}

.p-voice__cont_img img {
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
  width: 100%;
  margin-inline: auto;
  max-width: min(37.3333333333vw, 140px);
  max-width: min(37.3333333333vw, 8.75rem);
  aspect-ratio: 140/140;
  height: auto;
}
@media screen and (min-width: 768px) {
  .p-voice__cont_img img {
    max-width: min(12.962962963vw, 8.75rem);
  }
}

.p-voice__cont_info {
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 600;
  text-align: center;
  color: #222;
  line-height: 2;
  letter-spacing: 0em;
  margin-bottom: min(6.4vw, 24px);
  margin-bottom: min(6.4vw, 1.5rem);
}
@media screen and (min-width: 768px) {
  .p-voice__cont_info {
    font-size: min(1.4814814815vw, 1rem);
    margin-bottom: min(2.2222222222vw, 1.5rem);
  }
}

.p-voice__cont_desc {
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 400;
  text-align: left;
  color: #222;
  line-height: 2;
  letter-spacing: 0.019em;
}
@media screen and (min-width: 768px) {
  .p-voice__cont_desc {
    font-size: min(1.4814814815vw, 1rem);
  }
}

.p-voice__cont_boxes .slick-list,
.p-buy__cont_boxes .slick-list {
  margin-bottom: min(1.0666666667vw, 4px);
  margin-bottom: min(1.0666666667vw, 0.25rem);
}
@media screen and (min-width: 768px) {
  .p-voice__cont_boxes .slick-list,
.p-buy__cont_boxes .slick-list {
    margin-bottom: min(1.8518518519vw, 1.25rem);
  }
}

.p-voice__wrapper .slick-dots li button:before,
.p-buy__wrapper .slick-dots li button:before {
  font-size: min(3.7333333333vw, 14px);
  font-size: min(3.7333333333vw, 0.875rem);
}
@media screen and (min-width: 768px) {
  .p-voice__wrapper .slick-dots li button:before,
.p-buy__wrapper .slick-dots li button:before {
    font-size: min(1.1111111111vw, 0.75rem);
  }
}

.p-voice__wrapper .slick-dots li,
.p-buy__wrapper .slick-dots li {
  margin: 0 max(-0.2666666667vw, -1px);
  margin: 0 max(-0.2666666667vw, -0.0625rem);
}
@media screen and (min-width: 768px) {
  .p-voice__wrapper .slick-dots li,
.p-buy__wrapper .slick-dots li {
    margin: 0 max(-0.0925925926vw, -0.0625rem);
  }
}

.p-voice__wrapper .slick-dots li button:before,
.p-buy__wrapper .slick-dots li button:before {
  color: #fff;
  opacity: 1;
}

.p-voice__wrapper .slick-dots li.slick-active button:before,
.p-buy__wrapper .slick-dots li.slick-active button:before {
  color: #0e967e;
}

.p-worries {
  background: linear-gradient(180deg, #ade981 0%, #01907e 100%);
  position: relative;
  z-index: 8;
}

.p-worries__wrapper {
  padding-bottom: min(10.6666666667vw, 40px);
  padding-bottom: min(10.6666666667vw, 2.5rem);
  margin-inline: auto;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .p-worries__wrapper {
    padding-bottom: min(9.2592592593vw, 6.25rem);
    max-width: min(64.8148148148vw, 43.75rem);
  }
}

.p-worries__title_box {
  background: rgba(255, 255, 255, .75);
  padding-top: min(1.5740740741vw, 17px);
  padding-top: min(1.5740740741vw, 1.0625rem);
  padding-bottom: min(10.0925925926vw, 109px);
  padding-bottom: min(10.0925925926vw, 6.8125rem);
  position: relative;
  text-align: center;
  margin-bottom: min(1.1111111111vw, 12px);
  margin-bottom: min(1.1111111111vw, 0.75rem);
  max-width: min(64.8148148148vw, 700px);
  max-width: min(64.8148148148vw, 43.75rem);
  margin-inline: auto;
  -webkit-clip-path: polygon(0 0, 100% 0%, 100% 73%, 50% 100%, 0 73%);
  clip-path: polygon(0 0, 100% 0%, 100% 73%, 50% 100%, 0 73%);
}
@media screen and (max-width: 769px) {
  .p-worries__title_box {
    padding-bottom: min(21.3333333333vw, 5rem);
    padding-top: min(5.3333333333vw, 1.25rem);
    margin-bottom: max(-15.7333333333vw, -3.6875rem);
    -webkit-clip-path: polygon(0 0, 100% 0%, 100% 80%, 50% 100%, 0 80%);
    clip-path: polygon(0 0, 100% 0%, 100% 80%, 50% 100%, 0 80%);
    width: 100%;
    margin-inline: auto;
    max-width: min(100vw, 23.4375rem);
  }
}

.p-worries__title_box::before {
  content: "";
  position: absolute;
  width: 100%;
  display: block;
  aspect-ratio: 700/95;
  bottom: min(1.8518518519vw, 20px);
  bottom: min(1.8518518519vw, 1.25rem);
  left: 0;
  background: url("../images/reason_parts_sp.png") bottom center no-repeat;
  background-size: cover;
}
@media screen and (min-width: 768px) {
  .p-worries__title_box::before {
    aspect-ratio: 1050/142;
    background: url("../images/reason_parts_pc.png") bottom center no-repeat;
    max-width: min(64.8148148148vw, 43.75rem);
    background-size: contain;
  }
}

.p-worries__subtitle {
  font-size: min(3.7333333333vw, 14px);
  font-size: min(3.7333333333vw, 0.875rem);
  font-weight: 600;
  text-align: center;
  color: #0e967e;
  line-height: 2.5714285714;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-worries__subtitle {
    font-size: min(1.2962962963vw, 0.875rem);
  }
}

.p-worries__titles {
  display: flex;
  flex-direction: column;
}

.p-worries__title {
  position: relative;
  font-size: min(7.4666666667vw, 28px);
  font-size: min(7.4666666667vw, 1.75rem);
  font-weight: 600;
  text-align: center;
  color: #0e967e;
  line-height: 1.2857142857;
  letter-spacing: 0em;
  display: inline-block;
  margin-inline: auto;
  z-index: 4;
}
@media screen and (min-width: 768px) {
  .p-worries__title {
    line-height: 1.1666666667;
    letter-spacing: 0em;
    font-size: min(4.4444444444vw, 3rem);
  }
}

.p-worries__title.c-underline::before {
  content: "";
  display: inline-block;
  width: 100%;
  height: 13px;
  height: 0.8125rem;
  position: absolute;
  bottom: 0;
  left: 0;
  background: #f8fea1;
  z-index: -1;
}

.p-worries__img {
  width: 100%;
  margin-inline: auto;
  max-width: min(93.04vw, 348.9px);
  max-width: min(93.04vw, 21.80625rem);
  transform: translateY(5px);
  position: relative;
  z-index: 6;
}
@media screen and (min-width: 768px) {
  .p-worries__img {
    z-index: -1;
    max-width: min(47.8175925926vw, 32.276875rem);
  }
}

.p-worries__img img {
  max-width: min(93.04vw, 348.9px);
  max-width: min(93.04vw, 21.80625rem);
  width: 100%;
  aspect-ratio: 348.9/158.28;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
}
@media screen and (min-width: 768px) {
  .p-worries__img img {
    max-width: min(47.8175925926vw, 32.276875rem);
    width: 100%;
    aspect-ratio: 516.43/234.28;
  }
}

.p-worries__lists {
  margin-bottom: min(6.4vw, 24px);
  margin-bottom: min(6.4vw, 1.5rem);
}
@media screen and (min-width: 768px) {
  .p-worries__lists {
    margin-bottom: min(2.2222222222vw, 1.5rem);
  }
}
@media screen and (max-width: 769px) {
  .p-worries__lists {
    margin-inline: min(5.3333333333vw, 1.25rem);
  }
}

.p-worries__list {
  background: #fff;
  padding-block: min(3.2vw, 12px) min(2.9333333333vw, 11px);
  padding-block: min(3.2vw, 0.75rem) min(2.9333333333vw, 0.6875rem);
  padding-left: min(2.6666666667vw, 10px);
  padding-left: min(2.6666666667vw, 0.625rem);
  gap: min(2.6666666667vw, 10px);
  gap: min(2.6666666667vw, 0.625rem);
  font-size: min(3.7333333333vw, 14px);
  font-size: min(3.7333333333vw, 0.875rem);
  font-weight: 500;
  text-align: left;
  color: #222;
  line-height: 1.4285714286;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-worries__list {
    gap: min(1.0185185185vw, 0.6875rem);
    padding-block: min(1.0185185185vw, 0.6875rem);
    padding-left: min(0.9259259259vw, 0.625rem);
    line-height: 1.3333333333;
    letter-spacing: 0em;
    font-size: min(1.6666666667vw, 1.125rem);
  }
}

.p-worries__list + .p-worries__list {
  margin-top: min(2.3733333333vw, 8.9px);
  margin-top: min(2.3733333333vw, 0.55625rem);
}
@media screen and (min-width: 768px) {
  .p-worries__list + .p-worries__list {
    margin-top: min(1.1111111111vw, 0.75rem);
  }
}

.p-worries__list--check {
  max-width: min(6.4vw, 24px);
  max-width: min(6.4vw, 1.5rem);
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-worries__list--check {
    max-width: min(2.2222222222vw, 1.5rem);
  }
}

.p-worries__list--check img {
  max-width: min(6.4vw, 24px);
  max-width: min(6.4vw, 1.5rem);
  width: 100%;
  aspect-ratio: 1/1;
  -o-object-fit: contain;
  object-fit: contain;
  -o-object-position: center;
  object-position: center;
}
@media screen and (min-width: 768px) {
  .p-worries__list--check img {
    max-width: min(2.2222222222vw, 1.5rem);
  }
}

.p-worries__list__att {
  font-size: min(4.2666666667vw, 16px);
  font-size: min(4.2666666667vw, 1rem);
  font-weight: 500;
  text-align: left;
  color: #fff;
  line-height: 2;
  letter-spacing: 0em;
}
@media screen and (min-width: 768px) {
  .p-worries__list__att {
    font-size: min(1.4814814815vw, 1rem);
  }
}
@media screen and (max-width: 769px) {
  .p-worries__list__att {
    margin-inline: min(5.3333333333vw, 1.25rem);
    letter-spacing: 0.04em;
  }
}