@charset "UTF-8";

/* LTV palette from LOGO LTV.png. Load after the existing page styles.
   Presentation only: preserve layout, CMS content, imagery and interactions. */
:root {
  --ltv-ink: #084854;
  --ltv-deep: #053640;
  --ltv-green: #08c573;
  --ltv-link: #087354;
  --ltv-mint: #edf8f3;
  --ltv-mint-strong: #d9f1e7;
  --ltv-line: #c8e3d8;
}

/* Header and shared navigation. */
a, .h-tel { color: var(--ltv-ink); }
#gnavi, .submenu a { background-color: var(--ltv-ink); }
.gnavi > li:hover > a, .gnavi > li.active > a {
  background-color: var(--ltv-green);
  color: var(--ltv-deep);
}
.submenu a { border-bottom-color: rgba(255, 255, 255, .2); }
.submenu a:hover { background-color: var(--ltv-link); color: #fff; }
.submenu-ttl { color: var(--ltv-ink); }
.sub-row { background-color: var(--ltv-mint); }
.form-search, .frm-main { background-color: var(--ltv-ink); }
.frm-main { box-shadow: 0 0 7px 1px rgba(8, 73, 85, .35); }
.h_lang_mb { color: var(--ltv-ink); border-color: var(--ltv-ink); }
.h-search-ttl img, .h-info:before,
.tnsm-item:nth-child(1) .tnsm-item-ttl,
.tnsm-item:nth-child(5) .tnsm-item-ttl {
  filter: hue-rotate(-42deg) saturate(.9);
}

/* Homepage headings, surfaces and actions. */
.box01 .idx-ttl, .box02 .idx-ttl, .box04 .idx-ttl,
.box06 .idx-ttl, .box07 .idx-ttl,
.b01-list li, .b08-new-ttl { color: var(--ltv-ink); }
.b01-video { background-color: var(--ltv-mint-strong); }
.box02, .box06, .b08-new-main, .b08-new-item a { background-color: var(--ltv-mint); }
.idx-btn a, .b01_download_profile a {
  background-color: var(--ltv-green);
  color: var(--ltv-deep);
}
.idx-btn a:before { background-color: var(--ltv-ink); }
.idx-btn a:hover, .idx-btn a:focus-visible,
.b01_download_profile a:hover, .b01_download_profile a:focus-visible {
  background-color: var(--ltv-ink);
  color: #fff;
}
.idx-btn a:focus-visible:before { left: -40px; top: -35px; }
.slide-item .slide-item-bg { background-color: rgba(8, 73, 85, .38); }
.b04-item:not(.b04-itm-main), .b07-right-list p { border-color: var(--ltv-line); }
.b07-right { border-left-color: var(--ltv-line); }
.b04-item a:hover .b04-itm-ttl { color: var(--ltv-link); }

/* Retain the photographs while replacing their blue wash with brand teal. */
.box03 {
  background-color: var(--ltv-deep);
  background-image: linear-gradient(rgba(5, 54, 64, .92), rgba(8, 73, 85, .88)), url("/W_images/b03_bg.jpg");
}
.box03 .idx-ttl, .b03-itm-ttl { color: var(--ltv-green); }
.b03-itm-img { border-color: var(--ltv-green); }
.b03-itm-img img { filter: brightness(0) invert(1); }
.box05 { background-color: var(--ltv-ink); }
.b05-itm-num { color: var(--ltv-green); }
.b05-item { border-bottom-color: rgba(255, 255, 255, .18); }
.b07-left .slick-arrow { background-color: var(--ltv-ink); }
.b07-left .slick-arrow:hover { background-color: var(--ltv-link); }
.box08 {
  background-color: var(--ltv-deep);
  background-image: linear-gradient(rgba(5, 54, 64, .9), rgba(8, 73, 85, .88)), url("/W_images/b08_bg.jpg");
}
.b08-main-date, .b08-main-btn { color: var(--ltv-green); }
.b08-new-item a:hover .b08-new-ttl { color: var(--ltv-link); }

/* Footer social strip has an existing inline background. */
.footer-main, #footer .f-social { background-color: var(--ltv-ink) !important; }
.footer-info { background-color: var(--ltv-deep); }
.copyright { border-top-color: rgba(255, 255, 255, .18); }
.footer-main a:hover, .footer-info a:hover { color: var(--ltv-green); }

/* Shared inner-page navigation and editorial content. */
body .under .mainvisual, body .under-mainvisual {
  background-color: var(--ltv-ink) !important;
  background-blend-mode: luminosity;
}
.topic-path { background-color: var(--ltv-mint-strong); }
.topic-path li, .topic-path a { color: var(--ltv-ink); }
.topic-path a:hover { color: var(--ltv-link); }
.topic-path li:not(:last-child):after {
  border-right-color: var(--ltv-line);
  border-bottom-color: var(--ltv-line);
}
.pager a:hover, .pager a:first-child:hover, .pager a:last-child:hover,
.pager strong { background-color: var(--ltv-ink); color: #fff; border-color: var(--ltv-ink); }
.xvnet-content a, #mucluc a { color: var(--ltv-link); }
.xvnet-content h2, .xvnet-content h3,
.content-ttl .detail-ttl, .under .page-ttl, .mtcl-item-ttl,
body .box-des h2, body .box-des h3, body .box1 h3, body .box2 h3,
body .box3 div p { color: var(--ltv-ink); }
.xvnet-content h3 span { color: var(--ltv-ink) !important; }
.news-item:hover .news-ttl, .news-item:hover .news-ttl[style] {
  color: var(--ltv-link) !important;
}
.under .sidenews-item a:hover .sidenews-itm-ttl { color: var(--ltv-link); }
.xvnet-content table th, th { background-color: var(--ltv-ink); color: #fff; }
.xvnet-content table tr:nth-child(even) { background-color: var(--ltv-mint); }
.xvnet-content table tr:hover { background-color: var(--ltv-mint-strong); }
#mucluc { background-color: var(--ltv-mint); }
body .box-des h2:before { background-color: var(--ltv-green); }
body .box1 ul li:before, body .box2 h3:before, body .box2 ul li:before,
.tnsm-content ul li:before, body .box3 div p:before {
  border-top-color: var(--ltv-link);
  border-right-color: var(--ltv-link);
}
.tnsm-content.ct2 li:before { border-top-color: #fff; border-right-color: #fff; }
.tnsm-item:nth-child(1), .tnsm-item:nth-child(5) {
  background-color: var(--ltv-mint-strong) !important;
}
.tnsm-item:nth-child(2) { background-color: var(--ltv-link) !important; }
.tnsm-item:nth-child(3) { background-color: var(--ltv-ink) !important; }
.tnsm-item:nth-child(4) { background-color: var(--ltv-deep) !important; }
.mtcl-item { background-color: var(--ltv-mint); }
.mtcl-item-alt { background-color: var(--ltv-mint-strong); }

/* Customer tabs and contact forms keep their existing handlers. */
ul.cust-tabs li, .cust-itm-ttl, .add_itm, .btn-new {
  background-color: var(--ltv-ink);
}
ul.cust-tabs li.current, ul.cust-tabs li:hover {
  background-color: var(--ltv-green);
  color: var(--ltv-deep);
}
.cust-tab-content { border-top-color: var(--ltv-green); }
.add_itm:hover { background-color: var(--ltv-link); }
.add_list_box::-webkit-scrollbar-thumb { background-color: var(--ltv-ink); }
.btn-new:hover { background-color: var(--ltv-link); opacity: 1; }
.form-group-btn button { color: var(--ltv-ink); }
.form-group-btn button:hover { background-color: var(--ltv-green); color: var(--ltv-deep); }
.form-control:focus, .form-group input:focus, .form-group textarea:focus {
  border-color: var(--ltv-link);
  box-shadow: 0 0 0 3px rgba(0, 196, 121, .22);
}
.btn_request {
  background: linear-gradient(135deg, var(--ltv-ink), var(--ltv-link));
  border-color: var(--ltv-green);
  color: #fff;
  animation: none;
}
.btn_request:hover { background: var(--ltv-deep); color: #fff; }

/* Restore a visible keyboard focus without changing element dimensions. */
a:focus-visible, button:focus-visible, input:focus-visible,
textarea:focus-visible, select:focus-visible, [tabindex]:focus-visible {
  outline: 2px solid var(--ltv-link);
  outline-offset: 3px;
}
#gnavi a:focus-visible, #footer a:focus-visible, .frm-main button:focus-visible {
  outline-color: var(--ltv-green);
}

@media screen and (max-width: 768px) {
  #gnavi { background-color: rgba(237, 248, 243, .97); }
  .gnavi > li > a { background-color: var(--ltv-ink); }
  .gnavi > li:hover > a, .gnavi > li.active > a {
    background-color: var(--ltv-green);
    color: var(--ltv-deep);
  }
  .submenu-ttl, .submenu-ttl a { background-color: var(--ltv-deep); color: #fff; }
  .sub-row { background-color: transparent; }
  .menu-icon { background-color: var(--ltv-ink); }
  .h_lang_mb { border-color: var(--ltv-ink); }
}

@media screen and (max-width: 480px) {
  .b08-main-info { background: var(--ltv-mint); }
  .b08-main-ttl { color: var(--ltv-ink); }
  .b08-main-date, .b08-main-btn { color: var(--ltv-link); }
}
