@charset "UTF-8";
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline;
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

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

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none;
}

a img {
  border: none;
}

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

/* /////////////////////////////
    utility
///////////////////////////// */
/* responsive */
.is-pc {
  display: block;
}
@media screen and (max-width: 640px) {
  .is-pc {
    display: none !important;
  }
}

.is-tab-l {
  display: none;
}
@media screen and (max-width: 1140px) {
  .is-tab-l {
    display: block !important;
  }
}

.is-tab-p {
  display: none;
}
@media screen and (max-width: 768px) {
  .is-tab-p {
    display: block !important;
  }
}

.is-sp {
  display: none;
}
@media screen and (max-width: 640px) {
  .is-sp {
    display: block !important;
  }
}

.afade {
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.afade:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
  -moz-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}

/* logtag */
#logtag {
  display: none;
}

/* clearfix */
.clearfix {
  zoom: 1;
}

.clearfix:after {
  content: '';
  display: table;
  clear: both;
}

/**
   * force float-left
   */
.fl {
  float: left !important;
}

/**
   * force float-right
   */
.fr {
  float: right !important;
}

/**
   * force clear-both
   */
.clear {
  clear: both !important;
}

/* position */
.relative {
  position: relative;
}

.absolute {
  position: absolute;
}

.indent > li {
  margin-left: 1em;
  text-indent: -1em;
}

.basic-table {
  width: 100%;
  border-collapse: collapse;
  background-color: #fff;
}
.basic-table th, .basic-table td {
  padding: 10px 20px;
}
.basic-table th {
  text-align: center;
  color: #fff;
  font-weight: bold;
  border-right: 1px solid #fff;
}
.basic-table td {
  border: 1px solid #e2e2e2;
}

.numset .icon {
  margin-right: 1em;
  font-size: 12px;
}
.numset .num {
  font-size: 24px;
  margin-right: 15px;
  font-weight: bold;
}

.pink {
  color: #ee2f60;
}

.more-btn {
  margin-top: 30px;
  text-align: right;
}
.more-btn a {
  padding-left: 20px;
}

/* text-align */
/**
* force align-left
*/
.al {
  text-align: left !important;
}

/**
* force align-right
*/
.ar {
  text-align: right !important;
}

/**
* force align-center
*/
.ac {
  text-align: center !important;
}

/* bold */
.bold, strong {
  font-weight: bold;
}

/* caption */
.caption {
  font-size: 12px;
}

/* bold */
.bold {
  font-weight: bold;
}

/* margin-padding */
/**
* force margin-top XXpx
*/
.mt00 {
  margin-top: 0px !important;
}

.mt05 {
  margin-top: 5px !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mt25 {
  margin-top: 25px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mt35 {
  margin-top: 35px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mt45 {
  margin-top: 45px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mt55 {
  margin-top: 55px !important;
}

.mt60 {
  margin-top: 60px !important;
}

.mt65 {
  margin-top: 65px !important;
}

.mt70 {
  margin-top: 70px !important;
}

.mt75 {
  margin-top: 75px !important;
}

.mt80 {
  margin-top: 80px !important;
}

.mt85 {
  margin-top: 85px !important;
}

.mt90 {
  margin-top: 90px !important;
}

.mt95 {
  margin-top: 95px !important;
}

.mt100 {
  margin-top: 100px !important;
}

/**
* force margin-right XXpx
*/
.mr00 {
  margin-right: 0px !important;
}

.mr05 {
  margin-right: 5px !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mr15 {
  margin-right: 15px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.mr25 {
  margin-right: 25px !important;
}

.mr30 {
  margin-right: 30px !important;
}

.mr35 {
  margin-right: 35px !important;
}

.mr40 {
  margin-right: 40px !important;
}

.mr45 {
  margin-right: 45px !important;
}

.mr50 {
  margin-right: 50px !important;
}

.mr55 {
  margin-right: 55px !important;
}

.mr60 {
  margin-right: 60px !important;
}

.mr65 {
  margin-right: 65px !important;
}

.mr70 {
  margin-right: 70px !important;
}

.mr75 {
  margin-right: 75px !important;
}

.mr80 {
  margin-right: 80px !important;
}

.mr85 {
  margin-right: 85px !important;
}

.mr90 {
  margin-right: 90px !important;
}

.mr95 {
  margin-right: 95px !important;
}

.mr100 {
  margin-right: 100px !important;
}

/**
* force margin-bottom XXpx
*/
.mb00 {
  margin-bottom: 0px !important;
}

.mb05 {
  margin-bottom: 5px !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb15 {
  margin-bottom: 15px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb25 {
  margin-bottom: 25px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.mb35 {
  margin-bottom: 35px !important;
}

.mb40 {
  margin-bottom: 40px !important;
}

.mb45 {
  margin-bottom: 45px !important;
}

.mb50 {
  margin-bottom: 50px !important;
}

.mb55 {
  margin-bottom: 55px !important;
}

.mb60 {
  margin-bottom: 60px !important;
}

.mb65 {
  margin-bottom: 65px !important;
}

.mb70 {
  margin-bottom: 70px !important;
}

.mb75 {
  margin-bottom: 75px !important;
}

.mb80 {
  margin-bottom: 80px !important;
}

.mb85 {
  margin-bottom: 85px !important;
}

.mb90 {
  margin-bottom: 90px !important;
}

.mb95 {
  margin-bottom: 95px !important;
}

.mb100 {
  margin-bottom: 100px !important;
}

/**
* force margin-left XXpx
*/
.ml00 {
  margin-left: 0px !important;
}

.ml05 {
  margin-left: 5px !important;
}

.ml10 {
  margin-left: 10px !important;
}

.ml15 {
  margin-left: 15px !important;
}

.ml20 {
  margin-left: 20px !important;
}

.ml25 {
  margin-left: 25px !important;
}

.ml30 {
  margin-left: 30px !important;
}

.ml35 {
  margin-left: 35px !important;
}

.ml40 {
  margin-left: 40px !important;
}

.ml45 {
  margin-left: 45px !important;
}

.ml50 {
  margin-left: 50px !important;
}

.ml55 {
  margin-left: 55px !important;
}

.ml60 {
  margin-left: 60px !important;
}

.ml65 {
  margin-left: 65px !important;
}

.ml70 {
  margin-left: 70px !important;
}

.ml75 {
  margin-left: 75px !important;
}

.ml80 {
  margin-left: 80px !important;
}

.ml85 {
  margin-left: 85px !important;
}

.ml90 {
  margin-left: 90px !important;
}

.ml95 {
  margin-left: 95px !important;
}

.ml100 {
  margin-left: 100px !important;
}

/**
* force padding-top XXpx
*/
.pt00 {
  padding-top: 0px !important;
}

.pt05 {
  padding-top: 5px !important;
}

.pt10 {
  padding-top: 10px !important;
}

.pt15 {
  padding-top: 15px !important;
}

.pt20 {
  padding-top: 20px !important;
}

.pt25 {
  padding-top: 25px !important;
}

.pt30 {
  padding-top: 30px !important;
}

.pt35 {
  padding-top: 35px !important;
}

.pt40 {
  padding-top: 40px !important;
}

.pt45 {
  padding-top: 45px !important;
}

.pt50 {
  padding-top: 50px !important;
}

.pt55 {
  padding-top: 55px !important;
}

.pt60 {
  padding-top: 60px !important;
}

.pt65 {
  padding-top: 65px !important;
}

.pt70 {
  padding-top: 70px !important;
}

.pt75 {
  padding-top: 75px !important;
}

.pt80 {
  padding-top: 80px !important;
}

.pt85 {
  padding-top: 85px !important;
}

.pt90 {
  padding-top: 90px !important;
}

.pt95 {
  padding-top: 95px !important;
}

.pt100 {
  padding-top: 100px !important;
}

/**
   * force padding-right XXpx
   */
.pr00 {
  padding-right: 0px !important;
}

.pr05 {
  padding-right: 5px !important;
}

.pr10 {
  padding-right: 10px !important;
}

.pr15 {
  padding-right: 15px !important;
}

.pr20 {
  padding-right: 20px !important;
}

.pr25 {
  padding-right: 25px !important;
}

.pr30 {
  padding-right: 30px !important;
}

.pr35 {
  padding-right: 35px !important;
}

.pr40 {
  padding-right: 40px !important;
}

.pr45 {
  padding-right: 45px !important;
}

.pr50 {
  padding-right: 50px !important;
}

.pr55 {
  padding-right: 55px !important;
}

.pr60 {
  padding-right: 60px !important;
}

.pr65 {
  padding-right: 65px !important;
}

.pr70 {
  padding-right: 70px !important;
}

.pr75 {
  padding-right: 75px !important;
}

.pr80 {
  padding-right: 80px !important;
}

.pr85 {
  padding-right: 85px !important;
}

.pr90 {
  padding-right: 90px !important;
}

.pr95 {
  padding-right: 95px !important;
}

.pr100 {
  padding-right: 100px !important;
}

/**
* force padding-bottom XXpx
*/
.pb00 {
  padding-bottom: 0px !important;
}

.pb05 {
  padding-bottom: 5px !important;
}

.pb10 {
  padding-bottom: 10px !important;
}

.pb15 {
  padding-bottom: 15px !important;
}

.pb20 {
  padding-bottom: 20px !important;
}

.pb25 {
  padding-bottom: 25px !important;
}

.pb30 {
  padding-bottom: 30px !important;
}

.pb35 {
  padding-bottom: 35px !important;
}

.pb40 {
  padding-bottom: 40px !important;
}

.pb45 {
  padding-bottom: 45px !important;
}

.pb50 {
  padding-bottom: 50px !important;
}

.pb55 {
  padding-bottom: 55px !important;
}

.pb60 {
  padding-bottom: 60px !important;
}

.pb65 {
  padding-bottom: 65px !important;
}

.pb70 {
  padding-bottom: 70px !important;
}

.pb75 {
  padding-bottom: 75px !important;
}

.pb80 {
  padding-bottom: 80px !important;
}

.pb85 {
  padding-bottom: 85px !important;
}

.pb90 {
  padding-bottom: 90px !important;
}

.pb95 {
  padding-bottom: 95px !important;
}

.pb100 {
  padding-bottom: 100px !important;
}

/**
* force padding-left XXpx
*/
.pl00 {
  padding-left: 0px !important;
}

.pl05 {
  padding-left: 5px !important;
}

.pl10 {
  padding-left: 10px !important;
}

.pl15 {
  padding-left: 15px !important;
}

.pl20 {
  padding-left: 20px !important;
}

.pl25 {
  padding-left: 25px !important;
}

.pl30 {
  padding-left: 30px !important;
}

.pl35 {
  padding-left: 35px !important;
}

.pl40 {
  padding-left: 40px !important;
}

.pl45 {
  padding-left: 45px !important;
}

.pl50 {
  padding-left: 50px !important;
}

.pl55 {
  padding-left: 55px !important;
}

.pl60 {
  padding-left: 60px !important;
}

.pl65 {
  padding-left: 65px !important;
}

.pl70 {
  padding-left: 70px !important;
}

.pl75 {
  padding-left: 75px !important;
}

.pl80 {
  padding-left: 80px !important;
}

.pl85 {
  padding-left: 85px !important;
}

.pl90 {
  padding-left: 90px !important;
}

.pl95 {
  padding-left: 95px !important;
}

.pl100 {
  padding-left: 100px !important;
}

/* img */
img {
  vertical-align: bottom;
}

.fs10 {
  font-size: 10px !important;
}

.fs11 {
  font-size: 11px !important;
}

.fs12 {
  font-size: 12px !important;
}

.fs13 {
  font-size: 13px !important;
}

.fs14 {
  font-size: 14px !important;
}

.fs15 {
  font-size: 15px !important;
}

.fs16 {
  font-size: 16px !important;
}

.fs17 {
  font-size: 17px !important;
}

.fs18 {
  font-size: 18px !important;
}

.fs19 {
  font-size: 19px !important;
}

.fs20 {
  font-size: 20px !important;
}

.fs21 {
  font-size: 21px !important;
}

.fs22 {
  font-size: 22px !important;
}

.fs23 {
  font-size: 23px !important;
}

.fs24 {
  font-size: 24px !important;
}

.fs25 {
  font-size: 25px !important;
}

.fs26 {
  font-size: 26px !important;
}

/* /////////////////////////////
    base
///////////////////////////// */
body {
  color: #33322f;
  font-size: 14px;
  font-family: Helvetica, "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
  line-height: 1.8;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  background: url("../images/base/bg.gif") repeat 0 0;
}

a {
  color: #33322f;
}
a:hover {
  text-decoration: none;
}

ul, li {
  list-style: none;
}

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

input {
  border: none;
  display: block;
}

@media screen and (max-width: 1140px) {
  *, *::after, *::before {
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
  }
}
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -moz-box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir="rtl"] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-dots {
  width: 100%;
  height: 10px;
  position: absolute;
  bottom: 10px;
  left: 0;
  text-align: center;
  z-index: 1;
}
.slick-dots li {
  display: inline-block;
  vertical-align: top;
  margin: 0 5px;
  height: 10px;
}
.slick-dots li button {
  width: 10px;
  height: 0;
  padding: 0;
  padding-top: 10px;
  overflow: hidden;
  cursor: pointer;
  border: none;
  background-color: #f7f7f7;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  border-radius: 10px;
  -moz-appearance: none;
  -webkit-appearance: none;
}
.slick-dots li.slick-active button {
  background-color: #09872b;
}

.site-train .slick-dots li.slick-active button {
  background-color: #14a94b;
}

.site-bus .slick-dots li.slick-active button {
  background-color: #f57f31;
}

.site-tourism .slick-dots li.slick-active button {
  background-color: #1e5e86;
}

.site-estate .slick-dots li.slick-active button {
  background-color: #2fa6dd;
}

.site-goods .slick-dots li.slick-active button {
  background-color: #a4c54c;
}

.site-side-navigation {
  width: 80px;
  position: fixed;
  left: 0;
  top: 0;
  background-color: #fff;
  box-shadow: 1px 0px 2px 0px rgba(0, 0, 0, 0.12);
  overflow: hidden;
  height: 100%;
}
.site-side-navigation ul li {
  border-bottom: 1px solid #e2e2e2;
}
.site-side-navigation ul li a {
  display: block;
  height: 80px;
  color: #33322f;
  text-decoration: none;
  text-align: center;
  font-size: 12px;
  letter-spacing: 0;
  line-height: 1.4;
  position: relative;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.site-side-navigation ul li a:hover {
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.site-side-navigation ul li a span {
  width: 100%;
  display: block;
  position: absolute;
  left: 0;
  bottom: 13px;
  line-height: 1.2em;
}
.site-side-navigation ul li a:before {
  content: "";
  display: block;
  width: 28px;
  height: 28px;
  position: absolute;
  left: 50%;
  top: 18px;
  margin-left: -14px;
  background: url("../images/base/icon-side.png") no-repeat;
}
.site-side-navigation ul li a:hover {
  background-color: #f7f7f7;
}
.site-side-navigation ul li.all a span {
  bottom: 12px;
}
.site-side-navigation ul li.all a:before {
  top: 22px;
  background-position: 0 0;
}
.site-side-navigation ul li.train a:before {
  background-position: 0 -74px;
}
.site-side-navigation ul li.bus a:before {
  background-position: 0 -155px;
}
.site-side-navigation ul li.tourism span {
  bottom: 6px;
  font-size: 11px;
  letter-spacing: -1px;
}
.site-side-navigation ul li.tourism a:before {
  top: 11px;
  background-position: 0 -226px;
}
.site-side-navigation ul li.ticket a span {
  bottom: 5px;
}
.site-side-navigation ul li.ticket a:before {
  background-image: url("../images/top/icon-train-ticket.png");
  background-size: auto 18px;
}
.site-side-navigation ul li.estate span {
  bottom: 6px;
}
.site-side-navigation ul li.estate a:before {
  top: 12px;
  background-position: 0 -313px;
}
.site-side-navigation ul li.goods span {
  bottom: 15px;
}
.site-side-navigation ul li.goods a:before {
  top: 18px;
  background-position: 0 -393px;
}
.site-side-navigation ul li.company a span {
  bottom: 6px;
}
.site-side-navigation ul li.company a:before {
  top: 10px;
  background-position: 0 -467px;
}
@media screen and (max-width: 640px) {
  .site-side-navigation {
    display: none;
    position: relative;
    width: 100%;
    z-index: 1100;
  }
  .site-side-navigation ul {
    display: flex;
  }
  .site-side-navigation ul li {
    width: 100px;
  }
  .site-side-navigation ul li a {
    padding-top: 45px;
  }
}

.site-header-navigation {
  background-color: #33322f;
  color: #fff;
}
.site-header-navigation ul {
  text-align: right;
  font-size: 0;
}
.site-header-navigation ul li {
  display: inline-block;
  vertical-align: top;
  margin-left: 20px;
  font-size: 12px;
  margin-top: 5px;
  margin-bottom: 5px;
}
.site-header-navigation ul li a {
  color: #fff;
  text-decoration: none;
}
.site-header-navigation ul li a:hover {
  text-decoration: underline;
}
.site-header-navigation ul li .search-input-text {
  display: none;
}
.site-header-navigation ul li.search {
  width: 32px;
  height: 0;
  padding-top: 32px;
  position: relative;
  margin-top: 0;
  margin-bottom: 0;
  cursor: pointer;
}
.site-header-navigation ul li.search .search-btn {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: #fff;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.site-header-navigation ul li.search .search-btn:hover {
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.site-header-navigation ul li.search .search-btn:hover {
  background-color: #f7f7f7;
}
.site-header-navigation ul li.search .search-btn a {
  display: block;
  background-color: #d8c9a0;
}
.site-header-navigation ul li.search .search-btn a:after {
  content: "";
  display: block;
  position: absolute;
  width: 17px;
  height: 17px;
  top: 50%;
  left: 50%;
  margin-top: -8px;
  margin-left: -8px;
  background: url("../images/base/icon-search-h.png") no-repeat 0 0;
}
.site-header-navigation ul li.search .search-box {
  display: none;
  width: 300px;
  position: absolute;
  top: 42px;
  right: 0;
  background-color: #fff;
  padding: 10px;
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.15);
  z-index: 10;
}
.site-header-navigation ul li.search.show .search-box {
  display: block;
}
@media screen and (max-width: 640px) {
  .site-header-navigation {
    display: none;
  }
}

.site-header-navigation--ja {
  background-color: #fff;
  color: #fff;
}
.site-header-navigation--ja ul li {
  display: inline-block;
  vertical-align: top;
  margin-left: 30px;
  font-size: 14px;
  letter-spacing: 0.1em;
  margin-top: 0;
  margin-bottom: 0;
}
.site-header-navigation--ja ul li a {
  color: #333;
  display: block;
  font-weight: bold;
  text-decoration: none;
  line-height: 30px;
  text-decoration: none;
}
.site-header-navigation--ja ul li a:hover {
  text-decoration: underline;
}
.site-header-navigation--ja ul li.search {
  width: 40px;
  padding-top: 30px;
  margin-left: 0;
}
.site-header-navigation--ja ul li.search .search-btn {
  background-color: #fff;
}
.site-header-navigation--ja ul li.search .search-btn a:after {
  background: url("../images/base/icon-search-h@2x.png") no-repeat 0 0;
  background-size: auto 18px;
}
.site-header-navigation--ja ul li.search .search-box {
  top: 32px;
}

.gsc-control-cse {
  border: none !important;
  padding: 0 !important;
  background-color: transparent !important;
}

form.gsc-search-box,
table.gsc-search-box {
  margin-bottom: 0 !important;
}

input.gsc-search-button,
input.gsc-search-button:hover,
input.gsc-search-button:focus {
  background-color: #09872b !important;
  color: #fff !important;
  border: none !important;
}

.site-footer {
  position: relative;
}
.site-footer a {
  color: #fff;
}

.site-footer-pagetop {
  width: 56px;
  position: absolute;
  z-index: 1;
  top: -45px;
  right: 25px;
  -moz-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.site-footer-pagetop a {
  display: block;
  width: 56px;
  height: 0;
  padding-top: 80px;
  overflow: hidden;
  background: url("../images/base/pagetop.png") no-repeat 0 0;
}
.site-footer-pagetop:hover {
  -moz-transform: translate(0, -20px);
  -ms-transform: translate(0, -20px);
  -webkit-transform: translate(0, -20px);
  transform: translate(0, -20px);
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-footer-pagetop a {
    background-image: url("../images/base/pagetop@2x.png");
    -moz-background-size: 56px auto;
    -o-background-size: 56px auto;
    -webkit-background-size: 56px auto;
    background-size: 56px auto;
  }
}

.site-footer-main {
  position: relative;
  z-index: 2;
}

.site-footer-banner {
  background-color: #09872b;
  padding-top: 10px;
  padding-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .site-footer-banner .wrap {
    margin-left: 20px;
    margin-right: 20px;
  }
}
@media screen and (max-width: 640px) {
  .site-footer-banner .wrap {
    margin-left: 10px;
    margin-right: 10px;
  }
}

.site-footer-banner-list {
  margin-right: -20px;
  font-size: 0;
  text-align: center;
}
@media screen and (max-width: 640px) {
  .site-footer-banner-list {
    margin-left: 0;
    margin-right: 0;
  }
}

.site-footer-banner-col {
  display: inline-block;
  vertical-align: top;
  width: 235px;
  margin-right: 20px;
}
@media screen and (max-width: 1140px) {
  .site-footer-banner-col {
    width: 23%;
    margin-right: 2%;
  }
}
@media screen and (max-width: 640px) {
  .site-footer-banner-col {
    width: 48%;
    margin-left: 1%;
    margin-right: 1%;
    margin-top: 5px;
    margin-bottom: 5px;
  }
  .site-footer-banner-col img {
    width: 100%;
  }
  .site-footer-banner-col:last-child {
    margin-bottom: 0;
  }
}

.site-footer-bottom {
  padding-top: 20px;
  padding-bottom: 30px;
  background-color: #33322f;
}

.site-footer-sitemap {
  font-size: 12px;
  text-decoration: none;
}
.site-footer-sitemap:hover {
  text-decoration: underline;
}
.site-footer-sitemap ul {
  font-size: 0;
}
.site-footer-sitemap ul li {
  display: inline-block;
  vertical-align: top;
  margin-right: 15px;
  font-size: 12px;
}
.site-footer-sitemap ul li a {
  padding-left: 20px;
  line-height: 1.0;
  background: url("../images/base/icon-link-square.png") no-repeat 0 3px;
  text-decoration: none;
}
.site-footer-sitemap ul li a:hover {
  text-decoration: underline;
}
@media screen and (max-width: 640px) {
  .site-footer-sitemap {
    text-align: center;
  }
  .site-footer-sitemap ul {
    width: 100%;
    text-align: left;
  }
  .site-footer-sitemap ul li {
    text-align: left;
    margin-right: 10px;
  }
  .site-footer-sitemap ul li:nth-child(2n) {
    margin-right: 0;
  }
  .site-footer-sitemap ul li a {
    display: inline-block;
    line-height: 1.4;
    padding-right: 0;
    padding-left: 15px;
    background-position: 0 2px;
  }
}

.site-footer-logo {
  margin-top: 15px;
}
@media screen and (max-width: 640px) {
  .site-footer-logo {
    text-align: center;
    margin-left: auto;
    margin-right: auto;
  }
}

.site-footer-logo-image,
.site-footer-copyright {
  display: inline-block;
  vertical-align: top;
}
@media screen and (max-width: 640px) {
  .site-footer-logo-image,
  .site-footer-copyright {
    display: block;
  }
}

.site-footer-logo-image {
  width: 70px;
  height: 0;
  padding-top: 24px;
  margin-right: 15px;
  overflow: hidden;
  background: url("../images/base/footer-logo.png") no-repeat 0 0;
}
@media screen and (max-width: 640px) {
  .site-footer-logo-image {
    margin-bottom: 15px;
    margin-left: auto;
    margin-right: auto;
    background-image: url("../images/base/footer-logo@2x.png");
    -moz-background-size: 70px auto;
    -o-background-size: 70px auto;
    -webkit-background-size: 70px auto;
    background-size: 70px auto;
  }
}

.site-footer-copyright {
  font-size: 10px;
  color: #fff;
  line-height: 1.2;
}
@media screen and (max-width: 640px) {
  .site-footer-copyright {
    line-height: 1.6;
  }
}

/* sp only */
.sp-site-side-navigation {
  display: none;
  position: absolute;
  width: 100%;
  background-color: #fff;
}
@media screen and (max-width: 640px) {
  .nav-open .sp-site-side-navigation {
    display: block;
  }
}

.sp-site-side-navigation-menutitle {
  max-height: 54px;
  background-color: #33322f;
  color: #fff;
  text-align: center;
  padding-top: 16px;
  padding-bottom: 16px;
  font-weight: bold;
}

.sp-site-side-navigation-title {
  color: #fff;
  font-weight: bold;
  position: relative;
}
.sp-site-side-navigation-title:before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  background: url("../images/base/icon-link-circle2.png") no-repeat;
  top: 50%;
  right: 15px;
  bottom: auto;
  left: auto;
  z-index: 10;
  margin-top: -8px;
  background-position: 0 0;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .sp-site-side-navigation-title:before {
    background-image: url("../images/base/icon-link-circle2@2x.png");
    -moz-background-size: 15px auto;
    -o-background-size: 15px auto;
    -webkit-background-size: 15px auto;
    background-size: 15px auto;
  }
}
.sp-site-side-navigation-title a {
  display: block;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 20px;
  color: #fff;
  text-decoration: none;
}

.sp-site-side-navigation-menu {
  background-color: #fff;
}
.sp-site-side-navigation-menu ul {
  font-size: 0;
}
.sp-site-side-navigation-menu ul li {
  width: 50%;
  display: inline-block;
  vertical-align: top;
  font-size: 14px;
  border-right: 1px solid #e2e2e2;
  border-bottom: 1px solid #e2e2e2;
}
.sp-site-side-navigation-menu ul li a {
  display: block;
  color: #33322f;
  padding: 10px 20px 10px 30px;
  text-decoration: none;
  font-weight: bold;
  position: relative;
}
.sp-site-side-navigation-menu ul li a:before {
  content: "";
  display: block;
  width: 7px;
  height: 12px;
  position: absolute;
  top: 50%;
  left: 15px;
  margin-top: -6px;
}

.sp-site-side-navigation-block {
  color: #fff;
  margin-top: -1px;
}
.sp-site-side-navigation-block.sp-site-side-navigation-menutitle {
  margin-top: 0;
}

.sp-site-side-navigation-top .sp-site-side-navigation-title {
  background-color: #09872b;
}

.sp-site-side-navigation-train .sp-site-side-navigation-title {
  background-color: #14a94b;
}
.sp-site-side-navigation-train ul li a:before {
  background: url("../images/base/icon-link-blt.png") no-repeat;
  background-position: -1px -350px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .sp-site-side-navigation-train ul li a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}

.sp-site-side-navigation-bus .sp-site-side-navigation-title {
  background-color: #f57f31;
}
.sp-site-side-navigation-bus ul li a:before {
  background: url("../images/base/icon-link-blt.png") no-repeat;
  background-position: -1px -459px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .sp-site-side-navigation-bus ul li a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}

.sp-site-side-navigation-tourism .sp-site-side-navigation-title {
  background-color: #1e5e86;
}
.sp-site-side-navigation-tourism ul li a:before {
  background: url("../images/base/icon-link-blt.png") no-repeat;
  background-position: -1px -880px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .sp-site-side-navigation-tourism ul li a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}

.sp-site-side-navigation-estate .sp-site-side-navigation-title {
  background-color: #2fa6dd;
}
.sp-site-side-navigation-estate ul li a:before {
  background: url("../images/base/icon-link-blt.png") no-repeat;
  background-position: -1px -569px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .sp-site-side-navigation-estate ul li a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}

.sp-site-side-navigation-goods .sp-site-side-navigation-title {
  background-color: #a4c54c;
}
.sp-site-side-navigation-goods ul li a:before {
  background: url("../images/base/icon-link-blt.png") no-repeat;
  background-position: -1px -780px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .sp-site-side-navigation-goods ul li a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}

.sp-site-side-navigation-corporate .sp-site-side-navigation-title {
  background-color: #09872b;
}
.sp-site-side-navigation-corporate ul li a:before {
  background: url("../images/base/icon-link-blt.png") no-repeat;
  background-position: -1px -230px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .sp-site-side-navigation-corporate ul li a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}

.sp-site-side-navigation-langage .sp-site-side-navigation-title {
  background-color: #777777;
  display: block;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 20px;
  color: #fff;
  text-decoration: none;
}
.sp-site-side-navigation-langage .sp-site-side-navigation-title:before {
  content: normal;
}
.sp-site-side-navigation-langage ul li {
  width: 50% !important;
}
.sp-site-side-navigation-langage ul li a:before {
  background: url("../images/base/icon-link-blt.png") no-repeat;
  background-position: -1px -117px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .sp-site-side-navigation-langage ul li a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}

.sp-site-side-navigation-close {
  padding-top: 15px;
  padding-bottom: 15px;
  background-color: #33322f;
  text-align: center;
  font-weight: bold;
  cursor: pointer;
}
.sp-site-side-navigation-close span {
  padding-left: 22px;
  line-height: 1.0;
  background: url("../images/base/icon-close.png") no-repeat;
  background-position: 0 2px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .sp-site-side-navigation-close span {
    background-image: url("../images/base/icon-close@2x.png");
    -moz-background-size: 12px auto;
    -o-background-size: 12px auto;
    -webkit-background-size: 12px auto;
    background-size: 12px auto;
  }
}

.sp-site-side-navigation-btn {
  display: none;
  position: fixed;
  width: 53px;
  height: 53px;
  left: 0;
  top: 0;
  text-align: center;
  background-color: #fff;
  -moz-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  box-shadow: inset 0px -2px 0px 0px rgba(0, 0, 0, 0.1);
}
.sp-site-side-navigation-btn a {
  display: block;
  position: relative;
  line-height: 1.0;
  color: #fff;
  font-weight: bold;
  text-decoration: none;
  letter-spacing: 0;
}
.sp-site-side-navigation-btn a span {
  display: block;
  width: 30px;
  height: 3px;
  position: absolute;
  background-color: #33322f;
  left: 50%;
  margin-left: -15px;
  -moz-transition: all 0.3s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.3s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.3s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.3s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.sp-site-side-navigation-btn a span:nth-child(1) {
  top: 17px;
}
.sp-site-side-navigation-btn a span:nth-child(2) {
  top: 25px;
}
.sp-site-side-navigation-btn a span:nth-child(3) {
  top: 33px;
}
.nav-open .sp-site-side-navigation-btn {
  overflow: hidden;
}
.nav-open .sp-site-side-navigation-btn a span:nth-child(1) {
  top: 25px;
  transform: rotate(45deg);
}
.nav-open .sp-site-side-navigation-btn a span:nth-child(2) {
  left: -100px;
}
.nav-open .sp-site-side-navigation-btn a span:nth-child(3) {
  top: 25px;
  transform: rotate(-45deg);
}
@media screen and (max-width: 640px) {
  .sp-site-side-navigation-btn {
    display: block;
  }
  .nav-open .sp-site-side-navigation-btn {
    background-color: #33322f;
  }
  .nav-open .sp-site-side-navigation-btn a span {
    background-color: #fff;
  }
}
@media screen and (max-width: 640px) {
  .sp-site-side-navigation-btn {
    display: block;
  }
}

.sp-site-side-navigation-search {
  position: absolute;
  top: 0;
  right: 0;
  width: 54px;
  height: 54px;
}
.sp-site-side-navigation-search a {
  display: block;
  position: relative;
  padding-top: 100%;
}

#___gcse_0 {
  width: 100%;
  background-color: #fff;
}
#___gcse_0 .gsc-control-searchbox-only {
  margin: 10px;
}
#___gcse_0 .gsc-input-box {
  height: auto;
}
#___gcse_0 .gsib_a {
  padding-right: 0;
  padding-left: 0;
  padding-top: 0;
}
#___gcse_0 .gsib_a input {
  margin: 0 !important;
  padding: 10px !important;
  height: auto !important;
  -webkit-background-size: 130px auto !important;
  background-size: 130px auto !important;
  background-position: 10px 50% !important;
}
#___gcse_0 .gsib_b {
  display: none;
}
#___gcse_0 .gsc-search-button {
  position: relative;
  height: 40px;
}
#___gcse_0 .gsc-search-button input {
  position: relative;
  z-index: 0;
}
#___gcse_0 .gsc-search-button:before {
  content: "";
  display: block;
  width: 19px;
  height: 20px;
  position: absolute;
  top: 50%;
  right: 50%;
  margin-top: -10px;
  margin-right: -10px;
  background: url("../images/base/icon-search@2x.png") no-repeat 0 100%;
  -moz-background-size: 18px auto;
  -o-background-size: 18px auto;
  -webkit-background-size: 18px auto;
  background-size: 18px auto;
  z-index: 1;
}
#___gcse_0 .gsc-results-wrapper-overlay {
  width: 90%;
  left: 5%;
  padding: 20px;
}

.android .sp-site-side-navigation-menu ul {
  margin-right: -1px;
}

.page {
  margin-left: 80px;
}
@media screen and (max-width: 640px) {
  .page {
    margin-left: 0;
  }
}

.wrap {
  width: 1000px;
  margin-left: auto;
  margin-right: auto;
}
@media screen and (max-width: 1140px) {
  .wrap {
    width: auto;
    margin-left: 30px;
    margin-right: 30px;
  }
}
@media screen and (max-width: 640px) {
  .wrap {
    margin-left: 10px;
    margin-right: 10px;
  }
}

.contents {
  padding-top: 50px;
  padding-bottom: 100px;
}
@media screen and (max-width: 1140px) {
  .contents {
    padding-top: 30px;
    padding-bottom: 60px;
  }
}
@media screen and (max-width: 640px) {
  .contents {
    padding-top: 20px;
  }
}

.page-text {
  margin-top: 20px;
  margin-bottom: 15px;
  padding-left: 15px;
  padding-right: 15px;
}
@media screen and (max-width: 640px) {
  .page-text {
    margin-top: 10px;
    margin-bottom: 10px;
    padding-left: 0;
    padding-right: 0;
  }
}

.page-popup .page {
  margin-left: 0;
}
.page-popup .wrap {
  width: 640px;
  margin-left: auto;
  margin-right: auto;
}
.page-popup .popup-box {
  padding: 30px;
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
  border: 1px solid #e2e2e2;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .page-popup .wrap {
    width: auto;
    margin-left: 30px;
    margin-right: 30px;
  }
  .page-popup .popup-box {
    padding: 20px;
  }
  .page-popup .contents {
    padding-top: 60px;
  }
  .page-popup .news-title-main {
    font-size: 24px;
    line-height: 1.6;
  }
}

.print-btn {
  margin-top: 40px;
  text-align: center;
}
.print-btn .btn {
  padding-top: 15px;
  padding-bottom: 15px;
  padding-left: 40px;
  padding-right: 40px;
  font-size: 18px;
}
.print-btn .btn span {
  padding-left: 30px;
  background: url("../images/base/icon-print.png") no-repeat 0 50%;
}

.popup-close {
  margin-top: 40px;
  text-align: center;
}
.popup-close a {
  padding-left: 20px;
  background: url("../images/base/icon-close.png") no-repeat;
  background-position: 0 -88px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .popup-close a {
    background-image: url("../images/base/icon-close@2x.png");
    -moz-background-size: 12px auto;
    -o-background-size: 12px auto;
    -webkit-background-size: 12px auto;
    background-size: 12px auto;
  }
}

.global-header-navigation:after {
  content: "";
  display: block;
  clear: both;
}
@media screen and (max-width: 1140px) {
  .global-header-navigation .wrap {
    margin-right: 0;
    margin-left: 0;
  }
}
@media screen and (max-width: 640px) {
  .global-header-navigation {
    position: relative;
    padding-top: 10px;
    padding-bottom: 10px;
  }
  .global-header-navigation .wrap {
    margin-left: 0;
    padding-left: 53px;
  }
}

.global-header-navigation-logo {
  float: left;
}
.global-header-navigation-logo a {
  display: block;
  height: 0;
  overflow: hidden;
  background-position: 0 50%;
  background-repeat: no-repeat;
  padding-top: 57.89474%;
}
@media screen and (max-width: 1140px) {
  .global-header-navigation-logo {
    float: none;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 640px) {
  .global-header-navigation-logo {
    margin-left: 20px;
  }
  .global-header-navigation-logo a {
    padding-top: 33px;
  }
}

.global-header-navigation-menu {
  text-align: right;
}
.global-header-navigation-menu ul {
  font-size: 0;
}
.global-header-navigation-menu ul li {
  display: inline-block;
  vertical-align: top;
  font-size: 12px;
}
.global-header-navigation-menu ul li a {
  display: block;
  width: 100px;
  height: 0;
  overflow: hidden;
  padding-top: 88px;
  background-repeat: no-repeat;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  position: relative;
}
.global-header-navigation-menu ul li a:hover {
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.global-header-navigation-menu ul li a:before {
  content: "";
  display: block;
  width: 100px;
  height: 88px;
  position: absolute;
  background-repeat: no-repeat;
  left: 50%;
  margin-left: -50px;
  top: 50%;
  margin-top: -44px;
}
.global-header-navigation-menu ul li.close {
  display: none;
}
@media screen and (max-width: 1140px) {
  .global-header-navigation-menu {
    width: 100%;
    z-index: 100;
    text-align: center;
  }
  .global-header-navigation-menu ul {
    display: table;
    width: 100%;
    border-collapse: collapse;
  }
  .global-header-navigation-menu ul li {
    width: 10%;
    display: table-cell;
    vertical-align: middle;
  }
  .global-header-navigation-menu ul li a {
    width: 100%;
  }
}
@media screen and (max-width: 640px) {
  .global-header-navigation-menu {
    display: none;
    position: absolute;
    top: 52px;
    left: 0;
    width: 100%;
    z-index: 1001;
    text-align: left;
  }
  .global-header-navigation-menu ul {
    display: block;
  }
  .global-header-navigation-menu ul li {
    display: block;
    width: auto;
    border-right: none;
    border-left: none;
  }
  .global-header-navigation-menu ul li a {
    width: auto;
    height: auto;
    color: #fff;
    font-weight: bold;
    text-decoration: none;
    padding: 15px 20px;
    font-size: 14px;
  }
  .global-header-navigation-menu ul li a:before {
    display: none;
  }
  .global-header-navigation-menu ul li.close {
    display: block;
    text-align: center;
    background-color: #33322f;
    border-bottom: none !important;
  }
  .global-header-navigation-menu ul li.close a {
    padding-top: 10px;
    padding-bottom: 10px;
    color: #fff;
  }
  .global-header-navigation-menu ul li.close a span {
    padding-left: 20px;
    background: url("../images/base/icon-close.png") no-repeat;
    background-position: 0 2px;
  }
}
@media screen and (max-width: 640px) and (-webkit-min-device-pixel-ratio: 2) {
  .global-header-navigation-menu ul li.close a span {
    background-image: url("../images/base/icon-close@2x.png");
    -moz-background-size: 12px auto;
    -o-background-size: 12px auto;
    -webkit-background-size: 12px auto;
    background-size: 12px auto;
  }
}
@media screen and (max-width: 640px) {
  .lnav-open .global-header-navigation-menu {
    display: block;
  }
}

.sp-global-header-navigation-menu-btn {
  display: none;
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  font-size: 12px;
}
.sp-global-header-navigation-menu-btn a {
  display: block;
  position: relative;
  width: 100%;
  height: 100%;
  color: #fff;
  text-decoration: none;
  font-weight: bold;
  padding-right: 10px;
  padding-top: 15px;
  padding-left: 10px;
}
.sp-global-header-navigation-menu-btn a span {
  padding-left: 16px;
  background: url("../images/base/icon-link-blt-down.png") no-repeat;
  background-position: 0 4px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .sp-global-header-navigation-menu-btn a span {
    background-image: url("../images/base/icon-link-blt-down@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
@media screen and (max-width: 640px) {
  .sp-global-header-navigation-menu-btn {
    display: block;
  }
}

.pankuzu {
  padding: 15px 0;
  line-height: 1.0;
  font-size: 12px;
}
.pankuzu a {
  margin-right: 1em;
  padding-right: 1.3em;
  background: url("../images/base/icon-link-blt-thin.png") no-repeat 100% -95px;
}
@media screen and (max-width: 640px) {
  .pankuzu {
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 10px;
  }
  .pankuzu a {
    background-image: url("../images/base/icon-link-blt-thin@2x.png");
    -moz-background-size: auto 764px;
    -o-background-size: auto 764px;
    -webkit-background-size: auto 764px;
    background-size: auto 764px;
  }
}

.layout:after {
  content: "";
  display: block;
  clear: both;
}

.layout-left {
  width: 70%;
  float: left;
}
@media screen and (max-width: 1140px) {
  .layout-left {
    width: auto;
    float: none;
  }
}

.layout-right {
  width: 28%;
  float: right;
}
@media screen and (max-width: 1140px) {
  .layout-right {
    width: auto;
    float: none;
    margin-top: 20px;
  }
}

.layout-half-left {
  width: 48%;
  float: left;
}
@media screen and (max-width: 1140px) {
  .layout-half-left {
    width: auto;
    float: none;
  }
}

.layout-half-right {
  width: 48%;
  float: right;
}
@media screen and (max-width: 1140px) {
  .layout-half-right {
    width: auto;
    float: none;
    margin-top: 30px;
  }
}

.layout-triple-wrap {
  margin-left: -20px;
}
@media screen and (max-width: 640px) {
  .layout-triple-wrap {
    margin-left: 0;
  }
}

.layout-triple {
  margin-left: -20px;
  font-size: 0;
  letter-spacing: 0;
}
.layout-triple:after {
  content: "";
  display: block;
  clear: both;
}
.layout-triple .layout-item {
  width: 320px;
  margin-left: 20px;
  display: inline-block;
  vertical-align: top;
  font-size: 14px;
}
@media screen and (max-width: 1140px) {
  .layout-triple {
    margin-left: -2.8%;
  }
  .layout-triple .layout-item {
    width: 30.33333%;
    margin-left: 3%;
  }
}
@media screen and (max-width: 640px) {
  .layout-triple {
    margin-left: 0;
  }
  .layout-triple .layout-item {
    width: auto;
    margin-left: 0;
    margin-top: 2%;
    display: block;
  }
}

.layout-fourth {
  margin-left: -20px;
  font-size: 0;
  letter-spacing: 0;
}
.layout-fourth:after {
  content: "";
  display: block;
  clear: both;
}
.layout-fourth .layout-item {
  width: 235px;
  margin-left: 20px;
  display: inline-block;
  vertical-align: top;
}
@media screen and (max-width: 1140px) {
  .layout-fourth .layout-item {
    width: 22%;
    margin-left: 3%;
  }
}
@media screen and (max-width: 640px) {
  .layout-fourth {
    margin-left: 0;
  }
  .layout-fourth .layout-item {
    width: 48%;
    margin-left: 2%;
    margin-top: 2%;
  }
  .layout-fourth .layout-item:nth-child(2n-1) {
    margin-left: 0;
  }
}

.layout-two {
  margin-top: -10px;
  font-size: 0;
}
.layout-two:after {
  content: "";
  display: block;
  clear: both;
}
.layout-two .layout-item {
  width: 50%;
  display: inline-block;
  vertical-align: top;
  font-size: 14px;
}
.layout-two .layout-item > div {
  margin-top: 10px;
  margin-left: 5px;
}
.layout-two .layout-item:nth-child(2n-1) > div {
  margin-right: 5px;
  margin-left: 0;
}

.page-title {
  margin-bottom: 30px;
  padding: 20px 30px;
  background-color: #fff;
  border-top-width: 3px;
  border-top-style: solid;
  border-bottom: 1px solid #e2e2e2;
  font-size: 32px;
  font-weight: bold;
}
.page-title span {
  margin-left: 1em;
  font-size: 18px;
}
@media screen and (max-width: 1140px) {
  .page-title {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 640px) {
  .page-title {
    margin-bottom: 10px;
    padding: 5px 15px 10px;
    font-size: 24px;
  }
  .page-title span {
    display: block;
    margin-left: 0;
    font-size: 16px;
  }
  .page-title span#page-busstop-page-title-year {
    margin-left: 1em;
  }
}

.content-box-stitle {
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.0;
}
@media screen and (max-width: 640px) {
  .content-box-stitle {
    margin-bottom: 10px;
  }
}

.content-row-title {
  margin-bottom: 5px;
  font-size: 24px;
  font-weight: bold;
}
@media screen and (max-width: 640px) {
  .content-row-title {
    font-size: 18px;
  }
}

.content-row-stitle {
  margin-bottom: 10px;
  font-size: 16px;
  font-weight: bold;
}

/* bus system */
#page-busstop-page-title > div,
#page-timeschedule-page-title > div {
  line-height: 1.0;
}

#page-busstop-page-title-busstop-kana,
#page-timeschedule-page-title-busstop-kana {
  display: block;
  margin-bottom: 10px;
  margin-left: 0;
}

.content-box-rtitle {
  color: #fff;
  padding: 10px 30px;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.0;
}

.btn {
  display: inline-block;
  color: #fff;
  text-align: center;
  text-decoration: none;
  padding: 5px 20px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  box-shadow: inset 0px -2px 0px 0px rgba(0, 0, 0, 0.1);
  text-shadow: 0.5px 0.866px 0px rgba(0, 0, 0, 0.1);
}
.btn:hover {
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}

.btn-small {
  padding-top: 15px;
  font-size: 16px;
}

.btn-large {
  padding: 20px 100px;
  font-size: 18px;
  font-weight: bold;
}

.btn-maincolor {
  color: #fff !important;
  background-color: #09872b;
}
.btn-maincolor:hover {
  background-color: #129843;
}

.btn-green {
  color: #fff !important;
  background-color: #14a94b;
}
.btn-green:hover {
  background-color: #129843;
}

.btn-orange {
  color: #fff !important;
  background-color: #f57f31;
}
.btn-orange:hover {
  background-color: #d86c24;
}

.btn-blue {
  color: #fff !important;
  background-color: #2fa6dd;
}
.btn-blue:hover {
  background-color: #2a95c6;
}

.btn-pink {
  color: #fff !important;
  background-color: #ee2f60;
}
.btn-pink:hover {
  background-color: #d62a56;
}

.btn-bluegray {
  color: #fff !important;
  background-color: #1e5e86;
}
.btn-bluegray:hover {
  background-color: #1e5e86;
}

.btn-gray {
  color: #33322f !important;
  background-color: #f7f7f7;
}

a.btn-gray:hover {
  background-color: #e1e1e1;
}

.btn-white {
  display: block;
  color: #33322f;
  background-color: #fff;
  border: 1px solid #e2e2e2;
}

a.btn-white:hover {
  background-color: #f7f7f7;
}

.btn-orange_sys {
  color: #fff !important;
  background-color: #974b18;
}
.btn-orange_sys:hover {
  background-color: #f57f31;
}

.escape-map {
  margin-top: 40px;
}
.escape-map a {
  display: block;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  padding-top: 30px;
  padding-bottom: 30px;
}
@media screen and (max-width: 640px) {
  .escape-map {
    margin-top: 20px;
  }
  .escape-map a {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}

.back-btn {
  margin-top: 20px;
}
.back-btn a {
  padding-left: 15px;
}

.icon {
  padding-left: 25px;
  background-repeat: no-repeat;
}

.icon-mail {
  padding-left: 30px;
  background-image: url("../images/base/icon-mail.png");
  background-position: 0 3px;
}

.icon-link-back {
  padding-left: 20px;
}

.icon-download {
  padding-left: 30px;
  padding-top: 10px;
  padding-bottom: 10px;
  background-image: url("../images/base/icon-download.png");
  background-repeat: no-repeat;
  background-position: 0 7px;
}

.content-row {
  margin-top: 40px;
}
@media screen and (max-width: 1140px) {
  .content-row {
    margin-top: 20px;
  }
}
.content-row:first-child {
  margin-top: 0;
}
.layout-right .content-row {
  margin-top: 20px;
}
@media screen and (max-width: 640px) {
  .content-row {
    overflow: scroll;
  }
  .content-row::-webkit-scrollbar {
    display: none;
  }
}

@media screen and (max-width: 1140px) {
  .content-scroll {
    overflow: scroll;
  }
  .content-scroll::-webkit-scrollbar {
    display: none;
  }
}

.content-box {
  margin-top: 40px;
  background-color: #fff;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.content-box:first-child {
  margin-top: 0;
}
.content-row > .content-box {
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  .content-box {
    margin-top: 20px;
  }
}

.content-box-title {
  color: #fff;
  padding: 15px 30px;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.2;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.content-box-title span {
  font-size: 12px;
}
.menu-box .content-box-title, .content-box2 .content-box-title {
  font-size: 18px;
}
@media screen and (max-width: 640px) {
  .content-box-title {
    padding: 15px 10px;
    font-size: 16px;
  }
  .menu-box .content-box-title, .content-box2 .content-box-title {
    font-size: 16px;
  }
}

.content-box-inner {
  padding: 30px;
  border: 1px solid #e2e2e2;
  border-top: none;
}
@media screen and (max-width: 640px) {
  .content-box-inner {
    padding: 15px;
  }
}
.content-box-inner.content-box-inner-border {
  border-top: 1px solid #e2e2e2;
}

.content-box-link p {
  margin-bottom: 5px;
  line-height: 1.6;
}
.content-box-link p:last-child {
  margin-bottom: 0;
}
.content-box-link p a {
  padding-left: 20px;
  background: url("../images/base/icon-link-square.png") no-repeat 0 0;
  color: #33322f;
}
.content-box-link ul li {
  display: inline-block;
  vertical-align: top;
  margin-right: 20px;
}
.content-box-link ul li a {
  padding-left: 20px;
}

.content-row-text {
  margin-bottom: 20px;
}

/* ページごとのCSSに勝てないのでimportant */
.content-box-corporate .content-box-title {
  color: #fff !important;
  background-color: #09872b !important;
}

.content-box-train .content-box-title {
  color: #fff !important;
  background-color: #14a94b !important;
}

.content-box-bus .content-box-title {
  color: #fff !important;
  background-color: #f57f31 !important;
}

.content-box-estate .content-box-title {
  color: #fff !important;
  background-color: #2fa6dd !important;
}

.content-box-tourism .content-box-title {
  color: #fff !important;
  background-color: #1e5e86 !important;
}

.content-box-goods .content-box-title {
  color: #fff !important;
  background-color: #a4c54c !important;
}

.content-box-enon .content-box-title {
  color: #fff !important;
  background-color: #66c5a7 !important;
}

.content-box-pasmo .content-box-title {
  color: #fff !important;
  background-color: #eb6da5 !important;
}

.content-box {
  padding: 30px;
  border: 1px solid #e2e2e2;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
}
@media screen and (max-width: 640px) {
  .content-box {
    padding: 20px;
  }
}

.content-box-title {
  margin-bottom: 30px;
  padding-top: 0;
  padding-bottom: 20px;
  color: #33322f;
  border-bottom-width: 3px;
  border-bottom-style: solid;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
  padding-left: 0;
  text-align: center;
}

.content-box-inner {
  padding: 0;
  border: none;
}

.content-box2.content-box {
  padding: 0;
  border: none;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.content-box2 .content-box-title {
  margin-bottom: 0;
  padding: 15px;
  color: #fff;
  border-bottom: none;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.content-box2 .content-box-inner {
  padding: 30px;
  border: 1px solid #e2e2e2;
  border-top: none;
}
@media screen and (max-width: 640px) {
  .content-box2 .content-box-inner {
    padding: 20px;
  }
  .content-box2 .content-box-title {
    padding: 10px;
  }
}

.content-slide-arrow {
  display: none;
  position: relative;
  padding-left: 50px;
  padding-right: 50px;
  margin-top: 20px;
  text-align: center;
  font-size: 16px;
}
.content-slide-arrow:before, .content-slide-arrow:after {
  content: "";
  display: block;
  width: 40px;
  height: 32px;
  background: url("../images/base/sliide-arrow.png") no-repeat;
  position: absolute;
  top: 50%;
  margin-top: -16px;
}
.content-slide-arrow:before {
  left: 0;
  background-position: 0 0;
}
.content-slide-arrow:after {
  right: 0;
  background-position: -318px 0;
}
@media screen and (max-width: 1140px) {
  .content-slide-arrow.tab-l {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .content-slide-arrow.tab-p {
    display: block;
  }
}
@media screen and (max-width: 640px) {
  .content-slide-arrow {
    display: block;
  }
  .content-slide-arrow:before, .content-slide-arrow:after {
    background-image: url("../images/base/sliide-arrow@2x.png");
    -moz-background-size: auto 31px;
    -o-background-size: auto 31px;
    -webkit-background-size: auto 31px;
    background-size: auto 31px;
  }
}

.news-traffic {
  font-size: 0;
  padding: 5px;
  padding-left: 0;
  margin-bottom: 30px;
  background-color: #09872b;
}
@media screen and (max-width: 1140px) {
  .news-traffic {
    padding-left: 5px;
  }
}

.news-traffic-title,
.news-traffic-content {
  display: inline-block;
  vertical-align: middle;
  font-size: 14px;
}
@media screen and (max-width: 1140px) {
  .news-traffic-title,
  .news-traffic-content {
    display: block;
  }
}

.news-traffic-title {
  width: 17%;
  color: #fff;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 1140px) {
  .news-traffic-title {
    width: auto;
    margin-bottom: 5px;
  }
}

.news-traffic-content {
  width: 83%;
  background-color: #fff;
}
@media screen and (max-width: 1140px) {
  .news-traffic-content {
    width: auto;
  }
}

.news-traffic-content-inner {
  padding: 10px 15px;
}
.news-traffic-content-inner p {
  padding-left: 25px;
}
.news-traffic-content-inner p.ok {
  background: url("../images/base/icon-status.png") no-repeat;
  background-position: 0 5px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .news-traffic-content-inner p.ok {
    background-image: url("../images/base/icon-status@2x.png");
    -moz-background-size: 14px auto;
    -o-background-size: 14px auto;
    -webkit-background-size: 14px auto;
    background-size: 14px auto;
    background-position: 0 5px;
  }
}
.news-traffic-content-inner p.ng {
  background: url("../images/base/icon-status.png") no-repeat;
  background-position: 0 -42px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .news-traffic-content-inner p.ng {
    background-image: url("../images/base/icon-status@2x.png");
    -moz-background-size: 14px auto;
    -o-background-size: 14px auto;
    -webkit-background-size: 14px auto;
    background-size: 14px auto;
    background-position: 0 -32px;
  }
}
.news-traffic-content-inner a {
  color: #33322f;
}
@media screen and (max-width: 640px) {
  .news-traffic-content-inner {
    padding: 10px;
  }
}

.news-important {
  margin-top: 20px;
  padding: 5px;
  padding-left: 0;
  background-color: #feefef;
  font-size: 0;
}
@media screen and (max-width: 1140px) {
  .news-important {
    padding-left: 5px;
  }
}
@media screen and (max-width: 640px) {
  .news-important {
    margin-top: 10px;
  }
}

.news-important-title,
.news-important-content {
  display: inline-block;
  vertical-align: middle;
  font-size: 14px;
}
@media screen and (max-width: 1140px) {
  .news-important-title,
  .news-important-content {
    display: block;
  }
}

.news-important-title {
  width: 17%;
  color: #ee2f60;
  font-weight: bold;
  text-align: center;
}
.news-important-title span {
  padding-top: 2px;
  padding-bottom: 2px;
  padding-left: 30px;
  background: url("../images/base/icon-information.png") no-repeat 0 0;
}
@media screen and (max-width: 1140px) {
  .news-important-title {
    width: auto;
    margin-bottom: 5px;
    text-align: center;
  }
}

.news-important-content {
  width: 83%;
  background-color: #fff;
}
@media screen and (max-width: 1140px) {
  .news-important-content {
    width: auto;
  }
}

.news-important-content-inner {
  padding: 10px 15px;
}
@media screen and (max-width: 640px) {
  .news-important-content-inner {
    padding: 10px;
  }
}

.information-box {
  position: relative;
}
.information-box > a.all {
  position: absolute;
  top: 15px;
  right: 15px;
  color: #fff;
  font-size: 13px;
  text-decoration: none;
}
.information-box > a.all:hover {
  text-decoration: underline;
}
.information-box > a.all span {
  padding-left: 20px;
  position: relative;
}
.information-box > a.all span:before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  background: url("../images/base/icon-link-circle2.png") no-repeat;
  top: 50%;
  right: "";
  bottom: "";
  left: 0;
  z-index: 10;
  margin-top: -8px;
  background-position: 0 0;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .information-box > a.all span:before {
    background-image: url("../images/base/icon-link-circle2@2x.png");
    -moz-background-size: 15px auto;
    -o-background-size: 15px auto;
    -webkit-background-size: 15px auto;
    background-size: 15px auto;
  }
}
@media screen and (max-width: 640px) {
  .information-box > a.all {
    font-size: 12px;
  }
}
.information-box.content-box {
  padding: 0;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.information-box .content-box-title {
  margin-bottom: 0;
  padding-top: 15px;
  padding-left: 25px;
  padding-bottom: 15px;
  text-align: left;
  border-bottom: none;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  color: #fff;
  background-color: #09872b;
  margin-left: -1px;
  margin-right: -1px;
  margin-top: -1px;
  font-size: 18px;
}
.information-box .content-box-inner {
  padding: 20px;
}
@media screen and (max-width: 640px) {
  .information-box .content-box-inner {
    padding-top: 10px;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.information-tab {
  padding-top: 10px;
  padding-left: 20px;
  padding-right: 20px;
}
.information-tab ul {
  font-size: 0;
  border-bottom: 1px solid #e2e2e2;
}
.information-tab ul li {
  display: inline-block;
  vertical-align: top;
  font-size: 12px;
  position: relative;
}
.information-tab ul li a {
  display: block;
  padding-left: 15px;
  padding-right: 15px;
  padding-bottom: 10px;
  padding-top: 10px;
  color: #33322f;
  text-decoration: none;
  line-height: 1.0;
}
.information-tab ul li a:after {
  content: "";
  display: block;
  width: 100%;
  height: 0;
  position: absolute;
  bottom: -2px;
  left: 0;
  background-color: #09872b;
  z-index: 1;
  -moz-transition: all 0.1s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.1s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.1s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.1s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.information-tab ul li a:after:hover {
  -moz-transition-duration: 0.1s;
  -o-transition-duration: 0.1s;
  -webkit-transition-duration: 0.1s;
  transition-duration: 0.1s;
}
.information-tab ul li a:hover:after, .information-tab ul li a.current:after {
  height: 3px;
}
.information-tab ul li.train a:after {
  background-color: #14a94b;
}
.information-tab ul li.bus a:after {
  background-color: #f57f31;
}
.information-tab ul li.tourism a:after {
  background-color: #1e5e86;
}
.information-tab ul li.estate a:after {
  background-color: #2fa6dd;
}
.information-tab ul li.goods a:after {
  background-color: #a4c54c;
}
.information-tab ul li.enon a:after {
  background-color: #66c5a7;
}
@media screen and (max-width: 640px) {
  .information-tab {
    margin-bottom: 10px;
    padding-left: 10px;
    padding-right: 10px;
  }
}

.information-list li {
  padding: 11px 10px;
  border-bottom: 1px dashed #e2e2e2;
}
.information-list li:first-child {
  padding-top: 0;
}
.information-list li:last-child {
  padding-bottom: 0;
  border-bottom: none;
}
.information-list li > div {
  display: inline-block;
  vertical-align: top;
  line-height: 1.6;
}
.information-list li .information-list-category {
  margin-right: 1em;
  padding: 3px;
  text-align: center;
  width: 60px;
  font-size: 10px;
  font-weight: bold;
  background-color: #09872b;
  vertical-align: middle;
  color: #fff;
}
.site-train .information-list li .information-list-category, .content-box-train .information-list li .information-list-category {
  background-color: #14a94b;
}
.site-bus .information-list li .information-list-category, .content-box-bus .information-list li .information-list-category {
  background-color: #f57f31;
}
.site-estate .information-list li .information-list-category, .content-box-estate .information-list li .information-list-category {
  background-color: #2fa6dd;
}
.site-tourism .information-list li .information-list-category, .content-box-tourism .information-list li .information-list-category {
  background-color: #1e5e86;
}
.site-goods .information-list li .information-list-category, .content-box-goods .information-list li .information-list-category {
  background-color: #a4c54c;
}
.site-enon .information-list li .information-list-category, .content-box-enon .information-list li .information-list-category {
  background-color: #66c5a7;
}
.information-list li .information-list-category a {
  color: #fff;
  text-decoration: none;
}
.information-list li.category-train .information-list-category {
  background-color: #14a94b;
}
.information-list li.category-bus .information-list-category {
  background-color: #f57f31;
}
.information-list li.category-tourism .information-list-category {
  background-color: #1e5e86;
}
.information-list li.category-estate .information-list-category {
  background-color: #2fa6dd;
}
.information-list li.category-goods .information-list-category {
  background-color: #a4c54c;
}
.information-list li.category-corporate .information-list-category {
  background-color: #09872b;
}
.information-list li.category-enon .information-list-category {
  background-color: #66c5a7;
}
.information-list li .information-list-date {
  width: 100px;
  font-size: 12px;
  vertical-align: middle;
}
.information-list li .information-list-title a {
  display: inline;
  vertical-align: middle;
  margin-right: 5px;
}
.information-list li .information-list-title .information-list-tag {
  display: inline;
}
.layout-left .information-list li .information-list-title {
  width: 427px;
}
@media screen and (max-width: 1140px) {
  .layout-left .information-list li .information-list-title {
    width: 100%;
    padding-top: 5px;
  }
}
.information-list li .information-list-tag {
  display: inline-block;
  vertical-align: middle;
  font-size: 0;
}
.information-list li .information-list-tag span {
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  font-size: 10px;
  margin-right: 5px;
  padding-right: 3px;
  padding-left: 12px;
  line-height: 17px;
  overflow: hidden;
  max-height: 17px;
  font-weight: bold;
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  background-image: url("../images/base/icon-tag-left.png");
  background-repeat: no-repeat;
  background-position: 0 50%;
  background-color: #d0ac49;
}
@media screen and (max-width: 640px) {
  .information-list li {
    padding: 10px;
  }
}

.pager {
  margin-top: 40px;
  text-align: center;
}
.pager .pages {
  margin-right: 20px;
}
.pager .page {
  margin-left: 0;
}
.pager span,
.pager .page,
.pager .page-numbers {
  display: inline-block;
  vertical-align: middle;
  margin: 0 5px;
  padding: 5px 10px;
  line-height: 1;
  font-size: 14px;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  border-radius: 2px;
}
.pager .page,
.pager a.page-numbers {
  color: #fff;
  text-decoration: none;
  border: 1px solid #09872b;
  background-color: #09872b;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.pager .page:hover,
.pager a.page-numbers:hover {
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.pager .page:hover,
.pager a.page-numbers:hover {
  background-color: #fff;
  color: #09872b;
}
.pager .page.next,
.pager a.page-numbers.next {
  background-color: transparent;
  color: #33322f;
  border: none;
  text-decoration: underline;
}
.pager .page.next:hover,
.pager a.page-numbers.next:hover {
  text-decoration: none;
}
.pager .nextpostslink,
.pager .previouspostslink {
  display: inline-block;
  vertical-align: middle;
  margin: 0 5px;
  padding: 5px 10px;
  line-height: 1;
  font-size: 14px;
}
.pager span {
  background-color: #fff;
  border: 1px solid #09872b;
  color: #09872b;
}
.site-train .pager .page {
  border: 1px solid #14a94b;
  background-color: #14a94b;
}
.site-train .pager .page:hover {
  color: #14a94b;
  background-color: #fff;
}
.site-train .pager span {
  border: 1px solid #14a94b;
  color: #14a94b;
}
.site-bus .pager .page {
  border: 1px solid #f57f31;
  background-color: #f57f31;
}
.site-bus .pager .page:hover {
  color: #f57f31;
  background-color: #fff;
}
.site-bus .pager span {
  border: 1px solid #f57f31;
  color: #f57f31;
}
.site-estate .pager .page {
  border: 1px solid #2fa6dd;
  background-color: #2fa6dd;
}
.site-estate .pager .page:hover {
  color: #2fa6dd;
  background-color: #fff;
}
.site-estate .pager span {
  border: 1px solid #2fa6dd;
  color: #2fa6dd;
}
.site-tourism .pager .page {
  border: 1px solid #1e5e86;
  background-color: #1e5e86;
}
.site-tourism .pager .page:hover {
  color: #1e5e86;
  background-color: #fff;
}
.site-tourism .pager span {
  border: 1px solid #1e5e86;
  color: #1e5e86;
}
.site-goods .pager .page {
  border: 1px solid #a4c54c;
  background-color: #a4c54c;
}
.site-goods .pager .page:hover {
  color: #a4c54c;
  background-color: #fff;
}
.site-goods .pager span {
  border: 1px solid #a4c54c;
  color: #a4c54c;
}
.site-enon .pager .page {
  border: 1px solid #66c5a7;
  background-color: #66c5a7;
}
.site-enon .pager .page:hover {
  color: #66c5a7;
  background-color: #fff;
}
.site-enon .pager span {
  border: 1px solid #66c5a7;
  color: #66c5a7;
}

.tourism-banner-s {
  width: 49%;
  margin-left: 1%;
  margin-right: 0;
}

.tourism-banner-s:nth-child(even) {
  margin-left: 0;
}

@media screen and (max-width: 640px) {
  .tourism-banner-s {
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 10px !important;
  }
}
.site-side-navigation {
  z-index: 1000;
}

.page {
  z-index: 999;
  position: relative;
}

.result-route-wayto-departure,
.result-route-wayto-arrival {
  position: relative;
  z-index: 11;
}

.result-route-wayto-busstop {
  z-index: 10;
}

.result-route-wayto-busstop-show a {
  position: relative;
  z-index: 2;
}
.result-route-wayto-busstop-show:before {
  z-index: 1;
}

.mod-route-form-input-candidate,
.mod-route-lookfor-overlay {
  z-index: 10;
}

/* sp only */
.sp-site-side-navigation-btn {
  z-index: 1101;
}

.sp-site-side-navigation {
  z-index: 1100;
}

.mod-route {
  font-size: 0;
}
.mod-route:after {
  content: "";
  display: block;
  clear: both;
}

.mod-route-left {
  width: 80.85106%;
  float: left;
}
@media screen and (max-width: 1140px) {
  .mod-route-left {
    width: auto;
    float: none;
  }
}

.mod-route-right {
  width: 18.08511%;
  float: right;
}
@media screen and (max-width: 1140px) {
  .mod-route-right {
    width: auto;
    float: none;
  }
}

.mod-route-form,
.mod-route-switch {
  display: inline-block;
  vertical-align: top;
}
@media screen and (max-width: 1140px) {
  .mod-route-form,
  .mod-route-switch {
    display: block;
  }
}

.mod-route-form {
  width: 46.05263%;
}
@media screen and (max-width: 1140px) {
  .mod-route-form {
    width: auto;
  }
  .mod-route-form:after {
    content: "";
    display: block;
    clear: both;
  }
}
.mod-route-form.mod-route-form-wide {
  width: 60.52632%;
}
.mod-route-form.mod-route-form-wide .mod-route-lookfor-btn {
  margin-left: 1%;
}
.mod-route-form.mod-route-form-narrow {
  width: 39.47368%;
}
@media screen and (max-width: 1140px) {
  .mod-route-form.mod-route-form-wide {
    display: inline-block;
  }
  .mod-route-form.mod-route-form-narrow {
    display: inline-block;
  }
}
@media screen and (max-width: 640px) {
  .mod-route-form.mod-route-form-wide {
    width: auto;
    display: block;
  }
  .mod-route-form.mod-route-form-narrow {
    width: auto;
    display: block;
  }
}

.mod-route-form-departure,
.mod-route-form-arrival,
.mod-route-form-time {
  border-radius: 5px;
  background-color: #f7f7f7;
}
@media screen and (max-width: 1140px) {
  .mod-route-form-departure,
  .mod-route-form-arrival,
  .mod-route-form-time {
    background-color: transparent;
  }
}

.mod-route-form-title,
.mod-route-form-input {
  display: inline-block;
  vertical-align: middle;
}
@media screen and (max-width: 640px) {
  .mod-route-form-title,
  .mod-route-form-input {
    display: block;
  }
}

.mod-route-form-title {
  width: 17.14286%;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  color: #fff;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
  text-shadow: 0.5px 0.866px 0px rgba(0, 0, 0, 0.1);
}
.mod-route-form-title label {
  display: block;
  padding: 20px 10px;
  line-height: 1.0;
  cursor: pointer;
}
@media screen and (max-width: 1140px) {
  .mod-route-form-title label {
    padding: 20px 5px;
  }
}
@media screen and (max-width: 640px) {
  .mod-route-form-title {
    width: auto;
    border-top-left-radius: 5px;
    border-top-right-radius: 5px;
    border-bottom-left-radius: 0;
  }
  .mod-route-form-title label {
    padding: 10px;
  }
}

.mod-route-form-input {
  width: 82.57143%;
  border: 1px solid #e2e2e2;
  border-left: none;
  position: relative;
}
.mod-route-form-input input {
  width: 100%;
  padding: 18px 15px 17px;
  line-height: 1.0;
  background-color: #f7f7f7;
  font-size: 14px;
  box-sizing: border-box;
  border-radius: 5px;
}
@media screen and (max-width: 640px) {
  .mod-route-form-input {
    width: auto;
    border: none;
    top: -1px;
  }
  .mod-route-form-input input {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border: 1px solid #e2e2e2;
    border-top: none;
  }
}

.mod-route-form-input-candidate {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #fff;
  border: 1px solid #e2e2e2;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  visibility: hidden;
}
.mod-route-form-input-candidate.show {
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
  visibility: visible;
}
.mod-route-form-input-candidate#waytosearch-aiu {
  height: 260px;
  overflow: scroll;
}
@media screen and (max-width: 640px) {
  .mod-route-form-input-candidate {
    display: none;
  }
}

.mod-route-overlay-list li {
  /*  padding: 5px 20px;*/
  /*aks*/
  padding: 0 0 0 5px;
  /*aks*/
  font-size: 14px;
  color: #33322f !important;
  text-decoration: none;
  cursor: pointer;
}
.mod-route-overlay-list li:nth-child(even) {
  background-color: #f7f7f7;
}
.mod-route-overlay-list li:hover {
  background-color: #f4eacc;
}

.mod-route-switch {
  width: 6%;
  margin-left: 0.93333%;
  margin-right: 0.93333%;
  margin-top: 0.93333%;
}
.mod-route-switch a {
  display: block;
  width: 100%;
  height: 40px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  box-shadow: inset 0px -2px 0px 0px rgba(0, 0, 0, 0.1);
  background: #f7f7f7 url("../images/base/icon-switch.png") no-repeat 50% 50%;
}
@media screen and (max-width: 1140px) {
  .mod-route-switch {
    margin-left: auto;
    margin-right: auto;
    margin-top: 10px;
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 640px) {
  .mod-route-switch {
    width: 40px;
  }
  .mod-route-switch a {
    background-image: url("../images/base/icon-switch@2x.png");
    -moz-background-size: 20px auto;
    -o-background-size: 20px auto;
    -webkit-background-size: 20px auto;
    background-size: 20px auto;
  }
}

.mod-route-lookfor {
  margin-top: 10px;
  margin-left: -2.3%;
  position: relative;
}
.mod-route-lookfor .mod-route-lookfor-btn {
  display: inline-block;
  vertical-align: top;
  width: 31%;
  margin-left: 2.3%;
}
.mod-route-lookfor .mod-route-lookfor-btn a {
  display: block;
  padding: 7px 0;
  line-height: 1.0;
  font-size: 12px;
  letter-spacing: 0;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  box-shadow: inset 0px -2px 0px 0px rgba(0, 0, 0, 0.1);
}
.mod-route-lookfor .mod-route-lookfor-btn a span {
  font-weight: bold;
}
.mod-route-lookfor.mod-route-mostused {
  margin-left: 0;
}
@media screen and (max-width: 640px) {
  .mod-route-lookfor {
    display: none;
  }
}

.mod-route-lookfor-overlay {
  padding-top: 5px;
  font-size: 14px;
  position: absolute;
  top: 100%;
  left: 10px;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  visibility: hidden;
  /*aks>>>>>>>>>>*/
  /*aks<<<<<<<<<<*/
}
.mod-route-lookfor-overlay.show {
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
  visibility: visible;
}
.mod-route-lookfor-overlay .mod-route-lookfor-overlay-aiu {
  display: none;
}
.mod-route-lookfor-overlay .mod-route-lookfor-overlay-aiu.show {
  display: block;
}
@media screen and (max-width: 1140px) {
  .mod-route-lookfor-overlay {
    left: inherit;
    right: 0;
  }
}

/*aks>>>>>>>>>>*/
/*aks<<<<<<<<<<*/
.mod-route-lookfor-overlay-fukidashi {
  position: relative;
}
.mod-route-lookfor-overlay-fukidashi:after {
  content: "";
  display: block;
  width: 15px;
  height: 12px;
  position: absolute;
  top: -11px;
  background-position: 0 0;
  background-repeat: no-repeat;
  background-image: url("../images/base/icon-fuki-top.png");
}
.mod-route-lookfor-overlay-fukidashi#waytosearch-aiu:after {
  left: 13%;
}
.mod-route-lookfor-overlay-fukidashi#waytosearch-spot:after {
  top: -12px;
  left: 65%;
}

.mod-route-form-departure .mod-route-form-title {
  background-color: #14a94b;
}

.mod-route-form-arrival .mod-route-form-title {
  background-color: #2fa6dd;
}

.mod-route-form-time .mod-route-form-title {
  width: 11.18421%;
  background-color: #14a94b;
}
.mod-route-form-time .mod-route-form-input {
  width: 88.68421%;
}
@media screen and (max-width: 640px) {
  .mod-route-form-time .mod-route-form-title {
    width: auto;
  }
  .mod-route-form-time .mod-route-form-input {
    width: auto;
  }
}

.mod-route-mostused p,
.mod-route-mostused .mod-route-lookfor-btn {
  display: inline-block;
  vertical-align: middle;
  width: auto;
  font-size: 12px;
}
.mod-route-mostused p a,
.mod-route-mostused .mod-route-lookfor-btn a {
  display: inline-block;
  padding-left: 10px;
  padding-right: 10px;
  font-size: 12px;
}
@media screen and (max-width: 1140px) {
  .mod-route-mostused {
    margin-left: 0;
  }
}

.mod-route-option {
  margin-top: 10px;
  font-size: 12px;
}
.mod-route-option select {
  margin-right: 5px;
}
@media screen and (max-width: 1140px) {
  .mod-route-option {
    margin-top: 20px;
  }
}
@media screen and (max-width: 640px) {
  .mod-route-option select {
    margin-right: 0;
  }
}

.mod-route-date-title {
  display: inline;
  font-size: 12px;
  font-weight: bold;
}
@media screen and (max-width: 640px) {
  .mod-route-date-title {
    display: block;
  }
}

.mod-route-date,
.mod-route-d_or_a {
  display: inline-block;
  vertical-align: top;
}

.mod-route-date {
  margin-right: 10px;
}

.mod-route-d_or_a label {
  display: inline-block;
  vertical-align: top;
  margin-right: 5px;
  cursor: pointer;
}
.mod-route-d_or_a label input {
  display: inline;
}
@media screen and (max-width: 640px) {
  .mod-route-d_or_a {
    margin-top: 10px;
    display: block;
  }
  .mod-route-d_or_a:after {
    content: "";
    display: block;
    clear: both;
  }
  .mod-route-d_or_a label {
    display: block;
    width: 50%;
    float: left;
    margin-right: 0;
  }
}

.mod-route-btn .btn {
  width: 100%;
  padding: 51px 0;
  line-height: 1.0;
  font-size: 18px;
  font-weight: bold;
}
.mod-route-btn .btn span {
  padding-left: 30px;
  background: url("../images/base/icon-search.png") no-repeat 0 -115px;
}
@media screen and (max-width: 1140px) {
  .mod-route-btn .btn {
    padding: 20px 0;
  }
}
@media screen and (max-width: 1140px) {
  .mod-route-btn {
    margin-top: 20px;
  }
}

@media screen and (max-width: 1140px) {
  .mod-route-schedule .mod-route-date {
    margin-top: 20px;
    text-align: center;
  }
}
.mod-route-schedule .mod-route-date-month {
  margin-right: 10px;
  font-size: 11px;
}
.mod-route-schedule .mod-route-date-day {
  font-size: 11px;
}
.mod-route-schedule .mod-route-btn {
  margin-top: 5.98802%;
}
.mod-route-schedule .mod-route-btn .btn {
  padding: 22px 0;
}
@media screen and (max-width: 1140px) {
  .mod-route-schedule .mod-route-btn {
    margin-top: 20px;
  }
}
.mod-route-schedule .mod-route-switch {
  display: none;
}

.mod-route-fare {
  margin-top: 20px;
}
.mod-route-fare .mod-route-form-select {
  overflow: hidden;
  height: 52px;
}
.mod-route-fare .mod-route-form-select select {
  width: 100%;
  padding: 17px 20px;
  border: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
  cursor: pointer;
  font-size: 16px;
  line-height: 1.0;
}
.mod-route-fare .mod-route-form-title {
  width: 20%;
}
@media screen and (max-width: 640px) {
  .mod-route-fare .mod-route-form-title {
    width: auto;
  }
}
.mod-route-fare .mod-route-form-input {
  width: 79.71429%;
}
@media screen and (max-width: 640px) {
  .mod-route-fare .mod-route-form-input {
    width: auto;
  }
}
.mod-route-fare .mod-route-btn .btn {
  padding: 18px 0;
}
@media screen and (max-width: 640px) {
  .mod-route-fare .mod-route-form-select {
    background-color: #f7f7f7;
  }
}

.aiu-table-wrap {
  overflow: scroll;
  background-color: #fff;
}

.aiu-table {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}

.aiu-table-row {
  display: table-row;
}

.aiu-table-td {
  display: table-cell;
  vertical-align: middle;
  padding: 0 15px;
  height: 34px;
  text-align: center;
  line-height: 1.0;
  border: 1px solid #e2e2e2;
  cursor: pointer;
}
.aiu-table-td:hover {
  background-color: #f7f7f7;
}
.aiu-table-td.aiu-table-td-delete {
  padding: 0;
  font-size: 12px;
  background-color: #f7f7f7;
}
.aiu-table-td.aiu-table-td-delete:hover {
  background-color: #e2e2e2;
}
@media screen and (max-width: 1140px) {
  .aiu-table-td {
    height: 50px;
    font-size: 16px;
  }
}
@media screen and (max-width: 640px) {
  .aiu-table-td {
    font-size: 24px;
  }
}

.aiu-candidate {
  background-color: #fff;
  border: 1px solid #e2e2e2;
  border-top: none;
}
@media screen and (max-width: 640px) {
  .aiu-candidate {
    margin-bottom: 10px;
  }
}

.aiu-candidate-inner {
  padding: 10px 15px;
}
.aiu-candidate-inner p {
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}
.aiu-candidate-inner a {
  box-shadow: none;
  font-size: 14px;
}
@media screen and (max-width: 640px) {
  .aiu-candidate-inner {
    padding-bottom: 15px;
  }
}

.aiu-table-wrap .aiu-candidate {
  border-left: 1px solid #e2e2e2;
  border-right: 1px solid #e2e2e2;
  border-bottom: none;
  border-top: none;
}

.aiu-candidate-title {
  padding: 10px 15px;
  color: #fff;
  font-weight: bold;
}

.aiu-candidate-dep .aiu-candidate-title {
  background-color: #14a94b;
}

.aiu-candidate-arr {
  border-top: 1px solid #e2e2e2;
}
.aiu-candidate-arr .aiu-candidate-title {
  background-color: #2fa6dd;
}

.aiu-candidate-search {
  margin-top: 10px;
}

.search-by-map-iframe {
  height: 500px;
}
@media screen and (max-width: 640px) {
  .search-by-map-iframe {
    margin-left: 20px;
    margin-right: 20px;
  }
}

.search-by-map-popular {
  margin-top: 20px;
  text-align: center;
}
.search-by-map-popular a {
  display: inline-block;
  vertical-align: top;
  margin-top: 10px;
}

.mod-route-lookfor-sp {
  display: none;
  position: relative;
}
@media screen and (max-width: 640px) {
  .mod-route-lookfor-sp {
    display: block;
    margin-top: 10px;
  }
  .mod-route-lookfor-sp:after {
    content: "";
    display: block;
    clear: both;
  }
}

.mod-route-lookfor-sp-utility {
  width: 20%;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 640px) {
  .mod-route-lookfor-sp-utility {
    float: right;
  }
}
.mod-route-lookfor-sp-utility .btn {
  display: block;
  padding: 0;
  padding-top: 15px;
  padding-bottom: 25px;
  font-size: 12px;
  line-height: 1.2;
  position: relative;
}
.mod-route-lookfor-sp-utility .btn:before {
  content: "";
  display: block;
  width: 12px;
  height: 8px;
  position: absolute;
  background: url("../images/base/icon-link-blt-down.png") no-repeat;
  top: "";
  right: "";
  bottom: 10px;
  left: 50%;
  margin-left: -6px;
  background-position: 0 -100px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .mod-route-lookfor-sp-utility .btn:before {
    background-image: url("../images/base/icon-link-blt-down@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.mod-route-lookfor-sp-utility .btn:before {
  -moz-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.util-open .mod-route-lookfor-sp-utility .btn span:before {
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.mod-route-lookfor-sp-box {
  width: 80%;
  margin-right: 10px;
  font-size: 12px;
  border: 1px solid #e2e2e2;
}
@media screen and (max-width: 640px) {
  .mod-route-lookfor-sp-box {
    width: 78%;
    margin-right: 0;
    float: left;
  }
}

.mod-route-lookfor-sp-row {
  border-top: 1px solid #e2e2e2;
}
.mod-route-lookfor-sp-row:first-child {
  border-top: none;
}

.mod-route-lookfor-sp-btn {
  padding: 10px;
  font-weight: bold;
  line-height: 1.0;
  cursor: pointer;
  position: relative;
}
.mod-route-lookfor-sp-btn:before {
  content: "";
  display: block;
  width: 12px;
  height: 8px;
  position: absolute;
  background: url("../images/base/icon-link-blt-down.png") no-repeat;
  top: 50%;
  right: 10px;
  bottom: auto;
  left: auto;
  margin-top: -4px;
  background-position: 0 -400px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .mod-route-lookfor-sp-btn:before {
    background-image: url("../images/base/icon-link-blt-down@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.mod-route-lookfor-sp-btn:before {
  -moz-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.list-open .mod-route-lookfor-sp-btn:before {
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.mod-route-lookfor-sp-list {
  padding: 10px;
  border-top: 1px solid #e2e2e2;
  display: none;
}
.mod-route-lookfor-sp-list a {
  display: inline-block;
  margin-right: 10px;
}
.list-open .mod-route-lookfor-sp-list {
  display: block;
}

.sp-utility {
  display: none;
  position: absolute;
  top: 80px;
  left: 0;
  width: 100%;
  background-color: #fff;
  font-size: 14px;
  border: 1px solid #e2e2e2;
  z-index: 100;
  box-shadow: 0 0 10px 0 rgba(0, 0, 0, 0.1);
}
.util-open .sp-utility {
  display: block;
}

.sp-utility-row {
  border-bottom: 1px solid #e2e2e2;
}
.sp-utility-row:last-child {
  border-bottom: none;
}
.sp-utility-row a {
  display: block;
  padding-left: 15px;
  padding-right: 20px;
  padding-top: 10px;
  padding-bottom: 10px;
  text-decoration: none;
  color: #33322f !important;
  position: relative;
}
.sp-utility-row a:before {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  position: absolute;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  top: 50%;
  right: 15px;
  bottom: auto;
  left: auto;
  margin-top: -5px;
  background-position: -1px -460px;
}
@media screen and (max-width: 640px) {
  .sp-utility-row a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}
.sp-utility-row a span {
  padding-left: 20px;
  background-image: url("../images/base/icon-util.png");
  background-repeat: no-repeat;
  -moz-background-size: 13px auto;
  -o-background-size: 13px auto;
  -webkit-background-size: 13px auto;
  background-size: 13px auto;
}
.sp-utility-row.sp-utility-current a span {
  background-position: 0 2px;
}
.sp-utility-row.sp-utility-aiu a span {
  background-position: 0 -58px;
}
.sp-utility-row.sp-utility-station a span {
  background-position: 0 -117px;
}
.sp-utility-row.sp-utility-sights a span {
  background-position: 0 -179px;
}

.sp-utility-sights,
.sp-utility-row-close {
  border-bottom: none;
}

.sp-utility-row-close {
  text-align: center;
}
.sp-utility-row-close a {
  color: #fff !important;
  background-color: #33322f;
}
.sp-utility-row-close a:before {
  display: none;
}
.sp-utility-row-close a span {
  font-size: 12px;
  padding-left: 20px;
  background: url("../images/base/icon-close.png") no-repeat;
  background-position: 0 2px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .sp-utility-row-close a span {
    background-image: url("../images/base/icon-close@2x.png");
    -moz-background-size: 12px auto;
    -o-background-size: 12px auto;
    -webkit-background-size: 12px auto;
    background-size: 12px auto;
  }
}

.bus-station-list {
  border: 1px solid #e2e2e2;
}
.bus-station-list ul li {
  border-bottom: 1px solid #e2e2e2;
}
.bus-station-list ul li a {
  display: block;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 15px;
  padding-right: 15px;
  text-decoration: none;
}
.bus-station-list ul li a:hover {
  background-color: #f7f7f7;
}
.bus-station-list ul li:last-child {
  border-bottom: none;
}
.bus-station-list ul li ul {
  display: none;
  border-top: 1px solid #e2e2e2;
}
.bus-station-list ul li ul li a {
  padding-left: 34px;
  background: url("../images/bus/icon-busstop-orange.png") no-repeat 15px 10px;
  -moz-background-size: auto 25px;
  -o-background-size: auto 25px;
  -webkit-background-size: auto 25px;
  background-size: auto 25px;
  position: relative;
}
.bus-station-list ul li ul li a:before {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  position: absolute;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  top: 50%;
  right: 20px;
  bottom: auto;
  left: auto;
  margin-top: -5px;
  background-position: -1px -460px;
}
@media screen and (max-width: 640px) {
  .bus-station-list ul li ul li a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}

.bus-station-list-title {
  padding: 10px 15px;
  font-weight: bold;
  background-color: #f57f31;
  color: #fff;
}

.bus-station-list-row > ul > li > a {
  position: relative;
}
.bus-station-list-row > ul > li > a:before {
  content: "";
  display: block;
  width: 12px;
  height: 8px;
  position: absolute;
  background: url("../images/base/icon-link-blt-down.png") no-repeat;
  top: 50%;
  right: 20px;
  bottom: auto;
  left: auto;
  margin-top: -4px;
  background-position: 0 -400px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .bus-station-list-row > ul > li > a:before {
    background-image: url("../images/base/icon-link-blt-down@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.bus-station-list-row > ul > li > a:before {
  -moz-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.2s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.bus-station-list-row > ul > li.open ul {
  display: block;
}
.bus-station-list-row > ul > li.open > a {
  background-color: #f7f7f7;
  font-weight: bold;
}
.bus-station-list-row > ul > li.open > a:before {
  -moz-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg);
}

.result-route {
  border: 1px solid #e2e2e2;
  background-color: #fff;
}

.result-route-inner:after {
  content: "";
  display: block;
  clear: both;
}

.result-route-left {
  width: 50%;
  float: left;
}
@media screen and (max-width: 1140px) {
  .result-route-left {
    width: 100%;
    float: none;
  }
}

.result-route-time {
  display: table;
  width: 100%;
  border-bottom: 1px solid #e2e2e2;
}

.result-route-time-number,
.result-route-time-text {
  display: table-cell;
  vertical-align: middle;
}

.result-route-time-number {
  width: 13%;
  color: #fff;
  background-color: #ee2f60;
  font-size: 18px;
  text-align: center;
}

.result-route-time-text {
  width: 87%;
  padding: 25px;
  background-color: #f7f7f7;
}
@media screen and (max-width: 640px) {
  .result-route-time-text {
    padding: 15px;
  }
}

.result-route-time-text-fromto {
  margin-bottom: 5px;
}

.result-route-time-text-fromto-time,
.result-route-time-text-fromto-icon {
  display: inline-block;
  vertical-align: middle;
}

.result-route-time-text-fromto-time {
  font-size: 24px;
}
.result-route-time-text-fromto-time .min {
  font-size: 18px;
}

.result-route-time-text-fromto-icon span,
.result-icon-description span {
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
  width: 26px;
  height: 26px;
  font-size: 12px;
  color: #fff;
  border-radius: 50%;
  text-align: center;
  line-height: 26px;
  font-weight: bold;
  letter-spacing: 0;
}
.result-route-time-text-fromto-icon span.fast,
.result-icon-description span.fast {
  background-color: #2fa6dd;
}
.result-route-time-text-fromto-icon span.easy,
.result-icon-description span.easy {
  background-color: #14a94b;
}
.result-route-time-text-fromto-icon span.highway,
.result-icon-description span.highway {
  background-color: #ee2f60;
}
@media screen and (max-width: 640px) {
  .result-route-time-text-fromto-icon span,
  .result-icon-description span {
    width: 22px;
    height: 22px;
    line-height: 22px;
  }
}

.result-route-time-text-cap {
  font-size: 12px;
}

.result-icon-description {
  text-align: right;
  margin-bottom: 10px;
}
.result-icon-description p {
  display: inline-block;
  vertical-align: top;
  font-size: 12px;
  margin-right: 10px;
  line-height: 1;
}
.result-icon-description p span {
  margin-right: 0;
}
.result-icon-description p i {
  display: inline-block;
  vertical-align: middle;
}
@media screen and (max-width: 640px) {
  .result-icon-description {
    text-align: center;
    margin-top: 20px;
    margin-bottom: 5px;
  }
}

.result-route-navi {
  display: none;
  margin-bottom: 20px;
  border-top: 1px solid #e2e2e2;
}
@media screen and (max-width: 1140px) {
  .result-route-navi {
    display: block;
  }
}
.result-route-navi a {
  display: block;
  text-decoration: none;
  position: relative;
}
.result-route-navi a:before {
  content: "";
  display: block;
  width: 12px;
  height: 8px;
  position: absolute;
  background: url("../images/base/icon-link-blt-down.png") no-repeat;
  top: 50%;
  right: 20px;
  bottom: auto;
  left: auto;
  margin-top: -4px;
  background-position: 0 -400px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .result-route-navi a:before {
    background-image: url("../images/base/icon-link-blt-down@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.result-route-navi .result-route-time-text-fromto {
  margin-bottom: 0;
}
.result-route-navi .result-route-time-number {
  width: 10%;
}
.result-route-navi .result-route-time-text {
  width: 89%;
}
.result-route-navi .result-route-time-text {
  padding: 15px;
  background-color: #fff;
}
.result-route-navi .result-route-time-text-fromto-time {
  margin-bottom: 0;
  font-size: 18px;
}
.result-route-navi .result-route-time-text-fromto-time .min {
  font-size: 16px;
}
.result-route-navi .result-route-time-text-fromto-icon {
  margin-left: 10px;
}
.result-route-navi .result-route-time-text-fromto-icon span {
  font-size: 11px;
}
.result-route-navi .result-route-time-text-cap {
  font-size: 11px;
}

.result-route-wayto-row {
  padding: 25px;
  border-bottom: 1px solid #e2e2e2;
}

.result-route-wayto-icon,
.result-route-wayto-title {
  display: inline-block;
  vertical-align: middle;
}

.result-route-wayto-icon {
  width: 40px;
  height: 40px;
  margin-left: 5px;
  text-align: center;
  line-height: 40px;
  color: #fff;
  font-weight: bold;
  border-radius: 5px;
}

.result-route-wayto-departure .result-route-wayto-icon {
  background-color: #14a94b;
}

.result-route-wayto-arrival .result-route-wayto-icon {
  background-color: #2fa6dd;
}
.result-route-wayto-arrival.result-route-wayto-row {
  border-bottom: none;
}

.result-route-wayto-title {
  line-height: 1.0;
  margin-left: 20px;
  font-size: 18px;
  font-weight: bold;
}
.result-route-wayto-title .time {
  margin-right: 1em;
}

.result-route-wayto-busstop {
  position: relative;
}

.result-route-wayto-busstop-show,
.result-route-wayto-busstop-line {
  display: inline-block;
  vertical-align: middle;
}

.result-route-wayto-busstop-show {
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
}
.result-route-wayto-busstop-show a {
  display: block;
  color: #33322f;
  text-decoration: none;
  background: url("../images/bus/icon-route-open.png") no-repeat 0 0;
}
.result-route-wayto-busstop-show.opened a {
  background-position: 0 100%;
}
.result-route-wayto-busstop-show:before {
  content: "";
  display: block;
  width: 3px;
  background-color: #e2e2e2;
  position: absolute;
  top: -26px;
  bottom: -26px;
  left: 50px;
  margin-left: -1px;
}

.result-route-wayto-busstop-line {
  margin-left: 15px;
}
.result-route-wayto-busstop-line .text {
  font-weight: bold;
}
.result-route-wayto-busstop-line .fare {
  margin-top: 5px;
  font-size: 12px;
}

.result-route-wayto-busstop-list {
  padding: 10px 25px 0 0;
  margin-top: 15px;
  margin-left: 70px;
  border-top: 1px solid #e2e2e2;
  display: none;
}

.result-route-wayto-busstop-row {
  padding: 5px 0;
}
.result-route-wayto-busstop-row a {
  color: #33322f;
  text-decoration: none;
}
.result-route-wayto-busstop-row a:hover {
  text-decoration: underline;
}

.result-route-right {
  width: 50%;
  float: right;
  position: relative;
  padding-top: 46%;
}
.result-route-right:before {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background-color: #e2e2e2;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}
@media screen and (max-width: 1140px) {
  .result-route-right {
    width: 100%;
    height: 300px;
    float: none;
    border-top: 1px solid #e9e9e9;
    border-left: none;
  }
  .result-route-right:before {
    display: none;
  }
}

.result-route-map {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background-color: #f7f7f7;
}

.result-route-control {
  padding: 25px;
  border-top: 1px solid #e2e2e2;
}
.result-route-control a {
  color: #f57f31;
}

.result-route-inner {
  display: flex;
}
@media screen and (max-width: 1140px) {
  .result-route-inner {
    display: block;
  }
}

.result-busstop {
  border-top: 1px solid #e2e2e2;
  border-left: 1px solid #e2e2e2;
  border-right: 1px solid #e2e2e2;
}

.result-busstop-row {
  border-bottom: 1px solid #e2e2e2;
  background-color: #fff;
}
.result-busstop-row a {
  display: block;
  line-height: 1.0;
  padding: 40px 0;
  text-align: center;
  color: #33322f;
  text-decoration: none;
  font-size: 24px;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.result-busstop-row a:hover {
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.result-busstop-row a:hover {
  background-color: #f7f7f7;
}

.line-list {
  display: table;
  width: 100%;
  border-collapse: collapse;
  background-color: #fff;
}

.line-list-row {
  display: table-row;
}
.line-list-row:nth-child(odd) {
  background-color: #f7f7f7;
}

.line-list-th,
.line-list-td {
  display: table-cell;
  vertical-align: top;
  padding: 10px 0;
  border: 1px solid #e2e2e2;
}
@media screen and (max-width: 640px) {
  .line-list-th,
  .line-list-td {
    vertical-align: middle;
  }
}

.line-list-th {
  color: #fff;
  background-color: #f57f31;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
}
.line-list-th.line-list-th-where {
  width: 9.5%;
}
.line-list-th.line-list-th-line {
  width: 27.8%;
}
.line-list-th.line-list-th-via {
  width: 19%;
}
.line-list-th.line-list-th-destination {
  width: 18.5%;
}
.line-list-th.line-list-th-time {
  width: 12.8%;
}
.line-list-th.line-list-th-route {
  width: 12.8%;
}
@media screen and (max-width: 640px) {
  .line-list-th {
    font-size: 14px;
  }
  .line-list-th.line-list-th-where {
    width: 9.5%;
  }
  .line-list-th.line-list-th-line {
    width: 28.8%;
  }
  .line-list-th.line-list-th-via {
    width: 8%;
  }
  .line-list-th.line-list-th-destination {
    width: 18.5%;
  }
  .line-list-th.line-list-th-time {
    width: 17.8%;
  }
  .line-list-th.line-list-th-route {
    width: 17.8%;
  }
}

.line-list-td {
  padding: 10px 20px;
  text-align: center;
}
.line-list-td .btn {
  width: 100%;
  padding-top: 3px;
  padding-bottom: 3px;
  padding-left: 0;
  padding-right: 0;
  font-weight: bold;
  font-size: 12px;
}
.line-list-td.line-list-td-line {
  text-align: left;
}
@media screen and (max-width: 1140px) {
  .line-list-td {
    padding: 1%;
  }
}

.line-route {
  margin-bottom: 30px;
  display: table;
  width: 320px;
  margin-left: auto;
  margin-right: auto;
}

.line-route-tr {
  display: table-row;
  position: relative;
}
.line-route-tr:nth-child(even) .line-route-th,
.line-route-tr:nth-child(even) .line-route-td {
  background-color: #f7f7f7;
}
.line-route-tr.current .line-route-th,
.line-route-tr.current .line-route-td {
  color: #fff;
  background-color: #f57f31;
  font-weight: bold;
}
.line-route-tr:first-child .line-route-busstop:after, .line-route-tr:last-child .line-route-busstop:after {
  display: none;
}

.line-route-th,
.line-route-td {
  display: table-cell;
  vertical-align: top;
  padding-left: 20px;
  padding-top: 5px;
  padding-bottom: 5px;
  border-bottom: 1px solid #e2e2e2;
  position: relative;
}
@media screen and (max-width: 640px) {
  .line-route-th,
  .line-route-td {
    padding-left: 10px;
    text-align: center;
  }
}

.line-route-th {
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 640px) {
  .line-route-th {
    font-size: 12px;
  }
}

.line-route-busstop:after {
  content: "";
  display: block;
  width: 12px;
  height: 8px;
  background: url("../images/base/icon-link-blt-down.png") no-repeat 0 -600px;
  position: absolute;
  bottom: -5px;
  left: 20px;
  z-index: 1;
}

.line-route-btn {
  margin-top: 40px;
  margin-bottom: 80px;
  text-align: center;
}
.line-route-btn .btn {
  width: 200px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 15px;
  padding-bottom: 15px;
  font-size: 16px;
  font-weight: bold;
}
.line-route-btn .btn span {
  padding-left: 20px;
  background: url("../images/base/icon-link-back.png") no-repeat 0 5px;
}

.time-schedule {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}

.time-schedule-row {
  display: table-row;
}
.time-schedule-row:nth-child(odd) {
  background-color: #f7f7f7;
}

.time-schedule-th,
.time-schedule-td {
  display: table-cell;
  vertical-align: middle;
  border: 1px solid #e2e2e2;
}

.time-schedule-th {
  padding: 10px 20px;
  background-color: #f57f31;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}
.time-schedule-th.time-schedule-th-holiday {
  background-color: #ee2f60;
}
.time-schedule-th.time-schedule-th-holiday#page-timeschedule-time-schedule-list-header-title2 {
  background-color: #2fa6dd;
}
.time-schedule-th.time-schedule-th-uptrain {
  background-color: #14a94b;
}
.time-schedule-th.time-schedule-th-downtrain {
  background-color: #2fa6dd;
}

.time-schedule-th-hour {
  width: 6%;
}
.site-train .time-schedule-th-hour {
  background-color: #f7f7f7;
}

.time-schedule-th-weekday,
.time-schedule-th-uptrain {
  width: 47%;
}

.time-schedule-th-holiday,
.time-schedule-th-downtrain {
  width: 47%;
}

@media screen and (max-width: 640px) {
  .time-schedule-th-hour {
    width: 8%;
  }

  .time-schedule-th-weekday,
  .time-schedule-th-uptrain {
    width: 40%;
  }

  .time-schedule-th-holiday,
  .time-schedule-th-downtrain {
    width: 40%;
  }
}
.time-schedule-td {
  padding: 10px 20px;
  font-size: 18px;
}
.time-schedule-td a {
  color: #33322f;
}
@media screen and (max-width: 1140px) {
  .time-schedule-td {
    padding: 5px;
  }
}

.time-schedule-td-hour {
  text-align: center;
}
@media screen and (max-width: 1140px) {
  .time-schedule-td-hour {
    padding: 10px 5px;
    vertical-align: middle;
  }
}
@media screen and (max-width: 640px) {
  .time-schedule-td-hour {
    font-size: 12px;
  }
}

.time-schedule-minute {
  display: inline-block;
  vertical-align: bottom;
  text-align: center;
  margin-right: 10px;
}
.time-schedule-minute p {
  line-height: 1.0;
}
.time-schedule-minute p.cap {
  margin-bottom: 5px;
  font-size: 12px;
}
@media screen and (max-width: 1140px) {
  .time-schedule-minute {
    margin: 5px;
  }
}
@media screen and (max-width: 640px) {
  .time-schedule-minute p.cap {
    margin-bottom: 0;
  }
  .time-schedule-minute p.num a {
    font-size: 14px;
  }
}

.time-schedule-caption {
  margin-top: 20px;
}
.time-schedule-caption span {
  margin-right: 1em;
}

.line-switch {
  margin-bottom: 20px;
}
.line-switch:after {
  content: "";
  display: block;
  clear: both;
}

.line-switch-left {
  width: 78%;
  float: left;
}
@media screen and (max-width: 640px) {
  .line-switch-left {
    width: auto;
    float: none;
  }
}

.line-switch-right {
  width: 20%;
  float: right;
}
@media screen and (max-width: 640px) {
  .line-switch-right {
    width: auto;
    float: none;
    margin-top: 20px;
  }
}

.line-switch-table {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}

.line-switch-row {
  display: table-row;
}

.line-switch-th,
.line-switch-td {
  display: table-cell;
  vertical-align: middle;
  padding: 5px 10px;
  border: 1px solid #e2e2e2;
}

.line-switch-th {
  text-align: center;
  font-weight: bold;
}

.line-switch-th-input {
  width: 7.69231%;
}

.line-switch-th-line {
  width: 25.64103%;
}

.line-switch-th-destination {
  width: 25.64103%;
}

.line-switch-th-via {
  width: 25.64103%;
}

.line-switch-th-route {
  width: 15.38462%;
}

.line-switch-td-input {
  text-align: center;
}
.line-switch-td-input input {
  margin-left: auto;
  margin-right: auto;
}

.line-switch-btn {
  margin-bottom: 10px;
  text-align: center;
  font-size: 16px;
  font-weight: bold;
}
.line-switch-btn:last-child {
  margin-bottom: 0;
}
.line-switch-btn a {
  display: block;
  padding: 5px 0;
}

.line-switch-td-route {
  text-align: center;
}
.line-switch-td-route .btn {
  width: 100%;
  font-size: 12px;
  line-height: 1.0;
  font-weight: bold;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 0;
  padding-right: 0;
  letter-spacing: 0;
}

@media screen and (max-width: 640px) {
  .line-switch-th-input {
    width: 7.69231%;
  }

  .line-switch-th-line {
    width: 30.76923%;
  }

  .line-switch-th-destination {
    width: 21.79487%;
  }

  .line-switch-th-via {
    width: 19.23077%;
  }

  .line-switch-th-route {
    width: 21.79487%;
  }
}
.sub-navigation {
  margin-bottom: 40px;
  font-size: 0;
  box-shadow: inset 0px -2px 0px 0px rgba(0, 0, 0, 0.1);
  background-color: #fff;
}
.sub-navigation li {
  display: inline-block;
  vertical-align: top;
  line-height: 1.0;
}
.sub-navigation li a {
  display: block;
  color: #fff;
  padding: 20px;
  text-decoration: none;
  font-size: 16px;
  font-weight: bold;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.sub-navigation li a:hover {
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.sub-navigation li a:hover {
  color: #fff;
}
.sub-navigation li a span {
  padding-left: 20px;
}
@media screen and (max-width: 640px) {
  .sub-navigation {
    margin-bottom: 20px;
    margin-top: -1px;
    overflow: hidden;
    border-top: 1px solid #e2e2e2;
    border-right: 1px solid #e2e2e2;
  }
  .sub-navigation ul {
    display: table;
    width: 100%;
  }
  .sub-navigation ul li {
    display: table-cell;
    vertical-align: middle;
    border-left: 1px solid #e2e2e2;
    text-align: center;
  }
  .sub-navigation ul li a {
    padding: 15px 0 30px;
    font-size: 12px;
  }
  .sub-navigation ul li a span {
    padding-left: 0;
  }
}

.menu-box {
  overflow: inherit;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.menu-box.content-box {
  padding: 0;
}

.menu-box-title.content-box-title {
  margin-bottom: 0;
  padding-top: 15px;
  padding-bottom: 15px;
  color: #fff;
  border-bottom: none;
  margin-top: -1px;
  margin-left: -1px;
  margin-right: -1px;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
@media screen and (max-width: 640px) {
  .menu-box-title {
    text-align: center;
  }
}

.menu-box-inner {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
  position: relative;
}
@media screen and (max-width: 640px) {
  .menu-box-inner {
    display: block;
    width: auto;
    font-size: 0;
  }
}

.menu-box-col {
  width: 15%;
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  border-right: 1px solid #e2e2e2;
}
.menu-box-col a {
  display: block;
  padding-top: 120px;
  padding-bottom: 30px;
  color: #33322f;
  font-size: 16px;
  text-decoration: none;
  position: relative;
}
.menu-box-col a:after {
  content: "";
  display: block;
  width: 80px;
  height: 60px;
  background-repeat: no-repeat;
  position: absolute;
  top: 40%;
  left: 50%;
  margin-left: -40px;
  margin-top: -30px;
  z-index: 3;
}
.menu-box-col a span {
  display: block;
  position: absolute;
  top: -10px;
  left: -10px;
  bottom: -10px;
  right: -10px;
  margin: auto;
  background-color: #fff;
  visibility: hidden;
  z-index: 2;
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.15);
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.menu-box-col a span:hover {
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.menu-box-col a span i {
  display: block;
  padding-top: 110px;
}
.menu-box-col a i {
  width: 100%;
  display: block;
  position: absolute;
  top: 66%;
  left: 0;
  text-align: center;
  z-index: 2;
}
.menu-box-col a:hover span {
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
  visibility: visible;
}
@media screen and (max-width: 1140px) {
  .menu-box-col a {
    font-size: 14px;
  }
}
@media screen and (max-width: 640px) {
  .menu-box-col {
    display: inline-block;
    width: 50%;
    border-bottom: 1px solid #e2e2e2;
  }
}

.link-box {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
  background-color: #fff;
}

.link-box-col {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  border: 1px solid #e2e2e2;
}
.link-box-col a {
  display: block;
  padding: 60px 0;
  color: #33322f;
  text-decoration: none;
  letter-spacing: 2px;
  font-size: 16px;
  font-weight: bold;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.link-box-col a:hover {
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.link-box-col a:hover {
  background-color: #f7f7f7;
}

.information-center {
  margin-top: 20px;
}

.information-center-title {
  padding: 15px;
  background-color: #f57f31;
  color: #fff;
  text-align: center;
  font-weight: bold;
  line-height: 1.0;
  font-size: 18px;
}

.information-center-box {
  padding: 30px;
  background-color: #fff;
  border: 1px solid #e2e2e2;
  border-top: none;
}
.information-center-box:after {
  content: "";
  display: block;
  clear: both;
}
.information-center-box.information-center-box-bt {
  border-top: 1px solid #e2e2e2;
}

.information-center-left {
  width: 63.82979%;
  float: left;
}

.information-center-right {
  width: 32.97872%;
  float: right;
}

.information-center-table-title {
  background-color: #e2e2e2;
  text-align: center;
  padding: 5px;
  font-weight: bold;
}

.information-center-table {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}

.information-center-row {
  display: table-row;
}

.information-center-th,
.information-center-td {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  padding: 5px 15px;
  line-height: 1.0;
  border: 1px solid #e2e2e2;
}

.information-center-th {
  background-color: #f7f7f7;
}

.information-center-td {
  padding: 10px;
}

.information-center-info {
  margin-top: 20px;
}

.information-center-info-row {
  margin-bottom: 15px;
  padding-bottom: 10px;
  border-bottom: 1px solid #e2e2e2;
}

.information-center-info-col {
  display: inline-block;
  vertical-align: top;
  margin-right: 40px;
}

.information-center-info-title,
.information-center-info-text {
  display: inline-block;
  vertical-align: top;
}

.information-center-info-title {
  margin-right: 1em;
  font-weight: bold;
}

.information-center-info-text .cap {
  font-size: 12px;
}

.information-center-map {
  width: 100%;
  height: 0;
  padding-top: 100%;
  background-color: #f7f7f7;
  position: relative;
}
.information-center-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.highway-box {
  margin-top: 20px;
  padding: 30px;
  background-color: #fff;
  border: 1px solid #e2e2e2;
}
.highway-box:first-child {
  margin-top: 0;
}
@media screen and (max-width: 640px) {
  .highway-box {
    padding: 15px;
  }
}

.highway-box-title {
  position: relative;
  padding-left: 15px;
  border-left: 5px solid #f57f31;
  margin-bottom: 20px;
}

.highway-box-title-main,
.highway-box-title-dep {
  display: inline-block;
  vertical-align: bottom;
  line-height: 1.0;
  font-weight: bold;
}
@media screen and (max-width: 640px) {
  .highway-box-title-main,
  .highway-box-title-dep {
    display: block;
  }
}

.highway-box-title-main {
  font-size: 24px;
}
.highway-box-title-main span {
  font-size: 16px;
}

.highway-box-title-dep {
  margin-left: 1em;
}
@media screen and (max-width: 640px) {
  .highway-box-title-dep {
    margin-top: 10px;
    margin-left: 0;
  }
}

.highway-box-title-with {
  position: absolute;
  display: inline-block;
  top: 0;
  right: 0;
  font-size: 12px;
  line-height: 1.4;
}

.highway-box-feature {
  margin-bottom: 10px;
  font-size: 0;
  margin-left: -5px;
}
.highway-box-feature > p {
  display: inline-block;
  vertical-align: middle;
  margin: 0 3px;
  background-color: #fbf0e6;
  font-size: 12px;
  line-height: 1.0;
  padding: 5px 10px;
}
@media screen and (max-width: 640px) {
  .highway-box-feature > p {
    font-size: 11px;
  }
}

.highway-box-inner-wrap {
  margin-top: 10px;
}
.highway-box-inner-wrap:after {
  content: "";
  display: block;
  clear: both;
}

.highway-box-inner-left {
  width: 54.83871%;
  float: left;
}
@media screen and (max-width: 640px) {
  .highway-box-inner-left {
    width: auto;
    float: none;
  }
}

.highway-box-inner-right {
  width: 43.54839%;
  float: right;
}
@media screen and (max-width: 640px) {
  .highway-box-inner-right {
    width: auto;
    float: none;
  }
}

.highway-box-image img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 640px) {
  .highway-box-image {
    margin-bottom: 10px;
  }
}

.highway-box-date {
  padding-top: 30px;
  padding-bottom: 20px;
  border: 1px solid #e2e2e2;
}
.highway-box-date:after {
  content: "";
  display: block;
  clear: both;
}
@media screen and (max-width: 640px) {
  .highway-box-date {
    padding-top: 20px;
  }
}

.highway-box-date-col {
  width: 50%;
  float: left;
  text-align: center;
}

.highway-box-date-title {
  margin-bottom: 20px;
  line-height: 1.0;
  font-weight: bold;
}
.highway-box-date-title span {
  padding-bottom: 5px;
  border-bottom: 1px solid #33322f;
}

.highway-box-date-time-row span {
  line-height: 0.8em;
  display: block;
  font-size: 14px;
  padding: 0;
  margin-bottom: 10px;
}

.highway-box-date-time .lim {
  margin-bottom: 6px;
}

.highway-box-price {
  padding: 5px 10px;
  border: 1px solid #e2e2e2;
  background-color: #f7f7f7;
  font-size: 16px;
  text-align: center;
}
.highway-box-price span {
  margin-right: 10px;
}
.highway-box-price strong {
  font-size: 24px;
  font-weight: bold;
  margin-right: 5px;
}
@media screen and (max-width: 640px) {
  .highway-box-price {
    margin-bottom: 10px;
  }
}

.highway-box-btn a {
  display: block;
  text-align: center;
  padding-top: 15px;
  padding-bottom: 15px;
  position: relative;
}
.highway-box-btn a:before {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  position: absolute;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  top: 50%;
  right: 20px;
  bottom: auto;
  left: auto;
  margin-top: -5px;
  background-position: -1px 0;
}
@media screen and (max-width: 640px) {
  .highway-box-btn a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}

.highway-guide-title {
  margin-bottom: 5px;
  font-size: 18px;
  font-weight: bold;
}

.highway-guide-attention {
  color: #ee2f60;
}

.highway-guide-link {
  margin-top: 5px;
}
.highway-guide-link a {
  line-height: 1.0;
  margin-right: 15px;
  padding-left: 18px;
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 -210px;
  background-position: 0 -209px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .highway-guide-link a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}

.highway-facility {
  padding: 10px;
  background-color: #14a94b;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}

.highway-facility-inner {
  padding: 20px;
  background-color: #fff;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
}

.highway-facility-title {
  color: #14a94b;
  font-weight: bold;
  font-size: 18px;
  margin-bottom: 5px;
  text-align: center;
}

.highway-facility-text {
  margin-bottom: 15px;
  text-align: center;
}

.highway-facility-image {
  text-align: center;
}

.highway-btn a {
  display: block;
  padding-top: 20px;
  padding-bottom: 20px;
  font-size: 16px;
}
.highway-btn a span {
  padding-left: 20px;
  line-height: 1.0;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  background-position: -1px 0;
  background-position: 0 4px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .highway-btn a span {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}

.highway-timetable:after {
  content: "";
  display: block;
  clear: both;
}

.highway-seat {
  text-align: center;
}

.highway-timetable-row {
  margin-top: 10px;
}
.highway-timetable-row:first-child {
  margin-top: 0;
}

.highway-timetable {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
  background-color: #fff;
}

.highway-timetable-tr {
  display: table-row;
}

.highway-timetable-th,
.highway-timetable-td {
  display: table-cell;
  vertical-align: middle;
  padding: 10px 20px;
  border: 1px solid #e2e2e2;
}
@media screen and (max-width: 640px) {
  .highway-timetable-th,
  .highway-timetable-td {
    padding: 5px 20px;
  }
}

.highway-timetable-th {
  padding: 10px;
  color: #fff;
  text-align: center;
  font-size: 18px;
}
.highway-timetable-down .highway-timetable-th {
  background-color: #14a94b;
}
.highway-timetable-up .highway-timetable-th {
  background-color: #2fa6dd;
}
@media screen and (max-width: 640px) {
  .highway-timetable-th {
    font-size: 12px;
  }
}

.highway-timetable-th-time,
.highway-timetable-td-time {
  width: 25%;
}
@media screen and (max-width: 640px) {
  .highway-timetable-th-time,
  .highway-timetable-td-time {
    width: 30%;
  }
}

.highway-timetable-td {
  font-size: 16px;
}
.highway-timetable-td > div {
  display: inline-block;
}
.highway-timetable-td .noriba {
  margin-left: 15px;
  font-size: 12px;
}
.highway-timetable-td .noriba a {
  padding-left: 12px;
  position: relative;
}
.highway-timetable-td .noriba a:before {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  position: absolute;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  top: 50%;
  right: "";
  bottom: "";
  left: 0;
  margin-top: -5px;
  background-position: -1px -350px;
}
@media screen and (max-width: 640px) {
  .highway-timetable-td .noriba a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}
@media screen and (max-width: 640px) {
  .highway-timetable-td {
    font-size: 14px;
  }
  .highway-timetable-td .noriba {
    margin-left: 10px;
  }
}

.highway-timetable-td-time {
  text-align: center;
  font-size: 18px;
}
@media screen and (max-width: 640px) {
  .highway-timetable-td-time {
    font-size: 14px;
  }
}

.highway-fare {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
  margin-bottom: 10px;
}
@media screen and (max-width: 640px) {
  .highway-fare {
    width: 640px;
  }
}

.highway-fare-row {
  display: table-row;
}
.highway-fare-row:nth-child(2n) .highway-fare-th,
.highway-fare-row:nth-child(2n) .highway-fare-td {
  background-color: #f7f7f7;
}

.highway-fare-th,
.highway-fare-td {
  display: table-cell;
  vertical-align: middle;
  border: 1px solid #e2e2e2;
  width: 20%;
}

.highway-fare-th {
  padding: 20px;
}

.highway-fare-price {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
  background-color: transparent;
}

.highway-fare-price-row {
  display: table-row;
}

.highway-fare-price-td {
  display: table-cell;
  vertical-align: middle;
  padding: 10px;
  font-size: 0;
}

.highway-fare-price-child,
.highway-fare-price-student {
  border-top: 1px solid #e2e2e2;
}

.highway-fare-price-title,
.highway-fare-price-trip {
  font-size: 12px;
}

.highway-fare-price-title {
  margin-bottom: 5px;
  padding: 5px 0;
  color: #fff;
  font-size: 12px;
  text-align: center;
  letter-spacing: 0;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
}
.highway-fare-price-adult .highway-fare-price-title {
  background-color: #f57f31;
}
.highway-fare-price-child .highway-fare-price-title {
  background-color: #fdbf97;
}
.highway-fare-price-student .highway-fare-price-title {
  background-color: #bcb8ac;
}

.highway-fare-price-trip-row {
  font-size: 0;
}

.highway-fare-price-trip-title,
.highway-fare-price-trip-price {
  display: inline-block;
  vertical-align: middle;
}

.highway-fare-price-trip-title {
  width: 36%;
  color: #fff;
  font-size: 12px;
  text-align: center;
  padding-top: 5px;
  padding-bottom: 5px;
  line-height: 1.0;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
}
.highway-fare-price-trip-oneway .highway-fare-price-trip-title {
  margin-bottom: 4%;
  background-color: #14a94b;
}
.highway-fare-price-trip-round .highway-fare-price-trip-title {
  background-color: #2fa6dd;
}

.highway-fare-price-trip-price {
  width: 64%;
  line-height: 1.0;
  text-align: right;
  font-size: 16px;
}

.highway-reserve {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
  background-color: #fff;
}
@media screen and (max-width: 640px) {
  .highway-reserve {
    display: block;
    border: 1px solid #e2e2e2;
  }
}

.highway-reserve-row {
  display: table-row;
}
@media screen and (max-width: 640px) {
  .highway-reserve-row {
    display: block;
  }
  .highway-reserve-row:last-child .highway-reserve-th, .highway-reserve-row:last-child .highway-reserve-td {
    border-bottom: none;
  }
}

.highway-reserve-th,
.highway-reserve-td {
  display: table-cell;
  vertical-align: middle;
  border: 1px solid #e2e2e2;
  padding: 20px;
}
.highway-reserve-th span.pink,
.highway-reserve-td span.pink {
  color: #ee2f60;
  font-size: 12px;
}
@media screen and (max-width: 640px) {
  .highway-reserve-th,
  .highway-reserve-td {
    display: block;
    border: none;
    border-bottom: 1px solid #e2e2e2;
  }
}

.highway-reserve-th {
  letter-spacing: 0;
  font-size: 16px;
}
@media screen and (max-width: 640px) {
  .highway-reserve-th {
    background-color: #f7f7f7;
  }
}

.highway-reserve-td .indent li {
  margin-bottom: 10px;
}

.highway-reserve-net a {
  margin-right: 10px;
  display: inline-block;
  vertical-align: middle;
}

.highway-info-center {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
  background-color: #fff;
}
@media screen and (max-width: 640px) {
  .highway-info-center {
    display: block;
    border: 1px solid #e2e2e2;
  }
}

.highway-info-center-row {
  display: table-row;
}
@media screen and (max-width: 640px) {
  .highway-info-center-row {
    display: block;
  }
  .highway-info-center-row:last-child .highway-info-center-td {
    border-bottom: none;
  }
}

.highway-info-center-th,
.highway-info-center-td {
  display: table-cell;
  vertical-align: middle;
  border: 1px solid #e2e2e2;
  padding: 10px 15px;
}
@media screen and (max-width: 640px) {
  .highway-info-center-th,
  .highway-info-center-td {
    display: block;
    border: none;
    border-bottom: 1px solid #e2e2e2;
  }
}

.highway-info-center-th {
  text-align: center;
}
@media screen and (max-width: 640px) {
  .highway-info-center-th {
    background-color: #f7f7f7;
  }
}

.kanazawa-fare {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
  background-color: #fff;
}

.kanazawa-fare-row {
  display: table-row;
}

.kanazawa-fare-th,
.kanazawa-fare-td {
  display: table-cell;
  vertical-align: middle;
  border: 1px solid #e2e2e2;
  padding: 20px;
}
.kanazawa-fare-th.kanazawa-fare-td-table,
.kanazawa-fare-td.kanazawa-fare-td-table {
  padding: 0;
}

.kanazawa-fare-th {
  text-align: center;
}

.kanazawa-fare-range {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}

.kanazawa-fare-range-row {
  display: table-row;
}

.kanazawa-fare-range-th,
.kanazawa-fare-range-td {
  display: table-cell;
  vertical-align: middle;
  padding: 20px;
  text-align: center;
}

.kanazawa-fare-range-th {
  background-color: #f7f7f7;
  border-right: 1px solid #e2e2e2;
}

.kanazawa-fare-range-td {
  font-size: 24px;
  border-top: 1px solid #e2e2e2;
  border-right: 1px solid #e2e2e2;
}

.kanazawa-fare-range-td-a {
  background-color: #f6feef;
}

.kanazawa-fare-range-td-b {
  background-color: #fff1d9;
}

.kanazawa-fare-range-td-c {
  background-color: #ffeaf0;
}

.kanazawa-fare-range-td-oneway span {
  font-size: 16px;
}

.kanazawa-fare-calendar {
  margin-top: 20px;
}

.kanazawa-fare-calendar-title {
  margin-bottom: 5px;
  font-size: 18px;
  font-weight: bold;
}

.kanazawa-fare-calendar-text {
  margin-bottom: 10px;
}

.kanazawa-fare-calendar-image {
  margin-top: 20px;
}

.station-header {
  margin-bottom: 20px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
@media screen and (max-width: 640px) {
  .station-header {
    margin-bottom: 10px;
  }
}

.station-header-top {
  padding: 20px 0 38px;
  text-align: center;
  background-color: #005b3f;
  background-repeat: no-repeat;
  background-position: 0 -18px;
  position: relative;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.station-header-top:after {
  content: "";
  display: block;
  width: 100%;
  height: 8px;
  position: absolute;
  left: 0;
  bottom: 10px;
  background-color: #a4c54c;
}
.station-area-fujisawa .station-header-top {
  background-image: url("../images/train/station-pattern-hase.png");
}
.station-area-ishigami .station-header-top {
  background-image: url("../images/train/station-pattern-ishigami.png");
}
.station-area-yanagikoji .station-header-top {
  background-image: url("../images/train/station-pattern-yanagikoji.png");
}
.station-area-kugenuma .station-header-top {
  background-image: url("../images/train/station-pattern-kugenuma.png");
}
.station-area-shonankaigankoen .station-header-top {
  background-image: url("../images/train/station-pattern-shonankaigankoen.png");
}
.station-area-enoshima .station-header-top {
  background-image: url("../images/train/station-pattern-enoshima.png");
}
.station-area-koshigoe .station-header-top {
  background-image: url("../images/train/station-pattern-koshigoe.png");
}
.station-area-kamakurakokomae .station-header-top {
  background-image: url("../images/train/station-pattern-kamakurakokomae.png");
}
.station-area-shichirigahama .station-header-top {
  background-image: url("../images/train/station-pattern-shichirigahama.png");
}
.station-area-inamuragasaki .station-header-top {
  background-image: url("../images/train/station-pattern-inamuragasaki.png");
}
.station-area-gokurakuji .station-header-top {
  background-image: url("../images/train/station-pattern-gokurakuji.png");
}
.station-area-hase .station-header-top {
  background-image: url("../images/train/station-pattern-hase.png");
}
.station-area-yuigahama .station-header-top {
  background-image: url("../images/train/station-pattern-yuigahama.png");
}
.station-area-wadazuka .station-header-top {
  background-image: url("../images/train/station-pattern-wadazuka.png");
}
.station-area-kamakura .station-header-top {
  background-image: url("../images/train/station-pattern-kamakura.png");
}
@media screen and (max-width: 640px) {
  .station-header-top {
    padding-left: 20px;
    -moz-background-size: auto 59px;
    -o-background-size: auto 59px;
    -webkit-background-size: auto 59px;
    background-size: auto 59px;
  }
}

.station-header-text {
  display: inline-block;
  color: #fff;
  text-align: center;
  position: relative;
}
.station-header-text:after {
  content: "";
  display: block;
  width: 52px;
  height: 52px;
  position: absolute;
  left: -75px;
  top: 50%;
  margin-top: -26px;
  background-image: url("../images/train/station-number.png");
  background-repeat: no-repeat;
}
.station-area-fujisawa .station-header-text:after {
  background-position: 0 0;
}
.station-area-ishigami .station-header-text:after {
  background-position: 0 -150px;
}
.station-area-yanagikoji .station-header-text:after {
  background-position: 0 -300px;
}
.station-area-kugenuma .station-header-text:after {
  background-position: 0 -450px;
}
.station-area-shonankaigankoen .station-header-text:after {
  background-position: 0 -600px;
}
.station-area-enoshima .station-header-text:after {
  background-position: 0 -750px;
}
.station-area-koshigoe .station-header-text:after {
  background-position: 0 -900px;
}
.station-area-kamakurakokomae .station-header-text:after {
  background-position: 0 -1050px;
}
.station-area-shichirigahama .station-header-text:after {
  background-position: 0 -1200px;
}
.station-area-inamuragasaki .station-header-text:after {
  background-position: 0 -1350px;
}
.station-area-gokurakuji .station-header-text:after {
  background-position: 0 -1500px;
}
.station-area-hase .station-header-text:after {
  background-position: 0 -1650px;
}
.station-area-yuigahama .station-header-text:after {
  background-position: 0 -1800px;
}
.station-area-wadazuka .station-header-text:after {
  background-position: 0 -1950px;
}
.station-area-kamakura .station-header-text:after {
  background-position: 0 -2100px;
}
@media screen and (max-width: 640px) {
  .station-area-fujisawa .station-header-text:after {
    background-position: 0 0;
  }
  .station-area-ishigami .station-header-text:after {
    background-position: 0 -120px;
  }
  .station-area-yanagikoji .station-header-text:after {
    background-position: 0 -240px;
  }
  .station-area-kugenuma .station-header-text:after {
    background-position: 0 -360px;
  }
  .station-area-shonankaigankoen .station-header-text:after {
    background-position: 0 -480px;
  }
  .station-area-enoshima .station-header-text:after {
    background-position: 0 -600px;
  }
  .station-area-koshigoe .station-header-text:after {
    background-position: 0 -720px;
  }
  .station-area-kamakurakokomae .station-header-text:after {
    background-position: 0 -840px;
  }
  .station-area-shichirigahama .station-header-text:after {
    background-position: 0 -960px;
  }
  .station-area-inamuragasaki .station-header-text:after {
    background-position: 0 -1080px;
  }
  .station-area-gokurakuji .station-header-text:after {
    background-position: 0 -1200px;
  }
  .station-area-hase .station-header-text:after {
    background-position: 0 -1320px;
  }
  .station-area-yuigahama .station-header-text:after {
    background-position: 0 -1440px;
  }
  .station-area-wadazuka .station-header-text:after {
    background-position: 0 -1560px;
  }
  .station-area-kamakura .station-header-text:after {
    background-position: 0 -1680px;
  }
}
@media screen and (max-width: 640px) {
  .station-header-text:after {
    width: 40px;
    height: 40px;
    margin-top: -20px;
    left: -55px;
    background-image: url("../images/train/station-number@2x.png");
    -moz-background-size: 40px auto;
    -o-background-size: 40px auto;
    -webkit-background-size: 40px auto;
    background-size: 40px auto;
  }
}

.station-header-title {
  margin-bottom: 10px;
  font-size: 32px;
  font-weight: bold;
  line-height: 1.0;
}
@media screen and (max-width: 640px) {
  .station-header-title {
    margin-bottom: 0;
    margin-right: 10px;
  }
}

@media screen and (max-width: 640px) {
  .station-header-title,
  .station-header-title-yomi {
    display: inline-block;
    vertical-align: middle;
  }
}

.station-header-title-kana {
  margin-bottom: 5px;
  font-size: 12px;
  line-height: 1.0;
}

.station-header-title-roman {
  font-size: 12px;
  line-height: 1.0;
}

.station-nextprev {
  padding: 5px 15px;
  background-color: #fff;
  position: relative;
  border: 1px solid #e2e2e2;
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
}
.station-nextprev:after {
  content: "";
  display: block;
  clear: both;
}
.station-nextprev a {
  color: #33322f;
  text-decoration: none;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  background: url("../images/train/station-nextprev.png");
  background-repeat: no-repeat;
}
.station-nextprev a:hover {
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.station-nextprev a:hover {
  color: #14a94b;
}
.station-nextprev a span {
  font-size: 12px;
  margin: 0 0.5em;
  letter-spacing: 0;
}
@media screen and (max-width: 640px) {
  .station-nextprev {
    font-size: 12px;
  }
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .station-nextprev a {
    background-repeat: no-repeat;
    background-image: url("../images/train/station-nextprev@2x.png");
    -moz-background-size: auto 14px;
    -o-background-size: auto 14px;
    -webkit-background-size: auto 14px;
    background-size: auto 14px;
  }
}

.station-nextprev-prev {
  width: 50%;
  float: left;
}
.station-nextprev-prev a {
  padding-left: 30px;
  background-position: 0 50%;
}

.station-nextprev-next {
  width: 50%;
  float: right;
  text-align: right;
}
.station-nextprev-next a {
  padding-right: 30px;
  background-position: 100% 50%;
}

.station-panel:after {
  content: "";
  display: block;
  clear: both;
}

.station-mainvisual {
  width: 68%;
  float: left;
  background-color: #fff;
  border: 1px solid #e2e2e2;
  overflow: hidden;
}
.station-mainvisual img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 640px) {
  .station-mainvisual {
    width: auto;
    float: none;
  }
}

.station-mainvisual-inner {
  margin: 5px;
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.load .station-mainvisual-inner {
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
}
.station-mainvisual-inner > div {
  overflow: hidden;
}

.station-control {
  width: 30%;
  float: right;
}
@media screen and (max-width: 640px) {
  .station-control {
    margin-top: 10px;
    width: auto;
    float: none;
  }
}

.station-control-row a {
  display: block;
  height: 0;
  padding-top: 48.65772%;
  position: relative;
  position: relative;
}
.station-control-row a:before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  background: url("../images/base/icon-link-circle2.png") no-repeat;
  top: 50%;
  right: 30px;
  bottom: auto;
  left: auto;
  z-index: 10;
  margin-top: -8px;
  background-position: 0 -229px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .station-control-row a:before {
    background-image: url("../images/base/icon-link-circle2@2x.png");
    -moz-background-size: 15px auto;
    -o-background-size: 15px auto;
    -webkit-background-size: 15px auto;
    background-size: 15px auto;
  }
}
.station-control-row a span {
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  font-size: 18px;
  line-height: 1.0;
  margin-top: -9px;
  padding-left: 46%;
}
.station-control-row a:after {
  content: "";
  display: block;
  width: 64px;
  height: 64px;
  position: absolute;
  top: 50%;
  left: 30px;
  margin-top: -32px;
  background-image: url("../images/train/menu-icon.png");
  background-repeat: no-repeat;
}
@media screen and (max-width: 640px) {
  .station-control-row a {
    padding-top: 30px;
    padding-bottom: 30px;
    height: auto;
  }
  .station-control-row a span {
    font-size: 16px;
    margin-top: 0;
    padding-left: 50px;
    position: relative;
  }
  .station-control-row a:after {
    width: 32px;
    height: 32px;
    left: 20px;
    margin-top: -16px;
    background-image: url("../images/train/menu-icon@2x.png");
    -moz-background-size: auto 23px;
    -o-background-size: auto 23px;
    -webkit-background-size: auto 23px;
    background-size: auto 23px;
  }
  .station-control-row a.btn {
    text-align: left;
  }
}

.station-control-row-time {
  margin-bottom: 6.66667%;
}
.station-control-row-time a:after {
  background-position: -390px 8px;
}
@media screen and (max-width: 640px) {
  .station-control-row-time {
    margin-bottom: 10px;
  }
  .station-control-row-time a:after {
    background-position: -182px 4px;
  }
}

.station-control-row-fare {
  margin-bottom: 6.66667%;
}
.station-control-row-fare a:after {
  background-position: -191px 8px;
}
@media screen and (max-width: 640px) {
  .station-control-row-fare {
    margin-bottom: 10px;
  }
  .station-control-row-fare a:after {
    left: 23px;
    background-position: -89px 4px;
  }
}

.station-control-row-ticket a {
  padding-top: 23.48993%;
}
.station-control-row-ticket a:after {
  background-position: -595px 8px;
}
.station-control-row-ticket a span {
  padding-left: 43%;
  font-size: 16px;
}
@media screen and (max-width: 640px) {
  .station-control-row-ticket a {
    padding-top: 15px;
    padding-bottom: 15px;
  }
  .station-control-row-ticket a:after {
    left: 23px;
    background-position: -275px 4px;
  }
  .station-control-row-ticket a span {
    padding-left: 50px;
  }
}

.station-information {
  margin-top: 40px;
}
.station-information:after {
  content: "";
  display: block;
  clear: both;
}
.station-information:first-child {
  margin-top: 0;
}

.station-information-left {
  width: 40.21739%;
  float: left;
}
@media screen and (max-width: 640px) {
  .station-information-left {
    width: auto;
    float: none;
  }
}

.station-information-right {
  width: 56.52174%;
  float: right;
}
@media screen and (max-width: 640px) {
  .station-information-right {
    margin-top: 20px;
    width: auto;
    float: none;
  }
}

.station-information-row {
  margin-top: 40px;
}
.station-information-row:first-child {
  margin-top: 0;
}
@media screen and (max-width: 640px) {
  .station-information-row {
    margin-top: 30px;
  }
}

.station-information-title {
  margin-bottom: 15px;
  font-weight: bold;
  line-height: 1.0;
}
@media screen and (max-width: 640px) {
  .station-information-title {
    margin-bottom: 10px;
  }
}

.station-information-list-row {
  margin-bottom: 10px;
  padding-bottom: 5px;
  border-bottom: 1px dashed #e2e2e2;
}
.station-information-list-row div {
  display: inline-block;
  vertical-align: top;
}
.station-information-list-row div.text01 {
  margin-right: 1em;
  color: #777777;
}
@media screen and (max-width: 640px) {
  .station-information-list-row {
    margin-bottom: 5px;
    padding-bottom: 3px;
  }
}

.station-facilities {
  margin-bottom: 15px;
  font-size: 12px;
  margin-left: -1.92308%;
}
.station-facilities:after {
  content: "";
  display: block;
  clear: both;
}

.station-facilities-col {
  width: 31.34615%;
  float: left;
  margin-left: 1.92308%;
}

.station-facilities-table {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
  border: 1px solid #e2e2e2;
}

.station-facilities-row {
  display: table-row;
}

.station-facilities-item,
.station-facilities-value {
  padding: 10px;
  display: table-cell;
  vertical-align: middle;
  border: 1px solid #e2e2e2;
  line-height: 1.0;
  letter-spacing: 0;
}
@media screen and (max-width: 640px) {
  .station-facilities-item,
  .station-facilities-value {
    padding: 10px 5px;
    line-height: 1.4;
  }
}

.station-facilities-row:nth-child(even) .station-facilities-item,
.station-facilities-row:nth-child(even) .station-facilities-value {
  background-color: #f7f7f7;
}

.station-facilities-value {
  text-align: center;
}

.station-floor {
  margin-bottom: 20px;
  padding: 20px;
  border: 1px solid #e2e2e2;
  background-color: #f7f7f7;
  text-align: center;
}
.station-floor:last-child {
  margin-bottom: 0;
}

.transfar-guide {
  margin-top: 40px;
  background-color: #14a94b;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  padding: 5px;
  font-size: 0;
}
@media screen and (max-width: 640px) {
  .transfar-guide {
    margin-top: 20px;
  }
}

.transfar-guide-title,
.transfar-guide-info {
  display: inline-block;
  vertical-align: middle;
  font-size: 14px;
}
@media screen and (max-width: 640px) {
  .transfar-guide-title,
  .transfar-guide-info {
    display: block;
  }
}

.transfar-guide-title {
  width: 13.26531%;
  color: #fff;
  font-weight: bold;
  font-size: 18px;
  letter-spacing: 3px;
  text-align: center;
}
@media screen and (max-width: 640px) {
  .transfar-guide-title {
    width: auto;
  }
}

.transfar-guide-info {
  width: 82.65306%;
  padding: 10px 20px;
  background-color: #fff;
  font-size: 12px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
@media screen and (max-width: 640px) {
  .transfar-guide-info {
    width: auto;
  }
}

.transfar-guide-train {
  border-bottom: 1px dashed #e2e2e2;
  padding-bottom: 5px;
  margin-bottom: 5px;
}
.transfar-guide-train .transfar-guide-stitle {
  background-position: 0 -1px;
}

.transfar-guide-bus .transfar-guide-stitle {
  background-position: 0 -41px;
}

.transfar-guide-stitle,
.transfar-guide-text {
  display: inline-block;
  vertical-align: middle;
}

.transfar-guide-stitle {
  position: relative;
  padding-right: 10px;
  padding-top: 2px;
  padding-bottom: 2px;
  margin-right: 10px;
  line-height: 1.0;
  padding-left: 25px;
  background: url("../images/base/icon-train-bus.png") no-repeat;
}
.transfar-guide-stitle:after {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background-color: #e2e2e2;
  position: absolute;
  right: 0;
  top: 0;
}
@media screen and (max-width: 640px) {
  .transfar-guide-stitle {
    background-image: url("../images/base/icon-train-bus@2x.png");
    -moz-background-size: 17px auto;
    -o-background-size: 17px auto;
    -webkit-background-size: 17px auto;
    background-size: 17px auto;
  }
}

.transfar-guide-text a {
  margin-right: 15px;
  padding-left: 12px;
  color: #33322f;
}

.transfar-guide-train .transfar-guide-text a {
  background: url("../images/base/icon-link-blt.png") no-repeat;
  background-position: -1px -350px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .transfar-guide-train .transfar-guide-text a {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}

.transfar-guide-bus .transfar-guide-text a {
  background: url("../images/base/icon-link-blt.png") no-repeat;
  background-position: -1px -459px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .transfar-guide-bus .transfar-guide-text a {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}

.station-comment {
  margin-top: 40px;
  background-color: #e7f3dc;
  padding: 10px;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
@media screen and (max-width: 640px) {
  .station-comment {
    margin-top: 20px;
  }
}

.station-comment-title {
  margin-bottom: 15px;
  font-size: 16px;
  font-weight: bold;
}

.station-comment-main {
  padding: 30px;
  background-color: #fff;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
}

.station-comment-text:after {
  content: "";
  display: block;
  clear: both;
}
.station-comment-text img {
  max-width: 32%;
  margin-right: 20px;
  float: left;
}

.station-spot {
  margin-bottom: 30px;
}

.station-spot-row {
  margin-top: 20px;
}
.station-spot-row:after {
  content: "";
  display: block;
  clear: both;
}

.station-spot-left {
  width: 49%;
  float: left;
}

.station-spot-right {
  width: 49%;
  float: right;
}

.station-spot-title {
  margin-bottom: 5px;
  font-size: 16px;
  font-weight: bold;
}
.station-spot-title span {
  font-size: 12px;
}
@media screen and (max-width: 640px) {
  .station-spot-title {
    line-height: 1.0;
  }
}

@media screen and (max-width: 640px) {
  .station-spot-text {
    font-size: 12px;
  }
}

.station-spot-link {
  margin-top: 5px;
}
.station-spot-link a {
  padding-left: 18px;
  background: url("../images/base/icon-blank.png") no-repeat;
  background-position: 0px -200px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .station-spot-link a {
    background-image: url("../images/base/icon-blank@2x.png");
    -moz-background-size: 13px auto;
    -o-background-size: 13px auto;
    -webkit-background-size: 13px auto;
    background-size: 13px auto;
  }
}
@media screen and (max-width: 640px) {
  .station-spot-link {
    font-size: 12px;
    margin-top: 0;
  }
}

@media screen and (max-width: 640px) {
  .station-spot-point {
    display: none;
  }
}

@media screen and (max-width: 640px) {
  .station-spot-access {
    font-size: 12px;
  }
}

.station-spot-col-row {
  margin-top: 15px;
}
.station-spot-col-row:after {
  content: "";
  display: block;
  clear: both;
}
@media screen and (max-width: 640px) {
  .station-spot-col-row {
    margin-top: 0;
  }
}

.station-spot-col-left {
  width: 48%;
  float: left;
}
@media screen and (max-width: 640px) {
  .station-spot-col-left {
    width: auto;
    float: none;
  }
}

.station-spot-col-right {
  width: 48%;
  float: right;
}
@media screen and (max-width: 640px) {
  .station-spot-col-right {
    width: auto;
    float: none;
    margin-top: 10px;
  }
}

.station-spot-kamakura {
  font-size: 0;
  margin-right: -30px;
}
.station-spot-kamakura .station-spot-col {
  width: 33.33333%;
  display: inline-block;
  vertical-align: top;
  margin-top: 20px;
  font-size: 14px;
}
.station-spot-kamakura .station-spot-col-left {
  margin-bottom: 10px;
}
.station-spot-kamakura .station-spot-col-row {
  margin-right: 30px;
  margin-top: 0;
}
.station-spot-kamakura .station-spot-text,
.station-spot-kamakura .station-spot-access,
.station-spot-kamakura .station-spot-point {
  font-size: 12px;
}
.station-spot-kamakura .station-spot-link {
  font-size: 12px;
}
@media screen and (max-width: 640px) {
  .station-spot-kamakura {
    margin-right: -10px;
  }
  .station-spot-kamakura .station-spot-col {
    margin-top: 5px;
  }
  .station-spot-kamakura .station-spot-row {
    margin-top: 10px;
  }
  .station-spot-kamakura .station-spot-col-row {
    margin-right: 10px;
  }
}

.station-feature {
  padding-top: 30px;
  margin-top: 30px;
  border-top: 1px solid #e2e2e2;
}

.station-feature-row {
  margin-bottom: 30px;
}
.station-feature-row:after {
  content: "";
  display: block;
  clear: both;
}
.station-feature-row:last-child {
  margin-bottom: 0;
}

.station-feature-title {
  margin-bottom: 10px;
  font-size: 16px;
  font-weight: bold;
}

.station-feature-left {
  width: 43.47826%;
  float: left;
}
@media screen and (max-width: 640px) {
  .station-feature-left {
    width: auto;
    float: none;
  }
}

.station-feature-right {
  width: 52.17391%;
  float: right;
}
@media screen and (max-width: 640px) {
  .station-feature-right {
    margin-top: 20px;
    width: auto;
    float: none;
  }
}

.station-feature-btn {
  text-align: center;
}
.station-feature-btn a {
  vertical-align: middle;
  padding-top: 15px;
  padding-bottom: 15px;
  padding-left: 20px;
  padding-right: 35px;
  font-size: 16px;
  font-weight: bold;
  position: relative;
}
.station-feature-btn a:before {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  position: absolute;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  top: 50%;
  right: 15px;
  bottom: auto;
  left: auto;
  margin-top: -5px;
  background-position: -1px 0;
}
@media screen and (max-width: 640px) {
  .station-feature-btn a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}
.station-feature-btn .caption {
  margin-top: 10px;
}

.station-map-iframe {
  height: 0;
  padding-top: 44%;
  background-color: #f7f7f7;
}
.station-map-iframe > div {
  top: 0;
  left: 0;
}
@media screen and (max-width: 640px) {
  .station-map-iframe {
    padding-top: 50%;
  }
}

.station-map-place {
  margin-bottom: 15px;
  margin-top: -10px;
  font-size: 0;
}
@media screen and (max-width: 640px) {
  .station-map-place {
    margin-top: 10px;
  }
}

.station-map-place-col {
  display: inline-block;
  vertical-align: middle;
  width: 48.7234%;
  margin-left: 2.12766%;
  margin-top: 1.06383%;
  font-size: 14px;
  background-color: #fff;
  border: 1px solid #e2e2e2;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  position: relative;
}
.station-map-place-col:hover {
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.station-map-place-col:before {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  position: absolute;
  background: url("../images/base/icon-blank.png") no-repeat;
  top: 50%;
  right: "";
  bottom: "";
  left: 20px;
  margin-top: -7px;
  background-position: 0px -200px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .station-map-place-col:before {
    background-image: url("../images/base/icon-blank@2x.png");
    -moz-background-size: 13px auto;
    -o-background-size: 13px auto;
    -webkit-background-size: 13px auto;
    background-size: 13px auto;
  }
}
.station-map-place-col:hover, .station-map-place-col.active {
  background-color: #f7f7f7;
}
.station-map-place-col a {
  display: block;
  padding: 15px 15px 15px 40px;
  color: #33322f;
  text-decoration: none;
  position: relative;
}
.station-map-place-col a:before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  background: url("../images/base/icon-link-circle2.png") no-repeat;
  top: 50%;
  right: 20px;
  bottom: auto;
  left: auto;
  z-index: 10;
  margin-top: -8px;
  background-position: 0 -229px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .station-map-place-col a:before {
    background-image: url("../images/base/icon-link-circle2@2x.png");
    -moz-background-size: 15px auto;
    -o-background-size: 15px auto;
    -webkit-background-size: 15px auto;
    background-size: 15px auto;
  }
}
.station-map-place-col:nth-child(2n-1) {
  margin-left: 0;
}
@media screen and (max-width: 640px) {
  .station-map-place-col {
    display: block;
    width: auto;
    margin-right: 0;
    margin-left: 0;
    margin-top: 10px;
  }
  .station-map-place-col:first-child {
    margin-top: 0;
  }
  .station-map-place-col a {
    padding-left: 50px;
  }
}

@media screen and (max-width: 640px) {
  .station-map-place-image,
  .station-map-place-text {
    display: block;
  }
}

.station-map-place-image {
  width: 21.55172%;
  height: 0;
  padding-top: 21.55172%;
  background-color: #f7f7f7;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
@media screen and (max-width: 640px) {
  .station-map-place-image {
    display: none;
  }
}

@media screen and (max-width: 640px) {
  .station-map-place-text {
    width: auto;
  }
}

.station-map-place-name,
.station-map-place-address,
.station-map-place-tel {
  padding-left: 15px;
}
@media screen and (max-width: 640px) {
  .station-map-place-name,
  .station-map-place-address,
  .station-map-place-tel {
    padding-left: 0;
  }
}

.station-map-place-name {
  font-size: 18px;
  margin-bottom: 5px;
  font-weight: bold;
}
@media screen and (max-width: 640px) {
  .station-map-place-name {
    margin-bottom: 0;
    font-size: 16px;
    line-height: 1.4;
  }
}

.station-map-place-address {
  font-size: 12px;
}
@media screen and (max-width: 640px) {
  .station-map-place-address {
    display: none;
  }
}

@media screen and (max-width: 640px) {
  .station-map-place-tel {
    line-height: 1.0;
  }
}

.escape-map .btn {
  position: relative;
}
.escape-map .btn:before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  background: url("../images/base/icon-link-circle2.png") no-repeat;
  top: 50%;
  right: 50px;
  bottom: auto;
  left: auto;
  z-index: 10;
  margin-top: -8px;
  background-position: 0 0;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .escape-map .btn:before {
    background-image: url("../images/base/icon-link-circle2@2x.png");
    -moz-background-size: 15px auto;
    -o-background-size: 15px auto;
    -webkit-background-size: 15px auto;
    background-size: 15px auto;
  }
}
.escape-map .btn span {
  padding-top: 20px;
  padding-bottom: 20px;
  padding-left: 80px;
  background: url("../images/base/icon-escape.png") no-repeat 0 50%;
}
@media screen and (max-width: 640px) {
  .escape-map .btn:before {
    right: 20px;
  }
  .escape-map .btn span {
    padding-left: 40px;
    -moz-background-size: 25px auto;
    -o-background-size: 25px auto;
    -webkit-background-size: 25px auto;
    background-size: 25px auto;
  }
}

@media screen and (max-width: 640px) {
  .station-area .content-box {
    padding: 20px 15px;
    border: 1px solid #e2e2e2;
    -moz-border-radius: 0;
    -webkit-border-radius: 0;
    border-radius: 0;
  }
  .station-area .content-box-title {
    color: #33322f;
    padding: 0;
    padding-bottom: 10px;
    margin-bottom: 20px;
    border-bottom-width: 3px;
    border-bottom-style: solid;
  }
  .station-area .content-box-inner {
    border: none;
    padding: 0;
  }
}

.station-list {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}

.station-list-row {
  display: table-row;
}
@media screen and (max-width: 640px) {
  .station-list-row {
    display: block;
    font-size: 0;
  }
}

.station-list-th,
.station-list-td {
  display: table-cell;
  vertical-align: top;
  text-align: center;
  width: 55px;
}
@media screen and (max-width: 640px) {
  .station-list-th,
  .station-list-td {
    display: block;
    width: auto;
    text-align: left;
  }
}

.station-list-th {
  height: 156px;
  position: relative;
}
.station-list-th.station-list-title div,
.station-list-th a, .station-list-th span {
  display: block;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  height: 0;
  overflow: hidden;
  padding-top: 283.63636%;
  background: url("../images/train/station-list-name.png") no-repeat;
}
@media screen and (max-width: 640px) {
  .station-list-th.station-list-title div,
  .station-list-th a, .station-list-th span {
    position: relative;
    padding-top: 0;
    height: auto;
    background-image: none;
  }
}
.station-list-th.station-list-title div {
  padding-top: 156%;
  background-position: 15px 4px;
  background-image: url("../images/train/station-list-title.png");
}
@media screen and (max-width: 640px) {
  .station-list-th.station-list-title div {
    padding-top: 0;
    background-image: none;
  }
}
.station-list-th.station-list-title-time div {
  background-position: 15px -282px;
}
.station-list-th.station-list-fujisawa a {
  background-position: 14px 0;
}
.station-list-th.station-list-fujisawa a:hover, .station-list-th.station-list-fujisawa.current span {
  background-position: 14px -251px;
}
.station-list-th.station-list-ishigami a {
  background-position: -43px 0;
}
.station-list-th.station-list-ishigami a:hover, .station-list-th.station-list-ishigami.current span {
  background-position: -43px -251px;
}
.station-list-th.station-list-yanagikoji a {
  background-position: -99px 0;
}
.station-list-th.station-list-yanagikoji a:hover, .station-list-th.station-list-yanagikoji.current span {
  background-position: -99px -251px;
}
.station-list-th.station-list-kugenuma a {
  background-position: -154px 0;
}
.station-list-th.station-list-kugenuma a:hover, .station-list-th.station-list-kugenuma.current span {
  background-position: -154px -251px;
}
.station-list-th.station-list-shonankaigankoen a {
  background-position: -211px 0;
}
.station-list-th.station-list-shonankaigankoen a:hover, .station-list-th.station-list-shonankaigankoen.current span {
  background-position: -211px -251px;
}
.station-list-th.station-list-enoshima a {
  background-position: -268px 0;
}
.station-list-th.station-list-enoshima a:hover, .station-list-th.station-list-enoshima.current span {
  background-position: -268px -251px;
}
.station-list-th.station-list-koshigoe a {
  background-position: -323px 0;
}
.station-list-th.station-list-koshigoe a:hover, .station-list-th.station-list-koshigoe.current span {
  background-position: -323px -251px;
}
.station-list-th.station-list-kamakurakokomae a {
  background-position: -378px 0;
}
.station-list-th.station-list-kamakurakokomae a:hover, .station-list-th.station-list-kamakurakokomae.current span {
  background-position: -378px -251px;
}
.station-list-th.station-list-shichirigahama a {
  background-position: -434px 0;
}
.station-list-th.station-list-shichirigahama a:hover, .station-list-th.station-list-shichirigahama.current span {
  background-position: -434px -251px;
}
.station-list-th.station-list-inamuragasaki a {
  background-position: -490px 0;
}
.station-list-th.station-list-inamuragasaki a:hover, .station-list-th.station-list-inamuragasaki.current span {
  background-position: -490px -251px;
}
.station-list-th.station-list-gokurakuji a {
  background-position: -547px 0;
}
.station-list-th.station-list-gokurakuji a:hover, .station-list-th.station-list-gokurakuji.current span {
  background-position: -547px -251px;
}
.station-list-th.station-list-hase a {
  background-position: -602px 0;
}
.station-list-th.station-list-hase a:hover, .station-list-th.station-list-hase.current span {
  background-position: -602px -251px;
}
.station-list-th.station-list-yuigahama a {
  background-position: -658px 0;
}
.station-list-th.station-list-yuigahama a:hover, .station-list-th.station-list-yuigahama.current span {
  background-position: -658px -251px;
}
.station-list-th.station-list-wadazuka a {
  background-position: -714px 0;
}
.station-list-th.station-list-wadazuka a:hover, .station-list-th.station-list-wadazuka.current span {
  background-position: -714px -251px;
}
.station-list-th.station-list-kamakura a {
  background-position: -770px 0;
}
.station-list-th.station-list-kamakura a:hover, .station-list-th.station-list-kamakura.current span {
  background-position: -770px -251px;
}
@media screen and (max-width: 640px) {
  .station-list-th {
    width: auto;
    height: auto;
    vertical-align: top;
    border-bottom: 1px solid #e2e2e2;
  }
  .station-list-th:last-child {
    border-bottom: none;
  }
  .station-list-th div a {
    padding-bottom: 10px;
    padding-top: 10px;
    padding-left: 50px;
    padding-right: 20px;
    text-decoration: none;
    color: #33322f !important;
    position: relative;
    font-size: 18px;
    line-height: 1.2;
    position: relative;
  }
  .station-list-th div a:before {
    content: "";
    display: block;
    width: 16px;
    height: 16px;
    position: absolute;
    background: url("../images/base/icon-link-circle2.png") no-repeat;
    top: 50%;
    right: 20px;
    bottom: auto;
    left: auto;
    z-index: 10;
    margin-top: -8px;
    background-position: 0 -229px;
  }
}
@media screen and (max-width: 640px) and (-webkit-min-device-pixel-ratio: 2) {
  .station-list-th div a:before {
    background-image: url("../images/base/icon-link-circle2@2x.png");
    -moz-background-size: 15px auto;
    -o-background-size: 15px auto;
    -webkit-background-size: 15px auto;
    background-size: 15px auto;
  }
}
@media screen and (max-width: 640px) {
  .station-list-th div a:after {
    content: "";
    display: block;
    width: 26px;
    height: 26px;
    top: 50%;
    left: 15px;
    position: absolute;
    margin-top: -13px;
    background: url("../images/train/station-number2@2x.png") no-repeat;
    -moz-background-size: 149px auto;
    -o-background-size: 149px auto;
    -webkit-background-size: 149px auto;
    background-size: 149px auto;
    line-height: 1.2;
  }
  .station-list-th div a i {
    display: block;
    font-size: 10px;
  }
  .station-list-th.station-list-fujisawa a:after {
    background-position: 0 0;
  }
  .station-list-th.station-list-ishigami a:after {
    background-position: 0 -124px;
  }
  .station-list-th.station-list-yanagikoji a:after {
    background-position: 0 -247px;
  }
  .station-list-th.station-list-kugenuma a:after {
    background-position: 0 -371px;
  }
  .station-list-th.station-list-shonankaigankoen a:after {
    background-position: 0 -495px;
  }
  .station-list-th.station-list-enoshima a:after {
    background-position: 0 -619px;
  }
  .station-list-th.station-list-koshigoe a:after {
    background-position: 0 -743px;
  }
  .station-list-th.station-list-kamakurakokomae a:after {
    background-position: 0 -867px;
  }
  .station-list-th.station-list-shichirigahama a:after {
    background-position: -124px 1px;
  }
  .station-list-th.station-list-inamuragasaki a:after {
    background-position: -124px -123px;
  }
  .station-list-th.station-list-gokurakuji a:after {
    background-position: -124px -246px;
  }
  .station-list-th.station-list-hase a:after {
    background-position: -124px -371px;
  }
  .station-list-th.station-list-yuigahama a:after {
    background-position: -124px -495px;
  }
  .station-list-th.station-list-wadazuka a:after {
    background-position: -124px -619px;
  }
  .station-list-th.station-list-kamakura a:after {
    background-position: -124px -743px;
  }
}

.station-list-title {
  width: 120px;
}
.station-list-title div {
  background-image: url("../images/train/station-list-title.png");
}
@media screen and (max-width: 640px) {
  .station-list-title {
    display: none;
  }
}

.station-list-time,
.station-list-price {
  font-size: 14px;
}

.station-list-time {
  padding-top: 10px;
  padding-bottom: 5px;
  border-bottom: 1px solid #e2e2e2;
}

.station-list-price {
  padding-top: 8px;
  line-height: 1.2;
}

.station-list-only .station-list-fujisawa a {
  background-position: 14px -477px;
}
.station-list-only .station-list-ishigami a {
  background-position: -43px -477px;
}
.station-list-only .station-list-yanagikoji a {
  background-position: -99px -477px;
}
.station-list-only .station-list-kugenuma a {
  background-position: -154px -477px;
}
.station-list-only .station-list-shonankaigankoen a {
  background-position: -211px -477px;
}
.station-list-only .station-list-enoshima a {
  background-position: -268px -477px;
}
.station-list-only .station-list-koshigoe a {
  background-position: -323px -477px;
}
.station-list-only .station-list-kamakurakokomae a {
  background-position: -378px -477px;
}
.station-list-only .station-list-shichirigahama a {
  background-position: -434px -477px;
}
.station-list-only .station-list-inamuragasaki a {
  background-position: -490px -477px;
}
.station-list-only .station-list-gokurakuji a {
  background-position: -547px -477px;
}
.station-list-only .station-list-hase a {
  background-position: -602px -477px;
}
.station-list-only .station-list-yuigahama a {
  background-position: -658px -477px;
}
.station-list-only .station-list-wadazuka a {
  background-position: -714px -477px;
}
.station-list-only .station-list-kamakura a {
  background-position: -770px -477px;
}

@media screen and (max-width: 640px) {
  .station-fare-list .content-box-inner {
    overflow: scroll;
    border: 1px solid #e2e2e2;
  }
  .station-fare-list .station-list {
    width: 100%;
    display: table;
    background-color: #fff;
    border-collapse: collapse;
  }
  .station-fare-list .station-list-row {
    display: table-row;
  }
  .station-fare-list .station-list-row:nth-child(4) {
    border-top: 1px solid #e2e2e2;
  }
  .station-fare-list .station-list-th,
  .station-fare-list .station-list-td {
    display: table-cell;
    vertical-align: middle;
    text-align: center;
    border-right: 1px solid #e2e2e2;
  }
  .station-fare-list .station-list-th:last-child,
  .station-fare-list .station-list-td:last-child {
    border-right: none;
    border-bottom: 1px solid #e2e2e2;
  }
  .station-fare-list .station-list-th:first-child,
  .station-fare-list .station-list-td:first-child {
    white-space: nowrap;
    padding-left: 5px;
    padding-right: 5px;
    font-size: 10px;
  }
  .station-fare-list .station-list-th {
    width: 50px;
  }
  .station-fare-list .station-list-th.current {
    background-color: #14a94b;
    color: #fff;
  }
  .station-fare-list .station-list-th div span {
    padding: 5px 10px;
    font-size: 12px;
  }
  .station-fare-list .station-list-th div a {
    padding: 5px 10px;
    font-size: 12px;
  }
  .station-fare-list .station-list-th div a:before {
    display: none;
  }
  .station-fare-list .station-list-th div a:after {
    top: 0;
    left: 50%;
    width: 15px;
    height: 15px;
    margin-left: -7px;
    -moz-background-size: 50px auto;
    -o-background-size: 50px auto;
    -webkit-background-size: 50px auto;
    background-size: 50px auto;
  }
  .station-fare-list .station-list-time {
    padding-top: 5px;
  }
  .station-fare-list .station-list-price {
    padding-top: 5px;
    padding-bottom: 5px;
  }
}

@media screen and (max-width: 640px) {
  .station-index.content-box {
    padding: 15px 0 0;
  }
  .station-index .content-box-title {
    margin-bottom: 10px;
  }
}

.fare-box {
  margin-top: 20px;
}

.fare-box-title {
  margin-bottom: 20px;
  text-align: center;
  font-size: 18px;
}
.fare-box-title strong {
  font-size: 24px;
  margin: 0 0.5em;
}
.fare-box-title span {
  font-size: 16px;
}

.fare-box-table-wrap {
  position: relative;
}

.fare-box-table-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  background: url("../images/base/opa.png") repeat 0 0;
  text-align: center;
  z-index: 10;
  display: none;
}
.fare-box-table-overlay div {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: table;
}
.fare-box-table-overlay div p {
  display: table-cell;
  vertical-align: middle;
}

.fare-box-table,
.fare-commute-table {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}

@media screen and (max-width: 640px) {
  .fare-box-table {
    display: block;
    border: 1px solid #e2e2e2;
  }
}

.fare-box-table-tr,
.fare-commute-table-tr {
  display: table-row;
}

@media screen and (max-width: 640px) {
  .fare-box-table-tr {
    display: block;
  }
}

.fare-box-table-th,
.fare-box-table-td,
.fare-commute-table-th,
.fare-commute-table-td {
  display: table-cell;
  vertical-align: middle;
  padding: 20px;
  border: 1px solid #e2e2e2;
}
.fare-box-table-th.fare-commute,
.fare-box-table-td.fare-commute,
.fare-commute-table-th.fare-commute,
.fare-commute-table-td.fare-commute {
  padding: 0;
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 640px) {
  .fare-box-table-th.fare-commute,
  .fare-box-table-td.fare-commute,
  .fare-commute-table-th.fare-commute,
  .fare-commute-table-td.fare-commute {
    overflow: scroll;
  }
}

@media screen and (max-width: 640px) {
  .fare-box-table-th,
  .fare-box-table-td {
    display: block;
    border: none;
  }
}

.fare-commute-table {
  position: relative;
  width: 100.2%;
  margin-left: -1px;
  margin-top: -1px;
  margin-right: -1px;
  margin-bottom: -1px;
}

.fare-box-table-th {
  text-align: center;
  font-weight: bold;
  color: #fff;
  background-color: #14a94b;
}
.fare-box-table-th .cap {
  font-size: 12px;
}
.fare-box-table-th .cap a {
  color: #fff !important;
}

.fare-box-table-td .adult {
  margin-right: 1em;
}
.fare-box-table-td span i {
  margin-right: 5px;
  font-weight: bold;
  letter-spacing: 1px;
}

.fare-commute-table-th {
  padding-top: 15px;
  padding-bottom: 15px;
  background-color: #f7f7f7;
  text-align: center;
  font-weight: bold;
}

.fare-about-row {
  margin-bottom: 20px;
}

.fare-about-title {
  margin-bottom: 5px;
  font-size: 16px;
  font-weight: bold;
}

.banner-otoku-ticket a {
  display: block;
  padding-top: 25px;
  padding-bottom: 25px;
  position: relative;
  position: relative;
}
.banner-otoku-ticket a:before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  background: url("../images/base/icon-link-circle2.png") no-repeat;
  top: 50%;
  right: 20px;
  bottom: auto;
  left: auto;
  z-index: 10;
  margin-top: -8px;
  background-position: 0 -229px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .banner-otoku-ticket a:before {
    background-image: url("../images/base/icon-link-circle2@2x.png");
    -moz-background-size: 15px auto;
    -o-background-size: 15px auto;
    -webkit-background-size: 15px auto;
    background-size: 15px auto;
  }
}
.banner-otoku-ticket a:after {
  content: "";
  display: block;
  width: 55px;
  height: 40px;
  position: absolute;
  top: 50%;
  margin-top: -20px;
  left: 30px;
  background: url("../images/train/menu-icon.png") no-repeat -595px -3px;
}
.banner-otoku-ticket a span {
  font-size: 20px;
}
@media screen and (max-width: 640px) {
  .banner-otoku-ticket a {
    padding-top: 15px;
    padding-bottom: 15px;
  }
  .banner-otoku-ticket a:after {
    left: 23px;
    background-position: -89px 4px;
  }
  .banner-otoku-ticket a span {
    padding-left: 0;
  }
}

.banner-box {
  background-color: #fff;
  border: 1px solid #e2e2e2;
  padding: 5px 19px;
  text-align: center;
}
.banner-box img {
  width: 100%;
  height: auto;
  max-width: inherit;
}
.banner-box ul li {
  margin: 15px 0;
}
.banner-box .links {
  margin-top: 15px;
  margin-bottom: 10px;
}
.banner-box .links p {
  text-align: left;
}
.banner-box .links p a {
  display: inline-block;
  padding-left: 18px;
  text-align: left;
  line-height: 1.4;
  text-decoration: none;
}
.banner-box .links p a:hover {
  text-decoration: underline;
}
@media screen and (max-width: 1140px) {
  .banner-box {
    padding: 20px;
  }
  .banner-box img {
    width: auto;
  }
  .banner-box ul {
    font-size: 0;
  }
  .banner-box ul li {
    display: inline-block;
    vertical-align: top;
    margin: 10px;
  }
  .banner-box .links p {
    margin: 0 10px;
    text-align: center;
    display: inline-block;
    font-size: 18px;
  }
}
@media screen and (max-width: 640px) {
  .banner-box ul li {
    display: inline-block;
    width: 46%;
    margin-bottom: 0%;
    margin-left: 2%;
    margin-right: 2%;
  }
  .banner-box ul li img {
    width: 100%;
    height: auto;
  }
  .banner-box .links p {
    font-size: 14px;
    margin-bottom: 0;
  }
}

.banner-mini-title {
  margin-bottom: 15px;
  padding-left: 28px;
  font-size: 18px;
  font-weight: bold;
  line-height: 22px;
  background: url("../images/base/icon-heart.png") no-repeat 0 0;
}

.banner-mini-box {
  padding: 20px;
  background-color: #fff;
  border: 1px solid #e2e2e2;
}

.banner-mini-list {
  width: 540px;
  margin-left: auto;
  margin-right: auto;
}
.banner-mini-list img {
  margin-left: auto;
  margin-right: auto;
}
.banner-mini-list .slick-next,
.banner-mini-list .slick-prev {
  position: absolute;
  -moz-appearance: none;
  -webkit-appearance: none;
  top: 50%;
  width: 30px;
  height: 0;
  padding: 0;
  padding-top: 30px;
  overflow: hidden;
  border: none;
  margin-top: -15px;
  cursor: pointer;
  background: url("../images/base/icon-nextprev.png") no-repeat;
}
.banner-mini-list .slick-next {
  right: -45px;
  background-position: 100% 0;
}
.banner-mini-list .slick-prev {
  left: -45px;
  background-position: 0 0;
}
@media screen and (max-width: 1140px) {
  .banner-mini-list {
    width: auto;
  }
  .banner-mini-list .slick-next,
  .banner-mini-list .slick-prev {
    background-image: url("../images/base/icon-nextprev@2x.png");
    -moz-background-size: auto 30px;
    -o-background-size: auto 30px;
    -webkit-background-size: auto 30px;
    background-size: auto 30px;
  }
  .banner-mini-list .slick-next {
    right: -10px;
    background-position: 100% 0;
  }
  .banner-mini-list .slick-prev {
    left: -10px;
    background-position: 0 0;
  }
}
@media screen and (max-width: 640px) {
  .banner-mini-list li {
    margin: 0 20px;
  }
}

.banner-area {
  font-size: 0;
}
@media screen and (max-width: 1140px) {
  .banner-area ul {
    text-align: center;
  }
  .banner-area ul li {
    display: inline-block;
    vertical-align: top;
    width: 40%;
    margin: 0 5%;
    margin-bottom: 0 !important;
  }
}
@media screen and (max-width: 640px) {
  .banner-area ul li {
    width: 100%;
    display: block;
    margin-left: 0;
    margin-right: 0;
    margin-bottom: 10px !important;
  }
}

.recruit-banner-box {
  background-color: #fff;
  border: 1px solid #09872b;
  margin-bottom: 20px;
  padding: 0;
  text-align: center;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.recruit-banner-box img {
  width: 100%;
  height: auto;
  max-width: inherit;
}
.recruit-banner-box .content-box-inner {
  padding: 5px 19px;
}
.recruit-banner-box ul li {
  margin: 15px 0;
}
@media screen and (max-width: 1140px) {
  .recruit-banner-box img {
    width: auto;
  }
  .recruit-banner-box ul {
    font-size: 0;
  }
  .recruit-banner-box ul li {
    display: inline-block;
    vertical-align: top;
    margin: 10px;
  }
}
@media screen and (max-width: 640px) {
  .recruit-banner-box ul li {
    display: inline-block;
    width: 46%;
    margin-bottom: 0%;
    margin-left: 2%;
    margin-right: 2%;
  }
  .recruit-banner-box ul li img {
    width: 100%;
    height: auto;
  }
}
.recruit-banner-box .content-box-title {
  margin-bottom: 0;
  padding-top: 15px;
  padding-left: 25px;
  padding-bottom: 15px;
  text-align: left;
  border-bottom: none;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
  color: #fff;
  background-color: #09872b;
  margin-left: -1px;
  margin-right: -1px;
  margin-top: -1px;
  font-size: 18px;
}

.photo-box {
  border: 1px solid #e2e2e2;
  background-color: #fff;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
.photo-box a {
  display: block;
  text-decoration: none;
  color: #33322f;
  padding: 10px 10px 15px;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.photo-box a:hover {
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.photo-box a:hover {
  background-color: #f7f7f7;
}
.photo-box .photo-box-image {
  margin-bottom: 15px;
  text-align: center;
}
.photo-box .photo-box-title {
  margin-bottom: 5px;
  font-weight: bold;
  font-size: 18px;
  line-height: 1.6;
}
.photo-box .photo-box-desc {
  font-size: 12px;
  line-height: 1.6;
}
.photo-box .photo-box-text {
  padding-left: 10px;
  padding-right: 10px;
}

.photo-box-mini {
  border: 1px solid #e2e2e2;
  background-color: #fff;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
.photo-box-mini:hover {
  background-color: #f7f7f7;
}
.photo-box-mini a {
  display: block;
  padding: 10px 30px 10px 10px;
  font-size: 0;
  text-decoration: none;
  position: relative;
}
.photo-box-mini a:before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  background: url("../images/base/icon-link-circle2.png") no-repeat;
  top: 50%;
  right: 20px;
  bottom: auto;
  left: auto;
  z-index: 10;
  margin-top: -8px;
  background-position: 0 -229px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .photo-box-mini a:before {
    background-image: url("../images/base/icon-link-circle2@2x.png");
    -moz-background-size: 15px auto;
    -o-background-size: 15px auto;
    -webkit-background-size: 15px auto;
    background-size: 15px auto;
  }
}
.photo-box-mini .photo-box-image,
.photo-box-mini .photo-box-text {
  display: inline-block;
  vertical-align: middle;
  font-size: 14px;
}
.photo-box-mini .photo-box-image {
  width: 100px;
  height: 0;
  padding-top: 100px;
  margin-bottom: 0;
  text-align: center;
  background-repeat: no-repeat;
  background-position: center center;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
}
.photo-box-mini .photo-box-text {
  width: 320px;
  padding-left: 20px;
  padding-right: 0;
}
@media screen and (max-width: 1140px) {
  .photo-box-mini .photo-box-image {
    width: 31.25%;
  }
  .photo-box-mini .photo-box-text {
    width: 60%;
    padding-left: 5%;
  }
}
@media screen and (max-width: 640px) {
  .photo-box-mini a {
    padding-right: 10px;
  }
  .photo-box-mini a:before {
    display: none;
  }
  .photo-box-mini .photo-box-image {
    width: auto;
    margin-bottom: 10px;
  }
  .photo-box-mini .photo-box-image,
  .photo-box-mini .photo-box-text {
    display: block;
  }
  .photo-box-mini .photo-box-text {
    width: auto;
    padding-left: 0;
  }
  .photo-box-mini .photo-box-title {
    margin-bottom: 0;
  }
}

.photo-box-ticket {
  border: 1px solid #e2e2e2;
  background-color: #fff;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
.photo-box-ticket a {
  display: block;
  text-decoration: none;
  color: #33322f;
  font-size: 0;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.photo-box-ticket a:hover {
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.photo-box-ticket a:after {
  content: "";
  display: block;
  clear: both;
}
.photo-box-ticket a:hover {
  background-color: #f7f7f7;
}
.photo-box-ticket .photo-box-image,
.photo-box-ticket .photo-box-text {
  display: inline-block;
  vertical-align: middle;
  font-size: 14px;
}
.photo-box-ticket .photo-box-image {
  width: 31.25%;
}
.photo-box-ticket .photo-box-text {
  width: 56.25%;
  padding-left: 6.25%;
  padding-right: 6.25%;
}
.photo-box-ticket .photo-box-title {
  margin-bottom: 10px;
  font-size: 14px;
}
.photo-box-ticket .photo-box-desc {
  font-size: 12px;
}

.ticket-category {
  margin-top: 10px;
}
.ticket-category span {
  display: inline-block;
  vertical-align: top;
  margin-right: 5px;
  color: #fff;
  line-height: 1;
  padding: 5px;
  font-size: 12px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
}
.ticket-category span.train {
  background-color: #14a94b;
}
.ticket-category span.bus {
  background-color: #f57f31;
}
.ticket-category span.tourism {
  background-color: #1e5e86;
}

.dashed-list li {
  padding: 20px 10px;
  border-bottom: 1px dashed #e2e2e2;
}
.dashed-list li:first-child {
  padding-top: 0;
}
.dashed-list li:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}

.icon-list li a {
  padding-left: 16px;
  position: relative;
}
.icon-list li a:before {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  position: absolute;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  top: 50%;
  right: "";
  bottom: "";
  left: 0;
  margin-top: -5px;
  background-position: -1px -230px;
}
@media screen and (max-width: 640px) {
  .icon-list li a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}
.content-box-train .icon-list li a {
  position: relative;
}
.content-box-train .icon-list li a:before {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  position: absolute;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  top: 50%;
  right: "";
  bottom: "";
  left: 0;
  margin-top: -5px;
  background-position: -1px -350px;
}
@media screen and (max-width: 640px) {
  .content-box-train .icon-list li a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}
.content-box-bus .icon-list li a {
  position: relative;
}
.content-box-bus .icon-list li a:before {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  position: absolute;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  top: 50%;
  right: "";
  bottom: "";
  left: 0;
  margin-top: -5px;
  background-position: -1px -460px;
}
@media screen and (max-width: 640px) {
  .content-box-bus .icon-list li a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}

.mainvisual {
  position: relative;
  background: url("../images/top/mainvisual-bg.png") no-repeat center center;
  -moz-transition: all 0.8s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.8s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.8s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.8s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
}
.mainvisual .slick-dots {
  position: relative;
  margin-top: 30px;
}
.mainvisual .slick-dots li button {
  background-color: #dad2ba;
}
.mainvisual .slick-dots li.slick-active button {
  background-color: #09872b;
}
.load .mainvisual {
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
}
@media screen and (max-width: 1140px) {
  .mainvisual {
    width: 100%;
    background: none;
  }
}

.top-mainvisual {
  position: relative;
  -moz-transition: all 0.8s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.8s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.8s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.8s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
}
.top-mainvisual .slick-dots {
  position: absolute;
  bottom: 20px;
}
.top-mainvisual .slick-dots li button {
  background-color: #dad2ba;
}
.top-mainvisual .slick-dots li.slick-active button {
  background-color: #09872b;
}
.load .top-mainvisual {
  filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
  opacity: 1;
}
@media screen and (max-width: 1140px) {
  .top-mainvisual {
    width: 100%;
    background: none;
  }
}

.mainvisual-list {
  position: relative;
  z-index: 2;
}
.mainvisual-list .slick-slide {
  margin-right: 40px;
  margin-left: 40px;
}
.top-mainvisual .mainvisual-list .slick-list {
  box-shadow: 1px 1.732px 6px 0px rgba(0, 0, 0, 0.35);
}
.top-mainvisual .mainvisual-list .slick-slide {
  margin-left: 0;
  margin-right: 0;
}
@media screen and (max-width: 640px) {
  .mainvisual-list {
    width: 100%;
  }
  .mainvisual-list .slick-slide {
    margin-right: 0;
    margin-left: 0;
  }
}

.top-mainvisual-list {
  position: relative;
  z-index: 2;
}
.top-mainvisual-list .slick-list {
  box-shadow: 1px 1.732px 6px 0px rgba(0, 0, 0, 0.35);
}
@media screen and (max-width: 640px) {
  .top-mainvisual-list {
    width: 100%;
  }
  .top-mainvisual-list .slick-slide {
    margin-right: 0;
    margin-left: 0;
  }
}

.mainvisual-fix {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
}

.company-box-table,
.company-wrap-table {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}

.company-box-table-tr,
.company-wrap-table-tr {
  display: table-row;
}
.company-box-table-tr .company-commute,
.company-wrap-table-tr .company-commute {
  padding: 0;
  position: relative;
  overflow: hidden;
}
.company-box-table-tr .bg,
.company-wrap-table-tr .bg {
  background: #f7f7f7;
}
.company-box-table-tr .no-border-bottom,
.company-wrap-table-tr .no-border-bottom {
  border-bottom: none;
}

.company-box-table-th,
.company-box-table-td,
.company-wrap-table-th,
.company-wrap-table-td {
  display: table-cell;
  vertical-align: middle;
  padding: 10px 20px;
  border: 1px solid #e2e2e2;
}

.company-box-table-th,
.company-wrap-table-th {
  white-space: nowrap;
}

.company-box-table-th {
  font-weight: bold;
  background-color: #f7f7f7;
  vertical-align: top;
  text-align: left;
}

.company-wrap-table-th {
  font-weight: bold;
  background-color: #f1f1f1;
  vertical-align: top;
}

.company-inner-box-table {
  position: relative;
  width: 100.2%;
  margin-left: -1px;
  margin-top: -1px;
  margin-right: -1px;
  margin-bottom: -1px;
}

.company-box-hide {
  display: table-cell;
  vertical-align: middle;
  padding: 10px 20px;
}

.outline .company-box-table-th {
  width: 30%;
  text-align: left;
}

.officer .company-box-table-th {
  width: 25%;
}

.history-table .company-box-table-th {
  width: 28%;
  text-align: right;
}

.company-basic-table {
  width: 100%;
}
.company-basic-table th, .company-basic-table td {
  padding: 10px 20px;
  border: 1px solid #e2e2e2;
}
.company-basic-table th {
  background: #09872b;
  color: #fff;
  text-align: center;
  font-weight: bold;
}
.company-basic-table th.part1 {
  width: 12%;
}
.company-basic-table th.part2 {
  width: 22%;
}
.company-basic-table td {
  text-align: right;
}
.company-basic-table .bg {
  background: #f7f7f7;
}
.company-basic-table .bg2 {
  background: #eff7ea;
}
.company-basic-table .sub {
  text-align: center;
  font-weight: bold;
}

.recruit-table {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}

.recruit-table-row {
  display: table-row;
}

.recruit-table-th,
.recruit-table-td {
  display: table-cell;
  vertical-align: top;
  padding: 20px;
  border: 1px solid #e2e2e2;
}

.recruit-table-th {
  background-color: #f7f7f7;
}

.right-link-box {
  background-color: #fff;
}

.right-link-box-title {
  color: #fff;
  padding: 10px 30px;
  text-align: center;
  font-size: 14px;
  font-weight: bold;
  line-height: 1.0;
}

.right-link-box-inner {
  padding: 20px;
  border: 1px solid #e9e9e9;
  border-top: none;
}

.right-link-list li {
  margin-bottom: 9px;
  line-height: 1.4;
  padding-left: 1.4em;
  text-indent: -1.4em;
}
.right-link-list li a {
  padding-left: 1.4em;
  color: #33322f !important;
  text-decoration: none;
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 0;
  background-position: 0 3px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .right-link-list li a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.right-link-list li a:hover {
  text-decoration: underline;
}
.right-link-list li:last-child {
  margin-bottom: 0;
}

.contact-box-caption {
  font-size: 12px;
  text-align: center;
}

.contact-box-number {
  font-size: 32px;
  text-align: center;
  font-weight: bold;
}

.side-link {
  background-color: #fff;
  padding: 20px;
  border: 1px solid #e2e2e2;
}

.side-link-title {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 10px;
}

.side-link-list li {
  margin-bottom: 5px;
  line-height: 1.4;
}
.side-link-list li:last-child {
  margin-bottom: 0;
}
.side-link-list li a {
  display: inline-block;
  padding-left: 18px;
  text-decoration: none;
}
.side-link-list li a:hover {
  text-decoration: underline;
}

.spot-table {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}

.spot-table-row {
  display: table-row;
}

.spot-table-th,
.spot-table-td {
  display: table-cell;
  vertical-align: top;
  padding: 15px;
  border: 1px solid #e2e2e2;
}

.spot-table-th {
  background-color: #f7f7f7;
}
.spot-table-th span {
  font-size: 12px;
}

.illust-map {
  width: 990px;
  height: 590px;
  padding: 5px;
  background-color: #fff;
  border: 1px solid #e2e2e2;
}

.illust-map-inner {
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: 0 0;
  position: relative;
}
.illust-map-inner a {
  display: block;
  position: absolute;
  height: 0;
  overflow: hidden;
  background: url("../images/base/map-station.png") no-repeat 0 0;
  z-index: 1;
}
.illust-map-inner a.illust-map-fujisawa {
  width: 38px;
  padding-top: 94px;
  top: 38px;
  left: 274px;
  background-position: 0 0;
}
.illust-map-inner a.illust-map-fujisawa:hover {
  background-position: 0 -211px;
}
.illust-map-inner a.illust-map-ishigami {
  width: 38px;
  padding-top: 90px;
  top: 82px;
  left: 194px;
  background-position: -87px 0;
}
.illust-map-inner a.illust-map-ishigami:hover {
  background-position: -87px -211px;
}
.illust-map-inner a.illust-map-yanagikoji {
  width: 40px;
  padding-top: 110px;
  top: 144px;
  left: 260px;
  background-position: -165px 0;
}
.illust-map-inner a.illust-map-yanagikoji:hover {
  background-position: -165px -211px;
}
.illust-map-inner a.illust-map-kugenuma {
  width: 48px;
  padding-top: 94px;
  top: 187px;
  left: 162px;
  background-position: -249px 0;
}
.illust-map-inner a.illust-map-kugenuma:hover {
  background-position: -249px -211px;
}
.illust-map-inner a.illust-map-shonankaigankoen {
  width: 42px;
  padding-top: 166px;
  top: 288px;
  left: 164px;
  background-position: -338px 0;
}
.illust-map-inner a.illust-map-shonankaigankoen:hover {
  background-position: -338px -211px;
}
.illust-map-inner a.illust-map-enoshima {
  width: 46px;
  padding-top: 112px;
  top: 266px;
  left: 278px;
  background-position: -414px 0;
}
.illust-map-inner a.illust-map-enoshima:hover {
  background-position: -414px -211px;
}
.illust-map-inner a.illust-map-koshigoe {
  width: 38px;
  padding-top: 96px;
  top: 420px;
  left: 295px;
  background-position: -507px 0;
}
.illust-map-inner a.illust-map-koshigoe:hover {
  background-position: -507px -211px;
}
.illust-map-inner a.illust-map-kamakurakokomae {
  width: 38px;
  padding-top: 150px;
  top: 257px;
  left: 369px;
  background-position: -593px 0;
}
.illust-map-inner a.illust-map-kamakurakokomae:hover {
  background-position: -593px -211px;
}
.illust-map-inner a.illust-map-shichirigahama {
  width: 38px;
  padding-top: 130px;
  top: 446px;
  left: 439px;
  background-position: -676px 0;
}
.illust-map-inner a.illust-map-shichirigahama:hover {
  background-position: -676px -211px;
}
.illust-map-inner a.illust-map-inamuragasaki {
  width: 38px;
  padding-top: 136px;
  top: 300px;
  left: 560px;
  background-position: -760px 0;
}
.illust-map-inner a.illust-map-inamuragasaki:hover {
  background-position: -760px -211px;
}
.illust-map-inner a.illust-map-gokurakuji {
  width: 38px;
  padding-top: 115px;
  top: 275px;
  left: 614px;
  background-position: -842px 0;
}
.illust-map-inner a.illust-map-gokurakuji:hover {
  background-position: -842px -211px;
}
.illust-map-inner a.illust-map-hase {
  width: 38px;
  padding-top: 96px;
  top: 392px;
  left: 680px;
  background-position: -926px 0;
}
.illust-map-inner a.illust-map-hase:hover {
  background-position: -926px -211px;
}
.illust-map-inner a.illust-map-yuigahama {
  width: 38px;
  padding-top: 132px;
  top: 216px;
  left: 716px;
  background-position: -1007px 0;
}
.illust-map-inner a.illust-map-yuigahama:hover {
  background-position: -1007px -211px;
}
.illust-map-inner a.illust-map-wadazuka {
  width: 40px;
  padding-top: 115px;
  top: 364px;
  left: 778px;
  background-position: -1095px 0;
}
.illust-map-inner a.illust-map-wadazuka:hover {
  background-position: -1095px -211px;
}
.illust-map-inner a.illust-map-kamakura {
  width: 41px;
  padding-top: 94px;
  top: 242px;
  left: 853px;
  background-position: -1178px 0;
}
.illust-map-inner a.illust-map-kamakura:hover {
  background-position: -1178px -211px;
}
.illust-map-inner a.illust-map-fujisawa-bus {
  width: 41px;
  padding-top: 74px;
  top: 330px;
  left: 156px;
  background-position: 0 -425px;
}
.illust-map-inner a.illust-map-fujisawa-bus:hover {
  background-position: 0 -566px;
}
.illust-map-inner a.illust-map-ofuna-bus {
  width: 37px;
  padding-top: 79px;
  top: 285px;
  left: 422px;
  background-position: -86px -425px;
}
.illust-map-inner a.illust-map-ofuna-bus:hover {
  background-position: -86px -566px;
}
.illust-map-inner a.illust-map-kamakura-bus {
  width: 41px;
  padding-top: 74px;
  top: 429px;
  left: 576px;
  background-position: -172px -425px;
}
.illust-map-inner a.illust-map-kamakura-bus:hover {
  background-position: -172px -566px;
}
.illust-map-inner a.illust-map-kamiooka-bus {
  width: 42px;
  padding-top: 92px;
  top: -2px;
  left: 785px;
  background-position: -261px -425px;
}
.illust-map-inner a.illust-map-kamiooka-bus:hover {
  background-position: -261px -566px;
}
.illust-map-inner a.illust-map-totsuka-bus {
  width: 42px;
  padding-top: 92px;
  top: 18px;
  left: 470px;
  background-position: -342px -424px;
}
.illust-map-inner a.illust-map-totsuka-bus:hover {
  background-position: -342px -566px;
}
.illust-map-inner a.illust-map-st {
  width: 184px;
  padding-top: 42px;
  top: 522px;
  left: 160px;
  background-position: 0 -707px;
}
.illust-map-inner a.illust-map-st:hover {
  background-position: -233px -707px;
}

.news-title {
  margin-bottom: 30px;
  padding: 20px 30px;
  background-color: #fff;
  border-top-width: 3px;
  border-top-style: solid;
  border-bottom: 1px solid #e2e2e2;
}

.news-title-main {
  font-size: 32px;
  font-weight: bold;
}

.news-title-date {
  display: inline-block;
  vertical-align: middle;
  font-size: 16px;
  font-weight: normal;
}

.news-title-category {
  display: inline-block;
  vertical-align: middle;
}
.news-title-category span {
  display: inline-block;
  vertical-align: middle;
  color: #fff;
  font-size: 10px;
  margin-right: 5px;
  padding-right: 3px;
  padding-left: 12px;
  line-height: 17px;
  overflow: hidden;
  max-height: 17px;
  font-weight: bold;
  border-top-right-radius: 3px;
  border-bottom-right-radius: 3px;
  background-image: url("../images/base/icon-tag-left.png");
  background-repeat: no-repeat;
  background-position: 0 50%;
  background-color: #d0ac49;
}

.news-title-info {
  font-size: 0;
}

.news-box-content {
  font-size: 16px;
}
.news-box-content a.blt {
  padding-left: 15px;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  background-position: -1px -350px;
  background-position: 0 -346px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .news-box-content a.blt {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}
.news-box-content a img {
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.news-box-content a img:hover {
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.news-box-content a:hover img {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
.news-box-content p {
  margin-top: 15px;
  margin-bottom: 15px;
}
.news-box-content table {
  width: 100% !important;
}
.news-box-content table th, .news-box-content table td {
  padding: 15px;
  width: auto !important;
}
@media screen and (max-width: 640px) {
  .news-box-content table {
    width: 100%;
  }
}
.news-box-content .aligncenter {
  display: block;
  margin: 0 auto;
}
.news-box-content .alignleft {
  display: block;
  text-align: left;
  margin-right: auto;
}
.news-box-content .alignright {
  display: block;
  text-align: right;
  margin-left: auto;
}
.news-box-content strong {
  font-weight: bold;
}
.news-box-content em {
  font-style: italic;
}
.news-box-content blockquote {
  display: block;
  -webkit-margin-before: 1em;
  -webkit-margin-after: 1em;
  -webkit-margin-start: 30px;
  -webkit-margin-end: 30px;
  font-style: italic;
}
.news-box-content ul, .news-box-content ol {
  padding-left: 30px;
}
.news-box-content ul li {
  list-style-type: initial;
}
.news-box-content ol li {
  list-style-type: decimal;
}
.news-box-content h1, .news-box-content h2, .news-box-content h3, .news-box-content h4, .news-box-content h5, .news-box-content h6 {
  margin-bottom: 1em;
}
.news-box-content h1 {
  font-size: 32px;
}
.news-box-content h2 {
  font-size: 24px;
}
.news-box-content h3 {
  font-size: 18px;
}
.news-box-content h4 {
  font-size: 16px;
}
.news-box-content h5 {
  font-size: 14px;
  font-weight: bold;
}
.news-box-content h6 {
  font-size: 12px;
}

.bustour-box {
  padding: 30px;
  background-color: #fff;
  border: 1px solid #e2e2e2;
}

.bustour-box-inner:after {
  content: "";
  display: block;
  clear: both;
}

.bustour-box-left {
  width: 74.46809%;
  float: left;
}

.bustour-box-right {
  width: 22.34043%;
  float: right;
}

.bustour-box-title {
  position: relative;
  margin-bottom: 30px;
  text-align: center;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.0;
}

.bustour-box-place {
  margin-bottom: 15px;
  font-size: 0;
}

.bustour-box-place-title,
.bustour-box-place-text {
  display: inline-block;
  vertical-align: middle;
  font-size: 14px;
}

.bustour-box-place-title {
  padding: 5px 10px;
  border: 1px solid #e2e2e2;
  background-color: #f7f7f7;
  text-align: center;
  margin-right: 10px;
}

.bustour-box-btn {
  margin-top: 30px;
}
.bustour-box-btn a {
  display: block;
  text-align: center;
  padding-top: 20px;
  padding-bottom: 20px;
  position: relative;
}
.bustour-box-btn a:before {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  position: absolute;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  top: 50%;
  right: 20px;
  bottom: auto;
  left: auto;
  margin-top: -5px;
  background-position: -1px 0;
}
@media screen and (max-width: 640px) {
  .bustour-box-btn a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}
.bustour-box-btn a span {
  padding-right: 20px;
}

.bustour-description {
  margin-top: 20px;
  font-size: 12px;
}

.hankachi-box {
  margin-right: 20px;
  margin-left: 20px;
}
.hankachi-box:after {
  content: "";
  display: block;
  clear: both;
}

.hankachi-box-left {
  width: 67.46988%;
  float: left;
}

.hankachi-box-right {
  width: 26.50602%;
  float: right;
}
.hankachi-box-right img {
  width: 100%;
  height: auto;
}

.hankachi-box-title {
  margin-bottom: 20px;
}

.hankachi-box-text {
  padding-left: 40px;
  font-size: 12px;
}

.bustour-plan {
  padding: 30px;
  background-color: #fff;
  border: 1px solid #e2e2e2;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}

.bustour-plan-header {
  margin-bottom: 20px;
  text-align: center;
}

.bustour-plan-date {
  margin-bottom: 10px;
  line-height: 1.0;
  font-size: 12px;
}

.bustour-plan-name {
  line-height: 1.0;
  font-weight: bold;
  font-size: 24px;
}
.bustour-plan-name span {
  font-size: 12px;
}

.bustour-plan-image {
  margin-bottom: 20px;
  text-align: center;
}

.bustour-plan-link {
  margin-top: 10px;
}
.bustour-plan-link a {
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 -210px;
  padding-left: 20px;
  color: #f57f31;
  background-position: 0 -208px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .bustour-plan-link a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}

.bustour-plan-row:after {
  content: "";
  display: block;
  clear: both;
}

.bustour-plan-row-left {
  width: 20.63492%;
  float: left;
}

.bustour-plan-row-right {
  width: 75.13228%;
  float: right;
}

.meeting-time {
  padding: 20px;
  text-align: center;
  border: 1px solid #e2e2e2;
  font-size: 18px;
}

.contact-box {
  text-align: center;
}

.contact-box-inner {
  display: inline-block;
  text-align: center;
  background-color: #fff;
  border: 1px solid #e2e2e2;
  padding: 30px 100px;
}

.contact-box-title {
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.0;
}

.contact-box-tel {
  margin-bottom: 10px;
  font-size: 32px;
}
.contact-box-tel span {
  margin-right: 15px;
  font-size: 18px;
}

.contact-box-cap {
  line-height: 1.0;
}
.contact-box-cap p {
  line-height: 1.6;
}

.contact-form {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .contact-form {
    display: block;
  }
}

.content-box-flow {
  margin-bottom: 30px;
  text-align: center;
}

.content-box-caption {
  margin-bottom: 30px;
  text-align: center;
}

.contact-form-row {
  display: table-row;
}
@media screen and (max-width: 768px) {
  .contact-form-row {
    display: block;
  }
}

.contact-form-th,
.contact-form-td {
  display: table-cell;
  vertical-align: top;
  padding: 20px;
  border: 1px solid #e2e2e2;
  position: relative;
}
.contact-form-th .require,
.contact-form-td .require {
  position: absolute;
  color: #fff;
  font-size: 11px;
  background-color: red;
  padding: 3px 5px;
  top: 20px;
  right: 20px;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  .contact-form-th,
  .contact-form-td {
    display: block;
  }
}

.contact-form-th {
  width: 26%;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .contact-form-th {
    width: auto;
    background-color: #f7f7f7;
    border-bottom: none;
  }
}

.contact-form-td > div {
  margin-bottom: 10px;
}
.contact-form-td > div:last-child {
  margin-bottom: 0;
}
.contact-form-td p {
  display: block;
  vertical-align: middle;
  margin-right: 2em;
}
.contact-form-td p span,
.contact-form-td p input {
  display: inline-block;
  vertical-align: middle;
  line-height: 1.1;
}
.contact-form-td p input[type="radio"] {
  cursor: pointer;
}
.contact-form-td p span {
  display: block;
  cursor: pointer;
  margin-top: 15px;
  margin-bottom: 15px;
}
.contact-form-td p label span {
  margin-right: 1em;
}
.contact-form-td input,
.contact-form-td textarea {
  padding: 10px;
  border: 1px solid #e2e2e2;
  font-size: 14px;
}
.contact-form-td .radio {
  display: inline-block;
  vertical-align: top;
  margin-right: 1em;
  cursor: pointer;
}
.contact-form-td .radio input, .contact-form-td .radio i {
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
}
.contact-form-td .radio input {
  margin-right: 1em;
}
.contact-form-td .horizontal-item input {
  display: inline-block;
  vertical-align: middle;
  cursor: pointer;
}
.contact-form-td .error {
  margin-top: 10px;
}
@media screen and (max-width: 768px) {
  .contact-form-td {
    width: auto;
    border-bottom: none;
  }
  .contact-form-td p {
    margin-right: 0;
  }
  .contact-form-td input[type="text"], .contact-form-td input[type="email"] {
    width: 100%;
  }
}

.contact-submit-area {
  margin-top: 30px;
  text-align: center;
}
.contact-submit-area p {
  margin-bottom: 30px;
}
.contact-submit-area input {
  font-size: 14px;
  font-weight: bold;
  padding-top: 15px;
  padding-bottom: 15px;
  padding-left: 60px;
  padding-right: 60px;
  cursor: pointer;
}

.contact_title {
  border-bottom: solid #129843;
  display: block;
}

.step {
  margin-bottom: 50px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .step {
    margin-bottom: 30px;
  }
}
.step li {
  font-size: 16px;
  line-height: 70px;
  display: inline-block;
  zoom: 1;
  width: 240px;
  height: 70px;
  margin: 20px 8px 0 8px;
  vertical-align: top;
  border: solid 1px #e2e2e2;
  background: #e2e2e2;
  *display: inline;
  position: relative;
}
@media screen and (max-width: 768px) {
  .step li {
    font-size: 14px;
    width: 30%;
    height: 35px;
    line-height: 35px;
    margin: 0;
    margin-right: 2%;
  }
}
@media screen and (max-width: 640px) {
  .step li {
    width: 29%;
    height: 70px;
    line-height: 1.6;
    font-size: 12px;
    margin-right: 12px;
  }
}
.step li span {
  font-size: 16px;
  display: inline-block;
  zoom: 1;
  margin-right: 10px;
  vertical-align: top;
  *display: inline;
}
@media screen and (max-width: 768px) {
  .step li span {
    font-size: 12px;
  }
}
@media screen and (max-width: 640px) {
  .step li span {
    display: block;
    margin-top: 15px;
  }
}
.step li:before, .step li:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  margin-top: -36px;
  content: '';
  border-width: 36px 0 36px 18px;
  border-style: solid;
}
@media screen and (max-width: 768px) {
  .step li:before, .step li:after {
    margin-top: -18px;
    border-width: 18px 0 18px 9px;
  }
}
@media screen and (max-width: 640px) {
  .step li:before, .step li:after {
    margin-top: -36px;
    border-width: 36px 0 36px 18px;
  }
}
.step li:before {
  z-index: 2;
  top: 50%;
  right: -17px;
  border-color: transparent transparent transparent #e2e2e2;
}
@media screen and (max-width: 768px) {
  .step li:before {
    right: -9px;
  }
}
@media screen and (max-width: 640px) {
  .step li:before {
    right: -17px;
  }
}
.step li:after {
  z-index: 1;
  top: 50%;
  right: -18px;
  border-color: transparent transparent transparent #e2e2e2;
}
@media screen and (max-width: 768px) {
  .step li:after {
    right: -9px;
  }
}
@media screen and (max-width: 640px) {
  .step li:after {
    right: -18px;
  }
}
.step li.step2 span:before, .step li.step2 span:after, .step li.step3 span:before, .step li.step3 span:after {
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  margin-top: -36px;
  content: '';
  border-width: 36px 0 36px 18px;
  border-style: solid;
}
@media screen and (max-width: 768px) {
  .step li.step2 span:before, .step li.step2 span:after, .step li.step3 span:before, .step li.step3 span:after {
    margin-top: -18px;
    border-width: 18px 0 18px 9px;
  }
}
@media screen and (max-width: 640px) {
  .step li.step2 span:before, .step li.step2 span:after, .step li.step3 span:before, .step li.step3 span:after {
    margin-top: -36px;
    border-width: 36px 0 36px 18px;
  }
}
.step li.step2 span:before, .step li.step3 span:before {
  z-index: 2;
  top: 50%;
  left: -1px;
  border-color: transparent transparent transparent #fffcf2;
}
.step li.step2 span:after, .step li.step3 span:after {
  z-index: 1;
  top: 50%;
  left: 0;
  border-color: transparent transparent transparent #e2e2e2;
}
@media screen and (max-width: 640px) {
  .step li.step2, .step li.step3 {
    padding-left: 18px;
  }
}
.step li.step3:before, .step li.step3:after {
  display: none;
}
.step li.now {
  color: #fff;
  background: #129843;
}
.step li.now span:before {
  border-color: transparent transparent transparent #129843;
}
.step li.now:before {
  border-color: transparent transparent transparent #129843;
}
.step li.now span:before {
  border-color: transparent transparent transparent #fffcf2;
}

p.contact_privacy span {
  width: 100px;
  margin: 0 auto 10px auto;
  display: inline-block;
}
p.contact_privacy input {
  display: inline-block;
}
p.contact_privacy span.error {
  margin: 0 auto;
}

.contact_confirmation p.contact_privacy, .contact_confirmation p.contact_privacy_link {
  display: none;
}
.contact_confirmation p.ex span {
  color: #999999;
}

.contact-comment {
  width: 97%;
}

/* mixin */
.site-top.site-home .contents {
  padding-top: 25px;
  min-width: 1060px;
}
@media screen and (max-width: 768px) {
  .site-top.site-home .contents {
    padding-top: 0;
    min-width: inherit;
  }
}

.recommend-area-banner .slick-next,
.recommend-area-banner .slick-prev,
.top-main-banner .slick-next,
.top-main-banner .slick-prev {
  position: absolute;
  top: 50%;
  width: 32px;
  height: 32px;
  appearance: none;
  border-radius: 50%;
  background-color: #fff;
  border: none;
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  font-size: 0;
  background-repeat: no-repeat;
  background-image: url("../images/top/slider-arrow.png");
  background-size: auto 18px;
  cursor: pointer;
}
.recommend-area-banner .slick-next:focus,
.recommend-area-banner .slick-prev:focus,
.top-main-banner .slick-next:focus,
.top-main-banner .slick-prev:focus {
  outline: none;
}
.top-main-banner a img{width:100%;} 
.top-title {
  margin-bottom: 5px;
  font-size: 18px;
  font-weight: bold;
}

.top-header--home .wrap {
  display: flex;
  align-items: center;
}
.top-header--home .wrap:after {
  content: "";
  display: block;
  clear: both;
}
@media screen and (max-width: 768px) {
  .top-header--home .wrap {
    padding-top: 30px;
    flex-direction: column;
  }
}

.top-header-logo {
  width: 136px;
  float: left;
}
.top-header-logo a {
  width: 100%;
  height: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
  padding-top: 76px;
  background: url("../images/top/logo.png") no-repeat 50% 50%;
  background-size: contain;
}
@media screen and (max-width: 1140px) {
  .top-header-logo {
    float: none;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 768px) {
  .top-header-logo {
    width: 100px;
  }
  .top-header-logo a {
    padding-top: 52px;
    background-image: url("../images/top/logo@2x.png");
    -moz-background-size: 100px auto;
    -o-background-size: 100px auto;
    -webkit-background-size: 100px auto;
    background-size: 100px auto;
  }
}
.top-header--home .top-header-logo {
  width: 150px;
  float: none;
  margin-left: auto;
  margin-right: auto;
}

.top-header-status {
  width: 76%;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .top-header-status {
    margin-top: 20px;
    width: 100%;
    flex-direction: column;
  }
}
.top-header-status .news-traffic {
  flex: 1;
  height: 40px;
  margin-right: 15px;
  margin-bottom: 0;
  padding: 2px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  background-color: #14a94b;
}
@media screen and (max-width: 768px) {
  .top-header-status .news-traffic {
    margin-right: 0;
    height: auto;
    flex-direction: column;
  }
}
.top-header-status .news-traffic-title {
  width: 160px;
  font-size: 16px;
  margin-bottom: 0;
  padding-left: 25px;
  box-sizing: border-box;
  background: url("../images/base/icon-train-white-s@2x.png") no-repeat 10px 50%;
  background-size: auto 20px;
}
@media screen and (max-width: 768px) {
  .top-header-status .news-traffic-title {
    width: auto;
    font-size: 14px;
    padding-left: 35px;
    padding-top: 5px;
    padding-bottom: 5px;
  }
}
.top-header-status .news-traffic-content {
  width: 300px;
  height: 100%;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 768px) {
  .top-header-status .news-traffic-content {
    width: 100%;
    height: auto;
    line-height: 1.4;
  }
}
.top-header-status .news-traffic-content-inner {
  box-sizing: border-box;
  padding: 0 10px;
}
.top-header-status .news-traffic-content-inner p {
  display: block;
  width: 255px;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  .top-header-status .news-traffic-content-inner {
    width: 100%;
    padding: 8px;
  }
  .top-header-status .news-traffic-content-inner p {
    width: 100%;
  }
}
.top-header-status .busnav-banner {
  width: 287px;
  height: 40px;
}
@media screen and (max-width: 768px) {
  .top-header-status .busnav-banner {
    width: 100%;
    margin-top: 15px;
  }
}
.top-header-status .busnav-banner a {
  line-height: 38px;
  text-align: center;
  background-image: url(../images/bus/icon-busnav@2x.png);
  background-repeat: no-repeat;
  background-position: 10px 50%;
  background-size: 25px auto;
  padding-left: 20px;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.top-header-status .busnav-banner a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
.top-header-status .busnav-banner a span {
  margin-right: 10px;
  font-size: 14px;
}
.top-header-status .busnav-banner a strong {
  font-size: 16px;
}
@media screen and (max-width: 640px) {
  .top-header-status .busnav-banner a span {
    font-size: 15px;
  }
  .top-header-status .busnav-banner a strong {
    font-size: 18px;
  }
}

.btn--busnav {
  display: block;
  width: 100%;
  height: 100%;
  box-sizing: border-box;
  color: #f57f31;
  border: 2px solid #f57f31;
  background-color: #ffefe5;
  text-decoration: none;
}

.top-navigation {
  width: 76%;
  float: right;
  background-color: #fff;
  text-align: center;
  border: 2px solid #f4eacc;
}
.top-navigation ul {
  font-size: 0;
  padding-left: 25px;
  padding-right: 25px;
}
.top-navigation ul li {
  display: inline-block;
  vertical-align: top;
  margin-left: 3.42466%;
}
.top-navigation ul li a {
  position: relative;
  display: block;
  padding-bottom: 15px;
  padding-top: 15px;
}
.top-navigation ul li a span {
  display: block;
  padding-top: 28px;
  height: 0;
  overflow: hidden;
  background: url("../images/top/gnav.png") no-repeat 0 0;
}
@media screen and (max-width: 640px) {
  .top-navigation ul li a span {
    display: none;
  }
}
.top-navigation ul li a:before {
  display: block;
  width: 60px;
  height: 66px;
  position: absolute;
  top: 50%;
  margin-top: -33px;
  left: 50%;
  margin-left: -30px;
  background-image: url("../images/top/gnav@2x.png");
  background-repeat: no-repeat;
  -moz-background-size: auto 58px;
  -o-background-size: auto 58px;
  -webkit-background-size: auto 58px;
  background-size: auto 58px;
}
@media screen and (max-width: 640px) {
  .top-navigation ul li a:before {
    content: "";
  }
}
.top-navigation ul li.train {
  width: 60px;
  margin-left: 0;
}
.top-navigation ul li.train a span {
  background-position: 0 0;
}
@media screen and (max-width: 640px) {
  .top-navigation ul li.train {
    width: 16.666666667%;
  }
  .top-navigation ul li.train a:before {
    background-position: 17px 6px;
  }
}
.top-navigation ul li.bus {
  width: 60px;
}
.top-navigation ul li.bus a span {
  background-position: -88px 0;
}
@media screen and (max-width: 640px) {
  .top-navigation ul li.bus {
    width: 16.666666667%;
  }
  .top-navigation ul li.bus a:before {
    background-position: -36px 6px;
  }
}
.top-navigation ul li.tourism {
  width: 110px;
}
.top-navigation ul li.tourism a span {
  background-position: -176px 0;
}
@media screen and (max-width: 640px) {
  .top-navigation ul li.tourism {
    width: 16.666666667%;
  }
  .top-navigation ul li.tourism a:before {
    background-position: -103px 4px;
  }
}
.top-navigation ul li.estate {
  width: 108px;
}
.top-navigation ul li.estate a span {
  background-position: -316px 0;
}
@media screen and (max-width: 640px) {
  .top-navigation ul li.estate {
    width: 16.666666667%;
  }
  .top-navigation ul li.estate a:before {
    background-position: -171px 6px;
  }
}
.top-navigation ul li.goods {
  width: 74px;
}
.top-navigation ul li.goods a span {
  background-position: -448px 0;
}
@media screen and (max-width: 640px) {
  .top-navigation ul li.goods {
    width: 16.666666667%;
  }
  .top-navigation ul li.goods a:before {
    background-position: -240px 6px;
  }
}
.top-navigation ul li.corporate {
  width: 170px;
}
.top-navigation ul li.corporate a span {
  background-position: -550px 0;
}
@media screen and (max-width: 640px) {
  .top-navigation ul li.corporate {
    width: 16.666666667%;
    border-right: none;
  }
  .top-navigation ul li.corporate a:before {
    background-position: -299px 4px;
  }
}
.top-navigation .mainvisual {
  margin-bottom: 40px;
}
@media screen and (max-width: 1140px) {
  .top-navigation {
    width: 100%;
    margin-top: 30px;
    float: none;
    margin-left: auto;
    margin-right: auto;
  }
}
@media screen and (max-width: 640px) {
  .top-navigation {
    margin-top: 20px;
  }
  .top-navigation ul {
    display: table;
    width: 100%;
    padding: 0;
  }
  .top-navigation ul li {
    margin-left: 0;
    border-right: 1px solid #f4eacc;
  }
  .top-navigation ul li a {
    padding-top: 80px;
    padding-bottom: 0;
    position: relative;
  }
}

.important-news {
  margin-top: 20px;
}

.important-news-box {
  background-color: #fff;
  padding: 0 10px;
  border: 1px solid #fe0000;
}

.important-news-item {
  display: flex;
  align-items: center;
  padding: 5px 0;
}
@media screen and (max-width: 640px) {
  .important-news-item {
    flex-direction: column;
    align-items: flex-start;
  }
}

.important-news-item--train {
  border-bottom: 1px solid #f2efeb;
}

.important-news-title {
  width: 220px;
  font-size: 16px;
  font-weight: bold;
}
.important-news-title span {
  display: block;
  padding-left: 35px;
  background-repeat: no-repeat;
  background-position: 0 50%;
}
.important-news-item--train .important-news-title {
  color: #14a94b;
}
.important-news-item--train .important-news-title span {
  background-image: url("../images/base/icon-train-green-s@2x.png");
  background-size: auto 18px;
}
.important-news-item--bus .important-news-title {
  color: #f57f31;
}
.important-news-item--bus .important-news-title span {
  background-image: url("../images/base/icon-bus-orange-s@2x.png");
  background-size: auto 16px;
}
@media screen and (max-width: 640px) {
  .important-news-title {
    width: 100%;
    font-size: 13px;
  }
  .important-news-title span {
    padding-left: 28px;
  }
}

.important-news-contents {
  width: calc(100% - 220px);
}
.important-news-contents a {
  text-decoration: none;
  color: #fe0000;
}
@media screen and (max-width: 640px) {
  .important-news-contents {
    width: 100%;
  }
}

.top-main-box {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .top-main-box {
    flex-direction: column;
  }
}

.top-main-left {
  width: 70%;
}
@media screen and (max-width: 768px) {
  .top-main-left {
    width: 100%;
  }
}

.top-main-right {
  width: 28.5%;
}
@media screen and (max-width: 768px) {
  .top-main-right {
    width: 100%;
  }
}

.mainvisual-list li img {
  width: 100%;
  vertical-align: bottom;
}

.top-mainvisual-list li img {
  display: block;
  box-sizing: border-box;
  border: 5px solid #fff;
  box-shadow: 1px 1.732px 6px 0px rgba(0, 0, 0, 0.35);
}

.top-main-banner > li {
  margin-bottom: 15px;
  box-shadow: 1px 1.732px 6px 0px rgba(0, 0, 0, 0.35);
}
.top-main-banner > li:last-child {
  margin-bottom: 0;
}
.top-main-banner > li a {
  display: block;
}
@media screen and (max-width: 768px) {
  .top-main-banner {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin: 10px -5px 0;
    padding-bottom: 60px;
    position: relative;
  }
  .top-main-banner .slick-slide {
    width: calc((100% - 20px)/3);
    margin-bottom: 0;
    box-sizing: border-box;
    margin: 5px;
    box-shadow: 1px 1.732px 6px 0px rgba(0, 0, 0, 0.35);
  }
  .top-main-banner .slick-dots {
    bottom: 27px;
  }
  .top-main-banner .slick-prev,
  .top-main-banner .slick-next {
    width: 25px;
    height: 25px;
    top: auto;
    bottom: 20px;
    padding: 0;
    background-size: auto 12px;
    z-index: 1;
  }
  .top-main-banner .slick-prev {
    left: 5px;
    background-position: 8px 50%;
  }
  .top-main-banner .slick-next {
    right: 5px;
    background-position: calc(100% - 8px) 50%;
  }
}

.top-menu {
  font-size: 0;
  background-color: #fff;
  border: 1px solid #e2e2e2;
  letter-spacing: 0;
}

.top-menu-train,
.top-menu-bus,
.top-menu-tourism {
  width: 33.333333%;
  display: inline-block;
  vertical-align: top;
  font-size: 14px;
  position: relative;
  letter-spacing: 1px;
}
@media screen and (max-width: 768px) {
  .top-menu-train,
  .top-menu-bus,
  .top-menu-tourism {
    width: auto;
    display: block;
  }
}

.top-menu-box {
  background-repeat: no-repeat;
  background-position: 0 100%;
}
.top-menu-box.top-menu-train {
  /*background-image: url('../images/top/train-img.png');*/
}
.top-menu-box.top-menu-bus {
  /*background-image: url('../images/top/bus-img.png');*/
}
.top-menu-box.top-menu-tourism {
  /*background-image: url('../images/top/tourism-img.png');*/
}
@media screen and (max-width: 1140px) {
  .top-menu-box.top-menu-train {
    background-image: none;
  }
  .top-menu-box.top-menu-bus {
    background-image: none;
  }
  .top-menu-box.top-menu-tourism {
    background-image: none;
  }
}

.top-menu-inner {
  padding: 20px;
}
.top-menu-inner:after {
  content: "";
  display: block;
  clear: both;
}
.top-menu-train .top-menu-inner {
  border-right: 1px solid #e2e2e2;
}
.top-menu-bus .top-menu-inner {
  border-right: 1px solid #e2e2e2;
}
.top-menu-tourism .top-menu-inner {
  padding-bottom: 40px;
}
@media screen and (max-width: 768px) {
  .top-menu-train .top-menu-inner {
    border-right: none;
    border-bottom: 1px solid #e2e2e2;
  }
  .top-menu-bus .top-menu-inner {
    border-right: none;
    border-bottom: 1px solid #e2e2e2;
  }
  .top-menu-tourism .top-menu-inner {
    padding-bottom: 20px;
  }
}

.top-menu-title {
  width: 32px;
  float: left;
  padding-top: 154px;
  overflow: hidden;
  height: 0;
  background-repeat: no-repeat;
  background-position: 0 0;
}
.top-menu-train .top-menu-title {
  background-image: url("../images/top/train-title.png");
}
.top-menu-bus .top-menu-title {
  background-image: url("../images/top/bus-title.png");
}
.top-menu-tourism .top-menu-title {
  background-image: url("../images/top/tourism-title.png");
}
@media screen and (max-width: 1140px) {
  .top-menu-title {
    width: 12%;
    -moz-background-size: 100%, auto;
    -o-background-size: 100%, auto;
    -webkit-background-size: 100%, auto;
    background-size: 100%, auto;
  }
  .top-menu-train .top-menu-title {
    background-image: url("../images/top/train-title@2x.png");
  }
  .top-menu-bus .top-menu-title {
    background-image: url("../images/top/bus-title@2x.png");
  }
  .top-menu-tourism .top-menu-title {
    background-image: url("../images/top/tourism-title@2x.png");
  }
}
@media screen and (max-width: 768px) {
  .top-menu-title {
    width: auto;
    float: none;
    height: auto;
    padding-top: 0;
    font-weight: bold;
    margin-bottom: 20px;
    padding-left: 15px;
    border-left-width: 5px;
    border-left-style: solid;
    line-height: 1;
    font-size: 18px;
  }
  .top-menu-train .top-menu-title {
    background-image: none;
    color: #14a94b;
    border-left-color: #14a94b;
  }
  .top-menu-bus .top-menu-title {
    background-image: none;
    color: #f57f31;
    border-left-color: #f57f31;
  }
  .top-menu-tourism .top-menu-title {
    background-image: none;
    color: #1e5e86;
    border-left-color: #1e5e86;
  }
}

.top-menu-info {
  width: 240px;
  float: right;
}
@media screen and (max-width: 1140px) {
  .top-menu-info {
    width: 83%;
  }
}
@media screen and (max-width: 768px) {
  .top-menu-info {
    width: auto;
    float: none;
  }
}

.top-menu-status {
  padding: 10px;
  border: 1px solid #14a94b;
  background-color: #e7f3dc;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
.top-menu-status a {
  color: #33322f;
}

.top-menu-status-title {
  width: 100%;
  height: 0;
  margin-bottom: 5px;
  overflow: hidden;
  padding-top: 16px;
  background: url("../images/top/status-title.png") no-repeat center center;
}
@media screen and (max-width: 640px) {
  .top-menu-status-title {
    background-image: url("../images/top/status-title@2x.png");
    -moz-background-size: auto 15px;
    -o-background-size: auto 15px;
    -webkit-background-size: auto 15px;
    background-size: auto 15px;
  }
}

.top-menu-status-text {
  padding: 0 5px;
}
.top-menu-status-text p {
  padding-left: 25px;
  line-height: 1.4;
  margin-top: 10px;
  font-size: 13px;
  padding-top: 3px;
}
.top-menu-status-text p.ok {
  background: url("../images/base/icon-status.png") no-repeat;
  background-position: 0 5px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .top-menu-status-text p.ok {
    background-image: url("../images/base/icon-status@2x.png");
    -moz-background-size: 14px auto;
    -o-background-size: 14px auto;
    -webkit-background-size: 14px auto;
    background-size: 14px auto;
    background-position: 0 5px;
  }
}
.top-menu-status-text p.ng {
  background: url("../images/base/icon-status.png") no-repeat;
  background-position: 0 -42px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .top-menu-status-text p.ng {
    background-image: url("../images/base/icon-status@2x.png");
    -moz-background-size: 14px auto;
    -o-background-size: 14px auto;
    -webkit-background-size: 14px auto;
    background-size: 14px auto;
    background-position: 0 -32px;
  }
}
.top-menu-status-text span {
  font-size: 11px;
}

.top-menu-link {
  margin-top: 10px;
  padding-left: 10px;
  font-size: 0;
}
.top-menu-link p {
  margin-top: 12px;
}
.top-menu-link p.ome-menu-regular-nav-att {
  text-align: center;
  color: #777777;
  font-size: 12px;
  margin-top: 0;
  margin-bottom: 10px;
}
.top-menu-link p.ome-menu-regular-nav-att span {
  line-height: 12px;
  color: #33322f;
  display: block;
}
.top-menu-link p.ome-menu-regular-nav-att a {
  margin-left: -30px;
  background: none;
  line-height: 1.1;
}
@media screen and (max-width: 1140px) {
  .top-menu-link p.ome-menu-regular-nav-att a {
    margin-left: -20px;
  }
}
.top-menu-link p.ome-menu-regular-nav-att a:before {
  margin-right: 4px;
  display: inline-block;
  content: "";
  background-image: url("../images/base/icon-att-s.png");
  background-position: 0 0;
  -moz-background-size: 14px auto;
  -o-background-size: 14px auto;
  -webkit-background-size: 14px auto;
  background-size: 14px auto;
  width: 14px;
  height: 14px;
  margin-top: -2px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .top-menu-link p.ome-menu-regular-nav-att a:before {
    background-image: url("../images/base/icon-att-s@2x.png");
    -moz-background-size: 14px auto;
    -o-background-size: 14px auto;
    -webkit-background-size: 14px auto;
    background-size: 14px auto;
    background-position: 0 0;
  }
}
@media screen and (max-width: 768px) {
  .top-menu-link p.ome-menu-regular-nav-att {
    display: none;
  }
}
.top-menu-link p.ome-menu-regular-nav-att-sp {
  display: none;
}
@media screen and (max-width: 768px) {
  .top-menu-link p.ome-menu-regular-nav-att-sp {
    display: block;
  }
}
.top-menu-link a {
  background: none;
  text-decoration: none;
  font-size: 12px;
  color: #33322f;
  line-height: 1.4;
  padding-left: 18px;
  display: block;
  letter-spacing: 0;
}
.top-menu-train .top-menu-link .top-menu-link-col {
  margin-right: 13px;
}
.top-menu-train .top-menu-link a {
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 -99px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .top-menu-train .top-menu-link a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.top-menu-bus .top-menu-link .top-menu-link-col {
  margin-right: 13px;
}
.top-menu-bus .top-menu-link a {
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 -210px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .top-menu-bus .top-menu-link a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.top-menu-link .home-menu-regular-nav-btn {
  width: 100%;
}
.top-menu-link .home-menu-regular-nav-btn a {
  background-image: none;
  color: #fff;
  font-size: 16px;
  margin-bottom: 5px;
  background-color: #f57f31;
  width: 180px;
}
.top-menu-link .home-menu-regular-nav-btn a:hover {
  text-decoration: none;
  background-color: #d86c24;
}
.top-menu-link .home-menu-regular-nav-btn a:before {
  background: none;
}
.top-menu-link .home-menu-regular-nav-btn a span {
  font-size: 11px;
  display: block;
  padding-top: 6px;
  padding-bottom: 3px;
}
.top-menu-link .home-menu-regular-nav-btn a span.bustop-menu-regular-nav-btn-ser {
  font-size: 16px;
  display: inline;
  line-height: 11px;
}
@media screen and (max-width: 640px) {
  .top-menu-link .home-menu-regular-nav-btn a span {
    display: block;
  }
}
@media screen and (max-width: 1140px) {
  .top-menu-link .home-menu-regular-nav-btn a {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .top-menu-link .home-menu-regular-nav-btn a {
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .top-menu-link .home-menu-regular-nav-btn a span {
    display: inline;
  }
}
@media screen and (max-width: 768px) and (max-width: 640px) {
  .top-menu-link .home-menu-regular-nav-btn a span {
    display: block;
  }
  .top-menu-link .home-menu-regular-nav-btn a span.bustop-menu-regular-nav-btn-ser {
    display: block;
  }
}

.top-menu-link .busnav-btn a {
  border: solid 1px #f57f31;
  background: #ffefe5;
  color: #f57f31;
  padding: 0;
  width: 216px;
  font-weight: bold;
  position: relative;
  font-size: 15px;
}
.top-menu-link .busnav-btn a span {
  padding-bottom: 0;
  font-size: 12px;
  font-weight: normal;
  text-shadow: none;
}
.top-menu-link .busnav-btn a:before {
  content: "";
  position: absolute;
  left: 8px;
  width: 33px;
  height: 32px;
  background: url("../images/bus/icon-busnav.png") no-repeat 0 0;
  bottom: 0;
  margin-bottom: 26px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .top-menu-link .busnav-btn a:before {
    background: url("../images/bus/icon-busnav@2x.png") no-repeat 0 0;
    background-size: 33px;
  }
}
@media screen and (max-width: 1140px) {
  .top-menu-link .busnav-btn a:before {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .top-menu-link .busnav-btn a:before {
    display: block;
    left: 20%;
  }
}
@media screen and (max-width: 640px) {
  .top-menu-link .busnav-btn a:before {
    left: 10%;
    margin-bottom: 36px;
  }
}
@media screen and (max-width: 768px) {
  .top-menu-link .busnav-btn a {
    padding-top: 10px;
  }
}
.top-menu-link .busnav-btn a:hover {
  background: #ffcaa9;
}
.top-menu-link .busnav-btn a .busnav-comment {
  background: #f57f31;
  color: #fff;
  width: 100%;
  font-size: 12px;
  margin: 0;
  text-shadow: none;
  padding: 3px 0;
}
@media screen and (max-width: 768px) {
  .top-menu-link .busnav-btn a .busnav-comment {
    margin-top: 10px;
  }
}
@media screen and (max-width: 1140px) {
  .top-menu-link .busnav-btn a {
    width: 100%;
  }
}
.top-menu-tourism .top-menu-link a {
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 -662px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .top-menu-tourism .top-menu-link a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
@media screen and (max-width: 1140px) {
  .top-menu-link {
    padding-left: 0;
  }
}
@media screen and (max-width: 768px) {
  .top-menu-link {
    margin-top: 10px;
  }
}

.top-menu-link-col {
  display: inline-block;
  vertical-align: top;
  margin-right: 15px;
}
@media screen and (max-width: 1140px) {
  .top-menu-link-col {
    display: block;
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .top-menu-link-col {
    display: inline-block;
  }
  .top-menu-link-col p {
    display: inline-block;
  }
  .top-menu-link-col p a {
    padding-right: 15px;
  }
}

.information-list {
  display: none;
}

.information-list-all {
  display: block;
}

/* 05.16 add
* トップ重要なお知らせ
*/
.top-menu-important {
  margin-bottom: 10px;
  padding: 10px;
  background-color: #feefef;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}

.top-menu-important-title {
  color: #ee2f60;
  text-align: center;
}
.top-menu-important-title span {
  padding-left: 26px;
  background: url("../images/base/icon-information.png") no-repeat 0 0;
  padding-top: 3px;
  padding-bottom: 3px;
}

.top-important-content {
  margin-top: 5px;
  background-color: #fff;
  padding: 10px 15px;
  font-size: 13px;
}

.top-menu-important-text p {
  padding-left: 12px;
  position: relative;
}
.top-menu-important-text p:before {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  position: absolute;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  top: 6px;
  right: "";
  bottom: "";
  left: 0;
  background-position: -1px -680px;
}
@media screen and (max-width: 640px) {
  .top-menu-important-text p:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}

a.saiyo_link {
  text-decoration: none;
}

.saiyo-box {
  color: #fff;
  font-weight: bold;
  font-size: 24px;
  padding: 23px 0 20px 47px;
  background: #79b0e2 url("../images/bus/banner-bussaiyo-r.png") no-repeat 100% 100%;
  position: relative;
}
@media screen and (max-width: 1140px) {
  .saiyo-box {
    background-image: none;
    text-align: center;
    padding: 10px;
  }
}
.saiyo-box p.saiyo_detail {
  font-weight: normal;
  font-size: 14px;
  z-index: 99;
}
.saiyo-box p.saiyo_title {
  font-size: 24px;
  z-index: 99;
}

.estate-banner {
  color: #fff;
  font-weight: bold;
  font-size: 20px;
  line-height: 22px;
  padding: 23px 0 20px 47px;
  background: #2597cc url("../images/top/banner-estate-r.jpg") no-repeat 100% 100%;
  position: relative;
  letter-spacing: 0.1em;
}
.estate-banner span {
  display: block;
}
@media screen and (max-width: 1140px) {
  .estate-banner {
    padding: 10px;
    font-size: 17px;
    background-image: none;
    text-align: center;
  }
}

.top-menuOpener {
  display: none;
  margin-top: 15px;
  position: relative;
}
@media screen and (max-width: 640px) {
  .top-menuOpener {
    display: block;
  }
}
.top-menuOpener:after {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  position: absolute;
  right: 8px;
  top: 10px;
  background-image: url("../images/top/sptab.png");
  background-repeat: no-repeat;
  background-size: 300px auto;
}
.top-menuOpener button {
  display: block;
  cursor: pointer;
  width: 100%;
  font-size: 0;
  appearance: none;
  height: 50px;
  padding-left: 0;
  padding-bottom: 0;
  padding-right: 0;
  border: none;
  outline: none;
  background-image: url("../images/top/sptab.png");
  background-repeat: no-repeat;
  background-size: 300px auto;
  background-color: #fff;
  border-width: 4px;
  border-style: solid;
}
.top-menuOpener--train {
  margin-top: 0;
}
.top-menuOpener--train:after {
  background-position: 0 -334px;
}
.top-menuOpener--train button {
  border-color: #14a94b;
  background-position: 10px -4px;
}
.top-menuOpener--train.current:after {
  background-position: 0 -388px;
}
.top-menuOpener--train.current button {
  background-color: #14a94b;
  background-position: 10px -58px;
}
.top-menuOpener--bus:after {
  background-position: 0 -442px;
}
.top-menuOpener--bus button {
  border-color: #f57f31;
  background-position: 10px -111px;
}
.top-menuOpener--bus.current:after {
  background-position: 0 -496px;
}
.top-menuOpener--bus.current button {
  background-color: #f57f31;
  background-position: 10px -165px;
}
.top-menuOpener--seacandle:after {
  background-position: 0 -550px;
}
.top-menuOpener--seacandle button {
  border-color: #ee2f60;
  background-position: 10px -220px;
}
.top-menuOpener--seacandle.current:after {
  background-position: 0 -604px;
}
.top-menuOpener--seacandle.current button {
  background-color: #ee2f60;
  background-position: 10px -275px;
}

.top-menuPanelTab {
  display: flex;
  box-shadow: 1.5px 2.598px 7px 0px rgba(0, 0, 0, 0.35);
}

.top-menuPanelTab-item {
  flex: 1;
  border-right: 1px solid #d7d7d7;
}
.top-menuPanelTab-item button {
  display: block;
  width: 100%;
  appearance: none;
  border: none;
  border-radius: 0;
  cursor: pointer;
  background-color: #fff;
  height: 55px;
  outline: none;
}
.top-menuPanelTab-item button span {
  display: block;
  padding-top: 30px;
  height: 0;
  overflow: hidden;
  background-repeat: no-repeat;
  background-position: 20px 50%;
  background-size: auto 30px;
}
@media screen and (max-width: 768px) {
.top-menuPanelTab-item button span{
     background-position: 10px 50%;
    background-size: auto 22px;
}}
.top-menuPanelTab-item--train button span {
  background-image: url("../images/top/tab-train-text.png");
}
.top-menuPanelTab-item--train button.current, .top-menuPanelTab-item--train button:hover {
  background-color: #14a94b;
}
.top-menuPanelTab-item--train button.current span, .top-menuPanelTab-item--train button:hover span {
  background-image: url("../images/top/tab-train-text_on.png");
}
.top-menuPanelTab-item--bus button span {
  background-image: url("../images/top/tab-bus-text.png");
}
.top-menuPanelTab-item--bus button.current, .top-menuPanelTab-item--bus button:hover {
  background-color: #f57f31;
}
.top-menuPanelTab-item--bus button.current span, .top-menuPanelTab-item--bus button:hover span {
  background-image: url("../images/top/tab-bus-text_on.png");
}
.top-menuPanelTab-item--seacandle {
  border-right: none;
}
.top-menuPanelTab-item--seacandle button span {
  background-image: url("../images/top/tab-sc-text.png");
}
.top-menuPanelTab-item--seacandle button.current, .top-menuPanelTab-item--seacandle button:hover {
  background-color: #ee2f60;
}
.top-menuPanelTab-item--seacandle button.current span, .top-menuPanelTab-item--seacandle button:hover span {
  background-image: url("../images/top/tab-sc-text_on.png");
}

.top-menuPanelContents-item {
  display: none;
  padding: 20px;
  background-color: #fff;
}
.top-menuPanelContents-item#TopMenuPanel-Train {
  display: block;
}
@media screen and (max-width: 640px) {
  .top-menuPanelContents-item {
    padding: 0;
    margin-bottom: 15px;
    display: none;
  }
  .top-menuPanelContents-item#TopMenuPanel-Train {
    display: none;
  }
}

.top-menuTrain {
  border: 4px solid #14a94b;
}
@media screen and (max-width: 640px) {
  .top-menuTrain {
    border-top: none;
  }
}

.top-menuBus {
  border: 4px solid #f57f31;
}
@media screen and (max-width: 640px) {
  .top-menuBus {
    border-top: none;
  }
}

.top-menuSeacandle {
  border: 4px solid #ee2f60;
}
@media screen and (max-width: 640px) {
  .top-menuSeacandle {
    border-top: none;
  }
}

.top-menuTrain-btns {
  display: flex;
  justify-content: space-between;
  margin-left: -5px;
  margin-right: -5px;
  padding-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .top-menuTrain-btns {
    margin-right: 0;
    margin-left: 0;
    flex-direction: column;
    padding-bottom: 0;
  }
}

.top-menuTrain-btns-item {
  flex: 1;
  padding: 0 5px;
}
@media screen and (max-width: 640px) {
  .top-menuTrain-btns-item {
    padding: 0;
  }
}
.top-menuTrain-btns-item a.btn-menuBtn {
  background-color: #e1efd8;
  color: #33322f;
  padding-left: 20px;
  letter-spacing: 0.1em;
  position: relative;
}
.top-menuTrain-btns-item a.btn-menuBtn:after {
  width: 64px;
  height: 64px;
  left: 30px;
  margin-top: -32px;
  background-image: url(../images/train/menu-icon@2x.png);
  background-size: 1048px auto;
}
.top-menuTrain-btns-item a.btn-menuBtn:hover {
  background-color: #14a94b;
}
@media screen and (max-width: 640px) {
  .top-menuTrain-btns-item a.btn-menuBtn {
    padding-left: 60px;
    border-radius: 0;
    box-shadow: none;
    border-bottom: 2px solid #fff;
    height: 50px;
    line-height: 50px;
    text-align: left;
  }
  .top-menuTrain-btns-item a.btn-menuBtn:after {
    width: 35px;
    height: 35px;
    margin-top: -17px;
    left: 12px;
    background-image: url(../images/train/menu-icon.png);
    background-size: auto 24px;
  }
}
.top-menuTrain-btns-item--sponly {
  display: none;
}
@media screen and (max-width: 640px) {
  .top-menuTrain-btns-item--sponly {
    display: block;
  }
}
.top-menuTrain-btns-item--fare a.btn-menuBtn:after {
  background-position: -183px 5px;
}
@media screen and (max-width: 640px) {
  .top-menuTrain-btns-item--fare a.btn-menuBtn:after {
    background-position: -92px 50%;
  }
}
.top-menuTrain-btns-item--timetable a.btn-menuBtn:after {
  background-position: -382px 7px;
}
@media screen and (max-width: 640px) {
  .top-menuTrain-btns-item--timetable a.btn-menuBtn:after {
    background-position: -189px 50%;
  }
}
.top-menuTrain-btns-item--station a.btn-menuBtn:after {
  background-position: 17px 7px;
}
@media screen and (max-width: 640px) {
  .top-menuTrain-btns-item--station a.btn-menuBtn:after {
    background-position: 6px 50%;
  }
}
.top-menuTrain-btns-item--onegai a.btn-menuBtn:after {
  background-image: url("../images/top/icon-train-onegai.png");
  background-position: 0 50%;
}
.top-menuTrain-btns-item--odekake a.btn-menuBtn:after {
  background-image: url("../images/top/icon-train-odekake.png");
  background-position: 50% 50%;
}

.top-menuTrain-bottom {
  padding-top: 20px;
  border-top: 1px solid #ccc;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 640px) {
  .top-menuTrain-bottom {
    flex-direction: column;
    padding-top: 0;
    border-top: none;
  }
}

.top-menuTrain-bottom-left {
  width: calc(100% - 320px);
}
@media screen and (max-width: 640px) {
  .top-menuTrain-bottom-left {
    width: 100%;
  }
}

.top-menuTrain-bottom-right {
  width: 320px;
  padding-left: 30px;
  padding-right: 30px;
  margin-left: 20px;
  border-left: 1px solid #ccc;
  box-sizing: border-box;
}
@media screen and (max-width: 640px) {
  .top-menuTrain-bottom-right {
    display: none;
  }
}

@media screen and (max-width: 640px) {
  .top-menuPanel {
    display: none;
  }
}

.top-menuPanel-link {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  border-top: 1px solid #ccc;
  padding-top: 20px;
  margin-top: 20px;
}
.top-menuPanel-link--wfix {
  justify-content: space-between;
}
.top-menuPanel-link:first-child {
  padding-top: 0;
  margin-top: 0;
  border-top: none;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-link {
    border-top: none;
    padding-top: 0;
    margin-top: 0;
    justify-content: space-between;
  }
}

.top-menuPanel-link-item {
  margin-right: 20px;
}
.top-menuPanel-link-item:last-child {
  margin-right: 0;
}
.top-menuPanel-link-item a {
  display: block;
  line-height: 50px;
  text-decoration: none;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-link-item {
    margin-right: 0;
  }
}
.top-menuPanel-link-item--train-ticket a, .top-menuPanel-link-item--train-faq a, .top-menuPanel-link-item--bus-ticket a, .top-menuPanel-link-item--bus-faq a {
  position: relative;
  font-weight: bold;
  background-repeat: no-repeat;
  background-position: 0 50%;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-link-item--train-ticket, .top-menuPanel-link-item--train-faq, .top-menuPanel-link-item--bus-ticket, .top-menuPanel-link-item--bus-faq {
    margin-right: 0;
  }
  .top-menuPanel-link-item--train-ticket a, .top-menuPanel-link-item--train-faq a, .top-menuPanel-link-item--bus-ticket a, .top-menuPanel-link-item--bus-faq a {
    background-position: 15px 50%;
  }
}
.top-menuPanel-link-item--train-ticket a, .top-menuPanel-link-item--bus-ticket a {
  padding-left: 35px;
  font-size: 16px;
  background-size: auto 18px;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-link-item--train-ticket a, .top-menuPanel-link-item--bus-ticket a {
    padding-left: 60px;
  }
}
.top-menuPanel-link-item--train-faq a, .top-menuPanel-link-item--bus-faq a {
  padding-left: 30px;
  background-size: auto 25px;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-link-item--train-faq a, .top-menuPanel-link-item--bus-faq a {
    padding-left: 60px;
    background-position: 20px 50%;
  }
}
@media screen and (max-width: 320px) {
  .top-menuPanel-link-item--train-faq a, .top-menuPanel-link-item--bus-faq a {
    padding-left: 40px;
  }
}
.top-menuPanel-link-item--train-ticket a {
  background-image: url("../images/top/icon-train-ticket.png");
}
.top-menuPanel-link-item--train-faq a {
  background-image: url("../images/top/icon-train-faq.png");
}
.top-menuPanel-link-item--bus-ticket a {
  background-image: url("../images/top/icon-bus-ticket.png");
}
.top-menuPanel-link-item--bus-faq a {
  background-image: url("../images/top/icon-bus-faq.png");
}
.top-menuPanel-link-item--train-normal a {
  padding-left: 20px;
  position: relative;
}
.top-menuPanel-link-item--train-normal a:before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  position: absolute;
  background: url("../images/base/icon-link-square.png") no-repeat;
  top: 50%;
  right: auto;
  bottom: auto;
  left: 0;
  margin-top: -6px;
  background-position: 0 0;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .top-menuPanel-link-item--train-normal a:before {
    background-image: url("../images/base/icon-link-square@2x.png");
    background-repeat: no-repeat;
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.top-menuPanel-link-item--train-normal a:hover {
  text-decoration: underline;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-link-item--train-normal a {
    padding-left: 0;
  }
  .top-menuPanel-link-item--train-normal a:before {
    display: none;
  }
}
.top-menuPanel-link-item--bus-normal a {
  padding-left: 20px;
  position: relative;
}
.top-menuPanel-link-item--bus-normal a:before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  position: absolute;
  background: url("../images/base/icon-link-square.png") no-repeat;
  top: 50%;
  right: auto;
  bottom: auto;
  left: 0;
  margin-top: -6px;
  background-position: 0 -212px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .top-menuPanel-link-item--bus-normal a:before {
    background-image: url("../images/base/icon-link-square@2x.png");
    background-repeat: no-repeat;
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.top-menuPanel-link-item--bus-normal a:hover {
  text-decoration: underline;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-link-item--bus-normal a {
    padding-left: 0;
  }
  .top-menuPanel-link-item--bus-normal a:before {
    display: none;
  }
}
@media screen and (max-width: 640px) {
  .top-menuPanel-link-item--all {
    text-align: right;
  }
  .top-menuPanel-link-item--all a {
    padding-right: 30px;
    position: relative;
  }
  .top-menuPanel-link-item--all a:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    background-repeat: no-repeat;
    width: 12px;
    height: 18px;
    right: 20px;
    bottom: auto;
    left: auto;
    margin-top: -9px;
    background-position: 0 0;
    background-size: auto 18px;
    z-index: 10;
    background-image: url(../images/top/icon-blt.png);
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .top-menuPanel-link-item--all a:before {
    right: 15px;
  }
}

@media screen and (max-width: 320px) {
  .top-menuPanel-link-item--all {
    font-size: 11px;
  }
}
.top-menuPanel-link-item--noriorikun {
  width: 342px;
  margin-left: auto;
}
.top-menuPanel-link-item--noriorikun a {
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.top-menuPanel-link-item--noriorikun a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-link-item--noriorikun {
    width: 100%;
    text-align: right;
    padding-left: 60px;
    padding-right: 5px;
    padding-bottom: 5px;
    padding-top: 5px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
  }
  .top-menuPanel-link-item--noriorikun a {
    display: block;
    line-height: 1.0;
  }
}
.top-menuPanel-link-item--banner {
  width: 213px;
  margin-right: 14px;
}
.top-menuPanel-link-item--banner a {
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.top-menuPanel-link-item--banner a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
.top-menuPanel-link-item--banner a img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 768px) {
  .top-menuPanel-link-item--banner {
    width: calc(50% - 10px);
    margin-right: 0;
    margin-left: 10px;
    margin-bottom: 5px;
  }
}
.top-menuPanel-link-item--bus-recruit {
  flex: 1;
  text-align: right;
}
.top-menuPanel-link-item--bus-recruit a {
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.top-menuPanel-link-item--bus-recruit a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-link-item--spfix {
    width: 100%;
    border-top: 1px solid #ccc;
  }
  .top-menuPanel-link-item--spfix a {
    padding-left: 60px;
  }
}

/* バスのタブ */
.top-menuBus-top {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  .top-menuBus-top {
    flex-direction: column;
  }
}

.top-menuBus-top-left {
  width: calc(100% - 310px);
  padding-right: 30px;
  box-sizing: border-box;
}
@media screen and (max-width: 768px) {
  .top-menuBus-top-left {
    width: 100%;
    padding-right: 0;
  }
}

.top-menuBus-top-right {
  width: 310px;
  padding-left: 30px;
  box-sizing: border-box;
  border-left: 1px solid #ccc;
}
@media screen and (max-width: 768px) {
  .top-menuBus-top-right {
    width: 100%;
    padding-left: 0;
    border-left: none;
   padding-top:20px;
  }
}
@media screen and (max-width: 640px) {
  .top-menuBus-top-right {
   padding-top:0px;
  }
}
.top-menuBus-btns {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 640px) {
  .top-menuBus-btns {
    flex-direction: column;
    background-color: #fdd5b4;
  }
}

.top-menuBus-btns-item {
  box-sizing: border-box;
}
@media screen and (max-width: 640px) {
  .top-menuBus-btns-item {
    padding: 0 10px;
  }
}
.top-menuBus-btns-item a.btn-menuBtn {
  background-color: #fff;
  color: #33322f;
  border: 1px solid #cccccc;
  padding-left: 40px;
  letter-spacing: 0.1em;
  font-size: 14px;
  position: relative;
}
.top-menuBus-btns-item a.btn-menuBtn:after {
  content: "";
  display: block;
  width: 80px;
  height: 60px;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -30px;
  z-index: 3;
  background-image: url(../images/bus/menu-icon.png);
}
.top-menuBus-btns-item a.btn-menuBtn:hover {
  background-color: #eeeeee;
}
.top-menuBus-btns-item a.btn-menuBtn--orange {
  background-color: #fdd5b4;
  border: none;
}
.top-menuBus-btns-item a.btn-menuBtn--orange:hover {
  background-color: #f57f31;
}
@media screen and (max-width: 640px) {
  .top-menuBus-btns-item a.btn-menuBtn {
    padding-left: 60px;
  }
}
.top-menuBus-btns-item--1 {
  width: 100%;
  margin-bottom: 20px;
}
.top-menuBus-btns-item--1 a.btn-menuBtn {
  height: 90px;
  line-height: 88px;
}
@media screen and (max-width: 640px) {
  .top-menuBus-btns-item--1 {
    margin-bottom: 0;
  }
  .top-menuBus-btns-item--1 a.btn-menuBtn {
    height: 50px;
    line-height: 48px;
  }
}
.top-menuBus-btns-item--2 {
  width: calc(50% - 5px);
  margin-bottom: 10px;
}
.top-menuBus-btns-item--2 a.btn--busnav,
.top-menuBus-btns-item--2 a.btn-menuBtn {
  height: 64px;
  line-height: 62px;
}
@media screen and (max-width: 640px) {
  .top-menuBus-btns-item--2 {
    width: 100%;
    margin-bottom: 5px;
  }
  .top-menuBus-btns-item--2 a.btn--busnav,
  .top-menuBus-btns-item--2 a.btn-menuBtn {
    height: 50px;
    line-height: 48px;
  }
}
.top-menuBus-btns-item--3 {
  width: calc((100% - 20px)/3);
}
.top-menuBus-btns-item--3 a.btn-menuBtn {
  height: 58px;
  line-height: 56px;
}
@media screen and (max-width: 640px) {
  .top-menuBus-btns-item--3 {
    width: 100%;
    margin-bottom: 5px;
  }
  .top-menuBus-btns-item--3 a.btn-menuBtn {
    height: 50px;
    line-height: 48px;
    text-align: left;
  }
  .top-menuBus-btns-item--3 a.btn-menuBtn:before {
    right: 5px;
  }
}
.top-menuBus-btns-item--scheduled a.btn-menuBtn {
  font-size: 24px;
  position: relative;
}
.top-menuBus-btns-item--scheduled a.btn-menuBtn:after {
  width: 106px;
  height: 50px;
  margin-top: -30px;
  margin-left: -172px;
  top: 50%;
  left: 50%;
  background-image: url(../images/bus/icon-bus-regular.png);
  background-position: 0 0;
}
@media screen and (max-width: 640px) {
  .top-menuBus-btns-item--scheduled {
    padding: 0;
  }
  .top-menuBus-btns-item--scheduled a.btn-menuBtn {
    font-size: 16px;
    text-align: left;
    padding-left: 60px;
  }
  .top-menuBus-btns-item--scheduled a.btn-menuBtn:after {
    width: 42px;
    height: 19px;
    margin-top: -9px;
    margin-left: 0;
    top: 50%;
    left: 10px;
    background-image: url(../images/bus/icon-bus-regular.png);
    background-position: 0 0;
    background-size: auto 19px;
  }
}
.top-menuBus-btns-item--busnav a.btn--busnav {
  text-align: center;
  padding-top: 14px;
  background-color: transparent;
  border-radius: 5px;
  border-width: 1px;
  background-image: url(../images/bus/icon-busnav@2x.png);
  background-repeat: no-repeat;
  background-position: 40px 50%;
  background-size: 30px auto;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.top-menuBus-btns-item--busnav a.btn--busnav:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
.top-menuBus-btns-item--busnav a.btn--busnav span {
  display: block;
  line-height: 1.0;
  padding-left: 30px;
}
.top-menuBus-btns-item--busnav a.btn--busnav span.t01 {
  font-size: 12px;
}
.top-menuBus-btns-item--busnav a.btn--busnav span.t02 {
  margin-top: 5px;
  font-size: 18px;
  font-weight: bold;
}
@media screen and (max-width: 640px) {
  .top-menuBus-btns-item--busnav a.btn--busnav {
    border-radius: 0;
    padding-top: 0;
    background-color: #fff;
    background-position: 10px 50%;
    position: relative;
  }
  .top-menuBus-btns-item--busnav a.btn--busnav:before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    background-repeat: no-repeat;
    width: 12px;
    height: 18px;
    right: 20px;
    bottom: auto;
    left: auto;
    margin-top: -9px;
    background-position: 0 0;
    background-size: auto 18px;
    z-index: 10;
    background-image: url(../images/top/icon-blt.png);
  }
}
@media screen and (max-width: 640px) and (max-width: 640px) {
  .top-menuBus-btns-item--busnav a.btn--busnav:before {
    right: 15px;
  }
}
@media screen and (max-width: 640px) {
  .top-menuBus-btns-item--busnav a.btn--busnav:before {
    background-image: url("../images/top/icon-blt-orange.png");
    right: 5px;
  }
  .top-menuBus-btns-item--busnav a.btn--busnav span {
    display: inline-block;
    vertical-align: middle;
    padding-left: 0;
  }
  .top-menuBus-btns-item--busnav a.btn--busnav span.t01 {
    font-size: 15px;
  }
  .top-menuBus-btns-item--busnav a.btn--busnav span.t02 {
    margin-top: 0;
    font-size: 16px;
    padding-left: 10px;
  }
}
.top-menuBus-btns-item--busnav .attention {
  padding-top: 3px;
  text-align: center;
}
.top-menuBus-btns-item--busnav .attention a {
  display: inline-block;
  font-size: 12px;
  font-weight: bold;
  line-height: 12px;
  padding-left: 19px;
  background: url("../images/base/icon-att-s@2x.png") no-repeat 0 -2px;
  background-size: 14px auto;
}
.top-menuBus-btns-item--timetable a.btn-menuBtn:before {
  display: none;
}
@media screen and (max-width: 640px) {
  .top-menuBus-btns-item--timetable a.btn-menuBtn:before {
    display: block;
  }
}
.top-menuBus-btns-item--timetable a.btn-menuBtn:after {
  left: -6px;
  margin-top: -32px;
  transform: scale(0.56);
  background: url(../images/bus/menu-icon@2x.png) no-repeat 0 0;
  background-position: -393px 4px;
  background-size: 846px;
}
@media screen and (max-width: 640px) {
  .top-menuBus-btns-item--timetable a.btn-menuBtn:after {
    transform: scale(0.5);
    left: -15px;
    margin-top: -30px;
  }
}
.top-menuBus-btns-item--route a.btn-menuBtn:before {
  display: none;
}
@media screen and (max-width: 640px) {
  .top-menuBus-btns-item--route a.btn-menuBtn:before {
    display: block;
  }
}
.top-menuBus-btns-item--route a.btn-menuBtn:after {
  transform: scale(0.8);
}
@media screen and (max-width: 640px) {
  .top-menuBus-btns-item--route a.btn-menuBtn {
    text-align: left;
  }
  .top-menuBus-btns-item--route a.btn-menuBtn:after {
    left: -10px;
    transform: scale(0.5);
  }
  .top-menuBus-btns-item--route a.btn-menuBtn:before {
    right: 5px;
  }
}
.top-menuBus-btns-item--office a.btn-menuBtn {
  padding-left: 80px;
  letter-spacing: 0;
  text-align: left;
}
.top-menuBus-btns-item--office a.btn-menuBtn:before {
  display: none;
}
@media screen and (max-width: 640px) {
  .top-menuBus-btns-item--office a.btn-menuBtn:before {
    display: block;
  }
}
.top-menuBus-btns-item--office a.btn-menuBtn:after {
  width: 57px;
  height: 27px;
  left: 15px;
  margin-top: -13px;
  background: url(../images/top/icon-bus-office.png) no-repeat 0 0;
  background-position: 50% 50%;
  background-size: contain;
}
@media screen and (max-width: 640px) {
  .top-menuBus-btns-item--office a.btn-menuBtn {
    padding-left: 60px;
  }
  .top-menuBus-btns-item--office a.btn-menuBtn:after {
    left: -3px;
    transform: scale(0.6);
  }
}
.top-menuBus-btns-item--pass a.btn-menuBtn {
  padding-left: 76px;
  letter-spacing: 0;
  text-align: left;
}
.top-menuBus-btns-item--pass a.btn-menuBtn:before {
  display: none;
}
@media screen and (max-width: 640px) {
  .top-menuBus-btns-item--pass a.btn-menuBtn:before {
    display: block;
  }
}
.top-menuBus-btns-item--pass a.btn-menuBtn:after {
  width: 42px;
  height: 29px;
  left: 20px;
  margin-top: -14px;
  background: url(../images/top/icon-bus-pass.png) no-repeat 0 0;
  background-position: 50% 50%;
  background-size: contain;
}
@media screen and (max-width: 640px) {
  .top-menuBus-btns-item--pass {
    margin-bottom: 10px;
  }
  .top-menuBus-btns-item--pass a.btn-menuBtn {
    padding-left: 60px;
  }
  .top-menuBus-btns-item--pass a.btn-menuBtn:after {
    left: 4px;
    transform: scale(0.6);
  }
}

.top-menuBus-bottom {
  border-top: 1px solid #ccc;
  margin-top: 20px;
  padding-top: 10px;
}
@media screen and (max-width: 640px) {
  .top-menuBus-bottom {
    border-top: none;
    margin-top: 0;
    padding-top: 0;
  }
}

a.btn-menuBtn {
  display: block;
  border: none;
  padding: 0;
  font-size: 18px;
  font-weight: bold;
  line-height: 90px;
  letter-spacing: 0.1em;
  position: relative;
}
a.btn-menuBtn:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  background-repeat: no-repeat;
  width: 12px;
  height: 18px;
  right: 20px;
  bottom: auto;
  left: auto;
  margin-top: -9px;
  background-position: 0 0;
  background-size: auto 18px;
  z-index: 10;
  background-image: url(../images/top/icon-blt.png);
}
@media screen and (max-width: 640px) {
  a.btn-menuBtn:before {
    right: 15px;
  }
}
a.btn-menuBtn:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  background-repeat: no-repeat;
}
@media screen and (max-width: 640px) {
  a.btn-menuBtn {
    border-radius: 0;
    height: 50px;
    line-height: 50px;
    box-shadow: none;
  }
}

.top-menuPanel-linkbtn {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin-bottom: -20px;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-linkbtn {
    flex-direction: column;
    margin-bottom: 0;
  }
}

.top-menuPanel-linkbtn-item {
  width: 50%;
  margin-bottom: 20px;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-linkbtn-item {
    width: 100%;
    margin-bottom: 0;
  }
  .top-menuBus .top-menuPanel-linkbtn-item {
    border-top: 2px solid #fff;
  }
}
.top-menuPanel-linkbtn-item a {
  display: block;
  white-space: nowrap;
  text-decoration: none;
  position: relative;
}
.top-menuPanel-linkbtn-item a:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  background-repeat: no-repeat;
  width: 12px;
  height: 18px;
  right: 20px;
  bottom: auto;
  left: auto;
  margin-top: -9px;
  background-position: 0 0;
  background-size: auto 18px;
  z-index: 10;
  background-image: url(../images/top/icon-blt.png);
}
@media screen and (max-width: 640px) {
  .top-menuPanel-linkbtn-item a:before {
    right: 15px;
  }
}
.top-menuPanel-linkbtn-item a:before {
  display: none;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-linkbtn-item a:before {
    display: block;
  }
}
.top-menuPanel-linkbtn-item a .icon {
  width: 90px;
  height: 90px;
  border-radius: 50%;
  margin-left: auto;
  margin-right: auto;
  padding: 0;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  box-shadow: inset 0px -2px 0px 0px rgba(0, 0, 0, 0.1);
  text-shadow: 0.5px 0.866px 0px rgba(0, 0, 0, 0.1);
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.top-menuPanel-linkbtn-item a .icon:hover {
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.top-menuPanel-linkbtn-item a .title {
  font-weight: bold;
  text-align: center;
  margin-top: 10px;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-linkbtn-item a {
    height: 50px;
    line-height: 50px;
    white-space: inherit;
  }
  .top-menuPanel-linkbtn-item a .icon, .top-menuPanel-linkbtn-item a .title {
    display: inline-block;
    vertical-align: middle;
  }
  .top-menuPanel-linkbtn-item a .icon {
    width: 60px;
    height: 50px;
    border-radius: 0;
    box-shadow: none;
  }
  .top-menuBus .top-menuPanel-linkbtn-item a .icon {
    background-color: transparent;
  }
  .top-menuPanel-linkbtn-item a .title {
    margin-top: 0;
  }
  .top-menuBus .top-menuPanel-linkbtn-item a {
    background-color: #fdd5b4;
  }
}
.top-menuTrain .top-menuPanel-linkbtn-item a .icon {
  background-color: #e1efd8;
}
.top-menuTrain .top-menuPanel-linkbtn-item a:hover .icon {
  background-color: #14a94b;
}
.top-menuBus .top-menuPanel-linkbtn-item a .icon {
  background-color: #fdd5b4;
}
.top-menuBus .top-menuPanel-linkbtn-item a:hover .icon {
  background-color: #f57f31;
}
.top-menuPanel-linkbtn-item--onegai a .icon {
  background-image: url("../images/top/icon-train-onegai.png");
  background-size: auto 42px;
}
.top-menuPanel-linkbtn-item--odekake a .icon {
  background-image: url("../images/top/icon-train-odekake.png");
  background-size: auto 42px;
}
.top-menuPanel-linkbtn-item--highway a .icon {
  background-image: url("../images/top/icon-bus-highway.png");
  background-size: auto 43px;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-linkbtn-item--highway a .icon {
    background-size: auto 24px;
  }
}
.top-menuPanel-linkbtn-item--airport a .icon {
  background-image: url("../images/top/icon-bus-airport.png");
  background-size: auto 48px;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-linkbtn-item--airport a .icon {
    background-size: auto 26px;
  }
}
.top-menuPanel-linkbtn-item--kashikiri a .icon {
  background-image: url("../images/top/icon-bus-kashikiri.png");
  background-size: auto 31px;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-linkbtn-item--kashikiri a .icon {
    background-size: auto 20px;
  }
}
.top-menuPanel-linkbtn-item--yuran a .icon {
  background-image: url("../images/top/icon-bus-yuran.png");
  background-size: auto 31px;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-linkbtn-item--yuran a .icon {
    background-size: auto 20px;
  }
}

.top-menuPanel-link--bus-top {
  justify-content: space-between;
}
.top-menuPanel-link--bus-top .top-menuPanel-link-item--bus-normal {
  flex: 1;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-link--bus-top {
    padding-right: 10px;
  }
  .top-menuPanel-link--bus-top .top-menuPanel-link-item--bus-normal {
    margin-right: -10px;
  }
}

.top-menuPanel-link--bus-bottom {
  justify-content: space-between;
  margin-top: 10px;
  padding-top: 10px;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-link--bus-bottom {
    margin-top: 10px;
    padding-top: 0;
    border-top: 1px solid #ccc;
  }
}

.top-menuPanel-link-item--bus-recruit {
  flex: 1;
  text-align: right;
}
.top-menuPanel-link-item--bus-recruit p a {
  display: inline-block;
  padding-left: 15px;
  border-left: 1px solid #ccc;
}
@media screen and (max-width: 640px) {
  .top-menuPanel-link-item--bus-recruit {
    display: none;
  }
}

/* シーキャンドルのタブ */
.top-menuSeacandle-item {
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 640px) {
  .top-menuSeacandle-item {
    flex-direction: column;
  }
}

.top-manuSeacandle-left {
  width: 50%;
  box-sizing: border-box;
  padding-right: 20px;
}
.top-manuSeacandle-left a {
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.top-manuSeacandle-left a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
@media screen and (max-width: 640px) {
  .top-manuSeacandle-left {
    width: auto;
    padding-right: 0;
    padding: 10px;
  }
}

.top-manuSeacandle-right {
  width: 50%;
  box-sizing: border-box;
  padding-left: 20px;
  border-left: 1px solid #ccc;
}
.top-manuSeacandle-right a {
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.top-manuSeacandle-right a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
@media screen and (max-width: 640px) {
  .top-manuSeacandle-right {
    width: auto;
    border-left: none;
    padding: 10px;
    border-top: 1px solid #ccc;
  }
}

.top-manuSeacandle-section {
  margin-bottom: 15px;
}
.top-manuSeacandle-section:last-child {
  margin-bottom: 0;
}

.top-manuSeacandle-title {
  margin-bottom: 4px;
  font-size: 16px;
  font-weight: bold;
}
.top-manuSeacandle-title span {
  display: inline-block;
  line-height: 24px;
  padding-left: 40px;
  background-repeat: no-repeat;
}
.top-manuSeacandle-section--event .top-manuSeacandle-title span {
  background-image: url("../images/top/icon-seacandle-flag.png");
  background-size: auto 24px;
  background-position: 0 50%;
}
.top-manuSeacandle-section--ticket .top-manuSeacandle-title span {
  background-image: url("../images/top/icon-seacandle-ticket.png");
  background-size: auto 18px;
  background-position: 0 2px;
}
@media screen and (max-width: 640px) {
  .top-manuSeacandle-title {
    font-size: 15px;
  }
}

.top-manuSeacandle-banner--col {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.top-manuSeacandle-banner--col a {
  display: block;
  width: calc(50% - 5px);
}

/* おすすめ情報 */
@media screen and (max-width: 640px) {
  .content-row.recommend-area {
    overflow: hidden;
  }
}

.recommend-area-title {
  margin-bottom: 10px;
  font-size: 24px;
  color: #09872b;
  font-weight: bold;
  text-align: center;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 640px) {
  .recommend-area-title {
    font-size: 18px;
  }
}

.recommend-area-banner {
  position: relative;
  padding-bottom: 50px;
}
.recommend-area-banner .slick-dots {
  bottom: -30px;
}
.recommend-area-banner .slick-prev {
  left: -40px;
  background-position: 10px 50%;
}
.recommend-area-banner .slick-next {
  right: -40px;
  background-position: calc(100% - 10px) 50%;
}
@media screen and (max-width: 640px) {
  .recommend-area-banner {
    padding-bottom: 0;
  }
  .recommend-area-banner .slick-prev,
  .recommend-area-banner .slick-next {
    top: auto;
    bottom: 4px;
    z-index: 1;
  }
  .recommend-area-banner .slick-prev {
    left: 10px;
  }
  .recommend-area-banner .slick-next {
    right: 10px;
  }
}

.recommend-area-slider {
  margin-right: -10px;
  margin-left: -10px;
}
.recommend-area-slider .slick-slide a {
  display: block;
  padding: 5px 10px;
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.recommend-area-slider .slick-slide a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
.recommend-area-slider .slick-slide a img {
  display: block;
  width: 100%;
  border: 2px solid #fff;
  box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.35);
  vertical-align: bottom;
}
@media screen and (max-width: 640px) {
  .recommend-area-slider .slick-slide {
    width: 200px;
  }
  .recommend-area-slider.slick-slider {
    padding-bottom: 50px;
  }
  .recommend-area-slider .slick-dots {
    bottom: 14px;
    z-index: 0;
  }
}

.contents-row.infomation-area {
  margin-top: 0;
}

.site-top .recruit-banner-box {
  border-color: #e2e2e2;
}
.site-top .recruit-banner-box.content-box {
  margin-top: 20px;
}
.site-top .recruit-banner-box.content-box:first-child {
  margin-top: 0;
}
.site-top .recruit-banner-box a {
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.site-top .recruit-banner-box a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
.site-top .recruit-banner-box a img {
  width: 100%;
}
@media screen and (max-width: 1140px) {
  .site-top .recruit-banner-box .content-box-inner {
    padding: 10px 10px 10px 5px;
  }
  .site-top .recruit-banner-box ul li {
    width: calc(50% - 5px);
    max-width: 240px;
    margin-left: 5px;
    margin-right: 0;
    margin-top: 0;
  }
}

@media screen and (max-width: 640px) {
  .site-top .ticket-list .content-box-inner {
    padding: 5px;
  }
  .site-top .ticket-list ul li {
    width: calc(50% - 10px);
    margin: 5px;
  }
}

.top-banner-area ul {
  display: flex;
  flex-wrap: wrap;
}
.top-banner-area ul li {
  width: calc((100% - 30px)/4);
  margin-right: 10px;
  margin-bottom: 10px;
}
.top-banner-area ul li:nth-child(4n) {
  margin-right: 0;
}
.top-banner-area ul li a {
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.top-banner-area ul li a:hover {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=70);
  opacity: 0.7;
}
@media screen and (max-width: 640px) {
  .top-banner-area ul li {
    width: calc(50% - 5px);
    margin-right: 10px;
  }
  .top-banner-area ul li:nth-child(4n) {
    margin-right: 10px;
  }
  .top-banner-area ul li:nth-child(2n) {
    margin-right: 0;
  }
}

.site-corporate .pankuzu a {
  color: #0a6f25;
}
.site-corporate .global-header-navigation-menu ul li {
  border-right: 1px solid #0a6f25;
}
.site-corporate .global-header-navigation-menu ul li a:hover {
  background-color: #0a6f25;
}
.site-corporate .global-header-navigation-menu ul li a:before {
  background-image: url("../images/corporate/global-navigation.png");
}
.site-corporate .global-header-navigation-menu ul li.company {
  border-left: 1px solid #0a6f25;
}
.site-corporate .global-header-navigation-menu ul li.company a {
  background-position: 24px 50%;
}
.site-corporate .global-header-navigation-menu ul li.company a:before {
  background-position: 24px 50%;
}
.site-corporate .global-header-navigation-menu ul li.csr a {
  background-position: -72px 50%;
}
.site-corporate .global-header-navigation-menu ul li.csr a:before {
  background-position: -72px 50%;
}
.site-corporate .global-header-navigation-menu ul li.recruit a {
  background-position: -168px 50%;
}
.site-corporate .global-header-navigation-menu ul li.recruit a:before {
  background-position: -168px 50%;
}
@media screen and (max-width: 1140px) {
  .site-corporate .global-header-navigation-menu {
    border-top: 1px solid #0a6f25;
  }
}
@media screen and (max-width: 640px) {
  .site-corporate .global-header-navigation-menu {
    border-top: 1px solid #0a6f25;
  }
  .site-corporate .global-header-navigation-menu ul {
    background-color: #09872b;
  }
  .site-corporate .global-header-navigation-menu ul li {
    border-right: none;
    border-bottom: 1px solid #0a6f25;
  }
  .site-corporate .global-header-navigation-menu ul li a {
    background-image: none;
  }
  .site-corporate .global-header-navigation-menu ul li.station {
    border-left: none;
  }
}
.site-corporate .global-header-navigation {
  background-color: #09872b;
}
.site-corporate .global-header-navigation-logo {
  width: 152px;
}
.site-corporate .global-header-navigation-logo a {
  background-image: url("../images/corporate/logo.png");
}
@media screen and (max-width: 640px) {
  .site-corporate .global-header-navigation-logo a {
    background-image: url("../images/corporate/logo@2x.png");
    -moz-background-size: auto 30px;
    -o-background-size: auto 30px;
    -webkit-background-size: auto 30px;
    background-size: auto 30px;
  }
}
.site-corporate .pankuzu {
  background-color: #d5e9da;
}
.site-corporate .sub-navigation li a {
  color: #09872b;
}
.site-corporate .sub-navigation li a span {
  background: url("../images/base/icon-link-blt-down.png") no-repeat;
  background-position: 0 -114px;
  background-position: 0 -192px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-corporate .sub-navigation li a span {
    background-image: url("../images/base/icon-link-blt-down@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.site-corporate .sub-navigation li a:hover {
  color: #fff;
  background-color: #09872b;
}
.site-corporate .sub-navigation li a:hover span {
  background: url("../images/base/icon-link-blt-down.png") no-repeat;
  background-position: 0 4px;
  background-position: 0 8px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-corporate .sub-navigation li a:hover span {
    background-image: url("../images/base/icon-link-blt-down@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
@media screen and (max-width: 640px) {
  .site-corporate .sub-navigation li a {
    position: relative;
  }
  .site-corporate .sub-navigation li a:before {
    content: "";
    display: block;
    width: 12px;
    height: 8px;
    position: absolute;
    background: url("../images/base/icon-link-blt-down.png") no-repeat;
    top: "";
    right: "";
    bottom: 10px;
    left: 50%;
    margin-left: -6px;
    background-position: 0 -114px;
  }
}
@media screen and (max-width: 640px) and (-webkit-min-device-pixel-ratio: 2) {
  .site-corporate .sub-navigation li a:before {
    background-image: url("../images/base/icon-link-blt-down@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
@media screen and (max-width: 640px) {
  .site-corporate .sub-navigation li a span {
    background-image: none;
  }
}
.site-corporate .page-title {
  border-top-color: #09872b;
}
.site-corporate .content-box-title {
  color: #09872b;
}
.site-corporate .right-link-box-title {
  background-color: #09872b;
}
.site-corporate .content-box-link a {
  background-position: 0 3px;
}
.site-corporate .content-box-stitle {
  background-position: 0 0;
}
.site-corporate .content-row-title .corporate-icon {
  padding-left: 50px;
}
.site-corporate .content-row-title .icon-company {
  background: url("../images/corporate/icon-corporate-company.png") no-repeat left center;
}
.site-corporate .content-row-title .icon-csr {
  background: url("../images/corporate/icon-corporate-csr.png") no-repeat left center;
}
.site-corporate .corporate_mainimg {
  width: 100%;
  height: 430px;
  text-align: center;
  background: url("../images/corporate/corporate-main.png") no-repeat center center;
  -moz-background-size: cover;
  -o-background-size: cover;
  -webkit-background-size: cover;
  background-size: cover;
}
.site-corporate .corporate_mainimg .wrap {
  position: relative;
}
.site-corporate .corporate_mainimg .wrap img {
  position: absolute;
  left: 0;
  top: 60px;
}
.site-corporate .corporate-box {
  margin-top: 20px;
  background-color: #fff;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.site-corporate .corporate-box .corporate-box-inner {
  padding: 20px;
  border: 1px solid #e9e9e9;
}
.site-corporate .corporate-box .corporate-box-left {
  float: left;
  width: 45%;
}
.site-corporate .corporate-box .corporate-box-left img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 1140px) {
  .site-corporate .corporate-box .corporate-box-left {
    width: 30%;
  }
}
.site-corporate .corporate-box .corporate-box-right {
  float: right;
  width: 51%;
}
@media screen and (max-width: 1140px) {
  .site-corporate .corporate-box .corporate-box-right {
    width: 66%;
  }
}
.site-corporate .corporate-box .corporate-list li {
  margin-bottom: 9px;
  line-height: 1.4;
  padding-left: 1.4em;
  text-indent: -1.4em;
}
.site-corporate .corporate-box .corporate-list li a {
  padding-left: 1.4em;
  color: #33322f !important;
  text-decoration: none;
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 0;
  background-position: 0 3px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-corporate .corporate-box .corporate-list li a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.site-corporate .corporate-box .corporate-list li a:hover {
  text-decoration: underline;
}
.site-corporate .corporate-box .corporate-list li:last-child {
  margin-bottom: 0;
}
.site-corporate .contact-box2 {
  width: 70%;
  margin-left: auto;
  margin-right: auto;
  background-color: #fff;
}
.site-corporate .contact-box2 .contact-box-inner {
  display: block;
  padding: 25px;
}
.site-corporate .contact-box2 .contact-box-left {
  float: left;
  padding-top: 12px;
  font-size: 18px;
}
.site-corporate .contact-box2 .contact-box-right {
  float: right;
  width: 40%;
}
@media screen and (max-width: 1140px) {
  .site-corporate .contact-box2 .contact-box-right {
    width: 100%;
    float: none;
  }
}
.site-corporate .contact-box2 .btn {
  width: 100%;
  padding: 15px 0;
  font-size: 16px;
  line-height: 2.0;
  font-weight: bold;
  border-radius: 0;
}
.site-corporate .contact-box2 .btn span {
  display: inline-block;
  padding-left: 60px;
  background: url("../images/corporate/btn-icon-mail.png") no-repeat 0 0;
}
@media screen and (max-width: 1140px) {
  .site-corporate .contact-box2 {
    width: auto;
  }
}
.site-corporate .information-list {
  display: block;
}
.site-corporate .rec-box {
  width: 100%;
}
.site-corporate .rec-box .rec-box-left {
  width: 67%;
  float: left;
  padding-right: 3%;
}
.site-corporate .rec-box .rec-box-right {
  width: 30%;
  float: left;
  text-align: center;
}
.site-corporate .recruit-message-wrap {
  background: #fff;
  border: 1px solid #e2e2e2;
  padding: 3px;
}
.site-corporate .recruit-message-box {
  background: #fff;
  padding: 30px;
  border: 15px solid #ceedd7;
}
.site-corporate .interview-box-inner {
  border-bottom: dotted 1px #e2e2e2;
  width: 100%;
  margin-bottom: 20px;
  padding-bottom: 20px;
}
.site-corporate .interview-box-inner:last-child {
  border-bottom: none;
  margin-bottom: 0px;
  padding-bottom: 20px;
}
.site-corporate .interview-box-inner h3.interview-title {
  font-weight: bold;
  color: #0a6f25;
  font-size: 16px;
  letter-spacing: 0.1em;
  margin-bottom: 15px;
}
.site-corporate .interview-box-inner h3.interview-title span {
  border-bottom: solid 3px #0a6f25;
  margin-right: 10px;
}
.site-corporate .interview-box-inner img {
  width: 100%;
  margin-top: 20px;
}
.site-corporate .interview-box-inner p {
  margin-top: 5px;
}

.link-list ul li {
  display: inline-block;
  vertical-align: top;
  margin-right: 20px;
}
.link-list ul li a {
  padding-left: 20px;
  position: relative;
}
.link-list ul li a:before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  position: absolute;
  background: url("../images/base/icon-link-square.png") no-repeat;
  top: "";
  right: "";
  bottom: 0;
  left: auto;
  background-position: 0 0;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .link-list ul li a:before {
    background-image: url("../images/base/icon-link-square@2x.png");
    background-repeat: no-repeat;
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}

.link-list-row {
  margin-top: 30px;
}

.link-list-title {
  margin-bottom: 10px;
  font-size: 16px;
  font-weight: bold;
}

.site-company .vision-text {
  text-align: center;
  font-weight: bold;
  font-size: 18px;
  color: #09872b;
  line-height: 1.7;
}
.site-company .group-guideline-text {
  font-weight: bold;
  font-size: 16px;
  color: #09872b;
}
.site-company .vision-main-text {
  font-weight: bold;
  font-size: 16px;
}
.site-company .vision-4v .content-4v {
  margin-bottom: 40px;
}
.site-company .vision-4v .content-4v:last-child {
  margin-bottom: 0;
}
.site-company .vision-4v h4 {
  margin-bottom: 20px;
  padding-bottom: 15px;
  text-align: center;
}
.site-company .vision-4v .way-title {
  border-bottom: 1px solid #14a94b;
}
.site-company .vision-4v .value-title {
  border-bottom: 1px solid #2fa6dd;
}
.site-company .vision-4v .vision-title {
  border-bottom: 1px solid #f57f31;
}
.site-company .vision-4v .green-box {
  padding: 30px;
  background: #eff7ea;
  font-size: 12px;
}
.site-company .vision-4v .gray-box {
  padding: 30px;
  border: 1px solid #eeeeee;
  background: #f7f7f7;
}
.site-company .vision-4v .gray-box p {
  margin-bottom: 20px;
}
.site-company .vision-4v .gray-box p:last-child {
  margin-bottom: 0;
}
.site-company .vision-4v .vision-list-table {
  width: 100%;
  display: table;
  margin-bottom: 30px;
  background-color: #fff;
  font-weight: bold;
}
.site-company .vision-4v .vision-list-table .vision-tr {
  display: table-row;
}
.site-company .vision-4v .vision-list-table .vision-th,
.site-company .vision-4v .vision-list-table .vision-td {
  display: table-cell;
  padding: 1px 0;
  vertical-align: top;
}
.site-company .vision-4v .vision-list-table .vision-th {
  padding-right: 10px;
  color: #09872b;
}
.site-company .vision-4v .way-list span {
  color: #14a94b;
}
.site-company .vision-4v .value-list span {
  color: #2fa6dd;
}
.site-company .vision-4v .vision-list span {
  color: #f57f31;
}
.site-company .guideline-text-area p {
  margin-bottom: 20px;
}
.site-company .guideline-text-area p:last-child {
  margin-bottom: 0;
}
.site-company .character-name {
  font-size: 16px;
  font-weight: bold;
}
.site-company .character-text-small {
  font-size: 12px;
}
.site-company .history-photo {
  margin: 15px 0 0;
  text-align: center;
  font-size: 12px;
}
.site-company .history-photo img {
  margin-bottom: 5px;
}
.site-company .history-photo p {
  line-height: 1.4em;
}
.site-company .content-row-title .icon {
  padding-left: 32px;
}
.site-company .content-row-title .icon-train {
  background: url("../images/corporate/company/icon-train.png") no-repeat left center;
}
.site-company .content-row-title .icon-bus {
  background: url("../images/corporate/company/icon-bus.png") no-repeat left center;
}
.site-company .content-row-title .icon-sight {
  background: url("../images/corporate/company/icon-sight.png") no-repeat left center;
}
.site-company .content-row-title .icon-estate {
  background: url("../images/corporate/company/icon-estate.png") no-repeat left center;
}
.site-company .content-box-train .content-box-link p a {
  color: #14a94b;
}
.site-company .content-box-bus .content-box-link p a {
  background: url("../images/base/icon-link-square.png") no-repeat 0 -209px;
  color: #f57f31;
}
.site-company .content-box-tourism .content-box-link p a {
  background: url("../images/base/icon-link-square.png") no-repeat 0 -441px;
  color: #1e5e86;
}
.site-company .content-box-estate .content-box-link p a {
  background: url("../images/base/icon-link-square.png") no-repeat 0 -330px;
  color: #2fa6dd;
}
.site-company .business-information .business-information-left {
  width: 61.290323%;
  float: left;
}
.site-company .business-information .business-information-left > p {
  margin-bottom: 20px;
}
.site-company .business-information .business-information-left > p:last-child {
  margin-bottom: 0;
}
.site-company .business-information .business-information-right {
  width: 32.580645%;
  float: right;
}
.site-company .business-information .business-information-right > p {
  margin-bottom: 20px;
}
.site-company .business-information .business-information-right > p:last-child {
  margin-bottom: 0;
}
@media screen and (max-width: 640px) {
  .site-company .business-information .business-information-left,
  .site-company .business-information .business-information-right {
    width: auto;
    float: none;
  }
  .site-company .business-information .business-information-right {
    margin-top: 20px;
    text-align: center;
  }
}
.site-company .group-guideline p {
  margin-bottom: 2px;
}
.site-company .group-guideline p span {
  color: #09872b;
  font-size: 16px;
  font-weight: bold;
}
.site-company .group-policy-text {
  text-align: center;
  margin-bottom: 30px;
  font-weight: bold;
  font-style: italic;
  color: #09872b;
}
.site-company .group-policy-text .main {
  font-size: 32px;
  letter-spacing: 0.2em;
}
.site-company .group-policy-text .sub {
  letter-spacing: 0.15em;
}
.site-company .book-information .book-information-left {
  width: 55.322581%;
  float: left;
}
.site-company .book-information .book-information-left .btn-book-dl .btn {
  width: 100%;
  padding: 30px 0;
  line-height: 1.0;
  font-size: 18px;
  font-weight: bold;
}
.site-company .book-information .book-information-left .btn-book-dl .btn span {
  padding-right: 40px;
  background: url("../images/base/icon-download.png") no-repeat right 0;
}
@media screen and (max-width: 640px) {
  .site-company .book-information .book-information-left {
    width: auto;
    float: none;
  }
}
.site-company .book-information .book-information-right {
  width: 39.83871%;
  float: right;
}
.site-company .book-information .book-information-right .adobe-reader p {
  margin-top: 10px;
  font-size: 12px;
}
@media screen and (max-width: 640px) {
  .site-company .book-information .book-information-right {
    margin-top: 30px;
    width: auto;
    float: none;
    text-align: center;
  }
}
.site-company .book-title {
  margin-bottom: 5px;
  font-size: 16px;
  font-weight: bold;
}

.site-csr .content-box:first-child {
  margin-top: 0;
}
.site-csr .content-box-stitle {
  background-position: 0 0;
}
.site-csr .content-row-title {
  margin-bottom: 10px;
}
.site-csr .csr-safety-nav {
  margin-top: 30px;
  margin-bottom: 40px;
}
.site-csr .csr-safety-nav a {
  width: 29%;
  margin-right: 2.09%;
  padding-top: 10px;
  padding-bottom: 10px;
  padding-right: 0;
  text-align: center;
  font-weight: bold;
}
.site-csr .csr-safety-nav a:last-child {
  margin-right: 0;
}
.site-csr .csr-safety-nav a:before {
  content: "";
  width: 24px;
  height: 30px;
  position: absolute;
  background-repeat: no-repeat;
  margin-left: -36px;
}
.site-csr .csr-safety-nav a.btn-green:before {
  background-image: url("../images/corporate/csr/icon-train-w.png");
  background-position: 0px 3px;
}
.site-csr .csr-safety-nav a.btn-orange:before {
  background-image: url("../images/corporate/csr/icon-bus-w.png");
  background-position: 0px 5px;
}
.site-csr .csr-safety-nav a.btn-bluegray:before {
  margin-right: 0;
  background-image: url("../images/corporate/csr/icon-leisure-w.png");
  background-position: 5px 0px;
}
.site-csr .csr-safety-footer a {
  width: 44%;
}
.site-csr .csr-safety-footer a:first-child {
  margin-right: 6.1%;
}
.site-csr .csr-box-inner {
  width: 100%;
  margin-bottom: 30px;
}
.site-csr .csr-box-inner:after {
  content: "";
  display: block;
  clear: both;
}
.site-csr .csr-box-inner .csr-box-inner-left {
  width: 66%;
  padding-right: 4%;
  float: left;
}
.site-csr .csr-box-inner .csr-box-inner-right {
  width: 30%;
  float: left;
}
.site-csr .csr-box-inner .csr-box-inner-right figure {
  text-align: center;
}
.site-csr .csr-box-inner .csr-box-inner-right figure img img {
  width: 100%;
  height: auto;
}
.site-csr .csr-box-inner .csr-box-inner-right figure figcaption {
  margin-top: 10px;
  font-style: oblique;
}
.site-csr h2.csr-safety-title {
  background-repeat: no-repeat;
  padding-left: 60px;
}
.site-csr h4.csr-box-inner-title {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 20px;
}
.site-csr ol.csr-ol-list {
  position: relative;
}
.site-csr ol.csr-ol-list li {
  font-weight: bold;
  margin: 0;
  padding-left: 1.25em;
}
.site-csr ol.csr-ol-list li span {
  position: absolute;
  left: 0;
  margin: 0;
}
.site-csr .csr-safety-train {
  margin-top: 10px;
}
.site-csr .csr-safety-train .content-box-title {
  color: #14a94b;
}
.site-csr .csr-safety-train h2.csr-safety-title {
  background-image: url("../images/corporate/csr/icon-train.png");
  background-position: 15px 12px;
}
.site-csr .csr-safety-train ol.csr-ol-list li span, .site-csr .csr-safety-train figcaption {
  color: #14a94b;
}
.site-csr .csr-safety-bus {
  margin-top: 10px;
}
.site-csr .csr-safety-bus .content-box-title {
  color: #f57f31;
}
.site-csr .csr-safety-bus h2.csr-safety-title {
  background-image: url("../images/corporate/csr/icon-bus.png");
  background-position: 15px 15px;
}
.site-csr .csr-safety-bus ol.csr-ol-list li span, .site-csr .csr-safety-bus figcaption {
  color: #f57f31;
}
.site-csr .csr-safety-leisure {
  margin-top: 10px;
}
.site-csr .csr-safety-leisure .content-box-title {
  color: #1e5e86;
}
.site-csr .csr-safety-leisure h2.csr-safety-title {
  background-image: url("../images/corporate/csr/icon-leisure.png");
  background-position: 18px 10px;
}
.site-csr .csr-safety-leisure ol.csr-ol-list li span, .site-csr .csr-safety-leisure figcaption {
  color: #1e5e86;
}
.site-csr .csr-society-inner {
  background-color: #f7f7f7;
}
.site-csr .csr-society-inner h4.csr-society-inner-title {
  background-color: #14a94b;
  font-size: 16px;
  color: #fff;
  padding: 5px 15px;
}
.site-csr .csr-society-inner h4.csr-society-inner-title span {
  font-size: 12px;
}
.site-csr .csr-society-inner dl {
  width: 90%;
  margin: 2% 5% 0 5%;
  padding-bottom: 2%;
  float: left;
  border-bottom: dotted 1px #33322f;
}
.site-csr .csr-society-inner dl:last-child {
  border: 0;
}
.site-csr .csr-society-inner dl dt {
  width: 35%;
  float: left;
  color: #14a94b;
  font-weight: bold;
}
.site-csr .csr-society-inner dl dd {
  width: 60%;
  padding-left: 3%;
  display: block;
  float: left;
  border-left: 1px solid #777777;
}
.site-csr .csr-society-inner dl dd:before {
  display: block;
  content: "\002026";
  color: #33322f;
  float: left;
  font-weight: bold;
}
.site-csr .csr-society-inner ol {
  padding: 10px 30px 10px 30px;
}
.site-csr .csr-society-inner ol li {
  padding-top: 10px;
  color: #14a94b;
  font-weight: bold;
  border-bottom: dotted 1px #33322f;
}
.site-csr .csr-society-inner ol li ul {
  padding-bottom: 3%;
}
.site-csr .csr-society-inner ol li ul li {
  color: #33322f;
  font-weight: normal;
  list-style: disc;
  margin: 0 0 0 4%;
  border-bottom: 0;
}
.site-csr .csr-society-inner ol li:last-child {
  border: 0;
}
.site-csr .csr-voice-contact {
  border: solid 1px #e2e2e2;
  width: 100%;
}
.site-csr .csr-voice-contact dl.phone {
  border-right: solid 1px #e2e2e2;
  width: 100%;
  float: left;
  margin-right: -2px;
}
.site-csr .csr-voice-contact dl.phone dt {
  width: 70%;
  float: left;
  margin-right: -1px;
  border-right: solid 1px #e2e2e2;
  text-align: center;
}
.site-csr .csr-voice-contact dl.phone dd {
  float: left;
  width: 30%;
  text-align: center;
  border-top: solid 1px #e2e2e2;
  padding: 15px 0px 15px 0px;
}
.site-csr .csr-voice-contact dl.time {
  width: 100%;
  float: left;
}
.site-csr .csr-voice-contact dl.time dt {
  float: none;
}
.site-csr .csr-voice-contact dl.time dd {
  text-align: center;
  height: auto;
  padding: 10px 0;
}
.site-csr .csr-voice-contact dl dt {
  border-top: solid 1px #e2e2e2;
  background: #f7f7f7;
  padding: 15px 0 15px 0;
}
.site-csr .csr-voice-contact dl .title {
  background: #14a94b;
  text-align: center;
  color: #fff;
}
.site-csr .csr-contact {
  margin: 20px auto 0 auto;
  padding: 10px;
  text-align: center;
  display: block;
  width: 300px;
  font-weight: bold;
}
.site-csr .csr-group-content h2.content-row-title {
  margin-top: 40px;
}
.site-csr .csr-group-content .tag-group:after {
  content: "";
  display: block;
  clear: both;
}
.site-csr .csr-group-content .tag-group h3 {
  float: left;
  padding-left: 40px;
  height: 37px;
  line-height: 37px;
  background-repeat: no-repeat;
  margin-right: 20px;
}
.site-csr .csr-group-content .tag-group h3.train {
  background-image: url("../images/corporate/csr/icon-train-mark.png");
  color: #14a94b;
}
.site-csr .csr-group-content .tag-group h3.bus {
  background-image: url("../images/corporate/csr/icon-bus-mark.png");
  color: #f57f31;
}
.site-csr .csr-group-content .tag-group h3.leisure {
  background-image: url("../images/corporate/csr/icon-leisure-mark.png");
  color: #1e5e86;
}
.site-csr .csr-group-content h4.csr-border-titile {
  border-bottom: 1px solid #e2e2e2;
  font-size: 18px;
  font-weight: bold;
  line-height: 1.0em;
  margin-bottom: 20px;
  padding-bottom: 20px;
}
.site-csr .csr-group-content .content-box {
  margin-top: 5px;
  margin-bottom: 20px;
}
.site-csr .csr-group-content .csr-box-inner {
  margin-bottom: 0;
}

.site-train .pankuzu a {
  color: #129843;
}
.site-train .global-header-navigation-menu ul li {
  border-right: 1px solid #129843;
}
.site-train .global-header-navigation-menu ul li a:hover {
  background-color: #129843;
}
.site-train .global-header-navigation-menu ul li a:before {
  background-image: url("../images/train/global-navigation.png");
}
.site-train .global-header-navigation-menu ul li.station {
  border-left: 1px solid #129843;
}
.site-train .global-header-navigation-menu ul li.station a {
  background-position: 27px 50%;
}
.site-train .global-header-navigation-menu ul li.station a:before {
  background-position: 27px 50%;
}
.site-train .global-header-navigation-menu ul li.fare a {
  background-position: -73px 50%;
}
.site-train .global-header-navigation-menu ul li.fare a:before {
  background-position: -73px 50%;
}
.site-train .global-header-navigation-menu ul li.time a {
  background-position: -171px 50%;
}
.site-train .global-header-navigation-menu ul li.time a:before {
  background-position: -171px 50%;
}
.site-train .global-header-navigation-menu ul li.ticket a {
  background-position: -266px 50%;
}
.site-train .global-header-navigation-menu ul li.ticket a:before {
  background-position: -266px 50%;
}
.site-train .global-header-navigation-menu ul li.please a {
  background-position: -560px 50%;
}
.site-train .global-header-navigation-menu ul li.please a:before {
  background-position: -560px 50%;
}
.site-train .global-header-navigation-menu ul li.faq a {
  background-position: -363px 50%;
}
.site-train .global-header-navigation-menu ul li.faq a:before {
  background-position: -363px 50%;
}
.site-train .global-header-navigation-menu ul li.museum a {
  background-position: -460px 50%;
}
.site-train .global-header-navigation-menu ul li.museum a:before {
  background-position: -460px 50%;
}
@media screen and (max-width: 1140px) {
  .site-train .global-header-navigation-menu {
    background-color: #14a94b;
    border-top: 1px solid #129843;
  }
}
@media screen and (max-width: 640px) {
  .site-train .global-header-navigation-menu {
    border-top: 1px solid #129843;
  }
  .site-train .global-header-navigation-menu ul {
    background-color: #14a94b;
  }
  .site-train .global-header-navigation-menu ul li {
    border-right: none;
    border-bottom: 1px solid #129843;
  }
  .site-train .global-header-navigation-menu ul li a {
    background-image: none;
  }
  .site-train .global-header-navigation-menu ul li.station {
    border-left: none;
  }
}
.site-train .global-header-navigation {
  background-color: #14a94b;
}
.site-train .global-header-navigation-logo {
  width: 152px;
}
.site-train .global-header-navigation-logo a {
  background-image: url("../images/train/logo.png");
}
@media screen and (max-width: 640px) {
  .site-train .global-header-navigation-logo {
    width: 96px;
  }
  .site-train .global-header-navigation-logo a {
    background-image: url("../images/train/logo@2x.png");
    -moz-background-size: auto 25px;
    -o-background-size: auto 25px;
    -webkit-background-size: auto 25px;
    background-size: auto 25px;
  }
}
@media screen and (max-width: 640px) {
  .site-train .global-header-navigation-menu {
    background-color: #14a94b;
  }
}
.site-train .sp-global-header-navigation-menu-btn {
  border-left: 1px solid #129843;
}
.site-train .pankuzu {
  background-color: #e7f3dc;
}
.site-train .sub-navigation li a {
  color: #14a94b;
}
.site-train .sub-navigation li a span {
  background: url("../images/base/icon-link-blt-down.png") no-repeat;
  background-position: 0 -293px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-train .sub-navigation li a span {
    background-image: url("../images/base/icon-link-blt-down@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.site-train .sub-navigation li a:hover {
  color: #fff;
  background-color: #14a94b;
}
.site-train .sub-navigation li a:hover span {
  background: url("../images/base/icon-link-blt-down.png") no-repeat;
  background-position: 0 4px;
  background-position: 0 8px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-train .sub-navigation li a:hover span {
    background-image: url("../images/base/icon-link-blt-down@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
@media screen and (max-width: 640px) {
  .site-train .sub-navigation li a {
    position: relative;
  }
  .site-train .sub-navigation li a:before {
    content: "";
    display: block;
    width: 12px;
    height: 8px;
    position: absolute;
    background: url("../images/base/icon-link-blt-down.png") no-repeat;
    top: "";
    right: "";
    bottom: 10px;
    left: 50%;
    margin-left: -6px;
    background-position: 0 -293px;
  }
}
@media screen and (max-width: 640px) and (-webkit-min-device-pixel-ratio: 2) {
  .site-train .sub-navigation li a:before {
    background-image: url("../images/base/icon-link-blt-down@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
@media screen and (max-width: 640px) {
  .site-train .sub-navigation li a:before {
    background-position: 0 -300px;
  }
  .site-train .sub-navigation li a span {
    background-image: none;
  }
  .site-train .sub-navigation li a:hover span {
    background-image: none;
  }
}
.site-train .page-title {
  border-top-color: #14a94b;
}
.site-train .content-box-title {
  border-bottom-color: #14a94b;
}
.site-train .content-box2 .content-box-title,
.site-train .information-box .content-box-title {
  background-color: #14a94b;
}
.site-train .menu-box-title.content-box-title {
  background-color: #14a94b;
}
.site-train .content-box-link a {
  background-position: 0 -98px;
}
.site-train .content-box-stitle {
  background-position: 0 -232px;
}
.site-train .menu-box-col a:after {
  background-image: url("../images/train/menu-icon.png");
}
@media screen and (max-width: 640px) {
  .site-train .menu-box-col a:after {
    background-image: url("../images/train/menu-icon@2x.png");
    -moz-background-size: 1048px auto;
    -o-background-size: 1048px auto;
    -webkit-background-size: 1048px auto;
    background-size: 1048px auto;
  }
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-train .menu-box-col a:after {
    background-image: url("../images/train/menu-icon@2x.png");
    -moz-background-size: 1048px auto;
    -o-background-size: 1048px auto;
    -webkit-background-size: 1048px auto;
    background-size: 1048px auto;
  }
}
.site-train .menu-box-col.menu-box-station a:after {
  background-position: 17px 7px;
}
.site-train .menu-box-col.menu-box-fare a:after {
  background-position: -183px 5px;
}
@media screen and (max-width: 640px) {
  .site-train .menu-box-col.menu-box-fare {
    border-right: none;
  }
}
.site-train .menu-box-col.menu-box-time a:after {
  background-position: -382px 7px;
}
.site-train .menu-box-col.menu-box-ticket a:after {
  background-position: -583px 8px;
}
@media screen and (max-width: 640px) {
  .site-train .menu-box-col.menu-box-ticket {
    border-right: none;
  }
}
.site-train .menu-box-col.menu-box-please a:after {
  background-position: -976px 4px;
}
@media screen and (max-width: 640px) {
  .site-train .menu-box-col.menu-box-please {
    border-bottom: none;
  }
}
.site-train .menu-box-col.menu-box-faq {
  border-right: none;
}
.site-train .menu-box-col.menu-box-faq a:after {
  background-position: -781px 5px;
}
@media screen and (max-width: 640px) {
  .site-train .menu-box-col.menu-box-faq {
    border-bottom: none;
  }
}
.site-train .basic-table th {
  background-color: #14a94b;
}
.site-train .btn-commute {
  margin-top: 20px;
}
.site-train .btn-commute a.btn {
  padding: 20px 160px;
  font-size: 18px;
  font-weight: bold;
}
.site-train .btn-commute a.btn span {
  padding-right: 30px;
  background: url("../images/base/icon-download.png") no-repeat 100% 50%;
}
@media screen and (max-width: 640px) {
  .site-train .station-area .content-box-title {
    border-bottom-color: #14a94b;
    background-color: transparent;
  }
}
.site-train .vehicle-box {
  padding-left: 30px;
  padding-right: 30px;
}
.site-train .vehicle-area {
  margin-left: auto;
  margin-right: auto;
}
.site-train .vehicle-area-image {
  text-align: center;
  margin-bottom: 30px;
}
.site-train .vehicle-area-text {
  margin-bottom: 30px;
}
.site-train .vehicle-area-text p {
  margin-bottom: 1em;
}
.site-train .vehicle-area-box {
  margin-top: 30px;
  padding: 20px;
  border: 1px solid #e2e2e2;
}
.site-train .train-history-table,
.site-train .train-history-table-small {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
  background-color: #fff;
}
.site-train .train-history-table-row {
  display: table-row;
}
.site-train .train-history-table-th-year {
  width: 15%;
}
.site-train .train-history-table-th-date {
  width: 10%;
}
.site-train .train-history-table-th-event {
  width: 75%;
}
.site-train .train-history-table-th,
.site-train .train-history-table-td {
  display: table-cell;
  vertical-align: top;
  padding: 10px;
  font-size: 14px;
  border: 1px solid #e2e2e2;
}
.site-train .train-history-table-th.train-history-table-td-none,
.site-train .train-history-table-td.train-history-table-td-none {
  border-bottom: none;
  border-top: none;
}
.site-train .train-history-table-th.train-history-table-td-bottom-none,
.site-train .train-history-table-td.train-history-table-td-bottom-none {
  border-bottom: none;
}
.site-train .train-history-table-th {
  background-color: #14a94b;
  color: #fff;
  text-align: center;
  font-weight: bold;
}
.site-train .train-history-table-small-td {
  display: table-cell;
  vertical-align: top;
  font-size: 14px;
  border: none;
}
.site-train .train-history-table-small-td img {
  margin: 0 0 10px;
  text-align: right;
}
.site-train .history-photo1 {
  width: 180px;
  text-align: center;
}
.site-train .history-photo1 p {
  line-height: 1.4em;
}
.site-train .banner-box .links p a {
  position: relative;
  background-position: 0 -100px;
}
.site-train .banner-box .links p a:before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  position: absolute;
  background: url("../images/base/icon-link-square.png") no-repeat;
  top: 50%;
  right: auto;
  bottom: auto;
  left: 0;
  margin-top: -6px;
  background-position: 0 -100px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-train .banner-box .links p a:before {
    background-image: url("../images/base/icon-link-square@2x.png");
    background-repeat: no-repeat;
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.site-train .illust-map-inner {
  background-image: url("../images/train/illust-map-bg.gif");
}
.site-train .right-link-box-title {
  background-color: #14a94b;
}
.site-train .right-link-list li a {
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 -99px;
  background-position: 0 -97px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-train .right-link-list li a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.site-train .safety-box:after {
  content: "";
  display: block;
  clear: both;
}
.site-train .safety-box-left {
  width: 48%;
  float: left;
}
.site-train .safety-box-right {
  width: 48%;
  float: right;
}
.site-train .safety-table {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}
.site-train .safety-table-row {
  display: table-row;
}
.site-train .safety-table-th,
.site-train .safety-table-td {
  display: table-cell;
  vertical-align: middle;
  padding: 15px 20px;
  border: 1px solid #e2e2e2;
}
.site-train .safety-table-row:nth-child(2n) .safety-table-th,
.site-train .safety-table-row:nth-child(2n) .safety-table-td {
  background-color: #f7f7f7;
}
.site-train .safety-table-td {
  text-align: center;
}
.site-train .safety-box-btn {
  margin-bottom: 15px;
}
.site-train .safety-box-btn a {
  display: block;
  padding-top: 20px;
  padding-bottom: 20px;
  font-weight: bold;
  font-size: 18px;
}
.site-train .safety-box-pdf {
  font-size: 12px;
}
.site-train .safety-box-pdf .text {
  padding-left: 150px;
  background: url("../images/base/adobe-reader.png") no-repeat 0 50%;
}
.site-train .more-btn a {
  position: relative;
}
.site-train .more-btn a:before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  position: absolute;
  background: url("../images/base/icon-link-square.png") no-repeat;
  top: 50%;
  right: "";
  bottom: "";
  left: 0;
  margin-top: -6px;
  background-position: 0 -100px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-train .more-btn a:before {
    background-image: url("../images/base/icon-link-square@2x.png");
    background-repeat: no-repeat;
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}

.memoirs-box {
  padding: 30px;
  border: 1px solid #e2e2e2;
  background-color: #fff;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
@media screen and (max-width: 640px) {
  .memoirs-box {
    padding: 20px;
  }
}

.memoirs-chapter {
  margin-bottom: 15px;
}

.memoirs-chapter-num {
  color: #14a94b;
  margin-bottom: 5px;
  font-size: 12px;
}

.memoirs-chapter-title {
  font-size: 16px;
  font-weight: bold;
}

.memoirs-story,
.memoirs-story-row {
  font-size: 0;
}

.memoirs-story-row {
  margin-bottom: 3px;
}
@media screen and (max-width: 1140px) {
  .memoirs-story-row {
    margin-bottom: 10px;
  }
}

.memoirs-story-num,
.memoirs-story-title {
  display: inline-block;
  vertical-align: top;
  font-size: 14px;
}
.memoirs-story-num a,
.memoirs-story-title a {
  text-decoration: none;
}
.memoirs-story-num a:hover,
.memoirs-story-title a:hover {
  text-decoration: underline;
}

.memoirs-story-num {
  margin-right: 10px;
  max-width: 16%;
}
.memoirs-story-num a {
  display: block;
  padding: 5px 10px;
  background-color: #14a94b;
  color: #fff;
  font-size: 12px;
  text-align: center;
  line-height: 1.0;
  box-shadow: inset 0px -2px 0px 0px rgba(0, 0, 0, 0.1);
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
@media screen and (max-width: 1140px) {
  .memoirs-story-num {
    max-width: 17%;
    margin-right: 3%;
  }
  .memoirs-story-num a {
    display: inline-block;
  }
}
@media screen and (max-width: 640px) {
  .memoirs-story-num {
    display: block;
    width: auto;
    max-width: inherit;
  }
}

.memoirs-story-title {
  max-width: 84%;
}
@media screen and (max-width: 1140px) {
  .memoirs-story-title {
    max-width: 80%;
  }
}
@media screen and (max-width: 640px) {
  .memoirs-story-title {
    display: block;
    width: auto;
    max-width: inherit;
  }
}

.content-memoirs {
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}

.content-memoirs-header {
  padding-top: 15px;
  padding-bottom: 30px;
  text-align: center;
  position: relative;
  background-color: #005b3f;
  color: #fff;
  font-size: 24px;
  font-weight: bold;
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}
.content-memoirs-header span {
  font-size: 16px;
  margin-right: 1em;
}
.content-memoirs-header:after {
  content: "";
  display: block;
  width: 100%;
  height: 5px;
  background-color: #ffe770;
  position: absolute;
  bottom: 10px;
  left: 0;
}

.content-memoirs-inner {
  padding: 50px;
  border: 1px solid #e2e2e2;
  border-top: none;
  position: relative;
}

.content-memoirs-title {
  margin-bottom: 20px;
  text-align: center;
}
.content-memoirs-title .num {
  margin-bottom: 15px;
}
.content-memoirs-title .num span {
  padding-bottom: 5px;
  border-bottom: 2px solid #14a94b;
}
.content-memoirs-title .title {
  font-weight: bold;
  font-size: 32px;
}

.content-memoirs-text table {
  width: auto !important;
  margin-bottom: 20px;
  margin-left: auto;
  margin-right: auto;
}
.content-memoirs-text p {
  margin-bottom: 10px;
}

.content-memoirs-text-bottom {
  padding-top: 20px;
  margin-top: 20px;
  border-top: 1px solid #e2e2e2;
}

.content-memoirs-date {
  padding: 10px;
  position: absolute;
  top: 0;
  right: 0;
  background-color: #f7f7f7;
  line-height: 1.0;
}

.content-memoirs-inner2:after {
  content: "";
  display: block;
  clear: both;
}

.content-memoirs-nav {
  width: 70px;
  float: left;
  margin-right: 30px;
}
@media screen and (max-width: 1140px) {
  .content-memoirs-nav {
    width: auto;
    text-align: center;
    float: none;
    margin-bottom: 30px;
    margin-right: 0;
  }
}

.content-memoirs-text {
  width: 700px;
  float: left;
}
@media screen and (max-width: 1140px) {
  .content-memoirs-text {
    width: auto;
    float: none;
  }
}

.content-memoirs-nav {
  text-align: center;
}
.content-memoirs-nav ul li {
  margin-bottom: 5px;
}
.content-memoirs-nav ul li a {
  display: block;
  background-color: #14a94b;
  color: #fff;
  text-align: center;
  line-height: 1.0;
  padding: 5px;
  text-decoration: none;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
  box-shadow: inset 0px -2px 0px 0px rgba(0, 0, 0, 0.1);
  -moz-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -o-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  -webkit-transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
  transition: all 0.4s cubic-bezier(0.52, 0.48, 0.15, 0.97);
}
.content-memoirs-nav ul li a:hover {
  -moz-transition-duration: 0.2s;
  -o-transition-duration: 0.2s;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
}
.content-memoirs-nav ul li a:hover {
  background-color: #ee2f60;
}
.content-memoirs-nav ul li.current a {
  background-color: #ee2f60;
}
@media screen and (max-width: 1140px) {
  .content-memoirs-nav ul {
    font-size: 0;
  }
  .content-memoirs-nav ul li {
    display: inline-block;
    vertical-align: top;
    font-size: 12px;
    margin-right: 10px;
    margin-left: 10px;
  }
  .content-memoirs-nav ul li a {
    padding-left: 10px;
    padding-right: 10px;
  }
}

.content-memoirs-nav-title {
  margin-bottom: 10px;
}

.vehicle-table {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}

.vehicle-table-row {
  display: table-row;
}

.vehicle-table-th,
.vehicle-table-td {
  display: table-cell;
  vertical-align: top;
  padding: 10px 20px;
  border: 1px solid #e2e2e2;
}
.vehicle-table-th span,
.vehicle-table-td span {
  font-size: 12px;
}

.vehicle-table-th {
  background-color: #f7f7f7;
}

.vehicle-area-inner:after {
  content: "";
  display: block;
  clear: both;
}
.vehicle-area-inner .vehicle-area-image {
  width: 40%;
  float: left;
  margin-bottom: 0;
}
.vehicle-area-inner .vehicle-area-text {
  width: 58%;
  float: right;
}

.museum-box {
  margin-bottom: 20px;
  background-color: #fff;
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}
.museum-box a {
  display: block;
  text-decoration: none;
}

.museum-box-image,
.museum-box-text {
  width: 50%;
  display: table-cell;
  vertical-align: middle;
}

.museum-box-text {
  border-top: 1px solid #e2e2e2;
  border-right: 1px solid #e2e2e2;
  border-bottom: 1px solid #e2e2e2;
  text-align: center;
}
.museum-box2 .museum-box-text {
  border-right: none;
  border-left: 1px solid #e2e2e2;
}
@media screen and (max-width: 640px) {
  .museum-box-text {
    padding: 20px;
  }
}

.museum-box-title {
  font-size: 18px;
  font-weight: bold;
  margin-bottom: 15px;
}

.charta-data {
  width: 100%;
  border-collapse: collapse;
}
.charta-data th,
.charta-data td {
  width: 6.666%;
  padding: 10px 5px;
  border: 1px solid #e2e2e2;
  text-align: center;
  vertical-align: middle;
  line-height: 1.0;
  background-color: #fff;
}
.charta-data th {
  background-color: #e7f3dc;
}
.charta-data td.price .a {
  padding-bottom: 5px;
  border-bottom: 1px solid #e2e2e2;
}
.charta-data td.price .c {
  padding-top: 5px;
}
.charta-data td.no-border {
  border: none;
  background: none;
}

.charta-ex {
  margin-top: 20px;
}

.charta-ex-table {
  margin-left: auto;
}
.charta-ex-table th,
.charta-ex-table td {
  padding: 5px 10px;
  border: 1px solid #e2e2e2;
  text-align: center;
  vertical-align: middle;
  background-color: #fff;
}
.charta-ex-table th {
  color: #fff;
  background-color: #14a94b;
}
.charta-ex-table td.name {
  background-color: #e7f3dc;
}
.charta-ex-table td.no-border {
  border: none;
  background: none;
}

.site-bus .pankuzu a,
.site-bus .content-box-inner a {
  color: #d86c24;
}
.site-bus .global-header-navigation-menu ul li {
  border-right: 1px solid #d86c24;
}
.site-bus .global-header-navigation-menu ul li a:hover {
  background-color: #d86c24;
}
.site-bus .global-header-navigation-menu ul li a:before {
  background-image: url("../images/bus/global-navigation.png");
}
.site-bus .global-header-navigation-menu ul li.regular {
  border-left: 1px solid #d86c24;
}
.site-bus .global-header-navigation-menu ul li.regular a {
  background-position: 27px 50%;
}
.site-bus .global-header-navigation-menu ul li.regular a:before {
  background-position: 27px 50%;
}
.site-bus .global-header-navigation-menu ul li.highway a {
  background-position: -70px 50%;
}
.site-bus .global-header-navigation-menu ul li.highway a:before {
  background-position: -70px 50%;
}
.site-bus .global-header-navigation-menu ul li.airport a {
  background-position: -168px 50%;
}
.site-bus .global-header-navigation-menu ul li.airport a:before {
  background-position: -168px 50%;
}
.site-bus .global-header-navigation-menu ul li.rental a {
  background-position: -264px 50%;
}
.site-bus .global-header-navigation-menu ul li.rental a:before {
  background-position: -264px 50%;
}
.site-bus .global-header-navigation-menu ul li.sight a {
  background-position: -361px 50%;
}
.site-bus .global-header-navigation-menu ul li.sight a:before {
  background-position: -361px 50%;
}
.site-bus .global-header-navigation-menu ul li.ticket a {
  background-position: -457px 50%;
}
.site-bus .global-header-navigation-menu ul li.ticket a:before {
  background-position: -457px 50%;
}
.site-bus .global-header-navigation-menu ul li.faq a {
  background-position: -554px 50%;
}
.site-bus .global-header-navigation-menu ul li.faq a:before {
  background-position: -554px 50%;
}
.site-bus .global-header-navigation-menu ul li.guide a {
  background-position: -651px 50%;
}
.site-bus .global-header-navigation-menu ul li.guide a:before {
  background-position: -651px 50%;
}
@media screen and (max-width: 1140px) {
  .site-bus .global-header-navigation-menu {
    border-top: 1px solid #d86c24;
    background-color: #f57f31;
  }
  .site-bus .global-header-navigation-menu ul li.regular a {
    background-position: 22px 50%;
  }
  .site-bus .global-header-navigation-menu ul li.highway a {
    background-position: -69px 50%;
  }
  .site-bus .global-header-navigation-menu ul li.airport a {
    background-position: -166px 50%;
  }
  .site-bus .global-header-navigation-menu ul li.rental a {
    background-position: -262px 50%;
  }
  .site-bus .global-header-navigation-menu ul li.sight a {
    background-position: -359px 50%;
  }
  .site-bus .global-header-navigation-menu ul li.ticket a {
    background-position: -457px 50%;
  }
  .site-bus .global-header-navigation-menu ul li.faq a {
    background-position: -457px 50%;
  }
  .site-bus .global-header-navigation-menu ul li.guide a {
    background-position: -554px 50%;
  }
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-bus .global-header-navigation-menu ul li a:before {
    background-image: url("../images/bus/global-navigation@2x.png");
    -moz-background-size: 728px auto;
    -o-background-size: 728px auto;
    -webkit-background-size: 728px auto;
    background-size: 728px auto;
  }
}
@media screen and (max-width: 640px) {
  .site-bus .global-header-navigation-menu {
    border-top: 1px solid #d86c24;
  }
  .site-bus .global-header-navigation-menu ul {
    background-color: #f57f31;
  }
  .site-bus .global-header-navigation-menu ul li {
    border-right: none;
    border-bottom: 1px solid #d86c24;
  }
  .site-bus .global-header-navigation-menu ul li a {
    background-image: none;
  }
  .site-bus .global-header-navigation-menu ul li.station {
    border-left: none;
  }
}
@media screen and (max-width: 640px) {
  .site-bus .global-header-navigation-menu {
    background-color: #f57f31;
  }
}
.site-bus .sp-global-header-navigation-menu-btn {
  border-left: 1px solid #d86c24;
}
.site-bus .global-header-navigation {
  background-color: #f57f31;
}
.site-bus .global-header-navigation-logo {
  width: 152px;
}
.site-bus .global-header-navigation-logo a {
  background-image: url("../images/bus/logo.png");
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-bus .global-header-navigation-logo a {
    background-image: url("../images/bus/logo@2x.png");
    -moz-background-size: 100px auto;
    -o-background-size: 100px auto;
    -webkit-background-size: 100px auto;
    background-size: 100px auto;
  }
}
.site-bus .pankuzu {
  background-color: #fbf0e6;
}
.site-bus .sub-navigation li a {
  color: #f57f31;
}
.site-bus .sub-navigation li a span {
  background: url("../images/base/icon-link-blt-down.png") no-repeat;
  background-position: 0 -400px;
  background-position: 0 -393px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-bus .sub-navigation li a span {
    background-image: url("../images/base/icon-link-blt-down@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.site-bus .sub-navigation li a:hover {
  color: #fff;
  background-color: #f57f31;
}
.site-bus .sub-navigation li a:hover span {
  background: url("../images/base/icon-link-blt-down.png") no-repeat;
  background-position: 0 4px;
  background-position: 0 8px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-bus .sub-navigation li a:hover span {
    background-image: url("../images/base/icon-link-blt-down@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
@media screen and (max-width: 640px) {
  .site-bus .sub-navigation li a {
    position: relative;
    background-position: 0 -393px;
  }
  .site-bus .sub-navigation li a:before {
    content: "";
    display: block;
    width: 12px;
    height: 8px;
    position: absolute;
    background: url("../images/base/icon-link-blt-down.png") no-repeat;
    top: "";
    right: "";
    bottom: 10px;
    left: 50%;
    margin-left: -6px;
    background-position: 0 -400px;
  }
}
@media screen and (max-width: 640px) and (-webkit-min-device-pixel-ratio: 2) {
  .site-bus .sub-navigation li a:before {
    background-image: url("../images/base/icon-link-blt-down@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
@media screen and (max-width: 640px) {
  .site-bus .sub-navigation li a span {
    background-image: none;
  }
  .site-bus .sub-navigation li a:hover span {
    background-image: none;
  }
}
.site-bus .page-title {
  border-top-color: #f57f31;
}
.site-bus .content-box-title {
  border-bottom-color: #f57f31;
}
.site-bus .content-box2 .content-box-title,
.site-bus .information-box .content-box-title {
  background-color: #f57f31;
}
.site-bus .information-tab ul li a:after {
  background-color: #f57f31;
}
.site-bus .menu-box-title.content-box-title {
  background-color: #f57f31;
}
.site-bus .content-box-link a {
  background-position: 0 -208px;
}
.site-bus .content-box-link ul li a {
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 -210px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-bus .content-box-link ul li a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.site-bus .content-box-stitle {
  background-position: 0 -232px;
}
.site-bus .menu-box-bus {
  margin-top: 20px;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
  border: 1px solid #e2e2e2;
}
@media screen and (max-width: 640px) {
  .site-bus .menu-box-bus {
    border-right: none;
    border-bottom: none;
  }
}
.site-bus .menu-box-col a:after {
  background-image: url("../images/bus/menu-icon.png");
}
@media screen and (max-width: 640px) {
  .site-bus .menu-box-col a:after {
    background-image: url("../images/bus/menu-icon@2x.png");
    -moz-background-size: auto 56px;
    -o-background-size: auto 56px;
    -webkit-background-size: auto 56px;
    background-size: auto 56px;
  }
}
.site-bus .menu-box-col.menu-box-route a:after {
  background-position: 4px 0;
}
@media screen and (max-width: 640px) {
  .site-bus .menu-box-col.menu-box-route a:after {
    background-position: 2px 0;
  }
}
.site-bus .menu-box-col.menu-box-schedule a:after {
  background-position: -192px 0;
}
@media screen and (max-width: 640px) {
  .site-bus .menu-box-col.menu-box-schedule {
    border-right: none;
  }
  .site-bus .menu-box-col.menu-box-schedule a:after {
    background-position: -195px 0;
  }
}
.site-bus .menu-box-col.menu-box-line a:after {
  background-position: -394px 4px;
}
.site-bus .menu-box-col.menu-box-line a i {
  line-height: 1.3;
  padding-top: 5px;
}
@media screen and (max-width: 640px) {
  .site-bus .menu-box-col.menu-box-line a:after {
    background-position: -398px 0;
  }
}
.site-bus .menu-box-col.menu-box-guide a:after {
  background-position: -590px 4px;
}
@media screen and (max-width: 640px) {
  .site-bus .menu-box-col.menu-box-guide {
    border-bottom: none;
  }
  .site-bus .menu-box-col.menu-box-guide a:after {
    background-position: -604px 0;
  }
}
.site-bus .menu-box-col.menu-box-faq a:after {
  background-position: -790px 4px;
}
@media screen and (max-width: 640px) {
  .site-bus .menu-box-col.menu-box-faq {
    border-right: none;
    border-bottom: 1px solid #e2e2e2;
  }
  .site-bus .menu-box-col.menu-box-faq a:after {
    background-position: -808px 4px;
  }
}
.site-bus .menu-box-col.bustop-menu-regular-title a:after {
  width: 106px;
  height: 50px;
  margin-left: -53px;
  top: 40%;
  background-image: url("../images/bus/icon-bus-regular.png");
  background-position: 0 0;
}
@media screen and (max-width: 640px) {
  .site-bus .menu-box-col.bustop-menu-regular-title a:after {
    background-image: url("../images/bus/icon-bus-regular@2x.png");
    -moz-background-size: auto 45px;
    -o-background-size: auto 45px;
    -webkit-background-size: auto 45px;
    background-size: auto 45px;
  }
}
.site-bus .menu-box-col.bustop-menu-regular-title a i {
  top: 66%;
}
.site-bus .menu-box-bus .menu-box-col a:after {
  width: 140px;
  height: 60px;
  top: 38%;
  margin-left: -70px;
  background-image: url("../images/bus/menu-icon-bus.png");
}
@media screen and (max-width: 640px) {
  .site-bus .menu-box-bus .menu-box-col a:after {
    background-image: url("../images/bus/menu-icon-bus@2x.png");
    -moz-background-size: auto 56px;
    -o-background-size: auto 56px;
    -webkit-background-size: auto 56px;
    background-size: auto 56px;
  }
}
.site-bus .menu-box-bus .menu-box-col.menu-box-highway a:after {
  background-position: 0 0;
}
.site-bus .menu-box-bus .menu-box-col.menu-box-airport a:after {
  background-position: -266px 0;
}
.site-bus .menu-box-bus .menu-box-col.menu-box-rental a:after {
  background-position: -510px 0;
}
.site-bus .menu-box-bus .menu-box-col.menu-box-tour a:after {
  background-position: -752px 0px;
}
.site-bus .fare-link-box {
  border: 1px solid #e2e2e2;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
}
.site-bus .fare-link-box .menu-box-col a:after {
  width: 140px;
  height: 60px;
  top: 38%;
  margin-left: -70px;
  background-image: url("../images/bus/menu-icon-fare.png");
}
@media screen and (max-width: 640px) {
  .site-bus .fare-link-box .menu-box-col a:after {
    background-image: url("../images/bus/menu-icon-fare@2x.png");
    -moz-background-size: auto 56px;
    -o-background-size: auto 56px;
    -webkit-background-size: auto 56px;
    background-size: auto 56px;
  }
}
.site-bus .fare-link-box .menu-box-col.menu-box-coupon a:after {
  background-position: 46px 0;
}
@media screen and (max-width: 640px) {
  .site-bus .fare-link-box .menu-box-col.menu-box-coupon a:after {
    background-position: 41px 0;
  }
}
.site-bus .fare-link-box .menu-box-col.menu-box-commute a:after {
  background-position: -195px 0;
}
@media screen and (max-width: 640px) {
  .site-bus .fare-link-box .menu-box-col.menu-box-commute a:after {
    background-position: -251px 0;
  }
}
.site-bus .basic-table th {
  background-color: #f57f31;
}
.site-bus .btn-commute {
  margin-top: 20px;
}
.site-bus .btn-commute a.btn {
  padding: 20px 160px;
  font-size: 18px;
  font-weight: bold;
}
.site-bus .btn-commute a.btn span {
  padding-right: 30px;
  background: url("../images/base/icon-download.png") no-repeat 100% 50%;
}
.site-bus .banner-box .links p a {
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 -210px;
  background-position: 0 -209px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-bus .banner-box .links p a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.site-bus .illust-map-inner {
  background-image: url("../images/bus/illust-map-bg.gif");
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-bus .illust-map-inner {
    background-image: url("../images/bus/illust-map-bg@2x.gif");
    -moz-background-size: 1000px auto;
    -o-background-size: 1000px auto;
    -webkit-background-size: 1000px auto;
    background-size: 1000px auto;
  }
}
.site-bus .right-link-box-title {
  background-color: #f57f31;
}
.site-bus .right-link-list li a {
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 -210px;
  background-position: 0 -208px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-bus .right-link-list li a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.site-bus .contact-box-number {
  color: #f57f31;
}
.site-bus .side-link-list li a {
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 -210px;
  background-position: 0 -208px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-bus .side-link-list li a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.site-bus .side-link-list li a.icon-blank {
  padding-right: 20px;
  background: url("../images/base/icon-blank.png") no-repeat;
  background-position: 0px -298px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-bus .side-link-list li a.icon-blank {
    background-image: url("../images/base/icon-blank@2x.png");
    -moz-background-size: 13px auto;
    -o-background-size: 13px auto;
    -webkit-background-size: 13px auto;
    background-size: 13px auto;
  }
}
.site-bus .numset .icon {
  color: #f57f31;
}
.site-bus .contact-box-title {
  color: #f57f31;
}
.site-bus .icon-link-back {
  background: url("../images/base/icon-link-back.png") no-repeat;
  background-position: 0 -459px;
  background-position: 0 -456px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-bus .icon-link-back {
    background-image: url("../images/base/icon-link-back@2x.png");
    -moz-background-size: auto 690px;
    -o-background-size: auto 690px;
    -webkit-background-size: auto 690px;
    background-size: auto 690px;
  }
}
.site-bus .back-btn a {
  background: url("../images/base/icon-link-back.png") no-repeat;
  background-position: 0 -459px;
  background-position: 0 -456px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-bus .back-btn a {
    background-image: url("../images/base/icon-link-back@2x.png");
    -moz-background-size: auto 690px;
    -o-background-size: auto 690px;
    -webkit-background-size: auto 690px;
    background-size: auto 690px;
  }
}
.site-bus #TimeTable .highway-timetable-td {
  padding: 10px 20px;
}
.site-bus #TimeTable .highway-timetable-td .noriba {
  margin-left: 10px;
}
.site-bus .more-btn a {
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 -210px;
  background-position: 0 -208px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-bus .more-btn a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}

.busnav-navigation {
  padding: 15px 0;
  border-top: 2px solid #863e0e;
  color: #fff;
  background-color: #974b18;
}
.busnav-navigation:after {
  content: "";
  display: block;
  clear: both;
}
@media screen and (max-width: 640px) {
  .busnav-navigation {
    padding: 0;
  }
  .busnav-navigation .wrap {
    margin-left: 0;
    margin-right: 0;
  }
}

.busnav-navigation-title {
  width: 20%;
  font-size: 12px;
  font-weight: bold;
  float: left;
  line-height: 1.0;
}
@media screen and (max-width: 1140px) {
  .busnav-navigation-title {
    width: 30%;
  }
}
@media screen and (max-width: 640px) {
  .busnav-navigation-title {
    display: none;
  }
}

.busnav-navigation-menu {
  width: 80%;
  float: right;
  text-align: right;
  font-size: 0;
}
.busnav-navigation-menu li {
  display: inline-block;
  margin-left: 30px;
  line-height: 1.0;
}
.busnav-navigation-menu li a {
  display: block;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  padding-left: 12px;
  text-decoration: none;
  position: relative;
}
.busnav-navigation-menu li a:hover {
  text-decoration: underline;
}
.busnav-navigation-menu li a:before {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  position: absolute;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  top: 50%;
  right: "";
  bottom: "";
  left: 0;
  margin-top: -5px;
  background-position: -1px 0;
}
@media screen and (max-width: 640px) {
  .busnav-navigation-menu li a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}
.busnav-navigation-menu li.sp {
  display: none;
}
@media screen and (max-width: 640px) {
  .busnav-navigation-menu li.sp {
    display: inline-block;
  }
}
@media screen and (max-width: 640px) {
  .busnav-navigation-menu li.pc {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .busnav-navigation-menu {
    width: 70%;
  }
}
@media screen and (max-width: 640px) {
  .busnav-navigation-menu {
    width: auto;
    float: none;
    display: block;
  }
  .busnav-navigation-menu li {
    width: 25%;
    margin-left: 0;
    text-align: center;
    border-right: 1px solid #863e0e;
    float: left;
  }
  .busnav-navigation-menu li:last-child {
    border-right: none;
  }
  .busnav-navigation-menu li a {
    display: block;
    padding-top: 10px;
    padding-bottom: 10px;
    text-decoration: none;
    font-size: 10px;
    padding-left: 0;
  }
  .busnav-navigation-menu li a:before {
    display: none;
  }
}

.rental-mainvisual {
  position: relative;
}

.rental-mainvisual-text {
  position: absolute;
  width: 380px;
  bottom: 80px;
  right: 20px;
  z-index: 1;
  text-align: right;
}
.rental-mainvisual-text p {
  position: absolute;
  top: 0;
  left: 0;
  font-size: 24px;
  color: #fff;
  display: none;
  font-weight: bold;
}
.rental-mainvisual-text p.text-01 {
  display: block;
}
@media screen and (max-width: 640px) {
  .rental-mainvisual-text {
    width: 100%;
    bottom: 80px;
    right: 0;
    text-align: center;
  }
  .rental-mainvisual-text p {
    width: 100%;
    font-size: 18px;
  }
}

.rental-mainvisual-image {
  position: relative;
  z-index: 0;
}

.rental-text {
  text-align: center;
  line-height: 2.4;
  letter-spacing: 2px;
  font-weight: bold;
  font-size: 16px;
}
@media screen and (max-width: 640px) {
  .rental-text {
    text-align: left;
    font-weight: normal;
    line-height: 2;
    font-size: 14px;
  }
}

.rental-footer:after {
  content: "";
  display: block;
  clear: both;
}
.rental-footer .contact-box-inner {
  display: block;
}

.rental-certification {
  padding: 30px;
  background-color: #fff;
  border: 1px solid #e2e2e2;
}

.rental-certification-text {
  padding-left: 100px;
  padding-top: 30px;
  padding-bottom: 30px;
  background: url("../images/bus/rental/logo.png") no-repeat 0 50%;
}

.rental-bus-detail:after {
  content: "";
  display: block;
  clear: both;
}

.rental-bus-detail-image {
  width: 48.93617%;
  float: left;
}
.rental-bus-detail-image p {
  margin-bottom: 20px;
}
@media screen and (max-width: 640px) {
  .rental-bus-detail-image {
    width: auto;
    float: none;
  }
}

.rental-bus-detail-description {
  width: 48.93617%;
  float: right;
}
@media screen and (max-width: 640px) {
  .rental-bus-detail-description {
    width: auto;
    float: none;
  }
}

.rental-bus-detail-seat img {
  width: 100%;
  height: auto;
}

.rental-bus-detail-info {
  margin-top: 30px;
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}
@media screen and (max-width: 640px) {
  .rental-bus-detail-info {
    width: 460px;
  }
}

.rental-bus-detail-info-row {
  display: table-row;
}

.rental-bus-detail-info-th,
.rental-bus-detail-info-td {
  display: table-cell;
  padding: 6px 10px;
  border: 1px solid #e2e2e2;
  text-align: center;
}

.rental-bus-detail-info-th {
  width: 100px;
  padding: 10px;
  vertical-align: middle;
  background-color: #f7f7f7;
}

.rental-bus-detail-info-td.rental-bus-detail-icon {
  text-align: left;
}

.rental-bus-detail-info-number {
  width: 3em;
}

.rental-bus-detail-info-capacity {
  width: 3em;
}

.rental-bus-detail-info-subcapacity {
  width: 3em;
}

.rental-bus-detail-info-category {
  width: 2em;
}

.rental-bus-detail-icon {
  font-size: 0;
}
.rental-bus-detail-icon span {
  display: inline-block;
  margin: 3px 0;
  background-color: #d86c24;
  color: #fff;
  line-height: 1.0;
  letter-spacing: 0;
  padding: 5px 7px;
  margin-right: 5px;
  font-size: 12px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
}

.rental-bus-detail-info-row-facility {
  font-size: 12px;
}
.rental-bus-detail-info-row-facility th {
  padding: 5px;
  line-height: 1.2;
}

.page-airport .content-row {
  position: relative;
}
.page-airport .airport-tt-row {
  margin-bottom: 30px;
}
.page-airport .airport-tt-cap {
  position: absolute;
  top: 10px;
  right: 0;
  font-size: 12px;
}
.page-airport .airport-tt-cap span {
  padding: 5px;
  line-height: 1.0;
  border: 1px solid #e2e2e2;
}
.page-airport .airport-tt-cap span.white {
  background-color: #fff;
  margin-right: 10px;
}
.page-airport .airport-tt-cap span.green {
  background-color: #e7f3dc;
}
.page-airport .airport-tt-title {
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: bold;
  padding-left: 15px;
  line-height: 1.0;
  border-left: 5px solid #f57f31;
}
.page-airport .airport-tt-text {
  margin-bottom: 10px;
}
.page-airport .airport-tt-caption {
  font-size: 12px;
}
.page-airport .airport-table {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
  margin-top: 15px;
}
.page-airport .airport-table th,
.page-airport .airport-table td {
  padding: 10px;
  border: 1px solid #e2e2e2;
}
.page-airport .airport-table th {
  text-align: center;
  background-color: #f7f7f7;
}
.page-airport .airport-table th.busstop {
  width: 30%;
}
.page-airport .airport-table td {
  padding: 10px 15px;
}
.page-airport .airport-table td.time {
  text-align: center;
  background-color: #f7f7f7;
}
.page-airport .airport-table td > div {
  display: inline-block;
  vertical-align: top;
  margin: 0 8px;
  text-align: center;
}
.page-airport .airport-table td > div i {
  font-size: 16px;
}
.page-airport .airport-table td > div span {
  font-size: 12px;
}
.page-airport .airport-table td > div.enoden {
  color: #129843;
}
.page-airport .airport-table td > div.keikyu {
  color: #d62a56;
}
.page-airport .airport-table td > div.kamakura {
  border-radius: 50%;
  height: 27px;
  width: 27px;
  line-height: 29px;
  border: solid 2px #2a95c6;
}
.page-airport .airport-table-caption {
  margin-top: 30px;
  margin-bottom: 15px;
  font-size: 12px;
}
.page-airport .airport-table-caption span {
  margin-right: 1em;
}
.page-airport .airport-table-caption span.enoden {
  color: #129843;
}
.page-airport .airport-table-caption span.keikyu {
  color: #d62a56;
}
.page-airport .airport-table-caption span.kamakura {
  color: #2a95c6;
}
.page-airport .airport-fare {
  background-color: #fff;
  border: 1px solid #e2e2e2;
}
.page-airport .airport-fare-top {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}
.page-airport .airport-fare-col {
  width: 50%;
  display: table-cell;
  padding: 30px 20px;
  text-align: center;
  font-size: 18px;
}
.page-airport .airport-fare-col p {
  display: inline-block;
  vertical-align: middle;
  text-align: left;
}
.page-airport .airport-fare-col .dep {
  margin-right: 30px;
  font-weight: bold;
}
.page-airport .airport-fare-col .price {
  font-size: 24px;
}
.page-airport .airport-fare-col .price i {
  margin-right: 10px;
  padding: 5px 10px;
  font-size: 12px;
  color: #fff;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
}
.page-airport .airport-fare-col .price.adult {
  margin-right: 15px;
}
.page-airport .airport-fare-col .price.adult i {
  background-color: #f57f31;
}
.page-airport .airport-fare-col .price.child i {
  background-color: #fdbf97;
}
.page-airport .airport-fare-bottom {
  padding: 20px 30px;
  text-align: center;
  border-top: 1px solid #e2e2e2;
}
.page-airport .airport-fare-bottom strong {
  font-size: 18px;
}
.page-airport .airport-reservation {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}
.page-airport .airport-reservation-col {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  background-color: #fff;
  border: 1px solid #e2e2e2;
  padding: 30px;
}
.page-airport .airport-reservation-title {
  margin-bottom: 5px;
  font-size: 18px;
  font-weight: bold;
  color: #f57f31;
}
.page-airport .airport-reservation-tel-num {
  margin-bottom: 10px;
  font-size: 32px;
}
.page-airport .airport-reservation-tel-num span {
  margin-right: 10px;
  color: #f57f31;
  font-size: 16px;
}
.page-airport .airport-ticket {
  margin-top: 20px;
}
.page-airport .airport-ticket a {
  color: #f57f31;
}
.page-airport .airport-ticket-title {
  margin-bottom: 10px;
  font-size: 18px;
  font-weight: bold;
}
.page-airport .airport-reservation-cap {
  font-size: 12px;
}
.page-airport .airport-ticket-text {
  margin-bottom: 20px;
}
.page-airport .airport-contact {
  padding: 20px 30px;
  line-height: 2.0;
}
.page-airport .airport-contact .tel {
  font-weight: bold;
}
.page-airport .airport-guide-row {
  margin-bottom: 20px;
}
.page-airport .airport-guide-title {
  font-size: 18px;
  margin-bottom: 5px;
  font-weight: bold;
}

.page-guide .bus-guide-title {
  font-size: 18px;
  margin-bottom: 5px;
  font-weight: bold;
}
.page-guide .bus-guide-box {
  margin: 20px 0 40px;
  padding: 30px;
  border: 1px solid #e2e2e2;
}
.page-guide .bus-guide-box:last-child {
  margin-bottom: 0;
}
.page-guide .bus-guide-list dt {
  margin-bottom: 10px;
  font-weight: bold;
}
.page-guide .bus-guide-list dt span {
  padding-right: 10px;
}
.page-guide .bus-guide-list dd {
  margin-bottom: 35px;
}
.page-guide .bus-guide-list dd .bus-guide-list-img {
  margin-top: 25px;
  margin-left: 5%;
  text-align: center;
  overflow: hidden;
}
@media screen and (max-width: 640px) {
  .page-guide .bus-guide-list dd .bus-guide-list-img {
    margin-left: 0;
  }
}
.page-guide .bus-guide-list dd .bus-guide-list-img .bus-guide-list-img-left {
  float: left;
  width: 48%;
}
@media screen and (max-width: 640px) {
  .page-guide .bus-guide-list dd .bus-guide-list-img .bus-guide-list-img-left {
    float: none;
    width: 100%;
    margin: 0 auto 20px;
  }
}
.page-guide .bus-guide-list dd .bus-guide-list-img .bus-guide-list-img-right {
  float: left;
  width: 48%;
  margin-left: 4%;
}
@media screen and (max-width: 640px) {
  .page-guide .bus-guide-list dd .bus-guide-list-img .bus-guide-list-img-right {
    float: none;
    width: 100%;
    margin: 0 auto;
  }
}
.page-guide .bus-guide-list dd .bus-guide-list-img2 {
  margin-top: 25px;
  margin-left: 10%;
  text-align: center;
  overflow: hidden;
}
@media screen and (max-width: 640px) {
  .page-guide .bus-guide-list dd .bus-guide-list-img2 {
    margin-left: 0;
  }
}
.page-guide .bus-guide-list dd .bus-guide-list-img2 .bus-guide-list-img-left {
  float: left;
  width: 48%;
}
@media screen and (max-width: 640px) {
  .page-guide .bus-guide-list dd .bus-guide-list-img2 .bus-guide-list-img-left {
    float: none;
    width: 100%;
    margin: 0 auto;
  }
}
.page-guide .bus-guide-list dd .bus-guide-list-img2 .bus-guide-list-img-right {
  float: left;
  width: 48%;
}
@media screen and (max-width: 640px) {
  .page-guide .bus-guide-list dd .bus-guide-list-img2 .bus-guide-list-img-right {
    float: none;
    width: 100%;
    margin: 0 auto;
  }
}
.page-guide .bus-guide-row {
  margin-bottom: 20px;
}
.page-guide .bus-guide-row:last-child {
  margin-bottom: 0;
}
.page-guide .bus-guide-row .sub {
  margin-left: 1em;
}
.page-guide .bus-guide-row strong {
  color: #ee2f60;
  font-weight: bold;
}
.page-guide .bus-guide-row .list-link a {
  color: #33322f;
}

.bus-safety-title {
  margin-bottom: 20px;
  font-weight: bold;
  font-size: 18px;
}
.bus-safety-title a {
  color: #f57f31;
  padding-left: 20px;
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 -210px;
  background-position: 0 -205px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .bus-safety-title a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}

.bus-safety-contents-title {
  font-weight: bold;
  margin-bottom: 10px;
}

.bus-safety-contents-list {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
  width: auto;
}

.bus-safety-contents-list-row {
  display: table-row;
}

.bus-safety-contents-list-title,
.bus-safety-contents-list-line,
.bus-safety-contents-list-page {
  display: table-cell;
  vertical-align: middle;
}

.bus-safety-contents-list-title {
  padding-right: 20px;
}

.bus-safety-contents-list-line {
  width: 120px;
  background: url("../images/bus/safety/line.gif") repeat-x left center;
}

.bus-safety-contents-list-page {
  padding-left: 20px;
}

.bus-safety-link {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #e2e2e2;
}
.bus-safety-link a {
  display: block;
  color: #f57f31;
  padding-left: 18px;
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 -210px;
  background-position: 0 -205px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .bus-safety-link a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}

.bus-safety-effort-row {
  margin-top: 30px;
}
.bus-safety-effort-row:after {
  content: "";
  display: block;
  clear: both;
}

.bus-safety-effort-text {
  width: 62.76596%;
  float: left;
}

.bus-safety-effort-title {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 10px;
}

.bus-safety-effort-image {
  width: 29.78723%;
  float: right;
}

@media screen and (max-width: 640px) {
  .bustop-menu {
    width: 100%;
    overflow: hidden;
  }
}

.bustop-menu-regular {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
  background-color: #fff;
  border: 1px solid #e2e2e2;
}
@media screen and (max-width: 1140px) {
  .bustop-menu-regular {
    border: none;
  }
}

.bustop-menu-regular-title,
.bustop-menu-regular-nav {
  display: table-cell;
  vertical-align: middle;
  border: 1px solid #e2e2e2;
}
@media screen and (max-width: 640px) {
  .bustop-menu-regular-title,
  .bustop-menu-regular-nav {
    display: block;
  }
}

.bustop-menu-regular-title {
  width: 24%;
  text-align: center;
}
@media screen and (max-width: 640px) {
  .bustop-menu-regular-title {
    width: auto;
    border-bottom: none;
  }
}

.bustop-menu-regular-nav {
  width: 76%;
  padding: 20px 30px 20px;
}
@media screen and (max-width: 640px) {
  .bustop-menu-regular-nav {
    width: auto;
    padding: 20px 30px 120px;
  }
}

.bustop-menu-others {
  margin-top: 30px;
}

.bustop-menu-others {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
  background-color: #fff;
  border: 1px solid #e2e2e2;
}

.bustop-menu-others-col {
  display: table-cell;
  vertical-align: middle;
  text-align: center;
  padding: 30px;
  position: relative;
}
.bustop-menu-others-col a {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  text-decoration: none;
  height: 0;
  padding-top: 100%;
}

.bustop-menu-regular-nav-top-col {
  display: inline-block;
  vertical-align: middle;
}
.bustop-menu-regular-nav-top-col a, .bustop-menu-regular-nav-top-col span {
  font-weight: bold;
  font-size: 16px;
  padding-left: 60px;
}
.bustop-menu-regular-nav-top-col span {
  padding-right: 20px;
  padding-left: 0;
  font-size: 12px;
}

.bustop-menu-regular-nav-top-first {
  width: 100%;
  margin-right: 20px;
}
.bustop-menu-regular-nav-top-first a {
  display: block;
}
@media screen and (max-width: 1140px) {
  .bustop-menu-regular-nav-top-first {
    display: block;
    width: auto;
    margin-right: 0;
  }
}

.bustop-menu-regular-nav-btn,
.bustop-menu-regular-nav-link {
  display: inline-block;
  vertical-align: middle;
}
@media screen and (max-width: 1140px) {
  .bustop-menu-regular-nav-btn,
  .bustop-menu-regular-nav-link {
    /*display: block;*/
    width: 100%;
    margin-bottom: 20px;
  }
}

.bustop-menu-regular-nav-btn {
  margin-right: 5%;
  width: 38%;
}
.bustop-menu-regular-nav-btn a {
  display: block;
  padding-top: 16px;
  padding-bottom: 16px;
  position: relative;
}
.bustop-menu-regular-nav-btn a:before {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  position: absolute;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  top: 50%;
  right: 20px;
  bottom: auto;
  left: auto;
  margin-top: -5px;
  background-position: -1px 0;
}
@media screen and (max-width: 640px) {
  .bustop-menu-regular-nav-btn a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}
.bustop-menu-regular-nav-btn a span.bustop-menu-regular-nav-btn-ser {
  font-size: 16px;
  padding-top: 0px;
  padding-bottom: 0px;
  display: block;
}
@media screen and (max-width: 1140px) {
  .bustop-menu-regular-nav-btn a span.bustop-menu-regular-nav-btn-ser {
    display: inline;
  }
}
.bustop-menu-regular-nav-btn a:after {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  position: absolute;
  top: 50%;
  left: 16px;
  margin-top: -12px;
}
@media screen and (max-width: 1140px) {
  .bustop-menu-regular-nav-btn {
    width: 100%;
    margin-right: 0;
  }
}
.bustop-menu-regular-nav-btn p.bustop-menu-regular-nav-btn-att {
  margin-top: 10px;
  margin-bottom: 10px;
}
.bustop-menu-regular-nav-btn p.bustop-menu-regular-nav-btn-att a {
  padding-top: 0;
  text-align: center;
  padding-bottom: 0;
  padding-left: 8px;
  height: 14px;
}
@media screen and (max-width: 1140px) {
  .bustop-menu-regular-nav-btn p.bustop-menu-regular-nav-btn-att a {
    width: 300px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 640px) {
  .bustop-menu-regular-nav-btn p.bustop-menu-regular-nav-btn-att a {
    max-width: 240px;
    width: auto;
    padding-left: 10px;
  }
}
.bustop-menu-regular-nav-btn p.bustop-menu-regular-nav-btn-att a:before {
  background-image: none;
}
.bustop-menu-regular-nav-btn p.bustop-menu-regular-nav-btn-att a:after {
  background-image: url("../images/base/icon-att-s.png");
  background-position: 0 0px;
  -moz-background-size: 14px auto;
  -o-background-size: 14px auto;
  -webkit-background-size: 14px auto;
  background-size: 14px auto;
  width: 14px;
  height: 14px;
  margin-top: -2px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .bustop-menu-regular-nav-btn p.bustop-menu-regular-nav-btn-att a:after {
    background-image: url("../images/base/icon-att-s@2x.png");
    -moz-background-size: 14px auto;
    -o-background-size: 14px auto;
    -webkit-background-size: 14px auto;
    background-size: 14px auto;
    background-position: 0 0px;
  }
}
@media screen and (max-width: 640px) {
  .bustop-menu-regular-nav-btn p.bustop-menu-regular-nav-btn-att a:after {
    margin-left: -24px;
  }
}
@media screen and (max-width: 1140px) {
  .bustop-menu-regular-nav-btn p.bustop-menu-regular-nav-btn-att a {
    display: none;
  }
}
.bustop-menu-regular-nav-btn p.ome-menu-regular-nav-att-sp a {
  display: none;
}
@media screen and (max-width: 1140px) {
  .bustop-menu-regular-nav-btn p.ome-menu-regular-nav-att-sp a {
    display: block;
  }
}

.busnav-btn a {
  border: solid 1px #f57f31;
  background: #ffefe5;
  color: #f57f31;
  padding: 0;
  font-weight: bold;
  position: relative;
  line-height: 20px;
}
.busnav-btn a span {
  padding-bottom: 0;
  font-size: 12px;
  font-weight: normal;
  text-shadow: none;
  display: block;
  padding-top: 10px;
  padding-right: 0px;
}
@media screen and (max-width: 1140px) {
  .busnav-btn a span {
    display: inline;
  }
}
@media screen and (max-width: 640px) {
  .busnav-btn a span {
    padding-top: 0px;
    display: block;
  }
}
.busnav-btn a:before {
  content: "";
  position: absolute;
  left: 8px;
  width: 33px;
  height: 32px;
  background: url("../images/bus/icon-busnav.png") no-repeat 0 0;
  bottom: 0;
  margin-top: -15px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .busnav-btn a:before {
    background: url("../images/bus/icon-busnav@2x.png") no-repeat 0 0;
    background-size: 33px;
  }
}
@media screen and (max-width: 1140px) {
  .busnav-btn a:before {
    margin-top: -25px;
  }
}
@media screen and (max-width: 640px) {
  .busnav-btn a:before {
    left: 2%;
  }
}
@media screen and (max-width: 1140px) {
  .busnav-btn a {
    padding-top: 10px;
  }
}
@media screen and (max-width: 768px) {
  .busnav-btn a {
    padding-top: 10px;
  }
}
.busnav-btn a:hover {
  background: #ffcaa9;
}
.busnav-btn a .busnav-comment {
  background: #f57f31;
  color: #fff;
  width: 100%;
  font-size: 12px;
  margin: 10px 0 0 0;
  text-shadow: none;
  padding: 3px 0;
}
@media screen and (max-width: 768px) {
  .busnav-btn a .busnav-comment {
    margin-top: 10px;
  }
}
@media screen and (max-width: 1140px) {
  .busnav-btn a {
    width: 100%;
  }
}

.btn-orange_sys_right {
  margin-bottom: 34px;
}
@media screen and (max-width: 1140px) {
  .btn-orange_sys_right {
    margin-bottom: 0px;
  }
}
.btn-orange_sys_right a:after {
  content: "";
  display: block;
  width: 40px;
  height: 30px;
  position: absolute;
  top: 50%;
  left: 10px;
  background: url("../images/base/icon-root.png") no-repeat 0 0;
  margin-top: -12px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .btn-orange_sys_right a:after {
    background-image: url("../images/base/icon-root@2x.png");
    -moz-background-size: 40px auto;
    -o-background-size: 40px auto;
    -webkit-background-size: 40px auto;
    background-size: 40px auto;
  }
}

.bustop-menu-regular-nav-link-rosen {
  width: 13%;
  float: right;
  line-height: 1.5;
}
@media screen and (max-width: 1140px) {
  .bustop-menu-regular-nav-link-rosen {
    text-align: center;
    margin-bottom: 0;
  }
}
.bustop-menu-regular-nav-link-rosen a {
  display: inline-block;
  vertical-align: top;
  margin-right: 0px;
  padding-left: 0px;
  padding-bottom: 2px;
  padding-top: 0px;
  text-decoration: none;
  font-size: 12px;
  text-align: center;
}
.bustop-menu-regular-nav-link-rosen a:hover {
  text-decoration: underline;
}
.bustop-menu-regular-nav-link-rosen a:before {
  content: "";
  background: url("../images/bus/menu-icon.png") no-repeat 0 0;
  background-position: -393px 4px;
  display: block;
  width: 80px;
  height: 70px;
  margin: 0 auto 5px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .bustop-menu-regular-nav-link-rosen a:before {
    background: url("../images/bus/menu-icon@2x.png") no-repeat 0 0;
    background-position: -393px 4px;
    background-size: 846px;
  }
}
@media screen and (max-width: 1140px) {
  .bustop-menu-regular-nav-link-rosen {
    margin-top: 20px;
    width: 100%;
  }
}

.bus-stop-list a {
  position: relative;
}
.bus-stop-list a:before {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  position: absolute;
  background: url("../images/base/icon-blank.png") no-repeat;
  top: auto;
  right: 10px;
  bottom: 10px;
  left: auto;
  background-position: 0px -298px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .bus-stop-list a:before {
    background-image: url("../images/base/icon-blank@2x.png");
    -moz-background-size: 13px auto;
    -o-background-size: 13px auto;
    -webkit-background-size: 13px auto;
    background-size: 13px auto;
  }
}
@media screen and (max-width: 1140px) {
  .bus-stop-list.link-box-col a {
    padding-top: 30px;
    padding-bottom: 30px;
  }
}

.menu-box-fare-col a:after {
  background-image: url("../images/bus/menu-icon-fare.png");
}
@media screen and (max-width: 640px) {
  .menu-box-fare-col a:after {
    background-image: url("../images/bus/menu-icon@2x.png");
    -moz-background-size: auto 56px;
    -o-background-size: auto 56px;
    -webkit-background-size: auto 56px;
    background-size: auto 56px;
  }
}
.menu-box-fare-col.menu-box-fare-coupon a:after {
  background-position: 4px 0;
}
@media screen and (max-width: 640px) {
  .menu-box-fare-col.menu-box-fare-coupon a:after {
    background-position: 2px 0;
  }
}
.menu-box-fare-col.menu-box-schedule a:after {
  background-position: -192px 0;
}
@media screen and (max-width: 640px) {
  .menu-box-fare-col.menu-box-schedule {
    border-right: none;
  }
  .menu-box-fare-col.menu-box-schedule a:after {
    background-position: -195px 0;
  }
}

@media screen and (max-width: 640px) {
  .not-search-link .pc {
    display: none;
  }
}
.not-search-link .sp {
  display: none;
}
@media screen and (max-width: 640px) {
  .not-search-link .sp {
    display: inline-block;
  }
}

.plan-area {
  margin-bottom: 20px;
}
.plan-area a.kakudai {
  display: none;
}
@media screen and (max-width: 640px) {
  .plan-area a.kakudai {
    display: block;
    position: absolute;
    width: 80px;
    height: 80px;
    right: 0px;
    bottom: 0px;
    background: url(/common/images/base/icon-zoom.png) no-repeat 50% 50%;
    background-size: 50%;
  }
  .plan-area a.kakudai span {
    display: none;
  }
}
.plan-area a.relative {
  position: relative;
  float: right;
  margin-top: -76px;
}

#page-tilte {
  line-height: 1.8;
}
#page-tilte span {
  margin-left: 0;
}
@media screen and (max-width: 640px) {
  #page-tilte {
    margin-right: 0;
  }
  #page-tilte span {
    font-size: 14px;
  }
  #page-tilte br {
    display: none;
  }
}

.page-title#result-busstop-page-title span,
.page-title#page-busstop-page-title span,
.page-title#page-timeschedule-page-title span,
.page-title#page-busroute-page-title span {
  display: inline;
  font-size: 14px;
}

#result-busstop-page-title-year
#page-timeschedule-page-title-year,
#page-busroute-page-title-year {
  margin-left: 1em;
}

.search-by-map-move {
  margin-top: 30px;
  text-align: center;
}
.search-by-map-move .title {
  display: block;
  margin-bottom: 15px;
  margin-right: 20px;
}
.search-by-map-move a {
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}

.result-no-route {
  margin-bottom: 30px;
  text-align: center;
}
@media screen and (max-width: 640px) {
  .result-no-route.content-box {
    padding: 15px 0;
  }
  .result-no-route.content-box p {
    margin: 0 15px;
  }
}

#suggest-arrival-map {
  margin: 30px auto;
}
@media screen and (max-width: 640px) {
  #suggest-arrival-map {
    margin-top: 15px;
    margin-bottom: 15px;
    margin-left: 20px;
    margin-right: 20px;
  }
}

#suggest-arrival-list {
  appearance: none;
  -webkit-appearance: none;
  margin-right: 20px;
  padding: 10px 20px;
  text-align: center;
  font-size: 14px;
  cursor: pointer;
  border-color: #e2e2e2;
  background-color: #fff;
  margin-bottom: 20px;
}

.result-route-box {
  text-align: center;
}

button.btn-orange {
  border: none;
  font-size: 14px;
  cursor: pointer;
}

.result-route-time-text-fromto-icon {
  margin-left: 20px;
}
.result-route-time-text-fromto-icon .highway {
  background-color: #ee2f60;
}

#page-timeschedule-time-schedule-list-header-title2 {
  background-color: #2fa6dd;
}

.page-timeschedule-time-schedule-list-item-minute-item-num-label1_18_2 {
  font-size: 14px;
}

.content-search-by-map {
  padding: 0;
}

#page-busroute-line-list-item-time-btn1 {
  width: 30%;
  text-align: center;
}

.page-busroute-content-caption {
  margin-top: 15px;
  margin-bottom: 15px;
  font-size: 12px;
}

.line-route-busstop {
  padding-left: 20px;
}

#page-busroute-line-list-item-distance1 {
  width: 17%;
}

#page-busroute-map-msg-none,
#page-busroute-map-msg-none-some {
  margin-top: 20px;
}

#result-route-msg,
#suggest-arrival {
  text-align: center;
}

.bus-search-guide {
  font-size: 12px;
}

.bus-search-guide-title {
  font-weight: bold;
  font-size: 14px;
}

@media screen and (max-width: 1140px) {
  .mod-route-lookfor-overlay-category {
    width: auto;
    margin-left: 0;
  }
}
.site-tourism .pankuzu a {
  color: #164c6e;
}
.site-tourism .global-header-navigation-menu ul li {
  border-right: 1px solid #164c6e;
}
.site-tourism .global-header-navigation-menu ul li a:hover {
  background-color: #164c6e;
}
.site-tourism .global-header-navigation-menu ul li a:before {
  background-image: url("../images/tourism/global-navigation.png");
}
.site-tourism .global-header-navigation-menu ul li.station {
  border-left: 1px solid #164c6e;
}
.site-tourism .global-header-navigation-menu ul li.station a {
  background-position: 27px 50%;
}
.site-tourism .global-header-navigation-menu ul li.station a:before {
  background-position: 27px 50%;
}
.site-tourism .global-header-navigation-menu ul li.fare a {
  background-position: -73px 50%;
}
.site-tourism .global-header-navigation-menu ul li.fare a:before {
  background-position: -73px 50%;
}
.site-tourism .global-header-navigation-menu ul li.time a {
  background-position: -171px 50%;
}
.site-tourism .global-header-navigation-menu ul li.time a:before {
  background-position: -171px 50%;
}
@media screen and (max-width: 1140px) {
  .site-tourism .global-header-navigation-menu {
    border-top: 1px solid #164c6e;
  }
}
@media screen and (max-width: 640px) {
  .site-tourism .global-header-navigation-menu {
    border-top: 1px solid #164c6e;
  }
  .site-tourism .global-header-navigation-menu ul {
    background-color: #1e5e86;
  }
  .site-tourism .global-header-navigation-menu ul li {
    border-right: none;
    border-bottom: 1px solid #164c6e;
  }
  .site-tourism .global-header-navigation-menu ul li a {
    background-image: none;
  }
  .site-tourism .global-header-navigation-menu ul li.station {
    border-left: none;
  }
}
.site-tourism .global-header-navigation {
  background-color: #1e5e86;
}
.site-tourism .global-header-navigation-logo {
  width: 194px;
}
.site-tourism .global-header-navigation-logo a {
  padding-top: 45.36082%;
  background-image: url("../images/tourism/logo.png");
}
@media screen and (max-width: 640px) {
  .site-tourism .global-header-navigation-logo {
    width: 192px;
  }
  .site-tourism .global-header-navigation-logo a {
    padding-top: 17%;
    background-image: url("../images/tourism/logo@2x.png");
    -moz-background-size: auto 15px;
    -o-background-size: auto 15px;
    -webkit-background-size: auto 15px;
    background-size: auto 15px;
  }
}
.site-tourism .sp-global-header-navigation-menu-btn {
  border-left: 1px solid #164c6e;
}
.site-tourism .pankuzu {
  background-color: #f1f6f9;
}
.site-tourism .sub-navigation {
  background-color: #1e5e86;
}
.site-tourism .sub-navigation li a:hover {
  background-color: #164c6e;
}
.site-tourism .page-title {
  border-top-color: #1e5e86;
}
.site-tourism .content-box-title {
  border-bottom-color: #1e5e86;
}
.site-tourism .content-box2 .content-box-title,
.site-tourism .information-box .content-box-title {
  background-color: #1e5e86;
}
.site-tourism .menu-box-title.content-box-title {
  background-color: #1e5e86;
}
.site-tourism .content-box-link a {
  background-position: 0 -98px;
}
.site-tourism .content-box-link a:hover {
  text-decoration: underline !important;
}
.site-tourism .content-box-stitle {
  background-position: 0 -232px;
}
.site-tourism .basic-table th {
  background-color: #1e5e86;
}
.site-tourism .information-tab ul li a:after {
  background-color: #1e5e86;
}
.site-tourism .tourism-link {
  font-size: 0;
}
.site-tourism .tourism-link .btn, .site-tourism .tourism-link span {
  width: 100%;
  font-size: 18px;
  padding-top: 30px;
  padding-bottom: 30px;
  padding-right: 0;
  padding-left: 0;
  line-height: 1.0;
  text-align: left;
}
.site-tourism .tourism-link a span {
  padding-left: 25px;
}
.site-tourism .tourism-link > div > span {
  color: #f9f9f9;
  text-align: center;
}
.site-tourism .tourism-link a {
  position: relative;
}
.site-tourism .tourism-link a:before {
  content: "";
  display: block;
  width: 16px;
  height: 16px;
  position: absolute;
  background: url("../images/base/icon-link-circle2.png") no-repeat;
  top: 50%;
  right: 20px;
  bottom: auto;
  left: auto;
  z-index: 10;
  margin-top: -8px;
  background-position: 0 -794px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-tourism .tourism-link a:before {
    background-image: url("../images/base/icon-link-circle2@2x.png");
    -moz-background-size: 15px auto;
    -o-background-size: 15px auto;
    -webkit-background-size: 15px auto;
    background-size: 15px auto;
  }
}
.site-tourism .tourism-link a.layout-item_kamakura {
  width: 100%;
  display: block;
  margin-top: 15px;
  text-align: center;
}
.site-tourism .tourism-link a.layout-item_kamakura:before {
  content: none;
}
@media screen and (max-width: 1140px) {
  .site-tourism .tourism-link .btn, .site-tourism .tourism-link span {
    text-align: center;
    font-size: 16px;
  }
  .site-tourism .tourism-link a span {
    padding-left: 10px;
  }
}
@media screen and (max-width: 640px) {
  .site-tourism .tourism-link.layout-triple .layout-item {
    display: block;
    width: auto;
    margin-left: 0;
  }
}
.site-tourism .site-tourism-ticket .content-box-link li {
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 -662px;
  line-height: 16px;
  padding-left: 15px;
  margin-top: 14px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-tourism .site-tourism-ticket .content-box-link li {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.site-tourism .site-tourism-ticket .content-box-link li:first-child {
  margin-top: 0;
}
.site-tourism .site-tourism-ticket .content-box-link li a {
  color: #33322f;
  text-decoration: none;
}
.site-tourism .site-tourism-ticket .layout-right .content-box-inner {
  padding: 20px;
}
.site-tourism .site-tourism-ticket .content-row-stitle-park {
  padding-left: 45px;
  background-repeat: no-repeat;
  font-weight: bold;
  margin-bottom: 10px;
}
.site-tourism .site-tourism-ticket .ticket-border-titile {
  border-bottom: solid 3px;
  width: 100%;
  float: left;
  margin-bottom: 30px;
}
.site-tourism .site-tourism-ticket .ticket-border-titile h4 {
  font-size: 18px;
  float: left;
  width: 210px;
  font-weight: bold;
}
.site-tourism .site-tourism-ticket .ticket-border-titile p {
  float: right;
  width: 203px;
  color: #33322f;
}
.site-tourism .site-tourism-ticket .ticket-border-titile p span.value {
  padding-left: 15px;
  font-size: 18px;
}
.site-tourism .site-tourism-ticket .ticket-guide-stitle {
  background-repeat: no-repeat;
  border-bottom: 1px dashed #e2e2e2;
  width: 100%;
  float: left;
  margin-top: 10px;
  padding-bottom: 8px;
}
.site-tourism .site-tourism-ticket .ticket-guide-stitle h5 {
  background-repeat: no-repeat;
  border-right: solid 1px #e2e2e2;
  width: 25%;
  float: left;
  text-align: center;
  font-weight: bold;
}
.site-tourism .site-tourism-ticket .ticket-guide-stitle h5.ticket-guide-park {
  color: #2a95c6;
}
.site-tourism .site-tourism-ticket .ticket-guide-stitle h5.ticket-guide-park:before {
  padding-right: 10px;
  content: url("../images/tourism/ticket/icon-car-s.png");
}
.site-tourism .site-tourism-ticket .ticket-guide-stitle h5.ticket-guide-train {
  color: #14a94b;
  letter-spacing: 0.5em;
}
.site-tourism .site-tourism-ticket .ticket-guide-stitle h5.ticket-guide-train:before {
  content: url("../images/tourism/ticket/icon-train-s.png");
  padding-right: 10px;
}
.site-tourism .site-tourism-ticket .ticket-guide-stitle h5.ticket-guide-buss {
  color: #f57f31;
  letter-spacing: 0.5em;
}
.site-tourism .site-tourism-ticket .ticket-guide-stitle h5.ticket-guide-buss:before {
  content: url("../images/tourism/ticket/icon-bus.png");
  padding-right: 10px;
}
.site-tourism .site-tourism-ticket .ticket-guide-stitle h5.ticket-guide-other {
  color: #ee2f60;
}
.site-tourism .site-tourism-ticket .ticket-guide-stitle h5.ticket-guide-other:before {
  content: url("../images/tourism/ticket/icon-other-s.png");
  padding-right: 10px;
}
.site-tourism .site-tourism-ticket .ticket-guide-stitle p {
  float: left;
  padding-left: 15px;
  width: 70%;
}
.site-tourism .site-tourism-ticket .ticket-guide-stitle-last {
  border: none;
}
.site-tourism .site-tourism-ticket .last {
  border-bottom: none;
}
.site-tourism .spot-table {
  margin-top: 20px;
}
.site-tourism .spot-table:after {
  content: "";
  display: block;
  clear: both;
}
.site-tourism .site-tourism .spot-table {
  float: left;
}
.site-tourism .pink-table {
  font-size: 12px;
}
.site-tourism .pink-table .spot-table-th {
  background-color: #1e5e86;
  color: #fff;
  font-weight: bold;
}
.site-tourism .park-enoshima .ticket-border-titile {
  border-color: #2a95c6;
  color: #2a95c6;
}
.site-tourism .park-enoshima .ticket-border-titile p span {
  color: #2a95c6;
}
.site-tourism .park-enoshima .content-row-stitle-park {
  background-image: url("../images/tourism/ticket/icon-car-l.png");
}
.site-tourism .park-shichiriga .ticket-border-titile {
  border-color: #129843;
  color: #129843;
}
.site-tourism .park-shichiriga .ticket-border-titile p span {
  color: #129843;
}
.site-tourism .park-shichiriga .content-row-stitle-park {
  background-image: url("../images/tourism/ticket/icon-car-g.png");
}
.site-tourism .park-inamura .ticket-border-titile {
  border-color: #f57f31;
  color: #f57f31;
}
.site-tourism .park-inamura .ticket-border-titile p span {
  color: #f57f31;
}
.site-tourism .park-inamura .content-row-stitle-park {
  background-image: url("../images/tourism/ticket/icon-car-o.png");
}
.site-tourism .park-yuigahama .ticket-border-titile {
  border-color: #a4c54c;
  color: #a4c54c;
}
.site-tourism .park-yuigahama .ticket-border-titile p span {
  color: #a4c54c;
}
.site-tourism .park-yuigahama .content-row-stitle-park {
  background-image: url("../images/tourism/ticket/icon-car-yg.png");
}
.site-tourism .noriori-eat .content-row-stitle-park {
  background-image: url("../images/tourism/ticket/icon-eat.png");
  padding-left: 30px;
}
.site-tourism .noriori-stay .content-row-stitle-park {
  background-image: url("../images/tourism/ticket/icon-stay.png");
  padding-left: 30px;
  line-height: 16px;
}
.site-tourism .noriori-play .content-row-stitle-park {
  background-image: url("../images/tourism/ticket/icon-play.png");
  padding-left: 30px;
  height: 28px;
  line-height: 28px;
}
.site-tourism .noriori-view .content-row-stitle-park {
  background-image: url("../images/tourism/ticket/icon-view.png");
  padding-left: 30px;
  line-height: 16px;
}
.site-tourism h4.ticket-box-inner-title {
  font-weight: bold;
  font-size: 16px;
}
.site-tourism .ticket-box-inner {
  float: none;
  width: 100%;
}
.site-tourism .ticket-box-inner .ticket-box-inner-herf {
  float: left;
  width: 50%;
  margin-top: 20px;
}
.site-tourism .ticket-box-inner .ticket-box-inner-herf figure {
  text-align: center;
}
.site-tourism .ticket-box-inner .ticket-box-inner-herf figure figcaption {
  margin-top: 10px;
  font-size: 12px;
}
.site-tourism .ticket-box-inner .ticket-box-inner-herf figure figcaption span {
  font-weight: bold;
}
.site-tourism .ticket-tegata-box:after {
  content: "";
  display: block;
  clear: both;
}
.site-tourism .ticket-tegata-box dt.tokuten {
  background-image: url("../images/tourism/ticket/ico-pass-tegata-tokuten.png");
  background-repeat: no-repeat;
  color: #fff;
  font-weight: bold;
  padding-left: 10px;
  margin-top: 10px;
}
.site-tourism .ticket-tegata-box dd {
  width: 100%;
}
.site-tourism .ticket_det_shop p {
  width: 100%;
  border-bottom: 1px dashed #e2e2e2;
  padding: 5px 0;
}
.site-tourism .ticket_det_shop p.last {
  border-bottom: none;
}
.site-tourism .ticket_det_shop p span {
  font-weight: bold;
  margin-right: 10px;
}
.site-tourism .ticket-box-bg {
  background: #f7f7f7;
  padding: 5%;
}
.site-tourism .ticket-box-bg:after {
  content: "";
  display: block;
  clear: both;
}
.site-tourism .ticket-box-bg h5 {
  margin-bottom: 10px;
  font-weight: bold;
}
.site-tourism .ticket-box-bg dl {
  overflow: hidden;
}
.site-tourism .ticket-box-bg dt {
  border-bottom: 1px dashed #e2e2e2;
  float: left;
  width: 50%;
}
@media screen and (max-width: 640px) {
  .site-tourism .ticket-box-bg dt {
    border-bottom: none;
    float: none;
    width: 100%;
    margin-bottom: 5px;
  }
}
.site-tourism .ticket-box-bg dd {
  float: left;
  width: 25%;
  text-align: right;
}
@media screen and (max-width: 640px) {
  .site-tourism .ticket-box-bg dd {
    width: 100%;
    padding-right: 10px;
    margin-bottom: 5px;
  }
}
.site-tourism .ticket-box-bg dd.ticket-existing-value1c {
  width: 50%;
}
@media screen and (max-width: 640px) {
  .site-tourism .ticket-box-bg dd.ticket-existing-value1c {
    width: 100%;
  }
}
.site-tourism .ticket-box-bg dd.ticket-existing-pink {
  color: #1e5e86;
  font-weight: bold;
}
.site-tourism .ticket-box-bg .ticket-existing-value dd {
  border-bottom: 1px dashed #e2e2e2;
}
.site-tourism .ticket-box-bg .ticket-last {
  overflow: hidden;
  border-top: 1px solid #777777;
}
.site-tourism .ticket-box-bg .ticket-last dt,
.site-tourism .ticket-box-bg .ticket-last dd {
  color: #1e5e86;
}
.site-tourism .ticket-box-bg .ticket-last dt {
  width: 50%;
}
@media screen and (max-width: 640px) {
  .site-tourism .ticket-box-bg .ticket-last dt {
    width: 100%;
  }
}
.site-tourism .ticket-box-bg .ticket-last dd {
  width: 25%;
  border-bottom: 1px dashed #e2e2e2;
}
@media screen and (max-width: 640px) {
  .site-tourism .ticket-box-bg .ticket-last dd {
    width: 100%;
  }
}
.site-tourism .ticket-box-bg .ticket-last-pass dt, .site-tourism .ticket-box-bg .ticket-last-pass dd {
  color: #1e5e86;
  font-weight: bold;
}
.site-tourism .ticket-box-bg .ticket-last-pass dt {
  width: 50%;
}
@media screen and (max-width: 640px) {
  .site-tourism .ticket-box-bg .ticket-last-pass dt {
    width: 100%;
  }
}
.site-tourism .ticket-box-bg .ticket-last-pass dd {
  width: 25%;
  border-bottom: 1px dashed #e2e2e2;
}
@media screen and (max-width: 640px) {
  .site-tourism .ticket-box-bg .ticket-last-pass dd {
    width: 100%;
  }
}
.site-tourism .ticket-box-bg .last dt {
  border-top: 1px solid #777777;
  color: #1e5e86;
}
.site-tourism .ticket-box-bg .last dd {
  border-top: 1px solid #777777;
  color: #1e5e86;
}
@media screen and (max-width: 640px) {
  .site-tourism .ticket-box-bg .last dd {
    border-top: none;
  }
}
.site-tourism .ticket-box-bg .last_pass dt, .site-tourism .ticket-box-bg .last_pass dd {
  border-bottom: none;
  color: #1e5e86;
  font-weight: bold;
}
.site-tourism .ticket-box-bg .orange_line {
  border-bottom: 1px dashed #e2e2e2;
}
.site-tourism .noriori_shop {
  padding: 30px;
}
.site-tourism .noriori_shop .noriori_shop_w30 {
  float: left;
  margin-right: 20px;
}
.site-tourism .noriori_shop .noriori_shop_w30 ul li {
  margin-left: 15px;
  list-style: disc;
}
.site-tourism .noriori_shop .noriori_shop_w30:last-child {
  padding-top: 35px;
}
.site-tourism .right-link-box-title {
  background-color: #1e5e86;
  color: #fff;
}
.site-tourism .right-link-list li a {
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 -442px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-tourism .right-link-list li a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}

.ticket-category {
  margin-top: 10px;
}

.ticket-category span {
  display: inline-block;
  vertical-align: top;
  margin-right: 5px;
  color: #fff;
  line-height: 1;
  padding: 5px;
  font-size: 12px;
  -moz-border-radius: 3px;
  -webkit-border-radius: 3px;
  border-radius: 3px;
}
@media screen and (max-width: 640px) {
  .ticket-category span {
    margin-bottom: 5px;
  }
}

.ticket-category span.train {
  background-color: #14a94b;
}

.ticket-category span.bus {
  background-color: #f57f31;
}

.ticket-category span.tourism {
  background-color: #1e5e86;
}

.tourism-bnr {
  margin-left: -20px;
  font-size: 0;
  letter-spacing: 0;
}
.tourism-bnr:after {
  content: "";
  display: block;
  clear: both;
}
.tourism-bnr .layout-item {
  width: 490px;
  margin-left: 20px;
  display: inline-block;
  vertical-align: top;
}
@media screen and (max-width: 1140px) {
  .tourism-bnr {
    margin-left: -3%;
  }
  .tourism-bnr .layout-item {
    width: 47%;
    margin-left: 3%;
  }
}
@media screen and (max-width: 640px) {
  .tourism-bnr {
    margin-left: 0;
  }
  .tourism-bnr .layout-item {
    width: auto;
    margin-left: 0;
    margin-top: 2%;
    display: block;
  }
}

.tourism-title-red {
  margin-bottom: 30px;
  padding-bottom: 10px;
  font-size: 18px;
  font-weight: bold;
  color: #e60012;
  border-bottom: 2px solid #e60012;
  text-align: center;
}

.site-estate .pankuzu a {
  color: #2a95c6;
}
.site-estate .global-header-navigation-menu ul li {
  border-right: 1px solid #2a95c6;
}
.site-estate .global-header-navigation-menu ul li a:hover {
  background-color: #2a95c6;
}
.site-estate .global-header-navigation-menu ul li a:before {
  background-image: url("../images/estate/global-navigation.png");
}
.site-estate .global-header-navigation-menu ul li.station {
  border-left: 1px solid #2a95c6;
}
.site-estate .global-header-navigation-menu ul li.station a {
  background-position: 27px 50%;
}
.site-estate .global-header-navigation-menu ul li.station a:before {
  background-position: 27px 50%;
}
.site-estate .global-header-navigation-menu ul li.fare a {
  background-position: -73px 50%;
}
.site-estate .global-header-navigation-menu ul li.fare a:before {
  background-position: -73px 50%;
}
.site-estate .global-header-navigation-menu ul li.time a {
  background-position: -171px 50%;
}
.site-estate .global-header-navigation-menu ul li.time a:before {
  background-position: -171px 50%;
}
@media screen and (max-width: 1140px) {
  .site-estate .global-header-navigation-menu {
    border-top: 1px solid #2a95c6;
  }
}
@media screen and (max-width: 640px) {
  .site-estate .global-header-navigation-menu {
    border-top: 1px solid #2a95c6;
  }
  .site-estate .global-header-navigation-menu ul {
    background-color: #2fa6dd;
  }
  .site-estate .global-header-navigation-menu ul li {
    border-right: none;
    border-bottom: 1px solid #2a95c6;
  }
  .site-estate .global-header-navigation-menu ul li a {
    background-image: none;
  }
  .site-estate .global-header-navigation-menu ul li.station {
    border-left: none;
  }
}
.site-estate .global-header-navigation {
  background-color: #2fa6dd;
}
.site-estate .global-header-navigation-logo {
  width: 206px;
}
.site-estate .global-header-navigation-logo a {
  background-image: url("../images/estate/logo.png");
  padding-top: 41%;
}
@media screen and (max-width: 640px) {
  .site-estate .global-header-navigation-logo {
    width: 204px;
  }
  .site-estate .global-header-navigation-logo a {
    padding-top: 16%;
    background-image: url("../images/estate/logo@2x.png");
    -moz-background-size: auto 22px;
    -o-background-size: auto 22px;
    -webkit-background-size: auto 22px;
    background-size: auto 22px;
  }
}
.site-estate .sp-global-header-navigation-menu-btn {
  border-left: 1px solid #2a95c6;
}
.site-estate .pankuzu {
  background-color: #ebf3ec;
}
.site-estate .sub-navigation {
  background-color: #2fa6dd;
}
.site-estate .sub-navigation li a:hover {
  background-color: #2a95c6;
}
.site-estate .page-title {
  border-top-color: #2fa6dd;
}
.site-estate .content-box-title {
  border-bottom-color: #2fa6dd;
}
.site-estate .content-box2 .content-box-title,
.site-estate .information-box .content-box-title {
  background-color: #2fa6dd;
}
.site-estate .menu-box-title.content-box-title {
  background-color: #2fa6dd;
}
.site-estate .content-box-link a {
  background-position: 0 -98px;
}
.site-estate .content-box-stitle {
  background-position: 0 -232px;
}
.site-estate .basic-table th {
  background-color: #2fa6dd;
}
.site-estate .information-tab ul li a:after {
  background-color: #2fa6dd;
}
.site-estate .estate_mainimg {
  width: 100%;
  height: 430px;
  background: url("/common/images/estate/estate-main.png") no-repeat center center;
  -moz-background-size: cover;
  -o-background-size: cover;
  -webkit-background-size: cover;
  background-size: cover;
}
.site-estate .estate-main-title {
  padding-bottom: 3px;
  border-bottom: 1px solid #e2e2e2;
}
.site-estate .estate-main-text {
  margin: 10px 0 10px;
}
.site-estate .content-row-title .estate-icon {
  padding-left: 35px;
  padding-top: 3px;
  padding-bottom: 3px;
}
.site-estate .content-row-title .icon-rental {
  background: url("../images/estate/icon-estate-rental.png") no-repeat left center;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-estate .content-row-title .icon-rental {
    background: url("../images/estate/icon-estate-rental@2x.png") no-repeat left center;
    background-size: 19px;
  }
}
.site-estate .content-row-title .icon-parking {
  background: url("../images/estate/icon-estate-parking.png") no-repeat left center;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-estate .content-row-title .icon-parking {
    background: url("../images/estate/icon-estate-parking@2x.png") no-repeat left center;
    background-size: 27px;
  }
}
.site-estate .content-row-title .icon-futsal {
  background: url("../images/estate/icon-estate-futsal.png") no-repeat left center;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-estate .content-row-title .icon-futsal {
    background: url("../images/estate/icon-estate-futsal@2x.png") no-repeat left center;
    background-size: 31px;
  }
}
.site-estate .estate-layout {
  font-size: 0;
}
.site-estate .estate-layout-half-left,
.site-estate .estate-layout-half-right {
  display: inline-block;
  vertical-align: top;
  font-size: 14px;
}
.site-estate .estate-layout-half-left {
  width: 49%;
}
@media screen and (max-width: 640px) {
  .site-estate .estate-layout-half-left {
    width: 100%;
  }
}
.site-estate .estate-layout-half-right {
  width: 49%;
  margin-left: 2%;
}
@media screen and (max-width: 640px) {
  .site-estate .estate-layout-half-right {
    width: 100%;
    margin-left: 0;
  }
}
.site-estate .estate-box {
  margin-top: 20px;
  background-color: #fff;
}
.site-estate .estate-box .bld-name {
  position: relative;
  padding: 8px 20px;
  background: #eae5d4;
  font-size: 18px;
  font-weight: bold;
}
.site-estate .estate-box .bld-name .estate-icon {
  position: absolute;
  top: 13px;
  right: 13px;
  display: inline-block;
  width: 80px;
  padding: 0 5px;
  text-align: center;
  font-size: 12px;
  color: #fff;
}
.site-estate .estate-box .bld-name .estate-icon span {
  padding-right: 5px;
  font-weight: bold;
}
.site-estate .estate-box .bld-name .full {
  background: #ee6469;
}
.site-estate .estate-box .bld-name .empty {
  background: #418ce1;
}
.site-estate .estate-box .estate-box-inner {
  padding: 15px;
  border: 1px solid #e9e9e9;
}
.site-estate .estate-box .estate-box-left {
  float: left;
  width: 45%;
}
.site-estate .estate-box .estate-box-right {
  float: right;
  width: 51%;
}
.site-estate .estate-box .estate-list {
  margin-bottom: 5px;
}
.site-estate .estate-box .estate-list dt {
  padding: 0;
  color: #777777;
}
.site-estate .estate-box .estate-list dd {
  padding-bottom: 10px;
  border-bottom: 1px solid #e2e2e2;
  line-height: 1.3em;
}
.site-estate .estate-box .estate-box-right-btn .btn {
  width: 100%;
  margin: 15px 0 0;
  padding: 8px 0;
  font-size: 16px;
}
.site-estate .estate-box .estate-box-right-btn .btn span {
  padding-left: 20px;
  background: url("../images/base/icon-link-blt.png") no-repeat 0 5px;
}
.site-estate .content-box-link p a {
  padding-left: 20px;
  background: url("../images/base/icon-link-square.png") no-repeat 0 -330px;
}
.site-estate .estate-sub-box {
  padding: 10px;
}
.site-estate .estate-sub-left {
  float: left;
  padding: 20px 0 20px 20px;
  width: 60%;
}
.site-estate .estate-sub-right {
  float: right;
  width: 35%;
}
.site-estate .contact-box-title,
.site-estate .contact-box-tel span {
  color: #2fa6dd;
}
.site-estate .right-link-box-title {
  color: #fff;
  background-color: #2fa6dd;
}
.site-estate .right-link-list li a {
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 -330px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-estate .right-link-list li a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.site-estate .estate-side-nav li div {
  max-width: 178px;
  margin-left: auto;
  margin-right: auto;
}
.site-estate .estate-side-nav-title {
  margin-top: 5px;
  text-align: left;
}
.site-estate .estate-side-nav-title a {
  padding-left: 20px;
  background: url("../images/base/icon-link-square.png") no-repeat;
  background-position: 0 -330px;
  text-decoration: none;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-estate .estate-side-nav-title a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}
.site-estate .estate-side-nav-title a:hover {
  text-decoration: underline;
}
.site-estate .estate-detail-row:after {
  content: "";
  display: block;
  clear: both;
}
.site-estate .estate-detail-image {
  width: 39.84375%;
  float: left;
}
.site-estate .estate-detail-thumb {
  margin-top: 10px;
}
.site-estate .estate-detail-thumb:after {
  content: "";
  display: block;
  clear: both;
}
.site-estate .estate-detail-thumb li {
  width: 60px;
  height: 60px;
  position: relative;
  overflow: hidden;
  float: left;
  cursor: pointer;
}
.site-estate .estate-detail-thumb li img {
  position: absolute;
  margin-left: 10px;
  margin-right: 10px;
}
.site-estate .estate-detail-text {
  width: 54.6875%;
  float: right;
}
.site-estate .estate-detail-title {
  font-weight: bold;
  font-size: 16px;
  margin-bottom: 15px;
}
.site-estate .estate-detail-table {
  margin-top: 30px;
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}
.site-estate .estate-detail-table-row {
  display: table-row;
}
.site-estate .estate-detail-table-th,
.site-estate .estate-detail-table-td {
  display: table-cell;
  vertical-align: top;
  padding: 10px 15px;
  border: 1px solid #e2e2e2;
}
.site-estate .estate-detail-table-th {
  background-color: #f7f7f7;
  width: 30%;
}
.site-estate .estate-tenant-table {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}
.site-estate .estate-tenant-table-row {
  display: table-row;
}
.site-estate .estate-tenant-table-row:nth-child(2n) .estate-tenant-table-td {
  background-color: #f7f7f7;
}
.site-estate .estate-tenant-table-th,
.site-estate .estate-tenant-table-td {
  display: table-cell;
  vertical-align: top;
  padding: 10px 20px;
  border: 1px solid #e2e2e2;
}
.site-estate .estate-tenant-table-th {
  background-color: #2fa6dd;
  color: #fff;
  text-align: center;
}
.site-estate .estate-tenant-table-td-floor {
  text-align: center;
}
.site-estate .estate-access {
  padding: 5px;
  background-color: #fff;
  border: 1px solid #e2e2e2;
}
.site-estate .estate-access-inner {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 54.28571%;
}
.site-estate .estate-access-inner div {
  top: 0;
  left: 0;
}
.site-estate .estate-access-inner .gmnoprint {
  opacity: 0;
  bottom: auto !important;
  right: auto !important;
}
.site-estate .estate-access-inner iframe {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}
.site-estate .parking-box-title {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 15px;
}
.site-estate .parking-box-inner:after {
  content: "";
  display: block;
  clear: both;
}
.site-estate .parking-box-image {
  width: 37.5%;
  float: left;
}
.site-estate .parking-box-text {
  width: 59.375%;
  float: right;
}
.site-estate .parking-box-table {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
}
.site-estate .parking-box-table-row {
  display: table-row;
}
.site-estate .parking-box-table-th,
.site-estate .parking-box-table-td {
  display: table-cell;
  vertical-align: middle;
  padding: 5px 20px;
  border: 1px solid #e2e2e2;
}
.site-estate .parking-box-table-th {
  background-color: #f7f7f7;
  width: 30%;
}
.site-estate .parking-box-table-td a.map {
  padding-left: 14px;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  background-position: -1px -569px;
  background-position: 0 -566px;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-estate .parking-box-table-td a.map {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}
.site-estate .parking-box-kasama {
  padding-top: 20px;
  margin-top: 30px;
  border-top: 1px solid #e2e2e2;
}

.site-goods .pankuzu a {
  color: #a4c54c;
}
.site-goods .global-header-navigation-menu ul li {
  border-right: 1px solid #a4c54c;
}
.site-goods .global-header-navigation-menu ul li a:hover {
  background-color: #a4c54c;
}
.site-goods .global-header-navigation-menu ul li a:before {
  background-image: url("../images/goods/global-navigation.png");
}
.site-goods .global-header-navigation-menu ul li.station {
  border-left: 1px solid #a4c54c;
}
.site-goods .global-header-navigation-menu ul li.station a {
  background-position: 27px 50%;
}
.site-goods .global-header-navigation-menu ul li.station a:before {
  background-position: 27px 50%;
}
.site-goods .global-header-navigation-menu ul li.fare a {
  background-position: -73px 50%;
}
.site-goods .global-header-navigation-menu ul li.fare a:before {
  background-position: -73px 50%;
}
.site-goods .global-header-navigation-menu ul li.time a {
  background-position: -171px 50%;
}
.site-goods .global-header-navigation-menu ul li.time a:before {
  background-position: -171px 50%;
}
@media screen and (max-width: 1140px) {
  .site-goods .global-header-navigation-menu {
    border-top: 1px solid #d62a56;
    background-color: #ee2f60;
  }
  .site-goods .global-header-navigation-menu ul li.station a:after {
    background-position: 22px 50%;
  }
  .site-goods .global-header-navigation-menu ul li.fare a:after {
    background-position: -69px 50%;
  }
  .site-goods .global-header-navigation-menu ul li.time a:after {
    background-position: -166px 50%;
  }
}
@media screen and (max-width: 640px) {
  .site-goods .global-header-navigation-menu {
    border-top: 1px solid #a4c54c;
  }
  .site-goods .global-header-navigation-menu ul {
    background-color: #a4c54c;
  }
  .site-goods .global-header-navigation-menu ul li {
    border-right: none;
    border-bottom: 1px solid #a4c54c;
  }
  .site-goods .global-header-navigation-menu ul li a {
    background-image: none;
  }
  .site-goods .global-header-navigation-menu ul li.station {
    border-left: none;
  }
}
.site-goods .global-header-navigation {
  background-color: #a4c54c;
}
.site-goods .global-header-navigation-logo {
  width: 183px;
}
.site-goods .global-header-navigation-logo a {
  background-image: url("../images/goods/logo.png");
  padding-top: 48.272727%;
}
@media screen and (max-width: 640px) {
  .site-goods .global-header-navigation-logo {
    width: 183px;
  }
  .site-goods .global-header-navigation-logo a {
    padding-top: 17%;
    background-image: url("../images/goods/logo@2x.png");
    -moz-background-size: auto 29px;
    -o-background-size: auto 29px;
    -webkit-background-size: auto 29px;
    background-size: auto 29px;
  }
}
.site-goods .sp-global-header-navigation-menu-btn {
  border-left: 1px solid #a4c54c;
}
.site-goods .pankuzu {
  background-color: #edf5d9;
}
.site-goods .sub-navigation {
  background-color: #a4c54c;
}
.site-goods .sub-navigation li a:hover {
  background-color: #a4c54c;
}
.site-goods .page-title {
  border-top-color: #a4c54c;
}
.site-goods .content-box-title {
  background-color: #a4c54c;
  border-bottom-color: #a4c54c;
}
.site-goods .content-box2 .content-box-title,
.site-goods .information-box .content-box-title {
  background-color: #a4c54c;
}
.site-goods .menu-box-title.content-box-title {
  background-color: #a4c54c;
}
.site-goods .content-box-link a {
  background-position: 0 -98px;
}
.site-goods .content-box-stitle {
  background-position: 0 -232px;
}
.site-goods .basic-table th {
  background-color: #a4c54c;
}
.site-goods .information-tab ul li a:after {
  background-color: #a4c54c;
}
.site-goods .goods-mainimg {
  background: #e7f3dc;
  width: 100%;
  height: 100%;
}
@media screen and (max-width: 1140px) {
  .site-goods .goods-mainimg {
    height: auto;
  }
}
.site-goods .goods-mainimg .goods-mainimg-inner {
  background: url("../images/goods/goods-main.png") #fff;
  width: 1000px;
  height: 430px;
  margin: 0 auto;
}
@media screen and (max-width: 1140px) {
  .site-goods .goods-mainimg .goods-mainimg-inner {
    width: 100%;
    height: auto;
    padding-top: 43%;
    -moz-background-size: cover;
    -o-background-size: cover;
    -webkit-background-size: cover;
    background-size: cover;
    position: relative;
  }
}
@media screen and (max-width: 640px) {
  .site-goods .goods-mainimg .goods-mainimg-inner {
    background: url("../images/goods/sp-goods-main.png") #fff;
    height: 0;
    padding-top: 82.1875%;
    -moz-background-size: cover;
    -o-background-size: cover;
    -webkit-background-size: cover;
    background-size: cover;
  }
}
.site-goods .goods-mainimg .con-mainimg-inner {
  text-align: center;
  font-weight: bold;
  position: relative;
}
.site-goods .goods-mainimg .con-mainimg-inner .con-btn {
  position: absolute;
  top: 240px;
  left: 0;
  width: 100%;
  text-align: center;
}
.site-goods .goods-mainimg .con-mainimg-inner .con-btn .btn {
  padding: 8px 20px;
}
.site-goods .goods-mainimg .con-mainimg-inner .con-btn .btn span {
  padding-right: 20px;
  background: url("../images/base/icon-link-blt.png") no-repeat right 3px;
}
.site-goods .goods-mainimg .con-mainimg-inner .con-btn .goods-btn-left {
  display: inline-block;
  margin-right: 10px;
}
.site-goods .goods-mainimg .con-mainimg-inner .con-btn .goods-btn-right {
  display: inline-block;
}
.site-goods .goods-mainimg .con-mainimg-inner .shop {
  color: #f57f31;
  letter-spacing: 0.15em;
}
.site-goods .goods-mainimg .con-mainimg-inner .title-goods-shop {
  margin: 12px 0;
  font-size: 24px;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 1140px) {
  .site-goods .goods-mainimg .con-mainimg-inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .site-goods .goods-mainimg .con-mainimg-inner .con-btn {
    top: 55%;
  }
}
@media screen and (max-width: 768px) {
  .site-goods .goods-mainimg .con-mainimg-inner .con-btn .btn {
    font-size: 12px;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
@media screen and (max-width: 640px) {
  .site-goods .goods-mainimg .con-mainimg-inner .con-btn {
    top: 75%;
  }
}
.site-goods .box-title {
  height: 17.9em;
  background-color: #a4c54c;
  color: #fff;
  text-align: center;
}
.site-goods .box-title .con-text {
  padding-top: 5.0em;
  line-height: 2.8em;
}
.site-goods .box-title .con-text em {
  font-size: 12px;
  font-weight: normal;
  letter-spacing: 0.25em;
}
.site-goods .box-title .con-text span {
  font-size: 18px;
  font-weight: bold;
  letter-spacing: 0.25em;
}
.site-goods .right-link-box-title {
  background-color: #a4c54c;
  color: #fff;
}
.site-goods .right-link-list li a {
  background: url("../images/base/icon-link-square.png") no-repeat;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-goods .right-link-list li a {
    background-image: url("../images/base/icon-link-square@2x.png");
    -moz-background-size: 11px auto;
    -o-background-size: 11px auto;
    -webkit-background-size: 11px auto;
    background-size: 11px auto;
  }
}

.site-faq .faq-nav .btn {
  display: block;
  padding: 15px 0;
  font-size: 16px;
  position: relative;
}
.site-faq .faq-nav .btn:before {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  position: absolute;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  top: 50%;
  right: 20px;
  bottom: auto;
  left: auto;
  margin-top: -5px;
  background-position: -1px 0;
}
@media screen and (max-width: 640px) {
  .site-faq .faq-nav .btn:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}
.site-faq .faq-list li {
  padding-bottom: 30px;
  padding-top: 30px;
}
.site-faq .faq-list li:first-child {
  padding-top: 0;
}
.site-faq .faq-list li:last-child {
  padding-bottom: 0;
}
.site-faq .content-box-title {
  position: relative;
}
.site-faq .content-box-title .btn-all {
  position: absolute;
  top: 50%;
  right: 15px;
  margin-top: -6px;
  text-decoration: none;
  font-size: 12px;
  color: #fff;
  padding-left: 15px;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  background-position: -1px 0;
}
@media screen and (-webkit-min-device-pixel-ratio: 2) {
  .site-faq .content-box-title .btn-all {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}
.site-faq .content-box-title .btn-all:hover {
  text-decoration: underline;
}
.site-faq .faq-list-question {
  font-size: 18px;
  padding-left: 35px;
  margin-bottom: 10px;
  font-weight: bold;
  background: url("../images/base/icon-faq-question.png") no-repeat 0 7px;
}
.site-faq .faq-list-question a {
  display: block;
  position: relative;
}
.site-faq .faq-list-question a:before {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  position: absolute;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  top: 50%;
  right: 20px;
  bottom: auto;
  left: auto;
  margin-top: -5px;
  background-position: -1px -350px;
}
@media screen and (max-width: 640px) {
  .site-faq .faq-list-question a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}
@media screen and (max-width: 640px) {
  .site-faq .faq-list-question {
    background-image: url("../images/base/icon-faq-question@2x.png");
    -moz-background-size: auto 20px;
    -o-background-size: auto 20px;
    -webkit-background-size: auto 20px;
    background-size: auto 20px;
  }
}
.site-faq .faq-list-answer {
  padding-left: 35px;
  margin-top: 5px;
  background: url("../images/base/icon-faq-answer.png") no-repeat 0 5px;
}
@media screen and (max-width: 640px) {
  .site-faq .faq-list-answer {
    background-image: url("../images/base/icon-faq-answer@2x.png");
    -moz-background-size: auto 16px;
    -o-background-size: auto 16px;
    -webkit-background-size: auto 16px;
    background-size: auto 16px;
  }
}
.site-faq .faq-list-index .faq-list-question {
  font-size: 16px;
  background-position: 0 20px;
  margin-bottom: 0;
}
.site-faq .faq-list-index li {
  padding: 0;
}
.site-faq .faq-list-index li a {
  padding: 15px 0;
}
.site-faq .faq-table {
  width: 100%;
  display: table;
  background-color: #fff;
  border-collapse: collapse;
  margin: 10px 0;
}
.site-faq .faq-table-tr {
  display: table-row;
}
@media screen and (max-width: 640px) {
  .site-faq .faq-table-tr {
    display: block;
  }
}
.site-faq .faq-table-th,
.site-faq .faq-table-td {
  display: table-cell;
  vertical-align: middle;
  padding: 10px 20px;
  border: 1px solid #e2e2e2;
}
.site-faq .faq-table-th {
  font-weight: bold;
  background-color: #f7f7f7;
  vertical-align: top;
  text-align: left;
}
.site-faq .station-table {
  width: 70%;
}
@media screen and (max-width: 640px) {
  .site-faq .station-table {
    width: 100%;
  }
}
.site-faq .faq-table-th-station {
  width: 20%;
}
@media screen and (max-width: 640px) {
  .site-faq .faq-table-td:last-child {
    border-bottom: 1px solid #e2e2e2;
  }
}
.site-faq .faq-table-tr, .site-faq .faq-table-th, .site-faq .faq-table-td {
  word-break: break-word;
}
@media screen and (max-width: 640px) {
  .site-faq .faq-table-th-station, .site-faq .faq-table-th, .site-faq .faq-table-td {
    width: 100%;
    display: list-item;
    border-bottom: none;
  }
}
.site-faq .red {
  color: #d52929;
}

.content-box-train .faq-list-question a {
  position: relative;
}
.content-box-train .faq-list-question a:before {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  position: absolute;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  top: 50%;
  right: 20px;
  bottom: auto;
  left: auto;
  margin-top: -5px;
  background-position: -1px -350px;
}
@media screen and (max-width: 640px) {
  .content-box-train .faq-list-question a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}

.content-box-bus .faq-list-question a {
  position: relative;
}
.content-box-bus .faq-list-question a:before {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  position: absolute;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  top: 50%;
  right: 20px;
  bottom: auto;
  left: auto;
  margin-top: -5px;
  background-position: -1px -460px;
}
@media screen and (max-width: 640px) {
  .content-box-bus .faq-list-question a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}

.content-box-tourism .faq-list-question a {
  position: relative;
}
.content-box-tourism .faq-list-question a:before {
  content: "";
  display: block;
  width: 6px;
  height: 10px;
  position: absolute;
  background: url("../images/base/icon-link-blt.png") no-repeat;
  top: 50%;
  right: 20px;
  bottom: auto;
  left: auto;
  margin-top: -5px;
  background-position: -1px -680px;
}
@media screen and (max-width: 640px) {
  .content-box-tourism .faq-list-question a:before {
    background-image: url("../images/base/icon-link-blt@2x.png");
    -moz-background-size: auto 890px;
    -o-background-size: auto 890px;
    -webkit-background-size: auto 890px;
    background-size: auto 890px;
  }
}

.site-media .flow-box {
  margin: 10px 0;
  padding: 0;
  border: 1px solid #e2e2e2;
  -moz-border-radius: 0;
  -webkit-border-radius: 0;
  border-radius: 0;
  background: #fff;
}
.site-media .flow-box:first-child {
  margin: 0 0 10px;
}
.site-media .flow-box-inner {
  padding: 25px;
}
.site-media .flow-box-inner:after {
  content: "";
  display: block;
  clear: both;
}
.site-media .flow-box-title {
  padding: 15px 20px;
  border-bottom: 1px solid #e2e2e2;
  background-color: #eff7ea;
  font-size: 16px;
  font-weight: bold;
}
.site-media .flow-box-title-noborder {
  padding: 15px 20px;
  background-color: #eff7ea;
  font-size: 16px;
  font-weight: bold;
}
.site-media .flow-box-title span, .site-media .flow-box-title-noborder span {
  margin-right: 15px;
  padding: 5px 10px;
  background: #14a94b;
  color: #fff;
  font-size: 12px;
  letter-spacing: 0.1em;
  border-radius: 3px;
}
.site-media .flow-box-title em, .site-media .flow-box-title-noborder em {
  padding-left: 3px;
  font-size: 16px;
}
.site-media .flow-box-left {
  float: left;
  width: 55%;
}
.site-media .flow-box-right {
  float: right;
  width: 40%;
}
.site-media .flow-box-right .flow-tel {
  border-left: 1px solid #cacaca;
  text-align: center;
}
.site-media .flow-box-right .flow-tel-num {
  font-size: 32px;
  line-height: 1.2em;
}
.site-media .flow-box-right .flow-tel-num span {
  margin-right: 10px;
  color: #f57f31;
  font-size: 16px;
}
.site-media .flow-box-right .flow-fax-num {
  font-size: 32px;
  line-height: 1.2em;
}
.site-media .flow-box-right .flow-fax-num span {
  background: url("../images/base/icon-fax.png") no-repeat 0 60%;
  margin-left: 10px;
  padding-left: 25px;
}
.site-media .flow-box-right .flow-tel-cap {
  font-size: 12px;
}
.site-media .media-title {
  margin: 10px 0;
  font-size: 18px;
  font-weight: bold;
}
.site-media .company-basic-table .media-part {
  width: 20%;
}
.site-media .media-money-wrap {
  width: 70%;
}
.site-media .media-btn {
  width: 70%;
  margin: 0 auto;
}
.site-media .media-btn a {
  display: block;
  padding: 20px;
  font-size: 16px;
  font-weight: bold;
}
.site-media .media-btn a span {
  padding-top: 10px;
  padding-bottom: 10px;
  padding-left: 40px;
  background: url("../images/base/icon-download.png") no-repeat 0 50%;
  line-height: 1.0;
}

.site-enon .pankuzu a {
  color: #129843;
}
.site-enon .pankuzu {
  background-color: #e7f3dc;
}
.site-enon .page-title {
  border-top-color: #66c5a7;
}
.site-enon .content-box-title {
  border-bottom-color: #66c5a7;
}
.site-enon .content-box2 .content-box-title,
.site-enon .information-box .content-box-title {
  background-color: #66c5a7;
}
.site-enon .menu-box-title.content-box-title {
  background-color: #66c5a7;
}
