/* ============================================================
   Auto-Reporting LP – styles.css  v10.0
   monday.com design language – メリハリ・ジャンプ率重視
   ============================================================
   Design System (Work Management official):
     01 Primary:  #6161FF  — typography, bg, brand elements
     02 Contrast: #311CAC  — contrast & depth (hover等)
     03 Surface:  #ECEFF8  — background, brand elements
     04 Dark:     #181B34  — dark background
     Accent: #00c875 (green), #fdab3d (orange), #ff158a (pink)
     Font: Poppins 400 + Noto Sans JP

   Typography Scale (ジャンプ率):
     h1 hero:     clamp(3.6rem, 5vw, 6rem)    — 最大
     h2 section:  clamp(3rem, 4.2vw, 4.8rem)  — 大見出し
     訴求テキスト: 2.4–3.6rem                   — 訴求ポイント
     h3 card:     2.0–2.8rem                   — 小見出し
     body:        1.6rem (16px)                — 本文（最小）
     eyebrow:     1.2–1.3rem                   — 装飾ラベル

   Section bg (公式準拠 — 白ベース、色帯は1箇所のみ):
     HERO:      #FBFBFF
     ABOUT:     #ECEFF8 (03 surface)
     CHALLENGE: #FBFBFF
     MID-CTA:   #FBFBFF
     EFFECT:    #ECEFF8 (03 surface)
     FEATURE:   #FBFBFF
     AI:        #6161ff (01 primary — 唯一のカラー帯)
     TRIAL:     #ECEFF8 (03 surface)
     STRENGTH:  #ECEFF8 (03 surface)
     CONTACT:   #ECEFF8 (03 surface)

   Section padding: 12rem 0 (広めの余白)
   Card style: border-radius: 0, border-bottom accent
   Min readable: 1.6rem (16px)
   ============================================================ */


/* ─── Typography & Base ─────────────────────────────────────── */

/* 単語途中の改行防止 */
.nb { white-space: nowrap; }

.ar-main {
  padding-top: 10.6rem;
  font-family: Poppins, "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
  font-weight: 400;
  color: #323338;
  font-size: 1.6rem;
  line-height: 1.8;
  background-color: #FBFBFF;
}

.ar-main section {
  padding: 12rem 0;
}

.ar-container {
  width: min(136.6rem, calc(100% - 12rem));
  margin: 0 auto;
}

/* h2: センター配置、大きめサイズでメリハリ — ジャンプ率3:1 vs body */
.ar-main .h2_ttl {
  text-align: center; color: #181B34;
  font-size: clamp(3rem, 4.2vw, 4.8rem); font-weight: 700;
  padding-bottom: 0; margin-bottom: 5rem;
  line-height: 1.5;
}
.ar-main .h2_ttl::after {
  display: none;
}
.ar-contact-head .h2_ttl { text-align: center; margin-bottom: 2rem; }

.ar-main h3 {
  color: #181B34;
  font-size: 2.4rem; font-weight: 600;
  line-height: 1.4; margin-bottom: 1.2rem;
}

.ar-main p,
.ar-main li {
  font-weight: 400;
}

.ar-main strong,
.ar-main b {
  font-weight: 700;
}


/* ─── Header (official: white bg + 1px border-bottom) ──────── */

/* Override base lavender → white, add official border */
.header {
  background-color: #FBFBFF;
  border-bottom: 1px solid hsla(0, 0%, 43.9%, .1);
  font-family: Poppins, "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}

/* Menu: fill remaining space, right-align, uniform gap */
.header .header_inner .header_container .header_menu {
  flex: 1;
  justify-content: flex-end;
  gap: 2.4rem;
}

/* Nav links: tighten base 7rem → 3rem */
.header .header_inner .header_container .header_menu ul li + li {
  margin-left: 3rem;
}

/* Nav link hover: official uses #6161ff */
.header .header_inner .header_container .header_menu ul li a {
  transition: color 0.2s ease;
}
.header .header_inner .header_container .header_menu ul li a:hover {
  color: #6161ff;
}

/* Task button: compact pill */
.header .header_inner .header_container .header_menu .ar-task-btn {
  display: flex; align-items: center; justify-content: center;
  width: 12rem; min-height: 4.4rem;
  border-radius: 10rem;
  background: #ECEFF8; color: #323338;
  font-size: 1.15rem; line-height: 1.3; font-weight: 600;
  text-align: center; padding: 0.5rem 0.8rem;
}

/* CTA buttons: remove base margin-left 7rem, use parent gap */
.header .header_inner .header_container .header_menu .header_nav_btn.ar-header-ctas {
  width: 30rem; height: auto; margin-left: 0;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 0.6rem;
}
.header .header_inner .header_container .header_menu .header_nav_btn.ar-header-ctas a {
  width: 100%; height: auto; min-height: 4.4rem;
  font-size: 1.2rem; border-radius: 10rem;
  padding: 0.5rem 0.8rem;
  display: flex; align-items: center; justify-content: center;
  opacity: 1;
  text-align: center; line-height: 1.25;
  white-space: nowrap;
  margin: 0;
  transition: background 0.2s ease, border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}
/* トライアル: Pink */
.header .header_inner .header_container .header_menu .header_nav_btn.ar-header-ctas a.ar-trial-btn {
  background: #fb275d; color: #fff;
}
.header .header_inner .header_container .header_menu .header_nav_btn.ar-header-ctas a:hover {
  opacity: 1;
  transform: translateY(-2px);
}
.header .header_inner .header_container .header_menu .header_nav_btn.ar-header-ctas a.ar-trial-btn:hover {
  background: #ff4d7a;
  box-shadow: 0 4px 12px rgba(251, 39, 93, .3);
}
/* お問い合わせ: Black */
.header .header_inner .header_container .header_menu .header_nav_btn.ar-header-ctas a.ar-contact-btn {
  background: #181B34; color: #fff;
}
.header .header_inner .header_container .header_menu .header_nav_btn.ar-header-ctas a.ar-contact-btn:hover {
  background: #323660;
  box-shadow: 0 4px 12px rgba(24, 27, 52, .4);
}
/* 資料請求: White Outline */
.header .header_inner .header_container .header_menu .header_nav_btn.ar-header-ctas a.ar-doc-btn {
  background: #FBFBFF; color: #323338; border: 1px solid #c3c6d4;
}
.header .header_inner .header_container .header_menu .header_nav_btn.ar-header-ctas a.ar-doc-btn:hover {
  background: #fff; border-color: #6161ff; color: #6161ff;
  box-shadow: 0 4px 12px rgba(0, 0, 0, .1);
}

.ar-menu-toggle {
  display: none;
  font-size: 1.2rem; line-height: 1; font-weight: 700;
  letter-spacing: 0.08em;
  border-radius: 10rem;
  padding: 0.85rem 1.2rem;
  background: #dde3f0; color: #323338;
}


/* ─── Buttons (official: #6161ff, pill 10rem, colored shadow) ── */

.ar-btn-row { display: flex; flex-wrap: wrap; gap: 1.6rem; }
.ar-center-row { justify-content: center; }

.ar-btn {
  display: inline-flex; justify-content: center; align-items: center;
  min-width: 24rem; height: 5.6rem;
  border-radius: 40px;
  padding: 0 3.2rem;
  font-size: 1.6rem; font-weight: 600;
  transition: background 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
  text-decoration: none;
  opacity: 1;
}

/* トライアル: Pink */
.ar-btn-primary {
  background: #fb275d;
  color: #fff;
  box-shadow: none;
}
.ar-btn:hover {
  opacity: 1;
  transform: translateY(-2px);
}
.ar-btn-primary:hover {
  background: #ff4d7a;
  box-shadow: 0 6px 20px rgba(251, 39, 93, .3);
}

/* お問い合わせ: Black */
.ar-btn-contact {
  background: #181B34;
  color: #fff;
  box-shadow: none;
}
.ar-btn-contact:hover {
  background: #323660;
  box-shadow: 0 6px 20px rgba(24, 27, 52, .4);
}

/* 資料請求: White Outline */
.ar-btn-secondary {
  background: #FBFBFF;
  color: #323338;
  border: 1px solid #c3c6d4;
  box-shadow: none;
}
.ar-btn-secondary:hover {
  background: #ECEFF8;
  border-color: #323338;
}


/* ─── HERO ──────────────────────────────────────────────────── */

.ar-first { padding: 0 !important; }
.ar-first .ar-container { width: 100%; max-width: none; padding: 0; }

.ar-hero-wire {
  background: #FBFBFF;
  padding: 8rem 6%;
  display: flex; flex-direction: column; justify-content: center;
  position: relative;
  overflow: hidden;
}
/* カラフルドット装飾 */
.ar-hero-wire::before,
.ar-hero-wire::after {
  content: "";
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
}
.ar-hero-wire::before {
  width: 18rem; height: 18rem;
  background: rgba(255, 21, 138, .06);
  top: -4rem; left: -6rem;
}
.ar-hero-wire::after {
  width: 14rem; height: 14rem;
  background: rgba(0, 200, 117, .06);
  bottom: 6rem; right: 2rem;
}

/* 追加ドット装飾（HTML span） */
.ar-hero-dot {
  position: absolute;
  border-radius: 50%;
  pointer-events: none;
}
.ar-hero-dot--orange {
  width: 10rem; height: 10rem;
  background: rgba(253, 171, 61, .08);
  top: 20%; right: 8%;
}
.ar-hero-dot--blue {
  width: 8rem; height: 8rem;
  background: rgba(97, 97, 255, .06);
  bottom: 12%; left: 4%;
}

.ar-hero-main-grid {
  display: grid; grid-template-columns: 1fr 1fr;
  gap: 4rem; align-items: center;
  max-width: var(--width-contents); margin: 0 auto;
}

.ar-hero-copy h1,
.ar-hero-catchcopy {
  font-size: clamp(3.6rem, 5vw, 6rem);
  font-weight: 700; line-height: 1.3; color: #181B34;
}
.ar-hero-copy h1 span,
.ar-hero-catchcopy span {
  color: #181B34;
  font-weight: 700;
}
.ar-hero-sub {
  margin-top: 1.2rem;
  font-size: clamp(2.2rem, 3.2vw, 3.5rem); font-weight: 500; color: #323338; line-height: 1.4;
}
/* h1がar-hero-subに移動した場合のリセット */
h1.ar-hero-sub {
  font-size: clamp(2.2rem, 3.2vw, 3.5rem); font-weight: 400; color: #323338; line-height: 1.4;
}

.ar-point-box {
  margin-top: 2.4rem;
  padding: 0;
  background: none;
  border: none;
  box-shadow: none;
}
.ar-point-box ul { display: grid; gap: 0.6rem; }
.ar-point-box li {
  position: relative; padding-left: 2.4rem;
  font-weight: 400; font-size: 1.6rem;
  color: #676879;
  line-height: 1.6;
}
.ar-point-box li:before {
  content: "\2713"; position: absolute; left: 0; top: 0;
  color: #00c875;
  font-weight: 700;
  font-size: 1.6rem;
}

.ar-hero-visual {
  border-radius: 0;
  background: none;
  display: flex; align-items: center; justify-content: center;
  border: none;
  box-shadow: none;
  overflow: hidden;
}
/* スライダー */
.ar-hero-slider {
  position: relative;
  flex-direction: column;
}
.ar-hero-slides {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.ar-hero-slide {
  width: 100%; height: 100%; display: block;
  position: absolute; top: 0; left: 0;
  object-fit: contain;
  opacity: 0;
  transition: opacity 0.6s ease;
}
.ar-hero-slide:first-child {
  position: relative;
}
.ar-hero-slide--active {
  opacity: 1;
}
.ar-hero-dots {
  display: flex; justify-content: center; gap: 0.8rem;
  padding: 1.2rem 0 0.8rem;
}
.ar-hero-dot-btn {
  width: 1rem; height: 1rem;
  border-radius: 50%;
  border: none;
  background: #c3c6d4;
  cursor: pointer;
  padding: 0;
  transition: background 0.3s ease, transform 0.2s ease;
}
.ar-hero-dot-btn--active {
  background: #6161ff;
  transform: scale(1.3);
}
.ar-hero-dot-btn:hover {
  background: #6161ff;
}

.ar-hero-visual img {
  width: 100%; height: auto; display: block;
}
.ar-hero-visual p {
  font-size: clamp(2rem, 2.6vw, 3rem);
  line-height: 1.45; text-align: center;
  color: #676879; font-weight: 400;
  padding: 2rem;
}

.ar-hero-wire .ar-btn-row {
  max-width: var(--width-contents); margin: 3.5rem auto 0;
}


/* ─── ABOUT STRIP ───────────────────────────────────────────── */

.ar-about-strip {
  background: #eceff8;
  padding: 6rem 0 !important;
}
.ar-about-strip .ar-container { text-align: center; }
.ar-about-strip p { font-size: 2rem; line-height: 1.8; font-weight: 400; }
.ar-about-strip strong { color: #181B34; font-weight: 700; font-size: 2.2rem; }
.ar-about-strip p + p { margin-top: 1rem; color: #676879; }

/* CTA variant */
.ar-about-cta {
  background: #6161FF !important;
  padding: 6rem 0 !important;
  position: relative;
  overflow: hidden;
}
.ar-about-cta .ar-about-lead {
  font-size: clamp(2.6rem, 3.6vw, 3.6rem);
  font-weight: 700;
  color: #ffffff;
  line-height: 1.7;
}
.ar-about-cta .ar-about-lead strong {
  color: #ffffff;
  font-weight: 700;
  font-size: clamp(3.2rem, 4.2vw, 4.8rem);
  letter-spacing: 0.02em;
}
.ar-about-cta .ar-about-sub {
  margin-top: 2.4rem;
  font-size: clamp(1.8rem, 2.2vw, 2.2rem);
  color: #ffffff;
  line-height: 2;
  font-weight: 700;
}
.ar-about-cta .ar-about-sub .ar-about-normal {
  font-weight: 400;
}
/* 圏点（傍点）強調 */
.ar-emphasis-dots {
  -webkit-text-emphasis: filled dot #ffe066;
  text-emphasis: filled dot #ffe066;
  -webkit-text-emphasis-position: over right;
  text-emphasis-position: over right;
  line-height: 1;
  display: inline-block;
  padding-top: 0.6em;
  margin-top: -0.6em;
}


/* ─── CHALLENGE (ストーリー) ────────────────────────────────── */

.ar-challenge { background: #ECEFF8; }

/* ── 左右対比 ── */
.ar-compare {
  display: flex;
  gap: 0;
  margin-bottom: 5rem;
}

/* 左右カラム */
.ar-compare-side {
  flex: 1;
  padding: 2.4rem 3rem;
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.ar-compare-before {
  background: none;
  border-radius: 0;
  flex-direction: row;
  padding: 0;
  gap: 2.5rem;
}
.ar-compare-before .ar-compare-item {
  flex: 1;
  flex-direction: column;
  text-align: center;
  align-items: center;
  background: #fff;
  border-radius: 16px;
  padding: 3rem 2rem;
  border-bottom: none;
  box-shadow: 0 4px 20px rgba(0, 0, 0, .08);
}
.ar-compare-before .ar-compare-item img {
  width: 16rem; height: 16rem;
  margin-bottom: 0.4rem;
}
.ar-compare-before h3 {
  color: #181B34;
  font-size: 1.8rem;
}
.ar-compare-before p {
  color: #676879;
}
.ar-compare-after {
  background: #FBFBFF;
  border-radius: 0 20px 20px 0;
}

/* ラベル */
.ar-compare-label {
  font-size: 1.4rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.5rem 1.6rem;
  border-radius: 40px;
  display: inline-block;
  align-self: flex-start;
  margin-bottom: 0.4rem;
}
.ar-compare-before .ar-compare-label {
  background: #676879;
  color: #fff;
}
.ar-compare-after .ar-compare-label {
  background: #6161ff;
  color: #fff;
}

/* 各アイテム */
.ar-compare-item {
  display: flex;
  align-items: center;
  gap: 1.4rem;
  padding-bottom: 2rem;
  border-bottom: 1px solid rgba(0,0,0,.06);
}
.ar-compare-item:last-child {
  padding-bottom: 0;
  border-bottom: none;
}
.ar-compare-item img {
  width: 12rem; height: 12rem;
  object-fit: contain;
  flex-shrink: 0;
}

/* テキスト */
.ar-compare-text h3 {
  font-size: 2.2rem;
  font-weight: 700;
  margin-bottom: 0.8rem;
}
.ar-compare-text p {
  font-size: 1.6rem;
  line-height: 1.8;
  color: #676879;
}
.ar-compare-after h3 { color: #6161ff; }
.ar-compare-after p { color: #323338; }

/* 中央ディバイダー */
.ar-compare-divider {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: space-around;
  flex-shrink: 0;
  width: 4rem;
  padding: 5rem 0 2rem;
}
.ar-compare-divider-arrow {
  width: 0; height: 0;
  border-top: 1rem solid transparent;
  border-bottom: 1rem solid transparent;
  border-left: 1.4rem solid #311CAC;
  opacity: .5;
}

/* チェックマーク */
.ar-check {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2rem; height: 2rem;
  border-radius: 50%;
  background: #00c875;
  color: #fff;
  font-size: 1.1rem;
  font-weight: 700;
  margin-right: 0.5rem;
  vertical-align: middle;
  box-shadow: 0 2px 6px rgba(0, 200, 117, .3);
}

/* ── 転換点 ── */
.ar-story-turning-block {
  background: #6161FF;
  padding: 5rem 4rem;
  border-radius: 16px;
  text-align: center;
}
.ar-story-turning-block .ar-story-turning-main {
  font-size: 4.5rem;
  font-weight: 700;
  color: #ffffff;
  line-height: 1.4;
  margin-bottom: 2rem;
}
.ar-story-turning-main strong {
  color: #ffffff;
}
.ar-story-turning-block .ar-story-turning-sub {
  font-size: 2.2rem;
  font-weight: 700;
  color: rgba(255,255,255,.85);
  line-height: 1.5;
  margin-top: 3.5rem;
  margin-bottom: 3rem;
}

/* ── 転換点内カード ── */
.ar-turning-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2rem;
}
.ar-turning-card {
  background: #fff;
  border-radius: 12px;
  padding: 2.4rem 2rem;
  text-align: center;
}
.ar-turning-card img {
  width: 16rem; height: 16rem;
  object-fit: contain;
  margin-bottom: 1rem;
}
.ar-turning-card h3 {
  color: #6161ff;
  font-size: 1.8rem;
  font-weight: 700;
  margin-bottom: 0.5rem;
}
.ar-turning-card p {
  color: #676879;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.6;
}

/* レスポンシブ */
@media (max-width: 768px) {
  .ar-turning-cards {
    grid-template-columns: 1fr;
  }
  .ar-compare {
    flex-direction: column;
  }
  .ar-compare-before { border-radius: 20px; flex-direction: column; }
  .ar-compare-divider {
    flex-direction: row;
    justify-content: space-around;
    width: auto;
    padding: 0 3rem;
    height: 3rem;
  }
  .ar-compare-divider-arrow {
    border-left: 1rem solid transparent;
    border-right: 1rem solid transparent;
    border-top: 1.4rem solid #6161ff;
    border-bottom: none;
  }
  .ar-story-turning-block { padding: 3.5rem 2.5rem; }
  .ar-story-turning-block .ar-story-turning-main { font-size: 2.6rem; }
  .ar-story-turning-block .ar-story-turning-sub { font-size: 1.6rem; }
}
@media (max-width: 600px) {
  .ar-compare-side { padding: 2rem; }
  .ar-compare-item img { width: 7rem; height: 7rem; }
}


/* ─── WEEKLY ────────────────────────────────────────────────── */

/* ─── EFFECT ───────────────────────────────────────────────── */

.ar-effect { background: #FBFBFF; }

.ar-effect-image {
  max-width: 133rem;
  margin: 0 auto 5rem;
  padding: 1rem;
  border-radius: 16px;
  overflow: hidden;
  box-shadow: 0 4px 24px rgba(0,0,0,.08);
}
.ar-effect-image img {
  width: 100%;
  height: auto;
  display: block;
}

/* 数値メトリクス */
.ar-effect-metrics {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 2.4rem;
  max-width: 90rem;
  margin: 0 auto;
}
.ar-effect-metric {
  text-align: center;
  padding: 3rem 2rem;
  background: #ECEFF8;
  border-radius: 16px;
  transition: transform 0.2s ease;
}
.ar-effect-metric:hover {
  border-color: #a0a3b8;
}
.ar-effect-metric-num {
  display: block;
  font-size: 5.6rem;
  font-weight: 800;
  color: #6161ff;
  line-height: 1;
  margin-bottom: 1rem;
}
.ar-effect-metric-num small {
  font-size: 2.4rem;
  font-weight: 600;
  color: #311CAC;
}
.ar-effect-metric-label {
  display: block;
  font-size: 1.6rem;
  font-weight: 600;
  color: #181B34;
  line-height: 1.5;
}

/* --- Before / After タイムライン（横軸グリッド） --- */
.ar-tl-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  grid-template-rows: auto auto auto auto auto;
  background: #FBFBFF;
  border: none; border-radius: 0; box-shadow: 0 2px 16px rgba(0,0,0,.08);
  overflow: hidden;
}

/* Row 1 & 5: Before / After 行ラベル（全幅） */
.ar-tl-row-label {
  grid-column: 1 / -1;
  text-align: center;
  font-size: 1.6rem; font-weight: 700;
  padding: 1.4rem 1rem;
}
.ar-tl-row-label--before {
  color: #fff;
  background: #676879;
  border-bottom: none;
}
.ar-tl-row-label--after {
  color: #fff;
  background: #6161ff;
  border-top: none;
}

/* Row 2 & 4: Before / After セル */
.ar-tl-cell {
  padding: 1.6rem 1.4rem;
  display: flex; flex-direction: column;
}
.ar-tl-cell:not(:nth-child(4n+2)) {
  border-left: 1px solid #e8eaf0;
}
.ar-tl-cell.ar-tl-before {
  justify-content: flex-end;
  background: #fafafa;
}
.ar-tl-cell.ar-tl-after {
  background: #FBFBFF;
}

/* Row 3: 曜日ラベル帯 */
.ar-tl-day {
  display: flex; align-items: center; justify-content: center;
  padding: 0.8rem 0.5rem;
  background: #181B34;
}
.ar-tl-day span {
  font-size: 1.6rem; font-weight: 700;
  letter-spacing: 0.04em;
  color: #fff;
  white-space: nowrap;
}

/* ステップ */
.ar-tl-step {
  position: relative;
  padding-left: 1.4rem;
  padding-bottom: 0.6rem;
  font-size: 1.6rem; font-weight: 400; line-height: 1.7;
}
.ar-tl-step:last-child { padding-bottom: 0; }
.ar-tl-step::before {
  content: "";
  position: absolute;
  left: 0; top: 0.8rem;
  width: 0.5rem; height: 0.5rem;
  border-radius: 50%;
}
.ar-tl-before .ar-tl-step::before { background: #c0c3ce; }
.ar-tl-after  .ar-tl-step::before { background: #6161ff; }

/* 時間帯ラベル */
.ar-tl-time {
  display: inline-block;
  font-weight: 600; font-size: 1.6rem;
  margin-right: 0.4rem;
  min-width: 2.4rem;
}
.ar-tl-before .ar-tl-time { color: #676879; }
.ar-tl-after  .ar-tl-time { color: #181B34; }

/* トラブル項目 */
.ar-tl-trouble {
  color: #c44; font-weight: 400;
  background: rgba(204, 68, 68, .06);
  padding: 0.4rem 0.6rem 0.4rem 1.4rem;
  margin-bottom: 0.2rem;
}
.ar-tl-trouble::before { background: #c44 !important; }

.ar-mini-label {
  display: inline-flex; align-items: center;
  margin-left: 0.4rem;
  background: #6161ff; color: #fff;
  padding: 0.2rem 0.8rem;
  font-size: 1.6rem; line-height: 1.3; font-weight: 600;
  border-radius: 2rem;
}

.ar-weekly-image {
  margin-top: 3rem;
}
.ar-weekly-image img {
  width: 100%; height: auto; object-fit: contain;
  display: block;
  border-radius: 8px;
  border: 1px solid #d0d4e4;
  background: #FBFBFF;
  box-shadow: 0 2px 8px rgba(0,0,0,.06);
}

.ar-reduction-box {
  margin-top: 2.5rem; border-radius: 1rem;
  text-align: center;
  background: #FBFBFF;
  box-shadow: none;
  padding: 2.8rem;
}
.ar-reduction-box p {
  font-weight: 700; font-size: 2.2rem; color: #6161ff;
}
.ar-reduction-box p + p { margin-top: 0.5rem; font-size: 1.6rem; font-weight: 400; color: #676879; }

.ar-weekly .ar-btn-row { margin-top: 5rem; }


/* ─── FEATURE ───────────────────────────────────────────────── */

.ar-feature { background: #FBFBFF; }

.ar-feature-block + .ar-feature-block { margin-top: 8rem; }

.ar-feature-block-label {
  margin-bottom: 1rem; color: #6161ff;
  font-size: 1.4rem; font-weight: 600; letter-spacing: 0.06em;
}

/* 機能ブロック eyebrow ナンバー付き */
.ar-feature-eyebrow {
  display: flex;
  align-items: baseline;
  gap: 1.2rem;
  margin-bottom: 2.4rem;
}
.ar-feature-eyebrow-num {
  font-size: 6rem;
  font-weight: 800;
  line-height: 1;
  color: #6161ff;
  opacity: .15;
  position: relative;
}
.ar-feature-eyebrow-text {
  font-size: 2.8rem;
  font-weight: 700;
  color: #181B34;
}
.ar-feature-block--orange .ar-feature-eyebrow-text { color: #c07800; }
.ar-feature-block--green .ar-feature-eyebrow-text { color: #008a55; }
.ar-feature-block--pink .ar-feature-eyebrow-text { color: #d4106e; }

/* 機能ブロックごとのアクセントカラー */
.ar-feature-block--orange {
  background: #fff8ee;
  border-radius: 24px;
  padding: 4rem 3.5rem;
  margin-left: -3.5rem;
  margin-right: -3.5rem;
}
.ar-feature-block--orange .ar-feature-eyebrow-num { color: #fdab3d; }
.ar-feature-block--orange .ar-feature-text-card h3 { color: #e09520; }
.ar-feature-block--orange .ar-feature-3col-label { color: #e09520; }

.ar-feature-block--green {
  background: #eefbf4;
  border-radius: 24px;
  padding: 4rem 3.5rem;
  margin-left: -3.5rem;
  margin-right: -3.5rem;
}
.ar-feature-block--green .ar-feature-eyebrow-num { color: #00c875; }
.ar-feature-block--green .ar-feature-report h3 { color: #00a060; }
.ar-feature-block--green .ar-feature-3col-label { color: #00a060; }

.ar-feature-block--pink {
  background: #fff0f6;
  border-radius: 24px;
  padding: 4rem 3.5rem;
  margin-left: -3.5rem;
  margin-right: -3.5rem;
}
.ar-feature-block--pink .ar-feature-eyebrow-num { color: #ff158a; }
.ar-feature-block--pink .ar-feature-report h3 { color: #ff158a; }

.ar-feature-2col {
  display: grid; grid-template-columns: 1fr 1fr; gap: 3rem;
}

.ar-feature-text-card,
.ar-feature-media-card {
  border-radius: 16px;
  background: #FBFBFF;
  border: none;
  box-shadow: 0 2px 12px rgba(0,0,0,.06);
  padding: 3.5rem; overflow: hidden;
  transition: box-shadow 0.3s ease, transform 0.2s ease;
  display: flex; flex-direction: column;
}
.ar-feature-text-card:hover,
.ar-feature-media-card:hover {
  border-color: #a0a3b8;
}

.ar-feature-text-card h3 { font-size: 2.2rem; color: #181B34; }
.ar-feature-text-card > p { font-weight: 400; }
.ar-feature-text-card > p + p { margin-top: 0.8rem; color: #676879; }

.ar-feature-text-card > p:last-of-type {
  margin-bottom: 3rem;
}
.ar-feature-text-card-media {
  margin-top: auto;
  padding-top: 1.6rem;
  border-radius: 12px;
  background: #ECEFF8;
  text-align: center;
  overflow: hidden;
  border: none;
}
.ar-feature-text-card-media img {
  width: 100%; height: auto; max-height: 28rem; object-fit: contain;
}

.ar-feature-media-card { text-align: center; }
.ar-feature-media-card p { font-weight: 400; }
.ar-feature-media-card img {
  width: 100%; height: auto; object-fit: contain;
  border-radius: 8px; margin-top: 1.2rem; background: #FBFBFF;
  border: 1px solid #d0d4e4;
  box-shadow: 0 2px 8px rgba(0,0,0,.06);
}

.ar-feature-report {
  border-radius: 16px;
  background: #FBFBFF;
  border: none;
  box-shadow: 0 2px 12px rgba(0,0,0,.06);
  padding: 3.5rem;
  transition: box-shadow 0.3s ease, transform 0.2s ease;
}
.ar-feature-report:hover {
  border-color: #a0a3b8;
}
.ar-feature-report .ar-feature-block-label { margin-bottom: 0.5rem; }
.ar-feature-report h3 { font-size: 2.2rem; }
.ar-feature-report > p { font-weight: 400; }
.ar-feature-report > p + p { margin-top: 0.5rem; color: #676879; }
.ar-feature-report h4 {
  font-size: 2.2rem; font-weight: 700; color: #181B34;
  margin-top: 4rem; margin-bottom: 2rem;
}

.ar-feature-report-images {
  display: grid; grid-template-columns: 1fr 1fr; gap: 2rem;
  margin-top: 2rem;
}
.ar-feature-report-images img {
  width: 100%; height: auto; object-fit: contain;
  background: #ECEFF8;
  border-radius: 12px;
  box-shadow: none;
  border: none;
}

.ar-feature-report .ar-feature-3col {
  margin-top: 2rem;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: 2rem;
}
.ar-feature-3col div {
  border-radius: 12px;
  background: #ECEFF8; text-align: center;
  box-shadow: none;
  border: none;
  overflow: hidden;
  transition: box-shadow 0.3s ease, transform 0.2s ease;
}
.ar-feature-3col div:hover {
  opacity: 1;
}
.ar-feature-3col img {
  width: 100%; height: auto; max-height: 20rem; object-fit: contain;
  padding: 1.2rem 1.2rem 0;
  background: #ECEFF8;
}
.ar-feature-3col-label {
  display: block;
  padding: 1rem 1.2rem 1.4rem;
  font-size: 1.6rem; font-weight: 600;
  color: #323338; text-align: center;
}


/* ─── AI (monday vibe + sidekick) ────────────────────────────── */

.ar-ai {
  background: #6161ff;
}

.ar-ai .h2_ttl { color: #fff; }

.ar-ai-grid {
  display: grid; grid-template-columns: 1fr 1fr; gap: 2.4rem;
}

.ar-ai-card {
  border-radius: 0; padding: 3.5rem;
  background: #FBFBFF;
  display: flex; flex-direction: column;
  border: none;
  box-shadow: 0 4px 24px rgba(0,0,0,.15);
}
.ar-ai-card-header { margin-bottom: 1.6rem; }
.ar-ai-card-header h3 { color: #181B34; font-size: 2.8rem; margin-bottom: 0.4rem; }
.ar-ai-card-tagline { color: #6161ff; font-weight: 600; font-size: 1.6rem; }
.ar-ai-card > p { font-weight: 400; color: #323338; line-height: 1.8; flex: 1; }

.ar-ai-card-visual {
  margin-top: 2rem; margin-bottom: 3rem; border-radius: 0; overflow: hidden;
  border: none;
  border-top: 1px solid #e8eaf0;
  border-bottom: 1px solid #e8eaf0;
}
.ar-ai-card-visual img {
  width: 100%; display: block;
  background: #FBFBFF;
}

.ar-ai-card-example {
  margin-top: auto; padding: 2rem;
  background: #ECEFF8; border-radius: 0;
  border-top: 2px solid #6161ff;
}
.ar-ai-example-label {
  display: inline-block;
  font-weight: 700; color: #fff; font-size: 1.2rem;
  background: #6161ff;
  padding: 0.3rem 1.2rem;
  border-radius: 2rem;
  margin-bottom: 1rem;
  letter-spacing: 0.04em;
}
.ar-ai-card-example > p:last-child {
  font-weight: 400; color: #323338; font-size: 1.6rem; line-height: 1.7;
}

.ar-ai .ar-btn-row { margin-top: 4rem; }
/* 紫背景上でも同じ色ルール */
.ar-ai .ar-btn-primary {
  background: #fb275d; color: #fff;
  box-shadow: none;
}
.ar-ai .ar-btn-primary:hover {
  background: #ff4d7a; color: #fff;
  box-shadow: none;
}
.ar-ai .ar-btn-contact {
  background: #181B34; color: #fff;
  box-shadow: none;
}
.ar-ai .ar-btn-contact:hover {
  background: #323660; color: #fff;
  box-shadow: none;
}
.ar-ai .ar-btn-secondary {
  background: #FBFBFF; color: #323338;
  border: 1px solid #c3c6d4;
  box-shadow: none;
}
.ar-ai .ar-btn-secondary:hover {
  background: #ECEFF8; color: #323338;
  border-color: #323338;
  box-shadow: none;
}


/* ─── TRIAL ─────────────────────────────────────────────────── */

.ar-trial { background: #ECEFF8; }

.ar-trial-links {
  display: flex; gap: 1.2rem; justify-content: center; flex-wrap: wrap;
  margin-bottom: 3rem;
}
.ar-trial-links .ar-btn {
  min-width: 20rem; height: 5rem; font-size: 1.5rem;
}

.ar-trial-grid {
  display: grid; grid-template-columns: 1.1fr 0.9fr;
  gap: 3.5rem; align-items: start;
}

.ar-trial-info > p { font-size: 1.7rem; font-weight: 400; line-height: 1.8; }
.ar-trial-info > p + p { margin-top: 0.8rem; color: #676879; }

.ar-trial-flow {
  margin-top: 2.5rem; border-radius: 0;
  background: #FBFBFF;
  border: none;
  box-shadow: 0 2px 16px rgba(0,0,0,.08);
  padding: 3rem;
}
.ar-trial-flow h3 { text-align: center; margin-bottom: 1.5rem; }

.ar-trial-flow ol { display: grid; gap: 1rem; counter-reset: steps; }
.ar-trial-flow li {
  counter-increment: steps;
  border-radius: 0.8rem; padding: 1.2rem 1.4rem 1.2rem 4rem;
  background: #eceff8; position: relative; font-weight: 400;
}
.ar-trial-flow li:before {
  content: counter(steps);
  position: absolute; left: 1.2rem; top: 50%; transform: translateY(-50%);
  width: 2.2rem; height: 2.2rem; border-radius: 50%;
  background: #fb275d; color: #fff;
  font-size: 1.2rem; font-weight: 700;
  display: flex; align-items: center; justify-content: center;
}


/* ─── Form ──────────────────────────────────────────────────── */

.ar-form {
  display: grid; gap: 1.2rem;
  border-radius: 0; background: #FBFBFF;
  border: none;
  box-shadow: 0 2px 16px rgba(0,0,0,.08);
  padding: 3rem;
}

.ar-form label { font-weight: 600; font-size: 1.6rem; color: #323338; }

.ar-form input,
.ar-form select,
.ar-form textarea {
  border: 1px solid #d0d4e4;
  background: #FBFBFF; border-radius: 0;
  padding: 1rem 1.4rem; font-size: 1.6rem;
  outline: none;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.ar-form input:focus,
.ar-form select:focus,
.ar-form textarea:focus {
  border-color: #6161ff;
  box-shadow: 0 0 0 3px rgba(97, 97, 255, .12);
}

.ar-form .ar-check {
  font-weight: 400; color: #676879;
  display: flex; gap: 0.7rem; align-items: center; margin-top: 0.4rem;
}
.ar-form .ar-check input,
.ar-radio-row input,
.ar-check-grid input {
  width: 1.8rem; height: 1.8rem; accent-color: #6161ff;
}

.ar-form button {
  margin-top: 1.2rem;
  border-radius: 40px;
  background: #6161ff; color: #fff;
  font-weight: 600; font-size: 1.6rem;
  padding: 1.4rem 2.4rem; min-width: 22rem;
  justify-self: center; text-align: center;
  box-shadow: 0 4px 16px rgba(97, 97, 255, .3);
  transition: background 0.25s ease, box-shadow 0.25s ease;
}
.ar-form button:hover { background: #4a4adf; box-shadow: 0 6px 24px rgba(97, 97, 255, .4); transform: translateY(-1px); }

.ar-radio-row { display: flex; gap: 1.6rem; }
.ar-radio-row label {
  font-weight: 400; display: flex; align-items: center; gap: 0.5rem;
}


/* ─── STRENGTH ──────────────────────────────────────────────── */

.ar-strength { background: #FBFBFF; }

.ar-strength-head {
  margin-bottom: 3.5rem; padding: 1.4rem 3rem;
  font-size: clamp(2rem, 2.6vw, 2.8rem);
  line-height: 1.6; text-align: center;
  font-weight: 600; color: #fff;
  background: #6161ff;
  border-radius: 0;
  display: table;
  margin-left: auto; margin-right: auto;
}

.ar-strength-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 2rem;
}
.ar-strength-grid article {
  text-align: center; border-radius: 0;
  background: #FFFFFF;
  border: 1px solid #d0d4e4;
  box-shadow: 0 2px 8px rgba(0,0,0,.04);
  padding: 2.4rem 2rem;
  transition: box-shadow 0.3s ease, transform 0.2s ease;
}
.ar-strength-grid article:hover {
  border-color: #a0a3b8;
}
.ar-strength-grid img {
  width: 15rem; height: 15rem;
  margin: 0 auto 1.2rem; object-fit: contain;
}
.ar-strength-grid h3 { font-size: 1.6rem; line-height: 1.5; margin-bottom: 0.8rem; min-height: 4.5rem; display: flex; align-items: center; justify-content: center; }
.ar-strength-grid p { color: #676879; margin-top: 0; font-weight: 400; font-size: 1.6rem; line-height: 1.75; }


/* ─── CONTACT ───────────────────────────────────────────────── */

.ar-contact { background: #ECEFF8; }

.ar-contact-head {
  display: flex; flex-direction: column; align-items: center;
  gap: 2rem;
  margin-bottom: 3rem;
  max-width: 90rem; margin-left: auto; margin-right: auto;
}

.ar-contact-mini-links {
  display: flex; gap: 1.2rem; justify-content: center; flex-wrap: wrap;
}
.ar-contact-mini-links .ar-btn {
  min-width: 20rem; height: 5rem; font-size: 1.5rem;
}

.ar-contact-form { max-width: 90rem; margin: 0 auto; }

.ar-check-grid {
  display: grid; grid-template-columns: repeat(3, 1fr);
  gap: 0.8rem; margin-bottom: 0.5rem;
}
.ar-check-grid label {
  border-radius: 0;
  background: #ECEFF8; padding: 1rem 1.4rem;
  display: flex; align-items: center; gap: 0.6rem;
  font-weight: 400; font-size: 1.6rem;
  transition: background 0.2s ease;
}
.ar-check-grid label:hover { background: #ECEFF8; }


/* ─── FOOTER ────────────────────────────────────────────────── */

.footer {
  background-color: #6161ff;
  font-family: Poppins, "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
}
.footer .footer_inner .footer_container .footer_nav ul li {
  font-weight: 400;
}
.footer .footer_inner .footer_container .footer_nav ul li a {
  color: #fff;
}
.footer .copyright {
  background-color: #FBFBFF;
}
.footer .copyright p {
  color: #181B34; font-weight: 400;
}

/* ─── THANKS PAGE ──────────────────────────────────────────── */
.ar-thanks {
  min-height: 60vh;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ar-thanks-box {
  text-align: center;
  max-width: 60rem;
  margin: 0 auto;
}
.ar-thanks-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 8rem; height: 8rem;
  border-radius: 50%;
  background: #6161ff;
  color: #fff;
  font-size: 4rem;
  font-weight: 700;
  margin-bottom: 3rem;
}
.ar-thanks-box h1 {
  font-size: clamp(2.4rem, 3.6vw, 3.6rem);
  font-weight: 700;
  color: #181B34;
  margin-bottom: 2rem;
  line-height: 1.4;
}
.ar-thanks-message {
  font-size: 1.6rem;
  line-height: 1.8;
  color: #676879;
  margin-bottom: 3rem;
}
.ar-thanks .ar-btn {
  min-width: 24rem;
}
.footer .gototop a svg { width: 6rem; height: 6rem; display: block; }
.footer .gototop a svg circle { fill: #6161ff; }
.footer .gototop a svg path { fill: #fff; }


/* ─── SECTION LABELS (eyebrow) ──────────────────────────────── */

.ar-section-label {
  text-align: center;
  font-size: 1.3rem; font-weight: 700;
  letter-spacing: 0.12em;
  color: #6161ff;
  margin-bottom: 1.2rem;
  text-transform: uppercase;
}
.ar-section-label--light {
  color: rgba(255,255,255,.7);
}

.ar-hero-trust-inner {
  display: flex; justify-content: center; align-items: center;
  gap: 1.6rem;
}

/* ─── HERO enhancements ────────────────────────────────────── */

.ar-hero-eyebrow {
  display: block;
  font-size: 1.4rem; font-weight: 600;
  letter-spacing: 0.04em;
  color: #676879;
  margin-bottom: 1.6rem;
}

.ar-hero-accent {
  color: #6161ff !important;
}

.ar-hero-copy h1 strong,
.ar-hero-catchcopy strong,
.ar-hero-sub strong {
  color: #6161ff;
  font-weight: 700;
}

.ar-hero-cta-row {
  margin-top: 3rem;
  display: flex; flex-wrap: wrap; gap: 1.2rem;
}
.ar-hero-cta-row .ar-btn {
  min-width: 22rem;
}

.ar-hero-trust {
  display: flex; justify-content: center; align-items: center;
  gap: 1.6rem;
  margin-top: 3rem;
}
.ar-hero-trust-label {
  font-size: 1.6rem; font-weight: 500;
  color: #323338;
}
.ar-hero-trust-sep {
  color: #c3c6d4;
  font-size: 1.3rem;
}

.ar-sp-only { display: none; }

/* ─── (old mid-cta removed — replaced by ar-mid-cta-inline) ── */


/* ─── MID CTA INLINE ──────────────────────────────────────── */

.ar-mid-cta-inline {
  background: #FBFBFF;
  padding: 5rem 0 !important;
  border-top: 1px solid #e8eaf0;
}

/* ─── DOCUMENT PAGE ─────────────────────────────────────────── */

.ar-document-page { min-height: calc(100vh - 18rem); }

.ar-document-page .ar-document-panel {
  max-width: 110rem; margin: 0 auto;
  background: #FBFBFF; border-radius: 1rem;
  box-shadow: none;
  padding: 3.5rem;
}
.ar-document-page .h2_ttl {
  font-size: 2.8rem; margin-bottom: 1.3rem;
}

.ar-document-lead {
  text-align: center; color: #676879;
  margin: -0.2rem 0 1.5rem; font-weight: 400;
}

.ar-document-layout {
  display: grid; grid-template-columns: 0.9fr 1.1fr;
  gap: 2.4rem; align-items: start;
}

.ar-document-preview {
  display: flex; align-items: center; justify-content: center;
}
.ar-document-form { border-radius: 1rem; padding: 1.5rem; background: #FBFBFF; }
.ar-document-form.ar-form-compact { max-width: none; }
.ar-document-preview img {
  width: 100%; height: auto; object-fit: contain;
}


/* ════════════════════════════════════════════════════════════════
   RESPONSIVE
   ════════════════════════════════════════════════════════════════ */

@media (max-width: 1300px) {
  .ar-container { width: min(136.6rem, calc(100% - 6rem)); }

  .header .header_inner .header_container .header_menu {
    gap: 1.6rem;
  }
  .header .header_inner .header_container .header_menu ul li + li {
    margin-left: 2rem;
  }
  .header .header_inner .header_container .header_menu .ar-task-btn {
    width: 11rem; font-size: 1.1rem;
  }
  .header .header_inner .header_container .header_menu .header_nav_btn.ar-header-ctas {
    width: 23rem; margin-left: 0;
  }
}

@media (max-width: 1080px) {
  .ar-main { padding-top: 9rem; }
  .ar-main section { padding: 8rem 0; }
  .ar-hero-cta-row { flex-direction: column; }
  .ar-hero-cta-row .ar-btn { width: 100%; min-width: 0; }

  .ar-hero-main-grid,
  .ar-feature-2col,
  .ar-ai-grid {
    grid-template-columns: 1fr;
  }
  /* トライアル: 左を狭くしてフォームに幅を確保 */
  .ar-trial-grid { grid-template-columns: 0.8fr 1.2fr; }
  .ar-trial-container { width: 95% !important; border-radius: 2rem; }

  /* 3col → 2col */
  .ar-feature-report .ar-feature-3col { grid-template-columns: repeat(2, 1fr); }
  .ar-check-grid { grid-template-columns: repeat(2, 1fr); }

  /* 強みセクション: 4列→2列 */
  .ar-strength-grid { grid-template-columns: 1fr 1fr; }

  .ar-hero-wire { padding: 5rem 4%; }

  /* Feature ブロック負マージン縮小 */
  .ar-feature-block--orange,
  .ar-feature-block--green,
  .ar-feature-block--pink {
    margin-left: -2rem;
    margin-right: -2rem;
    padding: 3rem 2rem;
  }

  /* eyebrow サイズ調整 */
  .ar-feature-eyebrow-num { font-size: 4.5rem; }
  .ar-feature-eyebrow-text { font-size: 2.2rem; }

  .ar-contact-head { display: block; }
  .ar-contact-head .h2_ttl { text-align: center; margin-bottom: 1rem; }
  .ar-contact-mini-links { text-align: center; white-space: normal; }

  .ar-document-layout { grid-template-columns: 1fr; }
}

@media (max-width: 890px) {
  .ar-menu-toggle {
    display: inline-flex; justify-content: center; align-items: center;
    font-size: 1.4rem;
    padding: 1rem 1.8rem;
    min-height: 4.4rem;
  }

  .header .header_inner .header_container { position: relative; }

  .header .header_inner .header_container .header_menu {
    display: none;
    position: absolute; top: calc(100% + 1rem); right: 0;
    width: min(34rem, calc(100vw - 2rem));
    background: #FBFBFF; border-radius: 8px;
    border: 1px solid #c3c6d4;
    box-shadow: 0 0.25rem 1.5rem 0 rgba(0,0,0,.1);
    padding: 2rem; z-index: 20;
  }

  body.menu-open .header .header_inner .header_container .header_menu {
    display: block;
  }

  body.menu-open .header .header_inner .header_container .header_menu ul {
    display: grid; gap: 0; margin-bottom: 1rem;
  }

  .header .header_inner .header_container .header_menu ul li + li {
    margin-left: 0;
  }

  /* メニューリンクをリンクらしく */
  .header .header_inner .header_container .header_menu ul li a {
    display: block;
    padding: 1.2rem 1rem;
    font-size: 1.6rem;
    font-weight: 500;
    color: #6161ff;
    border-bottom: 1px solid #e8eaf0;
  }
  .header .header_inner .header_container .header_menu ul li:last-child a {
    border-bottom: none;
  }

  .header .header_inner .header_container .header_menu .ar-task-btn {
    margin-bottom: 0.7rem; width: 100%; min-height: 4.6rem;
    border-radius: 10rem;
  }

  .header .header_inner .header_container .header_menu .header_nav_btn.ar-header-ctas {
    width: 100%; grid-template-columns: 1fr; gap: 0.7rem; margin-left: 0;
  }
  .header .header_inner .header_container .header_menu .header_nav_btn.ar-header-ctas a {
    font-size: 1.4rem; min-height: 4.6rem; border-radius: 10rem;
  }
}

@media (max-width: 768px) {
  .ar-container { width: min(136.6rem, calc(100% - 4rem)); }
  .ar-main section { padding: 6rem 0; }

  /* Compare: 縦積み */
  .ar-compare { flex-direction: column; }
  .ar-compare-before { border-radius: 20px; flex-direction: column; }

  /* メトリクス: 2列 */
  .ar-effect-metrics { grid-template-columns: repeat(2, 1fr); }
  .ar-effect-metric-num { font-size: 4rem; }

  /* タイムライン: 2列 */
  .ar-tl-grid { grid-template-columns: repeat(2, 1fr); }
  .ar-compare-divider {
    flex-direction: row;
    justify-content: space-around;
    width: auto;
    padding: 0 3rem;
    height: 3rem;
  }
  .ar-compare-divider-arrow {
    border-left: 1rem solid transparent;
    border-right: 1rem solid transparent;
    border-top: 1.4rem solid #6161ff;
    border-bottom: none;
  }

  /* 転換点 */
  .ar-story-turning-block { padding: 3.5rem 2.5rem; border-radius: 12px; }

  /* Effect 画像 */
  .ar-effect-image { border-radius: 12px; }

  /* Feature ブロック負マージン解除 */
  .ar-feature-block--orange,
  .ar-feature-block--green,
  .ar-feature-block--pink {
    margin-left: 0;
    margin-right: 0;
    padding: 2.4rem 2rem;
    border-radius: 16px;
  }

  /* eyebrow サイズ調整 */
  .ar-feature-eyebrow-num { font-size: 3.5rem; }
  .ar-feature-eyebrow-text { font-size: 2rem; }

  /* 3col → 1col */
  .ar-feature-report .ar-feature-3col { grid-template-columns: 1fr; }
  .ar-check-grid { grid-template-columns: 1fr; }

  /* 強みセクション: 2列 */
  .ar-strength-grid { grid-template-columns: 1fr 1fr; }
  .ar-strength-grid article { padding: 2rem; }
  .ar-strength-grid img { width: 8rem; height: 8rem; }

  /* report-images: 1列 */
  .ar-feature-report-images { grid-template-columns: 1fr; }

  /* 強み見出し */
  .ar-strength-head { font-size: 1.6rem; padding: 2rem 2.5rem; }

  /* カードパディング縮小 */
  .ar-feature-text-card,
  .ar-feature-media-card,
  .ar-feature-report,
  .ar-trial-flow,
  .ar-form { padding: 2.4rem; }

  /* 画像サイズ制限 */
  .ar-feature-3col img { height: 16rem; }
  .ar-feature-text-card-media img { height: 16rem; }

  /* フォントサイズ調整 */
  .ar-main h3 { font-size: 2.2rem; }
  .ar-feature-report h3 { font-size: 2rem; }
  .ar-feature-text-card h3 { font-size: 1.8rem; }

  /* ヒーロードット非表示 */
  .ar-hero-dot { display: none; }
}

@media (max-width: 600px) {
  .ar-container { width: calc(100% - 3rem); }

  .ar-main { padding-top: 20vw; }
  .ar-main section { padding: 4rem 0; }
  .ar-main h3 { font-size: 2rem; }
  .h2_ttl { font-size: 2.2rem !important; margin-bottom: 2.5rem !important; }

  .ar-btn { width: 100%; min-width: 0; height: 5.2rem; font-size: 1.5rem; }

  /* ヒーロー */
  .ar-hero-wire { padding: 3rem 3%; }
  .ar-hero-main-grid {
    gap: 2rem;
    /* モバイル: 画像→コピーの順に並び替え */
    display: flex; flex-direction: column-reverse;
  }
  /* キャッチコピー（大きい方） */
  .ar-hero-catchcopy span { font-size: 2.4rem; }
  .ar-hero-catchcopy { line-height: 1.0; margin-bottom: 2rem; }

  /* サブコピー（H1） */
  h1.ar-hero-sub { font-size: 1.8rem; font-weight: 400; line-height: 1.6; margin-top: 0.4rem; }
  .ar-hero-sub strong { font-weight: 700; }
  .ar-hero-visual img { max-height: 30vh; object-fit: contain; }
  .ar-point-box { padding: 0; margin-top: 1.6rem; }
  .ar-point-box li { font-size: 1.5rem; padding-left: 2.4rem; }
  .ar-point-box li:before { font-size: 1.5rem; }
  /* ボタン幅を抑制 */
  .ar-hero-cta-row { flex-direction: row; gap: 1rem; }
  .ar-hero-cta-row .ar-btn { width: auto; min-width: 0; flex: 1; height: 4.8rem; font-size: 1.2rem; padding: 0 1.2rem; white-space: nowrap; }
  .ar-hero-eyebrow { font-size: 1.1rem; margin-bottom: 1.2rem; }
  .ar-sp-only { display: inline; }
  .ar-hero-dot { display: none; }
  .ar-hero-slides { border-radius: 8px; }

  /* CTA strip */
  .ar-about-strip p { font-size: 1.5rem; }
  .ar-about-strip strong { font-size: 1.8rem; }
  .ar-about-cta { padding: 4rem 0 !important; }
  .ar-about-cta .ar-about-lead { font-size: 2rem !important; }
  .ar-about-cta .ar-about-lead strong { font-size: 2.4rem !important; }
  .ar-emphasis-dots {
    padding-top: 0.4em;
    margin-top: -0.4em;
  }

  /* Compare: モバイル */
  .ar-compare-side { padding: 1.6rem; }
  .ar-compare-item { gap: 1rem; }
  .ar-compare-item img { width: 7rem; height: 7rem; }
  .ar-compare-text h3 { font-size: 1.5rem; }
  .ar-compare-text p { font-size: 1.3rem; }
  .ar-compare-label { font-size: 1.2rem; padding: 0.4rem 1.2rem; }
  .ar-compare-divider { padding: 0 2rem; height: 2.5rem; }

  /* 転換点 */
  .ar-story-turning-block { padding: 3rem 1.6rem; border-radius: 10px; }
  .ar-story-turning-main { font-size: 2rem !important; }
  .ar-story-turning-main strong { font-size: 2.4rem !important; }
  .ar-story-turning-sub { font-size: 1.4rem !important; }

  /* 転換点カード */
  .ar-turning-cards { grid-template-columns: 1fr; gap: 1.2rem; }
  .ar-turning-card { padding: 1.6rem; }
  .ar-turning-card img { width: 10rem; height: 10rem; }

  /* Before カード */
  .ar-compare-before { gap: 1.5rem; padding: 0; }
  .ar-compare-before .ar-compare-item { padding: 2rem 1.5rem; }
  .ar-compare-before .ar-compare-item img { width: 10rem; height: 10rem; }

  /* Effect */
  .ar-effect-image { border-radius: 8px; }
  .ar-effect-metrics { grid-template-columns: 1fr; gap: 1.6rem; }
  .ar-effect-metric-num { font-size: 3.5rem; }
  .ar-effect-metric-num small { font-size: 1.8rem; }
  .ar-effect-metric-label { font-size: 1.4rem; }

  /* タイムライン */
  .ar-tl-grid { grid-template-columns: repeat(2, 1fr); }
  .ar-tl-cell { padding: 1rem 0.8rem; font-size: 1.3rem; }

  /* お問い合わせボタン */
  .ar-contact-mini-links .ar-btn { min-width: 0; width: 100%; }
  .ar-contact-mini-links { flex-direction: column; gap: 0.8rem; }

  /* Feature ブロック */
  .ar-feature-block--orange,
  .ar-feature-block--green,
  .ar-feature-block--pink {
    margin-left: 0;
    margin-right: 0;
    padding: 2rem 1.6rem;
    border-radius: 12px;
  }
  .ar-feature-eyebrow-num { font-size: 3rem; }
  .ar-feature-eyebrow-text { font-size: 1.8rem; }
  .ar-feature-eyebrow { gap: 0.8rem; margin-bottom: 1.6rem; }

  /* パディング縮小 */
  .ar-feature-text-card,
  .ar-feature-media-card,
  .ar-trial-flow,
  .ar-form,
  .ar-feature-report {
    padding: 1.6rem;
    border-radius: 12px;
  }

  /* 画像サイズ */
  .ar-feature-3col img { height: 14rem; }
  .ar-feature-text-card-media img { height: 14rem; }

  /* Feature テキスト */
  .ar-feature-report h3 { font-size: 1.8rem; }
  .ar-feature-report h4 { font-size: 1.5rem; margin-top: 2rem; }
  .ar-feature-text-card h3 { font-size: 1.6rem; }

  /* 強みセクション: 1列 */
  .ar-strength-grid { grid-template-columns: 1fr; }
  .ar-strength-grid article { padding: 1.5rem; border-radius: 12px; }
  .ar-strength-grid img { width: 6rem; height: 6rem; }
  .ar-strength-grid h3 { font-size: 1.5rem; min-height: auto; }

  /* AI カード */
  .ar-ai-card { padding: 2rem; }
  .ar-ai-grid h3 { font-size: 2rem; }
  .ar-ai-card-visual img { width: 100% !important; }

  /* ボタン類 */
  .ar-btn-row { flex-direction: column; gap: 1rem; }

  /* ヘッダーCTA */
  .header .header_inner .header_container .header_menu .header_nav_btn.ar-header-ctas {
    width: 100%; height: auto;
    grid-template-columns: 1fr; gap: 0.5rem;
  }
  .header .header_inner .header_container .header_menu .header_nav_btn.ar-header-ctas a {
    width: 100%; height: auto; min-height: 4.2rem;
    font-size: 1.4rem; line-height: 1.3;
    border-radius: 10rem;
  }

  /* トライアル: モバイルは1列 */
  .ar-trial-grid { grid-template-columns: 1fr; }

  /* フォーム */
  .ar-form input,
  .ar-form select,
  .ar-form textarea { font-size: 1.6rem; }
  .ar-form button { min-width: auto; width: 100%; font-size: 1.5rem; }

  /* report-images */
  .ar-feature-report-images { grid-template-columns: 1fr; }

  /* その他 */
  .ar-document-page .ar-document-panel { padding: 2rem; border-radius: 0.8rem; }
  .footer .gototop a svg { width: 5rem; height: 5rem; }
}


/* ─── 修正指示7 追加スタイル ────────────────────────────────── */

/* AI: sidekickカード説明文の高さ揃え */
.ar-ai-sidekick-desc {
  height: 25rem;
}
@media (max-width: 768px) {
  .ar-ai-sidekick-desc { height: auto; }
}

/* ABOUT: ハイライト表記 */
.ar-about-cta .ar-about-highlight {
  font-weight: 700;
  color: #ffffff;
}

/* EFFECT: 説明文 */
.ar-main .ar-effect-desc p {
  margin: 2rem 2rem 4rem;
  text-align: center;
  font-weight: 600;
  font-size: 1.7rem;
  /* line-height: 1.9; */
}

/* TRIAL / STRENGTH: h2サイズ */
.ar-trial .h2_ttl {
  font-size: 4.2rem;
}
.ar-strength .h2_ttl {
  font-size: 4.2rem;
  line-height: 1.2;
}
.ar-strength .h2_ttl .nb {
  line-height: 1.2;
  white-space: normal;
}

/* TRIAL: コンテナ */
.ar-trial-container {
  width: 70%;
  background-color: #fbfbff;
  padding: 2.5rem;
  border-radius: 4.5rem;
}

/* TRIAL: テキストリンク */
.ar-trial-text-links {
  margin: 2rem;
  line-height: 2.5;
  font-size: 1.4rem;
  text-align: center;
}
.ar-text-link {
  color: #6161ff;
  text-decoration: none;
  font-weight: 500;
  transition: color 0.2s ease;
}
.ar-text-link:hover {
  color: #311CAC;
  text-decoration: underline;
}
