@charset "utf-8";
/* CSS Document */
/*******************************************************************************************
	index.css
********************************************************************************************/

/*==========================================================================
	メインビジュアル
============================================================================*/
/*****************************************************
	767px以下【sp】
******************************************************/
.mainArea {
	padding: 20px 10px;
	background-image: url("../common/img/main_bg.png");
	background-repeat: repeat;
	background-position: left top;
}
.mainArea .mainAreainnr {
	width: 100%;
	padding: 15px 10px;
	box-sizing: border-box;
}
.mainArea .mainAreainnr .maintxt {
	font-size: 20px;
	font-weight: 600;
	text-align: center;
	margin-bottom: 20px;
}
.mainArea .mainAreainnr .maintxt span {
	color: #053394;
}
.mainArea .mainAreainnr .mainimg {
	text-align: center;
	margin-bottom: -15px;
	position: relative;
	z-index: 1;
}
.mainArea .mainAreainnr .mainimg .ttl {
	position: absolute;
	top:10px;
  	right: 0;
  	left: 0;
  	margin: 0 auto;
	z-index: 3;
}


/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	.mainArea .mainAreainnr {
		background-image: url("../common/img/top_visual_1.gif");
		background-size: 55%;
		background-position:right center;
		padding: 20px 10px;
	}
	.mainArea .mainAreainnr .maintxt {
		font-size: 26px;
		margin-bottom: 35px;
	}
	.mainArea .mainAreainnr .mainimg {
		margin-bottom: -35px;
	}

}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
	.mainArea .mainAreainnr {
		max-width: 1200px;
		background-size:contain;
		background-position:right center;
		padding: 30px 20px;
		margin: 0 auto;
	}
}

/*==========================================================================
	ナビボックス
============================================================================*/
/*****************************************************
	767px以下【sp】
******************************************************/

.navibox {
	position: relative;
	z-index: 2;
	padding: 15px;
	background-color: #FFF;
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
	border-bottom: 5px solid;
    border-image: linear-gradient(to right, #685dad 0%, #1395c8 33%, #ec42a3 66%, #fe6c02 100%);
    border-image-slice: 1;
}

.navibox .naviList {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.navibox .naviList li {
	width: 49%;
	padding: 10px;
	box-sizing: border-box;
	text-align: center;
}
.navibox .naviList li p {
	display: inline-block;
	border-radius: 20px;
	padding: 3px 20px;
	margin: 0 auto 10px;
	color: #FFF;
	font-weight: 500;
	text-align: center;
	line-height: 1.1;
	background-color: #07825d;
	font-size: 14px;
}
.navibox .naviList li p.sol1 {
	background-color: #07825d;
}
.navibox .naviList li p.sol2 {
	background-color: #ff6633;
}
.navibox .naviList li p.sol3 {
	background-color: #ffcc00;
}
.navibox .naviList li p.sol4 {
	background-color: #0099ff;
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	.navibox {
		padding: 30px;
	}
	.navibox .naviList li p {
		margin: 0 auto 10px;
	}

}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
	.navibox {
		margin: 0 auto;
	}
	.navibox .naviList li {
		width: 25%;
	}
	.navibox .naviList li a {
		display: block;
		transition: .2s linear;
		position: relative;
	}
	.navibox .naviList li a:hover {
		transform: translate(0,5px);
	}
}
/*==========================================================================
	概要
============================================================================*/
.overviewArea {
	background-color: #FFF;
}
.overviewArea .overviewAreainnr {
	padding: 0 10px;
}
.overviewArea .overviewAreainnr .ttl {
	color: #053394;
	font-weight: 600;
	font-size: 22px;
	margin-bottom: 20px;
	text-align: center;
}
.overviewArea .overviewAreainnr .txt {
	font-weight: 600;
	font-size: 16px;
	margin-bottom: 20px;
	text-align: left;
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	.overviewArea {
	}
	.overviewArea .overviewAreainnr {
	}
	.overviewArea .overviewAreainnr .ttl {
		font-size: 34px;
		margin-bottom: 35px;
	}
	.overviewArea .overviewAreainnr .txt {
		font-size: 17px;
		margin-bottom: 45px;
	}
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
	.overviewArea {
	}
	.overviewArea .overviewAreainnr {
		margin: 0 auto;
		max-width: 1000px;
	}
	.overviewArea .overviewAreainnr .txt {
		font-size: 18px;
		margin-bottom: 45px;
		text-align: center;
	}
}
/*==========================================================================
	概要2
============================================================================*/
/*****************************************************
	767px以下【sp】
******************************************************/
.overview2Area {
	background-color: #0b61b7;
}
.overview2Area .overview2Areainnr {
	padding: 0 10px;
}
.overview2Area .overview2Areainnr .ttl {
  font-size: 22px;
  color: #FFF;
  text-align: center;
  position: relative;
  padding-bottom: 10px;
  margin: 0 0 30px;
  line-height: 1.4;
  font-weight: normal;
  display: block;
}
.overview2Area .overview2Areainnr .strengbox {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	list-style: none;
}
.overview2Area .overview2Areainnr .strengbox li {
	background-color: #FFF;
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
	margin: 0 0 30px 0;
	padding: 20px;
	width: 100%;
	box-sizing: border-box;
	border-bottom: 5px solid;
    border-image: linear-gradient(to right, #685dad 0%, #1395c8 33%, #ec42a3 66%, #fe6c02 100%);
    border-image-slice: 1;
}
.overview2Area .overview2Areainnr .strengbox li .ttl2 {
	color: #073595;
	margin-bottom: 20px;
	text-align: center;
	font-size: 22px;
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	.overview2Area {
	}
	.overview2Area .overview2Areainnr {
	}
	.overview2Area .overview2Areainnr .ttl {
    	font-size: 36px;
    	margin: 0 0 30px 0;
		font-weight: bold;
  	}
	.overview2Area .overview2Areainnr .strengbox li {
		margin: 0 0 10px 0;
		padding: 40px;
		width: 48%;
		box-sizing: border-box;
		border-bottom: 7px solid;
        border-image: linear-gradient(to right, #685dad 0%, #1395c8 33%, #ec42a3 66%, #fe6c02 100%);
        border-image-slice: 1;
	}
	.overview2Area .overview2Areainnr .strengbox li .ttl2 {
		margin-bottom: 30px;
		text-align: center;
		font-size: 30px;
	}
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
	.overview2Area {
	}
	.overview2Area .overview2Areainnr {
		margin: 0 auto;
		max-width: 1000px;
	}
	.overview2Area .overview2Areainnr .ttl {
    	font-size: 38px;
    	margin: 0 0 50px 0;
  	}
}


/*==========================================================================
	ソリューション
============================================================================*/
/*****************************************************
	767px以下【sp】
******************************************************/
.solutionArea {
	position: relative;
	box-sizing: border-box;
}
.solutionArea .solutionAreainnr {
	padding: 30px 10px;
	background-color: #FFF;
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
	box-sizing: border-box;
	border-top: #07825d solid 5px;
}
.solutionArea.c2 .solutionAreainnr {
	border-top: #fa461a solid 5px;
}
.solutionArea.c3 .solutionAreainnr {
    border-top: #fdd000 solid 5px;
}
.solutionArea.c4 .solutionAreainnr {
	border-top: #009bff solid 5px;
}
.solutionArea .solutionAreainnr .logo {
	text-align: center;
	margin-bottom: 30px;
}
/*-- 人画像　タイトル --*/
.solutionArea .solutionAreainnr .solttlA {
	border-bottom: solid 4px #07825d;
	display: flex;
	margin: 30px 0 20px;
	align-items: center;
	background-color: #f7f7f7;
	padding: 10px;
}
.solutionArea .solutionAreainnr .solttlA .icon {
	max-width: 115px;
	padding-right: 15px;
}
.solutionArea .solutionAreainnr .solttlA .txt {
	width: 100%;
	font-size: 18px;
}
/*-- 人画像無し　タイトル --*/
.solutionArea .solutionAreainnr .solttlB {
	border-bottom: solid 4px #fa461a;
	margin: 30px 0 20px;
	background-color: #f7f7f7;
	padding: 10px;
	text-align: center;
}
.solutionArea .solutionAreainnr .solttlB .txt {
	width: 100%;
	font-size: 18px;
}
.solutionArea .solutionAreainnr .solttlB .txt span {
	font-size: 20px;
}
/*-- 人画像　タイトル --*/
.solutionArea .solutionAreainnr .solttlC {
	border-bottom: solid 4px #fdd000;
	display: flex;
	margin: 30px 0 20px;
	align-items: center;
	background-color: #f7f7f7;
	padding: 10px;
}
.solutionArea .solutionAreainnr .solttlC .icon {
	max-width: 115px;
	padding-right: 15px;
}
.solutionArea .solutionAreainnr .solttlC .txt {
	width: 100%;
	font-size: 18px;
}
/*-- 人画像　タイトル --*/
.solutionArea .solutionAreainnr .solttlD {
	border-bottom: solid 4px #009bff;
	display: flex;
	margin: 30px 0 20px;
	align-items: center;
	background-color: #f7f7f7;
	padding: 10px;
}
.solutionArea .solutionAreainnr .solttlD .icon {
	max-width: 115px;
	padding-right: 15px;
}
.solutionArea .solutionAreainnr .solttlD .txt {
	width: 100%;
	font-size: 18px;
}

.solutionArea .solutionAreainnr .txtmsg {
	text-align: center;
	font-size: 18px;
	margin: 10px 0 20px;
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	.solutionArea .solutionAreainnr {
		padding: 50px;
	}
	.solutionArea .solutionAreainnr .logo {
		text-align: center;
		margin-bottom: 60px;
	}
	/*-- 人画像　タイトル --*/
	.solutionArea .solutionAreainnr .solttlA {
		margin: 40px 0 20px;	
	}
	.solutionArea .solutionAreainnr .solttlA .txt {
		width: 100%;
		font-size: 22px;
		margin: 15px 0 25px;
	}
	/*-- 人画像無し　タイトル --*/
	.solutionArea .solutionAreainnr .solttlB {
		margin: 40px 0 20px;
		padding: 30px 10px;
	}
	.solutionArea .solutionAreainnr .solttlB .txt {
		font-size: 22px;
	}
	.solutionArea .solutionAreainnr .solttlB .txt span {
		font-size: 24px;
	}
	/*-- 人画像　タイトル --*/
	.solutionArea .solutionAreainnr .solttlC {
		margin: 40px 0 20px;	
	}
	.solutionArea .solutionAreainnr .solttlC .txt {
		width: 100%;
		font-size: 22px;
		margin: 15px 0 25px;
	}
	/*-- 人画像　タイトル --*/
	.solutionArea .solutionAreainnr .solttlD {
		margin: 40px 0 20px;	
	}
	.solutionArea .solutionAreainnr .solttlD .txt {
		width: 100%;
		font-size: 22px;
		margin: 15px 0 25px;
	}
	
	.solutionArea .solutionAreainnr .txtmsg {
		font-size: 22px;
	}
}

/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
	.solutionArea .solutionAreainnr {
		box-sizing: border-box;
		margin: 0 auto;
		max-width: 1200px;
		padding: 100px;
	}
	/*-- 人画像　タイトル --*/
	.solutionArea .solutionAreainnr .solttlA .txt {
		width: 80%;
		font-size: 24px;
		text-align: center;
	}
	/*-- 人画像無し　タイトル --*/
	.solutionArea .solutionAreainnr .solttlB .txt span {
		font-size: 27px;
	}
	/*-- 人画像　タイトル --*/
	.solutionArea .solutionAreainnr .solttlC .txt {
		width: 80%;
		font-size: 24px;
		text-align: center;
	}
	/*-- 人画像　タイトル --*/
	.solutionArea .solutionAreainnr .solttlD .txt {
		width: 80%;
		font-size: 24px;
		text-align: center;
	}
	.solutionArea .solutionAreainnr .txtmsg {
		font-size: 26px;
		margin: 20px 0 30px;
	}
}

/*==========================================================================
SOLUTION.01
============================================================================*/
/*****************************************************
	767px以下【sp】
******************************************************/
.sol01_2rowArea {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.sol01_2rowArea .rowBox {
	width: 100%;
	margin: 0 0 20px;
}
/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	.sol01_2rowArea .rowBox {
		width: 48%;
		margin: 0 0 20px;
	}
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
}
/*==========================================================================
SOLUTION.02
============================================================================*/
/*****************************************************
	767px以下【sp】
******************************************************/
.sol02_featList {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.sol02_featList li {
	background-color: #FFF;
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
	width: 100%;
	margin-bottom: 20px;
}
.sol02_featList li .ttl {
	background-color: #fa461a;
	text-align: center;
	color: #FFF;
	padding: 4px;
}
.sol02_featList li .innr {
	padding: 10px;
}
.sol02_featList li .innr p {
	background-color: #F3F3F3;
	border-radius: 4px;
	line-height: 1.4;
	padding: 10px 15px;
	margin: 10px 0;
	text-align: center;
}

/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	.sol02_featList li .innr {
		padding: 20px 10px;
	}
	.sol02_featList li {
		width: 48%;
		margin-bottom: 30px;
	}
	.sol02_featList li .innr p {
		font-size: 18px;
		min-height: 60px;
	}
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
	.sol02_featList li .innr {
		padding: 20px 10px;
	}
	.sol02_featList li {
		width: 31.5%;
		margin-bottom: 30px;
	}
}
/*==========================================================================
SOLUTION.03
============================================================================*/
/*****************************************************
	767px以下【sp】
******************************************************/
.sol03_featList {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 20px 0;
}
.sol03_featList > li {
	background-color: #FFF;
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
	width: 100%;
	margin-bottom: 20px;
}
.sol03_featList > li .ttl {
	background-color: #fdd000;
	text-align: center;
	color: #FFF;
	padding: 4px;
}
.sol03_featList > li .innr {
	padding: 10px;
}
.sol03_featList > li .innr ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.sol03_featList > li .innr ul li {
  position: relative;
  padding: 0 0 0 1.5em;
  margin: 0 0 15px;
  font-size: 16px;
}
.sol03_featList > li .innr ul li::before {
  position: absolute;
  left: 0;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  content: '\f152';
  color: #fdd000;
}

/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	.sol03_featList {
		margin: 40px 0;
	}
	.sol03_featList > li {
		width: 48%;
		margin-bottom: 30px;
	}
	.sol03_featList > li .innr {
		padding: 20px;
	}
	.sol03_featList > li .innr ul li {
  		font-size: 18px;
	}
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
	.sol03_featList > li .innr {
		padding: 25px;
	}
}
/*==========================================================================
SOLUTION.04
============================================================================*/
/*****************************************************
	767px以下【sp】
******************************************************/
.sol04_featList {
	list-style: none;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 20px 0 0;
}
.sol04_featList > li {
	background-color: #FFF;
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.2);
	width: 100%;
	margin-bottom: 20px;
}
.sol04_featList > li .ttl {
	background-color: #009bff;
	text-align: center;
	color: #FFF;
	padding: 4px;
}
.sol04_featList > li .innr {
	padding: 10px;
}
.sol04_featList > li .innr .pic {
	text-align: center;
}
.sol04_featList > li .innr img {
	margin-bottom: 0;
}

/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
	.sol04_featList {
		margin: 40px 0 0;
	}
	.sol04_featList > li {
		width: 48%;
		margin-bottom: 30px;
	}
	.sol04_featList > li .innr {
		padding: 20px;
	}
	
}
/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
	.sol04_featList > li .innr {
		padding: 25px;
	}
}


/*==========================================================================
	
============================================================================*/
/*****************************************************
	767px以下【sp】
******************************************************/


/*****************************************************
	320px以下【sp】
******************************************************/
@media print, screen and (max-width: 320px) {
}

/*****************************************************
	768px以上【tablet】
******************************************************/
@media print, screen and (min-width: 768px) {
}

/*****************************************************
	1024px以上【PC】
******************************************************/
@media print, screen and (min-width: 1024px) {
}

