:root {
  --index_font_17: clamp(0.75rem, 0.626rem + 0.529vw, 1.063rem);
  --index_font_18: clamp(0.875rem, 0.776rem + 0.423vw, 1.125rem);
  --index_font_20: clamp(0.75rem, 0.552rem + 0.847vw, 1.25rem);
  --index_font_24: clamp(1.063rem, 0.889rem + 0.741vw, 1.5rem);
  --index_font_40: clamp(1.5rem, 1.103rem + 1.693vw, 2.5rem);
  --margin_10: clamp(0.313rem, 0.188rem + 0.529vw, 0.625rem);
  --margin_100: clamp(3.125rem, 1.885rem + 5.291vw, 6.25rem);
  --margin_120: clamp(3.75rem, 2.262rem + 6.349vw, 7.5rem);
  --margin_130: clamp(3.75rem, 2.014rem + 7.407vw, 8.125rem);
  --margin_150: clamp(3.125rem, 0.645rem + 10.582vw, 9.375rem);
  --margin_170: clamp(5rem, 2.768rem + 9.524vw, 10.625rem);
  --margin_190: clamp(5rem, 2.272rem + 11.64vw, 11.875rem);
  --margin_220: clamp(7.5rem, 5.020rem + 10.582vw, 13.75rem);
}

html {
  overscroll-behavior: none;
}

header .topLogo {
  transition: visibility 0.35s ease, opacity 0.35s ease;
}
header .topLogo.hide {
  visibility: hidden;
  opacity: 0;
}

main {
  width: 100%;
}
main section {
  width: 100%;
}
main .fvArea {
  position: relative;
  width: 100%;
  height: 100vh;
  z-index: 0;
}
main .fvArea .backVideo,
main .fvArea .backImg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
}
main .fvArea .backVideo video,
main .fvArea .backVideo img,
main .fvArea .backImg video,
main .fvArea .backImg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  transition: visibility 0.6s ease, opacity 0.6s ease;
}
main .fvArea .backVideo img,
main .fvArea .backImg img {
  opacity: 0;
  visibility: hidden;
}
@media (min-width: 771px) {
  main .fvArea .backVideo .video-sp,
  main .fvArea .backImg .video-sp {
    display: none;
  }
  main .fvArea .backVideo .video-pc,
  main .fvArea .backImg .video-pc {
    display: block;
  }
}
@media (max-width: 770px) {
  main .fvArea .backVideo .video-pc,
  main .fvArea .backImg .video-pc {
    display: none;
  }
  main .fvArea .backVideo .video-sp,
  main .fvArea .backImg .video-sp {
    display: block;
  }
}
main .fvArea .backImg {
  z-index: -1;
}
main .fvArea .infoWraper {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  background: #000;
  z-index: 1;
}
main .fvArea .infoWraper #infoSlider {
  font-size: 13px;
  line-height: 1.2;
  max-width: 1320px;
  margin: 0 auto;
  height: 65px;
  width: 93%;
}
@media screen and (max-width: 770px) {
  main .fvArea .infoWraper #infoSlider {
    width: 100%;
    padding-left: 20px;
  }
}
main .fvArea .infoWraper #infoSlider ul li {
  display: flex;
  padding: 20px 0px;
}
main .fvArea .infoWraper #infoSlider ul li a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0;
}
main .fvArea .infoWraper #infoSlider ul li a span {
  color: #fff;
  font-size: var(--index_font_17);
}
main .fvArea .infoWraper #infoSlider .swiper-slide {
  padding: 0;
  margin: 0;
  line-height: 1.2;
}
main .fvArea .logoBox {
  position: absolute;
  top: calc(50% - 65px);
  left: 50%;
  transform: translateX(-50%);
}
main .fvArea .logoBox img {
  width: clamp(180px, 13.5vw, 300px);
  height: auto;
}
@media (max-width: 770px) {
  main .fvArea .logoBox img {
    width: clamp(100px, 38.46vw, 180px);
  }
}
main .everlovingArea {
  background-color: #ffffff;
}
main .everlovingArea .everlovingContainerArea {
  width: 93%;
  max-width: 1440px;
  margin: 0 auto;
  padding-bottom: var(--margin_220);
}
main .everlovingArea .everlovingContainerArea .titleArea {
  max-width: 1320px;
  margin: 0 auto;
  padding-top: var(--margin_120);
}
main .everlovingArea .everlovingContainerArea .titleArea h1 {
  font-size: var(--index_font_40);
  line-height: 1.2;
}
main .everlovingArea .everlovingContainerArea .titleArea h1 span {
  display: block;
  font-size: var(--index_font_20);
  margin-top: var(--margin_10);
  letter-spacing: 0.13em;
}
main .everlovingArea .everlovingContainerArea .mainArea {
  display: grid;
  grid-template-columns: repeat(14, 1fr);
}
main .everlovingArea .everlovingContainerArea .mainArea p {
  font-size: var(--index_font_18);
  line-height: 2.3;
}
main .everlovingArea .everlovingContainerArea .mainArea .firstText {
  grid-column: 3/9;
  grid-row: 1;
  margin-top: var(--margin_150);
}
main .everlovingArea .everlovingContainerArea .mainArea .secondText {
  grid-column: 7/12;
  grid-row: 2;
  display: flex;
  align-items: center;
  margin-top: 70px;
}
main .everlovingArea .everlovingContainerArea .mainArea .thirdText {
  grid-column: 3/9;
  grid-row: 3;
  margin-top: 120px;
}
main .everlovingArea .everlovingContainerArea .mainArea .imageArea {
  width: 100%;
  position: relative;
  align-self: self-start;
}
main .everlovingArea .everlovingContainerArea .mainArea .imageArea::before {
  content: "";
  width: 100%;
  display: block;
}
main .everlovingArea .everlovingContainerArea .mainArea .imageArea.first {
  grid-column: 9/13;
  grid-row: 1;
  margin-top: 70px;
  align-self: self-start;
}
main .everlovingArea .everlovingContainerArea .mainArea .imageArea.first::before {
  padding-top: 59.89%;
}
main .everlovingArea .everlovingContainerArea .mainArea .imageArea.second {
  grid-column: 1/6;
  grid-row: 2;
  margin-top: var(--margin_100);
}
main .everlovingArea .everlovingContainerArea .mainArea .imageArea.second::before {
  padding-top: 61.4%;
}
main .everlovingArea .everlovingContainerArea .mainArea .imageArea.third {
  grid-column: 12/15;
  grid-row: 2;
  margin-top: -20px;
}
main .everlovingArea .everlovingContainerArea .mainArea .imageArea.third::before {
  padding-top: 138.7%;
}
main .everlovingArea .everlovingContainerArea .mainArea .imageArea.fourth {
  grid-column: 8/10;
  grid-row: 3;
  margin-top: 70px;
}
main .everlovingArea .everlovingContainerArea .mainArea .imageArea.fourth::before {
  padding-top: 143.75%;
}
main .everlovingArea .everlovingContainerArea .mainArea .imageArea img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 770px) {
  main .everlovingArea .everlovingContainerArea {
    width: 100%;
  }
  main .everlovingArea .everlovingContainerArea .titleArea {
    margin-left: 20px;
  }
  main .everlovingArea .everlovingContainerArea .mainArea p {
    line-height: 2;
  }
  main .everlovingArea .everlovingContainerArea .mainArea .firstText {
    grid-column: 1/14;
    grid-row: 2;
    margin-left: 20px;
  }
  main .everlovingArea .everlovingContainerArea .mainArea .secondText {
    grid-column: 1/10;
    grid-row: 4;
    margin-left: 20px;
    margin-top: 100px;
  }
  main .everlovingArea .everlovingContainerArea .mainArea .thirdText {
    grid-column: 4/15;
    grid-row: 6;
    margin-top: 50px;
  }
  main .everlovingArea .everlovingContainerArea .mainArea .imageArea.first {
    grid-column: 5/14;
    grid-row: 1;
  }
  main .everlovingArea .everlovingContainerArea .mainArea .imageArea.second {
    grid-column: 1/12;
    grid-row: 3;
  }
  main .everlovingArea .everlovingContainerArea .mainArea .imageArea.third {
    grid-column: 10/15;
    grid-row: 4;
    margin-top: 30px;
  }
  main .everlovingArea .everlovingContainerArea .mainArea .imageArea.fourth {
    grid-column: 4/10;
    grid-row: 5;
  }
}
main .uniqueArea {
  background-color: #ffffff;
}
main .uniqueArea .uniqueContainerArea {
  max-width: 1320px;
  width: 93%;
  margin: 0 auto;
  padding-bottom: var(--margin_170);
}
main .uniqueArea .uniqueContainerArea .titleArea {
  text-align: center;
  display: flex;
  flex-direction: column;
  line-height: 1;
  gap: clamp(0.563rem, 0.488rem + 0.317vw, 0.75rem);
  margin-bottom: clamp(3.75rem, 2.758rem + 4.233vw, 6.25rem);
}
main .uniqueArea .uniqueContainerArea .titleArea h2 {
  font-size: clamp(1.625rem, 1.154rem + 2.011vw, 2.813rem);
}
main .uniqueArea .uniqueContainerArea .titleArea span {
  font-size: clamp(1.438rem, 1.041rem + 1.693vw, 2.438rem);
}
main .uniqueArea .uniqueContainerArea .titleArea p {
  font-size: clamp(0.75rem, 0.576rem + 0.741vw, 1.188rem);
  letter-spacing: 0.15em;
}
main .uniqueArea .uniqueContainerArea .mainContent .description {
  font-size: clamp(0.688rem, 0.588rem + 0.423vw, 0.938rem);
  display: block;
  margin-bottom: clamp(1.25rem, 0.506rem + 3.175vw, 3.125rem);
  letter-spacing: 0.13em;
}
main .uniqueArea .uniqueContainerArea .mainContent .subTitle {
  display: flex;
  align-items: center;
  gap: 20px;
}
main .uniqueArea .uniqueContainerArea .mainContent .subTitle h2 {
  font-size: clamp(1.375rem, 0.929rem + 1.905vw, 2.5rem);
}
main .uniqueArea .uniqueContainerArea .mainContent .subTitle .buttonArea {
  height: clamp(1.563rem, 1.314rem + 1.058vw, 2.188rem);
  background: #000000;
  border-radius: 50px;
}
main .uniqueArea .uniqueContainerArea .mainContent .subTitle .buttonArea a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(0.625rem, 0.501rem + 0.529vw, 0.938rem);
  height: 100%;
  padding: 0 clamp(1.25rem, 1.101rem + 0.635vw, 1.625rem);
}
main .uniqueArea .uniqueContainerArea .mainContent .subTitle .buttonArea img {
  width: clamp(14px, -3.769px + 2.308vw, 17px);
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  transition: transform 0.35s ease;
}
main .uniqueArea .uniqueContainerArea .mainContent .subTitle .buttonArea p {
  font-size: clamp(0.75rem, 0.626rem + 0.529vw, 1.063rem);
  color: #ffffff;
}
main .uniqueArea .uniqueContainerArea .mainContent .subTitle .buttonArea:hover img {
  transform: translateX(5px);
}
main .uniqueArea .uniqueContainerArea .mainContent .moreInfo {
  margin-bottom: clamp(1.563rem, 1.19rem + 1.587vw, 2.5rem);
}
main .uniqueArea .uniqueContainerArea .mainContent .moreInfo p {
  font-size: var(--index_font_18);
}
main .uniqueArea .uniqueContainerArea .container-fluid {
  width: 100%;
}
@media screen and (max-width: 770px) {
  main .uniqueArea .uniqueContainerArea .container-fluid {
    padding-right: 0;
    padding-left: 0;
    margin-right: auto;
    margin-left: auto;
  }
}
@media screen and (max-width: 770px) {
  main .uniqueArea .uniqueContainerArea .horiz-gallery-wrapper {
    display: flex;
    flex-wrap: nowrap;
    will-change: transform;
    position: relative;
  }
}
main .uniqueArea .uniqueContainerArea .imageListSticky {
  position: relative;
  overflow: hidden;
}
@media screen and (max-width: 770px) {
  main .uniqueArea .uniqueContainerArea .imageList {
    display: flex;
    flex-wrap: nowrap;
    will-change: transform;
    position: relative;
  }
}
main .uniqueArea .uniqueContainerArea .imageList li {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto;
  grid-auto-rows: auto;
  z-index: -1;
}
@media screen and (max-width: 770px) {
  main .uniqueArea .uniqueContainerArea .imageList li {
    width: 96.5vw;
    grid-template-columns: 100%;
    padding-right: 3.5vw;
    margin-right: 3.5vw;
    display: flex;
    flex-direction: column;
  }
}
main .uniqueArea .uniqueContainerArea .imageList li .img {
  width: 100%;
  position: relative;
  align-self: self-start;
}
main .uniqueArea .uniqueContainerArea .imageList li .img::before {
  content: "";
  width: 100%;
  padding-top: 100%;
  display: block;
}
main .uniqueArea .uniqueContainerArea .imageList li .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
}
main .uniqueArea .uniqueContainerArea .imageList li .textArea {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 770px) {
  main .uniqueArea .uniqueContainerArea .imageList li .textArea {
    padding: clamp(20px, 6.41vw, 25px) 0 0;
    align-self: self-start;
  }
}
main .uniqueArea .uniqueContainerArea .imageList li .textArea > div {
  width: 90%;
  max-width: 425px;
}
@media screen and (max-width: 770px) {
  main .uniqueArea .uniqueContainerArea .imageList li .textArea > div {
    width: 100%;
    max-width: none;
  }
}
main .uniqueArea .uniqueContainerArea .imageList li .textArea > div h5 {
  font-size: clamp(1.063rem, 0.79rem + 1.164vw, 1.75rem);
  line-height: 1;
  margin-bottom: clamp(0.938rem, 0.441rem + 2.116vw, 2.188rem);
}
main .uniqueArea .uniqueContainerArea .imageList li .textArea > div p {
  font-size: var(--index_font_18);
}
main .uniqueArea .uniqueContainerArea .imageList li:nth-child(even) .textArea {
  order: -1;
}
@media screen and (max-width: 770px) {
  main .uniqueArea .uniqueContainerArea .imageList li:nth-child(even) .textArea {
    order: 0;
  }
}
main .uniqueArea .uniqueContainerArea .coordinatorArea {
  max-width: 1190px;
}
main .uniqueArea .uniqueContainerArea .coordinatorArea h3 {
  font-size: clamp(1.188rem, 0.84rem + 1.481vw, 2.063rem);
  margin-top: clamp(70px, -70px + 18.182vw, 170px);
  margin-bottom: clamp(1.563rem, 0.446rem + 4.762vw, 4.375rem);
}
main .uniqueArea .uniqueContainerArea .coordinatorArea .mainImage img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
main .uniqueArea .uniqueContainerArea .coordinatorArea .mainImage .twoImage {
  display: flex;
  justify-content: end;
  gap: clamp(1.25rem, 0.754rem + 2.116vw, 2.5rem);
  align-items: end;
}
main .uniqueArea .uniqueContainerArea .coordinatorArea .mainImage .twoImage .leftImage {
  max-width: 570px;
  width: 100%;
}
main .uniqueArea .uniqueContainerArea .coordinatorArea .mainImage .twoImage .rightImage {
  width: 100%;
  max-width: 450px;
}
main .uniqueArea .uniqueContainerArea .coordinatorArea .mainImage .twoImage .rightImage .img {
  width: 100%;
  position: relative;
}
main .uniqueArea .uniqueContainerArea .coordinatorArea .mainImage .twoImage .rightImage .img::before {
  content: "";
  width: 100%;
  padding-top: 66.67%;
  display: block;
}
main .uniqueArea .uniqueContainerArea .coordinatorArea .mainImage .twoImage .rightImage .img img {
  position: absolute;
  top: 0;
  left: 0;
}
main .uniqueArea .uniqueContainerArea .coordinatorArea .mainImage .labelLast {
  text-align: right;
  font-size: clamp(0.688rem, 0.563rem + 0.529vw, 1rem);
}
@media screen and (max-width: 770px) {
  main .uniqueArea .uniqueContainerArea .coordinatorArea h3 {
    line-height: 1.33;
  }
  main .uniqueArea .uniqueContainerArea .coordinatorArea .mainImage .twoImage {
    flex-direction: column;
  }
  main .uniqueArea .uniqueContainerArea .coordinatorArea .mainImage .twoImage .rightImage {
    width: 270px;
    margin: 0 auto;
  }
  main .uniqueArea .uniqueContainerArea .coordinatorArea .mainImage .labelLast {
    width: 300px;
  }
}
main .roomphoto {
  position: relative;
  overflow: hidden;
}
main .reviewSlider {
  width: 100%;
  height: 100%;
  overflow: hidden;
  display: flex;
}
main .reviewSlider ul {
  width: auto;
  display: flex;
  overflow: hidden;
  flex-shrink: 0;
  margin: 0;
  padding: 0;
  animation: scroll-left 50s infinite linear 0.5s both;
}
main .reviewSlider ul li {
  flex: 0 0 auto;
  width: clamp(173px, 27vw, 333px);
  position: relative;
}
@media screen and (max-width: 770px) {
  main .reviewSlider ul li {
    width: clamp(173px, 48vw, 215px);
  }
}
main .reviewSlider ul li::after {
  content: "";
  display: block;
  width: 100%;
  padding-top: 75%;
}
main .reviewSlider ul li img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}
@keyframes scroll-left {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
main .roomphotoOverlay {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  color: #ffffff;
  pointer-events: none;
}
main .roomphotoOverlay::before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.5);
  z-index: -1;
}
main .roomphotoOverlay a {
  pointer-events: auto;
  cursor: pointer;
  color: inherit;
  text-decoration: none;
  display: inline-block;
}
main .roomphotoOverlay a:hover .roomphotoSub::after {
  opacity: 1;
}
main .roomphotoCatch {
  font-size: clamp(0.875rem, 0.602rem + 1.164vw, 1.563rem);
}
main .roomphotoCatch span {
  font-size: clamp(0.813rem, 0.564rem + 1.058vw, 1.438rem);
  letter-spacing: 0.15em;
}
main .roomphotoSub {
  font-size: clamp(1.063rem, 0.74rem + 1.376vw, 1.875rem);
}
main .roomphotoSub span {
  font-size: clamp(1rem, 0.702rem + 1.27vw, 1.75rem);
  letter-spacing: 0.15em;
}
main .roomphotoCatch,
main .roomphotoSub {
  position: relative;
  z-index: 1;
  margin: 0;
  color: #ffffff;
  letter-spacing: 0.12em;
}
main .roomphotoCatch span,
main .roomphotoSub span {
  color: #ffffff;
}
main .roomphotoSub {
  display: inline-block;
}
main .roomphotoSub::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 1px;
  background-color: #ffffff;
  opacity: 0;
  transition: opacity 0.3s ease;
}
main .rankingSofa {
  background-color: #EBEBEB;
  padding-top: var(--margin_130);
  padding-bottom: clamp(3.75rem, 2.014rem + 7.407vw, 8.125rem);
}
main .rankingSofa .containerArea {
  max-width: 1480px;
  margin: 0 auto;
  width: 93%;
}
main .rankingSofa .containerArea .rankTitle {
  text-align: center;
  margin-bottom: clamp(2.5rem, 1.756rem + 3.175vw, 4.375rem);
}
main .rankingSofa .containerArea .rankTitle span {
  display: block;
  line-height: 1;
  white-space: nowrap;
  font-size: clamp(0.688rem, 0.539rem + 0.635vw, 1.063rem);
}
main .rankingSofa .containerArea .rankTitle span.bold {
  letter-spacing: 0.17em;
}
main .rankingSofa .containerArea .rankTitle span.ro {
  font-size: clamp(1.625rem, 1.154rem + 2.011vw, 2.813rem);
  margin-bottom: clamp(0.438rem, 0.363rem + 0.317vw, 0.625rem);
}
main .rankingSofa .containerArea ul {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  counter-reset: rankCounter;
  gap: clamp(0.625rem, 0.377rem + 1.058vw, 1.25rem);
}
main .rankingSofa .containerArea ul li {
  counter-increment: rankCounter;
}
main .rankingSofa .containerArea ul li .imageBack {
  width: 100%;
  position: relative;
  background-color: #ffffff;
  box-sizing: border-box;
}
main .rankingSofa .containerArea ul li .imageBack::after {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}
main .rankingSofa .containerArea ul li .imageBack img {
  width: 95%;
  height: auto;
  transition: transform 0.35s ease;
  position: absolute;
  top: 50%;
  left: 50%;
  will-change: transform;
  transform: translate(-50%, -50%);
}
main .rankingSofa .containerArea ul li .imageBack .rankNumber {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: clamp(1.75rem, 1.452rem + 1.27vw, 2.5rem);
  height: clamp(1.75rem, 1.452rem + 1.27vw, 2.5rem);
  background-color: #000000;
  color: #ffffff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: clamp(1rem, 0.777rem + 0.952vw, 1.563rem);
}
main .rankingSofa .containerArea ul li a:hover img {
  transform: translate(-50%, -50%) scale(1.08);
}
main .rankingSofa .containerArea ul li .textArea {
  margin-top: clamp(0.5rem, 0.401rem + 0.423vw, 0.75rem);
}
main .rankingSofa .containerArea ul li .textArea h5 {
  font-size: var(--index_font_24);
}
main .rankingSofa .containerArea ul li .textArea p {
  font-size: clamp(0.625rem, 0.526rem + 0.423vw, 0.875rem);
}
@media screen and (max-width: 770px) {
  main .rankingSofa .containerArea {
    width: 100%;
    padding: 0 20px;
  }
  main .rankingSofa .containerArea ul {
    grid-template-columns: repeat(2, 1fr);
    row-gap: 19px;
  }
  main .rankingSofa .containerArea ul li:first-child {
    grid-column: 1/-1;
    width: 50%;
    justify-self: center;
  }
}
main .rankingSofa .buttonArea {
  height: clamp(1.563rem, 1.314rem + 1.058vw, 2.188rem);
  background: #000000;
  border-radius: 50px;
  width: clamp(5.75rem, 4.808rem + 4.021vw, 8.125rem);
  margin-left: auto;
  margin-top: clamp(1.5rem, 1.376rem + 0.529vw, 1.813rem);
}
main .rankingSofa .buttonArea a {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(0.625rem, 0.501rem + 0.529vw, 0.938rem);
  height: 100%;
}
main .rankingSofa .buttonArea img {
  width: clamp(14px, -3.769px + 2.308vw, 17px);
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
  transition: transform 0.35s ease;
}
main .rankingSofa .buttonArea p {
  font-size: clamp(0.75rem, 0.626rem + 0.529vw, 1.063rem);
  color: #ffffff;
}
main .rankingSofa .buttonArea:hover img {
  transform: translateX(5px);
}
main .videoArea {
  position: relative;
  width: 100%;
  height: 400vh;
  overflow: hidden;
  z-index: -1;
}
@media screen and (max-width: 770px) {
  main .videoArea {
    height: 150vh;
  }
}
main .videoArea__bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: -10;
  transition: opacity 0.2s ease;
}
main .sofaLineup {
  background-color: #EBEBEB;
  padding-top: var(--margin_130);
  padding-bottom: clamp(3.75rem, 2.014rem + 7.407vw, 8.125rem);
}
main .sofaLineup .lineupArea {
  max-width: 1320px;
  margin: 0 auto;
  width: 93%;
}
main .sofaLineup .lineupArea .lineupTitle {
  text-align: center;
  margin-bottom: clamp(2.5rem, 1.756rem + 3.175vw, 4.375rem);
}
main .sofaLineup .lineupArea .lineupTitle span {
  display: block;
  line-height: 1;
  white-space: nowrap;
  font-size: clamp(0.688rem, 0.539rem + 0.635vw, 1.063rem);
}
main .sofaLineup .lineupArea .lineupTitle span.bold {
  letter-spacing: 0.17em;
}
main .sofaLineup .lineupArea .lineupTitle span.ro {
  font-size: clamp(1.625rem, 1.154rem + 2.011vw, 2.813rem);
  margin-bottom: clamp(0.438rem, 0.363rem + 0.317vw, 0.625rem);
}
main .sofaLineup ul {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(0.625rem, -0.119rem + 3.175vw, 2.5rem);
}
@media screen and (max-width: 770px) {
  main .sofaLineup ul {
    grid-template-columns: 1fr 1fr;
    grid-template-rows: auto auto auto auto;
  }
}
main .sofaLineup ul li {
  background-color: #ffffff;
  position: relative;
  width: 100%;
  padding: 10px;
}
main .sofaLineup ul li::after {
  content: "";
  display: block;
  width: 100%;
  padding-top: 100%;
}
main .sofaLineup ul li a {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
main .sofaLineup ul li a .imageBack {
  width: 100%;
  overflow: hidden;
  flex-grow: 2;
  display: flex;
  justify-content: center;
  align-items: center;
  padding-top: 7px;
}
main .sofaLineup ul li a .imageBack img {
  width: 95%;
  height: auto;
  transition: transform 0.35s ease;
}
main .sofaLineup ul li a .textArea {
  width: 100%;
  padding: 0px clamp(12px, -6.087px + 2.609vw, 20px) clamp(11px, -3.739px + 2.174vw, 18px);
}
main .sofaLineup ul li a .textArea span {
  display: block;
}
main .sofaLineup ul li a .textArea span.en {
  font-size: clamp(21px, -25.87px + 6.087vw, 35px);
  letter-spacing: 0.03em;
}
@media screen and (max-width: 770px) {
  main .sofaLineup ul li a .textArea span.en {
    font-size: clamp(20.175px, 5.38vw, 25px);
  }
}
main .sofaLineup ul li a .textArea span.bold {
  font-size: clamp(0.563rem, 0.414rem + 0.635vw, 0.938rem);
  letter-spacing: 0.13em;
}
main .sofaLineup ul li a:hover img {
  transform: scale(1.05);
}
main .sofaLineup ul li:nth-child(5), main .sofaLineup ul li:nth-child(6) {
  grid-column: span 2;
}
main .sofaLineup ul li:nth-child(5)::after, main .sofaLineup ul li:nth-child(6)::after {
  content: "";
  display: block;
  width: 100%;
  padding-top: 25%;
}
main .sofaLineup ul li:nth-child(5) a, main .sofaLineup ul li:nth-child(6) a {
  flex-direction: row;
}
main .sofaLineup ul li:nth-child(5) a .textArea,
main .sofaLineup ul li:nth-child(5) a .imageBack, main .sofaLineup ul li:nth-child(6) a .textArea,
main .sofaLineup ul li:nth-child(6) a .imageBack {
  width: 50%;
}
main .sofaLineup ul li:nth-child(5) a .textArea, main .sofaLineup ul li:nth-child(6) a .textArea {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-end;
}
main .srNews {
  background-color: #ffffff;
  padding-top: clamp(3.75rem, 1.518rem + 9.524vw, 9.375rem);
  padding-bottom: clamp(5rem, 3.76rem + 5.291vw, 8.125rem);
}
main .srNews .srNewsArea {
  max-width: 1320px;
  margin: 0 auto;
  width: 93%;
}
main .srNews .srNewsArea .srNewsTitle {
  text-align: center;
  margin-bottom: clamp(2.5rem, 1.756rem + 3.175vw, 4.375rem);
}
main .srNews .srNewsArea .srNewsTitle span {
  display: block;
  line-height: 1;
  white-space: nowrap;
  font-size: clamp(0.688rem, 0.539rem + 0.635vw, 1.063rem);
}
main .srNews .srNewsArea .srNewsTitle span.bold {
  letter-spacing: 0.17em;
}
main .srNews .srNewsArea .srNewsTitle span.ro {
  font-size: clamp(1.625rem, 1.154rem + 2.011vw, 2.813rem);
  margin-bottom: clamp(0.438rem, 0.363rem + 0.317vw, 0.625rem);
}
main .srNews .srNewsArea .showroom ul {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: clamp(0.625rem, 0.451rem + 0.741vw, 1.063rem);
  margin-bottom: clamp(5rem, 2.768rem + 9.524vw, 10.625rem);
}
main .srNews .srNewsArea .showroom ul li {
  position: relative;
}
main .srNews .srNewsArea .showroom ul li .img {
  width: 100%;
  position: relative;
}
main .srNews .srNewsArea .showroom ul li .img::before {
  content: "";
  width: 100%;
  padding-top: 80%;
  display: block;
}
main .srNews .srNewsArea .showroom ul li .img img {
  position: absolute;
  top: 0;
  left: 0;
}
main .srNews .srNewsArea .showroom ul li img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
main .srNews .srNewsArea .showroom ul li::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.35);
  z-index: 1;
}
main .srNews .srNewsArea .showroom ul li a::before {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(255, 255, 255, 0.2);
  opacity: 0;
  transition: opacity 0.35s ease;
  z-index: 2;
}
main .srNews .srNewsArea .showroom ul li a:hover::before {
  opacity: 1;
}
main .srNews .srNewsArea .showroom ul li h6 {
  font-size: clamp(1rem, 0.851rem + 0.635vw, 1.375rem);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  text-align: center;
  z-index: 3;
  color: #ffffff;
}
main .srNews .srNewsArea .news {
  display: flex;
  gap: clamp(1.375rem, -3.04rem + 18.836vw, 12.5rem);
}
main .srNews .srNewsArea .news .newsArea {
  flex-shrink: 0;
}
main .srNews .srNewsArea .news .newsArea .labelArea {
  display: flex;
  flex-direction: column;
}
main .srNews .srNewsArea .news .newsArea .labelArea h1 {
  font-size: clamp(1.625rem, 1.154rem + 2.011vw, 2.813rem);
  line-height: 1;
  margin-bottom: 16px;
}
main .srNews .srNewsArea .news .newsArea .labelArea .moreLink {
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: left;
}
main .srNews .srNewsArea .news .newsArea .labelArea .moreLink .moreLabel {
  display: block;
  font-size: clamp(0.75rem, 0.651rem + 0.423vw, 1rem);
  line-height: 1;
  letter-spacing: 0.025em;
  color: #898989;
}
main .srNews .srNewsArea .news .newsArea .labelArea .moreLink .buttonArea {
  width: auto !important;
  margin: 0;
  line-height: 1;
}
main .srNews .srNewsArea .news .newsArea .labelArea .moreLink .buttonArea .base_btn {
  display: block;
  margin: 0 auto;
  background: transparent;
  padding: 9px 18px 9px 18px;
  width: auto;
  border-radius: 30px;
  position: relative;
  border: solid 1px #898989;
}
main .srNews .srNewsArea .news .newsArea .labelArea .moreLink .buttonArea .base_btn::before, main .srNews .srNewsArea .news .newsArea .labelArea .moreLink .buttonArea .base_btn::after {
  content: "";
  position: absolute;
  top: 50%;
  display: block;
  background-color: #898989;
  transform-origin: right center;
  transition: transform 0.3s ease, border-top 0.3s ease, border-right 0.3s ease;
}
main .srNews .srNewsArea .news .newsArea .labelArea .moreLink .buttonArea .base_btn::before {
  width: 11.85px;
  height: 1.1px;
  margin-top: -1px;
  right: 12px;
}
main .srNews .srNewsArea .news .newsArea .labelArea .moreLink .buttonArea .base_btn::after {
  width: 6px;
  height: 6px;
  background-color: transparent;
  border-top: 1.1px solid #898989;
  border-right: 1.1px solid #898989;
  transform: translateY(-22%) rotate(45deg);
  left: auto;
  right: 13px;
}
main .srNews .srNewsArea .news .newsArea .labelArea .moreLink:hover .base_btn {
  background: #000000;
  border-color: #000000;
}
main .srNews .srNewsArea .news .newsArea .labelArea .moreLink:hover .base_btn::before {
  background-color: #FFFFFF;
  transform: translateX(5px);
}
main .srNews .srNewsArea .news .newsArea .labelArea .moreLink:hover .base_btn::after {
  border-top: 1.1px solid #FFFFFF;
  border-right: 1.1px solid #FFFFFF;
  transform: translateY(-22%) translateX(5px) rotate(45deg);
}
main .srNews .srNewsArea .news .newsContent {
  flex: 1;
  min-width: 0;
}
main .srNews .srNewsArea .news .newsContent ul {
  width: 100%;
}
main .srNews .srNewsArea .news .newsContent ul li {
  max-width: 712px;
  border-top: 1px solid #B5B5B6;
  padding: clamp(13px, 6.304px + 0.87vw, 15px) 0 clamp(14px, 7.304px + 0.87vw, 16px);
  width: 100%;
}
main .srNews .srNewsArea .news .newsContent ul li a {
  transition: color 0.35s, transform 0.35s, opacity 0.35s;
}
main .srNews .srNewsArea .news .newsContent ul li a .infoTitle {
  font-size: clamp(0.813rem, 0.738rem + 0.317vw, 1rem);
  margin-bottom: clamp(2px, -4.696px + 0.87vw, 4px);
}
main .srNews .srNewsArea .news .newsContent ul li a .date {
  font-size: clamp(0.75rem, 0.7rem + 0.212vw, 0.875rem);
  color: #B5B5B6;
}
main .srNews .srNewsArea .news .newsContent ul li a:hover .infoTitle {
  opacity: 0.65;
}
main .srNews .srNewsArea .news .newsContent ul li:last-child {
  border-bottom: 1px solid #B5B5B6;
}
@media screen and (max-width: 770px) {
  main .srNews .srNewsArea {
    width: 100%;
    padding: 0 20px;
  }
  main .srNews .srNewsArea .showroom ul {
    grid-template-columns: repeat(2, 1fr);
  }
  main .srNews .srNewsArea .news {
    flex-direction: column;
  }
  main .srNews .srNewsArea .news .newsArea .labelArea {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
  }
  main .srNews .srNewsArea .news .newsArea .labelArea h1 {
    margin-bottom: 0;
  }
}
main .magEvents {
  background-color: #EBEBEB;
  padding-top: clamp(3.75rem, 2.014rem + 7.407vw, 8.125rem);
  padding-bottom: clamp(3.75rem, 2.014rem + 7.407vw, 8.125rem);
  padding-left: max(3.5vw, (100vw - 1320px) / 2);
  overflow: hidden;
}
main .magEvents .contentArea {
  width: 100%;
  display: flex;
  gap: clamp(2.5rem, 1.26rem + 5.291vw, 5.625rem);
}
main .magEvents .contentArea .labelArea {
  display: flex;
  flex-direction: column;
  gap: clamp(0.313rem, 0.064rem + 1.058vw, 0.938rem);
}
main .magEvents .contentArea .labelArea h1 {
  font-size: clamp(1.625rem, 1.154rem + 2.011vw, 2.813rem);
  line-height: 1;
}
main .magEvents .contentArea .labelArea .moreLink {
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: left;
}
main .magEvents .contentArea .labelArea .moreLink .moreLabel {
  display: block;
  font-size: clamp(0.75rem, 0.651rem + 0.423vw, 1rem);
  line-height: 1;
  letter-spacing: 0.025em;
  color: #898989;
}
main .magEvents .contentArea .labelArea .moreLink .buttonArea {
  width: auto !important;
  margin: 0;
  line-height: 1;
}
main .magEvents .contentArea .labelArea .moreLink .buttonArea .base_btn {
  display: block;
  margin: 0 auto;
  background: transparent;
  padding: 9px 18px 9px 18px;
  width: auto;
  border-radius: 30px;
  position: relative;
  border: solid 1px #898989;
}
main .magEvents .contentArea .labelArea .moreLink .buttonArea .base_btn::before, main .magEvents .contentArea .labelArea .moreLink .buttonArea .base_btn::after {
  content: "";
  position: absolute;
  top: 50%;
  display: block;
  background-color: #898989;
  transform-origin: right center;
  transition: transform 0.3s ease;
}
main .magEvents .contentArea .labelArea .moreLink .buttonArea .base_btn::before {
  width: 11.85px;
  height: 1.1px;
  margin-top: -1px;
  right: 12px;
}
main .magEvents .contentArea .labelArea .moreLink .buttonArea .base_btn::after {
  width: 6px;
  height: 6px;
  background-color: transparent;
  border-top: 1.1px solid #898989;
  border-right: 1.1px solid #898989;
  transform: translateY(-22%) rotate(45deg);
  left: auto;
  right: 13px;
}
main .magEvents .contentArea .labelArea .moreLink:hover .base_btn {
  background: #000000;
  border-color: #000000;
}
main .magEvents .contentArea .labelArea .moreLink:hover .base_btn::before {
  background-color: #FFFFFF;
  transform: translateX(5px);
}
main .magEvents .contentArea .labelArea .moreLink:hover .base_btn::after {
  border-top: 1.1px solid #FFFFFF;
  border-right: 1.1px solid #FFFFFF;
  transform: translateY(-22%) translateX(5px) rotate(45deg);
}
main .magEvents .contentArea .sliderContent ul li .imageArea {
  width: 100%;
  height: auto;
  overflow: hidden;
  position: relative;
}
main .magEvents .contentArea .sliderContent ul li .imageArea img {
  position: absolute;
  top: 0;
  left: 0;
}
main .magEvents .contentArea .sliderContent ul li .imageArea::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 75%;
}
main .magEvents .contentArea .sliderContent ul li .imageArea .newBadge {
  font-size: 10px;
  color: #FFFFFF;
  background-color: #000000;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  width: 47px;
  height: 26px;
  display: flex;
  justify-content: center;
  align-items: center;
  line-height: 1;
}
main .magEvents .contentArea .sliderContent ul li .imageArea img {
  position: absolute;
  top: 0;
  left: 0;
  will-change: transform;
  transition: transform 0.6s ease;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  display: block;
}
main .magEvents .contentArea .sliderContent ul li a:hover .imageArea img {
  transform: scale(1.08);
}
main .magEvents .contentArea .sliderContent ul li h6 {
  font-size: 12px;
  margin-bottom: clamp(0.438rem, 0.363rem + 0.317vw, 0.625rem);
  line-height: 1;
}
main .magEvents .contentArea .sliderContent ul li .titleArea {
  line-height: 1.8;
  margin-top: clamp(0.625rem, 0.575rem + 0.212vw, 0.75rem);
  font-size: clamp(0.688rem, 0.638rem + 0.212vw, 0.813rem);
}
@media screen and (max-width: 770px) {
  main .magEvents .contentArea {
    display: block;
  }
  main .magEvents .contentArea .labelArea {
    display: grid;
    margin-bottom: 40px;
    padding-right: max(3.5vw, (100vw - 1320px) / 2);
    grid-template-columns: 1fr 1fr;
  }
  main .magEvents .contentArea .labelArea h1:nth-of-type(1) {
    grid-area: 1;
  }
  main .magEvents .contentArea .labelArea h1:nth-of-type(2) {
    grid-area: 2;
  }
  main .magEvents .contentArea .labelArea .moreLink {
    align-items: center;
    justify-content: right;
  }
  main .magEvents .contentArea .labelArea .moreLink:nth-of-type(1) {
    grid-row: 1;
  }
  main .magEvents .contentArea .labelArea .moreLink:nth-of-type(2) {
    grid-row: 2;
  }
}
main .fabric {
  padding: clamp(40px, -60.435px + 13.043vw, 70px) 20px;
  position: relative;
  z-index: 0;
}
main .fabric::after {
  content: "";
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.6);
  z-index: -1;
}
main .fabric .img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: -2;
}
main .fabric .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
main .fabric .overlay {
  width: 100%;
  max-width: 980px;
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  justify-content: center;
  gap: clamp(1.75rem, 1.452rem + 1.27vw, 2.5rem);
  z-index: 1;
  margin: 0 auto;
}
@media screen and (max-width: 770px) {
  main .fabric .overlay {
    grid-template-columns: 100%;
    grid-template-rows: auto auto;
    row-gap: 28px;
  }
}
main .fabric .overlay .imgArea {
  width: 100%;
  position: relative;
}
@media screen and (max-width: 770px) {
  main .fabric .overlay .imgArea {
    width: 75%;
    justify-self: end;
  }
}
main .fabric .overlay .imgArea::before {
  content: "";
  display: block;
  width: 100%;
  padding-top: 57.44%;
}
main .fabric .overlay .imgArea img {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
main .fabric .overlay .leftArea {
  display: flex;
  flex-direction: column;
}
main .fabric .overlay .kijiButton {
  display: flex;
  border-radius: 0;
  padding: 5px 30px;
  margin: 0;
  background-color: #ffffff;
  border: 1px solid #ffffff;
  transition: background-color 0.3s ease;
  width: 230px;
  justify-content: center;
  align-items: center;
}
main .fabric .overlay .kijiButton span {
  font-size: clamp(0.75rem, 0.676rem + 0.317vw, 0.938rem);
  color: #000000;
  transition: color 0.3s ease;
}
main .fabric .overlay .kijiButton:hover {
  background-color: #000000;
}
main .fabric .overlay .kijiButton:hover span {
  color: #ffffff;
}
main .fabric .overlay p {
  color: #ffffff;
  margin-bottom: clamp(0.938rem, 0.565rem + 1.587vw, 1.875rem);
  font-size: clamp(0.75rem, 0.676rem + 0.317vw, 0.938rem);
}