/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&display=swap');

body {
font-family: 'Noto Sans JP', sans-serif;
font-weight: bold;
}

.wrapper {
  overflow-x: hidden;
}

a {
    color: #FF00BE;
    text-decoration: underline;
}

a:hover {
	color: blue;
	text-decoration: none;
}

.wrapper::before {
content: "";
display: block;
position: fixed;
top: 0;
left: 0;
z-index: -1;
width: 100%;
height: 120vh;
background-repeat: no-repeat;
background-position: 50% 100%;
/* background-image: url(../img/bg_sp@2x.png); */
background-image: url(../img/bg_sp@2x.png);
background-size: cover;
}

@media screen and (min-width: 1024px) {
.wrapper::before {
height: 100vh;
background-image: url(../img/bg@2x.png);
background-position: top;
}
}



@keyframes infinity-scroll-left {
from {
  transform: translateX(0);
}
  to {
  transform: translateX(-100%);
}
}
.scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
.scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0
}
.scroll-infinity__list--left {
  animation: infinity-scroll-left 20s infinite linear 0.8s both;
}
.scroll-infinity__item {
  width: calc(100vw / 5);
}
.scroll-infinity__item>img {
  width: 100%;
}


/*////////////////////////// ALL //////////////////////////*/

a.ALL_btn {
display: inline-block;
width: 100%;
text-align: center;
text-decoration: none;
line-height: 60px;
color: #4d3c0b;
background-color: #e6b422;/*/<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<</*/
border-radius: 10px;
margin-bottom: 10px;
}
a.ALL_btn:hover {
background-position: right center;
background-size: 200% auto;
-webkit-animation: pulse 2s infinite;
animation: ripple 1.5s infinite;
color: #fff;
}
@keyframes ripple {
0% {box-shadow: 0 0 0 0 #ffffff;}
70% {box-shadow: 0 0 0 10px rgb(27 133 251 / 0%);}
100% {box-shadow: 0 0 0 0 rgb(27 133 251 / 0%);}
}

.ALL2_btn {
display: inline-block;
width: 100%;
text-align: center;
text-decoration: none;
line-height: 60px;
outline: none;
color: #fff;
background-color: #C60080;/*/<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<</*/
-webkit-transition: all .3s;
transition: all .3s;
border-radius: 10px;
}

.ALL2_btn:hover {
transform: scale(1.1,1.1);
}


.ALL3_btn {
display: inline-block;
width: 300px;
text-align: center;
text-decoration: none;
line-height: 60px;
outline: none;
color: #fff;
background-color: #C30D23;
-webkit-transition: all .3s;
transition: all .3s;
border-radius: 10px;
margin-top: 20px;
margin-bottom: 20px;
}

.ALL3_btn:hover {
transform: scale(1.1,1.1);
}


/*////////////////////////// 本文 //////////////////////////*/


.text-box{
display: inline-block;
margin-bottom: 0px;
width: 100%;
padding-left: 20px;
padding-right: 20px;
}

.text1-box{
display: inline-block;
margin-bottom: 20px;
width: 100%;
padding-left: 20px;
padding-right: 20px;
}

.text2-box{
display: inline-block;
margin-bottom: 50px;
width: 100%;
}

.font-l{
line-height: 1.7rem;
font-size: 1.2rem;
}
.font-m{
line-height: 1.7rem;
font-size: 1.0rem;
}
.font-s{
line-height: 1.8rem;
font-size: 0.8rem;
}

@media screen and (min-width: 1024px) {
.font-l{
font-size: 2.0rem;
line-height: 2.7rem;
}
.font-m{
font-size: 1.3rem;
line-height: 2.0rem;
}
.font-s{
font-size: 1.0rem;
line-height: 1.5rem;
}
}

/*////////////////////////// ribbon-title //////////////////////////*/

.ribbon1 {
display: inline-block;
position: relative;
height: 50px;/*リボンの高さ*/
line-height: 50px;/*リボンの高さ*/
text-align: center;
padding: 0 30px;/*横の大きさ*/
font-size: 1.2rem;/*文字の大きさ*/
background: #4B2300;/*塗りつぶし色*/
color: #FFF;/*文字色*/
box-sizing: border-box;
width: 100%;
margin-bottom: 20px;
}

.ribbon1:before, .ribbon1:after {
position: absolute;
content: '';
width: 0px;
height: 0px;
z-index: 1;
}

.ribbon1:before {
top: 0;
left: 0;
border-width: 25px 0px 25px 15px;
border-color: transparent transparent transparent #fff;
border-style: solid;
}

.ribbon1:after {
top: 0;
right: 0;
border-width: 25px 15px 25px 0px;
border-color: transparent #fff transparent transparent;
border-style: solid;
}

@media screen and (min-width: 1024px) {
.ribbon1 {
font-size: 1.5rem;/*文字の大きさ*/
}
}


.ribbon3 {
display: inline-block;
position: relative;
padding: 8px 20px;
font-size: 1.3rem;/*フォントサイズ*/
color: #FFF;/*フォントカラー*/
background: #604C3F;/*リボンの色*/
bottom: 20px;
width: 100%;
margin-top: 10px;
}

.ribbon3:before {
position: absolute;
content: '';
top: 100%;
left: 0;
border: none;
border-bottom: solid 15px transparent;
border-right: solid 20px rgb(201, 188, 156);/*折り返し部分*/
}


/*////////////////////////// ribbon-box //////////////////////////*/
.ribbon-wrapper {
display: block;
position: relative;
margin-top: 20px;
margin-right: auto;
margin-left: auto;
margin-bottom: 20px;
padding-top: 25px;
padding-right: 0;
padding-left: 0;
padding-bottom: 0px;
max-width: 1000px;
width: 90%;
background: #ffffff;
border-radius: 10px;
}

.ribbon {
display: inline-block;
position: relative;
box-sizing: border-box;
padding-top: 10px;
padding-right: 10px;
padding-left: 30px;
padding-bottom: 10px;
margin: 0 0 0 -20px;
width: calc(100% + 20px);
font-size: 1.5rem;
color: white;
background: #cca01d;
box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
}

.ribbon:before {
position: absolute;
content: '';
top: 100%;
left: 0;
border: none;
border-bottom: solid 15px transparent;
border-right: solid 20px #66500e;
}

.ribbon-inn {
width: 100%;
display: inline-block;
padding-top: 30px;
padding-right: 10px;
padding-bottom: 30px;
padding-left: 10px;
}

@media screen and (min-width: 1024px) {
.ribbon {
  font-size: 1.7rem;
}
}


.ribbon2-wrapper {
display: block;
position: relative;
margin-top: 20px;
margin-right: auto;
margin-left: auto;
margin-bottom: 20px;
padding-top: 25px;
padding-right: ;
padding-left: ;
padding-bottom: 0px;
max-width: 1000px;
width: 90%;
background-color: rgb(255, 255, 255, 0.5); 
border-radius: 10px;
}

.ribbon2 {
display: inline-block;
position: relative;
box-sizing: border-box;
padding-top: 10px;
padding-right: 10px;
padding-left: 30px;
padding-bottom: 10px;
margin: 0 0 0 -20px;
width: calc(100% + 20px);
font-size: 1.5rem;
color: white;
background: #E60012;
box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
}

.ribbon2:before {
position: absolute;
content: '';
top: 100%;
left: 0;
border: none;
border-bottom: solid 15px transparent;
border-right: solid 20px #C30D23;
}

.ribbon2-inn {
width: 100%;
display: inline-block;
padding-top: 30px;
padding-right: 10px;
padding-bottom: 30px;
padding-left: 10px;
}

@media screen and (min-width: 1024px) {
.ribbon2 {
font-size: 1.7rem;
}
}


.ribbon4-wrapper {
display: block;
position: relative;
margin-top: 20px;
margin-right: auto;
margin-left: auto;
margin-bottom: 20px;
padding-top: 25px;
padding-right: 0;
padding-left: 0;
padding-bottom: 0px;
max-width: 1000px;
width: 90%;
background: #ffffff;
border-radius: 10px;
}

.ribbon4 {
display: inline-block;
position: relative;
box-sizing: border-box;
padding-top: 10px;
padding-right: 10px;
padding-left: 30px;
padding-bottom: 10px;
margin: 0 0 0 -20px;
width: calc(100% + 20px);
font-size: 1.5rem;
color: white;
background: #231815;
box-shadow: 0 2px 2px rgba(0, 0, 0, 0.2);
}

.ribbon4:before {
position: absolute;
content: '';
top: 100%;
left: 0;
border: none;
border-bottom: solid 15px transparent;
border-right: solid 20px #9FA0A0;
}

.ribbon4-inn {
width: 100%;
display: inline-block;
padding-top: 30px;
padding-right: 10px;
padding-bottom: 30px;
padding-left: 10px;
}

@media screen and (min-width: 1024px) {
.ribbon4 {
font-size: 1.7rem;
}
}



/*////////////////////////// header //////////////////////////*/

.header {
position: relative;
}

.h-mainVisual img {
width: 100%;
height: ;
}

/*////////////////////////// header text //////////////////////////*/
.h-topText {
width: 96%;
height: ;
margin-top: -180;
text-align: center;
margin-left: auto;
margin-right: auto;
position: relative;
background: #9E9E9E;
background-color: #FFFFFF;
padding: 20px;
border: 3px solid #C60080;/*/<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<</*/
}

.h-box {
background-color: #FFFFFF;
border-width: 3px;
}

.h-font-l {
font-size: 2.5rem;
line-height: 2.8rem;
text-align: center;
}

.h-font-m {
font-size: 1.3rem;
line-height: 1.9rem;
text-align: center;
}

.h-font-s {
font-size: 0.8rem;
line-height: 1.8rem;
text-align: center;
}

.grid {
display: grid;
width: 96%;
gap: 10px;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
margin-left: auto;
margin-right: auto;
}

.glid-box {
    max-width: 1000px;
    width: 96%;
    height: auto;
    margin-top: 5px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 5px;
}


.grid2 {
display: grid;
width: 96%;
gap: 10px;
grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
margin-left: auto;
margin-right: auto;
}

.glid2-box {
max-width: 1000px;
width: 96%;
height: auto;
margin-top:10px;
margin-right: auto;
margin-left: auto;
}


@media screen and (min-width: 1024px) {
.h-topText {
width: 1000px;
height:;
margin-top: -0px;
max-height: ;
margin-left: auto;
margin-right: auto;
position: relative;
background: #9E9E9E;
background-color: #FFFFFF;
padding: 20px;
}

.h-font-l {
font-size: 3.0rem;
line-height: 4rem;
text-align: center;
}

.h-font-m {
font-size: 1.3rem;
line-height: 2.0rem;
text-align: center;
}

.h-font-s {
font-size: 1.0rem;
line-height: 1.3rem;
text-align: center;
}

.glid-box {
margin-top:30px;
}

}


/*////////////////////////// girdimg //////////////////////////*/
.gird-guide{
width: 100%;
margin-right: auto;
margin-left: auto;
display: block;
}



/*////////////////////////// main //////////////////////////*/

.main {}

.m-title {
  max-width: 600px;
  max-height: 198px;
  width: 96%;
  height: auto;
  margin: 35px auto 10px;
  display: block;
}

.m-textBox {
    max-width: 1000px;
    width: 96%;
    height: auto;
    margin: auto;
    position: relative;
    border: 3px solid #000000;
    background-color: #fff;
    border-radius: 10px;
}

@media screen and (min-width: 1024px) {
  .m-textBox {}
}


/* ////////////////////////// 優勝決定 ////////////////////////// */
.kettei {
    max-width: 1000px;
    width: 96%;
    height: auto;
    position: relative;
    background-color: #FFFFFF;
    border: 5px solid #000000;
    margin-top: 96px;
    margin-right: auto;
    margin-left: auto;
    padding-top: 10%;
    padding-right: 0;
    padding-left: 0;
    padding-bottom: 5%;
    margin-bottom: 5%;
}

.kettei-title {
  max-width: 600px;
  max-height: 198px;
  width: 96%;
  height: auto;
  margin: 35px auto 10px;
  display: block;
  position: absolute;
  top: -80px;
  left: 0;
  right: 0;

}

.kettei-inner {
  width: 94%;
  margin: auto;
  
}
.kettei-toptext {
    letter-spacing: 0.7px;
    line-height: 26px;
    font-size: medium;
}
.kettei-rule {
  width: 100%;
  background-color: #FFFFFF;
  border: 4px solid #000000;
  padding: 48px 16px 0;
  margin-top: 48px;
  position: relative;
}
.kettei-rule-title {
  position: absolute;
  width: 200px;
  height: auto;
  top: -35px;
  left: 0;
  right: 0;
  margin: auto;

}
.kettei-rule-headtitle1 {
  font-size: 1.3rem;
  letter-spacing: 1.8px;
  line-height: 32px;
  height: 32px;
  width: 100px;
  text-align: center;
  background-color: #8C6239;
  font-weight: 800;
  color: #fff;
  border-radius: 8px;
}
.kettei-rule-headtitle2 {
  font-size: 1.3rem;
  letter-spacing: 1.8px;
  line-height: 32px;
  height: 32px;
  width: 100px;
  text-align: center;
  background-color: #000000;
  font-weight: 800;
  color: #fff;
  border-radius: 8px;
}
.kettei-rule-midleText {
    letter-spacing: 1.9rem;
    line-height: 1.3rem;
    margin-top: 8px;
    font-size: medium;
}
.kettei-rule-final {
  margin-top: 32px;
}
.kettei-rule-resurt {
  width: 100%;
  margin: 24px auto 40px;
  padding: 24px 8px;
  border: 3px solid #000000;
  border-radius: 8px;
  position: relative;
}
.kettei-rule-resurt-text {
    letter-spacing: 0.5px;
    line-height: 30px;
    text-align: center;
    font-size: medium;
}
.kettei-rule-resurt-head {
  font-size: 18px;
  letter-spacing: 1.8px;
  line-height: 8px;
  font-weight: 800;
  padding: 8px;
  position: absolute;
  top: -16px;
  border-radius: 8px;
  background-color: #fff;
  border: 3px solid #000000;
  height: 32px;
  text-align: center;
  color: #000000;

}
.kettei-rule-resurt-text-small {
  font-size: 10px;
  letter-spacing: 0.2px;
  line-height: 12px;
}
.kettei-rule-level {
    width: 100%;
    margin-top: 24px;
    margin-right: auto;
    margin-left: auto;
    padding: 24px 8px;
    border: 3px solid #000000;
    border-radius: 8px;
    position: relative;
}
.kettei-rule-level-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: distribute;
      justify-content: space-around;
}

@media screen and (min-width: 1024px) {
  .kettei {
    padding-top: 20px;
  }
  .kettei-inner {
    max-width: 100%;
  }
  .kettei-toptext {
    font-size: 22px;
    letter-spacing: 1.1px;
    line-height: 36px;
  }
  .kettei-rule {
    margin-top: 88px;
    padding-left: 40px;
    padding-right: 40px;
  }
  .kettei-rule-title {
    width: 250px;
    top: -50px;
  }
  .kettei-rule-headtitle1,
  .kettei-rule-headtitle2 {
    height: 50px;
    font-size: 1.3rem;
    letter-spacing: 2.4px;
    line-height: 50px;
    margin-bottom: 10px;
  }
  .kettei-rule-midleText {
    font-size: 26px;
    letter-spacing: 1.3px;
    line-height: 36px;
  }
  .kettei-rule-final {
    margin-top: 16px;
  }
  .kettei-rule-resurt,
  .kettei-rule-level {
    max-width: 95%;
  }
  .kettei-rule-resurt {
    margin-top: 36px;
    width: 95%;
  }
  .kettei-rule-resurt-head {
    height: 40px;
    font-size: 22px;
    letter-spacing: 2.2px;
    line-height: 18px;
  }
  .kettei-rule-resurt-text {
    font-size: 1.3rem;
    letter-spacing: 1.1px;
    line-height: 2.0rem;
    margin-top: 10px;
  }
  .kettei-rule-resurt-text-small {
    font-size: 16px;
    letter-spacing: 0.8px;
  }
}



/*////////////////////////// flow //////////////////////////*/



.m-textBox__flow {
  padding: 54px 14px 20px 20px;
}

.m-title__flow-wrap {
  padding: 6px 60px 0px 20px;
  height: 30px;
  background-color: #000000;
  color: #fff;
  font-size: 14px;
  font-weight: bold;
  position: absolute;
  top: -1px;
  left: -1px;



}

.m-title__flow--try {
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 0 52px 60px;
  border-color: transparent transparent #ffffff transparent;
  position: absolute;
  top: 1px;
  right: -0.5px;

}

.m-textBox__flow--under {
  margin-bottom: 24px;
}

.m-textBox__flow--under:after {
  content: "";
  position: absolute;
  right: 0;
  bottom: -27px;
  left: 0;
  width: 0px;
  height: 0px;
  margin: auto;
  border-style: solid;
  border-color: #000000 transparent transparent transparent;
  border-width: 24px 22px 0 22px;
}

.m-text {
  font-size: 14px;
  /* font-weight: bold; */
  line-height: 1.8;
}

.m-title__small {
  width: 162px;
  height: 73px;
  -o-object-fit: contain;
    object-fit: contain;
}

.m-text__bg {
  background-color: #FFFFE5;
  max-width: 600px;
}

@media screen and (min-width: 1024px) {
  .flow {
    padding-bottom: 20px;
  }

  .m-textBox__flow {
    padding: 65px 45px 20px;
  }

  .m-title__flow-wrap {
    padding: 14px 60px 16px 20px;
    font-size: 24px;
    height: 50px;
  }

  .m-title__flow {
    margin-top: 70px;
  }

  .m-text {
    font-size: 18px;

  }

  .m-title__small {
    width: 220px;
    height: 70px;
  }


}

/*///////////// 期間 ///////////////*/
.kikan {
  padding-top: 100px;
  position: relative;
}

.title__kikan {
  position: absolute;
  top: 5px;
  left: 0;
  right: 0;
  z-index: 5;
}

.kikan__present {
  width: 100%;
  max-width: 600px;
  display: block;
  margin: -50px auto 0;
}

.kikan__text {
  font-size: 16px;
  text-align: center;
  line-height: 3.0rem;
}

.bg__event-kikan {
  width: 96%;
    max-width: 1000px;
    margin: auto;
    padding-top: 10%;
    /* background-color: rgb(120, 222, 213, 0.5); */
    margin-top: 0;
    padding-bottom: 40px
}



@media screen and (min-width: 1024px) {

  .kikan {
    margin-top: 90px;
  }

  .title__kikan {
    top: -20px;
  }

  .bg__event-kikan {
    margin-top: 0;
    padding-top: 60px;
    padding-bottom: 60px;
  }

  .kikan__text {
    font-size: 28px;
    
  }
}


/* //////////////////////////event////////////////////////// */
.event {
  position: relative;
  padding-top: 70px;
}

.title__event {
  position: absolute;
  top: -5px;
  left: 0;
  right: 0;
  z-index: 5;

}

.bg__event {
  width: 96%;
  max-width: 1000px;
  margin: auto;
  padding-top: 15%;
  background-color: rgb(255, 255, 255, 0.5); 
  margin-top: 0;
  padding-bottom: 40px;
}

.member__box {
  text-align: center;
  margin-bottom: 30px;
}

.member__img img {
    width: 86%;
    margin: auto;
    max-width: 360px;
    border-radius: 15px;
    -webkit-box-shadow: 5px 5px 5px #333333;
    background-image: -webkit-linear-gradient(270deg,rgba(255,255,255,1.00) 0%,rgba(211,192,249,1.00) 100%);
    background-image: -moz-linear-gradient(270deg,rgba(255,255,255,1.00) 0%,rgba(211,192,249,1.00) 100%);
    background-image: -o-linear-gradient(270deg,rgba(255,255,255,1.00) 0%,rgba(211,192,249,1.00) 100%);
    background-image: linear-gradient(180deg,rgba(255,255,255,1.00) 0%,rgba(211,192,249,1.00) 100%);
}

.member__profile {
    width: 94%;
    padding-top: 25px;
    padding-bottom: 20px;
    margin: -20px auto 0;
    background-color: #fff;
	/*
    border: 3px solid #036EB8;
	*/
    border-radius: 15px;
    -webkit-box-shadow: 5px 5px 5px #333333;
}

.mamber__name {
    font-size: 2rem;
    max-height: 42px;
    width: 100%;
    font-weight: bold;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    margin-top: 10px;
    text-align: center;
    margin-bottom: 10px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 10px;
    padding-right: 10px;
}

.mamber__serial {
    font-size: 1.0rem;
    max-height: 42px;
    width: 100%;
    font-weight: bold;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    margin-top: 10px;
    text-align: center;
    margin-bottom: 10px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 10px;
    padding-right: 10px;
}

.member__sns {
  margin-top: 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.twiter__icon {
  margin-right: 14px;

}

.instagram__icon {
  margin-left: 14px;
}

.member__sns--textLeft {
  text-align: left;
  width: 260px;
  margin: 20px auto 0px;
  line-height: 1.5;
  letter-spacing: 1.7px;
}


.member__app {
  margin-top: 20px;
}

.member__app--download {
  margin-bottom: 24px;

}

.m-text__btn {
  background-color: #000000;
  color: #fff;
  font-weight: bold;
  border-radius: 5px;
  padding: 2px;
}



@media screen and (min-width: 1024px) {
  .title__event {
    top: 0px;


  }

  .bg__event {
    margin-top: 0;
    padding-top: 70px;
    padding-bottom: 40px;
  }

  .member__box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    /* max-width: 800px;
    max-height: 444px; */
    width: 90%;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    margin: auto auto 10px;
  }

  .member__img img {
    width: 500px;
    z-index: 20;
    max-width: 315px;
  }

	
  .member__profile {
    max-width: 860px;
    width: 90%;
  }

  .mamber__name {
    text-align: left;
    display: block;
    max-height: 52px;
    width: auto;
    font-size: 2.5rem;
    font-weight: bold;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
   }
  


.mamber__serial {
    text-align: left;
    display: block;
    max-height: 52px;
    width: auto;
    font-size: 1.2rem;
    font-weight: bold;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;
    margin-top: 10px;
  }

  .member__sns {
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
    margin-top: 30px;
  }


  .member__app {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: left;
        -ms-flex-pack: left;
            justify-content: left;
  }

  .member__app--download {
    margin-bottom: 0px;
    margin-right: 10px;

  }

}


/*////////////////////////// entry //////////////////////////*/
.entry {
  max-width: 1200px;
}

.entry__box {
  margin: auto;
}


@media screen and (min-width: 1024px) {
  .entry {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: auto;
  }

  .entry__box {
    margin: auto;
    width: 50%;
  }

}

/*///////////// winner ///////////////*/
.winner {
  padding-top: 80px;
  position: relative;
}

.title__winner {
  position: absolute;
  position: absolute;
  top: 10px;
  left: 0;
  right: 0;
  z-index: 5;
}

.winner__present {
  width: 100%;
  max-width: 600px;
  display: block;
  margin: 20px auto 10px;
}


@media screen and (min-width: 1024px) {
  .winner {
    margin-top: 50px;
  }
  

  .winner__present {}

  .title__winner {
    top: -10px;
  }
}



/* //////////////////////////イベント参加特典////////////////////////////// */
.tokuten {
  padding-bottom: 180px;
  /* background-image: url(../img/tokuten_frame_sp@2x.png);
background-size: cover;
background-repeat: no-repeat; */
  width: 96%;
  margin: auto;
  margin-top: 100px;
  /* margin-bottom: 100px; */
  position: relative;
}


.title__tokuten {
  position: absolute;
  top: -60px;
  left: 0;
  right: 0;
  z-index: 5;
}

.tokuten_frame {
  width: 100%;
  margin: auto;
  display: block;
  max-width: 1000px;
  height:100%;

}

.tokuten_content {
  width: 82%;
  position: absolute;
  margin: auto;
  top: 8%;
  left: 0;
  right: 0;
}

.tokuten_content p {
  font-size: 15px;
  line-height: 1.8;
}


.tokuten_content:nth-of-type(2) {
  top: 30%;
}


.tokuten_content img {
  width: 160px;
  height: ;
}


.tokuten__monica {
  width: ;
  height: 300px;
  position: absolute;
  bottom: -50px;
  right: -45px;
}

.tokuten__breakTab {
  display: none;
}

.small_text {
  font-size: 14px;
}


@media screen and (min-width: 768px) {
  .tokuten {
    margin-top: 150px;
  }

  .title__tokuten {
    top: -95px;
  }

  .tokuten_content {
    max-width: 800px;

  }

  .tokuten_frame {
    display: none;
  }

  .tokuten__breakTab {
    display: block;
  }

  .tokuten_content {
    top: 9%;
  }

  .tokuten_content:nth-of-type(2) {
    top: 30%;
  }



  /* .tokuten_content:nth-of-type(2) {
  top: 50%;
} */

  .tokuten_content p {
    font-size: 18px;
  }

  .tokuten_content img {
    width: 160px;
    height: ;
  }

}


@media screen and (min-width: 1024px) {

  .tokuten {
    max-width: 1200px;
  }

  .tokuten__monica {
    width: ;
    height: 450px;
    bottom: -50px;
    right: -20px;
  }

}


/* ////////////////////////// attention ////////////////////////// */
.attention {
position: relative;
margin-top: 20px;

}

.title__attention {
  position: absolute;
  margin: auto;
  left: 0;
  right: 0;
  top: -30px;
}

.attention__box {
    width: 98%;
    margin: auto;
    padding-top: 20px;
    padding-right: 20px;
    padding-left: 20px;
    padding-bottom: 20px;
    max-width: 1000px;
}

.attention__box p {
  overflow-y: scroll;
  height: 438px;
  font-size: 14px;
  line-height: 1.8;
}





@media screen and (min-width: 1024px) {
  .attention {
    margin-top: 0px;
  }

  .attention__box {
    padding-top: 0px;
    padding-right: 5px;
    padding-left: 5px;
    padding-bottom: 12px;
  }

  .attention__box p {
    font-size: 1.0rem;

  }
}


/* ////////////////////////// guide ////////////////////////// */
.guide {
  padding-top: 100px;
  position: relative;
  margin-bottom: 130px;

}

.title__guide {
  position: absolute;
  top: 20px;
  left: 0;
  right: 0;
  z-index: 5;
}

.bg__guide {
  width: 96%;
  max-width: 1000px;
  margin: auto;
  padding-top: 13%;
  margin-top: 0;
  padding-bottom: 40px;
}

.guide__box {
  width: 80%;
  margin: auto;
  text-align: center;
}

.guide__box:nth-of-type(2) {
  margin-top: 40px;
}

.guide__btn--game {
  width: 250px;
  height: 72px;
  margin-top: 10px;
  display: block;
  margin: 10px auto auto;
}

.guide__btn--guild {
  max-width: 345px;
  width: 100%;
  margin-top: 10px;
  display: block;
  margin: 10px auto auto;
}

.guide__btn--guild img {
  width: 100%;
}

.guide__beatrix {
  width: 192px;
  height: 199px;
  position: absolute;
  bottom: -155px;
  left: -55px;
}


@media screen and (min-width: 1024px) {
  .guide {
    max-width: 900px;
    margin: auto auto 130px;
  }

  .bg__guide {
    padding-top: 15%;
    padding-bottom: 63px;
  }

  .guide__beatrix {
    width: 378px;
    height: 391px;
    left: -170px;
    bottom: -100px;

  }

}

/* ////////////////////////// contact ////////////////////////// */
.contact {
  padding-top: 100px;
  position: relative;
  margin-bottom: 70px;

}

.title__contact {
  position: absolute;
  top: 40px;
  left: 0;
  right: 0;
  z-index: 5;
}

.bg__contact {
  width: 96%;
  max-width: 1000px;
  margin: auto;
  padding-top: 13%;
  margin-top: 0;
  padding-bottom: 10px;
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 50px;
}

.contact__box {
  width: 96%;
  margin: auto;
  text-align: center;
  background-color: #FFFFFF;
  border-radius: 50px;
  padding: 40px 20px 20px;
}



@media screen and (min-width: 1024px) {
  .contact {
    margin-top: 100px
  }
  .title__contact { 
    top: 10px;
  }

  .bg__contact {
    padding-top: 6%;
    padding-bottom: 30px;
    width: 94%;
    background-color: rgba(255, 255, 255, 0.8);
  }



}


/* ////////////////////////// footer ////////////////////////// */
.footer {
  width: 100%;
  padding: 20px 0;
  text-align: center;
  background-color: #C60080;/*/<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<</*/

}

.footer small {
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.copy {
  font-size: 10px;
}

@media screen and (min-width: 1024px) {
  .footer {
    padding: 20px 0;
  }
}



/* ////////////////////////// 全体・パーツ等 ////////////////////////// */
a:hover {
  opacity: 0.8;
}


.is-pc {
  display: none;
}


.youtube__container {
  position: relative;
  padding-bottom: 56.25%;
  /*アスペクト比 16:9の場合の縦幅*/
  height: 0;
  overflow: hidden;
  width: 90%;
  margin: auto
}

.youtube__container iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.color__wt {
  background-color: rgba(255, 255, 255, 0.8)
}

.color_green {
  color: #56DBCE;

}

.mail {
  text-decoration: underline;
}

.text_wt {
  color: #FFFFFF;
}

.max_wd600 {
  width: 96%;
  margin: auto;
}

.text_wd80 {
  width: 80%;
  margin: auto
}

.width_96 {
  width: 96%;
  
}


@media screen and (min-width: 768px) {
  .is-sp {
    display: none;

  }

  .is-pc {
    display: block;
  }

  .fontSize14__pc {
    font-size: 14px;
  }

  .download__btn,
  .gird__btn {
    max-width: 250px;
  }

  

  .flex__revers {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }

  .max_wd600 {
    max-width: 600px;
    margin: auto;
  }

  .member__sns--textLeft {
    margin-left: 20px;
    margin-right: 0;
    margin-top: 0;
  }


}

@media screen and (min-width: 1024px) {
  .left__borderNon {
    /*padding-left: 16px;*/
    border-left: none;
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
 }

  .right__borderNon {
    /*padding-left: 24px;*/
    border-right: none;
    border-top-right-radius: 0px;
    border-bottom-right-radius: 0px;
  }

}



/* ローディング画面 */
#loading {
  width: 100vw;
  height: 100vh;
  -webkit-transition: all 1s;
  -o-transition: all 1s;
  transition: all 1s;
  background-color: #C60080;/*/<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<</*/
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
}

.spinner {
  width: 100px;
  height: 100px;
  margin: 45vh auto;
  background-color: #fff;
  border-radius: 100%;
  -webkit-animation: sk-scaleout 1.0s infinite ease-in-out;
          animation: sk-scaleout 1.0s infinite ease-in-out;
}

/* ローディングアニメーション */
@-webkit-keyframes sk-scaleout {
  0% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }

  100% {
    -webkit-transform: scale(1.0);
            transform: scale(1.0);
    opacity: 0;
  }
}
@keyframes sk-scaleout {
  0% {
    -webkit-transform: scale(0);
            transform: scale(0);
  }

  100% {
    -webkit-transform: scale(1.0);
            transform: scale(1.0);
    opacity: 0;
  }
}

.loaded {
  opacity: 0;
  visibility: hidden;
}

.border_papul {
  background-color: #FFFFFF;
  border: 5px solid #000000;
}

.toumei {
  background-color: #FFFFFF;
}

.text-color__wt {
  color: #FFFFFF;
}




html {
    scroll-behavior: smooth;
}
.pagetop {
    height: 50px;
    width: 50px;
    position: fixed;
    right: 30px;
    bottom: 30px;
    background: #fff;
    border: solid 2px #000;
    border-radius: 15%;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2;
}

.pagetop__arrow {
    height: 10px;
    width: 10px;
    border-top: 3px solid #000;
    border-right: 3px solid #000;
    transform: translateY(20%) rotate(-45deg);
}