/* General Style */
@import url(http://fonts.googleapis.com/css?family=Lato:300,400,700);

@font-face {
  font-family:'mplus-1m-thin';
  src: url('../fonts/mplus-1m-thin-sub.eot') format('eot');
  src: url('../fonts/mplus-1m-thin-sub.woff') format('woff');
  src: url('../fonts/mplus-1m-thin-sub.ttf') format('truetype');
}

body, html { font-size: 100%; 	padding: 0; margin: 0;}

/* Reset */
*,
*:after,
*:before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

/* Clearfix hack by Nicolas Gallagher: http://nicolasgallagher.com/micro-clearfix-hack/ */
.clearfix:before,
.clearfix:after {
	content: " ";
	display: table;
}

.clearfix:after {
	clear: both;
}

body {
    font-family: YuGothic, '游ゴシック', 'Lato', Calibri, Arial, sans-serif;
    color: #4DBAAA;

}

.overlay a {
  font-family: 'mplus-1m-thin';
}

a {
	color: #f0f0f0;
	text-decoration: none;
}

a:hover {
	color: #000;
}

.container > header {
	width: 90%;
	max-width: 69em;
	margin: 0 auto;
	padding: 0 1.875em 3.125em 1.875em;
}

.container > header {
	padding: 2.875em 1.875em 1.875em;
}

.container > header .icon-logo {
  display: block;
  margin-bottom: 2em;
}

.container > header .icon-logo img {
  display: inline-block;
  width: 200px;
}

.container > header h1 {
	font-size: 2.125em;
	line-height: 1.3;
	margin: 0;
	float: left;
	font-weight: 400;
}

/* ナビボタンの設定 */
.container > header nav {
	float: right;
	display: inline-block;
	padding-right: 20px;
}

nav .button_menu {
	display: block;
	float: left;
	position: relative;
	width: 2.5em; height: 2.5em;
	background: #fff;
	border-radius: 50%;
	font-size: 14px;
	color: transparent;
	margin: 0 0.1em;
	border: 4px solid #4DBAAA;
  transition: all 250ms ease-in-out;
}

nav .icon:before {
  font-family: FontAwesome;
  font-style: normal;
  font-weight: normal;
  font-size: 1.5em;
  display: block;
  position: absolute;
  top: 3px; left: 0;
  width: 100%; height: 100%;
  color: #4DBAAA;
}


nav .icon-plus:before {
  content: "\f0fe";
}


nav button:after {
	content: attr(data-info);
	color: #4DBAAA;
	position: absolute;
	width: 600%;
	top: 120%;
	text-align: right;
	right: 0;
	opacity: 0;
	pointer-events: none;
}

.container > header nav button:hover:after {
	opacity: 1;
}

.container > header nav button:hover {
	background: #4DBAAA;
}

.container > header nav button:hover:before {
	color: #fff;
}


@media only screen and (min-device-width : 320px) and (max-device-width : 568px) {
  .container > header {
  	width: 100%;
  	padding: 1.25em .625em 3.125em .625em;
  	border-bottom: 1px solid #eee;
  }
  .container > header .icon-logo {
    text-align: center;
  }
  .container > header .icon-logo img {
    width: 200px;
  }
  .container > header h1 {
  	margin: 0 0 .5em;
  	float: none;
  	text-align: center;
  }

  .container > header nav {
  	float: none;
  	display: block;
  	margin-top: 30px;
  	padding-right: 0;
    padding-top: 0;
  }

  nav .button_menu {
    margin-left: auto;
    margin-right: auto;
    float: none;
  }
}

