/*-----------*/
/*   reset   */
/*-----------*/
html {
  color: #000;
  background: #ffffff;
}

body {
  counter-reset: number 0;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

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

fieldset, img {
  vertical-align: bottom;
  border: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal;
}

ol, ul {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before, q:after {
  content: "";
}

abbr, acronym {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
}

input, textarea, select {
  *font-size: 100%;
}

legend {
  color: #000;
}

a {
  outline: none;
}

/* html5 */
header, footer, nav, section, article, figure, aside {
  margin: 0;
  padding: 0;
  display: block;
}

/*------------------*/
/*   clearfix       */
/*------------------*/
.cf:before,
.cf:after {
  content: "";
  display: table;
}

.cf:after {
  clear: both;
}

.cf {
  zoom: 1;
}

/*------------------*/
/*   module         */
/*------------------*/
.tar {
  text-align: right !important;
}

.tac {
  text-align: center !important;
}

.tal {
  text-align: left !important;
}

.fl {
  float: left !important;
}

.fr {
  float: right !important;
}

.clear {
  clear: both !important;
}

.bold {
  font-weight: bold;
}

.linktext {
  text-decoration: underline;
  color: #c40500 !important;
}

img {
  max-width: 100%;
  height: auto;
}

.imgwide {
  width: 100%;
  max-width: 100%;
  height: auto;
}

/*------------------*/
/*   box-sizing     */
/*------------------*/
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}

/* iOS input button */
input[type="text"],
input[type="button"],
input[type="email"],
input[type="submit"],
textarea {
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
