@charset "utf-8";

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video,picture {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  line-height: 1.5em;
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}

table {
  margin : 0;
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
}

img {
  vertical-align: bottom;
  border: none;
}
picture {
  display: block;
}
html {
  -webkit-overflow-scrolling: touch;
}
/* ----------------------------------------------

 * 設定をしなおす

---------------------------------------------- */
html {
  -webkit-font-smoothing: antialiased;
  font-size: 62.5%;
}

@media screen and (max-width: 1200px) {
  html {
    font-size: 0.7320644217vw;
  }
}
@media screen and (max-width: 767px) {
  html {
    font-size: 2.6666666667vw;
  }
}
body {
  margin: 0 auto;
  padding: 0;
  font-size: 1.6rem;
  line-height: 1.8;
  color: #3E3A39;
  height: 100%;
  font-family: YakuHanRP,"M PLUS Rounded 1c","Yu Gothic Medium", "游ゴシック Medium",YuGothic, "游ゴシック体", Verdana, Meiryo, sans-serif;
  font-weight: 400;
  position: relative;
}
p {
  font-size: 1.5rem;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  p {
    font-size: 1.5rem;
  }
}
b, strong, .bold,h1,h2,h3,h4,h5,h6{
  font-family: YakuHanRP,"M PLUS Rounded 1c","游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 700;
}

sup,sub {
  font-size: 70%;
}
small {
  font-size: 80%;
}


@media only screen and ( max-width : 767px ) {
  body {font-size: 13px;}
}
@media only screen and ( max-width : 320px ) {
  body {font-size: 12px;}
}


table {
  margin : 0;
  border-collapse: collapse;
  border-spacing: 0;
  empty-cells: show;
}

img {
  vertical-align: bottom;
  border: none;
}

a {
  outline:none;
  color: #3E3A39;
}

a:hover {
  text-decoration: none;
}


a,a:hover,a:hover img,button,input {
  -webkit-transition: 0.5s;
  transition: 0.5s;
  text-decoration: none;
}

a:hover {
  filter: alpha(opacity=60);
  -moz-opacity:0.60;
  opacity:0.60;
}


.clr {
  zoom:1;
  display:inline-table;
}
.clr:after {
  content:".";
  display:block;
  height:0;
  clear:both;
  visibility:hidden;
  font-size:0;
  line-height:0;
  }

* html .clr {
  height:1%;
  display:inline-table;
  display:block;
  height:1%;
}
.clr {
  display:block;
}
* {
  -webkit-box-sizing:border-box;
  -moz-box-sizing:border-box;
  box-sizing:border-box;
}

img {
  vertical-align: bottom;
  border: none;
  max-width: 100%;
  height: auto;
}

/* -----------------------------------------------
 * COMMON
----------------------------------------------- */
.fit {
  object-fit: cover;
  font-family: 'object-fit: cover;';
  width: 100%;
  height: 100%;
}
#main {
  overflow: hidden;
}
#fixed_btn {
  position: fixed;
  z-index: 100;
  right: 0;
}

@media only screen and ( max-width : 767px ) {
  .section {
    padding: 4rem 0;
  }
  .box {
    margin-bottom: 4rem;
  }
  .br_pc {
    display: none;
  }
  .sp_none {
    display: none;
  }
  #fixed_btn {
    bottom: 5rem;
    width: 5rem;
  }
}
@media print, screen and ( min-width : 768px ) {
  .section {
    padding: 9rem 0;
  }
  .box {
    margin-bottom: 9rem;
  }
  .br_sp {
    display: none;
  }
  .sp {
    display: none;
  }
  #fixed_btn {
    bottom: 14rem;
    width: 7rem;
  }
}



/* ---------------------------------------------------------------------------------------------

　   MV

--------------------------------------------------------------------------------------------- */
#header-logo {
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
}
#header-logo span {
  display: block;
  text-indent: -9999px;
  height: 0;
}
#main_visual {
  position: relative;
}
#main_visual img {
  width: 100%;
  display: block;
}
@media only screen and ( max-width : 767px ) {
  #header-logo {
    max-width: 250px;
    height: 7rem;
  }
}
@media print, screen and ( min-width : 768px ) {
  #header-logo {
    max-width: 320px;
    height: 100px;
  }
}

/* ---------------------------------------------------------------------------------------------

　   WEB入会予約BUTTON

--------------------------------------------------------------------------------------------- */
#reservation .btn {
  max-width: 440px;
  margin: 0 auto;
  display: block;
}
@media only screen and ( max-width : 767px ) {
  #reservation .btn {
    margin-bottom: 1rem;
    max-width: 80%;
  }
  #reservation .btn:last-of-type {
    margin-bottom: 0;
  }
  #reservation p {
    margin-top: 1.5rem;
    font-size: 1rem;
  }
}
@media only screen and ( max-width : 575px ) {
  #reservation p {
    font-size: 1.1rem;
  }
}
@media print, screen and ( min-width : 768px ) {
  #reservation .container {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    max-width: 900px;
  }
  #reservation .btn {
    max-width: 49%;
    /* margin-right: 2%; */
  }
  /* #reservation .btn:last-of-type {
    margin-right: 0;
  } */
  #reservation p {
    width: 100%;
    margin-top: 2rem;
  }
}

/* ---------------------------------------------------------------------------------------------

　   キャンペーン

--------------------------------------------------------------------------------------------- */
#cam .title {
  text-align: center;
  color: #E26E9D;
  position: relative;
}
#cam .title span {
  position: relative;
  display: inline-block;
}
#cam .title span:before,
#cam .title span:after {
  content: "";
  background: #E26E9D;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 10px;
}
#cam .title span:before {
  left: 0;
}
#cam .title span:after {
  right: 0;
}
@media only screen and ( max-width : 767px ) {
  #cam .title {
    font-size: 24px;
    margin-bottom: 20px;
  }
  #cam .title span:before,
  #cam .title span:after {
    width: 20px;
    height: 3px;
  }
  #cam .title span {
    padding: 0 40px;
  }
}
@media print, screen and ( min-width : 768px ) {
  #cam .title {
    font-size: 34px;
    margin-bottom: 40px;
  }
  #cam .title span:before,
  #cam .title span:after {
    width: 40px;
    height: 5px;
  }
  #cam .title span {
    padding: 0 60px;
  }
}

/* ---------------------------------------------------------------------------------------------

　   魅力

--------------------------------------------------------------------------------------------- */
#charm {
  background: url(../image/bg_stripe.jpg) repeat top left / 31px;
}
.title_marker {
  text-align: left;
}
.title_marker span.title_marker_inner {
  box-decoration-break: clone;  
  -webkit-box-decoration-break: clone;
  display: inline;
  padding: .05em .3em;
  line-height: 1.8;
  background-color: #FFF096;
  border-radius: 5px;
  font-weight: 900;
}
#charm .title {
  text-align: center;
  line-height: 1.5em;
  margin-bottom: .2em;
}
#charm .title .marker {
  background:linear-gradient(transparent 80%, #FFF096 80%);
}
#charm .sub_title span {
  color: #E26E9D;
  border-radius: 80px;
  background: #fff;
  font-weight: 900;
  text-align: center;
  padding: .1em 1em;
}

.charm_block {
  border: 2px solid #DDDCD6;
  border-radius: 40px;
  background: #fff;
  position: relative;
}
.charm_block:last-child {
  margin-bottom: 0;
}
.charm_content_pic {
  border-radius: 38px;
}

#charm .slider{
  margin: 0 auto;
  position: relative;
}
#charm .slider-item {
  position: relative;
}
#charm .slider .next-arrow,
#charm .slider .prev-arrow {
  height: 50px !important;
  width: 22px !important;
}
#charm .slider .next-arrow {
  right: -40px;
}
#charm .slider .prev-arrow {
  left: -40px;
}
#charm .slider .slide-arrow img {
  height: 50px !important;
  width: 22px !important;
}
#charm #charm01 .slider-nav {
  display: flex;
  justify-content: center;
}
#charm .slider-nav img{
  /*width: calc(1100px / 6);
  height: 137px;*/
  width: 80px !important;
  height: 80px !important;
  object-fit: cover;
  border-radius: 50%;
  margin: 7px;
}
#charm .slider-nav img:last-child {
  margin-right: 0;
}
#charm .slider-nav .slick-current,
#charm .slider-nav .thumbnail-current {
  border: 3px solid #EA6DA1;
}
#charm .slider .slider-item {
  border-radius: 20px;
  overflow: hidden;
}
#charm .slider img{
  /*height: 390px;
  object-fit: cover;*/
}

#charm .slider-ttl{
  background: rgba(226,110,157,1);
  color: #fff;
  /*position: absolute;*/
  z-index: 2;
  width: 100%;
  left: 0;
  bottom: 0;
}

#charm .slider-ttl__text{
  text-align: center;
  font-weight: 900;
  color: #FFF096;
}
#charm .slider__text {
  font-weight: 700;
}

#charm .slick-list {
  padding: 0 !important;
}
#charm02 .option-main-item {
  padding: 0 3px 3px 0;
}
#charm02 .option-main-item img {
  box-shadow: 3px 3px 0 #DDDCD6;
  border: 1px solid #DDDCD6;
  border-radius: 20px;
}
.option-sub {
  display: flex;
  flex-wrap: wrap;
}
.option-sub .option-sub__item {
  width: 32% !important;
  margin-right: 2%;
  margin-top: 2%;
  /*background: #E26E9D;*/
  border-radius: 24px;
  border: 1px solid #DDDCD6;
  box-shadow: 3px 3px 0 #DDDCD6;
  overflow: hidden;
}
.option-sub .option-sub__item img {
  border-radius: 20px;
}
.option-sub .option-sub__item.thumbnail-current {
  border: 3px solid #EA6DA1;
  overflow: hidden;
}
.option-sub .option-sub__item:nth-child(-n+3) {
  margin-top: 0;
}
.option-sub .option-sub__item:nth-child(3n) {
  margin-right: 0;
}
.charm_label {
  position: absolute;
  z-index: 2;
}
.charm_content {
  text-align: center;
}
.charm_top_text {
  text-align: left;
}
.charm_top_text p {
  font-weight: 900;
}
.charm_top_img {
  position: relative;
}
.charm01_movie {
  position: relative;
  z-index: 2;
  display: block;
  transition: .3s;
}
.charm01_movie:hover {
  opacity: 1;
}
.charm01_bear {
  position: absolute;
  z-index: 1;
}
.charm_top_Area {
  position: relative;
}
.charm02_bear01,
.charm02_bear02,
.charm04_bear {
  position: absolute;
  z-index: 1;
}
#charm02 .option-list {
  position: relative;
  z-index: 2;
}
#charm03 .charm_top_text {
  position: relative;
}
.charm_top_text p span {
  display: block;
  font-weight: 400;
  margin-top: 1rem;
}
#charm01 h3 {
  color: #E26E9D;
  font-weight: 900;
}
@media only screen and ( max-width : 767px ) {
  #charm .title {
    font-size: 2rem;
  }
  #charm .sub_title {
    margin-bottom: 5rem;
  }
  #charm .sub_title span {
    border: .3rem solid #E26E9D;
    font-size: 1.5rem;
    display: block;
  }
  #charm #charm01 .slider-nav {
    flex-wrap: wrap;
  }
  .charm_label {
    top: -1rem;
    left: -1rem;
    width: 7rem;
  }
  .charm_block {
    margin-bottom: 5rem;
    box-shadow: 3px 3px 0 #DDDCD6;
  }
  .charm_content {
    padding: 3rem 1.5rem;
  }
  #charm #charm01 .slider-nav {
    margin-top: 1.5rem;
  }
  .option-sub {
    max-width: 90%;
    margin: 2rem auto 0;
  }
  /*.option-sub .option-sub__item {
    border-radius: 1.5rem;
  }*/
  #charm .slider .next-arrow {
    right: -1.5rem;
  }
  #charm .slider .prev-arrow {
    left: -1.5rem;
    z-index: 10;
  }
  #charm .slider-nav img {
    margin: 7px;
    width: 60px !important;
    height: 60px !important;
  }
  #charm .slider-ttl__text {
    font-size: 1.6rem;
    padding: 1rem;
  }
  #charm .slider__text {
    padding: 0 1.5rem 1.5rem;
    text-align: left;
    font-size: 1.2rem;
  }
  .charm_top_text .title_marker {
    font-size: 2.1rem;
    margin-bottom: 1rem;
    padding-left: 4rem;
  }
  .charm_top_text .title_marker_small {
    font-size: 1.5rem;
    margin-bottom: 0;
  }
  #charm04 .charm_top_text .title_marker {
    margin-bottom: 0;
  }
  #charm04 .charm_top_text .title_marker.sp {
    margin-bottom: 1rem;
    padding-left: 0;
  }
  .charm01_bear {
    display: none;
  }
  #charm01 .charm_top_text img {
    max-width: 80%;
    display: block;
    margin: 2rem auto;
  }
  #charm01 .charm_top_img {
    margin-bottom: 3rem;
  }
  #charm01 .charm_top_img .charm01_movie,
  #charm03 .charm_top_img .charm03_movie {
    max-width: 60%;
    margin: 0 auto;
    display: block;
  }
  .charm02_bear01,
  .charm02_bear02 {
    display: none;
  }
  #charm03 .charm_top_text {
    margin-bottom: 2rem;
  }
  #charm03 .charm_top_text p {
    /*width: 60%;
    text-align: left;*/
  }
  .charm03_bear01 {
    width: 40%;
    display: block;
    margin: 2rem auto 0;
  }
  .charm03_bear02 {
    display: none;
  }
  .charm_top_text p span {
    font-size: .9rem;
  }
  #charm04 .charm_top_Area {
    padding-bottom: 30vw;
  }
  .charm04_bear {
    bottom: -3rem;
    right: 0;
    width: 100%;
  }
  #charm01 h3 {
    font-size: 2rem;
    margin-bottom: 0;
    margin-top: 3rem;
  }
  .charm05_bear01 {
    display: none;
  }
  .charm05_bear02 {
    width: 15rem;
    margin: 2rem auto 0;
  }
}
@media only screen and ( max-width : 575px ) {
  .charm_label {
    top: -2rem;
    left: -2rem;
    width: 10rem;
  }
  #charm .title {
    font-size: 3rem;
  }
  #charm .sub_title span {
    /*font-size: 5.6vw;*/
    font-size: 2.2rem;
  }
  .charm_top_text .title_marker {
    font-size: 2.8rem;
    margin-bottom: 1rem;
    padding-left: 7rem;
  }
  .charm_top_text .title_marker_small {
    font-size: 2rem;
    margin-bottom: 0;
  }
  #charm04 .charm_top_text .title_marker {
    padding-left: 5.5rem;
  }
  #charm04 .charm_top_text .title_marker.sp {
    padding-left: 0;
  }
  .charm_top_text p {
    font-size: 1.8rem;
    text-align: center;
  }
  .charm_top_text p span {
    font-size: 1.2rem;
  }
  #charm .slider-ttl__text {
    font-size: 2rem;
  }
  #charm .slider__text {
    font-size: 1.5rem;
  }
}
@media print, screen and ( min-width : 768px ) {
  #charm01 h3 {
    font-size: 3rem;
    margin-bottom: 2rem;
    margin-top: 5rem;
  }
  .title_marker {
    font-size: 6rem;
    margin-bottom: 3rem;
  }
  .title_marker_small {
    font-size: 4.6rem;
    margin-bottom: 0;
  }
  #charm .title {
    font-size: 6rem;
  }
  #charm .sub_title {
    display: flex;
    justify-content: center;
    margin-bottom: 13rem;
  }
  #charm .sub_title span {
    border: .6rem solid #E26E9D;
    font-size: 3.6rem;
  }
  .charm_label {
    top: -5rem;
    left: -5rem;
    width: 20rem;
  }
  .charm_block {
    margin-bottom: 13rem;
    box-shadow: .6rem .6rem 0 #DDDCD6;
  }
  .charm_content {
    padding: 5rem 6rem;
  }
  #charm .slider{
    max-width: 730px;
  }
  #charm01 .charm_top_Area,
  #charm03 .charm_top_Area {
    max-width: 52rem;
    margin: 0 auto 7rem;
  }
  #charm05 .charm_top_Area {
    max-width: 48rem;
    margin: 0 auto 2rem;
  }

  #charm .slider-nav{
    margin: 2rem auto;
  }
  #charm .slider-ttl {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: .15rem;
  }
  #charm .slider-ttl__text {
    font-size: 3rem;
    width: 50%;
    padding: 3rem;
    /*padding: 1.5rem;*/
  }
  .slider__text {
    width: 50%;
    text-align: left;
    padding: 3rem;
  }
  #charm01 .charm_title_pic {
    margin-bottom: 5rem;
  }
  .charm_top_text p {
    font-size: 3rem;
  }
  .charm_top_text p span {
    font-size: 1.6rem;
  }
  #charm01 .charm_top_colArea {
    max-width: 730px;
    margin: 0 auto 7rem;
    position: relative;
  }
  #charm02 .charm_top_Area {
    display: flex;
    justify-content: center;
    max-width: 730px;
    margin: 0 auto 12rem;
  }
  .charm01_bear {
    width: 20.3rem;
    top: -2.5rem;
    right: -17rem;
  }
  #charm01 .charm_top_text {
    /* width: 58%; */
    width: 100%;
    padding-top: 12rem;
  }
  #charm01 .charm_top_img {
    width: 38%;
    position: absolute;
    right: 0;
    bottom: 0;
  }
  .charm01_movie:hover {
    opacity: 1;
    transform: scale(1.05);
  }
  .charm02_bear01 {
    width: 13.3rem;
    left: -2.5rem;
    bottom: -10rem;
  }
  .charm02_bear02 {
    right: -4rem;
    bottom: -14rem;
    width: 29.5rem;
  }
  #charm .option-sub .slick-track {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .option-list {
    display: flex;
    align-items: flex-start;
  }
  .option-main {
    width: 292px;
    margin-right: 28px;
  }
  .option-sub {
    width: calc(100% - 300px);
  }
  .charm_label {
    /*width: 20rem;*/
  }
  .charm03_bear01,
  .charm03_bear02,
  .charm05_bear01,
  .charm05_bear02 {
    position: absolute;
    z-index: 1;
  }
  .charm03_bear01 {
    bottom: -8rem;
    right: -15rem;
    width: 23rem;
  }
  .charm03_bear02 {
    left: -2rem;
    bottom: 0;
    width: 23rem;
  }

  .charm05_bear01 {
    width: 23rem;
    right: 3rem;
    top: 3rem;
  }
  .charm05_bear02 {
    width: 18rem;
    left: 3rem;
    bottom: 3rem;
  }
  #charm03 .charm_top_colArea {
    padding-left: 7rem;
  }
  .charm04_bear {
    bottom: -12rem;
    right: -3rem;
    width: 49.6rem;
  }
  #charm04 .charm_content {
    padding-bottom: 12rem;
  }
  #charm04 .title_marker {
    margin-left: 12rem;
  }
}
@media print, screen and ( min-width : 992px ) {
  /*#charm .title {
    font-size: 60px;
  }*/

  /*#charm .sub_title span {
    border: 6px solid #E26E9D;
    font-size: 36px;
  }*/
  #charm03 .charm_top_colArea {
    padding-left: 12rem;
  }
}
@media print, screen and ( min-width : 1200px ) {
  #charm01 .charm_top_text {
    padding-top: 0;
  }
  #charm03 .charm_top_text {
    padding-top: 0;
  }
  .title_marker {
    font-size: 4.6rem;
    margin-bottom: 3rem;
  }
  .title_marker_small {
    font-size: 3.8rem;
    margin-bottom: 0;
  }
  .charm_top_text p {
    font-size: 2.7rem;
  }
}

/* ---------------------------------------------------------------------------------------------

　   SLIDER

--------------------------------------------------------------------------------------------- */
.prev-arrow{
  width: 70px;
  height: 70px;
  border: none;
  position: absolute;
  left: -100px;
  top: 50%;
  transform: translate(0%, -50%);
  background: transparent;
  padding: 0px;
}

.next-arrow{
  width: 70px;
  height: 70px;
  border: none;
  position: absolute;
  right: -100px;
  top: 50%;
  transform: translate(0%, -50%);
  background: transparent;
  padding: 0px;
}

.slide-arrow img{
  width:70px;
  height: 70px !important;
  display: block;
}

.prev-arrow-op{
  display: none !important;
}

.next-arrow-op{
  display: none !important;
}

.slide-arrow-op img{
  display: none;
}

/* ---------------------------------------------------------------------------------------------

　   ゆるかつ

--------------------------------------------------------------------------------------------- */
#yurukatsu {
  background: #FFF096;
}
@media only screen and ( max-width : 767px ) {

}
@media print, screen and ( min-width : 768px ) {

}

/* ---------------------------------------------------------------------------------------------

　   Instagram

--------------------------------------------------------------------------------------------- */
#instagram a {
  display: block;
  overflow: hidden;
}
@media only screen and ( max-width : 767px ) {
  #instagram a {
    max-width: 90%;
    margin: 0 auto;
    box-shadow: 4px 4px 0 #DDDCD6;
    border-radius: 20px;
  }
}
@media print, screen and ( min-width : 768px ) {
  #instagram a {
    box-shadow: 6px 6px 0 #DDDCD6;
    border-radius: 30px;
  }
}

/* ---------------------------------------------------------------------------------------------

　   SHOP

--------------------------------------------------------------------------------------------- */
#shop {
  background: url(../image/bg_stripe.jpg) repeat top left / 31px;
  position: relative;
}
#shop:after {
  content: "";
  width: 100%;
  background: #F7C9DD;
  height: 50%;
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 1;
}
#shop .container {
  position: relative;
  z-index: 10;
}
.shop_name_title {
  position: relative;
}
.shop_bear {
  position: absolute;
  z-index: 2;
}
.shop_inner {
  background: #fff;
  border-radius: 30px;
  border: 1px solid #C9C9C9;
}
.shop_name {
  text-align: center;
}
.shop_info dl {
  margin-bottom: 1.5em;
}
.shop_map iframe {
  display: block;
  width: 100%;
  border-radius: 20px;
  overflow: hidden;
}
.small_txt,
.shop_info .small_txt {
  font-size: 80%;
}
.sns_link {
  display: flex;
  aligh-items: center;
  gap: 10px;
}

@media only screen and ( max-width : 767px ) {
  .shop_inner {
    box-shadow: 3px 3px 0 #DDDCD6;
    padding: 30px 15px 15px;
  }
  .shop_name_title {
    max-width: 80%;
    margin: 0 auto 1.5rem;
  }
  .shop_info {
    margin-bottom: 1.5rem;
    font-size: 1.1rem;
  }
  .shop_info p {
    font-size: 1.1rem;
  }
  .shop_name {
    margin-bottom: 1.5rem;
  }
  .shop_map iframe {
    height: 30rem;
  }
  .shop_bear {
    display: none;
  }
}
@media only screen and ( max-width : 575px ) {
  .shop_info {
    font-size: 1.5rem;
  }
  .shop_info p {
    font-size: 1.5rem;
  }
}
@media print, screen and ( min-width : 768px ) {
  #shop {
    /*padding-top: 30px;*/
    padding-top: 7rem;
  }
  .shop_inner {
    box-shadow: 6px 6px 0 #DDDCD6;
    padding: 5rem;
  }
  .shop_name_title {
    margin-bottom: 4rem;
  }
  .shop_name {
    margin-bottom: 3rem;
  }
  .shop_info {
    width: 52%;
    font-size: 2.1rem;
  }
  .shop_map {
    width: 44%;
  }
  .shop_map iframe {
    height: 100%;
  }
  .shop_bear01 {
    left: 0;
    bottom: -6rem;
    max-width: 20%;
  }
  .shop_bear02 {
    right: 0;
    bottom: -4rem;
    max-width: 20%;
  }
  .shop_name img {
    max-width: 50%;
  }
  .access_train img {
    max-width: 50%;
  }
  .shop_info dl {
    display: flex;
    flex-wrap: wrap;
  }
  .shop_info_dl1 dt {
    width: 3em;
  }
  .shop_info_dl1 dd {
    width: calc(100% - 3em);
  }
  .shop_info_dl2 dt {
    width: 5em;
  }
  .shop_info_dl2 dd {
    width: calc(100% - 5em);
  }
  .shop_info_dl3 dt {
    width: 9em;
  }
  .shop_info_dl3 dd {
    width: calc(100% - 9em);
  }
  .shop_info_dl4 dt {
    width: 8em;
  }
  .shop_info_dl4 dd {
    width: calc(100% - 8em);
  }
  .shop_info_dl5 dt {
    width: 4em;
  }
  .shop_info_dl5 dd {
    width: calc(100% - 4em);
  }
}
@media print, screen and ( min-width : 1200px ) {
  .shop_info {
    font-size: 1.5rem;
  }
}


/* ---------------------------------------------------------------------------------------------

　   1Day Pass

--------------------------------------------------------------------------------------------- */
#oneday_pass {
  background: url(../image/1day_pass_bg.jpg) no-repeat center / cover;
}
#oneday_pass .container {
  position: relative;
}
#oneday_pass h2 {
  text-align: center;
}
.oneday_pass_title {
  text-align: center;
}
.oneday_pass_title p {
  color: #fff;
  font-weight: 900;
  position: relative;
  line-height: 1.3;
}
.oneday_pass_title p span {
  display: block;
}
@media only screen and ( max-width : 767px ) {
  #oneday_pass .container:before,
  #oneday_pass .container:after {
    content: "";
    position: absolute;
    width: 15rem;
    height: 20rem;
    background: url(../image/1daypass_deco.png) no-repeat left top / 100%;
  }
  #oneday_pass .container:before {
    top: -2rem;
    left: -7rem;
  }
  #oneday_pass .container:after {
    transform: scale(-1, 1);
    top: -2rem;
    right: -7rem;
  }
  #oneday_pass h2 {
    margin-bottom: 1rem;
  }
  #oneday_pass h2 img {
    max-width: 70%;
  }
  .oneday_pass_title {
    margin-bottom: 1.5rem;
  }
  .oneday_pass_title p {
    font-size: 3.4rem;
  }
  .oneday_pass_title p span {
    font-size: 2rem;
    margin-top: .5em;
  }
  #oneday_pass .btn {
    width: 80%;
    display: block;
    margin: 1.5rem auto 0;
  }
}
@media print, screen and ( min-width : 768px ) {
  #oneday_pass .container:before,
  #oneday_pass .container:after {
    content: "";
    position: absolute;
    width: 30rem;
    height: 40rem;
    background: url(../image/1daypass_deco.png) no-repeat left top / 100%;
  }
  #oneday_pass .container:before {
    top: -4rem;
    left: -10rem;
  }
  #oneday_pass .container:after {
    transform: scale(-1, 1);
    top: -4rem;
    right: -10rem;
  }
  #oneday_pass h2 {
    margin-bottom: 2rem;
  }
  .oneday_pass_title {
    margin-bottom: 2rem;
  }
  .oneday_pass_title p {
    font-size: 5.6rem;
    padding: 0 10%;
    display: inline-block;
    background: url(../image/1daypass_balloonL.png) no-repeat left bottom / auto 90%,url(../image/1daypass_balloonR.png) no-repeat right bottom / auto 90%;
  }
  .oneday_pass_title p span {
    font-size: 2.8rem;
  }
  #oneday_pass .btn {
    width: 42.6rem;
    display: block;
    margin: 5rem auto 0;
  }
}


/* ---------------------------------------------------------------------------------------------

　   3D VIEW

--------------------------------------------------------------------------------------------- */
#view .container {
  position: relative;
  text-align: center;
}

@media only screen and ( max-width : 767px ) {
  #view {
    background: url(../image/3d_view_bg_sp.jpg) no-repeat center / cover;
    padding: 4rem 0 0;
  }
  #view a {
    max-width: 80%;
    display: block;
    margin: 0 auto;
  }
  .view_bear {
    display: block;
    max-width: 23rem;
    margin: 3rem auto 0;
  }
}
@media print, screen and ( min-width : 768px ) {
  #view {
    background: url(../image/3d_view_bg.jpg) no-repeat center / cover;
    height: 32vw;
    max-height: 450px;
  }
  #view .container {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .view_bear {
    right: 0;
    bottom: 0;
    width: 23rem;
    position: absolute;
  }
}
/* ---------------------------------------------------------------------------------------------

　   パース

--------------------------------------------------------------------------------------------- */
#perspective {
  background: linear-gradient(to bottom,  rgba(255,255,255,1) 0%,rgba(218,218,218,1) 100%);
}
@media only screen and ( max-width : 767px ) {
  
}
@media print, screen and ( min-width : 768px ) {
  
}



/* ---------------------------------------------------------------------------------------------

　   特典

--------------------------------------------------------------------------------------------- */
#benefits {
  background: url(../image/bg_stripe.jpg) repeat top left / 31px;
}
.benefits_box {
  position: relative;
}
#benefits h2 {
  font-weight: 900;
  text-align: center;
}
#benefits h2 span {
  display: inline-block;
  position: relative;
}
#benefits h2 span:before,
#benefits h2 span:after {
  content: "";
  position: absolute;
  background: url(../image/benefits_balloon.png) no-repeat center / 100%;
  bottom: 0;
}
#benefits h2 span:before {
  left: 0;
}
#benefits h2 span:after {
  transform: rotate(-90deg);
  right: 0;
}
.benefits_box {
  background: #FBE5EE;
  padding: 0 2rem 2rem 2rem;
}
.benefits_content {
  background: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  border-radius: 1rem;
  padding: 2.5rem 1.5rem 0;
}
.benefits_content .benefits_box_pic {
  margin-top: auto;
}
.benefits_title_wrapper {
  position: relative;
}
.benefits_title {
  color: #E46F9D;
  font-weight: 900;
  line-height: 1.2em;
  display: block;
  display: flex;
  align-items: center;
}
.benefits_num {
  position: absolute;
  top: 0;
  left: .8rem;
}
@media only screen and ( max-width : 767px ) {
  #benefits h2 {
    font-size: 2.4rem;
    margin-bottom: 2rem;
  }
  #benefits h2 span {
    padding: 0 7rem;
  }
  #benefits h2 span:before,
  #benefits h2 span:after {
    width: 7rem;
    height: 7rem;
  }
  .benefits_pic img {
    max-width: 24rem;
  }
  .benefits_wrapper {
    margin-top: 4rem;
  }
  .benefits_box {
    margin-bottom: 2rem;
  }
  .benefits_box:last-child {
    margin-bottom: 0;
  }
  .benefits_title {
    padding-left: 9rem;
    font-size: 2rem;
    height: 8rem;
  }
  .benefits_num {
    width: 7rem;
  }
  .benefits_content .benefits_box_pic {
    margin-top: 2rem;
  }
}
@media print, screen and ( min-width : 768px ) {
  #benefits h2 {
    font-size: 4.6rem;
    margin-bottom: 2rem;
  }
  #benefits h2 span {
    padding: 0 12rem;
  }
  #benefits h2 span:before,
  #benefits h2 span:after {
    width: 11.5rem;
    height: 11.5rem;
  }
  .benefits_wrapper {
    margin-top: 6rem;
  }
  .benefits_box {
    width: 31%;
  }
  .benefits_content {
    height: 34rem;
  }
  .benefits_title {
    padding-left: 10rem;
    font-size: 2.4rem;
    height: 9rem;
  }
  .benefits_num {
    width: 8rem;
  }
  .benefits_box_pic {
    width: 22.5rem;
  }
}
@media print, screen and ( min-width : 1200px ) {
}

/* ---------------------------------------------------------------------------------------------

　   ANIMATION

--------------------------------------------------------------------------------------------- */

.fadein {
  opacity: 0;
  transition: .8s;
}
.fadein.fadein__active {
  opacity: 1;
  transition-delay: .1s;
}
.fadein.fadein__active.delay1 {
  transition-delay: .4s;
}
.fadein.fadein__active.delay2 {
  transition-delay: .8s;
}
.fadein.fadein__active.delay3 {
  transition-delay: 1.2s;
}
.fadein.fadein__active.delay4 {
  transition-delay: 1.6s;
}
@media print, screen and ( min-width : 768px ) {
  .col2_anim_pc .fadein.fadein__active:nth-child(2n) {
    transition-delay: .3s !important;
  }
  .col3_anim_pc .fadein.fadein__active:nth-child(3n+2) {
    transition-delay: .3s !important;
  }
  .col3_anim_pc .fadein.fadein__active:nth-child(3n) {
    transition-delay: .6s !important;
  }
}

.fadein_up {
  opacity: 0;
  transition: .8s;
  animation-timing-function:cubic-bezier(0.34, 1.56, 0.64, 1);
  transition-delay: .3s;
  animation-delay: .3s;
}
.fadein_up.fadein_up__active {
  opacity: 1;
  animation-name: fadein_up__active;
  animation-duration: 1.2s;
}
@media print, screen and ( min-width : 768px ) {
  .pc_fadein_up {
    opacity: 0;
    transition: .8s;
    animation-timing-function:cubic-bezier(0.34, 1.56, 0.64, 1);
    transition-delay: .3s;
    animation-delay: .3s;
  }
  .pc_fadein_up.pc_fadein_up__active {
    opacity: 1;
    animation-name: fadein_up__active;
    animation-duration: 1.2s;
  }
  .col2_anim_pc .fadein_up.fadein_up__active:nth-child(3n+2) {
    transition-delay: .6s;
    animation-delay: .6s;
  }
  .col3_anim_pc .fadein_up.fadein_up__active:nth-child(3n+2),
  .col3_anim_pc .pc_fadein_up.pc_fadein_up__active:nth-child(3n+2) {
    transition-delay: .6s;
    animation-delay: .6s;
  }
  .col3_anim_pc .fadein_up.fadein_up__active:nth-child(3n),
  .col3_anim_pc .pc_fadein_up.pc_fadein_up__active:nth-child(3n) {
    transition-delay: .9s;
    animation-delay: .9s;
  }
}
@keyframes fadein_up__active {
    from {
        transform: translateY(30px);
    }
    to {
        transform: translateY(0);
    }
}
.fadein_up.fadein_up__active.delay1 {
  transition-delay: .2s;
  animation-delay: .2s;
}
.fadein_up.fadein_up__active.delay2 {
  transition-delay: .4s;
  animation-delay: .4s;
}

/* 拡大 */
.zoomIn{
  opacity: 0;
  animation-duration:0.5s;
  animation-fill-mode:forwards;
  /*visibility: hidden;*/
}
.zoomIn.zoomIn__active {
  opacity: 1;
  animation-name:zoomInAnime;
  /*visibility: visible;*/
}

@keyframes zoomInAnime{
  from {
  transform: scale(0.6);
  }

  to {
      transform: scale(1);
  }
}

/* ---------------------------------------------------------------------------------------------

　   右から左へ動くスライダー（複数枚同時表示タイプ）

--------------------------------------------------------------------------------------------- */
.horizontal-slider {
  position: relative;
  overflow: hidden;
  margin: 0 auto;
}
.horizontal-slider .slick-list {
  overflow: hidden;
  margin: 0 -10px;
}
.horizontal-slider .slick-track {
  display: flex;
  align-items: stretch;
}
.horizontal-slider .slick-slide {
  padding: 0 10px;
  height: auto;
}
.horizontal-slider .slick-slide > div {
  height: 100%;
}
.horizontal-slider .slick-slide img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 10px;
  transition: transform 0.3s ease;
}

.machine_slider_item {
  position: relative;
}
.machine_slider_item img {
  object-fit: cover;
}

@media only screen and ( max-width : 767px ) {
  .horizontal-slider .slick-list {
    margin: 0 -5px;
  }
  .horizontal-slider .slick-slide {
    padding: 0 5px;
  }
  .horizontal-slider .slick-slide img {
    border-radius: 8px;
  }
  .machine_slider {
    margin-left: -1.5rem;
    margin-right: -1.5rem;
    width: calc(100% + 3rem);
    max-width: calc(100% + 3rem);
    margin-top: 1rem;
  }
}
@media print, screen and ( min-width : 768px ) {
  .horizontal-slider {
    max-width: 100%;
  }
  .horizontal-slider .slick-list {
    margin: 0 -15px;
  }
  .horizontal-slider .slick-slide {
    padding: 0 15px;
  }
  .machine_slider {
    margin-left: -6rem;
    margin-right: -6rem;
    width: calc(100% + 12rem);
    max-width: calc(100% + 12rem);
  }
}