/*
Theme Name: Erdos (Twenty Twenty-Five Child)
Theme URI: https://erdos-the-book.com/
Description: Erdos Inc. minimal brand site theme. Theme styles and assets, no extra plugins.
Author: Erdos Inc.
Version: 0.1.0
Requires at least: 6.7
Requires PHP: 8.0
Template: twentytwentyfive
Text Domain: erdos-tt5
License: GPL-2.0-or-later
*/

/* Erdos design system - WordPress TT5 child. No JS, no remote dependencies. */
/* Erdős homepage visual prototype. No JavaScript or external dependencies. */
:root{--erdos-brown:#3B1F0B;--erdos-brown-2:#4A2E19;--erdos-gray:#746F69;--erdos-muted:#8F877F;--erdos-ink:#302821;--erdos-paper:#f5f1e9;--erdos-edge:#e2dad1;--erdos-white:#fff;--erdos-max:1110px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--erdos-white);color:var(--erdos-ink);font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;line-height:1.75;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid #158896;outline-offset:4px}
.site-shell{width:min(calc(100% - 72px),var(--erdos-max));margin-inline:auto}
.skip-link{position:absolute;left:12px;top:-100px;background:white;padding:8px;z-index:20}.skip-link:focus{top:8px}
.site-header{background:#fff;border-bottom:1px solid var(--erdos-edge);position:relative;z-index:5}
.header-inner{min-height:101px;display:flex;justify-content:space-between;align-items:center;gap:35px}
.brand{display:inline-flex;align-items:center;flex:none}.brand img{display:block;width:173px;height:auto;object-fit:contain}
.desktop-nav{display:flex;align-items:center;gap:27px;font-size:13px;letter-spacing:.03em;color:#51483f;font-weight:600;white-space:nowrap}
.desktop-nav a{color:#51483f;font-weight:600}.desktop-nav a:hover{color:var(--erdos-brown)}.mobile-navigation{display:none}
.hero{height:clamp(335px,31vw,448px);position:relative;isolation:isolate;overflow:hidden;background:#d9ccb6}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(240,231,210,.26) 0%,rgba(240,231,210,0) 50%);z-index:-1}
.hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;z-index:-2}
.hero-content{height:100%;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;position:relative;padding-bottom:10px}
.hero-eyebrow{font-family:Georgia,"Times New Roman",serif;font-style:italic;color:#5a3923;font-size:15px;letter-spacing:.045em;margin:0 0 13px}
.hero h1{font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;color:var(--erdos-brown);font-weight:700;font-size:clamp(37px,4.4vw,63px);letter-spacing:-.03em;line-height:1.08;margin:0;text-wrap:balance}
.hero-rule{display:none}.hero-caption{display:none}
.section-wrap{padding:88px 0}.section-grid{display:grid;grid-template-columns:minmax(280px, .88fr) 1.1fr;gap:110px;align-items:start}
.eyebrow{font-size:11px;letter-spacing:.15em;font-family:Georgia,"Times New Roman",serif;color:var(--erdos-gray);font-weight:bold;display:block;margin-bottom:18px}
.erdos-home h2,.erdos-news h2{font-weight:650;letter-spacing:.055em;line-height:1.55;font-size:clamp(23px,2.4vw,31px);color:var(--erdos-brown);margin:0}.section-intro{display:none}
.principle-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--erdos-edge)}.principle-list li{display:flex;gap:17px;align-items:baseline;padding:18px 0;border-bottom:1px solid var(--erdos-edge)}.principle-list li::before{content:"";display:block;flex:none;width:7px;height:7px;background:var(--erdos-brown);transform:translateY(-2px)}.principle-list p{margin:0;font-size:15px;font-weight:550;line-height:1.85}
.explore{background:var(--erdos-paper)}.section-heading-inline{display:flex;align-items:flex-end;justify-content:space-between;gap:24px}.section-heading-inline .eyebrow{margin-bottom:7px}.section-heading-inline>p{display:none}
/* カードを3 / 4 / 5件に変更すると、余白を自動で均等配分します。 */
.explore-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,184px),1fr));gap:14px;margin-top:30px}
/* 表示数は index.html の data-visible="3|4|5" の数字だけで変更できます。 */
.explore-grid[data-visible="3"]>.explore-item:nth-child(n+4),
.explore-grid[data-visible="4"]>.explore-item:nth-child(n+5){display:none}.explore-item{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-height:188px;padding:21px 22px 21px;background:white;border:1px solid #e5ded6;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}
.explore-item:hover{border-color:var(--erdos-muted);transform:translateY(-2px);box-shadow:0 8px 20px rgba(59,31,11,.06)}
.explore-item img{width:54px;height:62px;object-fit:contain;object-position:center;align-self:flex-end;margin-bottom:auto}
.explore-kicker{font:10px Georgia,serif;letter-spacing:.12em;color:var(--erdos-muted);margin-top:6px}.explore-title{font-size:17px;font-weight:650;color:var(--erdos-brown);margin-top:5px;line-height:1.5}.explore-arrow{position:absolute;right:20px;bottom:18px;font-size:18px;color:var(--erdos-brown)}
.explore-detail{display:none}.explore-detail a{text-decoration:underline;text-underline-offset:4px;color:var(--erdos-brown)}
.news{padding-top:82px;padding-bottom:104px}.news-head{margin-bottom:25px}.news-list{border-top:1px solid var(--erdos-edge)}.news-item{display:grid;grid-template-columns:108px 130px minmax(0,1fr) 16px;align-items:baseline;gap:20px;padding:19px 8px;border-bottom:1px solid var(--erdos-edge);transition:background .15s ease}.news-item:hover{background:#fcfaf6}.news-item time{font:13px Georgia,serif;color:var(--erdos-muted);white-space:nowrap}.news-type{font-size:11px;color:var(--erdos-gray);white-space:nowrap}.news-title{font-size:14px;line-height:1.7}.news-arrow{color:var(--erdos-brown);font-size:18px}
.site-footer{background:#fff}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:38px 0 40px;color:var(--erdos-gray);font-size:11px}.footer-inner>div{display:flex;flex-direction:column;line-height:1.4}.footer-brand{font-size:14px;font-weight:700;letter-spacing:.05em;color:var(--erdos-brown)}.footer-inner nav{display:flex;gap:23px}.footer-inner small{font-size:11px}
@media(max-width:1080px){.explore-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,204px),1fr))}}
@media(max-width:980px){.site-shell{width:min(calc(100% - 48px),var(--erdos-max))}.desktop-nav{gap:14px;font-size:12px}.section-grid{gap:50px}.header-inner{min-height:88px}.brand img{width:155px}.news-item{grid-template-columns:105px 100px minmax(0,1fr) 12px;gap:12px}}
@media(max-width:740px){.site-shell{width:min(calc(100% - 34px),var(--erdos-max))}.header-inner{min-height:80px}.brand img{width:132px}.desktop-nav{display:none}.mobile-navigation{display:block;position:relative}.mobile-navigation summary{cursor:pointer;list-style:none;color:var(--erdos-brown);font-size:13px;font-weight:bold;padding:10px 0}.mobile-navigation summary::-webkit-details-marker{display:none}.menu-lines{margin-left:6px;font-size:19px}.mobile-navigation nav{position:absolute;right:0;top:42px;width:min(76vw,280px);background:#fff;border:1px solid var(--erdos-edge);box-shadow:0 12px 24px rgba(59,31,11,.1);display:flex;flex-direction:column;z-index:10}.mobile-navigation nav a{padding:11px 19px;border-bottom:1px solid var(--erdos-edge);font-size:13px}
.hero{height:auto;display:flex;flex-direction:column}.hero-img{position:static;display:block;width:100%;height:auto;object-fit:contain}.hero::after{display:none}.hero-content{background:#f0e8d8;padding:24px 0 31px;min-height:200px}.hero-eyebrow{font-size:13px;margin-bottom:7px}.hero h1{font-size:clamp(32px,8vw,45px)}.hero-rule{display:none}.hero-caption{display:none}
.section-wrap{padding:56px 0}.section-grid{grid-template-columns:1fr;gap:21px}.section-intro{margin:5px 0 0}.principle-list li{padding:16px 0;gap:14px}.principle-list p{font-size:14px}.section-heading-inline{display:block}.section-heading-inline>p{margin:7px 0 0}.explore-grid{grid-template-columns:1fr;gap:10px;margin-top:22px}.explore-item{min-height:113px;padding:17px 20px;display:grid;grid-template-columns:72px 1fr 20px;grid-template-rows:auto auto;align-items:center;column-gap:16px}.explore-item img{grid-row:1/3;grid-column:1;width:65px;height:74px;margin:0}.explore-kicker{grid-row:1;grid-column:2;margin:0;align-self:end}.explore-title{grid-row:2;grid-column:2;margin:0;align-self:start}.explore-arrow{position:static;grid-row:1/3;grid-column:3}.explore-detail{text-align:left}.news{padding-bottom:61px}.news-item{grid-template-columns:105px 1fr 15px;gap:5px 12px;align-items:start}.news-item time{grid-column:1;font-size:12px}.news-type{grid-column:2;font-size:10px}.news-title{grid-column:1/3;font-size:13px}.news-arrow{grid-column:3;grid-row:1/3}.footer-inner{display:grid;grid-template-columns:1fr;gap:19px;padding:29px 0}.footer-inner nav{gap:18px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition-duration:0ms!important}}

/* Prevent Twenty Twenty-Five template spacing from disturbing the full-width home design. */
:root :where(.wp-site-blocks) { padding-block-start:0; padding-block-end:0; }
.erdos-main,.erdos-main > .wp-block-post-content{margin:0;padding:0;}
.erdos-main > .wp-block-post-content {max-width:none;}
.erdos-main > .wp-block-post-content :is(.hero,.philosophy,.explore){margin-block-start:0;margin-block-end:0;}
.erdos-main > .wp-block-post-content > .erdos-home { max-width:none; margin:0; }
.erdos-home{margin:0;padding:0;}
.erdos-home .section-wrap{margin-block:0;}
.erdos-news .wp-block-query,.erdos-news .wp-block-post-template{margin:0;}
.erdos-news .wp-block-post-template{list-style:none;padding:0;display:block;border-top:1px solid var(--erdos-edge);}
.erdos-news .wp-block-post-template>li{margin:0; padding:0;}
.erdos-news .erdos-news-item{display:grid;grid-template-columns:108px 130px minmax(0,1fr) 16px;align-items:baseline;gap:20px;padding:19px 8px;border-bottom:1px solid var(--erdos-edge);margin:0;}
.erdos-news .erdos-news-item:hover{background:#fcfaf6;}
.erdos-news .erdos-news-item::after{content:'↗';grid-column:4;grid-row:1;color:var(--erdos-brown);font-size:18px;}
.erdos-news .erdos-news-date{grid-column:1;margin:0;font-size:13px;color:var(--erdos-muted);white-space:nowrap;}
.erdos-news .erdos-news-date time{font-family:Georgia,serif;}
.erdos-news .erdos-news-term{grid-column:2;margin:0;font-size:11px;color:var(--erdos-gray);white-space:nowrap;}
.erdos-news .erdos-news-title{grid-column:3;margin:0;color:var(--erdos-ink);font-size:14px;font-weight:500;line-height:1.7;letter-spacing:0;}
.erdos-news .erdos-news-title a{text-decoration:none;}
.erdos-news .erdos-news-title a:hover{text-decoration:underline;text-underline-offset:3px;}
.erdos-inner-page{padding:64px 0 90px;min-height:48vh;}
.erdos-inner-page>.wp-block-post-title{color:var(--erdos-brown);font-size:clamp(26px,3vw,38px);}
.erdos-inner-page .wp-block-post-content{line-height:1.85;}
/* Limit styling impact of globally-set TT5 element link colors. */
.site-header a,.site-footer a,.erdos-home a,.erdos-news a{color:inherit;}
@media(max-width:980px){.erdos-news .erdos-news-item{grid-template-columns:105px 100px minmax(0,1fr) 12px;gap:12px;}}
@media(max-width:740px){
.erdos-news .erdos-news-item{grid-template-columns:105px minmax(0,1fr) 15px;gap:5px 12px;align-items:start;}
.erdos-news .erdos-news-date{grid-column:1;font-size:12px;}
.erdos-news .erdos-news-term{grid-column:2;font-size:10px;}
.erdos-news .erdos-news-title{grid-column:1/3;grid-row:2;font-size:13px;}
.erdos-news .erdos-news-item::after{grid-column:3;grid-row:1/3;}
.erdos-inner-page{padding:36px 0 55px;}
}
/* ERDOS FLOW V1 BEGIN: 2026-10-24; WordPress core/html flow steps. */
.erdos-inner-page .erdos-flow-step {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 100px;
  align-items: center;
  gap: 28px;
  padding: 28px 20px;
  margin: 0;
  border-bottom: 1px solid var(--erdos-edge, #e2dad1);
}
.erdos-inner-page .erdos-flow-step + .erdos-flow-step { margin-block-start: 0; }
.erdos-inner-page .erdos-flow-step:first-of-type { border-top: 1px solid var(--erdos-edge, #e2dad1); }
.erdos-inner-page .erdos-flow-title {
  margin: 0 0 10px;
  color: var(--erdos-brown, #3B1F0B);
  font-size: clamp(18px, 2vw, 21px);
  font-weight: 650;
  line-height: 1.55;
  letter-spacing: .025em;
}
.erdos-inner-page .erdos-flow-description {
  color: var(--erdos-ink, #302821);
  font-size: 15px;
  line-height: 1.9;
}
.erdos-inner-page .erdos-flow-description a {
  color: var(--erdos-brown-2, #4A2E19);
  text-decoration: underline;
  text-underline-offset: 3px;
}
.erdos-inner-page img.erdos-flow-image {
  width: 100px;
  height: 100px;
  max-width: 100%;
  object-fit: contain;
  justify-self: center;
}
@media (max-width: 640px) {
  .erdos-inner-page .erdos-flow-step {
    grid-template-columns: minmax(0, 1fr) 68px;
    gap: 15px;
    padding: 22px 4px;
  }
  .erdos-inner-page .erdos-flow-description { font-size: 14px; }
  .erdos-inner-page img.erdos-flow-image { width: 68px; height: 68px; }
}
/* ERDOS FLOW V1 END */

/* ERDOS INNER PAGE V1 BEGIN */

/* ページ全体 */
.erdos-inner-page {
  max-width: 1060px;
  padding-top: 65px;
  padding-bottom: 90px;
}

/* ページタイトル */
.erdos-inner-page > .wp-block-post-title {
  max-width: 920px;
  margin: 0 auto 35px;
  padding-bottom: 20px;
  border-bottom: 1px solid #e2dad1;
  color: #3B1F0B;
  font-size: clamp(28px, 3vw, 36px);
  font-weight: 700;
  line-height: 1.5;
}

/* 本文幅と文字組み */
.erdos-inner-page > .wp-block-post-content {
  width: 100%;
  max-width: 920px !important;
  margin-inline: auto !important;
  font-size: 16px;
  line-height: 1.9;
}

.erdos-inner-page .wp-block-post-content.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
  max-width: 100%;
}

/* セクション見出し */
.erdos-inner-page .wp-block-post-content h2 {
  margin: 2.5em 0 1em;
  padding-left: 14px;
  border-left: 4px solid #3B1F0B;
  color: #3B1F0B;
  font-size: clamp(22px, 2.5vw, 27px);
  font-weight: 700;
  line-height: 1.5;
}

/* 小見出し */
.erdos-inner-page .wp-block-post-content h3:not(.erdos-flow-title) {
  margin: 2em 0 0.7em;
  color: #4A2E19;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.6;
}

/* Flow */
.erdos-inner-page .erdos-flow-step {
  grid-template-columns: minmax(0, 1fr) 110px;
  gap: 32px;
  padding: 30px 12px;
}

.erdos-inner-page .erdos-flow-description {
  font-size: 16px;
  line-height: 1.9;
}

.erdos-inner-page img.erdos-flow-image {
  width: 110px;
  height: 110px;
}

/* スマートフォン */
@media (max-width: 640px) {
  .erdos-inner-page {
    padding-top: 36px;
    padding-bottom: 56px;
  }

  .erdos-inner-page > .wp-block-post-title {
    font-size: 28px;
  }

  .erdos-inner-page > .wp-block-post-content {
    font-size: 15px;
  }

  .erdos-inner-page .erdos-flow-step {
    grid-template-columns: minmax(0, 1fr) 68px;
    gap: 14px;
  }

  .erdos-inner-page img.erdos-flow-image {
    width: 68px;
    height: 68px;
  }
}

/* ERDOS INNER PAGE V1 END */
/* ERDOS INNER V2 BEGIN
 * Corporate palette, clear typography and project flow layout.
 * Applies to the inner-page template only. Homepage stays unchanged.
 */

/* 01 Layout: override block theme's default constrained content size. */
.erdos-inner-page.site-shell {
  width: min(100% - 64px, 1060px) !important;
  max-width: 1060px !important;
  margin-inline: auto !important;
  padding: 64px 0 104px !important;
  --wp--style--global--content-size: 1000px;
}
.erdos-inner-page.is-layout-constrained > .wp-block-post-title,
.erdos-inner-page.is-layout-constrained > .wp-block-post-content {
  width: 100% !important;
  max-width: 1000px !important;
  margin-inline: auto !important;
}
.erdos-inner-page .wp-block-post-content.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.erdos-inner-page .wp-block-post-content > .wp-block-html {
  max-width: 100% !important;
}

/* 02 Type scale: generous but restrained. */
.erdos-inner-page > .wp-block-post-title {
  color: #3B1F0B !important;
  font-size: clamp(30px, 3vw, 39px) !important;
  font-weight: 700 !important;
  line-height: 1.35 !important;
  letter-spacing: .015em !important;
  margin-bottom: 40px !important;
  padding-bottom: 21px;
  border-bottom: 1px solid #dcd0c5;
}
.erdos-inner-page > .wp-block-post-title::after {
  content: '';
  display: block;
  position: relative;
  top: 22px;
  width: 64px;
  height: 3px;
  background: #3B1F0B;
}
.erdos-inner-page .wp-block-post-content {
  font-size: 17px !important;
  line-height: 1.95 !important;
  letter-spacing: .012em;
  color: #302821;
}
.erdos-inner-page .wp-block-post-content p {
  margin-block: .65em 1.25em;
  line-height: inherit;
}
.erdos-inner-page .wp-block-post-content h2:not(.erdos-flow-title) {
  font-size: clamp(22px, 2.2vw, 26px) !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
  color: #3B1F0B !important;
  padding-left: 17px;
  border-left: 4px solid #3B1F0B;
  margin: 2.5em 0 .85em !important;
  letter-spacing: .025em;
}
.erdos-inner-page .wp-block-post-content h2:not(.erdos-flow-title):first-child {
  margin-top: .2em !important;
}
.erdos-inner-page .wp-block-post-content h3:not(.erdos-flow-title) {
  font-size: clamp(19px, 1.9vw, 21px) !important;
  font-weight: 700 !important;
  color: #4A2E19 !important;
  line-height: 1.55 !important;
  margin: 2em 0 .7em !important;
}
.erdos-inner-page .wp-block-post-content h4:not(.erdos-flow-title) {
  font-size: 18px !important;
  font-weight: 700 !important;
  margin: 1.7em 0 .5em !important;
  color: #4A2E19 !important;
}
.erdos-inner-page .wp-block-post-content a {
  text-underline-offset: 3px;
}

/* 03 Flow: make each step a clear, self-contained information block. */
.erdos-inner-page .wp-block-post-content .erdos-flow-step {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 112px !important;
  align-items: center !important;
  column-gap: 34px !important;
  border: 1px solid #e3d9cf !important;
  border-left: 3px solid #4A2E19 !important;
  border-radius: 4px;
  padding: 26px 32px !important;
  margin: 18px 0 !important;
  background: #fcfaf7;
  box-shadow: none;
}
.erdos-inner-page .wp-block-post-content .erdos-flow-step:first-of-type {
  border-top: 1px solid #e3d9cf !important;
}
.erdos-inner-page .erdos-flow-body { min-width: 0; }
.erdos-inner-page .wp-block-post-content .erdos-flow-title {
  font-size: clamp(19px, 1.9vw, 21px) !important;
  font-weight: 700 !important;
  color: #3B1F0B !important;
  line-height: 1.5 !important;
  margin: 0 0 10px !important;
  letter-spacing: .02em;
  padding: 0;
  border: 0;
}
.erdos-inner-page .wp-block-post-content .erdos-flow-description {
  font-size: 16px !important;
  line-height: 1.9 !important;
  color: #3c332c;
}
.erdos-inner-page .wp-block-post-content img.erdos-flow-image {
  width: 104px !important;
  height: 104px !important;
  max-width: 100% !important;
  object-fit: contain;
  justify-self: center;
}

@media (max-width: 740px) {
  .erdos-inner-page.site-shell {
    width: min(100% - 34px, 1060px) !important;
    padding: 38px 0 65px !important;
  }
  .erdos-inner-page > .wp-block-post-title {
    font-size: 29px !important;
    margin-bottom: 30px !important;
  }
  .erdos-inner-page .wp-block-post-content { font-size: 16px !important; }
  .erdos-inner-page .wp-block-post-content h2:not(.erdos-flow-title) {
    font-size: 22px !important;
    margin-top: 2em !important;
  }
  .erdos-inner-page .wp-block-post-content .erdos-flow-step {
    grid-template-columns: minmax(0,1fr) 64px !important;
    column-gap: 14px !important;
    padding: 19px 16px !important;
    margin: 12px 0 !important;
  }
  .erdos-inner-page .wp-block-post-content .erdos-flow-title {
    font-size: 18px !important;
  }
  .erdos-inner-page .wp-block-post-content .erdos-flow-description {
    font-size: 14px !important;
    line-height: 1.85 !important;
  }
  .erdos-inner-page .wp-block-post-content img.erdos-flow-image {
    width: 60px !important;
    height: 60px !important;
  }
}
/* ERDOS INNER V2 END */

/* ERDOS INNER TITLE V3 BEGIN */

/* ページタイトルを強調 */
.erdos-inner-page > .wp-block-post-title {
  font-size: clamp(38px, 3.6vw, 48px) !important;
  font-weight: 750 !important;
  letter-spacing: .045em !important;
  line-height: 1.4 !important;
  color: #3B1F0B !important;

  padding-bottom: 27px !important;
  margin-bottom: 48px !important;
  border-bottom: 1px solid #dcd0c5;
}

/* ブラウンのアクセントライン */
.erdos-inner-page > .wp-block-post-title::after {
  width: 88px !important;
  height: 4px !important;
  top: 29px !important;
  background: #3B1F0B !important;
}

/* スマートフォン */
@media (max-width: 740px) {
  .erdos-inner-page > .wp-block-post-title {
    font-size: 32px !important;
    margin-bottom: 36px !important;
    padding-bottom: 22px !important;
  }

  .erdos-inner-page > .wp-block-post-title::after {
    top: 24px !important;
    width: 65px !important;
    height: 3px !important;
  }
}

/* ERDOS INNER TITLE V3 END */
/* ERDOS PAGE LAYOUT V3 BEGIN
   Classic Erdos visual hierarchy; calmer contemporary typography.
   Only inner pages use these new elements. Homepage stays unchanged.
*/

/* Title strip (full width) */
.erdos-page-banner.alignfull {
  margin: 0 !important;
  width: 100% !important;
  max-width: none !important;
  background: #3B1F0B;
  color: #fff;
}
.erdos-page-banner .erdos-page-banner-inner.site-shell {
  display: flex;
  align-items: center;
  width: min(calc(100% - 64px), 1110px) !important;
  min-height: 116px;
  max-width: 1110px !important;
  padding: 25px 0;
  margin-inline: auto !important;
}
.erdos-page-banner .erdos-page-banner-title.wp-block-post-title {
  color: #fff !important;
  font-size: clamp(28px, 3.1vw, 37px) !important;
  font-weight: 700 !important;
  line-height: 1.45 !important;
  letter-spacing: .045em !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: transparent !important;
}
.erdos-page-banner .erdos-page-banner-title::after { display: none !important; }

/* Breadcrumb strip, no extra plugins. */
.erdos-crumb-zone.alignfull {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  background: #fbfaf8;
  border-bottom: 1px solid #e8e1da;
}
.erdos-crumb-shell.site-shell {
  width: min(calc(100% - 64px), 1110px) !important;
  max-width: 1110px !important;
  margin-inline: auto !important;
  padding: 10px 0 !important;
}
.erdos-breadcrumb { font-size: 12px; line-height: 1.65; color: #746F69; }
.erdos-breadcrumb ol { display: flex; align-items: center; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0; padding: 0; }
.erdos-breadcrumb li + li::before { content: '/'; display: inline-block; margin-right: 8px; color: #a7a099; }
.erdos-breadcrumb a { color: #746F69; text-decoration: none; }
.erdos-breadcrumb a:hover { text-decoration: underline; text-underline-offset: 3px; }
.erdos-breadcrumb [aria-current="page"] { color: #4A2E19; }

/* Content: readable line length instead of a narrow column. */
.erdos-inner-page.site-shell {
  width: min(calc(100% - 64px), 1110px) !important;
  max-width: 1110px !important;
  padding: 52px 0 100px !important;
  min-height: 44vh;
  margin: 0 auto !important;
  --wp--style--global--content-size: 870px;
}
.erdos-inner-page .wp-block-post-content,
.erdos-inner-page.is-layout-constrained > .wp-block-post-content {
  width: 100% !important;
  max-width: 870px !important;
  margin-inline: auto !important;
  font-size: 16px !important;
  line-height: 1.95 !important;
  letter-spacing: .008em !important;
  color: #302821;
}
.erdos-inner-page .wp-block-post-content.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)),
.erdos-inner-page .wp-block-post-content > .wp-block-html {
  max-width: 100% !important;
}
.erdos-inner-page .wp-block-post-content p {
  margin: .7em 0 1.2em;
  line-height: inherit;
}

/* Section heading: preserve classic light-grey panel with left brown rule. */
.erdos-inner-page .wp-block-post-content h2:not(.erdos-flow-title) {
  display: block;
  font-size: clamp(21px, 2.1vw, 25px) !important;
  line-height: 1.55 !important;
  font-weight: 700 !important;
  letter-spacing: .035em !important;
  color: #3B1F0B !important;
  background: #F2F0ED !important;
  border: 0 !important;
  border-left: 3px solid #4A2E19 !important;
  padding: 14px 20px !important;
  margin: 2.3em 0 1.15em !important;
}
.erdos-inner-page .wp-block-post-content h2:not(.erdos-flow-title):first-child {
  margin-top: 0 !important;
}
/* Subheading: light divider rather than heavy embellishment. */
.erdos-inner-page .wp-block-post-content h3:not(.erdos-flow-title) {
  font-size: clamp(18px, 1.7vw, 21px) !important;
  line-height: 1.6 !important;
  font-weight: 700 !important;
  color: #4A2E19 !important;
  padding: 0 0 11px !important;
  margin: 2.0em 0 .85em !important;
  border-bottom: 1px solid #e1d8cf !important;
}
.erdos-inner-page .wp-block-post-content h4:not(.erdos-flow-title) {
  font-size: 17px !important;
  line-height: 1.65 !important;
  color: #4A2E19 !important;
  font-weight: 700 !important;
  margin: 1.7em 0 .65em !important;
}
/* Preserve previous flow layout, slightly clearer spacing. */
.erdos-inner-page .wp-block-post-content .erdos-flow-step {
  background: #fcfaf7;
  border: 1px solid #e5dcd2 !important;
  border-left: 3px solid #4A2E19 !important;
  border-radius: 3px;
  box-shadow: none;
  margin: 16px 0 !important;
}
.erdos-inner-page .wp-block-post-content .erdos-flow-title {
  color: #3B1F0B !important;
  font-weight: 700 !important;
  border: 0 !important;
  background: transparent !important;
}

/* Company information tables: soft ruling and consistent cell padding. */
.erdos-inner-page .wp-block-post-content table {
  width: 100%;
  border-collapse: collapse;
  font-size: 15px;
  line-height: 1.75;
}
.erdos-inner-page .wp-block-post-content :is(table th, table td) {
  border: 1px solid #e1dad2 !important;
  padding: 12px 16px;
  vertical-align: top;
}
.erdos-inner-page .wp-block-post-content table th {
  background: #f7f4f0;
  color: #3B1F0B;
  font-weight: 700;
  text-align: left;
}
.erdos-inner-page .wp-block-post-content .wp-block-table { overflow-x: auto; }
.erdos-inner-page .wp-block-post-content img { max-width: 100%; height: auto; }

@media (max-width: 740px) {
  .erdos-page-banner .erdos-page-banner-inner.site-shell,
  .erdos-crumb-shell.site-shell,
  .erdos-inner-page.site-shell { width: min(calc(100% - 34px), 1110px) !important; }
  .erdos-page-banner .erdos-page-banner-inner.site-shell { min-height: 88px; padding: 19px 0; }
  .erdos-page-banner .erdos-page-banner-title.wp-block-post-title { font-size: 28px !important; }
  .erdos-crumb-shell.site-shell { padding: 8px 0 !important; }
  .erdos-breadcrumb { font-size: 11px; }
  .erdos-inner-page.site-shell { padding: 32px 0 64px !important; }
  .erdos-inner-page .wp-block-post-content { font-size: 15px !important; }
  .erdos-inner-page .wp-block-post-content h2:not(.erdos-flow-title) {
    font-size: 20px !important; padding: 12px 14px !important;
  }
  .erdos-inner-page .wp-block-post-content h3:not(.erdos-flow-title) { font-size: 18px !important; }
  .erdos-inner-page .wp-block-post-content :is(table th, table td) { padding: 9px 10px; }
}
/* ERDOS PAGE LAYOUT V3 END */

/* ERDOS CASE STUDY V1 BEGIN */

.erdos-case-study {
  width: 100%;
  max-width: 920px;
  margin: 0 auto 40px;
}

.erdos-case-study__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.erdos-case-study__card {
  min-width: 0;
  padding: 24px 18px;
  background: #fff;
  border: 1px solid #E5DDD5;
  border-radius: 2px;
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: border-color .2s, box-shadow .2s;
}

.erdos-case-study__card:hover {
  border-color: #8F877F;
  box-shadow: 0 4px 16px rgba(59,31,11,.06);
}

.erdos-case-study__card > a:first-child {
  display: block;
  width: 100%;
  text-decoration: none;
}

.erdos-case-study__logo {
  height: 115px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 18px;
}

.erdos-case-study__logo img {
  display: block;
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100px;
  object-fit: contain;
}

.erdos-case-study__name {
  margin: 0;
  color: #3B1F0B;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.7;
}

.erdos-case-study__detail {
  margin-top: 15px;
  padding-bottom: 3px;
  color: #4A2E19;
  border-bottom: 1px solid #8F877F;
  font-size: 13px;
  font-weight: 600;
  text-decoration: none;
}

.erdos-case-study__detail:hover {
  color: #746F69;
}

@media (max-width: 760px) {
  .erdos-case-study__grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 520px) {
  .erdos-case-study__grid {
    grid-template-columns: 1fr;
  }
}

/* ERDOS CASE STUDY V1 END */

/* ERDOS DAIKIN ARTICLE V1 */

/* 導入事例の本文 */
body.page-id-806 .wp-block-post-content {
  font-size: 16px;
  line-height: 1.95;
  color: #38332F;
}

/* 大見出し */
body.page-id-806 .wp-block-post-content h2 {
  font-size: clamp(21px, 2.2vw, 26px) !important;
  font-weight: 700;
  line-height: 1.55;
  color: #3B1F0B;
  background: #F3F1EE;
  padding: 18px 22px !important;
  margin: 52px 0 24px !important;
  border-left: 4px solid #3B1F0B !important;
  border-bottom: none !important;
}

/* 小見出し */
body.page-id-806 .wp-block-post-content h3 {
  font-size: 19px !important;
  font-weight: 700;
  color: #4A2E19;
  padding-bottom: 9px;
  margin: 30px 0 14px;
  border-bottom: 1px solid #DDD5CE;
}

/* 本文 */
body.page-id-806 .wp-block-post-content p {
  line-height: 1.95;
  margin-bottom: 1.4em;
}

/* 画像 */
body.page-id-806 .wp-block-post-content img {
  max-width: 100%;
  height: auto;
}

/* リンク */
body.page-id-806 .wp-block-post-content a {
  text-underline-offset: 3px;
}

/* スマートフォン */
@media (max-width: 640px) {
  body.page-id-806 .wp-block-post-content {
    font-size: 15px;
  }

  body.page-id-806 .wp-block-post-content h2 {
    padding: 15px 16px !important;
    margin-top: 38px !important;
  }
}

/* ERDOS DAIKIN ARTICLE V1 END */

/* ERDOS COMPANY V1 BEGIN */

/* 企業情報の本文 */
body.page-id-15 .erdos-inner-page .wp-block-post-content {
  font-size: 16px;
  line-height: 1.9;
}

/* セクション見出し */
body.page-id-15 .erdos-inner-page .wp-block-post-content h3 {
  margin: 44px 0 22px !important;
  padding: 14px 20px !important;
  background: #F3F1EE;
  border-left: 4px solid #3B1F0B;
  border-bottom: none !important;
  color: #3B1F0B;
  font-size: 23px !important;
  font-weight: 700;
  line-height: 1.5;
}

/* 会社概要の表 */
body.page-id-15 .wp-block-post-content table {
  width: 100% !important;
  border-collapse: collapse;
  font-size: 15px;
  line-height: 1.8;
}

body.page-id-15 .wp-block-post-content table th,
body.page-id-15 .wp-block-post-content table td {
  padding: 14px 17px !important;
  border: 1px solid #E5DDD5 !important;
  vertical-align: top;
  overflow-wrap: anywhere;
}

body.page-id-15 .wp-block-post-content table tr > :first-child {
  width: 28%;
  background: #F8F6F3;
  color: #3B1F0B;
  font-weight: 600;
}

/* アクセスマップ */
body.page-id-15 .wp-block-post-content iframe[src*="google.com/maps"] {
  display: block;
  width: 100% !important;
  max-width: 100%;
  height: 380px !important;
  border: 0;
}

/* 役員紹介 */
body.page-id-15 .wp-block-post-content h5 {
  color: #746F69;
  font-size: 15px;
  font-weight: 500;
}

body.page-id-15 .wp-block-post-content h6 {
  color: #3B1F0B;
  font-size: 22px;
  font-weight: 700;
}

/* スマートフォン */
@media (max-width: 640px) {
  body.page-id-15 .erdos-inner-page .wp-block-post-content h3 {
    font-size: 21px !important;
    padding: 12px 15px !important;
  }

  body.page-id-15 .wp-block-post-content table th,
  body.page-id-15 .wp-block-post-content table td {
    padding: 11px 10px !important;
    font-size: 14px;
  }

  body.page-id-15 .wp-block-post-content iframe[src*="google.com/maps"] {
    height: 300px !important;
  }
}

/* ERDOS COMPANY V1 END */

/* ERDOS DAIKIN PHOTO V2 */

body.page-id-806 .erdos-inner-page
.wp-block-post-content img {
  display: block;
  width: min(100%, 640px) !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 24px auto 12px !important;
  object-fit: contain;
}

/* ERDOS DAIKIN PHOTO V2 END */

/* ERDOS REMAINING PAGES V1 */

/* お問い合わせ */
body.page-id-22 .wp-block-post-content {
  font-size: 17px;
  line-height: 2;
}

body.page-id-22 .wp-block-post-content a {
  color: #3B1F0B;
  text-decoration: underline;
  text-underline-offset: 4px;
  overflow-wrap: anywhere;
}

/* サイトマップ */
body.page-id-37 .wp-block-post-content ul {
  list-style: none;
  padding-left: 0;
  margin: 20px 0;
}

body.page-id-37 .wp-block-post-content li {
  margin: 0;
  padding: 14px 5px;
  border-bottom: 1px solid #E5DDD5;
}

body.page-id-37 .wp-block-post-content a {
  color: #3B1F0B;
  font-weight: 600;
  text-decoration: none;
}

body.page-id-37 .wp-block-post-content a:hover {
  text-decoration: underline;
}

/* プライバシーポリシー */
body.page-id-56 .wp-block-post-content h3 {
  margin: 36px 0 18px !important;
  padding: 14px 18px !important;
  background: #F3F1EE;
  border-left: 4px solid #3B1F0B;
  border-bottom: none !important;
  color: #3B1F0B;
  font-size: 21px !important;
  line-height: 1.6;
}

body.page-id-56 .wp-block-post-content p {
  line-height: 1.95;
  margin-bottom: 1.3em;
}

/* プロフィール：セクション見出し */
body.page-id-200 .wp-block-post-content h5 {
  margin: 42px 0 20px !important;
  padding: 14px 20px !important;
  background: #F3F1EE;
  border-left: 4px solid #3B1F0B;
  color: #3B1F0B;
  font-size: 21px !important;
  font-weight: 700;
  line-height: 1.5;
}

/* プロフィール：本文・リンク */
body.page-id-200 .wp-block-post-content {
  font-size: 16px;
  line-height: 1.9;
  overflow-wrap: anywhere;
}

body.page-id-200 .wp-block-post-content li {
  margin-bottom: 9px;
}

body.page-id-200 .wp-block-post-content a {
  color: #4A2E19;
  text-decoration: underline;
  text-underline-offset: 3px;
}

@media (max-width: 640px) {
  body.page-id-56 .wp-block-post-content h3,
  body.page-id-200 .wp-block-post-content h5 {
    font-size: 19px !important;
    padding: 12px 15px !important;
  }
}

/* ERDOS REMAINING PAGES V1 END */




/* ERDOS PRIVACY HEADINGS V2 */

/* プライバシーポリシー内の見出しを控えめに */
body.page-id-56 .wp-block-post-content h3 {
  background: transparent !important;
  border: none !important;
  padding: 0 !important;

  margin: 26px 0 10px !important;

  color: #4A2E19 !important;
  font-size: 17px !important;
  font-weight: 600 !important;
  line-height: 1.6 !important;
}

/* ERDOS PRIVACY HEADINGS V2 END */
