/* reform.css
========================================*/
#reform {
	padding-top:60px;
}
@media screen and (max-width: 767px) {
	#reform {
		padding:21.3333333333vw 0 0;
	}
}
@media print, screen and (min-width: 768px) {
	#reform {
		margin-top:70px;
	}
}
#reform div, #reform dl, #reform dt, #reform dd, #reform ul, #reform ol, #reform li, #reform h1, #reform h2, #reform h3, #reform h4, #reform h5, #reform h6, #reform form, #reform fieldset, #reform legend, #reform input, #reform textarea, #reform p, #reform blockquote, #reform th, #reform td {
	margin:0;
	padding:0;
}
#reform ul, #reform ol, #reform li {
	list-style-type:none;
}
#reform .title-wrap {
	display:table;
	position:relative;
}
#reform .title-wrap:before {
	content:"";
	position:absolute;
	right:-110px;
	border-top:2px solid #000;
	width:100px;
	height:90%;
	bottom:-15px;
	z-index:9999;
}
#reform .title-wrap:after {
	content:"";
	position:absolute;
	right:-110px;
	border-right:2px solid #000;
	width:100px;
	height:90%;
	top:23px;
	z-index:9999;
}
#reform .title-wrap h3 {
	color:#2a3e4f;
	font-family:"Rajdhani", Helvetica, Arial, Lucida, sans-serif;
	font-size:46px;
	font-weight:600;
	line-height:1;
	padding-bottom:10px;
	text-transform:uppercase;
	width:103%;
}
#reform .title-wrap p {
	color:#2a3e4f;
	font-weight:500;
	margin:0;
	padding-left:3%;
	text-align:inherit;
}
#reform>article {
	color:#0d0d0d !important;
	font-family:"Noto Sans JP", sans-serif;
	font-weight:300;
	margin:8vw auto 0;
}
@media print, screen and (min-width: 768px) {
	#reform>article {
		margin:40px auto 0;
		width:1080px;
	}
}
#reform>article img {
	vertical-align:top;
}
#reform>article p {
	padding-bottom:0;
}
#reform>article>h4 {
	color:#2a3e4f;
	font-size:32px;
	font-weight:bold;
	letter-spacing:.1em;
	margin-bottom:30px;
}
@media screen and (max-width: 767px) {
	#reform>article>h4 {
		font-size:6.4vw;
		letter-spacing:.05em;
		line-height:1.3;
		margin-bottom:5.3333333333vw;
	}
}
#reform>article .image-wrap {
	border-bottom:1px solid #0d0d0d;
	margin-bottom:40px;
	padding-bottom:30px;
}
@media screen and (max-width: 767px) {
	#reform>article .image-wrap {
		margin-bottom:8vw;
		padding-bottom:5.3333333333vw;
	}
}
#reform>article .image-wrap .-main {
	background-color:#eaedf1;
	margin-bottom:20px;
	padding:30px 20px;
}
@media screen and (max-width: 767px) {
	#reform>article .image-wrap .-main {
		margin-bottom:5.3333333333vw;
		padding:5.3333333333vw 4vw;
	}
}
#reform>article .image-wrap .-main>li {
	display:none;
}
#reform>article .image-wrap .-main>li.is-show {
	display:block;
}
@media print, screen and (min-width: 768px) {
	#reform>article .image-wrap .-main>li {
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		display:none;
	}
	#reform>article .image-wrap .-main>li.is-show {
		display:flex;
	}
}
#reform>article .image-wrap .-main>li>figure {
	margin:0;
	position:relative;
	text-align:center;
}
@media print, screen and (min-width: 768px) {
	#reform>article .image-wrap .-main>li>figure {
		height:381px;
		width:508px;
	}
	#reform>article .image-wrap .-main>li>figure>img {
		height:100%;
	}
}
@media screen and (max-width: 767px) {
	#reform>article .image-wrap .-main>li>figure {
		margin-bottom:5.3333333333vw;
		height:62.9333333333vw;
		width:84vw;
	}
	#reform>article .image-wrap .-main>li>figure:last-of-type {
		margin-bottom:0;
	}
	#reform>article .image-wrap .-main>li>figure>img {
		height:100%;
	}
}
#reform>article .image-wrap .-main>li>figure>figcaption {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	background-color:#0d0d0d;
	color:#fff;
	font-size:20px;
	font-weight:500;
	position:absolute;
	bottom:-10px;
	right:-12px;
	text-align:center;
	height:48px;
	width:120px;
}
@media screen and (max-width: 767px) {
	#reform>article .image-wrap .-main>li>figure>figcaption {
		font-size:3.7333333333vw;
		bottom:-2.1333333333vw;
		right:-2.6666666667vw;
		height:9.6vw;
		width:24vw;
	}
}
#reform>article .image-wrap .-thumb {
	position:relative;
}
@media print, screen and (min-width: 768px) {
	#reform>article .image-wrap .-thumb .js-mousedrag {
		overflow-x:hidden;
		white-space:nowrap;
		-webkit-overflow-scrolling:touch;
		width:1080px;
	}
}
@media screen and (max-width: 767px) {
	#reform>article .image-wrap .-thumb .js-mousedrag {
		overflow-x:scroll;
		margin:0 4vw;
		width:84vw;
	}
	#reform>article .image-wrap .-thumb .js-mousedrag:before {
		background:url(../../img/reform/icon_left.svg) no-repeat;
		content:"";
		display:block;
		position:absolute;
		left:0;
		top:calc(50% - 1.3333333333vw);
		height:2.6666666667vw;
		width:3.2vw;
	}
	#reform>article .image-wrap .-thumb .js-mousedrag:after {
		background:url(../../img/reform/icon_right.svg) no-repeat;
		content:"";
		display:block;
		position:absolute;
		right:0;
		top:calc(50% - 1.3333333333vw);
		height:2.6666666667vw;
		width:3.2vw;
	}
}
#reform>article .image-wrap .-thumb ul {
	display:flex;
	flex-wrap:wrap;
	width:1770px;
}
#reform>article .image-wrap .-thumb ul>li {
	cursor:pointer;
	margin-right:15px;
	text-align:center;
	width:240px;
	transition:opacity .3s ease;
}
#reform>article .image-wrap .-thumb ul>li:last-of-type {
	margin-right:0;
}
#reform>article .image-wrap .-thumb ul>li:hover {
	opacity:.7;
}
#reform>article .image-wrap .-thumb ul>li>img {
	max-height:180px;
}
@media screen and (max-width: 767px) {
	#reform>article .image-wrap .-thumb ul {
		width:calc((37.3333333333vw * 7) + (3.2vw * 6));
	}
	#reform>article .image-wrap .-thumb ul>li {
		margin-right:3.2vw;
		text-align:center;
		width:37.3333333333vw;
	}
	#reform>article .image-wrap .-thumb ul>li:last-of-type {
		margin-right:0;
	}
	#reform>article .image-wrap .-thumb ul>li>img {
		max-height:28vw;
	}
}
@media screen and (max-width: 767px) {
	#reform>article .image-wrap .-button {
		display:none;
	}
}
#reform>article .image-wrap .-button>div {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	background-color:rgba(219, 155, 74, .8);
	cursor:pointer;
	position:absolute;
	top:0;
	height:100%;
	width:40px;
	z-index:10;
}
#reform>article .image-wrap .-button>div.js-scroll-right {
	right:0;
}
#reform>article .icon-list {
	display:flex;
	flex-wrap:wrap;
	margin-bottom:25px;
}
@media screen and (max-width: 767px) {
	#reform>article .icon-list {
		margin-bottom:5.3333333333vw;
	}
}
#reform>article .icon-list>li {
	border-style:solid;
	border-width:1px;
	font-size:13px;
	margin-right:10px;
	padding:5px;
	text-align:center;
	width:140px;
}
#reform>article .icon-list>li._concept {
	border-color:#2a3e4f;
	color:#2a3e4f;
}
#reform>article .icon-list>li._mansion {
	border-color:#9e005d;
	color:#9e005d;
}
#reform>article .icon-list>li._interior {
	border-color:#fca722;
	color:#fca722;
}
@media screen and (max-width: 767px) {
	#reform>article .icon-list>li {
		font-size:2.9333333333vw;
		margin-right:1.8666666667vw;
		margin-bottom:1.8666666667vw;
		padding:1.3333333333vw;
		width:29.3333333333vw;
	}
	#reform>article .icon-list>li:nth-of-type(3n) {
		margin-right:0;
	}
}
#reform>article .copy-text {
	color:#2a3e4f !important;
	font-size:30px;
	font-weight:700;
	letter-spacing:.05em;
	line-height:1.5;
	margin-bottom:10px;
}
@media screen and (max-width: 767px) {
	#reform>article .copy-text {
		font-size:5.3333333333vw;
		margin-bottom:2.6666666667vw;
	}
}
#reform>article .area-text {
	font-size:18px;
}
@media screen and (max-width: 767px) {
	#reform>article .area-text {
		font-size:4vw;
	}
}
@media print, screen and (min-width: 768px) {
	#reform>article .flex-block {
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		margin-top:40px;
		margin-bottom:80px;
	}
}
@media screen and (max-width: 767px) {
	#reform>article .flex-block {
		margin-top:8vw;
		margin-bottom:10.6666666667vw;
	}
}
#reform>article .pr-text {
	line-height:1.5;
}
@media print, screen and (min-width: 768px) {
	#reform>article .pr-text {
		flex:1;
		font-size:17px;
		padding-right:80px;
	}
}
@media screen and (max-width: 767px) {
	#reform>article .pr-text {
		font-size:3.7333333333vw;
		margin-bottom:10.6666666667vw;
	}
}
#reform>article .info-sec {
	position:relative;
}
@media print, screen and (min-width: 768px) {
	#reform>article .info-sec {
		width:420px;
	}
}
@media screen and (max-width: 767px) {
	#reform>article .info-sec {
		padding-top:5.3333333333vw;
	}
}
#reform>article .info-sec>h5 {
	background-color:#0d0d0d;
	color:#fff;
	font-size:17px;
	font-weight:400;
	letter-spacing:.1em;
	padding:13px 10px;
	position:absolute;
	left:-30px;
	text-align:center;
	width:200px;
}
@media screen and (max-width: 767px) {
	#reform>article .info-sec>h5 {
		font-size:4vw;
		padding:3.2vw 2.6666666667vw;
		top:0;
		left:-4vw;
		width:42.6666666667vw;
	}
}
#reform>article .info-sec>ul {
	background-color:#eaedf1;
	margin-top:22px;
	padding:35px 20px 10px;
}
#reform>article .info-sec>ul>li {
	border-bottom:2px solid #fff;
	font-size:16px;
	padding:10px 20px;
}
#reform>article .info-sec>ul>li:last-of-type {
	border-bottom:0;
}
#reform>article .info-sec>ul>li>dl {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
#reform>article .info-sec>ul>li>dl>dt {
	font-weight:700;
}
#reform>article .info-sec>ul>li>dl>dd {
	width:160px;
}
@media screen and (max-width: 767px) {
	#reform>article .info-sec>ul {
		margin-top:0;
		padding:8vw 4vw 2.6666666667vw;
	}
	#reform>article .info-sec>ul>li {
		border-bottom:.5333333333vw solid #fff;
		font-size:3.7333333333vw;
		padding:2.6666666667vw 4vw;
	}
	#reform>article .info-sec>ul>li:last-of-type {
		border-bottom:0;
	}
	#reform>article .info-sec>ul>li>dl>dd {
		width:37.3333333333vw;
	}
}
#reform>article .voice-block {
	margin-bottom:60px;
}
#reform>article .voice-block>dt {
	display:flex;
	flex-wrap:wrap;
	align-items:flex-end;
	padding-left:38px;
}
#reform>article .voice-block>dt>span {
	display:block;
	font-size:20px;
	font-weight:500;
	letter-spacing:.1em;
	padding-bottom:25px;
}
#reform>article .voice-block>dd {
	background-color:#eaedf1;
	border-radius:42px;
	font-size:16px;
	font-weight:400;
	line-height:1.8;
	padding:35px 60px;
}
@media screen and (max-width: 767px) {
	#reform>article .voice-block>dt {
		padding-left:10.1333333333vw;
	}
	#reform>article .voice-block>dt>img {
		width:37.3333333333vw;
	}
	#reform>article .voice-block>dt>span {
		font-size:4.8vw;
		padding-bottom:5.3333333333vw;
	}
	#reform>article .voice-block>dd {
		border-radius:10.6666666667vw;
		font-size:4vw;
		padding:8vw 10.6666666667vw;
	}
	#reform>article .voice-block._customer>dt>img {
		width:35.2vw;
	}
}
