@charset "utf-8";
/*----------------------------------------------------------
base
----------------------------------------------------------*/
.main-area *{
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
body {
	/* font-size: 16px; */
	color: #333;
}
.wrap {
	max-width: 960px;
	margin: 0 auto;
	padding: 0 15px;
	box-sizing: content-box;
	overflow: hidden;
}

.main-area img {
	max-width: 100%;
	vertical-align: top;
}

#contents.responsive .fsM{
font-size: 85%;
}
@media screen and (max-width: 767px){
.main-area.smartchargewrap{
    padding: 0 2%;
}
#contents.responsive{
    box-sizing: border-box;
    min-width: 100%;
    padding: 0 2%;
}
#contents .main-area p br{
display: block;
}}
/*-----------------------------
text
-----------------------------*/
.tCenter {
	text-align: center !important;
}
.tRight {
	text-align: right !important;
}
.bold {
	font-weight: bold;
}
.fs14{
    font-size: 14px;
}


@media only screen and (max-width: 767px) { 
	/* override */
	body {
		font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	}
}
/*-----------------------------
Margin
-----------------------------*/
/*all*/
.m00 { margin: 0 !important; }
.m05 { margin: 5px !important;}
.m10 { margin: 10px !important;}
.m15 { margin: 15px !important;}
.m20 { margin: 20px !important;}
.m25 { margin: 25px !important;}
.m30 { margin: 30px !important;}

/*auto*/
.mAuto { margin-right: auto !important; margin-left: auto !important; }

/*top*/
.mt00 { margin-top: 0 !important; }
.mt05 { margin-top: 5px !important; }
.mt10 { margin-top: 10px !important; }
.mt15 { margin-top: 15px !important; }
.mt20 { margin-top: 20px !important; }
.mt25 { margin-top: 25px !important; }
.mt30 { margin-top: 30px !important; }
.mt35 { margin-top: 35px !important; }
.mt40 { margin-top: 40px !important; }

/*right*/
.mr00 { margin-right: 0 !important; }
.mr05 { margin-right: 5px !important; }
.mr10 { margin-right: 10px !important; }
.mr15 { margin-right: 15px !important; }
.mr20 { margin-right: 20px !important; }
.mr25 { margin-right: 25px !important; }
.mr30 { margin-right: 30px !important; }
.mr35 { margin-right: 35px !important; }
.mr40 { margin-right: 40px !important; }

/*bottom*/
.mb00 { margin-bottom: 0 !important; }
.mb05 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb15 { margin-bottom: 15px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb25 { margin-bottom: 25px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb35 { margin-bottom: 35px !important; }
.mb40 { margin-bottom: 40px !important; }

/*left*/
.ml00 { margin-left: 0 !important; }
.ml05 { margin-left: 5px !important; }
.ml10 { margin-left: 10px !important; }
.ml15 { margin-left: 15px !important; }
.ml20 { margin-left: 20px !important; }
.ml25 { margin-left: 25px !important; }
.ml30 { margin-left: 30px !important; }
.ml35 { margin-left: 35px !important; }
.ml40 { margin-left: 40px !important; }

/*-----------------------------
padding
-----------------------------*/
/*all*/
.p00 { padding: 0 !important; }
.p05 { padding: 5px !important;}
.p10 { padding: 10px !important;}
.p15 { padding: 15px !important;}
.p20 { padding: 20px !important;}
.p25 { padding: 25px !important;}
.p30 { padding: 30px !important;}

/*top*/
.pt00 { padding-top: 0 !important; }
.pt05 { padding-top: 5px !important; }
.pt10 { padding-top: 10px !important; }
.pt15 { padding-top: 15px !important; }
.pt20 { padding-top: 20px !important; }
.pt25 { padding-top: 25px !important; }
.pt30 { padding-top: 30px !important; }

/*right*/
.pr00 { padding-right: 0 !important; }
.pr05 { padding-right: 5px !important; }
.pr10 { padding-right: 10px !important; }
.pr15 { padding-right: 15px !important; }
.pr20 { padding-right: 20px !important; }
.pr25 { padding-right: 25px !important; }
.pr30 { padding-right: 30px !important; }

/*bottom*/
.pb00 { padding-bottom: 0 !important; }
.pb05 { padding-bottom: 5px !important; }
.pb10 { padding-bottom: 10px !important; }
.pb15 { padding-bottom: 15px !important; }
.pb20 { padding-bottom: 20px !important; }
.pb25 { padding-bottom: 25px !important; }
.pb30 { padding-bottom: 30px !important; }

/*left*/
.pl00 { padding-left: 0 !important; }
.pl05 { padding-left: 5px !important; }
.pl10 { padding-left: 10px !important; }
.pl15 { padding-left: 15px !important; }
.pl20 { padding-left: 20px !important; }
.pl25 { padding-left: 25px !important; }
.pl30 { padding-left: 30px !important; }

@media only screen and (min-width: 569px) {
	/*top*/
	.pc-mt00 { margin-top: 0 !important; }
	.pc-mt05 { margin-top: 5px !important; }
	.pc-mt10 { margin-top: 10px !important; }
	.pc-mt15 { margin-top: 15px !important; }
	.pc-mt20 { margin-top: 20px !important; }
	.pc-mt25 { margin-top: 25px !important; }
	.pc-mt30 { margin-top: 30px !important; }
	.pc-mt35 { margin-top: 35px !important; }
	.pc-mt40 { margin-top: 40px !important; }

	/*right*/
	.pc-mr00 { margin-right: 0 !important; }
	.pc-mr05 { margin-right: 5px !important; }
	.pc-mr10 { margin-right: 10px !important; }
	.pc-mr15 { margin-right: 15px !important; }
	.pc-mr20 { margin-right: 20px !important; }
	.pc-mr25 { margin-right: 25px !important; }
	.pc-mr30 { margin-right: 30px !important; }
	.pc-mr35 { margin-right: 35px !important; }
	.pc-mr40 { margin-right: 40px !important; }

	/*bottom*/
	.pc-mb00 { margin-bottom: 0 !important; }
	.pc-mb05 { margin-bottom: 5px !important; }
	.pc-mb10 { margin-bottom: 10px !important; }
	.pc-mb15 { margin-bottom: 15px !important; }
	.pc-mb20 { margin-bottom: 20px !important; }
	.pc-mb25 { margin-bottom: 25px !important; }
	.pc-mb30 { margin-bottom: 30px !important; }
	.pc-mb35 { margin-bottom: 35px !important; }
	.pc-mb40 { margin-bottom: 40px !important; }

	/*left*/
	.pc-ml00 { margin-left: 0 !important; }
	.pc-ml05 { margin-left: 5px !important; }
	.pc-ml10 { margin-left: 10px !important; }
	.pc-ml15 { margin-left: 15px !important; }
	.pc-ml20 { margin-left: 20px !important; }
	.pc-ml25 { margin-left: 25px !important; }
	.pc-ml30 { margin-left: 30px !important; }
	.pc-ml35 { margin-left: 35px !important; }
	.pc-ml40 { margin-left: 40px !important; }
}

@media only screen and (max-width: 767px) {
	/*top*/
	.sp-mt00 { margin-top: 0 !important; }
	.sp-mt05 { margin-top: 5px !important; }
	.sp-mt10 { margin-top: 10px !important; }
	.sp-mt15 { margin-top: 15px !important; }
	.sp-mt20 { margin-top: 20px !important; }
	.sp-mt25 { margin-top: 25px !important; }
	.sp-mt30 { margin-top: 30px !important; }
	.sp-mt35 { margin-top: 35px !important; }
	.sp-mt40 { margin-top: 40px !important; }

	/*right*/
	.sp-mr00 { margin-right: 0 !important; }
	.sp-mr05 { margin-right: 5px !important; }
	.sp-mr10 { margin-right: 10px !important; }
	.sp-mr15 { margin-right: 15px !important; }
	.sp-mr20 { margin-right: 20px !important; }
	.sp-mr25 { margin-right: 25px !important; }
	.sp-mr30 { margin-right: 30px !important; }
	.sp-mr35 { margin-right: 35px !important; }
	.sp-mr40 { margin-right: 40px !important; }

	/*bottom*/
	.sp-mb00 { margin-bottom: 0 !important; }
	.sp-mb05 { margin-bottom: 5px !important; }
	.sp-mb10 { margin-bottom: 10px !important; }
	.sp-mb15 { margin-bottom: 15px !important; }
	.sp-mb20 { margin-bottom: 20px !important; }
	.sp-mb25 { margin-bottom: 25px !important; }
	.sp-mb30 { margin-bottom: 30px !important; }
	.sp-mb35 { margin-bottom: 35px !important; }
	.sp-mb40 { margin-bottom: 40px !important; }

	/*left*/
	.sp-ml00 { margin-left: 0 !important; }
	.sp-ml05 { margin-left: 5px !important; }
	.sp-ml10 { margin-left: 10px !important; }
	.sp-ml15 { margin-left: 15px !important; }
	.sp-ml20 { margin-left: 20px !important; }
	.sp-ml25 { margin-left: 25px !important; }
	.sp-ml30 { margin-left: 30px !important; }
	.sp-ml35 { margin-left: 35px !important; }
	.sp-ml40 { margin-left: 40px !important; }

	/*all*/
	.sp-p00 { padding: 0 !important; }
	.sp-p05 { padding: 5px !important;}
	.sp-p10 { padding: 10px !important;}
	.sp-p15 { padding: 15px !important;}
	.sp-p20 { padding: 20px !important;}
	.sp-p25 { padding: 25px !important;}
	.sp-p30 { padding: 30px !important;}

	/*top*/
	.sp-pt00 { padding-top: 0 !important; }
	.sp-pt05 { padding-top: 5px !important; }
	.sp-pt10 { padding-top: 10px !important; }
	.sp-pt15 { padding-top: 15px !important; }
	.sp-pt20 { padding-top: 20px !important; }
	.sp-pt25 { padding-top: 25px !important; }
	.sp-pt30 { padding-top: 30px !important; }

	/*right*/
	.sp-pr00 { padding-right: 0 !important; }
	.sp-pr05 { padding-right: 5px !important; }
	.sp-pr10 { padding-right: 10px !important; }
	.sp-pr15 { padding-right: 15px !important; }
	.sp-pr20 { padding-right: 20px !important; }
	.sp-pr25 { padding-right: 25px !important; }
	.sp-pr30 { padding-right: 30px !important; }

	/*bottom*/
	.sp-pb00 { padding-bottom: 0 !important; }
	.sp-pb05 { padding-bottom: 5px !important; }
	.sp-pb10 { padding-bottom: 10px !important; }
	.sp-pb15 { padding-bottom: 15px !important; }
	.sp-pb20 { padding-bottom: 20px !important; }
	.sp-pb25 { padding-bottom: 25px !important; }
	.sp-pb30 { padding-bottom: 30px !important; }

	/*left*/
	.sp-pl00 { padding-left: 0 !important; }
	.sp-pl05 { padding-left: 5px !important; }
	.sp-pl10 { padding-left: 10px !important; }
	.sp-pl15 { padding-left: 15px !important; }
	.sp-pl20 { padding-left: 20px !important; }
	.sp-pl25 { padding-left: 25px !important; }
	.sp-pl30 { padding-left: 30px !important; }
}

.pc-only {
	display: inline-block;
}
.sp-only {
	display: none;
}

@media only screen and (max-width: 767px) { 
	.pc-only {
		display: none;
	}
	.sp-only {
		display: inline-block;
	}
}

.sec {
	/* margin-top: 60px; */
	padding-bottom: 60px;
}
.h-top p{
	font-size: 24px;
	margin-bottom: 16px;
	font-weight: bold;
}
.h-top {
	border-bottom: 2px solid #e5e5e5;
}

/*-----------------------------
anchor-block
-----------------------------*/
.anchor {	
	display: flex;
	flex-wrap: wrap;
	padding: 44px 40px 22px;
	/* border-bottom: 2px solid #9b9b9b; */
}
.anchor li {
	width: 25%;
	margin-bottom: 35px;
	padding: 0 25px;
	text-indent: -25px;
}
.anchor li a{
	display: inline;
	line-height: 1.7;
	padding-left: 25px;
	background: url(/common/images/ico_down_01.gif) left center no-repeat;
	color: #333;
	font-size: 15px;
}
@media only screen and (max-width: 767px) { 
	.anchor {
		padding: 30px 0 35px;
	}
	.anchor li {
		margin-bottom: 20px;
		padding: 0 0 0 25px;
		width: 50%;
	}
}

/*-----------------------------
Headings
-----------------------------*/

/* h1-01 */
.h1-01 {
	font-size: 32px;
	font-weight: bold;
	margin-bottom: 30px;
}

/* h2-01 */
.h2-01 {
	font-size: 26px;
	font-weight: bold;
	margin-bottom: 30px;
}

/* h3-01 */
.h3-01 {
	position: relative;
	padding: 14px 20px 20px;
	margin-bottom: 60px;
	border-left: 5px solid #005ab4;
}
.h3-01:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 2px;
	background: #f1f1f1;
}
.h3-01 .tag {
	display: inline-block;
	min-width: 68px;
	text-align: center;
	margin-bottom: 16px;
	padding: 5px 10px 4px;
	background: #005ab4;
	border-radius: 10px;
	font-size: 11px;
	color: #fff;
	line-height: 1;
	vertical-align: top;
}
.h3-01 h3 {
	font-size: 21px;
	font-weight: normal;
}

/* h4-01 */
.h4-01,
.h4-02 {
	margin-bottom: 30px;
	font-size: 22px;
	font-weight: bold;
}
.h4-01 {
	color: #005ab4;
}

span.fcOrange{
color: #FF6E2A;
}

@media only screen and (max-width: 767px) { 
	.h3-01 {
		margin-bottom: 30px;
		padding: 5px 14px 10px;
		border-width: 4px;
	}
	.h3-01 .tag {
		min-width: 30px;
		margin-bottom: 8px;
		padding: 4px 5px 4px;
	}
	.h3-01 h3 {
		font-size: 15px;
	}
	.h3-01 .tag {
		font-size: 7px;
	}
	.h1-01 {
		font-size: 21px;
	}
	.h2-01 {
		font-size: 19px;
	}
	.h4-01,
	.h4-02 {
		font-size: 17px;
	}
	.h4-02 {
		margin-bottom: 0;
	}
}

/*-----------------------------
Texts
-----------------------------*/

.txt-01 {
	font-size: 16px;
	margin-bottom: 40px;
}

.txt-bg01 {
	background: #f2f5f7;
	margin-bottom: 40px;
	padding: 35px 40px;
	font-size: 16px;
}

.txt-large,
.txt-large-blue {
	font-size: 19px;
	margin-bottom: 40px;
	font-weight: bold;
}
.txt-large-blue {
	color: #005ab4;
}

.txt-small {
	font-size: 14px;
	margin-bottom: 40px;
}

.txt-note {
	position: relative;
	margin-bottom: 40px;
	padding-left: 42px;
	font-size: 14px;
}
.txt-note:before{
	content: "（注）";
	display: inline-block;
	position: absolute;
	left: 0;
}

@media only screen and (max-width: 767px) { 
	.txt-01 {
		font-size: 14px;
	}
	.txt-bg01 {
		padding: 20px;
		font-size: 14px;
	}
	.txt-large,
	#contents p.txt-large-blue {
		font-size: 15px;
	}
	#contents p.txt-small {
		font-size: 12px;
	}
	#contents p.txt-note {
		font-size: 12px;
	}
}

/*-----------------------------
Texts 2022/2/22追加
-----------------------------*/
.txt-note_1 {
	position: relative;
	margin-bottom: 40px;
	padding-left: 50px;
	font-size: 14px;
}
.txt-note_2 {
	position: relative;
	margin-bottom: 40px;
	padding-left: 50px;
	font-size: 14px;
}
.txt-note_1:before{
	content: "（注1）";
	display: inline-block;
	position: absolute;
	left: 0;
}
.txt-note_2:before{
	content: "（注2）";
	display: inline-block;
	position: absolute;
	left: 0;
}


/*-----------------------------
case-study
-----------------------------*/

.case-study {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 40px;
}
.case-study .case-details {
	display: flex;
	width: 45.31%;
	padding-right: 30px;
	flex-direction: column;
}
.case-study .case-details .case-head {
	position: relative;
	padding-bottom: 26px;
	margin-bottom: 20px;
	font-size: 32px;
	font-weight: bold;
}
.case-info {
	font-size: 22px;
	font-weight: bold;
}
.case-head:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 26px;
	height: 4px;
	background: #005ab4;
}
#contents p.block-text {
	margin: auto 0 0;
	padding: 30px;
	background: #f0f1f4;
	font-size: 14px;
}
.img-dup-sp {
	display: none;
}
.case-study .case-img {
	width: 54.69%;
}
@media only screen and (max-width: 767px) { 
	.case-study .case-details {
		width: 100%;
		padding: 0;
	}
	.case-study .case-img {
		display: none;
	}
	#contents .case-study .case-details .case-head {
		padding-bottom: 15px;
		font-size: 21px;
	}
	#contents .case-study .case-details .case-head:after {
		width: 20px;
		height: 3px;
	}
	.case-info {
		font-size: 14px;
	}
	.img-dup-sp {
		display: block;
		margin-top: 10px;
	}
	.img-dup-sp img {
		width: 100%;
	}
	#contents p.block-text {
		margin: 20px 0 0;
		padding: 15px 20px;
		font-size: 12px;
	}
}

/*-----------------------------
list
-----------------------------*/

.list-block {
	margin-bottom: 40px;
}
.list-ttl {
	font-size: 18px;
	font-weight: bold;
	margin-bottom: 10px;
}
.list-01 li {
	position: relative;
	padding-left: 20px;
	margin-bottom: 10px;
}
.list-01 li:last-child {
	margin-bottom: 0;
}
.list-01 li:before{
	position: relative;
	content: "";
	position: absolute;
	background: url(/b_solution/casestudy_c/images/ico_bullet_01.png);
	width: 8px;
	height: 8px;
	left: 0;
	top: 8px;
}
@media only screen and (max-width: 767px) {
	.list-ttl {
		margin-bottom: 5px;
		font-size: 15px;
	}
	.list-01 li {
		margin-bottom: 8px;
		font-size: 14px;
	}
	.list-01 li:before {
		background-size: contain;
		width: 6px;
		height: 6px;
	}
}

/*-----------------------------
intro-block
-----------------------------*/

.intro-block {
	position: relative;
	display: flex;
	flex-wrap: wrap;
}
.intro-block .col-01,
.intro-block .col-02 {
	position: relative;
	width: 50%;
	padding: 40px 40px 50px;
}
.intro-block .col-01 {
	background: #f2f5f7;
}
.intro-block .col-01:after {
	content: "";
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 137px 0 137px 20px;
	border-color: transparent transparent transparent #f2f5f7;
	z-index: 7;
}
.intro-block .col-02 {
	background: #015bb4;
	background: linear-gradient(90deg, rgba(1,91,180,1) 20%, rgba(58,128,197,1) 100%);
}
.intro-block .col-02:before {
	content: "";
	position: absolute;
	top: 0;
	left: -20px;
	width: 20px;
	height: 100%;
	background: #015bb4;
	z-index: 6;
}

.intro-ttl01,
.intro-ttl02 {
	max-width: 158px;
	margin: 0 auto 30px;
	padding: 10px 30px 11px;
	border-radius: 50px;
	font-size: 21px;
	font-weight: bold;
	text-align: center;
	line-height: 1;
}
.intro-ttl01 {
	background: #005ab4;
	color: #fff;
}
.intro-ttl02 {
	background: #fff;
	color: #333;
}

/* list-02 */
.list-02 li {
	position: relative;
	padding-left: 40px;
	margin-bottom: 20px;
}
.list-02 li:last-child {
	margin-bottom: 0;
}
.list-02 li:before{
	position: relative;
	content: "";
	position: absolute;
	background: url(/b_solution/casestudy_c/images/ico_check.png) no-repeat;
	width: 19px;
	height: 16px;
	left: 0;
	top: 4px;
}
/* list-03 */
.list-03 li {
	position: relative;
	padding-left: 42px;
	margin-bottom: 20px;
	color: #fff;
}
.list-03 li:last-child {
	margin-bottom: 0;
}
.list-03 li:before{
	position: relative;
	content: "";
	position: absolute;
	background: url(/b_solution/casestudy_c/images/ico_circle.png) no-repeat;
	width: 22px;
	height: 22px;
	left: 0;
	top: 2px;
}

@media only screen and (max-width: 767px) { 
	.intro-block .col-01, 
	.intro-block .col-02 {
		padding: 35px 20px 24px;
		width: 100%;
	}
	.intro-block .col-02 {
		padding: 42px 20px 30px;
	}
	.intro-block .col-02:before {
		display: none;
	}
	.intro-block .col-01:after {
		top: auto;
		bottom: -19px;
		left: 50%;
		transform: translateX(-50%);
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 20px 177px 0 177px;
		border-color: #f2f5f7 transparent transparent transparent;
	}
	.intro-ttl01,
	.intro-ttl02 {
		margin: 0 auto 20px;
		padding: 8px 10px;
		max-width: 110px;
		font-size: 15px;
	}
	.list-02 li,
	.list-03 li{
		margin-bottom: 10px;
		font-size: 14px;
	}
	.list-02 li {
		padding-left: 24px;
	}
	.list-03 li {
		padding-left: 24px;
	}
	.list-03 li:before {
		background-size: contain;
		width: 15px;
		height: 15px;
	}
}


/*-----------------------------
products
-----------------------------*/

/* product-01 */
.product-01 .item {
	display: flex;
	flex-wrap: wrap;
}
.product-01 .item .img {
	width: 29.69%;
}
.product-01 .item .prod-details {
	width: 70.31%;
	padding: 0 30px;
}
.item .prod-txt {
	margin-bottom: 30px;
}
.item .prod-btn {
	max-width: 184px;
}
.item .prod-btn a {
	display: block;
	position: relative;
	padding: 10px 12px;
	border: 2px solid #005ab4;
	border-radius: 30px;
	font-size: 14px;
	color: #005ab4;
	text-align: center;
	text-decoration: none;
}
.item .prod-btn a:after {
	content: "";
	position: absolute;
	right: 10px;
	top: 50%;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4.5px 0 4.5px 6px;
	border-color: transparent transparent transparent #005ab4;
}
.item .prod-btn a:hover {
	background: #005ab4;
	color: #fff;
}
.item .prod-btn a:hover:after{
	border-color: transparent transparent transparent #fff;
}

/* product-02 */

.product-02 {
	display: flex;
	flex-wrap: wrap;
	margin: 0 -20px;
	overflow: hidden;
}
.product-02 .item {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 20px;
	padding: 0 20px;
	width: 50%;
}

.product-02 .item .img {
	width: 46.96%;
}
.product-02 .item .prod-details {
	padding: 0 0 0 20px;
	width: 53.04%;
}

@media only screen and (max-width: 767px) { 
	.item img {
		width: 100%;
	}
	.product-01 .item .img {
		padding: 0 8px;
		width: 50%;
	}
	.product-01 .item .prod-details {
		padding: 0 8px;
		width: 50%;
	}
	.product-01 .item {
		margin: 0 -8px;
	}
	.item .prod-txt {
		font-size: 14px;
	}
	.item .prod-btn a {
		padding: 6px 10px;
		font-size: 14px;
	}
	.product-02 .item {
		margin-bottom: 35px;
		width: 100%;
	}
	.product-02 .item:last-child {
		margin-bottom: 0;
	}
}


/* img-full */
.img-full {
	margin-bottom: 80px;	
}
@media only screen and (max-width: 767px) { 
	.img-full {
		margin-bottom: 40px;
	}
}

/*-----------------------------
slider
-----------------------------*/
.slick-slide:focus {
	outline: none;
}

.slider {
	margin-bottom: 45px;
}
.slider-container {
	max-width: 640px;
	margin: 0 auto;
}
.slider-list {
	position: relative;
	margin-bottom: 16px;
}
.slider-list .slick-arrow {
	position: absolute;
	top: 46%;
	transform: translateY(-50%);
	cursor: pointer;
	z-index: 5;
}
.slider-list .btn_prev {
	left: 20px;
}
.slider-list .btn_next {
	right: 20px;
}
.slider-thumbs {
	display: flex;
	margin: 0 -2.5px;
}
.slider-thumbs li {
	padding:  0 2.5px;
}
.slider-thumbs li.active {
	opacity: 0.5;
}
@media only screen and (max-width: 767px) { 
	.slider-list .btn_next {
		right: 15px;
	}
	.slider-list .btn_prev {
		left: 15px;
	}
}

/*-----------------------------
img-group
-----------------------------*/
.img-group {
	margin-bottom: 70px;
}
.img-group .img-container {
	display: flex;
	flex-wrap: wrap;
	overflow: hidden;
}
.img-group.items-02 .img-container {
	margin: 0 -30px;
}
.img-group.items-02 .img-item {
	margin-bottom: 20px;
	padding: 0 30px;
	width: 50%;
}
.img-group.items-03 .img-container {
	margin: 0 -26.5px;
}
.img-group.items-03 .img-item{
	margin-bottom: 20px;
	padding: 0 26.5px;
	width: 33.33%;
}
.img-group.items-04 .img-container {
	margin: 0 -16px;
}
.img-group.items-04 .img-item{
	margin-bottom: 20px;
	padding: 0 16px;
	width: 25%;
}
@media only screen and (max-width: 767px) {
	.img-group {
		margin-bottom: 0;
	}
	.img-group img {
		width: 100%;
	}
	.img-group.items-02 .img-container,
	.img-group.items-03 .img-container {
		margin: 0;
	}
	.img-group.items-02 .img-item,
	.img-group.items-03 .img-item{
		padding: 0;
		margin-bottom: 30px;
		width: 100%;
	}
	.img-group.items-04 .img-container {
		margin: 0 -7px;
	}
	.img-group.items-04 .img-item {
		padding: 0 7px;
		width: 50%;
	}
	.img-group.items-04 .img-item:nth-last-child(2),
	.img-group.items-04 .img-item:last-child {
		margin-bottom: 0;
	}
}

/*-----------------------------
info-block
-----------------------------*/

.info-block01 {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 100px;
}

.info-block01 .img-holder{
	width: 46.88%;
}
.info-block01 .info-details {
	width: 53.12%;
}

.info-block01.right-img .img-holder{ 
	order: 2;
}
.info-block01.right-img .info-details {
	order: 1;
	padding: 0 30px 0 0;
}

.info-block01.left-img .img-holder{ 
	order: 1;
}
.info-block01.left-img .info-details {
	order: 2;
	padding: 0 0 0 30px;
}


/* info-block02 */
.info-block02 {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 100px;
}

.info-block02 .img-holder{
	width: 29.69%;
}
.info-block02 .info-details {
	width: 70.31%;
}

.info-block02.right-img .img-holder{ 
	order: 2;
}
.info-block02.right-img .info-details {
	order: 1;
	padding: 0 30px 0 0;
}

.info-block02.left-img .img-holder{ 
	order: 1;
}
.info-block02.left-img .info-details {
	order: 2;
	padding: 0 0 0 30px;
}

@media only screen and (max-width: 767px) { 
	.info-block01 {
		margin-bottom: 35px;
	}
	.info-block01 img {
		width: 100%;
	}
	.info-block01 .img-holder,
	.info-block01 .info-details {
		width: 100%;
	}
	.info-block01.right-img .info-details,
	.info-block01.left-img .info-details {
		padding: 0;
	}
	/* info-block02 */
	.info-block02 {
		margin-bottom: 35px;
	}
	.info-block02 img {
		width: 100%;
	}
	.info-block02 .img-holder,
	.info-block02 .info-details {
		width: 100%;
	}
	.info-block02.right-img .info-details,
	.info-block02.left-img .info-details {
		padding: 0;
	}
}

/*-----------------------------
profile
-----------------------------*/

.profile-block {
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 40px;
	padding: 50px;
	box-shadow: 0px 0px 10px 0px rgba(152, 152, 152, 0.31);
}
.profile-block .img-holder {
	width: 33.14%;
}
.profile-block .profile-details {
	padding-left: 40px;
	width: 66.86%;
}
#contents p.profile-ttl {
	position: relative;
	padding-bottom: 26px;
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 16px;
}
#contents p.profile-ttl:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 26px;
	height: 4px;
	background: #005ab4;
}
#contents p.profile-txt {
	margin-bottom: 20px;
	font-size: 21px;
	font-weight: bold;
}

.table-list {
	width: 100%;
}
.table-list td,
.table-list th {
	vertical-align: top;
	position: relative;
}
.table-list th:after{
	content: ":";
	position: absolute;
	right: 0;
}
.table-list th {
	padding: 0 0 8px;
	width: 22%;
}
.table-list td {
	padding: 0 20px;
}
.target-blank:after {
	content: url(/common/images/ico_pop_04.png);
	display: inline-block;
	vertical-align: middle;
	padding: 0 0 0 4px;
}

@media only screen and (max-width: 767px) {
	.profile-block {
		margin-bottom: 8px;
		padding: 24px 20px;
	}
	.profile-block .img-holder {
		display: none;
	}
	.profile-block .profile-details {
		width: 100%;
		padding: 0;
	}
	#contents p.profile-ttl {
		margin-bottom: 15px;
		padding-bottom: 16px;
	}
	#contents p.profile-ttl:after {
		width: 20px;
		height: 2px;
	}
	#contents p.profile-txt {
		font-size: 19px;
	}
	.table-list {
		font-size: 14px;
	}
	.table-list th {
		width: 30%;
	}
}

/*-----------------------------
Video
-----------------------------*/
.video-block {
	margin-bottom: 90px;
}
.video-block .vid-ttl {
	margin-bottom: 16px;
	text-align: center;
	font-size: 22px;
	font-weight: bold;
}
.video {
	max-width: 720px;
	margin: 0 auto;
}
.video .video-container {
	position: relative;
	margin: 0 auto;
	padding-bottom: 66.67%; /* 4:3 ratio */
	height: 0;
}
.video-container iframe{
	position: absolute;
	left: 0;
	top: 0;
	height: 100%;
	width: 100%;
	border: 0;
}

.video-block.column2 .video_list{
	float:left;
    width: 46%;
    margin-right: 8%;
}

.video-block.column2 .video_list:last-child{
margin-right:0;
}

@media only screen and (max-width: 767px) { 
.video-block .vid-ttl {
	font-size: 16px;
}
.video-block {
	margin-bottom: 45px;
}
.video .video-container {
	position: relative;
	margin: 0 auto;
	padding-bottom: 56.25%; /* 16:9 ratio */
	height: 0;
}

.video-block.column2 .video_list{
	float:none;
	width: auto;
	margin: 0 0 30px 0;
}

.video-block.column2 .video_list:last-child{
	margin:0;
}

}

/*-----------------------------
txt-links
-----------------------------*/
.txt-link01, 
.txt-link02{
	padding-left: 1.5em;
  	text-indent: -1.5em
}
.txt-link01{
	margin-bottom: 35px;
}
.txt-link02{
	margin-bottom: 80px;
}
.txt-link01 a,
.txt-link02 a {
	display: inline;
	position: relative;
	padding-left: 1.5em;
	background: url(/common/images/ico_link_01.gif) left center no-repeat;
	background-size: 15px;
}
.txt-link02 a:after {
	content: url(/common/images/ico_pop_04.png);
	vertical-align: middle;
	padding: 0 0 0 4px;
}

@media only screen and (max-width: 767px) { 
	.txt-link01, 
	.txt-link02 {
		margin-bottom: 30px;
		font-size: 14px;
	}
}

/*-----------------------------
buttons
-----------------------------*/
.btn-01 a {
	display: block;
	padding: 20px 94px 19px;
	position: relative;
	width: 100%;
	background: #1c4297;
	color: #fff;
	font-size: 21px;
	text-align: center;
	text-decoration: none;
}
.btn-01 a:hover {
	opacity: 0.5;;
}
.btn-01 a:after {
	content: "";
	position: absolute;
	background: url(/b_solution/casestudy_c/images/ico_arrow_01.png) no-repeat;
	width: 23px;
	height: 23px;
	right: 70px;
	top: 50%;
	transform: translateY(-50%);
}
.btn-group01 {
	margin-bottom: 50px;
}
.btn-group02 {
	margin-bottom: 80px;
}
.btn-group01 .btn-01 {
	max-width: 426px;
	margin: 0 auto;
}
.btn-group02 .btn-container {
	display: flex;
	padding: 0 14px;
}
.btn-group02 .btn-01 {
	padding: 0 20px;
	width: 50%;
	margin: 0 auto;
}
.btn-03 a {
	display: block;
	padding: 20px 94px 19px;
	position: relative;
	width: 100%;
	background: #1c4297;
	color: #fff;
	font-size: 21px;
	text-align: center;
	text-decoration: none;
}
.btn-03 a:hover {
	opacity: 0.5;;
}
.btn-03 .bl_w {
	position: absolute;
	right: 70px;
	top: 50%;
	transform: translateY(-50%);
}
.btn-group01 .btn-03 {
	max-width: 426px;
	margin: 0 auto;
}

@media only screen and (max-width: 767px) { 
	.btn-group01 {
		margin-bottom: 30px;
	}
	.btn-group01 .btn-01 {
		max-width: 275px;
	}
	.btn-01 a {
		padding: 12px 50px;
		font-size: 14px;
	}
	.btn-01 a:after {
		background-size: contain;
    width: 15px;
    height: 15px;
    right: 44px;
	}
	.btn-group02 {
		margin-bottom: 30px;
	}
	.btn-group02 .btn-container {
		padding: 0;
		margin: 0 -9px;
	}
	.btn-group02 .btn-01 {
		padding: 0 9px;
	}
	.btn-group02 .btn-01 a {
		padding: 12px 15px;
	}
	.btn-group02 .btn-01 a:after{
		right: 16px;
	}
	.btn-group01 .btn-03 {
	max-width: 275px;
	}
	.btn-03 a {
		padding: 12px 50px;
		font-size: 14px;
	}
	.btn-03 .bl_w {
    right: 44px;
	}
	#contents.responsive .btn-03 img.bl_w {
 	width:15px;
 	height;15px;
	}
}


/* box-ttl */
.box-ttl {
	font-size: 26px;
	font-weight: bold;
	position: relative;
	padding-bottom: 26px;
	margin-bottom: 26px;
}
.box-ttl:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 26px;
	height: 4px;
	background: #005ab4;
}

/* pdf-block */
.pdf-block {
	margin-bottom: 100px;
	padding: 50px 40px 40px;
	box-shadow: 0px 0px 10px 0px rgba(152, 152, 152, 0.31);
}
.pdf-details {
	display: flex;
	justify-content: space-between;
}
.btn-group-pdf {
	width: 350px;
}
.dl-txt {
	padding: 0 48px;
	margin-top: 5px;
	font-size: 14px;
}
.btn-group-pdf .btn-03 {
	max-width: 350px;
}
.btn-02 a {
	display: block;
	padding: 20px 40px 19px;
	position: relative;
	width: 100%;
	background: #1c4297;
	color: #fff;
	font-size: 21px;
	text-align: center;
	text-decoration: none;
}
.btn-02 a:after {
	content: "";
	position: absolute;
	background: url(/b_solution/casestudy_c/images/ico_download.png) no-repeat;
	width: 30px;
	height: 30px;
	right: 43px;
	top: 50%;
	transform: translateY(-50%);
}
.btn-02 a:hover {
	opacity: 0.5;
}
.pdf-box {
	display: flex;
	margin-top: 50px;
	padding: 15px;
	background: none;
	border: solid 1px #ccc;
}
.pdf-box .pdf-img {
	margin: 0 26px 15px 0;
}
.pdf-box .txt-block p {
	font-size: 14px;
	line-height: 1.2;
}

@media only screen and (max-width: 767px) {
	#contents .pdf-details .box-ttl {
		padding-bottom: 16px;
    margin-bottom: 20px;
		font-size: 21px;
	}
	#contents pdf-details .box-ttl:after {
  	width: 20px;
  	height: 2px;
	}

	.pdf-block {
		padding: 20px;
		margin-bottom: 50px;
	}
	.pdf-block .pdf-details{
		flex-direction: column;
	}
	.btn-group-pdf {
		width: auto;
	}
	.btn-group-pdf .btn-02 {
		max-width: 275px;
		margin: 0 auto;
	}
	.btn-02 a{
		padding: 12px 50px;
		font-size: 14px;
	}
	.btn-02 a:after {
		width: 16px;
		height: 16px;
		background-size: contain;
	}
	.dl-txt {
		padding: 0;
		font-size: 12px;
		text-align: center;
	}
	.pdf-box {
		margin-top: 20px;
		flex-direction: column;
	}
	.pdf-box .txt-block p {
		font-size: 12px;
		line-height: 1.4;
	}
}


/*-----------------------------
tel-block
-----------------------------*/
.tel-block {
	margin-bottom: 100px;
	padding: 50px 40px;
	box-shadow: 0px 0px 10px 0px rgba(152, 152, 152, 0.31);
}
.tel-txt01 {
	margin-bottom: 20px;
	font-size: 22px;
	font-weight: bold;
}
.tel-box {
	background: #f0f1f4;
	padding: 40px;
}
.tel-box .tel-num{
	position: relative;
	padding-left: 44px;
	color: #005ab4;
	font-size: 32px;
	font-weight: bold;
	line-height: 1;
}
.tel-box .tel-num:before {
	content: "";
	position: absolute;
	background: url(/b_solution/casestudy_c/images/ico_tel.png) no-repeat;
	width: 29px;
	height: 23px;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.tel-box .tel-txt02 {
	margin-top: 20px;
}



/* tel-col 2 */
.tel-col {
	display: flex;
	flex-wrap: wrap;
}
.tel-col .tel-box {
	width: 47.73%;
	margin-right: 4.54%;
	padding: 30px;
	text-align: center;
}
.tel-col .tel-box .tel-num {
	display: inline-block;
	font-size: 26px;
}
.tel-col .tel-box .tel-txt02 {
	margin-top: 15px;
	font-size: 15px;
}
.tel-col .tel-msg {
	width: 47.73%;
}

.tel-msg a{
	display: flex;
	align-items: center;
	padding: 40px 25px;
	width: 100%;
	height: 100%;
	background: #f0f1f4;
	font-size: 26px;
	color: #005ab4;
	font-weight: bold;
	text-decoration: none;
}
.tel-msg a:hover{
	opacity: 0.5;
}
.tel-msg span{
	position: relative;
	padding-left: 48px;
	display: block;
}
.tel-msg span:before {
	content: "";
	position: absolute;
	background: url(/b_solution/casestudy_c/images/ico_msg.png) no-repeat;
	width: 30px;
	height: 21px;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.tel-msg span:after {
	content: url(/common/images/ico_pop_04.png);
	display: inline-block;
	vertical-align: top;	
	padding: 0 0 0 4px;
}

@media only screen and (max-width: 767px) {
	.tel-block {
		padding: 20px;
		margin-bottom: 50px;
	}
	#contents .tel-block .box-ttl {
		font-size: 19px;
	}
	#contents p.tel-txt01 {
		margin-bottom: 10px;
		font-size: 17px;
		line-height: 1.2;
	}
	.tel-box {
		padding: 15px;
	}
	#contents .tel-box p.tel-num {
		font-size: 21px;
		padding-left: 35px;
	}
	.tel-box .tel-txt02,
	.tel-col .tel-box .tel-txt02 {
		margin-top: 5px;
		font-size: 11px;
	}
	#contents .tel-box p.tel-num:before {
		background-size: contain;
		width: 22px;
		height: 18px;
	}
	.tel-col .tel-box {
		padding: 20px;
		margin: 0;
		width: 100%;
		order: 1;
	}
	.tel-col .txt-note {
		order: 2;
	}
	#contents .tel-col p.tel-box .tel-num {
		font-size: 21px;
	}

	.tel-col .tel-msg {
		margin-top: 20px;
		width: 100%;
		order: 3;
	}
	.tel-msg a {
		padding: 34px 20px;
	}
	.tel-msg span:before {
		background-size: contain;
    width: 22px;
    height: 16px;
	}
	.tel-msg span {
		padding-left: 34px;
		font-size: 19px;
	}
}

/*-----------------------------
trademark
-----------------------------*/

.trademark {
	margin-bottom: 80px;
}
.trade-ttl {
	position: relative;
	padding-bottom: 25px;
	margin-bottom: 24px;
	font-weight: bold;
	font-size: 16px;
}
.trade-ttl:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 20px;
	height: 2px;
	background: #005ab4;
}
@media only screen and (max-width: 767px) {
	.trademark {
		margin-bottom: 40px;
	}
	.trade-ttl {
		padding-bottom: 16px;
		margin-bottom: 15px;
		font-size: 14px;
	}
}

/* lines */
.str-line,
.dot-line {
	display: block;
	margin-bottom: 60px;
}

.str-line {
	border-bottom: 2px solid #9b9b9b;
}

.dot-line {
	border-bottom: 2px dotted #bdbdbd;
}

/*-----------------------------
sns
-----------------------------*/
.share_title {
	font-size: 30px;
	text-align: center;
	font-weight: bold;
}
.share_list {
	margin: 25px auto 0;
}
.share_list ul {
	text-align: center;
}
.share_list ul li {
	vertical-align: top;
	display: inline-block;
	position: relative;
	margin: 0 15px;
}

/* fixes */
.inline {
	display: inline-block;
}

/*-----------------------------
h1 size 追加
-----------------------------*/
#contents .headSection .innerBlock .leftArea .title.txt {
	font-size: 14px;
}

@media only screen and (max-width: 768px){
#contents .headSection .innerBlock .leftArea .title.txt {
    padding: 5px 0 0 10px !important;
    font-size: 3.6vw!important;
    line-height: 19px;
    width: 100%;
    margin-top: 10px;
}
#contents.responsive .headSection .leftArea a.Logo {
    display: inline-block;
    width: 150px;
    padding-right: 3px;
}
#contents .headSection .innerBlock{
    width: 100%;
}
#contents .headSection .leftArea{
    width: 100%;
}
}
/*-----------------------------
会社概要のリンク
-----------------------------*/
.table-list a{
word-break: break-all;
}
/*-----------------------------
PDF
-----------------------------*/
#contents #get_adobe img{
width: auto;
}

/*-----------------------------
right_slider
-----------------------------*/
.case-study.right_slider .case-img .slider .slider-thumbs{
margin:0;
display:block;
font-size:0;
}

.sliderhead{
font-size: 32px;
font-weight: bold;
}

.case-study.right_slider .case-img .slider .slider-thumbs li{
	box-sizing: border-box;
    width: 32%;
    display: inline-block;
    margin-right:2%;
    padding:0;
}

.case-study.right_slider .case-img .slider .slider-thumbs li:last-child{
    margin-right:0;
}

@media only screen and (max-width: 767px){
#contents.responsive .main-area .sliderhead {
    font-size: 21px;
}
}
/*-----------------------------
img Link
-----------------------------*/
a img:hover{
  opacity: 0.7;
}
