/* ==============================================
   LP03
   ============================================== */

/* --- FV --- */
.lp03-fv {
  position: relative;
  min-height: 100vh;
  background-image: url('../lp-img/fv03.png');
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
}

.lp03-fv__inner {
  width: 100%;
  max-width: 1160px;
  margin: 0 auto;
  padding: 0 20px;
  text-align: center;
}

.lp03-fv__label {
  display: inline-block;
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 600;
  font-size: 24px;
  line-height: 1.2;
  letter-spacing: 0.02em;
  text-align: center;
  color: #333;
  background: #fff;
  padding: 6px 16px;
  margin-bottom: 20px;
}

.lp03-fv__title {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 72px;
  line-height: 1.2;
  letter-spacing: 0.02em;
  text-align: center;
  background: linear-gradient(88.65deg, #FFFFFF 7.76%, #D3D3D3 27.32%, #FFFFFF 51.46%, #D0D0D0 71.85%, #FFFFFF 94.32%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  filter: drop-shadow(0px 1px 7px rgba(0, 0, 0, 0.25));
  margin-bottom: 29px;
}

.lp03-fv__sub {
  display: inline-block;
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 1.8;
  letter-spacing: 0.06em;
  text-align: center;
  color: #E6E6E6;
  margin-bottom: 32px;
}

/* --- FV Stats --- */
.lp03-fv__stats {
  display: flex;
  justify-content: center;
  gap: 48px;
  margin-bottom: 40px;
}

.lp03-fv__stat {
  position: relative;
  width: 156px;
  height: 156px;
  border-radius: 1000px;
  border: 3px solid transparent;
  background: linear-gradient(#161F37, #161F37) padding-box,
              linear-gradient(85.77deg, #4258FF 1.28%, #29A9FF 95.07%) border-box;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding-top: 18px;
  box-sizing: border-box;
}

.lp03-fv__stat::after {
  content: '';
  position: absolute;
  top: 38px;
  left: 62px;
  width: 32px;
  border-top: 3px solid #999999;
}

.lp03-fv__stat-text {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 1.3;
  letter-spacing: 0.02em;
  text-align: center;
  color: #fff;
}

.lp03-fv__stat-text span {
  font-size: 24px;
  line-height: 1.3;
  letter-spacing: 0.02em;
  display: block;
}

.lp03-fv__cta {
  display: flex;
  justify-content: center;
  gap: 24px;
}

/* --- STRENGTH --- */
.lp03-strength {
  background: #040A20;
  padding-bottom: 100px;
}

.lp03-strength__inner {
  max-width: 1320px;
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.lp03-strength__header {
  margin-bottom: 24px;
}

.lp03-strength__header::before {
  width: 600px;
  background: #fff;
}

.lp03-strength__label {
  background-image: linear-gradient(46.7deg, #1005B8 -2.66%, #0092D6 94.53%), linear-gradient(#040A20, #040A20);
}

.lp03-strength__title {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 48px;
  line-height: 1.4;
  letter-spacing: 0.04em;
  color: #fff;
  margin-bottom: 32px;
}

.lp03-strength__lead {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 400;
  font-size: 15px;
  line-height: 1.8;
  letter-spacing: 0.04em;
  color: #fff;
  margin-bottom: 56px;
}

.lp03-strength__lead span {
  color: #24DAFF;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.8;
  letter-spacing: 0.96px;
}

.lp03-strength__grid {
  display: grid;
  grid-template-columns: 3fr 2fr;
  gap: 48px;
  align-items: center;
}

.lp03-strength__cards {
  display: flex;
  flex-direction: column;
  gap: 16px;
}

.lp03-strength__card {
  display: flex;
  align-items: center;
  gap: 40px;
  background: #FAFAFA;
  border-radius: 2px;
  padding: 24px 32px;
  align-self: stretch;
}

.lp03-strength__card-num {
  font-family: "Fustat", sans-serif;
  font-weight: 400;
  font-size: 72px;
  line-height: 1;
  letter-spacing: 0;
  background: linear-gradient(47deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  flex-shrink: 0;
}

.lp03-strength__card-h3 {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 21px;
  line-height: 1.4;
  letter-spacing: 1.26px;
  background: linear-gradient(47deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 16px;
}

.lp03-strength__card-text {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.9;
  letter-spacing: 0.96px;
  color: #333;
}

.lp03-strength__img {
  display: flex;
  align-items: center;
  justify-content: center;
}

.lp03-strength__img img {
  width: 100%;
  max-width: 480px;
  height: auto;
}

/* --- PRICE --- */
.lp03-price {
  background: #040A20;
  padding: 80px 0 100px;
}

.lp03-price__inner {
  max-width: 1160px;
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.lp03-price__title {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 600;
  font-size: 44px;
  line-height: 75px;
  text-align: center;
  color: #fff;
  margin-bottom: 54px;
}

.lp03-price .lp-section-label--line::before,
.lp03-price .lp-section-label--line::after {
  height: 2px;
  opacity: 0.7;
}

.lp03-price__initial {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 48px;
  width: 686px;
  height: 96px;
  margin: 0 auto 56px;
  background: #FFF;
  border-radius: 8px;
  box-sizing: border-box;
}

.lp03-price__initial-tag {
  display: inline-flex;
  padding: 6px 16px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  border-radius: 32px;
  background: rgba(136, 160, 193, 0.15);
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 16px;
  color: #3A3A3A;
  text-align: center;
  white-space: nowrap;
}

.lp03-price__initial-text {
  display: flex;
  align-items: center;
  gap: 20px;
}

.lp03-price__plus {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 400;
  font-size: 32px;
  line-height: 24px;
  letter-spacing: 2px;
  color: #464646;
  text-align: center;
}

.lp03-price__plan {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 400;
  font-size: 20px;
  line-height: 24px;
  letter-spacing: 1px;
  color: #464646;
  text-align: center;
}

.lp03-price__initial-text strong {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-size: 32px;
  font-weight: 600;
  line-height: 32px;
  letter-spacing: 2px;
  color: #0F172B;
}

.lp03-price__yen {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 600;
  font-size: 24px;
  line-height: 32px;
  letter-spacing: 2px;
  color: #0F172B;
}

.lp03-price__sub-label {
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 32px !important;
  letter-spacing: 3px !important;
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: none !important;
  margin-bottom: 32px !important;
}

.lp03-price__sub-label::before,
.lp03-price__sub-label::after {
  width: 83px !important;
  height: 1px !important;
  background: #fff !important;
  opacity: 1 !important;
}

.lp03-price__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 46px;
}

.lp03-price__card {
  position: relative;
  overflow: hidden;
  background: #F7F7F7;
  border-radius: 8px;
  padding: 32px 32px;
  border: 1px solid rgba(164, 172, 183, 0.50);
}

.lp03-price__card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 14px;
}

.lp03-price__card:first-child::before {
  background: #BFCBDF;
}

.lp03-price__card--featured::before {
  background: linear-gradient(90deg, #33ADFF 9.54%, #576AFF 47.17%, #33ADFF 91.16%);
}

.lp03-price__card:last-child::before {
  background: #1C35A8;
}

.lp03-price__card--featured {
  background: #F7F7F7;
  border-radius: 8px;
  border: 1px solid rgba(164, 172, 183, 0.50);
}

.lp03-price__card:last-child {
  background: #FFF;
}

.lp03-price__plan-name {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 600;
  font-size: 18px;
  line-height: 180%;
  letter-spacing: 1.08px;
  color: #040A20;
  text-align: center;
  margin-bottom: 16px;
}

.lp03-price__amount {
  display: flex;
  align-items: baseline;
  justify-content: center;
  gap: 4px;
  color: #fff;
  margin-bottom: 16px;
}

.lp03-price__unit,
.lp03-price__suffix {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 20px;
  color: #464646;
}

.lp03-price__num {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 600;
  font-size: 48px;
  line-height: 48px;
  color: #040A20;
}

.lp03-price__tags {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid #D3D3D3;
}

.lp03-price__card:first-child .lp03-price__tag {
  margin-bottom: 30px;
}

.lp03-price__tag {
  display: inline-flex;
  padding: 4px 16px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  border-radius: 32px;
  background: rgba(136, 160, 193, 0.15);
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 16px;
  color: #3A3A3A;
  text-align: center;
}

.lp03-price__feature-label {
  display: table;
  margin: 0 auto 16px;
  padding: 0 8px;
  border-radius: 32px;
  background: linear-gradient(47deg, #1005B8 -2.66%, #0092D6 94.53%);
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 180%;
  letter-spacing: 0.84px;
  color: #fff;
  text-align: center;
}

.lp03-price__list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.lp03-price__list li {
  position: relative;
  padding-left: 24px;
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 180%;
  letter-spacing: 0.84px;
  color: #333;
}

.lp03-price__list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 2px;
  width: 18px;
  height: 24px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxOCIgaGVpZ2h0PSIyNCIgdmlld0JveD0iMCAwIDE4IDI0IiBmaWxsPSJub25lIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTkgMjFDMTAuMTgxOSAyMSAxMS4zNTIyIDIwLjc2NzIgMTIuNDQ0MiAyMC4zMTQ5QzEzLjUzNjEgMTkuODYyNiAxNC41MjgyIDE5LjE5OTcgMTUuMzY0IDE4LjM2NEMxNi4xOTk3IDE3LjUyODIgMTYuODYyNiAxNi41MzYxIDE3LjMxNDkgMTUuNDQ0MkMxNy43NjcyIDE0LjM1MjIgMTggMTMuMTgxOSAxOCAxMkMxOCAxMC44MTgxIDE3Ljc2NzIgOS42NDc3OCAxNy4zMTQ5IDguNTU1ODVDMTYuODYyNiA3LjQ2MzkyIDE2LjE5OTcgNi40NzE3NyAxNS4zNjQgNS42MzYwNEMxNC41MjgyIDQuODAwMzEgMTMuNTM2MSA0LjEzNzM4IDEyLjQ0NDIgMy42ODUwOEMxMS4zNTIyIDMuMjMyNzkgMTAuMTgxOSAzIDkgM0M2LjYxMzA1IDMgNC4zMjM4NyAzLjk0ODIxIDIuNjM2MDQgNS42MzYwNEMwLjk0ODIxMiA3LjMyMzg3IDAgOS42MTMwNSAwIDEyQzAgMTQuMzg2OSAwLjk0ODIxMiAxNi42NzYxIDIuNjM2MDQgMTguMzY0QzQuMzIzODcgMjAuMDUxOCA2LjYxMzA1IDIxIDkgMjFaTTguNzY4IDE1LjY0TDEzLjc2OCA5LjY0TDEyLjIzMiA4LjM2TDcuOTMyIDEzLjUxOUw1LjcwNyAxMS4yOTNMNC4yOTMgMTIuNzA3TDcuMjkzIDE1LjcwN0w4LjA2NyAxNi40ODFMOC43NjggMTUuNjRaIiBmaWxsPSJ1cmwoI3BhaW50MF9saW5lYXJfNDgwXzI4MzgpIi8+PGRlZnM+PGxpbmVhckdyYWRpZW50IGlkPSJwYWludDBfbGluZWFyXzQ4MF8yODM4IiB4MT0iOS43Mjg0MmUtMDciIHkxPSIyMS45ODYzIiB4Mj0iMTguNTM1MiIgeTI9IjQuNTIwNDIiIGdyYWRpZW50VW5pdHM9InVzZXJTcGFjZU9uVXNlIj48c3RvcCBzdG9wLWNvbG9yPSIjMTAwNUI4Ii8+PHN0b3Agb2Zmc2V0PSIwLjk3MDk1OSIgc3RvcC1jb2xvcj0iIzAwOTJENiIvPjwvbGluZWFyR3JhZGllbnQ+PC9kZWZzPjwvc3ZnPg==");
  background-repeat: no-repeat;
  background-size: 18px 24px;
}

.lp03-price__list li small {
  display: block;
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 180%;
  letter-spacing: 0.84px;
  color: #333;
  margin-top: 2px;
}

/* --- CREATIVE --- */
.lp03-creative {
  background: #F5F5F5;
  padding: 80px 0 100px;
}

.lp03-creative__inner {
  max-width: 1160px;
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.lp03-creative__title {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 36px;
  line-height: 1.5;
  letter-spacing: 0.04em;
  text-align: center;
  background: linear-gradient(46.7deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 56px;
}

.lp03-creative__block {
  margin-bottom: 48px;
}

.lp03-creative__block:last-child {
  margin-bottom: 0;
}

.lp03-creative__block-head {
  display: flex;
  align-items: baseline;
  gap: 16px;
  margin-bottom: 20px;
}

.lp03-creative__block-type {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 18px;
  letter-spacing: 0.04em;
  color: #333;
}

.lp03-creative__block-platform {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 400;
  font-size: 14px;
  letter-spacing: 0.04em;
  color: #666;
}

.lp03-creative__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}

.lp03-creative__grid img {
  width: 100%;
  height: auto;
  border-radius: 4px;
  display: block;
}

.lp03-creative__video img {
  width: 100%;
  height: auto;
  border-radius: 4px;
  display: block;
}

/* --- REASON --- */
.lp03-reason {
  background: #FCFCFC;
  padding-bottom: 100px;
}

.lp03-reason__inner {
  max-width: 1160px;
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.lp03-reason__content {
  display: grid;
  grid-template-columns: 1fr 400px;
  gap: 60px;
  align-items: start;
}

.lp03-reason__header {
  margin-bottom: 20px;
}

.lp03-reason__header::before {
  width: 600px;
  background: linear-gradient(46.7deg, #1005B8 -2.66%, #0092D6 94.53%);
}

.lp03-reason__label {
  background-image: linear-gradient(46.7deg, #1005B8 -2.66%, #0092D6 94.53%), linear-gradient(#FCFCFC, #FCFCFC);
}

.lp03-reason__title {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 32px;
  line-height: 1.4;
  letter-spacing: 0.04em;
  color: #333;
  white-space: nowrap;
  margin-bottom: 16px;
}

.lp03-reason__lead {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 500;
  font-size: 17px;
  line-height: 180%;
  letter-spacing: 1.08px;
  color: #333;
  white-space: nowrap;
  margin-bottom: 40px;
}

.lp03-reason__items {
  display: flex;
  flex-direction: column;
  gap: 24px;
}

.lp03-reason__item-head {
  display: flex;
  align-items: flex-start;
  gap: 16px;
  margin-bottom: 10px;
}

.lp03-reason__num {
  font-family: "Fustat", sans-serif;
  font-weight: 400;
  font-size: 40px;
  line-height: 1;
  letter-spacing: 0;
  background: linear-gradient(46.7deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  flex-shrink: 0;
  padding-top: 2px;
  position: relative;
}

.lp03-reason__num::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  height: 151px;
  background: #ABBCD4;
}

.lp03-reason__item-title {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 20px;
  line-height: 120%;
  letter-spacing: 1.44px;
  background: linear-gradient(47deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  padding-top: 6px;
  margin-bottom: 28px;
}

.lp03-reason__item-body {
  display: inline-flex;
  width: 80%;
  margin-left: 70px;
  padding: 10px 16px;
  justify-content: center;
  align-items: center;
  gap: 8px;
  border-radius: 8px;
  border: 1px solid #BDBDBD;
  background: #FFF;
  box-sizing: border-box;
}

.lp03-reason__item-body p {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.8;
  letter-spacing: 0.04em;
  color: #333;
}

.lp03-reason__item-body span {
  background: linear-gradient(46.7deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: 600;
}

.lp03-reason__right {
  align-self: end;
}

.lp03-reason__right img {
  width: 100%;
  height: auto;
  border-radius: 8px;
  position: sticky;
  top: 80px;
}

/* --- CTA --- */
.lp03-cta {
  background-color: #080C17;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.04) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
  background-size: 60px 60px;
  padding: 120px 0 104px;
  text-align: center;
}

.lp03-cta__inner {
  max-width: 1160px;
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.lp03-cta__title {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 40px;
  line-height: 1.5;
  letter-spacing: 0.06em;
  text-align: center;
  background: linear-gradient(88.65deg, #FFFFFF 7.76%, #D3D3D3 27.32%, #FFFFFF 51.46%, #D0D0D0 71.85%, #FFFFFF 94.32%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 60px;
}

.lp03-cta__title span.strong {
  background-image: linear-gradient(90deg, #4258FF 0%, #29A9FF 100%), linear-gradient(#fff, #fff);
  -webkit-background-clip: text, padding-box;
  background-clip: text, padding-box;
  -webkit-text-fill-color: transparent;
  padding: 2px 8px;
}

.lp03-cta__btns {
  display: flex;
  justify-content: center;
  gap: 24px;
}

/* --- SERVICE --- */
.lp03-service {
  background: #F1F5F9;
  padding: 80px 0 calc(184px + 40px);
/*  padding: 80px 0 calc(13.4vw + 100px);*/
}
@media (max-width: 768px) {
  .lp03-service {
    padding: 60px 0 calc(13.4vw + 60px);
  }
}
.lp03-service__inner {
  max-width: 1160px;
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.lp03-service__title {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 40px;
  line-height: 1.4;
  letter-spacing: 0.06em;
  text-align: center;
  color: #333;
  margin-bottom: 48px;
}

.lp03-service__cards {
  display: flex;
  flex-direction: column;
  gap: 32px;
}

.lp03-service__card {
  background: #fff;
  border-radius: 8px;
  padding: 32px 40px 40px;
}

.lp03-service__num {
  font-family: "Fustat", sans-serif;
  font-weight: 400;
  font-size: 72px;
  line-height: 1;
  letter-spacing: 0;
  color: #CCCCCC;
  margin-bottom: 4px;
}

.lp03-service__h3 {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 28px;
  line-height: 140%;
  letter-spacing: 1.68px;
  background: linear-gradient(47deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 24px;
}

.lp03-service__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}

.lp03-service__item {
  display: flex;
  align-items: center;
  gap: 12px;
  border-radius: 4px;
  border: 1px solid #CCC;
  background: #FAFAFA;
  padding: 16px;
}

.lp03-service__icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}

.lp03-service__item-body {
  flex: 1;
}

.lp03-service__item-title {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #333;
  margin-bottom: 4px;
}

.lp03-service__item-desc {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 400;
  font-size: 12px;
  line-height: 1.5;
  letter-spacing: 0.04em;
  color: #666;
}

/* SERVICE — さらに！ */
.lp03-service__more {
  position: relative;
  border-radius: 8px;
  background: #fff;
  padding: 32px 40px 68px;
  overflow: hidden;
  margin-bottom: 72px;
}

.lp03-service__more::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 23px;
  background: linear-gradient(63deg, #1005B8 14.32%, #0092D6 47.02%, #1005B8 83.03%);
}

.lp03-service__more-title {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 1.4;
  letter-spacing: 0.06em;
  text-align: center;
  background: linear-gradient(46.7deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 16px;
}

.lp03-service__more-lead {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: 0.04em;
  color: #333;
  text-align: center;
  margin-bottom: 32px;
}

.lp03-service__more-lead span {
  background: linear-gradient(46.7deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: 600;
}

.lp03-service__more-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 26px;
}

.lp03-service__more-panel {
  border-radius: 4px;
  overflow: hidden;
  background: #F0F3FA;
}

.lp03-service__more-head {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  background: #0D1540;
  padding: 12px 16px;
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 600;
  font-size: 20px;
  line-height: 20px;
  color: #fff;
  text-align: center;
}

.lp03-service__more-icon {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}

.lp03-service__more-list {
  padding: 16px 20px;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.lp03-service__more-list li {
  position: relative;
  padding-left: 18px;
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 500;
  font-size: 18px;
  line-height: 32px;
  color: #000;
}

.lp03-service__more-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 7px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: linear-gradient(46.7deg, #1005B8 -2.66%, #0092D6 94.53%);
}

/* SERVICE — SNS媒体選定 */
.lp03-service__sns {
  margin-top: 48px;
}

.lp03-service__sns-title {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 28px;
  line-height: 1.4;
  letter-spacing: 0.04em;
  text-align: center;
  color: #333;
  margin-bottom: 32px;
}

.lp03-service__sns-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}

.lp03-service__sns-card {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background-size: cover;
  background-position: center;
  padding: 32px 24px 24px;
  display: flex;
  flex-direction: column;
  align-items: center;
  min-height: 320px;
}


.lp03-service__sns-icon {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  object-fit: cover;
  margin-bottom: 16px;
}

.lp03-service__sns-name {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 22px;
  letter-spacing: 0.04em;
  color: #fff;
  text-align: center;
  margin-bottom: 10px;
}

.lp03-service__sns-desc {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 400;
  font-size: 13px;
  line-height: 1.6;
  letter-spacing: 0.04em;
  color: #fff;
  text-align: center;
  min-height: calc(1.6em * 2);
  margin-bottom: 15px;
}

.lp03-service__sns-stat {
  display: inline-flex;
  flex-direction: column;
  padding: 3px 54px 3px 46px;
  align-items: center;
  background: rgba(0, 0, 0, 0.20);
  border-radius: 16777200px;
}

.lp03-service__sns-stat-label,
.lp03-service__sns-stat-num {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 600;
  font-size: 20px;
  line-height: 28px;
  letter-spacing: 1px;
  color: #fff;
  text-align: center;
}

/* --- UTILIZATION --- */
.lp03-utilization {
  background: #E8E9EE;
  padding-bottom: 100px;
}

.lp03-utilization__inner {
  max-width: 1160px;
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.lp03-utilization__header {
  margin-bottom: 24px;
}

.lp03-utilization__header::before {
  width: 600px;
  background: linear-gradient(46.7deg, #1005B8 -2.66%, #0092D6 94.53%);
}

.lp03-utilization__label {
  background-image: linear-gradient(46.7deg, #1005B8 -2.66%, #0092D6 94.53%), linear-gradient(#E8E9EE, #E8E9EE);
}

.lp03-utilization__title {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 40px;
  line-height: 1.4;
  letter-spacing: 0.04em;
  color: #333;
  margin-bottom: 48px;
}

.lp03-utilization__sub {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 32px;
  letter-spacing: 0;
  background: linear-gradient(47deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 36px;
}

.lp03-utilization__sub {
  display: flex;
  align-items: center;
  gap: 8px;
}

.lp03-utilization__sub::before {
  content: '';
  display: block;
  width: 11px;
  height: 11px;
  flex-shrink: 0;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMSIgaGVpZ2h0PSIxMSIgdmlld0JveD0iMCAwIDExIDExIiBmaWxsPSJub25lIj48Y2lyY2xlIGN4PSI1LjUiIGN5PSI1LjUiIHI9IjUuNSIgZmlsbD0idXJsKCNwYWludDBfbGluZWFyXzU4M181ODQzKSIvPjxkZWZzPjxsaW5lYXJHcmFkaWVudCBpZD0icGFpbnQwX2xpbmVhcl81ODNfNTg0MyIgeDE9IjUuOTQ1MTRlLTA3IiB5MT0iMTEuNjAyNyIgeDI9IjExLjMyNzEiIHkyPSIwLjkyOTE0NyIgZ3JhZGllbnRVbml0cz0idXNlclNwYWNlT25Vc2UiPjxzdG9wIHN0b3AtY29sb3I9IiMxMDA1QjgiLz48c3RvcCBvZmZzZXQ9IjAuOTcwOTU5IiBzdG9wLWNvbG9yPSIjMDA5MkQ2Ii8+PC9saW5lYXJHcmFkaWVudD48L2RlZnM+PC9zdmc+");
  background-repeat: no-repeat;
  background-size: 11px 11px;
}

/* Bar chart */
.lp03-utilization__bars {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px 48px;
  margin-bottom: 81px;
}

.lp03-utilization__bar-item {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.lp03-utilization__bar-item:nth-child(n+3) {
  align-self: end;
}

.lp03-utilization__bar-meta {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 8px;
}

.lp03-utilization__bar-label {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 600;
  font-size: 20px;
  line-height: 24px;
  letter-spacing: 0;
  color: #333;
}

.lp03-utilization__bar-pct {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 40px;
  line-height: 40px;
  background: linear-gradient(47deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  white-space: nowrap;
  flex-shrink: 0;
}

.lp03-utilization__bar-pct small {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-size: 18px;
  font-weight: 500;
  line-height: 28px;
  color: #333;
  -webkit-text-fill-color: #333;
}

.lp03-utilization__bar-track {
  height: 24px;
  background: rgba(0, 0, 0, 0.9);
  border-radius: 16777200px;
  overflow: hidden;
  position: relative;
}

.lp03-utilization__bar-track::before {
  content: '';
  position: absolute;
  inset: 0;
  opacity: 0.1;
  pointer-events: none;
  background: linear-gradient(45deg, #000 25%, rgba(0, 0, 0, 0.00) 25%, rgba(0, 0, 0, 0.00) 50%, #000 50%, #000 75%, rgba(0, 0, 0, 0.00) 75%, rgba(0, 0, 0, 0.00) 100%);
}

.lp03-utilization__bar-fill {
  height: 100%;
  background: linear-gradient(47deg, #1005B8 -2.66%, #0092D6 94.53%);
  border-radius: 16777200px;
}

/* Comments */
.lp03-utilization__comments {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}

.lp03-utilization__comment {
  display: flex;
  width: 562px;
  padding: 16px 24px 25px 24px;
  flex-direction: column;
  align-items: flex-end;
  border-radius: 6px;
  border: 1px solid rgba(164, 172, 183, 0.70);
  background: #FFF;
  box-sizing: border-box;
}

.lp03-utilization__quote {
  flex-shrink: 0;
  line-height: 1;
}

.lp03-utilization__quote svg {
  display: block;
}

.lp03-utilization__comment-body {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  width: 100%;
}

.lp03-utilization__avatar {
  width: 62px;
  height: 62px;
  aspect-ratio: 1 / 1;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
}

.lp03-utilization__comment-body p {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 500;
  font-size: 14px;
  line-height: 180%;
  letter-spacing: 0.84px;
  color: #333;
}

.lp03-utilization__underline {
  display: inline;
  background-image: linear-gradient(47deg, #1005B8 -2.66%, #0092D6 94.53%);
  background-position: 0 100%;
  background-repeat: no-repeat;
  background-size: 100% 2px;
  -webkit-box-decoration-break: clone;
  box-decoration-break: clone;
  padding-bottom: 2px;
}

.lp03-utilization__comment-body p span:not(.lp03-utilization__underline) {
  background: linear-gradient(46.7deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: 600;
}

/* --- RESULT --- */
.lp03-result {
  background: #F1F5F9;
  padding: 80px 0 calc(184px + 40px);
/*  padding: 80px 0 calc(13.4vw + 100px);*/
}
@media (max-width: 768px) {
  .lp03-result {
    padding: 60px 0 calc(13.4vw + 60px);
  }
}
.lp03-result__inner {
  max-width: 1320px;
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.lp03-result__title {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 40px;
  line-height: 1.4;
  letter-spacing: 0.06em;
  text-align: center;
  color: #333;
  margin-bottom: 48px;
}

.lp03-result__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
}

.lp03-result__card {
  background: #FFF;
  border: 1px solid rgba(164, 172, 183, 0.50);
  border-radius: 8px;
  padding: 24px 28px 32px;
  margin: 0 5px;
}

.lp03-result__num {
  font-family: "Fustat", sans-serif;
  font-weight: 400;
  font-size: 72px;
  line-height: 1;
  letter-spacing: 0;
  background: linear-gradient(47deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 21px;
}

.lp03-result__h3 {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 24px;
  line-height: 1.4;
  letter-spacing: 1.44px;
  background: linear-gradient(47deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 49px;
}

.lp03-result__text {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 500;
  font-size: 14px;
  line-height: 1.8;
  letter-spacing: 0.84px;
  color: #333;
}

.lp03-result__text span {
  background: linear-gradient(47deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.84px;
}

/* --- CASE --- */
.lp03-case {
  background: #fff;
  padding: 80px 0 100px;
}

.lp03-case__inner {
  max-width: 1300px;
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.lp03-case__title {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 600;
  font-size: 44px;
  line-height: 160%;
  letter-spacing: 2.64px;
  text-align: center;
  color: #040A20;
  margin-bottom: 48px;
}

.lp03-case__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}

.lp03-case__card {
  position: relative;
  border-radius: 4px;
  overflow: hidden;
  background: linear-gradient(160deg, #2B4FD4 0%, #0A1A5C 100%);
  background-size: cover;
  background-position: center;
  padding: 20px 20px 24px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 180px;
}

.lp03-case__card::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 4px;
  border: 1px solid #E6E6E6;
  background: linear-gradient(47deg, #1005B8 -2.66%, #0092D6 94.53%);
}

.lp03-case__card::after {
  content: '';
  position: absolute;
  top: 6px;
  right: 9px;
  width: 120px;
  height: 120px;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="120" height="120" viewBox="0 0 120 120" fill="none"><g opacity="0.2" clip-path="url(%23clip0_480_3019)"><path d="M48.5396 5.5957V31.1939C48.5396 32.8345 47.214 34.1566 45.5806 34.1566H44.7896C43.1562 34.1566 41.8269 32.8345 41.8269 31.1939V5.47851C41.8269 1.25977 38.9888 0 36.2677 0C33.5466 0 30.7086 1.25977 30.7086 5.47851V31.1939C30.7086 32.8345 29.3792 34.1566 27.7458 34.1566H26.9548C25.3215 34.1566 23.9958 32.8345 23.9958 31.1939V5.5957C23.9958 -1.95563 13.2291 -1.69922 13.2291 5.67984C13.2291 14.5165 13.2291 30.1244 13.2291 30.1244C13.1778 43.6962 16.4225 47.2228 21.7765 51.4526C26.0942 54.8583 29.7819 56.8101 29.7819 65.2697V119.689H42.7531V65.2697C42.7531 56.8101 46.4408 54.8583 50.7584 51.4526C56.116 47.2228 59.3572 43.6962 59.3058 30.1244C59.3058 30.1244 59.3058 14.5165 59.3058 5.67984C59.3061 -1.69922 48.5396 -1.95563 48.5396 5.5957Z" fill="white"/><path d="M90.2881 8.14476C87.5342 15.8681 79.6058 33.9626 79.104 49.9441C78.3275 74.7513 93.529 71.0819 93.8 87.3342V119.839H106.709L106.771 120C106.771 120 106.771 119.935 106.771 119.839C106.771 117.667 106.771 91.8021 106.771 65.4166C106.771 39.3169 106.771 12.7298 106.771 8.14499C106.771 -1.2743 94.5762 -3.87422 90.2881 8.14476Z" fill="white"/></g><defs><clipPath id="clip0_480_3019"><rect width="120" height="120" fill="white"/></clipPath></defs></svg>');
  background-repeat: no-repeat;
  background-size: contain;
  pointer-events: none;
}

/* 建設カード (2番目) */
.lp03-case__card:nth-child(2)::after {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="120" height="120" viewBox="0 0 120 120" fill="none"><g opacity="0.2"><path d="M34.1092 88.6658C31.604 86.971 28.5472 85.9747 25.3025 85.9766C23.1444 85.9766 21.0615 86.4158 19.175 87.2159C16.3408 88.4105 13.9497 90.4053 12.2507 92.9129C10.5519 95.4202 9.5556 98.4751 9.55958 101.722C9.55747 103.882 9.9988 105.965 10.7971 107.851C11.9959 110.681 13.9886 113.077 16.4961 114.775C19.0056 116.472 22.0583 117.468 25.3028 117.465C27.4651 117.465 29.5478 117.024 31.4345 116.225C34.2646 115.027 36.6618 113.038 38.3565 110.528C40.0534 108.019 41.05 104.964 41.05 101.722C41.05 99.5612 40.607 97.4764 39.8082 95.5918C38.6115 92.7601 36.621 90.3648 34.1092 88.6658ZM31.0037 104.127C30.5401 105.232 29.7479 106.186 28.7596 106.853C27.7651 107.521 26.6015 107.904 25.3028 107.907C24.4351 107.907 23.6366 107.731 22.8974 107.421C21.7949 106.955 20.8391 106.165 20.1716 105.175C19.5041 104.18 19.1181 103.02 19.1181 101.722C19.1181 100.852 19.2915 100.054 19.604 99.3144C20.0697 98.2098 20.8597 97.2561 21.8481 96.5886C22.8425 95.9188 24.0062 95.5372 25.3028 95.5348C26.1707 95.5348 26.9729 95.7106 27.7082 96.0188C28.8128 96.4864 29.7704 97.2744 30.434 98.2627C31.1038 99.2572 31.4854 100.421 31.4917 101.722C31.4875 102.588 31.3161 103.388 31.0037 104.127Z" fill="white"/><path d="M106.1 19.9033C103.742 19.9033 101.506 20.6529 99.6765 21.9576C97.8451 23.2603 96.4034 25.1306 95.6335 27.3604L81.8181 67.353C81.773 67.4899 81.6772 67.6022 81.5485 67.6715L41.8848 88.7175L45.8359 96.1682L65.7259 85.616L72.3641 98.8964C73.4035 100.979 75.9395 101.827 78.0242 100.783C80.1087 99.7415 80.952 97.2056 79.9088 95.1248L73.1766 81.6625L85.0911 75.341L85.5036 75.1204C87.5148 74.0526 89.0483 72.2618 89.7917 70.1076L103.607 30.115C103.793 29.5802 104.13 29.1433 104.569 28.8267C105.012 28.5164 105.533 28.3408 106.1 28.3408H120V19.9033H106.1Z" fill="white"/><path d="M32.5723 83.1637H39.8721L74.4516 64.562L83.5055 37.6152H0L15.2344 71.9008C18.281 78.749 25.0763 83.1637 32.5723 83.1637Z" fill="white"/><path d="M52.2375 9.00203L43.5206 18.5641L31.7121 2.53516L10.9033 32.3406H70.5124L52.2375 9.00203Z" fill="white"/></g></svg>');
}

/* 介護カード (3番目) */
.lp03-case__card:nth-child(3)::after {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="120" height="120" viewBox="0 0 120 120" fill="none"><g opacity="0.2"><path d="M50.9979 36.9719C56.4269 35.5873 59.7009 30.0586 58.3125 24.6258C56.9278 19.1981 51.3991 15.9227 45.9679 17.3109C40.5389 18.6994 37.2665 24.2245 38.655 29.6555C40.0399 35.0866 45.5688 38.3604 50.9979 36.9719Z" fill="white"/><path d="M60.6496 66.8643L59.9643 74.046C61.1718 74.8504 62.283 75.7539 63.2685 76.7357C67.3255 80.7976 69.5589 86.195 69.5605 91.9297C69.5589 97.6644 67.3255 103.06 63.2685 107.124C59.2047 111.179 53.811 113.414 48.0726 113.418C42.3379 113.414 36.9407 111.179 32.8785 107.124C30.3112 104.553 28.447 101.375 27.4422 97.8845L23.7812 105.959C28.795 114.621 38.0875 119.996 48.0726 119.999C63.5472 119.996 76.142 107.404 76.1437 91.93C76.142 81.3889 70.0769 71.6085 60.6496 66.8643Z" fill="white"/><path d="M53.9437 77.0859L56.5199 50.0957C56.9355 45.5434 54.1923 41.5523 49.6382 41.137C46.7195 40.8691 43.5913 42.3444 41.7517 44.2832L29.0788 56.7571L15.8165 57.8723C13.6841 58.0516 12.0454 59.8323 12.0454 61.9698V62.2183C12.0454 64.4889 13.8883 66.332 16.161 66.332H29.8246C31.1099 66.332 32.3563 65.9219 33.3895 65.1585L38.9146 61.0804L37.7249 74.2434L20.4004 75.5076C15.3707 75.7063 13.153 77.7231 11.2605 82.2381L3.085 104.702C1.84586 107.456 3.07609 110.696 5.8314 111.934C8.59047 113.175 11.8272 111.943 13.0647 109.189L22.2789 89.5084H39.9461C48.8324 89.4107 53.031 85.6804 53.9437 77.0859Z" fill="white"/><path d="M99.6894 19.9807C105.118 18.5961 108.392 13.0674 107.004 7.63457C105.619 2.20692 100.091 -1.06848 94.6595 0.318088C89.2285 1.70817 85.9581 7.23332 87.3449 12.6645C88.7317 18.0954 94.2585 21.3692 99.6894 19.9807Z" fill="white"/><path d="M116.63 68.4338L112.019 32.5524C110.84 23.6115 100.49 21.4951 94.606 26.9049L80.2536 39.8476L66.5187 45.0142C64.4061 45.7902 63.2717 48.0859 63.9409 50.2358L63.9905 50.4008C64.6475 52.5135 66.8241 53.7634 68.9813 53.2646L79.5575 50.3654C81.823 49.8435 83.9748 48.9095 85.9011 47.6101L91.0766 44.4357L93.9723 67.0224C94.1337 68.267 91.8685 73.8048 91.5008 75.1395L79.9128 111.286C79.0002 114.114 80.5447 117.15 83.3712 118.078L83.5665 118.14C86.2405 119.019 89.1378 117.7 90.2333 115.111L103.261 83.5515L106.402 115.069C106.661 118.03 109.268 120.225 112.232 119.982L112.438 119.964C115.242 119.729 117.397 117.388 117.397 114.577L116.63 68.4338Z" fill="white"/></g></svg>');
}

/* ITカード (5番目) */
.lp03-case__card:nth-child(5)::after {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="120" height="120" viewBox="0 0 120 120" fill="none"><g opacity="0.2" clip-path="url(%23clip0_480_3059)"><path d="M14.5167 80.903H105.484C108.955 80.903 111.771 78.0868 111.771 74.6152V21.0861C111.771 17.618 108.955 14.8018 105.484 14.8018H14.5167C11.0449 14.8018 8.23242 17.618 8.23242 21.0861V74.6152C8.23242 78.0868 11.0449 80.903 14.5167 80.903ZM17.8418 23.2468H102.158V70.9786H17.8418V23.2468Z" fill="white"/><path d="M119.07 98.3451L107.856 88.3915C107.135 87.7542 106.099 87.3916 105.004 87.3916H14.9963C13.9012 87.3916 12.8648 87.7542 12.1434 88.3915L0.930234 98.3451C0.329531 98.8762 0 99.5611 0 100.268V103.736C0 104.545 0.845859 105.197 1.88977 105.197H118.11C119.158 105.197 120 104.545 120 103.736V100.268C120 99.5611 119.67 98.8762 119.07 98.3451ZM47.1424 99.5207L50.3871 95.1335H70.9498L74.1907 99.5207H47.1424Z" fill="white"/></g><defs><clipPath id="clip0_480_3059"><rect width="120" height="120" fill="white"/></clipPath></defs></svg>');
}

/* 介護カード2・長期インターン前 (6番目) */
.lp03-case__card:nth-child(6)::after {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="120" height="120" viewBox="0 0 120 120" fill="none"><g opacity="0.2"><path d="M10 105V45L60 15L110 45V105H72.5V70H47.5V105H10Z" fill="white"/></g></svg>');
}

/* クリップボードカード (7番目) */
.lp03-case__card:nth-child(7)::after {
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="96" height="96" viewBox="0 0 96 96" fill="none"><g opacity="0.2" clip-path="url(%23clip0_480_3079)"><path d="M40.9203 6.48638H48.0007H55.0811C56.0135 6.48638 56.7693 7.24088 56.7693 8.17406H62.7258C62.7258 8.17406 62.7258 5.16244 62.7258 3.8385C62.7258 2.51588 61.8697 1.31494 60.5743 1.04175C58.9203 0.694875 57.1325 0.8775 55.9424 0.694875C53.7915 0.36375 49.6546 0 48.0005 0C46.346 0 42.2098 0.36375 40.059 0.694875C38.8689 0.877313 37.0811 0.694875 35.4264 1.04175C34.1315 1.31494 33.2754 2.51588 33.2754 3.8385C33.2754 5.16244 33.2754 8.17406 33.2754 8.17406H39.2317C39.2319 7.24088 39.9879 6.48638 40.9203 6.48638Z" fill="white"/><path d="M69.2647 22.54H26.7358C22.3066 22.54 18.7158 26.1312 18.7158 30.56V78.2189C18.7158 82.6475 22.3064 86.2375 26.7358 86.2375H69.2647C73.6934 86.2375 77.2833 82.6475 77.2833 78.2189V30.56C77.2833 26.1312 73.6933 22.54 69.2647 22.54ZM71.9823 78.2189C71.9823 79.7176 70.7632 80.9367 69.2645 80.9367H26.7358C25.2365 80.9367 24.0168 79.7176 24.0168 78.2189V30.56C24.0168 29.0615 25.2365 27.841 26.7358 27.841H69.2647C70.7634 27.841 71.9825 29.0615 71.9825 30.56V78.2189H71.9823Z" fill="white"/><path d="M38.6658 10.2783H33.8418V20.7404H38.6658V10.2783Z" fill="white"/><path d="M62.159 10.2783H57.335V21.0924H62.159V10.2783Z" fill="white"/><path d="M30.1911 96.0003C32.4297 96.0003 34.2444 94.1855 34.2444 91.9469C34.2444 89.7083 32.4297 87.8936 30.1911 87.8936C27.9525 87.8936 26.1377 89.7083 26.1377 91.9469C26.1377 94.1855 27.9525 96.0003 30.1911 96.0003Z" fill="white"/><path d="M65.8095 87.8936C63.5707 87.8936 61.7568 89.708 61.7568 91.9469C61.7568 94.1859 63.5707 96.0003 65.8095 96.0003C68.0484 96.0003 69.8628 94.1859 69.8628 91.9469C69.8628 89.7082 68.0484 87.8936 65.8095 87.8936Z" fill="white"/><path d="M60.1475 38.5586H35.8521C34.8762 38.5586 34.085 39.3495 34.085 40.3252C34.085 41.3023 34.8762 42.093 35.8521 42.093H60.1475C61.1232 42.093 61.9147 41.3023 61.9147 40.3252C61.9147 39.3493 61.1232 38.5586 60.1475 38.5586Z" fill="white"/><path d="M60.1475 52.252H35.8521C34.8762 52.252 34.085 53.0428 34.085 54.0186C34.085 54.9956 34.8762 55.7863 35.8521 55.7863H60.1475C61.1232 55.7863 61.9147 54.9956 61.9147 54.0186C61.9147 53.0428 61.1232 52.252 60.1475 52.252Z" fill="white"/><path d="M60.1475 65.9453H35.8521C34.8762 65.9453 34.085 66.7362 34.085 67.7119C34.085 68.689 34.8762 69.4797 35.8521 69.4797H60.1475C61.1232 69.4797 61.9147 68.689 61.9147 67.7119C61.9147 66.736 61.1232 65.9453 60.1475 65.9453Z" fill="white"/></g><defs><clipPath id="clip0_480_3079"><rect width="96" height="96" fill="white"/></clipPath></defs></svg>');
}


.lp03-case__card-top,
.lp03-case__result {
  position: relative;
  z-index: 1;
}

.lp03-case__results {
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: flex-start;
  position: relative;
  z-index: 1;
}

.lp03-case__card-top {
  margin-bottom: 83px;
}

.lp03-case__card:has(.lp03-case__results) .lp03-case__card-top {
  margin-bottom: 43px;
}

/* ::before は不要のため削除 */

.lp03-case__cat {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 600;
  font-size: 26px;
  line-height: 180%;
  letter-spacing: 1.56px;
  color: rgba(255, 255, 255, 0.90);
  margin-bottom: 4px;
}

.lp03-case__sub {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 180%;
  letter-spacing: 0.84px;
  color: rgba(255, 255, 255, 0.90);
}

.lp03-case__result {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 600;
  font-size: 20px;
  line-height: 180%;
  letter-spacing: 1.2px;
  background-image: linear-gradient(47deg, #1005B8 -2.66%, #0092D6 94.53%), linear-gradient(#fff, #fff);
  -webkit-background-clip: text, padding-box;
  background-clip: text, padding-box;
  -webkit-text-fill-color: transparent;
  display: inline-flex;
  width: fit-content;
  white-space: nowrap;
  align-self: flex-start;
  height: 42px;
  padding: 0 8px;
  justify-content: center;
  align-items: flex-end;
  gap: 1px;
}

.lp03-case__result span {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 32px;
  line-height: 1.3;
  letter-spacing: 1.92px;
  background: linear-gradient(47deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.lp03-case__result small {
  font-size: 12px;
  opacity: 0.85;
  background: linear-gradient(47deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}


/* --- FLOW --- */
.lp03-flow {
  background: #F8FAFC;
  padding: 80px 0 100px;
}

.lp03-flow__inner {
  max-width: 1400px;
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.lp03-flow__title {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 600;
  font-size: 36px;
  line-height: 160%;
  letter-spacing: 2.16px;
  text-align: center;
  color: #040A20;
  margin-bottom: 68px;
}

.lp03-flow__steps {
  display: grid;
  grid-template-columns: repeat(4, 234px);
  column-gap: 141px;
  position: relative;
}

/* 横線 — マーカーを結ぶ */
.lp03-flow__steps::before {
  content: '';
  position: absolute;
  top: 5px;
  left: 5px;
  right: auto;
  width: 1125px;
  height: 1px;
  background: linear-gradient(90deg, #4258FF 0%, #29A9FF 100%);
  opacity: 0.4;
}

.lp03-flow__step {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  text-align: left;
  position: relative;
}

/* 点 */
.lp03-flow__step-marker {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: linear-gradient(46.7deg, #1005B8 -2.66%, #0092D6 94.53%);
  margin-bottom: 12px;
  flex-shrink: 0;
}

.lp03-flow__step-num {
  font-family: "Fustat", sans-serif;
  font-weight: 400;
  font-size: 64px;
  line-height: 100%;
  letter-spacing: 0;
  background: linear-gradient(46.7deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 20px;
}

.lp03-flow__step-icon {
  width: 174px;
  height: 174px;
  flex-shrink: 0;
  margin-bottom: 20px;
  align-self: center;
}

.lp03-flow__step-icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.lp03-flow__step-title {
  width: 100%;
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 600;
  font-size: 16px;
  line-height: 180%;
  letter-spacing: 0.96px;
  color: #000;
  text-align: center;
  margin-bottom: 12px;
}

.lp03-flow__step-text {
  width: 100%;
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 180%;
  letter-spacing: 0.84px;
  color: #000;
  text-align: center;
}

/* --- PROBLEM --- */
.lp03-problem {
  background: #E6E6E6;
  padding: 80px 0 calc(184px + 40px);
/*  padding: 80px 0 calc(13.4vw + 100px);*/
}
@media (max-width: 768px) {
  .lp03-problem {
    padding: 60px 0 calc(13.4vw + 60px);
  }
}
.lp03-problem__inner {
  max-width: 1320px;
  width: 100%;
  margin: 0 auto;
  padding: 0 20px;
}

.lp03-problem__title {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 40px;
  line-height: 1.4;
  letter-spacing: 0.06em;
  text-align: center;
  color: #333;
  margin-bottom: 48px;
}

.lp03-problem__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 34px;
}

.lp03-problem__card {
  background: #FFFFFFE5;
  box-shadow: 0px 0px 20px 0px #61616126;
  border-radius: 4px;
  padding: 24px 28px 32px;
}

.lp03-problem__num {
  font-family: "Fustat", sans-serif;
  font-weight: 400;
  font-size: 72px;
  line-height: 1;
  color: #D1D1D1;
  margin-bottom: 8px;
}

.lp03-problem__h3 {
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 700;
  font-size: 28px;
  line-height: 1.2;
  letter-spacing: 1.68px;
  background: linear-gradient(47deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  margin-bottom: 46px;
}

.lp03-problem__list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.lp03-problem__list li {
  position: relative;
  padding-left: 28px;
  font-family: "Hiragino Sans", "ヒラギノ角ゴシック", sans-serif;
  font-weight: 400;
  font-size: 14px;
  line-height: 1.7;
  letter-spacing: 0.04em;
  color: #333;
}

.lp03-problem__list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 2px;
  width: 18px;
  height: 18px;
  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxOCIgaGVpZ2h0PSIxOCIgdmlld0JveD0iMCAwIDE4IDE4IiBmaWxsPSJub25lIj48cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTkgMThDMTAuMTgxOSAxOCAxMS4zNTIyIDE3Ljc2NzIgMTIuNDQ0MiAxNy4zMTQ5QzEzLjUzNjEgMTYuODYyNiAxNC41MjgyIDE2LjE5OTcgMTUuMzY0IDE1LjM2NEMxNi4xOTk3IDE0LjUyODIgMTYuODYyNiAxMy41MzYxIDE3LjMxNDkgMTIuNDQ0MkMxNy43NjcyIDExLjM1MjIgMTggMTAuMTgxOSAxOCA5QzE4IDcuODE4MSAxNy43NjcyIDYuNjQ3NzggMTcuMzE0OSA1LjU1NTg1QzE2Ljg2MjYgNC40NjM5MiAxNi4xOTk3IDMuNDcxNzcgMTUuMzY0IDIuNjM2MDRDMTQuNTI4MiAxLjgwMDMxIDEzLjUzNjEgMS4xMzczOCAxMi40NDQyIDAuNjg1MDg0QzExLjM1MjIgMC4yMzI3OTIgMTAuMTgxOSAtMS43NjExNmUtMDggOSAwQzYuNjEzMDUgMy41NTY4M2UtMDggNC4zMjM4NyAwLjk0ODIxMSAyLjYzNjA0IDIuNjM2MDRDMC45NDgyMTIgNC4zMjM4NyAwIDYuNjEzMDUgMCA5QzAgMTEuMzg2OSAwLjk0ODIxMiAxMy42NzYxIDIuNjM2MDQgMTUuMzY0QzQuMzIzODcgMTcuMDUxOCA2LjYxMzA1IDE4IDkgMThaTTguNzY4IDEyLjY0TDEzLjc2OCA2LjY0TDEyLjIzMiA1LjM2TDcuOTMyIDEwLjUxOUw1LjcwNyA4LjI5M0w0LjI5MyA5LjcwN0w3LjI5MyAxMi43MDdMOC4wNjcgMTMuNDgxTDguNzY4IDEyLjY0WiIgZmlsbD0iIzA1MEQyOSIvPjwvc3ZnPg==");
  background-repeat: no-repeat;
  background-size: 18px 18px;
}

.lp03-problem__list li span {
  background: linear-gradient(46.7deg, #1005B8 -2.66%, #0092D6 94.53%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: 600;
}

/* ==============================================
   SP ( ~ 768px )
   ============================================== */
@media screen and (max-width: 768px) {

  /* --- 全体レイアウト --- */
  body {
    overflow-x: hidden;
  }

  .lp03-fv,
  .lp03-problem,
  .lp03-strength,
  .lp03-result,
  .lp03-utilization,
  .lp03-cta,
  .lp03-service,
  .lp03-reason,
  .lp03-creative,
  .lp03-price,
  .lp03-flow,
  .lp03-case {
    overflow-x: hidden;
  }

  .lp03-problem__inner,
  .lp03-strength__inner,
  .lp03-result__inner,
  .lp03-utilization__inner,
  .lp03-cta__inner,
  .lp03-service__inner,
  .lp03-reason__inner,
  .lp03-price__inner,
  .lp03-flow__inner,
  .lp03-case__inner {
    padding-left: 24px;
    padding-right: 24px;
  }

  /* 斜め装飾線 SP */
  .lp03-strength__header::before,
  .lp03-utilization__header::before,
  .lp03-reason__header::before {
    width: calc(100% + 138px) !important;
    left: -24px;
    top: 40px;
  }

  /* --- FV --- */
  .lp03-fv__inner {
    padding: 120px 24px 60px;
  }

  .lp03-fv__label {
    font-size: 17px;
    line-height: 1.5;
    padding: 4px 10px;
    margin-bottom: 16px;
  }

  .lp03-fv__comma {
    display: none;
  }

  .lp03-fv__title {
    font-size: 38px;
    margin-bottom: 16px;
  }

  .lp03-fv__sub {
    font-size: 14px;
    margin-bottom: 24px;
  }

  .lp03-fv__stats {
    gap: 16px;
    margin-bottom: 32px;
    flex-wrap: wrap;
    justify-content: center;
  }

  .lp03-fv__stat {
    width: 120px;
    height: 120px;
  }

  .lp03-fv__stat::after {
    top: 35px;
    left: 50%;
    transform: translateX(-50%);
  }

  .lp03-fv__stat-text {
    font-size: 13px;
  }

  .lp03-fv__stat-text span {
    font-size: 18px;
  }

  .lp03-fv__cta {
    flex-direction: column;
    gap: 16px;
    align-items: stretch;
  }

  .lp03-fv .lp-fv__btn {
    width: 100%;
  }

  /* --- PROBLEM --- */
  .lp03-problem .lp-section-label--line::before,
  .lp03-problem .lp-section-label--line::after {
    display: none;
  }

  .lp03-problem__title {
    font-size: 28px;
    font-weight: 700;
    color: #333;
    letter-spacing: 0.04em;
    line-height: 1.4;
    margin-bottom: 32px;
  }

  .lp03-problem__grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .lp03-problem__num {
    font-size: 48px;
  }

  .lp03-problem__h3 {
    font-size: 20px;
    margin-bottom: 24px;
  }

  /* --- STRENGTH --- */
  .lp03-strength__title {
    font-size: 28px;
    margin-bottom: 24px;
  }

  .lp03-strength__lead {
    font-size: 14px;
    margin-bottom: 32px;
  }

  .lp03-strength__grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .lp03-strength__img {
    display: none;
  }

  .lp03-strength__card {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    padding: 20px 20px;
  }

  .lp03-strength__card-num {
    font-size: 48px;
  }

  .lp03-strength__card-h3 {
    font-size: 17px;
  }

  .lp03-strength__card-text {
    font-size: 14px;
  }

  /* --- RESULT --- */
  .lp03-result__title {
    font-size: 24px;
    margin-bottom: 32px;
  }

  .lp03-result__grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .lp03-result__card {
    margin: 0;
    padding: 20px 20px 24px;
  }

  .lp03-result__num {
    font-size: 48px;
    margin-bottom: 12px;
  }

  .lp03-result__h3 {
    font-size: 18px;
    margin-bottom: 16px;
  }

  /* --- UTILIZATION --- */
  .lp03-utilization__sub {
    align-items: flex-start;
  }

  .lp03-utilization__sub::before {
    margin-top: 7px;
  }

  .lp03-utilization__bars ~ .lp03-utilization__sub {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.6;
  }

  .lp03-utilization__bars ~ .lp03-utilization__sub::before {
    margin-top: 10px;
  }

  .lp03-utilization__title {
    font-size: 24px;
    margin-bottom: 32px;
  }

  .lp03-utilization__bars {
    grid-template-columns: 1fr;
    gap: 24px;
    margin-bottom: 48px;
  }

  .lp03-utilization__bar-label {
    font-size: 13px;
  }

  .lp03-utilization__bar-pct {
    font-size: 28px;
  }

  .lp03-utilization__comments {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .lp03-utilization__comment {
    width: 100%;
  }

  /* --- CTA --- */
  .lp03-cta__comma {
    display: none;
  }

  .lp03-cta {
    padding: 80px 0 64px;
  }

  .lp03-cta__title {
    font-size: 28px;
    margin-bottom: 40px;
  }

  .lp03-cta__btns {
    flex-direction: column;
    gap: 16px;
    align-items: stretch;
  }

  .lp03-cta .lp-fv__btn {
    width: 100%;
  }

  /* --- SERVICE --- */
  .lp03-service__title {
    font-size: 24px;
    margin-bottom: 32px;
  }

  .lp03-service__card {
    padding: 24px 20px 32px;
  }

  .lp03-service__num {
    font-size: 48px;
  }

  .lp03-service__h3 {
    font-size: 20px;
  }

  .lp03-service__grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .lp03-service__more {
    padding: 32px 20px 48px;
    margin-bottom: 48px;
  }

  .lp03-service__more-title {
    font-size: 24px;
  }

  .lp03-service__more-lead {
    text-align: left;
  }

  .lp03-service__more-list li {
    font-size: 15px;
  }

  .lp03-service__more-list li::before {
    top: 11px;
  }

  .lp03-service__more-head {
    font-size: 18px;
  }

  .lp03-service__more-icon {
    width: 32px;
    height: 32px;
  }

  .lp03-service__more-grid {
    grid-template-columns: 1fr;
    gap: 25px;
  }

  .lp03-service__sns-title {
    font-size: 20px;
    margin-bottom: 24px;
  }

  .lp03-service__sns-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  /* --- REASON --- */
  .lp03-reason__content {
    grid-template-columns: 1fr;
    gap: 32px;
  }

  .lp03-reason__right {
    display: none;
  }

  .lp03-reason__title {
    font-size: 22px;
    white-space: normal;
  }

  .lp03-reason__lead {
    font-size: 14px;
    white-space: normal;
    margin-bottom: 24px;
  }

  .lp03-reason__num {
    font-size: 32px;
  }

  .lp03-reason__num::after {
    display: none;
  }

  .lp03-reason__item-title {
    font-size: 17px;
  }

  .lp03-reason__item-body {
    width: 100%;
    margin-left: 0;
  }

  /* --- CREATIVE --- */
  .lp03-creative__inner {
    padding: 0 24px;
  }

  .lp03-creative__title {
    font-size: 28px;
    margin-bottom: 32px;
  }

  .lp03-creative__comma {
    display: none;
  }

  .lp03-creative__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }

  /* --- PRICE --- */
  .lp03-price__sub-label {
    white-space: nowrap;
  }

  .lp03-price__sub-label::before,
  .lp03-price__sub-label::after {
    width: 32px !important;
  }

  .lp03-price__title {
    font-size: 28px;
    line-height: 1.4;
    margin-bottom: 32px;
  }

  .lp03-price__initial {
    width: 100%;
    height: auto;
    flex-direction: column;
    gap: 12px;
    padding: 20px 24px;
    margin-bottom: 40px;
  }

  .lp03-price__grid {
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .lp03-price__num {
    font-size: 36px;
  }

  .lp03-price__amount {
    flex-wrap: nowrap;
  }

  .lp03-price__yen {
    white-space: nowrap;
  }

  .lp03-price__initial-text {
    flex-wrap: nowrap;
    white-space: nowrap;
    gap: 5px;
  }

  .lp03-price__plus {
    font-size: 24px;
  }

  /* --- FLOW --- */
  .lp03-flow__title {
    font-size: 24px;
    margin-bottom: 40px;
  }

  .lp03-flow__steps {
    grid-template-columns: 1fr;
    row-gap: 40px;
  }

  .lp03-flow__steps::before {
    display: none;
  }

  .lp03-flow__step-num {
    font-size: 48px;
    margin-left: 16px;
  }

  .lp03-flow__step-icon {
    width: 120px;
    height: 120px;
  }

  .lp03-flow__step-title {
    font-size: 15px;
  }

  .lp03-flow__step-text {
    padding-left: 20px;
    padding-right: 20px;
    margin-left: 5px;
  }

  .lp03-flow__step:not(:last-child)::after {
    content: '';
    position: absolute;
    top: 10px;
    left: 4px;
    width: 2px;
    height: calc(100% + 40px);
    background: linear-gradient(180deg, #4258FF 0%, #29A9FF 100%);
    opacity: 0.4;
  }

  /* --- CASE --- */
  .lp03-case__title {
    font-size: 28px;
    margin-bottom: 32px;
  }

  .lp03-case__grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .lp03-case__cat {
    font-size: 18px;
  }

  .lp03-case__result {
    font-size: 16px;
    height: auto;
    padding: 4px 8px;
    white-space: normal;
  }

  .lp03-case__result span {
    font-size: 24px;
  }

}
