@charset "utf-8";
.contact_wrap {
		max-width: 1036px;
		margin: 0 auto;
}
.contact_lead {
		line-height: 1.8;
		margin: 0 0 50px;
}
.contact_lead2 {
		line-height: 1.8;
		margin: 0 0 25px;
}
.contact_lead_must {
		color: #14b46e;
		text-align: right;
		margin: 0 0 25px;
		font-size: 14px;
}
.attention {
		margin-left: 1em;
		line-height: 1.8;
		color: #ff0000;
		position: relative;
		margin-bottom: 40px;
}
.attention span {
		display: block;
		position: absolute;
		top: 0;
		left: -1em;
}
@media(max-width: 767px) {
		.contact_lead_must {
				font-size: 14px;
				margin: 0 0 15px;
		}
		.attention br {
				display: none;
		}
}
.contact_form {
		display: flex;
		align-items: center;
		padding-top: 20px;
		padding-bottom: 20px;
		border-bottom: 1px solid #ccc;
		margin: 0;
}
.contact_form.first {
		border-top: 1px solid #ccc;
}
.mw_wp_form_preview .contact_form {
		padding-top: 25px;
		padding-bottom: 25px;
}
.contact_form.alignTop {
		display: flex;
		align-items: flex-start;
}
.contact_form dt {
		width: 250px;
		position: relative;
		font-size: 16px;
		font-weight: 500;
		padding-left: 40px;
		box-sizing: border-box;
}
.contact_form.alignTop dt {
		padding-top: 10px;
}
.must {
		margin-left: 2px;
		color: #14b46e;
}
.contact_form dd {
		flex: 1;
}
@media(max-width: 960px) {
		.contact_form dt {
				width: 190px;
				padding-left: 10px;
		}
}
@media(max-width: 767px) {
		.contact_form, .contact_form.alignTop, .mw_wp_form_preview .contact_form, .mw_wp_form_preview .contact_form.alignTop {
				display: block;
				padding: 23px 0 18px;
		}
		.contact_form dt {
				width: inherit;
				padding-top: 10px;
				padding-left: 15px !important;
				margin: 0 0 10px;
		}
		.contact_form dt br {
				display: none;
		}
		.contact_form.alignTop dt {
				padding-top: 10px;
				margin: 0 0 24px
		}
		.contact_form dd {
				padding-left: 15px;
				padding-right: 15px;
		}
}
/* ==================== */
dd input[type="text"], input[type="email"], input[type="submit"], input[type="button"], button, textarea, dd select {
		-webkit-appearance: none;
		border-radius: 0;
		padding: 0;
		vertical-align: middle;
}
dd input[type="text"], dd input[type="email"], dd textarea {
		padding: 10px 0;
		width: 100%;
		box-sizing: border-box;
		background: rgba(255, 255, 255, 0);
		border: 1px solid rgba(0, 0, 0, 0);
		border-radius: 0px;
		height: 60px;
		color: #1E1E1E;
		font-size: 16px;
}
dd select {
		padding: 10px 0;
		box-sizing: border-box;
		background: rgba(255, 255, 255, 0);
		border: 1px solid rgba(0, 0, 0, 0);
		border-radius: 0px;
		height: 60px;
		color: #282828;
		font-size: 16px;
}
@media(max-width: 767px) {
		dd input[type="text"], dd input[type="email"], dd textarea, dd select {
				padding: 5px 0;
				height: 50px;
		}
		dd input[type="text"], dd input[type="email"], dd textarea, dd select {
				font-size: 14px;
		}
}
dd textarea {
		height: 200px;
		resize: none;
		font-family: 'Noto Sans JP', sans-serif;
}
@media(max-width: 767px) {
		dd textarea {
				height: 200px;
		}
}
::placeholder {
		color: #1E1E1E;
		font-size: 15px;
}
@media(max-width: 767px) {
		::placeholder {
				display: inline-block;
				font-size: 14px;
		}
}
/* ==================== */
dd .checkGr {
		padding: 15px 0;
}
.mwform-checkbox-field label, .mwform-radio-field label {
		cursor: pointer;
		position: relative;
		z-index: 5;
		display: inline-block;
}
dd label input[type="checkbox"] + span, dd label input[type="radio"] + span {
		position: relative;
		padding: 0 0 0 27px;
		cursor: pointer;
		display: inline-block;
}
dd label input[type="checkbox"], dd label input[type="radio"] {
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
}
dd label input[type="checkbox"] + span::before, dd label input[type="checkbox"] + span::after, dd label input[type="radio"] + span::before, dd label input[type="radio"] + span::after {
		display: block;
		content: '';
		position: absolute;
		top: 0px;
		left: 0;
		box-sizing: border-box;
}
dd label input[type="checkbox"] + span::before, dd label input[type="radio"] + span::before {
		position: absolute;
		content: "";
		top: calc(50% - 9px);
		left: 0;
		width: 20px;
		height: 20px;
		background: #fff;
		border: 1px solid #000;
		box-sizing: border-box;
}
dd label input[type="radio"] + span::before {
		border-radius: 50%;
}
dd label input[type="checkbox"]:checked + span::after {
		position: absolute;
		content: '';
		top: 4px;
		left: 3px;
		width: 16px;
		height: 6px;
		border-left: 3px solid #14b46e;
		border-bottom: 3px solid #14b46e;
		transform: rotate(-45deg);
		box-sizing: content-box;
}
dd label input[type="radio"]:checked + span::after {
		content: '';
		display: block;
		position: absolute;
		top: 8px;
		left: 5px;
		width: 10px;
		height: 10px;
		background: #14b46e;
		border-radius: 50%;
}
.mw_wp_form .horizontal-item + .horizontal-item {
		margin-left: 25px !important;
}
@media(max-width: 840px) {
		dd .checkGr {
				display: flex;
				flex-wrap: wrap;
				padding: 10px 0 10px;
		}
		.checkGr .horizontal-item {
				width: 40%;
				margin: 0 0 10px;
		}
		.mw_wp_form .horizontal-item + .horizontal-item {
				margin-left: 0 !important;
		}
		dd label input[type="radio"]:checked + span::after {
				top: 7px;
		}
}
.select_item {
		position: relative;
		border: none;
		vertical-align: middle;
		padding-right: 30px;
		width: 230px;
}
.select_item::after {
		content: '';
		display: block;
		position: absolute;
		top: calc(50% - 8px);
		right: 45px;
		width: 9px;
		height: 9px;
		border-right: 1px solid #000;
		border-bottom: 1px solid #000;
		transform: rotate(45deg);
}
.select_item select {
		appearance: none;
		cursor: pointer;
		width: 100%;
		box-sizing: border-box;
		padding: 10px;
		border: 1px solid #dcdcdc;
}
@media(max-width: 767px) {
		dd input[type="text"], dd input[type="email"], dd textarea, dd select {
				padding: 10px;
		}
}
.form_flex {
		display: flex;
		flex-wrap: wrap;
}
.form_item {
		display: flex;
		align-items: center;
}
.form_flex .form_item input {
		width: 60px;
		border: 1px solid #dcdcdc;
		height: 40px;
		padding: 0 10px;
		text-align: right;
		font-size: 16px;
}
.form_flex .form_item {
		width: 33%;
		margin: 0 0 10px;
}
.form_item .formItemFirst {
		display: block;
		width: 120px;
}
.form_flex .form_item:nth-child(2) .formItemFirst, .form_flex .form_item:nth-child(5) .formItemFirst {
		width: 145px;
}
.form_flex .form_item:nth-child(3) .formItemFirst {
		width: auto;
		margin-right: 5px;
}
.form_item input {
		margin-right: 10px;
}
.form_vertical .form_item input {
		width: 125px;
		border: 1px solid #dcdcdc;
		height: 40px;
		padding: 0 10px;
		text-align: right;
		font-size: 16px;
}
.form_vertical .form_item:first-child {
		margin: 0 0 10px;
}
.formCostHd {
		margin-right: 5px;
}
@media(max-width: 1100px) {
		.form_flex .form_item {
				width: 50%;
		}
		.form_flex .form_item:nth-child(2) .formItemFirst {
				width: auto;
		}
		.form_flex .form_item:nth-child(1) .formItemFirst, .form_flex .form_item:nth-child(3) .formItemFirst, .form_flex .form_item:nth-child(5) .formItemFirst {
				width: 145px;
		}
		.form_flex .form_item:nth-child(3) .formItemFirst {
				margin-right: 0;
		}
}
@media(max-width: 830px) {
		.form_flex {
				display: block;
		}
		.form_flex .form_item {
				width: 100%;
		}
		.form_flex .form_item .formItemFirst {
				width: 145px !important;
				margin-right: 0 !important;
		}
}
/* ==================== */
.error_item {
		margin-left: 250px;
		height: 1px;
		position: relative;
}
.error_item .error {
		position: absolute;
		top: -25px;
		left: 0;
		font-size: 13px !important;
		color: #14b46e !important;
		font-weight: 500;
}
.error_static .error {
		font-size: 13px !important;
		color: #14b46e !important;
		padding-top: 3px;
		font-weight: 500;
}
::placeholder {
		font-size: 14px;
		color: #ccc;
		font-family: 'Noto Sans JP', sans-serif;
}
/* ==================== */
.send_btn_flex {
		display: flex;
		align-items: center;
		justify-content: center;
		margin-top: 60px;
}
.btn_item {
		width: 270px;
		height: 54px;
		position: relative;
		border: 1px solid #282828;
		border-radius: 60px;
		box-sizing: border-box;
		cursor: pointer;
		transition: background 0.4s;
		text-align: center;
}
.contactSecond .btn_item {
		margin: 0 13px;
}
.btn_item input {
		background: none;
		width: 270px;
		height: 50px;
		border-radius: 60px;
		border: none;
		cursor: pointer;
		font-family: "Noto Sans JP", sans-serif;
		font-size: 16px;
		font-weight: 500;
		text-align: center;
		color: #282828;
}
.btn_item::after {
		content: '';
		display: block;
		position: absolute;
		top: calc(50% - 5px);
		right: 20px;
		width: 11px;
		height: 11px;
		pointer-events: none;
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 11px;
		background-image: url(../n_images/btn_arrow_blk.png);
		transition: background 0.2s;
		z-index: 5
}
@media (hover: hover) {
		.btn_item:hover {
				border: 1px solid #14b46e;
				background: #14b46e;
				color: #fff;
		}
		.btn_item:hover input {
				color: #fff;
		}
		.btn_item:hover::after {
				background-image: url(../n_images/btn_arrow_wht.png) !important;
		}
}
.btn_item.item_edit::after {
		background-image: url("../n_images/btn_arrow_back.png");
		right: inherit;
		left: 20px;
}
@media (hover: hover) {
		.btn_item button:hover {
				background: #1e1e1e;
				color: #fff;
		}
		.btn_item:hover::after {
				background-image: url("../images/btn_arw_right_wht.png");
		}
		.btn_item.item_edit:hover::after {
				background-image: url("../n_images/btn_arrow_back_wht.png") !important;
		}
}
.btn_item.item_edit::before {
		right: inherit;
		left: 0;
}
.btn_item button {
		background: none;
		border: none;
		cursor: pointer;
		font-size: 15px;
		font-family: 'Noto Sans JP', sans-serif;
		text-align: center;
		width: 100%;
		height: 60px;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 40px;
}
@media(max-width: 767px) {
		.send_btn_flex {
				display: flex;
				flex-direction: column-reverse;
				max-width: 270px;
				margin: 40px auto 0;
		}
		.btn_item button {
				font-size: 14px;
		}
		.btn_item.item_edit, .btn_item.item_send {
				width: 100%;
		}
		.btn_item.item_edit button, .btn_item.item_send button, .btn_item.item_edit input, .btn_item.item_send input {
				width: 100%;
		}
		.btn_item.item_send {
				margin-bottom: 10px;
		}
}
@media(max-width: 374px) {
		.btn_item button {
				font-size: 14px;
		}
		.btn_item.item_edit, .btn_item.item_send {
				width: 135px;
		}
		.btn_item.item_edit button, .btn_item.item_send button {
				width: 135px;
		}
}
.btn_item.item_edit button {
		text-align: center;
		padding-left: 20px;
		padding-right: 20px;
}
.btn_item.item_send button {
		text-align: center;
		padding-left: 20px;
		padding-right: 20px;
}
@media(max-width: 374px) {
		.btn_item.item_edit button {
				padding-left: 75px;
		}
		.btn_item.item_send button {
				padding-right: 75px;
		}
}
/* disAbled */
.dis_abled {
		position: relative;
}
.dis_abled::after {
		content: '';
		display: block;
		position: absolute;
		top: -30px;
		left: 0;
		width: 100%;
		height: 150px;
		z-index: 10;
		background: rgba(255, 255, 255, 0.7);
		transition: all 0.4s;
}
/* ===== 分岐 =============== */
/* input */
.mw_wp_form_input .item_edit, .mw_wp_form_input .item_send {
		display: none;
}
.mw_wp_form_input .contactSecond {
		display: none;
}
/* confirm */
.mw_wp_form_confirm .item_input {
		display: none;
}
.mw_wp_form_confirm .contact_sb, .mw_wp_form_confirm .contact_policy, .mw_wp_form_confirm .agree_lead {
		display: none;
}
.mw_wp_form_confirm .agree_check_center {
		display: none;
}
.mw_wp_form_confirm .select_item::after {
		display: none;
}
.mw_wp_form_confirm .dis_abled::after {
		display: none;
}
.mw_wp_form_confirm .item_confirm {
		display: none;
}
.mw_wp_form_confirm .contactFirst {
		display: none !important;
}
.mw_wp_form_confirm .send_btn_flex {
		display: flex;
		justify-content: center;
}
.mw_wp_form_confirm .send_btn_flex .item_edit {
		margin-right: 10px;
}
.mw_wp_form_confirm .send_btn_flex .item_send {
		margin-left: 10px;
}
@media(max-width: 767px) {
		.mw_wp_form_confirm .send_btn_flex .item_edit {
				margin-right: 5px;
		}
		.mw_wp_form_confirm .send_btn_flex .item_send {
				margin-left: 15px;
		}
}
/* ===== 完了画面 =============== */
.page_complete p {
		text-align: center;
		padding-top: 30px;
		line-height: 2.0;
		margin-bottom: 60px;
}
input:-webkit-autofill {
		transition: background-color 100000s ease-in-out 0s;
}
/* ===== POLICY =============== */
.agree_check_center {
		display: flex;
		justify-content: center;
}
.agree_check label {
		cursor: pointer;
		position: relative;
		z-index: 5;
}
.agree_check input[type="checkbox"] + span {
		position: relative;
		padding: 0 0 0 30px;
}
.agree_check label input[type="checkbox"] {
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
}
.agree_check input[type=checkbox] {
		opacity: 0;
		margin: 0;
		position: absolute;
		left: -5px;
		top: -2px;
		width: 20px;
		height: 20px;
}
.agree_check, .agree_check label, .agree_check span, .agree_check input {
		cursor: pointer !important;
}
.agree_check span.mwform-checkbox-field {
		display: inline-block;
		position: relative;
		cursor: pointer;
		margin: 0;
		padding: 0px;
		text-align: center;
		line-height: 1;
}
.agree_check label::before {
		position: absolute;
		content: "";
		top: calc(50% - 9px);
		left: 0;
		width: 20px;
		height: 20px;
		background: #fff;
		border: 1px solid #000;
		box-sizing: border-box;
}
.agree_check input[type="checkbox"]:checked + span.mwform-checkbox-field-text::after {
		position: absolute;
		content: '';
		top: 4px;
		left: 3px;
		width: 16px;
		height: 6px;
		border-left: 3px solid #14b46e;
		border-bottom: 3px solid #14b46e;
		transform: rotate(-45deg);
}
/* ===== POLICY =============== */
.contact_sb {
		text-align: center;
		font-size: 24px;
		font-weight: 520;
		margin: 75px 0 35px
}
.contact_policy {
		background: #f3f4f8;
		border-radius: 10px;
		padding: 30px;
}
.contact_policy_inner {
		height: 180px;
		overflow: auto;
		padding-right: 40px;
}
.contact_policy_inner .policy_lead {
		margin: 0 0 30px;
}
.contact_policy_inner p, .contact_policy_inner li {
		font-size: 14px;
		line-height: 1.8;
}
.contact_policy_inner .privacy_body dl.policy_col {
		margin: 0 0 30px;
}
.contact_policy_inner .privacy_body h4 {
		font-size: 18px;
		margin: 0 0 15px;
}
.agree_lead {
		text-align: center;
		margin: 40px 0 35px;
}
@media(max-width: 767px) {
		.contact_sb {
				font-size: 18px;
				margin: 40px 0 20px;
		}
		.contact_policy {
				border-radius: 8px;
				padding: 15px;
		}
		.contact_policy_inner {
				height: 150px;
				padding-right: 15px;
		}
		.contact_policy_inner .policy_lead {
				margin: 0 0 20px;
		}
		.contact_policy_inner p, .contact_policy_inner li {
				font-size: 14px;
				line-height: 1.8;
		}
		.contact_policy_inner .privacy_body dl.policy_col {
				margin: 0 0 20px;
		}
		.contact_policy_inner .privacy_body h4 {
				font-size: 16px;
				margin: 0 0 10px;
		}
		.agree_lead {
				margin: 35px 0 20px;
		}
}
/* ===== COMPLETE ============== */
.complete_hd {
		text-align: center;
		font-family: "Manrope", sans-serif;
		font-size: 100px;
		font-weight: 500;
		letter-spacing: -1.5px;
		line-height: 1;
		margin: 0 0 25px;
}
.complete_hd span {
		position: relative;
		display: inline-block;
}
.complete_hd span::before, .complete_hd span::after {
		content: '';
		display: block;
		position: absolute;
		width: 11px;
		height: 11px;
}
.complete_hd span::before {
		top: 10px;
		left: -46px;
		background: #14b46e;
}
.complete_hd span::after {
		top: 21px;
		left: -35px;
		background: #ffdc00;
}
.complete_lead {
		text-align: center;
		font-size: 24px;
		font-weight: 600;
		line-height: 1;
		margin: 0 0 35px;
}
.complete_caption {
		text-align: center;
		line-height: 2.0;
		margin: 0 0 75px;
}
@media(max-width: 840px) {
		.complete_hd {
				font-size: 80px;
		}
}
@media(max-width: 767px) {
		.complete_hd {
				font-size: 48px;
				margin: 0 0 25px;
		}
		.complete_lead {
				font-size: 20px;
				margin: 0 0 30px;
		}
		.complete_caption {
				text-align: left;
				line-height: 1.8;
				margin: 0 0 60px;
		}
}