@charset "UTF-8";
/* layout
===================================================== */
#footer {
  margin: 26.6666666667vw auto 9.3333333333vw;
  text-align: center;
}
@media screen and (min-width: 1024px) {
  #footer {
    margin: 18.75vw auto 6.9444444444vw;
  }
}
#footer .staff {
  margin-bottom: 21.3333333333vw;
}
@media screen and (min-width: 1024px) {
  #footer .staff {
    margin-bottom: 6.9444444444vw;
  }
}
#footer span {
  font-size: 5.8666666667vw;
  display: block;
  margin-bottom: 6.6666666667vw;
}
@media screen and (min-width: 1024px) {
  #footer span {
    font-size: 2.2916666667vw;
    margin-bottom: 1.7361111111vw;
  }
}
#footer p {
  margin-bottom: 2.6666666667vw;
}
#footer p a {
  text-decoration: underline;
}
@media screen and (min-width: 1024px) {
  #footer p {
    font-size: 1.1111111111vw;
    margin-bottom: 1.0416666667vw;
  }
}
#footer p.copy {
  font-size: 2.6666666667vw;
  margin-top: 9.3333333333vw;
}
@media screen and (min-width: 1024px) {
  #footer p.copy {
    font-size: 0.9722222222vw;
  }
}

.logo {
  width: 37.3333333333vw;
  margin: 0 auto;
}
@media screen and (min-width: 1024px) {
  .logo {
    width: 13.8888888889vw;
  }
}

.last_img {
  width: 85.3333333333vw;
  margin: 21.3333333333vw auto;
}
@media screen and (min-width: 1024px) {
  .last_img {
    width: 53.6805555556vw;
    margin: 8.3333333333vw auto;
  }
}

/*--------------------------------------*
* 基本
*--------------------------------------*/
html {
  width: 100%;
  font-size: 3.4666666667vw;
  font-family: "sonar-sans", sans-serif;
  font-weight: 400;
  font-style: normal;
  letter-spacing: 0.03em;
}
@media screen and (min-width: 1024px) {
  html {
    font-size: 1.1111111111vw;
  }
}

body {
  overflow: hidden;
}

img {
  width: 100%;
  display: block;
  border: none;
}

a {
  display: block;
  text-decoration: none;
  color: #000;
}

.fv__image {
  display: none;
}

.fv__image--sp {
  display: block;
}

@media (min-width: 768px) {
  .fv__image--sp {
    display: none;
  }
  .fv__image--pc {
    display: block;
  }
}
.pcNone {
  display: block;
}
@media screen and (min-width: 1024px) {
  .pcNone {
    display: none;
  }
}

.spNone {
  display: none;
}
@media screen and (min-width: 1024px) {
  .spNone {
    display: block;
  }
}

.sr-only {
  position: absolute !important;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
  white-space: nowrap;
  border: 0;
}

/*--------------------------------------*
* ローディング
*--------------------------------------*/
/*--------------------------------------*
* swiper 
*--------------------------------------*/
.swiper-slide img {
  width: 100%;
  object-fit: cover;
}

.fade-swiper .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/*--------------------------------------*
* v-if編 
*--------------------------------------*/
.credit a:has(.nolink) {
  pointer-events: none;
}
.credit a:has(.nolink) span {
  text-decoration: none !important;
}

/*--------------------------------------*
*fv
*--------------------------------------*/
.fv {
  position: relative;
  width: 100vw;
  height: 85vh;
}
@media screen and (min-width: 1024px) {
  .fv {
    height: 100vh;
  }
}
@media screen and (min-width: 768px) and (max-width: 1023px) {
  .fv {
    height: 100vh;
  }
  .fv .fv__ttl.ttl-1 {
    top: 3%;
    width: 63vw;
  }
  .fv .fv__ttl.ttl-2 {
    bottom: 3%;
    width: 41vw;
  }
}
.fv__image {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
}
.fv__ttl {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  z-index: 1;
}
.fv__ttl.ttl-1 {
  width: 80vw;
  top: 4%;
  left: 4%;
  transform: translate(0, 0);
  filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.1));
}
@media screen and (min-width: 1024px) {
  .fv__ttl.ttl-1 {
    width: 49.8611111111vw;
    top: 18%;
    left: 3%;
  }
}
.fv__ttl.ttl-2 {
  width: 60vw;
  bottom: 6%;
  right: 7%;
  transform: translate(0, 0);
  filter: drop-shadow(0 4px 4px rgba(0, 0, 0, 0.1));
}
@media screen and (min-width: 1024px) {
  .fv__ttl.ttl-2 {
    width: 27.7777777778vw;
    bottom: 2%;
    transform: translateX(-50%);
    left: 80%;
  }
}

.loading {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 20px;
  background: #bfd8da;
  z-index: 10;
}
@media screen and (min-width: 1024px) {
  .loading {
    height: 15px;
    background: #bfd8da;
  }
}
.loading__bar {
  width: 0%;
  height: 100%;
  background: #5cb1bc;
}

/*--------------------------------------*
*共通
*--------------------------------------*/
section {
  margin-top: 16vw;
}
@media screen and (min-width: 1024px) {
  section {
    position: relative;
    margin-top: 17.7083333333vw;
  }
}

.credit {
  margin: 1.3333333333vw 4vw 0;
  text-align: right;
}
@media screen and (min-width: 1024px) {
  .credit {
    position: absolute;
    margin: 0.6944444444vw auto;
  }
}
.credit li {
  padding-top: 1.3333333333vw;
}
@media screen and (min-width: 1024px) {
  .credit li {
    padding-top: 0.3472222222vw;
  }
}
.credit li .item_price {
  padding: 0 2.6666666667vw 0 5.3333333333vw;
}
@media screen and (min-width: 1024px) {
  .credit li .item_price {
    padding: 0 1.6666666667vw 0 0.9722222222vw;
  }
}
.credit li .buy {
  text-decoration: underline;
}

/*--------------------------------------*
*メイン
*--------------------------------------*/
.sec01 {
  margin-top: 24vw;
}
@media screen and (min-width: 1024px) {
  .sec01 {
    margin-top: 24.6527777778vw;
  }
}
.sec01 .s_1 {
  width: 100%;
}
@media screen and (min-width: 1024px) {
  .sec01 .s_1 {
    width: 56.25vw;
    margin: 0 auto;
  }
}
.sec01 .credit {
  right: 22%;
}

.sec02 .fade-swiper {
  width: 90.6666666667vw;
  margin-right: 0;
}
@media screen and (min-width: 1024px) {
  .sec02 .fade-swiper {
    width: 50.9722222222vw;
    margin-left: 10.2777777778vw;
  }
}
@media screen and (min-width: 1024px) {
  .sec02 .credit {
    right: 38.8%;
  }
}

@media screen and (min-width: 1024px) {
  .sec03 {
    position: relative;
  }
}
.sec03 .pc_flex {
  margin-left: 5.3333333333vw;
}
@media screen and (min-width: 1024px) {
  .sec03 .pc_flex {
    display: flex;
    align-items: center;
  }
}
.sec03 .pc_flex li:first-child {
  width: 85.3333333333vw;
}
@media screen and (min-width: 1024px) {
  .sec03 .pc_flex li:first-child {
    width: 47.8472222222vw;
  }
}
.sec03 .pc_flex li:last-child {
  width: 69.3333333333vw;
  margin-top: 16vw;
}
@media screen and (min-width: 1024px) {
  .sec03 .pc_flex li:last-child {
    width: 32.5vw;
    margin: 0 auto;
  }
}
@media screen and (min-width: 1024px) {
  .sec03 .credit {
    right: 7%;
    top: 84%;
  }
}

@media screen and (min-width: 1024px) {
  .sec04 .credit {
    right: 2%;
  }
}

.sec05 {
  position: relative;
}
.sec05 .slide_left {
  position: relative;
}
@media screen and (min-width: 1024px) {
  .sec05 .slide_left {
    transform: translateX(-50%);
    left: 85%;
  }
}
.sec05 .slide_left .base_img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
@media screen and (min-width: 1024px) {
  .sec05 .slide_left .base_img {
    width: 56.1805555556vw;
  }
}
.sec05 .slide_left .slide_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transform: translateX(-100%);
}
@media screen and (min-width: 1024px) {
  .sec05 .slide_left .slide_img {
    width: 56.1805555556vw;
    left: 0;
    right: 0;
    transform: translateX(-100%);
  }
}

.sec05 .credit {
  right: 9%;
}

@media screen and (min-width: 1024px) {
  .sec06 .pc_flex {
    display: flex;
    width: 79.1666666667vw;
    align-items: center;
    justify-content: center;
    gap: 4.1666666667vw;
    margin: 0 auto;
  }
}
.sec06 .pc_flex li {
  width: 66.6666666667vw;
  margin: 0 auto;
}
@media screen and (min-width: 1024px) {
  .sec06 .pc_flex li {
    width: 37.5vw;
  }
}
.sec06 .pc_flex li:first-child {
  margin-bottom: 16vw;
}
@media screen and (min-width: 1024px) {
  .sec06 .pc_flex li:first-child {
    margin-bottom: 0;
  }
}
.sec06 .credit {
  right: 10.5%;
}

.sec07 .s_1 {
  width: 100%;
}
@media screen and (min-width: 1024px) {
  .sec07 .s_1 {
    width: 56.25vw;
    margin: 0 auto;
  }
}
.sec07 .credit {
  right: 22%;
}

.sec08 .s_1 {
  width: 85.3333333333vw;
  margin: 0 auto;
}
@media screen and (min-width: 1024px) {
  .sec08 .s_1 {
    width: 47.9861111111vw;
  }
}
.sec08 .slide_left {
  position: relative;
}
@media screen and (min-width: 1024px) {
  .sec08 .slide_left {
    margin-top: 17.7083333333vw;
  }
}
.sec08 .slide_left .base_img {
  width: 100%;
  height: auto;
  object-fit: cover;
}
.sec08 .slide_left .slide_img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transform: translateX(-100%);
}
.sec08 .credit {
  margin-bottom: 16vw;
}
@media screen and (min-width: 1024px) {
  .sec08 .credit {
    right: 26%;
  }
}

.all_btn {
  margin-top: 10.6666666667vw;
}
@media screen and (min-width: 1024px) {
  .all_btn {
    margin-top: 6.9444444444vw;
  }
}
.all_btn a {
  width: 50.6666666667vw;
  border: 1px solid #000;
  margin: 0 auto;
  text-align: center;
  padding: 1.3333333333vw 0;
}
@media screen and (min-width: 1024px) {
  .all_btn a {
    padding: 0.6944444444vw 0;
    border: 1px solid #000;
  }
}
@media screen and (min-width: 1024px) {
  .all_btn a {
    font-size: 1.5277777778vw;
    width: 36.5972222222vw;
  }
}/*# sourceMappingURL=style.css.map */