@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap");
.u-en {
  font-family: "din-2014", sans-serif;
}

.u-color--orange {
  color: #E85830;
}
.u-color--blue {
  color: #2558AA;
}

/*** The new CSS reset - version 1.5.1 (last updated 1.3.2022) ***/
body {
  margin: 0;
  padding: 0;
}

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

a,
button {
  cursor: revert;
  color: inherit;
}

h1, h2, h3, h4, h5, h6, p {
  margin: 0;
}

ol,
ul,
menu {
  list-style: none;
  padding: 0;
  margin: 0;
}

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

table {
  border-collapse: collapse;
}

textarea {
  white-space: revert;
}

meter {
  -webkit-appearance: revert;
  appearance: revert;
}

::placeholder {
  color: unset;
}

:where([hidden]) {
  display: none;
}

:where([contenteditable]) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
}

:where([draggable=true]) {
  -webkit-user-drag: element;
}

/*------------------------------

  開発環境の初期化

------------------------------*/
html {
  scroll-behavior: smooth;
  overflow-x: hidden;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  color: #535151;
}
body a {
  text-decoration: none;
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  body a:hover:hover {
    opacity: 0.7;
  }
}

.c-bg1 {
  background-color: #E85732;
  color: #fff;
}
.c-bg1 .c-title-en {
  color: #fff;
  opacity: 0.6;
}

.c-bg2 {
  background-color: #FFECE8;
}

.c-title {
  text-align: center;
}
.c-title-en {
  display: block;
  font-family: "din-2014", sans-serif;
  color: rgba(232, 88, 48, 0.6);
}
@media screen and (min-width: 768px) {
  .c-title-en {
    font-size: clamp(11.5px, 1.796875vw, 23px);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .c-title-en {
    font-size: calc(18 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
.c-title-jp {
  display: block;
  font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .c-title-jp {
    font-size: clamp(20px, 3.125vw, 40px);
    line-height: 1.5;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .c-title-jp {
    font-size: calc(30 / 393 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .c-title-jp {
    margin-top: min(8px, 0.625vw);
  }
}
@media screen and (max-width: 767px) {
  .c-title-jp {
    margin-top: 3.0534351145vw;
  }
}

.l-footer {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .l-footer {
    padding-bottom: min(72px, 5.625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-footer {
    padding-bottom: 30.534351145vw;
  }
}
.l-footer__list {
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .l-footer__list {
    margin-bottom: min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .l-footer__list {
    margin-bottom: 3.0534351145vw;
  }
}
.l-footer__list-item {
  display: flex;
}
@media screen and (min-width: 768px) {
  .l-footer__list-item:not(:last-of-type) {
    border-right: 2px solid #535151;
    padding-right: min(6px, 0.46875vw);
    margin-right: min(6px, 0.46875vw);
  }
}
@media screen and (max-width: 767px) {
  .l-footer__list-item:not(:last-of-type) {
    border-right: 1px solid #535151;
    padding-right: 1.5267175573vw;
    margin-right: 1.5267175573vw;
  }
}
@media screen and (min-width: 768px) {
  .l-footer__list-item a {
    font-size: clamp(7.5px, 1.171875vw, 15px);
    line-height: 1;
    letter-spacing: 0.06em;
    font-weight: 600;
  }
}
@media screen and (max-width: 767px) {
  .l-footer__list-item a {
    font-size: calc(12 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0.06em;
    font-weight: 600;
  }
}
@media screen and (min-width: 768px) {
  .l-footer__copy {
    font-size: clamp(7.5px, 1.171875vw, 15px);
    line-height: 1.5;
    letter-spacing: 0.06em;
    font-weight: 600;
  }
}
@media screen and (max-width: 767px) {
  .l-footer__copy {
    font-size: calc(12 / 393 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.06em;
    font-weight: 600;
  }
}

.p-float {
  position: fixed;
  z-index: 99999;
}
@media screen and (min-width: 768px) {
  .p-float {
    right: 0;
    top: min(220px, 17.1875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-float {
    height: 19.8473282443vw;
    bottom: 0.7633587786vw;
    left: 50%;
    transform: translateX(-50%);
  }
}
.p-float__btn {
  background-color: #202020;
  position: relative;
  display: flex;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
}
@media screen and (min-width: 768px) {
  .p-float__btn {
    border-radius: min(10px, 0.78125vw) 0 0 min(10px, 0.78125vw);
    width: min(78px, 6.09375vw);
    height: min(314px, 24.53125vw);
    padding: min(60px, 4.6875vw) min(18px, 1.40625vw) min(94px, 7.34375vw) min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-float__btn {
    flex-direction: column;
    border-radius: 5.0890585242vw;
    width: 97.9643765903vw;
    height: 19.8473282443vw;
  }
}
.p-float__btn::after {
  position: absolute;
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/ic-home.png);
}
@media screen and (min-width: 768px) {
  .p-float__btn::after {
    width: min(37px, 2.890625vw);
    height: min(30px, 2.34375vw);
    right: min(15px, 1.171875vw);
    bottom: min(54px, 4.21875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-float__btn::after {
    width: 9.4147582697vw;
    height: 7.6335877863vw;
    top: 2.7989821883vw;
    right: 25.1908396947vw;
  }
}
.p-float__btn-txt {
  color: #fff;
}
@media screen and (min-width: 768px) {
  .p-float__btn-txt {
    font-size: clamp(13.5px, 2.109375vw, 27px);
    line-height: 1.1851851852;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-float__btn-txt {
    font-size: calc(27 / 393 * 100vw);
    line-height: 1.1851851852;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-float__btn-txt {
    padding-top: 2.7989821883vw;
    padding-left: 25.6997455471vw;
  }
}
.p-float__text {
  color: #fff;
}
@media screen and (min-width: 768px) {
  .p-float__text {
    font-size: clamp(8.5px, 1.328125vw, 17px);
    line-height: 1.1176470588;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-float__text {
    font-size: calc(12 / 393 * 100vw);
    line-height: 1.5833333333;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-float__text {
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    text-orientation: upright;
    margin: min(14px, 1.09375vw) min(10px, 0.78125vw) 0 auto;
    text-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  }
}
@media screen and (max-width: 767px) {
  .p-float__text {
    text-align: center;
    margin-top: 0.7633587786vw;
  }
}
@media screen and (min-width: 768px) {
  .p-float__text-small {
    font-size: clamp(7.5px, 1.171875vw, 15px);
    line-height: 2;
    letter-spacing: 0.03em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-float__text-small {
    font-size: calc(11 / 393 * 100vw);
    line-height: 1.4545454545;
    letter-spacing: 0.03em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-float__text-small {
    display: block;
    margin-top: min(-4px, -0.3125vw);
  }
}

@media screen and (min-width: 768px) {
  .p-kv__bg {
    padding: min(70px, 5.46875vw) 0 min(58px, 4.53125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-kv__bg {
    padding: 5.0890585242vw 0 10.6870229008vw;
  }
}
.p-kv__tabwrap {
  display: flex;
}
@media screen and (min-width: 768px) {
  .p-kv__tabwrap {
    align-items: center;
    justify-content: center;
    column-gap: min(250px, 19.53125vw);
    border-bottom: 2px solid #D9D9D9;
    margin-bottom: min(85px, 6.640625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-kv__tabwrap {
    flex-direction: column-reverse;
    margin-bottom: 6.106870229vw;
    row-gap: 7.6335877863vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__lead {
    font-size: clamp(12px, 1.875vw, 24px);
    line-height: 1.2083333333;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__lead {
    font-size: calc(24 / 393 * 100vw);
    line-height: 1.2083333333;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__lead {
    width: 100%;
    text-align: center;
  }
}
.p-kv__tab {
  display: flex;
  align-items: flex-end;
}
@media screen and (min-width: 768px) {
  .p-kv__tab {
    column-gap: min(12px, 0.9375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-kv__tab {
    justify-content: center;
    column-gap: 3.0534351145vw;
    border-bottom: 2px solid #D9D9D9;
  }
}
.p-kv__tab-item {
  display: flex;
}
.p-kv__tab-item .current {
  display: flex;
  align-items: center;
  justify-content: center;
  border-left: 2px solid #fff;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}
@media screen and (min-width: 768px) {
  .p-kv__tab-item .current {
    font-size: clamp(11px, 1.71875vw, 22px);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__tab-item .current {
    font-size: calc(22 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__tab-item .current {
    width: min(183px, 14.296875vw);
    height: min(80px, 6.25vw);
    border-radius: min(20px, 1.5625vw) min(20px, 1.5625vw) 0 0;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__tab-item .current {
    width: 46.5648854962vw;
    height: 20.3562340967vw;
    border-radius: 5.0890585242vw 5.0890585242vw 0 0;
  }
}
.p-kv__tab-item .link {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FFB9A8;
  color: rgba(232, 87, 50, 0.6);
}
@media screen and (min-width: 768px) {
  .p-kv__tab-item .link {
    font-size: clamp(11px, 1.71875vw, 22px);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__tab-item .link {
    font-size: calc(22 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__tab-item .link {
    width: min(183px, 14.296875vw);
    height: min(56px, 4.375vw);
    border-radius: min(20px, 1.5625vw) min(20px, 1.5625vw) 0 0;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__tab-item .link {
    width: 46.5648854962vw;
    height: 14.2493638677vw;
    border-radius: 5.0890585242vw 5.0890585242vw 0 0;
  }
}
.p-kv__wrap {
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-kv__wrap {
    margin: 0 auto;
    max-width: 1280px;
    padding-left: min(170px, 13.28125vw);
    padding-right: min(80px, 6.25vw);
    display: flex;
    align-items: center;
  }
}
.p-kv__text-logo {
  background-color: #fff;
  display: flex;
  align-items: center;
  width: max-content;
}
@media screen and (min-width: 768px) {
  .p-kv__text-logo {
    padding: min(17px, 1.328125vw) min(50px, 3.90625vw) min(17px, 1.328125vw) min(34px, 2.65625vw);
    border-radius: min(35px, 2.734375vw);
    margin-bottom: min(42px, 3.28125vw);
    column-gap: min(19px, 1.484375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-logo {
    padding: 4.3256997455vw 8.6513994911vw 4.3256997455vw 6.3613231552vw;
    border-radius: 5.0890585242vw;
    column-gap: 3.8167938931vw;
    margin: 0 auto 3.3078880407vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__text-logo .logo {
    width: min(78px, 6.09375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-logo .logo {
    width: 15.7760814249vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__text-logo .txt {
    width: min(214px, 16.71875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-logo .txt {
    width: 43.2569974555vw;
  }
}
.p-kv__text-timelead {
  color: #fff;
  font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .p-kv__text-timelead {
    font-size: clamp(20px, 3.125vw, 40px);
    line-height: 1.45;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-timelead {
    font-size: calc(40 / 393 * 100vw);
    line-height: 1.45;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__text-timelead {
    margin-bottom: min(18px, 1.40625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-timelead {
    text-align: center;
    margin-bottom: 3.0534351145vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__text-timelead .small {
    font-size: min(28px, 2.1875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-timelead .small {
    font-size: 7.1246819338vw;
  }
}
.p-kv__text-time {
  display: flex;
  overflow: hidden;
  background-color: #fff;
  width: max-content;
}
@media screen and (min-width: 768px) {
  .p-kv__text-time {
    border-radius: min(15px, 1.171875vw);
    margin-bottom: min(27px, 2.109375vw);
    height: min(91px, 7.109375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-time {
    margin: 0 auto 2.5445292621vw;
    height: 21.6284987277vw;
    border-radius: 3.8167938931vw;
  }
}
.p-kv__text-time .before {
  display: flex;
  align-items: center;
  color: #535151;
}
@media screen and (min-width: 768px) {
  .p-kv__text-time .before {
    padding: 0 min(13px, 1.015625vw) 0 min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-time .before {
    padding: 0 4.0712468193vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__text-time .before-time {
    font-size: clamp(26.5px, 4.140625vw, 53px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-time .before-time {
    font-size: calc(53 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__text-time .before-txt1 {
    font-size: clamp(14px, 2.1875vw, 28px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-time .before-txt1 {
    font-size: calc(28 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__text-time .before-txt2 {
    font-size: clamp(10.5px, 1.640625vw, 21px);
    line-height: 1.3333333333;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-time .before-txt2 {
    font-size: calc(21 / 393 * 100vw);
    line-height: 1.3333333333;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__text-time .before-txt2 {
    padding-top: min(8px, 0.625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-time .before-txt2 {
    padding-top: 2.0356234097vw;
  }
}
.p-kv__text-time .after {
  display: flex;
  align-items: center;
  background-color: rgba(239, 173, 156, 0.285);
}
@media screen and (min-width: 768px) {
  .p-kv__text-time .after {
    padding: 0 min(20px, 1.5625vw) 0 min(16px, 1.25vw);
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-time .after {
    padding: 0 2.2900763359vw 0 1.5267175573vw;
  }
}
.p-kv__text-time .after-time {
  color: #E85732;
}
@media screen and (min-width: 768px) {
  .p-kv__text-time .after-time {
    font-size: clamp(36.9px, 5.765625vw, 73.8px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-time .after-time {
    font-size: calc(73.8 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
.p-kv__text-time .after-txt {
  color: #E85732;
}
@media screen and (min-width: 768px) {
  .p-kv__text-time .after-txt {
    font-size: clamp(16px, 2.5vw, 32px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-time .after-txt {
    font-size: calc(32 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-time .after-txt {
    padding-top: 1.5267175573vw;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__text-time .after-icon {
    width: min(40px, 3.125vw);
    margin-left: min(6px, 0.46875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-time .after-icon {
    width: 9.8600508906vw;
    margin-left: 0.5089058524vw;
  }
}
.p-kv__text-txt {
  color: #fff;
}
@media screen and (min-width: 768px) {
  .p-kv__text-txt {
    font-size: clamp(10px, 1.5625vw, 20px);
    line-height: 2.5;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-txt {
    font-size: calc(15 / 393 * 100vw);
    line-height: 2.2666666667;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-kv__text-txt {
    margin-bottom: min(80px, 6.25vw);
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-txt {
    width: max-content;
    margin: 0 auto 95.4198473282vw;
  }
}
.p-kv__text-cm {
  display: flex;
}
@media screen and (min-width: 768px) {
  .p-kv__text-cm {
    width: min(446px, 34.84375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-kv__text-cm {
    width: 89.058524173vw;
    margin: 0 auto;
  }
}
.p-kv__img {
  display: flex;
}
@media screen and (min-width: 768px) {
  .p-kv__img {
    width: min(542px, 42.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-kv__img {
    position: absolute;
    z-index: 1;
    left: 50%;
    transform: translateX(-50%);
    width: 84.9872773537vw;
    bottom: 58.524173028vw;
  }
}

@media screen and (min-width: 768px) {
  .p-point {
    padding: min(97px, 7.578125vw) 0 min(73px, 5.703125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-point {
    padding: 13.7404580153vw 0 13.2315521628vw;
  }
}
.p-point__inner {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .p-point__inner {
    width: min(900px, 70.3125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-point__inner {
    width: 91.0941475827vw;
  }
}
.p-point__box {
  position: relative;
  text-align: center;
  border: 2px solid #2558AA;
}
@media screen and (min-width: 768px) {
  .p-point__box {
    border-radius: min(28px, 2.1875vw);
    padding: min(40px, 3.125vw);
    margin-bottom: min(40px, 3.125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-point__box {
    padding: 6.106870229vw 0;
    margin-bottom: 6.3613231552vw;
    border-radius: 7.1246819338vw;
  }
}
.p-point__box::before {
  position: absolute;
  content: "";
  display: block;
  background-color: #fff;
  z-index: 1;
  left: -2px;
  bottom: -2px;
}
@media screen and (min-width: 768px) {
  .p-point__box::before {
    width: min(48px, 3.75vw);
    height: min(48px, 3.75vw);
  }
}
@media screen and (max-width: 767px) {
  .p-point__box::before {
    width: 4.834605598vw;
    height: 9.1603053435vw;
  }
}
.p-point__box-en {
  position: absolute;
  top: 0;
  transform: translateY(-50%);
  background-color: #2558AA;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .p-point__box-en {
    font-size: clamp(22.9px, 3.578125vw, 45.8px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 600;
  }
}
@media screen and (max-width: 767px) {
  .p-point__box-en {
    font-size: calc(25.8 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 600;
  }
}
@media screen and (min-width: 768px) {
  .p-point__box-en {
    width: min(170px, 13.28125vw);
    height: min(49px, 3.828125vw);
    border-radius: min(50px, 3.90625vw);
    right: min(12px, 0.9375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-point__box-en {
    width: 23.6641221374vw;
    height: 9.1603053435vw;
    border-radius: 12.7226463104vw;
    right: 4.1984732824vw;
  }
}
.p-point__box-txt {
  font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .p-point__box-txt {
    font-size: clamp(15px, 2.34375vw, 30px);
    line-height: 1.8666666667;
    letter-spacing: 0.02em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-point__box-txt {
    font-size: calc(20 / 393 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.02em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-point__box-largetxt {
    font-size: clamp(18px, 2.8125vw, 36px);
    line-height: 1.7222222222;
    letter-spacing: 0.02em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-point__box-largetxt {
    font-size: calc(25 / 393 * 100vw);
    line-height: 2;
    letter-spacing: 0.02em;
    font-weight: 700;
  }
}
.p-point__title {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-point__title {
    margin-bottom: 2.0356234097vw;
  }
}
.p-point__title-jp {
  display: block;
  font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .p-point__title-jp {
    font-size: clamp(20.18px, 3.153125vw, 40.36px);
    line-height: 1.9326065411;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-point__title-jp {
    font-size: calc(30 / 393 * 100vw);
    line-height: 1.6666666667;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
.p-point__title-en {
  display: block;
}
@media screen and (min-width: 768px) {
  .p-point__title-en {
    font-size: clamp(11.5px, 1.796875vw, 23px);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-point__title-en {
    font-size: calc(18 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
.p-point__wrap {
  display: flex;
}
@media screen and (min-width: 768px) {
  .p-point__wrap {
    align-items: flex-end;
    justify-content: center;
    column-gap: min(32px, 2.5vw);
  }
}
@media screen and (max-width: 767px) {
  .p-point__wrap {
    flex-direction: column;
    align-items: center;
    row-gap: 2.5445292621vw;
  }
}
@media screen and (min-width: 768px) {
  .p-point__img {
    width: min(213px, 16.640625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-point__img {
    width: 34.6055979644vw;
  }
}
@media screen and (max-width: 767px) {
  .p-point__text {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .p-point__list {
    padding-left: 9.1603053435vw;
  }
}
.p-point__list-item {
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-point__list-item {
    font-size: clamp(10px, 1.5625vw, 20px);
    line-height: 2.5;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-point__list-item {
    font-size: calc(15 / 393 * 100vw);
    line-height: 1.3333333333;
    letter-spacing: 0.05em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-point__list-item {
    padding-left: min(62px, 4.84375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-point__list-item {
    padding-left: 8.6513994911vw;
  }
}
@media screen and (max-width: 767px) {
  .p-point__list-item:not(:last-of-type) {
    margin-bottom: 4.5801526718vw;
  }
}
.p-point__list-item .marker {
  background: linear-gradient(transparent 50%, #D6E6FF 50%);
  font-weight: 800;
}
.p-point__list-item::before {
  position: absolute;
  content: "";
  display: block;
  left: 0;
  background: center/contain no-repeat url(../img/ic-check.png);
}
@media screen and (min-width: 768px) {
  .p-point__list-item::before {
    top: 50%;
    transform: translateY(-50%);
    width: min(34px, 2.65625vw);
    height: min(32px, 2.5vw);
  }
}
@media screen and (max-width: 767px) {
  .p-point__list-item::before {
    width: 5.8524173028vw;
    height: 5.5979643766vw;
    top: 0.5089058524vw;
  }
}
.p-point__solution {
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #E85830;
}
@media screen and (min-width: 768px) {
  .p-point__solution {
    column-gap: min(20px, 1.5625vw);
    width: min(828px, 64.6875vw);
    height: min(100px, 7.8125vw);
    border-radius: min(10px, 0.78125vw);
    margin: min(80px, 6.25vw) auto 0;
  }
}
@media screen and (max-width: 767px) {
  .p-point__solution {
    flex-direction: column;
    width: 90.3307888041vw;
    height: 27.7353689567vw;
    border-radius: 2.5445292621vw;
    margin: 9.1603053435vw auto 0;
    row-gap: 2.5445292621vw;
  }
}
.p-point__solution-logo {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .p-point__solution-logo {
    column-gap: min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-point__solution-logo {
    column-gap: 3.0534351145vw;
  }
}
@media screen and (min-width: 768px) {
  .p-point__solution-logo .logo {
    width: min(83px, 6.484375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-point__solution-logo .logo {
    width: 13.2315521628vw;
  }
}
@media screen and (min-width: 768px) {
  .p-point__solution-logo .txt {
    width: min(229px, 17.890625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-point__solution-logo .txt {
    width: 36.3867684478vw;
  }
}
@media screen and (min-width: 768px) {
  .p-point__solution-txt {
    font-size: clamp(11.5px, 1.796875vw, 23px);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-point__solution-txt {
    font-size: calc(15 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-point__solution-txt {
    padding-left: 2.5445292621vw;
  }
}

@media screen and (min-width: 768px) {
  .p-features__bg {
    padding: min(70px, 5.46875vw) 0 min(120px, 9.375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-features__bg {
    padding: 12.7226463104vw 0 10.1781170483vw;
  }
}
.p-features__inner {
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-features__inner {
    width: 91.8575063613vw;
  }
}
.p-features__title {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .p-features__title {
    margin-bottom: min(100px, 7.8125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-features__title {
    margin-bottom: 10.1781170483vw;
  }
}
.p-features__title::before {
  position: absolute;
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
  left: 50%;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .p-features__title::before {
    background-image: url(../img/dc-title-features.png);
    width: min(635px, 49.609375vw);
    height: min(61px, 4.765625vw);
    transform: translateX(-53%);
    bottom: min(-20px, -1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-features__title::before {
    background-image: url(../img/dc-title-features-sp.png);
    width: 71.2468193384vw;
    height: 13.4860050891vw;
    transform: translateX(-50%);
    bottom: 1.272264631vw;
  }
}
@media screen and (min-width: 768px) {
  .p-features__title .c-title-jp {
    display: flex;
    align-items: flex-end;
    justify-content: center;
  }
}
@media screen and (min-width: 768px) {
  .p-features__title .c-title-jp img {
    width: min(277px, 21.640625vw);
    margin-right: min(10px, 0.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-features__title .c-title-jp img {
    vertical-align: bottom;
    width: 60.3053435115vw;
    margin-right: 2.0356234097vw;
  }
}
@media screen and (min-width: 768px) {
  .p-features__title .c-title-jp .small {
    font-size: clamp(15px, 2.34375vw, 30px);
    line-height: 1.6666666667;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-features__title .c-title-jp .small {
    font-size: calc(25 / 393 * 100vw);
    line-height: 1.6;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
.p-features__wrap {
  display: flex;
}
@media screen and (min-width: 768px) {
  .p-features__wrap {
    align-items: flex-end;
    justify-content: center;
    column-gap: min(34px, 2.65625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-features__wrap {
    flex-direction: column;
    align-items: center;
    row-gap: 7.6335877863vw;
  }
}
.p-features__text-ttl {
  font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .p-features__text-ttl {
    font-size: clamp(17.5px, 2.734375vw, 35px);
    line-height: 1.6;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-features__text-ttl {
    font-size: calc(30 / 393 * 100vw);
    line-height: 1.6666666667;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-features__text-ttl {
    margin-bottom: min(24px, 1.875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-features__text-ttl {
    margin-bottom: 6.106870229vw;
  }
}
@media screen and (min-width: 768px) {
  .p-features__text-txt01 {
    font-size: clamp(10px, 1.5625vw, 20px);
    line-height: 2.5;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-features__text-txt01 {
    font-size: calc(15 / 393 * 100vw);
    line-height: 2.2666666667;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-features__text-txt01 {
    width: 82.6972010178vw;
  }
}
@media screen and (min-width: 768px) {
  .p-features__text-txt02 {
    font-size: clamp(11px, 1.71875vw, 22px);
    line-height: 1.5;
    letter-spacing: 0.18em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-features__text-txt02 {
    font-size: calc(19 / 393 * 100vw);
    line-height: 1.6315789474;
    letter-spacing: 0.18em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-features__text-txt02 {
    margin-top: min(24px, 1.875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-features__text-txt02 {
    margin-top: 6.106870229vw;
  }
}
@media screen and (min-width: 768px) {
  .p-features__img {
    width: min(388px, 30.3125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-features__img {
    width: 70.2290076336vw;
  }
}

@media screen and (min-width: 768px) {
  .p-benefits__bg {
    padding: min(75px, 5.859375vw) 0;
  }
}
@media screen and (max-width: 767px) {
  .p-benefits__bg {
    padding: 15.2671755725vw 0 16.7938931298vw;
  }
}
.p-benefits__inner {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .p-benefits__inner {
    width: min(925px, 72.265625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-benefits__inner {
    width: 73.0279898219vw;
  }
}
.p-benefits__title {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .p-benefits__title {
    margin-bottom: min(54px, 4.21875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-benefits__title {
    margin-bottom: 7.1246819338vw;
  }
}
.p-benefits__title .c-title-jp {
  color: #E85830;
}
@media screen and (min-width: 768px) {
  .p-benefits__title .c-title-jp {
    display: flex;
    align-items: flex-end;
    justify-content: center;
  }
}
@media screen and (min-width: 768px) {
  .p-benefits__title .c-title-jp img {
    width: min(277px, 21.640625vw);
    margin-right: min(10px, 0.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-benefits__title .c-title-jp img {
    vertical-align: bottom;
    width: 53.9440203562vw;
    margin-right: 2.0356234097vw;
  }
}
@media screen and (min-width: 768px) {
  .p-benefits__title .c-title-jp .small {
    font-size: clamp(15px, 2.34375vw, 30px);
    line-height: 1.6666666667;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-benefits__title .c-title-jp .small {
    font-size: calc(25 / 393 * 100vw);
    line-height: 1.6;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-benefits__title .c-title-jp .num {
    font-size: clamp(30px, 4.6875vw, 60px);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 600;
  }
}
@media screen and (max-width: 767px) {
  .p-benefits__title .c-title-jp .num {
    font-size: calc(45 / 393 * 100vw);
    line-height: 1.3333333333;
    letter-spacing: 0.04em;
    font-weight: 600;
  }
}
.p-benefits__list {
  display: flex;
}
@media screen and (min-width: 768px) {
  .p-benefits__list {
    flex-wrap: wrap;
    justify-content: center;
    column-gap: min(32px, 2.5vw);
    row-gap: min(54px, 4.21875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-benefits__list {
    flex-direction: column;
    row-gap: 7.1246819338vw;
  }
}
.p-benefits__list-item {
  background-color: #fff;
  border: 2px solid #E85830;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-benefits__list-item {
    width: min(287px, 22.421875vw);
    border-radius: min(23px, 1.796875vw);
    padding: min(22px, 1.71875vw) 0;
    min-height: min(390px, 30.46875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-benefits__list-item {
    width: 100%;
    border-radius: 5.8524173028vw;
    padding: 5.5979643766vw 0 10.1781170483vw;
  }
}
.p-benefits__list-item img {
  position: absolute;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .p-benefits__list-item img {
    width: min(70px, 5.46875vw);
    top: min(13px, 1.015625vw);
    right: min(7px, 0.546875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-benefits__list-item img {
    width: 17.8117048346vw;
    top: 3.3078880407vw;
    right: 1.7811704835vw;
  }
}
.p-benefits__list .toc {
  color: #E85830;
  width: max-content;
  margin-left: auto;
  margin-right: auto;
  border-bottom: 2px solid #E85830;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-benefits__list .toc {
    padding-bottom: min(8px, 0.625vw);
    margin-bottom: min(24px, 1.875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-benefits__list .toc {
    padding-bottom: 2.0356234097vw;
    margin-bottom: 6.106870229vw;
  }
}
.p-benefits__list .toc-ttl {
  display: block;
}
@media screen and (min-width: 768px) {
  .p-benefits__list .toc-ttl {
    font-size: clamp(5.4px, 0.84375vw, 10.8px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 600;
  }
}
@media screen and (max-width: 767px) {
  .p-benefits__list .toc-ttl {
    font-size: calc(10.8 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 600;
  }
}
.p-benefits__list .toc-num {
  display: block;
}
@media screen and (min-width: 768px) {
  .p-benefits__list .toc-num {
    font-size: clamp(19.4px, 3.03125vw, 38.8px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 600;
  }
}
@media screen and (max-width: 767px) {
  .p-benefits__list .toc-num {
    font-size: calc(38.8 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 600;
  }
}
.p-benefits__list .ttl {
  text-align: center;
  font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .p-benefits__list .ttl {
    font-size: clamp(12.5px, 1.953125vw, 25px);
    line-height: 1.44;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-benefits__list .ttl {
    font-size: calc(25 / 393 * 100vw);
    line-height: 1.44;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-benefits__list .ttl {
    margin-bottom: min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-benefits__list .ttl {
    margin-bottom: 5.0890585242vw;
  }
}
@media screen and (min-width: 768px) {
  .p-benefits__list .txt {
    font-size: clamp(7.5px, 1.171875vw, 15px);
    line-height: 2.1333333333;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-benefits__list .txt {
    font-size: calc(15 / 393 * 100vw);
    line-height: 2.1333333333;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-benefits__list .txt {
    padding: 0 min(14px, 1.09375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-benefits__list .txt {
    padding: 0 3.5623409669vw;
  }
}

@media screen and (min-width: 768px) {
  .p-episode__bg {
    padding: min(80px, 6.25vw) 0 min(70px, 5.46875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-episode__bg {
    padding: 17.8117048346vw 0 12.213740458vw;
  }
}
.p-episode__inner {
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .p-episode__inner {
    width: 93.6386768448vw;
  }
}
.p-episode__title {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .p-episode__title {
    margin-bottom: min(100px, 7.8125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-episode__title {
    margin-bottom: 10.1781170483vw;
  }
}
.p-episode__title::before {
  position: absolute;
  content: "";
  display: block;
  background-repeat: no-repeat;
  background-size: contain;
  left: 50%;
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .p-episode__title::before {
    background-image: url(../img/dc-title-episode.png);
    width: min(698px, 54.53125vw);
    height: min(61px, 4.765625vw);
    transform: translateX(-51%);
    bottom: min(-26px, -2.03125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-episode__title::before {
    background-image: url(../img/dc-title-episode-sp.png);
    width: 69.9745547074vw;
    height: 17.048346056vw;
    transform: translateX(-50%);
    bottom: -1.272264631vw;
  }
}
@media screen and (min-width: 768px) {
  .p-episode__title .c-title-jp {
    display: flex;
    align-items: flex-end;
    justify-content: center;
  }
}
@media screen and (min-width: 768px) {
  .p-episode__title .c-title-jp img {
    width: min(277px, 21.640625vw);
    margin-right: min(10px, 0.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-episode__title .c-title-jp img {
    vertical-align: bottom;
    width: 59.5419847328vw;
    margin-right: 2.0356234097vw;
  }
}
@media screen and (min-width: 768px) {
  .p-episode__title .c-title-jp .small {
    font-size: clamp(15px, 2.34375vw, 30px);
    line-height: 1.6666666667;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-episode__title .c-title-jp .small {
    font-size: calc(25 / 393 * 100vw);
    line-height: 1.6;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
.p-episode__wrap {
  display: flex;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .p-episode__wrap {
    justify-content: center;
    column-gap: min(60px, 4.6875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-episode__wrap {
    flex-direction: column-reverse;
    row-gap: 7.6335877863vw;
  }
}
@media screen and (min-width: 768px) {
  .p-episode__img {
    width: min(263px, 20.546875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-episode__img {
    width: 61.0687022901vw;
  }
}
.p-episode__text-ttl {
  font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .p-episode__text-ttl {
    font-size: clamp(17.68px, 2.7625vw, 35.36px);
    line-height: 1.5837104072;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-episode__text-ttl {
    font-size: calc(30 / 393 * 100vw);
    line-height: 1.6666666667;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-episode__text-ttl {
    margin-bottom: min(16px, 1.25vw);
  }
}
@media screen and (max-width: 767px) {
  .p-episode__text-ttl {
    margin-bottom: 4.0712468193vw;
  }
}
@media screen and (min-width: 768px) {
  .p-episode__text-txt {
    font-size: clamp(10px, 1.5625vw, 20px);
    line-height: 2.5;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-episode__text-txt {
    font-size: calc(15 / 393 * 100vw);
    line-height: 2.2666666667;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}

@media screen and (min-width: 768px) {
  .p-category__bg {
    padding: min(80px, 6.25vw) 0 min(84px, 6.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-category__bg {
    padding: 17.8117048346vw 0 16.0305343511vw;
  }
}
@media screen and (min-width: 768px) {
  .p-category__inner {
    margin: 0 auto;
    width: min(829px, 64.765625vw);
  }
}
.p-category__titlewrap {
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-category__title {
    margin-bottom: min(60px, 4.6875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-category__title {
    margin-bottom: 7.6335877863vw;
  }
}
.p-category__number {
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  z-index: 1;
  color: #fff;
  box-shadow: 12px 4px 0px rgba(255, 255, 255, 0.25);
  background: center/contain no-repeat url(../img/dc-category.png);
  transform: rotate(8.48deg);
  font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .p-category__number {
    font-size: clamp(6px, 0.9375vw, 12px);
    line-height: 1.5833333333;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-category__number {
    font-size: calc(12 / 393 * 100vw);
    line-height: 1.3333333333;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-category__number {
    top: 0;
    width: min(111px, 8.671875vw);
    height: min(110px, 8.59375vw);
    right: min(13.5px, 1.0546875vw);
    padding-bottom: min(2px, 0.15625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-category__number {
    top: -2.5445292621vw;
    width: 20.8651399491vw;
    height: 20.6106870229vw;
    right: 8.1424936387vw;
    padding-bottom: 0.7633587786vw;
  }
}
@media screen and (min-width: 768px) {
  .p-category__number-txt {
    font-size: clamp(8.5px, 1.328125vw, 17px);
    line-height: 1.5882352941;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-category__number-txt {
    font-size: calc(17 / 393 * 100vw);
    line-height: 0.9411764706;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-category__number-num {
    font-size: clamp(22.5px, 3.515625vw, 45px);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-category__number-num {
    font-size: calc(39 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
.p-category__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  .p-category__list {
    row-gap: min(50px, 3.90625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-category__list {
    row-gap: 7.6335877863vw;
  }
}
.p-category__list-item {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .p-category__list-item {
    width: min(240px, 18.75vw);
  }
}
@media screen and (max-width: 767px) {
  .p-category__list-item {
    width: 50%;
  }
}
.p-category__list-item img {
  display: block;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .p-category__list-item img {
    width: min(200px, 15.625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-category__list-item img {
    width: 37.6590330789vw;
  }
}
.p-category__list-title {
  font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .p-category__list-title {
    font-size: clamp(12.5px, 1.953125vw, 25px);
    line-height: 1.44;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-category__list-title {
    font-size: calc(20 / 393 * 100vw);
    line-height: 1.8;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-category__list-title {
    margin: min(6px, 0.46875vw) 0;
  }
}
@media screen and (max-width: 767px) {
  .p-category__list-title {
    margin: 1.272264631vw 0;
  }
}
@media screen and (min-width: 768px) {
  .p-category__list-txt {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 2;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-category__list-txt {
    font-size: calc(12 / 393 * 100vw);
    line-height: 1.6666666667;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}

@media screen and (min-width: 768px) {
  .p-plan {
    padding: min(74px, 5.78125vw) 0 min(55px, 4.296875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-plan {
    padding: 13.4860050891vw 0 19.5928753181vw;
  }
}
.p-plan__inner {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .p-plan__inner {
    width: min(925px, 72.265625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-plan__inner {
    width: 92.3664122137vw;
  }
}
@media screen and (min-width: 768px) {
  .p-plan__title {
    margin-bottom: min(72px, 5.625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-plan__title {
    margin-bottom: 13.7404580153vw;
  }
}
.p-plan__title .c-title-jp {
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .p-plan__title .c-title-jp {
    column-gap: min(14px, 1.09375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-plan__title .c-title-jp {
    column-gap: 2.0356234097vw;
  }
}
@media screen and (min-width: 768px) {
  .p-plan__title .c-title-jp img {
    width: min(31px, 2.421875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-plan__title .c-title-jp img {
    width: 5.8524173028vw;
  }
}
.p-plan__item {
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-plan__item:not(:last-of-type) {
    margin-bottom: min(42px, 3.28125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-plan__item:not(:last-of-type) {
    margin-bottom: 12.213740458vw;
  }
}
.p-plan__subtitle {
  position: relative;
  font-family: "din-2014", "Noto Sans JP", sans-serif;
}
@media screen and (min-width: 768px) {
  .p-plan__subtitle {
    font-size: clamp(11.5px, 1.796875vw, 23px);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-plan__subtitle {
    font-size: calc(20 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-plan__subtitle {
    padding-left: min(30px, 2.34375vw);
    margin-bottom: min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-plan__subtitle {
    padding-left: 7.6335877863vw;
    margin-bottom: 7.1246819338vw;
  }
}
.p-plan__subtitle::before {
  position: absolute;
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/ic-plan-subtitle.png);
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
@media screen and (min-width: 768px) {
  .p-plan__subtitle::before {
    width: min(20px, 1.5625vw);
    height: min(11px, 0.859375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-plan__subtitle::before {
    width: 5.0890585242vw;
    height: 2.7989821883vw;
  }
}
.p-plan__commission {
  display: flex;
  justify-content: space-between;
}
@media screen and (min-width: 768px) {
  .p-plan__commission-item {
    width: min(428px, 33.4375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-plan__commission-item {
    width: 44.0203562341vw;
  }
}
.p-plan__commission-title {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #FFEAE5;
}
@media screen and (min-width: 768px) {
  .p-plan__commission-title {
    font-size: clamp(10px, 1.5625vw, 20px);
    line-height: 1;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-plan__commission-title {
    font-size: calc(17 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-plan__commission-title {
    height: min(40px, 3.125vw);
    border-radius: min(5px, 0.390625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-plan__commission-title {
    height: 10.1781170483vw;
    border-radius: 1.272264631vw;
  }
}
.p-plan__commission-text {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-bottom: 2px solid #FFEAE5;
}
@media screen and (min-width: 768px) {
  .p-plan__commission-text {
    height: min(68px, 5.3125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-plan__commission-text {
    height: 17.3027989822vw;
  }
}
@media screen and (min-width: 768px) {
  .p-plan__commission-text .txt01 {
    font-size: clamp(8.5px, 1.328125vw, 17px);
    line-height: 1.4705882353;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-plan__commission-text .txt01 {
    font-size: calc(13 / 393 * 100vw);
    line-height: 1.4615384615;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-plan__commission-text .txt02 {
    font-size: clamp(8.5px, 1.328125vw, 17px);
    line-height: 1.4705882353;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-plan__commission-text .txt02 {
    font-size: calc(14 / 393 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-plan__commission-text .txt03 {
    font-size: clamp(10px, 1.5625vw, 20px);
    line-height: 1.5;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-plan__commission-text .txt03 {
    font-size: calc(16 / 393 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-plan__tablewrap {
    overflow-x: scroll;
    width: 100vw;
    margin: 0 calc(50% - 50vw);
    padding-left: 4.0712468193vw;
    padding-bottom: 20.3562340967vw;
  }
}
.p-plan__table {
  width: 100%;
  border-collapse: collapse;
}
@media screen and (max-width: 767px) {
  .p-plan__table {
    white-space: nowrap;
    position: relative;
  }
  .p-plan__table::after {
    position: absolute;
    content: "";
    right: 0;
    transform: translateX(100%);
    display: block;
    width: 4.0712468193vw;
    height: 1px;
  }
}
.p-plan__table thead th {
  color: #E85830;
  border-top: 3px solid #FFEAE5;
  border-bottom: 3px solid #FFEAE5;
}
@media screen and (min-width: 768px) {
  .p-plan__table thead th {
    font-size: clamp(10px, 1.5625vw, 20px);
    line-height: 1.5;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-plan__table thead th {
    font-size: calc(17 / 393 * 100vw);
    line-height: 1.4705882353;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-plan__table thead th {
    padding: min(16px, 1.25vw) 0;
  }
}
@media screen and (max-width: 767px) {
  .p-plan__table thead th {
    padding: 4.0712468193vw 0;
  }
}
@media screen and (min-width: 768px) {
  .p-plan__table thead th:first-of-type {
    width: min(213px, 16.640625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-plan__table thead th:first-of-type {
    width: 40.9669211196vw;
  }
}
.p-plan__table tbody th {
  position: relative;
  vertical-align: bottom;
}
@media screen and (min-width: 768px) {
  .p-plan__table tbody th {
    font-size: clamp(8.5px, 1.328125vw, 17px);
    line-height: 1.4705882353;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-plan__table tbody th {
    font-size: calc(17 / 393 * 100vw);
    line-height: 1.4705882353;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-plan__table tbody th {
    width: min(213px, 16.640625vw);
    height: min(62px, 4.84375vw);
    padding-bottom: min(14px, 1.09375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-plan__table tbody th {
    padding: 0 2.2900763359vw 3.5623409669vw;
    width: 40.9669211196vw;
    height: 15.7760814249vw;
  }
}
.p-plan__table tbody th::before {
  position: absolute;
  content: "";
  display: block;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  z-index: -1;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .p-plan__table tbody th::before {
    height: min(53px, 4.140625vw);
    border-radius: min(7px, 0.546875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-plan__table tbody th::before {
    height: 13.4860050891vw;
    border-radius: v(7);
  }
}
.p-plan__table tbody th.spot::before {
  background-color: #FFEAE5;
}
.p-plan__table tbody th.regular::before {
  background-color: #FFD3C8;
}
.p-plan__table tbody td {
  text-align: center;
  position: relative;
  vertical-align: bottom;
}
@media screen and (min-width: 768px) {
  .p-plan__table tbody td {
    font-size: clamp(8.5px, 1.328125vw, 17px);
    line-height: 1.4705882353;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-plan__table tbody td {
    font-size: calc(17 / 393 * 100vw);
    line-height: 1.4705882353;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-plan__table tbody td {
    height: min(62px, 4.84375vw);
    padding-bottom: min(10px, 0.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-plan__table tbody td {
    height: 15.7760814249vw;
    padding: 0 4.0712468193vw 2.5445292621vw;
  }
}
.p-plan__table tbody td::after {
  position: absolute;
  content: "";
  display: block;
  height: 1px;
  background-color: #E6E6E6;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media screen and (min-width: 768px) {
  .p-plan__table tbody td::after {
    width: 96%;
  }
}
@media screen and (max-width: 767px) {
  .p-plan__table tbody td::after {
    width: 94%;
  }
}
.p-plan__notes {
  width: max-content;
  margin-left: auto;
}
@media screen and (min-width: 768px) {
  .p-plan__notes {
    margin-top: min(12px, 0.9375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-plan__notes {
    margin-top: 3.0534351145vw;
  }
}
@media screen and (max-width: 767px) {
  .p-plan__notes.sp-ab {
    position: absolute;
    right: 0;
    bottom: 5.0890585242vw;
  }
}
@media screen and (min-width: 768px) {
  .p-plan__note {
    font-size: clamp(6px, 0.9375vw, 12px);
    line-height: 2;
    letter-spacing: 0.06em;
    font-weight: 600;
  }
}
@media screen and (max-width: 767px) {
  .p-plan__note {
    font-size: calc(10 / 393 * 100vw);
    line-height: 2;
    letter-spacing: 0.06em;
    font-weight: 600;
  }
}
.p-plan .simplebar-track {
  background-color: #EDEDED;
}
.p-plan .simplebar-scrollbar::before {
  border-radius: 0;
  opacity: 1 !important;
  background-color: #E85732;
}

@media screen and (min-width: 768px) {
  .p-step__bg1 {
    padding: min(120px, 9.375vw) 0 min(90px, 7.03125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__bg1 {
    padding: 25.4452926209vw 0 16.5394402036vw;
  }
}
.p-step__bg2 {
  background-color: #FB7857;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .p-step__bg2 {
    padding: min(60px, 4.6875vw) 0;
  }
}
@media screen and (max-width: 767px) {
  .p-step__bg2 {
    padding: 4.5801526718vw 0 19.5928753181vw;
  }
}
.p-step__titlewrap {
  position: relative;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (min-width: 768px) {
  .p-step__titlewrap {
    width: min(694px, 54.21875vw);
    margin-bottom: min(100px, 7.8125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__titlewrap {
    width: 90.5852417303vw;
    margin-bottom: 5.0890585242vw;
  }
}
.p-step__titlewrap::before, .p-step__titlewrap::after {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  transform: translateY(-50%);
  border-top: 2px solid #fff;
  border-bottom: 2px solid #fff;
}
@media screen and (min-width: 768px) {
  .p-step__titlewrap::before, .p-step__titlewrap::after {
    width: min(34px, 2.65625vw);
    height: min(152px, 11.875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__titlewrap::before, .p-step__titlewrap::after {
    width: 4.3256997455vw;
    height: 25.1908396947vw;
  }
}
.p-step__titlewrap::before {
  left: 0;
  border-left: 2px solid #fff;
}
.p-step__titlewrap::after {
  right: 0;
  border-right: 2px solid #fff;
}
.p-step__subtitle {
  display: flex;
  justify-content: center;
  position: relative;
}
@media screen and (min-width: 768px) {
  .p-step__subtitle {
    width: max-content;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: min(32px, 2.5vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__subtitle {
    column-gap: 2.0356234097vw;
    align-items: flex-end;
    margin-bottom: 10.1781170483vw;
  }
}
@media screen and (min-width: 768px) {
  .p-step__subtitle-img {
    position: absolute;
    transform: translateX(-100%);
    left: min(-12px, -0.9375vw);
    bottom: 0;
  }
}
@media screen and (min-width: 768px) {
  .p-step__subtitle-img.img01 {
    width: min(103px, 8.046875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__subtitle-img.img01 {
    width: 26.2086513995vw;
  }
}
@media screen and (min-width: 768px) {
  .p-step__subtitle-img.img02 {
    width: min(107px, 8.359375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__subtitle-img.img02 {
    width: 27.2264631043vw;
  }
}
.p-step__subtitle-txt {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  color: #E85830;
  font-family: "Zen Maru Gothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .p-step__subtitle-txt {
    font-size: clamp(14.68px, 2.29375vw, 29.36px);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-step__subtitle-txt {
    font-size: calc(20 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-step__subtitle-txt {
    width: min(327px, 25.546875vw);
    height: min(77px, 6.015625vw);
    border-radius: min(60px, 4.6875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__subtitle-txt {
    width: 60.8142493639vw;
    height: 14.7582697201vw;
    border-radius: 15.2671755725vw;
    margin-bottom: 3.0534351145vw;
  }
}
.p-step__container {
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-step__container .p-step__wrap {
    padding-bottom: 20.3562340967vw;
  }
}
@media screen and (max-width: 767px) {
  .p-step__wrap {
    overflow-x: scroll;
    padding-left: 4.0712468193vw;
    padding-bottom: 10.1781170483vw;
  }
}
.p-step__list {
  display: flex;
}
@media screen and (min-width: 768px) {
  .p-step__list {
    justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  .p-step__list {
    white-space: nowrap;
    position: relative;
  }
  .p-step__list::after {
    flex-shrink: 0;
    content: "";
    display: block;
    width: 4.0712468193vw;
    height: 1px;
  }
}
.p-step__list-item {
  position: relative;
  font-family: "din-2014", "Noto Sans JP", sans-serif;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .p-step__list-item {
    flex-shrink: 0;
  }
}
.p-step__list-item:not(:last-of-type)::after {
  position: absolute;
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/ic-arrow-step.png);
}
@media screen and (min-width: 768px) {
  .p-step__list-item:not(:last-of-type)::after {
    top: min(211px, 16.484375vw);
    width: min(42px, 3.28125vw);
    height: min(17px, 1.328125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__list-item:not(:last-of-type)::after {
    width: 10.6870229008vw;
    height: 4.3256997455vw;
    top: 56.2340966921vw;
  }
}
@media screen and (min-width: 768px) {
  .p-step__list-item.item01 {
    margin-right: min(80px, 6.25vw);
    margin-left: min(60px, 4.6875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__list-item.item01 {
    margin-left: 7.6335877863vw;
    margin-right: 13.7404580153vw;
  }
}
@media screen and (min-width: 768px) {
  .p-step__list-item.item01::after {
    right: min(-30px, -2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__list-item.item01::after {
    right: -9.1603053435vw;
  }
}
@media screen and (min-width: 768px) {
  .p-step__list-item.item02 {
    margin-right: min(48px, 3.75vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__list-item.item02 {
    margin-right: 9.1603053435vw;
  }
}
.p-step__list-item.item02::after {
  transform: translateX(100%);
}
@media screen and (min-width: 768px) {
  .p-step__list-item.item02::after {
    right: min(-20px, -1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__list-item.item02::after {
    right: -5.0890585242vw;
  }
}
@media screen and (min-width: 768px) {
  .p-step__list-item.item04 {
    margin-right: min(70px, 5.46875vw);
    margin-left: min(10px, 0.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__list-item.item04 {
    margin-left: 7.6335877863vw;
    margin-right: 14.7582697201vw;
  }
}
@media screen and (min-width: 768px) {
  .p-step__list-item.item04::after {
    right: min(-26px, -2.03125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__list-item.item04::after {
    right: -9.1603053435vw;
  }
}
@media screen and (min-width: 768px) {
  .p-step__list-item.item05 {
    margin-right: min(100px, 7.8125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__list-item.item05 {
    margin-right: 20.3562340967vw;
  }
}
.p-step__list-item.item05::after {
  transform: translateX(100%);
}
@media screen and (min-width: 768px) {
  .p-step__list-item.item05::after {
    right: min(-20px, -1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__list-item.item05::after {
    right: -4.0712468193vw;
  }
}
.p-step__list-imgwrap {
  display: flex;
  position: relative;
  justify-content: center;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .p-step__list-imgwrap {
    width: min(215px, 16.796875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__list-imgwrap {
    width: 54.7073791349vw;
  }
}
.p-step__list-num {
  position: absolute;
  top: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  transform: translateX(-100%);
}
@media screen and (min-width: 768px) {
  .p-step__list-num {
    left: min(-10px, -0.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__list-num {
    left: -2.5445292621vw;
  }
}
@media screen and (min-width: 768px) {
  .p-step__list-num .txt {
    font-size: clamp(9.4px, 1.46875vw, 18.8px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 600;
  }
}
@media screen and (max-width: 767px) {
  .p-step__list-num .txt {
    font-size: calc(18.8 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 600;
  }
}
@media screen and (min-width: 768px) {
  .p-step__list-num .num {
    font-size: clamp(19.4px, 3.03125vw, 38.8px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 600;
  }
}
@media screen and (max-width: 767px) {
  .p-step__list-num .num {
    font-size: calc(38.8 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 600;
  }
}
@media screen and (min-width: 768px) {
  .p-step__list-title {
    font-size: clamp(12.5px, 1.953125vw, 25px);
    line-height: 1.44;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-step__list-title {
    font-size: calc(20 / 393 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-step__list-title {
    margin: min(20px, 1.5625vw) 0 min(12px, 0.9375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-step__list-title {
    margin: 5.0890585242vw 0 3.0534351145vw;
  }
}
@media screen and (min-width: 768px) {
  .p-step__list-txt {
    font-size: clamp(8px, 1.25vw, 16px);
    line-height: 1.6;
    letter-spacing: 0em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-step__list-txt {
    font-size: calc(13 / 393 * 100vw);
    line-height: 2.1538461538;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-step__note {
    font-size: clamp(6px, 0.9375vw, 12px);
    line-height: 2;
    letter-spacing: 0.06em;
    font-weight: 600;
  }
}
@media screen and (max-width: 767px) {
  .p-step__note {
    font-size: calc(10 / 393 * 100vw);
    line-height: 2;
    letter-spacing: 0.06em;
    font-weight: 600;
  }
}
@media screen and (min-width: 768px) {
  .p-step__note {
    text-align: right;
    max-width: min(1000px, 78.125vw);
    margin: min(48px, 3.75vw) auto 0;
  }
}
@media screen and (max-width: 767px) {
  .p-step__note {
    position: absolute;
    right: 4.0712468193vw;
    bottom: 5.5979643766vw;
  }
}
.p-step .simplebar-track {
  background-color: #EDEDED;
}
.p-step .simplebar-scrollbar::before {
  border-radius: 0;
  opacity: 1 !important;
  background-color: #000;
}

@media screen and (min-width: 768px) {
  .p-faq {
    margin-bottom: min(60px, 4.6875vw);
    padding-top: min(74px, 5.78125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-faq {
    margin-bottom: 12.213740458vw;
    padding-top: 9.6692111959vw;
  }
}
.p-faq__inner {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .p-faq__inner {
    max-width: min(953px, 74.453125vw);
  }
}
@media screen and (max-width: 767px) {
  .p-faq__inner {
    max-width: 91.0941475827vw;
  }
}
@media screen and (min-width: 768px) {
  .p-faq__title {
    margin-bottom: min(60px, 4.6875vw);
  }
}
@media screen and (max-width: 767px) {
  .p-faq__title {
    margin-bottom: 7.6335877863vw;
  }
}
.p-faq__box {
  border: 1px solid #E85830;
  box-shadow: 4px 4px 0 rgba(232, 88, 48, 0.2);
  overflow: hidden;
}
@media screen and (min-width: 768px) {
  .p-faq__box {
    border-radius: min(20px, 1.5625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-faq__box {
    border-radius: 3.8167938931vw;
  }
}
@media screen and (min-width: 768px) {
  .p-faq__item:not(:last-of-type) {
    border-bottom: 2px dotted #707070;
  }
}
@media screen and (max-width: 767px) {
  .p-faq__item:not(:last-of-type) {
    border-bottom: 1px dotted #707070;
  }
}
.p-faq__item-head {
  display: flex;
  align-items: center;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .p-faq__item-head {
    column-gap: min(10px, 0.78125vw);
    padding: min(25px, 1.953125vw) min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-faq__item-head {
    padding: 6.106870229vw 3.5623409669vw 6.106870229vw 5.0890585242vw;
    column-gap: 2.5445292621vw;
  }
}
.p-faq__item-head.is-open::after {
  transform: rotate(180deg);
}
.p-faq__item-head::before {
  content: "Q.";
  color: #E85732;
  font-family: "din-2014", sans-serif;
  margin-bottom: auto;
}
@media screen and (min-width: 768px) {
  .p-faq__item-head::before {
    font-size: clamp(14.5px, 2.265625vw, 29px);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-faq__item-head::before {
    font-size: calc(20 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
.p-faq__item-head::after {
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/ic-arrow-faq.png);
  margin-left: auto;
  margin-top: auto;
  margin-bottom: auto;
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  .p-faq__item-head::after {
    width: min(17px, 1.328125vw);
    height: min(18px, 1.40625vw);
  }
}
@media screen and (max-width: 767px) {
  .p-faq__item-head::after {
    width: 3.3078880407vw;
    height: 3.5623409669vw;
  }
}
@media screen and (min-width: 768px) {
  .p-faq__item-head .txt {
    font-size: clamp(8.5px, 1.328125vw, 17px);
    line-height: 1.4117647059;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-faq__item-head .txt {
    font-size: calc(13 / 393 * 100vw);
    line-height: 1.3846153846;
    letter-spacing: 0.06em;
    font-weight: 700;
  }
}
.p-faq__item-bodyinner {
  display: flex;
  align-items: center;
  background-color: #FFEBE6;
}
@media screen and (min-width: 768px) {
  .p-faq__item-bodyinner {
    column-gap: min(10px, 0.78125vw);
    padding: min(25px, 1.953125vw) min(30px, 2.34375vw);
  }
}
@media screen and (max-width: 767px) {
  .p-faq__item-bodyinner {
    padding: 6.106870229vw 5.0890585242vw;
    column-gap: 2.5445292621vw;
  }
}
.p-faq__item-bodyinner::before {
  content: "A.";
  color: #E85732;
  font-family: "din-2014", sans-serif;
  margin-bottom: auto;
  color: #535151;
}
@media screen and (min-width: 768px) {
  .p-faq__item-bodyinner::before {
    font-size: clamp(14.5px, 2.265625vw, 29px);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .p-faq__item-bodyinner::before {
    font-size: calc(20 / 393 * 100vw);
    line-height: 1;
    letter-spacing: 0.04em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .p-faq__item-bodyinner .txt {
    font-size: clamp(7.5px, 1.171875vw, 15px);
    line-height: 1.6666666667;
    letter-spacing: 0.06em;
    font-weight: 600;
  }
}
@media screen and (max-width: 767px) {
  .p-faq__item-bodyinner .txt {
    font-size: calc(12 / 393 * 100vw);
    line-height: 1.6666666667;
    letter-spacing: 0.06em;
    font-weight: 600;
  }
}

.js-accordion-body {
  display: none;
}

@media screen and (max-width: 767px) {
  .is-pc {
    display: none;
  }
}

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

/* animation */
[data-module=FadeIn] {
  opacity: 0;
  transform: translate3d(0, 100px, 0);
  transition-timing-function: ease-out;
  transition-property: opacity, transform;
  transition-duration: 0.6s;
}

[data-module=FadeIn].is-FadeIn {
  opacity: 1;
  transform: translateZ(0);
}