
.loadingWrap{
	width: 100%;
	height: 100%;
	background: #fff;
	position: fixed;
	top: 0;
	left: 0;
  z-index:100;
}
.loadingWrap img{
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -200px;
	margin-left: -92.5px;
}

@media screen and (max-width : 768px){
  .loadingWrap img{
    margin-top: -100px;
    margin-left: -60px;
    width: 120px;
    height: auto;
  }
}

/* ===============================================
# banner
=============================================== */
.banner{
  width:100%;
  min-width: 950px;
  background:url(../common2/images/bg_banner.png) repeat top left;
  text-align:center;
  padding:15px 0;
  border-bottom:solid 1px #fff;
}
.banner .banner_inner{
  width: 950px;
  margin:0 auto;
  position:relative;  
}
.banner ul::after{
  content:"";
  display:block;
  clear:both;
}

.banner ul{
  width:950px;
  display:inline-block;
}

.banner ul li{
  float:left;
  width:234px;
  height:auto;
}

.banner ul li:nth-child(1n + 2){
  margin-left:4.6px;
}
  
.banner .img_touch{
  position:absolute;
  top:102px;
  left:-150px;
  width:149px;
  height:165px;
  overflow:hidden;
  background-image:url(../img/img_touch.png);
}

.banner .img_touch video{
  margin-top:40px;
  margin-left:26px;
  height:122px;
  width:122px;
  z-index:1;
  border-radius:61px;
  -moz-border-radius:61px;
  -webkit-border-radius: 61px;
  border:solid 5px #d1eaf7;
  
}


 /* sp
--------------------- */
@media screen and (max-width : 768px){
  .banner{
    min-width: 100%;
    padding:0;
  }
  .banner .banner_inner{
    width:100%;
  }
  .banner ul{
    width:100%;
  }

  .banner ul li{
    width:46%;
    margin:2%;
  }
  
  .banner ul li:nth-child(n+2) {
    margin-left: 2%;
  }
}

/* ===============================================
# container
=============================================== */
.container{
  width:100%;
  min-width: 950px;
  overflow:hidden;
  padding:50px 0 200px 0;
  background:#ebf6fc url(../img/bg_container_fotter.png) no-repeat bottom center;
  background-size:100% auto;
}

.container .container_inner{
  width:950px;
  margin:0 auto;
  position:relative;
}

.container .container_inner h2{
  background:url(../common2/images/line_titlebottom.png) repeat-x bottom left;
  padding-bottom:10px;
}

@media screen and (max-width : 768px){
  .container{
    min-width: 100%;
    padding:2% 2% 50% 2%;
    background:#fff url(../img/bg_container_fotter_smp.png) no-repeat bottom center;
    background-size:100% auto;
  }
  .container .container_inner{
    width:100%;
  }
  .container .container_inner .h2_list_event img{
    width:70%;
  }
}

/* list_event
--------------------- */
.list_event{
  margin:23px 0 58px 0;
}

.list_event ul::after{
  content:'';
  display:block;
  clear:both;
}

.list_event ul li{
  float:left;
  width:220px;
  position:relative;
  padding-bottom:35px;
}

.list_event ul li:nth-child(4n + 2){
  margin:0 23.3px;
}

.list_event ul li:nth-child(4n + 4){
  margin-left:23.3px;
}

.list_event ul li .tit{
  display:block;
  margin-top:14px;
  color:#003399;
  font-size:117%;
} 

.list_event ul li .txt{
  margin-top:15px;
} 

.list_event ul li .sns{
  position:absolute;
  bottom:0;
  left:0;
}

.list_event ul li .sns::after{
  content:'';
  display:block;
  clear:both;
}

.list_event ul li .sns .tw{
  float:left;
  display:block;
  background:url(../common2/images/ico_twitter.png) no-repeat top center;
  width:22px;
  height:22px;
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}

.list_event ul li .sns .fb{
  float:left;
  display:block;
  background:url(../common2/images/ico_facebook02.png) no-repeat top center;
  width:22px;
  height:22px;
   overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
}

@media screen and (max-width : 768px){
  .list_event{
    margin:0 0 15% 0;
  }
  
  .list_event ul li{
    width:48%;
    padding-bottom:50px;
    padding-top:20px;
  }
  .list_event ul li:nth-child(1n + 3){
    padding-top:40px;
  }
  .list_event ul li:nth-child(4n + 2){
    margin:0;
  }
  
  .list_event ul li:nth-child(4n + 4){
    margin-left:0;
  }
  
  .list_event ul li:nth-child(2n + 2){
     margin-left:4%;
  }
  .list_event ul li .tit{
    margin-top:1em;
  } 
  .list_event ul li .txt{
    margin-top:1em;
  } 
  .list_event ul li .sns{
    position:absolute;
    bottom:0;
    left:0;
    width:100%;
  }  

  .list_event ul li .sns .tw{
    background:#00aced url(../common2/images/ico_twitter_smp.png) no-repeat top 50% center;
    width:49%;
    height:24px ;
    border-radius:5px;
    background-size:20px 20px;
  }
  
  .list_event ul li .sns .fb{
    float:left;
    display:block;
    background:#365493 url(../common2/images/ico_facebook02_smp.png) no-repeat top 50% center;
    width:49%;
    height:24px;
    margin-left:2%;
    border-radius:5px;
    background-size:20px 20px;    
  }

}

/* area_left
--------------------- */
.area_left{ 
  width:457px;
  float:left;
  margin-top:20px;
}
@media screen and (max-width : 768px){
  .area_left{ 
    width:100%;
    float:none;
    margin-top:10%;
  }
}
/* area_right
--------------------- */
.area_right{ 
  width:442px;
  float:right;
}
@media screen and (max-width : 768px){
  .area_right{ 
    width:100%;
    float:none;
    margin-top:10%;
  }
}

/* list_news
--------------------- */
.list_news{
   position:relative;
   margin-bottom:50px;
}
.list_news ul{
  margin-top:15px;
}

.list_news ul li{
  margin-bottom:15px;
}
.list_news ul li::after{
  clear:both;
  content:'';
  display:block;
}
.list_news ul li .date{
  width:88px;
  float:left;
  font-size:109%;
}
.list_news ul li .icon{
  width:65px;
  height:18px;
  line-height:18px;
  text-align:center;
  border-radius:8px;
  color:#fff;
  float:left;
  font-size:75%;
}
.list_news ul li .icon.event{
  background-color:#28d8a4;
}
.list_news ul li .icon.plan{
 background-color:#f4a330;
}
.list_news ul li .icon.news{
 background-color:#ee93de;
}
.list_news ul li .icon.info{
 background-color:#7b6fef;
}

.list_news ul li .txt{
  width:294px;
  margin-left:10px;
  float:left;
  font-size:109%;
  line-height: 1.3;
}

.list_news ul li .txt a{
  color:#000;
}


.list_news .btn_more{
  width:87px;
  height:27px;
  line-height:27px;
  text-align:center;
  border-radius:12px;
  background-color:#008de6;
  color:#fff;
  font-size:84%;
  box-shadow:2px 2px 0px #4e81a1;
  -moz-box-shadow:2px 2px 0px #4e81a1;
  -webkit-box-shadow:2px 2px 0px #4e81a1;
  position:absolute;
  top:-10px;
  right:0;
}

.list_news .btn_more a{
  color:#fff;
  display:block;
}

.list_news .btn_more a:hover{
  text-decoration:none;
  opacity:0.6;
}

@media screen and (max-width : 768px){
  .list_news ul li{
    margin-bottom:20px;
  }
  .list_news ul li .date{
    width:7em;
    float:left;
  }
  .list_news ul li .icon{
    width:55px;
    float:left;
  }
  .list_news ul li .txt{
    clear:both;
    width:100%;
    margin-left:0;
    float:none;
    padding-top:5px;
  }
}
/* area_right_banner
--------------------- */
.area_right_banner{
  width:100%;
}

.area_right_banner ul::after{
  clear:both;
  content:'';
  display:block;
}

.area_right_banner ul li{
  width:208px;
  float:left;
  margin-top:20px;
  overflow:hidden;
}

.area_right_banner ul li:nth-child(even){
  margin-left:20px;
}

@media screen and (max-width : 768px){
  .area_right_banner ul li{
    width:49%;
    float:left;
    margin-top:20px;
  }
  .area_right_banner ul li:nth-child(even){
    margin-left:2%;
  }  
}


/* ===============================================
# BOX
=============================================== */
/*青枠*/
.box_style01 {
    width: 100%;
    padding: 14px 0 17px;
    position: relative;
    border:solid 6px rgb(0, 68, 160);
    border-radius: 10px;
    background-color: rgb(255, 255, 255);
}

/* ===============================================
# present
=============================================== */
section.present .bg{
  background: url("../img/bg_insta.png") repeat top center;
}

section.present .insta_top{
  background: url("../img/bg_insta_top.jpg") no-repeat top center;
  height:457px;
  position:relative;
  background-size:cover;
}

.ttl_insta {
  position:absolute;
  bottom:0;
  left:50%;
  margin-left:-323px;
}

section.present .insta_canpain{
  position:absolute;
  left:50%;
  bottom:-50px;
  margin-left:-50px;
}
section.present .inner {
    position: relative;
    width: 640px;
    margin-left: auto;
    margin-right: auto;
    padding: 60px 0 63px;
}

section.present .item_holder {
    position: relative;
    padding-bottom: 20px;
}



section.present .sec_btm {
    margin-top: 53px;
}

.section.present .attention{
  color:#014ab3;
}

section.present .attention{
  color:#014ab3;
  margin-top:10px;
}

section.present .attention p{
  font-weight:bold;
}

section.present .attention ul li{
  margin-left:1em;
  text-indent:-1em;
}


@media screen and (max-width : 768px){
  section.present .bg{
    padding:0 2%;
  }
  section.present .inner {
    width: 100%;
    padding: 60px 0 33px;
  }
  section.present .item_holder{
    padding-bottom: 10px;
  }
  section.present .sec_btm {
    margin-top: 25px;
  }
  section.present .insta_top{
    height:auto;
    background-size: auto 100%;
  }
  .ttl_insta {
    padding-top:20px;
    position:relative;
    bottom:0;
    left:0;
    margin-left:0;
  }  
  section.present .insta_canpain{
    width:18%;
    max-width:100px;
    bottom:-15%;
    margin-left:-8%;
  }
}

/*みんなのフォト*/
section.present h3 {
    width: 646px;
    height: 369px;
    margin: auto;
    text-align: center;
}

section.present .lead {
    color: rgb(0, 64, 127);
    line-height: 1.5;
    text-align: center;
    margin-top: 5px;
    margin-bottom:33px; 
    font-size:122%;
    position:relative;
}

section.present h4 {
    text-align: center;
}

section.present .lead #tagsuma{
    position: absolute;
    right: -90px;
    top: 50px;
    z-index: 110;
}

@media screen and (max-width : 768px){
  section.present h3 {
    width: 100%;
    height: auto;
  }
  section.present .lead {
    margin-bottom:15%;
    text-align:left;
  }
  section.present .lead #tagsuma{
    right: 0;
    top: 95%;
    margin:10px auto;
    width:30%;
  }
  section.present h4{
    padding:0 18px;
  }
}
/*プレゼントはこちら*/
section.present .p_detail_inner{
  position:relative;
}
section.present .p_detail{
  width:100%;
}
section.present .p_detail_inner:after{
  content:"";
  display:block;
  clear:both;
}

section.present .p_detail .side_left {
    float: left;
    width: 340px;
    padding-bottom:14px;
    padding-left: 43px;
}

section.present .p_detail .side_right {
    float: right;
    text-align:right;
    width: 249px;
    padding-top: 34px;
}

section.present .p_detail .p_attention{
  color: rgb(0, 68, 160);
  line-height: 1.5;
  text-align: left;
}

@media screen and (max-width : 768px){
  section.present .p_detail .side_left {
    float: none;
    width: 100%;
    height: auto;
    padding: 0 18px;
    margin-bottom:20px;
  }
  
  section.present .p_detail .side_left div{
    text-align:center;
  }
  
  section.present .p_detail .side_right{
    float: none;
    width: 100%;
    height:auto;
    padding: 20px 0 20px 20%;
  }
}

/* アプリのダウンロード */
.download {
    text-align: center;
    font-size: 86%;
    font-weight: bold;
    margin:40px auto 50px auto;
}

.download ul{
  display:inline-block;
}
.download ul li{
  float:left;
  margin-left:7px;
}
.download ul li:first-child{
  margin-left:0;
}

@media screen and (max-width : 768px){
  .download {
    margin:40px 20px 30px 20px;
  }
  .download ul li{
    width:49%;
    margin-left:1%;
  }
  
}

/* 応募方法 */
.howto_post{
  padding-top:40px;
}

section.howto_post .box_accordion_insta{
  border-radius: 10px;
  width: 943px;
  height: auto;
  position:relative;
  margin-left:auto;
  margin-right:auto;
  margin-bottom:20px;
  background-color:#fff;
  padding:20px 13px;
}

section.howto_post h3{
  text-align:center;
}

section.howto_post h3 span{
  display:block;
}

section.howto_post h3.ico_plus{
  background:url(../common2/images/ico_plus.png) no-repeat right 20px center;
}

section.howto_post h3.ico_minus{
  background:url(../common2/images/ico_minus.png) no-repeat right 20px center;
}

@media screen and (max-width : 768px){
  section.howto_post{
    padding:5% 2% 0 2%;
  }
  section.howto_post .box_accordion_insta{
    width: 100%;
    padding:10px 10px;
    margin-bottom: 8px;
  }
  section.howto_post h3.ico_plus{
    background-position:right 5px center;
    background-size:18px 18px;
    padding:0 40px;
  }
  
  section.howto_post h3.ico_minus{
    background-position:right 5px center;
    background-size:12px 1.5px;    
  }
  
}

/*Step*/
section.howto_post .post_steps{
  background-image:url("../img/bg_ttl_steps.png");
  background-position:center top;
  background-repeat:no-repeat;
}
section.howto_post .post_steps:after{
  content:"";
  display:block;
  clear:both;
}
section.howto_post .post_steps>li{
  float:left;
  width:229px;
}
section.howto_post .post_steps h4{
  display:table;
  width:100%;
  height:63px;
}
section.howto_post .post_steps h4 span{
  display:table-cell;
  text-align:left;
  vertical-align:middle;
  padding-left:40px;
}
section.howto_post .post_steps .step01 h4 span{
   padding-left:24px;
}
section.howto_post .post_steps p{
  margin-top:20px;
  margin-bottom:20px;
  padding-left:25px;
  color:#2372ea;
  line-height:1.5;
  font-size:97.9%;
}
section.howto_post .post_steps .step02 p,
section.howto_post .post_steps .step03 p,
section.howto_post .post_steps .step04 p{
  padding-left:22px;
}
section.howto_post .post_steps figure{
  text-align:center;
}
section.howto_post .post_steps .step04 figure{
  text-align:right;
}

@media screen and (max-width : 768px){
  section.howto_post .post_steps{
    background-image:none;
  }
  
  section.howto_post .post_steps h4{
    height:45px;
  }
  
  section.howto_post .post_steps h4 span{
     padding-left:15px;
     padding-right:20px;
  }
  
  section.howto_post .post_steps li:nth-child(2) h4 span{
    padding-left:30px;
  }
  
  section.howto_post .post_steps li:nth-child(1n + 3) h4 span{
    padding-left:40px;
  }  
  
  section.howto_post .post_steps>li{
    width:50%;
    padding-bottom:23px;
  }  
  
  section.howto_post .post_steps>li.step01{
    background:url(../img/bg_ttl_steps1_sp.png) no-repeat top left;
    background-size: 100% 45px;
  } 
  section.howto_post .post_steps>li.step02{
    background:url(../img/bg_ttl_steps2_sp.png) no-repeat top left;
    background-size: 100% 45px;
  }
  
  section.howto_post .post_steps>li.step03{
    background:url(../img/bg_ttl_steps3_sp.png) no-repeat top left;
    background-size: 100% 45px;
  } 
  
  section.howto_post .post_steps>li.step04{
    background:url(../img/bg_ttl_steps4_sp.png) no-repeat top left;
    background-size: 100% 45px;
  }  
  
  section.howto_post .post_steps .step01 p{
     padding-left:5px;
  }
    
  section.howto_post .post_steps .step03 p,
  section.howto_post .post_steps .step04 p{
    padding-left:10%;
  }
  
  section.howto_post .post_steps .step04 p{
    padding-right:5%;
  }
  
  section.howto_post .post_steps figure {
    width:100%;
    padding:0 10%;
  }
  section.howto_post .post_steps .step04 figure{
    text-align:center;
  }  
        
}

/* 応募要項 */
.accordio_insta dl{
  margin:20px auto 0 auto;
  width:900px;
  border-top:solid 1px #9db4d7;
  padding:25px 0;
  color:#80a0d1;
}
.accordio_insta dl dd{
  margin-bottom:20px;
}

.accordio_insta dl dd ul li{
  text-indent: -1.0em;
  margin-left: 1em;
}

.accordio_insta dl dd ol{
  list-style:decimal;
  margin-left:2em;
}

@media screen and (max-width : 768px){
  .accordio_insta dl{
    width:100%;
    padding:13px 0;
}

}
