body,html{
  min-width:960px;
  color:#333333;
}
.bold{
  font-weight: bold;
}
.red{
  color:#db0210;
}
.hide-text{
  text-indent:110%;
  white-space:nowrap;
  overflow:hidden;
  display:block
}
.content{
  padding-bottom: 20px;
}
.content,.footer_contact,.footer_copy{
  min-width:960px;
  width:960px;
  margin:0 auto;
}
.body_inner{
  background:#def0f7 url(../img/bg_blue.jpg);
}
.btn:hover{
  transition: all .2s;
}
.store_btn .btn:hover{
  opacity: 0.85;
}
.login .btn_area,
.entry_btn,
.entryflow li .store_btn{
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content:center;
  -moz-justify-content:center;
  justify-content:center;
}
.mainvisual .tab,
.entryflow,
.cpn2 .list_prize{
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content:space-between;
  -moz-justify-content:space-between;
  justify-content:space-between;
}
/*main*/
.mainvisual{
  position: relative;
  height: 506px;
  width:100%;
  min-width: 100%;
  background:#005faf url(../img/mainvisual.jpg) no-repeat top center;
  margin-bottom:34px;
}
.mainvisual .tab_area{
  position: absolute;
  bottom:-34px;
  width:100%;
  min-width: 100%;
}

.mainvisual .tab{
  height: 194px;
  width:960px;
  margin:0 auto;
}
.mainvisual .tab a{
  display:block;
  width:318px;
  height: 160px;
  overflow: hidden:;
  background-position: top 13px center;
  background-repeat: no-repeat;
}
.mainvisual .tab a.is-active{
  overflow: visible;
  height: 194px;
  background-position: top 0 center;
}
.mainvisual .tab a:hover{
  background-position: top 0 center;
  transition: all .2s;
}
.mainvisual .tab_area .tab_cpn1 a{
  background-image:url(../img/tbtn_1_off.png);
}
.mainvisual .tab_area .tab_cpn2 a{
  background-image:url(../img/tbtn_2_off.png);
}
.mainvisual .tab_area .tab_cpn3 a{
  background-image:url(../img/tbtn_3_off.png);
}
.mainvisual .tab_area .tab_cpn1 a.is-active{
  background-image:url(../img/tbtn_1_on.png);
}
.mainvisual .tab_area .tab_cpn2 a.is-active{
  background-image:url(../img/tbtn_2_on.png);
}
.mainvisual .tab_area .tab_cpn3 a.is-active{
  background-image:url(../img/tbtn_3_on.png);
}
.tab_content {
  display: none;
}
.tab_content.is-active{
  display: block;
  animation: fade 0.5s ease;
}
/* campaign*/
.cpn_header{
  height: 243px;
  background-position: top center;
  background-repeat: no-repeat;
  margin-bottom:-13px;
}
.cpn1 .cpn_header{
  background-image:url(../img/ttl_cpn01.png);
}
.cpn2 .cpn_header{
  background-image:url(../img/ttl_cpn02.png);
}
.cpn3 .cpn_header{
  background-image:url(../img/ttl_cpn03.png);
}
.title_entry,.title_prize{
  height:49px;
  background-position: top center;
  background-repeat: no-repeat;
}
.title_entry{
  background-image: url(../img/ttl_entry.png);
}
.title_prize{
  background-image: url(../img/ttl_prize.png);
}

/*entry*/
.entryflow{
  margin-top:22px;
  color:#454545;
}
.entryflow li{
  position: relative;
  width:310px;
  box-sizing: border-box;
  background-color:#fff;
  background-position: center center;
  background-repeat: no-repeat;
}
.entryflow li .flow_text{
  font-size:16px;
  line-height: 20px;
  margin:11px 11px 0 0;
  padding-left:53px;
  min-height: 80px;
  display: table;
  background-repeat: no-repeat;
  background-position: left 14px center;
}
.entryflow li:nth-child(1) .flow_text{
  background-image:url(../img/num_1.png);
}
.entryflow li:nth-child(2) .flow_text{
  background-image:url(../img/num_2.png);
}
.entryflow li:nth-child(3) .flow_text{
  background-image:url(../img/num_3.png);
}
.entryflow li .flow_text > span{
  display: table-cell;
  vertical-align: middle;
}
.entryflow li .store_btn{
  position: absolute;
  bottom:40px;
  width:100%;
}
.entryflow li .store_btn .btn{
  width:140px;
  height:50px;
  background-repeat: no-repeat;
  margin:0 5px;
}
.btn_familymart{
  background-image:url(../img/btn_store_fmart.png);
}
.btn_circleksunku{
  background-image:url(../img/btn_store_circlek.png);
}
.entryflow li .notes{
  position:absolute;
  bottom:8px;
  text-align: center;
  width:100%;
}
.cpn1 .entryflow li,
.cpn2 .entryflow li
{
  height:305px;
}
.cpn3 .entryflow li
{
  height:260px;
}
.entryflow li .flow_text{
  min-height: 60px;
}

.cpn1 .entryflow li:nth-child(1){
  background-image:url(../img/bg_flow_buy_1.png);
}
.cpn1 .entryflow li:nth-child(2){
  background-image:url(../img/bg_flow_buy_2.png);
}
.cpn1 .entryflow li:nth-child(3){
  background-image:url(../img/bg_flow_buy_3.png);
}
.cpn2 .entryflow li:nth-child(1){
  background-image:url(../img/bg_flow_use_1.png);
}
.cpn2 .entryflow li:nth-child(2){
  background-image:url(../img/bg_flow_use_2.png);
}
.cpn2 .entryflow li:nth-child(3){
  background-image:url(../img/bg_flow_use_3.png);
}
.cpn3 .entryflow li:nth-child(1){
  background-image:url(../img/bg_flow_tw_1.png);
}
.cpn3 .entryflow li:nth-child(2){
  background-image:url(../img/bg_flow_tw_2.png);
}
.cpn3 .entryflow li:nth-child(3){
  background-image:url(../img/bg_flow_tw_3.png);
}


/*entry_btn*/
.entry_btn{
  overflow: hidden;
}
.entry_btn a{
  margin:26px 10px 10px;
  display:block;
  background-repeat: no-repeat;
}
.entry_btn_buy{
  width:438px;
  height: 80px;
  background-image:url(../img/btn_entry_buy.png);
}
.entry_btn_buy:hover{
  background-image:url(../img/btn_entry_buy_on.png);
}
.entry_btn_use{
  width:458px;
  height:80px;
}
.entry_btn_use.number{
  background-image:url(../img/btn_entry_use_number.png);
}
.entry_btn_use.number:hover{
  background-image:url(../img/btn_entry_use_number_on.png);
}
.entry_btn_use.wallet{
  background-image:url(../img/btn_entry_use_wallet.png);
}
.entry_btn_use.wallet:hover{
  background-image:url(../img/btn_entry_use_wallet_on.png);
}
.enrty_btn_caption{
  width:600px;
  font-size:14px;
  margin:10px auto 0;
}
.entry_btn_tw{
  width:358px;
  height:76px;
}
.entry_btn .entry_btn_tw{
  margin:26px 20px 10px;
}
.entry_btn_tw.follow{
  background-image:url(../img/btn_entry_twitter_follow.png);
}
.entry_btn_tw.follow:hover{
  background-image:url(../img/btn_entry_twitter_follow_on.png);
}
.entry_btn_tw.tweet{
  background-image:url(../img/btn_entry_twitter_tweet.png);
}
.entry_btn_tw.tweet:hover{
  background-image:url(../img/btn_entry_twitter_tweet_on.png);
}

/*prize*/
.list_prize .hide-text{
  height: 0;
}
.prize{
  margin-top:50px;
  color:#444444;
}
.prize a{
  color:#0062c3;
}
.prize .notes{
  margin-top:10px;
  font-size:14px;
}
.cpn1 .list_prize{
  margin-top:20px;
  height:348px;
  background:url(../img/img_prizelist_buy.png) no-repeat;
}
.cpn2 .list_prize li{
  width:480px;
}
.cpn2 .list_prize li .caption{
  line-height: 32px;
  height: 32px;
  margin:344px 30px 0 30px;
  padding:0 15px;
  background:#fff;
}
.cpn2 .list_prize li:nth-child(1){
  background:url(../img/img_item_use_1.png) no-repeat center top;
}
.cpn2 .list_prize li:nth-child(2){
  background:url(../img/img_item_use_2.png) no-repeat center top;
}
.cpn3 .list_prize{
  position:relative;
  height: 525px;
  width:100%;
}
.cpn3 .list_prize li:nth-child(1){
  position: relative;
  height: 408px;
  z-index:2;
  background:url(../img/img_item_tw.png) no-repeat center top;
}
.cpn3 .list_prize li:nth-child(2),
.cpn3 .list_prize li:nth-child(3)
{
  position: absolute;
  bottom:10px;
  width:328px;
  height: 124px;
  background-color:#fff;
  z-index:1;
  padding:10px;
  box-sizing: border-box;
  line-height: 18px;
}
.cpn3 .list_prize li:nth-child(2){
  left:14px;
}
.cpn3 .list_prize li:nth-child(3){
  right:14px;
}
/* detail*/
.detail{
  margin:50px 5px 0;
  background:#bfd5e1;
  font-size:14px;
  line-height: 20px;
  padding-top:10px;
  padding-bottom:23px;
}
.detail_section{
  padding-right:15px;
  padding-left:10px;
  overflow: hidden;
  margin-bottom:20px;
}
.detail_section dt{
  clear: left;
  float: left;
  width:150px;
}
.detail_section dd{
  float: left;
  width: 735px;
  margin-left: 30px;
  padding-top: 3px;
}
.title_detail,.login{
  width: 960px;
  margin-left: -5px;
 }
.title_detail{
  height: 46px;
  background:url(../img/ttl_detail.png) no-repeat;
}
.detail_section_title{
  position:relative;
  width:150px;
  height: 26px;
  line-height: 26px;
  text-align: center;
  font-weight: bold;
  background-color:#fff;
  color:#29517a;
  margin-left: 10px;
}
.detail_section_title:before,
.detail_section_title:after {
  position: absolute;
  top: 0;
  width: 0;
  height: 0;
  content: '';
  border: 13px solid transparent;
  border-right: 10px solid transparent;
  border-left: 10px solid transparent;
}
.detail_section_title:before {
  right: 100%;
  border-right-color: #fff;
}
.detail_section_title:after {
  left: 100%;
  border-left-color: #fff;
}
.detail_section_title:first-child{
  text-indent:1em;
  letter-spacing: 1em;
}
.detail_section_title,
.detail_section_text{
  margin-top:20px;
}
.detail_section .get_flow{
  width:734px;
  height:197px;
  margin-top:20px;
  background:url(../img/img_get_flow.png) no-repeat;
}
/*Login*/
.login{
  height: 125px;
  background:url(../img/bg_login.png) no-repeat;
  overflow:hidden;
}
.title_login{
  height: 25px;
  background:url(../img/ttl_login.png) no-repeat top center;
  margin:10px 0;
}
.login .btn{
  display: block;
  width:176px;
  height:65px;
  margin:0 5px;
  background-repeat: no-repeat;
}
.login .btn_yahoo{
  background-image:url(../img/btn_yahoo.png);
}
.login .btn_yahoo:hover{
  background-image:url(../img/btn_yahoo_on.png);
}
.login .btn_hangame{
  background-image:url(../img/btn_hangame.png);
}
.login .btn_hangame:hover{
  background-image:url(../img/btn_hangame_on.png);
}
.login .btn_mixi{
  background-image:url(../img/btn_mixi.png);
}
.login .btn_mixi:hover{
  background-image:url(../img/btn_mixi_on.png);
}
.login .btn_dmm{
  background-image:url(../img/btn_dmm.png);
}
.login .btn_dmm:hover{
  background-image:url(../img/btn_dmm_on.png);
}
.login .btn_sem{
  background-image:url(../img/btn_sem.png);
}
.login .btn_sem:hover{
  background-image:url(../img/btn_sem_on.png);
}
/* footer */
.footer{
  position:relative;
  margin-top:35px;
  position: relative;
  color:#d7e5e9;
  padding:20px 0;
  background-color:#1c3250;
}
.footer_contact{
  position:relative;
}
.footer_contact::before{
  position:absolute;
  display: block;
  content:'';
  width:80px;
  height: 105px;
  background:url(../img/img_footer.png) no-repeat right;
  top:-8px;
  right:20px;
}
.footer a{
  color:#56d1ff;
}
.footer_contact{
  font-size:14px;
  margin-bottom:21px;
}
.footer_contact,.footer_copy{
  padding-left:20px;
}
.pagetop{
  position: relative;
  min-width:960px;
  width:960px;
  margin:0 auto;
}
.pagetop a{
  position:absolute;
  display:block;
  width:120px;
  height:35px;
  right:0;
  top:0;
  text-align: center;
  line-height: 35px;
  background:#0e5ea2;
  text-decoration: none;
  color:#fff;
  font-size:14px;
}

/*keyframes*/
@keyframes fade {
  from {
      opacity: 0;
  }
  to {
      opacity: 1;
  }
}

/*

.content>section.show {
    -webkit-animation: show .5s cubic-bezier(.4, 0, 1, 1) 0s 1 alternate;
    animation: show .5s cubic-bezier(.4, 0, 1, 1) 0s 1 alternate
}

.content>section.hide {
    display: none;
    -webkit-animation: hide .5s cubic-bezier(.4, 0, 1, 1) 0s 1 alternate;
    animation: hide .5s cubic-bezier(.4, 0, 1, 1) 0s 1 alternate;
    opacity: 0
}

@-webkit-keyframes hide {
    0% {
        display: block;
        opacity: 1
    }
    100% {
        display: none;
        opacity: 0
    }
}

@keyframes hide {
    0% {
        display: block;
        opacity: 1
    }
    100% {
        display: none;
        opacity: 0
    }
}

@-webkit-keyframes show {
    0% {
        display: none;
        opacity: 0
    }
    100% {
        display: block;
        opacity: 1
    }
}

@keyframes show {
    0% {
        display: none;
        opacity: 0
    }
    100% {
        display: block;
        opacity: 1
    }
}
.cpn1.hide>*,
.cpn2.hide>*,
.cpn3.hide>* {
    opacity: 0
}*/