@charset "UTF-8";
/* ============================================================================
   不動産のチカラ ブランド調整レイヤー
   ----------------------------------------------------------------------------
   うるチカラ側では Code Snippets（「リニューアル v21」「PCトップをスマホ寄せ」等）に
   分散していた装飾を、こちらでは子テーマ内の1ファイルに集約している。
   読み込み順は style.css → drawer.css → uc-unified.css → 本ファイル（最後）。
   配色はネイビー×ライトブルー。
   ============================================================================ */

:root{
  --fdz-navy:      #0d2b4e;  /* 主色：見出し・カテゴリバッジ・フッター */
  --fdz-navy-deep: #081d36;
  --fdz-blue:      #1a7fc1;  /* 副色：リンク・ボタン・アクティブタブ */
  --fdz-blue-dark: #14639a;
  --fdz-blue-soft: #eef5fb;  /* 淡い背景 */
  --fdz-ink:       #1a1d26;  /* 本文 */
  --fdz-muted:     #6b7280;  /* 日付など */
  --fdz-line:      #e6ebf2;
}

/* ============================================================================
   1. ヘッダー
   ============================================================================ */
.site-title .site-description{
  display:block;
  font-size:12px;
  color:var(--fdz-muted);
  letter-spacing:.02em;
  margin-top:2px;
}
.site-header-main .primary-menu a{ color:var(--fdz-navy); font-weight:600; }
.site-header-main .primary-menu a:hover{ color:var(--fdz-blue); }
.fdz-icon-item img{ display:block; }

/* ------------------------------------------------------------------
   ハンバーガーボタンのクリック判定を確保する。
   - ロゴの <a> が横幅いっぱいに広がりボタンの上に重なってタップを奪っていた
   - uc-unified.css がスマホで z-index:5 まで下げるため、ドロワー(#g-nav,
     z-index:999)が開くとボタンが裏に隠れて閉じられなくなる
   どちらも「ボタンを最前面に出す」ことで解消する。
   ------------------------------------------------------------------ */
.openbtn1{ z-index:1000 !important; }
@media (max-width:768px){
  .openbtn1{ position:absolute !important; top:0 !important; right:0 !important; z-index:1000 !important; }
  /* ロゴのリンク領域をボタンの手前で止める */
  .site-header-main .site-title{ max-width:calc(100% - 62px); }
}

/* 親テーマは .primary-menu を justify-content:space-between にしており、
   うるチカラ（7項目）と違い当サイトはヘッダー3項目なので間延びする。右寄せに変更。 */
@media (min-width:769px){
  #site-header-menu .primary-menu{
    justify-content:flex-end !important;
    gap:34px;
    align-items:center;
  }
}

/* ------------------------------------------------------------------
   固定ヘッダー(.site-header-main は position:fixed / height:7.2vw)の
   ぶんだけトップの中身を押し下げる。
   うるチカラでは .header-wrapper（ヒーロースライダー）の margin-top が
   この役目を担っていたが、当サイトではそのブロックを撤去したため
   #top_page 側で明示的にオフセットを取る。
   ※スマホ(<=768px)では uc-unified.css が固定ヘッダーを解除するので不要。
   ------------------------------------------------------------------ */
@media (min-width:769px){
  #top_page{ padding-top:calc(7.2vw + 18px); }
}

/* ============================================================================
   2. 記事カード（カテゴリ／アーカイブ／検索の共通レイアウト）
      サムネはアスペクト比16:10に固定し、contain で見切れを防ぐ。
   ============================================================================ */
.entry-thumbnail,
.archiveWrap .entry-thumbnail,
figure.entry-thumbnail{
  background:var(--fdz-blue-soft) !important;
  overflow:hidden !important;
  aspect-ratio:16/10 !important;
  width:100% !important;
  height:auto !important;
  border-radius:8px !important;
  display:block !important;
  margin:0 !important;
}
.entry-thumbnail img,
.entry-thumbnail .wp-post-image,
figure.entry-thumbnail img{
  object-fit:contain !important;
  object-position:center !important;
  width:100% !important;
  height:100% !important;
  background:var(--fdz-blue-soft) !important;
  display:block !important;
}

/* カード全体を縦並び（カテゴリ → サムネ → 日付 → タイトル） */
.archiveWrap .archive .article-link{
  display:flex !important;
  flex-direction:column !important;
  gap:10px !important;
  text-decoration:none !important;
  position:relative;
}
.archiveWrap .archive .cat{ order:1 !important; align-self:flex-start; }
.archiveWrap .archive .entry-thumbnail{ order:2 !important; }
.archiveWrap .archive .entry-content{ order:3 !important; }
.archiveWrap .archive .date{ font-size:13px; color:var(--fdz-muted); margin:0; }

/* カテゴリバッジ：画像に被らないよう通常フローに置く */
.cat,
.archive .cat,
.archiveWrap .archive .cat,
.newsWrap .cat{
  position:static !important;
  top:auto !important; left:auto !important; right:auto !important; bottom:auto !important;
  display:inline-block !important;
  font-size:14px !important;
  font-weight:700 !important;
  padding:6px 14px !important;
  border-radius:6px !important;
  background:var(--fdz-navy) !important;
  color:#fff !important;
  letter-spacing:.02em !important;
  margin:0 0 8px 0 !important;
  line-height:1.2 !important;
  z-index:auto !important;
}

/* 記事タイトルの字面を統一 */
.entry-title-new,
.archiveWrap .archive .entry-title-new,
p.entry-title-new{
  font-family:"Hiragino Kaku Gothic ProN","Yu Gothic UI","Noto Sans JP","Hiragino Sans","Meiryo",sans-serif !important;
  font-weight:800 !important;
  color:var(--fdz-navy) !important;
  font-size:17px !important;
  line-height:1.55 !important;
  letter-spacing:.01em !important;
}

/* ============================================================================
   3. スマホ（<=640px）のカード：左サムネの行リストに切り替える
   ============================================================================ */
@media (max-width:640px){
  .archiveWrap{ display:flex; flex-direction:column; gap:18px; }
  .archiveWrap .archive{ list-style:none; }
  .archiveWrap .archive .article-link{
    display:grid !important;
    grid-template-columns:130px 1fr !important;
    grid-template-rows:auto auto !important;
    grid-template-areas:"cat cat" "thumb content" !important;
    gap:6px 12px !important;
    align-items:start !important;
  }
  .archiveWrap .archive .cat{
    grid-area:cat !important;
    justify-self:start !important;
    width:auto !important;
    white-space:nowrap !important;
    margin:0 !important;
    font-size:13px !important;
    padding:5px 10px !important;
  }
  .archiveWrap .archive .entry-thumbnail{
    grid-area:thumb !important;
    width:130px !important;
    margin:0 !important;
    border-radius:8px !important;
  }
  .archiveWrap .archive .entry-thumbnail img{
    width:100% !important; height:90px !important;
    object-fit:contain !important; display:block !important;
    background:var(--fdz-blue-soft) !important;
  }
  .archiveWrap .archive .entry-content{ grid-area:content !important; min-width:0 !important; }
  .archiveWrap .archive .date{ font-size:12px; margin:2px 0 4px; }
  .archiveWrap .archive .entry-title-new{ font-size:15px !important; margin:0; word-break:break-word; }

  body, p, li{ font-size:16px; line-height:1.85; -webkit-text-size-adjust:100%; }
  h1{ font-size:26px !important; line-height:1.45 !important; }
  h2{ font-size:22px !important; line-height:1.45 !important; }
  h3{ font-size:19px !important; line-height:1.5 !important; }
  .entry-title{ font-size:22px !important; line-height:1.5 !important; }
}

/* ============================================================================
   4. トップページ（#top_page）を PC でも Yahoo!風に寄せる
      うるチカラのスニペット「PCトップをスマホ寄せ 2026-06-19」相当。
      - モバイル用の検索バーはPCでは隠し、カテゴリタブだけ常時表示
      - PC専用検索窓とタブの横幅を揃える（980px・中央寄せ）
   ============================================================================ */
@media (min-width:769px){
  #top_page .uc-mb{
    display:block !important;
    position:static !important;
    box-shadow:none !important;
    z-index:auto !important;
  }
  #top_page .uc-mb-search{ display:none !important; }
  #top_page .uc-mb-tabs{
    max-width:980px !important;
    margin:0 auto !important;
    justify-content:center;
  }
  #top_page .uc-pc-search{
    max-width:980px !important;
    margin-left:auto !important;
    margin-right:auto !important;
  }
}

/* PCのカテゴリタブ（黒文字の整った横並び。アクティブはライトブルーの下線） */
@media (min-width:769px){
  #top_page .uc-mb-tabs{
    display:flex !important; flex-wrap:nowrap; align-items:center;
    border-top:1px solid var(--fdz-line); border-bottom:1px solid var(--fdz-line);
    background:#fff; overflow-x:auto;
  }
  #top_page .uc-mb-tabs::-webkit-scrollbar{ display:none; }
  #top_page .uc-mb-tabs a{
    padding:9px 13px !important; font-size:14px !important; font-weight:600 !important;
    color:var(--fdz-ink) !important; white-space:nowrap; text-decoration:none;
    position:relative; flex:0 0 auto;
  }
  #top_page .uc-mb-tabs a::before{ display:none !important; }
  #top_page .uc-mb-tabs a:hover{ color:var(--fdz-blue) !important; }
  #top_page .uc-mb-tabs a.on{ color:var(--fdz-ink) !important; box-shadow:inset 0 -3px 0 var(--fdz-blue); }
}

/* ============================================================================
   4-b. トップの検索窓・ページ送り・PC 2列リスト
        （うるチカラでは post-top.php のインラインstyleにあったぶん）
   ============================================================================ */

/* PC専用検索窓はスマホでは隠す（スマホは .uc-mb 内の検索バーを使う） */
.uc-pc-search{ display:none; }

@media (max-width:768px){
  #top_page{ padding-top:0 !important; }
  #top_page .newsWrap{ margin:0 !important; }
}

@media (min-width:769px){
  .uc-pc-search{ display:block; max-width:600px; margin:28px auto 6px; padding:0 20px; }
  .uc-pc-search form{
    display:flex; align-items:center; height:50px; background:#f1f2f4;
    border:1px solid #e2e4e8; border-radius:10px; padding:0 6px 0 16px; margin:0;
  }
  .uc-pc-search .uc-mb-mag{ width:20px; height:20px; fill:#9aa1ad; flex:0 0 auto; }
  .uc-pc-search input[type="search"]{
    flex:1; min-width:0; border:0; outline:0; background:transparent;
    font-size:16px; margin-left:10px; color:#333; -webkit-appearance:none;
  }
  .uc-pc-search .uc-mb-go{
    flex:0 0 auto; border:0; background:var(--fdz-blue); color:#fff;
    font-size:14px; font-weight:700; padding:10px 22px; border-radius:8px; cursor:pointer;
  }

  /* 新着リストを2列のコンパクトな行リストに（1画面あたりの記事数を増やす） */
  #top_page .newsWrap > .archiveWrap{
    display:grid !important; grid-template-columns:1fr 1fr; column-gap:40px; row-gap:0;
    max-width:1120px; margin:20px auto 0 !important; padding:0 20px;
  }
  #top_page .newsWrap .archive{
    width:auto !important; margin:0 !important; padding:0 !important;
    border-bottom:1px solid #eee; background:#fff; list-style:none;
  }
  #top_page .newsWrap .archive .article-link{
    display:grid !important; grid-template-columns:124px 1fr !important;
    grid-template-areas:"cat cat" "thumb content" !important;
    column-gap:14px; align-items:start; padding:13px 2px; text-decoration:none;
  }
  #top_page .newsWrap .archive figure{
    grid-area:thumb !important; width:124px !important; height:78px !important;
    min-height:0 !important; margin:0 !important; border-radius:6px; overflow:hidden;
    aspect-ratio:auto !important;
    background-color:var(--fdz-blue-soft); background-size:cover !important;
    background-position:center !important; background-repeat:no-repeat;
  }
  #top_page .newsWrap .archive figure.uc-mb-thumb{ background-image:var(--uc-thumb) !important; }
  #top_page .newsWrap .archive figure img{ display:none !important; }
  /* トップの一覧ではカテゴリを塗りバッジではなくプレーンな文字にして縦幅を節約 */
  #top_page .newsWrap .archive .cat{
    grid-area:cat !important; justify-self:start; display:inline-block;
    margin:0 0 3px !important; padding:0 !important;
    background:transparent !important; background-color:transparent !important;
    color:var(--fdz-blue-dark) !important; font-size:12px !important;
    line-height:1.4 !important; font-weight:700; border-radius:0 !important;
  }
  #top_page .newsWrap .archive .entry-content{
    grid-area:content !important; display:flex; flex-direction:column; min-width:0; padding:0;
  }
  #top_page .newsWrap .archive .entry-content .entry-title-new{
    order:1; margin:0 !important; font-size:15px !important; line-height:1.5 !important;
    font-weight:600; color:var(--fdz-ink) !important;
    display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
  }
  #top_page .newsWrap .archive .entry-content .date{
    order:2; margin:5px 0 0 !important; font-size:12px; color:#9aa1ad;
  }
}

/* 前/次ページ送り（PC・スマホ共通。PCは中央寄せ） */
.uc-mb-pager{ display:flex; justify-content:center; gap:12px; max-width:760px; margin:24px auto 40px; padding:0 16px; }
.uc-mb-more{
  flex:0 1 280px; padding:14px; text-align:center; background:var(--fdz-blue); color:#fff !important;
  font-size:15px; font-weight:700; text-decoration:none; border-radius:8px;
}
.uc-mb-more:hover,.uc-mb-more:active{ background:var(--fdz-blue-dark); opacity:1 !important; }
.uc-mb-more.uc-prev{ flex:0 1 160px; background:#fff; color:var(--fdz-blue) !important; border:1px solid var(--fdz-blue); }
@media (max-width:768px){
  .uc-mb-pager{ gap:10px; margin:16px 12px 28px; padding:0; max-width:none; }
  .uc-mb-more{ flex:1; padding:15px; }
  .uc-mb-more.uc-prev{ flex:0 0 38%; }
}

/* ============================================================================
   5. 記事末尾CTA（宅建業者向け）
   ============================================================================ */
.fdz-cta-block{
  margin:48px 0 16px;
  padding:28px 24px;
  background:var(--fdz-blue-soft);
  border-radius:12px;
  border-left:5px solid var(--fdz-blue);
}
.fdz-cta-block h3{
  font-size:20px; margin:0 0 12px; color:var(--fdz-navy);
  border-left:0 !important; padding-left:0 !important;
}
.fdz-cta-block p{ margin:0 0 16px; line-height:1.9; font-size:15px; color:#2d3748; }
.fdz-cta-actions{ display:flex; gap:12px; flex-wrap:wrap; }
.fdz-cta-primary{
  display:inline-block; padding:13px 26px; background:var(--fdz-blue); color:#fff !important;
  text-decoration:none; border-radius:8px; font-weight:700; font-size:15px;
}
.fdz-cta-primary:hover{ background:var(--fdz-blue-dark); opacity:1 !important; }
.fdz-cta-note{ font-size:13px !important; color:var(--fdz-muted) !important; margin:14px 0 0 !important; }

/* ============================================================================
   6. フッター
   ============================================================================ */
.site-footer{ background:var(--fdz-navy) !important; color:#fff; padding-bottom:0 !important; }
.site-footer a{ color:#cfe2f3; }
.site-footer a:hover{ color:#fff; opacity:1 !important; }
.site-footer .container{ text-align:center !important; padding:36px 16px 28px; }
.footer-site-title{ text-align:center !important; margin:0 auto; }
.footer-site-title img{ max-width:260px; width:100%; height:auto; }
.fdz-footer-cats ul{
  list-style:none; margin:22px auto 0; padding:0; max-width:900px;
  display:flex; flex-wrap:wrap; gap:12px 22px; justify-content:center;
}
.fdz-footer-cats li{ margin:0; }
.fdz-footer-cats a{ font-size:14px; text-decoration:none; }
.fdz-footer-legal{
  margin:24px auto 0 !important; font-size:13px; line-height:1.9;
  color:#b7cbe0 !important; text-align:center !important; max-width:720px;
}
.footer-site-info{
  background:var(--fdz-navy-deep) !important; color:#9fb6cd;
  font-size:12px; text-align:center; padding:14px 12px;
}

/* ============================================================================
   6-b. サイドバー(#secondary)
        Twenty Sixteen 標準のブロックウィジェットは見出しが巨大な明朝で出るため、
        本文下の落ち着いた帯として整える（うるチカラの #secondary と同じ扱い）。
   ============================================================================ */
#secondary.widget-area{
  background:#f7f9fc;
  border-top:1px solid var(--fdz-line);
  margin:56px calc(50% - 50vw) 0;
  padding:36px 16px 40px;
  width:100vw;
}
#secondary .widget{
  max-width:1120px; margin:0 auto 28px; padding:0; border:0; font-size:15px !important;
}
#secondary .widget:last-child{ margin-bottom:0; }
#secondary h2,
#secondary .wp-block-heading,
#secondary .widget-title{
  font-family:"Hiragino Kaku Gothic ProN","Yu Gothic UI","Noto Sans JP","Hiragino Sans","Meiryo",sans-serif !important;
  font-size:17px !important;
  font-weight:800 !important;
  color:var(--fdz-navy) !important;
  margin:0 0 12px !important;
  padding:0 0 8px !important;
  border-bottom:2px solid var(--fdz-blue);
  display:inline-block;
  line-height:1.4 !important;
}
#secondary ul,
#secondary ol{ list-style:none; margin:0; padding:0; }
#secondary li{ margin:0 0 8px; font-size:15px; line-height:1.7; }
#secondary a{ color:var(--fdz-blue-dark); text-decoration:none; }
#secondary a:hover{ text-decoration:underline; opacity:1 !important; }
#secondary .wp-block-search__label{
  font-size:17px !important; font-weight:800; color:var(--fdz-navy);
  display:inline-block; margin:0 0 12px; padding:0 0 8px; border-bottom:2px solid var(--fdz-blue);
}
/* 親テーマの .widget_search がフォームを中央寄せするため、他ウィジェットと左端を揃える */
#secondary .widget_search,
#secondary .widget_search form{ margin:0 auto 28px; padding:0; text-align:left; }
#secondary .wp-block-search__inside-wrapper{ max-width:520px; display:flex; }
#secondary .wp-block-search__input{
  flex:1; min-width:0;
  border:1px solid #d9dfe7; border-radius:8px 0 0 8px; padding:10px 12px; font-size:15px;
}
#secondary .wp-block-search__button{
  flex:0 0 auto; white-space:nowrap; width:auto; min-width:88px;
  background:var(--fdz-blue); color:#fff; border:0; border-radius:0 8px 8px 0;
  padding:10px 20px; font-weight:700; font-size:15px; cursor:pointer;
}
#secondary .wp-block-search__button:hover{ background:var(--fdz-blue-dark); }

/* ============================================================================
   7. 目次プラグイン(ez-toc)が横にはみ出すのを防ぐ
   ============================================================================ */
html body #ez-toc-container,
html body #ez-toc-container ul,
html body #ez-toc-container li,
html body #ez-toc-container a{
  max-width:100% !important; width:auto !important;
  white-space:normal !important; overflow-wrap:anywhere !important;
  box-sizing:border-box !important;
}
html body #ez-toc-container{ padding:12px !important; width:100% !important; }

/* ============================================================================
   8. 記事がまだ無いとき
   ============================================================================ */
.fdz-empty{ list-style:none; padding:48px 16px; text-align:center; color:var(--fdz-muted); }
