@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Rajdhani:wght@700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Caveat&family=Noto+Sans+JP&family=Noto+Serif+JP:wght@700&display=swap");
:root {
  --color-white: #fff;
  --color-black: #422a2a;
  --color-blue-black: #1d4751;
  --color-gray: #f3f3f3;
  --color-gray2: #cccccc;
  --color-brown: #422a2a;
  --color-brown2: #e9e2d0;
  --color-brown3: #504d4d;
  --color-brown4: #75412e;
  --color-brown5: #181717;
  --color-blue: #4e8db4;
  --color-blue-dark: #618188;
  --color-blue-light: #dfe6e7;
  --color-orange: #ee7700;
  --color-orange-light: #fdf0e2;
  --color-orange2: #e68211;
  --color-yellow: #ffe655;
  --color-red: #b9262a;
  --color-green: #649800;
  --color-lightgreen: #ecff99;
  --color-green2: #e4edc5;
  --color-green3: #7db20d;
  --font-noto-sans: "Noto Sans JP", sans-serif;
  --font-noto-serif: "Noto Serif JP", sans-serif;
  --font-num: "Caveat", cursive;
}

body {
  overflow: hidden;
}

.lp-tatekae * {
  box-sizing: border-box;
  font-family: "Noto Sans JP", serif;
  line-height: 1.6;
  letter-spacing: 0.05em;
  color: var(--color-black);
}
.lp-tatekae a {
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .lp-tatekae a:hover {
    opacity: 0.8;
  }
}
.lp-tatekae em {
  font-weight: 700;
}
.lp-tatekae br {
  line-height: initial;
}
.lp-tatekae img {
  width: 100%;
  max-width: 100%;
  height: auto;
  vertical-align: top;
}
.lp-tatekae a:link {
  color: initial;
  text-decoration: none;
}
.lp-tatekae > section {
  overflow-x: clip;
}
@media (pointer: fine), (hover: hover) {
  .lp-tatekae a:where([href^="tel:"]) {
    pointer-events: none;
  }
}
.lp-tatekae .c-btn {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: clamp(20px, (20 + 27) / 2 / 768 * 100vw, 27px) clamp(15px, (15 + 30) / 2 / 768 * 100vw, 30px) clamp(20px, (20 + 27) / 2 / 768 * 100vw, 27px) clamp(30px, (30 + 90) / 2 / 768 * 100vw, 90px);
  margin-inline: auto;
  font-size: clamp(18px, (18 + 24) / 2 / 768 * 100vw, 24px);
  text-align: center;
  font-weight: 700;
  color: var(--color-white) !important;
  background-color: var(--color-orange);
  border-radius: 100vmax;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .c-btn {
    max-width: 450px;
    padding: clamp(20px, (20 + 27) / 2 / 768 * 100vw, 27px) clamp(15px, (15 + 30) / 2 / 768 * 100vw, 30px);
    font-size: clamp(11px, (11 + 24) / 2 / 768 * 100vw, 24px);
  }
}
.lp-tatekae .c-btn::after {
  content: "";
  display: inline-block;
  width: clamp(20px, (20 + 12) / 2 / 768 * 100vw, 12px);
  height: clamp(20px, (20 + 22) / 2 / 768 * 100vw, 22px);
  position: relative;
  right: -5px;
  background: url(../image/icon-arrow.svg) no-repeat center/contain;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .c-btn::after {
    position: absolute;
    top: 50%;
    right: clamp(15px, (15 + 20) / 2 / 768 * 100vw, 20px);
    transform: translateY(-50%);
  }
}
@media screen and (min-width: 768px) {
  .lp-tatekae .c-btn.small {
    max-width: 355px;
  }
}
.lp-tatekae .c-btn.large {
  padding: clamp(20px, (20 + 27) / 2 / 768 * 100vw, 27px) clamp(25px, (25 + 30) / 2 / 768 * 100vw, 30px) clamp(20px, (20 + 27) / 2 / 768 * 100vw, 27px) clamp(20px, (20 + 40) / 2 / 768 * 100vw, 40px);
  font-size: clamp(16px, (16 + 24) / 2 / 768 * 100vw, 24px);
}
@media screen and (min-width: 768px) {
  .lp-tatekae .c-btn.large {
    max-width: 580px;
    padding: clamp(20px, (20 + 27) / 2 / 768 * 100vw, 27px) clamp(15px, (15 + 30) / 2 / 768 * 100vw, 30px);
    font-size: clamp(10px, (10 + 20) / 2 / 768 * 100vw, 20px);
  }
}
.lp-tatekae .c-btn.back {
  width: 90%;
  justify-content: flex-start;
  gap: clamp(10px, (10 + 10) / 2 / 768 * 100vw, 10px);
  padding: clamp(20px, (20 + 27) / 2 / 768 * 100vw, 27px) clamp(20px, (20 + 40) / 2 / 768 * 100vw, 40px) clamp(20px, (20 + 27) / 2 / 768 * 100vw, 27px) clamp(40px, (40 + 80) / 2 / 768 * 100vw, 80px);
  background-color: var(--color-white);
  border: 2px solid var(--color-orange);
  color: var(--color-orange) !important;
  font-weight: 500;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .c-btn.back {
    width: 100%;
    justify-content: center;
    padding: clamp(20px, (20 + 27) / 2 / 768 * 100vw, 27px) clamp(15px, (15 + 30) / 2 / 768 * 100vw, 30px);
  }
}
.lp-tatekae .c-btn.back::before {
  content: "";
  position: absolute;
  top: 50%;
  left: clamp(15px, (15 + 30) / 2 / 768 * 100vw, 30px);
  transform: translateY(-50%);
  display: inline-block;
  width: clamp(8.5px, (8.5 + 12) / 2 / 768 * 100vw, 12px);
  height: clamp(15px, (15 + 22) / 2 / 768 * 100vw, 22px);
  background: url(../image/icon-arrow-orange.svg) no-repeat center/contain;
}
.lp-tatekae .c-btn.back::after {
  display: none;
}
.lp-tatekae .c-btn-wrap {
  display: grid;
  gap: clamp(10px, (10 + 20) / 2 / 768 * 100vw, 20px) clamp(15px, (15 + 30) / 2 / 768 * 100vw, 30px);
  padding: clamp(40px, (40 + 50) / 2 / 768 * 100vw, 50px) 10px;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .c-btn-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: clamp(20px, (20 + 50) / 2 / 768 * 100vw, 50px) clamp(10px, (10 + 90) / 2 / 768 * 100vw, 90px);
  }
}
.lp-tatekae .c-btn-wrap.back {
  padding: clamp(40px, (40 + 50) / 2 / 768 * 100vw, 50px) 0 0;
}
.lp-tatekae .u-color-blue {
  color: var(--color-blue);
}
.lp-tatekae .u-fw-regular {
  font-weight: 400;
}
.lp-tatekae .u-fw-bold {
  font-weight: 700;
}
.lp-tatekae .u-al-center {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .u-hide-md {
    display: none;
  }
}
@media (max-width: 767px) {
  .lp-tatekae .u-hide-sm {
    display: none;
  }
}
.lp-tatekae .u-mt-10 {
  margin-top: 10px;
}
.lp-tatekae section {
  padding: 70px 0;
}
@media screen and (min-width: 768px) {
  .lp-tatekae section {
    padding: 130px 0;
  }
}
.lp-tatekae .section__wrapper {
  position: relative;
  width: 100%;
  max-width: 1280px;
  margin-inline: auto;
}
.lp-tatekae .section__inner {
  width: 100%;
  max-width: calc(600px + clamp(20px, (20 + 40) / 2 / 768 * 100vw, 40px) * 2);
  margin-inline: auto;
  padding-inline: clamp(10px, (10 + 40) / 2 / 768 * 100vw, 40px);
}
@media screen and (min-width: 768px) {
  .lp-tatekae .section__inner {
    max-width: calc(1200px + clamp(20px, (20 + 40) / 2 / 768 * 100vw, 40px) * 2);
  }
}
.lp-tatekae .section__title {
  text-align: center;
}
.lp-tatekae .section__title-en {
  font-size: clamp(16px, (16 + 28) / 2 / 768 * 100vw, 28px);
  font-weight: 700;
  line-height: 1.1;
  text-transform: capitalize;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .section__title-en {
    line-height: 0.67;
  }
}
.lp-tatekae .section__title-en span {
  font-family: var(--font-num);
  font-size: clamp(18px, (18 + 28) / 2 / 768 * 100vw, 28px);
  font-weight: 700;
  line-height: 0.67;
  color: var(--color-blue);
  text-transform: lowercase;
}
.lp-tatekae .section__title-ja {
  margin-top: clamp(7.5px, (7.5 + 15) / 2 / 768 * 100vw, 15px);
  font-size: clamp(48px, (48 + 48) / 2 / 768 * 100vw, 48px);
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: 0.02em;
}
.lp-tatekae .section__dot-title {
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: 0;
  text-align: center;
  padding: clamp(15px, (15 + 20) / 2 / 768 * 100vw, 20px) clamp(10px, (10 + 20) / 2 / 768 * 100vw, 20px) clamp(15px, (15 + 20) / 2 / 768 * 100vw, 20px);
  border-radius: 5px;
  position: relative;
  z-index: 1;
}
.lp-tatekae .section__dot-title.steel::before {
  content: "";
  width: 100%;
  height: 100%;
  background: url(../image/h3-dot.svg) repeat top left/3px 3px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.lp-tatekae .section__dot-title-large {
  position: relative;
  display: block;
  font-size: clamp(24px, (24 + 32) / 2 / 768 * 100vw, 32px);
  color: var(--color-white);
  font-weight: 700;
}
.lp-tatekae .section__dot-title-small {
  position: relative;
  display: block;
  font-size: clamp(14px, (14 + 14) / 2 / 768 * 100vw, 14px);
  color: var(--color-white);
  font-weight: 500;
  margin-top: clamp(10px, (10 + 10) / 2 / 768 * 100vw, 10px);
}
.lp-tatekae .section__dot-title.wood {
  background: url(../image/h3-dot.svg) repeat top left/3px 3px;
  background-color: var(--color-orange-light);
  color: var(--color-brown);
  border-bottom: 5px solid var(--color-brown);
}
.lp-tatekae .section__dot-title.top {
  border-radius: 10px;
  border-bottom: none;
}
.lp-tatekae .section__dot-title.blue {
  background-image: linear-gradient(90deg, #153940, #1a8191);
}
.lp-tatekae .section__dot-title.green {
  background-image: linear-gradient(90deg, #45760d, #7fa71b);
}
.lp-tatekae .section__dot-title.red {
  background-image: linear-gradient(90deg, #ac2124, #e4822b);
}
.lp-tatekae .section__dot-title.dco {
  position: relative;
}
.lp-tatekae .section__dot-title.dco::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -75%);
  width: clamp(88.5px, (88.5 + 216) / 2 / 768 * 100vw, 216px);
  aspect-ratio: 216/102;
  background: url(../image/dco_lights.svg) repeat center/contain;
}
.lp-tatekae h4.section__dot-title {
  padding: clamp(15px, (15 + 38) / 2 / 768 * 100vw, 38px) clamp(5px, (5 + 10) / 2 / 768 * 100vw, 10px);
  font-size: clamp(18px, (18 + 28) / 2 / 768 * 100vw, 28px);
  line-height: 1.3888888889;
}
.lp-tatekae .mv {
  position: relative;
}
.lp-tatekae .mv .section__wrapper {
  min-height: 82vw;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .mv .section__wrapper {
    min-height: 44vw;
  }
}
.lp-tatekae .mv__image {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
.lp-tatekae .mv__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: top center;
  object-position: top center;
}
.lp-tatekae .mv__logo {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  text-align: center;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .mv__logo {
    text-align: left;
    bottom: 7vw;
    top: auto;
    left: 0;
    transform: none;
  }
}
.lp-tatekae .mv__logo img {
  width: 80%;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .mv__logo img {
    width: 45vw;
    max-width: 583px;
  }
}
.lp-tatekae .hope {
  background-color: #f9f6eb;
  padding-top: 0;
  position: relative;
}
.lp-tatekae .hope::before {
  content: "";
  background: url(../image/sp/bg_hope_sp.webp) no-repeat top/cover;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .hope {
    background: url(../image/bg_hope.webp) no-repeat top/cover;
    background-color: #f9f6eb;
  }
  .lp-tatekae .hope::before {
    content: none;
  }
}
.lp-tatekae .hope__arch {
  text-align: center;
  position: absolute;
  width: 100%;
  top: -20px;
  left: 0;
  right: 0;
  margin: auto;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .hope__arch {
    top: -5vw;
  }
}
.lp-tatekae .hope__arch-image {
  background-color: #f9f6eb;
  width: 100%;
  max-width: 320px;
  height: 320px;
  border-radius: 100%;
  padding: 15px;
  margin: auto;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .hope__arch-image {
    max-width: 640px;
    height: 640px;
    padding: 35px;
  }
}
.lp-tatekae .hope__arch img {
  width: 100%;
  max-width: 160px;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .hope__arch img {
    max-width: 318px;
  }
}
.lp-tatekae .hope__titlebox {
  text-align: center;
  position: relative;
  padding-top: 20px;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .hope__titlebox {
    margin-bottom: 30px;
    padding-top: 0;
  }
}
@media screen and (max-width: 1300px) and (min-width: 768px) {
  .lp-tatekae .hope__titlebox {
    padding-top: 2vw;
  }
}
.lp-tatekae .hope__titlebox-tl {
  font-size: clamp(20px, (20 + 46) / 2 / 768 * 100vw, 46px);
  font-weight: bold;
}
.lp-tatekae .hope__titlebox-tl span {
  font-size: clamp(28px, (28 + 60) / 2 / 768 * 100vw, 60px);
  font-weight: bold;
  color: var(--color-blue);
}
.lp-tatekae .hope__titlebox img {
  width: 100%;
  max-width: 100px;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .hope__titlebox img {
    max-width: 168px;
  }
}
.lp-tatekae .hope__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .hope__list {
    gap: 40px;
  }
}
.lp-tatekae .hope__list .item {
  position: relative;
  width: 100%;
  text-align: center;
  margin-top: clamp(130px, (130 + 150) / 2 / 768 * 100vw, 150px);
  background-color: var(--color-white);
  padding: clamp(70px, (70 + 100) / 2 / 768 * 100vw, 100px) 5px clamp(30px, (30 + 40) / 2 / 768 * 100vw, 40px);
  border: 2px solid var(--color-blue);
  border-radius: 10px;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .hope__list .item {
    width: 31%;
    min-width: 330px;
  }
}
.lp-tatekae .hope__list-icon {
  width: 100%;
  position: absolute;
  top: -10%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.lp-tatekae .hope__list-icon-tl {
  font-size: clamp(24px, (24 + 32) / 2 / 768 * 100vw, 32px);
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .hope__list-icon-tl {
    margin-bottom: 0;
  }
}
.lp-tatekae .hope__list-icon-tl span {
  color: var(--color-blue);
  position: relative;
  font-weight: bold;
}
.lp-tatekae .hope__list-icon-tl span::before {
  content: "";
  width: 36px;
  height: 2px;
  background-color: var(--color-blue);
  position: absolute;
  right: 105%;
  top: 10px;
  bottom: 0;
  margin: auto;
  border-radius: 10px;
  transform: rotate(45deg);
}
.lp-tatekae .hope__list-icon-tl span::after {
  content: "";
  width: 36px;
  height: 2px;
  background-color: var(--color-blue);
  position: absolute;
  left: 105%;
  top: 10px;
  bottom: 0;
  margin: auto;
  border-radius: 10px;
  transform: rotate(-45deg);
}
.lp-tatekae .hope__list-icon img {
  width: clamp(120px, (120 + 150) / 2 / 768 * 100vw, 150px);
}
.lp-tatekae .hope__list-textbox {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: clamp(18px, (18 + 20) / 2 / 768 * 100vw, 20px);
}
@media screen and (min-width: 768px) {
  .lp-tatekae .hope__list-textbox {
    height: 110px;
  }
}
.lp-tatekae .hope__list-textbox .border {
  background: linear-gradient(transparent 60%, var(--color-lightgreen) 60%, var(--color-lightgreen) 100%);
}
.lp-tatekae .consultation__wrap {
  border: 4px solid var(--color-orange);
  border-radius: clamp(10px, (10 + 20) / 2 / 768 * 100vw, 20px);
}
.lp-tatekae .consultation__wrap-inner {
  padding: clamp(30px, (30 + 50) / 2 / 768 * 100vw, 50px) clamp(10px, (10 + 88) / 2 / 768 * 100vw, 88px) 0;
  background-color: #fff6ea;
  border-radius: 0 0 15px 15px;
}
.lp-tatekae .consultation__wrap-inner-text {
  width: 100%;
  font-size: clamp(16px, (16 + 20) / 2 / 768 * 100vw, 20px);
  line-height: 2em;
  order: 2;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .consultation__wrap-inner-text {
    width: 60%;
    order: 1;
  }
}
.lp-tatekae .consultation__wrap-inner-image {
  width: 100%;
  order: 1;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .consultation__wrap-inner-image {
    width: 40%;
    order: 2;
  }
}
.lp-tatekae .consultation__wrap-inner-row {
  display: flex;
  align-items: center;
  gap: clamp(20px, (20 + 40) / 2 / 768 * 100vw, 40px);
  margin-bottom: clamp(30px, (30 + 50) / 2 / 768 * 100vw, 50px);
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .consultation__wrap-inner-row {
    flex-wrap: nowrap;
  }
}
.lp-tatekae .consultation__title {
  background-color: var(--color-orange);
  text-align: center;
  padding: clamp(10px, (10 + 40) / 2 / 768 * 100vw, 40px);
  font-size: clamp(24px, (24 + 46) / 2 / 768 * 100vw, 46px);
  border-radius: clamp(5px, (5 + 10) / 2 / 768 * 100vw, 10px) clamp(5px, (5 + 10) / 2 / 768 * 100vw, 10px) 0 0;
}
.lp-tatekae .consultation__title span {
  position: relative;
  font-weight: bold;
  color: var(--color-white);
}
.lp-tatekae .consultation__title span::before {
  content: "";
  width: 30%;
  height: 188%;
  position: absolute;
  left: 100%;
  bottom: 15px;
  background: url(../image/icon_consultation_free.svg) no-repeat center/cover;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .consultation__title span::before {
    width: 158px;
    height: 167px;
    bottom: 0;
  }
}
.lp-tatekae .consultation__list {
  display: grid;
  gap: 20px;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .consultation__list {
    grid-template-columns: repeat(3, 1fr);
  }
}
.lp-tatekae .consultation__list li {
  background-color: var(--color-white);
  border-radius: 10px;
  padding: 20px 5px;
}
.lp-tatekae .consultation__list-icon img {
  height: clamp(90px, (90 + 100) / 2 / 768 * 100vw, 100px);
}
.lp-tatekae .consultation__list-title {
  color: var(--color-orange);
  text-align: center;
  margin: 15px 0;
  font-weight: bold;
  font-size: clamp(18px, (18 + 24) / 2 / 768 * 100vw, 24px);
}
.lp-tatekae .consultation__list-text {
  text-align: center;
  font-size: clamp(12px, (12 + 14) / 2 / 768 * 100vw, 14px);
}
.lp-tatekae .reason {
  background-color: var(--color-blue);
  padding-top: 0;
}
.lp-tatekae .reason__head-image {
  display: block;
  height: 230px;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .reason__head-image {
    width: 100vw;
    margin-inline: calc(50% - 50vw);
    height: 400px;
    overflow: hidden;
  }
}
@media screen and (min-width: 768px) {
  .lp-tatekae .reason__head-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
}
.lp-tatekae .reason__inner {
  position: relative;
  padding: clamp(60px, (60 + 110) / 2 / 768 * 100vw, 110px) 0 clamp(30px, (30 + 88) / 2 / 768 * 100vw, 88px);
  border-radius: clamp(5px, (5 + 20) / 2 / 768 * 100vw, 20px);
  margin-top: clamp(-180px, (-140 + -180) / 2 / 768 * 100vw, -140px);
  background-color: var(--color-white);
  z-index: 2;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .reason__inner {
    padding: clamp(36px, (36 + 110) / 2 / 768 * 100vw, 110px) clamp(15px, (15 + 75) / 2 / 768 * 100vw, 75px) 88px;
  }
}
.lp-tatekae .reason__title {
  text-align: center;
  margin-bottom: clamp(40px, (40 + 80) / 2 / 768 * 100vw, 80px);
}
.lp-tatekae .reason__title-ja {
  line-height: 1;
  font-weight: bold;
  font-size: clamp(24px, (24 + 46) / 2 / 768 * 100vw, 46px);
  position: relative;
}
.lp-tatekae .reason__title-ja::before {
  content: "";
  width: clamp(80px, (80 + 163) / 2 / 768 * 100vw, 163px);
  height: clamp(30px, (30 + 66) / 2 / 768 * 100vw, 66px);
  position: absolute;
  left: 0;
  right: 0;
  bottom: 120%;
  margin: auto;
  background: url(../image/icon_reason_title.svg) no-repeat center/cover;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .reason__title-ja::before {
    bottom: 100%;
  }
}
.lp-tatekae .reason__title span {
  color: var(--color-blue);
  font-weight: bold;
  font-size: clamp(48px, (48 + 86) / 2 / 768 * 100vw, 86px);
  line-height: 1;
  position: relative;
  bottom: -3px;
}
.lp-tatekae .reason__wrap {
  margin-bottom: clamp(40px, (40 + 80) / 2 / 768 * 100vw, 80px);
}
.lp-tatekae .reason__wrap-numbox {
  background-color: var(--color-blue);
  padding: 10px clamp(10px, (10 + 40) / 2 / 768 * 100vw, 40px) 0;
  display: inline-block;
  position: relative;
  border-radius: clamp(5px, (5 + 30) / 2 / 768 * 100vw, 30px) 20px 0 0;
}
.lp-tatekae .reason__wrap-numbox::before {
  content: "";
  width: 100px;
  height: 0%;
  position: absolute;
  top: 4px;
  left: 95%;
  border-top: 13vh solid transparent;
  border-bottom: 0px solid transparent;
  border-left: 19vh solid var(--color-blue);
  z-index: -1;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .reason__wrap-numbox::before {
    left: 97%;
    border-top: 79px solid transparent;
    border-bottom: 0px solid transparent;
    border-left: 100px solid var(--color-blue);
  }
}
.lp-tatekae .reason__wrap-numbox .en {
  font-size: clamp(14px, (14 + 20) / 2 / 768 * 100vw, 20px);
  color: var(--color-yellow);
  font-weight: bold;
  line-height: 1;
  position: relative;
  top: -9px;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .reason__wrap-numbox .en {
    top: -5px;
    right: 10px;
  }
}
.lp-tatekae .reason__wrap-numbox .num {
  font-size: clamp(40px, (40 + 70) / 2 / 768 * 100vw, 70px);
  color: var(--color-yellow);
  font-weight: bold;
  line-height: 1;
}
.lp-tatekae .reason__wrap-titlebox {
  margin-bottom: clamp(25px, (25 + 60) / 2 / 768 * 100vw, 60px);
}
.lp-tatekae .reason__wrap-titlebox-title {
  background-color: var(--color-blue);
  color: var(--color-white);
  border-radius: 0;
  padding: 20px;
  text-align: center;
  font-weight: bold;
  font-size: clamp(24px, (24 + 32) / 2 / 768 * 100vw, 32px);
}
@media screen and (min-width: 768px) {
  .lp-tatekae .reason__wrap-titlebox-title {
    border-radius: 0 20px 10px 10px;
  }
}
.lp-tatekae .reason__wrap-row {
  display: flex;
  gap: clamp(20px, (20 + 40) / 2 / 768 * 100vw, 40px);
  padding: 0 15px;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .reason__wrap-row {
    padding: 0;
    flex-wrap: nowrap;
  }
}
.lp-tatekae .reason__wrap-row-text {
  width: 100%;
  font-size: clamp(16px, (16 + 18) / 2 / 768 * 100vw, 18px);
  line-height: 2em;
}
.lp-tatekae .reason__wrap-row-text .border {
  font-weight: bold;
  background: linear-gradient(transparent 60%, var(--color-lightgreen) 60%, var(--color-lightgreen) 100%);
}
.lp-tatekae .reason__wrap-row-text .note {
  display: block;
  font-size: clamp(12px, (12 + 14) / 2 / 768 * 100vw, 14px);
}
@media screen and (min-width: 768px) {
  .lp-tatekae .reason__wrap-row-text .note {
    margin-top: 20px;
  }
}
@media screen and (min-width: 768px) {
  .lp-tatekae .reason__wrap-row-text {
    width: 60%;
  }
}
.lp-tatekae .reason__wrap-row-image {
  width: 100%;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .reason__wrap-row-image {
    width: 40%;
  }
}
.lp-tatekae .reason__wrap:nth-child(odd) .reason__wrap-numbox {
  border-radius: 20px clamp(5px, (5 + 30) / 2 / 768 * 100vw, 30px) 0 0;
}
.lp-tatekae .reason__wrap:nth-child(odd) .reason__wrap-numbox::before {
  left: auto;
  top: 4px;
  right: 95%;
  border-top: 13vh solid transparent;
  border-bottom: 0px solid transparent;
  border-right: 19vh solid var(--color-blue);
  border-left: none;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .reason__wrap:nth-child(odd) .reason__wrap-numbox::before {
    right: 97%;
    border-top: 79px solid transparent;
    border-bottom: 0px solid transparent;
    border-right: 100px solid var(--color-blue);
  }
}
.lp-tatekae .reason__wrap:nth-child(odd) .reason__wrap-titlebox {
  text-align: right;
}
.lp-tatekae .reason__wrap:nth-child(odd) .reason__wrap-titlebox-title {
  border-radius: 0;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .reason__wrap:nth-child(odd) .reason__wrap-titlebox-title {
    border-radius: 20px 0px 10px 10px;
  }
}
.lp-tatekae .reason__wrap:nth-child(odd) .reason__wrap-row-text {
  order: 2;
}
.lp-tatekae .reason__wrap:nth-child(odd) .reason__wrap-row-image {
  order: 1;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .reason__wrap:nth-child(odd) .reason__wrap-row-text {
    order: 1;
  }
  .lp-tatekae .reason__wrap:nth-child(odd) .reason__wrap-row-image {
    order: 2;
  }
}
.lp-tatekae .reason__wrap:last-child {
  margin-bottom: 0;
}
.lp-tatekae .faq {
  position: relative;
  padding: 0px 0 clamp(60px, (60 + 130) / 2 / 768 * 100vw, 130px);
  background: url(../image/bg_faq.webp) repeat center/cover;
}
.lp-tatekae .faq__titlebox {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  margin-bottom: 25px;
  padding: clamp(70px, (70 + 120) / 2 / 768 * 100vw, 120px) 0 clamp(25px, (25 + 80) / 2 / 768 * 100vw, 80px);
  overflow: hidden;
  border-radius: 0 0 100% 100%;
  top: -60px;
  width: 120%;
  left: -10%;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .faq__titlebox {
    width: 104%;
    left: -2%;
    top: -50px;
    margin-bottom: 120px;
  }
}
.lp-tatekae .faq__titlebox::before {
  content: "";
  width: 100%;
  height: 100%;
  background-color: #2e4d81;
  position: absolute;
  top: 50px;
  left: 50%;
  transform: translate(-50%, 0%);
}
.lp-tatekae .faq__titlebox-tl {
  position: relative;
  color: var(--color-white);
  font-size: clamp(43px, (43 + 86) / 2 / 768 * 100vw, 86px);
  text-align: center;
  line-height: 1;
  font-weight: bold;
}
.lp-tatekae .faq__titlebox-tl span {
  color: var(--color-white);
  font-size: clamp(18px, (18 + 36) / 2 / 768 * 100vw, 36px);
  display: block;
  font-weight: bold;
}
.lp-tatekae .faq__titlebox-tl::after {
  content: "";
  width: 30vw;
  height: 32vw;
  background: url(../image/fig_faq.webp) no-repeat center/contain;
  position: absolute;
  bottom: -5.8vw;
  left: 145%;
  transform: translate(-50%, 0%);
}
@media (max-width: 375px) {
  .lp-tatekae .faq__titlebox-tl::after {
    height: 35vw;
    left: 140%;
  }
}
@media screen and (min-width: 768px) {
  .lp-tatekae .faq__titlebox-tl::after {
    width: 26vw;
    height: 239%;
    background-size: cover;
    left: 155%;
    max-width: 268px;
    bottom: -86px;
  }
}
.lp-tatekae .faq__wrap {
  position: relative;
  margin-bottom: clamp(75px, (75 + 150) / 2 / 768 * 100vw, 150px);
}
.lp-tatekae .faq__wrap .arrow {
  position: absolute;
  top: 50%;
  right: calc(15 / 375 * 100vw);
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(33 / 375 * 100vw);
  height: calc(33 / 375 * 100vw);
}
@media screen and (min-width: 768px) {
  .lp-tatekae .faq__wrap .arrow {
    right: 50px;
    width: 38px;
    height: 38px;
  }
}
.lp-tatekae .faq__wrap .arrow::before, .lp-tatekae .faq__wrap .arrow::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: block;
  width: calc(33 / 375 * 100vw);
  height: calc(4 / 375 * 100vw);
  background-color: var(--color-white);
  transition: transform 0.3s ease;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .faq__wrap .arrow::before, .lp-tatekae .faq__wrap .arrow::after {
    width: 38px;
    height: 4px;
  }
}
.lp-tatekae .faq__wrap .arrow::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.lp-tatekae .faq__wrap details {
  margin-bottom: 50px;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .faq__wrap details {
    margin-bottom: 250px;
  }
}
.lp-tatekae .faq__wrap details[open] {
  margin-bottom: 0;
}
.lp-tatekae .faq__wrap details[open] .arrow::after {
  transform: translate(-50%, -50%) rotate(0);
}
.lp-tatekae .faq__wrap:last-child {
  margin-bottom: 0;
}
.lp-tatekae .faq__wrap:last-child details {
  margin-bottom: 10px;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .faq__wrap:last-child details {
    margin-bottom: 90px;
  }
}
.lp-tatekae .faq__wrap:last-child details[open] {
  margin-bottom: 0;
}
.lp-tatekae .faq__wrap-titlebox {
  width: 100%;
  display: flex;
  align-items: center;
  position: relative;
  z-index: 1;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .faq__wrap-titlebox {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate(-50%, -50%);
  }
}
.lp-tatekae .faq__wrap-titlebox-title {
  width: 100%;
  background-color: #2e4d81;
  color: var(--color-white);
  font-size: clamp(20px, (20 + 32) / 2 / 768 * 100vw, 32px);
  border: clamp(5px, (5 + 10) / 2 / 768 * 100vw, 10px) solid var(--color-white);
  border-radius: 20px;
  padding: 55px 20px 20px;
  display: flex;
  align-items: center;
  text-align: left;
  font-weight: bold;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .faq__wrap-titlebox-title {
    padding: 15px 0px 15px 190px;
    min-height: 180px;
    font-size: min(2.35vw, 34px);
    text-align: left;
    border-radius: 100px;
    justify-content: flex-start;
    white-space: nowrap;
  }
}
.lp-tatekae .faq__wrap-image {
  width: 100px;
  position: absolute;
  top: 0%;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media screen and (min-width: 768px) {
  .lp-tatekae .faq__wrap-image {
    width: 180px;
    top: 50%;
    left: -5px;
    transform: translate(0%, -50%);
  }
}
.lp-tatekae .faq__wrap-row {
  display: grid;
  background-color: var(--color-white);
  gap: clamp(20px, (20 + 40) / 2 / 768 * 100vw, 40px);
  padding: 35px 15px 20px;
  border-radius: 0 0 20px 20px;
  position: relative;
  top: -20px;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .faq__wrap-row {
    border-radius: 0 0 20px 20px;
    padding: 130px 80px 50px;
    grid-template-columns: repeat(2, 1fr);
    top: 0;
  }
}
.lp-tatekae .faq__wrap-row-textbox {
  order: 2;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .faq__wrap-row-textbox {
    order: 1;
  }
}
.lp-tatekae .faq__wrap-row-image {
  order: 1;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .faq__wrap-row-image {
    order: 2;
  }
}
.lp-tatekae .faq__wrap-row-text {
  line-height: 2em;
}
.lp-tatekae .faq__wrap-row-list {
  background-color: #eff5ff;
  padding: 20px;
  border-radius: 10px;
  margin: 20px 0;
}
.lp-tatekae .faq__wrap-row-list li {
  position: relative;
  font-size: clamp(16px, (16 + 18) / 2 / 768 * 100vw, 18px);
  padding-left: 25px;
  margin-bottom: 10px;
}
.lp-tatekae .faq__wrap-row-list li:last-child {
  margin-bottom: 0;
}
.lp-tatekae .faq__wrap-row-list li span {
  display: block;
  font-size: clamp(12px, (12 + 14) / 2 / 768 * 100vw, 14px);
}
.lp-tatekae .faq__wrap-row-list li::before {
  content: "";
  width: 15px;
  height: 15px;
  border-radius: 100%;
  background-color: #2e4d81;
  position: absolute;
  left: 0;
  top: clamp(6px, (6 + 8) / 2 / 768 * 100vw, 8px);
}
.lp-tatekae .faq__wrap:nth-child(even) .faq__wrap-row-textbox {
  order: 2;
}
.lp-tatekae .faq__wrap:nth-child(even) .faq__wrap-row-image {
  order: 1;
}
.lp-tatekae .case {
  background: url(../image/bg_case.webp) no-repeat top/cover;
  padding: 0;
}
.lp-tatekae .case .section__wrapper {
  position: relative;
  top: -70px;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .case .section__wrapper {
    top: -150px;
  }
}
.lp-tatekae .case__titlebox {
  text-align: center;
  background-color: rgba(33, 18, 1, 0.5);
  padding: clamp(30px, (30 + 50) / 2 / 768 * 100vw, 50px) 0 clamp(50px, (50 + 100) / 2 / 768 * 100vw, 100px);
}
.lp-tatekae .case__titlebox-tl {
  font-size: clamp(24px, (24 + 46) / 2 / 768 * 100vw, 46px);
  font-weight: bold;
  color: var(--color-white);
}
.lp-tatekae .case__titlebox img {
  width: 100%;
  max-width: clamp(230px, (230 + 360) / 2 / 768 * 100vw, 360px);
}
@media screen and (min-width: 768px) {
  .lp-tatekae .case__titlebox img {
    margin-bottom: 10px;
  }
}
.lp-tatekae .case__wrap {
  margin-top: clamp(50px, (50 + 100) / 2 / 768 * 100vw, 100px);
}
.lp-tatekae .case__wrap-titlebox {
  position: relative;
  background-color: #4f3000;
  padding: clamp(25px, (25 + 25) / 2 / 768 * 100vw, 25px) clamp(10px, (10 + 25) / 2 / 768 * 100vw, 25px) clamp(15px, (15 + 25) / 2 / 768 * 100vw, 25px);
  text-align: center;
  border-radius: 10px 10px 0 0;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .case__wrap-titlebox {
    border-radius: 20px 20px 0 0;
  }
}
.lp-tatekae .case__wrap-titlebox-title {
  font-size: clamp(19.5px, (19.5 + 32) / 2 / 768 * 100vw, 32px);
  color: var(--color-white);
  font-weight: bold;
}
.lp-tatekae .case__wrap-titlebox img {
  width: 25vw;
  position: absolute;
  left: 0px;
  top: -20px;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .case__wrap-titlebox img {
    max-width: 250px;
    width: 23vw;
    left: -30px;
    top: -20px;
  }
}
.lp-tatekae .case__wrap-row {
  padding: clamp(20px, (20 + 40) / 2 / 768 * 100vw, 40px) clamp(20px, (20 + 40) / 2 / 768 * 100vw, 40px) 0;
  background-color: var(--color-white);
}
.lp-tatekae .case__wrap-row-image {
  max-width: 640px;
  margin: auto;
  display: block;
}
.lp-tatekae .case__wrap-row-textbox {
  max-width: 850px;
  margin: clamp(20px, (20 + 30) / 2 / 768 * 100vw, 30px) auto 0;
}
.lp-tatekae .case__wrap-row-text {
  line-height: 2em;
}
.lp-tatekae .case__wrap .c-btn-wrap {
  background-color: var(--color-white);
  border-radius: 0 0 10px 10px;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .case__wrap .c-btn-wrap {
    border-radius: 0 0 20px 20px;
  }
}
.lp-tatekae .campaign {
  background-color: #ecf4d9;
  padding: clamp(30px, (30 + 80) / 2 / 768 * 100vw, 80px) 0 clamp(70px, (70 + 130) / 2 / 768 * 100vw, 130px);
}
.lp-tatekae .campaign__text {
  margin-top: clamp(20px, (20 + 30) / 2 / 768 * 100vw, 30px);
  text-align: center;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .campaign__text {
    font-size: 18px;
    line-height: 1.8;
    letter-spacing: 0;
  }
}
.lp-tatekae .campaign__model {
  position: relative;
  display: block;
  overflow: initial;
  transition: opacity 0.3s ease;
}
@media (any-hover: hover) {
  .lp-tatekae .campaign__model:hover {
    opacity: 0.8;
  }
}
.lp-tatekae .campaign__model-ribbon {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
  z-index: 2;
  transform: translateY(-55%);
}
.lp-tatekae .campaign__model-ribbon img {
  width: 100%;
  max-width: 994px;
}
.lp-tatekae .campaign__model-wrap {
  position: relative;
  display: block;
  margin-top: clamp(75px, (75 + 180) / 2 / 768 * 100vw, 180px);
  border-radius: 10px;
  background-color: var(--color-white);
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.25);
  overflow: hidden;
}
.lp-tatekae .campaign__model-inner {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .campaign__model-inner {
    flex-direction: row;
  }
}
.lp-tatekae .campaign__model-image {
  width: 100%;
  height: 50vw;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .campaign__model-image {
    width: calc(408 / 1200 * 100%);
    max-width: 408px;
    height: auto;
  }
}
.lp-tatekae .campaign__model-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: left center;
}
.lp-tatekae .campaign__model-detail {
  width: 100%;
  padding: 20px 20px 40px;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .campaign__model-detail {
    width: 692px;
    padding: 70px clamp(5px, (5 + 50) / 2 / 768 * 100vw, 50px) 30px;
  }
}
.lp-tatekae .campaign__model-special {
  display: inline-block;
  position: relative;
  padding: 0.2em 2em 0.2em 2.5em;
  border-radius: 5px 5px 0 0;
  background-color: var(--color-orange);
  color: var(--color-white);
  font-size: 125%;
  font-weight: 700;
  letter-spacing: 0.5em;
  text-align: center;
}
.lp-tatekae .campaign__model-special::after {
  content: "";
  position: absolute;
  bottom: -9px;
  left: 50%;
  width: 10px;
  height: 10px;
  transform: translateX(-50%);
  background-color: var(--color-orange);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.lp-tatekae .campaign__model-benefit {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  width: 110%;
  margin-left: -5%;
  padding: 0.5em 0 30px;
  line-height: 1.2;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .campaign__model-benefit {
    justify-content: flex-start;
    margin-left: 0;
  }
}
.lp-tatekae .campaign__model-benefit-01 {
  display: inline-block;
  font-size: 42px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1;
}
.lp-tatekae .campaign__model-benefit-01 .middle {
  font-size: 30px;
  font-weight: 700;
  letter-spacing: 0;
}
.lp-tatekae .campaign__model-benefit-01 .small {
  display: block;
  font-size: 18px;
  font-weight: 700;
  letter-spacing: 0.03em;
}
.lp-tatekae .campaign__model-benefit-02 {
  font-feature-settings: "palt";
  display: inline-block;
  color: var(--color-orange);
  font-size: 50px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.2;
}
@media screen and (min-width: 640px) {
  .lp-tatekae .campaign__model-benefit-02 {
    font-size: 55px;
  }
}
.lp-tatekae .campaign__model-benefit-03 {
  display: inline-block;
  font-size: 42px;
  font-weight: 700;
  letter-spacing: 0;
}
.lp-tatekae .campaign__model-criteria {
  position: relative;
  display: block;
  width: fit-content;
  padding: 0.2em 1em 0.2em 1em;
  border-radius: 5px 5px 0 0;
  background-color: var(--color-orange);
  color: var(--color-white);
  font-weight: 700;
  letter-spacing: 0.05em;
  text-align: center;
}
.lp-tatekae .campaign__model-criteria::after {
  content: "";
  position: absolute;
  bottom: -9px;
  left: 50%;
  width: 10px;
  height: 10px;
  transform: translateX(-50%);
  background-color: var(--color-orange);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.lp-tatekae .campaign__model-text {
  padding: 0.75em;
  border-radius: 0 5px 5px 5px;
  background-color: #f5f5f5;
  font-family: var(--font-noto-sans);
  font-size: 14px;
}
.lp-tatekae .campaign__model-btn {
  padding-top: 20px;
  text-align: center;
}
.lp-tatekae .campaign__model-btn img {
  width: 100%;
  max-width: 525px;
}
.lp-tatekae .campaign__box {
  margin-top: clamp(30px, (30 + 50) / 2 / 768 * 100vw, 50px);
  background-color: var(--color-white);
  border: 4px solid var(--color-green3);
  border-radius: 10px;
}
.lp-tatekae .campaign__box-inner {
  padding: clamp(30px, (30 + 60) / 2 / 768 * 100vw, 60px) clamp(15px, (15 + 30) / 2 / 768 * 100vw, 30px);
}
@media screen and (min-width: 768px) {
  .lp-tatekae .campaign__box-inner {
    padding: clamp(30px, (30 + 60) / 2 / 768 * 100vw, 60px) clamp(25px, (25 + 50) / 2 / 768 * 100vw, 50px);
  }
}
.lp-tatekae .campaign__box-title {
  padding: clamp(15px, (15 + 30) / 2 / 768 * 100vw, 30px) clamp(10px, (10 + 20) / 2 / 768 * 100vw, 20px);
  font-size: clamp(20px, (20 + 40) / 2 / 768 * 100vw, 40px);
  font-weight: 700;
  text-align: center;
  color: var(--color-white);
  background-color: var(--color-green3);
}
.lp-tatekae .campaign__box-text {
  margin-top: clamp(20px, (20 + 30) / 2 / 768 * 100vw, 30px);
}
@media screen and (min-width: 768px) {
  .lp-tatekae .campaign__box-text {
    line-height: 1.8;
  }
}
.lp-tatekae .campaign__box-col {
  display: grid;
  gap: clamp(50px, (50 + 100) / 2 / 768 * 100vw, 100px) clamp(10px, (10 + 40) / 2 / 768 * 100vw, 40px);
}
@media screen and (min-width: 768px) {
  .lp-tatekae .campaign__box-col {
    grid-template-columns: repeat(2, 1fr);
    max-width: 850px;
    margin: auto;
  }
}
.lp-tatekae .campaign__box-col-title {
  margin-top: clamp(15px, (15 + 30) / 2 / 768 * 100vw, 30px);
  font-size: clamp(20px, (20 + 21) / 2 / 768 * 100vw, 21px);
  font-weight: 700;
  letter-spacing: 0;
  text-align: center;
}
.lp-tatekae .campaign__box-col-text {
  margin-top: clamp(10px, (10 + 10) / 2 / 768 * 100vw, 10px);
  letter-spacing: 0;
}
.lp-tatekae .campaign__box .c-btn-wrap {
  padding-bottom: 0;
}
.lp-tatekae #campaign {
  padding: clamp(30px, (30 + 80) / 2 / 768 * 100vw, 80px) 0 clamp(50px, (50 + 50) / 2 / 768 * 100vw, 50px);
}
.lp-tatekae .campaign-btn {
  position: fixed;
  right: 5px;
  bottom: 60px;
  display: block;
  z-index: 1000;
  transition: opacity 0.3s ease;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .campaign-btn {
    bottom: 20px;
  }
}
@media (any-hover: hover) {
  .lp-tatekae .campaign-btn:hover {
    opacity: 0.8;
  }
}
.lp-tatekae .campaign-btn-image {
  width: 150px;
}
@media screen and (min-width: 768px) {
  .lp-tatekae .campaign-btn-image {
    width: 320px;
  }
}
.lp-tatekae .campaign-btn-close {
  position: absolute;
  top: 20px;
  right: 10px;
  width: 23px;
}