@charset "UTF-8";
/*--------------------------------
 Base CSS
 基本レイアウト
--------------------------------*/
/* 初期化 */
html, body, div,
section, nav, article, aside, hgroup, heade, footer,
applet, object, iframe, span,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li, figure, figcaption,
fieldset, form, label, legend, menu,
table, caption, tbody, tfoot, thead, tr, th, td {
  margin: 0;
  padding: 0;
  outline: 0;
  font-size: 100%;
  vertical-align: baseline;
  background: transparent; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

img {
  border: 0; }

blockquote, q {
  quotes: none; }

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

:focus {
  outline: 0; }

ins {
  text-decoration: none; }

del {
  text-decoration: line-through; }

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

/* 設定 */
html, body {
  height: 100%;
  min-height: 100%; }

body {
  font-family: Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, Helvetica, Arial, sans-serif;
  font-size: 14px/21px;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%; }

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

h1 {
  font-size: 22px; }

h2 {
  font-size: 20px; }

h3 {
  font-size: 18px; }

h4 {
  font-size: 16px; }

h5 {
  font-size: 14px; }

h6 {
  font-size: 12px; }

th {
  font-weight: normal; }

br {
  height: 0px;
  line-height: 10px;
  margin-top: 10px; }

hr {
  background: none;
  margin: 30px auto 0px auto;
  border-top: 1px dashed #347732;
  width: 100%; }

a {
  color: #333; }
  a:hover {
    color: #666666; }

address {
  font-style: normal; }

.clearfix {
  display: inline-block; }
  .clearfix:after {
    content: " ";
    display: block;
    height: 0;
    visibility: hidden;
    clear: both; }

.clear {
  clear: both; }

/* 拡張レイアウトクラス */
.txtStrong {
  font-weight: bold; }

.txtNormal {
  font-weight: normal; }

.txtLeft {
  text-align: left; }

.txtRight {
  text-align: right; }

.txtCenter {
  text-align: center; }

.boxLeft {
  margin-left: 0px; }

.boxRight {
  margin-right: 0px; }

.boxCenter {
  margin-left: auto;
  margin-right: auto; }

.boxTop {
  vertical-align: top; }

.boxMiddle {
  vertical-align: middle; }

.boxBottom {
  vertical-align: bottom; }

.boxBlock {
  display: block; }

.boxInline {
  display: inline; }

.boxHidden {
  display: none; }

.boxFloatL {
  float: left; }

.boxFloatR {
  float: right; }

/* レイアウト */
/* 色 */
body {
  background-color: #fff; }

#page {
  background-color: transparent; }

.contsWrap {
  background-color: transparent; }

/* 枠組み */
#base {
  position: relative;
  width: 100%;
  height: auto !important;
  height: 100%;
  min-height: 100%; }

#page {
  position: relative;
  display: block;
  height: auto !important;
  min-height: 100%; }

header.topHead {
  position: relative;
  display: block;
  z-index: 0; }

section.layoutBox {
  position: relative;
  display: block;
  height: auto;
  padding-bottom: 104px;
  clear: both; }

footer.topFoot {
  display: block;
  height: 104px;
  margin-top: 20px; }

div.contsWrap {
  display: block;
  position: relative;
  height: auto;
  width: auto;
  z-index: 3; }
