@charset "UTF-8";
/* pc <--> sp
-------------------------------------- */
#mediaQuery { display: none; font-family: 'sp'; }

@media all and (min-width: 768px) { #mediaQuery { font-family: 'pc'; } }

@media all and (max-width: 767px) { .viewPc { display: none !important; } }

@media all and (min-width: 768px) { .viewSp { display: none !important; } }

/* clearfix
-------------------------------------- */
.cf:after { content: ''; display: block; clear: both; }

/*  #container
================================================ */
#container { padding-bottom: 8px; font-size: 14px; font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; font-weight: 500; background: #FAFAFA; }

@media all and (min-width: 768px) { #container { overflow: hidden; padding-bottom: 48px; } }

#container img { width: 100%; height: auto; }

#container .alpha { display: block; text-decoration: none; }

@media all and (min-width: 768px) { #container { font-size: 16px; }
  #container .alpha { -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
  #container .alpha:hover { opacity: .7; } }

/*  #brand 一覧ページ
================================================ */
/* #brand #mainVisual
================================================ */
#brand #mainVisual { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; height: 160px; background: url("/static/img/bus_search/brand/bg_mainvisual01.png") repeat-x top center/4px; color: #fff; text-align: center; }

#brand #mainVisual .inner { width: 100%; padding: 0 15px; }

#brand #mainVisual .tit { position: relative; display: inline-block; font-size: 20px; letter-spacing: .1em; }

#brand #mainVisual .tit img { position: absolute; width: 53px; top: -40px; left: -56px; }

#brand #mainVisual .tit span { position: relative; display: inline; }

#brand #mainVisual .tit span:after { position: absolute; bottom: -6px; left: 50%; content: ""; display: block; width: 5px; height: 5px; margin-left: -2px; background: #FFF45C; border-radius: 50%; }

@media all and (min-width: 768px) { #brand #mainVisual { height: 200px; background-image: url("/static/img/bus_search/brand/bg_mainvisual01_pc.png"); background-size: 5px; }
  #brand #mainVisual .inner { width: 100%; max-width: 1170px; margin: auto; padding: 10px 0 0; }
  #brand #mainVisual .tit { font-size: 30px; }
  #brand #mainVisual .tit img { width: 104px; top: -64px; left: -100px; }
  #brand #mainVisual .tit span:after { bottom: -11px; width: 9px; height: 9px; margin-left: -4px; } }


/* #brand #rosen
================================================ */
#brand #rosen .inner { padding: 48px 16px; }

#brand #rosen .tit { position: relative; text-align: center; display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: center; -ms-flex-pack: center; justify-content: center; -webkit-box-align: center; -ms-flex-align: center; align-items: center; padding: 0 10px; font-size: 16px; font-weight: 700; line-height: 1.5; letter-spacing: .05em; }

#brand #rosen .tit:before, #brand #rosen .tit:after { content: ""; display: inline-block; width: 2px; height: 36px; background: #707070; border-radius: 2px; }

#brand #rosen .tit:before { -webkit-transform: rotate(-30deg); -ms-transform: rotate(-30deg); transform: rotate(-30deg); }

#brand #rosen .tit:after { -webkit-transform: rotate(30deg); -ms-transform: rotate(30deg); transform: rotate(30deg); }

#brand #rosen .tit em { font-style: normal; }

#brand #rosen .tit span { padding: 0 20px; }

#brand #rosen .listBrand { margin: 40px -4px 0; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; text-align: center; }

#brand #rosen .listBrand li { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-align: stretch; -ms-flex-align: stretch; align-items: stretch; width: calc(50% - 4px); min-height: 140px; margin: 4px 2px; }

#brand #rosen .listBrand a { display: block; width: 100%; color: #333333; background: #fff; border-radius: 10px; overflow: hidden; }

#brand #rosen .listBrand .img { position: relative; background: #EDEDED; }

#brand #rosen .listBrand .img:before { content: ""; display: block; width: 100%; padding-top: 83%; }

#brand #rosen .listBrand .img img { position: absolute; top: 50%; left: 50%; max-width: 60%; height: auto; -webkit-transform: translate(-50%, -50%); -ms-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

#brand #rosen .listBrand .name { padding: 14px 0; font-size: 11px; line-height: 1.45; font-weight: 700; word-break: break-all; }

#brand #rosen .txt { max-width: 356px; margin: 52px auto 0; padding-right: 1px; text-align: center; }

#brand #rosen .btn { display: block; width: 100%; max-width: 294px; margin: 36px auto 0; padding: 0; text-align: center; border: 0; }

ul.listBrand p {
    text-align: left;
    padding: 5px 15px 15px 15px;
    font-size: 11px;
}

@media all and (min-width: 768px) { #brand #rosen .inner { max-width: 1170px; width: 100%; margin: auto; padding: 78px 0 50px; }
  #brand #rosen .tit { min-width: 670px; margin: auto; padding: 0; font-size: 20px; }
  #brand #rosen .tit span { padding: 0 24px; }
  #brand #rosen .listBrand { margin: 55px -12px 0; }
  #brand #rosen .listBrand li { width: calc(33.33% - 24px); min-height: auto; margin: 8px 12px 14px; border-radius: 4px; }
  #brand #rosen .listBrand a { box-shadow: 0 0 6px #E7E7E7; }
  #brand #rosen .listBrand a:hover { text-decoration: none; background: #feebf2; }
  #brand #rosen .listBrand .img:before { padding-top: 68%; }
  #brand #rosen .listBrand .img img { max-width: 60%; }
  #brand #rosen .listBrand .name { 
    padding: 22px 15px 0px;
    font-size: 16px;
    line-height: 1.5;
    text-align: left;
}
ul.listBrand p {
    font-size: 13px;
}
  #brand #rosen .txt { width: 79.5%; max-width: 902px; margin: 95px auto 0; padding-right: 0; }
  #brand #rosen .btn { width: 35%; max-width: 394px; margin: 37px auto 0; } }


@media all and (min-width: 992px) {
  #brand #rosen .listBrand li { width: calc(25% - 24px); min-height: auto; margin: 8px 12px 14px; border-radius: 4px; }
}
}


/*もっと見る*/
.link-motto {
  text-align: right;
}

.link-motto a {
  background: url(/static/img/index/bg-stripe-pink.png) top left;
  text-decoration: none;
  display: inline-block;
  font-size: 15px;
  padding: 8px 25px;
  border-radius: 50px;
  color: #333;
}

.link-motto a:after {
  content: "\f105";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  color: #f53d7e;
  margin-left: 15px;
}

.link-motto a:hover {
  color: #f53d7e;
}

@media (min-width: 1200px){
  .link-motto {
    margin-right: -15px;
  }
}