@charset UTF-8;
main div.wpcf7 {
	background-color: white;
	padding: 40px;
	border-radius: 20px;
}
html.background_black main div.wpcf7,
html.background_black main div.wpcf7 div {
	background-color:black;
}

main div.wpcf7 hr {
	margin: 40px 20px;
}
main div.wpcf7 p {
	display: table;
	border-collapse:separate;
	border-spacing: 15px;
	margin: 0 auto;
	text-align: center;
}
main div.wpcf7 label,
main div.wpcf7 span {
	display: table-cell;
	vertical-align: top;
}
main div.wpcf7 label {
	/* width: 13rem; */
	/* max-width:40%; */
	text-align: right;
	font-weight: bold;
}
main div.wpcf7 label b {
	font-size: 0.9rem;
	color: var(--red-col);
	margin-left: 5px;
}
main div.wpcf7 span input,
main div.wpcf7 span select,
main div.wpcf7 span textarea {
	width: 18rem;
	font-size: 1rem;
	border: 1px solid var(--gray-col);
	background-color: white;
}
main div.wpcf7 span.short_txt {
	width: 18rem;
	display: flex;
	margin-left: 0;
}
main div.wpcf7 .short_txt span input,
main div.wpcf7 .short_txt span select,
main div.wpcf7 .short_txt span textarea {
	max-width: 10rem;
}
main div.wpcf7 span select,
main div.wpcf7 span input {
	height: 1.8rem;
}
main div.wpcf7 div {
	text-align: center;
}
main div.wpcf7 span.wpcf7-not-valid-tip {
	border: 3px solid red;
	border-radius: 1em;
	padding: 5px 10px;
	margin: 0;
	display: block;
	color: red;
	text-align: left;
}
main div.wpcf7 p input[type="submit"] {
	display: inline-block;
	padding: 0.4rem 6rem;
	box-shadow: 0 2px 0 var(--silver-col);
	border-radius: 60px;
	cursor: pointer;
	background-color: white;
	background-image: url(../img/wpcf7_submit_icon.png);
	background-repeat: no-repeat;
	background-position-x: calc(100% - 16px);
	background-position-y: center;
	background-size: 9px;
	font-size: 1rem;
	font-weight: bold;
	position:relative;
}
html.background_black main div.wpcf7 p input[type="submit"]{
	background-image: url(../img/wpcf7_submit_icon_w.png);
}
main#main_parent div.wpcf7 p input[type="submit"] {
	border: 2px solid var(--parent-col);
}
main#main_tv div.wpcf7 p input[type="submit"] {
	border: 2px solid var(--tv-col);
}
main#main_net div.wpcf7 p input[type="submit"] {
	border: 2px solid var(--net-col);
}
main#main_mvno div.wpcf7 p input[type="submit"] {
	border: 2px solid var(--mvno-col);
}
html.background_black main div.wpcf7 p input[type="submit"] {
	color:white;
	background-color:black;
	box-shadow:2px solid var(--dgray-col);
}
html main div.wpcf7 p input[type="submit"] {
	color: black;
}


main div.wpcf7 .wpcf7-spinner {
	display: block;
	margin: 0 auto;
}
main img.cf7_mail {
	width:11em;
}
html.background_black main img.cf7_mail {
	filter:invert(1);
}
main div.wpcf7 div.contact_summary {
	/* max-width:33em;
	margin:0 auto; */
}

@media screen and (min-width: 961px){
	main div.wpcf7 label nobr {
		display:block;
		width:12em;
	}	
	main div.wpcf7 div.contact_summary {
		word-break:keep-all;
	}
	
}

@media screen and (max-width: 960px){
	main div.wpcf7 {
		background-color: unset;
		padding: 0;
	}
	main div.wpcf7 div {
		background-color: white;
		border-radius: 20px;
		padding: 20px 20px 0;
		margin-bottom: 20px;
	}
	main div.wpcf7 div,
	main div.wpcf7 div p {
		text-align: left;
		display: block;
		border-spacing: 0;
		padding-bottom: 1rem;
	}
	main div.wpcf7 p {
		display: block;
	}
	main div.wpcf7 label,
	main div.wpcf7 span {
		text-align: left;
		display: block;
		margin-left: 20px;
	}
	main div.wpcf7 span.wpcf7-not-valid-tip {
		margin: -10px 30px 10px 0;
		max-width: 77vw;
	}
	main div.wpcf7 span input,
	main div.wpcf7 span select,
	main div.wpcf7 span textarea {
		width: 80vw;
		margin-bottom: 10px;
	}
	main div.wpcf7 hr {
		display: none;
	}
	main div.wpcf7 p input[type="submit"] {
		max-width:15em;
		padding: 0.6rem 15%;
	}
	main div.wpcf7 span.short_txt {
		width: 85vw;
	}
}
