/* broker.css
========================================*/
@media print, screen and (min-width: 768px) {
	#main .p-header._contract {
		background:url(../img/broker/contract/bg_header_pc.jpg) no-repeat center top;
		height:400px;
	}
}
@media screen and (max-width: 767px) {
	#main .p-header._contract {
		background:url(../img/broker/contract/bg_header_sp.jpg) no-repeat center top/cover;
	}
}
#main #container .step-list>li {
	position:relative;
}
#main #container .step-list>li:before {
	background-color:#0064b1;
	border-radius:50%;
	content:"";
	display:block;
	position:absolute;
	left:0;
	top:.5em;
	z-index:20;
}
#main #container .step-list>li:last-of-type>section:before, #main #container .step-list>li:last-of-type>section:after {
	display:none;
}
#main #container .step-list>li>section:before {
	background-color:#7a7f85;
	background-image:linear-gradient(to bottom, transparent 0, #fff 50%);
	background-size:2px 6px;
	content:"";
	display:block;
	position:absolute;
	top:.5em;
	height:100%;
	width:2px;
	z-index:10;
}
#main #container .step-list>li>section:after {
	color:#7a7f85;
	content:"\f107";
	display:block;
	font-family:"Font Awesome 5 Pro";
	font-weight:300;
	line-height:0;
	position:absolute;
	z-index:20;
}
#main #container .step-list>li>section>h2 {
	font-family:"Montserrat", sans-serif;
	font-weight:500;
	letter-spacing:.1em;
	line-height:1.3em;
}
#main #container .step-list>li .-block>dl>dt {
	font-weight:700;
	letter-spacing:.05em;
}
#main #container .step-list>li .-btnlist>li>a {
	background-color:#131826;
	color:#fff;
	display:block;
	text-align:center;
}
#main #container .step-list>li .-btnlist>li>a:after {
	content:"\f178";
	display:inline-block;
	font-family:"Font Awesome 5 Pro";
	font-weight:300;
}
@media print, screen and (min-width: 768px) {
	#main #container .step-list>li {
		margin-bottom:30px;
		padding-left:40px;
	}
	#main #container .step-list>li:before {
		height:20px;
		width:20px;
	}
	#main #container .step-list>li>section {
		padding-bottom:40px;
	}
	#main #container .step-list>li>section:before {
		left:9px;
	}
	#main #container .step-list>li>section:after {
		font-size:1.5714285714rem;
		left:5px;
		bottom:-10px;
	}
	#main #container .step-list>li>section>h2 {
		font-size:1.8571428571rem;
		margin-bottom:20px;
	}
	#main #container .step-list>li .-block {
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
	}
	#main #container .step-list>li .-block>dl {
		width:700px;
	}
	#main #container .step-list>li .-block>dl>dt {
		font-size:1.8571428571rem;
		margin-bottom:10px;
	}
	#main #container .step-list>li .-block>dl>dd {
		font-size:1.1428571429rem;
	}
	#main #container .step-list>li .-block>figure {
		margin-right:-50px;
	}
	#main #container .step-list>li .-block>figure img {
		height:160px;
		width:auto;
	}
	#main #container .step-list>li .-btnlist {
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		margin-top:20px;
	}
	#main #container .step-list>li .-btnlist>li {
		margin-top:10px;
		width:345px;
	}
	#main #container .step-list>li .-btnlist>li>a {
		border-radius:20px;
		padding:5px 5px 5px 15px;
	}
	#main #container .step-list>li .-btnlist>li>a:after {
		font-size:1.2857142857rem;
		margin-left:7px;
	}
	#main #container .step-list>li .-btnlist>li>a:hover {
		opacity:.8;
	}
}
@media screen and (max-width: 767px) {
	#main #container .step-list>li {
		margin-bottom:6.6666666667vw;
		padding-left:8vw;
	}
	#main #container .step-list>li:before {
		height:4vw;
		width:4vw;
	}
	#main #container .step-list>li>section {
		padding-bottom:8vw;
	}
	#main #container .step-list>li>section:before {
		left:1.6vw;
	}
	#main #container .step-list>li>section:after {
		font-size:5.3333333333vw;
		left:.5333333333vw;
		bottom:-2.6666666667vw;
	}
	#main #container .step-list>li>section>h2 {
		font-size:5.3333333333vw;
		margin-bottom:4vw;
	}
	#main #container .step-list>li .-block>dl>dt {
		font-size:5.3333333333vw;
		line-height:1.4em;
		margin-bottom:2.6666666667vw;
	}
	#main #container .step-list>li .-block>figure {
		display:none;
	}
	#main #container .step-list>li .-btnlist {
		margin-top:4vw;
	}
	#main #container .step-list>li .-btnlist>li {
		margin-top:2.6666666667vw;
	}
	#main #container .step-list>li .-btnlist>li>a {
		border-radius:5.3333333333vw;
		padding:1.3333333333vw 1.3333333333vw 1.3333333333vw 4vw;
	}
	#main #container .step-list>li .-btnlist>li>a:after {
		font-size:4.2666666667vw;
		margin-left:1.3333333333vw;
	}
}
@media print, screen and (min-width: 768px) {
	#main #container .btn-list {
		margin-left:auto;
		margin-right:auto;
		width:1000px;
		display:flex;
		flex-wrap:wrap;
		justify-content:center;
		margin-bottom:40px;
	}
	#main #container .btn-list>li {
		margin:0 30px 30px;
	}
}
@media screen and (max-width: 767px) {
	#main #container .btn-list {
		margin-bottom:10.6666666667vw;
	}
}
