/* home common
-----------------------------------------------------------*/
div.hlWrap {
  text-align: center;
}
div.hlWrap p {
  font-size: min(1.2998266898vw, 15px);
}
div.hlWrap h2 {
  font-size: min(3.0329289428vw, 35px);
  font-weight: 500;
}

.linkBtn {
  width: min(21.6637781629vw, 250px);
}
.linkBtn a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: min(21.6637781629vw, 250px);
  height: min(5.719237435vw, 66px);
  border: 1px solid #ee028d;
  font-size: min(1.4731369151vw, 17px);
  font-weight: 700;
  position: relative;
  color: #ee028d;
  background: linear-gradient(to right, #ee028d 0%, #ee028d 100%);
  background-repeat: no-repeat;
  background-size: 0% 100%;
  background-position: 105%;
  transition: 0.3s background-size;
}
.linkBtn a span {
  width: min(1.2998266898vw, 15px);
  margin-left: 1em;
}
.linkBtn a span polygon,
.linkBtn a span path {
  fill: #ee028d;
  transition: 0.3s all;
}
@media screen and (min-width: 769px) {
  .linkBtn a:hover {
    background-size: 100% 100%;
    background-position: 0;
    color: #fff;
  }
  .linkBtn a:hover span polygon,
.linkBtn a:hover span path {
    fill: #fff;
  }
}
.linkBtn.wh {
  background: #fff;
}
.linkBtn.wh a {
  border: none;
}

@-webkit-keyframes logoAnim {
  0% {
    stroke-dasharray: 0 30;
  }
  100% {
    stroke-dasharray: 30 30;
  }
}

@keyframes logoAnim {
  0% {
    stroke-dasharray: 0 30;
  }
  100% {
    stroke-dasharray: 30 30;
  }
}
@media screen and (max-width: 767px) {
  div.hlWrap p {
    font-size: 2.9333333333vw;
  }
  div.hlWrap h2 {
    font-size: 6.6666666667vw;
  }
  .linkBtn {
    width: 62.9333333333vw;
  }
  .linkBtn a {
    width: 62.9333333333vw;
    height: 17.3333333333vw;
    font-size: 4.2666666667vw;
  }
  .linkBtn a span {
    width: 4vw;
  }
}
/* kv
-----------------------------------------------------------*/
#kvSec {
  position: relative;
  width: 100%;
  margin: 0 auto;
  height: 100vh;
  max-height: min(86.6551126516vw, 1000px);
  min-height: min(60.6585788562vw, 700px);
  box-sizing: border-box;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  background-image: url(../img/kv_ill.png);
  background-position: left calc(50% + min(47.6603119584vw, 550px)) bottom 0;
  background-repeat: no-repeat;
  background-size: min(35.7019064125vw, 412px) auto;
  padding-top: min(0.8665511265vw, 10px);
  -webkit-animation: kvin 1s 1 ease-out forwards;
          animation: kvin 1s 1 ease-out forwards;
}
#kvSec div.kvBox {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}
#kvSec div.kvBox h1 {
  width: min(47.8336221837vw, 552px);
  margin-bottom: min(6.3258232236vw, 73px);
}
#kvSec div.kvBox ul.leadNote {
  display: flex;
  flex-direction: row-reverse;
  justify-content: center;
  gap: min(1.733102253vw, 20px);
}
#kvSec div.kvBox ul.leadNote li {
  width: min(5.4592720971vw, 63px);
}
#kvSec div.kvBox div.stamp {
  position: absolute;
  left: calc(50% - min(42.4610051993vw, 490px));
  bottom: min(3.4662045061vw, 40px);
  z-index: 100;
  width: min(19.3240901213vw, 223px);
  height: min(21.143847487vw, 244px);
  background: url(../img/kv_stamp.png) 0 0 no-repeat;
  background-size: contain;
}
#kvSec div.kvBox div.stamp > p {
  position: absolute;
  width: min(12.1317157712vw, 140px);
  left: min(3.6395147314vw, 42px);
  z-index: 110;
}
#kvSec div.kvBox div.stamp > p:first-child {
  top: min(11.6117850953vw, 134px);
}
#kvSec div.kvBox div.stamp > p:nth-child(2) {
  top: min(15.2512998267vw, 176px);
}
#kvSec div.kvBox div.stamp > p a {
  transition: 0.3s all;
}
@media screen and (min-width: 769px) {
  #kvSec div.kvBox div.stamp > p a:hover {
    transform: scale(0.92);
  }
}
#kvSec div.kvSlide {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  width: 100%;
  height: 100vh;
}
#kvSec div.kvSlide li {
  width: 100%;
  height: 100vh;
  opacity: 0;
}
#kvSec div.kvSlide li p {
  width: 100%;
  height: 100vh;
}
#kvSec div.kvSlide li img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  width: calc(100% + min(17.3310225303vw, 200px));
  margin-left: min(-8.6655112652vw, -100px);
}
#kvSec div.kvSlide li.swiper-slide-visible p, #kvSec div.kvSlide li.swiper-slide-prev p {
  -webkit-animation: kvin 7s 1 linear forwards;
          animation: kvin 7s 1 linear forwards;
}
#kvSec div.kvSlide li.swiper-slide-visible.move_lh p, #kvSec div.kvSlide li.swiper-slide-prev.move_lh p {
  -webkit-animation: kvin_lh 7s 1 linear forwards;
          animation: kvin_lh 7s 1 linear forwards;
}
#kvSec div.kvSlide li.swiper-slide-visible.move_rh p, #kvSec div.kvSlide li.swiper-slide-prev.move_rh p {
  -webkit-animation: kvin_rh 7s 1 linear forwards;
          animation: kvin_rh 7s 1 linear forwards;
}

@-webkit-keyframes kvin {
  0% {
    background-position: left calc(50% + min(47.6603119584vw, 550px)) bottom max(0vw, 0px);
  }
  100%, to {
    background-position: left calc(50% + min(30.3292894281vw, 350px)) bottom max(0vw, 0px);
  }
}

@keyframes kvin {
  0% {
    background-position: left calc(50% + min(47.6603119584vw, 550px)) bottom max(0vw, 0px);
  }
  100%, to {
    background-position: left calc(50% + min(30.3292894281vw, 350px)) bottom max(0vw, 0px);
  }
}
@media screen and (max-width: 767px) {
  #kvSec {
    height: calc(var(--vh) * 100);
    min-height: 106.6666666667vw;
    max-height: 202.6666666667vw;
    background-image: url(../img/kv_ill.png);
    background-position: left calc(50% + 17.3333333333vw) bottom -4vw;
    background-repeat: no-repeat;
    background-size: 80vw auto;
    padding: 0 0 8vw;
    -webkit-animation: kvin 1s 1 ease-out forwards;
            animation: kvin 1s 1 ease-out forwards;
  }
  #kvSec div.kvBox {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    width: 100%;
  }
  #kvSec div.kvBox h1 {
    width: 81.8666666667vw;
    margin-bottom: 13.3333333333vw;
  }
  #kvSec div.kvBox ul.leadNote {
    width: 100%;
    padding: 0 2.6666666667vw;
    box-sizing: border-box;
    justify-content: flex-end;
    gap: 3.4666666667vw;
  }
  #kvSec div.kvBox ul.leadNote li {
    width: 9.6vw;
  }
  #kvSec div.kvBox div.stamp {
    display: none;
  }
  #kvSec div.kvSlide {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
    width: 100%;
    height: 100vh;
  }
  #kvSec div.kvSlide li {
    width: 100%;
    height: 100vh;
    opacity: 0;
  }
  #kvSec div.kvSlide li p {
    width: 100%;
    height: 100vh;
  }
  #kvSec div.kvSlide li img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 100%;
    width: calc(100% + min(17.3310225303vw, 200px));
    margin-left: min(-8.6655112652vw, -100px);
  }
  #kvSec div.kvSlide li.swiper-slide-visible p, #kvSec div.kvSlide li.swiper-slide-prev p {
    -webkit-animation: kvin 7s 1 linear forwards;
            animation: kvin 7s 1 linear forwards;
  }
  #kvSec div.kvSlide li.swiper-slide-visible.move_lh p, #kvSec div.kvSlide li.swiper-slide-prev.move_lh p {
    -webkit-animation: kvin_lh 7s 1 linear forwards;
            animation: kvin_lh 7s 1 linear forwards;
  }
  #kvSec div.kvSlide li.swiper-slide-visible.move_rh p, #kvSec div.kvSlide li.swiper-slide-prev.move_rh p {
    -webkit-animation: kvin_rh 7s 1 linear forwards;
            animation: kvin_rh 7s 1 linear forwards;
  }
  @-webkit-keyframes kvin {
    0% {
      background-position: left calc(50% + 28vw) bottom -4vw;
    }
    100%, to {
      background-position: left calc(50% + 17.3333333333vw) bottom -4vw;
    }
  }
  @keyframes kvin {
    0% {
      background-position: left calc(50% + 28vw) bottom -4vw;
    }
    100%, to {
      background-position: left calc(50% + 17.3333333333vw) bottom -4vw;
    }
  }
}
/* ThanksSec
-----------------------------------------------------------*/
section#ThanksSec {
  background-image: url(../img/thanks_corner.svg), linear-gradient(to bottom, #383395 0%, #ee028d 50%, #ee028d 100%);
  background-position: left bottom 0, left top;
  background-repeat: no-repeat, no-repeat;
  background-size: min(22.1837088388vw, 256px) min(22.1837088388vw, 256px), 100% 100%;
  color: #fff;
  padding: min(8.6655112652vw, 100px) 0;
}
section#ThanksSec div.inner {
  padding: 0 min(3.4662045061vw, 40px);
  display: flex;
  justify-content: space-between;
}
section#ThanksSec div.inner > div {
  width: min(31.1958405546vw, 360px);
  min-height: min(43.8474870017vw, 506px);
}
section#ThanksSec div.inner figure {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 10;
  width: min(39.8613518198vw, 460px);
}
section#ThanksSec h2 {
  font-size: min(5.6325823224vw, 65px);
  line-height: 1;
}
section#ThanksSec h2 + p {
  font-size: 30px;
  font-weight: 700;
  margin-top: min(2.1663778163vw, 25px);
}
section#ThanksSec div.noteBox {
  margin-top: min(2.1663778163vw, 25px);
  font-weight: 700;
}
section#ThanksSec div.noteBox p ~ p {
  margin-top: 1em;
}

@media screen and (max-width: 767px) {
  section#ThanksSec {
    background-image: url(../img/thanks_corner.svg), linear-gradient(to bottom, #383395 0%, #ee028d 50%, #ee028d 100%);
    background-size: 53.3333333333vw 53.3333333333vw, 100% 100%;
    padding: 13.3333333333vw 0 26.6666666667vw;
  }
  section#ThanksSec div.inner {
    padding: 0 10.6666666667vw;
    flex-direction: column-reverse;
  }
  section#ThanksSec div.inner > div {
    width: 100%;
  }
  section#ThanksSec div.inner figure {
    position: static;
    width: 100%;
    border-radius: 8vw;
    overflow: hidden;
    margin-top: 6.6666666667vw;
  }
  section#ThanksSec h2 {
    font-size: 13.3333333333vw;
  }
  section#ThanksSec h2 + p {
    width: 69.3333333333vw;
    margin-top: 4vw;
  }
  section#ThanksSec div.noteBox {
    margin-top: 5.3333333333vw;
  }
}
/* PromiseSec
-----------------------------------------------------------*/
section#PromiseSec {
  padding: min(6.4991334489vw, 75px) 0 min(10.3986135182vw, 120px);
}
section#PromiseSec h2 {
  width: min(40.3812824957vw, 466px);
  margin: 0 auto;
}
section#PromiseSec ul {
  display: flex;
  justify-content: space-between;
  margin-top: min(2.1663778163vw, 25px);
}
section#PromiseSec ul li {
  width: min(27.9029462738vw, 322px);
  height: min(29.4627383016vw, 340px);
  padding: min(3.4662045061vw, 40px) min(2.5996533795vw, 30px) min(2.5996533795vw, 30px);
  background: linear-gradient(to bottom, #383395 0%, #ee028d 50%, #ee028d 100%);
  border-radius: min(1.733102253vw, 20px);
  box-sizing: border-box;
  color: #fff;
  font-size: min(1.2131715771vw, 14px);
  font-weight: 700;
  line-height: 1.9;
}
section#PromiseSec ul li h3 {
  font-size: min(2.1663778163vw, 25px);
  text-align: center;
  line-height: 1;
  font-weight: 700;
  margin-bottom: min(2.5996533795vw, 30px);
}
section#PromiseSec .pm-pagination {
  display: none;
}

@media screen and (max-width: 767px) {
  section#PromiseSec {
    padding: 6.6666666667vw 0 10.6666666667vw;
    background-image: url(../img/bg_wh.jpg);
    background-position: center top;
    background-repeat: no-repeat;
    background-size: 100% 100vh;
  }
  section#PromiseSec.onAnim {
    background-position: center top 186.6666666667vw, center top;
  }
  section#PromiseSec h2 {
    width: 79.4666666667vw;
  }
  section#PromiseSec ul {
    margin-top: 10.6666666667vw;
  }
  section#PromiseSec ul li {
    width: 78.6666666667vw;
    height: 83.4666666667vw;
    padding: 9.3333333333vw 9.3333333333vw 10.6666666667vw;
    border-radius: 5.3333333333vw;
    font-size: 3.4666666667vw;
  }
  section#PromiseSec ul li h3 {
    font-size: 6.4vw;
    margin-bottom: 8vw;
  }
  section#PromiseSec .pm-pagination {
    display: flex;
    justify-content: center;
    gap: 2.6666666667vw;
    margin-top: 5.3333333333vw;
  }
  section#PromiseSec .pm-pagination .swiper-pagination-bullet {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
    margin: 0;
    background: #c1c2c4;
    opacity: 1;
  }
  section#PromiseSec .pm-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #ee028d;
  }
}
/* PriceSec
-----------------------------------------------------------*/
section#PriceSec,
section#PriceSec-lounge {
  padding: min(8.2322357019vw, 95px) 0 min(15.5979202773vw, 180px);
  background-image: url(../img/thanks_corner.svg), linear-gradient(to bottom, #383395 0%, #ee028d 50%, #ee028d 100%);
  background-position: left bottom, 0 0;
  background-repeat: no-repeat, no-repeat;
  background-size: min(22.1837088388vw, 256px) min(22.1837088388vw, 256px), 100% 100%;
  color: #fff;
}
section#PriceSec h2,
section#PriceSec-lounge h2 {
  width: min(19.0641247834vw, 220px);
  margin: 0 auto;
}
section#PriceSec h2 + p,
section#PriceSec-lounge h2 + p {
  text-align: center;
  font-weight: 700;
  margin-top: min(3.4662045061vw, 40px);
  letter-spacing: 0.15em;
}
section#PriceSec div.systemBox,
section#PriceSec-lounge div.systemBox {
  margin: min(4.3327556326vw, 50px) auto 0;
  width: min(71.0571923744vw, 820px);
}
section#PriceSec div.systemBox h3,
section#PriceSec-lounge div.systemBox h3 {
  font-size: min(2.1663778163vw, 25px);
  font-weight: 700;
}
section#PriceSec div.systemBox h3 + P,
section#PriceSec-lounge div.systemBox h3 + P {
  font-size: min(1.2131715771vw, 14px);
  font-weight: 400;
}
section#PriceSec div.systemBox table,
section#PriceSec-lounge div.systemBox table {
  margin-top: min(1.2998266898vw, 15px);
  table-layout: fixed;
}
section#PriceSec div.systemBox th,
section#PriceSec div.systemBox td,
section#PriceSec-lounge div.systemBox th,
section#PriceSec-lounge div.systemBox td {
  padding: min(1.2998266898vw, 15px) 0;
  font-size: min(1.2131715771vw, 14px);
  font-weight: 700;
  vertical-align: top;
  border-bottom: 1px solid #fff;
}
section#PriceSec div.systemBox th.col1,
section#PriceSec-lounge div.systemBox th.col1 {
  width: min(23.3968804159vw, 270px);
}
section#PriceSec div.systemBox th.col2,
section#PriceSec-lounge div.systemBox th.col2 {
  width: min(22.5303292894vw, 260px);
}
section#PriceSec div.systemBox td.price,
section#PriceSec-lounge div.systemBox td.price {
  font-size: min(1.3864818024vw, 16px);
}
section#PriceSec div.systemBox .notice,
section#PriceSec-lounge div.systemBox .notice {
  font-size: min(1.2131715771vw, 14px);
  font-weight: 700;
  margin-top: min(1.2998266898vw, 15px);
}

section#PriceSec-lounge {
  background: #cc0000 url(../img/thanks_corner.svg);
  background-position: left bottom;
  background-repeat: no-repeat;
  background-size: min(22.1837088388vw, 256px) min(22.1837088388vw, 256px);
}
section#PriceSec-lounge div.systemBox {
  width: min(58.9254766031vw, 680px);
}
section#PriceSec-lounge div.systemBox th.col1 {
  width: min(15.164644714vw, 175px);
}
section#PriceSec-lounge div.systemBox th.col2 {
  width: min(21.6637781629vw, 250px);
}

@media screen and (max-width: 767px) {
  section#PriceSec,
section#PriceSec-lounge {
    padding: 18.6666666667vw 0 32vw;
    background: linear-gradient(to bottom, #383395 0%, #ee028d 50%, #ee028d 100%);
  }
  section#PriceSec h2,
section#PriceSec-lounge h2 {
    width: 37.3333333333vw;
  }
  section#PriceSec h2 + p,
section#PriceSec-lounge h2 + p {
    margin-top: 6.6666666667vw;
    font-size: 3.7333333333vw;
  }
  section#PriceSec div.systemBox,
section#PriceSec-lounge div.systemBox {
    margin-top: 12vw;
    width: 100%;
  }
  section#PriceSec div.systemBox:first-of-type,
section#PriceSec-lounge div.systemBox:first-of-type {
    margin-top: 17.3333333333vw;
  }
  section#PriceSec div.systemBox h3,
section#PriceSec-lounge div.systemBox h3 {
    font-size: 4.8vw;
  }
  section#PriceSec div.systemBox h3 + P,
section#PriceSec-lounge div.systemBox h3 + P {
    font-size: 3.4666666667vw;
    font-weight: 400;
    margin-top: 2.6666666667vw;
  }
  section#PriceSec div.systemBox div.tableWrap,
section#PriceSec-lounge div.systemBox div.tableWrap {
    overflow: auto;
    width: calc(100% + 21.3333333333vw);
    margin: 0 -10.6666666667vw;
  }
  section#PriceSec div.systemBox div.tableWrap > div,
section#PriceSec-lounge div.systemBox div.tableWrap > div {
    width: 178.6666666667vw;
    padding: 0 10.6666666667vw;
  }
  section#PriceSec div.systemBox div.tableWrap.pack > div,
section#PriceSec-lounge div.systemBox div.tableWrap.pack > div {
    width: 98.6666666667vw;
  }
  section#PriceSec div.systemBox table,
section#PriceSec-lounge div.systemBox table {
    margin-top: 4vw;
  }
  section#PriceSec div.systemBox th,
section#PriceSec div.systemBox td,
section#PriceSec-lounge div.systemBox th,
section#PriceSec-lounge div.systemBox td {
    padding: 2.6666666667vw 0;
    font-size: 3.4666666667vw;
  }
  section#PriceSec div.systemBox th.col1,
section#PriceSec-lounge div.systemBox th.col1 {
    width: 54.6666666667vw;
  }
  section#PriceSec div.systemBox th.col2,
section#PriceSec-lounge div.systemBox th.col2 {
    width: 46.6666666667vw;
  }
  section#PriceSec div.systemBox td.price,
section#PriceSec-lounge div.systemBox td.price {
    font-size: 4vw;
  }
  section#PriceSec div.systemBox .notice,
section#PriceSec-lounge div.systemBox .notice {
    font-size: 3.4666666667vw;
    margin-top: 4vw;
  }
  section#PriceSec-lounge {
    background: #cc0000 url(../img/thanks_corner.svg);
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 53.3333333333vw 53.3333333333vw;
  }
  section#PriceSec-lounge div.systemBox h3 span {
    font-size: 90%;
  }
  section#PriceSec-lounge div.systemBox th.col1 {
    width: 37.3333333333vw;
  }
  section#PriceSec-lounge div.systemBox th.col2 {
    width: 46.6666666667vw;
  }
  section#PriceSec-lounge div.systemBox div.tableWrap > div {
    width: 138.6666666667vw;
  }
  section#PriceSec-lounge div.systemBox div.tableWrap th.col1 {
    width: 37.3333333333vw;
  }
  section#PriceSec-lounge div.systemBox div.tableWrap th.col2 {
    width: 46.6666666667vw;
  }
}
/* GallerySec
-----------------------------------------------------------*/
section#GallerySec,
section#lounge {
  margin-top: max(-5.4592720971vw, -63px);
}
section#GallerySec h2,
section#lounge h2 {
  width: min(45.1473136915vw, 521px);
  margin: 0 auto 0;
}
section#GallerySec h2 + p,
section#lounge h2 + p {
  text-align: center;
  font-weight: 700;
  color: #ee028d;
  margin-top: min(2.5996533795vw, 30px);
}
section#GallerySec ul,
section#lounge ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  width: min(85.7885615251vw, 990px);
  margin: min(3.4662045061vw, 40px) auto 0;
  gap: min(2.5996533795vw, 30px) 0;
}
section#GallerySec ul li,
section#lounge ul li {
  width: min(41.5944540728vw, 480px);
}

section#lounge {
  padding: min(8.2322357019vw, 95px) 0;
  margin-top: 0;
}
section#lounge h2 {
  width: min(46.7937608319vw, 540px);
}
section#lounge h2 + p {
  color: #cc0000;
}

@media screen and (max-width: 767px) {
  section#GallerySec,
section#lounge {
    padding-bottom: 14.6666666667vw;
    margin-top: -8vw;
  }
  section#GallerySec h2,
section#lounge h2 {
    width: 81.3333333333vw;
  }
  section#GallerySec h2 + p,
section#lounge h2 + p {
    margin-top: 5.3333333333vw;
    font-size: 3.7333333333vw;
  }
  section#GallerySec ul,
section#lounge ul {
    flex-direction: column;
    width: 100%;
    margin: 8vw auto 0;
    gap: 2.6666666667vw 0;
  }
  section#GallerySec ul li,
section#lounge ul li {
    width: 100%;
  }
  section#lounge {
    padding: 16vw 0;
    margin-top: 0;
  }
  section#lounge h2 {
    width: 53.3333333333vw;
  }
  section#lounge ul li {
    border-radius: 5.3333333333vw;
    overflow: hidden;
  }
}
/* EventSec
-----------------------------------------------------------*/
section#EventSec {
  padding: min(9.5320623917vw, 110px) 0 min(20.3639514731vw, 235px);
  background-image: url(../img/event_ill.png);
  background-position: center bottom max(-18.1975736568vw, -210px);
  background-repeat: no-repeat;
  background-size: min(18.1975736568vw, 210px) auto;
  transition: 0.8s all;
}
section#EventSec.onAnim {
  background-position: center bottom 0;
}
section#EventSec h2 {
  width: min(37.6949740035vw, 435px);
  margin: 0 auto;
}
section#EventSec h2 + p {
  margin-top: min(3.0329289428vw, 35px);
  color: #ee028d;
  text-align: center;
  font-weight: 700;
}
section#EventSec .linkBtn {
  margin: min(3.4662045061vw, 40px) auto 0;
}

@media screen and (max-width: 767px) {
  section#EventSec {
    padding: 0 0 40vw;
    background-position: center bottom -32vw;
    background-size: 32vw auto;
  }
  section#EventSec h2 {
    width: 100%;
    background: url(../img/hl_event_sp_up.png) center top no-repeat;
    background-size: 100%;
    padding-top: 16vw;
  }
  section#EventSec h2 img {
    width: 40.5333333333vw;
    margin: 0 auto;
  }
  section#EventSec h2 + p {
    margin-top: 9.3333333333vw;
  }
  section#EventSec .linkBtn {
    margin: 8vw auto 0;
  }
}
/* InfoSec
-----------------------------------------------------------*/
section#InfoSec {
  padding: min(7.3656845754vw, 85px) 0 min(6.0658578856vw, 70px);
  background: linear-gradient(to bottom, #383395 0%, #ee028d 50%, #ee028d 100%);
  color: #fff;
}
section#InfoSec div.inner {
  padding: 0 min(3.4662045061vw, 40px);
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
section#InfoSec div.inner > div {
  width: min(38.9948006932vw, 450px);
}
section#InfoSec h2 {
  font-size: min(3.2928942808vw, 38px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.2em;
}
section#InfoSec h2 + p {
  font-size: min(1.3864818024vw, 16px);
  font-weight: 700;
  margin-top: min(1.2998266898vw, 15px);
}
section#InfoSec table {
  margin-top: min(1.2998266898vw, 15px);
}
section#InfoSec table th,
section#InfoSec table td {
  padding: min(0.8665511265vw, 10px) 0;
  vertical-align: top;
  font-weight: 700;
  letter-spacing: 0.2em;
}
section#InfoSec table th {
  width: min(8.6655112652vw, 100px);
}
section#InfoSec #gmap {
  width: min(40.294627383vw, 465px);
  height: min(37.2616984402vw, 430px);
  border-radius: min(2.5996533795vw, 30px);
  overflow: hidden;
}
section#InfoSec #gmap iframe {
  width: min(40.294627383vw, 465px);
  height: min(37.2616984402vw, 430px);
}

@media screen and (max-width: 767px) {
  section#InfoSec {
    padding: 21.3333333333vw 0 20vw;
  }
  section#InfoSec div.inner {
    padding: 0 10.6666666667vw;
    flex-direction: column;
  }
  section#InfoSec div.inner > div {
    width: 100%;
  }
  section#InfoSec h2 {
    font-size: 8vw;
    text-align: center;
  }
  section#InfoSec h2 + p {
    font-size: 4.2666666667vw;
    margin-top: 3.2vw;
    text-align: center;
  }
  section#InfoSec table {
    margin-top: 4vw;
  }
  section#InfoSec table th,
section#InfoSec table td {
    padding: 2.6666666667vw 0;
  }
  section#InfoSec table th {
    width: 21.3333333333vw;
  }
  section#InfoSec #gmap {
    width: 100%;
    height: 74.6666666667vw;
    border-radius: 8vw;
    margin-top: 10.6666666667vw;
  }
  section#InfoSec #gmap iframe {
    width: 100%;
    height: 74.6666666667vw;
  }
}
/* RecruitSec
-----------------------------------------------------------*/
section#RecruitSec {
  padding: min(6.9324090121vw, 80px) 0;
  background: #231815;
  color: #fff;
}
section#RecruitSec div.inner {
  padding: 0 min(3.4662045061vw, 40px);
}
section#RecruitSec h2 {
  font-size: min(3.2928942808vw, 38px);
  font-weight: 700;
  line-height: 1;
  letter-spacing: 0.2em;
}
section#RecruitSec h2 + p {
  font-size: min(1.3864818024vw, 16px);
  font-weight: 700;
  margin-top: min(1.2998266898vw, 15px);
}
section#RecruitSec div.recruitBox {
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
  margin-top: min(5.1993067591vw, 60px);
  position: relative;
}
section#RecruitSec div.recruitBox:first-of-type {
  margin-top: min(2.5996533795vw, 30px);
}
section#RecruitSec div.recruitBox figure {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 10;
  width: min(20.7972270364vw, 240px);
  border-radius: min(1.733102253vw, 20px);
  overflow: hidden;
}
section#RecruitSec div.recruitBox > div {
  width: min(59.7920277296vw, 690px);
}
section#RecruitSec h3 {
  display: flex;
  justify-content: center;
  align-items: center;
  width: min(16.2045060659vw, 187px);
  height: min(4.1594454073vw, 48px);
  font-size: min(1.4731369151vw, 17px);
  background: linear-gradient(to left, #383395 0%, #ee028d 50%, #ee028d 100%);
}
section#RecruitSec table {
  margin-top: min(1.2998266898vw, 15px);
}
section#RecruitSec table th,
section#RecruitSec table td {
  padding: 0 min(0.4332755633vw, 5px) min(0.8665511265vw, 10px) 0;
  vertical-align: top;
  letter-spacing: 0.2em;
}
section#RecruitSec table th {
  width: min(8.6655112652vw, 100px);
}
section#RecruitSec .linkBtn {
  margin-top: min(1.2998266898vw, 15px);
}

@media screen and (max-width: 767px) {
  section#RecruitSec {
    padding: 18.6666666667vw 0;
  }
  section#RecruitSec div.inner {
    padding: 0 10.6666666667vw;
  }
  section#RecruitSec h2 {
    font-size: 8vw;
    text-align: center;
  }
  section#RecruitSec h2 + p {
    font-size: 4.2666666667vw;
    margin-top: 3.2vw;
    text-align: center;
  }
  section#RecruitSec div.recruitBox {
    display: block;
    margin-top: 14.6666666667vw;
  }
  section#RecruitSec div.recruitBox:first-of-type {
    margin-top: 9.3333333333vw;
  }
  section#RecruitSec div.recruitBox figure {
    position: static;
    width: 100%;
    border-radius: 8vw;
    margin-top: 5.3333333333vw;
  }
  section#RecruitSec div.recruitBox > div {
    width: 100%;
  }
  section#RecruitSec h3 {
    width: 49.8666666667vw;
    height: 12.8vw;
    font-size: 4.5333333333vw;
  }
  section#RecruitSec table {
    margin-top: 4vw;
  }
  section#RecruitSec table th,
section#RecruitSec table td {
    padding: 2.6666666667vw 0;
  }
  section#RecruitSec table th {
    width: 21.3333333333vw;
  }
  section#RecruitSec .linkBtn {
    margin: 4vw auto 0;
  }
  section#RecruitSec .linkBtn a {
    border: 1px solid #cc0000;
  }
}
/* ContactSec
-----------------------------------------------------------*/
section#ContactSec {
  padding: min(7.3656845754vw, 85px) 0 min(5.6325823224vw, 65px);
  /*
  ul.shopList {
    display: flex;
    justify-content: center;
    margin-top: min_px(40);
    gap: min_px(20);

    li {
      width: min_px(317);
      border-radius: 30px;
      overflow: hidden;

      a {
        width: min_px(317);
        height: calc(100% - min_px(67));
        min-height: min_px(320);
        background: $pearl_grad;
        background-size: 100% 100%;
        padding: min_px(120) min_px(38) min_px(20);
        box-sizing: border-box;
        font-size: min_px(12);
        color: #fff;
        transition: 0.3s all;
        display: flex;
        flex-direction: column;
        justify-content: space-between;


        @include hover {
          transform: scale(1.08);
        }
      }

      h3 {
        width: min_px(210);
        margin: 0 auto;
      }

      P {
        text-align: center;
        margin-top: min_px(40);
        font-weight: 700;
      }
    }
  }
  */
}
section#ContactSec h2 {
  font-size: min(3.2928942808vw, 38px);
  font-weight: 700;
  line-height: 1;
  color: #ee028d;
  text-align: center;
}
section#ContactSec h2 + p {
  font-size: min(1.3864818024vw, 16px);
  font-weight: 700;
  margin-top: min(1.2998266898vw, 15px);
  color: #ee028d;
  text-align: center;
}
section#ContactSec div.contactBox {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  border-right: 1px solid #ee028d;
  margin-top: min(4.3327556326vw, 50px);
  font-weight: 700;
  color: #ee028d;
  text-align: center;
}
section#ContactSec div.contactBox > div {
  border-left: 1px solid #ee028d;
  padding: min(1.733102253vw, 20px) 0 min(1.2998266898vw, 15px);
}
section#ContactSec div.contactBox div.telBox figure {
  width: min(7.1057192374vw, 82px);
  margin: 0 auto min(2.5996533795vw, 30px);
}
section#ContactSec div.contactBox div.telBox .tel {
  font-size: min(2.5996533795vw, 30px);
  font-weight: 700;
  line-height: 1;
}
section#ContactSec div.contactBox div.telBox .tel a {
  color: #ee028d;
  pointer-events: none;
}
section#ContactSec div.contactBox div.telBox .bisTime {
  margin-top: min(3.0329289428vw, 35px);
}
section#ContactSec div.contactBox div.mailBox figure {
  width: min(4.0727902946vw, 47px);
  margin: min(0.3466204506vw, 4px) auto min(2.5996533795vw, 30px);
}
section#ContactSec div.contactBox div.mailBox h3 {
  font-size: min(2.5996533795vw, 30px);
  font-weight: 700;
  line-height: 1;
}
section#ContactSec div.contactBox div.mailBox .linkBtn {
  margin: min(2.5996533795vw, 30px) auto 0;
}
section#ContactSec ul.shopList {
  display: flex;
  justify-content: center;
  margin-top: min(3.4662045061vw, 40px);
  gap: min(1.733102253vw, 20px);
}
section#ContactSec ul.shopList li {
  width: min(27.4696707106vw, 317px);
  border-radius: 30px;
  overflow: hidden;
}
section#ContactSec ul.shopList li a {
  width: min(27.4696707106vw, 317px);
  height: calc(100% - min(5.8058925477vw, 67px));
  min-height: min(27.7296360485vw, 320px);
  background: linear-gradient(to bottom, #383395 0%, #ee028d 50%, #ee028d 100%);
  background-size: 100% 100%;
  padding: min(6.4991334489vw, 75px) min(3.2928942808vw, 38px) min(3.4662045061vw, 40px);
  box-sizing: border-box;
  font-size: min(1.0398613518vw, 12px);
  color: #fff;
  transition: 0.3s all;
  font-weight: 700;
}
@media screen and (min-width: 769px) {
  section#ContactSec ul.shopList li a:hover {
    transform: scale(1.08);
  }
}
section#ContactSec ul.shopList li h3 {
  width: min(18.1975736568vw, 210px);
  margin: 0 auto;
}
section#ContactSec ul.shopList li P {
  margin-top: min(3.4662045061vw, 40px);
  font-weight: 700;
}
section#ContactSec .shop-pagination {
  display: none;
}

@media screen and (max-width: 767px) {
  section#ContactSec {
    padding: 17.3333333333vw 0 13.3333333333vw;
    /*
    ul.shopList {
      margin-top: rsp(65);
      justify-content: flex-start;

      li {
        a {
          width: rsp(295);
          height: rsp(313);
          padding: rsp(70) rsp(35) rsp(40);
          border-radius: rsp(20);
          font-size: rsp(13);

          h3 {
            width: rsp(195);
          }

          P {
            margin-top: rsp(40);
            font-size: rsp(12);
          }
        }
      }
    }
    */
  }
  section#ContactSec h2 {
    font-size: 8vw;
  }
  section#ContactSec h2 + p {
    font-size: 4.2666666667vw;
    margin-top: 3.2vw;
  }
  section#ContactSec div.contactBox {
    display: block;
    margin-top: min(4.3327556326vw, 50px);
    border: none;
  }
  section#ContactSec div.contactBox > div {
    border: none;
    padding: 0;
    margin-top: 13.3333333333vw;
  }
  section#ContactSec div.contactBox div.telBox figure {
    width: 16.5333333333vw;
    margin: 0 auto 5.3333333333vw;
  }
  section#ContactSec div.contactBox div.telBox .tel {
    font-size: 5.6vw;
  }
  section#ContactSec div.contactBox div.telBox .tel a {
    pointer-events: all;
  }
  section#ContactSec div.contactBox div.telBox .bisTime {
    font-size: 4vw;
    margin-top: 4vw;
  }
  section#ContactSec div.contactBox div.mailBox {
    margin-top: 13.3333333333vw;
  }
  section#ContactSec div.contactBox div.mailBox figure {
    width: 10.6666666667vw;
    margin: 0 auto 6.6666666667vw;
  }
  section#ContactSec div.contactBox div.mailBox h3 {
    font-size: 5.6vw;
  }
  section#ContactSec div.contactBox div.mailBox .linkBtn {
    margin: 5.3333333333vw auto 0;
  }
  section#ContactSec ul.shopList {
    margin-top: 17.3333333333vw;
    justify-content: flex-start;
  }
  section#ContactSec ul.shopList li a {
    width: 78.6666666667vw;
    height: 80vw;
    padding: 18.6666666667vw 9.3333333333vw 10.6666666667vw;
    border-radius: 5.3333333333vw;
    font-size: 3.4666666667vw;
  }
  section#ContactSec ul.shopList li a h3 {
    width: 52vw;
  }
  section#ContactSec ul.shopList li a P {
    margin-top: 10.6666666667vw;
    font-size: 3.2vw;
  }
  section#ContactSec .shop-pagination {
    display: flex;
    justify-content: center;
    gap: 2.6666666667vw;
    margin-top: 5.3333333333vw;
  }
  section#ContactSec .shop-pagination .swiper-pagination-bullet {
    width: 2.6666666667vw;
    height: 2.6666666667vw;
    margin: 0;
    background: #c1c2c4;
    opacity: 1;
  }
  section#ContactSec .shop-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background: #ee028d;
  }
}
/*# sourceMappingURL=home.css.map */