html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video,input
	{
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	font-weight: normal;
	vertical-align: baseline;
	background: transparent;
	-webkit-box-sizing: border-box; /* Safari, Chrome用 */
	-moz-box-sizing: border-box; /* Firefox用 */
	-ms-box-sizing: border-box; /* IE8用 */
	box-sizing: border-box; /* CSS3（Opera用） */
	}


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

audio,canvas,progress,video
	{
	display: inline-block;
	vertical-align: baseline;
	}

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

[hidden],template
	{
	display: none;
	}

a
	{
	background: transparent;
	}

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

abbr[title]
	{
	border-bottom: 1px dotted;
	}

b,strong
	{
	font-weight: bold;
	}

dfn
	{
	font-style: italic;
	}

/* 禁則処理の追加 */
p,li,dt,dd,th,td,pre
	{
	-ms-line-break: strict;
	line-break: strict;
	-ms-word-break: break-strict;
	word-break: break-strict;
	}

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

small
	{
	font-size: 80%;
	}

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

sup
	{
	top: -0.5em;
	}

sub
	{
	bottom: -0.25em;
	}

img
	{
	border: 0;
	max-width: 100%;
	vertical-align: middle;
	font-size:0;
	line-height: 0;
	}

button
	{
        width: auto;
        padding:0;
        margin:0;
        background:none;
        border:0;
        font-size:0;
        line-height:0;
        overflow:visible;
        cursor:pointer;
	}

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

figure
	{
	margin: 1em 40px;
	}

hr
	{
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	height: 0;
	}

pre
	{
	overflow: auto;
	}

code,kbd,pre,samp
	{
	font-family: monospace, monospace;
	font-size: 1em;
	}

button,input,optgroup,select,textarea
	{
	color: inherit; /* 1 */
	font: inherit; /* 2 */
	margin: 0; /* 3 */
	}

button
	{
	overflow: visible;
	}

button,
select
	{
	text-transform: none;
	}

button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"]
	{
	-webkit-appearance: button; /* 2 */
	cursor: pointer; /* 3 */
	}

button[disabled],
html input[disabled]
	{
	cursor: default;
	}

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

input
	{
	line-height: normal;
	}

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


input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button
	{
	height: auto;
	}

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

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

fieldset
	{
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
	}

legend
	{
	border: 0; /* 1 */
	padding: 0; /* 2 */
	}

textarea
	{
	overflow: auto;
	}

optgroup
	{
	font-weight: bold;
	}

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

td,
th
	{
	padding: 0;
	}

ul,ol
	{
	list-style: none;
	}
