@charset "UTF-8";
/**
 * "../font/josefin-sans/JosefinSans";
 * light = 300
 * regular = 400
 * semi-bold = 600
 * bold = 700
 */
/**
 * Noto Sans JP //fonts.googleapis.com/earlyaccess/notosansjp.css
 * weight
 *   Thin = 100
 *   Light = 300
 *   DemiLight = 400
 *   Regular = 500
 *   Medium = 700
 *   Bold = 900
 *   Block = x
 */
/**
 * 施設からのお知らせ
 */
.facility-news-container {
  width: 1158px;
  margin: 0 auto;
  padding: 6px 6px;
  background: url(../images/index/facility-news-bg.png);
  margin-top: 30px;
}

.facility-news-container .inner {
  background-color: #FFF;
  padding: 25px 30px 15px;
	text-align: center;
}

.facility-news-container .inner p {
  margin-bottom: 0;
}

.facility-news-container .inner .title {
  font-size: 18px;
  font-family: "Noto Sans JP";
  font-weight: 700;
  letter-spacing: 0.12em;
  text-align: center;
}

.facility-news-container .inner .message {
  line-height: 2;
}

.facility-news-container .inner .message a {
  text-decoration: none;
  border-bottom: 1px solid #AAA;
}

.facility-news-container .inner .message a:link, .facility-news-container .inner .message a:visited {
  color: #464646;
}

.facility-news-container .inner .message.-pdf:after {
  content: '';
  position: absolute;
  display: inline-block;
  width: 15px;
  height: 18px;
  margin-top: 5px;
  background: url(../images/index/pdf-icon.png) no-repeat;
  -webkit-background-size: 15px 18px;
          background-size: 15px 18px;
}

/**
 * SHOP NEWS
 */
.main-section-shop-news-wrapper {
  margin-top: 100px;
}

.contents-title {
  margin-bottom: 20px;
}

/**
 * 表示順調整
 */
.layout-container {
  margin-top: 60px;
}

/**
 * PICK UP
 */
.pickup-container {
  *zoom: 1;
  padding: 60px 0;
  background: #f8f4ef;
  margin-top: 90px;
}

.pickup-container:before, .pickup-container:after {
  content: " ";
  display: table;
}

.pickup-container:after {
  clear: both;
}

.pickup-container .inner {
  width: 1110px;
  margin: 0 auto;
}

.pickup-container .banners .item {
  margin-top: 30px;
}

.pickup-container .banners .item:nth-child(-n+2) {
  margin-top: 0;
}

.pickup-container .banners .item:nth-child(2n-1) {
  float: left;
}

.pickup-container .banners .item:nth-child(2n) {
  float: right;
}

.pickup-container .banners .item img {
  border: 10px solid #FFF;
  width: 540px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.pickup-container .banners .item p {
  margin: 5px 0 0 5px;
}

.pickup-container .banners .item a, .pickup-container .banners .item a:link, .pickup-container .banners .item a:visited {
  color: #474747;
  text-decoration: none;
}

/**
 * SHOP SEARCH
 */
.shop-search-container {
  *zoom: 1;
  margin: 80px 0;
}

.shop-search-container:before, .shop-search-container:after {
  content: " ";
  display: table;
}

.shop-search-container:after {
  clear: both;
}

.shop-search-container .inner {
  width: 1170px;
  margin: 0 auto;
}

.shop-search-container .contents-title {
  margin-bottom: 20px;
}

.shop-search-container .search-types {
  background: #f4f4f4;
  padding: 20px 35px 50px;
}

.shop-search-container .search-types .search-type {
  margin-top: 30px;
}

.shop-search-container .search-types .search-type:first-child {
  margin-top: 20px;
}

.shop-search-container .search-types .search-type .title {
  text-indent: 40px;
  font-size: 18px;
  font-weight: bold;
  background: transparent url(../images/index/shop-search-icon.png) no-repeat center left 10px;
  margin: 0;
}

.shop-search-container .search-types .search-type .link-button-border {
  font-size: 15px;
  font-weight: bold;
}

.shop-search-container .search-types .search-type .search-facility-list {
  *zoom: 1;
  padding: 0;
  margin: 0;
  list-style: none;
}

.shop-search-container .search-types .search-type .search-facility-list:before, .shop-search-container .search-types .search-type .search-facility-list:after {
  content: " ";
  display: table;
}

.shop-search-container .search-types .search-type .search-facility-list:after {
  clear: both;
}

.shop-search-container .search-types .search-type .search-facility-list .link-button-border {
  width: 360px;
  float: left;
  margin-left: 10px;
}

.shop-search-container .search-types .search-type .search-facility-list .link-button-border:first-child {
  margin-left: 0;
}

.shop-search-container .search-types .search-type .search-category {
  *zoom: 1;
  padding: 0;
  margin: 0;
  list-style: none;
}

.shop-search-container .search-types .search-type .search-category:before, .shop-search-container .search-types .search-type .search-category:after {
  content: " ";
  display: table;
}

.shop-search-container .search-types .search-type .search-category:after {
  clear: both;
}

.shop-search-container .search-types .search-type .search-category .link-button-border {
  float: left;
  width: 360px;
  margin-left: 10px;
}

.shop-search-container .search-types .search-type .search-category .link-button-border:nth-child(3n-2) {
  margin-left: 0;
}

/**
 * ACCESS
 */
.access-container .text {
  text-align: center;
  line-height: 1.8;
  margin: 0;
}

.access-container .detail {
  display: table;
  width: auto;
  margin: 30px auto 0;
  padding-left: 50px;
}

.access-container .detail > * {
  display: table-cell;
}

.access-container .detail p {
  margin-top: 5px;
  margin-bottom: 0;
}

.access-container .detail .label {
  font-weight: bold;
}

.access-container .detail .left .name {
  font-size: 16px;
  font-weight: bold;
}

.access-container .detail .left .mg1 .name {
  color: #13007c;
}

.access-container .detail .left .mg23 .name {
  color: #e60039;
}

.access-container .detail .left .google-map {
  display: inline-block;
  font-size: 12px;
  min-width: 150px;
  padding: 10px 25px 7px 10px;
  margin-top: 15px;
}

.access-container .detail .center {
  padding: 0 70px;
}

.access-container .detail .right a, .access-container .detail .right a:link, .access-container .detail .right a:visited {
  color: inherit;
  text-decoration: none;
}

.access-container .detail .right a:before {
  content: '';
  display: inline-block;
  position: relative;
  top: -2px;
  width: 4px;
  height: 4px;
  border: 1px solid;
  margin-right: 8px;
  border-color: #231815 #231815 transparent transparent;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.access-container .map {
  display: table;
  width: 100%;
  height: 350px;
  margin-top: 40px;
  font-size: 0;
}

.access-container .map .google-map {
  position: relative;
  display: table-cell;
  width: 70%;
}

.access-container .map .google-map .js-google-map {
  width: 100%;
  height: 350px;
}

.access-container .map .google-map .link {
  display: none;
  position: absolute;
  left: 50%;
  bottom: 15px;
  width: 178px;
  margin-left: -89px;
  font-size: 12px;
}

.access-container .map .image {
  display: table-cell;
  min-width: 568px;
  height: 350px;
}

.access-container .map .image img {
  vertical-align: baseline;
	height: 100%;
}

/**
 * instagram
 */
.instagram-container {
  margin-top: 80px;
}

.instagram-container .list {
  margin: 0 auto;
  padding: 0;
  list-style: none;
  width: 700px;
}

.instagram-container .list li {
  float: left;
  width: 220px;
  margin-left: 20px;
  margin-top: 20px;
}

.instagram-container .list li:nth-child(3n-2) {
  margin-left: 0;
}

.instagram-container .list li a {
  display: block;
  padding-top: 100%;
  position: relative;
  overflow: hidden;
}

.instagram-container .list li img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 220px;
  height: 220px;
  max-height: 100%;
}

/* ----------------------------------------------------------------------
 * Key Visual
 * ---------------------------------------------------------------------- */
@media screen and (min-width: 1290px) {
  .keyvisual-slider .slick-prev {
    left: -50px;
  }
  .keyvisual-slider .slick-next {
    right: -50px;
  }
}

/* ----------------------------------------------------------------------
 * PC
 * ---------------------------------------------------------------------- */
/* ----------------------------------------------------------------------
 * tablet
 * ---------------------------------------------------------------------- */
/* ----------------------------------------------------------------------
 * sp
 * ---------------------------------------------------------------------- */
@media screen and (max-width: 767px) {
  .header-nav {
    margin-top: 40px;
  }
  .keyvisual-slider {
    width: auto;
    margin: 0 auto;
    height: auto;
    border-left: none;
    border-right: none;
    margin-bottom: 44px;
  }
  .keyvisual-slider .slick-arrow {
    width: 12px;
    height: 28px;
    background: url(../images/index/slider-arrow-sp.png) no-repeat;
    -webkit-background-size: 12px 28px;
            background-size: 12px 28px;
    cursor: default;
    margin-top: -14px;
  }
  .keyvisual-slider .slick-prev {
    left: 10px;
  }
  .keyvisual-slider .slick-next {
    right: 10px;
  }
  .keyvisual-slider .slick-dots {
    bottom: -27px;
  }
  .keyvisual-slider .slick-dots li {
    height: 12px;
    width: 12px;
    cursor: default;
  }
  .keyvisual-slider .slick-dots li button {
    height: 12px;
    width: 12px;
    cursor: default;
  }
  .keyvisual-slider .slick-dots li button:before {
    width: 6px;
    height: 6px;
    font-size: 6px;
    line-height: 6px;
  }
  /**
   * 施設からのお知らせ
   */
  .facility-news-container {
    width: auto;
    margin: 0 auto;
    padding: 6px 6px;
    margin-left: 15px;
    margin-right: 15px;
  }
  .facility-news-container .inner {
    padding-left: 15px;
    padding-right: 15px;
    padding: 10px 12px;
  }
  .facility-news-container .inner .title {
    font-size: 16px;
  }
  .facility-news-container .inner .message {
    font-size: 12px;
  }
  .facility-news-container .inner .message.-pdf:after {
    width: 11.5px;
    height: 14px;
    margin-top: 5px;
    background: url(../images/index/pdf-icon-sp.png) no-repeat;
    -webkit-background-size: cover;
            background-size: cover;
  }
  /**
   * 営業時間
   */
  .business-hours-container {
    padding-left: 15px;
    padding-right: 15px;
    display: table;
    margin-top: 30px;
  }
  .business-hours-container .left {
    position: relative;
    display: table-cell;
    background-color: #b89469;
    vertical-align: middle;
    width: 26px;
  }
  .business-hours-container .left p {
    position: absolute;
    top: 50%;
    margin-top: -2.4em;
    left: 2px;
    font-size: 13px;
    font-weight: bold;
    color: #FFF;
    letter-spacing: 0.2em;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
  }
  .business-hours-container .right {
    display: table-cell;
    padding-left: 10px;
    padding-top: 0.5em;
  }
  .business-hours-container .right .mg .title {
    position: relative;
    margin-bottom: 5px;
  }
  .business-hours-container .right .mg .title:after {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 5px;
    top: 8px;
  }
  .business-hours-container .right .mg .title img {
    position: relative;
    z-index: 1;
    padding-right: 10px;
    background-color: #FFF;
  }
  .business-hours-container .right .mg ul {
    padding: 0;
    margin: 0;
    list-style: none;
    display: table;
  }
  .business-hours-container .right .mg ul li {
    float: left;
    margin-right: 20px;
  }
  .business-hours-container .right .mg ul li span {
    font-weight: bold;
    margin-right: 5px;
  }
  .business-hours-container .right .mg1 .title:after {
    background-color: #d9dced;
  }
  .business-hours-container .right .mg1 .title img {
    width: 155.5px;
  }
  .business-hours-container .right .mg2 {
    margin-top: 15px;
  }
  .business-hours-container .right .mg2 .title:after {
    background-color: #f6dee3;
  }
  .business-hours-container .right .mg2 .title img {
    width: 181px;
  }
  .business-hours-container .note {
    margin-top: 5px;
    font-size: 10px;
    text-align: right;
  }
  /**
   * SHOP SEARCH
   */
  .shop-search-container-sp {
    *zoom: 1;
    margin-left: 15px;
    margin-right: 15px;
    margin-top: 60px;
  }
  .shop-search-container-sp:before, .shop-search-container-sp:after {
    content: " ";
    display: table;
  }
  .shop-search-container-sp:after {
    clear: both;
  }
  .shop-search-container-sp > .search-type-list {
    margin: 0;
    padding: 0;
    list-style: none;
  }
  .shop-search-container-sp > .search-type-list > li {
    display: block;
    width: 100%;
    background-color: #f2ebe3;
    margin-top: 7px;
  }
  .shop-search-container-sp > .search-type-list > li > span {
    position: relative;
    display: block;
    vertical-align: middle;
    font-size: 15px;
    font-weight: bold;
    cursor: pointer;
    padding: 14px 35px 14px 45px;
    line-height: 1.2;
  }
  .shop-search-container-sp > .search-type-list > li > span:before {
    content: '';
    position: absolute;
    top: 50%;
    left: 13px;
    margin-top: -9px;
    display: block;
    width: 13.5px;
    height: 17.5px;
    background: url(../images/index/search-type-list-search-sp.png) no-repeat;
    -webkit-background-size: cover;
            background-size: cover;
  }
  .shop-search-container-sp > .search-type-list > li > span:after {
    content: '';
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -4px;
    display: block;
    width: 13.5px;
    height: 7px;
    background: url(../images/index/search-type-list-arrow-sp.png) no-repeat;
    -webkit-background-size: cover;
            background-size: cover;
  }
  .shop-search-container-sp > .search-type-list > li .search-category, .shop-search-container-sp > .search-type-list > li .search-alphabet, .shop-search-container-sp > .search-type-list > li .search-floor {
    display: none;
    overflow: hidden;
  }
  .shop-search-container-sp > .search-type-list > li.-current > span {
    background-color: #b89469;
    color: #FFF;
  }
  .shop-search-container-sp > .search-type-list > li.-current > span:before {
    background-position: 0 -17.5px;
  }
  .shop-search-container-sp > .search-type-list > li.-current > span:after {
    background-position: 0 -7px;
  }
  .shop-search-container-sp .search-category {
    width: auto;
    margin: 0 auto;
    background-color: #f2ebe3;
  }
  .shop-search-container-sp .search-category .search-category-list {
    *zoom: 1;
    margin: 5px 15px 10px 20px;
    padding: 0;
    list-style: none;
  }
  .shop-search-container-sp .search-category .search-category-list:before, .shop-search-container-sp .search-category .search-category-list:after {
    content: " ";
    display: table;
  }
  .shop-search-container-sp .search-category .search-category-list:after {
    clear: both;
  }
  .shop-search-container-sp .search-category .search-category-list li {
    float: left;
    margin-top: 5px;
  }
  .shop-search-container-sp .search-category .search-category-list li a {
    padding-left: 10px;
    margin-right: 20px;
    font-size: 11px;
    font-weight: bold;
    color: #221713;
    text-decoration: none;
    background: url(../images/index/search-category-arrow-sp.png) no-repeat;
    -webkit-background-size: 5.5px 8.5px;
            background-size: 5.5px 8.5px;
    background-position: 0 3px;
  }
  .shop-search-container-sp .search-alphabet .list {
    padding: 0;
    margin: 15px 10px 20px;
    font-size: 0;
  }
  .shop-search-container-sp .search-alphabet .jp-list .link-button-border {
    display: inline-block;
    width: 59px;
    height: 59px;
    line-height: 57px;
    margin: 5px 0 0 5px;
    font-size: 16px;
    font-weight: 300;
    font-family: "Josefin Sans";
    letter-spacing: 0.1em;
  }
  .shop-search-container-sp .search-alphabet .jp-list .link-button-border > *:first-letter {
    font-size: 21px;
    font-weight: 400;
  }
  .shop-search-container-sp .search-alphabet .en-list .link-button-border {
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 38px;
    margin: 5px 0 0 5px;
    font-size: 16px;
    font-weight: 200;
    font-family: "Noto Sans JP";
    letter-spacing: 0.1em;
  }
  .shop-search-container-sp .search-alphabet .en-list .link-button-border > *:first-letter {
    font-size: 16px;
    font-weight: 300;
  }
  .shop-search-container-sp .search-floor .list {
    padding: 0;
    margin: 15px 10px 20px;
    font-size: 0;
  }
  .shop-search-container-sp .search-floor .list .link-button-border {
    display: inline-block;
    width: 40px;
    height: 40px;
    line-height: 38px;
    margin: 5px 0 0 5px;
    font-size: 19px;
    font-weight: 300;
    font-family: "Josefin Sans";
    letter-spacing: 0.1em;
  }
  .shop-search-container-sp .search-floor .list .link-button-border span {
    font-size: 12px;
    font-weight: 300;
  }
  .shop-search-container-sp .search-floor .mg1-list:before {
    content: '';
    display: block;
    width: 172px;
    height: 20px;
    margin-left: 5px;
    background: url(../images/index/search-floor-mg1-sp.png) no-repeat;
    -webkit-background-size: contain;
            background-size: contain;
  }
  .shop-search-container-sp .search-floor .mg2-list:before {
    content: '';
    display: block;
    width: 178px;
    height: 20px;
    margin-left: 5px;
    background: url(../images/index/search-floor-mg2-sp.png) no-repeat;
    -webkit-background-size: contain;
            background-size: contain;
  }
  .shop-search-container-sp .search-floor .mg3-list:before {
    content: '';
    display: block;
    width: 178px;
    height: 20px;
    margin-left: 5px;
    background: url(../images/index/search-floor-mg3-sp.png) no-repeat;
    -webkit-background-size: contain;
            background-size: contain;
  }
  .main-section-shop-news-wrapper {
    margin-top: 60px;
  }
  .contents-title {
    margin-bottom: 10px;
    letter-spacing: 0;
  }
  /**
   * 表示順調整
   */
  .layout-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    margin-top: 60px;
  }
  .sidebar-wrapper {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .instagram-container {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  /**
   * Youtube
   */
  .youtube-box {
    padding-left: 15px;
    padding-right: 15px;
    margin: 50px 0 0;
  }
  .youtube-box .youtube-title {
    font-size: 14px;
    font-weight: bold;
    line-height: 1.2;
    margin-bottom: 10px;
    padding: 0.5em 0 0.5em 40px;
    min-height: 30px;
    background: url(../images/common/movie-icon.png) no-repeat left center;
    -webkit-background-size: 30px 30px;
            background-size: 30px 30px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .youtube-box .youtube-container .inner {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
  }
  .youtube-box .youtube-container .inner iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  /**
   * PICK UP
   */
  .pickup-container {
    margin-top: 50px;
    padding: 35px 0;
  }
  .pickup-container .inner {
    width: auto;
    margin: 0 auto;
    padding-left: 15px;
    padding-right: 15px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .pickup-container .banners .item {
    margin-top: 20px;
  }
  .pickup-container .banners .item:nth-child(-n+2) {
    margin-top: 15px;
  }
  .pickup-container .banners .item p {
    display: none;
  }
  .pickup-container .banners .item img {
    width: 100%;
    border: 6px solid #FFF;
  }
  /**
   * ACCESS
   */
  .access-container {
    margin-top: 60px;
  }
  .access-container .contents-title {
    font-size: 30px;
  }
  .access-container .map {
    width: 100%;
    height: auto;
    margin-top: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
  }
  .access-container .map .google-map {
    display: block;
    width: 100%;
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
  }
  .access-container .map .google-map .js-google-map {
    width: 100%;
    height: 60vw;
  }
  .access-container .map .google-map .link {
    display: block;
  }
  .access-container .map .image {
    display: block;
    min-width: 100%;
    max-height: 480px;
    height: auto;
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
            order: 1;
  }
  .access-container .map .image img {
    vertical-align: bottom;
    width: 100%;
  }
  .access-container .bottom-text {
    margin-top: 15px;
    padding-left: 15px;
    padding-right: 15px;
  }
  /**
   * instagram
   */
  .instagram-container {
    margin-top: 60px;
    padding-left: 15px;
    padding-right: 15px;
  }
  .instagram-container .contents-title {
    height: 35px;
    background: url(../images/index/instagram-icon-sp.png) no-repeat center;
    -webkit-background-size: 35px 35px;
            background-size: 35px 35px;
  }
  .instagram-container .contents-title img {
    display: none;
  }
  .instagram-container .list {
    margin: 10px auto 0 auto;
    padding: 0;
    list-style: none;
    width: 100%;
  }
  .instagram-container .list li {
    float: left;
    margin-left: 2%;
    margin-top: 2%;
    width: 32%;
  }
  .instagram-container .list li:nth-child(3n-2) {
    margin-left: 0;
  }
}
