@charset "utf-8";

/* ****************************************************
Title: layout.css
***************************************************** */

/* --------------------------------------------------------------------
 body
-------------------------------------------------------------------- */

body {
 color: #333333;
	background-color: #ffffff;

font-family: 'Noto Sans JP', sans-serif;

font-size: 13px;
 *font-size:small;
 *font:x-small;
 text-align: center;
	text-size-adjust: 100%;
	-moz-text-size-adjust: none;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	max-height: 999999px;
}

#top {
	/*overflow: hidden;*/
}

#wrap {
	/* overflow: hidden; */
	/*width: 640px;*/
	margin-top: 0px;
	margin-right: auto;
	margin-bottom: 0px;
	margin-left: auto;
	padding: 0px;
	min-width: 1180px;
}

/*
img {
	vertical-align: bottom;
	width: 100%;
	height: auto;
}
*/

.relative-wrap {
	position: relative;
  z-index: 2;
}

.contDispN {
	display: none;
}

p, span, dt, dd, th, td, li, h1, h2, h3, h4 {
	max-height: 999999px;
	background-image: url(./assets/img/spacer.gif);
}


/*-----------------------*/

.anc {
	position: relative;
}
.ancIn {
	position: absolute;
	top: -86px;
}

.ancIn02{
	top: -150px;
}

#top {
	/*padding-top: 69px;*/
}

/*-----------------------*/

.pc {
	display: block;
}

.sp {
	display: none;
}

.pcBr {
	display: inline;
}

.spBr {
	display: none;
}

.pcTable {
	display: table !important;
}
.spTable {
	display: none !important;
}

.contIn1080 {
	width: 1080px;
	margin: 0px auto;
	position: relative;
}


.radius200 {
	-moz-border-radius: 200px;
	-webkit-border-radius: 200px;
	-o-border-radius: 200px;
	-ms-border-radius: 200px;
	border-radius: 200px;
}

.boxShadow01 {
-webkit-box-shadow: 3px 3px 20px 0px rgba(0, 0, 0, 0.3);
-moz-box-shadow:    3px 3px 20px 0px rgba(0, 0, 0, 0.3);
box-shadow:         3px 3px 20px 0px rgba(0, 0, 0, 0.3);
}


@media screen and (max-width:767px) {
/*@media screen and (max-width:799px) {*/

	body {

	}

	#wrap {
		overflow: hidden;
		/*width: 750px;*/
		width: auto;
		margin-top: 0px;
		margin-right: auto;
		margin-bottom: 0px;
		margin-left: auto;
		padding: 0px;
		min-width: 320px;
	}

	/*-----------------------*/

	.anc {
		position: relative;
	}
	.ancIn {
		position: absolute;
		top: -44px;
	}

	#top {
		/*padding-top: 79px;*/
	}

	/*-----------------------*/

	.pc {
		display: none;
	}
	.sp {
		display: block;
	}
	.pcBr {
		display: none;
	}
	.spBr {
		display: inline;
	}

	.pcTable {
		display: none !important;
	}
	.spTable {
		display: table !important;
	}

	.contIn1080 {
		width: auto;
	}


}


/* --------------------------------------------------------------------
 header
-------------------------------------------------------------------- */

.pcHeaderWrap {
	background-color: #ffffff;
	width: 100%;
	position: relative;
	top: 0px;
	left: 0px;
	z-index: 500;
}
header.is-fixed .pcHeaderWrap {
  position: fixed;
}
.logoWrap01 {
	float: left;
	padding: 6px 14px 6px 14px;
}
.logoWrap01 img {
	width: 280px;
	height: auto;
	vertical-align: middle;
}
.logoWrap01 span {
	display: inline-block;
	border: 1px solid #b3b3b3;
	font-size: 12px;
	line-height: 1.0em;
	padding: 4px 10px 6px 10px;
	margin-left: 22px;
}

.headerBtnWrap01 {
	float: right;
}

@media screen and (min-width:768px) {
	.naviWrap01 {
		display: block !important;
	}
}

.headerNavi {
	display: table;
	margin: auto;
}
.headerNavi li {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	box-sizing: border-box;
	height: 36px;
	padding: 5px 26px 5px 26px;
}
.headerNavi li a {
	display: inline-block;
	position: relative;
	padding: 2px 2px 2px 18px;
	font-size: 13px;
	line-height: 1.0em;
	font-weight: 500;
}
.headerNavi a:link {	color: #000000;	text-decoration: none;}
.headerNavi a:visited {	color: #000000;	text-decoration: none;}
.headerNavi a:hover {
	color:#000000;
	text-decoration: none;
	filter: alpha(opacity=70);
	-moz-opacity:0.7;
	opacity:0.7;
	transition-duration: 0.3s;
}
.headerNavi a:active {	color:#000000;	text-decoration: none;}

.headerNavi li a::before {
	content: "";
	background-color: #72b54b;
	width: 8px;
	height: 8px;
	position: absolute;
	left: 0px;
	top: 50%;
	margin-top: -4px;
}



@media screen and (max-width:767px) {
/*@media screen and (max-width:799px) {*/

	.pcHeaderWrap {
		background-color: #ffffff;
		width: 100%;
		position: fixed;
		top: 0px;
		left: 0px;
		z-index: 500;
	}
	.logoWrap01 {
		float: left;
		padding: 9px 14px 6px 5px;
	}
	.logoWrap01 img {
		width: 184px;
		height: auto;
		vertical-align: middle;
	}
	.logoWrap01 span {
		display: inline-block;
		border: 1px solid #b3b3b3;
		font-size: 10px;
		line-height: 1.0em;
		padding: 3px 3px 4px 3px;
		margin-left: 6px;
	}

	.headerBtnWrap01 {
		float: right;
	}

	.headerSpHamb01 {
		float: right;
		display: table;
		width: 26px;
		margin-right: 7px;
	}
	.headerSpHamb01 p {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		height: 40px;
	}
	.headerSpHamb01 p img {
		width: 26px;
	}

	.naviWrap01 {
		background-image: url("./assets/img/sp_navi_bg01.png");
		background-repeat: repeat;
		background-position: center top;
		box-sizing: border-box;
		width: 100%;
		position: absolute;
		left: 0px;
		display: none;
	}
	.contentWrapIn {
		padding: 16px 16px 10px 16px;
	}
	.headerNavi {
		display: block;
		margin: auto;
	}
	.headerNavi li {
		display: table;
		position: relative;
		box-sizing: border-box;
		width: 100%;
		padding: 0px;
		margin-bottom: 5px;
	}
	.headerNavi li::after {
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 4px 0 4px 5px;
		border-color: transparent transparent transparent #464646;
		position: absolute;
		right: 9px;
		top: 50%;
		margin-top: -4px;
	}

	.headerNavi li a {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		height: 38px;
		position: relative;
		padding: 2px 20px 2px 20px;
		font-size: 13px;
		line-height: 1.0em;
		font-weight: 500;
		background-color: #ffffff;
	}
	.headerNavi a:link {	color: #000000;	text-decoration: none;}
	.headerNavi a:visited {	color: #000000;	text-decoration: none;}
	.headerNavi a:hover {
		color:#000000;
		text-decoration: none;
		filter: alpha(opacity=100);
		-moz-opacity:1;
		opacity:1;
		transition-duration: 0.3s;
	}
	.headerNavi a:active {	color:#000000;	text-decoration: none;}

	.headerNavi li a::before {
		display: none;
	}

	.naviWrap01 .close {
		padding-bottom: 16px;
	}
	.naviWrap01 .close img {
		width: 22px;
	}


}


/* --------------------------------------------------------------------
 main
-------------------------------------------------------------------- */

.contBtn01 {
	display: table;
	width: 152px;
}
.contBtn01 a {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	background-color: #0079c3;
	border: 1px solid #0079c3;
	color: #ffffff;
	font-size: 13px;
	line-height: 1.0em;
	font-weight: 500;
	box-sizing: border-box;
	height: 40px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
.contBtn01 a:link {	color: #ffffff;	text-decoration: none;}
.contBtn01 a:visited {	color: #ffffff;	text-decoration: none;}
.contBtn01 a:hover {
	color:#0079c3;
	text-decoration: none;
	background-color: #ffffff;
}
.contBtn01 a:active {	color:#ffffff;	text-decoration: none;}

.contBtn01 a span {
	position: relative;
	display: inline-block;
	padding: 0px 0px 0px 16px;
}
.contBtn01 a span::before {
	content: "";
	background-image: url("./assets/img/header_btn_mail01.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 10px auto;
	width: 10px;
	height: 8px;
	position: absolute;
	left: 0px;
	top: 50%;
	margin-top: -4px;
}
.contBtn01 a:hover span::before {
	background-image: url("./assets/img/header_btn_mail01_on.png");
}

/*-------------*/

.contBtn02 {
	display: table;
	width: 460px;
	position: relative;
	margin: auto;
}
.contBtn02 a {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	/*background-color: #0079c3;*/
	background-image: url("./assets/img/cont_btn_bg01.png");
	border: 1px solid #0079c3;
	color: #ffffff;
	font-size: 20px;
	line-height: 1.0em;
	font-weight: 500;
	box-sizing: border-box;
	height: 120px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
.contBtn02 a:link {	color: #ffffff;	text-decoration: none;}
.contBtn02 a:visited {	color: #ffffff;	text-decoration: none;}
.contBtn02 a:hover {
	color:#0079c3;
	text-decoration: none;
	background-image: none;
	background-color: #ffffff;
}
.contBtn02 a:active {	color:#ffffff;	text-decoration: none;}

.contBtn02 a::after {
	content: "";
  width: 14px;
  height: 14px;
  border: 0px;
  border-top: solid 1px #ffffff;
  border-right: solid 1px #ffffff;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
	right: 22px;
  top: 50%;
  margin-top: -7px;
}
.contBtn02 a:hover::after {
  border-top: solid 1px #0079c3;
  border-right: solid 1px #0079c3;
}

.contBtn02 a span {
	position: relative;
	display: inline-block;
	padding: 0px 0px 0px 36px;
}
.contBtn02 a span::before {
	content: "";
	background-image: url("./assets/img/header_btn_mail01.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 20px auto;
	width: 20px;
	height: 16px;
	position: absolute;
	left: 0px;
	top: 50%;
	margin-top: -8px;
}
.contBtn02 a:hover span::before {
	background-image: url("./assets/img/header_btn_mail01_on.png");
}

/*-------------*/

.contBtn03 {
	display: table;
	width: 100%;
	position: relative;
	margin: auto;
}
.contBtn03 a {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	background-color: #ffffff;
	border: 1px solid #71b649;
	color: #71b649;
	font-size: 16px;
	line-height: 1.0em;
	font-weight: 500;
	box-sizing: border-box;
	height: 114px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
.contBtn03 a:link {	color: #71b649;	text-decoration: none;}
.contBtn03 a:visited {	color: #71b649;	text-decoration: none;}
.contBtn03 a:hover {
	color:#ffffff;
	text-decoration: none;
	background-color: #71b649;
}
.contBtn03 a:active {	color:#71b649;	text-decoration: none;}

.contBtn03 a::after {
	content: "";
width: 0;
height: 0;
border-style: solid;
border-width: 6px 4px 0 4px;
border-color: #71b649 transparent transparent transparent;
	position: absolute;
	bottom: 10px;
	left: 50%;
	margin-left: -4px;
}
.contBtn03 a:hover::after {
border-color: #ffffff transparent transparent transparent;
}

/*-------------*/

.contBtn02.contBtn04 {
	width: 700px;
}
.contBtn02.contBtn04 a {
	background-color: #0079c3;
	background-image: none;
	height: 170px;
}
.contBtn02.contBtn04 a:hover {
	background-color: #ffffff;
}




/*-------------*/

.mainvisualWrap01 {
	background-image: url("./assets/img/mainvisual01.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	/*background-color: #6682a7;*/
	box-sizing: border-box;
	padding: 0px 0px 0px 0px;
	height: 708px;
	margin-top: 80px;
}
.mainvisual01 {
	text-align: center;
	color: #ffffff;
	padding: 0px 0px 0px 0px;
}

.mainText01 {
	margin-bottom: 65px;
	background-image: url("./assets/img/mainvisual_bg01.png");
	background-repeat: repeat;
	background-position: center top;
	padding: 100px 0px 15px 0px;
}
.mainText01 span {
	display: inline-block;
	border: 1px solid #ffffff;
	font-size: 20px;
	line-height: 1.8em;
	font-weight: 500;
	padding: 1px 15px 1px 15px;
}

.mainH101 {
	/*margin-bottom: 18px;*/
}
.mainH101 .mainSpan01 {
	font-size: 22px;
	line-height: 1.4em;
	font-weight: bold;
	display: block;
	margin-bottom: 12px;
}
.mainH101 .mainSpan02 {
	font-size: 44px;
	line-height: 1.4em;
	font-weight: bold;
	display: block;
}

.mainText02 {
	margin-top: 18px;
	display: block;
	font-size: 20px;
	line-height: 1.8em;
	font-weight: bold;
}
.mainBtnWrap01 {
	margin-top: 106px;
}

/*--------------------*/

.contBlock01 {
	padding: 45px 0px 100px 0px;
	background-image: url("./assets/img/challenges_bg01.png");
	background-repeat: no-repeat;
	background-position: 38% top;
	background-size: 2369px auto;
}
.contFlex01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
	margin-bottom: 40px;
}
.contAncNavi01 li {
	width: 523px;
	margin-right: 18px;
}
.contAncNavi01 li:nth-child(3n) {
	margin-right: 0px;
}

.contAncNavi01 li:nth-of-type(2){
	margin-right: 0;
}

.contBlockIn01 {
	padding: 40px 0px 0px 0px;
}

.contH001Wrap {
	text-align: center;
	margin-bottom: 24px;
}
.contH001Wrap .contH001 {
	display: inline-block;
	padding: 15px 18px 22px 18px;
	font-family: 'Arvo', serif;
	font-size: 24px;
	line-height: 1.0em;
	font-weight: 500;
	font-style: italic;
	position: relative;
}
.contH001::before {
	content: "";
	width: 30px;
	height: 30px;
	background-color: #71b649;
	position: absolute;
	top: 0px;
	left: 0px;
}
.contH001::after {
	content: "";
	width: 36px;
	height: 2px;
	background-color: #71b649;
	position: absolute;
	bottom: 0px;
	left: 50%;
	margin-left: -18px;
}
.contCatchText01 {
	display: block;
	font-size: 34px;
	line-height: 1.8em;
	font-weight: bold;
	margin-bottom: 25px;
}
.contCatchText02 {
	display: block;
	color: #72b649;
	font-size: 20px;
	line-height: 1.5em;
	font-weight: bold;
	margin-bottom: 14px;
}

.Block01Box01 {
	box-sizing: border-box;
	width: 990px;
	margin: auto;
	text-align: left;
	margin-top: 36px;
	background-color: #ffffff;
	padding: 38px 20px 38px 135px;
	position: relative;
}
.Block01Box01::before {
	content: "";
	background-image: url("./assets/img/challenges_bg02.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 598px auto;
	width: 598px;
	height: 383px;
	position: absolute;
	top: -210px;
	left: -330px;
}

.contUl01 li {
	font-size: 18px;
	line-height: 1.3em;
	padding: 8px 0px 8px 38px;
	position: relative;
}
.contUl01 li::before {
	content: "";
	background-image: url("./assets/img/cont_icon_check01.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 30px auto;
	width: 30px;
	height: 24px;
	position: absolute;
	left: 0px;
	top: 5px;
}

.bottomAr01 {
	position: relative;
	padding-bottom: 176px;
}
.bottomAr01::after {
	content: "";
	background-image: url("./assets/img/cont_ar01.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 94px auto;
	width: 94px;
	height: 128px;
	position: absolute;
	bottom: 0px;
	left: 50%;
	margin-left: -47px;
}

.contText01 {
	font-size: 16px;
	line-height: 1.9em;
	margin-bottom: 50px;
}

.contStepBg01{
	background: url(../img/investigation_bg03.png);
	background-size: cover;
	width: 100%;
	height: 411px;
	position: absolute;
	top: 0;
	left: 0;
}

.bl_cont05_wrapper .contStepBg01 {
	background: rgba(113,182,72,0.82);
	width: 100%;
	height: 410px;
	position: absolute;
	top: auto;
	bottom: 0;
	left: 0px;
}


.contStepBox01 {
	padding: 35px 0px 48px 0px;
}
.contFlex02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.contFlex02 .li01 {
	position: relative;
	box-sizing: border-box;
	width: 230px;
	margin-right: 53px;
	background-color: #ffffff;
	padding: 25px 16px 25px 16px;
}
.contFlex02 .li01::after {
	content: "";
	background-image: url("./assets/img/solution_ar01.png");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 42px auto;
	width: 42px;
	height: 41px;
	position: absolute;
	right: -48px;
	top: 50%;
	margin-top: -18px;
}
.contFlex02 .li01:last-child {
	margin-right: 0px;
}
.contFlex02 .li01:last-child::after {
	display: none;
}
.contFlex02 .li02 {
	box-sizing: border-box;
	width: 230px;
	margin-right: 53px;
	padding: 7px 0px 0px 0px;
}
.contFlex02 .li02:last-child {
	margin-right: 0px;
}
.contStepText02 {
	text-align: left;
	color: #ffffff;
	font-size: 14px;
	line-height: 30px;
}

.contStepStep {
	text-align: center;
	width: 100%;
	position: absolute;
	left: 0px;
	top: -35px;
	font-family: 'Arvo', serif;
}
.contStepStep .p01 {
	font-size: 12px;
	line-height: 1.0em;
	font-weight: 500;
	font-style: italic;
	margin-bottom: 5px;
}
.contStepStep .p02 {
	color: #71b649;
	font-size: 35px;
	line-height: 1.0em;
	font-weight: bold;
	font-style: italic;
}

.contStepImgTb01 {
	display: table;
	width: 100%;
}
.contStepImgCell01 {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	height: 140px;
}

.stepImg152 {
	width: 61px;
}
.stepImg196 {
	width: 82px;
}
.stepImg212 {
	width: 80px;
}
.stepImg164 {
	width: 73px;
}

.contStepText01 {
	font-size: 18px;
	line-height: 1.3em;
	font-weight: bold;
	text-align: center;
	margin-bottom: 15px;
}

.contStepUl01 li {
	text-align: left;
	font-size: 14px;
	line-height: 1.57;
	text-indent: -1em;
	padding-left: 1em;
}
.stepIcon01 {
	color: #71b648;
}

/*----------------------*/

.contBlock02 {
	position: relative;
	padding: 0px 0px 100px 0px;
}
.contBlockIn02 {
	padding: 80px 0px 0px 0px;
}

.contBlockIn02.bl_unit01 {
	padding: 80px 0px 200px 0px;
}

.contFlex03 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
     -ms-flex-pack: justify;
   justify-content: space-between;
	margin-top: 50px;
}
.contFlex03 li {
	width: 243px;
	box-sizing: border-box;
	background-color: #ffffff;
	padding: 30px 0px 30px 0px;
}
.investTb01 {
	display: table;
	width: 100%;
}
.investCell01 {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	height: 120px;
}
.investCell02 {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	height: 70px;
	font-size: 20px;
	line-height: 32px;
	font-weight: bold;
}

.investImg188 {
	width: 76px;
}
.investImg168 {
	width: 71px;
}
.investImg180 {
	width: 92px;
}
.investImg176 {
	width: 76px;
}

/*-----------------------*/

.strengthBoxWrap01.strengthBoxWrap02 {
	padding: 80px 64px 0px 0px;
}
.strengthBoxWrap02 .strengthBox01 {
	left: auto;
	right: 0px;
}
.strengthBoxWrap02 .strengthNumTb01 {
	left: auto;
	right: 0px;
}
.strengthBoxWrap02 .strengthBoxIn01 {
	padding: 0px 328px 0px 0px;
}



/*-----------------------*/

.strengthBoxWrap01 {
	position: relative;
	padding: 80px 0px 0px 64px;
	margin-bottom: 75px;
}
.strengthBox01 {
	width: 414px;
	position: absolute;
	top: 0px;
	left: 0px;
}
.strengthNumTb01 {
	display: table;
	width: 86px;
	position: absolute;
	top: 0px;
	left: 0px;
}
.strengthNumCell01 {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	height: 86px;
	background-color: #0079c3;
	font-family: 'Arvo', serif;
	font-style: italic;
	color: #ffffff;
}
.strengthNumCell01 .p01 {
	font-size: 10px;
	line-height: 1.2em;
	font-style: italic;
}
.strengthNumCell01 .p02 {
	font-size: 33px;
	line-height: 1.2em;
	font-style: italic;
}

.strengthBox02 {
	background-color: #ffffff;
	border-top: 2px solid #71b648;
	padding: 50px 60px 50px 60px;
	text-align: left;
}
.strengthBoxIn01 {
	padding: 0px 0px 0px 328px;
}
.strengthH301 {
	font-size: 22px;
	line-height: 1.7em;
	font-weight: bold;
	margin-bottom: 20px;
}
.strengthH301 .span01 {
	color: #71b648;
}
.strengthText01 {
	font-size: 16px;
	line-height: 1.87em;
}

.strengthBoxIn02 {
	padding: 50px 0px 0px 0px;
}
.strengthFlex01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
     -ms-flex-pack: justify;
   justify-content: space-between;
}

.strengthFlex01 li {
	box-sizing: border-box;
	width: 420px;
	background-color: #f2f2f2;
	padding: 30px 30px 40px 30px;
	  text-align: justify;
  text-justify: inter-ideograph;
}
.strengthFlex01 li dt {
	display: table;
	width: 240px;
	margin: 0px auto 20px auto;
}
.strengthFlex01 li dt span {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	height: 30px;
	background-color: #999999;
	color: #ffffff;
	font-size: 16px;
	line-height: 1.0em;
	font-weight: bold;
}
.strengthFlex01 li dd {
	font-size: 16px;
	line-height: 1.87em;
	letter-spacing: -0.05em;
}

.strengthFlex01 li.li02 {
	background-color: #71b648;
	position: relative;
}
.strengthFlex01 li.li02 dt span {
	background-color: #ffffff;
	color: #71b648;
}
.strengthFlex01 li.li02 dd {
	color: #ffffff;
	font-weight: bold;
}
.strengthFlex01 li.li02::before {
	content: "";
width: 0;
height: 0;
border-style: solid;
border-width: 10px 0 10px 20px;
border-color: transparent transparent transparent #0079c3;
	position: absolute;
	top: 50%;
	margin-top: -10px;
	left: -35px;
}

.strengthBg01 {
	/*background-color: #f2f2f2;*/
	background-image: url("./assets/img/investigation_bg01.png");
	width: 100%;
	height: 470px;
	position: absolute;
	bottom: 0px;
	right: 50%;
	margin-right: -476px;
}
.strengthBg02 {
	/*background-color: #eff7eb;*/
	background-image: url("./assets/img/investigation_bg02.png");
	width: 100%;
	height: 1008px;
	position: absolute;
	top: 0;
	left: 50%;
	margin-left: -390px;
}
.strengthBg03 {
	/*background-color: #f2f2f2;*/
	background-image: url("./assets/img/investigation_bg01.png");
	width: 100%;
	height: 2000px;
	position: absolute;
	top: 794px;
	right: 50%;
	margin-right: -430px;
}
.strengthBg04 {
	/*background-color: #eff7eb;*/
	background-image: url("./assets/img/investigation_bg02.png");
	width: 100%;
	height: 1000px;
	position: absolute;
	bottom: 100px;
	left: 50%;
	margin-left: -274px;
}

/*-----------------------*/

.contBlock03 {
	position: relative;
}
.caseBg01 {
	background-image: url("./assets/img/case_bg01.jpg");
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	height: 805px;
	width: 100%;
	position: absolute;
	left: 0px;
	top: 0px;
}

.contBlock03 .contH001 {
	color: #ffffff;
}
.contBlock03 .contCatchText02 {
	color: #ffffff;
}
.contBlock03 .contCatchText01 {
	color: #ffffff;
}

.caseBlock01 {
	background-image: url("./assets/img/case_bg02.png");
	background-repeat: repeat;
	background-position: center top;
	width: 1180px;
	margin: auto;
	padding: 50px 0px 10px 0px;
}
.caseH301Wrap {
	position: relative;
	border-bottom: 1px solid #b3b3b3;
	text-align: left;
	padding: 0px 0px 16px 0px;
	margin-bottom: 30px;
}
.caseH301Wrap::after {
	content: "";
	width: 126px;
	height: 1px;
	background-color: #71b648;
	position: absolute;
	left: 0px;
	bottom: -1px;
}

.caseH301Wrap .caseH301 {
	font-size: 20px;
	line-height: 1.5em;
	font-weight: bold;
}
.caseH301Wrap .caseH301 span {
	color: #71b648;
}

.caseFlex01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
     -ms-flex-pack: justify;
   justify-content: space-between;
}
.caseFlex01 .li01 {
	box-sizing: border-box;
	width: 522px;
	background-color: #ffffff;
	position: relative;
	padding: 0px 45px 60px 45px;
	text-align: left;
}
.caseFlex01 .li01::after {
	content: "";
width: 0;
height: 0;
border-style: solid;
border-width: 10px 0 10px 20px;
border-color: transparent transparent transparent #0079c3;
	position: absolute;
	top: 200px;
	right: -28px;
}

.caseFlex01 .caseBox01 {
	position: relative;
	padding-top: 35px;
}
.caseFlex01 .caseBox01::before {
	content: "";
	width: 8px;
	height: 100%;;
	background-color: #333333;
	position: absolute;
	top: 0px;
	left: -45px;
}
.caseFlex01 .caseText01 {
	display: inline-block;
	border: 1px solid #333333;
	font-size: 17px;
	line-height: 1.6em;
	font-weight: bold;
	padding: 2px 11px 2px 11px;
	margin-bottom: 16px;
}
.caseFlex01 .caseText02 {
	font-size: 19px;
	line-height: 1.57em;
	font-weight: bold;
}
.caseFlex01 .caseUl01 {
	margin-top: 35px;
}
.caseFlex01 .caseUl01 li {
	padding: 0px 0px 0px 18px;
	position: relative;
	font-size: 16px;
	line-height: 1.87em;
}
.caseFlex01 .caseUl01 li::before {
	content: "";
width: 0;
height: 0;
border-style: solid;
border-width: 4px 0 4px 8px;
border-color: transparent transparent transparent #000000;
	position: absolute;
	left: 0px;
	top: 12px;
}

/*-------*/

.caseFlex01 .li01.li02 {
	border: 2px solid #71b648;
}
.caseFlex01 .li02 .caseBox01::before {
	background-color: #71b648;
}
.caseFlex01 .li02 .caseText01 {
	border: 1px solid #71b648;
	background-color: #71b648;
	color: #ffffff;
}
.caseFlex01 .li02 .caseText02 {
	color: #71b648;
}
.caseFlex01 .li01.li02::after {
	display: none;
}
.caseFlex01 .li02 .caseUl01 li::before {
border-color: transparent transparent transparent #71b648;
}

.contCaseBlock01 {
	margin-bottom: 60px;
}

/*---------------------*/

.contactAreaWrap {
	padding: 100px 0px 100px 0px;
}

.pagetopButton {
	display: none;
	position: fixed;
	bottom: 30px;
	right: 30px;
}
.pagetopButton p {
	display: table;
	width: 72px;
	position: relative;
}
.pagetopButton p a {
	display: table-cell;
	text-align: center;
	vertical-align: bottom;
	box-sizing: border-box;
	height: 72px;
	border: 1px solid #b3b3b3;
	background-color: #b3b3b3;
	padding: 0px 0px 13px 0px;
	color: #ffffff;
	font-size: 12px;
	line-height: 1.0em;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}
.pagetopButton a:link {	color: #ffffff;	text-decoration: none;}
.pagetopButton a:visited {	color: #ffffff;	text-decoration: none;}
.pagetopButton a:hover {
	color:#b3b3b3;
	text-decoration: none;
	background-color: #ffffff;
}
.pagetopButton a:active {	color:#ffffff;	text-decoration: none;}

.pagetopButton p a::before {
  content: '';
  width: 13px;
  height: 13px;
  border: 0px;
  border-top: solid 1px #ffffff;
  border-right: solid 1px #ffffff;
  -ms-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  position: absolute;
  top: 18px;
  left: 50%;
  margin-left: -6px;
}
.pagetopButton p a:hover::before {
  border-top: solid 1px #b3b3b3;
  border-right: solid 1px #b3b3b3;
}




@media screen and (max-width:767px) {
/*@media screen and (max-width:799px) {*/

	.contBtn01 {
		display: table;
		width: 152px;
	}
	.contBtn01 a {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		background-color: #0079c3;
		border: 1px solid #0079c3;
		color: #ffffff;
		font-size: 13px;
		line-height: 1.0em;
		font-weight: 500;
		box-sizing: border-box;
		height: 40px;
			-webkit-transition: all 0.3s ease;
			-moz-transition: all 0.3s ease;
			-o-transition: all 0.3s ease;
			transition: all  0.3s ease;
	}
	.contBtn01 a:link {	color: #ffffff;	text-decoration: none;}
	.contBtn01 a:visited {	color: #ffffff;	text-decoration: none;}
	.contBtn01 a:hover {
		color:#0079c3;
		text-decoration: none;
		background-color: #ffffff;
	}
	.contBtn01 a:active {	color:#ffffff;	text-decoration: none;}

	.contBtn01 a span {
		position: relative;
		display: inline-block;
		padding: 0px 0px 0px 16px;
	}
	.contBtn01 a span::before {
		content: "";
		background-image: url("./assets/img/header_btn_mail01.png");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 10px auto;
		width: 10px;
		height: 8px;
		position: absolute;
		left: 0px;
		top: 50%;
		margin-top: -4px;
	}
	.contBtn01 a:hover span::before {
		background-image: url("./assets/img/header_btn_mail01_on.png");
	}

	/*-------------*/

	.contBtn02 {
		display: table;
		width: 100%;
		position: relative;
		margin: auto;
	}
	.contBtn02 a {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		/*background-color: #0079c3;*/
		background-image: url("./assets/img/cont_btn_bg01.png");
		border: 1px solid #0079c3;
		color: #ffffff;
		font-size: 15px;
		line-height: 1.0em;
		font-weight: 500;
		box-sizing: border-box;
		height: 77px;
			-webkit-transition: all 0.3s ease;
			-moz-transition: all 0.3s ease;
			-o-transition: all 0.3s ease;
			transition: all  0.3s ease;
	}
	.contBtn02 a:link {	color: #ffffff;	text-decoration: none;}
	.contBtn02 a:visited {	color: #ffffff;	text-decoration: none;}
	.contBtn02 a:hover {
		color:#0079c3;
		text-decoration: none;
		background-image: none;
		background-color: #ffffff;
	}
	.contBtn02 a:active {	color:#ffffff;	text-decoration: none;}

	.contBtn02 a::after {
		content: "";
		width: 10px;
		height: 10px;
		border: 0px;
		border-top: solid 1px #ffffff;
		border-right: solid 1px #ffffff;
		-ms-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
		position: absolute;
		right: 22px;
		top: 50%;
		margin-top: -5px;
	}
	.contBtn02 a:hover::after {
		border-top: solid 1px #0079c3;
		border-right: solid 1px #0079c3;
	}

	.contBtn02 a span {
		position: relative;
		display: inline-block;
		padding: 0px 0px 0px 36px;
	}
	.contBtn02 a span::before {
		content: "";
		background-image: url("./assets/img/header_btn_mail01.png");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 15px auto;
		width: 15px;
		height: 12px;
		position: absolute;
		left: 0px;
		top: 50%;
		margin-top: -6px;
	}
	.contBtn02 a:hover span::before {
		background-image: url("./assets/img/header_btn_mail01_on.png");
	}

	/*-------------*/

	.contBtn03 {
		display: table;
		width: 100%;
		position: relative;
		margin: auto;
	}
	.contBtn03 a {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		background-color: #ffffff;
		border: 1px solid #71b649;
		color: #71b649;
		font-size: 16px;
		line-height: 1.0em;
		font-weight: 500;
		box-sizing: border-box;
		height: 70px;
			-webkit-transition: all 0.3s ease;
			-moz-transition: all 0.3s ease;
			-o-transition: all 0.3s ease;
			transition: all  0.3s ease;
	}
	.contBtn03 a:link {	color: #71b649;	text-decoration: none;}
	.contBtn03 a:visited {	color: #71b649;	text-decoration: none;}
	.contBtn03 a:hover {
		color:#ffffff;
		text-decoration: none;
		background-color: #71b649;
	}
	.contBtn03 a:active {	color:#71b649;	text-decoration: none;}

	.contBtn03 a::after {
		content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6px 4px 0 4px;
	border-color: #71b649 transparent transparent transparent;
		position: absolute;
		bottom: auto;
		left: auto;
		margin-left: 0px;
		right: 8px;
		top: 50%;
		margin-top: -3px;
	}
	.contBtn03 a:hover::after {
	border-color: #ffffff transparent transparent transparent;
	}

	/*-------------*/

	.contBtn02.contBtn04 {
		width: 100%;
	}
	.contBtn02.contBtn04 a {
		background-color: #0079c3;
		background-image: none;
		height: 77px;
	}
	.contBtn02.contBtn04 a:hover {
		background-color: #ffffff;
	}




	/*-------------*/

	.mainvisualWrap01 {
		background-image: url("./assets/img/mainvisual01.jpg");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
		/*background-color: #6682a7;*/
		box-sizing: border-box;
		padding: 0px 0px 45px 0px;
		height: auto;
		margin-top: 0;
	}
	.mainvisual01 {
		text-align: center;
		color: #ffffff;
		padding: 0px 0px 0px 0px;
	}

	.mainText01 {
		margin-bottom: 15px;
		background-image: url("./assets/img/mainvisual_bg01.png");
		background-repeat: repeat;
		background-position: center top;
		padding: 55px 0px 15px 0px;
	}
	.mainText01 span {
		display: inline-block;
		border: 1px solid #ffffff;
		font-size: 17px;
		line-height: 1.8em;
		font-weight: 500;
		padding: 1px 15px 1px 15px;
	}

	.mainH101 {
	}
	.mainH101 .mainSpan01 {
		font-size: 20px;
		line-height: 1.4em;
		font-weight: bold;
		display: block;
		margin-bottom: 12px;
	}
	.mainH101 .mainSpan02 {
		font-size: 26px;
		line-height: 1.4em;
		font-weight: bold;
		display: block;
	}

	.mainText02 {
		font-size: 17px;
		line-height: 1.8em;
		font-weight: bold;
	}
	.mainBtnWrap01 {
		margin-top: 0px;
	}

	/*--------------------*/

	.contBlock01 {
		padding: 14px 18px 50px 18px;
		background-image: url("./assets/img/challenges_bg01_sp.png");
		background-repeat: no-repeat;
		background-position: center top;
		background-size: 100% auto;
	}
	.contFlex01 {
		display: block;
		margin-bottom: 0px;
	}
	.contAncNavi01 li {
		width: auto;
		margin-right: 0px;
		margin-bottom: 6px;
	}
	.contAncNavi01 li:nth-child(3n) {
		margin-right: 0px;
	}
	.contBlockIn01 {
		padding: 40px 0px 0px 0px;
	}

	.contH001Wrap {
		text-align: center;
		margin-bottom: 24px;
		font-family: 'Arvo', serif;
	}
	.contH001Wrap .contH001 {
		display: inline-block;
		padding: 8px 8px 12px 8px;
		font-family: 'Arvo', serif;
		font-size: 16px;
		line-height: 1.0em;
		font-weight: 500;
		font-style: italic;
		position: relative;
	}
	.contH001Wrap .contH001 span {
		font-family: 'Arvo', serif;
	}
	.contH001::before {
		content: "";
		width: 16px;
		height: 16px;
		background-color: #71b649;
		position: absolute;
		top: 0px;
		left: 0px;
	}
	.contH001::after {
		content: "";
		width: 36px;
		height: 2px;
		background-color: #71b649;
		position: absolute;
		bottom: 0px;
		left: 50%;
		margin-left: -18px;
	}
	.contCatchText01 {
		font-size: 18px;
		line-height: 1.8em;
		font-weight: bold;
		margin-bottom: 30px;
	}
	.contCatchText02 {
		color: #72b649;
		font-size: 20px;
		line-height: 1.5em;
		font-weight: bold;
		margin-bottom: 14px;
	}

	.Block01Box01 {
		box-sizing: border-box;
		width: auto;
		margin: auto;
		text-align: left;
		margin-top: 36px;
		background-color: #ffffff;
		padding: 30px 15px 30px 20px;
		position: relative;
	}
	.Block01Box01::before {
		content: "";
		background-image: url("./assets/img/challenges_bg02.png");
		background-repeat: no-repeat;
		background-position: center top;
		background-size: 354px auto;
		width: 354px;
		height: 230px;
		position: absolute;
		top: -172px;
		left: -148px;
	}

	.contUl01 li {
		font-size: 18px;
		line-height: 1.3em;
		padding: 8px 0px 8px 38px;
		position: relative;
	}
	.contUl01 li::before {
		content: "";
		background-image: url("./assets/img/cont_icon_check01.png");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 30px auto;
		width: 30px;
		height: 24px;
		position: absolute;
		left: 0px;
		top: 5px;
	}

	.bottomAr01 {
		position: relative;
		padding-bottom: 76px;
	}
	.bottomAr01::after {
		content: "";
		background-image: url("./assets/img/cont_ar01.png");
		background-repeat: no-repeat;
		background-position: center top;
		background-size: 38px auto;
		width: 38px;
		height: 54px;
		position: absolute;
		bottom: 0px;
		left: 50%;
		margin-left: -19px;
	}

	.contText01 {
		font-size: 16px;
		line-height: 1.9em;
		margin-bottom: 10px;
		  text-align: justify;
  text-justify: inter-ideograph;
	}

	.contStepBg01 {
		background-image: none;
		background-color: #71b648;
		width: 200%;
		height: 88%;
		position: absolute;
		bottom: 0px;
		left: -50px;
	}
	.contStepBox01 {
		padding: 35px 0px 50px 0px;
	}
	.contFlex02 {
		display: block;
	}
	.contFlex02 .li01 {
		position: relative;
		box-sizing: border-box;
		width: auto;
		margin-right: 0px;
		margin-bottom: 14px;
		background-color: #ffffff;
		padding: 30px 20px 30px 20px;
	}
	.contFlex02 .li01::after {
		content: "";
		background-image: url("../img/solution_ar01_sp.png");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 27px auto;
		width: 27px;
		height: 28px;
		position: absolute;
		right: auto;
		margin-top: 0px;
		top: -20px;
		left: 50%;
		margin-left: -14px;
	}
	.contFlex02 .li01:last-child {
		margin-right: 0px;
	}
	.contFlex02 .li01:first-child::after {
		display: none;
	}
	.contFlex02 .li01:last-child::after {
		display: block;
	}
	.contFlex02 .li02 {
		box-sizing: border-box;
		width: 230px;
		margin-right: 53px;
		padding: 20px 0px 0px 0px;
	}
	.contFlex02 .li02:last-child {
		margin-right: 0px;
	}
	.contStepText02 {
		text-align: left;
		color: #333333;
		font-size: 16px;
		line-height: 30px;
	}

	.spStepTb01 {
		display: table;
		width: 100%;
		margin-bottom: 28px;
	}
	.spStepCell01 {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		width: 33%;
	}
	.spStepCell02 {
		display: table-cell;
		text-align: left;
		vertical-align: middle;
	}

	.contStepStep {
		text-align: center;
		width: 100%;
		position: relative;
		left: 0px;
		top: 0px;
		font-family: 'Arvo', serif;
	}
	.contStepStep .p01 {
		font-size: 12px;
		line-height: 1.0em;
		font-weight: 500;
		font-style: italic;
		margin-bottom: 5px;
	}
	.contStepStep .p02 {
		color: #71b649;
		font-size: 35px;
		line-height: 1.0em;
		font-weight: bold;
		font-style: italic;
	}

	.contStepImgTb01 {
		display: table;
		width: 100%;
	}
	.contStepImgCell01 {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		height: auto;
	}

	.stepImg152 {
		width: 61px;
	}
	.stepImg196 {
		width: 65px;
	}
	.stepImg212 {
		width: 65px;
	}
	.stepImg164 {
		width: 65px;
	}

	.contStepText01 {
		font-size: 20px;
		line-height: 1.3em;
		font-weight: bold;
		text-align: left;
		margin-bottom: 15px;
	}

	.contStepUl01 li {
		text-align: left;
		font-size: 16px;
		line-height: 25px;
		text-indent: -1em;
		padding-left: 1em;
	}
	.stepIcon01 {
		color: #71b648;
	}

	/*----------------------*/

	.contBlock02 {
		position: relative;
		padding: 0px 0px 40px 0px;
	}
	.contBlockIn02 {
		padding: 40px 18px 60px 18px;
	}

	.contFlex03 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
				flex-wrap: wrap;
		-webkit-box-pack: justify;
			 -ms-flex-pack: justify;
		 justify-content: space-between;
		margin-top: 50px;
		/*padding: 0px 18px;*/
	}
	.contFlex03 li {
		width: 47%;
		box-sizing: border-box;
		background-color: #ffffff;
		padding: 16px 0px 16px 0px;
		margin-bottom: 20px;
	}
	.investTb01 {
		display: table;
		width: 100%;
	}
	.investCell01 {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		height: 100px;
	}
	.investCell02 {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		height: 70px;
		font-size: 17px;
		line-height: 1.6em;
		font-weight: bold;
	}

	.investImg188 {
		width: 54px;
	}
	.investImg168 {
		width: 48px;
	}
	.investImg180 {
		width: 64px;
	}
	.investImg176 {
		width: 60px;
	}

	/*-----------------------*/

	.strengthBoxWrap01.strengthBoxWrap02 {
		padding: 0px 0px 0px 0px;
	}
	.strengthBoxWrap02 .strengthBox01 {
		left: auto;
		right: 0px;
	}
	.strengthBoxWrap02 .strengthNumTb01 {
		left: auto;
		right: 0px;
	}
	.strengthBoxWrap02 .strengthBoxIn01 {
		padding: 0px 0px 0px 0px;
	}



	/*-----------------------*/

	.strengthBoxWrap01 {
		position: relative;
		padding: 0px 0px 0px 0px;
		margin-bottom: 0px;
		margin-top: 30px;
	}
	.strengthBox01 {
		width: auto;
		position: relative;
		top: 0px;
		left: 0px;
		border-top: 2px solid #71b648;
	}
	.strengthNumTb01 {
		display: table;
		width: 86px;
		position: absolute;
		top: 0px;
		left: 0px;
	}
	.strengthNumCell01 {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		height: 86px;
		background-color: #0079c3;
		font-family: 'Arvo', serif;
		font-style: italic;
		color: #ffffff;
	}
	.strengthNumCell01 .p01 {
		font-size: 10px;
		line-height: 1.2em;
		font-style: italic;
	}
	.strengthNumCell01 .p02 {
		font-size: 33px;
		line-height: 1.2em;
		font-style: italic;
	}

	.strengthBox02 {
		background-color: #ffffff;
		border-top: none;
		padding: 24px 20px 10px 20px;
		text-align: left;
	}
	.strengthBoxIn01 {
		padding: 0px 0px 0px 0px;
	}
	.strengthH301 {
		font-size: 18px;
		line-height: 1.7em;
		font-weight: bold;
		margin-bottom: 15px;
	}
	.strengthH301 .span01 {
		color: #71b648;
	}
	.strengthText01 {
		font-size: 16px;
		line-height: 1.87em;
	}

	.strengthBoxIn02 {
		padding: 35px 0px 0px 0px;
	}
	.strengthFlex01 {
		display: block;
	}

	.strengthFlex01 li {
		box-sizing: border-box;
		width: auto;
		background-color: #f2f2f2;
		padding: 24px 18px 20px 18px;
			text-align: justify;
		text-justify: inter-ideograph;
		margin-bottom: 32px;
	}
	.strengthFlex01 li dt {
		display: table;
		width: 100%;
		margin: 0px auto 17px auto;
	}
	.strengthFlex01 li dt span {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		height: 30px;
		background-color: #999999;
		color: #ffffff;
		font-size: 16px;
		line-height: 1.0em;
		font-weight: bold;
	}
	.strengthFlex01 li dd {
		font-size: 16px;
		line-height: 1.87em;
		letter-spacing: -0.05em;
	}

	.strengthFlex01 li.li02 {
		background-color: #71b648;
		position: relative;
	}
	.strengthFlex01 li.li02 dt span {
		background-color: #ffffff;
		color: #71b648;
	}
	.strengthFlex01 li.li02 dd {
		color: #ffffff;
		font-weight: bold;
	}
	.strengthFlex01 li.li02::before {
		content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 10px 0 10px;
	border-color: #0078c3 transparent transparent transparent;
		position: absolute;
		top: -26px;
		margin-top: 0px;
		left: 50%;
		margin-left: -10px;
	}

	.strengthBg01 {
		width: 100%;
		height: 1900px;
		position: absolute;
		bottom: 0;
		right: 50%;
		margin-right: -108px;
	}
	.strengthBg02 {
		width: 100%;
		height: 1535px;
		position: absolute;
		top: 0;
		left: 50%;
		margin-left: -100px;
	}
	.strengthBg03 {
		width: 100%;
		height: 2000px;
		position: absolute;
		top: 794px;
		right: 50%;
		margin-right: -108px;
	}
	.strengthBg04 {
		width: 100%;
		height: 1000px;
		position: absolute;
		bottom: 50px;
		left: 50%;
		margin-left: -274px;
	}

	/*-----------------------*/

	.contBlock03 {
		position: relative;
	}
	.caseBg01 {
		display: none;
		/*background-image: url("/lp/na_research/img/case_bg01.jpg");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: cover;
		height: 805px;
		width: 100%;
		position: absolute;
		left: 0px;
		top: 0px;*/
	}
	.contCaseSpBg01 {
		background-image: url("./assets/img/case_bg01.jpg");
		background-repeat: no-repeat;
		background-position: center center;
		background-size: auto 100%;
		padding-bottom: 20px;
	}

	.contBlock03 .contH001 {
		color: #ffffff;
	}
	.contBlock03 .contCatchText02 {
		color: #ffffff;
	}
	.contBlock03 .contCatchText01 {
		color: #ffffff;
	}

	.caseBlock01 {
		background-image: url("./assets/img/case_bg02.png");
		background-repeat: repeat;
		background-position: center top;
		width: auto;
		margin: auto;
		padding: 30px 18px 10px 18px;
	}
	.caseH301Wrap {
		position: relative;
		border-bottom: 1px solid #b3b3b3;
		text-align: left;
		padding: 0px 0px 16px 0px;
		margin-bottom: 30px;
	}
	.caseH301Wrap::after {
		content: "";
		width: 126px;
		height: 1px;
		background-color: #71b648;
		position: absolute;
		left: 0px;
		bottom: -1px;
	}

	.caseH301Wrap .caseH301 {
		font-size: 18px;
		line-height: 1.5em;
		font-weight: bold;
		text-indent: -1em;
		padding-left: 1em;
	}
	.caseH301Wrap .caseH301 span {
		color: #71b648;
	}

	.caseFlex01 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
				flex-wrap: wrap;
		-webkit-box-pack: justify;
			 -ms-flex-pack: justify;
		 justify-content: space-between;
	}
	.caseFlex01 .li01 {
		box-sizing: border-box;
		width: auto;
		background-color: #ffffff;
		position: relative;
		padding: 0px 20px 25px 20px;
		text-align: left;
		margin-bottom: 40px;
	}
	.caseFlex01 .li01::after {
		content: "";
width: 0;
height: 0;
border-style: solid;
border-width: 20px 10px 0 10px;
border-color: #0078c3 transparent transparent transparent;
		position: absolute;
		top: auto;
		right: auto;
		bottom: -31px;
		left: 50%;
		margin-left: -10px;
	}

	.caseFlex01 .caseBox01 {
		position: relative;
		padding-top: 35px;
	}
	.caseFlex01 .caseBox01::before {
		content: "";
		width: 8px;
		height: 100%;;
		background-color: #333333;
		position: absolute;
		top: 0px;
		left: -20px;
	}
	.caseFlex01 .caseText01 {
		display: inline-block;
		border: 1px solid #333333;
		font-size: 17px;
		line-height: 1.6em;
		font-weight: bold;
		padding: 2px 11px 2px 11px;
		margin-bottom: 16px;
	}
	.caseFlex01 .caseText02 {
		font-size: 19px;
		line-height: 1.57em;
		font-weight: bold;
	}
	.caseFlex01 .caseUl01 {
		margin-top: 35px;
	}
	.caseFlex01 .caseUl01 li {
		padding: 0px 0px 0px 18px;
		position: relative;
		font-size: 16px;
		line-height: 1.87em;
	}
	.caseFlex01 .caseUl01 li::before {
		content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 8px;
	border-color: transparent transparent transparent #000000;
		position: absolute;
		left: 0px;
		top: 12px;
	}

	/*-------*/

	.caseFlex01 .li01.li02 {
		border: 2px solid #71b648;
	}
	.caseFlex01 .li02 .caseBox01::before {
		background-color: #71b648;
	}
	.caseFlex01 .li02 .caseText01 {
		border: 1px solid #71b648;
		background-color: #71b648;
		color: #ffffff;
	}
	.caseFlex01 .li02 .caseText02 {
		color: #71b648;
	}
	.caseFlex01 .li01.li02::after {
		display: none;
	}
	.caseFlex01 .li02 .caseUl01 li::before {
	border-color: transparent transparent transparent #71b648;
	}

	.contCaseBlock01 {
		margin-bottom: 0px;
	}

	/*---------------------*/

	.contactAreaWrap {
		padding: 0px 0px 0px 0px;
	}

	.pagetopButton {
		display: none;
		position: fixed;
		bottom: 60px;
		right: 16px;
	}
	.pagetopButton p {
		display: table;
		width: 68px;
		position: relative;
	}
	.pagetopButton p a {
		display: table-cell;
		text-align: center;
		vertical-align: bottom;
		box-sizing: border-box;
		height: 68px;
		border: 1px solid #b3b3b3;
		background-color: #b3b3b3;
		padding: 0px 0px 13px 0px;
		color: #ffffff;
		font-size: 12px;
		line-height: 1.0em;
			-webkit-transition: all 0.3s ease;
			-moz-transition: all 0.3s ease;
			-o-transition: all 0.3s ease;
			transition: all  0.3s ease;
	}
	.pagetopButton a:link {	color: #ffffff;	text-decoration: none;}
	.pagetopButton a:visited {	color: #ffffff;	text-decoration: none;}
	.pagetopButton a:hover {
		color:#b3b3b3;
		text-decoration: none;
		background-color: #ffffff;
	}
	.pagetopButton a:active {	color:#ffffff;	text-decoration: none;}

	.pagetopButton p a::before {
		content: '';
		width: 13px;
		height: 13px;
		border: 0px;
		border-top: solid 1px #ffffff;
		border-right: solid 1px #ffffff;
		-ms-transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
		position: absolute;
		top: 18px;
		left: 50%;
		margin-left: -6px;
	}
	.pagetopButton p a:hover::before {
		border-top: solid 1px #b3b3b3;
		border-right: solid 1px #b3b3b3;
	}





}



/* --------------------------------------------------------------------
 footer
-------------------------------------------------------------------- */

.cm_footer_section_under {
    padding: 40px 0;
    height: auto;
}
.cm_footer_section_under_logo {
    text-align: center;
    margin-bottom: 30px;
}
.cm_footer_section_under_logo img {
	width: 322px;
}
.cm_footer_section_under_inner .under_list_items {
    text-align: center;
}
.cm_footer_section_under_inner .under_item {
    display: inline-block;
}
.cm_footer_section_under_inner .under_item a {
    color: #333;
    line-height: 15px;
    font-weight: normal;
    border-right: 1px solid #dcdcdc;
font-size: 12px;
padding-right: 15px;
margin-right: 11px;
}
.cm_footer_section_under_inner .under_item a:link {	color: #333;	text-decoration: none;}
.cm_footer_section_under_inner .under_item a:visited {	color: #333;	text-decoration: none;}
.cm_footer_section_under_inner .under_item a:hover {	color:#333;	text-decoration: underline;}
.cm_footer_section_under_inner .under_item a:active {	color:#333;	text-decoration: none;}

.cm_footer_copy {
    display: table;
    background-color: #e5e5e5;
    text-align: center;
    width: 100%;
    height: 34px;
}
.cm_footer_copy small {
    display: table-cell;
    vertical-align: middle;
    font-size: 12px;
    color: #333;
    line-height: 12px;
    font-weight: normal;
}
.cm_footer_section_under_inner .under_item:last-of-type a {
    border-right: none;
}



@media screen and (max-width:767px) {
/*@media screen and (max-width:799px) {*/

	.cm_footer_section_under {
			padding: 20px 10px;
			height: auto;
	}
	.cm_footer_section_under_logo {
		text-align: left;
			margin-bottom: 15px;
	}
	.cm_footer_section_under_logo img {
		width: 234px;
	}
	.cm_footer_section_under_inner .under_list_items {
			text-align: left;
	}
	.cm_footer_section_under_inner .under_item a {
			font-size: 11px;
			color: #333;
			line-height: 15px;
			font-weight: normal;
			padding-right: 8px;
			margin-right: 3px;
			border-right: 1px solid #dcdcdc;
	}
	.cm_footer_copy {
			display: table;
			background-color: #e5e5e5;
			text-align: center;
			width: 100%;
			height: 34px;
	}
	.cm_footer_copy small {
			display: table-cell;
			vertical-align: middle;
			font-size: 10px;
			color: #333;
			line-height: 12px;
			font-weight: normal;
	}



}

/* --------------------------------------------------------------------
 renewal
-------------------------------------------------------------------- */

a, a:link{
	text-decoration: none!important;
}

.mv_btn_wrap.contact_bl{
	padding: 105px 0 0;
}

.mv_btn_wrap .el_contact .contBtn02.contBtn04{
	width: 460px;
}

.mv_btn_wrap .el_contact .contBtn02.contBtn04 a{
	opacity: 0.8;
}

.mv_btn_wrap .el_contact .contBtn02.contBtn04 a:hover{
	opacity: 1;
}

.contBtn03 a span{
	display: block;
}

.contBtn03 a span:nth-of-type(1){
	font-size: 14px;
	margin-bottom: 15px;
}

.contBtn03 a span:nth-of-type(2){
	font-size: 22px;
}

.text_wh{
	color: #fff;
}

.el_text01{
	color: #71b648;
	font-weight: bold;
	letter-spacing: 0.05em;
	border: 2px solid #71b648;
	display: inline-block;
	padding: 15px;
}

.bl_cont01{
	display: flex;
	margin-top: 52px;
	justify-content: space-between;
}

.bl_cont01 li .el_box01{
	background-color: #fff;
	width: 333px;
	height: 250px;
	display: flex;
	justify-content: center;
	align-items: center;
}

.bl_cont01 li:nth-of-type(1) img{
	width: 148px;
}

.bl_cont01 li:nth-of-type(2) img{
	width: 110px;
}

.bl_cont01 li:nth-of-type(3) img{
	width: 121px;
}

.bl_cont01 li .el_text02{
	margin-top: 40px;
	font-size: 18px;
	line-height: 1.88;
}

.bl_cont02 {
	display: flex;
	justify-content: space-between;
}

.bl_cont02 li:nth-of-type(1) img{
	width: 132px;
}

.bl_cont02 li:nth-of-type(2) img{
	width: 118px;
}

.bl_cont02 li .el_box02{
	background-color: #fff;
	width: 522px;
	height: 632px;
	display: flex;
	align-items: center;
	padding: 48px 60px 32px;
	flex-direction: column;
	box-sizing: border-box;
	position: relative;
}

.bl_cont02 li .el_box02::after{
	content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 7.5px 0 7.5px;
    border-color: #71b649 transparent transparent transparent;
    position: absolute;
    bottom: 30px;
}

.bl_cont02 li a{
	transition: all .3s linear;
	display: inline-block;
}

.bl_cont02 li a:hover{
	opacity: 0.6;
}

.bl_cont02 li .el_text03{
	font-size: 17px;
	letter-spacing: 0.05em;
	border-bottom: 1px solid #71b648;
	padding-bottom: 31px;
  width: 100%;
  color: #000000;
}

.bl_cont02 li .el_text04{
	font-size: 25px;
	line-height: 1.8;
	letter-spacing: 0.05em;
	font-weight: bold;
	color: #71b648;
	margin-top: 25px;
}

.bl_cont02 li .el_img01{
	margin-top: 27px;
	height: 125px;
}

.bl_cont02 li .el_text05{
	font-size: 16px;
	line-height: 1.68;
	width: 100%;
	text-align: left;
	margin-top: 47px;
	color: #000000;
}

.bl_cont02 li .el_text05 span{
	color: #71b648;
}

.bl_cont02 li .el_text05 ul li{
	display: flex;
	line-height: 1.87em;
	padding: 0px 0px 8px 0px;
}

.bl_cont03_wrapper{
  height: 1350px;
}

.bl_cont04_wrapper{
	height: 2200px;
}

.bl_cont03 .el_title01{
	color: #fff;
	background-color: #71b648;
	width: 270px;
	height: 170px;
	margin: -15px auto 20px;
	font-size: 22px;
	font-weight: bold;
	line-height: 2;
	letter-spacing: 0.05em;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
}

.bl_cont03{
	background-image: url(../img/portal_bg01.png);
  background-size: cover;
  height: 803px;
  border-top: 1px solid #71b648;
  position: relative;
}

.bl_cont03::after{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 803px;
	background-image: linear-gradient(180deg, transparent 0 80%, #FFF 100%);
}

.bl_cont03.bl_cont04{
	background-image: url(../img/research_bg01.png);
	background-size: cover;
  height: 1914px;
  position: relative;
}

.bl_cont03.bl_cont04::after{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 1914px;
	background-image: linear-gradient(180deg, transparent 0 80%, #FFF 100%);
}

.bl_cont03 .el_unit01{
	background-color: rgba(255,255,255,0.75);
	padding: 60px 50px 90px 50px;

  width: 1177px;
  margin: 0 auto;
  box-sizing: border-box;
  position: relative;
  z-index: 2;
  height: 670px;
}

.bl_cont03.bl_cont04 .el_unit01{
	height: auto;
}

.bl_cont03 .el_unit01 ul{
	display: flex;
	justify-content: space-between;
}

.bl_cont03 .el_unit01 li{
	width: 333px;
}

.bl_cont03 .el_unit01 li>div:nth-of-type(1){
  font-family: 'Arvo', serif;
  font-size: 33px;
  border: 1px solid #71b648;
  padding: 16px;
  display: inline-block;
  color: #71b648;
}

.bl_cont03 .el_unit01 li>div:nth-of-type(2){
	font-size: 18px;
	line-height: 1.88;
	margin-top: 20px;
}

.el_grn_text{
	color: #71b648;
}

.bl_cont03 .el_unit01 li>div:nth-of-type(3){
	margin-top: 35px;
}

.bl_cont03 .el_unit01 li>div:nth-of-type(4){
	font-size: 16px;
	line-height: 1.87;
	margin-top: 30px;
	text-align: left;
}

.contact_bl{
	display: flex;
	padding: 50px 0 100px;
	justify-content: center;
}

.contact_bl>div:first-of-type{
	margin-right: 30px;
}

.contactAreaWrap.el_contact{
	padding: 0;
  position: relative;
  z-index: 2;
}

.contact_bl>div:nth-of-type(2) .contBtn02 a span::before{
	background-image: url(./assets/img/download_icon.png);
}

.contact_bl>div:nth-of-type(2) .contBtn02 a:hover span::before{
	background-image: url(./assets/img/download_icon_bl.png);
}

.contBtn02.contBtn04.grn_btn a{
	background-color: #71b648;
	border: 1px solid #71b648;
}

.contBtn02.contBtn04.grn_btn a:hover{
	background-color: #fff;
	color: #71b648;
}

.contBtn02.grn_btn a:hover span::before{
	background-image: url(./assets/img/header_btn_mail01_ongrn.png);
}

.contBtn02.grn_btn  a:hover::after{
    border-top: solid 1px #71b648;
    border-right: solid 1px #71b648;
}

.el_contact .contBtn02.contBtn04{
	width: 500px;
}

.el_contact .contBtn02.contBtn04 a{
	height: 120px;
}

.el_contact .contBtn02 a span{
  font-weight: bold;
  letter-spacing: 0.11em;
}

.bl_cont03.bl_cont04 .el_unit01 li>div:nth-of-type(4){
	font-size: 18px;
	text-align: center;
}

.bl_cont03.bl_cont04 .el_unit01 li>div:nth-of-type(5){
	font-size: 16px;
	margin-top: 28px;
	line-height: 1.87;
	height: 90px;
	text-align: left;
}

.bl_cont03.bl_cont04 .el_unit01 li>div:nth-of-type(6)::before{
	content: "";
  background-image: url(./assets/img/arrow01.png);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
  width: 41.5px;
  height: 50.5px;
  display: block;
  margin: 30px auto 27px;
}

.bl_cont03.bl_cont04 .el_unit01 li>div:nth-of-type(6){
	font-size: 22px;
	color: #71b648;
	font-weight: bold;
	margin-top: 28px;
}

.bl_cont03.bl_cont04 .el_unit01 li>div:nth-of-type(7){
	font-size: 16px;
	font-weight: bold;
	line-height: 1.87;
	text-align: left;
	margin-top: 25px;
}

.bl_cont03.bl_cont04  .el_unit01{
	padding: 60px 50px 68px 50px
}

.bl_cont05{
	width: 960px;
  margin: 20px auto 0;
}

.bl_cont05_wrapper{
	padding-top: 67px;
}

.bl_cont05_wrapper h3{
	font-size: 25px;
	font-weight: bold;
}

.bl_cont05_wrapper h3::after{
	content: "";
  width: 66px;
  height: 2px;
  background-color: #71b649;
  display: block;
  margin: 24px auto 0;
}

.el_title02{
	font-size: 26px;
	font-weight: bold;
	border: 1px solid #251e1c;
	width: 470px;
	height: 62px;
	display: flex;
	justify-content: center;
	align-items: center;
  margin: 0 auto 44px;
}


/*============================
#固定ナビ
============================*/

div.bottom_bnr {
	position: fixed;
	right: 0;
	bottom: 110px;
	width: 200px;
	z-index:510;
}
div.bottom_bnr div.inner.pc div.box {
	position: relative;
	margin: 0 0 6px;
}
div.bottom_bnr div.inner.pc div.box div.closeBtn {
	width: 14px;
	position: absolute;
	top: 6px;
	right: 10px;
	cursor: pointer;
}
div.bottom_bnr div.inner.pc div.box a {
	text-decoration: none;
	display: block;
	transition: 0.3s;
	height: 44px;
}

div.bottom_bnr div.inner.pc div.box.dl a img {
	width: 70px;
	height: auto;
	margin: -28px 0 10px;
	-moz-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0px 0px 20px 0px rgb(0 0 0 / 20%);
    -ms-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.2);
    box-shadow: 0px 0px 20px 0px rgb(0 0 0 / 20%);
		border: 1px solid #555555;
}
div.bottom_bnr div.inner.pc div.box.dl a p.text1 {
	font-size: 12px;
	color: #fff;
	font-weight: 500;
	margin-bottom: 10px;
}
div.bottom_bnr div.inner.pc div.box.dl a div.text2 {
	background: #2f7ec4;
	text-align: left;
	font-size: 14px;
	color: #fff;
	font-weight: 700;
	position: relative;
	padding: 0;
	transition: 0.3s;
	line-height: 34px;
  display: flex;
  height: 44px;
  justify-content: center;
  align-items: center;
}

div.bottom_bnr div.inner.pc div.box.dl a:hover div.text2 {
	opacity: 0.8;
}

div.bottom_bnr div.inner.pc div.box.contact a {
	background: #4eb233;
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e65e5e5e', endColorstr='#e6464646', GradientType=1);
	height: 44px;
	font-size: 14px;
	font-weight: 700;
	color: #fff;
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
div.bottom_bnr div.inner.pc div.box.contact a:hover {
	opacity: 0.8;
}

div.bottom_bnr div.inner.pc div.box.contact a p span {
	display: inline-block;
	position: relative;
	color: #fff;
}

div.bottom_bnr div.inner.pc div.box.spec a {
	height: 44px;
	background: rgba(192, 192, 192, 0.9);
	color: #464646;
	font-size: 14px;
	font-weight: 700;
	line-height:1.2em;
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
div.bottom_bnr div.inner.pc div.box.spec a:hover {
	background: rgba(192, 192, 192, 0.7);
}
div.bottom_bnr div.inner.pc div.box.cs a {
	height: 44px;
	background: rgba(192, 192, 192, 0.9);
	color: #464646;
	font-size: 14px;
	font-weight: 700;
	display: -webkit-flex;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
div.bottom_bnr div.inner.pc div.box.cs a:hover {
	background: rgba(192, 192, 192, 0.7);
}


@media screen and (max-width:767px){

	.mv_btn_wrap{
		display: none;
	}

	.contBtn03 a span:nth-of-type(2){
		font-size: 18px;
	}

	.bl_cont06{
		margin-top: 40px;
	}

	.bl_cont06 .contH001::before{
		background-color: #9bd578;
	}

	.bl_cont06 .contStepBg01{
		height: 75%;
	}

	.contBlockIn02.bl_unit01{
		padding: 40px 18px 60px 18px;
	}

	.bl_cont01{
    flex-direction: column;
    margin-top: 40px;
	}

	.el_text01{
		line-height: 1.7;
    width: 100%;
    box-sizing: border-box;
	}

	.bl_cont01 li .el_box01{
		width: 100%;
		height: 200px;
	}

	.bl_cont01 li img{
    transform: scale(0.9);
	}

	.bl_cont01 li .el_text02{
    margin-top: 15px;
    font-size: 16px;
	}

	.bl_cont01 li:nth-of-type(n+2){
		margin-top: 20px;
	}

	.bl_cont02{
		flex-direction: column;
	}

	.bl_cont02 li .el_box02{
		width: 100%;
		padding: 30px 20px;
    height: auto;
	}

	.bl_cont02 li .el_text03{
		font-size: 16px;
    padding-bottom: 20px;
	}

	.bl_cont02 li .el_text04{
		font-size: 20px;
    line-height: 1.6;
    margin-top: 15px;
	}

	.bl_cont02 li .el_img01{
		margin-top: 15px;
	}

	.bl_cont02 li .el_text05{
		font-size: 14px;
		margin-top: 20px;
    padding-bottom: 35px;
	}

	.bl_cont02 li a{
		width: 95%;
	}

	.bl_cont02>li:first-of-type{
		margin-bottom: 30px;
	}

	.bl_cont03_wrapper{
		height: auto;
    min-height: 2500px;
	}

	.bl_cont03 .el_title01{
		width: 190px;
    height: 100px;
    font-size: 18px;
	}

	.bl_cont03{
		padding: 0 18px;
		background-position: right top;
	}

	.bl_cont03 .el_unit01 ul{
		flex-direction: column;
	}

	.bl_cont03 .el_unit01{
		width: 100%;
		padding: 30px 20px;
		margin-top: 30px;
	}

	.bl_cont03 .el_unit01 li{
		width: 100%;
	}

	.bl_cont03 .el_unit01 li:nth-of-type(n+2){
		margin-top: 30px;
	}

	.el_contact .contBtn02.contBtn04{
		width: 100%;
	}

	.el_contact .contBtn02 a::after{
		right: 15px;
	}

	.contact_bl{
		flex-direction: column;
	}

	.contact_bl>div:first-of-type{
		margin-right: 0;
		margin-bottom: 20px;
	}

	.contact_bl.contact_btm{
		padding: 0;
	}

	.contact_bl.contact_btm .el_contact .contBtn02.contBtn04 a{
		height: 77px;
	}

	.contact_bl.contact_btm>div:first-of-type{
		margin-bottom: 0;
	}

	.contact_bl.contact_sp_pdg{
		padding: 80px 18px 60px;
	}

	.bl_cont03.bl_cont04 .el_unit01{
		padding: 30px 20px;
	}

	.mv_btn_wrap_sp.contact_bl.contact_sp_pdg{
		padding: 0;
	}

	.mv_btn_wrap_sp.contact_bl>div:first-of-type{
		margin-bottom: 0;
	}

	.mv_btn_wrap_sp .el_contact .contBtn02.contBtn04 a{
		height: 77px;
		opacity: 0.8;
	}

	.bl_cont03_wrapper.bl_cont04_wrapper{
		height: auto;
    min-height: unset;
	}

	.bl_cont03.bl_cont04{
		height: auto;
	}

	.bl_cont03.bl_cont04::after{
		height: 4000px;
	}

	.bl_cont03.bl_cont04 .el_unit01 li>div:nth-of-type(5){
		height: auto;
		margin-top: 15px;
	}

	.bl_cont03.bl_cont04 .el_unit01 li>div:nth-of-type(6){
		margin-top: 20px;
		font-size: 20px;
	}

	.bl_cont03.bl_cont04 .el_unit01 li>div:nth-of-type(6)::before{
		margin: 20px auto 27px;
	}

	.bl_cont05{
		width: 100%;
	}

	.bl_cont05_wrapper{
		padding-top: 40px;
	}

	.bl_cont05_wrapper h3{
		font-size: 20px;
	}

	.bl_cont05_wrapper .contStepBox01{
		padding: 10px 0px 50px 0px;
	}

	.bl_cont05_wrapper .contStepBg01{
		display: none;
	}

	.cont03_sec{
		position: relative;
	}

	.bl_cont05_bg{
    height: 28%;
    background: rgba(113,182,72,0.82);
    width: 100%;
    position: absolute;
    top: auto;
    bottom: 0;
    left: 0px;
	}

	.contactAreaWrap.el_contact.flow_contact{
		padding: 80px 18px 60px;
	}

	.el_title02{
		width: 100%;
		font-size: 20px;
		height: auto;
		padding: 15px;
    box-sizing: border-box;
    margin: 0 auto 30px;
	}

	.bl_cont03 .el_unit01 li>div:nth-of-type(3) img{
		max-width: 350px;
	}

	.ancIn02{
		top: -80px;
	}

	/*============================
	#固定ナビ
	============================*/

	div.bottom_bnr {
		position: fixed;
		right: 0;
		bottom: 200px;
		width: 272px;
	}
	div.bottom_bnr div.inner.pc div.box {
		position: relative;
		margin: 0 0 6px;
	}
	div.bottom_bnr div.inner.pc div.box div.closeBtn {
		width: 18px;
		position: absolute;
		top: 10px;
		right: 10px;
		cursor: pointer;
	}
	div.bottom_bnr div.inner.pc div.box a {
		text-decoration: none;
		display: block;
		transition: 0.3s;
	}
	div.bottom_bnr div.inner.pc div.box.dl a {
		padding: 0 20px 20px;
		background: -moz-linear-gradient(left, rgba(113, 182, 72, 0.9) 0%, rgba(112, 181, 72, 0.9) 1%, rgba(0, 128, 58, 0.9) 100%);
		background: -webkit-linear-gradient(left, rgba(113, 182, 72, 0.9) 0%, rgba(112, 181, 72, 0.9) 1%, rgba(0, 128, 58, 0.9) 100%);
		background: linear-gradient(to right, rgba(113, 182, 72, 0.9) 0%, rgba(112, 181, 72, 0.9) 1%, rgba(0, 128, 58, 0.9) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e671b648', endColorstr='#e600803a', GradientType=1);
	}
	div.bottom_bnr div.inner.pc div.box.dl a:hover {
		background: -moz-linear-gradient(left, rgba(113, 182, 72, 0.7) 0%, rgba(112, 181, 72, 0.7) 1%, rgba(0, 128, 58, 0.7) 100%);
		background: -webkit-linear-gradient(left, rgba(113, 182, 72, 0.7) 0%, rgba(112, 181, 72, 0.7) 1%, rgba(0, 128, 58, 0.7) 100%);
		background: linear-gradient(to right, rgba(113, 182, 72, 0.7) 0%, rgba(112, 181, 72, 0.7) 1%, rgba(0, 128, 58, 0.7) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e671b648', endColorstr='#e600803a', GradientType=1);
	}
	div.bottom_bnr div.inner.pc div.box.dl a img {
		margin-top: -34px;
		width: 186px;
		height: auto;
		margin-bottom: 18px;
	}
	div.bottom_bnr div.inner.pc div.box.dl a p.text1 {
		font-size: 16px;
		color: #fff;
		font-weight: 500;
		margin-bottom: 10px;
	}
	div.bottom_bnr div.inner.pc div.box.dl a div.text2 {
		background: #008128;
		border: 1px solid #fff;
		text-align: left;
		font-size: 18px;
		color: #fff;
		font-weight: 700;
		position: relative;
		padding: 10px 15px 12px 45px;
		transition: 0.3s;
	}
	div.bottom_bnr div.inner.pc div.box.dl a:hover div.text2 {
		background: #fff;
		border: 1px solid #008128;
		color: #008128;
	}
	div.bottom_bnr div.inner.pc div.box.dl a div.text2::before {
		position: absolute;
		left: 17px;
		top: 15px;
		content: "";
		width: 13px;
		height: 16px;
		background: url(/lp/pure_storage/img/icon_download.png) no-repeat center center / contain;
	}
	div.bottom_bnr div.inner.pc div.box.dl a:hover div.text2::before {
		background: url(/lp/pure_storage/img/icon_download_on.png) no-repeat center center / contain;
	}
	div.bottom_bnr div.inner.pc div.box.contact a {
		background: -moz-linear-gradient(left, rgba(94, 94, 94, 0.9) 0%, rgba(94, 94, 94, 0.9) 1%, rgba(70, 70, 70, 0.9) 100%);
		background: -webkit-linear-gradient(left, rgba(94, 94, 94, 0.9) 0%, rgba(94, 94, 94, 0.9) 1%, rgba(70, 70, 70, 0.9) 100%);
		background: linear-gradient(to right, rgba(94, 94, 94, 0.9) 0%, rgba(94, 94, 94, 0.9) 1%, rgba(70, 70, 70, 0.9) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e65e5e5e', endColorstr='#e6464646', GradientType=1);
		height: 66px;
		font-size: 15px;
		font-weight: 700;
		color: #fff;
		display: -webkit-flex;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	div.bottom_bnr div.inner.pc div.box.contact a:hover {
		opacity: 0.8;
	}
	div.bottom_bnr div.inner.pc div.box.contact a p span {
		display: inline-block;
		position: relative;
	}
	div.bottom_bnr div.inner.pc div.box.contact a p span:before {
		content: "";
		background-image: url(/lp/pure_storage/img/header_btn_mail01.png);
		background-repeat: no-repeat;
		background-position: center center;
		background-size: 10px auto;
		width: 12px;
		height: 10px;
		position: absolute;
		left: -24px;
		top: 50%;
		margin-top: -4px;
	}
	div.bottom_bnr div.inner.pc div.box.spec a {
		height: 66px;
		background: rgba(223, 223, 223, 0.9);
		color: #464646;
		font-size: 15px;
		font-weight: 700;
		display: -webkit-flex;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	div.bottom_bnr div.inner.pc div.box.spec a:hover {
		background: rgba(223, 223, 223, 0.7);
	}
	div.bottom_bnr div.inner.pc div.box.cs a {
		height: 66px;
		background: rgba(192, 192, 192, 0.9);
		color: #464646;
		font-size: 15px;
		font-weight: 700;
		display: -webkit-flex;
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
	div.bottom_bnr div.inner.pc div.box.cs a:hover {
		background: rgba(192, 192, 192, 0.7);
	}



}
