@charset "UTF-8";

/*//////////////////////////////////////////////////////////////////////////////////
///////////////////////////////////// Parts ///////////////////////////////////////
//////////////////////////////////////////////////////////////////////////////////*/

#contact h1
{
	color:rgb(168, 27, 75);
	display: flex;
	align-items: center;
}

#contact h1:before
{
	font-family: f-icons;
	font-weight: 400;
	font-size: 1.5em;
	margin-right: .25em;
	content:"\f16d";
}

#contact,
#contact_check
{
	width: 100%;
	min-height:calc(100vh - 20rem);
	padding: max(2rem,4vw) 0 max(5rem, 10vw);
	background-color:rgb(230, 230, 230);
}

#steps
{
	display:flex;
	border-style: solid;
	border-color: rgb(168, 27, 75);
	border-width: 0 0px 1px;
	justify-content:center;
	margin-bottom: 3rem;
	margin-top: 3rem;
}

.foreword + #steps
{
	margin-top: 0rem;
}

#steps > p
{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	align-items:center;
	width:calc(100% / 3);
	padding: .5em 1em;
	text-align:center;
	font-family: 'R-R', 'GG-R', "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-weight: 400;
	font-size: .8em;
	color: rgba(168, 27, 75, 1);
}
#steps > p._n
{
	color: rgb(255, 255, 255);
	background-color: rgb(168, 27, 75);
}

.foreword
{
	margin: 3rem 0 4rem;
	font-family: 'R-R', 'GG-R', "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-weight: 400;
}

.require
{
	color: rgb(168, 27, 75);
	font-family: 'R-R', 'GG-R', "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-weight: 400;
	margin-top:.5em;
}

/**********************************************************************/
/******************************** Form *******************************/
/**********************************************************************/

.mw_wp_form ,
.wpcf7-form
{
	width: 100%;
}

.wpcf7-form .contents,
.wpcf7-form .contents.radio .flex,
.mw_wp_form .contents,
.mw_wp_form .contents.radio .flex,
{
	flex-wrap: wrap;
}

.wpcf7-form .contents.radio > label,
.wpcf7-form .contents.radio > .flex > label,
.mw_wp_form .contents.radio > label,
.mw_wp_form .contents.radio > .flex > label
{
	margin: 0 .5rem;
	cursor: pointer;
}

.wpcf7-form .contents.radio > label.nw,
.wpcf7-form .contents.radio > .flex > label.nw,
.mw_wp_form .contents.radio > label.nw,
.mw_wp_form .contents.radio > .flex > label.nw
{
	white-space: nowrap;
}

.telfaxmail > div
{
	-webkit-align-items: center;
	align-items: center;
	
	-webkit-justify-content: center;
	justify-content: center;
}
.telfaxmail > div + div
{
	padding-top: 0;
}

.telfaxmail > div > p
{
	padding: 0 .5em;
}

.telfaxmail a
{
	text-decoration: none;
}

div.statement
{
	padding: 2rem;
	
	-webkit-align-items: center;
	align-items: center;
	
	-webkit-justify-content: center;
	justify-content: center;

	-moz-flex-direction: column;
	-webkit-flex-direction: column;
	flex-direction: column;
}

div.statement .caution,  .q-title .caution
{
	font-size: .9em;
	display: block;
	text-align: center;
	margin-top: 1rem;
}

.submitBtWrapper .caution
{
	font-size: .7em;
	margin-top: 5rem;
}

.contents .caution
{
	font-size: .9em;
	margin-bottom: 1em;
}

.contents ul.caution
{
	list-style:none;
	display:flex;
	flex-direction:column;
	align-items:center;
	margin-bottom: 0em;
	margin-top: 1em;
	list-style: none;
	line-height: 1.7;
}

.mw_wp_form_input .contents ul.caution
{
	align-items:flex-start;
}
.mw_wp_form_confirm .contents ul.caution
{
	display:none;
}

.grecaptcha-badge { visibility: hidden; }

.formWrapper
{
	margin-top: 5rem;
}

.text.formWrapper h3
{
	margin-bottom: 3rem;
}

.formItem
{
	padding: 0em 0;
}
.formItem + .formItem
{
	border-top: 1px solid rgb(255, 255, 255);
}
form.wpcf7-form > div:nth-of-type(2)
{
	border-top: 0px solid rgb(255, 255, 255);
}

input:not([type=checkbox]):not([type=submit]):not([type=button]),
textarea, 
option
{
	box-sizing:border-box;
	padding: .5em;
	font-size: 1em;
	border:1px solid rgb(230,230,230);
	background-color: rgb(240, 240, 240);
	-moz-border-radius: 0em;
	-webkit-border-radius: 0em;
	border-radius: 0em;
	-webkit-appearance: none;
}
input:not([type=submit]), 
{

}
input[type=checkbox]{margin-top:.1em;}
input[type="text"]:focus,
input[type="email"]:focus
{outline: 0; background-color: rgb(250, 250, 250)}

input:not([type=checkbox]):not([type=submit]):not([type=button]):focus,
textarea:focus
{
	outline: 0; background-color: rgb(250, 250, 250)
}
textarea{width: 100%;}

.flex .selectorWrapper
{
	margin: .5em .5em .5em 0em;
}

.selectorWrapper label
{
	position: relative;		/* 選択ボックスの位置指定 */ 
	display: inline-block;			/* ブロックレベル要素化にする */ 
	box-sizing:border-box;
	width: auto;
	padding: .5em;
	padding-right: 2em;
	border: 1px solid rgb(230,230,230);/* ボックスの境界線を実線で指定する */
	background-color: rgb(255,255,255);
}

.mw_wp_form_confirm .selectorWrapper label
{
	background-color: rgba(255,255,255, 0);
}

.selectorWrapper label:before
{
	content: "";
	position: absolute;
	width: .4em;
	height: .4em;
	
	top: 50%;
	right: 1em;
	display: block;
	margin-top: -.3em;
	
	border-color: rgb(0, 0, 0);
	border-style: solid;
	border-width: 0 1px 1px 0;
	
	transform: rotate( 45deg );
	-ms-transform: rotate( 45deg );
}

.mw_wp_form_confirm  .selectorWrapper label
{
	border-width: 0px;
	padding: 0em;
	padding-right: 0em;
}
.mw_wp_form_confirm  .selectorWrapper label:before
{
	display:none;
}

.selectorWrapper select
{
/*	font-family: NotoSerif-M, serif;
	font-weight: 500;*/
	cursor: pointer;
	font-size: 1rem;
	padding: .2em .5em;
	box-sizing:border-box;
	-webkit-appearance: none;/* ベンダープレフィックス(Google Chrome、Safari用) */
	-moz-appearance: none;	/* ベンダープレフィックス(Firefox用) */
	appearance: none;		/* 標準のスタイルを無効にする */ 
	display: block;			/* ブロックレベル要素化する */ 
	border: none;			/* 境界線をなしに指定する */
	background: transparent;/* 背景を透過指定する */
}
.selectorWrapper select:focus
{
	outline: none;
}

::-ms-expand
{		/* select要素のデザインを無効にする（IE用） */
	display: none;
}
.wpcf7-form .contents,
.mw_wp_form .contents
{
	padding: 2rem;
	border-left: 1px solid rgb(255, 255, 255);
	margin-left: -1px;
	line-height: 1.5;
	width: 100%;
	
	-webkit-align-items: center;
	align-items: center;
}

.wpcf7-form .contents._b,
.mw_wp_form .contents._b
{
	border-left: 1px solid rgba(255, 255, 255, 0);
}

.q-title
{
	display:block;
	text-align: center;
}

#contact_check .q-title
{
	font-family: 'R-R', 'GG-R', "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-weight: 400;
}

.qName .linkBt
{
	display: block;
	margin: .5rem .5rem 0;
	color: rgb(255, 255, 255);
	background-color: rgb(120, 120, 120);
}
body:not(.touch) .qName .linkBt:hover
{
	background-color: rgb(50, 50, 50);
}

.qName
{
	padding: 2rem  1rem;
	min-width: 15rem;
	
	border-right: 1px solid rgb(255, 255, 255);

	-moz-flex-direction: column;
	-webkit-flex-direction: column;
	flex-direction: column;

	-webkit-align-items: center;
	align-items: center;
	
	-webkit-justify-content: center;
	justify-content: center;
}

.wpcf7-form .contents .q-title._s,
.mw_wp_form .contents .q-title._s
{
	padding: 0;
	border-right-width: 0px;
}
.wpcf7-form .contents._d div,
.mw_wp_form .contents._d div
{
	margin-top: 1em;
}

.q-short{width:50%; min-width: 15em;}
.q-large{width: 100%; min-width: 15em;}
.q-textArea{height:10em; width: 100%; padding: .5rem;}
.form{display:block;}
span.req{color: rgb(168, 27, 75);}
.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;}

#langArea + span{margin-left: 1em;}

.wpcf7-form .formItem .statement,
.mw_wp_form .formItem .statement
{
	position: relative;
	box-sizing:border-box;
	border:1px solid rgb(230,230,230);
	height: 7.2rem;
	overflow: auto;
	width: 100%;
}
.wpcf7-form .formItem .statement div,
.mw_wp_form .formItem .statement div
{
	padding: 1em; font-size: 1em;
}
.wpcf7-form .formItem .statement div .strongText,
.mw_wp_form .formItem .statement div .strongText
{
	margin-top: 1em;
}

.sentMessage
{
	margin-top: 2rem;

	-webkit-align-items: center;
	align-items: center;
	
	-webkit-justify-content: center;
	justify-content: center;

	-moz-flex-direction: column;
	-webkit-flex-direction: column;
	flex-direction: column;
}

/* Checkbox */

.wpcf7-list-item input[type=checkbox],
.mw_wp_form input[type=checkbox]
{
	-webkit-appearance: none;
	-moz-appearance: none;
	-ms-appearance: none;
	-o-appearance: none;
	appearance: none;
	position: relative;
	right: 0;
	bottom: 0;
	left: 0;
	height: 1rem;
	width: 1rem;
	vertical-align: -0.8em;
	transition:all 0s ease-out 0s;
	cursor: pointer;
	display: inline-block;
	margin: .4rem .2rem .4rem 0;
	outline: none;
	border-radius: 10%;
	
	transform: scale(1);
}

.wpcf7-list-item input[type=checkbox]:before, 
wpcf7-list-item input[type=checkbox]:after,
.mw_wp_form input[type=checkbox]:before, 
.mw_wp_form input[type=checkbox]:after
{
	position: absolute;
	content: "";
	background-color: rgb(0, 62, 52);;
	transition: all 0s ease-in-out;
}
.wpcf7-list-item input[type=checkbox]:before,
.mw_wp_form input[type=checkbox]:before
{
	left: 2px;
	top: 6px;
	width: 0;
	height: 2px;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
}
.wpcf7-list-item input[type=checkbox]:after ,
.mw_wp_form input[type=checkbox]:after
{
	right: 9px;
	bottom: 3px;
	width: 2px;
	height: 0;
	transform: rotate(40deg);
	-webkit-transform: rotate(40deg);
	-moz-transform: rotate(40deg);
	-ms-transform: rotate(40deg);
	-o-transform: rotate(40deg);
	transition-delay: 0s;
}
.wpcf7-list-item input[type=checkbox]:checked:before,
.mw_wp_form input[type=checkbox]:checked:before
{
	left: 1px;
	top: .5rem;
	width: 6px;
	height: 2px;
}
.wpcf7-list-item input[type=checkbox]:checked:after,
.mw_wp_form input[type=checkbox]:checked:after
{
	right: .2rem;
	bottom: .1rem;
	width: 2px;
	height: 14px;
}
.wpcf7-list-item input[type=checkbox]:indeterminate:before,
.wpcf7-list-item input[type=checkbox]:indeterminate:after,
.mw_wp_form input[type=checkbox]:indeterminate:before,
.mw_wp_form input[type=checkbox]:indeterminate:after
{
	width: 7px;
	height: 2px;
	transform: rotate(0);
	-webkit-transform: rotate(0);
	-moz-transform: rotate(0);
	-ms-transform: rotate(0);
	-o-transform: rotate(0);
}
.wpcf7-list-item input[type=checkbox]:indeterminate:before,
.mw_wp_form input[type=checkbox]:indeterminate:before
{
	left: 1px;
	top: 7px;
}
.wpcf7-list-item input[type=checkbox]:indeterminate:after,
.mw_wp_form input[type=checkbox]:indeterminate:after
{
	right: 1px;
	bottom: 7px;
}

/* 青 */
.wpcf7-list-item input[type=checkbox],
.mw_wp_form input[type=checkbox],
input[type=radio]
{
	border: 1px solid rgb(0, 62, 52);
	background-color: rgb(255, 255, 255);
}
.wpcf7-list-item input[type=checkbox]:checked, .wpcf7-list-item input[type=checkbox]:indeterminate
{
	background: rgb(250, 250, 245);
}

span.wpcf7-not-valid-tip,
span.mw_wp_form-not-valid-tip
{
	color: rgb(168, 27, 75);
}

.wpcf7-list-item,
.mw_wp_form-list-item
{
	margin: 0 0 0 0em;
}

div.wpcf7-mail-sent-ok,
.wpcf7 form.sent .wpcf7-response-output,
div.mw_wp_form-mail-sent-ok,
.mw_wp_form form.sent .mw_wp_form-response-output
{
	border-color: rgb(50, 50, 50);
	border-width: 1px;
	border-style: dotted;
}

.wpcf7 form.invalid .wpcf7-response-output,
 .wpcf7 form.unaccepted .wpcf7-response-output,
 .mw_wp_form form.invalid .mw_wp_form-response-output,
 .mw_wp_form form.unaccepted .mw_wp_form-response-output
{
	color: rgb(168, 27, 75);
	border-width: 1px;
	border-style: dotted;
}

.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output,
.mw_wp_form form.invalid .mw_wp_form-response-output, .mw_wp_form form.unaccepted .mw_wp_form-response-output, .mw_wp_form form.payment-required .mw_wp_form-response-output
{
	border-color: rgb(168, 27, 75);
}

.wpcf7 form .wpcf7-response-output,
.mw_wp_form form .mw_wp_form-response-output
{
	text-align:center;
	margin: 0em 0em 5rem;
	padding: 1em 1em;
	border: 2px solid rgb(168, 27, 75);
}

/* SUBMIT */

.submitWrapper
{
	margin: 5rem 0;
}

.submitWrapper > p
{
	width: 100%;
}

.submitBt
{
	cursor:pointer;
	font-family: 'R-M', 'GG-M', "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-weight: 500;
	border-width: 1px;
	border-style:solid;
	text-align:center;
	padding: 1em 2em;
	border-color: rgb(168, 27, 75);
	background-color: rgb(168, 27, 75);
	width: 100%;
	font-size: clamp(1rem, 1.2vw, 1.25rem);
	color: rgb(255, 255, 255);
	
	transition: all .3s ease;
}

.prevBt
{
	cursor: pointer;
	font-size: 1.1rem;
	font-family: 'R-R', 'GG-R', "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
	font-weight: 400;
	text-align: center;
	border-width: 0;
	background-color: rgba(255,255,255,0);
	color: rgb(0, 62, 52);
	display: block;
	padding: 0em 0em 0em 1.75em;
	line-height: 1;
}

a.prev
{
	display:inline-block;
	color: rgb(0, 62, 52);
}

.mw_wp_form_input  .submitWrapper.prev
{
	display:none;
}

.mw_wp_form_confirm .submitWrapper.prev > p:after,
.wpcf7-form.init .submitWrapper.prev > p:after,
a.prev > p:after
{
	font-family: f-icons;
	font-weight: 400;
	content: "\f10a";
	display: inline-block;
	font-size: 2em;
	position: absolute;
	line-height: 1;
	left: 0;
	top: -.25em;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-ms-transition: all .3s ease;
	-o-transition: all .3s ease;
	transition: all .3s ease;
}

body:not(.touch) .submitBt:hover
{
	color: rgb(168, 27, 75);
	background-color: rgb(255,255,255);
}

.wpcf7-spinner,
.mw_wp_form-spinner
{
	position: absolute;
	top: 1rem;
	left: 0;
	background-color:#fff;
}

.caution
{
	font-size: .7rem;
	color: rgb(168, 27, 75);
}

.privacyStatement
{
	position: relative;
	box-sizing:border-box;
	border:1px solid rgb(255,255,255);
	height: calc(3rem * 1.75 + .75em);
	overflow: auto;
	width: 100%;
	
	margin-bottom: 1rem;
}
.privacyStatement div{padding: 1em; font-size: 1em;}
.privacyStatement div .strongText{margin-top: 1em;}

.mw_wp_form_confirm .privacyStatement
{
	display: none;
}

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

@media screen and (max-width: 700px)
{
	#title:not(._b) .sectionTitle
	{
		flex-direction: column;
		align-items: center;
	}
	#title:not(._b) .sectionTitle h1
	{
		align-items: center;
		margin-bottom:3rem;
	}
	
	#title .sectionTitle ._d > p
	{
		text-align:center;
	}
}

@media screen and (min-width: 500px)
{
	.secTitle br
	{
		display:none;
	}
}

@media screen and (max-width: 600px)
{
	#mainWrapper
	{
		padding: 7rem 0rem 3rem;
	}

	#mainWrapper .secTitleWrapper .description span
	{
		display: inline;
	}

	#mainWrapper .contentsTitleWrapper
	{
		margin: 2rem auto;
	}
	
	.contentsWrapper h4
	{
		margin: 0rem 0rem;
	}
	
	.contentsWrapper .description
	{
/*		padding: 0;*/
		margin: 0rem auto 2rem;
	}
	
	.contentsWrapper h2 + .description
	{
		margin-top: 3rem;
	}
	
	.wpcf7-form
	{
	}
	
	.formItem
	{
		width: 100%;
		border-style: solid;
		border-color: rgb(255, 255, 255);
		border-width: 1px  0;
		-moz-flex-direction: column;
		-webkit-flex-direction: column;
		flex-direction: column;
		-webkit-align-items: flex-start;
		align-items: flex-start;
	}
	
	.formItem + .formItem
	{
		border-top-width: 0;
	}
	
	.qName
	{
		width: 100%;
		border-right: 0px dotted rgb(255, 255, 255);
		border-top: 0px dotted rgb(255, 255, 255);
		padding: 0;
		
		-moz-flex-direction: row;
		-webkit-flex-direction: row;
		flex-direction: row;
		-webkit-justify-content: flex-start;
		justify-content: flex-start;
	}
	
	.wpcf7-form .contents,
	.mw_wp_form .contents
	{
		padding: 0 0rem 1rem;

		border-right: 0px dotted rgb(255, 255, 255);
		border-left: 0px dotted rgb(255, 255, 255);
		
		margin-left: 0;
		-webkit-align-items: center;
		align-items: center;
		
		-webkit-justify-content: center;
		justify-content: center;
	}
	
	.wpcf7-form .contents._b,
	.mw_wp_form .contents._b
	{
		margin-top: 2rem;
	}
	
	.q-short{width:100%}
	
	.q-title
	{
		display: inline-block;
		padding: 1rem 0em .5em;
	}
	label.q-title
	{
		border-right-width: 0;
	}
	
	.q-title .caution
	{
		margin-top: 0;
		display: inline-block;
	}
	
	.wpcf7-form .statement,
	.mw_wp_form .statement
	{
		width: 100%;
	}

	.q-textArea
	{
		min-width:100%;
	}
	
	.submitBtWrapper
	{
		-webkit-align-items: center;
		align-items: center;
		-webkit-justify-content: center;
		justify-content: center;
	}
	
	.telfaxmail > div
	{
		-moz-flex-direction: column;
		-webkit-flex-direction: column;
		flex-direction: column;
	}
}

#mw_tmp
{
	display:none;
}

label.file
{
	display: block;
	line-height: 1.5;
	padding: 1em 1em .5em;
	color: rgb(168, 27, 75);
	background-color: rgb(255, 255, 255);
	border-radius: 10px;
	border:2px solid;
	cursor: pointer;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-ms-transition: all .3s ease;
	-o-transition: all .3s ease;
	transition: all .3s ease;
}
body:not(.touch) label.file:hover
{
	background-color: rgb(240,240,240);
}

label.file > span,
.file span.wpcf7-not-valid-tip,
.file span.mw_wp_form-not-valid-tip
{
	text-align: center;
	display:block;
	color: rgb(168, 27, 75);
}
label.file > span + span
{
	font-size: .9rem;
}
label.file > span + span + span
{
	margin-top:.5em;
}

label.file span.error:after
{
	content:"再度ファイルを選択して下さい。";
	display:block;
	text-align:center;
}

#file_reset
{
	cursor:pointer;
	display:block;
	font-size: .8em;
	padding: .5em 1em;
	margin: .5rem 0 1rem;
	background-color: rgb(168, 27, 75);
	color: rgb(255, 255, 255);
	text-align:center;
	border-radius: 10px;
}

.mw-wp-form_file,
#file_reset,
label.file > span.mwform-file-delete,
.mw_wp_form_input #fname,
.mw_wp_form_confirm label.file
{
	display:none;
}


.mw_wp_form .error
{
/*	color:rgb(168, 27, 75);*/
	margin-top: 1em;
}

@media screen and (max-width: 350px)
{
	#title .sectionTitle ._d > .flex span.smallerText
	{
		display:block;
	}
}