@charset "UTF-8";
/* CSS Document */

/*--------------------------------------------------------
　基本設定
--------------------------------------------------------*/

main {
    padding-bottom: 0;
}

label {
	cursor: pointer;
}

section#contact dl dd input[type=text],
section#contact dl dd input[type=email],
section#contact dl dd input[type=tel],
section#contact dl dd textarea{
    width: 100%!important;
    font-size: 1.6rem;
    padding: 0.75em 0.75em;
    background: #FFF!important;
}

.mfp_err {
	color: #cc3033;
}

#mfp_confirm_table {
	width: 100%;
	border: none;
}

table#mfp_confirm_table tr.mfp_achroma,
table#mfp_confirm_table tr.mfp_colored {
    background-color: rgba(255,255,255,0);
}

input,textarea {
	padding: 16px;
}

.thanks {
	padding-bottom: 12vw;
}

.hp-field {
	position: absolute !important;
	left: -9999px !important;
	width: 1px !important;
	height: 1px !important;
	overflow: hidden !important;
}

.privacy_link {
	margin: 2em 0 0;
	text-align: center;
}

.privacy_link a{
	color: #00b7ee;
	text-decoration: underline;
}


/*--------------------------------------------------------
　PC
--------------------------------------------------------*/

@media print, screen and (min-width: 961px){
	
	div#mv_block nav.slide_nav li.menu.contact a{
		color: #4fc4d7;
    }
	
	section#contact div.section_inner {
		width: 64.8%;
		max-width: 972px;
		margin: 0 auto;
	}
	
	section#contact div.section_inner h2{
		margin-bottom: 1em;
	}
	
	section#contact div.section_inner h2 + p{
		font-size: 2.0rem;
		font-size: clamp(calc((2.0rem * 0.64)), 1.33vw, 2.0rem);
		font-weight: 700;
		line-height: 2.2;
		letter-spacing: 0.025em;
		text-align: center;
	}
	
	section#contact div.form {
		margin-top: 4vw;
		padding: 5.8vw 0 6.6vw;
		background: url("../images/common/bg_blue.jpg") repeat;
		background-size: 250px 2100px;
	}
	
	section#contact div.form div.section_inner dl{
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	section#contact div.form div.section_inner dl dt{
		width: 24%;
		font-size: 2.2rem;
		font-size: clamp(calc((2.2rem * 0.64)), 1.46vw, 2.2rem);
		font-weight: 700;
		letter-spacing: 0.05em;
		margin-bottom: 3.3vw;
		margin-bottom: 3.3cqw;
		padding-top: 0.5em;
	}
	
	section#contact div.form div.section_inner dl dt sup{
		color: #E51317;
	}
	
	section#contact div.form div.section_inner dl dd{
		width: 72%;
		font-size: 2.2rem;
		font-size: clamp(calc((2.2rem * 0.64)), 1.46vw, 2.2rem);
		margin-bottom: 3.3vw;
		margin-bottom: 3.3cqw;
	}
	
	section#contact div.form div.section_inner dl dd:last-of-type{
		margin-bottom: 0;
	}
	
	div.btn_block {
		margin-top: 3.3vw;
		margin-top: 3.3cqw;
		padding-left: 28%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	
	div.btn_block button,
	div.mfp_buttons button,
	div.btn_block a{
		width: 100%;
		font-size: 2.2rem;
		font-size: clamp(calc((2.2rem * 0.64)), 1.46vw, 2.2rem);
		font-weight: 700;
		line-height: 1;
		text-align: center;
		color: #FFF;
		background: #00b7ee;
		padding: 1em 0;
		transition-duration: 0.5s;
		transition-property: opacity;
	}
	
	div.btn_block a{
		width: 100%;
	}
	
	div.btn_block button:hover,
	div.mfp_buttons button:hover,
	div.btn_block a:hover{
		opacity: 0.7;
	}
	
	#mfp_phase_confirm_inner {
		width: 100%;
		margin: 0 auto;
	}
	
	#mfp_phase_confirm_inner h4{
		font-size: 2.2rem;
		font-size: clamp(calc((2.2rem * 0.64)), 1.46vw, 2.2rem);
		font-weight: 700;
		line-height: 1.5;
		text-align: center;
		margin-bottom: 0.5em;
	}
	
	#mfp_phase_confirm_inner table{
		width: 100%;
		background: #FFF;
		border-top: 1px solid #999;
	}
	
	#mfp_phase_confirm_inner table th,
	#mfp_phase_confirm_inner table td{
		font-size: 2.0rem!important;
		font-size: clamp(calc((2.0rem * 0.64)), 1.33vw, 2.0rem)!important;
		font-weight: 700;
		line-height: 1.8;
		padding: 1em 0.75em!important;
		border-bottom: 1px solid #999;
	}
	
	#mfp_phase_confirm_inner table th {
		background: #efefef;
	}
	
	#mfp_phase_confirm_inner .mfp_buttons {
		margin-top: 5vw;
	}
	
	#mfp_phase_confirm_inner .mfp_buttons.end {
		margin-top: 2vw;
	}
	
	#mfp_phase_confirm_inner #mfp_button_cancel {
		background: #999;
		color: #000;
	}
	
	.privacy_link {
        font-size: 2.0rem;
		font-size: clamp(calc((2.0rem * 0.64)), 1.33vw, 2.0rem);
		padding-left: 28%;
    }
	
}

@media screen and (min-width:961px) and (max-width: 1500px){

}
	

/*--------------------------------------------------------
　SP
--------------------------------------------------------*/

@media screen and (max-width: 960px){
	
	
	section#contact div.section_inner {
		width: 90%;
		margin: 0 auto;
	}
	
	section#contact div.section_inner h2{
		margin-bottom: 1em;
	}
	
	section#contact div.section_inner h2 + p{
		font-size: calc(2.4rem * 0.48);
		font-size: clamp(calc((2.4rem * 0.48)), 3.2vw, calc(2.4rem * 1.28));
		font-weight: 700;
		line-height: 2.2;
		letter-spacing: 0.025em;
		text-align: center;
	}
	
	section#contact div.form {
		margin-top: 9vw;
		padding: 9vw 0;
		background: url("../images/common/bg_blue.jpg") repeat;
		background-size: 250px 2100px;
	}
	
	section#contact div.form div.section_inner dl{
		display: block;
	}
	
	section#contact div.form div.section_inner dl dt{
		width: 100%;
		font-size: calc(2.4rem * 0.48);
		font-size: clamp(calc((2.4rem * 0.48)), 3.2vw, calc(2.4rem * 1.28));
		font-weight: 700;
		letter-spacing: 0.05em;
		text-align: center;
		margin-bottom: 0.5em;
		padding: 0;
	}
	
	section#contact div.form div.section_inner dl dt sup{
		color: #E51317;
	}
	
	section#contact div.form div.section_inner dl dd{
		width: 100%;
		font-size: calc(2.4rem * 0.48);
		font-size: clamp(calc((2.4rem * 0.48)), 3.2vw, calc(2.4rem * 1.28));
		margin-bottom: 6.6vw;
		margin-bottom: 6.6cqw;
	}
	
	div.btn_block {
		margin-top: 3.3vw;
		margin-top: 3.3cqw;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
	}
	
	div.btn_block button,
	div.mfp_buttons button,
	div.btn_block a{
		width: 100%;
		font-size: calc(2.4rem * 0.48);
		font-size: clamp(calc((2.4rem * 0.48)), 3.2vw, calc(2.4rem * 1.28));
		font-weight: 700;
		line-height: 1;
		text-align: center;
		color: #FFF;
		background: #00b7ee;
		padding: 1em 0;
		transition-duration: 0.5s;
		transition-property: opacity;
	}
	
	div.btn_block a{
		width: 100%;
	}
	
	div.btn_block button:hover,
	div.mfp_buttons button:hover,
	div.btn_block a:hover{
		opacity: 0.7;
	}
	
	#mfp_phase_confirm_inner {
		width: 100%;
		margin: 0 auto;
	}
	
	#mfp_phase_confirm_inner h4{
		font-size: calc(3.0rem * 0.48)!important;
		font-size: clamp(calc((3.0rem * 0.48)), 4vw, calc(3.0rem * 1.28))!important;
		font-weight: 700;
		line-height: 1.5;
		text-align: center;
		margin-bottom: 0.5em;
	}
	
	#mfp_phase_confirm_inner table{
		width: 100%;
		background: #FFF;
	}
	
	#mfp_phase_confirm_inner table th,
	#mfp_phase_confirm_inner table td{
		width: 100%!important;
		font-size: calc(2.4rem * 0.48)!important;
		font-size: clamp(calc((2.4rem * 0.48)), 3.2vw, calc(2.4rem * 1.28))!important;
		font-weight: 700;
		line-height: 1.8;
		padding: 1em 0.75em!important;
		display: block;
	}
	
	#mfp_phase_confirm_inner table th {
		background: #efefef;
		padding-bottom: 0.75em!important;
	}
	
	#mfp_phase_confirm_inner table td {
		padding-top: 0.75em!important;
	}
	
	#mfp_phase_confirm_inner .mfp_buttons {
		margin-top: 5vw;
	}
	
	#mfp_phase_confirm_inner #mfp_button_cancel {
		background: #999;
		color: #000;
	}
	
	.privacy_link {
        font-size: calc(2.4rem * 0.48);
		font-size: clamp(calc((2.4rem * 0.48)), 3.2vw, calc(2.4rem * 1.28));
    }

}