@charset "utf-8";

@import "../initial";
@media (min-width: $screen-sm) {
  .modules-menu.collapse.in .social_wrap{
    justify-content: initial;
  }
}
.collapse{
  @media(min-width: 769px){
    width:100%;
  }
}
.navbar-collapse.in {
  @media(min-width: 769px){
    overflow-y: unset;
  }
}
.mobile-menu .collapse.navbar-collapse.modules-menu{
    padding-bottom: 3em;
}
.modules-menu {
  font-family: $sub-font;
  max-height: none;
  z-index: 1020;

  .menu-drop.opened {
    transform: rotateX(180deg);
  }

  .modules-menu-level-0 {
    @media (min-width: 1900px) {
      padding-top: 32px!important;
    }
    @media (min-width: 1025px){
      padding-top: 28px!important;
    }
    @media (min-width: 769px) {
        margin: 0 0 0.8em 0;
        -webkit-flex-flow: row wrap;
        list-style: none;
        float: left !important;
        padding-top: 10px;
        display: flex;
        width: 100%;
        justify-content:start;
        padding-left: 0;
        padding-left: 6em;
        padding-right: 3em;
        .mobile-menu1{
          width: 30%;
          .dropdown-toggle{
            border-bottom: 2px solid #288E8E;
            margin-right: 1em;
            font-weight:bold;
            font-size: 1.4em;
          }
        }
        .modules-menu-level-1{
              display: flex!important;
              width: 100%;
              flex-wrap: wrap;
        }
      }
    .has-dropdown.level-1.active {
      .modules-menu-level-1 {
              display: block!important;
      }
    }

    .has-dropdown.level-2.active {
      .modules-menu-level-2 {
        display: block;
      }
    }

    // .dropdown-toggle-icon {
    //   position: absolute;
    //   top: 0.5em;
    //   right: 0.3em;
    //   width: 2.5em;
    //   height: 2.5em;
    //   cursor: pointer;
    //   line-height: 2.5em;
    //   font-size: 1em;
    //   text-align: center;
    //   border-radius: 0.13em;
    // }

    .menu-drop {
      color: #fff;
      position: absolute;
      right: 1.3em;
      width: 2.5em;
      height: 2.5em;
      cursor: pointer;
      line-height: 2.5em;
      font-size: 1em;
      text-align: center;
      border-radius: 0.13em;
      top: 1em;
      @media(min-width: 769px){
        right: 0.3em;
        cursor: pointer;
        text-align: center;
        border-radius: 0.13em;
        top: 2em;
        display: none;
      }
    }

    // .dropdown-toggle-icon.level-1 {
    //   background-color: lighten($theme-gray, 10%);
    // }

    // .dropdown-toggle-icon.level-2 {
    //   background-color: lighten($theme-gray, 10%);
    // }

    & > li {
      position:relative;
      margin: 0;
      padding: 0 1em;
      border-bottom: 0.0625em solid lighten($theme-gray, 5%);

      & > a {
        display: block;
        padding: 1.125em 0;
        font-family: $main-font;
      }

      &:hover {

        // background-color: $theme-color-second;
        // border-radius: 0.5em;

        & > a {
          color: #288E8E;
        }

        @media (min-width: $screen-sm) {
          // background-color: $theme-color-second;
          // border-radius: 0.5em;
        }
      }

      @media (min-width: $screen-sm) {
        position: static;
        margin: 0;
        padding: 0;
        border-bottom: none;

        &:first-child {
          margin-left: 0;
        }

        &:last-child {
          margin-right: 0;

          .modules-menu-level-1 {

            &:before {
              right: 0.625em;
              left: auto;
            }

            & > li {
              padding-right: 1em;
              padding-left: 1em;

              & > a {
                padding-left: 0;
              }
            }

            .modules-menu-level-2 {
              right: 100%;
              left: auto;
            }
          }
        }

        & > a {
          padding: 0.8rem;
          font-size: 1.4em;
          color:#fff;
          font-weight: 900;
          // text-shadow: 1px 1px 1px #0000008c;
        }

        &:hover {
          .modules-menu-level-1 {
            // display: block;
            //
            // visibility: visible;
            // opacity: 1;
            // transition-duration: opacity 0.3s cubic-bezier(0.48, 0.01, 0.5, 0.99),visibility 0.1s linear;

          }
        }
      }
    }
  }

  .modules-menu-level-1 {
    list-style: none;
    z-index: 1;
    padding:1em;
    @media(min-width:769px){
      margin: 0.8em 0;
      padding: 0;
    }

    & > li {
      position: relative;

      & > a {
        font-size: 1.2em;
        display: block;
        padding: 1em 1.5em;
        font-family: $main-font;
        font-weight: 500;
        color: #fff;
      }

      // &:hover {
      //   background-color: $theme-color-second;
      //   & > a {
      //     color: $theme-color-main;
      //   }
      // }
    }
    @media(max-width: 1024px){
      & > li{
        width: 100%!important;
      }
    }
    @media (min-width: $screen-sm) {

      & > li {
        padding-right: 0.5em;
        width: 50%;
        white-space: normal;
        & > a {
          padding-left: 1em;
          padding: 5px 0;
        }

        &:hover {
          .modules-menu-level-2 {
            display: block;
          }
        }
      }
    }
  }

  .modules-menu-level-2 {
    margin: 0;
    padding: 0;
    list-style: none;

    & > li {
      & + li {
        // border-top: 0.0625em solid lighten($theme-gray, 5%);
      }

      & > a {
        display: block;
        padding: 0.3em 3em;
        font-family: $main-font;
        color: #fff;
        font-size: 1em;
        font-weight: 500;
      }

      // &:hover {
      //   background-color: $theme-color-second;
      // }
    }

    @media (min-width: $screen-sm) {
      top: 0;
      left: 100%;

      & > li  > a {
          padding-left: 1em;
        }
    }
  }
}

.has-mobile-dropdown {
  .modules-menu {
    .dropdown-toggle-icon {
      display: block;
    }
  }
}

@media (max-width: 767px) {
  .modules-menu .modules-menu-level-0 {
    flex-direction: column;
    width: 100%;
  padding: 0;
  }
}
@media (max-width: 769px) {
  .modules-menu .modules-menu-level-0 {
    width: 100%;
    padding: 0;
  }
}

//mobile
.mobile-menu {
  z-index: 10051;
  width: 100vw;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  display: none;

  &.active {
    display: block;
  }

  .modules-menu {
    width: 100%;
    position: absolute;
    right: 0;
    background:#222222a6;
    height: 100%;
    top: 40px;
    padding-top: 0;
  }
  .modules-menu .modules-menu-level-0 ,.modules-menu .modules-menu-level-0 > li {
    font-size: 1em;
  }
  .modules-menu .modules-menu-level-0 > li > a {
    color: #fff;
    font-size: 1.4em;
    font-weight: 500; 
  }
  .menu-drop{
    font-size: 0.625em ;
  }
  .navbar-toggle {
    position: absolute;
    right: 2.8em;
    background: transparent;
    top: 6.5em;
    z-index: 11111;
    height: 40px;
    margin: 0;
    border: 0;
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
    @media(max-width:768px){
      left: 3em;
      left: calc(50% - 4em);
      top:0;
    }
  }

  .cover {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0,0,0,0.8);
    z-index: 0;
  }
}


//覆蓋bootstrap nav設定
.mobile-menu .modules-menu.collapsing {
  overflow:unset !important;
  transform: translateX(100%);
  -webkit-transition-timing-function:ease;
  -o-transition-timing-function:ease;
  transition-timing-function:ease;
  -webkit-transition-duration:.35s;
  -o-transition-duration:.35s;
  transition-duration:.35s;
  -webkit-transition-property:transform;
  -o-transition-property:transform;
  transition-property:transform;
}
.mobile-menu .modules-menu.collapse.in {
  transform: translateX(100%);
  -webkit-transition-timing-function:ease;
  -o-transition-timing-function:ease;
  transition-timing-function:ease;
  -webkit-transition-duration:.35s;
  -o-transition-duration:.35s;
  transition-duration:.35s;
  -webkit-transition-property:transform;
  -o-transition-property:transform;
  transition-property:transform;
}

.mobile-menu .collapse.navbar-collapse.modules-menu {
      //overflow-y: scroll;
      transform: translateX(0%);

}
.display-on{
   display:block!important;
   transition-duration: 0.9s;
}
.drop-down > a:after{
    content:"\f103";
    color:#fff;
    font-family: FontAwesome;
    font-style: normal;
    margin-left: 5px;
}
.dropdown-arrow{
  align-self: center;
  margin-left: 10px;
  z-index: 999;
  @media(max-width: 768px){
    position: absolute;
    right: 0.3em;
    width: 2.5em;
    height: 2.5em;
    cursor: pointer;
    line-height: 2.5em;
    font-size: 1em;
    text-align: center;
    border-radius: 0.13em;
    display: none!important;
  }
}
.fa-chevron-right{
  align-self: center;
  margin-left: 10px;
  font-size: 0.25em;
  font-weight: 100!important;
}
.home-menu{
  display: none;
  position: relative;
  height: 100px!important;
  width: 80%;
  z-index: -1;
  .dropdown-toggle{
    border-bottom: 0!important;
  }
  .modules-menu-level-0{
    padding: 0;
  }
  @media(max-width: 768px){
        display: none;
  }
  .modules-menu-level-1{
    overflow-y: scroll !important;
  }
  .modules-menu-level-0 .mobile-menu1{
    @media (min-width: 769px){
      width: auto!important;
    }
  }
  .modules-menu-level-1 {
    list-style: none;
    z-index: 1;
    padding:1em;
    @media(min-width:769px){
      flex-wrap: wrap;
      justify-content: flex-start;
      left:0;
      display: flex;
      visibility: hidden;
      position: fixed!important;
      opacity: 0;
      width: 100vw;
      box-shadow: 2px 2px 5px #00000033;
      margin: 0.8em 0;
      padding: 0;
      max-height: 0;
      overflow: hidden;
      transition-duration: 0.5s;
    }

    & > li {
      position: relative;
      // & + li {
      //   border-top: 0.0625em solid lighten($theme-gray, 5%);
      // }

      & > a {
        display: block;
        padding: 1em 1.5em;
        font-family: $main-font;
        font-size: 1em;
        font-weight: 600;
        color: #333;
      }
    }

    @media (min-width: $screen-sm) {
      position: absolute;

      & > li {
        padding-right: 2em;
        flex: 0 0 33.3%;
        & > a {
          padding-left: 1em;
          border-bottom: 2px solid #288E8E;
          padding: 5px 0;
        }

        &:hover {
          .modules-menu-level-2 {
            display: block;
          }
        }
      }
    }
  }
}
.modules-menus{
  .mobile-menu2{
    .menu-drop{
      @media(min-width: 769px){
        display: none;
      }
    }
  }
}
.navbar-toggle .icon-bar{
  width: 1.75em;
  box-shadow: 2px 2px 4px #00000080;
}
.active{
 .navbar-toggle .icon-bar{
    right:-2em;
    margin-top: 0.25em!important;
  }
}
.navbar-toggle .icon-bar{
    height: 0.15em;
}
