@charset "utf-8";
/**/


.agreeIFrame{
	width:100%;
	border:0;
	height:200px;
	margin:20px auto 40px;
}
@media (min-width:768px) {
	.agreeIFrame{
		height:150px;
	}
}
.formKakunin{
	background-color:#f2fbe6;
	max-width:600px;
	margin:30px auto;
	padding:30px;
}
.formKakuninCheck{
	text-align:left;
	margin-bottom:10px;
}
.formKakuninCheck label{
	text-align:left;
	font-size: 1.6rem;
	font-size:max(1.4rem, min(1.6vw, 1.6rem) );
	display:block;
	line-height:1.5;
}
.formKakuninCap{
	text-align:left;
	font-size: 1.4rem;
	font-size:max(1.2rem, min(1.4vw, 1.4rem) );
	line-height:1.5;
	margin-bottom:10px;
}
@media (min-width:768px) {
	.formKakunin{
		margin:50px auto;
	}
	.formKakuninCheck{
		text-align:center;
	}
	.formKakuninCap{
		text-align:center;
	}
}
/**/
.formKakuninSsl{
	margin:0 auto;
	background-image: url(../images/common/ico_ssl.png);
	background-size:60px;
	background-position:left center;
	background-repeat:no-repeat;
	padding-left:75px;
	line-height:1.6;
	text-align:left;
	max-width:380px;
	min-height: 60px
}
.formKakuninSslTtl{
	color:#399f76;
	font-size:14px;
	font-weight:bold;
}
/**/



/* form 
#########################################*/
.cap{
	font-size:85%;
	color:#333;
	}
.w10{width:10%;}
.w30{width:30%;}
.w40{width:40%;}
.w50{width:50%;}
.w70{width:70%;}
.w80{width:80%;}
.w100{width:100%;}

.mfp_loading_screen{
	display:none !important;
}
/*必須*/
.must {
	display: inline-block;
	border: 1px solid #c1272d;
	text-shadow: none;
	padding: 0 4px !important;
	line-height:1.4;
	background-color:#c1272d !important;
	font-size:1.2rem;
	font-weight:bold;
	padding:0;
	color: #fff;
	float: none;
	margin: 0 5px;
	border-radius: 4px;
	box-shadow: none;
	background-image: none;
}
/*入力例*/
.example{
	font-size:1.4rem;
	font-size:max(1.2rem, min(1.4vw, 1.4rem) );
	color:#333;
	display:block;
	margin:5px 0 0 0;
}
@media (min-width:768px) {
	.example{
		display:inline;
		margin:0 0 0 10px ;
	}
}


form#mailformpro {
	padding: 0px;
}

form#mailformpro dl{
	width:100%;
	margin:10px auto 30px;
	overflow:hidden;
	border-bottom:1px solid #ccc;
	}
form#mailformpro dl.agree{
	background:#eee;
	}
form#mailformpro dl dt {
	width:100%;
	font-size:1.6rem;
	font-size:max(1.4rem, min(1.6vw, 1.6rem) );
	padding:10px;
	text-align: left !important;
	line-height:1.8;
	border-top:1px solid #ccc;
	margin: 0px;
	background-color:#fff;/*dtの背景色*/
	color: #534741;
	font-weight: normal;
}
form#mailformpro dl dd {
	width:100%;
	border-top:1px solid #ccc;
	margin: 0px;
	padding:15px 10px;
	font-size:1.6rem;
	font-size:max(1.4rem, min(1.6vw, 1.6rem) );
	line-height:1.8;
	text-align:left;
	background-color:#fff;/*dlの背景色*/
}
@media (min-width:768px) {
	form#mailformpro dl{
		display: flex;
		justify-content: flex-start;
		align-content: stretch;
		flex-wrap: wrap;
	}
	form#mailformpro dl dt {
		width:29%;
		padding:15px 20px;
	}
	form#mailformpro dl dd {
		width:71%;
		padding:15px 20px;
	}
}
form#mailformpro > dl dd ul,
form#mailformpro dl dd ol {
	margin: 0px;
	padding: 0px;
}
form#mailformpro dl dd ul li,
form#mailformpro dl dd ol li {
	margin: 0px;
	padding: 0px;
	list-style: none;
}

form#mailformpro dl dd ul li,
form#mailformpro dl dd ol li {}

form#mailformpro input[type="text"],
form#mailformpro input[type="tel"],
form#mailformpro input[type="email"],
form#mailformpro select{
	border:1px solid #ccc;
	padding:3px;
	font-size:1.6rem;
	font-size:max(1.4rem, min(1.6vw, 1.6rem) );
	border-radius:4px;
	max-width:100%;
}
@media (min-width:768px) {
	form#mailformpro input[type="text"],
	form#mailformpro input[type="tel"],
	form#mailformpro input[type="email"]{
		padding:6px;
	}
}
form#mailformpro input[type="radio"],
form#mailformpro input[type="checkbox"]{
	font-size:1.6rem;
	margin-right:0.5em;
}

form#mailformpro label {
	border-radius: 0;
	margin: 3px;
	display: inline-block;
	white-space:normal;
	}
form#mailformpro label.mfp_checked {
	padding: 5px;
	border: none;
	background: none;
	box-shadow: none;
}
form#mailformpro label.mfp_not_checked {
	padding: 5px;
	border: none;
}

form#mailformpro textarea{
	width:100% !important;
	height:10em !important;
	border:1px solid #ccc;
	padding:5px;
	line-height:1.5;
	font-size:1.6rem;
	font-size:max(1.4rem, min(1.6vw, 1.6rem) );
	border-radius:4px;
	}
table#mfp_confirm_table {
	border-bottom:1px solid #ccc;
	}
table#mfp_confirm_table tr.mfp_colored {
	background:#fff;
	}
table#mfp_confirm_table tr.mfp_achroma {
	background:#fff;
	}
table#mfp_confirm_table tr th,table#mfp_confirm_table tr td {
	font-size:108%;
	}
table#mfp_confirm_table tr th {
	background:#eee;
	font-weight:normal;
	}
div#mfp_phase_confirm h4 {
	font-size: 108%;
	margin:0 0 10px 0;
	}
.mfp_colored {
	background: none;
	}
.mfp_achroma {
	background:none;
	}
.mfp_element_all {
	max-width: 90%;
}
.mfp_element_text,
.mfp_element_number,
.mfp_element_select-one,
.mfp_element_email,
.mfp_element_tel,
.mfp_element_textarea,
.mfp_element_date,
.mfp_element_password {
	border: solid 1px #CCC;
	border-radius: 0;
	box-shadow: none;
	padding: 6px 8px;
	margin: 2px;
	vertical-align: middle;
}
.mfp_element_checkbox,
.mfp_element_radio {
	vertical-align: middle;
	margin: 0px 2px;
}
.mfp_element_file {
	font-size: 12px;
	display: inline-block;
	padding: 10px 10px;
	vertical-align: middle;
	border: solid 1px #CCC;
	border-radius: 3px;
	box-shadow: 0px 0px 5px #CCC inset;
	background: #EEE;
}
.mfp_element_submit,
.mfp_element_reset,
.mfp_element_button,
button.mfp_next,
button.mfp_prev {
	border-radius: 0px;
	padding: 0;
	border: solid 1px #CCC;
	text-shadow:none;
	font-size: 18px;
	cursor: pointer;
	outline: none;
}
.mfp_element_reset {
	color: #333;
}
.mfp_element_submit,
.mfp_element_reset,
.mfp_element_button,
button.mfp_next,
button.mfp_prev {
	-webkit-transition: .3s;
	transition: .3s;
}
.mfp_element_submit:hover,
.mfp_element_reset:hover,
.mfp_element_button:hover,
button.mfp_next:hover,
button.mfp_prev:hover {
	box-shadow:none;
	background:#ef9098;
	opacity: 0.6;
	-khtml-opacity: .60; /* Safari 1.x */
	-moz-opacity: .60; /* FF lt 1.5, Netscape */
}
button.mfp_next,
button.mfp_prev {
	font-size: 14px;
}
div.mfp_ok {
	border-radius: 0;
	background-color: #c00;
	border:solid 1px #ccc;
	display: inline-block;
	line-height: 1.5em;
	display:none;
	}

.mfp_buttons {
	text-align:center;
}
.mfp_buttons button{
	background:#f68022;
	color:#fff;
	line-height:50px;
	font-size:18px;
	border:none;
	cursor: pointer;
	width:100%;
	max-width:300px;
	margin-bottom:10px;
	box-shadow:none;
}
.mfp_buttons button[type="reset"]{
	background:#bbb;
	color:#fff;
	font-weight:normal;
}
@media (min-width:768px) {
	.mfp_buttons button{
		width:200px;
		max-width:none;
		margin-left:10px;
		margin-right:10px;
	}
}

.saichumon{
	margin-top:15px;
	padding-top:15px;
	border-top:1px dotted #999;
}



/*2列リスト*/
@media (min-width:768px) {
	.formList01{
		display: flex;
		justify-content: flex-start;
		align-items: flex-start;
		flex-wrap: wrap;
	}
	.formList01 li{
		width: 50%;
	}
}
.formList01.color input{
	margin-right: 65px !important;
	position: relative;
}
.formList01.color input::before{
	content: "";
	position: absolute;
	display: block;
	width:40px ;
	height: 20px;
	left: 30px;
	top:-5px;
}
.formList01.color input[value="レッド系"]::before{background-color: #ec1c24;}
.formList01.color input[value="オレンジ系"]::before{background-color: #f6921e;}
.formList01.color input[value="イエロー系"]::before{background-color: #ffe121;}
.formList01.color input[value="ライトグリーン系"]::before{background-color: #8bc53f;}
.formList01.color input[value="グリーン系"]::before{background-color: #39b44a;}
.formList01.color input[value="ライトブルー系"]::before{background-color: #29aae1;}
.formList01.color input[value="ブルー系"]::before{background-color: #0071bb;}
.formList01.color input[value="ネイビー系"]::before{background-color: #2e3967;}
.formList01.color input[value="パープル系"]::before{background-color: #92278e;}
.formList01.color input[value="ピンク系"]::before{background-color: #ff5d8f;}
.formList01.color input[value="ベージュ系"]::before{background-color: #c6b198;}
.formList01.color input[value="ブラウン系"]::before{background-color: #754c24;}
.formList01.color input[value="ブラック系"]::before{background-color: #333333;}
.formList01.color input[value="ホワイト系"]::before{background-color: #fff;border: 1px solid #ccc;}


.formOption{
	display: flex !important;
	align-items: center;
	justify-content: flex-start;
}
.formOption .price{
	color: #de433a;
	font-weight: bold;
}
.formOption .price .em01{
	font-size: 150%;
}


/*テンプレート*/
.formTemp{
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.formTemp .unit01{
	width: 50%;
	margin-bottom: 10px;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	border-radius: 5px;
	padding: 10px;
}
.formTemp .unit01 input{
	width:20px;
	margin-top: 5px;
}
.formTemp .unit01 label{
	width: calc(100% - 20px);
	margin:0 !important;
}
.formTemp .unit01 label figure{
	text-align: center;
}
.formTemp .unit01 label figure img{
	display: inline-block;
	margin: 0 auto;
	max-height:180px ;
	background-color: #fff;
}
.formTemp .unit01:has(input:checked) {
	background-color: #eff9e5;
}
@media (min-width: 768px){
	.formTemp .unit01{
		width: 33%;
	}
	.formTemp .unit01 input{
		margin-top: 8px;
	}
}




























