@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&family=Oswald:wght@200..700&display=swap");
@import url("https://fonts.cdnfonts.com/css/din-alternate");
/* ===============================================
# RULES
=============================================== */
/* ===============================================
# MIXINS
=============================================== */

.page:not(.home) p {
  margin-top: 0;
  margin-bottom: 0;
}

/* ===============================================
# COMMON
=============================================== */
* {
  min-width: 0;
  min-height: 0;
}

a {
  cursor: pointer;
  text-decoration: none;
}

img {
  width: 100%;
}

.lp_default {
  font-family: "Noto Serif JP", serif;
  font-size: 16px;
  line-height: 1.5;
  font-weight: 300;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_default {
    font-size: 14px;
    line-height: 1.5;
  }
}
@media screen and (max-width: 519px) {
  .lp_default {
    font-size: 14px;
    line-height: 1.5;
  }
}

.inner {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 20px;
  box-sizing: content-box;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .inner {
    padding: 0 20px;
  }
}
@media screen and (max-width: 519px) {
  .inner {
    padding: 0 15px;
  }
}

.for-pc {
  display: block;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .for-pc {
    display: none;
  }
}
@media screen and (max-width: 519px) {
  .for-pc {
    display: none;
  }
}

.for-sp {
  display: none;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .for-sp {
    display: block;
  }
}
@media screen and (max-width: 519px) {
  .for-sp {
    display: block;
  }
}

.lp_util-title {
  color: #00524f;
  font-size: 32px;
  line-height: 1.5;
  text-align: center;
  font-weight: 650;
  letter-spacing: 1px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_util-title {
    font-size: 28px;
  }
}
@media screen and (max-width: 519px) {
  .lp_util-title {
    font-size: 28px;
  }
}

.lp_util-section {
  padding: 80px 0;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_util-section {
    padding: 60px 0;
  }
}
@media screen and (max-width: 519px) {
  .lp_util-section {
    padding: 60px 0;
  }
}

/* ===============================================
1) HERO
=============================================== */
.lp_visual-background {
  position: relative;
  background: url("../img/img_top.jpg") center center/cover;
  height: 750px;
}
.lp_visual-background::before {
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 50%;
  height: 100%;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.3) 0%, rgba(0, 0, 0, 0) 100%);
  z-index: 1;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_visual-background {
    background: url("../img/img_top-sp.jpg") center center/cover;
  }
  .lp_visual-background::before {
    width: 100%;
  }
}
@media screen and (max-width: 519px) {
  .lp_visual-background {
    background: url("../img/img_top-sp.jpg") center center/cover;
    height: 650px;
  }
  .lp_visual-background::before {
    width: 100%;
  }
}
.lp_visual-inner {
  position: relative;
  width: 100%;
  max-width: 1200px;
}
.lp_visual-text {
  position: absolute;
  bottom: 60px;
  left: 8.3333333333%;
  color: #fff;
  font-size: 40px;
  font-weight: 650;
  line-height: 1.5;
  z-index: 2;
  text-shadow: 0px 4px 4px rgba(0, 0, 0, 0.2);
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_visual-text {
    left: 40px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_visual-text {
    font-size: 32px;
    bottom: 40px;
    left: 15px;
  }
}
@media screen and (max-width: 519px) {
  .lp_visual-text {
    font-size: 32px;
    bottom: 40px;
    left: 15px;
  }
}

/* ===============================================
2) ABOUT
=============================================== */
.lp_about {
  background: #00524f;
  color: #fff;
}
.lp_about-inner {
  max-width: 840px;
}
.lp_about-title {
  color: #fff;
}
.lp_about-text {
  margin-top: 60px !important;
  font-size: 20px;
  line-height: 1.5;
  text-align: center;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_about-text {
    font-size: 18px;
  }
}
@media screen and (max-width: 519px) {
  .lp_about-text {
    font-size: 18px;
  }
}

/* ===============================================
3) WORK
=============================================== */
.lp_work-list {
  display: flex;
  margin: 60px 0 0;
  column-gap: 30px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_work-list {
    display: block;
    width: 100%;
    max-width: 480px;
    margin: 60px auto 0;
  }
}
@media screen and (max-width: 519px) {
  .lp_work-list {
    display: block;
    width: 100%;
    max-width: 480px;
    margin: 60px auto 0;
  }
}
.lp_work-item {
  width: calc(33.3333333333% - 20px);
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_work-item {
    width: 100%;
  }
  .lp_work-item:not(:first-child) {
    margin-top: 60px !important;
  }
}
@media screen and (max-width: 519px) {
  .lp_work-item {
    width: 100%;
  }
  .lp_work-item:not(:first-child) {
    margin-top: 60px !important;
  }
}
.lp_work-link:hover .lp_work-image img {
  transform: scale(1.2);
}
.lp_work-image {
  cursor: pointer;
  max-width: 500px;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.lp_work-image img {
  height: auto;
  transition: transform 0.4s ease;
}
.lp_work-name {
  margin-top: 20px !important;
  font-size: 20px;
  line-height: 1.5;
  font-weight: 650;
  color: #202020;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_work-name {
    font-size: 18px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_work-name {
    margin-top: 16px !important;
    font-size: 18px;
  }
}
@media screen and (max-width: 519px) {
  .lp_work-name {
    margin-top: 16px !important;
    font-size: 18px;
  }
}

/* ===============================================
4) PROBLEM
=============================================== */
.lp_problem {
  background: linear-gradient(180deg, rgb(135, 135, 135) 0%, rgb(255, 255, 255) 100%);
}
.lp_problem-title {
  color: #fff;
}
.lp_problem-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 60px !important;
  column-gap: 60px;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_problem-list {
    column-gap: 40px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_problem-list {
    display: block;
  }
}
@media screen and (max-width: 519px) {
  .lp_problem-list {
    display: block;
  }
}
.lp_problem-item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  max-width: 450px;
  height: 150px;
  background: #fff;
  border-radius: 30px;
}
@media screen and (min-width: 960px) {
  .lp_problem-item {
    width: calc(50% - 30px);
  }
  .lp_problem-item:nth-child(2n) {
    margin-top: 75px !important;
  }
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_problem-item {
    width: calc(50% - 20px);
    height: 120px;
  }
  .lp_problem-item:nth-child(2n) {
    margin-top: 75px !important;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_problem-item {
    height: 120px;
    margin: 0 auto;
  }
  .lp_problem-item:not(:first-child) {
    margin: 20px auto 0;
  }
}
@media screen and (max-width: 519px) {
  .lp_problem-item {
    height: 120px;
    margin: 0 auto;
  }
  .lp_problem-item:not(:first-child) {
    margin: 20px auto 0;
  }
}
.lp_problem-text {
  font-size: 24px;
  text-align: center;
  line-height: 1.5;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_problem-text {
    font-size: 20px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_problem-text {
    font-size: 20px;
  }
}
@media screen and (max-width: 519px) {
  .lp_problem-text {
    font-size: 20px;
  }
}
.lp_problem-image {
  margin: 80px auto 0;
  max-width: 400px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_problem-image {
    margin: 60px auto 0;
    max-width: 300px;
  }
}
@media screen and (max-width: 519px) {
  .lp_problem-image {
    margin: 60px auto 0;
    max-width: 300px;
  }
}
.lp_problem-solution {
  max-width: 840px;
  margin: 80px auto 0;
  padding: 40px 0;
  background: #00524f;
  border-radius: 30px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_problem-solution {
    margin: 60px auto 0;
  }
}
@media screen and (max-width: 519px) {
  .lp_problem-solution {
    margin: 60px auto 0;
  }
}
.lp_problem-solution-text {
  font-size: 24px;
  line-height: 1.5;
  font-weight: 650;
  text-align: center;
  color: #fff;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_problem-solution-text {
    font-size: 20px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_problem-solution-text {
    font-size: 20px;
  }
}
@media screen and (max-width: 519px) {
  .lp_problem-solution-text {
    font-size: 20px;
  }
}

/* ===============================================
5) BENEFIT
=============================================== */
.lp_benefit-inner {
  max-width: 840px;
}
.lp_benefit-title span {
  font-size: 64px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_benefit-title span {
    font-size: 56px;
  }
}
@media screen and (max-width: 519px) {
  .lp_benefit-title span {
    font-size: 56px;
  }
}
.lp_benefit-list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 60px !important;
  gap: 40px;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_benefit-list {
    gap: 60px 40px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_benefit-list {
    display: block;
    max-width: 360px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 519px) {
  .lp_benefit-list {
    display: block;
    max-width: 360px;
    margin-left: auto;
    margin-right: auto;
  }
}
.lp_benefit-item {
  width: calc(33.3333333333% - 26.6666666667px);
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_benefit-item {
    width: calc(33.3333333333% - 13.3333333333px);
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_benefit-item {
    width: 100%;
    max-width: 360px;
  }
  .lp_benefit-item:not(:first-child) {
    margin-top: 60px !important;
  }
}
@media screen and (max-width: 519px) {
  .lp_benefit-item {
    width: 100%;
    max-width: 360px;
  }
  .lp_benefit-item:not(:first-child) {
    margin-top: 60px !important;
  }
}
.lp_benefit-itemhead {
  position: relative;
}
.lp_benefit-no {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 72px;
  line-height: 1.1666666667;
  font-weight: 700;
  color: #00524f;
  font-family: "DIN Alternate", sans-serif;
  -webkit-text-stroke-width: 2px;
  -webkit-text-stroke-color: #fff;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_benefit-no {
    font-size: 90px;
  }
}
@media screen and (max-width: 519px) {
  .lp_benefit-no {
    font-size: 90px;
  }
}
.lp_benefit-text {
  margin-top: 20px !important;
  color: #1b3063;
  text-align: center;
  font-weight: 650;
  font-size: 20px;
  line-height: 1.5;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_benefit-text {
    font-size: 18px;
  }
}
.lp_benefit-description {
  margin-top: 20px !important;
  line-height: 1.5;
}

/* ===============================================
6) POINTS
=============================================== */
.lp_points {
  background: #00524f;
  color: #fff;
}
.lp_points-title {
  color: #fff;
}
.lp_points-title span {
  font-size: 64px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_points-title span {
    font-size: 56px;
  }
}
@media screen and (max-width: 519px) {
  .lp_points-title span {
    font-size: 56px;
  }
}
.lp_points-list {
  display: flex;
  flex-direction: column;
  margin: 60px 0 0;
  row-gap: 80px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_points-list {
    width: 100%;
    max-width: 480px;
    margin: 60px auto 0;
  }
}
@media screen and (max-width: 519px) {
  .lp_points-list {
    width: 100%;
    max-width: 480px;
    margin: 60px auto 0;
  }
}
.lp_points-item {
  display: flex;
  column-gap: 60px;
  align-items: center;
}
@media screen and (min-width: 960px) {
  .lp_points-item:nth-child(2n) {
    flex-direction: row-reverse;
  }
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_points-item {
    column-gap: 40px;
  }
  .lp_points-item:nth-child(2n) {
    flex-direction: row-reverse;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_points-item {
    flex-direction: column-reverse;
  }
}
@media screen and (max-width: 519px) {
  .lp_points-item {
    flex-direction: column-reverse;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_points-body {
    margin-top: 20px !important;
  }
}
@media screen and (max-width: 519px) {
  .lp_points-body {
    margin-top: 20px !important;
  }
}
.lp_points-no {
  font-size: 32px;
  line-height: 1.15625;
  font-weight: 400;
  font-family: "DIN Alternate", sans-serif;
  color: #fff;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_points-no {
    font-size: 28px;
  }
}
@media screen and (max-width: 519px) {
  .lp_points-no {
    font-size: 28px;
  }
}
.lp_points-no span {
  font-size: 60px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_points-no span {
    font-size: 54px;
  }
}
@media screen and (max-width: 519px) {
  .lp_points-no span {
    font-size: 54px;
  }
}
.lp_points-text {
  margin-top: 20px;
  font-size: 20px;
  font-weight: 650;
  line-height: 1.5;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_points-text {
    font-size: 18px;
  }
}
@media screen and (max-width: 519px) {
  .lp_points-text {
    font-size: 18px;
  }
}
.lp_points-description {
  margin-top: 20px !important;
  line-height: 1.5;
}
/* ===============================================
6) SHOP
=============================================== */
.lp_shop-inner {
  max-width: 840px;
}
.lp_shop-container {
  display: flex;
  margin: 60px 0 0;
  column-gap: 60px;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_shop-container {
    column-gap: 40px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_shop-container {
    display: block;
    width: 100%;
    max-width: 480px;
    margin: 60px auto 0;
  }
}
@media screen and (max-width: 519px) {
  .lp_shop-container {
    display: block;
    width: 100%;
    max-width: 480px;
    margin: 60px auto 0;
  }
}
.lp_shop-image {
  width: 100%;
  max-width: 480px;
}
.lp_shop-body {
  width: 100%;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_shop-body {
    margin-top: 20px !important;
  }
}
@media screen and (max-width: 519px) {
  .lp_shop-body {
    margin-top: 20px !important;
  }
}
.lp_shop-name {
  font-size: 24px;
  font-weight: 650;
  color: #1b3063;
  line-height: 1.5;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_shop-name {
    font-size: 20px;
  }
}
@media screen and (max-width: 519px) {
  .lp_shop-name {
    font-size: 20px;
  }
}
.lp_shop-description {
  margin-top: 20px !important;
  line-height: 1.5;
}

/* ===============================================
7) PRICE
=============================================== */
.lp_price-list {
  display: flex;
  flex-wrap: wrap;
  margin-top: 60px !important;
  gap: 60px 30px;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_price-list {
    gap: 40px 20px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_price-list {
    max-width: 640px;
    margin: 60px auto 0;
  }
}
.lp_price-item {
  background: #00524f;
  color: #fff;
  width: calc(33.3333333333% - 20px);
  padding: 20px;
  border-radius: 30px;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_price-item {
    width: calc(33.3333333333% - 13.3333333333px);
    padding: 16px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_price-item {
    width: calc(50% - 15px);
    padding: 16px;
  }
}
@media screen and (max-width: 519px) {
  .lp_price-item {
    width: 100%;
  }
}
.lp_price-image {
  width: 100%;
}
.lp_price-image img {
  border-radius: 20px;
}
.lp_price-name {
  margin-top: 20px !important;
  font-size: 28px;
  font-weight: 650;
  text-align: center;
  line-height: 1.5;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_price-name {
    font-size: 24px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_price-name {
    font-size: 24px;
  }
}
@media screen and (max-width: 519px) {
  .lp_price-name {
    font-size: 24px;
  }
}
.lp_price-cost {
  margin-top: 16px !important;
  font-size: 20px;
  font-weight: 650;
  line-height: 1.5;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_price-cost {
    font-size: 18px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_price-cost {
    font-size: 18px;
  }
}
@media screen and (max-width: 519px) {
  .lp_price-cost {
    font-size: 18px;
  }
}
.lp_price-text {
  margin-top: 8px !important;
  font-size: 18px;
  line-height: 1.5;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_price-text {
    font-size: 16px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_price-text {
    font-size: 16px;
  }
}
@media screen and (max-width: 519px) {
  .lp_price-text {
    font-size: 16px;
  }
}

/* ===============================================
7.5) MODEL
=============================================== */
.lp_plan {
  background: #f3efe2;
  padding: 80px 0;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_plan {
    padding: 60px 0 120px;
  }
}
@media screen and (max-width: 519px) {
  .lp_plan {
    padding: 60px 0 120px;
  }
}
.lp_plan-item {
  display: flex;
  justify-content: space-between;
  margin-top: 80px !important;
}
.lp_plan-item:nth-child(2n) .lp_plan-top {
  flex-direction: row-reverse;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_plan-item {
    margin-top: 80px !important;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_plan-item {
    margin-top: 60px !important;
  }
}
@media screen and (max-width: 519px) {
  .lp_plan-item {
    margin-top: 60px !important;
  }
}
.lp_plan-top {
  display: flex;
  column-gap: 60px;
  margin: 0 auto;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_plan-top {
    column-gap: 40px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_plan-top {
    display: block;
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 519px) {
  .lp_plan-top {
    display: block;
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
  }
}
.lp_plan-image_t {
  max-width: 400px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_plan-image_t {
    margin-top: 20px !important;
    max-width: 480px;
  }
}
@media screen and (max-width: 519px) {
  .lp_plan-image_t {
    margin-top: 20px !important;
    max-width: 480px;
  }
}
.lp_plan-body_t {
  max-width: 500px;
  min-width: 300px;
}
.lp_plan-no {
  font-size: 32px;
  line-height: 1.15625;
  font-weight: 400;
  font-family: "DIN Alternate", sans-serif;
  color: #00524f;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_plan-no {
    font-size: 28px;
  }
}
@media screen and (max-width: 519px) {
  .lp_plan-no {
    font-size: 28px;
  }
}
.lp_plan-no span {
  font-size: 60px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_plan-no span {
    font-size: 54px;
  }
}
@media screen and (max-width: 519px) {
  .lp_plan-no span {
    font-size: 54px;
  }
}
.lp_plan-text {
  margin-top: 20px !important;
  color: #1b3063;
  font-size: 20px;
  font-weight: 650;
  line-height: 1.5;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_plan-text {
    font-size: 18px;
  }
}
@media screen and (max-width: 519px) {
  .lp_plan-text {
    font-size: 18px;
  }
}
.lp_plan-price {
  margin-top: 20px !important;
  color: #1b3063;
  font-size: 16px;
  font-weight: 650;
  line-height: 1.5;
}
.lp_plan-price span{
  font-size: 28px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_plan-price {
    font-size: 14px;
  }
  .lp_plan-price span{
    font-size: 24px;
  }
}
@media screen and (max-width: 519px) {
  .lp_plan-price {
    font-size: 14px;
  }
  .lp_plan-price span{
    font-size: 24px;
  }
}
.lp_plan-message_t {
  margin-top: 20px !important;
  line-height: 1.5;
}

/* ===============================================
8) MODEL
=============================================== */
.lp_model {
  background: #f3efe2;
  padding: 80px 0 160px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_model {
    padding: 60px 0 120px;
  }
}
@media screen and (max-width: 519px) {
  .lp_model {
    padding: 60px 0 120px;
  }
}
.lp_model-item {
  display: flex;
  flex-direction: column;
  margin-top: 80px !important;
}
.lp_model-item:nth-child(2) .lp_model-top {
  flex-direction: row-reverse;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_model-item {
    margin-top: 80px !important;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_model-item {
    margin-top: 60px !important;
  }
}
@media screen and (max-width: 519px) {
  .lp_model-item {
    margin-top: 60px !important;
  }
}
.lp_model-top {
  display: flex;
  column-gap: 60px;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_model-top {
    column-gap: 40px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_model-top {
    display: block;
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 519px) {
  .lp_model-top {
    display: block;
    width: 100%;
    max-width: 480px;
    margin: 0 auto;
  }
}
.lp_model-image_t {
  flex-shrink: 0.75;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_model-image_t {
    margin-top: 20px !important;
  }
}
@media screen and (max-width: 519px) {
  .lp_model-image_t {
    margin-top: 20px !important;
  }
}
.lp_model-body_t {
  max-width: 500px;
  min-width: 300px;
}
.lp_model-no {
  font-size: 32px;
  line-height: 1.15625;
  font-weight: 400;
  font-family: "DIN Alternate", sans-serif;
  color: #00524f;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_model-no {
    font-size: 28px;
  }
}
@media screen and (max-width: 519px) {
  .lp_model-no {
    font-size: 28px;
  }
}
.lp_model-no span {
  font-size: 60px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_model-no span {
    font-size: 54px;
  }
}
@media screen and (max-width: 519px) {
  .lp_model-no span {
    font-size: 54px;
  }
}
.lp_model-text {
  margin-top: 20px !important;
  color: #1b3063;
  font-size: 20px;
  font-weight: 650;
  line-height: 1.5;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_model-text {
    font-size: 18px;
  }
}
@media screen and (max-width: 519px) {
  .lp_model-text {
    font-size: 18px;
  }
}
.lp_model-price {
  margin-top: 20px !important;
  color: #1b3063;
  font-size: 16px;
  font-weight: 650;
  line-height: 1.5;
}
.lp_model-price span{
  font-size: 28px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_model-price {
    font-size: 14px;
  }
  .lp_model-price span{
    font-size: 24px;
  }
}
@media screen and (max-width: 519px) {
  .lp_model-price {
    font-size: 14px;
  }
  .lp_model-price span{
    font-size: 24px;
  }
}
.lp_model-message_t {
  margin-top: 20px !important;
  line-height: 1.5;
}
.lp_model-bottom {
  display: flex;
  margin: 30px 0 0;
  column-gap: 30px;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_model-bottom {
    column-gap: 20px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_model-bottom {
    display: block;
    width: 100%;
    max-width: 480px;
    margin: 60px auto 0;
  }
}
@media screen and (max-width: 519px) {
  .lp_model-bottom {
    display: block;
    width: 100%;
    max-width: 480px;
    margin: 60px auto 0;
  }
}
.lp_model-body_b {
  width: calc(33.3333333333% - 20px);
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_model-body_b {
    width: calc(33.3333333333% - 13.3333333333px);
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_model-body_b {
    width: 100%;
  }
  .lp_model-body_b:not(:first-child) {
    margin-top: 60px !important;
  }
}
@media screen and (max-width: 519px) {
  .lp_model-body_b {
    width: 100%;
  }
  .lp_model-body_b:not(:first-child) {
    margin-top: 60px !important;
  }
}
.lp_model-message_b {
  margin-top: 16px !important;
  line-height: 1.5;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_model-message_b {
    margin-top: 12px !important;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_model-message_b {
    margin-top: 12px !important;
  }
}
@media screen and (max-width: 519px) {
  .lp_model-message_b {
    margin-top: 12px !important;
  }
}

/* ===============================================
9) STEP
=============================================== */
.lp_step {
  background: #00524f;
  color: #fff;
}
.lp_step-title {
  color: #fff;
}
.lp_step-list {
  display: flex;
  flex-direction: column;
  margin-top: 60px !important;
  row-gap: 60px;
}
.lp_step-item {
  display: flex;
  column-gap: 60px;
  align-items: center;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_step-item {
    column-gap: 40px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_step-item {
    display: block;
    width: 100%;
    max-width: 360px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 519px) {
  .lp_step-item {
    display: block;
    width: 100%;
    max-width: 360px;
    margin: 0 auto;
  }
}
.lp_step-image {
  flex-shrink: 0.75;
  width: 100%;
  max-width: 240px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_step-image {
    max-width: 360px;
  }
}
@media screen and (max-width: 519px) {
  .lp_step-image {
    max-width: 360px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_step-body {
    margin-top: 20px !important;
  }
}
@media screen and (max-width: 519px) {
  .lp_step-body {
    margin-top: 20px !important;
  }
}
.lp_step-no {
  font-size: 32px;
  line-height: 1.15625;
  font-weight: 400;
  font-family: "DIN Alternate", sans-serif;
  color: #fff;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_step-no {
    font-size: 28px;
  }
}
@media screen and (max-width: 519px) {
  .lp_step-no {
    font-size: 28px;
  }
}
.lp_step-no span {
  font-size: 60px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_step-no span {
    font-size: 54px;
  }
}
@media screen and (max-width: 519px) {
  .lp_step-no span {
    font-size: 54px;
  }
}
.lp_step-text {
  margin-top: 20px !important;
  font-size: 20px;
  font-weight: 650;
  line-height: 1.5;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_step-text {
    margin-top: 16px !important;
    font-size: 18px;
  }
}
@media screen and (max-width: 519px) {
  .lp_step-text {
    margin-top: 16px !important;
    font-size: 18px;
  }
}
.lp_step-description {
  margin-top: 20px !important;
  line-height: 1.5;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_step-description {
    margin-top: 16px !important;
  }
}
@media screen and (max-width: 519px) {
  .lp_step-description {
    margin-top: 16px !important;
  }
}

/* ===============================================
10) QUESTION
=============================================== */
.lp_question-list {
  margin-top: 60px !important;
  border-top: 2px solid #999;
}
.lp_question-item {
  border-bottom: 2px solid #999;
  padding: 24px 60px;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_question-item {
    padding: 24px 40px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_question-item {
    padding: 20px;
  }
}
@media screen and (max-width: 519px) {
  .lp_question-item {
    padding: 20px;
  }
}
.lp_question-row_q {
  display: flex;
}
.lp_question-row_q-icon {
  position: relative;
  flex-shrink: 0;
  width: 35px;
  height: 28px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_question-row_q-icon {
    width: 24px;
    height: 24px;
  }
}
@media screen and (max-width: 519px) {
  .lp_question-row_q-icon {
    width: 24px;
    height: 24px;
  }
}
.lp_question-row_q-icon span {
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.2;
  color: #1b3063;
  transform: translate(-50%, -50%);
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_question-row_q-icon span {
    font-size: 24px;
  }
}
@media screen and (max-width: 519px) {
  .lp_question-row_q-icon span {
    font-size: 24px;
  }
}
.lp_question-row_q-text {
  margin-left: 24px;
  font-size: 20px;
  font-weight: 650;
  line-height: 1.5;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_question-row_q-text {
    margin-left: 12px;
    font-size: 18px;
  }
}
@media screen and (max-width: 519px) {
  .lp_question-row_q-text {
    margin-left: 12px;
    font-size: 18px;
  }
}
.lp_question-row_a {
  display: flex;
  margin-top: 20px !important;
}
.lp_question-row_a-icon {
  position: relative;
  flex-shrink: 0;
  width: 35px;
  height: 28px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_question-row_a-icon {
    width: 24px;
    height: 24px;
  }
}
@media screen and (max-width: 519px) {
  .lp_question-row_a-icon {
    width: 24px;
    height: 24px;
  }
}
.lp_question-row_a-icon span {
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 28px;
  font-weight: 700;
  line-height: 1.2;
  color: #e60012;
  transform: translate(-50%, -50%);
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_question-row_a-icon span {
    font-size: 24px;
  }
}
@media screen and (max-width: 519px) {
  .lp_question-row_a-icon span {
    font-size: 24px;
  }
}
.lp_question-row_a-text {
  margin-left: 24px;
}
.lp_question-row_a-text p{
  line-height: 1.5;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_question-row_a-text {
    margin-left: 12px;
  }
}
@media screen and (max-width: 519px) {
  .lp_question-row_a-text {
    margin-left: 12px;
  }
}

/* ===============================================
11) CTA
=============================================== */
.lp_cta-buttons {
  display: flex;
  justify-content: space-between;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_cta-buttons {
    justify-content: center;
    column-gap: 20px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_cta-buttons {
    flex-direction: column;
    align-items: center;
    row-gap: 20px;
  }
}
@media screen and (max-width: 519px) {
  .lp_cta-buttons {
    flex-direction: column;
    align-items: center;
    row-gap: 20px;
  }
}
.lp_cta-button {
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_cta-button {
    width: 300px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_cta-button {
    width: 300px;
  }
}
@media screen and (max-width: 519px) {
  .lp_cta-button {
    width: 300px;
  }
}
.lp_cta-button.tel {
  border: 3px solid #1b3063;
  border-radius: 30px;
  background: rgba(27, 48, 99, 0.1);
}
.lp_cta-button.line {
  border: 3px solid #149800;
  border-radius: 30px;
  background: rgba(20, 152, 0, 0.1);
}
.lp_cta-link {
  width: 420px;
  max-width: 100%;
  padding: 30px;
  display: flex;
  align-items: center;
  column-gap: 40px;
  transition: opacity 0.4s ease;
}
.lp_cta-link:hover  {
  opacity: 0.4;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_cta-link {
    padding: 20px;
    column-gap: 20px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_cta-link {
    padding: 20px;
    column-gap: 20px;
  }
}
@media screen and (max-width: 519px) {
  .lp_cta-link {
    padding: 20px;
    column-gap: 20px;
  }
}
.lp_cta-image.tel {
  width: 95px;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_cta-image.tel {
    width: 74px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_cta-image.tel {
    width: 74px;
  }
}
@media screen and (max-width: 519px) {
  .lp_cta-image.tel {
    width: 74px;
  }
}
.lp_cta-image.line {
  width: 87px;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_cta-image.line {
    width: 69px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_cta-image.line {
    width: 69px;
  }
}
@media screen and (max-width: 519px) {
  .lp_cta-image.line {
    width: 69px;
  }
}
.lp_cta-text {
  font-size: 20px;
  font-weight: 650;
  line-height: 1.5;
  text-align: center;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_cta-text {
    font-size: 18px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_cta-text {
    font-size: 18px;
  }
}
@media screen and (max-width: 519px) {
  .lp_cta-text {
    font-size: 18px;
  }
}
.lp_cta-text.tel {
  color: #1b3063;
}
.lp_cta-text.line {
  color: #149800;
}
.lp_cta-tel {
  margin-top: 20px !important;
  font-size: 28px;
  font-weight: 650;
  line-height: 1.5;
  color: #1b3063;
  text-align: center;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_cta-tel {
    font-size: 18px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_cta-tel {
    font-size: 18px;
  }
}
@media screen and (max-width: 519px) {
  .lp_cta-tel {
    font-size: 18px;
  }
}
.lp_cta-container {
  max-width: 840px;
  margin: 60px auto 0;
  padding: 40px 20px;
  background: #00524f;
  border-radius: 30px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_cta-container {
    margin: 40px auto 0;
    max-width: 480px;
  }
}
@media screen and (max-width: 519px) {
  .lp_cta-container {
    margin: 40px auto 0;
    max-width: 480px;
  }
}
.lp_cta-container-text {
  font-size: 24px;
  font-weight: 650;
  text-align: center;
  line-height: 1.5;
  color: #fff;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_cta-container-text {
    font-size: 20px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_cta-container-text {
    font-size: 20px;
  }
}
@media screen and (max-width: 519px) {
  .lp_cta-container-text {
    font-size: 20px;
  }
}

.lp_ {
  margin-top: 60px !important;
}
.lp_-inner {
  max-width: 840px;
}
/* ===============================================
13) CONTACT
=============================================== */
.lp_contact {
  background: url("../img/img_contact.jpg") no-repeat center center/cover;
}
.lp_contact-container {
  background: #fff;
  border-radius: 50px;
  padding: 60px;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_contact-container {
    padding: 40px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_contact-container {
    padding: 40px;
  }
}
@media screen and (max-width: 519px) {
  .lp_contact-container {
    padding: 40px 20px;
  }
}
.lp_contact-form input[type=text],
.lp_contact-form input[type=email],
.lp_contact-form input[type=tel],
.lp_contact-form textarea {
  border: 1px solid #999;
  background: rgba(153, 153, 153, 0.15);
  font-size: 16px;
  font-family: "Noto Serif JP", serif;
  line-height: 1.5;
  width: 720px;
  max-width: 100%;
}
.lp_contact-form input[type=text]::placeholder,
.lp_contact-form input[type=email]::placeholder,
.lp_contact-form input[type=tel]::placeholder,
.lp_contact-form textarea::placeholder {
  color: #999;
}
.lp_contact-form input[type=text]:focus,
.lp_contact-form input[type=email]:focus,
.lp_contact-form input[type=tel]:focus,
.lp_contact-form textarea:focus {
  outline-color: #00524f;
}
.lp_contact-form input[type=text],
.lp_contact-form input[type=email],
.lp_contact-form input[type=tel] {
  padding: 12px 16px;
}
.lp_contact-form textarea {
  padding: 16px;
  min-height: 160px;
  max-height: 160px;
  resize: vertical;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_contact-form textarea {
    min-height: 160px;
    max-height: 160px;
  }
}
@media screen and (max-width: 519px) {
  .lp_contact-form textarea {
    min-height: 160px;
    max-height: 160px;
  }
}
.lp_contact-list {
  margin-top: 60px !important;
}
.lp_contact-item {
  display: flex;
  align-items: center;
}
.lp_contact-item:not(:first-child) {
  margin-top: 40px !important;
}
.lp_contact-item.flex-top {
  align-items: start;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_contact-item {
    display: block;
  }
}
@media screen and (max-width: 519px) {
  .lp_contact-item {
    display: block;
  }
}
.lp_contact-flex {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}
.lp_contact-flex p{
  display: flex;
  align-items: center;
  flex-shrink: 0;
  padding-top: 0!important;
}
.lp_contact-required {
  padding: 4px 12px;
  font-size: 14px;
  font-weight: 650;
  line-height: 20px;
  color: #fff;
  background: #e60012;
  border-radius: 10px;
  flex-shrink: 0;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_contact-required {
    padding: 2px 8px;
    font-size: 12px;
  }
}
@media screen and (max-width: 519px) {
  .lp_contact-required {
    padding: 2px 8px;
    font-size: 12px;
  }
}
.lp_contact-optional {
  padding: 4px 12px;
  font-size: 14px;
  font-weight: 650;
  color: #fff;
  background: #202020;
  border-radius: 10px;
  flex-shrink: 0;
  opacity: 0;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_contact-optional {
    display: none;
  }
}
@media screen and (max-width: 519px) {
  .lp_contact-optional {
    display: none;
  }
}
.lp_contact-name {
  display: block;
  width: 180px;
  margin-left: 20px;
  font-weight: 650;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_contact-name {
    width: 150px;
    margin-left: 16px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_contact-name {
    margin-left: 12px;
  }
}
@media screen and (max-width: 519px) {
  .lp_contact-name {
    margin-left: 12px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_contact-name.optional {
    margin-left: 0;
  }
}
@media screen and (max-width: 519px) {
  .lp_contact-name.optional {
    margin-left: 0;
  }
}
.lp_contact-input {
  margin-left: 20px;
}
.lp_contact-input p{
  padding-top: 0 !important;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_contact-input {
    margin-top: 16px !important;
    margin-left: 0;
  }
}
@media screen and (max-width: 519px) {
  .lp_contact-input {
    margin-top: 16px !important;
    margin-left: 0;
  }
}
.lp_contact-select.lp_radio-box {
  margin-left: 20px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.lp_contact-select.lp_radio-box p{
  padding-top: 0;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_contact-select.lp_radio-box {
    margin-top: 20px !important;
    margin-left: 0;
  }
}
@media screen and (max-width: 519px) {
  .lp_contact-select.lp_radio-box {
    margin-top: 20px !important;
    margin-left: 0;
  }
}
.lp_contact-radio {
  position: relative;
  width: 100%;
  max-width: 100%;
  cursor: pointer;
}
.lp_contact-radio:nth-child(n+2) {
  margin-top: 10px !important;
}
.lp_contact-radio-input {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
.lp_contact-radio-input:checked + .lp_contact-radio-name::after {
  display: block;
}
.lp_contact-radio-name {
  display: inline-block;
  padding-left: 34px;
  font-size: 16px;
  line-height: 1.4375;
}
.lp_contact-radio-name::before {
  content: "";
  width: 24px;
  height: 24px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(153, 153, 153, 0.15);
  border: 1px solid #999;
  border-radius: 50px;
}
.lp_contact-radio-name::after {
  content: "";
  width: 12px;
  height: 12px;
  position: absolute;
  left: 6px;
  top: 50%;
  transform: translateY(-50%);
  background: #00524f;
  border-radius: 50px;
  display: none;
}
.lp_contact-privacy {
  margin-left: 20px;
}
.lp_contact-privacy p{
  padding-top: 0;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_contact-privacy {
    margin-top: 20px !important;
    margin-left: 0;
    text-align: center;
  }
}
@media screen and (max-width: 519px) {
  .lp_contact-privacy {
    margin-top: 20px !important;
    margin-left: 0;
    text-align: center;
  }
}
.lp_contact-privacy [type=checkbox]:checked + span::after {
  display: block;
}
.lp_contact-privacy [type=checkbox]:hover + span::before {
  border: 1px solid #999;
  outline: none;
}
.lp_contact-privacy [type=checkbox]:focus + span::before {
  border: 1px solid #999;
  outline: none;
}
.lp_contact-privacy [type=checkbox]:active + span::before {
  border: 1px solid #999;
  background: rgba(73, 115, 255, 0.2);
  box-shadow: none;
}
.lp_contact-check {
  position: relative;
}
.lp_contact-check span {
  display: inline-block;
  padding-left: 40px;
  position: relative;
  font-size: 16px;
}
.lp_contact-check span::before {
  content: "";
  width: 25px;
  height: 25px;
  background: rgba(153, 153, 153, 0.15);
  border: 1px solid #999;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.lp_contact-check span::after {
  content: "";
  width: 16px;
  height: 12px;
  position: absolute;
  left: 4px;
  top: 50%;
  transform: translateY(-50%);
  background: transparent url(../img/img_checkmark.png) no-repeat center center/contain;
  display: none;
}
.lp_contact-check-input {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
.lp_contact-check-link {
  color: #005eac;
  font-weight: 650;
  text-decoration: underline;
}
.lp_contact-footer {
  margin-top: 40px !important;
}
.lp_contact-message {
  margin: 0 auto;
  width: 100%;
  max-width: 720px;
  text-align: center;
  line-height: 1.5;
}
.lp_contact-message p{
  padding-top: 0;
}
.lp_contact-submit {
  margin: 40px auto 0;
  width: 200px;
  max-width: 100%;
}
.lp_contact-submit p {
  padding-top: 0;
}
.lp_contact-submit-button {
  border: none !important;
  font-family: "Noto Serif JP", serif !important;
  display: inline-block !important;
  width: 200px !important;
  height: 60px !important;
  padding: 0 !important;
  line-height: 60px !important;
  font-size: 24px !important;
  font-weight: 650 !important;
  text-align: center !important;
  color: #fff !important;
  background-color: #00524f !important;
  box-shadow: 0 4px 4px rgba(0, 0, 0, 0.2) !important;
}
.lp_contact-submit-button:focus {
  outline: none;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_contact-submit-button {
    font-size: 20px;
  }
}
@media screen and (max-width: 519px) {
  .lp_contact-submit-button {
    font-size: 20px;
  }
}

/* ===============================================
14) OTHER
=============================================== */
.lp_other {
  padding-bottom: 160px;
}
.lp_other-list {
  display: flex;
  margin: 60px 0 0;
  column-gap: 30px;
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_other-list {
    display: block;
    width: 100%;
    max-width: 480px;
    margin: 60px auto 0;
  }
}
@media screen and (max-width: 519px) {
  .lp_other-list {
    display: block;
    width: 100%;
    max-width: 480px;
    margin: 60px auto 0;
  }
}
.lp_other-item {
  width: calc(33.3333333333% - 20px);
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_other-item {
    width: 100%;
    max-width: 480px;
  }
  .lp_other-item:not(:first-child) {
    margin-top: 60px !important;
  }
}
@media screen and (max-width: 519px) {
  .lp_other-item {
    width: 100%;
    max-width: 480px;
  }
  .lp_other-item:not(:first-child) {
    margin-top: 60px !important;
  }
}
.lp_other-link:hover .lp_other-image img {
  transform: scale(1.2);
}
.lp_other-image {
  cursor: pointer;
  max-width: 480px;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.lp_other-image img {
  height: auto;
  transition: transform 0.4s ease;
}
.lp_other-name {
  margin-top: 20px !important;
  text-align: center;
  font-size: 20px;
  font-weight: 650;
  line-height: 1.5;
  color: #202020;
}
@media screen and (min-width: 768px) and (max-width: 959px) {
  .lp_other-name {
    font-size: 18px;
  }
}
@media screen and (min-width: 520px) and (max-width: 767px) {
  .lp_other-name {
    margin-top: 16px !important;
    font-size: 18px;
  }
}
@media screen and (max-width: 519px) {
  .lp_other-name {
    margin-top: 16px !important;
    font-size: 18px;
  }
}

/* ===============================================
15) WPCF7 ADJUST
=============================================== */

.wpcf7-radio {
  max-width: 100%;
  display: flex;
  flex-direction: column;
  row-gap: 10px !important;
}
.wpcf7-list-item-label {
  cursor: pointer;
  display: inline-block;
  padding-left: 34px;
  font-size: 16px;
  line-height: 1.4375;
}

.lp_contact-radio .wpcf7-list-item-label::before {
  content: "";
  width: 24px;
  height: 24px;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(153, 153, 153, 0.15);
  border: 1px solid #999;
  border-radius: 50px;
}
.lp_contact-radio .wpcf7-list-item-label::after {
  content: "";
  width: 12px;
  height: 12px;
  position: absolute;
  left: 6px;
  top: 50%;
  transform: translateY(-50%);
  background: #00524f;
  border-radius: 50px;
  display: none;
}
input[type=radio] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
}
input[type=radio]:checked + .wpcf7-list-item-label::after {
  display: block;
}

.wpcf7 input[type=checkbox] {
  content: "";
  width: 25px;
  height: 25px;
  background: rgba(153, 153, 153, 0.15);
  border: 1px solid #999;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.wpcf7 input[type=checkbox]:before {
    height: 8px;
    width: 18px;
    top: 6px;
    left: 3px;
}

.lp_contact-check .wpcf7-list-item-label::before {
  content: "";
  width: 25px;
  height: 25px;
  background: rgba(153, 153, 153, 0.15);
  border: 1px solid #999;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.lp_contact-check .wpcf7-list-item-label::after {
  content: "";
  width: 16px;
  height: 12px;
  position: absolute;
  left: 4px;
  top: 50%;
  transform: translateY(-50%);
  background: transparent url(../img/img_checkmark.png) no-repeat center center/contain;
  display: none;
}

.lp_contact-privacy [type=checkbox]:hover + span::before {
  border: 0px !important;
}

.lp_contact-privacy [type=checkbox]:focus + span::before {
  border: 0px !important;
}

.wpcf7-spinner {
  display: none;
}

.wpcf7-not-valid-tip {
  color: #e60012;
  margin-top: 10px;
  font-size: 14px;
}