*{margin:0;padding:0;box-sizing:border-box;}
body{
  font-family:"Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3","Meiryo UI","メイリオ",Meiryo,sans-serif;
  color:#1a2a38;line-height:1.9;letter-spacing:.03em;
  font-weight:500;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  font-feature-settings:"palt";
}
img{max-width:100%;height:auto;display:block;border:none;}
a{text-decoration:none;color:inherit;transition:opacity .3s;}
@media(hover:hover){a:hover{opacity:.7;}}
.c-content_inner{padding:0 20px;max-width:1240px;margin:0 auto;}
.is-sp{display:none;}
@media(max-width:767px){.is-sp{display:inherit;}.is-pc{display:none;}}
.box-shadow{box-shadow:0 0 30px rgba(103,115,150,.1);}

/* ============================================================
   上部シリーズナビゲーション
   ============================================================ */
.lp-topnav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);backdrop-filter:blur(8px);border-bottom:1px solid #e0e6ea;}
.lp-topnav .inner{max-width:1240px;margin:0 auto;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:20px;}
@media(max-width:767px){.lp-topnav .inner{padding:10px 12px;flex-direction:column;gap:8px;}}
.lp-topnav .series-title{font-size:15px;color:#225E80;font-weight:600;letter-spacing:.1em;white-space:nowrap;}
@media(max-width:767px){.lp-topnav .series-title{font-size:11px;letter-spacing:.04em;}}
.lp-topnav .nav-links{display:flex;gap:8px;white-space:nowrap;}
.lp-topnav .nav-links a{font-size:14px;padding:7px 16px;border:1px solid #d5dee3;border-radius:30px;color:#225E80;letter-spacing:.05em;transition:all .25s;white-space:nowrap;}
.lp-topnav .nav-links a:hover{background:#225E80;color:#fff;border-color:#225E80;opacity:1;}
.lp-topnav .nav-links a.is-current{background:#225E80;color:#fff;border-color:#225E80;pointer-events:none;}
@media(max-width:767px){.lp-topnav .nav-links a{padding:5px 12px;font-size:11px;}}

/* ============================================================
   MV
   ============================================================ */
/* MV：第一弾（EP01）完全準拠。背景はEP02画像、欠落のボタン背景画像／矢印SVGはCSSで再現 */
.lp-mv{padding:100px 0;color:#fff;background:url('../img/ep02_mv_bg.png') center/cover no-repeat;position:relative;}
.lp-mv::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,55,80,.30) 0%,rgba(15,45,65,.45) 100%);z-index:0;}
@media(max-width:767px){.lp-mv{padding:20px 0;}}
.lp-mv .c-content_inner{position:relative;z-index:2;}
.lp-mv .category{margin-bottom:50px;display:flex;justify-content:flex-start;align-items:center;}
@media(max-width:767px){.lp-mv .category{margin-bottom:75px;justify-content:center;}}
.lp-mv .category p{margin:0;}
.lp-mv .category .logo-text{flex:0 0 auto;margin-right:24px;font-size:20px;font-weight:400;letter-spacing:.04em;}
@media(max-width:767px){.lp-mv .category .logo-text{font-size:13px;margin-right:15px;}}
.lp-mv .category .doc-label{flex:0 0 auto;padding-left:24px;font-size:20px;font-weight:300;letter-spacing:.04em;position:relative;}
@media(max-width:767px){.lp-mv .category .doc-label{font-size:12px;padding-left:15px;}}
.lp-mv .category .doc-label::before{content:" ";display:block;width:1px;height:25px;background:#fff;position:absolute;top:50%;left:0;margin-top:-12px;}
@media(max-width:767px){.lp-mv .category .doc-label::before{height:18px;margin-top:-9px;}}
.lp-mv .textbody{max-width:430px;}
.lp-mv .page_heading{margin:0 0 30px;font-size:40px;font-weight:300;line-height:1.5;letter-spacing:.04em;}
@media(max-width:767px){.lp-mv .page_heading{margin-bottom:15px;font-size:24px;}}
.lp-mv .copy{margin:30px 0;padding:20px 0;border-top:1px solid #fff;border-bottom:1px solid #fff;font-size:23px;letter-spacing:.04em;text-align:center;}
@media(max-width:767px){.lp-mv .copy{margin:0 0 25px;padding:12px 0;font-size:18px;}}
.lp-mv .copy span{font-size:16px;}
@media(max-width:767px){.lp-mv .copy span{font-size:12px;}}
.lp-mv .btn{margin-top:60px;}
@media(max-width:767px){.lp-mv .btn{margin-top:0;}}
.lp-mv .btn a{display:block;padding:25px 60px;font-size:20px;color:#fff;text-align:center;position:relative;z-index:1;background:linear-gradient(135deg,#E8784F 0%,#D4693E 50%,#C85C35 100%);transition:all .3s ease-out;}
@media(max-width:767px){.lp-mv .btn a{font-size:18px;padding:18px 50px 18px 30px;}}
@media(hover:hover){.lp-mv .btn a:hover{background:linear-gradient(135deg,#D4693E 0%,#C85C35 50%,#B54E2C 100%);}}
.lp-mv .btn span{display:inline-block;}
.lp-mv .btn span::after{content:"";display:block;width:24px;height:24px;border:1px solid #fff;border-radius:50%;position:absolute;top:50%;right:30px;margin-top:-12px;}
@media(max-width:767px){.lp-mv .btn span::after{right:15px;}}
.lp-mv .btn span::before{content:"";display:block;width:0;height:0;border-style:solid;border-width:4px 0 4px 7px;border-color:transparent transparent transparent #fff;position:absolute;top:50%;right:39px;margin-top:-4px;z-index:2;}
@media(max-width:767px){.lp-mv .btn span::before{right:24px;}}
.lp-mv .scroll{padding-bottom:58px;font-size:13px;color:#fff;position:absolute;bottom:0;left:50%;transform:translate(-50%,0);z-index:3;}
@media(max-width:767px){.lp-mv .scroll{display:none;}}
.lp-mv .scroll span{display:block;}
.lp-mv .scroll::before{content:" ";display:block;width:1px;height:40px;background:#fff;position:absolute;bottom:0;left:50%;animation:scroll 2s infinite;}
.lp-mv .scroll::after{content:" ";display:block;width:24px;height:24px;border:1px solid #fff;border-radius:50%;position:absolute;bottom:28px;left:50%;transform:translate(-50%,0);}
@keyframes scroll{0%{transform:scale(1,0);transform-origin:0 0;}50%{transform:scale(1,1);transform-origin:0 0;}51%{transform:scale(1,1);transform-origin:0 100%;}100%{transform:scale(1,0);transform-origin:0 100%;}}

/* ============================================================
   共通
   ============================================================ */
.c-section_title{margin-bottom:50px;text-align:center;}
@media(max-width:767px){.c-section_title{margin-bottom:30px;}}
.c-section_title .category{display:inline-block;padding:6px 26px;border-radius:50px;margin-bottom:14px;background:#E7F0F5;color:#225E80;font-size:20px;letter-spacing:.08em;}
@media(max-width:767px){.c-section_title .category{font-size:16px;}}
.c-section_title .heading{margin:0 0 25px;font-size:34px;line-height:1.47;font-weight:400;letter-spacing:.08em;color:#225E80;}
@media(max-width:767px){.c-section_title .heading{margin-bottom:20px;font-size:24px;}}
.c-section_title .lead{margin:0;font-size:20px;letter-spacing:.04em;line-height:1.9;}
@media(max-width:767px){.c-section_title .lead{font-size:16px;}}

/* ============================================================
   INTRO — 写真帯
   ============================================================ */
.lp-intro-text{padding:100px 0 80px;text-align:center;}
@media(max-width:767px){.lp-intro-text{padding:50px 0 40px;}}
.lp-intro-text p{max-width:720px;margin:0 auto;font-size:22px;line-height:2.5;letter-spacing:.08em;font-weight:400;}
@media(max-width:767px){.lp-intro-text p{font-size:17px;line-height:2.2;}}

/* フルブリード＋章扉ナンバー */
.photo-fullbleed{position:relative;z-index:1;height:50vh;min-height:360px;overflow:hidden;background-attachment:fixed;background-size:cover;background-position:center;}
@media(max-width:767px){.photo-fullbleed{height:42vh;min-height:280px;background-attachment:scroll;}}
.photo-fullbleed .overlay-text{
  position:absolute;bottom:0;left:0;right:0;padding:50px 60px;color:#fff;
  background:linear-gradient(0deg,rgba(0,0,0,.85) 0%,rgba(0,0,0,.55) 50%,transparent 100%);
  display:flex;align-items:flex-end;gap:32px;
}
@media(max-width:767px){.photo-fullbleed .overlay-text{padding:28px 20px 24px;gap:18px;}}

/* 番号ブロック（左端） */
.photo-fullbleed .chapter-mark{
  flex-shrink:0;
  display:flex;flex-direction:column;align-items:flex-start;
  padding-left:20px;
  border-left:3px solid #E8784F;
  line-height:1;
}
@media(max-width:767px){.photo-fullbleed .chapter-mark{padding-left:12px;border-left-width:2px;}}
.photo-fullbleed .chapter-mark .ep-label{
  font-family:'Work Sans',sans-serif;
  font-size:12px;font-weight:600;letter-spacing:.3em;
  color:#fff;opacity:.9;margin-bottom:10px;text-transform:uppercase;
}
@media(max-width:767px){.photo-fullbleed .chapter-mark .ep-label{font-size:10px;letter-spacing:.25em;margin-bottom:6px;}}
.photo-fullbleed .chapter-mark .big-number{
  font-family:'Work Sans','Heebo',sans-serif;
  font-size:88px;font-weight:700;line-height:.9;
  color:#fff;letter-spacing:-.02em;
  display:block;
}
@media(max-width:767px){.photo-fullbleed .chapter-mark .big-number{font-size:56px;}}

/* 本文テキスト */
.photo-fullbleed .overlay-text .chapter-text{flex:1;padding-bottom:6px;}
@media(max-width:767px){.photo-fullbleed .overlay-text .chapter-text{padding-bottom:2px;}}
.photo-fullbleed .overlay-text p{
  font-size:22px;font-weight:500;letter-spacing:.06em;
  line-height:1.7;margin:0;
  text-shadow:0 1px 8px rgba(0,0,0,.3);
}
@media(max-width:767px){.photo-fullbleed .overlay-text p{font-size:15px;line-height:1.75;}}

/* 写真ストリップ */
.photo-strip{display:grid;grid-template-columns:repeat(4,1fr);}
@media(max-width:767px){.photo-strip{grid-template-columns:repeat(2,1fr);}}
.photo-strip img{width:100%;aspect-ratio:3/2;object-fit:cover;transition:transform .4s;}
.photo-strip img:hover{transform:none;} /* 非リンク写真：マウスオーバーで動かさない（2026.06 共通指示） */

/* ============================================================
   セクション01
   ============================================================ */
.lp-section01{padding:80px 0 100px;}
@media(max-width:767px){.lp-section01{padding:50px 0;}}
.lp-section01 .content_box{padding:60px 80px 80px;background:#fff;}
@media(max-width:767px){.lp-section01 .content_box{padding:30px 25px;}}
.task_numbers{margin-bottom:45px;display:flex;align-items:stretch;background:#F5F5F5;}
@media(max-width:767px){.task_numbers{display:block;}}
.task_numbers .item{padding:36px 40px;border-right:1px solid #D5D5D5;width:34%;text-align:center;}
@media(max-width:767px){.task_numbers .item{width:auto;padding:26px;border:0;border-bottom:1px solid #D5D5D5;}}
.task_numbers .item:last-child{border-right:0;}
@media(max-width:767px){.task_numbers .item:last-child{border:0;}}
.task_numbers .item .heading{margin:0 -20px 16px;font-size:20px;font-weight:600;color:#225E80;}
@media(max-width:767px){.task_numbers .item .heading{font-size:17px;}}
.task_numbers .item .number{margin:0 -20px 10px;line-height:1.1;font-size:34px;font-weight:600;color:#CE0935;}
@media(max-width:767px){.task_numbers .item .number{font-size:24px;}}
.task_numbers .item .number strong{font-family:'Work Sans','Heebo',sans-serif;font-size:66px;}
@media(max-width:767px){.task_numbers .item .number strong{font-size:48px;}}
.task_numbers .item .number .established{display:block;margin-top:6px;font-size:14px;font-weight:400;color:#CE0935;letter-spacing:.04em;}
@media(max-width:767px){.task_numbers .item .number .established{font-size:12px;}}
.task_numbers .item .sub-note{font-size:13px;color:#1a2a38;line-height:1.8;font-weight:500;}
.lp-section01 .content_box > p{font-size:17px;line-height:2;}
.lp-section01 .content_box > p + p{margin-top:18px;}
.lp-section01 .content_images{margin-top:45px;display:flex;gap:4px;}
@media(max-width:767px){.lp-section01 .content_images{margin:30px -25px 0;flex-wrap:wrap;}}
.lp-section01 .content_images img{flex:1;min-width:0;aspect-ratio:3/2;object-fit:cover;}
@media(max-width:767px){.lp-section01 .content_images img{flex:1 1 50%;min-width:50%;}}

/* ============================================================
   インライン写真（本文中に挟むサブ画像・単独）
   ============================================================ */
.inline-figure{margin:36px 0;border-radius:4px;overflow:hidden;}
.inline-figure img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;background:#dde8ef;}
.inline-figure .caption{font-size:13px;color:#555;text-align:center;margin-top:10px;letter-spacing:.04em;}

/* ============================================================
   原料ギャラリー（3枚並び）
   ============================================================ */
.materials-gallery{margin:40px 0;}
.materials-gallery .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;}
@media(max-width:767px){.materials-gallery .grid{grid-template-columns:1fr;gap:10px;}}
.materials-gallery figure{margin:0;}
.materials-gallery .img-wrap{aspect-ratio:4/3;background:#dde8ef;overflow:hidden;border-radius:0;}
.materials-gallery .img-wrap img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s;}
.materials-gallery .img-wrap:hover img{transform:none;} /* 非リンク写真：マウスオーバーで動かさない（2026.06 共通指示） */
.materials-gallery figcaption{text-align:center;margin-top:10px;}
.materials-gallery figcaption .name{display:block;font-size:15px;font-weight:600;color:#225E80;margin-bottom:2px;}
.materials-gallery figcaption .en{display:block;font-size:11px;color:#555;letter-spacing:.06em;}
.materials-gallery .caption-main{text-align:center;font-size:12px;color:#777;margin-top:18px;letter-spacing:.04em;}

/* ============================================================
   写真ブリッジ（テキストなしの帯）
   ============================================================ */
/* 写真ブリッジ（テキストなしの帯）
   ※工場写真は<img>表示で全体が見える形に変更 */
.photo-bridge{background:#1a2a38;line-height:0;}
.photo-bridge img{display:block;width:100%;height:auto;max-width:none;}
@media(max-width:767px){.photo-bridge{background:#1a2a38;}}

/* ============================================================
   SECTION 02 — バイオサイクル
   ============================================================ */
.lp-section02{padding:80px 0 90px;background:url('../img/ep02_sec02_bg.png') center/cover no-repeat;position:relative;}
.lp-section02::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(22,80,110,.88);}
.lp-section02 .c-content_inner{position:relative;z-index:1;}
@media(max-width:767px){.lp-section02{padding:50px 0;}}
.lp-section02 .c-section_title .heading,.lp-section02 .c-section_title .lead{color:#fff;}
.lp-section02 .c-section_title .category{background:#fff;}
.lp-section02 .content_box{padding:60px 80px;margin-bottom:40px;background:#fff;border-radius:4px;}
@media(max-width:767px){.lp-section02 .content_box{padding:30px 25px;margin-bottom:30px;}}
.lp-section02 .content_box h3{margin:0 0 20px;font-size:26px;font-weight:600;color:#225E80;}
@media(max-width:767px){.lp-section02 .content_box h3{font-size:21px;}}
.lp-section02 .content_box p{font-size:17px;line-height:2;}
.lp-section02 .content_box p + p{margin-top:18px;}

/* バイオサイクル図（白背景の新デザイン版に合わせて、白の content_box と一体化） */
.biocycle-figure{margin:50px -80px 0;padding:0;background:transparent;}
@media(max-width:767px){.biocycle-figure{margin:30px -25px 0;}}
.biocycle-figure img{width:100%;height:auto;display:block;}
.biocycle-figure img.is-pc{display:block;}
.biocycle-figure img.is-sp{display:none;}
@media(max-width:767px){
  .biocycle-figure img.is-pc{display:none;}
  .biocycle-figure img.is-sp{display:block;}
}
.biocycle-figure .caption{text-align:center;font-size:14px;color:#555;margin-top:18px;margin-bottom:40px;padding:0 20px;letter-spacing:.04em;}

/* ============================================================
   インタビュー・コンパクト・レイアウト
   ※左にコンパクト写真（4:3）、右に引用文
   ============================================================ */
.interview-scene{display:flex;gap:36px;align-items:center;margin:36px 0 44px;background:#E7F0F5;border-radius:8px;overflow:hidden;}
@media(max-width:767px){.interview-scene{flex-direction:column;gap:0;align-items:stretch;}}
.interview-scene .scene-img{flex:0 0 360px;aspect-ratio:4/3;background:#dde8ef;overflow:hidden;align-self:stretch;max-height:none;}
@media(max-width:767px){.interview-scene .scene-img{flex:none;width:100%;aspect-ratio:4/3;align-self:auto;}}
.interview-scene .scene-img img{width:100%;height:100%;object-fit:cover;object-position:center;display:block;}
.interview-scene .quote-body{flex:1;padding:36px 44px 36px 0;display:flex;flex-direction:column;justify-content:center;position:relative;}
@media(max-width:767px){.interview-scene .quote-body{padding:28px 24px 30px;}}
.interview-scene .speaker{font-size:17px;font-weight:600;color:#225E80;margin-bottom:3px;letter-spacing:.04em;position:relative;z-index:1;}
.interview-scene .role{font-size:14px;color:#555;margin-bottom:18px;position:relative;z-index:1;}
.interview-scene .quote-text{font-size:17px;line-height:2.1;color:#1a2a38;font-weight:500;position:relative;z-index:1;}
.interview-scene .quote-text + .quote-text{margin-top:16px;}
@media(max-width:767px){.interview-scene .quote-text{font-size:15px;line-height:2;}.interview-scene .quote-text + .quote-text{margin-top:12px;}}

/* ============================================================
   SECTION 03 — コジェネ
   ============================================================ */
.lp-section03 .chanin-intro{background:#fff;padding:80px 0 40px;}
@media(max-width:767px){.lp-section03 .chanin-intro{padding:50px 0 20px;}}
/* コジェネ：縦スタック（図を大きく見せるため2列→1列に）／白背景の新デザイン版 */
.lp-section03 .split{display:block;min-height:auto;}
.lp-section03 .split .diagram-side{background:#fff;padding:70px 40px 50px;display:block;}
@media(max-width:767px){.lp-section03 .split .diagram-side{padding:40px 20px 30px;}}
.lp-section03 .split .diagram-side img{width:100%;max-width:1400px;height:auto;display:block;margin:0 auto;}
.lp-section03 .split .diagram-side img.is-pc{display:block;}
.lp-section03 .split .diagram-side img.is-sp{display:none;}
@media(max-width:767px){
  .lp-section03 .split .diagram-side img.is-pc{display:none;}
  .lp-section03 .split .diagram-side img.is-sp{display:block;max-width:500px;}
}
.lp-section03 .split .text-side{background:#225E80;color:#fff;padding:70px 40px 80px;display:block;}
@media(max-width:767px){.lp-section03 .split .text-side{padding:40px 25px 50px;}}
.lp-section03 .split .text-side .text-inner{max-width:940px;margin:0 auto;}
.lp-section03 .split .text-side h3{margin:0 0 32px;font-size:32px;font-weight:400;letter-spacing:.06em;line-height:1.5;text-align:center;}
@media(max-width:767px){.lp-section03 .split .text-side h3{font-size:24px;margin-bottom:24px;}}
.lp-section03 .split .text-side p{font-size:17px;line-height:2.1;opacity:.92;margin-bottom:18px;}
@media(max-width:767px){.lp-section03 .split .text-side p{font-size:15px;}}
.lp-section03 .tanigawa-quote{padding:50px 60px;background:#F4F8FB;}
@media(max-width:767px){.lp-section03 .tanigawa-quote{padding:30px 25px;}}
/* features：第1弾（EP01）形式のリスト（アイコン左＋見出し＋説明、上下border区切り） */
.lp-section03 .features{display:block;max-width:780px;margin:50px auto 0;border-top:1px solid #d3e0e6;}
.lp-section03 .features .feat{display:flex;align-items:center;justify-content:flex-start;padding:28px 10px;text-align:left;background:transparent;border-bottom:1px solid #d3e0e6;}
.lp-section03 .features .feat .feat-icon{flex:0 0 56px;width:56px;height:56px;margin:0 32px 0 0;border-radius:50%;background:#E7F0F5;display:flex;align-items:center;justify-content:center;}
.lp-section03 .features .feat dl{flex:1 1 auto;margin:0;}
.lp-section03 .features .feat dt{font-size:20px;font-weight:600;color:#225E80;margin-bottom:8px;}
.lp-section03 .features .feat dd{font-size:15px;color:#555;line-height:1.8;margin:0;}

/* プロジェクト看板（C36） */
.project-sign{background:#000;padding:70px 20px;text-align:center;}
.project-sign .inner{max-width:1100px;margin:0 auto;}
.project-sign img{width:100%;height:auto;max-height:520px;object-fit:contain;display:block;margin:0 auto;}
.project-sign .sign-caption{color:#fff;font-size:14px;margin-top:20px;letter-spacing:.08em;}

/* ============================================================
   SECTION 04 — 人々（3名・縦型カード）
   ============================================================ */
.lp-section04{padding:80px 0;background:#F4F8FB;}
@media(max-width:767px){.lp-section04{padding:50px 0;}}
.lp-section04 .people-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
@media(max-width:1023px){.lp-section04 .people-grid{grid-template-columns:repeat(3,1fr);gap:16px;}}
@media(max-width:767px){.lp-section04 .people-grid{grid-template-columns:1fr;gap:20px;}}
.lp-section04 .people-card{background:#fff;padding:32px 28px;border-radius:4px;box-shadow:0 0 30px rgba(103,115,150,.08);text-align:center;}
@media(max-width:767px){.lp-section04 .people-card{text-align:left;display:flex;gap:20px;padding:24px;}}
.lp-section04 .people-card .photo{flex:0 0 140px;width:140px;height:140px;margin:0 auto 20px;border-radius:50%;background:#dde8ef;overflow:hidden;}
@media(max-width:767px){.lp-section04 .people-card .photo{flex:0 0 110px;width:110px;height:110px;margin:0;}}
.lp-section04 .people-card .photo img{width:100%;height:100%;object-fit:cover;object-position:center;border-radius:50%;display:block;}
.lp-section04 .people-card .text{flex:1;min-width:0;}
.lp-section04 .people-card .text .name{font-size:17px;font-weight:600;color:#225E80;margin-bottom:4px;line-height:1.5;}
.lp-section04 .people-card .text .name .en{font-weight:400;font-size:12px;color:#555;display:block;margin:3px 0 0;}
@media(max-width:767px){.lp-section04 .people-card .text .name .en{display:inline;margin-left:6px;}}
.lp-section04 .people-card .text .role{font-size:13px;color:#555;margin-bottom:14px;}
.lp-section04 .people-card .text .quote{font-size:15px;line-height:1.9;color:#1a2a38;text-align:left;}
.attention{text-align:right;font-size:14px;color:#666;}
.attention.article-note{max-width:none;margin:48px auto 0;padding:32px 20px;text-align:center;color:#888;font-size:13px;background:#f5f7f9;letter-spacing:.03em;}
@media(max-width:767px){.attention.article-note{padding:24px 16px;font-size:12px;}}

/* ============================================================
   「電気よ、〜」ヴァーブ・シーケンス（C104-C108）
   ============================================================ */
.lp-verbs{padding:100px 0 80px;background:#111;color:#fff;text-align:center;}
@media(max-width:767px){.lp-verbs{padding:60px 0 40px;}}
.lp-verbs .lead-text{font-size:19px;font-weight:400;letter-spacing:.08em;margin-bottom:50px;opacity:.9;line-height:2;}
@media(max-width:767px){.lp-verbs .lead-text{font-size:15px;margin-bottom:35px;line-height:1.9;}}
.lp-verbs .verb-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;max-width:1400px;margin:0 auto 50px;padding:0 20px;box-sizing:border-box;}
@media(max-width:767px){.lp-verbs .verb-grid{gap:4px;padding:0 10px;}}
.lp-verbs .verb-tile{flex:0 0 calc((100% - 56px) / 3);aspect-ratio:16/9;background:#222;position:relative;overflow:hidden;}
@media(max-width:767px){.lp-verbs .verb-tile{flex:0 0 calc((100% - 24px) / 2);}}
.lp-verbs .verb-tile img{width:100%;height:100%;object-fit:cover;display:block;}
.lp-verbs .final-catch{margin-top:60px;font-size:40px;font-weight:400;letter-spacing:.18em;color:#fff;}
@media(max-width:767px){.lp-verbs .final-catch{font-size:26px;margin-top:36px;letter-spacing:.12em;}}

/* ============================================================
   SERIES NAV / ENDING
   ============================================================ */
.lp-series_nav{padding:70px 0;background:#E7F0F5;}
.lp-series_nav .nav-heading{text-align:center;margin-bottom:36px;font-size:16px;color:#225E80;font-weight:600;letter-spacing:.1em;}
.lp-series_nav .nav-heading::before,.lp-series_nav .nav-heading::after{content:"―";margin:0 12px;opacity:.4;}
.lp-series_nav .nav-grid{display:flex;justify-content:center;gap:30px;flex-wrap:wrap;}
@media(max-width:767px){.lp-series_nav .nav-grid{display:block;}}
.lp-series_nav .nav-card{width:360px;background:#fff;border-radius:6px;overflow:hidden;box-shadow:0 0 30px rgba(103,115,150,.1);transition:all .3s;border:2px solid transparent;}
@media(max-width:767px){.lp-series_nav .nav-card{width:auto;margin-bottom:20px;}}
.lp-series_nav .nav-card:hover{transform:translateY(-4px);box-shadow:0 4px 24px rgba(103,115,150,.2);}
.lp-series_nav .nav-card.is-current{border-color:#225E80;pointer-events:none;}
.lp-series_nav .nav-card .thumb{height:200px;overflow:hidden;position:relative;}
.lp-series_nav .nav-card .thumb img{width:100%;height:100%;object-fit:cover;}
.lp-series_nav .nav-card .thumb .ep-label{position:absolute;top:12px;left:12px;background:#225E80;color:#fff;padding:5px 18px;border-radius:3px;font-family:'Work Sans',sans-serif;font-size:13px;font-weight:600;letter-spacing:.12em;}
.lp-series_nav .nav-card .body{padding:26px;text-align:center;}
.lp-series_nav .nav-card .body h3{margin:0 0 6px;font-size:21px;font-weight:600;color:#225E80;}
.lp-series_nav .nav-card .body .sub{font-size:15px;color:#555;}
.lp-series_nav .nav-card .body .desc{font-size:14px;color:#555;margin-top:10px;}

.lp-related_links{padding:80px 0 120px;background:url('../img/ep02_ending_bg.png') center/cover no-repeat;background-attachment:fixed;position:relative;}
@media(max-width:767px){.lp-related_links{background-attachment:scroll;padding:50px 0 70px;}}
.lp-related_links::before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(10,35,55,.55);}
.lp-related_links .c-content_inner{position:relative;z-index:1;}
.lp-related_links .c-section_title{color:#fff;}
.lp-related_links .c-section_title .lead{color:#fff;font-size:22px;line-height:1.9;}
@media(max-width:767px){.lp-related_links .c-section_title .lead{font-size:17px;}}
.lp-related_links .link_list{margin-top:60px;display:flex;justify-content:space-between;}
@media(max-width:767px){.lp-related_links .link_list{margin-top:40px;display:block;}}
.lp-related_links .link_list .item{width:31.6%;}
@media(max-width:767px){.lp-related_links .link_list .item{width:auto;margin-bottom:20px;}}
.lp-related_links .link_list .item a{display:block;height:100%;background:#fff;border-radius:4px;overflow:hidden;}
.lp-related_links .link_list .item .image{height:160px;overflow:hidden;}
.lp-related_links .link_list .item .image img{display:block;width:100%;height:100%;object-fit:cover;}
.lp-related_links .link_list .item .image .img-placeholder{width:100%;height:100%;background:linear-gradient(135deg,#225E80 0%,#3a7fa3 100%);}
.lp-related_links .link_list .item .textbody{padding:28px;}
@media(max-width:767px){.lp-related_links .link_list .item .textbody{padding:24px;}}
.lp-related_links .link_list .item .textbody h3{margin:0 0 14px;font-size:21px;font-weight:600;text-align:center;color:#225E80;}
@media(max-width:767px){.lp-related_links .link_list .item .textbody h3{font-size:18px;}}
.lp-related_links .link_list .item .textbody p{font-size:15px;line-height:1.8;color:#2a3a48;}
.lp-related_links .link_list .item .textbody .more{margin-top:20px;text-align:right;color:#225E80;font-size:14px;}

.fade-up{opacity:0;transform:translateY(40px);transition:opacity .8s ease,transform .8s ease;}
.fade-up.visible{opacity:1;transform:translateY(0);}
.fade-up-delay{transition-delay:.2s;}

/* ====================================================================
   アニメーション一括無効化（クライアントレビュー用 / 公開時はこのブロックごと削除）
   ※2026-05-14：アニメーション復活のため、ブロックをコメントアウトで無効化
   　 再度止めたい場合は下の/* ～ * / を外せば再有効化されます
   - スクロール連動のフェードアップ
   - MVスクロールインジケーターの動き
   - パララックス（background-attachment:fixed）
   - ホバー時のtransform / 全transition
   ==================================================================== */
/*
*,*::before,*::after{
  animation:none !important;
  transition:none !important;
}
.fade-up{opacity:1 !important;transform:none !important;}
.lp-mv,
.photo-fullbleed,
.photo-bridge,
.lp-related_links{background-attachment:scroll !important;}
.lp-mv .scroll{display:none !important;}
.photo-strip img:hover,
.materials-gallery .img-wrap:hover img,
.lp-mv .btn a:hover,
.lp-series_nav .nav-card:hover{transform:none !important;}
*/

/* Task #56: ページトップに戻るボタン（第一弾LP仕様：#415ed3 矩形＋白chevron） */
.page-top-btn{position:fixed;right:20px;bottom:20px;width:50px;height:50px;background-color:#225E80;z-index:999;display:block;text-indent:-9999px;overflow:hidden;text-decoration:none;opacity:0;pointer-events:none;transition:opacity .3s;border-radius:4px;}
.page-top-btn.is-visible{opacity:1;pointer-events:auto;}
.page-top-btn:hover{opacity:.7;}
.page-top-btn:before{content:"";position:absolute;top:50%;left:50%;width:11px;height:11px;border-top:2px solid #fff;border-right:2px solid #fff;transform:rotate(-45deg);margin:-3px 0 0 -6px;text-indent:0;}
@media(min-width:768px){
  .page-top-btn{right:40px;bottom:40px;width:64px;height:64px;}
  .page-top-btn:before{width:13px;height:13px;margin:-3px 0 0 -7px;}
}

/* Task #61: c-section_title 内の lead-note（注釈） */
.lp-section01 .c-section_title .lead-note{font-size:13px;color:#666;margin-top:14px;letter-spacing:.04em;line-height:1.6;}
@media(max-width:767px){.lp-section01 .c-section_title .lead-note{font-size:11px;}}
.lp-section01 .c-section_title .lead sup{font-size:.7em;vertical-align:super;margin:0 1px;color:#225E80;}

/* ====================================================================
   Task #54 / #67 / #68 / #69 — SP最適化（第一弾LPのサイズ感を参考に縦スクロール圧縮）
   ==================================================================== */

/* #69: 改行制御ユーティリティ */
.nowrap{display:inline-block;white-space:nowrap;}

@media(max-width:767px){

  /* #54: イントロテキスト — 行間と余白を詰める */
  .lp-intro-text{padding:36px 0 28px !important;}
  .lp-intro-text p{font-size:15px !important;line-height:2.0 !important;}

  /* #54: フルブリードチャプター — 高さを抑える */
  .photo-fullbleed{height:36vh !important;min-height:240px !important;}
  .photo-fullbleed .chapter-mark .big-number{font-size:46px !important;}
  .photo-fullbleed .overlay-text p{font-size:14px !important;}

  /* #54: セクション全体 padding 圧縮 */
  .lp-section01{padding:40px 0 !important;}
  .lp-section02{padding:40px 0 !important;}
  .lp-section04{padding:40px 0 !important;}
  .lp-related_links{padding:40px 0 60px !important;}

  /* #54: content_box 内側 padding を詰める */
  .lp-section01 .content_box{padding:26px 20px !important;}
  .lp-section02 .content_box{padding:26px 20px !important;margin-bottom:24px !important;}
  .lp-section02 .content_box h3{font-size:18px !important;}

  /* #54: c-section_title まわり */
  .c-section_title{margin-bottom:24px !important;}
  .c-section_title .lead{font-size:15px !important;line-height:1.85 !important;}
  .c-section_title .category{font-size:14px !important;padding:5px 20px !important;}
  .c-section_title .heading{font-size:22px !important;margin-bottom:16px !important;}

  /* #54: インタビュー — 縦並びでの余白圧縮 */
  .interview-scene{margin-top:20px !important;}
  .interview-scene .quote-body{padding:22px 20px 24px !important;}
  .interview-scene .quote-text{font-size:14px !important;line-height:1.95 !important;}
  .interview-scene .speaker{font-size:16px !important;}
  .interview-scene .role{font-size:12px !important;}

  /* #54: section01 本文 */
  .lp-section01 .content_box > p{font-size:15px !important;line-height:1.95 !important;}

  /* #67: バイオサイクル図 — SP表示の最適化 */
  .biocycle-figure{margin:24px -10px 0 !important;}
  .biocycle-figure img.is-sp{max-width:460px;margin:0 auto;}
  .biocycle-figure .caption{font-size:12px !important;margin-top:12px !important;margin-bottom:24px !important;}

  /* #68: コジェネ図 — SP表示の最適化（split内） */
  .lp-section03 .split .diagram-side{padding:30px 16px 24px !important;}
  .lp-section03 .split .diagram-side img.is-sp{max-width:420px;}
  .lp-section03 .split .text-side{padding:30px 22px 36px !important;}
  .lp-section03 .split .text-side h3{font-size:20px !important;margin-bottom:18px !important;}
  .lp-section03 .split .text-side p{font-size:14px !important;line-height:1.95 !important;}

  /* #54: 谷川インタビュー周りの余白 */
  .lp-section03 .tanigawa-quote{padding:24px 20px !important;}
  .lp-section03 .chanin-intro{padding:36px 0 16px !important;}

  /* #54: 関連リンク・シリーズナビ */
  .lp-series_nav .nav-card{display:block !important;margin-bottom:36px !important;border:0 !important;box-shadow:0 2px 12px rgba(103,115,150,.12) !important;background:#fff !important;overflow:hidden !important;}
  .lp-series_nav .nav-card .thumb{height:auto !important;}
  .lp-series_nav .nav-card .thumb img{display:block !important;width:100% !important;height:auto !important;}
  .lp-series_nav .nav-card .body{background:#fff !important;}
  .lp-related_links .link_list{margin-top:28px !important;}
  .lp-related_links .link_list .item{margin-bottom:16px !important;}
  .lp-related_links .link_list .item .textbody{padding:20px !important;}
  .lp-related_links .link_list .item .textbody h3{font-size:16px !important;}

  /* #69: MV見出し — タイトルが「タ」で改行されないようnowrap適用 */
  .lp-mv .page_heading{letter-spacing:.04em !important;}

  /* ============================================================
     議事録（2026-05-21）ベース追加調整：縦スクロール圧縮の第2段階
     方針：写真と本文が1画面内に収まる範囲、画像で画面が埋まらないこと
     ============================================================ */

  /* インタビュー写真：4:3 で画面いっぱい → 16:9 でスリム化し上半身フォーカス */
  .interview-scene .scene-img{aspect-ratio:16/9 !important;max-height:240px !important;}
  .interview-scene .scene-img img{object-position:center 30% !important;}

  /* materials-gallery：3列（米・キャッサバ・もみ殻を横一列に） */
  .materials-gallery{margin:24px 0 !important;}
  .materials-gallery .grid{grid-template-columns:repeat(3,1fr) !important;gap:6px !important;}
  .materials-gallery .img-wrap{aspect-ratio:1/1 !important;}
  .materials-gallery figcaption{margin-top:6px !important;}
  .materials-gallery figcaption .name{font-size:12px !important;}
  .materials-gallery figcaption .en{font-size:9px !important;}
  .materials-gallery .caption-main{font-size:11px !important;margin-top:14px !important;}

  /* photo-fullbleed（チャプターブリッジ）：更に高さ削減 */
  .photo-fullbleed{height:28vh !important;min-height:200px !important;}
  .photo-fullbleed .chapter-mark .big-number{font-size:40px !important;}
  .photo-fullbleed .chapter-mark .ep-label{font-size:9px !important;}
  .photo-fullbleed .overlay-text{padding:22px 18px 20px !important;gap:14px !important;}
  .photo-fullbleed .overlay-text p{font-size:13px !important;line-height:1.7 !important;}

  /* インタビュー全体の上下マージン更に圧縮（写真と本文を1画面に） */
  .interview-scene{margin:20px 0 24px !important;}
  .interview-scene .speaker{font-size:15px !important;margin-bottom:2px !important;}
  .interview-scene .role{font-size:11px !important;margin-bottom:12px !important;}
  .interview-scene .quote-body{padding:18px 18px 22px !important;}

  /* lp-section04 people-card：写真円のサイズ削減（議事録の画像占有抑制方針に沿う） */
  .lp-section04{padding:36px 0 !important;}
  .lp-section04 .people-card{padding:18px !important;gap:16px !important;}
  .lp-section04 .people-card .photo{flex:0 0 88px !important;width:88px !important;height:88px !important;}
  .lp-section04 .people-card .text .name{font-size:15px !important;}
  .lp-section04 .people-card .text .quote{font-size:13px !important;line-height:1.85 !important;}

  /* chanin-intro：本文と写真の余白を詰める */
  .lp-section03 .chanin-intro{padding:30px 0 12px !important;}

  /* photo-strip：写真の高さ抑制（2列で aspect 3/2 はまだ大きい） */
  .photo-strip img{aspect-ratio:4/3 !important;}

  /* ============================================================
     議事録ベース追加調整 第3段階（2026-06-03 フィードバック反映）
     SPで縦1列になっている箇所を、画面幅を活かして2〜3列化
     ============================================================ */

  /* ① インタビュー：上段[写真：名前/役職] + 下段[テキスト フル幅] のT字レイアウト
        Grid で写真とヘッダー（名前+役職）を横並びにし、quote-text は下段フル幅に展開 */
  .interview-scene{
    display:grid !important;
    grid-template-columns:120px 1fr !important;
    grid-template-rows:70px 70px !important;
    grid-auto-rows:auto !important;
    flex-direction:initial !important;
    align-items:stretch !important;
    gap:0 !important;
    margin:18px 0 22px !important;
  }
  .interview-scene .scene-img{
    grid-row:1 / 3 !important;
    grid-column:1 !important;
    flex:none !important;
    width:120px !important;
    height:140px !important;
    aspect-ratio:auto !important;
    max-height:none !important;
    align-self:stretch !important;
  }
  .interview-scene .scene-img img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    object-position:center 25% !important;
  }
  .interview-scene .quote-body{
    display:contents !important;
  }
  .interview-scene .speaker{
    grid-row:1 !important;
    grid-column:2 !important;
    align-self:end !important;
    padding:0 14px 0 16px !important;
    margin:0 0 3px !important;
    font-size:14px !important;
    line-height:1.35 !important;
    letter-spacing:.02em !important;
  }
  .interview-scene .role{
    grid-row:2 !important;
    grid-column:2 !important;
    align-self:start !important;
    padding:0 14px 0 16px !important;
    margin:0 !important;
    font-size:11px !important;
    line-height:1.4 !important;
  }
  .interview-scene .quote-text{
    grid-column:1 / -1 !important;
    padding:14px 16px 0 !important;
    font-size:13px !important;
    line-height:1.95 !important;
    margin:0 !important;
  }
  .interview-scene .quote-text + .quote-text{
    padding-top:10px !important;
    margin-top:0 !important;
  }
  .interview-scene .quote-text:last-of-type{
    padding-bottom:18px !important;
  }

  /* ② content_images（タイの農業/工場/EPC 3枚）：縦並び → grid 3列 */
  .lp-section01 .content_images{display:grid !important;grid-template-columns:repeat(3,1fr) !important;gap:4px !important;flex-wrap:initial !important;margin:24px -20px 0 !important;}
  .lp-section01 .content_images img{flex:none !important;min-width:0 !important;width:100% !important;aspect-ratio:1/1 !important;}

  /* ③ features（特徴アイコン3つ）：1列 → 3列、コンパクトに / SPは左寄せ */
  .lp-section03 .features{margin-top:30px !important;}
  .lp-section03 .features .feat{padding:18px 6px !important;}
  .lp-section03 .features .feat .feat-icon{flex:0 0 44px !important;width:44px !important;height:44px !important;margin:0 18px 0 0 !important;}
  .lp-section03 .features .feat .feat-icon svg{width:22px !important;height:22px !important;}
  .lp-section03 .features .feat dt{font-size:15px !important;margin-bottom:4px !important;line-height:1.45 !important;}
  .lp-section03 .features .feat dd{font-size:12.5px !important;line-height:1.7 !important;}

  /* ④ コジェネ図：sp（タイトル）直下に sp2（図本体）を配置
        縦スクロールに連動して図が左へスライド → 全体表示 → 下のコンテンツへ */
  .cogen-hscroll.is-sp{display:block !important;position:relative;z-index:5;margin:6px -16px 0 !important;}
  .cogen-hscroll__sticky{position:sticky;top:84px;height:auto;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;padding-top:16px;padding-bottom:16px;overflow:hidden;background:#fff;z-index:3;}
  .cogen-hscroll__title{display:block !important;width:84% !important;max-width:330px !important;height:auto !important;margin:0 0 14px !important;}
  .cogen-hscroll__viewport{width:100% !important;max-width:none !important;overflow:hidden !important;}
  .cogen-hscroll__img{height:35vh !important;width:auto !important;max-width:none !important;margin:0 !important;display:block !important;will-change:transform;}
  .cogen-hscroll__hint{position:absolute;left:0;right:0;bottom:20px;text-align:center;font-size:11px;letter-spacing:.08em;color:#225E80;opacity:.7;transition:opacity .35s;pointer-events:none;}
  .cogen-hscroll.is-done .cogen-hscroll__hint{opacity:0;}
}

/* ============================================================
   共通フッター（CORPORATE SITE動線 + Copyright / 参考デザイン準拠 2026.06）
   ============================================================ */
.lp-cmnfoot{background:#fff;border-top:1px solid #e0e6ea;font-family:"Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3","Meiryo UI",Meiryo,sans-serif;}
.lp-cmnfoot .inner{max-width:1240px;margin:0 auto;padding:48px 20px;display:flex;flex-direction:column;align-items:center;gap:22px;}
.lp-cmnfoot .corp-link{display:inline-flex;align-items:center;gap:14px;background:#415ed3;color:#fff;font-size:16px;letter-spacing:.08em;text-decoration:none;border-radius:8px;padding:16px 50px;transition:background .25s;}
.lp-cmnfoot .corp-link:hover{background:#3550c0;opacity:1;}
.lp-cmnfoot .corp-link .arrow{width:7px;height:7px;border-top:1.5px solid #fff;border-right:1.5px solid #fff;transform:rotate(45deg);display:inline-block;}
.lp-cmnfoot .copyright{margin:0;font-size:12px;letter-spacing:.04em;color:#555;}
@media(max-width:767px){.lp-cmnfoot .inner{padding:36px 16px 80px;gap:18px;}.lp-cmnfoot .corp-link{font-size:14px;padding:14px 38px;}.lp-cmnfoot .copyright{font-size:10px;text-align:center;}}

/* 共通ヘッダーロゴ：シリーズタイトルと同一行（topnav内に統合 2026.06） */
.lp-topnav .brand{display:flex;align-items:center;gap:18px;min-width:0;}
.lp-topnav .brand .logo{display:inline-block;line-height:0;flex:0 0 auto;transition:opacity .25s;}
.lp-topnav .brand .logo:hover{opacity:.7;}
.lp-topnav .brand .logo img{height:30px;width:auto;display:block;}
@media(max-width:767px){.lp-topnav .brand{gap:10px;}.lp-topnav .brand .logo img{height:20px;}}

/* 下部シリーズナビ：SPコンパクト化（2本＋「明電舎を知る」が少し覗く / 2026.06 共通指示） */
@media(max-width:767px){
  .lp-series_nav{padding:40px 0 !important;}
  .lp-series_nav .nav-heading{margin-bottom:18px !important;font-size:13px !important;}
  .lp-series_nav .nav-grid{display:grid !important;grid-template-columns:1fr 1fr !important;gap:12px !important;}
  .lp-series_nav .nav-card{display:block !important;width:auto !important;margin:0 !important;border-radius:5px !important;box-shadow:0 2px 12px rgba(103,115,150,.12) !important;overflow:hidden !important;border:2px solid transparent !important;}
  .lp-series_nav .nav-card.is-current{border-color:#225E80 !important;}
  .lp-series_nav .nav-card .thumb{height:84px !important;}
  .lp-series_nav .nav-card .thumb img{height:100% !important;width:100% !important;}
  .lp-series_nav .nav-card .thumb .ep-label{font-size:9px !important;padding:2px 8px !important;top:6px !important;left:6px !important;border-radius:2px !important;}
  .lp-series_nav .nav-card .body{padding:10px 8px !important;}
  .lp-series_nav .nav-card .body h3{font-size:13px !important;margin-bottom:2px !important;}
  .lp-series_nav .nav-card .body .sub{font-size:10px !important;}
  .lp-series_nav .nav-card .body .desc{font-size:10px !important;margin-top:4px !important;line-height:1.45 !important;}
}

/* EP02 字面調整（2026.06）：SPでバイオサイクル本文を他本文(14px)に揃える／コジェネ見出しを1行に */
@media(max-width:767px){
  .lp-section02 .content_box > p{font-size:14px !important;line-height:1.95 !important;}
  .lp-section03 .c-section_title .heading{font-size:20px !important;letter-spacing:.05em !important;}
}

/* MVトップ調整（2026.06）：見出しの折返し防止＋カテゴリ画像（EP01と統一） */
.lp-mv .textbody{max-width:430px;}
.lp-mv .page_heading{white-space:nowrap;}
.lp-mv .btn a{line-height:1.7;}
.lp-mv .category .logo-text{line-height:0;flex:0 0 auto;}
.lp-mv .category .logo-text img{display:block;width:310px;height:auto;}
@media(max-width:767px){
  .lp-mv .page_heading{white-space:normal;}            /* SPは自然折返し（収まる） */
  .lp-mv .category .logo-text img{width:154px;}
}


/* ===== related_linksカード統一（2026.06）：EP01と完全に同じスタイル＋丸アイコン ===== */
.lp-related_links .link_list .item a{border-radius:0;text-decoration:none;color:#2a3a48;}
.lp-related_links .link_list .item .textbody h3{font-size:20px;font-weight:600;text-align:center;color:#225E80;text-decoration:none;}
.lp-related_links .link_list .item .textbody p{font-size:15px;line-height:1.9;color:#2a3a48;text-decoration:none;}
.lp-related_links .link_list .item .textbody .more{margin-top:20px;padding-right:35px;text-align:right;color:#225E80;font-size:15px;position:relative;text-decoration:none;}
.lp-related_links .link_list .item .textbody .more::after{content:"";display:block;width:24px;height:24px;background:url('../img/btn_arrow03.svg') center no-repeat;position:absolute;top:50%;right:0;margin-top:-12px;}
/* シリーズナビ現在地カード：SPでも青枠＋クリック不可（EP01と統一） */
@media(max-width:767px){
  .lp-series_nav .nav-card{border:2px solid transparent !important;}
  .lp-series_nav .nav-card.is-current{border:2px solid #225E80 !important;pointer-events:none !important;}
}

/* ===== SECTION01 コジェネ全景写真キャプション（2026.06） ===== */
.sec01-cogen-photo{margin:0;}
.sec01-cogen-photo .cogen-photo-cap{margin-top:14px;text-align:center;font-size:15px;color:#555;letter-spacing:.04em;line-height:1.7;}
@media(max-width:767px){.sec01-cogen-photo .cogen-photo-cap{font-size:13px;text-align:left;}}
/* ===== 黒地パート内インタビュー：黒背景に馴染ませる（透明カード・白文字） ===== */
.project-sign .sign-interviews{max-width:1100px;margin:48px auto 0;text-align:left;}
.project-sign .sign-interviews .interview-scene{background:transparent;margin:0 0 36px;}
.project-sign .sign-interviews .interview-scene:last-child{margin-bottom:0;}
.project-sign .sign-interviews .interview-scene .speaker{color:#fff;}
.project-sign .sign-interviews .interview-scene .role{color:#b9c4cc;}
.project-sign .sign-interviews .interview-scene .quote-text{color:#e9eef2;}
@media(max-width:767px){.project-sign .sign-interviews{margin-top:32px;}}

/* ===== [修正①] 黒地パート内インタビュー（Chanin / 谷川）をカード化 =====
   他の白地パートのインタビュー（背景 #E7F0F5 のカード）と同様に、
   黒地（.project-sign）の中でも「インタビューパート」と一目でわかるよう、
   黒地に馴染む濃紺のカード背景＋うっすらした縁取りを付与する。 */
.project-sign .sign-interviews .interview-scene{
  background:#16313f;
  border:1px solid rgba(143,194,221,.28);
  border-radius:8px;
  overflow:hidden;
}
.project-sign .sign-interviews .interview-scene .scene-img{
  background:#1d3c4b;
}
.project-sign .sign-interviews .interview-scene .speaker{
  color:#8fc2dd;   /* 白地パートの明電ブルー #225E80 に対応する、黒地用のアクセント色 */
}
.project-sign .sign-interviews .interview-scene .role{
  color:#aebdc8;
}
.project-sign .sign-interviews .interview-scene .quote-text{
  color:#eef3f6;
}
/* ===== [修正①] ここまで ===== */


/* ============================================================
   2026-07-02 フィードバック反映（BugHerd #82 / #83 / #85 / #86 / #90 / #92）
   ※既存ルールは変更せず、末尾overrideで対応
   ============================================================ */

/* ---- #82 MV縦幅を第一弾（EP01）に合わせる（根本対応版 2026-07-02）
        原因：EP02は body{line-height:1.9}、EP01のMVは 1.7 で描画される行間差。
        category＋copy で合計 約8.6px の高さ差になっていた。
        padding で詰める方式は共通CSSが効くステージングで数px残るため、
        MV内の行間を EP01（1.7）に合わせて構造的に一致させる。padding は EP01 と同一。 ---- */
.lp-mv{line-height:1.7;}

/* ---- ヘッダー（.lp-topnav）高さも第一弾に合わせる（MVと同じ line-height:1.9→1.7 差が原因）
        nav-links ボタン高さが EP02 だけ +2.8px（PC）/ +3.1px（SP）大きく、
        ボタンがヘッダー高さを決めるため header 全体が大きく見えていた。
        EP02 header PC 75.6→72.8 / SP 82.8→79.7（EP01と同値） ---- */
.lp-topnav{line-height:1.7;}

/* ---- シリーズナビ（.lp-series_nav）：第一弾と揃える方針を「広い側（02）」に確定（2026-07-02更新）
        クライアント判断：01が詰まって02が広い→02の広い見え方に合わせる。
        よって EP02 は元の広い行間（1.9）＋ sub↔desc 10px を明示維持。EP01 側を02に寄せる。 ---- */
.lp-series_nav{line-height:1.9;}
.lp-series_nav .nav-card .body .desc{margin-top:10px !important;}

/* ---- #83 本文を第一弾（EP01）に完全一致させる（2026-07-02 実測ベース更新）
        EP01本文＝PC16px / SP13px / 行間1.7 / 文字間.04em。
        従来1.85・.03em・SP14pxでEP01より緩め＆狭めだったため、数値をEP01に合わせる。
        対象：本文3ブロック＋インタビュー本文（quote-text）。 ---- */
.lp-section01 .content_box > p,
.lp-section02 .content_box p,
.lp-section03 .split .text-side p,
.interview-scene .quote-text{font-size:16px;line-height:1.7;letter-spacing:.04em;}
@media(max-width:767px){
  .lp-section01 .content_box > p,
  .lp-section02 .content_box p,
  .lp-section03 .split .text-side p,
  .interview-scene .quote-text{font-size:13px !important;line-height:1.7 !important;letter-spacing:.04em !important;}
}

/* ---- #85 / #86 黒地パート内インタビューの役職テキスト視認性UP
        （本文=quote-text の白は維持。role の色のみ明るく） ---- */
.project-sign .sign-interviews .interview-scene .role{color:#d9e3ea !important;}

/* ---- #90 コジェネ全景写真キャプション：SPも中心合わせ ---- */
@media(max-width:767px){
  .sec01-cogen-photo .cogen-photo-cap{text-align:center !important;}
}

/* ---- #92 シリーズナビ Episode ラベル：ヘッダーnavボタンの配色ルールに統一
        現在ページ=ネイビー地/白文字（塗り）、遷移先=白地/ネイビー文字（線） ---- */
.lp-series_nav .nav-card.is-current .thumb .ep-label{background:#225E80 !important;color:#fff !important;border:1px solid #225E80 !important;}
.lp-series_nav .nav-card:not(.is-current) .thumb .ep-label{background:#fff !important;color:#225E80 !important;border:1px solid #225E80 !important;}

/* ---- シリーズナビ見出し「ドキュメンタリーシリーズ」下の余白：PCで36px確保（02の広い側に統一）
        EP01は共通CSS #lp-takingaction p{margin:0} で0に潰れるため !important で強制。SPは18px維持。 ---- */
@media(min-width:768px){
  .lp-series_nav .nav-heading{margin-bottom:36px !important;}
}

/* ---- #93 「味の素®」がSPで途中改行され®が行頭に落ちるのを防ぐ ---- */
.nobr{white-space:nowrap;}

/* ==== #87 SPヘッダー B案（第一希望）=================================
   PC：現状の .lp-topnav を維持。
   SP：MEIDENロゴを独立配置→スクロールで消える／その下の「企画名＋☰」
       バーを最上部に固定。☰でフルスクリーンメニュー。EP01/EP02共通仕様。 */
.lp-spnav,.lp-spbar,.lp-spmenu{display:none;}
@media(max-width:767px){
  .lp-topnav{display:none !important;}
  /* ① ロゴ独立バー（スクロールで消える） */
  .lp-spnav{display:block !important;background:#fff;text-align:center;padding:14px 0 10px;}
  .lp-spnav .sp-logo{display:inline-block;line-height:0;}
  .lp-spnav .sp-logo img{height:26px;width:auto;display:block;margin:0 auto;}
  /* ② 企画名＋☰バー（最上部固定） */
  .lp-spbar{display:flex !important;position:sticky;top:0;z-index:100;align-items:center;justify-content:space-between;gap:10px;padding:9px 14px;background:rgba(255,255,255,.96);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-bottom:1px solid #e0e6ea;}
  .lp-spbar .sp-series{font-size:11px;line-height:1.4;color:#225E80;font-weight:600;letter-spacing:.04em;}
  .lp-spbar .sp-burger{width:34px;height:34px;flex:0 0 auto;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;background:none;border:none;padding:0;cursor:pointer;}
  .lp-spbar .sp-burger span{display:block;width:22px;height:2px;background:#225E80;border-radius:2px;transition:transform .25s,opacity .25s;}
  .lp-spbar .sp-burger[aria-expanded="true"] span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .lp-spbar .sp-burger[aria-expanded="true"] span:nth-child(2){opacity:0;}
  .lp-spbar .sp-burger[aria-expanded="true"] span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
  /* ③ フルスクリーンメニュー */
  .lp-spmenu{display:block !important;position:fixed;inset:0;z-index:200;background:#225E80;padding:60px 28px 40px;opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s;overflow-y:auto;}
  .lp-spmenu.is-open{opacity:1;visibility:visible;}
  .lp-spmenu .sp-menu-close{position:absolute;top:14px;right:14px;width:40px;height:40px;background:none;border:none;cursor:pointer;}
  .lp-spmenu .sp-menu-close::before,.lp-spmenu .sp-menu-close::after{content:"";position:absolute;top:50%;left:8px;width:24px;height:2px;background:#fff;}
  .lp-spmenu .sp-menu-close::before{transform:rotate(45deg);}
  .lp-spmenu .sp-menu-close::after{transform:rotate(-45deg);}
  .lp-spmenu .sp-menu-logo{text-align:center;margin-bottom:10px;}
  .lp-spmenu .sp-menu-logo img{height:32px;width:auto;filter:brightness(0) invert(1);}
  .lp-spmenu .sp-menu-series{text-align:center;color:rgba(255,255,255,.85);font-size:11px;letter-spacing:.06em;margin-bottom:26px;}
  .lp-spmenu .sp-menu-links a{display:block;color:#fff;text-decoration:none;padding:16px 4px;border-bottom:1px solid rgba(255,255,255,.22);font-size:17px;letter-spacing:.04em;}
  .lp-spmenu .sp-menu-links a .ep{display:block;font-size:11px;color:#8fc2dd;letter-spacing:.1em;margin-bottom:4px;}
  .lp-spmenu .sp-menu-links a.is-current{opacity:.55;pointer-events:none;}
}

/* ---- #99/#100/#101 SPインタビュイー名を1行に
        写真列を120→100pxに微縮小して名前エリアを確保。名前は font-size:13px/字間0。
        写真との余白は16px（従来と同値）を維持し、名前・役職の左端を揃える ---- */
@media(max-width:767px){
  .interview-scene{grid-template-columns:85px 1fr !important;}
  .interview-scene .scene-img{width:85px !important;}
  .interview-scene .speaker{font-size:clamp(11px,3vw,13px) !important;letter-spacing:0 !important;white-space:nowrap !important;padding-left:16px !important;padding-right:6px !important;}
  .interview-scene .role{padding-left:16px !important;}
}

/* ---- #97 CHAPTER3 章区切り：背景は1枚画像 ep02_ch03_collage.png（Chapter01/02と同形式・inline background）---- */

/* ---- #88 追補 SP：看板キャプション2行目「MULTI BIOMASS COGENERATION PROJECT」を確実に1行に。
        2行目をnowrapで折り返し禁止し、font-sizeを画面幅連動(clamp)で枠内に収める ---- */
.project-sign .sign-caption .sign-sub{display:inline-block;white-space:nowrap;}
@media(max-width:767px){
  .project-sign .sign-caption{font-size:clamp(11px,3.2vw,13px) !important;letter-spacing:.02em !important;}
}

/* ---- #99-101 追補：SECTION01のインタビューは親.content_boxのpaddingでカードが狭く（310px）、
        最長のPornthewa Wanakhachornkraiが2行になる。SP時にカードを左右へ広げSEC02と同幅にして1行化 ---- */
@media(max-width:767px){
  .content_box .interview-scene{margin-left:-10px !important;margin-right:-10px !important;}
}

/* ---- 07-10②：Chapter02の副題のみ、本文（.overlay-text p）より2px小さく。
        calc(1em - 2px) で全ブレークポイントに自動追従
        （PC 22→20px / SP 15→13・14→12・13→11px）。折り返しは自然のまま。 ---- */
.chapter-text .chapter-sub{
  display:inline; white-space:normal !important;
  font-size:calc(1em - 2px); letter-spacing:inherit; line-height:inherit;
}
