@charset "utf-8";

.cf-error {
  display: none;
  color: #ff0000;
  font-size: 0.9rem;
  margin: 4px 0 0;
}


/*===============================================
●画面の横幅が769px以上
===============================================*/
@media screen and (min-width : 769px ){
#pc------------------------------------------- {
}
main img {
	width: auto;
}
#helo {
	height: 420px;
	background-image: url("../images/pc/contact/h_bg.png");
	background-size: cover;
	position: relative;
	margin-bottom: 80px;
}
#helo p {
	position: absolute;
	left: 0px;
	right: 0px;
	bottom: 0px;
}





#contact h1+p {
	font-size: 18px;
	line-height: 1.8em;
	margin-top: 25px;
}
#contact h1+p span {
	font-size: 14px;
	line-height: 2em;
	display: inline-block;
}
#contact h1+p span em {
	color: #ff0000;
}
#contact h1+p a {
	color: #003752;
	text-decoration: none;
}
#contact dl {
	width: 1000px;
	margin-left: auto;
	margin-right: auto;
	display: flex;
	flex-wrap: wrap;
	margin-top: 50px;
}
#contact dl dt {
	width: 260px;
	padding-left: 15px;
	background-color: #E5EBEE;
	font-size: 16px;
	text-align: left;
	padding-top: 10px;
	padding-bottom: 9px;
	margin-bottom: 25px;
}
#contact dl dt span {
	color: #ff0000;
}
#contact dl dt em {
	display: block;
	line-height: 1.6em;
	font-size: 14px;
}
#contact dl dd {
	width: 725px;
	margin-bottom: 25px;
	text-align: left;
}
#contact dl dd input[type="text"],
#contact dl dd input[type="tel"],
#contact dl dd input[type="email"]
{
	width: 99%;
	border: 1px solid #003752;
	height: 42px;
	padding-left: 1%;
	color: #003951;
}
#contact dl dd select {
	width: 280px;
	margin-left: 10px;
	border: 1px solid #003752;
	background-color: #F2F2F2;
	border-radius: 10px;
	height: 38px;
	margin-top: 3px;
	padding-left: 1%;
	color: #003951;
}
#contact dl dd textarea {
	height: 180px;
	margin-bottom: -6px;
	width: 99%;
	border: 1px solid #003752;
	padding-left: 1%;
	color: #003951;
}
#contact dl+p {
	margin-top: 30px;
}
#contact .btn input {
	width: 1088px;
	height: 88px;
	margin-left: auto;
	margin-right: auto;
	border: 6px solid #003951;
	background-color: #F1BB3E;
	text-indent: -9999px;
	background-image: url("../images/pc/contact/btn.png");
	background-position: center center;
	background-repeat: no-repeat;
	cursor: pointer;
	transition: 0.3s;
	margin-top: 20px;
}
#contact .btn input:hover {
	opacity: 0.7;
	transition: 0.3s;
}
.wpcf7-form-control.wpcf7-submit.has-spinner {
	width: 352px;
	height: 72px;
	margin-left: auto;
	margin-right: auto;
	text-indent: -9999px;
	background-image: url("../images/pc/contact/confirm_btn.png");
	background-position: center center;
	background-repeat: no-repeat;
	cursor: pointer;
	transition: 0.3s;
	margin-top: 20px;
}
.wpcf7-form-control.wpcf7-submit.has-spinner:hover {
	opacity: 0.7;
	transition: 0.3s;
}

#send-btn.wpcf7-form-control.wpcf7-submit.has-spinner {
	width: 352px;
	height: 72px;
	margin-left: auto;
	margin-right: auto;
	text-indent: -9999px;
	background-image: url("../images/pc/contact/send_btn.png");
	background-position: center center;
	background-repeat: no-repeat;
	cursor: pointer;
	transition: 0.3s;
	margin-top: 20px;
}
.btn-back-confirm {
	height: 72px;
	width: 100px;
	margin-right: 20px;
	position: relative;
	top: -2px;
	cursor: pointer;
}
}



/*===============================================
●画面の横幅が768pxまで
===============================================*/
@media screen and (max-width:768px){
	
/*===============================================
●sp-tablet
===============================================*/
#sptablet------------------------------------------- {
}
main img {
	width: auto;
}
#helo {
	height: 50vw;
	background-image: url("../images/pc/contact/h_bg.png");
	background-size: cover;
	background-position: right center;
	position: relative;
	margin-bottom: 10vw;
}
#helo p {
	position: absolute;
	left: 0px;
	right: 0px;
	bottom: 0px;
	width: 60%;
	margin-left: auto;
	margin-right: auto;
}





#contact h1+p {
	line-height: 1.8em;
	margin-top: 5vw;
	font-size: 3.5vw;
	width: 96%;
	margin-left: auto;
	margin-right: auto;
}
#contact h1+p span {
	font-size: 3vw;
	line-height: 2em;
	display: inline-block;
}
#contact h1+p span em {
	color: #ff0000;
}
#contact h1+p a {
	color: #003752;
	text-decoration: none;
}
#contact dl {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 5vw;
}
#contact dl dt {
	width: 97%;
	padding-left: 3%;
	background-color: #E5EBEE;
	font-size: 3.5vw;
	text-align: left;
	padding-top: 10px;
	padding-bottom: 10px;
}
#contact dl dt span {
	color: #ff0000;
}
#contact dl dt em {
	display: block;
}
#contact dl dd {
	width: 100%;
	margin-bottom: 10vw;
	text-align: left;
}
#contact dl dd input[type="text"],
#contact dl dd input[type="tel"],
#contact dl dd input[type="email"]
{
	width: 98.5%;
	border: 1px solid #003752;
	height: 12vw;
	padding-left: 1%;
	color: #003951;
}
#contact dl dd select {
	width: 50vw;
	border: 1px solid #003752;
	background-color: #F2F2F2;
	border-radius: 10px;
	height: 12vw;
	margin-top: 2vw;
	padding-left: 1%;
	color: #003951;
}
#contact dl dd textarea {
	height: 50vw;
	width: 98.5%;
	border: 1px solid #003752;
	padding-left: 1%;
	color: #003951;
}
#contact dl+p {
	margin-top: 5vw;
	
}
#contact .btn input {
	width: 90%;
	height: 18vw;
	margin-left: auto;
	margin-right: auto;
	border: 4px solid #003951;
	background-color: #F1BB3E;
	text-indent: -9999px;
	background-image: url("../images/pc/contact/btn.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 35vw;
	cursor: pointer;
	transition: 0.3s;
	margin-top: 20px;
}
#contact .btn input:hover {
	opacity: 0.7;
	transition: 0.3s;
}

.wpcf7-form-control.wpcf7-submit.has-spinner {
	width: 80%;
	height: 18vw;
	margin-left: auto;
	margin-right: auto;
	text-indent: -9999px;
	background-image: url("../images/pc/contact/confirm_btn.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	cursor: pointer;
	transition: 0.3s;
	margin-top: 20px;
	background-color: #fff;
}
.wpcf7-form-control.wpcf7-submit.has-spinner:hover {
	opacity: 0.7;
	transition: 0.3s;
}

#send-btn.wpcf7-form-control.wpcf7-submit.has-spinner {
	width: 80%;
	height: 18vw;
	margin-left: auto;
	margin-right: auto;
	text-indent: -9999px;
	background-image: url("../images/pc/contact/send_btn.png");
	background-position: center center;
	background-repeat: no-repeat;
	background-size: contain;
	cursor: pointer;
	transition: 0.3s;
	margin-top: 20px;
	background-color: #fff;
}
.btn-back-confirm {
	height: 15vw;
	width: 80%;
	display: block;
	margin-left: auto;
	margin-right: auto;
	cursor: pointer;
	margin-bottom: -10px;
}
}



/*===============================================
●画面の横幅が400pxまで
===============================================*/
@media screen and (max-width:400px){
/*===============================================
●sp400
===============================================*/
#sp400------------------------------------------- {
}
}



/*===============================================
●画面の横幅が320pxまで
===============================================*/
@media screen and (max-width:320px){
/*===============================================
●sp320
===============================================*/
#sp320------------------------------------------- {
}
}



/*===============================================
●画面の横幅が481pxから768pxまで
===============================================*/
@media screen and (min-width:481px) and (max-width:768px) {
/*===============================================
●tablet
===============================================*/
#tab------------------------------------------- {
}
}