/* 2026-10-03 試作：トップの雰囲気を強める（イラスト・曲線・動き）。v7の上に重ねる。 */
:root{--floor-warm:#f3ede3;--accent-sun:#f2d27e;--accent-clay:#e3a083;--accent-sky:#d7e8ef;--sage:#cad8b9;--glow:#e4efd2;--pale:#a3bfb0;--pale-lime:#dbe9c6;--ring:conic-gradient(var(--lime) 0deg 105deg,transparent 105deg 125deg,var(--teal) 125deg 285deg,transparent 285deg 300deg,var(--lime) 300deg 360deg)}

/* ---- 線画の共通部品 ---- */
.ar-svg{display:block;fill:none;stroke:var(--teal);stroke-width:2.7;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.ar-svg .ln{stroke:var(--teal);fill:none}
.ar-svg .wash{fill:#edf4e8;stroke:none;transform:translate(3px,2px)}
.ar-svg .sage{fill:var(--sage);stroke:none}
.ar-svg .glow{fill:var(--glow);stroke:none}
.ar-svg .lt{stroke:var(--lime);stroke-width:6;fill:none}
.ar-svg .lts{stroke:var(--lime);stroke-width:3.5;fill:none}
.ar-svg .pale{stroke:var(--pale);stroke-width:2.2;fill:none}
.ar-svg .awning{fill:var(--pale-lime);stroke:none}
.ar-svg .lamp{fill:var(--lime);stroke:none}
.ar-svg .road{stroke:var(--sage);stroke-width:9;fill:none}
.ar-svg .vine{stroke:#bcd3b8;stroke-width:1.6;fill:none}
.ar-svg .hill-fill{fill:#eef4ed;stroke:none}
.ar-svg .hill-line{stroke:#bcd3b8;stroke-width:2;fill:none}
.ar-svg .leaf{transform-box:fill-box;transform-origin:0 50%;transform:scaleX(.36)}
.ar-svg .leaf-face{fill:#fff;stroke:var(--teal);stroke-width:2.7;vector-effect:non-scaling-stroke}
.ar-svg .leaf .ln{vector-effect:non-scaling-stroke}
.ar-svg .sway{transform-box:fill-box;transform-origin:50% 100%}
.ar-dr{stroke-dasharray:1 1;stroke-dashoffset:0}
.ar-street .paint{stroke:#fff;stroke-width:250;fill:none;stroke-linecap:round}

/* ---- 開いた円（ロゴの2色の弧） ---- */
.atmos .consultation-control .plus,.atmos .hero-scroll span,.ar-node{border:0;background:radial-gradient(farthest-side,#fff calc(100% - 2px),transparent calc(100% - 1.5px)),var(--ring)}
.atmos .consultation-control .plus{width:32px;height:32px;transition:transform .45s var(--ease-out)}
.atmos .consultation-control .plus:before,.atmos .consultation-control .plus:after{inset:15px 10px auto}
.atmos .consultation-row[open] .plus{transform:rotate(180deg)}
.atmos .hero-scroll span{width:36px;height:36px}

/* ---- ヒーロー：PCは文章の右、スマホは下。前の配置から家族を少し縮小 ---- */
/* 2026-10-03 社長指摘：遠景の街並みは不要／家族と線の間に余白／スマホは中央でそろえる */
.home-refined.atmos .hero{display:flex;flex-direction:column;justify-content:center;min-height:calc(100svh - 81px);padding:28px 0 32px;overflow-x:clip}
.home-refined.atmos .hero-inner{position:relative;width:min(1120px,calc(100% - 40px))}
.home-refined.atmos .hero-art.hero-art--family{position:relative;max-width:250px}
.ar-hero-line{margin-top:32px}
.ar-hero-ground{display:block;width:100%;max-width:560px;height:14px;margin-inline:auto}
.ar-hero-ground .ln{stroke-width:2.4}
.ar-hero-glow{position:absolute;inset:0;width:100%;height:100%;mix-blend-mode:multiply;pointer-events:none}
.ar-hero-glow .glow-halo{stroke:none}
.ar-hero-glow .glow-win{fill:#b9d684;stroke:none}
.home-refined.atmos .hero-scroll{margin-top:40px}
/* スマホ：文字・ボタン・家族を中央でそろえる */
@media(max-width:599px){
 .home-refined.atmos .hero-copy{text-align:center}
 .home-refined.atmos .hero-copy>p{margin-inline:auto}
 .home-refined.atmos .hero-actions{align-items:center}
}
@media(min-width:600px){
 .home-refined.atmos .hero-inner{width:min(1120px,calc(100% - 72px))}
 .home-refined.atmos .hero-art.hero-art--family{max-width:300px}
 .ar-hero-line{margin-top:40px}
 .home-refined.atmos .hero-scroll{margin-top:44px}
}
@media(min-width:1000px){
 .home-refined.atmos .hero{min-height:calc(100svh - 95px);padding:40px 0 44px}
 /* 文字のまとまりと家族を一組にして、画面の中央へ置く（2026-10-06：半分ずつの列で約80px左へ寄っていた） */
 .home-refined.atmos .hero-inner{--art:clamp(300px,30vw,380px);min-height:0;grid-template-columns:max-content var(--art);justify-content:center;column-gap:clamp(72px,9vw,136px)}
 .home-refined.atmos .hero-art.hero-art--family{width:var(--art);max-width:none;justify-self:start;align-self:center}
 .ar-hero-line{margin-top:60px}
 .ar-hero-ground{max-width:none}
 .home-refined.atmos .hero-scroll{margin-top:56px}
}

/* 相談区分の人物は見出しの直後へ。 */
.home-refined.atmos .section-art{width:min(100%,210px);margin:24px auto 0}
.home-refined.atmos .section-art .ar-human{width:100%;margin:0}
@media(min-width:600px){.home-refined.atmos .section-art{width:260px;margin-top:28px;margin-bottom:0}}

/* ヒーローの動き（r12・2026-10-06）：家族がすぐ浮かび、言葉が話すテンポ（約0.2秒間隔）で続く。全体2.2秒。
   r8は待たせすぎ、r11は一度に出すぎだったため、「待たせない（0秒で始める）が、急がない」にした。
   読み込み直後から動く（JavaScriptに頼らない）。動きを減らす設定では止まった完成形。 */
:root{--gentle:cubic-bezier(.33,0,.15,1)}
@keyframes ar-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes ar-rise-soft{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes ar-float-in{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}
@keyframes ar-fade{from{opacity:0}to{opacity:1}}
@keyframes ar-cue{0%,100%{transform:translateY(0)}50%{transform:translateY(5px)}}
@media(prefers-reduced-motion:no-preference){
 .home-refined.atmos .hero-copy{animation:none}
 .atmos .hero-line{display:inline-block}
 .home-refined.atmos .hero-art.hero-art--family{animation:ar-float-in 1.4s var(--gentle) 0s both}
 .atmos .hero-line--1{animation:ar-rise-soft 1.1s var(--gentle) .25s both}
 .atmos .hero-line--2{animation:ar-rise-soft 1.1s var(--gentle) .45s both}
 .atmos .hero-line--2.hand-underline:after{animation:underline-in .9s var(--gentle) 1.1s both}
 .atmos .hero-lead{animation:ar-rise-soft 1.1s var(--gentle) .7s both}
 .atmos .hero-actions{animation:ar-rise-soft 1.1s var(--gentle) .95s both}
 .ar-hero-glow .glow-halo{animation:ar-fade 1.2s ease 1s both}
 .ar-hero-glow .glow-win{animation:ar-fade .9s ease 1.2s both}
 .ar-hero-ground .ar-dr{animation:ar-draw 1.5s var(--gentle) .5s both}
 .home-refined.atmos .hero-scroll{animation:ar-fade .9s ease 1.3s both}
 .home-refined.atmos .hero-scroll span{animation:ar-cue 1.6s ease-in-out 2.4s 2}

 /* 全ページの「画面に入って現れる・描く・点が出る」も同じテンポへ（r12で下層まで統一）。操作への反応は速いまま。 */
 .home-refined .reveal-ready{transition:opacity 1s var(--gentle),transform 1s var(--gentle)}
 .home-refined .reveal-ready:not(.is-visible){transform:translateY(12px)}
 .home-refined .ar-human.ar-wait.is-drawn img{animation-duration:1.1s;animation-timing-function:var(--gentle)}
 .home-refined .consultation-row.reveal-ready.is-visible .service-icon .icon-line{animation-duration:.9s;animation-delay:.35s;animation-timing-function:var(--gentle)}
 .home-refined .ar-wait.is-drawn .ar-dr{animation-timing-function:var(--gentle)}
 .home-refined .ar-road.ar-wait.is-drawn .ar-node,
 .home-refined .ar-map.ar-wait.is-drawn .map-pin,
 .home-refined .ar-hub.ar-wait.is-drawn .hub-node,
 .home-refined .ar-flow.ar-wait.is-drawn .ar-node{animation-name:ar-pop-soft;animation-duration:.8s;animation-timing-function:var(--gentle)}
}
@keyframes ar-pop-soft{from{opacity:0;transform:scale(.9)}to{opacity:1;transform:none}}

/* ---- 用件：一本の線でつなぎ、開くと場面が広がる ---- */
.ar-vine{display:none}
.atmos .consultation-row[open]{background:#f6f9f4}
.atmos .consultation-content{display:grid;gap:18px}
.ar-vignette{width:min(100%,240px);height:auto;justify-self:center;order:-1}
/* 段落末に1〜2字だけ残る行を避ける（対応ブラウザのみ） */
/* 2026-10-08 text-wrap:pretty は行を早めに折って揃えるため外した（文の中は幅いっぱいまで流す） */
@media(min-width:820px){
 .atmos .consultation-list:before{content:none}
 .atmos .consultation-row>summary:before{left:-28px;top:66px;width:9px;height:9px;border-radius:50%;background:var(--lime)}
 .ar-vine{display:block;position:absolute;left:-11.5px;top:72px;width:24px;height:calc(100% - 144px);pointer-events:none}
 .atmos .consultation-content{max-width:none;grid-template-columns:minmax(0,38em) 200px;justify-content:space-between;gap:28px;align-items:start}
 .ar-vignette{width:200px;order:0;margin-top:-6px}
}
@media(min-width:1200px){
 .atmos .consultation-content{grid-template-columns:minmax(0,38em) 250px;gap:40px}
 .ar-vignette{width:250px}
}
/* 矢印は文字のすぐ後ろ。下線は一続きに。 */
.atmos .consultation-content a{display:block;width:fit-content;max-width:none;min-height:0;padding-block:11px;margin-top:8px}
.atmos .consultation-content a+a{margin-top:0}
.atmos .text-link{display:inline-block;min-height:0;padding-block:11px}
.atmos .section-more{display:block;width:fit-content;margin:24px 0 0 auto}
.atmos .company-label>.text-link{display:inline-block;max-width:none}

/* ---- 強み：丘の線で区切り、工程を道でつなぐ ---- */
.home-refined.atmos .strengths{border-radius:0;margin-top:56px}
.ar-hill{position:absolute;left:0;width:100%;pointer-events:none}
.ar-hill--top{top:-43px;height:44px}
.ar-hill--bottom{bottom:-33px;height:34px}
@media(min-width:820px) and (max-width:999px){.home-refined.atmos .strengths-intro h2{font-size:30px}}
@media(min-width:820px){.ar-hill--top{top:-79px;height:80px}.ar-hill--bottom{bottom:-59px;height:60px}.home-refined.atmos .strengths{margin-top:80px}}
.ar-road{position:relative;max-width:470px;margin:44px auto 12px}
.ar-road__path{position:absolute;left:0;top:6px;width:100%;height:60px}
.ar-road__steps{position:relative;display:flex;justify-content:space-between;margin:0;padding:0;list-style:none}
.ar-road__steps li{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:72px;color:var(--teal);font-size:14px;font-weight:500}
.ar-node{display:grid;place-items:center;width:72px;height:72px;border-radius:50%}
.ar-node .ar-svg{width:46px;height:41px;stroke-width:5}
.ar-node .ar-svg .lt{stroke-width:8}

/* ---- 会社：街並みが塗られるように現れる（社長指摘で小さくし、上下に余白） ---- */
.home-refined.atmos .street-art{height:auto;overflow:hidden;max-width:600px;margin:48px auto 56px}
.ar-street{display:block;width:100%;height:auto}
@media(max-width:599px){.home-refined.atmos .street-art{margin:36px auto 44px}.ar-street{width:116%;margin-left:-8%}}
@media(min-width:1000px){.home-refined.atmos .street-art{margin:72px auto 88px}}

/* ---- 会社案内：所在地の略図（ロゴのシンボルが目印） ---- */
.ar-map-figure{margin:22px 0 6px;max-width:360px}
.ar-map{width:100%;height:auto}
.ar-map-figure figcaption{margin-top:6px;font-size:12px;color:var(--muted);text-align:center}
.ar-map-link{display:inline-block;padding:10px 0;color:var(--teal);font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:5px}
.ar-map .map-card{fill:#f2f7f0;stroke:none}
.ar-map .map-road-minor{stroke:#fff;stroke-width:5;fill:none}
.ar-map .map-road-edge{stroke:#d9e5d6;stroke-width:17;fill:none}
.ar-map .map-road{stroke:#fff;stroke-width:13;fill:none}
.ar-map .map-tree{stroke:var(--pale);stroke-width:1.8;fill:#e3ecdc}
.ar-map text{font-family:var(--font);stroke:none}
.ar-map .map-label{fill:var(--muted);font-size:12px;letter-spacing:.06em}
.ar-map .map-station{fill:var(--teal);stroke:#fff;stroke-width:2.5}
.ar-map .map-station-label{fill:var(--teal);font-size:13px;font-weight:700;letter-spacing:.04em}
.ar-map .map-north{stroke:var(--muted);stroke-width:1.8}
.ar-map .map-north-label{fill:var(--muted);font-size:12px;font-weight:700}
.ar-map .map-pin-bg{fill:#fff;stroke:#cfdccb;stroke-width:1.5}
.ar-map .map-pin-lead{stroke:var(--teal);stroke-width:2}
.ar-map .map-pin-dot{fill:var(--lime);stroke:none}
.ar-map .map-pin{transform-box:fill-box;transform-origin:30% 70%}
.ar-map .map-name{fill:var(--teal);font-size:14px;font-weight:700;letter-spacing:.05em}
@media(min-width:1000px){.ar-map-figure{margin:28px 0 8px}}
/* 略図の文字が小さくならないよう、左の列は300px以上。狭い幅では地図→表の1列 */
@media(min-width:600px) and (max-width:999px){.home-refined.atmos .company-information{grid-template-columns:minmax(0,1fr)}}
@media(min-width:1000px){.home-refined.atmos .company-information{grid-template-columns:minmax(300px,1fr) 2.2fr;gap:70px}}

/* ---- 相談：扉が開いて迎える ---- */
.ar-door{width:100px;height:auto;margin:0 auto 10px;stroke-width:3}
.ar-door .glow{fill:#dcebc4}
/* 電話もフォームと同じ形のボタンに（社長指摘） */
.atmos .button-tel{display:flex;align-items:center;justify-content:center;gap:14px;min-height:64px;margin-top:14px;padding:8px 20px;border:2px solid var(--teal);background:#fff;color:var(--teal);text-decoration:none}
.atmos .button-tel:hover{background:#f2f7f0}
.atmos .button-tel .ar-phone{width:30px;height:27px;flex:none;stroke-width:6}
.button-tel__text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.35}
.button-tel__label{font-size:12px;font-weight:600;letter-spacing:.06em}
.button-tel__number{font-size:22px;font-weight:600;letter-spacing:.06em}

/* ---- フッター：街の地面で終わる ---- */
.ar-footer-land{position:relative;height:66px;margin-bottom:30px}
.ar-footer-ground{position:absolute;left:0;bottom:0;width:100%;height:14px}
.ar-footer-town{position:absolute;right:4%;bottom:6px;width:150px;height:60px}

/* ---- 区画の見出しは中央にそろえ、下に本文（第4版・社長指摘） ----
   見出しの右にサブコピーを置く2列組みをやめる。本文・一覧・表は読みやすさのため左寄せのまま。 */
.home-refined.atmos .section-heading{display:block;text-align:center;margin-bottom:44px}
.home-refined.atmos .section-heading h2{margin:0 0 16px}
.home-refined.atmos .section-heading>p{min-width:0}
.home-refined.atmos .strengths-inner{display:block}
.home-refined.atmos .strengths-intro{text-align:center;margin-bottom:56px}
.home-refined.atmos .strengths-intro h2{margin-bottom:20px}
.home-refined.atmos .strength-list{max-width:720px;margin-inline:auto}
.home-refined.atmos .company-message{display:block;text-align:center}
.home-refined.atmos .company-message h2{margin:0 0 24px}
.home-refined.atmos .company-information .company-title{grid-column:1/-1;text-align:center;margin:0 0 8px}
.home-refined.atmos .company-label{align-self:start}
.home-refined.atmos .ar-map-figure{margin:0 auto}
/* 見出しの改行は狭い幅だけ。820px以上は1行（文の終わり「。」での改行だけ残す）（第5版・社長指摘） */
.atmos .gap-wide{display:none}
@media(min-width:820px){
 .atmos .br-narrow{display:none}
 .atmos .gap-wide{display:inline-block;width:.8em}
}
@media(min-width:1000px){
 .home-refined.atmos .section-heading{margin-bottom:56px}
 .home-refined.atmos .strengths-intro{margin-bottom:72px}
 .home-refined.atmos .company-information{grid-template-columns:minmax(300px,1fr) 2.2fr;column-gap:70px;row-gap:24px}
}

/* 区画の見出しはPC・スマホとも2行でそろえる。スマホは2行目が折れない大きさに統一 */
@media(max-width:599px){.home-refined.atmos .section-heading h2,.home-refined.atmos .strengths-intro h2,.home-refined.atmos .company-message h2,.home-refined.atmos .contact-home h2{font-size:24px}}
@media(max-width:359px){.home-refined.atmos .section-heading h2,.home-refined.atmos .strengths-intro h2,.home-refined.atmos .company-message h2,.home-refined.atmos .contact-home h2{font-size:20px}}
/* スマホだけの改行（長い1行を文の切れ目で分ける） */
.atmos br.br-sp{display:none}
@media(max-width:599px){.atmos br.br-sp{display:inline}}

/* ---- 強み：3項目すべてに図（第6版・社長指摘「統一感」） ---- */
.ar-hub{display:block;width:100%;max-width:420px;height:auto;margin:44px auto 12px}
.ar-hub text{font-family:var(--font);fill:var(--teal);stroke:none;font-size:15px;font-weight:600;letter-spacing:.04em}
.ar-svg .ring-bg{fill:#fff;stroke:none}
.ar-svg .ring-lime{stroke:var(--lime);stroke-width:2.5;fill:none}
.ar-svg .ring-teal{stroke:var(--teal);stroke-width:2.5;fill:none}
.ar-hub .hub-icon{stroke-width:6.5}
.ar-hub .hub-icon .lt{stroke-width:10}
.ar-hub .hub-icon .lts{stroke-width:7}
.ar-hub .hub-icon .wash{display:none}
.ar-hub .hub-icon--l{stroke-width:6}
.ar-hub .hub-node{transform-box:fill-box;transform-origin:center}
.ar-hub .road{stroke-width:7}

/* ---- 会社案内：スマホ・タブレットは表を先に、地図を後に（社長指摘） ---- */
@media(max-width:999px){
 .home-refined.atmos .company-information .company-title{order:0}
 .home-refined.atmos .company-information dl{order:1}
 .home-refined.atmos .company-label{order:2}
}

/* ---- フッター：街並みの地面から下を深緑に、白文字（社長指摘。波線はなし） ---- */
.home-refined.atmos .strength-list{gap:56px}
.home-refined.atmos .strength-list article{padding-bottom:56px}
.home-refined.atmos .strength-list article:last-child{padding-bottom:0}
.home-refined.atmos .site-footer{position:relative;isolation:isolate;width:100%;max-width:none;margin:72px 0 0;padding:0 max(20px,calc((100% - 1120px)/2)) 28px;background:none;color:#d9e6de}
.home-refined.atmos .site-footer::before{content:"";position:absolute;left:0;right:0;top:60px;bottom:0;background:var(--teal);z-index:-1}
.atmos .site-footer .ar-footer-ground{display:none}
.atmos .site-footer .ar-footer-land{margin-bottom:40px}
.ar-footer-wave{display:none}
.ar-svg .footer-wave-fill{fill:var(--teal);stroke:none}
/* 支給の白抜きロゴから白い部分だけを取り出した透過PNG（黒地を透明化） */
.atmos .site-footer .footer-brand{display:inline-block;width:200px;margin:0 0 18px}
.atmos .site-footer .footer-brand img{display:block;width:100%;height:auto}
.atmos .site-footer address{color:#d9e6de}
.atmos .site-footer a{color:#fff}
.atmos .site-footer a:focus-visible{outline-color:#fff}
.atmos .site-footer .footer-bottom{border-top-color:rgba(255,255,255,.22);color:#d9e6de}
.atmos .site-footer .footer-bottom small{color:#d9e6de}
@media(min-width:600px){.home-refined.atmos .site-footer{padding-inline:max(36px,calc((100% - 1120px)/2))}}
/* 深緑の上端と区切り線を、ヒーローの地面線と同じ手描きの揺らぎに（社長指摘） */
.home-refined.atmos .site-footer::before{top:66px}
.ar-footer-edge{position:absolute;left:0;top:52px;width:100%;height:16px;z-index:-1;pointer-events:none}
.ar-svg .footer-edge-fill{fill:var(--teal);stroke:none}
.ar-footer-line{display:block;width:100%;height:14px;margin-bottom:6px}
.ar-svg .footer-line-stroke{stroke:rgba(255,255,255,.4);stroke-width:2;fill:none}
.atmos .site-footer .footer-bottom{border-top:0;padding-top:14px}
.ar-footer-line.ar-wait.is-drawn .ar-dr{animation-duration:1.4s}
@media(min-width:820px){.home-refined.atmos .site-footer{margin-top:96px}}

/* ---- 動き ---- */
@keyframes ar-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
@keyframes ar-light{from{opacity:0}to{opacity:1}}
@keyframes ar-pop{from{opacity:0;transform:scale(.72)}to{opacity:1;transform:none}}
@keyframes ar-sway{0%,100%{transform:rotate(0)}50%{transform:rotate(2.4deg)}}
@keyframes ar-door-open{from{transform:scaleX(1)}to{transform:scaleX(.36)}}


/* 画面に入ったとき（atmosphere.js が ar-wait → is-drawn を付ける） */
.ar-wait .ar-dr{stroke-dashoffset:1}
.ar-wait .lamp{opacity:0}
.ar-wait .leaf{transform:none}
.ar-wait .ar-node{opacity:0}
.ar-wait.is-drawn .ar-dr{animation:ar-draw 1.1s var(--ease-out) both}
.ar-wait.is-drawn .lamp{animation:ar-light .5s ease 1.2s both}
.ar-wait.is-drawn .leaf{animation:ar-door-open 1.1s var(--ease-out) .5s both}
.ar-road.ar-wait.is-drawn .road{animation-duration:1.5s}
.ar-road.ar-wait.is-drawn .ar-node{animation:ar-pop .5s var(--ease-out) both}
.ar-road.ar-wait.is-drawn li:nth-child(1) .ar-node{animation-delay:.2s}
.ar-road.ar-wait.is-drawn li:nth-child(2) .ar-node{animation-delay:.65s}
.ar-road.ar-wait.is-drawn li:nth-child(3) .ar-node{animation-delay:1.1s}
.ar-road.ar-wait.is-drawn .ar-node .ar-dr{animation-delay:inherit}
.ar-street.ar-wait.is-drawn .paint{animation-duration:1.15s}
.ar-street.ar-wait.is-drawn .p2{animation-delay:.3s}
.ar-street.ar-wait.is-drawn .p3{animation-delay:.6s}
.ar-hill.ar-wait.is-drawn .ar-dr{animation-duration:1.8s}
.ar-vine.ar-wait.is-drawn .ar-dr{animation-duration:1.6s}
.ar-footer-land.ar-wait.is-drawn .ar-dr{animation-duration:1.4s}
.ar-map.ar-wait .map-pin{opacity:0}
.ar-map.ar-wait.is-drawn .map-pin{animation:ar-pop .6s var(--ease-out) .35s both}
.ar-hub.ar-wait .hub-node{opacity:0}
.ar-hub.ar-wait.is-drawn .hub-node{animation:ar-pop .5s var(--ease-out) both}
.ar-hub.ar-wait.is-drawn .n2{animation-delay:.2s}
.ar-hub.ar-wait.is-drawn .n3{animation-delay:.4s}
.ar-hub.ar-wait.is-drawn .n4{animation-delay:1.1s}
.ar-hub.ar-wait.is-drawn .n5{animation-delay:1.3s}
.ar-hub.ar-wait.is-drawn .road.ar-dr{animation-duration:1.3s;animation-delay:.3s}
/* 日本地図（2026-10-07 クライアント依頼で「全国の不動産を、ひとつの窓口で。」の図を差し替え）
   海岸線が描かれる → ロゴの丸 → 全国へ線がのびる → 各地の点の順。 */
.ar-japan{max-width:440px;margin-top:36px}
.ar-japan .wash{fill:var(--pale-lime);transform:translate(3px,3px)}
.ar-japan .coast{fill:#fff;stroke:var(--teal);stroke-width:2}
.ar-japan .inset{stroke:var(--pale);stroke-width:1.6;fill:none}
.ar-japan .route{stroke:var(--sage);stroke-width:3.4;fill:none}
.ar-japan .pin{stroke:var(--teal);stroke-width:2}
.ar-japan .hub-node .ring-lime,.ar-japan .hub-node .ring-teal{stroke-width:1.8}
.ar-japan .n1 .ring-lime,.ar-japan .n1 .ring-teal{stroke-width:2.5}
.ar-japan .dot-bg{fill:#fff;stroke:none}
.ar-japan .dot{fill:var(--lime);stroke:none}
.ar-japan .dot--osaka{fill:var(--teal)}
.ar-japan text{font-size:14px;stroke:#fff;stroke-width:4px;stroke-linejoin:round;paint-order:stroke}
.ar-japan.ar-wait .wash{opacity:0}
.ar-japan.ar-wait.is-drawn .wash{animation:ar-fade 1s ease .9s both}
.ar-japan.ar-wait .pin,.ar-japan.ar-wait text{opacity:0}
.ar-japan.ar-wait.is-drawn .pin,.ar-japan.ar-wait.is-drawn text{animation:ar-fade .6s ease .5s both}
.ar-japan.ar-wait.is-drawn .coast{animation-duration:1.6s}
.ar-japan.ar-wait.is-drawn .route.ar-dr{animation-duration:1.2s;animation-delay:.9s}
.ar-japan.ar-wait.is-drawn .n1{animation-delay:.5s}
.ar-japan.ar-wait.is-drawn .n10{animation-delay:.35s}
.ar-japan.ar-wait.is-drawn .n2,.ar-japan.ar-wait.is-drawn .n3,.ar-japan.ar-wait.is-drawn .n4,.ar-japan.ar-wait.is-drawn .n5,
.ar-japan.ar-wait.is-drawn .n6,.ar-japan.ar-wait.is-drawn .n7,.ar-japan.ar-wait.is-drawn .n8,.ar-japan.ar-wait.is-drawn .n9{animation-delay:1.7s}
/* サービスの「物件を買いたい」に移した「仕入れ→ご紹介→販売」の図 */
.biz-text .ar-road{margin:32px auto 28px}

/* 用件を開いたとき（開くたびに再生） */
.ar-vignette.is-playing .ar-dr{animation:ar-draw .9s var(--ease-out) both}
.ar-vignette.is-playing .road.ar-dr{animation-duration:1.2s;animation-delay:.45s}
.ar-vignette.is-playing .leaf{animation:ar-door-open .9s var(--ease-out) .75s both}
.ar-vignette.is-playing .glow{animation:ar-light .6s ease .8s both}
.ar-vignette.is-playing .lamp{animation:ar-light .4s ease both}
.ar-vignette.is-playing .lamp-1{animation-delay:.8s}
.ar-vignette.is-playing .lamp-2{animation-delay:1.1s}
.ar-vignette.is-playing .lamp-3{animation-delay:1.4s}
.ar-vignette.is-playing .sway{animation:ar-sway 2.2s ease-in-out 1s 2}

@media(prefers-reduced-motion:reduce){
 .ar-dr{stroke-dashoffset:0!important}
 .ar-wait .lamp,.ar-wait .ar-node,.ar-map.ar-wait .map-pin,.ar-hub.ar-wait .hub-node{opacity:1}
 .ar-wait .leaf{transform:scaleX(.36)}
 .atmos .consultation-control .plus{transition:none}
}

/* 2026-10-05：案内を読みやすくし、早いスクロールではヒーローを完成形にする。 */
.home-refined.atmos .hero-scroll{font-size:18px;font-weight:500}
@media(min-width:600px){.home-refined.atmos .hero-scroll{font-size:20px}}
.atmos .hero.hero--settled .hero-line,.atmos .hero.hero--settled .hero-lead,
.atmos .hero.hero--settled .hero-actions,.home-refined.atmos .hero.hero--settled .hero-art.hero-art--family,
.home-refined.atmos .hero.hero--settled .hero-scroll{animation:none;opacity:1;transform:none}
.atmos .hero.hero--settled .ar-hero-ground .ar-dr{animation:none;stroke-dashoffset:0}
.ar-map .map-highway{stroke:#b4c7c3;stroke-width:8;fill:none}
.ar-map .map-label--highway{font-size:10px}
.ar-map .map-building{font-size:9px;fill:var(--teal);stroke:none}

/* ==== 2026-10-05 第11版r11：レビュー指摘の修正 ==== */
/* 区画のh2は、幅ごとに1つの大きさにそろえる（600px以上32px・1000px以上36px。スマホは上の24px・20pxのまま） */
@media(min-width:600px){.home-refined.atmos .section-heading h2,.home-refined.atmos .strengths-intro h2,.home-refined.atmos .company-message h2,.home-refined.atmos .contact-home h2{font-size:32px}}
@media(min-width:1000px){.home-refined.atmos .section-heading h2,.home-refined.atmos .strengths-intro h2,.home-refined.atmos .company-message h2,.home-refined.atmos .contact-home h2{font-size:36px}}
/* 「詳しく見る」系のリンクは、すべて中央にそろえる（会社案内のリンクは表と地図の下へ移した） */
.atmos .section-more{margin:24px auto 0}
.home-refined.atmos .company-information>.company-more{grid-column:1/-1;justify-self:center;margin:8px auto 0}
@media(max-width:999px){.home-refined.atmos .company-information>.company-more{order:3}}
/* ヘッダーの幅を、本文・フッターと同じ枠（最大1120px）にそろえる */
@media(min-width:600px){.header-inner{width:min(1120px,calc(100% - 72px))}}
/* フッターの免許・登録番号と、相談帯の受付時間 */
.atmos .site-footer .footer-license{margin:10px 0 0;font-size:11px;line-height:1.9;letter-spacing:.03em;color:#d9e6de}
@media(min-width:1000px){.atmos .site-footer .footer-license{font-size:12px}}
.contact .contact-options>.contact-hours{margin:10px 0 0;font-size:13px;line-height:1.8;letter-spacing:.04em;text-align:center;color:var(--muted)}
/* 下層の本文は、語の途中で折らず文節で折る（対応ブラウザのみ。非対応は従来どおり） */
/* 本文の改行は文節の切れ目だけ（tools/phrase_wbr.cjs が入れる <wbr> と組み合わせる。2026-10-08） */
.atmos p,.atmos li,.atmos dd,.atmos td,.atmos summary{word-break:keep-all;overflow-wrap:anywhere}

/* スマホだけの改行（見出しの「、」の後をそろえる。2026-10-08） */
@media(min-width:600px){.br-sp{display:none}}

/* 書体 Zen Maru Gothic への切り替えに合わせた調整（2026-10-08）
   小さい文字の600指定は700で描かれて潰れて見えたため500に。本文の字間を少し詰める（.045em→.03em） */
.main-navigation>a,.nav-contact,.text-link,.button,.consultation-control span,.site-footer nav a,.biz-consult,.biz-step__name,.ar-jump a,.faq-item summary{font-weight:500}
body{letter-spacing:.03em}

/* ---- 文字の大きさ（2026-10-08 社長指摘「小さい。PCだと余計に。老眼の人にはキツい」） ----
   本文はスマホ16px・PC17px（デジタル庁デザインシステム等の本文16px以上を目安）。小さい文字も最低13px。
   下層のCSS（atmosphere-pages.css）より後でも効くよう、html body.atmos:not(#_) を付けて強める。見出しは変えない。 */
html body.atmos:not(#_) main p,html body.atmos:not(#_) main li,html body.atmos:not(#_) main dd,html body.atmos:not(#_) .faq-item summary,html body.atmos:not(#_) .policy li{font-size:16px}
html body.atmos:not(#_) .hero-lead,html body.atmos:not(#_) .consultation-description,html body.atmos:not(#_) .ar-page-hero__lead{font-size:16px}
html body.atmos:not(#_) main dt,html body.atmos:not(#_) .contact-hours,html body.atmos:not(#_) .ar-map-link,html body.atmos:not(#_) .page-note,html body.atmos:not(#_) .ar-contact-page__caption,html body.atmos:not(#_) .location-note{font-size:14px}
html body.atmos:not(#_) .text-link,html body.atmos:not(#_) .biz-flow,html body.atmos:not(#_) .consultation-control span{font-size:14px}
html body.atmos:not(#_) .button,html body.atmos:not(#_) .biz-consult,html body.atmos:not(#_) .ar-flow__end a{font-size:15px}
html body.atmos:not(#_) .biz-step__name,html body.atmos:not(#_) .biz-compare__tag,html body.atmos:not(#_) .biz-compare__note,html body.atmos:not(#_) .ar-jump__label{font-size:14px}
html body.atmos:not(#_) .biz-route__box p{font-size:15px}
html body.atmos:not(#_) .biz-route__box .biz-step__name{font-size:15px}
html body.atmos:not(#_) .biz-route__dest .biz-step__name{font-size:13px}
html body.atmos:not(#_) .button-tel__label{font-size:13px}
html body.atmos:not(#_) form label,html body.atmos:not(#_) .form-preview p{font-size:15px}
html body.atmos:not(#_) .preview-note{font-size:14px}
html body.atmos:not(#_) label span{font-size:12px}
html body.atmos:not(#_) .menu-label{font-size:11px}
html body.atmos:not(#_) .main-navigation>a,html body.atmos:not(#_) .nav-contact{font-size:16px}
html body.atmos:not(#_) .site-footer address,html body.atmos:not(#_) .footer-license{font-size:13px}
html body.atmos:not(#_) .site-footer nav a{font-size:14px}
html body.atmos:not(#_) .footer-bottom,html body.atmos:not(#_) .footer-bottom small{font-size:12px}
html body.atmos:not(#_) .footer-bottom>a{font-size:13px}
@media(max-width:359px){
 html body.atmos:not(#_) .biz-route__dest .biz-step__name{font-size:11px}
 html body.atmos:not(#_) .biz-step__name{font-size:13px}
}
@media(min-width:820px){
 html body.atmos:not(#_) main p,html body.atmos:not(#_) main li,html body.atmos:not(#_) main dd,html body.atmos:not(#_) .faq-item summary,html body.atmos:not(#_) .policy li{font-size:17px}
 html body.atmos:not(#_) .hero-lead,html body.atmos:not(#_) .consultation-description,html body.atmos:not(#_) .ar-page-hero__lead{font-size:17px}
 html body.atmos:not(#_) main dt,html body.atmos:not(#_) .contact-hours,html body.atmos:not(#_) .ar-map-link,html body.atmos:not(#_) .page-note,html body.atmos:not(#_) .ar-contact-page__caption,html body.atmos:not(#_) .location-note{font-size:15px}
 html body.atmos:not(#_) .main-navigation>a,html body.atmos:not(#_) .nav-contact,html body.atmos:not(#_) .button,html body.atmos:not(#_) .biz-consult,html body.atmos:not(#_) .ar-flow__end a{font-size:16px}
 html body.atmos:not(#_) .text-link,html body.atmos:not(#_) .biz-flow,html body.atmos:not(#_) .consultation-control span{font-size:15px}
 html body.atmos:not(#_) .biz-step__name,html body.atmos:not(#_) .biz-compare__tag,html body.atmos:not(#_) .biz-compare__note,html body.atmos:not(#_) .ar-jump__label{font-size:15px}
 html body.atmos:not(#_) .biz-route__box p,html body.atmos:not(#_) .biz-route__box .biz-step__name{font-size:16px}
 html body.atmos:not(#_) .button-tel__label{font-size:14px}
 html body.atmos:not(#_) .site-footer address,html body.atmos:not(#_) .footer-license{font-size:14px}
 html body.atmos:not(#_) .footer-bottom,html body.atmos:not(#_) .footer-bottom small,html body.atmos:not(#_) .footer-bottom>a{font-size:13px}
}
/* 比較図（直接の取引／通常の取引）のラベルは、狭い画面では語の途中で折れないよう小さめに（5つ並ぶため） */
@media(max-width:399px){
 html body.atmos:not(#_) .biz-compare .biz-step__name{font-size:13px;letter-spacing:0;overflow-wrap:normal}
 html body.atmos:not(#_) .biz-compare .is-normal .biz-step__name{font-size:12px}
 html body.atmos:not(#_) .biz-compare__row.is-normal{padding-inline:6px}
 html body.atmos:not(#_) .biz-compare .is-normal ol{gap:2px}
}
/* フッターのメニュー：「プライバシーポリシー」を語の途中で折らない（2列の最後で右隣は空いている） */
html body.atmos:not(#_) .site-footer nav a{white-space:nowrap}

/* ---- イラスト・図・アイコンの大きさ（2026-10-08 社長指摘「文字を大きくしたらイラストも大きくしないとバランスが悪い」）
   文字を約15%大きくしたのに合わせ、絵・アイコン・図の丸もおおむね15%大きくする。画面幅いっぱいの図はそのまま。 */
html body.atmos:not(#_) .brand{width:190px}
html body.atmos:not(#_) .hero-art.hero-art--family{max-width:290px}
html body.atmos:not(#_) .section-art{width:min(100%,250px)}
html body.atmos:not(#_) .ar-page-hero__art{width:min(100%,250px)}
html body.atmos:not(#_) .ar-human--hero{max-width:320px}
html body.atmos:not(#_) .consultation-row .service-icon{width:56px;height:66px}
html body.atmos:not(#_) .biz-service-icon{width:88px}
html body.atmos:not(#_) .ar-door{width:116px}
html body.atmos:not(#_) .ar-footer-town{width:172px;height:69px}
html body.atmos:not(#_) .site-footer .footer-brand{width:220px}
html body.atmos:not(#_) .ar-hub{max-width:480px}
html body.atmos:not(#_) .ar-japan{max-width:500px}
html body.atmos:not(#_) .street-art{max-width:690px}
html body.atmos:not(#_) .biz-route,html body.atmos:not(#_) .biz-compare{--nd:60px}
html body.atmos:not(#_) .biz-route .ar-node,html body.atmos:not(#_) .biz-compare .ar-node{width:var(--nd);height:var(--nd)}
html body.atmos:not(#_) .biz-route .ar-node .ar-svg,html body.atmos:not(#_) .biz-compare .ar-node .ar-svg{width:calc(var(--nd) * .62);height:calc(var(--nd) * .55)}
html body.atmos:not(#_) .ar-node--logo img{width:calc(var(--nd) * .68);height:calc(var(--nd) * .68)}
html body.atmos:not(#_) .biz-compare ol:before{top:calc(var(--nd) / 2 - 3px)}
html body.atmos:not(#_) .biz-compare .is-normal{--nd:50px}
html body.atmos:not(#_) .biz-route__seller>.biz-step__name{top:calc(var(--nd) / 2)}
html body.atmos:not(#_) .ar-jump .ar-node{width:72px;height:72px}
html body.atmos:not(#_) .ar-jump .ar-node .ar-svg{width:46px;height:41px}
@media(max-width:359px){
 html body.atmos:not(#_) .brand{width:170px}
 html body.atmos:not(#_) .consultation-row .service-icon{width:46px}
 html body.atmos:not(#_) .biz-route{--nd:52px}
}
@media(min-width:600px){
 html body.atmos:not(#_) .hero-art.hero-art--family{max-width:340px}
 html body.atmos:not(#_) .section-art{width:300px}
 html body.atmos:not(#_) .ar-page-hero__art{width:280px}
 html body.atmos:not(#_) .consultation-row .service-icon{width:78px;height:78px}
 html body.atmos:not(#_) .biz-service-icon{width:100px}
 html body.atmos:not(#_) .ar-jump .ar-node{width:82px;height:82px}
 html body.atmos:not(#_) .ar-jump .ar-node .ar-svg{width:52px;height:46px}
}
@media(min-width:820px){
 html body.atmos:not(#_) .biz-route,html body.atmos:not(#_) .biz-compare{--nd:64px}
 html body.atmos:not(#_) .biz-compare .is-normal{--nd:56px}
 html body.atmos:not(#_) .biz-route__seller>.biz-step__name{top:auto;left:calc(var(--nd) / 2)}
}
@media(min-width:1000px){
 html body.atmos:not(#_) .brand{width:230px}
 html body.atmos:not(#_) .hero-inner{--art:clamp(340px,34vw,440px)}
 html body.atmos:not(#_) .hero-art.hero-art--family{max-width:none}
 html body.atmos:not(#_) .ar-page-hero__art{width:300px}
 html body.atmos:not(#_) .consultation-row .service-icon{width:88px;height:88px}
 html body.atmos:not(#_) .biz-service-icon{width:116px}
}
/* 図の中の文字（SVGの単位。図と一緒に縮むため本文に負けないよう少し大きく。線とぶつからない範囲） */
html body.atmos:not(#_) .ar-hub text{font-size:16px}
html body.atmos:not(#_) .ar-japan text{font-size:16px}

/* 「私たちにできること」の矢印：ゆっくり上下に揺れ続ける（2026-10-09 社長指示。動きを減らす設定では止まる） */
@media(prefers-reduced-motion:no-preference){
 html body.atmos:not(#_) .hero-scroll span{animation:ar-cue 2.6s ease-in-out 2.4s infinite}
}

/* r17：切り抜いた家族の内側の白を不透明に保ち、背景と同じ枠で重ねる。 */
html body.atmos:not(#_) .hero-art--family{isolation:isolate}
html body.atmos:not(#_) .hero-art--family>img{position:relative;left:auto;top:auto;z-index:1;mix-blend-mode:normal}
.ar-hero-room{position:absolute;inset:0;width:100%;height:100%;z-index:0;pointer-events:none;stroke-width:5.5}
.ar-hero-room .ln{stroke:var(--teal);stroke-opacity:.52}
.ar-hero-room .room-wall{fill:var(--mint,#eef4ed)}
.ar-hero-room .room-floor{fill:var(--floor-warm,#f3ede3);stroke:none;opacity:1}
.ar-hero-room .room-window>.wash{fill:var(--accent-sky);opacity:.65}
.ar-hero-room .room-trees{opacity:.3}
.ar-hero-room .room-plant .sage{opacity:.65;transform:translate(5px,4px)}
.ar-hero-room .room-pendant .wash{fill:var(--accent-sun)}
.ar-hero-room .room-plant .accent-clay{fill:var(--accent-clay)}
.ar-hero-glow{z-index:2}
/* 縦積みでも部品は動かさない。枠全体を縮め、上へのはみ出し分を幅に比例した余白で確保する。 */
@media(max-width:999px){
 html body.atmos:not(#_) .hero-art.hero-art--family{--family-width:min(290px,calc((100vw - 40px) * .74));width:var(--family-width);max-width:none;margin-top:calc(var(--family-width) * .28 + 16px)}
}
@media(min-width:600px) and (max-width:999px){
 html body.atmos:not(#_) .hero-art.hero-art--family{--family-width:min(340px,calc((100vw - 72px) * .74))}
}
@media(max-width:359px){
 html body.atmos:not(#_) .hero-art.hero-art--family{--family-width:calc((100vw - 32px) * .74)}
}
/* r22：図の高さと本文→図36pxを保持。PCのラベルだけ17〜18pxへ。 */
html body.atmos:not(#_) .ar-hub--window{width:min(82%,410px);max-width:410px;margin:36px auto 12px}
html body.atmos:not(#_) .ar-hub--window text{font-size:38.5px;letter-spacing:0}
@media(min-width:600px){
 html body.atmos:not(#_) .ar-hub--window text{font-size:27.5px}
 html body.atmos:not(#_) .ar-hub--window .n2 text{transform:translateY(7px)}
 html body.atmos:not(#_) .ar-hub--window :is(.n3,.n4) text{transform:translateY(-7px)}
}

.ar-hub--window .hub-orbit{stroke:var(--pale-lime);stroke-width:10.08;opacity:.5;stroke-dasharray:none}
.ar-hub--window .hub-icon .wash{display:block}
.ar-hub--window .hub-icon{stroke-width:3.78}
.ar-hub--window .ring-lime,.ar-hub--window .ring-teal{stroke-width:3.36}
.ar-hub--window .hub-arrow{stroke:var(--sage);stroke-width:7.56;stroke-linecap:butt;marker-end:none;stroke-dasharray:none}
.ar-hub--window marker path{fill:var(--sage);stroke:none}
/* 中央の出現と最後の脈動を別のgに分け、遅延中のtransformが出現を打ち消さないようにする。 */
.ar-hub--window .hub-center-pulse{transform-box:fill-box;transform-origin:center}
@keyframes ar-window-pulse{0%,100%{transform:scale(1)}50%{transform:scale(1.06)}}
.ar-hub--window .hub-arrowhead{fill:var(--sage);stroke:none}
@keyframes ar-window-draw{from{stroke-dasharray:1 1;stroke-dashoffset:1}99.999%{stroke-dasharray:1 1;stroke-dashoffset:0}to{stroke-dasharray:none;stroke-dashoffset:0}}
.ar-hub--window.ar-wait .hub-orbit,.ar-hub--window.ar-wait .hub-arrow{stroke-dasharray:1 1}
@media(prefers-reduced-motion:no-preference){
 .home-refined .ar-hub--window.ar-wait.is-drawn .hub-node{animation:ar-pop-soft .33s var(--gentle) both}
 .home-refined .ar-hub--window.ar-wait.is-drawn .n1{animation-duration:.4s;animation-delay:0s}
 .home-refined .ar-hub--window.ar-wait.is-drawn .n2{animation-delay:.3s}
 /* 円環の線形描画が各円の中心を通過する時刻：右下0.633秒、左下0.867秒。 */
 .home-refined .ar-hub--window.ar-wait.is-drawn .n4{animation-delay:.633s}
 .home-refined .ar-hub--window.ar-wait.is-drawn .n3{animation-delay:.867s}
 .home-refined .ar-hub--window.ar-wait.is-drawn .hub-orbit{animation:ar-window-draw .9s linear .3s both}
 .ar-hub--window.ar-wait .hub-arrow,.ar-hub--window.ar-wait .hub-arrowhead{opacity:0}
 /* r24：同形の独立矢じりを、各軸の最後の0.12秒で滑らかに表示する。 */
 .home-refined .ar-hub--window.ar-wait.is-drawn .hub-arrow{animation:ar-window-draw .5s var(--gentle) 1.2s both,ar-fade .12s ease 1.2s both}
 .home-refined .ar-hub--window.ar-wait.is-drawn .hub-arrow--4{animation-delay:1.35s,1.35s}
 .home-refined .ar-hub--window.ar-wait.is-drawn .hub-arrow--3{animation-delay:1.5s,1.5s}
 .home-refined .ar-hub--window.ar-wait.is-drawn .hub-arrowhead{animation:ar-fade .12s linear 1.58s both}
 .home-refined .ar-hub--window.ar-wait.is-drawn .hub-arrowhead--4{animation-delay:1.73s}
 .home-refined .ar-hub--window.ar-wait.is-drawn .hub-arrowhead--3{animation-delay:1.88s}
 .home-refined .ar-hub--window.ar-wait.is-drawn .hub-center-pulse{animation:ar-window-pulse .4s ease-in-out 2s forwards}
}
@media(prefers-reduced-motion:reduce){
 .ar-hub--window .hub-node,.ar-hub--window .hub-arrow,.ar-hub--window .hub-arrowhead,.ar-hub--window .hub-center-pulse{animation:none!important;opacity:1!important;transform:none!important;stroke-dashoffset:0!important}
 .ar-hub--window .hub-orbit{animation:none!important;stroke-dashoffset:0!important}
}

/* r18：灯り/ガラスの小さめの塗り。原本の緑のwashと線は保持し、対象の差し色だけ右下へ2・2。 */
:is(.ar-hub--window,.biz-route,.biz-compare .is-direct,.service-icon) .wash.accent-sun{fill:var(--accent-sun);stroke:none;transform:translate(2px,2px);opacity:1}
:is(.ar-hub--window,.biz-route,.biz-compare .is-direct,.service-icon) .wash.accent-sky{fill:var(--accent-sky);stroke:none;transform:translate(2px,2px);opacity:1}
/* 白い丸の地球だけ、濃い空色を使う。共通skyトークンには触れない。 */
.biz-route{--accent-globe-sky:#bfd9e5}
.biz-route .wash.accent-sky.accent-globe{fill:var(--accent-globe-sky)}

/* 小さい4窓だけ線を細くし、灯りの面を残す。書類外線とほかの図は既存の線幅。 */
.ar-hub--window .hub-icon .accent-window-lines{stroke-width:2.268}

/* r21：円の白地の半径75%に収め、画面上の線を1.5pxにそろえる。
   最遠点がSVG枠の半径以内。線の半幅0.75px＋丸め余裕0.1pxを差し引く。 */
html body.atmos:not(#_) .biz-route .ar-node .biz-node-icon,
html body.atmos:not(#_) .biz-compare .ar-node .biz-node-icon{width:calc((var(--nd) - 4px) * .75 - 1.7px);height:calc((var(--nd) - 4px) * .75 - 1.7px);transform:none}
html body.atmos:not(#_) :is(.biz-route,.biz-compare) .biz-node-icon .ln{vector-effect:non-scaling-stroke;stroke-width:1.5px}
html body.atmos:not(#_) .biz-route .ar-node--logo img,
html body.atmos:not(#_) .biz-compare .ar-node--logo img{width:calc(var(--nd) * .60);height:calc(var(--nd) * .60)}
