@charset "UTF-8";


/* ------------------------------------------------------------
	お取引の流れ
------------------------------------------------------------ */

/* ------------------------------
	.flow
------------------------------ */
.flow{
	padding: 70px 0 60px;
}

.flow .flow_box {
	margin-bottom: 22px;
}
.flow .flow_box > div{
	background: #f2f5f4;
	padding: 39px 47px;
	box-sizing: border-box;
	position: relative;
	border-radius: 5px;
}
.flow .flow_box > div.radius_flat{
	border-radius: 5px 5px 0 0;
}
.flow .flow_box .flow_box_content{
	position: relative;
	display: flex;
	align-items: center;
	min-height: 190px;
	background: #f2f5f4;
	border: 1px solid #f2f5f4;
}
.flow .flow_box .ico{
	position: absolute;
	top: -10px;
	left: -10px;
	width: 65px;
	height: 65px;
	z-index: 2;
}
.flow .flow_box .img{
	flex-shrink: 0;
	width: 260px;
}
.flow .flow_box .txt_box{
	margin-left: 63px;
}
.flow .flow_box .txt_box h4.ttl{
	font-size: 2.6rem;
	letter-spacing: .2em;
	margin-bottom: 13px;
	line-height: 1.3;
}
.flow .flow_box .txt_box p{
	font-size: 1.6rem;
	line-height: 1.6;
	letter-spacing: .1em;
}
.flow aside.more{
	border-radius: 0 0 5px 5px;
	overflow: hidden;
}
.flow aside.more dl.more_content{
}
.flow aside.more dl.more_content > dt{
	font-size: 1.55rem;
	letter-spacing: .2em;
	text-align: center;
	padding: 20px 0;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	transition: .4s ease;
	background: #e5e9e8;
}
.flow aside.more dl.more_content > dt:hover{
	opacity: .8;
}
.flow aside.more dl.more_content > dt::after{
	content: '';
	background: url("../img/business/step/icon_btn_plus.png") no-repeat center center / contain;
	width: 22px;
	height: 22px;
	margin-left: 10px;
	position: relative;
	top: 1px;
}
.flow aside.more dl.more_content > dt.active::after{
	background-image: url("../img/business/step/icon_btn_minus.png");
}
.flow aside.more dl.more_content > dd {
	border-top: 1px solid #ccc;
	display: none;
}
.flow aside.more dl.more_content dd .txt_more{
	padding: 34px 28px 50px 48px;
	background: #e5e9e8;
	border-radius: 0 0 5px 5px;
}
.flow aside.more dl.more_content dd .txt_more p.txt{
	font-size: 1.6rem;
	line-height: 1.6;
	letter-spacing: .1em;
	margin-bottom: 20px;
}
.flow aside.more dl.more_content dd .txt_more a{
	position: relative;
	padding-left: 26px;
	letter-spacing: .1em;
}
.flow aside.more dl.more_content>dd .txt_more a::before{
	content: '';
	background: url("../img/business/step/icon_arrow.png") no-repeat top center / contain;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 21px;
	height: 6px;
}
.flow aside.more dl.more_content>dd .txt_more ol dt{
	font-size: 1.8rem;
	font-weight: 500;
	letter-spacing: .2em;
	margin-bottom: 10px;
}
.flow aside.more dl.more_content>dd .txt_more ol dl{
	margin-bottom: 30px;
}
.flow aside.more dl.more_content>dd .txt_more ol dd{
	margin-left: 38px;
	line-height: 1.6;
	letter-spacing: .1em;
}
.flow aside.more dl.more_content>dd .txt_more ol dd ul{
	margin-top: 10px;
}
.flow aside.more dl.more_content>dd .txt_more ol dd li{
	margin-bottom: 10px;
	letter-spacing: .1em;
}
.flow aside.more p.caution{
	font-size: 1.4rem;
	padding-left: 1.2em;
	text-indent: -1.2em;
	line-height: 1.8;
	letter-spacing: .1em;
	margin-top: 14px;
}

@media screen and (max-width: 768px){
	.flow{
		padding: 50px 0 40px;
	}

	.flow .flow_box .flow_box_content{
		display: block;
	}
	.flow .flow_box{
		margin-bottom: 25px;
	}
	.flow .flow_box > div{
		background: #f2f5f4;
		padding: 0;
		box-sizing: border-box;
		position: relative;
		border-radius: 5px;
	}
	.flow .flow_box .txt_box{
		margin: 20px 8%;
	}
	.flow .flow_box .ico{
		top: -10px;
		left: -10px;
		width: 60px;
		height: 60px;
	}
	.flow .flow_box .img{
		width: 100%;
	}
	.flow_box#flow4 .img{
		background: #fff;
	}
	.flow_box#flow4 .img img{
		width: 90%;
	}
	.flow .flow_box .txt_box h4.ttl{
		margin-bottom: 10px;
		font-size: 1.8rem;
		line-height: 1.5;
	}

	.flow .flow_box .txt_box p{
		font-size: 1.3rem;
	}
	.flow aside.more dl.more_content > dt{
		font-size: 1.3rem;
	}
	.flow aside.more dl.more_content dd .txt_more{
		padding: 20px 8%;
	}
	.flow aside.more dl.more_content dd .txt_more p.txt{
		font-size: 1.3rem;
	}

	.flow aside.more dl.more_content dd .txt_more a{
		font-size: 1.3rem;
	}
	.flow aside.more dl.more_content>dd .txt_more ol dt{
		font-size: 1.5rem;
	}
	.flow aside.more dl.more_content>dd .txt_more ol dd{
		font-size: 1.3rem;
		margin-left: 30px;
	}
	.flow aside.more dl.more_content>dd .txt_more ol dd ul li{
		font-size: 1.3rem;
		line-height: 1.6;
		padding-left: 1em;
		text-indent: -1.3em;
	}
	.flow aside.more p.caution{
		font-size: 1.3rem;
	}
}
.trading {
	padding-top: 40px;
}
.trading h2.ttl{
	position: relative;
	padding-bottom: 20px;
	margin-bottom: 25px;
	border-bottom: 1px solid #d6d6d6;
	font-size: 3.0rem;
	line-height: 1.3;
	letter-spacing: 0.2em;
}
.trading h2.ttl.underline{
	margin-bottom: 20px;
}
.trading h2.ttl.underline::before{
	position: absolute;
	left: 0;
	bottom: -1px;
	content: "";
	display: block;
	width: 50px;
	height: 1px;
	background: #c92a20;
}
.trading p{
	font-size: 1.8rem;
	line-height: 2;
	letter-spacing: .1em;
}
@media screen and (max-width: 768px){
	.trading{
		padding-top: 30px;
	}
	.trading h2.ttl{
		padding-bottom: 10px;
		margin-bottom: 15px;
		font-size: 2.3rem;
	}
	.trading p{
		font-size: 1.6rem;
	}
}