@charset "UTF-8";
/* CSS Document */

#Main .block-index-01 .container {max-width: 1050px;width: calc(100% - 4em);margin: 2em auto -2em;}

#Main .block-index-03 {overflow: hidden;padding: 3em 0 0;background-color: #f3f5f8;}
#Main .block-index-03 .swiper-house {margin: 0 -10%;width: 120%;}
#Main .block-index-03 .swiper-land {margin-top: -3em;}
#Main .block-index-03 .swiper-land::after {content: "";position: absolute;top: 3em;left: 50%;transform: translate(-50%, -50%);width: 3em;height: 3em;background: transparent url("../img/icon_01.webp") no-repeat 50% / contain;z-index: 2;}
#Main .block-index-03 .swiper-slide {overflow: hidden;border-radius: 0.5em;}
#Main .block-index-03 .swiper-slide figure {background-color: #fff;display: flex;justify-content: center;align-content: center;padding: 1em 0;}
#Main .block-index-03 .swiper-slide figure img {width: auto;height: 20em;}
#Main .block-index-03 .container {max-width: 1200px;margin: 0 auto;overflow: hidden;}
#Main .block-index-03::after {content: "";display: block;height: 10em;margin: 3em 0 0;background: #fff;clip-path: ellipse(80% 240% at 50% -150%);transform: rotate(180deg);}

#Main .block-index-04 {position: relative;z-index: 2;}
#Main .block-index-04 .container {max-width: 1200px;width: calc(100% - 4em);margin: 0 auto;}
#Main .block-index-04 .grid-list {margin-top: -10em;justify-content: center;}
#Main .block-index-04 .grid-list > figure {width: calc(33.33% - 2em);max-width: 340px;margin: 0 1em;}
#Main .block-index-04 .grid-list > figure figcaption {max-width: 18em;margin: 1em auto;text-align: center;line-height: 2;}
#Main .block-index-04 .grid-list > figure figcaption span {display: inline-block;font-weight: bold;white-space: nowrap;}

#Main .block-index-05 .container {max-width: 1200px;width: calc(100% - 4em);margin: 3em auto 0;padding: 5em 0;background-color: #4488cc;}
#Main .block-index-05 h3 img {width: auto;height: 3em;margin: 0 auto 2em;}
#Main .block-index-05 section {position: relative;background-color: #fff;border-radius: 1em;box-sizing: border-box;width: calc(100% - 4em);margin: 5em auto 0;padding: 1em;}
#Main .block-index-05 section h4 img {max-width: 230px;width: 80%;margin: -3em auto 1em;}
#Main .block-index-05 section .lead {color: #454545;}
#Main .block-index-05 section .btn {position: relative;max-width: 20em;background-color: #4488cc;border-radius: 2em;margin: 1em auto 0;padding: 0.5em 1em 0.5em 0.5em;text-align: center;font-weight: bold;color: #fff;}
#Main .block-index-05 section .btn::after {content: "〉";position: absolute;top: 50%;right: 1em;transform: translateY(-50%) scaleY(0.6);}
#Main .block-index-05 section:nth-of-type(1)::before {content: "";position: absolute;bottom: calc(100% - 4em);right: 5%;width: 20%;max-width: 130px;background: transparent url("../img/illust_04.webp") no-repeat 50% / contain;aspect-ratio: 26 / 25;}
#Main .block-index-05 section:nth-of-type(2)::before {content: "";position: absolute;bottom: calc(100% - 4em);left: 5%;width: 20%;max-width: 130px;background: transparent url("../img/illust_05.webp") no-repeat 50% / contain;aspect-ratio: 26 / 25;}
#Main .block-index-05 section:nth-of-type(3)::before {content: "";position: absolute;bottom: calc(100% - 4em);right: 5%;width: 20%;max-width: 130px;background: transparent url("../img/illust_06.webp") no-repeat 50% / contain;aspect-ratio: 26 / 25;}
#Main .block-index-05 .lead {max-width: 30em;margin: 0 auto 1em;text-align: center;font-weight: bold;line-height: 2;color: #fff;}
#Main .block-index-05 .lead span {display: inline-block;white-space: nowrap;}
#Main .block-index-05 .caps {text-align: center;font-size: 75%;}
#Main .block-index-05 .caps br {display: none;}

#Main .block-index-06 .container {max-width: 1200px;width: calc(100% - 4em);margin: 3em auto;}
#Main .block-index-06 .movie {position: relative;padding-top: 56.25%;}
#Main .block-index-06 .movie   iframe {position: absolute;top: 0;left: 0;width: 100%;height: 100%;}

#Main .block-index-07 .container {max-width: 1200px;width: calc(100% - 4em);margin: 3em auto;}
#Main .block-index-07 .grid-list {justify-content: space-between;gap: 1em;}
#Main .block-index-07 .grid-list > div {width: calc(50% - 0.5em);}
#Main .block-index-07 .grid-list > div a {display: flex;flex-direction: column;justify-content: center;align-items: center;aspect-ratio: 3 / 2;border-radius: 5px;background-position: 50%;background-size: cover;color: #fff;}
#Main .block-index-07 .grid-list > div a h3 {text-align: center;font-size: 175%;font-weight: bold;color: #fff;}
#Main .block-index-07 .grid-list > div a h3 strong {font-size: 125%;}
#Main .block-index-07 .grid-list > div a h3 small {display: block;font-size: 50%;font-weight: bold;}
#Main .block-index-07 .grid-list > div a h3 span {position: relative;display: block;letter-spacing: 0.15em;font-size: 66.7%;font-weight: normal;opacity: 0.5;}
#Main .block-index-07 .grid-list > div a h3 span::before {content: "";display: inline-block;width: 2em;height: 1px;background-color: #fff;margin: 0 0.5em 0 1em;vertical-align: middle;}
#Main .block-index-07 .grid-list > div a h3 span::after {content: "";display: inline-block;width: 2em;height: 1px;background-color: #fff;margin: 0 0 0 0.5em;vertical-align: middle;}
#Main .block-index-07 .grid-list > div a .more {position: relative;border: 1px solid #fff;margin-top: 1em;padding: 1em;width: 12em;line-height: 1;font-size: 112.5%;font-weight: bold;text-align: center;}
#Main .block-index-07 .grid-list > div a .more::after {content: "〉";position: absolute;top: 50%;right: 1em;transform: translateY(-50%) scaleY(0.6);}
#Main .block-index-07 .grid-list > div a[href="/brands/"] {background-image: url("../img/bg_01.webp");}
#Main .block-index-07 .grid-list > div a[href="/ownedland/"] {background-image: url("../img/bg_02.webp");}
#Main .block-index-07 .grid-list > div a[href="/view360/"] {background-image: url("../img/bg_03.webp");}
#Main .block-index-07 .grid-list > div a[href="/store/"] {background-image: url("../img/bg_04.webp");}

/* =====
* LAYOUT :: PC
=================================================================== */
@media only screen and (min-width: 1025px) {}
@media only screen and (min-width: 1025px) and (max-width: 1350px) {
  #Main .block-index-03 .swiper-house {margin: 0 -25%;width: 150%;}
}
@media only screen and (min-width: 1025px) and (max-width: 1250px) {
  #Main .block-index-07 .grid-list > div {width: calc(100% - 0.5em);}
  #Main .block-index-07 .grid-list > div a {aspect-ratio: auto;height: 16em;}
}
@media only screen and (min-width: 1025px) and (max-width: 1150px) {
  #Main .block-index-04 .grid-list {display: block;}
  #Main .block-index-04 .grid-list > figure {width: 100%;max-width: 100%;margin: 0;display: flex;align-items: flex-end;justify-content: center;}
  #Main .block-index-04 .grid-list > figure img {width: auto;height: 10em;}
  #Main .block-index-04 .grid-list > figure figcaption {position: relative;max-width: 22em;margin: 0;text-align: left;}
  #Main .block-index-04 .grid-list > figure:nth-child(1) {padding-bottom: 2em;}
  #Main .block-index-04 .grid-list > figure:nth-child(2) {flex-direction: row-reverse;}
  #Main .block-index-04 .grid-list > figure:nth-child(2) figcaption {text-align: right;}
  #Main .block-index-04 .grid-list > figure:nth-child(2) figcaption::before {content: "";position: absolute;top: -2em;left: 0;right: 0;height: 2px;background-image: radial-gradient(circle, #4488cc 2px, transparent 2px);background-size: 8px 4px;background-repeat: repeat-x;}
  #Main .block-index-04 .grid-list > figure:nth-child(3) figcaption::before {content: "";position: absolute;top: -2em;left: 0;right: 0;height: 2px;background-image: radial-gradient(circle, #4488cc 2px, transparent 2px);background-size: 8px 4px;background-repeat: repeat-x;}

  #Main .block-index-05 .caps br {display: block;;}
}

/* =====
* LAYOUT :: TAB
=================================================================== */
@media only screen and (max-width: 1024px) {}
@media only screen and (min-width: 769px) {}
/* =====
* LAYOUT :: SP
=================================================================== */
@media only screen and (max-width: 768px) {
  #Main .block-index-03 .swiper-house {margin: 0 -10%;width: 120%;}
  #Main .block-index-03 .swiper-slide figure img {height: 12em;}
  #Main .block-index-03 .swiper-land {padding: 2em 0 0;}
  #Main .block-index-03::after {margin-top: 1em;clip-path: ellipse(110% 240% at 50% -150%);}

  #Main .block-index-04 .grid-list {margin-top: -6em;}
  #Main .block-index-04 .grid-list > figure {width: 100%;max-width: 100%;margin: 0;padding-bottom: 2em;display: flex;align-items: flex-end;justify-content: center;}
  #Main .block-index-04 .grid-list > figure img {width: auto;height: 10em;}
  #Main .block-index-04 .grid-list > figure figcaption {position: relative;max-width: 22em;margin: 0;text-align: left;}
  #Main .block-index-04 .grid-list > figure:nth-child(2) {flex-direction: row-reverse;}
  #Main .block-index-04 .grid-list > figure:nth-child(2) figcaption {text-align: right;}
  #Main .block-index-04 .grid-list > figure:nth-child(2) figcaption::before {content: "";position: absolute;top: -2em;left: 0;right: 0;height: 2px;background-image: radial-gradient(circle, #4488cc 2px, transparent 2px);background-size: 8px 4px;background-repeat: repeat-x;}
  #Main .block-index-04 .grid-list > figure:nth-child(3) figcaption::before {content: "";position: absolute;top: -2em;left: 0;right: 0;height: 2px;background-image: radial-gradient(circle, #4488cc 2px, transparent 2px);background-size: 8px 4px;background-repeat: repeat-x;}

  #Main .block-index-05 section {margin-top: 3em;padding: 2em;}
  #Main .block-index-05 h3 img {height: 6em;}
  #Main .block-index-05 .container {width: 100%;}

  #Main .block-index-07 .grid-list > div {width: calc(100% - 0.5em);}
  #Main .block-index-07 .grid-list > div a {aspect-ratio: auto;height: 18em;}
}
@media only screen and (max-width: 768px) and (orientation: landscape) {}
@media only screen and (max-width: 640px) {}
@media only screen and (max-width: 480px) {}
