/* ============================================================
   退職金セミナー LP  (/seminar/retirement)
   - Studio製の縦長LPを見た目重視で再現
   - スクロール連動アニメーション（下からフェードアップ）を順次適用
   - グラデーション背景は後回し（単色で近似）
   ============================================================ */

/* ---- スクロール連動リビール（本家Studio準拠：opacityフェードのみ・移動なし） ----
   本家実測: .sd.appear は opacity 0→1 のみ / duration 600ms /
   easing cubic-bezier(0.4,0.4,0,1) / delay 300〜400ms（段差） */
.reveal{opacity:0;
  transition:opacity .6s cubic-bezier(.4,.4,0,1);
  will-change:opacity;}
.reveal.is-visible{opacity:1;}

/* ---- 下から上へフェードアップ（ヒーロー用: 少し下から現在位置へ） ---- */
.reveal-up{opacity:0;transform:translateY(35px);
  transition:opacity .7s cubic-bezier(.4,.4,0,1),transform .7s cubic-bezier(.4,.4,0,1);
  will-change:opacity,transform;}
.reveal-up.is-visible{opacity:1;transform:none;}

/* ---- 下から上へフェードアップ（移動量ひかえめ: 矢印など） ---- */
.reveal-up-sm{opacity:0;transform:translateY(15px);
  transition:opacity .6s cubic-bezier(.4,.4,0,1),transform .6s cubic-bezier(.4,.4,0,1);
  will-change:opacity,transform;}
.reveal-up-sm.is-visible{opacity:1;transform:none;}

/* ---- セクション帯の左→右伸長（本家実測: transform-origin:left center /
   scaleX(0)→scaleX(1) / 400ms / ease-in-out） ---- */
.expand-x{transform:scaleX(0);transform-origin:left center;
  transition:transform .4s ease-in-out;will-change:transform;}
.expand-x.is-visible{transform:scaleX(1);}

@media (prefers-reduced-motion:reduce){
  .reveal,.reveal-up,.reveal-up-sm{opacity:1;transform:none;transition:none;}
  .expand-x{transform:none;transition:none;}
}

/* ベース：styles.css の body 設定を本LP用に上書き */
body{
  background:#fff;
  color:#0d3a43;
  font-family:"Zen Kaku Gothic New","Noto Sans JP",sans-serif;
  line-height:1.75;
}

/* 共通コンテナ（中央寄せ・最大幅） */
.rt-container{width:min(1030px,92%);margin:0 auto;}

/* カラーパレット（参考）
   orange  #f54e1b   red      #d11a25
   teal    #0d3a43   yellowbg #ffeea9
   cream   #fff7d5   beige    #eeeae7
   hi-yel  #fced77
*/

/* ===== ヒーロー ===== */
.rt-hero{position:relative;height:553px;overflow:hidden;
  background:#fff url('/seminar/assets/s-2880x1124_v-frms_webp_ed8fe6a9-98b7-4fb9-a2bf-c9e469afea59_regular.webp') 50% 0%/cover no-repeat;}
.rt-hero-stage{position:relative;width:1440px;height:553px;margin:0 auto;}
.rt-hero-person{position:absolute;left:725px;top:-164px;width:820px;height:1093px;object-fit:contain;z-index:1;}
.rt-hero-combo{display:none;}
.rt-hero-title{position:absolute;left:390px;top:48px;width:659px;height:auto;z-index:2;}
.rt-hero-badge{position:absolute;left:205px;top:194px;width:247px;height:286px;z-index:2;}
.rt-hero-rakuten{position:absolute;left:473px;top:285px;width:494px;height:auto;z-index:2;}
.rt-hero-stats{position:absolute;left:473px;top:362px;width:494px;height:auto;z-index:2;}
.rt-hero-note{position:absolute;left:443px;top:480px;width:640px;z-index:2;
  font-size:9px;font-weight:500;color:#0d3a43;line-height:1.5;text-align:left;white-space:nowrap;}
@media(max-width:1440px){
  .rt-hero-stage{width:1440px;margin-left:calc((100% - 1440px)/2);}
}

/* ===== CTAバンド（オレンジ・再利用） ===== */
.rt-band{position:relative;height:263px;overflow:hidden;background:#f54e1b;}
.rt-band-stage{position:relative;width:1440px;height:263px;margin:0 auto;}
.rt-band-dots{position:absolute;left:396.5px;top:40px;display:flex;gap:21px;z-index:2;}
.rt-band-dots span{width:8px;height:8px;border-radius:50%;background:#ffeea9;display:block;}
.rt-band-text{position:absolute;left:0;right:0;top:45px;text-align:center;
  font-size:24px;font-weight:700;color:#fff;white-space:nowrap;}
.rt-band-free{font-size:32px;font-weight:900;color:#ffeea9;}
.rt-band-illust-l{position:absolute;left:205px;top:80px;width:165px;height:auto;}
.rt-band-illust-r{position:absolute;left:1070px;top:92px;width:165px;height:auto;}
.rt-band-btn{position:absolute;left:510px;top:109px;width:420px;display:block;transition:opacity .15s;}
/* 登場は本家準拠で800ms ease-in-out（opacity＋上移動。hoverの.15sに上書きされないよう明示） */
.rt-band-btn.reveal-up{transition:opacity .8s ease-in-out,transform .8s ease-in-out;}
.rt-band-btn:hover{opacity:.9;}
.rt-band-btn img{width:100%;height:auto;display:block;transition:transform .25s ease;}
.rt-band-btn:hover img{transform:translateY(-12px);}
@media(max-width:1440px){
  .rt-band-stage{width:1440px;margin-left:calc((100% - 1440px)/2);}
}

/* ===== 免責（クリーム） ===== */
.rt-disc{background:#fff7d5;padding:50px 0;height:295px;}
.rt-disc-box{width:min(1030px,92%);margin:0 auto;background:#fff;border-radius:20px;
  box-shadow:4px 4px 4px rgba(0,0,0,.16);padding:24px 24px 28px;}
.rt-disc-company{margin:0 auto 14px;text-align:center;
  font-size:18px;font-weight:700;color:#f54e1b;}
.rt-disc-body{width:100%;margin:0 auto;text-align:justify;
  font-size:16px;font-weight:500;color:#0d3a43;line-height:1.85;}

/* ===== 特典（イエロー） ===== */
.rt-gift{position:relative;height:584px;overflow:hidden;
  background:#ffeea9 url('/seminar/assets/s-2880x1239_v-frms_webp_3900c572-944c-462c-b097-21fa22ea6bfb_regular.webp') 50% 50%/cover no-repeat;}
/* 左→右伸長アニメ版（1回目のみ）: 背景は内側の帯(.rt-gift-band)に持たせる */
.rt-gift--anim{background:none;}
.rt-gift-band{position:absolute;inset:0;
  background:#ffeea9 url('/seminar/assets/s-2880x1239_v-frms_webp_3900c572-944c-462c-b097-21fa22ea6bfb_regular.webp') 50% 50%/cover no-repeat;}
.rt-gift-stage{position:relative;width:1440px;height:584px;margin:0 auto;}
.rt-gift-eyebrow{position:absolute;left:572px;top:50px;width:296px;height:auto;}
.rt-gift-head{position:absolute;left:0;right:0;top:82px;text-align:center;
  font-family:"Noto Sans JP",sans-serif;font-size:56px;font-weight:900;color:#0d3a43;letter-spacing:normal;}
.rt-gift-card{position:absolute;top:179px;width:455px;background:#fff;border-radius:8px;
  box-shadow:4px 4px 4px rgba(0,0,0,.16);padding:12px;}
.rt-gift-card1{left:205px;}
.rt-gift-card2{left:780px;}
.rt-gift-photo{width:431px;height:240px;object-fit:cover;display:block;border-radius:4px;}
.rt-gift-label{display:flex;align-items:center;gap:14px;margin-top:12px;padding:0 4px;}
.rt-gift-num{flex:none;font-family:"Jost",sans-serif;font-size:64px;font-weight:700;color:#f54e1b;line-height:1;}
.rt-gift-txt{font-size:18px;font-weight:700;color:#0d3a43;line-height:1.5;}
.rt-gift-txt .rt-hl{color:#f54e1b;}
.rt-gift-mid{position:absolute;left:648px;top:305px;width:144px;text-align:center;}
.rt-gift-plus{width:80px;height:80px;display:block;margin:0 auto;}
.rt-gift-more{display:block;margin-top:8px;font-size:24px;font-weight:700;color:#0d3a43;}
@media(max-width:1440px){
  .rt-gift-stage{width:1440px;margin-left:calc((100% - 1440px)/2);}
}

/* ===== 開催日程（SCHEDULE） ===== */
.rt-sch{position:relative;background:#eeeae7 url('/seminar/assets/s-2400x1501_v-frms_webp_021357cf-2153-4a6a-8ef3-3808c10b435a_regular.webp') 50% 50%/cover no-repeat;
  padding:80px 0 82px;}
/* 左→右伸長アニメ版: 背景・余白を内側の帯(.rt-sch-band)へ移設 */
.rt-sch--anim{background:none;padding:0;}
.rt-sch-band{background:#eeeae7 url('/seminar/assets/s-2400x1501_v-frms_webp_021357cf-2153-4a6a-8ef3-3808c10b435a_regular.webp') 50% 50%/cover no-repeat;
  padding:80px 0 82px;}
.rt-sch-head{text-align:center;margin-bottom:26px;}
.rt-sch-eyebrow{display:block;font-family:"Oswald",sans-serif;font-size:16px;font-weight:500;color:#fff;letter-spacing:.12em;}
.rt-sch-htitle{display:block;margin-top:6px;font-size:32px;font-weight:700;color:#fff;}
.rt-sch-card{width:min(1030px,92%);margin:0 auto;background:#fff;border-radius:20px;
  padding:62px 40px 56px;text-align:center;}
.rt-sch-sub{font-size:20px;font-weight:500;color:#0d3a43;}
.rt-sch-main{margin-top:6px;font-size:32px;font-weight:700;color:#f54e1b;line-height:1.35;}
.rt-sch-badges{display:flex;justify-content:center;gap:24px;margin:26px 0 30px;}
.rt-sch-badge{display:inline-block;padding:6px 22px;border-radius:100px;color:#fff;font-size:16px;font-weight:700;
  background:linear-gradient(90deg,#fdb401 0%,#ff8501 100%);}
/* 日程の行は全 LP 共通（chat-form.css の .sd-*・見本は富裕層向け米ドル債）。色・数字のフォントだけこの LP のもの。
   「この日程で申し込む」は FV 直下の申込ボタン（画像 .rt-band-btn の緑）と同じ背景・文字色（2026-10-16 広告担当依頼。色は画像から拾った値） */
.rt-sch-list{--sd-ink:#0d3a43;--sd-num-font:"Jost",sans-serif;--sd-line:#e6e2df;
  --sd-dow-bg:linear-gradient(90deg,#fdb401 0%,#ff8501 100%);
  --sd-pick-bg:linear-gradient(180deg,#40c84f 0%,#338a24 100%);--sd-pick-fg:#fff;}
.rt-sch-list .sd-dow{font-weight:800;}

/* ===== モヤモヤ（白） ===== */
.rt-worry{position:relative;background:#fff;height:725px;overflow:hidden;}
.rt-worry-stage{position:relative;width:1440px;height:725px;margin:0 auto;}
.rt-worry-head{position:absolute;left:460px;top:120px;width:520px;height:auto;}
.rt-worry-list{position:absolute;left:304px;top:284px;width:560px;list-style:none;}
.rt-worry-item{display:flex;align-items:center;gap:14px;height:64px;margin-bottom:12px;padding:0 24px;
  background:#c6e3f0;border-radius:8px;}
.rt-worry-ico{width:26px;height:26px;flex:none;}
.rt-worry-item span{font-size:18px;font-weight:700;color:#0d3a43;}
.rt-worry-person{position:absolute;left:896px;top:269px;width:240px;height:auto;}
.rt-worry-arrow{position:absolute;left:645px;top:551px;width:150px;height:auto;}
/* 各パーツ: 「フェード表示 → その後に上へ移動」。
   移動開始の順番は 1見出し → 3矢印 → 2(リスト+人物) → 4リード文。 */
.rt-worry-head.reveal-up{transition:opacity .39s ease-out .14s,transform .49s cubic-bezier(.4,.4,0,1) .39s;}
.rt-worry-arrow.reveal-up-sm{transform:translateY(40px);
  transition:opacity .39s ease-out .28s,transform .49s cubic-bezier(.4,.4,0,1) .56s;}
.rt-worry-arrow.reveal-up-sm.is-visible{transform:none;}
/* パーツ2（リスト+人物）は、矢印(3)の移動完了(約1.1s)後にフェード表示→その後移動。
   移動開始位置は少し上（下オフセット20px）から。 */
.rt-worry-list.reveal-up,
.rt-worry-person.reveal-up{transform:translateY(20px);
  transition:opacity .46s ease-out 1.09s,transform .49s cubic-bezier(.4,.4,0,1) 1.37s;}
.rt-worry-list.reveal-up.is-visible,
.rt-worry-person.reveal-up.is-visible{transform:none;}
/* パーツ4（リード文）は、パーツ2の移動完了(約1.95s)後にフェード表示→その後移動。
   移動開始位置は少し上（下オフセット20px）から。 */
.rt-worry-lead.reveal-up{transform:translateY(20px);
  transition:opacity .46s ease-out 1.89s,transform .49s cubic-bezier(.4,.4,0,1) 2.2s;}
.rt-worry-lead.reveal-up.is-visible{transform:none;}
.rt-worry-lead{position:absolute;left:0;right:0;top:608px;text-align:center;
  font-size:32px;font-weight:700;color:#0d3a43;line-height:1.7;}
.rt-worry-lead .rt-hl{color:#f54e1b;}
@media(max-width:1440px){
  .rt-worry-stage{width:1440px;margin-left:calc((100% - 1440px)/2);}
}

/* ブリッジ（白・イラスト）— イラスト下部をクリーム側に重ねる */
.rt-bridge{background:#fff;height:178px;display:flex;align-items:flex-start;justify-content:center;
  position:relative;z-index:2;}
.rt-bridge img{width:360px;height:auto;}

/* ===== CONTENTS（講演内容・クリーム） ===== */
.rt-cont{background:#fff7d5;padding:52px 0 62px;position:relative;z-index:1;}
.rt-cont-head{text-align:center;margin-bottom:36px;}
.rt-cont-eyebrow{display:block;font-family:"Oswald",sans-serif;font-size:16px;font-weight:500;letter-spacing:.1em;
  background:linear-gradient(90deg,#fdb401,#ff8501);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}
.rt-cont-htitle{display:block;margin-top:4px;font-size:32px;font-weight:700;color:#0d3a43;}
.rt-cont-grid{width:1030px;margin:0 auto;display:grid;grid-template-columns:500px 500px;gap:32px 30px;}
/* CONTENTS: 表示はふわっと（opacityを長めのease-out）、動きは下から上へ */
.rt-cont-head.reveal-up{transition:opacity .8s ease-out,transform .7s cubic-bezier(.4,.4,0,1);}
.rt-cont-grid.reveal-up{transition:opacity .9s ease-out,transform .7s cubic-bezier(.4,.4,0,1);}
.rt-cont-card{width:500px;background:#fff;border-radius:20px;box-shadow:4px 4px 4px rgba(0,0,0,.16);padding:20px;}
.rt-cont-photo{width:460px;height:258px;object-fit:cover;border-radius:6px;display:block;}
.rt-cont-body{display:flex;gap:16px;margin-top:16px;align-items:center;}
.rt-cont-num{flex:none;width:88px;height:88px;border-radius:100px;background:#fce8b0;
  display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;}
.rt-cont-num small{font-family:"Oswald",sans-serif;font-size:11px;font-weight:500;color:#f54e1b;letter-spacing:.04em;}
.rt-cont-num b{font-family:"Jost",sans-serif;font-size:34px;font-weight:400;color:#f54e1b;margin-top:2px;}
.rt-cont-title{font-size:16px;font-weight:700;color:#0d3a43;line-height:1.5;}
.rt-cont-bul{margin-top:8px;font-size:14px;font-weight:500;color:#0d3a43;line-height:1.7;}

/* ===== VOICE（参加者の声・イエロー） ===== */
.rt-voice{background:#ffeea9;padding:52px 0 62px;}
.rt-voice-head{text-align:center;margin-bottom:36px;}
.rt-voice-eyebrow{display:block;font-family:"Oswald",sans-serif;font-size:16px;font-weight:500;letter-spacing:.1em;
  background:linear-gradient(90deg,#fdb401,#ff8501);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}
.rt-voice-htitle{display:block;margin-top:4px;font-size:32px;font-weight:700;color:#0d3a43;}
.rt-voice-grid{width:1030px;margin:0 auto;display:grid;grid-template-columns:500px 500px;gap:32px 30px;list-style:none;}
/* VOICE: CONTENTSと同様。表示はふわっと（opacity長めのease-out）、動きは下から上へ */
.rt-voice-head.reveal-up{transition:opacity .8s ease-out,transform .7s cubic-bezier(.4,.4,0,1);}
.rt-voice-grid.reveal-up{transition:opacity .9s ease-out,transform .7s cubic-bezier(.4,.4,0,1);}
.rt-voice-card{width:500px;height:155px;background:#fff;border-radius:20px;box-shadow:4px 4px 4px rgba(0,0,0,.16);
  padding:20px 24px;display:flex;align-items:center;gap:22px;}
.rt-voice-av{flex:none;width:100px;height:100px;}
.rt-voice-txt{font-size:18px;font-weight:700;color:#0d3a43;line-height:1.6;}
.rt-voice-note{width:1030px;margin:24px auto 0;font-size:12px;color:#0d3a43;line-height:1.7;}
.rt-voice-note.reveal-up{transition:opacity .9s ease-out,transform .7s cubic-bezier(.4,.4,0,1);}

/* ===== HOW TO JOIN（参加方法・白） ===== */
.rt-htj{background:#fff;padding:52px 0 62px;}
.rt-htj-head{text-align:center;margin-bottom:40px;}
.rt-htj-eyebrow{display:block;font-family:"Oswald",sans-serif;font-size:16px;font-weight:500;letter-spacing:.14em;
  background:linear-gradient(90deg,#fdb401,#ff8501);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}
.rt-htj-sub{display:block;margin-top:8px;font-size:24px;font-weight:700;color:#0d3a43;}
.rt-htj-htitle{display:block;font-size:32px;font-weight:700;color:#0d3a43;}
.rt-htj-steps{width:1030px;margin:0 auto;display:flex;align-items:flex-start;justify-content:center;gap:6px;}
/* HOW TO JOIN: CONTENTS同様。表示はふわっと（opacity長めのease-out）、動きは下から上へ */
.rt-htj-head.reveal-up{transition:opacity .8s ease-out,transform .7s cubic-bezier(.4,.4,0,1);}
.rt-htj-steps.reveal-up{transition:opacity .9s ease-out,transform .7s cubic-bezier(.4,.4,0,1);}
.rt-htj-notice.reveal-up{transition:opacity .8s ease-out,transform .7s cubic-bezier(.4,.4,0,1);}
.rt-htj-step{width:299px;background:#fff;border:2px solid #dedede;border-radius:10px;overflow:hidden;}
.rt-htj-photo{width:100%;height:180px;object-fit:cover;display:block;}
.rt-htj-badge{display:inline-block;margin:14px 0 0 16px;padding:4px 16px;border-radius:100px;color:#fff;
  font-family:"Oswald",sans-serif;font-size:14px;font-weight:500;letter-spacing:.04em;
  background:linear-gradient(90deg,#fdb401,#ff8501);}
.rt-htj-steptxt{margin:12px 16px 18px;font-size:16px;font-weight:700;color:#0d3a43;line-height:1.55;}
.rt-htj-chev{width:64px;height:64px;flex:none;margin-top:58px;}
.rt-htj-notice{width:1030px;margin:36px auto 0;background:#fff7d7;border-radius:20px;
  padding:28px 40px;display:flex;align-items:center;justify-content:center;gap:32px;}
.rt-htj-notice-label{flex:none;font-size:18px;font-weight:700;color:#f54e1b;}
.rt-htj-notice-body{width:726px;}
.rt-htj-notice-body p{font-size:16px;font-weight:500;color:#333;line-height:1.85;}

/* ===== LECTURER（講師紹介） ===== */
.rt-lec{position:relative;overflow:hidden;padding:52px 0 60px;}
/* 背景レイヤー: 左→右へ伸長（背景だけ動き、中身は一緒に伸びない） */
.rt-lec-band{position:absolute;inset:0;z-index:0;
  background:#eeeae7 url('/seminar/assets/s-2400x1302_v-frms_webp_e744ce06-9271-4631-a3c8-81ddac3c1a11_regular.webp') 50% 50%/cover no-repeat;}
/* 見出し・カード: 背景の上でフワッと表示＋上へ移動 */
.rt-lec-head.reveal-up{transition:opacity .8s ease-out,transform .7s cubic-bezier(.4,.4,0,1);}
.rt-lec-card.reveal-up{transition:opacity .9s ease-out,transform .7s cubic-bezier(.4,.4,0,1);}
.rt-lec-head{position:relative;z-index:1;text-align:center;margin-bottom:34px;}
.rt-lec-eyebrow{display:block;font-family:"Oswald",sans-serif;font-size:16px;font-weight:500;letter-spacing:.14em;
  background:linear-gradient(90deg,#fdb401,#ff8501);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}
.rt-lec-htitle{display:block;margin-top:4px;font-size:32px;font-weight:700;color:#0d3a43;}
.rt-lec-card{position:relative;z-index:1;width:1030px;margin:0 auto;background:#fff;border-radius:20px;box-shadow:4px 4px 20px rgba(0,0,0,.08);
  padding:64px;display:flex;gap:40px;align-items:flex-start;}
.rt-lec-photo{flex:none;width:356px;height:367px;object-fit:cover;border-radius:8px;}
.rt-lec-info{flex:1;padding-top:6px;}
.rt-lec-org{font-size:16px;font-weight:500;color:#f54e1b;line-height:1.5;}
.rt-lec-name{margin-top:14px;font-size:36px;font-weight:700;color:#0d3a43;display:flex;align-items:baseline;gap:14px;}
.rt-lec-name span{font-family:"Jost",sans-serif;font-size:16px;font-weight:400;color:#0d3a43;}
.rt-lec-qual{display:inline-block;margin-top:14px;padding:3px 12px;color:#fff;font-size:12px;font-weight:500;
  background:linear-gradient(90deg,#fdb401,#ff8501);}
.rt-lec-bio{margin-top:22px;font-size:16px;font-weight:400;color:#0d3a43;line-height:1.9;}

/* ===== オンライン受講（クリーム） ===== */
.rt-online{background:#fff7d5;padding:52px 0 62px;}
.rt-online-head{text-align:center;margin-bottom:56px;}
.rt-online-eyebrow{display:block;font-family:"Oswald",sans-serif;font-size:16px;font-weight:500;letter-spacing:.14em;
  background:linear-gradient(90deg,#fdb401,#ff8501);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}
.rt-online-sub{display:block;margin-top:8px;font-size:24px;font-weight:700;color:#0d3a43;}
.rt-online-htitle{display:block;font-size:32px;font-weight:700;color:#0d3a43;}
.rt-online-cards{display:flex;align-items:flex-start;justify-content:center;gap:10px;}
/* オンライン受講: HOW TO JOIN(9)同様。表示はふわっと、動きは下から上へ */
.rt-online-head.reveal-up{transition:opacity .8s ease-out,transform .7s cubic-bezier(.4,.4,0,1);}
.rt-online-cards.reveal-up{transition:opacity .9s ease-out,transform .7s cubic-bezier(.4,.4,0,1);}
.rt-online-card{position:relative;width:460px;background:#fff;border-radius:20px;
  box-shadow:2px 2px 12px rgba(0,0,0,.12);padding:64px 32px 32px;text-align:center;}
.rt-online-badge{position:absolute;top:-40px;left:50%;transform:translateX(-50%);
  width:80px;height:80px;border-radius:100px;background:linear-gradient(90deg,#fdb401,#ff8501);
  color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1;}
.rt-online-badge small{font-family:"Oswald",sans-serif;font-size:15px;font-weight:500;}
.rt-online-badge b{font-family:"Jost",sans-serif;font-size:32px;font-weight:400;}
.rt-online-title{font-size:24px;font-weight:700;color:#f54e1b;margin-bottom:20px;
  display:inline-flex;align-items:center;gap:14px;}
.rt-online-title::before,.rt-online-title::after{content:"";width:2px;height:26px;background:#f54e1b;}
.rt-online-title::before{transform:rotate(-20deg);}
.rt-online-title::after{transform:rotate(20deg);}
.rt-online-photo{width:396px;height:245px;object-fit:cover;border-radius:6px;display:block;margin:0 auto;}
.rt-online-desc{margin-top:20px;font-size:20px;font-weight:700;color:#0d3a43;line-height:1.6;text-align:left;}
.rt-online-chev{width:64px;height:64px;flex:none;margin-top:190px;}

/* ===== FAQ（よくある質問・白） ===== */
.rt-faq{background:#fff;padding:52px 0 66px;}
.rt-faq-head{text-align:center;margin-bottom:34px;}
.rt-faq-eyebrow{display:block;font-family:"Oswald",sans-serif;font-size:16px;font-weight:500;letter-spacing:.14em;
  background:linear-gradient(90deg,#fdb401,#ff8501);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}
.rt-faq-htitle{display:block;margin-top:4px;font-size:32px;font-weight:700;color:#0d3a43;}
.rt-faq-list{width:min(1010px,92%);margin:0 auto;}
/* FAQ: HOW TO JOIN(9)同様。表示はふわっと、動きは下から上へ（1→2→3） */
.rt-faq-head.reveal-up{transition:opacity .8s ease-out,transform .7s cubic-bezier(.4,.4,0,1);}
.rt-faq-list.reveal-up{transition:opacity .9s ease-out,transform .7s cubic-bezier(.4,.4,0,1);}
.rt-faq-note.reveal-up{transition:opacity .8s ease-out,transform .7s cubic-bezier(.4,.4,0,1);}
.rt-faq-item{margin-bottom:22px;}
.rt-faq-q{list-style:none;cursor:pointer;display:flex;align-items:center;gap:18px;min-height:70px;padding:14px 24px;
  background:#fff;border-radius:10px;box-shadow:0 2px 10px rgba(0,0,0,.07);position:relative;}
.rt-faq-q::-webkit-details-marker{display:none;}
.rt-faq-badge{flex:none;width:48px;height:48px;border-radius:100px;background:linear-gradient(90deg,#fdb401,#ff8501);
  color:#fff;font-size:24px;font-weight:400;font-family:"DM Sans",sans-serif;display:flex;align-items:center;justify-content:center;}
.rt-faq-qt{font-size:20px;font-weight:700;color:#0d3a43;flex:1;}
.rt-faq-arrow{flex:none;width:13px;height:13px;border-right:2px solid #f5820a;border-bottom:2px solid #f5820a;
  transform:rotate(45deg);margin-right:6px;transition:transform .25s;}
.rt-faq-item[open] .rt-faq-arrow{transform:rotate(-135deg);}
.rt-faq-item[open] .rt-faq-q{border-radius:10px 10px 0 0;}
.rt-faq-a{overflow:hidden;background:linear-gradient(90deg,#fdb401,#ff8501);border-radius:0 0 10px 10px;
  display:flex;align-items:center;gap:18px;padding:24px;}
.rt-faq-badge-a{background:#fff;color:#f5820a;}
.rt-faq-at{flex:1;}
.rt-faq-at p{font-size:18px;font-weight:500;color:#fff;line-height:1.75;}
.rt-faq-note{width:min(1030px,92%);margin:20px auto 0;background:#fff7d7;border-radius:20px;padding:24px 24px 28px;}
/* 全角スペース区切りの1文。keep-all が無いと「金融商品仲/介業者」で割れる。 */
.rt-faq-note-title{font-size:18px;font-weight:700;color:#f54e1b;margin-bottom:14px;text-align:center;word-break:keep-all;}
.rt-faq-note-body{width:100%;font-size:16px;font-weight:500;color:#0d3a43;line-height:1.85;text-align:justify;}
.rt-faq-note-body+.rt-faq-note-body{margin-top:0;}

/* ===== APPLICATION（お申し込み・ベージュ） ===== */
.rt-app{background:#eeeae7 url('/seminar/assets/s-1643x2400_v-frms_webp_93579556-fed0-4eb8-b751-edeeef735816.webp') 50% 50%/cover no-repeat;padding:52px 0 20px;}
.rt-app-head{text-align:center;margin-bottom:28px;}
.rt-app-eyebrow{display:block;font-family:"Oswald",sans-serif;font-size:16px;font-weight:500;letter-spacing:.14em;
  background:linear-gradient(90deg,#fdb401,#ff8501);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;}
.rt-app-htitle{display:block;margin-top:4px;font-size:32px;font-weight:700;color:#0d3a43;}
.rt-app-lead{width:min(1030px,92%);margin:0 auto 30px;text-align:center;
  font-size:16px;font-weight:500;color:#0d3a43;line-height:1.9;}
.rt-app-lead p{margin:0;}
/* APPLICATION: 2パーツ（見出し・リード文）がふわっと表示＋下から上へ。iframeは動かさない */
.rt-app-head.reveal-up{transition:opacity .8s ease-out,transform .7s cubic-bezier(.4,.4,0,1);}
.rt-app-lead.reveal-up{transition:opacity .9s ease-out,transform .7s cubic-bezier(.4,.4,0,1);}
.rt-app-lead a{font-weight:900;color:#f54e1b;text-decoration:underline;}
.rt-app-lead-strong{margin-top:18px !important;font-weight:900;}
.rt-app-form{width:min(790px,92%);margin:0 auto;background:#fff;padding:0 30px;}
.rt-app-form iframe{width:100%;height:1800px;border:0;display:block;}
@media(max-width:640px){
  .rt-app-form{padding:0 16px;}
}

/* ===== タブレット（1030px以下）: グリッド系を1カラムに ===== */
@media(max-width:1030px){
  .rt-cont-grid{width:92%;grid-template-columns:1fr;gap:24px;}
  .rt-cont-card{width:100%;}
  .rt-cont-photo{width:100%;height:auto;aspect-ratio:16/9;}
  .rt-voice-grid{width:92%;grid-template-columns:1fr;gap:20px;}
  .rt-voice-card{width:100%;height:auto;}
  .rt-voice-note{width:92%;}
  .rt-htj-steps{width:92%;flex-wrap:wrap;gap:16px;}
  .rt-htj-step{width:100%;max-width:400px;}
  .rt-htj-chev{display:none;}
  .rt-htj-notice{width:92%;flex-direction:column;gap:16px;padding:24px;}
  .rt-htj-notice-body{width:100%;}
  .rt-lec-card{width:92%;flex-direction:column;padding:32px;}
  .rt-lec-photo{width:100%;height:auto;aspect-ratio:1/1;max-width:356px;}
  .rt-online-cards{flex-wrap:wrap;gap:60px 10px;}
  .rt-online-card{width:min(460px,92vw);}
  .rt-online-photo{width:100%;height:auto;aspect-ratio:16/10;}
  .rt-online-chev{display:none;}
}

/* ===== モバイル（768px以下）: 通常フローレイアウト ===== */
@media(max-width:768px){
  /* ---- ヒーロー: 本番Studio準拠レイアウト ---- */
  .rt-hero{height:auto;overflow:hidden;padding:20px 12px 0;
    background-image:url('/seminar/assets/s-750x1292_v-fms_webp_e5fe820b-9f82-4f65-9f26-477f52a83681.webp');
    background-position:center top;background-size:cover;}
  .rt-hero-stage{width:100%;height:auto;position:relative;margin-left:0;display:flex;flex-direction:column;align-items:center;}
  .rt-hero-title{position:static;width:100%;display:block;margin:0 auto 4px;order:1;}
  .rt-hero-rakuten{position:static;width:65%;max-width:300px;display:block;margin:0 auto 0;order:2;}
  .rt-hero-badge{display:none;}
  .rt-hero-person{display:none;}
  .rt-hero-combo{display:block;position:static;width:85%;max-width:340px;height:auto;order:3;margin:0 auto;}
  .rt-hero-stats{position:static;width:80%;max-width:400px;display:block;margin:4px auto;order:5;
    background:rgba(255,255,255,.85);border-radius:8px;padding:8px;}
  .rt-hero-note{position:static;width:100%;white-space:normal;font-size:10px;text-align:left;margin-top:0;order:6;
    background:rgba(255,255,255,.85);border-radius:8px;padding:8px 10px;}

  /* ---- CTAバンド: 絶対配置→通常フロー ---- */
  .rt-band{height:auto;overflow:visible;padding:32px 20px;text-align:center;}
  .rt-band-stage{width:100%;height:auto;position:static;margin-left:0;}
  .rt-band-dots{display:none;}
  .rt-band-text{position:static;font-size:16px;white-space:normal;}
  .rt-band-free{font-size:22px;}
  .rt-band-illust-l,.rt-band-illust-r{display:none;}
  .rt-band-btn{position:static;width:80%;max-width:320px;margin:20px auto 0;display:block;}

  /* ---- 特典: 絶対配置→通常フロー ---- */
  .rt-gift{height:auto;overflow:visible;padding:40px 20px;}
  .rt-gift-band{position:static;transform:none;transition:none;}
  .rt-gift-stage{width:100%;height:auto;position:static;margin-left:0;display:flex;flex-direction:column;align-items:center;gap:20px;}
  .rt-gift-eyebrow{position:static;width:auto;}
  .rt-gift-head{position:static;font-size:28px;text-align:center;}
  .rt-gift-card{position:static;width:100%;max-width:400px;left:auto;}
  .rt-gift-card1,.rt-gift-card2{left:auto;}
  .rt-gift-photo{width:100%;height:auto;}
  .rt-gift-mid{position:static;width:auto;}
  .rt-gift-plus{width:60px;height:60px;}
  .rt-gift-more{font-size:18px;}

  /* ---- モヤモヤ: 絶対配置→通常フロー ---- */
  .rt-worry{height:auto;overflow:visible;padding:40px 20px;}
  .rt-worry-stage{width:100%;height:auto;position:static;margin-left:0;display:flex;flex-direction:column;align-items:center;}
  .rt-worry-head{position:static;width:80%;margin:0 auto 24px;}
  .rt-worry-list{position:static;width:100%;max-width:400px;}
  .rt-worry-person{display:none;}
  .rt-worry-arrow{position:static;width:80px;margin:20px auto;}
  .rt-worry-lead{position:static;font-size:20px;text-align:center;margin-top:20px;}

  /* ---- 以下: 既存のモバイル調整（非1440pxセクション） ---- */
  /* 免責・フォーム */
  .rt-disc{height:auto;padding:32px 0;}
  .rt-disc-body{font-size:14px;}

  /* ブリッジ */
  .rt-bridge{height:auto;padding:20px 0;}
  .rt-bridge img{width:min(360px,70vw);}

  /* 講演内容 */
  .rt-cont-htitle{font-size:24px;}

  /* 参加者の声 */
  .rt-voice-htitle{font-size:24px;}
  .rt-voice-card{flex-direction:column;height:auto;text-align:center;padding:20px;}
  .rt-voice-av{width:80px;height:80px;}
  .rt-voice-txt{font-size:16px;}

  /* 講師: 背景帯のアニメ無効化（モバイルでは不要） */
  .rt-lec-band{transform:none;transition:none;}
  .rt-lec-card{padding:24px;}
  .rt-lec-name{font-size:28px;flex-wrap:wrap;}
  .rt-lec-bio{font-size:14px;}

  /* 見出し共通 */
  .rt-htj-htitle,.rt-online-htitle,.rt-faq-htitle,.rt-app-htitle{font-size:24px;}
  .rt-htj-sub,.rt-online-sub{font-size:18px;}

  /* FAQ */
  .rt-faq-qt{font-size:16px;}
  .rt-faq-at p{font-size:15px;}
  .rt-faq-note{padding:20px;}
  .rt-faq-note-body{font-size:14px;}

  /* スケジュール */
  .rt-sch-card{padding:40px 20px;}
  .rt-sch-main{font-size:24px;}
}
