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

#main{
	position: relative;
	padding-top: 25vw;
}

#main > .inner .pageTit{
	text-align: center;
	height: 20vw;
	position: relative;
}
#main > .inner .pageTit::after{
	content: '';
	width: 18.75vw;
	height: 3px;
	position: absolute;
	bottom:0;
	left:50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	background: #00a0ca;
}
#main > .inner .pageTit .jp{
	display: block;
	font-size: 3.44vw;
	letter-spacing: 0.15em;
	color: #00a0ca;
	margin-bottom: 3.13vw;
}
#main > .inner .pageTit img{
	height: 7.03vw;
	width: auto;
}
#main > .inner .pageTit img.fl{
	height: 9.38vw;
	width: auto;
}
/*=============================
service01
=============================*/
.service01 #main{
	height: 180vw;
	background: url(../img/service/sp_service01_mainPh.jpg) no-repeat bottom center/cover;
}
.service01 #main .copy{
	margin-top: 10.94vw;
	text-align: center;
	font-size: 6.25vw;
	line-height: 1.8;
	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: 50vw;
	background:url(../img/service/sp_service01_bg.png) #dcebf2 no-repeat bottom center/100% auto;
}

.service01 #contents .list{
	position: relative;
	top:-7.81vw;
	margin-bottom: 60vw;
}

.service01 #contents .list li{
	position: relative;
}
.service01 #contents .list li .txtArea{
	background: #FFF;
	padding: 4.69vw 4.69vw 3.91vw;
	margin-left: 3.13vw;
	margin-right: 3.13vw;
	box-shadow:0px 0px 1vw 0px rgba(0,0,0,0.1);
	position: relative;
	z-index: 5;
}
.service01 #contents .list li .txtArea h3{
	padding-bottom: 4.69vw;
	margin-bottom: 3.91vw;
	white-space: nowrap;
}
.service01 #contents .list li .txtArea h3 span{
	display: inline-block;
	vertical-align: middle;
}
.service01 #contents .list li .txtArea h3 .en{
	font-size: 7.03vw;
	font-style: italic;
	margin-right: 3.13vw;
	white-space: nowrap;
}
.service01 #contents .list li .txtArea h3 .jp{
	font-size: 5.47vw;
	line-height: 1.45;
	letter-spacing: 0.15em;
	white-space: nowrap;
}

.service01 #contents .list li.list01{margin-bottom: 69.5vw;}
.service01 #contents .list li.list02{margin-bottom: 65.5vw;}
.service01 #contents .list li.list03{margin-bottom: 66.5vw;}
.service01 #contents .list li.list04{}


.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: 4.69vw;
	line-height: 1.5;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}


.service01 #contents .list li::after{
	content: '';
	display: block;
	width: 92vw;
	height: 66.5vw;
	position: absolute;
	bottom:-58.5vw;
	z-index: 4;
}
.service01 #contents .list li.list01::after{
	background: url(../img/service/sp_service01_ph01.jpg) no-repeat center center/cover;
	right:0;
	box-shadow:3.13vw 3.13vw 0px 0px rgba(195,167,92,0.2);
}
.service01 #contents .list li.list02::after{
	background: url(../img/service/sp_service01_ph02.jpg) no-repeat center center/cover;
	left:0;
	box-shadow:-3.13vw 3.13vw 0px 0px #B9D5E4;
}
.service01 #contents .list li.list03::after{
	background: url(../img/service/sp_service01_ph03.jpg) no-repeat center center/cover;
	right:0;
	box-shadow:-3.13vw 3.13vw 0px 0px rgba(228,112,125,0.1);
}
.service01 #contents .list li.list04::after{
	background: url(../img/service/sp_service01_ph04.jpg) no-repeat center center/cover;
	left:0;
	box-shadow:3.13vw 3.13vw 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;
	top:7.81vw;
	left:0;
	width: 100%;
	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 .txt01{
	text-align: center;
	font-size: 7.03vw;
	line-height: 1.75;
	color: #374c56;
}
.service01 #contents .txt01 > span > span{
	display: inline-block;
	padding-bottom: 10px;
	border-bottom: 1px solid #374c56;
	letter-spacing: 0.1em;
}

/*=============================
service02
=============================*/
.service02 #main{
	height: 62vw;
	background: #f0f4f6;
}

.service02 #contents{
	position: relative;
	padding: 18.75vw 0 54vw;
	background: url(../img/service/sp_service02_bg03.png) #dae9f0 no-repeat bottom center/100% auto;
}
.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 .bg::before{
	width: 72vw;
	height: 35vw;
	background: url(../img/service/service02_bg01.png) no-repeat center center/cover;
	top:-10.16vw;
	right:50%;
}
.service02 #contents .bg::after{
	width: 29.5vw;
	height: 29.5vw;
	background: url(../img/service/service02_bg02.png) no-repeat center center/cover;
	top:15.63vw;
	left: 50%;
	margin-left: 29.5vw;
	z-index: 10 !important;
}

.service02 #contents .copy{
	text-align: center;
	font-size: 6.25vw;
	line-height: 1.75;
	color: #374c56;
	letter-spacing: 0.15em;
	margin-bottom: 6.25vw;
}
.service02 #contents .txt01{
	text-align: center;
	font-size: 4.69vw;
	line-height: 1.6;
	color: #374c56;
	margin-bottom: 6.25vw;
	white-space: nowrap;
}


.service02 #contents dl.list{
	margin: 0 3.13vw;
	position: relative;
}
.service02 #contents dl.list > dt{
	height: 21vw;
	position: relative;
}
.service02 #contents dl.list > dt::before,
.service02 #contents dl.list > dt::after{
	content: '';
	display: block;
	position: absolute;
}
.service02 #contents dl.list > dt::before{
	width: 7.81vw;
	height: 4.8vw;
	background: url(../img/service/bt_arrow.svg) no-repeat center center/contain;
	bottom:50%;
	right:4.69vw;
	z-index: 10;
	pointer-events:none;
	-webkit-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: transform 0.5s ease;
	transition: transform 0.5s ease;
}
.service02 #contents dl.list > dt.act_sp::before{
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
	-webkit-transition: transform 0.5s ease;
	transition: transform 0.5s ease;
}
.service02 #contents dl.list > dt::after{
	width: 7.81vw;
	height: 2.81vw;
	background: url(../img/service/bt_open.svg) no-repeat top center/contain;
	bottom:4.38vw;
	right:4.69vw;
	z-index: 10;
	pointer-events:none;
}
.service02 #contents dl.list > dt.act_sp::after{
	background: url(../img/service/bt_close.svg) no-repeat top center/contain;
}

.service02 #contents dl.list > dt a{
	display: block;
	width: 100%;
	height: 100%;
	position: relative;
	color: #FFF;
	background: #f6f6f6;
	text-decoration: none;
	padding-left: 4.69vw;
}
.service02 #contents dl.list > dt.list01 a{background: #d86f7b;}
.service02 #contents dl.list > dt.list02 a{background: #7f7fa4;}
.service02 #contents dl.list > dt.list03 a{background: #d08060;}
.service02 #contents dl.list > dt.list04 a{background: #1e7b7b;}


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

.service02 #contents dl.list > dt a span span{
	display: inline-block;
	vertical-align: middle;
}
.service02 #contents dl.list > dt a .num{
	font-size: 7.81vw;
	font-style: italic;
	letter-spacing: 0.15em;
}
.service02 #contents dl.list > dt a .jp{
	font-size: 5.47vw;
	line-height: 1.25;
	letter-spacing: 0.1em;
	padding-left: 3.13vw;
}


.service02 #contents dl.list > dd{
	display: block !important;
	padding: 0 4.69vw;
	overflow: hidden;
	max-height: 0;
	-webkit-transition: max-height 0.5s ease;
	transition: max-height 0.5s ease;
}
.service02 #contents dl.list > dd.open_sp{
	max-height :600vw;
	-webkit-transition: max-height 0.75s ease-out;
	transition: max-height 0.75s ease-out;
}
.service02 #contents dl.list > dd:not(:last-child){
	margin-bottom: 6.25vw;
}
.service02 #contents dl.list > dd > .inner{
	padding: 6.25vw 0;
	position: relative;
}
.service02 #contents #list01{background: url(../img/service/service02_01_pic.svg) no-repeat #FFF top 29.5vw center/auto 42vw;}
.service02 #contents #list02{background: url(../img/service/service02_02_pic.svg) no-repeat #FFF top 18.75vw right 8vw/auto 44vw;}
.service02 #contents #list03{background: url(../img/service/service02_03_pic.svg) no-repeat #FFF top 42vw center/auto 36.7vw;}
.service02 #contents #list04{background: url(../img/service/service02_04_pic.svg) no-repeat #FFF top 30.5vw right 3.5vw/auto 48.5vw;}

.service02 #contents .tabC h3{
	font-size: 6.25vw;
	line-height: 1.6;
	letter-spacing: 0.15em;
	color: #374c56;
	white-space: nowrap;
}
.service02 #contents #list01 h3{margin-bottom: 50vw;}
.service02 #contents #list02 h3{margin-bottom: 28vw;}
.service02 #contents #list03 h3{margin-bottom: 33vw;}
.service02 #contents #list04 h3{margin-bottom: 18.75vw;}

.service02 #contents .tabC dl{
	padding-bottom: 47vw;
}
.service02 #contents .tabC dl dt{
	font-size: 5vw;
	line-height: 1.5;
	letter-spacing: 0.05em;
	color: #374c56;
	margin-bottom: 4.69vw;
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
}
.service02 #contents .tabC dl dd:not(:last-of-type){margin-bottom: 9.38vw;}
.service02 #contents .tabC dl dd ul{
	border-bottom: 2px dotted #b9c1c4;
}

.service02 #contents #list01 dl{background: url(../img/service/sp_service02_01_ph.jpg) no-repeat bottom center/73.5vw auto;}
.service02 #contents #list01 dl dt {text-indent: -0.5em;}
.service02 #contents #list01 dl dd ul{}
.service02 #contents #list02 dl{background: url(../img/service/sp_service02_02_ph.jpg) no-repeat bottom center/71vw auto;}
.service02 #contents #list02 dl dd ul{}
.service02 #contents #list03 dl{background: url(../img/service/sp_service02_03_ph.jpg) no-repeat bottom center/72vw auto;}
.service02 #contents #list03 dl dd ul{}
.service02 #contents #list04 dl{background: url(../img/service/sp_service02_04_ph.jpg) no-repeat bottom center/80vw auto;padding-bottom: 57vw;}
.service02 #contents #list04 dl dd ul{}/**/



.service02 #contents .tabC dl dd ul li{
	font-size: 4.69vw;
	line-height: 1.6;
	letter-spacing: 0.05em;
	color: #374c56;
	padding: 4.69vw 0px;
	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{
	margin-top: 6.25vw;
	box-shadow: 1vw 1vw 0px 0px #eaf2f4;
}
.service02 #contents .tabC .info h4{
	background: #00a0ca;
	text-align: center;
	font-size: 5.47vw;
	color: #FFF;
	line-height: 1.4;
	letter-spacing: 0.1em;
	height: 18.75vw;
	position: relative;
}
.service02 #contents .tabC .info .txt{
	border: 1px solid #00a0ca;
	padding: 4.69vw;
	font-size: 4.69vw;
	line-height: 1.6;
	color: #00a0ca;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}


/*=============================
flow
=============================*/
.flow #main{
	height: 61.7vw;
	background: url(../img/flow/sp_flow_mainPh.jpg) no-repeat bottom center/cover;
}



.flow #bloc01{
	padding-top: 8vw;
	padding-bottom: 33.6vw;
	background: url(../img/flow/sp_flow_bg01.jpg) no-repeat top 55vw right -16.5vw/86vw auto;
	position: relative;
}
.flow #bloc01::before,
.flow #bloc01::after{
	content: '';
	display: block;
	position: absolute;
}
.flow #bloc01::before{
	width: 50.85vw;
	height: 25.8vw;
	background: url(../img/flow/flow_bg03.png) no-repeat center center/contain;
	bottom:11vw;
	left:0;
	margin-left: -22vw;
	z-index: 0;
}
.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: 6.25vw;
	line-height: 1.875;
	letter-spacing: 0.05em;
	margin-bottom: 7.03vw;
}
.flow #bloc01 .txt01{
	text-align: center;
	color: #374c56;
	font-size: 4.69vw;
	line-height: 1.8;
	letter-spacing: 0.1em;
	margin-bottom: 40vw;
}
.flow #bloc01 > .inner{
	width: 100%;

}



.flow #bloc01 .listBoxOuter{
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	padding-bottom: 5vw;
	position: relative;
	z-index: 1;
}
.flow #bloc01 .listBoxInner{
	width: 217vw;
	padding-left: 3vw;
}
.flow #bloc01 .listBoxInner::before{
	content: '';
	position: absolute;
	top: 0;
	left: 100%;
	width: 3vw;
	height: 1px;
}
.flow #bloc01 .listBox{
	background: #FFF;
	box-shadow:0.5vw 0.5vw 1.5vw 0px rgba(0,0,0,0.1);
	padding: 3.13vw;
	width: 210vw;
}

.flow #bloc01 .listBox > ul,
.flow #bloc01 .listBox ul.sub{
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
}


.flow #bloc01 .listBox > ul.head{
	border-top: 2px dotted #70b2d1;
}
.flow #bloc01 .listBox > ul.head li:nth-child(1){
	-ms-flex-preferred-size: 25%;
	-webkit-flex-basis: 25%;
	flex-basis: 25%;
	width: 25%;
}
.flow #bloc01 .listBox > ul.head li:nth-child(2),
.flow #bloc01 .listBox > ul.head li:nth-child(3){
	-ms-flex-preferred-size: 30%;
	-webkit-flex-basis: 30%;
	flex-basis: 30%;
	width: 30%;
}
.flow #bloc01 .listBox > ul.head li:nth-child(4){
	-ms-flex-preferred-size: 15%;
	-webkit-flex-basis: 15%;
	flex-basis: 15%;
	width: 15%;
}
.flow #bloc01 .listBox > ul.head li{
	padding: 1.5vw;
	height: 10vw;
	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: 3.13vw;
}
.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: 25%;
	-webkit-flex-basis: 25%;
	flex-basis: 25%;
	width: 25%;
	border-right: 2px dotted #70b2d1;
	border-bottom: 2px dotted #70b2d1;
}
.flow #bloc01 .listBox > ul.list > li:nth-child(2){
	-ms-flex-preferred-size: 75%;
	-webkit-flex-basis: 75%;
	flex-basis: 75%;
	width: 75%;
	border-bottom: 2px dotted #70b2d1;
}

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

.flow #bloc01 .listBox > ul.list > li:first-child{
	padding: 1.5vw 1vw;
}
.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: 2.19vw;
	margin-right: 0.5em;
	color: #FFF;
	width: 3.13vw;
	height: 3.13vw;
	-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: 40%;
	-webkit-flex-basis: 40%;
	flex-basis: 40%;
	width: 40%;
}
.flow #bloc01 .listBox ul.sub li:nth-child(3){
	-ms-flex-preferred-size: 20%;
	-webkit-flex-basis: 20%;
	flex-basis: 20%;
	width: 20%;
}

.flow #bloc01 .listBox ul.sub li{
	padding: 1.5vw;;
	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: 1vw 0 1vw 1.5vw;
	white-space: nowrap;
	font-size: 2.81vw;
	height: 100%;
}




.flow #bloc02{
	background: url(../img/flow/sp_flow_bg08.png) no-repeat #e4eff4 bottom center/100% auto;
	padding-top: 14.06vw;
	padding-bottom: 61.7vw;
	position: relative;
}
.flow #bloc02 > *{
	position: relative;
	z-index: 1;
}
.flow #bloc02::before{
	content: '';
	display: block;
	width: 48vw;
	height: 94vw;
	background: url(../img/flow/flow_bg05.png) no-repeat center center/contain;
	position: absolute;
	top:11.7vw;
	left:0;
	z-index: 0;
	margin-left: -6vw;
}
.flow #bloc02 h2{
	text-align: center;
	font-size: 5.47vw;
	letter-spacing: 0.15em;
	color: #FFF;
	height: 10.94vw;
	margin-bottom: 14.06vw;
}
.flow #bloc02 h2 p{
	display: inline-block;
	background: #00a0ca;
	height: 100%;
	padding: 0 3.13vw;
}

.flow #bloc02 .copy{
	text-align: center;
	font-size: 5.94vw;
	line-height: 2.0;
	letter-spacing: 0.15em;
	color: #374c56;
	margin-bottom: 7.81vw;
}
.flow #bloc02 .copyList{
	margin-bottom: 10.16vw;
}
.flow #bloc02 .copyList li{
	text-align: center;
	font-size: 5vw;
	line-height: 1.5;
	letter-spacing: 0.1em;
	color: #00a0ca;
}
.flow #bloc02 .copyList li:first-child{
	margin-bottom: 4.69vw
}
.flow #bloc02 .copyList li p{
	display: inline-block;
	position: relative;
}
.flow #bloc02 .copyList li p::before{
	content: '';
	display: block;
	width: 100%;
	height: 3.13vw;
	background: #FFF;
	position: absolute;
	bottom:0;
	z-index: 0;
}
.flow #bloc02 .copyList li p span{
	position: relative;
	z-index: 5;
}

.flow #bloc02 > .inner{

}
.flow #bloc02 .txt01 {
	text-align: center;
	font-size: 4.69vw;
	line-height: 1.85;
	letter-spacing: 0.1em;
	color: #374c56;
	margin-bottom: 5.47vw;
}

.flow #bloc02 .stepList dt{
	height: 24vw;
	text-align: center;
	margin-bottom: -16vw;
	position: relative;
	z-index: 1;
}

.flow #bloc02 .stepList dt p{
	text-align: center;
	height: 100%;
	position: relative;
	white-space: nowrap;
	background: #00a0ca;
	margin: 0 3.13vw;
	line-height: 1.75;
}
.flow #bloc02 .stepList dt p::before{
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 8vw 0 0 2vw;
	border-color: transparent transparent transparent #0b89aa;
	position: absolute;
	top:0;
	right:-2vw;
}
.flow #bloc02 .stepList dt p img{
	height: 7.03vw;
	width: auto;
	margin-right: 3.13vw;
	vertical-align: middle;
}
.flow #bloc02 .stepList dt p .txt{
	font-size: 6.25vw;
	letter-spacing: 0.15em;
	color: #FFF;
}


.flow #bloc02 .stepList dd {
	background: #FFF;
	box-shadow:0px 0px 1.5vw 0px rgba(0,0,0,0.1);
	padding: 22.5vw 3.13vw 6.25vw;
	margin-bottom: 10.94vw;
	position: relative;
	z-index: 0;
}
.flow #bloc02 .stepList dd:last-of-type{
	margin-bottom: 0px;
}
.flow #bloc02 .stepList dd h4{
	font-size: 5.47vw;
	line-height: 1.7;
	letter-spacing: 0.1em;
	color: #00a0ca;
	margin-bottom: 3.13vw;
	text-align: center;
	white-space: nowrap;
}
.flow #bloc02 .stepList dd .txt{
	font-size: 4.69vw;
	line-height: 1.6;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
}


.flow #bloc02 .stepList dd::before{
	content: '';
	display: block;
	width: 43vw;
	height: 43vw;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 4.69vw;
}
.flow #bloc02 .stepList dd:not(:last-of-type)::after{
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6.25vw 12vw 0 12vw;
	border-color: #27869f transparent transparent transparent;

	position: absolute;
	bottom:-6.25vw;
	left:50%;
	z-index: 1;
	margin-left: -12vw;
}





/*step01*/
.flow #bloc02 .stepList dd.step01::before{
	background:
		url(../img/flow/flow_step01_icon.svg) no-repeat top left/40vw 40vw,
		url(../img/flow/flow_step_iconBg.jpg) no-repeat right bottom/40vw 40vw;
}
.flow #bloc02 .stepList dd.step01 h4{text-indent: -0.5em;}
.flow #bloc02 .stepList dd.step01 .txt{
	font-size: 4.69vw;
	line-height: 1.6;
	letter-spacing: 0.1em;
	color: #374c56;
	text-align: center;
}
.flow #bloc02 .stepList dd.step01 .fbox{

}
.flow #bloc02 .stepList dd.step01 .fbox li{
	margin-bottom: 4.69vw;
}

.flow #bloc02 .stepList dd.step01 .fukidashi01{
	margin-top: 4.69vw;
}
.flow #bloc02 .stepList dd.step01 .fukidashi01 li:nth-child(even){text-align: right;}
.flow #bloc02 .stepList dd.step01 .fukidashi01 li:nth-child(odd) {text-align: left;}
.flow #bloc02 .stepList dd.step01 .fukidashi02 li:nth-child(even){text-align: left;}
.flow #bloc02 .stepList dd.step01 .fukidashi02 li:nth-child(odd) {text-align: right;}

.flow #bloc02 .stepList dd.step01 .fbox li p{
	display: inline-block;
	border: 1px solid #00a0ca;
	padding: 4.69vw;
	font-size: 4.38vw;
	line-height: 1.65;
	letter-spacing: 0.05em;
	color: #00a0ca;
	position: relative;
}
.flow #bloc02 .stepList dd.step01 .fbox li p::before{
	content: '';
	display: block;
	width: 3vw;
	height: 3vw;
	position: absolute;
	bottom:-2.65vw;
	left:50%;
	margin-left: -1.5vw;
}

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


/*step02*/
.flow #bloc02 .stepList dd.step02::before{
	background:
		url(../img/flow/flow_step02_icon.svg) no-repeat top left/40vw 40vw,
		url(../img/flow/flow_step_iconBg.jpg) no-repeat right bottom/40vw 40vw;
}
.flow #bloc02 .stepList dd.step02 ul li{
	font-size: 4.69vw;
	line-height: 1.6;
	letter-spacing: 0.05em;
}
.flow #bloc02 .stepList dd.step02 ul li:not(:last-child){
	margin-bottom: 4.69vw;
}

.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/40vw 40vw,
		url(../img/flow/flow_step_iconBg.jpg) no-repeat right bottom/40vw 40vw;
}

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


/*step05*/
.flow #bloc02 .stepList dd.step05::before{
	background:
		url(../img/flow/flow_step05_icon.svg) no-repeat top left/40vw 40vw,
		url(../img/flow/flow_step_iconBg.jpg) no-repeat right bottom/40vw 40vw;
}

/*step06*/
.flow #bloc02 .stepList dd.step06::before{
	background:
		url(../img/flow/flow_step06_icon.svg) no-repeat top left/40vw 40vw,
		url(../img/flow/flow_step_iconBg.jpg) no-repeat right bottom/40vw 40vw;
}

/*step07*/
.flow #bloc02 .stepList dd.step07::before{
	background:
		url(../img/flow/flow_step07_icon.svg) no-repeat top left/40vw 40vw,
		url(../img/flow/flow_step_iconBg.jpg) no-repeat right bottom/40vw 40vw;
}


.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: 62vw;
	background: url(../img/eq/sp_eq_mainPh.jpg) no-repeat bottom center/100% auto;
}



.eq #contents > .txtArea{
	padding:  10.94vw 0 6.25vw;
	background: url(../img/eq/eq_bg.png) no-repeat #FFF top center/100% auto;
}
.eq #contents > .txtArea > .inner{
	
}
.eq #contents > .txtArea > .inner h2{
	font-size: 6.25vw;
	line-height: 1.85;
	letter-spacing: 0.15em;
	color: #00a0ca;
	text-align: center;
	margin-bottom: 6.25vw;
}
.eq #contents > .txtArea > .inner .copy{
	font-size: 4.69vw;
	line-height: 1.8;
	letter-spacing: 0.1em;
	color: #374c56;
	text-align: center;
	margin-bottom: 6.25vw;
}
.eq #contents > .txtArea > .inner .txt{
	font-size: 4.69vw;
	line-height: 1.6;
	letter-spacing: 0.05em;
	color: #374c56;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	padding: 0 3.13vw;
	margin-bottom: 6.25vw;
}
.eq #contents > .txtArea > .inner .zu{
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	padding-left: 3vw;
}
.eq #contents > .txtArea > .inner .zu img{
	width: 150vw;
	height: auto;
	margin-right: 3vw;
}



.eq .listArea{
	background: #e9f5fb;
	padding: 10.94vw 0 15.63vw;
}


.eq .kizaiList{
	font-size: 3.44vw;
}
.eq .kizaiList > dt{
	font-size: 5.47vw;
	color: #00a0ca;
	margin-bottom: 4.69vw;
	padding-left: 3.13vw;
}
.eq .kizaiList > dd{
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	padding-left: 3vw;
	padding-bottom: 5vw;
	position: relative;
}
.eq .kizaiList > dd:not(:last-of-type){
	margin-bottom: 10.94vw;
}


.eq .kizaiList > dd > .inner{
	width: 174vw;
	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 > .inner::before{
	content: '';
	position: absolute;
	top: 0;
	left: 100%;
	width: 3vw;
	height: 1px;
}

/*
.flow #bloc01 .listBoxOuter{
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	padding-bottom: 5vw;
	position: relative;
	z-index: 1;
}
.flow #bloc01 .listBoxInner{
	width: 217vw;
	padding-left: 3vw;
}
.flow #bloc01 .listBoxInner::before{
	content: '';
	position: absolute;
	top: 0;
	left: 100%;
	width: 3vw;
	height: 1px;
}*/



/*head*/
.eq .kizaiList > dd > .inner > ul.head{
	width: 100%;
	-js-display: flex;
	display: -webkit-flex;
	display: flex;
	background: #00a0ca;
	color: #FFF;
}
.eq .kizaiList > dd > .inner > ul.head li{
	-ms-flex-preferred-size: 25%;
	-webkit-flex-basis: 25%;
	flex-basis: 25%;
	width: 25%;
	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{
	width: 100%;
}
.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{
	-ms-flex-preferred-size: 25%;
	-webkit-flex-basis: 25%;
	flex-basis: 25%;
	width: 25%;
}
.eq .kizaiList > dd > .inner > dl > dd{
	-ms-flex-preferred-size: 75%;
	-webkit-flex-basis: 75%;
	flex-basis: 75%;
	width: 75%;
}
.eq .kizaiList > dd > .inner > dl > dd > dl > dt{
	-ms-flex-preferred-size: 33.3%;
	-webkit-flex-basis: 33.3%;
	flex-basis: 33.3%;
	width: 33.3%;
}
.eq .kizaiList > dd > .inner > dl > dd > dl > dd{
	-ms-flex-preferred-size: 66.7%;
	-webkit-flex-basis: 66.7%;
	flex-basis: 66.7%;
	width: 66.7%;
}
.eq .kizaiList > dd > .inner > dl > dd > dl > dd > ul li{
	-ms-flex-preferred-size: 50%;
	-webkit-flex-basis: 50%;
	flex-basis: 50%;
	width: 50%;
}


.eq .kizaiList > dd > .inner > dl > dt,
.eq .kizaiList > dd > .inner > dl > dd > dl > dt,
.eq .kizaiList > dd > .inner > dl > dd > dl > dd > ul li{
	border-right: 1px solid rgba(0,93,139,0.4);
	border-bottom: 1px solid rgba(0,93,139,0.4);
	padding: 1.5vw 1vw;
}






/*=============================
company
=============================*/
.company #main{
	height: 105vw;
	background: #e5f7ff;
	position: relative;
}

.company #main .copy{
	margin-top: 7.81vw;
	font-size: 6.25vw;
	line-height: 1.8;
	color: #00a0ca;
	letter-spacing: 0.1em;
	padding-left: 3.13vw;
}

.company #main::before{
	content: '';
	display: block;
	width: 33.5vw;
	height: 125vw;
	background: url(../img/company/sp_company_ph.png) no-repeat top center/100% auto;
	position: absolute;
	top:56.25vw;
	right:0;
}

.company #contents{
	background: url(../img/company/sp_company_bg.png) no-repeat #f2f9fc bottom center/100% auto;
	padding: 7.81vw 0 42vw;
}
.company #contents > .inner{
	padding: 0 3.13vw;
}

.company #contents .txtArea{margin-bottom:10.94vw;}
.company #contents .txtArea li{
	font-size:4.69vw;
	line-height: 1.6;
	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+1){
	width: 65%;
}


.company #contents .companyProf h2{
	text-align: center;
	font-size: 7.03vw;
	letter-spacing: 0.05em;
	color: #374c56;
	margin-bottom: 8.59vw;
}
.company #contents .companyProf h2 span{
	display: inline-block;
	padding: 0 1vw 2vw;
	border-bottom: 5px solid #374c56;
}
.company #contents .companyProf dl{
	
	font-size: 4.69vw;
	color: #374c56;
	letter-spacing: 0.05em;
	
	text-align: center;
}
.company #contents .companyProf dl dt{
	background: #dde9ee;
	padding: 3.13vw 0;
	border-top: 1px solid #a1c3d4;

}
.company #contents .companyProf dl dd{
	background: #FFF;
	padding: 3.13vw 0;
	margin-bottom: 3.13vw;
	line-height: 1.5;
}
.company #contents .companyProf dl dd:last-of-type{
	margin-bottom: 0;
}
.company #contents .companyProf dl dd a{
	color: #27869f;
	text-decoration: underline;
}


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

.recruit #main{
	height: 55vw;
	position: relative;
}


.recruit #contents{
	padding-bottom: 90px;
}
.recruit #contents h2{
	text-align: center;
	font-size: 6.25vw;
	line-height: 1.8;
	color: #00a0ca;
	letter-spacing: 0.15em;
	padding-left: 0.5em;
	margin-bottom: 4.69vw;
}

.recruit #contents > .inner{
	padding: 0 3.13vw;
}
.recruit #contents dl{
	margin-bottom: 100px;
	padding: 7.81vw 4.69vw 55vw;
	background: url(../img/recruit/sp_recruit_ph.jpg) #FFF no-repeat bottom center/100% auto;
}
.recruit #contents dl dt{
	font-size: 5.47vw;
	letter-spacing: 0.15em;
	line-height: 1.5;
	text-align: center;
	padding-bottom: 3.91vw;
	margin-bottom: 4.69vw;
	border-bottom: 1px dotted #374c56;
	white-space: nowrap;
}
.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: 4.69vw;
	color: #374c56;
	line-height: 1.5;
	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: none;
}

.recruit #contents .bt{
	text-align: center;
}
.recruit #contents .bt a{
	display: inline-block;
	width: 72vw;
	height: 15.6vw;
	text-align: center;
	background: #00a0ca;
	color: #FFF;
	text-decoration: none;
	font-size: 5.47vw;
	letter-spacing: 0.1em;
}

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

.form #main{
	height: 55vw;
	position: relative;
}

.form .emList{
	font-size: 4.69vw;
	color: #374c56;
	margin-bottom: 4.69vw;
}

.form.thx #contents{
	background: url(../img/form/sp_form_flow03.svg) no-repeat top center/79.5vw auto;
	padding: 26.5vw 0 0 0;
	min-height: 50vw;
}
.form.thx .txt{
	font-size: 4.69vw;
	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: 65vw;
}
.form.thx .linkBtList li a{
	display: block;
	color: #FFF;
	font-size: 4.69vw;
	letter-spacing: 0.1em;
	text-align: center;
	background: #00a0ca;
	text-decoration: none;
	padding: 3vw 0;
}
/*=============================
contact
=============================*/
.contact #contents h2{
	text-align: center;
	font-size: 6.25vw;
	line-height: 1.8;
	color: #00a0ca;
	letter-spacing: 0.15em;
	padding-left: 0.5em;
	margin-bottom: 7.03vw;
}
.contact #contents > .inner{
	padding: 0 3.13vw;
}
.contact #contents .txt01{
	font-size: 4.69vw;
	line-height: 1.6;
	color: #374c56;
	text-align: justify;
	-ms-text-justify: inter-ideograph;
	text-justify: inter-ideograph;
	margin-bottom: 11.72vw;
}


.contact form#mailformpro {
	background: url(../img/form/sp_form_flow01.svg) no-repeat top center/79.5vw auto;
	padding: 26.5vw 0 0 0;
}

.contact #mfp_phase_confirm{
	display: none;
	background: url(../img/form/sp_form_flow02.svg) no-repeat top center/79.5vw auto;
	padding: 26.5vw 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{
	padding: 0 3.13vw;
}
.entry #contents .txt01{
	text-align: center;
	font-size: 4.69vw;
	line-height: 1.6;
	color: #374c56;
	margin-bottom: 6.25vw;
}
.entry form#mailformpro {
	background: url(../img/form/sp_form_flow01.svg) no-repeat top center/79.5vw auto;
	padding: 26.5vw 0 0 0;
}

.entry #mfp_phase_confirm{
	display: none;
	background: url(../img/form/sp_form_flow02.svg) no-repeat top center/79.5vw auto;
	padding: 26.5vw 0 0 0;
}

