body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset {
  border: 0;
}

img {
  border: none;
  vertical-align: bottom;
}

address, caption, cite, code, dfn, em, var {
  font-style: normal;
  font-weight: normal;
}

ol, ul {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before, q:after {
  content: "";
}

abbr, acronym {
  border: 0;
}

body {
  font: 13px arial, helvetica, clean, sans-serif;
  *font-size: small;
  *font-size: x-small;
}

table {
  font-size: inherit;
  font: 100%;
}

/* for Safari */
select, input, textarea {
  font: 99% arial, helvetica, clean, sans-serif;
}

pre, code {
  font: 115% monospace;
  *font-size: 100%;
}

body * {
  letter-spacing: 1px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}

.clearfix {
  display: inline-block;
}

.clearfix {
  display: block;
}

html {
  margin-bottom: 1px;
  height: 100%;
}

body {
  text-align: center;
}
body * {
  line-height: 1;
}

hr {
  display: none;
}

.inner {
  margin: 0 auto;
  /* text-align: left; */
  width: 100%;
}

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

a, p, img {
  display: block;
}

a {
  cursor: pointer;
}
a p {
  cursor: pointer;
}
a p img {
  cursor: pointer;
}

.map {
  position: relative;
  padding: 0 6.5%;
  height: 61.23vw;
  max-height: 310.67px;
}
.map iframe {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 10;
}
.map .map_back {
  position: absolute;
  width: 100%;
  height: auto;
  top: 0;
  left: 0;
  z-index: 0;
}

.pamph-bnr-wrap {
  position: relative;
}

.pamph-bnr-row {
  position: absolute;
  bottom: 7%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 3%;
}

.pamph-bnr-row p {
  width: 48.5%;
}

.pamph-bnr-row p img {
  width: 100%;
}

.map.bb {
  background-color: #fffcbd;
}

#stalker-nav {
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 100;
  width: 100%;
}
#stalker-nav .btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  position: relative;
  z-index: 110;
}
#stalker-nav .btn li {
  width: 50%;
}
#stalker-nav .btn li a {
  display: block;
}
#stalker-nav .btn li a img {
  width: 100%;
}
#stalker-nav .btn .tel_up .tels {
  display: none;
}
#stalker-nav .btn .tel_up.active .tels {
  display: block;
}
#stalker-nav .shadow {
  position: absolute;
  top: 6px;
  left: 7.865%;
  width: 84.27%;
  height: 18.13vw;
  max-height: 90.67px;
  background-color: #000;
  -ms-filter: blur(6px);
  -webkit-filter: blur(6px);
          filter: blur(6px);
  z-index: 90;
  opacity: 0.4;
}
#stalker-nav #pagetop {
  position: absolute;
  right: 3vw;
  top: -15vw;
}
#stalker-nav #pagetop a {
  display: block;
  width: 10vw;
  height: 10vw;
  background-color: #fc5185;
  text-indent: -20000px;
}
#stalker-nav #pagetop a:before {
  position: absolute;
  top: 4vw;
  left: 3vw;
  content: "";
  width: 3vw;
  height: 3vw;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.gallery_box {
  position: relative;
}
.gallery_box .gallery {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.gallery_box .gallery img {
  width: 33.33vw;
  max-width: 166.66px;
  height: 33.33vw;
  max-height: 166.66px;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 10%;
     object-position: 50% 10%;
  cursor: pointer;
}
.gallery_box .popup_icons {
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}
.gallery_box .popup_icons .popup_icon {
  position: relative;
  width: 33.33vw;
  max-width: 166.66px;
  height: 33.33vw;
  max-height: 166.66px;
  -o-object-fit: cover;
     object-fit: cover;
}
.gallery_box .popup_icons .popup_icon img {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 17.6%;
}

#lightbox {
  position: relative;
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.8);
  z-index: 9999;
}
#lightbox.show {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

#lightbox-image {
  max-width: 90%;
  max-height: 90%;
  -webkit-animation-duration: 0.3s;
          animation-duration: 0.3s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}
#lightbox-image.swipe-left {
  -webkit-animation-name: swipeLeft;
          animation-name: swipeLeft;
}
#lightbox-image.swipe-right {
  -webkit-animation-name: swipeRight;
          animation-name: swipeRight;
}

.lightbox_close {
  position: absolute;
  right: min(5%, 30px);
  top: 40px;
  width: 40px;
  height: 1px;
  background-color: #fff;
  pointer-events: none;
}
.lightbox_close.line1 {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.lightbox_close.line2 {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

.arrow {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  width: 50px;
  height: 50px;
  background-color: rgba(255, 255, 255, 0.7);
  border-radius: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  cursor: pointer;
  z-index: 9999;
}

#prev-arrow {
  left: 20px;
}

#next-arrow {
  right: 20px;
}

@-webkit-keyframes swipeLeft {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
    opacity: 0;
  }
}

@keyframes swipeLeft {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateX(-100%);
            transform: translateX(-100%);
    opacity: 0;
  }
}
@-webkit-keyframes swipeRight {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    opacity: 0;
  }
}
@keyframes swipeRight {
  from {
    -webkit-transform: translateX(0);
            transform: translateX(0);
    opacity: 1;
  }
  to {
    -webkit-transform: translateX(100%);
            transform: translateX(100%);
    opacity: 0;
  }
}
.flex {
  -js-display: flex;
  display: -webkit-box;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: -ms-flexbox;
  display: flex;
}

.slider {
  width: 100%;
  position: relative;
  background-color: #FFFFBD;
}
.slider .slick-slide {
  margin: 0;
}
.slider .slick-slide img {
  width: 100%;
  height: auto;
}

@media only screen and (min-width: 640px) {
  .mb {
    display: none;
  }
  .inner {
    max-width: 500px;
  }
  #stalker-nav {
    max-width: 500px;
    margin-left: calc(50% - 250px);
  }
}
@media only screen and (max-width: 639px) {
  .pcTb {
    display: none;
  }
  .arrow {
    display: none;
  }
}

/* キラッと光るボタン */
/* https://web-technology.work/shine/ */

.reflection{
  display:inline-block;
  position:relative;
  overflow:hidden;
  width:42%;
  margin-top: 10px;
  margin-right: 8px;
  margin-left: 8px;
  }
   
.reflection:after {
  content:"";
  height:100%;
  width: 50px;
  position:absolute;
  top:-180px;
  left:0;
  background-color: #fff;
  opacity:0;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  -webkit-animation: reflection 5s ease-in-out infinite;
          animation: reflection 5s ease-in-out infinite;
  }
   
  @keyframes reflection {
  0% { -webkit-transform: scale(0) rotate(45deg); opacity: 0; }
  80% { -webkit-transform: scale(0) rotate(45deg); opacity: 0.1; }
  81% { -webkit-transform: scale(4) rotate(45deg); opacity: 0.3; }
  100% { -webkit-transform: scale(50) rotate(45deg); opacity: 0; }
  }
  /* end https://web-technology.work/shine/ */



  .button00 {
    padding-bottom: 20px;
  }

  .button01 {
    padding-top: 20px;
	padding-bottom: 30px;
  }

  .button02 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	    -ms-flex-pack: center;
	        justify-content: center;
	gap: 12px;
	padding-top: 40px;
    padding-bottom: 50px;
  }

  .button02 .reflection {
    width: 50%;
    max-width: 346px;
    margin: 10px 0 0;
  }

  .button02 .reflection a,
  .button02 .reflection img {
    display: block;
    width: 100%;
    height: auto;
  }

  .button03 {
    padding-bottom: 30px;
  }

  .buttonsp {
    margin-top: -35%;
    margin-bottom: 5%;
    background-color :#ffc696;
  }


  .inner-benefits,.inner-plan {
    background-image: url(../images/bg-01_202512.png);
    margin: 0;
    padding: 0;
    /* background-color :#e3a399; */
    /* background: #c2fcff;
    background: linear-gradient(210deg,rgba(194, 252, 255, 1) 0%, rgba(189, 255, 191, 1) 39%, rgba(255, 254, 204, 1) 77%); */
  }

  .inner-friend {
  /* background-image: url(../images/bg-01_202512.jpg); */
  background-color: #f4dcd9;
  }

  .inner-otoshidama {
  background-image: url(../images/otoshidama-bk_202512.png);
  background-size: contain ;
  /* background-color: #f4dcd9; */
  }

  .inner-komono {
  /* background-image: url(../images/bg-01_202512.jpg); */
  background-color: #f4dcd9;
  }

  .inner-lineup {
    /* background-image: url(../images/button_pamph_back.jpg); */
    background-color :#f7ed83;
  }

  .inner-lineup p {
	/* margin-bottom: 20px; */
  }

  .inner-early,.inner-about {
    /* background-image: url(../images/button_pamph_back.jpg); */
    background-color :#efece8;
  }

  .inner-shop {
    /* background-image: url(../images/button_pamph_back.jpg); */
    background-color :#efece8;
  }



  /* ライトボックスの設定 */
  /* vwを3等分してその値と同じheightを設定する */
  
  .gallery_box {
    width: 100%;
  }

  .gallery {
    display: flex;
    flex-wrap: wrap;
  }

  .image-wrapper {
    width: calc(100% / 3);
    max-width: 166.66px;
    position: relative;
    overflow: hidden;
  }

  .image-wrapper::before {
    content: "";
    display: block;
    padding-top: 100%;
  }

  .image-wrapper img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
  }

/* icon */
  .gallery_box .popup_icons {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
  }

  .gallery_box .popup_icons .popup_icon {
    width: calc(100% / 3);
    max-width: 166.66px;
    height: 100%;
    position: relative;
    overflow: hidden;
  }

  .gallery_box .popup_icons .popup_icon::before {
    content: "";
    display: block;
    padding-top: 100%;
  }

  .gallery_box .popup_icons .popup_icon img {
    position: absolute;
    bottom: 3%;
    right: 3%;
    width: calc(100% / 6);
    height: calc(100% / 6);
    object-fit: contain;
  }

  /* マージン */
  .mgn-b50 {
    margin-bottom: 50px;
  }