﻿#dammy {
	display: block;
	overflow: hidden;
	background: url('../images/') no-repeat;
	background-size: px px;
	padding: 40px 0 0;
	width: 216px;
	height: 0!important;
}

#dammy {
	position: absolute;
	left:0;
	bottom:0;
	content: '';
	width:0;
	height:6px;
	background-color: #FFF;
}

#dammy:last-child {
	margin-bottom:0;
}

/*
=================================== */
.mtitle_block .mtitlebox h2 {
	background: url('../images/contact/contact_mtitle.webp') no-repeat left top;
	background-size: auto 26px;
	padding:36px 0 0;
}

.contact_area1 .block1 {
	padding-top:0;
	padding-bottom:30px;
}

.contact_inblock {
	padding:20px 10px 25px;
	background-color: #FFF;
	border-radius: 5px;
}

.contact_inblock .mex {
	margin:0 0 40px;
	text-align: center;
}

.contact_inblock .mex p {
	line-height:1.7;
	letter-spacing: 0.04em;
}

.contact_infoblock {
	margin:0 0 15px;
	padding:20px 0;
	text-align: center;
	border:1px solid #eac494;
}

.contact_infoblock h3 {
	margin:0 0 20px;
	line-height:1.2;
	color:#e08006;
	font-size:1.8rem;
	font-family: "Noto Serif JP", serif;
	letter-spacing: 0.08em;
}

.contact_infoblock .tel {
	margin:0 0 15px;
	line-height:1.2;
}

.contact_infoblock .tel b {
	display: inline-block;
	background: url('../images/common/icon_label.webp') no-repeat left bottom 5px;
	background-size: auto 12px;
	padding:0 0 0 30px;
	line-height:1.2;
	color:#4d4d4d;
	font-size:2.4rem;
	font-family: "Noto Serif JP", serif;
	letter-spacing: 0.08em;
}

.contact_infoblock .tel a {
	color:#4d4d4d;
}

.contact_infoblock .time {
	line-height:1.70;
	letter-spacing: 0.04em;
}

.input_message {
	margin:0 0 20px;
	line-height:1.7;
	text-align: center;
	letter-spacing: 0.04em;
}

.contact_area1 .stitlebox {
	margin:0 0 20px;
	padding:0 0 10px;
	border-bottom:1px solid #e08006;
}

.contact_area1 .stitlebox h3 {
	line-height:1.2;
	font-size:2.0rem;
	font-family: "Noto Serif JP", serif;
	letter-spacing: 0.08em;
}

.contact_area1 .stitlebox h3 b {
	margin:0 5px 0 0;
	color:#eac494;
	font-size:1.0rem;
}

.form_block {
	margin:0 0 60px;
}

.form_inbox {
	margin:0 0 30px;
}

.form_inbox:last-child {
	margin-bottom:0;
}

.form_wrapblock {
	margin:0 0 30px;
}

.form_wrapblock .form_inbox:last-child {
	margin-bottom:0;
}

.form_inbox .label {
	background-position: left center;
	background-repeat: no-repeat;
	background-size: auto 20px;
	margin:0 0 5px;
	padding:0 0 0 50px;
	height:22px;
	line-height:20px;
	letter-spacing: 0.04em;
}

.form_inbox .label.ne1 {
	background-image: url('../images/contact/icon_ne1.webp');
}

.form_inbox .label.ne2 {
	background-image: url('../images/contact/icon_ne2.webp');
}

.form_inbox .label.ne0 {
	padding:0;
}

.form_inbox .inputbox1 {
	margin:0 0 5px;
}

.form_inbox .inputbox1:last-child {
	margin-bottom:0;
}

.form_inbox .inputbox1.b30 {
	margin:0 0 30px;
}

.slist1 {
	display: flex;
	align-items: flex-start;
	flex-wrap:wrap;
}

.slist1 li {
	margin:0 15px 5px 0;
}

.slist1 li:last-child {
	margin-right:0;
}

.slist1 li label {
	margin:0 0 0 5px;
}

.slist2 li {
	margin:0 0 5px;
}

.slist2 li:last-child {
	margin-bottom:0;
}

.slist2 li label {
	margin:0 0 0 5px;
}

.slist3 li {
	margin:0 0 5px;
}

.slist3 li:last-child {
	margin-bottom:0;
}

.slist3 li label {
	margin:0 0 0 5px;
}

.inlabel {
	margin:0 0 5px;
}

.error {
	margin:0 0 5px;
	color:#C00;
}

.error:last-child {
	margin-bottom:0;
}

.form_inbox .inputbox2,
.form_inbox .inputbox3 {
	margin:0 0 10px;
	background-color: #ebe9e6;
	border-radius: 5px;
}

.form_inbox .inputbox2:last-child,
.form_inbox .inputbox3:last-child {
	margin-bottom:0;
}

.form_inbox .confbox,
.form_inbox .confbox2 {
	margin:0 0 10px;
	padding:0 10px;
	width:100%;
	line-height:50px;
	background-color: #f2f2f1;
	border-radius: 5px;
}

.form_inbox .confbox2 {
	padding:10px;
	line-height:1.6;
}

.input100 {
	padding:0 10px;
	width:100%;
	height:50px;
	line-height:50px;
}

.tarea {
	padding:10px;
	width:100%;
	height:100px;
	line-height:1.6;
}

.sele100 {
	margin:0 0 10px;
	padding:0 10px;
	width:100%;
	height:50px;
	line-height:50px;
	overflow: hidden;
	background: url('../images/contact/icon_pull.webp') no-repeat right 15px center;
	background-size: auto 21px;
	background-color: #ebe9e6;
	border-radius: 5px;
}

.sele100:last-child {
	margin-bottom:0;
}

.form_inbox .inputbox3 {
	margin:0 0 10px;
	background-color: #ebe9e6;
	border-radius: 5px;
}

.form_inbox .inputbox3:last-child {
	margin-bottom:0;
}


.privacy_infoblock {
	margin:0 0 20px;
}

.privacy_infoblock h4 {
	margin:0 0 15px;
	line-height:1.2;
	font-size:2.0rem;
	font-family: "Noto Serif JP", serif;
	letter-spacing: 0.04em;
}

.privacy_infoblock p {
	line-height:1.7;
	letter-spacing: 0.04em;
}

.privacy_infoblock p a {
	color:#299bd2;
	text-decoration: underline;
}

.agree_block {
	margin:0 0 30px;
	padding:20px 0 15px;
	text-align: center;
	border-top:1px solid #c7cdd3;
	border-bottom:1px solid #c7cdd3;
}

.agree_block .agreeline {
	display: inline-flex;
	justify-content: center;
	align-items: flex-start;
	padding:5px 0 0 50px;
	background: url('../images/contact/icon_ne1.webp') no-repeat left top 1px;
	background-size: auto 20px;
}

.agree_block .agreeline label {
	margin:0 0 0 5px;
	font-size:1.6rem;
	font-weight: bold;
	letter-spacing: 0.04em;
	transform: translateY(-7px);
}
.agree_block .exline {
	line-height:1.7;
	letter-spacing: 0.04em;
}

.btn_block {
	margin:0 0 35px;
}

.btn_block p {
	margin:0 auto 15px;
	width:250px;
}

.btn_block p:last-child {
	margin-bottom:0;
}

.btn_block p a {
	display: block;
	text-align: center;
	line-height:46px;
	border-radius: 5px;
	background-color: #eac494;
}

.cautionbox {
	padding:15px 10px 10px;
	text-align: center;
	border:1px solid #c7cdd3;
	border-radius: 5px;
}

.cautionbox p {
	margin:0 0 25px;
	line-height:1.7;
	letter-spacing: 0.04em;
}

.cautionbox p:last-child {
	margin-bottom:0;
}


/* thanks
=================================== */
.contact_inblock.thanks {
	padding:40px 10px;
}

.thanks_mtitle {
	padding:0 0 40px;
	line-height:1.0;
	text-align: center;
	color:#e55703;
	font-size:2.8rem;
	font-family: "Noto Serif JP", serif;
	letter-spacing: 0.04em;
	border-bottom:1px dashed #b3b3b3;
}

.thanks_mlead {
	margin:0 0 35px;
	padding:30px 0;
	text-align: center;
	color:#e55703;
	font-size:1.8rem;
	font-weight: 500;
	letter-spacing: 0.04em;
	border-bottom:1px dashed #b3b3b3;
}

.thanks_message {
	margin:0 0 30px;
}

.thanks_message p {
	margin:0 0 20px;
	line-height:1.7;
	text-align: center;
	font-weight: 500;
	letter-spacing: 0.08em;
}

.thanks_message p:last-child {
	margin-bottom:0;
}

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

	/*
	=================================== */
	.mtitle_block .mtitlebox h2 {
		background-size: 143px 40px;
		padding:50px 0 0;
	}

	.contact_area1 .block1 {
		padding-top:30px;
		padding-bottom:40px;
	}

	.contact_inblock {
		padding:70px 130px 60px;
	}

	.contact_inblock .mex {
		margin:0 0 25px;
	}

	.contact_inblock .mex p {
		line-height:1.75;
	}

	.contact_infoblock {
		margin:0 0 35px;
		padding:20px 0 25px;
	}

	.contact_infoblock h3 {
		margin:0 0 25px;
		font-size:2.8rem;
	}

	.contact_infoblock .tel {
		margin:0 0 20px;
	}

	.contact_infoblock .tel b {
		font-size:3.6rem;
	}

	.contact_infoblock .time {
		line-height:1.75;
	}

	.input_message {
		margin:0 0 40px;
		line-height:1.75;
	}

	.contact_area1 .stitlebox {
		margin:0 0 30px;
		padding:0 40px 25px;
	}

	.contact_area1 .stitlebox h3 {
		font-size:2.2rem;
	}

	.form_block {
		margin:0 40px 25px;
	}

	.form_inbox {
		margin:0 0 35px;
	}

	.form_wrapblock {
		display: flex;
		justify-content: space-between;
		align-items: stretch;
		margin:0 0 35px;
	}

	.form_wrapblock .form_inbox {
		margin-bottom :0;
		width:calc(50% - 10px);
	}

	.form_inbox .label {
		background-size: 47px 23px;
		margin:0 0 15px;
		padding:0 0 0 56px;
		height:26px;
		line-height:24px;
	}

	.slist1 li {
		margin:0 20px 10px 0;
	}

	.slist2 li {
		margin:0 0 10px;
	}

	.slist3 {
		display: flex;
		align-items: flex-start;
		flex-wrap:wrap;
	}

	.slist3 li {
		margin:0 20px 10px 0;
	}

	.error {
		margin:0 0 10px;
	}

	.inlabel {
		margin:0 0 10px;
	}

	.form_inbox .confbox {
		padding:0 15px;
		line-height:60px;
	}

	.form_inbox .confbox2 {
		padding:10px 15px;
		line-height:1.6;
	}

	.input100 {
		padding:0 15px;
		height:60px;
		line-height:60px;
	}

	.tarea {
		padding:10px 15px;
		height:260px;
	}

	.sele100 {
		padding:0 15px;
		height:60px;
		line-height:60px;
	}

	.privacy_infoblock {
		margin:0 40px 30px;
	}

	.privacy_infoblock h4 {
		font-size:2.2rem;
	}

	.privacy_infoblock p {
		line-height:1.75;
	}

	.agree_block {
		margin:0 0 40px;
		padding:15px 0;
	}

	.agree_block .agreeline {
		align-items: center;
		margin:0 0 10px;
		padding:0 0 0 57px;
		background-position: left center;
		background-size: 47px 23px;
	}

	.agree_block .agreeline label {
		font-size:1.8rem;
		transform: translateY(0);
	}
	.agree_block .exline {
		line-height:1.75;
	}

	.btn_block {
		display: flex;
		justify-content: center;
		align-items: center;
		margin:0 0 40px;
	}

	.btn_block p {
		margin:0 20px;
		width:250px;
	}

	.btn_block p a {
		transition-duration: .3s;
	}

	.btn_block p a:hover {
		color:#FFF;
		background-color: #e08006;
	}

	.cautionbox {
		margin:0 auto;
		padding:20px 0 15px;
		width:715px;
	}

	.cautionbox p {
		margin:0 0 20px;
		line-height:1.75;
	}

	/* thanks
	=================================== */
	.contact_inblock.thanks {
		padding:70px 130px 60px;
	}

	.thanks_mtitle {
		padding:0 0 70px;
		font-size:3.6rem;
		letter-spacing: 0.08em;
	}

	.thanks_mlead {
		margin:0 0 45px;
		padding:50px 0;
		font-size:2.4rem;
		letter-spacing: 0.08em;
	}

	.thanks_message {
		margin:0 0 40px;
	}

	.thanks_message p {
		margin:0 0 30px;
		line-height:2.1;
		letter-spacing: 0.08em;
	}

	.thanks .linkbox {
		margin:0 auto;
		width:365px;
	}
}
