/* --------------------------------------------
   init
----------------------------------------------- */

body {
  font: 14px / 1.5 verdana,
          'メイリオ',
          Meiryo,
          'ヒラギノ角ゴ Pro W3',
          'Hiragino Kaku Gothic Pro',
          'ＭＳ Ｐゴシック',
          'MS PGothic';
  margin: 0;
  padding: 0;
  color: #444;
}

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p,
blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img,
ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center,
dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody,
tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure,
figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  font-weight: normal;
  font-style: normal;
  margin: 0;
  padding: 0;
  border: 0;
  color: #444;
}

ul {
  list-style: none;
}

select {
  padding: 5px;
  border: 1px solid #999;
}

input {
  padding: 5px;
  border: 1px solid #999;
}

a {
  color: #0061cc;
}

a:hover {
  text-decoration: none;
}

small {
  font-size: .8em;
}

pre, input, button, select {
  font: 14px / 1.5 verdana,
          'メイリオ',
          Meiryo,
          'ヒラギノ角ゴ Pro W3',
          'Hiragino Kaku Gothic Pro',
          'ＭＳ Ｐゴシック',
          'MS PGothic';
}

/* --------------------------------------------
   heading font-size
----------------------------------------------- */

h1 {
  font-size: 32px;
}

h2 {
  font-size: 26px;
}

h3 {
  font-size: 20px;
}

h4 {
  font-size: 18px;
}

h5 {
  font-size: 14px;
}

/* --------------------------------------------
   form
----------------------------------------------- */

/* layout */

.form dl {
  overflow: hidden;
  box-sizing: border-box;
  width: 100%;
}

.form dt {
  float: left;
  clear: both;
  box-sizing: border-box;
  width: 30%;
  padding: 8px;
}

.form dd {
  float: left;
  box-sizing: border-box;
  width: 70%;
  padding: 8px;
}

/* text */

.form__text {
  box-sizing: border-box;
  width: 100%;
  padding: 8px;
  border: 1px solid #ccc;
}

.form__boxSize-150 {
  width: 150px;
}

.form__boxSize-300 {
  width: 300px;
}

.form__boxSize-500 {
  width: 500px;
}

/* file */

.form__file {
  box-sizing: border-box;
  width: 100%;
  padding: 8px;
  border: 1px solid #ccc;
}

/* select */

.form__select {
  box-sizing: border-box;
  width: 100%;
  padding: 8px;
  border: 1px solid #ccc;
}

.form__select-date {
  box-sizing: border-box;
  width: 80px;
  margin: 0 4px 0 0;
}

/* chceckbox, radio */

.form input[type=checkbox], input[type=radio] {
  margin: 0 4px 0 0;
  vertical-align: middle;
}

/* list */

.form__list {
  overflow: hidden;
}

.form__list li {
  display: block;
}

.form__list-block li {
  margin: 0 0 8px 0;
}

.form__list-inline li {
  float: left;
  margin: 0 8px 0 0;
}

.form__list-block li:last-child, .form__list-inline li:last-child {
  margin: 0 0 0 0;
}

/* textarea */

.form__textarea {
  box-sizing: border-box;
  width: 100%;
  padding: 8px;
  vertical-align: bottom;
  border: 1px solid #ccc;
}

/* buttonContainer */

.form__buttonContainer {
  margin: 8px 0 8px 0;
}

/* formInnerTitle */

.form__innerTitle {
  padding: 8px;
}

/* note */

.form__note {
  margin: 8px 0 0 0;
}

/* required */

.form__required {
  color: #f00;
}

/* error */

.form__error {
  clear: both;
  margin: 8px 0 0 0;
  color: #f00;
}

.form__hasError {
  border-color: #f00;
}

.form__disabled {
  color: #ccc;
  background-color: #f6f6f6;
}

/* other */
.form__gapText {
  margin: 0 8px;
}

/* --------------------------------------------
   button
----------------------------------------------- */

.button {
  line-height: 1;
  display: inline-block;
  padding: 11px 14px;
  text-decoration: none;
  color: #000;
  border: 1px solid #333;
  background-color: #fff;
}

.button:hover {
  background-color: #eee;
}

.button-primary {
  color: #fff;
  background-color: #06a;
}

.button-primary:hover {
  background-color: #059;
}

.button-disabled {
  cursor: default;
  color: #ccc;
  border: 1px solid #999;
}

.button-disabled:hover {
  background-color: #fff;
}

.button-small {
	padding: 8px 9px;
}

.buttonGrp {
  overflow: hidden;
}

.buttonGrp ul {
  float: left;
}

.buttonGrp li {
  float: left;
  margin: 0 8px 0 0;
}

.buttonGrp li:last-child {
  margin: 0 0 0 0;
}

.buttonGrp-center {
  position: relative;
}

.buttonGrp-center ul {
  position: relative;
  left: 50%;
}

.buttonGrp-center li {
  position: relative;
  left: -50%;
}

/* --------------------------------------------
   table
----------------------------------------------- */

.table {
  width: 100%;
  background-color: #fff;
}

.table td {
  padding: 8px;
  border-bottom: 1px solid #ccc;
}

.table thead td {
  background-color: #ddd;
}

.table-bordered td {
  border: 1px solid #ccc;
}

.table-simple td {
  border: none;
}

.table-striped tbody tr:nth-child(even) {
  background-color: #f6f6f6;
}

.table-hover tbody tr:hover td {
  background-color: #eee;
}

/* --------------------------------------------
   list
----------------------------------------------- */

.list {
  margin-left: 26px;
}

.list-inline {
  overflow: hidden;
  margin-left: 0;
}

.list-inline li {
  float: left;
  margin: 0 8px 0 26px;
}

.list-inline li:last-child {
  margin-right: 0;
}

.list-none {
  list-style-type: none;
}

.list-disc {
  list-style-type: disc;
}

.list-circle {
  list-style-type: circle;
}

.list-decimal {
  list-style-type: decimal;
}

/* --------------------------------------------
   pagination
----------------------------------------------- */

.pagination {
  overflow: hidden;
}

.pagination ul {
  float: left;
}

.pagination li {
  float: left;
  border: 1px solid #ccc;
  border-right: none;
}

.pagination li:last-child {
  border-right: 1px solid #ccc;
}

.pagination-center {
  position: relative;
}

.pagination-center ul {
  position: relative;
  left: 50%;
}

.pagination-center li {
  position: relative;
  left: -50%;
}

.pagination__active {
	display: block;
    padding: 6px 12px;
  background-color: #ddd;
}

.pagination a {
  display: block;
  padding: 6px 12px;
  text-decoration: none;
  color: #404040;
}

.pagination a:hover {
  background-color: #eee;
}

.pagination__active a:hover {
  background-color: #ccc;
}

/* --------------------------------------------
   tab
----------------------------------------------- */

.tab {
  height: 45px;
  margin: 0 0 30px 0;
  border-bottom: 1px solid #ccc;
}

.tab ul {
  overflow: hidden;
  width: 100%;
}

.tab li {
  float: left;
}

.tab li:first-child {
  margin: 0 0 0 10px;
}

.tab li:last-child {
  border-right: 1px solid #ccc;
}

.tab a {
  line-height: 44px;
  display: block;
  height: 44px;
  padding: 0 25px;
  text-align: center;
  text-decoration: none;
  color: #404040;
  border: 1px solid #ccc;
  border-right: none;
  background-color: #ddd;
}

.tab a:hover {
  background-color: #eee;
}

.tab__active a {
  border-bottom: 1px solid #fff;
  background-color: #fff;
}

.tab__active a:hover {
  background-color: #eee;
}
