/* Generated from site/assets/css/style.css; do not edit. */
/* ---- ヘッダー ------------------------------------------------------------ */
.ch-site-header{
  position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);
  backdrop-filter:blur(6px);border-bottom:1px solid var(--ch-line);
}
.ch-header-inner{
  display:flex;align-items:center;gap:1rem;
  width:min(100% - 2rem,var(--ch-wrap));margin-inline:auto;padding-block:.7rem;
}
/* ロゴマーク＋事務所名を横並びに。マークは事務所名の左に置き、
   縦の中心を名称2行の中心に合わせる */
.ch-site-logo{display:flex;align-items:center;gap:.6rem;text-decoration:none;color:var(--ch-navy);line-height:1.3;flex:1 1 auto;min-width:0}
.ch-site-logo-mark{width:38px;height:38px;flex:0 0 auto}
.ch-site-logo-text{display:flex;flex-direction:column;min-width:0}
.ch-site-logo b{
  font-family:var(--ch-font-display);font-size:1.12rem;font-weight:700;letter-spacing:.02em;
  /* keep-all にすると和文は自動で折り返されなくなり、
     HTML に置いた <wbr>（中日法務／行政書士事務所）の位置でだけ改行される */
  word-break:keep-all;line-height:1.3;
}
.ch-site-logo-en{font-size:.7rem;color:var(--ch-ink-sub);letter-spacing:.08em}
.ch-header-right{margin-left:auto;display:flex;align-items:center;gap:.8rem;flex:0 0 auto}

/* ---- グローバルナビ ------------------------------------------------------ */
.ch-nav-toggle{
  margin-left:auto;display:none;width:44px;height:44px;border:1px solid var(--ch-line);
  background:#fff;border-radius:6px;cursor:pointer;position:relative;flex:0 0 44px;
}
.ch-nav-toggle span,.ch-nav-toggle::before,.ch-nav-toggle::after{
  content:"";position:absolute;left:11px;width:22px;height:2px;background:var(--ch-navy);
  transition:.25s;
}
.ch-nav-toggle::before{top:14px}
.ch-nav-toggle span{top:21px}
.ch-nav-toggle::after{top:28px}
.ch-nav-toggle[aria-expanded="true"]::before{top:21px;transform:rotate(45deg)}
.ch-nav-toggle[aria-expanded="true"] span{opacity:0}
.ch-nav-toggle[aria-expanded="true"]::after{top:21px;transform:rotate(-45deg)}

.ch-gnav{background:var(--ch-navy)}
.ch-gnav ul{
  display:flex;flex-wrap:wrap;list-style:none;margin:0 auto;padding:0;
  width:min(100% - 2rem,var(--ch-wrap));
}
.ch-gnav a{
  display:block;padding:.85rem 1.1rem;color:#fff;text-decoration:none;
  font-size:.92rem;font-weight:500;border-bottom:3px solid transparent;
}
.ch-gnav a:hover,.ch-gnav a[aria-current="page"]{color:#fff;border-bottom-color:var(--ch-gold);background:var(--ch-navy-l)}
@media(max-width:820px){
  .ch-nav-toggle{display:block}
  .ch-gnav{display:none}
  .ch-gnav.ch-is-open{display:block}
  .ch-gnav ul{flex-direction:column}
  .ch-gnav a{border-bottom:1px solid rgba(255,255,255,.12)}
}

/* ---- 言語切替（ヘッダー右上のドロップダウン） --------------------------
   NN/g ほかの調査に基づく設計：
   - 常にヘッダー右上に置き、全ページで位置を変えない
   - 言語数が多いのでドロップダウンに畳む
   - 地球アイコン（言語選択の国際的な慣用記号）を添える
   - 選択肢は各言語の「その言語自身の表記」で並べる
   - モバイルでもファーストビュー内に残す
   -------------------------------------------------------------------- */
.ch-langsel{position:relative;font-size:.88rem}
.ch-langsel summary{
  display:flex;align-items:center;gap:.4rem;list-style:none;cursor:pointer;
  padding:.52rem .9rem;border:1.5px solid var(--ch-gold);border-radius:999px;
  color:var(--ch-navy);background:#fffdf8;white-space:nowrap;user-select:none;
  font-weight:700;transition:.15s;
}
.ch-langsel summary::-webkit-details-marker{display:none}
.ch-langsel summary:hover{background:var(--ch-gold);color:#3a2b0c;border-color:var(--ch-gold)}
.ch-langsel summary:focus-visible{outline:2px solid var(--ch-navy-l);outline-offset:2px}
.ch-langsel summary .ch-globe{width:1.15em;height:1.15em;flex:0 0 auto;stroke:currentColor;fill:none;stroke-width:1.7}
.ch-langsel summary .ch-label{font-size:.78rem;letter-spacing:.04em;opacity:.8;font-weight:700}
.ch-langsel summary .ch-divider{opacity:.4;font-weight:400}
.ch-langsel summary .ch-caret{
  /* 開閉のしるし。以前は「▾」という文字だったが、この字は Noto にどれにも
     入っておらず、端末まかせのフォントで描かれて大きさがまちまちだった。
     本文中の矢印と同じく、線で描いた山形にする。 */
  width:.4em;height:.4em;margin-left:.2rem;opacity:.7;
  border-right:2px solid currentColor;
  border-bottom:2px solid currentColor;
  transform:rotate(45deg) translate(-.1em,-.1em);
  transition:transform .18s ease;
}
.ch-langsel[open] summary .ch-caret{transform:rotate(-135deg) translate(-.05em,-.05em)}
/* 他言語の名前は、その言語のフォントで描く */
.ch-langsel ul{font-family:var(--ch-font-langsel)}
.ch-langsel[open] summary{background:var(--ch-gold);border-color:var(--ch-gold);color:#3a2b0c}
.ch-langsel ul{
  position:absolute;right:0;top:calc(100% + .4rem);z-index:60;
  width:min(22rem,calc(100vw - 1rem));min-width:13rem;
  box-sizing:border-box;margin:0;padding:.4rem;list-style:none;
  background:#fff;border:1px solid var(--ch-line);border-radius:8px;
  box-shadow:0 8px 24px rgba(18,58,99,.16);
}
.ch-langsel li{margin:0}
.ch-langsel ul a{
  display:flex;justify-content:space-between;gap:1rem;align-items:baseline;
  padding:.5rem .7rem;border-radius:5px;color:var(--ch-ink);text-decoration:none;
}
.ch-langsel ul a > span:first-child{flex:0 0 auto;white-space:nowrap}
.ch-langsel ul a:hover{background:var(--ch-bg-tint);color:var(--ch-navy)}
.ch-langsel ul a .ch-en{font-size:.76rem;color:var(--ch-ink-sub);text-align:right}
.ch-langsel ul a[aria-current="true"]{background:var(--ch-navy);color:#fff;font-weight:700}
.ch-langsel ul a[aria-current="true"] .ch-en{color:#c6d6e6}


/* ---- パンくず ------------------------------------------------------------ */
.ch-breadcrumb{font-size:.78rem;color:var(--ch-ink-sub);padding-block:.7rem;border-bottom:1px solid var(--ch-line)}
.ch-breadcrumb ol{display:flex;flex-wrap:wrap;gap:.4rem;list-style:none;margin:0;padding:0}
.ch-breadcrumb li+li::before{content:"\203A";margin-right:.4rem;color:var(--ch-line)}


/* ---- フッター ------------------------------------------------------------ */
.ch-site-footer{background:var(--ch-navy-d);color:#c6d6e6;padding-block:3rem;font-size:.88rem}
.ch-footer-grid{display:grid;gap:1.6rem}
@media(min-width:760px){.ch-footer-grid{grid-template-columns:1.3fr 1fr 1fr}}
.ch-site-footer h2{font-family:var(--ch-font-display);color:#fff;font-size:1rem;margin:0 0 .7rem;border:0;padding:0}
.ch-site-footer ul{list-style:none;padding:0;margin:0}
.ch-site-footer li{margin-bottom:.4rem}
.ch-site-footer a{color:#c6d6e6;text-decoration:none}
.ch-site-footer a:hover{color:var(--ch-gold)}
.ch-copyright{
  margin-top:1.8rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.14);
  text-align:center;font-size:.78rem;color:#8ba3ba;
}


/* ---- ヘッダー ------------------------------------------------------------ */
@media(max-width:820px){
  .ch-header-inner{position:relative;gap:.6rem}
  /* お問い合わせボタンはグローバルナビ内にもあるため、
     狭い幅では言語切替とメニューボタンを優先して表示する */
  .ch-header-right .ch-btn{display:none}
  /* メニューを言語ボタンではなくヘッダー全体に揃え、画面外へのはみ出しを防ぐ */
  .ch-langsel{position:static}
  .ch-langsel ul{left:0;right:0;width:auto}
}
/* ヘッダーは「ロゴ＋言語切替＋メニュー」で横幅を奪い合う。
   ロゴは <wbr> の位置で2行に折り返せるので、言語切替は残す。 */
@media(max-width:700px){
  /* 現在の言語名（日本語）と区切り線を省く。いまの言語は画面を見れば分かる */
  .ch-langsel summary .ch-divider,
  .ch-langsel summary > span:not(.ch-label):not(.ch-caret){display:none}
}
@media(max-width:560px){
  .ch-site-logo b{font-size:1rem;letter-spacing:0}
  .ch-site-logo-en{display:none}            /* 英字のサブタイトルは省略 */
  .ch-site-logo-mark{width:32px;height:32px}
  .ch-langsel{font-size:.8rem}
  .ch-langsel summary{padding:.42rem .7rem;gap:.3rem}
  .ch-langsel summary .ch-label{font-size:.72rem}
  .ch-langsel ul{min-width:12rem}
}
@media(max-width:400px){
  .ch-site-logo b{font-size:.94rem}
  .ch-header-inner{gap:.5rem}
  .ch-langsel summary{padding:.42rem .6rem}
}
@media(max-width:340px){
  /* ここまで狭い端末では地球アイコンのみ。言語選択の国際的な記号なので意味は伝わる */
  .ch-langsel summary .ch-label{display:none}
}


@media(max-width:560px){.ch-site-footer{padding-block:2.2rem;font-size:.85rem}
  .ch-footer-grid{gap:1.4rem}}
@media print{.ch-site-header,.ch-gnav,.ch-langsel,.ch-nav-toggle,.ch-breadcrumb{display:none!important}}
/* The parent theme may render navigation twice; each instance remains independent. */
.ch-wp-nav .ch-nav-toggle{display:none}
@media(max-width:820px){.ch-wp-nav .ch-gnav{display:block}.ch-wp-navigation-ready .ch-wp-nav .ch-nav-toggle{display:block}.ch-wp-navigation-ready .ch-wp-nav .ch-gnav:not(.ch-is-open){display:none}}