/** breakPoint **/
:root {
  --color-bg-product-primary: var(--brand-color-bakuraku-primary);
  --color-bg-product-medium: var(--brand-color-bakuraku-medium);
  --color-bg-product-light: var(--brand-color-bakuraku-light);
  --color-bg-product-dark: var(--brand-color-bakuraku-dark);
  --color-bg-product-medium-light: var(--brand-color-bakuraku-light);
  --color-text-product-primary: var(--brand-color-bakuraku-primary);
  --color-text-product-accent: var(--brand-color-bakuraku-accent);
  --color-button-product-primary: var(--brand-color-bakuraku-primary);
}

@media (min-width: 1080px) {
  .p-product-common-hero__image {
    height: auto;
    max-width: 700px !important;
    height: 400px !important;
  }
}
@media (max-width: 1079px) {
  .p-product-common-hero__body {
    max-width: 500px;
  }
  .p-product-common-hero__image {
    width: 100% !important;
    max-width: 500px !important;
    height: auto !important;
  }
}
.p-product-common-hero__image picture,
.p-product-common-hero__image img {
  width: 100%;
  height: auto;
  object-fit: contain !important;
}

@media (min-width: 1080px) {
  .p-product-common-hero__title {
    font-size: 48px;
  }
}
@media (max-width: 1079px) {
  .p-product-common-hero {
    max-width: calc(100% - 40px);
    overflow: hidden;
    margin: auto;
    border-radius: var(--radius_md);
  }
  .p-product-common-hero::before {
    clip-path: polygon(0 60%, 100% 15%, 100% 100%, 0% 100%);
  }
  .p-product-common-hero::after {
    content: "";
    background-color: #001226;
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    clip-path: polygon(100% 59%, 100% 100%, 63% 100%);
  }
}
@media (max-width: 1079px) {
  .p-product-common-hero__image {
    flex: 1;
  }
}
@media (max-width: 1079px) {
  .p-product-common-hero__inner {
    padding: var(--spacing_md) var(--spacing_lg) var(--spacing_lg);
  }
  .p-product-common-hero__inner .p-product-common-hero__laurel-list {
    margin-bottom: var(--spacing_md);
  }
}

.cta-button {
  padding: 12px 56px 16px 64px;
  background-color: var(--brand-color-bakuraku-accent);
  border-radius: var(--radius_full);
  position: relative;
  color: var(--color-text-primary);
  transition: 0.5s;
  display: block;
  width: fit-content;
  text-align: center;
  left: 30px;
  box-shadow: 3px 3px 4px 3px rgba(0, 0, 0, 0.2);
}
@media (max-width: 1079px) {
  .cta-button {
    left: 20px;
  }
}
.cta-button:hover {
  transform: translateY(-1px);
  opacity: 0.8;
}
.cta-button__accent {
  position: absolute;
  inset: 0 auto 0 -30px;
  width: 76px;
  margin: auto 0;
}

.c-cta {
  width: 100%;
  max-width: 1030px;
  background: var(--color-bg-product-medium-light);
  padding: var(--spacing_2xl) var(--spacing_4xl, 64px);
}
@media (max-width: 1079px) {
  .c-cta {
    padding: var(--spacing_2xl) var(--spacing_lg);
  }
  .c-cta::before {
    clip-path: polygon(0 0, 100% 0, 100% 100%, 80% 100%, 0% 65%);
  }
}

.point-cards {
  max-width: 1040px;
  margin: 0 auto var(--spacing_4xl);
  display: grid;
  gap: var(--spacing_xl);
  grid-template-columns: repeat(2, 1fr);
}
@media (max-width: 1079px) {
  .point-cards {
    grid-template-columns: 1fr;
    margin-bottom: var(--spacing_2xl);
  }
}

.point-card {
  border: solid 1px var(--color-border-primary);
  border-radius: var(--radius_lg);
  overflow: hidden;
}
.point-card__body {
  background-color: #fff;
  padding: var(--spacing_xl) var(--spacing_xl) var(--spacing_2xl);
}

.point {
  padding: var(--spacing_5xl) 0 var(--spacing_full);
  background-color: var(--color-bg-product-light);
}
@media (max-width: 1079px) {
  .point {
    padding: var(--spacing_2xl) 0;
  }
}

.feature {
  padding: var(--spacing_5xl) 0 var(--spacing_full);
}
@media (max-width: 1079px) {
  .feature {
    padding: var(--spacing_2xl) 0;
  }
}

.p-product-common-reason {
  background-color: var(--smoke-5);
  padding: var(--spacing_5xl) 0 var(--spacing_full);
}
@media (max-width: 1079px) {
  .p-product-common-reason {
    padding: var(--spacing_2xl) 0;
  }
}

.reason-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: var(--spacing_lg);
}
@media (max-width: 1079px) {
  .reason-cards {
    grid-template-columns: 1fr;
    gap: var(--spacing_xl);
  }
}

.reason-card {
  border-radius: var(--radius_lg);
  overflow: hidden;
  color: #fff;
  background-color: var(--brand-color-bakuraku-primary);
}
.reason-card__body {
  text-align: center;
  padding: var(--spacing_xl) var(--radius_lg);
}

.top-support .c-support__body {
  color: #fff;
}

#contact-form {
  background-color: var(--smoke-5);
}

.p-product-application-form__box {
  max-width: 800px;
}

.p-product-application-form__box {
  background-color: #ffffff;
}

/*# sourceMappingURL=general-v3-lp.css.map */
