body {
  font: 100%/1.8 'Meiryo', 'メイリオ', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro', sans-serif;
  color: #000000;
  -webkit-text-size-adjust: 100%;
  margin: 0px;
  padding: 0px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  background-color: #FFFFFF;
  width: 100%;
}
h1, h2, h3, h4, h5 {
  margin-top: 0px;
  margin-bottom: 0px;
  padding-top: 0px;
  padding-bottom: 0px;
}
p {
  padding-top: 0px;
  padding-right: 0px;
  padding-bottom: 0px;
  margin: 0px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 0px;
  -webkit-box-shadow: 0px 0px rgba(0, 0, 0, 0.08);
  box-shadow: 0px 0px rgba(0, 0, 0, 0.08);
  width: auto;
}
img, object, embed, video {
  max-width: 100%;
  height: auto;
  width: auto;
  top: auto;
  left: auto;
}
a:hover img {
  filter: alpha(opacity=60);
  opacity: 0.5;
  border-style: none;
  padding-right: 0px;
}
a:link {
  color: #000000;
  text-decoration: none;
}
a:visited {
  color: #000000;
  text-decoration: none;
}
a:hover {
  color: #A5A5A5;
  text-decoration: none;
}
a:active {
    text-decoration: none;
}
a:active, a:hover {
  outline: 0;
  text-decoration: none;
}
ul, ol {
  margin: 0px;
  padding: 0px;
}
li {
  width: auto;
}
blockquote {
  background-color: #DBD5CB;
  color: #000000;
  padding: 1em;
  margin: 1em 0px;
}

.inner-box, .naviinner-box {
  margin: 0px auto;
  max-width: 1360px;
  padding: 0px;
  width: 96%;
  position: relative;
}
section, article {
  clear: both;
  display: block;
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  width: 100%;
}
section.margin-box {
  margin-top: 100px;
}
.line-title {
  width: 100%;
  padding-top: 10px;
  padding-bottom: 10px;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  background-color: transparent;
  position: relative;
  z-index: 1;
  margin: 8px 0px 20px;
  font-weight: lighter;
  clear: both;
}
.line-title:after {
  content: '';
  border-bottom: 4px solid #E2E2E2;
  height: 1px;
  width: 100%;
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  z-index: -1
}
.line-title span {
  padding: 0 3%;
  background-color: #FFFFFF;
}
.line-title.en {
  display: block;
  margin-right: 40px;
  font-weight: lighter;
  font-size: 400%;
}
.line-title.en.item {
  font-size: 200%;
  margin-bottom: 0px;
}
.line-title.en2 {
  display: block;
  margin-right: 40px;
  font-weight: lighter;
  font-size: 300%;
  text-align: left;
}
.line-title.en2 span {
  padding: 0 3% 0 0%;
  background-color: #FFFFFF;
}
.flex {
  display: flex;
  justify-content: space-between;
  flex-flow: wrap;
  align-items: flex-start;
}
/* mov wrap */
.movie-wrap {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.movie-wrap iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}
/* header
------------------------------------------------------------------- */
header {
  position: relative;
  background-color: #FFFFFF;
}
/* hero
------------------------------------------------------------------- */
.home .hero {
  width: 100%;
  position: relative;
  background-image: url(../images/top_vis.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 0px;
  padding-right: 0px;
  padding-bottom: 0px;
  padding-left: 0px;
  margin-bottom: 100px;
}
.home .hero h1 {
  width: 100%;
  display: inline-block;
  position: absolute;
  top: 116px;
  left: 0px;
  height: 100%;
}
.page .hero {
  width: 100%;
  position: relative;
  padding-bottom: 0px;
  margin-bottom: 0px;
  height: 300px;
  overflow: hidden;
}
.page .hero .hero-bg {
  position: absolute;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}
.page .hero h1 {
    position: absolute;
    top: 92px;
    font-size: 300%;
    font-weight: lighter;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    color: #000000;
    background-image: -webkit-linear-gradient(0deg,rgba(255,255,255,0.00) 0%,rgba(255,255,255,0.85) 28.56%,rgba(255,255,255,0.85) 73.18%,rgba(249,249,249,0.00) 100%);
    background-image: -moz-linear-gradient(0deg,rgba(255,255,255,0.00) 0%,rgba(255,255,255,0.85) 28.56%,rgba(255,255,255,0.85) 73.18%,rgba(249,249,249,0.00) 100%);
    background-image: -o-linear-gradient(0deg,rgba(255,255,255,0.00) 0%,rgba(255,255,255,0.85) 28.56%,rgba(255,255,255,0.85) 73.18%,rgba(249,249,249,0.00) 100%);
    background-image: linear-gradient(90deg, rgba(255, 255, 255, 0.00) 0%, rgba(255, 255, 255, 0.85) 28.56%, rgba(255, 255, 255, 0.85) 73.18%, rgba(249, 249, 249, 0.00) 100%);
}
.page .hero .copy {
    position: absolute;
    top: 157px;
    font-size: 100%;
    font-weight: bold;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    color: #000000;
    margin-top: 20px;
    /* [disabled]border-top: thin solid #000000; */
    padding-top: 0em;
    background-image: -webkit-linear-gradient(0deg, rgba(255, 255, 255, 0.00) 0%, rgba(255, 255, 255, 0.80) 34.71%, rgba(255, 255, 255, 0.80) 65.74%, rgba(255, 255, 255, 0.00) 100%);
    background-image: -moz-linear-gradient(0deg, rgba(255, 255, 255, 0.00) 0%, rgba(255, 255, 255, 0.80) 34.71%, rgba(255, 255, 255, 0.80) 65.74%, rgba(255, 255, 255, 0.00) 100%);
    background-image: -o-linear-gradient(0deg, rgba(255, 255, 255, 0.00) 0%, rgba(255, 255, 255, 0.80) 34.71%, rgba(255, 255, 255, 0.80) 65.74%, rgba(255, 255, 255, 0.00) 100%);
    background-image: linear-gradient(90deg, rgba(255, 255, 255, 0.00) 0%, rgba(255, 255, 255, 0.80) 34.71%, rgba(255, 255, 255, 0.80) 65.74%, rgba(255, 255, 255, 0.00) 100%);
}
.page .hero-sml {
  width: 100%;
  background-repeat: no-repeat;
  background-position: center bottom;
  position: relative;
  padding-bottom: 0px;
  background-size: cover;
  margin-bottom: 0px;
  text-align: center;
}
.page .hero-sml.cat1 {
  background-color: #35A5EB;
}
.page .hero-sml.cat2 {
  background-color: #0EC74E
}
.page .hero-sml.cat3 {
  background-color: #E8BA28;
}
.page .hero-sml.cat4 {}
.page .hero-sml h1 {
  top: 60px;
  font-size: 200%;
  font-weight: bold;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  color: #000000;
  text-shadow: 0px 0px 10px rgba(255, 255, 255, 0.19);
  padding-top: 0.2em;
  padding-bottom: 0.2em;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.page .hero-sml h1 span {
  display: block;
  font-size: 60%;
}
.page .hero-sml .copy {
  font-family: EB Garamond, "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
  position: absolute;
  top: 120px;
  font-size: 100%;
  font-weight: bold;
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  color: rgba(255, 255, 255, 0.94);
  margin-top: 20px;
  border-top: thin solid #FCFCFC;
  padding-top: 0.5em;
  letter-spacing: 0.5em;
  text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.46);
}
.page .hero .copy.dwn {
  top: 170px;
}
/* main
------------------------------------------------------------------- */
#main {
    position: relative;
    min-height: 0px;
}
.cont-block-colbg {
  padding-top: 60px;
  padding-bottom: 60px;
  background-color: #EAF8FA;
}
.cont-block {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 30px;
  padding-bottom: 60px;
  margin-bottom: 0px;
  margin-top: 0px;
  background-color: #E8E5DE;
}
.b-list {
    font-size: 80%;
    background-color: #FFFFFF;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 1em;
    padding-bottom: 1em;
    padding-left: 1em;
    margin-top: 110px;
}
.b-list span {
  font-weight: bold;
}
.b-list a:link {
  text-decoration: underline;
}
.cont-block h2 {
  text-align: center;
  font-size: 150%;
  margin-bottom: 1em;
  color: #000000;
  margin-top: 0.5em;
  border-bottom: 10px solid #000000;
  padding-bottom: 0.5em;
}
.cont-block.cat1 h2 {
  border-bottom: 10px solid #35A5EB;
}
.cont-block.cat2 h2 {
  border-bottom: 10px solid #0EC74E;
}
.cont-block.cat3 h2 {
  border-bottom: 10px solid #E8BA28;
}
.cont-block.cat4 h2 {
  border-bottom: 10px solid #D52C66;
}
.cont-block.sitemap h2 {
  color: #000000;
  padding-top: 0.5em;
  padding-bottom: 0.3em;
  text-align: center;
  margin-bottom: 0px;
  margin-top: 30px;
  background-color: #E3DAC7;
  border-bottom-style: none;
}
.cont-block.sitemap h2 img {
  width: 30px;
  height: auto;
  position: relative;
  top: 6px;
}
.cont-block h3 {
  text-align: left;
  font-size: 120%;
  padding-top: 20px;
  padding-bottom: 20px;
  border-left-width: 4px;
}
.cont-block h3 span {
  background-color: #CDC8C2;
  width: auto;
  display: inline-block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 1em;
  padding-right: 1em;
  border-radius: 100px;
  color: #000000;
  font-size: 70%;
}
.cont-block h3.centertext {
  text-align: center;
}
.cont-block h4 {
  font-size: 120%;
  margin-bottom: 20px;
  text-align: left;
  font-weight: bold;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.cont-block p {
  margin-bottom: 0.5em;
  padding: 0px;
  margin-top: 0px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
.cont-block span.waku {
    background-color: #DBD5CB;
    color: #000000;
    padding: 1em;
    margin: 1em 0px;
    display: block;
}
.cont-block p.nomargin-btm {
  margin-bottom: 0em;
  padding: 0px;
}
.cont-block .list {
  margin: 0px 1.2em;
  padding-top: 0px;
  padding-bottom: 0px;
}
.cont-block .list.nomark {
  list-style: none;
}
.cont-block .list li {
  margin: 0.5em;
  padding: 0px;
}
/* page-navi ------------------------------------------------------ */
#page-navi {
  position: relative;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 60px;
}
#page-navi .btn-box a {
  width: 200px;
  padding-top: 1em;
  padding-bottom: 1em;
  background-color: #FFFFFF;
  position: relative;
  left: 50%;
  margin-left: -100px;
  text-align: center;
  -webkit-box-shadow: 0px 0px 6px rgba(172, 166, 152, 0.56);
  box-shadow: 0px 0px 6px rgba(172, 166, 152, 0.56);
  border-radius: 100px;
  display: block;
  transition: all 0.3s ease-in-out;
}
#page-navi .prevnext-box a {
  width: 50px;
  position: absolute;
  top: 70px;
  -webkit-box-shadow: 0px 0px 6px rgba(172, 166, 152, 0.56);
  box-shadow: 0px 0px 6px rgba(172, 166, 152, 0.56);
  height: 50px;
  text-align: center;
  background-color: #FFFFFF;
  border-radius: 100px;
  display: block;
  transition: all 0.3s ease-in-out;
}
#page-navi .prevnext-box a img {
  width: 24px;
  position: absolute;
  margin-left: -12px;
  left: 50%;
  top: 26%;
}
#page-navi .prevnext-box .prev {
  left: 20px;
}
#page-navi .prevnext-box .next {
  right: 20px;
}
#page-navi .rote180 {
  transform: rotate(180deg);
}
#page-navi a:link, #page-navi a:visited {
  background-color: #FFFFFF;
  color: #000000;
}
#page-navi a:hover {
  background-color: #E3E3E3;
}
/* footer
------------------------------------------------------------------- */
footer {
  width: 100%;
  background-color: #FFFFFF;
  clear: both;
  margin-bottom: 0px;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 0px;
  padding-bottom: 0px;
  position: relative;
  -webkit-box-shadow: 0px -2px 10px rgba(221, 221, 221, 0.47);
  box-shadow: 0px -2px 10px rgba(221, 221, 221, 0.47);
}
footer .inner-box {
  display: flex;
  flex-flow: wrap;
  justify-content: space-between;
}
footer .cominfo {
  display: inline-block;
  float: left;
  position: relative;
  width: 33%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 20px;
  padding-left: 20px;
  line-height: 1;
}
footer .cominfo h2 {
  margin-bottom: 10px;
  margin-left: auto;
  margin-right: auto;
  font-size: 95%;
}
footer .cominfo p {
  font-size: 80%;
}
ul.ftnavi {
  width: 67%;
  padding: 0px;
  margin: 0px;
  position: relative;
  right: 0px;
  display: flex;
  justify-content: space-between;
  flex-flow: nowrap;
  font-size: 80%;
}
ul.ftnavi li {
  list-style: none;
  display: inline-block;
  width: 24.8%;
}
ul.ftnavi li a {
  list-style: none;
  display: block;
  background-color: #F4F4F4;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding: 1.5em 1em;
  text-align: center;
}
.ftnavi li a span.sitemap-icon {
  background-image: url(../img/sitemap-icon.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 18px auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 30px;
}
.ftnavi li a span.contact-icon {
  background-image: url(../img/mail-icon.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: 18px auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 30px;
}
.ftnavi li a span.ext-icon {
  background-image: url(../img/ext-icon.png);
  background-repeat: no-repeat;
  background-position: left center;
  background-size:18px auto;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-left: 30px;
}
ul.ftnavi a:link {
  text-decoration: none;
  color: #000000;
}
ul.ftnavi a:visited {
  color: #000000;
  text-decoration: none;
}
ul.ftnavi a:hover {
  background-color: #DBDBDB;
  color: hsla(0, 0%, 0%, 1.00);
}
.copyright {
  width: 100%;
  text-align: center;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  padding-top: 30px;
  padding-bottom: 30px;
  font-size: 80%;
}
@media screen and (max-width: 1300px) {
  .page .hero {
    height: 250px;
  }
  .page .hero h1 {
    top: 70px;
  }
  .page .hero .copy {
    top: 135px;
  }
}
@media screen and (max-width: 1180px) {
  footer .cominfo {
    width: 36%;
  }
  ul.ftnavi {
    font-size: 60%;
    width: 64%;
  }
}
@media screen and (max-width: 979px) {
  /* hero
------------------------------------------------------------------- */
  .home .hero {
    width: 100%;
    position: relative;
    background-image: url(../images/top_vis.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
    margin-bottom: 80px;
  }
  .home .hero h1 {
    display: inline-block;
    position: absolute;
    top: 116px;
    left: 0px;
    max-width: 1000px;
    background-size: 79% auto;
  }
  .page .hero {
    width: 100%;
    height: 180px;
  }
  .page .hero h1 {
    position: absolute;
    top: 40px;
    font-size: 250%;
    font-weight: lighter;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }
  .page .hero .copy {
    position: absolute;
    font-size: 100%;
    font-weight: bold;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    margin-top: 20px;
    padding-top: 0.5em;
    top: 90px;
  }
  /* footer
------------------------------------------------------------------- */
  footer .cominfo {
    font-size: 70%;
    padding-left: 10px;
  }
  ul.ftnavi {
    padding: 0px;
    margin: 0px;
    position: relative;
    right: 0px;
    display: flex;
    justify-content: space-between;
    flex-flow: nowrap;
    font-size: 70%;
  }
  ul.ftnavi li {
    list-style: none;
    display: inline-block;
    width: 33.1%;
  }
  ul.ftnavi li a {
    list-style: none;
    display: block;
    background-color: #F4F4F4;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 1.5em 0.5em;
    text-align: center;
  }
.ftnavi li a span.sitemap-icon {
  background-size: 16px auto;
  padding-left: 20px;
}
  .ftnavi li a span.contact-icon {
    background-size: 16px auto;
    padding-left: 20px;
  }
  .ftnavi li a span.ext-icon {
    background-size: 16px auto;
    padding-left: 20px;
  }
  .copyright {
    width: 100%;
    text-align: center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 30px;
    padding-bottom: 30px;
    font-size: 80%;
  }
}
@media screen and (max-width: 780px) {
  /* footer
------------------------------------------------------------------- */
  footer {
    width: 100%;
    margin-top: 0px;
    clear: both;
    margin-bottom: 0px;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 20px;
    padding-bottom: 20px;
    text-align: center;
  }
  footer .inner-box {
    width: 100%;
  }
  footer:after {
    content: "";
    clear: both;
    display: block;
  }
  footer .cominfo {
    width: 100%;
    margin-right: auto;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 80%;
    margin-left: auto;
    bottom: -35%;
    right: auto;
    float: none;
    padding-top: 30px;
    padding-bottom: 40px;
    line-height: 1;
  }
  footer .cominfo h2 {
    width: 100%;
    margin-bottom: 10px;
    margin-left: auto;
    margin-right: auto;
  }
  footer .cominfo p {
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
  }
  footer nav {
    width: 100%;
    display: inline-block;
    vertical-align: top;
    padding: 0px;
    margin: 0px 0px 20px;
    float: none;
  }
  ul.ftnavi {
    width: 100%;
    margin: 10px 0px 0px;
    padding: 0px;
    display: inline-block;
    text-align: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    float: none;
    font-size: 100%;
  }
  ul.ftnavi li {
    list-style: none;
    margin-right: 0px;
    display: inline-block;
    width: 100%;
    border-bottom: thin solid #FFFFFF;
    margin-bottom: 1px;
  }
  ul.ftnavi li a {
    list-style: none;
    display: block;
    padding-top: 1em;
    padding-right: 1em;
    padding-left: 1em;
    padding-bottom: 1em;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    text-align: left;
  }
}
@media screen and (max-width: 736px) {
  .line-title:after {
    content: '';
    border-bottom: 1px none rgba(1, 159, 180, 1.00);
    height: 1px;
    width: 100%;
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: -1
  }
  .line-title span {
    padding-top: 0;
    padding-right: 3%;
    padding-bottom: 0;
    background-color: #FFFFFF;
    padding-left: 0px;
  }
  .line-title:after {
    content: '';
    border-bottom: 4px solid #E0E0E0;
    width: 100%;
    display: block;
    position: absolute;
    top: 50%;
    left: 0;
    z-index: -1;
    height: 1em;
  }
  .inner-box {
    margin: 0px auto;
    max-width: 1200px;
    padding: 0px;
    width: 92%;
    position: relative;
  }
  .naviinner-box {
    width: 100%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
  .line-title.en {
    display: block;
    margin-right: 40px;
    font-weight: lighter;
    font-size: 200%;
  }
  .flex {
    display: flex;
    justify-content: space-between;
    flex-direction: column;
    flex-flow: wrap;
    align-items: flex-start;
  }
.b-list {
    margin-top: 0px;
    margin-bottom: 0px;
    padding-top: 70px;
}
  /* hero
------------------------------------------------------------------- */
  .home .hero {
    width: 100%;
    display: block;
    height: 500px;
    background-image: url(../images/top_vis_smp.jpg);
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 0px;
    padding-right: 0px;
    padding-bottom: 0px;
    padding-left: 0px;
  }
  .home .hero h1 {
    float: right;
    top: 100px;
    z-index: 10;
    background-size: 72% auto;
    background-image: url(../images/topcopy-smp.png);
    background-repeat: no-repeat;
    width: 100%;
    height: 100%;
    min-height: 350px;
  }
  .page .hero {
    width: 100%;
    display: block;
    padding-bottom: 0px;
    height: 140px;
    background-repeat: no-repeat;
    margin-top: 0px;
  }
  .page .hero .hero-bg {
    position: absolute;
    width: 180%;
    margin-left: auto;
    margin-right: auto;
  }
  .page .hero .hero-bg img {
    margin-left: -22%;
  }
  .page .hero h1 {
    position: absolute;
    top: 35px;
    font-size: 150%;
  }
  .page .hero .copy {
    position: absolute;
    top: 57px;
    font-size: 60%;
    font-weight: bold;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    text-align: center;
  }
  .page .hero .copy.dwn {
    top: 95px;
  }
  .page .hero-sml {
    width: 100%;
    background-repeat: no-repeat;
    background-position: center bottom;
    position: relative;
    padding-bottom: 0px;
    background-size: cover;
    margin-bottom: 0px;
    text-align: center;
    margin-top: 0px;
  }
  .page .hero-sml h1 {
    font-size: 150%;
  }
  /* main
------------------------------------------------------------------- */
  #main {
    position: relative;
    width: 100%;
    clear: both;
    margin-top: -2px;
  }
  .cont-block {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding-top: 30px;
    padding-bottom: 30px;
    margin-bottom: 0px;
    margin-top: 0px;
  }
  .cont-block.sitemap {
    padding-top: 4px;
  }
  .cont-block h2 {
    text-align: center;
    font-size: 130%;
    margin-bottom: 1em;
    color: #000000;
    margin-top: 1em;
    padding-bottom: 1em;
  }
  .cont-block.sitemap h2 {
    color: #000000;
    padding-top: 0.1em;
    padding-bottom: 0.1em;
    text-align: left;
    margin-bottom: 0px;
    margin-top: 30px;
    background-color: #E3DAC7;
    border-bottom-style: none;
  }
  .cont-block.sitemap h2 img {
    width: 30px;
    height: auto;
    position: relative;
    top: 6px;
  }
  .cont-block h3 {
    font-size: 120%;
    text-align: left;
  }
  .cont-block.sitemap h3 {
    padding-bottom: 0px;
    padding-top: 0px;
    margin-top: 0px;
    margin-bottom: 0px;
    font-size: 110%;
  }
  .cont-block h3.lefttext {
    text-align: left;
    font-size: 120%;
    font-weight: bold;
  }
  .cont-block p {
    margin-bottom: 1.5em;
    padding: 0px;
  }
  
  /* page-navi ------------------------------------------------------ */
  #page-navi .btn-box a {
    font-size: 90%;
  }
  #page-navi .prevnext-box a {
    top: 64px;
  }
  #page-navi .prevnext-box .prev {
    left: 0px;
  }
  #page-navi .prevnext-box .next {
    right: 0px;
  }
}
/* skiplink(2024/03/22) ------------------------------------------------------ */
.skip {
	width:1px;
	color:#000000;
	font-size:0.1%;
	line-height:0.1;
	background-color:#FFFFFF;
	position:absolute;
	left:-3000px;
	z-index:9999;
}
a.skip {
	color:#003377;
	background-color:#FFFFFF;
	text-align:center;
	padding:2px 0;
	top:auto;
}
a.skip:active {
	display:block;
	width:99.99%;
	font-size:100%;
	line-height:1.6;
	top:0;
	left:0;
}
a.skip:focus {
	display:block;
	width:99.99%;
	font-size:100%;
	line-height:1.6;
	top:0;
	left:0;
}
.show {
	position: static;
	left:auto;
	display: block!important;
	font-size:1.5rem;
	width:auto;
	line-height:1.6;
	text-align:center;
	
/* sitemap add(2024/03/22)----------------------------------------- */
#sitemap-base h2{
  background-color:#35A5EB;
 }
  
  
