/*--------------------------------------------------------------
/* base
---------------------------------------------------------------*/
html{
  font-size: 62.5%;
}

body{
  font-size: 1.4rem;
  line-height: 1.6;
  font-weight: normal;
  font-style: normal;
  color: #000;
  font-family: 'Noto Sans JP', "游ゴシック" , sans-serif;
  position:relative;
}


a{
  color:#333;
}

a:hover{
  color:#999;
  text-decoration:none;
}

ul,
ol {
  list-style: none;
  margin:0;
  padding:0;
}

h1{
  font-size:3.15rem;
  letter-spacing:0.05em;
  font-weight:700;
  margin-bottom:0;
}

h2{
  font-size:2.15rem;
  letter-spacing:0.05em;
  font-weight:700;
}

h3{
  font-size:1.75rem;
  letter-spacing:0.05em;
  font-weight:700;
}


@media(min-width: 992px) {
body{
  font-size: 1.6rem;
}
h2{
  font-size:3.15rem;
}

}


/*--------------------------------------------------------------
/* common
---------------------------------------------------------------*/
.gmap {
height: 0;
overflow: hidden;
padding-bottom: 56.25%;
position: relative;
}
.gmap iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}

.icon-twitter .fa-twitter{
  color: #FFF;
}
.icon-twitter .fa-square{
  color:#1da1f2;
}

.icon-facebook .fa-facebook-f{
  color: #FFF
}
.icon-facebook .fa-square{
  color:#4267b2;
}

.icon-instagram .fa-instagram{
  color: #FFF
}
.icon-instagram .fa-square{
  color: transparent;
  background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
  background: -webkit-radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%);
  background-clip: text;
  -webkit-background-clip: text;
}
.text-underline{
  text-decoration: underline;
}

/*--------------------------------------------------------------
/* #header
---------------------------------------------------------------*/
header .fixed-top{
  position:relative;
  background-color:#000;
}
header .title p{
  font-size:1.4rem;
  font-weight:700;
  color:#FFF;
  margin-bottom:0;
}
header .mail{
  position:fixed;
  text-align:center;
  width:100%;
  bottom:0;
  right:0;
}
header .mail p{
  font-size:1.8rem;
  font-weight:700;
  line-height:1;
  margin-bottom:0;
  background-color:#EC6B1A;
}
header .mail a{
  display:block;
  color:#FFF;
  padding:15px;
}
header .mail a::before{
  font-family: 'Font Awesome 5 Free';
  font-size: 1.8rem;
  line-height: 1;
  content: '\f0e0';
  margin-right:0.25em;
}
@media (min-width:768px) {
header .mail{
  position:absolute;
  width:auto;
  top:0;
  right:0;
  bottom:auto;
}
header .mail p{
  border-radius:5px;
}
}


/*--------------------------------------------------------------
/* #footer
---------------------------------------------------------------*/
footer .wrap{
  padding:25px 0;
}
footer .organizer p{
  font-weight:700;
}
footer .sns{
  display:flex;
  justify-content:center;
  margin:15px 0;
}

footer .copyright{
  background-color:#005FE0;
}
footer .copyright p{
  font-size:1.4rem;
  font-weight:700;
  text-align:center;
  color:#FFF;
  margin-bottom:0;
}
@media (min-width:768px) {
footer .sns{
  justify-content:flex-start;
  margin-top:0;
}

}

/*--------------------------------------------------------------
/* #main-visual
---------------------------------------------------------------*/
#main-visual{
  background:url(../img/bg_mainvisual.jpg);
  background-size:cover;
  background-repeat: no-repeat;
}

/*--------------------------------------------------------------
/* #event
---------------------------------------------------------------*/
#event{
  color:#FFF;
  background:url(../img/bg_event.png) , #005FE0;
  background-size:cover;
  background-repeat: no-repeat;
  padding:50px 0;
}

#event ul li{
  font-size:1.6rem;
  font-weight:bold;
  margin-bottom:0.25em;
  padding-left:1em;
  text-indent:-1em;
}
#event .day1,
#event .day2{
  display: flex;
  flex-flow: column;
  height: 100%;
  margin-bottom:25px;
}
#event .date{
  margin-bottom:25px;
}
#event .parent{
  margin-bottom:25px;
} 
#event .parent > li:before{
  content:'◆';
  color:#FFFF00;
  margin-right:.25em;
}
#event .parent > li span{
  font-size:70%;
}
#event .child > li{
  font-size:70%;
}
#event .live{
  font-weight:bold;
  margin-bottom:25px;
}
#event .live img{
  margin-bottom:10px;
}
@media (min-width:768px) {
#event > .container > .row > .col-12:first-child{
  border-right:1px solid #FFF;
}
#event .day1,
#event .day2{
  padding:0 15px;
}
#event .parent{
  min-height:400px;
}
}
@media (min-width:992px) {
#event ul li{
  font-size:1.8rem;
}
}
/*--------------------------------------------------------------
/* #schedule
---------------------------------------------------------------*/
#schedule{
  padding:50px 0;
}
#schedule h2{
  font-weight:bolder;
  color:#005FE0;
  margin-top:40px;
  margin-bottom:40px;
  font-family: "Arial", "メイリオ";
}
#schedule .date{
  margin-bottom:25px;
}
#schedule .wrap{
  border-bottom:1px dashed #AAA;
  margin-bottom:25px;
  padding-bottom:25px;
}
#schedule h3{
  font-weight:700;
  color:#FFF;
  text-align:center;
  margin-bottom:1em;
  padding:5px 0;
}
#schedule .day1 h3{
  background-color:#005FE0;
}
#schedule .day2 h3{
  background-color:#FF0000;
}

#schedule ul li{
  font-size:1.6rem;
  font-weight:bold;
  margin-bottom:0.25em;
}
#schedule .parent > li span{
  font-size:70%;
}
#schedule .child > li{
  font-size:70%;
  padding-left:1em;
  text-indent:-1em;
}

@media (min-width:992px) {
#schedule ul li{
  font-size:1.8rem;
}
}


/*--------------------------------------------------------------
/* #information
---------------------------------------------------------------*/
#information{
  padding:50px 0;
}

#information a{
  text-decoration:underline;
}
#information h2{
  font-weight:bold;
  color:#005FE0;
  margin-bottom:25px;
  font-family: "Arial", "メイリオ";
}



/*--------------------------------------------------------------
/* #food
---------------------------------------------------------------*/
#food{
  padding:50px 0;
}
#food h2{
  font-weight:bold;
  color:#005FE0;
  margin-bottom:25px;
  font-family: "Arial", "メイリオ";
}

#food ol {
  list-style-type: none!important;
}

#food ol li {
  position: relative;
  display:flex;
  align-items:center;
  height:30px;
  font-size:1.4rem;
  font-weight:700;
  letter-spacing:-0.05em;
  margin-bottom:1.0em;
}


/*--------------------------------------------------------------
/* #news
---------------------------------------------------------------*/
#news p{
  font-weight:700;
}

/*--------------------------------------------------------------
/* #contact
---------------------------------------------------------------*/
#contact{
  padding:50px 0;
}

#contact .logo{
  margin-right:15px;
  margin-bottom:15px;
}
#contact .mail{
  font-weight:700;
  text-align:center;
  background-color:#FF8700;
  border-radius:5px;
  padding:10px;
}
#contact .mail a{
  color:#FFF;
}
#contact .mail a::before{
  font-family: 'Font Awesome 5 Free';
  font-size: 1.8rem;
  line-height: 1;
  content: '\f0e0';
  margin-right:0.25em;
}
#contact .phone{
  margin-bottom:0;
}
#contact .number{
  font-size:2.4rem;
  font-weight:700;
  color:#005FE0;
}
#contact .number span{
  font-size:140%;
}
#contact .box{
  display:flex;
  justify-content:center;
  align-items:center;
  flex-wrap:wrap;
}



/*--------------------------------------------------------------
/* #supporting
---------------------------------------------------------------*/
#supporting{
  background-color:#005FE0;
  padding:50px 0;
}
#supporting h2{
  font-weight:bold;
  color:#FFF;
  margin-bottom:25px;
  font-family: "Arial", "メイリオ";
}




#back{
  padding:5px 0;
}




.arrow{
  font-weight:700;
}

.arrow:before{
  font-family: 'Font Awesome 5 Free';
  font-weight:700;
  line-height: 1;
  content: '\f0aa';
  margin-right:0.25em;
}
}

.page-top a{color:#040000; font-weight:bold;}


/*--------------------------------------------------------------
/* #contact-form
---------------------------------------------------------------*/
#contact-form{
  background-color: #005FE0;
}

