@charset "utf-8";
/*******流れのエリア*******/
#contact-flow .ribon-title{
	width: 340px;
	height: 100px;
	padding: 0 0 24px 0;
	top: -40px;
}
#contact-flow .ribon-title .icon-top{
	top: 4px;
}

#contact-flow .flow-wrap{margin: 15px auto 20px;}
#contact-flow .flow-circle{
	width: 160px;
	height: 140px;
	background: url(../../common/images/flow-circle.png) no-repeat center center;
	background-size: auto 100%;
	text-align: center;
	padding: 21px 0 0 0;
	line-height: 135%;
}
#contact-flow .flow-circle .flower{
	display: block;
	margin: 0 auto 5px;
}
#contact-flow .flow-arrow {
	width: 15px;
	height: 26px;
}

#contact-flow .illust-8{
	bottom: -6px;
	right: 20px;
	opacity: 0.7;
}
#contact-flow-area .leaf-line1{
	top: -100px;
	z-index: 20;
}
#contact-flow-area .circle1{
	top: -85px;
}
/*******フォームのエリア*******/
#contact-area .ribon-title{
	top: -17px;
	height: 100px;
	width: 380px;
	padding: 5px 0 0;
	font-size: 26px;
}
#contact-area .ribon-title span{
	background: url(../../common/images/line-h3-orange.png) no-repeat center bottom;
	background-size: auto 12px;
	padding-bottom: 11px;
}

#contact-area .icon-top{top: -32px;}

#contact-tel-area{
	width: 90%;
	max-width: 700px;
	position: relative;
	z-index: 20;
	margin: 0 auto;
	padding: 6px;
}
#contact-tel-area .back-inner-box{flex-wrap: wrap;}
#contact-tel-area .spacer{
	display: block;
	width: 100%;
}
#contact-tel-area h3{
	margin: 0 50px 0 0;
}
#contact-tel-area .tel-number{line-height: 180%;}
#contact-tel-area:before,
#contact-tel-area:after{
	content: "";
	display: block;
	background-size: 100% auto !important;
	position: absolute;
	z-index: -1;
	bottom: -30px;
	opacity: 0.5;
}
#contact-tel-area:before{
	background: url(../../common/images/line-bouquet1.png) no-repeat center top;
	width:140px;
	height: 154px;
	left: -90px;
}
#contact-tel-area:after{
	background: url(../../common/images/line-bouquet2.png) no-repeat center top;
	width:150px;
	height: 152px;
	right: -90px;
}



#contact-summarize{
	width: 90%;
	max-width: 700px;
	margin: 0 auto 40px;
	padding: 16px 18px 10px;
	position: relative;
	z-index: 20;
	border: 3px solid #f1ece2;
	border-radius: 6px;
	font-size: 14px;
	line-height: 140%;
}
#contact-summarize h3{
	background-repeat: no-repeat;
	background-position: center bottom;
	max-width: 350px;
	margin: 0 auto 15px;
}
#contact-summarize p{
	max-width: 600px;
	margin: 0 auto;
	display: block;
}


#form-area{
	border: 4px solid #f8f6e9;
	border-radius: 6px;
	max-width: 1080px;
	margin: 0 auto;
	width: 96%;
	background: #faf8ef;
}
#mfp_hidden{display: none;}
#form-area table th{
	padding-left:50px;
	background: url(../../common/images/back-th.jpg) repeat center top;
}

#form-area table th label{
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
}
#form-area table th .min{
	width: 100%;
	font-size: 12px;
	display: block;
	line-height: 1em;
	padding-top: 5px;
}
#form-area table th .required,
#confirm-box dt .must {
	position: absolute;
	background: url(../../common/images/required-tag.png) no-repeat center top;
	width: 52px;
	height: 52px;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 13px;
	background-size: 100% 100%;
	text-align: center;
	
}
#form-area table th .required{
	left: -35px;
	top: 2px;
}
#form-area table td{
	background: #faf8ef;
	font-size: 15px;
}
#form-area table td .block{
	display: block;
	padding:10px 0 15px;
}
#form-area table td .coution{
	font-size: 13px;
	line-height: 130%;
	padding-top: 10px;
}
#form-area table .number input{width: 5em;}
#form-area table td .form-half,
#contact-phone-number{width: 34%;}
#form-area table td .form-half1,
#contact-phone-number,
#form-area table td input[type="date"]{margin-right: 20px;}
#contact-message{
	width: 100% !important;
	height: 250px;
	min-height: 250px;
}
#confirm-box{margin: 0 auto 30px;}
#confirm-box dt{
	background: url(../../common/images/line-h3-orange.png) no-repeat center bottom;
	background-size: auto 12px;
	padding-bottom: 22px;
	text-align: center;
	margin: 20px auto 30px;
	position: relative;
}
#confirm-box dt .must{
	margin: auto;
	left: 0;
	right: 0;
	top: -55px;
}

.mfp_err{
	color: #e37e4c;
	font-size: 14px;
	font-weight: bold;
}
#submit-area .button {
	margin: 0 auto 30px;
	border-width: 2px;
	font-size: 22px;
	width: 360px;
	height: 74px;
	border-radius: 40px;
}
#submit-area .reset-button{
	background: #ddd;
	font-size: 14px;
	width: 200px;
	height: 50px;
}
#submit-area .button:after{content: none;}
#contact-attention{
	width: 90%;
	max-width: 900px;
	margin: 0 auto;
}
#go-flow2{
	text-align:right;
	font-size: 14px;
	padding-bottom: 50px;
}
#go-flow2 a{text-decoration: underline;}


#contact-bottom{
	align-items: flex-end;
	border: 4px solid #f7f3e4;
	max-width: 700px;
	width: 90%;
	margin: 0 auto;
	padding: 50px 10px 35px;
	position: relative;
	background: #f5eecf;
	line-height: 150%;
}
#contact-bottom .flowers8{
	top: -30px;
}

#contact-area-wrapper .tiger9{
	top: -48px;
	right: 0;
}
#contact-area-wrapper .illust-9{
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 20;
	opacity: 0.7;
}
#contact-area-wrapper .circle-yellow1{
	bottom: -20px;
	right: 55%;
}
#contact-area-wrapper .leaf-line8{
	top: -250px;
	z-index: -1;
}
#contact-area-wrapper .leaf-line14{
	top: 10%;
	opacity: 0.7;
}
#contact-area-wrapper .leaf-line5{
	bottom: -40px;
	z-index: 20;
}
#contact-area-wrapper .circle1{
	top: -200px;
	z-index: -1;
}
#contact-area-wrapper .circle2{
	top: 15%;
}
#contact-area-wrapper .circle3{
	bottom: -60px;
}
/*******サンクスページ******/
#thanks-area .button{
	position: relative;
	z-index: 200;
}
#thanks-area-wrapper .tiger4{
	bottom: -30px;
	left: 9px;
}
#thanks-area-wrapper .leaf-line5{
	bottom: -40px;
	z-index: 1;
}
#thanks-area-wrapper .circle1{
	bottom: -80px;
	z-index: -1;
}




@media only screen and (min-width:1366px){


	
}
@media only screen and (min-width:1501px){





}
@media only screen and (min-width:1701px){
	#contact-flow-area .leaf-line1 {
		width: 340px;
		top: -80px;
	}
	#contact-area-wrapper .leaf-line14 {
		width: 420px;
		top: 7%;
	}

	

}
@media only screen and (max-width:1140px){
	/*******流れのエリア*******/
	#contact-flow .ribon-title {
		width: 300px;
		height: 95px;
		padding: 0 0 24px 0;
		top: -35px;
	}
	#contact-flow .flow-circle {
		font-size: 14px;
		width: 120px;
		height: 100px;
		padding: 14px 0 0 0;
	}
	#contact-flow .flow-circle .flower {
		width: 30px;
		display: block;
		margin: 0 auto;
	}
	#contact-flow .illust-8 {
		width: 160px;
		height: auto;
	}
	
	#contact-area-wrapper .leaf-line8 {
		top: -180px;
		width: 350px;
	}
	#contact-area-wrapper .circle1 {
		top: -140px;
		right: -100px;
	}
	
	/*******フォームのエリア*******/
	#contact-area .icon-top {
		top: -23px;
		width: 55px;
		height: auto;
	}
	#contact-area-wrapper .leaf-line14 {
		top: 14%;
		opacity: 0.7;
		z-index: -1;
	}

}
@media only screen and (max-width: 989px){
	/*******流れのエリア*******/
	
	
	/*******フォームのエリア*******/

	#contact-area-wrapper .tiger9 {
		width: 74px;
		top: -38px;
		right: 0;
	}

}
@media only screen and (max-width: 789px){
	/*******流れのエリア*******/
	#contact-spacer1{height: 60px !important;}
	#contact-flow .flow-wrap {
		flex-wrap: wrap;
		justify-content: flex-start;
		margin: 0 auto;
		max-width: 525px;
	}
	#contact-flow .flow-circle {
		margin-bottom: 12px;
	}
	#contact-spacer2{height: 30px !important;}
	#contact-flow .illust-8 {width: 130px;}
	#contact-flow-area .leaf-line1 {
		width: 160px;
		top: -81px;
		z-index: 1;
	}
	/*******フォームのエリア*******/
	#contact-area .ribon-title {
		top: -14px;
		height: 90px;
		width: 315px;
		font-size: 22px;
	}
	#contact-spacer3{height: 80px !important;}
	#contact-tel-area .back-inner-box {
		display: block;
		text-align: center;
	}
	#contact-tel-area h3 {
		margin: 0 auto;
		justify-content: center;
	}
	#contact-tel-area h3 .icon-flex {
		width: 50px;
		height: auto;
	}
	#contact-tel-area h3 br{display: none;}
	#contact-tel-area:before {
		width: 90px;
		height: 98px;
		left: -48px;
	}
	#contact-tel-area:after {
		width: 96px;
		height: 98px;
		right: -47px;
	}
	#contact-area #title-board {
		width: 300px;
		height: 88px;
	}
	#contact-area #title-board .icon-flex {
		width: 47px;
		height: auto;
	}
	
	
	#contact-summarize {
		font-size: 13px;
		padding: 22px 18px 5px;
		line-height: 140%;
	}
	#form-area table th .min {
		width: auto;
		font-size: 11px;
		padding: 0 0 0 10px;
	}
	#form-area table th .required {
		left: -24px;
		top: -20px;
	}
	
	#form-area table .name-area .flex-area-left,
	#form-area table .name-area .flex-area-left p,
	#form-area table .name-area .flex-area-left input{
		display: block;
	}
	#form-area table td .form-half, #contact-phone-number {
		width: 100%;
	}
	#form-area table td .form-half1{
		margin: 0 0 20px;
	}
	#confirm-box {padding-top: 30px;}
	#form-area table td .coution {
		font-size: 12px;
		display: block;
	}
	#contact-attention {
		font-size: 14px;
		line-height: 140%;
	}
	#contact-bottom {
		border: 3px solid #f7f3e4;
		width: 100%;
		padding: 30px 10px 16px;
		margin: 0 auto 32px;
	}
	#contact-bottom .flowers8 {
		top: -24px;
		width: 80px;
	}
	#contact-area-wrapper .illust-9 {
		width: 140px;
		height: auto;
	}
	#contact-area-wrapper .tiger9 {
		width: 66px;
		top: -34px;
	}
	#contact-area-wrapper .leaf-line5 {
		width: 300px;
		bottom: -80px;
		z-index: 20;
	}
	
	
	
}
@media only screen and (max-width: 589px){
	/*******流れのエリア*******/
	#contact-flow .ribon-title {
		width: 265px;
		height: 89px;
		top: -35px;
	}
	#contact-flow .ribon-title .icon-top {
		width: 54px;
		height: auto;
		top: 7px;
	}
	#contact-flow .flow-wrap {
		max-width: 450px;
	}
	#contact-flow .flow-circle {
		font-size: 14px;
		width: 120px;
		height: 88px;
		padding: 12px 0 0 0;
		margin: 0 5px 12px;
	}
	#contact-flow .flow-circle .flower {
		width: 24px;
		height: auto;
	}
	#contact-flow .illust-8 {
		width: 110px;
		opacity: 0.8;
	}
	#contact-flow-area .leaf-line1 {
		top: -53px;
	}
		
	/*******フォームのエリア*******/
	#contact-area .ribon-title {
		font-size: 21px !important;
	}
	#contact-spacer1{height: 30px;}
	#contact-area .ribon-title span {background-size: auto 9px;}
	#contact-area-wrapper .circle1 {top: -70px;}
	
	/*******サンクスページ******/
	#thanks-area-wrapper .leaf-line5{
		z-index: -1;
	}

	
	
}
@media only screen and (max-width: 489px){
	/*******流れのエリア*******/
	#contact-flow .flow-wrap {max-width: 355px;}
	#contact-flow .flow-circle {
		font-size: 12px;
		width: 100px;
		height: 80px;
		padding: 10px 0 0 0;
	}
	#contact-flow .flow-arrow {
		width:10px;
		height: 20px;
	}
	
	/*******フォームのエリア*******/
	#contact-area .ribon-title {
		top: -14px;
		height: 86px;
		width: 280px;
		font-size: 20px !important;
		z-index: 20;
	}
	#contact-area .icon-top {
		top: -20px;
		width: 51px;
	}
	#submit-area .button {
		margin: 0 auto 25px;
		font-size: 18px;
		width: 300px;
	}
	#submit-area .reset-button{
		width: 200px;
		font-size: 14px;
	}
	#contact-area-wrapper .leaf-line8 {
		top: -188px;
		width: 200px;
		z-index: -1;
	}
	#contact-area-wrapper .leaf-line5 {
		width: 240px;
		bottom: 0;
		z-index: 0;
		opacity: 0.8;
	}
	/*******サンクスページ******/
	#thanks-area-wrapper .tiger4 {
		width: 42px;
		bottom: -19px;
		left: 1px;
	}
}
@media only screen and (max-width: 389px){
	/*******流れのエリア*******/
	#contact-flow .flow-wrap {
		width: 295px;
	}
	#contact-flow .flow-circle br{display: none;}
	
	#contact-flow .flow-circle {
		font-size: 12px;
		width: 84px;
		height: 75px;
		padding: 6px 0 0 0;
		margin: 0 5px 12px 5px;
		position: relative;
	}
	#contact-flow .flow-arrow {
		width: 6px;
		height: 11px;
	}

	/*******フォームのエリア*******/
	#contact-tel-area {
		padding: 4px;
	}
	#contact-tel-area h3 .icon-flex {
		width: 42px;
	}
	#contact-area #title-board {
		width: 96%;
		max-width: 290px;
	}
	
	#confirm-box dt {
		width: 90%;
		background-size: auto 10px;
		padding-bottom: 22px;
		margin: 5px auto 23px;
	}
	#submit-area .button {
		margin: 0 auto 15px;
		font-size: 16px;
		width: 90%;
		height: 60px;
	}
	#submit-area .reset-button{
		width: 180px;
		font-size: 13px;
	}
	
	
	#contact-summarize {
		width: 94%;
	}
	#contact-summarize h3 {
		font-size: 16px;
		margin-bottom: 15px;
		background-size: auto 9px;
		padding-bottom: 15px;
	}
	
	
	
	#contact-bottm-p span {padding: 0;}
	
	#contact-bottm-p:before, #contact-bottm-p:after {
		position: absolute;
		display: block;
		width: 40px;
		height: 38px;
		bottom: 0;
	}
	
	
	


}