@charset "utf-8";


/*  l-intro
--------------------------------------------------*/
.l-intro {
  position: relative;
}
.intro-inner {
  width: min(95%,1740px);
  margin-inline: 0 auto;
}
.intro-photo {
  width: calc(1000 / 1740 * 100%);
}
.intro-content {
  width: calc(560 / 1740 * 100%);
  gap: 14.0rem 0;
}
.intro-content__item {
  position: relative;
  width: 100%;
}
.intro-content__item__photo {
  width: 100%;
}
.intro-content__item__photo__image:nth-of-type(1) {
  width: calc(356 / 560 * 100%);
}
.intro-content__item__photo__image:nth-of-type(2) {
  width: calc(190 / 560 * 100%);
}
.intro-content__item__detail {
  width: 100%;
  margin-top: 5.0rem;
}
.intro-visual {
  width: 100%;
  margin-top: 30.0rem;
}
@media screen and (max-width: 767px){
  .intro-inner {
    max-width: 560px;
    width: 100%;
    margin-inline: auto;
  }
  .intro-photo {
    width: calc(320 / 380 * 100%);
    margin-inline: 0 auto;
  }
  .intro-content {
    width: 100%;
    margin-inline: 0 auto;
    margin-top: 8.0rem;
    gap: 8.0rem 0;
  }
  .intro-content__item {
    position: relative;
    width: 100%;
  }
  .intro-content__item__photo {
    width: 100%;
  }
  .intro-content__item:nth-of-type(1) .intro-content__item__photo {
    width: calc(286 / 380 * 100%);
    margin-inline: auto 0;
  }
  .intro-content__item:nth-of-type(2) .intro-content__item__photo {
    width: calc(320 / 380 * 100%);
    margin-inline: auto;
  }
  .intro-content__item__detail {
    width: calc(320 / 380 * 100%);
    margin-inline: auto;
    margin-top: 4.5rem;
  }
  .intro-visual {
    margin-top: 8.0rem;
  }
}




/*  l-architecture
--------------------------------------------------*/
.l-architecture {
  position: relative;
  padding-top: 20.0rem;
  background: var(--white);
  z-index: 1;
}
.architecture-container {
  position: relative;
  margin-top: 13.0rem;
  padding-bottom: 20.0rem;
}
.architecture-container::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 67%;
  background: var(--color-medium);
  z-index: -1;
}
.architecture-item {
  position: relative;
  width: calc(690 / 1560 * 100%);
}
.architecture-item__detail {
  width: 100%;
}
.architecture-item__photo {
  margin-top: 9.0rem;
}
.architecture-item__photo__item:nth-of-type(1) {
  width: calc(260 / 690 * 100%);
}
.architecture-item__photo__item:nth-of-type(2) {
  width: calc(430 / 690 * 100%);
}
.architecture-item__brand {
  width: 100%;
  margin-top: 6.0rem;
}
.architecture-item__brand__info {
  width: calc(230 / 690 * 100%);
}
.architecture-item__brand__info__logo {
  width: 100%;
}
.architecture-item__brand__info__desc {
  font-size: 1.3rem;
  letter-spacing: .1em;
  line-height: 2.30769231;
  color: var(--white);
  margin-top: 4.0rem;
}
.architecture-item__brand__photo {
  width: calc(400 / 690 * 100%);
}
/* .architecture-intro {
  margin-top: 13.0rem;
}
.architecture-intro__detail {
  width: calc(810 / 1560 * 100%);
}
.architecture-intro__jma {
  position: relative;
  width: calc(570 / 1560 * 100%);
}
.architecture-intro__jma::after {
  content: '';
  position: absolute;
  left: 3.5rem;
  bottom: 0;
  transform: translateY(99%);
  width: 3.0rem;
  height: 1.8rem;
  background-color: var(--white);
  clip-path: polygon(0 0, 100% 0, 50% 100%);
  z-index: 1;
}
.architecture-intro__jma__info {
  width: calc(275 / 570 * 100%);
}
.architecture-intro__jma__info__logo {
  width: 100%;
}
.architecture-intro__jma__info__heading {
  position: relative;
  font-size: 2.0rem;
  letter-spacing: .1em;
  text-align: center;
  padding-top: 4.0rem;
  margin-top: 4.0rem;
}
.architecture-intro__jma__info__heading::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin-inline: auto;
  width: calc(194 / 270 * 100%);
  height: 1px;
  background: currentColor;
}
.architecture-intro__jma__info__heading span {
  display: block;
  font-size: calc(30 / 20 * 1em);
  margin-bottom: 2.0rem;
}
.architecture-intro__jma__photo {
  width: calc(270 / 570 * 100%);
  margin-right: calc(-30 / 570 * 100%);
}
.architecture-contents {
  padding-block: 10.0rem 20.0rem;
  background: var(--color-medium);
}
.architecture-contents__head {
  position: relative;
}
.architecture-contents__head__detail {
  width: calc(570 / 1560 * 100%);
}
.architecture-contents__head__detail__photo {
  width: calc(280 / 570 * 100%);
}
.architecture-contents__head__detail__desc {
  width: calc(240 / 570 * 100%);
  font-size: 1.3rem;
  letter-spacing: .1em;
  line-height: 2.30769231;
  color: var(--white);
}
.architecture-contents__head__visual {
  width: calc(810 / 1560 * 100%);
  margin-top: calc(-210 / 1560 * 100%);
}
.architecture-contents__landscape {
  position: relative;
  margin-top: 15.0rem;
}
.architecture-contents__landscape__detail {
  width: calc(810 / 1560 * 100%);
}
.architecture-contents__landscape__detail__photo {
  margin-top: 8.5rem;
}
.architecture-contents__landscape__detail__photo__item:nth-of-type(1) {
  width: calc(286 / 810 * 100%);
}
.architecture-contents__landscape__detail__photo__item:nth-of-type(2) {
  width: calc(524 / 810 * 100%);
}
.architecture-contents__landscape__solso {
  width: calc(570 / 1560 * 100%);
}
.architecture-contents__landscape__solso__photo {
  width: 100%;
}
.architecture-contents__landscape__solso__detail {
  width: 100%;
  margin-top: 5.0rem;
}
.architecture-contents__landscape__solso__detail__logo {
  width: min(100%,228px);
  margin-inline: 0 auto;
}
.architecture-contents__landscape__solso__detail__desc {
  font-size: 1.3rem;
  letter-spacing: .1em;
  line-height: 2.30769231;
  color: var(--white);
  margin-top: 2.5rem;
} */
/* @media screen and (max-width: 1000px){
  .architecture-intro__detail {
    width: 100%;
  }
  .architecture-intro__jma {
    width: min(100%, 300px);
    margin-inline: auto 0;
    margin-top: 6.0rem;
  }
  .architecture-contents__head__visual {
    margin-top: 0;
  }
} */
@media screen and (max-width: 1000px){
  .architecture-item__brand__info {
    width: 100%;
  }
  .architecture-item__brand__info__logo {
    width: 60%;
  }
  .architecture-item__brand__photo {
    width: 100%;
    margin-top: 6.0rem;
  }
}
@media screen and (max-width: 767px){
  .l-architecture {
    padding-top: 8.0rem;
  }
  .architecture-container {
    margin-top: 6.5rem;
    padding-bottom: 0;
  }
  .architecture-inner {
    max-width: none;
    width: 100%;
  }
  .architecture-container::after {
    content: none;
  }
  .architecture-item {
    width: 100%;
    padding-bottom: 8.0rem;
  }
  .architecture-item + .architecture-item {
    margin-top: 7.0rem;
  }
  .architecture-item::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 60%;
    background: var(--color-medium);
    z-index: -1;
  }
  .architecture-item__detail {
    width: min(560px,calc(320 / 380 * 100%));
    margin-inline: auto;
  }
  .architecture-item__photo {
    width: min(560px,calc(320 / 380 * 100%));
    margin-inline: auto;
    margin-top: 5.0rem;
  }
  .architecture-item__brand {
    width: min(560px,calc(320 / 380 * 100%));
    margin-inline: auto;
    margin-top: 5.0rem;
  }
  .architecture-item__brand__info {
    width: 100%;
  }
  .architecture-item__brand__info__logo {
    width: 60%;
  }
  .architecture-item__brand__info__desc {
    font-size: 1.2rem;
    line-height: 1.66666667;
    margin-top: 2.5rem;
  }
  .architecture-item__brand__photo {
    width: 100%;
    margin-top: 3.0rem;
  }
  /* .architecture-intro {
    margin-top: 6.5rem;
  }
  .architecture-intro__detail {
    width: 100%;
  }
  .architecture-intro__jma {
    width: calc(280 / 320 * 100%);
    margin-inline: auto;
    margin-top: 6.0rem;
  }
  .architecture-intro__jma::after {
    content: none;
  }
  .architecture-intro__jma__info {
    width: calc(130 / 280 * 100%);
  }
  .architecture-intro__jma__info__logo {
    width: 100%;
  }
  .architecture-intro__jma__info__heading {
    font-size: 1.3rem;
    letter-spacing: .05em !important;
    padding-top: 2.0rem;
    margin-top: 2.0rem;
  }
  .architecture-intro__jma__info__heading::before {
    width: 100%;
  }
  .architecture-intro__jma__info__heading span {
    font-size: calc(16 / 13 * 1em);
    margin-bottom: 1.5rem;
  }
  .architecture-intro__jma__photo {
    width: calc(116 / 280 * 100%);
    margin-right: 0;
  }
  .architecture-contents {
    padding-block: 5.0rem 8.0rem;
  }
  .architecture-contents__head__detail {
    width: 100%;
  }
  .architecture-contents__head__detail__photo {
    width: calc(140 / 320 * 100%);
  }
  .architecture-contents__head__detail__desc {
    width: calc(160 / 320 * 100%);
    font-size: 1.2rem;
    line-height: 1.66666667;
    margin-top: -.5em;
  }
  .architecture-contents__head__visual {
    width: 100%;
    margin-top: 7.0rem;
  }
  .architecture-contents__landscape {
    margin-top: 7.0rem;
  }
  .architecture-contents__landscape__detail {
    width: 100%;
  }
  .architecture-contents__landscape__detail__photo {
    margin-top: 6.0rem;
    overflow: clip;
  }
  .architecture-contents__landscape__detail__photo__item:nth-of-type(1) {
    width: calc(106 / 320 * 100%);
    aspect-ratio: 106 / 142;
  }
  .architecture-contents__landscape__detail__photo__item:nth-of-type(2) {
    width: calc(204 / 320 * 100%);
    aspect-ratio: 204 / 142;
  }
  .architecture-contents__landscape__detail__photo img {
    object-fit: cover;
    object-position: center center;
    width: 100%;
    height: 100%;
  }
  .architecture-contents__landscape__solso {
    width: 100%;
    margin-top: 3.0rem;
  }
  .architecture-contents__landscape__solso__detail {
    margin-top: 4.0rem;
  }
  .architecture-contents__landscape__solso__detail__logo {
    width: calc(118 / 320 * 100%);
  }
  .architecture-contents__landscape__solso__detail__desc {
    font-size: 1.2rem;
    line-height: 1.66666667;
    margin-top: 2.5rem;
  } */
}




/*  共通
--------------------------------------------------*/
.sec-heading {
  font-size: 2.6rem;
  letter-spacing: .1em;
  line-height: 1.75;
  color: var(--color-deep);
}
.sec-heading[data-color="white"] {
  color: var(--white);
}
.sec-desc {
  font-size: 1.4rem;
  letter-spacing: .1em;
  line-height: 2.28571429;
}
.sec-desc[data-color="white"] {
  color: var(--white);
}
.sec-heading + .sec-desc {
  margin-top: 3.0rem;
}
@media screen and (max-width: 767px){
  .sec-heading {
    font-size: 2.2rem;
    line-height: 1.54545455;
  }
  .sec-desc {
    line-height: 1.75;
  }
  .sec-heading + .sec-desc {
    margin-top: 2.5rem;
  }
}




/*  l-commonspace
--------------------------------------------------*/
.l-commonspace {
  position: relative;
}
.commonspace-visual {
  position: relative;
  width: 100%;
}
.commonspace-index {
  padding-block: 20.0rem 17.0rem;
}
.commonspace-detail {
  padding-block: 11.0rem 25.0rem;
  background: var(--color-medium);
}
@media screen and (max-width: 767px){
  .commonspace-visual {
    overflow: clip;
    aspect-ratio: 380 / 280;
  }
  .commonspace-visual img {
    object-fit: cover;
    object-position: center center;
    width: 100%;
    height: 100%;
  }
  .commonspace-index {
    padding-block: 8.0rem 10.0rem;
  }
  .commonspace-detail {
    padding-block: 6.0rem 9.0rem;
  }
}




/*  l-special
--------------------------------------------------*/
.l-special {
  position: relative;
}
.special-detail {
  padding-block: 11.0rem 25.0rem;
  background: var(--white);
}
@media screen and (max-width: 767px){
  .special-detail {
    padding-block: 6.0rem 9.0rem;
  }
}





/*  l-view
--------------------------------------------------*/
.l-view {
  position: relative;
}
.view-head {
  position: relative;
  width: 100%;
}
.view-head__photo {
  width: calc(1200 / 1920 * 100%);
}
.view-head__detail {
  width: calc(540 / 1920 * 100%);
}
.view-visual {
  position: relative;
  width: 100%;
  margin-top: 25.0rem;
}
.view-detail {
  padding-block: 11.0rem 20.0rem;
}
@media screen and (max-width: 767px){
  .view-head__photo {
    width: 100%;
  }
  .view-head__detail {
    width: calc(320 / 380 * 100%);
    margin-inline: auto;
    padding-top: 6.0rem;
  }
  .view-visual {
    position: relative;
    width: 100%;
    margin-top: 9.0rem;
  }
  .view-detail {
    padding-block: 6.0rem 12.0rem;
  }
}