@charset "UTF-8";

body {
	overflow: visible;
}

.low .h1-ttl {
    margin-bottom: 160px;
}

main .form-area {
	position: relative;
	margin-bottom: 140px;
}
main .form-area:after {
    content: "";
    position: absolute;
    top: 220px;
    left: 0;
    display: inline-block;
    background-color: #dde7f8;
    width: 74vw;
    height: 100%;
}

main .form-area .container {
	position: relative;
	z-index: 2;
}
main .form-area .container p.lead {
	font-size: 1.6rem;
	margin-bottom: 50px;
	font-weight: 500;
}


/* =====================
  form
===================== */
#form .content-box {
	padding: 80px;
	background-color: #fff;
}

form#mailformpro {
    padding: 0px;
}

#form #mailformpro > dl,
#form #mfp_confirm_table tr {
	background-color: #fff;
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 20px 0;
	border-bottom: 1px solid #ccc;
}

#form #mailformpro > dl > dt, 
#form table#mfp_confirm_table tr th {
	width: 25%;
    padding: 0;
    box-sizing: border-box;
    font-weight: 700;
    text-align: left;
    float: none;
    border: none;
    font-size: 1.6rem;
    color: #89aae6;
	position: relative;
}

#form #mailformpro > dl > dt a, 
#form table#mfp_confirm_table tr th a {
	font-size: 1.4rem;
	font-weight: 500;
	color: #333;
	text-decoration: underline;
}

#form #mailformpro > dl > dt a:hover, 
#form table#mfp_confirm_table tr th a:hover {
	text-decoration: none;
}

#form #mailformpro > dl.req > dt:after {
	content: "※";
    color: #89aae6;
    margin-left: 6px;
    position: absolute;
    top: 0;
}

#form #mailformpro > dl > dd,
#form  table#mfp_confirm_table tr td {
	width: 70%;
    border: none;
	padding: 0;
	font-size: 1.6rem;
}

#form #mailformpro > dl > dd input[type="text"] ,
#form #mailformpro > dl > dd input[type="email"] ,
#form #mailformpro > dl > dd select ,
#form #mailformpro > dl > dd textarea {
    width: 100%;
	max-width: 100%;
    padding: 9px 10px;
    background-color: #fff;
	border: 1px solid #ccc!important;
    border-radius: 0;
    box-shadow: none;
}
#form #mailformpro > dl > dd textarea {
    width: 100%!important;
}

#form #mailformpro > dl > dd select {
    width: 50%;
}

#form #mailformpro > dl.address > dd .content #postal {
	width: 238px;
}

#form #mailformpro > dl > dd .content + .content {
	margin-top: 10px;
}

#form #mailformpro > dl > dd ul {
	display: flex;
	flex-wrap: wrap;
}

#form #mailformpro > dl > dd ul li + li {
	margin-left: 25px;
}

#form #mailformpro > dl > dd input[type="radio"] {
	display: none;
}

#form #mailformpro > dl > dd input[type="radio"] ~ label {
    position: relative;
    padding-left: 30px;
}

#form #mailformpro > dl > dd input[type="radio"] ~ label:before {
    content: "";
    display: inline-block;
    position: absolute;
    width: 20px;
    height: 20px;
    border: 1px solid #ccc;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    border-radius: 50%;
}

#form #mailformpro > dl > dd input[type="radio"]:checked ~ label:after {
    content: "";
    width: 10px;
    height: 10px;
    background: #89aae6;
    position: absolute;
    left: 5px;
    top: 0;
    bottom: 0;
    margin: auto;
    border-radius: 50%;
}

#form #mailformpro > dl > dd #timezone {
	margin-top: 10px;
}

#form #mailformpro input[type="checkbox"] {
	display: none;
}

#form #mailformpro input[type="checkbox"] ~ label {
    position: relative;
    padding-left: 30px;
}

#form #mailformpro input[type="checkbox"] ~ label:before {
    content: "";
    display: inline-block;
    position: absolute;
    width: 20px;
    height: 20px;
    border: 1px solid #ccc;
    left: 0;
    top: 0;
    bottom: 0;
	margin: auto;
	border-radius: 3px;
}

#form #mailformpro input[type="checkbox"]:checked ~ label:after {
    display: block;
    content: '';
    position: absolute;
	top: 0;
	bottom: 3px;
    left: 4px;
    width: 12px;
    height: 7px;
    border-left: 2px solid #89aae6;
    border-bottom: 2px solid #89aae6;
    transform: rotate(-45deg);
    margin: auto;
}

#form #mailformpro a {
	text-decoration: underline;
}

#form #mailformpro a:hover {
	opacity: 1;
	text-decoration: none;
}

#form #mailformpro .btn-wrap {
	text-align: center;
	margin-top: 60px;
}

#form div.mfp_buttons {
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	margin: 60px auto 0;
	max-width: 515px;
}

#form #mailformpro .btn-wrap .btn,
#form div.mfp_buttons #mfp_button_send,
#form div.mfp_buttons #mfp_button_cancel {
    text-shadow: none;
    outline: none;
    background: transparent;
	overflow: hidden;
	position: relative;
	display: inline-block;
    max-width: 320px;
	width: 100%;
	padding: 12px 0;
	border: 2px solid #89aae6;
	color: #fff;
	background-color: #89aae6;
	text-align: center;
	text-decoration: none;
	letter-spacing: 0.2em;
	box-sizing: border-box;
	opacity: 1;
	transition: .4s;
	border-radius: 0;
	font-weight: 700;
}

#form div.mfp_buttons #mfp_button_cancel {
	border: 2px solid #ccc;
	color: #ccc;
	max-width: 180px;
}

#form #mailformpro .btn-wrap .btn:hover,
#form div.mfp_buttons #mfp_button_send:hover {
	background-color: #fff;
    color: #89aae6;
	box-shadow: none;
}

#form #mfp_phase_confirm h4 {
	display: none;
}


/* =====================
  thanks
===================== */
#thanks {
	text-align: center;
}
#thanks .btn {
	margin: 40px auto 0 auto;
}



/* ====================================================================================
         SP
  ==================================================================================== */
@media screen and (max-width: 767px) {

	.low .h1-ttl {
		margin-bottom: 60px;
	}

	main .form-area {
		margin-bottom: 60px;
	}
	main .form-area:after {
		top: 140px;
		width: 85vw;
	}

	main .form-area .container p.lead {
		font-size: 1.4rem;
		margin-bottom: 30px;
	}

/* =====================
  form
===================== */
	#form .content-box {
		padding: 20px;
	}

	#form #mailformpro > dl,
	#form #mfp_confirm_table tr {
		display: block;
		padding: 20px 0;
	}

	#form #mailformpro > dl > dt, 
	#form table#mfp_confirm_table tr th {
		width: 100%;
		font-size: 1.4rem;
		margin-bottom: 10px;
	}

	#form #mailformpro > dl > dt a, 
	#form table#mfp_confirm_table tr th a {
		font-size: 1.2rem;
	}

	#form #mailformpro > dl > dd,
	#form  table#mfp_confirm_table tr td {
		width: 100%;
		font-size: 1.4rem;
	}

	#form #mailformpro > dl > dd input[type="text"] ,
	#form #mailformpro > dl > dd input[type="email"] ,
	#form #mailformpro > dl > dd select ,
	#form #mailformpro > dl > dd textarea {
		padding: 6px;
	}

	#form #mailformpro > dl > dd select {
		width: 100%;
	}

	#form #mailformpro > dl > dd ul li + li {
		margin-left: 10px;
	}

	#form #mailformpro .btn-wrap {
		margin-top: 40px;
	}

	#form div.mfp_buttons {
		margin: 40px auto 0;
	}

	#form #mailformpro .btn-wrap .btn,
	#form div.mfp_buttons #mfp_button_send,
	#form div.mfp_buttons #mfp_button_cancel {
		padding: 12px 0;
		font-size: 1.4rem;
	}


}

