/* ==========================================================
   EV充電特化型ソーラーカーポート LP 追加CSS
   style.css / style2.css の記法・サイズ感を踏襲した差分定義
========================================================== */

/* ページ内アンカー移動時に固定ヘッダー分オフセットする */
:root{
  --lp-header-h:90px;
  --lp-navy:#113C68;
  --lp-blue:#0567AA;
  --lp-cream:#F1EEE8;
  --lp-line:#DBDBDB;
}
@media (max-width:768px){
  :root{ --lp-header-h:67px; }
}
html{ scroll-padding-top: var(--lp-header-h); }

.l-contents{
  padding: 0px;
}
@media print, (min-width: 769px) {
  .l-contents{
    padding: 0px;
  }
}
@media print, (max-width: 769px) {
  .l-contents{
    padding: 0px;
  }
}

/* ---- ラベルタグ・バッジ（Hero） ---- */
.lp-label-tag{
  display:inline-block;
  margin-bottom:20px;
  padding:6px 18px;
  border-radius:2px;
  background:var(--lp-blue);
  color:#fff;
  font-size:1.4rem;
  font-weight:600;
  letter-spacing:0.04em;
}
.lp-badge-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px;}
.lp-badge{
  display:inline-block;
  padding:6px 16px;
  border:1px solid rgba(255,255,255,.6);
  border-radius:50px;
  color:#fff;
  font-size:1.3rem;
  font-weight:600;
}

/* ---- Hero ---- */
.lp-hero{
  position:relative;
  padding:130px 0 90px;
  /* background:#113C68 url(https://solar-carport.jp/wp-content/themes/solar-carport/img/business/about_im01.jpg) 50% 30% no-repeat; */
  background: url(/wp-content/themes/solar-carport/img/evlp/hero_bg01.webp?date=2609) 50% 30% no-repeat;
  background-size:cover;
  color:#fff;
  overflow:hidden;
}
.lp-hero::before{
  content:"";
  position:absolute;
  top:0;left:0;right:0;bottom:0;
  background:linear-gradient(0deg, rgba(17,60,104,.35), rgba(17,60,104,.15));
}
.lp-hero__grid{position:relative;z-index:2;display:flex;align-items:center;gap:50px;}
.lp-hero__text{
  flex:1 1 0;
  min-width:0;
}
.lp-hero__copy{
  max-width:570px;
}
.lp-hero__visual{flex:0 0 36.5%;max-width:36.5%;text-align:center;}
.lp-hero__diagram{width:100%;height:auto;}
/* .lp-hero__diagram text{font-family:"Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HGS明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;} */
@media (max-width:900px){
  .lp-hero__grid{flex-direction:column;}
  .lp-hero__visual{flex:0 0 auto;max-width:none;width:43%;margin:0 auto;}
}
.lp-hero__title{
  color:#fff;
  font-family:"Times New Roman","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HGS明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
  font-size:6.4rem;
  font-weight:600;
  line-height:1.5;
  letter-spacing:0.06em;
  text-shadow:0 2px 8px rgba(0,0,0,.35);
}
.lp-hero__lead{
  margin-top:30px;
  color:#fff;
  font-size:1.5rem;
  line-height:1.9;
  text-shadow:0 1px 6px rgba(0,0,0,.3);
}
.lp-hero .c-buttons{margin-top:40px;}
@media (max-width:768px){
  .lp-hero{padding:80px 0 60px;background-position:70% 30%;}
  .lp-hero__copy{max-width:320px;}
  .lp-hero__title{font-size:3.4rem;letter-spacing:0.03em;}
  .lp-hero__lead{font-size:1.4rem;margin-top:20px;}
}

/* ---- ニュース ---- */
.lp-news{
  padding:40px;
  background-color:var(--lp-cream);
}
.lp-news__logos{
  display:flex;
  gap:20px;
  margin-top:25px;
  flex-wrap:wrap;
  align-items:center;
}
.lp-news__logos img{width:140px;height:auto;}
@media (max-width:768px){
  .lp-news{padding:25px 20px;}
}

/* ---- 課題提起 ---- */
.lp-problem-grid{
  display:flex;
  gap:20px;
  margin-top:50px;
  flex-wrap:wrap;
}
.lp-problem-card{
  flex:1 1 240px;
  padding:30px 25px;
  border:1px solid var(--lp-line);
  background:#fff;
}
.lp-problem-card__title{
  color:var(--lp-blue);
  font-size:1.7rem;
  font-weight:bold;
  line-height:1.5;
  margin-bottom:12px;
}
.lp-problem-card__title .lp-underline{
  border-bottom:3px solid rgba(5,103,170,.35);
}
.lp-arrow-down{
  width:0;height:0;margin:30px auto;
  border-left:16px solid transparent;
  border-right:16px solid transparent;
  border-top:22px solid var(--lp-navy);
}
.lp-problem-conclusion{
  padding:40px;
  background-color:var(--lp-navy);
  color:#fff;
  text-align:center;
}
.lp-problem-conclusion__title{
  font-size:2.2rem;
  font-weight:bold;
  line-height:1.6;
  margin-bottom:15px;
}
@media (max-width:768px){
  .lp-problem-conclusion{padding:25px 20px;}
  .lp-problem-conclusion__title{font-size:1.8rem;}
}
.lp-image-row{display:flex;gap:30px;margin-top:40px;}
.lp-image-row__item{flex:1 1 0;}
.lp-image-row__item img{width:100%;display:block;}
@media (max-width:768px){
  .lp-image-row{flex-direction:column;gap:15px;}
}

/* ---- 3つの構成要素（注釈図） ---- */
.lp-diagram{position:relative;margin-top:40px;}
.lp-diagram img{width:100%;display:block;}
.lp-annotation{
  position:absolute;
  max-width:250px;
  padding:14px 12px;
  background:rgba(255,255,255,.95);
  border-left:4px solid var(--lp-blue);
  box-shadow:0 2px 10px rgba(0,0,0,.15);
  font-size:1.3rem;
  line-height:1.6;
}
.lp-annotation strong{
  display:block;
  margin:0 0 15px;
  color:#0567aa;
  font-size:2rem;
  font-weight:bold;
  letter-spacing:0.08em;
  text-align:center;
}
@media (max-width:768px){
  .lp-annotation{position:static;max-width:none;margin-top:10px;transform: none!important;}
  .lp-annotation strong{margin:0 0 10px;font-size:1.6rem;}
}

/* ---- 平常時／災害時 比較 ---- */
.lp-compare{display:flex;gap:30px;margin-top:40px;flex-wrap:wrap;}
.lp-compare__col{flex:1 1 320px;padding:35px;}
.lp-compare__col--normal{background:#fff;border:1px solid var(--lp-line);}
.lp-compare__col--emergency{background:var(--lp-navy);color:#fff;}
.lp-compare__label{
  position:absolute;
  top:12px;
  left:12px;
  z-index:2;
  display:inline-block;
  padding:6px 20px;
  border-radius:50px;
  background:#fff;
  color:var(--lp-blue);
  font-size:1.3rem;
  font-weight:bold;
  letter-spacing:0.1em;
}
.lp-compare__col--emergency .c-list--u1>li::before{background-color:#fff;}
.lp-compare__col--emergency .c-heading--lv4{border-left-color:#fff;}
.lp-compare__col--emergency .lp-compare__label{background:var(--lp-navy);
  color:#fff;}
.lp-compare__img{position:relative;margin-bottom:20px;}
.lp-compare__img img{width:100%;display:block;}

/* ---- ヒアリング項目 ---- */
.lp-hearing-box{
  max-width:990px;
  margin:0 auto;
  padding:40px 60px;
  background-color:var(--lp-cream);
}
@media (max-width:768px){
  .lp-hearing-box{padding:25px 20px;}
}
.lp-hearing-box .biz-headline-v1__aside{
  margin-top: 0px;
}
/* ---- 想定導入施設 ---- */
.lp-facility-grid{display:flex;flex-wrap:wrap;justify-content:center;gap:20px;margin-top:40px;}
.lp-facility-card{
  flex:0 0 260px;
  width:260px;
  padding:14px 14px;
  border:1px solid var(--lp-line);
  background:var(--lp-cream);
}
.lp-facility-card__title{
  color:var(--lp-blue);
  font-size:2rem;
  font-weight:bold;
  letter-spacing:0.08em;
  margin-bottom:12px;
  text-align:center;
}
@media (max-width:768px){
  .lp-facility-card{flex:1 1 100%;width:100%;}
  .lp-facility-card__title{font-size:1.6rem;}
}

/* ---- 比較表（biz-menu-table を参考にしたデザイン） ---- */
.lp-table-center{max-width:800px;margin-left:auto;margin-right:auto;}
.lp-menu-th--gray{background-color:#9a9a9a !important;}
.lp-menu-th--blue{background-color:#0567AA !important;}
.lp-cell-strong{font-weight:bold;}
.biz-menu-table tbody td:nth-child(2){background-color:#F8FCFF;}
.biz-menu-table tbody td:nth-child(3){background-color:#F0F7FF;}

/* ---- 導入事例（pg-cases__* 補助） ---- */
.pg-cases__box{background-color:#fff;}
.lp-case__media{display:flex;flex-wrap:wrap;gap:15px;}
.lp-case__media img{width:calc(25% - 12px);display:block;}
@media (max-width:768px){
  .lp-case__media img{width:calc(50% - 8px);}
}

/* ---- CV：単一ボタン中央寄せ ---- */
.biz-cvbutton.is-single{justify-content:center;}
.biz-cvbutton.is-single .biz-cvbutton__item{max-width:460px;}

/* ---- 最終CTAの問い合わせ先カード ---- */
.lp-contact-card{
  max-width:480px;
  margin:35px auto 0;
  padding:30px;
  background:rgba(255,255,255,.08);
  border:1px solid rgba(255,255,255,.35);
  color:#fff;
  text-align:center;
  font-size:1.5rem;
  line-height:1.9;
}

/* ---- モバイル追従CTA ---- */
.lp-sticky-cta{display:none;}
@media (max-width:768px){
  .lp-sticky-cta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:10px;
    position:fixed;
    left:0;right:0;bottom:0;
    z-index:9000;
    padding:12px 15px;
    background:var(--lp-navy);
    color:#fff;
    box-shadow:0 -2px 10px rgba(0,0,0,.2);
  }
  .lp-sticky-cta__text{font-size:1.2rem;font-weight:bold;line-height:1.4;}
  .lp-sticky-cta__btn{
    flex-shrink:0;
    padding:12px 20px;
    background:#fff;
    color:var(--lp-navy) !important;
    font-size:1.3rem;
    font-weight:bold;
    text-decoration:none !important;
  }
  body{padding-bottom:64px;}
}
