main{
  padding-top: 0;
}


/* ===== MV下 キャンペーン特典帯（Figma: Group 45） =====
   PC は 1400px、SP は 375px のアートボードの寸法を % に換算してそのまま再現。
   padding / margin の % は親要素の「幅」基準なので、画面幅に比例して全体が拡縮する。 */
.campaign__block--01{
  background: #dcdddd;
  padding: 2.428571% 0 1.646693%; /* 上34px / 下23.05px ÷ 1400px */
}
.campaign__block--02{
  background: #9fa0a0;
  padding: 2.785714% 0 3.656934%; /* 上39px / 下51.20px ÷ 1400px */
}
.campaign__block--03{
  background: #107170;
  padding: 4.285714% 0 4.233699%; /* 上60px / 下59.27px ÷ 1400px */
}
.campaign__block--01 .campaign__img{
  width: 71.822157%;    /* 1005.51px ÷ 1400px */
  margin-left: 14.571429%; /* 204px ÷ 1400px */
}
.campaign__block--02 .campaign__img{
  width: 70.214251%;    /* 983.00px ÷ 1400px */
  margin-left: 14.785714%; /* 207px ÷ 1400px */
}
.campaign__block--03 .campaign__img{
  width: 70.290819%;    /* 984.07px ÷ 1400px */
  margin-left: 14.857143%; /* 208px ÷ 1400px */
}

@media screen and (max-width: 770px){
  .campaign__block--01{
    padding: 6.666667% 0 8.773333%; /* 上25px / 下32.90px ÷ 375px */
  }
  .campaign__block--02{
    padding: 5.333333% 0 5.653333%; /* 上20px / 下21.20px ÷ 375px */
  }
  .campaign__block--03{
    padding: 8.8% 0 4.277333%;      /* 上33px / 下16.04px ÷ 375px */
  }
  .campaign__block--01 .campaign__img{
    width: 89.733333%;    /* 336.50px ÷ 375px */
    margin-left: 5.066667%;  /* 19px ÷ 375px */
  }
  .campaign__block--02 .campaign__img{
    width: 84.933333%;    /* 318.50px ÷ 375px */
    margin-left: 7.733333%;  /* 29px ÷ 375px */
  }
  .campaign__block--03 .campaign__img{
    width: 85.333333%;    /* 320.00px ÷ 375px */
    margin-left: 7.466667%;  /* 28px ÷ 375px */
  }
}


#sec1{
  position: relative;
  padding: 120px 0;
}
#sec1 .conte .wrap:nth-child(1){
  width: 980px;
  margin-inline: auto;
}

@media(max-width:770px){
  #sec1 .conte .wrap:nth-child(1){
    width: 90%;
  }
}


.sec_about_list{
  display: flex;
  gap:16px;
  margin-top: 24px;
  justify-content: center;
  max-width: 840px;
  margin-inline: auto;
}

@media(max-width:770px){
  .sec_about_list{
    flex-direction: column;
    width: 80%;
  }
}

.sec_referal_title{
  text-align: center;
  margin-top: 50px;
}

@media(max-width:770px){
  .sec_referal_title{
    width: 100%;
    margin-inline: auto;
  }
}

.sec_referal_campaign{
  background: #d7973f;
  position: relative;
  padding-block: 24px;
  padding-left: 30px;
  margin-top:30px;
}

@media(max-width:770px){
  .sec_referal_campaign{
    width: 100%;
    margin-inline: auto;
    padding-left: 15px;
  }
}

.sec_referal_campaign .amazon_card{
  display: block;
  position: absolute;
  top: -45%;
  right: 0;
  width: 188px;
  height: 124px;
  z-index: 5;
}

@media(max-width:1100px){
  .sec_referal_campaign .amazon_card{
    width: 17.09vw;
    height: 11.272727vw; 
  }
}

@media(max-width:770px){
  .sec_referal_campaign .amazon_card{
    width: 30.13333vw;
    height: 18.666vw;
    top:4.26666vw;;
  }
}


.sec_referal_campaign .sec_referal_campaign_text{
  font-size: 28px;
  font-weight: 500;
  color: #fff;
  letter-spacing: 0;
}

@media(max-width:1100px){
  .sec_referal_campaign .sec_referal_campaign_text{
    font-size: 2.4vw;
  }
}

@media(max-width:770px){
  .sec_referal_campaign .sec_referal_campaign_text{
    font-size: 4.2vw;
  }
}

.sec_referal_campaign .sec_referal_campaign_text em{
  color:#ff0000;
  text-shadow:
    1px 1px 0 #fff,
   -1px 1px 0 #fff,
    1px -1px 0 #fff,
   -1px -1px 0 #fff;
   font-style: normal;
}

.bg{
  background: #d7973f;
}

.bg-orange{
  background: #d7973f;
}



#sec2 .conte .wrap,
#sec3 .conte .wrap{
  max-width: 950px;
  width:90%;
  margin-left: auto;
  margin-right: auto;
  padding-block: 55px 0px;
}

#sec3 .conte .wrap{
  padding-block: 55px 80px;
}
#sec2 .conte .wrap._02{
  margin-top: 57.5px;
}

.property_title{
  max-width: 528px;
  width:90%;
  margin-inline: auto;
}

.property_subtitle{
  font-size: 37px;
  font-weight: bold;
  text-align: center;
  margin-top: 20px;
  color: #fff;
}

@media(max-width:770px){
  .property_subtitle{
    font-size: 3.73333vw;
  }
}
.property_content{
  display: flex;
  align-items: baseline;
  gap: 20px;
  margin-top: 35px;
  margin-inline: auto;
  max-width: 830px;
  width:90vw;
  position: relative;
}

@media(max-width:770px){
  .property_content{
    width: 90%;
    flex-direction: column;
  }
}

.property_typo{
  width: 58px;
  position: absolute;
  left: -7%;
  bottom: 0;
}
@media(max-width:1100px){
  .property_typo{
    width: 5.27272727vw;
    position: absolute;
    left: -7%;
    bottom: 0;
  }
}


.property_floormap{
  width: 386px;
}
.property_images{
  width: 421px;
}
.property_floormap.--secondary{
  width: 300px;
}
.property_images.--secondary{
  width: 464px;
}

@media(max-width:1100px){
  .property_typo{
    width: 5.27272727vw;
    position: absolute;
    left: -7%;
    bottom: 0;
  }
  .property_floormap{
    width: 35.0909vw;
  }
  .property_images{
    width: 38.2727vw;
  }
  .property_floormap.--secondary{
    /*width: 27.2727vw;*/
    width: 31.2727vw;
  }
  .property_images.--secondary{
    width: 42.18181vw;
  }
}

@media(max-width:1000px){
  .property_floormap.--secondary{
    width: 36.2727vw;
  }
}

@media(max-width:770px){
  .property_floormap,
  .property_images,
  .property_floormap.--secondary,
  .property_images.--secondary{
    width: 100%;
  }
}

.property_typo.--secondary{
  left: auto;
  right: -3%;
}
@media(max-width:1100px){
  .property_typo.--secondary{
    right: -1%;
  }
}
@media(max-width:770px){
  .property_typo.--secondary{
    right: -8%;
  }
}

.property_price{
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
  margin-top: 40px;
}

@media(max-width:770px){
  .property_price{
    flex-direction: column;
    gap: 4.26666vw;
  }
}

.property_floor_type{
  font-size: 30px;
  font-weight: bold;
  letter-spacing: -0.006em;
  width:122px;
  height:60px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  color:#d7973f;
}
.property_floor_rent{
  font-size: 18px;
  font-weight: bold;
  color: #fff;
}

@media(max-width:770px){
  .property_floor_rent{
    font-size: 3.2vw;
  }
}
.property_floor_price{
  font-size: 63px;
  font-weight: bold;
  line-height: 1.1;
  color: #fff;
}

@media(max-width:770px){
  .property_floor_price{
    font-size: 10.66666vw;
  }
}

.property_info{
  max-width: 900px;
  width:90%;
  margin-inline: auto;
  margin-top: 30px;

}

.property_info_title{
  font-size: 14px;
  font-weight: 400;
  color: #fff;
}

.property_info_content{
  font-size: 14px;
  font-weight: 400;
  color: #fff;
  letter-spacing: -0.05em;
  text-align: justify;
}

@media(max-width:770px){
  .property_info_content{
    text-align: justify;
  }
}


#sec3{
  padding-bottom: 115px;
  background: #fff;
  margin-bottom: 125px;
}

@media(max-width:1400px){
  #head{
    padding: 5.35vw 0;
  }
  #head .lists{
    width: 70vw;
  }
  #sec1{
    padding: 8.57vw 0;
  }
  #sec1 .conte .wrap:nth-child(1){
    width: 82.14285714285714vw;
  }
  #sec1 .conte .wrap:nth-child(2){
    width: 82.14285714285714vw;
    margin-top: 6.714285714285714vw;
  }
  #sec1 .conte .wrap:nth-child(3){
    width: 76.78571428571429vw;
    margin-top: 6.714285714285714vw;
  }
  #sec2{
    padding-bottom: 8.21vw;
    margin-bottom: 8.21vw;
  }
  #sec2 .conte .wrap{
    width: 67.85vw;
    margin-top: 8.21vw;
  }
  #sec2 .conte .wrap._02{
    margin-top: 4.10vw;
  }
  #map{
    width: 85.71vw;
    margin-top: 8.57vw;
    margin-bottom: 8.57vw;
    padding-bottom: 8.57vw;
  }
}
@media(max-width:770px){
  #head{
    padding: 9.06vw 0;
  }
  #head .lists{
    width: 80vw;
    flex-direction: column;
    gap: 6vw;
  }
  #head .lists li{
    width: 100%;
  }

  #sec1{
    padding: 10.66vw 0;
  }

  #sec2{
    padding-bottom: 0;
    margin-bottom: 0;
  }
  #sec2 .conte .wrap{
    width: 90vw;
    margin-top: 0vw;
  }

  #sec3{
    margin-bottom: 0;
  }
}


/* レスポンシブ */
.pc{
  display: block !important;
}
@media screen and (max-width: 770px){
  .pc{
    display: none !important;
  }
}
.sp{
  display: none !important;
}
@media screen and (max-width: 770px){
  .sp{
    display: block !important;
  }
}


/* ===== 物件セクション共通（Figma: sec2=210:758 / sec3=226:2152 / sec4=226:2180） ===== */
.bg-teal{
  background: #107170;
}

#sec2 .property_floor_type,
#sec3 .property_floor_type,
#sec4 .property_floor_type{
  color: #107170;
}

/* Figma のトラッキング指定（3セクション共通） */
.property_floor_rent,
.property_floor_price,
.property_info_title{
  letter-spacing: 1.28px;
}

/* 地図＋住所（sec2 / sec3 / sec4 共通） */
.property_map{
  max-width: 855px;
  width: 90%;
  margin: 64px auto 0;
  text-align: center;
}
.property_map_address{
  margin-top: 24px;
  font-size: 20px;
  letter-spacing: -0.7px;
  color: #fff;
}

/* Figma では物件ブロック同士が余白なしで隣接するため、
   セクション間の余白は落とし、最終ブロックの sec4 だけが下余白を持つ */
#sec2,
#sec3{
  padding-bottom: 0;
  margin-bottom: 0;
}


/* ===== sec2: Re-Rooms 若草町（Figma: 210:758） ===== */
/* 1400px以下で付いていた wrap の上マージンは Figma にないため打ち消し、
   幅も sec3 / sec4 と同じ 90% に揃える */
#sec2 .conte .wrap{
  width: 90%;
  margin-top: 0;
}
#sec2 .conte .wrap._02{
  margin-top: 57.5px;   /* 下部スペーサー（57.5px + wrapのpadding-top 55px = 112.5px） */
}

#sec2 .property_content{
  max-width: 827px;     /* 間取り386px + 余白20px + 写真421px */
  width: 100%;
  margin: 35px auto 0;
  gap: 2.4184%;         /* 20px ÷ 827px */
  align-items: flex-end;
}
#sec2 .property_floormap{
  width: 46.6748%;      /* 386px ÷ 827px */
}
#sec2 .property_images{
  width: 50.9069%;      /* 421px ÷ 827px */
}


/* ===== sec3: Re-Rooms 浜脇（Figma: 226:2152） ===== */
#sec3 .property_content{
  max-width: 839px;     /* 間取り300px + 余白20px + 写真519px */
  width: 100%;
  margin: 35px auto 0;
  gap: 2.3838%;         /* 20px ÷ 839px */
  align-items: flex-end;
}
#sec3 .property_floormap{
  width: 35.7568%;      /* 300px ÷ 839px */
}
#sec3 .property_images{
  width: 61.8594%;      /* 519px ÷ 839px */
}


/* ===== sec4: ラインハイム亀川（Figma: 226:2180） ===== */
#sec4{
  background: #fff;
  margin-bottom: 125px;
}
#sec4 .conte .wrap{
  max-width: 950px;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
  padding-block: 55px 80px;
}

#sec4 .property_content{
  max-width: 894px;
  width: 100%;
  margin: 64px auto 0;
  gap: 2.6854%;         /* 24px ÷ 893.72px */
  align-items: flex-start;
}
#sec4 .property_floormap{
  width: 66.1281%;      /* 591px ÷ 893.72px */
}
#sec4 .property_images{
  width: 31.1865%;      /* 278.72px ÷ 893.72px */
}

#sec4 .property_price{
  margin-top: 104px;    /* 間取り画像側の下余白64px + 賃料ブロックの上余白40px */
}

@media(max-width:1400px){
  #sec4{
    margin-bottom: 8.928571vw;  /* 125px ÷ 1400px */
  }
}

/* wrap が 950px 固定でなくなる幅から、住所テキストも幅に追従させる */
@media(max-width:1000px){
  .property_map_address{
    font-size: 1.9vw;
  }
}

/* SP は段落ち */
@media(max-width:770px){
 
  #sec2 .property_content,
  #sec3 .property_content,
  #sec4 .property_content{
    flex-direction: column;
    align-items: center;
    gap: 5.33333vw;
    margin-top: 8.53333vw;
  }
  #sec2 .property_floormap,
  #sec2 .property_images,
  #sec3 .property_floormap,
  #sec3 .property_images,
  #sec4 .property_floormap,
  #sec4 .property_images{
    width: 100%;
  }
  .property_map{
    width: 100%;
    margin-top: 8.53333vw;
  }
  .property_map_address{
    margin-top: 4.26666vw;
    font-size: 3.4vw;
  }
}