#main{
  position: relative;
  background: #000;
  color: #fff;
  padding-bottom: 100px;
}
#main .main_bg{
  background: url(../img/bg_main.webp);
  background-size: 100vw  66.66vw;
  background-repeat: repeat-y;
}
#main .inner{
  width: 1020px;
  margin-left: auto;
  margin-right: auto;
  background: #000000;
}
#mv .mv_img{
  width: 1440px;
  margin-left: auto;
  margin-right: auto;
}
#mv .mv_head{
  width: 1440px;
  margin-left: auto;
  margin-right: auto;
}
#nav{
  margin-top: 52px;
}
#nav .venue_conte .txt{
  text-align: center;
  font-weight: 700;
}
#nav .venue_conte .txt span{
  display: block;
}
#nav .venue_conte .txt._01{
  font-size: 26px;
}
#nav .venue_conte .txt._01 span{
  font-size: 20px;
  line-height: 1;
  margin-bottom: 0.3em;
}
#nav .venue_conte .txt._02{
  font-size: 22px;
  margin-top: 0.9em;
}
#nav .venue_conte .txt._02 span{
  margin-bottom: .2em;
}
#nav .nav_list{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  margin-top: 70px;
}
#nav .nav_list li{
  position: relative;
  font-size: 30px;
  font-weight: 700;
  border-radius: 1000px;
  letter-spacing: 0.08em;
  transition: .3s;
}
#nav .nav_list li a{
  display: block;
  width: 485px;
  height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  line-height: 1.22;
}
#nav .nav_list li::before{
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 97%;
  height: 89%;
  border: 1px solid #fff;
  border-radius: 1000px;
  pointer-events: none;
}
#nav .nav_list li.nav_list_event{
  background: #1A2D88;
}
#nav .nav_list li.nav_list_form{
  background: #ffa21e;
}
#nav .nav_list li span{
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: 50%;
  right: 2em;
  transform: translateY(-50%);
  transition: .3s;
}
#nav .nav_list li.nav_list_event span{
  background: url(../img/icon_arrow.svg);
  background-size: 100% 100%;
}
#nav .nav_list li.nav_list_form.icon_window span{
  background: url(../img/icon_window.svg);
  background-size: 100% 100%;
}
#nav .nav_list li.nav_list_event:hover span{
  top: 53%;
  transition: .3s;
}
#sec1 .head_conte_ttl,
#sec2 .head_conte_ttl{
  position: relative;
  text-align: center;
  font-size: 32px;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: #FFF682;
  padding-bottom: 1em;
}
#sec1 .head_conte_ttl::before,
#sec2 .head_conte_ttl::before{
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 128px;
  height: 9px;
  background: url(../img/line.webp);
  background-size: 100% 100%;
}
#sec1{
  padding-top: 84px;
}
#sec1 .head_conte .head_conte_txt{
  text-align: center;
  font-size: 22px;
  font-weight: 400;
  letter-spacing: 0.08em;
  line-height: 2;
  margin-top: 2em;
}
#sec1 .conte{
  width: 1000px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 80px;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
}
#sec1 .conte .num{
  width: 104px;
}
#sec1 .conte .txt_wrap{
  width: 356px;
}
#sec1 .conte .txt_wrap .ttl{
  margin-left: -15px;
}
#sec1 .conte._01 .txt_wrap .ttl{
  width: 166px;
}
#sec1 .conte._02 .txt_wrap .ttl{
  width: 330px;
}
#sec1 .conte._03 .txt_wrap .ttl{
  width: 230px;
}
#sec1 .conte .txt_wrap .txt{
  font-size: 18px;
  line-height: 1.8;
  margin-top: .5em;
}
#sec1 .conte .img{
  width: 448px;
}
#sec1 .ex_conte{
  margin-top: 113px;
  width: 900px;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #FFF682;
  border-radius: 30px;
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 30px;
}
#sec1 .ex_conte .txt{
  width: 363px;
  margin-bottom: 94px;
}
#sec1 .ex_conte .img{
  width: 410px;
}
#sec2{
  padding-top: 93px;
}
#sec2 .head_conte_ttl{
  margin-bottom: 2em;
}
#sec2 .conte{
  width: 778px;
  margin-left: auto;
  margin-right: auto;
}
#sec2 .conte:nth-of-type(n+2){
  margin-top: 40px;
}
#sec2 .conte._08{
  padding-bottom: 55px;
  margin-bottom: 55px;
  border-bottom: 5px dotted #FFF;
}
#sec2 .conte .ttl{
  font-size: 20px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.08em;
  border: 1px solid #FFF;
  padding: .3em 1.8em;
  border-radius: 1000px;
  display: inline-block;
  text-align: center;
  margin-bottom: .7em;
}
#sec2 .conte .txt{
  font-size: 18px;
}
#sec2 .conte .txt:nth-of-type(n+2){
  margin-top: .5em;
}
#sec2 .conte .txt span{
  display: block;
  font-size: 14px;
  margin-top: .2em;
}
#sec2 .conte .txt_link_lists{
  font-size: 18px;
  color: #FFF682;
  margin-top: 0.8em;
  letter-spacing: 0.08em;
}
#sec2 .conte .txt_link_lists li{
  margin-top: .4em;
}
#sec2 .conte .txt_link_lists li span{
  text-decoration: underline;
}
#sec2 .cv_btn{
  margin-top: 80px;
  margin-bottom: 100px;
}
#sec2 .cv_btn a{
  position: relative;
  font-size: 26px;
  font-weight: 700;
  letter-spacing: 0.1em;
  line-height: 1.2;
  text-align: center;
  width: 502px;
  height: 84px;
  margin-left: auto;
  margin-right: auto;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 1000px;
  background: #ffa21e;
}
#sec2 .cv_btn a::before{
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 97%;
  height: 89%;
  border: 1px solid #fff;
  border-radius: 1000px;
  pointer-events: none;
}
#sec2 .cv_btn .line{
  position: absolute;
  top: 50%;
  left: 35px;
  transform: translateY(-50%);
  width: 44px;
}
#sec2 .cv_btn .icon_window{
  position: absolute;
  top: 52%;
  right: 35px;
  transform: translateY(-50%);
  width: 20px;
}
#sec2 .contact_conte{
  width: 778px;
  margin-left: auto;
  margin-right: auto;
}
#sec2 .contact_conte._02{
  margin-top: 40px;
}
#sec2 .contact_conte .ttl{
  font-size: 20px;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.08em;
  margin-bottom: .6em;
}
#sec2 .contact_conte .txt{
  font-size: 18px;
  line-height: 1.8;
}
#sec2 .contact_conte .txt span{
  display: block;
  font-size: 14px;
  margin-top: 0.5em;
  line-height: 1.8;
}
#main .bg_img{
  position: absolute;
  pointer-events: none;
  animation: twinkle 3s infinite;
}
@keyframes twinkle{
  0%{
    opacity: 0.3;
  }
  50%{
    opacity: 1;
  }
  100%{
    opacity: 0.3;
  }
}
#main .bg_img._01{
  width: 1250px;
  top: 890px;
  left: 50%;
  transform: translateX(-50%);
  animation-delay: 0s;
}
#main .bg_img._02{
  width: 1211px;
  top: 930px;
  left: 50%;
  transform: translateX(-50%);
  animation-delay: 0.5s;
}
#main .bg_img._03{
  width: 1398px;
  top: 1898px;
  left: 50%;
  transform: translateX(-50%);
  animation-delay: 1s;
}
#main .bg_img._04{
  width: 1359px;
  top: 2850px;
  left: 50%;
  transform: translateX(-50%);
  animation-delay: 1.5s;
}
#main .bg_img._05{
  width: 1369px;
  top: 3230px;
  left: 50%;
  transform: translateX(-50%);
  animation-delay: 2s;
}
#main .bg_img._06{
  width: 1390px;
  top: 3313px;
  left: 50%;
  transform: translateX(-50%);
  animation-delay: 2.5s;
}
#main .bg_img._07{
  width: 1404px;
  top: 4211px;
  left: 50%;
  transform: translateX(-50%);
  animation-delay: 0.7s;
}
#main .bg_img._08{
  width: 1381px;
  top: 4918px;
  left: 50%;
  transform: translateX(-50%);
  animation-delay: 1.2s;
}
#main .bg_img._09{
  width: 1150px;
  top: 5550px;
  left: 50%;
  transform: translateX(-50%);
  animation-delay: 1.7s;
}
#main .bg_img._01{ animation-delay: 0s; }
#main .bg_img._02{ animation-delay: 0.5s; }
#main .bg_img._03{ animation-delay: 1s; }
#main .bg_img._04{ animation-delay: 1.5s; }
#main .bg_img._05{ animation-delay: 2s; }
#main .bg_img._06{ animation-delay: 2.5s; }
#main .bg_img._07{ animation-delay: 0.7s; }
#main .bg_img._08{ animation-delay: 1.2s; }
#main .bg_img._09{ animation-delay: 1.7s; }


/* ノートPC & タブレット */
@media(max-width:1400px){
  #main{
    padding-bottom: 6.94vw;
  }
  #main .inner{
    width: 72.85vw;
  }
  #mv .mv_img{
    width: 100vw;
  }
  #mv .mv_head{
    width: 100vw;
  }
  #nav{
    margin-top: 3.61vw;
  }
  #nav .venue_conte .txt._01{
    font-size: 1.8vw;
  }
  #nav .venue_conte .txt._01 span{
    font-size: 1.38vw;
  }
  #nav .venue_conte .txt._02{
    font-size: 1.52vw;
  }
  #nav .nav_list{
    gap: 1.38vw;
    margin-top: 4.86vw;
  }
  #nav .nav_list li{
    font-size: 2.08vw;
  }
  #nav .nav_list li a{
    width: 33.68vw;
    height: 8.33vw;
  }
  #nav .nav_list li span{
    width: 2.36vw;
    height: 2.36vw;
    font-size: 1.11vw;
  }
  #sec1 .head_conte_ttl,
  #sec2 .head_conte_ttl{
    font-size: 2.22vw;
  }
  #sec1 .head_conte_ttl::before,
  #sec2 .head_conte_ttl::before{
    width: 8.88vw;
    height: 0.62vw;
  }
  #sec1{
    padding-top: 5.83vw;
  }
  #sec1 .head_conte .head_conte_txt{
    font-size: 1.52vw;
  }
  #sec1 .conte{
    width: 69.44vw;
    margin-top: 5.55vw;
  }
  #sec1 .conte .num{
    width: 7.22vw;
  }
  #sec1 .conte .txt_wrap{
    width: 24.72vw;
  }
  #sec1 .conte .txt_wrap .ttl{
    margin-left: -1.04vw;
  }
  #sec1 .conte._01 .txt_wrap .ttl{
    width: 11.52vw;
  }
  #sec1 .conte._02 .txt_wrap .ttl{
    width: 22.91vw;
  }
  #sec1 .conte._03 .txt_wrap .ttl{
    width: 15.97vw;
  }
  #sec1 .conte .txt_wrap .txt{
    font-size: 1.25vw;
  }
  #sec1 .conte .img{
    width: 31.11vw;
  }
  #sec1 .ex_conte{
    margin-top: 7.84vw;
    width: 62.5vw;
    gap: 2.08vw;
    border-radius: 2.08vw;
  }
  #sec1 .ex_conte .txt{
    width: 25.2vw;
    margin-bottom: 6.52vw;
  }
  #sec1 .ex_conte .img{
    width: 28.47vw;
  }
  #sec2{
    padding-top: 6.45vw;
  }
  #sec2 .conte{
    width: 54.02vw;
  }
  #sec2 .conte:nth-of-type(n+2){
    margin-top: 2.77vw;
  }
  #sec2 .conte._08{
    padding-bottom: 3.92vw;
    margin-bottom: 3.92vw;
  }
  #sec2 .conte .ttl{
    font-size: 1.38vw;
  }
  #sec2 .conte .txt{
    font-size: 1.25vw;
  }
  #sec2 .conte .txt span{
    font-size: 0.97vw;
  }
  #sec2 .conte .txt_link_lists{
    font-size: 1.25vw;
  }
  #sec2 .cv_btn{
    margin-top: 5.55vw;
    margin-bottom: 6.94vw;
  }
  #sec2 .cv_btn a{
    font-size: 1.8vw;
    width: 35.85vw;
    height: 5.83vw;
  }
  #sec2 .cv_btn .line{
    left: 2.43vw;
    width: 3.14vw;
  }
  #sec2 .cv_btn .icon_window{
    right: 2.43vw;
    width: 1.38vw;
  }
  #sec2 .contact_conte{
    width: 54.02vw;
  }
  #sec2 .contact_conte._02{
    margin-top: 2.77vw;
  }
  #sec2 .contact_conte .ttl{
    font-size: 1.38vw;
  }
  #sec2 .contact_conte .txt{
    font-size: 1.25vw;
  }
  #sec2 .contact_conte .txt span{
    font-size: 0.97vw;
  }
  #main .bg_img._01{
    width: 86.8vw;
    top: 61.8vw;
  }
  #main .bg_img._02{
    width: 84.09vw;
    top: 64.58vw;
  }
  #main .bg_img._03{
    width: 97.08vw;
    top: 131.8vw;
  }
  #main .bg_img._04{
    width: 94.37vw;
    top: 197.91vw;
  }
  #main .bg_img._05{
    width: 95.06vw;
    top: 224.3vw;
  }
  #main .bg_img._06{
    width: 96.52vw;
    top: 230.06vw;
  }
  #main .bg_img._07{
    width: 97.5vw;
    top: 292.43vw;
  }
  #main .bg_img._08{
    width: 95.9vw;
    top: 341.52vw;
  }
  #main .bg_img._09{
    width: 79.86vw;
    top: 385.41vw;
  }
}
/* スマホ */
@media(max-width:769px){
  #main{
    background: #000;
    padding-bottom: 18.13vw;
  }

  #main .main_bg{
    background: url(../img/bg_main.webp);
    background-size: 100vw  66.66vw;
    background-repeat: repeat-y;
  }

  #main .inner{
    width: 90%;
  }
  #mv .mv_img{
    width: 100%;
  }
  #mv .mv_head{
    width: 100%;
  }
  #nav{
    margin-top: 8vw;
  }
  #nav .venue_conte .txt._01{
    font-size: 4.4vw;
  }
  #nav .venue_conte .txt._01 span{
    font-size: 3.33vw;
  }
  #nav .venue_conte .txt._02{
    font-size: 3.66vw;
    margin-top: 1em;
  }
  #nav .nav_list{
    display: block;
    margin-top: 8vw;
  }
  #nav .nav_list li{
    width: 80vw;
    margin-left: auto;
    margin-right: auto;
    font-size: 4.8vw;
  }
  #nav .nav_list li:nth-child(n+2){
    margin-top: .7em;
  }
  #nav .nav_list li.nav_list_form {
    margin-top: .7em;
  }
  #nav .nav_list li a{
    width: 80vw;
    height: 19.73vw;
  }
  #nav .nav_list li span{
    width: 5.33vw;
    height: 5.33vw;
    font-size: 2.66vw;
  }

  #sec1 .head_conte_ttl,
  #sec2 .head_conte_ttl{
    font-size: 5.33vw;
  }
  #sec1 .head_conte_ttl::before,
  #sec2 .head_conte_ttl::before{
    width: 21.33vw;
    height: 1.33vw;
  }
  #sec1{
    padding-top: 14.93vw;
  }
  #sec1 .head_conte .head_conte_txt{
    font-size: 3.4vw;
  }
  #sec1 .conte{
    width: 83.33vw;
    margin-top: 17.33vw;
    flex-wrap: wrap;
  }
  #sec1 .conte .num{
    width: 17.46vw;
  }
  #sec1 .conte .txt_wrap{
    width: 59.46vw;
  }
  #sec1 .conte .txt_wrap .ttl{
    margin-left: -2.2vw;
  }
  #sec1 .conte._01 .txt_wrap .ttl{
    width: 27.6vw;
  }
  #sec1 .conte._02 .txt_wrap .ttl{
    width: 54.66vw;
  }
  #sec1 .conte._03 .txt_wrap .ttl{
    width: 38vw;
  }
  #sec1 .conte .txt_wrap .txt{
    font-size: 3vw;
  }
  #sec1 .conte .img{
    width: 100%;
    margin-top: 6.26vw;
  }
  #sec1 .ex_conte{
    margin-top: 16.93vw;
    width: 83.33vw;
    border-radius: 4.93vw;
    display: block;
    padding-top: 4.56vw;
    background: url(../img/bg_main.webp);
    background-size: 100vw  66.66vw;
  }
  #sec1 .ex_conte .txt{
    width: 64.26vw;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 3.33vw;
  }
  #sec1 .ex_conte .img{
    width: 68.4vw;
    margin-left: auto;
    margin-right: auto;
  }

  #sec2{
    padding-top: 26.66vw;
  }
  #sec2 .conte{
    width: 83.73vw;
  }
  #sec2 .conte:nth-of-type(n+2){
    margin-top: 6vw;
  }
  #sec2 .conte._08{
    padding-bottom: 11vw;
    margin-bottom: 11vw;
  }
  #sec2 .conte .ttl{
    font-size: 3.33vw;
  }
  #sec2 .conte .txt{
    font-size: 3vw;
  }
  #sec2 .conte .txt span{
    font-size: 2.33vw;
    margin-top: 0em;
  }
  #sec2 .conte .txt_link_lists{
    font-size: 3vw;
  }
  #sec2 .cv_btn{
    margin-top: 13.33vw;
    margin-bottom: 18.13vw;
  }
  #sec2 .cv_btn a{
    font-size: 4.06vw;
    width: 80vw;
    height: 14.13vw;
  }
  #sec2 .cv_btn .line{
    left: 4.66vw;
    width: 9.83vw;
  }
  #sec2 .cv_btn .icon_window{
    right: 4.66vw;
    width: 4.56vw;
  }
  #sec2 .contact_conte{
    width: 83.73vw;
  }
  #sec2 .contact_conte._02{
    margin-top: 7.6vw;
  }
  #sec2 .contact_conte .ttl{
    font-size: 3.33vw;
  }
  #sec2 .contact_conte .txt{
    font-size: 3vw;
  }
  #sec2 .contact_conte .txt span{
    font-size: 2.33vw;
  }
}