@charset "utf-8";

/*top
----------------------------------------------------------------------------------------------*/
#topSliderWrap{
  background: #d0d0d0;
  padding: 5px;
}
#topSlider{
  padding: 5px;
  background: #fff;
}
#topSlider div{
  display:none;
}
#topSlider div:first-child{
  display:block;
}
#topSlider img{
  width: 100%;
  height: auto;
}
#topSlider .slick-next {
  right: -5px;
  background: url(../../img/sp/common/btn_next01.png) 0 0 no-repeat;
  background-size: 22px 22px;
}

#topSlider .slick-prev {
  left: -5px;
  background: url(../../img/sp/common/btn_prev01.png) 0 0 no-repeat;
  background-size: 22px 22px;
}

#topSlider .slick-arrow {
  display: block;
  width: 22px;
  height: 22px;
  top: 50%;
  margin-top: -11px;
  position: absolute;
  z-index: 500;
  overflow: hidden;
}

/* 2017.11 動画バージョン */
#topSlider_movie{
  width: 100%;
  padding: 10px;
  background: #fff;
  overflow: hidden;
  }
  #topSlider_movie .topslider_video video{
    width: 100%;
    height: auto;
  }
  #topSlider_movie .topslider_btn{
    margin-top: 5px;
    text-align: center;
  }
  #topSlider_movie .topslider_btn a{
    display: block;
    text-decoration: none;
    color: #fff;
    width: 100%;
    font-size: 14px;
    background-color: #a7272f;
    position: relative;
    padding: 10px 30px 10px 10px;
  }
  #topSlider_movie .topslider_btn a:after {
      content: "";
      position: absolute;
      top: 50%;
      right: 18px;
      margin-top: -5px;
      width: 8px;
      height: 11px;
      background: url(/img/pc/common/bg_yaji03.png) 0 0 no-repeat;
  }


#top #sec01{
  text-align: center;
}
#top #sec01 .secIn01{
  background: #fff;
  padding: 15px 10px 20px;
}
#top #sec01 .bannerArea{
  margin-bottom: 0;
}
#top #sec01 .bannerArea a{
  float: left;
  width: 49%;
}
/* シネマなしバナー1つバージョン */
/*
#top #sec01 .bannerArea a{
  float: none;
  margin:0 auto;
	width: 60%;
  display:block;
}
*/
#top #sec01 .bannerArea a:nth-child(2){
  float: right;
}
#top #sec01 .bannerArea a img{
  width: 100%;
  height: auto;
}
#top #sec01 .movieBtn{
  padding: 15px 20px;
  background: #e7eef8;
  border:5px #fff solid;
}

#top #sec02 h3{
  background: url(../../img/sp/common/icon_event.png) 10px center no-repeat;
  background-size: 14px 14px;
}
#top #sec03 h3{
  background: url(../../img/sp/common/icon_shopnews.png) 10px center no-repeat;
  background-size: 12px 12px;
}

#top #sec04 h3{
  background: url(../../img/sp/common/icon_information.png) 10px center no-repeat;
  background-size: 14px 14px;
}
#top #sec05 h3{
  background: #fff url(../../img/sp/common/icon_recommend.png) 10px center no-repeat;
  background-size: 12px 12px;
}
#top #sec05 .contentsList li{
  border-bottom: 1px solid #f2f2f2;
}
#top #sec05,
#top #sec06,
#top #sec07{
  background: #f2f2f2;
  padding-bottom: 15px;
}
#top #sec06 h3{
  background: #e6f2f3;
  border: 0;
  padding-left: 10px;
}
#top #sec06 .contentsList li h4{
  margin-bottom: 5px;
}
#top #sec06 .contentsList li .leftPh,
#top #sec07 .contentsList li .leftPh{
  position: relative;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
#top #sec06 .contentsList li .leftPh span{
  position: absolute;
  display: block;
  width: 24px;
  text-align: center;
  background: #3b4046;
  top: 0;
  left: 0;
  color: #fff;
  font-size: 10px;
  line-height: 1;
  padding: 7px 0;
}
#top #sec06 .contentsList li:nth-child(1) .leftPh span{
  background: #fb4d37;
}
#top #sec06 .contentsList li:last-child{
  border-bottom: 0;
}

#top #sec07 h3{
  background: #f3e6f2;
  border: 0;
  padding-left: 10px;
}
#top #sec07 .contentsList li h4{
  margin-bottom: 5px;
}
#top #sec07 .contentsList li:last-child{
  border-bottom: 0;
}

#top #sec08{
  background: #1969bf;
  padding: 15px 10px 20px;
  color: #fff;
}
#top #sec08 h3{
  font-size: 14px;
  margin-bottom: 10px;
}

#top #sec08 #map{
  height: 190px;
  width: 100%;
  margin-bottom: 15px;
}
#top #sec08 dl{
  display: table;
  width: 100%;
  table-layout: fixed;
  border-bottom: 1px solid #619bd8;
  padding: 10px 0;
}
#top #sec08 dl:nth-child(3){
  border-top: 1px solid #619bd8;
}
#top #sec08 dl dt{
  display: table-cell;
  width: 85px;
  padding-left: 5px;
}
#top #sec08 dl dd{
  display: table-cell;
}
#top #sec08 dl dd p{
  color: #fff;
}
#top #sec08 dl dd p + p{
  margin-top: 1em;
}

#top #sec08 > a{
  display: block;
  text-align: center;
  color: #fff;
  text-decoration: none;
  padding: 12px 30px;
  width: 66%;
  margin: 20px auto 0;
  border: 1px solid #fff;
  font-size: 13px;
  position: relative;

}
#top #sec08 > a:after{
  display: block;
  position: absolute;
  top: 50%;
  right: 15px;
  content: "";
  background: url(../../img/sp/common/bg_yaji03.png) 0 0 no-repeat;
  background-size: 15px 15px;
  width: 15px;
  height: 15px;
  vertical-align:text-bottom;
  margin-top: -7px;
}

#top #sec10 .specialBanner{
  margin-left: 10px;
  margin-right: 10px;
}
#top #sec10 .specialBanner a{
  margin-bottom: 20px;
}
#top #sec10 .specialBanner a img{
  width: 100%;
  height: auto;
}

#top #eventspace{
  text-align:center;
  background: #f2f2f2;
  padding-bottom: 15px;
}
#top #eventspace p{
  padding:10px 0;
  background: #fff;
}

#top #facebook{
  padding: 15px 0;
  width: 300px;
  margin: 0 auto;
}

/*top class*/
#top .topTitle{
  border-top: 1px solid #adc4dd;
  padding: 15px 0 15px 32px;
  font-family: 'Titillium Web';
  font-weight: 600;
  font-size: 15px;
}
#top .topTitle span{
  padding-left: 10px;
  font-size: 9px;
}
#top .contentsList{
  border-top: 1px solid #f2f2f2;
}
#top .contentsList li{
  border-bottom: 1px solid #c2c2c2;
  background: #fff;
}
#top .contentsList li a{
  display: table;
  padding: 15px;
  position: relative;
  text-decoration: none;
  width: 100%;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  -webkit-justify-content: space-between;
  justify-content: space-between;
}
#top .contentsList li a:after{
  position: absolute;
  content:"";
  display: block;
  background: url(../../img/sp/common/bg_yaji02.png) 0 0 no-repeat;
  background-size: 6px 10px;
  width: 6px;
  height: 10px;
  top: 50%;
  right: 15px;
  margin-top: -5px;
}
#top .contentsList li .leftPh{
  width: 80px;
  height: 80px;
  vertical-align: middle;
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}
#top #sec05 .contentsList li .leftPh{
  height: auto;
}
#top .contentsList li .leftPh img{
  width: 100%;
  height: auto;
}
#top .contentsList li .rightPh{
  padding: 0 20px;
  width: calc(100% - 80px);
}

#top .contentsList li h4{
  font-size: 11px;
  color: #333;
  margin-bottom: 10px;
}
#top .contentsList li h4:last-child{
  margin-bottom: 0;
}

#top .contentsList li h4 + div{
  margin-bottom: 10px;
  display: flex;
  align-items: flex-start;
}

#top .contentsList li .eventTag{
  display: inline-block;
  font-size: 10px;
  color: #fff;
  background: #fd783e;
  padding: 2px 3px;
  width: 50px;
  text-align: center;
}

#top .contentsList li .period{
  display: inline-block;
  font-size: 10px;
  padding-left: 10px;
  width: calc(100% - 50px)
}

#top.otherlang .contentsList li .period{
  margin-top: 5px;
}

#top .contentsList li .update{
  font-size: 8px;
  color:#666;
  text-align:right;
}
#top .contentsList li .recoTitle{
  color: #003e72;
}
#top .contentsList li .shopname{
  margin-bottom: 10px;
  color: #003e72;
  font-size: 11px;
  font-family: 'Titillium Web';
  font-weight: 400;
}
#top .contentsList li .rankTxt{
  margin-bottom: 10px;
  font-size: 10px;
}
#top .contentsList li .shopInfo{
  font-size: 10px;
  color: #003e72;
}

#topSearchBtn.active{
  box-shadow:none;
  -moz-box-shadow:none;
  -webkit-box-shadow:none;
}

#top #topSearch{
  background: #fff;
  text-align: left;
  display: none;
}
#top #topSearch .list01 li{
  border-bottom: 1px solid #f2f2f2;
}
#top #topSearch .list01 li a{
  display: block;
  text-decoration: none;
  padding: 20px 25px 20px 10px;
  line-height: 1;
  color: #003e72;
  position: relative;
}
#top #topSearch .list01 li a:after{
  display: block;
  content: '';
  background-image: url(../../img/sp/common/bg_yaji01.png);
  background-size: 15px 15px;
  width: 15px;
  height: 15px;
  position: absolute;
  top: 50%;
  margin-top: -7px;
  right: 10px;
}
#top #topSearch .list02{
  text-align: center;
  padding: 10px 5px 0;
}
#top #topSearch .list02 li{
  display: inline-block;
  width: 30%;
  margin: 0 1% 10px;
}
#top #topSearch .list02 li a{
  display: block;
  text-decoration: none;
  border: 1px solid #d2d2d2;
  padding: 20px 0;
  background: #e8e8e8;
  color: #003e72;
}

/*other lang*/
#top #sec01b{
  padding: 15px 10px;
  background: #f2f2f2;
}
#top #sec01b > a{
  color: #fff;
  font-size: 14px;
  background: #34ada3;
  position: relative;
  padding-left: 30px;
  padding-right: 30px;
  display: block;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 15px;
  text-decoration: none;
  border-radius: 3px;
  padding-top: 12px;
  padding-bottom: 12px;
  text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.6);
  text-align: center;
}
#top #sec01b > a:after{
  display: block;
  position: absolute;
  top: 50%;
  right: 15px;
  content: "";
  background: url(../../img/sp/common/bg_yaji06.png) 0 0 no-repeat;
  background-size: 15px 15px;
  width: 15px;
  height: 15px;
  vertical-align:text-bottom;
  margin-top: -7px;
}
#top #sec01b ul li{
  margin-bottom: 10px;
}
#top #sec01b ul li img{
  width: 100%;
  height: auto;
}
#top .youtube_wrap{
  position: relative;
  height: 0;
  padding: 30px 0 56.25%;
  overflow: hidden;
  width: calc(100% - 10px);
  margin: 0 auto 5px;
}
#top .youtube_wrap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}



/*news
----------------------------------------------------------------------------------------------*/
#news .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_news.png);
}

#news #newsDetail{
  padding: 15px 10px;
  border-bottom: 1px solid #c2c2c2;
}
#news #newsDetail .eventTag{
  display: inline-block;
  font-size: 10px;
  color: #fff;
  background: #fd783e;
  padding: 2px 3px;
}
#news #newsDetail .period{
  display: inline-block;
  font-size: 11px;
  padding-left: 10px;
}

#news #newsDetail .image01{
  margin-bottom: 15px;
}
#news #newsDetail h4{
  font-size: 13px;
  margin-bottom: 10px;
}
#news #newsDetail h5{
  font-size: 13px;
  margin-bottom: 10px;
}
#news #newsDetail > p{
  font-size: 11px;
  color: #4f4f4f;
}
#news #newsDetail > p + h5{
  margin-top: 20px;
}
#news #newsDetail > p + p{
  margin-top: 1em;
}
#news #newsDetail .news_video{
  margin-top: 10px;
}
#news #newsDetail .news_video video{
  max-width: 100%;
}


/*floorguide
----------------------------------------------------------------------------------------------*/
#floorguide .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_floorguide.png);
}

#floorguide #floorTitle p{
  float: left;
  padding: 10px 0;
  text-align: center;
  color: #fff;
}
#floorguide #floorTitle p:nth-child(1){
  width: 25%;
  background: #af4751;
}
#floorguide #floorTitle p:nth-child(2){
  width: 25%;
  background: #1b81b8;
}
#floorguide #floorTitle p:nth-child(3){
  width: 50%;
  background: #64ab51;
}
#floorguide #floorLink{
  margin-bottom: 15px;
}
#floorguide #floorLink a{
  text-decoration: none;
}
#floorguide #floorLink li{
  border-bottom: 1px solid #fff;
}
#floorguide #floorLink table{
  width: 100%;
  border-bottom: 1px solid #d7d7d7;
}
#floorguide #floorLink table tr th{
  vertical-align: middle;
  font-size: 11px;
  font-weight: bold;
  text-align: center;
  background: #ededed;
  width: 9%;
}
#floorguide #floorLink table tr td:nth-child(2){
  width: 41%;
  padding: 10px 15px;
  color: #af4751;
  color: #333;
}
#floorguide #floorLink table tr td:nth-child(3){
  width: 41%;
  padding: 10px 15px;
  color: #067630;
  color: #333;
}
#floorguide #floorLink table tr td:nth-child(4){
  width: 9%;
  vertical-align: middle;
  background: #f5f5f5;
  text-align: center;
  font-size: 11px;
  font-weight: bold;
  color:#106023;
}

#floorguide #floorLink table tr td:nth-child(4) img{
  vertical-align: middle;
}


/*floormap
----------------------------------------------------------------------------------------------*/
#floormap .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_floormap.png);
}
.floorBtnList li{
  width: 15.8%;
  margin-right: 1%;
  float: left;
}
.floorBtnList li:nth-child(6n){
  margin-right: 0;
}
.floorBtnList li a{
  text-decoration: none;
  display: block;
  text-align: center;
  color: #003e72;
  font-size: 13px;
  border: 1px solid #bcbcbc;
  padding: 15px 0;
  background: #f0f2f4;
}
.floorBtnList li.active a{
  color: #fff;
  background: #3784d6;
  border: 1px solid #3784d6;
}

/*gourmet
----------------------------------------------------------------------------------------------*/
#gourmet .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_gourmet.png);
}
#gourmet .contentsTitle01.shopping{
  background-image: url(../../img/sp/common/icon_title_shopping.png);
}
#gourmet .contentsTitle01.service{
  background-image: url(../../img/sp/common/icon_title_service.png);
}

/*search
----------------------------------------------------------------------------------------------*/
#search .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_search.png);
}

/*cinema
----------------------------------------------------------------------------------------------*/
#cinema .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_cinema.png);
}

#cinema .cinemaImage{
  width: 60%;
  margin: 0 auto 20px;
}
#cinema .cinemaTitle01{
  color: #0f5a36;
  border-bottom: 1px solid #0f5a36;
  padding-bottom: 5px;
  margin-bottom: 10px;
}
#cinema .cinemaImageList{
  text-align: center;
  margin-bottom: 15px;
}
#cinema .cinemaImageList li{
  display: inline-block;
  width: 40%;
  margin: 0 1%;
}
#cinema .cinemaImageList li img{
  width: 100%;
  height: auto;
}

/*aquaday
----------------------------------------------------------------------------------------------*/
#aquaday .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_aquaday.png);
}

/*bus coupon
----------------------------------------------------------------------------------------------*/
#busCoupon .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_buscoupon.png);
}

#busCoupon #couponInfo{
  display: table;
  width: 100%;
  table-layout: fixed;
  margin-bottom: 15px;
}
#busCoupon #couponInfo .leftPh{
  display: table-cell;;
  width: 130px;
}
#busCoupon #couponInfo .rightPh{
  display: table-cell;;
}

#busCoupon #couponInfo .txt01{
  font-weight: bold;
  margin-bottom: 5px;
}
#busCoupon #couponInfo .txt02{
  font-size: 10px;
}
#busCoupon #couponInfo .txt02 span{
  font-size: 12px;
  color: #f22f2f;
}
#busCoupon #couponInfo h4{
  color: #2386a7;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: 10px;
}

#busCoupon .couponBox01{
  padding: 10px;
  background: #dd5150;
}
#busCoupon .couponBox01 p{
  color: #fff;
}

/*card
----------------------------------------------------------------------------------------------*/
#card .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_card.png);
}
#card #cardInfo{
  display: table;
  width: 100%;
  table-layout: fixed;
  margin-bottom: 15px;
}
#card #cardInfo .leftPh{
  display: table-cell;;
  width: 145px;
}
#card #cardInfo .rightPh{
  display: table-cell;;
}


/*card
----------------------------------------------------------------------------------------------*/
#recruit .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_recruit.png);
}

#recruit ul li{
  padding: 15px 10px;
  border-bottom: 1px solid #c2c2c2;
}
#recruit ul li:last-child{
  border-bottom: 0;
}
#recruit ul li h4{
  font-size: 14px;
  margin-bottom: 5px;
  font-weight:bold;
}
#recruit ul li > p{
  font-size: 10px;
  margin-bottom: 15px;
  color: #505050;
}

#recruit dl + dl{
  margin-top: 10px;
}

#recruit dl dt{
  background-color: #eee;
  padding: 7px;
  margin-bottom: 10px;
}

#recruit dl dd{
  padding-left: 10px;
  padding-right: 10px;
}


/*shop
----------------------------------------------------------------------------------------------*/
#shop .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_shop.png);
}

#shop #shopnameBox{
  display: table;
  width: 100%;
  table-layout: fixed;
  padding: 10px 15px;
  border-bottom: 1px solid #c2c2c2;
}
#shop #shopnameBox .floor{
  display: table-cell;
  width: 55px;
  border: 1px solid #1b5ba1;
  vertical-align: middle;
  text-align: center;
  font-size: 13px;
  color: #1b5ba1;
}
#shop #shopnameBox .rightPh{
  padding-left: 15px;
}
#shop #shopnameBox .rightPh h4{
  font-size: 13px;
  margin-bottom: 2px;
}
#shop #shopnameBox .rightPh p{
  font-size: 10px;
  color: #4f4f4f;
}

#shop .statusList li{
  margin-bottom: 10px;
}
#shop .statusList li img{
  display: inline-block;
  vertical-align: middle;
  margin-right: 10px;
}
#shop .statusList li:last-child{
  margin-bottom: 0;
}

#shop #aquadayBox{
  background-color: #e6f5fb;
  padding: 15px 10px;
  border-bottom: 1px solid #bcbcbc;
}
#shop #aquadayBox h4{
  color: #fff;
  background-color: #3784d6;
  padding: 10px;
  font-size: 14px;
}
#shop #aquadayBox .boxIn{
  background: #fff;
  padding: 15px 10px;
  border-bottom: 1px solid #e6f5fb;
}

#shop #cardBox{
  background-color: #f5cece;
  padding: 15px 10px;
  border-bottom: 1px solid #bcbcbc;
}
#shop #cardBox h4{
  color: #fff;
  background-color: #d64237;
  padding: 10px;
  font-size: 14px;
}
#shop #cardBox .boxIn{
  background: #fff;
  padding: 15px 10px;
  border-bottom: 1px solid #f5cece;
}


#shop #aquadayBox .serviceBox,
#shop #cardBox .serviceBox{
  border: 1px solid #bcbcbc;
  padding: 10px;
  }
  #shop #aquadayBox .serviceBox strong,
  #shop #cardBox .serviceBox strong{
    color: #f22f2f;
    font-weight: bold;
    }
#shop #aquadayBox p + p,
#shop #cardBox p + p{
  margin-top: 10px;
}
#shop #aquadayBox a,
#shop #cardBox a{
  position: relative;
  display: block;
  color: #003e72;
  padding: 10px 30px 10px 10px;
  background: #fff;
}
#shop #aquadayBox a:after,
#shop #cardBox a:after{
  position: absolute;
  content: "";
  display: block;
  background: url(../../img/sp/common/bg_yaji02.png) 0 0 no-repeat;
  background-size: 6px 10px;
  width: 6px;
  height: 10px;
  top: 50%;
  right: 15px;
  margin-top: -5px;
}


/*special
----------------------------------------------------------------------------------------------*/
#special img {
  display: block;
  width: 100%;
  height: auto;"
}
#special #another_special {
  padding: 15px 10px 15px;
}
#special #another_special a {
  width: 49%;
}
#special #another_special a:nth-child(odd) {
  float: left;
}
#special #another_special a:nth-child(even) {
  float: right;
}
#special #another_special a:nth-child(n+3) {
  margin-top: 7px;
}
#special #another_special img {
  width :100%;
  height: auto;
}


/*foodcourt
----------------------------------------------------------------------------------------------*/
#foodcourt .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_foodcourt.png);
}
#foodcourt img{
  width: 100%;
  margin: auto;
}
#foodcourt section + section{
  border-top: 1px solid #d1dd3d;
  margin-top: 15px;
  padding-top: 15px;
}

#foodcourt .captionBox{
  background: #f9feb6;
  padding: 15px 10px;
  margin-bottom: 15px;
}
#foodcourt section .title01{
  font-size: 13px;
  margin-bottom: 10px;
}
#foodcourt section p + .title01{
  margin-top: 15px;
}
#foodcourt .shopname{
  display: table;
  width: 100%;
  table-layout: fixed;
  margin-bottom: 15px;
}
#foodcourt .shopname .logo{
  display: table-cell;
  vertical-align: top;
  width: 50px;
}
#foodcourt section:nth-child(5) .shopname .logo,
#foodcourt section:nth-child(6) .shopname .logo,
#foodcourt section:nth-child(7) .shopname .logo,
#foodcourt section:nth-child(8) .shopname .logo{
  width: 100px;
}
#foodcourt .shopname .rightPh{
  display: table-cell;
  vertical-align: top;
  padding-left: 15px;
}
#foodcourt .shopname .rightPh h4{
  font-size: 13px;
  margin-bottom: 2px;
}
#foodcourt .shopname .rightPh p{
  font-size: 11px;
  color: #505050;
}
#foodcourt .txt01{
  margin-bottom: 15px;
}
#foodcourt figure{
  margin-bottom: 15px;
}
#foodcourt figure img{
  display: block;
  margin-bottom: 10px;
}
#foodcourt figure figcaption{
  font-size: 10px;
}
#foodcourt .rightLink01{
  margin-top: 10px;
}




/*promo
----------------------------------------------------------------------------------------------*/
#promo img{
	width:100%;
	height:auto;
}
#promo .contents{
	border-top:solid 7px #00448d;
}
#promo .bt{
	padding-top: 20px;
	border-top: solid 7px #00c3ec;
}
#promo h3{
	margin:0 auto 20px; width:80%;
}
#promo h3 img{
	width:100%;
}
#promo .box1,#promo .box2,#promo .box3{
	margin-bottom: 20px;
}
#promo .foot .icon,#promo .foot ul{
	float:left;
}
#promo .foot .logo{
	border-bottom:solid 7px #00c3ec;
	text-align:center;
}
#promo .foot .logo img{
	width:277px;
	margin: 20px auto;
}
#promo .foot .trainWrap{
	border-top:solid 7px #00448d;
	padding: 20px 0;
}
#promo .foot .train{
	width:320px;
	margin: auto;
	color:#00448d;
}
#promo .foot .train .icon img{
	width:60px;
}
#promo .foot .train ul{
	margin-left: 10px;
	margin-top: 10px;
}
#promo .foot .train li{
	font-size:1.1rem;
}




/*toyo ramen kokugikan
----------------------------------------------------------------------------------------------*/
#toyoRarmen .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_ramen.png);
}
#toyoRarmen .paddingBox01{
  background-color: #f4e9d4;
}
#toyoRarmen img{
  width: 100%;
  height: auto;
}
#toyoRarmen section + section{
  border-top: 1px solid #bcbcbc;
  margin-top: 15px;
  padding-top: 15px;
}

#toyoRarmen .captionBox{
  background: #faf4ea;
  padding: 15px 10px;
  margin-bottom: 15px;
}
#toyoRarmen section .title01{
  font-size: 13px;
  margin-bottom: 10px;
}
#toyoRarmen section p + .title01{
  margin-top: 15px;
}
#toyoRarmen .shopname{
  display: table;
  width: 100%;
  table-layout: fixed;
  margin-bottom: 15px;
}
#toyoRarmen .shopname .logo{
  display: table-cell;
  vertical-align: top;
  width: 72px;
}
#toyoRarmen section:nth-child(2) .shopname .logo{
  width: 55px;
}
#toyoRarmen section:nth-child(3) .shopname .logo,
#toyoRarmen section:nth-child(4) .shopname .logo{
  width: 32px;
}
#toyoRarmen .shopname .rightPh{
  display: table-cell;
  vertical-align: top;
  padding-left: 15px;
}
#toyoRarmen .shopname .rightPh h4{
  font-size: 13px;
  margin-bottom: 2px;
}
#toyoRarmen .shopname .rightPh p{
  font-size: 11px;
  color: #505050;
}
#toyoRarmen .txt01{
  margin-bottom: 15px;
}
#toyoRarmen figure{
  margin-bottom: 15px;
}
#toyoRarmen figure img{
  display: block;
  margin-bottom: 10px;
}
#toyoRarmen figure figcaption{
  font-size: 10px;
}
#toyoRarmen .rightLink01{
  margin-top: 10px;
}

/*ramen_1903
----------------------------------------------------------------------------------------------*/
#tokyoRarmen .ramen_wrap{
	font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
.ramen_wrap{
	background: url(/img/sp/tokyo_ramen/ramen_wrap_bg.jpg);
	padding-bottom: 20px;
}
.ramen_topics_wrap{
	padding: 0 10px;
}
#toyoRarmen .ramen_topics_ttl img{
    width: 80px;
    display: block;
    margin: auto;
    padding: 25px 0;
}
.ramen_topics_ttl,
.ramen_menu_ttl{
	position: relative;
}
.ramen_topics_ttl::before {
    content: "";
    background: url(/img/pc/tokyo_ramen/ramen_topics_ttl_bg.png) repeat-x;
    background-size: contain;
    position: absolute;
    width: 36%;
    height: 8px;
    top: 52px;
    left: 0;
}
.ramen_topics_ttl::after {
    content: "";
    background: url(/img/pc/tokyo_ramen/ramen_topics_ttl_bg.png) repeat-x;
    background-size: contain;
    position: absolute;
    width: 36%;
    height: 8px;
    top: 52px;
    right: 0;
}
#toyoRarmen .ramen_menu_ttl img{
    width: 119px;
    display: block;
    margin: auto;
    padding: 25px 0;
}
.ramen_menu_ttl{
    width: calc(100% - 20px);
    margin: auto;
}
.ramen_menu_ttl::before {
    content: "";
    background: url(/img/pc/tokyo_ramen/ramen_topics_ttl_bg.png) repeat-x;
    background-size: contain;
    position: absolute;
    width: 31%;
    height: 8px;
    top: 52px;
    left: 0;
}
.ramen_menu_ttl::after {
    content: "";
    background: url(/img/pc/tokyo_ramen/ramen_topics_ttl_bg.png) repeat-x;
    background-size: contain;
    position: absolute;
    width: 31%;
    height: 8px;
    top: 52px;
    right: 0;
}
.ramen_wrap .subTitle{
	background: #640000;
	color: #fff;
	padding: 10px;
	font-weight: bold;
}
.ramen_topics_list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.ramen_topics_list li{
	width: 48%;
	color: #fff;
	display: flex;
	flex-wrap: wrap;
}
.ramen_topics_list li a{
	color: #fff;
    text-decoration: none;
    transition: .3s;
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    align-content: space-between;
}
.ramen_topics_list li a div{
	width: 100%;
}
.ramen_topics_list_img{
    width: 100%;
    height: 45vw;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    margin-bottom: 10px;
}
.ramen_topics_list_name{
	margin-bottom: 10px;
	width: 100%;
}
.ramen_topics_list_shop{
	margin-bottom: 10px;
	width: 100%;
}
.ramen_topics_list_date{
	text-align: right;
	margin-bottom: 20px;
	width: 100%;
}
.ramen_read h4{
    color: #fff;
    text-align: center;
    padding-top: 8px;
    font-weight: bold;
    background: url(/img/pc/tokyo_ramen/ramen_h4_bg.png) no-repeat center center;
    background-size: contain;
    height: 4vh;
    margin: 15px auto 10px;
    font-size: 3vw;
}
.ramen_read p{
	color: #fff;
	padding: 0 10px;
	line-height: 1.7;
    font-size: 2.6vw;
}
.ramen_bnr_wrap{
	padding: 0 10px;
	margin-bottom: 20px;
}
.ramen_bnr_wrap a{
	width: 100%;
	display: block;
	margin-bottom: 10px;
}
.ramen_shop_list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 0 10px;
	margin-bottom: 30px;
}
.ramen_shop_li{
	width: 48%;
	background-color: #fff;
	border: 1px solid #f2eabb;
	padding: 0 10px;
	margin-bottom: 20px;
	position: relative;
}
.ramen_shop_li::before{
	position: absolute;
	content: "";
	background: url(/img/pc/tokyo_ramen/ramen_shop_list_deco.png) no-repeat;
	background-size: 100%;
	width: 14px;
	height: 14px;
	transform: rotate(180deg);
	bottom: 3px;
	left: 3px;
}
.ramen_shop_li::after{
	position: absolute;
	content: "";
	background: url(/img/pc/tokyo_ramen/ramen_shop_list_deco.png) no-repeat;
	background-size: 100%;
	width: 14px;
	height: 14px;
	transform: rotate(-270deg);
	bottom: 3px;
	right: 3px;
}
.ramen_shop_name {
    font-weight: bold;
    text-align: center;
    padding: 15px 0 10px;
    position: relative;
	font-size: 2.2vw;
}
.ramen_shop_name::before{
	position: absolute;
	content: "";
	background: url(/img/pc/tokyo_ramen/ramen_shop_list_deco.png) no-repeat;
	background-size: 100%;
	width: 14px;
	height: 14px;
	transform: rotate(-90deg);
	top: 3px;
	left: -8px;
}
.ramen_shop_name::after{
	position: absolute;
	content: "";
	background: url(/img/pc/tokyo_ramen/ramen_shop_list_deco.png) no-repeat;
	background-size: 100%;
	width: 14px;
	height: 14px;
	top: 3px;
	right: -8px;
}
.ramen_shop_img{
	margin-bottom: 10px;
}
.ramen_shop_ramen{
	margin-bottom: 5px;
	font-weight: bold;
	color: #cf0016;
	font-size: 2.2vw;
}
.ramen_shop_ramen_txt{
	font-size: 2.1vw;
	line-height: 1.6;
	height: 19vh;
}
.ramen_shop_comment{
	background: url(/img/pc/tokyo_ramen/ramen_shop_comment_bg.png);
	padding: 10px;
	margin-bottom: 20px;
}
.ramen_shop_comment_ttl{
    font-weight: bold;
    text-align: center;
    padding-bottom: 8px;
    border-bottom: 1px solid #333;
    margin-bottom: 10px;
    font-size: 2.2vw;
}
.ramen_shop_comment_sm_flex{
	display: flex;
	margin-bottom: 7px;
}
.ramen_shop_comment_sm_img{
	width: 40%;
	margin-right: 4%;
}
.ramen_shop_comment_sm_detail{
	width: 56%;
}
.ramen_shop_comment_sm_detail li{
	font-size: 2.1vw;
}
.ramen_shop_comment_txt{
	font-size: 2.2vw;
	line-height: 1.5;
}
.ramen_shop_btn a{
    display: block;
    text-decoration: none;
    border: 1px solid #333;
    color: #333;
    text-align: center;
    padding: 10px;
    border-radius: 3px;
    width: 100%;
    margin: 0 auto 25px;
    font-size: 2.1vw;
    font-weight: bold;
    position: relative;
    transition: .3s;
}
.ramen_shop_btn a::after{
	position: absolute;
	content: "";
	background: url(/img/pc/tokyo_ramen/ramen_shop_btn_arrow.png) no-repeat;
	background-size: contain;
    width: 12px;
    height: 100%;
    right: 2vw;
    top: 2vh;
	transition: .3s;
}
.ramen_map_wrap{
    background: #fff;
    margin: 0 10px;
    padding: 10px 15px;
    border-top: 2px solid #ccb75a;
}
.ramen_map_ttl{
    padding-bottom: 10px;
    border-bottom: 1px solid #333;
    margin-bottom: 15px;
}
.ramen_map_read,
.ramen_map_detail{
	line-height: 1.8;
	margin-bottom: 10px;
	font-size: 3.2vw;
}
.ramen_map_detail span,
.ramen_map_detail a{
  display: block;
  font-size: 3vw;
}
.ramen_map_detail a{
  margin-left: 3vw;
}
.ramen_movie_wrap p{
    margin: 30px 10px 20px;
    font-size: 3.5vw;
    text-align: left;
    color: #fff;
    line-height: 1.6;
}
.ramen_movie{
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  margin: 0 auto 30px;
  width: calc(100% - 20px);
}
.ramen_movie iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.ramen_movie_wrap .ramen_shop_btn{
	width: 50%;
	margin: auto;
}
.ramen_movie_wrap .ramen_shop_btn a{
	background-color: #fff;
	padding: 15px 10px;
}
.ramen_shop_btn a::after{
	top: 4.5vw;
}


.ramen_centerBnr{
  padding: 0 10px;
}


/*access
----------------------------------------------------------------------------------------------*/
#access .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_access.png);
}

#access .accessTable01{
  width: 100%;
}
#access .accessTable01 th{
  width: 50%;
  text-align: left;
  padding-bottom: 5px;
}
#access .accessTable01 td{
  width: 50%;
  text-align: right;
  padding-bottom: 5px;
  vertical-align: bottom;
}
#access .accessTable01 tr:last-child th,
#access .accessTable01 tr:last-child td{
  padding-bottom: 0;
}

#access .accessFlow{
  padding: 15px 0;
}
#access .accessFlow ol li + li{
  padding-top: 35px;
  background: url(../../img/sp/common/bg_flow01.png) center 7px no-repeat;
  background-size: 13px 19px;
}
#access .accessFlow ol li p:nth-child(1){
  font-size: 14px;
  background: #fff;
  border: 1px solid #b2cfed;
  padding: 15px 10px;
  text-align: center;
  width: 65%;
  margin: 0 auto;
}
#access .accessFlow ol li p:nth-child(2){
  text-align: center;
  font-size: 11px;
  color: #ff3131;
  margin-top: 5px;
}
#access .accessFlow ol li:last-child p:nth-child(1){
  background: #1866ba;
  border: 1px solid #1866ba;
  color: #fff;
}

/*access parking
----------------------------------------------------------------------------------------------*/
#accessParking .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_access_parking.png);
}

#accessParking .table01{
  width: 100%;
  border: 1px solid #b5c6d8;
}
#accessParking .table01 th{
  width: 20%;
  border: 1px solid #b5c6d8;
  background: #e7eef8;
  color: #00459b;
  font-size: 11px;
  padding: 8px;
  text-align: left;
}
#accessParking .table01 td{
  border: 1px solid #b5c6d8;
  font-size: 11px;
  padding: 8px;
}
#accessParking .table01 td span{
  font-size: 9px;
}
#accessParking .w60{width:60%;}

/*access freebus
----------------------------------------------------------------------------------------------*/
#accessBus .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_access_bus.png);
}

#accessBus .courseFlow li + li{
  padding-top: 35px;
  background: url(../../img/sp/common/bg_flow01.png) center 7px no-repeat;
  background-size: 13px 19px;
}
#accessBus .courseFlow li p{
  font-size: 14px;
  background: #fff;
  border: 1px solid #b2cfed;
  padding: 15px 10px;
  text-align: center;
  color: #013b7a;
}
#accessBus .courseFlow li:first-child p,
#accessBus .courseFlow li:last-child p{
  border: 1px solid #1866ba;
}


/*facility
----------------------------------------------------------------------------------------------*/
#facility .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_facility.png);
}
#facility #root h5{
  font-weight:bold;
  margin-top:10px;
}

/*facility about
----------------------------------------------------------------------------------------------*/
#facilityAbout .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_facility_about.png);
}
#facilityAbout .image01{
  border: 1px solid #c2c2c2;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
}
#facilityAbout img{
  display: block;
  width: 100%;
  height: auto;
}

/*facility child
----------------------------------------------------------------------------------------------*/
#facilityChild .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_facility_child.png);
}
#facilityChild .image01{
  width: 90%;
  margin: 0 auto;
}
#facilityChild .image02{
  width: 80%;
  margin: 0 auto;
}
#facilityChild img{
  display: block;
  width: 100%;
  height: auto;
}

/*facility pet
----------------------------------------------------------------------------------------------*/
#facilityPet .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_facility_pet.png);
}

/*facility Barrier free
----------------------------------------------------------------------------------------------*/
#facilityBarrierfree .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_facility_barrierfree.png);
}

/*facility travel
----------------------------------------------------------------------------------------------*/
#facilityTravel .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_facility_travel.png);
}
#facilityTravel .image01{
  width: 90%;
  margin: 0 auto;
  height: auto;
  display: block;
}

/*facility group
----------------------------------------------------------------------------------------------*/
#facilityGroup .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_facility_group.png);
}
#facilityGroup .image01{
  width: 90%;
  margin: 0 auto;
  height: auto;
  display: block;
}


#facilityGroup .group__contact_downloads{
  margin: 20px auto;
}
#facilityGroup .group__contact_downloads>div{
  width: 100%;
  margin: 10px auto;
}
#facilityGroup .group__contact_downloads>div a{
    background-color: #2169b6;
    background-image: url(/img/pc/facility/group/icon_pdf.png);
    background-repeat: no-repeat;
    background-position: left 15px center;
    color: #fff;
    display: block;
    padding: 16px;
    text-align: center;
    text-decoration: none;
    transition: opacity 250ms;
    background-size: 16px;
    border-radius: 3px;
    box-shadow: 0 3px 0px #b8b8b8;
}

/*contact
----------------------------------------------------------------------------------------------*/
#contact .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_contact.png);
}

/*privacy
----------------------------------------------------------------------------------------------*/
#privacy .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_privacy.png);
}
#privacy .indentList1em li + li{
  margin-top: 10px;
}

/*sitepolicy
----------------------------------------------------------------------------------------------*/
#sitepolicy .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_sitepolicy.png);
}
/*wifi
----------------------------------------------------------------------------------------------*/
#wifi .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_wifi.png);
}


/*taxfree
----------------------------------------------------------------------------------------------*/
#taxfree .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_taxfree.png);
  font-weight: bold;
}

#taxfree .linkList01 li .title01{
  color: #333;
}

#taxfree *{
  font-family: 'Titillium Web';
}

.tax_table {
  display: table;
  vertical-align:top;
  width: 100%;
}
.taxImage,
.taxText {
  display: table-cell;
}
.taxImage {
  width: 120px;
}
.taxText{
  padding-left: 10px;
}

.taxFreeIcon img {
  max-width: 208px;
}

/*passport
----------------------------------------------------------------------------------------------*/
#passport .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_passport.png);
  background-position:10px 16px;
  font-weight: bold;
}
#passport .contentsTitle02{
  font-weight: bold;
}
#passport .linkList03 a .title01{
  font-weight: bold;
  color: #333;
}

#passport *{
  font-family: 'Titillium Web';
}
/*brands
----------------------------------------------------------------------------------------------*/
#brands .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_brands.png);
  background-position:10px 16px;
  font-weight: bold;
}
#brands .contentsTitle02{
  font-weight: bold;
}
#brands .linkList03 a .title01{
  font-weight: bold;
  color: #333;
}

#brands *{
  font-family: 'Titillium Web';
}
/*brands
----------------------------------------------------------------------------------------------*/
#eventspace .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_facility_eventspace.png);
  background-position:10px 16px;
}
#eventspace .image01{
  border: 1px solid #c2c2c2;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
}
#eventspace .image01 img{
  width: 100%;
  height: auto;
}
#eventspace .list01 li{
  float: left;
  width: 48%;
  margin-right: 4%;
  margin-bottom: 10px;
}
#eventspace .list01 li img{
  width: 100%;
  height: auto;
  display: block;
  margin-bottom: 5px;
}
#eventspace .list01 li:nth-child(2n){
  margin-right: 0;
}

#eventspace .eventspace__contact_wrap{
  background-color: #e8f1fa;
  padding: 15px 10px;
  text-align: center;
}
#eventspace .eventspace__contact_text{
  margin-bottom: 10px;
}
#eventspace .eventspace__contact_downloads{
}
#eventspace .eventspace__contact_downloads>div{
  margin: 5px 0;
}

#eventspace .eventspace__contact_download a{
  background-color: #2169b6;
  background-image: url(/img/sp/facility/eventspace/icon_xlsx.png);
  background-repeat: no-repeat;
  background-position: left 10px center;
  background-size: 16px;
  color: #fff;
  display: block;
  padding: 10px;
  text-align: center;
  text-decoration: none;
  transition: opacity 250ms;
  border-radius: 3px;
  box-shadow: 0 3px 0px #b8b8b8;
}
#eventspace .eventspace__contact_mail{
  padding-top: 35px;
  background-image: url(/img/sp/facility/eventspace/icon_down.png);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 40px 23px;
  margin: 15px auto 0 auto;
}
#eventspace .eventspace__contact_mail a{
  background-color: #2169b6;
  background-image: url(/img/sp/facility/eventspace/icon_mail.png);
  background-repeat: no-repeat;
  background-position: left 10px center;
  background-size: 16px;
  color: #fff;
  display: block;
  padding: 10px;
  text-align: center;
  text-decoration: none;
  transition: opacity 250ms;
  border-radius: 3px;
  box-shadow: 0 3px 0px #b8b8b8;
}

/*ses
----------------------------------------------------------------------------------------------*/
#ses .contentsTitle01{
  background-image: url(../../img/sp/common/icon_title_ses.png);
}
#ses .image{
  display: block;
  width: 90%;
  border: 1px solid #c2c2c2;
  margin-left: auto;
  margin-right: auto;
  height: auto;
}
#ses .sesEvent h6{
  color: #0f5a36;
  padding: 15px 10px;
}
#ses .sesEvent h5{
  padding: 15px 10px;
  font-weight:bold;
  font-size:14px;
  border-bottom: 1px solid #c2c2c2;
}
#ses .sesEvent .bLBox{
  border-bottom: 1px solid #c2c2c2;
}
#ses .sesEvent .eventLink{
    text-align: center;
    margin: 20px 0;
}
#ses .greyMargin > *{
  border-bottom:0;
}
#ses .greyMargin{
  padding-bottom:0;
}
/*close List
----------------------------------------------------------------------------------------------*/

.closelist {
  width: 100%;
  height: 100%;
  padding: 15px;
}

.closelist .title02 {
  font-weight: bold;
  margin-bottom: 7px;
}
.closelist .tel {
  margin-bottom: 7px;
}
.closeTitle {
 background-image: url(../../img/sp/common/icon_title_search.png);
}

.linkList01 li.closelist .title02 {
  margin-bottom: 0;
}

.linkList01 li.closelist .address {
  margin-top: 7px;
}


/* other */
.ramen_btn{
  display: inline-block;
  background-color: #2169b6;
  color: #fff;
  text-align: center;
  padding: 10px 30px 10px 20px;
  font-size: 14px;
  font-weight: bold;
  text-decoration: none;
  background-image: url(/img/pc/common/bg_yaji04.png);
  background-position: center right 10px;
  background-repeat: no-repeat;
  margin-bottom: 20px;
}

/*sub button
----------------------------------------------------------------------------------------------*/
.subBtn{
  display: flex;
  width: 100%;
  padding: 5px 10px;
}
.subBtn a{
  width: 50%;
  padding: 9px 15px 9px 15px;
  font-size: 11px;
  line-height: 1;
  background: #fff;
  border: 1px solid #2169b6;
  box-sizing: border-box;
  cursor: pointer;
  text-align: center;
  text-decoration: none;
}
.subBtn a.active{
  background-color: #2169b6;
  color:#fff;
}
.subBtn a:first-child{
  border-right: none;
  border-radius: 4px 0 0 4px;
}
.subBtn a:last-child{
  border-radius: 0 4px 4px 0;
}
/*contactArea
----------------------------------------------------------------------------------------------------*/
.contactArea_wrap{
    padding: 15px 17%;
    background: #f2f2f2;
}
.contactArea{
  background: #1967bc;
  color: #fff;
    padding: 20px;
    margin: 20px 0;
      border-radius: 3px;
    box-shadow: 0 3px 0px #b8b8b8;
}
.contactArea_wrap dt{
  font-weight: bold;
  font-size: 16px;
}
.contactArea_wrap dd a{
    color: #fff;
    margin-top: 10px;
    display: block;
}

/*交通アクセスの注釈
----------------------------------------------------------------------------------------------------*/
.warningWrap{
	padding: 10px;
	margin-top: 10px;
}
.warning{
	margin-bottom: 10px;
	font-size: 14px;
}
.extLink02:before{
	background-color: #e8f1fa;
}


.happy-end{
  color: #f00;
  font-size: 11px;
  padding: 10px;
  font-weight: bold;
}

.bus-coupon {
  position: relative;
  background: #01389c;
}
.bus-coupon span {
  position: absolute;
  color: #00428E;
  font-weight: bold;
  top: 105%;
  left: 50%;
  transform: translate(-50%, -130%);
  font-size: 11px;
}