
/*らしくのサービス*/
.service_wrap { width:95%; margin:40px auto 0 auto; display:flex; flex-wrap:wrap; }
.service_wrap li { width:100%; border:1px solid #E2E2E2; border-radius:10px; margin-bottom:30px; text-align:center; padding-bottom:30px; }
.service_wrap li:last-child { margin-bottom:0; }
@media only screen and (min-width:768px) {
  .service_wrap { width:1080px; justify-content:space-between; margin-top:0; }
  .service_wrap li { width:33%; border-top:none; border:none; border-radius:initial; margin-bottom:0; padding-bottom:16px; }
  .service_wrap li:nth-child(1) { border-left:1px solid #E2E2E2; }
  .service_wrap li:nth-child(2) { border-right:1px solid #E2E2E2; border-left:1px solid #E2E2E2; }
  .service_wrap li:nth-child(3) { border-right:1px solid #E2E2E2; }
  .service_wrap li:nth-child(1) img { width:80px; }
  .service_wrap li:nth-child(2) img { width:80px; }
  .service_wrap li:nth-child(3) img { width:80px; }
}
@media only screen and (min-width:1200px) {
  .service_wrap { margin-top:20px; }
  .title_wrap.double { margin-bottom:40px; }
}

.box_contents.features .title_wrap .title h2 { margin-bottom:20px; font-family: 'GenJyuuGothic-Bold'; letter-spacing: 0.03em; }
.title_wrap.sale .bold.black_primary { font-weight:normal; }
.title_wrap.sale .h2_detail { width:100%; }
@media only screen and (min-width:1000px) {
  .title_wrap.double { width:100%; display:flex; margin:0 auto 60px auto; padding-top:0; flex-wrap:initial; align-items: flex-end; } 
  .title_wrap.double.features { flex-wrap:wrap; }
  .title_wrap.double h2 { margin-bottom:0; }
  .title_wrap.double h2.reform { margin-bottom:35px; }
  .title_wrap.double .title {  width:auto;  }
  .title_wrap.double p { width:auto; display:inline; font-size:18px; line-height:3rem; color:#3B3B3B; }
  .title_wrap.double.features .title { width:100%; }
  .title_wrap.double.features p { width:100%; }
  .title_wrap.sale { width:100%; margin-bottom:0; align-items: flex-end;}
  .title_wrap.sale h2 { margin-bottom:35px; }
  .title_wrap.sale .title { width:30%; }
  .title_wrap.sale p { width:62%; font-size:18px; line-height:3rem; }
  .title_wrap.sale p .bold { font-family: 'GenJyuuGothic-Bold'; }
  .title_wrap.shop .title  { width:30%; }
  .title_wrap.shop .title h2 { margin-bottom:0; }
  .title_wrap.sale .h2_detail { width:auto; }
  .title_wrap.sale .bold.black_primary { font-family: 'GenJyuuGothic-Bold'; }
}
@media only screen and (min-width:1200px) {
  .title_wrap.double { margin-bottom:40px; }
  .title_wrap.double .title {  width:51%;  }
  .title_wrap.double.features p { width:45%; }
  .title_wrap.double.features .title { width:55%; }
  .title_wrap.double p { width:auto; }
  .title_wrap.sale { align-items:center;}
  .title_wrap.sale p { width:53%; }

}


.service_wrap li h3 { width:100%; margin:37px 0 15px 0; font-family: 'GenJyuuGothic-Bold'; }
.service_wrap li span { width:240px; height:50px; display:block; margin:25px auto 30px auto; font-family:'GenJyuuGothic-Bold'; letter-spacing:0.1em;  line-height:50px; text-align:center; border-radius: 9999px; background:#5C9062; color:#fff; }
@media only screen and (min-width:768px) {
  .service_wrap li h3 { width:100%; margin:20px 0 20px 0; }
  .service_wrap li span { width:240px; height:50px; display:block; margin:25px auto 30px auto; font-family:'GenJyuuGothic-Bold'; letter-spacing:0.1em;  line-height:50px; text-align:center; border-radius: 9999px; background:#5C9062; color:#fff; }
}
@media only screen and (min-width:1200px) {
  .service_wrap li h3 { width:100%; margin:37px 0 20px 0; }
  .service_wrap li span { width:240px; height:50px; display:block; margin:25px auto 30px auto; font-family:'GenJyuuGothic-Bold'; letter-spacing:0.1em;  line-height:50px; text-align:center; border-radius: 9999px; background:#5C9062; color:#fff; }
}



.box_contents.service { padding:80px 0; margin-top:0; }
.box_contents.service h2 { letter-spacing:0.1em;}
@media only screen and (min-width:768px) {
  .box_contents.service { padding:105px 0 120px 0; margin-bottom:0;}
  .service_wrap li h3 { margin-bottom:20px;}
}
@media only screen and (min-width:1200px) {
  .box_contents.service { padding:120px 0; }


    
}

/*住まいを探す*/
.button_medium {
  width: 240px;
  line-height: 49px;
  font-size: 16px;
  font-family: 'GenJyuuGothic-Bold';
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  letter-spacing: 0.1em;
  border-radius: 9999px;
  border: 1px solid #5C9062; /* ボーダーの色 */
  color: #fff; /* 初期文字色を白に設定 */
  background: #5C9062; /* 初期背景色 */
  display: block;
  margin: 10px auto 0 auto;
  position: relative;
  transition: background-color 0.3s ease;
}

.button_medium::before {
  content: "";
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  background-image: url('../../img/arrow_right_w.svg');
  background-size: contain;
  background-repeat: no-repeat;
  transition: right 0.3s ease;
}

.button_medium:hover {
  background: #fff; /* ホバー時の背景色 */
  color: #5C9062; /* ホバー時の文字色 */
  transition: background-color 0.3s ease;
}

.button_medium:hover::before {
  right: 12px; /* 矢印の位置を変更 */
  background-image: url('../../img/arrow_right_g.svg'); /* ホバー時の矢印 */
}




/*自宅の相場を見る*/
.button_medium.blue {
  border: 1px solid #5481A2;
  color: #fff; /* 初期文字色 */
  background: #5481A2;
  display: block;
  margin: 10px auto 0 auto;
  position: relative;
  letter-spacing: 0.1em;
  transition: background-color 0.3s ease, color 0.3s ease;
}

.button_medium.blue::before {
  content: "";
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  background-image: url('../../img/arrow_right_w.svg');
  background-size: contain;
  background-repeat: no-repeat;
  transition: right 0.3s ease;
}

.button_medium.blue:hover {
  background: #fff; /* ホバー時の背景色 */
  color: #5481A2; /* ホバー時の文字色 */
}

.button_medium.blue:hover::before {
  right: 12px; /* ホバー時の矢印の位置 */
  background-image: url('../../img/arrow_right_b.svg'); /* ホバー時の矢印 */
}


.button_medium.yellow {
  border: 1px solid #D6B540; /* ボーダーの色 */
  color: #fff; /* 初期文字色を白に設定 */
  background: #D6B540; /* 初期背景色 */
  display: block;
  margin: 10px auto 0 auto;
  position: relative;
  letter-spacing: 0.1em;
  transition: background-color 0.3s ease, color 0.3s ease;/* ホバー時の背景色変化にトランジションを追加 */
}

.button_medium.yellow::before {
  content: "";
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  background-image: url('../../img/arrow_right_w.svg');
  background-size: contain;
  background-repeat: no-repeat;
  transition: right 0.3s ease; /* 矢印の位置変化にトランジションを追加 */
}

.button_medium.yellow:hover {
  background: #fff; /* ホバー時の背景色 */
  color: #D6B540; /* ホバー時の文字色 */
}

.button_medium.yellow:hover::before {
  right: 12px; /* 矢印の位置を変更 */
  background-image: url('../../img/arrow_right_y.svg'); /* ホバー時の矢印 */
}


@media only screen and (min-width:800px) {
  .button_medium { width:200px; margin-top:20px; font-size:13px; }
  .button_medium.blue { width:200px; margin-top:20px; }
  .button_medium.yellow { width:200px; margin-top:20px; }

}

@media only screen and (min-width:1000px) {
  .button_medium { width:240px; font-size:16px;margin-top:20px; transition: background-color 0.3s ease;  }
  .button_medium.blue { width:240px; font-size:16px; margin-top:20px; transition: background-color 0.3s ease; }
  .button_medium.yellow { width:240px; font-size:16px; margin-top:20px; transition: background-color 0.3s ease; }
}





  /*物件へのお問い合わせ*/
  .box_contents_shop { width:100%; padding:35px 5% 80px 5%; color:#1B1B1B; margin-top:40px; background:url(/img/bg_contact.png); background-repeat:no-repeat; background-size:cover; }
  .box_contents_shop .inner { margin-bottom:0; background:#fff; padding:40px 26px 65px 26px;}
  .box_contents_shop .shop_title { width:100%; text-align:center; font-size:24px; color:#fff; margin-bottom:16px; letter-spacing:0.025em; }
  .shop_name { width:100%; text-align:center; font-size:24px;  margin-bottom:28px; }
  .photo_shop { width:100%; margin-bottom:20px; }
  .shop_wrap .shop_wrap_info .tel_pc { width:100%; display:flex; }
  .box_contents .inner .shop_wrap { width:100%; }
  .shop_wrap .shop_wrap_info { width:100%; margin-bottom:50px; }
  .shop_wrap .shop_wrap_info .photo_shop { width:100%; }
  .shop_wrap .shop_wrap_info .tel_pc dt { width:40px; }
  .shop_wrap .shop_wrap_info .tel_pc dt img { width:32px; }
  .shop_wrap .shop_wrap_info .tel_pc dd { margin-left:0; }

  .shop_wrap .shop_wrap_info .tel_pc dd a { width:100%; display:inline-block; text-align:center; font-size:28px; letter-spacing:0.05em; }/*2/18横山修正*/

  @media screen and (min-width:320px){
    .shop_wrap .shop_wrap_info .tel_pc dd span { width:100%; display:inline-block; text-align:center; font-size:28px; }
  }
  @media screen and (min-width:375px){
    .shop_wrap .shop_wrap_info .tel_pc dd span { font-size:32px; }
    .shop_wrap .shop_wrap_info .tel_pc dd a { font-size:32px; }/*2/18横山修正*/
  }

  .shop_wrap .shop_wrap_info .tel_pc dd small { width:100%; display:inline-block; text-align:center; margin-top:5px; line-height:1.7; }
  .shop_wrap .shop_wrap_info .tel_pc dd span.order4 { font-size:14px; line-height:2.0rem; }
  .form_section_title { font-size:18px; letter-spacing:0.075em; }
  @media screen and (min-width:768px){
    .box_contents_shop { margin-top:0; }
    .box_contents_shop .inner { border-radius:12px;  }
    .shop_wrap .shop_wrap_info { margin-bottom:initial; margin-bottom:24px;}
    .shop_wrap .shop_wrap_info .tel_pc dd span { font-size:32px; line-height:32px; }
    .shop_wrap .shop_wrap_info .tel_pc dd a { margin-left:5px; pointer-events:none; font-size:32px; line-height:32px; }/*2/18横山修正*/
    .shop_wrap .shop_wrap_info .tel_pc dt { width:40px; height:32px; }
    .shop_wrap .shop_wrap_info .tel_pc { width:100%; display:flex; }

  }


  @media screen and (min-width:1280px){
    .box_contents_shop { margin-bottom:50px; flex-wrap:wrap; padding:80px 0 114px 0; margin-top:40px; }
    .box_contents_shop .shop_title { width:100%; text-align:center; font-size:32px; color:#fff; margin-bottom:40px; display:inline-block; letter-spacing:0.04em; }
    .box_contents_shop .inner { max-width:1280px; margin:0 auto; padding:80px 0; }
    .photo_shop { width:420px;}
    .shop_wrap .shop_wrap_info .tel_pc { width:100%; display:flex; margin-left:0; margin-bottom:24px; }
    .shop_wrap .shop_wrap_info .tel_pc dd small { margin-top:0; line-height:1.2rem; }
    .shop_wrap { width:1000px; margin:0 auto; display:flex; justify-content: space-between; align-items: flex-start; flex-wrap:wrap; }
    .shop_wrap .shop_wrap_info { width:44%; }
    .shop_wrap .shop_wrap_info:nth-child(1) { display:flex; flex-wrap:wrap; }
    .shop_wrap .shop_wrap_info:nth-child(1) .order1 { order:1; }
    .shop_wrap .shop_wrap_info:nth-child(1) .order2 { order:2; }
    .shop_wrap .shop_wrap_info:nth-child(1) .order3 { order:3; }
    .shop_wrap .shop_wrap_info:nth-child(1) .order4 { order:4; }
    .shop_wrap .shop_wrap_info:nth-child(1) .order4 .inline_pc { display:inline; }
    .shop_name { text-align:left; }
    .shop_wrap .shop_wrap_contact { width:48%; }
    .shop_wrap .shop_wrap_info .photo_shop { width:427px; }

  }


  /*住まいを探す*/
.box_contents.green { width:100%; height:auto; display:block; background:#5B8D61; padding-top:31px; padding-bottom:21px; margin-top:0; color:#1B1B1B; }
.box_contents.green .search { width:92%; margin:0 auto 0 auto; background:#fff; border-radius:9px; padding:65px 6% 60px 6%; font-size:16px; }
.box_contents.green .slider { width:100%; }
.title span.green.fontweight_spnormal { margin-bottom:10px; }
@media only screen and (min-width:768px) {
  .box_contents.green { width:100%; height:auto; padding:64px 0; margin:-5px 0 0 0; }
  .box_contents.green .search { width:94%; display:flex; flex-wrap:wrap; margin:0 auto; float:none;  padding:80px 50px; }
  .box_contents.green .search h2 { color:#1B1B1B; margin-bottom:10px;}
  .box_contents.green .search .black { font-size:18px;color:#1B1B1B; }
  .box_contents.green .search .searchbutton_wrap { width:550px; margin:0 auto 55px auto; }
  .box_contents.green .search .title_wrap { margin-bottom:15px;}
  .title_wrap_search { width:100%; margin:0 auto; }
}
@media only screen and (min-width:1200px) {
  .box_contents.green { padding:80px 0 ; }
  .box_contents.green .search { max-width:1280px; display:flex; border-radius:25px; flex-wrap:wrap; margin:0 auto; float:none;  padding:100px 90px; justify-content: space-between;}
  .box_contents.green .search h2 { margin-bottom:20px;}
  .box_contents.green .search .searchbutton_wrap { margin:0 auto 64px auto; }
  .box_contents.green .search .searchbutton_wrap { margin:0 0 72px 0; }
  .box_contents.green .search .title_wrap  { width:40%; margin-bottom:0; }
  .title_wrap_search { width:1086px; display:flex; justify-content: space-between;}

}
.box_contents.green .search h3 { width:100%; font-size:24px; letter-spacing:0.04em; font-family: 'GenJyuuGothic-Bold'; text-align:center; margin-bottom:20px; color:#5C9062;}



/*スマホ用問い合わせ*/
.contact_box_sp { width:100%; display:block; background:url(/img/contact_box_sp_bg.jpg); background-size:cover; background-repeat:no-repeat; padding:32px 22px; }
.contact_box_sp_inner { width:100%;  background:#fff; border-radius:11px; padding:40px 30px; } 

.contact_box_sp_inner span.genjyuu_bold { width:100%; color:#1B1B1B; text-align:center; font-size:17px; line-height:1.5em; display:inline-block; margin-bottom:24px; display:inline-block; letter-spacing:0.04em;}
@media screen and (min-width:375px){
  .contact_box_sp_inner span.genjyuu_bold  { font-size:21px; }
  .contact_box_sp .button_contact { width:auto; background:initial;}
  .contact_box_sp_button.bg_green .button_contact::before {background-image: url('/img/arrow_contact_w.svg'); }
}
@media screen and (min-width:414px){
  .contact_box_sp_inner span.genjyuu_bold  { font-size:22px; }
}
@media screen and (min-width:798px){
.contact_box_sp {
  width: 100%;
  display: block;
  background: url(/img/contact_box_bg.jpg);
  background-size: 100% auto;
  background-repeat: no-repeat;
  background-position: center;
  padding: 32px 22px;
}

}

.contact_box_sp_button_wrap { width:100%; display:flex; justify-content: space-between; margin:0 auto 24px auto; flex-wrap:wrap; }


.contact_box_sp_button { width:100%; height:64px; text-align: center; border-radius:32px;}
.contact_box_sp_button_wrap .button_contact { background:none; }
.contact_box_sp_button.bg_green { color: #fff; background-color: #5C9062; box-shadow: 0px 4px 0px #A7D2AB;}
.contact_box_sp_button.bg_yellow { color: #000; background-color: #FCFF56; box-shadow: 0px 4px 0px #E1E42F; margin-bottom:20px; }
.contact_box_sp_button img { width:23px; margin: 0 5px 0 0;}
.contact_box_sp_button span { font-size:20px; line-height:64px; font-family: 'GenJyuuGothic-Bold'; display:flex; align-items: center; justify-content: center;}
.contact_box_sp_button span.inline_sp { display:inline-block; }
.contact_box_sp_button span.inline_pc { display:none; }
.fav-box{ width:100%; display:flex; align-items:center; border:1px #727171 solid; height:42px; border-radius:4px;margin:12px auto;padding:11px;cursor:pointer;background-color:#fff;color:#000;}
@media screen and (min-width:414px){
  .fav-box{ width:280px; margin-bottom:0; }
}
@media screen and (min-width:798px){
.contact_box_sp_button { width:48.5%; }
}

.fav-box.on{background-color:#727171;color:#fff;}

.fav-text { text-align:40px; font-size:16px; margin-bottom:0; font-family: 'GenJyuuGothic-Bold'; font-style: normal;}
.fav-box .fav-icon { margin-top:11px; margin-left:9vw; }
.fav-box .fav-box-inner { width:auto; margin:0 auto 0 0; display:flex; align-items:center; position:relative; }/*2/18横山修正*/
.fav-box span { position:absolute;left:20vw; margin-bottom:0; white-space:nowrap; }
.kome_hissu p { font-size:16px;}
.form_list_wrap { padding-left:0; padding-right:0; }
@media screen and (min-width:798px){
  .fav-box .fav-icon { margin-top:15px; margin-left:50px; }
  .fav-box span { left:90%; }
}

@media screen and (max-width:798px){
/*.button_contact { width:initial; background:none; }*/
.button_contact:hover { background:none; }
/*.button_contact::before { background:none; }*/
.contact_box_sp_button.bg_green span{ color:#fff; }
}

@media screen and (min-width:768px){
    .contact_box_sp_inner span.genjyuu_bold { font-size:32px; letter-spacing:0.15em; line-height:44px; margin:0 0 40px 0;}
    .contact_box_sp { padding:48px 0; }
    .contact_box_sp_inner { width:90%; padding:60px 0; margin:0 auto; } 
    .contact_box_sp_button { height:90px; border-radius:45px; }
    .contact_box_sp_button_wrap { width:80%; margin-bottom:40px; }
    .contact_box_sp_button span { font-size:28px; line-height:90px; }
    .contact_box_sp_button span.inline_sp { display:none; }
    .contact_box_sp_button span.inline_pc { display:inline-block; }
    .fav-box { width:385px; height:68px; transition:0.3s; }
    .fav-box .fav-icon-off { display:inline; }
    .fav-box .fav-icon-on { display:none; }
    .fav-box:hover { background-color:rgba(114, 113, 113, 0.3); color:#1B1B1B; transition:0.3s; }
    .fav-box:hover .fav-icon-off { display:none; }
    .fav-box:hover .fav-icon-on { display:inline; }
    .fav-box.on:hover {background-color:#727171;color:#fff;}
    .fav-text { font-size:24px; letter-spacing:0.04em;}
    .kome_hissu p { font-size:16px;}
    .form_list_wrap { padding-left:initial; padding-right:initial; }

    .button_contact:hover { background:none; }
    .box_contact .button_contact:hover { background:#fff; }
    .contact_box_sp_button.bg_green .button_contact { background:none; color:#fff; }
    .contact_box_sp_button.bg_green .button_contact::before {background-image: url('/img/arrow_contact_w.svg');}

}



@media screen and (min-width:1400px){
  .contact_box_sp_inner { max-width:1280px;  }
}


.gmap {
  width: 140px;
  height: 32px;
  line-height: 32px;
  font-size: 14px;
  margin: 10px 0;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 1px solid #3B3B3B;
  border-radius: 9999px;
  letter-spacing: 0;
  color: #3B3B3B;
  background: #fff;
  transition: background 0.3s ease, color 0.3s ease; /* 背景色と文字色のトランジション */
}

.gmap::after {
  content: '';
  width: 16px;
  height: 16px;
  background-image: url(../../img/arrow_right_blacksankaku.svg);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right: 7px;
  transition: transform 0.3s ease, background-image 0.3s ease; /* 矢印の動きと色変更のトランジション */
}

.gmap:hover {
  background: #3B3B3B;
  color: #fff;
}

.gmap:hover::after {
  background-image: url(../../img/arrow_right_white.svg);
  transform: translateX(4px); /* 矢印を右に4px移動 */
}

.gmap img {
  width: 16px;
  transition: transform 0.3s ease; /* 画像のトランジション */
}

.gmap:hover img {
  transform: translateX(4px); /* ホバー時に画像を右に4px移動 */
}


