@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&display=swap');
.lower #container {
    padding-top: 80px;
}
@media screen and (max-width: 1024px) {
  .lower #container {
    padding-top: 50px;
  }
}
    #container {
        padding-bottom: 0px;
    }
.lp_page{
  overflow: clip;
  --mont:"Montserrat", sans-serif;
}
.lp_page .c_wrap{
  padding: 0 20px;
  margin: 0 auto;
  max-width: 1140px;
  z-index: 1;
  position: relative;
}
@media screen and (max-width: 640px) {
  .lp_page .c_wrap{
    padding: 0 3.2vw;
  }
}

.lp_page .c_ttl{
  display: flex;
  margin-bottom: 45px;
  justify-content: center;
  text-align: center;
  z-index: 2;
  position: relative;
}

.lp_page .c_ttl>span{
  padding: 0 25px;
  line-height: 1;
  position: relative;
}

.lp_page .c_ttl > span::after ,
.lp_page .c_ttl > span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 1px;
  background: #000;
  transform: skew(-25deg);
  transform-origin: center;
}
.lp_page .c_ttl.wh>span{
  color:#ddd;
}

.lp_page .c_ttl.wh > span::after ,
.lp_page .c_ttl.wh > span::before {
  background: #ddd;
}

.lp_page .c_ttl > span::after {
  right:0;
  left:auto;
}

.lp_page .c_ttl>span strong{
  font-family: var(--mont);
  font-weight: bold;
  font-size: 3rem;
  display: block;
  line-height: 1.5;
}
.lp_page .c_ttl>span small{
  font-size: 1.4rem;
  display: block;
  line-height: calc(20 / 14);
}
@media screen and (max-width: 640px) {
  .lp_page .c_ttl {
    margin-bottom: 1em;
  }

  .lp_page .c_ttl>span {
    padding: 0 1em 0 1em;
  }

  .lp_page .c_ttl>span strong {
    font-size: 5vw;
  }

  .lp_page .c_ttl>span small{
    font-size: 1.4rem;
    font-size: min(1.1rem, 2.2vw);
  }
}

.lp_page .c_button1{
  max-width: 490.09px;
  margin: 0 auto;
  min-height: 73.67px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
  font-weight: bold;
  clip-path: polygon(8% 0, 100% 0%, 92% 100%, 0% 100%);
  background: linear-gradient(to right, #64b5e2 0%, #f8f9b3 100%);
}
.lp_page .c_button1>span{
  position: relative;
  display: flex;
  flex-wrap:wrap;
  padding-right: 0px;
}

.lp_page .c_button1>span i{
  /*position: absolute;
  right:0;*/
  transform: translateY(-7px);
  width: 15px;
}
@media screen and (max-width: 640px) {

  .lp_page .c_button1>span {
    padding-right: 0px;
  }

  .lp_page .c_button1{
    min-height: 14vw;
    font-size: clamp(1.6rem, 3.2vw, 3rem);
    opacity: 0.8;
  }
  .lp_page .c_button1>span i {
    width: 4vw;
  }
}
@media screen and (max-width: 490px) {

  .lp_page .c_button1{
    margin-left: 10px;
    margin-right: 10px;
  }

}



.lp_page .c_button2{
  position: relative;
  height: 95px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}

.lp_page .c_button2>i{
  width: 28px;
  position: absolute;
  left:20px;
}

.lp_page .c_button2>span{
  font-weight: bold;
  font-size: 2rem;
  text-align: center;
  color: #000;
}
@media screen and (max-width: 640px) {
  .lp_page .c_button2>i{
    width: 4vw;
    position: static;
    height: auto;
  }
  .lp_page .c_button2{
    position: relative;
    height: 15vw;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content:flex-start;
    text-align: left;
    gap: 0.5em;
    padding-left: 5vw;
  }
  .lp_page .c_button2>span{
    font-weight: bold;
    font-size: 4.2vw;
  }

  .lp_page .c_button2> i  img{
    vertical-align: middle;
    transform: translateY(-0.05em);
  }

}

.lp_page .c_button3{
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 572px;
  width: 100%;
  min-height: 75px;
  border-radius: 37.5px;
  background: #fff;
  margin: 0 auto;
  border: 3px solid #166b9a;
}
.lp_page .c_button3>span{
  position: relative;
  font-weight: bold;
  font-size: 2rem;
  text-align: center;
  color: #166b9a;
  padding-right: 25px;
}

.lp_page .c_button3> span> i{
  position: absolute;
  right:0;
  width:14px;
}
.lp_page .c_button3> span> i img{
  vertical-align: middle;
}

@media screen and (max-width: 768px) {
  .lp_page .c_button3{
    position: relative;
    max-width: 572px;
    border-radius: 100px;
    min-height: 0;
    aspect-ratio: 600 / 136;
    line-height: 1.3;
    border: 3px solid #166b9a;
  }

  .lp_page .c_button3> span{
    font-size: 5vw;
  }

  .lp_page .c_button3> span{
    position: static;
    display: block;
  }

  .lp_page .c_button3> span> i{
    position: absolute;
    right:8%;
    width:6vw;
    top:50%;
    transform: translateY(-50%);
  }
}

/*問い合わせ*/
.lp_page .section_mail{
  background: #64B5E2;
  padding: 57px 0 112px;
}

.lp_page .section_mail .row{
  display: flex;
  gap:24px;
  justify-content: center;
}

.lp_page .section_mail .row>li{
  width: 381px;
}
@media screen and (max-width: 1024px) {
  .lp_page .section_mail{
    padding: 40px 0 60px;
  }

}
@media screen and (max-width: 768px) {
  .lp_page .section_mail{
    padding: 8vw 0 9vw;
  }

  .lp_page .section_mail .row {
    gap: 24px;
    flex-wrap: wrap;
    width: 74vw;
    margin: 0 auto;
  }

  .lp_page .section_mail .row>li{
    width: 100%;
  }

}

/*エントリー*/
.lp_page .section_entry{
  padding: 110px 0 120px;
  text-align: center;
}

.lp_page .section_entry .ttl_l{
  font-size: 2.3rem;
  margin-bottom: 32px;
  line-height: calc(4 / 2.3);
}

.lp_page .section_entry .note_list_wrap{
  display: flex;
  justify-content: center;
  margin-bottom: 65px;
  text-align: left;
}

.lp_page .section_entry .note_list{
  font-size: 1.4rem;
}

.lp_page .section_entry .note_list>li{
  text-indent: -1em;
  margin-left: 1em;
  font-size: 1.4rem;
  margin-bottom: 0.5em;
}
@media screen and (max-width: 1024px) {
  .lp_page .section_entry{
    padding: 50px 0 90px;
    text-align: center;
  }
}
@media screen and (max-width: 640px) {
  .lp_page .section_entry{
    padding: 8% 0 10%;
    text-align: center;
  }

  .lp_page .section_entry .note_list>li{
    font-size: 2.8vw;
    line-height: 1.43;
  }
  .lp_page .section_entry .note_list_wrap{
    margin-bottom: 10%;
  }
}



/*スポンサー*/
.lp_page .section_sponsors{
  padding: 110px 0 82px;
  background: #E2F1FA;
}
.lp_page .section_sponsors p{
  text-align: right;
  max-width: 960px;
  margin: 0 auto 1em;
}

.lp_page .section_sponsors .sponsors_list{
  display: flex;
  flex-wrap: wrap;
  gap: 30px;
  max-width: 960px;
  margin: 0 auto;
  margin-bottom: 53px;
}

.lp_page .section_sponsors .sponsors_list > li{
  width: calc((100% - 30px * 2) / 3);
}
@media screen and (max-width: 1024px) {
  .lp_page .section_entry{
    padding: 50px 0 60px;
    text-align: center;
  }

  .lp_page .section_sponsors{
    padding: 60px 0 50px;
    background: #E2F1FA;
  }
}
@media screen and (max-width: 640px) {
  .lp_page .section_entry{
    padding: 8vw 0 9vw;
  }

  .lp_page .section_entry .ttl_l{
    font-size: 5vw;
    margin-bottom: 0.8em;
  }

  .lp_page .section_sponsors{
    padding: 9vw 0 8vw;
    background: #E2F1FA;
  }

  .lp_page .section_sponsors .sponsors_list{
    gap:0 4%;
    display: flex;
    flex-wrap:wrap;
    margin-bottom: 6%;
  }

  .lp_page .section_sponsors .sponsors_list > li{
    width: 48%;
    margin-bottom: 4%;
  }
}


/* プログラムハイライト */
.lp_page .section_program{
  padding-top: 50px;
}

.lp_page .section_program .c_wrap{
  padding: 0;
  max-width: 1160px;
}

.lp_page .section_program .c_ttl{
  margin-bottom: 70px;
}

.lp_page .section_program .icon_list>li{
  display: flex;
  margin-bottom: 10px;
}

.lp_page .section_program .icon_list>li i{
  width: 28px;
}

.lp_page .section_program .icon_list>li span{
  width: calc(100% - 28px);
  padding-left: 6px;
  font-weight: bold;
  z-index: 2rem;
  padding-top: 1px;
}

.lp_page .section_program .program_group {
  padding-bottom: 10%;
}

.lp_page .section_program .program_group3{
  padding-bottom: 10%;
}

.lp_page .section_program .program_group .icon_list{
  padding-left: 100px;
  padding-top: 60px;
}

.lp_page .section_program .program_group2{
  padding-left: 67px;
}

.lp_page .section_program .program_group3 .box_wrap{
  position: relative;
}

.lp_page .section_program .program_group3 .box{
  position: relative;
}

.lp_page .section_program .program_group3 .box::after{
  content: '';
  position: absolute;
  top: 20px;
  left: 20px;
  width: 100%;
  height:100%;
  background: #166B9A;
  z-index: -1;
}

.lp_page .section_program .program_group3 .box_wrap .flag {
  position: absolute;
  left: 0;
  top: 0;
  width: 146px;
  z-index: 2;
}

.lp_page .section_program .program_group3 .box_wrap .flag .ttl{
  position: absolute;
  left: 0;
  top: 0;
  padding: 10px 10px;
  font-family: var(--mont);
  text-align: left;
}

.lp_page .section_program .program_group3 .box_wrap .flag span{
  font-size: 1.7rem;
  color:#fff;
  line-height: 1;
  font-weight: bold;
}

.lp_page .section_program .program_group3 .box_wrap .flag strong{
  font-size: 6.7rem;
  line-height: 1;
  margin-top: -7px;
  display: block;
  padding-left: 0em;
}

.lp_page .section_program .program_group3 .box_wrap {
  max-width: 869px;
  width: 75%;
  margin: 0 auto;
  padding: 42px 22px 22px 42px;
}

.lp_page .section_program .program_group3 .box_wrap .logo{
  width: 258px;
  position: absolute;
  right: -77px;
  top: -12px;
  z-index: 2;
}

.lp_page .section_program .program_group3 .box{
  background: #FFFFFF;
  padding: 42px 0 32px 50px;
}

.lp_page .section_program .program_group3 .msg1{
  font-size: 2rem;
  line-height: 1.5;
  padding-left: 45px;
  text-align: left;
  color: #000;
}

.lp_page .section_program .program_group3 .msg2{
  display: flex;
  align-items: center;
}

.lp_page .section_program .program_group3 .msg2 i{
  width: 30px;
}

.lp_page .section_program .program_group3 .msg2 span{
  width: calc(100% - 30px);
  padding-left: 0px;
  font-size: 2.8rem;
  line-height: calc(42 / 28 );
  font-weight: bold;
}

@media screen and (max-width: 1024px) {
  .lp_page .section_program {
    padding-top: 30px;
  }

  .lp_page .section_program .c_wrap{
    padding: 0 20px;
    max-width: 1160px;
  }

  .lp_page .section_program .program_group {
    padding-bottom: 14%;
    max-width: 640px;
    margin-right: auto;
    margin-left: auto;
  }

  .lp_page .section_program .program_group .icon_list {
    padding-left: 15px;
    padding-top: 88px;
  }

  .lp_page .section_program .program_group2 {
    padding-left: 0;
  }

  .lp_page .section_program .icon_list>li{
    line-height: calc(42 / 32);
  }

  .lp_page .section_program .icon_list>li i{
    width: 42px;
    margin-top: 0.05em;
  }

  .lp_page .section_program .icon_list>li span{
    width: calc(100% - 42px);
    padding-left: 0.5em;
    font-weight: bold;
    font-size: 3.2rem;
    padding-top: 1px;
  }

  .lp_page .section_program .c_wrap{
    padding: 0 3.3vw;
    max-width: 1160px;
  }

  .lp_page .section_program .program_group2 {
    padding-left: 0;
    padding-bottom: 60px;
  }

  .lp_page .section_program .program_group3 .msg1 {
    font-size: 2rem;
    margin-bottom: 0.1em;
  }

  .lp_page .section_program .program_group3 .msg2{
    align-items: flex-start;
  }

  .lp_page .section_program .program_group3 .msg2 i {
    width: 40px;
  }

  .lp_page .section_program .program_group3 .box_wrap {
    width:100%;
    margin: 0 auto;
    padding: 42px 15px 22px 7px;
  }
  .lp_page .section_program .program_group3 .box_wrap .logo {
    right: 0;
    top: -5vw;
  }
}

@media screen and (max-width: 640px) {
  .lp_page .section_program .c_ttl{
    margin-bottom: 11vw;
  }

  .lp_page .section_program .program_group3 .box_wrap .flag .ttl {
    padding: 0.3em 0.5em 0.5em;
  }

  .lp_page .section_program .program_group3 .box_wrap .flag {
    width: 23vw;
  }

  .lp_page .section_program .program_group3 .box_wrap .flag span {
    font-size: 3vw;
  }

  .lp_page .section_program .program_group3 .box_wrap .flag strong {
    font-size: 10vw;
    margin-top: -0.1em;
  }

  .lp_page .section_program .program_group3 .box_wrap .logo {
    width: 40vw;
    position: absolute;
    right: 0;
    top: -5vw;
  }
  .lp_page .section_program .program_group .icon_list>li i{
    width: 7vw;
    margin-top: 0.05em;
  }

  .lp_page .section_program .program_group .icon_list>li span{
    width: calc(100% - 7vw);
    padding-left: 0.5em;
    font-weight: bold;
    font-size: 4.4vw;
    padding-top: 1px;
  }

  .lp_page .section_program .program_group .icon_list {
    padding-left: 2vw;
    padding-top: 10vw;
  }

  .lp_page .section_program .program_group2 {
    padding-left: 0;
    padding-bottom: 9vw;
  }

  .lp_page .section_program .program_group3 .box {
    padding: 4vw 7vw;
  }

  .lp_page .section_program .program_group3 .msg2 {
    align-items: flex-start;
  }

  .lp_page .section_program .program_group3 .msg2 i {
    width: 7vw;
    transform: translateY(-0.1em);
  }

  .lp_page .section_program .program_group3 .msg1 {
    font-size: 2.9vw;
    padding-left: 7vw;
    white-space: nowrap;
    margin-bottom: 0.3em;
  }

  .lp_page .section_program .program_group3 .msg2 i{
    width: 7vw;
  }

  .lp_page .section_program .program_group3 .msg2 span{
    width: calc(100% - 7vw);
    padding-left: 0px;
    font-size: 5vw;
    line-height: calc( 42 / 35 );
    font-weight: bold;
  }

}


/**/
.lp_page .clip_row{
  display: flex;
  max-width: 1160px;
  margin: 0 auto;
}

.lp_page .clip_row .col{
  position: relative;
}

.lp_page .clip_row .col .flag{
  position: absolute;
  left:0;
  top:-43px;
  z-index: 2;
}

.lp_page .clip_row .col .flag .ttl {
  position: absolute;
  left: 0;
  top: 0;
  padding: 15px 10px;
  font-family: var(--mont);
  text-align: left;
}

.lp_page .clip_row .col .flag .ttl span{
  font-size: 2.3rem;
  color:#fff;
  line-height: 1;
  font-weight: bold;
}

.lp_page .clip_row .col .flag .ttl strong{
  font-size: 8.1rem;
  line-height: 1;
  padding-left: 0em;
}

.lp_page .clip_row .clip_box picture{
  position: relative;
  max-width: 580px;
  aspect-ratio: 580 / 316;
  overflow: hidden;
  clip-path: polygon(22% 0%, 100% 0%, 78% 100%, 0% 100%);
}

.lp_page .clip_row .clip_box{
  position: relative;
}

.lp_page .clip_row .clip_box::after{
  content: '';
  position: absolute;
  top: 20px;
  left: 24px;
  width: 100%;
  height: 100%;
  background: #166B9A;
  overflow: hidden;
  clip-path: polygon(22% 0%, 100% 0%, 78% 100%, 0% 100%);
  z-index: -1;
}

.lp_page .clip_row .clip_box picture img{
  height: 100%;
  object-fit: cover;
}

.lp_page .clip_row .col:nth-child(1) {
  margin-left: 0;
}

.lp_page .clip_row .col:nth-child(n+2) {
  transform: translateX(-24.5%);
}

.lp_page .clip_row .col:nth-child(n+2) .clip_box{
  transform: translateY(34px);
}
@media screen and (max-width: 1024px) {

  .lp_page .clip_row{
    display: block;
    max-width: 1160px;
    margin: 0 auto;
    padding-right: 27px;
  }

  .lp_page .clip_row .col{
    position: relative;
  }

  .lp_page .clip_row .col .flag{
    position: absolute;
    left:0;
    top:-43px;
    z-index: 2;
  }

  .lp_page .clip_row .col .flag .ttl {
    position: absolute;
    left: 0;
    top: 0;
    padding: 15px 10px;
    font-family: var(--mont);
    text-align: left;
  }

  .lp_page .clip_row .col .flag .ttl span{
    font-size: 2.3rem;
    color:#fff;
    line-height: 1;
    font-weight: bold;
  }

  .lp_page .clip_row .col .flag .ttl strong{
    font-size: 8.1rem;
    line-height: 1;
    padding-left: 0em;
  }

  .lp_page .clip_row .clip_box picture{
    position: relative;
    max-width: none;
    width: 100%;
    aspect-ratio: 580 / 316;
  }

  .lp_page .clip_row .clip_box{
    position: relative;
  }

  .lp_page .clip_row .clip_box::after{
    content: '';
    position: absolute;
    top: 20px;
    left: 24px;
    width: 100%;
    height: 100%;
    background: #166B9A;
    overflow: hidden;
    clip-path: polygon(22% 0%, 100% 0%, 78% 100%, 0% 100%);
    z-index: -1;
  }

  .lp_page .clip_row .clip_box picture img{
    height: 100%;
    object-fit: cover;
  }

  .lp_page .clip_row .col:nth-child(1) {
    margin-left: 0;
    position: relative;
    z-index: 1;
  }

  .lp_page .clip_row .col:nth-child(n+2) {
    transform: translateX(0%);
    position: relative;
    z-index: 2;
    margin-top: -50px;
  }

  .lp_page .clip_row .col:nth-child(n+2) .clip_box{
    transform: translateY(34px);
  }

}

@media screen and (max-width: 640px) {

  .lp_page .clip_row {
    display: block;
    max-width: 1160px;
    margin: 0 auto 5vw;
    padding-right: 3vw;
  }

  .lp_page .clip_row .col{
    position: relative;
  }

  .lp_page .clip_row .col .flag {
    top: -11%;
    width: 30vw;
    z-index: 2;
  }

  .lp_page .clip_row .col .flag .ttl {
    padding: 8px 10px;
    text-align: left;
  }

  .lp_page .clip_row .col .flag .ttl span {
    font-size: 3.7vw;
  }

  .lp_page .clip_row .col .flag .ttl strong{
    font-size: 13vw;
    padding-left: 0em;
  }

  .lp_page .clip_row .clip_box::after{
    content: '';
    position: absolute;
    top: 3vw;
    left: 4vw;
    width: 100%;
    height: 100%;
    background: #166B9A;
    overflow: hidden;
    clip-path: polygon(22% 0%, 100% 0%, 78% 100%, 0% 100%);
    z-index: -1;
  }

  .lp_page .clip_row .clip_box picture img{
    height: 100%;
    object-fit: cover;
  }

  .lp_page .clip_row .col:nth-child(1) {
    margin-left: 0;
    position: relative;
    z-index: 1;
  }

  .lp_page .clip_row .col:nth-child(n+2) {
    transform: translateX(0%);
    position: relative;
    z-index: 2;
    margin-top: -50px;
  }

  .lp_page .clip_row .col:nth-child(n+2) .clip_box{
    transform: translateY(34px);
  }

}



/* スケジュール*/
.lp_page .section_schedule{
  position: relative;
  padding: 105px 0 80px;
}

.lp_page .section_schedule .bg{
  position: absolute;
  left:0;
  top:0;
  width: 100%;
  overflow: hidden;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.lp_page .section_schedule .block1{
  max-width: 700px;
  margin: 0 auto;
}

.lp_page .section_schedule .block1 .schedule_box{
  text-align: center;
  /*background: rgba(255, 255, 255, 0.73);*/
  background: #FFF;
  z-index: 1;
  padding: 50px 40px 68px;
}

.lp_page .section_schedule .block1 .schedule_box .ttl{
  display: flex;
  justify-content: center;
  gap:20px;
  align-items: center;
  font-family: var(--mont);
  margin-bottom: 40px;
}

.lp_page .section_schedule .block1 .schedule_box .ttl .date{
  font-size: 6.3rem;
  line-height: calc(52 / 63);
  font-weight: bold;
}

.lp_page .section_schedule .block1 .schedule_box .ttl .day{
  font-size: 1.8rem;
  line-height:49px;
  width: 49px;
  background: #000000;
  text-align: center;
  color: #fff;
  font-weight: bold;
  border-radius: 50%;
}

.lp_page .section_schedule .block1 .schedule_box ol.time_tbl>li{
  margin-top: 10px;
  font-weight: bold;
}

.lp_page .section_schedule .block1 .schedule_box ol.time_tbl>li.li3 .cont,
.lp_page .section_schedule .block1 .schedule_box ol.time_tbl>li.li5 .cont,
.lp_page .section_schedule .block1 .schedule_box ol.time_tbl>li.li6 .cont{
  min-height: 87px;
}

.lp_page .section_schedule .block1 .schedule_box ol.time_tbl>li time{
  display: block;
  position: relative;
  font-size: 1.8rem;
  line-height: 1;
  font-family: var(--mont);
}

.lp_page .section_schedule .block1 .schedule_box ol.time_tbl>li time::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:calc((100% - 100px) / 2);
  height:1px;
  background:#000000;
}

.lp_page .section_schedule .block1 .schedule_box ol.time_tbl>li time::after{
  content:"";
  position:absolute;
  right:0;
  top:50%;
  width:calc((100% - 100px) / 2);
  height:1px;
  background:#000000;
}

.lp_page .section_schedule .block1 .schedule_box ol.time_tbl>li .cont{
  background:#64B5E2;
  color:#ffffff;
  padding:10px;
  font-size: 1.6rem;
  line-height: calc(24/ 16);
  margin:10px 0;
  display: flex;
  justify-content: center;
  align-items: center;
}

.lp_page .section_schedule .block1 .schedule_box ol.time_tbl>li .cont.wh{
  /*background:#ffffff;*/
  background: #E2F1FA;
  color:#000000;
}

.lp_page .section_schedule .block1 .schedule_box ol.time_tbl>li .cont>span{
  display:block;
}
@media screen and (max-width: 1024px) {
  .lp_page .section_schedule {
    padding: 70px 0 100px;
  }
}
@media screen and (max-width: 640px) {


  .lp_page .section_schedule {
    padding: 10% 0 15%;
  }

  .lp_page .section_schedule .block1 .schedule_box {
    padding: 8% 5%;
  }

  .lp_page .section_schedule .block1 .schedule_box .ttl{
    gap:4%;
  }

  .lp_page .section_schedule .block1 .schedule_box .ttl .date{
    font-size: 7vw;
  }

  .lp_page .section_schedule .block1 .schedule_box .ttl .day{
    font-size: min(1.2rem, 2vw);
    line-height:7vw;
    width: 7vw;
  }

}

/* 開催概要・参加要項 */
.lp_page .section_outline{
  position: relative;
  padding: 107px 0;
}

.lp_page .section_outline .bg{
  position: absolute;
  left:0;
  top:0;
  width: 100%;
  overflow: hidden;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}

.lp_page .section_outline .table1_wrap{
  max-width: 800px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

.lp_page .section_outline .table1{
  margin-top: 60px;
  color: #fff;
}

.lp_page .section_outline .table1 tr:not(:last-child){
  border-bottom: 1px solid #fff;
}

.lp_page .section_outline .table1 tr th{
  width: 208px;
  padding: 1em;
  font-size: 1.8rem;
  line-height: calc(26 / 18 );
  text-align: left;
}

.lp_page .section_outline .table1 tr td{
  padding: 1em;
  font-size: 1.8rem;
  line-height: calc(26 / 18 );
}
@media screen and (max-width: 1024px) {
  .lp_page .section_outline{
    position: relative;
    padding: 12% 0 15%;
  }

  .lp_page .section_outline .table1 tr th{
    width: 150px;
  }
}
@media screen and (max-width: 640px) {
  .lp_page .section_outline .table1 {
    margin-top: 20px;
  }

  .lp_page .section_outline .table1 tr th{
    padding:0.5em 0.8em 0.5em 0.8em;
    width: auto;
    white-space: nowrap;
    font-size:min(1.8rem,4vw);
  }
  .lp_page .section_outline .table1 tr td{
    padding:0.5em 0.5em 0.5em 0;
    font-size:min(1.8rem,4vw);
  }
}


.lp_page .visual{
  position: relative;
}

.lp_page .visual .bg{
  height: 600px;
}

.lp_page .visual .bg>img{
  height: 100%;
  object-fit: cover;
}

.lp_page .visual .block1{
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  display: block;
  justify-content: center;
  transform: translateY(-50%);
}

.lp_page .visual .block1 .group{
  margin-bottom: 50px;
  max-width: 854px;
  margin: 0 auto 50px;
}
@media screen and (max-width: 1024px) {

  .lp_page .visual .bg {
    position: relative;
    height: auto;
    aspect-ratio: 640 / 760;
  }

  .lp_page .visual .block1 .group {
    width: 100%;
    margin: 0 auto 40px;
  }

  .lp_page .visual .block1 .group picture{
    max-width: 81%;
    margin: 0 auto;
  }

  .lp_page .visual .block1 .c_button1{
    /*display: none;*/

  }
}

/*ナビ*/
@media screen and (max-width: 1024px) {

  .local_nav #lp_menu_button {
    position: fixed;
    display: block;
    right: 0px;
    top: 0px;
    cursor: pointer;
    height: 72px;
    width: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1010;
    border-radius: 0%;
  }

  .local_nav #lp_menu_button>div{
    position: relative;
    width: 40px;
    height: 23px;
    cursor: pointer;
    margin-top: 0px;
    transform: scale(0.9);
    z-index: 2;
  }

  .local_nav.active #lp_menu_button>div {
    position: relative;
    margin-left: 0px;
  }

  .local_nav #lp_menu_button>div>div {
    width: 100%;
    height: 2px;
    background: #151515;
    position: absolute;
    transition: all 0.19s;
    z-index: 11;
  }

  .local_nav #lp_menu_button>div>div:nth-child(1) {
    top: 0%;
    left: 0%;
    -webkit-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
  }

  .local_nav #lp_menu_button>div>div:nth-child(2) {
    top: 50%;
    transform: translateY(-50%);
    left: 0px;
  }

  .local_nav #lp_menu_button>div>div:nth-child(3) {
    top: auto;
    bottom:0;
    left: 0%;
    transform: translate(0%, 0%);
  }

  .local_nav.active #lp_menu_button>div>div {
    position: absolute;
    transition: all 0.3s;
    width: 100%;
  }

  .local_nav.active #lp_menu_button>div>div:nth-child(1) {
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
  }

  .local_nav.active #lp_menu_button>div>div:nth-child(3) {
    top: 50%;
    bottom: auto;
    transform: translateY(-50%) rotate(-45deg);
  }

  .local_nav.active #lp_menu_button>div>div:nth-child(2) {
    display: none;
  }
}

.lp_page .local_nav{
  position: sticky;
  top:80px;
  left:0;
  background: #64B5E2;
  height: 72px;
  z-index: 1000;
}

.lp_page .local_nav .inner{
  display: flex;
  max-width: 1100px;
  margin: 0 auto;
  height: 100%;
  align-items: center;
}

.lp_page .local_nav .inner .head{
  font-family: var(--mont);
  font-weight: normal;
  font-size: 2rem;
  text-align: left;
  display: flex;
  align-items: center;
  color: #fff;
  width: 355px;
  height: 100%;
  background: #64b5e2;
}

.lp_page .local_nav .inner .body {
  display: flex;
  width: calc(100% - 355px);
  height: 100%;
  align-items: center;
  justify-content: space-between;
}

.lp_page .local_nav .inner .body .menu{
  gap:90px;
  display: flex;
  align-items: center;
}

.lp_page .local_nav .inner .body .menu>li{
  position: relative;
}

.lp_page .local_nav .inner .body .menu>li>a{
  font-weight: bold;
  font-size: 1.6rem;
  text-align: left;
  color: #fff;
}

.lp_page .local_nav .inner .body .menu>li + li::before{
  content: '';
  position: absolute;
  top: 50%;
  left: -45px;
  width: 1px;
  background: #fff;
  height: 28px;
  margin-top: -12px;
}

.lp_page .local_nav .inner .body .entry_button{
  height: 72px;
  color: #fff;
}

.lp_page .local_nav .inner .body .entry_button{
  width: 131px;
  background: #F52D2D;
  color: #fff;
  display: flex;
  justify-content: center;
  align-content: center;
  text-align: center;
}

.lp_page .local_nav .inner .body .entry_button a{
  padding-top: 18px;
  display: block;
  height: 100%;
}

.lp_page .local_nav .inner .body .entry_button strong{
  position: relative;
  display: flex;
  justify-content: center;
  font-size: 2rem;
  text-align: center;
  line-height: 1;
  padding-right:0;
}

.lp_page .local_nav .inner .body .entry_button strong img{
  display: block;
  width: 13px;
  height: 13px;
  margin-left: 5px;
  transform: translateY(3px);
}

.lp_page .local_nav .inner .body .entry_button small{
  font-size: 1.1rem;
  display: block;
}
@media screen and (max-width: 1100px) {
  .lp_page .local_nav .inner .head{
    padding-left: 10px;
  }
}

.local_nav #lp_menu_button {
  display: none;
}

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

  .lp_page .local_nav {
    top: 50px;
    height: 60px;
  }

  .lp_page .local_nav .inner .body .entry_button {
    position: absolute;
    right: 0;
    top:0;
    height: 60px;
  }

  .lp_page .local_nav .inner .body .entry_button a{
    padding-top: 14px;
  }

  .lp_page .local_nav .inner .body .menu {
    position: absolute;
    display:none;
    right: 0;
    width: 100%;
    height: auto;
    background: #fff;
    top: 60px;
    color: #000;
    padding: 10px 30px;
    transition:all 0.2s ease;
    opacity: 0;
    visibility: hidden;
  }

/*   .lp_page .local_nav .inner .body .menu{
    position: absolute;
    display: block;
    right: -258px;
    width: 258px;
    height: calc(100vh - 110px);
    background: #fff;
    top:60px;
    color: #000;
    padding: 50px 30px;
    transition: 0.2s ease;
  } */

  .lp_page .local_nav.block .inner .body .menu {
    display: block;
  }

  .lp_page .local_nav.active .inner .body .menu{
    opacity: 1;
    visibility: visible;
    display: block;
  }

  .lp_page .local_nav.active .inner .body .menu,
  .lp_page .local_nav.active .inner .body .menu.slide{
    opacity: 1;
    right: 0px;
  }

  .lp_page .local_nav .inner .body .menu>li>a{
    position: relative;
    font-size: 2rem;
    font-weight: bold;
    padding: 10px 0px;
    /* padding: 15px 0px; */
    display: block;
    color: #000;
  }

  .lp_page .local_nav .inner .body .menu>li>a::after{
    content: '';
    position: absolute;
    right: 0;
    /* top: 27px; */
    top: 20px;
    width: 0.6em;
    height: 0.6em;
    border-top: 3px solid #000;
    border-right: 3px solid #000;
    transform: rotate(45deg);
  }

  .lp_page .local_nav .inner .body .menu>li + li::before{
    display: none;
  }

}
@media screen and (max-width: 640px) {
  .lp_page .local_nav .inner .head{
    font-size: min(1.8rem, 4vw);
  }
  .lp_page .local_nav .inner .body .entry_button {
    width: 110px;
  }
}

  /*ナビ*/
@media screen and (max-width: 1024px) {
  .local_nav #lp_menu_button {
    position: absolute;
    display: block;
    right: 131px;
    top: 0px;
    cursor: pointer;
    height: 60px;
    width: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 1010;
    border-radius: 0%;
  }

  .local_nav #lp_menu_button>div{
    position: relative;
    width: 42px;
    height: 31px;
    cursor: pointer;
    margin-top: 0px;
    transform: scale(0.9);
    z-index: 2;
  }

  .local_nav.active #lp_menu_button>div {
    position: relative;
    margin-left: 0px;
  }

  .local_nav #lp_menu_button>div>div {
    width: 100%;
    height: 5px;
    background: #fff;
    position: absolute;
    transition: all 0.19s;
    z-index: 11;
  }

  .local_nav #lp_menu_button>div>div:nth-child(1) {
    top: 0%;
    left: 0%;
    -webkit-transform: translate(0%, 0%);
    transform: translate(0%, 0%);
  }

  .local_nav #lp_menu_button>div>div:nth-child(2) {
    top: 50%;
    transform: translateY(-50%);
    left: 0px;
  }

  .local_nav #lp_menu_button>div>div:nth-child(3) {
    top: auto;
    bottom:0;
    left: 0%;
    transform: translate(0%, 0%);
  }

  .local_nav.active #lp_menu_button>div>div {
    position: absolute;
    transition: all 0.3s;
    width: 100%;
  }

  .local_nav.active #lp_menu_button>div>div:nth-child(1) {
    top: 50%;
    transform: translateY(-50%) rotate(45deg);
  }

  .local_nav.active #lp_menu_button>div>div:nth-child(3) {
    top: 50%;
    bottom: auto;
    transform: translateY(-50%) rotate(-45deg);
  }

  .local_nav.active #lp_menu_button>div>div:nth-child(2) {
    display: none;
  }
}
@media screen and (max-width: 640px) {
  .local_nav #lp_menu_button>div{
    width: 38px;
    height: 24px;
  }

  .local_nav #lp_menu_button>div>div {
    width: 100%;
    height: 3px;
  }
  .local_nav #lp_menu_button {
    right: 107px;
  }
}

.section_head{
  position: relative;
  overflow: hidden;
}

.section_head .bg{
  position: absolute;
  height: 100%;
  width: 1920px;
  left:50%;
  transform: translateX(-50%);
  top:0;
  object-position:50% 0;
  object-fit: cover;
}
@media screen and (max-width: 1024px) {
  .section_concept .logo {
    max-width: 732px;
    width: 76%;
    margin: 0 auto;
  }

}

/* コンセプト */
.section_concept {
  padding: 70px 0;
  text-align: center;
}

.section_concept .logo {
  max-width: 732px;
  width: 90%;
  margin: 40px auto 45px;
}

.section_concept .msg{
  font-size: 1.8rem;
  line-height: 2.333;
  font-weight: bold;
}
@media screen and (max-width: 1024px) {
  .section_concept {
    padding: 50px 0 70px;
  }
  .section_concept .msg {
    font-size: 3.8vw;
    line-height: 1.8;
    white-space: nowrap;
    font-weight: bold;
  }
}
@media screen and (max-width: 640px) {
  .section_concept {
    padding: 10vw 0 5vw;
  }

  .section_concept .logo {
    margin: 6vw auto 7vw;
  }

}


/* アクセス & 会場マップ */
.section_accessmap{
  padding-top: 108px;
  overflow: hidden;
  padding-bottom: 80px;
}

/* map box 1 */
.section_accessmap .map_box1{
  position: relative;
}

.section_accessmap .map_box1 .snow1 {
  position: absolute;
  width: 245px;
  right: -100px;
  top: -180px;
}

.section_accessmap .map_box1 .snow2 {
  position: absolute;
  width: 139px;
  left: 0;
  top: 75px;
}

.section_accessmap .map_box1 .map{
  position: relative;
  margin-bottom: 30px;
}

.section_accessmap .map_box1 .map .iframe{
  max-width: 700px;
  aspect-ratio: 700 / 515;
  margin: 0 auto;
}

.section_accessmap .map_box1 .map .iframe iframe{
  height: 100%;
  width: 100%;
}

.section_accessmap .map_box1 .msg{
  font-size: 1.8rem;
  line-height: 1.444;
  text-align: center;
  margin-bottom: 20px;
}

.section_accessmap .map_box1 .access{
  max-width: 674px;
  margin: 0 auto;
  margin-bottom: 35px;
}

.section_accessmap .map_box1 .access img{
  width: 100%;
}

.section_accessmap .map_box1 .caution {
  display: flex;
  flex-direction: column;
  position: relative;
  z-index: 2;
}

.section_accessmap .map_box1 .caution i{
  background-color: #F52D2D;
  border-radius: 50%;
  font-size: 3.3rem;
  line-height: 1.364;
  width: 45px;
  height: 45px;
  color: #fff;
  text-align: center;
  display: block;
  margin: 0 auto 10px;
  font-weight: bold;
}

.section_accessmap .map_box1 .caution .txt{
  font-size: 1.8rem;
  line-height: 1.444;
  color: #F52D2D;
  text-align: center;
  font-weight: bold;
}

/* map box 2 */
.section_accessmap .map_box2{
  position: relative;
  padding-top: 48px;
}

.section_accessmap .map_box2 .snow3{
  position: absolute;
  width: 219px;
  left: -134px;
  top: 75px;
}

.section_accessmap .map_box2 .snow4{
  position: absolute;
  width: 139px;
  right:0;
  top:100px;
}

.section_accessmap .map_box2 .ttl{
  text-align: center;
  font-size: 2.4rem;
  line-height: 1.458; /* 35 / 24 */
  margin-bottom: 20px;
}

.section_accessmap .map_box2 .map_img {
  max-width: 700px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}
@media screen and (max-width: 1024px) {
  .section_accessmap{
    padding-top: 60px;
    padding-bottom: 50px;
  }

  .section_accessmap .map_box1 .snow1 {
    width: 239px;
    right: -9%;
    top: -15%;
  }

  .section_accessmap .map_box2 .snow3 {
    width: 219px;
    left: -58px;
    top: -17%;
  }

  .section_accessmap .map_box1 .snow1,
  .section_accessmap .map_box2 .snow4 {
    display: none;
  }

  .section_accessmap .map_box1{
    position: relative;
    margin-top: 60px;
  }
}
@media screen and (max-width: 640px) {

  .section_accessmap{
    padding-top: 9%;
    padding-bottom: 8%;
  }

  .section_accessmap .map_box1{
    margin-top: 9vw;
  }

  .section_accessmap .map_box1 .map {
    margin-bottom: 5px;
  }

  .section_accessmap .map_box1 .access{
    margin-bottom: 15px;
  }

  .section_accessmap .map_box1 .snow1 {
    width: 37%;
    right: -9%;
    top: -13%;
  }

  .section_accessmap .map_box2 .snow3 {
    width: 44%;
    left: -12%;
    top: -6%;
  }

  .section_accessmap .map_box2 {
    padding-top: 20px;
  }

  .section_accessmap .map_box1 .msg{
    font-size: 4vw;
    margin-bottom: 0.5em;
  }

  .section_accessmap .map_box1 .caution .txt{
    font-size: 4vw;
    margin-bottom: 0.5em;
  }

  .section_accessmap .map_box2 .ttl{
    text-align: center;
    font-size: 5vw;
    margin-bottom: 12px;
  }

}

@media screen and (max-width: 425px) {
  .section_accessmap .map_box1 .snow1 {
    width: 150px;
    right: -9%;
    top: -70px;
  }
}

/*動画*/
.section_movie{
  padding-top: 50px;
  overflow: hidden;
  padding-bottom: 40px;
  background: #E2F1FA;
}

.section_movie .movie_box{
  padding-top: 15px;
  max-width: 960px;
  margin: 0 auto;
}

@media screen and (max-width: 801px) {
  .section_movie .movie_box iframe{
    width: 100%;
    height: 340px;
  }
}


