.pageHeader .bg{
	background: url(../img/page_header_bg.png) no-repeat center top / cover #0E80DC;
}


#contact .baseBlock{
	margin-bottom:100px;
}

/* +++++++++++++++++++++++++ フォーム基本から改修  */


.formTable th {
	width:230px;
    padding: 0px 0 20px 30px;
}
.formTable.checked th {
    padding: 20px 0 20px 30px;
}

.icoRequire {
	background: #ff0000;
}
.formTable .require input[type="text"],
.formTable .require textarea,
.formTable .require select {
	background:#F7EEEE;
}
.btnArea .inputBtn input {
	color: #fff;
	background: #ED6B15;
	border: 1px solid #ED6B15;
}

.btnArea .submitBtn input {
    color: #fff;
	background: #ED6B15;
	border: 1px solid #ED6B15;
}
.btnArea input {
    color: #000;
    border: 1px solid #000;
}

.formTable.checked td {
    border-left: 1px solid #165CC7;
}
.formTable.checked th {
    border-left:none;
}

/* +++++++++++++++++++++++++  */

.contact-flow {
	display: flex;
	justify-content: space-between;
	counter-reset: step;
	list-style: none;
	padding: 0;
	margin: 0 0 40px;
}

.contact-flow li {
	position: relative;
	flex: 1;
	text-align: center;
	counter-increment: step;
	font-size: 14px;
}

.contact-flow li::before {
	content: "";
	position: absolute;
	top: calc(50% + 0.4em);
	left: -50%;
	width: 100%;
	height: 2px;
	background: #ccc;
	z-index: 1;
}

.contact-flow li:first-child::before {
	display: none;
}

.contact-flow li::after {
	content: counter(step);
	position: relative;
	z-index: 2;
	display: block;
	width: 36px;
	height: 36px;
	line-height: 36px;
	margin: 0 auto 8px;
	border-radius: 50%;
	background: #ccc;
	color: #fff;
	font-weight: bold;
}

.contact-flow li span {
	display: block;
	color: #666;
}

.contact-flow li.active::after {
	background:#0078d7;
}
.contact-flow li.active span {
	color: #0078d7;
	font-weight: bold;
}

.contact-flow li.done::after {
	background:#555;
}
.contact-flow li.done::before {
	background:#555;
}


/* +++++++++++++++++++++++++  */

.privacy-box {
	height: 300px;
	margin-bottom:50px;
	overflow-y: auto;
	padding: 30px;
	border: 1px solid #ccc;
	line-height: 1.8;
	background: #fff;
}
.privacy-box ol {
	list-style: none;
	counter-reset: privacy-num;
	padding-left: 0;
}
.privacy-box ol > li {
	counter-increment: privacy-num;
	margin-bottom: 1.5em;
}
.privacy-box ol > li > h4 {
	position: relative;
	font-size: 2.0rem;
	line-height: 36px;
	margin-bottom:10px;
	padding-left: 1.5em;
}
.privacy-box ol > li > h4:before {
	content: counter(privacy-num) ".";
	position: absolute;
	left: 0;
	top: 0;
	font-weight: bold;
}
.privacy-box ul {
	list-style: disc;
	padding-left: 1.5em;
	margin-top: 0.5em;
}

.privacy-box ul li {
	margin-bottom: 0.3em;
	list-style-type: disc;
}
.privacy-box p {
	margin-bottom: 0.8em;
}




@media only screen and (max-width: 960px) {

	#contact .baseBlock{
		margin-bottom:10vw;
	}
	
	/* +++++++++++++++++++++++++  */
	
	
	.formTable th {
		width:100%;
		background-color:#EBEEF1;
		box-sizing:border-box;
		padding:3vw;
		border-left:none;
		border-radius:5px;
	}
	.formTable.checked th {
		padding:3vw;
	}
	
	/* +++++++++++++++++++++++++  */
	
	.contact-flow {
		margin: 0 0 10vw;
	}
	.formTable td {
		margin-bottom:5vw;
	}
	.formTable.checked td {
		border-left: none;
		padding:3vw;
	}
	
	
	.privacy-box ol > li > h4 {
		font-size: 1.8rem;
	}
	
}

