@charset "UTF-8";
/* CSS Document */

img{
max-width: 100%;
height: auto;
}

.smpno{
	display:none !important;}

body{
width:100%;
min-width:auto;
line-height:1.7;
padding:0;
margin:0;
color:#222;
box-sizing:border-box;
}


/*余白*/
.mb05em {margin-bottom:0.5em;}
.mb1em {margin-bottom:1em;}
.mb2em {margin-bottom:2em;}
.mb3em {margin-bottom:3em;}
.mb5em {margin-bottom:5em;}
.mb10{ margin-bottom:10px;}
.mb15{ margin-bottom:15px;}
.mb50,
.mb70,
.mb100,
.mb30{ margin-bottom:30px;}
.mt70{margin-top: 30px;}
.pad40,
.pad50{padding: 10px;}
.padt50{padding-top: 30px;}
.logobox a .logo {
display: inline-block;
margin-top: 4px;
width: 240px;
height:52.65px;
background: url(../img/logo.png) no-repeat;
white-space: nowrap;
text-indent: 100%;
overflow: hidden;
vertical-align: text-top;
background-size: cover;
margin-left: 4px;
}

/*smpでは隠す*/
.smpno,
.none
{
display:none !important; 
}


header{
padding-bottom:2em;
display: block;
}

.section_aerea{
background-color: #eee;
margin-bottom: 2rem;
}
.section1{
display: flex;
justify-content:space-between;
	align-items:center;
	flex-wrap:wrap;
position: relative;
color: #fff;
background-color: var(--main-bg);
overflow: hidden;
height: 100px;

}
.section1 img{
max-height: 101px;
}
.top_info_ttl {
display: inline-block;
padding: .8em 1.6em .4em .8em;
position: relative;
color: #fff;
z-index: 2;
}



.top_info_txt{
padding: 1em;
}

.top_info_ttl a{
font-size: 1.4rem;
color:#6A5455;
	font-family: 'Noto Sans JP',"游ゴシック",YuGothic,"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",sans-serif;
position: relative;
display: block;
width: 80%;
}

.top_info_ttl a::before {
content: '';
width: 10px;
position: absolute;
top: 10px;
right: 25px;
border-top: solid 1px #fff;
-webkit-transform: rotate(
45deg);
transform: rotate(
45deg);
}

.top_business_li {
margin-bottom: 40px;
}
.top_property_li li,
.top_business_li li{
display: inline-block;
width: 96%;
margin-left: 2%; margin-right: 2%;
margin-bottom: 30px;
vertical-align: top;
}

.bk_topabout {
width: 100%;
background: url(../img/top_bk_about.png) no-repeat center 0;
background-size: 100%;
padding: 50px 0 0 0;
margin: 0 0 10px 0;
}

.whitebox {
width: 100%;
background: #fff;
margin: 0 auto;
overflow: hidden;
}

.top_about_li{
margin-bottom: 2em;
}
.top_about_li li{
width: 46%;
margin-bottom: 2em;
display: inline-block;
}

.top_about_li li img{
width: 100%;
}

.top_about_li p{
background-color: var(--main-bg);
color: #fff;
position: relative;
line-height: 2;
font-size: 1.2rem;
font-family: 'Noto Sans JP',"游ゴシック",YuGothic,"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",sans-serif;
padding: 6px;
}

.top_about_li p::before{
content: '';
width: 10px;
position: absolute;
top: 17px;
right: 10px;
border-top: solid 1px #fff;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}
.top_about_li p::after{
content: '';
width: 26px;
position: absolute;
top: 20px;
right: 11px ;
border-bottom: solid 1px #fff;
}

.bk_top_recommend {
width: 100%;
background: url(../img/top_bk_recommend.png) no-repeat center 0;
background-size: 100%;
padding: 100px 20px 0 20px;
margin: 0 0 40px 0;
display: block;
}

.bk_top_recommend .title_top{
font-size: 2.2rem;
}

.bk_top_recommend .btn_01 {
    width: 80%;
}

.top_recommend_li li img{
display: block;
margin-left: auto; margin-right: auto;
text-align: center;
}
.foot_pagetop i,
.foot_pagetop{
line-height: 40px;
}
.top_map{
display: flex;
flex-direction: column-reverse; /* 縦並び逆順 */
	flex-wrap:wrap;
	width: 100%;
}

.top_map_area_l{
margin-bottom: 2em;
}

footer .inner {
width: 96%;
height: auto;
padding: 1em 0;
margin: 0 auto;
display: flex;
flex-direction: column;
}
footer .inner ul{
display:flex;
/*justify-content:space-evenly;*/
align-items:flex-start;
flex-wrap:wrap;
margin-inline: auto;
width: 100%;
}
footer .inner ul li:nth-child(odd){
margin-right: 1%;
}
footer .inner ul li{
width: 49%;
}
.foot_dl dl{
margin-bottom: 2em;
}

.foot_dl dl dt{
color: #666;
margin: 0 0 0.5em 0;
padding: 0.3em;
background-color: #eee;

}
.foot_dl dl dd{
margin-left: 0.5em;
}
footer ul{
margin-left: 0.5em;
}
footer a{
margin-bottom: 0.5em;
}
.top_bn_shamaison {
margin: 30px 0 60px;
}
.top_bn_shamaison a{
margin: 0 1%;
display: block;
}
.top_bn_shamaison a + a{
max-width: 40%
}
.top_bn_shamaison a {
max-width: 56%
}
.contact_posi{
padding-top: 20px;
margin-bottom: 30px;
}

.contact_posi2{
padding-top: 20px;
margin-bottom: 40px;
}

.contact_posi2 .contact_box{
width: 96%;
margin-left: 2em;
margin-bottom: 20px;
}

.contact_posi2 .contact_box th {
width:100%;
display: inline-block;
box-sizing: border-box;

}
.contact_posi2 .contact_box td {
width:100%;
display: inline-block;
box-sizing: border-box;
}

#contact .whitebox{
width: 96%;
margin-left: auto; margin-right: auto;
}
.btn_03,
.btn_02,
.btn_modoru,
.btn_soshin {
	width: 86%;}
.btn_03{
margin-left: auto; margin-right: auto;
text-align: center;
font-size: 1.4rem;
}
.ttl_000 {
font-size: 3.6rem;
margin-top: 2rem;
}
.ttl_000 span{
font-size: 1.6rem;
}
.ttl_000_l {
margin-left: 2%;
width: 48%;
margin-top: 2.4rem;
}

.ttl_txt {
font-size: 2rem;
margin-bottom: 1em;
}

.path{
font-size: 60%;
}
.layer_cache {
padding-top: 2em;
margin: 0px auto 30px auto;
}

.contact_tel_posi a.tel {
font-size: 3.2rem;}

.notice ul {
    width: calc(100% - 4em);
				margin-left: auto; margin-right: auto;
}

.contact_posi2 .contact_box {
margin-left: 2%;
}

.btngroup{
text-align: center;
display: block;
margin-left: auto; margin-right: auto;
}

.btn_modoru,
.btn_soshin{
margin-left: auto; margin-right: auto;
margin-bottom: 1em;
}

.contact_posi2 .contact_box th{
color: #666;
font-size: 120%;
}

.footcontact{
margin-top: 30px;
margin-bottom: 30px;
}

.layer_cache_l{
margin-bottom: 30px;
}

/**/
.staff_name{
font-size: 2rem;
padding-bottom: 10px;
margin-bottom: 20px;
border-bottom: 2px solid #000;
font-weight: bold;

}
.staff_name span{
font-size: 1.4rem;
display: inline-block;
margin-left: 1em;
}

.staff_li li{
width: 96%;
margin-left: auto; margin-right: auto;
margin-bottom: 20px;
}

.staff_prof dd{
margin-bottom: 20px;
}

.staff_prof dt,
.staff_prof dd{
padding: 0 4px;
}

.ttl_bg {
}
.ttl_bg .ttl_000,
.ttl_business .ttl_000,
.ttl_sitemap .ttl_000,
.ttl_info .ttl_000,
.ttl_form_corporate .ttl_000,
.ttl_form_personal .ttl_000,
.ttl_sell .ttl_000,
.ttl_privacy .ttl_000,
.ttl_contact .ttl_000,
.ttl_staff .ttl_000,
.ttl_company .ttl_000,
.ttl_owner .ttl_000,
.ttl_spec .ttl_000,
.ttl_flow .ttl_000{
font-size: 2rem;}

.ttl_bg .ttl_000_l,
.ttl_sitemap .ttl_000_l,
.ttl_info .ttl_000_l,
.ttl_form_corporate .ttl_000_l,
.ttl_form_personal .ttl_000_l,
.ttl_sell .ttl_000_l,
.ttl_privacy .ttl_000_l,
.ttlcontactf .ttl_000_l,
.ttl_staff .ttl_000_l,
.ttl_company .ttl_000_l,
.ttl_owner .ttl_000_l,
.ttl_spec .ttl_000_l,
.ttl_flow .ttl_000_l{
width: 100%;
}
.ttl_form_corporate .ttl_area,
.ttl_form_personal .ttl_area,
.ttl_sell .ttl_area,
.ttl_privacy .ttl_area,
.ttl_owner .ttl_area,
.ttl_flow .ttl_area{
	align-items:flex-end;

}
.ttl_bg .ttl_000,
.ttl_business .ttl_000,
.ttl_sitemap .ttl_000,
.ttl_info .ttl_000,
.ttl_form_corporate .ttl_000,
.ttl_form_personal .ttl_000,
.ttl_sell .ttl_000,
.ttl_privacy .ttl_000,
.ttl_contact .ttl_000,
.ttl_staff .ttl_000,
.ttl_company .ttl_000,
.ttl_owner .ttl_000,
.ttl_spec .ttl_000,
.ttl_flow .ttl_000{
position: absolute;
bottom: 0;
right: 0;
float: right;
text-align: right;
}
.flow_txtarea .btn_02 {
width: 100%;
}
.flow_box {
margin-bottom: 30px;
width: 98%;
margin-left: auto; margin-right: auto;
}
.flow_box li{
padding: 	10px;
box-sizing: border-box;
margin-bottom: 20px;
}
.flow_box li dl dt span{
font-size: 2rem;
display: inline-block;
margin-right: 10px;
padding-right: 10px;
padding-left: 4px;
color: var(--main-color) ;
line-height: 1.2;
}
.flow_box li dl dt p{
font-size: 1.6rem;
}

.flow_box li dl dt{
padding-bottom: 10px;
margin-bottom: 10px;
}
.flow_box li dl dd img{
margin-bottom: 6px;
}

.bdt{
padding-top: 1em;
}

.service_txt_box ul li{
width: 48%;
vertical-align: top;
}

.layer_w{
margin-bottom: 30px;
width: 98%;
margin-left: auto; margin-right: auto;
}

.ttl_03{
font-size: 2rem;
}
.ttl_03 span{
font-size: 12px;
}

.ttl_03.bar{
padding-bottom: 10px;
}
.ttl_03.bar:after {
width: 50%;
}

#owner_whitebox .whitebox{
margin-bottom: 30px;
width: 98%;
margin-left: auto; margin-right: auto;
}

.service_txt_area {
margin-left: 0px;
}
.owner_li li{
margin-bottom: 3em;
}

.owner_li li dl dt {
margin-bottom: 0px;
}
.ttl_01 {
line-height: 1;
}
.company_greeting_text figure{
text-align: center;
}
.company_greeting_text figure img{
max-width: 80%;
}
.top_map_posi iframe,
#company iframe{
width: 100%;
height: 300px;
}

.company_li li{
padding: 10px 10px 20px 10px;
}

.ttl_h3_br{
display: block;
}
.ttl_h3 p{
font-size: 2rem;}

.ttl_h3 span{
font-size: 1.2rem;}
.ttl_h3 p:before {
border-top: 1px solid;
content: "";
/*flex-grow: 1;*/
margin-right: 10px;
width: 20px;
}
.Area03 .note{
margin-bottom: 40px;
}

.Area03 .note th,
.Area03 .note td{
width: 100%;
display: inline-block;
box-sizing: border-box;
}

.Area03 .note .form_01 {
width: 95%;
text-align: left;
}

.Area03 .note .form_02,
.Area03 .note .form_03{
width: 30%;
text-align: left;
display: inline-block;
}

.Area03 .note .f_txtposi {
margin-top: 4px;
margin-bottom: 4px;
}

.Area03 .note .f_txtposi input[type="button"]{}

.Area03 .w100{
width: 100%;
}
.Area03 .note textarea {
width: 100%;
border-radius: 4px;
padding: 10px 12px;
border: 1px solid #aaa;
outline: none;
}

.Area03{
margin-left: 1%; margin-right: 1%;
}

.wrap_cms{
width: 98%;
margin-left: auto; margin-right: auto;
margin-bottom: 20px;
}

.sitemapli li{
width: 96%;
margin-left: 2%;
margin-right: 2%;
}
.sitemap_wrap ul li a {
padding: 4px 0;
margin-top: 20px;
}
.sitemap_wrap ul li:last-child a{
border-bottom: none;
}



