@charset "UTF-8";
/* ALL COMMON CSS
------------------------------------------------------
------------------------------------------------------
----------------------------------------------------*/
body {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  margin: 0;
  padding: 0; }

@media screen and (max-width: 768px) {
  canvas {
    display: block;
    max-width: 100% !important; } }
img {
  max-width: 100%;
  vertical-align: bottom; }

.pc {
  display: block; }
  @media screen and (max-width: 768px) {
    .pc {
      display: none; } }

.sp {
  display: none; }
  @media screen and (max-width: 768px) {
    .sp {
      display: block; } }

.fixed_gra_top,
.fixed_gra_bottom {
  position: fixed;
  z-index: 10;
  left: 0;
  width: 100%;
  height: 130px;
  background: url("../images/common/gra.png") 0 40px repeat-x; }

.fixed_gra_top {
  top: 0;
  transform: rotate(180deg); }

.fixed_gra_bottom {
  bottom: 0; }

/* ------------------------------------- header */
#p-header {
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%;
  background: #222;
  /* figure */ }

/* #p-header */
/* ------------------------------------- #p-nav */
#p-nav {
  background-color: #000a20;
  position: relative;
  overflow: hidden;
  width: 100%;
  z-index: 2;
  /* ul.navi */
  /* .social-btn */ }
  @media screen and (max-width: 768px) {
    #p-nav {
      display: none !important; } }
  #p-nav .inner {
    display: -webkit-flex;
    display: flex; }
    @media screen and (max-width: 1270px) {
      #p-nav .inner {
        display: block; } }
  #p-nav ul.navi {
    display: block;
    margin: 0 auto;
    overflow: hidden;
    padding: 25px 0 22px;
    /* li */ }
    #p-nav ul.navi li {
      display: block;
      float: left;
      padding: 0 15px;
      font-family: 'Marcellus', serif; }
      #p-nav ul.navi li:last-child {
        margin-right: 0; }
      #p-nav ul.navi li a {
        display: block;
        color: #fff;
        font-size: 20px; }
        #p-nav ul.navi li a:hover {
          opacity: .8; }
  #p-nav .social-btn {
    display: block;
    position: absolute;
    right: 30px;
    top: 0;
    /* ul.sc-nav */ }
    #p-nav .social-btn ul.sc-nav {
      overflow: hidden;
      display: -webkit-flex;
      display: flex;
      -webkit-align-items: center;
      align-items: center;
      height: 75px;
      /* li */ }
      #p-nav .social-btn ul.sc-nav li {
        position: relative;
        width: 30px;
        margin-right: 20px; }
        #p-nav .social-btn ul.sc-nav li:after {
          content: "･";
          display: block;
          position: absolute;
          top: 0;
          right: -15px;
          color: #fff;
          font-size: 9px; }
        #p-nav .social-btn ul.sc-nav li.tw::after, #p-nav .social-btn ul.sc-nav li.btn_lang::after {
          display: none; }
        #p-nav .social-btn ul.sc-nav li.btn_lang {
          width: 160px;
          margin-right: 0; }
        #p-nav .social-btn ul.sc-nav li:hover {
          opacity: .8; }
        #p-nav .social-btn ul.sc-nav li img {
          display: block;
          width: 100%; }
  #p-nav.cloned {
    background-color: transparent; }
    #p-nav.cloned .navi li a {
      text-shadow: 0 0 5px #607d8b, 0 0 5px #c37500, 0 0 5px #907d39, 0 0 5px #032763, 0 0 5px #032763, 0 0 10px #032763, 0 0 10px #032763, 0 0 10px #032763, 0 0 10px #032763, 0 0 10px #032763; }
    #p-nav.cloned .social-btn {
      top: calc( 50% - 25px );
      padding: 5px 10px;
      border-radius: 10px;
      -webkit-border-radius: 10px;
      -moz-border-radius: 10px;
      background-color: #000a20; }
      #p-nav.cloned .social-btn ul {
        height: auto; }

/* #p-nav */
/* ------------------------------------- #p-contents-wrap */
#p-contents-wrap {
  display: block;
  position: relative;
  margin: 0 auto;
  width: auto;
  /* #p-contents */ }
  #p-contents-wrap #p-contents {
    display: block;
    width: 100%;
    /* .con_wrap */ }
    #p-contents-wrap #p-contents .con_wrap {
      width: 100%;
      padding-top: 0px;
      position: relative; }

/* #p-contents-wrap */
/* ------------------------------------- #concept */
#concept {
  z-index: 1;
  position: relative; }

/* #concept */
/* ------------------------------------- #ticket */
#ticket {
  /* .ticket-content */ }
  #ticket .ticket-content {
    /* .ticket_wrap */
    /* .col-2 */
    /* .col-3 */
    /* .col-4 */
    /* .sns_wrap */ }
    #ticket .ticket-content .ticket_wrap {
      width: 100%;
      max-width: 770px;
      margin: 0 auto;
      padding: 80px 0 40px 0;
      /* article */ }
      #ticket .ticket-content .ticket_wrap h3 {
        margin: 0 0 30px;
        color: #000;
        font-size: 40px;
                /*
font-family: 'Marcellus', serif;*/
        font-family: 'Cinzel', serif;
        font-weight: bold;
        text-align: center;
        letter-spacing: 0.075em; }
        @media screen and (max-width: 768px) {
          #ticket .ticket-content .ticket_wrap h3 {
            margin-bottom: 20px;
            font-size: 8vw; } }
      #ticket .ticket-content .ticket_wrap article {
        padding: 30px 0;
        /* p.link */ }
        @media screen and (max-width: 768px) {
          #ticket .ticket-content .ticket_wrap article {
            padding: 5vw 20px 6vw; } }
        #ticket .ticket-content .ticket_wrap article h4 {
          font-size: 1.2rem;
          padding: 0;
          font-weight: bold; }
          @media screen and (max-width: 768px) {
            #ticket .ticket-content .ticket_wrap article h4 {
              font-size: 1.2rem;
              margin-bottom: 10px; } }
          #ticket .ticket-content .ticket_wrap article h4 span {
            /*font-size: 14px;*/
            display: inline-block;
            font-weight: normal;
            margin-left: 10px; }
            #ticket .ticket-content .ticket_wrap article h4 span.noml {
              margin-left: 0; }
            @media screen and (max-width: 768px) {
              #ticket .ticket-content .ticket_wrap article h4 span {
                /*font-size: .875rem;*/ } }
        #ticket .ticket-content .ticket_wrap article p {
          margin: 10px 0;
          font-size: 0.875rem;
          line-height: 180%; }
          #ticket .ticket-content .ticket_wrap article p a {
            color: #4d88be; }
        @media screen and (max-width: 768px) {
          #ticket .ticket-content .ticket_wrap article strong {
            font-size: 1rem; } }
        #ticket .ticket-content .ticket_wrap article p.link {
          margin-top: 0;
          margin: 0;
          min-width: 237px;
          /* a */ }
          @media screen and (max-width: 768px) {
            #ticket .ticket-content .ticket_wrap article p.link {
              margin-top: 2.6vw;
              float: none;
              text-align: center; } }
          #ticket .ticket-content .ticket_wrap article p.link a img:hover {
            opacity: 0.75; }
    #ticket .ticket-content .col-2 {
      display: -webkit-flex;
      display: flex;
      -webkit-justify-content: space-between;
      justify-content: space-between;
                                        /*
border-bottom: 1px solid #020110;*/ }
      @media screen and (max-width: 768px) {
        #ticket .ticket-content .col-2 {
          display: block; } }
      @media screen and (max-width: 768px) {
        #ticket .ticket-content .col-2 .leftbox {
          text-align: center; } }
    #ticket .ticket-content .col-3 {
      border-top: 1px solid #020110;
      /* section */
      /* section.day */
      /* dl.plan */ }
      #ticket .ticket-content .col-3 section {
        /* h5 */ }
        #ticket .ticket-content .col-3 section + section {
          margin-top: 5px; }
        #ticket .ticket-content .col-3 section h5 {
          font-size: 1.1rem;
          font-weight: bold; }
          #ticket .ticket-content .col-3 section h5 img {
            position: relative;
            left: -5px;
            bottom: -5px;
            margin: 0 -5px 0 0; }
      #ticket .ticket-content .col-3 section.day dl.calendar {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap; }
        #ticket .ticket-content .col-3 section.day dl.calendar dt {
          width: 5.5em; }
          #lang_en #ticket .ticket-content .col-3 section.day dl.calendar dt {
            width: 8em; }
        #ticket .ticket-content .col-3 section.day dl.calendar dd {
          width: calc( 100% - 5.5em ); }
          #lang_en #ticket .ticket-content .col-3 section.day dl.calendar dd {
            width: calc( 100% - 8em ); }
            #lang_en #ticket .ticket-content .col-3 section.day dl.calendar dd span {
              position: relative;
              top: -0.6em;
              font-size: 10px; }
      #ticket .ticket-content .col-3 .planWrap {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between; }
        @media screen and (max-width: 768px) {
          #ticket .ticket-content .col-3 .planWrap {
            display: block; } }
      #ticket .ticket-content .col-3 .planBox {
        width: 46.5%; }
        @media screen and (max-width: 768px) {
          #ticket .ticket-content .col-3 .planBox {
            width: 100%; } }
        #ticket .ticket-content .col-3 .planBox + .planBox {
              /*
	margin-top: 1.5em;*/ }
          @media screen and (max-width: 768px) {
            #ticket .ticket-content .col-3 .planBox + .planBox {
              margin-top: 1.5em; } }
        #ticket .ticket-content .col-3 .planBox > p {
          width: 100%;
          margin: 1em 0 0; }
          #ticket .ticket-content .col-3 .planBox > p a:hover img {
            opacity: .75; }
        #ticket .ticket-content .col-3 .planBox p.headerTitle {
          margin: 0.2em 0 0 0;
          color: #006F90;
          font-weight: bold;
          font-size: 16px;
          text-decoration: underline;
                           /*
border-bottom: solid 1px #006F90;*/ }
      #ticket .ticket-content .col-3 dl.plan {
        /* dd */ }
        #ticket .ticket-content .col-3 dl.plan + dl.plan {
          margin-top: 0.5em;
          padding-top: 0.5em;
          border-top: dashed 1px #ccc; }
        #ticket .ticket-content .col-3 dl.plan > dd {
          /* dl.price */ }
          #ticket .ticket-content .col-3 dl.plan > dd ol {
            list-style: decimal;
            margin: 0 0 0 1.8em; }
          #ticket .ticket-content .col-3 dl.plan > dd dl.price {
            display: -webkit-flex;
            display: flex;
            -webkit-flex-wrap: wrap;
            flex-wrap: wrap; }
            #ticket .ticket-content .col-3 dl.plan > dd dl.price dt {
              width: 10em; }
              #lang_en #ticket .ticket-content .col-3 dl.plan > dd dl.price dt {
                width: 21em; }
            #ticket .ticket-content .col-3 dl.plan > dd dl.price dd {
              width: calc( 100% - 10em ); }
          #lang_en #ticket .ticket-content .col-3 dl.plan > dd dl.price {
            display: block; }
            #lang_en #ticket .ticket-content .col-3 dl.plan > dd dl.price dt {
              width: 100%; }
            #lang_en #ticket .ticket-content .col-3 dl.plan > dd dl.price dd {
              width: 100%;
              text-align: right; }
    #ticket .ticket-content .col-4 {
      border-top: 1px solid #020110;
      /* section */
      /* .bnrBox */ }
      #ticket .ticket-content .col-4 section {
        /* h5 */ }
        #ticket .ticket-content .col-4 section + section {
          margin-top: 15px; }
        #ticket .ticket-content .col-4 section h5 {
          font-size: 1.1rem;
          font-weight: bold; }
          #ticket .ticket-content .col-4 section h5 img {
            position: relative;
            left: -5px;
            bottom: -5px;
            margin: 0 -5px 0 0; }
      #ticket .ticket-content .col-4 .bnrBox {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        margin: 1em 0 0;
        /* .txt */ }
        @media screen and (max-width: 768px) {
          #ticket .ticket-content .col-4 .bnrBox {
            -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
            margin-top: 5px; } }
        #ticket .ticket-content .col-4 .bnrBox .bnr {
          width: 45%; }
          @media screen and (max-width: 768px) {
            #ticket .ticket-content .col-4 .bnrBox .bnr {
              width: 100%; } }
        #ticket .ticket-content .col-4 .bnrBox .txt {
          width: 51%;
          /* dl */ }
          @media screen and (max-width: 768px) {
            #ticket .ticket-content .col-4 .bnrBox .txt {
              width: 100%; } }
          #ticket .ticket-content .col-4 .bnrBox .txt dl {
            /* dd */ }
            @media screen and (max-width: 768px) {
              #ticket .ticket-content .col-4 .bnrBox .txt dl {
                margin: 0.5em 0 0; } }
            #ticket .ticket-content .col-4 .bnrBox .txt dl dt .color {
              font-weight: bold;
              color: #f10069; }
            #ticket .ticket-content .col-4 .bnrBox .txt dl dd ul:not(.attention) {
              list-style: disc;
              margin-left: 1.5em; }
            #ticket .ticket-content .col-4 .bnrBox .txt dl dd .attention {
              margin: 1em 0 0;
              font-size: 12px;
              line-height: 1.5; }
      #ticket .ticket-content .col-4 .btn {
        margin: 2em 0 0;
        text-align: center; }
        #ticket .ticket-content .col-4 .btn a:hover img {
          opacity: .75; }
      #ticket .ticket-content .col-4 .site {
        margin: 1em 0 0;
        text-align: center; }
        #ticket .ticket-content .col-4 .site a {
          text-decoration: underline; }
          #ticket .ticket-content .col-4 .site a:hover {
            text-decoration: none; }
    #ticket .ticket-content .sns_wrap {
      display: block;
      /* article */ }
      #ticket .ticket-content .sns_wrap article {
        width: 100%;
        max-width: 950px;
        margin: 0 auto 100px; }
        @media screen and (max-width: 768px) {
          #ticket .ticket-content .sns_wrap article {
            width: auto;
            margin: 0 auto 13vw;
            padding: 0 0 4vw 0; } }
        #ticket .ticket-content .sns_wrap article .social-btn {
          display: block;
          margin: 0 auto 0 0;
          overflow: hidden;
          padding: 0;
          text-align: center; }
          @media screen and (max-width: 768px) {
            #ticket .ticket-content .sns_wrap article .social-btn {
              margin: 0 auto; } }
          #ticket .ticket-content .sns_wrap article .social-btn li {
            display: inline-block;
            margin-right: 15px; }
            @media screen and (max-width: 768px) {
              #ticket .ticket-content .sns_wrap article .social-btn li {
                margin: 1%;
                width: 20%; } }
            #ticket .ticket-content .sns_wrap article .social-btn li:last-child {
              margin-right: 0; }
            #ticket .ticket-content .sns_wrap article .social-btn li:hover {
              opacity: .8; }
            #ticket .ticket-content .sns_wrap article .social-btn li a {
              color: #fff;
              display: block;
              font-size: 11px;
              overflow: hidden;
              position: relative; }

/* #ticket */
/* ------------------------------------- .social-page-post */
.social-page-post {
  display: block;
  margin: 0;
  padding: 0;
  position: relative;
  height: 377px;
  /* article */
  /* .instagram */
  /* .sns_tag */
  /* .twitter */ }
  @media screen and (max-width: 768px) {
    .social-page-post {
      height: auto;
      overflow: hidden; } }
  #lang_en .social-page-post {
    height: 282px; }
    @media screen and (max-width: 768px) {
      #lang_en .social-page-post {
        height: auto; } }
  @media screen and (max-width: 768px) {
    .social-page-post {
      height: auto;
      overflow: hidden; } }
  .social-page-post article {
    display: block;
    float: left;
    overflow: hidden;
    padding: 80px 0 70px;
    /* figure */ }
    @media screen and (max-width: 768px) {
      .social-page-post article {
        padding: 40px 0; } }
    .social-page-post article figure {
      display: block;
      height: 64px;
      margin: 0 auto;
      overflow: hidden;
      width: 64px; }
      @media screen and (max-width: 768px) {
        .social-page-post article figure {
          height: auto;
          width: 8.3vw; } }
      .social-page-post article figure img {
        display: block;
        width: 100%; }
    .social-page-post article h3 {
      margin-bottom: 40px;
      color: #fff;
      font-size: 28px;
      font-family: 'Marcellus', serif;
      font-weight: lighter;
      letter-spacing: 3px; }
      @media screen and (max-width: 768px) {
        .social-page-post article h3 {
          font-size: 1.3rem;
          margin-bottom: 40px; } }
    .social-page-post article a {
      display: block;
      margin: 50px auto 0;
      padding: 7px 0;
      text-align: center;
      width: 130px;
      height: 45px;
      border: 2px solid #fff;
      border-radius: 100px;
      font-size: 1.2rem;
      font-weight: bold;
                  /*
font-family: sans-serif;*/
      color: #fff; }
      @media screen and (max-width: 768px) {
        .social-page-post article a {
          margin: 10% auto 0;
          position: relative;
          z-index: 99; } }
      @media screen and (max-width: 575px) {
        .social-page-post article a {
          margin: 150px auto 0; } }
      .social-page-post article a:hover {
        opacity: .8; }
  .social-page-post article.instagram {
    width: calc((100% - 370px)/2);
    background-color: #db4b61;
    position: relative; }
    @media screen and (max-width: 768px) {
      .social-page-post article.instagram {
        width: 50%; } }
    .social-page-post article.instagram .sns_arrow_left {
      position: absolute;
      right: 0;
      top: 50%;
      margin-top: -17.5px; }
      @media screen and (max-width: 768px) {
        .social-page-post article.instagram .sns_arrow_left {
          display: none; } }
    .social-page-post article.instagram .ig-content {
      display: block;
      float: right;
      overflow: hidden;
      margin-right: 160px;
      text-align: center;
      width: 200px; }
      @media screen and (max-width: 768px) {
        .social-page-post article.instagram .ig-content {
          float: none;
          margin: 0;
          text-align: center;
          width: 100%; } }
  .social-page-post article.sns_tag {
    width: 370px;
    background-image: url("../images/common/sns_bg.png");
    background-repeat: repeat;
    height: 100%;
    box-sizing: border-box; }
    @media screen and (max-width: 768px) {
      .social-page-post article.sns_tag {
        background: none;
        position: absolute;
        width: 100%;
        padding-top: 13%;
        z-index: 9; } }
    @media screen and (max-width: 575px) {
      .social-page-post article.sns_tag {
        padding-top: 0; } }
    .social-page-post article.sns_tag p.middle {
      display: block;
      position: relative;
      top: 50%;
      transform: translateY(-50%);
      margin: 0 auto;
      line-height: 160%;
      text-align: center;
      font-size: 16px;
      font-weight: lighter;
                     /*
font-family: sans-serif;*/
      color: #fff; }
      @media screen and (max-width: 768px) {
        .social-page-post article.sns_tag p.middle {
          font-size: 0.9rem;
          line-height: 140%; } }
      @media screen and (max-width: 575px) {
        .social-page-post article.sns_tag p.middle {
          top: 66%;
          font-size: 0.8rem;
          line-height: 115%; } }
      .social-page-post article.sns_tag p.middle span.block_txt {
        display: block;
        font-size: 1.2rem;
        font-weight: bold;
                  /*
font-family: sans-serif;*/ }
  .social-page-post article.twitter {
    width: calc((100% - 370px)/2);
    background-color: #000000;
    background-size: auto 100%;
    position: relative; }
    @media screen and (max-width: 768px) {
      .social-page-post article.twitter {
        width: 50%; } }
    .social-page-post article.twitter .sns_arrow_right {
      position: absolute;
      left: 0;
      top: 50%;
      margin-top: -17.5px; }
      @media screen and (max-width: 768px) {
        .social-page-post article.twitter .sns_arrow_right {
          display: none; } }
    .social-page-post article.twitter .tw-content {
      display: block;
      float: left;
      overflow: hidden;
      margin-left: 160px;
      text-align: center;
      width: 150px; }
      @media screen and (max-width: 768px) {
        .social-page-post article.twitter .tw-content {
          float: none;
          margin: 0;
          text-align: center;
          width: 100%; } }

/* .social-page-post */
/* ------------------------------------- .venue */
.venue {
  background-image: url("../images/common/bg_footer.webp");
  background-position: center bottom;
  background-size: auto auto;
  background-repeat: no-repeat;
  display: block;
  padding: 126px 0 115px;
  /* .venue-content */
  /* #how_to_come */
  /* #footer */
  /* .overall-content */
  /* .about-owner */
  /* .widget */ }
  @media screen and (max-width: 768px) {
    .venue {
      background: none;
      display: block;
      padding: 13vw 0 22vw 0;
      padding: 13vw 0 0; } }
  .venue .venue-content,
  .venue .access-content,
  .venue .overall-content {
    display: block;
    margin: 0 auto;
    width: 770px;
    text-align: center; }
    @media screen and (max-width: 768px) {
      .venue .venue-content,
      .venue .access-content,
      .venue .overall-content {
        width: 100%; } }
    .venue .venue-content h3,
    .venue .access-content h3,
    .venue .overall-content h3 {
      font-size: 24px;
      font-weight: bold; }
    @media screen and (max-width: 768px) {
      .venue .venue-content p,
      .venue .access-content p,
      .venue .overall-content p {
        display: block;
        margin-left: auto;
        margin-right: auto;
        width: 90%;
        text-align: center; } }
  .venue .venue-content {
    padding: 0 0 70px 0;
    /* .accessBlock */
    /* .left */
    /* .right */ }
    @media screen and (max-width: 768px) {
      .venue .venue-content {
        padding: 0; } }
    .venue .venue-content h3 {
      margin: 0 0 50px;
      font-size: 40px;
                /*
font-family: 'Marcellus', serif;
font-weight: bold;*/
      font-family: 'Cinzel', serif;
      font-weight: bold;
      color: #000;
      letter-spacing: 0.075em;
      text-align: center; }
      @media screen and (max-width: 768px) {
        .venue .venue-content h3 {
          font-size: 8vw; } }
      .venue .venue-content h3 img {
        width: 47.4vw; }
    .venue .venue-content .accessBlock {
      display: -webkit-flex;
      display: flex; }
      @media screen and (max-width: 768px) {
        .venue .venue-content .accessBlock {
          display: block; } }
    .venue .venue-content .left {
      text-align: left;
      vertical-align: top;
      width: 320px; }
      @media screen and (max-width: 768px) {
        .venue .venue-content .left {
          width: 100%;
          text-align: center;
          margin: 0; } }
      .venue .venue-content .left .link {
        margin: 20px 0 0 0;
        text-align: center; }
        @media screen and (max-width: 768px) {
          .venue .venue-content .left .link {
            margin: 0; } }
        .venue .venue-content .left .link span {
          height: 50px; }
          @media screen and (max-width: 768px) {
            .venue .venue-content .left .link span {
              display: inline-block;
              height: 6.5vw;
              margin: 5vw 0; } }
        .venue .venue-content .left .link a {
          color: #000000;
          height: 50px;
          display: inline-block;
          padding: 0 44px 0 0;
          vertical-align: middle;
          position: relative;
          font-size: 15px;
          line-height: 50px; }
          @media screen and (max-width: 768px) {
            .venue .venue-content .left .link a {
              height: 6.5vw;
              padding: 0 5.2vw 0 0;
              font-size: 2.4vw;
              line-height: 6.5vw; } }
          .venue .venue-content .left .link a:before {
            content: '\003e';
            display: block;
            position: absolute;
            top: 0;
            right: 22px; }
            @media screen and (max-width: 768px) {
              .venue .venue-content .left .link a:before {
                right: 2.6vw; } }
    .venue .venue-content .right {
      vertical-align: top;
      box-sizing: border-box; }
      @media screen and (max-width: 768px) {
        .venue .venue-content .right {
          float: none;
          text-align: center;
          width: 90%;
          margin-left: 0px;
          padding-left: 0px;
          margin: 0 auto; } }
      .venue .venue-content .right iframe {
        width: 100% !important;
        margin: 0 0 25px 0; }
    .venue .venue-content .logo-f {
      display: block;
      height: auto;
      width: 190px; }
      @media screen and (max-width: 768px) {
        .venue .venue-content .logo-f {
          width: 24.74vw;
          margin: 0 auto; } }
    @media screen and (max-width: 768px) {
      .venue .venue-content p {
        margin-top: 4vw;
        font-size: 2.0vw;
        line-height: 1.6; } }
  .venue a:hover {
    opacity: 0.7; }
  .venue .red {
    color: #c70056 !important; }
  .venue span {
    color: #aaa;
            /*
font-family: 'Roboto', sans-serif;*/
    font-size: 14px; }
  .venue p {
    font-size: 14px;
    margin-top: 20px; }
  .venue #how_to_come {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
    width: 100%;
    max-width: 870px;
    min-height: 352px;
    margin: 0 auto 30px;
    background-image: url("../images/common/train_box.png");
    background-position: center;
    background-repeat: no-repeat;
    background-color: #fff;
    color: #000;
    /* .access-content */ }
    @media screen and (max-width: 768px) {
      .venue #how_to_come {
        height: 52.083333vw;
        min-height: 0;
        margin-bottom: 0;
        background-image: url("../images/common/train_box_sp.png");
        background-repeat: no-repeat;
        background-size: 100%; } }
    .venue #how_to_come .access-content strong {
      font-size: 1.3rem;
      font-weight: bold; }
      @media screen and (max-width: 768px) {
        .venue #how_to_come .access-content strong {
          font-size: 2.6vw; } }
    .venue #how_to_come .access-content p {
      font-size: 14px;
      margin-top: 16px;
      font-weight: 500;
      line-height: 1.9; }
      @media screen and (max-width: 768px) {
        .venue #how_to_come .access-content p {
          font-size: 2vw;
          margin-top: 0vw;
          line-height: 160%; } }
  @media screen and (max-width: 768px) {
    .venue #footer {
      background: url("../images/common/bg_footer.webp") center bottom no-repeat;
      background-size: auto 100%; } }
  .venue .overall-content {
    color: #fff;
    padding: 180px 0 0 0; }
    @media screen and (max-width: 768px) {
      .venue .overall-content {
        padding: 20vw 0 0 0; } }
    .venue .overall-content h3 {
      margin: 0 0 40px;
      color: #fff; }
      @media screen and (max-width: 768px) {
        .venue .overall-content h3 {
          margin: 0 0 4vw;
          font-size: 3.25vw; } }
    .venue .overall-content span {
      font-family: 'Roboto', sans-serif;
      color: #aaa;
      font-size: 14px; }
    .venue .overall-content figure.naked-logo {
      display: block;
      margin: 0 auto;
      width: 190px; }
      @media screen and (max-width: 768px) {
        .venue .overall-content figure.naked-logo {
          display: block;
          margin: 0 auto;
          width: 90%; } }
      .venue .overall-content figure.naked-logo img {
        display: block;
        width: 100%; }
  .venue .about-owner {
    display: block;
    margin: 15px auto 0;
    overflow: hidden;
    width: 750px;
    /* .description */ }
    @media screen and (max-width: 768px) {
      .venue .about-owner {
        width: 100%;
        margin: 0; } }
    .venue .about-owner .description {
      width: 100%;
      text-align: center;
      /* .owner-pic */ }
      @media screen and (max-width: 768px) {
        .venue .about-owner .description {
          margin: 0 auto;
          width: 90%; } }
      .venue .about-owner .description p {
        font-size: 1.0rem;
        margin-top: 35px;
        text-align: left; }
        @media screen and (max-width: 768px) {
          .venue .about-owner .description p {
            width: 100%;
            margin: 5vw 0;
            font-size: 2vw;
            line-height: 1.6; } }
        .venue .about-owner .description p.name {
          font-size: 15px;
          margin: 10px 0 0;
          text-align: center; }
          @media screen and (max-width: 768px) {
            .venue .about-owner .description p.name {
              font-size: 1.95vw;
              margin: 1.3333vw 0 0; } }
      .venue .about-owner .description .official-pages {
        display: block;
        overflow: hidden;
        padding: 0;
        position: relative; }
      .venue .about-owner .description .officialbox {
        text-align: center;
        margin: 60px 0 20px 0; }
        @media screen and (max-width: 768px) {
          .venue .about-owner .description .officialbox {
            margin: 5vw 0; } }
        .venue .about-owner .description .officialbox p.official_go {
          display: inline-block;
          vertical-align: middle;
          margin: 0 15px 0 0;
          font-size: 0.9rem; }
          @media screen and (max-width: 768px) {
            .venue .about-owner .description .officialbox p.official_go {
              text-align: center;
              margin: 0 auto;
              margin-bottom: 5%; } }
          .venue .about-owner .description .officialbox p.official_go a {
            display: inline-block; }
            .venue .about-owner .description .officialbox p.official_go a:hover {
              opacity: 0.75; }
        .venue .about-owner .description .officialbox ul {
          display: inline-block;
          vertical-align: middle; }
          @media screen and (max-width: 768px) {
            .venue .about-owner .description .officialbox ul {
              text-align: center;
              display: inherit; } }
          .venue .about-owner .description .officialbox ul li {
            display: inline-block;
            margin: 0 15px 0 0;
            overflow: hidden;
            padding: 0;
            position: relative;
            width: 30px; }
            .venue .about-owner .description .officialbox ul li:hover {
              opacity: .8; }
            .venue .about-owner .description .officialbox ul li img {
              display: block;
              width: 100%;
              max-height: 30px; }
      @media screen and (max-width: 768px) {
        .venue .about-owner .description .owner-pic {
          margin: 0 auto 1vw;
          padding-left: 10px;
          width: 24.74vw;
          line-height: 1; } }
      .venue .about-owner .description .owner-pic img {
        max-width: 100%; }
  .venue .widget {
    display: block;
    margin-top: 80px;
    text-align: center;
    padding-bottom: 90px;
    /* .sharebutton-wrap */ }
    @media screen and (max-width: 768px) {
      .venue .widget {
        margin: 0 auto;
        padding-bottom: 20vw;
        width: 90%; } }
    .venue .widget a {
      display: block;
      font-family: 'Roboto', sans-serif;
      font-size: 16px;
      margin-bottom: 20px; }
    .venue .widget .sharebutton-wrap .fb_iframe_widget_fluid {
      display: inline-block !important; }
    .venue .widget .fb-like.fb_iframe_widget span,
    .venue .widget .fb-share-button.fb_iframe_widget span {
      float: left;
      vertical-align: text-bottom !important;
      top: auto; }

/* .venue */
/* ------------------------------------- .to-top */
.to-top,
.back-top {
  background-image: url("../images/common/back.png");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  bottom: 40px;
  display: none;
  height: 65px;
  opacity: .5;
  position: fixed;
  right: 60px;
  width: 65px;
  z-index: 999;
  -webkit-transition: opacity .3s ease-in;
  -moz-transition: opacity .3s ease-in;
  -o-transition: opacity .3s ease-in;
  -ms-transition: opacity .3s ease-in;
  transition: opacity .3s ease-in; }
  @media screen and (max-width: 768px) {
    .to-top,
    .back-top {
      bottom: 20px;
      height: 32px;
      right: 20px;
      width: 32px;
      z-index: 999; } }

.to-top:hover,
.back-top:hover {
  opacity: 1; }

/* ------------------------------------- .hamburger */
.hamburger {
  color: #fff;
  display: none;
  font-family: 'Roboto', sans-serif;
  font-size: 36px;
  position: absolute;
  z-index: 999;
  right: 10px;
  top: 12px; }
  @media screen and (max-width: 768px) {
    .hamburger {
      display: block; } }

/* ------------------------------------- .sidenav */
.sidenav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  height: 100%;
  width: 0;
  position: fixed;
  z-index: 9999;
  top: 0;
  right: 0;
  background-color: #111;
  overflow-x: hidden;
  transition: 0.5s;
  text-align: center; }
  .sidenav a {
    padding: 8px 0;
    text-decoration: none;
    font-size: 18px;
    color: #F5F5D3;
    display: block;
    transition: 0.3s; }
    .sidenav a:hover {
      color: #f1f1f1; }
  .sidenav .closebtn {
    color: #fff;
    position: absolute;
    top: 0;
    right: 15px;
    font-size: 36px;
    line-height: 1; }

/* .sidenav */
/* ------------------------------------- .LB-black-overlay */
.LB-black-overlay {
  background-color: rgba(0, 0, 0, 0.8);
  display: none;
  height: 100%;
  left: 0%;
  position: fixed;
  top: 0%;
  width: 100%;
  z-index: 1001;
  filter: alpha(opacity=70); }

.LB-white-content {
  display: none;
  font-size: 14px;
  left: 50%;
  position: fixed;
  top: 50%;
  z-index: 1002; }

.lb-yt {
  height: 540px;
  width: 960px; }
  @media screen and (max-width: 768px) {
    .lb-yt {
      height: auto;
      width: 90%; } }

.LB-white-content iframe {
  display: block;
  height: 100%;
  overflow: hidden;
  width: 100%; }

.LB-white-content figure {
  display: block;
  height: auto;
  overflow: hidden;
  width: 100%; }

.LB-white-content figure img {
  display: block;
  height: auto;
  width: 100%; }

.LB-white-content .close {
  background-color: #fff;
  background-image: url("../images/common/cross_bl.svg");
  background-position: center;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  display: block;
  cursor: pointer;
  height: 25px;
  position: absolute;
  right: 0;
  top: -25px;
  width: 25px;
  z-index: 1003; }

.LB-white-content .close:hover {
  background-color: #000;
  background-image: url("../images/common/cross_wh.svg"); }

/* STYLES SET
------------------------------------------------------
------------------------------------------------------
----------------------------------------------------*/
.wrap {
  position: relative;
  width: 100%;
  background: url("../images/common/wrap_bg.webp") bottom center no-repeat;
  background-size: cover;
  color: #fff;
  /* .lang_sp */ }
  @media screen and (max-width: 768px) {
    .wrap {
      background: url("../images/common/wrap_bg_sp.webp") bottom center no-repeat;
      background-size: cover; } }
  .wrap img {
    max-width: 100%;
    height: auto; }
  .wrap .lang_sp {
    display: none; }
    @media screen and (max-width: 768px) {
      .wrap .lang_sp {
        display: block;
        position: absolute;
        top: 10px;
        right: 10px;
        width: 100px; } }

/* ------------------- .block_1 */
.block_1 {
  width: 100%; }
  .block_1 .inner {
    padding: 100px 20px; }
    @media screen and (max-width: 768px) {
      .block_1 .inner {
        padding: 80px 20px; } }
  .block_1 p {
    text-shadow: 1px 1px 20px black, -1px 1px 20px black, 1px -1px 20px black, -1px -1px 20px black;
    text-align: center; }
  .block_1 p.ttl {
    font-size: 34px;
    line-height: 1.2; }
    @media screen and (max-width: 768px) {
      .block_1 p.ttl {
        font-size: 4.8vw;
        line-height: 1.8; } }
  .block_1 p.date {
    font-size: 20px;
    margin: 1em 0 0; }
    @media screen and (max-width: 768px) {
      .block_1 p.date {
        font-size: 2.8vw; } }
  .block_1 .movie {
    position: relative;
    width: 100%;
    max-width: 720px;
    margin: 80px auto 0;
    padding-top: 405px;
    border: solid 1px #000; }
    @media screen and (max-width: 768px) {
      .block_1 .movie {
        width: calc( 100% - ( 6.5vw * 2 ) );
        margin-top: 40px;
        padding-top: 45%; } }
    .block_1 .movie iframe {
      position: absolute;
      top: 0;
      right: 0;
      width: 100%;
      height: 100%; }

/* .block_1 */
/* ------------------- .block_2 */
.block_2 {
  position: relative;
  width: 100%;
  /* ul */ }
  .block_2 img.item {
    position: absolute;
    z-index: 0;
    width: 25px; }
  .block_2 img.item1 {
    top: 200px;
    right: 200px; }
  .block_2 img.item2 {
    top: 250px;
    left: 200px;
    width: 40px; }
  .block_2 img.item3 {
    top: 280px;
    left: 40%;
    width: 15px; }
  .block_2 img.item4 {
    top: 300px;
    right: 30%;
    width: 30px; }
  .block_2 img.item5 {
    top: 290px;
    left: 3%;
    width: 30px; }
  .block_2 img.item6 {
    top: 310px;
    right: 35%;
    width: 15px; }
  .block_2 img.item7 {
    top: 10px;
    right: 28%; }
  .block_2 img.item8 {
    top: 50px;
    left: 10%; }
  .block_2 img.item9 {
    top: 350px;
    left: 50%; }
  .block_2 img.item10 {
    top: 90px;
    right: 10%; }
  .block_2 img.item11 {
    top: 400px;
    right: 20%; }
  .block_2 img.item12 {
    top: 380px;
    left: 10%;
    width: 20px; }
  .block_2 img.item13 {
    top: 80px;
    left: 15%;
    width: 20px; }
  .block_2 img.item14 {
    top: 230px;
    left: 5%;
    width: 20px; }
  .block_2 img.item15 {
    top: 80px;
    right: 20%; }
  .block_2 img.item16 {
    bottom: -140px;
    right: 20%; }
  .block_2 img.item17 {
    bottom: -180px;
    right: 2%;
    width: 15px; }
  .block_2 img.item18 {
    bottom: -80px;
    right: 50%;
    width: 40px; }
  .block_2 img.item19 {
    bottom: -200px;
    right: 10%; }
  .block_2 img.item20 {
    bottom: -250px;
    right: 20%;
    width: 35px; }
  .block_2 .inner {
    position: relative;
    z-index: 3;
    padding: 130px 20px 100px; }
    @media screen and (max-width: 768px) {
      .block_2 .inner {
        padding: 60px 20px 50px; } }
  .block_2 h2 {
    text-shadow: 1px 1px 20px black, -1px 1px 20px black, 1px -1px 20px black, -1px -1px 20px black;
    text-align: center;
    font-size: 50px;
    line-height: 1.2;
    letter-spacing: 0.0;
    font-family: 'Cinzel', serif; }
    @media screen and (max-width: 768px) {
      .block_2 h2 {
        font-size: 8vw; } }
  .block_2 ul {
    display: -webkit-flex;
    display: flex;
    max-width: 1000px;
    margin: 0 auto;
    /* li */ }
    @media screen and (max-width: 768px) {
      .block_2 ul {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: center;
        justify-content: center; } }
    .block_2 ul li {
      width: 50%;
      max-width: 475px;
      margin: 80px 20px 0;
      border-radius: 6px;
      /* .box */ }
      @media screen and (max-width: 768px) {
        .block_2 ul li {
          width: 100%; } }
      .block_2 ul li h3 {
        font-size: 24px;
        text-align: center;
        margin-bottom: 15px;
        text-shadow: 1px 1px 20px black, -1px 1px 20px black, 1px -1px 20px black, -1px -1px 20px black;
        letter-spacing: 0.075em; }
        @media screen and (max-width: 768px) {
          .block_2 ul li h3 {
            font-size: 4.8vw; } }
      .block_2 ul li .box {
        overflow: hidden;
        border: solid 1px #000;
        /*border-radius: 10px;*/
        background: #090524;
        /* .inside */ }
        .block_2 ul li .box .inside {
          padding: 30px 16px 60px;
          letter-spacing: 0.075em; }
          @media screen and (max-width: 768px) {
            .block_2 ul li .box .inside {
              padding: 20px; } }
          .block_2 ul li .box .inside p.ttl {
            font-size: 24px;
            font-family: 'Marcellus', serif; }
            @media screen and (max-width: 768px) {
              .block_2 ul li .box .inside p.ttl {
                font-size: 4.3vw; } }
          .block_2 ul li .box .inside p.day {
            font-size: 13px;
            margin: 1em 0 0; }
            @media screen and (max-width: 768px) {
              .block_2 ul li .box .inside p.day {
                font-size: 2vw; } }
          .block_2 ul li .box .inside p.txt {
            font-size: 18px;
            margin: 1em 0 0;
            min-height: 9em; }
            #lang_en .block_2 ul li .box .inside p.txt {
              min-height: 12em; }
            @media screen and (max-width: 768px) {
              .block_2 ul li .box .inside p.txt {
                font-size: 3.0vw; } }
          .block_2 ul li .box .inside p.time {
            font-size: 13px; }
            @media screen and (max-width: 768px) {
              .block_2 ul li .box .inside p.time {
                font-size: 2.0vw; } }
            .block_2 ul li .box .inside p.time img {
              max-width: 50%; }
              @media screen and (max-width: 768px) {
                .block_2 ul li .box .inside p.time img {
                  max-width: 100%; } }

/* .block_2 */
/* ------------------- .block_3 */
.block_3 {
  position: relative;
  width: 100%;
  /* .inner */
  /* .box */
  /* .box2 */
  /* .box3 */
  /* .seasonalmenu */ }
  .block_3 img.item {
    position: absolute;
    z-index: 0;
    width: 20px; }
  .block_3 img.item1 {
    bottom: 100px;
    right: 10px;
    width: 30px; }
  .block_3 img.item2 {
    bottom: 150px;
    left: 50px; }
  .block_3 img.item3 {
    bottom: 80%;
    right: 50px;
    width: 30px; }
  .block_3 img.item4 {
    bottom: 50%;
    left: 250px; }
  .block_3 img.item5 {
    bottom: 130px;
    left: 130px;
    width: 40px; }
  .block_3 img.item6 {
    bottom: 120px;
    left: 330px; }
  .block_3 img.item7 {
    bottom: 60%;
    left: 230px;
    width: 35px; }
  .block_3 img.item8 {
    bottom: 40%;
    right: 400px; }
  .block_3 img.item9 {
    bottom: 53%;
    left: 20px;
    width: 15px; }
  .block_3 img.item10 {
    bottom: 45%;
    left: 300px; }
  .block_3 img.item11 {
    bottom: 42%;
    left: 250px; }
  .block_3 img.item12 {
    bottom: 50%;
    right: 150px;
    width: 10px; }
  .block_3 img.item13 {
    bottom: 53%;
    right: 100px;
    width: 15px; }
  .block_3 .inner {
    position: relative;
    z-index: 3;
    padding: 130px 20px 400px; }
    @media screen and (max-width: 768px) {
      .block_3 .inner {
        padding: 60px 20px 200px; } }
  .block_3 h2 {
    text-shadow: 1px 1px 20px black, -1px 1px 20px black, 1px -1px 20px black, -1px -1px 20px black;
    text-align: center;
    font-size: 50px;
    line-height: 1.2;
    letter-spacing: 0.0;
    font-family: 'Cinzel', serif; }
    @media screen and (max-width: 768px) {
      .block_3 h2 {
        font-size: 8vw; } }
  .block_3 .box {
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
    margin: 130px 0 0;
    /* .fadein */ }
    @media screen and (max-width: 768px) {
      .block_3 .box {
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 10vw 6.5vw 0; } }
    .block_3 .box.row-reverse {
      -webkit-flex-direction: row-reverse;
      flex-direction: row-reverse; }
      @media screen and (max-width: 768px) {
        .block_3 .box.row-reverse {
          -webkit-flex-direction: column;
          flex-direction: column; } }
    .block_3 .box .fadeIn {
      opacity: 0;
      transform: translate(0, 50px);
      transition: all 1500ms; }
      .block_3 .box .fadeIn.scrollin {
        opacity: 1;
        transform: translate(0, 0); }
    .block_3 .box .image {
      overflow: hidden;
      width: 50%;
      max-width: 645px;
      margin: 0 30px;
      border: solid 1px #000;
      /*border-radius: 10px;*/ }
      @media screen and (max-width: 768px) {
        .block_3 .box .image {
          width: 100%;
          margin: 0; } }
    .block_3 .box .txt {
      width: 40%;
      max-width: 645px;
      text-align: center; }
      @media screen and (max-width: 768px) {
        .block_3 .box .txt {
          width: 100%; } }
      .block_3 .box .txt h4, .block_3 .box .txt p {
        text-shadow: 1px 1px 20px black, -1px 1px 20px black, 1px -1px 20px black, -1px -1px 20px black;
        font-size: 24px;
        font-family: 'Marcellus', serif;
        letter-spacing: 0.075em;
        color: #fff; }
        @media screen and (max-width: 768px) {
          .block_3 .box .txt h4, .block_3 .box .txt p {
            margin: 20px 0 0;
            font-size: 4.8vw; } }
      .block_3 .box .txt p {
        font-size: 18px;
        line-height: 30px;
        margin-top: 30px;
        letter-spacing: 0.075em; }
        @media screen and (max-width: 768px) {
          .block_3 .box .txt p {
            margin-top: 0.5em;
            font-size: 3.2vw;
            line-height: 2.0; } }
        .block_3 .box .txt p.attention {
          width: 80%;
          margin: 30px auto 0;
          background: rgba(255, 255, 255, 0.7);
          padding: 20px;
          border-radius: 5px;
          font-size: 15px; }
          @media screen and (max-width: 768px) {
            .block_3 .box .txt p.attention {
              margin-top: 0.5em;
              font-size: 2.8vw;
              padding: 1.5em;
              width: 100%; } }
  .block_3 .box3 {
    margin-top: -20px; }
    @media screen and (max-width: 768px) {
      .block_3 .box3 {
        margin-top: 20px; } }
  .block_3 .seasonalmenu {
    max-width: calc( 645px * 2 + 60px );
    margin: 100px auto 0;
    /* .seasonalmenu_inner */ }
    @media screen and (max-width: 768px) {
      .block_3 .seasonalmenu {
        margin: 20px 0 0; } }
    .block_3 .seasonalmenu .seasonalmenu_inner {
      margin: 0 60px;
      padding: 20px 20px 10px;
      background: rgba(37, 47, 123, 0.4);
      position: relative;
      /* ul */ }
      @media screen and (max-width: 768px) {
        .block_3 .seasonalmenu .seasonalmenu_inner {
          margin: 0;
          padding: 20px 10px 10px; } }
      .block_3 .seasonalmenu .seasonalmenu_inner .annotation {
        position: absolute;
        background: rgba(255, 255, 255, 0.8);
        color: #000;
        top: 44px;
        left: 20px;
        width: 42%;
        max-width: 520px;
        height: 140px;
        padding: 40px 0;
        font-weight: bold;
        text-align: center; }
        @media screen and (max-width: 768px) {
          .block_3 .seasonalmenu .seasonalmenu_inner .annotation {
            top: 40px;
            left: 20px;
            width: calc(100% - 40px);
            max-width: 100%;
            height: 140px;
            padding: 10px 20px;
            font-size: 3.2vw; } }
        .block_3 .seasonalmenu .seasonalmenu_inner .annotation .annotation_inner {
          text-align: left;
          display: inline-block; }
      .block_3 .seasonalmenu .seasonalmenu_inner h4 {
        margin: 0 0 0.5em;
        font-size: 22px;
                /*
font-family: 'Marcellus', serif;*/
        font-family: 'Cinzel', serif;
        line-height: 1.0;
        text-align: center; }
        @media screen and (max-width: 768px) {
          .block_3 .seasonalmenu .seasonalmenu_inner h4 {
            font-size: 3.0vw; } }
      .block_3 .seasonalmenu .seasonalmenu_inner ul {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        justify-content: space-between;
        -webkit-align-items: center;
        align-items: center;
        margin: 0 10px;
        /* li */ }
        @media screen and (max-width: 768px) {
          .block_3 .seasonalmenu .seasonalmenu_inner ul {
            -webkit-flex-wrap: wrap;
            flex-wrap: wrap;
            margin: 0; } }
        .block_3 .seasonalmenu .seasonalmenu_inner ul li {
          display: -webkit-flex;
          display: flex;
          -webkit-align-items: center;
          align-items: center;
          padding: 10px 0;
          text-align: left;
          /* dl */ }
          @media screen and (max-width: 768px) {
            .block_3 .seasonalmenu .seasonalmenu_inner ul li {
              width: 50%;
              padding: 10px 0; } }
          .block_3 .seasonalmenu .seasonalmenu_inner ul li.souvenir {
            max-width: 40%;
            padding: 0;
            border-radius: 10px;
            background: rgba(255, 255, 255, 0.3);
            background: rgba(50, 154, 191, 0.5);
            -webkit-flex-wrap: wrap;
            flex-wrap: wrap; }
            @media screen and (max-width: 768px) {
              .block_3 .seasonalmenu .seasonalmenu_inner ul li.souvenir {
                max-width: none;
                width: 100%;
                margin: 0; } }
            .block_3 .seasonalmenu .seasonalmenu_inner ul li.souvenir > p {
              width: 100%;
              padding: 10px 0 0;
              text-align: center; }
              @media screen and (max-width: 768px) {
                .block_3 .seasonalmenu .seasonalmenu_inner ul li.souvenir > p {
                  font-size: 3.0vw; } }
            @media screen and (max-width: 768px) {
              .block_3 .seasonalmenu .seasonalmenu_inner ul li.souvenir ul {
                width: 100%;
                padding: 0 0 10px; } }
            .block_3 .seasonalmenu .seasonalmenu_inner ul li.souvenir ul li {
              padding: 0 0 5px; }
              @media screen and (max-width: 768px) {
                .block_3 .seasonalmenu .seasonalmenu_inner ul li.souvenir ul li {
                  width: 50%;
                  padding: 10px 0 0; } }
          .block_3 .seasonalmenu .seasonalmenu_inner ul li .ill img {
            width: auto;
            max-height: 120px; }
          .block_3 .seasonalmenu .seasonalmenu_inner ul li dl {
            line-height: 1.5;
            letter-spacing: 0;
            /* dd */ }
            .block_3 .seasonalmenu .seasonalmenu_inner ul li dl dt {
              font-size: 16px; }
              @media screen and (max-width: 768px) {
                .block_3 .seasonalmenu .seasonalmenu_inner ul li dl dt {
                  font-size: 2.5vw; } }
            .block_3 .seasonalmenu .seasonalmenu_inner ul li dl dd {
              font-size: 13px; }
              @media screen and (max-width: 768px) {
                .block_3 .seasonalmenu .seasonalmenu_inner ul li dl dd {
                  font-size: 2.0vw; } }
              .block_3 .seasonalmenu .seasonalmenu_inner ul li dl dd strong {
                font-size: 20px;
                font-weight: normal; }
                @media screen and (max-width: 768px) {
                  .block_3 .seasonalmenu .seasonalmenu_inner ul li dl dd strong {
                    font-size: 3.5vw; } }

/* .block_3 */

/*# sourceMappingURL=common.css.map */
