/* 買取蔵人 公式ブランドカラー整理（2026-08-15） */
:root {
  --brand-primary: #1658A0;
  --brand-accent: #1E8FC9;
  --brand-primary-dark: #124B88;
  --brand-primary-deep: #0E3D72;
  --brand-primary-rgb: 22, 88, 160;
  --brand-accent-rgb: 30, 143, 201;
  --key: var(--brand-primary);
  --key-dark: var(--brand-primary-dark);
  --r2-feature-axis-blue: var(--brand-primary);
  --brand-font-heading: "Noto Sans JP", "Yu Gothic", "Hiragino Kaku Gothic ProN", sans-serif;
}

/*
 * 既存の明朝指定を Noto Sans JP に置き換える。
 * サイズ・ウェイト・行間は既存値を維持し、字形だけをゴシックへ統一する。
 */
.logo-lead span,
.fvc-h1,
.h2,
.cta2 h2,
.htl-year,
section[data-sec="06 FEATURES 特徴"] .eyebrow,
section[data-sec="06 FEATURES 特徴"] .h2,
section[data-sec="06 FEATURES 特徴"] .xf-num,
section[data-sec="06 FEATURES 特徴"] .xf-label,
section[data-sec="06 FEATURES 特徴"] .xf-copy h3,
section[data-sec="06 FEATURES 特徴"] .xf-footer-mark,
section[data-sec="07 RESULT 導入成果"] .results-intro .h2,
.results-center strong,
.rc-label,
.fv4ref-copy,
.fv4ref-copy h1,
.fv4ref-product-sub,
.fv4ref-product-sub strong,
.fv4ref-logo-card .logo-lead span,
.fch-title,
.fch-index,
.fch-copy h3,
.fv2-pos,
.fv2-pos .en,
.fv2-h1a,
.fv2-h1b,
.fv2-h1c {
  font-family: var(--brand-font-heading) !important;
}

/* Header / navigation */
.header .logo img {
  content: url("kaitori-logo-transparent-supplied-20260210.png");
  width: auto;
  height: 54px;
  object-fit: contain;
}
.nav a:hover,
.nav a[aria-current="page"],
.header-tel-icon,
.header-demo-btn,
.header-demo-btn i { color: var(--brand-primary); }
.header-demo-btn { border-color: var(--brand-primary); }
.header-demo-btn:hover {
  color: #fff;
  background: var(--brand-primary);
}
.header-contact-btn,
.btn-primary,
.btn2-primary {
  color: #fff;
  background: var(--brand-primary);
  border-color: var(--brand-primary);
}
.header-contact-btn:hover,
.btn-primary:hover,
.btn2-primary:hover {
  background: var(--brand-primary-dark);
  border-color: var(--brand-primary-dark);
}

/* Shared light-section typography */
.h2,
.news-head .h2,
.post-card h3,
.news-item .ttl,
.feature-row h3,
.feature-card h3 { color: var(--brand-primary-deep); }
.h2::after {
  background: linear-gradient(90deg, var(--brand-primary), var(--brand-accent), transparent);
}
.eyebrow,
.fr-no,
.feature-no { color: rgba(var(--brand-primary-rgb), .18); }
a,
.num { text-decoration-color: rgba(var(--brand-accent-rgb), .45); }

/* Hero: dark surface remains readable; accent is a controlled edge light. */
.fv4ref {
  --fv4-blue-bg: linear-gradient(105deg, #0E3D72 0%, #124B88 28%, #1658A0 70%, #1E8FC9 145%);
  --fv4-fade-rule: linear-gradient(90deg, transparent 0%, var(--brand-primary) 18%, var(--brand-accent) 72%, transparent 100%);
}
.fv4ref-industry-nav a,
.fv4ref-copy,
.fv4ref-product-ruby,
.fv4ref-badge,
.fv4ref-logo-title { color: var(--brand-primary-deep); }
.fv4ref-industry-nav a { border-color: rgba(var(--brand-primary-rgb), .38); }
.fv4ref-product-sub {
  background: linear-gradient(100deg, #0E3D72 0%, #1658A0 82%, #1E8FC9 155%);
}
.fv4ref-product-logo {
  width: 282px;
  height: auto;
  object-fit: contain;
}
.fv4ref-badge {
  background:
    linear-gradient(#fff, #fff) padding-box,
    conic-gradient(from 212deg, var(--brand-primary-deep), var(--brand-primary), #e7edf4, var(--brand-accent), var(--brand-primary-deep)) border-box;
}
.fv4ref-logo-card h3::before,
.fv4ref-logo-card h3::after,
.fv4ref-function-item::before {
  border-color: var(--brand-accent);
  color: var(--brand-accent);
}
.fv4ref-function-icon { border-color: rgba(var(--brand-accent-rgb), .5); }
.fv4ref-function-icon i { color: var(--brand-accent); }

/* Official mark stays full-color on the small dark device. */
.switch-q4-mobile-device.is-after img {
  box-sizing: border-box;
  max-width: 72%;
  padding: 7px 9px;
  background: #fff;
  border-radius: 5px;
}

/* Features */
section[data-sec="06 FEATURES 特徴"] .h2,
.feature-row .fr-catch,
.feature-card .feature-title { color: var(--brand-primary-deep); }
.feature-row:nth-child(odd),
.feature-card:nth-child(odd) { background-color: rgba(var(--brand-accent-rgb), .035); }
.feature-row:nth-child(even),
.feature-card:nth-child(even) { background-color: rgba(var(--brand-primary-rgb), .02); }
section.features-card-h {
  background:
    radial-gradient(circle at 100% 0%, rgba(var(--brand-accent-rgb), .1), transparent 30%),
    linear-gradient(180deg, #fff 0%, #f7fafd 100%);
}
.fch-title,
.fch-copy h3 { color: var(--brand-primary-deep); }
.fch-en { color: rgba(var(--brand-primary-rgb), .13); }
.fch-head-rule,
.fch-card::before {
  background: linear-gradient(90deg, var(--brand-primary) 0%, var(--brand-accent) 42%, rgba(var(--brand-accent-rgb), 0) 100%);
}
.fch-card { border-color: rgba(var(--brand-primary-rgb), .16); }
.fch-card:nth-child(2),
.fch-card:nth-child(3) {
  background: radial-gradient(circle at 100% 0%, rgba(var(--brand-accent-rgb), .055), transparent 42%), linear-gradient(145deg, #fcfdff 0%, #f7fafd 100%);
}
.fch-index { color: rgba(var(--brand-primary-rgb), .28); }
.fch-index small,
.fch-icon svg { color: var(--brand-primary); }
.fch-icon {
  background: radial-gradient(circle at 32% 28%, #fff 0%, rgba(var(--brand-accent-rgb), .08) 54%, rgba(var(--brand-primary-rgb), .11) 100%);
}

/* Results / dark editorial sections */
.results-sec,
.history-sec,
.cta2,
.ft { background-color: var(--brand-primary-deep); }
.results-sec::before {
  background: linear-gradient(112deg, rgba(14, 61, 114, .92), rgba(22, 88, 160, .86) 67%, rgba(30, 143, 201, .68) 135%);
}
.results-v3 {
  background-color: var(--brand-primary-deep) !important;
}
section[data-sec="07 RESULT 導入成果"]::before {
  background: linear-gradient(108deg, rgba(14, 61, 114, .93) 0%, rgba(22, 88, 160, .86) 68%, rgba(30, 143, 201, .66) 145%) !important;
}
.orbit-ring { border-color: rgba(var(--brand-accent-rgb), .7); }
.orbit-axis { background: rgba(var(--brand-accent-rgb), .64); }
.results-center {
  border-color: rgba(255, 255, 255, .82);
  background: radial-gradient(circle at 36% 26%, var(--brand-accent) 0%, var(--brand-primary) 42%, var(--brand-primary-deep) 100%);
  box-shadow: 0 0 42px rgba(var(--brand-accent-rgb), .28);
}
section[data-sec="07 RESULT 導入成果"] .results-orbit .rcard {
  border-color: var(--brand-primary) !important;
  box-shadow: 0 0 0 2px rgba(var(--brand-accent-rgb), .32), 0 22px 54px rgba(0, 18, 45, .38) !important;
}
section[data-sec="07 RESULT 導入成果"] .results-orbit .rcard h3 {
  color: var(--brand-primary-deep);
}
.rc-label {
  background: linear-gradient(180deg, var(--brand-primary), var(--brand-primary-deep));
  box-shadow: 0 7px 14px rgba(var(--brand-primary-rgb), .2);
}
.result-hub {
  background: radial-gradient(circle at 36% 28%, #1E8FC9 0%, #1658A0 38%, #0E3D72 100%);
  border-color: rgba(255, 255, 255, .8);
  box-shadow: 0 14px 38px rgba(8, 44, 82, .34), 0 0 0 1px rgba(var(--brand-accent-rgb), .26);
}
.result-item,
.result-card { border-color: var(--brand-primary); }
.result-item h3,
.result-card h3 { color: var(--brand-primary-deep); }
.history-sec {
  background-color: var(--brand-primary-deep);
  background-blend-mode: multiply, normal;
}
.history-sec::before {
  background: linear-gradient(105deg, rgba(14, 61, 114, .88), rgba(22, 88, 160, .8) 72%, rgba(30, 143, 201, .58) 145%);
}
.cta2,
.ft {
  background-image: linear-gradient(105deg, #0E3D72 0%, #124B88 30%, #1658A0 76%, #1E8FC9 150%);
}

/* Official full-color logo on dark footer. */
.ft-logo-img {
  content: url("kaitori-logo-transparent-supplied-20260210.png");
  box-sizing: border-box;
  width: 220px;
  height: auto;
  padding: 11px 14px;
  background: #fff;
  border-radius: 7px;
}
.ft a:hover,
.ft-sns a:hover {
  color: #fff;
  border-color: var(--brand-accent);
  background-color: rgba(var(--brand-accent-rgb), .22);
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 3px solid rgba(var(--brand-accent-rgb), .7);
  outline-offset: 3px;
}

@media (max-width: 1800px) {
  .header .logo img { height: 40px; }
}
@media (max-width: 1450px) {
  .header .logo img { height: 38px; }
}
