#sp-submenu{
  display: none;
}

@media screen and (min-width: 768px){
  #sp-submenu{
    display: none;
  }
}

@media screen and (max-width: 767px){
  #sp-submenu > ul{
    margin-bottom: 0;
    border-top: 1px solid #41C2FF;
  }
  #sp-submenu li{
    position: relative;
  }
  #sp-submenu li span{
    display: block;
    border-bottom: 1px solid #41C2FF;
    padding: 19px 15px 18px;
    color: #222;
  }

  #sp-submenu ul li.trigger span:after {
    position: absolute;
    top: 22px;
    right: 28px;
    font-family: 'FontAwesome';
    font-size: 20px;
    content: "\f107";
    line-height: 1.0;
    vertical-align: middle;
    color: #41C2FF;
  }
  #sp-submenu ul li.active > span:after {
    position: absolute;
    top: 22px;
    right: 28px;
    font-family: 'FontAwesome';
    font-size: 20px;
    content: "\f106";
    line-height: 1.0;
    vertical-align: middle;
    color: #41C2FF;
}
  #sp-submenu ul li ul.childMenus {
    position: relative;
    top: 0;
    display: none;
    width: 100%;
  }
  #sp-submenu ul li ul.childMenus li {
    width: 100%;
    padding: 0;
    font-size: 1.3rem;
    line-height: 1.0;
    text-align: left;
  }
  #sp-submenu ul li ul.childMenus li a:after {
    position: absolute;
    top: 14px;
    right: 28px;
    font-family: 'FontAwesome';
    font-size: 20px;
    content: "\f105";
    line-height: 1.0;
    vertical-align: middle;
  }

  #sp-submenu ul li span, #sp-submenu ul li a{
    display: block;
    border-bottom: 1px solid #41C2FF;
    padding: 19px 30px 18px;
    color: #222;
    font-size: 1rem;
  }
  #sp-submenu ul li ul.childMenus li a{
    border-bottom: 1px dashed #41C2FF;
    font-size: 0.8rem;
    text-indent: 0.8rem;
    background-color: #CCF1FA;
  }

  ul li ul.childMenus li a:after {
    position: absolute;
    top: 14px;
    right: 28px;
    font-family: 'FontAwesome';
    font-size: 20px;
    content: "\f105";
    line-height: 1.0;
    vertical-align: middle;
    color: #41C2FF;
  }

  .main_menu_1{
    border-bottom: 1px solid #41C2FF;
  }

  .main_menu_1 a,.main_menu_2_sub a,.main_menu_4 a,.main_menu_3_sub a{
    color: #000;
  }

  .main_menu_1,.main_menu_2,.main_menu_2_sub,.main_menu_3,.main_menu_4,.main_menu_3_sub{
    padding: 19px 25px 18px;
    background: #41C2FF;
  }

  .main_menu_1 a:after,.main_menu_4 a:after{
    top: 14px;
    font-family: 'FontAwesome';
    font-size: 20px;
    content: "\f105";
    line-height: 1.0;
    vertical-align: middle;
    float: right;
  }

  .main_menu_2_sub,.main_menu_3_sub{
    padding: 19px 30px 18px !important;
  }

  .main_menu_1,.main_menu_2,.main_menu_3{
    /*border-bottom: 1px solid #000;*/
  }

  .main_menu_2_sub,.main_menu_3_sub{
    background: #fff !important;
  }

  .main_menu_2_sub a:after,.main_menu_3_sub a:after{
    top: 14px;
    font-family: 'FontAwesome';
    font-size: 20px;
    content: "\f105";
    line-height: 1.0;
    vertical-align: middle;
    float: right;
    color: #41C2FF;
  }

}
