@charset "UTF-8";
/* CSS Document */
#csr_waku {
	width: 100%;
	max-width: 960px;
	margin: 0 auto;
}
a,a:hover{
	text-decoration: none;
}
.new_pc {display: block;}
.new_sp {display: none;}


@media screen and (max-width: 768px) {
.new_pc {display: none;}
.new_sp {display: block;}
}

/* --- .csr_top --- */

.csr_top{
	padding-bottom: 40px;
	border-bottom: 3px solid #0064B6;
}
.csr_top .csr_top_inner:first-child{
	max-width: 960px;
	margin: 0 auto;
	position: relative;
	padding-bottom: 50px;
}
.csr_top_bg{
	position: absolute;
	right: 0;
	bottom: 0;
	z-index: 2;
}
.csr_top .csr_top_inner:first-child h2{
	position: relative;
	z-index: 3;
	width: 100%;
	max-width: 700px;
}
.csr_top .csr_top_inner:first-child p{
	position: relative;
	text-align: center;
	font-size: 1.2em;
	line-height: 2;
	z-index: 4;
	margin: 0 auto;
}
.csr_top .csr_top_inner:last-child{
	max-width: 960px;
	margin: 2rem auto 0 auto;
}
.csr_top .csr_top_inner:last-child h3{
	color: #0064B6;
	font-size: 1.4em;
	padding-bottom: 10px;
	letter-spacing: .15em;
}
.csr_top .csr_top_inner:last-child p{
	line-height: 2.2;
	margin: 0 auto;
}

/* --- .csr_top --- */

.csr_top_box{
	margin: 40px auto;
}
.csr_top_box .flex{
	display: flex;
	flex-direction: row;
	margin-top: 50px;
}
.csr_top_box .csr_top_item::after{
	content: '';
	display: block;
	padding-top: 3rem;
	border-bottom: 1px dashed #707070;
}
.csr_top_box .csr_top_item:last-child::after{
	display: none;
}
.csr_top_box .flex .img{
	flex: 0 0 20%;
	height: 100%;
}
.csr_top_box .flex .img img{
	height: 100%;
	width: 100%;
}
.csr_top_box ul{
	flex: 0 0 78%;
	display: flex;
	padding-left: 15px;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.csr_top_box li{
	display: flex;
	flex-direction: column;
	padding-right: 10px;
	flex-basis: calc((100% - 30px) / 4);
}
.csr_top_box li:last-child{
	padding-right: 0;
}
.csr_top_box li a {
	display: block;
	height: 100%;
}
.csr_top_box li a p{
	position: relative;
	margin-top: 5px;
	padding-left: 15px;
	color: #23ACD5;
}
.csr_top_box li a p::before{
	content: "";
	width: 6px;
	height: 6px;
	border: 0;
	border-top: 2px solid #23ACD5;	border-right: 2px solid #23ACD5;
	position: absolute;
	left: 0;
	top: 5px;
	transform: rotate(45deg);
}
.csr_bg{
	background-image: url("../img/csr_bg.png") ;
	background-repeat: no-repeat;
	background-size: auto 100%;
	height: 100%;
	width: 100%;
	position: relative;
}

/* --- .csr_pickup --- */

.csr_pickup{
	margin: 100px auto;
}
.csr_pickup h3{
	margin: 0 auto;
	width: 40%;
	text-align: center;
}
.csr_pickup h3 span {
	margin: 0 auto;
}
.csr_pickup h3 span img{
	width: 30%;
}
.csr_pickup_inner{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.csr_pickup_inner li{
	flex-basis: calc((100% / 2) - 40px) ;
	background-color: #fff;
	box-shadow: 0 0px 10px rgba(0,0,0,0.3);
	border-radius: 27px;
	margin-top: 80px;
	overflow: hidden;
	position: relative;
	padding-bottom: 30px;
}
.csr_pickup_item .pic {
	overflow: hidden;
}
.csr_pickup_item .pic img{
	width: auto;
	height: auto;
}
.csr_pickup_item .txt {
	display: flex;
	flex-direction: row;
	padding: 25px;
	height: 85px;
}
.csr_pickup_item .txt .img{
	flex: 0 0 32%;
	margin: 0 auto;
	text-align: center
}
.csr_pickup_item .txt dl{
	flex: 0 0 68%;
	text-align: center;
}
.csr_pickup_item .txt_100p dl{
	flex: 0 0 100%;
}
.csr_pickup_item dl dt{
	font-size: 1.2rem;
	font-weight: 500;
}
.csr_pickup_item:nth-child(1) dl dt{
	color: #3B0909;
}
.csr_pickup_item:nth-child(2) dl dt{
	color: #DDBA6D;
}
.csr_pickup_item:nth-child(3) dl dt{
	color: #006BB8;
}
.csr_pickup_item:nth-child(4) dl dt{
	color: #BC3492;
}
.csr_pickup_item:nth-child(5) dl dt{
	color: #886D4B;
}
.csr_pickup_item dl dd{
	color: #4d4d4d;
}
.csr_pickup_item .detail{
	box-sizing: border-box;
	position: absolute;
	color: #fff;
	display: block;
	text-align: right;
	padding: 8px 65px 8px 0;
	bottom: 0px;
	width: 100%
}
.csr_pickup_item:nth-child(1) .detail{
	background-color: #3B0909;
}
.csr_pickup_item:nth-child(2) .detail{
	background-color: #DDBA6D;
}
.csr_pickup_item:nth-child(3) .detail{
	background-color: #006BB8;
}
.csr_pickup_item:nth-child(4) .detail{
	background-color: #BC3492;
}
.csr_pickup_item:nth-child(5) .detail{
	background-color: #886D4B;
}
.csr_pickup_item .detail::after{
	content: "";
	position: absolute;
	right: 30px;
	top: 10px;
  	width: 30px;
  	height: 8px;
  	border-bottom: 1px solid #fff;
  	border-right: 1px solid #fff;
  	transform: skew(45deg);
}

@media(max-width: 768px){
	#csr_waku {
	width: 90%;
	}
	.csr_top .csr_top_inner:first-child h2{
		width: 70%;
		padding: 0 0 30px 0;
	}
	.csr_top_inner{
		width: 90%;
		margin: 0 auto;
	}
	.csr_pickup_item .txt{
		flex-direction: column;
		height: 25vw;
	}
	.csr_pickup_item .txt .img{
		margin-bottom: 10px;
	}
	.csr_top_box li{
		padding-right: 0px;
	}
	.csr_top_box .flex{
		flex-direction: column;
	}
	.csr_top_box .flex .img{
		width: 60%;
		margin: 0 auto;
	}
	.csr_pickup h3{
		width: 100%;
	}
	.csr_pickup_item{
		flex-basis: 100%;
	}
	.csr_pickup_item .txt{
		height: auto;
	}
	.csr_top_box ul{
		padding-left: 0;
		justify-content: space-between;
	}
	.csr_top_box li{
	flex: 0 0 48%;
	margin: 30px 0 0 0;
}
}

/* --- .csr_number_sq --- */

.csr_number_sq span{
	margin: 0;
	display: block;
	font-size: .9em;
	line-height: 1.4;
	position: absolute;
	left: 0;
	top: 1px;
	text-align: center;
	color: #fff;
	font-weight: 500;
	width: 20px;
	height: 20px;
	background-color: #0064B6;
}
.csr_number_sq{
	font-size: 1.2em;
	color: #0064B6;
	margin-bottom: .5rem;
	background-color: none;
	position: relative;
	padding-left: 1.8rem;
}

/* --- .csr_top_box_line --- */

.csr_top_box_line {
    position: relative;
	padding: 2.3rem;
	margin: 2rem auto 0 auto;
	max-width: 960px;
}
.csr_top_box_line:before,.csr_top_box_line:after{ 
    content:'';
    width: 30px;
    height: 30px;
    position: absolute;
    display: inline-block;
}
.csr_top_box_line:before{
    border-left: solid 2px #0064B6;
    border-top: solid 2px #0064B6;
    top:0;
    left: 0;
}
.csr_top_box_line:after{
    border-right: solid 2px #0064B6;
    border-bottom: solid 2px #0064B6;
    bottom:0;
    right: 0;
}
.csr_top_box_line .ttl{
	font-size: 1.4em;
	line-height: 2.5;
	letter-spacing: .15em;
	color: #0064B6;
	text-align: center;
	border-bottom: solid 1px #0064B6;
	margin-bottom: 1rem;
}
.csr_top_box_line ol li{
	margin: 1.5rem 0;
}
.csr_top_box_line ol li ul li{
	position: relative;
	display: block;
	padding-left: 1rem;
	margin: .5rem 0;
	counter-increment: title;
}
.csr_top_box_line ol li ul li::before{
	margin: 0;
	content: counter(title);
	display: block;
	font-size: 1em;
	position: absolute;
	left: 0;
	top: -1px;
	text-align: center;
	color: #4d4d4d;
	font-weight: 500;
}
@media(max-width: 768px){
	.csr_top_box_line {
	}
}
