.main{
  height: 460px;
  background-image: url(../img/main.jpg);
}

#wrap{
  background-image:
  url(../img/bg.png),
  url(../img/bg.png),
  url(../img/bg.png),
  url(../img/bg.png),
  url(../img/bg.png),
  url(../img/bg.png);
  background-repeat: no-repeat;
  background-position:
  836px 636px,
  83px 1224px,
  1024px 1883px,
  64px 2435px,
  153px 3114px,
  503px 3704px;
  -webkit-background-size:
  526px,
  526px,
  324px,
  324px,
  526px,
  526px;
  background-size:
  526px,
  526px,
  324px,
  526px;
}


.conceptTtl{
  line-height: 2.33;
  letter-spacing: .4em;
  font-size: 24px;
  margin: 64px 0;
}

.conceptTtl + .lead{
  letter-spacing: .2em;
  line-height: 3.43;
  margin-bottom: 100px;
}

.lead{
  font-size: 15px;
  letter-spacing: .3em;
  line-height: 2.14;
}

.flexBox{
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -ms-align-items: flex-end;
  align-items: flex-end;
}

.flexBox + .flexBox{
  margin-top: 80px;
}

.flexBox_re{
  -webkit-flex-flow: row-reverse;
  -ms-flex-flow: row-reverse;
  flex-flow: row-reverse;
}

.flexBox > *:first-child{
  width: 450px;
}

.flexBox > *:first-child + *{
  width: calc(100% - 450px);
  padding-left: 60px;
  padding-bottom: 16px;
}

.flexBox_re > *:first-child + *{
  padding-left: 0;
  padding-right: 60px;
}

.flexBox h3{
  font-size: 24px;
  margin-bottom: 32px;
  letter-spacing: .3em;
}

.flexBox h3 div{
  margin-bottom: 24px;
}

.flexBox a{
  letter-spacing: .3em;
  margin-top: 48px;
}

.bnbs_ranking{
  margin-top: 140px;
}

.concept_ranking_ttl{
  margin-bottom: 48px;
}

.concept_ranking_ttl img{
  width: 191px;
  padding: 0 32px;
}

.bnbs_ranking_box a{
  -webkit-transition: opacity .4s;
  -o-transition: opacity .4s;
  transition: opacity .4s;
}

.bnbs_ranking_box a:hover{
  opacity: .5;
}


.btn{
  font-size: 16px;
  padding: 32px;
  margin-bottom: 60px;
}

.btn span{
  width: 18px;
  height: 18px;
  min-width: 18px;
  min-height: 18px;
  vertical-align: -3px;
  margin-right: 18px;
}

.btn{
  -webkit-transition: all .6s;
  -o-transition: all .6s;
  transition: all .6s;
}

.btn:hover{
  background: #333;
  color: #fff !important;
  border-color: #333;
}

.btn:hover span{
  background-image: url(../img/arrow_re.svg);
}

.btn.btn_noBorder:hover{
  background: #fff;
  color: #000 !important;
  text-decoration: underline !important;
}

.btn.btn_noBorder:hover span{
  background-image: url(../img/arrow.svg);
}
