.campaign-menu li a,.campaign-btn_red,.campaign-btn_bk{
  -webkit-transition: .3s ease-in-out;
   transition: .3s ease-in-out;
   cursor: pointer;
}
.campaign-menu li a:hover,.campaign-btn_red:hover,.campaign-btn_bk:hover{
opacity: 0.5;
}
.campaign-area{
  width:750px;
  margin: 0 auto;
  padding-top: 80px;
  padding-bottom: 80px;
}
.campaign-img img{
  max-width:750px;
}
.campaign-tl-area{
  background: #000;
  color:#fff;
  display: block;
  font-size: 2.8rem;
  line-height: 3.6rem;
  padding: 10px;
  margin-bottom: 40px;
}
.campaign-flex-img{
  display: block;
  margin: 40px 0 60px 0;
}
.campaign-flex-img img{
  display: block;
  max-width: 1000px;
}
.campaign-tl-sub{
  font-size: 3.6rem;
  margin: 60px 0 30px 0;
  text-align: center;
  padding-bottom: 30px;
  line-height: 4.8rem;
}
.campaign-tl-sub span{
  margin: 0 20px;
}
.campaign-tl-sub svg{
  fill:#ba0101;
  width:34px;
  height: 36px;
}
.campaign-area h4{
  background:url(../../images/campaign/campaign_bg01.png)repeat #ba0101;
  background-size: 50%;
  text-align: center;
  color:#fff;
  font-weight: bold;
  font-size: 2.4rem;
  line-height: 2.8rem;
  padding: 15px;
  font-family:Verdana, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  border-top:solid 5px #f0cc5f;
  border-bottom:solid 5px #f0cc5f;
  margin: 30px 0 50px 0;
}
.campaign-flex-text{
  font-family:Verdana, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  margin-top: 40px;
}
.campaign-flex-text h5{
  color:#19196b;
  font-weight: bold;
  font-size: 2.4rem;
  line-height: 2.8rem;
}
.campaign-flex-text p{
  font-size:1.4rem;
  line-height: 2.4rem;
  color:#474747;
  margin-top: 40px;
  }
  .campaign-menu{
    display: flex;
    justify-content: center;
    margin: 10px 0;
    padding-bottom: 0px;
    flex-wrap: wrap;
  }
  .campaign-menu .campaign-menu-tl{
    padding-top: 20px;
    margin-bottom: 20px;
  }
  .campaign-menu-item{
      width:calc(33% - 15px);
      text-align: center;
      font-family:Verdana, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
      font-size: 1.8rem;
      margin: 10px 5px;
  }
  .campaign-menu-item p{
      text-align:center;
      font-family:Verdana, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
      font-size: 1.4rem;
      line-height: 1.8rem;
  }
  .campaign-menu .campaign-menu-item a svg{
    width:17px;
    height: 18px;
  }
  .campaign-menu .campaign-menu-item a{
    color:#000;
  }
  .campaign-menu .campaign-menu-item a .campaign-menu-link{
    margin-top: 15px;
    font-weight: bold;
}
.campaign-menu .campaign-menu-item img{
  width:100%;
}
.campaign-area iframe{
  margin: 40px auto 50px auto;
  display: block;
  padding-bottom: 30px;
}
.campaign-comment-area{
  border: solid 1px #c1c1c1;
  padding: 30px;
  background: url(../../images/campaign/campaign_bg02.png)no-repeat #fff;
  background-size: 312px 315px;
  background-position: 95% 50%;
  font-family:Verdana, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 1.4rem;
  line-height: 2.2rem;
  margin: 40px 0 30px 0;
  display: block;
}
.campaign-limit{
  font-size:3.0rem;
  color:#a40001;
  text-align: center;
  font-family:Verdana, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  padding: 30px 0;
  font-weight: bold;
  line-height: 4.8rem;
}
.campaign-btn_red {
  background:#ba0101;
  padding: 5px;
  text-align: center;
  margin: 30px auto 20px auto;
  width: 60%;
  height: 70px;
  display: block;
  box-sizing: border-box;
}
.campaign-btn_bk {
  background:#000;
  padding: 5px ;
  text-align: center;
  margin: 30px auto 20px auto;
  width: 60%;
  height: 70px;
  display: block;
  box-sizing: border-box;
}
.flexbox .campaign-btn_red,
.flexbox .campaign-btn_bk{
  width: calc(50% - 15px);
}
.campaign-btn_red span,.campaign-btn_bk span{
  border:solid 1px #fff;
  color:#fff;
  font-size: 2.0rem;
  display: block;
  width:100%;
  height: 100%;
  padding-top: 15px;
  box-sizing: border-box;
}
.campaign-btn_red svg,.campaign-btn_bk svg{
  fill:#fff;
  width:17px;
  height: 17px;
  margin: 0 30px;
}
.flexbox .campaign-btn_red svg,
.flexbox .campaign-btn_bk svg{
  margin: 0 20px;
}
@media screen and (max-width:896px){
  .campaign-area{
    width:100%;
    padding: 40px 20px;
    box-sizing: border-box;
  }
  .campaign-tl-area{
    font-size: 2.0rem;
  }
  .campaign-img img{
    width:100%;
  }
  .campaign-tl-sub{
    font-size: 2.8rem;
  }
  .campaign-tl-sub svg{
    width:26px;
    height: 28px;
  }
  .campaign-menu{
    display: block;
  }
  .campaign-menu li{
    margin-bottom: 60px;
  }
  .campaign-menu .campaign-menu-tl{
    padding-top: 20px;
    margin-bottom: 20px;
  }
  .campaign-flex-text h5{
    text-align: center;
  }
  .campaign-flex-text p{
    text-align: center;
  }
  .campaign-flex-img img{
    margin-left: auto;
    margin-right: auto;
    max-width: 700px;
  }
    .campaign-menu-item{
      margin: 0 auto;
      width:calc(100% - 15px);
      max-width: 500px;
    }
  .campaign-comment-area{
    border: solid 1px #c1c1c1;
    padding: 30px;
    background: url(../../images/campaign/campaign_bg02.png)no-repeat #fff;
    background-size: 312px 315px;
    background-position: 95% 90%;
  }
  .campaign-area iframe{
    width:100%;
  }
  .campaign-btn_red span,.campaign-btn_bk span{
    font-size: 2.2rem;
  }
  .campaign-btn_red svg,.campaign-btn_bk svg{
    width:17px;
    height: 17px;
    margin: 0 10px;
  }
  .campaign-btn_red,
  .campaign-btn_bk,
  .flexbox .campaign-btn_red,
  .flexbox .campaign-btn_bk{
    width: 80%;
    height: 70px;
  }
}
@media screen and (max-width: 480px) {
  .campaign-tl-sub{
    font-size: 2.2rem;
  }
  .campaign-tl-sub svg{
    width:21px;
    height: 22px;
  }
  .campaign-btn_red span,.campaign-btn_bk span{
    font-size: 1.5rem;
  }
  .campaign-btn_red svg,.campaign-btn_bk svg{
      width:15px;
    height: 15px;
    margin: 0 5px;
  }
  .campaign-btn_red,
  .campaign-btn_bk,
  .flexbox .campaign-btn_red,
  .flexbox .campaign-btn_bk{
    width: 90%;
    height: 60px;
  }
  .campaign-menu-item{
      width:calc(100% - 15px);
      margin: 0 auto;
  }
}

.special-banner {
  width: auto;
}
.special-banner img {
  width: 100%;
}
.special-banner + .campaign-img {
  margin-top: 40px;
}