@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Barlow+Semi+Condensed:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Montserrat:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&display=swap");
body {
  margin: 0;
  padding: 0;
}

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

a,
button {
  cursor: revert;
  color: inherit;
  text-decoration: none;
}

button {
  padding: 0;
  border: none;
  font-family: inherit;
}

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

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

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

table {
  border-collapse: collapse;
}

textarea {
  white-space: revert;
}

meter {
  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;
}

input,
textarea,
select {
  font-family: inherit;
}

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

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

.l-wrapper {
  margin-inline: auto;
  max-width: 750px;
}

.l-inner {
  margin: 0 auto;
  width: min(670px, 89.3333333333vw);
}

.c-title {
  text-align: center;
  margin-bottom: min(34px, 4.5333333333vw);
}
.c-title-en {
  display: block;
  font-family: "Montserrat", sans-serif;
  color: #81D4D8;
  margin-bottom: min(16px, 2.1333333333vw);
  font-size: clamp(11px, 2.9333333333vw, 22px);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 800;
}
.c-title-jp {
  display: block;
  font-size: clamp(28px, 7.4666666667vw, 56px);
  line-height: 1.3;
  letter-spacing: 0em;
  font-weight: 700;
}

.c-modal {
  position: fixed;
  inset: 0;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  z-index: -1;
  transition: all 0.3s;
}
.c-modal.is-open {
  opacity: 1;
  visibility: visible;
  pointer-events: all;
  z-index: 100001;
}
.c-modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
}
.c-modal__content {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #fff;
  padding: min(48px, 6.4vw) 0 min(64px, 8.5333333333vw);
  width: 90%;
  max-width: min(670px, 89.3333333333vw);
  border-radius: min(8px, 1.0666666667vw);
  z-index: 1;
  max-height: 90vh;
}
.c-modal__content.pd0 {
  padding: 0;
  background-color: transparent;
  border-radius: 0;
}
.c-modal__close {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  width: min(64px, 8.5333333333vw);
  height: min(64px, 8.5333333333vw);
  background-color: #0E989E;
  color: #fff;
  font-size: min(48px, 6.4vw);
  top: max(-16px, -2.1333333333vw);
  right: max(-16px, -2.1333333333vw);
  cursor: pointer;
  box-shadow: 0px 0px 8px rgba(0, 0, 0, 0.5);
}
.c-modal__body {
  text-align: center;
}
.c-modal__title {
  margin-bottom: min(48px, 6.4vw);
  color: #0E989E;
  font-size: clamp(24px, 6.4vw, 48px);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 700;
}
.c-modal__text {
  font-size: clamp(14px, 3.7333333333vw, 28px);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 400;
  margin-bottom: min(48px, 6.4vw);
}
.c-modal__highlight {
  display: inline-block;
  background-color: #FFDC8E;
  padding: min(4px, 0.5333333333vw);
  margin-top: min(4px, 0.5333333333vw);
  font-size: clamp(16px, 4.2666666667vw, 32px);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 700;
}
.c-modal__tel-btn {
  display: block;
  margin-inline: auto;
  width: min(606px, 80.8vw);
}
.c-modal__hours {
  color: #495D7B;
  margin-top: min(16px, 2.1333333333vw);
  font-size: clamp(12px, 3.2vw, 24px);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 400;
}

.c-notice-box {
  display: none;
  margin-top: min(18px, 2.4vw);
}

.c-btn-totop {
  display: flex;
  margin-inline: auto;
  width: min(258px, 34.4vw);
  margin-top: min(90px, 12vw);
}

.l-footer {
  padding: min(48px, 6.4vw) 0 min(16px, 2.1333333333vw);
  background-color: #061D3F;
}
.l-footer__wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: min(64px, 8.5333333333vw);
}
.l-footer__logo {
  width: min(234px, 31.2vw);
}
.l-footer__link {
  display: flex;
  flex-direction: column;
  row-gap: min(32px, 4.2666666667vw);
}
.l-footer__link a {
  display: flex;
  align-items: center;
  color: #D1E6EA;
  column-gap: min(12px, 1.6vw);
  font-size: clamp(13px, 3.4666666667vw, 26px);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 400;
}
.l-footer__link a::before {
  content: "";
  display: block;
  width: min(9px, 1.2vw);
  height: min(16px, 2.1333333333vw);
  background-color: #26B4BA;
  clip-path: polygon(0 0, 100% 50%, 0 100%);
}
.l-footer__copy {
  font-family: "Barlow Semi Condensed", sans-serif;
  text-align: center;
  color: #495D7B;
  margin-top: min(48px, 6.4vw);
  font-size: clamp(11px, 2.9333333333vw, 22px);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 400;
}

.p-kv {
  position: relative;
}
.p-kv__btn {
  display: block;
  position: absolute;
  width: min(686px, 91.4666666667vw);
  left: 50%;
  transform: translateX(-50%);
  bottom: min(24px, 3.2vw);
  animation: btnanime 0.5s ease 0s infinite alternate;
}

.p-float {
  position: fixed;
  z-index: 10;
  bottom: 0;
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s;
  background-color: rgba(0, 0, 0, 0.5);
  width: min(750px, 100vw);
  left: 50%;
  padding-top: min(24px, 3.2vw);
  transform: translateX(-50%);
}
.p-float.is-active {
  opacity: 1;
  pointer-events: all;
}
.p-float__btn {
  width: min(718px, 95.7333333333vw);
  margin-inline: auto;
  display: block;
}

.p-rate {
  position: relative;
}
.p-rate__btn {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  width: min(410px, 54.6666666667vw);
  bottom: min(52px, 6.9333333333vw);
}

.p-check__item {
  position: relative;
  z-index: 1;
}
.p-check__item.item02, .p-check__item.item03, .p-check__item.item04 {
  margin-top: max(-2px, -0.2666666667vw);
}
.p-check__cta {
  position: relative;
  z-index: 2;
  margin-top: max(-2px, -0.2666666667vw);
}
.p-check__cta-btn {
  display: block;
  position: absolute;
  width: min(686px, 91.4666666667vw);
  left: 50%;
  transform: translateX(-50%);
  bottom: min(24px, 3.2vw);
  animation: btnanime 0.5s ease 0s infinite alternate;
}

.p-cta {
  position: relative;
  z-index: 2;
  margin-top: max(-136px, -18.1333333333vw);
}
.p-cta__btn {
  display: block;
  position: absolute;
  width: min(686px, 91.4666666667vw);
  left: 50%;
  transform: translateX(-50%);
  bottom: min(24px, 3.2vw);
  animation: btnanime 0.5s ease 0s infinite alternate;
}

@keyframes btnanime {
  from {
    transform: translateX(-50%) scale(0.95, 0.95);
  }
  to {
    transform: translateX(-50%) scale(1, 1);
  }
}
.p-form__bg {
  background-color: #26B4BA;
  padding: min(64px, 8.5333333333vw) 0;
}
.p-form__title-sub {
  text-align: center;
  color: #FFDC8E;
  font-size: clamp(20px, 5.3333333333vw, 40px);
  line-height: 1.3;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-form__lead {
  width: min(690px, 92vw);
  height: min(132px, 17.6vw);
  border-radius: 999px;
  text-align: center;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto min(64px, 8.5333333333vw);
  background-color: #FFDC8E;
  font-size: clamp(15px, 4vw, 30px);
  line-height: 1.4;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-form__inner {
  width: min(690px, 92vw);
  margin-inline: auto;
}
.p-form__section {
  margin-bottom: min(32px, 4.2666666667vw);
}
.p-form__section-header {
  display: flex;
  align-items: center;
  column-gap: min(32px, 4.2666666667vw);
  padding-left: min(32px, 4.2666666667vw);
  margin-bottom: min(16px, 2.1333333333vw);
}
.p-form__section-title {
  color: #fff;
  font-size: clamp(15px, 4vw, 30px);
  line-height: 1.3;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-form__section-box {
  background-color: #fff;
  border-radius: min(16px, 2.1333333333vw);
  padding: min(40px, 5.3333333333vw);
}
.p-form__step-badge {
  width: min(114px, 15.2vw);
}
.p-form input[type=text],
.p-form input[type=number],
.p-form input[type=tel],
.p-form input[type=email],
.p-form textarea,
.p-form select {
  cursor: pointer;
  background-color: #F4F4F4;
  border: min(2px, 0.2666666667vw) solid #999;
  font-size: clamp(16px, 3.7333333333vw, 28px);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-form input[type=text].is-invalid,
.p-form input[type=number].is-invalid,
.p-form input[type=tel].is-invalid,
.p-form input[type=email].is-invalid,
.p-form textarea.is-invalid,
.p-form select.is-invalid {
  background-color: #FFF0F0;
  border-color: #FF3E3E;
}
.p-form input[type=text].is-invalid::placeholder,
.p-form input[type=number].is-invalid::placeholder,
.p-form input[type=tel].is-invalid::placeholder,
.p-form input[type=email].is-invalid::placeholder,
.p-form textarea.is-invalid::placeholder,
.p-form select.is-invalid::placeholder {
  color: #FF3E3E;
  opacity: 0.3;
}
.p-form input[type=text],
.p-form input[type=number],
.p-form input[type=tel],
.p-form input[type=email],
.p-form select {
  width: 100%;
  padding: 0 min(32px, 4.2666666667vw);
  height: min(74px, 9.8666666667vw);
}
.p-form select.is-empty {
  color: #B3B3B3;
}
.p-form textarea {
  width: 100%;
  resize: vertical;
  height: min(200px, 26.6666666667vw);
  padding: min(16px, 2.1333333333vw) min(32px, 4.2666666667vw);
}
.p-form ::placeholder {
  color: #B3B3B3;
}
.p-form__label {
  font-size: clamp(14px, 3.7333333333vw, 28px);
  line-height: 1.3;
  letter-spacing: 0em;
  font-weight: 500;
}
.p-form__label-row {
  display: flex;
  align-items: flex-start;
  margin-bottom: min(8px, 1.0666666667vw);
  column-gap: min(8px, 1.0666666667vw);
}
.p-form__label-row .badge-req,
.p-form__label-row .badge-opt {
  border: min(2px, 0.2666666667vw) solid;
  flex-shrink: 0;
  padding: min(6px, 0.8vw) min(12px, 1.6vw);
  font-size: clamp(11px, 2.9333333333vw, 22px);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-form__label-row .badge-req {
  border-color: #FF3E3E;
  color: #FF3E3E;
}
.p-form__label-row .badge-opt {
  border-color: #0E989E;
  color: #0E989E;
}
.p-form__group:not(:last-of-type) {
  margin-bottom: min(32px, 4.2666666667vw);
}
.p-form__group .error-message {
  display: none;
  color: #FF3E3E;
  margin-top: min(8px, 1.0666666667vw);
  font-size: clamp(11px, 2.9333333333vw, 22px);
  line-height: 1.3;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-form__group.is-invalid .p-form__radio-label {
  background-color: #FFF0F0;
  border-color: #FF3E3E;
  color: rgba(255, 62, 62, 0.3);
}
.p-form__group.is-invalid .p-form__radio-label::before {
  border-color: #FF3E3E;
}
.p-form__note {
  color: #7C7A7A;
  margin-top: min(8px, 1.0666666667vw);
  font-size: clamp(11px, 2.9333333333vw, 22px);
  line-height: 1.3;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-form__radio-group {
  display: flex;
  justify-content: space-between;
}
.p-form__radio-label {
  position: relative;
  display: flex;
  align-items: center;
  width: 50%;
  background-color: #F4F4F4;
  border: min(2px, 0.2666666667vw) solid #999;
  color: #999;
  cursor: pointer;
  width: min(280px, 37.3333333333vw);
  height: min(74px, 9.8666666667vw);
  padding-left: min(32px, 4.2666666667vw);
  column-gap: min(32px, 4.2666666667vw);
  font-size: clamp(14px, 3.7333333333vw, 28px);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-form__radio-label:has(input:checked) {
  color: #061D3F;
}
.p-form__radio-label:has(input:checked)::before {
  border-color: #999;
}
.p-form__radio-label:has(input:checked)::after {
  opacity: 1;
}
.p-form__radio-label input {
  display: none;
}
.p-form__radio-label::before, .p-form__radio-label::after {
  content: "";
  display: block;
  border-radius: 50%;
  transition: all 0.3s;
}
.p-form__radio-label::before {
  width: min(32px, 4.2666666667vw);
  height: min(32px, 4.2666666667vw);
  background-color: #fff;
  border: min(2px, 0.2666666667vw) solid #999;
}
.p-form__radio-label::after {
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: min(16px, 2.1333333333vw);
  height: min(16px, 2.1333333333vw);
  left: min(40px, 5.3333333333vw);
  background-color: #061D3F;
}
.p-form__select {
  position: relative;
}
.p-form__select::after {
  position: absolute;
  content: "";
  display: block;
  pointer-events: none;
  top: 50%;
  transform: translateY(-50%);
  width: min(20px, 2.6666666667vw);
  height: min(10px, 1.3333333333vw);
  right: min(32px, 4.2666666667vw);
  background: center/contain no-repeat url(../img/common/ic-arrow-gr.webp);
}
.p-form__select:has(.is-invalid)::after {
  background-image: url(../img/common/ic-arrow-rd.webp);
}
.p-form__select select {
  appearance: none;
}
.p-form__input {
  display: flex;
  column-gap: min(16px, 2.1333333333vw);
}
.p-form__input:not(:last-of-type) {
  margin-bottom: min(24px, 3.2vw);
}
.p-form__input.column {
  flex-direction: column;
  row-gap: min(8px, 1.0666666667vw);
}
.p-form__input.column .p-form__input-title {
  width: 100%;
  margin-top: 0;
}
.p-form__input.column input {
  flex: auto;
}
.p-form__input-title {
  margin-top: min(18px, 2.4vw);
  width: min(120px, 16vw);
  font-size: clamp(15px, 4vw, 30px);
  line-height: 1.2;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-form__input-input,
.p-form__input input {
  flex: 1;
}
.p-form__number {
  display: flex;
  align-items: flex-end;
  column-gap: min(16px, 2.1333333333vw);
}
.p-form__number input[type=number] {
  width: min(400px, 53.3333333333vw);
}
.p-form__number-txt {
  font-size: clamp(14px, 3.7333333333vw, 28px);
  line-height: 1.3;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-form__idguide {
  margin-bottom: min(32px, 4.2666666667vw);
}
.p-form__idguide-box {
  background-color: #EFF8F9;
  border-radius: min(8px, 1.0666666667vw);
  text-align: center;
  padding: min(24px, 3.2vw);
}
.p-form__idguide-title {
  font-size: clamp(14px, 3.7333333333vw, 28px);
  line-height: 1.3;
  letter-spacing: 0em;
  font-weight: 500;
  margin-bottom: min(16px, 2.1333333333vw);
}
.p-form__idguide-images {
  display: flex;
  justify-content: space-between;
}
.p-form__idguide-item {
  width: min(274px, 36.5333333333vw);
}
.p-form__idguide-item span {
  display: block;
  margin-top: min(8px, 1.0666666667vw);
  font-size: clamp(11px, 2.9333333333vw, 22px);
  line-height: 1.3;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-form__idguide-note {
  color: #7C7A7A;
  margin-top: min(16px, 2.1333333333vw);
  font-size: clamp(11px, 2.9333333333vw, 22px);
  line-height: 1.3;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-form {
  /* ベース構造 */
}
.p-form .p-file-upload input {
  display: none;
}
.p-form .p-file-upload__upload-zone {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: min(22px, 2.9333333333vw);
  background-color: #F4F4F4;
  border: min(2px, 0.2666666667vw) dashed #495D7B;
  cursor: pointer;
  transition: all 0.2s ease;
}
.p-form .p-file-upload__title {
  display: flex;
  align-items: center;
  column-gap: min(8px, 1.0666666667vw);
  margin-bottom: min(8px, 1.0666666667vw);
  font-size: clamp(14px, 3.7333333333vw, 28px);
  line-height: 1.4;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-form .p-file-upload__title::before {
  content: "";
  width: min(56px, 7.4666666667vw);
  height: min(56px, 7.4666666667vw);
  display: block;
  background: center/contain no-repeat url(../img/lp/ic-upload.webp);
}
.p-form .p-file-upload__sub {
  text-align: center;
  color: #9D9D9D;
  font-size: clamp(13px, 3.4666666667vw, 26px);
  line-height: 1.4;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-form .p-file-upload__file-info {
  flex: 1;
  display: flex;
  flex-wrap: wrap;
  gap: min(16px, 2.1333333333vw);
}
.p-form .p-file-upload__complete-zone {
  display: none;
  position: relative;
  background-color: #EFF8F9;
  border: min(2px, 0.2666666667vw) solid #0E989E;
  padding: min(16px, 2.1333333333vw) min(32px, 4.2666666667vw);
}
.p-form .p-file-upload__complete-body {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: min(16px, 2.1333333333vw);
}
.p-form .p-file-upload__complete-header {
  width: 100%;
  display: flex;
  align-items: center;
  color: #0E989E;
  column-gap: min(8px, 1.0666666667vw);
  font-size: clamp(13px, 3.4666666667vw, 26px);
  line-height: 1.4;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-form .p-file-upload__complete-header::before {
  content: "";
  display: block;
  width: min(28px, 3.7333333333vw);
  height: min(28px, 3.7333333333vw);
  background: center/contain no-repeat url(../img/lp/ic-check.webp);
}
.p-form .p-file-upload__preview {
  width: min(168px, 22.4vw);
}
.p-form .p-file-upload__filename {
  width: min(164px, 21.8666666667vw);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  font-size: clamp(14px, 3.7333333333vw, 28px);
  line-height: 1.4;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-form .p-file-upload__change-btn {
  flex-shrink: 0;
  width: min(176px, 23.4666666667vw);
  height: min(48px, 6.4vw);
  background-color: #fff;
  border: min(1px, 0.1333333333vw) solid #8C8C8C;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #8C8C8C;
  column-gap: min(8px, 1.0666666667vw);
  font-size: clamp(12px, 3.2vw, 24px);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-form .p-file-upload__change-btn::before {
  content: "";
  display: block;
  width: min(32px, 4.2666666667vw);
  height: min(32px, 4.2666666667vw);
  background: center/contain no-repeat url(../img/lp/ic-picture.webp);
}
.p-form .p-file-upload .p-file-upload__upload-zone:has(.is-invalid) {
  background-color: #FFF0F0;
  border-color: #FF3E3E;
}
.p-form .p-file-upload .p-file-upload__upload-zone:has(.is-invalid) .p-file-upload__title {
  color: #FFBBBB;
}
.p-form .p-file-upload .p-file-upload__upload-zone:has(.is-invalid) .p-file-upload__title::before {
  background-image: url(../img/lp/ic-upload-pk.webp);
}
.p-form .p-file-upload .p-file-upload__upload-zone:has(.is-invalid) .p-file-upload__sub {
  color: #FFBBBB;
}
.p-form .p-file-upload.has-file .p-file-upload__upload-zone {
  display: none;
}
.p-form .p-file-upload.has-file .p-file-upload__complete-zone {
  display: block;
}
.p-form__checkbox-box {
  position: relative;
  display: flex;
  align-items: center;
  padding: min(16px, 2.1333333333vw) min(32px, 4.2666666667vw);
  background-color: #F4F4F4;
  border: min(2px, 0.2666666667vw) solid #999;
  column-gap: min(32px, 4.2666666667vw);
  cursor: pointer;
}
.p-form__checkbox-box input {
  display: none;
}
.p-form__checkbox-box span {
  transition: all 0.3s;
  color: #999;
  font-size: clamp(14px, 3.7333333333vw, 28px);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-form__checkbox-box:has(input:checked) span {
  color: #061D3F;
}
.p-form__checkbox-box:has(input:checked)::before {
  border-color: #999;
}
.p-form__checkbox-box:has(input:checked)::after {
  opacity: 1;
}
.p-form__checkbox-box input {
  display: none;
}
.p-form__checkbox-box::before, .p-form__checkbox-box::after {
  content: "";
  display: block;
  border-radius: 50%;
  transition: all 0.3s;
}
.p-form__checkbox-box::before {
  width: min(32px, 4.2666666667vw);
  height: min(32px, 4.2666666667vw);
  background-color: #fff;
  border: min(2px, 0.2666666667vw) solid #999;
}
.p-form__checkbox-box::after {
  opacity: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: min(16px, 2.1333333333vw);
  height: min(16px, 2.1333333333vw);
  left: min(40px, 5.3333333333vw);
  background-color: #061D3F;
}
.p-form__submit-area {
  margin-top: min(48px, 6.4vw);
}
.p-form__btn-submit {
  cursor: pointer;
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(426px, 56.8vw);
  height: min(96px, 12.8vw);
  border-radius: 999px;
  border: min(2px, 0.2666666667vw) solid #fff;
  background-color: #FF3E3E;
  color: #fff;
  column-gap: min(32px, 4.2666666667vw);
  font-family: "Noto Sans JP", sans-serif;
  font-size: clamp(16px, 4.2666666667vw, 32px);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 500;
}
.p-form__btn-submit::after {
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/common/ic-arrow-wh.webp);
  width: min(14px, 1.8666666667vw);
  height: min(24px, 3.2vw);
}
.p-form__btn-back {
  cursor: pointer;
  margin-inline: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(170px, 22.6666666667vw);
  height: min(96px, 12.8vw);
  border-radius: 999px;
  background-color: #AFAFAF;
  border: min(2px, 0.2666666667vw) solid #fff;
  color: #fff;
  font-family: "Noto Sans JP", sans-serif;
  column-gap: min(24px, 3.2vw);
  font-size: clamp(16px, 4.2666666667vw, 32px);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 500;
}
.p-form__btn-back::before {
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/common/ic-arrow-wh.webp);
  width: min(14px, 1.8666666667vw);
  height: min(24px, 3.2vw);
  transform: scale(-1, 1);
}
.p-form__footer-notes {
  background-color: #FFECC0;
  border: min(2px, 0.2666666667vw) solid #FF3E3E;
  border-radius: min(16px, 2.1333333333vw);
  margin-bottom: min(64px, 8.5333333333vw);
  padding: min(32px, 4.2666666667vw) min(32px, 4.2666666667vw) min(32px, 4.2666666667vw) min(16px, 2.1333333333vw);
}
.p-form__footer-notes li {
  position: relative;
  padding-left: 1em;
  text-indent: -1em;
  font-size: clamp(12px, 3.2vw, 24px);
  line-height: 1.4;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-form__footer-notes li strong {
  font-weight: 700;
  color: #FF3E3E;
}
.p-form__footer-notes li::before {
  content: "・";
  color: #FF3E3E;
  font-size: clamp(12px, 3.2vw, 24px);
  line-height: 1.4;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-form__confirm {
  margin-top: min(32px, 4.2666666667vw);
  width: min(460px, 61.3333333333vw);
  margin-inline: auto;
  column-gap: min(32px, 4.2666666667vw);
  background-color: #0BAA73;
}
.p-form__privacy {
  width: min(404px, 53.8666666667vw);
  margin-top: min(64px, 8.5333333333vw);
  margin-inline: auto;
  column-gap: min(24px, 3.2vw);
  background-color: #0BAA73;
}
.p-form__back {
  flex-direction: row-reverse;
  background-color: #AFAFAF;
  width: min(248px, 33.0666666667vw);
  column-gap: min(24px, 3.2vw);
}
.p-form__back::after {
  transform: scale(-1, 1);
}
.p-form__submit {
  background-color: #0BAA73;
  width: min(248px, 33.0666666667vw);
  column-gap: min(24px, 3.2vw);
}
.p-form__totop {
  margin-inline: auto;
  width: min(404px, 53.8666666667vw);
  background-color: #5E3AFF;
  column-gap: min(24px, 3.2vw);
  margin-top: min(48px, 6.4vw);
}

.p-faq {
  padding: min(64px, 8.5333333333vw) 0;
}
.p-faq__wrap:not(:last-of-type) {
  margin-bottom: min(56px, 7.4666666667vw);
}
.p-faq__subtitle {
  display: flex;
  align-items: center;
  column-gap: min(8px, 1.0666666667vw);
  margin-bottom: min(12px, 1.6vw);
  font-size: clamp(16px, 4.2666666667vw, 32px);
  line-height: 1.4;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-faq__subtitle::before {
  content: "■";
  font-family: inherit;
  color: #E7A104;
  font-size: clamp(20px, 5.3333333333vw, 40px);
  line-height: 1.4;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-faq__item:has(.is-open) {
  position: relative;
  z-index: 1;
  border-color: #FFCB1E;
}
.p-faq__item:not(:last-of-type) {
  margin-bottom: min(4px, 0.5333333333vw);
}
.p-faq__head {
  cursor: pointer;
  padding: min(20px, 2.6666666667vw) min(24px, 3.2vw);
  display: flex;
  align-items: center;
  column-gap: min(32px, 4.2666666667vw);
  transition: all 0.3s;
  background-color: #E2F1F2;
  min-height: min(120px, 16vw);
}
.p-faq__head-txt {
  flex: 1;
  text-align: justify;
  font-size: clamp(14px, 3.7333333333vw, 28px);
  line-height: 1.4;
  letter-spacing: 0em;
  font-weight: 500;
}
.p-faq__head-icon {
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url(../img/lp/ic-faq-arrow-gr.webp);
  width: min(48px, 6.4vw);
  height: min(24px, 3.2vw);
}
.p-faq__head.is-open {
  background-color: #0E989E;
}
.p-faq__head.is-open .p-faq__head-txt {
  color: #fff;
}
.p-faq__head.is-open .p-faq__head-icon {
  background-image: url(../img/lp/ic-faq-arrow-wh.webp);
}
.p-faq__body {
  display: none;
  border: 1px solid #0E989E;
  padding: min(24px, 3.2vw);
}
.p-faq__body-a {
  font-size: clamp(15px, 4vw, 30px);
  line-height: 1.4;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-faq__body-a strong {
  font-weight: 700;
  color: #0E989E;
}
.p-faq__body-note {
  color: #495D7B;
  margin-top: min(8px, 1.0666666667vw);
  font-size: clamp(11px, 2.9333333333vw, 22px);
  line-height: 1.4;
  letter-spacing: 0em;
  font-weight: 400;
}

.p-company {
  padding: min(64px, 8.5333333333vw);
}
.p-company__table {
  width: 100%;
  table-layout: fixed;
}
.p-company__table th {
  color: #0E989E;
  width: min(144px, 19.2vw);
  text-align: left;
  vertical-align: top;
  padding: min(24px, 3.2vw) 0;
  font-size: clamp(14px, 3.7333333333vw, 28px);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-company__table td {
  padding: min(24px, 3.2vw) 0 min(24px, 3.2vw) min(16px, 2.1333333333vw);
  font-size: clamp(14px, 3.7333333333vw, 28px);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-company__table td small {
  display: block;
  font-size: clamp(12px, 3.2vw, 24px);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 400;
}

.p-confirm {
  background-color: #26B4BA;
  padding: min(64px, 8.5333333333vw) 0;
}
.p-confirm .c-title-jp {
  color: #fff;
}
.p-confirm__lead {
  color: #fff;
  text-align: center;
  margin-bottom: min(32px, 4.2666666667vw);
  font-size: clamp(14px, 3.7333333333vw, 28px);
  line-height: 1.35;
  letter-spacing: 0em;
  font-weight: 500;
}
.p-confirm__box {
  background-color: #fff;
  padding: min(16px, 2.1333333333vw) min(40px, 5.3333333333vw);
  border-radius: min(16px, 2.1333333333vw);
  margin-bottom: min(16px, 2.1333333333vw);
}
.p-confirm__item {
  display: flex;
  align-items: center;
  padding: min(8px, 1.0666666667vw) 0;
  column-gap: min(12px, 1.6vw);
  min-height: min(84px, 11.2vw);
}
.p-confirm__item:not(:last-of-type) {
  border-bottom: min(2px, 0.2666666667vw) solid #D1E6EA;
}
.p-confirm__item.column {
  flex-direction: column;
  row-gap: min(16px, 2.1333333333vw);
}
.p-confirm__item.column .p-confirm__head,
.p-confirm__item.column .p-confirm__body {
  width: 100%;
}
.p-confirm__head {
  width: min(180px, 24vw);
}
.p-confirm__head span {
  color: #0E989E;
  display: block;
  width: max-content;
  font-size: clamp(12px, 3.2vw, 24px);
  line-height: 1.2;
  letter-spacing: 0em;
  font-weight: 500;
}
.p-confirm__body {
  flex: 1;
  font-size: clamp(14px, 3.7333333333vw, 28px);
  line-height: 1.3;
  letter-spacing: 0em;
  font-weight: 500;
}
.p-confirm__file-wrap {
  width: 100%;
  display: flex;
  align-items: center;
}
.p-confirm__file-wrap img {
  flex-shrink: 0;
  width: min(180px, 24vw);
}
.p-confirm__file-info {
  flex: 1;
  margin-right: min(12px, 1.6vw);
}
.p-confirm__filename {
  width: min(200px, 26.6666666667vw);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-text-overflow: ellipsis;
  -o-text-overflow: ellipsis;
  margin-bottom: min(12px, 1.6vw);
  display: block;
}
.p-confirm__btn-modal {
  width: min(196px, 26.1333333333vw);
  height: min(40px, 5.3333333333vw);
  border-radius: 999px;
  border: min(1px, 0.1333333333vw) solid #8C8C8C;
  color: #8C8C8C;
  display: flex;
  align-items: center;
  justify-content: center;
  column-gap: min(8px, 1.0666666667vw);
  background-color: #fff;
  font-size: clamp(10px, 2.6666666667vw, 20px);
  line-height: 1;
  letter-spacing: 0em;
  font-weight: 400;
}
.p-confirm__btn-modal::before {
  content: "";
  display: block;
  width: min(24px, 3.2vw);
  height: min(24px, 3.2vw);
  background: center/contain no-repeat url(../img/common/ic-plus.webp);
}
.p-confirm__btns {
  display: flex;
  justify-content: center;
  column-gap: min(32px, 4.2666666667vw);
  margin-top: min(64px, 8.5333333333vw);
}
.p-confirm__btns .p-form__btn-submit {
  margin: 0;
}

.p-thanks {
  padding: min(64px, 8.5333333333vw) 0;
}
.p-thanks__title {
  margin-bottom: min(64px, 8.5333333333vw);
}
.p-thanks__title-main {
  display: block;
  color: #0E989E;
  font-size: clamp(24px, 6.4vw, 48px);
  line-height: 1.3;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-thanks__box {
  margin-inline: auto;
  max-width: min(690px, 92vw);
}

.p-privacy {
  padding: min(64px, 8.5333333333vw) 0;
}
.p-privacy__item {
  margin-bottom: min(32px, 4.2666666667vw);
}
.p-privacy__item h2 {
  color: #0E989E;
  margin-bottom: min(8px, 1.0666666667vw);
  font-size: clamp(15px, 4vw, 30px);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 700;
}
.p-privacy__item ul {
  padding-left: 2em;
}
.p-privacy__item ul li {
  list-style-type: disc;
}
.p-privacy__item p, .p-privacy__item li {
  font-size: clamp(13px, 3.4666666667vw, 26px);
  line-height: 1.5;
  letter-spacing: 0em;
  font-weight: 400;
}

#form-sending {
  display: none;
}
#form-sending .sending-mask {
  background: rgba(0, 0, 0, 0.5);
  position: fixed;
  z-index: 2000;
  width: 100vw;
  height: 100vh;
  top: 0;
  left: 0;
}

.sending-content {
  width: 100%;
  height: 80px;
  margin-top: -40px;
  position: fixed;
  top: 50%;
  text-align: center;
  z-index: 2001;
  font-size: 36px;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}
body.sending{
  overflow: hidden;
  height: 100dvh;
}