@charset "utf-8";
/* CSS Document */
/* normalize.css */

/* =============================================================
	HTML5 display definitions
============================================================= */

section,
nav,
article,
aside,
hgroup,
header,
footer,
figure,
figcaption,
details {
	display: block;
}

audio,
canvas,
video {
	display: inline-block;
	*display: inline;
	*zoom: 1;
}

audio:not([controls]) {
	display: none;
}

[hidden] {
	display: none;
}


/* =============================================================
   Base
============================================================= */

html {
	font-size: 100%;	/*10px*/
	-webkit-text-size-adjust: 100%;
	    -ms-text-size-adjust: 100%;
}

body {
	margin: 0;
}

h1, h2, h3, h4, h5, h6 {
	font-size: 1em;
	margin: 0;
}

p, blockquote, dl, dd, figure {
    margin: 0;
}

hr {
	color: inherit;
	height: auto;
	-moz-box-sizing: content-box;
	     box-sizing: content-box;
}

pre {	/* ソースに記述されたスペース・改行などをそのまま表示 */
	white-space: pre-wrap;
	word-wrap: break-word;
	margin: 0;
}

ol, ul {
	padding: 0;
	margin: 0;
}

li {
	list-style: none;
}


/* =============================================================
   Links
============================================================= */

a {
	background: transparent;
}

a:focus {
	outline: thin dotted;
}

a:active,
a:hover {
	outline: 0;
}


/* =============================================================
   Typography
============================================================= */

abbr[title] {	/* 略語 */
	border-bottom: 1px dotted;
}

dfn {	/* 用語 */
	font-style: italic;
}

b,
strong {
	font-weight: bold;
}

small {
	font-size: 80%;
}


mark {
	background: #ff0;
	color: #000;
}

q {
	quotes: none;
}

sub,
sup {
	font-size: 80%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

br {
	letter-spacing: 0;
}


/* =============================================================
   Embedded content
============================================================= */

img {
	border: 0;
}

svg:not(:root) {
	overflow: hidden;
}


/* =============================================================
   Figures
============================================================= */

figure {
	margin: 0;
}


/* =============================================================
   Forms
============================================================= */

form {
	margin: 0;
}

fieldset {
	border: 0;
	margin: 0;
	padding: 0;
}

legend {
	border: 0;
	*margin-left: -7px;
}

button,
input,
select,
textarea {
	font-family: inherit;
	color: inherit;
	font-size: 1em;
	margin: 0;
}

button,
input {
	line-height: normal;
	vertical-align: inherit;
	*vertical-align: middle;
}

input::-moz-focus-inner,
button::-moz-focus-inner {
    border: 0;
    padding: 0;
}

input[type="search"] {
	-webkit-appearance: textfield;
	-webkit-box-sizing: content-box;
	   -moz-box-sizing: content-box;
	        box-sizing: content-box;
}

input[type="search"]:focus {
	outline-offset: -2px;
}

input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

input[type="submit"],
input[type="reset"],
input[type="button"],
button {
	cursor: pointer;
	-webkit-appearance: button;
	*overflow: visible;
}

select {
	background-color: inherit;
	line-height: normal;
}

textarea {
	vertical-align: top;
	overflow: auto;
	*font-family: sans-serif;
}


/* =============================================================
   Tables
============================================================= */

table {
	border-collapse: collapse;
	border-spacing: 0;
}

caption {
	padding: 0;
	text-align: left;
}

th, td {
	text-align: left;
	vertical-align: baseline;
	padding: 0;
}