@charset "utf-8";




@media screen and (min-width:768px){
/*pc・タブレットcss*/

#contact-content > .content-area{
	max-width:730px;
}

.flow{
	max-width:370px;
	margin:0 auto 50px;
}

#contact-form{
	width:100%;
	border-collapse:collapse;
	margin:0 auto 30px;
}
#contact-form th,
#contact-form td{
	padding:30px 15px;
	vertical-align:top;
	border-top: solid 1px #707070;
}
#contact-form th{
	width:30%;
	font-size:15px;
}
#contact-form td{
	width:70%;
}
#contact-form th{
	text-align:right;
}
#contact-form td{
}
#contact-form tr:nth-child(even) th,
#contact-form tr:nth-child(even) td{
	background-color:rgba(255,255,255,0.15);
}

#contact-form input[type=text],
#contact-form input[type=email],
#contact-form textarea {
    padding: 5px 10px;
    border: solid 1px #707070;
    box-sizing: border-box;
    width: 100%;
    box-shadow: none;
    border-radius: 0;
    background: #fff;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
	font-size:16px;
}
#contact-form select {
    padding: 5px 10px;
    border: solid 1px #707070;
    box-sizing: border-box;
    width: 100%;
    box-shadow: none;
    border-radius: 0;
    background: #fff;
	font-size:16px;
}
#contact-form input.tel{
    width: 10em;
}
#contact-form input.name{
    width: 10em;
	margin-right:1em;
}

#contact-form .required-icon{
    display: inline-block;
    padding: 3px 5px;
	margin-left:2em;
	background-color:#FF0303;
    color: #fff;
    font-size: 10px;
	line-height:1;
}
#contact-form textarea {
	width:100% !important;
    height: 300px !important;
}
#contact-form input::placeholder,
#contact-form textarea::placeholder {
    color: rgba(0,0,0,.3);
}
.submitbox{
	text-align:center;
	margin-top: 50px;
}
.submitbox button{
	position:relative;
	display:block;
	padding:10px 10px;
	text-align:center;
	color: #fff;
	background: #34B45A;
	text-decoration:none;
	font-size:18px;
	min-width:300px;
	display:inline-block;
	border:0;
	cursor:pointer;
	vertical-align:top;
}

.privacy-btn{
	position:relative;
	display:block;
	padding:5px 10px;
	text-align:center;
	text-decoration:none;
	line-height:1;
	border-radius:5px; 
	display:inline-block;
	border: solid 1px #707070;
	
}

/* +++++++++++++++++++++++++ */

#mfp_overlay_inner{
	padding:50px !important;
}
#mfp_overlay_inner h4{
	position:relative;
	padding-top:100px;
	text-align:center;
	margin-bottom:50px;
}
#mfp_overlay_inner h4:before{
	content:"";
	position:absolute;
	left:50%;
	top:0;
	width:370px;
	margin-left:-185px;
	height:70px;
	background:url(../img/contact/flow_conf.png) no-repeat center center / 100% auto;
}
table#mfp_confirm_table {
}
table#mfp_confirm_table tr.mfp_colored {
    background-color: inherit;
}
table#mfp_confirm_table tr th, table#mfp_confirm_table tr td {
    font-size: 18px;
    border-top: solid 1px #707070;
    padding: 20px 10px;
}
.mfp_buttons{
	-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
	-webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between;
	-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
}
#mfp_button_send{
	position:relative;
	display:block;
	padding:10px 10px;
	text-align:center;
	color: #fff;
	background: #34B45A;
	border: solid 1px #34B45A;
	text-decoration:none;
	font-size:18px;
	min-width:47.5%;
	display:inline-block;
	border:0;
	cursor:pointer;
	vertical-align:top;
}
#mfp_button_cancel{
	position:relative;
	display:block;
	padding:10px 10px;
	text-align:center;
	color: #34B45A;
	border: solid 1px #34B45A;
	background: #fff;
	text-decoration:none;
	font-size:18px;
	min-width:47.5%;
	display:inline-block;
	cursor:pointer;
	vertical-align:top;
}




/* +++++++++++++++++++++++++ */

.thanks-ttl{
	font-size:32px;
	text-align:center;
	font-weight:700;
	margin-bottom:40px;
}




}

@media (max-width: 768px) {
	
	#contact-content > .content-area{
	}
	
	.flow{
		max-width:80%;
		margin:0 auto 5vw;
	}
	
	#contact-form{
		width:100%;
		border-collapse:collapse;
		margin:0 auto 5vw;
	}
	#contact-form th,
	#contact-form td{
		display:block;
		width:100%;
		padding:3vw;
		vertical-align:top;
		border-top: solid 1px #707070;
	}
	#contact-form th{
		font-size:15px;
		font-weight:700;
	}
	#contact-form td{
		padding-top:0;
		border-top:none !important;
	}
	#contact-form tr:nth-child(even) th,
	#contact-form tr:nth-child(even) td{
		background-color:rgba(255,255,255,0.15);
	}
	
	#contact-form input[type=text],
	#contact-form input[type=email],
	#contact-form textarea {
		padding: 2vw;
		border: solid 1px #707070;
		box-sizing: border-box;
		width: 100%;
		box-shadow: none;
		border-radius: 0;
		background: #fff;
		-webkit-appearance: none;
		-moz-appearance: none;
		appearance: none;
		font-size:16px;
	}
	#contact-form select {
		padding: 2vw;
		border: solid 1px #707070;
		box-sizing: border-box;
		width: 100%;
		box-shadow: none;
		border-radius: 0;
		background: #fff;
		font-size:16px;
	}
	#contact-form input.tel{
		width: 60%;
	}
	#contact-form input.name{
		width: 40%;
		margin-right:1em;
	}
	
	#contact-form .required-icon{
		display: inline-block;
		padding: 3px 5px;
		margin-left:2em;
		background-color:#FF0303;
		color: #fff;
		font-size: 10px;
		line-height:1;
	}
	#contact-form textarea {
		width:100% !important;
		height: 300px !important;
	}
	#contact-form input::placeholder,
	#contact-form textarea::placeholder {
		color: rgba(0,0,0,.3);
	}
	.submitbox{
		text-align:center;
		margin-top: 50px;
	}
	.submitbox button{
		position:relative;
		display:block;
		padding:3vw;
		text-align:center;
		color: #fff;
		background: #34B45A;
		text-decoration:none;
		font-size:18px;
		min-width:300px;
		display:inline-block;
		border:0;
		cursor:pointer;
		vertical-align:top;
	}
	
	.privacy-btn{
		position:relative;
		display:block;
		padding:5px 10px;
		text-align:center;
		text-decoration:none;
		line-height:1;
		border-radius:5px; 
		display:inline-block;
		border: solid 1px #707070;
		
	}
	
	
	/* +++++++++++++++++++++++++ */
	
	#mfp_overlay_inner{
		padding:5vw !important;
	}
	#mfp_overlay_inner h4{
		position:relative;
		padding-top:25vw;
		text-align:center;
		margin-bottom:5vw;
	}
	#mfp_overlay_inner h4:before{
		content:"";
		position:absolute;
		left:50%;
		top:0;
		width:90%;
		margin-left:-45%;
		height:15vw;
		background:url(../img/contact/flow_conf.png) no-repeat center center / 100% auto;
	}
	table#mfp_confirm_table {
	}
	table#mfp_confirm_table tr.mfp_colored {
		background-color: inherit;
	}
	table#mfp_confirm_table tr th, table#mfp_confirm_table tr td {
		font-size: 16px;
		border-top: solid 1px #707070;
		padding: 2vw;
	}
	.mfp_buttons{
		-js-display: flex; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flex; display: -o-flex; display: flex;
		-webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; justify-content: space-between;
		-ms-flex-wrap:wrap; -webkit-flex-wrap:wrap; flex-wrap:wrap;
	}
	#mfp_button_send{
		position:relative;
		display:block;
		padding:10px 10px;
		text-align:center;
		color: #fff;
		background: #34B45A;
		border: solid 1px #34B45A;
		text-decoration:none;
		font-size:16px;
		min-width:47.5%;
		display:inline-block;
		border:0;
		cursor:pointer;
		vertical-align:top;
	}
	#mfp_button_cancel{
		position:relative;
		display:block;
		padding:10px 10px;
		text-align:center;
		color: #34B45A;
		border: solid 1px #34B45A;
		background: #fff;
		text-decoration:none;
		font-size:16px;
		min-width:47.5%;
		display:inline-block;
		cursor:pointer;
		vertical-align:top;
	}
	
	
	/* +++++++++++++++++++++++++ */
	
	.thanks-ttl{
		font-size:20px;
		text-align:center;
		font-weight:700;
		margin-bottom:5vw;
	}
		
}




