@charset "UTF-8";
/* ---------------------------------
   LP - Hero（ファーストビュー）
--------------------------------- */
.lp-top-wrap {
  position: relative;
  overflow: visible;
}
.lp-top-wrap .wave-box__bottom {
  bottom: 0 !important;
}

.about-top-section {
  padding-top: 10vw !important;
}
@media screen and (max-width: 767px) {
  .about-top-section {
    padding-top: 20vw !important;
  }
}

.lp-hero {
  position: relative;
  overflow: visible;
}
.lp-hero .about-top-section__inner {
  padding-bottom: 0 !important;
}
@media screen and (max-width: 767px) {
  .lp-hero .about-top-section__inner {
    margin-top: 0;
    padding-bottom: 8vw;
  }
}
.lp-hero__title {
  position: relative;
  z-index: 2;
  max-width: 62%;
  margin: 0;
  color: #10425A;
  font-size: 5rem;
  font-weight: 800;
  line-height: 1.3;
  letter-spacing: 0.08em;
}
.lp-hero__title em {
  font-style: normal;
  color: #CD457F;
  font-size: 1.4em;
}
@media screen and (max-width: 1024px) {
  .lp-hero__title {
    font-size: 3.5rem;
  }
}
@media screen and (max-width: 767px) {
  .lp-hero__title {
    max-width: 100%;
    font-size: 2.4rem;
    letter-spacing: 0.2em !important;
  }
}
.lp-hero__lead {
  position: relative;
  z-index: 2;
  max-width: 60%;
  margin-top: 2rem;
  color: #10425A;
  font-size: 1.5rem;
  line-height: 2;
  margin-bottom: 0 !important;
}
.lp-hero__lead .is-pink {
  color: #CD457F;
}
.lp-hero__lead .is-aqua {
  color: #0099CF;
}
@media screen and (max-width: 767px) {
  .lp-hero__lead {
    max-width: 100%;
    font-size: 1.3rem;
  }
  .lp-hero__lead br {
    display: none;
  }
}

.lp-top-wrap .about-top-section__art01 {
  position: absolute;
  top: 0vw;
  right: 0;
  left: auto;
  bottom: auto;
  z-index: 1;
  width: 35vw;
  pointer-events: none;
}
.lp-top-wrap .about-top-section__art01 img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .lp-top-wrap .about-top-section__art01 {
    top: 10vw;
    right: -50vw;
    width: 80vw;
  }
}

/* ---------------------------------
   LP - 3パネル（補助金額）
--------------------------------- */
.three-panel-section {
  position: relative;
}
.three-panel-section .wave-box__bottom {
  position: relative;
  z-index: 0;
}
.three-panel-section .three-services {
  position: relative;
  z-index: 2;
}
.three-panel-section .three-services__wrap {
  position: relative;
  z-index: 2;
}
.three-panel-section .three-services__panel {
  position: relative;
  z-index: 2;
  padding: 4rem 3rem;
  color: #fff;
}
.three-panel-section .three-services__panel p {
  margin-top: 0;
}
.three-panel-section .three-services__panel--cat {
  font-size: 1.6rem;
  font-weight: 500;
  margin-bottom: 1rem;
}
.three-panel-section .three-services__panel--cat strong {
  font-weight: 700;
}
.three-panel-section .three-services__panel--price {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
      -ms-flex-align: baseline;
          align-items: baseline;
  line-height: 1;
  margin-bottom: 1.5rem;
}
.three-panel-section .three-services__panel--price .max {
  display: inline-block;
  width: 1em;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.3;
  margin-right: 0.6rem;
  -ms-flex-item-align: center;
      -ms-grid-row-align: center;
      align-self: center;
}
.three-panel-section .three-services__panel--price em {
  font-style: normal;
  font-size: 7rem;
  font-weight: 700;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .three-panel-section .three-services__panel--price em {
    font-size: 5.5rem;
  }
}
.three-panel-section .three-services__panel--price .unit {
  font-size: 2.2rem;
  font-weight: 700;
  margin-left: 0.3rem;
}
.three-panel-section .three-services__panel--note {
  font-size: 1.3rem;
  margin-bottom: 0;
}
@media screen and (max-width: 767px) {
  .three-panel-section .three-services__inner {
    padding-top: 0;
  }
  .three-panel-section .three-services {
    position: relative;
    z-index: 2;
  }
  .three-panel-section .three-services__wrap {
    position: relative;
    z-index: 2;
  }
  .three-panel-section .three-services__panel {
    position: relative;
    z-index: 2;
  }
}

.right-block-section-title {
  margin-bottom: 1rem !important;
}
@media screen and (max-width: 767px) {
  .right-block-section-title {
    letter-spacing: 0.03em;
  }
}

.right-block-section-title-sub {
  font-size: 1.4rem !important;
}

@media screen and (max-width: 767px) {
  h3.title-s {
    margin-left: 0;
  }
}

/* ---------------------------------
   LP - Overview section（課題チェック＋解決ボックス）
--------------------------------- */
.overview-check {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 4rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5rem 4rem;
  margin: 5rem 0 0;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .overview-check {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}
.overview-check li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1.4rem;
  font-size: 1.8rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #fff;
}
.overview-check li::before {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 3rem;
  height: 2.6rem;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 37 31"><rect x="0.5" y="0.5" width="30" height="30" rx="15" fill="white" stroke="%2310425A"/><path d="M36 5.33905L17.5958 24L6 12.2424L10.2794 7.90339L17.5958 15.3219L31.7206 1L36 5.33905Z" fill="%230099CF" stroke="%2310425A" stroke-linejoin="round"/></svg>') no-repeat center/contain;
}
@media screen and (max-width: 767px) {
  .overview-check li {
    font-size: 1.4rem;
  }
}

.overview-answer {
  position: relative;
  margin-top: 8rem;
  background: #CD457F;
  border-radius: 1.6rem;
  padding: 6rem 5rem 4rem;
  text-align: center;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .overview-answer {
    margin-top: 6rem;
    padding: 5rem 2rem 3rem;
  }
}
.overview-answer p {
  margin: 0;
}
.overview-answer__arrow {
  position: absolute;
  top: -3.25rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  width: 6.5rem;
  height: 6.5rem;
  margin: 0;
  background: url("/assets/img/lp/arrow.svg") no-repeat center/contain;
}
.overview-answer__title {
  font-size: 2rem;
  line-height: 1.9;
  letter-spacing: 0.15em;
}
.overview-answer__title em {
  font-style: normal;
  font-size: 1.5em;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .overview-answer__title {
    font-size: 1.5rem;
  }
}
.overview-answer__text {
  font-size: 1.6rem !important;
  line-height: 2.1;
  margin-top: 3rem !important;
}
.overview-answer__text strong {
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .overview-answer__text {
    font-size: 1.3rem;
    text-align: left;
  }
  .overview-answer__text br {
    display: none;
  }
}
.overview-answer__note {
  font-size: 1.6rem !important;
  margin-top: 1rem !important;
}
@media screen and (max-width: 767px) {
  .overview-answer__note {
    font-size: 1.2rem;
    text-align: left;
  }
}
.overview-answer .btn-box {
  margin-top: 3rem;
}

/* ---------------------------------
   比較カード（2種類の補助金）
--------------------------------- */
.subsidy-inner {
  margin-top: 5rem !important;
  padding: 5rem;
  background: #F6F0EF;
  border-radius: 1.2rem;
}
@media screen and (max-width: 767px) {
  .subsidy-inner {
    padding: 2rem;
  }
}

.subsidy-compare {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
@media screen and (max-width: 767px) {
  .subsidy-compare {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 2.5rem;
    margin-top: 3rem;
  }
}

.subsidy-card {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
@media screen and (max-width: 767px) {
  .subsidy-card {
    padding: 3rem 2rem 2.5rem;
  }
}
.subsidy-card__label {
  font-size: 1.1rem;
  font-weight: 700;
  letter-spacing: 0.15em;
  margin-bottom: 1rem;
}
.subsidy-card__title {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.4;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.8rem;
}
@media screen and (max-width: 767px) {
  .subsidy-card__title {
    font-size: 1.9rem;
  }
}
.subsidy-card__title::before {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 50%;
}
.subsidy-card__subtitle {
  font-size: 1.3rem;
  color: #555;
  margin: 0.6rem 0 0 2.2rem;
}
.subsidy-card.is-digital {
  border-right: 2px dotted #10425A;
  padding-right: 3rem;
}
@media screen and (max-width: 767px) {
  .subsidy-card.is-digital {
    border-right: none;
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
}
.subsidy-card.is-digital .subsidy-card__label,
.subsidy-card.is-digital .subsidy-card__title {
  color: #CD457F;
}
.subsidy-card.is-digital .subsidy-card__title::before {
  background: #CD457F;
}
.subsidy-card.is-small {
  padding-left: calc(3rem + 2px);
}
@media screen and (max-width: 767px) {
  .subsidy-card.is-small {
    padding-right: 0 !important;
    padding-left: 0 !important;
  }
}
.subsidy-card.is-small .subsidy-card__label,
.subsidy-card.is-small .subsidy-card__label,
.subsidy-card.is-small .subsidy-card__title {
  color: #0099CF;
}
.subsidy-card.is-small .subsidy-card__title::before {
  background: #0099CF;
}
.subsidy-card__img {
  margin: 2rem 0 0;
  text-align: center;
}
.subsidy-card__img img {
  max-width: 100%;
  height: auto;
}
.subsidy-card {
  /* 補助金額ボックス */
}
.subsidy-card__amount {
  position: relative;
  background: #fff;
  border: 2px solid;
  border-radius: 1rem;
  text-align: center;
  padding: 3rem 2rem 2rem;
  margin: 3rem 0 0;
}
.subsidy-card__amount p {
  margin-top: 0;
  margin-bottom: 0;
  line-height: 1;
}
.subsidy-card__amount--badge {
  position: absolute;
  top: -1.5rem;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  color: #fff;
  font-size: 1.5rem;
  font-weight: 700;
  padding: 1rem 2rem;
  border-radius: 2rem;
  white-space: nowrap;
}
.subsidy-card__amount--price {
  font-size: 1.8rem;
  font-weight: 700;
  line-height: 1.2;
  color: #333;
  margin-bottom: 1rem !important;
}
.subsidy-card__amount--price em {
  font-size: 4.2rem;
  font-style: normal;
  letter-spacing: 0.02em;
}
@media screen and (max-width: 767px) {
  .subsidy-card__amount--price em {
    font-size: 3.6rem;
  }
}
.subsidy-card__amount--note {
  font-size: 1.2rem;
  color: #666;
  margin-top: 0.8rem;
  margin-bottom: 1rem !important;
  line-height: 1.5 !important;
  padding: 0.5rem 0;
  height: 5rem;
}
.subsidy-card__amount--target-label {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  font-size: 1.2rem;
  font-weight: 700;
  margin: 1.8rem 0 0.8rem;
  margin-bottom: 1em !important;
}
.subsidy-card__amount--target-label::before, .subsidy-card__amount--target-label::after {
  content: "";
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  height: 1px;
  background: currentColor;
}
.subsidy-card__amount--target {
  font-size: 1.4rem;
  font-weight: 700;
  color: #333;
  margin-bottom: 1rem !important;
}
.subsidy-card.is-digital .subsidy-card__amount {
  border-color: #CD457F;
}
.subsidy-card.is-digital .subsidy-card__amount .subsidy-card__amount--badge {
  background: #CD457F;
}
.subsidy-card.is-digital .subsidy-card__amount .subsidy-card__amount--price em,
.subsidy-card.is-digital .subsidy-card__amount .subsidy-card__amount--target-label {
  color: #CD457F;
}
.subsidy-card.is-small .subsidy-card__amount {
  border-color: #0099CF;
}
.subsidy-card.is-small .subsidy-card__amount .subsidy-card__amount--badge {
  background: #0099CF;
}
.subsidy-card.is-small .subsidy-card__amount .subsidy-card__amount--price em,
.subsidy-card.is-small .subsidy-card__amount .subsidy-card__amount--target-label {
  color: #0099CF;
}
.subsidy-card {
  /* 費用・ポイントのブロック */
}
.subsidy-card__block {
  margin: 2.5rem 0 0;
}
.subsidy-card__block--title {
  font-size: 1.5rem;
  font-weight: 700;
  color: #333;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.6rem;
  margin-bottom: 1rem;
}
.subsidy-card__block--title::before {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 50%;
}
.subsidy-card.is-digital .subsidy-card__block--title::before {
  background: #CD457F;
}
.subsidy-card.is-small .subsidy-card__block--title::before {
  background: #0099CF;
}
.subsidy-card__list {
  font-size: 1.3rem;
  color: #444;
  line-height: 1.7;
}
.subsidy-card__list li {
  position: relative;
  padding-left: 1.4rem;
  margin-bottom: 0.5rem;
}
.subsidy-card__list li::before {
  content: "・";
  position: absolute;
  left: 0;
}
.subsidy-card {
  /* 締切ボックス */
}
.subsidy-card__deadline {
  background: #fff;
  border-radius: 1rem;
  text-align: center;
  padding: 4rem 2rem;
  margin-top: auto;
}
.subsidy-card__deadline p {
  line-height: 1;
}
.subsidy-card__deadline--label {
  font-size: 1.5rem;
  font-weight: 700;
  margin: 0 0 0 0;
}
.subsidy-card__deadline--date {
  font-size: 2rem;
  font-weight: 700;
  color: #333;
  margin: 1rem 0;
}
.subsidy-card__deadline--note {
  font-size: 1.2rem;
  color: #666;
  margin-bottom: 0;
}
.subsidy-card__block:nth-last-child(2) {
  margin-bottom: 3rem;
}
.subsidy-card__block + .subsidy-card__deadline {
  margin-top: auto;
}
.subsidy-card.is-digital .subsidy-card__deadline--label {
  color: #CD457F;
}
.subsidy-card.is-small .subsidy-card__deadline--label {
  color: #0099CF;
}

/* ---------------------------------
   サブ見出し
--------------------------------- */
.subsidy-sub-title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  font-size: 1.8rem;
  font-weight: 700;
  color: #10425A;
  margin: 6rem 0 2rem;
}
@media screen and (max-width: 767px) {
  .subsidy-sub-title {
    font-size: 1.6rem;
    margin-top: 4.5rem;
  }
}
.subsidy-sub-title::before {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 1.2rem;
  height: 1.2rem;
  border: 2px solid #10425A;
  border-radius: 50%;
}

/* ---------------------------------
   テーブル共通
--------------------------------- */
.subsidy-table-wrap {
  overflow-x: auto;
}

.subsidy-table {
  width: 100%;
  min-width: 640px;
  border-collapse: collapse;
  background: #fff;
  border-radius: 0.8rem;
  overflow: hidden;
  font-size: 1.4rem;
}
.subsidy-table th,
.subsidy-table td {
  padding: 1.6rem 1.8rem;
  text-align: left;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  .subsidy-table th,
  .subsidy-table td {
    padding: 1.2rem 1.4rem;
  }
}
.subsidy-table thead th {
  background: #10425A;
  color: #fff;
  font-size: 1.3rem;
  font-weight: 700;
  white-space: nowrap;
}
.subsidy-table tbody tr + tr {
  border-top: 1px solid #E5E0D5;
}
.subsidy-table tbody th {
  font-weight: 700;
  color: #333;
  white-space: nowrap;
}
.subsidy-table tbody td {
  color: #444;
}

/* 補助金タグ */
.subsidy-tag {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 0.5rem;
  font-size: 1.2rem;
  font-weight: 500;
  color: #333;
  white-space: nowrap;
}
.subsidy-tag::before {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 50%;
}
.subsidy-tag.is-digital::before {
  background: #CD457F;
}
.subsidy-tag.is-small::before {
  background: #0099CF;
}

/* 実質自己負担セル */
.subsidy-table__result em {
  display: block;
  font-size: 1.7rem;
  font-style: normal;
  font-weight: 700;
  color: #CD457F;
}
.subsidy-table__result span {
  display: block;
  font-size: 1.1rem;
  color: #777;
  margin-top: 0.3rem;
}

.subsidy-note {
  font-size: 1.2rem;
  color: #10425A;
  margin-top: 1.5rem;
  line-height: 1.7;
}

/* スケジュールテーブル */
.subsidy-schedule-table {
  min-width: 560px;
  margin-bottom: 3rem;
}
.subsidy-schedule-table thead th,
.subsidy-schedule-table tbody th,
.subsidy-schedule-table tbody td {
  text-align: center;
}

/* ---------------------------------
   LP - Proposal section（当社がご提案できること）
--------------------------------- */
.proposal-block {
  margin-top: 7rem;
}
.proposal-block + .proposal-block {
  border-top: 1px dashed rgba(255, 255, 255, 0.3);
  padding-top: 7rem;
}
@media screen and (max-width: 767px) {
  .proposal-block {
    margin-top: 5rem;
  }
  .proposal-block + .proposal-block {
    padding-top: 5rem;
  }
}
.proposal-block__head {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 5rem;
}
@media screen and (max-width: 767px) {
  .proposal-block__head {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: 2.5rem;
  }
}
.proposal-block__icon {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 16rem;
  margin: 0;
}
.proposal-block__icon img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 767px) {
  .proposal-block__icon {
    width: 12rem;
    margin: 0 auto;
  }
}
.proposal-block__body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.proposal-block__body p {
  margin: 0;
}
.proposal-block__title {
  position: relative;
  z-index: 0;
  display: inline-block;
  margin: 0 0 1.5rem;
  font-size: 2.4rem;
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.15em;
}
.proposal-block__title::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: -0.5em;
  left: -0.6em;
  width: 1.2em;
  height: 1.2em;
  border-radius: 50%;
}
.proposal-block__title.is-pink::before {
  background: #CD457F;
}
.proposal-block__title.is-aqua::before {
  background: #0099CF;
}
.proposal-block__title.is-mint::before {
  background: #22A09F;
}
@media screen and (max-width: 767px) {
  .proposal-block__title {
    font-size: 2rem;
  }
}
.proposal-block__text {
  font-size: 1.6rem;
  line-height: 2;
  color: rgba(255, 255, 255, 0.85);
}
@media screen and (max-width: 767px) {
  .proposal-block__text {
    font-size: 1.3rem;
  }
}

.proposal-tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.5rem 0.5rem;
  margin: 4rem 0 0 0;
  padding: 0;
}
.proposal-tags li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  min-height: 5.4rem;
  padding: 0.5em 1.5em;
  border: 1px solid rgba(255, 255, 255, 0.3);
  border-radius: 100px;
  font-size: 1.4rem;
  color: #fff;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .proposal-tags li {
    min-height: 4.4rem;
    font-size: 1.3rem;
  }
}

/* 制作事例 */
.proposal-works {
  margin-top: 5rem;
}
.proposal-works__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  margin: 0 0 2.5rem;
  font-size: 1.5rem;
  font-weight: 700;
  color: #fff;
  letter-spacing: 0.1em;
}
.proposal-works__title::before {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 1.1rem;
  height: 1.1rem;
  border: 2px solid #fff;
  border-radius: 50%;
}
.proposal-works__list {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 3rem 1fr 3rem 1fr;
  grid-template-columns: repeat(3, 1fr);
  gap: 3rem;
  margin: 0;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .proposal-works__list {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 2.5rem;
  }
}
.proposal-works__item p {
  margin: 0;
}
.proposal-works__item:nth-child(odd) .proposal-works__thumb {
  background-color: #CD457F;
}
.proposal-works__item:nth-child(even) .proposal-works__thumb {
  background-color: #0099CF;
}
.proposal-works__thumb {
  display: block;
  position: relative;
  border-radius: 10px;
  overflow: hidden;
}
.proposal-works__thumb .btn-p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  opacity: 0;
  z-index: 2;
  margin: auto;
  width: 5.5em;
  height: 1em;
}
.proposal-works__thumb:hover .btn-p {
  opacity: 1;
}
.proposal-works__thumb:hover a img {
  opacity: 0.2;
}
.proposal-works__thumb img {
  display: block;
  border-radius: 10px;
  aspect-ratio: 10/6;
  width: 100%;
  height: auto;
  overflow: hidden;
  -o-object-fit: cover;
     object-fit: cover;
}
.proposal-works__name {
  margin-top: 1.5rem !important;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.6;
  color: #fff;
}
.proposal-works__url {
  margin-top: 0.6rem !important;
  font-size: 1.1rem;
}
.proposal-works__url a {
  color: rgba(255, 255, 255, 0.7);
  text-decoration: underline;
  text-underline-offset: 0.2em;
  word-break: break-all;
}

/* ---------------------------------
   LP - Step section（ご相談から補助金受取までの流れ）
--------------------------------- */
.step-flow {
  margin-top: 4rem;
}
.step-flow__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 3.5rem;
  padding: 5rem 0;
}
.step-flow__item + .step-flow__item {
  border-top: 1px solid rgba(255, 255, 255, 0.12);
}
@media screen and (max-width: 767px) {
  .step-flow__item {
    gap: 2rem;
    padding: 2.5rem 0;
  }
}
.step-flow__num {
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 5.5rem;
}
@media screen and (max-width: 767px) {
  .step-flow__num {
    width: 4rem;
    font-size: 4.6rem;
  }
}
.step-flow__body {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
}
.step-flow__body p {
  margin: 0;
}
.step-flow__title {
  font-size: 1.9rem;
  color: #fff;
  line-height: 1.5;
  margin-bottom: 0.8rem !important;
}
@media screen and (max-width: 767px) {
  .step-flow__title {
    font-size: 1.7rem;
  }
}
.step-flow__badge {
  display: inline-block;
  background: #CD457F;
  color: #fff;
  font-size: 1.1rem;
  letter-spacing: 0.05em;
  line-height: 1;
  padding: 1em 1.2em;
  border-radius: 2rem;
  margin-left: 1.2rem;
  vertical-align: middle;
  white-space: nowrap;
}
@media screen and (max-width: 767px) {
  .step-flow__badge {
    display: table;
    margin: 0.8rem 0 0;
    white-space: normal;
  }
}
.step-flow__text {
  font-size: 1.6rem;
  line-height: 1.9;
  color: rgba(255, 255, 255, 0.85);
}
.step-flow__text em {
  font-style: normal;
  font-weight: 700;
  color: #fff;
  text-decoration: underline;
  text-underline-offset: 0.3em;
}
@media screen and (max-width: 767px) {
  .step-flow__text {
    font-size: 1.3rem;
  }
}

/* 注意事項 */
.step-note {
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .step-note {
    margin-top: 5rem;
  }
}
.step-note__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  font-size: 1.8rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 3rem;
}
.step-note__title::before {
  content: "";
  -ms-flex-negative: 0;
      flex-shrink: 0;
  width: 1.2rem;
  height: 1.2rem;
  border: 2px solid #fff;
  border-radius: 50%;
}
@media screen and (max-width: 767px) {
  .step-note__title {
    font-size: 1.6rem;
    margin-bottom: 2rem;
  }
}
.step-note__grid {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: 1fr 2.5rem 1fr;
  grid-template-columns: repeat(2, 1fr);
  gap: 2.5rem;
}
@media screen and (max-width: 767px) {
  .step-note__grid {
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 2rem;
  }
}
.step-note__card {
  background: rgba(255, 255, 255, 0.06);
  border-radius: 1rem;
  padding: 5rem;
}
@media screen and (max-width: 767px) {
  .step-note__card {
    padding: 2.5rem 2rem;
  }
}
.step-note__card p {
  margin: 0;
}
.step-note__card--title {
  position: relative;
  font-size: 2rem;
  color: #fff;
  line-height: 1.5;
  padding-left: 2rem;
  margin-bottom: 1.2rem !important;
}
.step-note__card--title::before {
  content: "";
  position: absolute;
  top: 0.45em;
  left: 0;
  width: 1.1rem;
  height: 1.1rem;
  background: #56859D;
  border-radius: 50%;
}
.step-note__card--text {
  font-size: 1.5rem;
  line-height: 1.9;
  color: rgba(255, 255, 255, 0.8);
}

/* クロージング */
.step-closing {
  margin-top: 8rem;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .step-closing {
    margin-top: 5rem;
  }
}
.step-closing__arrow {
  width: 6.5rem;
  height: 6.5rem;
  margin: 0 auto 3rem;
  background: url("/assets/img/lp/arrow.svg") no-repeat center/contain;
}
.step-closing__title {
  font-size: 2.8rem;
  font-weight: 700;
  color: #fff;
  line-height: 1.7;
}
.step-closing__title em {
  font-style: normal;
  font-size: 1.3em;
  color: #0099CF;
}
@media screen and (max-width: 767px) {
  .step-closing__title {
    font-size: 1.5rem !important;
    letter-spacing: 0.04em;
  }
}

/* ---------------------------------
   LP - FAQ section（よくあるご質問）
--------------------------------- */
.faq-section {
  margin-top: -5vw;
}
.faq-section .wave-box__top,
.faq-section .wave-box__bottom,
.faq-section .wave-box__inner {
  background-color: #194A63;
}

.faq-list {
  margin-top: 5rem;
}
@media screen and (max-width: 767px) {
  .faq-list {
    margin-top: 3rem;
  }
}
.faq-list__item {
  padding: 4rem 0;
  margin: 0;
}
.faq-list__item + .faq-list__item {
  border-top: 1px dashed rgba(255, 255, 255, 0.3);
}
@media screen and (max-width: 767px) {
  .faq-list__item {
    padding: 3rem 0;
  }
}
.faq-list__q, .faq-list__a {
  position: relative;
  padding-left: 4.5rem;
}
.faq-list__q::before, .faq-list__a::before {
  position: absolute;
  top: 0;
  left: 0;
  font-family: "Libre Baskerville", serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.4;
}
@media screen and (max-width: 767px) {
  .faq-list__q, .faq-list__a {
    padding-left: 3.5rem;
  }
  .faq-list__q::before, .faq-list__a::before {
    font-size: 1.7rem;
  }
}
.faq-list__q {
  font-size: 2.2rem;
  color: #fff;
  line-height: 1.6;
  letter-spacing: 0.1em;
}
.faq-list__q::before {
  content: "Q.";
  color: #CD457F;
}
@media screen and (max-width: 767px) {
  .faq-list__q {
    font-size: 1.6rem;
  }
}
.faq-list__a {
  font-size: 1.6rem;
  line-height: 2;
  color: rgba(255, 255, 255, 0.85);
  margin: 2rem 0 0;
}
.faq-list__a::before {
  content: "A.";
  color: #0099CF;
}
.faq-list__a strong {
  font-weight: 700;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .faq-list__a {
    font-size: 1.3rem;
    margin-top: 1.5rem;
  }
}

.contact-us__title {
  line-height: 1.5 !important;
}