/* ============================================================
   award.css — 全ページ共通の仕上げ層（2026-10-04）
   読込順: sub.css / index内style → mobile-fix.css → award.css（最後）
   ・見出しの型、下層ページの写真ヘッダー、余白とグリッド、イラスト、モーション
   ・動きは html.aw のときだけ初期状態を隠す（JSが無ければ全部そのまま見える）
   ・prefers-reduced-motion: 移動・拡大・視差・遷移幕を止め、短いフェードだけ残す
   ============================================================ */
:root{
  --aw-navy:#0f1b33;
  --aw-navy-2:#1d2a44;
  --aw-paper:#f3f6fb;
  --aw-ease:cubic-bezier(.16,1,.3,1);
  --aw-ease-io:cubic-bezier(.65,0,.35,1);
}
html body{font-feature-settings:"palt" 1;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:#316de4;color:#fff}

/* ---------- 見出しの型：小さな番号付き英字ラベル＋大きな日本語 ---------- */
html body{counter-reset:awsec}
html body .sec-head .sec-en:not(.lom-label),html body #service .sec-head .sec-en,html body .news-sec .sec-head .sec-en{
  display:flex;align-items:center;gap:14px;
  font-family:Inter,"Noto Sans JP",sans-serif;font-size:12.5px;font-weight:600;line-height:1;
  letter-spacing:.22em;text-transform:uppercase;color:var(--brand,#316de4);margin:0 0 22px
}
html body .sec-head .sec-en:not(.lom-label)::first-letter{color:inherit}
html body .sec-head .sec-en:not(.lom-label)::before{
  counter-increment:awsec;content:counter(awsec,decimal-leading-zero);
  font-variant-numeric:tabular-nums;color:var(--ink,#202733);letter-spacing:.06em
}
html body .sec-head .sec-en:not(.lom-label)::after{content:"";order:-1;display:none}
html body .sec-head .sec-en:not(.lom-label) + .sec-ja,
html body .sec-head .sec-ja,html body #service .sec-head .sec-ja,html body .os-text .sec-head .sec-ja,html body .side .sec-head .sec-ja{
  font-size:clamp(26px,3.1vw,44px);font-weight:700;line-height:1.42;letter-spacing:.01em;margin-top:0;padding-top:0
}
html body .sec-head .sec-ja::before{display:none}
html body .sec-head .sec-lead{font-size:clamp(14px,1.15vw,16px);line-height:2;margin-top:22px;max-width:640px;letter-spacing:.02em;font-weight:400}
html body .lom .sec-head .sec-lead{color:rgba(255,255,255,.78)}
html body .lom .sec-head .sec-ja{color:#fff}
html body .sec-head{margin-bottom:clamp(36px,4.5vw,64px)}
html body .sec-head[style*="center"] .sec-en{justify-content:center}
.band .sec-head .sec-en:not(.lom-label),.cta-band .sec-en,.dark .sec-head .sec-en:not(.lom-label){color:#9cc0ff}
.band .sec-head .sec-en:not(.lom-label)::before,.dark .sec-head .sec-en:not(.lom-label)::before{color:#fff}

/* ---------- 下層ページ：幅と余白 ---------- */
body.aw-sub{--maxw:1120px}
body.aw-sub section{padding:clamp(64px,8vw,128px) 0}
body.aw-sub .body-txt p{font-size:15.5px;line-height:2.05}
body.aw-sub .crumb{position:absolute;left:0;right:0;top:0;z-index:5;background:transparent;border:0;margin-top:74px}
body.aw-sub .crumb .wrap{max-width:1240px;color:rgba(255,255,255,.7)}
body.aw-sub .crumb a{color:#fff;font-weight:600}
body.aw-sub .crumb .sep{color:rgba(255,255,255,.4)}
body.aw-sub.no-ph .crumb{position:static;margin-top:74px}
body.aw-sub.no-ph .crumb .wrap{color:var(--ink-3)}
body.aw-sub.no-ph .crumb a{color:var(--brand)}

/* ---------- 下層ページ：写真ヘッダー（全幅・左に文字・右に写真が見える） ---------- */
body.aw-sub .page-head{
  min-height:clamp(480px,72vh,720px);display:flex;align-items:flex-end;
  padding:150px 0 clamp(56px,7vw,96px);background:var(--aw-navy);overflow:hidden
}
body.aw-sub .page-head .ph-bg{overflow:hidden}
body.aw-sub .page-head .ph-bg img{object-position:center 50%;will-change:transform}
body.aw-sub .page-head .ph-bg::after{
  background:
    linear-gradient(90deg,rgba(10,18,36,.92) 0%,rgba(10,18,36,.74) 34%,rgba(10,18,36,.18) 72%,rgba(10,18,36,.05) 100%),
    linear-gradient(0deg,rgba(10,18,36,.55) 0%,rgba(10,18,36,0) 42%),
    linear-gradient(180deg,rgba(10,18,36,.55) 0%,rgba(10,18,36,0) 24%)
}
body.aw-sub .page-head .route-line{display:none}
body.aw-sub .page-head .wrap-wide,body.aw-sub .page-head>.wrap{width:100%;max-width:1240px}
body.aw-sub .page-head .en{font-size:12px;font-weight:600;letter-spacing:.24em;color:#9cc0ff}
body.aw-sub .page-head .en::before{width:36px;height:1px;background:#9cc0ff}
body.aw-sub .page-head h1{font-size:clamp(30px,4.3vw,62px);font-weight:700;line-height:1.32;letter-spacing:.01em;margin-top:22px;max-width:15em}
body.aw-sub .page-head h1 .u{border:0;color:#fff;background:linear-gradient(transparent 88%,rgba(156,192,255,.7) 88%)}
body.aw-sub .page-head .lead{font-size:clamp(14px,1.1vw,16px);line-height:2;color:rgba(255,255,255,.82);max-width:600px;margin-top:26px}
body.aw-sub .page-head .aw-scroll{position:absolute;right:clamp(20px,4vw,56px);bottom:40px;z-index:2;display:flex;align-items:center;gap:12px;
  font:600 10px/1 Inter,sans-serif;letter-spacing:.3em;color:rgba(255,255,255,.7);writing-mode:vertical-rl}
body.aw-sub .page-head .aw-scroll::after{content:"";width:1px;height:64px;background:linear-gradient(rgba(255,255,255,.7),rgba(255,255,255,0));animation:aw-drip 2.2s var(--aw-ease-io) infinite}
@keyframes aw-drip{0%{transform:scaleY(0);transform-origin:top}45%{transform:scaleY(1);transform-origin:top}55%{transform:scaleY(1);transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
body.aw-sub .svc-tabs{background:#fff;position:relative;z-index:3}
body.aw-sub .svc-tabs .wrap{max-width:1240px}
body.aw-sub .svc-tabs a{font-size:13px;padding:20px 8px;position:relative}
body.aw-sub .svc-tabs a.on{background:#fff;color:var(--ink);border-color:var(--line)}
body.aw-sub .svc-tabs a.on::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:3px;background:var(--brand)}
@media(max-width:768px){
  body.aw-sub .page-head{min-height:0;padding:132px 0 48px}
  body.aw-sub .page-head .ph-bg::after{background:linear-gradient(0deg,rgba(10,18,36,.94) 0%,rgba(10,18,36,.72) 55%,rgba(10,18,36,.35) 100%)}
  body.aw-sub .page-head .aw-scroll{display:none}
  body.aw-sub .crumb .wrap{font-size:11px}
}

/* ---------- 下層：仕組みステップ（写真を大きく、番号を主役に） ---------- */
body.aw-sub .mech{gap:clamp(32px,6vw,96px);padding:clamp(48px,6vw,88px) 0;grid-template-columns:5fr 6fr}
body.aw-sub .mech.rev{grid-template-columns:6fr 5fr}
body.aw-sub .mech:nth-of-type(odd)::before{background:var(--aw-paper)}
body.aw-sub .mech .no{font-size:11px;letter-spacing:.24em;color:var(--brand)}
body.aw-sub .mech .no b{font-size:clamp(44px,5vw,72px);font-weight:700;color:transparent;-webkit-text-stroke:1.2px var(--brand);letter-spacing:-.03em;font-family:Inter,sans-serif}
body.aw-sub .mech h3{font-size:clamp(20px,1.8vw,26px);font-weight:700;line-height:1.55;margin-top:16px}
body.aw-sub .mech p{font-size:15px;line-height:2}
body.aw-sub .mech .fig{border-radius:6px;box-shadow:0 30px 60px -36px rgba(15,27,51,.45);aspect-ratio:3/2}
body.aw-sub .mech .fig.fig-ill{background:var(--aw-paper);box-shadow:none;border:1px solid #e3eaf4}
@media(max-width:768px){body.aw-sub .mech,body.aw-sub .mech.rev{grid-template-columns:1fr}}

/* ---------- 下層：カード類の質感をそろえる ---------- */
body.aw-sub .prob-grid{gap:0;background:none;border:0;border-top:1px solid var(--line)}
body.aw-sub .prob-card{padding:36px 28px 36px 0;border-bottom:1px solid var(--line);background:none}
body.aw-sub .prob-card+.prob-card{padding-left:28px;border-left:1px solid var(--line)}
body.aw-sub .prob-card h3{font-size:18px}
body.aw-sub .prob-card p{font-size:14px;line-height:1.95}
@media(max-width:768px){body.aw-sub .prob-card+.prob-card{padding-left:0;border-left:0}}
body.aw-sub .dl-list li,body.aw-sub .type-card,body.aw-sub .gis-card,body.aw-sub .sample-box,body.aw-sub .effect-box{border-radius:6px;transition:transform .5s var(--aw-ease),box-shadow .5s var(--aw-ease),border-color .3s}
body.aw-sub .dl-list li:hover,body.aw-sub .type-card:hover,body.aw-sub .gis-card:hover{transform:translateY(-4px);box-shadow:0 22px 40px -28px rgba(15,27,51,.4)}
body.aw-sub .rel-grid{background:none;border:0;gap:16px}
body.aw-sub .rel-grid a{border:1px solid var(--line);border-radius:6px;padding:28px;position:relative;overflow:hidden;isolation:isolate}
body.aw-sub .rel-grid a::before{content:"";position:absolute;inset:0;background:var(--aw-navy);transform:scaleY(0);transform-origin:bottom;transition:transform .55s var(--aw-ease);z-index:-1}
body.aw-sub .rel-grid a:hover{color:#fff;background:#fff}
body.aw-sub .rel-grid a:hover::before{transform:scaleY(1)}
body.aw-sub .rel-grid a:hover small{color:#9cc0ff}
body.aw-sub .cta-band{background:var(--aw-navy);padding:clamp(80px,10vw,140px) 0}
body.aw-sub .cta-band::after{content:"";position:absolute;inset:0;background:radial-gradient(80% 120% at 50% 120%,rgba(49,109,228,.55),transparent 60%)}
body.aw-sub .cta-band h2{font-size:clamp(22px,2.6vw,36px);font-weight:700;line-height:1.55}
body.aw-sub .faq summary{font-size:16px;padding:24px 4px}
body.aw-sub .stat-row .s .nm,body.aw-sub .effect-box .col .num{font-weight:700;letter-spacing:-.03em}

/* ---------- 写真の見せ方 ---------- */
.aw-photo-wide{margin:clamp(40px,5vw,72px) 0 0;border-radius:6px;overflow:hidden;aspect-ratio:21/9;position:relative}
.aw-photo-wide img{width:100%;height:100%;object-fit:cover}
.aw-photo-wide figcaption{position:absolute;left:20px;bottom:16px;font:600 11px/1 Inter,sans-serif;letter-spacing:.2em;color:#fff;text-shadow:0 1px 8px rgba(0,0,0,.4)}

/* ---------- イラスト（インラインSVG） ---------- */
.ill{position:relative}
.ill svg{display:block;width:100%;height:auto}
.ill-town .t-ground{fill:#f3f6fb}
.ill-town .t-river{fill:none;stroke:#cfe0f7;stroke-width:58;stroke-linecap:round;stroke-linejoin:round}
.ill-town .t-block{fill:#e6ecf5}
.ill-town .t-park{fill:#dcebe3}
.ill-town .t-main{fill:none;stroke:#fff;stroke-width:22;stroke-linecap:round}
.ill-town .t-houses polygon{fill:#fff;stroke:#c9d4e5;stroke-width:1}
.ill-town .t-houses polygon.big{fill:#f8fafd}
.ill-town .t-route{fill:none;stroke:#316de4;stroke-width:4;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:0}
.ill-town .t-hits circle{fill:#316de4;stroke:#fff;stroke-width:1.5;transform-box:fill-box;transform-origin:center}
.ill-town .t-pin{offset-distance:100%;offset-rotate:0deg}
.ill-town .t-pin circle{fill:#1d2a44;stroke:#fff;stroke-width:3}
.ill-town .t-pin .halo,.ill-town .t-shop .halo{fill:rgba(49,109,228,.18);stroke:none}
.ill-town .t-heat polygon{stroke:none}
.ill-town .t-heat .lv1{fill:#d6e4fb}.ill-town .t-heat .lv2{fill:#a9c5f5}.ill-town .t-heat .lv3{fill:#6d9cec}.ill-town .t-heat .lv4{fill:#316de4}
.ill-town.ill-heat .t-houses polygon{fill:rgba(255,255,255,.55);stroke:rgba(29,42,68,.12)}
.ill-town .t-qr circle{fill:#fff;stroke:#1d2a44;stroke-width:2.5;transform-box:fill-box;transform-origin:center}
.ill-town .t-sel polygon{fill:rgba(49,109,228,.20);stroke:#316de4;stroke-width:2}
.ill-town.ill-area .t-houses polygon{fill:rgba(255,255,255,.7)}
.ill-town .t-rings circle{fill:none;stroke:#1d2a44;stroke-width:1.5;stroke-dasharray:6 7;opacity:.55}
.ill-town .t-shop circle{fill:#1d2a44;stroke:#fff;stroke-width:3}
.ill-japan circle{fill:#c3d4f1}
.ill-japan [data-r=kanto] circle{fill:#316de4}
.ill-cycle text,.ill-dash text{font-family:"Noto Sans JP",sans-serif}
.ill-cycle .cy-arc,.ill-dash .dz-line{stroke-dasharray:1;stroke-dashoffset:0}
.ill-cycle .cy-runner{animation:aw-spin 14s linear infinite}
.ill-dash .lg.lv1{fill:#d6e4fb}.ill-dash .lg.lv2{fill:#a9c5f5}.ill-dash .lg.lv3{fill:#6d9cec}.ill-dash .lg.lv4{fill:#316de4}
@keyframes aw-spin{to{transform:rotate(360deg)}}
.ill-legend{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:14px;font-size:12px;color:var(--ink-3,#8a8fa3)}
.ill-legend span{display:inline-flex;align-items:center;gap:8px}
.ill-legend i{width:10px;height:10px;border-radius:50%;background:#316de4;display:inline-block}
.ill-legend i.ln{width:22px;height:3px;border-radius:2px}
.ill-legend i.nv{background:#1d2a44}
.ill-legend i.sel{border-radius:2px;background:rgba(49,109,228,.25);outline:1.5px solid #316de4}
/* 再生前（html.aw かつ未再生のときだけ） */
html.aw .ill:not(.play) .t-route{stroke-dashoffset:1}
html.aw .ill:not(.play) .t-hits circle,html.aw .ill:not(.play) .t-qr circle{transform:scale(0)}
html.aw .ill:not(.play) .t-pin{offset-distance:0%}
html.aw .ill:not(.play) .t-heat polygon,html.aw .ill:not(.play) .t-sel polygon{opacity:0}
html.aw .ill:not(.play) .t-rings circle{opacity:0}
html.aw .ill:not(.play) .ill-japan circle{opacity:.0}
html.aw .ill:not(.play) .cy-arc,html.aw .ill:not(.play) .dz-line{stroke-dashoffset:1}
html.aw .ill:not(.play) .cy-node{opacity:0;transform-box:fill-box}
html.aw .ill:not(.play) .dz-bar,html.aw .ill:not(.play) .cy-bar{transform:scaleY(0)}
.ill .t-route{transition:stroke-dashoffset 3.4s cubic-bezier(.45,.05,.35,1) .3s}
.ill .t-pin{transition:offset-distance 3.4s cubic-bezier(.45,.05,.35,1) .3s}
.ill .t-hits circle{transition:transform .5s var(--aw-ease);transition-delay:calc(.3s + var(--d,0) * 3.4s)}
.ill .t-heat polygon{transition:opacity .9s ease;transition-delay:calc(var(--d,0) * 1.6s)}
.ill .t-qr circle{transition:transform .5s var(--aw-ease);transition-delay:calc(1.2s + var(--d,0) * 1.2s)}
.ill .t-sel polygon{transition:opacity .8s ease;transition-delay:calc(.6s + var(--d,0) * 1.4s)}
.ill .t-rings circle{transition:opacity 1s ease .2s}
.ill .t-shop .halo,.ill .t-pin .halo{animation:aw-pulse 2.4s ease-out infinite;transform-box:fill-box;transform-origin:center}
@keyframes aw-pulse{0%{transform:scale(.6);opacity:1}100%{transform:scale(2.2);opacity:0}}
.ill .ill-japan circle{transition:opacity .6s ease}
.ill .ill-japan [data-r=hokkaido] circle{transition-delay:.1s}.ill .ill-japan [data-r=tohoku] circle{transition-delay:.3s}
.ill .ill-japan [data-r=kanto] circle{transition-delay:.5s}.ill .ill-japan [data-r=chubu] circle{transition-delay:.7s}
.ill .ill-japan [data-r=kinki] circle{transition-delay:.9s}.ill .ill-japan [data-r=chugoku] circle{transition-delay:1.1s}
.ill .ill-japan [data-r=shikoku] circle{transition-delay:1.2s}.ill .ill-japan [data-r=kyushu] circle{transition-delay:1.35s}
.ill .cy-arc{transition:stroke-dashoffset 2.4s var(--aw-ease-io) .2s}
.ill .cy-node{transition:opacity .6s ease;transition-delay:calc(.2s + var(--i,0) * .25s)}
.ill .dz-line{transition:stroke-dashoffset 2.2s var(--aw-ease-io) .6s}
.ill .dz-bar,.ill .cy-bar{transform-box:fill-box;transform-origin:bottom;transition:transform .9s var(--aw-ease);transition-delay:calc(.2s + var(--i,0) * .08s)}

/* ---------- スクロール演出（汎用） ---------- */
html.aw [data-aw="up"]{opacity:0;transform:translateY(28px);transition:opacity .9s var(--aw-ease),transform 1.1s var(--aw-ease);transition-delay:calc(var(--i,0) * 90ms)}
html.aw [data-aw="up"].aw-in{opacity:1;transform:none}
html.aw [data-aw="img"]{clip-path:inset(14% 0 14% 0);transition:clip-path 1.3s var(--aw-ease)}
html.aw [data-aw="img"] img{transform:scale(1.18);transition:transform 1.8s var(--aw-ease)}
html.aw [data-aw="img"].aw-in{clip-path:inset(0 0 0 0)}
html.aw [data-aw="img"].aw-in img{transform:scale(1)}
html.aw .aw-lines .aw-ln{display:block;overflow:hidden;padding-bottom:.06em;margin-bottom:-.06em}
html.aw .aw-lines .aw-ln>span{display:block;transform:translateY(105%);transition:transform 1.1s var(--aw-ease);transition-delay:calc(var(--l,0) * 110ms)}
html.aw .aw-lines.aw-in .aw-ln>span{transform:none}

/* 下層ヘッダーの登場 */
html.aw body.aw-sub .page-head .ph-bg img{transform:scale(1.14);transition:transform 2.6s var(--aw-ease)}
html.aw body.aw-sub .page-head.aw-in .ph-bg img{transform:scale(1)}
html.aw body.aw-sub .page-head .en,html.aw body.aw-sub .page-head .lead,html.aw body.aw-sub .crumb .wrap{opacity:0;transform:translateY(14px);transition:opacity 1s var(--aw-ease),transform 1.2s var(--aw-ease)}
html.aw body.aw-sub .page-head.aw-in .en{opacity:1;transform:none;transition-delay:.15s}
html.aw body.aw-sub .page-head.aw-in .lead{opacity:1;transform:none;transition-delay:.75s}
html.aw body.aw-sub.aw-ready .crumb .wrap{opacity:1;transform:none;transition-delay:.9s}

/* ---------- スクロール進捗バー・ヘッダーの出し入れ ---------- */
.aw-progress{display:none !important;position:fixed;left:0;top:0;height:2px;width:100%;background:var(--brand,#316de4);transform-origin:left;transform:scaleX(0);z-index:1001;pointer-events:none}
header.aw-hide,#header.aw-hide{transform:translateY(-100%)}
header,#header{transition:transform .5s var(--aw-ease),background .3s,box-shadow .3s}

/* ---------- ページ遷移の幕 ---------- */
.aw-curtain{position:fixed;inset:0;z-index:2000;background:var(--aw-navy);display:grid;place-items:center;pointer-events:none;transform:translateY(100%)}
.aw-curtain img{width:44px;height:44px;opacity:.9;filter:brightness(0) invert(1)}
.aw-curtain.cover{transform:none}
.aw-curtain.leave{transform:translateY(-100%);transition:transform .8s var(--aw-ease-io)}
.aw-curtain.enter{transform:none;transition:transform .55s var(--aw-ease-io)}

/* ---------- ボタンの手触り ---------- */
.btn,.news-ui-all,.cta-band .btn{will-change:transform}
.btn .ar{transition:transform .45s var(--aw-ease),background .3s,color .3s}

/* ---------- 動きを減らす設定 ---------- */
@media (prefers-reduced-motion: reduce){
  html.aw [data-aw="up"]{transform:none !important;transition:opacity .4s linear !important}
  html.aw [data-aw="img"],html.aw [data-aw="img"] img{clip-path:none !important;transform:none !important;transition:none !important}
  html.aw .aw-lines .aw-ln>span{transform:none !important;transition:none !important}
  html.aw body.aw-sub .page-head .ph-bg img{transform:none !important;transition:none !important}
  html.aw body.aw-sub .page-head .en,html.aw body.aw-sub .page-head .lead,html.aw body.aw-sub .crumb .wrap{transform:none !important}
  .aw-curtain{display:none !important}
  .ill *{transition:none !important;animation:none !important}
  body.aw-sub .page-head .aw-scroll::after{animation:none}
  .ill-cycle .cy-runner{animation:none}
}

/* ---------- イラストの枠 ---------- */
.fig.fig-ill{background:#f3f6fb;display:flex;flex-direction:column;justify-content:center}
.fig.fig-ill>.ill{flex:1;min-height:0;display:flex;align-items:center;justify-content:center}
.fig.fig-ill>.ill svg{max-height:100%;width:auto;max-width:100%}
.fig.fig-ill>.ill .ill-town,.fig.fig-ill>.ill .ill-dash,.fig.fig-ill>.ill .ill-cycle{width:100%;height:auto;max-height:none}
.fig.fig-ill .ill-legend{padding:0 4px;margin:12px 0 0}
body.aw-sub .mech .fig.fig-ill{aspect-ratio:auto;overflow:visible;background:none;border:0}
body.aw-sub .mech .fig.fig-ill>.ill{border-radius:6px;overflow:hidden;border:1px solid #e3eaf4}
#service .fig.fig-ill{padding:6% 8%}
.ill-card{border-radius:6px;overflow:hidden;border:1px solid #e3eaf4;background:#f3f6fb}
.aw-curtain{visibility:hidden}
.aw-curtain.cover,.aw-curtain.enter,.aw-curtain.leave{visibility:visible}
body.aw-sub .page-head h1 .u{background:linear-gradient(transparent 93%,rgba(156,192,255,.75) 93%)}

/* ---------- トップ：ご利用の流れ（番号と一本の線でつなぐ） ---------- */
html body #flow .flow-list{grid-template-columns:repeat(4,1fr);gap:56px 0;counter-reset:none;position:relative}
html body #flow .flow-list .flow{background:none !important;border:0 !important;box-shadow:none !important;border-radius:0 !important;padding:34px 28px 0 0 !important;position:relative;min-height:0}
html body #flow .flow-list .flow::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:#d9e2ee}
html body #flow .flow-list .flow::after{content:"";position:absolute;left:0;right:0;top:0;height:2px;background:var(--brand,#316de4);transform:scaleX(0);transform-origin:left;transition:transform .9s var(--aw-ease);transition-delay:calc(var(--i,0) * 120ms)}
html body #flow .flow-list.aw-in .flow::after,html body #flow .flow-list.on .flow::after{transform:scaleX(1)}
html body #flow .flow .fl-ic,html body #flow .flow .fl-img{display:none !important}
html body #flow .flow .st{position:static !important;width:auto !important;height:auto !important;background:none !important;border:0 !important;border-radius:0 !important;
  font:700 clamp(40px,4vw,60px)/1 Inter,sans-serif !important;color:transparent !important;-webkit-text-stroke:1.2px var(--brand,#316de4);letter-spacing:-.03em;margin:0 0 22px !important;display:block !important;box-shadow:none !important}
html body #flow .flow h3{font-size:17px;font-weight:700;margin:0 0 10px;line-height:1.5}
html body #flow .flow p{font-size:14px;line-height:1.9;color:var(--ink-2,#4a5266)}
html body #flow .flow:nth-child(8) .st{color:var(--brand,#316de4) !important}
@media(max-width:900px){html body #flow .flow-list{grid-template-columns:1fr 1fr;gap:40px 0}}
@media(max-width:560px){html body #flow .flow-list{grid-template-columns:1fr;gap:0}
  html body #flow .flow-list .flow{padding:24px 0 24px 72px !important}
  html body #flow .flow .st{position:absolute !important;left:0;top:22px;font-size:40px !important}}

/* ---------- トップ：業種一覧（アイコンを外し、罫線の文字組みに） ---------- */
html body .clients-band .client-list{display:grid !important;grid-template-columns:repeat(6,1fr);gap:0 !important;border-top:1px solid #dfe6f0;border-left:1px solid #dfe6f0;background:none !important}
html body .clients-band .client-list span{background:#fff !important;border:0 !important;border-right:1px solid #dfe6f0 !important;border-bottom:1px solid #dfe6f0 !important;border-radius:0 !important;box-shadow:none !important;
  padding:26px 12px !important;font-size:13px !important;font-weight:600 !important;line-height:1.6;color:var(--ink,#202733);display:flex !important;align-items:center;justify-content:center;text-align:center;min-height:92px;transition:background .4s,color .4s}
html body .clients-band .client-list span:hover{background:#0f1b33 !important;color:#fff}
html body .clients-band .client-list span svg{display:none !important}
@media(max-width:900px){html body .clients-band .client-list{grid-template-columns:repeat(3,1fr)}}
@media(max-width:520px){html body .clients-band .client-list{grid-template-columns:repeat(2,1fr)}}

/* ---------- 下層：相談帯（写真を夜の街に、青は光として少しだけ） ---------- */
body.aw-sub .cta-band .band-photo img{opacity:.42;filter:grayscale(.3)}
body.aw-sub .cta-band .band-photo::after{background:linear-gradient(180deg,rgba(15,27,51,.78),rgba(15,27,51,.92))}
body.aw-sub .cta-band::after{z-index:1;pointer-events:none}
body.aw-sub .cta-band p{color:rgba(255,255,255,.75)}

/* ---------- 下層：番号つきリスト（2列・大きな番号） ---------- */
body.aw-sub .num-list{display:grid;grid-template-columns:1fr 1fr;gap:0 56px;border-top:1px solid var(--line)}
body.aw-sub .num-list li{padding:32px 0 32px 76px;border-bottom:1px solid var(--line);position:relative}
body.aw-sub .num-list li::before{top:30px;font:700 34px/1 Inter,sans-serif;color:transparent;-webkit-text-stroke:1px var(--brand,#316de4);letter-spacing:-.02em;background:none;width:auto;height:auto;border:0}
body.aw-sub .num-list li h3{font-size:17px;line-height:1.6;margin-bottom:8px}
body.aw-sub .num-list li p{font-size:14px;line-height:1.95}
@media(max-width:768px){body.aw-sub .num-list{grid-template-columns:1fr}body.aw-sub .num-list li{padding:24px 0 24px 60px}body.aw-sub .num-list li::before{font-size:28px;top:24px}}

/* ---------- 下層：リード文・注記・表 ---------- */
body.aw-sub .lead-box{border:0;padding:0 0 0 0;font-size:clamp(17px,1.6vw,22px);line-height:1.85;font-weight:700;letter-spacing:.02em;margin-bottom:36px;position:relative;padding-left:28px}
body.aw-sub .lead-box::before{content:"";position:absolute;left:0;top:.35em;bottom:.35em;width:3px;background:var(--brand)}
body.aw-sub .note-box{border-radius:6px;background:var(--aw-paper);border:1px solid #e3eaf4;padding:26px 28px;line-height:1.95}
body.aw-sub .def-table{border-collapse:separate;border-spacing:0;border-top:2px solid var(--aw-navy)}
body.aw-sub .def-table th,body.aw-sub .def-table td{border:0;border-bottom:1px solid var(--line);padding:20px 18px}
body.aw-sub .def-table thead th{background:#fff;color:var(--ink);font-size:13px;letter-spacing:.06em;border-bottom:1px solid var(--line-2)}
body.aw-sub .def-table thead th:nth-child(2){color:var(--brand)}
body.aw-sub .def-table tbody th{border-left:0;background:none;font-size:14px}
body.aw-sub .def-table tbody tr:hover,body.aw-sub .def-table tbody tr:hover th{background:#f6f9fd}
body.aw-sub .type-card{padding:0;overflow:hidden}
body.aw-sub .type-card h3{font-size:19px}
body.aw-sub .type-card img{transition:transform 1.2s var(--aw-ease)}
body.aw-sub .type-card:hover img{transform:scale(1.04)}
body.aw-sub .deliver{background:var(--aw-paper)}
body.aw-sub .dl-list li{border-color:#e3eaf4;padding:22px 24px}
body.aw-sub .dl-list li::before{border:0;background:var(--brand);width:8px;height:8px;border-radius:50%;margin-top:9px}

/* ---------- トップ：ワンストップの図（2026-10-04 ユーザー指示で元のカラフルな配色に戻した） ---------- */
html body .osfig .osfig-node p{font-weight:700;letter-spacing:.04em}

/* ---------- エリア ---------- */
.aw-jp{max-width:620px;margin:0 auto;background:var(--aw-paper);border-radius:6px;padding:40px 48px 28px}
.aw-jp .ill-legend{justify-content:center}
body.aw-sub tr.hl th{background:var(--aw-navy) !important;color:#fff !important}
body.aw-sub .jp-map{background:none !important;border:0 !important;box-shadow:none !important}

/* ---------- 導入事例：業種タイル ---------- */
.aw-ind{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:0 0 28px}
.aw-ind-tile{position:relative;display:block;border-radius:6px;overflow:hidden;aspect-ratio:4/3;color:#fff;isolation:isolate}
.aw-ind-tile .ph,.aw-ind-tile .ph img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.aw-ind-tile .ph img{transition:transform 1.4s var(--aw-ease)}
.aw-ind-tile::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(10,18,36,.82),rgba(10,18,36,0) 60%);z-index:0;transition:background .5s}
.aw-ind-tile .tx{position:absolute;left:22px;bottom:18px;z-index:1;font-size:19px;font-weight:700;letter-spacing:.04em}
.aw-ind-tile .tx small{display:block;font:600 11px/1 Inter,sans-serif;letter-spacing:.2em;color:#9cc0ff;margin-bottom:8px}
.aw-ind-tile:hover .ph img{transform:scale(1.06)}
.aw-ind-tile:hover::after{background:linear-gradient(0deg,rgba(32,84,202,.85),rgba(10,18,36,.1) 70%)}
@media(max-width:768px){.aw-ind{grid-template-columns:1fr 1fr;gap:10px}.aw-ind-tile .tx{font-size:15px;left:14px;bottom:12px}}

/* ---------- メディア掲載：サムネイルを紺の帯に ---------- */
body.aw-sub .media-thumb{background:var(--aw-navy) !important;color:#fff !important;border:0 !important}
body.aw-sub .media-thumb *{color:#fff !important}
body.aw-sub .media-thumb small,body.aw-sub .media-thumb .k{color:#9cc0ff !important}
body.aw-sub .media-item{transition:transform .5s var(--aw-ease),box-shadow .5s var(--aw-ease)}
body.aw-sub .media-item:hover{transform:translateY(-3px);box-shadow:0 22px 40px -30px rgba(15,27,51,.45)}
body.aw-sub.no-ph .page-head{min-height:0;padding:72px 0 64px}

/* ---------- トップ：お知らせ（スマホは横並びの詰めたリスト） ---------- */
@media(max-width:640px){
  html body .news-ui-list{display:grid !important;grid-template-columns:1fr !important;gap:0 !important;border-top:1px solid #e3eaf4}
  html body .news-ui-list li a{display:grid !important;grid-template-columns:96px 1fr;grid-template-rows:auto 1fr;column-gap:14px;padding:16px 0 !important;border-bottom:1px solid #e3eaf4;background:none !important;box-shadow:none !important;border-radius:0 !important}
  html body .news-ui-list li a .th{grid-row:1 / span 2;width:96px !important;height:72px !important;aspect-ratio:auto !important;border-radius:4px;overflow:hidden;margin:0 !important}
  html body .news-ui-list li a .th img{width:100%;height:100%}
  html body .news-ui-list li a .meta{padding:0 !important;margin:0 0 6px !important}
  html body .news-ui-list li a p{padding:0 !important;margin:0 !important;font-size:13px;line-height:1.6}
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto !important}
  .osfig *{animation:none !important}
  .kv-item .img span{transition:none !important;translate:0 0 !important}
  .kv-item h2 em span{transition:none !important;translate:0 0 !important}
}

/* ---------- トップ：ワンストップ欄のバランス（2026-10-04 調整） ---------- */
@media(min-width:1101px){
  html body .os-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center}
  html body .os-text{padding-left:0}
  html body #onestop .os-text .sec-head .sec-ja{font-size:clamp(32px,2.7vw,38px);line-height:1.38}
  html body .os-text .sec-head{margin-bottom:36px}
  html body .osfig{width:min(100%,500px)}
}
/* お知らせ → ワンストップ間の余白を詰める（2026-10-04） */
html body #topnews{padding-bottom:24px}
html body #onestop{padding-top:40px}
@media(max-width:768px){html body #topnews{padding-bottom:16px}html body #onestop{padding-top:40px}}

/* ---------- トップ：ご利用の流れのイラスト（2026-10-04 手描き線＋サイト色） ---------- */
html body #flow .flow .fl-img{display:block !important;position:static !important;width:min(100%,220px) !important;height:auto !important;aspect-ratio:1;margin:0 0 6px -8px !important;background:none !important;border:0 !important;box-shadow:none !important;border-radius:0 !important}
html body #flow .flow .fl-img img{width:100% !important;height:100% !important;object-fit:contain;mix-blend-mode:multiply;transition:transform .8s var(--aw-ease)}
html body #flow .flow:hover .fl-img img{transform:translateY(-4px) rotate(-1deg)}
html body #flow .flow .st{margin:0 0 10px !important;font-size:clamp(32px,3vw,44px) !important}
html body #flow .flow-list .flow{display:flex;flex-direction:column}
html body #flow .flow .fl-img{order:-1}
@media(max-width:560px){
  html body #flow .flow-list .flow{padding:24px 0 !important;display:grid;grid-template-columns:120px 1fr;column-gap:16px;align-items:start}
  html body #flow .flow .fl-img{grid-row:1 / span 3;width:120px !important;margin:0 !important}
  html body #flow .flow .st{position:static !important;font-size:30px !important;margin:0 0 4px !important}
}
html body #flow .flow .fl-img img{mix-blend-mode:normal}
@media(max-width:560px){
  html body #flow .flow-list .flow{grid-template-rows:auto auto 1fr;align-content:start}
  html body #flow .flow .fl-img{grid-row:1 / span 3 !important}
  html body #flow .flow h3{margin-bottom:6px}
}
@media(max-width:560px){
  html body #flow .flow-list .flow{display:flex !important;flex-direction:column;padding:28px 0 !important}
  html body #flow .flow .fl-img{width:150px !important;margin:0 0 4px -6px !important}
  html body #flow .flow .st{font-size:30px !important;margin:0 0 8px !important}
}
@media(max-width:560px){html body #flow .flow h3,html body #flow .flow p{text-align:left !important}}
@media(max-width:560px){html body #flow .flow>*{align-self:flex-start !important;margin-left:0 !important;margin-right:0 !important}html body #flow .flow .fl-img{margin-left:-6px !important}}

/* ---------- 下層：手描きイラスト（V2タッチ、2026-10-04） ---------- */
body.aw-sub .num-list li.has-ill{display:grid;grid-template-columns:132px 1fr;column-gap:22px;align-items:start;padding-left:0}
body.aw-sub .num-list li.has-ill::before{position:static;grid-column:2;grid-row:1;font-size:26px;margin:4px 0 6px}
body.aw-sub .num-list li.has-ill .aw-li-ill{grid-column:1;grid-row:1 / span 3}
body.aw-sub .num-list li.has-ill h3,body.aw-sub .num-list li.has-ill p{grid-column:2}
.aw-li-ill img,.aw-prob-ill img,.fig-ill2 img,.ill-card.ill2 img{width:100%;height:auto;display:block}
body.aw-sub .num-list li.has-ill .aw-li-ill img{transition:transform .8s var(--aw-ease)}
body.aw-sub .num-list li.has-ill:hover .aw-li-ill img{transform:translateY(-3px) rotate(-1.5deg)}
@media(max-width:560px){body.aw-sub .num-list li.has-ill{grid-template-columns:96px 1fr;column-gap:14px}}
.aw-prob-ill{width:clamp(150px,18vw,230px);margin:-24px 0 8px auto}
@media(min-width:900px){.wrap:has(>.aw-prob-ill){position:relative}.aw-prob-ill{position:absolute;right:24px;top:-24px;margin:0}}
@media(max-width:899px){.aw-prob-ill{margin:-8px auto 16px}}
body.aw-sub .mech .fig.fig-ill2{aspect-ratio:auto;box-shadow:none;background:none;border-radius:0;max-width:420px;justify-self:center;width:100%}
.ill-card.ill2{border:0;background:none;max-width:300px;margin:0 auto}
@media(min-width:900px){.aw-prob-ill{width:clamp(140px,13vw,190px);top:-64px}}

/* ---------- ローディング別案（?ld=d/e/f/g、2026-10-04 検討用） ---------- */
.ld.ldx-on{background:transparent !important;animation:none !important}
.ldx{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;background:#fff}
.ldx-word{width:220px;height:auto;opacity:0}
.ldx.go .ldx-word{animation:ldxFade .6s ease-out .5s both}
@keyframes ldxFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@keyframes ldxUp{to{transform:translateY(-100%)}}
/* d 投函：チラシがポストに入り、投入口が広がって画面が開く */
.ldx-d .ldx-mailbox{position:relative;width:120px;height:110px}
.ldx-d .ldx-box{position:absolute;left:0;right:0;bottom:0;height:84px;border-radius:14px;background:#1d2a44}
.ldx-d .ldx-slot{position:absolute;left:22px;right:22px;top:24px;height:7px;border-radius:4px;background:#0b1428}
.ldx-d .ldx-flyer{position:absolute;left:34px;top:-70px;width:52px;height:68px;border-radius:3px;background:#fff;border:2px solid #316de4;box-shadow:inset 0 14px 0 #316de4;z-index:0}
.ldx-d.go .ldx-flyer{animation:ldxDrop 1s cubic-bezier(.65,0,.35,1) .15s both}
@keyframes ldxDrop{0%{transform:translateY(-30px);opacity:0}25%{opacity:1}70%{transform:translateY(64px)}100%{transform:translateY(96px);clip-path:inset(0 0 100% 0)}}
.ldx-d .ldx-box{z-index:1}
.ldx-d.go .ldx-box{animation:ldxNod .35s ease-out 1.05s both}
@keyframes ldxNod{50%{transform:translateY(3px) scaleY(.97)}}
.ldx-d .ldx-open{position:absolute;inset:0;background:#fff;pointer-events:none;opacity:0}
.ldx-d.go{animation:ldxSlit .9s cubic-bezier(.76,0,.24,1) 1.85s both}
@keyframes ldxSlit{0%{clip-path:inset(0 0 0 0)}100%{clip-path:inset(50% 0 50% 0)}}
/* e 配布ルート：紺の地図に配布ルートが描かれ、ピンが点灯して上へ抜ける */
.ldx-e{background:#0f1b33}
.ldx-e .ldx-route{width:min(70vw,420px);height:auto}
.ldx-e .ldx-route path{fill:none;stroke:#5da0f8;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1}
.ldx-e .ldx-route .pin{fill:#fff;opacity:0;transform-box:fill-box;transform-origin:center}
.ldx-e .ldx-route .end{fill:#316de4;stroke:#fff;stroke-width:3;opacity:0;transform-box:fill-box;transform-origin:center}
.ldx-e.go .ldx-route path{animation:ldxDraw 1.3s cubic-bezier(.65,0,.35,1) .1s both}
.ldx-e.go .ldx-route .pin{animation:ldxPop .35s ease-out both;animation-delay:calc(.35s + var(--i) * .25s)}
.ldx-e.go .ldx-route .end{animation:ldxPop .45s cubic-bezier(.34,1.56,.64,1) 1.35s both}
@keyframes ldxDraw{to{stroke-dashoffset:0}}
@keyframes ldxPop{from{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}
.ldx-e .ldx-brand{display:flex;align-items:center;gap:14px}
.ldx-e .ldx-brand img{filter:brightness(0) invert(1)}
.ldx-e .ldx-mark{width:34px;opacity:0}
.ldx-e.go .ldx-mark{animation:ldxFade .5s ease-out 1.3s both}
.ldx-e.go .ldx-word{animation-delay:1.4s}
.ldx-e.go{animation:ldxUp .8s cubic-bezier(.76,0,.24,1) 1.95s both}
/* f カラフルな紙：5色の紙が扇形に開いて、四方へ飛んでいく */
.ldx-f .ldx-deck{position:relative;width:120px;height:160px}
.ldx-f .ldx-deck i{position:absolute;inset:0;border-radius:6px;background:var(--c);box-shadow:0 10px 24px -12px rgba(15,27,51,.35)}
.ldx-f.go .ldx-deck i{animation:ldxFan 1s cubic-bezier(.34,1.56,.64,1) both,ldxFly .7s cubic-bezier(.7,0,.84,0) 1.8s both;animation-delay:calc(.1s + var(--i) * .08s),calc(1.75s + var(--i) * .05s)}
@keyframes ldxFan{from{transform:rotate(0) translateY(20px);opacity:0}to{transform:rotate(calc((var(--i) - 2) * 14deg)) translateX(calc((var(--i) - 2) * 18px));opacity:1}}
@keyframes ldxFly{from{transform:rotate(calc((var(--i) - 2) * 14deg)) translateX(calc((var(--i) - 2) * 18px))}to{transform:rotate(calc((var(--i) - 2) * 40deg)) translate(calc((var(--i) - 2) * 60vw),-120vh);opacity:.9}}
.ldx-f .ldx-brand{position:relative}
.ldx-f.go .ldx-word{animation:ldxFade .5s ease-out .7s both,ldxFadeOut .3s ease-in 1.7s both}
@keyframes ldxFadeOut{to{opacity:0}}
.ldx-f.go{animation:ldxBgOut .5s ease-out 2.2s both}
@keyframes ldxBgOut{to{background:transparent}}
/* g 手描き：配布スタッフのイラストと手描きの線、円が広がって開く */
.ldx-g .ldx-ill{position:relative;width:220px}
.ldx-g .ldx-ill img{width:100%;height:auto;opacity:0}
.ldx-g.go .ldx-ill img{animation:ldxFade .6s ease-out .1s both}
.ldx-g .ldx-walk{display:block;width:220px;height:16px;margin-top:4px}
.ldx-g .ldx-walk path{fill:none;stroke:#316de4;stroke-width:2.5;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1}
.ldx-g.go .ldx-walk path{animation:ldxDraw 1.2s cubic-bezier(.65,0,.35,1) .4s both}
.ldx-g.go{animation:ldxIris .9s cubic-bezier(.76,0,.24,1) 1.85s both}
@keyframes ldxIris{from{clip-path:circle(150% at 50% 50%)}to{clip-path:circle(0% at 50% 50%)}}
.ldx-word{width:260px}
.ldx-d .ldx-mailbox{transform:scale(1.7);margin-bottom:40px}
.ldx-f .ldx-deck{transform:scale(1.5);margin-bottom:40px}
.ldx-g .ldx-ill{width:320px}.ldx-g .ldx-walk{width:320px}
.ldx-e .ldx-route{width:min(80vw,560px)}

/* ---------- トップ：サービスカードの詳細リンク（2026-10-04 デザイン変更） ---------- */
html body .svc-more{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
html body .svc-more .btn{display:inline-flex;align-items:center;gap:14px;padding:11px 12px 11px 22px !important;border:1px solid #d5deeb !important;border-radius:999px !important;background:#fff !important;color:var(--ink,#202733) !important;
  font-size:14px !important;font-weight:700;letter-spacing:.03em;line-height:1.2;box-shadow:none !important;transition:background .35s var(--aw-ease),border-color .35s,color .35s,box-shadow .35s}
html body .svc-more .btn .ar{width:30px !important;height:30px !important;border-radius:50% !important;background:#eaf1fd !important;color:var(--brand,#316de4) !important;font-size:13px;display:inline-flex;align-items:center;justify-content:center;flex:none;margin:0 !important}
html body .svc-more .btn:hover{background:var(--brand,#316de4) !important;border-color:var(--brand,#316de4) !important;color:#fff !important;box-shadow:0 10px 24px -12px rgba(49,109,228,.6) !important}
html body .svc-more .btn:hover .ar{background:#fff !important;color:var(--brand,#316de4) !important;transform:translateX(3px)}
@media(max-width:560px){html body .svc-more .btn{font-size:13px !important;padding:9px 10px 9px 18px !important}}
html body #service .svc-more .btn .ar,html body #service .svc-more .btn:nth-child(2) .ar{width:30px !important;height:30px !important;border-radius:50% !important;background:#eaf1fd !important;color:var(--brand,#316de4) !important}
html body #service .svc-more .btn:hover,html body #service .svc-more .btn:nth-child(2):hover{background:var(--brand,#316de4) !important;color:#fff !important}
html body #service .svc-more .btn:hover .ar,html body #service .svc-more .btn:nth-child(2):hover .ar{background:#fff !important;color:var(--brand,#316de4) !important}

/* ---------- 数字の描き方：線だけ（4の内側の重なりが見える）→ 塗りに変更（2026-10-04） ---------- */
html body #flow .flow .st{color:#9cbcf3 !important;-webkit-text-stroke:0 !important}
html body #flow .flow:nth-child(8) .st{color:var(--brand,#316de4) !important}
body.aw-sub .mech .no b{color:#9cbcf3;-webkit-text-stroke:0}
body.aw-sub .num-list li::before{color:#9cbcf3;-webkit-text-stroke:0}

/* ---------- 下層の写真ヘッダーを明るく（2026-10-04：暗いとの指摘で紺→淡い白青に） ---------- */
body.aw-sub .page-head{background:#f4f8ff;color:var(--ink,#202733)}
body.aw-sub .page-head .ph-bg img{filter:brightness(1.08) saturate(1.05)}
body.aw-sub .page-head .ph-bg::after{background:
  linear-gradient(90deg,rgba(244,248,255,.97) 0%,rgba(244,248,255,.9) 34%,rgba(244,248,255,.35) 66%,rgba(244,248,255,0) 88%),
  linear-gradient(0deg,rgba(244,248,255,.6) 0%,rgba(244,248,255,0) 30%) !important}
body.aw-sub .page-head h1{color:var(--ink,#202733)}
body.aw-sub .page-head h1 .u{color:var(--brand,#316de4);background:linear-gradient(transparent 92%,rgba(49,109,228,.35) 92%)}
body.aw-sub .page-head .lead{color:var(--ink-2,#4a5266)}
body.aw-sub .page-head .en{color:var(--brand,#316de4)}
body.aw-sub .page-head .en::before{background:var(--brand,#316de4)}
body.aw-sub .page-head .aw-scroll{color:var(--ink-3,#8a8fa3)}
body.aw-sub .page-head .aw-scroll::after{background:linear-gradient(var(--ink-3,#8a8fa3),rgba(138,143,163,0))}
body.aw-sub:not(.no-ph) .crumb .wrap{color:var(--ink-3,#8a8fa3)}
body.aw-sub:not(.no-ph) .crumb a{color:var(--brand,#316de4)}
body.aw-sub:not(.no-ph) .crumb .sep{color:var(--line-2,#cfd8e6)}
@media(max-width:768px){body.aw-sub .page-head .ph-bg::after{background:linear-gradient(0deg,rgba(244,248,255,.97) 0%,rgba(244,248,255,.9) 55%,rgba(244,248,255,.5) 100%) !important}}

/* ---------- 下層：課題カード（2026-10-04 作り直し：罫線区切り→カード＋オレンジの課題札） ---------- */
body.aw-sub .prob-grid{display:grid !important;grid-template-columns:repeat(3,1fr);gap:20px !important;border:0 !important;background:none !important;counter-reset:awprob}
body.aw-sub .prob-card,body.aw-sub .prob-card+.prob-card{position:relative;overflow:hidden;background:#fff !important;border:1px solid #e3eaf4 !important;border-radius:16px;padding:30px 28px 32px !important;
  box-shadow:0 18px 40px -32px rgba(15,27,51,.35);counter-increment:awprob;transition:transform .5s var(--aw-ease),box-shadow .5s var(--aw-ease)}
body.aw-sub .prob-card::after{content:counter(awprob,decimal-leading-zero);position:absolute;right:18px;top:6px;font:800 68px/1 Inter,sans-serif;letter-spacing:-.04em;color:#f1f5fb;z-index:0;pointer-events:none}
body.aw-sub .prob-card>*{position:relative;z-index:1}
body.aw-sub .prob-card:hover{transform:translateY(-4px);box-shadow:0 26px 48px -30px rgba(15,27,51,.45)}
body.aw-sub .prob-card .no{display:inline-flex !important;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:#fff1e4;color:#d9731c !important;font-size:11px !important;letter-spacing:.14em}
body.aw-sub .prob-card .no span{color:#a85a17}
body.aw-sub .prob-card .no span::before{color:#f2c9a4}
body.aw-sub .prob-card h3{font-size:18px !important;line-height:1.6;margin:16px 0 10px !important}
body.aw-sub .prob-card p:not(.no){font-size:14px;line-height:1.95;color:var(--ink-2,#4a5266)}
@media(max-width:900px){body.aw-sub .prob-grid{grid-template-columns:1fr}}
/* 課題の直後の説明枠＝解決策として見せる */
body.aw-sub .prob-grid+.note-box{position:relative;margin-top:56px !important;background:linear-gradient(135deg,#316de4,#4f86ee) !important;border:0 !important;border-radius:16px;padding:40px 44px 40px !important;color:#fff;
  box-shadow:0 30px 60px -36px rgba(49,109,228,.7)}
body.aw-sub .prob-grid+.note-box::before{content:"";position:absolute;left:50%;top:-34px;width:16px;height:16px;border-right:2.5px solid #316de4;border-bottom:2.5px solid #316de4;transform:translateX(-50%) rotate(45deg)}
body.aw-sub .prob-grid+.note-box b{display:block;font-size:clamp(18px,1.8vw,24px) !important;line-height:1.55;color:#fff !important;margin-bottom:14px}
body.aw-sub .prob-grid+.note-box b::before{content:"SOLUTION";display:block;width:max-content;margin-bottom:12px;padding:4px 12px;border-radius:999px;background:rgba(255,255,255,.18);font:700 11px/1.4 Inter,sans-serif;letter-spacing:.18em}
body.aw-sub .prob-grid+.note-box p{color:rgba(255,255,255,.9) !important;font-size:14.5px;line-height:2}
body.aw-sub .prob-grid+.note-box a{color:#fff;text-decoration:underline}
@media(max-width:600px){body.aw-sub .prob-grid+.note-box{padding:30px 24px !important}}
body.aw-sub .prob-grid:not(.aw-issue) .prob-card .no{background:#eaf1fd;color:var(--brand,#316de4) !important}
body.aw-sub .prob-grid:not(.aw-issue) .prob-card .no span{color:var(--ink,#202733)}
body.aw-sub .prob-grid:not(.aw-issue) .prob-card .no span::before{color:#b9cdf3}

/* ---------- ローディング：シンプル案 h/i/j（白地＋ロゴのみ、約1.5秒） ---------- */
.ldx-h .ldx-brand,.ldx-i .ldx-brand,.ldx-j .ldx-brand{display:flex;flex-direction:column;align-items:center;gap:18px}
.ldx-h .ldx-mark,.ldx-i .ldx-mark,.ldx-j .ldx-mark{width:44px;opacity:0}
.ldx-h .ldx-word,.ldx-i .ldx-word,.ldx-j .ldx-word{width:240px}
.ldx-h.go .ldx-mark,.ldx-i.go .ldx-mark,.ldx-j.go .ldx-mark{animation:ldxFade .6s cubic-bezier(.22,1,.36,1) .05s both}
.ldx-h.go .ldx-word,.ldx-i.go .ldx-word,.ldx-j.go .ldx-word{animation:ldxFade .6s cubic-bezier(.22,1,.36,1) .18s both}
/* H：上へ抜ける */
.ldx-h.go{animation:ldxUp .65s cubic-bezier(.76,0,.24,1) .9s both}
/* I：細い線が伸びて、ふわっと消える */
.ldx-i .ldx-line{width:120px;height:1px;background:#e3eaf4;position:relative;overflow:hidden}
.ldx-i .ldx-line::after{content:"";position:absolute;inset:0;background:var(--brand,#316de4);transform:scaleX(0);transform-origin:left}
.ldx-i.go .ldx-line::after{animation:ldxGrow .7s cubic-bezier(.65,0,.35,1) .25s both}
@keyframes ldxGrow{to{transform:scaleX(1)}}
.ldx-i.go{animation:ldxOut .55s ease .95s both}
@keyframes ldxOut{to{opacity:0;transform:scale(1.02)}}
/* J：青い光の帯が下から上へ通り抜けて開く */
.ldx-j .ldx-sweep{position:absolute;left:0;right:0;bottom:-30%;height:30%;background:linear-gradient(180deg,rgba(49,109,228,0),rgba(49,109,228,.9) 50%,rgba(49,109,228,0));pointer-events:none}
.ldx-j.go .ldx-sweep{animation:ldxSweep .7s cubic-bezier(.65,0,.35,1) .85s both}
@keyframes ldxSweep{to{transform:translateY(-430%)}}
.ldx-j.go{animation:ldxClipUp .7s cubic-bezier(.65,0,.35,1) .85s both}
@keyframes ldxClipUp{from{clip-path:inset(0 0 0 0)}to{clip-path:inset(0 0 100% 0)}}
.ldx-h .ldx-word,.ldx-i .ldx-word,.ldx-j .ldx-word{width:300px}
@media(max-width:560px){.ldx-h .ldx-word,.ldx-i .ldx-word,.ldx-j .ldx-word{width:220px}}

/* ---------- ローディング：紺＋ロゴのシンプル案 k/l（約1.6秒） ---------- */
.ldx-k,.ldx-l{background:#0f1b33}
.ldx-k .ldx-word,.ldx-l .ldx-word{width:300px;filter:brightness(0) invert(1)}
@media(max-width:560px){.ldx-k .ldx-word,.ldx-l .ldx-word{width:220px}}
.ldx-k.go .ldx-word,.ldx-l.go .ldx-word{animation:ldxFade .7s cubic-bezier(.22,1,.36,1) .1s both}
/* K：紺の画面ごと上へ抜ける */
.ldx-k.go{animation:ldxUp .7s cubic-bezier(.76,0,.24,1) .95s both}
.ldx-k.go .ldx-brand{animation:ldxBrandOut .5s cubic-bezier(.7,0,.84,0) .9s both}
@keyframes ldxBrandOut{to{opacity:0;transform:translateY(-24px)}}
/* L：細い水色の線が伸び、紺が上下に分かれて開く */
.ldx-l{background:transparent}
.ldx-l .ldx-half{position:absolute;left:0;right:0;height:50%;background:#0f1b33;z-index:0}
.ldx-l .ldx-half.t{top:0}.ldx-l .ldx-half.b{bottom:0}
.ldx-l .ldx-brand{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:18px}
.ldx-l .ldx-line{width:140px;height:1px;background:rgba(255,255,255,.18);position:relative;overflow:hidden}
.ldx-l .ldx-line::after{content:"";position:absolute;inset:0;background:#5da0f8;transform:scaleX(0);transform-origin:left}
.ldx-l.go .ldx-line::after{animation:ldxGrow .6s cubic-bezier(.65,0,.35,1) .3s both}
.ldx-l.go .ldx-brand{animation:ldxFadeOut .3s ease-in .95s both}
.ldx-l.go .ldx-half.t{animation:ldxHalfUp .7s cubic-bezier(.76,0,.24,1) 1.05s both}
.ldx-l.go .ldx-half.b{animation:ldxHalfDown .7s cubic-bezier(.76,0,.24,1) 1.05s both}
@keyframes ldxHalfUp{to{transform:translateY(-100%)}}
@keyframes ldxHalfDown{to{transform:translateY(100%)}}

/* ---------- 料金：制作から配布まで窓口はひとつ（イラスト＋文の横並び） ---------- */
.aw-onewin{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:clamp(24px,4vw,64px);align-items:center;margin-top:36px;padding:clamp(24px,3vw,40px);border-radius:20px;background:#f6f9fe;border:1px solid #e3eaf4}
.aw-onewin .ow-ill img{width:100%;max-width:380px;height:auto;display:block;margin:0 auto}
.aw-onewin .ow-lb{display:inline-block;padding:4px 12px;border-radius:999px;background:#eaf1fd;color:var(--brand,#316de4);font:700 11px/1.4 Inter,sans-serif;letter-spacing:.18em}
.aw-onewin h3{font-size:clamp(20px,2vw,26px);font-weight:700;line-height:1.5;margin:14px 0 14px}
.aw-onewin .ow-txt>p:not(.ow-lb){font-size:15px;line-height:2;color:var(--ink-2,#4a5266)}
.aw-onewin .ow-txt a{color:var(--brand,#316de4);text-decoration:underline;text-underline-offset:3px}
.aw-onewin .ow-steps{display:flex;align-items:center;gap:10px;margin:22px 0 0;padding:0;list-style:none;flex-wrap:wrap}
.aw-onewin .ow-steps li{padding:8px 18px;border-radius:999px;background:#fff;border:1px solid #d5deeb;font-size:14px;font-weight:700;color:var(--ink,#202733)}
.aw-onewin .ow-steps li+li::before{content:"→";margin:0 12px 0 -22px;color:var(--brand,#316de4);font-weight:700;position:relative;left:-6px}
.aw-onewin .ow-steps li:last-child{background:var(--brand,#316de4);border-color:var(--brand,#316de4);color:#fff}
@media(max-width:820px){.aw-onewin{grid-template-columns:1fr}.aw-onewin .ow-ill img{max-width:280px}}
.aw-onewin .ow-steps{gap:0}
.aw-onewin .ow-steps li+li{position:relative;margin-left:30px}
.aw-onewin .ow-steps li+li::before{position:absolute;left:-23px;top:50%;transform:translateY(-50%);margin:0}

/* ============================================================
   全体を明るく（2026-10-04：「全体暗すぎる」の指摘で紺・黒の面をなくす）
   ============================================================ */
:root{--aw-light:#eef4fd;--aw-light-2:#f6f9fe}
/* トップ：ラストワンマイル帯 */
html body .lom{background:var(--aw-light) !important;color:var(--ink,#202733) !important}
html body .lom .band-photo img{opacity:.22 !important;filter:grayscale(.2) !important}
html body .lom .band-photo::after{background:linear-gradient(180deg,rgba(238,244,253,.8),rgba(238,244,253,.92)) !important}
html body .lom .sec-ja,html body .lom h2,html body .lom h3,html body .lom b,html body .lom strong{color:var(--ink,#202733) !important}
html body .lom p,html body .lom .sec-lead{color:var(--ink-2,#4a5266) !important}
html body .lom .sec-en.lom-label{color:var(--brand,#316de4) !important;background:#fff !important;border:1px solid #d5deeb}
html body .lom [class*="card"],html body .lom .lom-card{border-color:#d5deeb !important}
html body .lom .route-line{opacity:.15 !important}
/* トップ：最後の相談帯 → 2026-10-05「前のが良かった」で元の紺＋夜景に戻した */
/* 下層：最後の相談帯 */
body.aw-sub .cta-band{background:var(--aw-light) !important;color:var(--ink,#202733)}
body.aw-sub .cta-band::after{display:none}
body.aw-sub .cta-band .band-photo img{opacity:.18 !important;filter:none !important}
body.aw-sub .cta-band .band-photo::after{background:linear-gradient(180deg,rgba(238,244,253,.85),rgba(238,244,253,.95)) !important}
body.aw-sub .cta-band h2{color:var(--ink,#202733) !important}
body.aw-sub .cta-band p{color:var(--ink-2,#4a5266) !important}
body.aw-sub .cta-band .btn{border-color:var(--brand,#316de4) !important;color:var(--brand,#316de4) !important;background:#fff !important}
body.aw-sub .cta-band .btn .ar{background:#eaf1fd !important;color:var(--brand,#316de4) !important}
body.aw-sub .cta-band .btn.wsolid{background:var(--brand,#316de4) !important;color:#fff !important}
body.aw-sub .cta-band .btn.wsolid .ar{background:rgba(255,255,255,.25) !important;color:#fff !important}
body.aw-sub .cta-band .btn:hover{background:var(--brand,#316de4) !important;color:#fff !important}
body.aw-sub .cta-band .route-line{opacity:.15 !important}
/* 導入事例：業種タイル（紺の重ね→下を白くぼかす） */
.aw-ind-tile{color:var(--ink,#202733)}
.aw-ind-tile::after{background:linear-gradient(0deg,rgba(255,255,255,.96) 0%,rgba(255,255,255,.75) 26%,rgba(255,255,255,0) 50%) !important}
.aw-ind-tile:hover::after{background:linear-gradient(0deg,rgba(234,241,253,.98) 0%,rgba(234,241,253,.8) 30%,rgba(234,241,253,0) 55%) !important}
.aw-ind-tile .tx{color:var(--ink,#202733)}
.aw-ind-tile .tx small{color:var(--brand,#316de4)}
/* メディア掲載：サムネイル（紺→淡い青） */
body.aw-sub .media-thumb{background:#eaf1fd !important}
body.aw-sub .media-thumb *{color:var(--brand,#316de4) !important}
body.aw-sub .media-thumb small,body.aw-sub .media-thumb .k{color:#6f8fc9 !important}
/* ホバーの紺→青 */
body.aw-sub .rel-grid a::before{background:var(--brand,#316de4)}
html body .clients-band .client-list span:hover{background:var(--brand,#316de4) !important}
/* ページ移動の幕（紺→白） */
.aw-curtain{background:#fff}
.aw-curtain img{filter:none;opacity:1}
/* フッター（紺→明るいグレー） */
html body footer{background:#f3f6fa !important;color:var(--ink-2,#4a5266) !important;border-top:1px solid #e3eaf4 !important}
html body footer a{color:var(--ink-2,#4a5266) !important}
html body footer a:hover{color:var(--brand,#316de4) !important}
html body footer h4,html body footer .ft-col h4{color:var(--brand,#316de4) !important}
html body footer img{filter:none !important}
html body footer .ft-btm,html body footer small,html body footer p{color:var(--ink-3,#8a8fa3) !important;border-color:#e3eaf4 !important}
html body footer .ft-btm,html body footer .ft-btm p{background:transparent !important}
html body footer .ft-btm{border-top:1px solid #e3eaf4 !important}

/* ---------- ローディング標準 m：紺＋ロゴ＋メッセージ（約2.6秒） ---------- */
.ldx-m{background:#0f1b33}
.ldx-m .ldx-brand{display:flex;flex-direction:column;align-items:center;gap:26px}
.ldx-m .ldx-word{width:320px;filter:brightness(0) invert(1)}
.ldx-m.go .ldx-word{animation:ldxFade .8s cubic-bezier(.22,1,.36,1) .1s both}
.ldx-m .ldx-msg{margin:0;font-size:17px;font-weight:500;letter-spacing:.14em;color:rgba(255,255,255,.88);font-feature-settings:"palt" 1}
.ldx-m .ldx-msg span{display:inline-block;opacity:0;transform:translateY(8px)}
.ldx-m.go .ldx-msg span{animation:ldxChar .5s cubic-bezier(.22,1,.36,1) both;animation-delay:calc(.75s + var(--i) * 55ms)}
@keyframes ldxChar{to{opacity:1;transform:none}}
.ldx-m.go .ldx-brand{animation:ldxBrandOut .45s cubic-bezier(.7,0,.84,0) 1.85s both}
.ldx-m.go{animation:ldxUp .75s cubic-bezier(.76,0,.24,1) 1.95s both}
@media(max-width:560px){.ldx-m .ldx-word{width:230px}.ldx-m .ldx-msg{font-size:14px;letter-spacing:.1em}}

/* ---------- ローディング m の開き方 3案（?lo=fade / iris / blinds） ---------- */
/* フェード：紺が透けて消え、トップが少し寄りから戻る */
.ldx-m.ldx-out-fade.go{animation:ldxFadeAway .8s ease 1.95s both}
@keyframes ldxFadeAway{to{opacity:0}}
html.ldx-zoomin.is-loading body>*:not(#loader){transform:scale(1.04);transform-origin:50% 30%}
html.ldx-zoomin body>*:not(#loader){transition:transform 1.2s cubic-bezier(.22,1,.36,1)}
/* 円で開く：中央に穴が空いて広がる */
@property --ldxr{syntax:'<percentage>';inherits:false;initial-value:0%}
.ldx-m.ldx-out-iris{-webkit-mask:radial-gradient(circle at 50% 50%,transparent var(--ldxr),#000 calc(var(--ldxr) + .5%));mask:radial-gradient(circle at 50% 50%,transparent var(--ldxr),#000 calc(var(--ldxr) + .5%))}
.ldx-m.ldx-out-iris.go{animation:ldxIrisOpen .8s cubic-bezier(.65,0,.35,1) 1.95s both}
@keyframes ldxIrisOpen{from{--ldxr:0%}to{--ldxr:80%}}
/* ブラインド：縦5本の帯が順に上へ抜ける */
.ldx-m.ldx-out-blinds{background:transparent}
.ldx-m.ldx-out-blinds .ldx-blind{position:absolute;top:0;bottom:0;width:20.2%;left:calc(var(--i) * 20%);background:#0f1b33;z-index:0}
.ldx-m.ldx-out-blinds .ldx-brand{position:relative;z-index:1}
.ldx-m.ldx-out-blinds.go{animation:none}
.ldx-m.ldx-out-blinds.go .ldx-blind{animation:ldxBlindUp .65s cubic-bezier(.76,0,.24,1) both;animation-delay:calc(1.95s + var(--i) * 70ms)}
@keyframes ldxBlindUp{to{transform:translateY(-100%)}}
@media (prefers-reduced-motion: reduce){html.ldx-zoomin body>*:not(#loader){transform:none !important}}

/* ---------- トップ：ラストワンマイル（2026-10-05 作り直し：ぼやけた写真背景→イラスト＋カード） ---------- */
html body .lom.lom2{background:#f3f7fe !important;padding:clamp(72px,9vw,128px) 0 !important}
html body .lom2 .band-photo{display:none !important}
html body .lom2 .lom2-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(24px,4vw,72px);align-items:center}
html body .lom2 .sec-head{text-align:left !important;margin-bottom:28px !important}
html body .lom2 .sec-head .sec-ja{font-size:clamp(28px,3.2vw,44px) !important;line-height:1.42 !important}
html body .lom2 .sec-head .sec-lead{margin-left:0 !important}
html body .lom2 .sec-en.lom-label{margin:0 0 18px !important;display:inline-block !important;padding:6px 16px !important;border-radius:999px;background:#fff !important;border:1px solid #d5deeb;color:var(--brand,#316de4) !important;font-size:13px !important}
html body .lom2 .lom-cta{text-align:left !important;margin-top:0 !important}
html body .lom2 .lom2-ill img{width:100%;max-width:440px;height:auto;display:block;margin:0 auto}
html body .lom2 .lom2-cards{display:grid !important;grid-template-columns:1fr 1fr;gap:20px !important;margin-top:clamp(40px,5vw,64px) !important;border:0 !important}
html body .lom2 .lom-card{display:grid !important;grid-template-columns:120px 1fr;gap:20px;align-items:center;background:#fff !important;border:1px solid #e3eaf4 !important;border-radius:16px;padding:22px 26px 22px 18px !important;box-shadow:0 18px 40px -32px rgba(15,27,51,.35)}
html body .lom2 .lom-card::before,html body .lom2 .lom-card::after{display:none !important}
html body .lom2 .lom-card .lc-ill img{width:120px;height:auto;display:block}
html body .lom2 .lom-card b{display:block;font-size:18px;margin-bottom:8px;color:var(--ink,#202733) !important}
html body .lom2 .lom-card p{font-size:14px;line-height:1.9;margin:0;color:var(--ink-2,#4a5266) !important}
@media(max-width:900px){html body .lom2 .lom2-grid{grid-template-columns:1fr}html body .lom2 .lom2-ill img{max-width:300px}html body .lom2 .lom2-cards{grid-template-columns:1fr}}
@media(max-width:560px){html body .lom2 .lom-card{grid-template-columns:84px 1fr;gap:14px}html body .lom2 .lom-card .lc-ill img{width:84px}}
html body .lom.lom2::before,html body .lom.lom2::after{display:none !important;content:none !important}
html body .lom2 .lom-cta{display:flex !important;justify-content:flex-start !important}
html body .lom2 .lom-cta .btn{margin:0 !important}
@media(max-width:900px){html body .lom2 .lom-cta{justify-content:flex-start !important}}
/* 配布方法カード：写真は端まで、文字には内側の余白（2026-10-05「余白ない」） */
body.aw-sub .type-card{padding:0 0 26px !important}
body.aw-sub .type-card>*:not(.tc-photo){margin-left:28px !important;margin-right:28px !important}
body.aw-sub .type-card>.tag{margin-top:22px !important}
body.aw-sub .type-card .fit{padding-top:14px}
@media(max-width:560px){body.aw-sub .type-card>*:not(.tc-photo){margin-left:20px !important;margin-right:20px !important}}
/* 課題・ポイントカードのイラスト（2026-10-05） */
body.aw-sub .prob-card .pc-ill{display:block;width:150px;margin:0 0 6px -6px}
body.aw-sub .prob-card .pc-ill img{width:100%;height:auto;display:block}
body.aw-sub .prob-card:has(.pc-ill)::after{top:14px}

/* ---------- 下層の写真ヘッダー：グラデーションなし・左に文字／右に写真（2026-10-05） ---------- */
body.aw-sub:not(.no-ph) .page-head{background:#f4f8ff !important}
body.aw-sub:not(.no-ph) .page-head .ph-bg{left:50% !important;right:0;top:0;bottom:0;border-radius:0 0 0 28px;overflow:hidden}
body.aw-sub:not(.no-ph) .page-head .ph-bg::after{display:none !important;background:none !important}
body.aw-sub:not(.no-ph) .page-head .ph-bg img{filter:none !important}
body.aw-sub:not(.no-ph) .page-head .ph-text{max-width:min(46vw,620px)}
body.aw-sub:not(.no-ph) .page-head h1{font-size:clamp(28px,3.4vw,50px)}
body.aw-sub:not(.no-ph) .page-head .aw-scroll{display:none}
@media(max-width:768px){
  body.aw-sub:not(.no-ph) .page-head{display:flex;flex-direction:column;align-items:stretch;padding:74px 0 40px !important;min-height:0}
  body.aw-sub:not(.no-ph) .page-head .ph-bg{position:relative !important;left:0 !important;inset:auto;height:auto;aspect-ratio:16/10;border-radius:0;order:0;margin-bottom:28px}
  body.aw-sub:not(.no-ph) .page-head .ph-bg img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
  body.aw-sub:not(.no-ph) .page-head>.wrap-wide,body.aw-sub:not(.no-ph) .page-head>.wrap{order:1}
  body.aw-sub:not(.no-ph) .page-head .ph-text{max-width:none}
  body.aw-sub:not(.no-ph) .crumb{position:static !important;margin-top:74px}
  body.aw-sub:not(.no-ph) .page-head{padding-top:0 !important}
}
body.aw-sub:not(.no-ph) .page-head::before,body.aw-sub:not(.no-ph) .page-head::after{display:none !important;content:none !important}
body.aw-sub:not(.no-ph) .page-head{background-image:none !important}
@media(min-width:769px){body.aw-sub:not(.no-ph) .page-head .ph-text{max-width:calc(50vw - max(24px, (100vw - 1240px) / 2 + 24px) - 40px) !important}}
body.aw-sub .page-head::before,body.aw-sub .page-head::after{display:none !important;content:none !important}
body.aw-sub.no-ph .page-head{background:#f4f8ff !important;background-image:none !important}

/* ---------- 料金：見積り案内パネル（2026-10-05：料金表が非表示の間の見せ方） ---------- */
.aw-quote{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:clamp(20px,4vw,56px);align-items:center;padding:clamp(28px,4vw,48px) clamp(24px,4vw,56px);border-radius:20px;background:#f6f9fe;border:1px solid #e3eaf4}
.aw-quote .q-lb{display:inline-block;padding:4px 12px;border-radius:999px;background:#eaf1fd;color:var(--brand,#316de4);font:700 11px/1.4 Inter,sans-serif;letter-spacing:.18em;margin:0}
.aw-quote .q-main{font-size:clamp(18px,1.9vw,24px);font-weight:700;line-height:1.7;color:var(--ink,#202733);margin:16px 0 26px}
.aw-quote .q-ill img{width:100%;max-width:300px;height:auto;display:block;margin:0 auto}
body.aw-sub .note-box.aw-quote-note{background:none !important;border:0 !important;border-left:3px solid #d5deeb !important;border-radius:0 !important;padding:4px 0 4px 18px !important;font-size:13px;color:var(--ink-3,#8a8fa3)}
body.aw-sub .note-box.aw-quote-note b{font-size:13px;color:var(--ink-2,#4a5266);margin-bottom:4px}
@media(max-width:760px){.aw-quote{grid-template-columns:1fr}.aw-quote .q-ill{order:-1}.aw-quote .q-ill img{max-width:200px}}
/* 対応エリア：ヘッダー右をドットの日本地図に（2026-10-05） */
body.aw-sub .page-head .ph-bg.ph-bg-ill{background:#e8f0fc}
body.aw-sub .page-head .ph-bg.ph-bg-ill img{object-fit:contain !important;padding:6% 10%;transform:none !important}
/* 解決策の青い枠の中のボタン：白地に白文字になっていたのを修正（2026-10-05） */
body.aw-sub .prob-grid+.note-box .btn{background:#fff !important;color:var(--brand,#316de4) !important;text-decoration:none !important;border-color:#fff !important;margin-top:18px}
body.aw-sub .prob-grid+.note-box .btn .ar{background:#eaf1fd !important;color:var(--brand,#316de4) !important}
body.aw-sub .prob-grid+.note-box .btn:hover{background:#eaf1fd !important}

/* ============================================================
   Codexデザインレビュー反映（2026-10-05）
   ============================================================ */
/* 1. スマホの表：横スクロールの案内・左列固定・右端の影 */
.aw-scroll-hint{display:none}
@media(max-width:768px){
  .aw-scroll-hint{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin:0 0 8px;font-size:12px;font-weight:700;color:var(--brand,#316de4)}
  .aw-scroll-hint::after{content:"→";display:inline-block;animation:awNudge 1.4s ease-in-out infinite}
  @keyframes awNudge{50%{transform:translateX(4px)}}
  .tbl-scroll,.compare-scroll,.price-scroll{position:relative;background:linear-gradient(90deg,#fff 30%,rgba(255,255,255,0)),linear-gradient(90deg,rgba(255,255,255,0),#fff 70%) 100% 0,radial-gradient(farthest-side at 100% 50%,rgba(15,27,51,.18),rgba(15,27,51,0)) 100% 0;background-repeat:no-repeat;background-size:40px 100%,40px 100%,14px 100%;background-attachment:local,local,scroll}
  .tbl-scroll table tr>*:first-child,.compare-scroll table tr>*:first-child,.price-scroll table tr>*:first-child{position:sticky;left:0;z-index:1;background:#fff;box-shadow:1px 0 0 #e3eaf4}
  .compare-scroll table,.price-scroll table{min-width:640px}
}
/* 2. お問い合わせ：必須・任意の札を改行させない */
.req,.opt{white-space:nowrap;display:inline-block}
/* 3. 対応エリア一覧の関東：濃紺→淡い青 */
body.aw-sub tr.hl th{background:#eaf1fd !important;color:var(--brand,#316de4) !important;border-left:3px solid var(--brand,#316de4) !important}
/* 5. 代表メッセージ前の写真帯：暗い重ねをなくす */
html body .msg-band::before,html body .msg-band::after{display:none !important;content:none !important}
html body .msg-band img{filter:none !important;opacity:1 !important}
/* 7. 比較表の他社列：読める濃さに */
html body .compare-table td.them,html body .compare-table thead th.them{color:var(--ink-2,#4a5266) !important}
html body .compare-table td.them .mk{color:#8a93a8 !important}
/* 8. 薄い補足文字を全体的に濃く */
:root{--ink-3:#5f6779}
html body footer,html body footer p,html body footer small{color:#4a5266 !important}
body.aw-sub .note-box,body.aw-sub .note-box.aw-quote-note{color:var(--ink-2,#4a5266) !important}
.gis-note,.effect-note,.num-note,.dummy-flag,figcaption,.sample-fig figcaption{color:#5f6779 !important}
/* 9. 末尾の相談ボタンを大きく、主（塗り）と副（白枠）をはっきり */
body.aw-sub .cta-band .btn{font-size:16px !important;padding:16px 28px 16px 32px !important}
body.aw-sub .cta-band h2{margin-bottom:6px}
body.aw-sub .cta-band .btns{margin-top:30px;gap:16px}
/* 10. 効果イメージ：導入前はグレー、導入後は青で大きく */
body.aw-sub .effect-box .col:first-child .num{color:#8a93a8 !important;font-size:clamp(26px,2.4vw,32px) !important}
body.aw-sub .effect-box .col:last-child .num{font-size:clamp(40px,4vw,56px) !important}
body.aw-sub .effect-box .col:last-child .lb{color:var(--brand,#316de4)}
/* 11. スマホのフッターを2列に、FAQカテゴリを詰める */
@media(max-width:560px){
  html body footer .ft-grid{grid-template-columns:1fr 1fr !important;gap:28px 16px !important}
  html body footer .ft-grid>*:first-child{grid-column:1 / -1}
  html body footer .ft-col li{margin-bottom:4px}
  html body footer{padding:44px 0 36px !important}
  body.aw-sub .anchor-nav a{padding:14px 16px !important;min-height:0 !important;flex-direction:row !important;align-items:center;gap:10px}
}
/* 12. カードの角丸・影をそろえる（基準：角丸16px・薄い影） */
body.aw-sub .media-item,body.aw-sub .rel-grid a,body.aw-sub .type-card,body.aw-sub .dl-list li,body.aw-sub .gis-card,body.aw-sub .anchor-nav a,body.aw-sub .sample-box,body.aw-sub .effect-box,html body .news-card,html body .news-feat{border-radius:16px !important}
body.aw-sub .media-item,body.aw-sub .type-card,body.aw-sub .dl-list li,body.aw-sub .gis-card,body.aw-sub .anchor-nav a{box-shadow:0 14px 32px -28px rgba(15,27,51,.35) !important}
body.aw-sub .rel-grid a{border-color:#d5deeb !important}
body.aw-sub .rel-grid a>span:last-child{background:#dce8fc !important}
/* トップ「4つの理由」：立体アイコン→手描きイラスト（2026-10-05） */
html body #service .svc .no img.ic{width:84px !important;height:84px !important;object-fit:contain;margin-right:6px}

/* ============================================================
   メディア掲載：カード一覧＋種類で絞り込み（2026-10-05）
   ============================================================ */
.mf-chips{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 32px}
.mf-chips button{appearance:none;border:1px solid #d5deeb;background:#fff;color:var(--ink,#202733);font:700 14px/1 "Noto Sans JP",sans-serif;padding:11px 16px 11px 20px;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;gap:10px;transition:background .3s,color .3s,border-color .3s,transform .3s}
.mf-chips button span{font:700 11px/1 Inter,sans-serif;padding:4px 7px;border-radius:999px;background:#eef3fb;color:var(--ink-2,#4a5266)}
.mf-chips button:hover{border-color:var(--brand,#316de4);transform:translateY(-1px)}
.mf-chips button.on{background:var(--brand,#316de4);border-color:var(--brand,#316de4);color:#fff}
.mf-chips button.on span{background:rgba(255,255,255,.22);color:#fff}
body.aw-sub .media-list.mcards{display:grid !important;grid-template-columns:repeat(3,1fr);gap:22px}
body.aw-sub .mcards>li{list-style:none;transition:opacity .45s ease,transform .45s var(--aw-ease)}
body.aw-sub .mcards>li.mf-hide{display:none}
body.aw-sub .mcards>li.mf-in{animation:mfIn .5s var(--aw-ease) both;animation-delay:calc(var(--k,0) * 40ms)}
@keyframes mfIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
body.aw-sub .media-item.mcard{display:flex !important;flex-direction:column;height:100%;padding:0 !important;gap:0 !important;background:#fff;border:1px solid #e3eaf4 !important;border-radius:16px !important;overflow:hidden;position:relative;box-shadow:0 14px 32px -28px rgba(15,27,51,.35) !important;transition:transform .5s var(--aw-ease),box-shadow .5s var(--aw-ease),border-color .3s}
body.aw-sub .media-item.mcard:hover{transform:translateY(-5px);box-shadow:0 26px 44px -30px rgba(15,27,51,.45) !important;border-color:#c9d7ef !important}
body.aw-sub .mcard .media-thumb{aspect-ratio:16/8 !important;display:flex !important;flex-direction:column !important;align-items:flex-start !important;justify-content:flex-end !important;gap:8px;padding:20px 22px !important;border-radius:0 !important;border:0 !important;position:relative;overflow:hidden}
body.aw-sub .mcard .media-thumb small{font:700 10px/1 Inter,sans-serif !important;letter-spacing:.2em !important;opacity:.8}
body.aw-sub .mcard .media-thumb b{font-size:clamp(17px,1.5vw,21px);font-weight:800;line-height:1.35;letter-spacing:.02em}
body.aw-sub .mcard .media-thumb::after{content:"";position:absolute;right:-30px;top:-30px;width:120px;height:120px;border-radius:50%;background:rgba(255,255,255,.55);transition:transform .8s var(--aw-ease)}
body.aw-sub .mcard:hover .media-thumb::after{transform:scale(1.25)}
body.aw-sub .mt-web{background:#e8f0fd !important}body.aw-sub .mt-web *{color:#2a5cc6 !important}
body.aw-sub .mt-trade{background:#e4f5ec !important}body.aw-sub .mt-trade *{color:#12805a !important}
body.aw-sub .mt-radio{background:#fff0e1 !important}body.aw-sub .mt-radio *{color:#c9650f !important}
body.aw-sub .mt-video{background:#fde9ef !important}body.aw-sub .mt-video *{color:#c23a66 !important}
body.aw-sub .mt-release{background:#eef1f7 !important}body.aw-sub .mt-release *{color:#4a5266 !important}
body.aw-sub .mcard .mc-body{padding:18px 22px 22px;display:flex;flex-direction:column;flex:1}
body.aw-sub .mcard h3{font-size:15px !important;line-height:1.75 !important;margin:10px 0 12px !important;flex:1}
body.aw-sub .mcard .media-src{font-size:12px;font-weight:700;color:var(--ink-2,#4a5266) !important;margin:0;display:flex;flex-direction:column;gap:2px}
body.aw-sub .mcard .mc-sub{font-weight:500;color:#5f6779;font-size:11.5px}
body.aw-sub .mcard .media-type{background:none !important;box-shadow:none !important;padding:0 !important;font-size:11px !important;font-weight:700;letter-spacing:.06em}
body.aw-sub .mcard .media-type::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:6px;vertical-align:1px;background:currentColor}
body.aw-sub .mcard .t-web{color:#2a5cc6 !important}body.aw-sub .mcard .t-trade{color:#12805a !important}body.aw-sub .mcard .t-radio{color:#c9650f !important}body.aw-sub .mcard .t-video{color:#c23a66 !important}body.aw-sub .mcard .t-release{color:#4a5266 !important}
body.aw-sub .mcard .media-go{display:flex !important;position:absolute;right:16px;top:16px;width:34px;height:34px;border-radius:50%;background:#fff;align-items:center;justify-content:center;color:var(--brand,#316de4);font-size:14px;box-shadow:0 6px 14px -8px rgba(15,27,51,.35);transition:transform .4s var(--aw-ease)}
body.aw-sub .mcard:hover .media-go{transform:translate(2px,-2px)}
@media(max-width:980px){body.aw-sub .media-list.mcards{grid-template-columns:1fr 1fr}}
@media(max-width:600px){
  body.aw-sub .media-list.mcards{grid-template-columns:1fr;gap:12px}
  body.aw-sub .media-item.mcard{flex-direction:row !important;align-items:stretch}
  body.aw-sub .mcard .media-thumb{aspect-ratio:auto !important;width:104px;flex:none;padding:12px !important;justify-content:center !important}
  body.aw-sub .mcard .media-thumb small{font-size:8px !important;letter-spacing:.12em !important}
  body.aw-sub .mcard .media-thumb b{font-size:13px}
  body.aw-sub .mcard .media-thumb::after{width:70px;height:70px;right:-20px;top:-20px}
  body.aw-sub .mcard .mc-body{padding:12px 14px 14px}
  body.aw-sub .mcard h3{font-size:13.5px !important;margin:6px 0 8px !important}
  body.aw-sub .mcard .media-go{display:none !important}
  .mf-chips{gap:8px;margin-bottom:22px}.mf-chips button{font-size:13px;padding:9px 12px 9px 14px}
}
body.aw-sub .mcard .media-thumb{width:100% !important;max-width:none !important;min-height:0 !important;box-sizing:border-box}
@media(max-width:600px){body.aw-sub .mcard .media-thumb{width:104px !important}}

/* ---------- ポスティング：配布方法カードを「左に写真・右に文章」に（2026-10-05） ---------- */
body.aw-sub .type-grid{grid-template-columns:1fr 1fr;gap:20px}
body.aw-sub .type-card{display:grid !important;grid-template-columns:40% 1fr;grid-auto-rows:min-content;column-gap:0;padding:0 !important;align-content:start}
body.aw-sub .type-card>.tc-photo{grid-column:1;grid-row:1 / span 10;margin:0 !important;height:100%;min-height:100%;aspect-ratio:auto !important;border-radius:0 !important}
body.aw-sub .type-card>.tc-photo img{width:100%;height:100%;object-fit:cover;display:block}
body.aw-sub .type-card>*:not(.tc-photo){grid-column:2;margin-left:24px !important;margin-right:22px !important}
body.aw-sub .type-card>.tag{margin-top:22px !important}
body.aw-sub .type-card>.fit{margin-bottom:22px !important}
body.aw-sub .type-card h3{font-size:18px !important;margin-top:6px !important}
body.aw-sub .type-card p{font-size:13.5px;line-height:1.85}
@media(max-width:980px){body.aw-sub .type-grid{grid-template-columns:1fr}}
@media(max-width:560px){
  body.aw-sub .type-card{grid-template-columns:34% 1fr}
  body.aw-sub .type-card>*:not(.tc-photo){margin-left:14px !important;margin-right:14px !important}
  body.aw-sub .type-card>.tag{margin-top:14px !important}
  body.aw-sub .type-card>.fit{margin-bottom:14px !important}
  body.aw-sub .type-card h3{font-size:16px !important}
  body.aw-sub .type-card p{font-size:13px}
}

/* ---- posting「他の広告媒体との違い」: 比較表（ポスティング列を青で強調） 2026-10-05 ---- */
body.aw-sub .tbl-scroll:has(.aw-vs){background:#f6f8fb;border-radius:16px;padding:20px 20px 8px}
body.aw-sub .def-table.aw-vs{border-top:0;border-collapse:separate;border-spacing:0;background:transparent}
body.aw-sub .def-table.aw-vs th,body.aw-sub .def-table.aw-vs td{border:0;border-bottom:1px dashed #dfe5ee;padding:18px 16px;text-align:center;vertical-align:middle;font-size:14px;line-height:1.7;color:#4a5160}
body.aw-sub .def-table.aw-vs thead th{background:transparent;color:var(--ink);font-size:13px;font-weight:700;padding:20px 16px;border-bottom:2px solid var(--ink)}
body.aw-sub .def-table.aw-vs thead th:first-child{background:#fff;border-bottom:1px solid #dfe5ee}
body.aw-sub .def-table.aw-vs tbody th{background:#fff;color:var(--ink);font-weight:700;font-size:14px;width:20%}
body.aw-sub .def-table.aw-vs thead th:nth-child(2){background:var(--brand);color:#fff;border-radius:10px 10px 0 0;border-bottom:0;font-size:14px}
body.aw-sub .def-table.aw-vs tbody td:nth-child(2){background:#eef4fe;color:var(--ink);font-weight:700;border-left:2px solid var(--brand);border-right:2px solid var(--brand);border-bottom-color:#cfdcf7}
body.aw-sub .def-table.aw-vs tbody tr:last-child td:nth-child(2){border-bottom:2px solid var(--brand)}
body.aw-sub .def-table.aw-vs tbody tr:last-child th,body.aw-sub .def-table.aw-vs tbody tr:last-child td:not(:nth-child(2)){border-bottom:0}
body.aw-sub .def-table.aw-vs tbody tr:hover{background:transparent}
body.aw-sub .def-table.aw-vs tbody tr:hover th{background:#fff}
@media (max-width:700px){
  body.aw-sub .tbl-scroll:has(.aw-vs){padding:12px 12px 4px;border-radius:12px}
  body.aw-sub .def-table.aw-vs th,body.aw-sub .def-table.aw-vs td{padding:14px 10px;font-size:13px}
}

/* ---- staff「2階層の組織」: 縦の組織図 2026-10-05 ---- */
.aw-org{max-width:760px;margin:40px auto 0;display:flex;flex-direction:column;align-items:center}
.aw-org-box{width:100%;background:#fff;border:2px solid var(--brand);border-radius:16px;padding:26px 28px;text-align:center;box-shadow:0 10px 30px rgba(20,60,140,.07)}
.aw-org-box.top{background:var(--brand);border-color:var(--brand)}
.aw-org-name{font-size:20px;font-weight:800;color:var(--ink);letter-spacing:.04em}
.aw-org-box.top .aw-org-name{color:#fff}
.aw-org-roles{list-style:none;margin:16px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
.aw-org-roles li{background:#eef4fe;color:var(--brand);font-weight:700;font-size:15px;border-radius:10px;padding:12px 8px}
.aw-org-box.top .aw-org-roles li{background:#fff}
.aw-org-line{width:2px;height:44px;background:var(--brand)}
@media (max-width:700px){
  .aw-org{margin-top:28px}
  .aw-org-box{padding:20px 14px;border-radius:14px}
  .aw-org-name{font-size:17px}
  .aw-org-roles{gap:6px}
  .aw-org-roles li{font-size:13px;padding:10px 4px}
  .aw-org-line{height:32px}
}

/* ---- 導入事例 実データ掲載 2026-10-05 ---- */
#caseGrid .case-card:nth-child(n+7){display:none}
.case-card .result .num .fr,.cm-result .num .fr,.case-kpi .nm .ar{font-family:"Noto Sans JP",sans-serif;font-size:.55em;font-weight:700;color:var(--ink-3);margin:0 .35em;vertical-align:.15em}
.case-card .meta .lbl,.case-sw{display:inline-block;font-size:11px;font-weight:700;letter-spacing:.06em;background:#fff1e3;color:#d86a12;border-radius:999px;padding:3px 10px;margin-right:8px}
.case-sw{margin:0 0 0 12px;vertical-align:1px}
.cm-client{font-size:13px;font-weight:700;color:var(--ink-3);margin-top:6px}
body.aw-sub .case-item{border:1px solid #e3e9f2;border-radius:18px;box-shadow:0 12px 34px rgba(20,60,140,.06);margin-bottom:32px}
body.aw-sub .case-main{grid-template-columns:1.25fr 1fr}
body.aw-sub .case-fig{aspect-ratio:3/2}
body.aw-sub .case-kpi{background:#f3f7fe}
body.aw-sub .case-kpi .k{background:transparent;padding:32px 36px}
body.aw-sub .case-kpi .cl{font-size:14px;font-weight:700;color:var(--ink);margin-bottom:18px;padding-bottom:14px;border-bottom:1px solid #d9e4f6}
body.aw-sub .case-kpi .lb{font-size:13px;letter-spacing:.06em;color:var(--ink-2)}
body.aw-sub .case-kpi .nm{font-size:52px;margin-top:6px}
body.aw-sub .case-kpi .nm small{font-size:20px}
body.aw-sub .cs-flow{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;padding:30px}
body.aw-sub .cs-block,body.aw-sub .cs-block:first-child{border-top:0;padding:0}
body.aw-sub .cs-block .lb{background:var(--brand);border-radius:999px;padding:4px 14px}
body.aw-sub .cs-block:last-child .lb{background:#f0932b}
body.aw-sub .cs-block p{font-size:14px;line-height:1.9}
@media (max-width:768px){
  body.aw-sub .case-main{grid-template-columns:1fr}
  body.aw-sub .case-kpi .k{padding:22px 20px}
  body.aw-sub .case-kpi .nm{font-size:40px}
  body.aw-sub .cs-flow{grid-template-columns:1fr;gap:22px;padding:22px 20px 26px}
}

/* ==== 公開前点検（2026-10-06）: トップのスマホ表示 ==== */
@media (max-width:620px){
  /* お知らせ: 2列→写真左・文字右の1列リスト。カテゴリ札が切れないように */
  #news .news-row{display:grid !important;grid-template-columns:1fr !important;gap:12px !important}
  #news .news-card{flex-direction:row !important;align-items:stretch}
  #news .news-card .thumb{flex:0 0 108px;width:108px;aspect-ratio:1/1 !important;height:auto}
  #news .news-card .bd{flex:1;min-width:0;margin:0 !important;padding:14px 16px !important}
  #news .news-meta{flex-wrap:wrap;gap:6px 10px !important;font-size:13px !important}
  #news .news-meta .cat{flex-shrink:0;white-space:nowrap;font-size:11px !important;height:22px !important;padding:0 9px !important}
  #news .news-card h4{font-size:14px !important;margin-top:6px !important;line-height:1.6}
  /* 事例カード: 数値の途中で折り返さない */
  #caseGrid .case-card .result{flex-wrap:wrap;gap:4px 8px}
  #caseGrid .case-card .result .lb{width:100%}
  #caseGrid .case-card .result .num{white-space:nowrap;font-size:26px}
  /* 料金下の2ボタン: 重ならないよう縦に等幅で */
  #price .price-cta{display:flex;flex-direction:column;align-items:stretch;gap:12px;max-width:340px;margin-left:auto;margin-right:auto}
  #price .price-cta .btn{margin:0 !important;justify-content:center;width:100%}
  /* ご利用の流れ: イラスト左・文字右の横組み */
  html body #flow .flow-list .flow{display:grid !important;grid-template-columns:84px 1fr;grid-template-rows:auto auto 1fr;column-gap:16px;align-items:start;align-content:start;padding:22px 0 !important;min-height:0 !important}
  html body #flow .flow-list .flow .fl-img{grid-column:1;grid-row:1 / span 3;order:0 !important;margin:0 !important;width:84px}
  #flow .flow-list .flow .fl-img img{width:84px !important;height:auto}
  html body #flow .flow-list .flow .st,html body #flow .flow-list .flow h3,html body #flow .flow-list .flow p{grid-column:2;order:0 !important;margin-top:0 !important;margin-bottom:4px !important;min-height:0 !important;height:auto !important}
  #flow .flow-list .flow .fl-ic{display:none}
  /* 役員: 顔写真を小さく左、役職・氏名を右、経歴は全幅 */
  .member:not(.member-wide){display:grid !important;grid-template-columns:112px 1fr;column-gap:16px;align-items:end}
  .member:not(.member-wide) .ph{grid-column:1;grid-row:1 / span 2;order:0 !important;width:112px !important;aspect-ratio:1/1 !important;border-radius:14px;overflow:hidden}
  .member:not(.member-wide) .bd{display:contents !important}
  .member:not(.member-wide) .pos{grid-column:2;grid-row:1;margin:0 0 4px !important;align-self:end}
  .member:not(.member-wide) h4{grid-column:2;grid-row:2;align-self:start;margin:0 !important;font-size:19px !important}
  .member:not(.member-wide) .bd>p:not(.pos){grid-column:1 / -1;grid-row:3;margin-top:14px}
  .member-grid{gap:32px !important}
  /* 監査部の枠: 空き枠に見えないよう詰める */
  .member-wide .ph{min-height:0 !important;height:auto !important;aspect-ratio:auto !important;padding:22px 16px !important}
  .member-wide h4{font-size:20px !important;word-break:keep-all;overflow-wrap:anywhere}
}
/* 見出し末尾の句点だけが次行に落ちないように */
#os .u,.os-text .u{display:inline !important}
@media (max-width:620px){
  html body #flow .flow-list .flow .fl-img{height:auto !important;min-height:0 !important;grid-row:1 / 4 !important}
  html body #flow .flow-list .flow .st{grid-row:1 !important}
  html body #flow .flow-list .flow h3{grid-row:2 !important}
  html body #flow .flow-list .flow p{grid-row:3 !important}
  html body #flow .flow-list .flow{grid-template-rows:auto auto 1fr !important}
}

/* ==== 公開前点検（2026-10-06）: 下層ページ ==== */
/* SOLUTION欄: 地の文も白で読めるように */
body.aw-sub .prob-grid+.note-box{color:rgba(255,255,255,.94) !important}
/* エリア設計: 占有率6段階に色チップ */
.sample-legend tr td:first-child{color:#fff;font-weight:800}
.sample-legend tr:nth-child(1) td:first-child{background:#1f4fb8}
.sample-legend tr:nth-child(2) td:first-child{background:#316de4}
.sample-legend tr:nth-child(3) td:first-child{background:#5b8ef0}
.sample-legend tr:nth-child(4) td:first-child{background:#8db1f5;color:#12306e}
.sample-legend tr:nth-child(5) td:first-child{background:#bcd2f9;color:#12306e}
.sample-legend tr:nth-child(6) td:first-child{background:#e3ecfc;color:#5a6a86}
@media (max-width:620px){
  .sample-legend td:first-child{width:44px;padding:9px 6px}
  /* 採用: 募集職種の表を職種ごとのカードに */
  .tbl-scroll:has(.aw-stack){overflow:visible}
  .tbl-scroll:has(.aw-stack)+.aw-scroll-hint,.aw-scroll-hint:has(+.tbl-scroll .aw-stack){display:none}
  body.aw-sub .def-table.aw-stack{min-width:0 !important;border-top:0}
  .def-table.aw-stack thead{display:none}
  .def-table.aw-stack,.def-table.aw-stack tbody,.def-table.aw-stack tr,.def-table.aw-stack th,.def-table.aw-stack td{display:block;width:auto !important}
  .def-table.aw-stack tr{background:#fff;border:1px solid #e3e9f2;border-radius:16px;padding:18px 18px 8px;margin-bottom:14px;box-shadow:0 6px 18px rgba(20,60,140,.05)}
  body.aw-sub .def-table.aw-stack th,body.aw-sub .def-table.aw-stack td{border:0 !important;padding:0 0 12px !important;position:static}
  body.aw-sub .def-table.aw-stack th{font-size:17px !important;color:var(--ink)}
  .def-table.aw-stack td::before{display:block;font-size:11px;font-weight:700;letter-spacing:.08em;color:var(--brand,#316de4);margin-bottom:4px}
  .def-table.aw-stack td:nth-of-type(1)::before{content:"仕事内容"}
  .def-table.aw-stack td:nth-of-type(2)::before{content:"求める人物像"}
  /* メディア: 絞り込みボタンを2列の均等幅に */
  .mf-chips{display:grid !important;grid-template-columns:1fr 1fr;gap:8px !important}
  .mf-chips button{min-height:44px;justify-content:center;width:100%}
  /* お問い合わせ: 同意欄のまとまり・チェックボックス */
  #f-agree{width:22px;height:22px;flex:0 0 22px;margin-top:2px}
  label:has(#f-agree){display:flex;gap:12px;align-items:flex-start;background:#f3f7fe;border-radius:12px;padding:14px}
  label:has(#f-agree) .req{white-space:nowrap}
  /* フッター: COMPANY列も2列に */
  .ft-col:last-child ul{columns:2;column-gap:16px}
  .ft-col:last-child ul li{break-inside:avoid}
}
/* 入力例の文字色を読める濃さに */
input::placeholder,textarea::placeholder{color:#8a93a6;opacity:1}
/* 料金: 3プランのカード（単価なし） */
.aw-plans{list-style:none;margin:0 0 28px;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.aw-plans li{background:#fff;border:1px solid #e3e9f2;border-radius:16px;padding:28px 26px;box-shadow:0 10px 28px rgba(20,60,140,.05);display:flex;flex-direction:column}
.aw-plans .no{font:700 12px/1 Inter,sans-serif;letter-spacing:.14em;color:var(--brand,#316de4)}
.aw-plans h3{font-size:19px;font-weight:800;margin:12px 0 12px;line-height:1.5}
.aw-plans h3 small{display:block;font-size:12px;font-weight:700;color:var(--ink-3);margin-top:2px}
.aw-plans p{font-size:14px;line-height:1.85;color:var(--ink-2)}
.aw-plans .rec{margin-top:auto;padding-top:14px;border-top:1px dashed #dbe4f2;font-size:12.5px;font-weight:700;color:var(--brand,#316de4)}
.aw-plans p+.rec{margin-top:16px}
@media (max-width:900px){.aw-plans{grid-template-columns:1fr;gap:14px}.aw-plans li{padding:22px 20px}}
/* posting: 7項目の最後を2列分に広げて余りを作らない */
@media (min-width:769px){body.aw-sub .num-list>li:last-child:nth-child(odd){grid-column:1 / -1}}
/* tower: 「向かないもの」は推奨と区別する補足 */
.mat-card.aw-ng{grid-column:1 / -1;background:#f4f6f9 !important;box-shadow:none !important;border:1px dashed #cfd7e3 !important}
.mat-card.aw-ng h4{color:#5a6577 !important}
.mat-card.aw-ng h4::after,.mat-card.aw-ng::after{display:none !important}
@media (max-width:620px){.def-table.aw-stack th::before,.def-table.aw-stack th::after{display:none !important}body.aw-sub .def-table.aw-stack th{box-shadow:none !important;background:none !important}}
@media (max-width:620px){.ft-grid .ft-col:last-child{grid-column:1 / -1}.ft-col:last-child ul{column-gap:20px}}
.mat-card.aw-ng h4{border-bottom-color:#d5dce6 !important;background-image:none !important}
@media (min-width:769px){body.aw-sub .num-list>li:last-child:nth-child(odd) p{max-width:860px}}
/* トップ役員紹介: PCは4列（2026-10-06） */
@media (min-width:1101px){body.aw-home #management .member-grid{grid-template-columns:repeat(4,1fr) !important;gap:44px 24px !important}body.aw-home #management .member:not(.member-wide) h4{font-size:18px}}
@media (min-width:901px) and (max-width:1100px){body.aw-home #management .member-grid{grid-template-columns:repeat(3,1fr) !important}}

/* ==== 下層ヘッダー: 写真を角丸カードに収め、文字を上下中央へ（2026-10-06） ==== */
@media (min-width:769px){
  body.aw-sub:not(.no-ph) .page-head{align-items:center !important;min-height:clamp(540px,76vh,760px) !important;padding:118px 0 64px !important;
    background:radial-gradient(circle at 8% 100%,#e6efff 0,rgba(230,239,255,0) 42%),#f4f8ff !important}
  body.aw-sub:not(.no-ph) .page-head .ph-bg{left:calc(50% + 8px) !important;right:clamp(20px,3vw,48px) !important;top:104px !important;bottom:44px !important;
    border-radius:28px !important;box-shadow:0 24px 60px rgba(28,64,140,.14)}
  body.aw-sub:not(.no-ph) .page-head .ph-text{padding-right:24px}
  body.aw-sub:not(.no-ph) .page-head .en{margin-bottom:4px}
  body.aw-sub:not(.no-ph) .page-head .lead{margin-top:28px;max-width:34em}
}
/* トップ ワンストップ: スマホは見出しの直後に図を出す（2026-10-06） */
@media (max-width:768px){
  #onestop .os-grid{display:flex !important;flex-direction:column}
  #onestop .os-text{display:contents}
  #onestop .os-text .sec-head{order:1}
  #onestop .osfig{order:2;margin:8px auto 36px}
  #onestop .os-note{order:3}
  #onestop .os-cta{order:4}
}
@media (max-width:768px){
  #onestop .os-grid{align-items:stretch !important;gap:0 !important}
  #onestop .os-text .sec-head{width:100%;margin:0 !important;padding:0 !important;text-align:left}
  #onestop .os-cta{margin-top:24px !important}
}
@media (max-width:768px){#onestop .osfig{margin:72px auto 40px !important}}
@media (max-width:768px){#onestop .os-cta{order:3 !important;margin:0 0 28px !important}#onestop .os-note{order:4 !important}}
/* 青枠で自社列を囲む比較表は、左列固定をやめて表ごと横に動かす（固定列と枠がずれるため 2026-10-06） */
.compare-scroll table tr>*:first-child,.tbl-scroll:has(.aw-vs) table tr>*:first-child{position:static !important;box-shadow:none !important}
@media (max-width:620px){.compare-scroll table tr>*:first-child{width:120px;min-width:120px}}
/* トップ料金表: スマホはプランごとのカード（2026-10-06） */
@media (max-width:620px){
  #price .price-scroll{overflow:visible !important;padding:0 !important;background:none !important}
  #price .price-scroll+.aw-scroll-hint,#price .aw-scroll-hint{display:none !important}
  #price .price-table{min-width:0 !important;width:100% !important;display:block;border:0 !important}
  #price .price-table thead{display:none}
  #price .price-table tbody{display:flex;flex-direction:column;gap:14px}
  #price .price-table tr{display:flex;flex-direction:column;background:#fff;border:1px solid #e3e9f2;border-radius:16px;padding:20px 20px 18px;box-shadow:0 8px 22px rgba(20,60,140,.06)}
  #price .price-table th,#price .price-table td{display:block;position:static !important;width:auto !important;min-width:0 !important;border:0 !important;padding:0 !important;background:none !important;box-shadow:none !important;text-align:left !important}
  #price .price-table th{order:1;font-size:18px !important;line-height:1.5}
  #price .price-table th .sub{display:block;font-size:12px;margin-top:2px}
  #price .price-table td:nth-of-type(2){order:2;margin:12px 0 12px;padding:12px 14px !important;background:#f1f6fe !important;border-radius:10px}
  #price .price-table td:nth-of-type(2)::before{content:"参考単価（1枚）";display:block;font-size:11px;font-weight:700;color:var(--ink-3);margin-bottom:2px}
  #price .price-table td:nth-of-type(2) .yen{font-size:26px}
  #price .price-table td:nth-of-type(1){order:3;font-size:14px;line-height:1.8}
  #price .price-table td:nth-of-type(3){order:4;font-size:13px;margin-top:12px;padding-top:12px !important;border-top:1px dashed #dbe4f2 !important}
  #price .price-table td:nth-of-type(3)::before{content:"向いている用途";display:block;font-size:11px;font-weight:700;color:var(--brand,#316de4);margin-bottom:2px}
}
@media (max-width:620px){#price .price-table td:nth-of-type(2) .yen{line-height:1.15;display:block}#price .price-table td:nth-of-type(2) .yen small{font-size:14px}}
/* 役員紹介（スマホ）: 1人ずつカード。写真左・役職氏名右・経歴下（2026-10-06） */
@media (max-width:620px){
  /* 会社概要 */
  .exec-grid{grid-template-columns:1fr !important;gap:14px !important}
  .exec-card{display:grid !important;grid-template-columns:96px 1fr;column-gap:16px;align-items:end;background:#fff;border:1px solid #e3e9f2;border-radius:18px;padding:18px !important;box-shadow:0 8px 22px rgba(20,60,140,.06)}
  .exec-card .exec-photo{grid-column:1;grid-row:1 / span 2;width:96px !important;height:96px !important;aspect-ratio:1/1 !important;margin:0 !important;border-radius:14px;overflow:hidden}
  .exec-card .exec-photo img{width:100%;height:100%;object-fit:cover;object-position:center 22%}
  .exec-card .role{grid-column:2;grid-row:1;align-self:end;margin:0 0 4px !important}
  .exec-card h3{grid-column:2;grid-row:2;align-self:start;margin:0 !important;font-size:19px !important}
  .exec-card>p:not(.role){grid-column:1 / -1;grid-row:3;margin:14px 0 0 !important;padding-top:14px;border-top:1px dashed #dbe4f2;font-size:13.5px;line-height:1.85}
  /* トップ */
  #management .member:not(.member-wide){background:#fff;border:1px solid #e3e9f2;border-radius:18px;padding:18px !important;box-shadow:0 8px 22px rgba(20,60,140,.06);column-gap:16px !important;grid-template-columns:96px 1fr !important}
  #management .member:not(.member-wide) .ph{width:96px !important;border-radius:14px}
  #management .member:not(.member-wide) .bd>p:not(.pos){margin-top:14px !important;padding-top:14px;border-top:1px dashed #dbe4f2;font-size:13.5px !important;line-height:1.85}
  #management .member-grid{gap:14px !important}
}

/* ==== 文字サイズのルール統一（2026-10-06）====
   大見出しH3-L 28/21 ・ カード見出しH3 18/17 ・ 小見出しH4 16/15 ・ リード 16/15
   段落本文 15/14 ・ カード内の文 14/13.5 ・ 注記 12.5 （PC/スマホ） */
:root{--t-h3l:28px;--t-h3:18px;--t-h4:16px;--t-lead:16px;--t-body:15px;--t-card:14px;--t-note:12.5px}
@media (max-width:768px){:root{--t-h3l:21px;--t-h3:17px;--t-h4:15px;--t-lead:15px;--t-body:14px;--t-card:13.5px;--t-note:12.5px}}
/* 大きめの小見出し */
html body .mech h3,html body .msg-body h3,html body .ow-txt h3,html body .svc h3{font-size:var(--t-h3l) !important;line-height:1.5}
/* カードの小見出し */
html body .feat h3,html body .flow h3,html body .has-ill h3,html body .num-list h3,html body .tower-box h3,html body .wrap h3.sub-h,
html body .ai-check h3,html body .body h3,html body .prob-card h3,html body .switch-card h3,html body .type-card h3,html body .way h3,
html body .aw-plans h3,html body .exec-card h3,html body .ask-box h3,html body .branch h3,html body .sample-box h3,html body .mc-body h3,
html body .case-card h3,html body .lom-card h3,html body .bd h3{font-size:var(--t-h3) !important;line-height:1.55}
/* 小見出し */
html body .gis-card h4,html body .mat-card h4,html body .cs-block h4{font-size:var(--t-h4) !important}
/* セクション見出し下の説明文 */
html body .sec-head p,html body .sec-head .sec-lead{font-size:var(--t-lead) !important;line-height:1.9}
/* 段落の本文 */
html body .mech p,html body .body-txt p,html body .msg-body p,html body .a p,html body .ac p,html body .os-note p,html body .ow-txt p,
html body .cta-box p,html body .honest p,html body .wrap>p:not([class]),html body .ai-check p,html body .ask-box p,html body .note-box p{font-size:var(--t-body) !important;line-height:1.95}
/* カード内の文 */
html body .prob-card p,html body .has-ill p,html body .cs-block p,html body .check-list li,html body .dl-list li,html body .type-card p,
html body .exec-card>p:not(.role),html body .feat p:not(.lim),html body .aw-plans p:not(.no):not(.rec),html body .lom-card p,html body .flow p,
html body .bd p:not(.pos),html body .mat-card p,html body .gis-card p,html body .beta p,html body .branch p,html body .tower-box p,
html body .switch-card p.sw-txt,html body .way p.desc,html body .num-list p,html body .row dd,html body .news-ui-list p,html body .member .bd>p:not(.pos){font-size:var(--t-card) !important;line-height:1.85}
/* 注記 */
html body .wrap p.caution,html body .wrap p.ph-note,html body .wrap p.media-note,html body .gis-note,html body .price-note,html body p.lim,
html body .aw-plans p.rec,html body .mc-body p.media-src,html body .way p.foot,html body .way p.hour,html body .ill-legend{font-size:var(--t-note) !important}
html body.aw-sub .mcards .mc-body h3,html body.aw-sub .type-card h3,html body.aw-sub .prob-card h3,html body.aw-sub .prob-grid .prob-card h3{font-size:var(--t-h3) !important}
html body.aw-sub .page-head .lead,html body .cta-box p{font-size:var(--t-lead) !important}
/* ローディング: 旧ローダーの中身を最初から出さず、紺の背景で始める（2026-10-06） */
#loader:not(.ldx-on){background:#0f1b33 !important}
#loader>:not(.ldx){display:none !important}
/* 下層タブ（スマホ）: 線がずれる2段組みをやめ、角丸ボタンの2×2に（2026-10-06） */
@media (max-width:680px){
  body.aw-sub .svc-tabs{border:0 !important;background:#fff;padding:16px 0 4px}
  body.aw-sub .svc-tabs .wrap{grid-template-columns:1fr 1fr !important;gap:8px}
  body.aw-sub .svc-tabs a,body.aw-sub .svc-tabs a:last-child,body.aw-sub .svc-tabs a:nth-child(-n+2){border:1px solid #dfe6f0 !important;border-radius:999px;padding:12px 6px !important;font-size:13px;color:var(--ink-2);background:#fff}
  body.aw-sub .svc-tabs a.on{background:#eaf1fd !important;border-color:#bcd0f5 !important;color:var(--brand,#316de4) !important}
  body.aw-sub .svc-tabs a.on::after{display:none}
}
/* 配布方法の種類（スマホ）: 写真は上に横長、文章は下に全幅（縦長の切り抜きをやめる 2026-10-06） */
@media (max-width:620px){
  body.aw-sub .type-card{grid-template-columns:1fr !important;padding-bottom:20px !important}
  body.aw-sub .type-card>.tc-photo{grid-column:1 !important;grid-row:auto !important;height:auto !important;min-height:0 !important;aspect-ratio:16/9 !important;margin:0 0 18px !important}
  body.aw-sub .type-card>*:not(.tc-photo){grid-column:1 !important;margin-left:20px !important;margin-right:20px !important}
}
/* 下層ヘッダー（スマホ）: パンくずを淡い青の上に、写真は余白付きの角丸カードに（2026-10-06） */
@media (max-width:768px){
  body.aw-sub:not(.no-ph) .crumb{background:#f4f8ff !important}
  body.aw-sub:not(.no-ph) .page-head{background:#f4f8ff !important}
  body.aw-sub:not(.no-ph) .page-head .ph-bg{margin:4px 16px 28px !important;border-radius:20px !important;overflow:hidden;box-shadow:0 14px 34px rgba(28,64,140,.12);aspect-ratio:16/10}
}
/* 見出しの下線: 折り返しても各行で同じ太さに（2026-10-06） */
body.aw-sub .page-head h1 .u{-webkit-box-decoration-break:clone;box-decoration-break:clone}
body.aw-sub .page-head h1 .u{background:none !important;text-decoration:underline;text-decoration-color:rgba(49,109,228,.35);text-decoration-thickness:.12em;text-underline-offset:.16em;text-decoration-skip-ink:none}
body.aw-sub .page-head h1 .aw-ln>span{padding-bottom:.14em}
/* 料金: 3プランのアイコン（2026-10-06） */
.aw-plans .pl-ic{width:112px;height:112px;object-fit:contain;margin:-6px 0 12px -6px;mix-blend-mode:multiply}
@media (max-width:900px){.aw-plans .pl-ic{width:88px;height:88px}}
/* お問い合わせ: フォームが主役なので冒頭は低く（2026-10-06） */
@media (min-width:769px){
  body.aw-sub .page-head.ph-compact{min-height:clamp(360px,46vh,440px) !important;padding:110px 0 36px !important}
  body.aw-sub .page-head.ph-compact .ph-bg{top:96px !important;bottom:28px !important}
  body.aw-sub .page-head.ph-compact h1{font-size:clamp(28px,3vw,42px)}
}
@media (max-width:768px){
  body.aw-sub .page-head.ph-compact .ph-bg{aspect-ratio:16/7 !important;margin-bottom:20px !important}
  body.aw-sub .page-head.ph-compact{padding-bottom:28px !important}
}
@media (min-width:769px){body.aw-sub .page-head.ph-compact{padding-top:132px !important;min-height:clamp(380px,48vh,460px) !important}}
/* お問い合わせ（メディアの方）: 掲載・出演実績（2026-10-06） */
.mtrack{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:8px}
.mt-col{background:#fff;border:1px solid #e3e9f2;border-radius:16px;padding:24px 24px 20px;box-shadow:0 10px 26px rgba(20,60,140,.05)}
.mt-lb{font:700 11px/1 Inter,sans-serif;letter-spacing:.16em;color:var(--brand,#316de4)}
.mt-col h3{font-size:var(--t-h3,18px);font-weight:800;margin:10px 0 12px}
.mt-col ul,.mtopics ul{list-style:none;margin:0;padding:0}
.mt-col li{font-size:var(--t-card,14px);line-height:1.7;padding:9px 0;border-top:1px dashed #dbe4f2;color:var(--ink)}
.mt-col li:first-child{border-top:0;padding-top:0}
.mtopics{margin-top:18px;background:#f1f6fe;border-radius:16px;padding:22px 24px}
.mtopics .mt-h{font-size:var(--t-h4,16px);font-weight:800;margin:8px 0 10px}
.mtopics ul{display:grid;grid-template-columns:1fr 1fr;gap:8px 24px}
.mtopics li{font-size:var(--t-card,14px);padding-left:18px;position:relative;line-height:1.7}
.mtopics li::before{content:"";position:absolute;left:0;top:.62em;width:8px;height:8px;border-radius:50%;background:var(--brand,#316de4)}
.mt-more{margin-top:18px;text-align:right}
.mt-more a{font-size:14px;font-weight:700;color:var(--brand,#316de4)}
.mt-more .ar{margin-left:6px}
@media (max-width:768px){.mtrack{grid-template-columns:1fr;gap:12px}.mtopics ul{grid-template-columns:1fr}.mt-col{padding:20px}}
#mediaTrack .sec-head p:not(.sec-en){margin-top:14px}
