@charset "UTF-8";

/* ================================================
inquiry
================================================ */
#inquiry .form_wrap {
	width: 100%;
	margin: 36px auto 90px;
	}
#inquiry .form_wrap h2 {
	color: #aa3977;
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 32px;
	font-weight: 700;
	}
#inquiry .form_wrap h3 {
	margin-top: 36px;
	color: #333;
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 21px;
	font-weight: 700;
	}
#inquiry .form_wrap .lead {
	margin-top: 15px;
	}
#inquiry .form_wrap .lead p {
	font-size: 15px;
	line-height: 2;
	}

/* phase_state */
#inquiry .phase_state {
	margin-top: 24px;
	background-color: #f1f1f1;
	}
.phase_state_input ul.phase_state li.input,
.mw_wp_form_input ul.phase_state li.input,
.phase_state_confirm ul.phase_state li.confirm,
.mw_wp_form_confirm ul.phase_state li.confirm,
.phase_state_complete ul.phase_state li.completion,
.mw_wp_form_complete ul.phase_state li.completion {
	background-color: #aa3977;
	}

/* form_con */
#inquiry .form_con {
	margin-top: 15px;
	}
#inquiry .form_con dt,
#inquiry .form_con dd {
	border-top-color: #ddd;
	border-bottom-color: #ddd;
	font-size: 15px;
	}
#inquiry .form_con dt {
	background-color: #f1f1f1;
	}

/* required */
#inquiry .form_con dt.required {
	padding-right: 3.6em;
	}
#inquiry .form_con dt.required::after {
	right: 1em;
	background-color: #ff008c;
	border: none;
	color: #fff;
	font-size: 12px;
	}

/* note */
#inquiry .form_con p.note {
	padding-left: 1.5em;
	margin-top: 6px;
	position: relative;
	font-size: 12px;
	}
#inquiry .form_con p.note::before {
	position: absolute;
	top: 0;
	left: 0;
	content: '※';
	}

/* input */
#inquiry .form_con input,
#inquiry .form_con select,
#inquiry .form_con textarea {
	font-size: 15px;
	}

/* privacy */
#inquiry .privacy {
	border: 1px solid #ddd;
	}
#inquiry .privacy h4 {
	color: #aa3977;
	}
#inquiry .privacy h4+p {
	margin-top: 6px;
	}
#inquiry .privacy ul {
	margin-top: 6px;
	background-color: #f1f1f1;
	}
#inquiry .privacy li {
	text-align: center;
	}
#inquiry .privacy p.error_msg {
	margin-top: 6px;
	position: relative;
	color: #cb0000;
	font-size: 14px;
	}
#inquiry .privacy p.error_msg::before {
	position: absolute;
	left: 0;
	top: -0.1em;
	content: '\e000';
	color: #cb0000;
	font-family: 'Material Symbols Outlined';
	font-variation-settings: 'FILL' 1, 'wght' 700, 'GRAD' 0, 'opsz' 24;
	font-size: 15px;
	}

/* error_area */
#inquiry .error_area {
	padding: 1.8em 2.4em;
	}
#inquiry .error_area li {
	margin-bottom: 4px;
	color: #cb0000;
	line-height: 1.5;
	}

/* error_msg */
#inquiry p.error_msg {
	padding-left: 1.5em;
	}
#inquiry p.error_msg::before {
	color: #cb0000;
	}

/* btn */
input[type='button'],
input[type='submit'],
button {
	padding: 24px 10px;
	background-color: #aa3977;
	font-size: 18px;
	}
input[type='button']:hover,
input[type='submit']:hover,
button:hover {
	background-color: #cc539d;
	}

/* custom */
#inquiry .ctm01 input {
	width: 12em;
	}
#inquiry .ctm01 input+span {
	margin-left: 6px;
	}

/* by_phone */
#inquiry .by_phone {
	padding: 30px 45px;
	margin-top: 60px;
	background-color: #fff7fb;
	}
#inquiry .by_phone h3 {
	margin: 0;
	font-size: 20px;
	text-align: center;
	}
#inquiry .by_phone dl {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	}
#inquiry .by_phone dt {
	width: 100%;
	text-align: center;
	}
#inquiry .by_phone dt .tel_link {
	padding-left: 45px;
	position: relative;
	color: #aa3977;
	font-family: "Zen Maru Gothic", sans-serif;
	font-size: 48px;
	font-weight: 700;
	line-height: 1;
	}
#inquiry .by_phone dt .tel_link::before {
	width: 30px;
	height: 30px;
	margin: auto;
	display: block;
	position: absolute;
	top: 15%;
	bottom: 0;
	left: 0;
	background: url(../../cmn/img/icon_tel02.png) no-repeat 0 0 / contain;
	content: '';
	}
#inquiry .by_phone dt .tel_link a {
	color: #aa3977;
	text-decoration: none;
	}
#inquiry .by_phone dd {
	padding-top: 4px;
	margin-top: 10px;
	font-size: 12px;
	}
#inquiry .by_phone dd+dd {
	margin-left: 8px;
	}
#inquiry .by_phone dd span {
	padding: 3px 8px 2px;
	display: inline-block;
	position: relative;
	top: -2px;
	background-color: #aa3977;
	color: #fff;
	font-size: 11px;
	}

/* 768＜ --------------------------- */
@media (min-width: 768px) {

	#inquiry .form_wrap {
		max-width: 1020px;
		padding: 0 30px;
		}

	/* phase_state */
	.phase_state_input ul.phase_state li.input::after,
	.mw_wp_form_input ul.phase_state li.input::after,
	.phase_state_confirm ul.phase_state li.confirm::after,
	.mw_wp_form_confirm ul.phase_state li.confirm::after {
		border-left-color: #aa3977;
		}

	/* form_con */
	#inquiry .form_con dt {
		border-left: 1px solid #ddd;
		}
	#inquiry .form_con dd {
		border-right: 1px solid #ddd;
		}

	/* privacy */
	#inquiry .privacy {
		padding: 30px;
		}
	#inquiry .privacy h4 {
		font-size: 18px;
		}
	#inquiry .privacy h4+p {
		font-size: 14px;
		}
	#inquiry .privacy ul {
		padding: 9px;
		}
	#inquiry .privacy label {
		padding: 15px 6px;
		}

	/* error_area */
	#inquiry .error_area li {
		font-size: 14px;
		}

	/* error_msg */
	#inquiry p.error_msg {
		font-size: 14px;
		}

} /* end 768＜ */
/* ＞767 --------------------------- */
@media (max-width: 767px) {

	#inquiry .form_wrap {
		padding: 0 3%;
		margin-bottom: 48px;
		}
	#inquiry .form_wrap h2 {
		font-size: 22px;
		}
	#inquiry .form_wrap h3 {
		font-size: 18px;
		}
	#inquiry .form_wrap .lead p {
		font-size: 14px;
		}

	/* phase_state */
	#inquiry .phase_state {
		margin-bottom: 0;
		}
	#inquiry .phase_state li {
		font-size: 14px;
		}
	.phase_state_input ul.phase_state li.input::after,
	.mw_wp_form_input ul.phase_state li.input::after,
	.phase_state_confirm ul.phase_state li.confirm::after,
	.mw_wp_form_confirm ul.phase_state li.confirm::after {
		border-top-color: #aa3977;
		}

	/* form_con */
	#inquiry .form_con dl {
		margin-bottom: 30px;
		}
	#inquiry .form_con dt {
		padding: 6px 12px;
		margin-bottom: 12px;
		font-size: 14px;
		}
	.form_con dd ul:has(input[type='radio']),
	.form_con dd ul:has(input[type='checkbox']),
	.form_con dd ul.list_block:has(input[type='radio']),
	.form_con dd ul.list_block:has(input[type='checkbox']) {
		gap: 1px;
		}

	/* input */
	#inquiry .form_con label {
		padding: 6px 6px 5px;
		}
	#inquiry .form_con label:has(:checked) {
		background-color: #fae1ef;
		}
	#inquiry .form_con label span {
		padding-left: 24px;
		font-size: 14px;
		}

	/* privacy */
	#inquiry .privacy {
		padding: 24px 6%;
		}
	#inquiry .privacy h4 {
		font-size: 16px;
		}
	#inquiry .privacy h4+p {
		font-size: 13px;
		}
	#inquiry .privacy label {
		padding: 15px 6px;
		}

	/* error_area */
	#inquiry .error_area {
		padding: 24px 6%;
		margin-top: 15px;
		}
	#inquiry .error_area p {
		font-size: 14px;
		}
	#inquiry .error_area li {
		font-size: 13px;
		}

	/* error_msg */
	#inquiry p.error_msg {
		font-size: 13px;
		}

	/* btn */
	input[type='button'],
	input[type='submit'],
	button {
		width: 80%;
		padding: 18px 6px;
		font-size: 15px;
		}

/* by_phone */
#inquiry .by_phone {
	padding: 24px 6%;
	}
#inquiry .by_phone h3 {
	font-size: 16px;
	}
#inquiry .by_phone dt {
	margin-top: 6px;
	}
#inquiry .by_phone dt .tel_link {
	padding-left: 34px;
	font-size: 36px;
	}
#inquiry .by_phone dt .tel_link::before {
	width: 24px;
	height: 24px;
	}

} /* end ＞767 */



/* ================================================
confirm
================================================ */
ul.confirm_array li {
	padding-left: 1.5em;
	position: relative;
	}
ul.confirm_array li::before {
	width: 4px;
	height: 4px;
	display: block;
	position: absolute;
	top: 0.6em;
	left: 0.3em;
	background-color: #444;
	border-radius: 50%;
	content: '';
	}

/* ＞767 --------------------------- */
@media (max-width: 767px) {

	#inquiry.page_tpl_confirm .form_wrap h3 {
		text-align: center;
		}
	#inquiry.page_tpl_confirm .form_con dd {
		padding: 0 12px;
		}

} /* end ＞767 */



/* ================================================
thanks
================================================ */
#inquiry.thanks h2 {
	margin-top: 24px;
	}
#inquiry.thanks h2+p {
	margin-top: 18px;
	}
#inquiry.thanks p.return_top {
	margin-top: 24px;
	}
#inquiry.thanks p.return_top::before {
	width: 6px;
	height: 6px;
	margin-right: 12px;
	display: inline-block;
	position: relative;
	bottom: 0.1em;
	border-top: 1px solid #444;
	border-right: 1px solid #444;
	transform: rotate(45deg);
	content: '';
	}

/* 768＜ --------------------------- */
@media (min-width: 768px) {

	#inquiry.thanks .form_wrap {
		min-height: 360px;
		}

} /* end 768＜ */
