@charset "utf-8";

@media print, screen and (min-width: 751px) {
/* -----------------------------------------------------------------------------
  
  	共通
    
  ----------------------------------------------------------------------------- */

#container {
	clear: both;
}
#container > section {
	padding: 80px 0 100px;
}
#wrapper {
	position: relative;
	z-index: 999;
	display: block !important;
}
/* -----------------------------------------------------------------------------
  
  	header,nav
    
  ----------------------------------------------------------------------------- */

header {
	position: relative;
}
header h1 {
	position: absolute;
	top: 35px;
	left: 50px;
	width: 145px;
}
nav {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 999;
	background: rgba(255,255,255,0.4);
}
nav ul {
	width: 830px;
	text-align: center;
	display: flex;
	padding: 20px 50px;
	justify-content: space-between;
}
nav ul li {
	display: inline-block;
}
nav ul li a {
	display: block;
	line-height: 1.4;
	letter-spacing: 0.1em;
	font-size: 1.2rem;
	position: relative;
	color: #584d3d!important;
}
nav ul li a:after {
	position: absolute;
	bottom: -20px;
	left: 0;
	content: "";
	width: 100%;
	height: 2px;
	background: #ddc750;
	transform: scale(0, 1);
	transform-origin: right top;
	transition: transform .3s;
}
nav ul li a:hover::after {
	transform-origin: left top;
	transform: scale(1, 1);
}
nav ul li a b {
	color: #333;
	font-size: 2.4rem;
	display: block;
	font-family: futura-pt, sans-serif;
	font-weight: 400;
	transition: all .2s;
}
nav ul li a:hover b {
	color: #ddc750;
}
nav.fixed {
	display: block;
	top: 0;
	left: 0;
	position: fixed;
	z-index: 9999;
	background: rgba(255,255,255,0.9);
}
nav.fixed ul {
	width: 1024px;
	margin: 0 auto;
}


/* -----------------------------------------------------------------------------
  
  	mv
    
  ----------------------------------------------------------------------------- */

#mvArea {
	width: 100%;
	height: 70vh;
	position: relative;
	z-index: 1;
	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: 78%;
	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_pc.jpg") no-repeat;
	background-position: 50% 50%;
	background-size: cover;
	width: 100%;
	height: 100%;
}
#mvArea .visualTtl {
	position: absolute;
	top: 31vh;
	left: 9%;
}
#mvArea .visualTtl h2 {
	font-size: 3rem;
	letter-spacing: 5px;
	font-weight: 500;
	}
#mvArea .visualTtl h2 strong {
	display: block;
	font-size: 6rem;
	font-weight: 600;
	line-height: 1.6;
	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);
	margin-bottom: 15px;
	display: block;
}
#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: 62vh;
	right: 60px;
	width: 200px;
}
#mvArea p a:hover {
	opacity: 0.9;
	transition: all .5s;
}


/* -----------------------------------------------------------------------------
  
  	beginning
    
  ----------------------------------------------------------------------------- */

#beginning {
	position: relative;
}
#beginning .inner {
	padding-top: 120px;
}
#beginning .txt {
	text-align: center;
	position: absolute;
	width: 600px;
	right: calc(50% - 600px);
	top: calc(15vw * 0.75);
}
#beginning .txt h3 {
	font-size: 3.2rem;
	margin-bottom: 40px;
	padding: 55px 30px 0;
	background: url("../img/txt_renovation.png") right 0px top 0px no-repeat;
	background-size: 471px 78px;
	font-weight: 500;
	line-height: 1.6;
}
#beginning .txt p {
	font-size: 1.6rem;
	margin-bottom: 20px;
}
#beginning .txt .btn01 a {
	background: #584d3d;
	padding-left: 15px;
}
#beginning .txt .btn01 a:hover {
	background: #333;
}
#beginning .image {
	position: absolute;
	top: 120px;
	left: 0;
	width: 50vw;
	height: calc(50vw * 0.8);
}
#beginning .image ul {
	position: relative;
	height: 100%;
}
#beginning .image ul li:first-child {
	width: 80%;
	position: absolute;
	top: 0;
	left: 0;
}
#beginning .image ul li:nth-child(2) {
	width: 46%;
	position: absolute;
	bottom: 0;
	left: 21%;
}
#beginning .image ul li:last-child {
	width: 26%;
	position: absolute;
	bottom: 9%;
	left: 69%;
}
#beginning section {
	padding-top: calc(50vw * 0.8);
}
#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: 40px;
	font-size: 2.6rem;
	letter-spacing: 3px;
	font-weight: 500;
}
#beginning section p {
	text-align: center;
	padding: 40px 0;
}
#beginning section ul {
	display: flex;
	justify-content: space-between;
}
#beginning section ul li {
	width: 380px;
}
#beginning section ul li figure {
	width: 380px;
}
#beginning section ul li dl {
	text-align: center;
}
#beginning section ul li dt {
	font-size: 1.6rem;
	padding: 20px 0 12px 40px;
	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: 30px auto;
	width: 30px;
	height: 30px;
	position: absolute;
	left: 0;
	top: 16px;
}
#beginning section ul li:nth-child(2) dt:before {
	background: url("../img/icon_service02.png") left center no-repeat;
	background-size: 30px auto;
}
#beginning section ul li:last-child dt:before {
	background: url("../img/icon_service03.png") left center no-repeat;
	background-size: 30px auto;
}
#beginning section ul li dd{
	font-size: 1.4rem;
}


/* -----------------------------------------------------------------------------
  
  	works
    
  ----------------------------------------------------------------------------- */

#works {
	background: url("../img/bg_works_pc.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: 1200px;
	height: 675px;
	position: relative;
}
#works ul ul li:first-child {
	width: 402px;
	position: absolute;
	top: 0;
	left: 0;
}
#works ul ul li:nth-child(2) {
	width: 230px;
	position: absolute;
	top: 150px;
	left: 422px;
}
#works ul ul li:nth-child(3) {
	width: 367px;
	position: absolute;
}
#works ul ul li:nth-child(4) {
	width: 220px;
	position: absolute;
	top: 555px;
	left: 182px;
}

#works ul.elm > li div:after {
	content: "";
	background: url(../img/txt_case01.png) left center no-repeat;
	display: block;
	position: absolute;
	top: -17px;
	left: calc(50% - 70px);
	background-size: 100% auto;
	width: 140px;
	height: 35px;
	opacity: 1;
	/* transform: rotate(-7deg); */
	z-index: -1;
}
#works ul.elm > li {
	opacity: 0;
	transition: .5s ease-out;
	transform: translateX(50px);
	margin-top: 50px;
}

#works ul li.case02,
#works ul li.case04 {
	transform: translateX(-50px);
}
#works ul.elm > li.show {
	opacity: 1;
	transform: translateX(0);
}
#works ul.elm > li div {
	position: absolute;
	top: 167px;
	right: 16px;
	width: 440px;
	/* background: rgba(255,255,255,0.6); */
	padding-top: 20px;
	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.6rem;
	margin: 10px 0 40px;
	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: 4px;
	background: #9f956c;
	opacity: 0.6;
	display: block;
	content: "";
	bottom: -16px;
	left: calc(50% - 25px);
}
#works ul.elm > li div dl dt {
	color: #fff;
	margin-bottom: 5px;
	font-weight: bold;
	font-size: 1.8rem;
}
#works ul.elm > li div dl dd {
	color: #fff;
	margin-top: 15px;
}




/* case01 */
#works .case01 ul {
	height: 753px;
}
#works .case01 ul:after{
	position: absolute;
	content: "";
	background: #584d3d;
	width: 200px;
	height: 200px;
	display:block;
	top: 555px;
	left: 758px;
	opacity: 0.2;
}
#works .case01 ul li:first-child {
	top: 0;
	left: 758px;
}
#works .case01 ul li:nth-child(2) {
	top: 160px;
	left: 488px;
	width: 250px;
}
#works .case01 ul li:nth-child(3) {
	width: 330px;
	top: 431px;
	left: 408px;
}
#works ul.elm > li.case01 div {
	top: 178px;
	left: 0;
	width: 380px;
}

/* case02 */

#works .case02 ul {
	height: 775px;
}
#works .case02 ul li:first-child {
	top: 0px;
	left: 0px;
}
#works .case02 ul li:nth-child(2) {
	width: 250px;
	left: 422px;
	top: 100px;
}
#works .case02 ul li:nth-child(3) {
	top: 371px;
	width: 330px;
	left: 422px;
}
#works ul.elm > li.case02 div {
	width: 400px;
}
#works ul.elm > li:nth-child(2) div:after {
	background: url(../img/txt_case02.png) left center no-repeat;
	background-size: 100% auto;
}

/* case03 */
#works .case03 ul {
	height: 714px;
}

#works .case03 ul:after{
	position: absolute;
	content: "";
	background: #584d3d;
	width: 200px;
	height: 200px;
	display:block;
	top: -41px;
	left: 798px;
	opacity: 0.2;
}
#works .case03 ul li:first-child {
	top: 180px;
	left: 798px;
}
#works .case03 ul li:nth-child(2) {
	width: 250px;
	left: 528px;
	top: 66px;
}
#works .case03 ul li:nth-child(3) {
	top: 336px;
	width: 330px;
	left: 448px;
}
#works ul.elm > li.case03 div {
	top: 226px;
	right: 0;
	left: 0;
	width: 420px;
}
#works ul.elm > li.case03 div:after {
	background: url(../img/txt_case03.png) left center no-repeat;
	background-size: 100% auto;
}
#works ul.elm > li.case03 div h4:after {
	right: 0;
}


/* case04 */
#works .case04 ul:after{
	position: absolute;
	content: "";
	background: #584d3d;
	width: 300px;
	height: 225px;
	display:block;
	top: 401px;
	left: 422px;
	opacity: 0.2;
}
#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 ul {
	display: flex;
	justify-content: space-between;
}
#voice ul li {
	width: 286px;
	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: 40px;
}

#voice ul li dl {
	text-align: center;
	padding: 20px 0 0 16px;
	position: relative;
}
#voice ul li dl:after {
	position: absolute;
	top: 0;
	left: 0;
	background: url("../img/icon_person01.png") top left no-repeat;
	background-size: 100% auto;
	content: "";
	display: block;
	width: 55px;
	height: 66px;
}
#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.6rem;
	font-weight: bold;
}
#voice ul li dd {
	font-size: 1.4rem;
}




/* -----------------------------------------------------------------------------
  
  	merit
    
  ----------------------------------------------------------------------------- */
#merit {
	background: #fff;
	opacity: 0;
	transition: .5s ease-out;
	transform: translateY(50px);
}
#merit.animation01 {
	opacity: 1;
	transform: translateY(0);
}
#merit h4 {
	font-size: 2.6rem;
	text-align: center;
	margin-bottom: 30px;
	font-weight: 500;
	letter-spacing: 2px;
}
#merit p {
	text-align: center;
	margin-bottom: 20px;
	z-index: 1;
}
#merit p em {
	position: relative;
	/* padding: 0.3em; */
	z-index: 1;
	font-style: normal;
}
#merit p em:after {
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 6px;
	background: repeating-linear-gradient(-45deg, #ddc750, #ddc750 2px, white 2px, white 4px);
	z-index: -1;
}
#merit figure {
	width: 981px;
	margin: 30px auto 0;
	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: 60px;
}
#price ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#price ul li {
	width: 380px;
	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: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 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 {
	float: left;
	width: 590px;
} 
#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 {
	float: right;
	width: 586px;
}



/* -----------------------------------------------------------------------------
  
  	contact
    
  ----------------------------------------------------------------------------- */


#contact p {
	text-align: center;
	margin-bottom: 60px;
}

/* #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;
}
#formContact .formGroup .radioBtn:hover label {
	color: #ddc750;
}
#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: 0;
	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 .checkBox label:hover,
#formContact .formGroup .checkBox label a:hover {
	color: #ddc750;
}

#formContact .formGroup {
	display: flex;
	width: 900px;
	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 {
	width: 65%;
	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 {
	width: 35%;
}
#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 .rules a:hover {
	text-decoration: none;
}
#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 {
	margin: 40px auto 0;
	font-size: 1.6rem;
	width: 500px;
	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.6rem;
	width: 240px;
	line-height: 60px;
		transition: all .2s;
	font-family: 'Noto Sans Japanese', sans-serif;
	height: 60px;
	display: block;
}
#formContact .formBtn button:hover,
#formContact .formBtn p a:hover {
	background: #ddc750;
}

#formContact .formBtn p {
	padding-top: 0;
}
#formContact .formBtn p a {
	background: #aaa;
}

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






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

	footer

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


footer {
}
footer .footerTop {
	position: relative;
	background: url("../img/bg_contact_pc.jpg");
	background-size: cover;
	padding: 40px 0;
}
footer .footerTop .inner {
	justify-content: space-between;
	padding: 60px 0;
}
footer .inner .access {
	margin-top: 20px;
	display: flex;
	justify-content: space-between;
	float: left;
}
footer .inner .access p {
	width: 167px;
	margin-right: 20px;
}
footer .inner .access dl {
	margin-top: 12px;
}
footer .inner .access dl dt {
	font-size: 1.6rem;
	color: #fff;
	font-weight: bold;
	margin-bottom: 10px;
}
footer .inner .access dl dd {
    font-size: 1.4rem;
	color: #fff;
}
footer .tel {
	position: relative;
	float: right;
}
footer .tel:after {
	content: "";
	display: block;
	width: 196px;
	height: 95px;
	position: absolute;
	top: -70px;
	left: -42px;
	background: url(../img/txt_contact_wht.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: 3rem;
	letter-spacing: 2px;
	font-weight: 500;
	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: 30px auto;
	top: 35%;
	left: 50px;
}
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: 70px auto;
	padding: 40px;
	background: #fff;
	border-radius: 5px;
	width: 80%;
	position: relative;
	transition: all 5s ease-in-out;
	z-index: 9999;
}

.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: 3.0rem;
	font-weight: bold;
	text-decoration: none;
	color: #333;
}
.popup .close:hover {
	color: #ddc750
	;
}
.popup .content {
	max-height: 30%;
	/* overflow: auto; */
}
.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: 15px;
}
.popup section {
	margin-top: 25px;
}
.popup a {
	color: #666!important;
}
.popup a:hover {
	color: #ddc750!important;
}
.popup dl {
	margin-top: 10px;
}
.popup dl dt {
	font-weight: bold;
}

}