.sp-vertical-menu {
  background: #fff;
  position: relative; }
  .sp-vertical-menu .cat-title {
    display: inline-block;
    color: #fff;
    text-transform: uppercase;
    font-weight: bold;
    font-size: 17px;
    margin: 0px;
    padding: 8px 18px 8px 50px;
    width: 100%;
    border-bottom: none;
    cursor: pointer;
    position: relative; }
    .sp-vertical-menu .cat-title:before {
      width: 41px;
      height: 41px;
      content: "";
      display: inline-block;
      position: absolute;
      left: 0;
      top: 0;
      background: url(../../../../img/icon/title_vmenu.png) no-repeat;
      background-position: center center; }
  .sp-vertical-menu .vf-menu {
    padding: 0;
    border: solid 1px #ddd;
    border-top: none;
    transition: 0.3s all ease 0s;
    width: 100%;
    background: #fff;
    z-index: -1;
    opacity: 0;
    top: 100px;
    box-shadow: 2px 2px 2px #e3e1e1; }
    .sp-vertical-menu .vf-menu li {
      display: block;
      float: none;
      margin: 0;
      position: relative;
      padding: 0px 12px; }
      .sp-vertical-menu .vf-menu li a {
        font-size: 13px;
        text-transform: uppercase;
        color: #444444;
        padding: 0px;
        line-height: 42px;
        display: block; }
      .sp-vertical-menu .vf-menu li ul {
        position: absolute;
        top: 0;
        left: 100%;
        background: #fff;
        z-index: -1;
        width: 250px;
        transition: 0.3s transform ease 0s;
        transform: scale(0);
        -ms-transform: scale(0);
        -webkit-transform: scale(0);
        border: solid 1px #e3e1e1;
        border-radius: 0; }
        .sp-vertical-menu .vf-menu li ul li a {
          font-size: 13px; }
      .sp-vertical-menu .vf-menu li:hover > ul {
        z-index: 9999;
        transform: scale(1);
        -ms-transform: scale(1);
        -webkit-transform: scale(1); }
      .sp-vertical-menu .vf-menu li.spvm-havechild > a:after {
        content: "\f105";
        color: #c8c8c8;
        font-family: Fontawesome;
        font-size: 16px;
        float: right;
        margin: 0;
        transition: 0.3s all ease 0s; }
      .sp-vertical-menu .vf-menu li.spvm-havechild ul li a:after {
        font-size: 14px;
        transition: 0.3s all ease 0s; }
      .sp-vertical-menu .vf-menu li.spvm-havechild ul li:hover a:after {
        font-size: 16px; }
      .sp-vertical-menu .vf-menu li.spvm-havechild:hover > a:after {
        font-size: 18px; }
      .sp-vertical-menu .vf-menu li .more-view {
        line-height: 46px;
        padding-left: 40px;
        font-weight: bold;
        cursor: pointer; }
      .sp-vertical-menu .vf-menu li:last-child > a {
        border-bottom: none; }
      .sp-vertical-menu .vf-menu li:hover {
        background: #eeeeee; }
  .sp-vertical-menu:hover .vf-menu {
    top: 50px;
    opacity: 1;
    z-index: 999; }

.index .sp-vertical-menu .vf-menu {
  top: 50px;
  opacity: 1;
  z-index: 9;
  padding-bottom: 8px; }

.sp-vertical-menu .vf-menu li ul {
  border: 1px solid #ddd;
  box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.2);
  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.2); }

/* FIX IE9 */
.ie9 .sp-vertical-menu .vf-menu li:hover ul li ul {
  display: none; }
.ie9 .sp-vertical-menu .vf-menu li ul li:hover ul {
  display: block; }

@media all and (max-width: 767px) {
  .sp-vertical-menu {
    min-height: 0; }

  .vf-menu {
    position: relative; }

  .sp-vertical-menu .cat-title {
    cursor: pointer; }

  .sp-vertical-menu .vf-menu li ul {
    position: static;
    left: 0;
    width: 100%;
    transform: scale(1);
    z-index: 99;
    box-shadow: 0 0 0; }

  .sp-vertical-menu .vf-menu li:hover > ul {
    z-index: 99;
    transform: scale(1); }

  .sp-vertical-menu .vf-menu li.spvm-havechild > a:after {
    content: ''; }

  .sp-vertical-menu .vf-menu li.spvm-havechild .vf-button {
    cursor: pointer;
    font-family: Fontawesome;
    font-size: 14px;
    position: absolute;
    right: 20px;
    top: 12px;
    color: #999; }

  .sp-vertical-menu .vf-menu li.spvm-havechild .icon-open:after {
    content: "\f146";
    color: #999; }

  .sp-vertical-menu .vf-menu li.spvm-havechild .icon-close:after {
    content: "\f0fe";
    color: #999; } }
