@charset "utf-8";
/* CSS Document */

/*--------------------------------------------
  BASE
---------------------------------------------*/
/*==========* デフォルト指定の初期化 *============= */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline;
	list-style: none;
	font-weight: normal;
	font-style: normal;
}
img{
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	list-style: none;
	font-weight: normal;
	font-style: normal;
}

table,
dl, dt, dd{
	border-collapse: collapse;
	border-spacing: 0; }
	

/*==========* 基本設定 *============= */

html { font-size: 62.5%; }
body {
	font-family: "Outfit", Arial, Helvetica, "Zen Kaku Gothic New","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	color:#222;
	line-height:1.4;
}

/*==========* clearfix *==========*/
.clearfix:after {
  content: "."; 
  display: block; 
  height: 0; 
  clear: both; 
  visibility: hidden;
}

.clearfix { display: inline-table; }

/* Hides from IE-mac \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* End hide from IE-mac */
.clear7{font-size:0; clear:both;}

/*==========* font text *============= */
/*----------* Link *------------*/
a{ 
	color:#2aa5da; text-decoration:none;
	text-decoration:none;
    transition:0.8s;
}
a:hover{ color:#62c2ec; text-decoration:underline;}

/*==========* img *============= */

a:hover img{
	opacity:0.75;
	filter: alpha(opacity=75);
	-ms-filter: "alpha( opacity=75 )";
}
a img {
	transition:0.8s;
}

img {max-width:100%;}

/*==========* float *============= */
.fl_l{ float:left;}
.fl_r{ float:right;}
.fl_n{ float:none;}



/* screens laeger than 1250
***************************************************************************/
.sp{display:none;}
.br_sp { display: none; }
.br_tab { display: none; }

@media (min-width: 751px) {
a[href*="tel:"] { pointer-events: none; cursor: default; text-decoration: none;}
}


/*--------------------------------------------
  Header
---------------------------------------------*/
header { width: 100%; height: 135px; border-bottom: 1px solid #ddd; position: relative; }
h1 { position: absolute; left: 50px; top: 50%; transform: translateY(-50%); }
.header_info { position: absolute; right: 70px; top: 50%; transform: translateY(-50%); text-align: right; font-size: 1.8rem;}
.header_info .header_info_num { font-size: 1.6rem; }
.header_info .header_info_num a { color: #222; }


/*--------------------------------------------
  メイン画像
---------------------------------------------*/
.img_main { background: #f6f6f6; padding: 40px 0 120px; }
.img_main_area { background: url(../images/main.jpg) repeat-x center; width: 100%; height: 0; padding: 430px 0 0; }


/*--------------------------------------------
  物件メニュー
---------------------------------------------*/
.menu1 { background: #f6f6f6;}
.menu1_inner { width: 90%; max-width: 1200px; margin: 0 auto; background: url(../images/img1.png) no-repeat center 0; padding: 50px 0 70px; }
.menu1 h2 { text-align: center; font-size: 3.6rem; font-weight: 500; line-height: 2; margin: 0 0 60px; } 
.menu1 h2 .menu1_border { display: inline-block; border-bottom: 5px solid #222; border-top: 5px solid #222; padding: 5px 0 0 ; font-size: 4.8rem; font-weight: 500; line-height: 1.2;}
.menu1_list { width: 100%; max-width: 1140px; margin: 0 auto; }
.menu1_list ul { width: 100%; display: flex; justify-content:space-between; }
.menu1_list li { width: 33.33%; }
.menu1_list a { display: block; width: 100%; height: 100%; position: relative; padding: 20px 20px 0; box-sizing: border-box; }
.menu1_list .icon_sale, .menu1_list .icon_rent { position: absolute; top: 0; left: 0; width: 80px; height: 80px; border-radius: 50vh; z-index: 50; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; font-weight: bold; font-size: 1.8rem;}
.menu1_list a .icon_sale, .menu1_list a .icon_rent { color: #222; }
.menu1_list .icon_sale { background: #fff600; }
.menu1_list .icon_rent { background: #00ccff; }
.menu1_list .menu1_list_box { position: relative; z-index: 10; background: #fff; box-shadow: 0px 0px 15px -5px #999; width: 100%; display: block; aspect-ratio: 1 / 1; box-sizing: border-box; padding: 20px; }
.menu1_list a:hover .menu1_list_box { box-shadow: 0px 0px 15px -9px #777; }
.menu1_list_box_inner { display: block; background: #222; width: 100%; height: 100%; position: relative; overflow: hidden; }
.menu_list1_img { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); z-index: 15; display: block; width: 100%; height: 100%;  }
.menu_list1_img img { object-fit: cover; width: 100%; height: 100%; transition-duration: 0.5s; }
.menu1_list a:hover .menu_list1_img img { transform: scale(1.1, 1.1); }
.menu1_list_txt { position: absolute; z-index: 25; display: block; bottom: 35px; text-align: center; width: calc( 100% - 40px ); left: 50%; transform: translateX(-50%);  }
.menu1_list_txt1 { display: block; font-size: 4.8rem; font-weight: bold; border-bottom: 1px solid #fff; padding: 0 0 10px; margin: 0 0 10px; }
.menu1_list_txt2 { display: block; font-size: 2rem; }
.menu1_list_txt2:after { content: ""; background: url(../images/arrow1.png) no-repeat center; background-size: contain; width: 30px; height: 30px; display: inline-block; margin: 0 0 0 14px; position: relative; top: 6px; }
.menu1_list a .menu1_list_txt { color: #fff; }


/*--------------------------------------------
  不動産説明等
---------------------------------------------*/
.menu2 { background: #f6f6f6;}
.menu2_inner { width: 90%; max-width: 1200px; margin: 0 auto; }
.menu2_txt1 { font-size: 2.8rem; font-weight: 500; text-align: center; margin: 0 0 10px; }
.menu2_txt2 { font-size: 1.6rem; text-align: center; margin: 0 0 40px; line-height: 2; }

.menu2_list { width: 90%; max-width: 1000px; margin: 0 auto; padding: 0 0 80px; }
.menu2_list ul { display: flex; justify-content:space-between; }
.menu2_list li { background: #fff; border-radius: 12px; box-shadow: 0px 0px 15px -5px #999; flex-direction:column; justify-content:center; display: flex; transition:0.8s; }
.menu2_list li.menu2_list1 { width: 48%; }
.menu2_list li.menu2_list2,.menu2_list li.menu2_list3 { width: 23%; }
.menu2_list li a { display: block; padding: 20px 70px 20px 30px; color: #222; font-size: 1.8rem; font-weight: 500; position: relative; }
.menu2_list li a:after { content: ""; background: url(../images/arrow2.png) no-repeat center; background-size: contain; width: 18px; height: 12px; position: absolute; top: 50%; right: 30px; transform: translateY(-50%);  }
.menu2_list li:hover { box-shadow: 0px 0px 15px -9px #777; background: #dfdbdb; }
.menu2_list li a:hover { text-decoration: none; }

.top_message { background: #f6f6f6; padding: 60px 0 0;}
.top_message_inner { width: 90%; max-width: 1200px; margin: 0 auto; display: flex; justify-content:space-between; background: url(../images/img2.png) no-repeat 140px bottom; padding: 0 0 120px; }
.top_message h3 { -ms-writing-mode: tb-rl; writing-mode: vertical-rl; font-size: 3.6rem; font-weight: 500; font-family: "Noto Sans JP","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; line-height: 1.6; width: 8em; height: 12em;}
.top_message h3 .top_message_strong { background-image: radial-gradient(circle at center, #ffd200 20%, transparent 20%); background-position: top right; background-repeat: repeat-y; background-size: .3em 1em; padding: 0 .2em 0 0; font-size: 4.8rem; font-weight: 500; }
.top_message_txt { width: calc( 100% - 23em ); font-size: 1.6rem; line-height: 1.8; }
.top_message_txt p { margin: 0 0 30px; }


/*--------------------------------------------
  事業内容
---------------------------------------------*/
.top_service { background: #f6f6f6; padding: 60px 0 300px;}
.top_service_inner { width: 90%; max-width: 1200px; margin: 0 auto; border-radius: 20px; background: #ededed; box-sizing: border-box; padding: 50px 100px; }
.top_service h4 { font-size: 3.6rem; font-weight: 500; margin: 0 0 30px; }
.top_service ul { font-size: 1.6rem; line-height: 1.8; }


/*--------------------------------------------
  会社概要
---------------------------------------------*/
.top_company { padding: 60px 60px 70px; position: relative; top: -225px; margin: 0 0 -120px; box-sizing: border-box;}
.top_company_inner { width: 100%; border-radius: 20px; padding: 50px 0 0; background: #fff; }
.top_company_inner2 { width: 90%; max-width: 1200px; margin: 0 auto 80px; display: flex; justify-content:space-between; }
.top_company_txt { width: 47%; padding: 20px 0 0; }
.top_company_txt h5 { font-size: 3rem; font-weight: 500; margin: 0 0 50px; }
.top_company_txt dl { display: table; width: 100%; table-layout: fixed; border-bottom: 1px solid #666; font-size: 1.6rem; }
.top_company_txt dl:first-of-type { border-top: 1px solid #666; }
.top_company_txt dt { display: table-cell; padding: 16px 14px; width: 7em; }
.top_company_txt dd { display: table-cell; padding: 16px 0; }
.top_company_txt dd a { color: #222; }
.top_company_img { width: 47%; }
.top_company_img li { margin: 0 0 5px; }

.top_company_map { width: 90%; max-width: 1200px; margin: 0 auto; height: 480px; }
.top_company_map iframe { width: 100%; height: 100%; }



/*--------------------------------------------
  pagetop
---------------------------------------------*/
#page-top{ position:fixed; right:18px; bottom:20px; z-index: 1000;}
#page-top a { background: #fff600; border-radius: 50vh; width: 90px; height: 90px; display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; color: #000;
font-weight: bold; font-size: 1.6rem; text-decoration: none;}
#page-top a:hover{ background: #00000080; color: #fff600;}


/*--------------------------------------------
  footer
---------------------------------------------*/
footer { background: #352f29; color: #fff; font-size: 1.4rem; padding: 60px 0; }
.footer_inner { width: 90%; max-width: 1200px; margin: auto;  }
.footer_info { width: 100%; display: flex; justify-content:space-between; }
footer a { color: #fff; }

.footer_info dt { margin: 0 0 20px; }
.footer_info dt img { width: 320px; }
.footer_info dd { line-height: 1.6; }
.footer_info .footer_license { margin: 20px 0 40px; }
.footer_info .footer_copy { font-size: 1.2rem; color: #ebebeb4d;}

.footer_menu { width: 46%; }
.footer_menu ul { width: 100%; display: flex; justify-content:space-between; transition:0.8s; }
.footer_menu li { width: 28%; border-top: 4px solid #fff; padding: 16px 0 0; }
.footer_menu a .footer_menu1 { font-size: 1.8rem; display: block; line-height: 1.8; }
.footer_menu li:hover { border-top: 4px solid #fff600; }
.footer_menu a:hover { color: #fff600; text-decoration: none; }


/* screens smaller than 1250
***************************************************************************/
@media only screen and (max-width:1250px) {
	
.br_tab { display: inline; }
	
/*--------------------------------------------
  Header
---------------------------------------------*/
header { height: 100px; }
h1 { left: 40px; }
h1 img { width: 250px; }
.header_info { right: 50px; font-size: 1.4rem;}
.header_info .header_info_num { font-size: 1.2rem; }

/*--------------------------------------------
  メイン画像
---------------------------------------------*/
.img_main { padding: 30px 0 80px; }
.img_main_area { background: url(../images/main.jpg) repeat-x center; background-size: auto 400px; padding: 400px 0 0; }


/*--------------------------------------------
  物件メニュー
---------------------------------------------*/
.menu1_inner { background: url(../images/img1.png) no-repeat center 0; background-size: 680px auto; padding: 16px 0 40px; }
.menu1 h2 { font-size: 3.2rem; margin: 0 0 20px; } 
.menu1 h2 .menu1_border { border-bottom: 4px solid #222; border-top: 4px solid #222; padding: 5px 0 ; font-size: 4.2rem;}
.menu1_list a { padding: 14px 10px 0; }
.menu1_list .icon_sale, .menu1_list .icon_rent { width: 60px; height: 60px; font-size: 1.6rem;}
.menu1_list a .icon_sale, .menu1_list a .icon_rent { color: #222; }
.menu1_list .menu1_list_box { padding: 12px; }
.menu1_list_txt { bottom: 20px; width: calc( 100% - 30px ); }
.menu1_list_txt1 { font-size: 3.6rem; padding: 0 0 6px; margin: 0 0 6px; }
.menu1_list_txt2 { display: block; font-size: 1.4rem; letter-spacing: .05em; }
.menu1_list_txt2:after { content: ""; background: url(../images/arrow1.png) no-repeat center; background-size: contain; width: 20px; height: 20px; display: block; margin: 0 0 0 14px; position: relative; top: 6px; margin: 0 auto; }



/*--------------------------------------------
  不動産説明等
---------------------------------------------*/
.menu2_txt2 { margin: 0 0 30px; }

.menu2_list { padding: 0 0 30px; }
.menu2_list ul { flex-wrap: wrap;  }
.menu2_list li.menu2_list1 { width: 100%; margin: 0 0 20px; }
.menu2_list li.menu2_list2,.menu2_list li.menu2_list3 { width: 48%; }

.top_message_inner { background: url(../images/img2.png) no-repeat 10px bottom; padding: 0 0 60px; }
.top_message h3 { font-size: 3rem; line-height: 1.6; width: 8em; height: 12em;}
.top_message h3 .top_message_strong { background-image: radial-gradient(circle at center, #ffd200 20%, transparent 20%); background-position: top right; background-repeat: repeat-y; background-size: .3em 1em; padding: 0 .2em 0 0; font-size: 4rem; font-weight: 500; }
.top_message_txt { width: calc( 100% - 18em ); }


/*--------------------------------------------
  事業内容
---------------------------------------------*/
.top_service { padding: 40px 0 0;}
.top_service_inner { padding: 30px 50px; }
.top_service h4 { font-size: 3rem; margin: 0 0 20px; }
.top_service ul { font-size: 1.6rem; line-height: 1.8; }


/*--------------------------------------------
  会社概要
---------------------------------------------*/
.top_company { background: #f6f6f6; padding: 60px 0 0; top: 0; margin: 0;}
.top_company_inner { width: 100%; border-radius: 30px 30px 0 0; padding: 50px 0 80px; }
.top_company_inner2 { width: 90%; max-width: 1200px; margin: 0 auto 60px; }
.top_company_txt { width: 47%; padding: 0; }
.top_company_txt h5 { font-size: 2.4rem; margin: 0 0 20px; }
.top_company_txt dl { display: block; font-size: 1.4rem; }
.top_company_txt dl:first-of-type { border-top: 1px solid #666; }
.top_company_txt dt { display: block; padding: 12px 10px 5px 10px; width: 100%; box-sizing: border-box; }
.top_company_txt dd { display: block; padding: 0 10px 12px 10px; }

.top_company_map { height: 400px; }

/*--------------------------------------------
  pagetop
---------------------------------------------*/
#page-top{ position:fixed; right:18px; bottom:20px;}
#page-top a { width: 76px; height: 76px; font-size: 1.4rem;}


/*--------------------------------------------
  footer
---------------------------------------------*/
.footer_info dl{ width: 46%; }
.footer_info dt { margin: 0 0 20px; }
.footer_info dt img { width: 240px; }
.footer_info dd { line-height: 1.6; }
.footer_info .footer_license { margin: 20px 0 40px; }
.footer_info .footer_copy { font-size: 1.2rem; color: #ebebeb4d;}

.footer_menu { width: 46%; }
.footer_menu ul { width: 100%; display: flex; justify-content:space-between; transition:0.8s; }
.footer_menu li { width: 28%; border-top: 4px solid #fff; padding: 16px 0 0; }
.footer_menu a .footer_menu1 { font-size: 1.8rem; display: block; line-height: 1.8; }
.footer_menu li:hover { border-top: 4px solid #fff600; }
.footer_menu a:hover { color: #fff600; text-decoration: none; }


}



/* screens smaller than 750
***************************************************************************/
@media only screen and (max-width:750px) {
.sp{display:inherit;}
.pc{display:none;}
.br_sp { display:inherit;}


/*--------------------------------------------
  Header
---------------------------------------------*/
header { height: 80px; }
h1 { left: 20px; }
h1 img { width: 180px; }
.header_info { right: 14px; font-size: 1.2rem;}
.header_info .header_info_num { font-size: 1.2rem; }

/*--------------------------------------------
  メイン画像
---------------------------------------------*/
.img_main { padding: 20px 0 60px; }
.img_main_area { background: url(../images/main.jpg) repeat-x center; background-size: auto 240px; padding: 240px 0 0; }


/*--------------------------------------------
  物件メニュー
---------------------------------------------*/
.menu1_inner { background: url(../images/img1_2.png) no-repeat center 0; background-size: 90% auto; padding: 10px 0 50px; }
.menu1 h2 { font-size: 2rem; margin: 0 0 20px; } 
.menu1 h2 .menu1_border { border-bottom: 3px solid #222; border-top: 3px solid #222; padding: 5px 0 ; font-size: 3rem; }
.menu1 h2 .br_tab { display: none; }
.menu1_list ul { flex-wrap: wrap; }
.menu1_list li { width: 100%; margin: 0 0 10px; }
.menu1_list a { padding: 10px 20px 0; }
.menu1_list .menu1_list_box { box-shadow: 0px 0px 15px -5px #999; aspect-ratio: 16 / 9; padding: 10px; }
.menu1_list a:hover .menu1_list_box { box-shadow: 0px 0px 15px -5px #999 }
.menu_list1_img img { opacity: .9; filter: alpha(opacity=90); -ms-filter: "alpha( opacity=90 )"; }
.menu1_list a:hover .menu_list1_img img { transform: scale(1, 1); opacity: .9; filter: alpha(opacity=90); -ms-filter: "alpha( opacity=90 )"; }
.menu1_list_txt { bottom: auto; top: 50%; text-align: center; width: calc( 100% - 50px ); left: 50%; transform: translate(-50%, -50%);  }
.menu1_list_txt1 { font-size: 3rem; padding: 0 0 6px; margin: 0 0 6px; }
.menu1_list_txt2 {font-size: 1.6rem; }
.menu1_list_txt2:after { content: ""; background: url(../images/arrow1.png) no-repeat center; background-size: contain; width: 20px; height: 20px; display: inline-block; margin: 0 0 0 14px; position: relative; top: 6px; }
.menu1_list a .menu1_list_txt { color: #fff; }


/*--------------------------------------------
  不動産説明等
---------------------------------------------*/
.menu2_txt1 { font-size: 2rem; margin: 0 0 10px; line-height: 1.6; }
.menu2_txt2 { font-size: 1.4rem; margin: 0 0 20px; }
.menu2_txt2 .br_tab { display: none; }

.menu2_list li a { display: block; padding: 14px 50px 14px 16px; font-size: 1.6rem; }
.menu2_list li a:after { right: 12px; }

.top_message { padding: 40px 0 0;}
.top_message_inner { display: block; background: url(../images/img2.png) no-repeat right bottom; background-size: 180px auto; padding: 0 0 80px; }
.top_message h3 { -ms-writing-mode: lr-tb; writing-mode: horizontal-tb; font-size: 2.4rem; line-height: 1.6; width: 100%; height: auto; margin: 0 0 20px;}
.top_message h3 .top_message_strong { background-image: radial-gradient(circle at center, #ffd200 20%, transparent 20%); background-position: top right; background-repeat: repeat-x; background-size: 1em 0.3em; padding: .2em 0 0 0; font-size: 3.2rem; font-weight: 500; }
.top_message_txt { width: 100%; font-size: 1.4rem; line-height: 1.6; }
.top_message_txt p { margin: 0 0 24px; }


/*--------------------------------------------
  事業内容
---------------------------------------------*/
.top_service { padding: 30px 0 30px;}
.top_service_inner { padding: 30px; }
.top_service h4 { font-size: 2.4rem; margin: 0 0 10px; }
.top_service ul { font-size: 1.4rem; line-height: 1.8; }


/*--------------------------------------------
  会社概要
---------------------------------------------*/
.top_company { padding: 20px 0 0;}
.top_company_inner2 { margin: 0 auto 30px; display: block; }
.top_company_txt { width: 100%; padding: 0; margin: 0 0 20px; }
.top_company_txt h5 { font-size: 2.4rem; margin: 0 0 30px; }
.top_company_img { width: 100%; }

.top_company_map { width: 90%; max-width: 1200px; margin: 0 auto; height: 360px; }


/*--------------------------------------------
  pagetop
---------------------------------------------*/
#page-top{ right: 8px; bottom: 8px;}
#page-top a,#page-top a:hover { width: 58px; height: 58px; font-size: 1.4rem;}

/*--------------------------------------------
  footer
---------------------------------------------*/
footer { padding: 30px 0; }
.footer_info { width: 100%; flex-direction: column; }

.footer_info dl { width: 100%; order: 2; text-align:center; }
.footer_info dt { margin: 0 0 20px; }
.footer_info dd { line-height: 1.6; }
.footer_info .footer_license { margin: 20px 0 40px; }
.footer_info .footer_copy { font-size: 1.2rem; color: #ebebeb4d;}

.footer_menu { width: 100%; order: 1; margin: 0 0 30px; }
.footer_menu li, .footer_menu li:hover { border-top: 3px solid #fff; padding: 6px 0 0; width: 30%;  }
.footer_menu a .footer_menu1 { font-size: 1.6rem; }
.footer_menu a .footer_menu2 { font-size: 1.2rem; line-height: 1.2; }
.footer_menu a:hover { color: #fff; }


}