* {
    margin: 0;
    padding: 0;
}

/* フォントサイズの拡大を防ぐ */
html {
    text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

abbr, address, article, aside, audio, b, blockquote, body, canvas, caption, cite, code, dd, del, details, dfn, div, dl, dt, em, fieldset, figcaption, figure, footer, form, h1, h2, h3, h4, h5, h6, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, p, pre, q, samp, section, small, span, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, ul, var, video {
    font-size: 100%;
    margin: 0;
    padding: 0;
    vertical-align: baseline;
    border: 0;
    outline: 0;
    background: 0 0;
}

body {
    line-height: 1;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
    display: block
}

nav ul {
    list-style: none
}

blockquote, q {
    quotes: none
}

blockquote:after, blockquote:before, q:after, q:before {
    content: '';
    content: none;
}

a {
    font-size: 100%;
    margin: 0;
    padding: 0;
    vertical-align: baseline;
    background: 0 0;
    color: #383838;
    text-decoration: none;
}

/* change colours to suit your needs */

ins {
    text-decoration: none;
    color: #000;
    background-color: #ff9;
}

/* change colours to suit your needs */

mark {
    font-weight: 700;
    font-style: italic;
    color: #000;
    background-color: #ff9;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    cursor: help;
    border-bottom: 1px dotted;
}

table {
    border-spacing: 0;
    border-collapse: collapse;
}

/* change border colour to suit your needs */

hr {
    display: block;
    height: 1px;
    margin: 1em 0;
    padding: 0;
    border: 0;
    border-top: 1px solid #ccc;
}

input, select {
    vertical-align: middle;
}

ul {
    list-style: none;
}

address {
    font-style: normal;
}

a:active, a:hover {
    outline-width: 0;
}

code, kbd, pre, samp {
    font-family: monospace, monospace;
}

pre {
    font-size: 1em;
}

b, strong {
    font-weight: bolder;
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sub {
    bottom: -.25em;
}

sup {
    top: -.5em;
}

table {
    border-color: inherit;
    text-indent: 0;
}

input {
    border-radius: 0;
}

[disabled] {
    cursor: default;
}

[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
    height: auto;
}

[type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px;
}

[type=search]::-webkit-search-decoration {
    -webkit-appearance: none;
}

textarea {
    overflow: auto;
    resize: vertical;
}

button, input, optgroup, select, textarea {
    font: inherit;
}

optgroup {
    font-weight: 700;
}

button {
    overflow: visible;
}

button, select {
    text-transform: none;
}

[role=button], [type=button], [type=reset], [type=submit], button {
    cursor: pointer;
    color: inherit;
}

[type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner, button::-moz-focus-inner {
    border-style: none;
    padding: 0;
}

button, input, select, textarea {
    background-color: transparent;
    border-style: none;
}

a:focus, button:focus, input:focus, select:focus, textarea:focus {
    outline-width: 0;
}

img {
    border-style: none;
}