@charset "UTF-8";
/* ---------------------------------------------
*   l-wrapper
--------------------------------------------- */
/* ---------------------------------------------
*   l-header
--------------------------------------------- */
.l-header {
  height: calc(var(--fixed-header-height) * 1px);
}

/* ---------------------------------------------
*   c-kv__link
--------------------------------------------- */
.c-kv__link {
  display: flex;
  justify-content: space-between;
  margin-inline: auto;
  max-width: 292px;
}
@media screen and (max-width: 1023px) {
  .c-kv__link {
    max-width: 280px;
    padding-inline: 10px;
  }
}
/* ---------------------------------------------
*   c-acc-faq
--------------------------------------------- */
.c-acc-faq {
  margin-inline: auto;
  max-width: 980px;
}
.c-acc-faq__item {
  background-color: var(--color-gray-1);
  border-radius: 10px;
  position: relative;
  text-align: justify;
  transition: background-color ease-out 0.3s;
}
.c-acc-faq__item + .c-acc-faq__item {
  margin-top: 10px;
}
.c-acc-faq__item:has(.c-acc-faq__head:hover) {
  background-color: var(--color-white-4);
}
.c-acc-faq__head {
  align-items: center;
  border-radius: 10px 10px 0 0;
  display: flex;
  justify-content: space-between;
  padding: 16px 30px;
  transition: background-color ease-out 0.3s;
  width: 100%;
}
@media screen and (max-width: 1023px) {
  .c-acc-faq__head {
    gap: 18px;
    padding: 18px 12px 18px 15px;
  }
}
.c-acc-faq__head-left {
  align-items: center;
  display: flex;
  gap: 10px;
}
@media screen and (max-width: 1023px) {
  .c-acc-faq__head-left {
    gap: 7px;
  }
}
.c-acc-faq__head-q {
  color: var(--color-green-1);
  flex-shrink: 0;
  font-family: var(--ff-ls-eb);
  font-size: calc(30 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 1023px) {
  .c-acc-faq__head-q {
    font-size: calc(24 / var(--root-fz) * 1rem);
  }
}
.c-acc-faq__head-txt {
  color: var(--color-black-1);
  display: block;
  font-family: var(--ff-ls-b);
  font-size: calc(18 / var(--root-fz) * 1rem);
  text-align: left;
}
@media screen and (max-width: 1023px) {
  .c-acc-faq__head-txt {
    font-size: calc(14 / var(--root-fz) * 1rem);
    line-height: 1.5714285714;
  }
}
.c-acc-faq__head-arw {
  background: url(../img/icon_arw_faq.svg) no-repeat center center/contain;
  flex-shrink: 0;
  height: 11px;
  transform: rotate(180deg);
  transition: transform 0.3s;
  width: 20px;
}
@media screen and (max-width: 1023px) {
  .c-acc-faq__head-arw {
    height: 7px;
    width: 13px;
  }
}
.c-acc-faq__item.is-open .c-acc-faq__head-arw {
  transform: rotate(0);
}
.c-acc-faq__body {
  margin-top: -5px;
}
.c-acc-faq__body-inner {
  align-items: center;
  display: flex;
  gap: 14px;
  padding: 0 55px 25px 30px;
}
@media screen and (max-width: 1023px) {
  .c-acc-faq__body-inner {
    gap: 10px;
    padding: 6px 40px 16px 15px;
  }
}
.c-acc-faq__body-a {
  color: var(--color-red-1);
  flex-shrink: 0;
  font-family: var(--ff-ls-eb);
  font-size: calc(30 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 1023px) {
  .c-acc-faq__body-a {
    font-size: calc(24 / var(--root-fz) * 1rem);
  }
}
.c-acc-faq__body-txt {
  font-size: calc(14 / var(--root-fz) * 1rem);
  line-height: 1.5714285714;
}

/* ---------------------------------------------
*   c-block-1
--------------------------------------------- */
.c-block-1__slider {
  margin-top: 20px;
  padding-block: 20px;
}
@media screen and (max-width: 1023px) {
  .c-block-1__slider {
    margin-top: 6px;
    padding-block: 17px;
  }
}
.c-block-1__txt-wrap {
  margin-top: 8px;
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .c-block-1__txt-wrap {
    margin-top: 10px;
  }
}
.c-block-1__txt {
  font-family: var(--ff-ls-b);
  font-size: calc(26 / var(--root-fz) * 1rem);
  line-height: 1.9230769231;
}
@media screen and (max-width: 1023px) {
  .c-block-1__txt {
    font-size: calc(18 / var(--root-fz) * 1rem);
    letter-spacing: -0.36px;
    line-height: 1.8333333333;
  }
}
.c-block-1__txt--green {
  color: var(--color-green-1);
  font-family: var(--ff-ls-eb);
}
.c-block-1__txt--large {
  font-size: calc(42 / var(--root-fz) * 1rem);
  line-height: 1.1904761905;
}
@media screen and (max-width: 1023px) {
  .c-block-1__txt--large {
    font-size: calc(26 / var(--root-fz) * 1rem);
    letter-spacing: -0.52px;
    line-height: 1.2692307692;
  }
}
@media screen and (max-width: 1023px) {
  .c-block-1__txt--large-sp {
    font-size: calc(26 / var(--root-fz) * 1rem);
    letter-spacing: -0.52px;
    line-height: 1.2692307692;
  }
}
.c-block-1__txt sup {
  font-size: calc(17 / var(--root-fz) * 1rem);
  position: relative;
  top: 9px;
}
@media screen and (max-width: 1023px) {
  .c-block-1__txt sup {
    font-size: calc(8 / var(--root-fz) * 1rem);
    top: -2px;
  }
}

/* ---------------------------------------------
*   c-block-data
--------------------------------------------- */
.c-block-data {
  display: flex;
  gap: 4.1666666667%;
}
.c-block-data + .c-block-data {
  margin-top: 100px;
}
@media screen and (max-width: 1023px) {
  .c-block-data + .c-block-data {
    margin-top: 40px;
  }
}
@media screen and (max-width: 1023px) {
  .c-block-data {
    flex-direction: column;
    gap: 23px;
  }
}
@media print, screen and (min-width: 1024px) {
  .c-block-data:first-of-type {
    flex-direction: row-reverse;
  }
}
@media print, screen and (min-width: 1024px) {
  .c-block-data__txt-wrap {
    max-width: 430px;
  }
}
@media screen and (max-width: 1023px) {
  .c-block-data__txt-wrap {
    margin-inline: auto;
    max-width: 800px;
    padding-inline: calc(var(--contents-side-padding) * 1px);
    width: 100%;
  }
}
@media screen and (max-width: 1240px) {
  .c-block-data__txt--br {
    display: none;
  }
}
.c-block-data__ttl {
  color: var(--color-green-1);
  font-family: var(--ff-ls-b);
  font-size: calc(24 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 1023px) {
  .c-block-data__ttl {
    font-size: calc(18 / var(--root-fz) * 1rem);
  }
}
@media print, screen and (min-width: 1024px) {
  .c-block-data__img {
    max-width: 720px;
    padding-top: 5px;
  }
}
@media screen and (max-width: 1023px) {
  .c-block-data__img {
    margin-inline: auto;
  }
}
.c-block-data__img img {
  display: block;
  height: auto;
}

/* ---------------------------------------------
*   c-bnr-1
--------------------------------------------- */
.c-bnr-1 {
  margin: 90px auto 0;
  max-width: 1320px;
  padding: 0 min(var(--contents-side-padding) * 1px, 4.861%) 80px;
}
@media screen and (max-width: 1023px) {
  .c-bnr-1 {
    margin-top: 30px;
    max-width: 800px;
    padding-bottom: 0;
    padding-inline: calc(var(--contents-side-padding) * 1px);
  }
}
.c-bnr-1__inner {
  background: url(../img/img_bnr_bg_01.png) no-repeat center center/cover;
  border-radius: 12px;
  display: grid;
  padding-block: 60px 73px;
  place-content: center;
}
@media screen and (max-width: 1023px) {
  .c-bnr-1__inner {
    background-image: url(../img/sp/img_bnr_bg_01.png);
    display: block;
    padding: 40px calc(var(--contents-side-padding) * 1px);
  }
}
.c-bnr-1__ttl {
  color: var(--color-white-1);
  font-family: var(--ff-ls-eb);
  font-size: calc(36 / var(--root-fz) * 1rem);
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .c-bnr-1__ttl {
    font-size: calc(28 / var(--root-fz) * 1rem);
    line-height: 1.5;
  }
}
.c-bnr-1__btn-wrap {
  align-items: center;
  display: flex;
  gap: 30px;
  justify-content: center;
  margin-top: 23px;
}
@media screen and (max-width: 1023px) {
  .c-bnr-1__btn-wrap {
    flex-direction: column;
    gap: 16px;
    margin-top: 26px;
  }
}
.c-bnr-1__btn {
  height: 70px;
  width: 340px;
}
@media screen and (max-width: 1023px) {
  .c-bnr-1__btn {
    height: 62px;
    max-width: 280px;
    width: 100%;
  }
}

/* ---------------------------------------------
*   c-bnr-2
--------------------------------------------- */
.c-bnr-2 {
  margin: 90px auto 0;
  max-width: 1320px;
  padding-inline: min(var(--contents-side-padding) * 1px, 4.861%);
}
@media screen and (max-width: 1023px) {
  .c-bnr-2 {
    margin-top: 40px;
    max-width: 800px;
    padding-inline: calc(var(--contents-side-padding) * 1px);
  }
}
.c-bnr-2__inner {
  align-items: center;
  background: url(../img/img_bnr_bg_02.png) no-repeat center center/cover;
  border-radius: 16px;
  display: flex;
  justify-content: space-between;
  padding: 84px 9.17%;
}
@media screen and (max-width: 1023px) {
  .c-bnr-2__inner {
    background-image: url(../img/sp/img_bnr_bg_02.png);
    flex-direction: column;
    padding: 40px calc(var(--contents-side-padding) * 1px);
  }
}
@media screen and (max-width: 375px) {
  .c-bnr-2__inner {
    padding-inline: min(20px, 5.3333333333%);
  }
}
.c-bnr-2__ttl {
  color: var(--color-white-1);
  font-family: var(--ff-ls-eb);
  font-size: calc(44 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 1023px) {
  .c-bnr-2__ttl {
    font-size: calc(26 / var(--root-fz) * 1rem);
    line-height: 1.6153846154;
    text-align: center;
  }
}
.c-bnr-2__ttl--small {
  display: block;
  font-size: calc(28 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 1023px) {
  .c-bnr-2__ttl--small {
    font-size: calc(22 / var(--root-fz) * 1rem);
    line-height: 1.9090909091;
  }
}
.c-bnr-2__txt {
  color: var(--color-white-1);
  font-family: var(--ff-ls-b);
  font-size: calc(24 / var(--root-fz) * 1rem);
  line-height: 1.625;
  margin-top: 4px;
}
@media screen and (max-width: 1023px) {
  .c-bnr-2__txt {
    font-size: calc(16 / var(--root-fz) * 1rem);
    line-height: 1.8125;
    margin-top: 11px;
    text-align: center;
  }
}
.c-bnr-2__btn {
  height: 80px;
  width: 360px;
}
@media screen and (max-width: 1023px) {
  .c-bnr-2__btn {
    height: 62px;
    margin-top: 24px;
    width: 280px;
  }
}

/* ---------------------------------------------
*   c-bnr-3
--------------------------------------------- */
.c-bnr-3 {
  margin: 80px auto 0;
  max-width: 1320px;
  padding-inline: min(var(--contents-side-padding) * 1px, 4.861%);
}
@media screen and (max-width: 1023px) {
  .c-bnr-3 {
    margin-top: 60px;
    max-width: 800px;
    padding-inline: calc(var(--contents-side-padding) * 1px);
  }
}
.c-bnr-3__inner {
  background-color: var(--color-black-3);
  border: 1px solid var(--color-black-1);
  border-radius: 16px;
  padding: 40px 9.17%;
}
@media screen and (max-width: 1023px) {
  .c-bnr-3__inner {
    flex-direction: column;
    padding: 40px calc(var(--contents-side-padding) * 1px);
  }
}
@media screen and (max-width: 375px) {
  .c-bnr-3__inner {
    padding-inline: min(20px, 5.3333333333%);
  }
}
.c-bnr-3__ttl {
  color: var(--color-white-1);
  display: block;
  font-family: var(--ff-ls-eb);
  font-size: calc(36 / var(--root-fz) * 1rem);
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .c-bnr-3__ttl {
    font-size: calc(28 / var(--root-fz) * 1rem);
    line-height: 1.5;
  }
}
.c-bnr-3__contents-wrap {
  display: grid;
  gap: 30px 6.12%;
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: auto auto auto;
  margin-top: 35px;
}
@media screen and (max-width: 1023px) {
  .c-bnr-3__contents-wrap {
    gap: 40px;
    grid-template-columns: 1fr;
    grid-template-rows: repeat(6, auto);
    margin-top: 20px;
  }
}
.c-bnr-3__contents {
  display: grid;
  gap: 30px;
  grid-row: span 3;
  grid-template-rows: subgrid;
}
@media screen and (max-width: 1023px) {
  .c-bnr-3__contents {
    gap: 20px;
  }
}
.c-bnr-3__img img {
  display: block;
  height: auto;
  width: 100%;
}
.c-bnr-3__txt-main {
  color: var(--color-white-1);
  font-family: var(--ff-ls-eb);
  font-size: calc(28 / var(--root-fz) * 1rem);
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .c-bnr-3__txt-main {
    font-size: calc(20 / var(--root-fz) * 1rem);
  }
}
.c-bnr-3__txt {
  color: var(--color-white-1);
  font-family: var(--ff-ls-b);
  font-size: calc(18 / var(--root-fz) * 1rem);
  line-height: 1.6666666667;
  margin-top: 10px;
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .c-bnr-3__txt {
    font-size: calc(14 / var(--root-fz) * 1rem);
    line-height: 1.7857142857;
    margin-top: 5px;
  }
}
.c-bnr-3__btn {
  height: 70px;
  margin-inline: auto;
  width: 340px;
}
@media screen and (max-width: 1023px) {
  .c-bnr-3__btn {
    height: 62px;
    max-width: 280px;
    width: 100%;
  }
}

/* ---------------------------------------------
*   c-box
--------------------------------------------- */
/* ---------------------------------------------
*   c-btn-1
--------------------------------------------- */
.c-btn-1 {
  align-items: center;
  background: var(--color-green-1);
  border: 4px solid var(--color-white-1);
  border-radius: 122px;
  box-shadow: 6px 6px 10px rgba(6, 199, 85, 0.2);
  color: var(--color-white-1);
  display: flex;
  font-family: var(--ff-ls-b);
  font-size: calc(20 / var(--root-fz) * 1rem);
  height: 100%;
  justify-content: center;
  padding-right: 5px;
  position: relative;
  transition: background-color 0.3s ease-out, transform 0.3s ease-out, color 0.3s;
}
@media print, screen and (min-width: 1024px) {
  .c-btn-1--large {
    font-size: calc(22 / var(--root-fz) * 1rem);
  }
}
.c-bnr-1 .c-btn-1,
.c-bnr-2 .c-btn-1 {
  box-shadow: none;
}

@media screen and (max-width: 1023px) {
  .c-btn-1 {
    font-size: calc(18 / var(--root-fz) * 1rem);
    padding-right: 0;
  }
}
.c-btn-1::after {
  background: url(../img/icon_arw_white.svg) no-repeat center center/contain;
  content: "";
  display: block;
  height: 16px;
  position: absolute;
  right: 19px;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
}
@media screen and (max-width: 1023px) {
  .c-btn-1::after {
    height: 12px;
    right: 16px;
    width: 8px;
  }
}
.c-btn-1:hover {
  background: var(--color-white-1);
  border: 4px solid var(--color-green-1);
  color: var(--color-green-1);
  text-decoration: none;
}
.c-btn-1:hover::after {
  background: url(../img/icon_arw_green.svg) no-repeat center center/contain;
}

/* ---------------------------------------------
*   c-btn-2
--------------------------------------------- */
.c-btn-2 {
  align-items: center;
  background: var(--color-white-1);
  border-radius: 122px;
  box-sizing: border-box;
  color: var(--color-black-3);
  display: flex;
  font-family: var(--ff-ls-b);
  font-size: calc(22 / var(--root-fz) * 1rem);
  height: 100%;
  justify-content: center;
  padding-right: 5px;
  position: relative;
  transition: background-color 0.3s ease-out, transform 0.3s ease-out, color 0.3s;
}
@media screen and (max-width: 1023px) {
  .c-btn-2 {
    font-size: calc(18 / var(--root-fz) * 1rem);
    padding-right: 0;
  }
}
@media print, screen and (min-width: 1024px) {
  .c-btn-2--large {
    font-size: calc(26 / var(--root-fz) * 1rem);
  }
}
.c-btn-2::after {
  background: url(../img/icon_arw_navy.svg) no-repeat center center/contain;
  content: "";
  display: block;
  height: 16px;
  position: absolute;
  right: 23px;
  top: 50%;
  transform: translateY(-50%);
  width: 10px;
}
@media screen and (max-width: 1023px) {
  .c-btn-2::after {
    background: url(../img/icon_arw_navy-2.svg) no-repeat center center/contain;
    height: 14px;
    right: 20px;
    width: 8px;
  }
}
@media print, screen and (min-width: 1024px) {
  .c-btn-2--large::after {
    background: url(../img/icon_arw_navy-2.svg) no-repeat center center/contain;
    height: 21px;
    right: 30px;
    width: 13px;
  }
}
.c-btn-2:hover {
  background: var(--color-black-3);
  border: 4px solid var(--color-white-1);
  color: var(--color-white-1);
  text-decoration: none;
}
.c-btn-2:hover::after {
  background: url(../img/icon_arw_white.svg) no-repeat center center/contain;
  right: 19px;
}
@media screen and (max-width: 1023px) {
  .c-btn-2:hover::after {
    right: 16px;
  }
}
.c-btn-2--large:hover::after {
  background: url(../img/icon_arw_white-2.svg) no-repeat center center/contain;
  content: "";
  position: absolute;
  right: 19px;
}

/* ---------------------------------------------
*   c-btn-back
--------------------------------------------- */
.c-btn-back-wrap {
  margin: 80px auto 90px;
}
@media print, screen and (min-width: 1024px) {
  .c-btn-back-wrap {
    height: 50px;
    width: 214px;
  }
}

.c-btn-back {
  align-items: center;
  background: linear-gradient(135deg, #00003e 50%, #fff 50%) 100% center/300%;
  border: 3px solid var(--color-black-5);
  -o-border-image: initial;
  border-image: initial;
  border-radius: 40px;
  display: flex;
  height: 100%;
  justify-content: center;
  margin-inline: auto;
  padding: 3px 30px 3px 0;
  position: relative;
  text-decoration: none;
  transition: 0.6s ease-in-out;
}
@media screen and (max-width: 1023px) {
  .c-btn-back {
    background: linear-gradient(135deg, #fff 50%, #00003e 50%) 100% center/300%;
    padding-right: 20px;
  }
}
.c-btn-back--service {
  border-width: 2px;
  padding: 12px 13px 12px 28px;
}
@media print, screen and (min-width: 1024px) {
  .c-btn-back--service {
    justify-content: flex-start;
  }
}
@media screen and (max-width: 1023px) {
  .c-btn-back--service {
    background: linear-gradient(135deg, #00003e 50%, #fff 50%) 100% center/300%;
    max-width: 300px;
    min-height: 50px;
    padding: 3px 0;
  }
}
.c-btn-back--large {
  border-radius: 122px;
}
@media screen and (max-width: 1023px) {
  .c-btn-back--green {
    background: linear-gradient(135deg, #fff 50%, #06c755 50%) 100% center/300%;
    border: 2px solid var(--color-green-1);
  }
}
.c-btn-back__arrow01 {
  color: var(--color-black-5);
  font-family: var(--ff-ls-b);
  font-size: calc(20 / var(--root-fz) * 1rem);
  line-height: 1.35;
  text-align: center;
  transition: 0.6s;
}
@media screen and (max-width: 1023px) {
  .c-btn-back__arrow01 {
    color: var(--color-white-1);
    font-size: calc(16 / var(--root-fz) * 1rem);
    line-height: 1.3125;
  }
}
.c-btn-back--service .c-btn-back__arrow01 {
  font-family: YakuHanJP, UD新ゴ M, sans-serif;
}
@media print, screen and (min-width: 1024px) {
  .c-btn-back--service .c-btn-back__arrow01 {
    font-size: calc(14 / var(--root-fz) * 1rem);
  }
}
@media screen and (max-width: 1023px) {
  .c-btn-back--service .c-btn-back__arrow01 {
    color: var(--color-black-5);
  }
}
.c-btn-back svg {
  content: "";
  display: inline-block;
  height: 32px;
  position: absolute;
  right: 17px;
  top: 50%;
  transform: translateY(-50%);
  transition: 0.5s;
  width: 32px;
}
@media screen and (max-width: 1023px) {
  .c-btn-back svg {
    right: 9px;
  }
}
.c-btn-back--service svg {
  height: 21px;
  right: 13px;
  width: 21px;
}
@media screen and (max-width: 1023px) {
  .c-btn-back--service svg {
    height: 17px;
    width: 17px;
  }
}
.c-btn-back--large svg {
  height: 40px;
  right: 12px;
  width: 40px;
}
@media screen and (max-width: 1023px) {
  .c-btn-back--large svg {
    right: 9px;
  }
}
.c-btn-back svg path,
.c-btn-back svg circle {
  transition: 0.5s;
}
@media screen and (max-width: 1023px) {
  .c-btn-back svg path {
    stroke: var(--color-black-5);
  }
}
@media screen and (max-width: 1023px) {
  .c-btn-back--green svg path {
    stroke: var(--color-green-1);
  }
}
@media screen and (max-width: 1023px) {
  .c-btn-back--service svg path {
    stroke: var(--color-white-1);
  }
}
@media screen and (max-width: 1023px) {
  .c-btn-back svg circle {
    fill: var(--color-white-1);
  }
}
@media screen and (max-width: 1023px) {
  .c-btn-back--service svg circle {
    fill: var(--color-black-5);
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-btn-back:hover {
    background-position: 0 center;
    text-decoration: none;
  }
  .c-btn-back:hover .c-btn-back__arrow01 {
    color: var(--color-white-1);
  }
}
@media screen and (hover: hover) and (pointer: fine) and (max-width: 1023px) {
  .c-btn-back:hover .c-btn-back__arrow01 {
    color: var(--color-black-5);
  }
}
@media screen and (hover: hover) and (pointer: fine) and (max-width: 1023px) {
  .c-btn-back--green:hover .c-btn-back__arrow01 {
    color: var(--color-green-1);
  }
}
@media screen and (hover: hover) and (pointer: fine) and (max-width: 1023px) {
  .c-btn-back--service:hover .c-btn-back__arrow01 {
    color: var(--color-white-1);
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-btn-back:hover svg path {
    stroke: var(--color-black-5);
  }
}
@media screen and (hover: hover) and (pointer: fine) and (max-width: 1023px) {
  .c-btn-back:hover svg path {
    stroke: var(--color-white-1);
  }
}
@media screen and (hover: hover) and (pointer: fine) and (max-width: 1023px) {
  .c-btn-back--service:hover svg path {
    stroke: var(--color-black-5);
  }
}
@media (hover: hover) and (pointer: fine) {
  .c-btn-back:hover svg circle {
    fill: var(--color-white-1);
  }
}
@media screen and (hover: hover) and (pointer: fine) and (max-width: 1023px) {
  .c-btn-back:hover svg circle {
    fill: var(--color-black-5);
  }
}
@media screen and (hover: hover) and (pointer: fine) and (max-width: 1023px) {
  .c-btn-back--green:hover svg circle {
    fill: var(--color-green-1);
  }
}
@media screen and (hover: hover) and (pointer: fine) and (max-width: 1023px) {
  .c-btn-back--service:hover svg circle {
    fill: var(--color-white-1);
  }
}

/* ---------------------------------------------
*   c-card-1
--------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .c-card-1 {
    background-color: var(--color-white-1);
    border: 1px solid var(--color-gray-3);
    border-radius: 12px;
  }
}
@media screen and (max-width: 1023px) {
  .c-card-1 + .c-card-1 {
    margin-top: 34px;
  }
}
.c-card-1__img {
  align-items: flex-end;
  display: flex;
  justify-content: center;
  padding-top: 30px;
}
@media screen and (max-width: 1023px) {
  .c-card-1__img {
    display: none;
  }
}
@media print, screen and (min-width: 1024px) {
  .c-card-1__body {
    background-color: var(--color-white-1);
    border-radius: 0 0 12px 12px;
    border-top: 1px solid var(--color-gray-3);
    padding: 30px;
  }
}
@media screen and (max-width: 1023px) {
  .c-card-1__ttl {
    background-color: var(--color-gray-2);
    margin-inline: auto;
    width: 100%;
  }
}
.c-card-1__ttl-txt {
  color: var(--color-green-1);
  font-family: var(--ff-ls-b);
  font-size: calc(20 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 1023px) {
  .c-card-1__ttl-txt {
    display: block;
    font-size: calc(18 / var(--root-fz) * 1rem);
    margin-inline: auto;
    max-width: 800px;
    padding: 14px 40px 13px;
    position: relative;
    width: 100%;
  }
}
@media screen and (max-width: 1023px) {
  .c-card-1__ttl-txt::after {
    aspect-ratio: 55/76;
    bottom: 0;
    content: "";
    height: 76px;
    position: absolute;
    right: 40px;
    width: 55px;
  }
}
@media screen and (max-width: 1023px) {
  .c-card-1--1 .c-card-1__ttl-txt::after {
    background: url(../img/img_sp_01.png) no-repeat center center/contain;
  }
}
@media screen and (max-width: 1023px) {
  .c-card-1--2 .c-card-1__ttl-txt::after {
    background: url(../img/img_sp_02.png) no-repeat center center/contain;
  }
}
@media screen and (max-width: 1023px) {
  .c-card-1--3 .c-card-1__ttl-txt::after {
    background: url(../img/img_sp_03.png) no-repeat center center/contain;
  }
}
@media screen and (max-width: 1023px) {
  .c-card-1--4 .c-card-1__ttl-txt::after {
    background: url(../img/img_sp_04.png) no-repeat center center/contain;
  }
}
@media screen and (max-width: 1023px) {
  .c-card-1--5 .c-card-1__ttl-txt::after {
    background: url(../img/img_sp_05.png) no-repeat center center/contain;
  }
}
@media screen and (max-width: 1023px) {
  .c-card-1--6 .c-card-1__ttl-txt::after {
    background: url(../img/img_sp_06.png) no-repeat center center/contain;
  }
}
.c-card-1__txt {
  font-size: calc(16 / var(--root-fz) * 1rem);
  line-height: 1.875;
  margin-top: 6px;
}
@media screen and (max-width: 1023px) {
  .c-card-1__txt {
    font-size: calc(14 / var(--root-fz) * 1rem);
    line-height: 2;
    margin: 16px auto 0;
    max-width: 800px;
    padding-inline: 40px;
  }
}

/* ---------------------------------------------
*   c-card-example
--------------------------------------------- */
.c-card-example {
  border: 1px solid var(--color-gray-3);
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  height: 100%;
  transition: box-shadow 0.3s;
}
@media screen and (max-width: 1023px) {
  .c-card-example {
    border-radius: 13px;
  }
}
.c-card-example:hover {
  box-shadow: 2px 2px 8px rgba(90, 90, 90, 0.32);
  text-decoration: none;
}
.c-card-example__img {
  border-radius: 11px 11px 0 0;
  flex-shrink: 0;
  overflow: hidden;
}
@media screen and (max-width: 1023px) {
  .c-card-example__img {
    border-radius: 12 12 0 0;
  }
}
.c-card-example__img img {
  transition: transform 0.3s;
}
.c-card-example:hover .c-card-example__img img {
  transform: scale(1.05);
}
.c-card-example__contents {
  display: flex;
  flex-direction: column;
  height: 100%;
  padding: 24px 30px 35px;
}
@media screen and (max-width: 1023px) {
  .c-card-example__contents {
    padding: 16px 20px 23px;
  }
}
.c-card-example__label-wrap {
  align-items: center;
  display: flex;
}
.c-card-example__label {
  background-color: var(--color-gray-1);
  border-radius: 4px;
  color: var(--color-black-3);
  font-family: var(--ff-ls-b);
  font-size: calc(13 / var(--root-fz) * 1rem);
  padding: 5px 8px 4px;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 1023px) {
  .c-card-example__label {
    font-size: calc(12 / var(--root-fz) * 1rem);
    padding: 6px 8px 5px;
  }
}
.c-card-example__ttl {
  display: block;
  font-family: var(--ff-ls-b);
  font-size: calc(18 / var(--root-fz) * 1rem);
  margin-top: 10px;
  min-height: 86px;
}
@media screen and (max-width: 1023px) {
  .c-card-example__ttl {
    font-size: calc(14 / var(--root-fz) * 1rem);
    line-height: 1.6428571429;
    margin-top: 9px;
    min-height: 0;
  }
}
.c-card-example__name {
  color: var(--color-gray-4);
  display: block;
  font-family: var(--ff-ls-b);
  font-size: calc(13 / var(--root-fz) * 1rem);
  margin-top: 12px;
  min-height: 42px;
}
@media screen and (max-width: 1023px) {
  .c-card-example__name {
    font-size: calc(10 / var(--root-fz) * 1rem);
    margin-top: 9px;
    min-height: 0;
  }
}
.c-card-example__label2-wrap {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}
@media screen and (max-width: 1023px) {
  .c-card-example__label2-wrap {
    margin-top: 12px;
  }
}
.c-card-example__label2 {
  background-color: var(--color-black-3);
  border-radius: 40px;
  color: var(--color-white-1);
  font-family: var(--ff-ls-b);
  font-size: calc(14 / var(--root-fz) * 1rem);
  padding: 8px 16px 6px;
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 1023px) {
  .c-card-example__label2 {
    font-size: calc(12 / var(--root-fz) * 1rem);
    padding: 6px 12px 5px;
  }
}

/* ---------------------------------------------
*   c-card-info
--------------------------------------------- */
.c-card-info {
  margin-top: 13px;
}
@media screen and (max-width: 1023px) {
  .c-card-info {
    margin-top: calc(10 / var(--design-width) * 100vw);
  }
}
.c-card-info__inner {
  border: 1px solid var(--color-gray-3);
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  height: 100%;
  transition: box-shadow 0.3s;
}
.c-card-info__inner:hover {
  box-shadow: 2px 2px 8px rgba(90, 90, 90, 0.32);
  text-decoration: none;
}
.c-card-info__img {
  border-radius: 11px 11px 0 0;
  flex-shrink: 0;
  overflow: hidden;
}
.c-card-info__img img {
  transition: transform 0.3s;
  width: 100%;
}
.c-card-info__inner:hover .c-card-info__img img {
  transform: scale(1.05);
}
.c-card-info__detail {
  display: flex;
  flex-direction: column;
  padding: 30px;
}
@media screen and (max-width: 1023px) {
  .c-card-info__detail {
    padding: 20px;
  }
}
.c-card-info__txt {
  font-family: var(--ff-ls-b);
  font-size: calc(18 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 1023px) {
  .c-card-info__txt {
    font-size: calc(18 / var(--root-fz) * 1rem);
  }
}

/* ---------------------------------------------
*   c-cassette-1
--------------------------------------------- */
.c-cassette-1 {
  display: grid;
  gap: 30px;
  grid-template-rows: auto auto 1fr auto auto;
}
@media screen and (max-width: 1023px) {
  .c-cassette-1 {
    background-color: var(--color-gray-2);
    border-radius: 12px;
    display: block;
    padding: 22px 20px 25px;
  }
}
.c-cassette-1__ttl {
  color: var(--color-white-1);
  font-family: var(--ff-ls-b);
  font-size: calc(24 / var(--root-fz) * 1rem);
  text-align: center;
}
@media print, screen and (min-width: 1024px) {
  .c-cassette-1__ttl {
    background-color: var(--color-green-1);
    border-radius: 8px;
    padding-block: 7px;
  }
}
@media screen and (max-width: 1023px) {
  .c-cassette-1__ttl {
    color: var(--color-green-1);
    font-size: calc(18 / var(--root-fz) * 1rem);
  }
}
@media screen and (max-width: 1023px) {
  .c-cassette-1__img {
    display: none;
  }
}
.c-cassette-1__img img {
  display: block;
  height: auto;
  width: 100%;
}
.c-cassette-1__txt {
  font-family: var(--ff-ls-b);
  font-size: calc(16 / var(--root-fz) * 1rem);
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .c-cassette-1__txt {
    font-family: var(--ff-root);
    font-size: calc(14 / var(--root-fz) * 1rem);
    line-height: 2;
  }
}
.c-cassette-1__icon {
  height: 18px;
  margin-inline: auto;
  width: 24px;
}
@media screen and (max-width: 1023px) {
  .c-cassette-1__icon {
    display: none;
  }
}
.c-cassette-1__icon img {
  display: block;
  height: auto;
  width: 100%;
}
.c-cassette-1__btn {
  height: 90px;
  width: 100%;
}
@media screen and (max-width: 1023px) {
  .c-cassette-1__btn {
    height: 62px;
    margin: 16px auto 0;
    width: 280px;
  }
}

/* ---------------------------------------------
*   c-figure
--------------------------------------------- */
/* ---------------------------------------------
*   c-form
--------------------------------------------- */
/* ---------------------------------------------
*   c-img
--------------------------------------------- */
/* ---------------------------------------------
*   c-kv
--------------------------------------------- */
.l-wrapper.line-mini-app .c-kv__container {
  margin-inline: auto;
  max-width: 1400px;
  position: relative;
  width: 100%;
}
@media print, screen and (min-width: 1024px) {
  .l-wrapper.line-mini-app .c-kv__container {
    padding-inline: min(120px, 8.33%) min(40px, 2.78%);
  }
}
.l-wrapper.line-mini-app .c-kv__breadcrumb {
  margin-inline: auto;
  max-width: 1320px;
  padding-block: 10px 5px;
}
@media screen and (max-width: 1023px) {
  .l-wrapper.line-mini-app .c-kv__breadcrumb {
    display: none;
  }
}
.l-wrapper.line-mini-app .c-kv__content {
  align-items: center;
  display: flex;
  flex-direction: row-reverse;
  gap: 4.93%;
  margin-inline: auto;
  max-width: 1320px;
}
@media screen and (max-width: 1023px) {
  .l-wrapper.line-mini-app .c-kv__content {
    flex-direction: column;
    gap: 32px;
  }
}
.l-wrapper.line-mini-app .c-kv__img-wrap {
  position: relative;
}
@media print, screen and (min-width: 1024px) {
  .l-wrapper.line-mini-app .c-kv__img {
    max-width: 670px;
  }
}
.l-wrapper.line-mini-app .c-kv__img img {
  display: block;
  height: auto;
  -o-object-fit: cover;
  object-fit: cover;
}
.l-wrapper.line-mini-app .c-kv__txt-wrap {
  flex: 1;
}
@media screen and (max-width: 1023px) {
  .l-wrapper.line-mini-app .c-kv__txt-wrap {
    padding-inline: calc(var(--contents-side-padding) * 1px);
    text-align: center;
  }
}
.l-wrapper.line-mini-app .c-kv__ttl-small {
  font-family: var(--ff-ls-eb);
  font-size: calc(24 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 1023px) {
  .l-wrapper.line-mini-app .c-kv__ttl-small {
    font-size: calc(16 / var(--root-fz) * 1rem);
  }
}
.l-wrapper.line-mini-app .c-kv__ttl-main {
  align-items: center;
  display: flex;
  gap: 33px;
  margin-top: 15px;
}
@media screen and (max-width: 1023px) {
  .l-wrapper.line-mini-app .c-kv__ttl-main {
    gap: 21px;
    justify-content: center;
    margin-top: 10px;
  }
}
.l-wrapper.line-mini-app .c-kv__ttl-main::before {
  background: url(/sites/default/files/media/jp/service/line-mini-app/202602/img/icon_mini.svg) no-repeat center center/contain;
  content: "";
  display: block;
  height: 62px;
  width: 75px;
}
@media screen and (max-width: 1023px) {
  .l-wrapper.line-mini-app .c-kv__ttl-main::before {
    height: 40px;
    width: 48px;
  }
}
.l-wrapper.line-mini-app .c-kv__ttl-main img {
  display: block;
  height: auto;
  width: 378px;
}
@media screen and (max-width: 1023px) {
  .l-wrapper.line-mini-app .c-kv__ttl-main img {
    width: 244px;
  }
}
.l-wrapper.line-mini-app .c-kv__txt {
  font-family: var(--ff-ls-b);
  font-size: calc(18 / var(--root-fz) * 1rem);
  line-height: 1.6666666667;
  margin-top: 20px;
}
@media screen and (max-width: 1023px) {
  .l-wrapper.line-mini-app .c-kv__txt {
    font-size: calc(14 / var(--root-fz) * 1rem);
    line-height: 1.7142857143;
    margin-top: 15px;
    text-align: center;
  }
}
.l-wrapper.line-mini-app .c-kv__txt--green {
  color: var(--color-green-1);
}
.l-wrapper.line-mini-app .c-kv__btn-wrap {
  width: -moz-fit-content;
  width: fit-content;
}
@media screen and (max-width: 1023px) {
  .l-wrapper.line-mini-app .c-kv__btn-wrap {
    margin-inline: auto;
  }
}
.l-wrapper.line-mini-app .c-kv__btn {
  height: 70px;
  margin-top: 36px;
  width: 340px;
}
@media screen and (max-width: 1023px) {
  .l-wrapper.line-mini-app .c-kv__btn {
    height: 62px;
    margin-top: 21px;
    width: 280px;
  }
}
.l-wrapper.line-mini-app .c-kv sup {
  position: relative;
  top: 1px;
}
@media screen and (max-width: 1023px) {
  .l-wrapper.line-mini-app .c-kv sup {
    font-size: 0.85rem;
    top: 2px;
  }
}

/* ---------------------------------------------
*   p-kvList
--------------------------------------------- */
.l-wrapper.line-mini-app .p-kvList {
  display: flex;
  gap: 24px;
}
.l-wrapper.line-mini-app .p-kvList__item {
  display: inline-block;
  font-size: 12px;
  position: relative;
}
.l-wrapper.line-mini-app .p-kvList__item:not(:first-of-type)::before {
  border-right: 1px solid var(--color-black-2);
  border-top: 1px solid var(--color-black-2);
  content: "";
  display: block;
  height: 4px;
  left: -15px;
  position: absolute;
  top: 6px;
  transform: rotate(45deg);
  width: 4px;
}
.l-wrapper.line-mini-app .p-kvList__item:last-of-type .p-kvList__txt {
  font-family: var(--ff-ls-b);
}
.l-wrapper.line-mini-app .p-kvList__txt {
  color: var(--color-black-2);
  font-family: var(--ff-ls-r);
}

/* ---------------------------------------------
*   c-link-1
--------------------------------------------- */
.c-link-1 {
  align-items: center;
  color: #000;
  display: flex;
  font-family: var(--ff-ls-b);
  font-size: calc(16 / var(--root-fz) * 1rem);
  justify-content: center;
  margin-top: 18px;
  text-align: center;
}
@media (hover: hover) and (pointer: fine) {
  .c-link-1:hover {
    text-decoration: underline;
  }
}
@media screen and (max-width: 1023px) {
  .c-link-1 {
    font-size: calc(14 / var(--root-fz) * 1rem);
    margin-top: 20px;
  }
}
.c-link-1::after {
  background: url(/sites/default/files/media/jp/service/line-mini-app/202604/img/icon_arw_black.svg) no-repeat center center/contain;
  content: "";
  display: block;
  height: 9px;
  margin-left: 10px;
  width: 5px;
}
@media screen and (max-width: 1023px) {
  .c-link-1::after {
    margin-left: 8px;
  }
}
.c-link-1__green {
  color: #06c755;
}
.c-link-1__green::after {
  background: url(/sites/default/files/media/jp/service/line-mini-app/202604/img/icon_arw_green.svg) no-repeat center center/contain;
  content: "";
  display: block;
  height: 9px;
  margin-left: 10px;
  width: 5px;
}
/* ---------------------------------------------
*   c-link-2
--------------------------------------------- */
.c-link-2 {
  color: var(--color-blue-1);
  text-decoration: underline;
  text-decoration: underline;
}
@media (hover: hover) and (pointer: fine) {
  .c-link-2:hover {
    text-decoration: none;
  }
}

/* ---------------------------------------------
*   c-list-1
--------------------------------------------- */
.c-list-1__item {
  background: var(--color-gray-2);
  border-radius: 12px;
  position: relative;
}
.c-list-1__item + .c-list-1__item {
  margin-top: 40px;
}
@media screen and (max-width: 1023px) {
  .c-list-1__item + .c-list-1__item {
    margin-top: 30px;
  }
}
.c-list-1__inner {
  align-items: center;
  display: flex;
  gap: min(20px, 1.6666666667%);
  justify-content: space-between;
  margin-inline: auto;
  max-width: 1020px;
  padding-inline: 20px;
}
@media screen and (max-width: 1023px) {
  .c-list-1__inner {
    flex-direction: column;
  }
}
.c-list-1__txt-wrap {
  max-width: 580px;
  padding-block: 50px;
}
@media screen and (max-width: 1023px) {
  .c-list-1__txt-wrap {
    padding-block: 33px 0;
  }
}
.c-list-1__ttl {
  display: flex;
  font-family: var(--ff-ls-b);
  font-size: calc(20 / var(--root-fz) * 1rem);
  gap: 11px;
}
@media screen and (max-width: 1023px) {
  .c-list-1__ttl {
    font-size: calc(16 / var(--root-fz) * 1rem);
    gap: 14px;
  }
}
.c-list-1__ttl-num {
  color: var(--color-green-1);
  display: block;
  flex-shrink: 0;
  font-family: var(--ff-ls-b);
}
.c-list-1__img {
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
  justify-content: center;
}
@media screen and (max-width: 1023px) {
  .c-list-1__item--2 .c-list-1__img {
    padding-block: 20px 20px;
  }
}
.c-list-1__item--3 .c-list-1__img {
  padding-top: 24px;
}
@media screen and (max-width: 1023px) {
  .c-list-1__item--3 .c-list-1__img {
    padding-top: 28px;
  }
}
@media screen and (max-width: 1023px) {
  .c-list-1__item--4 .c-list-1__img {
    padding-block: 31px;
  }
}
.c-list-1__item--5 .c-list-1__img {
  padding-block: 25px;
}
@media screen and (max-width: 1023px) {
  .c-list-1__item--5 .c-list-1__img {
    padding: 26px 0;
  }
}

/* ---------------------------------------------
*   c-list-2
--------------------------------------------- */
.c-list-2 {
  display: grid;
  gap: 36px 3%;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 1023px) {
  .c-list-2 {
    display: block;
  }
}
.c-list-2__item {
  display: contents;
}
@media screen and (max-width: 1023px) {
  .c-list-2__item {
    display: block;
  }
}
@media screen and (max-width: 1023px) {
  .c-list-2__item + .c-list-2__item {
    margin-top: 35px;
  }
}

/* ---------------------------------------------
*   c-list-3
--------------------------------------------- */
.c-list-3 {
  display: grid;
  gap: 3%;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 1023px) {
  .c-list-3 {
    display: block;
  }
}
@media print, screen and (min-width: 1024px) {
  .c-list-3__item {
    display: contents;
  }
}
@media screen and (max-width: 1023px) {
  .c-list-3__item + .c-list-3__item {
    margin-top: 20px;
  }
}

/* ---------------------------------------------
*   c-list-4
--------------------------------------------- */
.c-list-4 {
  -moz-column-gap: 3%;
  column-gap: 3%;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: auto auto auto;
}
@media screen and (max-width: 1023px) {
  .c-list-4 {
    display: block;
    gap: 50px;
  }
}
.c-list-4__item {
  display: grid;
  grid-row: span 3;
  grid-template-rows: subgrid;
}
@media screen and (max-width: 1023px) {
  .c-list-4__item + .c-list-4__item {
    margin-top: 50px;
  }
}
.c-list-4__ttl {
  align-items: center;
  color: var(--color-black-4);
  -moz-column-gap: 15px;
  column-gap: 15px;
  display: flex;
  font-family: var(--ff-ls-b);
  font-size: calc(26 / var(--root-fz) * 1rem);
  justify-content: center;
}
@media screen and (max-width: 1023px) {
  .c-list-4__ttl {
    -moz-column-gap: calc(8 / var(--root-fz) * 1rem);
    column-gap: calc(8 / var(--root-fz) * 1rem);
    font-size: calc(18 / var(--root-fz) * 1rem);
    justify-content: flex-start;
  }
}
.c-list-4__ttl::before,
.c-list-4__ttl::after {
  color: var(--color-gray-5);
  content: "■";
  font-size: calc(9 / var(--root-fz) * 1rem);
  line-height: 1;
  transform: rotate(45deg);
}
.c-list-4__btn {
  height: 70px;
  margin: 30px auto 0;
  width: 290px;
}
@media screen and (max-width: 1023px) {
  .c-list-4__btn {
    height: 62px;
    width: 280px;
  }
}

/* ---------------------------------------------
*   c-list-note
--------------------------------------------- */
.c-list-note {
  margin-top: 10px;
}
.c-list-note__item {
  color: var(--color-gray-4);
  font-size: calc(12 / var(--root-fz) * 1rem);
}
@media screen and (max-width: 1023px) {
  .c-list-note__item {
    font-size: calc(10 / var(--root-fz) * 1rem);
  }
}
.c-list-note__item::before {
  content: "※";
  display: inline-block;
}
.c-block-1 .c-list-note {
  margin-top: 5px;
}
@media screen and (max-width: 1023px) {
  .c-block-1 .c-list-note {
    letter-spacing: 0.1px;
    line-height: 1.8;
    margin-top: 6px;
  }
}

/* ---------------------------------------------
*   追従メニュー　既存より抜粋
--------------------------------------------- */
.c-menu {
  animation-duration: 0.5s;
  background: var(--color-gray-2);
  border-bottom: 2px solid var(--color-black-4);
  border-bottom-left-radius: 6px;
  border-left: 2px solid var(--color-black-4);
  border-top: 2px solid var(--color-black-4);
  border-top-left-radius: 6px;
  position: fixed;
  right: 0;
  text-align: center;
  top: 24vh;
  z-index: 999;
}

@media screen and (max-width: 1023px) {
  .c-menu {
    display: none;
  }
}
.c-menu__title {
  background: var(--color-white-1);
  border: 2px solid var(--color-black-4);
  border-radius: 22px;
  display: inline-block;
  font-family: var(--ff-ls-b);
  font-size: 1.2rem;
  margin-top: 28px;
  padding: 4px 15px;
}

.c-menu__list {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 24px 24px 26px;
  text-align: left;
}

.c-menu__item {
  font-family: var(--ff-ls-b);
  font-size: 1.4rem;
}

.c-menu__item a {
  color: var(--color-black-4);
  font-family: var(--ff-ls-b);
}

.c-menu__close {
  border-top: 1px solid var(--color-black-4);
  font-family: var(--ff-ls-b);
  padding-block: 12px;
  text-align: center;
}

.c-menu__item a.is-current {
  color: var(--color-green-1);
  position: relative;
}

.c-menu__close {
  cursor: pointer;
}

.c-menu-2 {
  animation-duration: 0.5s;
  background-color: var(--color-green-1);
  border-bottom: 2px solid var(--color-black-4);
  border-bottom-left-radius: 6px;
  border-left: 2px solid var(--color-black-4);
  border-top: 2px solid var(--color-black-4);
  border-top-left-radius: 6px;
  display: block;
  padding: 13px 24px 13px 22px;
  position: fixed;
  right: 0;
  top: calc(385px + 26vh);
  transition: background-color 0.3s ease-out, transform 0.3s ease-out, color 0.3s;
  z-index: 999;
}

@media screen and (max-width: 1023px) {
  .c-menu-2 {
    display: none;
  }
}
.c-menu-2__txt {
  align-items: flex-end;
  color: var(--color-white-1);
  display: flex;
  font-family: var(--ff-ls-b);
  font-size: calc(15 / var(--root-fz) * 1rem);
  gap: 10px;
  transition: color 0.3s;
}

.c-menu-2__txt::after {
  background: url(../img/icon_arw_white.svg) no-repeat center center/contain;
  content: "";
  display: block;
  height: 10px;
  margin-bottom: 7px;
  transition: background-color 0.3s ease-out, transform 0.3s ease-out;
  width: 6px;
  will-change: auto;
}

.c-menu-2:hover {
  background-color: var(--color-white-1);
  text-decoration: none;
}

.c-menu-2:hover .c-menu-2__txt {
  color: var(--color-green-1);
}

.c-menu-2:hover .c-menu-2__txt::after {
  background-image: url(../img/icon_arw_green.svg);
}

@media screen and (max-width: 1023px) {
  .sp-menu-wrap--clone {
    display: none;
  }
}
@media screen and (min-width: 1024px) {
  .c-spMenu {
    display: none;
  }
}
@media screen and (max-width: 1023px) {
  .c-spMenu {
    align-items: center;
    background: var(--color-white-1);
    bottom: 0;
    box-shadow: 0 -2px 8px 0 rgba(0, 0, 0, 0.15);
    display: flex;
    height: 59px;
    opacity: 0;
    position: fixed;
    transform: translateY(150px);
    transition: all 0.5s;
    visibility: hidden;
    width: 100%;
    z-index: 999;
  }
  .c-spMenu > ul {
    display: flex;
    flex: 1 0 0;
    gap: 0 5px;
    margin: 0 5px;
  }
  .c-spMenu > ul li {
    width: 100%;
  }
  .c-spMenu__dl {
    align-items: center;
    border-radius: 999em;
    color: var(--color-white-1);
    display: flex;
    font-family: var(--ff-ls-eb);
    font-size: 1.3rem;
    height: 47px;
    justify-content: center;
    width: 100%;
  }
  .c-spMenu__dl:hover {
    text-decoration: none;
  }
  .c-spMenu__dl--blue {
    background: var(--color-blue-1);
  }
  .c-spMenu__dl--orange {
    background: var(--color-orange-1);
  }
  .c-spMenu__contents {
    align-items: center;
    background: #e4e8f0;
    display: flex;
    height: 59px;
    justify-content: center;
    margin-left: auto;
    width: 73px;
  }
  .is-active {
    opacity: 1;
    transform: translateY(0);
    visibility: visible;
  }
}
.backBtn a {
  font-family: var(--ff-ls-b);
  font-size: 1.7rem;
  padding-block: 13px 12px;
  padding-inline: 29px 70px;
}

.backBtn__arrow01:before {
  right: 29px;
}

@media screen and (max-width: 1023px) {
  .backBtn__arrow01:before {
    right: 29px;
  }
}
.scrollUp {
  opacity: 0;
  transform: translateY(1px);
  transition: opacity 1s, transform 1s;
}

.scrollUp.is-show {
  opacity: 1;
  transform: translateY(0px);
}

/* ---------------------------------------------
*   c-movie
--------------------------------------------- */
.c-movie__youtube {
  aspect-ratio: 1.7819/1;
  position: relative;
}
@media (hover: hover) and (pointer: fine) {
  .c-movie__youtube:has(.c-movie__btn:hover) {
    transition: opacity var(--hover-duration);
  }
  .c-movie__youtube:has(.c-movie__btn:hover):hover {
    opacity: var(--hover-opacity-ratio);
  }
}
.c-movie__btn {
  cursor: pointer;
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.c-movie__img img {
  aspect-ratio: 1.7819/1;
  display: block;
  height: auto;
  width: 100%;
}
.c-movie__txt {
  color: var(--color-white-1);
  font-family: var(--ff-ls-b);
  font-size: min(16 / var(--root-fz) * 1rem, 21 / var(--design-width) * 100vw);
  line-height: 1.615385;
  margin-top: 20px;
  text-align: center;
}
@media screen and (max-width: 1023px) {
  .c-movie__txt {
    font-size: calc(13 / var(--design-width) * 100vw);
    margin-top: 17px;
  }
}
.c-movie__txt--ls {
  letter-spacing: -0.03em;
}

/* ---------------------------------------------
*   c-section-about
--------------------------------------------- */
.c-section-about {
  background-color: var(--color-gray-2);
  margin-top: 42px;
  /* 2枚目：33%から主役 */
  /* 3枚目：66%から主役 */
  /* 3枚目：66%から主役 */
}
@media screen and (max-width: 1023px) {
  .c-section-about {
    margin-top: 28px;
  }
}
.c-section-about__container {
  padding-top: 70px;
}
@media screen and (max-width: 1023px) {
  .c-section-about__container {
    padding-top: 40px;
  }
}
.c-section-about__head {
  display: flex;
  gap: 6.04%;
  justify-content: space-between;
  margin-inline: auto;
  max-width: 1320px;
  padding-inline: min(var(--contents-side-padding) * 1px, 4.861%);
}
@media screen and (max-width: 1023px) {
  .c-section-about__head {
    align-items: center;
    flex-direction: column;
    gap: 40px;
    justify-content: flex-start;
    max-width: 800px;
    padding-inline: calc(var(--contents-side-padding) * 1px);
  }
}
.c-section-about__txt-wrap {
  flex: 1;
}
@media print, screen and (min-width: 1024px) {
  .c-section-about__txt-wrap {
    max-width: 605px;
    width: 48.79%;
  }
}
@media print, screen and (min-width: 1024px) {
  .c-section-about__img {
    margin-top: 10px;
    max-width: 486px;
  }
}
@media screen and (max-width: 1023px) {
  .c-section-about__img {
    margin-inline: auto;
  }
}
.c-section-about__img img {
  display: block;
  height: auto;
  width: 100%;
}
.c-section-about__body {
  height: 507px;
  margin-top: 77px;
  position: relative;
}
@media screen and (max-width: 1023px) {
  .c-section-about__body {
    height: calc(380 / var(--design-width) * 100vw);
    margin-top: calc(45 / var(--design-width) * 100vw);
  }
}
.c-section-about__body-bg-wrap {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.c-section-about__body-bg {
  -webkit-animation: 18s infinite fade1;
  animation: 18s infinite fade1;
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  text-align: center;
  top: 0;
  width: 100%;
}
.c-section-about__body-bg:nth-of-type(2) {
  -webkit-animation: 18s infinite fade2;
  animation: 18s infinite fade2;
}
.c-section-about__body-bg:nth-of-type(3) {
  -webkit-animation: 18s infinite fade3;
  animation: 18s infinite fade3;
}
.c-section-about__body-bg img {
  display: block;
  height: 100% !important;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
}
.c-section-about__body-inner {
  padding-top: 40px;
  width: 100%;
  z-index: 3;
}
@media print, screen and (min-width: 1024px) {
  .c-section-about__body-inner {
    margin-inline: auto;
    max-width: 1320px;
    padding-inline: min(var(--contents-side-padding) * 1px, 4.861%);
  }
}
@media screen and (max-width: 1023px) {
  .c-section-about__body-inner {
    padding-top: calc(30 / var(--design-width) * 100vw);
  }
}
.c-section-about__main-inner {
  align-items: center;
  display: flex;
  gap: 10px;
  justify-content: center;
  position: relative;
}
.c-section-about__main-inner::before,
.c-section-about__main-inner::after {
  background-color: var(--color-white-1);
  content: "";
  display: block;
  height: 1px;
  width: 100%;
}
@media screen and (max-width: 1023px) {
  .c-section-about__main-inner::before,
  .c-section-about__main-inner::after {
    display: none;
  }
}
.c-section-about__cm {
  color: var(--color-white-1);
  display: block;
  flex-shrink: 0;
  font-family: var(--ff-ls-eb);
  font-size: calc(32 / var(--root-fz) * 1rem);
  padding-left: 5px;
}
@media screen and (max-width: 1023px) {
  .c-section-about__cm {
    font-size: calc(28 / var(--design-width) * 100vw);
  }
}
.c-section-about__icon {
  flex-shrink: 0;
  width: 126px;
}
@media screen and (max-width: 1023px) {
  .c-section-about__icon {
    width: calc(90 / var(--design-width) * 100vw);
  }
}
@keyframes fade1 {
  0% {
    opacity: 1;
  }
  25% {
    opacity: 1;
  } /* 4.5秒まで表示 */
  33% {
    opacity: 0;
  } /* 6秒地点で消える */
  92% {
    opacity: 0;
  } /* 16.5秒まで消えている */
  100% {
    opacity: 1;
  } /* 18秒で復活（ループの繋ぎ目） */
}
@keyframes fade2 {
  0% {
    opacity: 0;
  }
  25% {
    opacity: 0;
  } /* 最初は消えている */
  33% {
    opacity: 1;
  } /* 6秒地点で出現 */
  58% {
    opacity: 1;
  } /* 10.5秒まで表示 */
  66% {
    opacity: 0;
  } /* 12秒地点で消える */
  100% {
    opacity: 0;
  }
}
@keyframes fade3 {
  0% {
    opacity: 0;
  }
  58% {
    opacity: 0;
  } /* 10.5秒まで消えている */
  66% {
    opacity: 1;
  } /* 12秒地点で出現 */
  92% {
    opacity: 1;
  } /* 16.5秒まで表示 */
  100% {
    opacity: 0;
  } /* 18秒で消える（1枚目にバトンタッチ） */
}

/* ---------------------------------------------
*   c-section-features
--------------------------------------------- */
.c-section-features__container {
  margin-inline: auto;
  max-width: 1320px;
  padding: 80px min(var(--contents-side-padding) * 1px, 4.861%) 10px;
}
@media screen and (max-width: 1023px) {
  .c-section-features__container {
    max-width: 800px;
    padding-inline: calc(var(--contents-side-padding) * 1px);
    padding-top: calc(40 / var(--design-width) * 100vw);
  }
}
.c-section-features__body {
  margin-top: 40px;
}
@media screen and (max-width: 1023px) {
  .c-section-features__body {
    margin-top: 37px;
  }
}

/* ---------------------------------------------
*   c-section-data
--------------------------------------------- */
.c-section-data__container {
  margin-inline: auto;
  max-width: 1320px;
  padding: 70px min(var(--contents-side-padding) * 1px, 4.861%) 10px;
}
@media screen and (max-width: 1023px) {
  .c-section-data__container {
    padding-inline: 0;
    padding-top: 50px;
  }
}
@media screen and (max-width: 1023px) {
  .c-section-data__head {
    margin-inline: auto;
    max-width: 800px;
    padding-inline: calc(var(--contents-side-padding) * 1px);
  }
}
.c-section-data__body {
  margin-top: 40px;
}
@media screen and (max-width: 1023px) {
  .c-section-data__body {
    margin-top: 40px;
  }
}

/* ---------------------------------------------
*   c-section-possibility
--------------------------------------------- */
@media print, screen and (min-width: 1024px) {
  .c-section-possibility {
    background-color: var(--color-gray-2);
  }
}
.c-section-possibility__container {
  margin-inline: auto;
}
@media print, screen and (min-width: 1024px) {
  .c-section-possibility__container {
    max-width: 1320px;
    padding: 80px min(var(--contents-side-padding) * 1px, 4.861%);
  }
}
@media screen and (max-width: 1023px) {
  .c-section-possibility__container {
    padding-top: 40px;
  }
}
@media screen and (max-width: 1023px) {
  .c-section-possibility__head {
    margin-inline: auto;
    max-width: 800px;
    padding-inline: calc(var(--contents-side-padding) * 1px);
  }
}
.c-section-possibility__body {
  margin-top: 33px;
}

/* ---------------------------------------------
*   c-section-howto
--------------------------------------------- */
.c-section-howto__container {
  margin-inline: auto;
  max-width: 1320px;
  padding: 80px min(var(--contents-side-padding) * 1px, 4.861%) 0;
}
@media screen and (max-width: 1023px) {
  .c-section-howto__container {
    max-width: 800px;
    padding-inline: calc(var(--contents-side-padding) * 1px);
    padding-top: 40px;
  }
}
.c-section-howto__body {
  margin-top: 24px;
}
@media screen and (max-width: 1023px) {
  .c-section-howto__body {
    margin-top: 20px;
  }
}

/* ---------------------------------------------
*   c-section-example
--------------------------------------------- */
.c-section-example__container {
  margin-inline: auto;
}
.c-section-example__head {
  margin-inline: auto;
  max-width: 1320px;
  padding: 100px min(var(--contents-side-padding) * 1px, 4.861%) 0;
}
@media screen and (max-width: 1023px) {
  .c-section-example__head {
    max-width: 800px;
    padding-inline: calc(var(--contents-side-padding) * 1px);
    padding-top: 40px;
  }
}
.c-section-example__body {
  margin-top: 20px;
}
@media screen and (max-width: 1023px) {
  .c-section-example__body {
    margin-top: 10px;
  }
}
.c-section-example__btn {
  height: 70px;
  margin: 116px auto 0;
  width: 290px;
}
@media screen and (max-width: 1023px) {
  .c-section-example__btn {
    height: 62px;
    margin-top: 70px;
    width: 280px;
  }
}

/* ---------------------------------------------
*   c-section-info
--------------------------------------------- */
.c-section-info__container {
  margin-inline: auto;
  max-width: 1320px;
  padding: 83px min(var(--contents-side-padding) * 1px, 4.861%) 0;
}
@media screen and (max-width: 1023px) {
  .c-section-info__container {
    max-width: 800px;
    padding-inline: calc(var(--contents-side-padding) * 1px);
    padding-top: 60px;
  }
}
.c-section-info__body {
  margin-top: 25px;
}
@media screen and (max-width: 1023px) {
  .c-section-info__body {
    margin-top: 20px;
  }
}

/* ---------------------------------------------
*   c-section-faq
--------------------------------------------- */
.c-section-faq__container {
  margin-inline: auto;
  max-width: 1320px;
  padding: 82px min(var(--contents-side-padding) * 1px, 4.861%) 0;
}
@media screen and (max-width: 1023px) {
  .c-section-faq__container {
    max-width: 800px;
    padding-inline: calc(var(--contents-side-padding) * 1px);
    padding-top: 60px;
  }
}
.c-section-faq__body {
  margin-top: 40px;
}
@media screen and (max-width: 1023px) {
  .c-section-faq__body {
    margin-top: 20px;
  }
}

/* ---------------------------------------------
*   既存splide （logo loop）
--------------------------------------------- */
.l-wrapper.line-mini-app .c-slider-1__list {
  height: auto;
}
.l-wrapper.line-mini-app .c-slider-1__slide {
  align-items: center;
  display: flex;
  flex-shrink: 0;
  height: 90px;
  justify-content: center;
  margin-right: 40px !important;
  width: -moz-fit-content;
  width: fit-content;
}
.l-wrapper.line-mini-app .c-slider-1__slide img {
  height: 100%;
  -o-object-fit: contain;
  object-fit: contain;
  width: auto;
}

/* ---------------------------------------------
*   youtube movie splide
--------------------------------------------- */
.c-slider-2 {
  margin-top: 35px;
}
@media screen and (max-width: 1023px) {
  .c-slider-2 {
    margin-top: calc(20 / var(--design-width) * 100vw);
  }
}
@media print, screen and (min-width: 1024px) {
  .c-slider-2 {
    visibility: visible;
  }
}
.c-slider-2__wrapper {
  position: relative;
}
@media print, screen and (min-width: 1024px) {
  .c-slider-2__list {
    gap: 3%;
  }
}
@media print, screen and (min-width: 1024px) {
  .splide.is-initialized:not(.is-active) .c-slider-2__list {
    display: flex;
    gap: 35px;
    justify-content: center;
    transform: none !important;
    width: auto !important;
  }
}

.c-slider-2__slide[role="tabpanel"] {
  animation: none !important;
  display: block !important;
  opacity: 1 !important;
}
@media print, screen and (min-width: 1024px) {
  .c-slider-2__slide {
    flex-shrink: initial;
    margin-right: 0 !important;
    max-width: 376px;
    width: 33% !important;
  }
}
.c-slider-2 .splide__slide {
  transform: translate3d(0, 0, 0);
}
.c-slider-2 .splide__pagination {
  align-items: center;
  display: flex;
  gap: calc(20 / var(--design-width) * 100vw);
  justify-content: center;
  margin-top: calc(20 / var(--design-width) * 100vw);
}
@media print, screen and (min-width: 1024px) {
  .c-slider-2 .splide__pagination {
    display: none !important;
  }
}
.c-slider-2 .splide__pagination li {
  font-size: 0;
  list-style: none;
}
.c-slider-2 .splide__pagination li:nth-child(n + 4) {
  display: none !important;
}
.c-slider-2 .splide__pagination__page {
  background-color: rgba(255, 255, 255, 0.3);
  border: none;
  border-radius: 50%;
  cursor: pointer;
  height: calc(10 / var(--design-width) * 100vw);
  padding: 0;
  touch-action: manipulation;
  width: calc(10 / var(--design-width) * 100vw);
}
.c-slider-2 .splide__pagination__page.is-active {
  background-color: #fff;
  opacity: 1;
}
.c-slider-2 .splide__pagination__page:focus-visible {
  outline: 3px solid #b4e900;
  outline-offset: 3px;
}
@media (hover: hover) and (pointer: fine) {
  .c-slider-2 .splide__pagination__page {
    transition: opacity 0.3s;
  }
  .c-slider-2 .splide__pagination__page:hover {
    opacity: 0.8;
  }
}
.c-slider-2__img img {
  display: block;
  height: auto;
  vertical-align: bottom;
  width: 100%;
}

/* ---------------------------------------------
*   c-slider-3
--------------------------------------------- */
.c-slider-3__container {
  margin-inline: auto;
  max-width: 1320px;
  position: relative;
}
@media screen and (max-width: 1023px) {
  .c-slider-3__container {
    max-width: none;
  }
}
.c-slider-3__wrapper {
  padding-inline: min(var(--contents-side-padding) * 1px, 4.861%);
}
@media screen and (max-width: 1023px) {
  .c-slider-3__wrapper {
    padding-inline: 0;
  }
}
.c-slider-3__slide {
  padding-block: 10px;
}
.c-slider-3__slide[role="tabpanel"] {
  animation: none !important;
  display: block !important;
  opacity: 1 !important;
}
.c-slider-3 .splide__slide {
  transform: translate3d(0, 0, 0);
}
.c-slider-3 .splide__arrow {
  --arrow-pos-x: 0.8%;
  box-sizing: border-box;
  cursor: pointer;
  display: grid;
  overflow: hidden;
  place-items: center;
  position: absolute;
  top: 50%;
  touch-action: manipulation;
  translate: 0 -50%;
  width: 3.4722222222%;
  z-index: 1;
}
@media screen and (max-width: 1023px) {
  .c-slider-3 .splide__arrow {
    --arrow-pos-x: 2.666%;
    width: calc(22 / var(--design-width) * 100vw);
  }
}
.c-slider-3 .splide__arrow:focus-visible {
  outline: 3px solid #b4e900;
  outline-offset: 3px;
}
.c-slider-3 .splide__arrow--prev {
  left: var(--arrow-pos-x);
}
.c-slider-3 .splide__arrow--next {
  right: var(--arrow-pos-x);
}
@media (hover: hover) and (pointer: fine) {
  .c-slider-3 .splide__arrow {
    transition: opacity 0.3s;
  }
  .c-slider-3 .splide__arrow:hover {
    opacity: 0.8;
  }
}
@media screen and (min-width: 1340px) {
  .c-slider-3 .splide__arrow {
    --arrow-pos-x: 0.4%;
  }
}
@media screen and (min-width: 1420px) {
  .c-slider-3 .splide__arrow {
    --arrow-pos-x: -30px;
    width: 60px;
  }
}
.c-slider-3 .splide__pagination {
  gap: 46px;
  inset: auto 0 -60px 0;
  position: absolute;
}
@media screen and (max-width: 1023px) {
  .c-slider-3 .splide__pagination {
    gap: 20px;
    inset: auto 0 -35px 0;
  }
}
.c-slider-3 .splide__pagination li {
  font-size: 0;
}
.c-slider-3 .splide__pagination__page {
  background-color: rgba(0, 0, 72, 0.2);
  border-radius: 50%;
  cursor: pointer;
  height: 16px;
  touch-action: manipulation;
  width: 16px;
}
@media screen and (max-width: 1023px) {
  .c-slider-3 .splide__pagination__page {
    height: 10px;
    width: 10px;
  }
}
.c-slider-3 .splide__pagination__page.is-active {
  background-color: var(--color-black-3);
}
.c-slider-3 .splide__pagination__page:focus-visible {
  outline: 3px solid #b4e900;
  outline-offset: 3px;
}
@media (hover: hover) and (pointer: fine) {
  .c-slider-3 .splide__pagination__page {
    transition: opacity 0.3s;
  }
  .c-slider-3 .splide__pagination__page:hover {
    opacity: 0.8;
  }
}
.c-slider-3__img img {
  height: auto;
  vertical-align: bottom;
  width: 100%;
}

/* ---------------------------------------------
*   導入事例　swiper
--------------------------------------------- */
.articleCarousel {
  position: relative;
}

.articleCarousel__inner {
  color: #fff;
  display: block;
  overflow: hidden;
  position: relative;
}

.articleCarousel__inner:hover .articleCarousel__img {
  transform: scale(1.05);
}

.articleCarousel__img {
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 80%;
  transition: all 0.4s ease;
}

.articleCarousel__img:after {
  bottom: 0;
  box-shadow: 0 -13em 8em -8em rgba(34, 56, 76, 0.6) inset;
  content: "";
  left: 0;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 6;
}

.articleCarousel__txt {
  bottom: 0;
  font-family: "UD新ゴ B";
  left: 0;
  line-height: 1.4;
  padding: 15px 20px;
  position: absolute;
  width: 100%;
  z-index: 7;
}

.articleCarousel .swiper-button-prev,
.articleCarousel .swiper-button-next {
  background: rgba(64, 64, 64, 0.65);
  border-radius: 100px;
  display: block;
  height: 89px;
  left: 5%;
  margin-top: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 50px;
  z-index: 15;
}

.articleCarousel .swiper-button-prev {
  left: 30px;
}

.articleCarousel .swiper-button-prev:before,
.articleCarousel .swiper-button-next:before {
  background: url(/static/jp/common/img/ico_leftArrow02.png) 0 0 no-repeat;
  background-size: cover;
  content: "";
  display: inline-block;
  height: 10px;
  left: calc(50% - 4px);
  position: absolute;
  top: calc(50% - 5px);
  vertical-align: middle;
  width: 6px;
}

.articleCarousel .swiper-button-next {
  left: auto;
  right: 30px;
}

.articleCarousel .swiper-button-next:before {
  background-image: url(/static/jp/common/img/ico_rightArrow02.png);
  left: calc(50% - 2px);
}

.articleCarousel .swiper-pagination-bullets {
  bottom: 0;
  width: 100%;
}

.articleCarousel .swiper-pagination-bullets > .swiper-pagination-bullet {
  height: 10px;
  margin-inline: 16px;
  width: 10px;
}

.articleCarousel .swiper-pagination-bullet-active {
  background-color: #000048;
}

.articleCarousel .swiper-container {
  padding-bottom: 50px;
}

.articleCarousel .js-articleCarousel--column {
  overflow: visible;
}

.carouseSWPanelList .swiper-slide {
  max-width: initial;
}

@media screen and (max-width: 1023px) {
  .articleCarousel .swiper-pagination-bullets > .swiper-pagination-bullet {
    margin-inline: 11px;
  }
  .articleCarousel .swiper-container {
    padding-bottom: 45px;
  }
  .articleCarousel .swiper-button-prev,
  .articleCarousel .swiper-button-next {
    border-radius: 100px;
    height: 66px;
    width: 22px;
  }
  .articleCarousel .swiper-button-prev {
    left: 0;
  }
  .articleCarousel .swiper-button-next {
    left: auto;
    right: 0;
  }
}
/* ---------------------------------------------
*   c-table
--------------------------------------------- */
/* ---------------------------------------------
*   c-tile
--------------------------------------------- */
/* ---------------------------------------------
*   c-ttl-1
--------------------------------------------- */
.c-ttl-1 {
  font-family: var(--ff-ls-b);
  font-size: calc(32 / var(--root-fz) * 1rem);
  padding-left: 25px;
  position: relative;
}
@media screen and (max-width: 1023px) {
  .c-ttl-1 {
    font-size: calc(26 / var(--root-fz) * 1rem);
    line-height: 1.5384615385;
    padding-left: 20px;
  }
}
@media screen and (max-width: 1023px) {
  .c-section-data > .c-ttl-1,
  .c-section-howto > .c-ttl-1 {
    margin-top: 12px;
  }
}

.c-ttl-1::before {
  background: var(--color-green-1);
  border-radius: 50%;
  bottom: 0;
  content: "";
  height: 10px;
  left: 0;
  margin: auto 0;
  position: absolute;
  top: -3px;
  width: 10px;
}
@media screen and (max-width: 1023px) {
  .c-ttl-1::before {
    height: 8px;
    margin: 0;
    top: 15px;
    width: 8px;
  }
}
.c-ttl-1--sp-only {
  display: none;
}
.iphone .c-ttl-1--sp-only,
.android .c-ttl-1--sp-only {
  display: block;
}

/* ---------------------------------------------
*   c-txt-1
--------------------------------------------- */
.c-txt-1 {
  font-size: calc(16 / var(--root-fz) * 1rem);
  line-height: 2.125;
  margin-top: 18px;
}
@media screen and (max-width: 1023px) {
  .c-txt-1 {
    font-size: calc(14 / var(--root-fz) * 1rem);
    line-height: 2;
    margin-top: 20px;
  }
}
.c-txt-1 + .c-txt-1 {
  margin-top: 35px;
}
@media screen and (max-width: 1023px) {
  .c-txt-1 + .c-txt-1 {
    margin-top: 30px;
  }
}
.c-txt-1 sup {
  position: relative;
  top: 1px;
}
@media screen and (max-width: 1023px) {
  .c-txt-1 sup {
    font-size: 0.85rem;
    top: 2px;
  }
}

/* ---------------------------------------------
*   c-txt-2
--------------------------------------------- */
.c-txt-2 {
  font-size: calc(16 / var(--root-fz) * 1rem);
  line-height: 2;
  margin-top: 16px;
}
@media screen and (max-width: 1023px) {
  .c-txt-2 {
    font-size: calc(14 / var(--root-fz) * 1rem);
    line-height: 2;
    margin-top: 14px;
  }
}
.c-txt-2 + .c-txt-2 {
  margin-top: 35px;
}
@media screen and (max-width: 1023px) {
  .c-txt-2 + .c-txt-2 {
    margin-top: 34px;
  }
}
@media screen and (max-width: 1023px) {
  .c-block-data > .c-txt-2 {
    margin-top: 10px;
  }
}

.c-txt-2--small {
  color: var(--color-gray-4);
  font-size: calc(12 / var(--root-fz) * 1rem);
  line-height: 2.6666666667;
}
@media screen and (max-width: 1023px) {
  .c-txt-2--small {
    display: block;
    font-size: calc(10 / var(--root-fz) * 1rem);
    line-height: 2.8;
  }
}
.c-txt-2 sup {
  position: relative;
  top: 1px;
}
@media screen and (max-width: 1023px) {
  .c-txt-2 sup {
    font-size: 0.85rem;
    top: 2px;
  }
}

/* ---------------------------------------------
*   background-color
--------------------------------------------- */
.bg-white {
  background-color: var(--color-white-1) !important;
}

/* ---------------------------------------------
*   font-wight
--------------------------------------------- */
.fw-normal {
  font-weight: 500 !important;
}

.fw-bold {
  font-weight: 700 !important;
}

/* ---------------------------------------------
*   text-align
--------------------------------------------- */
.txt-al-center {
  text-align: center !important;
}

.txt-al-right {
  text-align: right !important;
}

.txt-al-left {
  text-align: left !important;
}

/* ---------------------------------------------
*   ページトップボタン
--------------------------------------------- */
@media screen and (max-width: 1023px) {
  .lyb-fixed-pagetop {
    display: none !important;
  }
}
.js-acc-faq-target {
  --acc-body-height: 0;
  height: 0;
  overflow: hidden;
}
.js-acc-faq-scope.is-close .js-acc-faq-target {
  animation: closeAccAnim 0.5s forwards;
}

.js-acc-faq-scope.is-open .js-acc-faq-target {
  animation: openAccAnim 0.5s forwards;
}

@keyframes openAccAnim {
  0% {
    height: 0;
    visibility: hidden;
  }
  99% {
    height: var(--acc-body-height);
    visibility: visible;
  }
  100% {
    height: auto;
  }
}
@keyframes closeAccAnim {
  0% {
    height: var(--acc-body-height);
  }
  99% {
    visibility: visible;
  }
  100% {
    height: 0;
    visibility: hidden;
  }
}

@media print and (min-width: 1024px), screen and (min-width: 1024px) {
  .pc-hide {
    display: none !important;
  }
}
@media print and (max-width: 1023px), screen and (max-width: 1023px) {
  .sp-hide {
    display: none !important;
  }
}
/* ---------------------------------------------
*   margin-top
--------------------------------------------- */
.mgt-pc--0 {
  margin-top: 0 !important;
}

.mgt-pc--5 {
  margin-top: 5px !important;
}

.mgt-pc--10 {
  margin-top: 10px !important;
}

.mgt-pc--15 {
  margin-top: 15px !important;
}

.mgt-pc--20 {
  margin-top: 20px !important;
}

.mgt-pc--25 {
  margin-top: 25px !important;
}

.mgt-pc--30 {
  margin-top: 30px !important;
}

.mgt-pc--35 {
  margin-top: 35px !important;
}

.mgt-pc--40 {
  margin-top: 40px !important;
}

.mgt-pc--45 {
  margin-top: 45px !important;
}

.mgt-pc--50 {
  margin-top: 50px !important;
}

.mgt-pc--55 {
  margin-top: 55px !important;
}

.mgt-pc--60 {
  margin-top: 60px !important;
}

.mgt-pc--65 {
  margin-top: 65px !important;
}

.mgt-pc--70 {
  margin-top: 70px !important;
}

.mgt-pc--75 {
  margin-top: 75px !important;
}

.mgt-pc--80 {
  margin-top: 80px !important;
}

.mgt-pc--85 {
  margin-top: 85px !important;
}

.mgt-pc--90 {
  margin-top: 90px !important;
}

.mgt-pc--95 {
  margin-top: 95px !important;
}

.mgt-pc--100 {
  margin-top: 100px !important;
}

.mgt-pc--105 {
  margin-top: 105px !important;
}

.mgt-pc--110 {
  margin-top: 110px !important;
}

.mgt-pc--115 {
  margin-top: 115px !important;
}

.mgt-pc--120 {
  margin-top: 120px !important;
}

.mgt-pc--125 {
  margin-top: 125px !important;
}

.mgt-pc--130 {
  margin-top: 130px !important;
}

.mgt-pc--135 {
  margin-top: 135px !important;
}

.mgt-pc--140 {
  margin-top: 140px !important;
}

.mgt-pc--145 {
  margin-top: 145px !important;
}

.mgt-pc--150 {
  margin-top: 150px !important;
}

.mgt-pc--155 {
  margin-top: 155px !important;
}

.mgt-pc--160 {
  margin-top: 160px !important;
}

.mgt-pc--165 {
  margin-top: 165px !important;
}

.mgt-pc--170 {
  margin-top: 170px !important;
}

.mgt-pc--175 {
  margin-top: 175px !important;
}

.mgt-pc--180 {
  margin-top: 180px !important;
}

.mgt-pc--185 {
  margin-top: 185px !important;
}

.mgt-pc--190 {
  margin-top: 190px !important;
}

.mgt-pc--195 {
  margin-top: 195px !important;
}

.mgt-pc--200 {
  margin-top: 200px !important;
}

.mgt-pc--205 {
  margin-top: 205px !important;
}

.mgt-pc--210 {
  margin-top: 210px !important;
}

.mgt-pc--215 {
  margin-top: 215px !important;
}

.mgt-pc--220 {
  margin-top: 220px !important;
}

.mgt-pc--225 {
  margin-top: 225px !important;
}

.mgt-pc--230 {
  margin-top: 230px !important;
}

.mgt-pc--235 {
  margin-top: 235px !important;
}

.mgt-pc--240 {
  margin-top: 240px !important;
}

.mgt-pc--245 {
  margin-top: 245px !important;
}

.mgt-pc--250 {
  margin-top: 250px !important;
}

@media screen and (max-width: 1023px) {
  .mgt-sp--0 {
    margin-top: 0 !important;
  }
  .mgt-sp--5 {
    margin-top: calc(5 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--10 {
    margin-top: calc(10 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--15 {
    margin-top: calc(15 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--20 {
    margin-top: calc(20 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--25 {
    margin-top: calc(25 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--30 {
    margin-top: calc(30 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--35 {
    margin-top: calc(35 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--40 {
    margin-top: calc(40 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--45 {
    margin-top: calc(45 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--50 {
    margin-top: calc(50 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--55 {
    margin-top: calc(55 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--60 {
    margin-top: calc(60 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--65 {
    margin-top: calc(65 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--70 {
    margin-top: calc(70 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--75 {
    margin-top: calc(75 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--80 {
    margin-top: calc(80 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--85 {
    margin-top: calc(85 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--90 {
    margin-top: calc(90 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--95 {
    margin-top: calc(95 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--100 {
    margin-top: calc(100 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--105 {
    margin-top: calc(105 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--110 {
    margin-top: calc(110 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--115 {
    margin-top: calc(115 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--120 {
    margin-top: calc(120 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--125 {
    margin-top: calc(125 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--130 {
    margin-top: calc(130 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--135 {
    margin-top: calc(135 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--140 {
    margin-top: calc(140 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--145 {
    margin-top: calc(145 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--150 {
    margin-top: calc(150 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--155 {
    margin-top: calc(155 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--160 {
    margin-top: calc(160 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--165 {
    margin-top: calc(165 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--170 {
    margin-top: calc(170 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--175 {
    margin-top: calc(175 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--180 {
    margin-top: calc(180 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--185 {
    margin-top: calc(185 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--190 {
    margin-top: calc(190 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--195 {
    margin-top: calc(195 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--200 {
    margin-top: calc(200 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--205 {
    margin-top: calc(205 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--210 {
    margin-top: calc(210 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--215 {
    margin-top: calc(215 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--220 {
    margin-top: calc(220 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--225 {
    margin-top: calc(225 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--230 {
    margin-top: calc(230 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--235 {
    margin-top: calc(235 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--240 {
    margin-top: calc(240 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--245 {
    margin-top: calc(245 / var(--design-width) * 100vw) !important;
  }
  .mgt-sp--250 {
    margin-top: calc(250 / var(--design-width) * 100vw) !important;
  }
}
/* ---------------------------------------------
*   margin-bottom
--------------------------------------------- */
.mgb-pc--0 {
  margin-bottom: 0 !important;
}

.mgb-pc--5 {
  margin-bottom: 5px !important;
}

.mgb-pc--10 {
  margin-bottom: 10px !important;
}

.mgb-pc--15 {
  margin-bottom: 15px !important;
}

.mgb-pc--20 {
  margin-bottom: 20px !important;
}

.mgb-pc--25 {
  margin-bottom: 25px !important;
}

.mgb-pc--30 {
  margin-bottom: 30px !important;
}

.mgb-pc--35 {
  margin-bottom: 35px !important;
}

.mgb-pc--40 {
  margin-bottom: 40px !important;
}

.mgb-pc--45 {
  margin-bottom: 45px !important;
}

.mgb-pc--50 {
  margin-bottom: 50px !important;
}

.mgb-pc--55 {
  margin-bottom: 55px !important;
}

.mgb-pc--60 {
  margin-bottom: 60px !important;
}

.mgb-pc--65 {
  margin-bottom: 65px !important;
}

.mgb-pc--70 {
  margin-bottom: 70px !important;
}

.mgb-pc--75 {
  margin-bottom: 75px !important;
}

.mgb-pc--80 {
  margin-bottom: 80px !important;
}

.mgb-pc--85 {
  margin-bottom: 85px !important;
}

.mgb-pc--90 {
  margin-bottom: 90px !important;
}

.mgb-pc--95 {
  margin-bottom: 95px !important;
}

.mgb-pc--100 {
  margin-bottom: 100px !important;
}

.mgb-pc--105 {
  margin-bottom: 105px !important;
}

.mgb-pc--110 {
  margin-bottom: 110px !important;
}

.mgb-pc--115 {
  margin-bottom: 115px !important;
}

.mgb-pc--120 {
  margin-bottom: 120px !important;
}

.mgb-pc--125 {
  margin-bottom: 125px !important;
}

.mgb-pc--130 {
  margin-bottom: 130px !important;
}

.mgb-pc--135 {
  margin-bottom: 135px !important;
}

.mgb-pc--140 {
  margin-bottom: 140px !important;
}

.mgb-pc--145 {
  margin-bottom: 145px !important;
}

.mgb-pc--150 {
  margin-bottom: 150px !important;
}

.mgb-pc--155 {
  margin-bottom: 155px !important;
}

.mgb-pc--160 {
  margin-bottom: 160px !important;
}

.mgb-pc--165 {
  margin-bottom: 165px !important;
}

.mgb-pc--170 {
  margin-bottom: 170px !important;
}

.mgb-pc--175 {
  margin-bottom: 175px !important;
}

.mgb-pc--180 {
  margin-bottom: 180px !important;
}

.mgb-pc--185 {
  margin-bottom: 185px !important;
}

.mgb-pc--190 {
  margin-bottom: 190px !important;
}

.mgb-pc--195 {
  margin-bottom: 195px !important;
}

.mgb-pc--200 {
  margin-bottom: 200px !important;
}

.mgb-pc--205 {
  margin-bottom: 205px !important;
}

.mgb-pc--210 {
  margin-bottom: 210px !important;
}

.mgb-pc--215 {
  margin-bottom: 215px !important;
}

.mgb-pc--220 {
  margin-bottom: 220px !important;
}

.mgb-pc--225 {
  margin-bottom: 225px !important;
}

.mgb-pc--230 {
  margin-bottom: 230px !important;
}

.mgb-pc--235 {
  margin-bottom: 235px !important;
}

.mgb-pc--240 {
  margin-bottom: 240px !important;
}

.mgb-pc--245 {
  margin-bottom: 245px !important;
}

.mgb-pc--250 {
  margin-bottom: 250px !important;
}

@media screen and (max-width: 1023px) {
  .mgb-sp--0 {
    margin-bottom: 0 !important;
  }
  .mgb-sp--5 {
    margin-bottom: calc(5 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--10 {
    margin-bottom: calc(10 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--15 {
    margin-bottom: calc(15 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--20 {
    margin-bottom: calc(20 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--25 {
    margin-bottom: calc(25 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--30 {
    margin-bottom: calc(30 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--35 {
    margin-bottom: calc(35 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--40 {
    margin-bottom: calc(40 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--45 {
    margin-bottom: calc(45 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--50 {
    margin-bottom: calc(50 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--55 {
    margin-bottom: calc(55 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--60 {
    margin-bottom: calc(60 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--65 {
    margin-bottom: calc(65 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--70 {
    margin-bottom: calc(70 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--75 {
    margin-bottom: calc(75 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--80 {
    margin-bottom: calc(80 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--85 {
    margin-bottom: calc(85 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--90 {
    margin-bottom: calc(90 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--95 {
    margin-bottom: calc(95 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--100 {
    margin-bottom: calc(100 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--105 {
    margin-bottom: calc(105 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--110 {
    margin-bottom: calc(110 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--115 {
    margin-bottom: calc(115 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--120 {
    margin-bottom: calc(120 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--125 {
    margin-bottom: calc(125 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--130 {
    margin-bottom: calc(130 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--135 {
    margin-bottom: calc(135 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--140 {
    margin-bottom: calc(140 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--145 {
    margin-bottom: calc(145 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--150 {
    margin-bottom: calc(150 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--155 {
    margin-bottom: calc(155 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--160 {
    margin-bottom: calc(160 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--165 {
    margin-bottom: calc(165 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--170 {
    margin-bottom: calc(170 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--175 {
    margin-bottom: calc(175 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--180 {
    margin-bottom: calc(180 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--185 {
    margin-bottom: calc(185 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--190 {
    margin-bottom: calc(190 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--195 {
    margin-bottom: calc(195 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--200 {
    margin-bottom: calc(200 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--205 {
    margin-bottom: calc(205 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--210 {
    margin-bottom: calc(210 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--215 {
    margin-bottom: calc(215 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--220 {
    margin-bottom: calc(220 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--225 {
    margin-bottom: calc(225 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--230 {
    margin-bottom: calc(230 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--235 {
    margin-bottom: calc(235 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--240 {
    margin-bottom: calc(240 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--245 {
    margin-bottom: calc(245 / var(--design-width) * 100vw) !important;
  }
  .mgb-sp--250 {
    margin-bottom: calc(250 / var(--design-width) * 100vw) !important;
  }
}
