@charset "utf-8";
@media screen and (max-width: 768px) {
	/* -----------------------------------------------------------------------------

		å…±é€š

	  ----------------------------------------------------------------------------- */

	#container {
		clear: both;
	}
	#container > section {
		padding: 10% 0 15%;
	}
	#wrapper {
		position: relative;
		z-index: 999;
		display: block !important;
	}
	/* -----------------------------------------------------------------------------

		header,nav

	  ----------------------------------------------------------------------------- */

	#menuBtn {
		width: 60px;
		height: 60px;
		position: fixed;
		top: 0;
		right:0;
		font-size: 0;
		z-index: 1000;
		transition: all .4s;
	}
	#menuBtn {
		background: rgba(255,255,255,0.8);
	}
	#menuBtn span {
		display: block;
		position: absolute;
		width: 30px;
		height: 2px;
		top: 50%;
		margin-top: -1px;
		left: 16px;
		background: #584d3d;
	}
	#menuBtn span::before, #menuBtn span::after {
		position: absolute;
		display: block;
		left: 0;
		width: 100%;
		height: 2px;
		background-color: #584d3d;
		content: "";
	}
	#menuBtn span::before {
		top: 50%;
		margin-top: -10px;
	}
	#menuBtn span::after {
		bottom: 50%;
		margin-bottom: -10px;
	}
	#menuBtn span {
		-webkit-transition: background 0s 0.3s;
		transition: background 0s 0.3s;
	}
	#menuBtn span::before,
	#menuBtn span::after {
		-webkit-transition-duration: 0.3s, 0.3s;
		transition-duration: 0.3s, 0.3s;
		-webkit-transition-delay: 0.3s, 0s;
		transition-delay: 0.3s, 0s;
	}
	#menuBtn span::before {
		-webkit-transition-property: top, -webkit-transform;
		transition-property: top, transform;
	}
	#menuBtn span::after {
		-webkit-transition-property: bottom, -webkit-transform;
		transition-property: bottom, transform;
	}

	/* menu open */
	#menuBtn.active {
		background: none;
	}
	#menuBtn.active span {
		background: none;
	}
	#menuBtn.active span::before {
		top: 10px;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
		background-color: #fff;
	}
	#menuBtn.active span::after {
		bottom: 10px;
		-webkit-transform: rotate(-45deg);
		-ms-transform: rotate(-45deg);
		transform: rotate(-45deg);
		background-color: #fff;
	}
	#menuBtn.active span::before,
	#menuBtn.active span::after {
		-webkit-transition-delay: 0s, 0.3s;
		transition-delay: 0s, 0.3s;
	}
	nav {
		position: fixed;
		top: 0;
		left:0;
		width: 100%;
		height: 100%;
		max-height:100%;
		overflow: auto;
	}

	nav.active {
		display: block;
		z-index: 100;
	}
	nav .navInner {
		height:auto;
		overflow-y: auto;
		overflow-x: hidden;
		-webkit-overflow-scrolling: touch;
		background: #9f956c;
		padding: 60px 0 0;
	}
	nav .navInner > span {
		diplay: block;
		font-size: 12px;
		position: absolute;
		top: 2px;
		left: 5px;
		z-index: 200;
		border-bottom: 0;
	}

	nav .navInner > ul {
		border-bottom: solid 1px #eee;
	}
	.navInner p.tel a {
		display: block;
		margin-top: 1px;
		position: relative;
		font-weight: bold;
		background: #333 url(../img/icon_tel_white.svg) no-repeat 3% center;
		color: #fff;
		background-size: 24px auto;
	}
	nav .navInner p.tel a:after {
		content: none;
	}
	nav .navInner p span {color: #fff;}

	nav .navInner ul li a {
		display: block;
		padding: 15px 70px 15px 15px;
		border-top: 1px solid #fff;
		line-height: 1.4;
		max-height: 999999px;
		background: url("../img/icon_arw01.svg") 96% center no-repeat;
		background-size: 15px auto;
		color: #fff!important;
	}
	nav .navInner ul li a b {
		display: none;
	}



	header {
		position: relative;
		width: 100%;
		/* height: 100vh; */
	}
	header h1 {
		position: absolute;
		top: 20px;
		left: 5%;
		width: 18%;
		z-index: 100;
	}


	/* -----------------------------------------------------------------------------

		mv

	  ----------------------------------------------------------------------------- */

	#mvArea {
		background: #f3f3f3;
		width: 100%;
		height: 70vh;
		position: relative;
		float: right;
		-webkit-transition: 0.8s 0.05s cubic-bezier(0.215, 0.61, 0.355, 1);
		transition: 0.8s 0.05s cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	#mvArea .visualImg {
		position: absolute;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
		overflow: hidden;
		opacity: 0;
		-webkit-transition: 0.8s 0.05s cubic-bezier(0.215, 0.61, 0.355, 1);
		transition: 0.8s 0.05s cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	#mvArea .visualImg.animate {
		opacity: 1;
	}
	#mvArea .visualImg .photo {
		background: url("../img/img_mv01_sp.jpg") no-repeat;
		background-position: 50% 50%;
		background-size: cover;
		width: 100%;
		height: 70vh;
	}
	#mvArea .visualTtl {
		position: absolute;
		top: 40%;
		left: 3%;
	}
	#mvArea .visualTtl h2 {
		letter-spacing: 2px;
		font-weight: 500;
		font-size: 3.5vw;
	}

	#mvArea .visualTtl h2 strong {
		font-size: 8vw;
		display: block;
		font-weight: 600;
		margin-top: 3%;
		opacity: 0;
	}
	#mvArea .visualTtl h2 > span {
		opacity: 0;
		-webkit-transition: 3.0s 1.0s cubic-bezier(0.175, 0.885, 0.32, 1.275);
		transition: 3.0s 1.0s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	}
	#mvArea .visualTtl h2 strong span {
		opacity: 0;
		-webkit-transition: 4.0s 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
		transition: 4.0s 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
	}
	#mvArea .visualTtl h2 span.animate,
	#mvArea .visualTtl h2 strong span.show {
		opacity: 1;
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}


	/* btn */
	#mvArea p {
		position: absolute;
		top: 58vh;
		right: 5%;
		width: 35%;
	}


	/* -----------------------------------------------------------------------------

		beginning

	  ----------------------------------------------------------------------------- */

	#beginning {
		position: relative;
	}
	#beginning .inner {
		padding-top: 9%;
	}
	#beginning .txt {
		text-align: center;
		width: 100%;
	}
	#beginning .txt h3 {
		font-size: 2.2rem;
		margin-bottom: 4%;
		padding: 7% 30px 0;
		background: url("../img/txt_renovation.png") right 0px top 0px no-repeat;
		background-size: 70% auto;
		font-weight: 500;
	}
	#beginning .txt p {
		font-size: 1.4rem;
		margin-bottom: 20px;
		line-height: 1.6;
	}
	#beginning .txt .btn01 a {
		background: #584d3d;
		font-size: 3vw;
		padding-left: 5%;
	}
	#beginning .txt .btn01 a:after {
		left: 5%;
	}
	#beginning .image {
	}
	#beginning .image ul {margin-top: 5%;}
	#beginning .image ul li:first-child {
		width: 86%;
		top: 0;
		left: 0;
	}
	#beginning .image ul li:nth-child(2) {
		width: 38%;
		margin: 4% 0 0 15%;
		float: left;
	}
	#beginning .image ul li:last-child {
		width: 43%;
		margin: 4% 0 0 0;
		float: right;
	}
	#beginning section {
		clear: both;
		padding-top: 7%;
	}
	#beginning section h4 {
		text-align: center;
		color: #584d3d;
		background: url("../img/icon_ttl_service.png") top center no-repeat;
		background-size: 61px auto;
		padding-top: 35px;
		font-size: 2.0rem;
		letter-spacing: 3px;
		font-weight: 500;
	}
	#beginning section p {
		text-align: center;
		padding: 3% 0 6%;
	}
	#beginning section ul {
		justify-content: space-between;
	}
	#beginning section ul li {margin-bottom: 6%;}
	#beginning section ul li figure {
	}
	#beginning section ul li dl {
		text-align: center;
	}
	#beginning section ul li dt {
		font-size: 1.6rem;
		padding: 4% 0 2% 35px;
		color: #584d3d;
		position: relative;
		display: inline-block;
		font-weight: 500;
		letter-spacing: 1px;
	}
	#beginning section ul li dt:before {
		content:"";
		display: block;
		background: url("../img/icon_service01.png") left center no-repeat;
		background-size: 100% auto;
		width: 28px;
		height: 100%;
		position: absolute;
		left: 0;
		top: 10%;
	}
	#beginning section ul li:nth-child(2) dt:before {
		background: url("../img/icon_service02.png") left center no-repeat;
		background-size: 100% auto;
	}
	#beginning section ul li:last-child dt:before {
		background: url("../img/icon_service03.png") left center no-repeat;
		background-size: 100% auto;
	}
	#beginning section ul li dd{
		font-size: 1.4rem;
	}


	/* -----------------------------------------------------------------------------

		works

	  ----------------------------------------------------------------------------- */

	#works {
		background: url("../img/bg_works_sp.jpg") center center no-repeat;
		background-size: cover;
	}
	#works h3.secTtl,
	#works h3.secTtl b {
		color: #fff;
	}
	#works h3 + p {
		text-align: center;
		margin-bottom: 50px;
		color: #fff;
	}


	#works ul ul {
		width: 100%;
		/* position: relative; */
	}
	#works ul ul li:first-child {
		width: 50%;
	}
	#works ul ul li:nth-child(2) {
		width: 47%;
		margin-top: -32%;
		margin-left: 53%;
	}
	#works ul ul li:nth-child(3) {
		width: 367px;
	}

	#works ul.elm > li div:after {
		content: "";
		background: url(../img/txt_case01.png) left center no-repeat;
		display: block;
		position: absolute;
		top: -1%;
		left: calc(50% - 13%);
		background-size: 100% auto;
		width: 26%;
		height: 7vw;
	}
	#works ul.elm > li {
		opacity: 0;
		transition: .5s ease-out;
		transform: translateY(50px);
		margin: 6% 0 10%;
	}
	#works ul.elm > li.show {
		opacity: 1;
		transform: translateY(0);
	}
	#works ul.elm > li div {
		padding: 6% 0 8%;
		text-align: center;
	}

	#works ul.elm > li div span {
		color: #fff;
		padding: 2px 10px;
	}
	#works ul.elm > li div span.apartment {
		background: #9f956c;
	}
	#works ul.elm > li div span.house {
		background: #584d3d;
	}
	#works ul.elm > li div h4 {
		font-size: 2.2rem;
		margin: 10px 0 25px;
		padding-bottom: 6px;
		position: relative;
		letter-spacing: 2px;
		color: #fff;
		/* text-align: right; */
	}
	#works ul.elm > li div h4:after {
		position: absolute;
		width: 50px;
		height: 3px;
		background: #9f956c;
		display: block;
		content: "";
		bottom: -10px;
		left: calc(50% - 20px);
		opacity: 0.8;
	}
	#works ul.elm > li div dl dt {
		color: #fff;
		margin-bottom: 5px;
		font-size: 1.6rem;
		font-weight: bold;
	}
	#works ul.elm > li div dl dd {
		color: #fff;
		margin-top: 10px;
	}




	/* case01 */
	#works .case01 ul {
	}
	#works .case01 ul:after{
		content: "";
		background: #584d3d;
		width: 28%;
		padding-top: 28%;
		display:block;
		margin-top: -13%;
		margin-left: 50%;
		opacity: 0.8;
		opacity: 0.2;
	}
	#works .case01 ul li:first-child {
    margin-left: 50%;
}
	#works .case01 ul li:nth-child(2) {
		width: 30%;
		margin-top: -50%;
		margin-left: 17%;
	}
	#works .case01 ul li:nth-child(3) {
		width: 47%;
		margin-top: 3%;
	}
	#works ul.elm > li.case01 div {
	}
	#works ul.elm > li:nth-child(2) div:after {
		background: url(../img/txt_case02.png) left center no-repeat;
		background-size: 100% auto;
	}
	
	
	/* case02 */
	#works .case02 li:nth-child(2) {
		width: 34%;
		margin-top: -52%;
		margin-left: 53%;
	}
	#works .case02 li:nth-child(3) {
		width: 47%;
		margin-left: 53%;
		margin-top: 3%;
	}
	#works .case02 li:nth-child(4) {
		width: 30%;
		margin-left: 20%;
		margin-top: -16%;
	}

	/* case03 */
	#works .case03 ul {
	}
	#works .case03 ul:after{
		content: "";
		background: #584d3d;
		width: 28%;
		padding-top: 28%;
		display:block;
		margin-top: -13%;
		margin-left: 50%;
		opacity: 0.2;
	}
	#works .case03 ul li:first-child {
    margin-left: 50%;
}
	#works .case03 ul li:nth-child(2) {
		width: 30%;
		margin-top: -50%;
		margin-left: 17%;
	}
	#works .case03 ul li:nth-child(3) {
		width: 47%;
		margin-top: 3%;
	}
	#works ul.elm > li:nth-child(3) div:after {
		background: url(../img/txt_case03.png) left center no-repeat;
		background-size: 100% auto;
	}
	
	

	/* case04 */
	#works .case04 ul:after{
		content: "";
		background: #584d3d;
		width: 30%;
		/* height: 100px; */
		display:block;
		margin-left: 20%;
		margin-top: -12%;
		opacity: 0.2;
		padding-top: 30%;
	}
	#works ul.elm > li:nth-child(4) div:after {
		background: url(../img/txt_case04.png) left center no-repeat;
		background-size: 100% auto;
	}


	/* -----------------------------------------------------------------------------

		voice

	  ----------------------------------------------------------------------------- */
	#voice {
		background: #f3f3f3;
	}
	#voice .inner {
		margin: 0;
	}
	#voice ul {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	#voice ul li {
		width: 50%;
		opacity: 0;
		transition: .5s ease-out;
		transform: translateY(50px);
	}
	#voice ul li.show {
		opacity: 1;
		transform: translateY(0);
	}
	#voice ul li:nth-of-type(even) {
		margin-top: 10%;
	}
	#voice ul li:nth-of-type(odd) {
		margin-top: -5%;
	}
	#voice ul li dl {
		text-align: center;
		padding: 5% 0 0 42px;
		position: relative;
		width: 90%;
		margin: 0 5%;
	}
	#voice ul li dl:after {
		position: absolute;
		top: 6%;
		left: 0;
		background: url("../img/icon_person01.png") center center no-repeat;
		background-size: 100% auto;
		content: "";
		display: block;
		width: 42px;
		height: 59px;
	}
	#voice ul li:nth-of-type(2) dl:after {
		background: url("../img/icon_person02.png") center center no-repeat;
		background-size: 100% auto;
	}
	#voice ul li:nth-of-type(3) dl:after {
		background: url("../img/icon_person03.png") center center no-repeat;
		background-size: 100% auto;
	}
	#voice ul li:last-of-type dl:after {
		background: url("../img/icon_person04.png") center center no-repeat;
		background-size: 100% auto;
	}
	#voice ul li dt {
		font-size: 1.4rem;
		font-weight: bold;
	}
	#voice ul li dd {
		font-size: 1.3rem;
	}




	/* -----------------------------------------------------------------------------

		merit

	  ----------------------------------------------------------------------------- */
	#merit {
		background: #fff;
	}
	#merit h4 {
		font-size: 2.0rem;
		text-align: center;
		margin-bottom: 6%;
		font-weight: 500;
		letter-spacing: 1px;
	}
	#merit p {
		text-align: center;
		margin-bottom: 4%;
		z-index: 1;
		font-size: 1.4rem;
		line-height: 1.6;
	}
	#merit p em {
		position: relative;
		/* padding: 0.3em; */
		z-index: 1;
		font-style: normal;
		display: inline-block;
	}
	#merit p em:after {
		content: '';
		position: absolute;
		left: 0;
		top: 1em;
		width: 100%;
		height: 6px;
		background: repeating-linear-gradient(-45deg, #ddc750, #ddc750 2px, white 2px, white 4px);
		z-index: -1;
	}
	#merit figure {
		width: 100%;
		margin: 5% auto;
		opacity: 0;
		transition: .5s ease-out;
		transform: translateY(50px);
	}
	#merit.animation01 figure {
		opacity: 1;
		transform: translateY(0px);

	}



/* -----------------------------------------------------------------------------
  
  	price
    
  ----------------------------------------------------------------------------- */
#price {
	background: #f3f3f3;
}
#price p{
	text-align: center;
	margin-bottom: 20px;
}
#price ul {
}
#price ul li {
	width: 100%;
	background: #fff;
	border: 3px solid #584d3d;
	padding: 20px;
	margin-bottom: 70px;
	position: relative;
}
#price ul li:before {
	position: absolute;
	content: "";
	background: url("../img/icon_price01.png") no-repeat left center;
	background-size: 70px;
	width: 70px;
	height: 66px;
	top: -52px;
	left: calc(50% - 35px);
	z-index: 1;
}
#price ul li:first-child {
	margin-top: 16%;
}
#price ul li:nth-child(2):before {
	background: url("../img/icon_price02.png") no-repeat left center;
	background-size: 70px;
}
#price ul li:nth-child(3):before {
	background: url("../img/icon_price03.png") no-repeat left center;
	background-size: 70px;
}
#price ul li:nth-child(4):before {
	background: url("../img/icon_price04.png") no-repeat left center;
	background-size: 70px;
}
#price ul li:nth-child(5):before {
	background: url("../img/icon_price05.png") no-repeat left center;
	background-size: 70px;
}
#price ul li:nth-child(6):before {
	background: url("../img/icon_price06.png") no-repeat left center;
	background-size: 70px;
}
#price ul li:nth-child(6) {
    margin-bottom: 40px;
}
#price ul li h4 {
	color: #584d3d;
	font-size: 2rem;
	position: relative;
	margin-bottom: 25px;
}
#price ul li h4:after {
	content: "";
	width: 100%;
	height: 2px;
	background: #584d3d;
	position: absolute;
	bottom: -8px;
	left: 0;
}
#price ul li h4 span {
	background: #584d3d;
	color: #fff;
	font-size: 1.4rem;
	padding: 1px 2px;
	display: block;
	width: 6em;
	text-align: center;
}
#price ul li dl {
	display: flex;
	align-items: baseline;
	margin-bottom: 4px;
}
#price ul li dl dt {
    width: 30%;
    font-weight: bold;
}
#price ul li dl dd {
    width: 70%;
}
#price ul li dl:first-of-type dt {
	color: #ddc750;
}
#price ul li dl:first-of-type dd {
	font-weight: bold;
	font-size: 2.6rem;
	color: #ddc750;
}


	/* -----------------------------------------------------------------------------

		area

	  ----------------------------------------------------------------------------- */
	#area {
		background: url("../img/bg_area_pc.jpg") center center no-repeat;
		background-size: cover;
	}
	#area .inner > div {
	} 
	#area .inner > div dl dt {
		font-size: 1.6rem;
		font-weight: bold;
	}
	#area .inner > div dl dd {
		font-size: 1.4rem;
	}
	#area .inner > div  p {
		margin-top: 30px;
		font-size: 1.4rem;
	}
	#area figure {margin: 7% 0;}



	/* -----------------------------------------------------------------------------

		contact

	  ----------------------------------------------------------------------------- */


	#contact p {
		text-align: center;
	}

	/* #formContact
	-----------------------------------*/
	#formContact {
		position: relative;
		overflow: hidden;
	}
	#formContact .inner {
		padding: 20px 180px 60px;
		position: relative;
		z-index: 2;
	}
	#formContact .lead span {
		color: #ba1111;
	}
	#formContact .formGroup {
		display: block;
		overflow: hidden;
	}

	/* radio */
	#formContact .formGroup .radioBtn {
		position: relative;
		display: inline-block;
		margin: 0 30px 10px 0;
		line-height: 1;
	}
	#formContact .formGroup .radioBtn input {
		opacity: 0;
		position: absolute;
		z-index: 2;
		width: 0;
		height: 0;
		cursor: pointer;
	}
	#formContact .formGroup .radioBtn label {
		transition: all .2s;
		line-height: 1;
	}
	#formContact .formGroup .radioBtn label:before {
		z-index: 3;
		content: '';
		margin-right: 10px;
		display: inline-block;
		vertical-align: middle;
		width: 20px;
		height: 20px;
		background: white;
	}
	#formContact .formGroup .radioBtn label:before {
		border-radius: 50%;
		width: 22px;
		height: 22px;
		background: #fff;
	}
	#formContact .formGroup .radioBtn input:checked + label:after {
		content: '';
		position: absolute;
		left: 5px;
		top: 5px;
		background: #ddc750;
		width: 12px;
		height: 12px;
		border-radius: 50%;
		z-index: 4;
	}
	/* select */
	#formContact .formGroup select {
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		height: 54px;
		background: #fff url("../img/icon_arw01_yellow.svg") 97% 20px no-repeat;
		background-size: 25px auto;
		border-radius: 0px;
	}
	#formContact .formGroup select option {
		color: #ccc;
	}
	 #formContact .formGroup select::-ms-expand {
	 display: none;
	}
	#formContact .formGroup .formBirth .selectBox {
		display: table;
		float: left;
		width: 28%;
	}
	#formContact .formGroup .formAdress .formInput input,  #formContact .formGroup .formAdress .selectBox select {
		float: right;
		width: 65%;
	}
		#formContact .formGroup select {
		cursor: pointer;
	}


	/* checkbox */
	#formContact .formGroup .checkBox input {
		position: relative;
		top: 0;
		margin: 0 10px 0 0;
		cursor: pointer;
		outline: none;
	}
	#formContact .formGroup .checkBox label {
		-webkit-transition: all 0.4s ease-in-out;
		transition: all 0.4s ease-in-out;
		padding-left: 8px;
	}
	#formContact .formGroup .checkBox label a {
		-webkit-transition: all 0.4s ease-in-out;
		transition: all 0.4s ease-in-out;
	}
	#formContact .formGroup .checkBox input:before, #formContact .formGroup .checkBox input:after {
		position: absolute;
		z-index: 1;
		top: -5px;
		left: -2px;
		width: 2rem;
		height: 2rem;
		content: '';
		-webkit-transition: all 0.4s ease-in-out;
		transition: all 0.4s ease-in-out;
		border: 2px solid #ddc750;
		background: #fff;
	}
	#formContact .formGroup .checkBox input:after {
		z-index: 0;
		border: none;
	}
	#formContact .formGroup .checkBox input:checked:before {
		-webkit-transform: rotateY(180deg);
		transform: rotateY(180deg);
		background: #ddc750;
	}
	#formContact .formGroup .checkBox label {
		margin-bottom: 10px;
		vertical-align: botoom;
		font-weight: bold;
	}
	#formContact .formGroup {
		width: 100%;
		align-items: center;
		margin: 40px auto 0;
	}
	#formContact .formGroup label {
		cursor: pointer;
		display: inline-block;
	}
	#formContact .formGroup input[type="text"],
	#formContact .formGroup input[type="email"],
	#formContact .formGroup input[type="tel"],
	#formContact .formGroup textarea,
	#formContact .formGroup select {
		width: 100%;
		padding: 15px;
		border: 0;
		font-size: 1.6rem;
		background-color: #fff!important;
		box-sizing: border-box;
		-o-box-sizing: border-box;
		-ms-box-sizing: border-box;
		-moz-box-sizing: border-box;
		-webkit-box-sizing: border-box;
	}
	::-webkit-input-placeholder { /* WebKit, Blink, Edge */
		color:#ccc;
	}
	:-ms-input-placeholder { /* Internet Explorer 10-11 */
		color:#ccc;
	}
	::placeholder{ /* Others */
		color:#ccc
	}
	#formContact .formGroup .formGroupDetail {
		word-wrap: break-word;
		box-sizing: border-box;
	}
	.confirm #formContact .formGroup .formGroupDetail {
		padding: 27px 20px;
	}
	#formContact .formGroup:first-child .formGroupTitle {
		padding: 0;
	}
	#formContact .formGroup .formGroupTitle {margin-bottom: 2%;}
	#formContact .formGroup .formName {
		width: 50%;
		float: left;
		display: table;
	}
	#formContact .formGroup .formName > * {
		display: table-cell;
	}
	#formContact .formGroup .formName label {
		width: 15px;
		padding: 0 15px 0 20px;
	}
	#formContact .formGroup .formNameKana label {
		width: 34px;
		padding: 0 6px 0 10px;
	}
	#formContact .formGroup .formGroupTitle label {
		font-size: 1.6rem;
		font-weight: bold;
	}
	.confirm #formContact .formGroup .formGroupTitle label {
		padding-top: 0;
	}
	#formContact .formGroup .formGroupTitle label span {
		color: #fff;
		font-size: 1.3rem;
		margin-left: 5px;
		background: #9f956c;
		padding: 2px 5px;
	}

	#formContact .formGroup span.label {
		margin: 12px 0 5px;
		display: block;
	}

	/* ä½æ‰€èª¿æ•´ */
	#formContact .formGroup .clm2 {
		display: flex;
		justify-content: space-between;
	}
	#formContact .formGroup .clm2 div {
		width: 48%;
	}
	#formContact .formGroup.textCenter {
		text-align: center;
		display: block;
	}
	#formContact .formGroup .rules {
		font-size: 1.6rem;
		margin-bottom: 15px;
	}
	#formContact .formGroup .rules a {
		text-decoration: underline;
	}
	#formContact .formGroup.textCenter label {
		font-size: 1.6rem;
		font-weight: bold;
		position: relative;
	}
	#formContact .formGroup.textCenter .checkBox {
		text-align: center;
		float: none;
	}
	/* error */
	#formContact div[data-formrun-show-if-error] {
		color: #ba1111;
		padding-top: 10px;
	}

	/* formBtn */
	#formContact .formBtn {
		font-size: 1.6rem;
		line-height: 48px;
		font-family: 'Noto Sans Japanese', sans-serif;
		display: flex;
		justify-content: space-between;
	}
	#formContact .formBtn button, #formContact .formBtn p a {
		background-color: transparent;
		border: none;
		cursor: pointer;
		outline: none;
		padding: 0;
		appearance: none;
		background: #333;
		font-weight: normal;
		text-align: center;
		color: #fff;
		margin: 40px auto 0;
		font-size: 1.4rem;
		line-height: 60px;
		transition: all .2s;
		font-family: 'Noto Sans Japanese', sans-serif;
		height: 60px;
		display: block;
	}
	#formContact .formBtn button {
		width: 49%;
	}
	#formContact .formBtn p {
		padding-top: 0;
		width: 48%;
	}
	#formContact .formBtn p a {
		background: #aaa;
	}

	#formContact h4 {
		font-size: 2.0rem;
		text-align: center;
		margin: 40px 0 60px;
	}






	/* -----------------------------------------------------------------------------

		footer

	----------------------------------------------------------------------------- */


	footer {
	}
	footer .footerTop {position: relative;margin-top: 20%;}
	footer .footerTop .inner {
		justify-content: space-between;
		margin: 0;
	}
	footer .tel {
		position: relative;
		background: url("../img/bg_contact_sp.jpg");
		background-size: cover;
		padding: 70px 0;
	}
	footer .tel:after {
		content: "";
		display: block;
		width: 196px;
		height: 95px;
		position: absolute;
		top: -10%;
		left: 0;
		background: url(../img/txt_contact.png) center center no-repeat;
		background-size: 100% auto;
	}
	footer .tel p {
		text-align: center;
		color: #fff;
	}
	footer .tel .btn01 {
		padding-top: 10px;
	}
	footer .tel .btn01 span {
		font-size: 2.6rem;
		letter-spacing: 1px;
		font-weight: 400;
		font-family: futura-pt, sans-serif;
		padding-left: 25px;
	}
	footer .tel .btn01 + p {
		font-size: 1.4rem;
		padding-top: 5px;
	}
	footer .tel .btn01 a:after {
		background: url("../img/icon_tel_white.svg") center center no-repeat;
		background-size: 76% auto;
		top: 1%;
		left: 10%;
		width: 10%;
		height: 100%;
	}
	footer .inner .access {
		background: #584d3d;
		display: flex;
		padding: 4%;
		justify-content: space-between;
	}
	footer .inner .access p {
		width: 30%;
		margin-right: 20px;
		align-items: center;
		display: flex;
	}
	footer .inner .access dl {
		margin-top: 12px;
	}
	footer .inner .access dl dt {
		font-size: 1.6rem;
		color: #fff;
		font-weight: bold;
		margin-bottom: 10px;
		text-align: left;
	}
	footer .inner .access dl dd {
		font-size: 1.4rem;
		text-align: left;
		color: #fff;
	}
	footer small {
		background: #584d3d;
		font-size: 1.2rem;
		text-align: center;
		padding: 20px 0;
		color: #fff;
		width: 100%;
		display: block;
	}



	/* -----------------------------------------------------------------------------

		popup

	----------------------------------------------------------------------------- */

	.overlay {
		position: fixed;
		top: 0;
		bottom: 0;
		left: 0;
		right: 0;
		background: rgba(0, 0, 0, 0.7);
		transition: opacity 500ms;
		visibility: hidden;
		opacity: 0;
		z-index: 9999;
	}
	.overlay:target {
		visibility: visible;
		opacity: 1;
	}

	.popup {
		margin: 15vh auto;
		padding: 8% 4%;
		background: #fff;
		border-radius: 5px;
		width: 88%;
		position: relative;
		transition: all 5s ease-in-out;
		z-index: 9999;
		font-size: 1.4rem;
		height: 70vh;
	}

	.popup h2 {
		margin-top: 0;
		color: #333;
		font-family: Tahoma, Arial, sans-serif;
	}
	.popup .close {
		position: absolute;
		top: 20px;
		right: 30px;
		transition: all 200ms;
		font-size: 30px;
		font-weight: bold;
		text-decoration: none;
		color: #333;
	}
	.popup .content {
		height: 88%;
		padding-right: 20px;
		overflow: scroll;
	}
	.popup h2 {
		margin-bottom: 30px;
		position: relative;
	}
	.popup h2:after {
		position: absolute;
		bottom: -10px;
		left: 0;
		content : "";
		display: block;
		width: 40px;
		height: 2px;
		background: #ddc750;
	}
	.popup h3 {
		margin-bottom: 2%;
	}
	.popup section {
		margin-top: 25px;
	}
	.popup a {
		color: #666!important;
	}
	.popup dl {
		margin-top: 10px;
	}
	.popup dl dt {
		font-weight: bold;
	}

	}