@charset "UTF-8";
body {
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif; }

#container {
  background-image: url("../images/back-wrap.jpg");
  background-size: 100% auto; }

#contents {
  width: 100%;
  margin: 0 auto;
  background-image: url("../images/back-contents.jpg");
  background-size: 100% auto; }
  @media screen and (min-width: 768px) {
    #contents {
      width: 1024px;
      box-shadow: 0px 0px 50px 25px rgba(0, 0, 0, 0.3); } }

.particle-wrap {
  background-image: url("../images/back-particle.png");
  background-size: 100% auto; }

#top .catch {
  position: relative;
  overflow: hidden;
  padding-bottom: 112px; }
  @media screen and (min-width: 768px) {
    #top .catch {
      padding-bottom: 0; } }
#top .square-pc {
  display: none;
  width: 100%; }
  @media screen and (min-width: 768px) {
    #top .square-pc {
      display: block; } }
#top .square-sp {
  display: block;
  width: 100%; }
  @media screen and (min-width: 768px) {
    #top .square-sp {
      display: none; } }
#top .date {
  position: absolute;
  top: 32px;
  left: 5%;
  width: 130px; }
  @media screen and (min-width: 768px) {
    #top .date {
      top: 40px;
      left: 32px;
      width: 267px; } }
#top .chara {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding-top: 32px; }
  @media screen and (min-width: 768px) {
    #top .chara {
      padding-top: 0; } }
#top .logo {
  position: absolute;
  bottom: 32px;
  right: 50%;
  width: 80%;
  transform: translateX(50%); }
  @media screen and (min-width: 768px) {
    #top .logo {
      bottom: 0px;
      right: 16px;
      width: 409px;
      transform: translateX(0%); } }
  #top .logo img {
    width: 100%; }
#top .news-smartphone {
  display: flex;
  align-items: center;
  margin-bottom: 32px; }
  @media screen and (min-width: 768px) {
    #top .news-smartphone {
      display: none; } }
  #top .news-smartphone h2 {
    width: 15%;
    padding: 0 2%; }
    #top .news-smartphone h2 img {
      width: 100%; }
  #top .news-smartphone ul {
    width: 85%;
    padding: 24px 16px;
    background-color: #ffffff; }
    #top .news-smartphone ul li {
      padding-left: 80.84px;
      padding-bottom: 10px;
      font-size: 12px;
      text-indent: -80.84px;
      line-height: 1.5em;
      border-bottom: 1px solid #000; }
      #top .news-smartphone ul li:not(:last-child) {
        margin-bottom: 10px; }
      #top .news-smartphone ul li a {
        color: #FF61EE; }
      #top .news-smartphone ul li span {
        padding-right: 1em; }

#news {
  display: none;
  padding-top: 48px; }
  @media screen and (min-width: 768px) {
    #news {
      display: flex;
      align-items: center;
      width: 924px;
      margin-left: auto;
      margin-bottom: 64px; } }
  #news h2 {
    width: 72px;
    padding-right: 16px; }
    #news h2 img {
      width: 100%; }
  #news ul {
    width: calc(100% - 72px);
    padding: 40px;
    background-color: #ffffff; }
    #news ul li {
      padding-left: 107.78px;
      padding-bottom: 10px;
      font-size: 24px;
      text-indent: -107.78px;
      line-height: 1.5em;
      border-bottom: 1px solid #000; }
      #news ul li:not(:last-child) {
        margin-bottom: 10px; }
      #news ul li a {
        color: #FF61EE; }
      #news ul li span {
        padding-right: 1em; }

#overview {
  margin-bottom: 20px; }
  @media screen and (min-width: 768px) {
    #overview {
      margin-bottom: 120px; } }
  #overview h2 {
    width: 90%;
    margin: 0 auto 28px; }
    @media screen and (min-width: 768px) {
      #overview h2 {
        width: 820px;
        margin: 0 auto 56px; } }
    #overview h2 img {
      width: 100%; }
  #overview .text {
    width: 85%;
    padding: 30px 5%;
    background-color: #ffffff; }
    @media screen and (min-width: 768px) {
      #overview .text {
        width: calc(100% - 72px);
        padding: 40px 40px 40px 116px; } }
    #overview .text p {
      font-size: 12px;
      line-height: 1.5em; }
      @media screen and (min-width: 768px) {
        #overview .text p {
          font-size: 24px; } }
      #overview .text p.pc-none {
        display: block; }
        @media screen and (min-width: 768px) {
          #overview .text p.pc-none {
            display: none; } }
      #overview .text p.sp-none {
        display: none; }
        @media screen and (min-width: 768px) {
          #overview .text p.sp-none {
            display: block; } }

#timetable-pc {
  position: relative;
  display: none; }
  @media screen and (min-width: 768px) {
    #timetable-pc {
      display: block; } }
  #timetable-pc h2 {
    width: 100%; }
    #timetable-pc h2 img {
      width: 100%; }
  #timetable-pc ul {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 524px; }
    #timetable-pc ul li {
      width: 950px; }
      #timetable-pc ul li:not(:last-child) {
        margin-bottom: 48px; }
      #timetable-pc ul li.right-justified {
        margin-left: auto; }
    #timetable-pc ul img {
      width: 100%; }

#timetable-sp {
  position: relative;
  display: block; }
  @media screen and (min-width: 768px) {
    #timetable-sp {
      display: none; } }
  #timetable-sp h2 {
    width: 100%; }
    #timetable-sp h2 img {
      width: 100%; }
  #timetable-sp ul {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    padding-top: 60vw; }
    #timetable-sp ul li {
      width: 85%;
      margin: 0 auto; }
      #timetable-sp ul li:not(:last-child) {
        margin-bottom: 25px; }
    #timetable-sp ul img {
      width: 100%; }

#goods {
  width: 85%;
  padding: 48px 0 32px;
  margin: 0 auto; }
  @media screen and (min-width: 768px) {
    #goods {
      width: 840px;
      padding: 120px 0 134px; } }
  #goods h2 {
    width: 90px;
    margin: 0 auto 24px; }
    @media screen and (min-width: 768px) {
      #goods h2 {
        width: 180px;
        margin: 0 auto 50px; } }
    #goods h2 img {
      width: 100%; }
  #goods ul {
    display: flex;
    flex-wrap: wrap; }
    #goods ul li {
      width: 100%;
      margin: 0 0 12px; }
      @media screen and (min-width: 768px) {
        #goods ul li {
          width: calc(50% - 12px);
          margin: 6px; } }
      #goods ul li img {
        width: 100%; }
  #goods p {
    margin-top: 16px;
    font-size: 14px;
    font-weight: bold;
    line-height: 1.5em; }

#movie {
  padding-bottom: 40px; }
  @media screen and (min-width: 768px) {
    #movie {
      padding-bottom: 190px; } }
  #movie h2 {
    width: 90px;
    margin: 0 auto 24px; }
    @media screen and (min-width: 768px) {
      #movie h2 {
        width: 170px;
        margin: 0 auto 50px; } }
    #movie h2 img {
      width: 100%; }
  #movie .inner {
    background-color: #000; }
  #movie .contents-layout {
    width: 90%;
    margin: 0 auto; }
    @media screen and (min-width: 768px) {
      #movie .contents-layout {
        width: 830px; } }
  #movie .iframe-layout {
    position: relative;
    width: 100%;
    height: 0;
    padding-bottom: 56.25%;
    /*アスペクト比 16:9の場合の縦幅*/
    overflow: hidden; }
  #movie iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important; }

#contact {
  padding-top: 40px;
  padding-bottom: 40px;
  margin-top: -40px;
  font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO"; }
  @media screen and (min-width: 768px) {
    #contact {
      padding-bottom: 190px; } }
  #contact h2 {
    width: 130px;
    margin: 0 auto 24px; }
    @media screen and (min-width: 768px) {
      #contact h2 {
        width: 255px;
        margin: 0 auto 50px; } }
    #contact h2 img {
      width: 100%; }
  #contact .about {
    width: 85%;
    padding: 30px;
    margin: 0 auto;
    background-color: #fff; }
    @media screen and (min-width: 768px) {
      #contact .about {
        width: 820px;
        padding: 60px 50px; } }
    #contact .about .about-text {
      margin-bottom: 25px; }
      @media screen and (min-width: 768px) {
        #contact .about .about-text {
          margin-bottom: 40px; } }
      #contact .about .about-text h3 {
        width: 60%;
        margin: 0 auto 20px; }
        @media screen and (min-width: 768px) {
          #contact .about .about-text h3 {
            width: 330px;
            margin: 0 auto 30px; } }
        #contact .about .about-text h3 img {
          width: 100%; }
      #contact .about .about-text p {
        font-size: 15px;
        font-weight: bold;
        text-align: center;
        line-height: 1.5em; }
        @media screen and (min-width: 768px) {
          #contact .about .about-text p {
            font-size: 18px; } }
        #contact .about .about-text p.small {
          font-size: 10px; }
          @media screen and (min-width: 768px) {
            #contact .about .about-text p.small {
              font-size: 14px; } }
      #contact .about .about-text .block {
        margin-bottom: 8px; }
        #contact .about .about-text .block.text-pc {
          display: none; }
          @media screen and (min-width: 768px) {
            #contact .about .about-text .block.text-pc {
              display: block; } }
          @media screen and (min-width: 768px) {
            #contact .about .about-text .block.text-pc p {
              margin-bottom: 8px; } }
        #contact .about .about-text .block.text-sp {
          display: block; }
          @media screen and (min-width: 768px) {
            #contact .about .about-text .block.text-sp {
              display: none; } }
    #contact .about .date {
      margin-bottom: 25px; }
      @media screen and (min-width: 768px) {
        #contact .about .date {
          margin-bottom: 40px; } }
      #contact .about .date h4 {
        margin-bottom: 15px;
        color: #ff82cf;
        font-size: 15px;
        font-weight: bold;
        text-align: center;
        letter-spacing: 1px; }
        @media screen and (min-width: 768px) {
          #contact .about .date h4 {
            font-size: 24px; } }
      #contact .about .date p {
        text-align: center; }
        #contact .about .date p img {
          width: 100%; }
          #contact .about .date p img.date-pc {
            display: none; }
            @media screen and (min-width: 768px) {
              #contact .about .date p img.date-pc {
                display: block; } }
          #contact .about .date p img.date-sp {
            display: block; }
            @media screen and (min-width: 768px) {
              #contact .about .date p img.date-sp {
                display: none; } }
    #contact .about .address h4 {
      margin-bottom: 15px;
      color: #ff82cf;
      font-size: 15px;
      font-weight: bold;
      text-align: center;
      letter-spacing: 1px; }
      @media screen and (min-width: 768px) {
        #contact .about .address h4 {
          font-size: 24px; } }
    #contact .about .address .address-area {
      padding: 15px;
      border: 2px solid #000;
      border-radius: 5px; }
      @media screen and (min-width: 768px) {
        #contact .about .address .address-area {
          padding: 30px; } }
      #contact .about .address .address-area div {
        margin-bottom: 16px; }
        @media screen and (min-width: 768px) {
          #contact .about .address .address-area div {
            margin-bottom: 8px; } }
      #contact .about .address .address-area p {
        color: #ff82cf;
        font-size: 18px;
        font-weight: bold;
        line-height: 1.5em;
        letter-spacing: 1px; }
        @media screen and (min-width: 768px) {
          #contact .about .address .address-area p {
            font-size: 24px; } }
        #contact .about .address .address-area p.small {
          color: #000;
          font-size: 10px; }
          @media screen and (min-width: 768px) {
            #contact .about .address .address-area p.small {
              font-size: 14px; } }
  #contact .caution {
    width: 85%;
    padding: 20px;
    margin: 0 auto;
    background-color: rgba(0, 0, 0, 0.5); }
    @media screen and (min-width: 768px) {
      #contact .caution {
        width: 820px;
        padding: 60px 50px; } }
    #contact .caution section:not(:last-child) {
      margin-bottom: 30px; }
      @media screen and (min-width: 768px) {
        #contact .caution section:not(:last-child) {
          margin-bottom: 40px; } }
    #contact .caution section h3 {
      margin-bottom: 20px;
      color: #ff82cf;
      font-size: 15px;
      font-weight: bold;
      text-align: center;
      letter-spacing: 1px; }
      @media screen and (min-width: 768px) {
        #contact .caution section h3 {
          font-size: 24px; } }
    #contact .caution section ul li {
      padding-left: 1em;
      color: #fff;
      font-size: 12px;
      font-weight: bold;
      text-indent: -1em;
      line-height: 1.5em; }
      @media screen and (min-width: 768px) {
        #contact .caution section ul li {
          font-size: 16px; } }
      #contact .caution section ul li:not(:last-child) {
        margin-bottom: 8px; }
        @media screen and (min-width: 768px) {
          #contact .caution section ul li:not(:last-child) {
            margin-bottom: 15px; } }

#buy-tickets-and-goods {
  height: 54.44px; }
  @media screen and (min-width: 768px) {
    #buy-tickets-and-goods {
      height: 66.3px; } }
  #buy-tickets-and-goods .contents-layout {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 18px 0;
    text-align: center;
    background-color: #261f07; }
    #buy-tickets-and-goods .contents-layout.relative {
      position: relative; }
  #buy-tickets-and-goods img {
    width: 280px; }
    @media screen and (min-width: 768px) {
      #buy-tickets-and-goods img {
        width: 460px; } }

#footer {
  min-width: auto;
  padding: 32px 0;
  margin: 0 auto;
  background-color: #190e0b; }
  @media screen and (min-width: 768px) {
    #footer {
      min-width: 1024px;
      padding: 48px 0; } }
  #footer ul {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 24px; }
    @media screen and (min-width: 768px) {
      #footer ul {
        margin-bottom: 40px; } }
  #footer li {
    padding: 0 5%; }
    @media screen and (min-width: 768px) {
      #footer li {
        padding: 0 16px; } }
    #footer li:not(:last-child) {
      border-right: 1px solid #fff; }
  #footer a {
    color: #fff;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 1px; }
    @media screen and (min-width: 768px) {
      #footer a {
        font-size: 18px; } }
  #footer img {
    width: auto;
    height: 20px; }
    @media screen and (min-width: 768px) {
      #footer img {
        height: 24px; } }
  #footer p {
    color: #7b7b7b;
    font-size: 12px;
    text-align: center;
    letter-spacing: 1px; }
    @media screen and (min-width: 768px) {
      #footer p {
        font-size: 16px; } }

#wrap.page-flowerstand .pc {
  display: none; }
  @media screen and (min-width: 768px) {
    #wrap.page-flowerstand .pc {
      display: block; } }
#wrap.page-flowerstand .sp {
  display: block; }
  @media screen and (min-width: 768px) {
    #wrap.page-flowerstand .sp {
      display: none; } }
#wrap.page-flowerstand .catch {
  padding-bottom: 0;
  margin-bottom: 0;
  overflow: auto; }
  #wrap.page-flowerstand .catch img {
    position: relative;
    padding-top: 0; }
#wrap.page-flowerstand #thanks-msg img {
  width: 100%; }
#wrap.page-flowerstand .particle-wrap {
  padding-bottom: 60px; }
  @media screen and (min-width: 768px) {
    #wrap.page-flowerstand .particle-wrap {
      padding-bottom: 120px; } }
#wrap.page-flowerstand #page-links {
  display: flex;
  width: 90%;
  padding: 40px 0;
  margin: 0 auto; }
  @media screen and (min-width: 768px) {
    #wrap.page-flowerstand #page-links {
      width: 820px; } }
  #wrap.page-flowerstand #page-links li {
    width: 32%; }
    @media screen and (min-width: 768px) {
      #wrap.page-flowerstand #page-links li {
        width: 260px; } }
    #wrap.page-flowerstand #page-links li:not(:last-child) {
      margin-right: 10px; }
      @media screen and (min-width: 768px) {
        #wrap.page-flowerstand #page-links li:not(:last-child) {
          margin-right: 20px; } }
    #wrap.page-flowerstand #page-links li img {
      width: 100%; }
#wrap.page-flowerstand #flowerstand-layout {
  width: 90%;
  margin: 0 auto; }
  @media screen and (min-width: 768px) {
    #wrap.page-flowerstand #flowerstand-layout {
      width: 820px; } }
  #wrap.page-flowerstand #flowerstand-layout .flowerstand-list {
    padding-top: 40px;
    margin-top: -40px; }
    #wrap.page-flowerstand #flowerstand-layout .flowerstand-list:not(:last-child) {
      margin-bottom: 40px; }
      @media screen and (min-width: 768px) {
        #wrap.page-flowerstand #flowerstand-layout .flowerstand-list:not(:last-child) {
          margin-bottom: 90px; } }
    #wrap.page-flowerstand #flowerstand-layout .flowerstand-list img {
      width: 100%; }
#wrap.page-flowerstand #back-top {
  position: fixed;
  bottom: 16px;
  right: 16px; }
  #wrap.page-flowerstand #back-top img {
    width: 60px;
    height: auto; }
    @media screen and (min-width: 768px) {
      #wrap.page-flowerstand #back-top img {
        width: 80px; } }

/*# sourceMappingURL=style.css.map */
