/* ===================================================================
   共通フォント設定 (LightningChart 全ページ適用)
   =================================================================== */

/* Google Fonts の読み込み: Noto Sans JP, Roboto Mono, Fira Code */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;700&family=Roboto+Mono:wght@400;700&family=Fira+Code:wght@400;700&display=swap');

/* 全ページに統一されたフォント設定を適用 */
body,
html {
  font-family: 'Noto Sans JP', sans-serif;
}

/* 見出しにもNoto Sans JPを適用 */
h1, h2, h3, h4, h5, h6 {
  font-family: 'Noto Sans JP', sans-serif;
}

/* モノスペースフォント用のクラス（コードブロックやターミナル表示用） */
.font-mono,
code,
pre {
  font-family: 'Fira Code', 'Roboto Mono', monospace;
}

/* ===================================================================
   既存のスタイル定義
   =================================================================== */

nav {
  display: block;
}

.dropup .caret,
.prodnavbar-fixed-bottom .dropdown .caret {
  content: "";
  border-top: 0;
  border-bottom: 4px solid;
}

.dropup .dropdown-menu,
.prodnavbar-fixed-bottom .dropdown .dropdown-menu {
  top: auto;
  bottom: 100%;
  margin-bottom: 2px;
}

@media (min-width: 992px) {
  .prodnavbar-right .dropdown-menu {
    right: 0;
    left: auto;
  }
  .prodnavbar-right .dropdown-menu-left {
    right: auto;
    left: 0;
  }
}

.prodnav {
  padding-left: 0;
  margin-bottom: 0;
  list-style: none;
}

.prodnav>li {
  position: relative;
  display: block;
}

.prodnav>li>a {
  position: relative;
  display: block;
  padding: 10px 15px;
}

.prodnav>li>a:hover,
.prodnav>li>a:focus {
  text-decoration: none;
  background-color: #eee;
}

.prodnav>li.disabled>a {
  color: #777;
}

.prodnav>li.disabled>a:hover,
.prodnav>li.disabled>a:focus {
  color: #777;
  text-decoration: none;
  cursor: not-allowed;
  background-color: transparent;
}

.prodnav .open>a,
.prodnav .open>a:hover,
.prodnav .open>a:focus {
  background-color: #eee;
  border-color: #337ab7;
}

.prodnav .prodnav-divider {
  height: 1px;
  margin: 9px 0;
  overflow: hidden;
  background-color: #e5e5e5;
}

.prodnav>li>a>img {
  max-width: none;
}

.prodnav-tabs {
  border-bottom: 1px solid #ddd;
}

.prodnav-tabs>li {
  float: left;
  margin-bottom: -1px;
}

.prodnav-tabs>li>a {
  margin-right: 2px;
  line-height: 1.42857143;
  border: 1px solid transparent;
  border-radius: 4px 4px 0 0;
}

.prodnav-tabs>li>a:hover {
  border-color: #eee #eee #ddd;
}

.prodnav-tabs>li.active>a,
.prodnav-tabs>li.active>a:hover,
.prodnav-tabs>li.active>a:focus {
  color: #555;
  cursor: default;
  background-color: #fff;
  border: 1px solid #ddd;
  border-bottom-color: transparent;
}

.prodnav-tabs.prodnav-justified {
  width: 100%;
  border-bottom: 0;
}

.prodnav-tabs.prodnav-justified>li {
  float: none;
}

.prodnav-tabs.prodnav-justified>li>a {
  margin-bottom: 5px;
  text-align: center;
}

.prodnav-tabs.prodnav-justified>.dropdown .dropdown-menu {
  top: auto;
  left: auto;
}

@media (min-width: 992px) {
  .prodnav-tabs.prodnav-justified>li {
    display: table-cell;
    width: 1%;
  }
  .prodnav-tabs.prodnav-justified>li>a {
    margin-bottom: 0;
  }
}

.prodnav-tabs.prodnav-justified>li>a {
  margin-right: 0;
  border-radius: 4px;
}

.prodnav-tabs.prodnav-justified>.active>a,
.prodnav-tabs.prodnav-justified>.active>a:hover,
.prodnav-tabs.prodnav-justified>.active>a:focus {
  border: 1px solid #ddd;
}

@media (min-width: 992px) {
  .prodnav-tabs.prodnav-justified>li>a {
    border-bottom: 1px solid #ddd;
    border-radius: 4px 4px 0 0;
  }
  .prodnav-tabs.prodnav-justified>.active>a,
  .prodnav-tabs.prodnav-justified>.active>a:hover,
  .prodnav-tabs.prodnav-justified>.active>a:focus {
    border-bottom-color: #fff;
  }
}

.prodnav-pills>li {
  float: left;
}

.prodnav-pills>li>a {
  border-radius: 4px;
}

.prodnav-pills>li+li {
  margin-left: 2px;
}

.prodnav-pills>li.active>a,
.prodnav-pills>li.active>a:hover,
.prodnav-pills>li.active>a:focus {
  color: #fff;
  background-color: #337ab7;
}

.prodnav-stacked>li {
  float: none;
}

.prodnav-stacked>li+li {
  margin-top: 2px;
  margin-left: 0;
}

.prodnav-justified {
  width: 100%;
}

.prodnav-justified>li {
  float: none;
}

.prodnav-justified>li>a {
  margin-bottom: 5px;
  text-align: center;
}

.prodnav-justified>.dropdown .dropdown-menu {
  top: auto;
  left: auto;
}

@media (min-width: 992px) {
  .prodnav-justified>li {
    display: table-cell;
    width: 1%;
  }
  .prodnav-justified>li>a {
    margin-bottom: 0;
  }
}

.prodnav-tabs-justified {
  border-bottom: 0;
}

.prodnav-tabs-justified>li>a {
  margin-right: 0;
  border-radius: 4px;
}

.prodnav-tabs-justified>.active>a,
.prodnav-tabs-justified>.active>a:hover,
.prodnav-tabs-justified>.active>a:focus {
  border: 1px solid #ddd;
}

@media (min-width: 992px) {
  .prodnav-tabs-justified>li>a {
    border-bottom: 1px solid #ddd;
    border-radius: 4px 4px 0 0;
  }
  .prodnav-tabs-justified>.active>a,
  .prodnav-tabs-justified>.active>a:hover,
  .prodnav-tabs-justified>.active>a:focus {
    border-bottom-color: #fff;
  }
}

.tab-content>.tab-pane {
  display: none;
  visibility: hidden;
}

.tab-content>.active {
  display: block;
  visibility: visible;
}

.prodnav-tabs .dropdown-menu {
  margin-top: -1px;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.prodnavbar {
  position: relative;
  min-height: 50px;
  margin-bottom: 20px;
  border-bottom: 7px solid transparent;
}

@media (min-width: 992px) {
  .prodnavbar {
    border-radius: 0;
  }
}

@media (min-width: 992px) {
  .prodnavbar-header {
    float: left;
  }
}

.prodnavbar-collapse {
  padding-right: 15px;
  padding-left: 15px;
  overflow-x: visible;
  -webkit-overflow-scrolling: touch;
  border-top: 1px solid transparent;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1);
}

.prodnavbar-collapse.in {
  overflow-y: auto;
}

@media (min-width: 992px) {
  .prodnavbar-collapse {
    width: auto;
    border-top: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    float: right;
  }
  .prodnavbar-collapse.collapse {
    display: block !important;
    height: auto !important;
    padding-bottom: 0;
    overflow: visible !important;
    visibility: visible !important;
  }
  .prodnavbar-collapse.in {
    overflow-y: visible;
  }
  .prodnavbar-fixed-top .prodnavbar-collapse,
  .prodnavbar-static-top .prodnavbar-collapse,
  .prodnavbar-fixed-bottom .prodnavbar-collapse {
    padding-right: 0;
    padding-left: 0;
  }
}

.prodnavbar-fixed-top .prodnavbar-collapse,
.prodnavbar-fixed-bottom .prodnavbar-collapse {
  max-height: 340px;
}

@media (max-device-width: 480px) and (orientation: landscape) {
  .prodnavbar-fixed-top .prodnavbar-collapse,
  .prodnavbar-fixed-bottom .prodnavbar-collapse {
    max-height: 200px;
  }
}

.container>.prodnavbar-header,
.container-fluid>.prodnavbar-header,
.container>.prodnavbar-collapse,
.container-fluid>.prodnavbar-collapse {
  margin-right: -15px;
  margin-left: -15px;
}

@media (min-width: 992px) {
  .container>.prodnavbar-header,
  .container-fluid>.prodnavbar-header,
  .container>.prodnavbar-collapse,
  .container-fluid>.prodnavbar-collapse {
    margin-right: 0;
    margin-left: 0;
  }
}

.prodnavbar-static-top {
  z-index: 1000;
  border-width: 0 0 1px;
}

@media (min-width: 992px) {
  .prodnavbar-static-top {
    border-radius: 0;
  }
}

.prodnavbar-fixed-top,
.prodnavbar-fixed-bottom {
  position: fixed;
  right: 0;
  left: 0;
  z-index: 1030;
}

@media (min-width: 992px) {
  .prodnavbar-fixed-top,
  .prodnavbar-fixed-bottom {
    border-radius: 0;
  }
}

.prodnavbar-fixed-top {
  top: 0;
  border-width: 0 0 1px;
}

.prodnavbar-fixed-bottom {
  bottom: 0;
  margin-bottom: 0;
  border-width: 1px 0 0;
}

.prodnavbar-brand {
  float: left;
  background: url(../images/logo_darkbg.svg) 0 no-repeat;
  width: 222px;
  height: 43px;
  display: block;
  margin: 9px 0;
  font-size: 20px;
  font-weight: 200;
  color: #fff;
  text-indent: -9999px;
  position: relative;
}

.prodnavbar-brand:hover,
.prodnavbar-brand:focus {
  text-decoration: none;
}

.prodnavbar-brand>img {
  display: block;
}

@media (min-width: 992px) {
  .prodnavbar>.container .prodnavbar-brand,
  .prodnavbar>.container-fluid .prodnavbar-brand {
    margin-left: -15px;
  }
}

.prodnavbar-toggle {
  position: relative;
  float: right;
  padding: 9px 10px;
  margin-top: 8px;
  margin-right: 15px;
  margin-bottom: 8px;
  background-color: transparent;
  background-image: none;
  border: 1px solid transparent;
  border-radius: 4px;
}

.prodnavbar-toggle:focus {
  outline: 0;
}

.prodnavbar-toggle .icon-bar {
  display: block;
  width: 22px;
  height: 2px;
  border-radius: 1px;
}

.prodnavbar-toggle .icon-bar+.icon-bar {
  margin-top: 4px;
}

@media (min-width: 992px) {
  .prodnavbar-toggle {
    display: none;
  }
}

.prodnavbar-nav {
  margin: 7.5px -15px;
}

.prodnavbar-nav>li>a {
  padding-top: 10px;
  padding-bottom: 10px;
  line-height: 20px;
}

@media (max-width: 991px) {
  .prodnavbar-nav .open .dropdown-menu {
    position: static;
    float: none;
    width: auto;
    margin-top: 0;
    background-color: transparent;
    border: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
  .prodnavbar-nav .open .dropdown-menu>li>a,
  .prodnavbar-nav .open .dropdown-menu .dropdown-header {
    padding: 5px 15px 5px 25px;
  }
  .prodnavbar-nav .open .dropdown-menu>li>a {
    line-height: 20px;
  }
  .prodnavbar-nav .open .dropdown-menu>li>a:hover,
  .prodnavbar-nav .open .dropdown-menu>li>a:focus {
    background-image: none;
  }
}

@media (min-width: 992px) {
  .prodnavbar-nav {
    float: left;
    margin: 0;
  }
  .prodnavbar-nav>li {
    float: left;
  }
  .prodnavbar-nav>li>a {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}

.prodnavbar-form {
  padding: 10px 15px;
  margin-top: 8px;
  margin-right: -15px;
  margin-bottom: 8px;
  margin-left: -15px;
  border-top: 1px solid transparent;
  border-bottom: 1px solid transparent;
  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1), 0 1px 0 rgba(255, 255, 255, .1);
}

@media (min-width: 992px) {
  .prodnavbar-form .form-group {
    display: inline-block;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .prodnavbar-form .form-control {
    display: inline-block;
    width: auto;
    vertical-align: middle;
  }
  .prodnavbar-form .form-control-static {
    display: inline-block;
  }
  .prodnavbar-form .input-group {
    display: inline-table;
    vertical-align: middle;
  }
  .prodnavbar-form .input-group .input-group-addon,
  .prodnavbar-form .input-group .input-group-btn,
  .prodnavbar-form .input-group .form-control {
    width: auto;
  }
  .prodnavbar-form .input-group>.form-control {
    width: 100%;
  }
  .prodnavbar-form .control-label {
    margin-bottom: 0;
    vertical-align: middle;
  }
  .prodnavbar-form .radio,
  .prodnavbar-form .checkbox {
    display: inline-block;
    margin-top: 0;
    margin-bottom: 0;
    vertical-align: middle;
  }
  .prodnavbar-form .radio label,
  .prodnavbar-form .checkbox label {
    padding-left: 0;
  }
  .prodnavbar-form .radio input[type="radio"],
  .prodnavbar-form .checkbox input[type="checkbox"] {
    position: relative;
    margin-left: 0;
  }
  .prodnavbar-form .has-feedback .form-control-feedback {
    top: 0;
  }
}

@media (max-width: 991px) {
  .prodnavbar-form .form-group {
    margin-bottom: 5px;
  }
  .prodnavbar-form .form-group:last-child {
    margin-bottom: 0;
  }
}

@media (min-width: 992px) {
  .prodnavbar-form {
    width: auto;
    padding-top: 0;
    padding-bottom: 0;
    margin-right: 0;
    margin-left: 0;
    border: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
}

.prodnavbar-nav>li>.dropdown-menu {
  margin-top: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}

.prodnavbar-fixed-bottom .prodnavbar-nav>li>.dropdown-menu {
  margin-bottom: 0;
  border-top-left-radius: 4px;
  border-top-right-radius: 4px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}

.prodnavbar-btn {
  margin-top: 8px;
  margin-bottom: 8px;
}

.prodnavbar-btn.btn-sm {
  margin-top: 10px;
  margin-bottom: 10px;
}

.prodnavbar-btn.btn-xs {
  margin-top: 14px;
  margin-bottom: 14px;
}

.prodnavbar-text {
  margin-top: 15px;
  margin-bottom: 15px;
}

@media (min-width: 992px) {
  .prodnavbar-text {
    float: left;
    margin-right: 15px;
    margin-left: 15px;
  }
}

@media (min-width: 992px) {
  .prodnavbar-left {
    float: left !important;
  }
  .prodnavbar-right {
    float: right !important;
    margin-right: -15px;
  }
  .prodnavbar-right~.prodnavbar-right {
    margin-right: 0;
  }
}

.prodnavbar-default {
  background-color: #f8f8f8;
  border-color: #e7e7e7;
}

.prodnavbar-default .prodnavbar-brand {
  color: #777;
}

.prodnavbar-default .prodnavbar-brand:hover,
.prodnavbar-default .prodnavbar-brand:focus {
  color: #5e5e5e;
  background-color: transparent;
}

.prodnavbar-default .prodnavbar-text {
  color: #777;
}

.prodnavbar-default .prodnavbar-nav>li>a {
  color: #777;
}

.prodnavbar-default .prodnavbar-nav>li>a:hover,
.prodnavbar-default .prodnavbar-nav>li>a:focus {
  color: #333;
  background-color: transparent;
}

.prodnavbar-default .prodnavbar-nav>.active>a,
.prodnavbar-default .prodnavbar-nav>.active>a:hover,
.prodnavbar-default .prodnavbar-nav>.active>a:focus {
  color: #555;
  background-color: #e7e7e7;
}

.prodnavbar-default .prodnavbar-nav>.disabled>a,
.prodnavbar-default .prodnavbar-nav>.disabled>a:hover,
.prodnavbar-default .prodnavbar-nav>.disabled>a:focus {
  color: #ccc;
  background-color: transparent;
}

.prodnavbar-default .prodnavbar-toggle {
  border-color: #ddd;
}

.prodnavbar-default .prodnavbar-toggle:hover,
.prodnavbar-default .prodnavbar-toggle:focus {
  background-color: #ddd;
}

.prodnavbar-default .prodnavbar-toggle .icon-bar {
  background-color: #888;
}

.prodnavbar-default .prodnavbar-collapse,
.prodnavbar-default .prodnavbar-form {
  border-color: #e7e7e7;
}

.prodnavbar-default .prodnavbar-nav>.open>a,
.prodnavbar-default .prodnavbar-nav>.open>a:hover,
.prodnavbar-default .prodnavbar-nav>.open>a:focus {
  color: #555;
  background-color: #e7e7e7;
}

@media (max-width: 991px) {
  .prodnavbar-default .prodnavbar-nav .open .dropdown-menu>li>a {
    color: #777;
  }
  .prodnavbar-default .prodnavbar-nav .open .dropdown-menu>li>a:hover,
  .prodnavbar-default .prodnavbar-nav .open .dropdown-menu>li>a:focus {
    color: #333;
    background-color: transparent;
  }
  .prodnavbar-default .prodnavbar-nav .open .dropdown-menu>.active>a,
  .prodnavbar-default .prodnavbar-nav .open .dropdown-menu>.active>a:hover,
  .prodnavbar-default .prodnavbar-nav .open .dropdown-menu>.active>a:focus {
    color: #555;
    background-color: #e7e7e7;
  }
  .prodnavbar-default .prodnavbar-nav .open .dropdown-menu>.disabled>a,
  .prodnavbar-default .prodnavbar-nav .open .dropdown-menu>.disabled>a:hover,
  .prodnavbar-default .prodnavbar-nav .open .dropdown-menu>.disabled>a:focus {
    color: #ccc;
    background-color: transparent;
  }
}

.prodnavbar-default .prodnavbar-link {
  color: #777;
}

.prodnavbar-default .prodnavbar-link:hover {
  color: #333;
}

.prodnavbar-default .btn-link {
  color: #777;
}

.prodnavbar-default .btn-link:hover,
.prodnavbar-default .btn-link:focus {
  color: #333;
}

.prodnavbar-default .btn-link[disabled]:hover,
fieldset[disabled] .prodnavbar-default .btn-link:hover,
.prodnavbar-default .btn-link[disabled]:focus,
fieldset[disabled] .prodnavbar-default .btn-link:focus {
  color: #ccc;
}

.prodnavbar-inverse {
  background-color: #141414;
  border-color: #f8c300;
}

.prodnavbar-inverse .prodnavbar-brand {
  color: #9d9d9d;
}

.prodnavbar-inverse .prodnavbar-brand:hover,
.prodnavbar-inverse .prodnavbar-brand:focus {
  color: #fff;
  background-color: transparent;
}

.prodnavbar-inverse .prodnavbar-text {
  color: #ffffff;
}

.prodnavbar-inverse .prodnavbar-nav>li>a {
  color: #ffffff;
}

.prodnavbar-inverse .prodnavbar-nav>li>a:hover,
.prodnavbar-inverse .prodnavbar-nav>li>a:focus {
  color: #f8c300;
  background-color: transparent;
}

.prodnavbar-inverse .prodnavbar-nav>.active>a,
.prodnavbar-inverse .prodnavbar-nav>.active>a:hover,
.prodnavbar-inverse .prodnavbar-nav>.active>a:focus {
  color: #fff;
  background-color: #080808;
}

.prodnavbar-inverse .prodnavbar-nav>.disabled>a,
.prodnavbar-inverse .prodnavbar-nav>.disabled>a:hover,
.prodnavbar-inverse .prodnavbar-nav>.disabled>a:focus {
  color: #444;
  background-color: transparent;
}

.prodnavbar-inverse .prodnavbar-toggle {
  border-color: #f8c300;
}

.prodnavbar-inverse .prodnavbar-toggle:hover,
.prodnavbar-inverse .prodnavbar-toggle:focus {
  background-color: #f8c300;
}

.prodnavbar-inverse .prodnavbar-toggle .icon-bar {
  background-color: #fff;
}

.prodnavbar-inverse .prodnavbar-collapse,
.prodnavbar-inverse .prodnavbar-form {
  border-color: #f8c300;
}

.prodnavbar-inverse .prodnavbar-nav>.open>a,
.prodnavbar-inverse .prodnavbar-nav>.open>a:hover,
.prodnavbar-inverse .prodnavbar-nav>.open>a:focus {
  color: #fff;
  background-color: #080808;
}

@media (max-width: 991px) {
  .prodnavbar-inverse .prodnavbar-nav .open .dropdown-menu>.dropdown-header {
    border-color: #080808;
  }
  .prodnavbar-inverse .prodnavbar-nav .open .dropdown-menu .divider {
    background-color: #080808;
  }
  .prodnavbar-inverse .prodnavbar-nav .open .dropdown-menu>li>a {
    color: #9d9d9d;
  }
  .prodnavbar-inverse .prodnavbar-nav .open .dropdown-menu>li>a:hover,
  .prodnavbar-inverse .prodnavbar-nav .open .dropdown-menu>li>a:focus {
    color: #fff;
    background-color: transparent;
  }
  .prodnavbar-inverse .prodnavbar-nav .open .dropdown-menu>.active>a,
  .prodnavbar-inverse .prodnavbar-nav .open .dropdown-menu>.active>a:hover,
  .prodnavbar-inverse .prodnavbar-nav .open .dropdown-menu>.active>a:focus {
    color: #fff;
    background-color: #080808;
  }
  .prodnavbar-inverse .prodnavbar-nav .open .dropdown-menu>.disabled>a,
  .prodnavbar-inverse .prodnavbar-nav .open .dropdown-menu>.disabled>a:hover,
  .prodnavbar-inverse .prodnavbar-nav .open .dropdown-menu>.disabled>a:focus {
    color: #444;
    background-color: transparent;
  }
}

.prodnavbar-inverse .prodnavbar-link {
  color: #9d9d9d;
}

.prodnavbar-inverse .prodnavbar-link:hover {
  color: #fff;
}

.prodnavbar-inverse .btn-link {
  color: #9d9d9d;
}

.prodnavbar-inverse .btn-link:hover,
.prodnavbar-inverse .btn-link:focus {
  color: #fff;
}

.prodnavbar-inverse .btn-link[disabled]:hover,
fieldset[disabled] .prodnavbar-inverse .btn-link:hover,
.prodnavbar-inverse .btn-link[disabled]:focus,
fieldset[disabled] .prodnavbar-inverse .btn-link:focus {
  color: #444;
}

.prodnav:before,
.prodnav:after,
.prodnavbar:before,
.prodnavbar:after,
.prodnavbar-header:before,
.prodnavbar-header:after,
.prodnavbar-collapse:before,
.prodnavbar-collapse:after {
  display: table;
  content: " ";
}

.prodnav:after,
.prodnavbar:after,
.prodnavbar-header:after,
.prodnavbar-collapse:after {
  clear: both;
}

/* Jumbotron Property */

.jumbotron {
  margin-top: 0px;
  padding-top: 0px;
  background-color: #32beed;
  background: url(../images/bg-header.png);
  background-attachment: scroll;
}

.jumbotron h1.featurette-heading {
  color: #ffffff;
  font-size: 35pt;
  font-weight: bold;
}

.jumbotron .featurette {
  color: #104b79;
}

.jumbotron .featurette ul {
  list-style-type: none;
  padding: 0px;
  margin: 0px;
}

.jumbotron .featurette ul li {
  background-image: url(../images/bullet1.png);
  background-repeat: no-repeat;
  background-position: 0px center;
  padding-left: 15px;
}

/* ===================================================================
   製品フッター (widefooter.inc) のカスタマイズ
   =================================================================== */

/* 注意: 製品フッターの基本スタイルは ../../scripts/style_bs5.css で定義されています。

   デフォルトの配色:
   - 背景色: 薄緑 (#a7f0bfd3)
   - リンク色: 青系 (#23527c)

   LightningChart 固有の配色:
   - 背景色: 黒 (#141414)
   - ボーダー: 黄色の帯 (#f8c300)
   - テキスト・リンク色: 白

   以下のスタイルで、LightningChart 固有の配色にオーバーライドしています。
   他の製品でも同様に product-style.css でカスタマイズ可能です。
*/

footer.product {
  background-color: #141414 !important;
  border-top: 7px solid #f8c300 !important;
}

footer.product h3 {
  color: #ffffff !important;
}

footer.product .footerlist {
  color: #ffffff !important;
}

footer.product .footerlist a {
  color: #ffffff !important;
  text-decoration: none;
}

footer.product .footerlist a:hover {
  color: #f8c300 !important;
  text-decoration: underline;
}

.leftmenu h4 {
  font: 700 18px/26px "PT Sans", Helvetica, Arial, sans-serif;
  margin: 0 0 10px;
  color: #4c5259;
}

.small-grpdcs {
  display: block;
  font-size: 16px;
  margin-bottom: -11px
}

.leftmenu {
  padding: 0 30px 0 0;
  border-right: 1px dashed #d6d6d6;
  min-height: 300px
}

@media (max-width: 767px) {
  .leftmenu {
    display: none;
  }
}

.products-list {
  font-size: 14px;
  margin: 0 0 25px 0;
  padding: 0;
  list-style: none
}

.products-list li {
  padding: 0 0 13px;
  border-bottom: 1px dashed #d6d6d6;
  margin-bottom: 10px;
  color: #979797
}

.products-list li:last-child {
  border-bottom: 0
}

.products-list a {
  color: #0087cb
}

.products-list a:hover {
  text-decoration: none;
  color: #53bbf0
}

.products-list .small-grpdcs {
  display: block;
  font-size: 13px;
  margin-bottom: 0
}

@media (min-width: 768px) {
  .content-products {
    padding: 0 0 0 30px;
  }
}

p.lead {
  color: #ffffff;
}

/*最新情報*/

.scr {
  overflow: scroll;
  width: 100%;
  height: 200px;
  border-radius: 5px;
  background: linear-gradient(#fff, #ebebf2);
  padding: 15px;
  text-align: left;
}

.scr dd {
  border-bottom: 1px dashed #8c8b8b;
  padding: 5px 0;
}

.clr-bg {
  background-color: #eef0f2;
  padding: 20px 0px 30px 0px;
  margin: 20px 0px;
}

h1,
h2,
h3,
h4,
h5,
p {
  color: #202020;
}

.title {
  text-align: center;
  font-size: 15px;
  margin-top: 15px;
}

.caption {
  text-align: center;
  margin-top: 6px;
  font-size: 12px;
}

.tag {
  position: relative;
  color: #fff;
  display: inline-block;
  padding: 5px;
  overflow: hidden;
  font-family: Arial, sans-serif;
  font-weight: 900;
}

.tag p {
  display: inline;
}

.tag p span {
  position: absolute;
  display: inline-block;
  right: -25px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.2), inset 0px 5px 30px rgba(255, 255, 255, 0.2);
  text-align: center;
  text-transform: uppercase;
  top: 22px;
  background: #d93131;
  width: 100px;
  padding: 3px 10px;
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
}

.tag p:before {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  top: -14px;
  right: 69px;
  z-index: -1;
  border: 17px solid;
  border-color: transparent transparent #662121 transparent;
}

.tag p:after {
  content: "";
  width: 0;
  height: 0;
  position: absolute;
  top: 74px;
  z-index: -1;
  right: -10px;
  border: 17px solid;
  border-color: #662121 transparent transparent transparent;
}

.left-border {
  border-left: 6px solid #f8c300;
  padding: 0px 0px 3px 8px;
}

.underlined {
  padding: 0px 0px 5px 0px;
  border-bottom: 1px solid #f8c300;
}

ul li {
  line-height: 160%;
}

ol li {
  line-height: 160%;
}

img.chart {
  max-width: 90%;
}

@media(max-width:1200px) {
  iframe.chart {
    max-width: 300px;
    max-height: 169px;
  }
}

@media(max-width:992px) {
  iframe.chart {
    max-width: 360px;
    max-height: 203px;
  }
}

@media(max-width:1200px) {
  iframe.new {
    max-width: 450px;
    max-height: 253px;
  }
}

@media(max-width:768px) {
  iframe.new {
    max-width: 360px;
    max-height: 203px;
  }
}

@media(max-width:671px) {
  img.new {
    margin: 0px auto;
  }
}

#table_price>thead>tr>th {
  background-color: #202020;
  color: #fff;
  font-weight: normal;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 10px;
  padding-right: 10px;
  border: 1px #ddd solid;
  text-align: center;
  vertical-align: middle;
}

#table_price>tbody>tr>td {
  background-color: #fff;
  color: #000;
  font-weight: normal;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 10px;
  padding-right: 10px;
  border: 1px #ddd solid;
}

#table_price>tbody>tr.cell-color>td {
  background-color: #f3f3f3;
}

blockquote.quote {
  position: relative;
  padding: 10px 15px 10px 60px;
  margin: 25px 15px;
  box-sizing: border-box;
  background: #f5f5f5;
  color: #777777;
  border-left: 4px solid #141414;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.14);
}

blockquote.quote :before {
  display: inline-block;
  position: absolute;
  top: 15px;
  left: 15px;
  vertical-align: middle;
  content: "\f10d";
  font-family: "Font Awesome 6 Free";
  color: #141414;
  font-size: 30px;
  line-height: 1;
}

blockquote.quote p {
  padding: 0;
  margin: 7px 0;
  line-height: 1.7;
}

.btn-yellow {
  font-weight: bold;
  color: #202020;
  background-color: #F8C300;
  border-color: #F8C300;
  box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.2), inset 0 -2px 0 rgba(0, 0, 0, 0.05);
}

.btn-yellow:hover {
  background-color: #ebbb0a;
  border-color: #ebbb0a;
}

.btn-white {
  color: #202020;
  background-color: #ffffff;
  border-color: #ffffff;
  font-weight: bold;
  box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.2), inset 0 -2px 0 rgba(0, 0, 0, 0.05);
}

.btn-white:hover {
  background-color: #f0f0f0;
  border-color: #ffffff;
  color: #202020;
}

.btn-grey {
  color: #202020;
  background-color: #dfdfdf;
  border-color: #dfdfdf;
  font-weight: bold;
  box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.2), inset 0 -2px 0 rgba(0, 0, 0, 0.05);
}

.btn-grey:hover {
  background-color: #cdcdcd;
  border-color: #dfdfdf;
  color: #202020;
}

.btn-inquiry {
  color: #ffffff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, .2);
  background-color: #5cb85c;
  border-color: #3eae3e;
  font-weight: bold;
  box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.2), inset 0 -2px 0 rgba(0, 0, 0, 0.05);
}

.btn-inquiry:hover {
  background-color: #3eae3e;
  border-color: #3eae3e;
  color: #ffffff;
}

.btn-blue {
  color: #ffffff;
  text-shadow: 0 -1px 0 rgba(0, 0, 0, .2);
  background-color: #337ab7;
  border-color: #337ab7;
  font-weight: bold;
  box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.2), inset 0 -2px 0 rgba(0, 0, 0, 0.05);
}

.btn-blue:hover {
  background-color: #2f6ca0;
  border-color: #2f6ca0;
  color: #ffffff;
}

.btn-trans {
  color: #202020;
  background-color: #ffffff;
  border-color: #202020;
  font-weight: bold;
  box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.2), inset 0 -2px 0 rgba(0, 0, 0, 0.05);
}

.btn-trans:hover {
  background-color: #e9e9e9;
  border-color: #202020;
}

.btn-blue {
  color: rgb(255, 255, 255);
  text-shadow: rgba(0, 0, 0, 0.2) 0px -1px 0px;
  background-color: #2385d9;
  font-weight: bold;
  box-shadow: rgba(255, 255, 255, 0.2) 0px 2px 0px inset, rgba(0, 0, 0, 0.05) 0px -2px 0px inset;
  border-color: #2385d9;
}

/* code */

.grayout {
  color: #8b8b8b;
}

.purple {
  color: #8959a8;
}

.orange {
  color: #f5871f;
}

.blue {
  color: blue;
}

.light-blue {
  color: #1ed9c3;
}

.dark-red {
  color: #ac2d2d;
}

.red {
  color: #e60707;
}

.youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}

/* ===================================================================
   製品ナビゲーション (topmenu.inc) の基本スタイル
   =================================================================== */

.prodnavbar {
  /* デフォルトの背景色（LightningChart固有の色で後でオーバーライド） */
  background-color: #f8f9fa;
  padding: 0;
}

/* 製品ロゴ（左揃え） */
.prodnavbar .navbar-brand {
  padding: 10px 15px;
  font-size: 18px;
  line-height: 20px;
  font-weight: bold;
}

/* ナビゲーションリンク */
.prodnavbar .navbar-nav .nav-link {
  padding: 15px;
  line-height: 20px;
}

/* ドロップダウンメニュー */
.prodnavbar .dropdown-menu {
  margin-top: 0;
  border-radius: 0;
}

/* ハンバーガーメニュー（モバイル用） */
.prodnavbar .navbar-toggler {
  padding: 10px 15px;
  border: none;
}

/* Bootstrap 5のデフォルトトグルアイコンを使用 */
.prodnavbar .navbar-toggler-icon {
  /* Bootstrap 5のデフォルト動作を維持 */
  /* LightningChart固有の色は後でオーバーライド */
}

/* モバイル表示（992px未満）のナビゲーションスタイル */
@media (max-width: 991.98px) {
  /* モバイルでは縦並び（垂直レイアウト） */
  .prodnavbar .navbar-nav {
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
  }

  .prodnavbar .navbar-nav .nav-item {
    width: 100%;
  }

  .prodnavbar .navbar-nav .nav-link {
    width: 100%;
    text-align: left;
    writing-mode: horizontal-tb; /* 横書きを強制 */
    display: block;
  }

  /* ドロップダウンメニューもモバイルで適切に表示 */
  .prodnavbar .dropdown-menu {
    width: 100%;
    position: static;
    float: none;
  }
}

/* デスクトップ表示（992px以上）のナビゲーションスタイル */
@media (min-width: 992px) {
  /* デスクトップでは横並び（水平レイアウト） */
  .prodnavbar .navbar-nav {
    flex-direction: row;
  }
}

/* ===================================================================
   製品ナビゲーション (topmenu.inc) の LightningChart 固有カスタマイズ
   =================================================================== */

/* LightningChart 固有の配色:
   - 背景色: 黒 (#141414)
   - アクセントカラー: 黄色 (#f8c300)
   - テキスト色: 白

   以下のスタイルで、LightningChart 固有の配色にオーバーライドしています。
*/

/* 古いBootstrap 3のスタイルをリセット（Bootstrap 5のFlexboxを有効にする） */
/* 重要: .navbar-collapseをFlexboxコンテナとして機能させるため、古いfloatを無効化 */
.prodnavbar-collapse,
.navbar-collapse.prodnavbar-collapse {
  float: none !important;
}

.prodnavbar-nav {
  float: none !important;
}

.prodnavbar .navbar-nav.prodnav > .nav-item {
  float: none !important;
}

/* デスクトップサイズ（992px以上）でのみ横並びレイアウトを適用 */
@media (min-width: 992px) {
  .prodnavbar .navbar-collapse {
    display: flex !important;
    flex-basis: auto !important;
    flex-grow: 1 !important;
  }

  .prodnavbar .navbar-nav.prodnav {
    display: flex !important;
    flex-direction: row !important;
  }
}

.prodnavbar {
  background-color: #141414 !important;
  border-top: 7px solid #f8c300;
}

/* 製品ロゴ */
.prodnavbar .navbar-brand {
  color: #ffffff !important;
}

.prodnavbar .navbar-brand:hover,
.prodnavbar .navbar-brand:focus {
  color: #f8c300 !important;
}

/* ナビゲーションリンク */
.prodnavbar .navbar-nav .nav-link {
  color: #ffffff !important;
}

.prodnavbar .navbar-nav .nav-link:hover,
.prodnavbar .navbar-nav .nav-link:focus {
  color: #f8c300 !important;
  background-color: rgba(248, 195, 0, 0.1);
}

/* アクティブなリンク */
.prodnavbar .navbar-nav .nav-item.active .nav-link {
  color: #f8c300 !important;
}

/* ドロップダウンメニュー */
.prodnavbar .dropdown-menu {
  background-color: #1a1a1a;
  border: 1px solid #f8c300;
}

.prodnavbar .dropdown-item {
  color: #ffffff;
}

.prodnavbar .dropdown-item:hover,
.prodnavbar .dropdown-item:focus {
  color: #f8c300;
  background-color: rgba(248, 195, 0, 0.1);
}

/* ハンバーガーメニューのアイコン（モバイル用） - LightningChart専用 */
/* 黒背景に合わせて白色のハンバーガーアイコンを使用 */
.prodnavbar .navbar-toggler-icon {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.85%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

/* code */