@charset "utf-8";
/* CSS Document */

#contentsBlock {
	width	: 980px;
	margin	: 30px auto 0;
}

section {
	margin-bottom: 30px;
}

section p {
	text-align	: left;
}

.flow_box {
	background		: #fff5f7;
	border			: 3px solid #d03653;
	border-radius	: 8px;
	clear			: both;
	min-height		: 328px;
	margin			: 20px auto;
}

	.flow_box .flow_img {
		float	: left;
		margin	: 20px;
	}

	.flow_box div {
		margin	: 20px;
	}

		.flow_box div h4 {
			text-align	: left;
			margin		: 0 0 20px;
		}
	
.arrow { margin : 0 auto 20px; text-align : center; }

.movie {
	width		: 980px;
}

.movie,
.movie td {
	background	: none;
	border		: none;
	padding		: 0;
}

.movie td p {
	margin-bottom	: 20px;
}



#mainFooter {
	width			: 980px;
	margin			: 0 auto;
	margin-bottom	: 50px;
	clear			: both;
}

#tel {
	position	: relative;
	width		: 880px;
	margin		: 0 auto;
}

#tel span {
	position: absolute;
	top		: 60px;
	left	: 268px;
}


#mainFooter {
	clear			: both;
	position		: relative;
	width			: 880px;
	margin			: 0 auto 30px auto;
	border			: 7px solid #e5d3c9;
	background-color: #fff;
	box-sizing		: border-box;
    display			: flex;
    justify-content	: space-between;
}

#mainFooter div.left {
	width: calc(100% - 305px);
}

#mainFooter div.left p {
	color		: #4c3c2d;
	font-weight	: bold;
}

#mainFooter div.left p.title {
	font-size: 18px;
	margin: 1em auto;
	line-height: 1;
}

#mainFooter div.left div.flex {
	display: flex;
	margin-left: 8px;
}

#mainFooter div.left div.flex div.txtArea {
	margin-top: 3px;
    margin-right: 5px;
}
#mainFooter div.left div.flex div.txtArea p:first-child {
	font-size: 28px;
	line-height: 1.2;
}
#mainFooter div.left div.flex div.txtArea p:first-child img {
	margin-right: 3px;
}
#mainFooter div.left div.flex div.txtArea p:last-child {
	font-weight: normal;
	font-size: 12px;
}

#mainFooter figure.spStyle {
	display: none;
}

#mainBlock div:first-child{
	float: left;
}
#contentsBlock {
    margin-top: 30px;
}

@media screen and (max-width: 767px) {
	#contentsBlock {
		width	: 100%;
		padding: 0 15px;
		box-sizing: border-box;
	}

	.flow_box .flow_img {
		margin-bottom: 10px;
	}
	.flow_box div h4 {
		margin: 0 0 10px;
	}
	.flow_box div h4 img {
		max-width: 75px;
		width: 100%;
		height: auto;
	}
	.flow_box#Box04 div h4 img {
		max-width: 140px;
	}

	.movie {
    	width: 100%;
	}
	.movie tr{
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}
	.movie td {
		max-width: 100%;
		width: 100%;
	}
	.movie iframe{
		width: 100%;
	}
	.movie td img{
		max-width: 100%;
		width: 100%;
		height: auto;
	}

	.movie tr td{
		position: relative;
		padding-bottom: 56.25%;
		height: 0;
		overflow: hidden;
		margin-bottom: 20px;
	}
	.movie tr td.pcStyle{
		display: none;
	}
	.movie tr td iframe{
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
	}

	#mainFooter figure.pcStyle {
		display: none;
	}
	#mainFooter figure.spStyle {
		display: block;
		margin: 15px auto;
	}
	#mainFooter div.left p.title br.spStyle {
		display: block;
	}
	#mainFooter {
		max-width	: 350px;
		width		: 100%;
		display		: block;
	}
	#mainFooter img {
		max-width: 100%;
		height: auto;
	}
	#mainFooter div.left {
		width: 100%;
		float: none !important;
	}
	#mainFooter div.left p.title {
		margin: 1em auto 0.5em;
	}
	#mainFooter div.left div.flex {
		display: block;
		margin-left: 0;
	}
	#mainFooter div.left div.flex div.txtArea {
		float: none !important;
	}
	#mainFooter div.left div.flex div.txtArea p:last-child {
		margin: 5px auto;
	}
}

@media screen and (max-width: 630px){
	#mainFooter {
		display: block;
	}
	#mainFooter div.left {
		margin: 0 auto;
		width: 100%;
	}
}

@media screen and (max-width: 480px){
	.flow_box .flow_img img {
		max-width: 100%;
		width: 100%;
		height: auto;
	}
}