@charset "UTF-8";
@media (min-width: 780px) and (max-width: 1023px) {
  html {
    font-size: 110% !important; } }

@media (min-width: 1024px) and (max-width: 1199px) {
  html {
    font-size: 120% !important; } }

@media (min-width: 1200px) {
  html {
    font-size: 130% !important; } }

/* モバイル時に画像をタップした際に「画像を保存する」などのメニューを表示させないコード */
img {
  touch-callout: none;
  -ms-user-select: none;
      user-select: none;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-touch-callout: none;
  -moz-user-select: none; }

/* color */
html {
  width: 100%; }

body {
  position: relative;
  z-index: 1;
  margin: 0 auto;
  padding: 0;
  width: 100%;
  height: 100%;
  overflow-x: hidden;
  overflow-scrolling: touch;
  -webkit-overflow-scrolling: touch;
  -ms-overflow-scrolling: touch;
  -os-overflow-scrolling: touch; }
  body.none {
    opacity: 0; }

/* 共通記述 ------------------------------------------------------------------*/
#main {
  opacity: 1;
  -webkit-transform: none !important;
          transform: none !important; }

.section {
  -webkit-transform: translate3d(0, 0, 2px);
  transform: translate3d(0, 0, 2px);
  position: relative;
  z-index: 2;
  line-height: 1; }

.action-wrap .main-wrap {
  position: relative;
  margin: 0 auto;
  width: 100%;
  height: 100%; }
  @media screen and (min-width: 1000px) {
    .action-wrap .main-wrap .wrapper {
      max-width: 1024px; } }

.action-wrap .wrapper {
  margin: 0 auto;
  padding: 1.5rem;
  width: 100%;
  height: 100%; }
  @media screen and (min-width: 1000px) {
    .action-wrap .wrapper {
      padding: 5%;
      max-width: 1200px;
      background-color: transparent; } }
  @media screen and (max-width: 750px) {
    .action-wrap .wrapper {
      padding-top: 3rem;
      padding-bottom: 3rem; } }

.action-wrap .section-inner {
  margin: 2rem 0 0;
  width: 100%; }

.action-wrap .ab-cen {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0);
  -webkit-transform: translate3d(-50%, -50%, 0);
  -ms-transform: translate3d(-50%, -50%, 0);
  -os-transform: translate3d(-50%, -50%, 0); }

.action-wrap .section-title {
  padding-left: .5rem;
  font-family: "Open Sans", sans-serif;
  font-weight: bold;
  color: #3e3e3e;
  font-size: 1.3rem;
  line-height: 1.3;
  border-left: 7px solid #ec7070; }
  @media screen and (min-width: 1000px) {
    .action-wrap .section-title {
      font-size: 1.7rem; } }
  .action-wrap .section-title .ruby-title {
    display: block;
    font-family: "Lato", sans-serif;
    font-weight: normal;
    font-size: .6rem;
    color: #3e3e3e;
    letter-spacing: 5px; }
    @media screen and (min-width: 1000px) {
      .action-wrap .section-title .ruby-title {
        font-size: .7rem; } }
  .action-wrap .section-title br {
    line-height: 1; }
  .action-wrap .section-title span {
    font-size: .9rem; }
    @media screen and (min-width: 1000px) {
      .action-wrap .section-title span {
        font-size: 1rem; } }

.action-wrap .section-text {
  font-size: .7rem; }

.action-wrap .images-title {
  left: 10%;
  bottom: 10%;
  display: block;
  padding: .3rem .5rem;
  font-family: "Lato", sans-serif;
  font-weight: bold;
  color: #fff;
  font-size: .8rem;
  text-align: center;
  background-color: #dbc377;
  z-index: 2; }
  @media screen and (min-width: 1000px) {
    .action-wrap .images-title {
      padding: .5rem 1.5rem;
      font-size: .9rem; } }
  .action-wrap .images-title:after {
    position: absolute;
    top: 50%;
    left: 95%;
    transform: translate3d(-50%, -50%, 0);
    -webkit-transform: translate3d(-50%, -50%, 0);
    -ms-transform: translate3d(-50%, -50%, 0);
    -os-transform: translate3d(-50%, -50%, 0);
    content: "\f105";
    font-family: 'FontAwesome';
    font-size: .8rem;
    color: #fff;
    text-align: center;
    display: block; }
    @media screen and (min-width: 1000px) {
      .action-wrap .images-title:after {
        font-size: 1.2rem; } }

.wrapper {
  margin: 0 auto;
  padding: 3rem 1.5rem;
  width: 100%; }
  @media screen and (min-width: 1000px) {
    .wrapper {
      padding: 5%;
      max-width: 1200px; } }

.arrow_gr {
  fill: transparent;
  stroke: #fff;
  stroke-width: 40;
  stroke-miterlimit: 10; }

.link-button {
  padding: .3rem 2rem;
  display: inline-block;
  font-family: "Open Sans", sans-serif;
  font-size: .7rem;
  color: #fff;
  font-weight: bold;
  text-align: center;
  -webkit-transition: all .4s ease-in-out;
  transition: all .4s ease-in-out; }
  .link-button.more {
    border: 1px solid #EC7070;
    background-color: #EC7070; }
    .link-button.more:hover {
      -webkit-transition: all .4s ease-in-out;
      transition: all .4s ease-in-out;
      background-color: #fff;
      color: #EC7070; }
  .link-button.nagoya-link {
    background-color: #fff;
    border: 1px solid #0A2C7E;
    color: #0A2C7E; }
    @media screen and (max-width: 750px) {
      .link-button.nagoya-link {
        margin: 1rem 0 0; } }
    .link-button.nagoya-link:hover {
      -webkit-transition: all .4s ease-in-out;
      transition: all .4s ease-in-out;
      background-color: #0A2C7E;
      border: 1px solid #fff;
      color: #fff; }
  .link-button.event-button {
    background-color: #bc61a3;
    border: 1px solid #bc61a3;
    color: #fff;
    font-size: .6rem; }
    @media screen and (min-width: 1000px) {
      .link-button.event-button {
        margin: 1rem 0 0;
        width: 290px; } }
    .link-button.event-button:hover {
      -webkit-transition: all .3s ease;
      transition: all .3s ease;
      background-color: #fff;
      color: #bc61a3; }
  .link-button.remodal-button {
    position: relative;
    padding: .3rem 0;
    width: 35%;
    border: 1px solid #3e3e3e;
    background-color: #3e3e3e;
    font-size: .6rem;
    color: #fff;
    cursor: pointer;
    -webkit-transition: all .3s ease;
    transition: all .3s ease; }
    @media screen and (min-width: 1000px) {
      .link-button.remodal-button {
        margin: 3rem 1rem 1rem 0; } }
    .link-button.remodal-button svg {
      display: inline-block;
      vertical-align: middle;
      width: 30%; }
      @media screen and (min-width: 1000px) {
        .link-button.remodal-button svg {
          margin-left: .5rem;
          width: 12%; } }
    .link-button.remodal-button:hover {
      -webkit-transition: all .3s ease;
      transition: all .3s ease;
      border: 1px solid #fff;
      background-color: transparent;
      color: #fff; }
      .link-button.remodal-button:hover .arrow_gr {
        -webkit-animation: stroke 1s ease-in-out forwards;
        animation: stroke 1s ease-in-out forwards;
        stroke: #fff;
        stroke-dasharray: 1800;
        stroke-dashoffset: 0;
        stroke-width: 40; }
  .link-button.ticket-button {
    padding: .3rem 3rem;
    font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    background-image: linear-gradient(130deg, #a0d2a2, #b1dabc);
    border-radius: 3px; }
    @media screen and (max-width: 750px) {
      .link-button.ticket-button {
        padding: .3rem 1rem .1rem; } }
    .link-button.ticket-button p {
      font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
      font-weight: bold;
      color: #fff !important;
      font-size: .6rem; }
    .link-button.ticket-button span {
      font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
      display: block;
      font-size: .7rem;
      color: #fff !important;
      font-weight: bold;
      line-height: 1;
      padding-bottom: 3px; }
    .link-button.ticket-button:hover {
      -webkit-transition: all .3s ease;
      transition: all .3s ease;
      background-image: linear-gradient(130deg, #dcdcdc, #dcdcdc); }

.close-button {
  top: 1rem;
  right: 1rem;
  width: 30px;
  height: 30px; }
  @media screen and (min-width: 1000px) {
    .close-button {
      right: 0;
      width: 40px;
      height: 40px; } }
  .close-button img {
    display: block;
    width: 100%;
    height: auto; }

.remodal-overlay {
  z-index: 5;
  -webkit-transform: translate3d(0, 0, 5px);
  transform: translate3d(0, 0, 5px); }

/* 共通記述 ------------------------------------------------------------------*/
/* loading ------------------------------------------------------------------*/
#loading {
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100vh - 50px);
  overflow: hidden;
  position: fixed;
  z-index: 9999;
  background-color: #fff;
  opacity: 1; }
  #loading.fadeout {
    opacity: 0;
    -webkit-transition: all 1s ease-out;
    transition: all 1s ease-out;
    z-index: 0; }
    #loading.fadeout.hidden {
      display: none; }

.loader-wrapper {
  text-align: center; }
  @media screen and (max-width: 750px) {
    .loader-wrapper {
      top: 83%; } }

.loader {
  display: inline-block;
  width: 50px;
  height: 50px;
  border: 2px solid #dbc377;
  border-radius: 50%;
  -webkit-animation: spin 0.75s infinite linear;
          animation: spin 0.75s infinite linear;
  border-top-width: 0; }
  @media screen and (max-width: 750px) {
    .loader {
      width: 25px;
      height: 25px; } }
  .loader:before, .loader:after {
    left: -2px;
    top: -2px;
    display: none;
    position: absolute;
    content: '';
    width: inherit;
    height: inherit;
    border: inherit;
    border-radius: inherit; }

@-webkit-keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
            transform: rotate(0deg); }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg); } }

/* loading ------------------------------------------------------------------*/
/* header ------------------------------------------------------------------*/
header {
  width: 100%;
  height: 100%; }
  header .link-button {
    top: 90%;
    display: inline-block;
    padding: .3rem 1.5rem;
    width: 70%;
    font-family: "Noto Sans Japanese", sans-Serif;
    font-size: .7rem;
    color: #fff;
    background-color: #ec7070;
    text-align: center;
    font-weight: bold;
    border: 1px solid #ec7070;
    -webkit-transition: all .3s ease;
    transition: all .3s ease; }
    @media screen and (min-width: 641px) {
      header .link-button {
        padding: .4rem 2rem;
        width: 30%;
        max-width: 500px;
        font-size: .9rem; } }
    header .link-button:hover {
      background-color: #fff;
      color: #ec7070;
      -webkit-transition: all .3s ease;
      transition: all .3s ease; }
      header .link-button:hover .fa {
        color: #ec7070; }
    header .link-button .fa {
      left: 95%;
      color: #fff; }
    header .link-button span {
      font-size: .6rem; }
      @media screen and (max-width: 640px) {
        header .link-button span {
          font-size: .7rem; } }

.head {
  position: relative;
  z-index: 3;
  width: 100%;
  opacity: 1;
  -webkit-transition: all .5s ease-out;
  transition: all .5s ease-out; }
  .head.fullheight {
    -webkit-transition: all 1s ease-out;
    transition: all 1s ease-out;
    background-color: #B8C3C7; }
  .head.normalheight {
    -webkit-transition: all 1s cubic-bezier(0.6, -0.28, 0.74, 0.05);
    transition: all 1s cubic-bezier(0.6, -0.28, 0.74, 0.05); }
    @media screen and (max-width: 750px) {
      .head.normalheight {
        height: 80px !important; } }
    @media screen and (min-width: 1000px) {
      .head.normalheight {
        height: 145px !important; } }
  .head .image-description {
    top: -50%;
    margin: 0 auto;
    display: block;
    width: 90%;
    max-width: 550px;
    opacity: 0;
    -webkit-transition: all 2s ease-in;
    transition: all 2s ease-in; }
    @media screen and (min-width: 1000px) {
      .head .image-description {
        width: 100%; } }
    .head .image-description.fade {
      top: 50%;
      opacity: 1;
      -webkit-transition: all 2s ease-in;
      transition: all 2s ease-in; }
  .head .endtext {
    top: -50%;
    font-family: "Open Sans", sans-serif;
    font-size: .7rem;
    color: #ec7070;
    text-align: center;
    font-weight: bold;
    opacity: 0;
    -webkit-transition: all 2s ease-in;
    transition: all 2s ease-in; }
    @media screen and (min-width: 641px) {
      .head .endtext {
        font-size: 1rem; } }
    .head .endtext.fade {
      top: 50%;
      opacity: 1;
      -webkit-transition: all 2s ease-in;
      transition: all 2s ease-in; }
  .head .loading-text {
    width: 100%;
    font-family: "YuMincho", "游明朝", serif;
    color: #fff;
    text-align: center;
    line-height: 1;
    text-align: center;
    -webkit-transition: all .3s ease-out;
    transition: all .3s ease-out; }
    .head .loading-text .medium {
      font-size: .8rem; }
      @media screen and (min-width: 1000px) {
        .head .loading-text .medium {
          font-size: 1rem; } }
    .head .loading-text .big {
      font-size: 1rem; }
      @media screen and (min-width: 1000px) {
        .head .loading-text .big {
          font-size: 1.2rem; } }
    .head .loading-text.fade {
      opacity: 0;
      -webkit-transition: all .3s ease-out;
      transition: all .3s ease-out; }
    @media screen and (max-width: 750px) {
      .head .loading-text .word15 {
        display: block !important; } }

.main-header .head {
  opacity: 0;
  -webkit-transition: all .5s ease;
  transition: all .5s ease; }
  .main-header .head.fade {
    opacity: 1;
    -webkit-transition: all .5s ease;
    transition: all .5s ease; }
  @media screen and (min-width: 1000px) {
    .main-header .head img {
      max-width: 490px; } }

@media screen and (min-width: 1000px) {
  .main-header .mainvisual-inner {
    width: 1440px !important; } }

@media screen and (min-width: 1000px) {
  .main-header .mainvisual-inner-sub {
    width: 100% !important; } }

.top-title {
  width: 6%;
  left: 6%;
  z-index: 500;
  top: 10%;
  opacity: 0;
  max-width: 80px;
  -webkit-transition: all 1s ease-in-out 0.5s;
  transition: all 1s ease-in-out 0.5s;
  z-index: 2; }
  .top-title.fade {
    top: 10%;
    opacity: 1; }
    @media screen and (min-width: 1000px) {
      .top-title.fade {
        top: 18%; } }
  @media screen and (max-width: 750px) {
    .top-title {
      width: 14%; } }
  @media only screen and (min-width: 641px) and (max-width: 1024px) {
    .top-title {
      width: 8%; } }
  @media screen and (min-width: 1000px) {
    .top-title {
      left: 7%;
      width: 8%; } }

.mainvisual-inner {
  margin: 0 auto;
  overflow: hidden; }

.mainvisual-inner-sub {
  width: 100%;
  height: 100%; }
  @media screen and (max-width: 750px) {
    .mainvisual-inner-sub {
      min-height: 400px; } }
  @media screen and (min-width: 1000px) {
    .mainvisual-inner-sub {
      width: 100%; } }
  .mainvisual-inner-sub img {
    display: block;
    width: 100%;
    height: auto; }

.parallax-image {
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate3d(-50%, -50%, 0) !important;
  -webkit-transform: translate3d(-50%, -50%, 0) !important;
  -ms-transform: translate3d(-50%, -50%, 0) !important;
  -os-transform: translate3d(-50%, -50%, 0) !important;
  z-index: 1; }
  @media screen and (min-width: 1000px) {
    .parallax-image {
      width: 103%; } }
  .parallax-image img {
    display: block;
    width: 100%; }

.mainthumb01 {
  top: 50%; }
  @media screen and (min-width: 1000px) {
    .mainthumb01 {
      top: 52%; } }
  @media screen and (max-width: 750px) {
    .mainthumb01 {
      top: 0;
      width: 110%; } }
  .mainthumb01 img {
    width: 100%; }
    @media screen and (min-width: 1000px) {
      .mainthumb01 img {
        width: 110%; } }

.mainthumb02 {
  top: 55%; }
  @media screen and (min-width: 1000px) {
    .mainthumb02 {
      top: 0%;
      left: 53%;
      width: 100%; } }

.mainvisual {
  height: 100vh; }
  @media screen and (max-width: 750px) {
    .mainvisual {
      min-height: 400px; } }
  @media screen and (min-width: 1000px) {
    .mainvisual {
      min-height: 900px; } }
  .mainvisual.top-mainvisual {
    background-image: none;
    z-index: 3;
    background-color: transparent; }
  .mainvisual .logo {
    width: 420px;
    max-width: 420px;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
    opacity: 0;
    -webkit-transition: all 1s ease .5s;
    transition: all 1s ease .5s;
    z-index: 2; }
    @media screen and (min-width: 1000px) {
      .mainvisual .logo {
        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%); } }
    .mainvisual .logo.fade {
      left: 50%;
      opacity: 1; }
      @media screen and (max-width: 750px) {
        .mainvisual .logo.fade {
          left: 50%; } }
    @media only screen and (min-width: 641px) and (max-width: 1024px) {
      .mainvisual .logo {
        width: 350px; } }
    @media screen and (max-width: 750px) {
      .mainvisual .logo {
        -webkit-transform: translate(-50%, -50%);
                transform: translate(-50%, -50%);
        width: 170px;
        top: 200px;
        left: 50%; } }

.chimera-wrap {
  top: 10%;
  width: 100%;
  opacity: 0;
  -webkit-transition: all 1s ease .5s;
  transition: all 1s ease .5s;
  z-index: 2; }
  .chimera-wrap.fade {
    opacity: 1;
    -webkit-transition: all 1s ease .5s;
    transition: all 1s ease .5s; }
  .chimera-wrap .logo-wrap {
    margin: 0 auto;
    width: 20%; }
    @media screen and (min-width: 1000px) {
      .chimera-wrap .logo-wrap {
        width: 10%; } }
    .chimera-wrap .logo-wrap .filter {
      background-color: #fff;
      -webkit-filter: blur(5px);
              filter: blur(5px); }
      @media screen and (min-width: 1000px) {
        .chimera-wrap .logo-wrap .filter {
          -webkit-filter: blur(10px);
                  filter: blur(10px); } }
    .chimera-wrap .logo-wrap img {
      position: relative;
      z-index: 6;
      display: block;
      width: 100%;
      height: auto; }
  .chimera-wrap p {
    font-family: "Noto Sans Japanese", sans-Serif;
    font-size: .7rem;
    text-align: center;
    font-weight: bold;
    color: #fff;
    text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.3); }
    @media screen and (min-width: 1000px) {
      .chimera-wrap p {
        font-size: .9rem; } }

.main-description {
  left: 0;
  bottom: 4rem;
  width: 100%;
  line-height: 1;
  text-align: center; }
  @media screen and (min-width: 1000px) {
    .main-description {
      bottom: 10px; } }
  .main-description .campaign-text {
    margin: 0 0 .5rem;
    padding: 2rem 1.5rem;
    font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
    font-size: 1.2rem;
    color: #ec7070;
    font-weight: bold;
    text-align: center;
    background-color: #fff;
    line-height: 1; }
    @media screen and (min-width: 1000px) {
      .main-description .campaign-text {
        display: inline-block;
        font-size: 2rem; } }
    .main-description .campaign-text .day {
      font-size: .9rem; }
      @media screen and (min-width: 1000px) {
        .main-description .campaign-text .day {
          font-size: 1rem; } }
    .main-description .campaign-text .middle {
      font-size: .9rem; }
      @media screen and (min-width: 1000px) {
        .main-description .campaign-text .middle {
          font-size: 1.4rem; } }
    .main-description .campaign-text br {
      line-height: 1; }
    .main-description .campaign-text .cam-title {
      padding: 1rem 0 0;
      display: block;
      font-size: .6rem;
      line-height: 2.2; }
      @media screen and (min-width: 1000px) {
        .main-description .campaign-text .cam-title {
          font-size: .8rem; } }
      @media screen and (max-width: 750px) {
        .main-description .campaign-text .cam-title {
          text-align: left; } }
  .main-description .link-button {
    display: inline-block;
    padding: .3rem 1.5rem;
    font-family: "Noto Sans Japanese", sans-Serif;
    font-size: .7rem;
    color: #fff;
    background-color: #ec7070;
    text-align: center;
    font-weight: bold;
    border: 1px solid #ec7070;
    -webkit-transition: all .3s ease;
    transition: all .3s ease; }
    @media screen and (min-width: 1000px) {
      .main-description .link-button {
        padding: .4rem 2rem;
        font-size: .9rem; } }
    .main-description .link-button:hover {
      background-color: #fff;
      color: #ec7070;
      -webkit-transition: all .3s ease;
      transition: all .3s ease; }
      .main-description .link-button:hover .fa {
        color: #ec7070; }
    .main-description .link-button .fa {
      left: 95%;
      color: #fff; }
  .main-description .main-date {
    margin: 1rem 0 0;
    font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
    font-weight: bold;
    color: #fff;
    font-size: .6rem;
    text-align: center;
    line-height: 1.3;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.5), 0 0 10px rgba(0, 0, 0, 0.5); }
    @media screen and (min-width: 1000px) {
      .main-description .main-date {
        font-size: 1rem;
        text-shadow: 0 0 10px rgba(0, 0, 0, 0.5), 0 0 10px rgba(0, 0, 0, 0.5), 0 0 10px rgba(0, 0, 0, 0.5), 0 0 5px rgba(0, 0, 0, 0.5); } }
    .main-description .main-date span {
      font-size: 1.2rem; }
      @media screen and (min-width: 1000px) {
        .main-description .main-date span {
          font-size: 2rem; } }
    @media screen and (max-width: 750px) {
      .main-description .main-date.english {
        font-size: .8rem; } }
  .main-description .main-venue {
    font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
    font-weight: bold;
    font-size: .7rem;
    color: #fff;
    line-height: 1.3;
    text-align: center;
    text-shadow: 0 0 10px rgba(0, 0, 0, 0.5), 0 0 10px rgba(0, 0, 0, 0.5), 0 0 10px rgba(0, 0, 0, 0.5); }
    @media screen and (min-width: 1000px) {
      .main-description .main-venue {
        font-size: 1.5rem;
        text-shadow: 0 0 10px rgba(0, 0, 0, 0.5), 0 0 10px rgba(0, 0, 0, 0.5), 0 0 10px rgba(0, 0, 0, 0.5), 0 0 5px rgba(0, 0, 0, 0.5); } }
    @media screen and (max-width: 750px) {
      .main-description .main-venue.english {
        font-size: .8rem; } }
  .main-description .main-caution {
    margin: 0 auto;
    margin-top: .7rem;
    padding: 1rem;
    display: inline-block;
    font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
    font-weight: bold;
    font-size: .6rem;
    color: #dc1e1e;
    line-height: 1;
    text-align: center;
    background-color: rgba(255, 255, 255, 0.8); }
    @media screen and (min-width: 1000px) {
      .main-description .main-caution {
        margin-top: 1.6rem;
        font-size: .8rem; } }

/* header ------------------------------------------------------------------*/
/* global-navi ------------------------------------------------------------------*/
#global-navi {
  position: relative;
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  background-color: #fff;
  z-index: 10; }
  #global-navi.fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 5;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    -webkit-transform: translate3d(0, 0, 5px);
    transform: translate3d(0, 0, 5px); }
  #global-navi .wrapper.g-nav {
    padding: 1rem 0;
    max-width: 1200px; }
    @media screen and (min-width: 1000px) {
      #global-navi .wrapper.g-nav {
        padding: 1% 0; } }
  #global-navi .g-nav ul li {
    text-align: center;
    line-height: 1;
    margin-right: 2%;
    padding: 5% 5px;
    color: #000; }
    #global-navi .g-nav ul li:last-child {
      margin-right: 0; }
    #global-navi .g-nav ul li p {
      font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
      font-weight: bold;
      color: #909090;
      font-size: .6rem; }
    #global-navi .g-nav ul li span {
      font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
      display: block;
      font-size: .7rem;
      color: #3e3e3e;
      font-weight: bold;
      line-height: 1;
      padding-bottom: 3px; }
  #global-navi .g-nav.sp ul li {
    margin-right: 5px;
    padding: 3% 5px; }
    #global-navi .g-nav.sp ul li span:after {
      content: '';
      display: inline-block;
      margin-left: 10px;
      -webkit-transform-origin: 0 100%;
              transform-origin: 0 100%;
      -webkit-transform: skewX(-30deg);
              transform: skewX(-30deg);
      width: 1.5px;
      height: 10px;
      background-color: #ddd;
      -webkit-transition: all .25s ease-in-out;
      transition: all .25s ease-in-out; }
    #global-navi .g-nav.sp ul li:nth-last-child(1) {
      margin-right: 0; }
      #global-navi .g-nav.sp ul li:nth-last-child(1) span:after {
        content: none; }
  #global-navi .g-nav.pc ul li {
    padding: 1% 5px;
    margin-right: 0; }
    #global-navi .g-nav.pc ul li:last-child {
      border-right: none; }
    #global-navi .g-nav.pc ul li:after {
      content: '';
      display: inline-block;
      margin-left: 10px;
      margin-bottom: 20px;
      -webkit-transform-origin: 0 100%;
              transform-origin: 0 100%;
      -webkit-transform: skewX(-30deg);
              transform: skewX(-30deg);
      width: 1.5px;
      height: 30px;
      background-color: #ddd;
      -webkit-transition: all .25s ease-in-out;
      transition: all .25s ease-in-out; }
    #global-navi .g-nav.pc ul li:nth-child(1):after {
      content: none; }

/* global-navi ------------------------------------------------------------------*/
/* repoert ------------------------------------------------------------------*/
#report {
  width: 100%;
  background-color: #fff; }
  #report .title {
    font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
    font-size: 1rem;
    font-weight: bold;
    color: #ff6565; }
  #report .wrap-inner {
    margin: 2rem 0 0;
    width: 100%; }
    #report .wrap-inner .section-text {
      font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
      font-size: .7rem;
      color: #3e3e3e; }
    #report .wrap-inner .caution {
      margin: 2rem 0 0;
      font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
      font-size: .65rem;
      font-weight: bold;
      color: #f05252; }

/* repoert ------------------------------------------------------------------*/
/* thumbnaile-wrap ------------------------------------------------------------------*/
#thumbnaile-wrap {
  width: 100%; }

.thumbnaile-container {
  width: 100%; }

.contents-thumb {
  width: 100%;
  height: auto; }
  .contents-thumb:before {
    content: '';
    display: block;
    padding-top: 60%; }

@media screen and (max-width: 750px) {
  .thumb01 {
    background-image: url("../images/thumb01_sp.jpg"); } }

@media screen and (min-width: 1000px) {
  .thumb01 {
    background-image: url("../images/thumb01.jpg"); } }

@media screen and (max-width: 750px) {
  .thumb02 {
    background-image: url("../images/thumb02_sp.jpg"); } }

@media screen and (min-width: 1000px) {
  .thumb02 {
    background-image: url("../images/thumb02.jpg"); } }

@media screen and (max-width: 750px) {
  .thumb03 {
    background-image: url("../images/thumb03_sp.jpg"); } }

@media screen and (min-width: 1000px) {
  .thumb03 {
    background-image: url("../images/thumb03.jpg"); } }

.slick-slider {
  margin-bottom: 0; }

.slick-prev,
.slick-next {
  width: 50px;
  height: 50px;
  z-index: 1;
  background-color: #ec7070; }
  .slick-prev:before,
  .slick-next:before {
    font-family: 'FontAwesome' !important;
    width: 50px;
    height: 50px;
    display: block;
    line-height: 50px;
    font-size: 1.5rem; }

.slick-prev {
  top: 45%;
  left: 0; }
  .slick-prev:before {
    content: "\f104";
    color: #fff; }
  .slick-prev:hover {
    color: #fff;
    background: #ec7070; }

.slick-next {
  top: 45%;
  right: 0; }
  .slick-next:before {
    content: "\f105";
    color: #fff; }
  .slick-next:hover {
    color: #fff;
    background: #ec7070; }

/* thumbnaile-wrap ------------------------------------------------------------------*/
/* concept ------------------------------------------------------------------*/
#concept {
  width: 100%;
  background-image: linear-gradient(130deg, #EC7070, #E38C8C);
  overflow: hidden; }
  #concept .kikyu {
    width: 140%;
    z-index: 1; }
    @media screen and (max-width: 750px) {
      #concept .kikyu {
        left: -10rem;
        bottom: -6rem;
        opacity: .4; } }
    @media screen and (min-width: 1000px) {
      #concept .kikyu {
        right: -14rem;
        bottom: -13rem;
        width: 50%;
        opacity: .4; } }
  #concept .wrapper {
    position: relative;
    z-index: 3; }
    @media screen and (min-width: 1000px) {
      #concept .wrapper {
        padding: 9rem 0; } }
  #concept .main-section-title {
    text-align: center;
    font-family: "Open Sans", sans-serif;
    font-size: 1.2rem;
    font-weight: bold;
    color: #fff; }
    #concept .main-section-title img {
      margin: 0 auto;
      display: block;
      width: 20%;
      height: auto; }
      @media screen and (min-width: 1000px) {
        #concept .main-section-title img {
          width: 13%; } }
    #concept .main-section-title span {
      font-family: "Open Sans", sans-serif;
      font-size: .6rem;
      font-weight: bold;
      color: #fff;
      display: block; }
      @media screen and (min-width: 1000px) {
        #concept .main-section-title span {
          font-size: .8rem; } }
    @media screen and (min-width: 1000px) {
      #concept .main-section-title {
        font-size: 1.8rem; } }
  #concept .main-copy {
    font-family: "Open Sans", sans-serif;
    font-size: 1rem;
    font-weight: bold;
    color: #fff;
    text-align: left; }
  #concept .section-text {
    margin: 1.5rem 0 0;
    font-family: "Noto Sans Japanese", sans-Serif;
    font-size: .7rem;
    font-weight: 500;
    line-height: 1.8;
    color: #fff;
    text-align: left;
    text-shadow: 0px 0px 3px rgba(0, 0, 0, 0.42); }

@media screen and (min-width: 1000px) {
  .text-wrap {
    margin: 0 1.5rem 0 0; } }

@media screen and (min-width: 1000px) {
  .movie-wrap {
    margin: 0 0 0 1.5rem; } }

.youtube-spot {
  width: 100%;
  height: auto; }
  @media screen and (max-width: 750px) {
    .youtube-spot {
      margin: 3rem 0 0; } }
  .youtube-spot:before {
    content: '';
    display: block;
    padding-top: 56.25%; }

/* concept ------------------------------------------------------------------*/
/* contents ------------------------------------------------------------------*/
#contents {
  width: 100%; }

.contents-wrap {
  padding: 3rem 0;
  width: 100%; }
  @media screen and (min-width: 1000px) {
    .contents-wrap {
      padding: 5rem 9rem; } }
  .contents-wrap.normal {
    background-image: url("../images/ticket01.jpg"); }
  .contents-wrap.special {
    background-image: url("../images/ticket02.jpg"); }

.c-01 .content-title {
  color: #dd9e48; }

.c-02 .content-thumb {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2; }

.c-02 .content-text-wrap {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1; }

.c-02 .content-title {
  color: #9d2c5b; }

.c-03 .content-title {
  color: #8e33b8; }

.c-04 .content-thumb {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2; }

.c-04 .content-text-wrap {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1; }

.c-04 .content-title {
  color: #81afd9; }

.c-05 .content-title {
  color: #4a20a4; }

.c-06 .content-thumb {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2; }

.c-06 .content-text-wrap {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1; }

.c-06 .content-title {
  color: #ecbb51; }

.c-07 .content-title {
  color: #5634f7; }

.c-08 .content-thumb {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2; }

.c-08 .content-text-wrap {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1; }

.c-08 .content-title {
  color: #aed9b0; }

.c-09 .content-title {
  color: #8acac5; }

.c-10 .content-thumb {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2; }

.c-10 .content-text-wrap {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1; }

.c-10 .content-title {
  color: #582c2e; }

.content-wrap {
  margin: 0 auto;
  margin-top: 5rem;
  width: 90%;
  -webkit-box-shadow: 7px 7px 20px rgba(0, 0, 0, 0.4);
          box-shadow: 7px 7px 20px rgba(0, 0, 0, 0.4); }
  @media screen and (min-width: 1000px) {
    .content-wrap {
      width: 100%; } }
  .content-wrap:nth-child(1) {
    margin-top: 0; }
  .content-wrap .content-thumb {
    width: 100%;
    height: auto; }
    .content-wrap .content-thumb:before {
      content: '';
      display: block;
      padding-top: 60%; }
  .content-wrap .content-text-wrap {
    padding: 1.5rem;
    width: 100%;
    background-color: #fff; }
    @media screen and (min-width: 1000px) {
      .content-wrap .content-text-wrap {
        padding: 2.5rem; } }
    .content-wrap .content-text-wrap small {
      font-family: "Noto Sans Japanese", sans-Serif;
      font-size: .65rem;
      color: #3e3e3e;
      letter-spacing: 5px;
      text-indent: -5px;
      font-weight: normal; }
    .content-wrap .content-text-wrap .content-title {
      font-family: "Open Sans", sans-serif;
      font-size: 1.1rem;
      font-weight: bold;
      line-height: 1; }
      @media screen and (min-width: 1000px) {
        .content-wrap .content-text-wrap .content-title {
          font-size: 1.1rem; } }
    .content-wrap .content-text-wrap .section-text {
      padding: 1rem 0 0;
      font-family: "Noto Sans Japanese", sans-Serif;
      font-size: .7rem;
      font-weight: normal;
      line-height: 2.2;
      color: #3e3e3e; }
      @media screen and (min-width: 1000px) {
        .content-wrap .content-text-wrap .section-text {
          font-size: .7rem; } }
    .content-wrap .content-text-wrap .collabo-text {
      padding: 1.5rem 0 0;
      font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
      font-size: .7rem;
      color: #3e3e3e;
      font-weight: normal;
      line-height: 2.2; }
      @media screen and (min-width: 1000px) {
        .content-wrap .content-text-wrap .collabo-text {
          padding: 2rem 0 0;
          font-size: .7rem; } }
      .content-wrap .content-text-wrap .collabo-text span {
        padding: 0 0 .5rem;
        display: block;
        font-weight: bold; }
        @media screen and (min-width: 1000px) {
          .content-wrap .content-text-wrap .collabo-text span {
            padding: 0 0 1rem; } }
      .content-wrap .content-text-wrap .collabo-text img {
        padding: 0 5px 0 0;
        width: 100px;
        float: left; }
        @media screen and (min-width: 1000px) {
          .content-wrap .content-text-wrap .collabo-text img {
            width: 130px; } }
    .content-wrap .content-text-wrap .caution {
      padding: 1rem 0 0;
      font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
      font-size: .6rem;
      color: #ce6565;
      font-weight: bold; }
      @media screen and (min-width: 1000px) {
        .content-wrap .content-text-wrap .caution {
          padding: 1rem 0 0;
          font-size: .65rem; } }

@media screen and (max-width: 750px) {
  .content01 {
    background-image: url("../images/contents/sp/01.jpg"); } }

@media screen and (min-width: 1000px) {
  .content01 {
    background-image: url("../images/contents/pc/01.jpg"); } }

@media screen and (max-width: 750px) {
  .content02 {
    background-image: url("../images/contents/sp/02.jpg"); } }

@media screen and (min-width: 1000px) {
  .content02 {
    background-image: url("../images/contents/pc/02.jpg"); } }

@media screen and (max-width: 750px) {
  .content03 {
    background-image: url("../images/contents/sp/03.jpg"); } }

@media screen and (min-width: 1000px) {
  .content03 {
    background-image: url("../images/contents/pc/03.jpg"); } }

@media screen and (max-width: 750px) {
  .content04 {
    background-image: url("../images/contents/sp/04.jpg"); } }

@media screen and (min-width: 1000px) {
  .content04 {
    background-image: url("../images/contents/pc/04.jpg"); } }

@media screen and (max-width: 750px) {
  .content05 {
    background-image: url("../images/contents/sp/05.jpg"); } }

@media screen and (min-width: 1000px) {
  .content05 {
    background-image: url("../images/contents/pc/05.jpg"); } }

@media screen and (max-width: 750px) {
  .content06 {
    background-image: url("../images/contents/sp/06.jpg"); } }

@media screen and (min-width: 1000px) {
  .content06 {
    background-image: url("../images/contents/pc/06.jpg"); } }

@media screen and (max-width: 750px) {
  .content07 {
    background-image: url("../images/contents/sp/07.jpg"); } }

@media screen and (min-width: 1000px) {
  .content07 {
    background-image: url("../images/contents/pc/07.jpg"); } }

@media screen and (max-width: 750px) {
  .content08 {
    background-image: url("../images/contents/sp/08.jpg"); } }

@media screen and (min-width: 1000px) {
  .content08 {
    background-image: url("../images/contents/pc/08.jpg"); } }

@media screen and (max-width: 750px) {
  .content09 {
    background-image: url("../images/contents/sp/s-01.jpg"); } }

@media screen and (min-width: 1000px) {
  .content09 {
    background-image: url("../images/contents/pc/s-01.jpg"); } }

@media screen and (max-width: 750px) {
  .content10 {
    background-image: url("../images/contents/sp/s-02.jpg"); } }

@media screen and (min-width: 1000px) {
  .content10 {
    background-image: url("../images/contents/pc/s-02.jpg"); } }

/* contents ------------------------------------------------------------------*/
/* other ------------------------------------------------------------------*/
#other {
  width: 100%;
  background-color: #8AB29F; }

.other-wrap {
  width: 100%; }
  @media screen and (min-width: 1000px) {
    .other-wrap {
      width: calc(50% - 1rem); } }
  .other-wrap:nth-last-child(1) {
    margin: 2rem 0 0; }
    @media screen and (min-width: 1000px) {
      .other-wrap:nth-last-child(1) {
        margin: 0 0 0 1rem; } }
  .other-wrap .comming-soon {
    width: 100%;
    background-color: rgba(236, 112, 112, 0.85); }
    .other-wrap .comming-soon p {
      font-family: "Open Sans", sans-serif;
      font-size: 1rem;
      color: #fff;
      font-weight: bold;
      text-align: center; }
      @media screen and (min-width: 1000px) {
        .other-wrap .comming-soon p {
          font-size: 1.3rem; } }

.other-thumb {
  width: 100%;
  height: auto;
  background-color: #fff; }
  .other-thumb:before {
    content: '';
    display: block;
    padding-top: 60%; }
  .other-thumb:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.45); }
  .other-thumb p {
    font-family: "Open Sans", sans-serif;
    font-size: 2rem;
    font-weight: bold;
    text-align: center;
    color: #fff;
    z-index: 3; }

.o-thumb01 {
  background-image: url("../images/sweetsmap_oms.png"); }

.o-thumb02 {
  background-image: url("../images/marche01.jpg"); }

.other-text-wrap {
  padding: 1rem;
  width: 100%;
  background-color: #fff;
  text-align: center; }
  .other-text-wrap .section-text {
    font-family: "Noto Sans Japanese", sans-Serif;
    font-size: .7rem;
    font-weight: normal;
    line-height: 2.2;
    text-align: left; }
  .other-text-wrap .caution {
    padding: 1rem 0 0;
    font-family: "Noto Sans Japanese", sans-Serif;
    font-size: .6rem;
    color: red;
    font-weight: bold;
    text-align: left; }
  .other-text-wrap .link-button {
    margin: 1.5rem 0 0;
    cursor: pointer; }

.map-remodal {
  max-width: 980px; }
  .map-remodal .remodal-close {
    top: -2rem;
    right: .5rem;
    left: inherit;
    width: 20px;
    height: 20px;
    color: #fff;
    z-index: 2;
    -webkit-transform: translate3d(0, 0, 2px);
    transform: translate3d(0, 0, 2px); }
    @media screen and (min-width: 1000px) {
      .map-remodal .remodal-close {
        top: .5rem;
        right: .5rem;
        width: 20px;
        height: 20px;
        color: #3e3e3e; } }
    .map-remodal .remodal-close:before {
      font-family: 'icomoon' !important;
      content: '\e900';
      line-height: 20px;
      width: 20px;
      font-size: 20px;
      font-weight: 600; }
      @media screen and (min-width: 1000px) {
        .map-remodal .remodal-close:before {
          line-height: 20px;
          width: 20px;
          font-size: 20px; } }

.map-wrapper {
  width: 100%;
  height: 100%; }
  @media screen and (min-width: 1000px) {
    .map-wrapper {
      padding: 30px; } }
  .map-wrapper img {
    display: block;
    width: 100%;
    height: auto; }

/* other ------------------------------------------------------------------*/
/* outline ------------------------------------------------------------------*/
@media screen and (min-width: 1000px) {
  #outline {
    padding-top: 3.5%;
    padding-bottom: 3.5%; } }

@media screen and (max-width: 750px) {
  #outline .main-wrap .wrapper {
    background-color: transparent; } }

#outline .section-title {
  z-index: 2; }

#outline .outline-table {
  width: 100%;
  z-index: 2; }

.outline-table table {
  width: 100%; }
  .outline-table table.pc {
    margin: 0 1rem 0 0;
    width: 49%; }
  .outline-table table.pc02 {
    margin: 0 0 0 1rem; }
  .outline-table table .first_table {
    padding-top: 0; }
  .outline-table table.english {
    margin: 0; }
    @media screen and (min-width: 1000px) {
      .outline-table table.english {
        width: 48%; } }
    @media screen and (max-width: 750px) {
      .outline-table table.english {
        table-layout: fixed; } }
    .outline-table table.english th {
      word-wrap: break-word; }
  @media screen and (min-width: 1000px) {
    .outline-table table.en-first {
      padding-right: 1%;
      border-right: 1px solid #ececec; } }
  @media screen and (min-width: 1000px) {
    .outline-table table.en-second {
      padding-left: 1%; } }

.outline-table th {
  padding: 2rem 0 0;
  font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
  font-weight: normal;
  font-size: .6rem;
  color: #3e3e3e;
  letter-spacing: 1px;
  text-align: left;
  width: 24%;
  vertical-align: top; }
  @media screen and (min-width: 1000px) {
    .outline-table th {
      padding-top: 2rem;
      font-size: .7rem; } }

.outline-table td {
  padding-top: 2rem;
  padding-left: .5rem;
  font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
  font-size: .7rem;
  color: #3e3e3e;
  vertical-align: top;
  word-break: break-all;
  -webkit-word-break: break-all; }
  @media screen and (min-width: 1000px) {
    .outline-table td {
      padding-top: 2rem;
      font-size: .8rem; } }
  .outline-table td span {
    font-size: .8rem; }
  .outline-table td .fa {
    padding-right: .5rem; }
  .outline-table td .sw-button {
    margin: 0;
    margin-top: .5rem;
    width: 90%;
    font-size: .7rem;
    text-align: center; }
    @media screen and (min-width: 1000px) {
      .outline-table td .sw-button {
        margin-top: 3%;
        width: 60%; } }
    .outline-table td .sw-button .fa {
      padding-right: 0;
      padding-left: .5rem;
      font-size: .7rem; }
  .outline-table td .table-sns {
    font-weight: bold;
    color: #ec7070; }

.contact-wrapper {
  margin: 3rem 0 0; }
  @media screen and (min-width: 1000px) {
    .contact-wrapper {
      margin: 10% 0 0; } }
  .contact-wrapper .contact-container {
    width: 100%; }
    @media screen and (min-width: 1000px) {
      .contact-wrapper .contact-container {
        width: 49%; } }

.contact-inner {
  width: 100%; }
  .contact-inner .contact-title {
    font-family: "Lato", sans-serif;
    font-size: 1rem;
    color: #3e3e3e; }
    @media screen and (min-width: 1000px) {
      .contact-inner .contact-title {
        font-size: .9rem; } }
    @media screen and (min-width: 1000px) {
      .contact-inner .contact-title.last {
        margin: 1rem 0 0; } }

.contact-link {
  margin: 1rem 0 0;
  padding: 1rem;
  display: inline-block;
  font-family: "Lato", sans-serif;
  font-weight: bold;
  font-size: .8rem;
  line-height: 1.2;
  color: #3e3e3e;
  background-color: #f9f9f9; }
  @media screen and (min-width: 1000px) {
    .contact-link {
      padding: .5rem 1rem; } }
  .contact-link .fa {
    font-size: 1rem; }

.question-wrapper {
  margin: 3rem 0 0;
  width: 100%; }

.question-wrap {
  width: 100%; }

.question-inner {
  width: 100%; }
  .question-inner .question-col {
    margin: 0 auto; }
    .question-inner .question-col:nth-child(2) {
      margin: 2rem 0; }

.q-col-inner {
  margin: .5rem 0;
  width: 100%; }
  @media screen and (min-width: 1000px) {
    .q-col-inner {
      line-height: 1; } }
  .q-col-inner .text-q {
    display: inline-block;
    vertical-align: middle;
    padding-right: .5rem;
    font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
    font-weight: bold;
    font-size: 1.5rem;
    color: #dbc377;
    width: 10%; }
    @media screen and (min-width: 1000px) {
      .q-col-inner .text-q {
        font-size: 2.5rem;
        line-height: 1.3; } }
  .q-col-inner .col-q {
    display: inline-block;
    vertical-align: middle;
    padding-left: .5rem;
    font-family: "Lato", sans-serif;
    font-size: .7rem;
    color: #3e3e3e;
    width: 86%;
    border-left: 2px solid #e5e3e8; }
    @media screen and (min-width: 1000px) {
      .q-col-inner .col-q {
        font-size: .9rem; } }

/* outline ------------------------------------------------------------------*/
/* event ------------------------------------------------------------------*/
#event {
  width: 100%; }
  #event .wrapper {
    max-width: 1024px; }
  #event .main-text {
    margin: 2rem 0 0;
    font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
    color: #3e3e3e;
    line-height: 2.2; }
    @media screen and (min-width: 1000px) {
      #event .main-text {
        margin: 3rem 0 0;
        font-size: .8rem; } }
  #event .cal_wrapper {
    min-width: 250px;
    margin: 2.0833% auto;
    padding-top: 60px; }
  #event .googlecal {
    position: relative;
    padding-bottom: 100%;
    height: 0;
    overflow: hidden; }
  #event iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important; }

.event-list {
  margin: 0 auto;
  width: 100%; }
  .event-list ul {
    width: 100%; }
  .event-list .eventlist-item {
    margin: 1.5rem 0 0;
    width: 100%;
    border: 5px solid #b8c3c7; }
    @media screen and (min-width: 1000px) {
      .event-list .eventlist-item {
        margin: 2rem 0 0;
        width: calc(50% - 1rem); } }

.event-item {
  width: 100%;
  text-align: right; }
  .event-item .event-title {
    font-family: "Open Sans", sans-serif;
    font-size: .8rem;
    color: #fff;
    font-weight: bold;
    text-align: center;
    z-index: 1; }
    @media screen and (min-width: 1000px) {
      .event-item .event-title {
        letter-spacing: 2px; } }
    .event-item .event-title span {
      font-size: .7rem; }
  .event-item a {
    z-index: 1; }

.event-title-wrap {
  z-index: 1;
  text-align: center; }

.event-thumb {
  position: relative;
  width: 100%;
  height: auto; }
  .event-thumb:before {
    content: '';
    display: block;
    padding-top: 30%; }
    @media screen and (max-width: 750px) {
      .event-thumb:before {
        padding-top: 45%; } }
  .event-thumb:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4); }

.event01 {
  background-image: url("../images/event/event05.png"); }

.event02 {
  background-image: url("../images/event/event01.jpg"); }

.event03 {
  background-image: url("../images/goods/goods07.jpg"); }

.event04 {
  background-image: url("../images/event/event08.jpg"); }

.event05 {
  background-image: url(../images/event/event03.jpg); }

.event06 {
  background-image: url("../images/thumb01.jpg"); }

.event07 {
  background-image: url("../images/event/event04.jpg"); }

.event08 {
  background-image: url("../images/event/event06.jpg"); }

.event09 {
  background-image: url("../images/event/event02.jpg"); }

.event10 {
  background-image: url("../images/event/event09.jpg"); }

.cal-square {
  top: 0;
  right: 0;
  width: 30px;
  height: 30px;
  border-radius: 3px;
  border: 3px solid #fff; }

.e-square01 {
  background-color: #B5515D; }

.e-square03 {
  background-color: #41A587; }

.e-square04 {
  background-color: #668CB3; }

.e-square05 {
  background-color: #D47F1E; }

.e-square06 {
  background-color: #E0C240; }

.e-square07 {
  background-color: #C4A883; }

.e-square08 {
  background-color: #E0C240; }

.e-square09 {
  background-color: #603F99; }

.e-square10 {
  background-color: #e67399; }

.e-close {
  padding: .3rem 1rem;
  width: auto;
  height: 40px;
  font-family: "Open Sans", sans-serif;
  font-size: .7rem;
  font-weight: bold;
  color: #fff;
  background-color: #b9b9b9; }
  @media screen and (max-width: 750px) {
    .e-close {
      height: 33px;
      font-size: .6rem; } }

/* remodal */
@media screen and (max-width: 750px) {
  .event-remodal {
    width: 90%; } }

.event-remodal .remodal-close {
  width: 30px;
  height: 30px;
  color: #3e3e3e !important; }
  .event-remodal .remodal-close:before {
    width: 30px !important;
    height: 30px !important;
    line-height: 30px !important; }

.remodal-wrap {
  padding: 1rem;
  width: 100%; }
  @media screen and (min-width: 1000px) {
    .remodal-wrap {
      padding: 1rem; } }
  .remodal-wrap .r-title {
    position: relative;
    display: inline-block;
    font-family: "Open Sans", sans-serif;
    color: #3e3e3e;
    line-height: 1;
    font-size: 1rem;
    z-index: 2;
    font-weight: bold;
    text-align: center; }
    @media screen and (min-width: 1000px) {
      .remodal-wrap .r-title {
        font-size: 1.2rem; } }
    .remodal-wrap .r-title:after {
      position: absolute;
      bottom: 0;
      left: 0;
      z-index: -1;
      content: '';
      width: 100%;
      height: 5px;
      background-color: #E38C8C; }
    .remodal-wrap .r-title span {
      font-size: .7rem; }
      @media screen and (min-width: 1000px) {
        .remodal-wrap .r-title span {
          font-size: .9rem; } }
  .remodal-wrap img {
    display: block;
    margin: 0 auto;
    margin-top: 2rem;
    width: 60%;
    max-width: 100%; }
    @media screen and (min-width: 1000px) {
      .remodal-wrap img {
        margin-top: 3rem; } }
  .remodal-wrap .section-text {
    margin: 2rem 0 0;
    font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
    font-size: .7rem;
    color: #3e3e3e;
    text-align: left; }
    .remodal-wrap .section-text .outline {
      font-weight: bold; }
      @media screen and (max-width: 750px) {
        .remodal-wrap .section-text .outline {
          font-size: .6rem; } }
  .remodal-wrap .e-caution {
    font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
    font-size: .6rem;
    color: #bababa;
    text-align: left; }
  .remodal-wrap .event-button {
    margin: 1rem 0 .5rem; }
    @media screen and (min-width: 1000px) {
      .remodal-wrap .event-button {
        margin: 1rem 0 .5rem; } }

.collabo-wrap {
  margin: 2rem 0 0;
  padding: .5rem;
  width: 100%;
  border-radius: 3px;
  background-color: #ddd; }
  @media screen and (min-width: 1000px) {
    .collabo-wrap {
      margin: 3rem 0 0;
      padding: 1.5rem; } }
  .collabo-wrap .c-title {
    font-family: "Open Sans", sans-serif;
    font-size: .8rem;
    color: #3e3e3e;
    font-weight: bold; }
    @media screen and (min-width: 1000px) {
      .collabo-wrap .c-title {
        font-size: 1rem; } }
    .collabo-wrap .c-title span {
      color: #436072; }
  .collabo-wrap .c-logo {
    display: block;
    margin: 0 auto;
    margin-top: 1.5rem;
    width: auto;
    height: 50px; }
    @media screen and (min-width: 1000px) {
      .collabo-wrap .c-logo {
        margin-top: 2rem;
        height: 40px; } }
  .collabo-wrap .c-text {
    margin: 1rem 0 0;
    font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
    color: #3e3e3e;
    font-size: .6rem;
    text-align: left; }

/* event ------------------------------------------------------------------*/
/* about ------------------------------------------------------------------*/
.direc-wrap {
  margin: 5% 0 0;
  width: 100%; }
  @media screen and (max-width: 750px) {
    .direc-wrap {
      margin-top: 2rem; } }
  .direc-wrap:nth-child(1) {
    margin: 0; }

.dir-thumb-wrap {
  width: 100%;
  height: auto; }
  @media screen and (min-width: 1000px) {
    .dir-thumb-wrap {
      width: 40%; } }
  .dir-thumb-wrap:before {
    content: '';
    display: block;
    padding-top: 56.25%; }
  .dir-thumb-wrap .dir-thumb {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.dir-text-wrap {
  padding: .5rem 0;
  width: 100%; }
  @media screen and (min-width: 1000px) {
    .dir-text-wrap {
      padding: 0 3%;
      width: 60%; } }
  .dir-text-wrap .job {
    font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
    font-style: italic;
    color: #585858;
    font-size: .8rem; }
    @media screen and (min-width: 1000px) {
      .dir-text-wrap .job {
        font-size: .9rem; } }
  .dir-text-wrap .name {
    font-family: "Lato", sans-serif;
    font-weight: bold;
    font-size: 1rem;
    color: #3e3e3e; }
    @media screen and (min-width: 1000px) {
      .dir-text-wrap .name {
        font-size: 1.2rem; } }
  .dir-text-wrap .ruby {
    font-family: "Lato", sans-serif;
    font-size: .7rem;
    color: #3e3e3e;
    letter-spacing: 10px; }
    @media screen and (min-width: 1000px) {
      .dir-text-wrap .ruby {
        font-size: .8rem; } }
  .dir-text-wrap .dir-text {
    padding: 1rem 0 0;
    font-family: "Lato", sans-serif;
    font-size: .7rem;
    color: #3e3e3e; }
  @media screen and (min-width: 1000px) {
    .dir-text-wrap .naked-info {
      margin: 3% 0 0; } }
  .dir-text-wrap .images-title {
    left: inherit;
    bottom: inherit;
    margin: 1rem 0 0;
    display: block; }
    @media screen and (min-width: 1000px) {
      .dir-text-wrap .images-title {
        top: inherit;
        left: inherit;
        margin: 0;
        padding: .5rem 1.5rem;
        display: inline-block;
        font-size: .8rem; } }

.direction-sns {
  padding: .5rem 0;
  width: 100%; }
  @media screen and (min-width: 1000px) {
    .direction-sns {
      padding: 3% 0 0; } }
  .direction-sns .directionUl {
    width: 100%; }
    @media screen and (min-width: 1000px) {
      .direction-sns .directionUl {
        line-height: 1; } }
    .direction-sns .directionUl li {
      display: inline-block;
      padding: .5rem .3rem;
      width: 48%;
      line-height: 1;
      text-align: left; }
      @media screen and (min-width: 1000px) {
        .direction-sns .directionUl li {
          padding: 0 1rem 0 0;
          line-height: 1;
          width: 30%; } }
      .direction-sns .directionUl li a {
        line-height: 1; }
        .direction-sns .directionUl li a p {
          display: inline-block;
          vertical-align: middle;
          font-family: "Lato", sans-serif;
          font-size: .7rem;
          color: #3e3e3e;
          line-height: 1; }
          @media screen and (min-width: 1000px) {
            .direction-sns .directionUl li a p {
              line-height: 1; } }
      .direction-sns .directionUl li .fa {
        padding-right: .5rem;
        vertical-align: middle;
        color: #3e3e3e;
        line-height: 1;
        font-size: 1.2rem; }
        @media screen and (min-width: 1000px) {
          .direction-sns .directionUl li .fa {
            font-size: 1rem; } }

.directionUl li .icon-line-square {
  padding-right: .5rem;
  display: inline-block;
  vertical-align: middle;
  font-size: 18px;
  color: #3e3e3e;
  line-height: 1; }
  @media screen and (min-width: 1000px) {
    .directionUl li .icon-line-square {
      font-size: 15px; } }

.naked-collection {
  margin: 0 auto;
  margin-top: 5%;
  width: 100%; }

.ceo {
  background-image: url("../images/ceo.png");
  background-position: top center; }

.naked {
  background-image: url("../images/color-logo.jpg"); }

.chimera {
  background-image: url("../images/chimera_logo.svg");
  background-size: 40%; }

/* about ------------------------------------------------------------------*/
/* footer ------------------------------------------------------------------*/
footer {
  padding: 3rem 1rem;
  width: 100%;
  background-color: #b8c3c7; }
  @media screen and (min-width: 1000px) {
    footer {
      padding: 5rem 0; } }

.social-wrap {
  width: 100%; }
  .social-wrap .section-sub-title {
    font-family: "Open Sans", sans-serif;
    font-weight: bold;
    color: #fff;
    font-size: 1.3rem;
    z-index: 2;
    text-align: center; }
    @media screen and (min-width: 1000px) {
      .social-wrap .section-sub-title {
        padding: 0;
        font-size: 2rem; } }
  .social-wrap .ruby-title {
    display: block;
    font-family: "Lato", sans-serif;
    font-weight: normal;
    font-size: .6rem;
    color: #fff;
    letter-spacing: 5px;
    text-align: center; }
    @media screen and (min-width: 1000px) {
      .social-wrap .ruby-title {
        font-size: .8rem; } }

.share-button {
  text-align: center; }
  @media screen and (min-width: 1000px) {
    .share-button {
      margin: 3rem 0 0; } }

.sns-inner {
  margin: 3rem 0;
  width: 100%;
  z-index: 2; }
  @media screen and (min-width: 1000px) {
    .sns-inner {
      margin: 2rem 0 0; } }
  .sns-inner a {
    padding: .5rem;
    width: 30%;
    font-family: "Lato", sans-serif;
    font-weight: bold;
    font-size: .8rem;
    color: #fff;
    text-align: center;
    box-sizing: border-box;
    -webkit-box-sizing: border-box; }
    @media screen and (min-width: 1000px) {
      .sns-inner a {
        width: 15%;
        font-size: .7rem; } }
    .sns-inner a.in {
      background-color: #3f729b; }
    .sns-inner a.fb {
      margin: 0 .7rem;
      background-color: #305097; }
    .sns-inner a.tw {
      background-color: #00aced; }
    .sns-inner a .fa {
      font-size: .8rem;
      color: #fff; }
      @media screen and (min-width: 1000px) {
        .sns-inner a .fa {
          font-size: 1.1rem; } }

/* footer ------------------------------------------------------------------*/
/* ticket ------------------------------------------------------------------*/
#ticket {
  background-image: linear-gradient(280deg, #E9EFF2, #B6C1C7); }
  #ticket .second-title {
    font-family: "Open Sans", sans-serif;
    font-size: 1rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    letter-spacing: 5px;
    text-indent: -5px; }
    @media screen and (min-width: 1000px) {
      #ticket .second-title {
        font-size: 1.8rem; } }

.ticket-caution-wrap .caution {
  display: block;
  font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
  font-size: .7rem;
  font-weight: bold;
  color: red; }

.ticket-caution-wrap .description {
  padding: 1rem 0 0;
  font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
  font-size: .7rem;
  font-weight: normal;
  color: #3e3e3e; }

@media screen and (min-width: 1000px) {
  .pc_ticket-wrapper {
    margin: 0 auto;
    width: 100%; } }

@media screen and (min-width: 1000px) {
  .ticket-info-wrap {
    width: 100%; } }

.ticket-inner {
  width: 100%; }
  @media screen and (min-width: 1000px) {
    .ticket-inner {
      width: 100%; } }

.ticket-head {
  width: 100%; }
  @media screen and (min-width: 1000px) {
    .ticket-head {
      display: inline-block;
      vertical-align: bottom;
      width: 100%; } }
  .ticket-head .ticket-heading {
    font-family: "Open Sans", sans-serif;
    color: #3e3e3e;
    font-weight: bold;
    font-size: 1.1rem; }
    @media screen and (min-width: 1000px) {
      .ticket-head .ticket-heading {
        font-size: 1.2rem; } }
  .ticket-head .ticket-text {
    padding: 1rem 0 0;
    font-family: "Lato", sans-serif;
    color: #3e3e3e;
    font-size: .7rem; }

.limitation {
  margin: 2rem 0 0;
  padding: .5rem;
  width: 100%;
  background-color: #fff; }
  @media screen and (min-width: 1000px) {
    .limitation {
      padding: 1.5rem; } }
  .limitation .caution {
    margin: 1.5rem 0 0;
    font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
    font-size: .65rem;
    color: #f75050;
    font-weight: bold; }

.ticket-heading {
  font-family: "Open Sans", sans-serif;
  color: #3e3e3e;
  font-weight: bold;
  font-size: 1rem; }
  @media screen and (min-width: 1000px) {
    .ticket-heading {
      font-size: 1.2rem; } }

.limitation-wrap {
  margin: 1rem 0 0;
  width: 100%; }
  @media screen and (min-width: 1000px) {
    .limitation-wrap {
      margin: 2rem 0 0; } }

.nagoya-wrap {
  background-color: #0A2C7E; }
  .nagoya-wrap .ticket-heading {
    text-align: center;
    color: #fff; }
    @media screen and (min-width: 1000px) {
      .nagoya-wrap .ticket-heading {
        text-align: left; } }
    .nagoya-wrap .ticket-heading img {
      display: block;
      margin: 0 auto;
      width: 60%;
      height: 100%; }
      @media screen and (min-width: 1000px) {
        .nagoya-wrap .ticket-heading img {
          display: inline-block;
          vertical-align: middle;
          margin-right: 1rem;
          width: 25%;
          height: 100%; } }
  .nagoya-wrap .flex-text-inner {
    width: 100%; }
  .nagoya-wrap .limitation-text-wrap {
    width: 100%; }
    @media screen and (min-width: 1000px) {
      .nagoya-wrap .limitation-text-wrap {
        margin: 2rem 0 0; } }
  .nagoya-wrap .section-text span {
    margin: 0;
    font-family: "Sawarabi Mincho", serif;
    font-size: .8rem;
    color: #fff;
    text-shadow: 0px 0px 10px #FFD700, 0px 0px 10px #FFD700; }
  .nagoya-wrap .section-text img {
    float: left;
    width: 110px; }
    @media screen and (min-width: 1000px) {
      .nagoya-wrap .section-text img {
        margin: 0 1rem .5rem 0;
        width: 260px; } }
  .nagoya-wrap .about-sp {
    margin: 1.5rem 0 0;
    font-family: "Sawarabi Mincho", serif;
    font-size: .7rem;
    color: #fff;
    text-shadow: 0px 0px 10px #FFD700, 0px 0px 10px #FFD700; }
  .nagoya-wrap .text-inner {
    margin: 2rem 0 0;
    width: 100%; }
  .nagoya-wrap .term-th {
    color: #fff !important; }
  .nagoya-wrap .term-td {
    border-left: 1px solid #fff; }
    .nagoya-wrap .term-td p {
      color: #fff !important; }

.limitation-img {
  width: 100%;
  height: auto; }
  @media screen and (min-width: 1000px) {
    .limitation-img {
      width: 30%; } }
  .limitation-img:before {
    content: '';
    display: block;
    padding-top: 60%; }
  .limitation-img.school-img {
    background-image: url("../images/ticket/image01.jpg"); }
  .limitation-img.yukata-img {
    background-image: url("../images/ticket/image02.jpg"); }
  .limitation-img.nagoya-img {
    background-image: url("../images/ticket/nagoya_visual.jpg"); }

.limitation-text-wrap {
  margin: 1rem 0 0;
  width: 100%; }
  @media screen and (min-width: 1000px) {
    .limitation-text-wrap {
      margin: 0 0 0 2rem;
      width: 70%; } }

.term-flex {
  margin: .5rem 0 0;
  width: 100%; }
  .term-flex:nth-child(1) {
    margin: 0; }
  .term-flex .term-th {
    margin: initial;
    padding-right: .5rem;
    width: 30%;
    font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
    font-size: .7rem;
    color: #3e3e3e;
    vertical-align: middle; }
    @media screen and (min-width: 1000px) {
      .term-flex .term-th {
        width: 24%;
        font-size: .8rem; } }
  .term-flex .term-td {
    padding-left: .5rem;
    width: 70%;
    border-left: 1px solid #a0a0a0; }
    @media screen and (min-width: 1000px) {
      .term-flex .term-td {
        width: 80%; } }
    .term-flex .term-td p {
      font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
      font-size: .7rem;
      color: #3e3e3e; }
      @media screen and (min-width: 1000px) {
        .term-flex .term-td p {
          font-size: .8rem; } }
    .term-flex .term-td span {
      font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
      font-size: .6rem;
      color: #B5636A; }
      @media screen and (min-width: 1000px) {
        .term-flex .term-td span {
          font-size: .7rem; } }

.ticket-wrapper {
  width: 100%; }
  @media screen and (min-width: 1000px) {
    .ticket-wrapper {
      margin: 3rem 0 0; } }

.ticket-section {
  width: 100%; }
  @media screen and (min-width: 1000px) {
    .ticket-section {
      margin: 2rem 0 0; } }
  .ticket-section:nth-child(1) {
    margin: 0; }
  .ticket-section .ticket-wrap {
    margin: 0 auto; }
    @media screen and (max-width: 768px) {
      .ticket-section .ticket-wrap {
        padding: 2rem 0; } }
    @media screen and (min-width: 1000px) {
      .ticket-section .ticket-wrap .ticket-sentence {
        width: 34%; } }
    .ticket-section .ticket-wrap .ticket-contents-wrap {
      width: 100%; }
      @media screen and (max-width: 768px) {
        .ticket-section .ticket-wrap .ticket-contents-wrap {
          text-align: center;
          margin-left: 0; } }
    .ticket-section .ticket-wrap .ticket-title {
      display: block; }
      @media screen and (max-width: 768px) {
        .ticket-section .ticket-wrap .ticket-title {
          margin-right: 0; } }
      .ticket-section .ticket-wrap .ticket-title h2 {
        position: relative;
        display: inline-block;
        font-family: "Lato", sans-serif;
        font-size: 1.1rem;
        font-weight: bold;
        line-height: 1; }
        @media screen and (max-width: 750px) {
          .ticket-section .ticket-wrap .ticket-title h2 {
            font-size: 1rem; } }
        .ticket-section .ticket-wrap .ticket-title h2:after {
          position: absolute;
          bottom: 0;
          left: 0;
          z-index: -1;
          content: '';
          width: 100%;
          height: 5px;
          background-color: #6d6de1; }
      .ticket-section .ticket-wrap .ticket-title p {
        font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
        font-size: .8rem; }
        @media screen and (max-width: 750px) {
          .ticket-section .ticket-wrap .ticket-title p {
            font-size: .7rem; } }
      .ticket-section .ticket-wrap .ticket-title span {
        display: block;
        font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
        font-size: 12px; }
        @media screen and (min-width: 1000px) {
          .ticket-section .ticket-wrap .ticket-title span {
            padding: 1rem 0 0; } }
    .ticket-section .ticket-wrap .ticket-price {
      width: initial;
      font-size: .8rem;
      padding-top: 2rem; }
      @media screen and (max-width: 750px) {
        .ticket-section .ticket-wrap .ticket-price {
          padding-top: 1rem; } }
    .ticket-section .ticket-wrap .buy-ticket {
      margin: inherit; }
      .ticket-section .ticket-wrap .buy-ticket a {
        display: inline-block;
        font-family: "Open Sans", sans-serif;
        font-size: 12px;
        font-weight: normal;
        padding: 3px 20px;
        border-radius: 3px;
        color: #fff;
        background-color: #ec7070; }
  @media screen and (min-width: 1000px) {
    .ticket-section .ticket-code {
      width: 66%; } }
  @media screen and (max-width: 750px) {
    .ticket-section .ticket-code {
      margin: 2rem 0 0; } }
  .ticket-section .playguide-wrap {
    padding: .5rem 2rem; }
    @media screen and (max-width: 750px) {
      .ticket-section .playguide-wrap {
        padding: .5rem 0; } }
  .ticket-section .playguide-title {
    width: 40%;
    font-size: .7rem;
    vertical-align: middle; }
    @media screen and (min-width: 1000px) {
      .ticket-section .playguide-title {
        width: 30%;
        font-size: .7rem; } }
  .ticket-section .playguide-text {
    padding-left: 1rem;
    width: 60%;
    border-left: 1px solid #8e8e8e; }
    @media screen and (min-width: 1000px) {
      .ticket-section .playguide-text {
        width: 70%; } }
  .ticket-section p.text {
    font-size: .6rem;
    margin-bottom: 5px; }
  .ticket-section p.playguide-code {
    font-size: .6rem;
    font-weight: bold;
    margin-bottom: 5px; }

.privilege {
  margin: 0 auto;
  width: 100%; }
  @media screen and (min-width: 1000px) {
    .privilege {
      margin-top: 3rem; } }
  .privilege .ticket-info {
    margin: 1rem 0 0;
    padding: .8rem .5rem;
    width: 100%;
    line-height: 1;
    background-color: #ec7070; }
    @media screen and (min-width: 1000px) {
      .privilege .ticket-info {
        margin: 0;
        padding: 1rem;
        max-width: 500px; } }
  .privilege .set-name {
    display: block;
    width: 100%;
    font-family: "Lato", sans-serif;
    font-size: .7rem;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    text-align: center; }
    @media screen and (min-width: 1000px) {
      .privilege .set-name {
        font-size: .8rem; } }
  .privilege .fa {
    font-size: .7rem;
    color: #fff;
    line-height: 1; }
    @media screen and (min-width: 1000px) {
      .privilege .fa {
        font-size: .8rem; } }

/* remodal */
.ticket-remodal {
  width: 100%; }
  .ticket-remodal .section-text {
    text-align: left; }
  .ticket-remodal .ticket-head {
    padding: 1rem;
    width: 100%;
    background-color: #b8c1c8; }
    @media screen and (min-width: 1000px) {
      .ticket-remodal .ticket-head {
        padding: 2rem 0; } }
  .ticket-remodal .wrapper {
    background-color: #fff; }
  .ticket-remodal .remodal-title {
    font-family: "YuMincho", "游明朝", serif;
    font-weight: bold;
    font-size: 1.3rem;
    line-height: 1;
    color: #fff;
    text-align: center; }
  .ticket-remodal .sub-title {
    font-family: "YuMincho", "游明朝", serif;
    font-size: 1.1rem;
    color: #3e3e3e;
    text-align: left; }
  .ticket-remodal .sweet-text {
    padding: 1rem 0 0;
    font-family: "Lato", sans-serif;
    font-size: .8rem;
    text-align: left; }

.contents-inner {
  margin: 2rem 0 0;
  width: 100%; }
  .contents-inner.nyst-content {
    margin: 0; }
  .contents-inner .section-text {
    margin: 1rem 0 0; }
    .contents-inner .section-text.brownie-text {
      margin: .5rem 0 0; }
  .contents-inner .contents-title-wrap {
    width: 100%;
    text-align: left; }
    .contents-inner .contents-title-wrap .contents-title {
      display: inline-block;
      vertical-align: middle;
      font-family: "YuMincho", "游明朝", serif;
      font-weight: bold;
      color: #fff;
      text-align: center;
      background-color: #b8c1c8;
      width: 150px; }
      @media screen and (min-width: 1000px) {
        .contents-inner .contents-title-wrap .contents-title {
          width: 45%;
          height: 30px;
          max-height: 30px;
          min-height: 30px; } }
  .contents-inner .logo-wrap {
    margin-left: 2rem;
    display: inline-block;
    vertical-align: middle;
    width: 20%;
    height: auto; }
    @media screen and (min-width: 1000px) {
      .contents-inner .logo-wrap {
        width: 20%; } }
    .contents-inner .logo-wrap:before {
      content: '';
      display: block;
      padding-top: 55%; }
    .contents-inner .logo-wrap .logo-img {
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
      background-size: 100%; }
  .contents-inner .hugo-1 {
    background-image: url("../images/hugo.png"); }
  .contents-inner .ben-1 {
    background-image: url("../images/ben.png"); }

.remodal-caution {
  margin: 2rem 0 0;
  font-family: "Lato", sans-serif;
  font-size: .7rem;
  color: #3e3e3e;
  text-align: left; }

.berry-wrap {
  margin: 3rem 0 0; }

.brownie-title {
  margin: 1rem 0 0;
  font-family: "Lato", sans-serif;
  font-size: .8rem;
  color: #3e3e3e;
  font-weight: bold;
  text-align: left; }

.remodal-2 .sweet-text {
  padding: 0; }

.cotecour_logo {
  display: inline-block;
  vertical-align: middle;
  margin-left: 2rem;
  width: 14%; }
  @media screen and (min-width: 1000px) {
    .cotecour_logo {
      width: 10%; } }

.ny-st-wrap {
  margin: 1rem 0 0;
  width: 100%; }

.nyst-thumb-wrap {
  width: 49%; }
  .nyst-thumb-wrap:nth-child(1) {
    margin-right: 1rem; }

.brownie-thumb {
  width: 100%;
  height: auto; }
  .brownie-thumb:before {
    content: '';
    display: block;
    padding-top: 56.25%; }
  .brownie-thumb .brownie {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("../images/cote_sweets.jpg"); }

.ny-st {
  margin: 2rem 0 0;
  width: 100%;
  height: auto; }
  @media screen and (min-width: 1000px) {
    .ny-st {
      margin: 0; } }
  .ny-st:before {
    content: '';
    display: block;
    padding-top: 56.25%; }

.ny-st-thumb {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url("../images/sweets_main.jpg"); }

.wsweet-thumb {
  margin: 1rem 0 0;
  width: 100%;
  height: auto; }
  @media screen and (min-width: 1000px) {
    .wsweet-thumb {
      width: 49%; } }
  .wsweet-thumb:before {
    content: '';
    display: block;
    padding-top: 56.25%; }
  .wsweet-thumb .wsweet {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.sweet01 {
  background-image: url("../images/sweets_chocolate_top.jpg"); }

.sweet02 {
  background-image: url("../images/sweets_iceflorist_new.jpg"); }

.parth-caution {
  margin-top: .5rem;
  font-family: "Lato", sans-serif;
  font-size: .7rem;
  color: #777;
  text-align: left; }
  @media screen and (min-width: 1000px) {
    .parth-caution {
      font-size: .6rem; } }

/* pray guide */
.TicketRemodal {
  margin-left: 10px;
  margin-right: 10px;
  width: calc(100% - 20px); }
  .TicketRemodal .ticket-remodalInner {
    padding: 1rem;
    width: 100%; }

.ticket-remodal-title {
  padding: 1rem;
  font-family: "Lato", sans-serif;
  font-size: 1.2rem;
  font-weight: bold;
  color: #fff;
  text-align: left;
  background-color: #b8c1c8; }
  .ticket-remodal-title span {
    display: block;
    font-family: "YuMincho", "游明朝", serif;
    font-size: .7rem;
    letter-spacing: 5px; }

.prayguide-description {
  font-family: "Lato", sans-serif;
  font-size: .8rem;
  color: #3e3e3e;
  text-align: left; }

.prayguide-caution {
  font-family: "Lato", sans-serif;
  font-size: .6rem;
  color: #a0a0a0;
  text-align: left; }

.prayguide-wrap {
  margin: 1.3rem 0 0;
  width: 100%; }

.button {
  margin: 1rem 0 0;
  width: 100%; }
  .button:hover {
    background-color: #fff !important; }
  @media screen and (min-width: 1000px) {
    .button {
      margin: 0; } }
  .button a {
    font-family: "Lato", sans-serif;
    color: #fff;
    font-size: .8rem; }
  .button:nth-child(1) {
    margin: 0; }
    @media screen and (min-width: 1000px) {
      .button:nth-child(1) {
        margin-right: .5rem; } }
  @media screen and (min-width: 1000px) {
    .button:nth-child(3) {
      margin-left: .5rem; } }
  .button.pia {
    background: #73ae9f;
    border: 1px solid #73ae9f; }
    .button.pia a:hover {
      color: #73ae9f; }
  .button.lowson {
    background: #5f657a;
    border: 1px solid #5f657a; }
    .button.lowson a:hover {
      color: #5f657a; }
  .button.eplus {
    background: #ec7070;
    border: 1px solid #ec7070; }
    .button.eplus a:hover {
      color: #ec7070; }

.remodal-wrapper {
  padding: 0;
  overflow-x: hidden;
  -webkit-transform: translate3d(0, 0, 10000px);
  transform: translate3d(0, 0, 10000px);
  z-index: 6; }

.remodal {
  margin-bottom: 0;
  padding: 0; }

.remodal-1 {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  transition: all 1s ease;
  -webkit-transition: all 1s ease;
  background-color: #b8c1c8; }
  @media screen and (min-width: 1000px) {
    .remodal-1 {
      max-width: none;
      height: auto;
      background-color: #fff; } }

.mc-modal {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  transition: all 1s ease;
  -webkit-transition: all 1s ease;
  background-color: #b8c1c8; }
  @media screen and (min-width: 1000px) {
    .mc-modal {
      position: relative;
      max-width: none;
      height: 100vh;
      overflow-y: hidden;
      background-color: transparent; } }

.remodal-close {
  top: .5rem;
  right: .5rem;
  left: inherit;
  width: 25px;
  height: 25px;
  color: #fff;
  z-index: 2;
  -webkit-transform: translate3d(0, 0, 2px);
  transform: translate3d(0, 0, 2px); }
  @media screen and (min-width: 1000px) {
    .remodal-close {
      top: .5rem;
      right: .5rem;
      width: 30px;
      height: 30px; } }
  .remodal-close:before {
    font-family: 'icomoon' !important;
    content: '\e900';
    line-height: 25px;
    width: 25px;
    font-size: 25px;
    font-weight: 600; }
    @media screen and (min-width: 1000px) {
      .remodal-close:before {
        line-height: 30px;
        width: 30px;
        font-size: 30px; } }

/* ticket ------------------------------------------------------------------*/
/* goods ------------------------------------------------------------------*/
#goods {
  padding: 3rem 0;
  width: 100%;
  background-color: #73AE9F; }
  #goods .wrapper {
    padding: 0;
    width: 100%;
    max-width: 980px; }
    @media screen and (max-width: 750px) {
      #goods .wrapper {
        padding: 0 .5rem; } }
  #goods .second-title {
    font-family: "Open Sans", sans-serif;
    font-size: 1rem;
    font-weight: bold;
    color: #fff;
    text-align: center;
    letter-spacing: 5px;
    text-indent: -5px; }
    @media screen and (min-width: 1000px) {
      #goods .second-title {
        font-size: 1.8rem; } }
  #goods .goods-inner {
    margin: 2rem 0 0;
    width: 100%; }

.goods-original {
  margin: 3rem 0 0;
  width: 100%; }
  .goods-original .og-maintitle {
    width: 100%; }
    .goods-original .og-maintitle img {
      display: block;
      margin: 0 auto;
      width: 50%;
      height: auto; }
      @media screen and (min-width: 1000px) {
        .goods-original .og-maintitle img {
          width: 25%; } }
    .goods-original .og-maintitle h4 {
      margin: 1rem 0 0;
      font-family: "Open Sans", sans-serif;
      font-size: 1.1rem;
      color: #fff;
      font-weight: bold;
      text-align: center;
      letter-spacing: 5px;
      text-indent: -5px; }

.og-wrapper {
  width: 100%; }
  @media screen and (min-width: 1000px) {
    .og-wrapper {
      margin: 3rem 0 0; } }

.ogitem-flex {
  margin: 3rem 0 0;
  width: 100%;
  background-color: #fff;
  -webkit-box-shadow: 2px 2px 5px rgba(20, 20, 20, 0.2);
          box-shadow: 2px 2px 5px rgba(20, 20, 20, 0.2); }
  @media screen and (min-width: 1000px) {
    .ogitem-flex {
      margin: 2rem 0 0;
      padding: 1rem; } }
  @media screen and (max-width: 750px) {
    .ogitem-flex {
      padding: .5rem; } }
  .ogitem-flex:nth-child(1) {
    margin: 0; }
  .ogitem-flex .og-name {
    position: relative;
    display: inline-block;
    font-family: "Open Sans", sans-serif;
    font-size: .8rem;
    font-weight: bold;
    color: #3e3e3e;
    line-height: 1;
    z-index: 2; }
    @media screen and (min-width: 1000px) {
      .ogitem-flex .og-name {
        font-size: .9rem; } }
    .ogitem-flex .og-name:after {
      position: absolute;
      bottom: 0;
      left: 0;
      z-index: -1;
      content: '';
      width: 100%;
      height: 5px;
      background-color: #E7B825; }
  .ogitem-flex .og-price {
    padding: .5rem 0 0;
    font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
    font-size: .7rem;
    font-weight: normal;
    color: #3e3e3e;
    line-height: 1; }
    @media screen and (min-width: 1000px) {
      .ogitem-flex .og-price {
        padding: 1.5rem 0 0; } }
    @media screen and (max-width: 750px) {
      .ogitem-flex .og-price {
        display: block;
        line-height: 1.6; } }
  .ogitem-flex .section-text {
    padding: 1rem 0 0;
    font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
    font-size: .6rem;
    font-weight: normal;
    color: #3e3e3e; }
    @media screen and (min-width: 1000px) {
      .ogitem-flex .section-text {
        padding: 1rem 0 0;
        font-size: .6rem; } }
  .ogitem-flex .og-caution {
    padding: 1rem 0 0;
    font-family: "YuGothic", "Yu Gothic", "游ゴシック", "游ゴシック体", sans-serif;
    font-size: .7rem;
    font-weight: bold;
    color: #3e3e3e; }
    @media screen and (min-width: 1000px) {
      .ogitem-flex .og-caution {
        font-size: .6rem; } }
  .ogitem-flex .og-img {
    float: left;
    margin: 0 5px 0 2px;
    width: 110px; }

.og-child .og-goods-thumb {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1; }

.og-child .og-text-wrap {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  padding: 0 0 0 1rem; }
  @media screen and (max-width: 750px) {
    .og-child .og-text-wrap {
      padding: 1.5rem 0 0; } }

.og-child.odd .og-goods-thumb {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2; }

.og-child.odd .og-text-wrap {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  padding: 0 1rem 0 0; }
  @media screen and (max-width: 750px) {
    .og-child.odd .og-text-wrap {
      padding: 1.5rem 0 0; } }

.og-goods-thumb {
  width: 100%;
  height: auto; }
  .og-goods-thumb:before {
    content: '';
    display: block;
    padding-top: 60%; }

.og-thumb01 {
  background-image: url("../images/goods/goods03.jpg"); }

.og-thumb02 {
  background-image: url("../images/goods/goods02.jpg"); }

.og-thumb03 {
  background-image: url("../images/goods/goods01.jpg"); }

.og-thumb04 {
  background-image: url("../images/goods/goods05.jpg"); }

.og-thumb05 {
  background-image: url("../images/goods/goods07.jpg"); }

.og-thumb06 {
  background-image: url("../images/goods/goods10.jpg"); }

.og-thumb07 {
  background-image: url("../images/goods/goods06.jpg"); }

.og-thumb08 {
  background-image: url("../images/goods/goods09.jpg"); }

.og-thumb09 {
  background-image: url("../images/goods/goods11.jpg"); }

.og-text-wrap {
  width: 100%;
  line-height: 1; }

/* goods ------------------------------------------------------------------*/
/* caution ------------------------------------------------------------------*/
.pickup {
  position: fixed;
  bottom: 0;
  right: 0;
  text-align: center;
  width: 250px;
  background: #fff;
  border: 3px solid #b8c3c7;
  -webkit-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
  z-index: 15; }
  .pickup .pickup-cont {
    position: relative;
    padding: 20px; }
    .pickup .pickup-cont .pickup-btn {
      position: absolute;
      top: 0;
      left: 0;
      width: 20px;
      height: 20px;
      background: #b8c3c7;
      cursor: pointer; }
      .pickup .pickup-cont .pickup-btn .border01 {
        position: absolute;
        top: 1px;
        left: 8px;
        display: inline-block;
        width: 2px;
        height: 15px;
        background: #fff;
        -webkit-transform: rotate(45deg);
                transform: rotate(45deg);
        -webkit-transition: .5s ease-in-out;
        transition: .5s ease-in-out; }
      .pickup .pickup-cont .pickup-btn .border02 {
        position: absolute;
        top: 1px;
        left: 8px;
        display: inline-block;
        width: 2px;
        height: 15px;
        background: #fff;
        -webkit-transform: rotate(-45deg);
                transform: rotate(-45deg);
        -webkit-transition: 1s ease-in-out;
        transition: 1s ease-in-out; }
    .pickup .pickup-cont h3 {
      font-size: 16px;
      font-weight: bold;
      letter-spacing: .1em;
      text-align: center;
      color: #3e3e3e; }
    .pickup .pickup-cont p {
      font-size: 12px;
      font-weight: bold;
      color: #3e3e3e;
      margin: 20px auto; }
      .pickup .pickup-cont p span {
        display: block;
        font-size: 10px;
        color: #3e3e3e;
        margin: 20px auto 0; }
    .pickup .pickup-cont a {
      width: 100%;
      padding: 7px;
      border: 1px solid #eb7081;
      background-color: #eb7081; }
    .pickup .pickup-cont .btn {
      margin: 0 auto; }

.pickup-close {
  -webkit-transform: translate(calc(100% - 20px), calc(100% - 20px));
          transform: translate(calc(100% - 20px), calc(100% - 20px)); }
  .pickup-close .pickup-cont .pickup-btn .border01 {
    top: 3px;
    left: 4px;
    height: 9px; }
  .pickup-close .pickup-cont .pickup-btn .border02 {
    top: 3px;
    left: 9px;
    height: 9px; }

@media screen and (max-width: 768px) {
  /*popup 768px以下
-------------------------------------------*/
  .pickup {
    width: 100%; } }

/* caution ------------------------------------------------------------------*/
