@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Poppins:ital,wght@0,100;0,200;0,300;0,400;0,500;0,600;0,700;0,800;0,900;1,100;1,200;1,300;1,400;1,500;1,600;1,700;1,800;1,900&display=swap');
body{
-webkit-print-color-adjust: exact;
color:#35318F;
font-weight: 600;
font-family: "Noto Sans JP",YuGothic, "Yu Gothic Medium", "Yu Gothic", 游ゴシック, "Hiragino Kaku Gothic ProN", メイリオ, meiryo, sans-serif;
-webkit-text-size-adjust: 100%;
line-height:1.5em;
text-align:center;
}
html{
  -webkit-font-smoothing: antialiased;
}
:root {
	/* color */
	--color-base: #35318F;
	--color-red: #E83836;
	--color-orange: #DB3A15;
	--color-orange-light: #EE7836;
	--color-purple: #5E58E4;
	--color-green: #009C74;
  --color-yellow: #FDD23E;
  --color-gray: #F0F1F6;
	/* font */
	--font-Poppins: "Poppins", sans-serif;
	/* icon */
	--icon-mail: url('../images/new/common/ico_mail.svg');
}
/* リンク */
a:link{
color:#35318F; /* 色 */
text-decoration:none;
}
a:visited{
color:#35318F; /* 色 */
text-decoration:none;
}
a:hover {
color:#35318F; /* 色 */
text-decoration:none;
}
a:active {
color:#35318F; /* 色 */
text-decoration:none;
}
#svgList{
  display: none !important;
}

#wrapper{
  width:100%;
  overflow-x: hidden;
}

.image{
  font-size: 0;
  line-height: 0;
}
.image img{
  max-width: 100%;
  height: auto;
}
.txt-image{
  overflow: hidden;
  text-indent: 100%;
  white-space: nowrap;
  font-size: 0;
  line-height: 0;
}
i svg{
  width: 100%;
  height: 100%;
}
/* font
----------------------- */
.font-en{
  letter-spacing: 0.05em;
  display: inline-block;
  font-family: var(--font-Poppins);
}
.en-Up{
  text-transform: uppercase;
}

/* .link-f
----------------------- */
.link-f{
  opacity:1;filter: alpha(opacity=100);-ms-filter: "alpha(opacity=100)";
  transition-property: opacity,filter;
  transition: 0.15s linear;
}
.link-f:hover{
  opacity:.8;filter: alpha(opacity=80);-ms-filter: "alpha(opacity=80)";
}
/* .image-f
----------------------- */
.image-f{
  font-size: 0;
  line-height: 0;
}
.image-f img{
  opacity:1;filter: alpha(opacity=100);-ms-filter: "alpha(opacity=100)";
  transition-property: opacity,filter;
  transition: 0.15s linear;
}
.image-f:hover img{
  opacity:.8;filter: alpha(opacity=80);-ms-filter: "alpha(opacity=80)";
}
/* .image-z
----------------------- */
.image-z {
  font-size: 0;
  line-height: 0;
  text-align: center;
  overflow: hidden;
}
.image-z img {
  object-fit: contain;
  width: 100%;
  height: 100%;
}
.image-z__hover {
  transform: scale(1);
  transition-property: transform,-webkit-transform;
  transition: 0.1s linear;
}
a:hover .image-z__hover {
  transform: scale(1.1);
  transform-origin: 50% 50%;
}

/* ========================================================
animation
======================================================== */
/* .move-slide-up
----------------------- */
.fameIn-slide-up{
  opacity:0;filter: alpha(opacity=0);-ms-filter: "alpha(opacity=0)";
}
.move-slide-up{
  animation: slide-up 0.8s ease-in-out 1 alternate;
  opacity:1;filter: alpha(opacity=100);-ms-filter: "alpha(opacity=100)";
}
@keyframes slide-up {
  0% {
    transform:translate(0, 5%);
    opacity:0;filter: alpha(opacity=0);-ms-filter: "alpha(opacity=0)";
  }
  100% {
    transform:translate(0, 0);
    opacity:1;filter: alpha(opacity=100);-ms-filter: "alpha(opacity=100)";
  }
}
/* .move-float
----------------------- */
.move-float{
  animation: float 3s ease-in-out infinite alternate;
}
@keyframes float {
  0% {
    transform:translate(0, 0);
  }
  50% {
    transform:translate(0, -2%);
  }
  100% {
    transform:translate(0, 0);
  }
}
/* .move-pop
----------------------- */
.move-pop{
  animation: pop 0.4s ease-out 1;
  transform-origin: 50% 50%;
}
@keyframes pop {
  0%,100% {
    transform: scale(1.0);
  }
  50% {
    transform: scale(1.1);
  }
}
.show{display: block !important;}
.hide{display: none !important;}

@media print, screen and (min-width:768px){
html{
 font-size:10px;
}
body{
 line-height: 1.6;
 min-width:calc(390px * 2);
}
.spVer{
  display: none !important;
}
#wrapper{
}
}

@media screen and (max-width: 767px){
html{
 font-size:2.5vw;
}
body{
 line-height: 1.6;
}
.pcVer{
  display: none !important;
}
#wrapper{
  overflow-x: hidden;
}
}
/* ========================================================
txt
======================================================== */
/* .txt-time
----------------------- */
.txt-time{
  display: inline-block;
  background-color: #F2F2F2;
  font-weight: bold;
  padding: 0 0.5em;
}
/* txt-bgyellow
----------------------- */
.txt-bgyellow{
  background-color: var(--color-yellow);
  padding: 0 0.2em;
}
/* .link-txt
----------------------- */
.link-txt{
  display: inline-block;
  border-bottom: solid 1px var(--color-base);
  padding-bottom: 0.5rem;
  padding-right: 2.4rem;
  background: url("../images/ic_blank.svg") right center no-repeat;
  -moz-background-size: 1.3rem auto;
  background-size: 1.3rem auto;
}
/* ========================================================
list
======================================================== */
/* .list-caption
----------------------- */
.list-caption{
  li{
    text-indent: -1em;
    padding-left: 1em;
    font-weight: normal;
    font-size: 1.4rem;
    margin-top: 0.2em;
    > *{
      text-indent: 0;
    }
    &::before{
      content: "※";
      text-indent: 0;
      display: inline-block;
    }
  }
}
/* event__deta
----------------------- */
.event__deta{
  text-align: left;
  margin-top: 1.3rem;
  font-size: 1.6rem;
  .event__deta-item{
    display:flex;
    -ms-flex-pack:distribute;
    justify-content:flex-start;
    align-items: flex-start;
    margin-top: 1.6rem;
    .event__deta-ttl{
      padding-right: 1em;
      font-size: 1.6rem;
    }
    .event__deta-date{
      font-size: 1.6rem;
      span{
        font-size: 2.3rem;
        line-height: 1;
        display: inline-block;
        vertical-align: baseline;
      }
    }
    .phoneNumber{
      display: inline-block;
      background: url("../images/ic_phone.svg") left center no-repeat;
      -moz-background-size: 1.6rem auto;
      background-size: 1.6rem auto;
      padding-left: 2rem;
    }
  }
}
/* ========================================================
bt
======================================================== */
.ic__sns{
  font-size: 0;
  line-height: 0;
  img{
    width: 100%;
    height: auto;
  }
}
/* bt-color
----------------------- */
.bt-color{
  text-align: center;
  a{
    display: inline-block;
    border-radius: 9999px;
    margin: 0 auto;
    font-weight: bold;
    font-size: 1.6rem;
    padding: 0.875em 2em;
    line-height: 1.6;
    position: relative;
    .bt-color__arrow{
      position: absolute;
      right: 0.8em;
      width: 1.5em;
      height: 1.5em;
      top: calc(50% - 0.75em);
      line-height: 0;
    }
  }
  &.bt-color__bgwhite a{background-color: #fff;}
  &.bt-color__bgblue a{background-color: var(--color-base);}
  &.bt-color__bgorange a{background-color: var(--color-orange);}
  &.bt-color__txtwhite a{color: #fff;}
  &.bt-color__txtblue a{color: var(--color-base);}
}
/* bt-border
----------------------- */
.bt-border{
  text-align: center;
  margin-top: 1.2rem;
  font-size: 1.4rem;
  a{
    display: inline-block;
    border-radius: 9999px;
    margin: 0 auto;
    font-weight: bold;
    font-size: 1.6rem;
    border: solid 1px;
    padding: 0.875em 1em;
    line-height: 1.6;
    position: relative;
    background-color: #fff;
    .ic__sns{
      display: inline-block;
      vertical-align: middle;
      width: 3.2rem;
      height: 3.2rem;
      margin-right: 0.8rem;
    }
  }
  &.bt-border__linegray a{border-color: #DFE0FF;}
}
/* ========================================================
.pc-about__area
======================================================== */
.pc-about__area{
  background: url("../images/bg_pc_left.png") center top #fff no-repeat;
  background-size: cover;
  position: fixed;
  left: 0;
  top: 0;
  height: 100vh;
  width: calc((100% - 390px) / 2);
  padding:40px 40px 80px;
    display:flex;
  justify-content: center;
  align-items: center;
  transition-property: width;
  transition: 0.2s linear;
}
.pc-about__inner{
  .image{
    max-width: 70%;
    margin: 0 auto;
  }
  .pc-about__fes{
    margin-top: 14px;
  }
  .pc-about__txt{
    font-size: 1.6rem;
    margin-top: 2.2rem;
    font-weight: bold;
  }
}
@media screen and (max-width: 1200px){
  .pc-about__area{
    width: calc(100% - 470px);
  }
}
@media screen and (max-width: 1000px){
  .pc-about__area{
    width: calc(100% - 390px);
  }
}
@media screen and (max-width: 767px){
  .pc-about__area{display: none !important;}
}
/* ========================================================
.pc-menu__area
======================================================== */
.pc-menu__area{
  background: url("../images/bg_pc_right.png") center top #fff no-repeat;
  background-size: cover;
  position: fixed;
  overflow: hidden;
  right: 0;
  top: 0;
  height: 100vh;
  width: calc((100% - 390px) / 2);
  padding:40px 40px 80px;
    display:flex;
  justify-content: center;
  align-items: center;
  transition-property: width;
  transition: 0.2s linear;
  .pc-menu__inner{
    padding: 56px 24px;
    border-radius: 24px;
    background-color: #fff;
    position: relative;
    max-width: 434px;
    width: 100%;
    margin: 0 auto;
    &::after{
      content: "";
      display: block;
      background: url("../images/pop_menu-pc.png") no-repeat;
      width: 642px;
      height: 584px;
      pointer-events: none;
      position: absolute;
      left: 50%;
      top: 50%;
      transform: translate(-50%, -50%);
    }
    .pc-menu__inner-ttl{
      font-weight: bold;
      display: block;
      color: #fff;
      background: url("../images/bg_menuttl.svg") calc(50% - 10px) center no-repeat;
      font-size: 2.4rem;
      line-height: 4.1rem;
      width: 100%;
      position: absolute;
      left: 50%;
      top: 0;
      transform: translate(-50%, -50%);
    }
    .pc-menu__list{
      .pc-menu__list__item{
        font-size: 2.4rem;
        font-weight: bold;
        &:not(:first-of-type){
          margin-top: 2.4rem;
        }
        a{
          display: block;
          color: var(--color-base);
          transition-property: color;
          transition: 0.2s linear;
          &:hover{
            color: var(--color-purple);
          }
          span{
            display: block;
            font-size: 1rem;
          }
        }
      }
    }
  }
}
@media screen and (max-width: 1200px){
  .pc-menu__area{
    width: 80px;
    padding: 0;
    .pc-menu__inner{display: none;}
  }
}
@media screen and (max-width: 1000px){
  .pc-menu__area{
    width: 0;
  }
}
@media screen and (max-width: 767px){
  .pc-menu__area{display: none !important;}
}
/* ========================================================
.main__content
======================================================== */
.main__content{
  width: 390px;
  margin: 0 auto;
  transition-property: margin;
  transition: 0.2s linear;
    overflow-x: hidden;
  .content__inner{
    margin: 0 2.4rem;
    font-size: 1.6rem;
  }
}
@media screen and (max-width: 1200px){
  .main__content{
    margin: 0 80px 0 auto;
  }
}
@media screen and (max-width: 1000px){
  .main__content{
    margin: 0 0 0 auto;
  }
}
@media screen and (max-width: 767px){
  .main__content{
    width: 100%;
  }
}
/* .content__wave
----------------------- */
.content__wave{
  position: relative;
  font-size: 0;
  svg{
    width: 100%;
    aspect-ratio: 390 / 36;
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 5;
  }
}
/* .content__ttl
----------------------- */
.content__ttl-wrap{
  padding-top: 6.2rem;
  padding-bottom: 4.8rem;
  position: relative;
  z-index: 2;
  .content__ttl-bg{
    opacity:.9;filter: alpha(opacity=90);-ms-filter: "alpha(opacity=90)";
    font-size: 0;
    fill:#fff;
    position: absolute;
    left: 50%;
    top: calc(50% + 3.1rem - 2.4rem);
    transform: translate(-50%, -50%);
    z-index: -1;
    width: 17.8rem;
    aspect-ratio: 178 / 143;
  }
  .content__ttl-main{
    font-size: 4.2rem;
  }
  .font-en{
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 1.4;
  }
}
/* .content__subttl
----------------------- */
.content__subttl-wrap{
  .content__subttl-main{
    font-size: 2.4rem;
  }
  .content__subttl-border{
    width: 2.3rem;
    height: 0.3rem;
    display: block;
    margin: 0 auto;
    font-size: 0;
  }
}
/* ========================================================
.header__area
======================================================== */
.header__area{
  position: fixed;
  right: calc(50% - 195px);
  top: 0;
  z-index: 200;
  display: inline-block;
  transition-property: right;
  transition: 0.2s linear;
  .header__inner{
    background-color: #fff;
    box-shadow: 0 0px 16px rgba(53,49,143,0.1);
    width: 390px;
    height: 56px;
    display:flex;
    justify-content: center;
    align-items: center;
    .header__logo{
      width: 77px;
    }
  }
}
@media screen and (max-width: 1200px){
  .header__area{
    right: 80px;
  }
}
@media screen and (max-width: 1000px){
  .header__area{
    right: 0;
  }
}
@media screen and (max-width: 767px){
  .header__area{
    left: 0;
    .header__inner{
      width: 100%;
      height: 14.35vw;
    }
  }
}
/*  .sp-menu__bt
----------------------- */
.sp-menu__bt{
  position: absolute;
  right: 1.6rem;
  top: 0.8rem;
}
.sp-menu__bt .sp-menu__trigger,
.sp-menu__bt .sp-menu__trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.sp-menu__bt .sp-menu__trigger {
  position: relative;
  width: 4rem;
  height: 4rem;
  text-decoration: none;
  text-align: left;
}
.sp-menu__bt .sp-menu__trigger span {
  position: absolute;
  right: 0.4rem;
  width: 3.2rem;
  height: 0.2rem;
  background-color: var(--color-base);
}
.sp-menu__bt .sp-menu__trigger span:nth-of-type(1) { top: 1.4rem;}
.sp-menu__bt .sp-menu__trigger span:nth-of-type(2) { bottom: 1.4rem;}
.sp-menu__bt.active .sp-menu__trigger span:nth-of-type(1) {
  transform: translateY(0.5rem) rotate(-30deg);
}
.sp-menu__bt.active .sp-menu__trigger span:nth-of-type(2) {
  transform: translateY(-0.5rem) rotate(30deg);
}
/* .g-navi
----------------------- */
.g-navi{
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100vh;
  max-height: 100vh;
  overflow-y: auto;
  background: url("../images/bg_gnavi.png") center top no-repeat;
  -moz-background-size: 100% auto;
  background-size: 100% auto;
  opacity:0;
  top: 0;
  right: 0;
  .g-navi__wrapper{
    padding: 7rem 2.4rem 3.6rem;
  }
  .g-navi__ttl{
    width: 26.5rem;
    margin: 0 auto;
  }
  .g-navi__inner{
    padding: 5.6rem 2.4rem;
    border-radius: 2.4rem;
    background-color: #fff;
    margin: 4rem auto 0;
    width: 100%;
    &::after{
      content: "";
      display: block;
      background: url("../images/pop_menu-sp.png") center bottom no-repeat;
      -moz-background-size: 100% auto;
      background-size: 100% auto;
      width: 100%;
      height: 100vh;
      pointer-events: none;
      position: absolute;
      left: 0;
      bottom: 0;
    }
    .g-navi__inner-ttl{
      font-weight: bold;
      display: block;
      color: #fff;
      background: url("../images/bg_menuttl.svg") calc(50% - 10px) center no-repeat;
      font-size: 2.4rem;
      line-height: 4.1rem;
      width: 100%;
      position: absolute;
      left: 50%;
      top: 14.2rem;
      transform: translate(-50%, 0);
    }
    .g-navi__list{
      .g-navi__list__item{
        font-size: 2.4rem;
        font-weight: bold;
        &:not(:first-of-type){
          margin-top: 2.4rem;
        }
        a{
          display: block;
          color: var(--color-base);
          transition-property: color;
          transition: 0.2s linear;
          &:hover{
            color: var(--color-purple);
          }
          span{
            display: block;
            font-size: 1rem;
          }
        }
      }
    }
  }
}

/* ========================================================
.mv__area
======================================================== */
.mv__area{
  position: relative;
  a{
    padding: 0.25em 3em;
    line-height: 1.2;
    .bt-color__arrow{
      right: 1em;
      width: 1em;
      height: 1em;
      top: calc(50% - 0.5em);
    }
  }
  .mv__bt-venue{
    position: absolute;
    width: 100%;
    bottom: 3.3rem;
    left: 50%;
    transform: translate(-50%, 0);
  }
  .mv__bt-parking{
    a{
      font-size: 1.4rem;
    }
    position: absolute;
    width: 100%;
    bottom: 0.6rem;
    left: 50%;
    transform: translate(-50%, 0);
  }
}
/* ========================================================
.message__area
======================================================== */
.message__area{
  padding: 9.6rem 0 13.2rem;
  .message__logo{
    width: 14rem;
    margin: 0 auto;
  }
  .message__ttl{
    font-size: 1.8rem;
    margin-top: 3.2rem;
  }
  .message__note{
    margin-top: 2.4rem;
    font-weight: 400;
    p:not(:first-of-type){
      margin-top: 1em;
    }
  }
  .message__whatis{
    background-color: var(--color-gray);
    border-radius: 0.75em;
    padding: 3.2rem 2.4rem;
    margin-top: 6.4rem;
    .content__subttl-border svg{
      fill:var(--color-green);
    }
    .messaget__whatis-image{
      margin: 1.6rem auto 0;
      width: 21.4rem;
    }
    .message__whatis-txt{
      margin-top: 1.6rem;
      text-align: left;
    }
    .bt-color{
      margin-top: 1.6rem;
      a{
        width: 100%;
      }
    }
  }
}
/* ========================================================
.program__area
======================================================== */
.program__area{
  background-color: #FDD23E;
  > .content__wave svg{
    fill: #FDD23E;
  }
}
.program__content{
  position: relative;
  z-index: 3;
  &:nth-of-type(2n-1) .program__content-inner,&:nth-of-type(2n-1) .program__headline::before{
    background-color: #FFFEDA;
  }
  &:nth-of-type(2n) .program__content-inner,&:nth-of-type(2n) .program__headline::before{
    background-color: #FFF3C2;
  }
  &:nth-of-type(2n-1) .program__headline{
    text-align: right;
  }
  &:nth-of-type(2n) .program__headline{
    text-align: left;
  }
  &:nth-of-type(2n-1) .program__headline::before{
    transform: rotate(-9deg);
  }
  &:nth-of-type(2n) .program__headline::before{
    transform: rotate(9deg);
  }
  .program__headline{
    padding-bottom: 2rem;
    margin-top: -3rem;
    position: relative;
    z-index: 1;
    &::before{
      content: "";
      display: block;
      position: absolute;
      z-index: -1;
      width: 150%;
      height: 150%;
      left: -25%;
    }
    .program__headline-number{
      color: var(--color-yellow);
      font-size: 11.4rem;
      line-height: 0.8;
      padding: 0 0.2em;
      letter-spacing: 0;
    }
    .program__headline-image{
      position: absolute;
    }
  }
  &.program__content-01 .program__headline{
    margin-top: 3rem;
  }
  &.program__content-01 .program__headline .program__headline-image{
    width: 17.9rem;
    left: 0;
    bottom: 0;
  }
  &.program__content-02 .program__headline .program__headline-image{
    width: 13.6rem;
    right: 2rem;
    top: -3rem;
  }
  &.program__content-03 .program__headline .program__headline-image{
    width: 11.8rem;
    left: 0;
    bottom: 0;
  }
  &.program__content-04 .program__headline .program__headline-image{
    width: 9.7rem;
    right: 2rem;
    bottom: 2.3rem;
  }
  .program__content-inner{
    position: relative;
    z-index: 2;
    padding: 0 2.4rem 14rem;
    text-align: left;
    .program__ttl{
      font-size: 3.1rem;
      &.font-en{
        letter-spacing: 0;
      }
      &.small{
        font-size: 1.8rem;
        line-height: 1.6;
        margin-top: 2.6rem;
      }
      &.small:first-child{
        margin-top: 0;
      }
      + .program__ttl.small{
        font-size: 2rem;
        line-height: 1.6;
        margin-top: 0;
      }
    }
    .program__time {
      font-size: 1.8rem;
      text-align: right;
      margin-top: -1.7em;
      &.normal{
        margin-top: 0.5rem;
      }
    }
    .program__lead{
      font-size: 1.6rem;
      margin-top: 1.6rem;
    }
  }
  &.program__content-03 .program__content-inner .program__ttl{font-size: 3rem;}
  &.program__content-03 .program__content-inner .program__time{text-align: left;}
  &.program__content-04 .program__content-inner .program__time{text-align: left;}
  .program__shoetime__member{
    padding: 4rem 1.6rem;
    background-color: #FFF2BE;
    margin-top: 4rem;
    border-radius: 1.6rem;
    .content__subttl-main{
      text-align: center;
    }
    .content__subttl-border{
      fill:#EC7AA1;
    }
    .program__shoetime__member-list{
      text-align: center;
      .program__shoetime__member-item{
        position: relative;
        &.program__shoetime__member-item-01{margin-top: 9.6rem;}
        &.program__shoetime__member-item-02{margin-top: 3.2rem;}
        &.program__shoetime__member-item-03{margin-top: 5.7rem;}
        &.program__shoetime__member-item-04{margin-top: 9.3rem;}
        .program__shoetime__member-pop{
          position: absolute;
          z-index: 1;
          line-height: 0;
          opacity:0.5;filter: alpha(opacity=50);-ms-filter: "alpha(opacity=50)";
        }
        &.program__shoetime__member-item-01 .program__shoetime__member-pop{
          width: 17rem;
          right: -1rem;
          top: -11.6rem;
        }
        &.program__shoetime__member-item-02 .program__shoetime__member-pop{
          width: 20.9rem;
          left: -1.6rem;
          top: -10.6rem;
        }
        &.program__shoetime__member-item-03 .program__shoetime__member-pop{
          width: 9.6rem;
          right: 2.4rem;
          top: -6.4rem;
        }
        &.program__shoetime__member-item-04 .program__shoetime__member-pop{
          width: 22rem;
          right: 1.8rem;
          top: -10.8rem;
        }
        .program__shoetime__member-inner{
          padding: 2.4rem  2rem;
          border-radius: 0.8rem;
          background-color: #fff;
          position: relative;
          z-index: 2;
        }
        .program__shoetime__member-photo{
          position: absolute;
        }
        &.program__shoetime__member-item-01 .program__shoetime__member-photo{
          width: 9.8rem;
          left: 2rem;
          top: -6rem;
        }
        &.program__shoetime__member-item-02 .program__shoetime__member-photo{
          width: 10rem;
          right: 2rem;
          top: -1.2rem;
        }
        &.program__shoetime__member-item-03 .program__shoetime__member-photo{
          width: 13rem;
          left: 2rem;
          top: -4rem;
        }
        &.program__shoetime__member-item-04 .program__shoetime__member-photo{
          width: 9.8rem;
          left: 2rem;
          top: -8rem;
        }
        .program__shoetime__member__headline{
          font-size: 2.2rem;
          .program__shoetime__member__headline-inner{
            display: inline-block;
            margin: auto;
            line-height: 1.4;
          }
          .font-en{
            font-size: 1.2rem;
            display: block;
            font-weight: normal;
          }
        }
        &.program__shoetime__member-item-01 .program__shoetime__member__headline{
          text-align: right;
          .program__shoetime__member__headline-inner{
            text-align: left;
          }
        }
        &.program__shoetime__member-item-02 .program__shoetime__member__headline{
          text-align: left;
          .program__shoetime__member__headline-inner{
            text-align: left;
          }
        }
        &.program__shoetime__member-item-03 .program__shoetime__member__headline{
          text-align: right;
          padding-top: 0.5rem;
          .program__shoetime__member__headline-inner{
            text-align: right;
          }
        }
        &.program__shoetime__member-item-04 .program__shoetime__member__headline{
          text-align: right;
          .program__shoetime__member__headline-inner{
            text-align: left;
          }
        }
        .program__shoetime__member-body{
          margin-top: 1.2rem;
          font-size: 1.4rem;
          text-align: left;
        }
      }
    }
  }
  .program__shoetime__about{
    margin-top: 4rem;
    padding: 2.6rem;
    background-color: #fff;
    border-radius: 1.6rem;
    font-size: 1.6rem;
    .program__shoetime__about__headline{
      text-align: center;
      .program__shoetime__about__headline-deco{
        vertical-align: middle;
        display: inline-block;
        width: 1.9rem;
        height: 1.9rem;
        fill:var(--color-base);
      }
      .program__shoetime__about__headline-main{
        vertical-align: middle;
        display: inline-block;
        font-size: 1.8rem;
        margin: 0 0.6rem;
      }
    }
    .program__shoetime__about__body{
      margin-top: 0.4rem;
      dt{
        margin-top: 1.6rem;
      }
      dd{
        margin-top: 1rem;
      }
    }
    .bt-color{
      margin-top: 1.6rem;
      a{
        width: 100%;
      }
    }
  }
  .program__banjyo__whatis{
    background-color: #FFFEE4;
    border-radius: 0.75em;
    padding: 3.2rem 2rem;
    margin-top: 6.4rem;
    .content__subttl-wrap{
      text-align: center;
    }
    .content__subttl-border svg{
      fill:var(--color-purple);
    }
    .program__banjyo__whatis-image{
      margin: 2rem auto 0;
    }
    .program__banjyo__whatis-txt{
      margin-top: 1rem;
      font-size: 1.6rem;
      text-align: left;
    }
    .program__banjyo__whatis-borderttl{
      margin-top: 2rem;
      font-size: 1.6rem;
      border-left:solid 0.2rem var(--color-base);
      padding-left: 1rem;
    }
    .bt-border{
      display:flex;
      -ms-flex-pack:distribute;
      justify-content:space-between;
      flex-wrap: wrap;
    }
    .bt-border a{
      font-size: 1.4rem;
    }
  }
  .program__banjyo__member-list{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 4rem;
    gap: 2rem 2.2rem;
    .program__banjyo__member-item{
      width: calc(50% - 1.1rem);
      text-align: center;
      .program__banjyo__member-nickname{
        font-size: 1.4rem;
        color: #fff;
        background-color: var(--color-base);
        padding: 0 0.5rem;
        display: inline-block;
        margin: 1rem auto 0;
      }
      .program__banjyo__member-name{
        font-size: 2.2rem;
        font-weight: blod;
        margin-top: 1rem;
        .font-en{
          font-weight: normal;
          font-size: 1.4rem;
          display: block;
          line-height: 1;
        }
      }
      .program__banjyo__member-sns{
        margin-top: 0.8rem;
        display: flex;
        justify-content: center;
        gap: 0.8rem;
        a{
          display: block;
          background-color: #fff;
          border: solid 1px #DFE0FF;
          width: 4.4rem;
          height: 4.4rem;
          border-radius: 9999px;
          padding: 0.6rem;
        }
      }
    }
  }
  .program__car__image{
    margin: 2.4rem -2.4rem 0;
  }
  .program__moderator{
    margin-top: 4rem;
    padding: 3.2rem 1.6rem;
    background-color: #fff;
    border-radius: 1.6rem;
    .content__subttl-wrap{
      text-align: center;
      .content__subttl-border svg{
        fill:#EC7AA1;
      }
    }
    .program__moderator-inner{
      margin-top: 2.4rem;
      display:flex;
      -ms-flex-pack:distribute;
      justify-content:space-between;
      flex-wrap: wrap;
      .program__moderator-image{
        width: 14rem;
      }
      .program__moderator-txt{
        width: 15.4rem;
        display:flex;
        -ms-flex-pack:distribute;
        justify-content:space-between;
        flex-direction: column;
        flex-wrap: wrap;
        .program__moderator-lead{
          font-size: 1.6rem;
        }
        .program__moderator-name{
          margin-top: auto;
          font-size: 2.2rem;
          font-weight: bold;
          .font-en{
            font-weight: normal;
            font-size: 1.4rem;
            line-height: 1;
            display: block;
          }
        }
      }
    }
  }
  .program__present__lead{
    margin-top: 2.4rem;
    text-align: center;
    font-size: 2rem;
    color: #fff;
    background-color: var(--color-red);
  }
}
/* ========================================================
.shoplist__area
======================================================== */
.shoplist__area{
  background-color: #FFD2E9;
  padding-bottom: 17rem;
  > .content__wave svg{
    fill: #FFD2E9;
  }
  .shoplist__headline{
    .txt-time{
      margin-top: 1em;
      font-size: 1.8rem;
    }
  }
  .shoplist__subttl-wrap{
    margin-top: 4.8rem;
    .shoplist__subttl-deco{
      vertical-align: middle;
      display: inline-block;
      margin-top: 1.6rem;
      width: 4rem;
      height: 4rem;
    }
    .shoplist__subttl-inner{
      vertical-align: middle;
      display: inline-block;
      margin: 0 1.8rem;
      .shoplist__subttl-ic{
        display: block;
        margin: 0 auto;
        width: 3.2rem;
        height: 3.2rem;
      }
      .shoplist__subttl-main{
        font-size: 2rem;
      }
    }
    &.shoplist__category-eat svg {fill: var(--color-red);}
    &.shoplist__category-item svg {fill: var(--color-orange-light);}
    &.shoplist__category-game svg {fill: var(--color-purple);}
    &.shoplist__category-workshop svg {fill: var(--color-green);}
  }
  .shoplist__list{
    display: flex;
    margin-top: 3.2rem;
    justify-content: center;
    flex-wrap: wrap;
    position: relative;
      z-index: 1;
    gap: 1.4rem;
    .shoplist__list__item{
      position: relative;
      z-index: 2;
      width: calc(50% - 0.7rem);
      .shoplist__list__item-inner{
        background-color: #fff;
        padding: 1.6rem;
        text-align: left;
        border-radius: 1.6rem;
        overflow: hidden;
        .shoplist__list__item-number{
          position: absolute;
          text-align: center;
          left: 0;
          top: 0;
          font-weight: bold;
          width: 2em;
          height: 2em;
          line-height: 2em;
          border-radius: 1.6rem 0 0.8rem 0;
          color: #fff;
          background-color: var(--color-base);
        }
        .shoplist__list__item-name{
          font-size: 1.4rem;
          margin-top: 0.8rem;
        }
        .shoplist__list__item__tag{
          display: inline-block;
          font-size: 1.2rem;
          margin-top: 0.6rem;
          padding-left: 2.8rem;
          position: relative;
          .shoplist__list__item-tag__ic{
            position: absolute;
            left: 0;
            top: 0;
            width: 2rem;
            height: 2rem;
            border-radius: 0.44rem;
            svg{
              fill:#fff;
            }
          }
        }
      }
      .shoplist__list__item__symbol{
        display: block;
        position: absolute;
        z-index: -1;
        line-height: 0;
      }
    }
    &.shoplist__category-eat .shoplist__list__item-tag__ic{background-color: var(--color-red);}
    &.shoplist__category-item .shoplist__list__item-tag__ic{background-color: var(--color-orange-light);}
    &.shoplist__category-game .shoplist__list__item-tag__ic{background-color: var(--color-purple);}
    &.shoplist__category-workshop .shoplist__list__item-tag__ic{background-color: var(--color-green);}
    &.shoplist__category-eat .shoplist__list__item__symbol{
      width: 14rem;
      top: 7rem;
      left: -12rem;
    }
    &.shoplist__category-game .shoplist__list__item__symbol{
      width: 25rem;
      bottom: -1.5rem;
      right: -26rem;
    }
    &.shoplist__category-workshop .shoplist__list__item__symbol{
      width: 27.2rem;
      top: 7rem;
      left: -12rem;
    }
  }
}
/* ========================================================
.outline__area
======================================================== */
.outline__area{
  background-color: #F6F5F0;
  padding-bottom: 13.2rem;
  position: relative;
  > .content__wave svg{
    fill: #F6F5F0;
  }
  .content__ttl-wrap{
    text-align: left;
    .content__ttl-bg{
      left: -2rem;
      transform: translate(0, -50%);
    }
  }
  .outline__illust{
    position: absolute;
    width: 23.5rem;
    right: -1.3rem;
    top: -18.3rem;
    z-index: 5;
  }
  .outline__logo {
    width: 32.5rem;
  }
  .outline__schedule{
    margin-top: 4rem;
    padding: 2.4rem;
    background-color: #fff;
    border-radius: 1.6rem;
    .outline__schedule-headline{
      .outline__schedule-headline-deco{
        vertical-align: middle;
        display: inline-block;
        width: 1.9rem;
        height: 1.9rem;
        fill:var(--color-base);
      }
      .outline__schedule-ttl{
        font-size: 1.8rem;
        display: inline-block;
        vertical-align: middle;
        margin: 0 0.6rem;
      }
    }
    .outline__schedule__timeline{
      text-align: left;
      .outline__schedule__timeline-item{
        display:flex;
        -ms-flex-pack:distribute;
        justify-content:flex-start;
        align-items: flex-start;
        margin-top: 2.4rem;
        flex-direction: row;
      }
      .outline__schedule__timeline-txt{
        padding-left: 1rem;
        p + p{
          margin-top: 0.5rem;
        }
        .outline__schedule__timeline-caption{
          display: inline-block;
          background-color: #EFEEFF;
          font-size: 1.2rem;
          line-height: 1.4;
          padding: 0.6rem;
          position: relative;
          margin-top: 0.5rem;
          &::after{
            content: "";
            height: 0.6rem;
            width: 1rem;
            background-color: #EFEEFF;
            clip-path: polygon( 0 100%, 100% 100%, 50% 0);
            position: absolute;
            top: -0.6rem;
            left: 1.8rem;
          }
        }
      }
    }
  }
}
/* ========================================================
.sponsor__area
======================================================== */
.sponsor__area{
  background-color: #fff;
  padding-bottom: 13.2rem;
  > .content__wave svg{
    fill: #fff;
  }
  .content__ttl-wrap{
    .content__ttl-bg{
      opacity:1;filter: alpha(opacity=100);-ms-filter: "alpha(opacity=100)";
      fill:#E7E8ED;
    }
  }
  .sponsor__list-bnr{
    margin-top: 4rem;
    .sponsor__list-item{
      margin-top: 3.2rem;
    }
  }
  .sponsor__list-txt{
    margin-top: 4rem;
    .sponsor__list-item{
      margin-top: 1.2rem;
    }
  }
}
/* ========================================================
.local__area
======================================================== */
.local__area{
  background-color: #FFFEE4;
  padding-bottom: 13.2rem;
  > .content__wave svg{
    fill: #FFFEE4;
  }
  .content__ttl-wrap{
    .content__ttl-bg{
      opacity:1;filter: alpha(opacity=100);-ms-filter: "alpha(opacity=100)";
      fill:#FFEDAE;
    }
  }
  .local__soon{
    &::before,&::after{
      content: "";
      display: inline-block;
      vertical-align: middle;
      margin: 0.8rem;
      width: 1.2rem;
      height: 1.9rem;
      background: url("../images/pop_local_soon.svg") no-repeat;
      -moz-background-size: 100% auto;
      background-size: 100% auto;
    }
    &::after{
      transform: scale(-1, 1);
    }
    + .font-en{
      font-size: 2.6rem;
      font-weight: bold;
    }
  }
}
/* ========================================================
.footer__area
======================================================== */
.footer__area{
  background-color: #fff;
  > .content__wave svg{
    fill: #fff;
  }
  .footer__logo{
    padding-top: 7.2rem;
    margin: 0 auto;
    width: 30.2rem;
  }
  .footer__copy{
    color: #fff;
    background-color: var(--color-base);
    font-size: 1.4rem;
    padding: 2rem;
    margin-top: 7.2rem;
    font-weight: normal;
  }
}