/*=======import=======*/
@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,300;1,400;1,500;1,600;1,700;1,800;1,900&family=Noto+Sans+JP:wght@100;300;400;500;700;900&family=Noto+Serif+JP:wght@200;300;400;500;600;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Mochiy+Pop+P+One&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@300;400;500;700;900&family=Zen+Maru+Gothic:wght@300;400;500;700;900&display=swap");
/*=====================
Page_Mixin
=====================*/
/*=======BannerLine_Mixin=======*/
/*=======Program_textshadow_Mixin=======*/
/*****************************************************************************

Common_Design

*****************************************************************************/
/*=====================
Header
=====================*/
/*=====================
Header
=====================*/
#header {
  width: 100%;
  height: 60px;
}

.header__other {
  width: 100%;
  height: auto;
  margin-top: auto;
  margin-right: 0;
  margin-bottom: auto;
  margin-left: auto;
}

/*=====================
menu
=====================*/
.menu {
  width: 80%;
  height: 60px;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 600;
}
@media screen and (max-width: 1200px) {
  .menu {
    width: 100%;
    height: 60px;
  }
}
@media screen and (max-width: 777px) {
  .menu {
    width: 70%;
    height: 45px;
  }
}
@media screen and (max-width: 599px) {
  .menu {
    width: 90%;
    height: 45px;
  }
}
.menu__content {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 777px) {
  .menu__content {
    width: 100%;
    height: auto;
    min-height: 700px;
    background: #ffffff;
    border-radius: 0 0 0 20px;
    display: none;
  }
}
.menu__item {
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
}
@media screen and (max-width: 777px) {
  .menu__item {
    padding-top: 2em;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 10%;
    display: block;
  }
}
.menu__item li {
  padding-top: 0.8em;
  padding-right: 0.8em;
  padding-bottom: 0.8em;
  padding-left: 0.8em;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: center;
  font-weight: 600;
  font-size: calc(12px + 3* ((100vw - 420px) / 860));
}
@media screen and (max-width: 777px) {
  .menu__item li {
    font-family: 'Noto Sans JP', sans-serif;
    text-align: left;
    font-weight: 600;
    font-size: calc(18px + 3* ((100vw - 420px) / 860));
  }
}
.menu__item a {
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  display: block;
  color: #e7461e;
  border-left: 2px solid #ebb400;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 2px;
}
.menu__item a.border {
  border-left: none;
}
.menu__item a:hover {
  color: #828282;
}
.menu__item a:hover::before {
  background: #00aaf0;
}
.menu__sns {
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  width: 100%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
}
@media screen and (max-width: 777px) {
  .menu__sns {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
  }
}
.menu__sns--content {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 3px;
  width: 40px;
  height: 40px;
}
@media screen and (max-width: 1200px) {
  .menu__sns--content {
    width: 30px;
    height: 30px;
  }
}
@media screen and (max-width: 777px) {
  .menu__sns--content {
    width: 45px;
    height: 45px;
    padding-top: 0;
    padding-right: 20%;
    padding-bottom: 0;
    padding-left: 0;
  }
}
.menu__sns--item {
  border-left: none;
}
.menu__sns--item img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

/*=======Menubtn=======*/
#menubtn {
  display: none;
}
#menubtn:hover{
	cursor: pointer;
	
}
@media screen and (max-width: 777px) {
  #menubtn {
    display: block;
    margin-top: auto;
    margin-right: 20px;
    margin-bottom: auto;
    margin-left: auto;
    width: 60px;
    height: 60px;
    background-size: 90%;
    background-image: url("https://dousitemosukida.com/img/menubtn-open.png");
    background-repeat: no-repeat;
  }
}

/*=======Switch=======*/
@media screen and (max-width: 777px) {
  #nav-input:checked + #menubtn {
    background-image: url("/img/menubtn-close.png");
    transition: all 0.5s ease 0s;
  }
}

#nav-input:checked ~ nav {
  display: block;
  animation: 1s fadeIn;
}

/*=======Switch_Animetion=======*/
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/*=======RadioBtn=======*/
.nav-hidden {
  display: none;
}

/*=======Fixed=======*/
.fixed {
  position: fixed;
  top: 0;
  left: 0;
  margin-top: 0;
  margin-right: 0;
  margin-bottom: 0;
  margin-left: 0;
  z-index: 100;
}

.header__logo {
  width: 120px;
  height: 70px;
  padding-top: 2px;
  padding-right: 2px;
  padding-bottom: 2px;
  padding-left: 2px;
}
@media screen and (max-width: 599px) {
  .header__logo {
    width: 100px;
    height: 50px;
    line-height: 70px;
  }
}

/*=====================
PTop
=====================*/
.ptop {
  width: 70px;
  height: 70px;
  position: fixed;
  right: 50px;
  bottom: 50px;
  background: #ebb400;
  opacity: 0.8;
}
@media screen and (max-width: 777px) {
  .ptop {
    width: 50px;
    height: 50px;
    position: fixed;
    right: 30px;
    bottom: 30px;
  }
}
.ptop__in {
  width: 100%;
  height: 100%;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.ptop__in img {
  width: 100%;
  height: 100%;
}

/*=====================
H2
=====================*/
h2 {
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  font-weight: 400;
  font-size: calc(23px + 20 * ((100vw - 420px) / 860));
  color: black;
}
h2 span {
  font-family: "Montserrat", sans-serif;
  text-align: center;
  font-weight: 500;
  font-size: calc(15px + 5 * ((100vw - 420px) / 860));
  display: block;
  color: #828282;
}

/*=====================
Section
=====================*/
.sec {
  width: 100%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
@media screen and (max-width: 777px) {
  .sec {
    width: 100%;
    height: auto;
  }
}
.sec__performer, .sec__ticket, .sec__program {
  width: 100%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}

/*=====================
Color
=====================*/
/*=======Font=======*/
.red {
  color: #eb3700;
}

/*=======BackGround=======*/
.bacground {
  padding-top: 0;
  padding-right: 5px;
  padding-bottom: 0;
  padding-left: 5px;
}
.bacground__pink {
  background: #fff5f5;
}
.bacground__white {
  background: #ffffff;
}

.strikethrough {
  text-decoration: line-through;
}

/*=====================
H3
=====================*/
.under-title {
  width: 85%;
  height: auto;
  margin-top: 5%;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  font-weight: 500;
  font-size: calc(20px + 5 * ((100vw - 420px) / 860));
  position: relative;
  z-index: 1;
}
.under-title::before {
  width: 100%;
  height: 1px;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background: #828282;
  z-index: -1;
}

/*****************************************************************************

Main_Content_Design

*****************************************************************************/
/*=====================
Event_Ends
=====================*/
.event_ends {
  width: 75%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  font-family: 'Noto Sans JP', sans-serif;
  
  font-weight: 700;
  font-size: calc(14px + 5 * ((100vw - 420px) / 860));
  letter-spacing: .0625em;
	padding-top: 20px;
	padding-bottom: 20px;
}
@media screen and (max-width: 777px) {
  .event_ends {
    width: 90%;
    height: auto;
  }
}

/*=====================
Firstview
=====================*/
.firstview {
  width: 100%;
  height: auto;
}
.firstview img {
  width: 100%;
  height: auto;
  object-fit: contain;
}
.firstview__img {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 777px) {
  .firstview__img--wide {
    display: none;
  }
}
.firstview__img--small {
  display: none;
}
@media screen and (max-width: 777px) {
  .firstview__img--small {
    display: block;
  }
}
.firstview__img img {
  vertical-align: bottom;
}

/*=====================
Catch
=====================*/
.catch {
  width: 100%;
  height: auto;
  
	background: linear-gradient(to right,  #CFBE26 0%,#f7c769 20%,#f7c769 50%,#f7c769 80%, #CFBE26 100%);
  color: #db411c;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: 5%;
  margin-left: auto;
}
.catch__item {
  padding-top: 2%;
  padding-right: 0;
  padding-bottom: 2%;
  padding-left: 0;
}
.catch__text {
  width: 75%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: center;
  font-weight: 600;
  font-size: calc(15px + 3 * ((100vw - 420px) / 860));
  letter-spacing: .0625em;
}
@media screen and (max-width: 777px) {
  .catch__text {
    width: 90%;
    height: auto;
  }
}
.catch__movie {
  margin-top: 2%;
  margin-right: auto;
  margin-bottom: 2%;
  margin-left: auto;
}
.catch__movie--title {
  margin-top: auto;
  margin-right: auto;
  margin-bottom: 3%;
  margin-left: auto;
  padding-top: 10px;
  padding-right: 10px;
  padding-bottom: 10px;
  padding-left: 10px;
  background: #ffffff;
  width: 40%;
  height: auto;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: center;
  font-weight: 600;
  font-size: calc(15px + 3 * ((100vw - 420px) / 860));
  color: #b5111e;
  position: relative;
}
@media screen and (max-width: 1200px) {
  .catch__movie--title {
    width: 60%;
    height: auto;
  }
}
@media screen and (max-width: 777px) {
  .catch__movie--title {
    width: 75%;
    height: auto;
  }
}
.catch__movie--title::before {
  width: 0;
  height: 0;
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  right: 18%;
  bottom: 0;
  margin-top: auto;
  margin-right: 0;
  margin-bottom: auto;
  margin-left: 0;
  border-top: 12px solid transparent;
  border-left: 12px solid #b5111e;
  border-bottom: 12px solid transparent;
  transform: rotate(90deg);
  z-index: 10;
}
@media screen and (max-width: 1200px) {
  .catch__movie--title::before {
    position: absolute;
    top: 0;
    right: 15%;
    bottom: 0;
  }
}
@media screen and (max-width: 777px) {
  .catch__movie--title::before {
    border-top: 15px solid transparent;
    border-left: 15px solid #b5111e;
    border-bottom: 15px solid transparent;
    position: absolute;
    top: 0;
    right: 5%;
    bottom: 0;
  }
}
@media screen and (max-width: 599px) {
  .catch__movie--title::before {
    border: none;
  }
}
.catch__frame {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
.catch__frame p {
  text-align: center;
  padding-top: 3%;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
}
.catch__frame--item {
  
  margin-right: 0;
  margin-bottom: auto;
  margin-left: 1%;
  width: 80%;
  height: auto;
  aspect-ratio: 16 / 9;
}
.catch__frame a{
	color:black;
	word-wrap: anywhere;	
}
@media screen and (max-width: 1200px) {
  .catch__frame--item {
    width: 80%;
    height: auto;
  }
}
@media screen and (max-width: 777px) {
  .catch__frame--item {
    margin-top: auto;
    margin-right: auto;
    
    margin-left: auto;
    width: 80%;
    height: auto%;
  }
}

/*=====================
Content_Common
=====================*/
.shop,
.about,
.ticket,
.map,
.program,
.campaign,
.access {
  width: 100%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  padding-top: 80px;
  padding-right: 0;
  padding-bottom: 3%;
  padding-left: 0;
}
@media screen and (max-width: 777px) {
  .shop,
  .about,
  .ticket,
  .map,
  .program,
  .campaign,
  .access {
    padding-top: 40px;
    padding-right: 0;
    padding-bottom: 3%;
    padding-left: 0;
  }
}

/*=====================
About
=====================*/
.about a {
  color: #b5111e;
}
.about__content {
  width: 100%;
  height: auto;
  color: #e7461e;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: left;
  font-weight: 500;
  font-size: calc(15px + 3 * ((100vw - 420px) / 860));
}
@media screen and (max-width: 777px) {
  .about__content {
    padding-top: 10%;
    padding-right: 0;
    padding-bottom: 10%;
    padding-left: 0;
    border-radius: 0;
  }
}
.about__box {
  width: 70%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  padding-top: 2%;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  border-bottom: 1px solid #b5111e;
}
@media screen and (max-width: 777px) {
  .about__box {
    width: 95%;
    height: auto;
    margin-top: 5%;
    margin-right: auto;
    margin-bottom: 5%;
    margin-left: auto;
  }
}
.about__box a{
	color: #e7461e;
}
.about__title {
  width: 20%;
  height: auto;
  margin-top: 0;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  padding-top: 0;
  padding-right: 10px;
  padding-bottom: 0;
  padding-left: 0;
}
@media screen and (max-width: 777px) {
  .about__title {
    width: 25%;
    height: auto;
  }
}
.about__text {
  width: 70%;
  height: auto;
}
.about__item {
  text-align: center;
  width: 80%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  padding-top: 3%;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
}

/*=====================
Food
=====================*/
.shop__title {
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
.shop__title h3 {
  font-family: 'Zen Maru Gothic', sans-serif;
  text-align: center;
  font-weight: 700;
  font-size: calc(30px + 15* ((100vw - 420px) / 860));
}
.shop__subtitle {
  width: 90%;
  height: auto;
  margin-top: 3%;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  padding-top: 2%;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  border-bottom: 1px solid #ffffff;
}
.shop__subtitle h3 {
  font-family: 'Zen Maru Gothic', sans-serif;
  text-align: center;
  font-weight: 600;
  font-size: calc(30px + 5* ((100vw - 420px) / 860));
  color: white;
}
.shop__subtitle--img {
  vertical-align: middle;
}
.shop__subtitle--img img {
  width: 80px;
  height: 80px;
  object-fit: contain;
}

.shopcontents {
  width: 100%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
.shopcontents p {
  padding-top: 15px;
  padding-right: 15px;
  padding-bottom: 0;
  padding-left: 15px;
}
.shopcontents__content {
  width: 100%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  background: #e7461e;
}
@media screen and (max-width: 1200px) {
  .shopcontents__content {
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 5%;
    padding-left: 0;
  }
}
@media screen and (max-width: 777px) {
  .shopcontents__content {
    width: 100%;
    height: auto;
    margin-top: 20%;
    margin-right: auto;
    margin-bottom: auto;
    margin-left: auto;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 5%;
    padding-left: 0;
  }
}
.shopcontents__box {
  width: 100%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 2%;
  padding-left: 0;
}
@media screen and (max-width: 1200px) {
  .shopcontents__box {
    margin-top: 2%;
    margin-right: auto;
    margin-bottom: auto;
    margin-left: auto;
  }
}
.shopcontents__item {
  width: 30%;
  height: auto;
  margin-top: 2%;
  margin-right: 0;
  margin-bottom: auto;
  margin-left: 2%;
}
@media screen and (max-width: 1200px) {
  .shopcontents__item {
    width: 45%;
    height: auto;
    margin-top: 2%;
    margin-right: 0;
    margin-bottom: auto;
    margin-left: 3%;
  }
}
@media screen and (max-width: 777px) {
  .shopcontents__item {
    padding-top: 3%;
    padding-right: 0;
    padding-bottom: 3%;
    padding-left: 0;
    width: 90%;
    height: auto;
    margin-top: auto;
    margin-right: auto;
    margin-bottom: auto;
    margin-left: auto;
  }
}
.shopcontents__commingsoon {
	color: white;
}
@media screen and (max-width: 1200px) {
  .shopcontents__commingsoon {
    width: 45%;
    height: auto;
    margin-top: 2%;
    margin-right: 0;
    margin-bottom: auto;
    margin-left: 3%;
  }
}
@media screen and (max-width: 777px) {
  .shopcontents__commingsoon {
    padding-top: 3%;
    padding-right: 0;
    padding-bottom: 3%;
    padding-left: 0;
    width: 90%;
    height: auto;
    margin-top: auto;
    margin-right: auto;
    margin-bottom: auto;
    margin-left: auto;
  }
}
.shopcontents__item--drink {
  width: 20%;
  height: auto;
  margin-top: 3%;
  margin-right: 0;
  margin-bottom: auto;
  margin-left: 4%;
}
@media screen and (max-width: 1200px) {
  .shopcontents__item--drink {
    width: 35%;
    height: auto;
    margin-top: 3%;
    margin-right: 0;
    margin-bottom: auto;
    margin-left: 10%;
  }
}
@media screen and (max-width: 777px) {
  .shopcontents__item--drink {
    width: 85%;
    height: auto;
    margin-top: auto;
    margin-right: auto;
    margin-bottom: auto;
    margin-left: auto;
  }
}
.shopcontents__img {
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  width: 90%;
  height: auto;
}
.shopcontents__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.shopcontents__img--drink {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 777px) {
  .shopcontents__img--drink {
    width: 90%;
    height: auto;
  }
}
.shopcontents__title {
  font-family: 'Noto Sans JP', sans-serif;
  text-align: left;
  font-weight: 600;
  font-size: 16px;
  background: #ffffff;
  width: 90%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: 1%;
  margin-left: auto;
  min-height: 60px;
  vertical-align: bottom;
}
.shopcontents__title--drink {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 777px) {
  .shopcontents__title--drink {
    font-size: 19px;
    width: 90%;
    height: auto;
  }
}
.shopcontents__text, .shopcontents__link {
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  width: 90%;
  height: auto;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: left;
  font-weight: 400;
  font-size: calc(13px + 2* ((100vw - 420px) / 860));
  background: rgba(255, 255, 255, 0.7);
}
@media screen and (max-width: 777px) {
  .shopcontents__text, .shopcontents__link {
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 3%;
    padding-left: 0;
  }
}
.shopcontents__text--drink, .shopcontents__link--drink {
  width: 100%;
  height: auto;
}
@media screen and (max-width: 777px) {
  .shopcontents__text--drink, .shopcontents__link--drink {
    width: 90%;
    height: auto;
  }
}
@media screen and (max-width: 777px) {
  .shopcontents__text--small, .shopcontents__link--small {
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 3%;
    padding-left: 0;
  }
}
.shopcontents__text {
  min-height: 180px;
  line-height: 1.4;
}
@media screen and (max-width: 1200px) {
  .shopcontents__text {
    min-height: 200px;
  }
}
@media screen and (max-width: 777px) {
  .shopcontents__text {
    min-height: auto;
  }
}
.shopcontents__text--drink {
  min-height: 250px;
}
@media screen and (max-width: 1200px) {
  .shopcontents__text--drink {
    min-height: 210px;
  }
}
@media screen and (max-width: 777px) {
  .shopcontents__text--drink {
    min-height: auto;
  }
}
.shopcontents__text--small {
  min-height: 80px;
}
@media screen and (max-width: 777px) {
  .shopcontents__text--small {
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 3%;
    padding-left: 0;
    min-height: auto;
  }
}
.shopcontents__link {
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 10px;
  padding-left: 0;
}
@media screen and (max-width: 1200px) {
  .shopcontents__link {
    min-height: 30px;
  }
}
@media screen and (max-width: 777px) {
  .shopcontents__link {
    min-height: auto;
  }
}
.shopcontents__discription {
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  width: 90%;
  height: auto;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: center;
  font-weight: 600;
  font-size: calc(14px + 2* ((100vw - 420px) / 860));
  color: #ffffff;
}
@media screen and (max-width: 777px) {
  .shopcontents__discription {
    text-align: left;
  }
}
.shopcontents__special {
  width: 95%;
  height: auto;
  margin-top: 3%;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 2%;
  padding-left: 0;
}
@media screen and (max-width: 1200px) {
  .shopcontents__special {
    width: 90%;
    height: auto;
  }
}
@media screen and (max-width: 777px) {
  .shopcontents__special {
    width: 90%;
    height: auto;
  }
}
.shopcontents__special--img, .shopcontents__special--text {
  margin-top: 0;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
@media screen and (max-width: 1200px) {
  .shopcontents__special--img, .shopcontents__special--text {
    margin-top: auto;
    margin-right: auto;
    margin-bottom: auto;
    margin-left: auto;
  }
}
.shopcontents__special--img {
  width: 60%;
  height: auto;
}
.shopcontents__special--img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media screen and (max-width: 1200px) {
  .shopcontents__special--img {
    width: 100%;
    height: auto;
  }
}
.shopcontents__special--text {
  width: 35%;
  height: auto;
}
@media screen and (max-width: 1200px) {
  .shopcontents__special--text {
    width: 100%;
    height: auto;
    margin-top: auto;
    margin-right: auto;
    margin-bottom: auto;
    margin-left: auto;
  }
}
@media screen and (max-width: 1200px) {
  .shopcontents__special--p {
    width: 100%;
    height: auto;
  }
}
.shopcontents__content a {
  font-family: 'Noto Sans JP', sans-serif;
  text-align: left;
  font-weight: 500;
  font-size: calc(13px + 1* ((100vw - 420px) / 860));
  display: block;
  color: #000000;
}
.shopcontents a:hover {
  color: #00aaf0;
  opacity: 0.8;
}

/*=====================
Map
=====================*/
.map {
  width: 100%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
.map__content {
  width: 100%;
  height: auto;
  margin-top: 5%;
  margin-right: auto;
  margin-bottom: 5%;
  margin-left: auto;
  padding-top: 3%;
  padding-right: 0;
  padding-bottom: 3%;
  padding-left: 0;
  background: #fff5f5;
}
@media screen and (max-width: 777px) {
  .map__content {
    width: 100%;
    height: auto;
    padding-top: 0;
    padding-right: 0;
    padding-bottom: 0;
    padding-left: 0;
  }
}
.map__img {
  width: 80%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
.map__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media screen and (max-width: 777px) {
  .map__img {
    width: 90%;
    height: auto;
  }
}

/*=====================
Performer
=====================*/
.performercontent {
  width: 100%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
.performercontent a {
  color: #000000;
}
.performercontent a:hover {
  opacity: 0.8;
}
.performercontent__wrap {
  width: 100%;
  height: auto;
  margin-top: 5%;
  margin-right: auto;
  margin-bottom: 5%;
  margin-left: auto;
  padding-top: 3%;
  padding-right: 0;
  padding-bottom: 3%;
  padding-left: 0;
  background: #e7461e;
}
@media screen and (max-width: 777px) {
  .performercontent__wrap {
    width: 100%;
    height: auto;
    padding-top: 5%;
    padding-right: 0;
    padding-bottom: 5%;
    padding-left: 0;
  }
}
.performercontent__title {
  width: 80%;
  height: auto;
  font-family: 'Zen Maru Gothic', sans-serif;
  text-align: center;
  font-weight: 600;
  font-size: calc(30px + 5 * ((100vw - 420px) / 860));
  border-bottom: 2px solid #ffffff;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  color: #ffffff;
}
.performercontent__special {
  font-family: 'Zen Maru Gothic', sans-serif;
  text-align: center;
  font-weight: 600;
  font-size: calc(30px + 20 * ((100vw - 420px) / 860));
  color: #ffffff;
}
.performercontent__subtitle {
  width: 85%;
  height: auto;
  font-family: 'Zen Maru Gothic', sans-serif;
  text-align: left;
  font-weight: 600;
  font-size: calc(20px + 10 * ((100vw - 420px) / 860));
  margin-top: 5%;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  color: #ffffff;
}
@media screen and (max-width: 777px) {
  .performercontent__subtitle {
    text-align: center;
  }
}
.performercontent__subtitle span {
  padding-top: 5px;
  padding-right: 5px;
  padding-bottom: 5px;
  padding-left: 5px;
  border: 2px solid #ffffff;
}
@media screen and (max-width: 777px) {
  .performercontent__subtitle span {
    margin-top: auto;
    margin-right: auto;
    margin-bottom: auto;
    margin-left: auto;
    width: 60%;
    height: auto;
    display: block;
  }
}
.performercontent__box {
  width: 95%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
.performercontent__item {
  width: 20%;
  height: auto;
  margin-top: 3%;
  margin-right: 0;
  margin-bottom: auto;
  margin-left: 4%;
}
@media screen and (max-width: 1200px) {
  .performercontent__item {
    width: 45%;
    height: auto;
    margin-top: 2%;
    margin-right: 0;
    margin-bottom: auto;
    margin-left: 7%;
  }
}
@media screen and (max-width: 1200px) {
  .performercontent__item {
    width: 40%;
    height: auto;
  }
}
@media screen and (max-width: 777px) {
  .performercontent__item {
    padding-top: 3%;
    padding-right: 0;
    padding-bottom: 3%;
    padding-left: 0;
    width: 80%;
    height: auto;
    margin-top: auto;
    margin-right: auto;
    margin-bottom: auto;
    margin-left: auto;
  }
}
.performercontent__img {
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  width: 90%;
  height: auto;
}
.performercontent__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.performercontent__name {
  font-family: 'Noto Sans JP', sans-serif;
  text-align: center;
  font-weight: 600;
  font-size: calc(15px + 2 * ((100vw - 420px) / 860));
  background: #ffffff;
  width: 90%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
.performercontent__name--height {
  min-height: 85px;
}
@media screen and (max-width: 777px) {
  .performercontent__name--height {
    min-height: auto;
  }
}
.performercontent__text {
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  width: 90%;
  height: auto;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: left;
  font-weight: 400;
  font-size: calc(13px + 2* ((100vw - 420px) / 860));
  background: #ffffff;
}
.performercontent__text p {
  padding-top: 0;
  padding-right: 15px;
  padding-bottom: 0;
  padding-left: 15px;
}
.performercontent__text--center {
  font-family: 'Noto Sans JP', sans-serif;
  text-align: left;
  font-weight: 400;
  font-size: calc(15px - 1* ((100vw - 420px) / 860));
  min-height: 40px;
  text-align: center;
}

/*=====================
Program
=====================*/
.program__content {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: flex-start;
}
.program__item {
  width: 45%;
  height: auto;
  margin-top: 5%;
  margin-right: auto;
  margin-bottom: 5%;
  margin-left: auto;
  border-radius: 30px;
  min-height: 1100px;
  text-align: left;
  font-weight: 700;
}
@media screen and (max-width: 777px) {
  .program__item {
    margin-top: 10%;
    margin-right: auto;
    margin-bottom: 10%;
    margin-left: auto;
    width: 85%;
    height: auto;
    min-height: auto;
  }
}
.program__item--day01 {
  border: 8px solid #b5111e;
}
.program__item--day02 {
  border: 8px solid #ebb400;
}
.program__title {
  width: 100%;
  height: 60px;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: left;
  font-weight: 800;
  font-size: calc(45px + 15 * ((100vw - 420px) / 860));
  color: #ffffff;
  line-height: 60px;
  position: relative;
  border-bottom: 1px solid #ffffff;
}
@media screen and (max-width: 777px) {
  .program__title {
    width: 100%;
    height: 50px;
  }
}
.program__title span {
  position: absolute;
  top: -55%;
  left: 3%;
}
.program__title--day01 {
  background: #b5111e;
}
.program__title--day02 {
  background: #ebb400;
}
.program__text {
  width: 100%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  padding-top: 3%;
  padding-right: 0;
  padding-bottom: 3%;
  padding-left: 0;
}
.program__text--day01 {
  background: rgba(181, 17, 30, 0.1);
}
.program__text--day02 {
  background: rgba(235, 180, 0, 0.1);
}
.program__text h4 {
  font-family: 'Noto Sans JP', sans-serif;
  text-align: left;
  font-weight: 600;
  font-size: calc(15px + 10 * ((100vw - 420px) / 860));
  padding-top: 5px;
  padding-right: 3%;
  padding-bottom: 5px;
  padding-left: 3%;
  line-height: 1.3;
}
@media screen and (max-width: 777px) {
  .program__text h4 {
    text-align: left;
  }
}
.program__text p {
  padding-top: 10px;
  padding-right: 10%;
  padding-bottom: 10px;
  padding-left: 10%;
}
@media screen and (max-width: 1200px) {
  .program__text p {
    padding-top: 10px;
    padding-right: 20px;
    padding-bottom: 10px;
    padding-left: 20px;
  }
}
.program__time {
  width: 100%;
  height: auto;
  color: #ffffff;
}
.program__time span {
  width: 50%;
  height: auto;
  display: block;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 20px;
}
@media screen and (max-width: 1200px) {
  .program__time span {
    width: 70%;
    height: auto;
  }
}
.program__time--day01 {
  background: #b5111e;
}
.program__time--day02 {
  background: #ebb400;
}
.program__time--bgday01 {
  background: rgba(181, 17, 30, 0.1);
}
.program__time--bgday02 {
  background: rgba(235, 180, 0, 0.1);
}
.program__right {
  display: block;
  text-align: right;
}

.color-day01 {
  color: #b5111e;
}

.color-day02 {
  color: #ebb400;
}

.day01 {
  text-shadow: 2px 2px 0 #b5111e, -2px -2px 0 #b5111e, -2px 2px 0 #b5111e, 2px -2px 0 #b5111e, 0 2px 0 #b5111e, 0 -2px 0 #b5111e, -2px 0 0 #b5111e, 2px 0 0 #b5111e;
}

.day02 {
  text-shadow: 2px 2px 0 #ebb400, -2px -2px 0 #ebb400, -2px 2px 0 #ebb400, 2px -2px 0 #ebb400, 0 2px 0 #ebb400, 0 -2px 0 #ebb400, -2px 0 0 #ebb400, 2px 0 0 #ebb400;
}

/*=====================
Ticket
=====================*/
.ticket {
  background: #fff5f5;
}
.ticket__menu {
  width: 100%;
  height: auto;
  margin-top: 5%;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 777px) {
  .ticket__menu {
    width: 100%;
    height: auto;
  }
}
.ticket__content {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  width: 100%;
  height: auto;
}
.ticket__item {
  border: 5px solid #faa0b0;
  width: 80%;
  height: auto;
  margin-top: 5%;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  background: #C11212;
  text-align: center;
  
}
@media screen and (max-width: 1200px) {
  .ticket__item {
    width: 70%;
    height: auto;
  }
}
@media screen and (max-width: 777px) {
  .ticket__item {
    min-height: auto;
    width: 90%;
    height: auto;
  }
}
.ticket__text p{
	font-size: 20px;
	font-weight: bold;
	background: #EAA889;
	color:#8c1818;
	border-radius: 10px;
	padding: 5px;

	
}
.ticket__text span{
	display: inline-block;
}
.ticket__title, .ticket__price, .ticket__text {
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  padding-top: 20px;
  padding-right: 20px;
  padding-bottom: 20px;
  padding-left: 20px;
}
.ticket__title, .ticket__text {
  color: #fee071;
}
.ticket__title {
  font-weight: 700;
}
.ticket__title span {
  font-weight: 500;
  font-size: 1.5em;
}
.ticket__price {
	width: calc(85% - 40px);
	height: auto;
	background: #F1DDD1;
	font-size: 30px;
	font-weight: bold;
}
.ticket__price strong {
  font-size: calc(20px + 15 * ((100vw - 420px) / 860));
}
.ticket__text {
  text-align: left;
}
.ticket__img {
  width: 90%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: 5%;
  margin-left: auto;
}
.ticket__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.ticket__img img {
  vertical-align: bottom;
}
.ticket__btn {
  width: 40%;
  height: auto;
  margin-top: 5%;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
@media screen and (max-width: 1200px) {
  .ticket__btn {
    width: 90%;
    height: auto;
    margin-top: 6%;
    margin-right: auto;
    margin-bottom: auto;
    margin-left: auto;
  }
}
.ticket__btn a {
	width: 100%;
	max-width: 300px;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  font-family: 'Noto Sans JP', sans-serif;
  text-align: center;
  font-weight: 400;
  font-size: calc(15px + 7 * ((100vw - 420px) / 860));
  padding-top: 2%;
  padding-right: 0;
  padding-bottom: 2%;
  padding-left: 0;
  color: #ffffff;
  background: #C11212;
  display: block;
  border-radius: 40px;
}
.ticket__btn a:hover {
  background: #EAA889;
	color:#8c1818;
}
.ticket__btn--text {
  margin-top: 5%;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 15px;
  font-size: 13px;
}

/*=====================
Campaign
=====================*/
.campaign__subtitle {
  font-family: 'Noto Sans JP', sans-serif;
  text-align: center;
  font-weight: 400;
  font-size: calc(20px + 5 * ((100vw - 420px) / 860));
  width: 70%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  padding-top: 3%;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  color: hotpink;
}
@media screen and (max-width: 777px) {
  .campaign__subtitle {
    width: 90%;
    height: auto;
  }
}
.campaign__subtitle span {
  width: 50%;
  height: 70px;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: 3%;
  margin-left: auto;
  padding-top: 10px;
  padding-right: 0;
  padding-bottom: 10px;
  padding-left: 0;
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  font-weight: 400;
  font-size: calc(20px + 10 * ((100vw - 420px) / 860));
  background: #eb3700;
  display: block;
  color: #ffffff;
  line-height: 70px;
  position: relative;
}
@media screen and (max-width: 777px) {
  .campaign__subtitle span {
    width: 100%;
    height: 70px;
  }
}
.campaign__subtitle span::before {
  width: 90%;
  height: 55px;
  content: "";
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  border: 2px solid #ffffff;
}
.campaign__subtitle--limit {
  font-family: 'Noto Sans JP', sans-serif;
  text-align: center;
  font-weight: 400;
  font-size: calc(20px + 10 * ((100vw - 420px) / 860));
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
  color: #eb3700;
}
.campaign__example {
  width: 100%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: center;
}
.campaign__example figure {
  width: 30%;
  height: auto;
  margin-top: 3%;
  margin-right: 2%;
  margin-bottom: auto;
  margin-left: 2%;
}
.campaign__example figure img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media screen and (max-width: 777px) {
  .campaign__example figure {
    width: 90%;
    height: auto;
  }
}
.campaign__howto {
  width: 85%;
  height: auto;
  margin-top: 2%;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
.campaign__howto--text {
  width: 50%;
  height: auto;
  margin-top: 3%;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
@media screen and (max-width: 777px) {
  .campaign__howto--text {
    width: 90%;
    height: auto;
  }
}
.campaign__howto--content {
  width: 80%;
  height: auto;
  margin-top: 3%;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  border: 3px solid hotpink;
}
@media screen and (max-width: 777px) {
  .campaign__howto--content {
    width: 100%;
    height: auto;
  }
}
.campaign__howto--item {
  width: 100%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
.campaign__howto--img {
  width: 50%;
  height: auto;
  margin-top: 5%;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
.campaign__howto--img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media screen and (max-width: 777px) {
  .campaign__howto--img {
    width: 80%;
    height: auto;
  }
  .campaign__howto--img img {
    width: 100%;
    height: 100%;
    object-fit: contain;
  }
}
.campaign__howto--img p {
  text-align: center;
}
.campaign__howto--img strong {
  color: #eb3700;
}
.campaign__howto--right {
  width: 60%;
  height: auto;
  margin-top: 0;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  text-align: right;
}

/*=======Howto_Center=======*/
.howto-center {
  text-align: center;
  padding-top: 0;
  padding-right: 0;
  padding-bottom: 3%;
  padding-left: 0;
}

/*=====================
Apply
=====================*/
.apply {
  width: 70%;
  height: auto;
  margin-top: 5%;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: flex-start;
}
.apply img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media screen and (max-width: 777px) {
  .apply {
    width: 80%;
    height: auto;
  }
}
.apply__box {
  width: 35%;
  height: auto;
}
@media screen and (max-width: 1200px) {
  .apply__box {
    width: 80%;
    height: auto;
  }
}
@media screen and (max-width: 777px) {
  .apply__box {
    width: 100%;
    height: auto;
  }
}
.apply__title {
  font-family: 'Noto Sans JP', sans-serif;
  text-align: left;
  font-weight: 600;
  font-size: calc(24px + 6 * ((100vw - 420px) / 860));
  color: #eb3700;
}
.apply__subtitle {
  font-size: calc(17px + 3 * ((100vw - 420px) / 860));
}
.apply__item {
  margin-top: 3%;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
.apply__text {
  font-size: calc(15px + 2 * ((100vw - 420px) / 860));
}
.apply__text a {
  color: #000000;
  border-bottom: 1px solid #000000;
}

/*=====================
SNS
=====================*/
.sns {
  width: 60%;
  height: auto;
  margin-top: 5%;
  margin-right: auto;
  margin-bottom: 5%;
  margin-left: auto;
  text-align: center;
}
@media screen and (max-width: 777px) {
  .sns {
    width: 90%;
    height: auto;
  }
}
.sns__title {
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  font-weight: 400;
  font-size: calc(13px + 9 * ((100vw - 420px) / 860));
  color: #eb3700;
  display: inline-block;
  position: relative;
}
@media screen and (max-width: 1200px) {
  .sns__title {
    font-family: 'Noto Serif JP', serif;
    text-align: center;
    font-weight: 400;
    font-size: calc(20px + 12 * ((100vw - 420px) / 860));
  }
}
.sns__item {
  width: 50%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
@media screen and (max-width: 1200px) {
  .sns__item {
    width: 70%;
    height: auto;
  }
}
@media screen and (max-width: 777px) {
  .sns__item {
    width: 90%;
    height: auto;
  }
}
.sns__item ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  align-items: flex-start;
  list-style-type: none;
}
@media screen and (max-width: 599px) {
  .sns__item img {
    width: 50px;
    height: auto;
  }
}

/*=====================
Access
=====================*/
.access__content {
  width: 100%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-top: 5%;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
.access__item {
  width: 40%;
  height: auto;
}
@media screen and (max-width: 777px) {
  .access__item {
    width: 100%;
    height: auto;
	padding-left: 20px;
	padding-right: 20px;  
  }
  .access__map {
	text-align: center;
}
	
}
.access__text {
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: 10%;
  width: 100%;
  height: auto;
}
@media screen and (max-width: 777px) {
  .access__text {
    margin-top: auto;
    margin-right: auto;
    margin-bottom: auto;
    margin-left: auto;
    
  }
}
.access__link a {
  width: 70%;
  height: auto;
  padding-top: 10px;
  padding-right: 0;
  padding-bottom: 10px;
  padding-left: 0;
  margin-top: 3%;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: 10%;
  display: block;
  background: #e7461e;
  text-align: center;
}
.access__link a:hover {
  background: #828282;
}
@media screen and (max-width: 777px) {
  .access__link a {
    margin-top: 3%;
    margin-right: auto;
    margin-bottom: auto;
    margin-left: auto;
  }
}
.access__map {
  width: 100%;
  height: 400px;
}
.access__map iframe{
	width: 100%;
}

/*=====================
SponsorShip
=====================*/
.sponsorship {
  width: 100%;
  height: auto;
  margin-top: 5%;
  margin-right: auto;
  margin-bottom: 5%;
  margin-left: auto;
}
.sponsorship__title {
  width: 100%;
  height: auto;
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  font-weight: 400;
  font-size: calc(18px + 10 * ((100vw - 420px) / 860));
  color: #eb3700;
	
}
.sponsorship__text {
  font-family: 'Noto Serif JP', serif;
  text-align: center;
  font-weight: 400;
  font-size: calc(18px + 10* ((100vw - 420px) / 860));
  color: #945600;
	padding: 10px;
}

.sponsorship__text span{
	display: inline-block;
}

.sponsorship__item {
  width: 80%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
     
}
.sponsorship__box {
  display: flex;
   flex-direction: row;
  flex-wrap:wrap;
  justify-content:center;
  align-items: center;
	min-width: 800px;


}
@media screen and (max-width: 777px) {
  .sponsorship__box {
    display: flex;
    flex-wrap: wrap;
	  flex-direction: column;
    justify-content: flex-start;
    align-items: center;
	  min-width: 80px;
  }
}
.sponsorship__img {
  width: 25%;
  height: auto;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
.sponsorship__img img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
@media screen and (max-width: 777px) {
  .sponsorship__img {
    width: 80%;
    height: auto;
    margin-top: auto;
    margin-right: auto;
    margin-bottom: auto;
    margin-left: auto;
  }
}
.sponsorship__img--wide {
  width: 30%;
  height: auto;
}
@media screen and (max-width: 777px) {
  .sponsorship__img--wide {
    margin-top: auto;
    margin-right: auto;
    margin-bottom: auto;
    margin-left: auto;
    width: 45%;
    height: auto;
  }
}

/*=====================
Footer
=====================*/
.footer {
  width: 100%;
  height: auto;
	
}
.footer__cont {
  padding-top: 2%;
  padding-right: 0;
  padding-bottom: 2%;
  padding-left: 0;
	background-image: url("../img/footer_bg.png");
 
  color: #ffffff;
}
.footer__cont p {
  padding-top: 2%;
  padding-right: 0;
  padding-bottom: 0;
  padding-left: 0;
}



/*=====================
PTop
=====================*/
.ptop {
  position: fixed;
  right: 50px;
  bottom: 50px;
  width: 100px;
  height: 100px;
  background: #e7461e;
  opacity: 0.8;
}
@media screen and (max-width: 777px) {
  .ptop {
    width: 50px;
    height: 50px;
    position: fixed;
    right: 30px;
    bottom: 30px;
  }
}
.ptop__in {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin-top: auto;
  margin-right: auto;
  margin-bottom: auto;
  margin-left: auto;
}
.ptop__in img {
  width: 100%;
  height: 100%;
}

.sold_out{
	width: 30%;
}

.kinen_set{
	background: white;
	color: hotpink;
	

	text-align: center;
}

.kinen_set_image{
	text-align: center;
	width: 40%;
	max-width: 300px;
}

@media screen and (max-width: 777px) {
  .kinen_set_image {
	  width: 100%;
  }
}
.kinen_set img{
	
	object-fit: contain;
	width: 100%;
}

.kinen_set p{
	font-size: 30px;
	
}

.kinen_set_contents{
	display: flex;
	flex-direction: row;
	justify-content: center;
	padding: 30px;
	align-items: center;
}

@media screen and (max-width: 777px) {
  .kinen_set_contents {
	  flex-direction:column;
  }
}

.kinen_set_text{
	max-width: 500px;
	text-align: left;
	padding: 20px;
	font-size: 15px;
}

.kinen_set_price{
	text-align:center;
	font-size: 30px;
}

.pr{
	width:100%;
	
	
	
}
.pr h2{
	word-break: keep-all;
	padding: 10px;
}
.pr > .banner img{
	width: 100%;
	
}

.pr .explain{
	width: calc(100% - 20px);
	display: flex;
	flex-direction: row;
	padding:10px;
	@media screen and (max-width: 777px) {
		flex-direction:column;
	}
	
	
}
.pr .explain .image{
	width:40%;
	@media screen and (max-width: 777px) {
		width:100%;
	}
	
}
.pr .explain .text{
	width:60%;
	padding-left: 10px;
	padding-right: 10px;
	@media screen and (max-width: 777px) {
		width: calc(100% - 20px);
	}
	
}

.pr .explain img{
	width:100%;
	
}

#sns_explain{
	text-align: left;
	padding-top: 20px;
	padding-bottom: 20px;
}

#link_title{
	word-wrap: break-word;	
}


.event_ends span{
	display: inline-block;
}

.shopcontents__item p{
	padding :10px;
}

.ticket_part{
    padding-top:10px;
}
.ticket_image{
    margin-left: 20px;
    width:320px;
    @media screen and (max-width: 777px) {
		width: 80%;
	}
}

.ticket_image img{
    width:100%;
}
.ticket_part_explain{
    padding-left: 20px;
    
}
.general_ticket_wrap{
    display:flex;
    flex-direction: row;
    justify-content: space-between;
     @media screen and (max-width: 777px) {
		flex-direction: column;
	}
    
    
}

.general_ticket_sp{
    flex: 1;
    background-color: #0a5930;
    padding 5px;
    margin: 5px;
    color:white;
    
    
}
.general_ticket_a{
    flex: 1;    
    background-color: #138c43;
    padding 5px;
    margin: 5px;
    color:white;
    
    
}
.general_ticket_f{
    flex: 1;    
    background-color: #e94d6c;
    padding 5px;
    margin: 5px;
    color:white;
    
    
    
}
.general_ticket_title{
    font-size: 26px;
    line-height: normal;
}
.general_ticket_price{
    font-size: 36px;
    line-height: normal;
}
.general_ticket_tax{
    font-size: 12px;
}
.general_ticket_item{
    color:#f4de25;
}
.general_ticket_item_additional{
    color:#f4de25;
    font-size: 10px;
}
.general_ticket_capacity{
    background: red;
    margin: 5px;
    border-radius: 10px;
    width: 80px;
}
.general_ticket_item_image{
    margin-left: auto;
    margin-right: auto;
    
    width:180px;
    @media screen and (max-width: 777px) {
		width: 80%;
	}
    
}
.general_ticket_item_image img{
    width:100%;
    
}