@charset "UTF-8";
/* CSS Document */

#main{
	position: relative;
}

#main > .inner .pageTit{
	text-align: center;
	height: 135px;
	position: relative;
}
#main > .inner .pageTit::after{
	content: '';
	width: 120px;
	height: 6px;
	position: absolute;
	bottom:0;
	left:50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background: #00a0ca;
}
#main > .inner .pageTit .jp{
	display: block;
	font-size: 0.22rem;
	letter-spacing: 0.15em;
	color: #00a0ca;
	margin-bottom: 15px;
}
#main > .inner .pageTit img{
	height: 45px;
	width: auto;
}
#main > .inner .pageTit img.fl{
	height: 60px;
	width: auto;
}
/*=============================
service01
=============================*/
.service01 #main{
	height: 53vw;
	min-height: 745px;
	background: url(../img/service/service01_mainPh.jpg) no-repeat bottom center/cover;
}
.service01 #main > .inner{
	position: relative;
	top:50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

@media (max-width: 1400px) {
	.service01 #main > .inner{
		position: relative;
		top:160px;
		-webkit-transform: translateY(0%);
		transform: translateY(0%);
	}
}

.service01 #main .copy{
	margin-top: 80px;
	text-align: center;
	font-size: 0.38rem;
	line-height: 2.0;
	color: #374c56;
	letter-spacing: 0.15em;
	padding-left: 0.5em;
}
.service01 #main .copy .colorA{color: #c3a75c;}
.service01 #main .copy .colorB{color: #3288b5;}
.service01 #main .copy .colorC{color: #e4707d;}
.service01 #main .copy .colorD{color: #5a874f;}



.service01 #contents{
	position: relative;
	padding-bottom: 155px;
	background:url(../img/service/service01_bg.png) #dcebf2 no-repeat bottom center;
}
.service01 #contents .list{
	width: 1020px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	top:-100px;
	margin-bottom: 190px;
}

.service01 #contents .list li{
	position: relative;
}
.service01 #contents .list li:nth-child(even){
	text-align: right;
}
.service01 #contents .list li .txtArea{
	display: inline-block;
	background: #FFF;
	padding: 30px 30px 25px;
	text-align: left;
	box-shadow:0px 0px 10px 0px rgba(0,0,0,0.1);
	position: relative;
	z-index: 5;
}
.service01 #contents .list li .txtArea h3{
	padding-bottom: 25px;
	margin-bottom: 20px;
	white-space: nowrap;
}
.service01 #contents .list li .txtArea h3 span{
	display: inline-block;
}
.service01 #contents .list li .txtArea h3 .en{
	font-size: 0.4rem;
	font-style: italic;
	margin-right: 10px;
	white-space: nowrap;
}
.service01 #contents .list li .txtArea h3 .jp{
	font-size: 0.28rem;
	letter-spacing: 0.15em;
	white-space: nowrap;
}

.service01 #contents .list li.list01{margin-bottom: 190px;}
.service01 #contents .list li.list02{margin-bottom: 90px;}
.service01 #contents .list li.list03{margin-bottom: 225px;}
.service01 #contents .list li.list04{}

.service01 #contents .list li.list01 .txtArea{width: 680px; margin-left:  20px;}
.service01 #contents .list li.list02 .txtArea{width: 650px; margin-right: 50px;}
.service01 #contents .list li.list03 .txtArea{width: 745px; margin-left:  20px;}
.service01 #contents .list li.list04 .txtArea{width: 745px; margin-right: 20px;}

.service01 #contents .list li.list01 h3{color: #c2a65b; border-bottom: 2px dotted #c2a65b;}
.service01 #contents .list li.list02 h3{color: #3288b5; border-bottom: 2px dotted #3288b5;}
.service01 #contents .list li.list03 h3{color: #e4707d; border-bottom: 2px dotted #e4707d;}
.service01 #contents .list li.list04 h3{color: #5a874f; border-bottom: 2px dotted #5a874f;}


.service01 #contents .list li .txtArea .txt{
	font-size: 0.16rem;
	line-height: 1.85;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}


.service01 #contents .list li::after{
	content: '';
	display: block;
	position: absolute;
	z-index: 4;
}
.service01 #contents .list li.list01::after{
	background: url(../img/service/service01_ph01.jpg) no-repeat center center/cover;
	width: 513px;
	height: 329px;
	top:60px;
	right:0;
	box-shadow:20px 20px 0px 0px rgba(195,167,92,0.2);
}
.service01 #contents .list li.list02::after{
	background: url(../img/service/service01_ph02.jpg) no-repeat center center/cover;
	width: 456px;
	height: 339px;
	top:-20px;
	left:0;
	box-shadow:-20px 20px 0px 0px #B9D5E4;
}
.service01 #contents .list li.list03::after{
	background: url(../img/service/service01_ph03.jpg) no-repeat center center/cover;
	width: 488px;
	height: 314px;
	top:80px;
	right:0;
	box-shadow:-20px 20px 0px 0px rgba(228,112,125,0.1);
}
.service01 #contents .list li.list04::after{
	background: url(../img/service/service01_ph04.jpg) no-repeat center center/cover;
	width: 536px;
	height: 312px;
	top:50px;
	left:0;
	box-shadow:20px 20px 0px 0px rgba(90,135,89,0.2);
}

/*
.service01 #contents .list li .txtAreaBg{
	position: absolute;
	display: block;
	z-index: 999;
}

.service01 #contents .list li:nth-child(odd) .txtAreaBg{
	opacity: 0.5;
	background: #117abd;
	background: -moz-linear-gradient(left,  #117abd 0%, #3ad2db 100%);
	background: -webkit-linear-gradient(left,  #117abd 0%,#3ad2db 100%);
	background: linear-gradient(to right,  #117abd 0%,#3ad2db 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#117abd', endColorstr='#3ad2db',GradientType=1 );
}
.service01 #contents .list li:nth-child(even) .txtAreaBg{
	opacity: 0.5;
	background: #3ad2db;
	background: -moz-linear-gradient(left,  #3ad2db 44%, #117abd 100%);
	background: -webkit-linear-gradient(left,  #3ad2db 44%,#117abd 100%);
	background: linear-gradient(to right,  #3ad2db 44%,#117abd 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3ad2db', endColorstr='#117abd',GradientType=1 );
}

.service01 #contents .list li.list01 .txtAreaBg{width:477px; height:253px; top:95px; left:50px;}
.service01 #contents .list li.list02 .txtAreaBg{width:800px; height:280px; top:40px; right:30px;}
.service01 #contents .list li.list03 .txtAreaBg{width:697px; height:270px; top:20px; left:90px;}
.service01 #contents .list li.list04 .txtAreaBg{width:665px; height:220px; top:90px; left:30px;}
*/

.service01 #contents .list li .bg{
	position: absolute;
	z-index: 3;
}

.service01 #contents .list li:nth-child(odd) .bg{
	opacity: 0.5;
	background: #117abd;
	background: -moz-linear-gradient(left,  #117abd 0%, #3ad2db 100%);
	background: -webkit-linear-gradient(left,  #117abd 0%,#3ad2db 100%);
	background: linear-gradient(to right,  #117abd 0%,#3ad2db 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#117abd', endColorstr='#3ad2db',GradientType=1 );
}
.service01 #contents .list li:nth-child(even) .bg{
	opacity: 0.5;
	background: #3ad2db;
	background: -moz-linear-gradient(left,  #3ad2db 44%, #117abd 100%);
	background: -webkit-linear-gradient(left,  #3ad2db 44%,#117abd 100%);
	background: linear-gradient(to right,  #3ad2db 44%,#117abd 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#3ad2db', endColorstr='#117abd',GradientType=1 );
}

.service01 #contents .list li.list01 .bg{width:477px; height:253px !important; top:95px; left:50px;}
.service01 #contents .list li.list02 .bg{width:800px; height:269px !important; top:40px; right:30px;}
.service01 #contents .list li.list03 .bg{width:697px; height:260px !important; top:20px; left:90px;}
.service01 #contents .list li.list04 .bg{width:665px; height:210px !important; top:40px; right:70px;}

.service01 #contents .txt01{
	text-align: center;
	font-size: 0.26rem;
	color: #374c56;
}
.service01 #contents .txt01 > span{
	display: inline-block;
	padding-bottom: 10px;
	border-bottom: 1px solid #374c56;
	letter-spacing: 0.1em;
}

/*=============================
service02
=============================*/
.service02 #main{
	height: 335px;
	background: #f0f4f6;
	padding-top: 155px;
}

.service02 #contents{
	position: relative;
	background: #dae9f0;
	padding: 85px 0 18.5vw;
}
@media (max-width: 1400px) {
	.service02 #contents{
		padding: 85px 0 260px;
	}
}
.service02 #contents > *{
	position: relative;
	z-index: 1;
}
.service02 #contents .bg{
	position: absolute;
	top:0;
	left:0;
	width: 100%;
	height: 100%;
	z-index: 10;
	pointer-events:none;
}
.service02 #contents::before,
.service02 #contents .bg::before,
.service02 #contents .bg::after{
	content: '';
	display: block;
	position: absolute;
}
.service02 #contents::before{
	width: 190px;
	height: 186px;
	background: url(../img/service/service02_bg02.png) no-repeat center center/cover;
	top:300px;
	left:50%;
	margin-left: 555px;
}
.service02 #contents .bg::before{
	width: 467px;
	height: 224px;
	background: url(../img/service/service02_bg01.png) no-repeat center center/cover;
	top:-85px;
	left:50%;
	margin-left: -845px;
}
.service02 #contents .bg::after{
	width: 100%;
	height: 19.5vw;
	min-height: 274px;
	background: url(../img/service/service02_bg03.png) no-repeat center center/cover;
	bottom:0;
	left:0;
	z-index: 10 !important;
}

.service02 #contents .copy{
	text-align: center;
	font-size: 0.38rem;
	line-height: 2.0;
	color: #374c56;
	letter-spacing: 0.15em;
	margin-bottom: 70px;
}
.service02 #contents .txt01{
	text-align: center;
	font-size: 0.18rem;
	line-height: 2.5;
	color: #374c56;
	letter-spacing: 0.15em;
	margin-bottom: 60px;
}


.service02 #contents dl.list{
	width: 980px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
	padding-top: 148px;
}
.service02 #contents dl.list > dt{
	position: absolute;
	top:0;
	width: 240px;
	height: 148px;
}
.service02 #contents dl.list > dt.list01{left: 0;}
.service02 #contents dl.list > dt.list02{left:calc(240px * 1 + 6px * 1);}
.service02 #contents dl.list > dt.list03{left:calc(240px * 2 + 6px * 2);}
.service02 #contents dl.list > dt.list04{left:calc(240px * 3 + 6px * 3);}


.service02 #contents dl.list > dt a{
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	color: #374c56;
	background: #f6f6f6;
	text-decoration: none;
	text-align: center;
}
.service02 #contents dl.list > dt a.on,
.service02 #contents dl.list > dt.act_pc a{
	color: #FFF;
}
.service02 #contents dl.list > dt.list01 a.on,
.service02 #contents dl.list > dt.list01.act_pc a{background: #d86f7b;}
.service02 #contents dl.list > dt.list02 a.on,
.service02 #contents dl.list > dt.list02.act_pc a{background: #7f7fa4;}
.service02 #contents dl.list > dt.list03 a.on,
.service02 #contents dl.list > dt.list03.act_pc a{background: #d08060;}
.service02 #contents dl.list > dt.list04 a.on,
.service02 #contents dl.list > dt.list04.act_pc a{background: #1e7b7b;}

.service02 #contents dl.list > dt.act_pc a::before{
	content: '';
	display: block;
	position: absolute;
	bottom:-16px;
	left:50%;
	margin-left: -10px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 16px 10px 0 10px;
	z-index: 10;
}
.service02 #contents dl.list > dt.list01.act_pc a::before{border-color: #d86f7b transparent transparent transparent;}
.service02 #contents dl.list > dt.list02.act_pc a::before{border-color: #7f7fa4 transparent transparent transparent;}
.service02 #contents dl.list > dt.list03.act_pc a::before{border-color: #d08060 transparent transparent transparent;}
.service02 #contents dl.list > dt.list04.act_pc a::before{border-color: #1e7b7b transparent transparent transparent;}


.service02 #contents dl.list > dt a .num{
	display: block;
	width: 100%;
	font-size: 0.36rem;
	font-style: italic;
	margin-bottom: 20px;
	letter-spacing: 0.15em;
	text-align: center;
}
.service02 #contents dl.list > dt a .jp{
	display: block;
	width: 100%;
	font-size: 0.2rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
	text-align: center;
}


.service02 #contents dl.list > dd{
	display: none;
	padding: 80px 0px 80px 120px;
}
.service02 #contents dl.list > dd.open_pc{
	display: block;
	animation: open 0.25s linear 0s 1 normal both;
}
@-webkit-keyframes open {
	0% {opacity: 0;}
	100% {opacity: 1;}
}
@keyframes         open {
	0% {opacity: 0;}
	100% {opacity: 1;}
}

.service02 #contents dl.list > dd > .inner{
	position: relative;
}
.service02 #contents #list01{background: url(../img/service/service02_01_pic.svg) no-repeat #FFF top 60px right 50px/250px auto;}
.service02 #contents #list02{background: url(../img/service/service02_02_pic.svg) no-repeat #FFF top 45px right 50px/147px auto;}
.service02 #contents #list03{background: url(../img/service/service02_03_pic.svg) no-repeat #FFF top 110px right 70px/380px auto;}
.service02 #contents #list04{background: url(../img/service/service02_04_pic.svg) no-repeat #FFF top 145px right 105px/165px auto;}

.service02 #contents .tabC h3{
	font-size: 0.4rem;
	line-height: 1.6;
	letter-spacing: 0.15em;
	color: #374c56;
	margin-bottom: 75px;
}
.service02 #contents #list04 h3{font-size: 0.34rem;}

.service02 #contents .tabC dl dt{
	font-size: 0.24rem;
	line-height: 1.85;
	letter-spacing: 0.1em;
	color: #374c56;
	margin-bottom: 25px;
}
.service02 #contents .tabC dl dd:not(:last-of-type){margin-bottom: 30px;}
.service02 #contents .tabC dl dd ul{
	border-bottom: 2px dotted #b9c1c4;
}

.service02 #contents #list01 dl{background: url(../img/service/service02_01_ph.jpg) no-repeat top 90px right 40px;}
.service02 #contents #list01 dl dt {text-indent: -0.5em;}
.service02 #contents #list01 dl dd ul{width: 580px;}
.service02 #contents #list02 dl{background: url(../img/service/service02_02_ph.jpg) no-repeat top 120px right 40px;}
.service02 #contents #list02 dl dd ul{width: 590px;}
.service02 #contents #list03 dl{background: url(../img/service/service02_03_ph.jpg) no-repeat top 120px right 35px;}
.service02 #contents #list03 dl dd ul{width: 590px;}
.service02 #contents #list04 dl{background: url(../img/service/service02_04_ph.jpg) no-repeat top 180px right 35px;}
.service02 #contents #list04 dl dd ul{width: 580px;}/**/

.service02 #contents #list04 dl dd ul.irre{width: 740px;}
.service02 #contents #list04 dl dd ul.irre li.irre01{width: 580px;}
.service02 #contents #list04 dl dd ul.irre li.irre02{width: 740px;}

.service02 #contents .tabC dl dd ul li{
	font-size: 0.16rem;
	line-height: 1.85;
	letter-spacing: 0.05em;
	color: #374c56;
	padding: 25px 0px 25px 10px;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	border-top: 2px dotted #b9c1c4;
}
.service02 #contents .tabC dl dd ul li::before{
	content: '●';
	color: #00a0ca;
}


.service02 #contents .tabC .info{
	width: 740px;
	margin-top: 60px;
	box-shadow: 10px 10px 0px 0px #eaf2f4;
}
.service02 #contents .tabC .info h4{
	background: #00a0ca;
	text-align: center;
	font-size: 0.24rem;
	color: #FFF;
	letter-spacing: 0.1em;
	height: 55px;
	position: relative;
}
.service02 #contents .tabC .info .txt{
	border: 1px solid #00a0ca;
	padding: 20px;
	font-size: 0.17rem;
	line-height: 2.0;
	color: #00a0ca;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}


/*=============================
flow
=============================*/
.flow #main{
	height: 27.5vw;
	min-height: 385px;
	background: url(../img/flow/flow_mainPh.jpg) no-repeat bottom center/cover;
}
.flow #main > .inner{
	position: relative;
	top:50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

@media (max-width: 1400px) {
	.flow #main > .inner{
		position: relative;
		top:160px;
		-webkit-transform: translateY(0%);
		transform: translateY(0%);
	}
}


.flow #bloc01{
	padding-top: 60px;
	padding-bottom: 75px;
	background: url(../img/flow/flow_bg01.jpg) no-repeat top center;
	position: relative;
}
.flow #bloc01::before,
.flow #bloc01::after{
	content: '';
	display: block;
	position: absolute;
}
.flow #bloc01::before{
	width: 325px;
	height: 165px;
	background: url(../img/flow/flow_bg03.png) no-repeat center center/cover;
	bottom:340px;
	left:50%;
	margin-left: -720px;
}
.flow #bloc01::after{
	width: 516px;
	height: 165px;
	background: url(../img/flow/flow_bg04.png) no-repeat center center/cover;
	bottom:-120px;
	left:50%;
	margin-left: 335px;
	z-index: 10;
}

.flow #bloc01 h2{
	text-align: center;
	color: #00a0ca;
	font-size: 0.32rem;
	line-height: 2.0;
	letter-spacing: 0.15em;
	margin-bottom: 40px;
}
.flow #bloc01 .txt01{
	text-align: center;
	color: #374c56;
	font-size: 0.20rem;
	line-height: 2.5;
	letter-spacing: 0.1em;
	margin-bottom: 40px;
}
.flow #bloc01 > .inner{
	width: 1010px;
	margin-left: auto;
	margin-right: auto;
}

.flow #bloc01 .listBox{
	background: #FFF;
	box-shadow:3px 3px 10px 0px rgba(0,0,0,0.1);
	padding: 15px;
}

.flow #bloc01 .listBox > ul,
.flow #bloc01 .listBox ul.sub{
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
}
/*
.flow #bloc01 .listBox > ul > li:nth-child(1){
	-ms-flex-preferred-size: 220px;
	-webkit-flex-basis: 220px;
	flex-basis: 220px;
	width: 220px;
}
.flow #bloc01 .listBox > ul > li:nth-child(2),
.flow #bloc01 .listBox > ul > li:nth-child(3){
	-ms-flex-preferred-size: 300px;
	-webkit-flex-basis: 300px;
	flex-basis: 300px;
	width: 300px;
}
.flow #bloc01 .listBox > ul > li:nth-child(4){
	-ms-flex-preferred-size: 160px;
	-webkit-flex-basis: 160px;
	flex-basis: 160px;
	width: 160px;
}*/


.flow #bloc01 .listBox > ul.head{
	border-top: 2px dotted #70b2d1;
}
.flow #bloc01 .listBox > ul.head li:nth-child(1){
	-ms-flex-preferred-size: 220px;
	-webkit-flex-basis: 220px;
	flex-basis: 220px;
	width: 220px;
}
.flow #bloc01 .listBox > ul.head li:nth-child(2),
.flow #bloc01 .listBox > ul.head li:nth-child(3){
	-ms-flex-preferred-size: 300px;
	-webkit-flex-basis: 300px;
	flex-basis: 300px;
	width: 300px;
}
.flow #bloc01 .listBox > ul.head li:nth-child(4){
	-ms-flex-preferred-size: 160px;
	-webkit-flex-basis: 160px;
	flex-basis: 160px;
	width: 160px;
}
.flow #bloc01 .listBox > ul.head li{
	padding: 5px;
	height: 45px;
	border-bottom: 2px dotted #70b2d1;
}
.flow #bloc01 .listBox > ul.head li:not(:last-child){
	border-right: 2px dotted #70b2d1;
}
.flow #bloc01 .listBox > ul.head li:first-child{padding-left: 0;}
.flow #bloc01 .listBox > ul.head li:last-child{padding-right: 0;}
.flow #bloc01 .listBox > ul.head li p{
	height: 100%;
	color: #FFF;
	text-align: center;
	font-size: 0.16rem;
}
.flow #bloc01 .listBox > ul.head li.hColor01 p{background: #55bbda;}
.flow #bloc01 .listBox > ul.head li.hColor02 p{background: #d8b83a;}
.flow #bloc01 .listBox > ul.head li.hColor03 p{background: #33b3b0;}
.flow #bloc01 .listBox > ul.head li.hColor04 p{background: #f29c9f;}


.flow #bloc01 .listBox > ul.list > li:nth-child(1){
	-ms-flex-preferred-size: 220px;
	-webkit-flex-basis: 220px;
	flex-basis: 220px;
	width: 220px;
	border-right: 2px dotted #70b2d1;
	border-bottom: 2px dotted #70b2d1;
}
.flow #bloc01 .listBox > ul.list > li:nth-child(2){
	-ms-flex-preferred-size: 760px;
	-webkit-flex-basis: 760px;
	flex-basis: 760px;
	width: 760px;
	border-bottom: 2px dotted #70b2d1;
}

.flow #bloc01 .listBox > ul.list{
	font-size: 0.16rem;
	line-height: 1.25;
	color: #374c56;
}

.flow #bloc01 .listBox > ul.list > li:first-child{
	padding: 10px 5px;
}
.flow #bloc01 .listBox > ul.list01 > li:first-child{color: #d3525f;}
.flow #bloc01 .listBox > ul.list02 > li:first-child{color: #6e6a98;}
.flow #bloc01 .listBox > ul.list03 > li:first-child{color: #ee7948;}
.flow #bloc01 .listBox > ul.list04 > li:first-child{color: #1fa1a0;}
.flow #bloc01 .listBox > ul.list01 > li:first-child::before,
.flow #bloc01 .listBox > ul.list02 > li:first-child::before,
.flow #bloc01 .listBox > ul.list03 > li:first-child::before,
.flow #bloc01 .listBox > ul.list04 > li:first-child::before{
	display: inline-block;
	font-size: 0.12rem;
	margin-right: 0.5em;
	color: #FFF;
	width: 16px;
	height: 16px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	text-align: center;
	vertical-align: middle;
	margin-top: -0.35em;
}
.flow #bloc01 .listBox > ul.list01 > li:first-child::before{
	content: '1';
	background: #d3525f;
}
.flow #bloc01 .listBox > ul.list02 > li:first-child::before{
	content: '2';
	background: #6e6a98;
}
.flow #bloc01 .listBox > ul.list03 > li:first-child::before{
	content: '3';
	background: #ee7948;
}
.flow #bloc01 .listBox > ul.list04 > li:first-child::before{
	content: '4';
	background: #1fa1a0;
}



.flow #bloc01 .listBox > ul.list > li > ul.sub{

}
.flow #bloc01 .listBox ul.sub li:nth-child(1),
.flow #bloc01 .listBox ul.sub li:nth-child(2){
	-ms-flex-preferred-size: 300px;
	-webkit-flex-basis: 300px;
	flex-basis: 300px;
	width: 300px;
}
.flow #bloc01 .listBox ul.sub li:nth-child(3){
	-ms-flex-preferred-size: 160px;
	-webkit-flex-basis: 160px;
	flex-basis: 160px;
	width: 160px;
}

.flow #bloc01 .listBox ul.sub li{
	padding: 5px;
	padding-bottom: 0;
	border-right: 2px dotted #70b2d1;
}
.flow #bloc01 .listBox ul.sub li:last-child{
	padding-right: 0;
	border-right: none;
}
.flow #bloc01 .listBox > ul.list > li > ul.sub:last-child li{padding-bottom: 5px;}

.flow #bloc01 .listBox ul.sub li p{
	background: #f5f5f5;
	padding: 5px 10px;
	white-space: nowrap;
	font-size: 0.15rem;
	height: 100%;
}
/*
.flow #bloc01 .listBox > ul.list{
	font-size: 0.16rem;
	line-height: 1.25;
	color: #374c56;
}
.flow #bloc01 .listBox > ul.list > li{
	padding: 5px;
	border-bottom: 2px dotted #70b2d1;
}
.flow #bloc01 .listBox > ul.list > li:not(:last-child){
	border-right: 2px dotted #70b2d1;
}
.flow #bloc01 .listBox > ul.list > li:first-child{
	padding: 10px 5px;
}

.flow #bloc01 .listBox > ul.list01 > li:first-child{color: #d3525f;}
.flow #bloc01 .listBox > ul.list02 > li:first-child{color: #6e6a98;}
.flow #bloc01 .listBox > ul.list03 > li:first-child{color: #ee7948;}
.flow #bloc01 .listBox > ul.list04 > li:first-child{color: #1fa1a0;}

.flow #bloc01 .listBox > ul.list01 > li:first-child::before,
.flow #bloc01 .listBox > ul.list02 > li:first-child::before,
.flow #bloc01 .listBox > ul.list03 > li:first-child::before,
.flow #bloc01 .listBox > ul.list04 > li:first-child::before{
	display: inline-block;
	font-size: 0.12rem;
	margin-right: 0.5em;
	color: #FFF;
	width: 16px;
	height: 16px;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	text-align: center;
	vertical-align: middle;
	margin-top: -0.35em;
}
.flow #bloc01 .listBox > ul.list01 > li:first-child::before{
	content: '1';
	background: #d3525f;
}
.flow #bloc01 .listBox > ul.list02 > li:first-child::before{
	content: '2';
	background: #6e6a98;
}
.flow #bloc01 .listBox > ul.list03 > li:first-child::before{
	content: '3';
	background: #ee7948;
}
.flow #bloc01 .listBox > ul.list04 > li:first-child::before{
	content: '4';
	background: #1fa1a0;
}

.flow #bloc01 .listBox ul.sub li{
	background: #f5f5f5;
	padding: 5px 10px;
	white-space: nowrap;
	font-size: 0.15rem;
}
.flow #bloc01 .listBox ul.sub li:not(:last-child){
	margin-bottom: 5px;
}

.flow #bloc01 .listBox ul.sub li.row2{
	height: 3.175em;
}*/


.flow #bloc02{
	background: url(../img/flow/flow_bg08.png) no-repeat #e4eff4 bottom center;
	padding-top: 90px;
	padding-bottom: 130px;
	position: relative;
}
.flow #bloc02 > *{
	position: relative;
	z-index: 1;
}
.flow #bloc02::before{
	content: '';
	display: block;
	width: 320px;
	height: 600px;
	background: url(../img/flow/flow_bg05.png) no-repeat center center/contain;
	position: absolute;
	top:70px;
	left:50%;
	z-index: 0;
	margin-left: -585px;
}
.flow #bloc02 h2{
	text-align: center;
	font-size: 0.28rem;
	letter-spacing: 0.15em;
	color: #FFF;
	height: 55px;
	margin-bottom: 50px;
}
.flow #bloc02 h2 p{
	display: inline-block;
	background: #00a0ca;
	height: 100%;
	padding: 0 20px;
}

.flow #bloc02 .copy{
	text-align: center;
	font-size: 0.38rem;
	line-height: 2.0;
	letter-spacing: 0.15em;
	color: #374c56;
	margin-bottom: 40px;
}
.flow #bloc02 .copyList{
	margin-bottom: 55px;
}
.flow #bloc02 .copyList li{
	text-align: center;
	font-size: 0.22rem;
	letter-spacing: 0.1em;
	color: #00a0ca;
}
.flow #bloc02 .copyList li:first-child{
	margin-bottom: 40px;
}
.flow #bloc02 .copyList li p{
	display: inline-block;
	position: relative;
}
.flow #bloc02 .copyList li p::before{
	content: '';
	display: block;
	width: 100%;
	height: 20px;
	background: #FFF;
	position: absolute;
	bottom:-10px;
	z-index: 0;
}
.flow #bloc02 .copyList li p > span{
	position: relative;
	z-index: 5;
}

.flow #bloc02 > .inner{
	width: 900px;
	margin-left: auto;
	margin-right: auto;
}
.flow #bloc02 .txt01 {
	text-align: center;
	font-size: 0.22rem;
	line-height: 2.35;
	letter-spacing: 0.1em;
	color: #374c56;
	margin-bottom: 65px;
}

.flow #bloc02 .stepList dt{
	height: 75px;
	text-align: center;
	margin-bottom: -45px;
	position: relative;
	z-index: 1;
}

.flow #bloc02 .stepList dt p{
	display: inline-block;
	text-align: center;
	height: 100%;
	position: relative;
	padding: 0 30px;
	white-space: nowrap;
	background: #00a0ca;
}
.flow #bloc02 .stepList dt p::before{
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 0 0 8px;
	border-color: transparent transparent transparent #0b89aa;
	position: absolute;
	top:0;
	right:-8px;
}
.flow #bloc02 .stepList dt p img{
	margin-right: 20px;
}
.flow #bloc02 .stepList dt p .txt{
	font-size: 0.3rem;
	letter-spacing: 0.15em;
	color: #FFF;
}


.flow #bloc02 .stepList dd {
	background: #FFF;
	box-shadow:0px 0px 10px 0px rgba(0,0,0,0.1);
	padding: 60px 40px 40px;
	margin-bottom: 50px;
	position: relative;
	z-index: 0;
}
.flow #bloc02 .stepList dd:last-of-type{
	margin-bottom: 0px;
}
.flow #bloc02 .stepList dd h4{
	font-size: 0.26rem;
	line-height: 1.85;
	letter-spacing: 0.15em;
	color: #00a0ca;
	margin-bottom: 10px;
}
.flow #bloc02 .stepList dd .txt{
	font-size: 0.16rem;
	line-height: 1.85;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}


.flow #bloc02 .stepList dd::before{
	content: '';
	display: block;
	width: 179px;
	height: 179px;
	position: absolute;
	top:50px;
	right:40px;
	z-index: 1;
}
.flow #bloc02 .stepList dd:not(:last-of-type)::after{
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 30px 62.5px 0 62.5px;
	border-color: #27869f transparent transparent transparent;

	position: absolute;
	bottom:-30px;
	left:50%;
	z-index: 1;
	margin-left: -62px;
}





/*step01*/
.flow #bloc02 .stepList dd.step01::before{
	background:
		url(../img/flow/flow_step01_icon.svg) no-repeat top left/169px 169px,
		url(../img/flow/flow_step_iconBg.jpg) no-repeat right bottom;
}
.flow #bloc02 .stepList dd.step01 h4{text-indent: -0.5em;}
.flow #bloc02 .stepList dd.step01 .txt{
	font-size: 0.18rem;
	letter-spacing: 0.1em;
	line-height: 2;
	color: #374c56;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}
.flow #bloc02 .stepList dd.step01 .fbox{
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
}
.flow #bloc02 .stepList dd.step01 .fukidashi01{
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin-top: 20px;
	margin-bottom: 30px;
}
.flow #bloc02 .stepList dd.step01 .fukidashi02{
  -webkit-box-pack: center;
     -ms-flex-pack: center;
   justify-content: center;
   margin-bottom: 10px;
}
.flow #bloc02 .stepList dd.step01 .fukidashi02 li{
	margin: 0 15px;
}

.flow #bloc02 .stepList dd.step01 .fbox li{
	border: 1px solid #00a0ca;
	padding: 15px 20px;
	font-size: 0.16rem;
	line-height: 1.65;
	letter-spacing: 0.05em;
	color: #00a0ca;
	position: relative;
}
.flow #bloc02 .stepList dd.step01 .fbox li::before{
	content: '';
	display: block;
	width: 22px;
	height: 20px;
	background: url(../img/flow/flow_step_arrowL.svg) no-repeat center center/cover;
	position: absolute;
	bottom:-19px;
	left:50%;
	margin-left: -11px;
}

.flow #bloc02 .stepList dd.step01 .fbox li.arrowL::before{
	background: url(../img/flow/flow_step_arrowL.svg) no-repeat center center/cover;
}
.flow #bloc02 .stepList dd.step01 .fbox li.arrowC::before{
	background: url(../img/flow/flow_step_arrow.svg) no-repeat center center/cover;
}
.flow #bloc02 .stepList dd.step01 .fbox li.arrowR::before{
	background: url(../img/flow/flow_step_arrowR.svg) no-repeat center center/cover;
}


/*step02*/
.flow #bloc02 .stepList dd.step02::before{
	background:
		url(../img/flow/flow_step02_icon.svg) no-repeat top left/169px 169px,
		url(../img/flow/flow_step_iconBg.jpg) no-repeat right bottom;
}
.flow #bloc02 .stepList dd.step02 ul li{
	font-size: 0.16rem;
	line-height: 1.65;
	letter-spacing: 0.05em;
}
.flow #bloc02 .stepList dd.step02 ul li::before{
	content: '・';
	color: #00a0ca;
}

/*step03*/
.flow #bloc02 .stepList dd.step03::before{
	background:
		url(../img/flow/flow_step03_icon.svg) no-repeat top left/169px 169px,
		url(../img/flow/flow_step_iconBg.jpg) no-repeat right bottom;
}
.flow #bloc02 .stepList dd.step03 .txt{
	width: 585px;
}

/*step04*/
.flow #bloc02 .stepList dd.step04::before{
	background:
		url(../img/flow/flow_step04_icon.svg) no-repeat top left/169px 169px,
		url(../img/flow/flow_step_iconBg.jpg) no-repeat right bottom;
}
.flow #bloc02 .stepList dd.step04 .txt{
	width: 585px;
}

/*step05*/
.flow #bloc02 .stepList dd.step05::before{
	background:
		url(../img/flow/flow_step05_icon.svg) no-repeat top left/169px 169px,
		url(../img/flow/flow_step_iconBg.jpg) no-repeat right bottom;
}
.flow #bloc02 .stepList dd.step05 .txt{
	width: 585px;
}
/*step06*/
.flow #bloc02 .stepList dd.step06::before{
	background:
		url(../img/flow/flow_step06_icon.svg) no-repeat top left/169px 169px,
		url(../img/flow/flow_step_iconBg.jpg) no-repeat right bottom;
}
.flow #bloc02 .stepList dd.step06 .txt{
	width: 585px;
}
/*step07*/
.flow #bloc02 .stepList dd.step07::before{
	background:
		url(../img/flow/flow_step07_icon.svg) no-repeat top left/169px 169px,
		url(../img/flow/flow_step_iconBg.jpg) no-repeat right bottom;
}
.flow #bloc02 .stepList dd.step07 .txt{
	width: 585px;
}


.flow #bloc02 .bg06{
	width: 14vw;
	height: 10.36vw;
	background: url(../img/flow/flow_bg06.png) no-repeat top right/contain;
	position: absolute;
	top:1140px;
	right:0;
	left:none;
}
.flow #bloc02 .bg07{
	width: 15vw;
	height: 12.36vw;
	background: url(../img/flow/flow_bg07.png) no-repeat top left/contain;
	position: absolute;
	top:1795px;
	left:0;
}
@media (max-width: 1400px) {
	.flow #bloc02 .bg06{
		width: 195px;
		height: 145px;
		left:50%;
		margin-left: 508px;
	}
	.flow #bloc02 .bg07{
		width: 210px;
		height: 173px;
		right:50%;
		left:auto;
		margin-right: 490px;
	}
}
/*=============================
eq
=============================*/
.eq #main{
	height: 27.5vw;
	min-height: 385px;
	background: url(../img/eq/eq_mainPh.jpg) no-repeat bottom center/cover;
}
.eq #main > .inner{
	position: relative;
	top:50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}

@media (max-width: 1400px) {
	.eq #main > .inner{
		position: relative;
		top:160px;
		-webkit-transform: translateY(0%);
		transform: translateY(0%);
	}
}


.eq #contents > .txtArea{
	padding: 65px 0 50px;
	background: url(../img/eq/eq_bg.png) no-repeat #FFF top center/100% auto;
}
.eq #contents > .txtArea > .inner{
	width: 800px;
	margin-left: auto;
	margin-right: auto;
}
.eq #contents > .txtArea > .inner h2{
	font-size: 0.38rem;
	line-height: 2.0;
	letter-spacing: 0.15em;
	color: #00a0ca;
	text-align: center;
	margin-bottom: 40px;
}
.eq #contents > .txtArea > .inner .copy{
	font-size: 0.2rem;
	line-height: 2.5;
	letter-spacing: 0.1em;
	color: #374c56;
	text-align: center;
	margin-bottom: 40px;
}
.eq #contents > .txtArea > .inner .txt{
	font-size: 0.16rem;
	line-height: 2.5;
	letter-spacing: 0.05em;
	color: #374c56;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	margin-bottom: 40px;
}
.eq #contents > .txtArea > .inner .zu{
	text-align: center;
}
.eq #contents > .txtArea > .inner .zu img{
	width: 615px;
	height: auto;
}



.eq .listArea{
	background: #e9f5fb;
	padding: 60px 0 130px;
}


.eq .kizaiList{
	width: 801px;/*border分*/
	margin-left: auto;
	margin-right: auto;
	font-size: 0.16rem;

}
.eq .kizaiList > dt{
	font-size: 0.22rem;
	color: #00a0ca;
	margin-bottom: 20px;
}
.eq .kizaiList > dd{
	background: #FFF;
	box-shadow:10px 10px 0px 0px #CCE6F3;
	border-top: 1px solid rgba(0,93,139,0.4);
	border-left: 1px solid rgba(0,93,139,0.4);
	position: relative;
}
.eq .kizaiList > dd:not(:last-of-type){
	margin-bottom: 40px;
}

/*head*/
.eq .kizaiList > dd > .inner > ul.head{
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	background: #00a0ca;
	color: #FFF;
}
.eq .kizaiList > dd > .inner > ul.head li{
	width: 200px;
	height: 36px;
	text-align: center;
	color: #FFF;
	border-right: 1px solid rgba(0,93,139,0.4);
	border-bottom: 1px solid rgba(0,93,139,0.4);
}


.eq .kizaiList > dd > .inner > dl,
.eq .kizaiList > dd > .inner > dl > dd > dl,
.eq .kizaiList > dd > .inner > dl > dd > dl > dd > ul{
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.eq .kizaiList > dd > .inner > dl > dt,
.eq .kizaiList > dd > .inner > dl > dd > dl > dt,
.eq .kizaiList > dd > .inner > dl > dd > dl > dd > ul li{
	width: 200px;
	border-right: 1px solid rgba(0,93,139,0.4);
	border-bottom: 1px solid rgba(0,93,139,0.4);
	padding: 8px 12px;
}
.eq .kizaiList > dd > .inner > dl > dd{
	width: 600px;
}
.eq .kizaiList > dd > .inner > dl > dd > dl > dd{
	width: 400px;
}



.eq .kizaiList > dd::before{
	content: '';
	display: block;
	position: absolute;
}
.eq .kizaiList > dd.list01::before{
	width: 76px;
	height: 118px;
	background: url(../img/eq/eq_pic01.png) no-repeat;
	top: 145px;
	left:-30px;
}
.eq .kizaiList > dd.list02::before{
	width: 263px;
	height: 103px;
	background: url(../img/eq/eq_pic02.png) no-repeat;
	bottom: -20px;
	right: -115px;
}
.eq .kizaiList > dd.list03::before{
	width: 226px;
	height: 69px;
	background: url(../img/eq/eq_pic03.png) no-repeat;
	bottom: -20px;
	left: -90px;
}
.eq .kizaiList > dd.list04::before{
	width: 212px;
	height: 67px;
	background: url(../img/eq/eq_pic04.png) no-repeat;
	bottom: -35px;
	right: -80px;
}
.eq .kizaiList > dd.list05::before{
	width: 126px;
	height: 226px;
	background: url(../img/eq/eq_pic05.png) no-repeat;
	bottom: -60px;
	left: -75px;
}


/*=============================
company
=============================*/
.company #main{
	height: 745px;
	background: #e5f7ff;
	position: relative;
}
.company #main > .inner{
	position: relative;
	top:160px;
}
.company #main .copy{
	width: 800px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 110px;
	font-size: 0.38rem;
	line-height: 2.0;
	color: #00a0ca;
	letter-spacing: 0.15em;
	padding-left: 0.5em;
}

.company #main::before{
	content: '';
	display: block;
	width: 284px;
	height: 868px;
	background: url(../img/company/company_ph.png) no-repeat;
	position: absolute;
	top:310px;
	left:50%;
	margin-left: 185px;
}

.company #contents{
	background: url(../img/company/company_bg.png) no-repeat #f2f9fc bottom center;
	padding: 95px 0 100px;
}
.company #contents > .inner{
	width: 800px;
	margin-left: auto;
	margin-right: auto;
}

.company #contents .txtArea{margin-bottom: 50px;}
.company #contents .txtArea li{
	font-size: 0.16rem;
	line-height: 2.5;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	color: #374c56;
}
.company #contents .txtArea li:not(:last-child){
	margin-bottom: 2.5em;
}

.company #contents .txtArea li:nth-child(-n+2){
	width: 540px;
}


.company #contents .companyProf h2{
	text-align: center;
	font-size: 0.3rem;
	letter-spacing: 0.05em;
	color: #374c56;
	margin-bottom: 40px;
}
.company #contents .companyProf h2 span{
	display: inline-block;
	padding: 0 5px 10px;
	border-bottom: 5px solid #374c56;
}
.company #contents .companyProf dl{
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	background: #FFF;
	font-size: 0.16rem;
	color: #374c56;
	letter-spacing: 0.05em;
	border-top: 1px solid #a1c3d4;
}
.company #contents .companyProf dl dt{
	width: 200px;
	background: #dde9ee;
	padding: 30px;
	border-bottom: 1px solid #a1c3d4;
}
.company #contents .companyProf dl dd{
	width: calc(100% - 200px);
	padding: 30px;
	border-bottom: 1px solid #a1c3d4;
}
.company #contents .companyProf dl dd a{
	color: #27869f;
	text-decoration: underline;
}


/*=============================
recruit
=============================*/
.recruit #container{
	background: url(../img/recruit/recruit_bg.png) #D7E6F4 no-repeat top center;
}

.recruit #main{
	height: 420px;
	position: relative;
}
.recruit #main > .inner{
	position: relative;
	top:160px;
}

.recruit #contents{
	padding-bottom: 90px;
}
.recruit #contents h2{
	text-align: center;
	font-size: 0.38rem;
	line-height: 2.0;
	color: #00a0ca;
	letter-spacing: 0.15em;
	padding-left: 0.5em;
	margin-bottom: 50px;
}

.recruit #contents dl{
	width: 800px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 100px;
	padding: 50px 40px;
	background: url(../img/recruit/recruit_ph.jpg) #FFF no-repeat right 40px bottom;
}
.recruit #contents dl dt{
	font-size: 0.24rem;
	letter-spacing: 0.15em;
	line-height: 2.0;
	text-align: center;
	padding-bottom: 20px;
	margin-bottom: 25px;
	border-bottom: 1px dotted #374c56;
}
.recruit #contents dl dt.list01{color: #eb6100}
.recruit #contents dl dt.list02{color: #009e96}
.recruit #contents dl dt.list03{color: #8957a1}
.recruit #contents dl dt.list04{color: #448aca}
.recruit #contents dl dd{
	font-size: 0.16rem;
	color: #374c56;
	line-height: 2.25;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	margin-bottom: 40px;
}
.recruit #contents dl dd:last-of-type{margin-bottom: 0px;}

.recruit #contents dl dd.list04 span.spacer{
	display: block;
	width: 300px;
	height: 230px;
	float: right;
}

.recruit #contents .bt{
	text-align: center;
}
.recruit #contents .bt a{
	display: inline-block;
	width: 465px;
	height: 80px;
	text-align: center;
	background: #00a0ca;
	color: #FFF;
	text-decoration: none;
	font-size: 0.24rem;
	letter-spacing: 0.1em;
}

/*=============================
form
=============================*/
.form #container{
	background: #edf1f6;
	padding-bottom: 100px;
}

.form #main{
	height: 400px;
	position: relative;
}
.form #main > .inner{
	position: relative;
	top:160px;
}

.form .emList{
	font-size: 0.16rem;
	color: #374c56;
	margin-bottom: 50px;
}

.form.thx #contents{
	background: url(../img/form/form_flow03.svg) no-repeat top center/667px auto;
	padding: 155px 0 0 0;
	min-height: 360px;
}
.form.thx .txt{
	font-size: 0.16rem;
	line-height: 2.0;
	color: #374c56;
	text-align: center;
	margin-bottom: 100px;
}
.form.thx .linkBtList{
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: center;
	justify-content: center;
}
.form.thx .linkBtList li{
	width: 320px;
}
.form.thx .linkBtList li a{
	display: block;
	color: #FFF;
	font-size: 0.16rem;
	text-align: center;
	background: #00a0ca;
	text-decoration: none;
	padding: 20px 0;
}
/*=============================
contact
=============================*/
.contact #contents h2{
	text-align: center;
	font-size: 0.38rem;
	line-height: 2.0;
	color: #00a0ca;
	letter-spacing: 0.15em;
	padding-left: 0.5em;
	margin-bottom: 40px;
}
.contact #contents > .inner{
	width: 800px;
	margin-left: auto;
	margin-right: auto;
}
.contact #contents .txt01{
	font-size: 0.18rem;
	line-height: 2.5;
	color: #374c56;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	margin-bottom: 60px;
}


.contact form#mailformpro {
	background: url(../img/form/form_flow01.svg) no-repeat top center/667px auto;
	padding: 155px 0 0 0;
}

.contact #mfp_phase_confirm{
	display: none;
	background: url(../img/form/form_flow02.svg) no-repeat top center/667px auto;
	padding: 155px 0 0 0;
}


/*=============================
entry
=============================*/
.entry #contents h2{
	text-align: center;
	font-size: 0.38rem;
	line-height: 2.0;
	color: #00a0ca;
	letter-spacing: 0.15em;
	padding-left: 0.5em;
	margin-bottom: 40px;
}
.entry #contents > .inner{
	width: 800px;
	margin-left: auto;
	margin-right: auto;
}
.entry #contents .txt01{
	text-align: center;
	font-size: 0.18rem;
	line-height: 2.5;
	color: #374c56;
	margin-bottom: 60px;
}
.entry form#mailformpro {
	background: url(../img/form/form_flow01.svg) no-repeat top center/667px auto;
	padding: 155px 0 0 0;
}

.entry #mfp_phase_confirm{
	display: none;
	background: url(../img/form/form_flow02.svg) no-repeat top center/667px auto;
	padding: 155px 0 0 0;
}

