@charset "UTF-8";
html,
body {
  width: 100%;
  letter-spacing: 0.04em;
  margin: 0 auto;
  background-color: #fff;
  color: #000000;
  position: relative;
}

img,
video {
  width: 100%;
  display: block;
}

#wrapper {
  width: 100%;
}
@media screen and (max-width: 768px) {
  #wrapper {
    overflow: hidden;
  }
}

@media screen and (min-width: 769px) {
  .spNone {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .spNone {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .pcNone {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .pcNone {
    display: block;
  }
}
/* vw計算(pc用)
===================================================== */
/* vw変換(SP用)
===================================================== */
/* a
===================================================== */
a {
  display: block;
  text-decoration: none;
  transition: all 0.6s;
  color: #000000;
}

a:hover {
  opacity: 0.4;
  transition: all 0.6s;
  cursor: pointer;
}

a[href=""] {
  pointer-events: none;
}

/* font
===================================================== */
.en_1 {
  font-family: futura-pt, sans-serif;
  font-weight: 400;
  font-style: normal;
}

.en_2 {
  font-family: itc-american-typewriter, serif;
  font-weight: 500;
  font-style: normal;
}

/* ページ表示用
===================================================== */
#loading {
  width: 100%;
  height: 100%;
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
}

/* fv
===================================================== */
#fv .fv_wrap {
  position: relative;
  height: 100svh;
  margin-bottom: 16vw;
  padding-top: 26.6666666667vw;
}
@media screen and (min-width: 769px) {
  #fv .fv_wrap {
    height: 100vh;
    margin-bottom: 11.1111111111vw;
    padding-top: 8.3333333333vw;
  }
}
#fv .fv_wrap .fv_img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
@media screen and (min-width: 769px) {
  #fv .fv_wrap .fv_img {
    width: 100%;
    aspect-ratio: auto;
    object-fit: cover;
    object-position: center;
  }
}
#fv .fv_wrap .key_logo {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
}
#fv .fv_wrap .key_logo img {
  width: 45.3333333333vw;
  margin: 8vw auto auto;
}
@media screen and (min-width: 769px) {
  #fv .fv_wrap .key_logo img {
    width: 16.1111111111vw;
    margin: 2.0833333333vw auto auto;
  }
}
#fv {
  z-index: 5;
}

/* main
===================================================== */
#contents {
  z-index: 10;
  position: relative;
  margin-bottom: 12vw;
}
@media screen and (min-width: 769px) {
  #contents {
    margin-bottom: 11.1111111111vw;
  }
}
#contents section + section {
  margin-top: 10.6666666667vw;
}

.container {
  width: 100%;
}

.wrap1 {
  width: 89.3333333333vw;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .wrap1 {
    width: 69.4444444444vw;
  }
}

.wrap2 {
  width: 100vw;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .wrap2 {
    width: 100vw;
  }
}

@media screen and (min-width: 769px) {
  #section11.wrap2 {
    width: 69.4444444444vw;
  }
}

.sec_bg {
  background-color: #E6E4D5;
}

.credit_card {
  position: relative;
}

.credit {
  z-index: 5;
  display: none;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.5);
  color: #fff;
}
.credit a {
  color: #fff;
  margin-top: 0.5333333333vw;
  line-height: 1.5;
  font-size: 3.4666666667vw;
  align-items: flex-end;
  letter-spacing: 0.1em;
}
@media screen and (min-width: 769px) {
  .credit a {
    font-size: 1.1805555556vw;
    margin-top: 0.3472222222vw;
  }
}

.credit_li {
  width: 83%;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  bottom: 15vw;
}
@media screen and (min-width: 769px) {
  .credit_li {
    width: 60%;
    bottom: 6.9444444444vw;
  }
}
.credit_li .item_wrap {
  display: flex;
  justify-content: space-between;
}
.credit_li .item_wrap:has(.nolink) {
  pointer-events: none;
}
.credit_li .item_wrap:has(.nolink) span {
  text-decoration: none;
}
.credit_li .item_name {
  letter-spacing: 0.15em;
}
.credit_li .item_price {
  text-decoration: underline;
  font-size: 0.9em;
  letter-spacing: 0.04em;
}
.credit_li .taxin {
  letter-spacing: 0.04em;
  font-size: 0.8em;
}
.credit_li .link_off {
  pointer-events: none;
  /* クリック不可 */
  text-decoration: none;
  /* 下線を削除 */
}
.credit_li .credit_img {
  width: 25%;
}
.credit_li .box {
  width: 75%;
}

.contents_end img {
  width: 80vw;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  .contents_end img {
    width: 34.7222222222vw;
  }
}

/* 個別設定
===================================================== */
#section1 .sec_bg,
#section3 .sec_bg,
#section12 .sec_bg {
  padding: 5.3333333333vw 0;
}
@media screen and (min-width: 769px) {
  #section1 .sec_bg,
  #section3 .sec_bg,
  #section12 .sec_bg {
    padding: 5.5555555556vw 0;
  }
}
#section1 .block1,
#section3 .block1,
#section12 .block1 {
  width: 78.6666666667vw;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  #section1 .block1,
  #section3 .block1,
  #section12 .block1 {
    width: 58.3333333333vw;
  }
}

#section2 .block1 {
  width: 53.3333333333vw;
  margin-left: 5.3333333333vw;
}
@media screen and (min-width: 769px) {
  #section2 .block1 {
    width: 25vw;
    margin-left: 5.5555555556vw;
  }
}
#section2 .block2 {
  width: 53.3333333333vw;
  margin: 4vw 5.3333333333vw 0 auto;
}
@media screen and (min-width: 769px) {
  #section2 .block2 {
    width: 25vw;
    margin: -19.4444444444vw 5.5555555556vw 0 auto;
  }
}
#section2 .item_wrap {
  display: block;
}
#section2 .credit a {
  line-height: 1.1;
}
@media screen and (min-width: 769px) {
  #section2 .credit_li {
    width: 80%;
  }
}
#section2 .credit_li li + li {
  margin-top: 5.3333333333vw;
}
@media screen and (min-width: 769px) {
  #section2 .credit_li li + li {
    margin-top: 1.3888888889vw;
  }
}
#section2 .credit_li {
  bottom: 5.3333333333vw;
}
@media screen and (min-width: 769px) {
  #section2 .credit_li {
    bottom: 2.0833333333vw;
  }
}
#section2 .plus {
  right: 3vw;
  bottom: 5vw;
}
@media screen and (min-width: 769px) {
  #section2 .plus {
    right: 1.3888888889vw;
    bottom: 2.0833333333vw;
  }
}

#section3 .block2 {
  width: 48vw;
  margin: 10.6666666667vw auto 0;
}
@media screen and (min-width: 769px) {
  #section3 .block2 {
    width: 37.5vw;
    margin: 11.1111111111vw auto 0;
  }
}

#section4 .block1 {
  width: 69.3333333333vw;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  #section4 .block1 {
    width: 52.7777777778vw;
  }
}

#section5 .sec_bg {
  padding: 10.6666666667vw 0;
}
@media screen and (min-width: 769px) {
  #section5 .sec_bg {
    padding: 8.3333333333vw 0;
  }
}
#section5 .block1 {
  width: 69.3333333333vw;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  #section5 .block1 {
    width: 52.7777777778vw;
  }
}

#section6 .block1,
#section6 .block2 {
  width: 69.3333333333vw;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  #section6 .block1,
  #section6 .block2 {
    width: 34.0277777778vw;
    margin: 0;
  }
}
#section6 .block1 {
  margin-bottom: 2.6666666667vw;
}
@media screen and (min-width: 769px) {
  #section6 .block1 {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 769px) {
  #section6 .block_flex {
    display: flex;
    justify-content: space-between;
  }
}
@media screen and (min-width: 769px) {
  #section6 .credit_li {
    width: 80%;
  }
}

#section7 .sec_bg {
  padding: 5.3333333333vw 0;
}
@media screen and (min-width: 769px) {
  #section7 .sec_bg {
    padding: 5.5555555556vw 0;
  }
}
#section7 .block1,
#section7 .block2 {
  width: 69.3333333333vw;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  #section7 .block1,
  #section7 .block2 {
    width: 41.6666666667vw;
  }
}

#section8 {
  width: 100%;
}
#section8 .credit_li {
  width: 70%;
}
@media screen and (min-width: 769px) {
  #section8 .credit_li {
    width: 40%;
  }
}

#section9 .block_flex {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  margin-bottom: 10.6666666667vw;
}
@media screen and (min-width: 769px) {
  #section9 .block_flex {
    padding: 0 1.3888888889vw;
    margin-bottom: 8.3333333333vw;
  }
}
#section9 .block1 {
  width: 42.6666666667vw;
}
@media screen and (min-width: 769px) {
  #section9 .block1 {
    width: 29.1666666667vw;
  }
}
#section9 .block2 {
  width: 42.6666666667vw;
  margin-top: 16vw;
}
@media screen and (min-width: 769px) {
  #section9 .block2 {
    width: 29.1666666667vw;
    margin-top: 14.375vw;
  }
}
#section9 .block3 {
  width: 64vw;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  #section9 .block3 {
    width: 44.4444444444vw;
  }
}

#section10 .sec_bg {
  padding: 5.3333333333vw 0;
}
@media screen and (min-width: 769px) {
  #section10 .sec_bg {
    padding: 5.5555555556vw 0;
  }
}
#section10 .block1,
#section10 .block2,
#section10 .block3 {
  width: 58.6666666667vw;
  margin: 0 auto;
}
@media screen and (min-width: 769px) {
  #section10 .block1,
  #section10 .block2,
  #section10 .block3 {
    width: 41.6666666667vw;
  }
}
@media screen and (max-width: 768px) {
  #section10 .item_wrap {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  #section10 .credit a {
    line-height: 1.1;
  }
}
@media screen and (max-width: 768px) {
  #section10 .credit_li li + li {
    margin-top: 5.3333333333vw;
  }
  #section10 .credit_li {
    bottom: 5.3333333333vw;
  }
}
#section10 .credit_li .plus {
  right: 3vw;
  bottom: 5vw;
}

#section11 {
  width: 100%;
}
#section11 .credit_li {
  width: 70%;
}
@media screen and (min-width: 769px) {
  #section11 .credit_li {
    width: 50%;
  }
}

/* フッター
===================================================== */
.footer {
  z-index: 10;
  position: relative;
  text-align: center;
  padding: 32vw 0 12vw;
}
@media screen and (min-width: 769px) {
  .footer {
    padding: 19.4444444444vw 0 40px;
  }
}

.btn_wrap {
  font-size: 3.7333333333vw;
}
@media screen and (min-width: 769px) {
  .btn_wrap {
    font-size: 0.9722222222vw;
  }
}

.all_btn {
  width: 82.6666666667vw;
  margin: 0 auto 8vw;
  padding: 5vw 0;
  background-color: #000000;
  color: #fff;
  border: #000000 1px solid;
  letter-spacing: 0.2em;
}
@media screen and (min-width: 769px) {
  .all_btn {
    width: 27.7777777778vw;
    margin: 0 auto 2.0833333333vw;
    padding: 1.3888888889vw 0;
  }
}

.archive_btn {
  width: 82.6666666667vw;
  margin: 0 auto 15vw;
  padding: 5vw 0;
  background-color: #ffffff;
  color: #000000;
  border: #000000 1px solid;
  letter-spacing: 0.2em;
}
@media screen and (min-width: 769px) {
  .archive_btn {
    width: 27.7777777778vw;
    margin: 0 auto 6.9444444444vw;
    padding: 1.3888888889vw 0;
  }
}

.f_credit {
  font-size: 3.3333333333vw;
  line-height: 7vw;
  letter-spacing: 1px;
  margin-bottom: 24vw;
}
@media screen and (min-width: 769px) {
  .f_credit {
    font-size: 0.9722222222vw;
    line-height: 2.2;
    margin-bottom: 8.8888888889vw;
  }
}

.insta img {
  width: 6.6666666667vw;
  margin: 0 auto 28vw;
}
@media screen and (min-width: 769px) {
  .insta img {
    width: 25px;
    margin: 0 auto 128px;
  }
}

.logo_footer {
  width: 21.8666666667vw;
  margin: 0 auto 6vw;
}
@media screen and (min-width: 769px) {
  .logo_footer {
    width: 130px;
    margin: 0 auto 28px;
  }
}

.copy {
  font-size: 2.4vw;
  letter-spacing: 1px;
}
@media screen and (min-width: 769px) {
  .copy {
    font-size: 10px;
  }
}

/* クレジットプラスボタン
===================================================== */
.plus {
  z-index: 10;
  position: absolute;
  transition: all 0.4s;
  right: 5vw;
  bottom: 5vw;
  width: 5.3333333333vw;
  height: 5.3333333333vw;
  display: block;
}
@media screen and (min-width: 769px) {
  .plus {
    width: 2.0833333333vw;
    height: 2.0833333333vw;
    right: 2.7777777778vw;
    bottom: 2.7777777778vw;
  }
}
.plus:before, .plus:after {
  content: "";
  display: block;
  background-color: #fff;
  position: absolute;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
}
.plus::before {
  width: 1px;
  height: 5.3333333333vw;
}
@media screen and (min-width: 769px) {
  .plus::before {
    height: 2.0833333333vw;
  }
}
.plus::after {
  width: 5.3333333333vw;
  height: 1px;
}
@media screen and (min-width: 769px) {
  .plus::after {
    width: 2.0833333333vw;
  }
}
.plus:hover {
  cursor: pointer;
}

.credit_card.active .plus {
  transform: rotate(45deg);
  transition: all 0.4s;
}

/* 2026 ss 追加指定
===================================================== */
.item_notice,
.item_link {
  font-size: 0.65em;
  letter-spacing: 0.04em;
  opacity: 0.6;
  margin-bottom: 1.3333333333vw;
  margin-top: -0.5333333333vw;
}
@media screen and (min-width: 769px) {
  .item_notice,
  .item_link {
    margin-bottom: 0.3472222222vw;
    margin-top: -0.1388888889vw;
  }
}

.item_link {
  text-align: right;
}

/* swiper設定
===================================================== */
.swiper-container {
  overflow: hidden;
}

.loop_slide .swiper-wrapper {
  height: auto !important;
  transition-timing-function: linear !important;
}

.slider_wrapper {
  position: relative;
}

.fade2 {
  overflow: hidden;
}/*# sourceMappingURL=style.css.map */