@charset "UTF-8";
/* =========================================================
  Reborn体操 LP  - rwd.css（スマホ用）
  対象：768px以下
  方針：スマホはrem基準に戻して、余白を詰める
========================================================= */

@media (max-width: 768px) {

  /* ---------- ベース（必須） ---------- */
  html {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
  }

  body {
    width: 100%;
    font-size: 16px;
    /* ←スマホの基準。小さくしたければ 15px など */
    line-height: 1.6;
  }

  /* 本文カラムはスマホで固定（PCのem設計を切る） */
  .article {
    width: 100%;
    margin: 0 auto;
    border-left: none;
    border-right: none;
    font-size: 0.95rem;
    /* =16px */
  }

  /* パラグラフの行間（スマホは少し読みやすく） */
  .article p {
    line-height: 1.5;
  }

  /* 背景（PCの背景画像を使ってるなら、スマホは色にして軽く） */
  .main {
    background-color: #f2f2f2;
  }

  /* ---------- 画像系共通（幅100%に揃える） ---------- */
  img {
    max-width: 100%;
    height: auto;
  }

  /* ---------- 上部固定ヘッダー（あなたのstyle.cssがflexなのでそれ前提） ---------- */
  .header_inr {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    box-sizing: border-box;

    display: flex;
    align-items: center;
    justify-content: space-between;

    padding: 0.6em 0.8em;
    gap: 10px;
  }

  .header_logo {
    flex: 1 1 auto;
    min-width: 0;
  }

  .header_logo img {
    height: 40px;
    width: auto;
    max-width: 100%;
    display: block;
  }

  .header_mail {
    flex: 0 0 auto;
    max-width: 56vw;
    /* 狭い端末でボタンが切れない保険 */
  }

  .header_mail img {
    height: 40px;
    width: auto;
    max-width: 100%;
    display: block;
  }

  .header_logo a,
  .header_mail a {
    display: flex;
    align-items: center;
    line-height: 0;
  }

  /* ---------- CTAエリア（あなたのHTMLは cta-area01/02） ---------- */
  .cta-area01,
  .cta-area02 {
    background: #fff;
    padding: 0.8em 0.8em 0.6em;
    text-align: center;
  }

  .cta-btn {
    display: inline-block;
    width: 100%;
    max-width: 720px;
    margin-top: 0.3em;
  }

  .cta-btn img {
    display: block;
    width: 100%;
    height: auto;
  }

  /* ---------- 3つの特徴（tokucho） ---------- */
  .tokucho_title {
    display: block;
    width: 100%;
    height: auto;
  }

  /* 背景はそのまま。余白だけスマホ用に最適化 */
  .tokucho_bg {
    background-size: 100% auto;
    background-repeat: no-repeat;
    background-position: top center;
    margin: 0;
  }

  /* 画像の“余白が大きい”原因になりやすいpaddingを縮める */
  .tokucho_img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0.8em 0.6em 0 0;
    /* PC(1.8em...) → スマホは詰める */
  }

  .tokucho_img_right {
    display: block;
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0.8em 0 0 0.6em;
  }

  /* 本文の左右余白をスマホ用に縮める */
  .tokucho_inner {
    width: 100%;
    margin: 0 auto;
    padding: 0.2em 1.2em 0em 1.2em;
    box-sizing: border-box;
  }

  /* 本文サイズは .article に集約してるので、ここでは触らない（余白・行間だけ） */
  .tokucho_text {
    margin: 0;
    line-height: 1.5;
  }

  /* 強調は色だけ（サイズは上げない） */
  .text-accent {
    font-weight: 600;
  }

  /* ---------- お客様の声（bg_koe / box_koe） ---------- */
  .bg_koe {
    background-size: 100% auto;
    background-repeat: repeat;
    padding: 1.1em;
    text-align: center;
  }


  /* =========================
   お客様の声（スマホ）
========================= */

  /* 外側：カードの見た目（ここは固定） */
  .box_koe {
    background-color: #fff;
    border-radius: 12px;
    padding: 1.1em;
    /* カード全体の余白 */
    margin: 1.0em 0;
    color: #464646;
  }

  /* 内側：本文の読み心地を調整 */
  .box_koe_inr {
    margin: 0.4em 0 0;
    padding: 0.4em 0.3em;
    /* ← ここを追加・調整 */
    text-align: left;
    color: #292929;
    line-height: 1.5;
  }

  .marker {
    padding: 0 2px;
  }

  /* ---------- 受講の流れ（flow） ---------- */
  .flow {
    width: 100%;
    padding: 0.9em 0.5em 0.9em 0.9em;
    /* PCより詰める */
  }

  /* ---------- FAQ ---------- */
  .faq {
    background-image: url("../images/bg_qa.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    /* ← これがポイント */
    background-position: center top;
    /* 上を優先、下は切れてOK */

    width: 100%;
    padding: 0.8em 0.7em;
    box-sizing: border-box;
  }


  .faq-title {
    display: block;
    margin: 0.8em auto 1em;
    height: auto;
  }

  .faq details {
    margin: 0 0.6em 0.8em;
    padding: 0.8em;
    border-radius: 0.8em;
    box-sizing: border-box;
  }

  .faq summary {
    font-size: 1rem;
    /* 変に大きくしない */
    padding-right: 1.9em;
  }

  .faq summary::after {
    font-size: 1.3em;
  }

  .faq .answer {
    margin-top: 0.6em;
    font-size: 1rem;
    line-height: 1.5;
    padding-left: 0.9em;
  }

  
  .official-btn {
    font-size: 13px;
  }

}



/* 小さめ端末の微調整（任意） */
@media (max-width: 393px) {

  .header_logo img {
    height: 34px;
  }

  .header_mail img {
    height: 34px;
  }

  .tokucho_inner {
    padding: 0 0.8em;
  }

  .cta-area {
    padding: 2.2em 0.6em 0.5em;
  }
}