@charset "utf-8";

/* ------------------------------
    flow
------------------------------ */

#profile .box {
	position: relative;
	left: 20px;
	transform: translateY(-50%);
	width: 270px;
	border: 2px solid #ff6405;
	background: #fff;
	padding: 20px;
	margin-bottom: -100px;
}
#profile .box .txt {
	font-size: 1.4rem;
}
#profile .box .txt .ttl {
	display: inline-block;
	background: #ff6405;
	color: #fff;
	font-size: 1.5rem;
	line-height: 1.4;
	vertical-align: middle;
	padding: 0 1em;
	margin-right: .5em;
	margin-bottom: .3em;
}
#profile .box .txt .big {
	font-size: 1.8rem;
	font-weight: bold;
}

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

	#profile .box {
		left: 0;
		transform: translateY(0);
		width: 100%;
		padding: 5vw;
		margin-bottom: 0;
	}
	#profile .box .txt {
		font-size: 3.5vw;
	}
	#profile .box .txt .ttl {
		font-size: 3.7vw;
	}
	#profile .box .txt .big {
		font-size: 4vw;
	}

}

#flow .imgCol_t,
#flow .imgCol_i {
	padding: 40px 0;
	position: relative;
}
#flow .imgCol_t {
	padding-left: 30px;
}
#flow .imgCol_t::before {
	content: '';
	width: 3px;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background: #000;
}
#flow dl:nth-of-type(n+2) {
	margin-top: 30px;
}
#flow dl dt {
	font-size: 1.8rem;
	font-weight: bold;
	margin-bottom: .5em;
	position: relative;
}
#flow dl dt .date {
	color: #ff6405;
}
#flow dl dd {
	font-size: 1.4rem;
}
#flow .imgCol_t dl dt::before,
#flow .imgCol_t dl dt::after {
	content: '';
	position: absolute;
	left: -28px;
	top: .4em;
	transform: translateX(-50%);
	width: 1em;
	height: 1em;
	background: #fff;
	border-radius: 100%;
}
#flow .imgCol_t dl dt::after {
	margin-top: .15em;
	width: .7em;
	height: .7em;
	background: #ff6405;
}
#flow .imgCol_i .img02 {
	margin-top: 140px;
}
#flow .imgCol_i .img03 {
	margin-top: 320px;
}
#flow .last p,
#flow .last dl {
	width: 340px;
	margin: 0 auto;
}
#flow .last dl {
	margin-top: 1em;
}

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

	#flow .imgCol_t {
		padding-top: 1%;
		padding-bottom: 5%;
	}
	#flow .imgCol_t .img {
		margin: 5% 0;
	}
	#flow .imgCol_t .img img {
		width: 100%;
	}
	#flow .imgCol_t .img:nth-of-type(n+2) {
		margin-top: 8%;
	}
	#flow dl:nth-of-type(n+2) {
		margin-top: 5%;
	}
	#flow dl dt {
		font-size: 4vw;
	}
	#flow dl dd {
		font-size: 3.5vw;
	}
	#flow .imgCol_t dl dt::before,
	#flow .imgCol_t dl dt::after {
		top: .2em;
		width: 1.4em;
		height: 1.4em;
	}
	#flow .imgCol_t dl dt::after {
		margin-top: .2em;
		width: 1em;
		height: 1em;
	}
	#flow .last p,
	#flow .last dl {
		width: 100%;
	}

}

#message .box {
	border: 1px solid #ff6405;
	padding: 20px 60px;
	align-items: center;
}
#message .imgCol_i {
	margin-right: 40px;
}
#message .box .txt {
	font-size: 1.4rem;
}

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

	#message .box {
		padding: 5vw;
	}
	#message .imgCol_i {
		margin-right: 0;
	}
	#message .imgCol_i img {
		width: 40vw;
	}
	#message .box .txt {
		font-size: 3.5vw;
	}
}