/* =========================================================
   るるぶ編集体験 LP  スタイル
   カラー: ベース #f07c00(オレンジ) / 薄地 #fff3e3 / ポイント #e6006e(ピンク)
   構成: #rurubu-lp 配下のみに適用（他ページCSSと干渉しないようスコープ）
   ========================================================= */
#tx-page h1{
        border-left: 10px solid #8dc4e0;
    padding: 0px 20px 0;
    font-size: 22px;
    margin-bottom: 15px;
    margin-top: 15px;
}
/* ---------- 基本 ---------- */
#rurubu-lp{
  max-width:1000px;
  margin:0 auto;
  background:#fff3e3;
  overflow:hidden;
  color:#3a2a30;
  font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;
  line-height:1.6;
  box-sizing:border-box;
}
#rurubu-lp *{box-sizing:border-box;font-family:"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック",sans-serif;}
#rurubu-lp img{max-width:100%;height:auto;display:block;}
#rurubu-lp p,#rurubu-lp h2,#rurubu-lp ul,#rurubu-lp dl,#rurubu-lp dd{margin:0;}
#rurubu-lp a{color:#c96300;text-decoration:underline;}
#rurubu-lp a:hover{color:#f07c00;}

/* スマホのみ改行 */
#rurubu-lp .sp-br{display:none;}

/* 中央寄せ幅 */
#rurubu-lp .inner{max-width:920px;margin:0 auto;}

/* セクション共通 */
#rurubu-lp .sec{padding:0 20px 36px;}
#rurubu-lp .sec.white{background:#fff;}
#rurubu-lp .sec.pad-top{padding-top:36px;}

/* 見出し帯（全幅オレンジ） */
#rurubu-lp .sec-title{
  margin:0 -20px 26px;
  padding:10px;
  background:#f07c00;
  color:#fff;
  text-align:center;
  font-size:27px;
  font-weight:700;
  line-height:1.4;
}
#rurubu-lp .sec-title small{display:block;font-size:15px;font-weight:700;margin-top:2px;}

/* 注記 */
#rurubu-lp .note{font-size:18px;color:#333;font-weight:400;}
#rurubu-lp .note.right{text-align:right;margin-top:10px;}
#rurubu-lp .note.red{color:#e00;font-weight:700;}

/* 画像プレースホルダー（本番は <img> に差し替え） */
#rurubu-lp .img-ph{
  width:100%;
  display:flex;align-items:center;justify-content:center;
  background:#eee;color:#888;
  border:2px dashed #ccc;
  font-size:14px;
}
#rurubu-lp .img-ph.round{border-radius:14px;}

/* ---------- キービジュアル ---------- */
#rurubu-lp .keyvisual{width:100%;}
#rurubu-lp .keyvisual .img-ph{aspect-ratio:16/7;}

/* ---------- るるぶ紹介 ---------- */
#rurubu-lp .intro{
  display:flex;flex-wrap:wrap;align-items:center;gap:28px;
}
#rurubu-lp .intro .photo{flex:1;min-width:260px;}
#rurubu-lp .intro .photo .img-ph{aspect-ratio:4/3;border-radius:16px;}
#rurubu-lp .intro .photo.covers img{width:100%;max-width:459px;height:auto;display:block;margin:0 auto;}
#rurubu-lp .intro .text{flex:1.3;min-width:260px;}
#rurubu-lp .intro .text .ttl{font-size:22px;font-weight:700;color:#e6006e;margin-bottom:6px;}
#rurubu-lp .intro .text p{font-size:16px;line-height:1.9;color:#333;font-weight:700;}
@media screen and (min-width:768px){
  /* PC: 左右余白をなくし本文を1行に収める */
  #rurubu-lp .sec.pad-top{padding-left:0;padding-right:0;}
  #rurubu-lp .intro{max-width:none;}
}
#rurubu-lp .marker{background:linear-gradient(to bottom,transparent 60%,#fff473 60%);}

/* ---------- 3つのポイント（黄色帯） ---------- */
#rurubu-lp .points{background:#fff9c4;padding:32px 20px;text-align:center;}
#rurubu-lp .points .lead{
  font-size:25px;font-weight:700;line-height:1.7;color:#7a3d00;
  text-decoration:underline;text-decoration-color:#e6006e;text-underline-offset:6px;
  margin-bottom:20px;
}
#rurubu-lp .points .lead .pink{color:#e6006e;}
#rurubu-lp .points ul{
  list-style:none;padding:0;
  display:inline-flex;flex-direction:column;gap:10px;
  text-align:left;font-weight:700;color:#333;font-size:25px;
}

/* ---------- ここを鍛えて伸ばしてほしい ---------- */
#rurubu-lp .skills{display:flex;flex-wrap:wrap;justify-content:center;gap:18px;margin-bottom:28px;padding:0;}
#rurubu-lp .skills li{
  list-style:none;
  background:#fff;border:4px solid #e6006e;border-radius:18px;
  padding:12px 28px;font-weight:700;font-size:28px;color:#333;
}

/* 写真2枚並び */
#rurubu-lp .photo2{display:flex;flex-wrap:wrap;justify-content:center;gap:16px;}
#rurubu-lp .photo2 > div{flex:1;min-width:280px;}
#rurubu-lp .photo2 .img-ph{aspect-ratio:4/3;}
#rurubu-lp .photo2 img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:14px;display:block;}

/* ---------- 開催概要（白ブロック） ---------- */
#rurubu-lp .data-list{display:flex;flex-direction:column;gap:12px;}
#rurubu-lp .data-box{background:#fff;}
#rurubu-lp .data-box .data-title{
  background:#f07c00;color:#fff;font-weight:700;font-size:20px;padding:8px 16px;
  text-align:center;position:relative;
}
#rurubu-lp .data-box .data-title .common{position:absolute;right:16px;top:50%;transform:translateY(-50%);font-size:15px;}
#rurubu-lp .data-box .data-detail{padding:16px;color:#8a4a00;font-weight:700;font-size:22px;text-align:center;}
#rurubu-lp .data-box .data-detail .note{display:block;font-size:18px;}
@media screen and (min-width:768px){
  /* PC: 必須の持ち物を1行に収める */
  #rurubu-lp .data-box .data-detail .must{font-size:20px;}
}
#rurubu-lp .data-box .data-detail.tight{padding-bottom:6px;}
#rurubu-lp .data-box .note-bottom{padding:0 16px 16px;font-size:18px;text-align:center;}
#rurubu-lp .data-box .cities.tight + .note-bottom{font-size:18px;}

/* 東京/大阪 2カラム */
#rurubu-lp .cities{display:flex;flex-wrap:wrap;gap:14px;padding:16px;}
#rurubu-lp .cities.tight{padding-bottom:10px;}
#rurubu-lp .city{flex:1;min-width:250px;border-radius:16px;padding:20px 22px;text-align:center;}
#rurubu-lp .city.tokyo{background:#e8f4fd;}
#rurubu-lp .city.osaka{background:#ffe3ef;}
#rurubu-lp .city .name{font-size:32px;font-weight:700;letter-spacing:.1em;margin-bottom:14px;}
#rurubu-lp .city.tokyo .name{color:#0a6fc2;}
#rurubu-lp .city.osaka .name{color:#e6006e;}
#rurubu-lp .city.small .name{font-size:28px;margin-bottom:8px;}
/* 開催概要の「東京」「大阪」を白地＋枠囲みで強調 */
#rurubu-lp .data-box .city .name,
#rurubu-lp .access .city .name{
  display:inline-block;min-width:150px;padding:2px 28px;
  background:#fff;border:3px solid currentColor;border-radius:999px;
}
#rurubu-lp .city p{font-size:22px;font-weight:700;color:#333;}
#rurubu-lp .city dl{
  display:grid;grid-template-columns:auto 1fr;gap:6px 10px;
  text-align:left;font-size:21px;color:#333;
}
/* 見出しと内容を縦積みしてセンタリング */
#rurubu-lp .city dl{grid-template-columns:1fr;gap:0;text-align:center;}
#rurubu-lp .city dd{margin-bottom:10px;}
#rurubu-lp .city dd:last-child{margin-bottom:0;}
#rurubu-lp .city dt{font-weight:700;white-space:nowrap;}
#rurubu-lp .city dd{font-weight:700;}
#rurubu-lp .city dd .sub{font-weight:700;color:#333;}

/* ---------- スケジュール ---------- */
#rurubu-lp .schedule-box{
  background:#fff;border:3px solid #f07c00;border-radius:12px;overflow:hidden;
}
#rurubu-lp .schedule-box table{width:100%;border-collapse:collapse;text-align:left;font-size:16px;}
#rurubu-lp .schedule-box th,
#rurubu-lp .schedule-box td{padding:10px;border-bottom:1px solid #f3c78f;vertical-align:top;}
#rurubu-lp .schedule-box tr:last-child th,
#rurubu-lp .schedule-box tr:last-child td{border-bottom:0;}
#rurubu-lp .schedule-box th{width:100px;background:#fff3e3;color:#333;font-weight:700;font-size:16px;white-space:nowrap;}
#rurubu-lp .schedule-box td{font-weight:700;font-size:18px;}
#rurubu-lp .schedule-box .comment{
  display:block;margin-top:6px;padding:8px 10px;
  background:#fdf1e1;color:#5a3a12;border-radius:8px;
  font-size:15px;font-weight:700;line-height:1.8;
}
#rurubu-lp .schedule-box .note{display:block;margin-top:6px;padding:8px 10px;background:#fde8e8;border-radius:8px;font-size:14px;font-weight:700;}
/* コメントと同じ形・色の吹き出し（上向きのしっぽ付き） */
#rurubu-lp .schedule-box .comment.balloon{position:relative;margin-top:14px;}
#rurubu-lp .schedule-box .comment.balloon::before{
  content:"";position:absolute;left:24px;bottom:100%;
  border:solid transparent;border-width:0 9px 9px;border-bottom-color:#fdf1e1;
}

/* ---------- アクセス ---------- */
#rurubu-lp .access{display:flex;flex-wrap:wrap;gap:14px;}
#rurubu-lp .access .city{text-align:left;padding:22px 24px;}
#rurubu-lp .access .city .name{text-align:center;display:table;margin-left:auto;margin-right:auto;}
#rurubu-lp .access .city .label{margin-bottom:4px;font-weight:700;}
/* 【集合場所】の右に会場名、その下に住所 */
#rurubu-lp .access .city .place{display:flex;gap:8px;margin-bottom:16px;font-size:18px;}
#rurubu-lp .access .city .place p{font-size:inherit;}
#rurubu-lp .access .city .place .nw{display:inline-block;}
#rurubu-lp .access .city .place .label{flex-shrink:0;margin-bottom:0;}
#rurubu-lp .access .city .place .val{margin-bottom:0;}
#rurubu-lp .access .city .val{font-weight:700;line-height:1.8;margin-bottom:16px;}
#rurubu-lp .access .city .val:last-child{margin-bottom:0;}
#rurubu-lp .access .city .map img{width:100%;height:auto;display:block;border-radius:8px;}

/* ---------- 注意事項 ---------- */
#rurubu-lp .attention{
  background:#fff;border:2px solid #565656;padding:22px;margin-bottom:24px;
}
#rurubu-lp .attention p{font-size:18px;line-height:1.9;color:#555;}
#rurubu-lp .attention p.item{padding-left:1em;text-indent:-1em;}
#rurubu-lp .attention p.item + p.item{margin-top:4px;}
#rurubu-lp .terms{font-size:18px;line-height:1.9;color:#333;}
#rurubu-lp .terms p{margin-bottom:14px;}
#rurubu-lp .terms table{
  width:100%;border-collapse:collapse;border:2px solid #333;background:#fff;font-size:18px;margin-top:20px;
}
#rurubu-lp .terms th,
#rurubu-lp .terms td{border:1px solid #333;padding:6px 10px;}
#rurubu-lp .terms th{font-weight:700;text-align:center;vertical-align:top;}
#rurubu-lp .terms th.yellow{background:#fff200;padding:6px;}
#rurubu-lp .terms th.w48{width:48%;}
#rurubu-lp .terms td.dot{border-style:dotted;}

/* ---------- 申込窓口（帯＋ロゴ） ---------- */
#rurubu-lp .cta{padding:0 0 36px;text-align:center;}
#rurubu-lp .cta .sec-title{margin:0;padding:10px 10px 14px;}
#rurubu-lp .cta .logos{
  display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:20px;
  background:#f07c00;padding:0 12px 16px;
}
#rurubu-lp .cta .logos li{
  list-style:none;width:160px;height:64px;background:#fff;padding:4px;
  display:flex;align-items:center;justify-content:center;
}
#rurubu-lp .cta .logos img{max-height:100%;width:auto;}
#rurubu-lp .cta .logos .img-ph{height:100%;border:0;background:#fff;}

/* ---------- フッター（サイト共通フッターがある場合は削除） ---------- */
#rurubu-lp .lp-footer{background:#7a3d00;padding:16px;text-align:center;}
#rurubu-lp .lp-footer small{color:#ffdcb3;font-size:11px;}

/* =========================================================
   スマホ（600px以下）
   ========================================================= */
@media screen and (max-width:767px){
#tx-page h1 {
	padding: 10px;
	font-size: 1rem;
	margin-bottom: 0;
}
  #rurubu-lp .sec{padding-bottom:20px;}
  #rurubu-lp .sec.pad-top{padding-top:20px;}
  #rurubu-lp .sec-title{font-size:18px;padding:8px 10px;margin-bottom:14px;}
  #rurubu-lp .sec-title small{font-size:13px;}
  #rurubu-lp .pc-br{display:none;}
  #rurubu-lp .sp-br{display:inline;}

  #rurubu-lp .note{font-size:12px;}
  #rurubu-lp .note.right{font-weight:700;}
  #rurubu-lp .intro{gap:16px;}
  #rurubu-lp .intro .text .ttl{font-size:19px;}
  #rurubu-lp .intro .text p{font-size:14px;}

  #rurubu-lp .points{padding:20px 14px;}
  #rurubu-lp .points .lead{font-size:16px;}
  #rurubu-lp .points ul{font-size:16px;gap:6px;}

  #rurubu-lp .skills{gap:10px;margin-bottom:18px;}
  #rurubu-lp .skills{display:grid;grid-template-columns:1fr 1fr;max-width:300px;margin-left:auto;margin-right:auto;}
  #rurubu-lp .skills li{font-size:20px;padding:8px 10px;border-width:3px;text-align:center;}

  #rurubu-lp .data-box .data-title{font-size:14px;}
  #rurubu-lp .data-box .data-title .common{right:10px;font-size:11px;}
  #rurubu-lp .data-box .data-detail{font-size:15px;padding:12px;}
  #rurubu-lp .data-box .data-detail .note,
  #rurubu-lp .data-box .note-bottom,
  #rurubu-lp .data-box .cities.tight + .note-bottom{font-size:12px;}
  #rurubu-lp .cities{padding:12px;gap:10px;}
  #rurubu-lp .city{padding:14px 16px;}
  #rurubu-lp .city .name{font-size:24px;margin-bottom:8px;}
  #rurubu-lp .city.small .name{font-size:22px;}
  #rurubu-lp .data-box .city .name,
  #rurubu-lp .access .city .name{min-width:110px;padding:0 20px;border-width:2px;}
  #rurubu-lp .city p{font-size:17px;}
  #rurubu-lp .city dl{font-size:15px;}
  #rurubu-lp .access .city .place{font-size:15px;flex-direction:column;gap:2px;}

  #rurubu-lp .schedule-box th{width:80px;font-size:15px;}
  #rurubu-lp .schedule-box td{font-size:16px;}
  #rurubu-lp .schedule-box .comment{font-size:14px;}
  #rurubu-lp .schedule-box .note{font-size:13px;}
  #rurubu-lp .attention{padding:14px;}
  #rurubu-lp .attention p,#rurubu-lp .terms{font-size:12px;}
  #rurubu-lp .terms table{font-size:12px;}

  #rurubu-lp .cta .logos li{width:130px;height:52px;}
}
