@charset "UTF-8";
/*ALL Settings*/
/*-----------------------------------------------*/
html, body {
  border: 0;
  outline: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: Arial, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  vertical-align: baseline;
  list-style: none;
  margin: 0;
  padding: 0;
}

body {
  line-height: 1;
}

div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
  border: 0;
  outline: 0;
  font-weight: inherit;
  font-style: inherit;
  font-size: 100%;
  font-family: Arial, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  vertical-align: baseline;
  list-style: none;
  margin: 0;
  padding: 0;
}

/* HTML5 */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}

ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

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

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

/* a */
/*--------------------------------------------------------*/
a {
  text-decoration: none;
  color: #000;
}
a.decoration {
  text-decoration: underline;
}
a.decoration:visited, a.decoration:focus, a.decoration:active {
  text-decoration: underline;
  outline: 0;
}
a:visited, a:focus, a:active {
  text-decoration: none;
  color: #000;
  outline: 0;
}

/* table */
/*--------------------------------------------------------*/
table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0px;
}

/* clearfix */
/*--------------------------------------------------------*/
.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}

* html .clearfix {
  zoom: 1;
}

/* IE6 */
*:first-child + html .clearfix {
  zoom: 1;
}

/* IE7 */
/*-----------------------------------------------*/
/*ALL Settings*/
html {
  font-size: 62.5%;
}

body {
  font-size: 14px;
  color: #333;
  -webkit-text-size-adjust: 100%;
}

#wrap {
  font-size: 14px;
}

a {
  color: #333;
}
a:visited, a:focus, a:active {
  color: #333;
}

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

/* common */
/*------------------------------------------------*/
.inner {
  width: 980px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 767px) {
  .inner {
    width: 94%;
  }
}

@media only screen and (min-width: 768px) {
  .flL {
    float: left;
  }

  .flR {
    float: right;
  }

  .hoverOpacity {
    -webkit-transition: opacity 0.3s ease 0s;
    -moz-transition: opacity 0.3s ease 0s;
    -o-transition: opacity 0.3s ease 0s;
    -ms-transition: opacity 0.3s ease 0s;
    transition: opacity 0.3s ease 0s;
  }
  .hoverOpacity:hover {
    opacity: 0.85;
    filter: alpha(opacity=85);
  }

  .pcH {
    display: none !important;
  }
}
@media only screen and (max-width: 768px) {
  .spTabH {
    display: none !important;
  }
}
@media only screen and (max-width: 767px) {
  .spH {
    display: none !important;
  }
}
.alignL {
  text-align: left;
}

.alignC {
  text-align: center;
}

.alignR {
  text-align: right;
}

/* font */
/* ------------------------------------------------- */
.required {
  color: #c00;
  font-size: 10px;
  font-weight: bold;
}

.bold {
  font-weight: bold;
}

/* list */
/* ------------------------------------------------- */
.listUl li {
  padding-left: 1em;
  margin-top: 10px;
  text-indent: -1em;
}
.listUl li:first-child {
  margin-top: 0;
}

.numberUl li {
  padding-left: 1.2em;
  margin-top: 10px;
  text-indent: -1.2em;
  list-style: decimal;
  list-style-position: inside;
}
.numberUl li:first-child {
  margin-top: 0;
}

/* tab */
/*------------------------------------------------*/
.tabBox {
  width: 100%;
  display: none;
}
.tabBox.active {
  display: block;
}

/* box */
/*------------------------------------------------*/
.column3Box {
  font-size: 0px;
}
.column3Box li {
  width: -webkit-calc( (100% - (12px * 2)) / 3 );
  width: calc( (100% - (12px * 2)) / 3 );
  margin-top: 12px;
  margin-left: 12px;
  display: inline-block;
  *display: inline;
  *zoom: 1;
  vertical-align: middle;
  font-size: 14px;
}
.column3Box li:first-child {
  margin-top: 0;
  margin-left: 0;
}
.column3Box li:nth-child(2), .column3Box li:nth-child(3) {
  margin-top: 0;
}
.column3Box li:nth-child(3n+1) {
  margin-left: 0;
}

.column4Box {
  font-size: 0px;
}
.column4Box li {
  width: -webkit-calc( (100% - (25px * 3)) / 4 );
  width: calc( (100% - (25px * 3)) / 4 );
  margin-top: 25px;
  margin-left: 25px;
  display: inline-block;
  *display: inline;
  *zoom: 1;
  vertical-align: middle;
  font-size: 14px;
}
.column4Box li:first-child {
  margin-top: 0;
  margin-left: 0;
}
.column4Box li:nth-child(2), .column4Box li:nth-child(3), .column4Box li:nth-child(4) {
  margin-top: 0;
}
.column4Box li:nth-child(4n+1) {
  margin-left: 0;
}

/* spGlobalNav */
/*------------------------------------------------*/
@media only screen and (max-width: 767px) {
  .slidemenu {
    width: 240px;
    position: fixed;
    top: 0;
    visibility: hidden;
    z-index: -1;
  }
  .slidemenu .slidemenu-body {
    height: 100%;
    overflow: hidden;
    position: relative;
  }
  .slidemenu .slidemenu-content {
    position: relative;
  }
  .slidemenu.slidemenu-left {
    left: 0;
  }
  .slidemenu.slidemenu-right {
    right: 0;
  }
}
/* common */
/*------------------------------------------------*/
.clearfix01 {
  clear: both;
}

.small {
  font-size: 12px;
}

.leftBlock {
  float: left;
}
@media only screen and (max-width: 767px) {
  .leftBlock {
    float: none;
  }
}

.rightBlock {
  float: right;
}
@media only screen and (max-width: 767px) {
  .rightBlock {
    float: none;
  }
}

.inlineBlock {
  display: inline-block;
  vertical-align: middle;
}
@media only screen and (max-width: 767px) {
  .inlineBlock {
    display: block;
  }
}

.greenBtn a {
  color: #fff;
  background-color: #54b420;
  font-size: 15px;
  display: block;
  text-align: center;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}
.greenBtn a:hover {
  background-color: #2b8200;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}

.toList {
  text-align: center;
}
.toList a {
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  border-radius: 5px;
  border: 1px solid #28302f;
  display: inline-block;
  font-size: 14px;
  padding: 15px 35px;
  font-weight: bold;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}
@media only screen and (max-width: 767px) {
  .toList a {
    display: block;
  }
}
.toList a:hover {
  background-color: #e1e5e4;
  color: #2c3a38;
  border-color: #999f9e;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}

.imgArea {
  text-align: center;
}

.tableDl {
  display: table;
  width: 100%;
  border-collapse: collapse;
}
.tableDl dt, .tableDl dd {
  display: table-cell;
  vertical-align: middle;
}

.sentence {
  font-size: 14px;
  line-height: 180%;
}

.yellowLink {
  background-color: #ebbc00;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}
.yellowLink:hover {
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  background-color: #cc9a00;
}

.greenLink {
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  background-color: #54b420;
}
.greenLink:hover {
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  background-color: #2b8200;
}

.blueLink {
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  background-color: #478ABE;
}
.blueLink:hover {
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  background-color: #2f76ad;
}

.arrowList {
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  -ms-border-radius: 5px;
  -o-border-radius: 5px;
  border-radius: 5px;
  border: 1px solid #ababab;
  overflow: hidden;
}
.arrowList li {
  border-top: 1px solid #ababab;
}
.arrowList li:first-child {
  border-top: none;
}
.arrowList li .title {
  width: auto;
}
.arrowList li a {
  padding: 20px;
  display: block;
  background-image: url("../images/icon/arrow.png");
  -webkit-background-size: 10px;
  -moz-background-size: 10px;
  -ms-background-size: 10px;
  -o-background-size: 10px;
  background-size: 10px;
  background-repeat: no-repeat;
  background-position: 98% center;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}
@media only screen and (max-width: 767px) {
  .arrowList li a {
    background-position: 96% center;
  }
}
.arrowList li a:hover {
  background-color: #f5f5f5;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}

/* header */
/*------------------------------------------------*/
#headBlockWrap {
  z-index: 10;
  position: fixed;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  #headBlockWrap {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
  }
  #headBlockWrap #headBlock {
    position: relative;
  }
}

#headWrap {
  background-color: #28302f;
  width: 100%;
}
@media only screen and (max-width: 767px) {
  #headWrap {
    display: none;
    background-color: transparent;
    background-image: url("../images/header/spNavBg.png");
    position: absolute;
    top: 60px;
    left: 0;
    z-index: 100;
  }
}
#headWrap .leftBlock,
#headWrap .rightBlock {
  font-size: 0px;
}
#headWrap .leftBlock {
  padding: 19px 0 19px 120px;
}
@media only screen and (max-width: 767px) {
  #headWrap .leftBlock {
    display: none;
  }
}
#headWrap .leftBlock .language {
  border-right: 1px solid #fff;
  padding-right: 20px;
}
#headWrap .leftBlock .snsLink {
  margin-left: 20px;
}
@media only screen and (max-width: 767px) {
  #headWrap .rightBlock {
    width: 90%;
    margin: 0 auto;
    text-align: center;
    padding: 20px 0;
  }
}
#headWrap #headNav {
  padding: 19px 20px;
  font-size: 12px;
  color: #fff;
  display: inline-block;
}
#headWrap #headNav a {
  color: #fff;
}
#headWrap #headNav a:hover {
  text-decoration: underline;
}
@media only screen and (max-width: 767px) {
  #headWrap #headNav {
    padding: 20px 0;
    line-height: 270%;
  }
}
#headWrap .greenBtn a {
  padding: 17.5px 20px;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  #headWrap .greenBtn a {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    -ms-border-radius: 5px;
    -o-border-radius: 5px;
    border-radius: 5px;
  }
}
#headWrap #headAdbanner {
  background-color: #000;
  padding: 7px 10px;
}
@media only screen and (max-width: 767px) {
  #headWrap #headAdbanner {
    display: none;
  }
}

#sp_globalNav {
  display: none;
}
@media only screen and (max-width: 767px) {
  #sp_globalNav {
    display: block;
    margin-bottom: 10px;
  }
  #sp_globalNav ul li {
    margin-top: 5px;
  }
  #sp_globalNav ul li a {
    display: block;
    font-size: 14px;
    color: #f3f3f3;
    padding: 15px 0;
  }
  #sp_globalNav ul li:first-child {
    margin-top: 0;
  }
}

/* globalNav */
/*------------------------------------------------*/
#globalNavWrap {
  background-color: #fff;
  padding: 15px 20px;
}
@media only screen and (max-width: 767px) {
  #globalNavWrap {
    padding: 10px 3%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
  }
}
#globalNavWrap .leftBlock,
#globalNavWrap .rightBlock {
  font-size: 0px;
}
#globalNavWrap #headLogoWrap {
  position: relative;
}
#globalNavWrap #headLogoWrap .headLogoParts {
  display: inline-block;
}
@media only screen and (max-width: 767px) {
  #globalNavWrap #headLogoWrap .headLogoParts {
    vertical-align: middle;
  }
}
#globalNavWrap #headLogoWrap #headEmblem {
  position: absolute;
  bottom: -5px;
  left: 0;
}
@media only screen and (max-width: 767px) {
  #globalNavWrap #headLogoWrap #headEmblem {
    position: static;
    width: 9%;
  }
}
@media only screen and (min-width: 768px) {
  #globalNavWrap #headLogoWrap #headEmblem a {
    display: block;
    position: relative;
    width: 78px;
  }
  #globalNavWrap #headLogoWrap #headEmblem a:hover:after {
    opacity: 1;
    filter: alpha(opacity=100);
  }
  #globalNavWrap #headLogoWrap #headEmblem a:after {
    width: 100%;
    height: 99px;
    content: "";
    background-image: url("../images/header/logo_emblem_white.png");
    background-repeat: no-repeat;
    background-position: left top;
    -webkit-background-size: contain;
    -moz-background-size: contain;
    -ms-background-size: contain;
    -o-background-size: contain;
    background-size: contain;
    opacity: 0;
    filter: alpha(opacity=0);
    -webkit-transition: all 0.3s ease 0s;
    -moz-transition: all 0.3s ease 0s;
    -o-transition: all 0.3s ease 0s;
    -ms-transition: all 0.3s ease 0s;
    transition: all 0.3s ease 0s;
    position: absolute;
    left: 0;
    top: 0;
  }
}
#globalNavWrap #headLogoWrap #headLogo {
  padding-left: 100px;
  width: 140px;
}
@media only screen and (max-width: 767px) {
  #globalNavWrap #headLogoWrap #headLogo {
    padding-left: 3%;
    width: 79.62%;
  }
  #globalNavWrap #headLogoWrap #headLogo #headLogoInner {
    width: 35%;
  }
}
#globalNavWrap #headLogoWrap #navBtn {
  display: none;
}
@media only screen and (max-width: 767px) {
  #globalNavWrap #headLogoWrap #navBtn {
    display: inline-block;
    width: 8.38%;
  }
}
#globalNavWrap #globalNav {
  font-size: 0px;
}
@media only screen and (max-width: 767px) {
  #globalNavWrap #globalNav {
    display: none;
  }
}
#globalNavWrap #globalNav li {
  display: inline-block;
  margin-left: 30px;
}
#globalNavWrap #globalNav li:first-child {
  margin-left: 0;
}
#globalNavWrap #globalNav li a {
  font-size: 14px;
  font-weight: bold;
  display: block;
  color: #202020;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  padding: 15px 0;
}
#globalNavWrap #globalNav li a:hover {
  color: #54b420;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}

/* breadcrumb */
/*------------------------------------------------*/
#breadcrumbWrap {
  background-color: #f5f5f5;
  padding: 20px 0;
}
#breadcrumbWrap #breadcrumb ul {
  font-size: 0px;
}
#breadcrumbWrap #breadcrumb ul li {
  font-size: 12px;
  display: inline;
  line-height: 140%;
}
#breadcrumbWrap #breadcrumb ul li a {
  color: #3399cc;
  font-size: 12px;
}
#breadcrumbWrap #breadcrumb ul li a:hover {
  text-decoration: underline;
}

/* main */
/*------------------------------------------------*/
@media only screen and (min-width: 768px) {
  #mainWrap {
    margin-top: 0 !important;
    padding-top : 124px;
  }
}
#mainWrap #contentsWrap {
  background-color: #fff;
  padding: 50px 0;
}
@media only screen and (max-width: 767px) {
  #mainWrap #contentsWrap {
    padding: 10px 0 40px;
  }
}
#mainWrap #contentsWrap .contBox {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  #mainWrap #contentsWrap .contBox {
    margin-top: 40px;
  }
}
#mainWrap #contentsWrap .contBox:first-child {
  margin-top: 0;
}
#mainWrap #contentsWrap .contBox .contTitle {
  font-size: 32px;
  font-weight: bold;
  text-align: center;
  margin-bottom: 40px;
}
@media only screen and (max-width: 767px) {
  #mainWrap #contentsWrap .contBox .contTitle {
    font-size: 23px;
    font-weight: normal;
    margin-bottom: 30px;
  }
}

/*map*/
/*----------------------------*/
#mapArea {
  background-color: #d6e9ed;
  padding: 60px;
  background-image: url("../images/top/map/map.png");
  background-repeat: no-repeat;
  background-position: center center;
}
@media only screen and (max-width: 767px) {
  #mapArea {
    background-color: transparent;
    padding: 0;
    background-image: none;
  }
}
#mapArea .titleWrap {
  background-color: #fff;
  padding: 25px;
  margin-bottom: 25px;
}
#mapArea .titleWrap .contTitle {
  margin-bottom: 20px !important;
}
@media only screen and (max-width: 767px) {
  #mapArea .titleWrap {
    text-align: center;
    padding: 0;
  }
  #mapArea .titleWrap .contTitle {
    margin-bottom: 10px !important;
  }
}
#mapArea .textWrap {
  text-align: left;
}
#mapArea .textWrap .small {
  margin-top: 10px;
  font-size: 12px;
}
#mapArea .rightBlock {
  margin-top: -10px;
}
@media only screen and (max-width: 767px) {
  #mapArea .rightBlock {
    margin-top: 0;
  }
}
#mapArea .areaBlock {
  width: 160px;
}
@media only screen and (max-width: 767px) {
  #mapArea .areaBlock {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) and (max-width: 767px) {
  #mapArea .areaBlock {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
    border-top: 1px solid #ababab;
    border-left: 1px solid #ababab;
    border-right: 1px solid #ababab;
  }
}

#mapArea .areaBlock .areaName {
  -moz-border-radius-topleft: 5px;
  -webkit-border-top-left-radius: 5px;
  border-top-left-radius: 5px;
  -moz-border-radius-topright: 5px;
  -webkit-border-top-right-radius: 5px;
  border-top-right-radius: 5px;
  background-color: #199a44;
  font-weight: bold;
  text-align: center;
}
@media only screen and (max-width: 767px) {
  #mapArea .areaBlock .areaName {
    -moz-border-radius-topleft: 0;
    -webkit-border-top-left-radius: 0;
    border-top-left-radius: 0;
    -moz-border-radius-topright: 0;
    -webkit-border-top-right-radius: 0;
    border-top-right-radius: 0;
    background-color: transparent;
    font-weight: normal;
    text-align: left;
  }
}
#mapArea .areaBlock .areaName a {
  color: #fff;
  font-size: 14px;
  padding: 10px 0;
  display: block;
  cursor: text;
}
@media only screen and (max-width: 767px) {
  #mapArea .areaBlock .areaName a {
    color: #202020;
    padding: 20px 15px;
    background-image: url("../images/icon/plus.png");
    background-repeat: no-repeat;
    background-position: 96% center;
    background-size: 11px;
  }
}
@media only screen and (max-width: 767px) {
  #mapArea .areaBlock .areaName a.active {
    background-color: #deedd6;
    background-image: url("../images/icon/minus.png");
  }
}
#mapArea .areaBlock .prefBlock {
  -moz-border-radius-bottomleft: 5px;
  -webkit-border-bottom-left-radius: 5px;
  border-bottom-left-radius: 5px;
  -moz-border-radius-bottomright: 5px;
  -webkit-border-bottom-right-radius: 5px;
  border-bottom-right-radius: 5px;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  #mapArea .areaBlock .prefBlock {
    -moz-border-radius-bottomleft: 0;
    -webkit-border-bottom-left-radius: 0;
    border-bottom-left-radius: 0;
    -moz-border-radius-bottomright: 0;
    -webkit-border-bottom-right-radius: 0;
    border-bottom-right-radius: 0;
    display: none;
    border-bottom: none;
  }
}
#mapArea .areaBlock .prefBlock ul {
  font-size: 0px;
  text-align: left;
}
#mapArea .areaBlock .prefBlock ul li {
  display: inline-block;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  box-sizing: border-box;
  width: 50%;
  border-top: 1px solid #ddd;
}
@media only screen and (max-width: 767px) {
  #mapArea .areaBlock .prefBlock ul li {
    width: 100%;
    border-color: #ababab;
  }
}
@media only screen and (min-width: 768px) {
  #mapArea .areaBlock .prefBlock ul li:nth-child(-n+2) {
    border-top: none;
  }
}
#mapArea .areaBlock .prefBlock ul li:nth-child(2n) {
  border-left: 1px solid #ddd;
}
@media only screen and (max-width: 767px) {
  #mapArea .areaBlock .prefBlock ul li:nth-child(2n) {
    border-left: none;
  }
}
#mapArea .areaBlock .prefBlock ul li a {
  display: block;
  font-size: 14px;
  text-align: center;
  font-weight: bold;
  padding: 13px 0;
  background-color: #fff;
}
@media only screen and (max-width: 767px) {
  #mapArea .areaBlock .prefBlock ul li a {
    font-weight: normal;
    text-align: left;
    cursor: text;
    padding: 20px 15px;
    background-color: transparent;
  }
}
@media only screen and (max-width: 767px) {
  #mapArea .areaBlock .prefBlock ul > li {
    display: table;
  }
}
@media only screen and (max-width: 767px) {
  #mapArea .areaBlock .prefBlock ul > li .prefName {
    display: table-cell;
    width: 25%;
    background-color: #f5f5f5;
    border-right: 1px solid #ababab;
    vertical-align: top;
  }
  #mapArea .areaBlock .prefBlock ul > li .prefName.last {
    -moz-border-radius-bottomleft: 5px;
    -webkit-border-bottom-left-radius: 5px;
    border-bottom-left-radius: 5px;
  }
}
#mapArea .areaBlock .prefBlock ul > li .prefName a {
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}
#mapArea .areaBlock .prefBlock ul > li .prefName a:hover {
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  background-color: #e1e5e4;
}
@media only screen and (max-width: 767px) {
  #mapArea .areaBlock .prefBlock ul > li .prefName a:hover {
    cursor: text;
    background-color: transparent;
  }
}
#mapArea .areaBlock .prefBlock ul .schoolNameWrap {
  display: none;
}
@media only screen and (max-width: 767px) {
  #mapArea .areaBlock .prefBlock ul .schoolNameWrap {
    display: table-cell;
    width: 75%;
  }
  #mapArea .areaBlock .prefBlock ul .schoolNameWrap .schoolName li:first-child {
    border-top: none;
  }
  #mapArea .areaBlock .prefBlock ul .schoolNameWrap .schoolName li a {
    cursor: pointer;
    background-color: #fff;
    background-image: url("../images/icon/arrow.png");
    background-repeat: no-repeat;
    background-position: 96% center;
    background-size: 11px;
  }
}
#mapArea .areaBlock.oneBlock {
  width: 80px;
}
@media only screen and (max-width: 767px) {
  #mapArea .areaBlock.oneBlock {
    width: 100%;
  }
}
#mapArea .areaBlock.oneBlock .prefBlock ul li {
  width: 100%;
  border-top: 1px solid #ddd;
}
@media only screen and (max-width: 767px) {
  #mapArea .areaBlock.oneBlock .prefBlock ul li {
    border-color: #ababab;
  }
}
@media only screen and (min-width: 768px) {
  #mapArea .areaBlock.oneBlock .prefBlock ul li:first-child {
    border-top: none;
  }
}
#mapArea .areaBlock.oneBlock .prefBlock ul li:nth-child(2n) {
  border-left: none;
}
#mapArea .rightBlock {
  text-align: right;
}
#mapArea #area01,
#mapArea #area02 {
  display: inline-block;
  margin-bottom: 15px;
}
@media only screen and (max-width: 767px) {
  #mapArea #area01,
  #mapArea #area02 {
    display: block;
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 767px) {
  #mapArea #area01 {
    -moz-border-radius-topleft: 5px;
    -webkit-border-top-left-radius: 5px;
    border-top-left-radius: 5px;
    -moz-border-radius-topright: 5px;
    -webkit-border-top-right-radius: 5px;
    border-top-right-radius: 5px;
  }
  #mapArea #area01 .areaName a {
    -moz-border-radius-topleft: 5px;
    -webkit-border-top-left-radius: 5px;
    border-top-left-radius: 5px;
    -moz-border-radius-topright: 5px;
    -webkit-border-top-right-radius: 5px;
    border-top-right-radius: 5px;
  }
}
#mapArea #areaWrap03 {
  text-align: left;
}
#mapArea #areaWrap03 .areaBlock {
  float: right;
}
@media only screen and (max-width: 767px) {
  #mapArea #areaWrap03 .areaBlock {
    float: none;
  }
}
#mapArea #areaWrap03 #area03 {
  margin-left: 15px;
}
@media only screen and (max-width: 767px) {
  #mapArea #areaWrap03 #area03 {
    margin-left: 0;
  }
}
#mapArea .leftBlock .areaBlockWrap {
  float: right;
  margin-right: 15px;
}
@media only screen and (max-width: 767px) {
  #mapArea .leftBlock .areaBlockWrap {
    float: none;
    margin-right: 0;
  }
}
#mapArea .leftBlock .areaBlockWrap:first-child {
  margin-right: 0;
}
#mapArea .leftBlock .areaBlockWrap .areaBlock {
  margin-top: 15px;
}
@media only screen and (max-width: 767px) {
  #mapArea .leftBlock .areaBlockWrap .areaBlock {
    margin-top: 0;
  }
}
#mapArea .leftBlock .areaBlockWrap .areaBlock:first-child {
  margin-top: 0;
}
@media only screen and (max-width: 767px) {
  #mapArea .leftBlock #areaWrap08 #area09 {
    -moz-border-radius-bottomleft: 5px;
    -webkit-border-bottom-left-radius: 5px;
    border-bottom-left-radius: 5px;
    -moz-border-radius-bottomright: 5px;
    -webkit-border-bottom-right-radius: 5px;
    border-bottom-right-radius: 5px;
    border-bottom: 1px solid #ababab;
  }
}

#totopOutside #toTop a {
  display: block;
  color: #fff;
  background-color: #4d5554;
  font-size: 13px;
  text-align: center;
  padding: 20px 0;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}
#totopOutside #toTop a:hover {
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  -ms-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  background-color: #2f3a39;
}
#totopOutside #toTop a span {
  background-image: url("../images/footer/pageTop.png");
  background-repeat: no-repeat;
  background-position: left center;
  padding-left: 20px;
}
@media only screen and (max-width: 767px) {
  #totopOutside #toTop a {
    font-size: 12px;
  }
}

#footBannerArea {
  background-color: #f3f3f3;
  padding: 40px 0;
}
@media only screen and (max-width: 767px) {
  #footBannerArea {
    display: none;
  }
}
#footBannerArea ul {
  font-size: 0px;
  text-align: center;
}
#footBannerArea ul li {
  display: inline-block;
  vertical-align: middle;
  margin-left: -webkit-calc(44px / 4);
  margin-left: calc(44px / 4);
}
#footBannerArea ul li:first-child {
  margin-left: 0;
}
#footBannerArea ul li:nth-child(n+5) {
  margin-top: 15px;
}
#footBannerArea ul li a {
  display: block;
}

/* footer */
/*------------------------------------------------*/
#footer {
  background-color: #28302f;
  padding: 60px 0 30px;
}
@media only screen and (max-width: 767px) {
  #footer {
    padding: 0;
  }
}
#footer a {
  color: #f3f3f3;
}
#footer a:hover {
  text-decoration: underline;
}
@media only screen and (max-width: 767px) {
  #footer a:hover {
    text-decoration: none;
  }
}
@media only screen and (max-width: 767px) {
  #footer #footerInner {
    width: 100%;
  }
}
#footer #footerInner h3 a, #footer #footerInner h4 a {
  font-size: 16px;
  font-weight: bold;
}
@media only screen and (max-width: 767px) {
  #footer #footerInner h3 a, #footer #footerInner h4 a {
    font-weight: normal;
    font-size: 11px;
  }
}
@media only screen and (max-width: 767px) {
  #footer #footerInner .footerNavWrap {
    border-bottom: 1px solid #6d7170;
    display: table;
    width: 100%;
  }
}
#footer #footerInner .footerNavi01,
#footer #footerInner .footerNavi02 {
  width: 200px;
  margin-right: 40px;
}
@media only screen and (min-width: 768px) {
  #footer #footerInner .footerNavi01,
  #footer #footerInner .footerNavi02 {
    float: left;
  }
}
@media only screen and (max-width: 767px) {
  #footer #footerInner .footerNavi01:first-child,
  #footer #footerInner .footerNavi02:first-child {
    border-right: 1px solid #6d7170;
  }
}
@media only screen and (max-width: 767px) {
  #footer #footerInner .footerNavi01,
  #footer #footerInner .footerNavi02 {
    margin-right: 0;
    width: 50%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
    display: table-cell;
  }
  #footer #footerInner .footerNavi01 a,
  #footer #footerInner .footerNavi02 a {
    display: block;
    padding: 9% 7%;
  }
}
#footer #footerInner .footerNavi01 h3 {
  margin-bottom: 40px;
}
#footer #footerInner .footerNavi01 h4 {
  margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
  #footer #footerInner .footerNavi01 h3, #footer #footerInner .footerNavi01 h4 {
    margin-bottom: 0;
  }
}
#footer #footerInner .footerNavi01 ul li {
  line-height: 150%;
  margin-top: 10px;
}
#footer #footerInner .footerNavi01 ul li:first-child {
  margin-top: 0;
}
@media only screen and (max-width: 767px) {
  #footer #footerInner .footerNavi01 ul {
    display: none;
  }
}
#footer #footerInner .footerNavi02 {
  margin-top: 40px;
}
@media only screen and (max-width: 767px) {
  #footer #footerInner .footerNavi02 {
    margin-top: 0;
  }
}
#footer #footerInner .emptyBlock h3 a {
  color: transparent;
}
#footer #footerLinks {
  margin-top: 60px;
}
@media only screen and (max-width: 767px) {
  #footer #footerLinks {
    margin-top: 0;
    padding: 20px 0;
    line-height: 200%;
    border-bottom: 1px solid #6d7170;
  }
}
#footer #footerLinks #footerLinksinner p {
  color: #f3f3f3;
  font-size: 11px;
}

#copyWrap {
  color: #fff;
  padding: 20px 0;
  background-color: #202020;
}
#copyWrap .inner {
  font-size: 0px;
}
#copyWrap #footerLogo {
  width: 12%;
}
@media only screen and (max-width: 767px) {
	#copyWrap {
	  padding: 20px 0 76px;
	}
  #copyWrap #footerLogo {
    width: 100%;
    text-align: center;
    margin-bottom: 15px;
  }
  #copyWrap #footerLogo img {
    width: 28.125%;
  }
}
#copyWrap #copy {
  font-size: 10px;
  text-align: center;
  width: 68%;
  line-height: 140%;
}
@media only screen and (max-width: 767px) {
  #copyWrap #copy {
    width: 100%;
    text-align: center;
  }
}
#copyWrap #footerAdbanner {
  width: 20%;
}
#copyWrap #footerAdbanner .abBannerParts {
  display: inline-block;
  vertical-align: middle;
  margin-left: 15px;
}
#copyWrap #footerAdbanner .abBannerParts:first-child {
  margin-left: 0;
}



#sp_foot_fixed_btn{
	display: none;
}
@media only screen and (max-width: 767px) {
	#sp_foot_fixed_btn{
		display: block;
		background-color : rgba(31,32,37,0.8);
		padding : 8px;
		position: fixed;
		bottom : 0;
		width : 100%;
		box-sizing: border-box;
	}
	#sp_foot_fixed_btn a{
		display : block;
		width: 100%;
		background-color : #54b420;
		text-align: center;
		color : #fff;
		padding : 13px 0;
		border-radius: 6px;
	}
	
	/* 20170629 ADD Start */
	#sp_foot_fixed_btn >ul{
		font-size: 0;
	}
	#sp_foot_fixed_btn >ul>li{
		width: 48%;
		margin-left: 4%;
		display: inline-block;
		vertical-align: middle;
		font-size: 14px;
	}
	#sp_foot_fixed_btn >ul>li:first-child{
		margin-left: 0;
	}
	/* 20170629 ADD End */
}

/* 20170629 ADD Start */
#exprience_fix2 {
	position: fixed;
	right: 0;
	top: 200px;
	z-index: 1000;
}
#exprience_fix2.bnr_2{
	top: 350px;
}
@media only screen and (max-width: 767px) {
	#exprience_fix2 {
		display: none;
	}
}

/* 20170629 ADD End */