/* えひめ家しるべ */
:root{--ies-g:#1E6B5C;--ies-gd:#154F44;--ies-ink:#1F2A2E;--ies-mut:#4A5A5E;--ies-tint:#F2F6F4;--ies-line:#E3E8E6;--ies-line2:#CBD6D2;--ies-mikan:#F0A030}
body{margin:0;color:var(--ies-ink)}
img{max-width:100%;height:auto}

/* ヘッダー・フッター */
.ies-header{border-bottom:1px solid var(--ies-line);background:#fff}
.ies-header__in{max-width:1080px;margin:0 auto;padding:14px 20px;display:flex;align-items:center;justify-content:space-between;gap:12px}
.ies-logo{display:flex;align-items:center;gap:8px;color:var(--ies-ink);text-decoration:none;font-weight:700;font-size:18px;letter-spacing:.04em}
.ies-nav{border-bottom:1px solid var(--ies-line);background:#fff}
.ies-nav ul{list-style:none;margin:0 auto;max-width:1080px;padding:0 8px;display:flex;justify-content:space-between;gap:4px}
.ies-nav a{display:block;padding:12px 8px;font-size:14px;font-weight:700;color:var(--ies-ink);text-decoration:none}
.ies-nav a:hover{color:var(--ies-g)}
@media(min-width:768px){.ies-nav ul{justify-content:flex-start;gap:24px}}
.ies-footer{background:var(--ies-ink);color:#E3E8E6;margin-top:48px}
.ies-footer__in{max-width:1080px;margin:0 auto;padding:28px 20px;display:flex;flex-direction:column;gap:12px}
.ies-footer a:not(.ies-btn){color:#E3E8E6;font-size:13px;padding:6px 0;display:inline-block}
.ies-footer nav{display:flex;flex-wrap:wrap;gap:4px 18px}
.ies-main{max-width:720px;margin:0 auto;padding:24px 20px}

/* 共通 */
.ies-btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 28px;border-radius:999px;background:var(--ies-g);color:#fff!important;font-weight:700;text-decoration:none;border:0;font-family:inherit;font-size:16px;cursor:pointer;box-sizing:border-box}
.ies-btn:hover{background:var(--ies-gd)}
.ies-btn--line{background:#fff;color:var(--ies-g)!important;border:1.5px solid var(--ies-g);min-height:44px;font-size:14px}
.ies-btn--line:hover{background:var(--ies-tint)}
.ies-note{font-size:12px;color:var(--ies-mut);line-height:1.7}
.ies-badge{display:inline-block;font-size:12px;padding:4px 10px;border-radius:6px;background:var(--ies-tint);color:var(--ies-ink);text-decoration:none}
.ies-badges{display:flex;flex-wrap:wrap;gap:8px}
.ies-tag{display:inline-block;font-size:12px;padding:4px 10px;border-radius:999px;background:#E3EFEA;color:var(--ies-gd);font-weight:700}
.ies-tags{display:flex;flex-wrap:wrap;gap:6px}
.ies-section{margin:32px 0}
.ies-box{margin:32px 0;padding:22px 20px;border-radius:12px;background:var(--ies-tint)}
.ies-box h2,.ies-section h2{margin-top:0}
.ies-panel{padding:14px 16px;border-radius:12px;border:1px solid var(--ies-line)}
.ies-panel p{margin:4px 0 0}
.ies-cta{margin:40px 0;padding:22px 20px;border-radius:12px;background:var(--ies-tint);display:flex;flex-direction:column;gap:10px}
.ies-cta p{margin:0}
.ies-cta__title{font-weight:700;font-size:17px}
.ies-pills{display:flex;flex-wrap:wrap;gap:8px}
.ies-pill{padding:10px 14px;border-radius:999px;border:1px solid var(--ies-line2);font-size:14px;text-decoration:none;color:var(--ies-ink)}
.ies-mini{display:flex;justify-content:space-between;align-items:center;padding:14px 16px;margin:8px 0;border-radius:12px;background:#fff;border:1px solid var(--ies-line);color:var(--ies-ink);text-decoration:none}
.ies-mini span{font-size:13px;color:var(--ies-g);font-weight:700}

/* カード */
.ies-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:14px}
.ies-card{display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:12px;border:1px solid var(--ies-line);color:var(--ies-ink);text-decoration:none;background:#fff}
.ies-card:hover{border-color:var(--ies-g)}
.ies-card[hidden]{display:none}
.ies-card__head{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:16px}
.ies-card__area{margin:0;font-size:13px;color:var(--ies-mut);line-height:1.6}
.ies-card__more{font-size:13px;font-weight:700;color:var(--ies-g)}
.ies-shot{margin:0;display:flex;flex-direction:column;gap:4px}
.ies-shot img,.ies-shot__empty{width:100%;aspect-ratio:16/10;object-fit:cover;object-position:top;border-radius:8px;border:1px solid #D5DFDB;background:#E6EDEA;display:flex;align-items:center;justify-content:center;font-size:12px;color:var(--ies-mut)}
.ies-shot figcaption{font-size:11px;color:var(--ies-mut)}
.ies-shot--big img,.ies-shot--big .ies-shot__empty{aspect-ratio:16/9}

/* 絞り込み */
.ies-filter{display:flex;flex-direction:column;gap:16px;padding-bottom:16px;border-bottom:1px solid var(--ies-line);margin-bottom:16px}
.ies-field{display:flex;flex-direction:column;gap:8px}
.ies-field>label,.ies-field>span{font-size:14px;font-weight:700}
.ies-field select{min-height:44px;padding:0 12px;border-radius:10px;border:1.5px solid var(--ies-line2);font-family:inherit;font-size:15px;background:#fff}
.ies-chips{display:flex;flex-wrap:wrap;gap:8px}
.ies-chip{min-height:40px;padding:0 14px;border-radius:999px;border:1.5px solid var(--ies-line2);background:#fff;font-family:inherit;font-size:14px;color:var(--ies-ink);cursor:pointer}
.ies-chip[aria-pressed="true"]{background:var(--ies-g);border-color:var(--ies-g);color:#fff;font-weight:700}
.ies-count{font-size:14px}
.ies-count strong{font-size:20px}
.ies-count span{font-size:12px;color:var(--ies-mut);margin-left:8px}

/* 会社詳細 */
.ies-back a{font-size:14px}
.ies-company__name{margin:10px 0 14px}
.ies-dl{display:grid;grid-template-columns:88px 1fr;gap:6px 12px;font-size:14px}
.ies-dl dt{color:var(--ies-mut)}
.ies-dl dd{margin:0}
.ies-fit{display:grid;grid-template-columns:1fr 40px;gap:2px 8px;align-items:center;padding:12px 14px;margin:8px 0;border-radius:10px;background:#fff}
.ies-fit__mark{font-size:20px;font-weight:700;text-align:center}
.ies-fit--a .ies-fit__mark{color:var(--ies-g)}
.ies-fit--b .ies-fit__mark{color:var(--ies-mut)}
.ies-fit--c .ies-fit__mark{color:#9AAAA5}
.ies-fit__why{grid-column:1/-1;font-size:13px;color:var(--ies-mut);line-height:1.6}

/* エリア */
.ies-crumb{font-size:13px;color:var(--ies-mut)}
.ies-area__desc{padding:16px 18px;border-radius:12px;background:var(--ies-tint)}

/* 診断 */
.ies-quiz{max-width:560px;margin:0 auto}
.ies-quiz__head{display:flex;align-items:center;gap:10px;margin-bottom:20px}
.ies-quiz__back{width:44px;height:44px;border-radius:50%;border:1px solid var(--ies-line2);background:#fff;font-size:18px;cursor:pointer}
.ies-quiz__back:disabled{opacity:.35;cursor:default}
.ies-quiz__prog{flex:1;display:flex;flex-direction:column;gap:6px;font-size:12px;color:var(--ies-mut)}
.ies-bar{height:8px;border-radius:999px;background:var(--ies-line);overflow:hidden}
.ies-bar__fill{height:8px;border-radius:999px;background:var(--ies-g)}
.ies-bar__fill.is-sub{background:#9AAAA5}
.ies-quiz__no{margin:0;font-size:13px;font-weight:700;color:var(--ies-g)}
.ies-quiz__q{margin:4px 0 20px;font-size:24px;line-height:1.45}
.ies-quiz__opts{display:flex;flex-direction:column;gap:10px}
.ies-opt{text-align:left;min-height:60px;padding:12px 16px;border-radius:12px;border:1.5px solid var(--ies-line2);background:#fff;font-family:inherit;font-size:16px;color:var(--ies-ink);cursor:pointer}
.ies-opt:hover,.ies-opt.is-on{border-color:var(--ies-g);background:var(--ies-tint)}

/* 結果 */
.ies-result__hero{text-align:center;padding:28px 16px;border-radius:16px;background:var(--ies-tint);display:flex;flex-direction:column;gap:10px;align-items:center}
.ies-result__hero p{margin:0}
.ies-result__name{margin:0;font-size:28px;color:var(--ies-g)}
.ies-result__catch{font-weight:700;font-size:17px}
.ies-score{display:grid;grid-template-columns:120px 1fr 28px;gap:10px;align-items:center;font-size:14px;margin:8px 0}
.ies-score__pt{text-align:right}
.ies-points{padding-left:1.4em;line-height:1.8}
.ies-points li{margin:6px 0}
.ies-quote{padding:14px 16px;border-radius:12px;border:1px solid var(--ies-line2);margin:10px 0}
.ies-ehime{margin:24px 0;padding:18px 16px;border-radius:12px;background:#FFF5E8}
.ies-ehime p{margin:6px 0 0;font-size:14px}
.ies-share__row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:12px}

/* トップ */
.ies-hero{background:var(--ies-tint)}
.ies-hero__in{max-width:720px;margin:0 auto;padding:40px 20px 36px;display:flex;flex-direction:column;gap:18px}
.ies-hero__eyebrow{margin:0;font-size:13px;font-weight:700;color:var(--ies-g);letter-spacing:.08em}
.ies-hero h1{margin:0;font-size:32px;line-height:1.35}
.ies-hero__lead{margin:0;font-size:15px}
.ies-hero svg{width:100%;height:auto;border-radius:12px;display:block}
.ies-hero .ies-btn{width:100%}
.ies-step{display:flex;gap:14px;padding:16px;border-radius:12px;border:1px solid var(--ies-line);margin:10px 0}
.ies-step__n{flex:none;width:32px;height:32px;border-radius:50%;background:var(--ies-g);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center}
.ies-step p{margin:2px 0 0;font-size:13px;color:var(--ies-mut)}
.ies-types{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
@media(min-width:768px){.ies-types{grid-template-columns:repeat(3,minmax(0,1fr))}}
.ies-type{padding:14px;border-radius:12px;background:#fff;display:flex;flex-direction:column;gap:6px;font-weight:700;font-size:14px}
.ies-type svg{width:100%;height:auto;border-radius:8px;background:#EEF5F1}
.ies-band{background:var(--ies-tint);padding:8px 0}
.ies-band>.ies-main{padding-top:24px;padding-bottom:24px}
.ies-points-list>div{padding:0 0 16px;margin-bottom:16px;border-bottom:1px solid var(--ies-line)}
.ies-points-list>div:last-child{border:0}
.ies-points-list strong{display:block}
.ies-points-list span{font-size:14px;color:var(--ies-mut)}

/* コラム */
.ies-posts .wp-block-post{padding:16px 0;border-bottom:1px solid var(--ies-line)}
.ies-posts .wp-block-post-title{font-size:18px;margin:4px 0}

/* ===== v1.1 TOP・共通UI ===== */
.ies-wrap{max-width:1080px;margin:0 auto;padding:0 20px}
.ies-sec{padding:56px 0}
.ies-sec--tint{background:var(--ies-tint)}
.ies-sec h2{margin:4px 0 12px;font-size:24px}
@media(min-width:768px){.ies-sec{padding:80px 0}.ies-sec h2{font-size:30px}}
.ies-eyebrow{margin:0;font-size:12px;font-weight:700;letter-spacing:.16em;color:var(--ies-g)}
.ies-lead{margin:0 0 24px;color:var(--ies-mut);font-size:15px}
.ies-center{text-align:center;margin-top:28px}
.ies-more{text-align:right;margin:16px 0 0;font-weight:700}
.ies-btn--big{min-height:60px;font-size:17px;padding:0 36px;box-shadow:0 6px 16px rgba(30,107,92,.25)}
.ies-btn--white{background:#fff;color:var(--ies-g)!important;box-shadow:none}
.ies-btn--white:hover{background:var(--ies-tint)}
.ies-checks{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 16px;font-size:13px;color:var(--ies-mut)}
.ies-checks li::before{content:"";display:inline-block;width:14px;height:8px;border-left:2.5px solid var(--ies-g);border-bottom:2.5px solid var(--ies-g);transform:rotate(-45deg) translateY(-3px);margin-right:8px}

/* ヒーロー */
.ies-hero{background:linear-gradient(180deg,#F2F6F4 0%,#F2F6F4 82%,#fff 82%)}
.ies-hero__in{max-width:1080px;margin:0 auto;padding:36px 20px 8px;display:grid;gap:24px}
.ies-hero__text{display:flex;flex-direction:column;gap:16px;align-items:flex-start}
.ies-hero__text h1{font-size:34px;line-height:1.3;margin:0}
.ies-hero__art svg{width:100%;height:auto;border-radius:16px;display:block}
@media(max-width:767px){.ies-hero__text .ies-btn{width:100%}}
@media(min-width:768px){.ies-hero__in{grid-template-columns:1.05fr 1fr;align-items:center;padding:64px 20px 24px;gap:48px}.ies-hero__text h1{font-size:46px}}
.ies-stats{max-width:1080px;margin:16px auto 0;padding:0 20px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ies-stats>div{background:#fff;border:1px solid var(--ies-line);border-radius:14px;padding:14px 8px;text-align:center;display:flex;flex-direction:column;gap:2px}
.ies-stats strong{font-size:28px;line-height:1.1;color:var(--ies-g)}
.ies-stats small{font-size:14px}
.ies-stats span{font-size:11.5px;color:var(--ies-mut)}

/* 悩み */
.ies-worries{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:12px}
@media(min-width:768px){.ies-worries{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
.ies-worries li{border:1px solid var(--ies-line);border-radius:16px;padding:18px 18px 16px;background:#fff}
.ies-worry__q{margin:0 0 10px;font-weight:700;position:relative;padding-left:30px}
.ies-worry__q::before{content:"？";position:absolute;left:0;top:1px;width:22px;height:22px;border-radius:50%;background:#FFF0D9;color:#9A5B00;font-size:13px;display:flex;align-items:center;justify-content:center}
.ies-worry__a{margin:0;font-size:14px;color:var(--ies-mut);padding-left:30px;position:relative}
.ies-worry__a::before{content:"→";position:absolute;left:4px;color:var(--ies-g);font-weight:700}

/* 流れ */
.ies-flow{list-style:none;margin:24px 0 0;padding:0;display:grid;gap:12px;counter-reset:f}
@media(min-width:768px){.ies-flow{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
.ies-flow__item{background:#fff;border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:6px}
.ies-flow__n{width:36px;height:36px;border-radius:50%;background:var(--ies-g);color:#fff;font-weight:700;display:flex;align-items:center;justify-content:center;margin-bottom:4px}
.ies-flow__item p{margin:0;font-size:14px;color:var(--ies-mut)}

/* タイプカード（リンク） */
a.ies-type{text-decoration:none;color:var(--ies-ink);border:1px solid var(--ies-line);transition:border-color .15s,transform .15s}
a.ies-type:hover{border-color:var(--ies-g);transform:translateY(-2px)}
.ies-type span{font-weight:400;font-size:12.5px;color:var(--ies-mut);line-height:1.6}
.ies-type strong{font-size:15px}

/* 愛媛 */
.ies-ehime-grid{display:grid;gap:12px;margin-top:20px}
@media(min-width:768px){.ies-ehime-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}}
.ies-ehime-card{background:#fff;border-radius:16px;padding:20px;display:flex;flex-direction:column;gap:6px}
.ies-ehime-card__icon{align-self:flex-start;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;background:#FFF0D9;color:#7A4800}
.ies-ehime-card p{margin:0;font-size:14px;color:var(--ies-mut)}

/* 横スクロール */
.ies-scroller{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,80%);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 2px 14px;margin:0 -20px;padding-left:20px;padding-right:20px}
.ies-scroller>*{scroll-snap-align:start}
@media(min-width:768px){.ies-scroller{grid-auto-flow:row;grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-columns:auto;overflow:visible;margin:0;padding:0}}
.ies-pill small{margin-left:6px;color:var(--ies-mut);font-size:12px}
.ies-pill:hover{border-color:var(--ies-g)}

/* FAQ */
.ies-faq{border-bottom:1px solid var(--ies-line)}
.ies-faq summary{cursor:pointer;list-style:none;padding:18px 36px 18px 0;font-weight:700;position:relative}
.ies-faq summary::-webkit-details-marker{display:none}
.ies-faq summary::after{content:"+";position:absolute;right:6px;top:14px;font-size:22px;color:var(--ies-g)}
.ies-faq[open] summary::after{content:"−"}
.ies-faq p{margin:0 0 18px;color:var(--ies-mut);font-size:14px}

/* 信頼・最終CTA */
.ies-trust{border:1.5px solid var(--ies-line2);border-radius:16px;padding:20px}
.ies-trust p{margin:6px 0 0;font-size:14px}
.ies-final{background:var(--ies-g);color:#fff;text-align:center;padding:56px 0}
.ies-final__title{font-size:24px;font-weight:700;margin:0 0 20px;line-height:1.5}
.ies-final .ies-btn{width:100%;max-width:420px}

/* 追従ボタン */
.ies-sticky{position:fixed;left:12px;right:12px;bottom:12px;z-index:50;display:flex;align-items:center;justify-content:center;min-height:56px;border-radius:999px;background:var(--ies-g);color:#fff!important;font-weight:700;text-decoration:none;box-shadow:0 8px 24px rgba(0,0,0,.2);transform:translateY(140%);transition:transform .25s}
.ies-sticky.is-on{transform:none}
@media(min-width:768px){.ies-sticky{left:auto;right:24px;bottom:24px;padding:0 28px}}
@media(prefers-reduced-motion:reduce){.ies-sticky,a.ies-type{transition:none}}

/* 診断イントロ・結果 */
.ies-intro{display:flex;flex-direction:column;gap:14px;align-items:flex-start}
.ies-intro__art svg{width:100%;height:auto;border-radius:16px;display:block}
.ies-intro__art{width:100%}
.ies-intro__title{margin:0;font-size:28px}
.ies-intro p{margin:0}
.ies-intro .ies-btn{width:100%}
.ies-result__art{width:200px;max-width:70%}
.ies-result__art svg{width:100%;height:auto;border-radius:12px;background:#fff;display:block}
.ies-result__link{font-weight:700;font-size:14px}
.ies-typepage .ies-result__hero{margin-top:8px}
.ies-scroller{scroll-padding-left:20px}
@media(max-width:767px){.ies-footer{padding-bottom:84px}}
.ies-hero{background:linear-gradient(180deg,#F2F6F4 0,#F2F6F4 calc(100% - 64px),#fff calc(100% - 64px))}

/* ===== v1.2 ===== */
body{padding:0!important}
h1,h2,h3,.ies-final__title,.ies-hero h1,.ies-worry__q,.ies-card__head strong{word-break:auto-phrase;text-wrap:balance}
/* ナビ：スマホは1行・横スクロール */
.ies-nav ul{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;justify-content:flex-start;gap:4px;padding:0 12px}
.ies-nav ul::-webkit-scrollbar{display:none}
.ies-nav li{flex:0 0 auto}
.ies-nav a{white-space:nowrap;padding:12px 10px}
.ies-nav a[aria-current="page"],.ies-nav a.is-current{color:var(--ies-g);box-shadow:inset 0 -3px 0 var(--ies-g)}
@media(min-width:768px){.ies-nav ul{gap:24px;padding:0 20px}}
/* タッチ端末でホバーが残らないように */
@media(hover:none){.ies-opt:hover:not(.is-on){background:#fff;border-color:var(--ies-line2)}}
/* 公式サイトのキャプチャ：ブラウザ枠 */
.ies-shot__frame{display:block;border:1px solid #D5DFDB;border-radius:10px;overflow:hidden;background:#fff}
.ies-shot__bar{display:flex;align-items:center;gap:5px;padding:6px 10px;background:#EEF2F0;border-bottom:1px solid #D5DFDB}
.ies-shot__bar i{width:7px;height:7px;border-radius:50%;background:#C9D3CF;display:block}
.ies-shot__bar em{font-style:normal;font-size:11px;color:var(--ies-mut);margin-left:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}
.ies-shot .ies-shot__frame img{display:block;border:0;border-radius:0;aspect-ratio:16/10;width:100%;object-fit:cover;object-position:top;background:#F2F6F4}
.ies-shot--big .ies-shot__frame img{aspect-ratio:16/9}
/* 愛媛カード・ガイド */
a.ies-ehime-card{color:var(--ies-ink);text-decoration:none;transition:transform .15s,box-shadow .15s}
a.ies-ehime-card:hover{transform:translateY(-2px);box-shadow:0 6px 18px rgba(31,42,46,.08)}
.ies-ehime-card__more{margin-top:auto;padding-top:6px;font-size:13px;font-weight:700;color:var(--ies-g)}
.ies-guide-grid{display:grid;gap:12px;margin-top:20px}
@media(min-width:768px){.ies-guide-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
.ies-guide{display:flex;flex-direction:column;gap:6px;padding:18px;border:1px solid var(--ies-line);border-radius:14px;background:#fff;color:var(--ies-ink);text-decoration:none}
.ies-guide:hover{border-color:var(--ies-g)}
.ies-guide__cat{font-size:11px;font-weight:700;color:var(--ies-g);letter-spacing:.04em}
.ies-guide strong{font-size:16px;line-height:1.5}
.ies-guide p{margin:0;font-size:13px;color:var(--ies-mut);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ies-guide__more{font-size:13px;font-weight:700;color:var(--ies-g);margin-top:4px}
.ies-mini span{white-space:nowrap;flex:0 0 auto;margin-left:12px}
/* 診断の流れ：スマホは横並びで短く */
@media(max-width:767px){
 .ies-flow__item{display:grid;grid-template-columns:36px 1fr;column-gap:14px;row-gap:2px;padding:16px}
 .ies-flow__n{grid-row:span 2;margin:0}
}
/* 会社一覧のフィルター：スマホはチップを横スクロール */
@media(max-width:767px){
 .ies-filter{gap:12px}
 .ies-filter .ies-chips{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;margin:0 -20px;padding:0 20px 2px}
 .ies-filter .ies-chips::-webkit-scrollbar{display:none}
 .ies-chip{flex:0 0 auto;min-height:36px}
}
.ies-filter .ies-field>span,.ies-filter label{font-size:13px;font-weight:700;color:var(--ies-mut)}
/* 会社詳細 */
.ies-company__feat{margin:-4px 0 14px}
.ies-asks ol{margin:8px 0 0;padding-left:1.4em}
.ies-asks li{margin:6px 0}
/* 記事ページ */
.ies-main .wp-block-table table{border-collapse:collapse;width:100%;font-size:14px}
.ies-main .wp-block-table th,.ies-main .wp-block-table td{border:1px solid var(--ies-line);padding:8px 10px;text-align:left;vertical-align:top}
.ies-main .wp-block-table thead th{background:var(--ies-tint)}
.ies-main .wp-block-table{overflow-x:auto}
.ies-main h2.wp-block-heading{margin-top:40px;padding-left:12px;border-left:4px solid var(--ies-g)}
/* 404 */
.ies-404{text-align:center;padding:48px 0}
.ies-404 .ies-btn{margin:8px}
.ies-btn--ghost{background:#fff;color:var(--ies-g);border:1.5px solid var(--ies-g)}
.ies-nb{display:inline-block}
.ies-fitlabel{align-self:flex-start;font-size:12px;font-weight:700;padding:2px 10px;border-radius:999px}
.ies-fitlabel--a{background:#E3F1EC;color:var(--ies-g)}
.ies-fitlabel--b{background:#F2F4F3;color:var(--ies-mut)}
.ies-badge{white-space:nowrap;flex:0 0 auto}

/* ===== v1.4 header / footer ===== */
.ies-header__in{padding:10px 16px}
.ies-logo__text{display:flex;flex-direction:column;line-height:1.2}
.ies-logo__name{font-size:18px;font-weight:700}
.ies-logo__sub{font-size:10px;font-weight:500;color:var(--ies-mut);letter-spacing:.06em}
.ies-header__cta{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 16px;border-radius:999px;background:var(--ies-g);color:#fff;font-weight:700;font-size:14px;text-decoration:none;white-space:nowrap}
.ies-header__cta:hover{background:var(--ies-gd,#154F44)}
.ies-header__cta-sub{font-size:11px;font-weight:700;background:#fff;color:var(--ies-g);border-radius:999px;padding:1px 7px}
@media(min-width:768px){.ies-header__in{padding:14px 20px}.ies-header__cta{min-height:44px;padding:0 20px;font-size:15px}}
.ies-nav{position:sticky;top:0;z-index:20}
.ies-nav ul{gap:2px}
@media(min-width:1024px){.ies-nav ul{justify-content:center;gap:28px}}
/* footer sitemap */
.ies-footer__in{gap:28px;padding:40px 20px}
.ies-footer__brand{display:flex;flex-direction:column;gap:10px;max-width:420px}
.ies-footer__brand strong{font-size:18px;color:#fff}
.ies-footer__brand p{margin:0;font-size:13px;color:#B9C4C1}
.ies-footer__brand .ies-btn{align-self:flex-start;min-height:44px;font-size:14px;padding:0 22px}
.ies-footer__cols{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 20px}
@media(min-width:900px){.ies-footer__in{display:grid;grid-template-columns:280px 1fr;column-gap:48px}.ies-footer__cols{grid-template-columns:repeat(4,minmax(0,1fr))}.ies-footer__copy{grid-column:1/-1}}
.ies-fcol__title{margin:0 0 8px;font-size:13px;font-weight:700;color:#fff;letter-spacing:.04em}
.ies-fcol ul{list-style:none;margin:0;padding:0}
.ies-fcol li a,.ies-footer .ies-fcol a{font-size:13px;padding:5px 0;color:#C9D3CF;text-decoration:none;display:block;line-height:1.5}
.ies-fcol a:hover{color:#fff;text-decoration:underline}
.ies-fmore{margin-top:6px;font-weight:700;color:#fff!important}
.ies-footer__copy{color:#8A9895;font-size:12px;border-top:1px solid rgba(255,255,255,.1);padding-top:16px}
/* v1.4.1 */
.wp-site-blocks>*,.ies-hero,.ies-sec,.ies-final{margin-block-start:0!important}
.ies-footer{margin-top:0}
.ies-main{padding-bottom:56px}
@media(max-width:1023px){.ies-nav{-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}}
/* ===== v1.5 ===== */
.ies-field input[type=search]{min-height:44px;padding:0 12px;border-radius:10px;border:1.5px solid var(--ies-line2);font-family:inherit;font-size:16px;background:#fff;width:100%;box-sizing:border-box}
.ies-field input[type=search]:focus,.ies-field select:focus{outline:2px solid var(--ies-g);outline-offset:1px}
.ies-reset{border:0;background:none;color:var(--ies-g);font:inherit;font-size:13px;font-weight:700;text-decoration:underline;cursor:pointer;padding:0 8px}
.ies-empty{padding:20px;border-radius:12px;background:var(--ies-tint);text-align:center}
.ies-card__pin{margin-right:2px}
.ies-tag--link{text-decoration:none}
.ies-tag--link:hover{background:var(--ies-g);color:#fff}
.ies-badge--link:hover{background:var(--ies-line2)}
.ies-pill--sm{padding:6px 12px;font-size:13px}
.ies-crumb{font-size:12px;color:var(--ies-mut);margin:8px 0 12px}
.ies-crumb a{color:var(--ies-mut)}
/* 会社ページ */
.ies-comment{position:relative;margin:24px 0;padding:18px 18px 12px;border-radius:14px;background:#FFF8EC;border:1px solid #F3DDB3}
.ies-comment__who{display:flex;align-items:center;gap:8px;margin:0 0 6px;font-weight:700;font-size:14px}
.ies-comment__icon{display:inline-flex;width:28px;height:28px;border-radius:50%;background:var(--ies-mikan);color:#fff;align-items:center;justify-content:center;font-size:14px}
.ies-comment p{margin:6px 0;line-height:1.85}
.ies-toc--inline{display:flex;gap:8px;overflow-x:auto;margin:20px 0 0;padding-bottom:4px}
.ies-toc--inline a{flex:0 0 auto;font-size:13px;padding:8px 12px;border-radius:999px;background:var(--ies-tint);color:var(--ies-ink);text-decoration:none}
.ies-info{width:100%;border-collapse:collapse;font-size:14px}
.ies-info th,.ies-info td{padding:12px 10px;border-bottom:1px solid var(--ies-line);text-align:left;vertical-align:top;line-height:1.7}
.ies-info th{width:7.5em;color:var(--ies-mut);font-weight:500;white-space:nowrap}
.ies-info small{color:var(--ies-mut)}
.ies-fit strong a{color:inherit}
[id=fit],[id=info],[id=asks],[id=similar]{scroll-margin-top:72px}
/* シェア */
.ies-share2{margin:32px 0;padding:20px;border-radius:12px;border:1px solid var(--ies-line);background:#fff}
.ies-share2__title{margin:0 0 12px;font-weight:700}
.ies-share2__row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
@media(min-width:640px){.ies-share2__row{grid-template-columns:repeat(6,minmax(0,1fr))}}
.ies-sns{display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:10px;font:inherit;font-size:13px;font-weight:700;text-decoration:none;color:#fff;border:0;cursor:pointer}
.ies-sns--x{background:#111}.ies-sns--threads{background:#333}.ies-sns--line{background:#06C755}.ies-sns--fb{background:#1877F2}
.ies-sns--ig{background:linear-gradient(45deg,#F58529,#DD2A7B 55%,#8134AF)}
.ies-sns--copy{background:var(--ies-tint);color:var(--ies-ink)}
.ies-sns:hover{opacity:.88}
.ies-share2__msg{margin:8px 0 0;font-size:12px;color:var(--ies-g);min-height:1em}
.ies-share2>a{display:inline-block;margin-top:10px;font-size:14px}
/* コラム */
.ies-post__head{margin-bottom:24px}
.ies-post__cat{display:inline-block;font-size:12px;font-weight:700;color:var(--ies-g);text-decoration:none;margin-bottom:6px}
.ies-post__title{font-size:clamp(24px,5.5vw,32px);line-height:1.45;margin:0 0 12px;letter-spacing:.01em}
.ies-post__meta{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:12px;color:var(--ies-mut);margin:0 0 16px}
.ies-post__meta a{color:var(--ies-mut)}
.ies-post__eye{margin:0}
.ies-post__eye img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:12px;display:block}
.ies-post__eye figcaption{font-size:11px;color:var(--ies-mut);margin-top:6px;text-align:right}
.ies-post__eye figcaption a{color:var(--ies-mut)}
.ies-post__body{font-size:16px;line-height:1.95}
.ies-post__body h2{font-size:21px;line-height:1.5;margin:48px 0 16px;padding:0 0 10px;border-bottom:2px solid var(--ies-g);scroll-margin-top:72px}
.ies-post__body h3{font-size:18px;margin:32px 0 10px;padding-left:10px;border-left:4px solid var(--ies-mikan)}
.ies-post__body mark,.ies-marker{background:linear-gradient(transparent 58%,#FFE08A 58%);color:inherit;font-weight:700;padding:0 1px}
.ies-post__body strong{font-weight:700}
.ies-post__body table{width:100%;border-collapse:collapse;font-size:14px;display:block;overflow-x:auto}
.ies-post__body th,.ies-post__body td{border:1px solid var(--ies-line);padding:8px 10px}
.ies-post__body th{background:var(--ies-tint)}
.ies-points-box{margin:24px 0;padding:18px 20px;border-radius:12px;border:2px solid var(--ies-g);background:#fff}
.ies-points-box__title{margin:0 0 8px;font-weight:700;color:var(--ies-g)}
.ies-points-box ul{margin:0;padding-left:1.2em}
.ies-points-box li{margin:4px 0;line-height:1.7}
.ies-points-box li::marker{content:"✓  ";color:var(--ies-g)}
.ies-toc{margin:24px 0;padding:14px 18px;border-radius:12px;background:var(--ies-tint)}
.ies-toc--inline{padding:0;background:none}
.ies-toc summary{font-weight:700;cursor:pointer}
.ies-toc ol{margin:8px 0 0;padding-left:1.4em;font-size:14px;line-height:1.9}
.ies-toc a{color:var(--ies-ink)}
.ies-author{margin:32px 0;padding:18px 20px;border-radius:12px;background:var(--ies-tint);font-size:14px}
.ies-author p{margin:6px 0;line-height:1.8}
/* TOP 新着コラム */
.ies-sec__head{display:flex;align-items:baseline;justify-content:space-between;gap:12px}
.ies-sec__link{font-size:14px;font-weight:700;color:var(--ies-g);white-space:nowrap}
.ies-guide--card{padding:0;overflow:hidden;gap:0}
.ies-guide__thumb{position:relative;display:block;aspect-ratio:16/9;background:var(--ies-tint);overflow:hidden}
.ies-guide__thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ies-guide__ph{display:flex;width:100%;height:100%;align-items:center;justify-content:center;font-size:44px;font-weight:700;color:rgba(255,255,255,.9)}
.ies-guide__ph--0{background:linear-gradient(135deg,#1E6B5C,#4C9A86)}.ies-guide__ph--1{background:linear-gradient(135deg,#F0A030,#F5C26B)}
.ies-guide__ph--2{background:linear-gradient(135deg,#2F5D7C,#5E8FB0)}.ies-guide__ph--3{background:linear-gradient(135deg,#7A5C3E,#B08A62)}
.ies-new{position:absolute;top:10px;left:10px;font-size:11px;font-weight:700;padding:3px 8px;border-radius:6px;background:var(--ies-mikan);color:#fff;letter-spacing:.06em}
.ies-guide__body{display:flex;flex-direction:column;gap:6px;padding:14px 16px 16px}
.ies-guide__cat time{margin-left:10px;color:var(--ies-mut);font-weight:500}
@media(max-width:767px){.ies-guide-grid--scroll{grid-auto-flow:column;grid-auto-columns:78%;overflow-x:auto;scroll-snap-type:x mandatory;margin:20px -20px 0;padding:0 20px 12px;scroll-padding-left:20px}.ies-guide-grid--scroll>*{scroll-snap-align:start}}
@media(min-width:768px){.ies-guide-grid--scroll{grid-template-columns:repeat(4,minmax(0,1fr))}}
/* 記事一覧 */
.ies-posts .wp-block-post-featured-image img{border-radius:10px}
/* ===== 崩れ防止ガード（v1.5.1） ===== */
.ies-main :where(div,section,article,a,li,figure,aside,nav){min-width:0}
.ies-main h1,.ies-main h2,.ies-main h3,.ies-card strong,.ies-mini strong,.ies-guide strong,.ies-info td,.ies-company__name{overflow-wrap:anywhere;word-break:normal;line-break:strict}
.ies-main img,.ies-main svg,.ies-main video,.ies-main iframe{max-width:100%}
.ies-main img{height:auto}
.ies-toc--inline,.ies-scroller,.ies-guide-grid--scroll,.ies-chips,.ies-nav__in,.ies-nav ul{scrollbar-width:none;-ms-overflow-style:none}
.ies-toc--inline::-webkit-scrollbar,.ies-scroller::-webkit-scrollbar,.ies-guide-grid--scroll::-webkit-scrollbar,.ies-chips::-webkit-scrollbar,.ies-nav__in::-webkit-scrollbar,.ies-nav ul::-webkit-scrollbar{display:none}
.ies-fit strong a{text-decoration:none}
.ies-fit strong a:hover{text-decoration:underline}
.ies-reset{min-height:36px}
.ies-sec__head h2{margin:0;flex:1 1 auto}
.ies-sec__head{margin-bottom:4px}
.ies-guide__ph svg{width:56px;height:56px;opacity:.9}
.ies-badges{display:flex;flex-wrap:wrap;gap:6px}
.ies-tags{display:flex;flex-wrap:wrap;gap:6px}
.ies-info{table-layout:fixed}
/* カードの高さと並びをそろえる（v1.5.2） */
.ies-cards{align-items:stretch}
.ies-card{height:100%;box-sizing:border-box}
.ies-card__head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
.ies-card__head strong{font-size:17px;line-height:1.45}
.ies-card__head .ies-badge{flex:0 0 auto;white-space:nowrap}
.ies-card__area{min-height:1.6em}
.ies-card .ies-tags{min-height:30px;align-content:flex-start}
.ies-tag--sub{background:#fff;color:var(--ies-mut);border:1px solid var(--ies-line2);font-weight:500}
.ies-card__none{font-size:12px;color:var(--ies-mut)}
.ies-card__more{margin-top:auto;padding-top:4px}
.ies-shot__frame .ies-shot__empty{border:0;border-radius:0;aspect-ratio:16/10;width:100%;display:flex;align-items:center;justify-content:center;background:repeating-linear-gradient(45deg,#F2F6F4 0 10px,#EAF0ED 10px 20px);color:var(--ies-mut);font-size:12px}
.ies-shot--big .ies-shot__frame .ies-shot__empty{aspect-ratio:16/9}
.ies-shot figcaption{min-height:1.5em;margin-top:6px}
/* ボタンはどこに置いても形を保つ（親のリンク指定に上書きされない） */
:is(.ies-header,.ies-main,.ies-footer,.ies-sticky) .ies-btn{display:inline-flex;align-items:center;justify-content:center;line-height:1.2;text-align:center;text-decoration:none}
.ies-footer .ies-btn--white{color:var(--ies-g)!important;padding:0 22px;min-height:44px;font-size:14px}
/* ===== 家づくりガイド（v1.6） ===== */
.ies-main--wide{max-width:1040px}
.ies-colhead{padding:8px 0 4px}
.ies-colhead h1{font-size:clamp(26px,5vw,34px);margin:6px 0 8px;line-height:1.35}
.ies-colhead p{margin:0;color:var(--ies-mut);line-height:1.8}
.ies-colhead--genre{display:flex;gap:16px;align-items:flex-start;padding:20px;border-radius:16px;background:color-mix(in srgb,var(--gc) 8%,#fff);border:1px solid color-mix(in srgb,var(--gc) 22%,#fff)}
.ies-colhead--genre .ies-eyebrow{color:var(--gc)}
.ies-colhead__icon{flex:0 0 auto;width:52px;height:52px;border-radius:14px;background:var(--gc);display:flex;align-items:center;justify-content:center}
.ies-colsearch{margin:20px 0 12px}
.ies-colsearch input{width:100%;box-sizing:border-box;min-height:48px;padding:0 16px 0 44px;border-radius:999px;border:1.5px solid var(--ies-line2);font:inherit;font-size:16px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%234A5A5E' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-4-4'/%3E%3C/svg%3E") no-repeat 16px center}
.ies-colsearch input:focus{outline:2px solid var(--ies-g);outline-offset:1px}
.ies-gchips{display:flex;gap:8px;overflow-x:auto;padding:4px 2px 10px;margin:0 -20px;padding-left:20px;padding-right:20px;scrollbar-width:none}
.ies-gchips::-webkit-scrollbar{display:none}
@media(min-width:768px){.ies-gchips{flex-wrap:wrap;overflow:visible;margin:0;padding:4px 0 10px}}
.ies-gchip{--gc:var(--ies-g);flex:0 0 auto;display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 14px;border-radius:999px;border:1.5px solid var(--ies-line2);background:#fff;color:var(--ies-ink);font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}
.ies-gchip svg{color:var(--gc)}
.ies-gchip small{font-size:11px;font-weight:500;color:var(--ies-mut);background:var(--ies-tint);border-radius:999px;padding:1px 7px}
.ies-gchip:hover{border-color:var(--gc)}
.ies-gchip.is-on{background:var(--gc);border-color:var(--gc);color:#fff}
.ies-gchip.is-on svg{color:#fff}
.ies-gchip.is-on small{background:rgba(255,255,255,.25);color:#fff}
.ies-gchip.is-empty{opacity:.55}
/* 読む順番 */
.ies-path{margin:20px 0 28px;padding:20px;border-radius:16px;background:var(--ies-tint)}
.ies-path h2{margin:0 0 4px;font-size:18px}
.ies-path__list{list-style:none;margin:14px 0 0;padding:0;display:grid;gap:10px}
@media(min-width:768px){.ies-path__list{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}}
.ies-path__step{position:relative;display:flex;flex-direction:column;gap:6px;padding:14px 14px 14px 52px;border-radius:12px;background:#fff;border:1px solid var(--ies-line)}
@media(min-width:768px){.ies-path__step{padding:16px 14px 14px}}
.ies-path__n{position:absolute;left:14px;top:14px;width:26px;height:26px;border-radius:50%;background:var(--ies-g);color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center}
@media(min-width:768px){.ies-path__n{position:static;margin-bottom:2px}}
.ies-path__step strong{font-size:14px}
.ies-path__step a{font-size:13px;line-height:1.55;color:var(--ies-g)}
/* 記事カード */
.ies-acards{display:grid;gap:14px;margin:8px 0 24px}
@media(min-width:640px){.ies-acards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(min-width:960px){.ies-acards{grid-template-columns:repeat(3,minmax(0,1fr))}}
.ies-main:not(.ies-main--wide) .ies-acards{grid-template-columns:1fr}
@media(min-width:640px){.ies-main:not(.ies-main--wide) .ies-acards--3{grid-template-columns:repeat(3,minmax(0,1fr))}}
.ies-acard{display:flex;flex-direction:column;border-radius:14px;border:1px solid var(--ies-line);background:#fff;color:var(--ies-ink);text-decoration:none;overflow:hidden;transition:border-color .15s,transform .15s}
.ies-acard:hover{border-color:var(--ies-g);transform:translateY(-2px)}
.ies-acard[hidden]{display:none}
.ies-acard__thumb{position:relative;display:block;aspect-ratio:16/9;background:var(--ies-tint);overflow:hidden}
.ies-acard__thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ies-acard__ph{--gc:var(--ies-g);display:flex;width:100%;height:100%;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--gc),color-mix(in srgb,var(--gc) 60%,#fff))}
.ies-acard__body{display:flex;flex-direction:column;gap:6px;padding:14px 16px 16px;flex:1}
.ies-acard__genre{--gc:var(--ies-g);display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;color:var(--gc)}
.ies-acard__title{font-size:16px;line-height:1.55}
.ies-acard__excerpt{font-size:13px;color:var(--ies-mut);line-height:1.7;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ies-acard__meta{margin-top:auto;padding-top:4px;display:flex;gap:12px;font-size:12px;color:var(--ies-mut)}
.ies-glossbox{margin:28px 0;padding:20px;border-radius:14px;border:1.5px dashed var(--ies-line2);display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.ies-glossbox p{margin:0;font-size:14px;color:var(--ies-mut)}
.ies-snslinks{display:flex;gap:10px;margin-top:6px}
.ies-footer a.ies-snslink{display:inline-flex;width:40px;height:40px;border-radius:50%;align-items:center;justify-content:center;background:rgba(255,255,255,.1);color:#fff;padding:0}
.ies-footer a.ies-snslink:hover{background:rgba(255,255,255,.2)}

/* v1.6.6 画面には出さない見出し（読み上げ・検索エンジン向け） */
.ies-sr{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
