@charset "utf-8";
.second_wrap {
		max-width: 640px;
		margin: 0 auto;
		padding: 0 20px;
}
.main_contents {
		padding-top: 40px;
		padding-bottom: 180px;
}
.form_hd {
		font-size: 26px;
		line-height: 1.5;
		text-align: center;
		margin: 0 0 40px;
		padding-bottom: 20px;
		border-bottom: 1px solid #d2d2d2;
}
@media(max-width: 767px) {
		.form_hd {
				font-size: 22px;
				margin: 0 0 15px;
				padding-bottom: 15px;
		}
}
.contact_wrap {
		max-width: 640px;
		margin: 0 auto;
}
.contact_lead {
		line-height: 1.8;
		margin: 0 0 50px;
}
.contact_lead2 {
		line-height: 1.8;
		margin: 0 0 25px;
}
.attention {
		margin-left: 1em;
		line-height: 1.8;
		color: #ff0000;
		position: relative;
		margin-bottom: 40px;
}
.attention span {
		display: block;
		position: absolute;
		top: 0;
		left: -1em;
}
@media(max-width: 767px) {
		.contact_lead_must {
				font-size: 14px;
				margin: 0 0 15px;
		}
		.attention br {
				display: none;
		}
}
.contact_form {
		margin: 0 0 30px;
}
.mw_wp_form_preview .contact_form {
		padding-bottom: 20px;
		margin: 0 0 20px !important;
		border-bottom: 1px solid #ccc;
}
.contact_form.alignTop {
		display: flex;
		align-items: flex-start;
}
.contact_form dt {
		position: relative;
		font-size: 16px;
		font-weight: 600;
		margin: 0 0 15px;
}
.contact_form.alignTop dt {
		padding-top: 10px;
}
.must {
		color: #e30000;
}
dt .must {
		margin-left: 2px;
		color: #e30000;
}
.contact_form dd {
		flex: 1;
}
@media(max-width: 767px) {
		.contact_form dt {
				font-size: 16px;
				margin: 0 0 10px;
		}
}
/* ==================== */
input[type="number"]::-webkit-outer-spin-button, 
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
    -moz-appearance:textfield;
}

dd input[type="text"], dd input[type="number"], input[type="email"], input[type="submit"], input[type="button"], button, textarea, dd select {
		-webkit-appearance: none;
		border-radius: 0;
		padding: 0;
		vertical-align: middle;
}
dd input[type="text"], dd input[type="number"], dd input[type="email"], dd textarea {
		padding: 10px;
		width: 100%;
		box-sizing: border-box;
		background: rgba(255, 255, 255, 0);
		border: 1px solid #ccc;
		border-radius: 4px;
		height: 54px;
		color: #1E1E1E;
		font-size: 18px;
}
dd input.formXS[type="text"], dd input.formXS[type="number"] {
		width: 100px;
		text-align: right;
		font-size: 22px;
		font-weight: bold;
}

dd select {
		padding: 10px;
		box-sizing: border-box;
		background: rgba(255, 255, 255, 0);
		border: 1px solid #ccc;
		border-radius: 0px;
		color: #282828;
		font-size: 18px;
}
@media(max-width: 767px) {
		dd input[type="text"], dd input[type="number"], dd input[type="email"], dd textarea, dd select {
				padding: 5px 0;
				height: 50px;
		}
		dd input[type="text"], dd input[type="number"], dd input[type="email"], dd textarea, dd select {
				font-size: 18px;
		}
}
dd textarea {
		height: 200px;
		resize: none;
		font-family: 'Noto Sans JP', sans-serif;
}
@media(max-width: 767px) {
		dd textarea {
				height: 200px;
		}
}
/* ==================== */
dd .checkGr {
		padding: 15px 0;
}
.mwform-checkbox-field label, .mwform-radio-field label {
		cursor: pointer;
		position: relative;
		z-index: 5;
		display: inline-block;
}
dd label input[type="checkbox"] + span, dd label input[type="radio"] + span {
		position: relative;
		padding: 0 0 0 27px;
		cursor: pointer;
		display: inline-block;
}
dd label input[type="checkbox"], dd label input[type="radio"] {
		position: absolute;
		top: 0;
		left: 0;
		opacity: 0;
}
dd label input[type="checkbox"] + span::before, dd label input[type="checkbox"] + span::after, dd label input[type="radio"] + span::before, dd label input[type="radio"] + span::after {
		display: block;
		content: '';
		position: absolute;
		top: 0px;
		left: 0;
		box-sizing: border-box;
}
dd label input[type="checkbox"] + span::before, dd label input[type="radio"] + span::before {
		position: absolute;
		content: "";
		top: calc(50% - 9px);
		left: 0;
		width: 20px;
		height: 20px;
		background: #fff;
		border: 1px solid #000;
		box-sizing: border-box;
}
dd label input[type="radio"] + span::before {
		border-radius: 50%;
}
dd label input[type="checkbox"]:checked + span::after {
		position: absolute;
		content: '';
		top: 4px;
		left: 3px;
		width: 16px;
		height: 6px;
		border-left: 3px solid #14b46e;
		border-bottom: 3px solid #14b46e;
		transform: rotate(-45deg);
		box-sizing: content-box;
}
dd label input[type="radio"]:checked + span::after {
		content: '';
		display: block;
		position: absolute;
		top: 8px;
		left: 5px;
		width: 10px;
		height: 10px;
		background: #14b46e;
		border-radius: 50%;
}
.mw_wp_form .horizontal-item + .horizontal-item {
		margin-left: 25px !important;
}
@media(max-width: 767px) {
		dd label input[type="radio"]:checked + span::after {
				top: 6px;
		}
}
.select_item {
		position: relative;
		border: none;
		vertical-align: middle;
		padding-right: 30px;
		width: 230px;
}
.select_item::after {
		content: '';
		display: block;
		position: absolute;
		top: calc(50% - 8px);
		right: 45px;
		width: 9px;
		height: 9px;
		border-right: 1px solid #000;
		border-bottom: 1px solid #000;
		transform: rotate(45deg);
}
.select_item select {
		appearance: none;
		cursor: pointer;
		width: 100%;
		box-sizing: border-box;
		padding: 10px;
		border: 1px solid #dcdcdc;
}
@media(max-width: 767px) {
		dd input[type="text"], dd input[type="number"], dd input[type="email"], dd textarea, dd select {
				padding: 10px;
		}
}
.form_flex {
		display: flex;
		flex-wrap: wrap;
}
.form_item {
		display: flex;
		align-items: center;
}
.form_flex .form_item input {
		width: 60px;
		border: 1px solid #dcdcdc;
		height: 40px;
		padding: 0 10px;
		text-align: right;
		font-size: 18px;
}
.form_flex .form_item {
		width: 33%;
		margin: 0 0 10px;
}
.form_item .formItemFirst {
		display: block;
		width: 120px;
}
.form_flex .form_item:nth-child(2) .formItemFirst, .form_flex .form_item:nth-child(5) .formItemFirst {
		width: 145px;
}
.form_flex .form_item:nth-child(3) .formItemFirst {
		width: auto;
		margin-right: 5px;
}
.form_item input {
		margin-right: 10px;
}
.form_vertical .form_item input {
		width: 125px;
		border: 1px solid #dcdcdc;
		height: 40px;
		padding: 0 10px;
		text-align: right;
		font-size: 16px;
}
.form_vertical .form_item:first-child {
		margin: 0 0 10px;
}
.formCostHd {
		margin-right: 5px;
}
/* ==================== */
.error_item .error {
		font-size: 14px !important;
		color: #e30000 !important;
		font-weight: 600;
		position: relative;
		margin: -5px 0 10px
}
.error_item.extra .error {
		margin-bottom: 20px !important;
}
.nml + .error_item .error {
		margin-top: 10px !important;
}
.kibo_right_upper .error_item .error {
		margin: 10px 0;
}
.error_static .error {
		font-size: 13px !important;
		color: #14b46e !important;
		padding-top: 3px;
		font-weight: 600;
}
::placeholder {
		font-family: 'Noto Sans JP', sans-serif;
		font-size: 15px;
		color: #999;
}
@media(max-width: 767px) {
		::placeholder {
				font-size: 14px;
		}
}
/* ==================== */
.send_btn_flex {
		display: flex;
		align-items: center;
		justify-content: center;
		margin-top: 60px;
}
.btn_item {
		width: 270px;
		height: 54px;
		position: relative;
		box-sizing: border-box;
		text-align: center;
}
.contactSecond .btn_item {
		margin: 0 13px;
}
.btn_item input {
		width: 270px;
		height: 50px;
		border-radius: 8px;
		cursor: pointer;
		font-family: "Noto Sans JP", sans-serif;
		font-size: 16px;
		font-weight: 600;
		text-align: center;
		color: #fff;
		background: #009d3c;
		border: 1px solid #009d3c;
}
.btn_item input.btn_edit {
		background: #deebd6;
		border: 1px solid #deebd6;
		color: #666;
}
.btn_item::after {
		content: '';
		display: block;
		position: absolute;
		top: calc(50% - 6px);
		right: 20px;
		width: 11px;
		height: 11px;
		pointer-events: none;
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 11px;
		background-image: url(../n_images/btn_arrow_wht.png);
		transition: background 0.2s;
		z-index: 5
}
.btn_item.item_edit::after {
		background-image: url("../n_images/btn_arrow_back_grn.png");
		right: inherit;
		left: 20px;
}
@media (hover: hover) {
		.btn_item input:hover {
				background: #fff;
				color: #009d3c;
		}
		.btn_item:hover::after {
				background-image: url(../n_images/btn_arrow_grn.png) !important;
		}
		.btn_item.item_edit:hover::after {
				background-image: url("../n_images/btn_arrow_back_grn.png") !important;
		}
}
@media (hover: hover) {
		.btn_item button:hover {
				background: #1e1e1e;
				color: #fff;
		}
		.btn_item:hover::after {
				background-image: url("../images/btn_arw_right_wht.png");
		}
}
.btn_item.item_edit::before {
		right: inherit;
		left: 0;
}
.btn_item button {
		background: none;
		border: none;
		cursor: pointer;
		font-size: 15px;
		font-family: 'Noto Sans JP', sans-serif;
		text-align: center;
		width: 100%;
		height: 60px;
		display: flex;
		align-items: center;
		justify-content: center;
		border-radius: 40px;
}
@media(max-width: 767px) {
		.send_btn_flex {
				display: flex;
				flex-direction: column-reverse;
				max-width: 270px;
				margin: 40px auto 0;
		}
		.btn_item button {
				font-size: 14px;
		}
		.btn_item.item_edit, .btn_item.item_send {
				width: 100%;
		}
		.btn_item.item_edit button, .btn_item.item_send button, .btn_item.item_edit input, .btn_item.item_send input {
				width: 100%;
		}
		.btn_item.item_send {
				margin-bottom: 10px;
		}
}
@media(max-width: 374px) {
		.btn_item button {
				font-size: 14px;
		}
		.btn_item.item_edit, .btn_item.item_send {
				width: 135px;
		}
		.btn_item.item_edit button, .btn_item.item_send button {
				width: 135px;
		}
}
.btn_item.item_edit button {
		text-align: center;
		padding-left: 20px;
		padding-right: 20px;
}
.btn_item.item_send button {
		text-align: center;
		padding-left: 20px;
		padding-right: 20px;
}
@media(max-width: 374px) {
		.btn_item.item_edit button {
				padding-left: 75px;
		}
		.btn_item.item_send button {
				padding-right: 75px;
		}
}
/* disAbled */
.dis_abled {
		position: relative;
}
/* ===== 分岐 =============== */
/* input */
.mw_wp_form_input .item_edit, .mw_wp_form_input .item_send {
		display: none;
}
.mw_wp_form_input .item_complete {
		display: none;
}
.mw_wp_form_confirm .item_complete {
		display: none;
}
.mw_wp_form_confirm .fileLeadBtn {
		display: none !important;
}
.mw_wp_form_input .contactSecond {
		display: none;
}
/* confirm */
.mw_wp_form_confirm .photo_group {
		display: none !important
}
.mw_wp_form_confirm .alert_wrap {
		display: none !important
}
.mw_wp_form_confirm .kibo_flex.extra {
		margin-bottom: 0 !important;
}
.mw_wp_form_confirm .fileCol.last {
		margin-bottom: 0 !important;
}
.mw_wp_form_confirm .error_item {
		display: none !important;
		margin: 0 !important;
		position: static !important;
		top: 0 !important;
		font-size: 1px !important;
}
.mw_wp_form_confirm .item_input {
		display: none;
}
.mw_wp_form_confirm .kibo_hd {
		display: block;
		width: 90px;
		height: auto !important
}
.mw_wp_form_confirm .kibo_right {
		flex: 1;
		display: flex;
		align-items: center;
}
.mw_wp_form_confirm .kibo_right_upper {
		margin-right: 1.5em;
		margin-bottom: 0 !important;
		width: auto !important;
}
.mw_wp_form_confirm .kibo_right_bottom {
		margin: 0 !important
}
.mw_wp_form_confirm .kibo_flex {
		margin: 0 0 15px;
}
.mw_wp_form_confirm .fileLead {
		display: none;
}
.mw_wp_form_confirm .contact_form.comment dd {
		line-height: 1.7;
}
.mw_wp_form_confirm .notes_gr {
		display: none;
}
.mw_wp_form_confirm .kibo_right_upper::after {
		display: none;
}
.mw_wp_form_confirm .contact_sb, .mw_wp_form_confirm .contact_policy, .mw_wp_form_confirm .agree_lead {
		display: none;
}
.mw_wp_form_confirm .agree_check_center {
		display: none;
}
.mw_wp_form_confirm .select_item::after {
		display: none;
}
.mw_wp_form_confirm .dis_abled::after {
		display: none;
}
.mw_wp_form_confirm .item_confirm {
		display: none;
}
.mw_wp_form_confirm .contactFirst {
		display: none !important;
}
.mw_wp_form_confirm .send_btn_flex {
		display: flex;
		justify-content: center;
}
.mw_wp_form_confirm .send_btn_flex .item_edit {
		margin-right: 10px;
}
.mw_wp_form_confirm .send_btn_flex .item_send {
		margin-left: 10px;
}
@media(max-width: 767px) {
		.mw_wp_form_confirm .send_btn_flex .item_edit {
				margin-right: 5px;
		}
		.mw_wp_form_confirm .send_btn_flex .item_send {
				margin-left: 15px;
		}
}
input:-webkit-autofill {
		transition: background-color 100000s ease-in-out 0s;
}
.zipCol {
		display: flex;
		align-items: center;
		margin: 0 0 15px;
}
.addressCol {
		margin: 0 0 15px;
}
.zipColHdLeft {
		margin-right: 5px;
}
.zipColRight {
		width: 210px;
}
.kibo_flex {
		display: flex;
		align-items: flex-start;
		margin: 0 0 25px;
}
.kibo_hd {
		width: 100px;
		height: 54px;
		display: flex;
		align-items: center;
}
.kibo_input {
		flex: 1
}
.kibo_right_upper {
		margin: 0 0 15px;
		position: relative;
		z-index: 10;
		width: 220px;
}
.kibo_right_upper::after {
		content: '';
		display: block;
		position: absolute;
		top: 16px;
		right: 10px;
		width: 21px;
		height: 21px;
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 21px;
		background-image: url("../n_images/icoCalendar.png");
		pointer-events: none;
}
.notes_gr {
		list-style: none;
		margin: 10px 0 15px 1em;
		font-size: 14px;
}
.notes_gr.extra {
		margin-bottom: 25px;
}
.notes_gr li {
		line-height: 1.6;
		margin: 0 0 5px;
		position: relative;
}
.notes_gr li span {
		display: block;
		position: absolute;
		top: 0;
		left: -1em;
}
.kibo_right_bottom {
		margin: 0 0 10px;
}
@media(max-width: 767px) {
		.kibo_flex {
				display: block;
		}
		.kibo_hd {
				width: auto;
				height: auto;
				display: block;
				margin: 0 0 10px;
		}
}
/* ========== */
.imgattached {
		display: flex;
		align-items: center;
		position: relative;
		flex: 1;
}
.imgattached input[type=file] {
		display: none !important;
}
.imgattached label {
		background: #deebd6;
		color: #000;
		border-radius: 4px;
		padding: 8px 30px;
		cursor: pointer;
		text-align: center;
		margin-right: 15px;
}
.mw_wp_form_preview .imgattached {
		padding: 0;
}
.mw_wp_form_preview .imgattached label {
		background: none;
		color: #000;
		border-radius: 0;
		padding: 0;
		pointer-events: none;
}
.mw_wp_form_preview .labelInner {
		display: none
}
.imgattached label .mwform-file-delete {
		display: none;
}
.mw_wp_form_preview .imgattached_delete {
		display: none !important;
}
.imgattached_status {
		color: #000;
		font-family: Arial, Helvetica, "sans-serif";
		font-weight: normal;
}
.imgattached_delete {
		position: absolute;
		right: -50px;
		display: block;
		width: 30px;
		height: 30px;
		display: none;
		cursor: pointer;
}
.imgattached_delete::before, .imgattached_delete::after {
		content: '';
		display: block;
		position: absolute;
		top: 14.5px;
		left: 4px;
		width: 22px;
		height: 1px;
		pointer-events: none;
		background: #000;
}
.imgattached_delete::before {
		transform: rotate(45deg)
}
.imgattached_delete::after {
		transform: rotate(-45deg)
}
.imgattached:has(.mw-wp-form_file input[type="hidden"]) .imgattached_status {
		display: none;
}
.imgattached:has(.mw-wp-form_file input[type="hidden"]) .label-inner {
		opacity: 0
}
@media(max-width: 767px) {
		.imgattached {
				display: block;
				margin: 0 0 20px;
		}
		.imgattached_delete {
				right: inherit;
				left: 140px;
				top: -4px;
		}
		.imgattached_status {
				margin: 15px 0 0;
		}
}
.fileCol {
		margin: 0 0 15px;
		display: flex;
		align-items: center;
}
@media(max-width: 767px) {
		.fileCol {
				margin: 0 0 10px;
				display: flex;
				align-items: flex-start;
		}
}
.fileCol_hd {
		width: 5em;
		font-weight: 600;
}
.fileLeadFlex {
		display: flex;
		margin: 0 0 10px;
}
.fileLead {
		margin: 0;
		flex: 1;
}
.fileLeadBtn {
		margin-left: 20px;
		width: 100px;
		height: 80px;
		position: relative;
		overflow: hidden
}
.fileLeadBtn figure {
		opacity: 0;
		position: relative;
		z-index: 10;
		width: 100px;
		height: 80px;
		cursor: pointer
}
.fileLeadBtn figure img {
		width: 100%;
		height: auto;
}
.fileLeadBtn::before, .fileLeadBtn::after {
		content: '';
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		width: 100px;
		height: 80px;
		box-sizing: border-box;
}
.fileLeadBtn::after {
		border: 1px solid #009d3c;
		border-radius: 10px;
		background: #fff;
		z-index: 1;
		pointer-events: none;
}
.fileLeadBtn .txt {
		position: absolute;
		top: 0;
		left: 0;
		width: 100px;
		height: 80px;
		text-align: center;
		display: flex;
		justify-content: center;
		align-items: center;
		z-index: 2;
		pointer-events: none;
		color: #009d3c;
		font-weight: 600;
		line-height: 1.6;
}
.fileLeadBtn .txt p {
		text-align: center;
		color: #009d3c;
		font-weight: 600;
		line-height: 1.6;
}
@media(max-width: 767px) {
		.fileLeadBtn {
				margin-left: 10px;
				width: 90px;
				height: 70px;
		}
		.fileLeadBtn::before, .fileLeadBtn::after {
				width: 90px;
				height: 70px;
		}
		.fileLeadBtn .txt {
				width: 90px;
				height: 70px;
		}
}
@media (hover: hover) {
		.fileLeadBtn:hover::after {
				background: #009d3c;
				color: #fff;
		}
		.fileLeadBtn:hover .txt p {
				color: #fff !important;
		}
}
.alert_wrap {
		margin-top: 50px;
		padding-top: 30px;
		border-top: 1px solid #ccc;
}
ul.alert {
		margin-left: 1em;
}
ul.alert li {
		list-style: none;
		position: relative;
		line-height: 1.6;
		font-size: 85%;
		margin: 0 0 5px;
}
ul.alert li::after {
		content: '・';
		display: block;
		position: absolute;
		top: 0;
		left: -1em;
}