@charset "utf-8";
@import url(https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css);
.sp_nav{
    display: none;
}
.head_info h1{
    margin-right: 50px;
    display: flex;
}
header{
    z-index: 1000;
    position: relative;
}
header .soon{
    opacity: 0.4;
    pointer-events: none;
}
footer .soon{
    opacity: 0.4;
    pointer-events: none;
}
.h_box01{
    /* height: 90px; */
    width: 100%;
    /* background: #fff; */
}
.header_h{
    height: 30px;
    /* position: fixed; */
    top: 0;
    width: 100%;
    display: block;
    pointer-events: none;
    z-index: -10;
    display: block;
}
.h_box01{
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: fixed;
    top: 0;
}
.h_req_btn{
    /* height: 90px; */
    width: auto;
    width: 170px;
    height: 50px;
}
.h_req_btn a{
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}
.request .h_req_btn a{
    /* background: #d2c695; */
    color: #fff;
    font-weight: 500;
    letter-spacing: 0.2em;
    background: linear-gradient(-90deg, #e1b648, #e4d986);
}
.reserve .h_req_btn a{
    /* background: #2d2c37; */
    color: #fff;
    font-weight: 500;
    letter-spacing: 0.2em;
    /* background: -webkit-linear-gradient( 0deg, #403d5e 0%, #403799 100%); */
    background: linear-gradient(-90deg, #8bb678, #cbd97e);
}
.h_main{
    /* padding: 0px 20px 0px 15px; */
    width: 100%;
}

.h_logo{
    max-width: 294px;
}
.h_out_map_links{
    font-size: 14px;
    display: flex;
    position: relative;
    /* top: 5px; */
}
.h_out_map_links a{
    transition-duration: 0.6s;
    cursor: pointer;
}
.h_out_map_links a:hover{
/*     color: #dc4f11; */
    opacity: 0.8;
}
.h_out_map_item{
    display: flex;
    align-items: center;
}
.h_out_map_item p{
    position: relative;
    font-size: 12px;
    color: #fff;
}
.h_out_map_item p::before{
    box-sizing: border-box;
    width: 12px;
    height: 12px;
    border: 1px solid #fff;
    -webkit-border-radius: 50%;
    border-radius: 50%;
    position: absolute;
    top: 0;
    bottom: 0;
    left: -16px;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.h_out_map_item p::after {
    left: 3px;
    width: 3px;
    height: 3px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    left: -12px;
    margin: auto;
    content: "";
    vertical-align: middle;
}
.h_out_map_icon{
    height: 17px;
    width: auto;
    margin-right: 5px;
}
.h_out_map_icon img{
    height: 100%;
    width: auto;
    vertical-align: baseline;
}
.h_main01{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    /* margin-bottom: 5px; */
    padding: 0 20px;
    color: #fff;
    background: #000;
    height: 30px;
}
.h_out_map_links a:not(:first-child){
    margin-left: 36px;
}
.h_main02{
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0 20px;
    height: 70px;
    background: rgba(255, 255, 255, 0.8);
}
.h_main02_r{
    display: flex;
    align-items: center;
}
.h_btn_flex{
    display: flex;
    margin-left: 40px;
}
.h_links ul{
    display: flex;
    align-items: center;
    position: relative;
    top: -2px;
}
.h_links ul li{
    text-align: center;
    position: relative;
    cursor: pointer;
}
.h_links ul li:not(:first-child){
    margin-left: 20px;
}
.h_links ul li::before{
    content: "";
    position: absolute;
    z-index: 1;
    background: #333;
    width: 0%;
    height: 1px;
    cursor: pointer;
    bottom: -10px;
    left: 0;
    transition: 0.3s;
}
.h_links ul li:hover::before{
    width: 100%;
    transition: 0.3s;
}
/* .h_links ul li::after{
    content: "";
    position: absolute;
    bottom: -11px;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 7px;
    background: #dc4f11;
    transition: transform .3s cubic-bezier(0.8, 0, 0.2, 1) 0s;
    transform: scale(0, 1);
    transform-origin: right top;
    cursor: pointer;
} */
/* .h_links ul li:hover::before{
    transform-origin:left top;
    transform:scale(1, 1);
} */
.h_links ul li a{
    font-size: 14px;
}
.h_links ul li a{
    font-size: 16px;
    /* letter-spacing: 0.5px; */
}
.h_links ul li a span{
    font-size: 10px;
    display: block;
    letter-spacing: 0;
    padding-top: 3px;
    text-align: center;
}
.h_req_btn{
    transition: 0.3s;
}
.h_req_btn:hover{
    opacity: 0.8;
    transition: 0.3s;
}
@media(max-width: 1500px){
.h_req_btn {
    /* height: 70px; */
    width: 100px;
    height: 40px;
}
.h_links ul li a {
    font-size: 14px;
}
.h_logo {
    max-width: 264px;
}
.h_req_btn a {
    height: 100%;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    font-weight: 400;
}
.h_links ul li:not(:first-child) {
    margin-left: 15px;
}
.h_btn_flex {
    display: flex;
    margin-left: 20px;
}
}

@media(max-width: 1220px){
    .h_links ul li:not(:first-child) {
        /* margin-left: 12px; */
    }
    .h_links ul li a {
        font-size: 12px;
    }
    .h_links ul li::before {
        /* height: 5px; */
    }
    .h_out_map_icon {
        height: 14px;
    }
    .h_out_map_item p{
        font-size: 12px;
    }
    .h_logo {
        /* max-width: 280px; */
    }
    .h_box01 {
        /* height: 80px; */
    }
    .h_req_btn {
        width: 85px;
        height: 40px;
    }
    .header_h {
        /* height: 80px; */
    }
}

@media(max-width: 1120px){
    .h_logo {
        max-width: 260px;
    }
    .h_links ul li a {
        /* font-size: 11px; */
    }
    .h_links ul li:not(:first-child) {
        margin-left: 10px;
    }
    .h_logo {
        max-width: 220px;
    }
}

@media(max-width: 1000px){
    .pc_nav{
        display: none;
    }
    .sp_nav{
        display: flex;
        height: 60px;
        background: #fff;
        align-items: center;
        justify-content: center;
        width: 100%;
        position: relative;
    }
    .h_sp_logo{
        max-width: 230px;
        height: auto;
    }
    .sp_nav_box{
        position: fixed;
        width: 100%;
        top: 0;
    }
    .header_h{
        height: 60px;
    }

    /* ハンバーガー */

/*ボタン外側※レイアウトによってpositionや形状は適宜変更してください*/
.openbtn4{
    position: relative;/*ボタン内側の基点となるためrelativeを指定*/
    /* background:#D54884; */
    cursor: pointer;
    width: 30px;
    height: 18px;
    border-radius: 5px;
    /* top: -5px; */
  }
  
  /*ボタン内側*/
    .openbtn4 span{
        display: inline-block;
        transition: all .4s;/*アニメーションの設定*/
        position: absolute;
        /* left: 14px; */
        height: 2px;
        border-radius: 5px;
        background: #fff;
        width: 100%;
    }
    
    
    .openbtn4 span:nth-of-type(1) {
        top: 0;
    }
    
    .openbtn4 span:nth-of-type(2) {
        top: 8px;
    }
    
    .openbtn4 span:nth-of-type(3) {
        top: 16px;
    }
    
    .openbtn4 span:nth-of-type(3)::after {
        /* content:
        "Menu"; *//*3つ目の要素のafterにMenu表示を指定*/
        position: absolute;
        top: 10px;
        left: 50%;
        color: #fff;
        font-size: 14px;
        /* text-transform: uppercase; */
        transform: translateX(-50%);
        font-family: futura-pt, sans-serif;
        letter-spacing: 0.1em;
    }
    
    /*activeクラスが付与されると線が回転して×になり、Menu⇒Closeに変更*/
    
    .openbtn4.active span:nth-of-type(1) {
        top: 0px;
        /* left: 18px; */
        transform: translateY(6px) rotate(-45deg);
        width: 100%;
    }
    
    .openbtn4.active span:nth-of-type(2) {
        opacity: 0;
        display: none;
    }
    
    .openbtn4.active span:nth-of-type(3){
        top: 12px;
        /* left: 18px; */
        transform: translateY(-6px) rotate(45deg);
        width: 100%;
    }
    .openbtn4.active span:nth-of-type(3)::after {
        /* content:
        "Close"; *//*3つ目の要素のafterにClose表示を指定*/
        left: 50%;
        transform: translateY(0) rotate(-45deg) translateX(5%);
        top: 14px;
        /* left: 50%; */
    }

    .sub_links{
        display: flex;
        align-items: center;
        position: absolute;
        right: 10px;
    }
    .sub_links li{
        display: flex;
        align-items: center;
        filter: drop-shadow(0px 0px 16px rgba(0,0,0,0.2));
    }
    .sub_links li img{
        width: 40px;
        height: auto;
    }
    .hummenu{
        position: fixed;
        right: 0;
        top: 130px;
        background: rgb(0 0 0 / 80%);
        padding: 120px 40px;
        height: calc(100vh - 130px);
        width: 375px;
        overflow-y: scroll;
    }
    .hummenu ul{
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    .hummenu ul p{
        color: #fff;
        font-size: 18px;
        text-align: left;
    }
    .hummenu ul li span{
        font-size: 10px;
        color: #fff;
        padding-left: 0px;
        display: block;
        padding-top: 4px;
    }
    .hummenu ul li{
        /* border-bottom: 1px solid #fff; */
        width: 48%;
        /* margin-bottom: 5px; */
    }
    .hummenu ul li:nth-of-type(1){
        width: 100%;
    }

    
    
    .hummenu ul li a{
        padding: 15px 0;
        display: block;
        position: relative;
        color: #fff;
        font-size: 14px;
        text-align: center;
    }
    .hum_res_req{
        display: flex;
        justify-content: space-between;
    }
    .hum_flex{
        display: flex;
        justify-content: space-between;
        margin-top: 20px;

    }
    .hum_flex a{
        display: flex;
        width: 48%;
        box-sizing: border-box;
        border: solid 1px #fff;
        color: #fff;
        justify-content: center;
        align-items: center;
        padding: 10px;
        font-family: 'Noto Serif JP', serif;
        border-radius: 100px;
        font-size: 12px;
        letter-spacing: 0.2em;
    }
    .hum_req{
        display: flex;
        width: 48%;
        box-sizing: border-box;
        color: #fff;
        justify-content: center;
        align-items: center;
        padding: 10px;
        border-radius: 100px;
        margin-top: 20px;
        font-family: 'Noto Serif JP', serif;
        /* background: -webkit-linear-gradient( 0deg, #d2c695 0%, #c2b479 100%); */
        font-size: 14px;
        letter-spacing: 0.2em;
        /* background: linear-gradient(-90deg, #727900, #c2c661); */
        background: linear-gradient(-90deg, #e1b648, #e4d986);
        margin-left: 0;
    }
    .hum_req.bg_res{
        /* background: -webkit-linear-gradient( 0deg, #403d5e 0%, #403799 100%); */
        color: #fff;
        background: linear-gradient(-90deg, #8bb678, #cbd97e);
    }
    .hummenu{
        opacity: 0;
        pointer-events: none;
        transition: 0.5s;
    }
    .hummenu.active{
        opacity: 1;
        pointer-events: all;
        transition: 0.5s;
    }
    .hummenu {
        top: 60px;
        width: 100%;
        box-sizing: border-box;
        height: calc(100vh - 130px);
    }
    .sub_links{
        margin: 0;
        justify-content: space-around;
    }
    .sub_menu{
        display: flex;
        align-items: center;
    }
    .hummenu {
        padding: 20px 20px 30px;
        max-width: 550px;
    }
    .openbtn4 span:nth-of-type(3)::after {
        color: #231815;
    }
    .openbtn4 span{
        background: #231815;
    }
    .hummenu ul.sub_links li{
        border-bottom: none;
        margin: 0;
    }
}



/* bottom menu */
.btm_header_btn{
	display: none;
}
.btm_header_btn {
	position: fixed;
	margin: auto;
    width: 100%;
    right: 0;
    left: 0;
    bottom: 0;
    top: auto;
    z-index: 900;
    box-shadow: 0px -5px 10px -5px rgb(0 0 0 / 50%);
}
.btm_header_btn > ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: -moz-flex;
    display: flex;
    -webkit-box-pack: justify;
    -moz-box-pack: justify;
    -webkit-flex-pack: justify;
    -moz-flex-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    justify-content: space-between;
    margin: 0 auto;
}
.btm_header_btn > ul > li.btm_header_btn_tel {
    display: block;
}
.btm_header_btn > ul > li {
    /* width: 33.33%; */
    width: 50%;
}
.btm_header_btn > ul > li:nth-of-type(1) > a {
    border-left: none;
}
.btm_header_btn > ul > li > a {
	width: 100%;
    display: block;
	color: #000;
    position: relative;
    padding: 25px 0;
    background-color: #fff;
    box-sizing: border-box;
    border-left: 1px solid #b5b5b5;
    height: 70px;
}
.btm_header_btn > ul > li.btm_header_btn_req > a{
	/* background: -webkit-linear-gradient( 0deg, #d2c695 0%, #c2b479 100%); */
	color: #fff;
	background: linear-gradient(-90deg, #e1b648, #e4d986);
}
.btm_header_btn > ul > li.btm_header_btn_res > a{
	/* background: -webkit-linear-gradient( 0deg, #403d5e 0%, #403799 100%); */
	color:#fff;
	background: linear-gradient(-90deg, #8bb678, #cbd97e);
}


.btm_header_btn > ul > li.btm_header_btn_tel > a::before {
    content: '\f095';
    color: #333;
}
.btm_header_btn > ul > li.btm_header_btn_tel > a::after {
    content: 'TEL';
    color: #333;
}
.btm_header_btn > ul > li.btm_header_btn_map > a::before {
    content: '\f041';
    color: #333;
}
.btm_header_btn > ul > li.btm_header_btn_map > a::after {
    content: '案内図';
    color: #333;
}
.btm_header_btn > ul > li.btm_header_btn_out > a::before {
    content: '\f15c';
    color: #333;
}
.btm_header_btn > ul > li.btm_header_btn_out > a::after {
    content: '物件概要';
    color: #333;
}
.btm_header_btn > ul > li.btm_header_btn_req > a::before {
    content: '\f0e0';
    color: #fff;
}
.btm_header_btn > ul > li.btm_header_btn_req> a::after {
    content: '資料請求';
    color: #fff;
}
.btm_header_btn > ul > li.btm_header_btn_res > a::before {
    content: '\f073';
		color: #fff;
}
.btm_header_btn > ul > li.btm_header_btn_res> a::after {
    content: '来場予約';
    color: #fff;
}
.btm_header_btn > ul > li > a::before {
    top: 15px;
    height: 24px;
    font-size: 20px;
	left: 0;
    right: 0;
    bottom: auto;
	font-family: FontAwesome;
}
.btm_header_btn > ul > li > a::before, .btm_header_btn > ul > li > a::after {
    width: 100%;
    position: absolute;
    text-align: center;
    margin: auto;
}
.btm_header_btn > ul > li > a::after {
    top: 26px;
}
.btm_header_btn > ul > li > a::after {
    left: 0;
    right: 0;
    bottom: 0;
    height: 10px;
    font-size: 10px;
    /* font-family: 'Questrial', sans-serif; */
    line-height: 1;
}

@media screen and (max-width: 1000px) {
	.btm_header_btn{
		display: block;
	}
	#wrap {
		overflow: hidden;
	}
}




/* footer */
.footer_sitemap {
    background: #efefef;
    border-bottom: solid 1px #000;
    border-top: solid 1px #000;
    height: 80px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.footer_sitemap ul {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0px 0px;
    display: flex;
    align-items: center;
    flex: 1;
    justify-content: space-between;
    gap: 0.5%;
}
.footer_sitemap ul li {
    font-size: 14px;
    flex: 1;
    align-items: center;
    text-align: center;
    background: #fff;
    white-space: nowrap;
    height: 50px;
    /* margin: 0 5px; */
    display: flex;
    justify-content: center;
    align-items: center;
    /* padding: 0 6px; */
    /* max-width: 110px; */
    transition-duration: 0.3s;
}
.footer_sitemap ul li:hover{
    background: #dae8c5;
    color: #333;
}
.footer_sitemap ul li a{display: flex;justify-content: center;align-items: center;width: 100%;height: 100%;flex-wrap: wrap;padding: 0 0.5em;}
.footer_sitemap ul li.foot_wide{
    max-width: 175px;
}
.footer_sitemap ul li span{
    display: block;
    font-size: 10px;
    letter-spacing: 0;
    margin-top: 2px;
    width: 100%;
}
.footer_info_area{
    background: #efefef;
}
.footer_info_box {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1200px;
    margin: 0px auto;
    padding: 40px 20px;
}
.footer_info_tel {
    width: auto;
    min-width: 330px;
    margin-right: 20px;
    padding-left: 10px;
}
.tel_lead {
    text-align: left;
    margin-bottom: 5px;
    font-size: 14px;
}
.tel_num {
    font-weight: 400;
    text-align: center;
    letter-spacing: 0.02em;
    margin-bottom: 5px;
    font-size: 36px;
    line-height: 1;
    display: flex;
    justify-content: left;
    align-items: center;
}
.tel_num > div {
    max-width: 40px;
    width: 100%;
    margin: 0 10px 0px 0px;
}
.tel_num img {
    max-width: 38px;
    margin: 0 0px 4px;
}
.tel_num span {
    position: relative;
}
.tel_subtxt {
    /* max-width: 260px; */
    margin: 0 auto;
    font-size: 10px;
    line-height: 16px;
}
.footer_info_com_img li:nth-of-type(1) img{
    max-width: 240px;
    width: 100%;
}
.footer_info_com_txt {
    line-height: 1em;
    margin: 20px 0 0 50px;
}
.footer_info_com_txt li {
    display: inline-block;
    font-size: 11px;
    line-height: 2;
    padding: 0 8px 0 0;
}
.footer_info_com_img {
    display: flex;
    justify-content: center;
}
.footer_info_com{
    max-width: 400px;
}

.footer_info_casbee{
    max-width:250px;
}
.estate_btn{
    max-width: 376px;
    margin: 50px auto 0;
}
.copyright{
    text-align: center;
    font-size: 10px;
    margin: 0px auto 0px;
    padding: 20px;
}
    .footer_sitemap ul li:nth-of-type(4){
    /* max-width: 100px; */
    } 
    .footer_sitemap ul li:nth-of-type(6),
    .footer_sitemap ul li:nth-of-type(8){
        /* max-width:80px; */
    }
@media screen and (max-width: 1200px) {
    .footer_sitemap ul li {
        /* max-width: 90px; */
    }

}
@media screen and (max-width: 1000px) {
    .footer_sitemap ul{
        flex-wrap: wrap;
        flex: auto;
        gap: unset;
    }
        .footer_sitemap ul li:nth-of-type(4){
    max-width: unset;
    } 
    .footer_sitemap ul li:nth-of-type(6),
    .footer_sitemap ul li:nth-of-type(8){
        max-width:unset;
    }
    .footer_sitemap ul li:nth-of-type(1){
        width: 100%;
    }
    .footer_sitemap ul li{
        width: calc(50% - 10px );
        margin: 5px;
        max-width: inherit;
        flex: unset;
    }
    .footer_sitemap{
        height: auto;
        padding: 20px 10px;
    }
    .footer_sitemap ul li.foot_wide{
        max-width: unset;
    }
    .estate_btn {
        max-width: 275px;
        width: 80%;
    }
    .footer_info_box{
        flex-wrap: wrap;
        justify-content: center;
    }
    .footer_info_tel{
        margin-bottom: 30px;
        margin-right: 0;
        padding-left: 0;
        width: 100%;
    }
    .tel_num{
        justify-content: center;
    }
    .tel_lead{
        text-align: center;
    }
    .tel_subtxt{
        text-align: center;
    }
    .footer_right_box{
        width:100%;
    }
    .footer_info_com{
        margin:0 auto;
    }
    .footer_info_casbee{
    margin-top:20px;
    }
    .copyright {
        font-size: 10px !important;
        padding: 20px 20px 95px;
    }
}





.h_links ul li.soon{
    pointer-events: none;
    opacity: 0.6;
}
.footer_sitemap ul li.soon{
    pointer-events: none;
    opacity: 0.6;
}


@-moz-document url-prefix(){
    .h_logo img{
        height: 50px;
    }
    .footer_info_com_img li:nth-of-type(1) img{
        height: 55px;
    }
}







