/* 夜tax 副業ページ（/lp/tax/ ほか Tax Template のページ）の見た目をメインの LP（/lp/）にそろえる（2026-10-28）
   ・効くのは body.nt-side（header.php が Tax Template と会社概要のときに付ける＝下の c の注）。メインの LP・本体サイトには効かない
   ・そろえるのは 4 か所だけ：ヘッダー（左上の文字・上の帯・営業時間・PC のナビの帯）／スマホのメニュー（白地のリスト）／
     「メインページへ戻って」のボタン（3 か所）／実績の欄（見出しの帯・8 枚の書体）。本文の書体・ほかの欄は変えない
   ・書体はメインの LP と同じ Noto Sans JP の絞り込み版（nighttax-type-20261027/fonts）。ここで使う字は全部入っている
   ・メニューの規則は menu.css（nighttax-lp-refresh-20261028・body.nt-type 用）を body.nt-side に写したもの。動きは side-menu.js
   ・色はメインの LP の type.css の変数と同じ値
   2026-10-28（2 回目・配色と書体）：本文・よくある質問・見出し・動画・相談の欄も、メインの LP（type.css）と同じ色・書体に。下の「配色と書体」の章
   ・書体は副業ページ用の絞り込み版（fonts/*-side.woff2＝メインの LP の 20261027 版の字＋副業ページの 18 字）。明朝は動画の見出しだけ＝メインの LP の版をそのまま読む
   2026-10-28 c：会社概要（comp_temp.php）も body に nt-side（＋nt-company）を付けてこのファイルを読む＝ヘッダー・メニュー・フッター・固定ボタンは副業ページと同じ。
   表は nighttax-company-20261028/company.css。末尾にタブレット（641〜1199px）のヘッダーの章を足した */

@font-face { font-family: "Noto Sans JP"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/noto-sans-jp-400-side.woff2?v=20261028) format("woff2"); }
@font-face { font-family: "Noto Sans JP"; font-style: normal; font-weight: 500; font-display: swap; src: url(fonts/noto-sans-jp-500-side.woff2?v=20261028) format("woff2"); }
@font-face { font-family: "Noto Sans JP"; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/noto-sans-jp-700-side.woff2?v=20261028) format("woff2"); }
@font-face { font-family: "Zen Old Mincho"; font-style: normal; font-weight: 700; font-display: swap; src: url(../nighttax-type-20261027/fonts/zen-old-mincho-700-lp.woff2?v=20261027) format("woff2"); }

body.nt-side {
  --nt-ink: #453B43;
  --nt-rose: #A7446B;
  --nt-sub: #6F5B66;
  --nt-bg: #FFF7FA;
  --nt-bg-2: #FBF7F8;
  --nt-grad: linear-gradient(135deg, #FFF7FA, #F3E5EC);
  --nt-band: linear-gradient(110deg, #B54D74, #8E4D6A);
  --nt-band-mid: #A14D6F;
  --nt-line: #E7D6DF;
  --nt-rose-pale: #F8EAF0;
  --nt-sans: "Noto Sans JP", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", "YuGothic", Meiryo, sans-serif;
  --nt-serif: "Zen Old Mincho", "Hiragino Mincho ProN", "Yu Mincho", "YuMincho", serif;
}

/* ================= ヘッダー（メインの LP と同じ文字のロゴ・押すとメインの LP へ） ================= */
body.nt-side .top-header { background: var(--nt-bg); }
body.nt-side .top-header p,
body.nt-side .top-header p span { font-family: var(--nt-sans); font-weight: 500; color: var(--nt-sub); font-size: 12px; letter-spacing: .02em; }
body.nt-side .header .logo a.nt-logo { display: block; text-decoration: none; line-height: 1.3; color: var(--nt-ink); border-radius: 6px; -webkit-tap-highlight-color: transparent; }
body.nt-side .header .logo a.nt-logo:focus-visible { outline: 2px solid var(--nt-rose); outline-offset: 3px; }
body.nt-side .header .logo .nt-logo__name { display: block; font-family: var(--nt-sans); font-weight: 700; font-size: 18px; color: var(--nt-ink); letter-spacing: .02em; white-space: nowrap; }
body.nt-side .header .logo .nt-logo__name em { font-style: normal; color: var(--nt-rose); }
body.nt-side .header .logo .nt-logo__sub { display: block; font-family: var(--nt-sans); font-weight: 500; font-size: 14px; color: var(--nt-sub); letter-spacing: .04em; white-space: nowrap; margin-top: 2px; }
@media (min-width: 641px) {
  body.nt-side .header .logo .nt-logo__name { font-size: 22px; }
  body.nt-side .header .logo .nt-logo__sub { font-size: 15px; }
}
body.nt-side .header .header-inner .wrap-contact .service-info p { font-family: var(--nt-sans); font-weight: 700; color: var(--nt-ink); }
body.nt-side .header .header-inner .wrap-contact .service-info p span { color: var(--nt-rose); }
/* PC・タブレットのナビの帯（スマホは下の白地のリスト） */
body.nt-side .header .header-nav { background: var(--nt-band); }
body.nt-side .header-nav a { font-family: var(--nt-sans); font-weight: 700; }

/* ================= スマホのメニュー＝白地のリスト（menu.css の写し・body.nt-side 用） ================= */
@media (max-width: 640px) {
  body.nt-side .header .hamb_btn a.nt-mbtn {
    position: absolute;
    top: 11px;
    right: 11px;
    width: 48px;
    height: 48px;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 4px;
    border: 1px solid #E7D6DF;
    border-radius: 12px;
    background: #FFF7FA;
    color: #A7446B;
    text-decoration: none;
    -webkit-tap-highlight-color: transparent;
  }
  body.nt-side .header .hamb_btn a.nt-mbtn:focus-visible {
    outline: 2px solid #A7446B;
    outline-offset: 2px;
  }
  body.nt-side .header .hamb_btn a.nt-mbtn .nt-mbtn__icon {
    position: relative;
    display: block;
    width: 18px;
    height: 12px;
    background: linear-gradient(currentColor, currentColor) center / 100% 2px no-repeat;
  }
  body.nt-side .header .hamb_btn a.nt-mbtn .nt-mbtn__icon::before,
  body.nt-side .header .hamb_btn a.nt-mbtn .nt-mbtn__icon::after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    height: 2px;
    border-radius: 2px;
    background: currentColor;
    transition: transform .2s ease, top .2s ease;
  }
  body.nt-side .header .hamb_btn a.nt-mbtn .nt-mbtn__icon::before { top: 0; }
  body.nt-side .header .hamb_btn a.nt-mbtn .nt-mbtn__icon::after { top: 10px; }
  body.nt-side .header .hamb_btn a.nt-mbtn.active .nt-mbtn__icon { background-size: 0 2px; }
  body.nt-side .header .hamb_btn a.nt-mbtn.active .nt-mbtn__icon::before { top: 5px; transform: rotate(45deg); }
  body.nt-side .header .hamb_btn a.nt-mbtn.active .nt-mbtn__icon::after { top: 5px; transform: rotate(-45deg); }
  body.nt-side .header .hamb_btn a.nt-mbtn .nt-mbtn__label {
    display: block;
    font-family: var(--nt-sans);
    font-size: 10px;
    font-weight: 500;
    line-height: 1;
    letter-spacing: .02em;
    white-space: nowrap;
    color: #A7446B;
  }

  body.nt-side .header .header-nav.nt-mmenu {
    position: fixed;
    top: var(--nt-header-h, 106px);
    right: 0;
    bottom: 0;
    left: 0;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
    background: none;
    overflow: visible;
  }
  body.nt-side .header .header-nav.nt-mmenu > ul { display: none; }
  body.nt-side .header .header-nav.nt-mmenu .nt-mmenu__scrim {
    position: absolute;
    inset: 0;
    background: rgba(45, 33, 40, .42);
  }

  body.nt-side .header .header-nav.nt-mmenu .nt-mmenu__panel {
    position: relative;
    display: block;
    margin: 12px 14px 0;
    max-height: calc(100vh - var(--nt-header-h, 106px) - 26px);
    overflow-y: auto;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    box-sizing: border-box;
    padding: 6px 8px;
    background: #FFFFFF;
    border: 1px solid #E7D6DF;
    border-radius: 18px;
    box-shadow: 0 14px 34px rgba(69, 59, 67, .18), 0 2px 6px rgba(69, 59, 67, .08);
  }
  @supports (height: 100dvh) {
    body.nt-side .header .header-nav.nt-mmenu .nt-mmenu__panel { max-height: calc(100dvh - var(--nt-header-h, 106px) - 26px); }
  }
  body.nt-side .header .header-nav.nt-mmenu .nt-mmenu__list {
    display: block;
    margin: 0;
    padding: 0;
    list-style: none;
  }
  body.nt-side .header .header-nav.nt-mmenu .nt-mmenu__list li {
    margin: 0;
    padding: 0;
    border-top: 1px solid #E7D6DF;
  }
  body.nt-side .header .header-nav.nt-mmenu .nt-mmenu__list li:first-child,
  body.nt-side .header .header-nav.nt-mmenu .nt-mmenu__list li:first-child + li { border-top-color: transparent; }

  body.nt-side .header .header-nav.nt-mmenu .nt-mmenu__list li a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 52px;
    box-sizing: border-box;
    margin: 0;
    padding: 6px 12px 6px 14px;
    border-radius: 12px;
    background: transparent;
    font-family: var(--nt-sans);
    font-size: 17px;
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: .02em;
    color: #453B43;
    text-decoration: none;
    -webkit-tap-highlight-color: transparent;
  }
  body.nt-side .header .header-nav.nt-mmenu .nt-mmenu__list li a::after {
    content: '';
    position: static;
    display: block;
    flex: none;
    width: 7px;
    height: 7px;
    margin: 0 3px 0 0;
    background: none;
    border: solid #A7446B;
    border-width: 2px 2px 0 0;
    transform: rotate(45deg);
  }
  /* メインページ（トップ）へ戻る：戻る矢印（下の「メインページへ戻って」のボタンと同じ絵） */
  body.nt-side .header .header-nav.nt-mmenu .nt-mmenu__list li a.nt-mmenu__link--back::after {
    width: 16px;
    height: 16px;
    margin: 0;
    border: 0;
    transform: none;
    background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M6 3.5 2.5 7 6 10.5M3 7h6.5a3.5 3.5 0 0 1 0 7H7.5' fill='none' stroke='%23A7446B' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 16px 16px no-repeat;
  }
  body.nt-side .header .header-nav.nt-mmenu .nt-mmenu__list li a.nt-mmenu__link--price {
    background: #FFF7FA;
    color: #A7446B;
  }
  body.nt-side .header .header-nav.nt-mmenu .nt-mmenu__list li a:active { background: #FFF7FA; }
  body.nt-side .header .header-nav.nt-mmenu .nt-mmenu__list li a:focus-visible {
    outline: 2px solid #A7446B;
    outline-offset: -2px;
  }
}
@media (max-width: 340px) {
  body.nt-side .header .header-nav.nt-mmenu .nt-mmenu__list li a { font-size: 16px; }
}
@media (max-width: 640px) and (prefers-reduced-motion: reduce) {
  body.nt-side .header .hamb_btn a.nt-mbtn .nt-mbtn__icon::before,
  body.nt-side .header .hamb_btn a.nt-mbtn .nt-mbtn__icon::after { transition: none; }
}
@media (min-width: 641px) {
  body.nt-side .header .header-nav .nt-mmenu__scrim,
  body.nt-side .header .header-nav .nt-mmenu__panel,
  body.nt-side .header .hamb_btn a.nt-mbtn .nt-mbtn__icon,
  body.nt-side .header .hamb_btn a.nt-mbtn .nt-mbtn__label { display: none; }
}

/* ================= 「メインページへ戻って／お客様の声やその他の質問を確認する」（料金の後の相談の下・実績の下・一番下） ================= */
/* 申し込みの緑・ピンクとは別の、白地＋濃い字＋細い枠。左に戻る矢印。2 行目は折ってよい所だけで折る */
body.nt-side .nt-goback { padding: 20px 16px; background: var(--nt-bg-2); text-align: center; }
body.nt-side .footer-sc .nt-goback { padding: 0; background: none; margin-bottom: 16px; }
body.nt-side .nt-goback a.nt-goback__btn {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  width: 100%;
  max-width: 420px;
  box-sizing: border-box;
  padding: 12px 18px 12px 14px;
  border: 1px solid #D9C6D0;
  border-radius: 14px;
  background: #FFFFFF;
  box-shadow: 0 2px 6px rgba(69, 59, 67, .08);
  color: var(--nt-ink);
  font-family: var(--nt-sans);
  text-align: left;
  text-decoration: none;
  -webkit-tap-highlight-color: transparent;
}
body.nt-side .nt-goback a.nt-goback__btn:hover { background: var(--nt-bg-2); }
body.nt-side .nt-goback a.nt-goback__btn:active { background: #F4EEF1; }
body.nt-side .nt-goback a.nt-goback__btn:focus-visible { outline: 2px solid var(--nt-rose); outline-offset: 3px; }
body.nt-side .nt-goback .nt-goback__icon {
  flex: none;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: #F4EEF1 url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M6 3.5 2.5 7 6 10.5M3 7h6.5a3.5 3.5 0 0 1 0 7H7.5' fill='none' stroke='%23453B43' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 18px 18px no-repeat;
}
body.nt-side .nt-goback .nt-goback__text { display: block; min-width: 0; color: var(--nt-ink); } /* テーマの * { color:#47679f } を受け継がない */
body.nt-side .nt-goback .nt-goback__l1,
body.nt-side .nt-goback .nt-goback__l2 { display: block; word-break: keep-all; overflow-wrap: anywhere; line-break: strict; color: inherit; }
body.nt-side .nt-goback .nt-goback__l1 { font-size: 16px; font-weight: 700; line-height: 1.4; letter-spacing: .02em; }
body.nt-side .nt-goback .nt-goback__l2 { margin-top: 2px; font-size: 13px; font-weight: 500; line-height: 1.5; color: var(--nt-sub); }
@media (max-width: 350px) {
  body.nt-side .nt-goback a.nt-goback__btn { gap: 10px; padding: 11px 14px 11px 12px; }
  body.nt-side .nt-goback .nt-goback__l2 { font-size: 12.5px; }
}

/* ================= 実績の欄（メインの LP と同じ：見出しは白い明朝の画像・スマホはローズの帯・8 枚は record.css） ================= */
body.nt-side .sc-record h2 img { height: auto; } /* 見出しの画像に width・height を書いた（読み込み前に場所を取る）＝高さは比率で（メインの LP の img[data-nt-wh] と同じ） */
@media screen and (max-width: 640px) {
  body.nt-side .sc-record h2::before { background: var(--nt-band); }
  body.nt-side .sc-record h2::after { background-image: url(../nighttax-type-20261026/img/record-ttl_after.png); }
}
body.nt-side .sc-recored-list.nt-record .nt-fact__label,
body.nt-side .sc-recored-list.nt-record .nt-fact__num,
body.nt-side .sc-recored-list.nt-record ul li p { font-family: var(--nt-sans); }
body.nt-side .sc-recored-list.nt-record .nt-fact__label { font-weight: 500; }
body.nt-side .sc-recored-list.nt-record .nt-fact__num { font-weight: 700; }

/* ================= 配色と書体（2026-10-28・2 回目）：メインの LP の type.css と同じ役割・同じ値 ================= */
/* 本文：テーマの丸ゴシック（読み込まれず明朝に落ちていた）→ Noto Sans JP 400・濃色。テーマの「* { color:#47679f }」は部品ごとに上書きする
   （共通の a・button・固定CTA には効かせない＝下の規則は副業ページの欄の中だけ） */
body.nt-side { font-family: var(--nt-sans); font-weight: 400; background-color: var(--nt-bg-2); }
body.nt-side :is([class*="nt-"], [class*="nighttax-"], [class^="sc-"], .reason-cheap, .header, footer) { font-family: var(--nt-sans); }
body.nt-side .nt-video-title { font-family: var(--nt-serif); }
body.nt-side footer > p { font-weight: 500; }

/* 見出しの画像（img/side-ttl-*・side-qa*）：width・height を書いた＝高さは比率で（今の本番は PC で横に伸び縮みしていた） */
body.nt-side :is(.sc-tax, .sc-reason, .reason-cheap) h2 img { height: auto; }
/* 先頭の見出しは淡い地の明朝（帯ではない）＝帯の下の三角は出さない */
body.nt-side .sc-tax h2::before { content: none; }

/* 先頭の一文・4 つの説明（copy.css の紺・紫・濃いピンク → 濃色・ローズ） */
body.nt-side .tax_page .nt-copy-lead { font-weight: 500; color: var(--nt-ink); }
body.nt-side .nt-copy-steps li { border-top-color: var(--nt-line); }
body.nt-side .nt-copy-steps li:last-child { border-bottom-color: var(--nt-line); }
body.nt-side .nt-copy-steps li::before { font-family: var(--nt-serif); font-weight: 700; color: var(--nt-rose); }
body.nt-side .nt-copy-steps p { color: var(--nt-ink); font-weight: 400; }
body.nt-side .nt-copy-steps p.nt-copy-steps__ttl { color: var(--nt-rose); font-weight: 700; }

/* 安くできる理由（PC の説明文）：紺 → 濃色、黄色の下線 → 淡いローズ */
body.nt-side .reason-cheap p.desc,
body.nt-side .reason-cheap p.desc span { font-weight: 500; color: var(--nt-ink); }
body.nt-side .reason-cheap p.desc span::after { background-color: var(--nt-rose-pale); }

/* 漫画動画の入口・「続きは下のボタンから」（tax-media.css のピンク → メインの LP と同じ） */
body.nt-side .nt-eyebrow { font-weight: 500; font-size: 13px; color: var(--nt-rose); letter-spacing: .08em; }
body.nt-side .nt-video-title { font-size: 26px; font-weight: 700; color: var(--nt-ink); letter-spacing: .02em; line-height: 1.5; }
body.nt-side .nt-video-title span { color: var(--nt-ink); font-weight: 700; }
body.nt-side .sc-video .nt-video a.btn-play { border-color: var(--nt-rose); }
body.nt-side .sc-video .nt-video a.btn-play::after { color: var(--nt-rose); font-family: var(--nt-sans); }
body.nt-side .sc-video .sc-video-inner a.nt-manga-link,
body.nt-side .nt-manga-link .nt-arrow { font-weight: 700; color: var(--nt-rose); }
body.nt-side .nt-tax-next { color: var(--nt-rose); }
@media (min-width: 641px) { body.nt-side .nt-video-title { font-size: 34px; } } /* PC の ＼ ／ は tax-media.css のまま（メインの LP にもある） */
/* 漫画（全 5 部）の閲覧画面の部の見出し */
body.nt-side .nt-manga-body .nt-tax-part { background: var(--nt-bg); border-top-color: var(--nt-line); color: var(--nt-rose); }

/* よくある質問（メインの LP と同じ：ローズの帯・白い字・Q の札・淡いローズの回答） */
body.nt-side .sc-qa .list-qa li { background: var(--nt-band); border-color: var(--nt-band-mid); }
body.nt-side .sc-qa .wrap-title { border-bottom-color: var(--nt-rose); }
body.nt-side .sc-qa .wrap-title p { background: var(--nt-rose); color: #fff; font-weight: 700; }
body.nt-side .sc-qa .qa-question p { font-weight: 700; }
body.nt-side .sc-qa .qa-question::before { background-image: url(../nighttax-type-20261026/img/qa_btn.png); }
body.nt-side .sc-qa .qa-answer { background-color: var(--nt-bg); }
body.nt-side .sc-qa .qa-answer p { font-weight: 400; line-height: 1.85; color: var(--nt-ink); }
body.nt-side .sc-qa .qa-answer p b { color: var(--nt-ink); font-weight: 700; }
/* 帯の写真（img/side-qa.png）：PC は 1170px までの札（角が丸い）を中央に。今までは画面いっぱいに横に伸びていた */
@media (min-width: 641px) {
  body.nt-side .sc-qa .qa-top { height: auto; background: none; }
  body.nt-side .sc-qa .qa-top img.pc_display { width: 100%; max-width: 1170px; height: auto; margin: 0 auto; }
}
@media screen and (max-width: 640px) {
  /* テーマは高さ 180px 決め打ち＝375px より狭い画面（320px など）で縦に伸びていた */
  body.nt-side .sc-qa .qa-top img.sp_display { width: 375px; max-width: 100%; height: auto; }
  /* 375px より広い画面の右の余り：帯の写真の地と同じ色（ローズに塗り替えた #F44F87）。
     右下の「Q&A・↓」の札（::after）は写真の中にもある＝二重になるので出さない（メインの LP の写真には札が無いので ::after で出している） */
  body.nt-side .sc-qa .qa-top { background: #AA486F; }
  body.nt-side .sc-qa .qa-top::after { content: none; background: none; }
}

/* スマホの帯の見出し（安くできる理由）：#F45189 の面 → ローズの帯・下の三角もローズ */
@media screen and (max-width: 640px) {
  body.nt-side .reason-cheap h2 { background: var(--nt-band); }
  body.nt-side .reason-cheap h2::before { background-image: url(../nighttax-type-20261026/img/text-warning-before.png); }
}

/* 無料相談の欄（淡いピンク→淡い紫 → メインの LP と同じセクションの背景）。画像はメインの LP のローズ版（tax_temp.php で参照を差し替え）
   PC は LiteSpeed が付けた height（542・116）のまま幅だけ縮み、文字が縦長に縮んでいた＝高さは比率で */
body.nt-side .sc-advise { background: var(--nt-grad); }
body.nt-side .sc-advise img { height: auto; }

/* 画面下の固定ボタンの字（メインの LP の type.css と同じ 4 つ。ボタン本体・動き・10 秒の切り替えは触らない）：
   副業ページでは「LINE通話もOK」などの字がテーマの紺になっていた */
body.nt-side footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__info p.nt-fixed-cta__lead { color: var(--nt-sub); font-weight: 500; }
body.nt-side footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__info p.nt-fixed-cta__headline,
body.nt-side footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__info p.nt-fixed-cta__headline span { color: var(--nt-rose); font-weight: 700; }
body.nt-side footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__message p { color: var(--nt-ink); font-weight: 400; }
body.nt-side footer .wrap-contact[data-nt-fixed-cta] .nt-fixed-cta__conditions { color: var(--nt-sub); }

/* スマホのメニューボタンの三本線（1 回目の取りこぼし）：線は currentColor＝テーマの「* { color:#47679f }」の紺になっていた → ボタンと同じローズ */
body.nt-side .header .hamb_btn a.nt-mbtn .nt-mbtn__icon { color: inherit; }

/* ================= タブレット（641〜1199px）のヘッダー（2026-10-28 c） =================
   テーマの PC 用ヘッダー（ロゴ・営業時間・ボタン 2 つを 1 列）がこの幅では細い縦列になり、高さ 570〜590px のヘッダーが
   189px の余白しかない本文に重なっていた（副業ページ・会社概要。メインの LP は lp-refresh.css の 5 節で 228px）。
   その 5 節を body.nt-side に写したもの（ナビの帯はこのファイルのローズの帯のまま＝メインの LP と同じ見た目）。
   本文の上の余白は side-menu.js が入れるヘッダーの実際の高さ（--nt-header-h） */
@media (min-width: 641px) and (max-width: 1199px) {
  body.nt-side .header .header-inner { flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px 16px; padding: 12px 24px; }
  body.nt-side .header .header-inner .logo { width: clamp(200px, 30vw, 300px); flex: 0 0 auto; }
  body.nt-side .header .header-inner .wrap-contact { display: contents; }
  body.nt-side .header .header-inner .wrap-contact .group-btn { order: 2; gap: 10px; margin-left: auto; }
  body.nt-side .header .header-inner .wrap-contact .group-btn .btn-line { width: clamp(124px, 17vw, 173px); }
  body.nt-side .header .header-inner .wrap-contact .group-btn .btn-phone { width: clamp(163px, 22vw, 227px); }
  body.nt-side .header .header-inner .wrap-contact .service-info { order: 3; flex: 1 0 100%; display: flex; flex-wrap: wrap; justify-content: center; gap: 2px 20px; border-top: 1px solid #f3e3ea; padding-top: 8px; }
  body.nt-side .header .header-inner .wrap-contact .service-info p { margin: 0; font-size: 14px; line-height: 1.6; white-space: nowrap; }
  body.nt-side .header .header-nav ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; padding: 1px 0; }
  body.nt-side .header .header-nav ul li { min-width: 0; }
  body.nt-side .header .header-nav ul li a,
  body.nt-side .header .header-nav ul li:nth-child(1) a { display: flex; align-items: center; justify-content: center; height: 100%; box-sizing: border-box; padding: 10px 6px; border: 0; background: #fae7ee; color: #2f3e58; font-size: 14px; line-height: 1.4; text-align: center; }
  body.nt-side .header .header-nav ul li a:hover { background: #f6d6e2; }
}
@media (min-width: 960px) and (max-width: 1199px) {
  body.nt-side .header .header-nav ul { grid-template-columns: repeat(6, minmax(0, 1fr)); }
}
/* 本文の上の余白＝ヘッダーの実際の高さ（メインの LP と同じ。無いときはテーマの値・タブレットは 2 段の高さ） */
@media (min-width: 641px) {
  body.nt-side .wrap-page { padding-top: var(--nt-header-h, 189px); }
}
@media (min-width: 641px) and (max-width: 1199px) {
  body.nt-side .wrap-page { padding-top: var(--nt-header-h, 230px); }
}

/* M06（2026-10-29）：副業ページの最初の写真（pic_a.png・実寸 1920×1080）。属性の 1920×433 と LiteSpeed の仮の SVG（同じ比率）・
   LandingHub が後から足す height:auto で 433→261→651px と高さが変わっていた。この画像だけ最初から 16:9 の枠を持つ */
.tax_page .sc-tax .img-video-cnt span > img.nt-side-intro-visual{width:100%;height:auto;aspect-ratio:16/9}
