@charset "utf-8";
/* CSS Document */

/****************reset*******************/
html{
	margin:0!important;
}
body,div,dl,dt,dd,h1,h2,h3,h4,h5,h6,p{
	padding:0;
	margin:0;
	width:auto;
	font-size:100%;
	line-height: 180%;
	font-weight:normal;
	box-sizing: border-box;
	color:#333;
}
ul,li{
	list-style:none;
	padding:0;
	margin:0;
	font-size:100%;
	line-height: 180%;
	font-weight:normal;
}
a img {
	border:none;
}
img{
	line-height:100%;
	font-size:0px;
	-webkit-backface-visibility:hidden;
}
a,button{
	text-decoration:none;
	transition:.4s;
	-webkit-transition:.4s;
	cursor:pointer;
}
/****************clearfix*******************/
.clearfix {
	min-height:1px;
	overflow-x:hidden;
}
* html .clearfix{height:1px; /*\*//*/ height:auto; overflow:hidden; /**/ }
p,li,h3,h4,a,strong,dd,dt,dl{
	color: #333333;
	letter-spacing: .075em;
	text-align: justify;
}
body{
	margin: 0;
	font-family:'Noto Sans JP','Helvetica Neue','Helvetica','Arial','Hiragino Sans','ヒラギノ角ゴシック','ＭＳ Ｐゴシック','MS PGothic',sans-serif;
	font-size:16px;
	font-weight:400;
	background-size:100%;
	line-height: 2em;
	background: #fff;
}
table {
    border-collapse:collapse;
    border-spacing:0;
}
.head_title{
	font-size:14px;
	color:#aaa;
	text-align:center;
}
/* 共通  */
.relative{
	position:relative;
	overflow:auto;
}
.sp{display:none;}
.inner1320{
	width:90%;
	max-width:1320px;
	margin:0 auto;
	position: relative;
}
.inner1200{
	width:90%;
	max-width:1200px;
	margin:0 auto;
	position: relative;
}
.inner1080{
	width:90%;
	max-width:1080px;
	margin:0 auto;
	position: relative;
}
.inner924{
	width:90%;
	max-width: 924px;
	margin:0 auto;
	position: relative;
}
h2{
	width:100%;
	max-width:320px;
	padding:20px 24px;
	margin:0 auto;
	display:inline-block;
	font-size:36px;
	font-family: 'Cormorant Garamond','Noto Serif JP', serif;
    font-weight: 600;
    line-height: 1;
	color:#4A4A4A;
	border:1px solid #ccc;
	box-sizing:border-box;
}
h2 span{
	font-family: 'Noto Serif JP', serif;
    font-size:87%;
    margin-left: 2px;
}
h3{
	font-size:28px;
	margin-bottom:64px;
	font-family: 'Cormorant Garamond','Noto Serif JP', serif;
    font-weight: 600;
}
h3 span{
	font-family: 'Noto Serif JP', serif;
    font-size:87%;
    margin-left: 2px;
}
hr{
	height: 1px;
	border: none;
	background: #999;
}
.fw_500{
	font-weight:500;
}
.txt_right{
	text-align:right!important;
}
.text_center{
	text-align:center!important;
}
.margin_0{
	margin:0!important;
}
.flex_contents{
	display:flex;
	align-items: center;
	flex-wrap: wrap;
}
.flex_contents_between{
	display:flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}
footer {
	padding-bottom:40px;
}
footer .ft_menu img{
	width:212px;
	margin:0 auto 12px;
}
/* 共通  */

.top_contents{
	height:calc( 100vh - 136px );
    min-height: 832px;
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	align-items:center;
    align-content: center;
}
.head_contents{
	width:412px;
	margin:32px auto 60px;
	text-align:center;
}
.head_contents img{
	width:100%;
	margin-bottom:32px;
}
.head_contents img.vr360{
	width:300px;
	margin:0;
}
.type_link{
	width:100%;
	margin-bottom:40px;
}
.type_link .type_box{
	width:calc( 33.333% - 24px );
}
.type_box img{
	width:100%;
	margin-bottom:8px;
}
.type_link a{
	width:100%;
}
.type_link a img:hover{
	opacity:.6;
}
.type_link a.link_box{
	padding:20px 24px;
	font-family: 'Cormorant Garamond','Noto Serif JP', serif;
    font-weight: 600;
	font-size:24px;
    display: block;
	border:1px solid #ccc;
	box-sizing:border-box;
}
.type_link a.link_box:hover{
	background:#f5f5f5;
}
.type_link a.link_box span{
	font-family: 'Noto Serif JP', serif;
    font-size:87%;
    margin-left: 2px;
}
/*page_contents*/
.page_contents .head_contents{
	width:320px;
    margin: 32px auto 0;
}
.page_contents .head_contents img{
    margin-bottom: 16px;
}
.page_contents .head_contents img.vr360{
	width:240px;
	margin-bottom:32px;
}
.customize{
	margin:0 auto 80px;
}
.customize .house_link{
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
}
.customize .house_link a{
	padding:10px 16px;
	margin-right:16px;
	margin-bottom:10px;
	display:inline-block;
	border:solid 1px #999;
}
.customize .house_link a:last-child{
	margin-right:0;
}
.customize .house_link a:hover{
	background:#eee;
}
.customize .house_link a.floor{
	background:#777;
	color:#fff;
	border:none;
	font-size:120%;
}
.customize .house_link a.floor:hover{
	background:#777;
	cursor:auto;
}
.page_contents #master-container{
	max-width:800px!important;
	height:440px!important;
	margin:0 auto 12px;
}
.page_contents .type_link{
    margin-top: 128px;
}
.page_contents .type_link a.link_box{
	width:calc( 50% - 24px );
}
/*page_contents*/

/* pagetop */
#pagetop {
	position:fixed;
	bottom:20px;
	right:20px;
}
#pagetop a{
	display:block;
	z-index:999;
	border-radius:30px;
	width:45px;
	height:45px;
	background:url(../img/btn_page_top.png) #fff;
	background-size:contain;
	text-align:center;
}
#pagetop a:hover{
	text-decoration:none;
	opacity:0.7;
}
/* pagetop */
@media (max-width: 1264px){
/* 共通  */
	h2{
    	font-size:28px;
	}
	h3 {
		font-size:22px;
		margin-bottom:56px;
	}
/* 共通  */
	.head_contents{
		width:372px;
	}
	.head_contents img{
		margin-bottom:24px;
	}
	.head_contents img.vr360{
		width:220px;
	}
	.type_link .type_box{
		width: calc( 33.333% - 16px );
	}
/*page_contents*/
	.page_contents .head_contents{
		width:280px;
		margin:32px auto 80px;
	}
	.page_contents .head_contents img.vr360{
		width:200px;
	}
	.page_contents #master-container{
    	height:400px!important;
	}
	.page_contents .type_link {
    	margin-top: 112px;
	}
/*page_contents*/
}
@media (max-width: 768px){
/* 共通  */
	h2{
    	font-size:32px;
	}
	h3 {
		font-size:26px;
		margin-bottom:52px;
	}
/* 共通  */
	.head_contents{
		width:332px;
		margin:32px auto 60px;
	}
	.head_contents img{
		margin-bottom:24px;
	}
	.head_contents img.vr360{
		width:200px;
	}
/*page_contents*/
	.page_contents .head_contents{
		width:264px;
		margin:32px auto 64px;
	}
	.page_contents .head_contents img.vr360{
		width:180px;
	    margin-bottom:24px;
	}
	.page_contents #master-container{
    	height:360px!important;
	}
	.page_contents .type_link {
    	margin-top: 104px;
	}
/*page_contents*/
}

@media (max-width: 640px){
	.pc{display:none;}
	.sp{display:block;}
/* 共通  */
	h2{
		padding:4vw;
		font-size:6.8vw;
	}
	h3 {
		font-size:5.12vw;
		margin-bottom:10vw;
	}
	p, li, a, strong, dd, dt, dl{
		font-size: 3.5vw;
	}
	footer {
    	padding-bottom:5vw;
	}
/* 共通  */
	.top_contents{
		height:auto;
    	min-height: auto;
	}
	.head_contents{
    	width: 70%;
    	margin:6vw auto 12vw;
	}
	.head_contents img{
		margin-bottom:4vw;
	}
	.head_contents img.vr360{
		width:44vw;
	}
	.type_link .type_box{
		width: 100%;
		padding: 3.2vw;
		margin-bottom: 4.8vw;
	}
	.type_link a.link_box{
	    font-size: 4.64vw;
	}
	.type_link a.link_box:last-child{
		margin-bottom:0;
	}
/*page_contents*/
	.page_contents .head_contents{
    	width:60%;
		margin:32px auto 16vw;
	}
	.page_contents .head_contents img{
		margin-bottom:2vw;
	}
	.page_contents .head_contents img.vr360{
		width:36vw;
	    margin-bottom:4vw;
	}
	.page_contents #master-container{
    	height:56vw!important;
	}
	.page_contents .type_link {
    	margin-top:20vw;
	}
	.page_contents .type_link a.link_box{
	    width: calc( 50% - 8px );
		margin-bottom:0;
	}
	.customize .house_link a {
		padding: 1.6vw 3vw;
		margin-right: 2vw;
		margin-bottom: 2vw;
		font-size: 3.4vw;
	}
/*page_contents*/
/* pagetop */
#pagetop {
	position:fixed;
	bottom: 2%;
	right:3%;
}
#pagetop a{
	display:block;
	z-index:999;
	border-radius:30px;
	width:12vw;
	height:12vw;
	background:url(../img/btn_page_top.png) #fff;
	background-size:contain;
	text-align:center;
	background-repeat:no-repeat;
}
/* pagetop */
}
