/* 橿原住宅 分譲ページ準拠／HPB20軽量編集版 */
* { box-sizing: border-box; }
html, body {
  margin: 0;
  padding: 0;
  background: #ffffff;
  color: #2f3c4d;
  font-family: "Yu Gothic", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
  font-size: 14px;
  line-height: 1.75;
}
body { text-align: left; }
a { color: #2c76c0; text-decoration: none; }
a:hover { text-decoration: underline; }
img { max-width: 100%; height: auto; border: 0; }

.chrome-shell {
  width: 760px;
  margin: 0 auto;
  background: #ffffff;
}
.site-brandbar {
  position: relative;
  height: 50px;
  padding: 0 14px;
  background: #ffffff;
  border-bottom: 1px solid #e1e5ea;
}
.site-brand {
  position: absolute;
  top: 15px;
  left: 14px;
  height: 20px;
  white-space: nowrap;
}
.site-brand img { display: block; width: 132px; height: auto; }
.site-brandbar p {
  margin: 0;
  padding-top: 15px;
  color: #6b7280;
  font-size: 11px;
  line-height: 20px;
  text-align: right;
  letter-spacing: 0;
}
.chrome-fixed {
  width: 760px;
  background: #ffffff;
  border-bottom: 1px solid #e4e8ee;
}
.chrome-inner {
  padding: 10px 0 14px;
  background: #ffffff;
}
.chrome-pad { padding: 0 14px; }
.breadcrumb {
  margin: 0 0 12px;
  padding: 0;
  color: #6b7280;
  font-size: 11px;
  line-height: 1.45;
}
.breadcrumb a { color: #2c76c0; font-weight: bold; }
.breadcrumb .sep { display: inline-block; margin: 0 5px; color: #9aa8b8; }
.breadcrumb .current { color: #344255; font-weight: bold; }

.topnav { width: 100%; border-collapse: separate; border-spacing: 6px 0; table-layout: fixed; }
.topnav td { width: 16.6667%; padding: 0; vertical-align: top; }
.topnav a {
  display: block;
  width: 100%;
  height: 40px;
  padding: 0;
  color: #334155;
  background: #f3f6f9;
  border: 1px solid #d8e0e8;
  text-align: center;
  font-size: 12px;
  line-height: 38px;
  font-family: Meiryo, "メイリオ", sans-serif;
  font-weight: bold;
  text-decoration: none;
}
.topnav a span { display: block; }
.topnav td:first-child a {
  padding-top: 5px;
  line-height: 14px;
}
.topnav a:hover {
  color: #243b56;
  background: #e4ebf3;
  border-color: #9db1c6;
}
.topnav a.active {
  color: #ffffff;
  background: #315f8b;
  border-color: #274f78;
}

.page-body { width: 760px; margin: 0 auto; padding: 24px 0 46px; background: #ffffff; }
.content-card {
  margin: 0 20px;
  padding: 28px;
  background: #ffffff;
  border: 1px solid #e7ebf0;
}
.section-head {
  margin: 0 0 20px;
  padding: 10px 14px;
  color: #324255;
  background: #e8eef4;
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 1px;
}
.subhead { margin-top: 30px; }

.hero-title-row { width: 100%; margin-bottom: 18px; border-collapse: collapse; }
.hero-title-row td { vertical-align: top; }
.hero-title-cell { width: 70%; vertical-align: middle; }
.project-logo { width: auto; border-collapse: collapse; }
.project-logo td { padding: 0; vertical-align: middle; }
.project-logo .project-name-image { width: 127px; }
.project-logo .project-logo-gap { width: 8px; }
.project-logo .logo-small {
  display: block;
  font-size: 13px;
  line-height: 1.1;
  letter-spacing: 1px;
}
.project-logo strong {
  display: block;
  margin-top: 2px;
  font-size: 24px;
  line-height: 1.1;
  letter-spacing: 3px;
}
.project-logo .stage-number {
  width: 35px;
  padding-left: 0;
}
.with-court { margin: 0 0 2px; color: #7f8fa0; font-family: Georgia, serif; font-size: 10px; letter-spacing: 3px; }
h1 { margin: 0; color: #365f89; font-size: 17px; line-height: 1.1; font-weight: normal; letter-spacing: 1px; }
h1 strong { display: inline-block; margin-top: 5px; font-size: 34px; letter-spacing: 4px; }
h1 b { display: inline-block; margin-left: 8px; color: #ef7d35; font-family: Georgia, serif; font-size: 34px; font-weight: normal; }
.stage { margin: 4px 0 0; color: #8492a0; font-family: Georgia, serif; font-size: 11px; letter-spacing: 2px; }
.hero-note { display: inline-block; margin-top: 9px; padding: 5px 12px; color: #5f4c2e; background: #f6f1e7; border: 1px solid #e7dcc8; font-weight: bold; }
.hero-status { width: 30%; padding-top: 8px; text-align: right; }
.hero-status strong { display: block; color: #4b5a6b; font-size: 15px; }
.hero-status span { display: inline-block; margin-top: 8px; padding: 4px 9px; color: #a55d17; background: #fff4e8; border: 1px solid #f1d4b7; font-size: 11px; font-weight: bold; }

.main-visual { padding-top: 6px; text-align: center; }
.main-visual img { display: block; width: 100%; height: auto; background: #ffffff; border: 1px solid #eceff3; }
.project-lead { margin-top: 18px; padding: 14px 18px; color: #46576a; background: #fafbfd; border-left: 4px solid #365f89; }
.project-lead strong { color: #2f4f70; }
.project-lead p { margin: 3px 0 0; font-size: 12px; }

.intro-box { margin: 0 0 20px; padding: 18px 20px; color: #4d4030; background: #faf8f2; border: 1px solid #ece3d5; }
.intro-box p { margin: 0 0 4px; line-height: 1.25; }
.intro-box p span { color: #ef7d35; font-size: 16px; }
.intro-box p strong { color: #ef7d35; font-size: 34px; font-weight: normal; }
.intro-box > b, .intro-box > small { display: block; }
.intro-box > small { margin-top: 8px; color: #6c6254; }

.plan-panel { display: block; width: 100%; padding: 14px; background: #ffffff; border: 1px solid #e8ecf1; text-align: center; }
.plan-panel img { display: block; width: 100%; height: auto; margin: 0 auto; }
.plan-panel span { display: block; margin-top: 5px; color: #315f90; font-size: 10px; }
.caption { margin: 8px 0 0; color: #7b8794; font-size: 11px; }

.outline-wrap { width: 100%; }
.outline-table { width: 100%; border-collapse: collapse; background: #ffffff; }
.outline-table td { padding: 10px; vertical-align: top; border-bottom: 1px solid #eef2f6; font-size: 13px; line-height: 1.5; }
.outline-table .label { width: 28%; color: #4a5a6a; background: #f7f9fc; font-weight: bold; }
.outline-table .value { width: 72%; }
.outline-table .unknown { color: #9a671f; font-weight: bold; }
.lot-note { margin-top: 18px; padding: 15px 17px; color: #4d4030; background: #faf8f2; border: 1px solid #ece3d5; }
.lot-note p { margin: 3px 0 0; font-size: 12px; }

.map-panel { padding: 14px; background: #ffffff; border: 1px solid #e8ecf1; text-align: center; }
.map-panel img { display: block; width: 100%; height: auto; }
.pending-box { padding: 18px 20px; color: #5f594f; background: #faf8f2; border: 1px solid #ece3d5; }
.pending-box p { margin: 4px 0 0; font-size: 12px; }

.footer { padding: 24px 12px 34px; color: #8b94a1; background: #ffffff; font-size: 11px; text-align: center; }

/* 新しいブラウザだけで固定表示。HPB20の編集画面はこの指定を読みません。 */
@supports (position: sticky) {
  .chrome-fixed { position: sticky; top: 0; z-index: 10; }
}

@media screen and (max-width: 780px) {
  .chrome-shell, .chrome-fixed, .page-body { width: 100%; }
  .site-brandbar { padding: 0 12px; }
  .site-brand { left: 12px; }
  .site-brandbar p { display: none; }
  .chrome-pad { padding: 0 12px; }

  .content-card { margin: 0 12px; padding: 18px 14px 20px; }
  h1 strong, h1 b { font-size: 28px; }
}

/* 中三倉堂：全ページ同じ寸法。タイトルとナビを一体固定 */
.chrome-shell,.chrome-fixed,.page-body {width:760px;max-width:100%;}
.chrome-top {position:sticky;top:0;z-index:20;background:white;}
.chrome-top .chrome-fixed {position:static!important;top:auto!important;}
.page-body {padding:24px 0 22px;scroll-margin-top:160px;}
.content-card {margin:0 20px;padding:28px;width:auto;}
.content-card .content-body,.content-card .content-frame {max-width:100%;}
.content-card img {max-width:100%;height:auto;}
.content-card iframe {max-width:100%;}
.content-body table,.content-frame table {max-width:100%;}
.content-frame {overflow-x:auto;}
.content-body td,.content-body th {overflow-wrap:break-word;}
.content-body table[width="640"] {width:100%;max-width:640px;}
.hero-count {text-align:right;font-weight:bold;}
.main-visual img {max-width:100%;height:auto;}
/* 周辺環境の写真：3列で収める */
#around .content-body table {max-width:100%;}
#around .content-body img {max-width:200px;height:auto;}
@media screen and (max-width:780px) {
.chrome-shell,.chrome-fixed,.page-body {width:100%;}
.content-card {margin:0 12px;padding:18px 14px 20px;}
}

/* 中三倉堂：編集画面で物件タイトルが崩れないための簡潔な構造 */
.property-heading {width:100%;min-height:94px;position:relative;padding:6px 155px 14px 0;margin:0 0 12px;border-bottom:1px solid #e8ecf1;}
.property-heading-left {display:block;max-width:100%;}
.property-name {font-size:21px;font-weight:bold;color:#315f8b;line-height:1.5;letter-spacing:1px;}
.property-heading .hero-note {margin-top:10px;}
.property-heading-right {position:absolute;right:0;top:10px;width:145px;text-align:right;font-size:15px;font-weight:bold;color:#4b5a6b;}
#home .main-visual {padding-top:0;}
#home .main-visual img {width:100%;height:auto;display:block;border:1px solid #eceff3;}
@media screen and (max-width:500px) {
 .property-heading {padding-right:105px;}
 .property-name {font-size:17px;}
 .property-heading-right {width:100px;font-size:12px;}
}

/* 選択中の1ボタンだけを青く表示。hoverを選択色と混同しない */
.topnav a:not(.active):hover { background:#e4ebf3; color:#243b56; border-color:#9db1c6; }
.topnav a.active, .topnav a.active:hover { background:#315f8b; color:#ffffff; border-color:#274f78; }

/* 狭い画面は2列表示。HPB編集時は通常のtable表示を維持する */
@media screen and (max-width:560px) {
  .topnav,.topnav tbody,.topnav tr { display:block; width:100%; border-spacing:0; }
  .topnav td { display:inline-block; width:49%; margin-bottom:6px; vertical-align:top; padding:0 3px; }
  .chrome-pad { padding-left:12px; padding-right:12px; }
  .site-brandbar p { display:none; }
}


/* 住宅技術：中三倉堂と同寸法・同構造。色のみグリーン。 */
.topnav td{width:16.666667%;}
.topnav a,.topnav a:link,.topnav a:visited,
.topnav a:hover,.topnav a:focus,.topnav a:active{
 display:flex;align-items:center;justify-content:center;
 height:40px;min-height:40px;max-height:40px;
 padding:0 3px;line-height:1.25;text-align:center;
 background:#e6f2ed;color:#27664d;border:1px solid #b7d7c8;
 border-radius:0;box-shadow:none;transition:none;transform:none;
 font:bold 12px/1.25 Meiryo,"メイリオ",sans-serif;
 text-decoration:none;
}
.topnav td:first-child a{padding:0 3px;line-height:1.25;}
.topnav a span{display:block;line-height:1.25;}
.topnav a.active,.topnav a.active:link,.topnav a.active:visited,
.topnav a.active:hover,.topnav a.active:focus,.topnav a.active:active{
 background:#32785b;color:#fff;border-color:#32785b;
}
/* Original property content card exactly: 760 shell, margin 20, padding 28, border */
.ground-card{background:#fff;border:1px solid #e7ebf0;margin:0 20px;padding:28px;}
.ground-title{margin:0 0 15px;padding:11px 14px;color:#173b63;background:#f3f6f9;border-left:4px solid #2c76c0;font:bold 18px/1.45 Meiryo,"メイリオ",sans-serif;letter-spacing:normal;}
.ground-intro{margin:0 0 17px;color:#56687b;font-size:13px;line-height:1.8;}
.ground-body{font:14px/1.75 Meiryo,"メイリオ",sans-serif;color:#344255;}
.ground-body p{margin:0 0 12px;}
.ground-body h3{margin:23px 0 12px;padding:9px 12px;color:#173b63;background:#f5f9fc;border-left:3px solid #8eacc8;font-size:15px;line-height:1.5;}
.ground-body .section-sub{font-size:13px;color:#56687b;line-height:1.8;margin:0 0 17px;}
.ground-body .lead-box,.ground-body .note-box,.ground-body .pointbox{margin:14px 0;padding:14px 16px;border-left:3px solid #c8a24f;background:#fafcff;}
.ground-body hr{border:0;border-top:1px solid #e5e7eb;margin:30px 0;}
.ground-body .tbl-wrap{margin:14px 0;}
.ground-body .tbl-caption{margin:0 0 8px;font-size:12px;color:#667687;}
.ground-body .tbl{width:100%;table-layout:fixed;border-collapse:collapse;}
.ground-body .tbl th,.ground-body .tbl td{border:1px solid #d6dee8;padding:10px 12px;font-size:12px;line-height:1.8;text-align:left;vertical-align:top;}
.ground-body .tbl th{background:#f8fbfe;}
.ground-body .imgpair{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:8px;}
.ground-body .imgpair td{width:50%;vertical-align:top;padding:0;}
.ground-body .img-card{padding:8px;text-align:center;border:1px solid #dce6ee;background:#fff;}
.ground-body .img-card img{display:block;max-width:100%;margin:0 auto;}
.ground-body .imgcap{margin:7px 0 0;color:#68778a;font-size:12px;}
.ground-body .summary-list{padding:10px 18px;background:#fafcff;}
.ground-body strong.em{color:#2c76c0;}
@media screen and (max-width:780px){.topnav,.topnav tbody,.topnav tr{display:table;width:100%;border-spacing:4px 0;}.topnav td{display:table-cell;width:16.666667%;margin:0;padding:0;}.topnav a,.topnav a:link,.topnav a:visited{font-size:10px;}.ground-card{margin:0 12px;padding:18px 14px 20px;}}
/* 中三倉堂と同じ操作：非選択ボタンはマウス時のみ少し濃いグリーン */
.topnav a:not(.active):hover,
.topnav a:not(.active):focus,
.topnav a:not(.active):active{
 background:#cde5d9;color:#27664d;border-color:#92c5ab;
}

/* 地震対策ページ固有の表・図解。共通ナビと本文枠は地盤改良と同一。 */
.ground-body .tbl .center{text-align:center}
.ground-body .tbl .nowrap{white-space:nowrap}
.ground-body .tbl .em{color:#2c76c0;font-weight:bold}
.ground-body .compare-grid{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:8px 0;margin:16px 0}
.ground-body .compare-grid td{width:33.3333%;padding:0 3px;vertical-align:top}
.ground-body .compare-card{border:1px solid #dce6ee;padding:10px 8px;background:#fff;height:100%;}
.ground-body .compare-title{font-size:14px;font-weight:bold;text-align:center;border-bottom:1px solid #e9eff5;padding-bottom:6px;margin:0 0 8px}
.ground-body .compare-img{display:block;width:100%;max-width:197px;height:auto;margin:0 auto}
.ground-body .compare-text{font-size:12px;line-height:1.7;margin:8px 0 0}
.ground-body .feature-table{width:100%;table-layout:fixed;border-collapse:collapse}
.ground-body .feature-table td{vertical-align:top}
.ground-body .feature-text{padding-right:12px}
.ground-body .feature-side{width:190px;text-align:center}
.ground-body .side-card{padding:8px;border:1px solid #dce6ee;background:#fff}
.ground-body .side-card img{display:block;width:auto;max-width:100%;height:auto;margin:auto}
.ground-body .side-caption{margin:8px 0 0;text-align:center;font-size:12px;line-height:1.6}
.ground-body .diagram{text-align:center;margin:16px 0}
.ground-body .diagram img{display:block;max-width:100%;height:auto;margin:12px auto}
.ground-body .summary-list ul{margin:8px 0 8px 18px;padding:0}
.ground-body .summary-list li{margin:5px 0}
@media screen and (max-width:560px){
 .ground-body .tbl th,.ground-body .tbl td{padding:6px;font-size:11px;overflow-wrap:anywhere}
 .ground-body .compare-grid{border-spacing:3px 0}
 .ground-body .compare-grid td{padding:0 1px}
 .ground-body .compare-card{padding:5px 3px}
 .ground-body .compare-text{font-size:10px}
 .ground-body .feature-side{width:120px}
}

/* 高断熱・ZEHの元ページにある表・写真・比較カード */
.ground-body .twocol,.ground-body .case-grid,.ground-body .media2{
  width:100%;table-layout:fixed;border-collapse:separate;border-spacing:8px 0;margin:14px 0;
}
.ground-body .twocol td,.ground-body .media2 td{width:50%;vertical-align:top;padding:0 3px;}
.ground-body .case-grid td{width:33.3333%;vertical-align:top;padding:0 3px;}
.ground-body .card,.ground-body .case-card,.ground-body .media-card{
  border:1px solid #dce6ee;background:#fff;padding:9px;height:100%;
}
.ground-body .card img,.ground-body .case-card img,.ground-body .media-card img{
  display:block;max-width:100%;height:auto;margin:0 auto;
}
.ground-body .caption,.ground-body .case-text,.ground-body .media-caption{
  color:#56687b;font-size:12px;line-height:1.7;margin:7px 0 0;
}
.ground-body .case-title{font-size:13px;font-weight:bold;margin:0 0 8px;color:#173b63;}
.ground-body .kakomi{margin:12px 0;padding:12px 14px;border-left:3px solid #c8a24f;background:#fafcff;}
.ground-body .figure-wrap,.ground-body .diagram{text-align:center;margin:16px 0;}
.ground-body .figure{display:inline-block;max-width:100%;padding:9px;border:1px solid #dce6ee;}
.ground-body .figure img{max-width:100%;height:auto;}
.ground-body h4{margin:22px 0 8px;color:#173b63;font-size:14px;}
.ground-body ol,.ground-body ul{margin:10px 0 12px 20px;padding:0;}
.ground-body .em{color:#2c76c0;font-weight:bold;}
.ground-body table{max-width:100%;}
.ground-body .tbl{table-layout:auto;}
.ground-body .tbl th,.ground-body .tbl td{overflow-wrap:break-word;}
.ground-body .section-title{margin-top:26px;}
.ground-body .section-title h2{margin:0;}
.ground-body .section-divider{border-top:1px solid #e5e7eb;margin:32px 0 25px;}
@media(max-width:560px){
  .ground-body .twocol td,.ground-body .case-grid td,.ground-body .media2 td{padding:0 2px;}
  .ground-body .card,.ground-body .case-card,.ground-body .media-card{padding:5px;}
}

/* 高気密住宅・計画換気 ページ固有の内容。共通ヘッダー・6ボタンは上記と同一 */
.ground-body .tech-section-head{margin:8px 0 12px;padding:10px 12px;background:#f3f6f9;border-left:4px solid #2c76c0;font:bold 18px/1.45 Meiryo,"メイリオ",sans-serif;color:#173b63}
.ground-body .tech-section-intro{font-size:13px;color:#56687b;line-height:1.8;margin:0 0 16px}
.ground-body .tech-division{margin:38px 0 27px}
.ground-body .intro-panel{border:1px solid #dce6ee;padding:14px 16px;margin:0 0 18px;background:#fafcff}
.ground-body .intro-panel p:last-child{margin-bottom:0}
.ground-body h3.sub{margin:23px 0 12px;padding:9px 12px;color:#173b63;background:#f5f9fc;border-left:3px solid #8eacc8;font-size:15px;line-height:1.5}
.ground-body hr.sep{border:0;border-top:1px solid #e5e7eb;margin:30px 0}
.ground-body .twocol,.ground-body .photos,.ground-body .fullimg,.ground-body .photo-grid{width:100%;margin:12px 0;border-collapse:separate;table-layout:fixed;border-spacing:8px 0}
.ground-body .twocol td{vertical-align:top;padding:0 3px}
.ground-body .photos td{width:25%;vertical-align:top;padding:0 3px}
.ground-body .photo-grid td{width:33.3333%;vertical-align:top;padding:0 3px}
.ground-body .fullimg{border-collapse:collapse}
.ground-body .fullimg td{padding:0}
.ground-body .card,.ground-body .pcard,.ground-body .photo-card{border:1px solid #dce6ee;background:#fff;padding:8px;text-align:center}
.ground-body .card img,.ground-body .pcard img,.ground-body .photo-card img,.ground-body .fullimg img{max-width:100%;height:auto;display:block;margin:0 auto}
.ground-body .caption,.ground-body .pcap,.ground-body .photo-label{font-size:12px;line-height:1.6;margin:7px 0 0;color:#56687b}
.ground-body .caption{text-align:right}
.ground-body .pcap,.ground-body .photo-label{text-align:left}
.ground-body .photo-label{padding:8px;background:#fafcff;border-left:3px solid #c8a24f}
.ground-body .compare-grid{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:8px 0;margin:14px 0}
.ground-body .compare-grid td{width:33.3333%;vertical-align:top;padding:0 3px}
.ground-body .compare-card{border:1px solid #dce6ee;padding:10px 8px;background:#fff;height:100%}
.ground-body .compare-title{margin:0 0 9px;font-size:13px;line-height:1.4;font-weight:bold;text-align:center;min-height:38px}
.ground-body .compare-img-wrap{text-align:center;min-height:110px}
.ground-body .compare-img-wrap img{width:100%;max-width:200px;height:auto;margin:auto}
.ground-body .compare-text{font-size:12px;line-height:1.7;margin:8px 0 0}
.ground-body .em{color:#2c76c0;font-weight:bold}
.ground-body .tbl{table-layout:auto}
.ground-body .tbl th,.ground-body .tbl td{overflow-wrap:break-word}
.ground-body ul{margin:10px 0 14px 20px;padding:0}
.ground-body li{margin:5px 0}
@media screen and (max-width:560px){
 .ground-body .twocol td,.ground-body .compare-grid td,.ground-body .photo-grid td,.ground-body .photos td{padding:0 2px}
 .ground-body .compare-card,.ground-body .photo-card,.ground-body .pcard{padding:4px}
 .ground-body .compare-text,.ground-body .photo-label{font-size:10px}
 .ground-body .compare-title{font-size:11px}
}

/* パッシブデザイン専用：画像や3列カードの表示。共通のヘッダーと6ボタンは変更しない。 */
.ground-body .img-center{margin:16px 0;text-align:center}
.ground-body .img-card{display:inline-block;max-width:100%;padding:10px;border:1px solid #dce6ee;background:#fff;text-align:center}
.ground-body .img-card img{display:block;width:auto;max-width:100%;height:auto;margin:0 auto}
.ground-body .icon-grid,.ground-body .note-grid{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:8px 0;margin:15px 0}
.ground-body .icon-grid td{width:33.333%;vertical-align:top;padding:0 3px}
.ground-body .note-grid td{width:50%;vertical-align:top;padding:0 3px}
.ground-body .icon-card{padding:10px;border:1px solid #dce6ee;background:#fff;height:100%;text-align:center}
.ground-body .icon-title{font-weight:bold;margin:0 0 10px;color:#173b63;font-size:13px;min-height:24px}
.ground-body .icon-img-wrap{height:145px;display:flex;align-items:center;justify-content:center}
.ground-body .icon-card img{width:auto;max-width:100%;height:auto;max-height:140px;display:block;margin:0 auto}
.ground-body .icon-text{font-size:12px;line-height:1.75;color:#4b5563;margin:10px 0 0}
.ground-body .note-grid .note-box{height:100%}
.ground-body .tbl{table-layout:fixed}
.ground-body .tbl th,.ground-body .tbl td{overflow-wrap:break-word}

/* リフォーム本文：既存の施工例・2カラムを共通カード内で整列 */
.ground-body .two-col{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:8px 0;margin:12px 0}
.ground-body .two-col td{vertical-align:top;padding:0 3px}
.ground-body .two-col .col-text{width:62%}
.ground-body .two-col .col-img{width:38%}
.ground-body .photo-card{border:1px solid #dce6ee;background:#fff;padding:8px;text-align:center}
.ground-body .photo-card img{max-width:100%;height:auto;margin:0 auto;display:block}
.ground-body .case-grid{width:100%;table-layout:fixed;border-collapse:separate;border-spacing:8px 0;margin:15px 0}
.ground-body .case-grid td{width:33.3333%;padding:0 3px;vertical-align:top}
.ground-body .case-card{border:1px solid #dce6ee;background:#fff;padding:9px;height:100%;text-align:center}
.ground-body .case-title{font-size:13px;font-weight:bold;color:#173b63;margin:0 0 8px;min-height:23px;line-height:1.5}
.ground-body .case-img-wrap{height:130px;display:flex;align-items:center;justify-content:center}
.ground-body .case-img{width:160px;max-width:100%;height:120px;object-fit:cover;display:block;margin:auto}
.ground-body .case-text{font-size:12px;line-height:1.75;color:#56687b;margin:10px 0 0;text-align:center}
.ground-body .quote{margin:12px 0;padding:12px 14px;border-left:3px solid #c8a24f;background:#fafcff}
.ground-body .summary-list{margin:12px 0;padding:12px 16px;background:#fafcff;border:1px solid #e6edf4}
.ground-body .summary-list ul{margin:6px 0 6px 19px}
@media screen and (max-width:560px){
 .ground-body .case-grid td,.ground-body .two-col td{padding:0 2px}
 .ground-body .case-card{padding:5px}
 .ground-body .case-img-wrap{height:auto;min-height:75px}
 .ground-body .case-img{height:auto}
 .ground-body .case-text{font-size:11px}
}


/* ================================================================
  2026-11-12: 技術紹介 共通スマートフォン表示
  PCの760pxレイアウトは変更せず、640px以下のみ最適化。
  HPB23の編集画面では従来の表組みを保持。
================================================================ */
@media screen and (max-width:640px) {
  html,body {width:100%!important; max-width:100%!important; overflow-x:clip; -webkit-text-size-adjust:100%;}
  .chrome-shell,.chrome-top,.chrome-fixed,.page-body,.main-content {width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box!important;}
  .site-brandbar {height:auto!important;min-height:46px!important;padding:9px 12px 8px!important;display:flex!important;align-items:flex-start!important;flex-direction:column!important;gap:5px!important;}
  .site-brand {position:static!important;height:auto!important;white-space:normal!important;}
  .site-brand img {display:block!important;width:108px!important;max-width:108px!important;height:auto!important;}
  .site-brandbar p {display:block!important;padding:0!important;margin:0!important;line-height:1.45!important;font-size:10px!important;text-align:left!important;white-space:normal!important;}
  .chrome-inner {padding:8px 0 12px!important;}
  .chrome-pad {padding:0 12px!important;}
  .breadcrumb {margin:0 0 10px!important;line-height:1.6!important;white-space:normal!important;overflow-wrap:anywhere!important;}
  /* 6ボタン：全技術ページで同じ2列×3段 */
  .topnav,.topnav tbody {display:block!important;width:100%!important;max-width:100%!important;margin:0!important;border:0!important;border-spacing:0!important;}
  .topnav tr {display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important;width:100%!important;margin:0!important;padding:0!important;height:auto!important;}
  .topnav td,.topnav td:first-child,.topnav td:last-child {display:block!important;width:auto!important;min-width:0!important;padding:0!important;margin:0!important;vertical-align:top!important;}
  .topnav a,.topnav a:link,.topnav a:visited,.topnav td:first-child a {display:flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;width:100%!important;height:50px!important;min-height:50px!important;max-height:50px!important;margin:0!important;padding:3px 6px!important;line-height:1.35!important;font-size:12px!important;text-align:center!important;white-space:normal!important;border-radius:0!important;text-decoration:none!important;}
  .topnav a span {display:block!important;padding:0!important;margin:0!important;line-height:1.35!important;}
  .page-body {padding:14px 0 28px!important;}
  .content-card,.ground-card {box-sizing:border-box!important;width:auto!important;max-width:calc(100% - 20px)!important;margin:0 10px!important;padding:16px 12px 22px!important;}
  .ground-body,.ground-card,.content-card {min-width:0!important;overflow-wrap:anywhere!important;}
  .ground-title {font-size:19px!important;line-height:1.45!important;}
  .ground-intro,.tech-section-intro,.section-sub {line-height:1.65!important;}
  .ground-body img,.content-card img {max-width:100%!important;height:auto!important;}
  .ground-body iframe {max-width:100%!important;}
  /* 説明と写真の2列は縦並び、データ表は枠内で横スクロール */
  .ground-body table.twocol,.ground-body .twocol tbody,.ground-body .twocol tr,
  .ground-body table.two-col,.ground-body .two-col tbody,.ground-body .two-col tr,
  .ground-body table.feature-table,.ground-body .feature-table tbody,.ground-body .feature-table tr {
    display:block!important;width:100%!important;max-width:100%!important;table-layout:auto!important;
  }
  .ground-body .twocol td,.ground-body .two-col td,.ground-body .feature-table td,
  .ground-body .twocol .text-col,.ground-body .twocol .visual-col,
  .ground-body .feature-side,.ground-body .feature-text {
    display:block!important;box-sizing:border-box!important;width:100%!important;max-width:100%!important;min-width:0!important;padding:6px 0!important;
  }
  .ground-body .tbl-wrap {width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch!important;}
  .ground-body .tbl {width:100%!important;max-width:none!important;table-layout:auto!important;}
  .ground-body .tbl th,.ground-body .tbl td {font-size:11px!important;line-height:1.55!important;padding:7px 6px!important;overflow-wrap:anywhere!important;word-break:normal!important;}
  .ground-body .compare-grid,.ground-body .compare-grid tbody,.ground-body .compare-grid tr,
  .ground-body .imgpair,.ground-body .imgpair tbody,.ground-body .imgpair tr,
  .ground-body .case-grid,.ground-body .case-grid tbody,.ground-body .case-grid tr {
    display:block!important;width:100%!important;max-width:100%!important;border-spacing:0!important;
  }
  .ground-body .compare-grid td,.ground-body .imgpair td,.ground-body .case-grid td {
    display:block!important;width:100%!important;max-width:100%!important;padding:0!important;margin:0 0 12px!important;
  }
  .ground-body .compare-img,.ground-body .case-img {width:auto!important;max-width:100%!important;height:auto!important;}
  .ground-body .case-img-wrap {height:auto!important;}
}

/* 2026-11-12 JST: mobile 3 x 2 technical navigation only. PC unchanged. */
@media screen and (max-width:640px){
 html body .chrome-top .topnav tr,html body .topnav-wrap .topnav tr {
  display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:6px!important;height:auto!important;width:100%!important;
 }
 html body .chrome-top .topnav td,html body .topnav-wrap .topnav td {
  display:block!important;width:100%!important;min-width:0!important;
  height:auto!important;padding:0!important;margin:0!important;
 }
 html body .chrome-top .topnav td a,html body .topnav-wrap .topnav td a,
 html body .chrome-top .topnav td a:link,html body .topnav-wrap .topnav td a:link,
 html body .chrome-top .topnav td a:visited,html body .topnav-wrap .topnav td a:visited {
  box-sizing:border-box!important;display:flex!important;align-items:center!important;justify-content:center!important;
  width:100%!important;min-width:0!important;height:54px!important;min-height:54px!important;max-height:54px!important;
  padding:2px 3px!important;font:bold 10px/1.25 Meiryo,'メイリオ',sans-serif!important;
  white-space:normal!important;word-break:normal!important;overflow-wrap:anywhere!important;text-align:center!important;
 }
 html body .chrome-top .topnav td a span,html body .topnav-wrap .topnav td a span{
   display:block!important;padding:0!important;line-height:1.25!important;
 }
}


/* 2026-11-12 MOBILE NAV FINAL: 3 columns x 2 rows; embedded in each HTML to avoid stale CSS cache. */
@media screen and (max-width:640px) {
  html body .chrome-shell,html body .chrome-top,html body .chrome-fixed,html body .page-body{width:100%!important;max-width:100%!important;min-width:0!important;}
  html body .topnav-wrap{width:100%!important;max-width:100%!important;}
  html body .topnav-wrap table.topnav,html body .topnav-wrap table.topnav>tbody{
    display:block!important;width:100%!important;max-width:100%!important;margin:0!important;padding:0!important;border-collapse:separate!important;border-spacing:0!important;
  }
  html body .topnav-wrap table.topnav>tbody>tr{
    display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:6px!important;width:100%!important;height:auto!important;max-width:100%!important;margin:0!important;padding:0!important;
  }
  html body .topnav-wrap table.topnav>tbody>tr>td,
  html body .topnav-wrap table.topnav>tbody>tr>td:first-child,
  html body .topnav-wrap table.topnav>tbody>tr>td:last-child{
    display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;
    height:auto!important;padding:0!important;margin:0!important;border:0!important;
  }
  html body .topnav-wrap table.topnav>tbody>tr>td>a,
  html body .topnav-wrap table.topnav>tbody>tr>td>a:link,
  html body .topnav-wrap table.topnav>tbody>tr>td>a:visited{
    display:flex!important;align-items:center!important;justify-content:center!important;
    box-sizing:border-box!important;width:100%!important;min-width:0!important;height:54px!important;
    min-height:54px!important;max-height:54px!important;padding:3px!important;margin:0!important;
    text-align:center!important;white-space:normal!important;word-break:normal!important;overflow-wrap:anywhere!important;
    font:bold 10px/1.3 Meiryo,'メイリオ',sans-serif!important;border-radius:0!important;
  }
  html body .topnav-wrap table.topnav>tbody>tr>td>a span{
    display:block!important;width:100%!important;padding:0!important;margin:0!important;
    line-height:1.3!important;text-align:center!important;
  }
  html body .site-brandbar{width:100%!important;max-width:100%!important;}
  html body .site-brandbar p{white-space:normal!important;}
}


/* 2026-11-13 スマホ技術メニュー：6列×1段。PCの設定は維持 */
@media screen and (max-width:640px){
 html body .chrome-shell .topnav-wrap table.topnav{display:table!important;width:100%!important;max-width:100%!important;border-collapse:collapse!important;border-spacing:0!important;table-layout:fixed!important;}
 html body .chrome-shell .topnav-wrap table.topnav tbody{display:table-row-group!important;width:auto!important;}
 html body .chrome-shell .topnav-wrap table.topnav tr{display:table-row!important;height:56px!important;grid-template-columns:none!important;}
 html body .chrome-shell .topnav-wrap table.topnav td,
 html body .chrome-shell .topnav-wrap table.topnav td:first-child,
 html body .chrome-shell .topnav-wrap table.topnav td:last-child{display:table-cell!important;width:16.666667%!important;min-width:0!important;height:56px!important;padding:0 2px!important;margin:0!important;vertical-align:top!important;}
 html body .chrome-shell .topnav-wrap table.topnav td a,
 html body .chrome-shell .topnav-wrap table.topnav td a:link,
 html body .chrome-shell .topnav-wrap table.topnav td a:visited{display:flex!important;align-items:center!important;justify-content:center!important;box-sizing:border-box!important;width:100%!important;height:54px!important;min-height:54px!important;max-height:54px!important;padding:1px 1px!important;font:bold 9px/1.2 Meiryo,'メイリオ',sans-serif!important;white-space:normal!important;overflow-wrap:anywhere!important;text-align:center!important;}
 html body .chrome-shell .topnav-wrap table.topnav td a span{display:block!important;width:100%!important;padding:0!important;font:inherit!important;line-height:1.2!important;}
}
