@charset "utf-8";

body,
p,
h1,
h2,
h3,
small,
strong,
div,
ul,
li,
img,
header,
footer,
nav,
section {
  margin: 0;
  padding: 0;
  border: none;
  outline: none;
  font-size: 1rem;
  -webkit-text-size-adjust: 100%;
  font-family: "メイリオ", Meiryo, Osaka, "Hiragino Kaku Gothic Pro", sans-serif
}

header,
footer,
nav,
section {
  display: block
}

p {
  font-size: 13px
}

img {
  height: auto;
  max-width: 100%
}

a {
  text-decoration: none
}

ul {
  list-style: none
}

.float_icon {
  animation: float_2979 1.5s linear infinite;
  transform-origin: 50% 50%
}

#container {
  margin: 0 auto;
  position: relative;
  width: 100%;
  z-index: 950;
  visibility: hidden
}

#mainbox {
  margin: 0 auto;
  position: relative;
  width: 100%;
  z-index: 88
}

#mainbox .index_text {
  display: block;
  margin: 20px auto 0 auto;
  overflow: hidden;
  width: 100%;
  text-align: center
}

#mainbox .index_text .index_text_comment {
  display: block;
  font-family: "Noto Serif JP", serif;
  font-size: 38px;
  letter-spacing: .5px
}

@media screen and (max-width:767px) {
  #mainbox .index_text .index_text_comment {
    font-size: 32px
  }
}

@media screen and (max-width:480px) {
  #mainbox .index_text .index_text_comment {
    font-size: 26px
  }
}

.fadeUp {
  animation-name: fadeUpAnime;
  animation-duration: 5s;
  animation-fill-mode: forwards;
  opacity: 0
}

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(95px)
  }

  to {
    opacity: 1;
    transform: translateY(0)
  }
}

.clearfix {
  display: inline-block
}

.clearfix {
  overflow: hidden
}

*+html .clearfix {
  height: 1%
}

* html .clearfix {
  height: 1%
}

.clearfix {
  display: block
}

html {
  scroll-behavior: smooth
}

.index_main_area {
  height: 100%;
  margin: 0 auto;
  max-width: 640px;
  width: 100%
}

header {
  transform: translate(0, 0);
  background: #fff;
  background-position: 0 14px;
  background-size: 1px;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 99
}

#header_fix {
  margin: 0 auto;
  padding: 0;
  text-align: center;
  width: 100%
}

#header_fix .header_fix_bg {
  width: 100%;
  background: #333
}

#header_fix .header_fix_bg h1 {
  font-size: 10px;
  font-weight: 400;
  margin: 0 auto;
  max-width: 640px;
  overflow: hidden;
  padding: 2px 0;
  text-align: center;
  text-overflow: ellipsis;
  white-space: nowrap;
  width: 100%
}

#header_fix .header_fix_bg h1 a {
  color: #ddd
}

#wrapper {
  margin: 0 auto 0 auto;
  width: 100%;
  height: auto;
  position: relative;
  background: #fff;
  z-index: 2
}

#wrapper img {
  max-width: 93%
}

#wrapper_logo {
  margin: 0 auto 0 auto;
  text-align: center;
  padding-top: 10px;
  max-width: 640px;
  position: relative;
  width: 90%
}

#header_logo {
  padding-top: 10px;
  background: #fff;
  max-width: 640px;
  overflow: hidden;
  position: relative
}

.header_logo_image {
  margin: 0 auto;
  padding: 10 px 0 0;
  position: relative;
  text-align: center;
  width: 100%
}

.header_logo_image span {
  width: 75%;
  max-width: 640px;
  margin: 3px auto 17px;
  padding: 3px 0;
  text-align: center;
  background: #333;
  color: #fff;
  display: block;
  font-size: 13px;
  font-weight: 400;
  letter-spacing: 5px;
  border-radius: 10px
}

.header_call_text {
  width: 100%;
  height: auto;
  margin: 5px auto 5px auto;
  font-family: "メイリオ", "Meiryo", "Meiryo UI", "Hiragino Kaku Gothic ProN", "Helvetica Neue", "Hiragino Sans", "游ゴシック Medium", sans-serif, Roboto;
  line-height: 1
}

.header_call_number {
  width: 100%;
  font-size: 32px;
  font-weight: 500;
  padding: 0 2% 3px;
  text-align: center;
  display: inline-block;
  color: #c2302a;
  box-sizing: border-box
}

.header_call_number:before {
  content: "TEL";
  color: #005752;
  font-size: 16px;
  margin-right: 3px
}

.top_hours {
  width: 100%;
  text-align: center;
  padding: 0 2% 0;
  color: #005752;
  font-size: 20px;
  font-weight: 500;
  box-sizing: border-box;
  display: inline-block
}

.top_hours:before {
  content: "受付時間";
  font-size: 16px;
  margin-right: 3px
}

.copy_text {
  width: 100%;
  font-family: "Sawarabi Mincho";
  text-align: center;
  color: #005752;
  overflow: hidden;
  margin: 20px auto 5px auto;
  display: block
}

.copy_text img {
  width: 90%
}

.copy_text span {
  font-size: 38px;
  letter-spacing: .5px;
  font-family: "Sawarabi Mincho";
  display: block
}

@media screen and (max-width:767px) {
  .copy_text span {
    font-size: 32px;
    font-family: "Sawarabi Mincho"
  }
}

@media screen and (max-width:480px) {
  .copy_text span {
    font-size: 28px;
    font-family: "Sawarabi Mincho"
  }
}

@media screen and (max-width:350px) {
  .copy_text span {
    font-size: 24px;
    font-family: "Sawarabi Mincho"
  }
}

#index_enter {
  width: 95%;
  margin: 5px auto 20px auto;
  text-align: center
}

#index_enter p {
  width: 100% margin:0 auto;
  padding: 10px 0 0;
  text-align: center;
  line-height: 1.3;
  font-size: 10px;
  color: #005752
}

#index_leave {
  width: 80%;
  height: auto;
  max-width: 350px;
  background: #e60033;
  margin: 10px auto 5px auto;
  text-align: center;
  padding: 5px;
  display: block;
  border-radius: 15px;
  color: #fff;
  font-size: 70%
}

.index_enter_btn {
  width: 97%;
  max-width: 700px;
  height: auto;
  text-align: center;
  margin: 0 auto 10px auto;
  position: relative;
  display: block
}

#index_enter img {
  width: 96%
}

#index_enter_btn_cover {
  width: 100%;
  max-width: 700px;
  z-index: 100;
  top: 0;
  left: 0;
  position: absolute;
  pointer-events: none
}

#index_enter_btn_cover img {
  width: 96%
}

.blinking {
  -moz-animation: blink 0.8s ease-in-out infinite alternate;
  -webkit-animation: blink 0.8s ease-in-out infinite alternate;
  animation: blink 0.8s ease-in-out infinite alternate
}

@-webkit-keyframes blink {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

@-moz-keyframes blink {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

@keyframes blink {
  0% {
    opacity: 0
  }

  100% {
    opacity: 1
  }
}

#seo_text {
  width: 85%;
  margin: 0 auto 40px;
  text-align: center;
  border-radius: 10px;
  background: #ebe7d8;
  padding: 10px;
  box-sizing: border-box
}

#seo_text_box {
  text-align: center;
  margin: 0 auto 0 auto;
  width: 100%;
  height: auto;
  box-sizing: border-box;
  padding: 5px
}

#seo_text h4 {
  width: 95%;
  margin: 10px auto 5px auto;
  font-size: 15px;
  color: #006660;
  font-weight: 700;
  text-align: left
}

#seo_text h5 {
  width: 95%;
  margin: 10px auto 5px auto;
  font-size: 15px;
  color: #006660;
  font-weight: 700;
  text-align: left
}

#seo_text p {
  width: 95%;
  text-align: left;
  font-size: 12px;
  font-weight: 400;
  color: rgba(208, 90, 156);
  margin: 0 auto 15px auto;
  display: block;
  line-height: 1.6
}

#main {
  position: relative;
  height: auto
}

.scroll_top_area {
  background-color: #fff;
  height: 100px;
  margin: 0 auto;
  padding: 10px 0;
  width: 100%
}

.scroll_top_area p#page-top {
  background: #303030;
  margin: 10px auto 10px auto;
  text-align: center;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  overflow: hidden
}

.scroll_top_area p#page-top a {
  display: block;
  width: 100%;
  height: 100%;
  color: #fff;
  padding-top: 15px;
  font-weight: 700;
  line-height: 14px
}

footer {
  background: #303030;
  padding-bottom: 10px;
  position: relative;
  width: 100 %
}

.footer_information {
  border-top: 1px solid #74b5ab;
  padding: 0 5px;
  text-align: center
}

.footer_information h2 {
  color: #fff;
  font-size: 26px;
  font-weight: 400;
  margin: 10px auto;
  text-align: center
}

.footer_information p {
  color: #fff;
  margin: 5 px 0 12px;
  padding-bottom: 8px
}

.footer_information hr {
  border-top: 1 px solid #fff
}

.pc_web {
  background: #ffb320;
  background-size: 16px;
  border-radius: 3px;
  color: #fff;
  display: block;
  margin: 0 auto 8px;
  padding: 10px 15px;
  width: 100px;
  font-size: 12px
}

.pc_web .material-icons {
  font-size: 15px;
  padding: 2px;
  vertical-align: text-bottom
}

.copy {
  width: 100%;
  margin-top: 0;
  font-size: 12px;
  background-color: #353535;
  padding-top: 2px;
  padding-bottom: 2px;
  color: #ffcbca;
  text-align: center;
  bottom: 0
}

.copy a {
  color: #ffcbca
}

.footer_banner_area {
  width: 90%;
  max-width: 640px;
  height: auto;
  margin: 15px auto 0 auto;
  text-align: center
}

.footer_banner_area ul li {
  width: 100%;
  height: auto;
  margin: 15px auto 0 auto
}

.footer_banner_area ul li img {
  width: 96%
}

.footer_banner_area ul li a {
  display: block
}

.footer_sns {
  width: 100%;
  max-width: 640px;
  margin: 0 auto 15px auto;
  padding: 10px 0 0;
  text-align: center
}

.footer_sns li {
  width: 70px;
  height: 70px;
  margin: 0;
  display: inline-block
}

.footer_sns li a {
  width: 70px;
  height: 70 px;
  text-align: center;
  border-radius: 50%;
  box-sizing: border-box;
  -moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  display: block
}

.footer_sns li a.youtube_icon {
  background-color: red;
  width: 70px;
  height: 70px;
  color: #fff;
  padding-top: 19px
}

.footer_sns li a.twitter_icon {
  background-color: #00acee;
  width: 70px;
  height: 70px;
  color: #fff;
  padding-top: 19px
}

.footer_sns li a.insta_icon {
  background: #-webkit-linear-gradient 135deg, #427eff 0%, #f13f79 70% no-repeat;
  background: linear-gradient(135deg, #427eff 0%, #f13f79 70%)no-repeat;
  width: 70px;
  height: 70px;
  color: #fff;
  padding-top: 19px
}

.shop_list {
  width: 100%;
  text-align: center;
  position: relative;
  padding-top: 20px;
  padding-bottom: 10px;
}

.shop_list h2 {
  width: 95%;
  font-weight: 400;
  font-size: 15px;
  color: #fff;
  margin: 0 auto 10px auto;
  text-align: center
}

.shop_list h2.group_name span {
  font-size: 18px;
  padding: 0 5px 0 0
}

.shop_list .shop_list_box {
  width: 90%;
  max-width: 640px;
  margin: 0 auto 20px;
  padding: 0;
  background: #444;
}

.shop_list .shop_list_box li {
  width: 85%;
  padding: 20px;
  margin: 0 auto 0 auto;
  text-align: center;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
  justify-content: flex-start
}

.shop_list .shop_list_box .shop_list_name {
  width: 80%;
  color: #fff;
  display: block;
  font-size: 25px;
  font-weight: 500;
  margin: 10px auto 10px;
  text-align: center;
  position: relative;
  border-bottom: 1px solid #fff
}

.shop_list .shop_list_box li a {
  width: 49%;
  text-align: center;
  margin: 0 2% 5px 0;
  font-size: 15px;
  color: #fff;
  display: block;
  -moz-transition: all 0.3s ease;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease
}

.shop_list .shop_list_box li a:nth-of-type(even) {
  margin: 0 0 5px 0
}

.shop_list .shop_list_box li a:hover {
  color:#ffea9b
}

.shop_list .shop_list_box li a .preparation {
  margin: 0 0 0 5px;
  padding: 3px 3px 2px;
  vertical-align: middle line-height:1;
  display: inline-block;
  color: #fff;
  font-size: 11px;
  background: red;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px
}

.open_box {
  width: 100%;
  position: absolute;
  top: 0;
  z-index: 990;
  pointer-events: none
}

.open_box .left_top,
.open_box .right_top {
  width: 15%;
  height: 15%;
  top: 0;
  position: absolute;
  z-index: 4
}

@media screen and(max-width:800px) {

  .open_box .left_top,
  .open_box .right_top {
    height: 5%
  }
}

.open_box .left_open,
.open_box .right_open {
  width: 51%;
  height: 99.5%;
  position: absolute;
  z-index: 2
}

.open_box .left_open img,
.open_box .right_open img {
  width: 100%;
  height: 100%
}

.open_box .left_top {
  left: 0
}

.open_box .right_top {
  right: 0
}

.open_box .left_open {
  left: 0
}

.open_box .right_open {
  right: 0
}

.open_box .shopname {
  width: 90%;
  height: 100%;
  margin: 0 auto;
  position: relative;
  z-index: 998
}

@media screen and(max-width:800px) {
  .open_box .shopname {
    width: 45%
  }
}

.open_box .shopname .shoprogo {
  width: 100%;
  height: auto;
  top: 400px;
  left: 0;
  margin: auto;
  position: absolute;
  z-index: 999;
  opacity: 0;
  animation: open_move 3s ease 0s 1 normal
}

@media screen and(max-width:800px) {
  .open_box .shopname .shoprogo {
    top: 90px
  }
}

.open_box .shopname .shoprogo img {
  width: 100%;
  height: auto
}

@keyframes open_move {
  0% {
    opacity: 1
  }

  50% {
    opacity: 1;
    top: 170px
  }

  100% {
    opacity: 0;
    top: 0
  }
}

@-moz-keyframes open_move {
  0% {
    opacity: 1
  }

  50% {
    opacity: 1;
    top: 170px
  }

  100% {
    opacity: 0;
    top: 0
  }
}

@-webkit-keyframes open_move {
  0% {
    opacity: 1
  }

  50% {
    opacity: 1;
    top: 170px
  }

  100% {
    opacity: 0;
    top: 0
  }
}

@-o-keyframes open_move {
  0% {
    opacity: 1
  }

  50% {
    opacity: 1;
    top: 170px
  }

  100% {
    opacity: 0;
    top: 0
  }
}

@-ms-keyframes open_move {
  0% {
    opacity: 1
  }

  50% {
    opacity: 1;
    top: 170px
  }

  100% {
    opacity: 0;
    top: 0
  }
}

@media screen and(max-width:768px) {
  @keyframes open_move {
    0% {
      opacity: 1
    }

    50% {
      opacity: 1;
      top: 90px
    }

    100% {
      opacity: 0;
      top: 0
    }
  }

  @-moz-keyframes open_move {
    0% {
      opacity: 1
    }

    50% {
      opacity: 1;
      top: 90px
    }

    100% {
      opacity: 0;
      top: 0
    }
  }

  @-webkit-keyframes open_move {
    0% {
      opacity: 1
    }

    50% {
      opacity: 1;
      top: 90px
    }

    100% {
      opacity: 0;
      top: 0
    }
  }

  @-o-keyframes open_move {
    0% {
      opacity: 1
    }

    50% {
      opacity: 1;
      top: 90px
    }

    100% {
      opacity: 0;
      top: 0
    }
  }

  @-ms-keyframes open_move {
    0% {
      opacity: 1
    }

    50% {
      opacity: 1;
      top: 90px
    }

    100% {
      opacity: 0;
      top: 0
    }
  }
}