@charset "UTF-8";
/* ==========================================================================
   index
   ========================================================================== */
.page-container {
  background: url(/img/index_bg01.png) repeat-x left 556px;
}
@media screen and (max-width: 667px) {
  .for-responsive .page-container {
    background: none;
  }
}
/* Facility nav
   ========================================================================== */
.facility-nav {
  margin-top: 20px;
}
.facility-nav_list {
  zoom: 1;
}
.facility-nav_list:before,
.facility-nav_list:after {
  content: '';
  display: table;
}
.facility-nav_list:after {
  clear: both;
}
.facility-nav_list li {
  float: left;
  width: 470px;
  margin-left: 20px;
  padding-bottom: 10px;
  background: url(/img/index_facility-nav_bg01.png) no-repeat center bottom;
  text-align: center;
}
.facility-nav_list li:first-child {
  margin-left: 0;
}
.facility-nav_list li > a {
  opacity: 1;
  display: block;
  border: 3px solid #d8d8d8;
  border-radius: 4px;
  background-color: #fff;
  text-decoration: none;
}
.facility-nav_list li > a:hover {
  opacity: 0.7;
  -ms-filter: "alpha(opacity=70)";
}
.facility-nav_list .hamamatsucho .text {
  background-color: #2c90c4;
}
.facility-nav_list .taito .text {
  background-color: #649700;
}
.facility-nav_list .name,
.facility-nav_list .text {
  margin-top: 0;
}
.facility-nav_list .name {
  padding: 10px 0;
  line-height: 1;
}
.facility-nav_list .text {
  padding: 12px 0;
  color: #fff;
  font-weight: bold;
  border-radius: 0 0 2px 2px;
}
.facility-nav_list .opt-close > a {
  background-color: #ededed;
}
.facility-nav_list .opt-close .text {
  background-color: #828282;
}
@media screen and (max-width: 667px) {
  .for-responsive .facility-nav {
    margin-top: 10px;
  }
  .for-responsive .facility-nav li {
    width: 50%;
    margin-left: 0;
    padding: 0 0 0 5px;
    background: none;
    box-sizing: border-box;
  }
  .for-responsive .facility-nav li:first-child {
    padding: 0 4px 0 0;
  }
  .for-responsive .facility-nav li > a {
    border: 1px solid #d8d8d8;
    border-radius: 4px;
  }
  .for-responsive .facility-nav .opt-close .name {
    padding: 12px 0 10px;
  }
  .for-responsive .facility-nav .opt-close .name img {
    width: 136px;
    height: 19px;
  }
  .for-responsive .facility-nav .name {
    padding: 13px 0 11px;
  }
  .for-responsive .facility-nav .name img {
    width: 89px;
    height: 17px;
  }
  .for-responsive .facility-nav .text {
    display: none;
  }
}
/* User guide(PC)
   ========================================================================== */
.user-guide-pc {
  position: relative;
}
.user-guide-pc_handle {
  zoom: 1;
}
.user-guide-pc_handle:before,
.user-guide-pc_handle:after {
  content: '';
  display: table;
}
.user-guide-pc_handle:after {
  clear: both;
}
.user-guide-pc_handle li {
  position: relative;
  float: left;
  z-index: 50;
}
.user-guide-pc_handle li a {
  white-space: nowrap;
  text-indent: 100%;
  overflow: hidden;
  display: block;
  width: 320px;
  height: 85px;
  background: url(/img/user-guide_handle_bg01.png) no-repeat;
}
.user-guide-pc_handle .first-time a {
  background-position: 0 0;
}
.user-guide-pc_handle .first-time a:hover {
  background-position: 0 -85px;
}
.user-guide-pc_handle .first-time.is-active > a {
  background-position: 0 -170px;
}
.user-guide-pc_handle .first-time.is-inactive > a {
  background-position: 0 -255px;
}
.user-guide-pc_handle .first-time.is-inactive > a:hover {
  background-position: 0 -85px;
}
.user-guide-pc_handle .many-times a {
  background-position: -320px 0;
}
.user-guide-pc_handle .many-times a:hover {
  background-position: -320px -85px;
}
.user-guide-pc_handle .many-times.is-active > a {
  background-position: -320px -170px;
}
.user-guide-pc_handle .many-times.is-inactive > a {
  background-position: -320px -255px;
}
.user-guide-pc_handle .many-times.is-inactive > a:hover {
  background-position: -320px -85px;
}
.user-guide-pc_handle .attendance a {
  background-position: -640px 0;
}
.user-guide-pc_handle .attendance a:hover {
  background-position: -640px -85px;
}
.user-guide-pc_handle .attendance.is-active > a {
  background-position: -640px -170px;
}
.user-guide-pc_handle .attendance.is-inactive > a {
  background-position: -640px -255px;
}
.user-guide-pc_handle .attendance.is-inactive > a:hover {
  background-position: -640px -85px;
}
.user-guide-pc_content {
  zoom: 1;
  position: absolute;
  top: 81px;
  left: 0;
  padding: 12px 18px;
  border: 3px solid #d8d8d8;
  border-radius: 4px;
  background-color: #fff;
  z-index: 10;
}
.user-guide-pc_content:before,
.user-guide-pc_content:after {
  content: '';
  display: table;
}
.user-guide-pc_content:after {
  clear: both;
}
.user-guide-pc_content .col {
  float: left;
  width: 453px;
  margin-left: 12px;
}
.user-guide-pc_content .col:first-child {
  margin-left: 0;
}
.user-guide-pc_content .col.theme-hamamatsucho .title {
  background-color: #2c90c4;
}
.user-guide-pc_content .col.theme-hamamatsucho .list {
  background-color: #dfeef6;
}
.user-guide-pc_content .col.theme-taito .title {
  background-color: #649700;
}
.user-guide-pc_content .col.theme-taito .list {
  background-color: #eaf3d9;
}
.user-guide-pc_content .col.opt-close .title {
  background-color: #828282;
}
.user-guide-pc_content .col.opt-close .close {
  background-color: #ededed;
}
.user-guide-pc_content .title {
  padding: 9px 0 8px;
  border-radius: 4px 4px 0 0;
  text-align: center;
}
.user-guide-pc_content .list {
  overflow: hidden;
  padding: 5px 0 10px 6px;
  border-radius: 0 0 4px 4px;
  width: 447px;
}
.user-guide-pc_content .list > li {
  float: left;
  margin: 5px 4px 0 3px;
  border-radius: 2px;
  background-color: #fff;
}
.user-guide-pc_content .close {
  padding: 5px 0 10px 6px;
  border-radius: 0 0 4px 4px;
}
.user-guide-pc_content .close.opt-first-time .close_text {
  margin: 54px 0;
}
.user-guide-pc_content .close.opt-many-times .close_text {
  margin: 29px 0;
}
.user-guide-pc_content .close.opt-attendance .close_text {
  margin: 4px 0;
}
.user-guide-pc_content .close_text {
  font-size: 14px;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 667px) {
  .for-responsive .user-guide-pc {
    display: none;
  }
}
/* User guide(SP)
   ========================================================================== */
.user-guide-sp {
  display: none;
  margin-top: 10px;
}
.user-guide-sp_item {
  border: 2px solid #ccc;
  border-radius: 3px;
}
.user-guide-sp_item.is-expanded .user-guide-sp_title {
  background: #fff;
}
.user-guide-sp_item.is-expanded .user-guide-sp_handle {
  background-position: 0 -23px;
}
.user-guide-sp_title {
  padding: 11px 10px 10px;
  position: relative;
  background: -webkit-linear-gradient(#ffffff 50%, #eeeeee 51%);
  background: linear-gradient(#ffffff 50%, #eeeeee 51%);
  cursor: pointer;
}
.user-guide-sp_handle {
  white-space: nowrap;
  text-indent: 100%;
  overflow: hidden;
  position: absolute;
  top: 50%;
  right: 14px;
  width: 23px;
  height: 23px;
  margin-top: -11px;
  background: url(/img/user-guide_handle_bg01_sp.png) no-repeat;
  background-size: 23px 46px;
}
.user-guide-sp_body {
  padding: 10px;
}
.user-guide-sp_content {
  margin-top: 10px;
}
.user-guide-sp_content:first-child {
  margin-top: 0;
}
.user-guide-sp_content.theme-hamamatsucho .title {
  background-color: #2c90c4;
}
.user-guide-sp_content.theme-hamamatsucho .title:before {
  background: url(/img/user-guide_content_title01_sp.png) no-repeat;
}
.user-guide-sp_content.theme-taito .title {
  background-color: #649700;
}
.user-guide-sp_content.theme-taito .title:before {
  background: url(/img/user-guide_content_title02_sp.png) no-repeat;
}
.user-guide-sp_content .title {
  padding: 3px 0;
  color: #fff;
  font-size: 1.4em;
  text-align: center;
}
.user-guide-sp_content .title:before {
  position: relative;
  display: inline-block;
  top: -1px;
  left: 0;
  width: 17px;
  height: 17px;
  padding-right: 5px;
  background-size: 17px 17px !important;
  vertical-align: middle;
  content: "";
}
.user-guide-sp_content .list {
  overflow: hidden;
  margin-top: 10px;
}
.user-guide-sp_content .list > li {
  float: left;
  box-sizing: border-box;
  width: 33.3%;
  padding: 0 3px;
  text-align: center;
}
.user-guide-sp_content .list > li:first-child {
  padding-left: 0;
}
.user-guide-sp_content .list > li:last-child {
  padding-right: 0;
}
.user-guide-sp_content .list .button {
  display: table;
  width: 100%;
  height: 40px;
  color: #333333;
  line-height: 1.2;
  text-decoration: none;
}
.user-guide-sp_content .list .button .inner {
  display: table-cell;
  padding: 0 1px;
  vertical-align: middle;
  border: 1px solid #ccc;
  border-radius: 3px;
  background: -webkit-linear-gradient(#fefefe 0%, #eeeeee 100%);
  background: linear-gradient(#fefefe 0%, #eeeeee 100%);
}
.user-guide-sp_content.opt-close .title {
  background-color: #828282;
}
.user-guide-sp_content.opt-close .title:before {
  background: url(/img/user-guide_content_close_title01_sp.png) no-repeat;
}
@media screen and (max-width: 667px) {
  .for-responsive .user-guide-sp {
    display: block;
  }
}
/* Access
   ========================================================================== */
.access_content {
  margin-top: 10px;
  padding-top: 10px;
  border-top: 1px dotted #ccc;
}
.access_content:first-child {
  margin-top: 0;
  padding-top: 0;
  border-top: none;
}
.access_content .title {
  padding: 6px 0 5px;
  text-align: center;
  color: #fff;
  line-height: 1.2;
  font-size: 1.4em;
}
.access_content .button {
  margin-top: 7px;
  text-align: center;
}
.access_content .button > a {
  opacity: 1;
  display: block;
  padding: 4px 0 4px;
  border: 1px solid #ccc;
  background: #fdfdfd url(/img/access_content_button_bg01.png) repeat-x left bottom;
  color: #333333;
  font-weight: bold;
  text-decoration: none;
}
.access_content .button > a:hover {
  opacity: 0.7;
  -ms-filter: "alpha(opacity=70)";
}
.access_content .button > a:before {
  position: relative;
  display: inline-block;
  top: -1px;
  left: 0;
  width: 4px;
  height: 8px;
  padding-right: 5px;
  background: url(/common/img/parts/icon_arrow_right01.png) no-repeat;
  vertical-align: middle;
  content: "";
}
.access_content.theme-hamamatsucho .title {
  background-color: #2c90c4;
}
.access_content.theme-taito .title {
  background-color: #649700;
}
@media screen and (max-width: 667px) {
  .for-responsive .access_content .button > a:before {
    background: url(/common/img/parts/icon_arrow_right01_sp.png) no-repeat;
    background-size: 4px 8px;
  }
}
/* Related content
   ========================================================================== */
.related-content {
  margin-top: -17px;
  padding-bottom: 80px;
  border-top: 1px solid #ccc;
}
@media screen and (max-width: 667px) {
  .for-responsive .related-content {
    display: none;
  }
}
/* Sns
   ========================================================================== */
.sns {
  zoom: 1;
  width: 960px;
  margin: 30px auto 0;
}
.sns:before,
.sns:after {
  content: '';
  display: table;
}
.sns:after {
  clear: both;
}
.sns_twitter-timeline {
  float: left;
  width: 310px;
  margin-left: 15px;
}
.sns_twitter-timeline:first-child {
  margin-left: 0;
}
/* Related banner
   ========================================================================== */
.related-banner {
  width: 740px;
  margin: 40px auto 0;
}
.related-banner_list {
  overflow: hidden;
  margin-top: 10px;
}
.related-banner_list:first-child {
  margin-top: 0;
}
.related-banner_list > li {
  float: left;
  margin-left: 10px;
}
.related-banner_list > li:first-child {
  margin-left: 0;
}
