@charset "UTF-8";
/* --------------------------------------------

	FileName	:	common.css

font-size 9px{ font-size:77%; } 10px{ font-size:85%; } 11px{ font-size:93%; } 12px{ font-size:100%; } 13px{ font-size:108%; } 14px{ font-size:116%; } 15px{ font-size:123.1%; } 16px{ font-size:131%; } 17px{ font-size:138.5%; } 18px{ font-size:146.5%; } 19px{ font-size:153.9%; } 20px{ font-size:161.6%; } 21px{ font-size:167%; } 22px{ font-size:174%; } 23px{ font-size:182%; } 24px{ font-size:189%; } 27px{ font-size:197%; }

-------------------------------------------- */
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(https://fonts.googleapis.com/css?family=Open+Sans|Oswald);
.clearfix, header#contentHeader #gnavArea #mainNav dd nav#externalNav ul, header#contentHeader #gnavArea #mainNav dd dl#fontSize, #bread ol, #mainCnt nav.indexCntNav ul, #mainCnt nav.indexLinkList ul, #mainCnt nav.ancLink ul, #mainCnt .floatL, #mainCnt .floatR, footer .inner, footer .inner #footLogo ul, footer .inner #assistNav ul {
  display: inline-block;
}
.clearfix, header#contentHeader #gnavArea #mainNav dd nav#externalNav ul, header#contentHeader #gnavArea #mainNav dd dl#fontSize, #bread ol, #mainCnt nav.indexCntNav ul, #mainCnt nav.indexLinkList ul, #mainCnt nav.ancLink ul, #mainCnt .floatL, #mainCnt .floatR, footer .inner, footer .inner #footLogo ul, footer .inner #assistNav ul {
  display: block;
}
.clearfix:after, header#contentHeader #gnavArea #mainNav dd nav#externalNav ul:after, header#contentHeader #gnavArea #mainNav dd dl#fontSize:after, #bread ol:after, #mainCnt nav.indexCntNav ul:after, #mainCnt nav.indexLinkList ul:after, #mainCnt nav.ancLink ul:after, #mainCnt .floatL:after, #mainCnt .floatR:after, footer .inner:after, footer .inner #footLogo ul:after, footer .inner #assistNav ul:after {
  content: "";
  display: block;
  clear: both;
  height: 0;
}

.textOver {
  display: block;
  text-indent: 120%;
  white-space: nowrap;
  overflow: hidden;
}

/* reset style (html5 set)
-------------------------------------------------------------------- */
article, section, header, footer, nav, menu, aside, figure, figcaption {
  display: block;
  padding: 0;
  margin: 0;
}

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

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

fieldset, img {
  border: 0;
}

img {
  vertical-align: top;
}

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

a {
  outline: 0;
  vertical-align: baseline;
}

a > * {
  cursor: pointer;
}

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;
}

.blankIcon {
  vertical-align: 0;
  margin: 0 0 0 2px;
}

img.iconNew,
img.addIcon {
  vertical-align: middle;
}

span.anchorIn,
span.anchorIn strong {
  text-decoration: underline;
  vertical-align: baseline;
}

.newsList span.anchorIn,
.newsList span.anchorIn strong {
  text-decoration: none;
}

.newsList a:hover span.anchorIn,
.newsList a:hover span.anchorIn strong {
  text-decoration: underline;
}

#sub span.anchorIn,
footer span.anchorIn {
  text-decoration: none;
}

/* body
------------------------------------------------------------------- */
body {
  font: 14px/1.65  Arial, 'Noto Sans JP', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', Meiryo, メイリオ, sans-serif;
  background: #fff;
  width: 100%;
  *font-size: small;
  *font: x-small;
  margin: 0;
  padding: 0;
  -webkit-text-size-adjust: 100%;
  -webkit-text-size-adjust: none;
  color: #333;
  /*
  @media only screen and (min-width:641px) and (max-width:1040px){
  	min-width: $minCnt_width;
  }
  
  @media print, screen and (min-width: 769px){
  	width: 100% !important;
  }*/
  position: relative;
}

a {
  color: #004ea2;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
a.noTelLink {
  text-decoration: none !important;
  cursor: default;
}

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

strong {
  font-weight: bold;
}

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

#contents {
  background-color: #ffffff;
}

#js-cover {
  display: none;
}
@media only screen and (max-width: 768px) {
  #js-cover {
    display: block;
    width: 100%;
    height: 100%;
    background-color: #FFF;
    position: absolute;
    top: 0;
    left: 0;
  }
}

a.PDFIcon {
  padding-right: 10px;
}
a.PDFIcon:after {
  background: url("../img/common/icon_pdf.gif") left top no-repeat;
  content: '';
  width: 16px;
  height: 16px;
  display: block;
}

/* 
-------------------------------------------------------------------- */
header#contentHeader {
  height: 106px;
  border-bottom: 1px solid #004ea2;
  width: 100%;
  margin-bottom: 62px;
  /*
  @media only screen and (min-width:641px) and (max-width:1040px){
  	min-width: 100%;
  	margin: 0 auto 62px;
  }
  
  @media print, screen and (min-width: 769px){
  	margin: 0 auto 62px !important;
  }*/
}
@media only screen and (max-width: 768px) {
  header#contentHeader {
    width: 100%;
    min-width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border: none;
    margin-bottom: 0;
    height: 70px;
  }
}
header#contentHeader #headerInner {
  width: 100%;
  min-width: 1000px;
  max-width: 1200px;
  margin: auto;
  position: relative;
  /*
  @media only screen and (min-width:641px) and (max-width:1040px){
  	max-width: 100%;
  	min-width: 960px;
  }
  
  @media print, screen and (min-width: 769px){
  	width: 100% !important;
  	margin-left: auto !important;
  	margin-right: auto !important;
  }
  */
}
@media only screen and (max-width: 768px) {
  header#contentHeader #headerInner {
    min-width: 100%;
  }
}
@media only screen and (max-width: 768px) {
  header#contentHeader #headerInner .headCnt {
    height: 70px;
  }
}
header#contentHeader #headerInner .headCnt h1 {
  position: relative;
  top: 18px;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #headerInner .headCnt h1 {
    top: 10px;
    left: 10px;
    position: absolute;
  }
}
header#contentHeader #headerInner .headCnt h1 a {
  display: block;
  height: 60px;
  width: 485px;
  background: url('../img/common/parts-s888c4d06df.png') 0 -206px;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #headerInner .headCnt h1 a {
    display: block;
    width: 281px;
    height: 54px;
    background: url('../img/common/commonSprite-s0804c3c51e.png') 0 -207px no-repeat;
    -moz-background-size: 305px, auto;
    -o-background-size: 305px, auto;
    -webkit-background-size: 305px, auto;
    background-size: 305px, auto;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
  }
}
header#contentHeader #gnavArea {
  width: 100%;
}
header#contentHeader #gnavArea #mainNav {
  max-width: 1200px;
  margin: 0 auto;
  /*
  @media only screen and (min-width:641px) and (max-width:1040px){
  	min-width: 960px !important;
  }
  */
}
header#contentHeader #gnavArea #mainNav > dt {
  display: none;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav > dt {
    width: 60px;
    height: 60px;
  }
}
header#contentHeader #gnavArea #mainNav dd {
  margin: 0 auto;
}
header#contentHeader #gnavArea #mainNav dd#navSp {
  margin: 0 auto;
  height: auto;
  width: 100%;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd#navSp {
    display: block;
    overflow-y: auto;
    width: 100%;
    height: 100%;
    z-index: 100;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
  }
}
@media print, screen and (min-width: 769px) {
  header#contentHeader #gnavArea #mainNav dd#navSp {
    margin-right: 0 !important;
    transform: none !important;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#gNav {
  position: absolute;
  bottom: -109px;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#gNav {
    bottom: 0;
    position: relative;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#gNav span {
  background: #004ea2;
  height: 5px;
  display: block;
  position: relative;
  width: 50px;
  top: 5px;
  z-index: 10;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#gNav span {
    display: none !important;
  }
}
@media print, screen and (min-width: 769px) {
  header#contentHeader #gnavArea #mainNav dd nav#gNav span {
    display: block !important;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#gNav ul {
  display: table;
  table-layout: fixed;
  width: 100%;
  max-width: 1200px;
  text-align: center;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#gNav ul {
    display: block;
    table-layout: auto;
    max-width: 100%;
    text-align: left;
    background: #fff;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#gNav li {
  display: table-cell;
  height: 62px;
  vertical-align: middle;
  width: 20%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#gNav li {
    display: block;
    height: auto;
    width: 100%;
    position: relative;
  }
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav01:before {
    display: block;
    width: 30px;
    height: 30px;
    background: url('../img/common/commonSprite-s0804c3c51e.png') 0 -37px no-repeat;
    -moz-background-size: 305px, auto;
    -o-background-size: 305px, auto;
    -webkit-background-size: 305px, auto;
    background-size: 305px, auto;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    display: block;
    content: '';
    position: absolute;
    top: 3px;
    left: 20px;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav01 a {
  background: url('../img/common/gnav-s00a0de353a.png');
  background-repeat: no-repeat;
  overflow: hidden;
  width: 240px;
  height: 62px;
  background-position: center 0;
  width: 100% !important;
}
header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav01 a:hover {
  background: url('../img/common/gnav-s00a0de353a.png');
  background-repeat: no-repeat;
  overflow: hidden;
  width: 240px;
  height: 62px;
  background-position: center -132px;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav01 a {
    background: none;
    overflow: auto;
    width: 100%;
    height: auto;
    position: relative;
  }
  header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav01 a:hover {
    background: none;
    overflow: auto;
    width: 100%;
    height: auto;
    position: relative;
  }
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav02:before {
    display: block;
    width: 31px;
    height: 34px;
    background: url('../img/common/commonSprite-s0804c3c51e.png') 0 -71px no-repeat;
    -moz-background-size: 305px, auto;
    -o-background-size: 305px, auto;
    -webkit-background-size: 305px, auto;
    background-size: 305px, auto;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    display: block;
    content: '';
    position: absolute;
    top: 3px;
    left: 20px;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav02 a {
  background: url('../img/common/gnav-s00a0de353a.png');
  background-repeat: no-repeat;
  overflow: hidden;
  width: 240px;
  height: 62px;
  background-position: center -264px;
  width: 100% !important;
}
header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav02 a:hover {
  background: url('../img/common/gnav-s00a0de353a.png');
  background-repeat: no-repeat;
  overflow: hidden;
  width: 240px;
  height: 62px;
  background-position: center -396px;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav02 a {
    background: none;
    overflow: auto;
    width: 100%;
    height: auto;
    position: relative;
  }
  header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav02 a:hover {
    background: none;
    overflow: auto;
    width: 100%;
    height: auto;
    position: relative;
  }
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav03:before {
    display: block;
    width: 33px;
    height: 30px;
    background: url('../img/common/commonSprite-s0804c3c51e.png') 0 -109px no-repeat;
    -moz-background-size: 305px, auto;
    -o-background-size: 305px, auto;
    -webkit-background-size: 305px, auto;
    background-size: 305px, auto;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    display: block;
    content: '';
    position: absolute;
    top: 5px;
    left: 20px;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav03 a {
  background: url('../img/common/gnav-s00a0de353a.png');
  background-repeat: no-repeat;
  overflow: hidden;
  width: 240px;
  height: 62px;
  background-position: center -528px;
  width: 100% !important;
}
header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav03 a:hover {
  background: url('../img/common/gnav-s00a0de353a.png');
  background-repeat: no-repeat;
  overflow: hidden;
  width: 240px;
  height: 62px;
  background-position: center -660px;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav03 a {
    background: none;
    overflow: auto;
    width: 100%;
    height: auto;
    position: relative;
  }
  header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav03 a:hover {
    background: none;
    overflow: auto;
    width: 100%;
    height: auto;
    position: relative;
  }
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav04:before {
    display: block;
    width: 27px;
    height: 31px;
    background: url('../img/common/commonSprite-s0804c3c51e.png') 0 -143px no-repeat;
    -moz-background-size: 305px, auto;
    -o-background-size: 305px, auto;
    -webkit-background-size: 305px, auto;
    background-size: 305px, auto;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    display: block;
    content: '';
    position: absolute;
    top: 5px;
    left: 20px;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav04 a {
  background: url('../img/common/gnav-s00a0de353a.png');
  background-repeat: no-repeat;
  overflow: hidden;
  width: 240px;
  height: 62px;
  background-position: center -792px;
  width: 100% !important;
}
header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav04 a:hover {
  background: url('../img/common/gnav-s00a0de353a.png');
  background-repeat: no-repeat;
  overflow: hidden;
  width: 240px;
  height: 62px;
  background-position: center -924px;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav04 a {
    background: none;
    overflow: auto;
    width: 100%;
    height: auto;
    position: relative;
  }
  header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav04 a:hover {
    background: none;
    overflow: auto;
    width: 100%;
    height: auto;
    position: relative;
  }
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav05:before {
    display: block;
    width: 33px;
    height: 25px;
    background: url('../img/common/commonSprite-s0804c3c51e.png') 0 -178px no-repeat;
    -moz-background-size: 305px, auto;
    -o-background-size: 305px, auto;
    -webkit-background-size: 305px, auto;
    background-size: 305px, auto;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    display: block;
    content: '';
    position: absolute;
    top: 8px;
    left: 20px;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav05 a {
  background: url('../img/common/gnav-s00a0de353a.png');
  background-repeat: no-repeat;
  overflow: hidden;
  width: 240px;
  height: 62px;
  background-position: center -1056px;
  width: 100% !important;
}
header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav05 a:hover {
  background: url('../img/common/gnav-s00a0de353a.png');
  background-repeat: no-repeat;
  overflow: hidden;
  width: 240px;
  height: 62px;
  background-position: center -1188px;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav05 a {
    background: none;
    overflow: auto;
    width: 100%;
    height: auto;
    position: relative;
  }
  header#contentHeader #gnavArea #mainNav dd nav#gNav li.nav05 a:hover {
    background: none;
    overflow: auto;
    width: 100%;
    height: auto;
    position: relative;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#gNav li.current a {
  position: relative;
}
header#contentHeader #gnavArea #mainNav dd nav#gNav li.current a:before {
  content: "";
  width: 100%;
  height: 5px;
  display: block;
  background-color: #004ea2;
  position: absolute;
  top: 0;
  left: 0;
}
header#contentHeader #gnavArea #mainNav dd nav#gNav li.current a.noVis:before {
  background-color: #fff !important;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#gNav li.current a:before {
    display: none;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#gNav li a {
  display: block;
  text-indent: 120%;
  overflow: hidden;
  white-space: nowrap;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#gNav li a {
    text-indent: 0;
    overflow: auto;
    white-space: normal;
    padding: 10px 10px 10px 65px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    border-bottom: 1px solid #e0e0e0;
    text-decoration: none;
    color: #333;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#externalNav {
  position: absolute;
  top: 15px;
  right: 0;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#externalNav {
    position: relative;
    top: 0;
    left: 0;
    padding-top: 15px;
    padding-bottom: 15px;
    background-color: #e9e9e9;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#externalNav ul {
    width: 95%;
    margin: 0 auto;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#externalNav ul li {
  float: left;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#externalNav ul li {
    float: left;
    margin-right: 0;
    width: 50%;
    text-align: center;
    background-color: #fff;
    border: 1px solid #e9e9e9;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  header#contentHeader #gnavArea #mainNav dd nav#externalNav ul li:nth-child(2n) {
    float: right;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#externalNav ul li a {
  color: #333;
  position: relative;
  display: block;
  font-size: 92.85714%;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#externalNav ul li a {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#externalNav ul li a:before {
  content: "";
  display: block;
  position: absolute;
}
header#contentHeader #gnavArea #mainNav dd nav#externalNav ul li a.exNav_01 {
  margin-right: 30px;
}
header#contentHeader #gnavArea #mainNav dd nav#externalNav ul li a.exNav_01:before {
  display: block;
  height: 21px;
  width: 20px;
  background: url('../img/common/parts-s888c4d06df.png') 0 -66px;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  top: 0;
  left: -23px;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#externalNav ul li a.exNav_01:before {
    display: none;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#externalNav ul li a.exNav_02 {
  margin-right: 38px;
}
header#contentHeader #gnavArea #mainNav dd nav#externalNav ul li a.exNav_02:before {
  display: block;
  height: 21px;
  width: 18px;
  background: url('../img/common/parts-s888c4d06df.png') 0 -148px;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  top: 0;
  left: -23px;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#externalNav ul li a.exNav_02:before {
    display: none;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#externalNav ul li a.exNav_03 {
  margin-right: 39px;
}
header#contentHeader #gnavArea #mainNav dd nav#externalNav ul li a.exNav_03:before {
  display: block;
  height: 16px;
  width: 24px;
  background: url('../img/common/parts-s888c4d06df.png') 0 -124px;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  top: 3px;
  left: -27px;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#externalNav ul li a.exNav_03:before {
    display: none;
  }
}
header#contentHeader #gnavArea #mainNav dd nav#externalNav ul li a.exNav_04:before {
  display: block;
  height: 21px;
  width: 25px;
  background: url('../img/common/parts-s888c4d06df.png') 0 -95px;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  top: 0;
  left: -28px;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd nav#externalNav ul li a.exNav_04:before {
    display: none;
  }
}
header#contentHeader #gnavArea #mainNav dd dl#fontSize {
  width: 210px;
  position: absolute;
  top: 48px;
  right: 255px;
  font-size: 92.85714%;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd dl#fontSize {
    display: none;
  }
}
header#contentHeader #gnavArea #mainNav dd dl#fontSize dt {
  float: left;
  padding-top: 4px;
  margin-right: 8px;
}
header#contentHeader #gnavArea #mainNav dd dl#fontSize dd {
  float: left;
}
header#contentHeader #gnavArea #mainNav dd dl#fontSize div#fontsizeControl ul {
  display: table;
}
header#contentHeader #gnavArea #mainNav dd dl#fontSize div#fontsizeControl ul li {
  display: table-cell;
  width: 70px;
  height: 32px;
  background-color: #e9e9e9;
  text-align: center;
  vertical-align: middle;
}
header#contentHeader #gnavArea #mainNav dd dl#fontSize div#fontsizeControl ul li#switchFontSizeMedium {
  -moz-border-radius: 0 3px 3px 0;
  -webkit-border-radius: 0;
  border-radius: 0 3px 3px 0;
  font-size: 114.28571%;
}
header#contentHeader #gnavArea #mainNav dd dl#fontSize div#fontsizeControl ul li#switchFontSizeSmall {
  -moz-border-radius: 3px 0 0 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px 0 0 3px;
}
header#contentHeader #gnavArea #mainNav dd dl#fontSize div#fontsizeControl ul li:hover {
  cursor: pointer;
}
header#contentHeader #gnavArea #mainNav dd dl#fontSize div#fontsizeControl ul li.active {
  background-color: #004ea2;
  color: #fff;
}
header#contentHeader #gnavArea #mainNav dd #search {
  width: 240px;
  height: 32px;
  position: absolute;
  right: 0;
  top: 46px;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd #search {
    position: static;
    left: auto;
    top: auto;
    width: 100%;
    padding: 15px 10px 12px;
    height: auto;
    background-color: #004ea2;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
header#contentHeader #gnavArea #mainNav dd #search .cse .gsc-control-cse, header#contentHeader #gnavArea #mainNav dd #search .gsc-control-cse {
  border: 0 !important;
  padding: 0 !important;
  background-color: transparent;
}
header#contentHeader #gnavArea #mainNav dd #search .gsc-search-box-tools .gsc-search-box .gsc-input {
  padding-right: 0;
}
header#contentHeader #gnavArea #mainNav dd #search .cse input.gsc-search-button, header#contentHeader #gnavArea #mainNav dd #search input.gsc-search-button {
  border: 0 !important;
}
header#contentHeader #gnavArea #mainNav dd #search .gsc-input-box {
  border: 0 !important;
  background: transparent;
  height: 34px;
}
header#contentHeader #gnavArea #mainNav dd #search .gsc-input-box-focus {
  border: 0 !important;
  background: transparent;
}
header#contentHeader #gnavArea #mainNav dd #search .gsib_a {
  padding: 0 !important;
}
header#contentHeader #gnavArea #mainNav dd #search .gsib_a input.gsc-input {
  width: 208px !important;
  height: 33px !important;
  margin-top: -1px !important;
  padding-left: 5px !important;
  padding-right: 5px !important;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background: #e9e9e9 !important;
  -moz-border-radius: 3px 0 0 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px 0 0 3px;
}
header#contentHeader #gnavArea #mainNav dd #search .gsib_a input.gsc-input:focus {
  -moz-box-shadow: none;
  -webkit-box-shadow: none;
  box-shadow: none;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd #search .gsib_a input.gsc-input {
    background: #fff !important;
    -moz-border-radius: 5px 0 0 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px 0 0 5px;
    width: 100% !important;
  }
}
header#contentHeader #gnavArea #mainNav dd #search .gsc-input, header#contentHeader #gnavArea #mainNav dd #search .gsc-input-box, header#contentHeader #gnavArea #mainNav dd #search .gsc-input-box-hover, header#contentHeader #gnavArea #mainNav dd #search .gsc-input-box-focus {
  box-shadow: none !important;
}
header#contentHeader #gnavArea #mainNav dd #search .gsst_a {
  display: none !important;
}
header#contentHeader #gnavArea #mainNav dd #search .gsst_b {
  padding: 0;
}
header#contentHeader #gnavArea #mainNav dd #search .cse .gsc-search-button input.gsc-search-button-v2, header#contentHeader #gnavArea #mainNav dd #search input.gsc-search-button-v2 {
  padding: 10px;
  background-color: #004ea2 !important;
  -moz-border-radius: 0px 3px 3px 0;
  -webkit-border-radius: 0px;
  border-radius: 0px 3px 3px 0;
}
header#contentHeader #gnavArea #mainNav dd #search input.gsc-search-button {
  margin-left: 0;
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd #search input.gsc-search-button {
    margin-left: 0 !important;
    border: 1px solid #FFF !important;
  }
}
@media only screen and (max-width: 768px) {
  header#contentHeader #gnavArea #mainNav dd #search .cse .gsc-search-button input.gsc-search-button-v2, header#contentHeader #gnavArea #mainNav dd #search input.gsc-search-button-v2 {
    width: 11px;
    height: 11px;
  }
}

#menu {
  display: none;
}
@media only screen and (max-width: 768px) {
  #menu {
    display: block;
  }
  #menu .icon-animation {
    cursor: pointer;
    opacity: 1;
    z-index: 100;
    position: fixed;
    right: 10px;
    top: 10px;
    display: block;
    width: 40px;
    height: 40px;
    background: rgba(255, 255, 255, 0.9);
  }
  #menu .icon-animation span {
    width: 30px;
    height: 3px;
    background: #004ea2;
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-left: -14px;
    -moz-transition: all 0.3s;
    -o-transition: all 0.3s;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  #menu .icon-animation span.top {
    -moz-transform: translateY(-10px);
    -ms-transform: translateY(-10px);
    -webkit-transform: translateY(-10px);
    transform: translateY(-10px);
  }
  #menu .icon-animation span.bottom {
    -moz-transform: translateY(9px);
    -ms-transform: translateY(9px);
    -webkit-transform: translateY(9px);
    transform: translateY(9px);
  }
  #menu .icon-animation.is-open span.middle {
    background: rgba(255, 255, 255, 0);
  }
  #menu .icon-animation.is-open span.top {
    -moz-transform: rotate(-45deg) translateY(0px);
    -ms-transform: rotate(-45deg) translateY(0px);
    -webkit-transform: rotate(-45deg) translateY(0px);
    transform: rotate(-45deg) translateY(0px);
  }
  #menu .icon-animation.is-open span.bottom {
    -moz-transform: rotate(45deg) translateY(0px);
    -ms-transform: rotate(45deg) translateY(0px);
    -webkit-transform: rotate(45deg) translateY(0px);
    transform: rotate(45deg) translateY(0px);
  }
}

#head_ttl {
  background: url("../img/common/bg_ttl.gif") left top repeat;
  color: #fff;
  padding-top: 20px;
  padding-bottom: 20px;
  margin-bottom: 10px;
}
@media only screen and (max-width: 768px) {
  #head_ttl {
    margin-bottom: 0;
  }
}
#head_ttl p {
  max-width: 1200px;
  min-width: 1000px;
  margin: 0 auto;
  text-align: center;
  font-size: 207.14286%;
}
@media only screen and (max-width: 768px) {
  #head_ttl p {
    max-width: 100%;
    min-width: 100%;
  }
}
#head_ttl p span {
  position: relative;
}
#head_ttl p span:before {
  content: "";
  position: absolute;
}
#head_ttl p span.sinryo {
  left: 23px;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.sinryo {
    left: 17px;
  }
}
#head_ttl p span.sinryo:before {
  top: -10px;
  left: -51px;
  display: block;
  background: url("../../img/sinryo/ico_sinryo.png") left top no-repeat;
  width: 46px;
  height: 51px;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.sinryo:before {
    background: url("../../img/sinryo/ico_sinryo_sp.png") left top no-repeat;
    background-size: 100% auto;
    width: 30px;
    height: 33px;
    top: -3px;
    left: -35px;
  }
}
#head_ttl p span.n_sougou {
  left: 23px;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.n_sougou {
    left: 20px;
  }
}
#head_ttl p span.n_sougou:before {
  top: -7px;
  left: -51px;
  display: block;
  background: url("../../img/sinryoka/ico_sinryoka.png") left top no-repeat;
  width: 46px;
  height: 45px;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.n_sougou:before {
    background: url("../../img/sinryoka/ico_sinryoka_sp.png") left top no-repeat;
    background-size: 100% auto;
    width: 35px;
    height: 35px;
    top: 0px;
    left: -40px;
  }
}
#head_ttl p span.center {
  left: 23px;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.center {
    left: 20px;
  }
}
#head_ttl p span.center:before {
  top: -7px;
  left: -51px;
  display: block;
  background: url("../../img/center/ico_center.png") left top no-repeat;
  width: 46px;
  height: 46px;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.center:before {
    background: url("../../img/center/ico_center_sp.png") left top no-repeat;
    background-size: 100% auto;
    width: 35px;
    height: 35px;
    top: 0px;
    left: -40px;
  }
}
#head_ttl p span.learn {
  left: 23px;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.learn {
    left: 20px;
  }
}
#head_ttl p span.learn:before {
  top: 0px;
  left: -51px;
  display: block;
  background: url("../../img/learn/ico_learn.png") left top no-repeat;
  width: 46px;
  height: 46px;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.learn:before {
    background: url("../../img/learn/ico_learn_sp.png") left top no-repeat;
    background-size: 100% auto;
    width: 35px;
    height: 27px;
    top: 2px;
    left: -40px;
  }
}
#head_ttl p span.inquiry {
  left: 30px;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.inquiry {
    font-size: 85.71429%;
  }
}
#head_ttl p span.inquiry:before {
  top: -7px;
  left: -66px;
  display: block;
  background: url("../../img/ico_inquiry.png") left top no-repeat;
  width: 61px;
  height: 45px;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.inquiry:before {
    background: url("../../img/ico_inquiry_sp.png") left top no-repeat;
    background-size: 100% auto;
    width: 36px;
    height: 27px;
    top: 0px;
    left: -40px;
  }
}
#head_ttl p span.link {
  left: 22px;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.link {
    left: 15px;
  }
}
#head_ttl p span.link:before {
  top: -7px;
  left: -50px;
  display: block;
  background: url("../../img/ico_link.png") left top no-repeat;
  width: 44px;
  height: 44px;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.link:before {
    background: url("../../img/ico_link_sp.png") left top no-repeat;
    background-size: 100% auto;
    width: 27px;
    height: 27px;
    top: 0px;
    left: -30px;
  }
}
#head_ttl p span.sitemap {
  left: 20px;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.sitemap {
    left: 15px;
  }
}
#head_ttl p span.sitemap:before {
  top: -7px;
  left: -47px;
  display: block;
  background: url("../../img/ico_sitemap.png") left top no-repeat;
  width: 42px;
  height: 40px;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.sitemap:before {
    background: url("../../img/ico_sitemap_sp.png") left top no-repeat;
    background-size: 100% auto;
    width: 28px;
    height: 26px;
    top: 0px;
    left: -30px;
  }
}
#head_ttl p span.news {
  left: 23px;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.news {
    left: 15px;
    font-size: 71.42857%;
  }
}
#head_ttl p span.news:before {
  top: -2px;
  left: -51px;
  display: block;
  background: url("../../img/news/ico_news.png") left top no-repeat;
  width: 46px;
  height: 38px;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.news:before {
    background: url("../../img/news/ico_news_sp.png") left top no-repeat;
    background-size: 100% auto;
    width: 30px;
    height: 26px;
    top: 0px;
    left: -35px;
  }
}
#head_ttl p span.about {
  left: 23px;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.about {
    left: 15px;
  }
}
#head_ttl p span.about:before {
  top: -4px;
  left: -43px;
  display: block;
  background: url("../../img/ico_about.png") left top no-repeat;
  width: 38px;
  height: 38px;
  background-size: 100% auto;
}
@media only screen and (max-width: 768px) {
  #head_ttl p span.about:before {
    background: url("../../img/ico_about_sp.png") left top no-repeat;
    background-size: 100% auto;
    width: 30px;
    height: 27px;
    top: 3px;
    left: -35px;
  }
}

#bread {
  margin-bottom: 17px;
}
@media only screen and (max-width: 768px) {
  #bread {
    background-color: #f0f0f0;
  }
}
#bread ol {
  min-width: 1000px;
  max-width: 1200px;
  margin: 0 auto;
  font-size: 85.71429%;
}
@media only screen and (max-width: 768px) {
  #bread ol {
    width: 100%;
    min-width: 100%;
    max-width: 100%;
    padding: 5px 15px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
#bread ol li {
  float: left;
  margin-right: 30px;
}
#bread ol li a {
  color: #004ea2;
  position: relative;
  text-decoration: underline;
}
#bread ol li a:after {
  content: "／";
  position: absolute;
  color: #004ea2;
  top: -3px;
  right: -20px;
  color: #004ea2;
}

#mainImage {
  width: 100%;
  margin-bottom: 20px;
}
@media only screen and (max-width: 768px) {
  #mainImage {
    width: 100%;
    min-width: 100%;
  }
}
#mainImage figure img {
  width: 100%;
}

#mainColumn {
  max-width: 1200px;
  margin: 0 auto;
}
@media only screen and (max-width: 768px) {
  #mainColumn {
    max-width: 100%;
  }
}
#mainColumn > .inner {
  width: 100%;
  padding: 0 5px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 768px) {
  #mainColumn > .inner {
    padding: 0;
  }
}
#mainColumn p {
  margin-bottom: 10px;
}
#mainColumn p.lead {
  font-size: 157.14286%;
  color: #004ea2;
  font-weight: bold;
}

#mainCnt {
  width: 75%;
  float: left;
  padding-bottom: 100px;
}
@media only screen and (max-width: 768px) {
  #mainCnt {
    float: none;
    width: 100%;
    padding: 0 10px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
#mainCnt a {
  text-decoration: underline;
}
#mainCnt a:hover {
  text-decoration: none;
}
#mainCnt h1 {
  font-size: 192.85714%;
  color: #004ea2;
  font-weight: bold;
  background: url("../img/common/bg_h1.gif") left bottom no-repeat;
  margin-bottom: 15px;
}
#mainCnt h2 {
  border: 1px solid #004ea2;
  color: #004ea2;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  font-size: 142.85714%;
  font-weight: bold;
  position: relative;
  padding: 5px 27px;
  margin-bottom: 5px;
}
#mainCnt h2:before {
  content: "";
  width: 15px;
  height: 3px;
  position: absolute;
  top: 50%;
  margin-top: -2px;
  left: 0;
  display: block;
  background-color: #004ea2;
}
#mainCnt h3 {
  color: #004ea2;
  font-weight: bold;
  font-size: 142.85714%;
  background: url("../img/common/bg_h3.gif") left bottom no-repeat;
  margin-bottom: 15px;
}
#mainCnt h3.ttl {
  background: none;
  border: 1px solid #004ea2;
  background-color: #eaf2fd;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 5px 10px;
}
#mainCnt h4 {
  font-size: 142.85714%;
  border-left: 3px solid #004ea2;
  padding-left: 10px;
  font-weight: bold;
  margin-bottom: 15px;
}
#mainCnt h5 {
  font-size: 128.57143%;
  font-weight: bold;
  margin-bottom: 15px;
  border-bottom: 1px solid #333;
}
#mainCnt h6 {
  font-size: 121.42857%;
  color: #004ea2;
  font-weight: bold;
  margin-bottom: 15px;
}
#mainCnt > figure {
  text-align: center;
  margin-bottom: 1em;
}
#mainCnt ul, #mainCnt ol {
  margin-bottom: 1em;
}
#mainCnt ul li, #mainCnt ol li {
  padding-left: 1.3em;
  position: relative;
}
#mainCnt ul li {
  position: relative;
}
#mainCnt ul li:before {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  position: absolute;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background-color: #004ea2;
  top: 0.5em;
  left: 7px;
}
#mainCnt ul li ul li:before {
  width: 5px;
  height: 5px;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
}
#mainCnt ul.linkStyle li {
  padding-left: 2em;
}
#mainCnt ul.linkStyle li:before {
  width: 15px;
  height: 15px;
  display: block;
  content: "";
  background: url("../img/common/cirArrow_b.png") left top no-repeat;
  top: 0.3em;
}
#mainCnt ul.linkStyle li a {
  color: #333;
  position: relative;
}
#mainCnt ol {
  counter-reset: section;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 1em;
}
#mainCnt ol li {
  padding-left: .6em;
  text-indent: -1em;
}
#mainCnt ol li:before {
  counter-increment: section;
  content: counters(section,"-") ". ";
  font-family: 'Oswald', sans-serif;
  color: #004ea2;
  font-size: 114.28571%;
}
#mainCnt ol li ol li {
  padding-left: 1.3em;
}
#mainCnt ol li ol li:before {
  font-size: 92.85714%;
}
#mainCnt ol li ul li {
  position: relative;
  text-indent: 0;
  padding-left: 1.3em;
}
#mainCnt ol li ul li:before {
  counter-increment: none;
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  position: absolute;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background-color: #004ea2;
  top: 0.5em;
  left: 7px;
}
#mainCnt ol.noStyle li {
  padding-left: 0;
}
#mainCnt ol.noStyle li:before {
  display: none;
}
#mainCnt table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 1px;
  margin-bottom: 20px;
  padding-bottom: 5px;
}
#mainCnt table caption {
  font-size: 114.28571%;
  font-weight: bold;
  border-left: 3px solid #004ea2;
  padding-left: 10px;
  margin-bottom: 8px;
}
#mainCnt table caption.btm {
  caption-side: bottom;
  font-size: 85.71429%;
  font-weight: normal;
  border-left: none;
  margin-bottom: 0;
}
#mainCnt table th, #mainCnt table td {
  text-align: center;
  padding: 10px 15px;
}
#mainCnt table thead tr th {
  background-color: #2569b1;
  color: #fff;
}
#mainCnt table tbody tr th {
  background-color: #f0f0f0;
  font-size: 107.14286%;
  font-weight: bold;
  color: #004ea2;
  border: 1px solid #999;
}
#mainCnt table tbody tr th.blue {
  background-color: #eaf2fd;
}
#mainCnt table tbody tr td {
  border: 1px solid #999;
  text-align: left;
}
#mainCnt table tfoot th, #mainCnt table tfoot td {
  background-color: #e9e9e9;
  border: 1px solid #999;
  font-size: 107.14286%;
  font-weight: bold;
}
#mainCnt nav.indexCntNav {
  width: 100%;
}
#mainCnt nav.indexCntNav ul li {
  float: left;
  width: 49%;
  margin-right: 1%;
  margin-bottom: 10px;
  background-color: #eaf2fd;
  padding: 15px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#mainCnt nav.indexCntNav ul li:nth-child(2n) {
  float: right;
  margin-right: 0;
}
#mainCnt nav.indexCntNav ul li:before {
  display: none;
}
@media only screen and (max-width: 768px) {
  #mainCnt nav.indexCntNav ul li {
    float: none !important;
    width: 100%;
    padding: 0;
    margin-right: 0;
  }
}
#mainCnt nav.indexCntNav ul li a {
  color: #333;
  text-decoration: none;
}
#mainCnt nav.indexCntNav ul li a:hover {
  text-decoration: none;
}
#mainCnt nav.indexCntNav ul li a dl:hover dd {
  text-decoration: underline;
}
#mainCnt nav.indexCntNav ul li a dl dt {
  color: #004ea2;
  font-size: 121.42857%;
  font-weight: bold;
  border-bottom: 1px solid #004ea2;
  position: relative;
  padding-left: 20px;
  margin-bottom: 10px;
}
#mainCnt nav.indexCntNav ul li a dl dt:before {
  display: block;
  height: 5px;
  width: 14px;
  background: url('../img/common/parts-s888c4d06df.png') 0 0;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  content: "";
  position: absolute;
  top: 0.5em;
  left: 0;
}
@media only screen and (max-width: 768px) {
  #mainCnt nav.indexCntNav ul li a dl dt {
    padding: 5px 5px 5px 30px;
    margin-bottom: 5px;
  }
  #mainCnt nav.indexCntNav ul li a dl dt:before {
    top: 0.9em;
    left: 0.7em;
  }
}
#mainCnt nav.indexCntNav ul li a dl dd {
  line-height: 1.3;
}
@media only screen and (max-width: 768px) {
  #mainCnt nav.indexCntNav ul li a dl dd {
    padding: 0px 5px 5px;
  }
}
#mainCnt nav.indexLinkList {
  width: 100%;
}
#mainCnt nav.indexLinkList ul li {
  float: left;
  width: 32.5%;
  padding-left: 0;
  margin-right: 1%;
  margin-bottom: 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#mainCnt nav.indexLinkList ul li:nth-child(3n) {
  margin-right: 0%;
}
#mainCnt nav.indexLinkList ul li:before {
  display: none;
}
@media only screen and (max-width: 768px) {
  #mainCnt nav.indexLinkList ul li {
    width: 100%;
    float: none;
  }
}
#mainCnt nav.indexLinkList ul li a {
  background-color: #eaf2fd;
  font-weight: bold;
  position: relative;
  padding: 15px 15px 15px 40px;
  text-decoration: none;
  display: block;
  color: #333;
}
#mainCnt nav.indexLinkList ul li a:hover {
  text-decoration: underline;
}
#mainCnt nav.indexLinkList ul li a:before {
  display: block;
  height: 5px;
  width: 14px;
  background: url('../img/common/parts-s888c4d06df.png') 0 0;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  content: "";
  position: absolute;
  top: 1.6em;
  left: 1em;
}
#mainCnt nav.indexLinkList ul li a.no_link {
  cursor: default;
  font-weight: normal;
  background-color: #f0f0f0;
  padding: 15px;
}
#mainCnt nav.indexLinkList ul li a.no_link:before {
  display: none;
}
#mainCnt nav.indexLinkList ul li a.no_link:hover {
  text-decoration: none;
}
#mainCnt nav.ancLink {
  background-color: #f0f0f0;
  padding: 20px 30px;
  margin-bottom: 20px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
@media only screen and (max-width: 768px) {
  #mainCnt nav.ancLink {
    padding: 0;
  }
}
#mainCnt nav.ancLink ul {
  margin-bottom: 0;
}
#mainCnt nav.ancLink ul li {
  float: left;
  width: 45%;
  padding-left: 2em;
  margin-bottom: 5px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
#mainCnt nav.ancLink ul li:nth-child(2n) {
  float: right;
}
@media only screen and (max-width: 768px) {
  #mainCnt nav.ancLink ul li {
    float: none !important;
    width: 100%;
    border-bottom: 1px solid #fff;
    padding-top: 7px;
    padding-bottom: 7px;
  }
}
#mainCnt nav.ancLink ul li:before {
  background: url(../img/common/cirArrow_b2.png) left top no-repeat;
  width: 15px;
  height: 15px;
  content: "";
  display: block;
  position: absolute;
  top: 0.3em;
}
@media only screen and (max-width: 768px) {
  #mainCnt nav.ancLink ul li:before {
    display: block;
    width: 16px;
    height: 16px;
    background: url('../img/common/commonSprite-s0804c3c51e.png') 0 -17px no-repeat;
    -moz-background-size: 305px, auto;
    -o-background-size: 305px, auto;
    -webkit-background-size: 305px, auto;
    background-size: 305px, auto;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    top: 0.7em;
  }
}
#mainCnt nav.ancLink ul li a {
  color: #333;
  display: block;
}
#mainCnt dl.ttl dt {
  font-size: 142.85714%;
  font-weight: bold;
  border-left: 3px solid #004ea2;
  padding-left: 10px;
}
#mainCnt dl.ttl dd.hide {
  overflow: hidden;
}
#mainCnt .floatL {
  margin-bottom: 15px;
}
#mainCnt .floatL figure {
  float: left;
  margin-right: 25px;
  margin-bottom: 25px;
}
@media only screen and (max-width: 768px) {
  #mainCnt .floatL figure {
    float: none;
    text-align: center;
    margin-bottom: 10px;
    margin-right: 0;
  }
}
#mainCnt .floatR {
  margin-bottom: 15px;
}
#mainCnt .floatR figure {
  float: right;
  margin-left: 25px;
  margin-bottom: 25px;
}
@media only screen and (max-width: 768px) {
  #mainCnt .floatR figure {
    float: none;
    text-align: center;
    margin-bottom: 10px;
    margin-left: 0;
  }
}

aside#sub {
  width: 22%;
  float: right;
  padding-bottom: 100px;
}
@media only screen and (max-width: 768px) {
  aside#sub {
    width: 100%;
    float: none;
    background-color: #e9e9e9;
    padding: 20px 15px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}
aside#sub nav#subNav h3 {
  background-color: #004ea2;
  text-align: center;
  color: #fff;
  font-size: 114.28571%;
  font-weight: bold;
  padding: 20px 10px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
aside#sub nav#subNav h4 {
  background-color: #eaf2fd;
  padding: 10px 10px 10px 30px;
  color: #004ea2;
  font-size: 114.28571%;
  border-bottom: 1px solid #fff;
  position: relative;
}
aside#sub nav#subNav h4:before {
  background: url(../img/common/cirArrow_b2.png) left top no-repeat;
  width: 15px;
  height: 15px;
  content: "";
  display: block;
  position: absolute;
  top: 15px;
  left: 10px;
}
@media only screen and (max-width: 768px) {
  aside#sub nav#subNav h4:before {
    display: block;
    width: 16px;
    height: 16px;
    background: url('../img/common/commonSprite-s0804c3c51e.png') 0 -17px no-repeat;
    -moz-background-size: 305px, auto;
    -o-background-size: 305px, auto;
    -webkit-background-size: 305px, auto;
    background-size: 305px, auto;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    top: 0.8em;
  }
}
aside#sub nav#subNav h4:hover {
  cursor: pointer;
}
aside#sub nav#subNav ul {
  background-color: #f0f0f0;
}
@media only screen and (max-width: 768px) {
  aside#sub nav#subNav ul {
    background-color: #fff;
  }
}
aside#sub nav#subNav ul li {
  border-bottom: 1px solid #fff;
}
@media only screen and (max-width: 768px) {
  aside#sub nav#subNav ul li {
    border-bottom: 1px solid #e9e9e9;
  }
}
aside#sub nav#subNav ul li > a {
  color: #333;
  position: relative;
  padding: 10px 10px 10px 35px;
  display: block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
aside#sub nav#subNav ul li > a:before {
  display: block;
  height: 5px;
  width: 14px;
  background: url('../img/common/parts-s888c4d06df.png') 0 0;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  position: absolute;
  top: 1.2em;
  left: 1em;
  content: "";
}
@media only screen and (max-width: 768px) {
  aside#sub nav#subNav ul li > a:before {
    display: block;
    width: 16px;
    height: 5px;
    background: url('../img/common/commonSprite-s0804c3c51e.png') 0 0 no-repeat;
    -moz-background-size: 305px, auto;
    -o-background-size: 305px, auto;
    -webkit-background-size: 305px, auto;
    background-size: 305px, auto;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
  }
}
aside#sub nav#subNav ul li > a.active {
  background-color: #2668b0;
  color: #fff;
}
aside#sub nav#subNav ul li > a.active:before {
  display: block;
  height: 5px;
  width: 14px;
  background: url('../img/common/parts-s888c4d06df.png') 0 -26px;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
}
aside#sub nav#subNav ul li > a.no_link {
  cursor: default;
  color: #bfbfbf;
  padding: 10px;
}
aside#sub nav#subNav ul li > a.no_link:before {
  display: none;
}
aside#sub nav#subNav ul li > a.no_link:hover {
  text-decoration: none;
}
aside#sub nav#subNav ul li dl dt {
  padding: 5px 10px;
  color: #004ea2;
}
aside#sub nav#subNav ul li ul {
  border-top: 1px solid #fff;
}
aside#sub nav#subNav ul li ul li a {
  font-size: 85.71429%;
  padding-left: 35px;
}
aside#sub nav#subNav ul li ul li a:before {
  background: none !important;
  width: 8px !important;
  height: 1px !important;
  background-color: #004ea2 !important;
  top: 19px;
  left: 19px;
}
aside#sub nav#subNav ul li ul li a.active {
  color: #fff;
}
aside#sub nav#subNav ul li ul li a.active:before {
  background-color: #fff !important;
}
aside#sub nav#subNav ul li ul li ul li a {
  padding-left: 45px;
}
aside#sub nav#subNav ul li ul li ul li a:before {
  left: 30px;
}

nav#carousel {
  background-color: #004ea2;
  padding-top: 20px;
  padding-bottom: 20px;
  margin-bottom: 24px;
  width: 100%;
  height: 53px;
  overflow: hidden;
}
@media only screen and (max-width: 768px) {
  nav#carousel {
    margin-bottom: 12px;
    padding-bottom: 15px;
    padding-top: 15px;
  }
}
nav#carousel ul {
  width: 100%;
  max-width: 960px;
  margin: 0 auto;
}
@media only screen and (max-width: 768px) {
  nav#carousel ul {
    width: 90%;
  }
}
nav#carousel ul li {
  text-align: center;
  width: 19.9%;
  margin-right: 0.1%;
}
nav#carousel ul li a {
  width: 100%;
  background-color: #fff;
  padding-top: 15px;
  padding-bottom: 15px;
  display: inline-block;
}
@media only screen and (max-width: 768px) {
  nav#carousel ul li a {
    width: 90%;
  }
}
nav#carousel .slick-prev:before,
nav#carousel .slick-next:before {
  content: '';
  display: block;
  height: 17px;
  width: 10px;
}
@media only screen and (max-width: 768px) {
  nav#carousel .slick-next {
    right: -15px;
  }
}
@media only screen and (max-width: 768px) {
  nav#carousel .slick-prev {
    left: -5px;
  }
}
nav#carousel .slick-prev:before {
  background: url("../../img/index/cal_arrL.png") left top no-repeat;
}
nav#carousel .slick-next:before {
  background: url("../../img/index/cal_arrR.png") left top no-repeat;
}

/* footer
------------------------------- */
footer {
  width: 100%;
  max-width: 1200px;
  padding-bottom: 40px;
  margin: 0 auto;
  /*
  @media only screen and (min-width:641px) and (max-width:1040px){
  	max-width: auto;
  	min-width: 960px;
  }
  */
}
@media only screen and (max-width: 768px) {
  footer {
    width: 100%;
    min-width: 100%;
    padding-bottom: 70px;
  }
}
footer .inner {
  max-width: 1200px;
  margin: 0 auto;
  /*
  @media only screen and (min-width:641px) and (max-width:1040px){
  	max-width: auto;
  	min-width: 960px;
  }
  */
}
@media only screen and (max-width: 768px) {
  footer .inner {
    width: 100%;
    max-width: auto;
    min-width: auto;
    margin: 0 auto;
    text-align: center;
  }
}
footer .inner #footLogo {
  float: left;
  background: url("../img/common/bg_footerLogo.png") left top no-repeat;
  padding-left: 95px;
}
@media only screen and (max-width: 768px) {
  footer .inner #footLogo {
    float: none;
    background: url("../img/common/sp_bg_footerLogo.png") center top no-repeat;
    background-size: 81px auto;
    padding-left: 0;
    padding-top: 65px;
    width: 95%;
    margin: 0 auto 10px;
  }
}
footer .inner #footLogo p {
  font-size: 92.85714%;
}
footer .inner #footLogo p#name {
  display: block;
  height: 19px;
  width: 303px;
  background: url('../img/common/parts-s888c4d06df.png') 0 -39px;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  margin-bottom: 5px;
}
@media only screen and (max-width: 768px) {
  footer .inner #footLogo p#name {
    display: block;
    width: 305px;
    height: 20px;
    background: url('../img/common/commonSprite-s0804c3c51e.png') 0 -265px no-repeat;
    -moz-background-size: 305px, auto;
    -o-background-size: 305px, auto;
    -webkit-background-size: 305px, auto;
    background-size: 305px, auto;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
    margin: 0 auto;
  }
}
footer .inner #footLogo p span.tel {
  font-size: 100%;
  font-weight: bold;
}
footer .inner #footLogo p span.tel em {
  font-family: 'Oswald', sans-serif;
}
footer .inner #footLogo ul {
  font-size: 85.71429%;
}
@media only screen and (max-width: 768px) {
  footer .inner #footLogo ul {
    text-align: center;
  }
}
footer .inner #footLogo ul li {
  float: left;
}
@media only screen and (max-width: 768px) {
  footer .inner #footLogo ul li {
    float: none;
    display: inline-block;
  }
}
footer .inner #footLogo ul li a {
  position: relative;
  color: #333;
  padding-left: 20px;
  margin-right: 10px;
}
footer .inner #footLogo ul li a:before {
  display: block;
  height: 5px;
  width: 14px;
  background: url('../img/common/parts-s888c4d06df.png') 0 0;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  content: '';
  position: absolute;
  top: 3px;
  left: 0;
}
footer .inner #assistNav {
  float: right;
}
@media only screen and (max-width: 768px) {
  footer .inner #assistNav {
    float: none;
    width: 100%;
    background-color: #e5e5e5;
  }
}
footer .inner #assistNav ul {
  text-align: center;
}
@media only screen and (max-width: 768px) {
  footer .inner #assistNav ul {
    width: 97%;
    margin: 0 auto 10px;
    padding-top: 10px;
  }
}
footer .inner #assistNav ul li {
  float: left;
  margin-right: 15px;
}
footer .inner #assistNav ul li:last-child {
  margin-right: 0;
}
footer .inner #assistNav ul li:last-child a {
  padding-right: 0;
}
footer .inner #assistNav ul li:last-child a:after {
  display: none;
}
@media only screen and (max-width: 768px) {
  footer .inner #assistNav ul li {
    margin-right: 0;
    display: block;
    float: left;
    width: 49.5%;
    text-align: center;
    margin-bottom: 2px;
    background: #fff;
    padding-top: 7px;
    padding-bottom: 7px;
  }
  footer .inner #assistNav ul li:nth-child(2n) {
    float: right;
  }
}
footer .inner #assistNav ul li a {
  color: #333;
  font-size: 85.71429%;
  position: relative;
  padding-right: 15px;
}
footer .inner #assistNav ul li a:after {
  content: "/";
  position: absolute;
  top: -1px;
  right: 0;
}
@media only screen and (max-width: 768px) {
  footer .inner #assistNav ul li a {
    padding-right: 0;
  }
  footer .inner #assistNav ul li a:after {
    display: none;
  }
}
footer .inner #assistNav p#copy {
  text-align: right;
  font-size: 85.71429%;
}
@media only screen and (max-width: 768px) {
  footer .inner #assistNav p#copy {
    text-align: center;
    width: 100%;
    padding-top: 10px;
    background-color: #fff;
  }
}

#pageTop {
  position: fixed;
  width: 99%;
  height: 0;
  z-index: 100;
  left: 0;
  bottom: 80px;
}
@media only screen and (max-width: 768px) {
  #pageTop {
    bottom: 60px;
  }
}
#pageTop p {
  margin: 0 auto;
  position: relative;
}
@media only screen and (max-width: 768px) {
  #pageTop p {
    width: 95%;
    min-width: 95%;
    margin: 0 auto;
  }
}
#pageTop p a {
  outline: 0;
  position: absolute;
  display: block;
  height: 50px;
  width: 50px;
  background: url('../img/common/parts-s888c4d06df.png') 0 -274px;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  display: block;
  right: 0;
}
@media only screen and (max-width: 768px) {
  #pageTop p a {
    display: block;
    width: 40px;
    height: 40px;
    background: url('../img/common/commonSprite-s0804c3c51e.png') 0 -289px no-repeat;
    -moz-background-size: 305px, auto;
    -o-background-size: 305px, auto;
    -webkit-background-size: 305px, auto;
    background-size: 305px, auto;
    text-indent: 100%;
    overflow: hidden;
    white-space: nowrap;
  }
}

@media only screen and (max-width: 768px) {
  #sb-site,
  .sb-site-container,
  .sb-slidebar {
    margin: 0;
    padding: 0;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
}

@media only screen and (max-width: 768px) {
  html.sb-scroll-lock.sb-active:not(.sb-static) {
    overflow: hidden;
  }
}

/* ---------- 002 - Site */
@media only screen and (max-width: 768px) {
  #sb-site,
  .sb-site-container {
    width: 100%;
    min-height: 100vh;
    position: relative;
    z-index: 1;
    background-color: #ffffff;
  }
}

@media only screen and (max-width: 768px) {
  #sb-site:before,
  #sb-site:after,
  .sb-site-container:before,
  .sb-site-container:after {
    content: ' ';
    display: table;
  }
}

@media only screen and (max-width: 768px) {
  #sb-site:before,
  #sb-site:after,
  .sb-site-container:before,
  .sb-site-container:after {
    clear: both;
  }
}

/* --------------- 003 - Slidebars */
@media only screen and (max-width: 768px) {
  .sb-slidebar {
    height: 100%;
    overflow-y: auto;
    position: fixed;
    top: 0;
    z-index: 0;
    display: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    background-color: rgba(255, 255, 255, 0.8);
    padding-top: 70px !important;
  }
}

@media only screen and (max-width: 768px) {
  .sb-slidebar,
  .sb-slidebar * {
    -webkit-transform: translateZ(0px);
  }
}

@media only screen and (max-width: 768px) {
  .sb-left {
    left: 0;
  }
}

@media only screen and (max-width: 768px) {
  .sb-right {
    right: 0;
  }
}

@media only screen and (max-width: 768px) {
  html.sb-static .sb-slidebar,
  .sb-slidebar.sb-static {
    position: absolute;
  }
}

@media only screen and (max-width: 768px) {
  .sb-slidebar.sb-active {
    display: block;
  }
}

@media only screen and (max-width: 768px) {
  .sb-style-overlay {
    z-index: 9999;
  }
}

@media only screen and (max-width: 768px) {
  .sb-momentum-scrolling {
    -webkit-overflow-scrolling: touch;
  }
}

@media only screen and (max-width: 768px) {
  .sb-slidebar {
    width: 30%;
  }
}

@media only screen and (max-width: 768px) {
  .sb-width-thin {
    width: 15%;
  }
}

@media only screen and (max-width: 768px) {
  .sb-width-wide {
    width: 45%;
  }
}

@media (max-width: 480px) {
  /* Slidebar widths on extra small screens. */
  .sb-slidebar {
    width: 70%;
  }

  .sb-width-thin {
    width: 55%;
  }

  .sb-width-wide {
    width: 85%;
  }
}
@media (min-width: 481px) {
  /* Slidebar widths on small screens. */
  .sb-slidebar {
    width: 55%;
  }

  .sb-width-thin {
    width: 40%;
  }

  .sb-width-wide {
    width: 70%;
  }
}
@media (min-width: 768px) {
  /* Slidebar widths on medium screens. */
  .sb-slidebar {
    width: 40%;
  }

  .sb-width-thin {
    width: 25%;
  }

  .sb-width-wide {
    width: 55%;
  }
}
@media (min-width: 992px) {
  /* Slidebar widths on large screens. */
  .sb-slidebar {
    width: 30%;
  }

  .sb-width-thin {
    width: 15%;
  }

  .sb-width-wide {
    width: 45%;
  }
}
@media (min-width: 1200px) {
  /* Slidebar widths on extra large screens. */
  .sb-slidebar {
    width: 20%;
  }

  .sb-width-thin {
    width: 5%;
  }

  .sb-width-wide {
    width: 35%;
  }
}
/* --------------- 004 - Animation */
@media only screen and (max-width: 768px) {
  .sb-slide,
  #sb-site,
  .sb-site-container,
  .sb-slidebar,
  #topicPath,
  main,
  footer,
  #wrapper,
  #headerInner h1,
  #menu a {
    -webkit-transform: translate(0px);
    -moz-transform: translate(0px);
    -o-transform: translate(0px);
    transform: translate(0px);
    -webkit-transition: -webkit-transform 400ms ease;
    -moz-transition: -moz-transform 400ms ease;
    -o-transition: -o-transform 400ms ease;
    transition: transform 400ms ease;
    -webkit-transition-property: -webkit-transform, left, right;
    /* Add left/right for Android < 4.4. */
    -webkit-backface-visibility: hidden;
    /* Prevents flickering. This is non essential, and you may remove it if your having problems with fixed background images in Chrome. */
  }
}

/* -------------------- 005 - Helper Classes */
@media only screen and (max-width: 768px) {
  .sb-hide {
    display: none;
    /* Optionally applied to control classes when Slidebars is disabled over a certain width. */
  }
}
