@charset "UTF-8";
/* * * ヘッダー * * */
.p-header {
  height: min(64px, calc(64 / 1440 * 100vw));
  background-color: #0D2E63;
  width: 100%;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 999;
}

.p-header-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
}

.p-header-logo {
  font-family: "Roboto", sans-serif;
  font-weight: bold;
  color: #fff;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.p-header-logo__img {
  width: min(45px, calc(45 / 1440 * 100vw));
  margin-right: min(calc(1px * 1440 * (0.007)), 0.7vw);
}
.p-header-logo__name {
  font-size: min(16px, calc(16 / 1440 * 100vw));
  letter-spacing: 0.14em;
  margin-right: min(calc(1px * 1440 * (0.013)), 1.3vw);
}
.p-header-logo__name span {
  font-size: min(18px, calc(18 / 1440 * 100vw));
}
.p-header-logo__title {
  font-size: min(14px, calc(14 / 1440 * 100vw));
}

.p-header-cta {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.p-header-cta-tel, .p-header-cta-mail {
  height: min(36px, calc(36 / 1440 * 100vw));
  width: min(176px, calc(176 / 1440 * 100vw));
  box-shadow: min(2px, calc(2 / 1440 * 100vw)) min(2px, calc(2 / 1440 * 100vw)) min(4px, calc(4 / 1440 * 100vw)) rgba(0, 0, 0, 0.25);
  border-radius: 100px;
}
.p-header-cta-tel__text, .p-header-cta-mail__text {
  font-size: min(16px, calc(16 / 1440 * 100vw));
  font-weight: bold;
  margin-right: min(calc(1px * 1440 * (0.005)), 0.5vw);
}
.p-header-cta-tel__arrow, .p-header-cta-mail__arrow {
  width: min(7px, calc(7 / 1440 * 100vw));
}
.p-header-cta-tel {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #fff;
  border: min(2px, calc(2 / 1440 * 100vw)) solid #C69C34;
  padding: 0 min(7px, calc(7 / 1440 * 100vw));
}
.p-header-cta-tel__icon {
  width: min(27px, calc(27 / 1440 * 100vw));
}
.p-header-cta-tel__text {
  color: #996D00;
}
.p-header-cta__info {
  font-size: min(10px, calc(10 / 1440 * 100vw));
  font-weight: bold;
  line-height: 1.25em;
  color: #fff;
  margin: 0 min(calc(1px * 1440 * (0.006)), 0.6vw);
}
.p-header-cta-mail {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #C69C34;
  padding: 0 min(15px, calc(15 / 1440 * 100vw));
}
.p-header-cta-mail__icon {
  width: min(21px, calc(21 / 1440 * 100vw));
}
.p-header-cta-mail__text {
  color: #fff;
}

@media (max-width: 750px) {
  .p-header {
    height: min(117px, calc(117 / 750 * 100vw));
  }
  .p-header-logo {
    margin-left: -3vw;
  }
  .p-header-logo__img {
    width: min(90px, calc(90 / 750 * 100vw));
    margin-right: 2vw;
  }
  .p-header-logo__name {
    font-size: min(32px, calc(32 / 750 * 100vw));
  }
  .p-header-logo__name span {
    font-size: min(36px, calc(36 / 750 * 100vw));
  }
  .p-header-logo__title {
    font-size: min(17.5px, calc(17.5 / 750 * 100vw));
    margin-top: 1vw;
  }
}
/* * * ヘッダー /E * * */
/* * * FV * * */
.p-fv {
  position: relative;
  margin-top: min(64px, calc(64 / 1440 * 100vw));
}

.p-fv-info {
  background-image: url(../img/fv-bg.jpg);
  background-size: cover;
  background-repeat: no-repeat;
}
.p-fv-info__image {
  padding-top: min(calc(1px * 1440 * (0.043)), 4.3vw);
  padding-bottom: min(calc(1px * 1440 * (0.019)), 1.9vw);
}

.p-fv-speed {
  height: min(138px, calc(138 / 1440 * 100vw));
  background-color: #0D2E63;
}
.p-fv-speed-wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 100%;
}
.p-fv-speed-pic {
  width: 62%;
}

.p-fv-cta-btn {
  display: block;
  width: min(345px, calc(345 / 1440 * 100vw));
  height: min(68px, calc(68 / 1440 * 100vw));
  background-color: #C69C34;
  border-radius: 100px;
  box-shadow: min(2px, calc(2 / 1440 * 100vw)) min(4px, calc(4 / 1440 * 100vw)) min(4px, calc(4 / 1440 * 100vw)) rgba(0, 0, 0, 0.25);
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.p-fv-cta-btn__text {
  font-size: min(28px, calc(28 / 1440 * 100vw));
  font-weight: bold;
  font-family: "Roboto", sans-serif;
  color: #fff;
  margin-right: min(calc(1px * 1440 * (0.04)), 4vw);
  margin-top: min(calc(1px * 1440 * (0.005)), 0.5vw);
}
.p-fv-cta-btn__arrow {
  width: min(15px, calc(15 / 1440 * 100vw));
  margin-right: min(calc(1px * 1440 * (0.015)), 1.5vw);
}

@media (max-width: 750px) {
  .p-fv-info {
    margin-top: min(117px, calc(117 / 750 * 100vw));
  }
  .p-fv-info__image {
    padding-top: min(calc(1px * 750 * (0.086)), 8.6vw);
    padding-bottom: min(calc(1px * 750 * (0.038)), 3.8vw);
    position: relative;
    left: -1.1vw;
  }
  .p-fv-speed {
    height: min(255px, calc(255 / 750 * 100vw));
    padding-top: min(calc(1px * 750 * (0.06)), 6vw);
  }
  .p-fv-speed-wrapper {
    display: block;
  }
  .p-fv-cta-btn {
    width: min(343px, calc(343 / 750 * 100vw));
    height: min(73px, calc(73 / 750 * 100vw));
    margin: 4vw auto 0;
    box-shadow: min(0px, calc(0 / 1440 * 100vw)) min(0px, calc(0 / 1440 * 100vw)) min(7px, calc(7 / 750 * 100vw)) rgba(0, 0, 0, 0.25);
  }
  .p-fv-cta-btn__text {
    font-size: min(27.5px, calc(27.5 / 750 * 100vw));
    margin-right: min(calc(1px * 750 * (0.07)), 7vw);
  }
  .p-fv-cta-btn__arrow {
    width: min(13.8px, calc(13.8 / 750 * 100vw));
    margin-right: min(calc(1px * 750 * (0.03)), 3vw);
  }
}
/* * * FV /E * * */
/* * * 問い合わせ * * */
.p-contact {
  background-color: #FAFFFD;
  padding-top: min(calc(1px * 1440 * (0.056)), 5.6vw);
  padding-bottom: min(calc(1px * 1440 * (0.067)), 6.7vw);
}
.p-contact__text {
  font-size: min(24px, calc(24 / 1440 * 100vw));
  font-weight: 500;
  text-align: center;
  margin-top: min(calc(1px * 1440 * (0.049)), 4.9vw);
}

.p-contact-form {
  margin-top: min(calc(1px * 1440 * (0.03)), 3vw);
  padding-top: min(calc(1px * 1440 * (0.047)), 4.7vw);
  padding-bottom: min(calc(1px * 1440 * (0.015)), 1.5vw);
  background-color: #fff;
  box-shadow: 0 0 min(8px, calc(8 / 1440 * 100vw)) rgba(0, 0, 0, 0.25);
  /* 送信ボタン */
  /* 送信ボタン /E */
}
.p-contact-form-item {
  display: grid;
  grid-template-columns: 31.5% 10.5% 58%;
  align-items: center;
}
.p-contact-form-item:not(:last-of-type) {
  margin-bottom: min(calc(1px * 1440 * (0.041)), 4.1vw);
}
.p-contact-form-item:last-of-type {
  align-items: flex-start;
}
.p-contact-form-item:last-of-type .p-contact-form-item__title {
  margin-bottom: auto;
}
.p-contact-form-item__title {
  font-size: min(20px, calc(20 / 1440 * 100vw));
  font-weight: bold;
  line-height: 1.15em;
  padding-right: min(calc(1px * 1440 * (0.02)), 2vw);
}
.p-contact-form-item__title--explain {
  font-size: min(20px, calc(20 / 1440 * 100vw));
  font-weight: bold;
  line-height: 1.15em;
  position: relative;
  top: min(calc(1px * 1440 * (0.02)), 2vw);
}
.p-contact-form-item-label {
  width: 100%;
}
.p-contact-form-item-label__text {
  font-size: min(18px, calc(18 / 1440 * 100vw));
  color: #fff;
  background-color: #B7372A;
  display: inline-block;
  padding: min(calc(1px * 1440 * (0.0023)), 0.23vw) min(calc(1px * 1440 * (0.0038)), 0.38vw) min(calc(1px * 1440 * (0.004)), 0.4vw) min(calc(1px * 1440 * (0.0038)), 0.38vw);
}
.p-contact-form-item-label__text--opt {
  background-color: #2854AD;
}
.p-contact-form-item-inputs {
  /* チェックボックス */
  /* チェックボックス /E */
  /* テキスト・電話番号・メール */
  /* テキスト・電話番号・メール /E */
  /* テキストエリア */
  /* テキストエリア /E */
}
.p-contact-form-item-inputs-wrapper label:not(:first-of-type) {
  margin-left: min(calc(1px * 1440 * (0.045)), 4.5vw);
}
.p-contact-form-item-inputs input[type=checkbox] {
  width: min(24px, calc(24 / 1440 * 100vw));
  height: min(24px, calc(24 / 1440 * 100vw));
  border: min(1px, calc(1 / 1440 * 100vw)) solid #3B3B40;
  margin-right: min(16px, calc(16 / 1440 * 100vw));
}
.p-contact-form-item-inputs input[type=checkbox]:checked {
  background-color: #2854AD;
  position: relative;
}
.p-contact-form-item-inputs input[type=checkbox]:checked::before {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg%20version%3D%221.1%22%20id%3D%22_x32_%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns:xlink%3D%22http%3A//www.w3.org/1999/xlink%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%20512%20512%22%20style%3D%22width%3A%20256px%3B%20height%3A%20256px%3B%20opacity%3A%201%3B%22%20xml:space%3D%22preserve%22%3E%3Cstyle%20type%3D%22text/css%22%3E.st0%7Bfill%3A%234B4B4B%3B%7D%3C/style%3E%3Cg%3E%3Cpolygon%20class%3D%22st0%22%20points%3D%22440.469%2C73.413%20218.357%2C295.525%2071.531%2C148.709%200%2C220.229%20146.826%2C367.055%20218.357%2C438.587%20289.878%2C367.055%20512%2C144.945%20%22%20style%3D%22fill%3A%20rgb(255%2C%20255%2C%20255)%3B%22/%3E%3C/g%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  width: 80%;
  height: 80%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
/* ラジオボタン*/
.p-contact-form-item-inputs input[type=radio] {
  width: min(24px, calc(24 / 1440 * 100vw));
  height: min(24px, calc(24 / 1440 * 100vw));
  border: min(1px, calc(1 / 1440 * 100vw)) solid #3B3B40;
  margin-right: min(16px, calc(16 / 1440 * 100vw));
  appearance: none;
}

.p-contact-form-item-inputs input[type=radio]:checked {
  background-color: #2854AD;
  position: relative;
}

.p-contact-form-item-inputs input[type=radio]:checked::before {
  content: "";
  background-image: url("data:image/svg+xml,%3Csvg%20version%3D%221.1%22%20id%3D%22_x32_%22%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns:xlink%3D%22http%3A//www.w3.org/1999/xlink%22%20x%3D%220px%22%20y%3D%220px%22%20viewBox%3D%220%200%20512%20512%22%20style%3D%22width%3A%20256px%3B%20height%3A%20256px%3B%20opacity%3A%201%3B%22%20xml:space%3D%22preserve%22%3E%3Cstyle%20type%3D%22text/css%22%3E.st0%7Bfill%3A%234B4B4B%3B%7D%3C/style%3E%3Cg%3E%3Cpolygon%20class%3D%22st0%22%20points%3D%22440.469%2C73.413%20218.357%2C295.525%2071.531%2C148.709%200%2C220.229%20146.826%2C367.055%20218.357%2C438.587%20289.878%2C367.055%20512%2C144.945%20%22%20style%3D%22fill%3A%20rgb(255%2C%20255%2C%20255)%3B%22/%3E%3C/g%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  width: 80%;
  height: 80%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.p-contact-form-item-inputs input[type=text],
.p-contact-form-item-inputs input[type=tel],
.p-contact-form-item-inputs input[type=email] {
  height: min(53px, calc(53 / 1440 * 100vw));
  width: 100%;
  background-color: #FAFAFA;
  border: min(2px, calc(2 / 1440 * 100vw)) solid #DDD;
  border-radius: min(4px, calc(4 / 1440 * 100vw));
  padding: 0 min(calc(1px * 1440 * (0.0155)), 1.55vw);
  font-size: min(20px, calc(20 / 1440 * 100vw));
  color: #3B3B40;
}
.p-contact-form-item-inputs input[type=text]::placeholder,
.p-contact-form-item-inputs input[type=tel]::placeholder,
.p-contact-form-item-inputs input[type=email]::placeholder {
  font-size: min(20px, calc(20 / 1440 * 100vw));
  color: #B6B5B5;
}
.p-contact-form-item-inputs textarea {
  font-size: min(20px, calc(20 / 1440 * 100vw));
  color: #3B3B40;
  width: 100%;
  height: min(220px, calc(220 / 1440 * 100vw));
  padding: min(calc(1px * 1440 * (0.0155)), 1.55vw);
  background-color: #FAFAFA;
  border: min(2px, calc(2 / 1440 * 100vw)) solid #DDD;
  border-radius: min(4px, calc(4 / 1440 * 100vw));
}
.p-contact-form-item-inputs__label span {
  font-size: min(20px, calc(20 / 1440 * 100vw));
  font-weight: bold;
  vertical-align: middle;
}
.p-contact-form-submit {
  width: 100%;
  margin-bottom: min(calc(1px * 1440 * (0.041)), 4.1vw);
}
.p-contact-form-submit__btn {
  font-size: min(28px, calc(28 / 1440 * 100vw));
  font-weight: 500;
  text-align: center;
  color: #fff;
  background-color: #B7372A;
  width: min(328px, calc(328 / 1440 * 100vw));
  height: min(68px, calc(68 / 1440 * 100vw));
  display: block;
  margin: 0 auto;
  border-radius: min(11px, calc(11 / 1440 * 100vw));
  box-shadow: min(2px, calc(2 / 1440 * 100vw)) min(2px, calc(2 / 1440 * 100vw)) min(4px, calc(4 / 1440 * 100vw)) rgba(0, 0, 0, 0.2);
  opacity: 1;
  transition: all 0.3s;
}
.p-contact-form-submit__btn:hover {
  opacity: 0.7;
}

@media (max-width: 750px) {
  .p-contact {
    padding: 12vw 0;
  }
  .p-contact__text {
    font-size: min(28.8px, calc(28.8 / 750 * 100vw));
    line-height: 1.5em;
    margin: 5vw 0 7vw;
  }
  .p-contact-form {
    box-shadow: 0 0 min(8px, calc(8 / 750 * 100vw)) rgba(0, 0, 0, 0.25);
    padding: min(50px, calc(50 / 750 * 100vw)) min(15px, calc(15 / 750 * 100vw));
    /* 送信ボタン */
    /* 送信ボタン /E */
  }
  .p-contact-form-item {
    display: block;
  }
  .p-contact-form-item:not(:last-of-type) {
    margin-bottom: 7vw;
  }
  .p-contact-form-item__title {
    display: inline;
    line-height: 1.5em;
  }
  .p-contact-form-item__title--explain {
    font-size: 30, sp;
  }
  .p-contact-form-item-label {
    display: inline;
    margin-bottom: 2vw;
  }
  .p-contact-form-item-label__text {
    padding: 1vw;
  }
  .p-contact-form-item-label__text--opt {
    display: inline;
    font-weight: normal;
    padding: 0 1vw;
  }
  .p-contact-form-item__title {
    font-size: min(30px, calc(30 / 750 * 100vw));
  }
  .p-contact-form-item__title--explain {
    font-size: min(30px, calc(30 / 750 * 100vw));
  }
  .p-contact-form-item-label {
    width: 100%;
  }
  .p-contact-form-item-label.sp {
    display: inline !important;
  }
  .p-contact-form-item-label__text {
    font-size: min(27px, calc(27 / 750 * 100vw));
  }
  .p-contact-form-item-inputs {
    margin-top: 3vw;
    /* チェックボックス */
    /* チェックボックス /E */
    /* テキスト・電話番号・メール */
    /* テキスト・電話番号・メール /E */
    /* テキストエリア */
    /* テキストエリア /E */
  }
  .p-contact-form-item-inputs input[type=checkbox] {
    width: min(36px, calc(36 / 750 * 100vw));
    height: min(36px, calc(36 / 750 * 100vw));
  }
  .p-contact-form-item-inputs input[type=radio] {
    width: min(36px, calc(36 / 750 * 100vw));
    height: min(36px, calc(36 / 750 * 100vw));
  }
  .p-contact-form-item-inputs input[type=text],
  .p-contact-form-item-inputs input[type=tel],
  .p-contact-form-item-inputs input[type=email] {
    height: min(79.5px, calc(79.5 / 750 * 100vw));
    border: min(2px, calc(2 / 750 * 100vw)) solid #DDD;
    border-radius: min(4px, calc(4 / 750 * 100vw));
    padding: 0 min(calc(1px * 750 * (0.0155)), 1.55vw);
    font-size: min(30px, calc(30 / 750 * 100vw));
  }
  .p-contact-form-item-inputs input[type=text]::placeholder,
  .p-contact-form-item-inputs input[type=tel]::placeholder,
  .p-contact-form-item-inputs input[type=email]::placeholder {
    font-size: min(30px, calc(30 / 750 * 100vw));
  }
  .p-contact-form-item-inputs textarea {
    font-size: min(30px, calc(30 / 750 * 100vw));
    color: #3B3B40;
    width: 100%;
    height: min(220px, calc(220 / 750 * 100vw));
    padding: min(calc(1px * 750 * (0.0155)), 1.55vw);
    border: min(2px, calc(2 / 750 * 100vw)) solid #DDD;
    border-radius: min(4px, calc(4 / 750 * 100vw));
  }
  .p-contact-form-item-inputs__label span {
    font-size: min(30px, calc(30 / 750 * 100vw));
  }
  .p-contact-form-submit {
    width: 100%;
    margin-bottom: min(calc(1px * 1440 * (0.041)), 4.1vw);
  }
  .p-contact-form-submit__btn {
    font-size: min(28px, calc(28 / 750 * 100vw));
    width: min(328px, calc(328 / 750 * 100vw));
    height: min(68px, calc(68 / 750 * 100vw));
    border-radius: min(11px, calc(11 / 750 * 100vw));
    box-shadow: min(2px, calc(2 / 750 * 100vw)) min(2px, calc(2 / 750 * 100vw)) min(4px, calc(4 / 750 * 100vw)) rgba(0, 0, 0, 0.2);
  }
}
/* * * 問い合わせ /E * * */
/* * * 特徴 * * */
.p-features {
  background: #E3F3F7;
  padding-top: min(calc(1px * 1440 * (0.055)), 5.5vw);
  padding-bottom: min(calc(1px * 1440 * (0.04)), 4vw);
}

.p-features-contents {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(10px, calc(10 / 1440 * 100vw)) min(41px, calc(41 / 1440 * 100vw));
  margin-top: min(calc(1px * 1440 * (0.055)), 5.5vw);
}

.p-features-item-icon {
  width: min(70px, calc(70 / 1440 * 100vw));
  height: min(70px, calc(70 / 1440 * 100vw));
  background-color: #2854AD;
  border-radius: 100%;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1;
}
.p-features-item-icon__image {
  height: 100%;
  margin: 0 auto;
  object-fit: contain;
}
.p-features-item-icon__image--1 {
  width: min(40px, calc(40 / 1440 * 100vw));
}
.p-features-item-icon__image--2 {
  width: min(24px, calc(24 / 1440 * 100vw));
}
.p-features-item-icon__image--3 {
  width: min(70px, calc(70 / 1440 * 100vw));
}
.p-features-item-icon__image--4 {
  width: min(44px, calc(44 / 1440 * 100vw));
}
.p-features-item-icon__image--5 {
  width: min(40px, calc(40 / 1440 * 100vw));
}
.p-features-item-icon__image--6 {
  width: min(40px, calc(40 / 1440 * 100vw));
}
.p-features-item-info {
  height: min(209px, calc(209 / 1440 * 100vw));
  background-color: #fff;
  border: min(4px, calc(4 / 1440 * 100vw)) solid #2854AD;
  border-radius: min(16px, calc(16 / 1440 * 100vw));
  text-align: center;
  display: grid;
  grid-template-rows: 43.5% 29% 27.5%;
  position: relative;
  top: max(-35px, calc(-35 / 1440 * 100vw));
}
.p-features-item-info__title {
  padding-bottom: min(calc(1px * 1440 * (0.015)), 1.5vw);
  color: #0D2E63;
  font-weight: 500;
  display: flex;
  justify-content: center;
  align-items: flex-end;
}
.p-features-item-info__text {
  font-size: min(24px, calc(24 / 1440 * 100vw));
  font-weight: bold;
  margin: auto;
}
.p-features-item-info__text .large {
  font-size: min(32px, calc(32 / 1440 * 100vw));
}
.p-features-item-info__text .large-num {
  font-size: min(48px, calc(48 / 1440 * 100vw));
}
.p-features-item-info__sub-text {
  font-weight: bold;
}

@media (max-width: 750px) {
  .p-features {
    padding: 12vw 0;
  }
  .p-features-contents {
    grid-template-columns: repeat(2, 1fr);
  }
  .p-features-item-icon {
    width: min(70px, calc(70 / 750 * 100vw));
    height: min(70px, calc(70 / 750 * 100vw));
  }
  .p-features-item-icon__image--1 {
    width: min(40px, calc(40 / 750 * 100vw));
  }
  .p-features-item-icon__image--2 {
    width: min(24px, calc(24 / 750 * 100vw));
  }
  .p-features-item-icon__image--3 {
    width: min(70px, calc(70 / 750 * 100vw));
  }
  .p-features-item-icon__image--4 {
    width: min(44px, calc(44 / 750 * 100vw));
  }
  .p-features-item-icon__image--5 {
    width: min(40px, calc(40 / 750 * 100vw));
  }
  .p-features-item-icon__image--6 {
    width: min(40px, calc(40 / 750 * 100vw));
  }
  .p-features-item-info {
    height: min(209px, calc(209 / 750 * 100vw));
    border: min(4px, calc(4 / 750 * 100vw)) solid #2854AD;
    border-radius: min(16px, calc(16 / 750 * 100vw));
    top: max(-35px, calc(-35 / 750 * 100vw));
  }
  .p-features-item-info__text {
    font-size: min(24px, calc(24 / 750 * 100vw));
  }
  .p-features-item-info__text .large {
    font-size: min(32px, calc(32 / 750 * 100vw));
  }
  .p-features-item-info__text .large-num {
    font-size: min(48px, calc(48 / 750 * 100vw));
  }
}
/* * * 特徴 /E * * */
/* * * 満足度No.1 * * */
.p-review {
  background: linear-gradient(0deg, #e3f3f7, #ffffff);
  padding-top: min(calc(1px * 1440 * (0.058)), 5.8vw);
  padding-bottom: min(calc(1px * 1440 * (0.065)), 6.5vw);
}
.p-review__text {
  font-size: min(24px, calc(24 / 1440 * 100vw));
  font-weight: 500;
  text-align: center;
  margin-top: min(calc(1px * 1440 * (0.0465)), 4.65vw);
  line-height: 1.15em;
}

.p-review-prob-contents {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(38px, calc(38 / 1440 * 100vw));
  margin-top: min(calc(1px * 1440 * (0.045)), 4.5vw);
}
.p-review-prob-item {
  display: grid;
  grid-template-rows: 59% 18% 23%;
  height: min(275px, calc(275 / 1440 * 100vw));
}
.p-review-prob-item__illust {
  margin: auto;
}
.p-review-prob-item__illust--1 {
  width: 57%;
}
.p-review-prob-item__illust--2 {
  width: 37%;
}
.p-review-prob-item__illust--3 {
  width: 34%;
}
.p-review-prob-item__text {
  font-size: min(24px, calc(24 / 1440 * 100vw));
  font-weight: 500;
  text-align: center;
  background-color: #E4E7EF;
  border-radius: min(16px, calc(16 / 1440 * 100vw));
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-review-prob-item__arrow {
  width: min(42px, calc(42 / 1440 * 100vw));
  margin: 0 auto;
  position: relative;
  top: min(calc(1px * 1440 * (0.021)), 2.1vw);
}
.p-review-prob-text {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: min(calc(1px * 1440 * (0.019)), 1.9vw);
}
.p-review-prob-text__text {
  font-size: min(32px, calc(32 / 1440 * 100vw));
  font-weight: 500;
  color: #0D2E63;
  text-align: center;
  border-bottom: min(3px, calc(3 / 1440 * 100vw)) solid #2854AD;
  display: inline;
  padding-bottom: min(calc(1px * 1440 * (0.011)), 1.1vw);
}

.p-review-point-contents {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(39px, calc(39 / 1440 * 100vw));
  margin-top: min(calc(1px * 1440 * (0.0325)), 3.25vw);
}
.p-review-point-item {
  color: #fff;
  background-color: #2854AD;
  width: min(320px, calc(320 / 1440 * 100vw));
  height: min(326px, calc(326 / 1440 * 100vw));
  border-radius: min(16px, calc(16 / 1440 * 100vw));
  display: grid;
  grid-template-rows: 44.5% 33.5% 22%;
}
.p-review-point-item__title {
  font-size: min(32px, calc(32 / 1440 * 100vw));
  font-weight: 500;
  line-height: 1.45em;
  text-align: center;
  margin-top: min(calc(1px * 1440 * (0.016)), 1.6vw);
}
.p-review-point-item__title .large {
  font-size: min(40px, calc(40 / 1440 * 100vw));
}
.p-review-point-item__title .large-num {
  font-size: min(48px, calc(48 / 1440 * 100vw));
}
.p-review-point-item__icon {
  margin: 0 auto;
  width: 23%;
}
.p-review-point-item__text {
  padding: 0 min(calc(1px * 1440 * (0.02)), 2vw);
  line-height: 1.24em;
}
.p-review-point-free {
  border: min(2px, calc(2 / 1440 * 100vw)) solid #B7372A;
  border-radius: min(8px, calc(8 / 1440 * 100vw));
  margin-top: min(calc(1px * 1440 * (0.058)), 5.8vw);
  background-color: #fff;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.p-review-point-free-label {
  height: min(104px, calc(104 / 1440 * 100vw));
  padding-left: min(calc(1px * 1440 * (0.013)), 1.3vw);
  text-wrap: nowrap;
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-review-point-free-label__text {
  font-size: min(40px, calc(40 / 1440 * 100vw));
  font-weight: 500;
  color: #fff;
  background-color: #B7372A;
  height: min(calc(1px * 1440 * (0.044)), 4.4vw);
  padding: 0 min(calc(1px * 1440 * (0.007)), 0.7vw);
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-review-point-free-explain {
  font-weight: 500;
  color: #B7372A;
  margin-left: min(calc(1px * 1440 * (0.01)), 1vw);
}
.p-review-point-free-explain__text {
  font-size: min(28px, calc(28 / 1440 * 100vw));
  text-wrap: nowrap;
}
.p-review-point-free-explain__warning {
  text-align: right;
  margin-top: min(calc(1px * 1440 * (0.0085)), 0.85vw);
}

@media (max-width: 750px) {
  .p-review {
    padding: 12vw 0;
  }
  .p-review__text {
    font-size: min(28.8px, calc(28.8 / 750 * 100vw));
    line-height: 1.5em;
  }
  .p-review-prob-contents {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: min(38px, calc(38 / 750 * 100vw));
  }
  .p-review-prob-item {
    grid-template-rows: 85% 15%;
    height: min(400px, calc(400 / 750 * 100vw));
  }
  .p-review-prob-item__illust--1 {
    width: 57%;
  }
  .p-review-prob-item__illust--2 {
    width: 37%;
  }
  .p-review-prob-item__illust--3 {
    width: 34%;
  }
  .p-review-prob-item__text {
    font-size: min(36px, calc(36 / 750 * 100vw));
    display: flex;
    justify-content: center;
    align-items: center;
  }
  .p-review-prob-item__arrow {
    width: min(100px, calc(100 / 750 * 100vw));
    margin: 3vw auto 0;
  }
  .p-review-prob-text {
    margin-top: 15vw;
  }
  .p-review-prob-text__text {
    font-size: min(41.6px, calc(41.6 / 750 * 100vw));
    border-bottom: none;
    text-decoration: underline;
    text-decoration-thickness: min(2px, calc(2 / 750 * 100vw));
    text-underline-offset: min(10px, calc(10 / 750 * 100vw));
    line-height: 1.5em;
    display: inline;
  }
  .p-review-point-contents {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: min(20px, calc(20 / 750 * 100vw));
    margin-top: 5vw;
  }
  .p-review-point-item {
    height: min(300px, calc(300 / 750 * 100vw));
    width: auto;
    border-radius: min(16px, calc(16 / 750 * 100vw));
    aspect-ratio: 1/1;
    grid-template-rows: 44.5% 29.5% 26%;
  }
  .p-review-point-item:nth-of-type(1) {
    grid-column: 1;
    grid-row: 1;
    margin-left: auto;
  }
  .p-review-point-item:nth-of-type(2) {
    grid-column: 2;
    grid-row: 1;
  }
  .p-review-point-item:nth-of-type(3) {
    grid-column: 1/3;
    grid-row: 2;
    justify-self: center;
  }
  .p-review-point-item__title {
    font-size: min(32px, calc(32 / 750 * 100vw));
  }
  .p-review-point-item__title .large {
    font-size: min(40px, calc(40 / 750 * 100vw));
  }
  .p-review-point-item__title .large-num {
    font-size: min(48px, calc(48 / 750 * 100vw));
  }
  .p-review-point-item__text {
    padding: 0 min(calc(1px * 750 * (0.04)), 4vw);
  }
  .p-review-point-free {
    border: min(2px, calc(2 / 750 * 100vw)) solid #B7372A;
    border-radius: min(8px, calc(8 / 750 * 100vw));
    padding: 2.5vw 1vw;
  }
  .p-review-point-free-label__text {
    font-size: min(36px, calc(36 / 750 * 100vw));
    height: 100%;
    padding: 0 min(calc(1px * 750 * (0.014)), 1.4vw);
  }
  .p-review-point-free-explain {
    margin-left: 3vw;
  }
  .p-review-point-free-explain__text {
    font-size: min(28.6px, calc(28.6 / 750 * 100vw));
    line-height: 1.25;
  }
}
/* * * 満足度No.1 /E * * */
/* * * ファクタリングとは * * */
.p-about {
  background-color: #FAFFFD;
  padding-top: min(calc(1px * 1440 * (0.056)), 5.6vw);
  padding-bottom: min(calc(1px * 1440 * (0.065)), 6.5vw);
}

.p-about-info {
  padding-top: min(calc(1px * 1440 * (0.043)), 4.3vw);
}
.p-about-info__title {
  font-size: min(24px, calc(24 / 1440 * 100vw));
  font-weight: 500;
}
.p-about-info__text {
  font-size: min(16px, calc(16 / 1440 * 100vw));
  font-weight: 500;
  line-height: 2em;
  padding-top: min(calc(1px * 1440 * (0.024)), 2.4vw);
}

.p-about-explain {
  margin-top: min(calc(1px * 1440 * (0.023)), 2.3vw);
  background-color: #fff;
  border: min(2px, calc(2 / 1440 * 100vw)) solid #55880F;
  border-radius: min(8px, calc(8 / 1440 * 100vw));
  display: grid;
  grid-template-columns: 62% 38%;
  height: min(288px, calc(288 / 1440 * 100vw));
}
.p-about-explain__illust {
  width: 87%;
  margin: auto;
}
.p-about-explain-list {
  margin: auto 0;
}
.p-about-explain-list li {
  font-weight: 500;
  position: relative;
  padding-left: min(calc(1px * 1440 * (0.016)), 1.6vw);
}
.p-about-explain-list li:not(:last-of-type) {
  margin-bottom: min(calc(1px * 1440 * (0.007)), 0.7vw);
}
.p-about-explain-list li::before {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.p-about-explain-list li:nth-of-type(1)::before {
  content: "①";
}
.p-about-explain-list li:nth-of-type(2)::before {
  content: "②";
}
.p-about-explain-list li:nth-of-type(3)::before {
  content: "③";
}
.p-about-explain-list li:nth-of-type(4)::before {
  content: "④";
}
.p-about-explain-list li:nth-of-type(5)::before {
  content: "⑤";
}
.p-about-explain-list li:nth-of-type(6)::before {
  content: "⑥";
}
.p-about-explain-list li:nth-of-type(7)::before {
  content: "⑦";
}
.p-about-explain-list li:nth-of-type(8)::before {
  content: "⑧";
}
.p-about-explain-list span.line-height {
  line-height: 1.25em;
}

.p-about-point {
  margin-top: min(calc(1px * 1440 * (0.028)), 2.8vw);
  padding-left: min(calc(1px * 1440 * (0.016)), 1.6vw);
  height: min(90px, calc(90 / 1440 * 100vw));
  border: min(2px, calc(2 / 1440 * 100vw)) solid #B7372A;
  border-radius: min(8px, calc(8 / 1440 * 100vw));
  display: flex;
  justify-content: flex-start;
  align-items: center;
  position: relative;
}
.p-about-point::before {
  content: "";
  position: absolute;
  top: 0;
  left: 8.8%;
  border-style: solid;
  border-width: 0 min(10px, calc(10 / 1440 * 100vw)) min(20px, calc(20 / 1440 * 100vw)) min(10px, calc(10 / 1440 * 100vw));
  border-color: transparent transparent #B7372A;
  translate: -50% -100%;
}
.p-about-point::after {
  content: "";
  position: absolute;
  top: 1%;
  left: 8.8%;
  border-style: solid;
  border-width: 0 min(8.8px, calc(8.8 / 1440 * 100vw)) min(16px, calc(16 / 1440 * 100vw)) min(8.8px, calc(8.8 / 1440 * 100vw));
  border-color: transparent transparent #fff;
  translate: -50% -100%;
}
.p-about-point-label__text {
  padding: min(calc(1px * 1440 * (0.005)), 0.5vw) min(calc(1px * 1440 * (0.008)), 0.8vw);
  font-size: min(24px, calc(24 / 1440 * 100vw));
  font-weight: 500;
  background-color: #B7372A;
  color: #fff;
  display: inline;
}
.p-about-point-text__text {
  font-size: min(20px, calc(20 / 1440 * 100vw));
  font-weight: bold;
  color: #B7372A;
  padding-left: min(calc(1px * 1440 * (0.01)), 1vw);
}
.p-about-point-text__text .large {
  font-size: min(28px, calc(28 / 1440 * 100vw));
}

@media (max-width: 750px) {
  .p-about {
    padding: 12vw 0;
  }
  .p-about-info__title {
    font-size: min(33px, calc(33 / 750 * 100vw));
    line-height: 1.25em;
    margin: 5vw 0;
  }
  .p-about-info__text {
    font-size: min(27px, calc(27 / 750 * 100vw));
  }
  .p-about-explain {
    border: min(2px, calc(2 / 750 * 100vw)) solid #55880F;
    border-radius: min(8px, calc(8 / 750 * 100vw));
    display: block;
    height: auto;
    margin-top: 10vw;
  }
  .p-about-explain__illust {
    width: 90%;
    margin: 2vw auto;
  }
  .p-about-explain-list {
    margin: 5vw auto;
    width: 90%;
  }
  .p-about-explain-list li {
    font-size: min(27px, calc(27 / 750 * 100vw));
    padding-left: min(calc(1px * 750 * (0.05)), 5vw);
  }
  .p-about-explain-list li:not(:last-of-type) {
    margin-bottom: min(calc(1px * 750 * (0.03)), 3vw);
  }
  .p-about-point {
    height: min(90px, calc(90 / 750 * 100vw));
    border: min(2px, calc(2 / 750 * 100vw)) solid #B7372A;
    border-radius: min(8px, calc(8 / 750 * 100vw));
  }
  .p-about-point::before {
    border-width: 0 min(10px, calc(10 / 750 * 100vw)) min(20px, calc(20 / 750 * 100vw)) min(10px, calc(10 / 750 * 100vw));
  }
  .p-about-point::after {
    border-width: 0 min(8.8px, calc(8.8 / 750 * 100vw)) min(16px, calc(16 / 750 * 100vw)) min(8.8px, calc(8.8 / 750 * 100vw));
  }
  .p-about-point-label__text {
    font-size: min(24px, calc(24 / 750 * 100vw));
  }
  .p-about-point-text__text {
    font-size: min(20px, calc(20 / 750 * 100vw));
    line-height: 1.5em;
    padding-left: 2vw;
  }
  .p-about-point-text__text .large {
    font-size: min(28px, calc(28 / 750 * 100vw));
  }
}
/* * * ファクタリングとは？ /E * * */
/* * * メリット * * */
.p-merit {
  background-color: #E3F3F7;
  padding-top: min(calc(1px * 1440 * (0.058)), 5.8vw);
  padding-bottom: min(calc(1px * 1440 * (0.071)), 7.1vw);
}

.p-merit-contents {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(42px, calc(42 / 1440 * 100vw));
  margin-top: min(calc(1px * 1440 * (0.044)), 4.4vw);
}

.p-merit-item:nth-of-type(1) .p-merit-item-info__text {
  line-height: 1.8em;
  position: relative;
  top: min(14px, calc(14 / 1440 * 100vw));
}
.p-merit-item:nth-of-type(4) .p-merit-item-info__text {
  line-height: 1.35em;
  position: relative;
  top: min(14px, calc(14 / 1440 * 100vw));
}
.p-merit-item:nth-of-type(6) .p-merit-item-info__text {
  line-height: 1.35em;
  position: relative;
  top: min(14px, calc(14 / 1440 * 100vw));
}
.p-merit-item-num {
  text-align: center;
  font-weight: bold;
  color: #2854AD;
}
.p-merit-item-num__text {
  line-height: 1.3em;
  margin-bottom: max(calc(1px * 1440 * (-0.003)), -0.3vw);
}
.p-merit-item-num__text .large {
  font-size: min(48px, calc(48 / 1440 * 100vw));
  line-height: 1.25em;
}
.p-merit-item-info {
  background-color: #2854AD;
  border-radius: 100%;
  box-shadow: min(4px, calc(4 / 1440 * 100vw)) min(4px, calc(4 / 1440 * 100vw)) min(8px, calc(8 / 1440 * 100vw)) rgba(0, 0, 0, 0.15);
  width: min(214px, calc(214 / 1440 * 100vw));
  height: min(214px, calc(214 / 1440 * 100vw));
  margin: 0 auto;
}
.p-merit-item-info-wrapper {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
}
.p-merit-item-info__text {
  font-size: min(24px, calc(24 / 1440 * 100vw));
  font-weight: bold;
  line-height: 1.5em;
  text-align: center;
  color: #fff;
}
.p-merit-item-info__text .large {
  font-size: min(40px, calc(40 / 1440 * 100vw));
}
.p-merit-item-info__text .midium {
  font-size: min(30px, calc(30 / 1440 * 100vw));
}
.p-merit-item-info__text .small {
  font-size: min(20px, calc(20 / 1440 * 100vw));
}
.p-merit-item-info__text .fs-32 {
  font-size: min(32px, calc(32 / 1440 * 100vw));
}

@media (max-width: 750px) {
  .p-merit {
    padding: 12vw 0;
  }
  .p-merit-contents {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: min(40px, calc(40 / 750 * 100vw));
  }
  .p-merit-item-num__text .large {
    font-size: min(48px, calc(48 / 750 * 100vw));
  }
  .p-merit-item-info {
    box-shadow: min(4px, calc(4 / 750 * 100vw)) min(4px, calc(4 / 750 * 100vw)) min(8px, calc(8 / 750 * 100vw)) rgba(0, 0, 0, 0.15);
    width: 100%;
    height: auto;
    aspect-ratio: 1/1;
  }
  .p-merit-item-info__text {
    font-size: min(24px, calc(24 / 750 * 100vw));
  }
  .p-merit-item-info__text .large {
    font-size: min(40px, calc(40 / 750 * 100vw));
  }
  .p-merit-item-info__text .midium {
    font-size: min(30px, calc(30 / 750 * 100vw));
  }
  .p-merit-item-info__text .small {
    font-size: min(20px, calc(20 / 750 * 100vw));
  }
  .p-merit-item-info__text .fs-32 {
    font-size: min(32px, calc(32 / 750 * 100vw));
  }
}
/* * * メリット /E * * */
/* * * 実績 * * */
.p-zisseki {
  background: linear-gradient(0deg, #e3f3f7, #ffffff);
  padding-top: min(calc(1px * 1440 * (0.055)), 5.5vw);
  padding-bottom: min(calc(1px * 1440 * (0.067)), 6.7vw);
}

.p-zisseki-contents {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: min(42px, calc(42 / 1440 * 100vw));
  margin-top: min(calc(1px * 1440 * (0.046)), 4.6vw);
}

.p-zisseki-item {
  background-color: #E4E7EF;
  box-shadow: min(2px, calc(2 / 1440 * 100vw)) min(2px, calc(2 / 1440 * 100vw)) min(8px, calc(8 / 1440 * 100vw)) rgba(0, 0, 0, 0.25);
  height: min(248px, calc(248 / 1440 * 100vw));
}
.p-zisseki-item__title {
  font-size: min(24px, calc(24 / 1440 * 100vw));
  font-weight: bold;
  text-align: center;
  color: #2854AD;
  margin-top: min(calc(1px * 1440 * (0.018)), 1.8vw);
}
.p-zisseki-item__title .small {
  font-size: min(20px, calc(20 / 1440 * 100vw));
}
.p-zisseki-item-info {
  display: flex;
  justify-content: center;
  align-items: center;
  align-items: flex-start;
  margin-top: min(calc(1px * 1440 * (0.02)), 2vw);
}
.p-zisseki-item-info__illust {
  width: min(136px, calc(136 / 1440 * 100vw));
  position: relative;
  left: max(calc(1px * 1440 * (-0.015)), -1.5vw);
}
.p-zisseki-item-info-wrapper {
  margin-top: min(calc(1px * 1440 * (0.005)), 0.5vw);
  position: relative;
  left: min(calc(1px * 1440 * (0.01)), 1vw);
}
.p-zisseki-item-info__text {
  margin-bottom: min(calc(1px * 1440 * (0.013)), 1.3vw);
  letter-spacing: 0.1em;
  line-height: 1.15em;
}

@media (max-width: 750px) {
  .p-zisseki {
    padding: 12vw 0;
  }
  .p-zisseki-contents {
    display: block;
    width: 100%;
    margin: 7vw auto 0;
  }
  .p-zisseki-item {
    box-shadow: min(2px, calc(2 / 750 * 100vw)) min(2px, calc(2 / 750 * 100vw)) min(8px, calc(8 / 750 * 100vw)) rgba(0, 0, 0, 0.25);
    height: min(334.8px, calc(334.8 / 750 * 100vw));
  }
  .p-zisseki-item:not(:last-of-type) {
    margin-bottom: 5vw;
  }
  .p-zisseki-item__title {
    font-size: min(30px, calc(30 / 750 * 100vw));
    margin-top: initial;
    padding-top: 5vw;
    margin-bottom: 4vw;
  }
  .p-zisseki-item__title .small {
    font-size: min(25px, calc(25 / 750 * 100vw));
  }
  .p-zisseki-item-info__illust {
    width: min(170px, calc(170 / 750 * 100vw));
    margin-right: 1.5vw;
  }
  .p-zisseki-item-info__text {
    font-size: min(22.5px, calc(22.5 / 750 * 100vw));
    margin-bottom: min(calc(1px * 750 * (0.013)), 1.3vw);
    line-height: 1.5;
  }
}
/* * * 実績 /E * * */
/* * * FAQ * * */
.p-faq {
  background-color: #FAFFFD;
  padding-top: min(calc(1px * 1440 * (0.055)), 5.5vw);
  padding-bottom: min(calc(1px * 1440 * (0.066)), 6.6vw);
}

.p-faq-contents {
  margin-top: min(calc(1px * 1440 * (0.047)), 4.7vw);
}

.p-faq-item {
  border-top: min(2px, calc(2 / 1440 * 100vw)) solid #D9D9D9;
}
.p-faq-item:last-of-type {
  border-bottom: min(2px, calc(2 / 1440 * 100vw)) solid #D9D9D9;
}
.p-faq-item-q__text {
  font-size: min(20px, calc(20 / 1440 * 100vw));
  font-weight: bold;
  letter-spacing: 0.1em;
  color: #2854AD;
  position: relative;
  padding: min(calc(1px * 1440 * (0.023)), 2.3vw) min(calc(1px * 1440 * (0.05)), 5vw) min(calc(1px * 1440 * (0.023)), 2.3vw) min(calc(1px * 1440 * (0.07)), 7vw);
}
.p-faq-item-q__text::before {
  content: "Q";
  color: #fff;
  font-size: min(24px, calc(24 / 1440 * 100vw));
  font-family: "Roboto", sans-serif;
  font-weight: normal;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #2854AD;
  border-radius: 100%;
  width: min(40px, calc(40 / 1440 * 100vw));
  height: min(40px, calc(40 / 1440 * 100vw));
  position: absolute;
  left: 5.7%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.p-faq-item-a__text {
  font-size: min(18px, calc(18 / 1440 * 100vw));
  font-weight: bold;
  letter-spacing: 0.1em;
  line-height: 1.2em;
  position: relative;
  padding-left: min(calc(1px * 1440 * (0.07)), 7vw);
  padding-right: min(calc(1px * 1440 * (0.03)), 3vw);
  margin-bottom: min(calc(1px * 1440 * (0.022)), 2.2vw);
}
.p-faq-item-a__text::before {
  content: "A";
  color: #2854AD;
  font-size: min(24px, calc(24 / 1440 * 100vw));
  font-family: "Roboto", sans-serif;
  font-weight: normal;
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #fff;
  border: min(2px, calc(2 / 1440 * 100vw)) solid #2854AD;
  border-radius: 100%;
  width: min(40px, calc(40 / 1440 * 100vw));
  height: min(40px, calc(40 / 1440 * 100vw));
  position: absolute;
  left: 5.7%;
  top: 50%;
  transform: translate(-50%, -50%);
}

@media (max-width: 750px) {
  .p-faq {
    padding: 12vw 0;
  }
  .p-faq-item {
    border-top: min(2px, calc(2 / 750 * 100vw)) solid #D9D9D9;
  }
  .p-faq-item:last-of-type {
    border-bottom: min(2px, calc(2 / 750 * 100vw)) solid #D9D9D9;
  }
  .p-faq-item-q__text {
    font-size: min(30px, calc(30 / 750 * 100vw));
    padding: min(calc(1px * 750 * (0.046)), 4.6vw) min(calc(1px * 750 * (0.05)), 5vw) min(calc(1px * 750 * (0.0345)), 3.45vw) min(calc(1px * 750 * (0.13)), 13vw);
    line-height: 1.5;
  }
  .p-faq-item-q__text::before {
    font-size: min(36px, calc(36 / 750 * 100vw));
    width: min(52px, calc(52 / 750 * 100vw));
    height: min(52px, calc(52 / 750 * 100vw));
    top: 0;
    margin-top: 8vw;
    padding-left: 1px;
  }
  .p-faq-item-a__text {
    font-size: min(27px, calc(27 / 750 * 100vw));
    padding-left: min(calc(1px * 750 * (0.13)), 13vw);
    margin-bottom: min(calc(1px * 750 * (0.044)), 4.4vw);
    line-height: 1.5;
  }
  .p-faq-item-a__text::before {
    font-size: min(36px, calc(36 / 750 * 100vw));
    width: min(52px, calc(52 / 750 * 100vw));
    height: min(52px, calc(52 / 750 * 100vw));
    top: 0;
    margin-top: 3vw;
    padding-left: 1px;
  }
}
/* * * FAQ /E * * */
/* * * サービスご利用の流れ * * */
.p-flow {
  background-color: #E3F3F7;
  padding-top: min(calc(1px * 1440 * (0.057)), 5.7vw);
  padding-bottom: min(calc(1px * 1440 * (0.046)), 4.6vw);
}
.p-flow__text {
  font-size: min(24px, calc(24 / 1440 * 100vw));
  font-weight: 500;
  text-align: center;
  margin-top: min(calc(1px * 1440 * (0.05)), 5vw);
}
.p-flow__arrow {
  width: min(61px, calc(61 / 1440 * 100vw));
  margin: min(calc(1px * 1440 * (0.015)), 1.5vw) auto;
}

.p-flow-contents {
  margin-top: min(calc(1px * 1440 * (0.035)), 3.5vw);
}

.p-flow-item {
  background-color: #fff;
  border: min(4px, calc(4 / 1440 * 100vw)) solid #2854AD;
  border-radius: min(16px, calc(16 / 1440 * 100vw));
  padding: min(calc(1px * 1440 * (0.022)), 2.2vw) min(calc(1px * 1440 * (0.01)), 1vw) min(calc(1px * 1440 * (0.015)), 1.5vw) min(calc(1px * 1440 * (0.02)), 2vw);
  position: relative;
}
.p-flow-item-step {
  border-radius: 100%;
  width: min(88px, calc(88 / 1440 * 100vw));
  height: min(88px, calc(88 / 1440 * 100vw));
  background-color: #2854AD;
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(-50%, -50%);
}
.p-flow-item-step__text {
  color: #fff;
  text-align: center;
  font-family: "Roboto", sans-serif;
  font-weight: 600;
  margin-top: min(calc(1px * 1440 * (0.005)), 0.5vw);
}
.p-flow-item-step__text .large {
  font-size: min(48px, calc(48 / 1440 * 100vw));
}
.p-flow-item-info {
  display: grid;
  grid-template-columns: 24% 76%;
}
.p-flow-item-info-illust {
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-flow-item-info-illust__image {
  width: 60%;
}
.p-flow-item-info-text {
  height: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.p-flow-item-info-text__title {
  color: #0D2E63;
  font-size: min(24px, calc(24 / 1440 * 100vw));
  font-weight: bold;
  margin-bottom: min(calc(1px * 1440 * (0.015)), 1.5vw);
}
.p-flow-item-info-text__text {
  font-weight: 500;
  line-height: 1.5em;
}

@media (max-width: 750px) {
  .p-flow {
    padding: 12vw 0;
  }
  .p-flow__text {
    font-size: min(31.2px, calc(31.2 / 750 * 100vw));
    margin: 5vw 0;
  }
  .p-flow__arrow {
    width: min(100px, calc(100 / 750 * 100vw));
  }
  .p-flow-item {
    border: min(4px, calc(4 / 750 * 100vw)) solid #2854AD;
    border-radius: min(16px, calc(16 / 750 * 100vw));
    margin-top: 12vw;
  }
  .p-flow-item-step {
    width: min(132px, calc(132 / 750 * 100vw));
    height: min(132px, calc(132 / 750 * 100vw));
    left: 50%;
    top: 0%;
  }
  .p-flow-item-step__text .large {
    font-size: min(48px, calc(48 / 750 * 100vw));
  }
  .p-flow-item-info {
    display: block;
  }
  .p-flow-item-info-illust__image {
    width: 30%;
    margin: 12vw 0 3vw;
  }
  .p-flow-item-info-text {
    padding: 4vw;
  }
  .p-flow-item-info-text__title {
    font-size: min(36px, calc(36 / 750 * 100vw));
    padding-bottom: 2vw;
  }
  .p-flow-item-info-text__text {
    font-size: min(27px, calc(27 / 750 * 100vw));
  }
}
/* * * サービスご利用の流れ /E * * */
/* * * フッター * * */
.p-footer {
  background-color: #0D2E63;
  margin-top: -2px;
  padding-top: min(calc(1px * 1440 * (0.014)), 1.4vw);
  padding-bottom: min(calc(1px * 1440 * (0.02)), 2vw);
}
.p-footer__copy {
  font-size: min(16px, calc(16 / 1440 * 100vw));
  display: block;
  color: #fff;
  text-align: center;
}

.p-footer-nav {
  padding-bottom: min(calc(1px * 1440 * (0.047)), 4.7vw);
}
.p-footer-nav-list {
  font-weight: 500;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-footer-nav-list li {
  margin: 0 min(calc(1px * 1440 * (0.028)), 2.8vw);
}

@media (max-width: 750px) {
  .p-footer__copy {
    font-size: min(16px, calc(16 / 750 * 100vw));
  }
  .p-footer-nav {
    padding-top: 5vw;
  }
  .p-footer-nav-list {
    display: block;
  }
  .p-footer-nav-list li {
    margin-bottom: 7vw;
    text-align: center;
    font-size: min(27px, calc(27 / 750 * 100vw));
  }
  .p-footer-nav-list li a {
    border-bottom: min(2px, calc(2 / 750 * 100vw)) solid #fff;
  }
}
/* * * フッター /E * * */

/* * * thanksページ * * */
.p-thanks {
  background-color: #FAFFFD;
  padding-top: min(calc(1px * 1440 * (0.098)), 9.8vw);
  padding-bottom: min(calc(1px * 1440 * (0.125)), 12.5vw);
  min-height: 80vh;
  display: flex;
  align-items: center;
}

.p-thanks-container {
  text-align: center;
  background-color: #fff;
  border-radius: min(16px, calc(16 / 1440 * 100vw));
  box-shadow: 0 0 min(20px, calc(20 / 1440 * 100vw)) rgba(0, 0, 0, 0.1);
  padding: min(calc(1px * 1440 * (0.056)), 5.6vw) min(calc(1px * 1440 * (0.042)), 4.2vw);
  max-width: min(800px, calc(800 / 1440 * 100vw));
  margin: 0 auto;
}

.p-thanks-title {
  font-size: min(36px, calc(36 / 1440 * 100vw));
  font-weight: bold;
  color: #0D2E63;
  line-height: 1.4em;
}

.p-thanks-title__main {
  display: block;
  margin-bottom: min(calc(1px * 1440 * (0.014)), 1.4vw);
  font-size: min(40px, calc(40 / 1440 * 100vw));
}

.p-thanks-title__sub {
  font-size: min(24px, calc(24 / 1440 * 100vw));
  color: #2854AD;
  font-weight: 500;
}

@media (max-width: 750px) {
  .p-thanks {
    padding-top: min(calc(1px * 750 * (0.16)), 16vw);
    padding-bottom: min(calc(1px * 750 * (0.16)), 16vw);
    min-height: 70vh;
  }

  .p-thanks-container {
    border-radius: 0;
    box-shadow: none;
    padding: min(calc(1px * 750 * (0.08)), 8vw) min(calc(1px * 750 * (0.053)), 5.3vw);
    margin: 0;
    max-width: 100%;
    width: 100%;
  }

  .p-thanks-title {
    font-size: min(40px, calc(40 / 750 * 100vw));
    line-height: 1.4em;
  }

  .p-thanks-title__main {
    margin-bottom: min(calc(1px * 750 * (0.027)), 2.7vw);
    font-size: min(45px, calc(45 / 750 * 100vw));
  }

  .p-thanks-title__sub {
    font-size: min(32px, calc(32 / 750 * 100vw));
  }
}
/* * * thanksページ /E * * */






@charset "UTF-8";

/* ============================================
   No.1 ファクタリングLP 統合デザインCSS（行間調整版）
   ベース: #2854AD / アクセント: #B7372A / 文字: 黒ベース
============================================ */

/* はみ出し防止設定 */
.factoring-lp-integrated-section,
.factoring-lp-integrated-section *,
.factoring-lp-integrated-section *::before,
.factoring-lp-integrated-section *::after {
  box-sizing: border-box !important;
}

:root {
  --lp-base-color: #2854AD;    
  --lp-accent-color: #B7372A;  
  --lp-text-black: #333333;    
  --lp-bg-light: #F4F7FB;      
  --lp-border: #E2E8F0;        
}

.factoring-lp-integrated-section {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
  font-family: "Noto Sans JP", sans-serif;
  color: var(--lp-text-black);
  overflow: hidden;
  line-height: 1.8; /* ★変更: 全体の行間を広げ、読みやすさを向上 */
}

.factoring-comparison-wrapper,
.switch-results-wrapper,
.company-profile-wrapper {
  margin: 80px auto;
  padding: 0 16px;
}

/* セクション見出し */
.section-header { text-align: center; margin-bottom: 40px; }
.eng-title { color: var(--lp-base-color); font-weight: bold; font-size: 14px; letter-spacing: 0.1em; line-height: 1.5; }
.comparison-title, .section-title { font-size: 28px; font-weight: 800; color: var(--lp-text-black); margin: 10px 0; line-height: 1.4; }
.section-subtitle { font-size: 16px; color: #666; font-weight: bold; line-height: 1.6; }

/* --------------------------------------------
   1. 比較表デザイン
-------------------------------------------- */
.table-responsive { width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; padding: 10px 0; }
.modern-comparison-table { width: 100%; min-width: 760px; border-collapse: separate; border-spacing: 0; background: #fff; }

.modern-comparison-table th, .modern-comparison-table td { padding: 20px; border-bottom: 1px solid var(--lp-border); vertical-align: middle; text-align: center; line-height: 1.6; /* ★変更: 表内の行間調整 */ }
.modern-comparison-table thead th { background: #F8FAFC; color: var(--lp-text-black); border-top: 1px solid var(--lp-border); border-bottom: 2px solid var(--lp-border); }

/* 項目名列 */
.modern-comparison-table .item-name { width: 20%; background: #F8FAFC; font-weight: bold; border-left: 1px solid var(--lp-border); border-right: 1px solid var(--lp-border); }

/* No.1列の強調 */
.modern-comparison-table .col-highlight { width: 34%; border-left: 3px solid var(--lp-base-color); border-right: 3px solid var(--lp-base-color); background: var(--lp-bg-light); }
.modern-comparison-table thead th.col-highlight { background: var(--lp-base-color); color: #fff; border: none; font-size: 1.2em; border-radius: 8px 8px 0 0; }
.modern-comparison-table tr:last-child td.col-highlight { border-bottom: 3px solid var(--lp-base-color); border-radius: 0 0 8px 8px; }

/* 数字・記号 */
.em-num { font-size: 1.8em; font-weight: 900; color: var(--lp-base-color); line-height: 1; vertical-align: baseline; }
.em-accent-text { color: var(--lp-accent-color); font-weight: bold; } 

/* --------------------------------------------
   2. 乗り換え実績デザイン
-------------------------------------------- */
.results-card-container { display: flex; flex-wrap: wrap; gap: 24px; }
.result-card { width: calc(50% - 12px); border: 2px solid var(--lp-border); border-radius: 12px; padding: 24px; background: #fff; position: relative; }

.industry-label { color: var(--lp-base-color); font-weight: 800; font-size: 16px; display: block; margin-bottom: 15px; border-bottom: 1px solid var(--lp-border); padding-bottom: 10px; line-height: 1.6; }
.before-after-box { display: flex; align-items: center; justify-content: space-between; margin-bottom: 20px; }
.before-box, .after-box { flex: 1; text-align: center; }
.arrow-icon-big { font-size: 24px; color: var(--lp-base-color); opacity: 0.5; margin: 0 10px; }

.detail-row { display: flex; flex-direction: column; }
.detail-title { font-size: 12px; color: #666; margin-bottom: 5px; line-height: 1.5; }
.detail-value { font-size: 2.2em; font-weight: 900; line-height: 1; color: var(--lp-text-black); letter-spacing: -0.02em; }
.text-excellent { color: var(--lp-base-color); } 
.unit { font-size: 14px; font-weight: bold; margin-left: 2px; }

/* 実績バナー部分 */
.result-banner { text-align: center; font-weight: bold; font-size: 16px; padding: 12px; background: var(--lp-bg-light); border-radius: 6px; color: var(--lp-text-black); border: 1px solid var(--lp-base-color); line-height: 1.6; }
.em-price-impact { font-size: 1.6em; color: var(--lp-accent-color); margin: 0 4px; line-height: 1; } 

/* --------------------------------------------
   3. 会社概要デザイン
-------------------------------------------- */
.company-profile-inner { border: 1px solid var(--lp-border); border-radius: 12px; overflow: hidden; background: #fff; }
.profile-layout-container { display: flex; align-items: stretch; gap: 30px; padding: 30px; }
.hareza-photo-box { flex: 0 0 280px; position: relative; }
.hareza-tower-img-new { width: 100%; height: 100%; object-fit: cover; border-radius: 8px; }
.location-badge { position: absolute; bottom: 10px; left: 10px; right: 10px; background: rgba(51, 51, 51, 0.9); color: #fff; font-size: 12px; text-align: center; padding: 6px; border-radius: 4px; line-height: 1.4; }

.company-table-modern { width: 100%; border-collapse: collapse; }
.company-table-modern th, .company-table-modern td { padding: 15px; border-bottom: 1px solid var(--lp-border); vertical-align: top; line-height: 1.8; /* ★変更: 会社概要テキストの行間も広めに確保 */ }
.company-heading { width: 25%; background: #F8FAFC; font-weight: bold; text-align: center; color: var(--lp-text-black); }
.office-tag { background: var(--lp-base-color); color: #fff; font-size: 11px; font-weight: bold; padding: 2px 8px; border-radius: 3px; margin-bottom: 5px; display: inline-block; line-height: 1.4; }
.address-text-main { font-weight: bold; color: var(--lp-text-black); font-size: 1.1em; margin: 5px 0; line-height: 1.6; }
.hareza-note-text { font-size: 13px; color: var(--lp-base-color); font-weight: bold; background: var(--lp-bg-light); padding: 10px; border-radius: 4px; margin: 10px 0; line-height: 1.8; /* ★変更: 注釈の行間 */ border-left: 3px solid var(--lp-base-color); }
.branches-text { font-size: 12px; color: #666; border-top: 1px dashed var(--lp-border); padding-top: 10px; line-height: 1.7; }

/* レスポンシブ */
@media screen and (max-width: 768px) {
  .result-card { width: 100%; }
  .profile-layout-container { flex-direction: column; padding: 15px; }
  .company-table-modern th, .company-table-modern td { display: block; width: 100%; text-align: left; font-size: 13px; }
  .company-heading { background: transparent; border-bottom: none; color: var(--lp-base-color); padding-bottom: 0; }
}

/* --------------------------------------------
   0. トップアピール（あまり債権買取）デザイン
-------------------------------------------- */
.full-purchase-wrapper {
  margin: 40px auto 80px;
  padding: 0 16px;
}

.appeal-box {
  background: #fff;
  border: 3px solid var(--lp-base-color);
  border-radius: 12px;
  padding: 40px;
  text-align: center;
  position: relative;
  box-shadow: 0 8px 25px rgba(40, 84, 173, 0.1);
}

/* バッジ（他社をご利用中の〜） */
.appeal-badge {
  display: inline-block;
  background: var(--lp-base-color);
  color: #fff;
  font-weight: bold;
  font-size: 14px;
  padding: 8px 24px;
  border-radius: 30px;
  position: absolute;
  top: -20px;
  left: 50%;
  transform: translateX(-50%);
  letter-spacing: 0.05em;
}

/* メインタイトル */
.appeal-title {
  font-size: 28px;
  font-weight: 900;
  color: var(--lp-text-black);
  line-height: 1.5;
  margin: 10px 0 20px;
}
.text-accent {
  color: var(--lp-accent-color);
  font-size: 1.2em;
  border-bottom: 3px solid var(--lp-accent-color);
}
.sp-br { display: none; } /* PCでは改行しない */

/* リード文 */
.appeal-lead {
  font-size: 16px;
  font-weight: bold;
  color: #555;
  line-height: 1.8;
  margin-bottom: 30px;
}
.text-base-bold {
  color: var(--lp-base-color);
  font-size: 1.1em;
}

/* 比較カードエリア（Flexbox） */
.appeal-solution-flex {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  background: var(--lp-bg-light);
  padding: 30px 20px;
  border-radius: 8px;
}

.appeal-arrow {
  font-size: 32px;
  color: var(--lp-base-color);
  opacity: 0.4;
}

/* カード共通 */
.solution-card {
  flex: 1;
  background: #fff;
  border-radius: 8px;
  overflow: hidden;
  box-shadow: 0 4px 10px rgba(0,0,0,0.05);
}
.card-head {
  padding: 12px;
  font-weight: bold;
  font-size: 15px;
  color: #fff;
  background: #718096; /* デフォルト（他社）はグレー */
}
.card-head.bg-base {
  background: var(--lp-base-color);
  font-size: 16px;
  letter-spacing: 0.05em;
}
.card-body {
  padding: 20px;
}
.card-desc {
  font-size: 15px;
  font-weight: bold;
  line-height: 1.6;
  margin-bottom: 15px;
  height: 3em; /* 高さを揃える */
}

/* 視覚的なバー（メーター） */
.visual-bar-wrapper {
  display: flex;
  height: 60px;
  border-radius: 6px;
  overflow: hidden;
  border: 1px solid var(--lp-border);
}
.v-bar {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: bold;
  color: #fff;
  text-align: center;
  line-height: 1.3;
}
.v-bar .small-text { font-size: 10px; font-weight: normal; }

.bought-other { width: 50%; background: #A0AEC0; } /* 他社の買取分（グレー） */
.leftover { width: 50%; background: #EDF2F7; color: #718096; } /* あまり（薄いグレー） */
.bought-no1 { width: 50%; background: var(--lp-accent-color); font-size: 14px; } /* No.1の買取分（アクセント赤） */


/* レスポンシブ（スマホ対応） */
@media screen and (max-width: 768px) {
  .appeal-box { padding: 40px 20px 30px; }
  .appeal-title { font-size: 22px; }
  .sp-br { display: block; } /* スマホでは改行する */
  .appeal-lead { font-size: 14px; text-align: left; }
  
  .appeal-solution-flex {
    flex-direction: column;
    padding: 20px 15px;
  }
  .appeal-arrow {
    transform: rotate(90deg);
    margin: 10px 0;
  }
  .solution-card { width: 100%; }
  .card-desc { height: auto; }

  .p-header-cta-mail {
    width: 110px;
    height: 35px;
    padding: 0 7px;
  }

  .p-header-cta-mail__text {
    font-size: 11px;
  }

  .p-header-cta-mail__icon {
    width: 13px;
  }

  .p-header-cta-mail__arrow {
    width: 7px;
  }
}