@charset "UTF-8";

/*!
Theme Name: Cocoon Child
Description: Cocoon専用の子テーマ
Theme URI: https://wp-cocoon.com/
Author: わいひら
Author URI: https://nelog.jp/
Template:   cocoon-master
Version:    1.1.3
*/

/************************************
** 子テーマ用のスタイルを書く
************************************/
/*必要ならばここにコードを書く*/

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
  /*必要ならばここにコードを書く*/
}

/*834px以下*/
@media screen and (max-width: 834px){
  /*必要ならばここにコードを書く*/
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
}

/* HG-DESIGN-START */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&display=swap');

/* =========================================================
   北海道外壁塗装ガイド - design system v3 (modern / high contrast)
   v2 からの方針転換:
     丸ゴシック -> シャープなゴシック(Noto Sans JP 700/900)
     ベージュ基調 -> 白 + 濃紺 + 彩度の高いオレンジ
     余白過多 -> 情報密度を上げ、数字と写真で語る
   白文字を載せる面は *-deep か navy 系のみ（コントラスト4.5:1以上）
   ========================================================= */

:root{
  --hg-ink:#16202B;          /* 本文・見出し（ほぼ黒） */
  --hg-ink-2:#5A6875;        /* 補足 */
  --hg-navy:#0F2B46;         /* ヒーロー・フッター地（白文字 13.4:1） */
  --hg-navy-2:#1B3E60;
  --hg-sky:#2F8FD0;          /* アクセント青 */
  --hg-sky-deep:#1E6FA8;     /* 白文字を載せる青 4.8:1 */
  --hg-ice:#EAF3F9;          /* 薄青の面 */
  --hg-orange:#F0620F;       /* CTA（白文字 4.0:1 -> 大きい文字専用） */
  --hg-orange-deep:#C7480A;  /* 白文字を載せるオレンジ 5.4:1 */
  --hg-amber:#F5A623;        /* 強調ハイライト（文字色としては濃地の上のみ） */
  --hg-green-deep:#2E7D52;
  --hg-danger-deep:#B3261E;
  --hg-bg:#FFFFFF;
  --hg-band:#F4F7F9;         /* セクション帯 */
  --hg-line:#DFE6EC;
  --hg-radius:10px;
  --hg-radius-lg:16px;
  --hg-shadow:0 1px 3px rgba(16,32,46,.08),0 8px 24px rgba(16,32,46,.06);
  --hg-shadow-lift:0 4px 10px rgba(16,32,46,.10),0 16px 40px rgba(16,32,46,.12);
  --hg-font:"Noto Sans JP",system-ui,-apple-system,"Segoe UI",sans-serif;
}

/* ---------- base ---------- */
body{
  background:var(--hg-bg);
  color:var(--hg-ink);
  font-family:var(--hg-font);
  font-size:17px;
  line-height:1.85;
  letter-spacing:.01em;
  -webkit-font-smoothing:antialiased;
}
#container,.wrap{background:transparent;}
a{color:var(--hg-sky-deep);text-decoration:none;}
a:hover{color:var(--hg-navy);text-decoration:underline;}
a:focus-visible,button:focus-visible,input:focus-visible,
select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{
  outline:3px solid var(--hg-sky-deep);outline-offset:2px;border-radius:4px;
}

/* ---------- header : ロゴ左 + ナビ右の1行構成 + 追従 ---------- */
#header-container{
  position:sticky;top:0;z-index:120;background:#fff;
  box-shadow:0 1px 0 var(--hg-line),0 2px 12px rgba(16,32,46,.05);
}
/* ロゴ行 + ナビ行の2段構成。Cocoonのレイアウトと競合しないよう flex 1行化はしない。 */
#header-container-in{display:block;background:#fff;}
.header-container,#header,#header-in,#navi,.navi-in{background:#fff;}
#header{padding:0;margin:0;}
#header-in{
  display:block;text-align:left;
  width:auto !important;max-width:1200px !important;
  margin:0 auto !important;padding:14px 20px 11px !important;
  border:0;min-height:0;height:auto;
}
#header-in .logo-header{margin:0;padding:0;text-align:left;line-height:1.25;}
/* タグラインはヘッダーを間延びさせるため非表示（meta descriptionには残る） */
#header-in .tagline{display:none;}
.logo-header .site-name-text{
  font-weight:900;color:var(--hg-ink);letter-spacing:-.02em;font-size:21px;
}
.logo-header .site-name-text-link:hover{text-decoration:none;opacity:.8;}
#navi{display:block;border-top:1px solid var(--hg-line);}
#navi-in{
  width:auto !important;max-width:1200px !important;
  margin:0 auto !important;padding:0 20px !important;display:block;
}
/* Cocoonのメニュー項目はfloatなので、flexを明示しないと親の高さが0になる */
.navi-in>.menu-header{
  display:flex !important;justify-content:flex-start;align-items:center;
  flex-wrap:nowrap;margin:0;padding:0;list-style:none;width:100%;gap:0;
}
/* Cocoonはliに固定幅を与えるので解除しないと間隔が間延びする */
.navi-in>.menu-header>li{
  float:none !important;flex:0 0 auto;
  width:auto !important;min-width:0 !important;max-width:none !important;
}
.navi-in>.menu-header>li>a{white-space:nowrap;width:auto !important;}
.navi-in>.menu-header .caption-wrap{padding:0 !important;margin:0 !important;}
/* 最後の項目（よくある質問）は右端へ寄せる */
.navi-in>.menu-header>li:last-child{margin-left:auto;}
.navi-in>.menu-header .item-label{font-weight:700;color:var(--hg-ink);font-size:15px;}
.navi-in>.menu-header li a{
  min-height:50px;display:flex;align-items:center;padding:0 16px;border-radius:0;
  border-bottom:3px solid transparent;
}
.navi-in>.menu-header li a:hover{background:transparent;border-bottom-color:var(--hg-orange);}
.navi-in>.menu-header li a:hover{background:var(--hg-ice);color:var(--hg-navy);}
.navi-in>.menu-header li a::after{display:none;}
/* 最後の項目をボタン化 */
.navi-in>.menu-header>li:last-child>a{
  background:var(--hg-navy);padding:0 22px;min-height:38px;border-radius:6px;
  border-bottom:0;align-self:center;
}
.navi-in>.menu-header>li:last-child>a .item-label{color:#fff;}
.navi-in>.menu-header>li:last-child>a:hover{background:var(--hg-navy-2);border-bottom:0;}

/* ---------- 記事本文の見出し ---------- */
.entry-content h2,.article h2{
  font-weight:900;font-size:27px;line-height:1.45;color:var(--hg-ink);
  background:transparent;border:0;border-left:6px solid var(--hg-orange);
  border-radius:0;padding:.15em 0 .15em .7em;margin:2.8em 0 1.1em;
}
.entry-content h3,.article h3{
  font-weight:700;font-size:20px;line-height:1.6;color:var(--hg-ink);
  border:0;border-bottom:2px solid var(--hg-line);padding:0 0 .5em;margin:2.3em 0 .9em;
}
.entry-content h4{
  font-weight:700;font-size:18px;color:var(--hg-ink);border:0;padding:0;margin:2em 0 .7em;
}
.entry-title,.archive-title{font-weight:900;line-height:1.45;letter-spacing:-.01em;}

/* ---------- Cocoon カード ---------- */
.entry-card-wrap,.related-entry-card-wrap{
  background:#fff;border:1px solid var(--hg-line);border-radius:var(--hg-radius);
  box-shadow:var(--hg-shadow);overflow:hidden;
  transition:transform .18s ease,box-shadow .18s ease;
}
.entry-card-wrap:hover,.related-entry-card-wrap:hover{
  transform:translateY(-3px);box-shadow:var(--hg-shadow-lift);
}
.entry-card-title,.related-entry-card-title{font-weight:700;color:var(--hg-ink);line-height:1.55;}
.a-wrap:hover{background:transparent;}
.cat-label{background:var(--hg-navy);border:0;border-radius:4px;font-weight:700;padding:.2em .8em;}
.sidebar h3,.widget-sidebar-title{
  font-weight:700;background:var(--hg-navy);color:#fff;border:0;
  border-radius:var(--hg-radius) var(--hg-radius) 0 0;padding:.7em 1em;
}

/* =========================================================
   HERO
   ========================================================= */
.hg-hero{
  position:relative;
  margin:0 0 0;
  padding:clamp(48px,6vw,84px) clamp(20px,4vw,56px) clamp(96px,10vw,140px);
  background-color:#0A1E33;
  /* 左側にコピーを置くので、横方向のグラデで左を濃く・右の家を見せる */
  background-image:
    linear-gradient(90deg,
      rgba(10,25,42,.94) 0%,
      rgba(10,25,42,.86) 30%,
      rgba(10,25,42,.55) 60%,
      rgba(10,25,42,.22) 100%),
    url('/wp-content/uploads/2026/08/hero-1440.jpg');
  background-size:cover;
  background-position:center 58%;
  background-repeat:no-repeat;
  color:#fff;
  overflow:hidden;
}
/* 上端はヘッダー、下端はカレンダーが重なるので軽く締める */
.hg-hero::before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg, rgba(10,25,42,.30) 0%, rgba(10,25,42,0) 26%, rgba(10,25,42,0) 74%, rgba(10,25,42,.30) 100%);
  pointer-events:none;
}
.hg-hero__inner{position:relative;max-width:1120px;margin:0 auto;}
.hg-hero__eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.28);
  color:#fff;border-radius:999px;padding:.42em 1.15em;
  font-size:13px;font-weight:700;letter-spacing:.04em;margin:0 0 22px;
}
.hg-hero__title{
  font-weight:900;
  font-size:clamp(30px,4.6vw,54px);
  line-height:1.28;
  letter-spacing:-.02em;
  margin:0 0 20px;
  color:#fff;
  text-shadow:0 2px 18px rgba(0,0,0,.28);
}
.hg-hero__title .hl{
  color:var(--hg-amber);
  position:relative;
  white-space:nowrap;
}
.hg-hero__lead{
  font-size:clamp(15px,1.5vw,17px);line-height:1.9;
  color:rgba(255,255,255,.9);margin:0 0 30px;max-width:40em;
}
.hg-hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin:0 0 40px;}

/* ---------- stats ---------- */
.hg-stats{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:1px;background:rgba(255,255,255,.22);
  border:1px solid rgba(255,255,255,.22);border-radius:var(--hg-radius-lg);
  overflow:hidden;max-width:760px;
  list-style:none;margin:0;padding:0;
}
.hg-stats li::marker{content:none;}
.hg-stats__item{
  background:rgba(15,43,70,.55);
  padding:18px 14px;text-align:center;
  backdrop-filter:blur(2px);
}
.hg-stats__num{
  display:block;font-weight:900;line-height:1.1;
  font-size:clamp(26px,3.4vw,38px);color:var(--hg-amber);letter-spacing:-.02em;
}
.hg-stats__num .u{font-size:.5em;margin-left:.15em;color:#fff;font-weight:700;}
.hg-stats__label{display:block;font-size:12.5px;color:rgba(255,255,255,.86);margin-top:6px;line-height:1.6;}

/* ---------- buttons ---------- */
.hg-btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  min-height:56px;min-width:56px;padding:.85em 2em;
  border-radius:8px;font-weight:700;font-size:16.5px;text-decoration:none;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease;
  border:2px solid transparent;
}
.hg-btn:hover{text-decoration:none;transform:translateY(-2px);}
.hg-btn--primary{
  background:var(--hg-orange);color:#fff !important;
  box-shadow:0 4px 0 var(--hg-orange-deep),0 10px 24px rgba(240,98,15,.30);
}
.hg-btn--primary:hover{background:#FF6D18;box-shadow:0 6px 0 var(--hg-orange-deep),0 16px 32px rgba(240,98,15,.36);}
.hg-btn--ghost{background:rgba(255,255,255,.08);color:#fff !important;border-color:rgba(255,255,255,.55);}
.hg-btn--ghost:hover{background:rgba(255,255,255,.16);}
.hg-btn--onlight{background:#fff;color:var(--hg-navy) !important;border-color:var(--hg-navy);}
.hg-btn--onlight:hover{background:var(--hg-ice);}
.hg-btn__arrow{font-size:1.1em;line-height:1;}

/* =========================================================
   ヒーローに重なる 塗装カレンダー（このサイトの看板）
   ========================================================= */
.hg-calendar{
  position:relative;z-index:2;
  max-width:1120px;margin:-70px auto 0;
  background:#fff;border:1px solid var(--hg-line);
  border-radius:var(--hg-radius-lg);box-shadow:var(--hg-shadow-lift);
  padding:clamp(22px,3vw,34px);
}
.hg-calendar__head{display:flex;flex-wrap:wrap;align-items:center;gap:6px 18px;margin:0 0 6px;}
.hg-calendar__title{
  font-weight:900;font-size:clamp(19px,2.2vw,24px);margin:0;color:var(--hg-ink);
  letter-spacing:-.01em;
}
.hg-calendar__tag{
  background:var(--hg-navy);color:#fff;border-radius:4px;
  font-size:12px;font-weight:700;padding:.3em .8em;letter-spacing:.04em;
}
.hg-calendar__sub{font-size:14px;color:var(--hg-ink-2);margin:0 0 18px;}
.hg-calendar__grid{
  display:grid;grid-template-columns:repeat(12,1fr);gap:6px;
  list-style:none;margin:0;padding:0;
}
.hg-calendar__grid li{
  border-radius:8px;padding:12px 2px 11px;text-align:center;
  display:flex;flex-direction:column;align-items:center;gap:5px;
  font-weight:700;line-height:1.25;border:1px solid transparent;
}
.hg-calendar__grid li.is-ok{
  background:linear-gradient(180deg,#FFF1E2,#FFE3C7);
  border-color:#F6C48D;color:#8A3D05;
}
.hg-calendar__grid li.is-cond{
  background:var(--hg-ice);border-color:#C9DEED;color:#1F4A6B;
}
.hg-calendar__month{font-size:14.5px;letter-spacing:-.02em;}
.hg-calendar__icon{font-size:15px;line-height:1;}
.hg-calendar__mark{font-size:14px;line-height:1;opacity:.85;}
.hg-calendar__note{
  font-size:13px;color:var(--hg-ink-2);margin:16px 0 0;line-height:1.8;
  background:var(--hg-band);border-radius:8px;padding:12px 16px;
}

/* =========================================================
   セクション共通
   ========================================================= */
.hg-section{max-width:1120px;margin:0 auto;padding:clamp(52px,6vw,84px) 0 0;}
.hg-band{background:var(--hg-band);margin-top:clamp(52px,6vw,84px);padding:clamp(44px,5vw,68px) 0;}
.hg-section-head{margin:0 0 30px;}
.hg-section-title{
  font-weight:900;font-size:clamp(23px,2.9vw,32px);line-height:1.4;
  margin:0 0 8px;color:var(--hg-ink);letter-spacing:-.02em;
  border:0;background:transparent;padding:0;
}
/* Cocoonのh2装飾を打ち消す */
.entry-content .hg-section-title,
.entry-content .hg-calendar__title{
  border:0 !important;background:transparent !important;
  padding:0 !important;border-radius:0 !important;
}
.entry-content .hg-section-title{margin:0 0 8px !important;}
.entry-content .hg-calendar__title{margin:0 !important;}
.hg-section-lead{font-size:15.5px;color:var(--hg-ink-2);margin:0;}
.hg-section-title .accent{color:var(--hg-orange-deep);}

/* =========================================================
   カード
   ========================================================= */
.hg-cards{
  display:grid;gap:20px;grid-template-columns:repeat(3,1fr);
  list-style:none;padding:0;margin:0;
}
.hg-cards--2{grid-template-columns:repeat(2,1fr);}
.hg-card{
  background:#fff;border:1px solid var(--hg-line);border-radius:var(--hg-radius);
  box-shadow:var(--hg-shadow);overflow:hidden;display:flex;flex-direction:column;
  transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;
}
a.hg-card{text-decoration:none;color:var(--hg-ink);}
a.hg-card:hover{
  transform:translateY(-3px);box-shadow:var(--hg-shadow-lift);
  border-color:#C6D3DD;color:var(--hg-ink);text-decoration:none;
}
/* 画像スロット（Chromedesignの画像が入るまではグラデで代替） */
.hg-card__media{
  aspect-ratio:16/9;background:var(--hg-ice);
  background-size:cover;background-position:center;
  border-bottom:1px solid var(--hg-line);position:relative;flex:none;
}
/* カテゴリー写真（2026-08-02 撮り下ろし相当のAI生成画像） */
.hg-card__media--cost{background-image:url('/wp-content/uploads/2026/08/cat-cost.jpg');}
.hg-card__media--season{background-image:url('/wp-content/uploads/2026/08/cat-season.jpg');}
.hg-card__media--damage{background-image:url('/wp-content/uploads/2026/08/cat-damage.jpg');}
.hg-card__media--materials{background-image:url('/wp-content/uploads/2026/08/cat-materials.jpg');}
.hg-card__media--contractor{background-image:url('/wp-content/uploads/2026/08/cat-contractor.jpg');}
.hg-card__media--subsidy{background-image:url('/wp-content/uploads/2026/08/cat-subsidy.jpg');}
/* 写真の上に置くバッジを読みやすくするため、上部だけ軽く暗くする */
.hg-card__media::after{
  content:"";position:absolute;inset:0 0 auto 0;height:64px;
  background:linear-gradient(180deg,rgba(10,25,42,.45),rgba(10,25,42,0));
  pointer-events:none;
}
a.hg-card:hover .hg-card__media{filter:brightness(1.04);}
.hg-card__media{transition:filter .18s ease;}
.hg-card__media img{width:100%;height:100%;object-fit:cover;display:block;}
.hg-card__badge{
  position:absolute;left:12px;top:12px;
  background:rgba(15,43,70,.88);color:#fff;border-radius:4px;
  font-size:11.5px;font-weight:700;padding:.35em .75em;letter-spacing:.04em;
}
.hg-card__body{padding:20px 20px 22px;display:flex;flex-direction:column;gap:8px;flex:1;}
.hg-card__title{font-weight:700;font-size:18px;margin:0;color:var(--hg-ink);line-height:1.55;}
.hg-card__text{font-size:14.5px;color:var(--hg-ink-2);margin:0;line-height:1.8;}
.hg-card__more{
  margin-top:auto;padding-top:10px;font-size:14px;font-weight:700;color:var(--hg-sky-deep);
}

/* ---------- 数字つき特徴カード ---------- */
.hg-feature{
  background:#fff;border:1px solid var(--hg-line);border-radius:var(--hg-radius);
  padding:26px 24px;box-shadow:var(--hg-shadow);position:relative;overflow:hidden;
}
.hg-feature::after{
  content:attr(data-n);position:absolute;right:14px;top:2px;
  font-size:70px;font-weight:900;color:var(--hg-ice);line-height:1;z-index:0;
}
.hg-feature > *{position:relative;z-index:1;}
.hg-feature__title{
  font-weight:900;font-size:19px;margin:0 0 10px;color:var(--hg-navy);line-height:1.5;
}
.hg-feature__text{font-size:14.5px;color:var(--hg-ink-2);margin:0;line-height:1.85;}

/* ---------- バッジ・注記 ---------- */
.hg-badge{
  display:inline-block;background:var(--hg-green-deep);color:#fff;border-radius:4px;
  padding:.3em .9em;font-weight:700;font-size:12.5px;letter-spacing:.03em;
}
.hg-note{
  background:#fff;border:1px solid var(--hg-line);border-left:5px solid var(--hg-orange);
  border-radius:0 var(--hg-radius) var(--hg-radius) 0;
  padding:20px 24px;margin:2em 0;font-size:15px;line-height:1.85;
}
.hg-note--warn{border-left-color:var(--hg-danger-deep);}
.hg-note__title{font-weight:700;display:block;margin-bottom:.4em;color:var(--hg-ink);}

/* ---------- CTA帯 ---------- */
.hg-cta{
  background:linear-gradient(135deg,var(--hg-navy-2),var(--hg-navy));
  border-radius:var(--hg-radius-lg);padding:clamp(30px,4vw,48px);
  color:#fff;text-align:center;margin:clamp(52px,6vw,84px) auto 0;max-width:1120px;
}
.hg-cta__title{font-weight:900;font-size:clamp(21px,2.6vw,28px);margin:0 0 10px;color:#fff;letter-spacing:-.01em;}
.hg-cta__text{font-size:15px;color:rgba(255,255,255,.86);margin:0 0 24px;line-height:1.85;}

/* =========================================================
   お問い合わせフォーム
   ========================================================= */
.hg-form{
  background:var(--hg-band);border:1px solid var(--hg-line);
  border-radius:var(--hg-radius-lg);padding:clamp(20px,3vw,32px);margin:1.6em 0 2.4em;
}
.hg-form__row{margin:0 0 22px;display:flex;flex-direction:column;gap:7px;}
.hg-form__label{font-weight:700;font-size:15px;color:var(--hg-ink);display:flex;align-items:center;gap:9px;}
.hg-form__req{
  background:var(--hg-danger-deep);color:#fff;border-radius:3px;
  font-size:11px;font-weight:700;padding:.2em .6em;letter-spacing:.04em;
}
.hg-form__opt{
  background:#8A97A3;color:#fff;border-radius:3px;
  font-size:11px;font-weight:700;padding:.2em .6em;letter-spacing:.04em;
}
.hg-form__help{font-size:13px;color:var(--hg-ink-2);line-height:1.7;}
.hg-form input[type="text"],
.hg-form input[type="email"],
.hg-form input[type="url"],
.hg-form select,
.hg-form textarea{
  width:100%;box-sizing:border-box;
  border:1px solid #C6D3DD;border-radius:8px;background:#fff;
  padding:13px 14px;font-size:16px;font-family:inherit;color:var(--hg-ink);
  line-height:1.7;transition:border-color .15s ease,box-shadow .15s ease;
}
.hg-form input:focus,.hg-form select:focus,.hg-form textarea:focus{
  border-color:var(--hg-sky-deep);box-shadow:0 0 0 3px rgba(47,143,208,.18);outline:none;
}
.hg-form textarea{resize:vertical;min-height:170px;}
.hg-form select{appearance:none;-webkit-appearance:none;background-image:none;padding-right:38px;}
.hg-form__note{font-size:13.5px;color:var(--hg-ink-2);line-height:1.8;margin:0 0 20px;}
.hg-form__submit{margin:0;}
.hg-form__submit .hg-btn{width:100%;max-width:340px;}
/* ハニーポット（人には見せない・スクリーンリーダーからも外す） */
.hg-form__hp{position:absolute !important;left:-9999px;width:1px;height:1px;overflow:hidden;}
.hg-form-msg{margin:0 0 1.6em;}
.hg-form-msg--ok{border-left-color:var(--hg-green-deep);}

/* ---------- tables ---------- */
.entry-content table{
  border-collapse:separate;border-spacing:0;width:100%;
  border:1px solid var(--hg-line);border-radius:var(--hg-radius);overflow:hidden;
}
.entry-content table th{
  background:var(--hg-band);color:var(--hg-ink);font-weight:700;
  border:0;border-bottom:1px solid var(--hg-line);padding:.9em 1em;text-align:left;
}
.entry-content table td{border:0;border-bottom:1px solid var(--hg-line);padding:.9em 1em;}
.entry-content table tr:last-child td,.entry-content table tr:last-child th{border-bottom:0;}

/* ---------- footer ---------- */
.footer{background:var(--hg-navy);color:rgba(255,255,255,.86);}
.footer a{color:rgba(255,255,255,.92);}
.footer a:hover{color:var(--hg-amber);}

/* =========================================================
   front page only - Cocoonの記事用パーツを止めて全幅にする
   ========================================================= */
body.home .article-header,body.home .entry-title,
body.home .date-tags,body.home .post-date,body.home .post-update,
body.home .sns-share,body.home .sns-share-message,
body.home .sns-follow,body.home .sns-follow-message,
body.home #toc,body.home .toc,body.home .breadcrumb,
body.home .entry-categories-tags,body.home .author-info,
body.home .pager-post-navi,body.home #related-entries,
body.home .eye-catch-wrap{display:none !important;}
body.home #sidebar,body.home .sidebar{display:none !important;}
body.home #main,body.home .main{
  width:100% !important;max-width:100% !important;float:none !important;
  margin:0 !important;padding:0 !important;background:transparent;border:0;
}
body.home #content-in,body.home #content .wrap{
  width:auto !important;max-width:100% !important;padding:0 !important;margin:0 !important;
}
body.home #content{margin-top:0;padding-top:0;}
body.home .article{padding:0;}
body.home .entry-content{margin:0;}
body.home .entry-content > :first-child{margin-top:0;}
/* 記事本文用の左ボーダーh2をトップでは使わない */
body.home .entry-content h2{border-left:0;padding-left:0;}
/* セクションの左右余白（ヒーローは全幅のまま） */
body.home .hg-section,body.home .hg-cta{padding-left:20px;padding-right:20px;box-sizing:border-box;}
body.home .hg-band > .hg-section{padding-top:0;}
body.home .hg-calendar{width:calc(100% - 40px);}

/* =========================================================
   responsive
   ========================================================= */
.hg-hero,.hg-calendar,.hg-card,.hg-note,.hg-cta,.hg-cards,.hg-feature{
  box-sizing:border-box;max-width:100%;
}
@media screen and (max-width:1023px){
  .hg-cards{grid-template-columns:repeat(2,1fr);}
}
@media screen and (max-width:834px){
  body.home #content-in,body.home #content .wrap,
  body.home #main,body.home .main,
  body.home .article,body.home .entry-content{
    width:auto !important;max-width:100% !important;
  }
  .hg-hero{
    padding:44px 20px 110px;
    background-image:
      linear-gradient(180deg,
        rgba(10,25,42,.88) 0%,
        rgba(10,25,42,.78) 45%,
        rgba(10,25,42,.90) 100%),
      url('/wp-content/uploads/2026/08/hero-960.jpg');
    background-position:center 62%;
  }
  .hg-btn{flex:1 1 100%;}
  .hg-calendar{margin-top:-64px;}
  .hg-calendar__grid{grid-template-columns:repeat(6,1fr);}
  .hg-stats{max-width:100%;}
}
@media screen and (max-width:600px){
  .hg-cards{grid-template-columns:1fr;}
  .hg-calendar__grid{grid-template-columns:repeat(4,1fr);}
  .hg-stats{grid-template-columns:1fr;}
  .hg-stats__item{display:flex;align-items:baseline;justify-content:center;gap:10px;padding:14px;}
  .hg-stats__num{font-size:26px;}
  .hg-stats__label{margin-top:0;}
}
@media screen and (max-width:480px){
  body{font-size:16px;}
  .entry-content h2,.article h2{font-size:21px;}
  .entry-content h3,.article h3{font-size:18px;}
  .hg-calendar{padding:18px 14px;}
  .hg-calendar__grid{grid-template-columns:repeat(3,1fr);}
}

/* =========================================================
   accessibility
   ========================================================= */
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{
    animation-duration:.01ms !important;animation-iteration-count:1 !important;
    transition-duration:.01ms !important;scroll-behavior:auto !important;
  }
  .entry-card-wrap:hover,.hg-card:hover,a.hg-card:hover,.hg-btn:hover{transform:none;}
}
.hg-sr-only{
  position:absolute !important;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* HG-DESIGN-END */