@charset "UTF-8";


/* --------------------------------------------------------------------------------------------
1-1: RESET
-------------------------------------------------------------------------------------------- */
@import url(sanitize.css);
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&display=swap");
@import url('https://fonts.googleapis.com/css2?family=Great+Vibes&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto+Condensed:wght@400;500;700&display=swap');

/* --------------------------------------------------------------------------------------------
  HTML + BODY
-------------------------------------------------------------------------------------------- */
html { font-size: 62.5%; }
body { font-size: 1.8rem;letter-spacing: .075em; font-family: "Noto Sans JP","ヒラギノ角ゴシック","Hiragino Sans","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",sans-serif;color:#252525;margin:0;padding:0;}
ul,ol {margin:0;padding: 0;}
li{list-style-type: none;}

img{max-width: 100%}


/* --------------------------------------------------------------------------------------------
  GENERAL SETTING
-------------------------------------------------------------------------------------------- */

@media screen and (min-width:768px){
  .sp{
    display:none!Important;
  }
}
@media screen and (max-width:767px){
  .pc{
    display:none!Important;
  }
}





body{
  text-align: center;
  background: #f6efe9;
  line-height: 1.8;
}



a{
  text-decoration:none;
  color: #231815;
}


.box02-place a[href^="http"]::after {
  content: "";
  display: inline-block;
  width: 0.8em;
  height: 0.8em;
  margin-left: 0.25em;

  background-size: 100%;
  background-image: url("../img/marker.svg");
}

.container{
  max-width: 960px;
  width: 100%;
  margin: auto;
  /*padding: 100px 15px 0;
  text-align: center;*/
}


footer{
  padding: 10% 0 3%;
  text-align:center;
}
footer .logo img{margin: 30px auto}
footer .copy{font-size:1.4rem}





a.btn_link {
  display: block;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  width: 30%;
  margin:  4% auto;
  padding: 3rem 4rem;
  font-weight: bold;
  background: #E40180;
  color: #fff;
  border-radius: 60px;
  transition: 0.5s;
}
a.btn_link:hover {
  color: #fff;
  background: #e0a3c5;
}



.btn_ig{
  line-height:1;
  font-size:1.2rem;
}
.btn_ig img{
  margin: auto;
}





fv_float{
  background:url(../img/fv03_02.png) no-repeat;
  background-size:contain;
  
}
  fv_float{      border:3px solid #ccc;}
@media screen and (max-width:767px){
  fv_float{
    background:url(../img/fv03_02.png) no-repeat;
    background-size:contain;
          height: 40vh;
  }
}

@media screen and (min-width:768px) and ( max-width:960px) {
  fv_float{
    background:url(../img/fv03_02.png) no-repeat;
    background-size:contain;
    min-height: 625px;
  }
}
@media screen and (min-width:961px) {
  .v_float{
      background:url(../img/fv03_02.png) no-repeat;
      background-size:contain;
      min-height: 625px;

    }
}


.fv_float-wrap{
  width:100%
  height:auto;
  padding-top:65.1041666667%;
  position:relative;
  background:url(../img/fv03_02.png) no-repeat;
  background-size:contain;
}

.fv_float{
  position:absolute;
  top:50%;
  left:50%;
  transform: translate(-50%, -65%);
  width: 60%;
}







.fv_float_in img{
  margin: auto;
/*  width: 60%;*/
}

.fv_float_in img {
  animation: floating-y 1s ease-in-out infinite alternate-reverse;
}
@keyframes floating-y {
  0% {
    transform: translateY(-1.2%);
  }
  100% {
    transform: translateY(1.2%);
  }
}



.ttl-event{
  width:80%;
  margin: 0 auto 3%;
}

.event-box{
  background:#fff;
  border-radius:12px;
  padding:8%;
  margin: 0 15px;
  margin-bottom: 3%;
}

.lead{
  margin: 6% 0;
}

.box01,.box02{
  margin: 0 0 20%;
}
.box01,.box02,.box03{
  text-align:left;
}






.box01 .box01-event{
  margin: 6% 3%;
}

.box01 .box01-event h3{
  color: #e40073;
  margin: 0 0 1rem;
}

.box01 .box01-event ul li{
  margin:0 0 1rem 1rem;
  font-weight:bold;
/*  display:flex;
  flex-wrap: wrap;*/
  align-items:center;
}
.box01 .box01-event ul li::before {
    content:  "●";
    margin:0 1rem 0 0;
}

.box01 .box01-event ul li a{
  display:flex;
  flex-wrap: wrap;
  align-items:center;
  margin: 0 0 0 2rem;
  color:#E40073;
}


.box01 .box01-event ul li img.ig-icon-sq{
  width: 20px;
  margin: 0 5px 0 10px;
}

.box01 .box01-event span.nml{
  font-weight: normal;
  margin-left: 3rem;
  display:block;
}


.box01 .box01-event ul li ul li{
  margin: 0 0 0 3rem;
}
.box01 .box01-event ul li ul li:nth-child(1){
  margin-bottom:1rem;
}
.box01 .box01-event ul li ul li::before {
    content:  "○";
    margin:0 0.5rem 0 0;
}
.box01 .box01-event ul li ul li span{
  font-weight: normal;
}

.box01 .box01-event ul li ul li span::before {
    content:  "・";
    margin: 0 0 0 2rem;
}


.box01 .box01-event ul li.booth21{
    margin: 15px 0 15px 1rem;
}
.box01 .box01-event ul li.booth21::before{
    content: none;
}

.box01 .box01-event ul li.booth21 span{
    background:#ebebec;
    padding: 5px 10px;
}




.box02 .box02-prize{
  display: flex;
  flex-wrap: wrap;
  justify-content:space-between;
}
.box02 .box02-prize img{
  width:100%;
}
.box02 .box02-prize .item:nth-child(1){
  width:60%;
}
.box02 .box02-prize .item:nth-child(2){
  width:35%;
}



.box02 .box02-place{
  /*display:flex;
  flex-wrap:wrap;*/
}

.box02 .box02-place .item{
  text-align: left;
  margin: 3% 0 3%;
}

.box02 .box02-place .item h3{
  color:#e40073;
  margin: 0 0 1rem;
}
.box02 .box02-place .item ul{
  display:flex;
  flex-wrap:wrap;
  margin-left: 2rem;
}
.box02 .box02-place .item:nth-child(1) ul li{
/*    width: 48%;*/
    margin-right: 4%;
}

.box02 .box02-place .item ul li{
    
}


.box03-place{
  text-align:left;
  margin: 6% 0;
}
.box03-place p{
  margin: 0 0 0 2rem;
}

.box03-place h3{
  color:#e40073;
  margin: 2rem 0 1rem;

}
.box03-place ul li{
  color:#E60012;
  margin: 0 0 0 2rem;
  font-size:1.6rem;
}



.box03 .box03-flow01{
  border: 2px solid #1f296a;
  border-radius: 9px;
  margin:6% 0 6%;
  position:relative;
}
.box03 .box03-flow01 a{
  display: block;
/*  position:absolute;*/
/*  bottom: 0;*/
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  width: 80%;
  margin: 4% auto;
  padding: 3rem 4rem;
  font-weight: bold;
  background: #E40180;
  color: #fff;
  border-radius: 60px;
  transition: 0.5s;
  font-size:2.4rem;
}


.box03 .box03-flow01 .ig-link{
  position:absolute;
  top: ;
  left: ;
}

.box03 .box03-flow01 .ig-link a{
  background:none;

}





.box03 .box03-flow02{
  border: 2px solid #1f296a;
  border-radius: 9px;
  margin:6% 0 6%;
}

.box03 .box03-flow02 a{
  display: flex;
  justify-content:center;
  align-items: center;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  width: 80%;
  margin: 3% auto 4%;
  padding: 2rem 4rem;
  font-weight: bold;
  background: #E40180;
  color: #fff;
  border-radius: 60px;
  transition: 0.5s;
  font-size:2.4rem;
}




.box03 .box03-flow02 a img{
  margin-right: 15px;
}


.box03 .box03-flow02 .ig-link{
  position:relative;
}

.box03 .box03-flow02 .ig-link .ig-link-img{
  position: absolute;
  top: -20%;
  left: 10%;
  width: 15%;
}



/*.box03 .box03-flow02 .ig-link{
  position:absolute;
  right: 3%;
  font-size:12px;
  text-align: center;
  top: 50%;
  transform: translateY(-50%) translateX(-50%); /*要素の大きさの半分ずつを戻す*/
  -webkit-transform: translateY(-50%);
  color:#E40180;
  font-weight:bold;

}

.box03 .box03-flow02 .ig-link a{
  display:block;
}

.box03 .box03-flow02 .ig-link a img{
  margin: auto;
  width: 115%;
}*/


.box03-att{
  font-size:1.4rem;
  text-align:left;
  margin:2% 0 0;
}










@media screen and (max-width:767px){
  body{
    font-size:1.6rem;
  }
  footer .copy {
    font-size: 1.2rem;
    padding: 3%;
  }

  a.btn_link {
    width:90%;
    margin:  10% auto 6%;
    font-size:1.4rem;
  }


  .event-box{
    padding:8% 4%;
  }

  .lead{
    font-size: 1.6rem;
    padding: 6% 2%;
  }

  .box01 .box01-event ul li{
    font-size: 1.6rem;
  }

  .box01 .box01-event ul li.booth21{
    font-size:1.5rem;
  }


  .box02 .box02-prize .item:nth-child(1),
  .box02 .box02-prize .item:nth-child(2){
    width:100%;
    text-align:center;
    margin:3% 0;
  }


  .box03 .box03-flow01 a{
    width: 96%;
    padding: 2rem 0;
    font-size:1.8rem;
  }

  .box03 .box03-flow02 a{
    width: 96%;
    padding: 2rem 0 2rem 3rem;;
    text-align: left;  
    font-size: 1.4rem;
  }

  .box03 .box03-flow02 .ig-link .ig-link-img {
      position: absolute;
  /*    top: 0;
      left: 1%;*/
      width: 18%;
        top: 50%;
    left: 2%;
    transform: translateY(-50%) ;
  }


  .box03-place ul li{
    font-size:1.4rem;
    letter-spacing: 0;
  }

  .box01 .box01-event ul li{
    margin: 0 0 15px;
  }
  .box01 .box01-event ul li img.ig-icon-sq{
    margin: 0 5px 0 1.2rem;
  }

  
}



.canbadge{
  width:30%;
  margin:auto;
}

@media screen and (max-width:767px){
  .canbadge{
    width:50%;
    margin:10px auto;
  }

}



.txt14{
  font-size:1.4rem;
}

.text-bold{
  font-weight:bold;
  font-size:1.9rem;
}

@media screen and (max-width:767px){
  .text-bold{
    font-weight:bold;
    font-size:1.7rem;
  }
}




.attention{
  background: #ff0000;
  text-align:center;
  padding:4% 0;
  margin: 6% 2% 8%;
  border-radius:3px;
  color:#fff;
  font-weight: bold;
  font-size:2.8rem;
  line-height:1.4;
}








