* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
}

body {
  margin: 0;
  padding: 0;
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

/*---------- header ----------*/
header {
	z-index:100;
	position:fixed;
	top:10px;
	right:17px;
//	width:100%;
//	height:60px;
	width:50px;
	height:0px;
	padding: 0 0 0 0;
//	text-align:center;
//	background-color:#fff;
//	background-color:#ffbb00;
//	border:1px solid #fff;
}
.header-contents {
  position: relative;
  width: 100%;
  max-width: 960px;
  padding: 10px;
  margin: 0 auto;
  text-align: center;
}

/*---------- #menu ----------*/
#menu {
  z-index:10;
  position:fixed;
  top: 0px;
  right: 0;
  width: 100%;
  max-width: 250px;
  height: 100%;
  margin:0;
	padding:70px 0 0 0;
  background-color: #fff;
  transform: translate(250px);
  transition: all .5s;
}
#menu.open {
  transform: translate(0);
}
#menu ul {
  margin: 0;
  padding: 0;
  list-style-type: none;
}
#menu li {
  padding: 8px;
  color: #fff;
  border-bottom: 1px solid #fff;
}

.btn-aaa {
	margin:-1px 0 0 0;
	padding:12px 0;
	font-size:14px;
	color: #114692;
	font-weight:bold;
	border-top: 1px solid #555;
	border-bottom: 1px solid #555;
}
.btn-aaa:hover {
	color: #fff;
	background-color:#114692;
}

#menu_btn {
	z-index:10;
	position:absolute;
	top:0px;
	right:-5px;
	width:50px;
	height:50px;
	cursor:pointer;
}

.top-menu01 {
	z-index:10;
	position:absolute;
	top:0;
	right:0;
	width:50px;
	height:50px;
	background-color:#fff;
	border:1px solid #114692;
}
.top-menu01:hover {
	background-color:#fff;
}

.tops-button00 {
	width:30px;
	height:4px;
	background-color:#114692;
}
.tops-button01 {
	position:absolute;
	top:12px;
	left:10px;
}
.tops-button02 {
	position:absolute;
	top:22px;
	left:10px;
}
.tops-button03 {
	position:absolute;
	top:32px;
	left:10px;
}


/* --- .menu-background --- */
.menu-background {
  position: fixed;
  top: 0;
  left: 0;
  content: "";
  display: block;
  width: 0;
  height: 0;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: 2;
  opacity: 0;
  transition: opacity 0.5s;
}
.menu-background.open {
  width: 100%;
  height: 100%;
  opacity: 1;
}

/* ---------- main ----------*/
main {
  height: 100%;
  padding: 0 50px;
}
.main-wrapper {
  position: relative;
  width: 100%;
  max-width: 960px;
  height: 250px;
  margin: 0 auto;
  background-color: #fff;
  text-align: center;
}
.main-wrapper h1 {
  line-height: 250px;
  vertical-align: middle;
}

/* ---------- footer ---------- */
footer {
  width: 100%;
  background-color: #00ff7f;
  text-align: center;
}
.footer-wrapper {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
  padding: 10px;
}
