@charset "utf-8";

/*---- 共通
----------------------------------------------------------------------------*/
.topTtl { font-size:28px; }

@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 100;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 200;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 300;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Medium");
  font-weight: 400;
}
@font-face {
  font-family: "Yu Gothic";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}

/*---- ヘッダー ----------------------------------------------------------------------------*/
#gnav ul { position: relative; }
.slideBox { position: absolute; top: 48px; left: 0; display: none; width: 100%; height: 430px; background: rgba(255,255,255,0.6); z-index: 9999; }

/*realestate------*/
#gnav ul li.realestate .slideBox { padding: 35px 40px; }
#gnav ul li.realestate .slideBox .con,
#gnav ul li.management .slideBox .con { padding: 13px 21px; background:rgba(70,175,50,0.7); }
#gnav ul li.realestate .slideBox .con + .con { margin-top: 15px; }
#gnav ul li.realestate .slideBox h3,
#gnav ul li.management .slideBox h3 { padding-top: 5px; font-size: 26px; line-height: 1; color: #fff; }
#gnav ul li.realestate .slideBox .con .moreBtn a,
#gnav ul li.management .slideBox .con .moreBtn a { color: #46af32; background: #fff; }

#gnav ul li.realestate .slideBox .con .sub { margin-top: 3px; }
#gnav ul li.realestate .slideBox .con .sub .moreBtn a { min-width: inherit; font-size: 14px; }
#gnav ul li.realestate .slideBox .con .sub p + p { margin-left: 5px; }

/*construction------*/
#gnav ul li.construction .slideBox { padding: 70px 0 50px; text-align: center; }
#gnav ul li.construction .slideBox .lead { font-size: 18px; margin-bottom: 35px; }
#gnav ul li.construction .slideBox figure img { margin: 0 auto; }
#gnav ul li.construction .slideBox .moreBtn { margin-top: 40px; }

/*management------*/
#gnav ul li.management .slideBox { padding: 100px 40px; }
#gnav ul li.management .slideBox .con + .con { margin-top: 25px; }
#gnav ul li.management .slideBox .txt { margin-left: 20px; padding-top: 2px; font-size: 18px; color: #fff; }
#gnav ul li.management .slideBox .moreBtn { margin-left: auto; }

/*---- 物件検索 ----------------------------------------------------------------------------*/
.search_box { position:relative; background: url("../img/top/slide01.jpg") no-repeat center top / cover; }
.search_box .lead { width: 1000px; height: 430px; margin: 0 auto; position: relative; }
.search_box .lead span { position: absolute; top: 50%; left: 0; width: 100%; padding: 25px 0; text-align: center; font-size: 45px; color: #fff; font-family: "游ゴシック", "Yu Gothic", YuGothic; line-height: 1.5em; text-shadow: 3px 3px 5px rgba(0,0,0,0.8); -webkit-transform: translateY(-50%); transform: translateY(-50%); background:rgba(70,175,50,0.3); box-shadow: 0 0 15px rgba(70,175,50,0.6); }

.search { width:100%; padding-top:20px; background:rgba(70,175,50,0.7); }
.search h2 { margin-bottom: 15px; }
.search h2, .toggleBtn, .search_list > li > a { font-size:28px; color:#fff; }
.search_list > li a span { display: block; }
.search h2:first-letter, .toggleBtn:first-letter, .search_list > li a span:first-letter { color:#fff110; }
.search_list > li a:hover span:first-letter { color:#ed695a; }
.search h2 span { margin-left:12px; font-size:16px; }

.search h3, .search_list > li > a { line-height: 1; }
.search .search_list > li { width:18.5%; position: relative; }
.toggleBtn, .search .search_list > li > a { display: block; padding: 15px; color:#fff; border:1px solid #fff; border-bottom:none; }
.search_list > li > a:hover { color: #46af32; background: rgba(255,255,255,0.7); }
.search .search_list > li > ul { position: absolute; width: 100%; z-index: 999; border: 1px solid #fff; }
.search .slideToggle a { display: block; padding: 10px 28px 10px 10px; color: #fff; background-color:rgba(70,175,50,0.8); border-bottom: 1px solid #fff; }
.search .slideToggle:last-child a { border-bottom: 1px solid rgba(70,175,50,0.8); }
.search .slideToggle a:hover { color: #46af32; background-color:rgba(255,255,255,0.8); }

.search .search_list > li a { padding: 15px 28px 15px 15px; position: relative; }

.search .search_list > li a:after { content: ""; position: absolute; bottom: 15px; right: 10px; width: 18px; height: 1px; background: #fff; }
.search .search_list > li a:before { content: ""; position: absolute; bottom: 18px; right: 10px; width: 7px; height: 1px; background: #fff; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
.search .search_list > li a:hover:after, .search .search_list > li a:hover:before { background: #46af32; }

.search .toggleBtn { line-height: 1; cursor: pointer; }
.search .slideToggle { display: none; top: 58px; left: 0; width: 100%; font-size: 14px; }


/*---- 地図から探す ----------------------------------------------------------------------------*/
.area_search { position:relative; padding:45px 0 70px; border-bottom:1px solid #46af32; }
.area_search:before { content:""; position:absolute; width:0; height:0; top:0; left:50%; margin-left: -15px; border-style: solid; border-width: 15px 15px 0 15px; border-color: #67aa4f transparent transparent transparent; }

.area_search .topTtl { margin: 5px auto 30px; line-height: 1; }
.area_search .topTtl span { margin-left: 8px; font-size:16px; color:#46af32; }

.area_search #mapCanvas { padding-top: 50%; }

.mapArea { width:500px; height:390px; background:#ccc;}
.area_search .area_search_box { width:440px; }
.area_search .area_search_box li { width:42%; }
.area_search .area_search_box h3 { position:relative; margin:0 0 8px; padding-left:10px; font-size:18px; border-bottom:1px solid #46af32; }
.area_search .area_search_box h3:before { content:""; position:absolute; width:0; height:0; left:-8px; bottom:-9px; 
border-top:8px solid transparent; border-right:8px solid transparent;
border-bottom:8px solid transparent; border-left:8px solid #46af32; transform:rotate(45deg);}

.area_search .icoList { margin: 0 auto 15px; }
.area_search .icoList li { padding-left: 1.2em; position: relative; }
.area_search .icoList li:not(:last-child) { margin-right: 15px; }
.area_search .icoList li:after { content: "■"; position: absolute; left: 0; }
.area_search .icoList li.ico_buy:after { color: #e01414; }
.area_search .icoList li.ico_rent:after { color: #fbad16; }
.area_search .icoList li.ico_shueki:after { color: #1da3e0; }
.area_search .icoList li.ico_tochi:after { color: #46af32; }
.area_search .icoList li.ico_other:after { color: #f19ec2; }

.area_search .right { margin-top: 5px; }

/*---- PLUS SUPPOT ----------------------------------------------------------------------------*/
#support { padding:60px 0 100px; background:url(../img/top/bg_plus.png) no-repeat right top;  }
#support .topTtl { position:relative; margin-bottom:50px; padding: 6px 0 0 75px; font-size:28px; }
#support .topTtl figure { margin-left:15px; -webkit-align-items: center; align-items: center; }
#support .topTtl:before { content:""; position:absolute; 
background:url(../img/top/icon_plus.png) no-repeat center center / 100% auto; padding:28px; top:0; left:0; }

#support dl dt { padding:13px 17px; background:#e5e5e6; position: relative; cursor: pointer; }
#support dl dt h3 { display:inline-block; margin-left:20px; font-size:28px; }
#support dl dt .sub { display:inline-block; text-align:center; width:277px; padding: 11px;  font-size:28px; line-height: 1; background:#fff; }
/*#support dl dt:after { content:"詳しく見る"; position: absolute; top: 27px; right: 17px; font-size:16px; font-weight:bold; color:#46af32; }
#support dl dt.active:after { content:"閉じる"; }*/
#support dl dd { padding:40px 30px 80px; background:rgba(255,255,255,0.9); }
.boxCon { margin-bottom: -40px; }
.boxCon li { margin-bottom:50px; width:48%;}
.boxCon li h4 { margin-bottom:13px; padding-bottom: 5px; font-size:18px; border-bottom:1px solid #46af32; line-height: 1.4; }
.boxCon li h4+p { float:left; width:65%; } 
.boxCon li figure { float:right; width:130px; height:100px; margin-left: 10px; }

#support dl dd.kenchikukadan figure { width: 100%; margin: 0 auto 21px; box-shadow: 3px 3px 0 #ccc; }
#support dl dd.kenchikukadan h4 { margin: 34px auto 13px; padding-bottom: 5px; border-bottom: 1px solid #46af32; }
#support dl dd.kenchikukadan .moreBtn { margin: 34px auto 0; }
#support dl dd.kenchikukadan .moreBtn a { border: 1px solid #fff; }
#support dl dd.kenchikukadan .moreBtn a:hover { border: 1px solid #46af32; }


/*IE*/
@media all and (-ms-high-contrast: none){
}

/*----------------------------------------------------
タブレット
-----------------------------------------------------*/
@media screen and (max-width: 999px) {
  .search { padding: 20px 20px 0; }
  .search .search_list > li { width: 49%; margin-bottom: 13px; }
  .search .search_list > li a, .search .slideToggle:last-child a { font-size: 18px; line-height: 1.4; border: 1px solid #fff; background: rgba(70,175,50,.8); }
  .search .search_list > li.toggleBtn { width: 100%; padding: 0; font-size: 18px; border: none; }
  .search .search_list > li.toggleBtn > span { display: none; }
  .search .search_list > li > ul { position: static; -webkit-display: flex; -webkit-flex-wrap: wrap; -webkit-justify-content: space-between; display: flex; flex-wrap: wrap; justify-content: space-between; border: none; }
  .search .search_list > li > ul > li { width: 49%; margin-bottom: 13px; }

  .search_box .lead { width: 100%; height: 180px; }
  .search_box .lead span { font-size: 23px; }

  #support { background-size: 315px auto; }
  #support dl dt h3 { margin-left:13px; font-size:22px; }
  #support dl dt .sub { width: 180px; font-size: 18px; }
  /*#support dl dt:after { top: 25px; font-size: 13px; }*/
  #support dl dd { padding: 20px 20px 40px; }

}

/*----------------------------------------------------
スマホ
-----------------------------------------------------*/
@media screen and (max-width: 599px) {
  .search h2 { margin-bottom: 5px; font-size: 26px; }
  .search { padding: 20px 0 10px; }
  .search .search_list > li { margin-bottom: 7px; }
  .search .search_list > li a, .search .slideToggle:last-child a { font-size: 15px; }
  .search .search_list > li > ul > li { margin-bottom: 7px; }

  .area_search { padding-bottom: 55px; }
  .area_search #mapCanvas { padding-top: 75%; }
  .area_search .icoList { margin: 0 auto 15px; }
  .area_search .icoList li { font-size: 13px; }
  .area_search .right { font-size: 13px; }

  #support { padding: 60px 0; }
  #support .topTtl { margin-bottom: 34px; padding: 0 0 0 45px; font-size: 24px; }
  #support .topTtl::before { top: 5px; padding: 15px; background-size: 100% auto; }
  #support .topTtl figure { width: 30%; }

  #support dl dt { padding: 21px 13px 13px; text-align: center; }
  #support dl dt .sub { display: block; margin: 0 auto; font-size: 15px; }
  #support dl dt h3 { display: block; margin:0 auto; padding: 10px 0 0 0; line-height: 1.5; }
  /*#support dl dt:after { top: 21px; right: 13px; }*/
  #support dl dd { padding: 40px 20px 50px; }
  .boxCon li { width: 100%; margin-bottom: 40px; }
}

@media screen and (min-width: 600px) {
}

@media screen and (min-width: 1000px) {
}
