@charset "UTF-8";
/*! サイトベース */
.cl, .contentWrap, #headerWrap, #ftrSiteMapList, #ftrList ul {
  display: inline-block;
  min-height: 1%;
  display: block;
  *zoom: 1;
}
.cl:after, .contentWrap:after, #headerWrap:after, #ftrSiteMapList:after, #ftrList ul:after {
  content: " ";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
  font-size: 0;
}
* html .cl, * html .contentWrap, * html #headerWrap, * html #ftrSiteMapList, * html #ftrList ul, #ftrList * html ul {
  height: 1%;
}

.cl, .contentWrap, #headerWrap, #ftrSiteMapList, #ftrList ul {
  display: inline-block;
  min-height: 1%;
  display: block;
  *zoom: 1;
}

.cl:after, .contentWrap:after, #headerWrap:after, #ftrSiteMapList:after, #ftrList ul:after {
  content: " ";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
  font-size: 0;
}

* html .cl, * html .contentWrap, * html #headerWrap, * html #ftrSiteMapList, * html #ftrList ul, #ftrList * html ul {
  height: 1%;
}

/*----------------------------------
reset
----------------------------------*/
dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote {
  margin: 0;
  padding: 0;
}

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

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

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

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

ol, ul {
  list-style: none;
}

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

abbr, acronym {
  border: 0;
}

a:link {
  color: #d13a3e;
  text-decoration: underline;
}

a:visited {
  color: #d13a3e;
  text-decoration: underline;
}

a:hover {
  color: #d13a3e;
  text-decoration: none;
  cursor: pointer;
}

a:active {
  color: #d13a3e;
  text-decoration: none;
}

a:active, a:focus {
  outline: none;
}

/*  */
li img,
dt img,
dd img {
  vertical-align: top;
}

.clear {
  clear: both;
  height: 0;
  line-height: 0;
}

/* IE7 Zoom対策 */
* {
  letter-spacing: 0;
}

/* mediabox対策 */
* {
  margin: 0;
  padding: 0;
}

body {
  font: 14px/1.7 Verdana, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  color: #000;
  margin: 0;
  padding: 0;
  text-align: center;
  min-width: 980px;
}

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

@media only screen and (max-width: 640px) {
  body {
    min-width: 320px;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
  }

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

  input[type="button"], input[type="submit"] {
    -webkit-appearance: none;
    border-radius: 0;
  }
}
/*----------------------------------
hack
----------------------------------*/
/* firefox3でmargin指定 */
body, x:-moz-broken {
  margin-left: -1px;
}

/* IE7でpadding指定 */
* :first-child + html body {
  padding-left: 1px;
}

/* IE6以下でpadding指定 */
* html body {
  padding-left: 1px;
}

/*----------------------------------
wrapper
----------------------------------*/
#wrapper {
  position: relative;
  text-align: left;
  font-size: 100%;
}

.contentWrap {
  width: 980px;
  margin: 0 auto;
}

@media only screen and (max-width: 640px) {
  .contentWrap {
    width: auto;
    padding: 0 4%;
  }
}
/*----------------------------------
header
----------------------------------*/
/*----------------------------------
spMenu
----------------------------------*/
#spMenu {
  display: none;
}

@media only screen and (max-width: 640px) {
  #spMenu {
    display: block;
  }
  #spMenu ul {
    display: none;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    width: 100%;
    text-align: left;
  }
  #spMenu li {
    position: relative;
    border-bottom: 1px solid #fff;
    background: #d23a3e;
    /*ul {
      display: none;
      position: relative;
      top: 0;
      left: 0;
      margin-top: 0;
    }
    li {
      border-bottom: 1px solid #e8e8e8;
      background: #f7f7f7;
      a {
        padding: 20px 15px 20px 30px;
        color: #444;
        background: url(/common/img/ico-ftr-sp-menu.png) 95% 50% no-repeat;
        background-size: 3.4375% auto;
      }
    }
    li:first-child {
      border-top: 1px solid #e8e8e8;
      a {
        background: url(/common/img/ico-ftr-sp-menu.png) 95% 50% no-repeat;
        background-size: 3.4375% auto;
      }
    }*/
  }
  #spMenu li a {
    display: block;
    padding: 20px 10px;
    color: #fff;
    text-decoration: none;
    font-size: 100%;
    background: url(/common/img/ico-ftr-sp-menu.png) 95% 50% no-repeat;
    background-size: 3.4375% auto;
  }
  #spMenu li:first-child a {
    background: url(/common/img/ico-sp-menu-home.png) 95.5% 50% no-repeat;
    background-size: 5.78125% auto;
  }

  header h1 {
    float: left;
    width: 58.28125%;
    margin-top: 2%;
  }

  #btnSpMenu {
    float: right;
    width: 10.9375%;
  }
}
/*----------------------------------
fontCh
----------------------------------*/
#fontS {
  padding: 5px 0 6px;
  font-size: 13px;
}

#fontM {
  padding: 4px 0 6px;
  font-size: 14px;
}

#fontL {
  padding: 4px 0 5px;
  font-size: 15px;
}

/*----------------------------------
ftrSiteMapArea
----------------------------------*/
#ftrSiteMapArea {
  margin-top: 40px;
}

#ftrSiteMapList {
  float: left;
  margin-left: -52px;
}
#ftrSiteMapList ul {
  float: left;
  margin: -22px 0 0 48px;
}
#ftrSiteMapList li {
  margin-top: 13px;
  padding-left: 11px;
  font-size: 85.71429%;
  background: url(/common/img/ico-list03.png) 0 50% no-repeat;
}
#ftrSiteMapList li a {
  color: #545454;
  text-decoration: none;
}
#ftrSiteMapList li a:hover {
  text-decoration: underline;
}
#ftrSiteMapList .mainDir {
  margin-top: 18px;
  font-size: 92.85714%;
}
#ftrSiteMapList .mainDir a {
  color: #000;
}

#ftrContact {
  float: right;
  width: 414px;/* 元464px*/
  padding: 21px 0 28px;
  text-align: center;
  border: 3px solid #d43c40;
  background: #fff;
}
#ftrContact p {
  color: #d33b3f;
  font-weight: bold;
  font-size: 121.42857%;
}
#ftrContact img {
  margin-top: 20px;
  max-width: 326px;
}

@media only screen and (max-width: 640px) {
  #ftrSiteMapList {
    display: none;
  }

  #ftrContact {
    float: none;
    width: auto;
    margin-top: 30px;
    padding: 10px 0 17px;
    border-width: 6px;
  }
  #ftrContact p {
    font-size: 121.42857%;
  }
  #ftrContact img {
    width: 80%;
    max-width: 100%;
    margin-top: 10px;
  }
}
/*----------------------------------
ftrNavArea
----------------------------------*/
#ftrNavArea {
  width: 100%;
  padding: 40px 0;
  border-top: 1px dotted #ccc;
  color: #666;
  font-size: 85.71429%;
}
#ftrNavArea a {
  color: #666;
  text-decoration: none;
}
#ftrNavArea a:hover {
  text-decoration: underline;
}

#ftrLogo {
  float: left;
}
#ftrLogo p {
  float: left;
}

#ftrList,#ftrList ul {
  float: right;
}
#ftrList li {
  float: left;
  margin-left: 17px;
  padding-left: 17px;
  border-left: 2px solid #eaeaea;
  line-height: 1;
}
#ftrList li:first-child {
  margin-left: 0;
  padding-left: 0;
  border-left: none;
}
#ftrList p {
  margin-top: 15px;
  text-align: right;
  clear: both;
}
#ftrList small {
  font-size: 100%;
}

#ftrAddress {
  margin: -7px 0 0 11px;
  line-height: 2.0;
}

@media only screen and (max-width: 640px) {
  #ftrNavArea {
    padding: 25px 0;
    text-align: center;
  }

  #ftrList ul {
    display: none !important;
  }

  #ftrLogo {
    float: none;
  }
  #ftrLogo p {
    float: none;
  }

  #ftrList {
    float: none;
  }
  #ftrList p {
    margin-top: 20px;
    text-align: center;
    line-height: 1.2;
  }
  #ftrList small {
    font-size: 85.71429%;
  }

  #ftrAddress {
    margin-top: 20px;
    line-height: 1.6;
  }
  #ftrAddress span {
    font-weight: bold;
  }
}
/*----------------------------------
mailmag
----------------------------------*/
#mailmag {
  position: absolute;
  top: 25px;
  left: 50%;
  z-index: 0;
  width: 980px;
  margin-left: -490px;
  text-align: right;
  line-height: 1.5;
  font-weight: bold;
}
#mailmag a {
  display: inline-block;
  margin-right: 248px;
  border: 3px solid #52b431;
  text-align: center;
  text-decoration: none;
  color: #53b233;
  background: white url(/common/img/ico-btn01.png) 100% 0 no-repeat;
  *display: inline;
  *zoom: 1;
}
#mailmag a:hover {
  color: #fff;
  background-image: url(/common/img/ico-btn02.png);
  background-color: #52b531;
}
#mailmag a:hover span {
  background-image: url(/common/img/ico-mail02.png);
}
#mailmag span {
  display: block;
  padding: 9px 14px 11px 69px;
  background: url(/common/img/ico-mail01.png) 14px 50% no-repeat;
}

@media only screen and (max-width: 640px) {
  #mailmag {
    position: relative;
    top: 0;
    left: 0;
    z-index: 0;
    width: 100%;
    margin-left: 0;
    line-height: 1.5;
    font-weight: bold;
  }
  #mailmag a {
    display: inline-block;
    margin-right: 0;
    width: 100%;
    border: 6px solid #52b431;
    text-align: center;
    text-decoration: none;
    color: #53b233;
    background: white url(/common/img/ico-btn21.png) 100% 0 no-repeat;
    background-size: 4% auto;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 200%;
    *display: inline;
    *zoom: 1;
  }
  #mailmag a:hover {
    color: #53b233;
    background-image: url(/common/img/ico-btn21.png);
    background-color: #fff;
  }
  #mailmag a:hover span {
    background-image: url(/common/img/ico-mail03.png);
    background-size: 18% auto;
  }
  #mailmag span {
    display: block;
    padding: 5% 0 5% 20%;
    background: url(/common/img/ico-mail03.png) 20px 50% no-repeat;
    background-size: 18% auto;
  }
}
@media only screen and (max-width: 480px) {
  #mailmag a {
    font-size: 150%;
  }
}
@media only screen and (max-width: 360px) {
  #mailmag a {
    font-size: 121.42857%;
  }
}
/*----------------------------------
ftrSpMenu
----------------------------------*/
#ftrSpMenu {
  display: none;
}

@media only screen and (max-width: 640px) {
  #ftrSpMenu {
    margin-top: 40px;
    display: block;
  }
  #ftrSpMenu li {
    border-top: 1px solid #e8e8e8;
    background: #f7f7f7;
  }
  #ftrSpMenu li:last-child {
    border-bottom: 1px solid #e8e8e8;
  }
  #ftrSpMenu a {
    display: block;
    padding: 20px 15px;
    color: #444;
    text-decoration: none;
    font-size: 100%;
    background: url(/common/img/ico-ftr-sp-menu.png) 95% 50% no-repeat;
    background-size: 3.4375% auto;
  }
}
