/* ====================================================================
 RGB Design | AIO / LLMO Landing Page
 Lightning child theme用。すべて .aio-lp / .aio-lp-form にスコープ。
 ==================================================================== */
.aio-lp, .aio-lp-form {
  --aio-ink: #172b40;
  --aio-muted: #526579;
  --aio-blue: #1758cc;
  --aio-teal: #18bda9;
  --aio-navy: #10243c;
  --aio-line: #dce6ee;
  --aio-surface: #f4f8fb;
  color: var(--aio-ink);
  font-family: -apple-system, BlinkMacSystemFont, "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-size: 16px;
  line-height: 1.85;
  letter-spacing: .015em;
  box-sizing: border-box
}
.aio-lp *, .aio-lp *::before, .aio-lp *::after, .aio-lp-form *, .aio-lp-form *::before, .aio-lp-form *::after {
  box-sizing: border-box
}
.aio-lp {
  width: 100%;
  max-width: 1120px;
  margin: 0 auto 0;
  overflow: clip;
  background: #fff
}
.aio-lp :is(h1, h2, h3, p, ul, ol) {
  margin: 0;
  padding: 0
}
.aio-lp :is(h1, h2, h3) {
  color: inherit;
  font-family: inherit;
  line-height: 1.43;
  letter-spacing: -.025em;
  font-weight: 750
}
.aio-lp :is(h1, h2, h3) {
  border: 0;
  background: none;
  box-shadow: none;
  padding: 0
}
.aio-lp :is(h1, h2, h3)::before, .aio-lp :is(h1, h2, h3)::after {
  content: none !important
}
.aio-lp :is(a, a:hover) {
  text-decoration: none
}
.aio-lp a:focus-visible, .aio-lp summary:focus-visible, .aio-lp-form :is(input, textarea, select, button):focus-visible {
  outline: 3px solid #efbf57;
  outline-offset: 3px
}
.aio-lp-section {
  padding: 95px 48px
}
.aio-lp-section--soft {
  background: var(--aio-surface)
}
.aio-lp-eyebrow {
  display: flex;
  gap: 10px;
  align-items: center;
  color: var(--aio-blue);
  font-size: 12px;
  letter-spacing: .18em;
  font-weight: 800;
  line-height: 1.5;
  margin-bottom: 18px !important
}
.aio-lp-eyebrow--light {
  color: #9ee8e4
}
.aio-lp-eyebrow__line {
  display: inline-block;
  width: 26px;
  height: 2px;
  background: #36d6c2
}
.aio-lp-section-heading {
  max-width: 785px;
  margin-bottom: 42px
}
.aio-lp-section-heading--center {
  text-align: center;
  margin-left: auto;
  margin-right: auto
}
.aio-lp-section-heading--center .aio-lp-eyebrow {
  justify-content: center
}
.aio-lp-section-heading h2, .aio-lp-split h2, .aio-lp-why h2 {
  font-size: clamp(28px, 3.1vw, 38px);
  line-height: 1.55
}
.aio-lp em {
  font-style: normal;
  color: var(--aio-blue)
}
.aio-lp-section-heading > p:not(.aio-lp-eyebrow) {
  color: var(--aio-muted);
  margin-top: 17px;
  line-height: 2
}
/* HERO */
.aio-lp-hero {
  position: relative;
  min-height: 625px;
  background: linear-gradient(118deg, #091b30 0%, #102b4a 67%, #16466e 100%);
  color: #fff;
  overflow: hidden;
  isolation: isolate
}
.aio-lp-hero__mesh {
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .42;
  background-image: radial-gradient(circle at 15% 17%, rgba(27, 197, 185, .22) 0, transparent 23%), radial-gradient(circle at 92% 10%, rgba(55, 133, 220, .2) 0, transparent 36%), linear-gradient(rgba(110, 164, 216, .1) 1px, transparent 1px), linear-gradient(90deg, rgba(110, 164, 216, .1) 1px, transparent 1px);
  background-size: auto, auto, 54px 54px, 54px 54px
}
.aio-lp-hero:after {
  content: "";
  position: absolute;
  width: 440px;
  height: 440px;
  border: 1px solid rgba(98, 167, 210, .14);
  border-radius: 50%;
  right: -180px;
  top: 80px;
  pointer-events: none
}
.aio-lp-hero__body {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1.13fr) minmax(0, .87fr);
  align-items: center;
  gap: 25px;
  padding: 90px 48px 66px
}
.aio-lp-hero__title {
  font-size: clamp(32px, 4vw, 49px);
  line-height: 1.48;
  letter-spacing: -.045em;
  color: #fff !important;
  margin-bottom: 23px !important
}
.aio-lp-hero__title span {
  color: #79f1d8
}
.aio-lp-hero__lead {
  color: #dbe8f4;
  line-height: 2;
  max-width: 565px;
  font-size: 15px
}
.aio-lp-hero__lead strong {
  color: #fff
}
.aio-lp-hero__tags {
  display: flex;
  gap: 9px;
  flex-wrap: wrap;
  margin-top: 27px
}
.aio-lp-hero__tags span {
  border: 1px solid rgba(183, 214, 237, .35);
  border-radius: 50px;
  padding: 5px 12px;
  color: #d9ebfb;
  font-size: 12px;
  font-weight: 650;
  background: rgba(255, 255, 255, .035)
}
.aio-lp-hero__actions {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  margin-top: 31px
}
.aio-lp-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  min-height: 52px;
  padding: 12px 21px;
  border-radius: 6px;
  font-size: 13px;
  font-weight: 800;
  line-height: 1.5;
  transition: transform .2s, background .2s, box-shadow .2s;
  white-space: normal
}
.aio-lp-button:hover {
  transform: translateY(-2px)
}
.aio-lp-button span {
  font-size: 19px;
  font-weight: 500;
  line-height: 1
}
.aio-lp-button--primary {
  background: #27ccb7;
  color: #072538 !important;
  box-shadow: 0 10px 24px rgba(0, 0, 0, .12)
}
.aio-lp-button--primary:hover {
  background: #66e7d5
}
.aio-lp-button--outline {
  border: 1px solid rgba(255, 255, 255, .4);
  color: #fff !important;
  background: rgba(255, 255, 255, .04)
}
.aio-lp-button--outline:hover {
  background: rgba(255, 255, 255, .12)
}
.aio-lp-hero__figure {
  position: relative;
  min-width: 0;
  padding: 10px 0 0
}
.aio-lp-figure {
  margin-left: 5px;
  max-width: 410px;
  min-height: 370px;
  border: 1px solid #426886;
  border-radius: 15px;
  background: linear-gradient(142deg, #163555, #112640);
  box-shadow: 0 30px 65px rgba(0, 4, 20, .38), 0 0 0 8px rgba(42, 121, 166, .08);
  transform: rotate(2deg);
  padding: 16px;
  position: relative
}
.aio-lp-figure:after {
  position: absolute;
  content: "";
  width: 70px;
  height: 70px;
  z-index: -1;
  border-radius: 50%;
  background: #22d0bb;
  filter: blur(40px);
  left: -15px;
  bottom: -5px;
  opacity: .44
}
.aio-lp-figure__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  color: #bed5e8;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: .14em
}
.aio-lp-figure__traffic {
  display: flex;
  gap: 5px
}
.aio-lp-figure__traffic span {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #f78b8b
}
.aio-lp-figure__traffic span:nth-child(2) {
  background: #edcb64
}
.aio-lp-figure__traffic span:nth-child(3) {
  background: #54c6ac
}
.aio-lp-figure__status {
  color: #76ebdc;
  font-size: 12px
}
.aio-lp-figure__question {
  margin-top: 22px;
  display: flex;
  align-items: center;
  gap: 12px;
  border: 1px solid rgba(176, 209, 234, .25);
  border-radius: 10px;
  padding: 15px 13px;
  background: #264766
}
.aio-lp-figure__avatar {
  display: grid;
  place-items: center;
  flex: none;
  background: #c9e9f5;
  color: #224866;
  font-weight: 900;
  font-size: 19px;
  border-radius: 50%;
  width: 42px;
  height: 42px
}
.aio-lp-figure__question small {
  font-size: 12px;
  letter-spacing: .15em;
  color: #b8d3e8;
  display: block
}
.aio-lp-figure__question strong {
  font-size: 13px;
  color: #fff;
  font-weight: 750
}
.aio-lp-figure__path {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  padding: 12px 0
}
.aio-lp-figure__path span {
  height: 5px;
  width: 5px;
  background: #47d9c6;
  border-radius: 50%
}
.aio-lp-figure__answer {
  padding: 16px;
  background: #f7fbff;
  border-radius: 10px;
  color: #18334c
}
.aio-lp-figure__answer-header {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
  font-weight: 800
}
.aio-lp-figure__spark {
  display: grid;
  place-items: center;
  width: 29px;
  height: 29px;
  border-radius: 8px;
  background: #dff9f5;
  color: #088d82;
  font-size: 17px
}
.aio-lp-figure__answer-header i {
  display: inline-block;
  width: 7px;
  height: 7px;
  background: #14bb9d;
  border-radius: 50%;
  margin-left: auto
}
.aio-lp-figure__lines {
  padding: 12px 0;
  display: grid;
  gap: 7px
}
.aio-lp-figure__lines b {
  height: 6px;
  background: #d9e7f2;
  border-radius: 8px;
  width: 100%
}
.aio-lp-figure__lines b:nth-child(2) {
  width: 88%
}
.aio-lp-figure__lines b:nth-child(3) {
  width: 62%
}
.aio-lp-figure__site {
  border: 1px solid #c9e3ef;
  border-radius: 8px;
  padding: 10px;
  display: flex;
  align-items: center;
  gap: 10px;
  background: #fff
}
.aio-lp-figure__site-icon {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  flex: none;
  border-radius: 7px;
  background: #1d5dd0;
  color: #fff;
  font-size: 12px;
  font-weight: 900
}
.aio-lp-figure__site > span:nth-child(2) {
  display: block;
  min-width: 0;
  flex: 1
}
.aio-lp-figure__site strong {
  display: block;
  font-size: 12px;
  line-height: 1.4
}
.aio-lp-figure__site small {
  display: block;
  font-size: 12px;
  color: #60758a
}
.aio-lp-figure__site-check {
  color: #078d7d;
  font-weight: 900
}
.aio-lp-figure__foot {
  margin-top: 16px !important;
  text-align: center;
  color: #9cbcd0;
  font-size: 12px;
  letter-spacing: .15em;
  font-weight: 800
}
.aio-lp-hero__figure-caption {
  font-size: 12px;
  text-align: right;
  padding-right: 25px;
  color: #b7d2e5;
  margin-top: 25px !important
}
.aio-lp-hero__bottom {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 11px;
  font-size: 12px;
  letter-spacing: .22em;
  font-weight: 700;
  color: #aac7dc;
  padding-bottom: 24px
}
.aio-lp-hero__down {
  font-size: 21px;
  color: #56d8cc
}
/* PROBLEM */
.aio-lp-problems {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px
}
.aio-lp-problem {
  border: 1px solid var(--aio-line);
  background: #fff;
  border-radius: 12px;
  padding: 26px 23px;
  box-shadow: 0 10px 28px rgba(32, 69, 100, .035);
  min-height: 175px
}
.aio-lp-problem__num {
  font-size: 12px;
  color: var(--aio-blue);
  font-weight: 900;
  letter-spacing: .13em;
  margin-bottom: 18px
}
.aio-lp-problem p {
  font-size: 15px;
  line-height: 1.85
}
.aio-lp-problem strong {
  background: linear-gradient(transparent 74%, #dcf6f1 74%)
}
.aio-lp-answer-bar {
  margin-top: 23px;
  padding: 18px 22px;
  border-radius: 8px;
  background: #eaf6fa;
  display: flex;
  align-items: center;
  gap: 12px
}
.aio-lp-answer-bar__icon {
  color: var(--aio-blue);
  font-size: 25px
}
.aio-lp-answer-bar p {
  flex: 1;
  font-size: 14px
}
.aio-lp-answer-bar a {
  color: var(--aio-blue);
  font-size: 12px;
  font-weight: 800;
  white-space: nowrap
}
/* SPLIT */
.aio-lp-split {
  display: grid;
  grid-template-columns: 1.05fr .95fr;
  gap: 58px;
  align-items: center
}
.aio-lp-split__copy > p:not(.aio-lp-eyebrow) {
  margin-top: 20px;
  color: var(--aio-muted);
  font-size: 14px;
  line-height: 2
}
.aio-lp-split__copy > p.aio-lp-note {
  font-size: 12px;
  color: #7a8592;
  line-height: 1.75
}
.aio-lp-comparison {
  border-radius: 13px;
  padding: 24px;
  background: #fff;
  border: 1px solid #dce8f1;
  box-shadow: 0 18px 40px rgba(20, 54, 83, .06)
}
.aio-lp-comparison__card {
  padding: 19px 22px;
  border-radius: 9px;
  border: 1px solid #dce5ef;
  background: #f8fbfe
}
.aio-lp-comparison__card > span {
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .13em;
  color: #6b7f92
}
.aio-lp-comparison__card h3 {
  margin: 3px 0 7px !important;
  font-size: 27px;
  color: #21415f
}
.aio-lp-comparison__card p {
  font-size: 12px;
  line-height: 1.7;
  color: #5a7186
}
.aio-lp-comparison__card--accent {
  border-color: #a4dfdb;
  background: #ecfaf8
}
.aio-lp-comparison__card--accent h3 {
  color: #047e80
}
.aio-lp-comparison__plus {
  text-align: center;
  font-size: 22px;
  color: #1e789f;
  line-height: 1.8
}
.aio-lp-comparison__result {
  text-align: center;
  font-size: 12px;
  padding: 17px 3px 0;
  color: #3e5368
}
.aio-lp-comparison__result strong {
  color: #1758cc
}
/* STRENGTHS */
.aio-lp-strengths {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px
}
.aio-lp-strength {
  position: relative;
  background: white;
  border-radius: 12px;
  border: 1px solid var(--aio-line);
  padding: 31px 26px 26px;
  min-height: 360px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: box-shadow .2s, transform .2s
}
.aio-lp-strength:hover {
  box-shadow: 0 15px 35px rgba(22, 60, 91, .08);
  transform: translateY(-3px)
}
.aio-lp-strength:before {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 4px;
  background: linear-gradient(90deg, #1758cc, #28c6b7)
}
.aio-lp-strength__number {
  color: #9fadb9;
  font-size: 12px;
  font-weight: 800
}
.aio-lp-strength__mark {
  display: grid;
  place-items: center;
  width: 65px;
  height: 65px;
  border-radius: 18px;
  background: #eef6ff;
  color: #1b65c9;
  font-size: 32px;
  margin: 26px 0 20px;
  font-weight: 400
}
.aio-lp-strength h3 {
  font-size: 21px;
  line-height: 1.6;
  margin-bottom: 14px !important
}
.aio-lp-strength p {
  font-size: 13px;
  line-height: 1.9;
  color: var(--aio-muted);
  margin-bottom: 22px !important
}
.aio-lp-strength__tag {
  margin-top: auto;
  font-weight: 800;
  font-size: 12px;
  letter-spacing: .1em;
  color: #7590a4
}
/* SERVICES */
.aio-lp-services {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px
}
.aio-lp-service {
  display: flex;
  gap: 17px;
  padding: 25px;
  background: #fff;
  border: 1px solid #e0e9f0;
  border-radius: 9px;
  min-height: 160px
}
.aio-lp-service__index {
  flex: none;
  font-size: 19px;
  font-weight: 900;
  line-height: 1.5;
  color: #1d65cb;
  letter-spacing: -.03em
}
.aio-lp-service h3 {
  font-size: 17px;
  margin: 0 0 9px !important
}
.aio-lp-service p {
  font-size: 13px;
  line-height: 1.9;
  color: var(--aio-muted)
}
.aio-lp-inline-cta {
  display: flex;
  gap: 16px;
  justify-content: space-between;
  align-items: center;
  margin-top: 22px;
  padding: 20px 23px;
  border-left: 4px solid #13bfa9;
  background: #e3f4f2
}
.aio-lp-inline-cta p {
  font-size: 13px
}
.aio-lp-text-link {
  color: var(--aio-blue) !important;
  font-size: 13px;
  font-weight: 800;
  white-space: normal
}
.aio-lp-text-link:hover {
  text-decoration: underline !important
}
/* WHY RGB */
.aio-lp-why {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 68px;
  align-items: center
}
.aio-lp-why__intro > p:not(.aio-lp-eyebrow) {
  font-size: 14px;
  line-height: 2;
  color: var(--aio-muted);
  margin: 20px 0 !important
}
.aio-lp-why__points {
  display: grid;
  gap: 0
}
.aio-lp-why__points > div {
  display: flex;
  gap: 16px;
  padding: 22px 0;
  border-bottom: 1px solid #dce6ed
}
.aio-lp-why__points > div:first-child {
  border-top: 1px solid #dce6ed
}
.aio-lp-why__dot {
  display: grid;
  place-items: center;
  flex: none;
  background: #e4f8f3;
  color: #088a7e;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  font-weight: 900
}
.aio-lp-why__points h3 {
  font-size: 16px;
  margin: 0 0 7px !important
}
.aio-lp-why__points p {
  font-size: 13px;
  line-height: 1.8;
  color: var(--aio-muted)
}
/* MID CTA */
.aio-lp-mini-cta {
  background: linear-gradient(110deg, #1356b3, #1c91a4);
  padding: 37px 48px;
  display: flex;
  gap: 26px;
  align-items: center;
  justify-content: space-between;
  color: white
}
.aio-lp-mini-cta__eyebrow {
  display: block;
  letter-spacing: .13em;
  font-size: 12px;
  color: #d2f6f3;
  margin-bottom: 7px;
  font-weight: 800
}
.aio-lp-mini-cta h2 {
  font-size: 25px;
  line-height: 1.6;
  color: white !important
}
.aio-lp-mini-cta p {
  margin-top: 9px !important;
  font-size: 13px;
  color: #e4f4fa
}
.aio-lp-button--white {
  background: white;
  color: #1758a5 !important;
  flex: none
}
.aio-lp-button--white:hover {
  background: #dffaf5
}
/* PLANS */
.aio-lp-plans {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 15px;
  align-items: stretch
}
.aio-lp-plan {
  position: relative;
  border: 1px solid var(--aio-line);
  border-radius: 12px;
  overflow: hidden;
  background: #fff;
  display: flex;
  flex-direction: column
}
.aio-lp-plan--featured {
  border: 2px solid #1764ce;
  box-shadow: 0 14px 35px rgba(29, 93, 176, .12)
}
.aio-lp-plan__recommend {
  position: absolute;
  top: 0;
  right: 0;
  border-radius: 0 0 0 8px;
  background: #1764ce;
  color: #fff;
  font-size: 12px;
  padding: 5px 12px;
  letter-spacing: .08em;
  font-weight: 800
}
.aio-lp-plan__top {
  padding: 28px 22px 20px;
  border-bottom: 1px solid #edf2f6
}
.aio-lp-plan--featured .aio-lp-plan__top {
  background: #f0f7ff
}
.aio-lp-plan__label {
  color: #1764ce;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .1em
}
.aio-lp-plan__top h3 {
  font-size: 20px;
  margin: 9px 0 !important
}
.aio-lp-plan__top p {
  font-size: 12px;
  color: #6b7b89
}
.aio-lp-plan__body {
  padding: 23px 22px 22px;
  display: flex;
  flex-direction: column;
  flex: 1
}
.aio-lp-plan__body ul {
  list-style: none;
  display: grid;
  gap: 12px;
  margin: 0 !important;
  padding: 0 !important
}
.aio-lp-plan__body li {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-size: 12px;
  line-height: 1.65
}
.aio-lp-plan__body li:before {
  content: "✓";
  font-weight: 900;
  color: #0fa894;
  flex: none
}
.aio-lp-plan__price {
  font-size: 17px;
  font-weight: 800;
  margin: 25px 0 15px !important;
  text-align: center;
  color: #172b40
}
.aio-lp-plan__link {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  border: 1px solid #185fbc;
  border-radius: 6px;
  padding: 11px 12px;
  color: #185fbc !important;
  font-size: 12px;
  font-weight: 800;
  margin-top: auto;
  transition: background .2s, color .2s
}
.aio-lp-plan__link:hover {
  background: #185fbc;
  color: #fff !important
}
.aio-lp-plans-note {
  font-size: 12px;
  color: #657788;
  margin-top: 23px !important;
  line-height: 1.75
}
/* FLOW */
.aio-lp-flow {
  list-style: none;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin: 0 auto !important;
  padding: 0 !important;
  counter-reset: none
}
.aio-lp-flow li {
  position: relative;
  background: #fff;
  border: 1px solid var(--aio-line);
  padding: 26px 18px;
  border-radius: 9px
}
.aio-lp-flow li:not(:last-child):after {
  content: "›";
  position: absolute;
  right: -12px;
  top: 38px;
  z-index: 1;
  color: #1764ce;
  font-size: 22px;
  font-weight: 900
}
.aio-lp-flow li > span {
  font-size: 25px;
  color: #1c65c7;
  font-weight: 850;
  line-height: 1.2;
  display: block;
  margin-bottom: 14px
}
.aio-lp-flow h3 {
  font-size: 15px;
  margin: 0 0 9px !important
}
.aio-lp-flow p {
  color: var(--aio-muted);
  font-size: 12px;
  line-height: 1.85
}
/* FAQ */
.aio-lp-faq {
  max-width: 885px;
  margin: 0 auto;
  display: grid;
  gap: 11px
}
.aio-lp-faq details {
  border: 1px solid #dae5ed;
  border-radius: 8px;
  background: #fff;
  overflow: hidden
}
.aio-lp-faq summary {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 20px 46px 20px 22px;
  cursor: pointer;
  position: relative;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.7;
  list-style: none
}
.aio-lp-faq summary::-webkit-details-marker {
  display: none
}
.aio-lp-faq summary span {
  font-weight: 900;
  color: #1c65ce;
  font-size: 18px
}
.aio-lp-faq summary:after {
  content: "+";
  position: absolute;
  right: 22px;
  top: 50%;
  transform: translateY(-50%);
  font-size: 23px;
  color: #225c99;
  font-weight: 400
}
.aio-lp-faq details[open] summary:after {
  content: "−"
}
.aio-lp-faq details[open] summary {
  background: #eff6fc
}
.aio-lp-faq__answer {
  padding: 18px 24px 21px 52px;
  border-top: 1px solid #e0e9f1;
  font-size: 13px;
  line-height: 2;
  color: var(--aio-muted)
}
/* CONTACT lead */
.aio-lp-contact {
  position: relative;
  overflow: hidden;
  background: linear-gradient(128deg, #091d33 0%, #133b5b 100%);
  color: #fff;
  text-align: center
}
.aio-lp-contact__glow {
  position: absolute;
  top: -220px;
  left: calc(50% - 280px);
  height: 560px;
  width: 560px;
  border-radius: 50%;
  border: 1px solid rgba(66, 206, 195, .19);
  box-shadow: 0 0 0 65px rgba(44, 141, 155, .04), 0 0 0 130px rgba(44, 141, 155, .035);
  pointer-events: none
}
.aio-lp-contact__inner {
  position: relative;
  padding: 78px 48px 55px
}
.aio-lp-contact__inner .aio-lp-eyebrow {
  justify-content: center
}
.aio-lp-contact h2 {
  font-size: clamp(27px, 3.1vw, 37px);
  line-height: 1.55;
  color: #fff !important
}
.aio-lp-contact h2 em {
  color: #78ebdb
}
.aio-lp-contact__inner > p:not(.aio-lp-eyebrow) {
  margin: 21px auto 35px !important;
  color: #d3e6f0;
  line-height: 2;
  font-size: 14px
}
.aio-lp-contact__info {
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  max-width: 720px;
  border: 1px solid rgba(210, 234, 245, .26);
  border-radius: 11px;
  background: rgba(255, 255, 255, .05);
  text-align: left
}
.aio-lp-contact__info > div {
  padding: 19px 24px
}
.aio-lp-contact__info > div + div {
  border-left: 1px solid rgba(210, 234, 245, .26)
}
.aio-lp-contact__info span {
  font-size: 12px;
  color: #b3d7e7;
  display: block
}
.aio-lp-contact__info :is(a, strong) {
  font-size: 20px;
  display: block;
  color: #fff !important;
  font-weight: 850;
  line-height: 1.6
}
.aio-lp-contact__info small {
  font-size: 12px;
  color: #d3e3ed;
  display: block
}
/* CF7: shortcode block直下のフォームにはテンプレート側の .aio-lp-form が付く */
.aio-lp-form {
  max-width: 960px;
  margin: 0 auto 72px;
  padding: 40px 44px 43px;
  background: #fff;
  border: 1px solid #dce6ee;
  border-radius: 0 0 14px 14px;
  box-shadow: 0 16px 45px rgba(16, 49, 82, .08)
}
.aio-lp-form :is(h2, h3, p) {
  margin: 0
}
.aio-lp-form__heading {
  margin-bottom: 25px !important;
  font-size: 21px;
  color: #172b40;
  font-weight: 800;
  text-align: center
}
.aio-lp-form__desc {
  text-align: center;
  font-size: 13px;
  color: #697b8a;
  margin-bottom: 26px !important
}
.aio-lp-form__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 19px 22px
}
.aio-lp-form__field {
  display: block;
  min-width: 0
}
.aio-lp-form__field--full {
  grid-column: 1/-1
}
.aio-lp-form__label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 800;
  color: #263a4d;
  margin-bottom: 7px
}
.aio-lp-form__required {
  background: #dc4250;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  padding: 1px 6px;
  border-radius: 3px
}
.aio-lp-form__optional {
  font-size: 12px;
  background: #eef2f5;
  color: #6f8290;
  padding: 1px 6px;
  border-radius: 3px
}
.aio-lp-form .wpcf7-form-control-wrap {
  display: block;
  min-width: 0
}
.aio-lp-form :is(input[type=text], input[type=email], input[type=url], input[type=tel], select, textarea) {
  border: 1px solid #c7d5df;
  border-radius: 6px;
  background: #f9fbfd;
  width: 100%;
  max-width: 100%;
  padding: 11px 13px;
  font-size: 14px;
  line-height: 1.6;
  color: #172b40;
  box-shadow: none;
  min-height: 47px;
  font-family: inherit
}
.aio-lp-form textarea {
  min-height: 128px;
  resize: vertical
}
.aio-lp-form :is(input, textarea)::placeholder {
  color: #9ba9b5
}
.aio-lp-form :is(input, textarea, select):focus {
  background: #fff;
  border-color: #1f71bb
}
.aio-lp-form .wpcf7-not-valid-tip {
  font-size: 12px;
  margin-top: 4px
}
.aio-lp-form .wpcf7-response-output {
  font-size: 13px;
  padding: 12px 15px !important;
  margin: 18px 0 0 !important;
  border-radius: 6px
}
.aio-lp-form__privacy {
  margin: 25px auto 14px !important;
  text-align: center;
  color: #495f70;
  font-size: 12px
}
.aio-lp-form__privacy .wpcf7-list-item {
  margin: 0
}
.aio-lp-form__privacy a {
  color: #1758cc
}
.aio-lp-form__submit {
  text-align: center
}
.aio-lp-form input[type=submit] {
  appearance: none;
  min-width: min(100%, 340px);
  min-height: 55px;
  border: 0;
  border-radius: 6px;
  background: #1758cc;
  color: #fff;
  cursor: pointer;
  padding: 12px 25px;
  font-weight: 800;
  font-size: 15px;
  box-shadow: 0 10px 18px rgba(23, 88, 204, .16);
  transition: background .2s, transform .2s
}
.aio-lp-form input[type=submit]:hover {
  background: #0e469f;
  transform: translateY(-1px)
}
.aio-lp-form .wpcf7-spinner {
  display: block;
  margin: 10px auto 0
}
.aio-lp-form__foot {
  font-size: 12px;
  text-align: center;
  color: #798b97;
  margin-top: 14px !important
}
/* WP theme overrides (within LP only) */
.aio-lp :is(.aio-lp-button, .aio-lp-plan__link) {
  box-shadow: none
}
.aio-lp .aio-lp-button--primary {
  box-shadow: 0 10px 24px rgba(0, 0, 0, .12)
}
@media(max-width:990px) {
  .aio-lp-hero__body {
    grid-template-columns: 1fr;
    padding: 68px 42px 38px
  }
  .aio-lp-hero__figure {
    margin: 15px auto 0;
    width: min(100%, 450px)
  }
  .aio-lp-figure {
    margin: 0 auto
  }
  .aio-lp-hero__figure-caption {
    text-align: center
  }
  .aio-lp-section {
    padding: 72px 38px
  }
  .aio-lp-split {
    gap: 28px
  }
  .aio-lp-why {
    gap: 38px
  }
  .aio-lp-mini-cta {
    padding: 33px 38px
  }
  .aio-lp-plan__body {
    padding: 19px 16px
  }
  .aio-lp-plan__top {
    padding: 24px 16px 19px
  }
}
@media(max-width:760px) {
  .aio-lp-hero__body {
    padding: 58px 25px 28px
  }
  .aio-lp-hero__title {
    font-size: clamp(30px, 7.5vw, 42px)
  }
  .aio-lp-hero__lead {
    font-size: 13px
  }
  .aio-lp-section {
    padding: 67px 25px
  }
  .aio-lp-problems, .aio-lp-strengths, .aio-lp-plans {
    grid-template-columns: 1fr
  }
  .aio-lp-problem {
    min-height: auto;
    padding: 23px
  }
  .aio-lp-problem__num {
    margin-bottom: 5px
  }
  .aio-lp-answer-bar {
    align-items: flex-start;
    flex-wrap: wrap
  }
  .aio-lp-answer-bar a {
    margin-left: 36px
  }
  .aio-lp-split, .aio-lp-why {
    grid-template-columns: 1fr;
    gap: 28px
  }
  .aio-lp-comparison {
    max-width: 470px;
    width: 100%;
    margin: 0 auto
  }
  .aio-lp-strength {
    min-height: auto;
    padding: 26px
  }
  .aio-lp-strength__mark {
    margin: 15px 0
  }
  .aio-lp-services {
    grid-template-columns: 1fr
  }
  .aio-lp-service {
    min-height: auto
  }
  .aio-lp-inline-cta {
    display: block
  }
  .aio-lp-inline-cta a {
    display: inline-block;
    margin-top: 13px
  }
  .aio-lp-mini-cta {
    padding: 34px 25px;
    flex-direction: column;
    align-items: flex-start
  }
  .aio-lp-flow {
    grid-template-columns: repeat(2, minmax(0, 1fr))
  }
  .aio-lp-flow li:nth-child(2):after {
    display: none
  }
  .aio-lp-contact__inner {
    padding: 65px 24px 40px
  }
  .aio-lp-contact__info {
    grid-template-columns: 1fr;
    text-align: center
  }
  .aio-lp-contact__info > div + div {
    border-left: 0;
    border-top: 1px solid rgba(210, 234, 245, .26)
  }
  .aio-lp-form {
    margin: 0 auto 55px;
    padding: 28px 25px
  }
  .aio-lp-form__grid {
    grid-template-columns: 1fr
  }
}
@media(max-width:480px) {
  .aio-lp {
    font-size: 14px
  }
  .aio-lp-hero__body {
    padding: 50px 18px 26px
  }
  .aio-lp-hero__title {
    font-size: 30px
  }
  .aio-lp-hero__actions {
    flex-direction: column;
    align-items: stretch
  }
  .aio-lp-button {
    width: 100%
  }
  .aio-lp-figure {
    padding: 11px;
    min-height: 0;
    transform: none
  }
  .aio-lp-figure__question strong {
    font-size: 12px
  }
  .aio-lp-figure__question {
    padding: 10px
  }
  .aio-lp-figure__site small {
    font-size: 12px
  }
  .aio-lp-section {
    padding: 58px 18px
  }
  .aio-lp-section-heading h2, .aio-lp-split h2, .aio-lp-why h2 {
    font-size: 26px
  }
  .aio-lp-hero__figure-caption {
    padding-right: 0
  }
  .aio-lp-service {
    padding: 19px 16px;
    gap: 12px
  }
  .aio-lp-mini-cta {
    padding: 30px 18px
  }
  .aio-lp-mini-cta h2 {
    font-size: 23px
  }
  .aio-lp-flow {
    grid-template-columns: 1fr
  }
  .aio-lp-flow li:not(:last-child):after {
    top: auto;
    bottom: -21px;
    left: 50%;
    right: auto;
    transform: rotate(90deg)
  }
  .aio-lp-flow li:nth-child(2):after {
    display: block
  }
  .aio-lp-faq summary {
    padding: 17px 36px 17px 12px;
    font-size: 13px;
    gap: 9px
  }
  .aio-lp-faq summary:after {
    right: 12px
  }
  .aio-lp-faq__answer {
    padding: 15px
  }
  .aio-lp-contact__inner {
    padding: 55px 18px 35px
  }
  .aio-lp-contact h2 {
    font-size: 25px
  }
  .aio-lp-contact__info :is(a, strong) {
    font-size: 18px
  }
  .aio-lp-form {
    padding: 24px 16px;
    margin-bottom: 45px;
    border-radius: 0 0 9px 9px
  }
  .aio-lp-form__heading {
    font-size: 18px
  }
}
@media(prefers-reduced-motion:reduce) {
  .aio-lp *, .aio-lp-form * {
    scroll-behavior: auto !important;
    transition: none !important;
    animation: none !important
  }
}
/* ================================================================
 2026-10 改訂版：フルブリード背景・本文拡大・初回版ブルー系の配色
 LP全体のみを親コンテナから横に抜き出し、内部は1120pxを上限にします。
 ================================================================ */
.aio-lp, .aio-lp-form {
  --aio-ink: #172b40;
  --aio-muted: #526579;
  --aio-blue: #1758cc;
  --aio-teal: #18bda9;
  --aio-navy: #10243c;
  --aio-line: #dce6ee;
  --aio-surface: #f4f8fb;
  --aio-pale-teal: #ecfaf8;
  font-size: 18px
}
.aio-lp {
  width: 100vw;
  width: 100dvw;
  max-width: none;
  position: relative;
  left: 50%;
  transform: translateX(-50%);
  margin: 0;
  overflow: clip;
  background: #fff;
}
.aio-lp-section {
  padding: 90px 28px
}
.aio-lp-section > * {
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto
}
.aio-lp-section > .aio-lp-section-heading--center {
  max-width: 785px
}
.aio-lp-section--soft {
  background: var(--aio-surface)
}
.aio-lp-section-heading:not(.aio-lp-section-heading--center) {
  max-width: 1120px
}
.aio-lp-section-heading:not(.aio-lp-section-heading--center) > p:not(.aio-lp-eyebrow) {
  max-width: 785px
}
.aio-lp-section-heading > p:not(.aio-lp-eyebrow), .aio-lp-hero__lead {
  font-size: 18px
}
.aio-lp :is(.aio-lp-problem p, .aio-lp-split__copy>p:not(.aio-lp-eyebrow), .aio-lp-strength p, .aio-lp-service p, .aio-lp-why__intro>p:not(.aio-lp-eyebrow), .aio-lp-why__points p, .aio-lp-contact__inner>p:not(.aio-lp-eyebrow)) {
  font-size: 18px
}
.aio-lp .aio-lp-faq summary, .aio-lp .aio-lp-faq__answer, .aio-lp .aio-lp-flow p, .aio-lp .aio-lp-plan__body li, .aio-lp .aio-lp-plan__top p, .aio-lp .aio-lp-plans-note, .aio-lp .aio-lp-comparison p, .aio-lp .aio-lp-inline-cta p, .aio-lp .aio-lp-mini-cta p {
  font-size: 16px
}
.aio-lp .aio-lp-answer-bar p, .aio-lp .aio-lp-answer-bar a, .aio-lp .aio-lp-text-link, .aio-lp .aio-lp-button, .aio-lp .aio-lp-plan__link {
  font-size: 16px
}
.aio-lp-eyebrow {
  font-size: 14px;
  color: var(--aio-blue)
}
.aio-lp em {
  color: var(--aio-blue)
}
.aio-lp-hero .aio-lp-eyebrow--light, .aio-lp-contact .aio-lp-eyebrow--light {
  color: #9ee8e4
}
.aio-lp-contact h2 em {
  color: #78ebdb
}
.aio-lp :is(.aio-lp-figure__top, .aio-lp-figure__status, .aio-lp-figure__question small, .aio-lp-figure__site small, .aio-lp-figure__foot, .aio-lp-hero__bottom, .aio-lp-strength__tag, .aio-lp-plan__recommend, .aio-lp-contact__info small, .aio-lp-contact__info span) {
  font-size: 12px
}
/* ヒーロー：初回版のダークネイビー + ターコイズを維持 */
.aio-lp-hero__body {
  max-width: 1120px;
  margin: 0 auto;
  padding: 86px 28px 62px;
  gap: 44px
}
.aio-lp-hero__tags span {
  font-size: 13px
}
.aio-lp-hero__bottom {
  max-width: 1120px;
  margin-inline: auto
}
.aio-lp-problem strong {
  background: linear-gradient(transparent 74%, #dcf6f1 74%)
}
.aio-lp-problem__num, .aio-lp-answer-bar__icon {
  color: var(--aio-blue)
}
.aio-lp-answer-bar {
  background: #eaf6fa
}
.aio-lp-answer-bar a {
  color: var(--aio-blue)
}
.aio-lp-comparison__card--accent {
  border-color: #a4dfdb;
  background: #ecfaf8
}
.aio-lp-strength:before {
  background: linear-gradient(90deg, #1758cc, #28c6b7)
}
.aio-lp-strength__mark {
  background: #eef6ff;
  color: #1b65c9
}
.aio-lp-inline-cta {
  border-left-color: var(--aio-blue);
  background: #e3f4f2
}
.aio-lp-text-link {
  color: var(--aio-blue) !important
}
.aio-lp-why__dot {
  background: #e4f8f3;
  color: var(--aio-blue)
}
.aio-lp-mini-cta {
  background: linear-gradient(110deg, #1356b3, #1c91a4);
  padding: 0
}
.aio-lp-mini-cta__inner {
  max-width: 1120px;
  width: 100%;
  padding: 45px 28px;
  margin: 0 auto;
  display: flex;
  gap: 26px;
  justify-content: space-between;
  align-items: center
}
.aio-lp-mini-cta__eyebrow {
  font-size: 12px
}
.aio-lp-button--white {
  color: #1758a5 !important
}
.aio-lp-button--white:hover {
  background: #dffaf5
}
.aio-lp-plan--featured {
  border-color: var(--aio-blue);
  box-shadow: 0 14px 35px rgba(29, 93, 176, .12)
}
.aio-lp-plan__recommend {
  background: var(--aio-blue)
}
.aio-lp-plan--featured .aio-lp-plan__top {
  background: #f0f7ff
}
.aio-lp-plan__label {
  color: var(--aio-blue);
  font-size: 13px
}
.aio-lp-plan__body li:before {
  color: var(--aio-blue)
}
.aio-lp-plan__price {
  margin-top: auto !important;
  text-align: center;
  border-top: 1px solid #edf0f2;
  padding-top: 10px !important;
}
.aio-lp-plan__price strong {
  font-size: 20px;
  color: var(--aio-blue);
  line-height: 1.3
}
.aio-lp-plan__price strong span {
  font-size: 20px
}
.aio-lp-plan__price small {
  display: block;
  font-size: 14px;
  font-weight: 500;
  color: #687386;
  margin-top: 3px
}
.aio-lp-plan__link {
  margin-top: 15px;
  border-color: var(--aio-blue);
  color: var(--aio-blue) !important
}
.aio-lp-plan__link:hover {
  background: var(--aio-blue);
  color: #fff !important
}
.aio-lp-faq summary span, .aio-lp-flow li > span {
  color: var(--aio-blue)
}
.aio-lp-faq details[open] summary {
  background: #eff6fc
}
.aio-lp-contact__inner {
  max-width: 1120px;
  margin: 0 auto;
  padding: 84px 28px 61px
}
.aio-lp-contact__info :is(a, strong) {
  font-size: 22px
}
.aio-lp-form {
  font-size: 18px
}
.aio-lp-form__desc, .aio-lp-form__label, .aio-lp-form__privacy {
  font-size: 16px
}
.aio-lp-form :is(input[type=text], input[type=email], input[type=url], input[type=tel], select, textarea) {
  font-size: 16px
}
.aio-lp-form .wpcf7-response-output, .aio-lp-form .wpcf7-not-valid-tip {
  font-size: 14px
}
.aio-lp-form input[type=submit] {
  background: var(--aio-blue);
  font-size: 17px;
  box-shadow: 0 10px 20px rgba(23, 88, 204, .16)
}
.aio-lp-form input[type=submit]:hover {
  background: var(--aio-blue)
}
.aio-lp-form__foot {
  font-size: 13px
}
/* 出典付き統計 */
.aio-lp-research {
  display: grid;
  grid-template-columns: 1.12fr .88fr;
  align-items: center;
  gap: 36px;
  border: 1px solid #cfe4ee;
  border-radius: 18px;
  box-shadow: 0 17px 45px rgba(20, 54, 83, .06);
  padding: 36px 40px;
  background: linear-gradient(115deg, #f8fbfe, #fff)
}
.aio-lp-research__kicker {
  color: var(--aio-blue);
  font-size: 13px;
  font-weight: 800;
  letter-spacing: .12em
}
.aio-lp-research__lead > strong {
  display: block;
  font-size: 24px;
  color: #283d57;
  margin: 6px 0 15px
}
.aio-lp-research__lead > p {
  font-size: 17px;
  line-height: 1.95;
  color: var(--aio-muted)
}
.aio-lp-research__source {
  display: inline-block;
  margin-top: 15px;
  font-size: 13px;
  line-height: 1.7;
  color: var(--aio-blue) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px
}
.aio-lp-research__visual {
  min-width: 0;
  border-radius: 12px;
  background: #eaf6fa;
  padding: 22px 24px
}
.aio-lp-research__caption {
  font-size: 14px;
  color: #526579;
  font-weight: 700
}
.aio-lp-research__value {
  line-height: 1.05;
  margin: 7px 0 12px;
  color: var(--aio-blue)
}
.aio-lp-research__value strong {
  font-size: clamp(56px, 6vw, 79px);
  letter-spacing: -.06em
}
.aio-lp-research__value > span {
  font-size: 29px;
  margin-left: 6px
}
.aio-lp-research__track {
  display: grid;
  gap: 8px
}
.aio-lp-research__bar {
  display: grid;
  grid-template-columns: 100px 1fr 60px;
  align-items: center;
  gap: 10px;
  font-size: 12px
}
.aio-lp-research__bar small {
  font-size: 12px;
  color: #60758a
}
.aio-lp-research__bar > span {
  display: block;
  background: linear-gradient(90deg, #a0c5e8, #7eadca);
  width: var(--bar);
  min-width: 4px;
  height: 11px;
  border-radius: 20px
}
.aio-lp-research__bar--current > span {
  background: linear-gradient(90deg, #25bba8, #1758cc)
}
.aio-lp-research__bar > b {
  font-size: 13px;
  color: #1758a5;
  text-align: right
}
.aio-lp-research__fine {
  font-size: 12px;
  color: #526579;
  line-height: 1.6;
  margin-top: 13px !important
}
.aio-lp-intro > .aio-lp-section-heading {
  margin-bottom: 35px
}
.aio-lp-intro > .aio-lp-research {
  margin-bottom: 33px
}
/* 他社公開事例 */
.aio-lp-cases {
  background: linear-gradient(180deg, #fff 0%, #f8fbfe 100%)
}
.aio-lp-cases__alert {
  background: #eef6ff;
  border-left: 4px solid var(--aio-blue);
  padding: 13px 20px;
  font-size: 14px;
  color: #526579;
  margin-bottom: 25px
}
.aio-lp-cases__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px
}
.aio-lp-case {
  display: flex;
  flex-direction: column;
  border-radius: 15px;
  border: 1px solid #dce6ee;
  background: white;
  overflow: hidden;
  padding: 28px;
  box-shadow: 0 12px 30px rgba(30, 38, 71, .04)
}
.aio-lp-case__top {
  display: flex;
  justify-content: space-between;
  gap: 10px;
  align-items: center
}
.aio-lp-case__type {
  font-size: 13px;
  color: var(--aio-blue);
  font-weight: 700
}
.aio-lp-case__index {
  font-size: 12px;
  letter-spacing: .1em;
  color: #9fadb9;
  font-weight: 700
}
.aio-lp-case h3 {
  font-size: 21px;
  margin: 12px 0 22px !important;
  min-height: 62px
}
.aio-lp-case__metric {
  background: var(--aio-pale-teal);
  border-radius: 10px;
  padding: 21px 20px;
  margin-bottom: 19px
}
.aio-lp-case__metric > span {
  color: #526579;
  font-size: 14px;
  font-weight: 700
}
.aio-lp-case__metric > div {
  display: flex;
  align-items: baseline;
  gap: 12px;
  color: #1758a5;
  margin: 7px 0
}
.aio-lp-case__metric b {
  font-size: 20px;
  font-weight: 700;
  color: #526579
}
.aio-lp-case__metric strong {
  font-size: 39px;
  color: var(--aio-blue);
  line-height: 1.3
}
.aio-lp-case__metric i {
  font-size: 26px;
  font-style: normal
}
.aio-lp-case__metric > div small {
  font-size: 17px
}
.aio-lp-case__metric > small {
  display: block;
  font-size: 12px;
  color: #526579
}
.aio-lp-case__detail strong {
  font-size: 16px;
  color: #273a53
}
.aio-lp-case__detail p {
  font-size: 16px;
  color: var(--aio-muted);
  line-height: 1.85;
  margin-top: 6px !important
}
.aio-lp-case__disclaimer {
  font-size: 13px;
  color: #687589;
  margin-top: 14px !important;
  line-height: 1.8
}
.aio-lp-case__source {
  margin-top: auto;
  padding-top: 17px;
  font-size: 14px;
  color: var(--aio-blue) !important;
  text-decoration: underline !important;
  text-underline-offset: 3px
}
.aio-lp-cases__bottom {
  margin-top: 22px;
  padding: 21px 26px;
  background: #eaf6fa;
  border-radius: 9px;
  display: flex;
  gap: 17px;
  align-items: center
}
.aio-lp-cases__bottom strong {
  color: var(--aio-blue);
  white-space: nowrap;
  font-size: 16px
}
.aio-lp-cases__bottom span {
  font-size: 16px;
  color: var(--aio-muted)
}
@media(max-width:990px) {
  .aio-lp-hero__body {
    padding: 65px 34px 45px;
    gap: 30px
  }
  .aio-lp-section {
    padding: 75px 34px
  }
  .aio-lp-research {
    gap: 20px;
    padding: 25px
  }
  .aio-lp-mini-cta__inner {
    padding: 38px 34px
  }
}
@media(max-width:760px) {
  .aio-lp-hero__body {
    padding: 55px 24px 36px
  }
  .aio-lp-section {
    padding: 64px 24px
  }
  .aio-lp-research, .aio-lp-cases__grid {
    grid-template-columns: 1fr
  }
  .aio-lp-research__lead > strong {
    font-size: 21px
  }
  .aio-lp-research__visual {
    width: 100%
  }
  .aio-lp-case h3 {
    min-height: 0
  }
  .aio-lp-mini-cta__inner {
    padding: 36px 24px;
    display: flex;
    flex-direction: column;
    align-items: flex-start
  }
  .aio-lp-cases__bottom {
    flex-direction: column;
    gap: 7px;
    align-items: flex-start
  }
  .aio-lp-cases__bottom strong {
    white-space: normal
  }
  .aio-lp-hero__lead {
    font-size: 17px
  }
  .aio-lp-plan__top p, .aio-lp-plan__body li {
    font-size: 16px
  }
}
@media(max-width:480px) {
  .aio-lp {
    font-size: 17px
  }
  .aio-lp-section {
    padding: 56px 18px
  }
  .aio-lp-hero__body {
    padding: 50px 18px 32px
  }
  .aio-lp .aio-lp-hero__title {
    font-size: 30px
  }
  .aio-lp-hero__tags span {
    font-size: 12px
  }
  .aio-lp-section-heading h2, .aio-lp-split h2, .aio-lp-why h2 {
    font-size: 26px
  }
  .aio-lp-research {
    padding: 22px 18px
  }
  .aio-lp-research__value strong {
    font-size: 58px
  }
  .aio-lp-research__bar {
    grid-template-columns: 81px 1fr 56px;
    gap: 7px
  }
  .aio-lp-case {
    padding: 22px 18px
  }
  .aio-lp-mini-cta__inner {
    padding: 30px 18px
  }
  .aio-lp-faq summary {
    font-size: 16px
  }
  .aio-lp-figure__question strong {
    font-size: 12px
  }
  .aio-lp-form {
    padding: 24px 16px
  }
}