/***
    The new CSS reset - version 1.11.2 (last updated 15.11.2023)
    GitHub page: https://github.com/elad2412/the-new-css-reset
***/
/*
    Remove all the styles of the "User-Agent-Stylesheet", except for the 'display' property
    - The "symbol *" part is to solve Firefox SVG sprite bug
    - The "html" element is excluded, otherwise a bug in Chrome breaks the CSS hyphens property (https://github.com/elad2412/the-new-css-reset/issues/36)
 */
*:where(:not(html, iframe, canvas, img, svg, video, audio):not(svg *, symbol *)) {
  all: unset;
  display: revert;
}

/* Preferred box-sizing value */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Fix mobile Safari increase font-size on landscape mode */
html {
  -moz-text-size-adjust: none;
  -webkit-text-size-adjust: none;
  text-size-adjust: none;
}

/* Reapply the pointer cursor for anchor tags */
a,
button {
  cursor: revert;
}

/* Remove list styles (bullets/numbers) */
ol,
ul,
menu,
summary {
  list-style: none;
}

/* For images to not be able to exceed their container */
img {
  max-inline-size: 100%;
  max-block-size: 100%;
}

/* removes spacing between cells in tables */
table {
  border-collapse: collapse;
}

/* Safari - solving issue when using user-select:none on the <body> text input doesn't working */
input,
textarea {
  -webkit-user-select: auto;
}

/* revert the 'white-space' property for textarea elements on Safari */
textarea {
  white-space: revert;
}

/* minimum style to allow to style meter element */
meter {
  -webkit-appearance: revert;
  appearance: revert;
}

/* preformatted text - use only for this feature */
:where(pre) {
  all: revert;
  box-sizing: border-box;
}

/* reset default text opacity of input placeholder */
::placeholder {
  color: unset;
}

/* fix the feature of 'hidden' attribute.
 display:revert; revert to element instead of attribute */
:where([hidden]) {
  display: none;
}

/* revert for bug in Chromium browsers
	- fix for the content editable attribute will work properly.
- webkit-user-select: auto; added for Safari in case of using user-select:none on wrapper element*/
:where([contenteditable]:not([contenteditable=false])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto;
}

/* apply back the draggable feature - exist only in Chromium and Safari */
:where([draggable=true]) {
  -webkit-user-drag: element;
}

/* Revert Modal native behavior */
:where(dialog:modal) {
  all: revert;
  box-sizing: border-box;
}

/* Remove details summary webkit styles */
::-webkit-details-marker {
  display: none;
}

body {
  color: #fff;
  font-size: clamp(14px, 3.73vw, 18px);
  line-height: 1;
  background-color: #000;
  overflow-x: hidden;
}

a {
  color: inherit;
  text-decoration: none;
  transition: all 0.6s;
}
a:active {
  opacity: 0.6;
}
@media screen and (min-width: 800px) {
  a:hover {
    opacity: 0.6;
  }
}

img {
  display: block;
}

body {
  font-family: canada-type-gibson, sans-serif;
}

.l-header {
  width: 100%;
  height: 12dvh;
  background-color: #000;
  border-bottom: 1px solid #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
}
@media screen and (min-width: 800px) {
  .l-header {
    height: 14dvh;
  }
}

.l-overlay {
  width: 100%;
  height: 100dvh;
  background-color: rgba(0, 0, 0, 0.8);
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 5;
  display: none;
}

.c-footer {
  padding: 10% 6%;
  font-family: nimbus-sans, sans-serif;
  border-top: 1px solid #fff;
}
@media screen and (min-width: 800px) {
  .c-footer {
    padding: 120px 1.5% 35px;
  }
}
.c-footer__list {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media screen and (min-width: 800px) {
  .c-footer__list {
    font-size: 12px;
  }
}
.c-footer__logo {
  width: 40%;
  max-width: 250px;
  margin: 10% auto 0;
}
@media screen and (min-width: 800px) {
  .c-footer__logo {
    width: 160px;
    margin-top: 20px;
  }
}
.c-footer__copy {
  margin-top: 5px;
  display: block;
  font-size: 10px;
  text-align: center;
}

.p-header {
  height: 100%;
  display: flex;
  justify-content: space-between;
  position: relative;
}
.p-header__title {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-right: 1px solid #fff;
}
.p-header__logo {
  width: 66%;
  max-height: 70px;
}
@media screen and (min-width: 800px) {
  .p-header__logo {
    width: 40%;
    max-height: 80px;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
}
.p-header__qr {
  height: 100%;
  aspect-ratio: 1/1;
  padding: 12px;
  position: relative;
}
.p-header__qr img {
  width: 100%;
}
.p-header__cross {
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  display: none;
}
.p-header__cross::before, .p-header__cross::after {
  content: "";
  width: 1px;
  height: calc(100% - 24px);
  display: block;
  background-color: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
}
.p-header__cross::before {
  transform: translateY(-50%) rotate(-45deg);
}
.p-header__cross::after {
  transform: translateY(-50%) rotate(45deg);
}

.p-index {
  width: 100%;
  height: 6dvh;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 5%;
  font-family: urw-din, sans-serif;
  font-size: 15px;
  font-size: clamp(15px, 4vw, 22px);
  font-weight: bold;
  background-color: #000;
  border-bottom: 1px solid #fff;
  position: fixed;
  top: 12dvh;
  left: 0;
  z-index: 10;
}
@media screen and (min-width: 800px) {
  .p-index {
    height: 6dvh;
    padding: 0;
    justify-content: center;
    top: 14dvh;
  }
}
@media screen and (min-width: 800px) {
  .p-index__title {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
}
.p-index__red {
  color: #AD3828;
}
.p-index__backnumber {
  width: 40%;
  max-height: 40px;
  padding: 2%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #000;
  font-size: 11px;
  font-size: clamp(11px, 2.9vw, 14px);
  background-color: #fff;
}
@media screen and (min-width: 800px) {
  .p-index__backnumber {
    width: 200px;
    height: 80%;
    padding: 0;
    position: absolute;
    right: 15px;
  }
}
.p-index__arrow {
  margin-left: 5px;
  height: clamp(11px, 2.9vw, 14px);
}

.p-contents {
  height: 100%;
  margin-top: 18dvh;
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 800px) {
  .p-contents {
    margin-top: 20dvh;
  }
}
.p-contents video {
  width: 100%;
  aspect-ratio: 1/1.31;
  object-fit: cover;
  object-position: center;
  border-bottom: 1px solid #fff;
}
@media screen and (min-width: 800px) {
  .p-contents video {
    width: 33.3333333333%;
  }
}
@media screen and (min-width: 800px) {
  .p-contents video:nth-of-type(1) {
    border-right: 1px solid #fff;
    border-left: 1px solid #fff;
  }
}

.p-section {
  width: 50%;
  aspect-ratio: 1/1.713;
  padding: 4% 3%;
  background-size: cover;
  position: relative;
  transition: all 0.6s;
  overflow: hidden;
}
@media screen and (min-width: 800px) {
  .p-section {
    width: 33.3333333333%;
    padding: 2.5%;
  }
}
.p-section:nth-of-type(2n + 1) {
  border-right: 1px solid #fff;
}
@media screen and (min-width: 800px) {
  .p-section:nth-of-type(2n + 1) {
    border: none;
  }
}
.p-section:not(:nth-child(13), :nth-child(14)) {
  border-bottom: 1px solid #fff;
}
@media screen and (min-width: 800px) {
  .p-section:nth-child(3n-1) {
    border-right: 1px solid #fff;
    border-left: 1px solid #fff;
  }
}
.p-section:nth-of-type(1) {
  color: #000;
}
.p-section:nth-of-type(1)::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("../assets/images/main/main_1.jpg");
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transition: all 0.6s;
}
.p-section:nth-of-type(2)::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("../assets/images/main/main_2.jpg");
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transition: all 0.6s;
}
.p-section:nth-of-type(3)::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("../assets/images/main/main_3.jpg");
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transition: all 0.6s;
}
.p-section:nth-of-type(4)::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("../assets/images/main/main_4.jpg");
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transition: all 0.6s;
}
.p-section:nth-of-type(5)::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("../assets/images/main/main_5.jpg");
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transition: all 0.6s;
}
.p-section:nth-of-type(6) {
  color: #000;
}
.p-section:nth-of-type(6)::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("../assets/images/main/main_6.jpg");
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transition: all 0.6s;
}
.p-section:nth-of-type(7)::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("../assets/images/main/main_7.jpg");
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transition: all 0.6s;
}
.p-section:nth-of-type(8)::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("../assets/images/main/main_8.jpg");
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transition: all 0.6s;
}
.p-section:nth-of-type(9)::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("../assets/images/main/main_9.jpg");
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transition: all 0.6s;
}
.p-section:nth-of-type(10)::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("../assets/images/main/main_10.jpg");
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transition: all 0.6s;
}
.p-section:nth-of-type(11)::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("../assets/images/main/main_11.jpg");
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transition: all 0.6s;
}
.p-section:nth-of-type(12)::before {
  content: "";
  width: 100%;
  height: 100%;
  background-image: url("../assets/images/main/main_12.jpg");
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  transition: all 0.6s;
}
.p-section:active::before {
  transform: scale(1.1);
}
@media screen and (min-width: 800px) {
  .p-section:hover::before {
    transform: scale(1.1);
  }
}
.p-section__textBox {
  display: flex;
  gap: 6px;
  font-size: clamp(14px, 3.73vw, 20px);
}
@media screen and (min-width: 800px) {
  .p-section__textBox {
    font-size: clamp(30px, 2.64vw, 38px);
  }
}
.p-section__info {
  font-size: clamp(6px, 1.6vw, 10px);
}
@media screen and (min-width: 800px) {
  .p-section__info {
    margin-top: 5px;
    font-size: clamp(11px, 1.04vw, 15px);
  }
}
.p-section__light {
  font-weight: 200;
}
.p-section__open {
  width: 20%;
  position: absolute;
  right: 6%;
  bottom: 4%;
}
@media screen and (min-width: 800px) {
  .p-section__open {
    width: 11.7%;
    min-width: 40px;
  }
}

.p-bnModal {
  width: 100%;
  height: 88dvh;
  padding-top: 10px;
  background-color: #000;
  font-family: nimbus-sans, sans-serif;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 10;
  display: none;
}
@media screen and (min-width: 800px) {
  .p-bnModal {
    height: 86dvh;
  }
}
.p-bnModal__list {
  padding-top: 100px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 25px;
  font-size: clamp(20px, 5.3vw, 24px);
  border-top: 1px solid #fff;
}
@media screen and (min-width: 800px) {
  .p-bnModal__list {
    padding-top: 80px;
  }
}
.p-bnModal__footer {
  width: 100%;
  border: none;
  position: absolute;
  bottom: 0;
  left: 0;
}

.p-creditModal {
  width: 100%;
  height: 100%;
  font-size: clamp(17px, 4.53vw, 22px);
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 10;
  overflow-y: scroll;
  display: none;
}
@media screen and (min-width: 800px) {
  .p-creditModal {
    font-size: 17px;
  }
}
.p-creditModal__container {
  margin-top: calc(12dvh + 10px);
  padding-top: 15px;
  padding-bottom: 60px;
  border-top: 1px solid #fff;
}
@media screen and (min-width: 800px) {
  .p-creditModal__container {
    height: calc(100% - 14dvh - 10px);
    margin-top: calc(14dvh + 10px);
    padding: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
.p-creditModal__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media screen and (min-width: 800px) {
  .p-creditModal__inner {
    flex-direction: row;
    justify-content: flex-end;
    align-items: stretch;
  }
}
.p-creditModal__title {
  font-size: clamp(13px, 3.47vw, 18px);
}
@media screen and (min-width: 800px) {
  .p-creditModal__title {
    font-size: 13px;
    text-align: left;
  }
}
.p-creditModal__slider {
  width: 82%;
  margin-top: 15px;
}
@media screen and (min-width: 800px) {
  .p-creditModal__slider {
    width: 33.3333333333%;
    margin-top: 0;
  }
}
.p-creditModal__textBox {
  width: 82%;
  margin-top: 40px;
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 800px) {
  .p-creditModal__textBox {
    width: 16.6666666667%;
    margin: 0 8.3333333333%;
    padding-top: 35px;
    position: relative;
  }
}
.p-creditModal__item {
  display: flex;
  flex-direction: column;
  gap: 25px;
}
@media screen and (min-width: 800px) {
  .p-creditModal__item {
    width: 100%;
    margin-top: 24px;
  }
}
.p-creditModal__brand {
  font-size: clamp(11px, 2.9vw, 14px);
}
@media screen and (min-width: 800px) {
  .p-creditModal__brand {
    font-size: 11px;
  }
}
.p-creditModal__price {
  margin-top: 5px;
}
@media screen and (min-width: 800px) {
  .p-creditModal__price {
    font-size: 15px;
  }
}
.p-creditModal__link {
  width: 100%;
  margin-top: 10px;
  padding: 10px;
  display: block;
  color: #000;
  text-align: center;
  border-radius: 20px;
  background-color: #fff;
}
@media screen and (min-width: 800px) {
  .p-creditModal__link {
    padding: 8px;
  }
}
.p-creditModal__navi {
  margin-top: 25px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-align: center;
}
@media screen and (min-width: 800px) {
  .p-creditModal__navi {
    width: 100%;
    margin-top: 0;
    position: absolute;
    bottom: 0;
  }
}
.p-creditModal__navi * {
  width: 10%;
}

@media screen and (min-width: 800px) {
  .u-hidden-pc {
    display: none !important;
  }
}
@media screen and (max-width: 799px) {
  .u-hidden-sp {
    display: none !important;
  }
}
.u-text-light {
  font-weight: 200;
}

.u-pointer {
  cursor: pointer;
  transition: all 0.6s;
}
.u-pointer:active {
  opacity: 0.6;
}
@media screen and (min-width: 800px) {
  .u-pointer:hover {
    opacity: 0.6;
  }
}/*# sourceMappingURL=app.css.map */