:root{
    --accent:#e88945;        /* メインカラー */
    --accent-soft:#f7dec9;   /* 同系色の淡色 */
    --ink:#222;
    --muted:#6b7280;
    --bg:#fff;
    --max:1120px;
    --radius:18px;
    --shadow:0 10px 25px rgba(0,0,0,.08);
  }
  
  *{box-sizing:border-box}
  body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic",Meiryo,sans-serif;color:var(--ink);background:var(--bg);line-height:1.9}
  
  .onmoto-wrap{max-width:var(--max);margin:auto;padding:clamp(16px,3vw,32px)}
  
  /* Hero */
  .onmoto-hero{padding:24px 0 48px;text-align:center;}
  .onmoto-eyebrow{letter-spacing:.18em;font-weight:700;color:var(--accent);margin:0 0 6px}
  .onmoto-title{font-size:clamp(28px,4vw,40px);margin:0 0 12px}
  .onmoto-lead{color:var(--muted);font-size:clamp(14px,2.2vw,16px);margin:0 auto;max-width:900px}
  
  /* Sections */
  .onmoto-section{display:flex;gap:clamp(18px,3vw,40px);align-items:center;padding:clamp(18px,3vw,36px) 0;border-top:1px solid #eee}
  .onmoto-section--alt{flex-direction:row-reverse}
  .onmoto-image{flex:1 1 48%}
  .onmoto-image img{width:100%;display:block;border-radius:var(--radius);box-shadow:var(--shadow);object-fit:cover;aspect-ratio:4/3;background:#fafafa}
  .onmoto-content{flex:1 1 52%}
  
  .onmoto-h2{font-size:clamp(20px,3vw,26px);margin:0 0 12px;line-height:1.5;position:relative;padding-left:14px}
  .onmoto-h2::before{
    content:"";position:absolute;left:0;top:.25em;width:6px;height:1.2em;border-radius:6px;
    background:linear-gradient(180deg,var(--accent),var(--accent-soft));
  }
  .onmoto-content p{margin:0 0 14px}
/* 箇条書き（アクセントドット） */
.onmoto-list{
    margin:10px 0 0 0;
    padding:0;
    list-style:none;            /* 既定の黒点を消す */
  }
  .onmoto-list li{
    position:relative;
    padding-left:28px;          /* ドット分の余白 */
    margin:.2em 0;
    color:#444;
  }
  .onmoto-list li::before{
    content:"";
    position:absolute;
    left:0;
    top:0.9em;                  /* 1行目の中央に合わせる */
    transform:translateY(-50%);
    width:10px;
    height:10px;
    border-radius:50%;
    background:var(--accent);   /* #e88945 */
    box-shadow:0 0 0 4px var(--accent-soft);  /* 外側の淡色リング */
  }
  
  /* Quote */
  .onmoto-quote{
    margin:8px 0 12px;padding:10px 14px;border-left:4px solid var(--accent);
    background:linear-gradient(90deg,#fff,#fff,#fff,var(--accent-soft));
    border-radius:10px
  }
  
  /* Cards */
  .onmoto-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:8px}
  .onmoto-card{padding:14px;border:1px solid #eee;border-radius:14px;background:#fff;box-shadow:var(--shadow)}
  .onmoto-card h3{margin:.1em 0 .3em;font-size:16px;color:var(--accent)}
  .onmoto-card p{margin:0;color:#444;font-size:14px}
  
  /* CTA */
  .onmoto-cta{margin-top:8px}
  .onmoto-button{
    display:inline-block;padding:12px 18px;border-radius:999px;
    background:var(--accent);color:#fff;text-decoration:none;font-weight:700;
    box-shadow:0 6px 18px rgba(232,137,69,.35);transition:transform .06s ease
  }
  .onmoto-button:hover{transform:translateY(-1px)}
  
  /* 資格・認定 */
  .onmoto-qual .onmoto-h2{margin-bottom:8px}
  .onmoto-qual-timeline{
    display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:12px
  }
  .onmoto-qual-item{
    border:1px solid #eee;border-radius:14px;padding:12px;background:#fff;box-shadow:var(--shadow)
  }
  .onmoto-qual-figure{margin:0 0 8px;text-align:center}
  .onmoto-qual-figure img{width:100%;height:auto;border-radius:10px;background:#fafafa;object-fit:cover}
  .onmoto-qual-figure figcaption{margin-top:6px;font-size:13px;color:#444}
  .onmoto-qual-desc{margin:0;color:#333;font-size:14px}
  .onmoto-qual-desc strong{color:var(--accent)}
  
  /* 実績サマリー */
  .onmoto-qual-summary{
    margin-top:12px;padding:10px 12px;border:1px solid #eee;border-radius:12px;background:#fff6ef
  }
  .onmoto-qual-summary ul{margin:0 0 6px 18px}
  .onmoto-qual-summary li{margin:.2em 0}
  .onmoto-link{color:var(--accent);text-decoration:underline}
  
  /* Responsive */
  @media (min-width: 1200px){
    .onmoto-qual-timeline{grid-template-columns:repeat(3,minmax(0,1fr))}
  }
  @media (max-width: 960px){
    .onmoto-cards{grid-template-columns:1fr 1fr}
  }
  @media (max-width: 768px){
    .onmoto-section,.onmoto-section--alt{flex-direction:column}
    .onmoto-image,.onmoto-content{flex:1 1 auto}
    .onmoto-cards{grid-template-columns:1fr}
    .onmoto-qual-timeline{grid-template-columns:1fr}
  }
  /* 資格サマリーの導入文 */
.onmoto-qual-intro{
    margin:0 0 8px;
    font-size:14px;
    color:#333;
  }
  
  /* 箇条書きを少しコンパクトに */
  .onmoto-list--compact li{
    padding-left:24px;   /* 既定 28px より少し詰める */
    margin:.1em 0;
  }
  .onmoto-list--compact li::before{
    width:8px; height:8px;           /* ドットも少し小さく */
    box-shadow:0 0 0 0 var(--accent-soft);
  }
  /* --- 資格サマリー用：シンプルな角丸スクエアの箇条書き --- */
.onmoto-list--simple{
    margin:0 0 6px 0;
    padding:0;
    list-style:none;
  }
  .onmoto-list--simple li{
    position:relative;
    padding-left:22px;           /* シンプル分だけ少し詰める */
    margin:.15em 0;
  }
  .onmoto-list--simple li::before{
    content:"";
    position:absolute;
    left:0;
    top:0.95em;                  /* 1行目の中心に合わせる */
    transform:translateY(-50%);
    width:8px;
    height:8px;
    border-radius:2px;           /* 角丸＝丸すぎない印象に */
    background:var(--accent);    /* #e88945 */
    box-shadow:none;             /* 外側リングなし＝よりシンプル */
  }

/* ===== YouTube 埋め込み（新デザイン） ===== */
.onmoto-video{
    border-top:1px solid #eee;
    padding:clamp(22px,3vw,42px) 0;
    text-align:center;
    background:linear-gradient(180deg,#fff, #fff7f1 60%, #fff 100%);
  }
  .onmoto-video .onmoto-h2{
    display:inline-block;
    margin:0 0 14px;
    padding-bottom:8px;
    font-weight:700;
    position:relative;
  }
  .onmoto-video .onmoto-h2::after{
    content:"";
    position:absolute;
    left:50%;
    bottom:0;
    transform:translateX(-50%);
    width:120px;
    height:3px;
    border-radius:3px;
    background:var(--accent); /* #e88945 */
  }
  
  /* 16:9のレスポンシブ枠。中央寄せ・カード風 */
  .onmoto-video-frame{
    position:relative;
    width:100%;
    max-width:640px;         /* PCは横640px */
    margin:14px auto 0;
    background:#000;
    border:1px solid #f0e2d5;
    border-radius:var(--radius);
    box-shadow:0 10px 24px rgba(232,137,69,.15);
    overflow:hidden;
  }
  .onmoto-video-frame::before{
    content:"";
    display:block;
    padding-top:56.25%;      /* 16:9フォールバック */
  }
  .onmoto-video-frame iframe{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:0;
  }
  
  /* 対応ブラウザではaspect-ratioを使用 */
  @supports (aspect-ratio: 16/9){
    .onmoto-video-frame{ aspect-ratio:16/9; }
    .onmoto-video-frame::before{ display:none; padding:0; }
    .onmoto-video-frame iframe{ position:static; height:100%; }
  }
  
  /* スマホは横幅フル（コンテンツ幅いっぱい） */
  @media (max-width: 768px){
    .onmoto-video-frame{ max-width:100%; }
  }
  
  