@charset "utf-8";
.pc{display: block;}
.under_pc{display: none}

body {
  background-color: #f4F4F4;
  font-size: 62.5%;
  font-family: "fot-tsukumin-pr6n", sans-serif;
  font-weight: 300;
  font-style: normal;
  color: #030303;
}

.pagetop {
  cursor: pointer;
  position: fixed;
  right: 20px;
  bottom: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  border-radius: 50%;
  transition: .3s;
  color: #f4f4f4;
  font-size: 14px;
  background: #8e7195eb;
  z-index: 500;
  /*   デフォルトは非表示 */
  opacity: 0;
}

.pagetop:hover {
  box-shadow: 0 0 10px #ffffff;
}

h1 img {
  width: 100%;
  height: auto;
}

.present img {
  width: 80%;
  height: auto;
  margin: 10px auto;
  display: block;
}





section.about {
  width: 80%;
  margin: 0 auto;
  margin-top: 20px;
  letter-spacing: 2px;
}

.about img {
  width: 50px;
  height: auto;
  margin: 20px;
}




/* .time_place {
  display: flex;
  padding: 20px;
  font-size: 22px;
  background-color: #f6dada;
  background-color: #fff;
  border-radius: 7px;
  background-color: aliceblue;
  justify-content: space-between;
} */

.ticket_seat {
  display: flex;
  padding: 20px;
  width: 100%;
  font-size: 16px;
  background-color: #fff;
  margin-top: 10px;
  border-radius: 7px;
  border: 3px solid #00666b;
  /* background-color: aliceblue; */
  /* justify-content: space-between; */
}

.icon_flex {
  display: flex;
  align-items: center;
 width: 100%;
 border-right:2px dashed #00666b;
 
}

.time_place {
  background-color: #fff;
  margin-top: 10px;
  border-radius: 7px;
  border-right: none;
  padding: 20px;
  font-size: 25px;
  border: 3px solid #00666b;
  justify-content: center;
}

.time_place p {
  /* background-color: aliceblue; */
  width: 370px;
  text-align: center;
}

.time {
border: 3px solid #00666b;
font-size: 25px;

}

.imp span {
  font-size: 16px;
}

.icon_flex:last-child {
  border-right:none;
}

.pl10px {
  padding-left: 10px;
}

.button_flex {
  display: flex;
  width: 80%;
  margin: 20px auto;
  justify-content: space-between;
}

.button_flex a {
  width: 45%;
}

.button {
  position: relative;
  font-size: 16px;
  color: #f4F4F4;
  border-radius: 7px;
  height: 75px;
  line-height: 75px;
  width: 100%;
  padding-right: 40px;
  padding-left: 40px;
  display: block;
  margin-top: 20px;
transition: .4s;
}

.button.green {
  border: 2px solid #00666b;
  background-color: #00666b;
}

.button.purple {
  border: 2px solid #8e7195;
  background-color: #8e7195;
}

.button::before {
  content: "";
  margin: auto;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 35px;
  width: 13px;
  height: 13px;
  border-top: 3px solid #f4f4f4;
  border-right: 3px solid #f4f4f4;
  transform: rotate(45deg);
  transition: .4s;
}

.button.green:hover {
background-color: #f4F4F4;
border: 2px solid #00666b;
color: #00666b;
}

.button.green:hover::before {
  border-top: 3px solid #00666b;
  border-right: 3px solid #00666b;
}
.button.purple:hover {
background-color: #f4F4F4;
border: 2px solid #8e7195;
color: #8e7195;
}

.button.purple:hover::before {
  border-top: 3px solid #8e7195;
  border-right: 3px solid #8e7195;
}


.chorus_flex {
  background-color: #fff;
  display: flex;
  width: 80%;
  margin: 0 auto;
  border: 3px solid #8e7195;
  border-radius: 7px;
  padding: 10px;
  align-items: center;
  justify-content: space-evenly;
  font-size: 14px;
}

.chorus_flex div span {
  font-size: 13px;
}

.about_chorus {
  background-color: #8e7195;
  border-radius: 7px;
  color: #fff;
  padding: 35px 25px 35px 25px;
}

.introduce {
  width: 100%;
  background-color: #00666b;
  color: #f4F4F4;
  margin-top: 20px;
  margin-bottom: 20px;
  font-size: 15px;
  text-align: center;
  line-height: 3;
  padding-top: 30px;
  padding-bottom: 30px;
}

.miyoshi_flex {
  width: 80%;
  margin: 0 auto;
  display: flex;
  align-items: center;
  padding-bottom: 30px;
}


.miyoshi h2 {
  font-size: 45px;
  color: #00666b;
}

.miyoshi p {
  font-size: 45px;
  color: #8e7195;
  width: 100%;
  text-align: end;
}

.miyoshi img {
  width: 100%;
  height: auto;
}

p.miyoshi_text {
  padding: 20px;
  font-size: 14px;
  line-height: 3;
  text-align: justify;
}

article.contents {
  background-color: #00666b19;
  width: 100%;
  padding-top: 30px;
  padding-bottom: 30px;
  font-size: 15px;
}

h3 {
  font-size: 17px;
  width: 50%;
  border-bottom: 1px solid #00666b;
}

h4 {
  font-family: "source-han-sans-japanese", sans-serif;
  font-weight: 300;
  font-style: normal;
}

.box_flex {
  display: flex;
  flex-wrap: wrap;
  width: 90%;
  margin: 0 auto;
  justify-content: space-between;
}

.box {
  width: 45%;
  margin-top: 30px;
}

.purple_box {
  background-color: #8e7195;
  color: #f4F4F4;
  width: 20%;
  text-align: center;
}
.purple_box.goudou {
  background-color: #8e7195;
  color: #f4F4F4;
  width: 60%;
  text-align: center;
}

.note {
  margin-top: 10px;
  padding: 10px;
}

.topic {
  width: 90%;
  margin: 0 auto;
}

.logo_flex {
  display: flex;
  align-items: center;
  margin-top: 10px;

}

.logo_flex img {
  width: 150px;
  height: auto;
  margin-right: 40px;
}

.logo_flex.jcda {
  margin-top: 0px;
}

.logo_flex.jcda img {
  width: 40px;
  height: auto;
  margin-right: 0px;
}

h5 {
  width: 100%;
  background-color: #73A9AB;
}

.box img {
  width: 100%;
  height: auto;
  text-align: center;
}

.access {
  padding-top: 30px;
}

.access_flex {
  width: 90%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 16px;
}

.access_flex span {
  font-size: 17px;
}

iframe {
  width: 45%;
  height: 400px;
  order: 2;
}

.support {
  font-size: 15px;
  padding-top: 30px;
  padding-bottom: 30px;
}

h4{
  font-size: 111%;
  padding-top: 5px;
  padding-bottom: 5px;
}

h3#footer {
  color: #f4F4F4;
  border-bottom: 1px solid #f4f4f4;
  margin-bottom: 20px;
}

footer {
  width: 100%;
  background-color: #00666b;
  padding-top: 30px;
  padding-bottom: 30px;
  color: #f4F4F4;
}

footer p {
  width: 90%;
  margin: 0 auto;
  font-size: 15px;
}

.sp {
  display: none;
}
.sp02 {
  display: none;
}
.sp03 {display: none;}


/* フェードイン(初期値) */
.fade-up {
  opacity: 0;
  /* 最初は非表示 */
  transform: translateY(30px);
  /* 下に30pxの位置から */
  transition: opacity .8s, transform .8s;
  /* 透過率と縦方向の移動を0.8秒 */
}

/* フェードイン(スクロールした後) */
.fade-up.is-inview {
  opacity: 1;
  /* 表示領域に入ったら表示 */
  transform: translateY(0);
  /* 30px上に移動する */
  transition-delay: .4s;
  /* フェード開始を0.5秒遅らせる */
}

@media screen and (max-width:1255px) {

  .time_place {
    font-size: 19px;
  }
  
  .ticket_seat {
    font-size: 15px;
  }

}

@media screen and (max-width:1235px) {
  section.about {
    width: 80%;
  }

      .chorus_flex .tb_pd {
      padding: 15px;
    }

    .sp02 {
      display: block;
    }
.pc{display: none;}
.under_pc{display: block;}
}

@media screen and (max-width:1130px) {

  .about img {
    width: 40px;
    height: auto;
    margin: 10px;
  }
  
  .ticket_seat {
    display: flex;
    padding: 10px;
    width: 100%;
    font-size: 13px;
    background-color: #fff;
    margin-top: 10px;
    border-radius: 7px;
    /* background-color: aliceblue; */
    /* justify-content: space-between; */
  }

  section.about {
    width: 80%;
    margin: 0 auto;
    margin-top: 20px;
    letter-spacing: 1px;
  }

}
@media screen and (max-width:983px) {
  .chorus_flex {
    display: block;
  }	
}

@media screen and (max-width:890px) {

  .ticket_seat {
    display: block;

    margin-top: 0px;
    padding: 0px;
  }

  /* .time_place {
    display: block;
    padding: 0px;
  } */

  section.about {
    background-color: #fff;
    border-radius: 7px;
    padding: 20px;
    border: 3px solid #00666b;
  }
  .time_place {
    border: none;
  }
.ticket_seat {
  border: none;
}

  .time {
    border: none;
  } 

  .icon_flex {
   border-right: none;
   padding: 10px;
   font-size: 15px;
  }

  .icon_flex p {
    text-align: center;
    width: 100%;
  }

  .icon_flex div {
    width: 100%;
    text-align: center;
  }

  .pl10px {
    padding-left: 0px;
    padding: 10px;
  }

}

@media screen and (max-width:819px) {
  h4 {
    font-size: 105%;
  }
}

@media screen and (max-width:800px) {

  .miyoshi_flex {
    display: block;
  }

  .access_flex {
    display: block;
  }

  .button_flex {
    display: block;
  }



  article.contents {
    font-size: 14px;
  }

  iframe {
    width: 100%;
    margin-top: 10px;
  }

  .about_flex {
    display: block;
    text-align: center;
  }



  p.miyoshi_text {
    padding: 0;
    margin-top: 20px;
    font-size: 14px;
    line-height: 2;
    text-align: justify;
  }

}



@media screen and (max-width:730px) {

  .introduce {
    font-size: 14px;
    line-height: 2;
    text-align: justify;
  }

  .introduce p {
    width: 90%;
    margin: 0 auto;

  }

  .access_flex, .support, footer p {
    font-size: 14px;
  }

  article.contents {
    font-size: 12px;
  }

}


@media screen and (max-width:630px) {
  .box_flex {
    display: block;
  }

  .box {
    width: 95%;

  }
.sp03 {display: block;}
	.pc{display:none;}	
	.under_pc{display:none;}
h4 {
  font-size: 15px;
}

.icon_flex {
  border-right: none;
  padding: 10px;
 }

 .icon_flex p {
  letter-spacing: 2px;
}

section.about {
  background-color: #fff;
  border-radius: 7px;
  padding: 10px;
}

.about img {
  margin: 0px;
  margin-right: 70px;
  margin-left: 50px;
}

.ticket_seat .icon_flex {
font-size: 13px;
}

/* .time_place .icon_flex{
font-size: 15px;
} */

.icon_flex span {
  font-size: 12px;
}

.present img {
  width: 100%;
  height: auto;
}

}

@media screen and (max-width:550px) {

  .icon_flex p {
    text-align: start;
  }

        .chorus_flex .tb_pd {
      padding: 0px;
    }

  .about_chorus {
    text-align: center;
    padding: 10px;
    margin-bottom: 10px;
  }

  .about img {

    margin-right: 70px;
    margin-left: 40px;
  }

  /* .time_place .icon_flex { 
    font-size: 14px;
  } */

  .logo_flex img {
    width: 100px;
    height: auto;
    margin-right: 40px;
  }

  h3 {
    width: 70%;
  }

  .sp {
    display: block;
  }
}

@media screen and (max-width:520px) {
  .about img {
    margin-right: 30px;
    margin-left: 35px;
  }

  .icon_flex {
    border-right: none;
    padding: 10px;
    font-size: 13px;
}

.icon_flex p {
  letter-spacing: 1px;
}
}

@media screen and (max-width:440px) {
  .about img {
    margin-left: 13px;
  }

  .access_flex, .support, footer p {
    font-size: 13px;
  }

}

@media screen and (max-width:380px) {

  /* .time_place .icon_flex {
    font-size: 13px;
} */

  .about img {
    width: 35px;
  }
}