@charset "UTF-8";
.home-open {
  line-height: 0;
  margin-bottom: 2.6875rem;
  position: relative;
}
.home-open::after {
  background: url(../../images/home/image_open_ornament.svg) center center no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 2.0625rem;
  position: absolute;
  bottom: -3.375rem;
  left: calc(50% + 1.125rem);
  width: 2.0625rem;
  display: none;
}


.home-intro-block > .catch {
  font-size: 1.375rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1.273;
  margin: 0 auto 1.75rem;
  padding: 0 1.875rem;
  position: relative;
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.home-intro-block > .catch::before, .home-intro-block > .catch::after {
  background-color: var(--color-project-orange);
  content: "";
  height: 100%;
  content: "";
  position: absolute;
  top: 0;
  width: 2px;
}
.home-intro-block > .catch::before {
  left: 0;
  -webkit-transform: rotate(-18deg);
  transform: rotate(-18deg);
}
.home-intro-block > .catch::after {
  right: 0;
  -webkit-transform: rotate(18deg);
  transform: rotate(18deg);
}

.home-intro-heading span {
  font-size: 20px;
  font-weight: 500;
}

.home-intro-block {
  padding:3.875rem 0rem 5.875rem ;
  position: relative;
}
.home-intro-block::after {
  background: url(../../images/home/image_intro_ornament.png) center center no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 6.875rem;
  position: absolute;
  bottom: 0;
  left: 0.5625rem;
  width: 21.875rem;
  z-index: 2;
}

.home-intro-buttons {
  aspect-ratio: 365/835;
  position: relative;
  overflow: visible;
}
.home-intro-buttons::before {
  background: url(../../images/home/icon_tap.svg) center center no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 7.1875rem;
  position: absolute;
  top: -0.25rem;
  right: -0.3125rem;
  width: 7.1875rem;
  display: none;
}
.home-intro-buttons > .list {
  -webkit-transition-property: -webkit-transform;
  transition-property: -webkit-transform;
  transition-property: transform;
  transition-property: transform, -webkit-transform;
  -webkit-transition-duration: 0.45s;
  transition-duration: 0.45s;
  -webkit-transition-timing-function: cubic-bezier(0.68, -0.4, 0.32, 1.4);
  transition-timing-function: cubic-bezier(0.68, -0.4, 0.32, 1.4);
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  line-height: 0;
  position: absolute;
}
.home-intro-buttons > .list > button {
  background: transparent;
  border: 0;
  cursor: pointer;
  line-height: 0;
  padding: 0;
}
.home-intro-buttons > .list::after {
  content: '';
  background: url(../../images/common/icon_plus.svg) center center no-repeat;
  width: 37px;
  height: 37px;
  background-size: cover;
  position: absolute;
}
.home-intro-buttons > .list.-item01 {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 61.1%, 71% 61.1%, 71% 96.83%, 0 96.83%);
  clip-path: polygon(0 0, 100% 0, 100% 61.1%, 71% 61.1%, 71% 96.83%, 0 96.83%);
  top: 0;
  left: 0;
  -webkit-transform: translate(-0.625rem, -3.875rem);
  transform: translate(-0.625rem, -3.875rem);
  width: 54.79%;
  z-index: 1;
}
.home-intro-buttons > .list.-item01::after {
  top: 0;
  right: 7px;
}
.home-intro-buttons > .list.-item02 {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 46.19% 100%, 46.19% 67.71%, 0 67.71%);
  clip-path: polygon(0 0, 100% 0, 100% 100%, 46.19% 100%, 46.19% 67.71%, 0 67.71%);
  top: 10.06%;
  right: 0;
  -webkit-transform: translate(0.6875rem, -2.6875rem);
  transform: translate(0.6875rem, -2.6875rem);
  width: 61.43%;
  z-index: 2;
}
.home-intro-buttons > .list.-item02::after {
  top: 0;
  right: 7px;
}
.home-intro-buttons > .list.-item03 {
  -webkit-clip-path: polygon(0 0, 97.22% 0, 97.22% 41.89%, 48.41% 41.89%, 48.41% 96.85%, 0 96.85%);
  clip-path: polygon(0 0, 97.22% 0, 97.22% 41.89%, 48.41% 41.89%, 48.41% 96.85%, 0 96.85%);
  top: 25.39%;
  left: 0;
  -webkit-transform: translate(-0.5625rem, -1.9375rem);
  transform: translate(-0.5625rem, -1.9375rem);
  width: 69.42%;
  z-index: 3;
}
.home-intro-buttons > .list.-item03::after {
  top: 0;
  right: 7px;
}
.home-intro-buttons > .list.-item04 {
  -webkit-clip-path: polygon(0 15.65%, 50.62% 15.65%, 50.62% 0%, 100% 0%, 100% 100%, 27.16% 100%, 27.16% 84.35%, 0 84.35%);
  clip-path: polygon(0 15.65%, 50.62% 15.65%, 50.62% 0%, 100% 0%, 100% 100%, 27.16% 100%, 27.16% 84.35%, 0 84.35%);
  top: 31.98%;
  right: 0;
  -webkit-transform: translate(0.625rem, -0.75rem);
  transform: translate(0.625rem, -0.75rem);
  width: 66.94%;
  z-index: 4;
}
.home-intro-buttons > .list.-item04::after {
  top: 0;
  right: 7px;
}
.home-intro-buttons > .list.-item05 {
  -webkit-clip-path: polygon(0 0, 62.56% 0, 62.56% 18.99%, 96.41% 18.99%, 96.41% 96.09%, 0 96.09%);
  clip-path: polygon(0 0, 62.56% 0, 62.56% 18.99%, 96.41% 18.99%, 96.41% 96.09%, 0 96.09%);
  top: 50.9%;
  left: 0;
  -webkit-transform: translate(-0.75rem, 1rem);
  transform: translate(-0.75rem, 1rem);
  width: 53.72%;
  z-index: 5;
}
.home-intro-buttons > .list.-item05::after {
  top: 37px;
  right: 7px;
}
.home-intro-buttons > .list.-item06 {
  -webkit-clip-path: polygon(0 59.44%, 27.16% 59.44%, 27.16% 0%, 100% 0%, 100% 100%, 0 100%);
  clip-path: polygon(0 59.44%, 27.16% 59.44%, 27.16% 0%, 100% 0%, 100% 100%, 0 100%);
  top: 58.44%;
  right: 0;
  -webkit-transform: translate(0.625rem, 1.8125rem);
  transform: translate(0.625rem, 1.8125rem);
  width: 66.94%;
  z-index: 6;
}
.home-intro-buttons > .list.-item06::after {
  top: 118px;
  left: 0;
}
.home-intro-buttons > .list.-item07 {
  -webkit-clip-path: polygon(0 0, 62.56% 0, 62.56% 41.03%, 96.41% 41.03%, 96.41% 95.51%, 15.95% 95.51%, 15.95% 100%, 0 100%);
  clip-path: polygon(0 0, 62.56% 0, 62.56% 41.03%, 96.41% 41.03%, 96.41% 95.51%, 15.95% 95.51%, 15.95% 100%, 0 100%);
  top: 71.26%;
  left: 0;
  -webkit-transform: translate(-0.75rem, 3.125rem);
  transform: translate(-0.75rem, 3.125rem);
  width: 53.72%;
  z-index: 7;
}
.home-intro-buttons > .list.-item07::after {
  top: 70px;
  right: 7px;
}
.home-intro-buttons > .list.-item08 {
  -webkit-clip-path: polygon(0 47.16%, 47.01% 47.16%, 47.01% 0, 100% 0, 100% 78.98%, 50.3% 78.98%, 50.3% 100%, 0 100%);
  clip-path: polygon(0 47.16%, 47.01% 47.16%, 47.01% 0, 100% 0, 100% 78.98%, 50.3% 78.98%, 50.3% 100%, 0 100%);
  top: 78.92%;
  right: 0;
  -webkit-transform: translate(0.6875rem, 4.25rem);
  transform: translate(0.6875rem, 4.25rem);
  width: 92.01%;
  z-index: 8;
}
.home-intro-buttons > .list.-item08::after {
  bottom: 8px;
  right: calc(50% + 7px);
}
.home-intro-buttons > .list.-show {
  -webkit-transform: translate(0, 0);
  transform: translate(0, 0);
}
@media (hover: hover) {
  .home-intro-buttons > .list::after {
    transition: .3s;
  }
  .home-intro-buttons > .list:hover::after {
    transform: scale(1.25);
  }
}
.home-intro-content > .image {
  line-height: 0;
}
.home-intro-content > .heading {
  border-bottom: 1px solid var(--color-black);
  color: var(--color-project-orange);
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1.25rem;
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 1.75;
  margin-bottom: 0.75rem;
  padding: 1.0625rem 0;
  text-align: center;
}
.home-intro-content > .menu {
  border-bottom: 1px solid var(--color-black);
  margin-bottom: 0.75rem;
  padding-bottom: 1.25rem;
}
.home-intro-content > .menu > .item {
  display: grid;
  grid-template-columns: 4.58fr 5.42fr;
  gap: 0.75rem;
}
.home-intro-content > .menu > .item > .text > .title {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.5;
  margin-bottom: 0.625rem;
}
.home-intro-content > .menu > .item > .text > .list > li {
  background-color: #f1f0ec;
  display: block;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 0.75rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.5;
  margin-top: 0.1875rem;
  padding: 0.3125rem 0.5rem;
}
.home-intro-content > .menu > .item > .text > .list > li.narrow {
  letter-spacing: -0.025em;
}
.home-intro-content > .menu > .item > .text > .list > li.rate {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0.6875rem;
}
.home-intro-content > .menu > .item > .text > .list > li.rate > .title {
  min-width: 3.5em;
}
.home-intro-content > .menu > .item > .text > .list > li.rate > .star {
  color: #ff8000;
  font-size: 0.9375rem;
  font-style: normal;
  letter-spacing: 0.375rem;
}
.home-intro-content > .menu > .item > .text > .list > li.rate > .star > .white {
  color: var(--color-white);
}
.home-intro-content > .menu > .item > .image {
  line-height: 0;
  -webkit-box-ordinal-group: 0;
  -ms-flex-order: -1;
  order: -1;
}
.home-intro-content > .menu > .description {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 0.875rem;
  font-weight: 300;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-top: 0.8125rem;
}
.home-intro-content > .menu > .button {
  margin-top: 0.8125rem;
}
.home-intro-content > .menu > .button > .item {
  background-color: var(--color-project-orange);
  border-radius: 100px;
  color: var(--color-white);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0.3125rem;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 0.875rem;
  font-weight: 400;
  letter-spacing: 0.2em;
  line-height: 1;
  margin: auto;
  padding: 0.6425em 1em;
  text-align: center;
  width: 10.3125rem;
}
.home-intro-content > .menu > .button > .item::after {
  font-family: "iconfonts";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: block;
  text-decoration: inherit;
  width: 1em;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  content: var(--icon-arrow-under);
}
.home-intro-content > .button {
  margin-top: 1.625rem;
}
.home-intro-content > .button > .item {
  display: block;
  line-height: 0;
}

.home-campaign-block {
  background-color: #f1f0ec;
  margin-top: 1.4375rem;
  padding-top: 4.1875rem;
  padding-bottom: 3.625rem;
  position: relative;
}
.home-campaign-block > .layout-primary {
  position: relative;
  z-index: 2;
}
.home-campaign-block::before {
  background: url(../../images/home/image_campaign_ornament.png) center center no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 4.5rem;
  position: absolute;
  bottom: -0.9375rem;
  right: 1.125rem;
  width: 8.1875rem;
  z-index: 2;
}
.home-campaign-block::after {
  background-color: #f1f0ec;
  background-image: radial-gradient(#ffffff 50%, rgba(255, 255, 255, 0) 50%);
  background-size: 4px 4px;
  content: "";
  display: block;
  height: 72px;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 1;
}

.home-campaign > .title {
  margin-top: -6.0625rem;
  margin-bottom: 1.625rem;
  margin-left: -0.9375rem;
  width: 20.75rem;
}
.home-campaign > .campaign {
  margin: 0 0.8375rem 0.5rem;
}
.home-campaign > .campaign > .item {
  display: block;
  line-height: 0;
}
.home-campaign .countnum{
  margin-bottom: 1.625rem;
}
.home-campaign > .catch {
  font-size: 1.2rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  line-height: 1.273;
  margin: 0 auto 1.25rem;
  padding: 0 1.275rem;
  position: relative;
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  color: #FF5900;
}
.home-campaign > .catch::before, .home-campaign > .catch::after {
  background-color: #FF5900;
  content: "";
  height: calc(100% + 5px);
  content: "";
  position: absolute;
  top: 0;
  width: 2px;
}
.home-campaign > .catch::before {
  left: 0;
  -webkit-transform: rotate(-18deg);
  transform: rotate(-18deg);
}
.home-campaign > .catch::after {
  right: 0;
  -webkit-transform: rotate(18deg);
  transform: rotate(18deg);
}
.home-campaign > .button {
  margin: 0 auto 2rem;
  width: 21.125rem;
}

.home-campaign > .button > .item {
  display: block;
  line-height: 0;
  position: relative;
}

.home-campaign > .button > .item::after {
  content: '';
  background-image: url('../../images/home/button_join_shadow.svg');
  background-repeat: no-repeat;
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: -15px;
  right: -10px;
  z-index: -1;
}
@media (hover: hover) {
  .home-campaign > .button > .item > img {
    transition: transform .3s;
  }
  .home-campaign > .button > .item:hover > img {
    transform: translate(10px, 15px);
  }
}

.home-price-block {
  margin: 2.375rem 0 2.625rem;
}
.home-price .campaign{
  margin-top: 1.625rem; 
}

.home-price > .catch {
  font-size: 1.375rem;
  font-weight: 400;
  letter-spacing: 0.01em;
  line-height: 1.273;
  margin: 0 auto 1.75rem;
  padding: 0 1.875rem;
  position: relative;
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.home-price > .catch::before, .home-price > .catch::after {
  background-color: var(--color-project-orange);
  content: "";
  height: 100%;
  content: "";
  position: absolute;
  top: 0;
  width: 2px;
}
.home-price > .catch::before {
  left: 0;
  -webkit-transform: rotate(-18deg);
  transform: rotate(-18deg);
}
.home-price > .catch::after {
  right: 0;
  -webkit-transform: rotate(18deg);
  transform: rotate(18deg);
}
.home-price > .title {
  margin-bottom: 1.25rem;
  margin-left: -0.9375rem;
  width: 20.75rem;
}
.home-price > .note {
  font-size: cacl-rem(14);
  font-weight: 300;
  letter-spacing: 0.05em;
  line-height: 2;
  margin-bottom: 0.625rem;
  text-align: right;
}
.home-price > .lead-txt{
  text-align: center;
  margin-bottom: 2rem;
}
.home-price > .lead-txt a{
		color: #e60020;
		text-decoration: underline;
		font-weight: bold;
}
.home-price > .lead-txt .arrow::before{
		color: #e60020;
		text-decoration: underline;
		font-weight: bold;
}
.home-price > .plan {
  line-height: 0;
  margin-bottom: 1.6875rem;
}
.home-price > .other {
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.009em;
  line-height: 1.875;
  margin: 2.375rem auto 2.875rem;
  padding: 0 1.875rem;
  position: relative;
  text-align: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.home-price > .other::before, .home-price > .other::after {
  background-color: var(--color-project-orange);
  content: "";
  height: 100%;
  content: "";
  position: absolute;
  top: 0;
  width: 2px;
}
.home-price > .other::before {
  left: 0;
  -webkit-transform: rotate(-18deg);
  transform: rotate(-18deg);
}
.home-price > .other::after {
  right: 0;
  -webkit-transform: rotate(18deg);
  transform: rotate(18deg);
}
.home-price > .otherplan {
  line-height: 0;
  margin-bottom: 1.1875rem;
}
.home-price > .otherplan > .head {
  background: transparent;
  border: 0;
  cursor: pointer;
  display: block;
  line-height: 0;
  margin: 0;
  padding: 0;
  position: relative;
  width: 100%;
}
.home-price > .otherplan > .head > .icon {
  background-color: var(--color-white);
  border-radius: 50%;
  display: block;
  height: 25px;
  position: absolute;
  right: 2.5%;
  bottom: 25.1%;
  width: 25px;
}
.home-price > .otherplan > .head > .icon::before, .home-price > .otherplan > .head > .icon::after {
  -webkit-transition-property: width, -webkit-transform;
  transition-property: width, -webkit-transform;
  transition-property: transform, width;
  transition-property: transform, width, -webkit-transform;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-timing-function: ease;
  transition-timing-function: ease;
  -webkit-transition-delay: 0s;
  transition-delay: 0s;
  content: "";
  height: 100%;
  content: "";
  height: 3px;
  position: absolute;
  top: calc(50% - 1px);
  left: calc(50% - 10px);
  -webkit-transform-origin: center center;
  transform-origin: center center;
  width: 20px;
}
.home-price > .otherplan > .head > .icon::after {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
.home-price > .otherplan > .head.-show > .icon::after {
  -webkit-transform: rotate(0);
  transform: rotate(0);
}
.home-price > .otherplan > .content {
  display: none;
  line-height: 0;
  width: 100%;
}
.home-price > .otherplan.-plan01 > .head > .icon::before, .home-price > .otherplan.-plan01 > .head > .icon::after {
  background-color: #008278;
}
.home-price > .otherplan.-plan02 > .head > .icon::before, .home-price > .otherplan.-plan02 > .head > .icon::after {
  background-color: #c03574;
}
.home-price > .otherplan.-plan03 > .head > .icon::before, .home-price > .otherplan.-plan03 > .head > .icon::after {
  background-color: #fa961e;
}
.home-price > .otherplan.-plan04 > .head > .icon::before, .home-price > .otherplan.-plan04 > .head > .icon::after {
  background-color: #455095;
}

.home-option-block {
  margin-bottom: 1.5rem;
  padding-bottom: 17.5rem;
  position: relative;
}
.home-option-block::after {
  aspect-ratio: 393/361;
  background: url(../../images/home/image_option_ornament.png) center center no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: auto;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

.home-option > .title {
  margin-bottom: 0.8125rem;
  margin-left: -0.9375rem;
  width: 12.5625rem;
}
.home-option > .content {
  margin-left: 3.75rem;
}
.home-option > .content > .description {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.029em;
  line-height: 1.875;
  margin-bottom: 0.6875rem;
}
.home-option > .content > .note {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 0.875rem;
  font-weight: 300;
  letter-spacing: 0.009em;
  line-height: 1;
  margin-bottom: 0.625rem;
  text-align: right;
}

.home-option-item > .item {
  margin-bottom: 0.9375rem;
  position: relative;
}
.home-option-item > .item::before, .home-option-item > .item::after {
  background-color: var(--color-white);
  content: "";
  position: absolute;
  height: 12px;
  width: 12px;
}
.home-option-item > .item::before {
  -webkit-clip-path: polygon(100% 0, 0 0, 100% 100%);
  clip-path: polygon(100% 0, 0 0, 100% 100%);
  top: -1px;
  right: -1px;
}
.home-option-item > .item::after {
  -webkit-clip-path: polygon(0 0, 0% 100%, 100% 100%);
  clip-path: polygon(0 0, 0% 100%, 100% 100%);
  bottom: -1px;
  left: -1px;
}
.home-option-item > .item > .title {
  border: 2px solid var(--color-project-orange);
  border-right-width: 12px;
  color: var(--color-project-orange);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0.625rem 1rem 0.625rem 0.8125rem;
}
.home-option-item > .item > .title:last-child {
  border-bottom-width: 12px;
}
.home-option-item > .item > .title > dt {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.09em;
  line-height: 1.25;
}
.home-option-item > .item > .title > dd {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 0.875rem;
  font-weight: 400;
  letter-spacing: 0.09em;
  line-height: 1.25;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}
.home-option-item > .item > .title > dd > .main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0.4375rem;
}
.home-option-item > .item > .title > dd > .main > .price {
  font-family: "Roboto", sans-serif;
  font-size: 1.25rem;
  font-style: normal;
  font-weight: 700;
  display: block;
  letter-spacing: 0;
  line-height: 1;
}
.home-option-item > .item > .title > dd > .tax {
  display: block;
  text-align: center;
  font-size: 0.75rem;
}
.home-option-item > .item > .description {
  border: 2px solid var(--color-project-orange);
  border-top-width: 0;
  border-right-width: 12px;
  border-bottom-width: 12px;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 0.875rem;
  font-weight: 300;
  letter-spacing: 0.05em;
  line-height: 2;
  padding: 1.0625rem 0.6875rem 1.5625rem;
}

.home-about-block {
  background-color: var(--color-project-orange);
  color: var(--color-white);
  padding: 0rem 0rem 1.625rem;
}

.home-about-intro {
  background-color: var(--color-white);
  margin: 0 -0.9375rem;
}
.home-about-intro > .title {
  margin: 0 auto 1.6875rem;
  width: 20.1875rem;
}
.home-about-intro > .image {
  line-height: 0;
  margin-bottom: 1.25rem;
}

.home-about > .lead {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.583;
  margin-bottom: 1.3125rem;
}
.home-about > .description {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1.875;
  margin-bottom: 1.4375rem;
}
.home-about > .movie {
  line-height: 0;
}

.home-about-movie {
  aspect-ratio: 1 / 1;
    width: 100%;
    height: auto;
}

.home-facility-block {
  background-color: var(--color-project-orange);
  color: var(--color-white);
  padding: 5.625rem 0 4.6875rem;
}

.home-facility-content {
  margin-bottom: 2.375rem;
}
.home-facility-content:last-child {
  margin-bottom: 0;
}
.home-facility-content > .sub {
  font-family: "Roboto", sans-serif;
  font-size: 3.375rem;
  font-weight: 700;
  display: block;
  letter-spacing: 0.05em;
  line-height: 1;
  margin-bottom: 2.4375rem;
  text-align: center;
}
.home-facility-content > .title {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1.875rem;
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 1.125rem;
  line-height: 1.267;
  margin-left: 0.3125rem;
  min-height: 3.5rem;
}
.home-facility-content > .title::before {
  content: "";
  display: block;
  height: 3.5625rem;
  min-width: 4.5rem;
}
.home-facility-content > .title.-area01::before {
  background: url(../../images/home/text_area01.svg) center top no-repeat;
  background-size: cover;
}
.home-facility-content > .title.-area02::before {
  background: url(../../images/home/text_area02.svg) center top no-repeat;
  background-size: cover;
}
.home-facility-content > .title.-area03::before {
  background: url(../../images/home/text_area03.svg) center top no-repeat;
  background-size: cover;
}
.home-facility-content > .title.-area04::before {
  background: url(../../images/home/text_area04.svg) center top no-repeat;
  background-size: cover;
}
.home-facility-content > .title.-area05::before {
  background: url(../../images/home/text_area05.svg) center top no-repeat;
  background-size: cover;
}
.home-facility-content > .title.-point01::before {
  background: url(../../images/home/text_point01.svg) center top no-repeat;
  background-size: cover;
  height: 3.5625rem;
  min-width: 4.1875rem;
}
.home-facility-content > .image {
  line-height: 0;
  margin-bottom: 1.4375rem;
}
.home-facility-content > .lead {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.583;
  margin-bottom: 1.3125rem;
}
.home-facility-content > .description {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1rem;
  font-weight: 300;
  letter-spacing: 0.05em;
  line-height: 1.875;
  margin-bottom: 2.0625rem;
}

.home-facility-anchor {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 0;
  margin-left: -6px;
  margin-right: -6px;
}

.home-facility-anchor > li {
  width: 50%;
  padding-left: 6px;
  padding-right: 6px;
}

.home-facility-anchor > li > p > a {
  display: block;
  border: 1px solid #fff;
  padding: 6px 12px;
  font-size: 12px;
  font-weight: 500;
  position: relative;
}

.home-facility-anchor > li > p > a::after {
  content: '';
  background-image: url('../../images/home/icon_facility_arrow.svg');
  background-repeat: no-repeat;
  background-size: cover;
  width: 20px;
  height: 20px;
  position: absolute;
  right: 8px;
  top: calc(50% - 10px);
}



.home-facility-point {
  margin-bottom: 1.25rem;
}
.home-facility-point > .title {
  font-family: "Roboto", sans-serif;
  font-size: 1.125rem;
  font-weight: 500;
  display: block;
  line-height: 1;
  margin-bottom: 0.4375rem;
}
.home-facility-point > .list > li {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1rem;
  font-weight: 300;
  line-height: 2;
}
.home-facility-point > .list > li::before {
  content: "●";
  color: var(--color-white);
}

.home-facility-images {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 0.625rem;
  /* overflow-x: scroll; */
  margin-right: -0.9375rem;
  margin-bottom: 1rem;
  margin-left: -0.9375rem;
  padding-left: 0.9375rem;
  padding-right: 0.9375rem;
  padding-bottom: 0.9375rem;
}
.home-facility-images .content {
  /* min-width: 9.125rem; */
  width: 250px;
}
.home-facility-images .content > .image {
  line-height: 0;
  margin-bottom: 0.875rem;
}
.home-facility-images .content > .description {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 0.99rem;
  font-weight: 300;
  line-height: 1.4em;
  padding-bottom: 1rem;
}

.home-facility-divide {
  background-color: var(--color-white);
  border: 0;
  height: 1px;
  margin: 0;
  width: 100%;
}
.home-facility-divide.-dark {
  background-color: var(--color-black);
}

.home-facility-note {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 0.75rem;
  font-weight: 300;
  letter-spacing: 0.05em;
  line-height: 1;
  margin-top: 0.625rem;
  text-align: right;
}

.home-facility-scrollbar.swiper-scrollbar {
  margin-top: 20px;
  background-color: #000;
  width: 93%;
  left: 3%;  
  height: 1px;
}

.home-facility-scrollbar.swiper-scrollbar > .swiper-scrollbar-drag {
  background-color: #fff;
  height: 3px;
  top: -1px;
}

.home-support-block {
  background-color: #a0dcad;
  padding: 2.5rem 0 3rem;
  position: relative;
}
.home-support-block::after {
  background-color: #a0dcad;
  border-radius: 50%;
  content: "";
  height: 5rem;
  position: absolute;
  bottom: -2.5rem;
  left: 0;
  width: 100%;
}

.home-support-intro > .main {
  font-family: "Roboto", sans-serif;
  color: var(--color-white);
  font-size: 3.375rem;
  font-weight: 700;
  display: block;
  line-height: 1;
  margin-bottom: 2.4375rem;
  text-align: center;
}
.home-support-intro > .sub {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.583;
  margin-bottom: 1.3125rem;
}
.home-support-intro > .description {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1rem;
  font-weight: 300;
  letter-spacing: 0.05em;
  line-height: 1.875;
  margin-bottom: 2rem;
}

.home-support-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0.625rem;
  margin: 0 auto 20px;
  position: static;
}
.home-support-pagination > .swiper-pagination-bullet {
  background-color: #b4b4b4;
  border-radius: 0;
  height: 0.1875rem;
  opacity: 1;
  width: 2.8125rem;
}
.home-support-pagination > .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: var(--color-project-orange);
}


.home-program-intro-block {
  padding: 6.5625rem 0 0;
  position: relative;
  z-index: 3;
}

.home-program-intro > .title > .main {
  color: var(--color-project-orange);
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin-bottom: 1.4375rem;
}
.home-program-intro > .title > .sub {
  font-family: "Roboto", sans-serif;
  color: var(--color-project-orange);
  font-size: 3.375rem;
  font-weight: 700;
  display: block;
  line-height: 1;
  margin-bottom: 0.5rem;
}
.home-program-intro > .point {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 2.1875rem;
}
.home-program-intro > .point > .heading {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1.5rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.583;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.home-program-intro > .point > .image {
  margin-right: -0.9375rem;
  width: 12.6875rem;
}
.home-program-intro > .description {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1rem;
  font-weight: 300;
  letter-spacing: 0.05em;
  line-height: 1.875;
  margin-bottom: 2.1875rem;
}

.home-program-button {
  display: block;
  margin-bottom: 2.5rem;
  padding: 1.875rem 0;
  position: relative;
}
.home-program-button > .item {
  display: block;
  margin: auto;
  position: relative;
  z-index: 2;
  width: 14.5rem;
}
.home-program-button::after {
  background-color: #ffffff;
  background-image: radial-gradient(#d8d8d8 50%, rgba(216, 216, 216, 0) 50%);
  background-size: 4px 4px;
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1;
}

.home-program-anchor {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 1.5625rem 1rem;
  overflow: auto;
}
.home-program-anchor > li > a {
  border-bottom: 1px solid var(--color-project-orange);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0.8125rem;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 0.875rem;
  font-weight: 400;
  letter-spacing: 0.05em;
  line-height: 1;
  padding-bottom: 0.4375rem;
}
.home-program-anchor > li > a::after {
  font-family: "iconfonts";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: block;
  text-decoration: inherit;
  width: 1em;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  content: var(--icon-arrow-under-thin);
  color: var(--color-project-orange);
  font-size: 0.8125rem;
}

.home-program-content > .title > .main {
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1.125rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 1.3;
  margin-bottom: 1.0625rem;
}
.home-program-content > .title > .sub {
  font-family: "Roboto", sans-serif;
  display: block;
  font-size: 2.125rem;
  font-weight: 700;
  line-height: 1;
  margin-bottom: 0.75rem;
}

.home-program-list {
  margin: 0 -0.9375rem;
}
.home-program-list > .content {
  padding-left: 0.9375rem;
}
.home-program-list > .pagination {
  margin-top: 1.5625rem;
}

.home-program-item {
  padding-right: 0.6875rem;
  width: 14.0625rem;
}

.home-program-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0.625rem;
  margin: auto;
  position: static;
}
.home-program-pagination > .swiper-pagination-bullet {
  background-color: #b4b4b4;
  border-radius: 0;
  height: 0.1875rem;
  opacity: 1;
  width: 2.8125rem;
}
.home-program-pagination > .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: var(--color-project-orange);
}

.home-program-block {
  padding: 5rem 0 5.3125rem;
  position: relative;
}
.home-program-block > .layout-primary {
  position: relative;
  z-index: 2;
}
.home-program-block::before {
  content: "";
  display: block;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  -webkit-transform: skewY(-4.5deg);
  transform: skewY(-4.5deg);
  -webkit-transform-origin: center center;
  transform-origin: center center;
  z-index: 1;
  width: 100%;
}
.home-program-block.-training {
  padding-top: 9.375rem;
}
.home-program-block.-training::before {
  background-color: #ffffff;
}
.home-program-block.-training::after {
  background: url(../../images/home/image_aerobics_ornament.png) center center no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 8.0625rem;
  position: absolute;
  top: 3.4375rem;
  right: 0.9375rem;
  width: 14rem;
  z-index: 2;
}
.home-program-block.-aerobics::before {
  background-color: #f1ffe0;
}
.home-program-block.-martial::before {
  background-color: #ffe9f1;
}
.home-program-block.-dance::before {
  background-color: #d1e6f5;
}
.home-program-block.-yoga::before {
  background-color: #ffffff;
}
.home-program-block.-conditioning::before {
  background-color: #ffffff;
}

.home-program-block.-swim::after {
  background: url(../../images/home/image_swim_ornament.png) center center no-repeat;
  background-size: cover;
  content: "";
  display: block;
  height: 9rem;
  position: absolute;
  top: -1.375rem;
  right: 0.9375rem;
  width: 13.625rem;
  z-index: 2;
}

.home-faq-block {
  padding: 3.25rem 0 2.9375rem;
}

.home-faq-title {
  height: 12.3125rem;
  margin: 0 auto 2.1875rem;
  width: 12.3125rem;
}

.home-faq-list > .item {
  margin-bottom: 2.5rem;
}
.home-faq-list > .item:last-child {
  margin-bottom: 0;
}
.home-faq-list > .item > .title {
  cursor: pointer;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  gap: 0.75rem;
}
.home-faq-list > .item > .title::before {
  background: url(../../images/home/icon_question.svg) center center no-repeat;
  background-size: 3.5rem 3.5rem;
  content: "";
  height: 3.5rem;
  width: 3.5rem;
}
.home-faq-list > .item > .title > .main {
  border-bottom: 2px solid var(--color-project-orange);
  color: var(--color-project-orange);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  font-size: 1rem;
  font-weight: 500;
  line-height: 1.625;
  min-height: 4.5em;
  padding: 0.375em 0;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
}
.home-faq-list > .item > .title > .main > .icon {
  border: 2px solid var(--color-project-orange);
  border-radius: 50%;
  height: 1rem;
  min-width: 1rem;
}
.home-faq-list > .item > .content {
  background-color: var(--color-project-orange);
  border-radius: 5px;
  color: var(--color-white);
  display: none;
  margin-left: auto;
  padding: 1rem 0.625rem 3.75rem;
  width: calc(100% - 4.25rem);
}

.home-contact-block {
  padding: 0rem 0 3rem;
}

.home-contact > .title {
  height: 12.3125rem;
  margin: 0 auto 2.1875rem;
  width: 12.3125rem;
}
.home-contact > .button > .item {
  display: block;
  font-size: 0.875rem;
  font-weight: 400;
  margin: auto;
  text-align: center;
  text-decoration: underline;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

.home-address-block {
  background-color: #f1f0ec;
  padding: 9.75rem 0 3.3125rem;
  position: relative;
}
.home-address-block > .layout-primary {
  position: relative;
  z-index: 2;
}
.home-address-block::after {
  background-color: #f1f0ec;
  background-image: radial-gradient(#ffffff 50%, rgba(255, 255, 255, 0) 50%);
  background-size: 4px 4px;
  content: "";
  display: block;
  height: 112px;
  position: absolute;
  top: 4.5625rem;
  left: 0;
  width: 100%;
  z-index: 1;
}

.home-address {
  background-color: var(--color-white);
  padding: 3.125rem 0.9375rem 1.125rem;
}
.home-address > .image {
  margin: -10.9375rem -0.9375rem 1.6875rem;
}
.home-address > .title {
  color: var(--color-project-orange);
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1.25rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin-bottom: 0.9375rem;
}
.home-address > .site-smart-list {
  margin-bottom: 1.5625rem;
}
.home-address > .address {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 0.9375rem;
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.1em;
  margin-bottom: 0.625rem;
}
.home-address > .address::before {
  font-family: "iconfonts";
  font-style: normal;
  font-weight: normal;
  speak: none;
  display: block;
  text-decoration: inherit;
  width: 1em;
  text-align: center;
  font-variant: normal;
  text-transform: none;
  content: var(--icon-pin);
  color: var(--color-project-orange);
  font-size: 1.6875rem;
}
.home-address > .map {
  aspect-ratio: 333/240;
}
.home-address > .map > iframe {
  height: 100%;
  width: 100%;
}


.home-flow-intro-block{
  background: #FCF2EB;
  padding: 2rem 0rem;
}

.home-flow-intro > .title > .main {
  color: var(--color-project-orange);
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin-bottom: 1.4375rem;
}
.home-flow-intro > .title > .sub {
  font-family: "Roboto", sans-serif;
  color: var(--color-project-orange);
  font-size: 3.375rem;
  font-weight: 700;
  display: block;
  line-height: 1;
  margin-bottom: 0.5rem;
}

.home-flow-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 0.625rem;
  margin: auto;
  position: static;
  margin: 1rem -2.9375rem 0rem;
}
.home-flow-pagination > .swiper-pagination-bullet {
  background-color: #b4b4b4;
  border-radius: 0;
  height: 0.1875rem;
  opacity: 1;
  width: 2.8125rem;
}
.home-flow-pagination > .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: var(--color-project-orange);
}

.home-flow-list{
  margin: 0 -0.9375rem;
}
.home-flow-list > .content{
  padding-left: 5.6875rem;
}
.home-flow-item{
  text-align: center;
  padding-right: 1.6875rem;
  width: 14.0625rem;
}
.home-flow-item > .img-step{
  width: 50%;
  margin: 0 auto;
}

.home-flow-item > p{
  padding: 0.5rem 0rem;
  font-size: 0.9rem;
  height: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
}


.home-news-intro-block{
  padding: 2rem 0rem;
}

.home-news-intro > .title > .main {
  color: var(--color-project-orange);
  -webkit-font-feature-settings: "palt" 1;
  font-feature-settings: "palt" 1;
  font-size: 1rem;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.3;
  margin-bottom: 1.4375rem;
}
.home-news-intro > .title > .sub {
  font-family: "Roboto", sans-serif;
  color: var(--color-project-orange);
  font-size: 3.375rem;
  font-weight: 700;
  display: block;
  line-height: 1;
  margin-bottom: 0.5rem;
}

.home-news-intro dl > div{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.home-news-intro dl > div > dd.category{
  color: var(--color-white);
  background: var(--color-grey);
  font-size: 0.7rem;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0rem 0.5rem;
  border-radius: 5px;
  margin: 0rem 0.5rem;
  flex-basis: 100px;
  height: 1.3rem;
}
.home-news-intro dl > div > dd.text{
  width: 100%;
  font-size: 1.2rem;
  border-bottom: 1px dashed var(--color-grey);
  padding-bottom: 0.8rem;
  margin-bottom: 0.8rem;
}

/* ポップアップ箇所
============================== */

/* 背景を覆うオーバーレイ */
.overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5); /* 背景を黒の半透明に */
  z-index: 9999999;
  display: none;
}

/* ポップアップのスタイル */
.popup {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.7); /* 初期状態は少し縮小 */
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.3);
  z-index: 9999999;
  opacity: 0; /* 初期状態で透明 */
  transition: transform 0.5s ease, opacity 0.5s ease; /* アニメーションを追加 */
  display: none;
  max-width:340px;
  width: 75%;
}

.popupimg{
  width: 100%;
}

/* 閉じるボタンのスタイル (×) */
.close-btn {
  position: absolute;
  top: -40px;
  right: -30px;
  background: none;
  border: none;
  font-size: 34px;
  /* font-weight: bold; */
  color: #ffffff;
  cursor: pointer;
  transition: color 0.3s ease;
}


/* ポップアップを表示する際のクラス */
.show-popup {
  transform: translate(-50%, -50%) scale(1); /* 拡大して標準サイズに */
  opacity: 1; /* 不透明に */
}



.nav-list{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 10px 16px;
  list-style: none;
}
.nav-list li a{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 18px;
    border-radius: 999px;
    border: 1px solid #e0e0e0;
    line-height: 1;
    font-size: 1.1rem;
    position: relative;
}