@charset "UTF-8";
/* Scss Document */
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

a {
  color: inherit; }
  a:hover {
    opacity: 0.7;
    -webkit-transition: 0.5s;
    transition: 0.5s; }

@media screen and (min-width: 768px) {
  a[href^="tel:"] {
    pointer-events: none; } }
img {
  max-width: 100%;
  width: 100%; }

html, body {
  font-family: 'Noto Sans JP';
  font-size: 62.5%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

body {
  font-size: 1.6rem;
  font-weight: 300;
  letter-spacing: 0.05rem;
  line-height: 1.75;
  color: #000;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  background-color: #fff; }
  @media screen and (max-width: 768px) {
    body {
      font-size: 1.4rem; } }
  @media screen and (max-width: 375px) {
    body.add_overray {
      overflow: hidden; } }

.sp {
  display: none; }
  @media screen and (max-width: 768px) {
    .sp {
      display: block; } }

.pc {
  display: block; }
  @media screen and (max-width: 768px) {
    .pc {
      display: none; } }

#wrapper {
  margin: 0 auto;
  background-color: #111;
  position: relative; }

@-webkit-keyframes sk-scaleout {
  0% {
    -webkit-transform: scale(0.7); }
  100% {
    -webkit-transform: scale(0.6);
    opacity: 0; } }
@keyframes sk-scaleout {
  0% {
    -webkit-transform: scale(0.7);
    transform: scale(0.7); }
  100% {
    -webkit-transform: scale(0.6);
    transform: scale(0.6);
    opacity: 0; } }
#loader-bg {
  background: #000;
  position: fixed;
  z-index: 9999;
  width: 100vw;
  height: 100vh;
  top: 0; }

.spinner {
  width: 150px;
  height: 150px;
  content: url("../img/common/loader.svg");
  -webkit-animation: sk-scaleout 3.0s infinite ease-in-out;
  animation: sk-scaleout 3.0s infinite ease-in-out;
  position: absolute;
  left: calc(50% - 75px); }
  @media screen and (min-width: 768px) {
    .spinner {
      width: 300px;
      height: 300px;
      left: calc(50% - 150px); } }

@keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
@-webkit-keyframes fadeIn {
  0% {
    opacity: 0; }
  100% {
    opacity: 1; } }
.fadein {
  opacity: 0;
  -webkit-transform: translate(0, 40px);
          transform: translate(0, 40px);
  -webkit-transition: all 800ms;
  transition: all 800ms;
  -webkit-animation-duration: 3s;
          animation-duration: 3s; }
  @media screen and (max-width: 768px) {
    .fadein {
      -webkit-transform: translate(0, 40px);
              transform: translate(0, 40px); } }

.fadein.scrollin {
  opacity: 1;
  -webkit-transform: translate(0, 0);
          transform: translate(0, 0); }

.zoomin {
  opacity: 0;
  -webkit-transform: scale(0.7, 0.7);
          transform: scale(0.7, 0.7);
  -webkit-transition: all 800ms;
  transition: all 800ms;
  -webkit-animation-duration: 1s;
          animation-duration: 1s; }

.zoomin.scrollin {
  opacity: 1;
  -webkit-transform: scale(1, 1);
          transform: scale(1, 1); }

footer {
  background-color: #fff;
  width: 100%;
  text-align: center;
  padding: 4% 0 0; }
  @media screen and (min-width: 768px) {
    footer {
      padding: 40px 0 0; } }
  footer h2 {
    width: 55%;
    margin: 0 auto 2%; }
  footer h3 {
    width: 60%;
    margin: 0 auto 3%; }
  footer .footer-info {
    margin-bottom: 1em;
    font-size: 1.1rem; }
    @media screen and (min-width: 768px) {
      footer .footer-info {
        font-size: 1.6rem;
        margin-bottom: 2em; } }
  footer .footer_bottom {
    margin-bottom: 1em; }
    @media screen and (min-width: 768px) {
      footer .footer_bottom {
        margin-bottom: 2em; } }
    footer .footer_bottom .footer_bottom-link {
      font-size: 0;
      letter-spacing: 0; }
      footer .footer_bottom .footer_bottom-link li {
        display: inline-block;
        font-size: 1.1rem;
        margin-right: 0.5em;
        letter-spacing: 0.05em; }
        @media screen and (min-width: 768px) {
          footer .footer_bottom .footer_bottom-link li {
            font-size: 1.6rem; } }
        footer .footer_bottom .footer_bottom-link li::after {
          content: '｜';
          margin-left: 0.5em;
          color: #999; }
        footer .footer_bottom .footer_bottom-link li:first-child::before {
          content: '｜';
          margin-right: 0.5em;
          color: #999; }
        footer .footer_bottom .footer_bottom-link li a {
          color: #555; }
          footer .footer_bottom .footer_bottom-link li a:hover {
            text-decoration: underline; }
  footer address {
    background-color: #000;
    color: #fff;
    padding: 1em;
    letter-spacing: 0;
    font-style: normal;
    font-size: 1.0rem; }
    @media screen and (min-width: 768px) {
      footer address {
        font-size: 1.4rem; } }

.content-wrap {
  max-width: 750px;
  width: 90%;
  margin: auto; }

.content-inner {
  max-width: 768px;
  width: 100%;
  margin: auto; }

.flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  display: -ms-flex;
  display: -webkit-flex; }

.page_top main {
  background-color: #fff; }
.page_top .mainImg {
  margin: 0 auto;
  position: relative;
  background: -ms-linear-gradient(90deg, #1d2087 20%, black 65%);
  -ms-filter: "progid:DXImageTransform.Microsoft.gradient(startColorstr='#1D2087', endColorstr='#000000' ,GradientType=0)";
  background: -webkit-gradient(linear, left bottom, left top, color-stop(20%, #1d2087), color-stop(65%, black));
  background: linear-gradient(0deg, #1d2087 20%, black 65%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#000000',endColorstr='#1D2087' , GradientType=0); }
  .page_top .mainImg .mainImg_bg {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto; }
  .page_top .mainImg h1 {
    position: absolute;
    max-width: 1000px;
    width: 90%;
    margin: auto;
    top: 18px;
    left: 0;
    right: 0;
    -webkit-animation: 0.5s fadeinlogo 2.5s forwards;
            animation: 0.5s fadeinlogo 2.5s forwards;
    opacity: 0; }
    @media screen and (min-width: 768px) {
      .page_top .mainImg h1 {
        top: 36px; } }
@-webkit-keyframes fadeinlogo {
  0% {
    top: 0; }
  100% {
    top: 18px;
    opacity: 1; } }
@keyframes fadeinlogo {
  0% {
    top: 0; }
  100% {
    top: 18px;
    opacity: 1; } }
  @media screen and (min-width: 768px) {
    @-webkit-keyframes fadeinlogo {
      0% {
        top: 0; }
      100% {
        top: 36px;
        opacity: 1; } }
    @keyframes fadeinlogo {
      0% {
        top: 0; }
      100% {
        top: 36px;
        opacity: 1; } } }
  .page_top .mainImg .mainImg_txt {
    position: absolute;
    max-width: 700px;
    width: 80%;
    margin: auto;
    top: 40%;
    left: 0;
    right: 0; }
    @media screen and (min-width: 768px) {
      .page_top .mainImg .mainImg_txt {
        top: 40%; } }
  .page_top .mainImg h2 {
    position: absolute;
    max-width: 1000px;
    width: 94%;
    margin: auto;
    bottom: 10px;
    left: 0;
    right: 0; }
    @media screen and (min-width: 768px) {
      .page_top .mainImg h2 {
        bottom: 20px; } }
.page_top .content_lead {
  background: #641885;
  background: -webkit-gradient(linear, left top, left bottom, from(#1d2087), color-stop(20%, #1d2087), color-stop(65%, #641885), to(#641885));
  background: linear-gradient(#1d2087 0%, #1d2087 20%, #641885 65%, #641885 100%); }
  .page_top .content_lead-inner {
    background-image: url("../img/top/bg_star-01.png");
    background-size: 750px;
    background-repeat: repeat;
    background-position: center top;
    padding-bottom: 50px; }
    @media screen and (max-width: 768px) {
      .page_top .content_lead-inner {
        background-size: cover;
        padding-bottom: 5%; } }
  .page_top .content_lead h2 {
    position: relative;
    max-width: 750px;
    width: 92%;
    margin: 0 auto 20px;
    padding-top: 10px; }
    @media screen and (min-width: 768px) {
      .page_top .content_lead h2 {
        margin: 0 auto 40px;
        padding-top: 20px; } }
    .page_top .content_lead h2 img {
      display: block;
      margin-bottom: 8px; }
      @media screen and (min-width: 768px) {
        .page_top .content_lead h2 img {
          margin-bottom: 16px; } }
  .page_top .content_lead p {
    position: relative;
    max-width: 750px;
    width: 100%;
    margin: 0 auto; }
  .page_top .content_lead .content_lead-place {
    margin-bottom: 15px; }
    @media screen and (min-width: 768px) {
      .page_top .content_lead .content_lead-place {
        margin-bottom: 30px; } }
  .page_top .content_lead .content_lead-txt {
    color: #fff;
    text-align: center;
    width: 90%;
    font-size: 1.1rem;
    line-height: 1.5;
    margin-bottom: 0.5em; }
    @media screen and (min-width: 768px) {
      .page_top .content_lead .content_lead-txt {
        font-size: 2.0rem; } }
    .page_top .content_lead .content_lead-txt.left {
      text-align: left;
      padding-left: 1em; }
      .page_top .content_lead .content_lead-txt.left span {
        margin-left: -1em; }
.page_top .content_fireworks {
  background-color: #000; }
  .page_top .content_fireworks-inner {
    max-width: 1280px;
    margin: auto;
    font-size: 1.2rem;
    background: #1d2087;
    background: -webkit-gradient(linear, left top, left bottom, from(#000000), to(#1d2087));
    background: linear-gradient(#000000 0%, #1d2087 100%);
    padding: 3% 0 5%; }
    @media screen and (min-width: 768px) {
      .page_top .content_fireworks-inner {
        padding: 30px 0 40px; } }
  .page_top .content_fireworks figure {
    max-width: 1280px;
    margin: auto; }
  .page_top .content_fireworks .content_fireworks-txt {
    color: #fff;
    width: 90%;
    max-width: 800px;
    margin: auto; }
    @media screen and (min-width: 768px) {
      .page_top .content_fireworks .content_fireworks-txt {
        font-size: 1.8rem; } }
  .page_top .content_fireworks .tit_yellow {
    color: #ffffaf;
    width: 90%;
    max-width: 800px;
    margin: 0 auto 0.5em;
    font-weight: 700;
    font-size: 1.4rem;
    line-height: 1.4; }
    @media screen and (min-width: 768px) {
      .page_top .content_fireworks .tit_yellow {
        font-size: 2.4rem; } }
  .page_top .content_fireworks .tit_blue {
    color: #d9ffff;
    width: 90%;
    max-width: 800px;
    text-align: center;
    margin: 0 auto 0.5em;
    font-weight: 700;
    font-size: 1.4rem;
    line-height: 1.4; }
    @media screen and (min-width: 768px) {
      .page_top .content_fireworks .tit_blue {
        font-size: 2.4rem; } }
  .page_top .content_fireworks .tit_fireworks-02 {
    width: 80%;
    max-width: 540px;
    text-align: center;
    margin: 0 auto 1em; }
.page_top .content_kitchen {
  color: #fff;
  background-color: #0b0c34;
  padding: 5% 0; }
  @media screen and (min-width: 768px) {
    .page_top .content_kitchen {
      padding: 40px 0 50px; } }
  .page_top .content_kitchen-inner {
    max-width: 1000px;
    margin: auto; }
  .page_top .content_kitchen h2 {
    text-align: center;
    font-size: 1.9rem;
    font-weight: 900;
    letter-spacing: 0.05em; }
    @media screen and (min-width: 768px) {
      .page_top .content_kitchen h2 {
        font-size: 3.4rem; } }
    .page_top .content_kitchen h2 span {
      color: #ffff50;
      font-weight: 900; }
  .page_top .content_kitchen p {
    font-size: 1.2rem; }
    @media screen and (min-width: 768px) {
      .page_top .content_kitchen p {
        font-size: 1.8rem; } }
  .page_top .content_kitchen figure {
    border: 5px solid #fff;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
.page_top .content_map {
  color: #fff;
  background: #641885;
  background: -webkit-gradient(linear, left top, left bottom, from(#1d2087), color-stop(20%, #1d2087), color-stop(65%, #641885), to(#641885));
  background: linear-gradient(#1d2087 0%, #1d2087 20%, #641885 65%, #641885 100%);
  padding: 5% 0; }
  @media screen and (min-width: 768px) {
    .page_top .content_map {
      padding: 40px 0; } }
  .page_top .content_map-img {
    max-width: 594px;
    width: 80%;
    margin: 0 auto 4%; }
    @media screen and (min-width: 768px) {
      .page_top .content_map-img {
        margin: 0 auto 30px; } }
  .page_top .content_map .content_map-access {
    font-size: 1.2rem;
    margin-bottom: 1em; }
    @media screen and (min-width: 768px) {
      .page_top .content_map .content_map-access {
        font-size: 1.8rem; } }
  .page_top .content_map .txt_COVID-19 {
    background-color: #e50012;
    text-align: center;
    padding: 1em 0;
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1.4; }
    @media screen and (min-width: 768px) {
      .page_top .content_map .txt_COVID-19 {
        font-size: 2.0rem; } }
.page_top .content_price {
  color: #fff;
  background-color: #000; }
  .page_top .content_price-inner {
    margin: auto;
    background: url("../img/top/bg_fireworks-01.jpg") no-repeat center center;
    background-size: cover;
    padding: 5% 0; }
    @media screen and (min-width: 768px) {
      .page_top .content_price-inner {
        padding: 40px 0; } }
  .page_top .content_price .content_price-img {
    max-width: 750px;
    width: 90%;
    margin: auto; }
  .page_top .content_price .content_price-caution {
    color: #333;
    max-width: 750px;
    width: 90%;
    margin: auto;
    background-color: rgba(255, 255, 255, 0.8);
    font-size: 1.2rem;
    line-height: 1.5;
    padding: 1em; }
    @media screen and (min-width: 768px) {
      .page_top .content_price .content_price-caution {
        font-size: 1.6rem; } }
    .page_top .content_price .content_price-caution p {
      margin-bottom: 0.25em; }
    .page_top .content_price .content_price-caution .txt_bold {
      color: #000;
      font-weight: 700; }
  .page_top .content_price .txt_red {
    color: #e50012; }
    .page_top .content_price .txt_red span {
      font-weight: 700; }
.page_top .content_schedule {
  background: #641885;
  background: -webkit-gradient(linear, left top, right top, from(#1d2087), color-stop(20%, #1d2087), color-stop(65%, #641885), to(#641885));
  background: linear-gradient(to right, #1d2087 0%, #1d2087 20%, #641885 65%, #641885 100%);
  padding: 2% 0;
  margin-bottom: 0; }
  @media screen and (min-width: 768px) {
    .page_top .content_schedule {
      padding: 10px 0; } }
.page_top .content_shopping {
  background-color: #fff;
  padding: 4% 0 2%;
  color: #1a1a1a;
  font-size: 1.1rem; }
  @media screen and (min-width: 768px) {
    .page_top .content_shopping {
      padding: 40px 0 20px;
      font-size: 1.6rem; } }
  .page_top .content_shopping .shopping_card {
    width: 56%; }
  .page_top .content_shopping .shopping-inner {
    margin-bottom: 3%; }
    @media screen and (min-width: 768px) {
      .page_top .content_shopping .shopping-inner {
        margin-bottom: 30px; } }
  .page_top .content_shopping h2 {
    color: #fff;
    background: #641885;
    background: -webkit-gradient(linear, left top, right top, from(#1d2087), color-stop(20%, #1d2087), color-stop(65%, #641885), to(#641885));
    background: linear-gradient(to right, #1d2087 0%, #1d2087 20%, #641885 65%, #641885 100%);
    padding: 0.5em;
    margin-bottom: 0.5em;
    font-size: 1.2rem;
    font-weight: 700; }
    @media screen and (min-width: 768px) {
      .page_top .content_shopping h2 {
        font-size: 2.0rem; } }
  .page_top .content_shopping ul li {
    padding-left: 1em;
    margin-bottom: 0.5em;
    line-height: 1.5; }
    .page_top .content_shopping ul li::before {
      margin-left: -1em; }
  .page_top .content_shopping ul.list_circle li::before {
    content: '◯'; }
  .page_top .content_shopping ul.list_caution li::before {
    content: '※'; }
  .page_top .content_shopping ul.list_dia li::before {
    content: '◆'; }
  .page_top .content_shopping .shopping_bank {
    border: 2px dotted #cccccc;
    padding: 1em;
    margin-bottom: 1em; }
    @media screen and (min-width: 768px) {
      .page_top .content_shopping .shopping_bank {
        border: 1px dotted #cccccc; } }

/* お申し込みボタンブロック */
.content_entry {
  background: url("../img/top/bg_star-01.png") repeat center top;
  background-size: 750px;
  background-color: #1b0045;
  margin: 0 auto;
  padding: 4% 0 6%; }
  @media screen and (min-width: 768px) {
    .content_entry {
      padding: 30px 0 50px; } }
  .content_entry .content_entry-inner {
    text-align: center; }
  .content_entry .content_entry-img {
    max-width: 900px;
    width: 100%;
    margin: auto;
    padding: 2% 0; }
  .content_entry h2 {
    color: #dbd2ff;
    margin: 0 auto 0.5em;
    line-height: 1.2;
    font-size: 2.0rem;
    font-weight: 900; }
    @media screen and (min-width: 768px) {
      .content_entry h2 {
        font-size: 3.8rem; } }
  .content_entry h3 {
    color: #dbd2ff;
    margin: 0.25em auto 0.5em;
    line-height: 1.2;
    font-size: 2.0rem;
    font-weight: 900; }
    @media screen and (min-width: 768px) {
      .content_entry h3 {
        font-size: 3.8rem; } }
  .content_entry .btn_link-entry a {
    display: block;
    background-color: #e50012;
    width: 100%;
    margin: 2% auto 1%;
    padding: 4% 0;
    border: none;
    border-radius: 10px;
    -webkit-box-shadow: 0px 5px #a50014;
            box-shadow: 0px 5px #a50014;
    text-align: center;
    color: #fff;
    letter-spacing: 0.05em;
    font-size: 1.8rem; }
    @media screen and (min-width: 768px) {
      .content_entry .btn_link-entry a {
        font-size: 3.2rem;
        border-radius: 20px;
        -webkit-box-shadow: 0px 10px #a50014;
                box-shadow: 0px 10px #a50014;
        letter-spacing: 0.1em; } }
    .content_entry .btn_link-entry a span {
      padding-right: 30px;
      background: url("../img/common/ico_cart-01.svg") no-repeat center right;
      background-size: 23px;
      font-weight: 900;
      letter-spacing: 0.05em; }
      @media screen and (min-width: 768px) {
        .content_entry .btn_link-entry a span {
          padding-right: 52px;
          background-size: 42px; } }
    .content_entry .btn_link-entry a:active {
      -webkit-transform: translateY(5px);
      transform: translateY(5px);
      /*下に動く*/
      -webkit-box-shadow: none;
              box-shadow: none; }
      @media screen and (min-width: 768px) {
        .content_entry .btn_link-entry a:active {
          -webkit-transform: translateY(10px);
          transform: translateY(10px);
          /*下に動く*/ } }
    .content_entry .btn_link-entry a:hover {
      cursor: pointer;
      opacity: 1;
      -webkit-transform: translateY(5px);
      transform: translateY(5px);
      /*下に動く*/
      -webkit-box-shadow: none;
              box-shadow: none; }
      @media screen and (min-width: 768px) {
        .content_entry .btn_link-entry a:hover {
          -webkit-transform: translateY(10px);
          transform: translateY(10px);
          /*下に動く*/ } }
  .content_entry .btn_link-tel {
    margin-bottom: 3%; }
    .content_entry .btn_link-tel a {
      display: block;
      line-height: 1; }
      .content_entry .btn_link-tel a img {
        width: 100%;
        text-align: center;
        line-height: 1; }
  @media screen and (min-width: 768px) {
    .content_entry .btn_link-tel a:hover {
      opacity: 1; } }
  .content_entry .txt-caution {
    color: #fff;
    font-size: 1.8rem; }
    @media screen and (max-width: 768px) {
      .content_entry .txt-caution {
        font-size: 1.1rem;
        text-align: left; } }
