@charset "UTF-8";

.form_block{
	background-image: url(../images/form_bg.png);
	background-repeat: no-repeat;
	background-position: bottom;
	background-size: cover;
	padding:5% 2%;
}

.form_block .container{
	padding: 3%;
	text-align: center;
	position: relative;

}
img.formTitle{
	font-size: 6.3vw;
	font-weight: bold;
	color: #1b4965;
	margin-bottom: 0;
	display: inline-block;
}
.fukidashi{
	vertical-align: text-bottom;
	padding: 0 1rem 1rem;
	position: absolute;
	top: -50px;
}

.form-contents{
	padding:3%;
	background-color: #f6f4bb;
	border:solid 2px #1b4965;


}
p.question_p{
	font-weight: bold;
	font-size: 120%;
}

form input.step-radio {
	display: none;
}
form .col-sm-6 label{
	display: block;
	margin-bottom: 1.5rem;
}
form .form-group{
	text-align: left;
}
form .form-group label{
	display: block;
	margin:1.3rem 0 .2rem;
	font-weight: bold;
}
.form-contents .form-control{
	height: 50px;
}

.attention03{
	font-size: 100%
}
.form-group label span {
	display: inline-block;
	color: white;
	background-color: red;
	font-size: 80%;
	padding: 1px 10px;
	border-radius: 5px;
	margin-left: 5px;
	vertical-align: text-bottom;
}


label .btn{
	background:#1b4965;
	color: #fff;
	padding:5% 15%;
	font-weight: bold;
	box-shadow: 0px 2px 2px 0px #843b3bcc;
}
label .btn:hover{
	color: white;
	background:#102e40;
}
.end-btn{
	background:#1b4965;
	color: #fff;
	padding:3% 5%;
	font-size: 120%;
	font-weight: bold;
	box-shadow: 0px 2px 2px 0px #843b3bcc;
}
a.end-btn:hover{
	color: white;
	background:#102e40;
}
.error-box{
	padding: 3% 3% 2%;
	border: solid 2px red;
	border-radius: 5px;
	background: white;
	color: red;
	font-weight: bold;
	margin: 2% auto;
	font-size: 95%;
}
.result {
	text-align: center;
	background: #fff;
	padding: 2%;
	border-radius: 5px;
	border: 2px solid red;
	margin-bottom: 2%;
	font-weight: bold;
}
.result p{
	font-size: 130%;
	color: red;
	margin-bottom: .5rem;
}


.tel-box{
	display: inline-block;
	vertical-align: bottom;
	width: 25%;
}

a.tel-btn{
	padding:2% 10%;
	margin: 1.5rem;
	background: #3d5977;
	color:#fff;
	box-shadow: 0px 2px 2px 0px #9E9E9E;
}



.modal-btn{
	background-color: #fff;
	background-image: url(../images/arrow_d.png);
	background-repeat: no-repeat;
	padding: .8rem;
	display: block;
	text-align: left;
	border: 1px solid #ced4da;
	border-radius: .25rem;
	background-position: right;
	background-size: 15px;
	cursor: pointer;
}

.modal-body .chiiki ul{
	border: 1px solid rgba(0,0,0,.125);
}

.modal li.list-group-item{
	cursor: pointer;
}

.modal .list-group-item-success.active{
background-color: #155724;
	border-color: #155724;
}

.progressbar {
	position: relative;
	margin: 0;
	padding: 10px 0 5px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
.progressbar li {
	position: relative;
	list-style-type: none;
	text-align: center;
	text-transform: uppercase;
	width: 8%;
	color: #999999;
	font-weight: bold;
}
.progressbar li:before {
	display: block;
	width: 10px;
	height: 10px;
	margin: 7px auto 20px auto;
	content: '';
	text-align: center;
	border-radius: 50%;
	background-color: #c1bcbc;
}
.progressbar li:after {
	position: absolute;
	z-index: -1;
	top: 15px;
	left: -50%;
	width: 100%;
	height: 2px;
	content: '';
	background-color: #c1bcbc;
}
.progressbar li:first-child:after {
	content: none;
}
.progressbar li.active,
.progressbar li.complete{
	color: #0070BD;
}
.progressbar li.active:before,
.progressbar li.complete:before {
	background-color: #003c8d;
}
.progressbar li.active:after,
.progressbar li.complete:after {
	background-color: #003c8d;
}

.marker {
	padding-left: 1%;
	background: rgb(255,216,1);
	background: linear-gradient(0deg, rgba(255,216,1,1) 0%, rgba(255,223,43,1) 43%, rgba(255,255,255,1) 44%, rgba(255,255,255,1) 100%);
	line-height: 1.2;
	padding-right: 1%;
}

/****ここからレスポンシブcss*****/




@media screen and (max-width: 992px){

}

@media screen and (max-width: 767px){

.sp_view {
	display: block;
}
.pc_view {
	display:none;
}
.error-box{
	width: 100%;
}
.tel-box{
	width: 32%;
}
a.tel-btn {
	margin: 1.5rem 0 0;
	width: 100%;
}
}
@media (max-width: 576px){
form .col-sm-6 label {
	display: block;
	margin-bottom: .5rem;
}
p.question_p{
	font-weight: bold;
	font-size: 100%;
}
.result p{
	font-size: 115%;
}


}