@charset "UTF-8";

/* --- Common --------------------------------------- */
header ul, .layer-menu ul {
  list-style: none;
  display: flex;
  width: fit-content;
  padding: 0;
  margin: 0; }


/* --- Sticky header --------------------------------- */
header .header-wrap {
  display:block;
  height: 96px;
  width: 100%;
  position: relative;
  z-index: 901; }
  header .header-wrap .header-sticky {
    position: fixed;
    display: flex;
    height: 96px;
    align-items: center;
    background: var(--octm-color-white);
    width: -webkit-fill-available;
    webkit-box-shadow: 4px 0 20px -5px rgba(0, 0, 0, 0.2);
    box-shadow: 4px 0 20px -5px rgb(0 0 0 / 20%); }
  header .header-wrap .header-sticky.sticky {
    height: 76px; }
    header .header-wrap .header-sticky .container {
     display: flex; }
      header .header-wrap .header-sticky .container nav.navbar {
       width: 100%; }

@media screen and (max-width: 991.98px) {
  header .header-wrap {
    height: 76px; }
    header .header-wrap .header-sticky {
      height: 76px; }}

/* --- Logo, menus --------------------------------- */
header .header-wrap .container .site-logo {
  display: flex;
  padding: 0;
  height: 60px;
  width: fit-content; }
  header .header-wrap .container .site-logo img#octm-logo {
    display: block;
    height: 60px;
    width: 185px; }

header .header-wrap .container .menu-wrap {
  display: flex;
  justify-content: center;
  align-items: center; }
  header .header-wrap .container .menu-wrap ul.menus {
    display: inline-flex;
    height: fit-content; }
  @media screen and (max-width: 991.98px) {
    header .header-wrap .container .menu-wrap ul.menus {
    display: none; }
  }
    
    header .header-wrap .container .menu-wrap ul.menus  li.nav-item {
      display: flex;
      height: fit-content;
      font-family: 'Lato', sans-serif;
      font-weight: 500;
      color: var(--octm-color-navy);
      font-size: 15px; }
    header .header-wrap .container .menu-wrap ul.menus  li.nav-item a.nav-link {
      color: var(--octm-color-navy);
      font-size: 1em;
      font-weight: 500;
      cursor: pointer;  }
    header .header-wrap .container .menu-wrap ul.menus li.nav-item a.nav-link:hover {
      color: var(--octm-color-blue);
      font-size:15px;
      font-weight: 700; }

  header .nav-item .nav-link.active {
    border-top: 3px solid var(--octm-color-blue);
    padding-top: 5px;
    padding-bottom: 5px;
    margin-right: 5px;
    }

  header .header-wrap .container .menu-wrap .btn-menu {
    display: inline-flex;
    flex-direction: column;
    align-items: center;
    width: 45px;
    height: 45px;
    background: var(--octm-color-yellow);
    color: var(--octm-color-blue);
    cursor: pointer; }
    header .header-wrap .container .menu-wrap .btn-menu .btn-menu-image {
      display: block;
      text-align: center;
      font-size: 25px;
      margin-top: -2px; }
    header .header-wrap .container .menu-wrap .btn-menu .btn-menu-text {
      display:block;
      font-size: 10px;
      text-align: center;
      margin-top: -6px; }    


/* --- Layer menu --------------------------------- */
.layer-menu {
  width: 40%;
  height: 100%;
  position: fixed;
  box-sizing: border-box;
  background-color: var(--octm-color-yellow);
  opacity: 0.9;
  top:0;
  left: 100%;
  z-index: 999;
  -webkit-transition: .6s all ease;
  -o-transition: .6s all ease;
  transition: .6s all ease; }    
  @media all and (min-width:768px) and (max-width:1023px) {
    .layer-menu {
      width: 40%; }}
  @media all and (min-width:480px) and (max-width:767px) { 
    .layer-menu {
      width: 100%; }}
  @media all and (max-width:479px) {
    .layer-menu {
      width: 100%; }}

.layer-menu.on {
  left: 60%;
  -webkit-transition: .6s all ease;
  -o-transition: .6s all ease;
  transition: .6s all ease; }
  @media all and (min-width:768px) and (max-width:1023px) {
  .layer-menu.on {
    left: 60%; }}
  @media all and (min-width:480px) and (max-width:767px) { 
  .layer-menu.on {
    left: 0%; }}
  @media all and (max-width:479px) {
  .layer-menu.on {
    left: 0%; }}  

.layer-menu .container { 
  width: calc(100% - 50px);
  padding-top: 50px;
  margin: 0 auto; }
  @media all and (min-width:768px) and (max-width:1023px) {
  .layer-menu .container {
    width: calc(100% - 20px); }}
  @media all and (min-width:480px) and (max-width:767px) { 
  .layer-menu .container {
    width: calc(100% - 10px); }}
  @media all and (max-width:479px) {
  .layer-menu .container {
    width: calc(100% - 10px); }}  
    
  .layer-menu .row.div-row-1 .site-menu-item.close {
    color: var(--octm-color-blue);
    font-size: 45px;
    text-shadow: none;
    opacity: 1; }  
  .layer-menu .row.div-row-2 .menu-list ul {
    flex-direction: column;
    padding-top: 30px; }
    .layer-menu .row.div-row-2 .menu-list ul li a {
      display:block;
      font-size: 50px;
      font-family: 'Lato', sans-serif;
      font-weight: 500;
      color: var(--octm-color-navy);
      padding: 20px; }
    .layer-menu .row.div-row-2 .menu-list ul li a:hover {
      font-size: 52px;
      font-family: 'Lato', sans-serif;
      font-weight: 700;
      color: var(--octm-color-blue); }

  

/* --- Scroll top button --------------------------------- */
.scroll-top {
  width: 45px;
  height: 45px;
  line-height: 45px;
  background: #FECE01;
  position: fixed; 
  bottom: 8px; 
  right: 10px; 
  z-index: 905; }
  .scroll-top a {
    text-decoration: none;
    color: var(--octm-color-blue);
    font-size: 35px; }
