@charset "UTF-8";
body {
	font-family: "Noto Sans JP";
	font-size: 1.6rem;
	letter-spacing: .1rem;
	font-weight: 300;
}
.sp-only {
	display: none;
}
.inner {
	width: 120rem;
	margin: 0 auto;
	position: relative;
}

.inline-block{
	display: inline-block;
}

header {
	width: 100%;
	background: #ffffff;
	box-shadow: 0 0 1rem rgba(0,0,0,.5);
	position: fixed;
	top: 0;
	z-index: 1;
}
header .inner {
	height: 8rem;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
header .inner a {
	background: #22b573;
	height: 8rem;
	display: flex;
	align-items: center;
	color: #ffffff;
	position: relative;
	padding: 0 2rem;
	transition: ease-in .2s;
}
header .inner a:hover {
	background: #0071bc;
}
header .inner a:before {
	content: "";
	display: inline-block;
	width: 2.7rem;
	height: 2.1rem;
	background: url(images/header-mail-icon.png)  center center / cover;
	margin: 0 1rem 0 0;
}

main {
	margin: 8rem 0 0;
}

.mainbanner {
	background: url(images/mainbanner.jpg) no-repeat center center /cover;
	height: 60rem;
}
.mainbanner h1 {
	text-align: center;
	font-size: 2.5rem;
	padding: 12rem 0 0;
	line-height: 1.6;
	letter-spacing: .2rem;
}
.mainbanner h1 span {
	font-size: 1.4rem;
	display: block;
	margin: 1rem auto 0;
	padding: 1rem 0 0;
	width: 42.5rem;
	line-height: 1.6;
	border-top: .2rem solid #000000;
}

.about {
	background: linear-gradient(90deg, #efefef 50%, #ffffff 50%, #ffffff 100%);
}
.about .inner {
	padding: 5rem 0;
	background: linear-gradient(90deg, #efefef 30rem, #ffffff 30rem, #ffffff 90rem);
}
.about .about-flex-area {
	display: flex;
	justify-content: space-between;
}
.about .about-flex-area h2 {
	font-family: serif;
	font-weight: 100;
	font-size: 5rem;
	writing-mode: vertical-rl;
	margin: 0 0 0 4rem;
	line-height: 1.4;
	letter-spacing: .5rem;
	position: relative;
}
.about .about-flex-area h2:after {
	content: "";
	display: inline-block;
	background: url(images/about-illust.png) no-repeat center center / cover;
	width: 18.9rem;
	height: 14.2rem;
	position: absolute;
	left: -3.5rem;
	bottom: -15rem;
}
.about .about-flex-area img {
	width: 34rem;
	height: 23rem;
	object-fit: cover;
	object-position: 100% 0;
}
.about .about-flex-area p {
	line-height: 4rem;
}
.about img.about-photo02 {
	margin: -1rem 0 0 20.5rem;
}

.merit {
	padding: 5rem 0 10rem;
}
.merit .inner {
	background: url(images/merit-illust02.png) no-repeat right bottom;
	padding: 0 0 5rem;
}
.merit .merit-wrap {
	border: .1rem solid #b9dbda;
	border-radius: 15rem 5rem;
	background: #ffffff;
	padding: 6rem 9rem;
	margin: 0 7rem 0 6rem;
	position: relative;
}
.merit .merit-wrap:before {
	content: "";
	display: inline-block;
	background: url(images/merit-illust01.png) no-repeat center center / cover;
	width: 22.3rem;
	height: 29.6rem;
	position: absolute;
	left: -6.2rem;;
	top: 0;
}
.merit .merit-wrap h2 {
	text-align: center;
	color: #3c6045;
	font-size: 3rem;
	font-family: Helvetica, Arial, "sans-serif";
	font-weight: 100;
	letter-spacing: .5rem;
}
.merit .merit-wrap ul {
	display: flex;
	justify-content: space-between;
}
.merit .merit-wrap ul li {
	color: #6fb6b3;
	font-size: 2.5rem;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1.2;
	width: 28.5rem;
	border: .1rem solid #b9dbda;
	padding: 1.5rem 0;
	margin: 3rem 0 5rem;
}
.merit .merit-wrap p {
	color: #3c6045;
	font-size: 2rem;
	line-height: 2;
}
.merit .merit-wrap table {
	border: .2rem solid #e6e6e6;
	width: 100%;
	table-layout: fixed;
	margin: 4rem 0 0;
}
.merit .merit-wrap table th {
	background: #f9f9f9;
	font-size: 2rem;
	font-weight: normal;
	padding: 1rem 0;
	color: #666666;
	border-right: .1rem solid #e6e6e6;
}
.merit .merit-wrap table td {
	font-size: 2rem;
	font-weight: normal;
	text-align: center;
	padding: 1rem 2rem;
	color: #666666;
	border-top: .1rem solid #e6e6e6;
	border-right: .1rem solid #e6e6e6;
}
.merit .merit-wrap table td:first-child {
	text-align: left;
}
.merit .merit-wrap table th:nth-child(2) {
	background: #ebf3f5;
	font-weight: bold;
	color: #6fb6b3;
}

.gallery {
	display: flex;
	justify-content: space-between;
	padding: 0 0 15rem;
}
.gallery .gallery-photo-left,
.gallery .gallery-photo-right {
	width: calc(50% - .5rem);
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.gallery .gallery-photo-left img {
	width: 100%;
}
.gallery .gallery-photo-right img {
	max-width: 100%;
	object-fit: cover;
}
.gallery .gallery-photo-right img:first-child {
	width: calc(57% - .5rem);
	margin: 0 0 1rem;
}
.gallery .gallery-photo-right img:nth-child(2) {
	width: calc(43% - .5rem);
	margin: 0 0 1rem;
}
.gallery .gallery-photo-right img:nth-child(3) {
	width: calc(43% - .5rem);
}
.gallery .gallery-photo-right img:nth-child(4) {
	width: calc(57% - .5rem);
}

.works {
	padding: 0 0 15rem;
}
.works h2 {
	font-size: 2rem;
	font-family: Arial, Helvetica, "sans-serif";
	text-align: center;
	margin: 0 0 1.5rem;
}
.works .works-wrap {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	margin: 0 0 10rem;
}
.works .works-wrap:last-child {
	margin: 0;
}
.works .works-wrap:nth-child(odd) {
	flex-flow: row-reverse;
}
.works .works-wrap .works-text-area {
	width: 45rem;
}
.works .works-wrap .works-text-area h3 {
	font-family: serif;
	font-size: 6.5rem;
	font-weight: 100;
	border-bottom: .3rem solid #000000;
	margin: 0 0 2rem;
	display: inline-block;
}
.works .works-wrap .works-text-area p {
	font-size: 2.4rem;
	line-height: 2;
}
.works .works-wrap .works-text-area table {
	width: 100%;
	border: .1rem solid #cccccc;
	margin: 2rem 0 0;
}
.works .works-wrap .works-text-area table th {
	width: 9rem;
	font-weight: normal;
	padding: 1rem;
	background: #efefef;
	border-left: .1rem solid #cccccc;
	border-bottom: .1rem solid #cccccc;
}
.works .works-wrap .works-text-area table td {
	width: 13.5rem;
	font-weight: normal;
	padding: 1rem;
	border-bottom: .1rem solid #cccccc;
}

.quality {
	padding: 0 0 15rem;
}
.quality h2 {
	font-size: 2rem;
	font-family: Arial, Helvetica, "sans-serif";
	text-align: center;
	margin: 0 0 1.5rem;
}
.quality .quality-wrap {
	display: flex;
	align-items: center;
}
.quality .quality-wrap:nth-child(odd) {
	flex-flow: row-reverse;
}
.quality .quality-wrap .quality-icon {
	display: flex;
	justify-content: center;
	align-items: center;
	background: #b3d2cc;
	width: 16rem;
	height: 16rem;
}
.quality .quality-wrap .quality-text-area {
	display: flex;
	padding: 0 4rem 0 3rem;
	width: 44rem;
}
.quality .quality-wrap .quality-text-area h3 {
	font-size: 2.5rem;
	font-weight: normal;
	color: #6fb6b3;
	margin: 0 0 1.5rem;
}
.quality .quality-wrap .quality-text-area p {
	line-height: 2;
}

.product {
	padding: 0 0 10rem;
}
.product h2 {
	font-size: 2rem;
	font-family: Arial, Helvetica, "sans-serif";
	text-align: center;
	margin: 0 0 1.5rem;
}
.product .inner {
}
.product p {
	font-size: 2.5rem;
	text-align: center;
	background: #efefef;
	padding: 1.5rem 0;
}
.product ul {
	margin: 4rem auto 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.product ul li {
	width: 19rem;
	margin: 0 0 7rem;
	color: #666666;
	font-size: 1.4rem;
	line-height: 1.4;
}
.product ul li img {
	max-width: 100%;
	display: block;
	margin: 0 auto 2rem;
}
.product ul li h3 {
	text-align: center;
	line-height: 1.4;
	margin: 0 0 1rem;
}

.price {
	padding: 0 0 10rem;
}
.price h2 {
	font-size: 2rem;
	font-family: Arial, Helvetica, "sans-serif";
	text-align: center;
	margin: 0 0 1.5rem;
}
.price .inner {
}
.price p {
	font-size: 2.5rem;
	text-align: center;
	background: #efefef;
	padding: 1.5rem 0;
}
.price ul {
	margin: 4rem auto 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-around;
}
.price ul li {
	width: 30rem;
	margin: 0;
	color: #666666;
	font-size: 1.4rem;
	line-height: 1.4;
	text-align: center;
}
.price ul li img {
	max-width: 100%;
	display: block;
	margin: 0 auto 2rem;
}
.price ul li h3 {
	text-align: center;
	line-height: 1.4;
	margin: 0 0 1rem;
}
.price .specially_order {
	text-align: center;
	margin-top: 20px;
	font-weight: 500;
}

.flow {
	padding: 10rem 0 0;
	background: #efefef;
}
.flow h2 {
	font-size: 2rem;
	font-family: Arial, Helvetica, "sans-serif";
	text-align: center;
	margin: 0 0 1.5rem;
}
.flow h3 {
	text-align: center;
	font-size: 2rem;
	font-weight: 400;
	margin: 3rem 0 1.5rem;
	position: relative;
}
.flow h3:after {
	content: "";
	display: inline-block;
	width: 14rem;
	height: .3rem;
	background: #6fb6b3;
	position: absolute;
	bottom: -1rem;
	left: calc(50% - 7rem);
}
.flow h4 {
	text-align: center;
	margin: 5rem 0 2rem;
	position: relative;
}
.flow p {
	text-align: center;
	color: #666666;
	line-height: 1.6;
	margin: 0 0 5rem;
	position: relative;
}
.flow p small {
	display: block;
}
.flow p:before {
	content: "";
	display: inline-block;
	border: 2rem solid transparent;
	border-top: 2rem solid #666666;
	position: absolute;
	left: calc(50% - 2rem);
	bottom: -4.5rem;
}
.flow p:after {
	content: "";
	display: inline-block;
	border: 1.8rem solid transparent;
	border-top: 1.8rem solid #efefef;
	position: absolute;
	left: calc(50% - 1.8rem);
	bottom: -4.1rem;
}
.flow p:nth-child(7) {
	margin: 0;
}
.flow p:nth-child(7):before,
.flow p:nth-child(7):after {
	border: none;
	border-top: none;
}
.flow .plan_far {
	display: inline-block;
	margin-top: 15px;
}
.flow .plan_far span{
	/* text-decoration: underline; */
	line-height: 1.5;
	color: #509b97;
}
.flow .installation_far {
	display: inline-block;
	margin-top: 10px;
	font-weight: 500;
	/* text-decoration: underline; */
	color: #509b97;
}
.flow ul {
	margin: 0 auto;
	width: 75rem;
	display: flex;
	justify-content: space-between;
}
.flow ul li:first-child {
	position: relative;
}
.flow ul li:first-child:after {
	content: "";
	display: inline-block;
	border: 2rem solid transparent;
	border-left: 2rem solid #6fb6b3;
	position: absolute;
	top: calc(50% - 2rem);
	right: -5.5rem;
}
.showroom {
	padding: 10rem 0;
	background: #efefef;
}
.showroom h2 {
	font-size: 2rem;
	font-family: Arial, Helvetica, "sans-serif";
	text-align: center;
	margin: 0 0 1.5rem;
}
.showroom p {
	text-align: center;
	margin: 5px 0;
}
.showroom ul {
	margin-top: 20px;
	display: flex;
	justify-content: space-around;
}
.showroom ul li {
	text-align: center;
	font-size: 2rem;
	line-height: 1.6;
}
.showroom ul li img {
	display: block;
	margin: 0 0 1rem;
}

#contact {
	padding: 10rem 0;
}
#contact h2 {
	font-size: 2rem;
	font-family: Arial, Helvetica, "sans-serif";
	text-align: center;
	margin: 0 0 1.5rem;
}
#contact p {
	text-align: center;
}
#contact form {
	margin: 0 0 5rem;
}
#contact ul {
	margin: 2rem 0 0;
}
#contact ul li {
	border: .2rem solid #cccccc;
	border-radius: 1rem;
	padding: 0 0 0  2rem;
	margin: 2rem 0 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#contact ul li label {
	font-size: 2rem;
	padding: 3rem 0;
	width: 29rem;
}
#contact ul li label span {
	font-size: 1.4rem;
	background: #b3b3b3;
	color: #ffffff;
	padding: .2rem 3rem;
	margin: 0 1rem 0 0;
}
#contact ul li label span.require {
	background: #6fb6b3;
}
#contact ul li input {
	width: 92rem;
	padding: 3rem 2rem;
	font-size: 2rem;
	border-radius: 0 .8rem .8rem 0;
}
#contact ul li:last-child {
	padding: 0;
	display: block;
}
#contact ul li:last-child label {
	padding: 2rem 0 0 2rem;
	display: block;
	width: 100%;
}
#contact ul li textarea {
	width: 100%;
	height: 20rem;
	padding: 2rem;
	font-size: 2rem;
}
#contact input[type="submit"] {
	font-size: 2.5rem;
	background: #6fb6b3;
	color: #ffffff;
	margin: 8rem auto 0;
	padding: 3rem 10rem;
	display: block;
	cursor: pointer;
	border-radius: 1rem;
	transition: ease-in .1s;
}
#contact input[type="submit"]:hover {
	background: #22b573;
}
#contact p.contact-tel {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 45rem;
	text-align: left;
	margin: 0 auto;
	font-size: 1.2rem;
}
#contact p.contact-tel a {
	font-size: 4rem;
}

.concept h2 {
	font-size: 2rem;
	font-family: Arial, Helvetica, "sans-serif";
	text-align: center;
	margin: 0 0 1.5rem;
}
.concept img {
	width: 100%;
	margin: 0 0 3rem;
}

footer {
	display: flex;
	justify-content: center;
	padding: 0 0 2rem;
}


.confirm,
.finish {
	padding: 3rem 0;
}
.confirm .inner,
.finish .inner {
	width: 70rem;
}
.confirm h2,
.finish h2 {
	text-align: center;
	color: #6fb6b3;
	font-weight: normal;
	margin: 0 0 1rem;
}
.confirm p,
.finish p {
	text-align: center;
	line-height: 1.6;
}
.confirm table {
	width: 100%;
	margin: 1rem auto 0;
	border: .1rem solid #acacac;
}
.confirm th {
	font-weight: normal;
	text-align: left;
	background: #efefef;
}
.confirm th,
.confirm td {
	padding: 1.5rem;
	border-bottom: .1rem solid #acacac;
}
.confirm input[type="submit"] {
	cursor: pointer;
}
.confirm input[type="submit"].submit-btn {
	font-size: 2.5rem;
	background: #6fb6b3;
	color: #ffffff;
	margin: 0 auto;
	padding: 1.5rem 10rem;
	display: block;
	border-radius: 1rem;
	transition: ease-in .1s;
}

.finish ul {
	margin: 2rem 0 0;
}
.finish ul li {
	margin: 0 0 1rem;
}
.finish ul li a {
	color: #6fb6b3;
	font-weight: 400;
	text-decoration: underline;
}
@media screen and (min-width: 768px) and (max-width: 1119px) {
	html {
		font-size: 40%;
	}
	.inner {
		width: 100%;
		padding: 0 1rem;
	}
	header .inner {
		padding: 0 0 0 1rem;
	}
	.about .about-flex-area h2 {
		margin: 0 0 0 1rem;
	}
	.about .about-flex-area h2:after {
		background: url(images/about-illust.png) no-repeat center center / contain;
		width: 11rem;
		left: 0;
		bottom: -12rem;
	}
	.about .about-flex-area p {
		line-height: 3;
	}
	.about .about-flex-area img {
		width: 30%;
		height: 18rem;
	}
	.about img.about-photo02 {
		width: 61%;
		margin: -1rem auto 0;
		display: block;
	}
	.merit {
		padding: 5rem 0;
	}
	.gallery {
		padding: 0 0 10rem;
	}
	.gallery .gallery-photo-left,
	.gallery .gallery-photo-right {
		align-items: flex-start;
	}
	.works {
		padding: 0 0 10rem;
	}
	.works .works-wrap {
		margin: 0 0 5rem;
	}
	.works .works-wrap img {
		width: calc(50% - 1rem);
	}
	.works .works-wrap .works-text-area {
		width: 50%;
	}
	.works .works-wrap .works-text-area h3 {
		font-size: 4rem;
		margin: 0 0 1rem;
		border-bottom: .15rem solid #000000
	}
	.works .works-wrap .works-text-area p {
		font-size: 2rem;
		line-height: 1.6;
	}
	.quality {
		padding: 0 0 10rem;
	}
	.quality .quality-wrap .quality-icon {
		height: auto;
		padding: 2.5rem 0 ;
	}
	.quality .quality-wrap .quality-text-area {
		padding: 2rem;
	}
	.quality .quality-wrap img {
		width: 50%;
	}
	.product {
		padding: 0 0 5rem;
	}
	.product .inner {
		width: 100%;
	}
	.product ul {
		width: 100%;
	}
	.product ul li {
		width: calc((100% - 6rem) / 3);
		margin: 0 0 5rem;
	}
	.product ul li img {
		max-width: 80%;
	}
	.price {
		padding: 0 0 5rem;
	}
	.price .inner {
		width: 100%;
	}
	.price ul {
		width: 100%;
	}
	.price ul li {
		width: calc((100% - 6rem) / 3);
		margin: 0 0 5rem;
	}
	.price ul li img {
		max-width: 80%;
	}
	.flow {
		padding: 5rem 0 0;
	}
	.flow ul {
		width: 80%;
	}
	.flow ul li {
		width: calc(50% - 2.5rem);
	}
	.flow ul li img {
		width: 100%;
	}
	.showroom {
		padding: 5rem 0;
	}
	.showroom ul {
		width: 100%;
	}
	.showroom ul li {
		width: calc(50% - .5rem);
	}
	.showroom ul li img {
		max-width: 100%;
	}
	#contact {
		padding: 5rem 0 0;
	}
	#contact form {
		margin: 0 0 1rem;
	}
	#contact ul li label {
		width: 35rem;
	}
	#contact input[type="submit"] {
		margin: 5rem auto 0;
	}
	#contact p.contact-tel {
		margin: 0 auto 5rem;
		justify-content: center;
	}
}
@media screen and (max-width: 767px) {
	.pc-only {
		display: none;
	}
	.sp-only {
		display: block;
	}
	.order01 {
		order: 1;
	}
	.order02 {
		order: 2;
	}
	.order03 {
		order: 3;
	}
	.order04 {
		order: 4;
	}
	html {
		font-size: 55%;
	}
	.inner {
		width: 100%;
		padding: 0 1rem;
	}
	header .inner {
		padding: 0 0 0 1rem;
		height: 5rem;
	}
	header img {
		height: 3.5rem;
	}
	main {
		margin: 5rem 0 0;
	}
	.mainbanner {
		height: 32rem;
	}
	header .inner a {
		height: 5rem;
	}
	.mainbanner h1 {
		padding: 5rem 0 0;
	}
	.mainbanner h1 span {
		width: 92%;
		letter-spacing: .1rem;
	}
	.about .inner {
		background: linear-gradient(90deg, #efefef 12rem, #ffffff 12rem, #ffffff 100%);
		padding: 3rem 0 2rem;
	}
	.about .about-flex-area {
		flex-wrap: wrap;
		padding: 0 1rem;
	}
	.about .about-flex-area h2 {
		margin: 0 0 0 -.5rem;
		font-size: 3.8rem;
	}
	.about .about-flex-area img {
		width: calc(100% - 10rem);
		height: 22rem;
	}
	.about .about-flex-area h2:after {
		background: url(images/about-illust.png) no-repeat center center / contain;
		width: 9rem;
		left: 0;
		bottom: -10rem;
		opacity: .5;
	}
	.about .about-flex-area p {
		line-height: 2;
		margin: 1rem 0 0;
	}
	.about img.about-photo02 {
		width: calc(100% - 2rem);
		margin: 1rem auto 0;
		display: block;
	}
	.merit {
		padding: 1rem 0 3rem;
	}
	.merit .inner {
		background: url(images/merit-illust02.png) no-repeat right bottom / 7rem;
		padding: 2rem 0;
	}
	.merit .merit-wrap {
		margin: 0 2rem;
		border-radius: 3rem 1rem;
		padding: 2rem;
	}
	.merit .merit-wrap:before {
		background: url(images/merit-illust01.png) no-repeat center top 0rem / contain;
		width: 7rem;
		left: -2rem;
		top: -2rem;
	}
	.merit .merit-wrap h2 {
		font-size: 2.5rem;
	}
	.merit .merit-wrap ul {
		align-items: flex-start;
		flex-wrap: wrap;
		margin: 1rem 0 0;
	}
	.merit .merit-wrap ul li {
		margin: 0 0 1rem;
		font-size: 2rem;
		width: calc(50% - .5rem);
	}
	.merit .merit-wrap ul li:last-child {
		width: 100%;
	}
	.merit .merit-wrap p {
		font-size: 1.6rem;
	}
	.merit .merit-wrap table {
		margin: 2rem 0 0;
		table-layout: auto;
	}
	.merit .merit-wrap table th {
		font-size: 1.6rem;
		vertical-align: middle;
		padding: 1rem .5rem;
	}
	.merit .merit-wrap table td {
		font-size: 1.6rem;
		padding: 1rem;
	}
	.gallery {
		padding: 0 0 3rem;
		flex-wrap: wrap;
	}
	.gallery .gallery-photo-left,
	.gallery .gallery-photo-right {
		align-items: flex-start;
	}
	.gallery .gallery-photo-left {
		margin: 0 0 1rem;
	}
	.gallery .gallery-photo-left,
	.gallery .gallery-photo-right {
		width: 100%;
	}
	.works {
		padding: 0 0 3rem;
	}
	.works .works-wrap,
	.works .works-wrap:nth-child(odd) {
		flex-wrap: wrap;
		margin: 0 0 3rem;
	}
	.works .works-wrap .works-text-area h3 {
		font-size: 3.5rem;
		border-bottom: .15rem solid #000000;
		margin: 0 0 1rem;
	}
	.works .works-wrap .works-text-area p {
		font-size: 1.8rem;
	}
	.works .works-wrap .works-text-area table {
		margin: 1rem 0;
	}
	.works .works-wrap .works-text-area table th,
	.works .works-wrap .works-text-area table td {
		width: auto;
	}
	.quality {
		padding: 0 0 1rem;
	}
	.quality .quality-wrap {
		flex-wrap: wrap;
	}
	.quality .quality-wrap:nth-child(odd) {
		flex-flow: wrap;
	}
	.quality .quality-wrap .quality-icon {
		width: 10rem;
		height: 10rem;
		margin: .5rem 0 3rem;
	}
	.quality .quality-wrap .quality-icon img {
		width: 60%;
	}
	.quality .quality-wrap .quality-text-area {
		width: 100%;
		padding: 0;
	}
	.quality .quality-wrap .quality-text-area h3 {
		font-size: 2rem;
		text-align: center;
		margin: 0 0 .5rem;
	}
	.quality .quality-wrap img.order03 {
		width: calc(100% - 10rem);
		height: 10rem;
		margin: .5rem 0 3rem;
	}
	.product {
		padding: 0;
	}
	.product .inner {
		width: 100%;
	}
	.product h2 {
		margin: 0 0 1rem;
	}
	.product p {
		font-size: 1.4rem;
	}
	.product ul {
		width: 100%;
		margin: 1.5rem 0 0;
	}
	.product ul li,
	.product ul li:nth-child(n + 4) {
		width: calc(50% - .5rem);
		margin: 0 0 3rem;
	}
	.product ul li img {
		width: 80%;
		display: block;
		margin: 0 auto 1rem;
	}
	.product ul li h3 {
		font-size: 1.5rem;
		margin: 0 0 .5rem;
	}
	.product ul li h3 span {
		display: inline;
	}
	.price {
		padding: 0;
	}
	.price .inner {
		width: 100%;
	}
	.price h2 {
		margin: 0 0 1rem;
	}
	.price p {
		font-size: 1.4rem;
	}
	.price ul {
		width: 100%;
		margin: 1.5rem 0 0;
	}
	.price ul li,
	.price ul li:nth-child(n + 4) {
		width: calc(50% - 1rem);
		/* margin: 0 0 3rem; */
	}
	.price ul li img {
		width: 80%;
		display: block;
		margin: 0 auto;
	}
	.price ul li h3 {
		font-size: 1.5rem;
		margin: 0 0 .5rem;
	}
	.price ul li h3 span {
		display: inline;
	}
	.price .price_item.plain{
		width: 100%;
		order: -1;
		margin: 0 10% 1rem;
	}
	.price .price_item.plain img{
		width: calc(50% - .5rem);
	}
	.price .specially_order{
		margin: 3rem 0;
		/* text-decoration: underline; */
	}
	.flow {
		padding: 3rem 0 0;
	}
	.flow h2 {
		margin: 0 0 .5rem;
	}
	.flow p small {
		line-height: 1.4;
	}
	.flow p:after {
		bottom: -4rem;
	}
	.flow h4 {
		margin: 3rem 0 1rem;
	}
	.flow ul {
		width: 100%;
	}
	.flow ul li {
		width: calc(50% - 2.5rem);
	}
	.showroom {
		padding: 3rem 0 1rem;
	}
	.showroom h2 {
		margin: 0 0 .5rem;
	}
	.showroom ul {
		flex-wrap: wrap;
	}
	.showroom ul li {
		font-size: 1.6rem;
		margin: 0 0 2rem;
	}
	#contact {
		padding: 3rem 0;
	}
	#contact form {
		margin: 0 0 3rem;
	}
	#contact ul li {
		padding: 0;
	}
	#contact ul li label {
		font-size: 1.4rem;
		padding: 2rem 0 2rem 2rem;
		width: 13rem;
	}
	#contact ul li label span {
		display: block;
		text-align: center;
		width: 5rem;
		padding: .2rem 1rem;
		margin: 0 0 .5rem;
	}
	#contact ul li input {
		width: calc(100% - 12rem);
		padding: 2rem 0;
	}
	#contact input[type="submit"] {
		width: 100%;
		margin: 1.5rem 0 0;
		padding: 2rem 0;
		font-size: 2rem;
	}
	#contact p.contact-tel {
		width: 100%;
		justify-content: center;
	}
	#contact p.contact-tel a {
		font-size: 3rem;
		padding: 0 .5rem;
	}
	footer {
		padding: 0 0 1rem;
	}
	footer img {
		align-items: baseline;
	}

	.confirm .inner,
	.finish .inner {
		width: 100%;
	}
	.confirm p,
	.finish p {
		text-align: justify;
	}
	.confirm table {
		border-bottom: none;
		margin: 1rem 0;
	}
	.confirm th,
	.confirm td {
		display: block;
		width: 100%;
	}
}
