#outline {
  overflow:hidden;
  width:100%;
}

.menu-container {
  width: 100%;
  margin: 0 auto;
  background: #fff;
}

.menu-mobile {
  display: none;
	font-size: 38px;
	color: #3972b6;
	width:45px;
	height:45px;
	line-height:30px;
	text-align:center;
	position:absolute;
	right:10px;
	top:-55px;
	text-decoration:none;
}
.menu-mobile p {
	font-size:10px;
	line-height:10px;
	margin-top:-8px;
}



.menu {
  width: 100%;
  border-top: 1px solid #c8c8c8;
  border-bottom: 1px solid #c8c8c8;
  position: relative;
}

.menu > ul {
  width: 1024px;
  margin: 0 auto;
  list-style: none;
  padding: 0;

  /* IF .menu position=relative -> ul = container width, ELSE ul = 100% width */
  box-sizing: border-box;
}


.menu > ul:after {
  content: "";
  display:block;
  clear: both;
}


.menu > ul > li {
  float: left;
  background: #fff;
  padding: 0;
  margin: 0;
  width: 128px;
  border-right: 1px solid #c8c8c8;
}
.menu > ul > li:first-child {
  border-left: 1px solid #c8c8c8;
}

.menu > ul > li a {
  text-decoration: none;
  padding: 2em 0;
  display: block;
  color: #333333;
  text-align: center;
	position:relative;
}

.menu > ul > li:hover {
  background-color:#cfe0e8;
}
.menu > ul > li a:hover {
  color: #3972b6;
}

.menu > ul > li > div {
  display:none;
  width:calc(100vw);
  height:70px;
  line-height:70px;
  padding: 0px;
  border:0px;
  position: absolute;
  background : rgba(57, 114, 182, 0.9);
  z-index: 99;
  list-style: none;
  left:0;
  bottom:-71px;
}
.menu > ul > li > div > ul {
	display:inline-block;
	position:relative;
}
.menu > ul > li > div > ul:before {
	content:"";
	display:block;
	position:absolute;
	top:-7px;
	left:60px;
	/*
	left:50%;
	-webkit-transform: translate(-50%,0%);
    -moz-transform: translate(-50%,0%);
    transform: translate(-50%,0%);
	*/

border-right: 7px solid transparent;
border-bottom: 7px solid rgba(57, 114, 182, 0.9);
border-left: 7px solid transparent;
}
.menu > ul > li > ul:after {
  content: "";
  display:block;
  clear: both;
}

.menu > ul > li > div > ul > li {
  margin: 0;
	padding:0 10px 0 5px;
	width:auto;
	display:inline-block;
}

.menu > ul > li > div > ul > li a {
  color: #fff;
  display: block;
	z-index:100;
	padding:0 0 0 15px;
	border:none;
	line-height:70px;
}
.menu > ul > li > div > ul > li a:before {
	position:absolute;
	left:5px;
	content: '\f125';
	font-family: "ionicons";
	color:#FFF;
}
.menu > ul > li > div > ul > li a:hover {
  color: #fff;
	text-decoration:underline;
}

.menu > ul > li > ul > li > ul {
  display: block;
  padding: 0;
  margin: 10px 0 0;
  list-style: none;
  box-sizing: border-box;
}

.menu-container .h_address { display:none;}

/* ––––––––––––––––––––––––––––––––––––––––––––––––––
Mobile style's
–––––––––––––––––––––––––––––––––––––––––––––––––– */

@media only screen and (max-width: 959px) {
	.sp_only { display:block;}
  .menu-container {
      width: 100%;
  }
  .menu-mobile {
      display: block;
  }
  .menu > ul {
      display: none;
  }
  .menu > ul > li {
      width: 100%;
      float: none;
      display: block;
      background-color: #3972b6;
      border-bottom: 1px solid #FFF;
  }
  .menu > ul > li a {
      padding: 0 0 0 10px;
      margin-right:50px;
      width: calc(100% - 50px);
      height:50px;
      line-height:50px;
      display: block;
      text-align:left;
      color:#FFF;
  }
  .menu > ul > li > div {
      position: relative;
      height:auto;
      bottom:auto;
      line-height:1.5em;
  }

  .menu > ul > li > div > ul {
      width: 100%;
  }
  .menu > ul > li > div > ul:before {
      display:none;
  }
  .menu > ul > li > div > ul > li {
      float: none;
      width: 100%;
      border-bottom: solid 1px #FFFFFF;
      background-color: #455d80;
  }
  .menu > ul > li > div > ul > li:hover {
      background-color:rgba(87, 166, 190, 0.5);
  }
  .menu > ul > li > div > ul > li:last-child {
      border-bottom:none;
  }
  .menu > ul > li > div > ul > li a {
      height: 50px;
      line-height: 50px;
      width: 100%;
      padding-left: 30px;
  }
  .menu > ul > li > div > ul > li a:before {
      position:absolute;
      left:10px;
      content: '\f2f4';
      font-family: "ionicons";
      color:#FFF;
  }
  .menu > ul > li > div > ul > li a:before {
  }
  .menu > ul > li > div > ul > li > ul {
      position: relative;
  }
  .menu > ul > li > div > ul > li > ul > li {
      float: none;
  }

  .menu ul {
      display: none;
  }
  .menu ul.show-on-mobile {
      display: block;
      width:100%;
      animation: fadeshow 0.8s linear 0s;
  }
  .menu-container .h_address {
      background-color: #3972b6;
      padding:10px 0;
      display: none;
  }
  .menu-container .h_address.show-on-mobile {
      display:block;
      animation: fadeshow 0.8s linear 0s;
  }
	@keyframes fadeshow{
		from{
			opacity: 0;
		}
		to{
			opacity: 1;
		}
	}

	.menu-container .h_address .hbtn {
		text-align:center;
	}
	.menu-container .h_address .hbtn .contact {
		display:inline-block;
		width:20%;
		margin:0 5px;
	}
	.menu-container .h_address .hbtn .contact img {
		width:100%;
	}
	.menu-container .h_address .hbtn .recruit {
		display:inline-block;
		width:20%;
		margin:0 5px;
	}
	.menu-container .h_address .hbtn .recruit img {
		width:100%;
	}

	.no-dropdown:before {
		content:'\f125';
		font-family: ionicons;
		position:absolute;
		right:0;
		padding: 0;
		text-align:center;
		margin:5px 5px 5px 0;
		color:#FFF;
		width:45px;
		height:40px;
		line-height:40px;
	}
	.menu-dropdown-icon:before {
		content: '\f2c7';
		font-family: ionicons;
		display: block;
		cursor: pointer;
		position:absolute;
		right:0;
		padding: 0;
		text-align:center;
		margin:5px 5px 5px 0;
		background-color:#FFF;
		width:45px;
		color:#57abd5
		height:40px;
		line-height:40px;
	}
	.menu-dropdown-icon.open:before {
		content: '\f2f4';
		font-family: ionicons;
	}

}
@media only screen and (max-width: 768px) {
  .menu > ul > li:hover {
    background-color:#3972b6;
  }
	.menu-container .h_address .hbtn .contact {
		display:inline-block;
		width:35%;
		margin:0 5px;
	}
	.menu-container .h_address .hbtn .recruit {
		display:inline-block;
		width:35%;
		margin:0 5px;
	}
}
@media only screen and (max-width: 425px) {
  .menu > ul > li a {
    font-size: 12px;
  }
}