@charset "UTF-8";

/* クリア定義 */
.formPageWrapper, .formPageWrapper div, .formPageWrapper span, .formPageWrapper object, .formPageWrapper iframe, .formPageWrapper h1, .formPageWrapper h2, .formPageWrapper h3, .formPageWrapper h4, .formPageWrapper h5, .formPageWrapper h6, .formPageWrapper p, .formPageWrapper blockquote, .formPageWrapper pre, .formPageWrapper abbr, .formPageWrapper address, .formPageWrapper cite, .formPageWrapper code, .formPageWrapper del, .formPageWrapper dfn, .formPageWrapper em, .formPageWrapper img, .formPageWrapper ins, .formPageWrapper kbd, .formPageWrapper q, .formPageWrapper samp, .formPageWrapper small, .formPageWrapper strong, .formPageWrapper sub, .formPageWrapper sup, .formPageWrapper var, .formPageWrapper b, .formPageWrapper i, .formPageWrapper dl, .formPageWrapper dt, .formPageWrapper dd, .formPageWrapper ol, .formPageWrapper ul, .formPageWrapper li, .formPageWrapper fieldset, .formPageWrapper form, .formPageWrapper label, .formPageWrapper legend, .formPageWrapper caption, .formPageWrapper tfoot, .formPageWrapper thead, .formPageWrapper th, .formPageWrapper article, .formPageWrapper aside, .formPageWrapper canvas, .formPageWrapper details, .formPageWrapper figcaption, .formPageWrapper figure, .formPageWrapper footer, .formPageWrapper header, .formPageWrapper hgroup, .formPageWrapper menu, .formPageWrapper nav, .formPageWrapper section, .formPageWrapper summary, .formPageWrapper time, .formPageWrapper mark, .formPageWrapper audio, .formPageWrapper video {
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-size: 100%;
vertical-align: baseline;
background: 
	transparent;
}
.formPageWrapper, .formPageWrapper * {
	font-feature-settings: normal;
	box-sizing: content-box;
}
.formPageWrapper button {
	box-sizing: border-box;
}

/* タグ定義 */

.formPageWrapper {
	margin: 0;
	padding: 0;
	background-color:#FFF;
	font-size: 14px;
	height: auto;
	line-height: 26px;
	overflow-x: hidden;
	width: 100%;
	position: relative;
	font-family: 'Lato', 'Avenir', 'Avenir Next', 'Century Gothic', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
}

.formPageWrapper p {
	margin-bottom: 1em;
}
.formPageWrapper small {
	font-size: 12px;
	color: #999;
	display: inline-block;
	line-height: 1.5em;
	margin-top: 1em;
	font-weight: normal;
}

.formPageWrapper :placeholder-shown {
	color: #aaaaaa;
}
.formPageWrapper ::-ms-input-placeholder{ /* edge */
	color: #aaaaaa;
}

/* クラス定義 */

.formPageWrapper .ct { /* 中央寄せ */
	text-align: center;
}

.formPageWrapper .bold {/* 太字 */
	font-weight: bold;
}
.formPageWrapper .pc{display:block;}
.formPageWrapper .sp{display:none;}
.formPageWrapper .req::after {/* 必須アイコン */
	content: "必須";
	background-color: #e95a83;
	color:#fff;
	border-radius: 3px;
	padding: .25em .5em;
}

.formPageWrapper .blink {
  animation-name: flash;
  animation-duration: 3s;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-play-state: running;
}

  @keyframes flash {
    50%{
        opacity: 0;
    }
  }

/* メールフォームプロの定義拡張 */
.formPageWrapper .mfp_element_all{
	max-width: none;
}
.formPageWrapper .mfp_parent_error>.mfp_err {
	display: block;
}
form#mailformpro dl dt {
	width: 255px;
	font-size: inherit;
	font-weight: bold;
	line-height: inherit;
	text-align: left;
	margin-right: 15px;
	background-color: inherit;
	border-top: none;
}
form#mailformpro dl dt.req {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}
form#mailformpro dl dd {
	font-size: inherit;
	line-height: normal;
	background-color: inherit;
	border-top: none;
	border-bottom: solid 1px #dddddd;
	padding-left: 270px;
	padding-top: 8px;
}

form#mailformpro label.mfp_checked {
	padding: 0px;
	margin: 3px;
	border: none;
	background:none;
	box-shadow: none;
}
form#mailformpro label.mfp_not_checked {
	border: none;
	padding: 0px;
	margin: 3px;
}


form#mailformpro input[type="text"],
form#mailformpro input[type="age"],
form#mailformpro input[type="tel"],
form#mailformpro input[type="email"],
form#mailformpro select,
form#mailformpro textarea {
	box-shadow: none;
	font-size: inherit;
	line-height: inherit;
}
form#mailformpro .form_select{
	width: auto;
	position: relative;
	display: inline-block;
}
form#mailformpro .form_reference .form_select{
	width: 100%;
}
form#mailformpro .form_select::after {
	font-family: "Font Awesome 5 Free";
	content: "\f078";
	font-weight: bold;
	font-size: 12px;
	color: #aaaaaa;
	display: inline-block;
	position: absolute;
	top: 1em;
	right: 12px;
	pointer-events: none;
}
form#mailformpro .form_select_plus::after {
	font-family: "Font Awesome 5 Free";
	content: "\f078";
	font-weight: bold;
	font-size: 12px;
	color: #aaaaaa;
	display: inline-block;
	position: absolute;
	top: 2em;
	right: 12px;
	pointer-events: none;
}
form#mailformpro select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
	padding: .4em 2em .4em .4em;
	width: 100%;
	background-color: #f6f7f7;
	border: 1px solid #dddddd;
	border-radius: 6px;
	box-sizing: border-box;
}
form#mailformpro select::-ms-expand { /* IE11 */
	display: none;
}

form#mailformpro input[type="text"],
form#mailformpro input[type="age"],
form#mailformpro input[type="tel"],
form#mailformpro input[type="email"],
form#mailformpro textarea {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
	padding: .6em;
	background-color: #f6f7f7;
	border: 1px solid #dddddd;
	border-radius: 6px;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

form#mailformpro input[type="text"],
form#mailformpro input[type="tel"],
form#mailformpro input[type="email"],
form#mailformpro textarea {
	width: 100%;
}
form#mailformpro input[type="text"].form_other,
form#mailformpro .form_schedule input[type="text"]{
	width: auto;
}
form#mailformpro input[type="age"] {
	width: 60px;
}


/* メールフォームプロ 確認画面の定義拡張 */
#mfp_overlay_background {
	position: fixed !important;
	top: 0 !important;
	bottom: 0 !important;
	left: 0 !important;
	right: 0 !important;
	height: auto !important;
}
#mfp_overlay #mfp_confirm_table tr{
	background-color: #FFF;
}
#mfp_overlay #mfp_buttons{
	padding-top: 1em;
}

#mfp_overlay #mfp_button_send,
#mfp_overlay #mfp_button_cancel{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
	border: 0 solid transparent;
	margin: 0 auto;
	display: block;
	padding: 20px;
	width: 480px;
	background: none;
	background-color: #e95a83;
	border-radius: 40px;
	color:#FFF;
	font-size: 14px;
	font-weight: bold;
	position: relative;
	text-align: center;
	text-shadow: none;
}

/* メールフォームプロ thanks画面の定義拡張 */
.formPageWrapper .mfp_thanks strong{
	padding: 3px 10px;
	color: #e95a83;
	font-size: 14px;
	pointer-events: none;
}

/* ページ固有定義 */
#container {
	width: 1000px;
	margin: 0 auto;
}

.formPageWrapper .section_s {
	margin-bottom: 70px;
}
.formPageWrapper .section_form {
	margin: 0 auto;
	width: 800px;
}

.formPageWrapper .section_form dl{
	margin-bottom: 50px;
}

/* 電話番号リンク */
.formPageWrapper .tel_link a { /* 表示定義 */
	display: inline-block;
	height: 30px;
	overflow: hidden;
	padding-left: 22px;
	background-image: url(/mailformpro426/mfp.statics/images/handset-icon.svg);
	background-size: 22px 22px;
	background-position: left center;
	background-repeat: no-repeat;
}
.formPageWrapper .tel_link a { /* 文字定義 */
	font-family: "Times New Roman", serif;
	font-size: 30px;
	line-height: 30px;
}
.formPageWrapper a[href^="tel:"] {
	/* cursor: default; */
}
.formPageWrapper a:link,
.formPageWrapper a:visited {
	color: #333333;
	text-decoration: none;
	outline: none;
}

.formPageWrapper .section_form .form_info {
	margin: .5em 0 0;
}

.formPageWrapper .section_form .form_schedule .form_select{
	margin-bottom: .5em;
}

.formPageWrapper .section_form .form_schedule input{
	width: auto;
}

.formPageWrapper .section_form button.btn_pink{
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
	border: 0 solid transparent;
	margin: 0 auto;
	display: block;
	padding: 20px;
	width: 480px;
	background: none;
	background-color: #e95a83;
	border-radius: 40px;
	color:#FFF;
	font-size: 14px;
	font-weight: bold;
	position: relative;
	text-align: center;
	text-shadow: none;
}
.formPageWrapper .section_form button.btn_pink i {
	position: absolute;
	top: 50%;
	right: 60px;
	margin-top: -.5em;
	
}


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

/**************************************
  ここから下はSPデザイン。 
  PCでもSPデザインで表示させるページがあるので、
  以下のCSS定義は、style_sp_design_by_pc.css
  と同じにすること。
*/
	/* スマホ向け */
	.formPageWrapper  {
		line-height: 22px;
		font-family: 'Avenir', 'Avenir Next', 'Century Gothic', "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
	}
	.formPageWrapper .pc{display:none;}
	.formPageWrapper .sp{display:block;}
	.formPageWrapper .req::after {/* 後方 必須アイコン解除 */
		content: none !important;
	}
	.formPageWrapper .req::before {/* 必須アイコン */
		content: "必須";
		background-color: #fff;
		color:#e95a83;
		border-radius: 3px;
		padding: .25em .5em;
		margin-right: .5em;
	}
	form#mailformpro {
		padding: 0px;
	}
	form#mailformpro dl dt {
		width: 100vw;
		display: block;
		position: relative;
		left: -20px;
		background-color:#e95a83;
		color:#fff;
		margin: 1em 0;
		padding: .75em 20px;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		font-weight: normal;
	}
	form#mailformpro dl dt.req {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: start;
		-webkit-justify-content: flex-start;
		-ms-flex-pack: start;
		justify-content: flex-start;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
	}
	form#mailformpro dl dd {
		padding: 0px 0px 20px;
		margin-bottom: 20px;
		line-height: 22px;
	}
	form#mailformpro input[type="text"],
	form#mailformpro input[type="age"],
	form#mailformpro input[type="tel"],
	form#mailformpro input[type="email"],
	form#mailformpro input[type="radio"],
	form#mailformpro select,
	form#mailformpro textarea {
		font-size: 16px;
		margin: 0;
	}
	form#mailformpro textarea {
		margin: 1px 0;
	}
	form#mailformpro select {
		padding: .5em 2em .5em 1em;
		border-radius: 4px;
	}
	form#mailformpro input[type="text"].form_other,
	form#mailformpro .form_schedule input[type="text"]{
		width: 100%;
	}
	#mfp_overlay #mfp_button_send,
	#mfp_overlay #mfp_button_cancel{
		display: block;
		padding: 20px;
		width: 100%;
	}
	#container {
		width: auto;
		margin: 0 20px;
	}
	.formPageWrapper .section_s {
		margin-bottom: 0px;
	}
	.formPageWrapper .section_form {
		width: 100%;
	}
	.formPageWrapper .section_form dl dd .form_schedule span {
		position: relative;
		left: -20px;
		display: block;
		width: 100vw;
		background-color: #dddddd;
		margin: 1em 0;
		padding: .5em 20px;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}
	.formPageWrapper .section_form dl dd .form_reference span {
		display: block;
		margin: 1em 0 .5em;
	}
	.formPageWrapper .section_form button.btn_pink{
		width: 100%;
	}
	.formPageWrapper .section_form .mfp_buttons{
		text-align: center;
		margin-bottom: 2em;
	}
}