/* nav */
.nav-menu,.nav-menu ul,.nav-menu li,.nav-menu a { margin: 0; padding: 0; line-height: normal; list-style: none; display: block; position: relative; }
.nav-menu{ display: flex; align-items: center; justify-content: center; }
.nav-menu ul { display: none; position: absolute; top: 100%; z-index: 1; -webkit-transition: opacity .3s; transition: opacity .3s; }
.nav-menu li:hover > ul { display: block;}

.nav-menu li { cursor: default; white-space: nowrap; display: flex; align-items: center; justify-content: flex-start; }
.nav-menu ul li { float: none; }

/* sub width */
.nav-menu ul { text-align: left;
  padding: 10px 20px; background: #fafafa; box-shadow: 0 0 20px rgb(0 0 0 / 10%);
}

.nav-menu li.lan {  padding: 0 0px; margin: 0 0 0 0px; display: flex; align-items: center; justify-content: center;}
.nav-menu li.lan::before {
  content: "";
  width: 18px;
  height: 18px;
  background: url(../images/lan.png) no-repeat;
  background-size: 100% auto;
  margin: 0 0 0 15px;
}
.nav-menu li.lan a{ color: rgba(0, 0, 0, 0.5); font-size:var(--font-s03); font-weight: normal; padding: 22px 23px 22px 10px;}
.nav-menu li.lan a:hover, .nav-menu li.lan:hover a{ color: #0060fe;}
.nav-menu li.lan:hover::before {
  background: url(../images/lan02.png) no-repeat;
}
.nav-menu li.lan li a{
  padding: 6px 10px !important;
  color: #666 !important;
  font-size: 16px !important;
  line-height: normal;
}
.nav-menu li.lan li a:hover{
  color: #0060fe !important;
}

/* root */
.nav-menu a {
  padding: 20px 23px;
  color: #000;
  font-weight: 700;
  font-size:var(--font-s03);
  text-decoration: none;
  line-height: 1;
}
@media screen and (max-width: 1330px) {
.nav-menu a {
  padding: 20px 13px;
}
}
@media screen and (max-width: 1200px) {
.nav-menu a {
  padding: 20px 13px;
}
}

/* root: active */
.nav-menu > li > .nav-active { }

/* root: hover/persistence */
.nav-menu a:hover,.nav-menu a:focus,.nav-menu li:hover a {
  color: #2166a9;
}

/* 2 */
.nav-menu li ul{ text-align: left; 
}
.nav-menu li li a,.nav-menu li:hover li a {
  padding: 8px 10px;
  color: #666;
  font-size: 17px;
  line-height: normal;
}
@media screen and (max-width: 1250px) {
.nav-menu li li a,.nav-menu li:hover li a  {
  font-size: 16px;
}
}

/* 2: hover/persistence */
.nav-menu li:hover li a:hover,.nav-menu li:hover li a:focus,.nav-menu li:hover li:hover a {
  color: #2166a9;
}

/* 3 */
.nav-menu li:hover li:hover li a {
  background: #444;
}

/* 3: hover/persistence */
.nav-menu li:hover li:hover li a:hover,.nav-menu li:hover li:hover li a:focus,.nav-menu li:hover li:hover li:hover a {
  background: #333;
}

/* 4 */
.nav-menu li:hover li:hover li:hover li a {
  background: #333;
}

/* 4: hover */
.nav-menu li:hover li:hover li:hover li a:hover,.nav-menu li:hover li:hover li:hover li a:focus {
  background: #222;
}

/* vertical */
.nav-vertical { max-width: 220px; }
.nav-vertical ul { top: 0; left: -9999px; }
.nav-vertical li { width: 100%; float: none; }
.nav-vertical li:hover > ul { left: 100%; }