@charset "UTF-8";
* {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  word-break: break-word;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  vertical-align: baseline;
  background: transparent; }

html, body {
  overflow-x: hidden;
  font-size: 62.5%; }

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

li {
  list-style-type: none; }

blockquote, q {
  quotes: none; }
  blockquote::before, blockquote::after, q::before, q::after {
    content: '';
    content: none; }

a {
  text-decoration: none;
  color: inherit; }

img, picture {
  vertical-align: middle;
  max-width: 100%; }

img {
  height: auto; }

picture {
  display: block; }

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

input, select {
  vertical-align: middle; }

br {
  line-height: 0; }

input, textarea, select, button {
  font: inherit; }

/* safariでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  -moz-appearance: button;
  appearance: button;
  border: none;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }
  input[type="submit"]::-webkit-search-decoration,
  input[type="button"]::-webkit-search-decoration {
    display: none; }
  input[type="submit"]::focus,
  input[type="button"]::focus {
    outline-offset: -2px; }
