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

main.subpage_illustration .subpage_main_box{
	max-width: 840px;
	background-image: url("../images/main_bg_contact.png");
	background-size: 280px 205px;
	min-height: 240px;
}

main.subpage .subpage_main_box h2{
	margin-bottom: 16px;
}
main.subpage_illustration .subpage_main_box a:before{
	position: static;
	content: ''!important;
}

.text_C{text-align: center;}
.pb30{padding-bottom: 30px;}
.pb50{padding-bottom: 50px;}
.pb60{padding-bottom: 60px;}

/*==================================================
btn css
===================================*/
/*テキストのみリンク*/
.link_text{ margin-top: 24px;}
.link_text a{
	font-size: 1rem!important;
	position: relative!important;
	color: var(--blue)!important;
	padding-right: 24px;
	text-decoration:none!important;
	display: inline-block!important;
	letter-spacing: 0.1em;
	transition: 0.3s;
	padding-left: 0!important;
}
.link_text a:after{
	position: absolute;
	content: '';
	top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
	right:0;
	display: block;
	width: 8px;
	height: 12px;
	background-image: url("../images/icon_btn_arrow_blue.svg");
	background-size: contain;
	background-repeat: no-repeat;
	transition: 0.3s;
}
.link_text a:hover{
	opacity: 0.6;
	transition: 0.3s;
}
.link_text a:hover:after{right: -8px; transition: 0.3s;}

/*==================================================
topics_title css
===================================*/
.topics_title{
	padding-top: 50px;
	padding-bottom: 44px;
}

#mpf_View_confirm .topics_title, #mpf_View_complete .topics_title, #mpf_View_sending .topics_title{margin-top: 120px;}

/*==================================================
お問い合わせフォーム css
===================================*/
:root {
  color-scheme: light;
}
dl.form{
	width: 100%;
	overflow: hidden;
}
dt,dd{
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-style: normal;
	letter-spacing: 0.05em;
}



.form dt{
	clear: left;
	float: left;
	font-weight: 500;
	font-size: 1.1rem;
/*	margin-bottom: 8px;*/
	width: 35%;
}
.form dd{
	padding-bottom: 24px;
	margin-bottom: 24px;
	border-bottom: solid 1px var(--border-gray);
}
.form dd select,.form dd input{
	width: 50%;
	border: solid 1px var(--border-gray);
	border-radius: 4px;
	padding: 4px 8px;
}
.form dd textarea{
	width: 65%;
	border: solid 1px var(--border-gray);
	border-radius: 4px;
	padding: 4px 8px;
}
span.hissu{color: var(--red); font-size: 1rem; margin-left: 8px;}
span.error_txt{
	color: var(--red);
	display: inline-block;
	margin-left: 35%;
}
::placeholder {
  color: var(--gray-contact);
}
/* 旧Edge対応 */
::-ms-input-placeholder {
  color: var(--gray-contact);
}
/* IE対応 */
:-ms-input-placeholder {
  color: var(--gray-contact);
}

.box_check{margin-top: 32px;}
.box_check p{
	margin-bottom: 40px;
	letter-spacing: 0.1em;
}
.box_check p a{color: var(--blue); text-decoration:none;}
.box_check p a:hover{opacity: 0.6;}
.box_check p:nth-of-type(2){
	text-align: center;
}
.box_check span.error_txt{
	margin-left: 0;
}

/*確認btn*/
.btn_form{
	font-size: 1.5rem;
	text-align: center;
	height: 80px;
	font-family: zen-kaku-gothic-new, sans-serif;
	font-weight: 500;
	font-style: normal;
	cursor: pointer;
	margin-bottom: 56px;
	transition: all 0.3s;
}
.btn_form:nth-of-type(2){
	margin-left: 20px;
}
.btn_large{
	width: 442px;
}
.btn_s{
	width: 210px;
}
.btn_blue{
	color: var(--white);
	background-color: var(--blue);
	border: solid 1px var(--blue);
}
.btn_gray{
	color: var(--white);
	background-color: var(--gray-contact);
	border: solid 1px var(--gray-contact);
}
.btn_form_box{
	display: flex;
	justify-content: center;
	align-items: center;
}
.btn_form_box input.btn_blue:hover{
	background-color: var(--white);
	color: var(--blue);
}
.btn_form_box input.btn_gray:hover{
	background-color: var(--white);
	color: var(--gray-contact);
}

/*==================================================
contact_info table css
===================================*/
.contact_info {
	padding: 40px;
    background-color: var(--bg-gray);
	margin-top: 40px;
}
.contact_info table{margin-top: 24px;}
.contact_info th{vertical-align: top; text-align: left; padding-bottom: 8px; letter-spacing: 0.1em; font-weight: normal;}
.contact_info th span{font-size: 0.9rem; font-weight: normal; letter-spacing: 0.05em;}

.contact_info td{max-width: 532px; padding-bottom: 8px; padding-left: 24px; letter-spacing: 0.075em;}
.contact_info td a{text-decoration:none; transition: all 0.3s;}
.contact_info td.link_mail a{color: var(--blue);}
.contact_info td a:hover{opacity: 0.6;}


@media print, screen and (max-width: 767px) {
	main.subpage .subpage_main_box{
		flex-direction: column;
	}
	.form dt{float: none;width: 100%; margin-bottom: 8px;}
	.form dd select, .form dd input, .form dd textarea{width: 100%;}
	span.error_txt{margin-left: 0; margin-top: 8px;}
	th,td{display: block;}
	.contact_info{padding: 40px 20px;}
	.contact_info th{padding-bottom: 0px;}
	.contact_info td{padding-left: 0px; padding-bottom: 16px;}
	.contact_info tr:last-of-type td{padding-bottom: 0;}
	#mpf_View_confirm .topics_title, #mpf_View_complete .topics_title, #mpf_View_sending .topics_title{margin-top: 100px;}
}