@charset "UTF-8";
#mfp_loading, #mfp_loading_screen, #mfp_overlay_background, #mfp_overlay{
	display: none;
}
div#mfp_hidden {
	overflow: hidden;
	width: 1px;
	height: 1px;
	padding: 0px;
	margin: 0px;
}
div.mfp_thanks ul.mfp_caution {
	margin: 0px;
	padding: 0px;
}


/*-------------------------*/
#contact_form table{
	margin-bottom: 17px;
}
#contact_form table th,
#contact_form table td{
	vertical-align: top;
	box-sizing: border-box;
}
#contact_form table th{
	width: 250px;
	padding: 21px 0 21px 54px;
}
#contact_form table td{
	width: 500px;
	padding: 9px 0;
}
#contact_form table th .must{
    color: #EEE5E1;
    font-size: 12px;
    width: 40px;
    height: 18px;
    text-align: center;
    display: inline-block;
    background: #552126;
    padding: 2.5px 0;
    position: absolute;
    left: 0;
	top: 50%;
	margin-top: -10px;
}
#contact_form table tr:nth-child(5) th .must{
	top: 19px;
	margin-top: 0;
}
#contact_form table td input{
	width: 450px;
	height: 40px;
	padding: 15px;
}
#contact_form table td textarea{
	width: 450px;
	resize: none;
	height: 166px;
	line-height: 2;
	padding: 10px 15px;
}
#contact_form table td input,
#contact_form table td textarea{
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	box-sizing: border-box;
	border: 1px solid #E1D2D2;
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
}
:focus {
    outline: none;
}
#contact_form table td input,
#contact_form table td textarea{
	width: 450px;
	min-width: 450px;
	max-width: 450px;
}
#contact_form table a{
	color: #552126;
	text-decoration: underline;
	transition: all .3s ease;
}
#contact_form table a:hover{
	opacity: 0.6;
}
input[type=file] {
    border: none!important;
	background: #E1E1E1;
	height: auto!important;
	margin-bottom: 10px;
	border-radius: 4px;
	cursor: pointer;
}
#contact_form table tr:last-child td{
	text-align: center;
	padding-right: 70px;
} 
/* checkbox */
input[type=checkbox] {
    display: none;
}
.checkbox {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding: 5px 0;
    position: relative;
    width: auto;
}
.checkbox span{
	padding-left: 35px;
	font-size: 16px;
}
.checkbox::before {
    background: #fff;
    border: 1px solid #552126;
    content: '';
    display: block;
    height: 17px;
    left: 0;
    position: absolute;
    top: 3px;
    width: 17px;
	box-sizing: border-box;
}
.checkbox::after {
	border-right: 3px solid #552126;
    border-bottom: 3px solid #552126;
    content: '';
    display: block;
    height: 9px;
    left: 5px;
    opacity: 0;
    position: absolute;
    top: 4px;
    transform: rotate(45deg);
    width: 5px;
}
.checkbox.mfp_checked::after {
    opacity: 1;
}

#contact_form .mfp_buttons{
	width: 700px;
	clear: both;
	margin: 0 auto;
	border-top: 1px solid #E1D2D2;
	padding-top: 60px;
	padding-bottom: 0;
	text-align: center;
	overflow: hidden;
}
#contact_form .btn_border,
#mfp_button_cancel,
#mfp_button_send{
	border: 0;
	width: 300px;
	height: 50px;
	padding: 12px 0;
	box-sizing: border-box;
	cursor: pointer;
	text-align: center;
	transition: all .3s ease;
	letter-spacing: 1px;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	cursor: pointer;
}

#contact_form .btn_border,
#mfp_button_send{
	color: #552126;
	display: block;
	margin: 0 auto;
	border: 1px solid #552126;
    background: transparent;
}
#contact_form .btn_border:hover,
#mfp_button_send:hover{
	color: #fff;
    background: #552126;
}
#mfp_button_send{
}
#mfp_button_cancel,
#mfp_button_send{
	margin: 0 23px;
	display: inline-block;
	font-size: 16px;
}
#mfp_button_send{
	float: right;
}
#mfp_button_cancel{
	background: #E1E1E1;
	float: left;
}
#mfp_button_cancel:hover{
	background: #c8c8c8;
}
#contact_form .mfp_err {
    display: none;
    position: absolute;
    width: 16px;
    height: 16px;
    right: 18px;
    top: 22px;
    text-indent: -1000px;
    overflow: hidden;
    background: url(../../common/images/ic_error.svg) no-repeat center;
    background-size: 16px auto;
    transition: all .2s ease;
}
#contact_form .mfp_ok {
    display: none;
    position: absolute;
    width: 16px;
    height: 16px;
    right: 18px;
    top: 22px;
    text-indent: -1000px;
    overflow: hidden;
    background: url("../../common/images/ic_check.svg") no-repeat center;
    background-size: 16px auto;
    transition: all .2s ease;
}
#contact_form tr:last-child .mfp_err,
#contact_form tr:last-child .mfp_ok{
	display: none!important;
}
.problem, .checkbox.mfp_not_checked::before{
	background: #ffd7d5!important;
	border: 1px solid #fdc7c4!important;
}

/* confirm */
#mfp_phase_confirm_inner h4{
	position: relative;
	text-align: center;
	margin: 40px auto 35px;
	font-size: 20px;
	color: #552126;
	border-bottom: 1px solid #E1D2D2;
	width: 690px;
	padding-bottom: 40px;
}
#mfp_confirm_table{
	margin: 17px auto 25px!important;
	width: 690px!important;
}
#mfp_confirm_table th{
	width: 178px!important;
}
#mfp_confirm_table th,
#mfp_confirm_table td{
	padding: 23px 0!important;
	line-height: 2!important;
}
#mfp_confirm_table tr:last-child td{
	text-align: left;
}

#mfp_confirm_table tr:first-child{
	margin-top: 40px!important;
}
#mfp_confirm_table tr:last-child{
	margin-bottom: 40px!important;
}
#td_policy,#th_policy{
	display: none;
}
@media screen and (max-width: 750px) {
#contact_form .mfp_err,
#contact_form .mfp_ok{
	display: none!important;
}
#contact_form table{
	width: 100%;
	margin: 12.6vw auto 6vw;
}
#contact_form table tr{
	margin-bottom: 6.6vw;
}
#contact_form table th,
#contact_form table td{
	padding: 0;
}
#contact_form table th{
	margin-bottom: 4vw;
}
#contact_form table th .must,
#contact_form table tr:nth-child(5) th .must{
	font-size: 3.2vw;
	width: 10.6vw;
	height: 4.8vw;
	position: relative;
	left: auto;
	top: auto;
	margin: 0 3vw 0 0;
	display: inline-block;
	padding: 0.8vw;
	vertical-align: 0.2vw;
}
#contact_form table td input{
	height: 10.6vw;
}
#contact_form table td textarea{
	height: 34.6vw!important;
	line-height: 1.4;
}
#contact_form table td input,
#contact_form table td textarea{
	padding: 4vw;
}
#contact_form table td input,
#contact_form table td textarea{
	width: 100%;
	font-size: 4.2vw;
	min-width: 100%;
	max-width: 100%;
}
	/* safari */
@media screen and (-webkit-min-device-pixel-ratio:0) {
	::i-block-chrome, #contact_form table td .again {
		font-size: 3.8vw;
	}
}
_::-webkit-full-page-media, _:future, :root #contact_form table td .again {
	 font-size: 3.8vw;
}

#contact_form .policy{
    margin: 12vw auto 0;
	text-indent: 0;
}
input[type=file]{
	font-size: 3.7vw!important;
	margin-bottom: 3.3vw;
	border-radius: 1.06vw;
}
#contact_form table tr:last-child td{
	padding-right: 0;
}
	
/* checkbox */
.checkbox {
    padding: 1.3vw 0;
}
.checkbox span{
	font-size: 4.2vw;
	padding-left: 9.3vw;
}
.checkbox::before {
    height: 4.8vw;
    top: 1vw;
    width: 4.8vw;
}
.checkbox::after {
	height: 2.6vw;
    left: 1.35vw;
    top: 1.2vw;
    width: 1.6vw;
}
#contact_form .kakunin{
	margin: 6.6vw auto;
	line-height: 1.8;
}
#contact_form .mfp_buttons{
	width: 78.6vw;
	padding-bottom: 0;
    padding-top: 10.6vw;
}
#contact_form .btn_border,
#mfp_button_cancel,
#mfp_button_send{
	font-size: 4.2vw;
	width: 100%;
	height: 13.3vw;
	padding: 3.4vw 0;
	text-indent: 0;
}
#mfp_button_send{
	text-indent: 0;
}
#mfp_button_cancel,
#mfp_button_send{
	display: block;
	float: none;
}
#mfp_button_send{	
	margin: 0 auto 1.3vw;
}
#mfp_button_cancel{
	margin: 0 auto;
}
/* confirm */
#mfp_phase_confirm_inner h4{
	width: 78.6vw;
    height: 13.3vw;
    margin: -21.3vw auto 6vw;
    line-height: 1;
    padding-bottom: 12vw;
    font-size: 5.3vw;
    padding-top: 32.6vw;
}
#mfp_confirm_table{
	margin: 0 auto!important;
	width: 78.6vw!important;
}
#contact_form table,
#contact_form table tbody,
#contact_form table tr,
#contact_form table td,
#contact_form table th{
	width: 100%;
	display: block;
}
#mfp_confirm_table,
#mfp_confirm_table tbody,
#mfp_confirm_table tr,
#mfp_confirm_table th,
#mfp_confirm_table td{
	width: 78.6vw!important;
	display: block;
}
#mfp_confirm_table th,
#mfp_confirm_table td{
	padding: 0!important; 
}
#mfp_confirm_table td{
	margin-bottom: 5vw!important;
}
#mfp_confirm_table th{
	margin-bottom: 0!important;
}
#mfp_confirm_table tr{
	margin-bottom: 4vw!important;
}
#mfp_confirm_table tr:last-child{
	display: none!important;
}
}