:root {
  --linqwall-navy: #004190;
  --linqwall-blue: #0094d5;
  --linqwall-pale: #eef7fc;
}

/* Keep the supplied mark at its natural aspect ratio in each logo area. */
.header .logo {
  box-sizing: border-box;
  height: 95px;
  padding-top: 0;
  display: flex;
  align-items: center;
}

.header .logo img {
  display: block;
  width: 282px;
  height: auto;
}

.site-header-logo .txt {
  margin-top: 0;
  margin-left: 16px;
}

.footer .logo img {
  display: block;
  width: min(260px, 100%);
  height: auto;
  margin-inline: auto;
}

.floating .logo img {
  display: block;
  width: 220px;
  height: auto;
}

@media (max-width: 767px) {
  .header .logo.site-header-logo {
    height: auto;
    min-height: 78px;
    padding: 7px 64px 8px !important;
    justify-content: center;
  }

  .site-header-logo > a {
    flex-direction: column;
  }

  .header .logo img {
    width: min(230px, calc(100vw - 128px));
  }

  .site-header-logo .txt {
    margin: 2px 0 0;
    font-size: 12px;
    line-height: 1.3;
  }
}

.txt_link_red,
.mv .area02 .item3 strong,
.mv .area02 .item2 strong,
.mes01 h2 span,
.reason_head .txt span,
.point .ttl span,
.point .list .txt span,
.point .list .txt a:hover,
.what .ttl,
.what .list li .txt span,
.what .list li > .txt strong,
.case .ttl span,
.voice .ttl span,
.product .area01 .icn,
.flow .list li p a,
.flow .ttl span,
.txt_red,
.question .ttl span,
.question dl dd a,
.policy .ttl span {
  color: var(--linqwall-navy);
}

.header .icn span,
.mv .area01 .item1 h2,
.mv .area01 .item2 h2,
.mv .area01 .item3 h2,
.nav li,
.bnr01 .icn span,
.reason,
.what .list li > .icn,
.voice .list li::before,
.product,
.product .item .icn,
.question dl dt > span:first-of-type,
.wrap_form .submit input,
.wrap_form .box {
  background-color: var(--linqwall-navy);
}

.floating {
  border-top-color: var(--linqwall-blue);
}

.flow .list li p a {
  border-bottom-color: var(--linqwall-navy);
}

.product .area01 .icn {
  background: var(--linqwall-pale);
}

.product .item .img img {
  width: 400px;
  height: 313px;
  object-fit: contain;
}

/* linqwall-004: remove the seven remaining red UI/diagram treatments. */
.nav {
  background: var(--linqwall-navy);
}

.nav .inner li {
  background: var(--linqwall-navy);
  border-color: var(--linqwall-blue);
}

.nav .inner li:last-of-type {
  border-right-color: var(--linqwall-blue);
}

.nav .inner li::before {
  border-color: var(--linqwall-blue) transparent transparent;
}

.mes01 .list .icn,
.reason .list101 li dt,
.point .list .icn,
.flow .list li dt {
  background: linear-gradient(90deg, var(--linqwall-navy), var(--linqwall-blue));
}

.mes01 .list .txt span,
.point .list .txt span {
  background: linear-gradient(transparent 60%, #d9f1fb 60%);
  color: var(--linqwall-navy);
}

.reason_head::after {
  border-color: var(--linqwall-blue) transparent transparent;
}

.what .list li.arw::before {
  background-image: url('/assets/linqwall/arw-what-blue.svg');
}

.flow .list li::after {
  background-image: url('/assets/linqwall/arw-what-blue.svg');
  transform: rotate(90deg);
}

.flow .list li dd {
  background: var(--linqwall-pale);
}

/* 2026-10-12 owner report: the ラインナップ bar had navy text on a navy background (invisible). Keep white text like video-wall.jp. */
.what .list li > .icn { color: #fff; }

/* 2026-10-13 owner request 2: Noto Sans JP site-wide (self-hosted, /assets/fonts/noto-sans-jp.css). The fallbacks are
   the previous stack, so text stays readable while the web font loads (font-display: swap). Numbers keep Arial (.num). */
html,
body {
  font-family: 'Noto Sans JP', 'Noto Sans JP Full', system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Hiragino Kaku Gothic ProN', Meiryo, sans-serif;
}

button,
input,
select,
textarea {
  font-family: inherit;
}

/* One h1 per page (request 5): the PC hero heading became a paragraph; keep the former h1 weight. */
.mv .area02 .item12 .lw-hero-heading {
  font-weight: bold;
}

/* Preview build only (LINQWALL_RELEASE unset): removed from the release build. */
.lw-preview-banner {
  padding: 10px;
  text-align: center;
  background: #e8f4fb;
  color: #00356f;
  font-size: 13px;
  font-weight: 700;
}

/* Heading order (request 5): the contact banner sentence is a paragraph now (it was an h3 before the first h2).
   Same look as site.css `.bnr01 h3` (+ the former h3 bold). */
.bnr01 .bnr01-lead {
  padding-top: 40px;
  text-align: center;
  font-size: 125%;
  font-weight: bold;
  color: #fff;
  padding-bottom: 30px;
}

@media (max-width: 767px) {
  .bnr01 .bnr01-lead {
    text-align: left;
    font-size: 110%;
  }
}

/* Accessibility: the footer copyright was #b8b8b8 on #f8f8f8 (contrast 1.9:1); same footer on every page. */
.footer .copyright {
  color: #6b6b6b;
}

