footer {margin-top: 0;}

#contentsArea {
	padding-bottom: 3rem;
	background-color: #f7f8f8;
}

/* ================================================ oubo共通 */
#ouboArea {
	margin: 0 auto;
	background-color: #fff;
	border-radius: 0 0 6px 6px;
}
	.PC #ouboArea {
		width: 1000px;
		padding: 50px 0 0;
	}

/* title */
	.PC #ouboArea h1 {
		width: 800px;
		height: 120px;
		margin: 0 auto;
		background: url("../images/title_mag_pc.png") no-repeat center top;
	}
	.PC #ouboArea h1 img {display: none;}
		
		.SP #ouboArea h1 {
			width: 94%;
			margin: 4% auto 0;
		}

/* oubo_error */
#oubo_error {
	padding: 5%;
	box-sizing: border-box;
}
#oubo_error h2,
#oubo_error p {
	margin: 2% 0;
	text-align: center;
	color: #333;
	font-weight: bold;
	line-height: 1.6em;
}
	.PC #oubo_error h2 {font-size: 22px;}
	.PC #oubo_error p {font-size: 16px;}
		.SP #oubo_error h2 {font-size: 150%;}
		.SP #oubo_error p {font-size: 110%;}

/* 入力欄 */
#oubo_entry {padding-bottom: 5%;}
.oubo {margin-top: 6%;}
.oubo form {
	position: relative;
	margin: 0 auto;
	box-sizing: border-box;
}
	.PC .oubo form {
		width: 700px;
		padding: 30px 0;
	}
		.SP .oubo form {
			width: 90%;
			padding: 3% 0 5%;
		}

.oubo h2 {
	text-align: center;
	line-height: 1.4em;
}
	.PC .oubo h2 {
		margin: 0 0 30px;
		font-size: 28px;
	}
		.SP .oubo h2 {
			margin: 0 0 2rem;
			font-size: 160%;
		}
	
#ouboArea #oubo_end {margin: 0 auto;}
	.PC #ouboArea #oubo_end {
		width: 800px;
		padding: 50px 0;
	}
		.SP #ouboArea #oubo_end {
			width: 90%;
			padding: 2rem 0;
		}

	.PC #ouboArea #oubo_end h2 {font-size: 36px;}
		.SP #ouboArea #oubo_end h2 {font-size: 200%;}

#ouboArea #oubo_end p {
	text-align: center;
	line-height: 1.6em;
	font-weight: bold;
}
	.PC #ouboArea #oubo_end p {font-size: 22px;}
	.SP #ouboArea #oubo_end p {font-size: 140%;}

.oubo dl {
	position: relative;
	margin: 0 auto;
}
	.PC .oubo dl {width: 700px;}
		.SP .oubo dl {width: 100%;}

.oubo dt {
	padding: 2% 0;
	line-height: 1.4em;
	color: #003f94;
}
.oubo dt span {
	display: inline-block;
	background-color: #e60012;
	text-align: center;
	color: #fff;
	vertical-align: middle;
}

	.PC .oubo dt {
		position: absolute;
		left: 2%;
		font-size: 15px;
	}
	.PC .oubo dt span {
		width: 40px;
		height: 20px;
		margin-left: 10px;
		line-height: 20px;
		font-size: 11px;
	}
		.SP .oubo dt {
			margin-top: 4%;
			padding: 2%;
			font-size: 150%;
		}
		
		.SP .oubo dt span {
			width: 20%;
			height: 2rem;
			margin-left: 1rem;
			line-height: 2rem;
			font-size: 80%;
		}

.oubo dd {
	box-sizing: border-box;
	line-height: 1.4em;
	border-bottom: solid 1px #dcdddd;
}
	.PC .oubo dd .ex {width: 95%;}
.oubo dd .ex li {
	position: relative;
	margin-bottom: 1%;
	color: #666;
	line-height: 1.4em;
	text-align: justify;
	list-style-type: none;
}
	.PC .oubo dd .ex li {padding-left: 4%;}
		.SP .oubo dd .ex li {padding-left: 5%;}
		
.oubo dd .ex a {
	color: #003f94;
	text-decoration: underline;
}
.oubo dd .ex a:hover {
	text-decoration: none;
}
.oubo dd .ex li span {
	position: absolute;
	left: 0;
}

	.PC .oubo dd {
		padding: 2% 2% 2% 40%;
		font-size: 15px;
	}
	
		.SP .oubo dd {
			padding: 2%;
			font-size: 150%;
		}
		.SP .oubo dd br {display: none;}
	
	.PC .oubo dd .ex {font-size: 12px;}
		.SP .oubo dd .ex {font-size: 75%;}

.oubo dd label {display: inline-block;}
	.PC .oubo dd label {margin: 1% 3% 1% 0;}
		.SP .oubo dd label {margin: 2% 10% 2% 0;}

.oubo dd input {
	padding: 0 2%;
	box-sizing: border-box;
}
	.PC .oubo dd input,
	.PC .oubo dd textarea {
		width: 400px;
		height: 34px;
		font-size: 15px;
	}
	.PC .oubo dd.mb input {
		width: auto;
		vertical-align: middle;
	}
	.PC .oubo dd textarea {
		width: 400px;
		height: 100px;
		padding: 2%;
		font-size: 15px;
		border: solid 1px #c9caca;
	}
		.SP .oubo dd input {
			width: 100%;
			height: 4rem;
			font-size: 85%;
			border: solid 1px #c9caca;
		}
		.SP .oubo dd.mb input {
			width: auto;
			height: auto;
			vertical-align: middle;
		}
		
		.SP .oubo dd textarea {
			width: 100%;
			height: 10rem;
			padding: 2%;
			font-size: 85%;
			border: solid 1px #c9caca;
			box-sizing: border-box;
		}

	.PC .post input,
	.PC .tel input {
		width: 200px;
	}
	
	.PC .address select,
	.PC .address input {margin-bottom: 10px;}
		.SP .address select,
		.SP .address input {margin-bottom: 1rem;}
	
	.PC .oubo#oubo_check dd {min-height: 50px;}
		.SP .oubo#oubo_check dd {min-height: 5rem;}
	
#error {
	background-color: rgba(195,13,35,.1);
	border-radius: 6px;
}
	.PC #error {
		width: 680px;
		margin: 20px auto;
	}
		.SP #error {
			width: 100%;
			margin: 2rem auto;
		}
	
#error p {
	color: #e60012;
	box-sizing: border-box;
}
	.PC #error p {
		padding: 2% 3%;
		font-size: 15px;
	}
		.SP #error p {
			padding: 2% 4%;
			font-size: 120%;
		}

.oubo_btn,
#back_btn {
	cursor: pointer;
	border-radius: 6px;
	text-align: center;
}
.oubo_btn:hover,
#back_btn:hover {
	opacity: .7;
}
	.PC .oubo_btn {
		width: 260px;
		height: 60px;
		margin: 30px auto 0;
	}
	.PC .oubo_btn img {
		height: 100%;
	}
		
		.SP .oubo_btn {
			width: 100%;
			height: 6rem;
		}
		.SP .oubo_btn img,
		.SP #back_btn img {height: 100%;}

	.PC #back_btn {
		position: absolute;
		left: 30px;
		bottom: 30px;
		width: 100px;
		height: 60px;
		margin: 30px auto 0;
	}
		.SP #back_btn {
			width: 24%;
			margin: 5% auto;
		}

.oubo_btn {
	background-color: #004098;
	border-radius: 6px;
}

/* 概要 */
	.PC #gaiyo {
		width: 800px;
		margin: 50px auto 0;
	}
		.SP #gaiyo {
			width: 90%;
			margin: 3rem auto 0;
		}

#gaiyo h2 {
	margin: 0;
	padding: 0;
	color: #333;
	text-align: center;
	background-color: #DCDDDD;
}
	.PC #gaiyo h2 {
		height: 36px;
		line-height: 36px;
		font-size: 20px;
	}
		.SP #gaiyo h2 {
			height: 3rem;
			line-height: 3rem;
			font-size: 150%;
		}


#gaiyo dl {
	position: relative;
	width: 100%;
	margin: 0;
	box-sizing: border-box;
	border: solid 1px #DCDDDD;
	overflow: auto;
}
	.PC #gaiyo dl {
		height: 260px;
		padding: 2% 6% 2% 2%;
	}
		.SP #gaiyo dl {
			height: 20rem;
			padding: 4% 6% 4% 4%;
		}

#gaiyo dl dt {
	position: absolute;
	padding: 2% 0;
	line-height: 1.4em;
	box-sizing: border-box;
}
	.PC #gaiyo dl dt {
		left: 3%;
		font-size: 14px;
	}
		.SP #gaiyo dl dt {
			left: 5%;
			font-size: 90%;
		}

#gaiyo dl dd {
	line-height: 1.4em;
	border-bottom: solid 1px #b5b5b6;
}
	.PC #gaiyo dl dd {
		padding: 2% 0 2% 20%;
		font-size: 14px;
	}
		.SP #gaiyo dl dd {
			padding: 2% 0 2% 35%;
			font-size: 90%;
			text-align: justify;
		}

	.PC #gaiyo dl dd ul {padding-left: 3%;}
		.SP #gaiyo dl dd ul {padding-left: 8%;}