html{
  -webkit-text-size-adjust: 100%;
}
body {
  line-height: 1.375;
  font-size: 16px;
  min-width: 1000px;
  color:#252525;
  background:#080808;
}
.body_inner{
  background:#4e475c url(../img/bg_h.jpg) top center /100% auto repeat-y;
}
.wrapper{
  width:1000px;
}

a:active,a:hover,a:link,a:visited {
  color: #1a0fac;
  text-decoration: underline;
}
a:hover {
  text-decoration: none;
}
a.btn{
  display:block;
  position: relative;
  overflow:hidden;
}
a.btn:after,
a.btn:before {
  content: "";
  position: absolute;
  width: inherit;
  height: inherit;
  background-repeat: no-repeat;
  transition-property: opacity;
  transition-duration: .3s;
  transition-timing-function: ease-out;
  top:0;
  bottom:0;
  left: 0;
  right: 0
}
a.btn:before {
  background-position: left top;
  opacity: 1
}
a.btn:after {
  background-position: left bottom;
  opacity: 0
}
a.btn:hover:after,
a.btn:hover:before {
  opacity: 1
}
a.btn.disable{
  pointer-events: none;
}
.op{
  transition:0.3s;
}
.op:hover{
  opacity: 0.7;
}
@keyframes fade {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
strong{
  font-weight: 700;
}
.hide-text{
  text-indent: 120%;
  white-space: nowrap;
  overflow: hidden
}
.flex_box{
  display:flex;
  justify-content: space-between;
}

/*general*/
.login{
  background:url(../img/btn_login_bg.png) top center no-repeat;
  min-height: 163px;
  margin-top:36px;
}
.login h1{
  height:69px;
}
.login .btn_area{
  bottom:0;
  margin:0 auto;
  justify-content: center;
}
.login .btn{
  width:176px;
  height: 69px;
  margin:0 5px;
}
.login .btn:before,
.login .btn:after{
  background-image:url(../img/btn_login.png);
}
.login .btn_yahoo:before{background-position: top left 0;}
.login .btn_yahoo:after {background-position: bottom left 0;}
.login .btn_mixi:before{background-position: top left -186px;}
.login .btn_mixi:after {background-position: bottom left -186px;}
.login .btn_hangame:before{background-position: top left -372px;}
.login .btn_hangame:after {background-position: bottom left -372px;}
.login .btn_mygamecity:before{background-position: top left -557px;}
.login .btn_mygamecity:after {background-position: bottom left -557px;}
.login .btn_gesoten:before{background-position: top left -743px;}
.login .btn_gesoten:after {background-position: bottom left -743px;}


/*mainvisual*/

.mainvisual{
  height: 530px;
  background:#201724 url(../img/mainvisual.jpg) top center no-repeat;
  color:#fff;
}
.mainvisual_date{
  height: 57px;
  background:#080808 url(../img/mainvisual_date.png) top center no-repeat;
}

/*cpn01*/
.cpn01 .entry .title,
.cpn01 .prize .title,
.cpn01 .detail .title{
  height: 65px;
  margin:60px 0 20px;
}
.cpn01 .entry .title{
  background:url(../img/head_entry.png) top center no-repeat;
}
.cpn01 .prize .title{
  background:url(../img/head_prize.png) top center no-repeat;
}
.cpn01 .detail .title{
  background:url(../img/head_detail.png) top center no-repeat;
}

.cpn01 .entry_flow{
  height: 342px;
  background:url(../img/entry_flow.png) no-repeat;
  box-sizing: border-box;
}
.cpn01 .entry_flow li{
  flex:3;
  padding:25px 16px 0 20px;
}
.cpn01 .entry_flow li .caption{
  padding-left: 66px;
  font-weight: bold;
}
.cpn01 .entry_flow li .notes{
  font-size:13px;
  overflow-wrap: break-word;
  word-wrap: break-all;
}
.btn_store{
  margin:8px 0;
}
.btn_store .btn{
  width:142px;
  height: 97px;
}
.btn_store .btn:before,
.btn_store .btn:after{
  background-image:url(../img/btn_store.png);
}
.btn_store .btn_lawson:before{background-position: top left 0;}
.btn_store .btn_lawson:after {background-position: bottom left 0;}
.btn_store .btn_ministop:before{background-position: top left -153px;}
.btn_store .btn_ministop:after {background-position: bottom left -153px;}


.cpn01 .prize_balloon{
  position: relative;
  height: 0;
}
.cpn01 .prize_balloon p{
  position: absolute;
  display: block;
  content:'';
  width:288px;
  height: 237px;
  background:url(../img/prize_balloon.png) no-repeat;
  z-index:2;
  top:-113px;
  right:-13px;
}

.cpn01 .prize_list{
  height: 887px;
  background:url(../img/prize_list.png) top center no-repeat;
}
.cpn01 .prize_img{
  position: relative;
  height: 493px;
  background:url(../img/prize_img.png) top center no-repeat;
}
.cpn01 .btn_entry{
  position:absolute;
  width:100%;
  bottom:45px;
}
.cpn01 .btn_entry .btn{
  width:384px;
  height: 69px;
  margin: 0 auto;
}
.cpn01 .btn_entry .btn:before,
.cpn01 .btn_entry .btn:after{
  background-image:url(../img/btn_entry.png);
}

.detail_section{
  background:#fff;
  padding:20px;
  margin-bottom:3px;
}
.detail_section .flex_box{
  margin:4px 0;
}
.detail_section h2{
  width:240px;
  height: 20px;
}
.detail_section .flex_box > p,
.detail_section .flex_box > ul,
.detail_section .flex_box > div{
  flex:1;
}
.detail_section p{
  font-size:18px;
  font-weight: bold;
}
.detail_date_buy h2{
  background:url(../img/detail_date_buy.png) no-repeat;
}
.detail_date_entry h2{
  background:url(../img/detail_date_entry.png) no-repeat;
}
.detail_target h2{
  background:url(../img/detail_target.png) no-repeat;
}
.detail_target_item h2{
  background:url(../img/detail_target_item.png) no-repeat;
}
.detail_target_platform h2{
  background:url(../img/detail_target_platform.png) no-repeat;
}
.detail_get_item h2{
  background:url(../img/detail_get_item.png) no-repeat;
}
.detail_attention h2{
  background:url(../img/detail_attention.png) no-repeat;
}
.detail_date h2{
  background:url(../img/detail_date.png) no-repeat;
}
.detail_target_person h2{
  background:url(../img/detail_target_person.png) no-repeat;
}
.detail_winning h2{
  background:url(../img/detail_winning.png) no-repeat;
}
.detail_date_winning h2{
  background:url(../img/detail_date_winning.png) no-repeat;
}
.cpn01 .detail_target_item{
  margin-top:16px;
}
.detail_target_item .box_img{
  min-height: 312px;
  display: flex;
  align-items: center;
  align-content:center;
  flex-wrap:wrap;
  padding-left:340px;
  background:url(../img/detail_target_item_img.png) no-repeat;
}
.detail_target_item .box_img p{
  width:100%;
  font-weight: normal;
  font-size:16px;
}
.detail_section .note{
  font-weight: normal;
  font-size:16px;
}
.cpn01 .detail_get_item .get_item_flow{
  margin-top:10px;
}
.cpn01 .detail_get_item .get_item_flow li{
  width:232px;
  background:#000;
  box-sizing: border-box;
  padding:148px 10px 10px;
  color:#fff;
  font-size:13px;
  font-weight: bold;
}
.cpn01 .detail_get_item .get_item_flow li:nth-child(1){
  background:url(../img/get_item_flow_01.png) no-repeat;
}
.cpn01 .detail_get_item .get_item_flow li:nth-child(2){
  background:url(../img/get_item_flow_02.png) no-repeat;
}
.cpn01 .detail_get_item .get_item_flow li:nth-child(3){
  background:url(../img/get_item_flow_03.png) no-repeat;
}


/*cpn02*/
.cpn02{
  margin-top:42px;
  background: url(../img/cpn02.png) top center no-repeat;
}
.cpn02 .wrapper{
  position: relative;
  height: 2331px;
}

.cpn02 .detail{
  position: absolute;
  top:1484px;
  box-sizing: border-box;
  padding: 0 36px;
  width:100%;
}
.cpn02 .detail .title{
  height: 65px;
  margin-bottom: 20px;
}
.cpn02 .detail_section h2{
  width:230px;
}

/*cpn03*/
.cpn03{
  margin-top:37px;
  background: url(../img/cpn03.png) top center no-repeat;
}
.cpn03 .wrapper{
  position: relative;
  height: 2027px;
}
.cpn03 .detail{
  position: absolute;
  top:1143px;
  box-sizing: border-box;
  padding: 0 36px;
  width:100%;
}
.cpn03 .detail .title{
  height: 65px;
  margin-bottom: 20px;
}
.cpn03 .detail_section h2{
  width:230px;
}

/*pagetop*/
.pagetop{
  position: relative;
}
.totop{
  position: fixed;
  display:block;
  width:68px;
  height:68px;
  bottom:30px;
  left:auto;
  margin:0 0 0 1015px;
  background:url(../img/totop.png) no-repeat;
  z-index:2;
}

/*footer*/
.footer{
  padding:26px 0;
  background:#080808;
  color:#fff;
  text-align: center;
  margin-top:100px;
  font-size:14px;
}
.footer a{
  color:#f4f402;
}
.footer .copy{
  margin-top:14px;
  font-size:12px;
  line-height: 20px;
}