@charset "utf-8";
@charset "Shift_JIS";

html, body, h1, h2, h3, h4,
ul, ol, dl, li, dt, dd, p, div, span,
img, a, table, tr, th, td, figure, address {
  margin: 0;
  padding: 0;
  border: 0;
  font-weight: normal;
  font-size: 100%;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-style: normal;
}

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

body {
  line-height: 1;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

ol, ul {
  list-style: none;
  list-style-type: none;
}

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
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;
}

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

img {
  vertical-align: bottom
}

address, article, aside, canvas, details, div, figcaption, figure, footer, header, hr, iframe, main, menu, nav, section, textarea {
  display: block
}

iframe {
  max-width: 100%!important
}

embed, img, object, video {
  max-width: 100%
}

a, label {
  cursor: pointer
}

blockquote {
  padding: 0;
  margin: 0;
  display: block
}

address, em {
  font-style: normal
}

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

li, ol, ul {
  list-style: none
}

textarea {
  resize: vertical;
  overflow: hidden;
  -ms-appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  border: 0
}

button, input, select {
  vertical-align: middle;
  border-radius: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  border: 0;
  background: none;
  margin: 0;
  padding: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  cursor: pointer;
  white-space: normal;
  outline: 0;
  -moz-appearance: none;
  -ms-appearance: none;
  -webkit-appearance: none
}

button, input[type=button], input[type=checkbox], input[type=radio], input[type=reset], input[type=submit], select {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-indent: .01px;
  -o-text-overflow: "";
  text-overflow: ""
}

select::-ms-expand {
  display: none
}

table {
  border-collapse: collapse
}

:after, :before {
  padding: 0;
  margin: 0;
  line-height: 1
}

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

:after, :before {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}

br {
  font-size: 0
}

::-moz-selection {
  background: #3B5CFF;
  color: #fff
}

::selection {
  background: #01b649;
  color: #fff
}

input::-moz-selection, textarea::-moz-selection {
  color: #212121
}

input::selection, textarea::selection {
  color: #212121
}

a:focus, aside:focus, button:focus, div:focus, input:focus, select:focus, textarea:focus {
  outline: none;
  outline:0;
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.clearfix:before {
  content: "";
  display: block;
  clear: both;
}

.clearfix {
  display: block;
}
