@charset "utf-8";

/* -------------------------------------------------- */
/* file   : base.css                                  */
/* update : 2019                                      */
/* -------------------------------------------------- */

/* -------------------------------------------------- */
/* 全デバイス共通(PC向け) */
/* --------------------------------------------------- */


section.step {
	margin-bottom: 40px;
	
}
section.step.thanks {
	margin-bottom: 0;
	
}
section.step .step_list {
	display: flex;
	justify-content: space-between;
	background: url("/request/img/bg_step_list.gif") repeat-x center center;
	width: 39.4%;
	margin: 0 auto 10px;
	
}
section.step .step_list li{
	width: 17.2%;
	max-width: 68px;

}
section.step .step_list li:last-child{

	margin-right: 0;

}

section.step .step_list li p{
	display: block;
	color: #1B1B1B;
	background-color: #FFEE43;
	border: solid 1px #FFEE43;
	width: 100%;
	border: solid 1px #1B1B1B;

    padding: 50%;
	border-radius: 50%;
	box-sizing: border-box;
	position: relative;

}
section.step .step_list li p span{
    position: absolute;
    left: 0;
    top: 50%;
    margin:  -0.98em 0 0;
    width: 100%;
	text-align: center;
	font-size: 2.14vw;
	font-weight: 500;
	font-family: 'Roboto', sans-serif;


}

section.step .step_list li p.select{
	color: #FFEE43;
	background-color: #1B1B1B;
	border: solid 1px #1B1B1B;

}

section.step .step_list02 {
	display: flex;
	justify-content: space-between;
	width: 39.4%;
	margin: 0 auto 45px;
}

section.step .step_list02 li{
	width: 17.2%;
	text-align: center;
	font-size: 1.14vw;
	font-weight: 700;
	line-height: 1;


}

section.step .lead{
	text-align: center;

}
section.step .lead .text01{
	font-size: 1.28vw;
	margin-bottom: 2%;
}
section.step .lead .text02{
	font-size: 0.92vw;
}
section.step .lead .text02 span{
	display: inline-block;
	color: #E70009;
	font-weight: 700;
	border: solid 2px #E70009;
	line-height: 1;
	font-size: 12px;
	padding: 2px 5px 3px;
	text-align: center;
}
section.form .form_list{
	margin-bottom: 35px;

}
section.form .form_list > li {
	background: #FFF;
	padding: 28px 20px;
	margin-bottom: 20px;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	font-size: 16px;
	line-height: 1.5;
}
section.form .form_list > li:last-child {
	margin-bottom: 0;

}
section.form .form_list > li.li01 {
	align-items: flex-start;

}
section.form .form_list > li.li02 {
	flex-wrap: wrap;

}

section.form .form_list li .box01 {
	width: 15%;
	min-width: 150px;
	margin-right: 1%;

	font-weight: 700;



}
section.form .form_list li .box02 {
	width: 4%;
	min-width: 40px;
	margin-right: 2.5%;

}
section.form .form_list li .box02 p {
	display: inline-block;
	color: #E70009;
	font-weight: 700;
	border: solid 2px #E70009;
	line-height: 1;
	font-size: 12px;
	padding: 2px 0px 3px;
	text-align: center;
	width: 100%;



}
section.form .form_list li .box03 {
	flex-grow: 1;
	width: 77.5%;


}
section.form .form_list li .box03 .ui-datepicker-trigger {
	max-width: 190px;
width: 100%;
height: 44px;
margin-left: 10px;
cursor: pointer;

}
section.form .form_list li .box03 svg {
fill:#FF711F;

}
.ui-widget-header {
	background: #FF711F url(images/ui-bg_highlight-soft_15_cc0000_1x100.png) 50% 50% repeat-x !important;

}

section.form .form_list li .box03 .address_box {
	display:block;
	/* justify-content: flex-start;
	align-items: center; */
	margin-bottom: 30px;

}
section.form .form_list li .box03 .address_box > p {
	margin-right: 30px;


}
section.form .form_list li.li01 .box03 p {
	font-weight: 700;
	color:#868686;
}
section.form .form_list li .box03 .box_text01 {
	font-size: 13px;
	padding: 0 10px;
}
section.form .form_list li .box03 .box_text01 p {
	margin-left: 1em;
	font-weight: 500;
	color: #1B1B1B;
	
}
section.form .form_list li .box03 .box_text01 p span {
	margin-left: -1em;
	
}
section.form .form_list li .box03 .margin_box {
	margin-bottom: 30px;
}
section.form .form_list li.li02 .box01  {
	margin-right: 15px;
}
section.form .form_list li.li02 .box03  {
	width: 100%;
	margin-top: 25px;
}



section.form .form_list li .box03 .date_list li  {
	margin-bottom: 15px;

}
section.form .form_list li .box03 .date_list li:last-child  {
	margin-bottom: 0;

}

section.form .form_list li.li02 .box03 .check_wrap  {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
section.form .form_list li.li02 .box03 .check_wrap li  {
	margin-right: 30px;
	margin-bottom: 15px;

}
section.form .form_list li .box03 .radio_wrap  {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
section.form .form_list li .box03 .radio_wrap li  {
	margin:5px 30px 5px 0;

}
section.form .form_list li .box03 .radio_wrap li .radio02-input + label  {
	margin-right: 0;
	display: block;

}


section.form .form_list li input[type="text"]{
	border: none;
	box-sizing: border-box;
	width: 100%;
	border-radius: 5px;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	font-weight: 500;
	-webkit-appearance : none;
	-webkit-tap-highlight-color : rgba(0,0,0,0);
	padding: 10px;4
	box-sizing: border-box;
}
section.form .form_list li input[type="text"][name="zip"] {
	width: 20%;
}
section.form .form_list li input.input01_tel {
	width: 15%;
}

section.form .form_list li input.input01_zip {
	width: 20%;
}
section.form .form_list li .zip_btn {
	border: none;
	background: #222 url(../img/icon_zip_btn.png) no-repeat 95% center;
	color:#FFF;
	text-align: center;
	width: 30%;
	min-width: 190px;
	padding: 10px 0 12px;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	font-weight: 500;
	line-height: 1;
	cursor: pointer;
}
section.form .form_list li .zip_btn:hover {
	opacity: 0.7;

}

section.form .form_list li input.input01[type="text"]{

	width: 100%;
	max-width: inherit;
}
section.form .form_list li input.input001[type="text"]{

	width: 25%;
	max-width: inherit;
}

section.form .form_list li textarea{
	border: none;
	box-sizing: border-box;
	width: 100%;
	height: 150px;
	padding: 0;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 16px;
	font-weight: 500;
	-webkit-appearance : none;
    -webkit-tap-highlight-color : rgba(0,0,0,0);
}

section.form .form_list li input[type="text"]::placeholder,
section.form .form_list li textarea::placeholder{
	color: #C3C3C3;
	font-size: 16px;
	font-weight: 500;
}

section.form .form_list li .radio02-input{
  display: none;
}
section.form .form_list li .radio02-input + label{
  padding-left: 30px;
  position:relative;
  margin-right: 30px;
  cursor: pointer;
}
section.form .form_list li .radio02-input + label::before{
  content: "";
  display: block;
  position: absolute;
  top: 3px;
  left: 0;
  width: 18px;
  height: 18px;
  border: 1px solid #DADADA;
  background: #DADADA;
  border-radius: 50%;
}
section.form .form_list li .radio02-input:checked + label{
  color: #299738;
}
section.form .form_list li .radio02-input:checked + label::after{
  content: "";
  display: block;
  position: absolute;
  top: 6px;
  left: 3px;
  width: 14px;
  height: 14px;
  background: #299738;
  border-radius: 50%;
}

section.form .form_list li select {
	outline: none;
	text-indent: 0;
	text-overflow: '';
	background: none transparent;
	vertical-align: middle;
	font-size: inherit;
	color: inherit;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
section.form .form_list li select option {
	padding: 0;

}
section.form .form_list li select::-ms-expand {
 display: none;
}
section.form .form_list li select:-moz-focusring {
 color: transparent;
}
section.form .form_list li .select-wrap {
	position: relative;
	display: inline-block;
	width: 40%;
	/* max-width: 200px; */
}
section.form .form_list li .select-wrap.select01 {
	width: 40%;
	max-width: inherit;
}



section.form .form_list li .select-wrap:before {
	z-index: 1;
	position: absolute;
	right: 0;
	top: 50%;
	margin-top: -3px;
	content: "";
	pointer-events: none;
	background-image: url("/request/img/icon_select.png");
	background-repeat: no-repeat;
	background-size: 12px auto;
	width: 12px;
	height: 8px;
}
section.form .form_list li .select-wrap select {
	width: 100%;
	border: none;
	box-sizing: border-box;
	padding: 5px 25px 5px 0;
	cursor: pointer;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
}

section.form .form_list li .select_box {
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
section.form .form_list li .select_box .select-wrap {
	width: 8%;
	margin-right: 5px;
}
section.form .form_list li .select_box .select-wrap:first-of-type {
	width: 13%;
}

section.form .form_list li .select_box p {
	margin-right: 15px;
}
section.form .form_list li .select_box .select-wrap select {
}


section.form .form_list li .checkbox01-input{
  display: none;
}
section.form .form_list li .checkbox01-parts{
  padding-left: 24px;
  position:relative;
  margin-right:0;
}
section.form .form_list li .checkbox01-parts::before{
  content: "";
  display: block;
  position: absolute;
  top: 5px;
  left: 0;
  width: 18px;
  height: 18px;
  background: #DADADA;

}
section.form .form_list li .checkbox01-input:checked + .checkbox01-parts::before{
  background: #299738;
}
section.form .form_list li .checkbox01-input:checked + .checkbox01-parts::after{
  content: "";
  display: block;
  position: absolute;
  top: 5px;
  left: 4px;
  width: 6px;
  height: 10px;
  transform: rotate(45deg);
  border-bottom: 3px solid #FFF;
  border-right: 3px solid #FFF;
}

section.form .form_btn{
	text-align: center;
}
section.form .form_btn button{
	display: inline-block;
	text-align: center;
	background: #E70009;
	color: #FFF;
	font-size: 24px;
	font-weight: 700;
	width: 400px;
	padding: 32px 0;
	font-family: 'Noto Sans JP', sans-serif;
	border: none;
	transition: 0.5s;
	cursor: pointer;
	border-radius: 8px;
}
section.form .form_btn button:hover{
	opacity: 0.7;

}

section.form .form_btn.back{
	text-align: center;
	margin-top: 30px;
}
section.form .form_btn.back button{
	display: inline-block;
	text-align: center;
	background: #CDCDCD;
	color: #222;
	font-size: 20px;
	font-weight: 700;
	width: 250px;
	padding: 25px 0;
	font-family: 'Noto Sans JP', sans-serif;
	border: none;
	transition: 0.5s;
}
section.form .form_btn.back button:hover{
	opacity: 0.7;

	transition: 0.5s;
}

@media screen and (min-width:1401px){
	
section.step .step_list li p span{
	font-size: 30px;
}
section.step .step_list02 li{
	font-size: 16px;
}
section.step .lead .text01{
	font-size: 18px;
}
section.step .lead .text02{
	font-size: 13px;
}

}



/* ---------------全デバイス共通(pc)-end--------------------- */
/*----------------------------------------------------------*/
/* tablet用のCSS */
/*----------------------------------------------------------*/
@media screen and (min-width:560px){/* tablet */

  /* -------------------tablet END------------------------- */}

/*----------------------------------------------------------*/
/* sp用のCSS */
/*----------------------------------------------------------*/



@media screen and (max-width: 559px){/* sp */

	section.step {
		margin-bottom: 25px;
	
	}
	section.step .step_list {
	
		width: 70%;
		margin: 0 auto 5px;
	
	}
	section.step .step_list li{
		width: 18%;
		max-width: inherit;
	
	}
	
	
	
	section.step .step_list li p span{
	
		margin:  -0.92em 0 0;
		font-size: 20px;
	
	}
	
	
	
	section.step .step_list02 {
	
		width: 70%;
		margin: 0 auto 25px;
	}
	
	section.step .step_list02 li{
		width: 18%;
		font-size: 14px;
	}
	
	section.step .lead{
		text-align: left;
	}
	section.step .lead .text01{
		font-size: 14px;
		margin-bottom: 10px;
	}
	section.step .lead .text02{
		font-size: 12px;
	}

	section.form .form_list{
		margin-bottom: 25px;
	
	}
	section.form .form_list > li {
		background: #FFF;
		padding: 15px 15px 8px;
		margin-bottom: 15px;
		font-size: 13px;
		flex-wrap: wrap;
	
	}
	section.form .form_list > li:last-child {
		margin-bottom: 0;
	
	}
	
	
	section.form .form_list li .box01 {
		width: auto;
		min-width: inherit;
		margin-right: 10px;
	
	
	}
	
	section.form .form_list li .box02 {
		width: auto;
		min-width: inherit;
		margin-right: 0;
		
	
	}
	section.form .form_list li .box02 p {
		font-size: 10px;
		padding: 1px 5px 2px;
		display: inline-block;
		line-height: 1;
	
	
	
	}
	section.form .form_list li .box03 {
		flex-grow: 1;
		width: 100%;
		margin-top: 10px;
		font-size: 16px;
	
	
	}
	
	section.form .form_list li .box03 .ui-datepicker-trigger {
		max-width: 140px;
	width: 100%;
	height: 44px;
	margin-left: 10px;
	cursor: pointer;
	
	}
	section.form .form_list li .box03 .address_box {
		display: block;
		margin-bottom: 15px;
	
	}
	section.form .form_list li .box03 .address_box > p {
		margin-right: 30px;
	
	
	}
	section.form .form_list li.li01 .box03 p {
		font-size:13px;
	
	
	
	}
	section.form .form_list li .box03 .margin_box {
		margin-bottom: 15px;
	}
	section.form .form_list li.li02 .box01  {
		margin-right: 15px;
	}
	section.form .form_list li.li02 .box03  {
		width: 100%;
		margin-top: 15px;
	}
	section.form .form_list li .box03 .box_text01 {
		font-size: 11px;
		padding: 0;
	}
	
	section.form .form_list li.li02 .box03 .check_wrap  {
		display: flex;
		justify-content: flex-start;
		flex-wrap: wrap;
	}
	section.form .form_list li.li02 .box03 .check_wrap li  {
		margin-right: 15px;
		margin-bottom: 15px;
	
	}
	
	section.form .form_list li .box03 .radio_wrap  {
		display: flex;
		justify-content: flex-start;
		flex-wrap: wrap;
	}
	section.form .form_list li .box03 .radio_wrap li  {
		margin:0 15px 15px 0;
	
	}
	section.form .form_list li .box03 .radio_wrap li .radio02-input + label  {
		margin-right: 0;
		display: block;
	
	}
	
	
	section.form .form_list li input[type="text"]{
	
		width: 100%;
		max-width: inherit;
	
	}
	section.form .form_list li input.input001[type="text"]{
	
		width: 45%;
		max-width: inherit;
	}
	section.form .form_list li input.input01[type="text"]{
	
		width: 100%;
		max-width: inherit;
	}
	section.form .form_list li input[type="text"][name="zip"] {
		width: 70%;
	}
	section.form .form_list li input.input01_tel {
		width: 23%;
	}
	section.form .form_list li input.input01_zip {
		width: 70%;
	}
	section.form .form_list li .zip_btn {
		width: 100%;
		min-width: 190px;
		padding: 6px 0 8px;
		font-family: 'Noto Sans JP', sans-serif;
		font-size: 12px;
	
	}
	section.form .form_list li .zip_btn:hover {
		opacity: 1;
	
	}
	
	section.form .form_list li textarea{
		height: 100px;
	
	}
	
	section.form .form_list li .select-wrap {
		width: 100%;
		/* max-width: 200px; */
	}
	section.form .form_list li .select-wrap.select01 {
		width: 100%;
	}
	section.form .form_list li .select_box .select-wrap {
		width: 15%;
		margin-right: 1%;
	}
	section.form .form_list li .select_box .select-wrap:first-of-type {
		width: 20%;
	}
	
	section.form .form_list li .select_box p {
		margin-right: 2%;
	}
	
	section.form .form_list li .radio02-input + label{
	  padding-left: 20px;
	  margin-right: 15px;
	  font-size: 14px;
	  display: inline-block;
	  padding-bottom: 5px;
	
	}
	section.form .form_list li .radio02-input + label::before{
	
	  top: 3px;
	  left: 0;
	  width: 14px;
	  height: 14px;
	}
	
	
	
	section.form .form_list li .radio02-input:checked + label::after{
	
	  top: 6px;
	  left: 3px;
	  width: 10px;
	  height: 10px;
	
	}
	
	section.form .form_list li .checkbox01-input{
	  display: none;
	}
	section.form .form_list li .checkbox01-parts{
	  padding-left: 20px;
	  position:relative;
	  margin-right:0;
		font-size: 14px;
		display: block;
	}
	section.form .form_list li .checkbox01-parts::before{
	
	  top: 5px;
	  left: 0;
	  width: 14px;
	  height: 14px;
	  background: #DADADA;
	
	}
	section.form .form_list li .checkbox01-input:checked + .checkbox01-parts::before{
	  background: #299738;
	}
	section.form .form_list li .checkbox01-input:checked + .checkbox01-parts::after{
	  top: 4px;
	  left: 3px;
	  width: 6px;
	  height: 10px;
	}
	
	
	section.form .form_btn{
		text-align: center;
	}
	section.form .form_btn button{
		background: #E70009;
		color: #FFF;
		font-size: 17px;
		width: 100%;
		padding: 20px 0;
		transition: inherit;
	}
	section.form .form_btn button:hover{
		opacity: 1;

	}
	section.form .form_btn.back{
		margin-top: 20px;
	}
	section.form .form_btn.back button{
		background: #CDCDCD;
		color: #222;
		font-size: 16px;
		width: 60%;
		padding: 15px 0;
	
		transition: none;
	}
	section.form .form_btn.back button:hover{
		background: #CDCDCD;
		color: #222;
		transition: none;
	}
		
	
/* ---------------------SP END----------------------------- */}






