@charset "utf-8";
/* =============================================================================
 * 工事対応エリア TOP（.ea-*）
 *   /area/css/area2.css　2026-10-15 新設
 *   配色・角丸はご利用ガイド（/new_guest/css/guide2.css）と施工事例サイト（/sekou/css/sekou_site.css）にそろえる。
 *   影は使わない。左だけの太い線を引かない。@media はCSSの最後。
 * ========================================================================== */

.ea { --ea-ink: #22303a; --ea-sub: #5a6b78; --ea-acc: #209512; --ea-acc2: #17790c; --ea-soft: #f3f9f1; --ea-line: #dfe7dc;
	--ea-blue: #1a6fc4; --ea-gray: #f5f7f8; color: var(--ea-ink); font-size: 14.5px; line-height: 1.85; }
.ea [id] { scroll-margin-top: 150px; }
.ea p { margin: 0; }
.ea ul { margin: 0; padding: 0; list-style: none; }
.ea li::before { content: none !important; }
.ea a { color: var(--ea-blue); }
.ea svg { fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }

/* ---- 共通部品 ---- */
.ea .ea-sec { margin: 0 0 34px; }
.ea h2.ea-h2 { display: block; margin: 0 0 12px !important; padding: 12px 16px !important; border: 0 !important; border-radius: 12px; background: var(--ea-soft) !important;
	font-size: 20px !important; line-height: 1.45 !important; font-weight: bold; color: var(--ea-ink) !important; text-align: left !important; }
.ea h2.ea-h2::before, .ea h2.ea-h2::after { content: none !important; }
.ea .ea-lead { margin: 0 0 12px; font-size: 14px; color: #34424d; }
.ea .ea-note { margin: 10px 0 0; font-size: 12.5px; line-height: 1.75; color: var(--ea-sub); }
.ea .ea-more { margin: 10px 0 0; text-align: right; }
.ea .ea-more a { font-weight: bold; }
.ea .ea-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 46px; padding: 0 22px; border: 2px solid var(--ea-acc); border-radius: 999px;
	background: var(--ea-acc); color: #fff; font-size: 15px; font-weight: bold; line-height: 1.3; text-decoration: none; cursor: pointer; }
.ea .ea-btn:hover { background: var(--ea-acc2); border-color: var(--ea-acc2); color: #fff; }
.ea .ea-btn--line { background: #fff; color: var(--ea-acc2); }
.ea .ea-btn--line:hover { background: var(--ea-soft); color: var(--ea-acc2); }
.ea .ea-btn--big { min-height: 58px; font-size: 17px; }
.ea .ea-ico { display: inline-flex; align-items: center; justify-content: center; flex-shrink: 0; width: 40px; height: 40px; border-radius: 50%; background: #e3f2df; color: var(--ea-acc); }
.ea .ea-tag { display: inline-block; padding: 2px 10px; border-radius: 6px; font-size: 12.5px; font-weight: bold; line-height: 1.6; white-space: nowrap; }
.ea .ea-tag--1 { background: #e3f2df; color: var(--ea-acc2); }
.ea .ea-tag--2 { background: #e5f0fb; color: #1a5ea8; }
.ea .ea-tag--3 { background: #fdf0dc; color: #8a5300; }
.ea .ea-tag--0 { background: #eef1f3; color: #6b7a86; font-weight: normal; }

/* ---- メイン（検索） ---- */
.ea .ea-hero { margin: 6px 0 30px; padding: 22px 24px 18px; border: 1px solid var(--ea-line); border-radius: 18px; background: linear-gradient(180deg, #f3f9f1 0, #fff 70%); }
.ea h2.ea-hero__h { margin: 0 0 8px !important; padding: 0 !important; border: 0 !important; background: none !important; font-size: 24px !important; line-height: 1.4 !important; font-weight: bold; color: var(--ea-ink) !important; }
.ea h2.ea-hero__h::before, .ea h2.ea-hero__h::after { content: none !important; }
.ea .ea-hero__lead { margin: 0 0 16px; font-size: 14px; color: #34424d; }
.ea .ea-find { display: grid; grid-template-columns: minmax(0, 1fr) 210px auto; gap: 10px; align-items: end; }
.ea .ea-find label { display: block; margin: 0; }
.ea .ea-find__l { display: block; margin: 0 0 4px; font-size: 12.5px; font-weight: bold; color: var(--ea-sub); }
.ea .ea-find__in { display: flex; align-items: center; gap: 8px; height: 50px; padding: 0 14px; border: 2px solid var(--ea-acc); border-radius: 12px; background: #fff; color: var(--ea-acc); }
.ea .ea-find__in input { flex: 1; min-width: 0; height: 44px; padding: 0; border: 0; background: none; font-size: 16px; color: var(--ea-ink); outline: none; }
.ea .ea-find select { width: 100%; height: 50px; padding: 0 10px; border: 1px solid #c9d3cf; border-radius: 12px; background: #fff; font-size: 15px; color: var(--ea-ink); white-space: nowrap; }
.ea .ea-find .ea-btn { height: 50px; min-width: 120px; border-radius: 12px; }
.ea .ea-find__note { margin: 6px 0 0; font-size: 12px; color: var(--ea-sub); }
.ea .ea-sug { margin: 6px 0 0; border: 1px solid var(--ea-line); border-radius: 12px; background: #fff; overflow: hidden; }
.ea .ea-sug li + li { border-top: 1px solid var(--ea-line); }
.ea .ea-sug a { display: flex; justify-content: space-between; gap: 10px; padding: 10px 14px; color: var(--ea-ink); text-decoration: none; }
.ea .ea-sug a:hover, .ea .ea-sug a:focus-visible, .ea .ea-sug a.is-act { background: var(--ea-soft); }
.ea .ea-sug small { color: var(--ea-sub); }
.ea .ea-kpi { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; margin: 16px 0 0; }
.ea .ea-kpi li { padding: 10px 12px; border: 1px solid var(--ea-line); border-radius: 12px; background: #fff; text-align: center; line-height: 1.4; }
.ea .ea-kpi b { display: block; font-size: 26px; color: var(--ea-acc2); }
.ea .ea-kpi span { font-size: 12.5px; color: var(--ea-sub); }
.ea .ea-kpi__note { margin: 6px 0 0; font-size: 12px; color: var(--ea-sub); text-align: right; }
.ea .ea-jump { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin: 14px 0 0; }
.ea .ea-jump a { display: flex; align-items: center; justify-content: center; gap: 6px; min-height: 46px; padding: 6px 8px; border: 1px solid var(--ea-line); border-radius: 12px;
	background: #fff; color: var(--ea-ink); font-size: 13.5px; font-weight: bold; text-decoration: none; text-align: center; line-height: 1.35; }
.ea .ea-jump a:hover { border-color: var(--ea-acc); }
.ea .ea-jump svg { flex-shrink: 0; color: var(--ea-acc); }

/* ---- 結果 ---- */
.ea .ea-res { padding: 0 0 4px; }
.ea .ea-res__lead { margin: 0 0 12px; font-size: 15px; }
.ea .ea-res__lead b { color: var(--ea-acc2); }
.ea .ea-tbl { border: 1px solid var(--ea-line); border-radius: 14px; overflow: hidden; background: #fff; }
.ea .ea-tbl li { display: grid; grid-template-columns: 200px 130px minmax(0, 1fr); gap: 12px; align-items: center; padding: 8px 14px; }
.ea .ea-tbl li + li { border-top: 1px solid var(--ea-line); }
.ea .ea-tbl li.is-sel { background: #f7fbf5; }
.ea .ea-tbl li.is-off { color: #8a97a1; }
.ea .ea-tbl__n { display: flex; align-items: center; gap: 10px; font-weight: bold; }
.ea .ea-tbl__n img { width: 40px; height: 40px; flex-shrink: 0; }
.ea .ea-tbl li.is-off .ea-tbl__n img { opacity: .45; }
.ea .ea-tbl__a { display: flex; flex-wrap: wrap; gap: 4px 16px; font-size: 13px; font-weight: bold; }
.ea .ea-legend { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; margin: 10px 0 0; }
.ea .ea-legend div { display: grid; gap: 4px; padding: 8px 10px; border-radius: 10px; background: var(--ea-gray); font-size: 12px; line-height: 1.6; }
.ea .ea-legend dt, .ea .ea-legend dd { margin: 0; }
.ea .ea-out { margin: 12px 0; padding: 14px 16px; border: 1px solid #ecd9c0; border-radius: 14px; background: #fffaf2; }
.ea .ea-out__h { margin: 0 0 4px; font-weight: bold; color: #8a5300; }

/* ---- 商材 ---- */
.ea .ea-items { display: grid; grid-template-columns: repeat(7, minmax(0, 1fr)); gap: 8px; }
.ea .ea-it { display: grid; justify-items: center; align-content: start; gap: 2px; height: 100%; box-sizing: border-box; padding: 10px 4px 8px; border: 1px solid var(--ea-line); border-radius: 12px;
	background: #fff; color: var(--ea-ink); text-decoration: none; text-align: center; line-height: 1.35; }
.ea .ea-it:hover { border-color: var(--ea-acc); }
.ea .ea-it.is-sel { border: 2px solid var(--ea-acc); padding: 9px 3px 7px; background: var(--ea-soft); }
.ea .ea-it img { width: 56px; height: 56px; }
.ea .ea-it__all { display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; border-radius: 50%; background: #e3f2df; color: var(--ea-acc2); font-size: 13px; font-weight: bold; }
.ea .ea-it b { font-size: 13px; }
.ea .ea-it small { font-size: 11.5px; color: var(--ea-sub); }

/* ---- 都道府県・市区町村 ---- */
.ea .ea-map { border: 1px solid var(--ea-line); border-radius: 14px; background: #fff; }
.ea .ea-map__r { display: grid; grid-template-columns: 7.5em minmax(0, 1fr); gap: 8px 12px; align-items: center; padding: 10px 14px; }
.ea .ea-map__r + .ea-map__r { border-top: 1px solid var(--ea-line); }
.ea .ea-map__h { font-size: 13px; font-weight: bold; color: var(--ea-sub); }
.ea .ea-map ul { display: flex; flex-wrap: wrap; gap: 6px; }
.ea .ea-map a, .ea .ea-map span.is-off { display: inline-flex; align-items: center; gap: 4px; min-height: 34px; padding: 0 12px; border-radius: 999px; font-size: 13.5px; line-height: 1.3; white-space: nowrap; }
.ea .ea-map a { border: 1px solid #b9dcb2; background: var(--ea-soft); color: var(--ea-ink); font-weight: bold; text-decoration: none; }
.ea .ea-map a:hover { border-color: var(--ea-acc); }
.ea .ea-map a small { font-size: 11.5px; font-weight: normal; color: var(--ea-acc2); }
.ea .ea-map a.is-zero { border-color: var(--ea-line); background: #fff; color: #8a97a1; }
.ea .ea-map span.is-off { border: 1px dashed #d5dde2; color: #a3afb8; }
.ea .ea-toggle { margin: 14px 0 8px; text-align: right; }
.ea .ea-toggle .ea-btn { min-height: 38px; font-size: 13.5px; }
.ea .ea-pref { margin: 0 0 8px; border: 1px solid var(--ea-line); border-radius: 14px; background: #fff; }
.ea .ea-pref > summary { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 12px; padding: 12px 44px 12px 16px; position: relative; cursor: pointer; list-style: none; }
.ea .ea-pref > summary::-webkit-details-marker { display: none; }
.ea .ea-pref > summary::after { content: ""; position: absolute; right: 18px; top: 50%; width: 9px; height: 9px; margin-top: -7px; border-right: 2px solid var(--ea-acc); border-bottom: 2px solid var(--ea-acc); transform: rotate(45deg); }
.ea .ea-pref[open] > summary::after { margin-top: -2px; transform: rotate(-135deg); }
.ea .ea-pref[open] > summary { border-bottom: 1px solid var(--ea-line); }
.ea .ea-pref__n { font-size: 16.5px; font-weight: bold; }
.ea .ea-pref__c { font-size: 13px; color: var(--ea-sub); }
.ea .ea-pref__c b { font-size: 15px; color: var(--ea-acc2); }
.ea .ea-pref__o { padding: 1px 10px; border-radius: 999px; background: #e3f2df; font-size: 12px; font-weight: bold; color: var(--ea-acc2); }
.ea .ea-pref__in { padding: 14px 16px 16px; }
.ea .ea-cities { display: flex; flex-wrap: wrap; gap: 6px; }
.ea .ea-cities > li.ea-cities__w { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: 6px 10px; align-items: start; width: 100%; padding: 8px 10px; border-radius: 12px; background: var(--ea-gray); box-sizing: border-box; }
.ea .ea-cities__wn { padding: 6px 0 0; font-size: 13.5px; font-weight: bold; white-space: nowrap; }
.ea .ea-cities__w ul { display: flex; flex-wrap: wrap; gap: 6px; }
.ea .ea-c { display: inline-flex; align-items: center; min-height: 34px; padding: 0 12px; border: 1px solid var(--ea-line); border-radius: 10px; background: #fff;
	color: var(--ea-ink); font-size: 13.5px; line-height: 1.3; text-decoration: none; white-space: nowrap; }
.ea a.ea-c:hover { border-color: var(--ea-acc); color: var(--ea-acc2); }
.ea .ea-c.is-off { border-style: dashed; background: transparent; color: #a3afb8; }
.ea .ea-c.is-hit { border: 2px solid var(--ea-acc); padding: 0 11px; background: var(--ea-soft); font-weight: bold; }
.ea .ea-pref__links { display: grid; gap: 6px; margin: 14px 0 0; padding: 12px 0 0; border-top: 1px solid var(--ea-line); font-size: 13.5px; }
.ea .ea-pref__links > a { font-weight: bold; }
.ea .ea-pref__ih { font-size: 12.5px; font-weight: bold; color: var(--ea-sub); }
.ea .ea-pref__items { display: flex; flex-wrap: wrap; gap: 4px 14px; }
.ea .ea-pref__items a { font-size: 13px; }

/* ---- 施工事例（.ss-card を流用）・口コミ ---- */
.ea .ss { font-size: 14px; }
.ea .ss .ss-grid { margin: 0; }
.ea .ea-rvs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); grid-template-rows: auto auto 1fr auto; gap: 0 12px; }
.ea .ea-rv { display: grid; grid-template-rows: subgrid; grid-row: span 4; row-gap: 6px; padding: 14px 16px; border: 1px solid var(--ea-line); border-radius: 14px; background: #fff; }
.ea .ea-rv__t:empty { display: block; min-height: 0; }
.ea .ea-rv__hd { display: flex; justify-content: space-between; align-items: center; font-size: 12px; color: var(--ea-sub); }
.ea .ea-rv__st { color: #d5dbe0; font-size: 15px; letter-spacing: 1px; }
.ea .ea-rv__st i { font-style: normal; color: #f5a623; }
.ea .ea-rv__t { font-size: 14.5px; font-weight: bold; line-height: 1.5; }
.ea .ea-rv__b { font-size: 13px; line-height: 1.8; color: #34424d; }
.ea .ea-rv__f { display: grid; gap: 2px; font-size: 12px; color: var(--ea-sub); }
.ea .ea-rv__f a { font-weight: bold; }

/* ---- 依頼前の確認・FAQ・見積り ---- */
.ea .ea-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-auto-rows: auto; gap: 12px; }
.ea .ea-cards li { display: grid; grid-template-rows: subgrid; grid-row: span 3; row-gap: 6px; padding: 14px 16px; border: 1px solid var(--ea-line); border-radius: 14px; background: #fff; }
.ea .ea-cards li .ea-cards__h { display: flex; align-items: center; gap: 10px; }
.ea .ea-cards li p { font-size: 13.5px; line-height: 1.8; color: #34424d; }
.ea .ea-cards li .ea-cards__h { font-size: 15px; font-weight: bold; line-height: 1.5; color: var(--ea-ink); }
.ea .ea-cards__a a { font-weight: bold; }
.ea .ea-faq details { margin: 0 0 8px; border: 1px solid var(--ea-line); border-radius: 12px; background: #fff; }
.ea .ea-faq summary { position: relative; padding: 12px 44px 12px 46px; font-weight: bold; line-height: 1.6; cursor: pointer; list-style: none; }
.ea .ea-faq summary::-webkit-details-marker { display: none; }
.ea .ea-faq summary::before { content: "Q" !important; position: absolute; left: 14px; top: 11px; width: 24px; height: 24px; border-radius: 50%; background: var(--ea-acc); color: #fff; font-size: 13px; line-height: 24px; text-align: center; }
.ea .ea-faq summary::after { content: ""; position: absolute; right: 18px; top: 50%; width: 8px; height: 8px; margin-top: -6px; border-right: 2px solid var(--ea-acc); border-bottom: 2px solid var(--ea-acc); transform: rotate(45deg); }
.ea .ea-faq details[open] summary::after { margin-top: -1px; transform: rotate(-135deg); }
.ea .ea-faq details p { padding: 0 16px 14px 46px; font-size: 13.5px; line-height: 1.85; color: #34424d; }
.ea .ea-cta { padding: 20px; border: 2px solid var(--ea-acc); border-radius: 18px; background: #fff; }
.ea .ea-cta h2.ea-h2 { padding: 0 !important; background: none !important; text-align: center !important; }
.ea .ea-cta .ea-lead { text-align: center; }
.ea .ea-cta__b { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; max-width: 640px; margin: 0 auto; }

/* ---- 県別・商材別ページ（keneria.php / keneria_item.php） 2026-10-15 ---- */
.ea .ea-chips { display: flex; flex-wrap: wrap; gap: 6px; }
.ea .ea-chips a { display: inline-flex; align-items: center; min-height: 36px; padding: 0 14px; border: 1px solid var(--ea-line); border-radius: 10px; background: #fff;
	color: var(--ea-ink); font-size: 13.5px; line-height: 1.3; text-decoration: none; white-space: nowrap; }
.ea .ea-chips a:hover { border-color: var(--ea-acc); color: var(--ea-acc2); }
.ea .ea-box { padding: 14px 16px; border: 1px solid var(--ea-line); border-radius: 14px; background: #fff; }
.ea .ea-box + .ea-box { margin-top: 10px; }
.ea .ea-c__p { margin-left: 4px; padding: 0 5px; border-radius: 4px; background: #e5f0fb; font-size: 10.5px; font-style: normal; font-weight: bold; color: #1a5ea8; }
.ea .ea-tgrp__h { display: flex; flex-wrap: wrap; align-items: center; gap: 4px 10px; margin: 0 0 10px; font-size: 13px; color: var(--ea-sub); }
.ea .ea-it.is-off { color: #9aa6af; background: var(--ea-gray); border-style: dashed; }
.ea .ea-it.is-off img { opacity: .45; }
.ea .ea-items--s { grid-template-columns: repeat(6, minmax(0, 1fr)); }
.ea .ea-find--s { grid-template-columns: minmax(0, 1fr) auto; margin: 14px 0 0; }
.ea .ea-hero .ea-find--s { margin: 16px 0 0; }
.ea .ea-st { display: grid; grid-template-columns: 72px minmax(0, 1fr); gap: 14px; align-items: center; padding: 14px 16px; border: 1px solid var(--ea-line); border-radius: 14px; background: #fff; }
.ea .ea-st p { margin: 0 0 4px; font-size: 13.5px; line-height: 1.75; }
.ea .ea-st .ea-st__h { font-size: 16px; font-weight: bold; }
.ea .ea-st__h b { color: var(--ea-acc2); }
.ea .ea-st__b { color: #34424d; }
.ea .ea-st__a { display: flex; flex-wrap: wrap; gap: 8px; margin: 12px 0 0; }
.ea .ea-st__a svg { color: currentColor; }
.ea .ea-stf { display: grid; grid-template-columns: repeat(6, minmax(0, 1fr)); grid-auto-rows: auto; gap: 10px; }
.ea .ea-stf li { display: grid; grid-template-rows: subgrid; grid-row: span 4; justify-items: center; row-gap: 6px; padding: 8px 8px 10px; border: 1px solid var(--ea-line); border-radius: 12px; background: #fff; text-align: center; line-height: 1.35; }
.ea .ea-stf img { display: block; width: 100%; height: auto !important; aspect-ratio: 120 / 138; object-fit: cover; border-radius: 8px; background: var(--ea-gray); }
.ea .ea-stf b { font-size: 15px; }
.ea .ea-stf__g { display: block; }
.ea .ea-stf__gi { display: inline-block; padding: 1px 8px; border: 1px solid #cfd8de; border-radius: 999px; background: #fff; font-size: 11px; line-height: 1.6; color: #44525d; white-space: nowrap; }
.ea .ea-stf__t { align-self: end; width: 100%; padding: 3px 0; border-radius: 6px; background: #e5f0fb; font-size: 12px; font-weight: bold; color: #1a5ea8; }
.ea .ea-stf__t.is-own { background: #e3f2df; color: var(--ea-acc2); }
.ea .ea-msg__who .ea-stf__t { width: auto; padding: 1px 8px; font-size: 11.5px; }
.ea .ea-msg__h { margin: 22px 0 10px; font-size: 15px; font-weight: bold; }
.ea .ea-msg { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.ea .ea-msg__c { display: grid; grid-template-rows: auto 1fr; gap: 10px; padding: 14px; border: 1px solid var(--ea-line); border-radius: 14px; background: #fff; }
.ea .ea-msg__who { display: flex; align-items: center; gap: 10px; margin: 0; }
.ea .ea-msg__who img, .ea .ea-msg__ic { flex-shrink: 0; width: 52px; height: 52px; border-radius: 50%; object-fit: cover; background: var(--ea-gray); }
.ea .ea-msg__ic { display: inline-flex; align-items: center; justify-content: center; background: #e3f2df; color: var(--ea-acc); }
.ea .ea-msg__who span { display: grid; justify-items: start; gap: 2px; line-height: 1.4; }
.ea .ea-msg__who b { font-size: 15px; }
.ea .ea-msg__who i { font-style: normal; }
.ea .ea-msg__b { position: relative; margin: 0; padding: 12px 14px; border-radius: 12px; background: var(--ea-soft); font-size: 13.5px; line-height: 1.85; color: #34424d; }
.ea .ea-msg__b::before { content: ""; position: absolute; top: -7px; left: 20px; border: 7px solid transparent; border-top: 0; border-bottom-color: var(--ea-soft); }
.ea .ea-rel { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.ea .ea-rel a { display: flex; align-items: center; min-height: 46px; padding: 6px 14px; border: 1px solid var(--ea-line); border-radius: 12px; background: #fff; color: var(--ea-ink); font-size: 13.5px; font-weight: bold; text-decoration: none; }
.ea .ea-rel a:hover { border-color: var(--ea-acc); }
.ea .ea-rel__h { margin: 16px 0 8px; font-size: 14px; font-weight: bold; }

/* ---- スマホ（@media はCSSの最後） ---- */
@media screen and (max-width: 767px) {
	.ea { font-size: 14px; }
	.ea [id] { scroll-margin-top: 76px; }
	.ea h2.ea-h2 { font-size: 17px !important; padding: 10px 12px !important; }
	.ea .ea-hero { padding: 16px 14px 14px; border-radius: 14px; }
	.ea h2.ea-hero__h { font-size: 19px !important; }
	.ea .ea-find { grid-template-columns: minmax(0, 1fr); }
	.ea .ea-find .ea-btn { width: 100%; }
	.ea .ea-kpi b { font-size: 21px; }
	.ea .ea-jump { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.ea .ea-tbl li { grid-template-columns: minmax(0, 1fr) auto; gap: 6px 10px; padding: 10px 12px; }
	.ea .ea-tbl__a { grid-column: 1 / -1; }
	.ea .ea-tbl__a:empty { display: none; }
	.ea .ea-legend { grid-template-columns: minmax(0, 1fr); }
	.ea .ea-items { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 6px; }
	.ea .ea-it { padding: 8px 2px 6px; }
	.ea .ea-it.is-sel { padding: 7px 1px 5px; }
	.ea .ea-it img, .ea .ea-it__all { width: 44px; height: 44px; }
	.ea .ea-it b { font-size: 11.5px; }
	.ea .ea-map__r { grid-template-columns: minmax(0, 1fr); gap: 6px; padding: 10px 12px; }
	.ea .ea-map a, .ea .ea-map span.is-off { min-height: 36px; padding: 0 10px; font-size: 13px; }
	.ea .ea-pref > summary { padding: 12px 40px 12px 12px; }
	.ea .ea-pref__in { padding: 12px; }
	.ea .ea-cities > li.ea-cities__w { grid-template-columns: minmax(0, 1fr); }
	.ea .ea-cities__wn { padding: 0; }
	.ea .ea-c { min-height: 38px; padding: 0 10px; font-size: 13px; }
	.ea .ss .ss-grid { grid-template-columns: minmax(0, 1fr); gap: 10px; }	/* 施工事例もお客様の声と同じく1列（2列だと3件で隙間が空く） */
	.ea .ea-rvs { grid-template-columns: minmax(0, 1fr); grid-template-rows: none; gap: 10px; }
	.ea .ea-rv { grid-template-rows: none; grid-row: auto; }
	.ea .ea-rv__t:empty { display: none; }
	.ea .ea-cards { grid-template-columns: minmax(0, 1fr); gap: 10px; }
	.ea .ea-cards li { grid-template-rows: none; grid-row: auto; }
	.ea .ea-cards__a:empty { display: none; }
	.ea .ea-cta { padding: 16px 12px; }
	.ea .ea-cta__b { grid-template-columns: minmax(0, 1fr); }
	.ea .ea-btn--big { min-height: 54px; font-size: 16px; }
	.ea .ea-items--s { grid-template-columns: repeat(3, minmax(0, 1fr)); }
	.ea .ea-find--s { grid-template-columns: minmax(0, 1fr); }
	.ea .ea-st { grid-template-columns: 52px minmax(0, 1fr); gap: 10px; padding: 12px; }
	.ea .ea-st img { width: 52px; height: 52px; }
	.ea .ea-st__a .ea-btn { width: 100%; }
	.ea .ea-stf { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
	.ea .ea-stf b { font-size: 14px; }
	.ea .ea-box { padding: 12px; }
	.ea .ea-msg { grid-template-columns: minmax(0, 1fr); gap: 10px; }
	.ea .ea-rel { grid-template-columns: minmax(0, 1fr); }
}
