/* Scoped to the saiken index page. Existing content and SEO metadata stay intact. */
body.jr-readability-refresh #top .ninbai-hero_inner {
  padding-top: 156px;
}
body.jr-readability-refresh #top .ninbai-hero_title {
  max-width: 64%;
  font-size: clamp(32px, 3.7vw, 48px) !important;
  line-height: 1.4 !important;
  letter-spacing: .025em;
}
body.jr-readability-refresh #top .ninbai-hero_lead,
body.jr-readability-refresh #top .jr-hero-bullets,
body.jr-readability-refresh #top .ninbai-hero_actions {
  max-width: 62%;
}
body.jr-readability-refresh #top .ninbai-hero_lead {
  font-size: 16px;
  line-height: 1.9;
  letter-spacing: .02em;
  margin-top: 24px;
}
body.jr-readability-refresh .jr-lead-paragraph { display: block; }
body.jr-readability-refresh #top .ninbai-hero_title .jr-title-phrase { display: inline-block; white-space: nowrap; }
body.jr-readability-refresh .jr-lead-paragraph + .jr-lead-paragraph { margin-top: 16px; }
body.jr-readability-refresh #top .ninbai-hero_person {
  top: 160px;
  right: max(40px, calc((100vw - 1180px) / 2 + 20px));
  width: min(26vw, 330px);
}
body.jr-readability-refresh #top .jr-hero-bullets { margin: 24px 0; }
body.jr-readability-refresh #top .jr-hero-bullets li { line-height: 1.8; }
body.jr-readability-refresh .ninbai-doc-tabs {
  position: relative;
  inset: auto;
  width: auto;
  max-width: 1180px;
  margin: 0 auto;
  padding: 20px 32px;
  display: flex;
  flex-flow: row wrap;
  gap: 8px;
  background: #f5f1e9;
  box-sizing: border-box;
}
body.jr-readability-refresh .ninbai-doc-tabs > a {
  flex: 0 0 auto;
  width: auto;
  min-width: 64px;
  height: auto;
  min-height: 44px;
  border-radius: 6px;
  padding: 10px 14px;
  background: #fff;
  color: #17334d;
  border: 1px solid #d6cbb5;
  box-sizing: border-box;
}
body.jr-readability-refresh .ninbai-doc-tabs > a span {
  color: #786749;
  margin-right: 5px;
}
body.jr-readability-refresh .ninbai-doc-tabs > .jr-purpose-link {
  font-weight: 700;
  border-color: #17334d;
}
body.jr-readability-refresh .ninbai-doc-tabs_phone { display: none; }
body.jr-readability-refresh .ninbai-doc-tabs > a:hover,
body.jr-readability-refresh .ninbai-doc-tabs > a:focus-visible {
  background: #17334d;
  color: #fff;
}
body.jr-readability-refresh .ninbai-sp-shortcuts { display: none; }
body.jr-readability-refresh .ninbai-fixed-cta p { display: none; }
body.jr-readability-refresh .ninbai-fixed-cta { padding-top: 10px; padding-bottom: 10px; }
body.jr-readability-refresh .ninbai-hero_guides { padding-top: 52px; }
body.jr-readability-refresh .ninbai-hero_guides_head p { max-width: 760px; }
body.jr-readability-refresh .ninbai-hero_guides_grid { gap: 20px; }
body.jr-readability-refresh .ninbai-hero_guides_grid article { min-width: 0; }
@media (max-width: 896px) {
  body.jr-readability-refresh #top .ninbai-hero_inner { padding-top: 132px; }
  body.jr-readability-refresh #top .ninbai-hero_title,
  body.jr-readability-refresh #top .ninbai-hero_lead,
  body.jr-readability-refresh #top .jr-hero-bullets,
  body.jr-readability-refresh #top .ninbai-hero_actions { max-width: 100%; }
  body.jr-readability-refresh #top .ninbai-hero_title { font-size: clamp(27px, 6.4vw, 36px) !important; line-height: 1.5 !important; }
  body.jr-readability-refresh #top .ninbai-hero_lead { font-size: 16px; line-height: 1.9; }
  body.jr-readability-refresh .ninbai-doc-tabs { padding: 18px 20px; gap: 8px; overflow: visible; }
  body.jr-readability-refresh .ninbai-doc-tabs > a { font-size: 13px; min-width: 0; padding: 10px 12px; }
  body.jr-readability-refresh .ninbai-doc-tabs > a span { display: none; }
  body.jr-readability-refresh .ninbai-hero_guides_grid { display: grid; grid-template-columns: 1fr; overflow: visible; }
  body.jr-readability-refresh .ninbai-hero_guides_grid article { width: auto; }
  body.jr-readability-refresh .ninbai-jump-nav-toggle { bottom: 78px; right: 12px; }
  body.jr-readability-refresh .pageTop { display: none; }
}

/* Explicit colour pairs prevent broad legacy rules from washing out labels. */
body.jr-readability-refresh #container.ninbai-page { overflow: clip; }
body.jr-readability-refresh:not(.ninbai-guidebook-open):not(.ninbai-jump-nav-open) { overflow-x: clip; overflow-y: visible; }
body.jr-readability-refresh .ninbai-sim_result_head p.ninbai-sim_result_label { color: #fff !important; }
body.jr-readability-refresh #top {
  background: linear-gradient(90deg, rgba(8, 25, 46, .97) 0%, rgba(16, 45, 82, .94) 60%, rgba(16, 45, 82, .55) 100%), url("https://japanrealtor.jp/img/index/main_bg01.jpg") center / cover no-repeat;
}
body.jr-readability-refresh .ninbai-page { --jr-antique: #735017; }
body.jr-readability-refresh :is(.ninbai-hero_guides_grid, .ninbai-blog_grid) article > a:not(.ninbai-btn),
body.jr-readability-refresh .ninbai-hero_guides_grid article > a,
body.jr-readability-refresh .saiken-large-property_head > .ninbai-section_label,
body.jr-readability-refresh .saiken-large-property_grid article > span,
body.jr-readability-refresh .ninbai-2026_card > .en,
body.jr-readability-refresh .ninbai-2026_grid article > .en,
body.jr-readability-refresh .ninbai-merits .ninbai-section_label,
body.jr-readability-refresh .ninbai-conditions .ninbai-section_label,
body.jr-readability-refresh .ninbai-story_card > .en,
body.jr-readability-refresh .ninbai-blog_card .en { color: #735017 !important; }
body.jr-readability-refresh .ninbai-story h2 .en { color: #f2d8a3 !important; }
body.jr-readability-refresh #container.ninbai-page :is(.ninbai-merits, .ninbai-conditions) .ninbai-section_label { color: #735017 !important; }
body.jr-readability-refresh .jr-sitemap-confused .ninbai-btn_primary { color: #17334d !important; }
body.jr-readability-refresh a[href*="page.line.me"] {
  color: #fff !important;
  background: linear-gradient(180deg, #087c3b, #06622e) !important;
}
body.jr-readability-refresh .ninbai-hero_guides_grid h3 a {
  display: inline;
  color: #17334d !important;
  font: inherit;
  line-height: inherit;
  text-decoration: none;
}
body.jr-readability-refresh .ninbai-hero_guides_grid h3 a::after { content: none; }
body.jr-readability-refresh .ninbai-hero_guides_grid h3 a:hover { text-decoration: underline; }
body.jr-readability-refresh .ninbai-hub_related a,
body.jr-readability-refresh .ninbai-hub_detail { min-height: 44px; }
body.jr-readability-refresh .ninbai-hub_related a { padding: 12px 14px; line-height: 1.5; }
body.jr-readability-refresh :is(a, button, input, select, textarea):focus-visible {
  outline: 3px solid #0f67aa;
  outline-offset: 4px;
  box-shadow: 0 0 0 2px #fff;
}
body.jr-readability-refresh .jr-intent-nav {
  background: #f7f3eb;
  padding: 34px 0 26px;
  border-bottom: 1px solid #d9cdb6;
  color: #17334d;
}
body.jr-readability-refresh .jr-intent-title { font-size: 21px; font-weight: 700; margin: 0 0 18px; }
body.jr-readability-refresh .jr-intent-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 14px; }
body.jr-readability-refresh .jr-intent-grid a {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 14px;
  padding: 22px 18px;
  color: #17334d;
  background: #fff;
  border: 1px solid #cfbea0;
  border-top: 3px solid #9b762c;
  border-radius: 8px;
  text-decoration: none;
  line-height: 1.65;
  transition: border-color .15s ease, box-shadow .15s ease;
}
body.jr-readability-refresh .jr-intent-grid strong { color: #17334d; font-size: 18px; font-weight: 700; }
body.jr-readability-refresh .jr-intent-grid span { color: #4c5969; font-size: 13px; position: relative; padding-right: 18px; }
body.jr-readability-refresh .jr-intent-grid span b { position: absolute; right: 0; bottom: 0; }
body.jr-readability-refresh .jr-intent-grid a:hover { border-color: #17334d; box-shadow: 0 4px 16px #17334d18; }
body.jr-readability-refresh .ninbai-doc-tabs { border-bottom: 1px solid #d9cdb6; }
body.jr-readability-refresh .ninbai-doc-tabs > a:hover span,
body.jr-readability-refresh .ninbai-doc-tabs > a:focus-visible span { color: #f2d8a3; }
body.jr-readability-refresh .jr-next-step {
  margin-top: 32px;
  padding: 22px 24px;
  color: #17334d;
  background: #fff;
  border: 1px solid #cfbea0;
  border-radius: 8px;
}
body.jr-readability-refresh .jr-next-step p { margin: 0 0 14px; color: #17334d; font-weight: 700; }
body.jr-readability-refresh .jr-next-step div { display: flex; flex-wrap: wrap; gap: 12px; }
body.jr-readability-refresh .jr-next-step a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 10px 16px;
  background: #f7f3eb;
  color: #17334d;
  border: 1px solid #cfbea0;
  border-radius: 6px;
  text-decoration: none;
  box-sizing: border-box;
}
body.jr-readability-refresh .jr-next-step a:last-child { background: #17334d; color: #fff; }
body.jr-readability-refresh .jr-next-step a:hover { text-decoration: underline; }
body.jr-readability-refresh .ninbai-cta_actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
body.jr-readability-refresh .jr-form-cta { background: #fff; color: #17334d !important; border: 1px solid #cfbea0; }
body.jr-readability-refresh #ninbai-guidebook-fab { bottom: 110px; }
@media (min-width: 897px) {
  body.jr-readability-refresh #top .ninbai-hero_actions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
  body.jr-readability-refresh #top .ninbai-hero_actions .ninbai-btn { min-width: 0; width: 100%; box-sizing: border-box; }
  body.jr-readability-refresh .ninbai-doc-tabs { position: sticky; top: 0; z-index: 60; max-width: none; justify-content: center; padding: 10px 24px; overflow: visible; }
  body.jr-readability-refresh .ninbai-sim_result_head { padding-top: 84px; }
  body.jr-readability-refresh .pageTop { bottom: 180px; right: 18px; }
  body.jr-readability-refresh main [id] { scroll-margin-top: 92px; }
}
@media (max-width: 896px) {
  body.jr-readability-refresh .jr-intent-nav { padding: 28px 0 18px; }
  body.jr-readability-refresh .jr-intent-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  body.jr-readability-refresh .jr-intent-grid a { padding: 16px 13px; gap: 10px; }
  body.jr-readability-refresh .jr-intent-grid strong { font-size: 16px; }
  body.jr-readability-refresh .jr-intent-grid span { font-size: 12px; }
  body.jr-readability-refresh .jr-next-step { padding: 20px 16px; }
  body.jr-readability-refresh .jr-next-step div { display: grid; grid-template-columns: 1fr; }
  body.jr-readability-refresh .jr-next-step a { justify-content: space-between; }
  body.jr-readability-refresh #ninbai-guidebook-fab { bottom: 80px; left: 12px; right: auto; max-width: calc(100vw - 96px); }
}
@media (prefers-reduced-motion: reduce) {
  body.jr-readability-refresh .jr-intent-grid a { transition: none; }
}
@media (max-width: 360px) {
  body.jr-readability-refresh .jr-intent-grid { grid-template-columns: 1fr; }
}
