@charset "UTF-8";


/*欧文*/
.form-info p a span{
	font-family: "OptimaNovaLTPro-Regular";
}
.contact-header h1{
	font-family: "Noto Serif JP", "MainichiNewspapersM Light", "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif !important;
}

#contact-form .me-footer-breadcrumb {
	margin-top: 0;
	margin-bottom: 50px;
}
.form-area__input input{
	font-family: sans-serif;
	outline: none;	
}
.mail_to i:after {
    content:'@';
}

.form-area-confirm .form-field__input-select-btn:before,
.form-field__input-select-btn.is_selected:before{
	display: none;
}
.form-field__input-select-month.is_select_month .form-field__input-select-btn:before{
	display: none;
}
.form-field__input-select-day.is_select_day .form-field__input-select-btn:before{
	display: none;
}
.form-field__input input[type="text"],
.form-field__input textarea,
.form-field__input-select-btn select{
	font-family: inherit;
}
.form-field__name i{
	font-family: "OptimaNovaLTPro-Regular","Shuei KakuGo Gin M";	
}
.form-area-confirm .form-field__input{
	font-family: "OptimaNovaLTPro-Regular","Shuei KakuGo Gin M";	
}

@media screen and (min-width: 768px) {

	::placeholder {
		color: #bcb3ac;
		font-size: 16px;
		font-family: "OptimaNovaLTPro-Regular","Shuei KakuGo Gin M";	
	}

	#contact-form #corp-main{
		margin: 100px 0 0;
	}	
	.contact-header{
		margin: 0 auto 30px;
		padding: 0 10px;
		max-width: 1060px;
	}
	.contact-header h1{
		font-size: 61.6px;
		letter-spacing: 0.04em;		
	}
	.contact-sec-inner{
		margin: auto;
		padding: 0 10px;
		max-width: 1060px;
	}


	.button__submit-back{
		text-align: center;
	}
	.button__submit-back button{
		position: relative;
		display: inline-block;
		padding: 0 0 0 40px;
		font-size: 16px;
		font-family: "Shuei KakuGo Gin M";
		border: none;
		text-align: center;
		background: none;
		margin: 0;
		color: #000;
	}
	.button__submit-back button:before {						
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		bottom: 0;
		left: 0;
		display: block;
		width: 20px;
		height: 15px;
		background: url(../../common/img/arrow_l.svg) 0 0 no-repeat;
		background-size: 100% 100%;
		transition: transform 500ms ease;
	}
	.button__submit-back button:hover:before{
		transform: translateX(-10px);
	}


/* Contact
===========================================================================*/

	.form-lead p,
	.form-info p{
		font-size: 20px;
		line-height: 2;
		letter-spacing: 0.04em;
	}
	.form-info p.note{
		margin: 20px 0 0;
		font-size: 16px;
	}
	.form-lead{
		margin: 0 60px;
	}
	.form-info{
		margin: 80px 60px 0;
	}
	.form-info p a{
		position: relative;
		line-height: 1.8;
		letter-spacing: 0.04em;
		transition: color 500ms ease;
	}
	.form-info p.note a{
		padding: 0 0 2px;
		border-bottom: 1px solid #000;
		transition: color 500ms ease,border 500ms ease;
	}
	.form-info p a:hover{
		color: #bcb3ac;
	}
	.form-info p.note a:hover{
		border-bottom: 1px solid #fff;
	}




/* form-area
===========================================================================*/

	.form-area{
		margin: 80px 0 0 ;
		padding: 0 20px;
	}
	.form-area__note{
		padding: 0 40px;		
	}
	.form-area__note p{
		font-size: 14px;
		color: #7a695d;
	}

	.form-area form{
		margin: 20px 0 0;
		letter-spacing: 0.1em;
	}	
	.form-field__item{
		display: flex;
		padding: 0 0 0 40px;
		border-bottom: 1px solid #000;
	}
	.form-field__item:first-child{
		border-top: 1px solid #000;
	}
	.form-field__name{
		position: relative;
		display: flex;
		align-items: center;
		width: 205px;
		height: 80px;
	}
	.form-field__name i{
		position: relative;
		padding: 0 0 0 20px;
		display: block;
		width: 100%;
	}
	.form-field__name span{
		position: absolute;
		margin: 0 4px 0 0;
		top: -4px;
		left: 0;
		color: #7a695d;
	}
	.form-field__name .error{
		position: absolute;
		display: block;
		top: -1.5em;
		left: 0;
		color: #ca390d;
		font-size: 14px;
	}

	.form-field__input{
		width: calc(100% - 205px);
		display: flex;
		align-items: center;
	}
	.form-field__input input[type="text"],
	.form-field__input input[type="email"]{
		padding: 0;
		width: 100%;
		height: 100%;
		font-size: 16px;
		border: none;
		outline: none;
		background: none;
	}
	.form-field__input-select-date{
		position: relative;
		display: flex;
		align-items: center;
	}
	.form-field__input-select-btn{
		position: relative;
		margin: 0 10px 0 0;
	}
	.form-field__input-select-btn select{
		font-size: 16px;
		text-align: center;
		cursor: pointer;
		text-overflow: ellipsis;
		border: none;
		outline: none;
		background: transparent;
		background-image: none;
		box-shadow: none;
		-webkit-appearance: none;
		appearance: none;
		position: relative;
		z-index: 20;
	}
	.form-field__input-select-btn:before {
		position: absolute;
		top: 0;
		right: 0;
		width: 0;
		height: 0;
		padding: 0;
		content: '';
		width: 100%;
		height: 100%;
		background: url(../img/icon_select.svg) 50% 50% no-repeat;
		background-size: 10px 14px;
		pointer-events: none;
		z-index: 10;
	}

	.form-field__input-select{
		display: flex;
		align-items: center;
	}
	.form-field__input-select + .form-field__input-select{
		margin-left: 60px;
	}

	.form-field__input-check-reply,
	.form-field__input-check-flex{
		display: flex;
		align-items: center;
	}
	.form-field__input-check-flex .form-field__input-check + .form-field__input-check,
	.form-field__input-check-reply .form-field__input-check + .form-field__input-check{
		margin-left: 30px;
	}

	.form-field__input-check-doc{
		padding: 26px 0;
	}
	.form-field__input-check-doc .form-field__input-check + .form-field__input-check{
		margin-top: 25px;
	}


	.form-field__input-check input[type="checkbox"]{
		display: none;		
	}
	.form-field__input-check div{
		position: relative;
		padding: 0 0 0 25px;	
	}
	.form-field__input-check div:before{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		left: 0;
		bottom: 0;
		display: block;
		width: 20px;
		height: 20px;
		border-radius: 10px;
		background: #fff;
		border: 1px solid #bcb3ac;
	}
	.form-field__input-check input:checked + div:before{
		background: #bcb3ac;
		border: 1px solid #bcb3ac;
	}

	/* ---- wp form ---- */
	.form-field__input-check-flex .mwform-radio-field + .mwform-radio-field,
	.form-field__input-check-flex .mwform-checkbox-field + .mwform-checkbox-field,
	.form-field__input-check-reply .mwform-checkbox-field + .mwform-checkbox-field{
		margin: 0 0 0 30px;
	}

	.mwform-checkbox-field input[type="checkbox"]{
		display: none;		
	}
	.mwform-checkbox-field span{
		position: relative;
		display: block;
		padding: 0 0 0 25px;
		line-height: 1.8;
	}
	.mwform-checkbox-field span:before{
		content: "";
		position: absolute;
		margin: auto;
		top: 4px;
		left: 0;
		display: block;
		width: 20px;
		height: 20px;
		border-radius: 10px;
		background: #fff;
		border: 1px solid #bcb3ac;
	}
	.mwform-checkbox-field input:checked + span:before{
		background: #bcb3ac;
		border: 1px solid #bcb3ac;
	}

	.mwform-radio-field input[type="radio"]{
		display: none;		
	}
	.mwform-radio-field span{
		position: relative;
		display: block;
		padding: 0 0 0 25px;
		line-height: 1.8;
	}
	.mwform-radio-field span:before{
		content: "";
		position: absolute;
		margin: auto;
		top: 4px;
		left: 0;
		display: block;
		width: 20px;
		height: 20px;
		border-radius: 10px;
		background: #fff;
		border: 1px solid #bcb3ac;
	}
	.mwform-radio-field input:checked + span:before{
		background: #bcb3ac;
		border: 1px solid #bcb3ac;
	}


	.form-field__input-check-doc .mwform-checkbox-field{
		display: block;
	}
	.form-field__input-check-doc .mwform-checkbox-field + .mwform-checkbox-field{
		margin-top: 18px;
	}





	/* ---- /wp form ---- */



	.form-field__input-textarea{
		height: auto;		
	}
	.form-area-confirm .form-field__input-textarea{
		padding: 30px 0;
		line-height: 1.8;
	}
	.form-field__input textarea{
		width: 100%;
		height: 370px;		
		padding: 30px 0;
		font-size: 16px;
		outline: none;
		border: none;
		background: none;
	}

	.button__detail{
		margin: 180px 0 160px;
	}



}



@media screen and (max-width: 767px) {


	::placeholder {
		color: #bcb3ac;
		font-size: 14px;
		font-family: "Shuei KakuGo Gin M";
	}

	#contact-form #corp-main{
		margin: 60px 0 0;
	}
	.contact-header{
		margin: 0 23px 20px;
	}
	.contact-header h1{
		font-size: min(28px, 6.72vw);
		letter-spacing: 0.04em;		
	}
	.contact-sec-inner{
		padding: 0 23px;
	}


	.button__submit-back{
		text-align: center;
	}
	.button__submit-back button{
		position: relative;
		display: inline-block;
		padding: 0 0 0 30px;
		font-size: 12px;
		font-family: "Shuei KakuGo Gin M";
		border: none;
		text-align: center;
		background: none;
		margin: 0;
		color: #000;
	}
	.button__submit-back button:before {						
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		bottom: 0;
		left: 0;
		display: block;
		width: 17px;
		height: 13px;
		background: url(../../common/img/arrow_l.svg) 0 0 no-repeat;
		background-size: 100% 100%;
	}


/* Contact
===========================================================================*/

	.form-lead p,
	.form-info p{
		line-height: 2;
		letter-spacing: 0.04em;
	}
	.form-info p.note{
		margin: 20px 0 0;
	}
	.form-lead{
		margin: 0 7px;
	}
	.form-info{
		margin: 40px 7px 0;
	}

	.form-info p a{
		position: relative;
		line-height: 1.8;
		letter-spacing: 0.04em;
		transition: color 500ms ease;
	}
	.form-info p.note a{
		padding: 0 0 2px;
		border-bottom: 1px solid #000;
		transition: color 500ms ease,border 500ms ease;
	}

/* form-area
===========================================================================*/

	.form-area{
		margin: 80px 0 0 ;
	}
	.form-area__note p{
		margin: 0 0 0 7px;
		color: #7a695d;
		font-size: 10px;
	}

	.form-area form{
		margin: 20px 0 0;
	}	
	.form-field__item{
		display: flex;
		padding: 0 0 0 7px;
		border-bottom: 1px solid #000;
	}
	.form-field__item:first-child{
		border-top: 1px solid #000;
	}
	.form-field__name{
		position: relative;
		display: flex;
		align-items: center;
		width: 130px;
		height: 80px;
	}
	.form-field__name i{
		position: relative;
		padding: 0 0 0 10px;
		display: block;
		width: 100%;
	}

	.form-field__name span{
		position: absolute;
		top: -10px;
		left: 0;
		color: #7a695d;
		font-size: 10px;
	}
	.form-field__name .error{
		position: absolute;
		display: block;
		top: -20px;
		left: 0;
		color: #ca390d;
		font-size: 10px;
	}

	.form-field__input{
		width: calc(100% - 130px);
		display: flex;
		align-items: center;
	}
	.form-field__input input[type="text"],
	.form-field__input input[type="email"]{
		padding: 0;
		width: 100%;
		height: 100%;
		font-size: 13px;
		border: none;
		outline: none;
		background: none;
	}
	.form-field__input-select-date{
		position: relative;
		display: flex;
		align-items: center;
	}
	.form-field__input-select-btn{
		position: relative;
		margin: 0 10px 0 0;
	}
	.form-field__input-select-btn select{
		text-align: center;
		cursor: pointer;
		text-overflow: ellipsis;
		border: none;
		outline: none;
		background: transparent;
		background-image: none;
		box-shadow: none;
		-webkit-appearance: none;
		appearance: none;
		position: relative;
		z-index: 20;
		font-size: 13px;
		color: #000;
	}
	.form-field__input-select-btn:before {
		position: absolute;
		top: 0;
		right: 0;
		width: 0;
		height: 0;
		padding: 0;
		content: '';
		width: 100%;
		height: 100%;
		background: url(../img/icon_select.svg) 50% 50% no-repeat;
		background-size: 10px 14px;
		pointer-events: none;
		z-index: 10;
	}
	.form-field__input-select-btn.is_selected:before{
		display: none;
	}
	.form-field__input-select.is_select_month .form-field__input-select-btn:before{
		display: none;
	}
	.form-field__input-select.is_select_day .form-field__input-select-btn:before{
		display: none;
	}
	.form-field__input-select{
		display: flex;
		align-items: center;
	}
	.form-field__input-select + .form-field__input-select{
		margin-left: 30px;
	}

	.form-field__input-check-reply,
	.form-field__input-check-flex{
		padding: 28px 0;
	}
	.form-field__input-check-flex .form-field__input-check + .form-field__input-check,
	.form-field__input-check-reply .form-field__input-check + .form-field__input-check{
		margin-top: 25px;
	}

	.form-field__input-check-doc{
		padding: 28px 0;
	}
	.form-field__input-check-doc .form-field__input-check + .form-field__input-check{
		margin-top: 25px;
	}


	.form-field__input-check input[type="checkbox"]{
		display: none;		
	}
	.form-field__input-check div{
		position: relative;
		padding: 0 0 0 25px;	
	}
	.form-field__input-check div:before{
		content: "";
		position: absolute;
		margin: auto;
		top: 0;
		left: 0;
		bottom: 0;
		display: block;
		width: 15px;
		height: 15px;
		border-radius: 10px;
		background: #fff;
		border: 1px solid #bcb3ac;
	}
	.form-field__input-check input:checked + div:before{
		background: #bcb3ac;
		border: 1px solid #bcb3ac;
	}


	/* ---- wp form ---- */
	.mwform-checkbox-field{
		display: block;
	}
	.mwform-checkbox-field input[type="checkbox"]{
		display: none;		
	}
	.mwform-checkbox-field span{
		position: relative;
		display: block;
		padding: 0 0 0 25px;
		line-height: 1.8;
	}
	.mwform-checkbox-field span:before{
		content: "";
		position: absolute;
		margin: auto;
		top: 4px;
		left: 0;
		display: block;
		width: 15px;
		height: 15px;
		border-radius: 10px;
		background: #fff;
		border: 1px solid #bcb3ac;
	}
	.mwform-checkbox-field input:checked + span:before{
		background: #bcb3ac;
		border: 1px solid #bcb3ac;
	}

	.mwform-radio-field input[type="radio"]{
		display: none;		
	}
	.mwform-radio-field span{
		position: relative;
		display: block;
		padding: 0 0 0 25px;
		line-height: 1.8;
	}
	.mwform-radio-field span:before{
		content: "";
		position: absolute;
		margin: auto;
		top: 4px;
		left: 0;
		display: block;
		width: 15px;
		height: 15px;
		border-radius: 10px;
		background: #fff;
		border: 1px solid #bcb3ac;
	}
	.mwform-radio-field input:checked + span:before{
		background: #bcb3ac;
		border: 1px solid #bcb3ac;
	}

	.form-field__input-check-flex .mwform-radio-field + .mwform-radio-field,
	.form-field__input-check-flex .mwform-checkbox-field + .mwform-checkbox-field,
	.form-field__input-check-reply .mwform-checkbox-field + .mwform-checkbox-field{
		margin-top: 18px;
	}
	.form-field__input-check-doc .mwform-checkbox-field + .mwform-checkbox-field{
		margin-top: 18px;
	}

	/* ----/wp form ---- */





	.form-field__input-textarea{
		height: auto;		
	}
	.form-area-confirm .form-field__input-textarea{
		padding: 32px 0;
		line-height: 1.8;
	}
	.form-field__input textarea{
		width: 100%;
		height: 370px;		
		padding: 30px 0;
		font-size: 13px;
		outline: none;
		border: none;
		background: none;
	}

	.button__detail{
		margin: 100px 0 100px;
	}


}


@media screen  and (max-width: 374px){


}

@media screen and (max-width: 699px) {
	/* 資料請求ページの案内文は、スマホでは幅に応じて自然に折り返す。 */
	#contact-form.contact-doc .form-lead br {
		display: none;
	}

	/* 現在40pxのボタン下余白を、資料請求・お問い合わせとも120pxにする。 */
	#contact-form .button__detail-wrap {
		margin-bottom: 100px;
	}
}
#contact-form .button__detail button {
	cursor: pointer;
}

#contact-form .mwform-radio-field label,
#contact-form .mwform-checkbox-field label {
	cursor: pointer;
}
