@charset "utf-8";
/* CSS Document */

body #contents {
    border-top: none;
    padding-top: 0px;
}

.mainTitle {
	background-image: url(../images/process/ttl_bg.png);
	background-size: cover;
}
@media (max-width: 767px) {
	.mainTitle .ttl img{
		height: 26px;
	}
}
/*-----------------------------------------------------------------------
                                processHed
------------------------------------------------------------------------*/
.processHed{
	text-align: center;
	margin-bottom: 60px;
}
.processHed .case{
	display: inline-block;
	font-size: 1.5em;
	color: #ffffff;
	background: #ff0000;
	border-radius: 50px;
	padding: 0.3em 1.5em;
	margin-bottom: 18px;
}
.processHed .txt{
	font-size: 1.125em;
}
.processWrap{
	margin-bottom: 70px;
}
.processWrapTtl{
	font-size: 1.25em;
    font-weight: 700;
    color: #ff0000;
    text-align: center;
    border-top: #e5e5e5 2px solid;
    background-image: url(../images/pat03.png);
    background-repeat: repeat-x;
    padding-bottom: 20px;
}
.processWrapTtl span{
	display: inline-block;
	width: 240px;
    padding: 5px 0;
	background: #fff;
}
.processWrapTtl span img{
	margin-right: 1em;
}
.processWrapRead{
	text-align: center;
	font-weight: 700;
}
@media (max-width: 767px) {
	.processHed{
		margin-bottom: 30px;
	}
	.processHed .case{
		font-size: 1.25em;
		padding: 0.3em 1em;
	}
	.processHed .txt{
		font-size: 1.125em;
	}
	.processWrap{
		margin-bottom: 35px;
	}
	.processWrapTtl{
		font-size: 1.25em;
		padding-bottom: 20px;
	}
	.processWrapTtl span{
		display: inline-block;
		width: 180px;
	}
}
/*-----------------------------------------------------------------------
                              processList
------------------------------------------------------------------------*/
.processList{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
    -webkit-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-pack: justify;
	-webkit-align-content: stretch;
	-ms-align-content: stretch;
	align-content: stretch;
}
.processList .process{
	position: relative;
	border: #ff0000 2px solid;
	padding: 40px 15px 15px;
	margin-top: 46px;
}
.processList .process .num{
	position: absolute;
	width: 50px;
	height: 54px;
	top: 0;
	left: 50%;
	margin: -27px 0 0 -25px;
	text-align: center;
	font-size:1.5em;;
	font-weight: 700;
	color: #fff;
	line-height: 2;
}
.process01 .processList .process .num{
	background: url(../images/process/tag_b.png) ;
	background-size: 50px auto;
}
.process02 .processList .process .num{
	background: url(../images/process/tag_r.png) ;
	background-size: 50px auto;
}
.process03 .processList .process .num{
	background: url(../images/process/tag_g.png) ;
	background-size: 50px auto;
}
.processList .process .innre{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
    -webkit-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-pack: justify;
}
.processList .process .desc{
	width: 59%;
}
.processList .process .desc .ttl{
	font-size: 1.5em;
	font-weight: 700;
}
.processList .process .desc .sttl{
	font-weight: 700;
	padding: 0.1em 0 0.3em;
}
.processList .process .desc .txt{
	font-size: 0.875em;
}
.processList .process .pic{
	width: 36%;
	background-size: cover;
	min-height: 110px;
}
.processList .process .pic.btm{
	background-position: bottom;
}
.processEx{
	background: #e6ce7c;
	padding: 30px 30px 15px;
	margin-top: 20px;
}
.processEx .catch{
	text-align: center;
	margin-bottom: 15px;
}
.processEx .catch.block{
	padding-top: 40px;
}
.processEx .exTtl{
	background: #ff0000;
	border-radius: 50px;
	text-align: center;
	color: #ffffff;
	font-size: 1.125em;
	padding: 0.3em 0;
	margin-bottom: 15px;
}
.processEx .txt{
	text-align: center;
	margin-bottom: 20px;
}
.processEx .exStaff{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
    -webkit-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-pack: justify;
	-webkit-align-items: center;
	-ms-align-items: center;
	align-items: center;
}
.processEx .exStaff .staffPic{
	width: 30%;
}
.processEx .exStaff.block .staffPic{
	width: 100%;
	text-align: center;
	margin-bottom: 30px;
}
.processEx .exStaff.block .staffPic img{
	height: 140px;
}
.processEx .exStaff .staffTxt{
	width: 64%;
}
.processEx .exStaff .staffTxt p{
	background: #ffffff;
	padding:15px;
	position: relative;
	font-size: 0.875em;
}
.processEx .exStaff.block .staffTxt{
	width: 100%;
}

.processEx .exStaff .staffTxt.left p::before{
	content: "";
	position: absolute;
	top: 50%;
	left: -30px;
 	margin-top: -15px;
	border: 15px solid transparent;
	border-right: 15px solid #ffffff;
}
.processEx .exStaff .staffTxt.top p::before{
	content: "";
	position: absolute;
	top:-30px;
	left: 50%;
 	margin: 0 0 0 -15px;
	border: 15px solid transparent;
	border-bottom: 15px solid #ffffff;
}
.processWrap .graph{
	width: 100%;
	text-align: center;
	margin: 40px 0 20px;
}
@media (max-width: 767px) {
	.processList .process{
		padding: 20px 10px 10px;
		margin-top: 35px;
	}
	.processList .process .num{
		font-size: 1.25em;;
		line-height: 2.5;
	}
	.processList .process .desc{
		width: 64%;
	}
	.processList .process .desc img{
		height: 16px;
	}
	.processList .process .desc .ttl{
		font-size: 1.25em;
	}
	.processList .process .desc .sttl{
		font-size: 0.857em;
		padding: 0.1em 0 0.3em;
	}
	.processList .process .desc .txt{
		font-size: 0.75em;
	}
	.processList .process .pic{
		width: 35%;
		min-height:inherit;
	}
	.processEx{
		padding: 15px 15px 10px;
	}
	.processEx .catch{
		margin-bottom: 10px;
	}
	.processEx .catch img{
		height: 22px;
	}
	.processEx .catch.block{
		padding-top: 20px;
	}
	.processEx .exTtl{
		font-size: 1em;
		padding: 0.3em 0;
		margin-bottom: 10px;
	}
	.processEx .txt{
		text-align: center;
		margin-bottom: 10px;
	}

	.processEx .exStaff .staffPic{
		width: 30%;
	}
	.processEx .exStaff.block .staffPic{
		width: 30%;
		margin-bottom: 0;
	}
	.processEx .exStaff.block .staffPic img{
		height: 95px;
	}
	.processEx .exStaff .staffTxt{
		width: 64%;
	}
	.processEx .exStaff .staffTxt p{
		padding:10px;
	}
	.processEx .exStaff.block .staffTxt{
		width: 64%;
	}
	.processEx .exStaff.block .staffTxt p{
		margin-top:0;
	}
	.processEx .exStaff .staffTxt.left p::before{
		top: 50%;
		left: -20px;
		margin-top: -5px;
		border: 10px solid transparent;
		border-right: 10px solid #ffffff;
	}
	.processEx .exStaff .staffTxt.top p::before{
		top:50%;
		left:-20px;
		margin: -5px 0 0 0;
		border: 10px solid transparent;
		border-right: 10px solid #ffffff;
	}
	.processWrap .graph{
		margin: 20px 0 10px;
	}
}
/*--------------------------------------------*/

.process01 .processList >div{
	width: 49%;
}
.process01 .process{
	height: 170px;
}
.process01 .processEx{
		height: 412px;
}
@media (max-width: 767px) {
	.process01 .processList >div{
		width: 100%;
	}
	.process01 .process{
		height:auto;
	}
	.process01 .processEx{
		height: auto;
	}
}
/*----------------------------------------------*/
.process02 .processExWrap{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
    -webkit-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-pack: justify;
}
.process02 .processExWrap .processEx{
	width: 49%;
}
.process02 .processExWrap .processEx .catch{
	float: left;
	width: 40%;
	margin-left: 10px;
}
.process02 .processExWrap .processEx .exTtl{
	display: block;
	width: 52%;
	float: right;
	text-align: center;
	padding: 0.3em 0;
	margin-bottom: 15px;
}
.process02 .processExWrap .processEx .txt{
	clear: both;
	text-align: left;
	height: 4em;
}
.process02 .processList >div{
	width: 32%;
}
.process02 .process{
	height: auto;
}
.process02 .processList .process .desc{
	width: 100%;
	margin-bottom: 10px;
}
.process02 .processList .process .pic{
	width: 100%;
	min-height: 150px;
}
.process02 .processList .processEx{
	padding: 15px;
}
.process02 .processList .processEx .txt{
	height:5em;
}
@media (max-width: 767px) {

	.process02 .processExWrap .processEx{
		width: 100%;
	}
	.process02 .processExWrap .processEx .catch{
		float: none;
		width: 100%;
		margin-left: 0px;
	}
	.process02 .processExWrap .processEx .exTtl{
		width: 100%;
		float: none;
		padding: 0.3em 0;
		margin-bottom: 10px;
	}
	.process02 .processExWrap .processEx .txt{
		text-align: center;
		height: auto;
	}
	.process02 .processList >div{
		width: 100%;
	}
	.process02 .process{
		height: auto;
	}
	.process02 .processList .process .desc{
		width: 64%;
		margin-bottom: 0;
	}
	.process02 .processList .process .pic{
		width: 35%;
		min-height:inherit;
	}
	.process02 .processList .processEx{
		padding: 10px;
	}
	.process02 .processList .processEx .txt{
		height:auto;
	}
}

/*----------------------------------------------*/
.process03 .processList >div{
	width: 49%;
}
@media (max-width: 767px) {
	.process03 .processList >div{
		width:100%;
	}
}
/*-----------------------------------------------------------------------
                              processOther
------------------------------------------------------------------------*/
.otherHed{
	text-align: center;
}
.otherHed .read{
	margin: 20px 0;
	font-size: 1.125em;
}
.processOther .processExList{
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
    -webkit-justify-content: space-between;
	justify-content: space-between;
	-ms-flex-pack: justify;
}
.processOther .processExList >div{
	width: 32%;
}
.processOther .processEx{
	padding: 15px;
}
.processOther .processEx .txt{
	height: 5em;	
}

.endWrap{
	border: #ff0000 2px solid;
	margin: 60px 0 50px;
	padding: 30px 0 40px;
	text-align: center;
}
.endWrap .txt{
	margin: 25px 0 0;
	font-size: 1.125em;
	line-height: 1.88;
}

@media (max-width: 767px) {
	.otherHed .read{
		margin: 10px 0 0;
		font-size: 1em;
	}
	.processOther .processExList >div{
		width: 100%;
	}
	.processOther .processEx{
		padding: 10px;
	}
	.processOther .processEx .txt{
		height:auto;	
	}
	.endWrap{
		margin:30px 0;
		padding:15px 10px;
		text-align: center;
	}
	.endWrap .endTtl img{
		height: 30px
	}
	.endWrap .txt{
		margin: 10px 0 0;
		font-size: 1em;
	}
}
