/* =====================================================================
   TOSHIKI design — site.css(全体のスタイルを1ファイルに統合)
   旧 editorial.css / main.css / conversion.css を統合し、未使用のルールを除いています。
   読み込み順:デザインの土台 → 旧ビジュアル → 問い合わせ導線・事例 → 最後に「統一・追加ブロック」
   ===================================================================== */
/* ===== editorial.css(旧) ===== */
/* ============================================
   Editorial Trust デザインパターン
   TOP(front-page.php)・サービス詳細(single-service.php)・
   ヘッダー・フッターに適用。既存のダークテーマのクラス名と
   衝突しないよう "et-" プレフィックスを使用しています。
   ============================================ */
:root{
  --et-bg:#FBF9F5;
  --et-surface:#FFFFFF;
  --et-panel:#F3F0E9;
  --et-ink:#20242B;
  --et-muted:#6E6A5D;
  --et-faint:#9A927E;
  --et-line:#E7E1D3;
  --et-navy:#1F3A56;
  --et-gold:#C6A15B;

  --et-font-serif:"Fraunces","Shippori Mincho",serif;
  --et-font-sans:"Work Sans","Noto Sans JP",sans-serif;
}
.et-page{background:var(--et-bg);color:var(--et-ink);font-family:var(--et-font-sans);}
.et-page a{color:inherit;text-decoration:none;}
.et-serif{font-family:var(--et-font-serif);}
.et-container{max-width:1440px;margin:0 auto;padding:0 72px;}
@media (max-width:900px){.et-container{padding:0 24px;}}
.et-eyebrow{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--et-navy);font-weight:600;}
.et-eyebrow--gold{color:var(--et-gold);}
.et-page .et-btn-primary{display:inline-flex;align-items:center;gap:10px;padding:16px 32px;background:linear-gradient(135deg,#2C4E70,var(--et-navy));color:#FFFFFF;border-radius:100px;font-size:14px;font-weight:500;border:none;cursor:pointer;box-shadow:0 10px 24px rgba(31,58,86,.28);transition:transform .25s ease,box-shadow .25s ease;}
.et-btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 28px rgba(31,58,86,.34);}
.et-btn-outline{display:inline-flex;align-items:center;gap:10px;padding:15px 30px;background:rgba(255,255,255,.7);color:var(--et-navy);border-radius:100px;font-size:14px;font-weight:500;border:1px solid var(--et-navy);transition:background .25s ease;}
.et-btn-outline:hover{background:#fff;}
.et-imgph{border:1px dashed #D8D2C2;background:var(--et-surface);display:flex;align-items:center;justify-content:center;color:var(--et-faint);font-size:12px;letter-spacing:.04em;text-align:center;padding:12px;}
/* ===== ヘッダー ===== */
.et-header{position:sticky;top:0;z-index:200;background:rgba(251,249,245,.94);backdrop-filter:blur(6px);border-bottom:1px solid var(--et-line);}
.et-header__inner{height:88px;display:flex;align-items:center;justify-content:space-between;}
.et-header__logo{font-family:var(--et-font-serif);font-size:20px;font-weight:600;color:var(--et-ink);}
.et-nav{display:flex;gap:28px;align-items:center;font-size:13px;letter-spacing:.03em;}
.et-nav-toggle{display:none;background:none;border:none;font-size:22px;color:var(--et-ink);cursor:pointer;}
@media (max-width:1000px){.et-nav{display:none;position:fixed;top:88px;left:0;right:0;background:var(--et-bg);flex-direction:column;align-items:flex-start;gap:20px;padding:32px;border-bottom:1px solid var(--et-line);}
.et-nav.is-open{display:flex;}
.et-nav-toggle{display:block;}}
/* ===== フッター ===== */
.et-footer{border-top:1px solid var(--et-line);padding:56px 0 32px;font-size:12px;color:var(--et-muted);}
.et-footer__grid{display:flex;justify-content:space-between;flex-wrap:wrap;gap:24px;align-items:flex-start;}
.et-footer nav{display:grid;gap:8px;}
.et-footer a:hover{color:var(--et-navy);}
.et-footer__legal{margin-top:14px;display:flex;gap:14px;flex-wrap:wrap;}
/* ===== HERO ===== */
.et-hero{position:relative;padding:120px 0 104px;overflow:hidden;}
.et-hero__marquee{position:absolute;top:24px;left:-20px;font-family:var(--et-font-serif);font-size:128px;font-weight:700;color:transparent;-webkit-text-stroke:1px var(--et-line);white-space:nowrap;letter-spacing:.01em;pointer-events:none;}
.et-hero__row{position:relative;display:flex;gap:56px;align-items:center;}
.et-hero__col{flex:1.15;display:flex;flex-direction:column;gap:24px;}
.et-hero h1{margin:0;font-size:clamp(36px,4.6vw,56px);line-height:1.32;font-weight:600;color:var(--et-ink);}
.et-hero p{margin:0;font-size:16px;line-height:1.9;color:var(--et-muted);max-width:560px;}
.et-hero__slide{width:100%;height:460px;border-radius:2px;border:1px solid var(--et-navy);background:var(--et-surface);position:relative;display:flex;align-items:flex-end;padding:28px;}
.et-hero__slide-cap{position:relative;z-index:1;background:var(--et-bg);padding:14px 20px;border:1px solid var(--et-line);}
@media (max-width:960px){.et-hero__row{flex-direction:column;}
.et-hero__marquee{font-size:72px;}}
/* ===== News(上部・テキスト一覧) ===== */
/* ===== サービス(番号付きリスト) ===== */
/* ===== 統計 ===== */
/* ===== 事例(テキスト先行) ===== */
.et-case-grid{display:flex;gap:40px;}
.et-case{flex:1;display:flex;flex-direction:column;gap:20px;}
.et-case img{transition:transform .5s ease;}
.et-case:hover img{transform:scale(1.03);}
.et-case h3{font-family:var(--et-font-serif);font-size:19px;line-height:1.5;margin:0;}
@media (max-width:900px){.et-case-grid{flex-direction:column;}}
/* ===== News(下部・画像付き)+資料ダウンロード ===== */
/* ===== CTA ===== */
.et-cta-wrap{padding:88px 0;display:flex;justify-content:center;}
.et-cta-box{border:1px solid var(--et-gold);padding:56px 64px;display:flex;flex-direction:column;align-items:center;gap:20px;text-align:center;max-width:720px;}
.et-cta-box h2{margin:0;font-family:var(--et-font-serif);font-size:30px;font-weight:600;}
.et-cta-box p{margin:0;font-size:14px;color:var(--et-muted);}
/* ===== サービス詳細ページ:実績スライド ===== */
.et-achv-slide-wrap{display:flex;flex-direction:column;gap:14px;}
.et-achv-slide-row{display:flex;gap:20px;overflow:hidden;}
.et-achv-slide-main{flex:none;width:min(1040px,100%);height:460px;border-radius:2px;border:1px solid var(--et-navy);background:var(--et-surface);position:relative;display:flex;align-items:flex-end;padding:28px;}
.et-achv-slide-peek{flex:none;width:220px;height:460px;border-radius:2px;opacity:.5;}
/* ===== 汎用の罫線リスト(できること/対応の流れ) ===== */
.et-plain-row{display:flex;align-items:baseline;gap:32px;padding:24px 0;border-bottom:1px solid var(--et-line);}
.et-plain-row__num{font-family:var(--et-font-serif);font-size:14px;color:var(--et-gold);width:32px;flex:none;}
.et-flow{display:flex;}
.et-flow__step{flex:1;padding:0 24px;}
.et-flow__step:first-child{padding-left:0;}
.et-flow__step + .et-flow__step{border-left:1px solid var(--et-line);}
.et-flow__step b{display:block;font-family:var(--et-font-serif);font-size:13px;color:var(--et-gold);font-weight:400;}
.et-flow__step h4{font-family:var(--et-font-serif);font-size:17px;margin:10px 0 0;font-weight:600;}
.et-flow__step p{font-size:13px;color:var(--et-muted);margin:8px 0 0;}
/* ===== 課題提起カード(はこ社参考) ===== */
/* ===== About / 強み(デジタルグリッド参考:番号+アイコン) ===== */
/* ===== ヒーロー:スクロール指示(VESSEL参考) ===== */
.et-hero__scroll{position:absolute;right:72px;bottom:32px;z-index:1;font-size:12px;letter-spacing:.15em;color:var(--et-faint);display:flex;align-items:center;gap:10px;}
.et-hero__scroll::after{content:"";display:block;width:1px;height:28px;background:var(--et-line);animation:et-scroll-drop 2s ease infinite;}
@keyframes et-scroll-drop{0%{transform:scaleY(0);transform-origin:top;}50%{transform:scaleY(1);transform-origin:top;}51%{transform-origin:bottom;}100%{transform:scaleY(0);transform-origin:bottom;}}
@media (max-width:900px){.et-hero__scroll{display:none;}}
/* ===== ぼかしの光球(KAGAMI参考:奥行きを出す背景装飾。低コントラストで控えめに) ===== */
.et-orb{position:absolute;border-radius:50%;filter:blur(64px);pointer-events:none;z-index:0;animation:et-float 16s ease-in-out infinite;}
.et-orb--navy{background:radial-gradient(circle,rgba(31,58,86,.20),transparent 70%);}
.et-orb--gold{background:radial-gradient(circle,rgba(217,203,168,.60),transparent 70%);}
@keyframes et-float{0%,100%{transform:translate(0,0);}50%{transform:translate(24px,-28px);}}
/* ===== About:イソメトリックタイル(KAGAMIのタイル構成を参考) ===== */
@keyframes et-tile{0%,100%{transform:translateY(0);}50%{transform:translateY(-6px);}}
/* ===== 資料ダウンロード:ガラス調の資料モックアップ ===== */
@keyframes et-float-rot{0%,100%{transform:rotate(-5deg) translateY(0);}50%{transform:rotate(-5deg) translateY(-12px);}}
/* ===== 数字で見る(はこ参考:イラスト+数値。客観的に確認できる事実のみ) ===== */
.et-fact{flex:1;background:var(--et-surface);border:1px solid var(--et-line);border-radius:6px;padding:36px 24px 30px;text-align:center;transition:transform .3s ease,border-color .3s ease;}
.et-fact:hover{transform:translateY(-4px);border-color:var(--et-gold-ink);}
@media (max-width:900px){.et-fact{flex:1 1 calc(50% - 12px);min-width:150px;}}
@media (prefers-reduced-motion: reduce){.et-orb{animation:none;}}
/* ===== パンくず ===== */
.et-breadcrumb{font-size:12px;color:var(--et-faint);margin-bottom:20px;}
.et-breadcrumb a{color:var(--et-faint);}
/* ===== FAQアコーディオン(ライト版) ===== */
.et-faq-item{border-bottom:1px solid var(--et-line);}
.et-faq-item__q{width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:20px 0;font-size:15px;color:var(--et-ink);font-family:var(--et-font-serif);display:flex;justify-content:space-between;align-items:center;gap:16px;}
.et-faq-item__a{display:none;padding:0 0 20px;color:var(--et-muted);font-size:14px;max-width:680px;}
.et-faq-item.is-open .et-faq-item__a{display:block;}
.et-faq-item__icon{color:var(--et-gold);transition:transform .2s ease;}
.et-faq-item.is-open .et-faq-item__icon{transform:rotate(45deg);}
/* =====================================================================
   KAGAMI参考のブラッシュアップ(ガラスタイル・ピルボタン・マーキー)
   ===================================================================== */
.et-nav__buttons{display:flex;gap:10px;align-items:center;margin-left:8px;}
.et-page .et-nav__contact{padding:11px 22px;background:linear-gradient(135deg,#2C4E70,var(--et-navy));color:#FFFFFF;border-radius:100px;box-shadow:0 8px 18px rgba(31,58,86,.25);}
@media (max-width:1000px){.et-nav__buttons{flex-direction:column;align-items:stretch;margin:8px 0 0;width:100%;}
.et-nav__buttons a{text-align:center;}}
/* ヒーロー(タイルのイラスト) */
.et-hero--tiles{padding:96px 0 72px;}
.et-hero--tiles .et-hero__row{align-items:center;gap:32px;}
.et-hero--tiles .et-hero__col{flex:1;}
.et-hero__art{flex:1.12;min-width:0;}
.et-hero__art svg{display:block;width:100%;height:auto;overflow:visible;}
.et-grad{font-style:normal;background:linear-gradient(100deg,var(--et-navy) 10%,#3A6690 55%,var(--et-gold-deep) 100%);-webkit-background-clip:text;background-clip:text;color:transparent;}
.et-hero__cta{display:flex;gap:14px;flex-wrap:wrap;margin-top:6px;}
.et-hero__points{display:flex;gap:10px 22px;flex-wrap:wrap;list-style:none;margin:6px 0 0;padding:0;}
.et-hero__points li{font-size:12.5px;color:var(--et-muted);padding-left:18px;position:relative;}
.et-hero__points li::before{content:"";position:absolute;left:0;top:.45em;width:9px;height:5px;border-left:1.6px solid var(--et-gold-deep);border-bottom:1.6px solid var(--et-gold-deep);transform:rotate(-45deg);}
@keyframes et-tile-in{from{opacity:0;transform:translateY(-34px);}to{opacity:1;transform:translateY(0);}}
@media (max-width:960px){.et-hero--tiles{padding:56px 0 48px;}
.et-hero__art{max-width:520px;margin:0 auto;width:100%;}}
/* 制作実績・ロゴのマーキー帯(2段が逆向きに流れる) */
.et-band{padding:24px 0 72px;overflow:hidden;}
.et-band__head{margin-bottom:20px;}
.et-band__row{overflow:hidden;margin-bottom:14px;}
.et-band__track{display:flex;gap:14px;width:max-content;animation:et-band-scroll 60s linear infinite;}
.et-band__row--rev .et-band__track{animation-direction:reverse;animation-duration:72s;}
.et-band__track img{height:150px;width:240px;object-fit:cover;border-radius:12px;flex:none;box-shadow:0 6px 18px rgba(31,58,86,.10);}
.et-band__row--logos .et-band__track{gap:0;animation-duration:50s;}
.et-band__row--logos img{height:56px;width:auto;max-width:180px;object-fit:contain;border-radius:0;box-shadow:none;padding:0 32px;border-right:1px solid var(--et-line);filter:grayscale(1);opacity:.75;}
@keyframes et-band-scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media (prefers-reduced-motion: reduce){.et-band__track{animation:none;}}
@media (max-width:700px){.et-band__track img{height:110px;width:170px;}}
/* サービスのガラスタイルカード */
.et-link-arrow{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--et-navy);border-bottom:1px solid var(--et-navy);padding-bottom:2px;}
.et-svc-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:20px;}
.et-svc-card{grid-column:span 2;position:relative;background:var(--et-surface);border:1px solid var(--et-line);border-radius:18px;padding:32px 28px 26px;display:flex;flex-direction:column;gap:12px;overflow:hidden;transition:transform .35s ease,box-shadow .35s ease,border-color .35s ease;}
.et-svc-card:nth-child(n+4){grid-column:span 3;}
.et-svc-card::after{content:"";position:absolute;right:-60px;top:-60px;width:180px;height:180px;border-radius:50%;background:radial-gradient(circle,rgba(217,203,168,.35),transparent 70%);transition:transform .5s ease;}
.et-svc-card:hover{transform:translateY(-6px);box-shadow:0 22px 44px rgba(31,58,86,.14);border-color:var(--et-gold);}
.et-svc-card:hover::after{transform:scale(1.4);}
.et-svc-card:hover .et-svc-card__tile{transform:translateY(-4px) rotate(-3deg);}
.et-svc-card:hover svg path, .et-svc-card:hover svg circle, .et-svc-card:hover svg rect{stroke-dasharray:80;animation:et-draw 1.1s ease forwards;}
@keyframes et-draw{from{stroke-dashoffset:80;}to{stroke-dashoffset:0;}}
.et-svc-card__tile{width:62px;height:62px;border-radius:16px;background:linear-gradient(145deg,#5A86B3,var(--et-navy));color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 10px 20px rgba(31,58,86,.25),inset 0 1px 0 rgba(255,255,255,.4);transition:transform .35s ease;position:relative;z-index:1;}
.et-svc-card__tile--gold{background:linear-gradient(145deg,#F3EAD3,#C9B88C);color:var(--et-navy);box-shadow:0 10px 20px rgba(154,123,79,.25),inset 0 1px 0 rgba(255,255,255,.6);}
.et-svc-card__num{position:absolute;right:24px;top:22px;font-family:var(--et-font-serif);font-size:13px;color:var(--et-gold-ink);z-index:1;}
.et-svc-card h3{margin:10px 0 0;font-size:20px;color:var(--et-ink);position:relative;z-index:1;}
.et-svc-card p{margin:0;font-size:13.5px;line-height:1.85;color:var(--et-muted);position:relative;z-index:1;}
.et-svc-card__more{margin-top:auto;padding-top:10px;font-size:12.5px;color:var(--et-navy);display:inline-flex;align-items:center;gap:6px;position:relative;z-index:1;}
@media (max-width:960px){.et-svc-grid{grid-template-columns:1fr 1fr;}
.et-svc-card, .et-svc-card:nth-child(n+4){grid-column:span 1;}}
@media (max-width:600px){.et-svc-grid{grid-template-columns:1fr;}}
/* 全体を少し丸く・やわらかく(KAGAMIの角丸の印象に合わせる) */
.et-case img{border-radius:14px;}
.et-fact{border-radius:16px;}
/* =====================================================================
   KAGAMI再現+オリジナル化:ガラスの重なり・特長ブロック・自己アニメーションアイコン
   ※ すべてのアニメーションは、マウスを乗せても止まりません
   ===================================================================== */
/* 特長ブロック(左右交互・画像はガラスの重なりの上に) */
/* ガラスが重なった画像フレーム(KAGAMIの重なる板の構成を、当社の配色で) */
.et-glass{flex:1.05;min-width:0;position:relative;padding:0 0 28px 28px;}
.et-glass::before, .et-glass::after{content:"";position:absolute;border-radius:26px;}
.et-glass::before{left:0;top:26px;right:34px;bottom:0;background:linear-gradient(135deg,rgba(90,134,179,.55),rgba(31,58,86,.55));animation:et-glass-a 9s ease-in-out infinite;}
.et-glass::after{left:14px;top:12px;right:20px;bottom:14px;background:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.9);backdrop-filter:blur(6px);animation:et-glass-b 9s ease-in-out infinite;}
.et-glass--gold::before{background:linear-gradient(135deg,#F3EAD3,#C9B88C);}
.et-glass img{position:relative;z-index:2;display:block;width:100%;height:auto;border-radius:22px;box-shadow:0 26px 54px rgba(31,58,86,.22);}
@keyframes et-glass-a{0%,100%{transform:translate(0,0);}50%{transform:translate(-8px,10px);}}
@keyframes et-glass-b{0%,100%{transform:translate(0,0);}50%{transform:translate(6px,-6px);}}
@media (prefers-reduced-motion: reduce){.et-glass::before, .et-glass::after{animation:none;}}
/* 自己アニメーションするアイコン(Lottie風。常に動き、ホバーで止まらない) */
@keyframes ai-pulse{0%,100%{transform:scale(1);}50%{transform:scale(1.08);}}
@keyframes ai-draw{0%{stroke-dashoffset:14;}40%,100%{stroke-dashoffset:0;}}
@keyframes ai-spin{to{transform:rotate(360deg);}}
@keyframes ai-swing{0%,100%{transform:rotate(-24deg);}50%{transform:rotate(30deg);}}
/* トップ用FAQ */
.et-faq-top{padding:104px 0;background:linear-gradient(180deg,var(--et-bg),var(--et-panel));border-top:1px solid var(--et-line);}
.et-faq-top__inner{display:flex;gap:72px;align-items:flex-start;}
.et-faq-top__lead{flex:none;width:300px;}
.et-faq-top__lead p{font-size:13.5px;line-height:1.9;color:var(--et-muted);margin:16px 0 22px;}
.et-faq-top__list{flex:1;min-width:0;}
.et-faq-top .et-faq-item{background:var(--et-surface);border:1px solid var(--et-line);border-radius:14px;padding:0 24px;margin-bottom:12px;}
@media (max-width:900px){.et-faq-top__inner{flex-direction:column;gap:32px;}
.et-faq-top__lead{width:auto;}}
/* =====================================================================
   サービス個別ページ(service-detail.php)
   ===================================================================== */
.et-sd-hero{position:relative;padding:48px 0 88px;overflow:hidden;}
.et-sd-hero .et-breadcrumb{position:relative;z-index:1;}
.et-sd-hero__row{position:relative;z-index:1;display:flex;gap:64px;align-items:center;margin-top:28px;}
.et-sd-hero__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:22px;}
.et-sd-hero__text h1{margin:0;font-size:clamp(32px,4.4vw,52px);line-height:1.3;font-weight:600;color:var(--et-ink);}
.et-sd-hero__text p{margin:0;font-size:15.5px;line-height:1.95;color:var(--et-muted);max-width:560px;}
.et-sd-sec{padding-top:96px;padding-bottom:0;}
.et-sd-h2{margin:12px 0 40px;font-size:clamp(26px,3vw,34px);font-weight:600;}
.et-sd-overview{display:flex;gap:64px;align-items:center;}
.et-sd-overview__text{flex:1.1;min-width:0;}
.et-sd-overview__text h2{margin:12px 0 22px;font-size:clamp(24px,2.8vw,32px);line-height:1.6;font-weight:600;color:var(--et-ink);}
.et-sd-overview__text p{font-size:15px;line-height:2;color:var(--et-muted);margin:0 0 16px;}
.et-sd-sub{flex:1;margin:0;}
.et-sd-sub img{display:block;width:100%;object-fit:cover;border-radius:20px;box-shadow:0 22px 48px rgba(31,58,86,.18);}
.et-sd-scope{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.et-sd-scope__card{position:relative;background:var(--et-surface);border:1px solid var(--et-line);border-radius:18px;padding:30px 24px 26px;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;}
.et-sd-scope__card:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(31,58,86,.12);border-color:var(--et-gold);}
.et-sd-scope__num{font-family:var(--et-font-serif);font-size:13px;color:var(--et-gold-ink);}
.et-sd-scope__card h3{margin:12px 0 0;font-size:17px;line-height:1.6;color:var(--et-ink);}
.et-sd-scope__card p{margin:12px 0 0;font-size:13px;line-height:1.9;color:var(--et-muted);}
.et-sd-band{margin-top:96px;padding:88px 0;background:linear-gradient(180deg,var(--et-panel),var(--et-bg));border-top:1px solid var(--et-line);border-bottom:1px solid var(--et-line);}
.et-sd-note{font-size:12px;line-height:1.8;color:var(--et-faint);margin:16px 0 0;}
.et-sd-note a{text-decoration:underline;color:var(--et-navy);}
.et-sd-others{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
.et-sd-other{display:flex;flex-direction:column;gap:14px;background:var(--et-surface);border:1px solid var(--et-line);border-radius:18px;padding:26px 24px;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;}
.et-sd-other:hover{transform:translateY(-5px);box-shadow:0 18px 38px rgba(31,58,86,.12);border-color:var(--et-gold);}
.et-sd-other h3{margin:0;font-size:17px;color:var(--et-ink);}
@media (max-width:1000px){.et-sd-scope, .et-sd-others{grid-template-columns:1fr 1fr;}}
@media (max-width:900px){.et-sd-hero__row, .et-sd-overview{flex-direction:column;gap:36px;align-items:stretch;}
.et-flow{flex-direction:column;gap:20px;}
.et-flow .et-flow__step,.et-flow .et-flow__step:first-child,.et-flow .et-flow__step + .et-flow__step{padding:0 0 0 18px;border-left:2px solid var(--et-gold);}}
@media (max-width:600px){.et-sd-scope, .et-sd-others{grid-template-columns:1fr;}}
/* =====================================================================
   サービス一覧(service-index.php):固定ページとして「魅せる」構成
   ===================================================================== */
.et-si-hero{position:relative;padding:48px 0 56px;overflow:hidden;}
.et-si-hero .et-container{position:relative;z-index:1;}
.et-si-hero h1{margin:16px 0 0;font-size:clamp(30px,4.2vw,50px);line-height:1.4;font-weight:600;color:var(--et-ink);}
.et-si-hero p{margin:22px 0 0;font-size:15.5px;line-height:1.95;color:var(--et-muted);max-width:640px;}
.et-si-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:34px;}
.et-si-chip{display:inline-flex;align-items:center;gap:10px;padding:8px 18px 8px 8px;background:rgba(255,255,255,.85);border:1px solid var(--et-line);border-radius:100px;font-size:13px;color:var(--et-ink);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;}
.et-si-chip:hover{transform:translateY(-2px);border-color:var(--et-gold-ink);box-shadow:0 10px 22px rgba(31,58,86,.12);}
.et-si-chip__tile{width:30px;height:30px;border-radius:50%;background:linear-gradient(145deg,#5A86B3,var(--et-navy));color:#fff;display:flex;align-items:center;justify-content:center;}
.et-si-list{display:flex;flex-direction:column;gap:112px;padding-top:56px;padding-bottom:0;}
.et-si-block{display:flex;align-items:center;gap:72px;scroll-margin-top:120px;}
.et-si-block--rev{flex-direction:row-reverse;}
.et-si-block__text{flex:1;min-width:0;}
.et-si-block__head{display:flex;align-items:center;gap:18px;}
.et-si-block__num{font-family:var(--et-font-serif);font-size:44px;line-height:1;color:transparent;-webkit-text-stroke:1px var(--et-gold-deep);}
.et-si-block__text h2{margin:22px 0 0;font-size:clamp(26px,3vw,34px);line-height:1.4;font-weight:600;color:var(--et-ink);}
.et-si-block__lead{margin:14px 0 0;font-size:15px;line-height:2;color:var(--et-muted);}
.et-si-block__points{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:10px;}
.et-si-block__points li{font-size:13.5px;color:var(--et-ink);padding-left:22px;position:relative;}
.et-si-block__points li::before{content:"";position:absolute;left:0;top:.55em;width:10px;height:6px;border-left:1.8px solid var(--et-gold-deep);border-bottom:1.8px solid var(--et-gold-deep);transform:rotate(-45deg);}
.et-si-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px;}
.et-si-pill{font-size:12px;padding:6px 14px;border-radius:100px;background:var(--et-panel);color:var(--et-navy);border:1px solid var(--et-line);}
@media (max-width:900px){.et-si-block, .et-si-block--rev{flex-direction:column;gap:36px;align-items:stretch;}
.et-si-list{gap:80px;}}
/* =====================================================================
   スマホ:ヒーローのイラストを見出しの背景(右寄り)に配置し、ボタンを中央揃えにする
   ※ PC表示(961px以上)は変更しません
   ===================================================================== */
@media (max-width:960px){/* イラスト:文章の下ではなく、見出しの背景の右寄りに重ねる(装飾なので文字より奥) */
.et-hero__art{
    position:absolute;top:-4px;right:-16%;z-index:0;
    width:78%;max-width:440px;margin:0;opacity:.42;pointer-events:none;
    -webkit-mask-image:linear-gradient(to right,transparent 0%,#000 38%);
            mask-image:linear-gradient(to right,transparent 0%,#000 38%);
  }
.et-hero--tiles .et-hero__col{position:relative;z-index:1;}
/* ボタン:中央に配置し、2つの幅をそろえる */
.et-hero__cta{flex-direction:column;align-items:center;}
.et-hero__cta a{width:min(100%,280px);justify-content:center;box-sizing:border-box;}}
/* =====================================================================
   今回の調整(FVの左右のイラスト/サービス5つのコントラスト/文字の拡大/追従する資料ダウンロード/お知らせ一覧)
   ===================================================================== */
/* ---- トップ:FVの左右のイラスト(左下=SNS・動画・MEO、右上=WEB・広告・分析) ---- */
/* ---- サービス5つ:すべてネイビーのカード(白い文字とゴールドのアクセントで、はっきり見せる) ---- */
.et-svc-card{border:2px solid var(--et-navy);border-radius:20px;padding:36px 30px 30px;gap:14px;background:linear-gradient(150deg,#2C4E70 0%,var(--et-navy) 55%,#14283C 100%);}
.et-svc-card h3{font-size:22px;color:#fff;}
.et-svc-card p{font-size:14px;color:rgba(255,255,255,.88);}
.et-svc-card .et-svc-card__num{color:var(--et-gold);font-size:15px;font-weight:600;}
.et-svc-card .et-svc-card__tile, .et-svc-card .et-svc-card__tile--gold{background:linear-gradient(145deg,#F3EAD3,#C9B88C);color:var(--et-navy);box-shadow:0 10px 20px rgba(0,0,0,.28),inset 0 1px 0 rgba(255,255,255,.6);}
.et-svc-card .et-svc-card__more{align-self:flex-start;margin-top:auto;padding:10px 20px;border:1.5px solid var(--et-gold);border-radius:100px;font-size:13px;font-weight:500;color:var(--et-gold);transition:background .25s ease,color .25s ease;}
.et-svc-card:hover .et-svc-card__more{background:var(--et-gold);color:var(--et-navy);}
.et-svc-card::after{background:radial-gradient(circle,rgba(217,203,168,.22),transparent 70%);}@media (max-width:700px){}
@media (prefers-reduced-motion: reduce){}
/* ---- お知らせ一覧のページ送り ---- */
.et-pagination ul{display:flex;gap:8px;flex-wrap:wrap;list-style:none;margin:40px 0 0;padding:0;justify-content:center;}
.et-pagination a, .et-pagination span{display:inline-block;padding:8px 16px;border:1px solid var(--et-line);border-radius:100px;font-size:13px;color:var(--et-ink);}
.et-pagination .current{background:var(--et-navy);color:#fff;border-color:var(--et-navy);}
/* ---- FVの左右のイラスト:位置とサイズの調整(文字・ボタン・SCROLLの表示に重ならないようにする) ---- */
/* ---- サービスページ:対応できる項目(料金表の代わり) ---- */
.et-sd-menu{display:grid;grid-template-columns:repeat(2,1fr);gap:0 56px;}
.et-sd-menu__item{padding:22px 0 22px 22px;border-bottom:1px solid var(--et-line);position:relative;}
.et-sd-menu__item::before{content:"";position:absolute;left:0;top:30px;width:8px;height:8px;border-radius:2px;background:var(--et-gold-deep);}
.et-sd-menu__item h3{margin:0;font-size:17px;line-height:1.6;color:var(--et-navy);}
.et-sd-menu__item p{margin:8px 0 0;font-size:13.5px;line-height:1.9;color:var(--et-muted);}
@media (max-width:900px){.et-sd-menu{grid-template-columns:1fr;}}
/* =====================================================================
   今回の調整:お問い合わせ(幅感)/サービスページ(進め方・できること・対応項目)/サービス一覧(ボタンの位置・できること)
   ===================================================================== */
/* ---- お問い合わせ:幅を使い切る2カラム(左=説明、右=2列のフォーム) ---- */
.et-contact{display:grid;grid-template-columns:minmax(240px,320px) minmax(0,1fr);gap:72px;padding:0 72px 96px;align-items:start;}
.et-contact__label{font-size:12px;letter-spacing:.06em;color:var(--et-gold-ink);margin:0;font-weight:600;}
.et-contact__text{font-size:13.5px;line-height:1.9;color:var(--et-muted);margin:12px 0 0;}
.et-contact__text a{color:var(--et-navy);text-decoration:underline;}
.et-contact__msg{margin:28px 0 0;font-size:14px;color:var(--et-navy);}
.et-contact__msg--error{color:#B3452F;}
.et-contact-form--wide{max-width:none;grid-template-columns:1fr 1fr;gap:24px 28px;background:var(--et-surface);border:1px solid var(--et-line);border-radius:20px;padding:40px;}
.et-contact-form--wide .is-full{grid-column:1 / -1;}
.et-contact-form--wide label{font-size:13px;color:var(--et-ink);font-weight:500;}
.et-page .et-contact-form--wide button{width:100%;justify-self:stretch;padding:18px;border-radius:100px;font-size:15px;background:linear-gradient(135deg,#2C4E70,var(--et-navy));color:#fff;box-shadow:0 10px 24px rgba(31,58,86,.28);}
@media (max-width:900px){.et-contact{grid-template-columns:1fr;gap:36px;padding:0 24px 72px;}
.et-contact-form--wide{grid-template-columns:1fr;padding:26px 20px;}}
/* ---- サービスページ:進め方(漢数字なし・番号を大きく) ---- */
.et-sd-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:0 32px;}
.et-sd-flow__step{position:relative;padding-top:26px;border-top:2px solid var(--et-line);}
.et-sd-flow__step::before{content:"";position:absolute;left:0;top:-2px;width:56px;height:2px;background:var(--et-navy);}
.et-sd-flow__num{display:block;font-family:var(--et-font-serif);font-size:44px;line-height:1;color:transparent;-webkit-text-stroke:1px var(--et-gold-deep);}
.et-sd-flow__step h3{margin:16px 0 0;font-size:19px;color:var(--et-ink);}
.et-sd-flow__step p{margin:10px 0 0;font-size:13.5px;line-height:1.9;color:var(--et-muted);}
@media (max-width:900px){.et-sd-flow{grid-template-columns:1fr;gap:28px;}
.et-sd-flow__step{padding:0 0 0 20px;border-top:none;border-left:2px solid var(--et-line);}
.et-sd-flow__step::before{top:0;width:2px;height:44px;}}
/* ---- サービスページ:できること(2×2の大きなカード。番号を丸で、文字を大きく) ---- */
.et-sd-scope{grid-template-columns:repeat(2,1fr);gap:20px;}
.et-sd-scope__card{display:grid;grid-template-columns:auto 1fr;gap:6px 22px;align-items:start;padding:32px 34px;border:1px solid var(--et-line);border-top:4px solid var(--et-navy);border-radius:16px;background:var(--et-surface);}
.et-sd-scope__num{grid-row:1 / span 2;width:46px;height:46px;border-radius:50%;background:var(--et-navy);color:#fff;font-size:15px;display:flex;align-items:center;justify-content:center;}
.et-sd-scope__card h3{margin:4px 0 0;font-size:19px;line-height:1.5;color:var(--et-navy);}
.et-sd-scope__card p{margin:0;font-size:14px;line-height:1.95;color:#3F4650;}
@media (max-width:700px){.et-sd-scope{grid-template-columns:1fr;}
.et-sd-scope__card{padding:26px 22px;}}
/* ---- サービスページ:対応できる項目(分析のタグ) ---- */
.et-sd-menu__tag{display:inline-block;margin-left:10px;padding:2px 10px;border-radius:100px;background:var(--et-navy);color:#fff;font-size:12px;font-family:var(--et-font-sans);font-weight:500;vertical-align:2px;}
/* ---- サービス一覧:できること(ラベルとピルを見やすく)・詳細ボタンの位置 ---- */
.et-si-pills__label{margin:22px 0 0;font-size:12px;letter-spacing:.06em;color:var(--et-gold-ink);font-weight:600;}
.et-si-pills{margin-top:10px;}
.et-si-pill{font-size:13px;padding:8px 16px;background:var(--et-surface);color:var(--et-navy);border:1px solid var(--et-navy);font-weight:500;}
.et-si-block__text .et-btn-primary{margin-top:34px;}
/* =====================================================================
   サービスページ:できること=ボックス型(PC 4列 / スマホ 2列)、進め方=番号とテキストを横並び
   ===================================================================== */
.et-sd-sec .et-sd-scope{grid-template-columns:repeat(4,1fr);gap:18px;}
.et-sd-sec .et-sd-scope__card{display:flex;flex-direction:column;gap:0;padding:28px 24px 26px;border:1px solid var(--et-line);border-top:4px solid var(--et-navy);border-radius:16px;background:var(--et-surface);}
.et-sd-sec .et-sd-scope__num{width:42px;height:42px;margin:0 0 18px;border-radius:50%;background:var(--et-navy);color:#fff;font-size:14px;display:flex;align-items:center;justify-content:center;grid-row:auto;}
.et-sd-sec .et-sd-scope__card h3{margin:0;font-size:18px;line-height:1.5;color:var(--et-navy);}
.et-sd-sec .et-sd-scope__card p{margin:10px 0 0;font-size:13.5px;line-height:1.9;color:#3F4650;}
@media (max-width:1000px) and (min-width:701px){.et-sd-sec .et-sd-scope{grid-template-columns:repeat(2,1fr);}}
@media (max-width:700px){.et-sd-sec .et-sd-scope{grid-template-columns:repeat(2,1fr);gap:12px;}
.et-sd-sec .et-sd-scope__card{padding:20px 16px 18px;border-radius:14px;}
.et-sd-sec .et-sd-scope__num{width:36px;height:36px;margin-bottom:14px;font-size:13px;}
.et-sd-sec .et-sd-scope__card h3{font-size:15px;}
.et-sd-sec .et-sd-scope__card p{font-size:12.5px;line-height:1.8;}}
.et-sd-flow__step{display:flex;align-items:flex-start;gap:16px;}
.et-sd-flow__num{flex:none;font-size:38px;line-height:1.05;}
.et-sd-flow__body{min-width:0;}
.et-sd-flow__step h3{margin:2px 0 0;font-size:18px;line-height:1.5;}
.et-sd-flow__step p{margin:8px 0 0;}
@media (max-width:900px){.et-sd-flow__num{font-size:34px;}}
/* ===== main.css(旧) ===== */
/* ============================================
   TOSHIKI design Visual Edition — Design Tokens
   AXIS/Yaaha参考:フルスクリーン・大胆な余白・スクロール連動アニメーション
   ============================================ */
:root{
  --c-navy:#2C4E70;
  --c-navy-deep:#1F3A56;
  --c-gold:#D9CBA8; /* ホワイトゴールド調に統一(Editorial Trustパターンと同じ色) */
  --c-gold-deep:#B8A374; /* section--light(生成り背景)上の文字色用。薄いゴールドは視認性が落ちるため */
  --c-cream:#F5F3EE;
  --c-white:#FFFFFF;
  --c-ink:#14181C;
  --c-line:rgba(255,255,255,.14);

  --font-display:"Shippori Mincho","Hiragino Mincho ProN",serif;
  --font-sans:"Noto Sans JP","Hiragino Sans",sans-serif;

  --vh:100vh;
}
*, *::before, *::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;background:var(--c-navy-deep);color:var(--c-cream);
  font-family:var(--font-sans);line-height:1.8;overflow-x:hidden;
}
img, video{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
::selection{background:var(--c-gold);color:var(--c-navy-deep);}
.container{max-width:1280px;margin:0 auto;padding:0 32px;}
@media (max-width:700px){.container{padding:0 20px;}}
.reveal{opacity:0;transform:translateY(40px);}
.reveal.is-in{opacity:1;transform:translateY(0);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1);}
/* ===== ヘッダー(ナンバリングナビ / AXIS参考) ===== */
.nav-toggle{display:none;}
@media (max-width:1200px){.nav-toggle{display:block;background:none;border:none;color:#fff;font-size:22px;cursor:pointer;position:relative;z-index:600;}}
/* ===== フルスクリーンHero ===== */
.hero-full{
  position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:flex-end;
  overflow:hidden;
}
/* ヒーロー背景の動画ウォール(縦型カードが左右に流れる、Yaaha型の「見せる」背景演出) */
@keyframes reelwall-scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
/* キネティックタイポグラフィ見出し(語ごとにフェード+せり上がりで表示) */
.js-kinetic{font-family:var(--font-display);font-weight:600;color:#fff;font-size:clamp(34px,6.4vw,88px);line-height:1.25;max-width:900px;}
.js-kinetic .word{display:inline-block;overflow:hidden;vertical-align:top;}
.js-kinetic .word span{display:inline-block;transform:translateY(110%);}
/* カスタムカーソル(タッチ端末では非表示) */
.tsd-cursor{position:fixed;top:0;left:0;width:10px;height:10px;border-radius:50%;background:var(--c-gold);pointer-events:none;z-index:9998;transform:translate(-50%,-50%);transition:width .25s ease,height .25s ease,opacity .25s ease;mix-blend-mode:difference;opacity:0;}
.tsd-cursor.is-active{opacity:1;}
.tsd-cursor.is-hover{width:44px;height:44px;background:transparent;border:1px solid var(--c-gold);}
@media (hover:none),(pointer:coarse){.tsd-cursor{display:none;}}
/* カード類のマイクロインタラクション(ホバーで持ち上がる) */
.case-card, .voice-card{transition:transform .35s cubic-bezier(.16,1,.3,1),border-color .35s ease;}
.case-card:hover, .voice-card:hover{transform:translateY(-6px);border-color:var(--c-gold);}
/* マグネティックボタン(カーソルにわずかに引き寄せられる) */
.btn-cta{will-change:transform;}
.hero-full__marquee{
  position:absolute;top:14%;left:0;white-space:nowrap;font-family:var(--font-display);
  font-size:clamp(60px,14vw,180px);color:transparent;
  -webkit-text-stroke:1px rgba(255,255,255,.18);
  animation:marquee 28s linear infinite;
}
@keyframes marquee{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.hero-full h1{
  font-family:var(--font-display);font-weight:600;color:#fff;
  font-size:clamp(34px,6.4vw,88px);line-height:1.25;max-width:900px;
}
@keyframes scrolldrop{0%{transform:scaleY(0);transform-origin:top;}50%{transform:scaleY(1);transform-origin:top;}51%{transform-origin:bottom;}100%{transform:scaleY(0);transform-origin:bottom;}}
/* ===== セクション共通 ===== */
.section{padding:140px 0;position:relative;}
/* ===== サービス:大型ビジュアルカード ===== */
/* ===== 統計カウンター ===== */
/* SWELL本体側のグローバルタイポグラフィ指定と衝突しても必ず大きく表示されるよう !important で固定 */
/* 数字(stat-num) → 単位(stat-suffix) → ラベル(stat-label) の3段階でサイズに傾斜をつける */
/* ===== 画像プレースホルダー(実素材差し替え待ち) ===== */
.img-slot{
  position:relative;overflow:hidden;border-radius:8px;
  background:
    repeating-linear-gradient(45deg, rgba(217,203,168,.08) 0 2px, transparent 2px 14px),
    linear-gradient(155deg,#3A6690,#2C4E70 55%,#1F3A55);
  display:flex;align-items:center;justify-content:center;
  border:1px dashed rgba(217,203,168,.5);
}
.img-slot img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;border-radius:8px;}
.img-slot__label{position:relative;z-index:1;text-align:center;padding:24px;color:rgba(245,243,238,.55);font-size:12px;letter-spacing:.05em;line-height:1.8;}
.img-slot__label strong{display:block;color:var(--c-gold);font-size:12px;margin-bottom:6px;}
.img-slot--light{border-color:#D9CBA8;background:repeating-linear-gradient(45deg, rgba(44,78,112,.05) 0 2px, transparent 2px 14px), #EDE9DF;}
.img-slot--light .img-slot__label{color:#8A8778;}
.img-slot--light .img-slot__label strong{color:var(--c-navy);}
/* ===== 動画/事例ギャラリー(Yaaha参考) ===== */
.reel-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;}
/* リール無限マーキー(トップページのショーケース用) */
@keyframes reel-marquee-scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}
.reel-card{
  position:relative;aspect-ratio:9/16;border-radius:6px;overflow:hidden;
  background:linear-gradient(155deg,#3A6690,#2C4E70 55%,#1F3A55);
  cursor:pointer;
}
.reel-card::after{
  content:"";position:absolute;inset:0;
  background-image:repeating-linear-gradient(115deg,rgba(255,255,255,.05) 0 2px,transparent 2px 6px);
}
.reel-card__play{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;
  color:#fff;font-size:28px;opacity:.85;z-index:2;
}
.reel-card__meta{position:absolute;left:12px;bottom:12px;right:12px;z-index:2;}
.reel-card__meta b{display:block;font-size:13px;color:#fff;}
.reel-card__meta span{font-size:12px;color:var(--c-gold);}
.reel-card video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .3s ease;}
.reel-card:hover video{opacity:1;}
@media (max-width:900px){.reel-grid{grid-template-columns:repeat(2,1fr);}}
/* ===== 事例(数値成果)カード ===== */
.case-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px;}
.case-card{background:rgba(255,255,255,.03);border:1px solid var(--c-line);border-radius:8px;overflow:hidden;}
.case-card__media{aspect-ratio:16/10;background:linear-gradient(145deg,#3A6690,#1F3A55);position:relative;}
.case-card__body{padding:28px;}
.case-card__meta{font-size:12px;color:var(--c-gold-deep);letter-spacing:.05em;}
.case-card h3{font-family:var(--font-display);font-size:18px;color:#fff;margin-top:12px;}
.case-card__stat{display:inline-block;margin-top:16px;font-size:12px;padding:5px 12px;border:1px solid var(--c-gold-deep);color:var(--c-gold-deep);border-radius:100px;}
@media (max-width:900px){.case-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:600px){.case-grid{grid-template-columns:1fr;}}
/* ===== お客様の声 ===== */
.voice-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}
.voice-card{background:rgba(255,255,255,.03);border:1px solid var(--c-line);border-radius:8px;padding:32px;}
.voice-card__quote{font-family:var(--font-display);font-size:16px;color:#fff;line-height:1.7;}
.voice-card__meta{font-size:12px;color:rgba(245,243,238,.5);margin-top:20px;}
@media (max-width:900px){.voice-grid{grid-template-columns:1fr 1fr;}}
@media (max-width:600px){.voice-grid{grid-template-columns:1fr;}}
/* ===== CTA帯 ===== */
.cta-full{
  min-height:70vh;display:flex;flex-direction:column;align-items:center;justify-content:center;
  text-align:center;position:relative;
  background:radial-gradient(ellipse at 50% 30%, rgba(217,203,168,.2), transparent 60%), var(--c-navy-deep);
}
.cta-full h2{font-family:var(--font-display);font-size:clamp(30px,5vw,56px);color:#fff;max-width:720px;}
.cta-full p{color:rgba(245,243,238,.7);margin-top:20px;max-width:480px;}
.btn-cta{
  margin-top:40px;display:inline-flex;align-items:center;gap:14px;
  padding:20px 44px;border:1px solid var(--c-gold);color:var(--c-gold);
  font-size:13px;letter-spacing:.1em;border-radius:100px;transition:background .3s ease,color .3s ease;
}
.btn-cta:hover{background:var(--c-gold);color:var(--c-navy-deep);}
/* ===== フッター ===== */
/* ===== フォーム(お問い合わせ) ===== */
/* ===== 料金プランカード ===== */
/* ===== 単品料金テーブル(アコーディオン式カテゴリ) ===== */
.price-category{border-bottom:1px solid var(--c-line);}
.price-category__head{
	width:100%;display:flex;justify-content:space-between;align-items:center;
	padding:24px 0;background:none;border:none;color:#fff;cursor:pointer;text-align:left;
}
.price-category__head h3{font-family:var(--font-display);font-size:18px;color:#fff;}
/* ===== 会社概要テーブル ===== */
.info-table{width:100%;border-collapse:collapse;max-width:760px;}
.info-table th, .info-table td{padding:18px 20px;text-align:left;font-size:14px;border-bottom:1px solid var(--c-line);vertical-align:top;}
.info-table th{width:180px;color:var(--c-gold);font-weight:500;font-size:13px;}
.info-table td{color:rgba(245,243,238,.8);}
/* ===== FAQ アコーディオン ===== */
.faq-item{border-bottom:1px solid var(--c-line);}
.faq-item__q{width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:22px 0;font-size:15px;color:#fff;font-family:var(--font-display);display:flex;justify-content:space-between;align-items:center;gap:16px;}
.faq-item__a{display:none;padding:0 0 22px;color:rgba(245,243,238,.65);font-size:14px;max-width:680px;}
.faq-item.is-open .faq-item__a{display:block;}
.faq-item__icon{color:var(--c-gold);transition:transform .2s ease;}
.faq-item.is-open .faq-item__icon{transform:rotate(45deg);}
/* バッジ(カテゴリ表示等) */
.badge{display:inline-block;font-size:12px;padding:4px 12px;border:1px solid var(--c-gold);color:var(--c-gold);border-radius:100px;white-space:nowrap;}
/* 投稿本文(the_content)の基本スタイル */
/* ===== サービス詳細ページ:トラストロゴ帯 ===== */
/* ===== サービス詳細ページ:制作実績サムネイル横並び ===== */
/* ===== サービス詳細ページ:客観データミニカード ===== */
/* ===== サービス詳細ページ:番号付き大型機能ブロック ===== */
/* ===== サービス詳細ページ:お客様の声スポットライト ===== */
/* パンくず(ダーク背景用) */
.breadcrumb-dark{font-size:12px;color:rgba(245,243,238,.5);margin-bottom:20px;}
.breadcrumb-dark a{color:rgba(245,243,238,.5);}
/* ===== conversion.css(旧) ===== */
/* =====================================================================
   問い合わせにつなげるための追加スタイル(conversion.css)
   既存の editorial.css は変更せず、このファイルで追加・補強しています。
   対象:ヒーロー補足、LINE・予約ボタン、サービスの料金表示、業種別タブ、
         無料診断セクション、共通CTA、お問い合わせフォーム、スマホの固定ボタン
   ===================================================================== */
/* ---------- ヒーロー補足 ---------- */
.et-hero--tiles{padding-bottom:104px;}
.et-hero__channels{display:flex;gap:8px;flex-wrap:wrap;margin-top:12px;}
.et-hero__channels .et-ch{padding:9px 18px;font-size:12.5px;}
@media (max-width:960px){.et-hero__channels{justify-content:center;}}
/* ---------- LINE・日程予約のボタン ---------- */
.et-ch{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 24px;border-radius:100px;font-size:13.5px;font-weight:500;line-height:1.2;border:1.5px solid var(--et-navy);transition:background .25s ease,color .25s ease,border-color .25s ease;text-align:center;}
.et-page .et-ch--light{background:rgba(255,255,255,.85);color:var(--et-navy);}
.et-page .et-ch--light:hover{background:var(--et-navy);color:#fff;}
.et-page .et-ch--dark{background:transparent;color:#fff;border-color:rgba(255,255,255,.7);}
.et-page .et-ch--dark:hover{background:#fff;color:var(--et-navy);border-color:#fff;}
/* ---------- サービスカード:料金の目安 ---------- */
.et-sec-sub{margin:10px 0 0;font-size:13.5px;line-height:1.9;color:var(--et-muted);max-width:640px;}
.et-svc-card .et-svc-card__price{align-self:flex-start;position:relative;z-index:1;display:inline-block;margin-top:2px;padding:5px 14px;border-radius:100px;background:rgba(255,255,255,.1);border:1px solid rgba(217,203,168,.65);color:var(--et-gold);font-size:13px;font-weight:600;letter-spacing:.02em;line-height:1.5;}
/* ---------- 業種別タブ ---------- */
.et-biz-sec{padding-top:24px;padding-bottom:104px;}
.et-biz-h2{margin:12px 0 0;font-size:34px;font-weight:600;line-height:1.5;}
.et-biz{margin-top:40px;}
.et-biz__tabs{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:28px;}
.et-biz__tab{padding:13px 24px;border-radius:100px;border:1.5px solid var(--et-line);background:var(--et-surface);color:var(--et-ink);font-size:14px;font-weight:500;font-family:var(--et-font-sans);line-height:1.2;cursor:pointer;transition:background .25s ease,color .25s ease,border-color .25s ease;}
.et-biz__tab:hover{border-color:var(--et-navy);}
.et-biz__tab.is-active{background:var(--et-navy);border-color:var(--et-navy);color:#fff;}
.et-biz__tab:focus-visible{outline:2px solid var(--et-navy);outline-offset:3px;}
.et-biz__panel{display:flex;gap:56px;align-items:center;background:var(--et-surface);border:1px solid var(--et-line);border-radius:24px;padding:48px;margin-bottom:20px;}
.et-biz__panel:last-child{margin-bottom:0;}
.et-biz.is-ready .et-biz__panel{display:none;margin-bottom:0;}
.et-biz.is-ready .et-biz__panel.is-active{display:flex;animation:et-biz-in .45s ease both;}
@keyframes et-biz-in{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}
.et-biz__text{flex:1.05;min-width:0;}
.et-biz__text h3{margin:0;font-size:24px;line-height:1.6;font-weight:600;color:var(--et-ink);}
.et-biz__label{margin:26px 0 10px;font-size:12px;letter-spacing:.08em;color:var(--et-gold-ink);font-weight:600;}
.et-biz__worries{list-style:none;margin:0;padding:0;display:grid;gap:10px;}
.et-biz__worries li{position:relative;padding-left:22px;font-size:14.5px;line-height:1.8;color:var(--et-ink);}
.et-biz__worries li::before{content:"";position:absolute;left:0;top:.62em;width:9px;height:5px;border-left:1.8px solid var(--et-gold-deep,#8C7A55);border-bottom:1.8px solid var(--et-gold-deep,#8C7A55);transform:rotate(-45deg);}
.et-biz__plans{display:flex;gap:8px;flex-wrap:wrap;}
.et-biz__chip{padding:8px 16px;border-radius:100px;background:var(--et-panel);border:1px solid var(--et-line);font-size:13px;line-height:1.4;color:var(--et-navy);transition:background .25s ease,color .25s ease,border-color .25s ease;}
.et-biz__chip:hover{background:var(--et-navy);color:#fff;border-color:var(--et-navy);}
.et-biz__note{margin:22px 0 26px;font-size:13px;line-height:1.9;color:var(--et-muted);}
.et-biz__img{flex:.95;min-width:0;}
.et-biz__img img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;}
@media (max-width:900px){.et-biz-h2{font-size:28px;}
.et-biz-sec{padding-bottom:72px;}
.et-biz__panel, .et-biz.is-ready .et-biz__panel.is-active{flex-direction:column;align-items:stretch;gap:28px;padding:26px 20px;border-radius:18px;}
.et-biz__img{flex:none;}
.et-biz__tabs{flex-wrap:nowrap;overflow-x:auto;margin:0 -24px 22px;padding:2px 24px 6px;scrollbar-width:none;-webkit-overflow-scrolling:touch;}
.et-biz__tabs::-webkit-scrollbar{display:none;}
.et-biz__tab{flex:none;padding:12px 20px;}
.et-biz__text h3{font-size:20px;}
.et-biz__text .et-btn-primary{width:100%;justify-content:center;box-sizing:border-box;}}
@media (prefers-reduced-motion: reduce){.et-biz.is-ready .et-biz__panel.is-active{animation:none;}}
/* ---------- 無料診断(ご相談の流れ) ---------- */
.et-diag{background:linear-gradient(180deg,var(--et-panel),var(--et-bg));border-top:1px solid var(--et-line);border-bottom:1px solid var(--et-line);padding:96px 0;}
.et-diag__inner{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:72px;align-items:center;}
.et-diag__lead h2{margin:12px 0 0;font-size:34px;line-height:1.5;font-weight:600;color:var(--et-ink);}
.et-diag__lead p{margin:18px 0 28px;font-size:15px;line-height:2;color:var(--et-muted);}
.et-diag__actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center;}
.et-diag__steps{list-style:none;margin:0;padding:0;display:grid;gap:16px;}
.et-diag__steps li{display:flex;gap:22px;align-items:flex-start;background:var(--et-surface);border:1px solid var(--et-line);border-radius:16px;padding:24px 26px;}
.et-diag__num{flex:none;width:48px;height:48px;border-radius:50%;background:var(--et-navy);color:#fff;display:flex;align-items:center;justify-content:center;font-family:var(--et-font-serif);font-size:15px;}
.et-diag__steps h3{margin:2px 0 6px;font-size:18px;color:var(--et-navy);}
.et-diag__steps p{margin:0;font-size:13.5px;line-height:1.9;color:var(--et-muted);}
@media (max-width:900px){.et-diag{padding:64px 0;}
.et-diag__inner{grid-template-columns:1fr;gap:36px;}
.et-diag__lead h2{font-size:28px;}
.et-diag__actions .et-btn-primary{width:100%;justify-content:center;box-sizing:border-box;}
.et-diag__actions .et-ch{width:100%;box-sizing:border-box;}
.et-diag__steps li{padding:20px 18px;gap:16px;}}
/* ---------- 共通CTA(全ページの下部) ---------- */
.et-cta2-wrap{padding-top:40px;padding-bottom:96px;}
.et-cta2{display:flex;gap:40px;align-items:center;justify-content:space-between;flex-wrap:wrap;background:linear-gradient(150deg,#2C4E70 0%,var(--et-navy) 55%,#14283C 100%);border-radius:24px;padding:56px 64px;color:#fff;}
.et-cta2__text{flex:1 1 380px;min-width:0;}
.et-cta2 h2{margin:0;font-size:clamp(24px,3vw,34px);line-height:1.5;font-weight:600;color:#fff;}
.et-cta2 p{margin:14px 0 0;font-size:14.5px;line-height:1.95;color:rgba(255,255,255,.86);max-width:560px;}
.et-cta2__points{list-style:none;margin:18px 0 0;padding:0;display:flex;gap:8px 20px;flex-wrap:wrap;}
.et-cta2__points li{position:relative;padding-left:18px;font-size:12.5px;color:var(--et-gold);}
.et-cta2__points li::before{content:"";position:absolute;left:0;top:.5em;width:9px;height:5px;border-left:1.6px solid var(--et-gold);border-bottom:1.6px solid var(--et-gold);transform:rotate(-45deg);}
.et-cta2__actions{display:flex;flex-direction:column;gap:12px;flex:0 0 auto;min-width:270px;}
.et-page .et-cta2__btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:18px 32px;background:var(--et-gold);color:var(--et-navy);border-radius:100px;font-size:15px;font-weight:600;line-height:1.2;transition:transform .25s ease,box-shadow .25s ease;}
.et-cta2__btn:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(0,0,0,.28);}
@media (max-width:900px){.et-cta2-wrap{padding-bottom:72px;}
.et-cta2{padding:36px 24px;gap:28px;border-radius:18px;}
.et-cta2__actions{width:100%;min-width:0;}}
/* ---------- サービス詳細:料金の目安 ---------- */
.et-price{border-top:1px solid var(--et-line);}
.et-price__row{display:flex;gap:32px;align-items:center;justify-content:space-between;padding:22px 4px;border-bottom:1px solid var(--et-line);}
.et-price__name h3{margin:0;font-size:17px;line-height:1.6;color:var(--et-navy);}
.et-price__name p{margin:6px 0 0;font-size:13px;line-height:1.8;color:var(--et-muted);}
.et-price__val{flex:none;font-family:var(--et-font-serif);font-size:22px;font-weight:600;color:var(--et-ink);white-space:nowrap;}
.et-price__cta{display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:28px;}
@media (max-width:700px){.et-price__row{flex-direction:column;align-items:flex-start;gap:8px;}
.et-price__val{font-size:20px;}
.et-price__cta .et-btn-primary, .et-price__cta .et-ch{width:100%;justify-content:center;box-sizing:border-box;}}
/* ---------- お問い合わせフォーム ---------- */
.et-req{display:inline-block;margin-left:8px;padding:1px 8px;border-radius:100px;background:var(--et-navy);color:#fff;font-size:12px;line-height:1.7;vertical-align:2px;}
.et-contact-form--wide{display:grid;grid-template-columns:1fr 1fr;gap:24px 28px;}
.et-contact-form--wide .is-full{grid-column:1 / -1;}
@media (max-width:900px){.et-contact-form--wide{grid-template-columns:1fr;}}
.et-contact-form--wide label{display:grid;gap:8px;align-content:start;}
.et-contact-form--wide input[type=text], .et-contact-form--wide input[type=email], .et-contact-form--wide input[type=tel], .et-contact-form--wide select, .et-contact-form--wide textarea{width:100%;box-sizing:border-box;padding:13px 14px;border:1px solid #D8D2C2;border-radius:8px;font-size:14px;line-height:1.6;background:#fff;color:var(--et-ink);font-family:var(--et-font-sans);}
.et-contact-form--wide input:focus, .et-contact-form--wide select:focus, .et-contact-form--wide textarea:focus{outline:2px solid var(--et-navy);outline-offset:1px;}
.et-more{border:1px dashed var(--et-line);border-radius:12px;padding:14px 18px;background:var(--et-bg);}
.et-more summary{cursor:pointer;font-size:13.5px;color:var(--et-navy);font-weight:500;list-style:none;}
.et-more summary::-webkit-details-marker{display:none;}
.et-more summary::before{content:"+";display:inline-block;width:20px;color:var(--et-gold-ink);font-weight:700;}
.et-more[open] summary::before{content:"−";}
.et-more__grid{display:grid;grid-template-columns:1fr 1fr;gap:20px 28px;margin-top:18px;}
.et-more__grid .is-full{grid-column:1 / -1;}
.et-contact-form__note{margin:0;font-size:12px;line-height:1.8;color:var(--et-faint);}
.et-contact-form__note a{text-decoration:underline;}
.et-contact__list{list-style:none;margin:12px 0 32px;padding:0;display:grid;gap:10px;}
.et-contact__list li{position:relative;padding-left:22px;font-size:14px;line-height:1.8;color:var(--et-ink);}
.et-contact__list li::before{content:"";position:absolute;left:0;top:.62em;width:9px;height:5px;border-left:1.8px solid var(--et-gold-deep,#8C7A55);border-bottom:1.8px solid var(--et-gold-deep,#8C7A55);transform:rotate(-45deg);}
.et-contact__channels{display:flex;flex-direction:column;gap:10px;margin:14px 0 32px;align-items:stretch;}
@media (max-width:900px){.et-more__grid{grid-template-columns:1fr;}}
/* ---------- 完了ページ ---------- */
.et-thanks-next{max-width:680px;margin:0 auto;padding:32px 24px;text-align:center;background:var(--et-surface);border:1px solid var(--et-line);border-radius:20px;box-sizing:border-box;}
.et-thanks-next__title{margin:0 0 16px;font-size:18px;color:var(--et-ink);}
.et-thanks-next__btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;}
@media (max-width:700px){.et-thanks-next{margin:0 24px;padding:26px 18px;}}
/* ---------- スマホ:画面下に固定する相談ボタン ---------- */
.et-sticky{display:none;}
@media (max-width:760px){.et-sticky{position:fixed;left:0;right:0;bottom:0;z-index:250;display:flex;gap:8px;padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));background:rgba(251,249,245,.96);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-top:1px solid var(--et-line);box-shadow:0 -8px 24px rgba(31,58,86,.10);}
.et-page .et-sticky__main{flex:1;display:flex;align-items:center;justify-content:center;padding:14px 12px;border-radius:100px;background:linear-gradient(135deg,#2C4E70,var(--et-navy));color:#fff;font-size:14px;font-weight:600;line-height:1.2;}
.et-page .et-sticky__sub{flex:none;display:flex;align-items:center;justify-content:center;padding:14px 18px;border-radius:100px;border:1.5px solid var(--et-navy);background:#fff;color:var(--et-navy);font-size:13px;font-weight:600;line-height:1.2;}
body.et-page{padding-bottom:76px;}}
/* ===== リンクのデザイン(アウトラインのピル+長い矢印) ===== */
.et-link-arrow, .et-svc-card .et-svc-card__more, .et-svc-card__more{
	display: inline-flex; align-items: center; gap: 14px;
	padding: 11px 24px; border: 1px solid #8C7A55; border-radius: 999px;
	background: transparent; color:var(--et-gold-ink);
	font-size: 14px; font-weight: 400; letter-spacing: .08em; line-height: 1.4; text-decoration: none;
	transition: background-color .3s, color .3s, border-color .3s;
}
.et-link-arrow .et-arrow, .et-svc-card__more .et-arrow, .et-svc-card__more svg{ display: none; }
.et-link-arrow::after, .et-svc-card__more::after{
	content: ""; flex: none; width: 30px; height: 10px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 10' fill='none' stroke='%238C7A55' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 5h27M24.5 1.5L28.5 5l-4 3.5'/%3E%3C/svg%3E") no-repeat center / contain;
	transition: transform .3s;
}
.et-link-arrow:hover, .et-svc-card:hover .et-svc-card__more{
	background: rgba(217,203,168,.28); color:var(--et-gold-ink); border-color: #8C7A55;
}
.et-link-arrow:hover::after, .et-svc-card:hover .et-svc-card__more::after{ transform: translateX(4px); }
.et-svc-card .et-svc-card__more{ align-self: flex-start; margin-top: auto; }
@media (max-width: 600px){.et-link-arrow, .et-svc-card__more{ padding: 11px 20px; font-size: 13px; }}
/* 濃い紺のカードの上では、白金の線と文字にして読みやすくします */
.et-svc-card .et-svc-card__more{ color: var(--et-gold, #D9CBA8); border-color: var(--et-gold, #D9CBA8); }
.et-svc-card .et-svc-card__more::after{
	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 10' fill='none' stroke='%23D9CBA8' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 5h27M24.5 1.5L28.5 5l-4 3.5'/%3E%3C/svg%3E");
}
.et-svc-card:hover .et-svc-card__more{ background: rgba(217,203,168,.16); color: #fff; border-color: var(--et-gold, #D9CBA8); }
/* スマホでは、セクションの左右の余白を小さくしてカードの幅を確保します */
@media (max-width: 768px){.et-container[style*="104px 72px"]{ padding-left: 20px !important; padding-right: 20px !important; padding-top: 72px !important; padding-bottom: 72px !important; }}
/* 旧デザインの丸いカーソルは使いません */
.tsd-cursor{display:none;}
/* ロゴ画像 */
.et-header__logo{ display: inline-flex; align-items: center; }
.et-header__logo img{ display: block; height: 30px; width: auto; }
.et-footer img{ display: block; height: 26px; width: auto; }
@media (max-width: 600px){.et-header__logo img{ height: 26px; }}
/* 副次ボタン(白地のボタン)も、同じピル+長い矢印にそろえます。主ボタン(紺)は、そのままです */
.et-btn-outline, .et-ch--light{
	display: inline-flex; align-items: center; gap: 14px;
	border: 1px solid #8C7A55; border-radius: 999px; background: transparent; color:var(--et-gold-ink);
	letter-spacing: .08em; transition: background-color .3s;
}
.et-btn-outline::after, .et-ch--light::after{
	content: ""; flex: none; width: 30px; height: 10px;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 10' fill='none' stroke='%238C7A55' stroke-width='1.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M1 5h27M24.5 1.5L28.5 5l-4 3.5'/%3E%3C/svg%3E") no-repeat center / contain;
	transition: transform .3s;
}
.et-btn-outline:hover, .et-ch--light:hover{ background: rgba(217,203,168,.28); color:var(--et-gold-ink); }
.et-btn-outline:hover::after, .et-ch--light:hover::after{ transform: translateX(4px); }
.et-page .et-btn-outline, .et-page .et-btn-outline:hover, .et-page .et-ch--light, .et-page .et-ch--light:hover{ color:var(--et-gold-ink); }
/* ===== 事例・実績 ===== */
.et-case-grid--wrap{ flex-wrap: wrap; }
.et-case-grid--wrap .et-case{ flex: 1 1 calc(33.333% - 28px); min-width: 260px; max-width: calc(33.333% - 0px); }
.et-case[hidden]{display:none;}
.et-case__sum{ margin: 0; font-size: 13px; line-height: 1.8; color: var(--et-muted, #6E6A5D); }
.et-filter{ display: flex; flex-wrap: wrap; gap: 10px; margin: 0 0 36px; }
.et-filter__btn{ appearance: none; border: 1px solid var(--et-line, #E7E1D3); background: transparent; color: var(--et-ink, #20242B); border-radius: 999px; padding: 9px 20px; font-size: 13px; font-family: inherit; cursor: pointer; transition: background-color .25s, color .25s, border-color .25s; }
.et-filter__btn.is-active{ background: #1F3A56; color: #fff; border-color: #1F3A56; }
.et-case-visual{ padding: 0 72px; }
.et-case-body{ padding: 64px 72px 88px; display: flex; gap: 56px; align-items: flex-start; }
.et-case-body__main{ flex: 2; min-width: 0; color: var(--et-ink, #20242B); }
.et-case-aside{ flex: 1; min-width: 0; position: sticky; top: 112px; background: var(--et-surface, #fff); border: 1px solid var(--et-line, #E7E1D3); border-radius: 16px; padding: 28px; }
.et-case-aside__eyebrow{ margin: 0; font-size: 12px; color:var(--et-gold-ink); letter-spacing: .08em; }
.et-case-aside__title{ margin: 8px 0 0; font-size: 20px; line-height: 1.6; color: var(--et-ink, #20242B); }
.et-case-aside ul{ margin: 16px 0 24px; padding-left: 1.2em; font-size: 13px; line-height: 2; color: var(--et-muted, #6E6A5D); }
.et-case-aside .et-btn-primary{ width: 100%; justify-content: center; }
.et-case-aside__ch{ display: flex; flex-direction: column; gap: 10px; margin-top: 12px; }
.et-case-aside__ch .et-ch{ justify-content: center; }
.et-case-aside__note{ margin: 16px 0 0; font-size: 12px; color: var(--et-faint, #9A927E); }
.et-case-h{ font-family: var(--et-font-serif, serif); font-size: 22px; font-weight: 600; margin: 56px 0 0; }
.et-case-p{ margin-top: 14px; color: var(--et-muted, #6E6A5D); line-height: 2; font-size: 15px; }
.et-case-steps{ margin-top: 20px; display: flex; flex-direction: column; gap: 26px; }
.et-case-step{ padding-left: 24px; border-left: 2px solid var(--et-gold, #D9CBA8); }
.et-case-step__no{ margin: 0; font-size: 12px; color:var(--et-gold-ink); letter-spacing: .08em; }
.et-case-step h3{ margin: 6px 0 0; font-size: 17px; }
.et-case-step p:last-child{ margin: 8px 0 0; color: var(--et-muted, #6E6A5D); font-size: 14px; line-height: 1.9; }
.et-case-note{ margin-top: 12px; font-size: 12px; line-height: 1.9; color: var(--et-faint, #9A927E); }
.et-case-voice{ margin: 16px 0 0; padding: 28px; background: var(--et-panel, #F3F0E9); border-radius: 16px; }
.et-case-voice p{ margin: 0; line-height: 2; font-size: 15px; }
.et-case-voice cite{ display: block; margin-top: 14px; font-style: normal; font-size: 13px; color: var(--et-muted, #6E6A5D); }
.et-case-related{ padding: 0 72px 96px; }
.et-case-related .et-case-grid{ margin-top: 20px; }
@media (max-width: 900px){.et-case-grid--wrap .et-case{ flex-basis: 100%; max-width: 100%; }
.et-case-visual, .et-case-related{ padding-left: 20px; padding-right: 20px; }
.et-case-body{ flex-direction: column; padding: 40px 20px 64px; gap: 40px; }
.et-case-aside{ position: static; width: 100%; box-sizing: border-box; }
.et-case-archive{ padding-left: 20px !important; padding-right: 20px !important; }}
/* 数値を載せない事例:取り組みのポイント、施策前後の画像 */
.et-points{ display: grid; grid-template-columns: repeat(3, 1fr); margin: 8px auto 40px; padding: 0 72px; }
.et-points__item{ padding: 28px 24px; border-top: 1px solid var(--et-line, #E7E1D3); border-bottom: 1px solid var(--et-line, #E7E1D3); }
.et-points__item + .et-points__item{ border-left: 1px solid var(--et-line, #E7E1D3); }
.et-points__no{ font-size: 12px; color:var(--et-gold-ink); letter-spacing: .08em; }
.et-points__title{ margin: 8px 0 0; font-size: clamp(18px, 2vw, 22px); line-height: 1.5; color: #1F3A56; font-weight: 600; }
.et-points__item p{ margin: 10px 0 0; font-size: 13px; line-height: 1.9; color: var(--et-muted, #6E6A5D); }
.et-ba{ margin-top: 16px; display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; }
.et-ba__item{ margin: 0; }
.et-ba__label{ display: inline-block; margin-bottom: 8px; padding: 4px 14px; font-size: 12px; border: 1px solid #8C7A55; color:var(--et-gold-ink); border-radius: 999px; }
.et-ba__item img{ display: block; width: 100%; height: auto; border: 1px solid var(--et-line, #E7E1D3); border-radius: 8px; }
@media (max-width: 900px){.et-points{ grid-template-columns: 1fr; padding: 0 20px; }
.et-points__item + .et-points__item{ border-left: 0; border-top: 0; }
.et-ba{ grid-template-columns: 1fr; }}
/* ===== お知らせ一覧:カード(画像・カテゴリー・日付・タイトル) ===== */
.et-newsgrid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px 28px; }
.et-newscard{ display: flex; flex-direction: column; background: var(--et-surface, #fff); border: 1px solid var(--et-line, #E7E1D3); border-radius: 16px; overflow: hidden; color: inherit; text-decoration: none; transition: box-shadow .35s, transform .35s, border-color .35s; }
.et-newscard:hover{ box-shadow: 0 14px 36px rgba(31, 58, 86, .10); transform: translateY(-3px); border-color: #D9CBA8; }
.et-newscard__media{ aspect-ratio: 16 / 10; overflow: hidden; background: var(--et-panel, #F3F0E9); }
.et-newscard__media > img{ display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
.et-newscard:hover .et-newscard__media > img{ transform: scale(1.04); }
.et-newscard__ph{ width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, #F3F0E9 0%, #EAE3D2 100%); }
.et-newscard__ph img{ width: 56px; height: 56px; opacity: .55; }
.et-newscard__body{ display: flex; flex-direction: column; gap: 12px; padding: 20px 22px 24px; flex: 1; }
.et-newscard__meta{ display: flex; align-items: center; gap: 12px; flex-wrap: wrap; }
.et-newscard__cat{ display: inline-block; font-size: 12px; line-height: 1; padding: 6px 14px; border-radius: 999px; background: var(--et-panel, #F3F0E9); color: #1F3A56; letter-spacing: .04em; }
.et-newscard__date{ font-size: 12px; color: var(--et-faint, #9A927E); letter-spacing: .06em; }
.et-newscard__title{ margin: 0; font-family: var(--et-font-serif, serif); font-size: 17px; font-weight: 600; line-height: 1.7; color: var(--et-ink, #20242B); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.et-filter--links .et-filter__btn{ display: inline-block; text-decoration: none; }
.et-filter--links .et-filter__btn.is-active{ color: #fff; }
@media (max-width: 960px){.et-newsgrid{ grid-template-columns: repeat(2, 1fr); }}
@media (max-width: 600px){.et-news-archive{ padding-left: 20px !important; padding-right: 20px !important; }
.et-newsgrid{ grid-template-columns: 1fr; gap: 20px; }
.et-newscard__body{ padding: 18px 18px 20px; }}
/* ===== 動画の埋め込み(事例・リール) ===== */
.et-embed{ position: relative; width: 100%; border-radius: 6px; overflow: hidden; background: #0F1B2A; }
.et-embed iframe{ position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.et-embed--portrait{ max-width: 360px; margin: 0 auto; }
.et-embed--file{ display: block; aspect-ratio: 16/9; }
.et-embed-link{ margin: 0; }
.reel-card.has-thumb{ background: #0F1B2A; }
.reel-card__thumb{ position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.reel-card.has-thumb::after{ background: linear-gradient(180deg, rgba(15,27,42,0) 45%, rgba(15,27,42,.72) 100%); }
.reel-card iframe{ position: absolute; inset: 0; width: 100%; height: 100%; border: 0; z-index: 3; background: #000; }
.reel-card.is-playing .reel-card__play, .reel-card.is-playing .reel-card__meta, .reel-card.is-playing .reel-card__thumb, .reel-card.is-playing::after{ display: none; }
a.reel-card{ display: block; text-decoration: none; color: inherit; }
.et-case[hidden]{display:none;}
.et-case-archive .et-filter + .et-filter{ margin-top: -20px; }
/* サービスが6つになったため、トップのサービス一覧を3列×2段にそろえます */
@media (min-width: 961px){.et-svc-grid .et-svc-card:nth-child(n+4){ grid-column: span 2; }}
/* ===== 事例・実績 / ショート動画:タブ ===== */
.et-worktabs{ display: flex; gap: 8px; margin: 0 0 36px; border-bottom: 1px solid var(--et-line, #E7E1D3); }
.et-worktabs__tab{ appearance: none; background: none; border: 0; border-bottom: 2px solid transparent; margin-bottom: -1px; padding: 14px 22px; font-family: inherit; font-size: 15px; color: var(--et-muted, #5A6270); cursor: pointer; display: inline-flex; align-items: center; gap: 8px; transition: color .25s, border-color .25s; }
.et-worktabs__tab span{ font-size: 12px; background: #F2EEE2; color: #7A6A44; border-radius: 999px; padding: 2px 9px; }
.et-worktabs__tab:hover{ color: #1F3A56; }
.et-worktabs__tab.is-active{ color: #1F3A56; font-weight: 600; border-bottom-color: #1F3A56; }
.et-worktabs__tab.is-active span{ background: #1F3A56; color: #fff; }
.et-works .et-workpanel + .et-workpanel{ margin-top: 56px; }
.et-works.is-ready .et-workpanel{ display: none; margin-top: 0; }
.et-works.is-ready .et-workpanel.is-active{ display: block; animation: et-biz-in .4s ease both; }
.et-works__lead{ margin: 0 0 20px; font-size: 13px; color: var(--et-muted, #5A6270); }
.reel-card__badge{ position: absolute; left: 10px; top: 10px; z-index: 3; font-size: 12px; letter-spacing: .06em; color: #1F3A56; background: rgba(255,255,255,.88); border-radius: 999px; padding: 3px 10px; }
@media (max-width: 600px){.et-worktabs__tab{ flex: 1; justify-content: center; padding: 12px 8px; font-size: 14px; }
.et-works{ padding: 0 20px 72px !important; }}
/* ===== 事例ページ:見出しまわり・ギャラリー・案件概要 ===== */
.et-casehero{ padding-bottom: 8px; }
.et-casehero__chips{ display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 18px 0 0; }
.et-chip{ display: inline-block; font-size: 12px; letter-spacing: .04em; color: #1F3A56; background: #fff; border: 1px solid #D5DCE5; border-radius: 999px; padding: 6px 14px; }
.et-chip--gold{ color: #7A6A44; background: #F3EAD3; border-color: #E4D7B5; }
.et-casehero__title{ max-width: 860px; margin: 16px 0 0; font-size: clamp(26px, 3.4vw, 40px); line-height: 1.5; }
.et-casehero__lead{ max-width: 720px; margin: 18px 0 0; font-size: 16px; line-height: 1.9; color: var(--et-muted, #5A6270); }
.et-casehero__disc{ margin: 12px 0 0; font-size: 12px; color: var(--et-faint, #8A8472); }
.et-case-visual{ padding-top: 32px; }
.et-gal__stage{ position: relative; border-radius: 18px; overflow: hidden; background: #0F1B2A; aspect-ratio: 16 / 10; box-shadow: 0 24px 48px rgba(31,58,86,.14); }
.et-gal__slide{ position: absolute; inset: 0; margin: 0; opacity: 0; visibility: hidden; transition: opacity .45s ease, visibility .45s; }
.et-gal__slide.is-active{ opacity: 1; visibility: visible; }
.et-gal__slide img{ width: 100%; height: 100%; object-fit: contain; display: block; background: #F4F1EA; }
.et-gal__slide figcaption{ position: absolute; left: 0; right: 0; bottom: 0; padding: 36px 24px 16px; font-size: 13px; color: #fff; background: linear-gradient(180deg, rgba(15,27,42,0), rgba(15,27,42,.72)); }
.et-gal__nav{ position: absolute; top: 50%; transform: translateY(-50%); width: 44px; height: 44px; border-radius: 50%; border: 0; background: rgba(255,255,255,.92); color: #1F3A56; display: flex; align-items: center; justify-content: center; cursor: pointer; box-shadow: 0 6px 18px rgba(15,27,42,.2); transition: transform .25s, background-color .25s; z-index: 2; }
.et-gal__nav:hover{ background: #fff; transform: translateY(-50%) scale(1.06); }
.et-gal__nav--prev{ left: 16px; }
.et-gal__nav--next{ right: 16px; }
.et-gal__count{ position: absolute; right: 16px; top: 16px; z-index: 2; font-size: 12px; color: #fff; background: rgba(15,27,42,.6); border-radius: 999px; padding: 4px 12px; }
.et-gal__count b{ font-weight: 600; }
.et-gal__thumbs{ display: flex; gap: 10px; margin-top: 14px; overflow-x: auto; padding: 4px 2px 8px; scrollbar-width: thin; }
.et-gal__thumb{ flex: none; width: 108px; aspect-ratio: 16 / 10; padding: 0; border: 2px solid transparent; border-radius: 10px; overflow: hidden; cursor: pointer; background: #E9E4D6; opacity: .62; transition: opacity .25s, border-color .25s; }
.et-gal__thumb img{ width: 100%; height: 100%; object-fit: cover; display: block; }
.et-gal__thumb:hover{ opacity: 1; }
.et-gal__thumb.is-active{ opacity: 1; border-color: #1F3A56; }
.et-facts{ display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 0; margin-top: 36px; margin-bottom: 0; padding-top: 0; padding-bottom: 0; }
.et-facts{ background: #fff; border: 1px solid var(--et-line, #E7E1D3); border-radius: 18px; padding: 8px 0; max-width: calc(100% - 144px); box-sizing: border-box; }
.et-facts__item{ display: flex; flex-direction: column; gap: 6px; padding: 18px 24px; border-left: 1px solid var(--et-line, #E7E1D3); min-width: 0; }
.et-facts__item:first-child{ border-left: 0; }
.et-facts__label{ font-size: 12px; letter-spacing: .1em; color:var(--et-gold-ink); }
.et-facts__value{ font-size: 15px; line-height: 1.6; color: var(--et-ink, #20242B); font-weight: 500; overflow-wrap: anywhere; }
@media (max-width: 960px){.et-facts{ max-width: calc(100% - 40px); }
.et-facts__item:nth-child(odd){ border-left: 0; }}
@media (max-width: 600px){.et-case-visual{ padding-top: 20px; }
.et-gal__stage{ border-radius: 12px; aspect-ratio: 4 / 3; }
.et-gal__nav{ width: 38px; height: 38px; }
.et-gal__nav--prev{ left: 10px; }
.et-gal__nav--next{ right: 10px; }
.et-gal__thumb{ width: 82px; }
.et-facts{ grid-template-columns: 1fr 1fr; margin-top: 24px; }
.et-facts__item{ padding: 14px 16px; border-left: 0; border-top: 1px solid var(--et-line, #E7E1D3); }
.et-facts__item:nth-child(-n+2){ border-top: 0; }
.et-facts__item:nth-child(even){ border-left: 1px solid var(--et-line, #E7E1D3); }
.et-casehero__lead{ font-size: 15px; }}
/* ===== トップページ再構成(吹き出し見出し・お悩み・理由・対応範囲・改善サイクル・濃紺帯) ===== */
.et-sec{ padding: 96px 72px; }
.et-sec--narrow{ max-width: 860px; }
.et-moreC{ text-align: center; margin: 44px 0 0; }
.et-trustchips{ list-style: none; display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 0; padding: 0; }
.et-trustchips li{ font-size: 12.5px; color: var(--et-navy); background: rgba(255,255,255,.75); border: 1px solid #D9CBA8; border-radius: 100px; padding: 6px 14px; }
.et-bhead{ text-align: center; margin: 0 auto 48px; max-width: 760px; }
.et-bhead__bubble{ display: inline-block; position: relative; margin: 0 0 22px; padding: 9px 24px; background: var(--et-navy); color: #fff; font-size: 13.5px; font-weight: 600; letter-spacing: .06em; border-radius: 100px; }
.et-bhead__bubble::after{ content: ""; position: absolute; left: 50%; bottom: -7px; width: 14px; height: 14px; background: var(--et-navy); transform: translateX(-50%) rotate(45deg); border-radius: 2px; }
.et-bhead__title{ margin: 0; font-size: 38px; line-height: 1.5; font-weight: 600; color: var(--et-navy); }
.et-bhead__title span{ color:var(--et-gold-ink); }
.et-bhead__lead{ margin: 20px 0 0; font-size: 15px; line-height: 2; color: var(--et-muted); }
mark{ background: linear-gradient(transparent 62%, rgba(217,203,168,.85) 62%); color: inherit; padding: 0 2px; }
.et-worries{ padding: 96px 0 72px; background: #FBF9F4; }
.et-worries__grid{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; max-width: 1100px; margin: 0 auto; }
.et-worry{ background: #fff; border: 1px solid var(--et-line, #E7E1D3); border-radius: 18px; padding: 32px 28px; }
.et-worry h3{ margin: 0 0 10px; font-size: 19px; color: var(--et-navy); line-height: 1.6; }
.et-worry p{ margin: 0; font-size: 14px; line-height: 1.95; color: var(--et-muted); }
.et-darkband{ background: linear-gradient(135deg, #17304A, #1F3A56); color: #fff; padding: 72px 0; text-align: center; }
.et-darkband__lead{ margin: 0 0 6px; font-size: 16px; opacity: .85; }
.et-darkband__title{ margin: 0 0 34px; font-size: 32px; line-height: 1.6; font-weight: 600; color: #fff; }
.et-reasons{ padding: 104px 0; }
.et-reason{ display: grid; grid-template-columns: 120px 1fr; gap: 28px; max-width: 980px; margin: 0 auto 28px; padding: 40px 44px; background: #fff; border: 1px solid var(--et-line, #E7E1D3); border-radius: 22px; box-shadow: 0 14px 36px rgba(31,58,86,.06); }
.et-reason__num{ font-size: 72px; line-height: 1; color: #D9CBA8; font-weight: 600; }
.et-reason h3{ margin: 4px 0 16px; font-size: 23px; line-height: 1.6; color: var(--et-navy); }
.et-checklist{ list-style: none; margin: 0 0 20px; padding: 0; }
.et-checklist li{ position: relative; padding: 7px 0 7px 32px; font-size: 14.5px; line-height: 1.8; color: var(--et-ink, #222); }
.et-checklist li::before{ content: ""; position: absolute; left: 0; top: 12px; width: 20px; height: 20px; border-radius: 50%; background: var(--et-navy); }
.et-checklist li::after{ content: ""; position: absolute; left: 7px; top: 16px; width: 6px; height: 10px; border: solid #fff; border-width: 0 2px 2px 0; transform: rotate(45deg) scale(.9); }
.et-scope{ padding: 40px 0 104px; background: #FBF9F4; }
.et-scope__frame{ max-width: 1040px; margin: 0 auto; padding: 44px; background: #fff; border: 2px solid var(--et-navy); border-radius: 24px; text-align: center; }
.et-scope__platforms-label{ margin: 0 0 12px; font-size: 12.5px; color: var(--et-muted); letter-spacing: .1em; }
.et-scope__platforms{ list-style: none; display: flex; flex-wrap: wrap; gap: 10px; justify-content: center; margin: 0 0 28px; padding: 0; }
.et-scope__platforms li{ padding: 9px 20px; border: 1px solid var(--et-line, #E7E1D3); border-radius: 100px; font-size: 14px; color: var(--et-navy); background: #FBF9F4; }
.et-scope__pill{ display: inline-block; margin: 0 0 24px; padding: 11px 30px; background: var(--et-navy); color: #fff; border-radius: 100px; font-weight: 600; font-size: 15px; }
.et-scope__panels{ display: grid; grid-template-columns: 1fr 1fr; gap: 20px; text-align: left; }
.et-scope__panel{ padding: 28px; background: #EEF2F7; border-radius: 16px; }
.et-scope__panel--gold{ background: #F6F0E0; }
.et-scope__panel h3{ margin: 0 0 16px; font-size: 18px; color: var(--et-navy); text-align: center; }
.et-scope__panel ul{ list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; }
.et-scope__panel li{ padding: 8px 16px; background: #fff; border-radius: 100px; font-size: 13px; color: var(--et-navy); border: 1px solid rgba(31,58,86,.12); }
.et-case__chips{ display: flex; flex-wrap: wrap; gap: 6px; margin: 14px 0 8px; }
.et-chip{ font-size: 12px; padding: 4px 12px; border-radius: 100px; background: #EEF2F7; color: var(--et-navy); }
.et-chip--gold{ background: #F1EBDA; color: #7A5F1F; }
.et-cycle{ padding: 96px 0; background: #FBF9F4; }
.et-cycle__steps{ list-style: none; display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; max-width: 1100px; margin: 0 auto; padding: 0; counter-reset: c; }
.et-cycle__step{ position: relative; text-align: center; padding: 28px 14px; background: #fff; border: 1px solid var(--et-line, #E7E1D3); border-radius: 18px; }
.et-cycle__step:not(:last-child)::after{ content: "›"; position: absolute; right: -14px; top: 50%; transform: translateY(-50%); font-size: 24px; color: #B89B55; z-index: 1; }
.et-cycle__no{ display: inline-flex; width: 40px; height: 40px; align-items: center; justify-content: center; border-radius: 50%; background: var(--et-navy); color: #fff; font-weight: 700; margin-bottom: 12px; }
.et-cycle__step h3{ margin: 0 0 8px; font-size: 17px; color: var(--et-navy); }
.et-cycle__step p{ margin: 0; font-size: 12.5px; line-height: 1.8; color: var(--et-muted); }
@media (max-width: 960px){.et-sec{ padding: 64px 24px; }
.et-bhead__title{ font-size: 28px; }
.et-worries__grid{ grid-template-columns: 1fr; }
.et-reason{ grid-template-columns: 1fr; padding: 28px 22px; gap: 8px; }
.et-reason__num{ font-size: 48px; }
.et-scope__frame{ padding: 26px 18px; }
.et-scope__panels{ grid-template-columns: 1fr; }
.et-cycle__steps{ grid-template-columns: 1fr; }
.et-cycle__step:not(:last-child)::after{ content: "›"; right: auto; left: 50%; top: auto; bottom: -22px; transform: translateX(-50%) rotate(90deg); }
.et-darkband__title{ font-size: 24px; }}
/* ===== イラスト(Storyset) ===== */
.et-worry__img{ display: block; width: 100%; max-width: 280px; height: 170px; object-fit: contain; margin: 0 auto 18px; }
.et-reason{ grid-template-columns: 100px 1fr 280px; align-items: center; }
.et-reason__img{ width: 100%; height: auto; max-height: 220px; object-fit: contain; }
.et-scope__top{ display: grid; grid-template-columns: 240px 1fr; gap: 28px; align-items: center; margin-bottom: 28px; text-align: left; }
.et-scope__platforms--icons{ justify-content: flex-start; margin: 0; gap: 12px; }
.et-scope__platforms--icons li{ display: flex; align-items: center; gap: 8px; padding: 6px 18px 6px 8px; }
.et-scope__platforms--icons li img{ width: 40px; height: 40px; border-radius: 50%; object-fit: cover; }
.et-cycle__img{ display: block; width: 100%; max-width: 380px; height: auto; margin: 0 auto 36px; }
@media (max-width: 960px){.et-reason{ grid-template-columns: 1fr; }
.et-reason__img{ order: -1; max-height: 180px; }
.et-reason__num{ display: none; }
.et-scope__top{ grid-template-columns: 1fr; text-align: center; }
.et-scope__platforms--icons{ justify-content: center; }}
/* ===== イラスト追加分(アイコン9種・診断・サービス見出し・下部帯・お問い合わせ) ===== */
.et-scope__platforms--icons li{ padding: 6px 18px 6px 8px; }
.et-scope__platforms--icons li img{ width: 36px; height: 36px; border-radius: 0; object-fit: contain; }
.et-svchead__img{ width: 200px; height: auto; margin-left: auto; margin-right: 32px; }
.et-diag__img{ display: block; width: 100%; max-width: 400px; height: auto; margin: 36px 0 0; }
.et-contact__img{ display: block; width: 100%; max-width: 300px; height: auto; margin: 0 auto 24px; }
.et-darkband--img .et-darkband__inner{ display: grid; grid-template-columns: 300px 1fr; gap: 48px; align-items: center; text-align: left; }
@media (max-width: 960px){.et-svchead__img{ display: none; }
.et-diag__img{ max-width: 300px; margin: 28px auto 0; }
.et-darkband--img .et-darkband__inner{ grid-template-columns: 1fr; text-align: center; gap: 28px; }}
/* ===== 調整:ツリー背景化・サイクル図を右上へ・濃紺帯のCTA刷新 ===== */
.et-scope .et-bhead{ position: relative; z-index: 2; }
.et-scope__frame{ position: relative; }
.et-scope__top{ display: block; margin-bottom: 28px; text-align: center; }
.et-scope__platforms--icons{ justify-content: center; }
.et-cycle .et-container{ position: relative; }
.et-cycle__img{ position: absolute; right: 24px; top: -28px; width: 230px; max-width: none; margin: 0; }
@media (max-width: 1200px){.et-cycle__img{ width: 170px; right: 12px; top: -40px; }}
.et-darkband__inner{ max-width: 880px; }
.et-darkband__title{ margin-bottom: 30px; }
.et-page .et-dmain{ display: inline-flex; align-items: center; gap: 18px; width: 100%; max-width: 560px; padding: 20px 32px; background: #D9CBA8; color: #17304A; border-radius: 16px; text-decoration: none; text-align: left; box-shadow: 0 14px 30px rgba(0,0,0,.25); transition: transform .25s, box-shadow .25s; }
.et-dmain:hover{ transform: translateY(-2px); box-shadow: 0 18px 36px rgba(0,0,0,.32); }
.et-dmain__icon{ flex: 0 0 34px; width: 34px; height: 34px; border-radius: 50%; background: #17304A; color: #D9CBA8; display: inline-flex; align-items: center; justify-content: center; }
.et-dmain__body{ display: flex; flex-direction: column; flex: 1; text-align: center; }
.et-dmain__label{ font-size: 20px; font-weight: 700; letter-spacing: .04em; }
.et-dmain__note{ font-size: 12px; margin-top: 4px; opacity: .8; }
.et-dsubs{ display: flex; flex-wrap: wrap; justify-content: center; gap: 18px 16px; margin-top: 28px; }
.et-dsub{ display: flex; flex-direction: column; align-items: center; gap: 8px; }
.et-dsub__cap{ font-size: 12px; color: #D9CBA8; letter-spacing: .06em; }
.et-page .et-dsub__btn{ display: inline-flex; align-items: center; justify-content: center; min-width: 210px; padding: 13px 24px; border: 1px solid rgba(217,203,168,.7); border-radius: 100px; color: #fff; font-size: 13.5px; font-weight: 600; text-decoration: none; background: rgba(255,255,255,.06); transition: background .25s, color .25s; }
.et-page .et-dsub__btn:hover{ background: #fff; color: #17304A; }
.et-darkband--img .et-darkband__inner{ max-width: 1040px; grid-template-columns: 260px 1fr; gap: 56px; }
.et-darkband__medal{ width: 260px; height: 260px; border-radius: 50%; padding: 34px; box-sizing: border-box; background: radial-gradient(circle at 30% 25%, #FFFDF7, #F1EBDA); border: 2px solid #D9CBA8; box-shadow: 0 0 0 10px rgba(217,203,168,.14); display: flex; align-items: center; justify-content: center; }
.et-darkband__medal img{ width: 100%; height: auto; }
.et-darkband--img .et-dsubs{ justify-content: flex-start; }
@media (max-width: 960px){.et-cycle__img{ position: static; display: block; width: 180px; margin: 0 auto 28px; }
.et-dmain{ padding: 16px 20px; }
.et-dmain__label{ font-size: 17px; }
.et-dsub__btn{ min-width: 240px; }
.et-darkband--img .et-darkband__inner{ grid-template-columns: 1fr; gap: 28px; }
.et-darkband__medal{ width: 200px; height: 200px; padding: 26px; margin: 0 auto; }
.et-darkband--img .et-dsubs{ justify-content: center; }}
/* ===== 位置調整:ツリー・下部帯のイラストを右上へ ===== */
.et-darkband--img .et-darkband__inner{ grid-template-columns: 1fr 230px; gap: 48px; }
.et-darkband--img .et-darkband__medal{ order: 2; width: 230px; height: 230px; padding: 30px; align-self: start; }
.et-darkband--img .et-darkband__txt{ order: 1; }
@media (max-width: 960px){.et-darkband--img .et-darkband__inner{ grid-template-columns: 1fr; }
.et-darkband--img .et-darkband__medal{ order: -1; width: 180px; height: 180px; padding: 24px; margin: 0 auto; align-self: auto; }}
.et-darkband--img .et-darkband__inner{ max-width: 1160px; }
.et-darkband--img .et-darkband__medal{ margin-top: -8px; }
@media (max-width: 960px){.et-darkband--img .et-darkband__medal{ margin-top: 0; }}
/* ===== サービス:システム開発・改修(イラスト表示) ===== */
.et-glass img[src$=".svg"]{ background: #FBF9F4; padding: 28px; box-sizing: border-box; aspect-ratio: 4 / 3; object-fit: contain; }
.et-sd-sub img[src$=".svg"]{ background: #FBF9F4; padding: 24px; box-sizing: border-box; object-fit: contain; }
/* ===== 対応媒体:アイコンのみ / ツリー背景を削除 ===== */
.et-scope__platforms--icons{ gap: 14px; justify-content: center; }
.et-scope__platforms--icons li{ padding: 12px; border-radius: 16px; background: #FBF9F4; border: 1px solid var(--et-line, #E7E1D3); display: flex; align-items: center; justify-content: center; transition: transform .25s, box-shadow .25s; }
.et-scope__platforms--icons li:hover{ transform: translateY(-3px); box-shadow: 0 10px 22px rgba(31,58,86,.12); }
.et-scope__platforms--icons li img{ width: 52px; height: 52px; object-fit: contain; }
.et-scope__platforms--icons li span{ display: none; }
@media (max-width: 960px){.et-scope__platforms--icons li img{ width: 44px; height: 44px; }}
/* ===== 事例:業種アイコン・制作内容・対応項目・実績の変化 ===== */
.et-chip--ind{ display: inline-flex; align-items: center; gap: 6px; }
.et-ind-ico{ flex: 0 0 auto; color: var(--et-navy); }
.et-delta{ display: inline-block; padding: 3px 10px; border-radius: 100px; font-size: 12px; font-weight: 700; background: #F1EBDA; color: #7A5F1F; letter-spacing: .02em; }
.et-delta--up{ background: #E4EEE6; color: #2F6B45; }
.et-delta--down{ background: #EEF2F7; color: #1F3A56; }
.et-work{ display: grid; grid-template-columns: 1fr 1fr; gap: 24px; margin-top: 40px; }
.et-work:has(.et-work__col:only-child){ grid-template-columns: 1fr; }
.et-work__col{ background: #fff; border: 1px solid var(--et-line, #E7E1D3); border-radius: 20px; padding: 30px 32px; }
.et-work__h{ display: flex; align-items: center; gap: 10px; margin: 0 0 18px; font-size: 18px; color: var(--et-navy); }
.et-work__ico{ display: inline-flex; width: 34px; height: 34px; align-items: center; justify-content: center; border-radius: 10px; background: #F1EBDA; color: #7A5F1F; }
.et-deliv{ list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; }
.et-deliv li{ display: flex; flex-direction: column; gap: 2px; padding: 12px 16px; background: #FBF9F4; border-radius: 12px; border-left: 3px solid #D9CBA8; }
.et-deliv b{ font-size: 15px; color: var(--et-navy); }
.et-deliv span{ font-size: 13px; color: var(--et-muted); line-height: 1.7; }
.et-checklist--sm{ margin: 0; }
.et-checklist--sm li{ padding: 8px 0 8px 32px; border-bottom: 1px dashed var(--et-line, #E7E1D3); font-size: 14.5px; }
.et-checklist--sm li:last-child{ border-bottom: 0; }
.et-results{ margin-top: 56px; }
.et-results__h{ margin: 0 0 24px; font-size: 26px; color: var(--et-navy); }
.et-results__grid{ display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 20px; }
.et-res{ background: linear-gradient(180deg, #fff, #FBF9F4); border: 1px solid var(--et-line, #E7E1D3); border-radius: 22px; padding: 28px 28px 24px; box-shadow: 0 14px 34px rgba(31,58,86,.06); }
.et-res__label{ margin: 0 0 16px; font-size: 14px; font-weight: 700; color: var(--et-navy); letter-spacing: .04em; }
.et-res__pair{ display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.et-res__side{ display: flex; flex-direction: column; gap: 4px; }
.et-res__cap{ font-size: 12px; color: var(--et-muted); letter-spacing: .08em; }
.et-res__before{ font-size: 20px; color: var(--et-muted); }
.et-res__after{ font-size: 34px; line-height: 1.2; font-weight: 700; color: var(--et-navy); }
.et-res__arrow{ color: #B89B55; display: inline-flex; }
.et-res__bars{ display: grid; gap: 6px; margin-top: 18px; }
.et-res__bar{ display: block; height: 8px; border-radius: 100px; background: #EEF2F7; overflow: hidden; }
.et-res__bar i{ display: block; height: 100%; border-radius: 100px; }
.et-res__bar--b i{ background: #C9CFD8; }
.et-res__bar--a i{ background: linear-gradient(90deg, #1F3A56, #3E6A94); }
.et-res__foot{ display: flex; align-items: center; gap: 10px; margin: 16px 0 0; }
.et-res__value{ font-size: 13px; color: var(--et-muted); }
.et-res__big{ margin: 0; font-size: 38px; line-height: 1.3; font-weight: 700; color: var(--et-navy); }
.et-results__note{ margin: 18px 0 0; font-size: 12.5px; line-height: 1.9; color: var(--et-muted); }
@media (max-width: 960px){.et-work{ grid-template-columns: 1fr; }
.et-work__col{ padding: 24px 20px; }
.et-results__grid{ grid-template-columns: 1fr; }
.et-res__after{ font-size: 30px; }}
/* ===== サービス概要「メニュー」一覧:行間を詰める ===== */
.et-sd-menu{ gap: 0 56px; }
.et-sd-menu__item{ padding: 15px 0 15px 22px; }
.et-sd-menu__item::before{ top: 24px; }
.et-sd-menu__item h3{ line-height: 1.5; display: flex; align-items: center; flex-wrap: wrap; gap: 4px 0; }
.et-sd-menu__item p{ margin: 5px 0 0; line-height: 1.7; }
@media (max-width: 900px){.et-sd-menu__item{ padding: 13px 0 13px 20px; }
.et-sd-menu__item::before{ top: 21px; }}
/* ===== サービス:対応媒体アイコン・進め方のイラスト・一覧のイラスト ===== */
.et-sd-media{ display: flex; flex-wrap: wrap; align-items: center; gap: 12px 18px; margin-top: 6px; }
.et-sd-media__label{ font-size: 12px; letter-spacing: .08em; color:var(--et-gold-ink); font-weight: 600; }
.et-sd-media ul{ list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 10px; }
.et-sd-media li{ display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px 6px 8px; background: #FBF9F4; border: 1px solid var(--et-line, #E7E1D3); border-radius: 999px; font-size: 13px; color: var(--et-ink, #20242B); }
.et-sd-media li img{ width: 30px; height: 30px; object-fit: contain; }
.et-si-block .et-sd-media{ margin: 18px 0 4px; }
.et-sd-scope__card{ position: relative; }
.et-sd-scope__ico{ position: absolute; top: 24px; right: 26px; width: 40px; height: 40px; display: inline-flex; align-items: center; justify-content: center; border-radius: 12px; background: rgba(217,203,168,.28); color: var(--et-navy, #1F3A56); }
.et-sd-band__in{ position: relative; }
.et-sd-band__img{ position: absolute; top: -34px; right: 0; width: 230px; height: auto; opacity: .95; pointer-events: none; }
@media (max-width: 960px){.et-sd-band__img{ position: static; display: block; width: 150px; margin: 0 0 14px auto; }}
.et-si-hero .et-container{ position: relative; }
.et-si-hero__img{ position: absolute; top: -8px; right: 0; width: 300px; height: auto; pointer-events: none; z-index: 0; }
.et-si-hero h1, .et-si-hero p{ position: relative; z-index: 1; }
@media (max-width: 1100px){.et-si-hero__img{ width: 220px; }}
@media (max-width: 760px){.et-si-hero__img{ position: static; display: block; width: 180px; margin: 0 0 8px auto; }}
/* ===== 事例:絞り込み(支援内容・業種)・複数サービスのチップ ===== */
.et-filters{ margin: 0 0 40px; padding: 22px 26px 18px; background: #FBF9F4; border: 1px solid var(--et-line, #E7E1D3); border-radius: 16px; }
.et-filter-row{ display: flex; align-items: flex-start; gap: 18px; }
.et-filter-row + .et-filter-row{ margin-top: 14px; padding-top: 14px; border-top: 1px dashed var(--et-line, #E7E1D3); }
.et-filter-row__label{ flex: 0 0 64px; padding-top: 9px; font-size: 12px; letter-spacing: .08em; color:var(--et-gold-ink); font-weight: 700; }
.et-filters .et-filter{ margin: 0; gap: 8px; }
.et-case-archive .et-filters .et-filter + .et-filter{ margin-top: 0; }
.et-filters .et-filter__btn{ display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px 8px 16px; background: #fff; }
.et-filters .et-filter__btn:hover{ border-color: var(--et-navy, #1F3A56); }
.et-filters .et-filter__btn.is-active{ background: var(--et-navy, #1F3A56); }
.et-filters .et-ind-ico{ color: currentColor; }
.et-filter__n{ display: inline-block; min-width: 20px; padding: 1px 6px; border-radius: 999px; background: rgba(31,58,86,.08); font-size: 12px; line-height: 1.6; text-align: center; color: var(--et-navy, #1F3A56); }
.et-filter__btn.is-active .et-filter__n{ background: rgba(255,255,255,.22); color: #fff; }
.et-filter__status{ margin: 14px 0 0; min-height: 1.4em; font-size: 12.5px; color: var(--et-muted, #6E6A5D); }
.et-filter__empty{ padding: 36px 0; text-align: center; font-size: 14px; color: var(--et-muted, #6E6A5D); }
.et-chip--more{ background: transparent; border: 1px dashed var(--et-line, #CFC7B1); color: var(--et-muted, #6E6A5D); }
@media (max-width: 760px){.et-filters{ padding: 18px 16px 14px; }
.et-filter-row{ flex-direction: column; gap: 8px; }
.et-filter-row__label{ flex: none; padding-top: 0; }}
/* ===== よくある質問ページ(カテゴリー別・全件) ===== */
.et-faqpage{ padding: 0 72px 88px; max-width: 1160px; }
.et-faqpage > *{ max-width: 820px; }
.et-faqnav{ display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin: 0 0 12px; padding: 20px 22px; background: #FBF9F4; border: 1px solid var(--et-line, #E7E1D3); border-radius: 16px; }
.et-faqnav__label{ width: 100%; font-size: 12px; letter-spacing: .08em; font-weight: 700; color:var(--et-gold-ink); }
.et-faqnav__chip{ display: inline-flex; align-items: center; gap: 8px; padding: 8px 16px; background: #fff; border: 1px solid var(--et-line, #E7E1D3); border-radius: 999px; font-size: 13px; color: var(--et-ink, #20242B); text-decoration: none; transition: border-color .25s, color .25s; }
.et-faqnav__chip:hover{ border-color: var(--et-navy, #1F3A56); color: var(--et-navy, #1F3A56); }
.et-faqnav__chip span{ min-width: 20px; padding: 1px 6px; border-radius: 999px; background: rgba(31,58,86,.08); font-size: 12px; text-align: center; }
.et-faqgroup{ padding-top: 56px; scroll-margin-top: 90px; }
.et-faqgroup__head{ display: flex; align-items: baseline; justify-content: space-between; gap: 16px; flex-wrap: wrap; margin: 0 0 8px; padding-bottom: 14px; border-bottom: 2px solid var(--et-navy, #1F3A56); }
.et-faqgroup__head h2{ margin: 0; font-size: 22px; line-height: 1.5; color: var(--et-ink, #20242B); }
.et-faqgroup__head h2::before{ content: ""; display: inline-block; width: 8px; height: 8px; margin-right: 12px; background: var(--et-gold-deep, #A8893F); vertical-align: middle; }
.et-faqgroup__head .et-link-arrow{ font-size: 13px; }
.et-faqgroup .et-faq-item__q span:first-child{ text-align: left; }
@media (max-width: 760px){.et-faqpage{ padding: 0 20px 64px; }
.et-faqgroup{ padding-top: 40px; }
.et-faqgroup__head h2{ font-size: 19px; }}
/* ===== トップ:実績を大きく(数字を大きく) ===== */
.et-case-grid--lg{ display: grid; grid-template-columns: repeat(3, 1fr); gap: 28px; align-items: stretch; }
.et-case--lg{ display: flex; flex-direction: column; gap: 0; padding: 0 0 26px; background: #fff; border: 1px solid var(--et-line, #E7E1D3); border-radius: 22px; overflow: hidden; text-decoration: none; color: inherit; transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; }
.et-case--lg:hover{ transform: translateY(-6px); box-shadow: 0 22px 44px rgba(31,58,86,.14); border-color: var(--et-gold, #D9CBA8); }
.et-case--lg .et-case__img{ width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; border-radius:0; display: block; }
.et-case--lg .et-imgph.et-case__img{ height: auto; display: flex; align-items: center; justify-content: center; }
.et-case--lg .et-case__chips{ margin: 20px 26px 10px; }
.et-case--lg h3{ margin: 0 26px; font-size: 20px; line-height: 1.55; }
.et-case--lg .et-delta{ font-size: 13px; padding: 4px 11px; }
.et-case--lg .et-case__sum{ margin: 14px 26px 0; }
/* 一覧(事例ページ)のカードの数字も、少し大きく */
@media (max-width: 960px){.et-case-grid--lg{ grid-template-columns: 1fr; gap: 22px; }}
/* ===== 事例ページ:基本情報(支援内容を縦に並べる)・対応した内容・拡大表示 ===== */
.et-facts__list{ list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 4px; }
.et-facts__list li{ position: relative; padding-left: 14px; font-size: 14.5px; line-height: 1.6; color: var(--et-ink, #20242B); font-weight: 500; }
.et-facts__list li::before{ content: ""; position: absolute; left: 0; top: .72em; width: 6px; height: 6px; background: var(--et-gold-deep, #A8893F); }
.et-facts__list a{ color: var(--et-navy, #1F3A56); text-decoration: none; border-bottom: 1px solid #C9B88C; }
.et-facts__list a:hover{ border-bottom-color: var(--et-navy, #1F3A56); }
.et-facts__site{ color: var(--et-navy, #1F3A56); text-decoration: none; border-bottom: 1px solid #C9B88C; align-self: flex-start; }
.et-facts{ grid-template-columns: repeat(auto-fit, minmax(170px, 1fr)); }
.et-work__h small{ margin-left: auto; padding: 3px 12px; border-radius: 999px; background: #F1EBDA; color: #7A5F1F; font-size: 12px; font-weight: 600; }
.et-work__col--do .et-checklist--sm li{ font-size: 15px; font-weight: 500; }
.et-ba__zoom{ position: relative; display: block; width: 100%; padding: 0; border: 0; background: none; cursor: zoom-in; border-radius: 8px; overflow: hidden; }
.et-ba__zoom img{ transition: transform .4s ease; }
.et-ba__zoom:hover img{ transform: scale(1.02); }
.et-gal__slide img[data-zoom]{ cursor: zoom-in; }
.et-case-visual--sp{ display: grid; grid-template-columns: minmax(0, 1fr) 248px; grid-template-rows: auto auto; column-gap: 40px; row-gap: 0; align-items: center; }
/* パソコン画像:ブラウザの画面として見せる(控えめな枠・上部に「パソコンでの表示」) */
.et-case-visual--sp .et-gal{ display: contents; }
.et-case-visual--sp .et-gal__stage{ grid-column: 1; grid-row: 1; aspect-ratio: var(--ar, 1.6); background: #fff; border: 1px solid #D9D3C3; border-radius: 12px; box-shadow: 0 14px 30px rgba(31,58,86,.10); }
.et-case-visual--sp .et-gal__thumbs{ grid-column: 1; grid-row: 2; }
.et-gal__bar{ position: absolute; top: 0; left: 0; right: 0; z-index: 3; height: 32px; display: flex; align-items: center; gap: 6px; padding: 0 14px; background: #EEEBE3; border-bottom: 1px solid #D9D3C3; }
.et-gal__bar i{ width: 9px; height: 9px; border-radius: 50%; background: #CFC8B6; }
.et-gal__bar span{ margin-left: 10px; padding: 2px 14px; border-radius: 999px; background: #fff; font-size: 12px; color: var(--et-muted, #6E6A5D); line-height: 1.6; }
.et-case-visual--sp .et-gal__slide{ top: 32px; }
.et-case-visual--sp .et-gal__slide img{ background: #fff; object-position: top center; }
.et-case-visual--sp .et-gal__count{ top: 44px; }
.et-sp{ display: contents; }
.et-sp__frame{ grid-column: 2; grid-row: 1; display: block; width: 100%; height: auto; aspect-ratio: 9 / 19; align-self: center; padding: 8px; border: 0; background: #2B3643; border-radius: 28px; box-shadow: 0 14px 30px rgba(31,58,86,.14); cursor: zoom-in; box-sizing: border-box; }
.et-sp__frame img{ display: block; width: 100%; height: 100%; object-fit: cover; object-position: top center; border-radius: 21px; background: #fff; }
.et-sp figcaption{ grid-column: 2; grid-row: 2; margin-top: 14px; text-align: center; font-size: 12px; color: var(--et-muted, #6E6A5D); }
@media (max-width: 960px){.et-case-visual--sp{ grid-template-columns: 1fr; row-gap: 18px; }
.et-case-visual--sp .et-gal__stage{ grid-row: 1; }
.et-case-visual--sp .et-gal__thumbs{ grid-row: 2; }
.et-sp__frame{ grid-column: 1; grid-row: 3; width: min(240px, 70vw); height: auto; aspect-ratio: 9 / 19; justify-self: center; }
.et-sp__frame img{ height: 100%; }
.et-sp figcaption{ grid-column: 1; grid-row: 4; margin-top: 0; }}
.et-zoombox{ position: fixed; inset: 0; z-index: 9999; background: rgba(15,27,42,.9); display: flex; opacity: 0; transition: opacity .2s ease; }
.et-zoombox[hidden]{ display: none; }
.et-zoombox.is-open{ opacity: 1; }
.et-zoombox__scroll{ flex: 1; overflow: auto; display: flex; align-items: flex-start; justify-content: center; padding: 56px 24px 32px; cursor: zoom-out; }
.et-zoombox__scroll img{ display: block; max-width: min(1400px, 100%); height: auto; margin: auto 0; background: #fff; border-radius: 6px; box-shadow: 0 30px 80px rgba(0,0,0,.5); cursor: default; }
.et-zoombox__close{ position: absolute; top: 12px; right: 16px; z-index: 2; width: 44px; height: 44px; border: 0; border-radius: 50%; background: rgba(255,255,255,.16); color: #fff; font-size: 26px; line-height: 1; cursor: pointer; }
.et-zoombox__close:hover{ background: rgba(255,255,255,.3); }
.et-zoom-lock{ overflow: hidden; }
/* 事例ページの下部:一覧へ・次の事例 */
.et-case--lg h3{ margin: 0 26px ; font-size: 20px ; line-height: 1.55 ; }
/* 事例ページ:無料診断の箇条書きと、費用の目安(税別) */
.et-case-aside__sub{margin:18px 0 8px;font-size:12px;letter-spacing:.08em;font-weight:700;color:#D9CBA8}
.et-case-aside__price{margin-top:20px;padding-top:16px;border-top:1px solid rgba(217,203,168,.35)}
.et-case-aside__price dl{margin:0}
.et-case-aside__price dl>div{display:flex;justify-content:space-between;gap:12px;padding:7px 0;border-bottom:1px solid rgba(255,255,255,.12);font-size:13px}
.et-case-aside__price dt{margin:0}
.et-case-aside__price dd{margin:0;font-weight:700;text-align:right}
.et-case-aside__price .et-case-aside__note{margin-top:10px;font-size:12px;line-height:1.7;opacity:.8}
/* 矢印つきボタン・ほかの事例ボックス */
.et-btn-arrow{display:inline-block;margin-left:10px;transition:transform .2s}
.et-btn-primary:hover .et-btn-arrow{transform:translateX(4px)}
.et-case-related__box{background:#fff;border:1px solid rgba(31,58,86,.14);border-top:3px solid #A8893F;padding:36px 36px 32px;box-shadow:0 10px 30px rgba(31,58,86,.06)}
.et-case-related__head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;padding-bottom:18px;border-bottom:1px solid rgba(31,58,86,.14)}
.et-case-related__eyebrow{margin:0 0 4px;font-size:12px;letter-spacing:.18em;color:var(--et-gold-ink);font-weight:700}
.et-case-related__title{margin:0;font-size:26px;color:#1F3A56}
.et-case-related__all{font-size:14px;font-weight:700;color:#1F3A56;text-decoration:none;white-space:nowrap}
.et-case-related__all span{margin-left:6px}
.et-case-related__foot{margin:28px 0 0;text-align:center}
@media (max-width:768px){.et-case-related__box{padding:24px 18px}
.et-case-related__head{flex-direction:column;align-items:flex-start}
.et-case-related__title{font-size:22px}
.et-case-related__foot .et-btn-primary{width:100%;justify-content:center;box-sizing:border-box}}
/* ほかの事例:外枠は外し、1件ずつをトップと同じカード(ボックス)にする */
.et-case-related__box{background:transparent;border:0;border-top:0;box-shadow:none;padding:0}
.et-case-related .et-case-grid--lg{margin-top:28px}
/* =====================================================================
   統一・追加ブロック(最後に読み込まれる部分)
   カード・余白・色(コントラスト)・フォーカス・動きの設定・新パーツ
   ===================================================================== */
:root{
  --et-gold-ink:#7A5F22;      /* 明るい背景の上で使う、文字用の濃いゴールド(白地で約6:1) */
  --et-gold-deep:#A8893F;     /* 罫線・図形用の深いゴールド(文字には使いません) */
  --et-faint:#736B57;         /* 注記などの薄い文字色(白地で約5:1) */
  --et-sec-y:96px;            /* セクション間の余白(PC) */
  --et-card-r:20px;
  --et-card-shadow:0 22px 44px rgba(31,58,86,.14);
  --et-card-lift:-6px;
  --et-card-t:transform .3s ease,box-shadow .3s ease,border-color .3s ease;
}
@media (max-width:768px){ :root{ --et-sec-y:56px; } }

/* ---------- カードの統一(角丸・影・ホバー) ---------- */
.et-svc-card,.et-case--lg,.et-newscard,.et-sd-scope__card,.et-sd-other,.et-pain__card,.et-fact,.et-res,.et-faq-item{border-radius:var(--et-card-r);}
.et-svc-card,.et-case--lg,.et-newscard,.et-sd-scope__card,.et-sd-other,.et-pain__card,.et-fact,.et-faq-item{transition:var(--et-card-t);}
.et-svc-card:hover,.et-case--lg:hover,.et-newscard:hover,.et-sd-scope__card:hover,.et-sd-other:hover,.et-pain__card:hover,.et-fact:hover{transform:translateY(var(--et-card-lift));box-shadow:var(--et-card-shadow);border-color:var(--et-gold);}
.et-faq-item{background:var(--et-surface);border:1px solid var(--et-line);margin:0 0 12px;overflow:hidden;}
.et-faq-item:hover,.et-faq-item.is-open{box-shadow:0 12px 28px rgba(31,58,86,.10);border-color:var(--et-gold);}

/* ---------- 余白の統一(PC 96px / スマホ 56px) ---------- */
.et-faq-top,.et-diag{padding-top:var(--et-sec-y);padding-bottom:var(--et-sec-y);}
.et-sd-sec{padding-top:var(--et-sec-y);}
.et-sd-band{margin-top:var(--et-sec-y);padding-top:var(--et-sec-y);padding-bottom:var(--et-sec-y);}
.et-biz-sec{padding-bottom:var(--et-sec-y);}
.et-cta2-wrap{padding-bottom:var(--et-sec-y);}
.et-darkband{padding-top:var(--et-sec-y);padding-bottom:var(--et-sec-y);}
.et-contact,.et-case-related,.et-faqpage{padding-bottom:var(--et-sec-y);}
.et-si-list{gap:calc(var(--et-sec-y) * .85);}
.et-hero--tiles{padding-bottom:var(--et-sec-y);}

/* ---------- 色(文字のコントラスト) ---------- */
.et-eyebrow--gold,.et-plain-row__num,.et-flow__step b,.et-faq-item__icon{color:var(--et-gold-ink);}
.et-case-aside__sub{color:var(--et-gold-ink);}
.et-case-aside__price{border-top-color:var(--et-line);}
.et-case-aside__price dl>div{border-bottom-color:var(--et-line);}
.et-case-aside__price .et-case-aside__note{opacity:1;}

/* ---------- フォーカスの見え方(キーボード操作) ---------- */
.et-page a:focus-visible,.et-page button:focus-visible,.et-page summary:focus-visible,.et-page input:focus-visible,.et-page select:focus-visible,.et-page textarea:focus-visible,.et-page [tabindex]:focus-visible{outline:3px solid var(--et-navy);outline-offset:3px;border-radius:6px;}
.et-cta2 :focus-visible,.et-darkband :focus-visible,.et-svc-card :focus-visible,.et-zoombox :focus-visible,.et-footer :focus-visible{outline-color:#fff;}

/* ---------- 「動きを減らす」設定 ---------- */
@media (prefers-reduced-motion: reduce){
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important;scroll-behavior:auto !important;}
  .reveal{opacity:1 !important;transform:none !important;}
}

/* ---------- スマホ固定バー(無料診断+LINE) ---------- */
.et-sticky__arrow{margin-left:8px;transition:transform .2s;}
.et-sticky__main:active .et-sticky__arrow{transform:translateX(3px);}
.et-sticky__line{white-space:nowrap;}/* ---------- 相談の流れ(横タイムライン) ---------- */
.et-flowtl{padding:var(--et-sec-y) 0;background:linear-gradient(180deg,var(--et-bg),var(--et-panel));border-top:1px solid var(--et-line);}
.et-flowtl--compact{background:var(--et-bg);padding-top:0;border-top:0;}
.et-flowtl__h{margin:10px 0 0;font-size:clamp(24px,3vw,34px);line-height:1.5;font-weight:600;color:var(--et-navy);}
.et-flowtl__list{list-style:none;margin:48px 0 0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;position:relative;counter-reset:none;}
.et-flowtl__list::before{content:"";position:absolute;left:8%;right:8%;top:23px;height:2px;background:linear-gradient(90deg,var(--et-gold-deep),var(--et-navy));opacity:.45;}
.et-flowtl__step{position:relative;background:var(--et-surface);border:1px solid var(--et-line);border-radius:var(--et-card-r);padding:0 22px 24px;}
.et-flowtl__no{display:flex;align-items:center;justify-content:center;width:46px;height:46px;margin:-23px auto 0;border-radius:50%;background:var(--et-navy);color:#fff;font-family:var(--et-font-serif);font-size:20px;font-weight:600;box-shadow:0 0 0 6px var(--et-panel);position:relative;z-index:1;}
.et-flowtl--compact .et-flowtl__no{box-shadow:0 0 0 6px var(--et-bg);}
.et-flowtl__step h3{margin:14px 0 0;font-size:19px;line-height:1.5;text-align:center;color:var(--et-navy);font-weight:600;}
.et-flowtl__tag{display:block;margin:8px auto 0;width:max-content;max-width:100%;padding:3px 12px;border-radius:100px;background:#F3EAD3;color:var(--et-gold-ink);font-family:var(--et-font-sans);font-size:12px;font-weight:600;letter-spacing:.04em;}
.et-flowtl__step dl{margin:18px 0 0;display:grid;gap:14px;}
.et-flowtl__step dl>div{display:grid;gap:4px;}
.et-flowtl__step dt{font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--et-gold-ink);}
.et-flowtl__step dd{margin:0;font-size:13.5px;line-height:1.85;color:var(--et-muted);}
.et-flowtl__promise{margin:32px 0 0;padding:16px 22px;border:1px solid var(--et-gold);border-radius:var(--et-card-r);background:#FBF6E9;font-size:14.5px;line-height:1.8;color:var(--et-navy);font-weight:600;text-align:center;}
.et-flowtl__promise span{display:inline-block;margin-right:8px;color:var(--et-gold-ink);font-weight:700;}
@media (max-width:960px){
  .et-flowtl__list{grid-template-columns:1fr;gap:14px;margin-top:32px;}
  .et-flowtl__list::before{display:none;}
  .et-flowtl__step{padding:20px 20px 22px 70px;}
  .et-flowtl__no{position:absolute;left:16px;top:18px;margin:0;box-shadow:none;}
  .et-flowtl__step h3{margin:0;text-align:left;}
  .et-flowtl__tag{margin:8px 0 0;}
}

/* ---------- フォームの手順表示 ---------- */
.et-fsteps-wrap{padding-bottom:32px;}
.et-fsteps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;}
.et-fsteps__item{display:flex;gap:14px;align-items:flex-start;padding:16px 18px;background:var(--et-surface);border:1px solid var(--et-line);border-radius:16px;}
.et-fsteps__item.is-current{border-color:var(--et-navy);box-shadow:0 10px 24px rgba(31,58,86,.10);}
.et-fsteps__item.is-done{background:var(--et-panel);}
.et-fsteps__no{flex:none;display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--et-panel);color:var(--et-navy);font-weight:700;font-size:14px;border:1px solid var(--et-line);}
.is-current .et-fsteps__no,.is-done .et-fsteps__no{background:var(--et-navy);color:#fff;border-color:var(--et-navy);}
.et-fsteps__txt{display:grid;gap:3px;min-width:0;}
.et-fsteps__txt b{font-size:15px;color:var(--et-navy);}
.et-fsteps__txt small{font-size:12.5px;line-height:1.7;color:var(--et-muted);}
@media (max-width:768px){.et-fsteps{grid-template-columns:1fr;gap:8px}.et-fsteps-wrap{padding-bottom:20px}}

/* ---------- 送信完了:このあと、次のように進みます ---------- */
.et-thanksnext{max-width:720px;margin:0 auto;padding:8px 24px 40px;}
.et-thanksnext h2{margin:0 0 20px;font-size:22px;text-align:center;color:var(--et-navy);}
.et-thanksnext ol{list-style:none;margin:0;padding:0;display:grid;gap:12px;}
.et-thanksnext li{display:flex;gap:16px;align-items:flex-start;padding:18px 20px;background:var(--et-surface);border:1px solid var(--et-line);border-radius:16px;}
.et-thanksnext__no{flex:none;display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:var(--et-navy);color:#fff;font-weight:700;font-size:14px;}
.et-thanksnext b{display:block;font-size:15px;color:var(--et-navy);}
.et-thanksnext p{margin:4px 0 0;font-size:13.5px;line-height:1.85;color:var(--et-muted);}

/* ---------- お悩みから選ぶ ---------- */
.et-pain{padding:var(--et-sec-y) 0 calc(var(--et-sec-y) * .5);}
.et-pain__h{margin:10px 0 0;font-size:clamp(24px,3vw,34px);line-height:1.5;font-weight:600;color:var(--et-navy);}
.et-pain__lead{margin:14px 0 0;max-width:640px;font-size:14.5px;line-height:1.95;color:var(--et-muted);}
.et-pain__grid{margin-top:36px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.et-pain__card{display:flex;flex-direction:column;gap:12px;background:var(--et-surface);border:1px solid var(--et-line);padding:28px 26px 22px;}
.et-pain__q{margin:0;font-family:var(--et-font-serif);font-size:18px;line-height:1.65;font-weight:600;color:var(--et-navy);}
.et-pain__q span{margin-right:2px;color:var(--et-gold-deep);font-size:28px;line-height:0;vertical-align:-.25em;}
.et-pain__a{margin:0;font-size:13.5px;line-height:1.9;color:var(--et-muted);}
.et-pain__card ul{list-style:none;margin:auto 0 0;padding:14px 0 0;border-top:1px solid var(--et-line);display:grid;gap:4px;}
.et-pain__card li a{display:flex;align-items:center;gap:10px;padding:8px 6px;border-radius:10px;font-size:14px;font-weight:600;color:var(--et-navy);}
.et-pain__card li a:hover{background:var(--et-panel);}
.et-pain__ico{flex:none;display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border-radius:9px;background:linear-gradient(145deg,#F3EAD3,#C9B88C);color:var(--et-navy);}
.et-pain__go{margin-left:auto;color:var(--et-gold-ink);}
@media (max-width:960px){.et-pain__grid{grid-template-columns:1fr}}

/* ---------- トップのヒーロー:背景に流れる大きな文字(以前はスタイルが無く、上部にそのまま表示されていました) ---------- */
.et-hero__marquee-track{position:absolute;top:28px;left:0;z-index:0;display:flex;width:max-content;pointer-events:none;user-select:none;font-family:var(--et-font-serif);font-size:128px;line-height:1.1;font-weight:700;color:transparent;-webkit-text-stroke:1px var(--et-line);white-space:nowrap;letter-spacing:.01em;animation:et-marquee-x 70s linear infinite;}
.et-hero__marquee-track span{flex:none;padding-right:.6em;}
@keyframes et-marquee-x{from{transform:translateX(0);}to{transform:translateX(-50%);}}
@media (max-width:960px){.et-hero__marquee-track{font-size:72px;top:20px;}}
@media (prefers-reduced-motion: reduce){.et-hero__marquee-track{animation:none;}}

/* ---------- よくある質問:カード化したときの内側の余白 ---------- */
.et-faq-item .et-faq-item__q{padding:20px 24px;}
.et-faq-item .et-faq-item__a{padding:0 24px 22px;max-width:none;}
@media (max-width:768px){.et-faq-item .et-faq-item__q{padding:18px 18px;}.et-faq-item .et-faq-item__a{padding:0 18px 20px;}}

/* ---------- お知らせの記事ページ ---------- */
.et-post__hero{max-width:860px;}
.et-post__meta{display:flex;gap:12px;align-items:center;margin-top:8px;}
.et-post__tag{display:inline-block;font-size:12px;padding:5px 14px;border-radius:100px;background:var(--et-panel);color:var(--et-navy);font-weight:600;}
.et-post__date{font-size:13px;color:var(--et-faint);letter-spacing:.04em;}
.et-post__title{margin:14px 0 0;font-size:clamp(26px,3.4vw,38px);line-height:1.5;font-weight:600;}
.et-post__body{max-width:860px;padding-bottom:var(--et-sec-y);}
.et-post__thumb{margin:0 0 40px;}
.et-post__img{display:block;width:100%;height:auto;border-radius:var(--et-card-r);}
.et-entry-content{font-size:16px;line-height:2.05;color:var(--et-ink);overflow-wrap:anywhere;}
.et-entry-content>*:first-child{margin-top:0;}
.et-entry-content p{margin:0 0 1.7em;}
.et-entry-content h2{margin:2.4em 0 .9em;padding:0 0 .5em;font-family:var(--et-font-serif);font-size:clamp(21px,2.6vw,26px);line-height:1.6;font-weight:600;color:var(--et-navy);border-bottom:2px solid var(--et-gold);}
.et-entry-content h3{margin:2em 0 .8em;padding-left:14px;border-left:4px solid var(--et-gold);font-family:var(--et-font-serif);font-size:clamp(18px,2.2vw,21px);line-height:1.6;font-weight:600;color:var(--et-navy);}
.et-entry-content ul,.et-entry-content ol{margin:0 0 1.7em;padding-left:1.5em;}
.et-entry-content li{margin:.3em 0;}
.et-entry-content a{color:var(--et-navy);text-decoration:underline;text-underline-offset:3px;}
.et-entry-content img{max-width:100%;height:auto;border-radius:14px;}
.et-entry-content figure{margin:0 0 1.7em;}
.et-entry-content figcaption{margin-top:8px;font-size:13px;color:var(--et-faint);}
.et-entry-content blockquote{margin:0 0 1.7em;padding:18px 24px;border-left:4px solid var(--et-gold);background:var(--et-panel);border-radius:0 14px 14px 0;color:var(--et-muted);}
.et-entry-content table{width:100%;margin:0 0 1.7em;border-collapse:collapse;font-size:15px;}
.et-entry-content th,.et-entry-content td{padding:12px 14px;border:1px solid var(--et-line);text-align:left;}
.et-entry-content th{background:var(--et-panel);color:var(--et-navy);}
@media (max-width:768px){.et-entry-content{font-size:15px;line-height:2;}}
.et-post__hero{padding-bottom:36px;}

/* ---------- ページ冒頭(見出しと説明の文字サイズにメリハリ) ---------- */
.et-page-hero{padding-top:40px;padding-bottom:40px;}
.et-page-hero .et-breadcrumb{margin-bottom:32px;}
.et-page-hero .et-eyebrow{margin:0 0 12px;font-size:13px;letter-spacing:.2em;color:var(--et-gold-ink);}
.et-page-hero h1{margin:0;font-family:var(--et-font-serif);font-size:clamp(34px,4.6vw,52px);line-height:1.35;font-weight:600;letter-spacing:.02em;color:var(--et-ink);}
.et-page-hero p{margin:20px 0 0;max-width:640px;font-size:15px;line-height:2;font-weight:400;color:var(--et-muted);}
@media (max-width:768px){.et-page-hero{padding-top:24px;padding-bottom:28px;}.et-page-hero .et-breadcrumb{margin-bottom:24px;}.et-page-hero p{font-size:14px;margin-top:16px;}}

/* ---------- 事例のタイトル:通常の本文と同じフォント ---------- */
.et-case h3,.et-case--lg h3{font-family:var(--et-font-sans);font-weight:700;}
.et-casehero__title{font-family:var(--et-font-sans);font-weight:700;}

/* ---------- サービス詳細:料金の下のボタンと、次の区切り線が重なっていたため余白を追加 ---------- */
.et-sd-sec#price{padding-bottom:calc(var(--et-sec-y) * .6);}
.et-page-hero .et-casehero__title{max-width:860px;margin:16px 0 0;font-family:var(--et-font-sans);font-size:clamp(26px,3.4vw,40px);line-height:1.5;font-weight:700;letter-spacing:0;}
.et-page-hero .et-casehero__lead{max-width:720px;margin:18px 0 0;font-size:16px;line-height:1.9;}
.et-page-hero .et-casehero__disc{margin:12px 0 0;font-size:12px;line-height:1.7;}
.et-page-hero .et-post__title{margin:14px 0 0;font-size:clamp(26px,3.4vw,38px);line-height:1.5;}
@media (max-width:768px){.et-page-hero .et-casehero__lead{font-size:15px;}}
.et-faqpage{max-width:1440px;}
.et-results + .et-points{margin-top:40px;}

@media (min-width:961px){.et-points{grid-template-columns:repeat(var(--n,3),minmax(0,1fr));}}
