@charset "UTF-8";
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Remove default padding */
ul,
ol {
  padding: 0;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
p,
ul,
ol,
figure,
blockquote,
dl,
dd {
  margin: 0;
}

/* Remove list styles on ul, ol elements with a class attribute */
ul,
ol {
  list-style: none;
}

/* A elements that don't have a class get default styles */
a:not([class]) {
  -webkit-text-decoration-skip: ink;
          text-decoration-skip-ink: auto;
}

/* Make images easier to work with */
img {
  display: block;
  max-width: 100%;
  width: 100%;
}

/* Natural flow and rhythm in articles by default */
article > * + * {
  margin-top: 1em;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Blur images when they have no alt attribute */
img:not([alt]) {
  filter: blur(10px);
}

/* フォームリセット */
input,
button,
select,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  font: inherit;
  outline: none;
}

textarea {
  resize: vertical;
}

input[type=checkbox],
input[type=radio] {
  display: none;
}

input[type=submit],
input[type=button],
label,
button,
select {
  cursor: pointer;
}

select::-ms-expand {
  display: none;
}

/* リキッドレイアウト対応 */
html {
  font-size: 16px;
}
@media (max-width: 1400px) {
  html {
    font-size: 1.1428571429vw;
  }
}
@media screen and (max-width: 767px) {
  html {
    font-size: 4.2666666667vw;
  }
}

/* pcの電話番号発信対応 */
a[href^="tel:"] {
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  a[href^="tel:"] {
    pointer-events: initial;
  }
}

a {
  -webkit-text-decoration: none;
  color: inherit;
  text-decoration: none;
  transition: opacity 0.3s;
}

/* hover指定できるPCを想定したスタイル */
@media (hover: hover) {
  a:hover {
    opacity: 0.8;
  }
}
/* hoverが使えないタッチ端末を想定した装飾 */
@media (hover: none) {
  a:active {
    opacity: 0.8;
  }
}
html {
  scroll-behavior: smooth;
  scroll-padding-top: 5rem;
}
@media screen and (max-width: 767px) {
  html {
    scroll-padding-top: 2.5rem;
  }
}

body {
  color: #5f5a59;
  display: flex;
  flex-direction: column;
  font-family: "Shippori Mincho B1", serif;
  font-weight: 400;
  line-height: 1.5;
  min-height: 100vh;
  text-rendering: optimizeSpeed;
}

body.hidden {
  overflow: hidden;
}

main {
  flex: 1;
}

.l-inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 1400px;
  max-width: 87.5rem;
  padding-left: 25px;
  padding-left: 1.5625rem;
  padding-right: 25px;
  padding-right: 1.5625rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .l-inner {
    max-width: 570px;
    max-width: 35.625rem;
    padding-left: 15px;
    padding-left: 0.9375rem;
    padding-right: 15px;
    padding-right: 0.9375rem;
  }
}

.l-mv {
  margin-top: 120px;
  margin-top: 7.5rem;
}
@media screen and (max-width: 767px) {
  .l-mv {
    margin-top: 54px;
    margin-top: 3.375rem;
  }
}

.c-meta {
  align-items: center;
  display: flex;
}

.c-meta__icon {
  display: block;
  max-width: 54px;
  max-width: 3.375rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .c-meta__icon {
    max-width: 40.5px;
    max-width: 2.53125rem;
  }
}
.c-meta__icon img {
  -o-object-fit: cover;
  aspect-ratio: 1/1;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.c-meta__text {
  font-family: "GFS Didot", serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: 0.1em;
  line-height: 1.29;
  margin-left: 17px;
  margin-left: 1.0625rem;
}
@media screen and (max-width: 767px) {
  .c-meta__text {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
    margin-left: 14px;
    margin-left: 0.875rem;
  }
}

.c-meta__time {
  font-family: "GFS Didot", serif;
  font-size: max(26px, 10px);
  font-size: max(1.625rem, 10px);
  letter-spacing: 0.05em;
  margin-left: 34px;
  margin-left: 2.125rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .c-meta__time {
    font-size: max(19.5px, 10px);
    font-size: max(1.21875rem, 10px);
    margin-left: 28px;
    margin-left: 1.75rem;
  }
}
.c-meta__time::before {
  background-color: #5f5a59;
  content: "";
  height: 29px;
  height: 1.8125rem;
  left: -20px;
  left: -1.25rem;
  position: absolute;
  top: 1px;
  top: 0.0625rem;
  width: 1px;
}
@media screen and (max-width: 767px) {
  .c-meta__time::before {
    height: 21px;
    height: 1.3125rem;
    left: -16px;
    left: -1rem;
  }
}
.c-meta__time span {
  font-family: "GFS Didot", serif;
  font-size: max(21.5px, 10px);
  font-size: max(1.34375rem, 10px);
}
@media screen and (max-width: 767px) {
  .c-meta__time span {
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
  }
}

.c-text {
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  line-height: 1.71;
}
@media (max-width: 1400px) {
  .c-text {
    letter-spacing: -0.05em;
  }
}
@media screen and (max-width: 767px) {
  .c-text {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
    letter-spacing: 0.04em;
  }
}

.c-title {
  color: #000;
}

.c-title__en {
  font-family: "GFS Didot", serif;
  font-size: max(40px, 10px);
  font-size: max(2.5rem, 10px);
  letter-spacing: 0.09em;
}
@media screen and (max-width: 767px) {
  .c-title__en {
    font-size: max(24px, 10px);
    font-size: max(1.5rem, 10px);
    line-height: 1.32;
  }
}

.c-title__ja {
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  font-weight: 400;
  letter-spacing: 0.15em;
  line-height: 1.83;
}
@media screen and (max-width: 767px) {
  .c-title__ja {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
  }
}

.p-about {
  padding-top: 161px;
  padding-top: 10.0625rem;
  position: relative;
}
@media (max-width: 1400px) {
  .p-about {
    padding-top: 162px;
    padding-top: 10.125rem;
  }
}
@media screen and (max-width: 767px) {
  .p-about {
    padding-top: 17px;
    padding-top: 1.0625rem;
  }
}

.p-about__inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 1920px;
  max-width: 120rem;
}

.p-about__container {
  display: flex;
  gap: 250px;
  gap: 15.625rem;
  padding-bottom: 250px;
  padding-bottom: 15.625rem;
}
@media (max-width: 1400px) {
  .p-about__container {
    gap: 71px;
    gap: 4.4375rem;
    padding-bottom: 236px;
    padding-bottom: 14.75rem;
  }
}
@media screen and (max-width: 767px) {
  .p-about__container {
    gap: 9px;
    gap: 0.5625rem;
    padding-bottom: 118px;
    padding-bottom: 7.375rem;
  }
}

.p-about__head {
  display: flex;
  margin-left: calc(50% - 56.75rem);
}
@media (max-width: 1920px) {
  .p-about__head {
    margin-left: 52px;
    margin-left: 3.25rem;
  }
}
@media (max-width: 1400px) {
  .p-about__head {
    margin-left: 46px;
    margin-left: 2.875rem;
  }
}
@media screen and (max-width: 767px) {
  .p-about__head {
    margin-left: 15px;
    margin-left: 0.9375rem;
  }
}

.p-about__head-text {
  font-family: "GFS Didot", serif;
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  font-weight: 400;
  letter-spacing: 0.12em;
  position: relative;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 767px) {
  .p-about__head-text {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
    letter-spacing: 0.08em;
  }
}
.p-about__head-text::after {
  background-color: #5f5a59;
  content: "";
  height: 1229px;
  height: 76.8125rem;
  left: 8px;
  left: 0.5rem;
  position: absolute;
  top: 67px;
  top: 4.1875rem;
  width: 1px;
}
@media screen and (max-width: 767px) {
  .p-about__head-text::after {
    height: 1561px;
    height: 97.5625rem;
    left: 6px;
    left: 0.375rem;
    top: 35px;
    top: 2.1875rem;
  }
}

@media (max-width: 1400px) {
  .p-about__box {
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .p-about__box {
    margin-top: 34px;
    margin-top: 2.125rem;
  }
}

.p-about__images {
  display: flex;
  gap: 20px;
  justify-content: center;
  margin-bottom: 60px;
}

.p-about__img {
  display: block;
  margin-left: auto;
  max-width: 1596px;
  max-width: 99.75rem;
  width: 100%;
}
@media (max-width: 1400px) {
  .p-about__img {
    max-width: 1205px;
    max-width: 75.3125rem;
  }
}
@media screen and (max-width: 767px) {
  .p-about__img {
    max-width: 295px;
    max-width: 18.4375rem;
  }
}
.p-about__img img {
  -o-object-fit: cover;
  aspect-ratio: 1596/521;
  height: auto;
     object-fit: cover;
  width: 100%;
}
@media (max-width: 1400px) {
  .p-about__img img {
    aspect-ratio: 1205/521;
  }
}
@media screen and (max-width: 767px) {
  .p-about__img img {
    aspect-ratio: 295/368;
  }
}

.p-about__img-body {
  background-color: #fff;
  margin-top: -74px;
  margin-top: -4.625rem;
  padding-left: 3px;
  padding-left: 0.1875rem;
  padding-top: 34px;
  padding-top: 2.125rem;
  position: relative;
  width: 1263px;
  width: 78.9375rem;
}
@media (max-width: 1920px) {
  .p-about__img-body {
    width: 65.78125vw;
  }
}
@media (max-width: 1400px) {
  .p-about__img-body {
    margin-top: -75px;
    margin-top: -4.6875rem;
    padding-left: 0;
    padding-top: 30px;
    padding-top: 1.875rem;
    width: 994px;
    width: 62.125rem;
  }
}
@media screen and (max-width: 767px) {
  .p-about__img-body {
    margin-top: -43px;
    margin-top: -2.6875rem;
    padding-top: 17px;
    padding-top: 1.0625rem;
    width: 270px;
    width: 16.875rem;
  }
}

.p-about__img-heading {
  font-family: "GFS Didot", serif;
  font-size: max(40px, 10px);
  font-size: max(2.5rem, 10px);
  letter-spacing: 0.1em;
}
@media (max-width: 1400px) {
  .p-about__img-heading {
    letter-spacing: 0.09em;
  }
}
@media screen and (max-width: 767px) {
  .p-about__img-heading {
    font-size: max(23.5px, 10px);
    font-size: max(1.46875rem, 10px);
  }
}

.p-about__img-text {
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  letter-spacing: 0.1em;
  margin-top: 8px;
  margin-top: 0.5rem;
}
@media screen and (max-width: 767px) {
  .p-about__img-text {
    font-size: max(10.5px, 10px);
    font-size: max(0.65625rem, 10px);
  }
}
@media screen and (max-width: 767px) {
  .p-about__img-text {
    line-height: 2.81;
    margin-top: 10px;
    margin-top: 0.625rem;
  }
}

.p-about__list {
  display: flex;
  gap: 62px;
  gap: 3.875rem;
  margin-left: 4px;
  margin-left: 0.25rem;
  margin-top: 90px;
  margin-top: 5.625rem;
}
@media (max-width: 1400px) {
  .p-about__list {
    gap: 55px;
    gap: 3.4375rem;
  }
}
@media screen and (max-width: 767px) {
  .p-about__list {
    flex-direction: column;
    gap: 78px;
    gap: 4.875rem;
    margin-left: 0;
    margin-top: 75px;
    margin-top: 4.6875rem;
    padding-right: 15px;
    padding-right: 0.9375rem;
  }
}

.p-about__item {
  display: flex;
  gap: 34px;
  gap: 2.125rem;
}
@media screen and (max-width: 767px) {
  .p-about__item {
    flex-direction: column;
    gap: 0;
  }
}
.p-about__item:nth-child(1) {
  max-width: 600px;
  max-width: 37.5rem;
}
@media (max-width: 1400px) {
  .p-about__item:nth-child(1) {
    max-width: 540px;
    max-width: 33.75rem;
  }
}
.p-about__item:nth-child(2) {
  padding-right: 25px;
  padding-right: 1.5625rem;
}
@media (max-width: 1400px) {
  .p-about__item:nth-child(2) {
    max-width: 540px;
    max-width: 33.75rem;
    padding-right: 0;
  }
}

.p-about__item-icon {
  display: block;
  max-width: 125px;
  max-width: 7.8125rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-about__item-icon {
    margin-left: 96px;
    margin-left: 6rem;
    max-width: 105px;
    max-width: 6.5625rem;
  }
}
.p-about__item-icon img {
  -o-object-fit: cover;
  aspect-ratio: 1/1;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-about__item-body {
  width: min(100%, 440px);
  width: min(100%, 27.5rem);
}

.p-about__item:nth-child(1) .p-about__item-body {
  margin-top: 28px;
  margin-top: 1.75rem;
}

.p-about__item:nth-child(2) .p-about__item-body {
  margin-top: -6px;
  margin-top: -0.375rem;
  width: min(100%, 453px);
  width: min(100%, 28.3125rem);
}
@media screen and (max-width: 767px) {
  .p-about__item:nth-child(2) .p-about__item-body {
    margin-top: 28px;
    margin-top: 1.75rem;
  }
}

.p-about__item-title {
  font-size: max(25px, 10px);
  font-size: max(1.5625rem, 10px);
  font-weight: 500;
  letter-spacing: 0.05em;
}
@media screen and (max-width: 767px) {
  .p-about__item-title {
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
    line-height: 1.75;
    margin-left: -26px;
    margin-left: -1.625rem;
    margin-top: 2px;
    margin-top: 0.125rem;
    text-align: center;
  }
}

.p-about__item:nth-child(2) .p-about__item-title {
  letter-spacing: 0.13em;
}

.p-about__item-text {
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  line-height: 2.57;
  margin-top: 13px;
  margin-top: 0.8125rem;
}
@media screen and (max-width: 767px) {
  .p-about__item-text {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    margin-top: 24px;
    margin-top: 1.5rem;
    max-width: 294px;
    max-width: 18.375rem;
    text-align: center;
  }
}

.p-about__item:nth-child(2) .p-about__item-text {
  margin-top: 10px;
  margin-top: 0.625rem;
}
@media screen and (max-width: 767px) {
  .p-about__item:nth-child(2) .p-about__item-text {
    margin-top: 24px;
    margin-top: 1.5rem;
  }
}

.p-classic {
  padding-bottom: 270px;
  padding-bottom: 16.875rem;
  padding-top: 103px;
  padding-top: 6.4375rem;
  padding-top: 223px;
  padding-top: 13.9375rem;
}
@media (max-width: 1400px) {
  .p-classic {
    padding-bottom: 271px;
    padding-bottom: 16.9375rem;
    padding-top: 241px;
    padding-top: 15.0625rem;
  }
}
@media screen and (max-width: 767px) {
  .p-classic {
    padding-bottom: 120px;
    padding-bottom: 7.5rem;
    padding-top: 97px;
    padding-top: 6.0625rem;
  }
}

.p-classic__inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 1920px;
  max-width: 120rem;
}

.p-classic__head {
  padding-right: 25px;
  padding-right: 1.5625rem;
}
@media screen and (max-width: 767px) {
  .p-classic__head {
    padding-right: 0;
  }
}

.p-classic__read {
  display: flex;
  margin-left: clamp(70px, -131.92px + 14.423vw, 145.008px);
  margin-left: clamp(4.375rem, -8.245rem + 14.423vw, 9.063rem);
}
@media (max-width: 1400px) {
  .p-classic__read {
    margin-left: 70px;
    margin-left: 4.375rem;
  }
}
@media screen and (max-width: 767px) {
  .p-classic__read {
    flex-direction: column;
    margin-left: 40px;
    margin-left: 2.5rem;
  }
}
@media (max-width: 374px) {
  .p-classic__read {
    margin-left: clamp(5.008px, -198.64px + 63.636vw, 40px);
  }
}

.p-classic__title .c-title__ja {
  letter-spacing: 0.07em;
}

.p-classic__read-description {
  margin-left: clamp(79.008px, -559.072px + 45.577vw, 316px);
  margin-left: clamp(4.938rem, -34.942rem + 45.577vw, 19.75rem);
  margin-top: 42px;
  margin-top: 2.625rem;
}
@media (max-width: 1400px) {
  .p-classic__read-description {
    margin-left: 79px;
    margin-left: 4.9375rem;
  }
}
@media screen and (max-width: 767px) {
  .p-classic__read-description {
    margin-left: 0;
    margin-top: 26px;
    margin-top: 1.625rem;
  }
}

.p-classic__read-description.c-text {
  letter-spacing: 0.02em;
}

.p-classic__read-meta {
  margin-left: 52px;
  margin-left: 3.25rem;
  margin-left: clamp(24px, -51.392px + 5.385vw, 52px);
  margin-left: clamp(1.5rem, -3.212rem + 5.385vw, 3.25rem);
  margin-top: 18px;
  margin-top: 1.125rem;
}
@media (max-width: 1400px) {
  .p-classic__read-meta {
    margin-left: 24px;
    margin-left: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .p-classic__read-meta {
    margin-left: 0;
    margin-top: 34px;
    margin-top: 2.125rem;
  }
}

.p-classic__head-img {
  display: block;
  margin-top: 81px;
  margin-top: 5.0625rem;
  max-width: clamp(1241.008px, 301.392px + 67.115vw, 1590px);
  max-width: clamp(77.563rem, 18.837rem + 67.115vw, 99.375rem);
  width: 100%;
}
@media (max-width: 1400px) {
  .p-classic__head-img {
    max-width: 1241px;
    max-width: 77.5625rem;
  }
}
@media screen and (max-width: 767px) {
  .p-classic__head-img {
    margin-top: 32px;
    margin-top: 2rem;
    max-width: 375px;
    max-width: 23.4375rem;
  }
}
.p-classic__head-img img {
  -o-object-fit: cover;
  aspect-ratio: 1590/580;
  height: auto;
     object-fit: cover;
  width: 100%;
}
@media (max-width: 1400px) {
  .p-classic__head-img img {
    aspect-ratio: 1241/580;
  }
}
@media screen and (max-width: 767px) {
  .p-classic__head-img img {
    aspect-ratio: 375/320;
  }
}

.p-classic__swiper-container {
  position: relative;
}

.p-classic__swiper {
  clip-path: inset(0% -50vw 0% 0%);
  margin-left: 420px;
  margin-left: 26.25rem;
  margin-top: 210px;
  margin-top: 13.125rem;
  overflow: visible;
  overflow: initial;
}
@media (max-width: 1920px) {
  .p-classic__swiper {
    margin-left: clamp(162px, -532.608px + 49.615vw, 420px);
    margin-left: clamp(10.125rem, -33.288rem + 49.615vw, 26.25rem);
  }
}
@media (max-width: 1400px) {
  .p-classic__swiper {
    margin-left: 162px;
    margin-left: 10.125rem;
    margin-top: 209px;
    margin-top: 13.0625rem;
  }
}
@media screen and (max-width: 767px) {
  .p-classic__swiper {
    margin-left: 60px;
    margin-left: 3.75rem;
    margin-top: 65px;
    margin-top: 4.0625rem;
  }
}

.p-classic__item {
  align-items: flex-end;
  display: flex;
  gap: 35px;
  gap: 2.1875rem;
  width: 1290px;
  width: 80.625rem;
}
@media (max-width: 1920px) {
  .p-classic__item {
    width: clamp(1183.008px, 894.928px + 20.577vw, 1290px);
    width: clamp(73.938rem, 55.933rem + 20.577vw, 80.625rem);
  }
}
@media (max-width: 1400px) {
  .p-classic__item {
    gap: 33px;
    gap: 2.0625rem;
    width: 1183px;
    width: 73.9375rem;
  }
}
@media screen and (max-width: 767px) {
  .p-classic__item {
    align-items: initial;
    flex-direction: column;
    gap: 26px;
    gap: 1.625rem;
    margin-right: 22.5px;
    margin-right: 1.40625rem;
    width: 278px;
    width: 17.375rem;
  }
}

.p-classic__img {
  display: block;
  max-width: 717px;
  max-width: 44.8125rem;
  width: 100%;
}
@media (max-width: 1400px) {
  .p-classic__img {
    max-width: 716px;
    max-width: 44.75rem;
  }
}
@media screen and (max-width: 767px) {
  .p-classic__img {
    max-width: 278px;
    max-width: 17.375rem;
  }
}
.p-classic__img img {
  -o-object-fit: cover;
  aspect-ratio: 717/419;
  height: auto;
     object-fit: cover;
  width: 100%;
}
@media (max-width: 1400px) {
  .p-classic__img img {
    aspect-ratio: 716/418;
  }
}
@media screen and (max-width: 767px) {
  .p-classic__img img {
    aspect-ratio: 278/162;
  }
}

.p-classic__number {
  font-family: "GFS Didot", serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .p-classic__number {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
  }
}

.p-classic__heading-en {
  font-family: "GFS Didot", serif;
  font-size: max(40px, 10px);
  font-size: max(2.5rem, 10px);
  letter-spacing: 0.1em;
  line-height: 1.28;
  margin-top: -5px;
  margin-top: -0.3125rem;
}
@media screen and (max-width: 767px) {
  .p-classic__heading-en {
    font-size: max(19px, 10px);
    font-size: max(1.1875rem, 10px);
    margin-top: -3px;
    margin-top: -0.1875rem;
  }
}

.p-classic__heading-ja {
  align-items: center;
  display: flex;
  font-size: max(10px, 10px);
  font-size: max(0.625rem, 10px);
  letter-spacing: -0.05em;
  margin-top: 2px;
  margin-top: 0.125rem;
  padding-right: 13px;
  padding-right: 0.8125rem;
}
@media screen and (max-width: 767px) {
  .p-classic__heading-ja {
    margin-top: 0;
  }
}
.p-classic__heading-ja::before {
  background-color: #5f5a59;
  content: "";
  flex-grow: 1;
  height: 1px;
  margin-right: 7px;
  margin-right: 0.4375rem;
}
@media screen and (max-width: 767px) {
  .p-classic__heading-ja::before {
    flex-grow: 0.3;
    margin-right: 5px;
    margin-right: 0.3125rem;
  }
}

.p-classic__description {
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: 0.05em;
  margin-top: 35px;
  margin-top: 2.1875rem;
}
@media screen and (max-width: 767px) {
  .p-classic__description {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    margin-top: 16px;
    margin-top: 1rem;
  }
}

.p-classic__detail {
  align-items: flex-end;
  display: flex;
  gap: 33px;
  gap: 2.0625rem;
  margin-top: 33px;
  margin-top: 2.0625rem;
}
@media screen and (max-width: 767px) {
  .p-classic__detail {
    gap: 18px;
    gap: 1.125rem;
    margin-top: 29px;
    margin-top: 1.8125rem;
  }
}

.p-classic__thumb {
  display: block;
  max-width: 128px;
  max-width: 8rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-classic__thumb {
    max-width: 64px;
    max-width: 4rem;
  }
}
.p-classic__thumb img {
  -o-object-fit: cover;
  aspect-ratio: 1/1;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-classic__part-number-text {
  font-size: max(10px, 10px);
  font-size: max(0.625rem, 10px);
  margin-top: 4px;
  margin-top: 0.25rem;
}

.p-classic__pagination.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
  left: auto;
  left: initial;
  right: 886px;
  right: 55.375rem;
  top: 516px;
  top: 32.25rem;
}
@media (max-width: 1920px) {
  .p-classic__pagination.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
    right: clamp(623.008px, -85.072px + 50.577vw, 886px);
    right: clamp(38.938rem, -5.317rem + 50.577vw, 55.375rem);
  }
}
@media (max-width: 1400px) {
  .p-classic__pagination.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
    right: 623px;
    right: 38.9375rem;
  }
}
@media screen and (max-width: 767px) {
  .p-classic__pagination.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
    right: 147px;
    right: 9.1875rem;
    top: 424px;
    top: 26.5rem;
  }
}

@media screen and (max-width: 767px) {
  .p-classic__pagination.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
  .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin-left: 4.75px;
    margin-left: 0.296875rem;
    margin-right: 4.75px;
    margin-right: 0.296875rem;
  }
}

@media screen and (max-width: 767px) {
  .p-classic__pagination .swiper-pagination-bullet {
    height: 11px;
    height: 0.6875rem;
    width: 11px;
    width: 0.6875rem;
  }
}

@media screen and (max-width: 767px) {
  .p-classic__pagination .swiper-pagination-bullet-active::after {
    height: 6.5px;
    height: 0.40625rem;
    width: 6.5px;
    width: 0.40625rem;
  }
}

.p-drawer {
  background-color: #5f5a59;
  bottom: 0;
  display: none;
  height: 100vh;
  left: 0;
  opacity: 0.9;
  overflow-y: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 100%;
  z-index: 50;
}

.p-drawer__items {
  height: inherit;
  padding-left: 20px;
  padding-left: 1.25rem;
  padding-right: 20px;
  padding-right: 1.25rem;
  padding-top: 65px;
  padding-top: 4.0625rem;
}

.p-drawer__item + .p-drawer__item {
  margin-top: 33px;
  margin-top: 2.0625rem;
}
.p-drawer__item:nth-child(5) {
  margin-top: 26px;
  margin-top: 1.625rem;
}

.p-drawer__link {
  border-bottom: 1px solid #fff;
  color: #fff;
  display: block;
  font-size: 31px;
  font-size: 1.9375rem;
  letter-spacing: 0.05em;
  padding-bottom: 17px;
  padding-bottom: 1.0625rem;
  padding-top: 17px;
  padding-top: 1.0625rem;
  transition: color 0.3s ease-out;
}

.p-drawer__item-inner {
  color: #fff;
  margin-top: 11px;
  margin-top: 0.6875rem;
}
.p-drawer__item-inner + .p-drawer__item-inner {
  margin-top: 0;
}

.p-drawer__link-inner {
  display: block;
  padding-bottom: 8px;
  padding-bottom: 0.5rem;
  padding-top: 8px;
  padding-top: 0.5rem;
}

.p-drawer__link-inner-en {
  display: block;
  font-family: "GFS Didot", serif;
  font-size: max(15.5px, 10px);
  font-size: max(0.96875rem, 10px);
  letter-spacing: 0.09em;
  line-height: 1.2;
}

.p-drawer__link-inner-ja {
  display: block;
  font-size: max(10.5px, 10px);
  font-size: max(0.65625rem, 10px);
  letter-spacing: 0.05em;
  line-height: 1.2;
}

.p-features {
  background-color: #f6f6f5;
  padding-bottom: 170px;
  padding-bottom: 10.625rem;
  padding-top: 75px;
  padding-top: 4.6875rem;
}
@media (max-width: 1400px) {
  .p-features {
    padding-bottom: 143px;
    padding-bottom: 8.9375rem;
    padding-top: 92px;
    padding-top: 5.75rem;
  }
}
@media screen and (max-width: 767px) {
  .p-features {
    padding-bottom: 76px;
    padding-bottom: 4.75rem;
    padding-top: 58px;
    padding-top: 3.625rem;
  }
}

.p-features__inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 1920px;
  max-width: 120rem;
}

.p-features__title {
  margin-left: 145px;
  margin-left: 9.0625rem;
}
@media screen and (max-width: 767px) {
  .p-features__title {
    margin-left: 39px;
    margin-left: 2.4375rem;
  }
}

.p-features__items {
  margin-top: 84px;
  margin-top: 5.25rem;
}
@media screen and (max-width: 767px) {
  .p-features__items {
    margin-top: 53px;
    margin-top: 3.3125rem;
  }
}

.p-features__item {
  display: flex;
  gap: 67px;
  gap: 4.1875rem;
  padding-right: 25px;
  padding-right: 1.5625rem;
}
@media (max-width: 1400px) {
  .p-features__item {
    gap: 68px;
    gap: 4.25rem;
  }
}
@media screen and (max-width: 767px) {
  .p-features__item {
    flex-direction: column;
    gap: 0;
    padding-right: 0;
  }
}
.p-features__item + .p-features__item {
  margin-top: 202px;
  margin-top: 12.625rem;
}
@media screen and (max-width: 767px) {
  .p-features__item + .p-features__item {
    margin-top: 116px;
    margin-top: 7.25rem;
  }
}
.p-features__item:nth-child(even) {
  flex-direction: row-reverse;
  padding-left: 25px;
  padding-left: 1.5625rem;
  padding-right: 0;
}
@media screen and (max-width: 767px) {
  .p-features__item:nth-child(even) {
    flex-direction: column;
    padding-left: 0;
  }
}
.p-features__item:nth-child(3) {
  margin-top: 180px;
  margin-top: 11.25rem;
}
@media screen and (max-width: 767px) {
  .p-features__item:nth-child(3) {
    margin-top: 116px;
    margin-top: 7.25rem;
  }
}

.p-features__img {
  display: block;
  max-width: 741px;
  max-width: 46.3125rem;
  width: 100%;
}
@media (max-width: 1400px) {
  .p-features__img {
    max-width: 619px;
    max-width: 38.6875rem;
  }
}
@media screen and (max-width: 767px) {
  .p-features__img {
    margin-top: 45px;
    margin-top: 2.8125rem;
    max-width: 318px;
    max-width: 19.875rem;
    order: 2;
  }
}
.p-features__img img {
  -o-object-fit: cover;
  aspect-ratio: 741/340;
  height: auto;
     object-fit: cover;
  width: 100%;
}
@media (max-width: 1400px) {
  .p-features__img img {
    aspect-ratio: 619/340;
  }
}
@media screen and (max-width: 767px) {
  .p-features__img img {
    aspect-ratio: 318/176;
  }
}
.p-features__img figcaption {
  color: #5e5b58;
  font-size: max(10px, 10px);
  font-size: max(0.625rem, 10px);
  margin-top: 6px;
  margin-top: 0.375rem;
}
@media screen and (max-width: 767px) {
  .p-features__img figcaption {
    padding-right: 15px;
    padding-right: 0.9375rem;
    text-align: right;
  }
}

@media screen and (max-width: 767px) {
  .p-features__item:nth-child(even) .p-features__img {
    margin-left: auto;
  }
}

.p-features__content {
  max-width: 781px;
  max-width: 48.8125rem;
}
@media (max-width: 1400px) {
  .p-features__content {
    max-width: 537px;
    max-width: 33.5625rem;
  }
}
@media screen and (max-width: 767px) {
  .p-features__content {
    display: contents;
  }
}

.p-features__head {
  display: flex;
  gap: 19px;
  gap: 1.1875rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-features__head {
    gap: 13px;
    gap: 0.8125rem;
    order: 1;
    padding-left: 15px;
    padding-left: 0.9375rem;
    padding-right: 15px;
    padding-right: 0.9375rem;
  }
}
.p-features__head::after {
  background-color: #5f5a59;
  bottom: 0;
  content: "";
  display: block;
  height: 1px;
  left: 32.5px;
  left: 2.03125rem;
  position: absolute;
  width: 749px;
  width: 46.8125rem;
}
@media (max-width: 1400px) {
  .p-features__head::after {
    width: 504px;
    width: 31.5rem;
  }
}
@media screen and (max-width: 767px) {
  .p-features__head::after {
    left: 46.25px;
    left: 2.890625rem;
    width: 312px;
    width: 19.5rem;
  }
}
@media (max-width: 374px) {
  .p-features__head::after {
    width: 300px;
    width: 18.75rem;
  }
}

.p-features__head-icon {
  display: block;
  max-width: 65px;
  max-width: 4.0625rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-features__head-icon {
    max-width: 62.5px;
    max-width: 3.90625rem;
  }
}
.p-features__head-icon img {
  -o-object-fit: cover;
  aspect-ratio: 1/1;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-features__head-title {
  margin-top: -5px;
  margin-top: -0.3125rem;
}
@media screen and (max-width: 767px) {
  .p-features__head-title {
    margin-top: 3px;
    margin-top: 0.1875rem;
  }
}

.p-features__head-read {
  font-size: max(20px, 10px);
  font-size: max(1.25rem, 10px);
  letter-spacing: 0.1em;
  line-height: 1.69;
}
@media screen and (max-width: 767px) {
  .p-features__head-read {
    font-size: max(19px, 10px);
    font-size: max(1.1875rem, 10px);
    letter-spacing: normal;
    letter-spacing: initial;
  }
}

.p-features__head-text {
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: -0.12em;
}
@media screen and (max-width: 767px) {
  .p-features__head-text {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
    letter-spacing: -0.08em;
  }
}

.p-features__description {
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: 0.075em;
  line-height: 2.57;
  margin-top: 20px;
  margin-top: 1.25rem;
}
@media (max-width: 1400px) {
  .p-features__description {
    letter-spacing: -0.05em;
  }
}
@media screen and (max-width: 767px) {
  .p-features__description {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    line-height: 2.58;
    margin-top: 37px;
    margin-top: 2.3125rem;
    max-width: 330px;
    max-width: 20.625rem;
    order: 3;
    padding-left: 15px;
    padding-left: 0.9375rem;
    padding-right: 15px;
    padding-right: 0.9375rem;
  }
}

@media screen and (max-width: 767px) {
  .p-features__item:nth-child(even) .p-features__description {
    margin-left: auto;
    margin-top: 22px;
    margin-top: 1.375rem;
  }
}

@media screen and (max-width: 767px) {
  .p-features__item:nth-child(3) .p-features__description {
    margin-top: 33px;
    margin-top: 2.0625rem;
  }
}

.p-features__point {
  margin-top: 21px;
  margin-top: 1.3125rem;
}
@media screen and (max-width: 767px) {
  .p-features__point {
    margin-top: 62px;
    margin-top: 3.875rem;
    order: 4;
    padding-left: 15px;
    padding-left: 0.9375rem;
    padding-right: 15px;
    padding-right: 0.9375rem;
  }
}

@media screen and (max-width: 767px) {
  .p-features__item:nth-child(even) .p-features__point {
    margin-left: auto;
    margin-top: 31px;
    margin-top: 1.9375rem;
  }
}

@media screen and (max-width: 767px) {
  .p-features__item:nth-child(3) .p-features__point {
    margin-top: 32px;
    margin-top: 2rem;
  }
}

.p-features__point-read {
  font-family: "GFS Didot", serif;
  font-size: max(26px, 10px);
  font-size: max(1.625rem, 10px);
  letter-spacing: 0.1em;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-features__point-read {
    font-size: max(18px, 10px);
    font-size: max(1.125rem, 10px);
  }
}
.p-features__point-read::after {
  background-color: #5f5a59;
  bottom: 7px;
  bottom: 0.4375rem;
  content: "";
  display: block;
  height: 1px;
  left: 82px;
  left: 5.125rem;
  position: absolute;
  width: 700px;
  width: 43.75rem;
}
@media (max-width: 1400px) {
  .p-features__point-read::after {
    width: 460px;
    width: 28.75rem;
  }
}
@media screen and (max-width: 767px) {
  .p-features__point-read::after {
    left: 53px;
    left: 3.3125rem;
    width: 246px;
    width: 15.375rem;
  }
}

@media screen and (max-width: 767px) {
  .p-features__item:nth-child(even) .p-features__point-read::after {
    left: 53px;
    left: 3.3125rem;
  }
}

@media screen and (max-width: 767px) {
  .p-features__item:nth-child(3) .p-features__point-read::after {
    left: 53px;
    left: 3.3125rem;
  }
}

.p-features__point-text {
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: -0.07em;
  margin-top: 19px;
  margin-top: 1.1875rem;
}
@media screen and (max-width: 767px) {
  .p-features__point-text {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    line-height: 2.58;
    margin-top: 13px;
    margin-top: 0.8125rem;
    max-width: 315px;
    max-width: 19.6875rem;
  }
}

@media screen and (max-width: 767px) {
  .p-features__item:nth-child(even) .p-features__point-text {
    max-width: 300px;
    max-width: 18.75rem;
  }
}

.p-footer {
  background-color: #5f5a59;
  color: #fff;
  padding-bottom: 49px;
  padding-bottom: 3.0625rem;
  padding-top: 95px;
  padding-top: 5.9375rem;
  position: relative;
}
@media (max-width: 1400px) {
  .p-footer {
    padding-top: 132px;
    padding-top: 8.25rem;
  }
}
@media screen and (max-width: 767px) {
  .p-footer {
    padding-bottom: 15px;
    padding-bottom: 0.9375rem;
    padding-top: 99px;
    padding-top: 6.1875rem;
  }
}

.p-footer__inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 1920px;
  max-width: 120rem;
}

.p-footer__container {
  display: flex;
  gap: 817px;
  gap: 51.0625rem;
  gap: clamp(615.008px, 71.152px + 38.846vw, 817.008px);
  gap: clamp(38.438rem, 4.447rem + 38.846vw, 51.063rem);
  overflow-x: clip;
}
@media (max-width: 1400px) {
  .p-footer__container {
    gap: 615px;
    gap: 38.4375rem;
  }
}
@media screen and (max-width: 767px) {
  .p-footer__container {
    gap: 42px;
    gap: 2.625rem;
  }
}

.p-footer__head {
  display: flex;
  margin-left: calc(50% - 57.1875rem);
}
@media (max-width: 1920px) {
  .p-footer__head {
    margin-left: 45px;
    margin-left: 2.8125rem;
  }
}
@media screen and (max-width: 767px) {
  .p-footer__head {
    margin-left: 15px;
    margin-left: 0.9375rem;
  }
}

.p-footer__head-text {
  font-family: "GFS Didot", serif;
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  font-weight: 400;
  letter-spacing: 0.12em;
  position: relative;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 767px) {
  .p-footer__head-text {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
  }
}
.p-footer__head-text::after {
  background-color: #fff;
  content: "";
  height: 531px;
  height: 33.1875rem;
  left: 8px;
  left: 0.5rem;
  position: absolute;
  top: 83px;
  top: 5.1875rem;
  width: 1px;
}
@media (max-width: 1400px) {
  .p-footer__head-text::after {
    top: 82px;
    top: 5.125rem;
  }
}
@media screen and (max-width: 767px) {
  .p-footer__head-text::after {
    height: 285px;
    height: 17.8125rem;
    left: 6px;
    left: 0.375rem;
    top: 44px;
    top: 2.75rem;
  }
}

.p-footer__content {
  margin-top: 58px;
  margin-top: 3.625rem;
  overflow-x: clip;
  width: 1078px;
  width: 67.375rem;
}
@media screen and (max-width: 767px) {
  .p-footer__content {
    margin-top: 43px;
    margin-top: 2.6875rem;
  }
}

.p-footer__text-box {
  border: 1px solid #fff;
  margin-left: calc(50% - 31.5625rem);
  padding: 172px 0 47px 46px;
  padding: 10.75rem 0 2.9375rem 2.875rem;
}
@media (max-width: 1920px) {
  .p-footer__text-box {
    border-right: none;
    margin-left: 0;
  }
}
@media screen and (max-width: 767px) {
  .p-footer__text-box {
    padding: 90px 0 20px 32px;
    padding: 5.625rem 0 1.25rem 2rem;
  }
}

.p-footer__text {
  font-size: max(18px, 10px);
  font-size: max(1.125rem, 10px);
  letter-spacing: 0.2em;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .p-footer__text {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
  }
}
@media (max-width: 374px) {
  .p-footer__text {
    letter-spacing: 0.1em;
  }
}

.p-footer__link-wrap {
  margin-top: 28px;
  margin-top: 1.75rem;
}
@media screen and (max-width: 767px) {
  .p-footer__link-wrap {
    margin-top: 13px;
    margin-top: 0.8125rem;
  }
}

.p-footer__link {
  display: inline-block;
  font-family: "GFS Didot", serif;
  font-size: max(25px, 10px);
  font-size: max(1.5625rem, 10px);
  letter-spacing: 0.14em;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-footer__link {
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
  }
}
.p-footer__link::after {
  background: url(../images/common/arrow.svg) no-repeat center/contain;
  content: "";
  display: block;
  height: 31px;
  height: 1.9375rem;
  position: absolute;
  right: -94px;
  right: -5.875rem;
  top: calc(0.5lh - 0.96875rem);
  width: 29px;
  width: 1.8125rem;
}
@media screen and (max-width: 767px) {
  .p-footer__link::after {
    height: 16px;
    height: 1rem;
    right: -41px;
    right: -2.5625rem;
    top: calc(0.5lh - 0.5rem);
    width: 15px;
    width: 0.9375rem;
  }
}

.p-footer__copyright {
  line-height: 1;
  margin-left: calc(50% + 16.125rem);
  margin-top: 140px;
  margin-top: 8.75rem;
}
@media (max-width: 1920px) {
  .p-footer__copyright {
    margin-left: 0;
    padding-right: 62px;
    padding-right: 3.875rem;
    padding-right: clamp(43.008px, -8.16px + 3.654vw, 62px);
    padding-right: clamp(2.688rem, -0.51rem + 3.654vw, 3.875rem);
    text-align: right;
  }
}
@media (max-width: 1400px) {
  .p-footer__copyright {
    padding-right: 43px;
    padding-right: 2.6875rem;
  }
}
@media screen and (max-width: 767px) {
  .p-footer__copyright {
    margin-top: 68px;
    margin-top: 4.25rem;
    padding-right: 11px;
    padding-right: 0.6875rem;
  }
}
.p-footer__copyright small {
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
}
@media screen and (max-width: 767px) {
  .p-footer__copyright small {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
  }
}

.p-hamburger {
  display: none;
}
@media screen and (max-width: 767px) {
  .p-hamburger {
    border: none;
    cursor: pointer;
    display: block;
    height: 50px;
    height: 3.125rem;
    margin: 0;
    outline: none;
    padding: 0;
    position: relative;
    position: absolute;
    right: 0;
    top: 0;
    transition: 0.3s;
    width: 50px;
    width: 3.125rem;
    z-index: 60;
  }
}

@media screen and (max-width: 767px) {
  .p-header.is-scrolled .p-hamburger {
    top: -7px;
    top: -0.4375rem;
  }
}

.p-hamburger span {
  background-color: #afaead;
  border-radius: 100vmax;
  display: block;
  height: 1px;
  position: relative;
  transform: translateX(-50%);
  transition: 0.5s;
}

.p-hamburger span:nth-of-type(1) {
  left: 27%;
  top: -6px;
  top: -0.375rem;
  width: 33px;
  width: 2.0625rem;
}

.p-hamburger span:nth-of-type(2) {
  left: 38%;
  top: 2px;
  top: 0.125rem;
  width: 22.5px;
  width: 1.40625rem;
}

.p-hamburger span:nth-of-type(3) {
  left: 49%;
  top: 10px;
  top: 0.625rem;
  width: 11px;
  width: 0.6875rem;
}

.p-hamburger.is-open span:nth-of-type(1) {
  left: 29%;
  top: 2px;
  top: 0.125rem;
  transform: translateX(-50%) rotate(29deg);
  width: 39px;
  width: 2.4375rem;
}

.p-hamburger.is-open span:nth-of-type(2) {
  opacity: 0;
}

.p-hamburger.is-open span:nth-of-type(3) {
  left: 28%;
  top: 0px;
  top: 0rem;
  transform: translateX(-50%) rotate(-28deg);
  width: 39px;
  width: 2.4375rem;
}

.p-header {
  background-color: #fff;
  height: 123px;
  height: 7.6875rem;
  position: fixed;
  top: 0;
  transition: height 0.3s ease-out;
  width: 100%;
  z-index: 11;
}
@media screen and (max-width: 767px) {
  .p-header {
    height: 54px;
    height: 3.375rem;
  }
}

.p-header.is-scrolled {
  height: 80px;
  height: 5rem;
}
@media screen and (max-width: 767px) {
  .p-header.is-scrolled {
    height: 40px;
    height: 2.5rem;
  }
}

.p-header__inner {
  align-items: center;
  display: flex;
  height: inherit;
  padding-left: 51px;
  padding-left: 3.1875rem;
  padding-right: 42px;
  padding-right: 2.625rem;
}
@media (max-width: 1400px) {
  .p-header__inner {
    padding-right: 9px;
    padding-right: 0.5625rem;
  }
}
@media screen and (max-width: 767px) {
  .p-header__inner {
    padding-left: 20px;
    padding-left: 1.25rem;
  }
}

.p-header__logo {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.p-header__logo-link {
  display: block;
  max-width: 169px;
  max-width: 10.5625rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-header__logo-link {
    max-width: 84px;
    max-width: 5.25rem;
  }
}
.p-header__logo-link img {
  -o-object-fit: cover;
  aspect-ratio: 169/38;
  height: auto;
     object-fit: cover;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-header__logo-link img {
    aspect-ratio: 84/19;
  }
}

.p-header__nav {
  height: inherit;
  margin-left: auto;
}
@media screen and (max-width: 767px) {
  .p-header__nav {
    display: none;
  }
}

.p-header__items {
  align-items: center;
  display: flex;
  height: inherit;
}

.p-header__item {
  align-items: center;
  display: flex;
  height: inherit;
}

.p-header__link {
  color: #000;
  display: inline-block;
  font-family: "GFS Didot", serif;
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  letter-spacing: 0.07em;
  padding-left: 26px;
  padding-left: 1.625rem;
  padding-right: 26px;
  padding-right: 1.625rem;
  transition: color 0.3s ease-out;
}

@media (any-hover: hover) {
  .p-header__item:hover .p-header__link {
    color: #cd6061;
  }
}
.p-lineup {
  overflow-x: clip;
  position: relative;
}

.p-lineup__head {
  position: absolute;
  right: calc(50% - 57.6875rem);
  top: 218px;
  top: 13.625rem;
}
@media (max-width: 1920px) {
  .p-lineup__head {
    right: 37px;
    right: 2.3125rem;
  }
}
@media (max-width: 1400px) {
  .p-lineup__head {
    right: 38px;
    right: 2.375rem;
    top: 141px;
    top: 8.8125rem;
  }
}
@media screen and (max-width: 767px) {
  .p-lineup__head {
    right: 12px;
    right: 0.75rem;
    top: 60px;
    top: 3.75rem;
  }
}

.p-lineup__head-text {
  font-family: "GFS Didot", serif;
  font-size: max(16px, 10px);
  font-size: max(1rem, 10px);
  font-weight: 400;
  letter-spacing: 0.12em;
  position: relative;
  writing-mode: vertical-rl;
}
@media screen and (max-width: 767px) {
  .p-lineup__head-text {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
    letter-spacing: 0.08em;
  }
}
.p-lineup__head-text::after {
  background-color: #5f5a59;
  content: "";
  height: 720px;
  height: 45rem;
  left: 7px;
  left: 0.4375rem;
  position: absolute;
  top: 78px;
  top: 4.875rem;
  width: 1px;
}
@media (max-width: 1400px) {
  .p-lineup__head-text::after {
    height: 779px;
    height: 48.6875rem;
  }
}
@media screen and (max-width: 767px) {
  .p-lineup__head-text::after {
    height: 210px;
    height: 13.125rem;
    left: 6px;
    left: 0.375rem;
    top: 44px;
    top: 2.75rem;
  }
}
@media (max-width: 374px) {
  .p-lineup__head-text::after {
    top: 14vw;
  }
}

.p-mv {
  height: 100vh;
  height: calc(100vh - 7.5rem);
  min-height: 750px;
  min-height: 46.875rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-mv {
    height: calc(100vh - 3.375rem);
    height: calc(100svh - 3.375rem);
    min-height: 300px;
    min-height: 18.75rem;
  }
}

.p-mv__inner {
  height: inherit;
  position: relative;
}

.p-mv__swiper-container {
  height: inherit;
  position: relative;
}

.p-mv__swiper {
  height: inherit;
  position: relative;
}

.p-mv__items {
  height: inherit;
  position: relative;
}

.p-mv__item {
  cursor: pointer;
  height: inherit;
  margin-right: 102px;
  margin-right: 6.375rem;
  padding-bottom: 50px;
  padding-bottom: 3.125rem;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-mv__item {
    margin-right: 0;
  }
}

.p-mv__main-item {
  height: inherit;
}

.p-mv__main-item > .swiper-wrapper {
  height: inherit;
}

.p-mv__img {
  display: block;
  height: inherit;
  position: relative;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-mv__img {
    width: 100%;
  }
}
.p-mv__img picture {
  display: block;
  height: inherit;
  position: relative;
}
.p-mv__img img {
  -o-object-fit: cover;
  aspect-ratio: 1819/849;
  height: calc(100% - 5rem);
     object-fit: cover;
  width: 100%;
}
@media (max-width: 1400px) {
  .p-mv__img img {
    aspect-ratio: 1300/849;
  }
}
@media screen and (max-width: 767px) {
  .p-mv__img img {
    aspect-ratio: 375/456;
    height: calc(100% - 2.5rem);
  }
}

.p-mv__sub-item {
  width: 465px !important;
  width: 29.0625rem !important;
}

.p-mv__sub-item {
  bottom: 20px;
  bottom: 1.25rem;
  position: absolute;
  right: -1px;
}
@media screen and (max-width: 767px) {
  .p-mv__sub-item {
    bottom: 7px;
    bottom: 0.4375rem;
    max-width: 200px;
    max-width: 12.5rem;
  }
}

.p-mv__detail {
  width: 465px !important;
  width: 29.0625rem !important;
}

.p-mv__detail {
  background-color: #fff;
  display: flex;
  gap: 26px;
  gap: 1.625rem;
  height: 145px;
  height: 9.0625rem;
  padding: 25px 20px 30px 25px;
  padding: 1.5625rem 1.25rem 1.875rem 1.5625rem;
}
@media screen and (max-width: 767px) {
  .p-mv__detail {
    gap: 12px;
    gap: 0.75rem;
    height: auto;
    height: initial;
    max-width: 200px;
    max-width: 12.5rem;
    padding: 12px 11px 12px 11px;
    padding: 0.75rem 0.6875rem 0.75rem 0.6875rem;
  }
}

.p-mv__thumb {
  display: block;
  max-width: 97px;
  max-width: 6.0625rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-mv__thumb {
    max-width: 38px;
    max-width: 2.375rem;
  }
}
.p-mv__thumb img {
  -o-object-fit: cover;
  aspect-ratio: 1/1;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-mv__info {
  margin-top: 22px;
  margin-top: 1.375rem;
}
@media screen and (max-width: 767px) {
  .p-mv__info {
    margin-top: 0;
  }
}

.p-mv__floor-name-en {
  font-family: "GFS Didot", serif;
  font-size: max(24px, 10px);
  font-size: max(1.5rem, 10px);
  letter-spacing: 0.08em;
}
@media screen and (max-width: 767px) {
  .p-mv__floor-name-en {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    letter-spacing: 0.01em;
    transform: translateY(-0.1875rem);
  }
}

.p-mv__floor-name-ja {
  font-size: max(10px, 10px);
  font-size: max(0.625rem, 10px);
  letter-spacing: 0.15em;
}
@media screen and (max-width: 767px) {
  .p-mv__floor-name-ja {
    letter-spacing: -0.1em;
  }
}
@media (max-width: 374px) {
  .p-mv__floor-name-ja {
    letter-spacing: -0.16em;
    letter-spacing: -0.22em;
  }
}

.p-mv__floor-part-number {
  font-size: max(12px, 10px);
  font-size: max(0.75rem, 10px);
  letter-spacing: 0.13em;
  margin-top: 6px;
  margin-top: 0.375rem;
}
@media screen and (max-width: 767px) {
  .p-mv__floor-part-number {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
    margin-top: 0;
  }
}

.p-mv__copy {
  color: #fff;
  left: 75px;
  left: 4.6875rem;
  left: 4vw;
  position: absolute;
  top: 288px;
  top: 18rem;
  top: 27vh;
  z-index: 1;
}
@media screen and (max-width: 767px) {
  .p-mv__copy {
    left: 10px;
    left: 0.625rem;
    top: 29vh;
  }
}

.p-mv__catch {
  font-size: 0.8333333333vw;
  font-weight: 500;
  letter-spacing: 0.24em;
}
@media (max-width: 1920px) {
  .p-mv__catch {
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
  }
}
@media screen and (max-width: 767px) {
  .p-mv__catch {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
    letter-spacing: 0.17em;
  }
}

.p-mv__title {
  font-family: "GFS Didot", serif;
  font-size: 1.4583333333vw;
  letter-spacing: 0.06em;
  line-height: 1.14;
  margin-top: 15px;
  margin-top: 0.9375rem;
}
@media (max-width: 1920px) {
  .p-mv__title {
    font-size: max(28px, 10px);
    font-size: max(1.75rem, 10px);
  }
}
@media screen and (max-width: 767px) {
  .p-mv__title {
    font-size: max(16px, 10px);
    font-size: max(1rem, 10px);
    line-height: 1.38;
    margin-top: 4px;
    margin-top: 0.25rem;
  }
}

.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction {
  bottom: 38px;
  bottom: 2.375rem;
  padding-left: 40px;
  padding-left: 2.5rem;
  top: auto;
  top: initial;
  width: -moz-fit-content;
  width: fit-content;
}
@media (max-width: 1000px) {
  .swiper-horizontal > .swiper-pagination-bullets,
  .swiper-pagination-bullets.swiper-pagination-horizontal,
  .swiper-pagination-custom,
  .swiper-pagination-fraction {
    bottom: 8px;
    bottom: 0.5rem;
    padding-bottom: 30px;
    padding-bottom: 1.875rem;
  }
}
@media screen and (max-width: 767px) {
  .swiper-horizontal > .swiper-pagination-bullets,
  .swiper-pagination-bullets.swiper-pagination-horizontal,
  .swiper-pagination-custom,
  .swiper-pagination-fraction {
    bottom: 16px;
    bottom: 1rem;
    padding-bottom: 0;
    padding-left: 4px;
    padding-left: 0.25rem;
  }
}

/* ページネーションの余白 */
.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
.swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
  margin-left: 11.5px;
  margin-left: 0.71875rem;
  margin-right: 11.5px;
  margin-right: 0.71875rem;
}
@media screen and (max-width: 767px) {
  .swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
  .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin-left: 4.75px;
    margin-left: 0.296875rem;
    margin-right: 4.75px;
    margin-right: 0.296875rem;
  }
}

/* ページネーションのサイズと色 */
.swiper-pagination-bullet {
  background-color: transparent;
  border: 1px solid #615a58;
  height: 16px;
  height: 1rem;
  opacity: 1;
  width: 16px;
  width: 1rem;
}
@media screen and (max-width: 767px) {
  .swiper-pagination-bullet {
    height: 10px;
    height: 0.625rem;
    width: 10px;
    width: 0.625rem;
  }
}

.swiper-pagination-bullet-active {
  position: relative;
}

.swiper-pagination-bullet-active::after {
  background-color: #615a58;
  border-radius: 100vmax;
  content: "";
  height: 9px;
  height: 0.5625rem;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 9px;
  width: 0.5625rem;
}
@media screen and (max-width: 767px) {
  .swiper-pagination-bullet-active::after {
    height: 6px;
    height: 0.375rem;
    width: 6px;
    width: 0.375rem;
  }
}

.p-prestige {
  background-color: #f6f6f5;
  padding-bottom: 349px;
  padding-bottom: 21.8125rem;
  padding-top: 97px;
  padding-top: 6.0625rem;
}
@media (max-width: 1400px) {
  .p-prestige {
    padding-bottom: 316px;
    padding-bottom: 19.75rem;
  }
}
@media screen and (max-width: 767px) {
  .p-prestige {
    padding-bottom: 126px;
    padding-bottom: 7.875rem;
    padding-top: 41px;
    padding-top: 2.5625rem;
  }
}

.p-prestige__inner {
  margin-left: auto;
  margin-right: auto;
  max-width: 1920px;
  max-width: 120rem;
}

.p-prestige__head {
  padding-right: 25px;
  padding-right: 1.5625rem;
}
@media screen and (max-width: 767px) {
  .p-prestige__head {
    padding-right: 0;
  }
}

.p-prestige__read {
  display: flex;
  margin-left: clamp(70px, -131.92px + 14.423vw, 145.008px);
  margin-left: clamp(4.375rem, -8.245rem + 14.423vw, 9.063rem);
}
@media (max-width: 1400px) {
  .p-prestige__read {
    margin-left: 70px;
    margin-left: 4.375rem;
  }
}
@media screen and (max-width: 767px) {
  .p-prestige__read {
    flex-direction: column;
    margin-left: 40px;
    margin-left: 2.5rem;
  }
}
@media (max-width: 374px) {
  .p-prestige__read {
    margin-left: clamp(5.008px, -198.64px + 63.636vw, 40px);
  }
}

.p-prestige__title .c-title__ja {
  letter-spacing: 0.07em;
}

.p-prestige__read-description {
  margin-left: clamp(56px, -571.312px + 44.808vw, 289.008px);
  margin-left: clamp(3.5rem, -35.707rem + 44.808vw, 18.063rem);
  margin-top: 42px;
  margin-top: 2.625rem;
}
@media (max-width: 1400px) {
  .p-prestige__read-description {
    margin-left: 56px;
    margin-left: 3.5rem;
  }
}
@media screen and (max-width: 767px) {
  .p-prestige__read-description {
    margin-left: 0;
    margin-top: 26px;
    margin-top: 1.625rem;
  }
}

.p-prestige__read-meta {
  margin-left: clamp(24px, -24.464px + 3.462vw, 42px);
  margin-left: clamp(1.5rem, -1.529rem + 3.462vw, 2.625rem);
  margin-top: 18px;
  margin-top: 1.125rem;
}
@media (max-width: 1400px) {
  .p-prestige__read-meta {
    margin-left: 24px;
    margin-left: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .p-prestige__read-meta {
    margin-left: 0;
    margin-top: 34px;
    margin-top: 2.125rem;
  }
}

.p-prestige__head-img {
  display: block;
  margin-top: 81px;
  margin-top: 5.0625rem;
  max-width: clamp(1241.008px, 301.392px + 67.115vw, 1590px);
  max-width: clamp(77.563rem, 18.837rem + 67.115vw, 99.375rem);
  position: relative;
  width: 100%;
}
@media (max-width: 1400px) {
  .p-prestige__head-img {
    max-width: 1241px;
    max-width: 77.5625rem;
  }
}
@media screen and (max-width: 767px) {
  .p-prestige__head-img {
    margin-top: 32px;
    margin-top: 2rem;
    max-width: 375px;
    max-width: 23.4375rem;
  }
}
.p-prestige__head-img img {
  -o-object-fit: cover;
  aspect-ratio: 1590/580;
  height: auto;
     object-fit: cover;
  width: 100%;
}
@media (max-width: 1400px) {
  .p-prestige__head-img img {
    aspect-ratio: 1241/580;
  }
}
@media screen and (max-width: 767px) {
  .p-prestige__head-img img {
    aspect-ratio: 375/320;
  }
}

.p-prestige__info {
  background-color: #f6f6f5;
  bottom: -61px;
  bottom: -3.8125rem;
  max-width: 570px;
  max-width: 35.625rem;
  padding-bottom: 20px;
  padding-bottom: 1.25rem;
  padding-left: 40px;
  padding-left: 2.5rem;
  padding-top: 36px;
  padding-top: 2.25rem;
  position: absolute;
  right: -1px;
}
@media (max-width: 1400px) {
  .p-prestige__info {
    bottom: -88px;
    bottom: -5.5rem;
    max-width: 476px;
    max-width: 29.75rem;
  }
}
@media screen and (max-width: 767px) {
  .p-prestige__info {
    bottom: auto;
    bottom: initial;
    margin-left: auto;
    margin-top: -31px;
    margin-top: -1.9375rem;
    max-width: 302px;
    max-width: 18.875rem;
    padding-left: 27px;
    padding-left: 1.6875rem;
    padding-right: 10px;
    padding-right: 0.625rem;
    padding-top: 16px;
    padding-top: 1rem;
    position: relative;
    right: auto;
    right: initial;
  }
}

.p-prestige__info-heading {
  font-size: max(12px, 10px);
  font-size: max(0.75rem, 10px);
  font-weight: 500;
  letter-spacing: 0.2em;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .p-prestige__info-heading {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
  }
}

.p-prestige__info-read {
  font-size: max(21px, 10px);
  font-size: max(1.3125rem, 10px);
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1;
  margin-top: 4px;
  margin-top: 0.25rem;
}
@media screen and (max-width: 767px) {
  .p-prestige__info-read {
    font-size: max(15px, 10px);
    font-size: max(0.9375rem, 10px);
    margin-top: 2px;
    margin-top: 0.125rem;
  }
}

.p-prestige__info-description {
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: -0.06em;
  line-height: 2;
  margin-top: 8px;
  margin-top: 0.5rem;
}
@media screen and (max-width: 767px) {
  .p-prestige__info-description {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
    line-height: 2.4;
    margin-top: 13px;
    margin-top: 0.8125rem;
  }
}
@media (max-width: 374px) {
  .p-prestige__info-description {
    letter-spacing: -0.06em;
  }
}

.p-prestige__swiper-container {
  position: relative;
}

.p-prestige__swiper {
  clip-path: inset(0% -50vw 0% 0%);
  margin-left: 420px;
  margin-left: 26.25rem;
  margin-top: 212px;
  margin-top: 13.25rem;
  overflow: visible;
  overflow: initial;
}
@media (max-width: 1920px) {
  .p-prestige__swiper {
    margin-left: clamp(162px, -532.608px + 49.615vw, 420px);
    margin-left: clamp(10.125rem, -33.288rem + 49.615vw, 26.25rem);
  }
}
@media (max-width: 1400px) {
  .p-prestige__swiper {
    margin-left: 137px;
    margin-left: 8.5625rem;
  }
}
@media screen and (max-width: 767px) {
  .p-prestige__swiper {
    margin-left: 57px;
    margin-left: 3.5625rem;
    margin-top: 42px;
    margin-top: 2.625rem;
  }
}

.p-prestige__item {
  align-items: flex-end;
  display: flex;
  gap: 35px;
  gap: 2.1875rem;
  width: 1290px;
  width: 80.625rem;
}
@media (max-width: 1920px) {
  .p-prestige__item {
    width: clamp(1183.008px, 894.928px + 20.577vw, 1290px);
    width: clamp(73.938rem, 55.933rem + 20.577vw, 80.625rem);
  }
}
@media (max-width: 1400px) {
  .p-prestige__item {
    gap: 33px;
    gap: 2.0625rem;
    width: 1208px;
    width: 75.5rem;
  }
}
@media screen and (max-width: 767px) {
  .p-prestige__item {
    align-items: initial;
    flex-direction: column;
    gap: 26px;
    gap: 1.625rem;
    margin-right: 22.5px;
    margin-right: 1.40625rem;
    width: 278px;
    width: 17.375rem;
  }
}

.p-prestige__img {
  display: block;
  max-width: 717px;
  max-width: 44.8125rem;
  width: 100%;
}
@media (max-width: 1400px) {
  .p-prestige__img {
    max-width: 716px;
    max-width: 44.75rem;
  }
}
@media screen and (max-width: 767px) {
  .p-prestige__img {
    max-width: 278px;
    max-width: 17.375rem;
  }
}
.p-prestige__img img {
  -o-object-fit: cover;
  aspect-ratio: 717/419;
  height: auto;
     object-fit: cover;
  width: 100%;
}
@media (max-width: 1400px) {
  .p-prestige__img img {
    aspect-ratio: 716/418;
  }
}
@media screen and (max-width: 767px) {
  .p-prestige__img img {
    aspect-ratio: 278/162;
  }
}

.p-prestige__number {
  font-family: "GFS Didot", serif;
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .p-prestige__number {
    font-size: max(10px, 10px);
    font-size: max(0.625rem, 10px);
  }
}

.p-prestige__heading-en {
  font-family: "GFS Didot", serif;
  font-size: max(40px, 10px);
  font-size: max(2.5rem, 10px);
  letter-spacing: 0.1em;
  line-height: 1.28;
  margin-top: -5px;
  margin-top: -0.3125rem;
}
@media screen and (max-width: 767px) {
  .p-prestige__heading-en {
    font-size: max(19px, 10px);
    font-size: max(1.1875rem, 10px);
    margin-top: -3px;
    margin-top: -0.1875rem;
  }
}

.p-prestige__heading-ja {
  align-items: center;
  display: flex;
  font-size: max(10px, 10px);
  font-size: max(0.625rem, 10px);
  letter-spacing: -0.05em;
  margin-top: 2px;
  margin-top: 0.125rem;
  padding-right: 13px;
  padding-right: 0.8125rem;
}
@media screen and (max-width: 767px) {
  .p-prestige__heading-ja {
    margin-top: 0;
  }
}
.p-prestige__heading-ja::before {
  background-color: #5f5a59;
  content: "";
  flex-grow: 1;
  height: 1px;
  margin-right: 7px;
  margin-right: 0.4375rem;
}
@media screen and (max-width: 767px) {
  .p-prestige__heading-ja::before {
    flex-grow: 0.3;
    margin-right: 5px;
    margin-right: 0.3125rem;
  }
}

.p-prestige__description {
  font-size: max(14px, 10px);
  font-size: max(0.875rem, 10px);
  letter-spacing: 0.05em;
  margin-top: 35px;
  margin-top: 2.1875rem;
}
@media screen and (max-width: 767px) {
  .p-prestige__description {
    font-size: max(12px, 10px);
    font-size: max(0.75rem, 10px);
    margin-top: 16px;
    margin-top: 1rem;
  }
}

.p-prestige__detail {
  align-items: flex-end;
  display: flex;
  gap: 33px;
  gap: 2.0625rem;
  margin-top: 33px;
  margin-top: 2.0625rem;
}
@media screen and (max-width: 767px) {
  .p-prestige__detail {
    gap: 18px;
    gap: 1.125rem;
    margin-top: 29px;
    margin-top: 1.8125rem;
  }
}

.p-prestige__thumb {
  display: block;
  max-width: 128px;
  max-width: 8rem;
  width: 100%;
}
@media screen and (max-width: 767px) {
  .p-prestige__thumb {
    max-width: 64px;
    max-width: 4rem;
  }
}
.p-prestige__thumb img {
  -o-object-fit: cover;
  aspect-ratio: 1/1;
  height: auto;
     object-fit: cover;
  width: 100%;
}

.p-prestige__part-number-text {
  font-size: max(10px, 10px);
  font-size: max(0.625rem, 10px);
  margin-top: 4px;
  margin-top: 0.25rem;
}

.p-prestige__pagination.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
  left: auto;
  left: initial;
  right: 921px;
  right: 57.5625rem;
  top: 516px;
  top: 32.25rem;
}
@media (max-width: 1920px) {
  .p-prestige__pagination.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
    right: clamp(663.008px, -31.616px + 49.615vw, 921.008px);
    right: clamp(41.438rem, -1.976rem + 49.615vw, 57.563rem);
  }
}
@media (max-width: 1400px) {
  .p-prestige__pagination.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
    right: 663px;
    right: 41.4375rem;
  }
}
@media screen and (max-width: 767px) {
  .p-prestige__pagination.swiper-pagination.swiper-pagination-clickable.swiper-pagination-bullets.swiper-pagination-horizontal {
    right: 167px;
    right: 10.4375rem;
    top: 409px;
    top: 25.5625rem;
  }
}

@media screen and (max-width: 767px) {
  .p-prestige__pagination.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet,
  .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin-left: 4.75px;
    margin-left: 0.296875rem;
    margin-right: 4.75px;
    margin-right: 0.296875rem;
  }
}

@media screen and (max-width: 767px) {
  .p-prestige__pagination .swiper-pagination-bullet {
    height: 11px;
    height: 0.6875rem;
    width: 11px;
    width: 0.6875rem;
  }
}

@media screen and (max-width: 767px) {
  .p-prestige__pagination .swiper-pagination-bullet-active::after {
    height: 6.5px;
    height: 0.40625rem;
    width: 6.5px;
    width: 0.40625rem;
  }
}

.js-fadein {
  opacity: 0;
  transform: translateY(6.25rem);
  transition: all 0.5s ease-out;
}

.js-fadein.is-scrollin {
  opacity: 1;
  transform: translateY(0);
}

.u-inlineBlock {
  display: inline-block;
}

.u-pc {
  display: block;
}
@media screen and (max-width: 767px) {
  .u-pc {
    display: none;
  }
}

.u-sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .u-sp {
    display: block;
  }
}

.u-sp1000 {
  display: none;
}
@media (max-width: 1000px) {
  .u-sp1000 {
    display: block;
  }
}

.c-badge {
  align-items: center;
  display: flex;
  gap: 8px;
  gap: 0.5rem;
}

.c-badge__icon {
  height: 24px;
  height: 1.5rem;
  width: 24px;
  width: 1.5rem;
}

.c-badge__text {
  color: #333333;
  font-size: 14px;
  font-size: 0.875rem;
}

.p-hero {
  margin: 0 auto;
  max-width: 1200px;
  max-width: 75rem;
  padding: 0 16px;
  padding: 0 1rem;
  width: 100%;
}

.p-hero__container {
  grid-gap: 24px;
  display: grid;
  gap: 24px;
  gap: 1.5rem;
  grid-template-columns: repeat(3, 1fr);
  text-align: left;
}
@media screen and (max-width: 767px) {
  .p-hero__container {
    grid-template-columns: 1fr;
  }
}

.p-hero__heading {
  display: flex;
  flex-direction: column;
}

.p-hero__title {
  color: #000000;
  font-size: 40px;
  font-size: 2.5rem;
  font-weight: bold;
  line-height: 1.2;
}
@media screen and (max-width: 767px) {
  .p-hero__title {
    font-size: 28.8px;
    font-size: 1.8rem;
  }
}

.p-hero__subtitle {
  color: #666666;
  font-size: 16px;
  font-size: 1rem;
  margin-top: 8px;
  margin-top: 0.5rem;
}
@media screen and (max-width: 767px) {
  .p-hero__subtitle {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

.p-hero__description {
  color: #333333;
  font-size: 16px;
  font-size: 1rem;
  line-height: 1.6;
}
@media screen and (max-width: 767px) {
  .p-hero__description {
    font-size: 14px;
    font-size: 0.875rem;
  }
}

.p-hero__meta {
  align-items: center;
  display: flex;
  gap: 16px;
  gap: 1rem;
}

.p-living-space {
  background-color: #f5f5f5;
  padding: 60px 0;
  padding: 3.75rem 0;
  width: 100%;
}

.p-living-space__container {
  margin: 0 auto;
  max-width: 1200px;
  max-width: 75rem;
  padding: 0 15.008px;
  padding: 0 0.938rem;
}

.p-living-space__furniture {
  grid-gap: 40px;
  align-items: center;
  display: grid;
  gap: 40px;
  gap: 2.5rem;
  grid-template-columns: 1fr;
}
@media screen and (max-width: 767px) {
  .p-living-space__furniture {
    gap: 20px;
    grid-template-columns: 1fr;
  }
}

.p-living-space__sofa-wrapper {
  position: relative;
}

.p-living-space__details {
  background-color: rgba(255, 255, 255, 0.9);
  border-radius: 0.5rem;
  bottom: -16px;
  bottom: -1rem;
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
  padding: 16px;
  padding: 1rem;
  position: absolute;
  right: -16px;
  right: -1rem;
  width: 40%;
}
@media screen and (max-width: 767px) {
  .p-living-space__details {
    margin-top: 16px;
    margin-top: 1rem;
    position: static;
    width: 60%;
  }
}

.p-living-space__title {
  color: #333333;
  font-size: 32px;
  font-size: 2rem;
  font-weight: 600;
  margin-bottom: 16px;
  margin-bottom: 1rem;
}
@media screen and (max-width: 767px) {
  .p-living-space__title {
    font-size: 24px;
    font-size: 1.5rem;
  }
}

.p-living-space__description {
  color: #333333;
  line-height: 1.6;
  max-width: 800px;
  max-width: 50rem;
}
@media screen and (max-width: 767px) {
  .p-living-space__description {
    font-size: 14.4px;
    font-size: 0.9rem;
  }
}
/*# sourceMappingURL=style.css.map */
