@charset "UTF-8";
/* CSS Document */

/*リード文*/
h1{
	width: 23.384615%;
}
@media(max-width: 767px){
	.sub-sec-top .sp-lead img{
		width: 41.176470588%;
	}
}

/*イントロダクション*/
.sec-contact-detail{
	padding: 0 9.722222222%;
}
.sec-contact-detail h2{
}

.required{
	color: #ff0000;
	font-size: 1.4rem;
}
.contact-detail-dsc{
	margin: 0 auto 80px;
	padding-bottom: 80px;
	border-bottom: solid 1px #d2c2b6;
}

@media(max-width: 767px){
	.sec-contact-detail{
		padding: 0 6.58823529411765%;
	}
	.sec-contact-detail h2{
		margin-bottom: 9.411764vw;
	}
	.required{
		/*font-size: 1.4rem;*/
		font-size: 3.29411764705882vw;
	}
	.contact-detail-dsc{
		padding-bottom: 9.411764vw;
		border-bottom: solid 1px #d2c2b6;
		margin: 0 auto 9.411764vw;
	}
}

/*質問項目*/
form{
	padding-bottom: 80px;
	margin: 0 auto;
	/*width: 1160px;*/
}
.contact-item{
	margin-bottom: 70px;
	display: flex;
	justify-content: space-between;
}
.contact-item:last-child{
	margin-bottom: 80px;
}
.contact-item label{
	font-size: 1.8rem;
	display: block;
	padding-top: 24px;
	width: 31%;
	min-width: 300px;/*潰れないように指定しといた*/
	min-width: 180px;/*潰れないように指定しといた*/
	padding-right: 40px;
	box-sizing: border-box;
}
label span{
	color: #ff0000;
	font-size: 1.4rem;
}
::placeholder{
	font-size: 1.6rem;
}

.contact-item p{
	width: 68.96%;
	height: 100%;
}

input, textarea{
	width: 100%;
	height: 100%;
	font-family: "游明朝体", "YuMincho", "Yu Mincho", "Noto Serif JP", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	background-color: #e8e3df;
	border: 1px solid #d2c2b6;
	padding-left: 30px;
	box-sizing: border-box;
}


input{
	height: 70px;
}
textarea{
	height: 300px;
	padding-top: 28px;
	resize: none;
}
:focus{
    outline: none;
}
.privacy-policy{
	display: block;
	text-align: center;
	font-size: 1.4rem;
}

@media(max-width: 767px){
	form{
		padding-bottom: 16.4705882352941vw;/*70px*/
		margin: 0 auto;
	}
	.contact-item{
		margin-bottom: 14.11764vw;/*60px*/
		display: block;
	}
	.contact-item:last-child{
		margin-bottom: 80px;
	}
	.contact-item label{
		font-size: 4.23529411764706vw;
		display: block;
		width: 100%;
		padding: 0 0 7.05882vw;
	}
	label span{
		font-size: 3.29411764705882vw;
	}
	::placeholder{
		font-size: 3.76470588235294vw;
	}

	.contact-item p{
		width: 100%;
		height: 100%;
	}

	input, textarea{
		width: 100%;
		height: 100%;
		padding-left: 7.058vw;
	}


	input{
		height: 16.4705882352941vw;
	}
	textarea{
		height: 70.5882352941177vw;
		padding-top: 6.58823529411765vw;
		resize: none;
	}
	:focus{
	    outline: none;
	}
}


.privacy-policy a{
	text-decoration: underline;
	color: #ac9d8f;
    transition: all .3s;
}
.privacy-policy a:hover{
	opacity: .5;
}

.btn-frame{
	display: block;
	margin: 80px auto 0;
	padding-top: 80px;
	border-top: solid 1px #d2c2b6;
}
.btn-frame button{
	display: block;
	margin: 0 auto 60px;
	width: 100%;
    max-width: 600px;
	height: 110px;
	background-color: #ac9d8f;
	border:none;
	color: #f7f2ee;
	font-size: 1.8rem;
	font-family: "游明朝体", "YuMincho", "Yu Mincho", "Noto Serif JP", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
.btn-frame button:hover{
	cursor: pointer;
}

@media(max-width: 767px){
	.privacy-policy{
		font-size: 3.29411764705882vw;
		text-align: left;
	}
	.privacy-policy a{
		font-size: 3.76470588235294vw;
	}
	.btn-frame{
		display: block;
		margin: 9.4117647vw auto 0;/*40px*/
		padding-top: 9.4117647vw;/*40px*/
		border-top: solid 1px #d2c2b6;
	}
	.btn-frame button{
		display: block;
		margin: 0 auto;
		width: 100%;
	    max-width: 600px;
		height: 21.1764705882353vw;/*90px*/
		background-color: #ac9d8f;
		border:none;
		color: #f7f2ee;
		font-size: 1.8rem;
	}
}



/*ボタンのアニメーション*/
.btn-frame button{
	position:relative;
	overflow: hidden;
	transition: ease .2s;
}
.btn-frame button span {
	position: relative;
	z-index: 3;/*z-indexの数値をあげて文字を背景よりも手前に表示*/
	display: inline-block;
	width: 100%;
}
.btn-frame button:hover span{
	color: #ac9d8f;
}
.btn-frame button:hover .arrow{
	border-bottom-color: #ac9d8f;
	border-right-color: #ac9d8f;
}
.btn-frame button:before {
 	content: '';
    /*絶対配置で位置を指定*/
 	position: absolute;
 	top: 0;
 	left: 0;
 	z-index: 2;
    /*色や形状*/
 	background: #f7f2ee;  /*背景色*/
 	width: 100%;
	height: 100%;
    /*アニメーション*/
 	transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
 	transform: scale(0, 1);
	transform-origin: right top;
}
.btn-frame button:hover:before{
	transform-origin:left top;
	transform:scale(1, 1);
}

.btn-frame button a{
	width: 100%;
}
.btn-frame button .arrow{
	width: 120px;
	height: 8px;
	border-bottom: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: skew(45deg);
	position: absolute;
	top: 40%;
	right: 100px;
	transition: all .2s;
}


.btn-frame button:hover .arrow{
	right: 70px;
}
.btn-frame button:hover{
	border: 1px solid #ac9d8f;
}

@media(max-width: 767px){
	/*ボタンのアニメーション*/
	.btn-frame button{
		position:relative;
		overflow: hidden;
		transition: ease .2s;
	}
	.btn-frame button span {
		position: relative;
		font-size: 4.23529411764706vw;/*1.6rem*/
	}
	.btn-frame button:before {
	 	content: '';
	    /*絶対配置で位置を指定*/
	 	position: absolute;
	 	top: 0;
	 	left: 0;
	 	z-index: 2;
	    /*色や形状*/
	 	background: #f7f2ee;  /*背景色*/
	 	width: 100%;
		height: 100%;
	    /*アニメーション*/
	 	transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
	 	transform: scale(0, 1);
		transform-origin: right top;
	}
	.btn-frame button:hover:before{
		transform-origin:left top;
		transform:scale(1, 1);
	}

	.btn-frame button a{
		width: 100%;
	}
	.btn-frame button .arrow{
		width: 20.235294117vw;
		height: 1.88235294117647vw;
		border-bottom: 1px solid #fff;
		border-right: 1px solid #fff;
		right: 9.411764vw;
		transition: all .2s;
	}


	.btn-frame button:hover .arrow{
		right: 70px;
	}
	.btn-frame button:hover{
		border: 1px solid #ac9d8f;
	}
}


/*フッターの線を消す（お問い合わせセクションがないから！）*/
.footer .container{
	border: none;
}
