@charset "utf-8";
p{color:#000;}

.positionWrap .bg {
  background-image: url("../img/plan/kv_pc.webp");
}
.positionWrap .scene01 img {
  width: 34px;
}
.positionWrap .scene02 img {
  width: 32px;
}
@media (max-width: 750px) {
  .positionWrap .bg {
    background-image: url("../img/plan/kv_sp.webp");
  }
  .positionWrap .scene01 img {
    width: 6.133vw;
  }
  .positionWrap .scene02 img {
    width: 6.133vw;
  }
}
.body_copy {
  padding: 143px 0 280px;
}
.body_copy .text_wrap {
  gap: 124px;
}
.body_copy .text_wrap img {
  top: 0;
  right: 6px;
  width: 144px;
}
.body_copy .text {
  top: 76px;
  left: -30px;
  width: 576px;
}
@media (max-width: 1000px) {
  .body_copy .text {
    width: initial;
    top: initial;
    left: initial;
  }
  .body_copy .text_wrap img {
    top: initial;
    right: initial;
  }
  .body_copy .text p {
    line-height: 2.333;
  }
}
@media (max-width: 750px) {
  .body_copy {
    padding: 16.933vw 0 26.667vw;
  }
  .body_copy .text_wrap img {
    top: initial;
    right: initial;
    margin-bottom: 18vw;
    width: 23.867vw;
  }
}

.contents_wrap{
  width:100%;
}
.contents_wrap .section{
  width:100%;
  padding:190px 0 0;
}
.inner_wrap{
  width:95%;
  max-width:1280px;
  margin:0 auto;
}
.plan_wrap{
  width:100%;
  display:flex;
  flex-wrap: wrap;
  gap:40px 3.124%;
}
.plan_wrap .plan_box{
  width:48.438%;
  height:191px;
  overflow: hidden;
}
.plan_wrap .plan_box a{
  width:100%;
  height:100%;
  background: -webkit-linear-gradient(left, #e8e8e8 0%, #9d9d9d 100%);
  background: -o-linear-gradient(left, #e8e8e8 0%, #9d9d9d 100%);
  background: linear-gradient(to right, #e8e8e8 0%, #9d9d9d 100%);
  display:flex;
  align-items: center;
  justify-content: flex-start;
  position: relative;
}
.plan_wrap .plan_box a::before{
  content:'';
  display:block;
  width:80px;
  height:1px;
  border-top:1px solid #000;
  position: absolute;
  top:50%;
  right:0;
  transform: translate(0,-50%);
}
.plan_wrap .plan_box.limited a{
  background: linear-gradient(to right, #ebcd99 0%, #967538 100%);
}
.plan_wrap .plan_box.limited a::after{
  content:'限定サイトにて公開中';
  display:flex;
  justify-content: center;
  align-items: center;
  width:159px;
  height:27px;
  font-size:14px;
  position: absolute;
  top:0;
  right:0;
  color:#fff;
  background-color:#453009;
  letter-spacing: 0.08em;
}
.plan_wrap .plan_box .type_wrap{
  width:150px;
  height:100%;
  background: -webkit-linear-gradient(left, #e8e8e8 0%, #9d9d9d 100%);
  background: -o-linear-gradient(left, #e8e8e8 0%, #9d9d9d 100%);
  background: linear-gradient(to right, #e8e8e8 0%, #9d9d9d 100%);
  display:flex;
  justify-content: center;
  align-items: center;
  margin-right:7.258%;
  z-index: 1;
}
.plan_wrap .plan_box.limited .type_wrap{
  background: -webkit-linear-gradient(left, #ebcd99 0%, #967538 100%);
  background: -o-linear-gradient(left, #ebcd99 0%, #967538 100%);
  background: linear-gradient(to right, #ebcd99 0%, #967538 100%);
}
.plan_wrap .plan_box .type_wrap .type{
  font-size:21px;
  line-height:1;
  font-family: "AGaramondPro-Regular";
  color:#333;
}
.plan_wrap .plan_box .type_wrap .type strong{
  display:block;
  font-size:76px;
  line-height:1;
  font-family: "AGaramondPro-Regular";
  margin-bottom:-2px;
  color:inherit;
  text-align: center;
}
.plan_wrap .plan_box .type_wrap .type_position {
  margin: 0 auto;
  display: block;
  text-align: center;
}
.plan_wrap .plan_box .type_wrap .type .annotation {
  z-index: initial;
  background-color: transparent;
  margin: initial;
  padding-top: initial;
  text-align: center;
  display: inline;
  padding-bottom: initial;
  vertical-align: -0.5em;
}
.plan_wrap .plan_box .p_txt_wrap{
  text-align: left;
  z-index: 1;
}
.plan_wrap .plan_box .p_txt_wrap p{
  font-size:18px;
  line-height:1;
  letter-spacing: 0.15em;
}
.plan_wrap .plan_box .p_txt_wrap p strong{
  font-size:34px;
  line-height:1;
}
.plan_wrap .plan_box .p_txt_wrap p.ldk{
  margin-bottom:35px;
  letter-spacing: 0.2em;
}
.plan_wrap .plan_box .p_txt_wrap p.ldk strong{
  letter-spacing: 0.2em;
}
.plan_wrap .plan_box .p_txt_wrap p.ldk {
  font-size: 24px;
}
.plan_wrap .plan_box .p_txt_wrap p.area span{
  display: block;
  line-height:1;
  font-size:12px;
  margin-bottom:2px;
}


@media all and (max-width: 750px) {
  .contents_wrap .section{
    padding:14.667vw 0 0;
  }
  .inner_wrap{
    width:89.333%;
    max-width:inherit;
  }
  .plan_wrap{
    display:block;
    gap:0;
  }
  .plan_wrap .plan_box{
    width:100%;
    height:27.6vw;
  }
  .plan_wrap .plan_box:nth-child(n+2){
    margin-top: calc(40 / var(--media_sp) * 100vw);
  }
  .plan_wrap .plan_box a::after{
    width:12.985%;
  }
  .plan_wrap .plan_box.limited a::after{
    width:32.687%;
    height:4.933vw;
    font-size: calc(20 / var(--media_sp) * 100vw);
  }
  .plan_wrap .plan_box .type_wrap{
    width:24.329%;
    margin-right:7.463%;
  }
  .plan_wrap .plan_box .type_wrap .type{
    font-size: calc(22.7 / var(--media_sp) * 100vw);
  }
  .plan_wrap .plan_box .type_wrap .type strong{
    font-size: calc(82.12 / var(--media_sp) * 100vw);
    margin-bottom: calc(-2 / var(--media_sp) * 100vw);
  }
  .plan_wrap .plan_box .p_txt_wrap p{
    font-size: calc(19.44 / var(--media_sp) * 100vw);
  }
  .plan_wrap .plan_box .p_txt_wrap p strong{
    font-size: calc(36.74 / var(--media_sp) * 100vw);
  }
  .plan_wrap .plan_box .p_txt_wrap p.ldk{
    margin-bottom: calc(40 / var(--media_sp) * 100vw);
  }
  .plan_wrap .plan_box .p_txt_wrap p.ldk {
   font-size: calc(26 / var(--media_sp) * 100vw);
  }
  .plan_wrap .plan_box .p_txt_wrap p.area span{
    font-size: calc(12.96 / var(--media_sp) * 100vw);
    margin-bottom: calc(1 / var(--media_sp) * 100vw);
  }
  .plan_wrap .plan_box .type_wrap .type .annotation {
    font-size: calc(12.96 / var(--media_sp) * 100vw);
  }
}

.planLegend {
  margin-top: 40px;
}
.planLegend p {
  font-size: 12px;
}
@media all and (max-width: 750px) {
  .planLegend {
    margin-top: calc(40 / var(--media_sp) * 100vw);
  }
  .planLegend p {
    font-size: calc(20 / var(--media_sp) * 100vw);
  }
}

.south_facing_link-wrap {
  background-color: #262626;
    background-color: #f5f5f5;
  margin-top: 100px;
  padding: 100px 0;
}
.south_facing_link-wrap img {
  max-width: 800px;
  margin: 0 auto;
  display: block;
}
@media all and (max-width: 750px) {
  .south_facing_link-wrap {
    margin-top: calc(70 / var(--media_sp) * 100vw);
    padding: calc(70 / var(--media_sp) * 100vw) 0;
  }
  .south_facing_link-wrap img {
    max-width: calc(670 / var(--media_sp) * 100vw);
  }
}


h2 {
  width: 100%;
  height: 100vh;
  height: 100dvh;
  position: absolute;
  top: 0;
  display: flex;
  place-content: center;
  background-color: initial;
}