@charset "UTF-8";

@media screen and (min-width: 769px) {
	main {
		margin: 87px auto 60px;
		position: relative;
	}

	.contents {
		margin: 0 auto 10%;
		padding: 0;
		max-width: 1200px;
		width: 100%;
	}

	.content_box {
		box-shadow: 5px 5px 10px 0 #ccc;
		background: #fff;
		display: flex;
		flex-wrap: wrap;
		margin: 0 auto 40px;
		padding: 3% 3% 3%;
		width: 95%;
	}

	.content_box h2 {
		color: #333;
		font-size: 24px;
		font-weight: bold;
		margin: 0 0 20px;
		padding: 0 0 50px;
		width: 100%;
		position: relative;
	}

	.content_box h2:after {
		content: "";
		background: #333;
		width: 100%;
		height: 2px;
		position: absolute;
		bottom: 0;
		right: 0;
	}

	.content_box dl {
		border-bottom: 1px solid #ccc;
		display: flex;
		flex-wrap: wrap;
		width: 100%;
	}

	.content_box dl dt {
		margin: 0 0 10px;
		padding: 10px 0;
		width: 15%;
	}

	.content_box dl dd {
		margin: 0 0 10px;
		padding: 10px 20px;
		width: 85%;
	}

	.content_box figure {
		width: 60%;
	}

	.content_box iframe {
		margin: 0 1%;
		min-height: 500px;
		width: 38%;
	}
}

@media screen and (max-width: 768px) {
	main {
		margin: 17% auto 5%;
		position: relative;
	}

	.contents {
		margin: 0 auto 10%;
		padding: 0;
		width: 100%;
	}

	.content_box {
		box-shadow: 5px 5px 10px 0 #ccc;
		background: #fff;
		display: flex;
		flex-wrap: wrap;
		margin: 0 auto 40px;
		padding: 6% 6% 3%;
		width: 95%;
	}

	.content_box h2 {
		color: #333;
		font-size: 24px;
		font-weight: bold;
		margin: 0 0 20px;
		padding: 0 0 50px;
		width: 100%;
		position: relative;
	}

	.content_box h2:after {
		content: "";
		background: #333;
		width: 100%;
		height: 2px;
		position: absolute;
		bottom: 0;
		right: 0;
	}

	.content_box dl {
		display: flex;
		flex-wrap: wrap;
		margin: 0;
		width: 100%;
	}

	.content_box dl dt {
		border-bottom: 1px solid #ccc;
		margin: 0 0 10px;
		padding: 10px 20px;
		width: 100%;
	}

	.content_box dl dd {
		margin: 0 0 10px;
		padding: 10px 20px;
		width: 100%;
	}

	.content_box figure {
		margin: 0 auto 3%;
		width: 100%;
	}

	.content_box iframe {
		margin: 0 auto 3%;
		min-height: 320px;
		width: 100%;
	}
}