/* ==========================================================================
   DH VALISE — SP (design canvas 390px)
   1rem = 10 design px（base.css でルートの font-size を連動）
   ========================================================================== */
@media (max-width: 767.98px) {

/* ==========================================================================
   共通
   ========================================================================== */
.cta__label {
  width: 30rem;
  height: 2.6rem;
  border-width: .2rem;
  font-size: 1.4rem;
  line-height: 2rem;
}

.cta__btn {
  gap: 1rem;
  width: 33rem;
  height: 6rem;
  border-radius: .7rem;
}
.cta__btn-text { font-size: 1.6rem; line-height: 3rem; letter-spacing: .08rem; }
.cta__arrow { width: 1.65rem; height: .7rem; }

.cta__above { font-size: 1.6rem; line-height: 2.2rem; letter-spacing: .048rem; font-weight: 700; }

/* ==========================================================================
   ヘッダー / グローバルナビ
   ========================================================================== */
.header { height: 6.5rem; }
.header__bar { display: none; }
.header__inner { width: 39rem; }

.header__logo { width: 6.5rem; height: 6.5rem; }

.header__nav { display: none; }

/* 変更（2026-09-24）: メニューを開いたとき、×ボタンで閉じられるようにした。
   .gnav は .header の子要素なので、.header 側に z-index を足しても
   内部の重なりは変わらない（.header が作るスタックコンテキストの中で
   .gnav:30 が .header__burger:auto を覆っていた）。
   ボタン自身を .gnav より前面に出すのが正しい直し方。 */
.header__burger {
  position: absolute;
  z-index: 40;
  right: 2rem;
  top: 2rem;
  display: block;
  width: 4.5rem;
  height: 4.5rem;
  padding: 0;
  border: .2rem solid var(--gold);
  border-radius: .3rem;
  background: var(--white);
  cursor: pointer;
}
.header__burger span {
  position: absolute;
  left: 50%;
  width: 2.5rem;
  height: .2rem;
  margin-left: -1.25rem;
  background: var(--gold);
  transition: transform .3s ease, opacity .2s ease;
}
.header__burger span:nth-child(1) { top: 1.31rem; }
.header__burger span:nth-child(2) { top: 2.11rem; }
.header__burger span:nth-child(3) { top: 2.91rem; }
.header__burger.is-open span:nth-child(1) { transform: translateY(.8rem) rotate(45deg); }
.header__burger.is-open span:nth-child(2) { opacity: 0; }
.header__burger.is-open span:nth-child(3) { transform: translateY(-.8rem) rotate(-45deg); }

.gnav {
  position: fixed;
  inset: 0;
  z-index: 30;
  display: grid;
  align-content: center;
  gap: 3rem;
  padding: 8rem 4rem;
  background: rgba(179, 148, 99, .97);
  color: var(--white);
  opacity: 0;
  transition: opacity .3s ease;
}
.gnav.is-open { opacity: 1; }
.gnav[hidden] { display: none; }
.gnav__list {
  display: grid;
  gap: 2.2rem;
  font-family: var(--mincho);
  font-weight: 600;
  font-size: 1.8rem;
  letter-spacing: .08em;
  text-align: center;
}
.gnav__sub {
  display: grid;
  gap: 1.2rem;
  padding-top: 2.4rem;
  border-top: .1rem solid rgba(255, 255, 255, .4);
  font-size: 1.2rem;
  letter-spacing: .06em;
  text-align: center;
}
body.is-nav-open { overflow: hidden; }

/* ==========================================================================
   FV
   ========================================================================== */
.fv { height: 76.7rem; }
.fv__inner { width: 39rem; }

.fv__badge {
  left: 0;
  top: 8.6rem;
  width: 37rem;
  height: 3rem;
  border-radius: 2.5rem;
  background: rgba(206, 177, 121, .7);
  font-size: 1.6rem;
  line-height: 3rem;
  text-shadow: 0 .2rem .5rem rgba(0, 0, 0, .25);
}

.fv__copy { left: 0; top: 13.7rem; gap: .6rem; }
.fv__copy-l1 { height: 4.5rem; align-items: center; }
.fv__copy-l1 span { font-size: 3.2rem; line-height: 4.5rem; letter-spacing: 0; }
.fv__copy-l2 { height: 5rem; align-items: center; }
.fv__copy-l2 span { font-size: 4rem; line-height: 4.5rem; letter-spacing: 0; }
.fv__copy-l2 i { letter-spacing: -1.6rem; }

.fv__lead {
  left: 4.9rem;
  top: 34.9rem;
  width: 18.9rem;
  font-weight: 500;
  font-size: 1.6rem;
  line-height: 2.6rem;
  letter-spacing: .08rem;
}
.fv__lead p + p { margin-top: 2.6rem; }

.fv__deco { display: none; }
.fv__deco-sp {
  display: block;
  position: absolute;
  left: 27.7rem;   /* 326 - 49 */
  top: -25.3rem;   /*  96 - 349 */
  width: 7rem;
  height: 7.7rem;
}
.fv__deco-sp2 {
  display: block;
  position: absolute;
  left: -10.1rem;  /* 装飾 x(-52) - リード文 x(49) */
  top: -8.1rem;    /* 装飾 y(268) - リード文 y(349) */
  width: 34.27rem;
  height: 34.48rem;
  z-index: -1;
}

.fv__visual { left: 18rem; top: 23.8rem; width: 21rem; height: 52.9rem; }
/* 変更（2026-09-24）: 氏名ラベルの左右余白を広げた。
   元は箱 14rem に対し文字が 10.15rem で、左右 19.3px しか無く窮屈だった。
   右端（377px）は据え置いたまま箱を左へ 18px 伸ばし、
   中央寄せのまま左右とも約 28px の余白にしている。 */
.fv__name {
  left: 3.9rem;
  top: 28.5rem;
  width: 15.8rem;
  height: 5rem;
  padding: 0;
  justify-content: center;
  font-size: 1.3rem;
  line-height: 2rem;
}

.fv__cta { left: 3rem; top: 66.8rem; width: 33rem; }
.fv__cta .cta__label { margin-bottom: -.6rem; width: 30rem; }

/* ==========================================================================
   セクション2 — お悩み
   ========================================================================== */
.worry {
  height: 76.7rem;
  background: linear-gradient(202.6deg, #D0BE98 4.6%, rgba(251, 247, 239, .6) 96.6%);
}

.worry__h2bg {
  display: block;
  position: absolute;
  left: calc(var(--gut) + 1rem);
  top: 0;
  width: 37rem;
  height: 13.9rem;
  object-fit: cover;
}

.worry__h2 {
  left: calc(var(--gut) + 6.2rem);
  top: 1.9rem;
  width: 26.4rem;
  font-size: 2.2rem;
  line-height: 3.2rem;
  letter-spacing: 0;
  text-shadow: .2rem .2rem .4rem rgba(0, 0, 0, .25);
}
.worry__h2 em { font-size: 2.2rem; letter-spacing: 0; line-height: inherit; }
.worry__h2 i { letter-spacing: 0; }

.worry__card {
  left: calc(var(--gut) + 2rem);
  top: 13.9rem;
  width: 35rem;
  height: 45rem;
  clip-path: polygon(
    0 0,
    calc(100% - 5.65rem) 0,
    100% 5.65rem,
    100% 100%,
    5.65rem 100%,
    0 calc(100% - 5.65rem)
  );
}

.worry__list {
  left: 2.4rem;
  top: 4.5rem;
  width: 30.7rem;
  font-size: 1.4rem;
  line-height: 2.3rem;
}
.worry__list li { align-items: flex-start; gap: .5rem; min-height: 0; }
.worry__list li + li { margin-top: 3.4rem; }
.worry__list li img { width: 2.2rem; height: 2rem; margin-top: .2rem; }
.worry__list li + li::before {
  left: 1.9rem;
  top: -1.7rem;
  width: 26.9rem;
  background: repeating-linear-gradient(to right,
              var(--tan) 0 .3rem, transparent .3rem .7rem);
}

.worry__photo {
  left: 17.3rem;
  top: 26.1rem;
  width: 19.7rem;
  height: 24.7rem;
  -webkit-mask-image: linear-gradient(180deg, #000 88.5%, transparent 104%);
          mask-image: linear-gradient(180deg, #000 88.5%, transparent 104%);
}

.worry__msg {
  left: calc(var(--gut) + 3.1rem);
  top: 65rem;
  width: 32.8rem;
  height: 10.4rem;
  padding: 1.2rem 0;
  font-size: 1.7rem;
  line-height: 2.6rem;
  letter-spacing: .085rem;
  text-align: center;
}

/* ==========================================================================
   セクション3 — 未来のための学び
   ========================================================================== */
.learn {
  height: 76.7rem;
  margin-top: 0;
  background: linear-gradient(202.6deg, #D0BE98 4.6%, rgba(251, 247, 239, .6) 96.6%);
}

.learn__h2 {
  left: calc(var(--gut) + 3.7rem);
  top: 6rem;
  gap: .5rem;
  width: fit-content;
  font-size: 2.4rem;
  line-height: 5rem;
}
/* 変更（2026-09-24）: 白帯の幅が文字幅とぴったり同じで左右に余白が無かったため、
   fit-content ＋ padding-inline に変更。PC 側は元から左右 12.3px の余白があり、
   その値（1.3rem 相当）にそろえている。 */
.learn__h2 > span {
  width: fit-content;
  padding-inline: 1.3rem;
  height: 4rem;
  box-shadow: .2rem .2rem .4rem rgba(0, 0, 0, .25);
}
/* style.css 側の .learn__h2 > span:nth-child(n){width:38.6rem/42rem} は
   メディアクエリ外かつ詳細度 (0,2,1) なので SP にも効いてしまう。
   同じ詳細度で打ち消す。 */
.learn__h2 > span:nth-child(1),
.learn__h2 > span:nth-child(2) { width: fit-content; }
.learn__h2 i { text-shadow: none; }

.learn__photo {
  left: calc(var(--gut) + 3.7rem);
  top: 17.7rem;
  width: 31.6rem;
  height: 21.3rem;
  padding: .3rem;
}

/* 変更（2026-09-24）: 本文の上下余白をそろえた。
   元は高さ 35.2rem に対して本文が 32rem あり、余白が上 30px / 下 2px だった。
   高さを 36rem にして padding を上下 2rem にそろえ、実測 20px / 20px にしている。
   セクション下端まで 15px しか余裕が無いため、
   下のセクションを押し下げない範囲に収めた。 */
.learn__body {
  left: calc(var(--gut) + 1.2rem);
  top: 40rem;
  width: 36.6rem;
  height: 36rem;
  padding: 2rem 2.5rem;
  font-size: 1.6rem;
  line-height: 2.7rem;
}

/* ==========================================================================
   セクション4 — 4日間の流れ
   ========================================================================== */
.flow { height: 71.1rem; margin-top: 2.8rem; }

.flow__h2 {
  left: calc(var(--gut) + 6.25rem);
  top: 0;
  width: 26.5rem;
  font-size: 2.4rem;
  line-height: 3rem;
}

.flow__list { left: calc(var(--gut) + 2.5rem); top: 10rem; width: 34rem; height: 51.1rem; }

.flow__item { width: 34rem; height: 11.5rem; }
.flow__item--1 { left: 0; top: 0; }
.flow__item--2 { left: 0; top: 13.2rem; }
.flow__item--3 { left: 0; top: 26.4rem; }
.flow__item--4 { left: 0; top: 39.6rem; }

.flow__item::before {
  top: 0;
  height: 11.5rem;
  box-shadow: 0 0 0 .3rem var(--day);
}

.flow__day {
  left: .8rem;
  top: .6rem;
  width: 5.5rem;
  height: 5.5rem;
  font-size: 2rem;
  line-height: 2rem;
}
/* 変更（2026-09-23）: Day2 だけ元デザインで 2.4rem と大きかったため、SP では他の Day と
   同じ 2rem にそろえた。style.css の .flow__item--2 .flow__day{font-size:2.4rem} は
   メディアクエリ外かつ詳細度 (0,2,0) で、SP でも .flow__day{font-size:2rem} (0,1,0) に
   競り勝つ。そのため「消す」のではなく同じ詳細度で上書きする必要がある。
   PC は元デザインのまま 2.4rem。 */
.flow__item--2 .flow__day { top: .5rem; font-size: 2rem; }

.flow__item .flow__icon { left: auto; margin-left: 0; }   /* PC 用の中央寄せを解除 */
.flow__item--1 .flow__icon { left: 8.9rem; top: 2.9rem; width: 3.8rem; height: 6.1rem; }
.flow__item--2 .flow__icon { left: 8.1rem; top: 4.4rem; width: 5.3rem; height: 4rem; }
.flow__item--3 .flow__icon { left: 7.7rem; top: 3.4rem; width: 5rem;   height: 5rem; }
.flow__item--4 .flow__icon { left: 8.3rem; top: 3.1rem; width: 4.9rem; height: 5rem; }

.flow__text { left: 15.3rem; top: 1.3rem; width: 17rem; }
.flow__text h3 { font-size: 1.6rem; line-height: 3.4rem; text-align: left; }
.flow__text p { width: 17rem; margin: 0; font-weight: 400; font-size: 1.4rem; line-height: 2rem; }
.flow__item--1 .flow__text p { width: 14.9rem; }
.flow__item--2 .flow__text,
.flow__item--3 .flow__text,
.flow__item--4 .flow__text { top: .9rem; }
.flow__item--3 .flow__text,
.flow__item--4 .flow__text { top: 1.1rem; }

.flow__item + .flow__item::after { display: none; }

.flow__cta { left: calc(var(--gut) + 3rem); top: 65.1rem; width: 33rem; }

/* ==========================================================================
   セクション5 — 置き換えて考える学び
   ========================================================================== */
.work { height: 77.5rem; margin-top: 2rem; }

.work__material { left: var(--gut); top: 0; width: 39rem; height: 26rem; }
/* 変更（2026-09-24）: 「教材はイメージです。」が実機で 2 行に折り返していた。
   枠幅 10.9rem（109px）に対し文字が 108.8px と余裕が 0.2px しかなく、
   端末ごとのフォント描画差で簡単にあふれる状態だった。
   white-space:nowrap で確実に 1 行にし、枠幅にも余裕を持たせている。
   右端は 38.4rem（画像右端から 6px 内側）。元は画面端ぴったりで、
   文字が端に触れていたため、PC と同じだけの内側余白にそろえた。 */
.work__material figcaption {
  left: 24rem;
  top: 24.8rem;
  width: 14.4rem;
  white-space: nowrap;
  font-size: 1.1rem;
  line-height: 1.1rem;
  text-align: right;
}

.work__h2 {
  left: calc(var(--gut) + 1.8rem);
  top: 11.8rem;
  width: 28.8rem;
  font-size: 2.4rem;
  line-height: 3.5rem;
  text-align: left;
  text-shadow: .4rem .4rem 2rem var(--white), .4rem .4rem 2rem var(--white);
}

.work__sub {
  left: var(--gut);
  top: 28rem;
  width: 39rem;
  font-size: 2rem;
  line-height: 2.3rem;
  text-align: center;
  text-shadow: .2rem .2rem 1rem var(--white), .2rem .2rem 1rem var(--white);
}

.work__list {
  left: calc(var(--gut) + 2rem);
  top: 32.7rem;
  display: block;
  width: 35rem;
}
.work__item {
  position: relative;
  display: flex;
  align-items: center;
  width: 35rem;
  height: 11.5rem;
}
.work__item + .work__item { margin-top: .5rem; }

.work__item-photo {
  order: 2;
  width: 10rem;
  height: 11.5rem;
  border-radius: 0;
}
.work__item-photo::after { display: none; }

.work__item-text { order: 1; width: 25rem; margin-top: 0; }
.work__item-text h3 {
  font-size: 1.6rem;
  line-height: 2.3rem;
  text-align: left;
  font-weight: 700;
}
.work__item-text p {
  display: block;
  margin-top: 1rem;
  font-family: var(--mincho);
  font-weight: 400;
  font-size: 1.4rem;
  line-height: 2rem;
  color: var(--ink);
}

.work__note {
  left: calc(var(--gut) + 2rem);
  top: 70.2rem;
  width: 35rem;
  font-size: 1.4rem;
  line-height: 1.8rem;
  text-align: center;
  color: var(--gold-sp);
}

/* ==========================================================================
   セクション6 — 代表の想い
   ========================================================================== */
.profile { height: 76.7rem; }

.profile__h2 { left: var(--gut); top: 3rem; width: 39rem; font-size: 2.4rem; line-height: 2rem; }
.profile__h2 span { margin-top: .4rem; font-size: 1.6rem; line-height: 2rem; }

.profile__card { left: var(--gut); top: 5.8rem; width: 39rem; height: 68rem; }
.profile__card::before {
  left: 1.5rem;
  top: 6.2rem;
  width: 36rem;
  height: 61.8rem;
  box-shadow: .2rem .2rem .4rem rgba(0, 0, 0, .25);
}

.profile__photo {
  left: 18.4rem;
  top: 1.1rem;
  width: 20.6rem;
  height: 40.9rem;
  -webkit-mask-image: linear-gradient(180deg, #000 68%, transparent 82%);
          mask-image: linear-gradient(180deg, #000 68%, transparent 82%);
}

.profile__name {
  left: 4.4rem;
  top: 13.6rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 14rem;
  height: 7rem;
  background: var(--cream);
  font-weight: 600;
  font-size: 1.6rem;
  line-height: 2.6rem;
  color: var(--ink);
}

.profile__lead {
  left: 1.5rem;
  top: 26rem;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1rem;
  width: 36rem;
  height: auto;
  padding: 0;
  background: none;
  font-size: 2.4rem;
  line-height: 3.3rem;
}
.profile__lead span {
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--gold);
}
.profile__lead span:nth-child(1) { width: 34.9rem; height: 3.4rem; }
.profile__lead span:nth-child(2) { width: 27.6rem; height: 3.4rem; }

.profile__body {
  left: 3.5rem;
  top: 36.3rem;
  width: 32rem;
  font-size: 1.4rem;
  line-height: 2.2rem;
}
.profile__body p + p { margin-top: 1.5rem; }

/* ==========================================================================
   セクション7 — 受講方法
   ========================================================================== */
.howto { height: 76.7rem; margin-top: 0; }

.howto__h2 { left: var(--gut); top: 4.2rem; width: 39rem; height: 2rem; font-size: 2.4rem; line-height: 2rem; }

.howto__deco { display: none; }
.howto__deco-sp {
  display: block;
  position: absolute;
  left: calc(var(--gut) + 21.1rem);
  top: 4.2rem;
  width: 15rem;
  height: 6.4rem;
  object-fit: contain;
}

.howto__sub {
  left: var(--gut);
  top: 13.4rem;
  width: 39rem;
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 3.5rem;
  letter-spacing: .036rem;
  text-align: center;
}
.howto__sub em { font-size: 3rem; line-height: 0; letter-spacing: .12rem; }

.howto__list {
  left: calc(var(--gut) + 3.5rem);
  top: 19rem;
  display: block;
  width: 32rem;
}
.howto__item {
  position: relative;
  display: block;
  width: 32rem;
  height: 12rem;
  padding: 0;
  border: .2rem solid var(--tan-line);
  border-radius: 1rem;
  box-shadow: none;
}
.howto__item + .howto__item { margin-top: 1.5rem; }

.howto__item h3 {
  position: absolute;
  left: 11rem;
  top: 1.2rem;
  display: block;
  padding: 0;
  font-size: 1.8rem;
  line-height: 3rem;
}

.howto__icon {
  position: absolute;
  left: -9rem;
  top: .8rem;
  width: 7.5rem;
  height: 7.5rem;
}
.howto__item:nth-child(1) .howto__icon img { width: 4.1rem; height: 4rem; }
.howto__item:nth-child(2) .howto__icon img { width: 4rem;   height: 4.2rem; }
.howto__item:nth-child(3) .howto__icon img { width: 4.4rem; height: 3.2rem; }

.howto__val { position: absolute; left: 11rem; top: 5.2rem; text-align: left; }
.howto__cap { font-size: 1.3rem; line-height: 3rem; }
.howto__num { margin-top: -.8rem; font-size: 2rem; line-height: 3rem; }
.howto__item:last-child .howto__num { font-size: 2rem; }

.howto__cta { left: var(--gut); top: 60.8rem; width: 39rem; }
.howto__cta .cta__above { margin-bottom: 1.3rem; }

/* ==========================================================================
   セクション8 — 個別相談
   ========================================================================== */
.consult { height: 76.7rem; margin-top: 0; background: var(--cream); }

.consult__h2 {
  left: var(--gut);
  top: .8rem;
  width: 39rem;
  font-size: 2.4rem;
  line-height: 3rem;
  letter-spacing: 0;
  text-align: center;
}
.consult__lead {
  left: var(--gut);
  top: 8rem;
  width: 39rem;
  font-size: 1.6rem;
  line-height: 2.4rem;
  text-align: center;
}

.consult__photo { left: calc(var(--gut) + 6.5rem); top: 18.5rem; width: 26rem; height: 17.3rem; }
.consult__photo figcaption {
  left: -6.5rem;
  top: 17.4rem;
  width: 32.5rem;
  font-weight: 600;
  font-size: 1rem;
  line-height: 1.44rem;
  text-align: right;
}

.consult__steps {
  left: calc(var(--gut) + 4rem);
  top: 39.4rem;
  display: block;
  width: 31rem;
}
/* 変更（2026-09-24）: STEP 01〜03 の左端をそろえた。
   style.css の .consult__step{justify-content:center} はメディアクエリ外にあり
   SP にも効くため、説明文の長さが違う分だけ STEP ごとに全体が横へずれていた
   （STEP文字の左端が 76.4 / 65.4 / 59.0px とバラついていた）。
   左揃えに変え、STEP03 と同じ位置（カード左端＋1.9rem）に固定している。 */
.consult__step {
  grid-template-columns: 3.9rem auto;
  grid-template-areas:
    "no icon"
    "no icon";
  align-items: center;
  justify-content: start;
  column-gap: 4rem;
  width: 31rem;
  padding-left: 1.9rem;
  height: 8.5rem;
  border-radius: 1.5rem;
  box-shadow: 0 0 0 .2rem var(--tan-line2);
}
.consult__step + .consult__step { margin-top: 1rem; }

.consult__step-no {
  grid-area: no;
  align-self: center;
  width: 3.9rem;
  font-size: 2rem;
  line-height: 2.6rem;
  text-align: center;
}
.consult__step-no span { display: block; height: 0; overflow: hidden; }
.consult__step-no em { font-size: 2rem; }

.consult__step-icon { grid-area: icon; width: 6.6rem; height: 6.6rem; }
.consult__step:nth-child(1) .consult__step-icon img { width: 3.9rem; height: 3.9rem; }
.consult__step:nth-child(2) .consult__step-icon img { width: 4.7rem; height: 3.4rem; }
.consult__step:nth-child(3) .consult__step-icon img { width: 3.9rem; height: 4.1rem; }

.consult__step-text {
  grid-area: icon;
  align-self: center;
  justify-self: start;
  margin-left: 7.6rem;
  font-weight: 500;
  font-size: 1.5rem;
  line-height: 2.2rem;
}

.consult__cta { left: calc(var(--gut) + 3rem); top: 69.4rem; width: 33rem; }

/* ==========================================================================
   セクション9 — よくあるご質問
   ========================================================================== */
.faq { height: 76.7rem; }

.faq__h2 { left: var(--gut); top: 3.1rem; width: 39rem; font-size: 2.4rem; line-height: 3rem; }
.faq__h2 span { margin-top: 0; font-size: 1.4rem; line-height: 3rem; }

.faq__list {
  left: calc(var(--gut) + 4.5rem);
  top: 10.6rem;
  width: 30rem;
  height: 63.4rem;
  padding: 1.6rem 1.1rem 1.6rem 1rem;
  border-radius: 1rem;
}
.faq__item { padding-bottom: 1.2rem; }
.faq__item + .faq__item { margin-top: 1.4rem; }
.faq__item:not(:last-child) { background-size: 27rem .1rem; background-position: .5rem 100%; }
.faq__item dt { font-size: 1.4rem; line-height: 2rem; color: var(--gold); }
.faq__item dd { margin-top: .4rem; padding-left: 1.8rem; font-size: 1.4rem; line-height: 2rem; }
.faq__item:last-child dd { line-height: 2rem; }

/* ==========================================================================
   フッター
   ========================================================================== */
.footer__top { height: 61.7rem; }

.footer__content { left: calc(var(--gut) + 3.9rem); top: 17.6rem; width: 31.2rem; }
.footer__h2 { font-size: 2.4rem; line-height: 3.45rem; }
.footer__lead { margin-top: 3rem; font-size: 1.6rem; line-height: 2.6rem; }
.footer__cta { margin-top: 9.9rem; margin-left: -.9rem; }

.footer__bottom { height: 15rem; }
.footer__bottom-inner { width: 39rem; }

.footer__logo { left: 5.6rem; top: 2.4rem; width: 7.5rem; height: 7.5rem; }

.footer__meta {
  left: 18.8rem;
  top: 2.4rem;
  display: block;
  width: 14.5rem;
  font-size: 1rem;
  line-height: 1.44rem;
}
.footer__meta > * { display: block; }
.footer__meta > * + * { margin-top: .76rem; }

.footer__copy { top: 12.9rem; font-size: 1rem; line-height: 1.44rem; }

}
