@charset "UTF-8";

#contact
{
	position: relative;
	box-sizing: border-box;
	width: 100%;
	font-size: 1rem;
	padding: 5rem 2rem;
	
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;

	flex-wrap: wrap;
	
	-webkit-justify-content: center;
	justify-content: center;
}

#contact .contents
{
	width: 100%;
	max-width: 900px;
}

/************************************************/
/*****************フォーム内容*******************/
/***********************************************/

.formWrapper
{
	margin-top: 3rem;
	
}

.formItem span.wpcf7-list-item
{
	display: block;
	margin-left: 0;
}

.form_contents
{
	padding-bottom: 1em;
	box-sizing:border-box;
	
	max-width: 700px;
	width: 100%;
}
.form_contents._2
{
	padding-top: 0em;
	padding-bottom: 0em;
}

#contact
{
	box-sizing: border-box;
}

#contactFormWrapper, .sentMessage
{
	margin: 0 auto;
	padding: 3em;
	margin-bottom: 5em;
	max-width: 900px;
}

#formContainer{margin-top: 5em;}

.formItem
{
/*	color: rgb(34, 172, 56);*/
	display:-webkit-box;
	display:-moz-box;
	display:-ms-box;
	display:-webkit-flexbox;
	display:-moz-flexbox;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:-ms-flex;
	display:flex;
	
	-webkit-align-items: flex-start;
	align-items: flex-start;
	
	-webkit-justify-content: flex-start;
	justify-content: flex-start;
}

input, textarea, option, select
{
	box-sizing:border-box;
	padding: .5em;
	font-size: 1em;
	border:1px solid rgb(230,230,230);
}
input[type="text"]:focus{outline: 0; background-color: rgb(250, 250, 250)}
textarea:focus{outline: 0; background-color: rgb(250, 250, 250)}
textarea{width: 100%;}

#formContainer .form_contents
{
	box-sizing:border-box;
	padding: 0 2em;
	border-left: 0px solid rgb(200, 200, 200);
	margin-left: -1px;
}

.q-title
{
	font-family: GG-B, sans-serif;
	font-weight: 700;
	font-size: .9em;
	box-sizing:border-box;
	display:block;
	width: 11em;
	padding-right: 1em;
}
label.q-title
{
/*	color: rgb(34, 172, 56);*/
	border-right: 0px solid rgb(200, 200, 200);
}

#formContainer .form_contents .q-title._s
{
	padding: 0;
	border-right-width: 0px;
}
#formContainer .form_contents._d div{margin-top: 1em;}

.q-large{width: 100%;}
.q-textArea{height:10em;}
.form{display:block;}
span.req{margin-left: .5em; color: rgb(34, 172, 56);}
.noReq{display: none;}
.q-title .smallerText{letter-spacing:0;}
.q-smaller{font-size:.9em; margin-left:15px;}
.q-caution
{
	font-size:.8em;
}

.q-radio{display:inline; margin-right:5px;}

#contact .statement
{
	position: relative;
	box-sizing:border-box;
	margin-bottom:1em;
	border:1px solid rgba(34, 172, 56, 1);
	height:8rem;
	overflow: auto;
	width: 100%;
}
#contact .statement div
{
	padding: 1em;
	font-size: .9rem;
	font-family: roboto-M, GG-M, sans-serif;
	font-weight: 500;
}
#contact .statement div .strongText
{
	margin-top: 1em;
}

.privacyWrapper{margin-top: 1em;}
.privacyWrapper .q-title{margin-bottom: 1em;}
#privacyArea{margin-right: 1em;}
#privacyArea + span
{
	display: inline-block;
	color: rgb(255, 255, 255);
}

#sendDate
{
	font-weight: bold; margin-top: 2em; text-align: center; border: 1px solid; padding: .5em;
	color: black;
	-moz-border-radius: .5em;
	-webkit-border-radius: .5em;
	border-radius: .5em;
}

.submitBtWrapper{margin-top: 3em;}

#sendFormBt
{
	cursor: pointer;
	box-sizing:border-box;
	color: white;
	display:inline-block;
	margin-top: 2em;
	padding: .5em 4em;
	font-family: GG-B, sans-serif;
	font-weight: 700;
	background-color: rgb(34, 172, 56);
	border: 1px solid rgb(34, 172, 56);
	color: rgb(255, 255, 255);
	
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-ms-transition: all .3s ease;
	-o-transition: all .3s ease;
	transition: all .3s ease;
}
#sendFormBt:hover
{
	color: rgb(34, 172, 56);
	background-color: rgb(255, 255, 255);
}

#numberArea{width: 7rem;}
#messageReq{display: none;}

div.wpcf7-validation-errors, div.wpcf7-acceptance-missing
{
	margin-top: 4rem;
	border: 2px solid rgb(34, 172, 56);
	color: rgb(34, 172, 56);
	text-align: center;
	font-family: GG-B, sans-serif;
	font-weight: 700;
}

.q-short{width:50%; min-width: 25em;}

span.wpcf7-not-valid-tip
{
	margin-left: 0em;
	color: rgb(34, 172, 56);
}

.screen-reader-response
{
	font-family: GG-B, sans-serif;
	font-weight: 700;
	color: rgb(34, 172, 56);
	margin-bottom: 2rem;
}

.screen-reader-response a, .screen-reader-response a:hover
{
	color: rgb(34, 172, 56);
}


div.wpcf7-mail-sent-ok
{
	margin-top: 4rem;
	border: 2px solid rgb(34, 172, 56);
	color: rgb(34, 172, 56);
	text-align: center;
	font-family: GG-B, sans-serif;
	font-weight: 700;
}

.wpcf7-list-item-label
{
	margin-left: 0em;
}

#typeArea > span
{
	display: block;
}

/*//////////////////////////////////////////////////////////////////////////////////
///////////////////////////////// MEDIA SCREEN /////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////*/

@media screen and (min-width: 651px)
{
	#formContainer .form_contents{flex: 1;}
	.formItem
	{
		transform:translateY(.75em);
		margin-bottom: 3em;
	}
}

@media screen and (max-width: 650px)
{
	.subTitle{padding-left: 3em;}

	#contactFormWrapper{padding-left: 5em;}
	
	.formItem
	{
		width: 100%;
		-moz-flex-direction: column;
		-webkit-flex-direction: column;
		flex-direction: column;
		-webkit-align-items: flex-start;
		align-items: flex-start;
		margin-bottom: 2em;
	}
	
	.postList
	{
		border-top-width: 0px;
	}
	
	.q-short{width:100%; min-width: 100%;}
	
	.q-title
	{
		width: 100%;
		padding: 1em 0em;
		padding-right: 0em;
	}
	label.q-title
	{
		border-right-width: 0;
	}
	#formContainer .form_contents
	{
		padding: 0em;
		padding-bottom: 2em;
		width: 100%;
		border-left-width: 0;
		border-bottom: 1px solid rgb(200, 200, 200);
	}
	.statement{width: 100%;}
}