@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Jost:wght@100;300;400&display=swap');


/* -------------------------------------------------------------------- 
/* Text Link
-------------------------------------------------------------------- */
.pageWrap a:link {
	color: #2F2F2F;
	text-decoration: none;
	transition-duration: 0.3s;
}

.pageWrap a:visited {
	color: #2F2F2F;
	text-decoration: none;
}

.pageWrap a:active {
	color: #2F2F2F;
	text-decoration: none;
}

@media (hover: hover) and (pointer: fine) {
	.pageWrap a:hover {
		color: #2F2F2F;
		text-decoration: none;
		transition-duration: 0.3s;
	}
}

/* -------------------------------------------------------------------- 
/* Image Rollover (Alpha)
-------------------------------------------------------------------- */
@media (hover: hover) and (pointer: fine) {
	.pageWrapa:hover img.hover {
		filter: alpha(opacity=70);
		-moz-opacity: 0.7;
		opacity: 0.7;
		transition-duration: 0.3s;
	}

	.pageWrap a.hover {
		opacity: 1;
		transition-duration: 0.3s;
	}

	.pageWrap .hover:hover {
		filter: alpha(opacity=70);
		-moz-opacity: 0.7;
		opacity: 0.7;
		transition-duration: 0.3s;
	}
}

/* -------------------------------------------------------------------- 
/* リンク無効
-------------------------------------------------------------------- */
a.disabled {
	pointer-events: none;
}

/* -------------------------------------------------------------------- 
/* Font Weight
-------------------------------------------------------------------- */
.bold {
	font-weight: bold !important;
}

.normal {
	font-weight: normal !important;
}

/*--------------------*/
.boxShadow01 {
	-webkit-box-shadow: 5px 5px 5px 5px rgba(0, 0, 0, 0.1);
	-moz-box-shadow: 5px 5px 5px 5px rgba(0, 0, 0, 0.1);
	box-shadow: 5px 5px 5px 5px rgba(0, 0, 0, 0.1);
}


/*------------------------
*	パンくずプラグイン用「bread_crumb」
------------------------*/
.bread_crumb {
	text-align: left;
	font-size: 14px;
	line-height: 1.8em;
	padding: 10px 0px 50px;
	margin: 0;
}

.bread_crumb li {
	display: inline-block;
	color: #2B2A2A;
	margin-left: 0;
}

.bread_crumb li:after {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 3px 0 3px 5px;
	border-color: transparent transparent transparent #2b2a2a;
	padding: 0 10px;
	display: inline-block;
	position: relative;
	top: -3px;
	left: 14px;
}

.bread_crumb li:last-child:after {
	content: none;
}

.bread_crumb li span {
	color: #2B2A2A;
}

.bread_crumb li a:link {
	color: #2B2A2A;
	text-decoration: none;
}

.bread_crumb li a:visited {
	color: #2B2A2A;
	text-decoration: none;
}

.bread_crumb li a:hover {
	color: #2B2A2A;
	opacity: .50;
}

.bread_crumb li a:active {
	color: #2B2A2A;
	text-decoration: none;
}

/*-----------*/
/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.bread_crumb {
		text-align: left;
		font-size: 14px;
		line-height: 1.5em;
		padding: 10px 20px 30px;
	}

	.contIn .bread_crumb {
		padding: 10px 0 30px;
	}

	/*-----------*/
}


/*------------------------
*	パンくずプラグイン用「Breadcrumb NavXT」
------------------------*/
.breadcrumbs {
	text-align: left;
	font-size: 14px;
	line-height: 1.8em;
	padding: 10px 0px 50px;
	word-break: break-all;
}

.breadcrumbs>span.arrow {
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 3px 0 3px 5px;
	border-color: transparent transparent transparent #2b2a2a;
	padding: 0 10px;
	display: inline-block;
	position: relative;
	top: -3px;
	left: 11px;
}

.breadcrumbs>span {
	display: inline-block;
	color: #333333;
}

.breadcrumbs a {
	color: #092E57;
}

.breadcrumbs a:link {
	color: #092E57;
	text-decoration: none;
}

.breadcrumbs a:visited {
	color: #092E57;
	text-decoration: none;
}

.breadcrumbs a:hover {
	color: #092E57;
	text-decoration: underline;
}

.breadcrumbs a:active {
	color: #092E57;
	text-decoration: none;
}

.breadcrumbs span.space {
	padding: 0px 10px;
}

/*-----------*/
/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.breadcrumbs {
		text-align: left;
		font-size: 14px;
		line-height: 1.8em;
		padding: 20px 20px 30px;
	}

	/*-----------*/
}

/* ========================================================================
	下層ページ用パーツ
======================================================================== */
/*--------------*/
.pageWrap .anc {
	position: relative;
}

.pageWrap .img_wrap {
	margin: 0 auto;
	overflow: hidden;
	cursor: pointer;
}

.pageWrap .img_wrap img {
	width: 100%;
	transition-duration: 0.5s;
}

.pageWrap .img_wrap:hover img {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
	transition-duration: 0.5s;
}

.pageWrap .overFlowHid01 {
	overflow: hidden;
}

/*-----------------------*/
.pageWrap .pc {
	display: block !important;
}

.pageWrap .sp {
	display: none !important;
}

.pageWrap .contIn {
	width: 1060px;
	margin: 0px auto;
	position: relative;
}

.pageWrap .contIn .contInWrap {
	padding: 0 60px;
}

.pageWrap .bgWh #bread-crumb {
	padding: 15px 0;
}

.pageWrap .boxShadow01 {
	-webkit-box-shadow: 0px 3px 8px 8px rgb(0 0 0 / 10%);
	-moz-box-shadow: 0px 3px 8px 8px rgba(0, 0, 0, 0.1);
	box-shadow: 0px 3px 8px 8px rgba(0, 0, 0, 0.1);
}

.pageWrap .boxShadow02 {
	-webkit-box-shadow: 8px 8px 10px 0px rgb(0 0 0 / 10%);
	-moz-box-shadow: 8px 8px 10px 0px rgba(0, 0, 0, 0.1);
	box-shadow: 8px 8px 10px 0px rgba(0, 0, 0, 0.1);
}

.pageWrap .boxShadow03 {
	-webkit-box-shadow: 0px 0px 10px 10px rgb(0 0 0 / 1%);
	-moz-box-shadow: 0px 0px 10px 10px rgba(0, 0, 0, 0.01);
	box-shadow: 0px 0px 10px 10px rgba(0, 0, 0, 0.01);
}

.pageWrap .boxShadow04 {
	-webkit-box-shadow: 5px 5px 20px 0px rgb(0 0 0 / 10%);
	-moz-box-shadow: 5px 5px 20px 0px rgba(0, 0, 0, 0.1);
	box-shadow: 5px 5px 20px 0px rgba(0, 0, 0, 0.1);
}

.pageWrap .boxShadow05 {
	-webkit-box-shadow: 1px 1px 18px 3px rgb(0 0 0 / 5%);
	-moz-box-shadow: 1px 1px 18px 3px rgba(0, 0, 0, 0.05);
	box-shadow: 1px 1px 18px 3px rgba(0, 0, 0, 0.05);
}


/*@media all and (min-width: 0px) and (max-width: 768px) */
@media all and (min-width: 0px) and (max-width: 768px) {
	.pageWrap {}

	.pageWrap .contIn {
		width: auto;
		padding: 0 20px;
	}

	.pageWrap .contIn .contInWrap {
		padding: 0;
	}

	.pageWrap .pc {
		display: none !important;
	}

	.pageWrap .sp {
		display: block !important;
	}

	.pageWrap .ancIn {
		position: absolute;
		top: -80px;
	}
}

/*------------------------
*	ワードプレスページャ
------------------------*/
.pager01 {
	margin-top: 30px;
	font-family: 'Jost', sans-serif;
}

.page-numbers {
	display: -webkit-inline-box;
	display: -ms-inline-flexbox;
	display: inline-flex;
}

.page-numbers li {
	display: table;
	width: 35px;
	margin-right: 10px;
}

.page-numbers li:last-child {
	margin-right: 0px;
}

.pager01 .page-numbers li a,
.pager01 .page-numbers li span {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	height: auto;
	background: none;
	color: #334A85;
	font-size: 21px;
	line-height: 1.0em;
	font-weight: 500;
	text-decoration: none;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.page-numbers li a:hover {
	color: #B8D8CE;
}

.page-numbers li span.current {
	color: #B8D8CE;
}

.page-numbers li a.prev,
.page-numbers li a.next {
	color: #334A85;
}

.page-numbers li a.prev:hover,
.page-numbers li a.next:hover {
	color: #B8D8CE;
}

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

	/* ワードプレスページャ */
	.page-numbers {
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
	}

	.page-numbers li {
		display: table;
		width: 30px;
		margin-right: 10px;
	}

	.page-numbers li:last-child {
		margin-right: 0px;
	}

	.pager01 .page-numbers li a,
	.pager01 .page-numbers li span {
		font-size: 16px;
		line-height: 1.0em;
	}

	/*-----------*/
}

/*------------------------
*	ワードプレスページャ 2
------------------------*/
.pager02 {
	margin-top: 30px;
	line-height: 1;
}

.pager02 .page-numbers li {
	display: table;
	width: 45px;
	margin-right: 18px;
}

.pager02 .page-numbers li:last-child {
	margin-right: 0px;
}

.pager02 .page-numbers li a,
.pager02 .page-numbers li span {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	height: 45px;
	background-color: #EDEDED;
	color: #334A85;
	font-size: 16px;
	line-height: 1.0em;
	font-weight: 500;
	text-decoration: none;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.pager02 .page-numbers li a:hover {
	background-color: #334A85;
	color: #fff;
}

.pager02 .page-numbers li span.current {
	background-color: #334A85;
	color: #fff;
}

.pager02 .page-numbers li a.prev,
.pager02 .page-numbers li a.next {
	background-color: #EDEDED;
}

.pager02 .page-numbers li a.prev:hover,
.pager02 .page-numbers li a.next:hover {
	background-color: #334A85;
}

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

	/* ワードプレスページャ */
	.pager02 .page-numbers {
		display: -webkit-inline-box;
		display: -ms-inline-flexbox;
		display: inline-flex;
	}

	.pager02 .page-numbers li {
		display: table;
		width: 35px;
		margin-right: 10px;
	}

	.pager02 .page-numbers li:last-child {
		margin-right: 0px;
	}

	.pager02 .page-numbers li a,
	.pager02 .page-numbers li span {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		height: 35px;
		background-color: #EDEDED;
		color: #334A85;
		font-size: 16px;
		line-height: 1.0em;
		font-weight: 500;
		text-decoration: none;
	}

	.pager02 .page-numbers li a:hover {
		background-color: #334A85;
		color: #fff;
	}

	.pager02 .page-numbers li span.current {
		background-color: #334A85;
		color: #fff;
	}

	.pager02 .page-numbers li a.prev,
	.pager02 .page-numbers li a.next {
		background-color: #EDEDED;
	}

	.pager02 .page-numbers li a.prev:hover,
	.pager02 .page-numbers li a.next:hover {
		background-color: #334A85;
	}

	/*-----------*/
}


/*-------------------------
  ブログカード
-------------------------*/
a.tmt-blog-card {
	border: 1px solid #e1e1e1;
	box-shadow: 2px 2px #ddd;
	display: block;
	padding: 30px;
	margin: 20px auto;
	position: relative;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	width: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

a.tmt-blog-card::before {
	background-color: #505050;
	border: solid 1px #939393;
	color: #FFF;
	content: '合わせて読みたい';
	font-size: 12px;
	display: block;
	padding: 4px 20px;
	position: absolute;
	top: -15px;
	left: 25px;
}

a.tmt-blog-card::after {
	border: solid 1px #939393;
	color: #939393;
	content: '続きを読む';
	font-size: 14px;
	display: block;
	padding: 5px 20px;
	position: absolute;
	bottom: 10px;
	right: 20px;
}

a.tmt-blog-card:hover {
	box-shadow: none;
	opacity: .8;
}

.tmt-blog-card-box {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
}

.tmt-blog-card-title {
	font-size: 18px;
	font-weight: 600;
	color: #428bca;
	padding-bottom: 5px;
}

.tmt-blog-card-thumbnail {
	-webkit-box-flex: 1;
	-ms-flex: 1;
	flex: 1;
	margin-right: 15px;
	padding-top: 5px;
}

.tmt-blog-card-thumbnail img {
	width: 100%;
}

.tmt-blog-card-content {
	flex: 2.5;
}

.tmt-blog-card-excerpt {
	color: #a4a4a4;
	font-size: 13px;
	padding-bottom: 20px;
}

.tmt-blog-card-site {
	color: #b2b2b2;
	font-size: 11px;
	padding-left: 5px;
}

.tmt-blog-card-site img {
	margin-right: 5px;
	vertical-align: bottom;
	width: 20px;
}

@media (max-width: 980px) {
	.tmt-blog-card-excerpt {
		border: none;
	}
}

@media (max-width: 768px) {
	a.tmt-blog-card {
		padding: 20px 10px 40px 10px;
	}

	a.tmt-blog-card::before {
		font-size: 11px;
		padding: 2.5px 8px;
		top: -15px;
		left: 10px;
	}

	a.tmt-blog-card::after {
		font-size: 12px;
		padding: 2px 13px;
		right: 10px;
	}

	.tmt-blog-card-thumbnail {
		margin-right: 10px;
		padding-top: 10px;
	}

	.tmt-blog-card-title {
		font-size: 14px;
	}

	.tmt-blog-card-excerpt {
		display: none;
	}
}

/*-------------------------------------------
*	2カラム（メイン、サイドバー）
-------------------------------------------*/
.contentColumn2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-between;
	padding: 60px 0;
}

.main01 {
	width: 808px;
}

.side01 {
	width: 231px;
	margin: 0 0 0 30px;
}

.sideBox01 {
	border-top: 4px solid #334A85;
	padding: 20px 0 60px;
}

.side01 .sideBox01:last-child {
	padding: 20px 0 0;
}

.sideBox01 .sideTtl01 {
	font-size: 16px;
	font-weight: bold;
	border-bottom: 1px solid #334A85;
	padding: 0 0 20px;
	margin: 0 0 20px;
	text-align: left;
}

.sideBox01 .sideTtl01.alc {
	text-align: center;
}

.sideBox01 .sideTxt01 {}

.sideBox01 .sideTxt01 ul li {
	position: relative;
	text-align: left;
	padding: 0 0 0 16px;
	margin: 0 0 20px;
	font-size: 16px;
}

.sideBox01 .sideTxt01 ul li:last-child {
	margin: 0 0;
}

.sideBox01 .sideTxt01 ul li:before {
	position: absolute;
	top: 50%;
	bottom: 0;
	left: 0;
	margin: -4px auto 0;
	content: "";
	vertical-align: middle;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 7px;
	border-color: transparent transparent transparent #334A85;
}

.sideBox01 .sideTxt01 ul li .children {
	padding: 10px 0 0;
}

.sideBox01 .sideTxt01 ul li a {
	position: relative;
}

.sideBox01 .sideTxt01 ul li a:hover {
	text-decoration: underline;
}

.sideBox01 .sideTxt01 a.sideIco01:after {
	content: "";
	background: url(/common/img/side_ico01.png)no-repeat;
	background-size: 100%;
	position: relative;
	width: 13px;
	height: 13px;
	right: -15px;
	margin-top: -3px;
	display: inline-block;
}

.sideTxtBox01 {
	padding: 0 15px;
	margin: 0 0 20px;
}

.sideTxtBox01:hover {
	opacity: 0.7;
}

.sideTxtBox01:last-child {
	margin: 0;
}

.sideTxtBox01 p {
	font-size: 14px;
	text-align: left;
	color: #334A85;
	line-height: 1.4em;
	margin: 10px 0 0;
}

.sideTxtBox01 .ico {
	position: relative;
	padding-left: 16px;
}

.sideTxtBox01 .ico:before {
	position: absolute;
	top: 4px;
	bottom: 0;
	left: 0;
	content: "";
	vertical-align: middle;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 9px;
	border-color: transparent transparent transparent #334A85;
}

/*-----------*/
/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.contentColumn2 {
		display: block;
		padding: 30px 20px;
	}

	.contIn .contentColumn2 {
		padding: 30px 0;
	}

	.main01 {
		width: 100%;
	}

	.side01 {
		width: 100%;
		padding: 40px 0 0;
		margin: 0;
	}

	.sideBox01 {
		padding: 20px 0 30px;
	}

	.side01 .sideBox01:last-child {
		padding: 20px 0 0;
	}

	.sideTxtBox01 img {
		width: 100%;
		display: block;
		margin: 0 auto;
	}

	.sideTxtBox01 .ico:before {
		top: 5px;
	}

	/*-----------*/
}

/*-------------------------------------------
*	デフォルトブロック
-------------------------------------------*/
.defaultBlock {
	padding: 70px 0px 70px 0px;
	position: relative;
	overflow: hidden;
}

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

	/*--------------------------------*/
	.defaultBlock {
		padding: 30px 20px 40px;
	}

	.defaultBlock .contIn {
		/*padding: 0;*/
	}
}

/* =================================
	メインビジュアル ※サービスTOP用
================================== */
.pageWrap #mainvisualPage {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	background: rgb(222, 255, 245);
	background: -moz-linear-gradient(156deg, rgba(222, 255, 245, 1) 0%, rgb(155, 201, 238) 50%, rgb(155, 201, 238, 1) 100%);
	background: -webkit-linear-gradient(156deg, rgba(222, 255, 245, 1) 0%, rgb(155, 201, 238) 50%, rgb(155, 201, 238, 1) 100%);
	background: linear-gradient(156deg, rgba(222, 255, 245, 1) 0%, rgb(155, 201, 238) 50%, rgb(155, 201, 238, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#defff5", endColorstr="#99edd3", GradientType=1);
	padding-top: 90px;;
}

.pageWrap #mainvisualPageInner {
	position: relative;
	width: auto;
	max-width: 1088px;
	margin: auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	min-height: 352px;
	padding: 30px 0;
}

.pageWrap #mainvisualPageInner .text_area {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.pageWrap #mainvisualPageInner .text_area .title {
	display: block;
	font-size: 31px;
	font-weight: bold;
	text-align: left;
	line-height: 1.8em;
}

.pageWrap #mainvisualPageInner .text_area .title span {
	color: #334A85;
}

.pageWrap #mainvisualPageInner .text_area .sub_title {
	display: block;
	font-size: 20px;
	font-weight: bold;
	text-align: left;
	margin: 0 0 10px;
}

.pageWrap #mainvisualPageInner .text_area .txt_box {
	background: #FFB100;
	padding: 20px 30px;
	font-size: 18px;
	font-weight: bold;
	margin: 30px 0 0;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	line-height: 1.8em;
	width: 499px;
	text-align: center;
}

.pageWrap #mainvisualPageInner .text_area .txt_box .txt {
	margin: 0 0 10px;
}

.pageWrap #mainvisualPageInner .text_area .txt_box .btn {
	background: #2B2A2A;
	padding: 5px 28px;
	color: #fff;
	font-size: 16px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	line-height: 1.8em;
	text-decoration: none;
}

.pageWrap #mainvisualPageInner .text_area .txt_box .btn:hover {
	opacity: 0.75;
}

.pageWrap #mainvisualPageInner .text_area .img_box {
	position: relative;
	left: 50px;
}

/*---2カラムボタン---*/
#mainvisualPageInner .detailMainBtnBox01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

#mainvisualPageInner .detailMainBtnBox01>.detailMainBtnBox01In {
	margin: 10px 10px 0 0;
}

#mainvisualPageInner .detailMainBtnBox01>.detailMainBtnBox01In a {
	background: #2B2A2A;
	padding: 0 20px;
	color: #fff;
	font-size: 16px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	line-height: 1.8em;
	text-decoration: none;
	width: 180px;
	min-height: 32px;
	display: block;
	margin: 0 auto;
	line-height: 32px;
	text-align: center;
	position: relative;
	z-index: 1;
	transition: .3s;
	overflow: hidden;
}

#mainvisualPageInner .detailMainBtnBox01>.detailMainBtnBox01In a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #9a9a9a;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

#mainvisualPageInner .detailMainBtnBox01>.detailMainBtnBox01In a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/*ボタンの色*/
/*オレンジ*/
#mainvisualPageInner .detailMainBtnBox01>.detailMainBtnBox01In a.btnOr {
	background: #FFB100;
	color: #2B2A2A;
}

#mainvisualPageInner .detailMainBtnBox01>.detailMainBtnBox01In a.btnOr:hover {
	color: #FFB100;
}

#mainvisualPageInner .detailMainBtnBox01>.detailMainBtnBox01In a.btnOr:hover::before {
	background: #fff;
}

/*@media all and (min-width: 0px) and (max-width: 900px) */
@media all and (min-width: 0px) and (max-width: 900px) {
	.pageWrap #mainvisualPageInner .text_area .title {
		font-size: 24px;
	}
}

/*@media all and (min-width: 0px) and (max-width: 768px) */
@media all and (min-width: 0px) and (max-width: 768px) {
	.pageWrap #mainvisualPage {
		width: 100%;
	}

	.pageWrap #mainvisualPageInner {
		height: auto;
		padding: 20px 20px;
		display: block;
		margin: 0 auto;
		width: 100%;
	}

	.pageWrap #mainvisualPageInner .text_area {
		display: block;
	}

	.pageWrap #mainvisualPageInner .text_area .title_box {
		margin: 0 0 10px;
		font-size: 14px;
	}

	.pageWrap #mainvisualPageInner .text_area .title {
		font-size: 18px;
	}

	.pageWrap #mainvisualPageInner .text_area .sub_title {
		font-size: 14px;
	}

	.pageWrap #mainvisualPageInner .text_area .txt_box {
		padding: 10px 20px;
		font-size: 16px;
		font-weight: bold;
		margin: 20px 0 0;
		line-height: 1.8em;
		width: auto;
	}

	.pageWrap #mainvisualPageInner .text_area .txt_box .txt {
		margin: 0 0 10px;
	}

	.pageWrap #mainvisualPageInner .text_area .txt_box .btn {
		padding: 5px 10px;
		color: #fff;
		font-size: 16px;
		line-height: 1.8em;
	}

	.pageWrap #mainvisualPageInner .text_area .img_box {
		position: relative;
		left: 0;
	}

	.pageWrap #mainvisualPageInner .text_area .img_box img {
		margin: 0 auto;
		display: block;
	}

	/*------画像付き2カラムあり-----*/
	#mainvisualPageInner .detailMainBtnBox01 {
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
	}

	#mainvisualPageInner .detailMainFlexBox {
		display: block;
		padding: 5px 0 10px;
	}

	#mainvisualPageInner .detailMainFlexBoxTxt {
		width: 100%;
	}

	#mainvisualPageInner .detailMainFlexTtl {
		font-size: 16px;
		font-weight: bold;
		line-height: 1.8em;
		padding: 0 0 10px;
	}

	#mainvisualPageInner .detailMainFlexTtl span {
		font-size: 14px;
		font-weight: bold;
		line-height: 1.8em;
		border: 1px solid;
		padding: 3px 15px;
		margin: 0 0 5px 0;
		display: inline-block;
	}

	#mainvisualPageInner .detailMainFlexTxt01 {
		font-size: 18px;
		font-weight: bold;
		line-height: 1.8em;
	}

	#mainvisualPageInner .detailMainFlexBoxImg {
		width: 264px;
		height: 148px;
		margin: 10px auto 0
	}

	#mainvisualPageInner .detailMainFlexBoxImg img {
		width: auto;
	}

	/*-----------*/
}

/* =================================
	メインビジュアル2 ※サービスTOPリニューアル用
================================== */
.pageWrap #mainvisualPage2 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	background: #d9e1f5;
    padding-top: 60px;
}

.pageWrap #mainvisualPage2Inner {
	position: relative;
	width: auto;
	max-width: 1160px;
	margin: auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	padding: 0;
}

.pageWrap #mainvisualPage2Inner .text_area {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	justify-content: space-between;
	min-height: 352px;
	width: 100%;
}

.pageWrap #mainvisualPage2Inner .text_area .title_box {
	width: 540px;
}

.pageWrap #mainvisualPage2Inner .text_area .title {
	display: block;
	font-size: 45px;
	font-weight: bold;
	text-align: left;
	line-height: 1.5em;
	white-space: nowrap;
}

.pageWrap #mainvisualPage2Inner .text_area .title span {
	color: #FF301B;
	font-size: 60px;
}

.pageWrap #mainvisualPage2Inner .text_area .sub_title {
	display: table;
	text-align: left;
	margin: 0 0 20px;
}

.pageWrap #mainvisualPage2Inner .text_area .sub_title span {
	display: table-cell;
	font-size: 16px;
	font-weight: bold;
	text-align: left;
	vertical-align: middle;
}

.pageWrap #mainvisualPage2Inner .text_area .sub_title span.txt {
	white-space: nowrap;
}

.pageWrap #mainvisualPage2Inner .text_area .sub_title span.img {
	padding: 0;
	padding-right: 25px;
}

.pageWrap #mainvisualPage2Inner .text_area .txt_box {
	font-size: 32px;
	font-weight: bold;
	margin: 20px 0 20px;
	text-align: left;
	white-space: nowrap;
}

.pageWrap #mainvisualPage2Inner .text_area .txt_box.fs29 {
	font-size: 29px;
}

.pageWrap #mainvisualPage2Inner .text_area .txt_box .txt {
	margin: 0 0 10px;
}

.pageWrap #mainvisualPage2Inner .text_area .txt_box .btn {
	background: #2B2A2A;
	padding: 5px 28px;
	color: #fff;
	font-size: 16px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	line-height: 1.8em;
	text-decoration: none;
}

.pageWrap #mainvisualPage2Inner .text_area .txt_box .btn:hover {
	opacity: 0.75;
}

.pageWrap #mainvisualPage2Inner .text_area .txt_box_img img {
	width: 100%;
}

/** アイコン+文章（角丸白背景） **/
.pageWrap #mainvisualPage2Inner .text_area .txt_box_img2 {
	width: auto;
	background: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	padding: 10px 25px;
	margin-bottom: 0;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	margin-top: 30px;
}

.pageWrap #mainvisualPage2Inner .text_area .txt_box_img2 .txt {
	font-size: 20px;
	font-weight: bold;
	margin: 0 0;
	text-align: left;
	padding-left: 20px;
}

.pageWrap #mainvisualPage2Inner .text_area .txt_box_img2 .img {
	display: contents;
}

.pageWrap #mainvisualPage2Inner .text_area .txt_box_img2 img {
	width: auto;
}

.pageWrap #mainvisualPage2Inner .text_area .img_box.imgVb {
	margin: auto 0 0;
}

.pageWrap #mainvisualPage2Inner .text_area .img_box {
	position: relative;
	width: auto;
}

.pageWrap #mainvisualPage2Inner .text_area .img_box .imgBlock01 {
	display: block;
	position: relative;
	margin: 36px 0 20px;
}

.pageWrap #mainvisualPage2Inner .text_area .img_box .imgBlock01 p {
	font-size: 10px;
	text-align: right;
	padding-right: 56px;
}

/*---2カラムボタン---*/
.pageWrap #mainvisualPage2Inner .btnWrap01 .btnWrapIn,
.pageWrap #mainvisualPage2Inner .btnWrap01 .contIn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 80px 0;
}

.pageWrap #mainvisualPage2Inner .btnWrap01 .btnWrapIn {
	padding: 30px 0;
}

.pageWrap #mainvisualPage2Inner .mvBtn01,
.pageWrap #mainvisualPage2Inner .mvBtn02,
.page-id-8 .mvBtn01 {
	display: table;
	width: 50%;
}

.pageWrap #mainvisualPage2Inner .mvBtn01 {
	padding-right: 6px;
}

.pageWrap #mainvisualPage2Inner .mvBtn02 {
	padding-left: 6px;
}

.pageWrap #mainvisualPage2Inner .btnWrap01 a,
.page-id-8 .btnWrap01 a {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	box-sizing: border-box;
	font-size: 16px;
	height: 65px;
	border: 1px solid #FFB100;
	background-color: #FFB100;
	color: #2B2A2A;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;

	position: relative;
	z-index: 1;
}

.pageWrap #mainvisualPage2Inner .btnWrap01 a:hover,
.page-id-8 .btnWrap01 a:hover {
	color: #FFB100;
}

.pageWrap #mainvisualPage2Inner .btnWrap01 a::before,
.page-id-8 .btnWrap01 a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #fff;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.pageWrap #mainvisualPage2Inner .btnWrap01 a:hover::before,
.page-id-8 .btnWrap01 a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

.pageWrap #mainvisualPage2Inner .mvBtn02 a {
	border: 1px solid #334A85;
	background-color: #334A85;
	color: #ffffff;
}

.pageWrap #mainvisualPage2Inner .mvBtn02 a:hover {
	color: #334A85;
}

.pageWrap #mainvisualPage2Inner .mvBtn02 a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #fff;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.pageWrap #mainvisualPage2Inner .mvBtn02 a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

.pageWrap #mainvisualPage2Inner p.ico,
.page-id-8 p.ico {
	display: inline-block;
	font-size: 16px;
	line-height: 1.2em;
	font-weight: 500;
	background-image: url(../img/ico/download_ico.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 23px auto;
	padding-left: 30px;
	padding-top: 5px;
	padding-bottom: 5px;
}

.pageWrap #mainvisualPage2Inner .btnWrap01 a .downloadIco,
.page-id-8 .btnWrap01 a .downloadIco {
	background-image: url(../img/ico/download_ico2.png);
	background-size: 23px auto;
	background-repeat: no-repeat;
	padding-left: 30px;
}

.pageWrap #mainvisualPage2Inner .btnWrap01 a:hover .downloadIco,
.page-id-8 .btnWrap01 a:hover .downloadIco {
	background-image: url(../img/ico/download_ico2_on.png);
}

.pageWrap #mainvisualPage2Inner .btnWrap01 a .contactIco {
	background-image: url(../img/ico/contact_ico.png);
	background-size: 20px auto;
	padding-left: 30px;
}

.pageWrap #mainvisualPage2Inner .btnWrap01 a:hover .contactIco {
	background-image: url(../img/ico/contact_ico_on.png);
}

/*@media all and (min-width: 0px) and (max-width: 768px) */
@media all and (min-width: 0px) and (max-width: 768px) {
	.pageWrap #mainvisualPage2 {
		width: 100%;
	}

	.pageWrap #mainvisualPage2Inner {
		height: auto;
		padding: 30px 20px 0;
		display: block;
		margin: 0 auto;
		width: 100%;
	}

	.pageWrap #mainvisualPage2Inner .text_area {
		display: block;
		height: auto;
	}

	.pageWrap #mainvisualPage2Inner .text_area .title_box {
		width: auto;
	}

	.pageWrap #mainvisualPage2Inner .text_area .title {
		font-size: 24px;
		text-align: left;
		line-height: 1.8em;
		letter-spacing: 0;
		white-space: initial;
	}

	.pageWrap #mainvisualPage2Inner .text_area .title span {
		font-size: 38px;
	}

	.pageWrap #mainvisualPage2Inner .text_area .sub_title {
		display: block;
		text-align: center;
		margin: 0 auto 10px;
	}

	.pageWrap #mainvisualPage2Inner .text_area .sub_title span.img {
		padding: 0;
		display: inline-block;
		margin: 0 auto 10px;
	}

	.pageWrap #mainvisualPage2Inner .text_area .sub_title img {
		width: 70%;
		display: inline-block;
		text-align: center;
		margin: 0 auto;
	}

	.pageWrap #mainvisualPage2Inner .text_area .sub_title span {
		display: block;
		font-size: 12px;
		text-align: center;
	}

	.pageWrap #mainvisualPage2Inner .text_area .sub_title span.txt {
		padding-left: 0;
		white-space: initial;
	}

	.pageWrap #mainvisualPage2Inner .text_area .txt_box {
		font-size: 18px;
		font-weight: bold;
		margin: 10px 0;
		letter-spacing: -1px;
		white-space: initial;
	}

	.pageWrap #mainvisualPage2Inner .text_area .txt_box.fs29 {
		font-size: 18px;
	}

	.pageWrap #mainvisualPage2Inner .text_area .txt_box .txt {
		margin: 0 0 10px;
	}

	.pageWrap #mainvisualPage2Inner .text_area .txt_box .btn {
		padding: 0 0;
		font-size: 16px;
		line-height: 1.8em;
	}

	.pageWrap #mainvisualPage2Inner .text_area .img_box {
		width: auto;
		right: 0;
	}

	.pageWrap #mainvisualPage2Inner .text_area .img_box .img01 {
		display: block;
		position: relative;
		right: 0;
		margin: 20px 0 20px;
	}

	/** アイコン+文章（角丸白背景） **/
	.pageWrap #mainvisualPage2Inner .text_area .txt_box_img2 {
		padding: 5px 10px;
		margin-bottom: 20px;
		margin-top: 10px;
	}

	.pageWrap #mainvisualPage2Inner .text_area .txt_box_img2 .txt {
		font-size: 14px;
		font-weight: bold;
		text-align: left;
	}

	.pageWrap #mainvisualPage2Inner .text_area .txt_box_img2 .img {
		display: block;
	}

	.pageWrap #mainvisualPage2Inner .text_area .txt_box_img2 .img img {
		width: 80%;
	}

	/*---2カラムボタン---*/
	.pageWrap #mainvisualPage2Inner .btnWrap01 .btnWrapIn,
	.pageWrap #mainvisualPage2Inner .btnWrap01 .contIn {
		display: block;
		padding: 0 0;
	}

	.pageWrap #mainvisualPage2Inner .btnWrap01 .btnWrapIn {
		padding: 20px 0;
	}

	.pageWrap #mainvisualPage2Inner .mvBtn01,
	.pageWrap #mainvisualPage2Inner .mvBtn02 {
		display: table;
		width: 100%;
		padding: 0 0 0;
		margin-bottom: 10px;
	}

	.pageWrap #mainvisualPage2Inner .btnWrap01 a {
		font-size: 16px;
		height: 51px;
		position: relative;
		z-index: 1;
	}

	.pageWrap #mainvisualPage2Inner p.ico,
	.page-id-8  p.ico {
		display: inline-block;
		font-size: 16px;
		line-height: 1.2em;
		font-weight: 500;
		background-size: 15px auto;
		padding-left: 20px;
	}

	.pageWrap #mainvisualPage2Inner .text_area .img_box .imgBlock01 {
		padding-top: 0;
		right: 0;
	}

	.pageWrap #mainvisualPage2Inner .text_area .img_box .imgBlock01 p {
		font-size: 10px;
		text-align: right;
		padding-right: 0;
	}



	/*-----------*/
}

/* =================================
	メインビジュアル ※導入事例で使用
================================== */
.pageWrap #mainvisualPage3 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	background: #D9E1F5;
	padding-top: 90px;
}

.pageWrap #mainvisualPage3Inner {
	position: relative;
	width: auto;
	width: 1060px;
	margin: auto;
	padding: 40px 0 40px;
}

.pageWrap #mainvisualPage3Inner .text_area {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	min-height: 359px;
}

/*中央寄せ*/
.pageWrap #mainvisualPage3Inner .text_area.alCenter {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.pageWrap #mainvisualPage3Inner .text_area.alCenter .title_box {
	padding-top: 0;
}

.pageWrap #mainvisualPage3Inner .text_area.alCenter .title_box .title {}

.pageWrap #mainvisualPage3Inner .text_area {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.pageWrap #mainvisualPage3Inner .text_area .title {
	display: block;
	font-size: 32px;
	letter-spacing: 0.05em;
	font-weight: 800;
	text-align: left;
	line-height: 1.875;
	padding: 0 0 10px;
	margin: 0;
	white-space: nowrap;
}

.pageWrap #mainvisualPage3Inner .text_area .title2 {
	color: #2B2A2A;
	border: solid 1px;
	display: inline-block;
	font-size: 17px;
	font-weight: bold;
	text-align: left;
	line-height: 1.8em;
	letter-spacing: 0.05em;
	padding: 0 9px;
	margin: 0 0 15px;
}

.pageWrap #mainvisualPage3Inner .text_area .title3 {
	background: #ffff;
	color: #334A85;
	min-width: 192px;
	height: auto;
	line-height: 1.5em;
	font-size: 20px;
	font-weight: 500;
	display: inline-block;
	text-align: center;
	margin: 0 auto 20px;
	padding: 5px 0;
}

.pageWrap #mainvisualPage3Inner .text_area .title.fs45 {
	display: block;
	font-size: 45px;
	font-weight: bold;
	text-align: left;
	line-height: 1.5em;
	white-space: nowrap;
	padding-bottom: 10px;
}

.pageWrap #mainvisualPage3Inner .text_area .title span {
	color: #334A85;
}

.pageWrap #mainvisualPage3Inner .text_area .sub_title {
	display: block;
	font-size: 20px;
	line-height: 1.6;
	letter-spacing: 0.05em;
	font-weight: 500;
	text-align: left;
	margin: 0 0;
}

.pageWrap #mainvisualPage3Inner .text_area .sub_title2 {
	display: block;
	font-size: 28px;
	font-weight: 800;
	text-align: left;
	margin: 0 0 10px;
	letter-spacing: 0.02em;
	line-height: 2;
}

.pageWrap #mainvisualPage3Inner .text_area .sub_title3 {
	font-size: 32px;
	font-weight: bold;
	margin: 20px 0 0;
	text-align: left;
}

.pageWrap #mainvisualPage3Inner .text_area .cat {
	display: block;
	font-size: 16px;
	line-height: 1.9;
	text-align: left;
	margin: 0 0 20px;
}

.pageWrap #mainvisualPage3Inner .text_area .cat .date {
	display: inline-block;
	font-size: 16px;
	margin-right: 50px;
}

.pageWrap #mainvisualPage3Inner .text_area .cat .pageNewsIcon {
	display: inline-block;
	font-size: 14px;
	line-height: 1.5;
	padding: 0 22px;
	margin: 0 5px 0 0
}

.pageWrap #mainvisualPage3Inner .text_area .txt {
	display: block;
	font-size: 20px;
	font-weight: bold;
	text-align: left;
	margin: 35px 0 0;
	letter-spacing: 0.03em;
}

.pageWrap #mainvisualPage3Inner .text_area .txt span {
	display: inline-block;
	font-size: 12px;
	font-weight: bold;
	text-align: left;
	margin: 15px 4px 0 0;
}

.pageWrap #mainvisualPage3Inner .text_area .txt p {
	margin: 0;
	padding: 0;
}

.pageWrap #mainvisualPage3Inner .text_area .txt img {
	vertical-align: middle;
}

.pageWrap #mainvisualPage3Inner .text_area .title_box {
	position: relative;
	width: 50%;
	text-align: left;
	padding-top: 60px;
}

.pageWrap #mainvisualPage3Inner .text_area .img_box {
	position: relative;
	left: 0;
	width: 33%;
	margin-bottom: 0;
}

.pageWrap #mainvisualPage3Inner .text_area .img_box.imgVm {
	margin: auto;
}

.pageWrap #mainvisualPage3Inner .btn01Wrap {
	padding: 10px 0 0;
}

/*詳細*/
.pageWrap .detailMv #mainvisualPage3Inner .text_area .title_box {
	position: relative;
	width: 721px;
	text-align: left;
	padding-top: 0;
}

.pageWrap .detailMv #mainvisualPage3Inner .text_area .img_box {
	position: relative;
	left: 0;
	width: 302px;
	padding-left: 10px;
	margin: 0 0 0 auto;
}


/******/
.pageWrap .mv01 #mainvisualPage3Inner {
	padding: 0;
}

.pageWrap .mv01 #mainvisualPage3Inner .text_area .img_box {
	padding-top: 20px;
}

.pageWrap .mv01 #mainvisualPage3Inner .text_area .img_box {
	padding-top: 20px;
}

.pageWrap .mv01 #mainvisualPage3Inner .text_area .title_box {
	width: 80%;
}


/*ボタン*/
#mainvisualPage3 .detailMainFlexBtn01 a {
	display: table;
	text-align: center;
	box-sizing: border-box;
	width: 260px;
	line-height: 3.125;
	height: 65px;
	font-size: 16px;
	letter-spacing: 0.05em;
	font-weight: 500;
	color: #fff;
	border: 1px solid #334A85;
	background-color: #334A85;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	position: relative;
	z-index: 1;
	overflow: hidden;
	margin: 20px 0 0;
}

#mainvisualPage3 .detailMainFlexBtn01 a span {
	display: table-cell;
	vertical-align: middle;
	position: relative;
}

#mainvisualPage3 .detailMainFlexBtn01 a span.ico::before {
	content: "";
	background-image: url(../img/top/download_ico.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	padding-left: 28px;
	display: inline-block;
	width: 15px;
	height: 20px;
	margin-top: 0;
	position: relative;
	left: 0;
	top: 4px;

}

#mainvisualPage3 .detailMainFlexBtn01 a span.contactIco::before {
	background-image: url(../img/top/contact_ico.png);
	width: 20px;
	height: 16px;
	left: 0;
	top: 2px;
}

#mainvisualPage3 .detailMainFlexBtn01 a:hover .contactIco::before {
	background-image: url(../img/top/contact_ico_on.png);
}

#mainvisualPage3 .detailMainFlexBtn01 a:hover {
	text-decoration: none;
	color: #334A85;
	text-decoration: none;
}

#mainvisualPage3 .detailMainFlexBtn01 a:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #fff;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

#mainvisualPage3 .detailMainFlexBtn01 a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}


/*---2カラムボタン---*/
.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn,
.pageWrap #mainvisualPage3Inner .btn01Wrap .contIn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	width: 530px;

}

.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn {
	padding: 20px 0 0;
}

.pageWrap #mainvisualPage3Inner .mvBtn,
.pageWrap #mainvisualPage3Inner .mvBtn01,
.pageWrap #mainvisualPage3Inner .mvBtn02,
.pageWrap #mainvisualPage3Inner .mvBtn03 {
	display: table;
	width: 50%;
}

.pageWrap #mainvisualPage3Inner .mvBtn:first-child {
	padding-right: 12px;
}

.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn a {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	box-sizing: border-box;
	font-size: 16px;
	height: 64.4px;
	border: 1px solid #FFB100;
	background-color: #FFB100;
	color: #2B2A2A;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;

	position: relative;
	z-index: 1;
}

.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn a:hover {
	color: #FFB100;
	border: 1px solid #FFB100;
}

.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #fff;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/*緑*/
.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn .mvBtn02 a {
	border: 1px solid #334A85;
	background-color: #334A85;
	color: #ffffff;
}

.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn .mvBtn02 a:hover {
	color: #334A85;
	border: 1px solid #334A85;
}

.pageWrap #mainvisualPage3Inner .mvBtn02 a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #fff;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn .mvBtn02 a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/*緑*/
.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn .mvBtn03 a {
	border: 1px solid #1d82b1;
	background-color: #1d82b1;
	color: #ffffff;
}

.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn .mvBtn03 a:hover {
	color: #1d82b1;
	border: 1px solid #1d82b1;
}

.pageWrap #mainvisualPage3Inner .mvBtn03 a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #fff;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn .mvBtn03 a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/****/
.pageWrap #mainvisualPage3Inner p.ico {
	display: inline-block;
	font-size: 16px;
	line-height: 1.3em;
	font-weight: 500;
	background-image: url(../img/ico/download_ico2.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 23px auto;
	padding-left: 30px;
	padding-top: 5px;
	padding-bottom: 5px;
}

.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn a .downloadIco {
	background-image: url(../img/ico/download_ico2.png);
	background-size: 23px auto;
	padding-left: 30px;
}

.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn a:hover .downloadIco {
	background-image: url(../img/ico/download_ico2_on.png);
}

.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn a .contactIco {
	background-image: url(../img/ico/contact_ico.png);
	background-size: 20px auto;
	padding-left: 30px;
}

.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn a:hover .contactIco {
	background-image: url(../img/ico/contact_ico_on.png);
}

.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn a .contactIco2 {
	background-image: url(../img/ico/contact_ico2.png);
	background-size: 20px auto;
	padding-left: 25px;
}

.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn a:hover .contactIco2 {
	background-image: url(../img/ico/contact_ico2_on.png);
}

/** ロゴ+文章  **/
.pageWrap #mainvisualPage3Inner .text_area .logo_txt {
	display: table;
	text-align: left;
	margin: 0 0 10px;
	padding-top: 0;
}

.pageWrap #mainvisualPage3Inner .text_area .logo_txt span {
	display: table-cell;
	font-size: 14px;
	font-weight: bold;
	text-align: left;
	vertical-align: middle;
}

.pageWrap #mainvisualPage3Inner .text_area .logo_txt span.txt {
	padding: 0;
	white-space: nowrap;
}

.pageWrap #mainvisualPage3Inner .text_area .logo_txt span.img {
	padding-right: 25px;
}

/** アイコン+文章（角丸白背景） **/
.pageWrap #mainvisualPage3Inner .text_area .txt_box_img {
	width: auto;
	background: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-ms-flex-pack: distribute;
	justify-content: space-around;
	padding: 10px 25px;
	margin-bottom: 0;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	margin-top: 30px;
}

.pageWrap #mainvisualPage3Inner .text_area .txt_box_img .txt {
	font-size: 20px;
	font-weight: bold;
	margin: 0 0;
}

.pageWrap #mainvisualPage3Inner .text_area .txt_box_img img {
	width: auto;
}

/*背景色*/
/*黄緑 ※コラム使用*/
.pageWrap #mainvisualPage3.mvBgLitGr {
	background: #D7EED9;
}

/*黄緑2 ※新着情報使用*/
.pageWrap #mainvisualPage3.mvBgLitGr2 {
	background: #D9EEE8;
}

/*水色 ※セミナー使用*/
.pageWrap #mainvisualPage3.mvBgLitBl {
	background: #DAF3FC;
}

/*水色2 ※ケーススタディ使用*/
.pageWrap #mainvisualPage3.mvBgLitBl2 {
	background: #D9F8F6;
}

/*紫 ※課題からサービスを探す使用*/
.pageWrap #mainvisualPage3.mvBgLitPu {
	background: #DBD9F5;
}





/*@media all and (min-width: 0px) and (max-width: 768px) */
@media all and (min-width: 0px) and (max-width: 768px) {
	.pageWrap #mainvisualPage3 {
		width: 100%;
		padding-top: 64px;
	}

	.pageWrap #mainvisualPage3Inner {
		height: auto;
		padding: 20px 20px;
		display: block;
		margin: 0 auto;
		width: 100%;
	}

	.pageWrap .contIn #mainvisualPage3Inner {
		padding: 20px 0;
	}

	.pageWrap #mainvisualPage3Inner .text_area {
		display: block;
	}

	.pageWrap #mainvisualPage3Inner .text_area .title_box {
		margin: 0 0 10px;
		padding-top: 0;
		font-size: 14px;
		width: 100%;
	}

	.pageWrap #mainvisualPage3Inner .text_area .title {
		font-size: 18px;
		white-space: initial;
	}

	.pageWrap #mainvisualPage3Inner .text_area .title2 {
		font-size: 14px;
	}

	.pageWrap #mainvisualPage3Inner .text_area .title3 {
		min-width: 192px;
		height: auto;
		line-height: 1.5em;
		font-size: 14px;
		margin: 0 auto 15px;
		padding: 5px 0;
	}

	.pageWrap #mainvisualPage3Inner .text_area .title.fs45 {
		font-size: 24px;
		text-align: left;
		line-height: 1.8em;
		letter-spacing: 0;
		white-space: initial;
	}

	.pageWrap #mainvisualPage3Inner .text_area.alCenter .title_box {
		padding-top: 0;
	}

	.pageWrap #mainvisualPage3Inner .text_area.alCenter .title_box .title {
		margin-top: 0;
	}

	.pageWrap #mainvisualPage3Inner .text_area .sub_title {
		font-size: 14px;
	}

	.pageWrap #mainvisualPage3Inner .text_area .sub_title2 {
		font-size: 16px;
		line-height: 1.5;
	}

	.pageWrap #mainvisualPage3Inner .text_area .sub_title3 {
		font-size: 18px;
		margin: 10px 0 0;
	}

	.pageWrap #mainvisualPage3Inner .text_area .cat .date {
		margin-right: 20px;
	}

	.pageWrap #mainvisualPage3Inner .text_area .txt {
		font-size: 16px;
		margin: 30px 0 20px;
	}

	.pageWrap #mainvisualPage3Inner .text_area .img_box {
		position: relative;
		left: 0;
		width: 100%;
	}

	.pageWrap #mainvisualPage3Inner .text_area .img_box img {
		margin: 0 auto;
		display: block;
	}

	/******/
	.pageWrap .mv01 #mainvisualPage3Inner {
		padding: 30px 20px 0;
	}

	.pageWrap .mv01 #mainvisualPage3Inner .text_area .img_box {
		padding-top: 0;
	}

	.pageWrap .mv01 #mainvisualPage3Inner .text_area .title_box {
		width: auto;
	}

	/*ボタン*/
	#mainvisualPage3 .detailMainFlexBtn01 a {
		width: 250px;
		line-height: 40px;
		height: 40px;
		font-size: 16px;
		margin: 20px auto 0;
	}

	/*---2カラムボタン---*/
	.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn,
	.pageWrap #mainvisualPage3Inner .btn01Wrap .contIn {
		display: block;
		padding: 0 0;
		width: auto;
	}

	.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn {
		padding: 20px 0;
	}

	.pageWrap #mainvisualPage3Inner .mvBtn,
	.pageWrap #mainvisualPage3Inner .mvBtn01,
	.pageWrap #mainvisualPage3Inner .mvBtn02,
	.pageWrap #mainvisualPage3Inner .mvBtn03 {
		display: table;
		width: 100%;
		padding: 0 0 0;
		margin-bottom: 10px;
	}

	.pageWrap #mainvisualPage3Inner .btn01Wrap .btnWrapIn a {
		font-size: 16px;
		height: 51px;
		position: relative;
		z-index: 1;
	}

	.pageWrap #mainvisualPage3Inner p.ico {
		display: inline-block;
		font-size: 16px;
		line-height: 1.2em;
		font-weight: 500;
		background-size: 14px auto;
		padding-left: 20px;
	}

	.pageWrap #mainvisualPage3Inner .text_area {
		padding-top: 0;
		min-height: auto;
	}

	.pageWrap #mainvisualPage3Inner .text_area .img_box .imgBlock01 {
		padding-top: 20px;
	}

	.pageWrap #mainvisualPage3Inner .text_area .img_box .imgBlock01 p {
		font-size: 10px;
		text-align: right;
		padding-right: 0;
	}

	/** ロゴ+文章  **/
	.pageWrap #mainvisualPage3Inner .text_area .logo_txt {
		display: block;
		text-align: center;
		margin: 0 auto 10px;
		padding-top: 0;
	}

	.pageWrap #mainvisualPage3Inner .text_area .logo_txt span.img {
		padding: 0;
		display: inline-block;
		margin: 0 auto 10px;
	}

	.pageWrap #mainvisualPage3Inner .text_area .logo_txt img {
		width: 70%;
		display: inline-block;
		text-align: center;
		margin: 0 auto;
	}

	.pageWrap #mainvisualPage3Inner .text_area .logo_txt span {
		display: block;
		font-size: 14px;
		text-align: center;
	}

	.pageWrap #mainvisualPage3Inner .text_area .logo_txt span.txt {
		padding: 0;
		margin: 0;
		white-space: initial;
	}

	.pageWrap #mainvisualPage3Inner .text_area .logo_txt span.img {
		padding-right: 0;
	}

	/** アイコン+文章（角丸白背景） **/
	.pageWrap #mainvisualPage3Inner .text_area .txt_box_img {
		padding: 5px 10px;
		margin-bottom: 20px;
		margin-top: 10px;
	}

	.pageWrap #mainvisualPage3Inner .text_area .txt_box_img .txt {
		font-size: 14px;
		font-weight: bold;
		text-align: left;
	}

	.pageWrap #mainvisualPage3Inner .text_area .txt_box_img .img img {
		width: 80%;
	}

	/*詳細*/
	.pageWrap .detailMv #mainvisualPage3Inner .text_area .title_box {
		width: auto;
	}

	/*-----------*/
}

/* =================================
	メインビジュアル4 ※サービス詳細使用
================================== */
.pageWrap #mainvisualPage4 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	background: #E4F2FF;
}

.pageWrap #mainvisualPage4Inner {
	position: relative;
	width: auto;
	width: 1060px;
	margin: auto;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	min-height: 352px;
	padding: 30px 0 55px;
}

.pageWrap #mainvisualPage4Inner .text_area {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 100%;
	box-sizing: border-box;
}

.pageWrap #mainvisualPage4Inner .text_area .title_box {
	width: 575px;
}

.pageWrap #mainvisualPage4Inner .text_area .title {
	display: block;
	font-size: 33px;
	font-weight: bold;
	text-align: left;
	line-height: 1.81;
	letter-spacing: 0.05em;
	padding: 10px 0 10px;
	margin: 0;
}

.pageWrap #mainvisualPage4Inner .text_area .title span {
	color: #FF301B;
	font-size: 60px;
}

.pageWrap #mainvisualPage4Inner .text_area .sub_title {
	display: table;
	text-align: left;
	margin: 0 0;
}

.pageWrap #mainvisualPage4Inner .text_area .sub_title span {
	display: table-cell;
	font-size: 14px;
	font-weight: bold;
	text-align: left;
	vertical-align: middle;
}

.pageWrap #mainvisualPage4Inner .text_area .sub_title span.txt {
	padding: 0;
}

.pageWrap #mainvisualPage4Inner .text_area .sub_title span.img {
	padding-right: 25px;
}

.pageWrap #mainvisualPage4Inner .text_area .txt_box {
	font-size: 32px;
	font-weight: bold;
	margin: 20px 0 20px;
	text-align: left;
	letter-spacing: -1px;
}

.pageWrap #mainvisualPage4Inner .text_area .txt_box .txt {
	margin: 0 0 10px;
}

.pageWrap #mainvisualPage4Inner .text_area .txt_box .btn {
	background: #2B2A2A;
	padding: 5px 28px;
	color: #fff;
	font-size: 16px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	line-height: 1.8em;
	text-decoration: none;
}

.pageWrap #mainvisualPage4Inner .text_area .txt_box .btn:hover {
	opacity: 0.75;
}

.pageWrap #mainvisualPage4Inner .text_area .txt_box_img {
	width: auto;
	background: #fff;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: space-between;
	-ms-flex-pack: space-between;
	justify-content: space-between;
	padding: 10px 45px;
	margin-bottom: 50px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}

.pageWrap #mainvisualPage4Inner .text_area .txt_box_img .txt {
	font-size: 20px;
	font-weight: bold;
}

.pageWrap #mainvisualPage4Inner .text_area .txt_box_img img {
	width: auto;
}

.pageWrap #mainvisualPage4Inner .text_area .img_box {
	position: relative;
	width: auto;
	right: -70px;
}

.pageWrap #mainvisualPage4Inner .text_area .img_box {
	position: relative;
	width: auto;
	right: -40px;
	bottom: -18px;
}

.pageWrap #mainvisualPage4Inner .text_area .img_box .imgBlock01 {
	display: block;
	position: relative;
	right: -81px;
	margin: 36px 0 20px;
}

.pageWrap #mainvisualPage4Inner .text_area .img_box .imgBlock01 p {
	font-size: 10px;
	text-align: right;
	padding-right: 56px;
}

/*---2カラムボタン---*/
.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn,
.pageWrap #mainvisualPage4Inner .btn01Wrap .contIn,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn,
.pageWrap #mainvisualPage4Inner .btnWrap01 .contIn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 80px 0;
}

.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn {
	padding: 30px 0;
}

.pageWrap #mainvisualPage4Inner .mvBtn,
.pageWrap #mainvisualPage4Inner .mvBtn01,
.pageWrap #mainvisualPage4Inner .mvBtn02,
.pageWrap #mainvisualPage4Inner .mvBtn03 {
	display: table;
	width: 50%;
}

.pageWrap #mainvisualPage4Inner .mvBtn:first-child {
	padding-right: 6px;
}

.pageWrap #mainvisualPage4Inner .mvBtn:last-child {
	padding-left: 6px;
}

.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn a,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn a {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	box-sizing: border-box;
	font-size: 16px;
	height: 65px;
	border: 1px solid #FFB100;
	background-color: #FFB100;
	color: #2B2A2A;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;

	position: relative;
	z-index: 1;
}

.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn a:hover,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn a:hover {
	color: #FFB100;
}

.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn a::before,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #fff;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn a:hover::before,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/*緑*/
.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn .mvBtn02 a,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn .mvBtn02 a {
	border: 1px solid #334A85;
	background-color: #334A85;
	color: #ffffff;
}

.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn .mvBtn02 a:hover,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn .mvBtn02 a:hover {
	color: #334A85;
}

.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn .mvBtn02 a::before,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn .mvBtn02 a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #fff;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn .mvBtn02 a:hover::before,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn .mvBtn02 a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/*青*/
.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn .mvBtn03 a,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn .mvBtn03 a {
	border: 1px solid #1d82b1;
	background-color: #1d82b1;
	color: #ffffff;
}

.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn .mvBtn03 a:hover,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn .mvBtn03 a:hover {
	color: #1d82b1;
}

.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn .mvBtn03 a::before,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn .mvBtn03 a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #fff;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn .mvBtn03 a:hover::before,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn .mvBtn03 a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

.pageWrap #mainvisualPage4Inner p.ico {
	display: inline-block;
	font-size: 16px;
	line-height: 1.2em;
	font-weight: 500;
	background-image: url(../img/top/download_ico.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 14px auto;
	padding-left: 20px;
}

.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn a .downloadIco,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn a .downloadIco {
	background-image: url(../img/top/download_ico.png);
}

.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn a:hover .downloadIco,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn a:hover .downloadIco {
	background-image: url(../img/top/download_ico_on.png);
}

.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn a .contactIco,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn a .contactIco {
	background-image: url(../img/top/contact_ico.png);
}

.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn a:hover .contactIco,
.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn a:hover .contactIco {
	background-image: url(../img/top/contact_ico_on.png);
}

/*@media all and (min-width: 0px) and (max-width: 768px) */
@media all and (min-width: 0px) and (max-width: 768px) {
	.pageWrap #mainvisualPage4 {
		width: 100%;
	}

	.pageWrap #mainvisualPage4Inner {
		height: auto;
		padding: 30px 20px 30px;
		display: block;
		margin: 0 auto;
		width: 100%;
	}

	.pageWrap #mainvisualPage4Inner .text_area {
		display: block;
	}

	.pageWrap #mainvisualPage4Inner .text_area .title_box {
		width: auto;
	}

	.pageWrap #mainvisualPage4Inner .text_area .title {
		font-size: 22px;
		text-align: left;
		line-height: 1.8em;
		letter-spacing: 0;
	}

	.pageWrap #mainvisualPage4Inner .text_area .title span {
		font-size: 38px;
	}

	.pageWrap #mainvisualPage4Inner .text_area .sub_title {
		display: block;
		text-align: center;
		margin: 0 auto 10px;
	}

	.pageWrap #mainvisualPage4Inner .text_area .sub_title span.img {
		padding: 0;
		display: inline-block;
		margin: 0 auto 10px;
	}

	.pageWrap #mainvisualPage4Inner .text_area .sub_title img {
		width: 70%;
		display: inline-block;
		text-align: center;
		margin: 0 auto;
	}

	.pageWrap #mainvisualPage4Inner .text_area .sub_title span {
		display: block;
		font-size: 14px;
		text-align: center;
	}

	.pageWrap #mainvisualPage4Inner .text_area .sub_title span.txt {
		padding: 0;
	}

	.pageWrap #mainvisualPage4Inner .text_area .sub_title span.img {
		padding-right: 0;
	}

	.pageWrap #mainvisualPage4Inner .text_area .txt_box {
		font-size: 18px;
		font-weight: bold;
		margin: 10px 0;
		letter-spacing: -1px;
	}

	.pageWrap #mainvisualPage4Inner .text_area .txt_box .txt {
		margin: 0 0 10px;
	}

	.pageWrap #mainvisualPage4Inner .text_area .txt_box .btn {
		padding: 0 0;
		font-size: 16px;
		line-height: 1.8em;
	}

	.pageWrap #mainvisualPage4Inner .text_area .txt_box_img {
		padding: 5px 10px;
		margin-bottom: 20px;
	}

	.pageWrap #mainvisualPage4Inner .text_area .txt_box_img .txt {
		font-size: 14px;
		font-weight: bold;
		text-align: left;
	}

	.pageWrap #mainvisualPage4Inner .text_area .txt_box_img .img img {
		width: 80%;
	}

	.pageWrap #mainvisualPage4Inner .text_area .img_box {
		width: auto;
		right: 0;
	}

	.pageWrap #mainvisualPage4Inner .text_area .img_box .img01 {
		display: block;
		position: relative;
		right: 0;
		margin: 20px 0 20px;
	}

	/*---2カラムボタン---*/
	.pageWrap #mainvisualPage4Inner .btn01Wrap01 .btnWrapIn,
	.pageWrap #mainvisualPage4Inner .btn01Wrap .contIn,
	.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn,
	.pageWrap #mainvisualPage4Inner .btnWrap01 .contIn {
		display: block;
		padding: 0 0;
	}

	.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn,
	.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn {
		padding: 20px 0;
	}

	.pageWrap #mainvisualPage4Inner .mvBtn:first-child,
	.pageWrap #mainvisualPage4Inner .mvBtn:last-child {
		padding: 0 0 0;
	}

	.pageWrap #mainvisualPage4Inner .mvBtn,
	.pageWrap #mainvisualPage4Inner .mvBtn01,
	.pageWrap #mainvisualPage4Inner .mvBtn02,
	.pageWrap #mainvisualPage4Inner .mvBtn03 {
		display: table;
		width: 100%;
		padding: 0 0 0;
		margin-bottom: 10px;
	}

	.pageWrap #mainvisualPage4Inner .btn01Wrap .btnWrapIn a,
	.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn a {
		font-size: 16px;
		height: 51px;
		position: relative;
		z-index: 1;
	}

	.pageWrap #mainvisualPage4Inner p.ico {
		display: inline-block;
		font-size: 16px;
		line-height: 1.2em;
		font-weight: 500;
		background-size: 15px auto;
		padding-left: 20px;
	}

	.pageWrap #mainvisualPage4Inner .btnWrap01 .btnWrapIn a .downloadIco {
		background-size: 13px auto;
	}

	.pageWrap #mainvisualPage4Inner .text_area .img_box .imgBlock01 {
		padding-top: 20px;
	}

	.pageWrap #mainvisualPage4Inner .text_area .img_box .imgBlock01 p {
		font-size: 10px;
		text-align: right;
		padding-right: 0;
	}



	/*-----------*/
}




/* =================================
	メインビジュアル ※ノーマル
================================== */
.detailMainvisual01 {
	background: rgb(222, 255, 245);
	background: -moz-linear-gradient(156deg, rgba(222, 255, 245, 1) 0%, rgba(155, 238, 212, 1) 50%, rgba(153, 237, 211, 1) 100%);
	background: -webkit-linear-gradient(156deg, rgba(222, 255, 245, 1) 0%, rgba(155, 238, 212, 1) 50%, rgba(153, 237, 211, 1) 100%);
	background: linear-gradient(156deg, rgba(222, 255, 245, 1) 0%, rgba(155, 238, 212, 1) 50%, rgba(153, 237, 211, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#defff5", endColorstr="#99edd3", GradientType=1);
	color: #2B2A2A;
	position: relative;
	display: table;
	width: 100%;
}

/*-濃いグレー-*/
.detailMainvisual01.bgCl01 {
	background: #313131;
}

/*-黄緑グラデーション-*/
.detailMainvisual01.bgGdGr {
	background: rgb(222, 255, 222);
	background: -moz-linear-gradient(156deg, rgba(222, 255, 222, 1) 0%, rgba(155, 238, 165, 1) 65%, rgba(143, 242, 154, 1) 100%);
	background: -webkit-linear-gradient(156deg, rgba(222, 255, 222, 1) 0%, rgba(155, 238, 165, 1) 65%, rgba(143, 242, 154, 1) 100%);
	background: linear-gradient(156deg, rgba(222, 255, 222, 1) 0%, rgba(155, 238, 165, 1) 65%, rgba(143, 242, 154, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#deffde", endColorstr="#8ff29a", GradientType=1);
}

/*-薄紫グラデーション-*/
.detailMainvisual01.bgGdPu {
	background: rgb(227, 228, 255);
	background: -moz-linear-gradient(156deg, rgba(227, 228, 255, 1) 0%, rgba(188, 201, 255, 1) 65%, rgba(162, 176, 255, 1) 100%);
	background: -webkit-linear-gradient(156deg, rgba(227, 228, 255, 1) 0%, rgba(188, 201, 255, 1) 65%, rgba(162, 176, 255, 1) 100%);
	background: linear-gradient(156deg, rgba(227, 228, 255, 1) 0%, rgba(188, 201, 255, 1) 65%, rgba(162, 176, 255, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#e3e4ff", endColorstr="#a2b0ff", GradientType=1);
}

/*-水色グラデーション-*/
.pageWrap #mainvisualPage.bgGdLitBl,
.detailMainvisual01.bgGdLitBl {
	background: rgb(224, 243, 252);
	background: -moz-linear-gradient(156deg, rgba(224, 243, 252, 1) 0%, rgba(203, 237, 253, 1) 65%, rgba(206, 240, 255, 1) 100%);
	background: -webkit-linear-gradient(156deg, rgba(224, 243, 252, 1) 0%, rgba(203, 237, 253, 1) 65%, rgba(206, 240, 255, 1) 100%);
	background: linear-gradient(156deg, rgba(224, 243, 252, 1) 0%, rgba(203, 237, 253, 1) 65%, rgba(206, 240, 255, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#e0f3fc", endColorstr="#cef0ff", GradientType=1);
}

/*-水色グラデーション2-*/
.pageWrap #mainvisualPage.bgGdLitBl2,
.detailMainvisual01.bgGdLitBl {
	background: rgb(222, 251, 255);
	background: -moz-linear-gradient(156deg, rgba(222, 251, 255, 1) 0%, rgba(155, 216, 238, 1) 65%, rgba(153, 218, 237, 1) 100%);
	background: -webkit-linear-gradient(156deg, rgba(222, 251, 255, 1) 0%, rgba(155, 216, 238, 1) 65%, rgba(153, 218, 237, 1) 100%);
	background: linear-gradient(156deg, rgba(222, 251, 255, 1) 0%, rgba(155, 216, 238, 1) 65%, rgba(153, 218, 237, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#defbff", endColorstr="#99daed", GradientType=1);
}

.detailMainvisual01 .detailMainTb01 {
	display: table;
	width: auto;
	min-height: 192px;
	position: relative;
}

.detailMainvisual01 .detailMainCell01 {
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	box-sizing: border-box;
	color: #fff;
	padding: 47px 0;
}

.detailMainvisual01 .detailMainBox01 {
	display: block;
	box-sizing: border-box;
	padding: 0 0;
	vertical-align: middle;
	text-align: center;
}

.detailMainvisual01 .detailTtl {
	background: #ffff;
	color: #334A85;
	min-width: 228px;
	height: auto;
	line-height: 1.8em;
	font-size: 20px;
	font-weight: 500;
	display: inline-block;
	text-align: center;
	margin: 0 auto 15px;
	padding: 4px 30px;
}

.detailMainvisual01 .detailTtl.type01 {
	background: none;
	padding: 0 30px;
}

.detailMainvisual01 .detailSubttl {
	font-size: 37px;
	line-height: 1.7em;
	font-weight: 500;
	text-align: center;
	display: block;
	padding: 20px 0;
	color: #222;
}

.detailMainvisual .detailSubttl span {
	color: #FF8900;
}

.detailMainvisual01 .detailSubttl2 {
	font-size: 32px;
	line-height: 1.7em;
	font-weight: 500;
	text-align: center;
	display: block;
	padding: 0 0 10px;
	color: #2B2A2A;
}

.detailMainvisual01 .detailTxt {
	font-size: 20px;
	line-height: 1.7em;
	font-weight: bold;
	text-align: center;
	display: block;
	padding: 0;
	color: #2B2A2A;
}

/*---2カラムボタン---*/
.detailMainvisual01 .detailMainBtnBox01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	flex-wrap: wrap;
}

.detailMainvisual01 .detailMainBtnBox01>.detailMainBtnBox01In {
	margin: 0 10px 0;
}

.detailMainvisual01 .detailMainBtnBox01>.detailMainBtnBox01In a {
	background: #2B2A2A;
	padding: 0 20px;
	color: #fff;
	font-size: 16px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	line-height: 1.8em;
	text-decoration: none;
	width: 250px;
	min-height: 32px;
	display: block;
	margin: 0 auto;
	line-height: 32px;
	text-align: center;
	position: relative;
	z-index: 1;
	transition: .3s;
	overflow: hidden;
}

.detailMainvisual01 .detailMainBtnBox01>.detailMainBtnBox01In a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #9a9a9a;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.detailMainvisual01 .detailMainBtnBox01>.detailMainBtnBox01In a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/*ボタンの色*/
/*オレンジ*/
.detailMainvisual01 .detailMainBtnBox01>.detailMainBtnBox01In a.btnOr {
	background: #FFB100;
	color: #2B2A2A;
}

.detailMainvisual01 .detailMainBtnBox01>.detailMainBtnBox01In a.btnOr:hover {
	color: #FFB100;
}

.detailMainvisual01 .detailMainBtnBox01>.detailMainBtnBox01In a.btnOr:hover::before {
	background: #fff;
}


/*------画像付き2カラムあり-----*/
.detailMainvisual01 .detailMainFlexBox {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-align-items: center;
	-ms-align-items: center;
	align-items: center;
	justify-content: space-between;
	padding: 5px 0 10px;
	color: #222222;
}

.detailMainvisual01 .detailMainFlexBoxTxt {
	width: 776px;
}

.detailMainvisual01 .detailMainFlexTtl {
	font-size: 22px;
	font-weight: bold;
	line-height: 1.8em;
	padding: 0 0 20px;
}

.detailMainvisual01 .detailMainFlexTtl span {
	font-size: 17px;
	font-weight: bold;
	line-height: 1.8em;
	border: 1px solid;
	padding: 3px 15px;
	margin: 0 10px 0 0;
}

.detailMainvisual01 .detailMainFlexTxt01 {
	font-size: 30px;
	font-weight: bold;
	line-height: 1.8em;
}

.detailMainvisual01 .detailMainFlexBoxImg {
	width: 264px;
	height: 148px;
	margin: 0 0 0 40px;
}

.detailMainvisual01 .detailMainFlexBoxImg img {
	width: auto;
}

/*-----------*/
/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.detailMainvisual01 {
		position: relative;
		min-height: 100px;
		display: block;
	}

	.detailMainvisual01 .detailMainBox01 {
		padding: 0 0;
	}

	.detailMainvisual01 .detailMainTb01 {
		display: table;
		width: 100%;
		height: 100%;
		min-height: auto;
		padding: 10px 0;
	}

	.detailMainvisual01 .detailMainCell01 {
		display: table-cell;
		text-align: left;
		vertical-align: middle;
		box-sizing: border-box;
		height: auto;
		color: #fff;
		padding: 20px;
	}

	.detailMainvisual01 .detailTtl {
		min-width: auto;
		width: auto;
		height: auto;
		line-height: 25px;
		font-size: 14px;
		font-weight: 500;
		display: inline-block;
		text-align: center;
		margin: 0 auto 10px;
		padding: 3px 20px;
	}

	.detailMainvisual01 .detailSubttl {
		font-size: 18px;
		line-height: 1.6em;
		font-weight: 500;
		text-align: center;
		margin-top: 0;
		display: block;
	}

	/*-----------*/
	/*---2カラムボタン---*/
	.detailMainvisual01 .detailMainBtnBox01 {
		margin: 10px 10px 0;
		width: 100%;
		display: block;
	}

	.detailMainvisual01 .detailMainBtnBox01>.detailMainBtnBox01In {
		margin: 10px auto 0;
		text-align: center;
	}

	.detailMainvisual01 .detailMainBtnBox01>.detailMainBtnBox01In a {
		padding: 0 20px;
		font-size: 14px;
	}

	/*------画像付き2カラムあり-----*/
	.detailMainvisual01 .detailMainFlexBox {
		display: block;
		padding: 5px 0 10px;
	}

	.detailMainvisual01 .detailMainFlexBoxTxt {
		width: 100%;
	}

	.detailMainvisual01 .detailMainFlexTtl {
		font-size: 16px;
		font-weight: bold;
		line-height: 1.8em;
		padding: 0 0 10px;
	}

	.detailMainvisual01 .detailMainFlexTtl span {
		font-size: 14px;
		font-weight: bold;
		line-height: 1.8em;
		border: 1px solid;
		padding: 3px 15px;
		margin: 0 0 5px 0;
		display: inline-block;
	}

	.detailMainvisual01 .detailMainFlexTxt01 {
		font-size: 18px;
		font-weight: bold;
		line-height: 1.8em;
	}

	.detailMainvisual01 .detailMainFlexBoxImg {
		width: 264px;
		height: 148px;
		margin: 10px auto 0
	}

	.detailMainvisual01 .detailMainFlexBoxImg img {
		width: auto;
	}

	/*-----------*/
	/*-----------*/
}

/* =================================
	メインビジュアル2 詳細用
================================== */
.detailMainvisual02 {
	background: rgb(222, 255, 245);
	background: -moz-linear-gradient(156deg, rgba(222, 255, 245, 1) 0%, rgba(155, 238, 212, 1) 50%, rgba(153, 237, 211, 1) 100%);
	background: -webkit-linear-gradient(156deg, rgba(222, 255, 245, 1) 0%, rgba(155, 238, 212, 1) 50%, rgba(153, 237, 211, 1) 100%);
	background: linear-gradient(156deg, rgba(222, 255, 245, 1) 0%, rgba(155, 238, 212, 1) 50%, rgba(153, 237, 211, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#defff5", endColorstr="#99edd3", GradientType=1);
	color: #222;
	position: relative;
	display: table;
	width: 100%;
}

.detailMainvisual02 .detailMainTb {
	display: table;
	width: auto;
	min-height: 275px;
	position: relative;
}

.detailMainvisual02 .detailMainCell {
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	box-sizing: border-box;
	color: #fff;
	padding: 50px 0;
	word-break: break-all;
}

.detailMainvisual02 .detailMainBox {
	display: block;
	box-sizing: border-box;
	padding: 0 0;
	vertical-align: middle;
	text-align: center;
}

.detailMainvisual02 .detailTtl {
	background: #222222;
	min-width: 228px;
	height: auto;
	line-height: 1.8em;
	font-size: 20px;
	font-weight: 500;
	display: inline-block;
	text-align: center;
	margin: 0 auto 15px;
	padding: 10px 30px;
}

.detailMainvisual02 .detailSubttl {
	font-size: 37px;
	line-height: 1.7em;
	font-weight: 500;
	text-align: left;
	display: block;
	padding: 0;
	color: #222;
}

.detailMainvisual02 .detailSubttl span {
	color: #FF8900;
}

.detailMainvisual02 .detailDateBox {
	display: table;
	padding: 0 0 20px;
}

.detailMainvisual02 .detailDateBox .date {
	font-size: 16px;
	display: table-cell;
	padding: 0 25px 0 0;
	color: #222;
}

.detailMainvisual02 .detailDateBox .cat {
	font-size: 14px;
	display: table-cell;
}

.detailMainvisual02 .detailDateBox .cat span {
	text-align: center;
	padding: 2px 10px;
	margin: 0 2px 0 0;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	border-radius: 30px;
}

/*-----------*/
/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.detailMainvisual02 {
		position: relative;
		min-height: 100px;
		display: block;
	}

	.detailMainvisual02 .detailMainBox {
		padding: 0 0;
	}

	.detailMainvisual02 .detailMainTb {
		display: table;
		width: 100%;
		height: 100%;
		min-height: auto;
		padding: 10px 0;
	}

	.detailMainvisual02 .detailMainCell {
		display: table-cell;
		text-align: left;
		vertical-align: middle;
		box-sizing: border-box;
		height: auto;
		color: #2B2A2A;
		padding: 20px;
	}

	.detailMainvisual02 .detailTtl {
		background: #2B2A2A;
		min-width: auto;
		width: auto;
		height: auto;
		line-height: 25px;
		font-size: 14px;
		font-weight: 500;
		display: inline-block;
		text-align: center;
		margin: 0 auto 10px;
		padding: 5px 20px;
	}

	.detailMainvisual02 .detailSubttl {
		font-size: 18px;
		line-height: 1.6em;
		font-weight: 500;
		text-align: left;
		margin-top: 0;
		display: block;
	}

	/*-----------*/
}

/* =================================
	メインビジュアル3 ※セミナー情報
================================== */
.detailMainvisual03 {
	background: rgb(224, 243, 252);
	background: -moz-linear-gradient(156deg, rgba(224, 243, 252, 1) 0%, rgba(203, 237, 253, 1) 65%, rgba(206, 240, 255, 1) 100%);
	background: -webkit-linear-gradient(156deg, rgba(224, 243, 252, 1) 0%, rgba(203, 237, 253, 1) 65%, rgba(206, 240, 255, 1) 100%);
	background: linear-gradient(156deg, rgba(224, 243, 252, 1) 0%, rgba(203, 237, 253, 1) 65%, rgba(206, 240, 255, 1) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#e0f3fc", endColorstr="#cef0ff", GradientType=1);
	color: #2B2A2A;
	position: relative;
	display: table;
	width: 100%;
}

.detailMainvisual03 .detailMainTb {
	display: table;
	min-height: 277px;
	position: relative;
}

.detailMainvisual03 .detailMainCell {
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	box-sizing: border-box;
	color: #fff;
	padding: 47px 0;
}

.detailMainvisual03 .detailMainBox {
	display: block;
	box-sizing: border-box;
	padding: 0 0;
	vertical-align: middle;
	text-align: center;
	position: relative;
}

.detailMainvisual03 .detailMainBoxImg {
	position: absolute;
	top: 23px;
	right: -25px;
}

.detailMainvisual03 .detailTtl {
	background: #ffff;
	color: #334A85;
	min-width: 228px;
	height: auto;
	line-height: 1.8em;
	font-size: 20px;
	font-weight: 500;
	display: inline-block;
	text-align: center;
	margin: 0 auto 15px;
	padding: 4px 30px;
}

.detailMainvisual03 .detailSubttl {
	font-size: 32px;
	line-height: 1.7em;
	font-weight: 500;
	text-align: center;
	display: block;
	padding: 0 0;
	color: #2B2A2A;
}

.detailMainvisual03 .detailSubttl span {
	color: #FF8900;
}

.detailMainvisual03 .detailTxt {
	font-size: 20px;
	line-height: 1.7em;
	font-weight: 500;
	text-align: center;
	display: block;
	padding: 20px 0;
	color: #2B2A2A;
}


/*-----------*/
/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.detailMainvisual03 {
		position: relative;
		min-height: 100px;
		display: block;
	}

	.detailMainvisual03 .detailMainBox {
		padding: 0 0;
	}

	.detailMainvisual03 .detailMainBoxImg {
		position: static;
		margin: 0 auto;
		display: block;
		text-align: center;
	}

	.detailMainvisual03 .detailMainTb {
		display: table;
		width: 100%;
		height: 100%;
		min-height: auto;
		padding: 10px 0;
	}

	.detailMainvisual03 .detailMainCell {
		display: table-cell;
		text-align: left;
		vertical-align: middle;
		box-sizing: border-box;
		height: auto;
		color: #fff;
		padding: 20px;
	}

	.detailMainvisual03 .detailTtl {
		min-width: auto;
		width: auto;
		height: auto;
		line-height: 25px;
		font-size: 14px;
		font-weight: 500;
		display: inline-block;
		text-align: center;
		margin: 0 auto 10px;
		padding: 3px 20px;
	}

	.detailMainvisual03 .detailSubttl {
		font-size: 20px;
		line-height: 1.6em;
		font-weight: 500;
		text-align: center;
		margin-top: 0;
		display: block;
	}

	.detailMainvisual03 .detailTxt {
		font-size: 18px;
		line-height: 1.7em;
		font-weight: 500;
		text-align: center;
		display: block;
		padding: 20px 0;
		color: #2B2A2A;
	}

	/*-----------*/
}

/* =================================
	メインビジュアル4 ※セミナー詳細
================================== */
.detailMainvisual04 {
	background: #fff;
	color: #222;
	position: relative;
	display: table;
	width: 100%;

}

.detailMainvisual04 .detailMainTb {
	display: table;
	width: auto;
	min-height: 192px;
	position: relative;
}

.detailMainvisual04 .detailMainCell {
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	box-sizing: border-box;
	color: #fff;
	padding: 47px 0;
}

.detailMainvisual04 .detailMainBox {
	display: block;
	box-sizing: border-box;
	padding: 0 0;
	vertical-align: middle;
	text-align: center;
}

.detailMainvisual04 .detailTtl {
	background: #ffff;
	color: #334A85;
	min-width: 228px;
	height: auto;
	line-height: 1.8em;
	font-size: 20px;
	font-weight: 500;
	display: inline-block;
	text-align: center;
	margin: 0 auto 15px;
	padding: 4px 30px;
}

.detailMainvisual04 .detailSubttl {
	font-size: 37px;
	line-height: 1.7em;
	font-weight: 500;
	text-align: center;
	display: block;
	padding: 20px 0;
	color: #222;
}

.detailMainvisual .detailSubttl span {
	color: #FF8900;
}

.detailMainvisual04 .detailTxt {
	font-size: 20px;
	line-height: 1.7em;
	font-weight: bold;
	text-align: center;
	display: block;
	padding: 0;
	color: #2B2A2A;
}

/*------画像付き2カラムあり-----*/
.detailMainvisual04 .detailMainFlexBox {
	display: grid;
	grid-template-columns: 1fr minmax(375px, 450px);
	align-items: center;
	justify-content: space-between;
	padding: 0 0 10px;
	color: #222222;
}

.detailMainvisual04 .detailMainFlexTtl {
	font-size: 32px;
	font-weight: bold;
	line-height: 1.8em;
	padding: 0 0;
}

.detailMainvisual04 .detailMainFlexTxt01 {
	font-size: 20px;
	font-weight: bold;
	line-height: 1.8em;
}

.detailMainvisual04 .detailMainFlexTxt01 span {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.8em;
	border: 1px solid;
	padding: 0 10px;
	margin: 0 10px 0 0;
}

.detailMainvisual04 .detailMainFlexBoxImg {
	width: 100%;
}

.detailMainvisual04 .detailMainFlexBoxImg img {
	width: 100%;
	object-fit: contain;
}

.detailMainvisual04 .detailMainFlexBtn01 a {
	display: table;
	text-align: center;
	box-sizing: border-box;
	width: 260px;
	line-height: 3.125;
	height: 65px;
	font-size: 16px;
	letter-spacing: 0.05em;
	font-weight: 500;
	color: #2B2A2A;
	border: 1px solid #FFB100;
	background-color: #FFB100;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	position: relative;
	z-index: 1;
	overflow: hidden;
	margin: 20px 0 0;
}

.detailMainvisual04 .detailMainFlexBtn01 a span {
	display: table-cell;
	vertical-align: middle;
	position: relative;
}

.detailMainvisual04 .detailMainFlexBtn01 a span.ico::before {
	content: "";
	background-image: url(../img/top/download_ico.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	padding-left: 28px;
	display: inline-block;
	width: 15px;
	height: 20px;
	margin-top: 0;
	position: relative;
	left: 0;
	top: 4px;

}

.detailMainvisual04 .detailMainFlexBtn01 a span.downloadIco::before {
	background-image: url(../img/top/download_ico.png);
}

.detailMainvisual04 .detailMainFlexBtn01 a:hover .downloadIco::before {
	background-image: url(../img/top/download_ico_on.png);
}

.detailMainvisual04 .detailMainFlexBtn01 a:hover {
	text-decoration: none;
	color: #FFB100;
	text-decoration: none;
}

.detailMainvisual04 .detailMainFlexBtn01 a:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #fff;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.detailMainvisual04 .detailMainFlexBtn01 a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/*リンク無し*/
.detailMainvisual04 .detailMainFlexBtn01 p {
	display: table;
	text-align: center;
	box-sizing: border-box;
	width: 260px;
	line-height: 3.125;
	height: 65px;
	font-size: 16px;
	letter-spacing: 0.05em;
	font-weight: 500;
	color: #2B2A2A;
	border: 1px solid #cfcfcf;
	background-color: #cfcfcf;
	position: relative;
	z-index: 1;
	overflow: hidden;
	margin: 20px 0 0;
}

.detailMainvisual04 .detailMainFlexBtn01 p span {
	display: table-cell;
	vertical-align: middle;
	position: relative;
}

/*-----------*/
/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.detailMainvisual04 {
		position: relative;
		min-height: 100px;
		display: block;
	}

	.detailMainvisual04 .detailMainBox {
		padding: 0 0;
	}

	.detailMainvisual04 .detailMainTb {
		display: table;
		width: 100%;
		height: 100%;
		min-height: auto;
		padding: 10px 0;
	}

	.detailMainvisual04 .detailMainCell {
		display: table-cell;
		text-align: left;
		vertical-align: middle;
		box-sizing: border-box;
		height: auto;
		color: #fff;
		padding: 20px 0;
	}

	.detailMainvisual04 .detailTtl {
		min-width: auto;
		width: auto;
		height: auto;
		line-height: 25px;
		font-size: 14px;
		font-weight: 500;
		display: inline-block;
		text-align: center;
		margin: 0 auto 10px;
		padding: 3px 20px;
	}

	.detailMainvisual04 .detailSubttl {
		font-size: 18px;
		line-height: 1.6em;
		font-weight: 500;
		text-align: center;
		margin-top: 0;
		display: block;
	}

	/*-----------*/
	/*---2カラムボタン---*/
	.detailMainvisual04 .detailMainBtnBox01 {
		margin: 10px 10px 0;
		width: 100%;
		display: block;
	}

	.detailMainvisual04 .detailMainBtnBox01>.detailMainBtnBox01In {
		margin: 10px auto 0;
		text-align: center;
	}

	.detailMainvisual04 .detailMainBtnBox01>.detailMainBtnBox01In a {
		padding: 0 20px;
		font-size: 14px;
	}

	/*------画像付き2カラムあり-----*/
	.detailMainvisual04 .detailMainFlexBox {
		display: block;
		padding: 5px 0 10px;
	}

	.detailMainvisual04 .detailMainFlexBoxTxt {
		width: 100%;
	}

	.detailMainvisual04 .detailMainFlexTtl {
		font-size: 16px;
		font-weight: bold;
		line-height: 1.8em;
		padding: 0 0 10px;
	}

	.detailMainvisual04 .detailMainFlexTtl span {
		font-size: 12px;
		font-weight: bold;
		line-height: 1.8em;
		border: 1px solid;
		padding: 3px 15px;
		margin: 0 0 5px 0;
		display: inline-block;
	}

	.detailMainvisual04 .detailMainFlexTxt01 {
		font-size: 14px;
		font-weight: bold;
		line-height: 1.8em;
	}

	.detailMainvisual04 .detailMainFlexTxt01 span {
		font-size: 12px;
	}

	.detailMainvisual04 .detailMainFlexBoxImg {
		margin: 10px auto 0;
		width: auto;
	}

	.detailMainvisual04 .detailMainFlexBoxImg img {
		width: 100%;
	}

	.detailMainvisual04 .detailMainFlexBtn01 a,
	.detailMainvisual04 .detailMainFlexBtn01 p {
		width: 250px;
		line-height: 40px;
		height: 40px;
		font-size: 16px;
		margin: 20px auto 0;
	}


	/*-----------*/
	/*-----------*/
}


/* ------- ページ内リンク② 3カラム　矢印「＞」※サービス詳細で使用 -------- */
.pageNaviWrap01 {
	padding: 45px 0px 35px 0px;
	color: #fff;
}

.pageNavi01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 0;
	margin: 0;
}

.pageNavi01 li {
	width: 340px;
	margin: 0px 20px 15px 0;
	display: inline-block;
}

.pageNavi01 li:nth-child(3n) {
	margin: 0 0 15px 0;
}

.pageNavi01 li:last-child {
	margin: 0 0 15px 0;
}

.pageNavi01 li .pageNaviBtn01 {
	display: table;
	width: 100%;
	height: 100%;
	margin: auto;
	position: relative;
}

.pageNavi01 li .pageNaviBtn01 a {
	display: table-cell;
	text-align: center;
	vertical-align: top;
	box-sizing: border-box;
	padding: 15px 10px;
	min-height: 30px;
	font-size: 16px;
	line-height: 1.1em;
	font-weight: bold;
	border: 1px solid #334A85;
	color: #334A85;
	background-color: #fff;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;

}

.pageNavi01 li .pageNaviBtn01 a:link {
	color: #334A85;
	text-decoration: none;
}

.pageNavi01 li .pageNaviBtn01 a:visited {
	color: #334A85;
	text-decoration: none;
}

.pageNavi01 li .pageNaviBtn01 a:hover {
	color: #fff;
	background-color: #334A85;
	text-decoration: none;
}

.pageNavi01 li .pageNaviBtn01 a:active {
	color: #fff;
	text-decoration: none;
}

/*矢印なし*/
.pageNavi01.arrowNon li .pageNaviBtn01:after,
.pageNavi01.arrowNon li .pageNaviBtn01:hover:after {
	content: none;
}

.pageNavi01.arrowNon li .pageNaviBtn01 span.txt {
	font-size: 14px;
	line-height: 1.56;
	font-weight: normal;
}

.pageNavi01 li .pageNaviBtn01:after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 8px;
	border-color: transparent transparent transparent #334A85;
	position: absolute;
	right: 10px;
	margin-top: -5px;
	top: 50%;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.pageNavi01 li .pageNaviBtn01:hover:after {
	border-color: transparent transparent transparent #fff;
}

.pageNavi01 li .pageNaviBtn01 span.ttl {
	display: block;
	font-size: 18px;
	line-height: 1.1em;
}

.pageNavi01 li .pageNaviBtn01 span.txt {
	display: block;
	font-size: 14px;
	line-height: 1.6em;
	text-align: center;
	color: #2B2A2A;
	padding: 5px 20px 0 10px;
}

.pageNavi01 li .pageNaviBtn01:hover span.txt {
	color: #fff;
}

/*--ボタン中心寄せ--*/
.pageNaviWrap01.btnCenter .pageNavi01 {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.pageNaviWrap01.btnCenter .pageNavi01 li {
	margin: 0px 10px 15px 0;
}

/*--ボタン矢印下向き--*/
.pageNavi01 li .pageNaviBtn01.arrowB:after {
	-webkit-transform: rotate(93deg);
	transform: rotate(93deg);
}


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

	/*-----------*/
	/* ------- ページ内リンク② 3カラム -------- */
	.pageNaviWrap01 {
		padding: 20px 20px 0 20px;
	}

	.contIn .pageNaviWrap01 {
		padding: 20px 0 0 0;
	}

	.pageNavi01 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		-webkit-flex-wrap: wrap;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.pageNavi01 li {
		width: 47%;
		margin: 0 10px 10px 0;
		display: inline-block;
	}

	.pageNavi01 li:nth-child(3n) {
		margin: 0px 0 10px 0;
	}

	.pageNavi01 li:nth-child(2n) {
		margin: 0px 0 10px 0;
	}

	.pageNavi01 li .pageNaviBtn01 {
		display: table;
		width: 100%;
		margin: auto;
		position: relative;
		padding-bottom: 10px;
	}

	.pageNavi01 li .pageNaviBtn01.arrowB:after {
		top: initial;
		bottom: 15px;
		left: 0;
		right: 0;
		margin: auto;
	}

	.pageNavi01 li .pageNaviBtn01 a {
		text-align: center;
		min-height: 35px;
		font-size: 14px;
		line-height: 1.1em;
		padding: 5px 10px 15px;
		width: 100%;
	}

	.pageNavi01 li .pageNaviBtn01 span.ttl {
		font-size: 16px;
	}

	.pageNavi01 li .pageNaviBtn01 span.txt {
		font-size: 14px;
		line-height: 1.6em;
		text-align: left;
		padding: 5px 10px 0 10px;
	}

	/*矢印なし*/
	.pageNavi01.arrowNon li .pageNaviBtn01 a {
		padding: 10px 0 0;
	}

	.pageNavi01.arrowNon li .pageNaviBtn01 span.txt {
		font-size: 12px;
		line-height: 1.6em;
		text-align: left;
		padding: 5px 10px 0 10px;
	}

	/*-----------*/
	/*--ボタン中心寄せ--*/
	.pageNaviWrap01.btnCenter .pageNavi01 li {
		margin: 0 10px 10px 0;
	}

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

}

/* -------------------------------------------------------------------- 
デフォルト　詳細
-------------------------------------------------------------------- */
.defaultDetailBlock01 {
	word-break: break-all;
	text-align: left;
}

.defaultDetailBox01 {}

.defaultDetailBoxIn01 {}

.defaultDetailBlock01 .defaultDetailTtl,
.pageWrap .defaultDetailBlock01 .defaultDetailTtl {
	font-size: 32px;
	line-height: 1.43;
	font-weight: bold;
	color: #334A85;
	padding: 0 0 20px;
	text-align: left;
	border: none;
	margin-bottom: 0;
}

.defaultDetailBlock01 .defaultDetailTtl.fs24 {
	font-size: 24px;
	line-height: 1.666;
	padding: 0 0 10px;
}

.defaultDetailBlock01 .articleWrap {
	margin-top: 50px;
}

/*見出し*/
.defaultDetailBlock01 .defaultDetailBox01 h2 {
	font-size: 24px;
	line-height: 1.666;
	font-weight: bold;
	color: #334A85;
	padding: 0 0 10px;
	text-align: left;
	border-bottom: 4px solid #E6E6E6;
	margin-bottom: 40px;
}

.defaultDetailBlock01 .defaultDetailBox01 h3 {
	color: #334A85;
	font-size: 20px;
	line-height: 1.43;
	font-weight: bold;
}

.defaultDetailBlock01 .defaultDetailCat {
	font-size: 17px;
	line-height: 1.8em;
	letter-spacing: 00.05em;
	font-weight: bold;
	color: #334A85;
	border: solid 1px;
	padding: 0px 9px;
	margin-bottom: 10px;
	text-align: left;
	display: inline-block;
}

.defaultDetailBlock01 .defaultDetailDateBox {
	display: table;
	padding: 0 0 20px;
}

.defaultDetailDateBox .defaultDetailtDate {
	font-size: 16px;
	line-height: 1.875;
	display: table-cell;
	padding: 0 10px 0 0;
}

.defaultDetailDateBox .defaultDetailCat {
	font-size: 12px;
	display: table-cell;
}

.defaultDetailDateBox .defaultDetailCat span {
	text-align: center;
	padding: 2px 10px;
	margin: 0 2px 0 0;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	border-radius: 30px;
}

.defaultDetailLine {
	border: 0;
	border-top: 4px solid #E6E6E6;
	padding-bottom: 40px;
}

.defaultDetailImg {}

.defaultDetailTxt {
	font-size: 16px;
	margin: 30px 0 0;
	text-align: left;
}

.defaultDetailMokujiBox01 {
	margin: 20px 0 70px;
	padding: 0;
	text-align: left;
	border: 1px solid #E6E7E7;
	background: var(--baby-blue);;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}

.defaultDetailMokujiTtl {
	font-size: 18px;
	margin: 0 0 10px;
	text-align: left;
	color: #092E57;
	font-weight: bold;
}

.defaultDetailMokujiBox01 ul,
.defaultDetailMokujiList {
	font-size: 16px;
	line-height: 1.617;
	text-align: left;
}

.defaultDetailMokujiBox01 ul li,
.defaultDetailMokujiList li {
	border-bottom: 1px solid #E6E7E7;
	padding: 0 0 5px 25px;
	margin: 10px 0 0;
	counter-increment: number;
	position: relative;
}

.defaultDetailMokujiBox01 ul li:before,
.defaultDetailMokujiList li:before {
	content: counter(number)".";
	display: inline-block;
	color: #092E57;
	font-weight: bold;
	position: absolute;
	left: 0;
	top: 0;
}

.defaultDetailMokujiBox01 ul li:last-child,
.defaultDetailMokujiList li:last-child {
	border-bottom: 0;
}

.defaultDetailMokujiBox01 ul li a:hover,
.defaultDetailMokujiList li a:hover {
	opacity: 0.6;
}

/* アコーディオン追記 */
/* 目次ボックス */
.defaultDetailMokujiBox01{
	margin:40px 0;
}

/* summary */
.defaultDetailMokujiTtl{
	cursor:pointer;
	font-weight:bold;
	font-size:18px;
	position:relative;
	padding: 20px 40px 10px;
	list-style:none;
}

/* デフォルト三角削除 */
.defaultDetailMokujiTtl::-webkit-details-marker{
	display:none;
}

/* ＋アイコン */
.defaultDetailMokujiTtl::after{
	content:"+";
	position:absolute;
	right:35px;
	top:55%;
	transform:translateY(-50%);
	font-size:22px;
	font-weight:bold;
	transition:0.3s;
}

/* 開いた時 − */
details[open] .defaultDetailMokujiTtl::after{
	content:"−";
}

.mokujiInner{
	overflow:hidden;
	height:auto;
    background: var(--mist-gray);
    padding: 10px 20px 20px;
}

/* リスト */
.mokujiList{
	padding-left:20px;
	margin-top:15px;
}

.mokujiList li{
	margin-bottom:8px;
}

.mokujiLink{
	text-decoration:none;
	color:#333;
}

.mokujiLink:hover{
	text-decoration:underline;
}

.defaultDetailContBlock01 {
	margin: 60px 0 0;
}

.defaultDetailTxtBox {
	margin: 0 0 80px;
}

.defaultDetailTxtBox h2,
.defaultDetailContTtl {
	font-size: 22px;
	line-height: 1.545;
	margin: 0 0 25px;
	padding: 0 0 5px;
	text-align: left;
	font-weight: bold;
	color: #2B2A2A;
	border-bottom: 2px solid #334A85;
}

.defaultDetailTxtBox h2 {
	margin: 0 0 25px;
	padding: 10px 0 5px;
}

.defaultDetailTxtBox .defaultDetailContTtl {
	margin: 20px 0;
}

.defaultDetailTxtBox h2 span,
.defaultDetailContTtl span {
	padding: 0 15px 0 0;
}

.defaultDetailTxtBox h3 {
	font-size: 19px;
	letter-spacing: 0.05em;
	margin: 40px 0 20px;
	padding: 0 0 0 25px;
	line-height: 1.17;
	text-align: left;
	font-weight: bold;
	color: #2B2A2A;
	border-left: 2px solid #334A85;
}

/*画像並び*/
.defaultDetailTxtBox .img_left .img01Wrap .img01 img {
	margin: 0 auto 0 0;
}

.defaultDetailTxtBox .img_center .img01Wrap .img01 img {
	margin: 0 auto;
}

.defaultDetailTxtBox .img_right .img01Wrap .img01 img {
	margin: 0 0 0 auto;
}

.defaultDetailContTxt01 {
	font-size: 16px;
	text-align: left;
	margin: 20px 0 0;
}

.defaultDetailContTxt01 p {}

.defaultDetailDonloadBox01 {
	margin-top: 60px;
}

/*この記事を読んだ人～*/
.defaultDetailRelationBlock01 {
	padding-bottom: 20px;
}

.defaultDetailRelationLink {
	border: 3px solid #334A85;
	margin: 40px 0 0;
	padding: 20px 35px 10px;
	box-sizing: border-box;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}

.defaultDetailRelationLink dt {
	color: #334A85;
	font-size: 22px;
	padding: 10px 10px;
	text-align: left;
	font-weight: bold;

}

.defaultDetailRelationLink dd {
	padding: 20px 0 10px;
	text-align: left;
	font-size: 16px;
	margin: 0;
}

.defaultDetailRelationLink dd p {
	position: relative;
	text-align: left;
	padding: 0 0 0 40px;
	margin: 0 0 15px;
	word-break: break-word;
}

.defaultDetailRelationLink dd p:before {
	content: "";
	background: url(../img/ico/checkmark.png)no-repeat;
	background-size: 100%;
	position: absolute;
	width: 23px;
	height: 23px;
	left: 10px;
	margin-top: -10px;
	top: 10px;
	display: inline-block;
}

.defaultDetailRelationLink dd a {
	color: #17A8FF;
	font-weight: bold;
	text-decoration: underline;
}

.defaultDetailRelationLink dd a:hover {}

.defaultDetailPager01 {
	font-size: 16px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding: 90px 0 30px;
}

.defaultDetailPager01 a:hover {
	text-decoration: underline;
}

.defaultDetailPager.left {
	position: relative;
	padding: 0 30px;
	width: 160px;
}

.defaultDetailPager.left a {
	position: relative;
	display: block;
}

.defaultDetailPager.left a:before {
	position: absolute;
	top: 50%;
	bottom: 0;
	left: -25px;
	margin: -4px auto 0;
	content: "";
	vertical-align: middle;
	width: 8px;
	height: 8px;
	border-top: 2px solid #313131;
	border-right: 2px solid #313131;
	-webkit-transform: rotate(228deg);
	transform: rotate(228deg);
}

.defaultDetailPager.center {
	color: #092E57;
	padding: 0 30px;
	border-left: 1px solid #9F9F9F;
	border-right: 1px solid #9F9F9F;
}

.defaultDetailPager.right {
	position: relative;
	padding: 0 30px;
	width: 160px;
}

.defaultDetailPager.right a {
	position: relative;
	display: block;
}

.defaultDetailPager.right a:after {
	position: absolute;
	top: 50%;
	bottom: 0;
	right: -25px;
	margin: -4px auto 0;
	content: "";
	vertical-align: middle;
	width: 8px;
	height: 8px;
	border-top: 2px solid #313131;
	border-right: 2px solid #313131;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.defaultDetailTxtBox {
	text-align: left;
	font-size: 16px;
	line-height: 2.0em;
	word-break: break-all;
}

.defaultDetailTxtBox .w100p {
	width: 100%;
}

.defaultDetailTxtBox p {
	margin-bottom: 10px;
	font-size: 16px;
	line-height: 1.875;
}

.defaultDetailTxtBox>ul.list {
	position: relative;
	padding-left: 20px;
	font-size: 16px;
}

.defaultDetailTxtBox>ul.list li::before {
	content: "・";
	position: absolute;
	left: 0;
}

.defaultDetailTxtBox a {
	text-decoration: underline;
	transition-duration: 0.3s;
}

.defaultDetailTxtBox a:hover {
	color: #2F2F2F;
	filter: alpha(opacity=70);
	-moz-opacity: 0.7;
	opacity: 0.7;
	transition-duration: 0.3s;
}

.defaultDetailTxtBox img {
	width: auto;
	max-width: 100%;
	margin: 0 auto;
	display: block;
}

.defaultDetailTxtBox img.wAuto {
	width: auto;
}

.defaultDetailTxtBoxImg {
	margin: 0 auto 20px;
}

.defaultDetailTxtBoxImgCap {
	font-size: 12px;
	margin: 0 0 0;
	line-height: 1.8;
}

.defaultDetailTxtBox b,
.defaultDetailTxtBox strong {
	font-weight: bolder;
}

/*-はてなブログ-*/
.defaultDetailTxtBox .table-of-contents {
	margin: 20px 0 0;
	padding: 30px 40px 20px;
	text-align: left;
	border: 1px solid #E6E7E7;
	background: #F9FBFC;
}

.defaultDetailTxtBox .table-of-contents::before {
	content: "目次";
	display: block;
	font-size: 18px;
	margin: 0 0 10px;
	text-align: left;
	color: #092E57;
	font-weight: bold;
}

.defaultDetailTxtBox .table-of-contents a {
	color: #454545;
}

.defaultDetailTxtBox .table-of-contents li {
	margin: 0 0 0 1.4em;
	list-style-type: decimal;
}

.defaultDetailTxtBox .table-of-contents li ul {
	margin: 0 0 1em .5em;
}

.defaultDetailTxtBox .table-of-contents li ul li {
	margin: 4px;
}

/* 目次カスタマイズ */
.defaultDetailTxtBox ul.table-of-contents a {
	text-decoration: none;
	/* リンク下線なし */
}

.defaultDetailTxtBox .table-of-contents li {
	list-style-type: disc;
	/* 大見出し：黒丸 */
	font-weight: bold;
	/* 太字 */
}

.defaultDetailTxtBox .table-of-contents li ul li {
	list-style-type: circle;
	/* 中見出し：白丸 */
	font-weight: normal;
	/* 文字標準 */
}

.defaultDetailTxtBox .table-of-contents li ul li ul li {
	list-style-type: square;
	/* 小見出し：黒四角 */
	font-weight: normal;
	/* 文字標準 */
}


/*---------*/
/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.pageContent.MediaDetail {}

	.defaultDetailTtl {
		font-size: 20px;
		font-weight: bold;
		color: #334A85;
		padding: 15px 0 10px;
		text-align: left;
	}

	.defaultDetailBlock01 .defaultDetailTtl.fs24 {
		font-size: 20px;
		line-height: 1.666;
		padding: 0 0 10px;
	}

	/*見出し*/
	.defaultDetailBlock01 .defaultDetailBox01 h2 {
		font-size: 20px;
		line-height: 1.666;
		font-weight: bold;
		padding: 0 0 10px;
		border-bottom: 4px solid #E6E6E6;
		margin-bottom: 20px;
	}

	.defaultDetailBlock01 .articleWrap {
		margin-top: 30px;
	}

	.defaultDetailBlock01 .defaultDetailBox01 h3 {}

	.defaultDetailDateBox {
		display: table;
		padding: 0 0 10px;
	}

	.defaultDetailLine {
		padding-bottom: 20px;
	}

	.defaultDetailTxt {
		font-size: 16px;
		margin: 20px 0 0;
		text-align: left;
	}

	.defaultDetailMokujiBox01 {
		margin: 20px 0 0;
		padding: 15px 20px 0;
		text-align: left;
		border: 1px solid #E6E7E7;
		background: #F9FBFC;
	}

	.defaultDetailMokujiTtl {
		font-size: 16px;
		margin: 0 0;
		text-align: center;
	}

	.defaultDetailMokujiBox01 ul li,
	.defaultDetailMokujiList li {
		font-size: 14px;
	}

	.defaultDetailMokujiBox01 ul li:before,
	.defaultDetailMokujiList li:before {
		top: 2px;
	}

	.defaultDetailContBlock01 {
		margin: 30px 0 0;
	}

	.defaultDetailTxtBox {
		margin: 0 0 40px;
	}

	.defaultDetailTxtBox h2,
	.defaultDetailContTtl {
		font-size: 16px;
		margin: 0 0 20px;
		text-align: left;
		font-weight: bold;
		padding: 0 0 10px;
	}

	.defaultDetailTxtBox h2 {
		margin: 20px 0 20px;
		padding: 10px 0 10px;
	}

	.defaultDetailTxtBox h3 {
		font-size: 14px;
		margin: 30px 0 10px;
		padding: 0 0 0 10px;
		text-align: left;
		font-weight: bold;
		line-height: 1.5;
	}

	.defaultDetailTxtBox>ul.list {
		position: relative;
		padding-left: 20px;
		font-size: 14px;
	}

	.defaultDetailTxtBox p {
		margin-bottom: 10px;
		font-size: 14px;
		line-height: 1.875;
	}

	.defaultDetailContTxt01 {
		font-size: 16px;
		text-align: left;
		margin: 10px 0 0;
	}

	.defaultDetailPager01 {
		font-size: 12px;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-pack: center;
		-ms-flex-pack: center;
		justify-content: center;
		padding: 40px 0 10px;
		width: 100%;
	}

	.defaultDetailRelationLink {
		border: 1px solid #092E57;
		margin: 20px 0 0;
		padding: 20px 20px 10px;
	}

	.defaultDetailRelationLink dt {
		font-size: 16px;
		line-height: 1.6em;
		padding: 10px 0;
		text-align: left;
		font-weight: bold;
	}

	.defaultDetailRelationLink dd {
		padding: 10px 0 0;
		text-align: left;
		font-size: 14px;
	}

	.defaultDetailRelationLink dd p:before {
		top: 10px;
	}

	.defaultDetailPager.left {
		position: relative;
		padding: 0 20px;
		width: 30px;
	}

	.defaultDetailPager.center {
		color: #092E57;
		padding: 0 10px;
		border-left: 1px solid #9F9F9F;
		border-right: 1px solid #9F9F9F;
	}

	.defaultDetailPager.right {
		position: relative;
		padding: 0 20px;
		width: 30px;
	}

	.defaultDetailTxtBox img {
		width: auto;
		max-width: 100%;
		margin: 0 auto;
	}

	.defaultDetailTxtBoxImg {
		margin: 0 auto 30px;
	}

	.defaultDetailDonloadBox01 {
		margin-top: 30px;
	}

	/*---------*/
}




/* -------------------------------------------------------------------- 
文字色
-------------------------------------------------------------------- */
/* 白 */
.pageWrap .txtWh {
	color: #fff !important;
}

/* 黒 */
.pageWrap .txtBk {
	color: #2B2A2A !important;
}

/* 濃い緑 */
.pageWrap .txtGr {
	color: #204632 !important;
}

/* コーポレートカラー */
.pageWrap .txtGr2 {
	color: #334A85 !important;
}

/* 黄緑 */
.pageWrap .txtLitGr {
	color: #699D00 !important;
}

.pageWrap .txtLitGr2 {
	color: #8DC21F !important;
}






/* -------------------------------------------------------------------- 
 背景色
-------------------------------------------------------------------- */
/* 白 */
.bgWh {
	background-color: #fff !important;
}

/* 薄いグレー */
.bgLitGy {
	background-color: #F7F7F7 !important;
}


/*灰色*/
.pageWrap .bgGy {
	background: #F7F7F7;
}

/*少し濃い灰色*/
.pageWrap .bgGy2 {
	background: #E0E0E0;
}

/*緑色*/
.pageWrap .bgGr {
	background: #F4F9F8;
}

/*濃い緑色*/
.pageWrap .bgDrGr {
	background: #334A85;
	color: #fff;
}

/* 薄いグレー */
.bgLitGr {
	background-color: #F5F6F9 !important;
}

.bgLitGr2 {
	background-color: #F5F6F9 !important;
}

.bgLitGr3 {
	background-color: #F9F9F9 !important;
}

/* 薄い水色 */
.bgLitBl {
	background-color: #ECF3F8 !important;
}


/* ==============================================
	コンテンツ
=============================================== */

.pageWrap {}

.pageWrap .sec_ttl {
	font-weight: 700;
	text-align: center;
}

.pageWrap .sec_ttl_en {
	font-size: 16px;
	line-height: 1;
	color: #334A85;
	display: inline-block;
	position: relative;
	font-family: 'Jost', sans-serif;
	letter-spacing: 3px;
	font-weight: 400;
	margin: 0 0 30px;
}

.pageWrap .sec_ttl_en::before {
	content: "";
	display: block;
	position: absolute;
	bottom: -7px;
	left: -21px;
	height: 45px;
	border-left: 1px solid #85B71D;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}

.pageWrap .sec_ttl_jp {
	font-size: 28px;
	line-height: 1.5;
	letter-spacing: 0.05em;
	text-align: center;
	display: block;
	position: relative;
	padding: 0 0 40px;
}

.pageWrap .sec_ttl_jp span {
	color: #334A85;
	font-weight: bold;
}

.pageWrap .sec_subttl_jp {
	font-size: 20px;
	line-height: 1.5;
	font-weight: normal;
	text-align: center;
	display: block;
	position: relative;
	padding: 0 0 20px;
}

.pageWrap p.leadTxt {
	margin-bottom: 50px;
	font-size: 16px;
	line-height: 2;
}

.pageWrap section .secTitleBlock {
	padding: 20px 0;
	margin-bottom: 50px;
}

.pageWrap section .secTitleBlock .secTitle {
	font-size: 35px;
	line-height: 1.5;
	font-weight: bold;
	text-align: left;
}

.pageWrap section .secTitleBlock .secSubTitle {
	font-size: 18px;
	line-height: 1.5;
	margin-bottom: 5px;
	text-align: left;
}

/*@media all and (min-width: 0px) and (max-width: 768px) */
@media all and (min-width: 0px) and (max-width: 768px) {
	.pageWrap section .secTitleBlock {
		padding: 10px 0;
		margin-bottom: 20px;
	}

	.pageWrap section .secTitleBlock .secTitle {
		font-size: 20px;
		line-height: 1.5;
	}

	.pageWrap section .secTitleBlock .secSubTitle {
		font-size: 16px;
		line-height: 1.5;
		margin-bottom: 10px;
	}

	.pageWrap .sec_ttl_jp {
		font-size: 18px;
		line-height: 1.5;
		text-align: center;
		display: block;
		position: relative;
		padding: 0 0 20px;
	}

	.pageWrap .sec_subttl_jp {
		font-size: 16px;
		padding: 0 0 20px;
	}

	.pageWrap p.leadTxt {
		margin-bottom: 20px;
		text-align: left;
	}
}

/*--------------------------------
テキスト　+　画像　横並び　
--------------------------------*/
/*--------------------*/
.pageWrap .defaultTxtImgBox01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0 0 50px;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.pageWrap .defaultTxtImgBox01.aFlexS {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: flex-start;
}

/*下揃え*/
.pageWrap .defaultTxtImgBox01.alBt {
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
}

.pageWrap .defaultTxtImgBox01.alBt .txtArea {
	padding: 0 0 40px;
}

/**/
.pageWrap .defaultTxtImgBox01.reverse {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}

.pageWrap .defaultTxtImgBox01.reverse .imgArea {
	padding: 0 0 0 20px;
	text-align: right;
}

.pageWrap .defaultTxtImgBox01 .imgArea {
	padding: 0 20px 0 0;
}

.pageWrap .defaultTxtImgBox01 .imgArea img {
	width: auto;
	max-width: 100%;
}

.pageWrap .defaultTxtImgBox01 .wAuto {
	width: auto;
}

.pageWrap .defaultTxtImgBox01 .txtArea {
	/*color: #333333;*/
	word-break: break-word;
	flex: 1;
}

.pageWrap .defaultTxtImgBox01 .txtArea .text01 {
	font-size: 16px;
	line-height: 2;
	text-align: left;
}

.pageWrap .defaultTxtImgBox01 .txtArea .txtAreaTtl {
	font-size: 19px;
	line-height: 1.68;
	letter-spacing: 0.05em;
	font-weight: bold;
	text-align: left;
	margin: 0 0 10px;
	padding-left: 20px;
	border-left: solid 2px #334A85;
}

.pageWrap .defaultTxtImgBox01 .txtArea .txtAreaBtn {
	margin: 30px auto 0;
}

.pageWrap a.defaultTxtImgBox01:hover .txtAreaBtn .contBtn02 {
	color: #4fb5ea;
	background: #ffffff;
	text-decoration: none;
}

/*逆*/
.defaultTxtImgBox01 .imgArea:last-child {
	padding: 0 0 0 50px;
}

.defaultTxtImgBox01 .imgArea img {
	width: 100%;
}

/*---人物画像のとき---*/
.defaultTxtImgBox01.lecturer .imgArea {
	width: 220px;
}

.defaultTxtImgBox01.lecturer .txtArea {
	width: 835px;
	width: calc(100% - 220px);
}


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

	/*--------------------*/
	.pageWrap .defaultTxtImgBox01 {
		display: block;
		margin: 10px 0 20px;
		padding: 0 0;
	}

	.pageWrap .detailFlex02 .defaultTxtImgBox01 {
		margin: 0 0 0;
		padding: 0;
	}

	.pageWrap .defaultTxtImgBox01 .txtArea .txtAreaTtl {
		font-size: 18px;
		line-height: 1.8em;
		margin: 0 0 10px;
	}

	.pageWrap .defaultTxtImgBox01 .imgArea {
		padding: 0;
		width: 100%;
		margin: 0 auto 10px;
	}

	.pageWrap .defaultTxtImgBox01.reverse .imgArea {
		padding: 0 0 10px;
		text-align: center;
	}

	.pageWrap .defaultTxtImgBox01 .imgArea img {
		width: auto;
		height: auto;
		display: block;
		margin: 0 auto;
		max-width: 100%;
	}

	.pageWrap .defaultTxtImgBox01 .imgArea img.wAuto {
		width: 100%;
	}

	.pageWrap .defaultTxtImgBox01 .txtArea {}

	/*下揃え*/
	.pageWrap .defaultTxtImgBox01.alBt .txtArea {
		padding: 0 0;
	}

	.pageWrap .defaultTxtImgBox01 .txtArea .text01 {
		font-size: 14px;
		line-height: 1.8em;
		text-align: left;
		padding: 0;
	}

	.pageWrap .defaultTxtImgBox01 .txtArea .txtAreaBtn {
		margin: 10px auto 0;
		width: 100%;
	}

	/*---人物画像のとき---*/
	.defaultTxtImgBox01.lecturer .imgArea {
		width: 220px;
	}

	.defaultTxtImgBox01.lecturer .txtArea {
		width: 100%;
	}

	/*--------------------*/
}

/*--------------------------------
ここが違うデザイン
--------------------------------*/
.pageWrap .defaultContTb01 {
	display: table;
	width: 100%;
	-webkit-border-radius: 8px;
	-moz-border-radius: 8px;
	border-radius: 8px;
}

.pageWrap .defaultContTb01.boxShadow02 {}

.pageWrap .defaultContTb01.erase {
	position: relative;
}

.pageWrap .defaultContTb01.erase::after {
	position: absolute;
	content: "";
	display: block;
	transform: rotate(10deg);
	background-color: #333333;
	width: 100%;
	height: 1px;
	top: 50%;
	left: 0;
}

.pageWrap .defaultContTb01>.defaultContCell01 {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	box-sizing: border-box;
	background-color: #D9E1F5;
	border: 2px solid #334A85;
	border-right: 0;
	padding: 15px 16px 15px 16px;
	width: 214px;
	-moz-border-radius: 8px 0px 0px 8px;
	-webkit-border-radius: 8px 0px 0px 8px;
	-o-border-radius: 8px 0px 0px 8px;
	-ms-border-radius: 8px 0px 0px 8px;
	border-radius: 8px 0px 0px 8px;
}

.pageWrap .defaultContTb01>.defaultContCell02 {
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	background: #fff;
	border: 2px solid #334A85;
	border-left: 0;
	padding: 20px 24px 20px 24px;
	-moz-border-radius: 0px 8px 8px 0px;
	-webkit-border-radius: 0px 8px 8px 0px;
	-o-border-radius: 0px 8px 8px 0px;
	-ms-border-radius: 0px 8px 8px 0px;
	border-radius: 0px 8px 8px 0px;
}

.pageWrap .defaultContTb01>.defaultContCell01 .cellIn01 {
	display: inline-block;
	position: relative;
	color: #334A85;
	font-size: 18px;
	line-height: 2.222;
	letter-spacing: 0.05em;
	font-weight: 600;
	margin: 0;
}

.defaultContTb01 .defaultContUl01 {
	margin-top: 0;
	word-break: break-all;
}

.pageWrap .defaultContTb01 .defaultContUl01>li {
	position: relative;
	font-size: 16px;
	line-height: 1.625;
	letter-spacing: 0.05em;
	padding: 5px 0px 5px 35px;
	box-sizing: border-box;
	vertical-align: top;
}

.pageWrap .defaultContTb01 .defaultContUl01>li span {
	position: relative;
	font-size: 14px;
	line-height: 1.5em;
	display: block;
}

.pageWrap .defaultContTb01 .defaultContUl01>li.w48p {
	width: 48%;
	display: inline-block;
}

.pageWrap .defaultContTb01 .defaultContUl01>li.w45p {
	width: 45%;
	display: inline-block;
	box-sizing: border-box;
}

.pageWrap .defaultContTb01 .defaultContUl01>li::before {
	content: "";
	background-image: url(../img/service/list_ico.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100%;
	width: 23px;
	height: 23px;
	position: absolute;
	left: 0px;
	top: 8px;
}

/*---色---*/
/*灰色*/
.pageWrap .defaultContTb01.colorGy>.defaultContCell01 {
	background-color: #E4E4E4;
	border-top: 2px solid #9E9E9E;
	border-bottom: 2px solid #9E9E9E;
	border-left: 2px solid #9E9E9E;
}

.pageWrap .defaultContTb01.colorGy>.defaultContCell01 .cellIn01 {
	color: #2B2A2A;
}

.pageWrap .defaultContTb01.colorGy>.defaultContCell02 {
	border-top: 2px solid #9E9E9E;
	border-bottom: 2px solid #9E9E9E;
	border-right: 2px solid #9E9E9E;
}

.pageWrap .defaultContTb01.colorGy .defaultContUl01>li::before {
	background-image: url(../img/service/list_ico_bk.png);
}

/*---矢印---*/
.pageWrap .defaultContTb01.arrowB {
	margin-bottom: 110px;
	position: relative;
}

.pageWrap .defaultContTb01.arrowB:after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 35px 30px 0 30px;
	border-color: #334A85 transparent transparent transparent;
	position: absolute;
	bottom: -75px;
	left: 50%;
	margin-left: -25px;
}

/*2カラムの場合*/
.pageWrap .detailFlex02 .defaultContTb01 {
	display: block;
	margin: 20px 0 0;
	width: 495px;
}

.pageWrap .detailFlex02 .defaultContTb01 .defaultContCell01 {
	display: block;
	text-align: center;
	vertical-align: middle;
	box-sizing: border-box;
	color: #334A85;
	background-color: #EDEDED;
	border: 2px solid #334A85;
	border-bottom: 0;
	padding: 10px 20px;
	width: auto;
	-moz-border-radius: 8px 8px 0px 0px;
	-webkit-border-radius: 8px 8px 0px 0px;
	-o-border-radius: 8px 8px 0px 0px;
	-ms-border-radius: 8px 8px 0px 0px;
	border-radius: 8px 8px 0px 0px;
}

.pageWrap .detailFlex02 .defaultContTb01 .defaultContCell02 {
	display: block;
	text-align: left;
	vertical-align: middle;
	border: 2px solid #334A85;
	border-top: 0;
	padding: 10px 20px;
	-moz-border-radius: 0px 0px 8px 8px;
	-webkit-border-radius: 0px 0px 8px 8px;
	-o-border-radius: 0px 0px 8px 8px;
	-ms-border-radius: 0px 0px 8px 8px;
	border-radius: 0px 0px 8px 8px;
}

/*タイプ1※関連ページ*/
.pageWrap .defaultContTb01.type01 {
	background: #fff;
	margin: 60px 0;
}

.pageWrap .defaultContTb01.type01>.defaultContCell01 {
	border-color: #EDEDED;
	width: 144px;
	font-size: 18px;
	line-height: 1.6em;
	padding: 10px 16px;
	font-weight: 600;
}

.pageWrap .defaultContTb01.type01>.defaultContCell02 {
	border-color: #EDEDED;
	padding: 10px 25px;
}

.pageWrap .defaultContTb01.type01 .defaultContUl01>li {
	padding: 5px 0px 5px 15px;
}

.pageWrap .defaultContTb01.type01 .defaultContUl01>li::before {
	position: absolute;
	top: 50%;
	bottom: 0;
	left: 0;
	margin: -4px auto 0;
	content: "";
	vertical-align: middle;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 5px 0 5px 9px;
	border-color: transparent transparent transparent #334A85;
}


/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.pageWrap .defaultContTb01 {
		display: block;
		width: auto;
		margin: 20px auto;
	}

	.pageWrap .defaultContTb01>.defaultContCell01 {
		display: block;
		text-align: center;
		vertical-align: middle;
		box-sizing: border-box;
		color: #334A85;
		background-color: #EDEDED;
		border: 1px solid #334A85;
		border-bottom: 0;
		padding: 10px 20px;
		width: auto;
		-moz-border-radius: 8px 8px 0px 0px;
		-webkit-border-radius: 8px 8px 0px 0px;
		-o-border-radius: 8px 8px 0px 0px;
		-ms-border-radius: 8px 8px 0px 0px;
		border-radius: 8px 8px 0px 0px;
	}

	.pageWrap .defaultContTb01>.defaultContCell02 {
		display: block;
		text-align: left;
		vertical-align: middle;
		border: 1px solid #334A85;
		border-top: 0;
		padding: 10px 20px;
		-moz-border-radius: 0px 0px 8px 8px;
		-webkit-border-radius: 0px 0px 8px 8px;
		-o-border-radius: 0px 0px 8px 8px;
		-ms-border-radius: 0px 0px 8px 8px;
		border-radius: 0px 0px 8px 8px;
	}

	.pageWrap .defaultContTb01>.defaultContCell01 .cellIn01 {
		margin-bottom: 8px;
		font-size: 16px;
	}

	.pageWrap .defaultContTb01>.defaultContCell01 .cellIn01 img {
		width: auto;
		height: 23px;
	}

	.pageWrap .defaultContTb01>.defaultContCell01 .cellIn02 {
		display: inline-block;
		position: relative;
		color: #ffffff;
		font-size: 16px;
		line-height: 1.6em;
		font-weight: 500;
	}

	.pageWrap .defaultContTb01 .defaultContUl01>li {
		position: relative;
		font-size: 16px;
		line-height: 1.5em;
		padding: 5px 0px 5px 30px;
	}

	.pageWrap .defaultContTb01 .defaultContUl01>li::before {
		width: 20px;
		height: 20px;
		position: absolute;

	}

	.pageWrap .defaultContTb01 .defaultContUl01>li.w48p,
	.pageWrap .defaultContTb01 .defaultContUl01>li.w45p {
		width: 100%;
		display: block;
	}

	/*---色---*/
	/*灰色*/
	.pageWrap .defaultContTb01.colorGy>.defaultContCell01 {
		border-width: 1px;
		border-bottom: 0;
	}

	.pageWrap .defaultContTb01.colorGy>.defaultContCell02 {
		border-width: 1px;
		border-top: 0;
	}

	/*---矢印---*/
	.pageWrap .defaultContTb01.arrowB {
		margin-bottom: 45px;
		position: relative;
	}

	.pageWrap .defaultContTb01.arrowB:after {
		border-width: 25px 20px 0 20px;
		bottom: -35px;
		margin-left: -20px;
	}

	/*2カラムの場合*/
	.pageWrap .detailFlex02 .defaultContTb01 {
		display: block;
		margin: 20px 0 0;
		width: 100%;
	}

	.pageWrap .detailFlex02 .defaultContTb01 .defaultContCell01 {
		padding: 10px 20px;
	}

	.pageWrap .detailFlex02 .defaultContTb01 .defaultContCell02 {
		padding: 10px 20px;
	}

	/*タイプ1※関連ページ*/
	.pageWrap .defaultContTb01 {
		background: #fff;
	}

	.pageWrap .defaultContTb01.type01 {
		margin: 30px 0;
	}

	.pageWrap .defaultContTb01.type01>.defaultContCell01 {
		border-color: #EDEDED;
		width: 100%;
		font-size: 16px;
		line-height: 1.6em;
		padding: 5px 16px;
	}

	.pageWrap .defaultContTb01.type01>.defaultContCell02 {
		border-color: #EDEDED;
		padding: 5px 16px;
	}

	.pageWrap .defaultContTb01.type01 .defaultContUl01>li {
		padding: 5px 0px 5px 15px;
	}

	.pageWrap .defaultContTb01.type01 .defaultContUl01>li::before {
		top: 50%;
		margin: -4px auto 0;
	}
}

/*--------------------------------
その他のサービス
--------------------------------*/
.pageWrap .defaultContTb02 {
	display: table;
	width: 100%;
	margin: 30px auto 0px;
	background: #ededed;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}

.pageWrap .defaultContTb02>.defaultContCell01 {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	box-sizing: border-box;
	border-right: 0;
	padding: 15px 16px 15px 16px;
	width: 260px;
}

.pageWrap .defaultContTb02>.defaultContCell02 {
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	padding: 30px 24px 30px 24px;
}

.pageWrap .defaultContTb02>.defaultContCell01 .cellIn01 {
	display: inline-block;
	position: relative;
	color: #334A85;
	font-size: 22px;
	line-height: 1.6em;
	font-weight: bold;
}

.pageWrap .defaultContTb02 .defaultContUl01 {
	margin-top: 0;
}

.pageWrap .defaultContTb02 .defaultContUl01>li {
	position: relative;
	font-size: 18px;
	line-height: 1.5em;
	font-weight: bold;
	padding: 5px 0px 5px 35px;
}

.pageWrap .defaultContTb02 .defaultContUl01>li::before {
	content: "";
	background-color: #2B2A2A;
	position: absolute;
	left: 0px;
	top: 15px;
	width: 20px;
	height: 20px;
	position: absolute;
	left: 0px;
	top: 9px;
}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.pageWrap .defaultContTb02 {
		display: block;
		width: auto;
		margin: 20px auto 0px auto;
		padding: 20px 0 20px;
	}

	.pageWrap .defaultContTb02>.defaultContCell01 {
		display: block;
		text-align: center;
		vertical-align: middle;
		box-sizing: border-box;
		border-bottom: 0;
		padding: 5px 20px;
		width: auto;
	}

	.pageWrap .defaultContTb02>.defaultContCell02 {
		display: block;
		text-align: left;
		vertical-align: middle;
		padding: 0 20px;
	}

	.pageWrap .defaultContTb02>.defaultContCell01 .cellIn01 {
		margin-bottom: 8px;
	}

	.pageWrap .defaultContTb02>.defaultContCell01 .cellIn01 img {
		width: auto;
		height: 23px;
	}

	.pageWrap .defaultContTb02>.defaultContCell01 .cellIn02 {
		display: inline-block;
		position: relative;
		color: #ffffff;
		font-size: 16px;
		line-height: 1.6em;
		font-weight: 500;
	}

	.pageWrap .defaultContTb02>.defaultContUl01 li {
		position: relative;
		font-size: 13px;
		line-height: 1.5em;
		padding: 5px 0px 5px 35px;
	}

	.pageWrap .defaultContTb02>.defaultContUl01 li::before {
		width: 15px;
		height: 15px;
		position: absolute;
		left: 0px;
		top: 9px;
	}

}

/*--------------------------------
矢印　
--------------------------------*/
.pageWrap .arrowWrap {
	position: relative;
}

/*-----下------*/
.pageWrap .arrowWrap .arrowB {
	position: relative;
	display: block;
	height: 18px;
}

.pageWrap .arrowWrap .arrowB:after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 18px 25px 0 25px;
	border-color: #334A85 transparent transparent transparent;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 50%;
	margin-left: -25px;
}


/*@media all and (min-width: 0px) and (max-width: 768px) */
@media all and (min-width: 0px) and (max-width: 768px) {
	.pageWrap section {
		padding: 40px 0;
	}

	.pageWrap section .sec_ttl_jp {
		font-size: 20px;
		padding: 0 0 20px;
		text-align: left;
	}

	.pageWrap section p.leadTxt {
		margin-bottom: 30px;
		text-align: left;
	}
}

/*--------------------------------
content
--------------------------------*/
.contentWrap01 {
	width: 100%;
	position: relative;
	padding: 30px 0 30px;
}

.contentWrap01.w938 {
	width: 938px;
	margin: 0 auto;
}

.pageWrap .contentWrap01 .text01Wrap {
	padding: 30px 80px;
}

.pageWrap .contentWrap01 .defaultTxtImgBox01 {
	padding: 0 80px;
}

.pageWrap .contentWrap01 .detailFlex02 {
	padding: 0 80px;
}

.pageWrap .contentWrap01 .detailFlex02 li .btn01Wrap {
	margin-right: 0;
	margin-left: 0;
}

.contentWrap01 a.link {
	font-size: 14px;
	line-height: 1.8em;
	display: block;
	text-align: left;
	margin-top: 40px;
	color: #334A85;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	text-decoration: underline;
	padding: 0;
}

.contentWrap01 a.link:hover {
	opacity: .50;
}

/*----左寄シンプル下線デザイン---*/
.contentWrap01 .contentTtl {
	width: 100%;
	position: relative;
	padding: 0 75px 20px 75px;
	margin: 0 0 45px;
	text-align: left;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.4;
	letter-spacing: 0.04em;
	border-bottom: solid 1px #334a85;
	display: table;
	box-sizing: border-box;
}

.contentWrap01 .contentTtl span.num {
	font-size: 38px;
	font-family: 'Jost', sans-serif;
	font-weight: 300;
	color: #334A85;
	display: inline-block;
	margin-right: 30px;
	position: absolute;
	top: 50%;
	margin-top: -36px;
	left: 0;
}

.contentWrap01 .contentTtl.fs25 {
	font-size: 25px;
	padding: 0 20px 0 0;
}

.contentWrap01 .contentTtl.fs25 span.num {
	font-size: 54px;
	display: table-cell;
	vertical-align: middle;
	width: 80px;
	margin-top: 0;
	position: relative;
}

.contentWrap01 .contentTtl.fs25 span.txt {
	display: table-cell;
	vertical-align: middle;
	padding: 30px 0;
}

.contentWrap01 .contentTtl span.txt span {
	color: #334A85;
}

.contentWrap01 .contentSubTtl {
	width: 100%;
    position: relative;
    padding: 0 75px 20px 75px;
    margin: 0 0 24px;
    text-align: left;
    font-size: 18px;
    font-weight: bold;
    line-height: 1.4;
    letter-spacing: 0.04em;
}

.contentWrap01 .interviewer {
	padding: 0 80px 20px;
}

.contentWrap01 .interviewer .text01 {
    text-align: left;
    font-size: 20px;
    font-weight: bold;
    line-height: 1.4;
    letter-spacing: 0.04em;
}

.single-case .contentWrap01 .img01Wrap {
	padding: 20px 0 40px;
}

/*一覧用*/
.contentListWrap01 {
	padding: 40px 0 60px;
}

.contentListWrap01 .contentWrap01:after {
	content: "";
	width: 100%;
	height: 1px;
	background-color: #B1B1B1;
	margin: 70px 0;
	display: block;
}

.contentListWrap01 .contentWrap01.borderNon:after {
	background: none;
	margin: 30px 0;
}

.contentListWrap01 .contentWrap01:last-child::after {
	content: none;
}

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

	/*-----------*/
	.contentWrap01.w938 {
		width: auto;
		margin: 0 auto;
	}

	.contentWrap01 .contentTtl {
		padding: 0 0 10px 40px;
		margin: 0 0 10px;
		font-size: 16px;
		line-height: 1.8em;
	}

	.contentWrap01 .contentTtl span.num {
		top: 50%;
		font-size: 25px;
		margin-right: 15px;
		margin-top: -20px;
	}

	.contentWrap01 .contentTtl.fs25 {
		font-size: 16px;
		padding: 0 0 10px;
	}

	.contentWrap01 .contentTtl.fs25 span.num {
		font-size: 40px;
		width: 65px;
	}

	.contentWrap01 .contentTtl.fs25 span.txt {
		padding: 0 0;
	}

	.pageWrap .contentWrap01 .text01Wrap {
		padding: 20px 0;
	}

	.pageWrap .contentWrap01 .defaultTxtImgBox01 {
		padding: 0;
	}

	.pageWrap .contentWrap01 .detailFlex02 {
		padding: 0;
	}

	.contentWrap01 a.link {
		padding: 0;
	}

	/*一覧用*/
	.contentListWrap01 {
		padding: 20px 0 30px;
	}

	.contentListWrap01 .contentWrap01:after {
		margin: 30px 0;
	}

	.contentListWrap01 .contentWrap01.borderNon:after {
		margin: 10px 0;
	}
}


/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.contentWrap01 {
		padding: 20px 0;
	}
}


/*--------------------------------
画像とテキスト横並び　
--------------------------------*/
/*--------------------*/
.defaultTxtImgBlock01 {
	background: #fff;
	padding: 65px 70px;
	margin: 0 0 10px;
}

.defaultTxtImgBlock01 a.img_wrap {
	display: block;
}

.defaultTxtImgBlock01 a.img_wrap:hover {
	opacity: .5;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.defaultTxtImgBlock01 a.img_wrap:hover .contBtn01 {
	color: #191818;
	background-color: #fff;
	text-decoration: none;
}

.defaultTxtImgBox01 {
	display: table;
	margin: 50px 0;
}

.defaultTxtImgBox01 .imgArea {
	display: table-cell;
	padding: 0 50px 0 0;
	width: 420px;
}

/*逆*/
.defaultTxtImgBox01 .imgArea:last-child {
	padding: 0 0 0 50px;
}

.defaultTxtImgBox01 .imgArea img {
	width: 100%;
}

/*---幅---*/
.defaultTxtImgBox01 .imgArea.w325 {
	width: 325px;
}

.defaultTxtImgBox01 .imgArea.w469 {
	width: 469px;
}

/*---人物画像のとき---*/
.defaultTxtImgBox01.lecturer .imgArea {
	width: 271px;
}

.defaultTxtImgBox01 .imgArea .cap {
	font-size: 13px;
	line-height: 1.75em;
	margin-top: 10px;
	text-align: left;
}

.defaultTxtImgBox01 .txtArea {
	display: table-cell;
	vertical-align: top;
}

.defaultTxtImgBox01 .txtArea .text {
	font-size: 14px;
	line-height: 1.8em;
	text-align: left;
	padding-top: 15px;
}

.defaultTxtImgBox01 .txtArea .txtAreaTtl {
	font-size: 20px;
	line-height: 1.8em;
	font-weight: 500;
	text-align: left;
}

.defaultTxtImgBox01 .txtArea .txtAreaSubTtl {
	font-size: 18px;
	line-height: 1.8em;
	text-align: left;
	margin: 15px 0 30px;
}

.defaultTxtImgBox01 .txtArea .txtAreaSubTtl span {
	font-size: 15px;
	color: #191818;
	display: inline-block;
	line-height: 1.5em;
	margin: 0 10px 0 0;
	padding: 2px 10px;
	border: 1px solid #ABABAB;
}

.defaultTxtImgBox01 .txtArea .txtAreaBtn {
	margin: 30px 0 0;
}

a.defaultTxtImgBox01 .txtArea .txtAreaBtn .btn {
	width: 206px;
	height: 45px;
}

a.defaultTxtImgBox01 .contBtn01:link {
	color: #fff;
	text-decoration: none;
}

a.defaultTxtImgBox01 .contBtn01:visited {
	color: #fff;
	text-decoration: none;
}

a.defaultTxtImgBox01 .contBtn01:hover,
a.defaultTxtImgBox01:hover .contBtn01 {
	color: #191818;
	background-color: #fff;
	text-decoration: none;
}

a.defaultTxtImgBox01 .contBtn01:active {
	color: #191818;
	text-decoration: none;
}

/*---逆---*/
.defaultTxtImgBox01.reverse {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}

.defaultTxtImgBox01.reverse .imgArea {
	padding: 0 0 0 50px;
}

/*---画像エリアにボタン---*/
.defaultTxtImgBox01.btnImg {
	padding: 0 40px;
	margin: 50px 0 50px;
}

.defaultTxtImgBox01.btnImg .imgArea {
	padding: 0 0 0 120px;
}

/*
a.defaultTxtImgBox01.btnImg:hover .imgArea .contBtn02 {
	color:#4fb5ea;
	background: #ffffff;
	text-decoration: none;
}
*/


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

	/*--------------------*/
	.defaultTxtImgBlock01 {
		background: #fff;
		padding: 30px 30px;
		margin: 0 0 10px;
		display: block;
	}

	.defaultTxtImgBox01 {
		display: block;
		margin: 20px 0 0;
	}

	.defaultTxtImgBox01 .txtArea .txtAreaTtl {
		font-size: 16px;
		line-height: 1.8em;
	}

	.defaultTxtImgBox01 .txtArea .txtAreaSubTtl {
		font-size: 14px;
		line-height: 1.8em;
		text-align: left;
		margin: 5px 0 10px;
	}

	.defaultTxtImgBox01 .txtArea .txtAreaSubTtl span {
		font-size: 12px;
		margin: 0 10px 0 0;
	}

	.defaultTxtImgBox01 .txtArea .txtAreaSubTtl2 {
		font-size: 14px;
		line-height: 1.8em;
		text-align: left;
		margin: 5px 0 10px;
	}

	.defaultTxtImgBox01 .imgArea,
	.defaultTxtImgBox01 .imgArea.w325,
	.defaultTxtImgBox01 .imgArea.w469 {
		padding: 0;
		width: 100%;
		margin: 0 auto 20px;
		display: block;
	}

	/*逆*/
	.defaultTxtImgBox01 .imgArea:last-child {
		padding: 0 0 0;
	}

	.defaultTxtImgBox01 .imgArea img {
		width: 100%;
		height: auto;
	}

	/*---人物画像のとき---*/
	.defaultTxtImgBox01.lecturer .imgArea {
		width: 271px;
	}

	.defaultTxtImgBox01 .imgArea .cap {
		font-size: 14px;
		line-height: 1.75em;
		margin-top: 10px;
	}

	.defaultTxtImgBox01 .txtArea {
		margin: 0 auto 20px;
		display: block;
	}

	.defaultTxtImgBox01 .txtArea .text {
		font-size: 14px;
		line-height: 1.8em;
		text-align: left;
	}

	/*---逆---*/
	.defaultTxtImgBox01.reverse {}

	.defaultTxtImgBox01.reverse .imgArea {
		padding: 10px 0 0;
	}

	/*---画像エリアにボタン---*/
	.defaultTxtImgBox01.btnImg {
		padding: 0 0;
		margin: 20px 0 0;
	}

	.defaultTxtImgBox01.btnImg .imgArea {
		padding: 0 0 0;
		width: 100%;
	}

	/*--------------------*/
}

/*--------------------------------
title
--------------------------------*/
.pageWrap .title01Wrap {
	width: 100%;
	position: relative;
	padding: 0 0;
	text-align: left;
}

.pageWrap .title01Wrap:before {
	content: "";
	width: 100%;
	height: 1px;
	background-color: #334A85;
	position: absolute;
	top: 20px;
	left: 0;
}

.pageWrap .bgGy .title01 {
	background: #f7f7f7;
}

.pageWrap .title01 {
	font-size: 20px;
	line-height: 1.8em;
	font-weight: normal;
	position: relative;
	padding: 0 20px 0 0;
	background: #fff;
	display: inline-block;
	margin: 0;
}

.pageWrap .title01:after {
	content: none;
}

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

	/*-----------*/
	.pageWrap .title01Wrap {
		width: 100%;
		position: relative;
		padding: 0 0;
	}

	.pageWrap .title01 {
		font-size: 16px;
		line-height: 1.6em;
		text-align: left;
		padding: 0 0 0;
	}

	.pageWrap .title01Wrap:before {
		content: none;
	}
}

/*--------------------------------
title2
--------------------------------*/
.pageWrap .title02Wrap {
	width: 100%;
	position: relative;
	padding: 0 0 20px;
	margin: 0 0 60px;
	text-align: center;
}

.pageWrap .title02 {
	color: #2B2A2A;
	font-size: 24px;
	line-height: 1.714;
	letter-spacing: 0.05em;
	font-weight: 600;
	padding: 0;
	margin: 0;
}

.pageWrap .title02:after {
	content: "";
	width: 73px;
	height: 1px;
	background-color: #334A85;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	margin: 0 auto;
}

.pageWrap .title02 span {
	color: #334A85;
}

.pageWrap .title02 span.num {
	font-size: 38px;
	font-family: 'Jost', sans-serif;
	font-weight: 300;
	color: #334A85;
	display: inline-block;
	margin-right: 20px;
}

.pageWrap .title02 img {
	display: inline-block;
	vertical-align: middle;
	position: relative;
	top: -2px;
}

/*サイズ*/
.pageWrap .title02.fs20 {
	font-size: 20px;
}

.pageWrap .title02.fs22 {
	font-size: 22px;
}

.pageWrap .title02.fs28 {
	font-size: 28px;
	line-height: 1.785
}

.pageWrap .title02.fs30 {
	font-size: 30px;
}

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

	/*-----------*/
	.pageWrap .title02Wrap {
		padding: 0 0 10px;
		margin: 0 0 30px;
	}

	.pageWrap .title02 {
		font-size: 20px;
		line-height: 1.8em;
	}

	.pageWrap .title02 img.img {
		display: block;
		margin: 0 auto;
	}

	.pageWrap .title02 img.logo {
		width: 70%;
	}

	/*サイズ*/
	.pageWrap .title02.fs22,
	.pageWrap .title02.fs28,
	.pageWrap .title02.fs30 {
		font-size: 18px;
	}
}

/*--------------------------------
title3
--------------------------------*/
/*----左寄せデザイン---*/
.pageWrap .title03Wrap {
	width: 100%;
	position: relative;
	padding: 0 0 30px;
	margin: 0 0 30px;
	text-align: left;
	font-size: 28px;
	line-height: 1.8em;
}

.pageWrap .title03 {
	font-size: 28px;
	font-weight: 500;
}

.pageWrap .title03:after {
	content: "";
	width: 73px;
	height: 1px;
	background-color: #334A85;
	position: absolute;
	bottom: 0;
	left: 0;
	right: initial;
	margin: 0 auto;
}

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

	/*-----------*/
	.pageWrap .title03Wrap {
		padding: 0 0 15px;
		margin: 0 0 20px;
		font-size: 18px;
		line-height: 1.8em;
	}

	.pageWrap .title03 {
		font-size: 18px;
	}
}

/*--------------------------------
title4
--------------------------------*/
/*----中央寄せ文字だけデザイン---*/
.pageWrap .title04Wrap {
	font-size: 28px;
	line-height: 1.42;
	text-align: center;
	display: block;
	position: relative;
	padding: 40px 0 40px;
	font-family: 'Noto Sans JP', sans-serif;
}

.pageWrap .title04 {
	font-size: 28px;
	line-height: 1.8em;
	font-weight: 600;
	margin: 0;
}

.pageWrap .title04 span {
	color: #334A85;
	font-weight: bold;
}

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

	/*-----------*/
	.pageWrap .title04Wrap {
		padding: 20px 0 20px;
		font-size: 18px;
		line-height: 1.8em;
	}

	.pageWrap .title04 {
		font-size: 20px;
		line-height: 1.8em;
	}
}

/*--------------------------------
title5
--------------------------------*/
/*----左縦線ボーダー---*/
.pageWrap .title05Wrap {
	text-align: center;
	display: block;
	position: relative;
	padding: 30px 0 30px;
}

.pageWrap .title05 {
	font-size: 28px;
	line-height: 1.8em;
	letter-spacing: 0.05em;
	font-weight: 500;
	text-align: left;
	border-left: solid 6px #334A85;
	padding-left: 15px;
	margin: 0;
}

/*文字サイズ*/
.pageWrap .title05.fs19 {
	font-size: 19px;
	line-height: 1.17;
	padding-left: 25px;
	border-left: solid 2px #334A85;
}

.pageWrap .title05 span {
	color: #334A85;
	font-weight: bold;
}

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

	/*-----------*/
	.pageWrap .title05Wrap {
		padding: 20px 0 20px;
	}

	.pageWrap .title05 {
		font-size: 18px;
		line-height: 1.8em;
	}
}

/*--------------------------------
title6
--------------------------------*/
/*----左寄二重下線デザイン---*/
.pageWrap .title06Wrap {
	width: 100%;
	position: relative;
	padding: 0 0 15px;
	margin: 0 0 30px;
	text-align: left;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.6666;
	border-bottom: solid 1px #B4B3B3;
}

.pageWrap .title06 {
	font-size: 24px;
	font-weight: 500;
	padding: 0;
	margin: 0;
}

.pageWrap .title06:after {
	content: "";
	width: 121px;
	height: 1px;
	background-color: #334a85;
	position: absolute;
	bottom: -1px;
	left: 0;
	right: initial;
	margin: 0 auto;
}

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

	/*-----------*/
	.pageWrap .title06Wrap {
		padding: 0 0 15px;
		margin: 0 0 20px;
		font-size: 18px;
		line-height: 1.8em;
	}

	.pageWrap .title06 {
		font-size: 18px;
	}
}




/*--------------------------------
text01
--------------------------------*/
.pageWrap .text01Wrap {
	word-break: break-word;
	text-align: left;
	padding: 30px 0;
}

.pageWrap .text01Wrap ul {
	padding: 30px 0 30px 30px;
	font-weight: bold;
}

.pageWrap .text01Wrap ul li {
	list-style: auto;
}

.pageWrap .text01 {
	font-size: 16px;
	line-height: 1.875;
}

.pageWrap .text01_1 {
	font-size: 18px;
	line-height: 1.8em;
}

.pageWrap .text01.fs14 {
	font-size: 14px;
	line-height: 1.875;
	margin-block: 20px;
}

.pageWrap .text01 strong {
	font-weight: bold;
}
.pageWrap .text01 .bloc-title {
	color:#334a85;
	font-weight: bold;
	font-size: 18px;
	margin-block: 1em;
}
.pageWrap .text01.imgAlc img {
	text-align: center;
	display: block;
	margin: 10px auto;
}

/*中心寄せ*/
.pageWrap .txtAlc {
	text-align: center;
}

/*注釈*/
.pageWrap .text01 .notes {
	position: relative;
	padding: 0 0 0 20px;
	margin: 0;
	font-size: 12px;
	line-height: 2;

}

.pageWrap .text01 .notes:before {
	content: "※";
	position: absolute;
	left: 0;
}

@media screen and (max-width:768px) {
	.pageWrap .text01Wrap {
		padding: 20px 0;
	}

	.pageWrap .text01 {
		font-size: 14px;
		line-height: 1.8em;
	}

	.pageWrap .text01_1 {
		font-size: 16px;
		line-height: 1.8em;
	}

	/*中心寄せ*/
	.pageWrap .txtAlc {
		text-align: left;
	}

	/*-----------*/
}

/*--------------------------------
img
--------------------------------*/
.img01Wrap {
	width: 100%;
	position: relative;
	padding: 40px 0 40px;
}

.img01Wrap .img01 {
	display: block;
	margin: 0 auto;
}

.img01Wrap .img01 p {
	padding: 0 15px;
}

.img01Wrap .ttl {
	font-size: 20px;
	line-height: 2.5;
	letter-spacing: 0.05em;
	margin-bottom: 10px;
	text-align: left;
	display: block;
	position: relative;
	padding-left: 30px;
}

.img01Wrap .ttl::before {
	content: "";
	width: 22px;
	height: 2px;
	background-color: #334A85;
	display: inline-block;
	position: absolute;
	top: 24px;
	left: 0%;
}

.img01Wrap .cap {
	font-size: 16px;
	line-height: 1.75em;
	margin-top: 10px;
	text-align: left;
	display: block;
}

.img01Wrap .img01 img {
	width: auto;
	display: block;
	margin: 0 auto;
}

.img01Wrap .img01.w100p {
	width: 100%;
}

.img01Wrap .img01.w740 {
	width: 740px;
}

.img01Wrap .img01.w566 {
	width: 566px;
}

.img01Wrap .img01.w566 iframe {
	width: 100%;
}

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

	/*-----------*/
	.img01Wrap {
		width: 100%;
		position: relative;
		padding: 20px 0 20px;
	}

	.img01Wrap .ttl {
		font-size: 16px;
		padding-left: 30px;
	}

	.img01Wrap .ttl::before {
		top: 21px;
		left: 0%;
	}

	.img01Wrap .cap {
		font-size: 14px;
		line-height: 1.75em;
	}

	.img01Wrap .img01 {
		display: block;
	}

	.img01Wrap .img01 p {
		padding: 0 0 20px;
	}

	.img01Wrap .img01,
	.img01Wrap .img01.w566,
	.img01Wrap .img01.w740 {
		width: 100%;
	}

	/*-----------*/
}


/*--------------------------------
btn
--------------------------------*/
.pageWrap .btn01Wrap,
.pageWrap .btnWrap01 {
	width: 100%;
	position: relative;
	padding: 20px 0 0;
	text-align: center;
}

.pageWrap .btn01Wrap .btn01,
.pageWrap .btnWrap01 .btn01 {
	background: #334A85;
	padding: 0 20px;
	color: #fff;
	border: solid 1px #334A85;
	font-size: 14px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	line-height: 1.8em;
	text-decoration: none;
	width: 224px;
	min-height: 54px;
	display: table;
	margin: 0 auto;
	line-height: initial;
	text-align: center;
	position: relative;
	z-index: 1;
	transition: .3s;
	overflow: hidden;
	box-sizing: border-box;
}

.pageWrap .btn01Wrap .btn01::before,
.pageWrap .btnWrap01 .btn01::before {
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #9a9a9a;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.pageWrap .btnWrap01 .btn01.--yellow {
	background-color: #FFB100;
	border: solid 1px #FFB100;
	color:#222;
}

.pageWrap .btnWrap01 .btn01.btn01.--yellow::before {
	background: #fff;
}


.pageWrap .btn01:hover::before,
.pageWrap a.detailFlex02:hover .btn01::before,
.pageWrap .detailFlex02 a.detailFlexBox02:hover .btn01::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

.pageWrap .btn01Wrap .btn01 span {
	display: table-cell;
	vertical-align: middle;
	line-height: 1.5em;
	box-sizing: border-box;
}

/*橙色*/
.pageWrap .btn01Wrap .btnOr,
.pageWrap .btnWrap01 .btnOr {
	background: #FFB100;
	border: solid 1px #FFB100;
	color: #fff;
}

.pageWrap .btn01Wrap .btnOr::before,
.pageWrap .btnWrap01 .btnOr::before {
	background: #fff;
}

.pageWrap .btn01Wrap .btnOr:hover {
	color: #FFB100;
}

/*幅*/
.pageWrap .btn01Wrap.w476 .btn01 {
	width: 476px;
	margin: 0 10px;
}

.pageWrap .btn01Wrap.w375 .btn01,
.pageWrap .btnWrap01.w375 .btn01 {
	width: 375px;
}

.pageWrap .btn01Wrap.w200 .btn01 {
	width: 200px;
	min-height: 40px;
}

.pageWrap .btn01Wrap.w163 .btn01 {
	width: 163px;
	min-height: 40px;
}

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

	.pageWrap .btn01Wrap.w476 .btn01,
	.pageWrap .btn01Wrap.w375 .btn01,
	.pageWrap .btnWrap01.w375 .btn01,
	.pageWrap .btn01Wrap.w200 .btn01,
	.pageWrap .btn01Wrap.w163 .btn01 {
		width: 100%;
		margin: 0 0 10px;
	}

}

/*--------------------------------
テーブルデザイン※会社情報
--------------------------------*/
/*-----テーブル1----*/
.defaultTableWrap01 {
	padding: 60px 0 80px;
}

/*文字サイズ*/
.defaultTableWrap01.fs16 table th,
.defaultTableWrap01.fs16 table td {
	font-size: 16px;
}

.defaultTableWrap01.fs18 table th,
.defaultTableWrap01.fs18 table td {
	font-size: 18px;
	line-height: 1.8em;
}

.defaultTableWrap01 table {
	width: 99.9%;
	border-collapse: collapse;
	border-spacing: 0;
	border-top: 1px solid #DEDEDE;
	table-layout: fixed;
}

.defaultTableWrap01 table th {
	text-align: center;
	vertical-align: top;
	border-bottom: 1px solid #fff;
	border-left: 1px solid #DEDEDE;
	background-color: #EBEBEB;
	box-sizing: border-box;
	padding: 16px 30px;
	color: #2B2A2A;
	font-size: 14px;
	line-height: 1.5em;
	font-weight: bold;
	width: 210px;
	vertical-align: middle;
}

/*幅*/
.defaultTableWrap01 table .w10p {
	width: 10% !important;
}

.defaultTableWrap01 table .w15p {
	width: 15% !important;
}

.defaultTableWrap01 table .w20p {
	width: 20% !important;
}

.defaultTableWrap01 table .w30p {
	width: 30% !important;
}

.defaultTableWrap01 table .w40p {
	width: 40% !important;
}

.defaultTableWrap01 table .w50p {
	width: 50% !important;
}


.defaultTableWrap01 table tr:last-child th {
	border-bottom: 1px solid #DEDEDE;
	border-right: 1px solid #DEDEDE;
}

.defaultTableWrap01 table td {
	text-align: left;
	vertical-align: middle;
	border-bottom: 1px solid #DEDEDE;
	border-left: 1px solid #DEDEDE;
	border-right: 1px solid #DEDEDE;
	background-color: #fff;
	padding: 16px 20px;
	font-size: 14px;
	line-height: 1.43em;
	box-sizing: border-box;
}

.defaultTableWrap01 ol {
	list-style: auto;
}

.defaultTableWrap01 ol,
.defaultTableWrap01 ul {
	font-size: 16px;
	padding: 0;
	margin: 0;
	padding-left: 20px;
	line-height: 1.8em;
}

.defaultTableWrap01 ul {}

.defaultTableWrap01 ul li:before {
	content: "・";
}

.defaultTableWrap01.fs18 ol,
.defaultTableWrap01.fs18 ul {
	font-size: 18px;
}

.defaultTableWrap01 ul {}

.defaultTableWrap01 ul li:before {
	content: "・";
}

.defaultTableWrap01 ol li ul {
	padding-left: 0;
	font-size: 14px;
}

.defaultTableWrap01 tbody table tr td:first-child {
	border-left: 1px solid #DEDEDE;
}

.defaultTableWrap01.pt2 table th {
	width: 210px;
	font-size: 16px;
}

.defaultTableWrap01.pt2 table td {
	text-align: left;
	vertical-align: top;
	font-size: 16px;
}

.defaultTableWrap01.pt2 table td.td_center {
	text-align: center;
}

.defaultTableWrap01.pt2 table td ol {
	padding: 0;
	margin: 0 0 0 15px;
	list-style-type: decimal;
}

.defaultTableWrap01.pt2 table td ol ul {
	list-style-type: disc;
	margin-left: 20px;
}

/*役職*/
.defaultTableWrap01 .post {
	width: auto;
	border-collapse: collapse;
	border-spacing: 0;
	border-top: 0;
	padding: 10px 0;
}

.defaultTableWrap01 table td .post th,
.defaultTableWrap01 table td .post td {
	border: 0;
	background: none;
	padding: 0 0 0;
	font-size: 14px;
	line-height: 1.5em;
	font-weight: normal;
	width: auto;
}

.defaultTableWrap01 table td .post th {
	padding: 0 25px 0 0;
}

.defaultTableWrap01 table td .txt {
	font-size: 14px;
	line-height: 1.43em;
	padding: 10px 0;
}

.defaultTableWrap01 .txt {
	font-size: 14px;
	line-height: 1.71;
	font-weight: normal;
	text-align: left;
	margin-top: 10px;
}

.defaultTableWrap01 .txt .notes {
	position: relative;
	padding: 0 0 0 20px;
	margin: 0;
}

.defaultTableWrap01 .txt .notes:before {
	content: "※";
	position: absolute;
	left: 0;
}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.defaultTableWrap01 {
		padding: 20px 0 30px;
	}

	.defaultTableWrap01 table {
		display: block;
		width: auto;
	}

	.defaultTableWrap01 table tbody {
		display: block;
	}

	.defaultTableWrap01 table tr {
		display: block;
		margin-bottom: 10px;
	}

	.defaultTableWrap01 table th {
		display: block;
		text-align: center;
		border-bottom: none;
		box-sizing: border-box;
		padding: 10px 20px 10px 20px;
		font-size: 14px;
		line-height: 1.5em;
		font-weight: bold;
		width: auto;
		border-top: 1px solid #DEDEDE;
		border-bottom: 1px solid #fff;
		border-right: 1px solid #DEDEDE;
	}

	.defaultTableWrap01 table td {
		display: block;
		text-align: left;
		vertical-align: middle;
		padding: 14px 20px;
		font-size: 14px;
		line-height: 1.43em;
		border-left: 1px solid #DEDEDE;
	}

	.defaultTableWrap01 table td .post th {
		text-align: left;
	}

	/*--------------------*/
	.defaultTableWrap01.scroll {
		overflow: auto;
		/* white-space: nowrap; */
		padding-bottom: 5%;
	}

	.defaultTableWrap01.spNon.fs18 table th,
	.defaultTableWrap01.spNon.fs18 table td {
		font-size: 14px;
		line-height: 1.8em;
	}

	.defaultTableWrap01.spNon.fs18 ol,
	.defaultTableWrap01.spNon.fs18 ul {
		font-size: 14px;
	}

	.defaultTableWrap01.spNon table {
		display: table;
		table-layout: fixed;
		width: 820px;
	}

	.defaultTableWrap01.spNon table tbody {
		display: table-row-group;
	}

	.defaultTableWrap01.spNon table tr {
		display: table-row;
	}

	.defaultTableWrap01.spNon table th {
		width: 160px;
	}

	.defaultTableWrap01.spNon table th {
		display: table-cell;
		padding: 10px 10px;
	}

	.defaultTableWrap01.spNon table td {
		display: table-cell;
		padding: 14px 10px;
		vertical-align: top;
	}


	/*--------------------*/
}

/*--------------------------------
テーブルデザイン※選ばれる理由で使用
--------------------------------*/
/*-----テーブル1----*/
.defaultTableWrap02 {
	padding: 60px 0 80px;
}

/*幅*/
.defaultTableWrap02 table .w15p {
	width: 15%;
}

.defaultTableWrap02 table .w20p {
	width: 20%;
}

.defaultTableWrap02 table {
	width: 100%;
	table-layout: fixed;
	border-collapse: separate;
	border-spacing: 3px;
	border-top: 1px solid #fff;
}

.defaultTableWrap02 table thead th {
	text-align: center;
	vertical-align: middle;
	background-color: #73B29F;
	color: #fff;
	box-sizing: border-box;
	padding: 16px 30px;
	font-size: 14px;
	line-height: 1.5em;
	font-weight: normal;
}

.defaultTableWrap02 table th {
	text-align: center;
	vertical-align: middle;
	background-color: #E0E0E0;
	box-sizing: border-box;
	padding: 16px 30px;
	color: #2B2A2A;
	font-size: 14px;
	line-height: 1.5em;
	font-weight: normal;
}

.defaultTableWrap02 table td {
	text-align: center;
	vertical-align: middle;
	background-color: #F8F4E9;
	padding: 16px 30px;
	font-size: 16px;
	line-height: 1.43em;
	box-sizing: border-box;
}

.defaultTableWrap02 .txt {
	font-size: 14px;
	line-height: 1.43em;
	padding: 10px 0;
	text-align: left;
}

/*リスト*/
.defaultTableWrap02 ol {
	list-style: auto;
}

.defaultTableWrap02 ol,
.defaultTableWrap02 ul {
	font-size: 16px;
	padding: 0;
	margin: 0;
	padding-left: 10px;
	line-height: 1.8em;
}

.defaultTableWrap02 ul {}

.defaultTableWrap02 ul li:before {
	content: "・";
}

.defaultTableWrap02 ol li ul {
	font-size: 14px;
}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.defaultTableWrap02 {
		padding: 20px 0 30px;
	}

	.defaultTableWrap02.scroll {
		overflow: auto;
		/*white-space: nowrap;*/
		padding-bottom: 5%;
	}

	.defaultTableWrap02 table {
		width: 800px;
	}

	.defaultTableWrap02 table th {
		vertical-align: middle;
		border-bottom: none;
		box-sizing: border-box;
		padding: 10px 10px;
		font-size: 14px;
		line-height: 1.5em;
		font-weight: bold;
		width: auto;
	}

	.defaultTableWrap02 table td {
		vertical-align: middle;
		padding: 14px 10px;
		font-size: 14px;
		line-height: 1.43em;
		border-left: 1px solid #DEDEDE;
	}

	/*--------------------*/
}

/*-----テーブル3----*/
.defaultTableWrap03 {
	margin: 35px auto 80px;
}

.defaultTableWrap03 table {
	width: 100%;
	border-collapse: initial;
	table-layout: fixed;
	/*border-spacing: 4px;*/
	white-space: initial;
}

.defaultTableWrap03 table th {
	text-align: center;
	vertical-align: middle;
	position: relative;
	padding: 0 10px;
}

.defaultTableWrap03 table tr th:last-child {
	/*border-right: 0;*/
}

.defaultTableWrap03 table tr th.borderB:after {
	content: "";
	border-bottom: 2px solid #fff;
	display: block;
	width: 100%;
	height: 4px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.defaultTableWrap03 table th .logo img {
	width: auto;
	margin: 0 auto 5px;
}

.defaultTableWrap03 table th.th01 {
	width: 268px;
	text-align: left;
}

.defaultTableWrap03 table th.big {
	width: 25%;
	border-left: 6px solid #334A85;
	border-right: 6px solid #334A85;
	border-top: 6px solid #334A85;
	background: #fff;
	color: #333333;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}

.defaultTableWrap03 table th.big span {
	color: #334A85;
}

.defaultTableWrap03 table th.th03,
.defaultTableWrap03 table th.th04 {
	border-right: 2px solid #fff;
}

.defaultTableWrap03 table th.th05 {
	border-right: 0;
}

.defaultTableWrap03 table th.white {
	background: none;
	min-height: 54px;
}

/*灰色*/
.defaultTableWrap03 table th.gray {
	padding: 0 0;
	border-right: 2px solid #fff;
}

.defaultTableWrap03 table th.gray div {
	background: #9A9A9A;
	text-align: center;
	color: #fff;
	padding: 0;
	font-size: 16px;
	min-height: 60px;
	margin: 35px 0 0;
	line-height: 1.8em;
	position: relative;
	display: table;
	width: 100%;
}

.defaultTableWrap03 table th.gray div span {
	line-height: 1.5em;
	display: table-cell;
	vertical-align: middle;
}

/*薄灰色*/
.defaultTableWrap03 table th.litGray {
	padding: 0 0;
	border-right: 2px solid #fff;
}

.defaultTableWrap03 table th.litGray div {
	background: #E6E6E6;
	text-align: center;
	color: #fff;
	padding: 0;
	font-size: 16px;
	min-height: 60px;
	margin: 35px 0 0;
	vertical-align: middle;
	line-height: 1.8em;
	position: relative;
	display: table;
	width: 100%;
}

.defaultTableWrap03 table th.litGray div span {
	line-height: 1.5em;
	display: table-cell;
	vertical-align: middle;
}

.defaultTableWrap03 table td.big {
	background: #D9E1F5;
	border-left: 6px solid #334A85;
	border-right: 6px solid #334A85;
	font-size: 32px;
	color: #005BAC;
	font-weight: bold;
}

.defaultTableWrap03 table tr.last td.big:after {
	content: none;
}

.defaultTableWrap03 table tr.last td.big {
	border-bottom: 6px solid #334A85;
}

.defaultTableWrap03 table tr.last td.big:after {
	border-bottom: 6px solid #334A85;
}

.defaultTableWrap03 table td {
	background: #ECECEC;
	padding: 15px 5px;
	font-size: 32px;
	vertical-align: middle;
	text-align: center;
	position: relative;
	border-right: 2px solid #fff;
	color: #222;
}

.defaultTableWrap03 table tr td:after {
	content: "";
	border-bottom: 2px solid #fff;
	display: block;
	width: 100%;
	height: 4px;
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 1;
}

.defaultTableWrap03 table tr td:first-child,
.defaultTableWrap03 table tr td:last-child {
	/*border-right: 0;*/
}

.defaultTableWrap03 table td.td01 {}

.defaultTableWrap03 table td.td03 {
	border-right: 2px solid #fff;
}

.defaultTableWrap03 table td.td04 {}

.defaultTableWrap03 table td.subTitle {
	font-weight: bold;
	font-size: 16px;
	background: #D9E1F5;
	color: #334A85;
	text-align: center;
	line-height: 1.875;
	letter-spacing: 0.05em;
}

.defaultTableWrap03 table td.subTitle2 {
	font-weight: bold;
	font-size: 16px;
	background: #676f78;
	color: #fff;
	padding: 10px 10px;
}

.defaultTableWrap03 table td.subTitle2.big {
	font-weight: bold;
	font-size: 16px;
	background: #1c669d;
	color: #fff;
	padding: 10px 10px;
}

.defaultTableWrap03 table td span {
	padding: 10px 0;
}

.defaultTableWrap03 table td span.subInfo {
	display: block;
	font-weight: bold;
	font-size: 13px;
	line-height: 1.5em;
	text-align: center;
	padding: 10px 0 0;
	font-weight: normal;
	color: #222;
}

.defaultTableWrap03 table td.big span.subInfo {
	font-size: 14px;
	font-weight: normal;
}

.defaultTableWrap03 table td.big span.subInfo span {
	color: #334A85;
	font-weight: bold;
}

.defaultTableWrap03 table td.big.subTitle span.subInfo,
.defaultTableWrap03 table td.big.subTitle2 span.subInfo {
	color: #fff;
	text-align: center;
}

.defaultTableWrap03 table td .flex {
	-webkit-align-items: center;
	-ms-align-items: center;
	align-items: center;
}

.defaultTableWrap03 table td .flex span.subInfo {
	text-align: left;
	padding: 0 0 0 10px;
	font-size: 14px;
	line-height: 1.8em;
	font-weight: normal;
}

.defaultTableWrap03 table td.big .flex span.subInfo {
	font-size: 14px;
	font-weight: bold;
}

.defaultTableWrap03 table td img {
	display: block;
	margin: 0 auto;
}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.defaultTableWrap03 {
		margin: 35px auto 0;
	}

	.defaultTableWrap03.scroll {
		overflow: auto;
		white-space: nowrap;
		padding-bottom: 5%;
	}

	.defaultTableWrap03 table {
		width: 700px;
		border-collapse: collapse;
		/*border-spacing: 4px;*/
	}

	.defaultTableWrap03 table th {
		text-align: center;
		vertical-align: middle;
		font-size: 10px;
	}

	.defaultTableWrap03 table th.th01 {
		width: 150px;
	}

	.defaultTableWrap03 table th.big {
		width: 200px;
		color: #fff;
		font-size: 10px;
		line-height: 1.8em;
		font-weight: bold;
		text-align: center;
		padding: 0 10px;
	}

	.defaultTableWrap03 table th.th03,
	.defaultTableWrap03 table th.th04 {
		border-right: 4px solid #fff;
	}

	.defaultTableWrap03 table th .white {
		background: #fff;
		min-height: 54px;
	}

	.defaultTableWrap03 table th .logo img {
		width: 60%;
		margin: 0 auto;
	}

	.defaultTableWrap03 table th.gray div,
	.defaultTableWrap03 table th.litGray div {
		text-align: center;
		color: #FFF;
		padding: 0;
		font-size: 10px;
		min-height: 50px;
		vertical-align: middle;
		line-height: 5;
	}

	.defaultTableWrap03 table td.big {
		font-size: 12px;
	}

	.defaultTableWrap03 table tr.last td.big:after {
		content: none;
	}

	.defaultTableWrap03 table tr.last td.big {}

	.defaultTableWrap03 table td {
		background: #F7F7F7;
		padding: 5px;
		font-size: 10px;
		vertical-align: middle;
		text-align: center;
		position: relative;
	}

	.defaultTableWrap03 table tr td:after {
		content: "";
		border-bottom: 4px solid #fff;
		display: block;
		width: 100%;
		height: 4px;
		position: absolute;
		bottom: 0;
		left: 0;
		z-index: 1;
	}

	.defaultTableWrap03 table td.td01 {
		line-height: 1.5em;
	}

	.defaultTableWrap03 table td.td03 {
		border-right: 4px solid #fff;
	}

	.defaultTableWrap03 table td.td04 {}

	.defaultTableWrap03 table td.td05 {}

	.defaultTableWrap03 table td.subTitle,
	.defaultTableWrap03 table td.subTitle2 {
		font-size: 10px;
	}

	.defaultTableWrap03 table td span.subInfo {
		font-size: 10px;
		padding: 5px 0 0;
		line-height: 1.3em;
	}

	.defaultTableWrap03 table td.big span.subInfo {
		display: block;
		font-size: 10px;
		font-weight: bold;
		color: #222;
	}

	.defaultTableWrap03 table td.big .flex span.subInfo {
		font-size: 12px;
	}

	.defaultTableWrap03 table td .flex span.subInfo {
		padding: 0 0 0 5px;
		font-size: 10px;
	}

	/*--------------------*/
}

/*--------------------------------
テーブルデザイン4※service詳細
--------------------------------*/
/*-----テーブル4----*/
.defaultTableWrap04 {
	padding: 60px 0 80px;
	font-size: 16px;
	line-height: 1.8em;
}

.defaultTableWrap04 table {
	width: 100%;
	table-layout: auto;
	border-collapse: separate;
	border-spacing: 3px;
	border-top: 1px solid #fff;
}

.defaultTableWrap04 table th {
	text-align: center;
	vertical-align: middle;
	background-color: #d9e1f5;
	box-sizing: border-box;
	padding: 16px 30px;
	color: #334a85;
	font-size: 16px;
	line-height: 1.875;
	letter-spacing: 0.05em;
	font-weight: bold;
	width: 268px;
}

.defaultTableWrap04 table td {
	text-align: center;
	vertical-align: middle;
	background-color: #ECECEC;
	padding: 16px 30px;
	font-size: 16px;
	line-height: 1.875;
	font-weight: normal;
	box-sizing: border-box;
}

.defaultTableWrap04 table td.w10p {
	width: 10%;
}

.defaultTableWrap04 table td.w20p {
	width: 20%;
}

.defaultTableWrap04 table td.w30p {
	width: 30%;
}

.defaultTableWrap04 table td.w40p {
	width: 40%;
}

.defaultTableWrap04 table td.w50p {
	width: 50%;
}

.defaultTableWrap04 table td.w53p {
	width: 53%;
}

.defaultTableWrap04 table td.w60p {
	width: 60%;
}

.defaultTableWrap04 table td.w70p {
	width: 70%;
}

.defaultTableWrap04 table td.w80p {
	width: 80%;
}

.defaultTableWrap04 table td.w90p {
	width: 90%;
}

.defaultTableWrap04 table td.w100p {
	width: 100%;
}



.defaultTableWrap04 table td span.label {
	text-align: center;
	vertical-align: middle;
	background-color: #767676;
	color: #fff;
	padding: 2px 10px;
	font-size: 12px;
	line-height: 1.91;
	font-weight: normal;
	position: relative;
	top: -2px;
	margin-right: 10px;
	box-sizing: border-box;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	border-radius: 30px;
}

.defaultTableWrap04 .ttl {
	font-size: 24px;
	line-height: 1.25;
	padding: 10px 0;
	text-align: center;
	background-color: #334A85;
	color: #fff;
	margin-bottom: 10px;
}

.defaultTableWrap04 .ttl span {
	color: #FFB100;
}

.defaultTableWrap04 .txt {
	font-size: 14px;
	line-height: 1.71;
	font-weight: normal;
	text-align: left;
	margin-top: 10px;
}

.defaultTableWrap04 .txt .notes {
	position: relative;
	padding: 0 0 0 20px;
	margin: 0;
}

.defaultTableWrap04 .txt .notes:before {
	content: "※";
	position: absolute;
	left: 0;
}

.defaultTableWrap04 .txt01 {
	font-size: 20px;
	line-height: 1.43em;
	font-weight: bold;
	color: #334A85;
}

.defaultTableWrap04 .txt01 span {
	font-size: 12px;
}

.defaultTableWrap04 .price {}

.defaultTableWrap04 .price .before {
	position: relative;
	display: inline-block;
}

.defaultTableWrap04 .price .before::after {
	position: relative;
	content: "";
	display: inline-block;
	background-image: url(../img/service/detail/price_arrow.png);
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center;
	width: 66px;
	height: 12px;
	padding: 0 20px;
}

.defaultTableWrap04 .price .before span {
	position: relative;
}

.defaultTableWrap04 .price .before span::after {
	position: absolute;
	content: "";
	display: block;
	transform: rotate(10deg);
	background-color: #333333;
	width: 100%;
	height: 1px;
	top: 50%;
	left: 0;
}

.defaultTableWrap04 .price .after {
	font-size: 26px;
	font-weight: bold;
	line-height: 1.15;
	letter-spacing: 0.05em;
	color: #334A85;
	display: inline-block;
	display: inline-block;
	position: relative;
	top: 4px;
}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.defaultTableWrap04 {
		padding: 20px 0 30px;
	}

	.defaultTableWrap04.scroll {
		overflow: auto;
		/*white-space: nowrap;*/
		padding-bottom: 5%;
	}

	.defaultTableWrap04 table {
		width: 800px;
	}

	.defaultTableWrap04 table th {
		vertical-align: middle;
		border-bottom: none;
		box-sizing: border-box;
		padding: 10px 10px;
		font-size: 14px;
		line-height: 1.5em;
		font-weight: bold;
		width: 200px;
	}

	.defaultTableWrap04 table td {
		vertical-align: middle;
		padding: 14px 10px;
		font-size: 14px;
		line-height: 1.43em;
		border-left: 1px solid #DEDEDE;
	}

	.defaultTableWrap04 .ttl {
		font-size: 16px;
		line-height: 1.25;
		padding: 5px 0;
	}

	.defaultTableWrap04 .txt {
		width: 800px;
	}

	.defaultTableWrap04 .txt01 {
		font-size: 16px;
		line-height: 1.43em;
	}

	/*--------------------*/
}

/*--------------------------------
flex 3カラムデザイン
--------------------------------*/
.pageWrap .detailFlex01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	gap: 5px;
}

/*中心寄せ*/
.detailFlex01.flexC {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.pageWrap .detailFlexBox01 {
	width: 326px;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.pageWrap .detailFlexBox01 .img {
	margin: 10px 0 0;
}

.pageWrap .detailFlexBox01 .img.border img {
	border: solid 1px #707070;
}

.pageWrap .detailFlexBox01 .ttl {
	margin: 10px 0 0;
	font-weight: bold;
	font-size: 16px;
}

.pageWrap .detailFlexBox01 .txt {
	margin: 10px 0 0;
	font-size: 16px;
	text-align: left;
}

/**強み**/
.pageWrap .detailStrenBox01 {
	color: #334A85;
	padding: 0 0 12px 0;
	text-align: left;
	font-family: 'Jost', sans-serif;
}

.pageWrap .detailStrenBox01 .strenSpan01 {
	font-size: 10px;
	line-height: 1.0em;
	margin-bottom: 4px;
}

.pageWrap .detailStrenBox01 .strenSpan02 {
	font-size: 40px;
	line-height: 1.0em;
}

.pageWrap .detailStrenBox02 {
	font-size: 18px;
	line-height: 1.68em;
	text-align: left;
	padding: 0 0 20px;
	font-weight: bold;
}

.pageWrap .detailStrenBox02 p {
	font-weight: bold;
}

.pageWrap .detailStrenBox03 {
	font-size: 16px;
	line-height: 1.68em;
	text-align: left;
	padding: 25px 0 0;
}

.pageWrap .detailStrenImg {
	background: #FFFBF1;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	padding: 20px;
	display: table;
	width: 100%;
	min-height: 188px;
}

.pageWrap .detailStrenImg span {
	display: table-cell;
	vertical-align: middle;
	margin: 0 auto;
}

/**導入実績・お客様の声**/
.pageWrap .detailFlex01.case {
	margin: 0 0 40px;
}

.pageWrap .detailFlex01.case .detailAFlexBox01 {
	width: 340px;
	background: #F5F6F9;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	margin-top: 100px;
	margin-right: 25px;
	margin-left: 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	overflow: visible;
	border: 0;
}

.pageWrap .detailFlex01.case .detailAFlexBox01:nth-child(3n) {
	margin-right: 0;
}

/*要素が2個の場合*/
.pageWrap .detailFlex01.case .detailAFlexBox01:first-child:nth-last-child(2),
.pageWrap .detailFlex01.case .detailAFlexBox01:first-child:nth-last-child(2)~.detailAFlexBox01 {
	width: 50%;
}

.pageWrap .detailFlex01.case .detailAFlexBox01:first-child:nth-last-child(2)~.detailAFlexBox01:last-child {
	margin-right: 0;
}

.pageWrap .detailFlex01.case a.detailAFlexBox01 {
	text-decoration: none;
}

.pageWrap .detailCaseImg {
	margin: -100px auto 0;
}

.pageWrap .detailFlex01.case .detailCaseBox01 {
	padding: 30px 40px 40px;
	text-align: left;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.pageWrap .detailCaseBox01Ttl {
	font-size: 16px;
	font-weight: bold;
	line-height: 1.8em;
	margin: 0 0 25px;
	position: relative;
}

.pageWrap .detailCaseBox01Ttl:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -10px;
	margin: 0;
	width: 37px;
	height: 2px;
	background: #334A85;
}

.pageWrap .detailCaseBox01Txt {
	font-size: 16px;
	line-height: 2em;
	min-height: 110px;
	color: #334A85;
}

.pageWrap .detailCaseBox01ArrowB {
	width: 0px;
	height: 0;
	border-style: solid;
	border-width: 15px 10px 0 10px;
	border-color: #334A85 transparent transparent transparent;
	padding: 0;
	margin: 20px auto;
}

.pageWrap .detailCaseBox01Btn {
	background: #334A85;
	padding: 0 20px;
	color: #fff;
	font-size: 12px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	line-height: 1.8em;
	text-decoration: none;
	width: 153px;
	min-height: 32px;
	display: block;
	margin: 10px auto 0;
	line-height: 32px;
	text-align: center;
	position: relative;
	z-index: 1;
	transition: .3s;
	overflow: hidden;
}

.pageWrap .detailCaseBox01Btn::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #9a9a9a;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.pageWrap .detailAFlexBox01:hover .detailCaseBox01Btn::before,
.pageWrap .detailCaseBox01Btn:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/*水色*/
.pageWrap .detailFlex01.case a.detailAFlexBox01.bgLitBl .detailCaseBox01Txt {
	color: #4BA5FF;
}

.pageWrap .detailFlex01.case a.detailAFlexBox01.bgLitBl .detailCaseBox01Ttl:after {
	background: #4BA5FF;
}

/**コラム**/
.pageWrap .detailFlex01.column {
	margin: 0 0 40px;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.pageWrap .detailFlex01.column .detailFlexBox01 {
	width: 509px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	border-top: 3px solid #334A85;
	padding: 30px 30px;
	margin: 0 0 30px;
}

.pageWrap .detailColumnBox01 {
	text-align: left;
	margin: 0 0 30px;
	line-height: 1.8em;
}

.pageWrap .detailColumnBox01Date {
	font-size: 16px;
	margin: 0 0 10px;
}

.pageWrap .detailColumnBox01Ttl {
	font-size: 18px;
	font-weight: bold;
}

.pageWrap .detailColumnFlex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.pageWrap .detailColumnFlexImg img {
	width: 172px;
	max-width: initial;
}

.pageWrap .detailColumnFlexTxt {
	margin: 0 0 0 20px;
	text-align: left;
	line-height: 1.8em;
}

/**　4カラム　**/
.pageWrap .detailFlex01.col4 .detailFlexBox01 {
	width: 230px;
}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.pageWrap .detailFlex01 {
		display: block;
	}

	.pageWrap .detailFlexBox01 {
		width: 100%;
		margin: 0 0 30px;
	}

	/**導入実績・お客様の声**/
	.pageWrap .detailFlex01.case {
		margin: 30px 0;
	}

	.pageWrap .detailFlex01.case .detailAFlexBox01 {
		width: auto;
		margin-top: 125px;
		margin-bottom: 0;
		margin-right: 0;
		margin-left: 0;
	}

	/*要素が2個の場合*/
	.pageWrap .detailFlex01.case .detailAFlexBox01:first-child:nth-last-child(2),
	.pageWrap .detailFlex01.case .detailAFlexBox01:first-child:nth-last-child(2)~.detailAFlexBox01 {
		width: auto;
		margin-right: 0;
	}

	.pageWrap .detailFlex01.case .detailCaseBox01 {
		padding: 20px 20px 0;
	}

	.pageWrap .detailCaseImg {
		margin: -100px auto 0;
		width: 90%;
	}

	.pageWrap .detailCaseImg img {
		width: 100%;
	}

	.pageWrap .detailCaseBox01Btn {
		padding: 0 20px;
		width: 153px;
		min-height: 32px;
		margin: 10px auto 20px;
	}

	/**コラム**/
	.pageWrap .detailFlex01.column .detailFlexBox01 {
		width: 100%;
		padding: 20px 20px;
		margin: 0 0 20px;
	}

	.pageWrap .detailColumnBox01 {
		text-align: left;
		margin: 0 0 10px;
		line-height: 1.8em;
	}

	.pageWrap .detailColumnFlex {
		display: block;
	}

	.pageWrap .detailColumnFlexImg img {
		width: 172px;
		max-width: initial;
	}

	.pageWrap .detailColumnFlexTxt {
		margin: 10px 0 0;
	}

	/**　4カラム　**/
	.pageWrap .detailFlex01.col4 .detailFlexBox01 {
		width: 100%;
	}
}

/*--------------------------------
flex 2カラムデザイン
--------------------------------*/
.pageWrap .detailFlex02 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: 70px 0 0;
}

/*中心寄せ*/
.detailFlex02.flexC {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.pageWrap a.detailFlex02 {
	text-decoration: none;
}

.pageWrap .detailFlexIn02 {
	width: 512px;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	margin: 0;
	cursor: auto;
}

.pageWrap .detailFlex02 .detailFlexBoxTtl02 {
	text-align: center;
	position: relative;
	font-size: 22px;
	line-height: 1.5em;
	font-weight: bold;
	margin: 0 0 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.pageWrap .detailFlex02 .detailFlexBoxTtl02 p {
	position: relative;
	padding: 0 30px;
	font-size: 22px;
	line-height: 1.5em;
	font-weight: 500;
}

.pageWrap .detailFlex02 .detailFlexBoxTtl02:before {
	content: "";
	display: inline-block;
	position: relative;
	bottom: -7px;
	left: -21px;
	height: 45px;
	border-left: 2px solid #334A85;
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.pageWrap .detailFlex02 .detailFlexBoxTtl02:after {
	content: "";
	display: inline-block;
	position: relative;
	bottom: -7px;
	right: -21px;
	height: 45px;
	border-left: 2px solid #334A85;
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	transform: rotate(45deg);
}

.pageWrap .detailFlex02 a.detailFlexBox02 {
	text-decoration: none;
}

.pageWrap .detailFlex02 .detailFlexBox02 {
	background: #EDEDED;
	padding: 30px 40px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	position: relative;
	flex: 1;
	display: block;
}

.pageWrap .detailFlex02 .detailFlexBox02 .titleBox {
	color: #334A85;
	text-align: center;
	border-bottom: 1px solid;
	font-size: 20px;
	line-height: 1.8em;
	font-weight: bold;
	margin: 0 0 30px;
	min-height: 80px;
	padding: 0 0 10px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}

.pageWrap .detailFlex02 .detailFlexBox02 .titleBox>.title {
	font-size: 28px;
	font-weight: 600;
}

.pageWrap .detailFlex02 .detailFlexBox02 .titleBox>.subTitle {
	font-size: 20px;
	line-height: 1.8em;
	font-weight: 500;
}

.pageWrap .detailFlex02 .detailFlexBox02 .txtBox {
	font-size: 19px;
	line-height: 1.8em;
	font-weight: bold;
	margin: 0 0 15px;
	text-align: left;
}

.pageWrap .detailFlex02 .detailFlexBox02 .txtBox2 {
	font-size: 16px;
	line-height: 1.8em;
	text-align: left;
	height: 5.6em;
}
#reason .pageWrap .detailFlex02 .detailFlexBox02 .txtBox2 {
	height: 9.6em;
}
.pageWrap .detailFlex02 .detailFlexBox02 .imgBox {
	text-align: center;
	padding: 40px 0;
	height: 120px;
}
.pageWrap .detailFlex02 .detailFlexBox02 .imgBox.--s {
	height: auto;
}

.pageWrap .detailFlex02 .detailFlexBox02 .imgBox img {
	width: auto;
	max-height: 100%;
	object-fit: contain;
}

.pageWrap .detailFlex02 .detailFlexBox02 .btnWrap01 {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 50px;
}

.pageWrap .detailFlex02 .detailFlexBox02 .btn01 {
	width: 375px;
	max-width: 100%;
	min-height: 52px;
	line-height: 52px;
}

.pageWrap .detailFlex02 .detailFlexBox02 .detailLink .btnWrap01 {
	position: relative;
	bottom: 0;
}

/*2カラムボタンの場合*/
.pageWrap .detailFlex02.col2 li .btn01Wrap a {
	margin: 0 25px;
}

/*------------
flex 3カラム
--------------*/
.pageWrap .detailFlex02.col3 {
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: flex-start;
}

.pageWrap .detailFlex02.col3 .detailFlex02 {
	width: 333px;
	margin-right: 20px;
	margin-bottom: 20px;
}
.pageWrap .detailFlex02.col3.page-reason {
	width: 1060px;
	display: grid;
	gap: 20px;
	grid-template-columns: repeat(2, 1fr);
}
.pageWrap .detailFlex02.col3.page-reason .detailFlex02 {
	width: stretch;
	margin: 0;
}
@media screen and (max-width:1336px) {
	.pageWrap .detailFlex02.col3.page-reason {
		grid-template-columns: repeat(auto-fit, minmax(40%, 1fr));
		transform: translateX(0);
		width: min(90vw, 1060px);
	}
}
.pageWrap .detailFlex02.col3 .detailFlex02:nth-child(3n) {
	margin-left: 0;
}

.pageWrap .detailFlex02.col3 .detailFlexBox02 {
	padding: 20px 23px 20px;
	background: var(--background-blue);
    border-radius: 8px;
}

.pageWrap .detailFlex02.col3 .detailFlexBox02 .btn01 {
	width: 100%;
}

.pageWrap .detailFlex02.col3 .detailFlexBox02 .titleBox {
	min-height: 55px;
	margin: 0 0 20px;
}

.pageWrap .detailFlex02.col3 .detailFlexBox02 .titleBox>.title {
	font-size: 21px;
	font-weight: 600;
	line-height: 1.23;
	letter-spacing: 0.05em;
	white-space: nowrap;
}

.pageWrap .detailFlex02.col3 .detailFlexBox02 .imgBox {
	padding: 20px 0;
}


/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.pageWrap .detailFlex02 {
		display: block;
		margin: 30px 0 0;
	}

	.pageWrap .detailFlex02 {
		width: 100%;
		display: block;
		margin: 0 0 30px;
	}

	.pageWrap .detailFlex02:last-child {
		margin: 0 0;
	}

	.pageWrap .detailFlex02 .detailFlexBoxTtl02 {
		font-size: 18px;
		line-height: 1.5em;
		margin: 0 0 20px;
	}

	.pageWrap .detailFlex02 .detailFlexBoxTtl02 p {
		padding: 0 10px;
		font-size: 14px;
		line-height: 1.5em;
	}

	.pageWrap .detailFlex02 .detailFlexBox02 {
		padding: 20px 20px 30px;
	}

	.pageWrap .detailFlex02 .detailFlexBox02 .titleBox {
		font-size: 16px;
		line-height: 1.8em;
		margin: 0 0 20px;
		padding: 0 0 10px;
		min-height: initial;
	}

	.pageWrap .detailFlex02 .detailFlexBox02 .titleBox>.title {
		font-size: 18px;
	}

	.pageWrap .detailFlex02 .detailFlexBox02 .titleBox>.subTitle {
		font-size: 16px;
		line-height: 1.8em;
	}

	.pageWrap .detailFlex02 .detailFlexBox02 .txtBox {
		font-size: 16px;
		line-height: 1.8em;
		margin: 0 0 15px;
	}

	.pageWrap .detailFlex02 .detailFlexBox02 .txtBox2, #reason .pageWrap .detailFlex02 .detailFlexBox02 .txtBox2 {
		font-size: 14px;
		line-height: 1.8em;
		height: auto;
	}

	.pageWrap .detailFlex02 .detailFlexBox02 .imgBox {
		padding: 20px 0;
	}

	.pageWrap .detailFlex02 .detailFlexBox02 .btnWrap01 {
		position: static;
	}

	.pageWrap .detailFlex02 .detailFlexBox02 .btn01 {
		width: 100%;
		min-height: auto;
		line-height: 1.6em;
		padding: 5px 10px;
		font-size: 12px;
	}

	/*2カラムボタンの場合*/
	.pageWrap .detailFlex02.col2 li .btn01Wrap a {
		margin: 0 0 10px;
	}

	/*------------
	flex 3カラム
	--------------*/
	.pageWrap .detailFlex02.col3.page-reason {
		grid-template-columns: 1fr;
	}

	.pageWrap .detailFlex02.col3 .detailFlex02 {
		width: auto;
		margin-right: 0;
		margin-bottom: 10px;
	}

	.pageWrap .detailFlex02.col3 .detailFlex02:nth-child(3n) {
		margin-left: 0;
	}

	.pageWrap .detailFlex02.col3 .detailFlexBox02 {
		padding: 10px 15px 20px;
	}

	.pageWrap .detailFlex02.col3 .detailFlexBox02 .btn01 {}

	.pageWrap .detailFlex02.col3 .detailFlexBox02 .titleBox {
		min-height: 55px;
		margin: 0 0 10px;
	}

	.pageWrap .detailFlex02.col3 .detailFlexBox02 .titleBox>.title {
		font-size: 18px;
		font-weight: 600;
		line-height: 1.23;
		letter-spacing: 0.05em;
		white-space: normal;
	}

	.pageWrap .detailFlex02.col3 .detailFlexBox02 .imgBox {
		padding: 10px 0;
	}
}

/*----------contact-------------*/
.pageWrap .contactWrap01 .contactContIn,
.pageWrap .contactWrap01 .contIn {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	padding: 80px 0;
}

.pageWrap .contactWrap01 .center {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.pageWrap .contactWrap01 .contactContIn {
	padding: 60px 0 0;
	margin-bottom: 60px;
}

.pageWrap .contactBtn,
.pageWrap .contactBtn01,
.pageWrap .contactBtn02,
.pageWrap .contactBtn03 {
	display: table;
	width: 50%;
	padding: 0;
}

.pageWrap .contactWrap01 .contactBtn:first-child {
	padding-right: 4px;
}

.pageWrap .contactWrap01 .contactBtn:last-child {
	padding-left: 4px;
}

.pageWrap .contactWrap01 a {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	box-sizing: border-box;
	height: 93px;
	border: 1px solid #FFB100;
	background-color: #FFB100;
	color: #2B2A2A;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;

	position: relative;
	z-index: 1;
}

/*1個の場合*/
.pageWrap .contactWrap01 .contactBtn:first-child:nth-last-child(1),
.pageWrap .contactWrap01 .contactBtn:first-child:nth-last-child(1)~.pageWrap .contactWrap01 contactBtn {
	margin: 0 auto;
	display: table;
	padding: 0;
}


.pageWrap .contactWrap01 a:hover {
	color: #FFB100;
}

.pageWrap .contactWrap01 a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #fff;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.pageWrap .contactWrap01 a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/*緑*/
.pageWrap .contactBtn02 a {
	border: 1px solid #334A85;
	background-color: #334A85;
	color: #ffffff;
}

.pageWrap .contactBtn02 a:hover {
	color: #334A85;
}

.pageWrap .contactBtn02 a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #fff;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.pageWrap .contactBtn02 a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/*青*/
.pageWrap .contactBtn03 a {
	border: 1px solid #1d82b1;
	background-color: #1d82b1;
	color: #ffffff;
}

.pageWrap .contactBtn03 a:hover {
	color: #1d82b1;
}

.pageWrap .contactBtn03 a::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #fff;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.pageWrap .contactBtn03 a:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

.pageWrap .contactWrap01 p {
	display: inline-block;
	font-size: 18px;
	line-height: 1.8em;
	font-weight: 500;
}

.pageWrap .contactP01 {
	background-image: url(../img/ico/download_ico2.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 20px auto;
	padding-left: 28px;
	padding-top: 5px;
	padding-bottom: 5px;
}

.pageWrap .contactWrap01 a .downloadIco {
	background-image: url(../img/ico/download_ico2.png);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: 27px auto;
	padding-left: 35px;
}

.pageWrap .contactWrap01 a:hover .downloadIco {
	background-image: url(../img/ico/download_ico2_on.png);
}

.pageWrap .contactWrap01 a .contactIco {
	background-image: url(../img/ico/contact_ico.png);
}

.pageWrap .contactWrap01 a:hover .contactIco {
	background-image: url(../img/ico/contact_ico_on.png);
}

.pageWrap .contactWrap01 .contactBtn01 a .contactIco {
	background-image: url(../img/ico/contact_ico01.png);
}

.pageWrap .contactWrap01 .contactBtn01 a:hover .contactIco {
	background-image: url(../img/ico/contact_ico01_on.png);
}

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

	.pageWrap .contactWrap01 .contactContIn,
	.pageWrap .contactWrap01 .contIn {
		display: block;
		padding: 40px 20px;
	}

	.pageWrap .contactWrap01 .contactContIn {
		padding: 30px 0 0;
	}

	.pageWrap .contactWrap01 a {
		height: 70px;
	}

	.pageWrap .contactWrap01 .contactBtn:first-child,
	.pageWrap .contactWrap01 .contactBtn:last-child {
		padding: 0 0 0;
	}

	.pageWrap .contactBtn,
	.pageWrap .contactBtn01,
	.pageWrap .contactBtn02,
	.pageWrap .contactBtn03 {
		display: table;
		width: 100%;
		padding: 0 0 0;
	}

	.pageWrap .contactBtn01 {
		margin: 0 0 20px;
	}

	.pageWrap .contactWrap01 p {
		font-size: 14px;
		line-height: 1.8em;
	}
}

/**図のリンク**/
.pageWrap .linkBlock01 {
	display: none;
	padding-bottom: 40px;
}

.pageWrap .linkBlock01 ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.pageWrap .linkBlock01 ul li {
	font-size: 16px;
	line-height: 1.8em;
	text-align: center;
	width: 25%;
	border: 1px solid #fff;
	border-right: 0;
	color: #fff;
	height: 100%;
	min-height: 106px;
	padding: 10px 20px;
	display: table;
	background: #334A85;
	position: relative;
	color: #fff;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.pageWrap .linkBlock01 ul li:after {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4.5px 0 4.5px 5px;
	border-color: transparent transparent transparent #334A85;
	display: block;
	position: absolute;
	right: 10px;
	top: 50%;
	margin: -5px 0 0;
}

.pageWrap .linkBlock01 ul li a {
	display: block;
	color: #fff;
	text-decoration: none;
	display: table-cell;
	vertical-align: middle;
}

.pageWrap .linkBlock01 ul li:hover {
	background: #fff;
}

.pageWrap .linkBlock01 ul li:hover a {
	color: #334A85;
}

.pageWrap .linkBlock01 ul li:nth-child(4n) {
	border-right: 1px solid #fff;
}

.pageWrap .linkBlock01 ul.col2 li {
	width: 50%;
}

.pageWrap .linkBlock01 ul.col2 li:nth-child(2n) {
	border-right: 1px solid #fff;
}

/*@media screen and (max-width:1050px) {*/
@media screen and (max-width:1050px) {
	.pageWrap .title01Wrap {
		width: 100%;
		margin: 0 auto 10px;
	}

	.pageWrap .img01Wrap .img01Map {
		display: none;
	}

	.pageWrap .img01Wrap .img01Map area {
		pointer-events: none;
		display: none;
	}

	.pageWrap .linkBlock01 {
		display: block;
		padding-bottom: 40px;
	}
}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.pageWrap .linkBlock01 ul li {
		width: calc(50% - 20.5px);
		font-size: 12px;
		text-align: left;
		padding: 10px;
		min-height: 65px;
		border: 0;
	}

	.pageWrap .linkBlock01 ul li:nth-child(4n) {
		border-right: 0;
	}

	.pageWrap .linkBlock01 ul.col2 li {
		width: 100%;
		box-sizing: border-box;
		border-bottom: 1px solid #fff;
	}

	.pageWrap .linkBlock01 ul.col2 li:last-child {
		border-right: 0;
	}

	.pageWrap .linkBlock01 ul.col4 li:nth-last-child(-n+2) {
		border-top: 1px solid #fff;
	}

	.pageWrap .linkBlock01 ul.col4 li:nth-child(2n) {
		border-left: 1px solid #fff;
	}
}


/* ========================================================================
	ダウンロードページ
======================================================================== */
/* -------------------------------------------------------------------- 
資料ダウンロード
-------------------------------------------------------------------- */
.pageWrap.DOWNLOAD { padding-top: 120px;}

.pageWrap.DOWNLOAD #mainvisualPage3Inner .text_area {
	min-height: 180px;
}

/*---------*/
.downloadBlock01 {
	padding: 70px 0;
}

.downloadFlexBlock01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: 40px 0 40px;
}

.downloadFlexBlock01 a {
	text-decoration: none;
}

.downloadFlexBox01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0 42px 60px 0;
	position: relative;
}

.downloadFlexBox01:nth-child(3n) {
	margin: 0 0 60px 0;
}

.downloadBox {
	position: relative;
	width: 325px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	flex: 1 0 auto;
	/* fix IE11 */
}

.downloadTtl {
	font-size: 16px;
	line-height: 1.8em;
	font-weight: bold;
	text-align: left;
	color: #092E57;
	border-bottom: 2px solid #092E57;
	margin: 0 0 30px;
	padding: 0 0 10px;
}

.downloadImg {
	width: 100%;
	padding: 20px;
	margin: 0 0 20px;
	background: #D9E1F5;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	box-sizing: border-box;
}

.downloadFlexBlock01.bgYl .downloadImg {
	background: #FFFBF1;
}

.downloadImg img {
	width: auto;
	border: 1px solid #ccc;
	display: block;
	margin: 0 auto;
}

.downloadTxt01 {
	font-size: 16px;
	line-height: 1.8em;
	text-align: left;
	padding: 0 0 60px;
	width: 100%;
}

.downloadBtn01 {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	display: table;
	width: 163px;
	margin: auto;
}

.downloadBtn01 .downloadBtn01In {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	box-sizing: border-box;
	height: 40px;
	font-size: 12px;
	line-height: 1.5em;
	font-weight: 500;
	color: #fff;
	border: 1px solid #f4a005;
	background-color: #f4a005;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	border-radius: 30px;
}

.downloadBtn01 .downloadBtn01In:hover,
a.downloadFlexBox01:hover .downloadBtn01In {
	background: #f4c605;
	border-color: #f4c605;
	text-decoration: none;
}

.downloadBtn01 .downloadBtn01In span.downlaod_ico {
	position: relative;
}

.downloadBtn01 .downloadBtn01In span.downlaod_ico::before {
	content: "";
	background: url(/images/download/ico_download_off.png)no-repeat;
	background-size: 100%;
	position: relative;
	width: 9px;
	height: 10px;
	left: -15px;
	margin-top: -3px;
	display: inline-block;
}

/*---------*/
/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.pageWrap.DOWNLOAD {}

	.pageWrap.DOWNLOAD #mainvisualPage3Inner {
		padding: 30px 20px 10px;
	}

	.pageWrap.DOWNLOAD #mainvisualPage3Inner .text_area {
		min-height: auto;
	}

	.downloadBlock01 {
		padding: 30px 0 0;
	}

	.downloadFlexBlock01 {
		padding: 10px 20px 20px;
		margin: 0 0 20px;
	}

	.downloadFlexBlock01 {}

	.downloadFlexBox01 {
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		margin: 0 0 40px;
		position: relative;
		width: 100%;
	}

	.downloadFlexBox01:nth-child(3n) {
		margin: 0 0 40px 0;
	}

	.downloadBox {
		position: relative;
		width: 100%;
	}

	.downloadTtl {
		font-size: 16px;
		line-height: 1.8em;
		font-weight: bold;
		text-align: left;
		color: #092E57;
		border-bottom: 2px solid #092E57;
		margin: 0 0 20px;
		padding: 0 0 10px;
	}

	.downloadImg {
		padding: 0 0 20px;
	}

	.downloadTxt01 {
		font-size: 16px;
		line-height: 1.8em;
		text-align: left;
		padding: 0 0 20px;
		width: 100%;
	}

	.downloadBtn01 {
		position: relative;
	}

	/*---------*/
}

/* =================================
	フォーム
================================== */
.pageWrap.FORM {}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.pageWrap.FORM iframe {
		width: 100%;
	}
}

/* -------------------------------------------------------------------- 
 新着情報
-------------------------------------------------------------------- */
/*---------------*/
.pageWrap.NEWS {
	background: #F7F7F7;
}

.pageWrap.NEWS .bread_crumb {
	padding: 10px 0px;
}

.pageWrap.NEWS.DETAIL {
	background: #fff;
}

.pageWrap.NEWS.DETAIL .bread_crumb {
	padding: 10px 0px 50px;
}

.NewsListBlock01 {
	display: block;
	margin: 0 0;
	width: 100%;
}

.NewsListBox01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	background: #fff;
	text-decoration: none;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.NewsListBlock01 .NewsListBox01:hover {
	opacity: 0.7;
	text-decoration: none;
}

.NewsListBlock01 a.NewsListBox01 {
	margin: 0 0 8px;
	padding: 20px;
}

.pageNews {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.pageNews01 {}

.pageNews01 a {
	color: #fff;
}

.pageNews01 a:link {
	text-decoration: none;
}

.pageNews01 a:visited {
	text-decoration: none;
}

.pageNews01 a:hover {
	text-decoration: underline;
}

.pageNews01 a:active {
	text-decoration: none;
}

.pageNews01 li {
	display: table;
	width: 100%;
	margin: 7px 0px;
}

.pageNewsIn {
	display: table-cell;
}

.pageNewsIn01 {
	display: inline-block;
	text-align: left;
	vertical-align: top;
	width: 135px;
	font-size: 16px;
	line-height: 1.3em;
	padding: 0px 0px 0px 15px;
}

.pageNewsIn02 {
	display: inline-block;
	text-align: center;
	vertical-align: top;
	min-width: 77px;
}

.pageNewsIn03 {
	display: table-cell;
	text-align: left;
	vertical-align: top;
	padding: 0px 0px 0px 15px;
	font-size: 16px;
	line-height: 1.3em;
	word-break: break-word;
	width: 515px;
}

.NewsListBox01 .pageNewsIcon {
	color: #ffffff;
	font-size: 14px;
	line-height: 1.5em;
	text-align: center;
	padding: 0 2px;
	margin: 0 0;
	position: relative;
	top: 0;
}

.NewsListBlock01 .linktext a:hover {
	text-decoration: underline;
}

/* -----------------------------
 新着情報カテゴリカラー（共通）
--------------------------------*/
/*----INFO-----*/
.pageNewsIcon.cat01 {
	background-color: #334A85;
	color: #fff;
}

/*----SEMINAR-----*/
.pageNewsIcon.cat02 {
	background-color: #2B2A2A;
	color: #fff;
}

/*---------*/
/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.pageWrap.NEWS.DETAIL .bread_crumb {
		padding: 10px 20px 30px;
	}

	.pageWrap.NEWS.DETAIL .contIn .bread_crumb {
		padding: 10px 0 30px;
	}

	.NewsListBlock01 .linktext a:hover {
		text-decoration: underline;
	}

	.NewsListBlock01 {
		display: block;
		margin: 30px 0 10px;
		width: 100%;
	}

	.NewsListBlock01 .NewsListBox01 {
		margin: 0 0 8px;
		padding: 20px;
		display: block;
	}

	.pageNewsIn {
		text-align: left;
		display: block;
	}

	.pageNewsIn01 {
		padding: 0px 0px 10px 0;
	}

	.pageNewsIn03 {
		display: block;
		width: 100%;
		padding: 0px 0px 0px;
	}

	/*---------*/
}

/* -------------------------------------------------------------------- 
 コラム
-------------------------------------------------------------------- */
/*---------------*/
.single .pageWrap.COLUMN {
	padding-top: 110px;
}

/*コラム詳細　メインビジュアル2*/
.pageWrap.COLUMN.DETAIL .detailMv #mainvisualPage3Inner .text_area .img_box {
	width: 407px;
	max-width: 100%;
	padding-left: 0
}

/*---------------*/
.pageWrap.COLUMN.DETAIL .main01 {
	width: 729px;
}

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

.columnListBox01 {
	width: 389px;
	background: #fff;
	margin: 0 0 50px;
}

.columnListImg {
	overflow: hidden;
}

.columnListTxtBox {
	padding: 20px 0;
}

.columnListTtl {
	font-size: 18px;
	font-weight: bold;
	text-align: left;
	color: #334A85;
	line-height: 1.8em;
}

.columnListTxt {
	display: table;
	padding: 20px 0 10px;
}

.columnListTxt2 {
	font-size: 14px;
	line-height: 1.6em;
	padding: 0 0 20px;
	text-align: left;
	word-break: break-word;
}

.columnListTxt .columnListDate {
	font-size: 14px;
	display: table-cell;
	padding: 0 10px 0 0;
}

.defaultDetailDateBox .columnListCat,
.columnListTxt .columnListCat {
	font-size: 12px;
	display: table-cell;
	text-align: left;
}

.defaultDetailDateBox .columnListCat span,
.columnListTxt .columnListCat span {
	color: #334A85;
	border: 1px solid #334A85;
	text-align: center;
	padding: 2px 10px;
	margin: 0 2px 4px 0;
	display: inline-block;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	border-radius: 30px;
}

.columnListBtn {
	width: 120px;
	height: 29px;
	display: table;
	margin: 0 auto;
	background: #2B2A2A;
	border: 1px solid #2B2A2A;
	color: #fff;
	font-size: 10px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

a.columnListBox01:hover .columnListBtn {
	background: #fff;
	color: #2B2A2A;
}

.columnListBtn span {
	display: table-cell;
	vertical-align: middle;
}

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

	/*コラム詳細　メインビジュアル2*/
	.pageWrap.COLUMN.DETAIL .detailMv #mainvisualPage3Inner .text_area .img_box {
		width: auto;
	}

	.pageWrap.COLUMN.DETAIL .main01 {
		width: auto;
	}

	.columnListFlex01 {
		padding: 0 0 20px;
	}

	.columnListBox01 {
		width: 100%;
		background: #fff;
		margin: 0 0 20px;
		display: block;
	}

	/*---------*/
}



/*--------------------------------
 ボタン
--------------------------------*/
.contBtn01Wrap {
	width: 100%;
	position: relative;
	padding: 40px 0;
	text-align: center;
}

.contBtn01Wrap .contBtn01 {
	background: #2B2A2A;
	border: solid 1px #2B2A2A;
	padding: 0 20px;
	color: #fff;
	font-size: 14px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	line-height: 1.8em;
	width: 224px;
	min-height: 54px;
	display: block;
	margin: 0 auto;
	line-height: 54px;
	position: relative;
	text-decoration: none;
	z-index: 1;
	transition: .3s;
}

.contBtn01Wrap a.contBtn01:link {
	color: #fff;
	text-decoration: none;
}

.contBtn01Wrap a.contBtn01:visited {
	color: #fff;
	text-decoration: none;
}

.contBtn01Wrap a.contBtn01:active {
	color: #fff;
	text-decoration: none;
}

.contBtn01Wrap .contBtn01:hover {
	text-decoration: none;
}

.contBtn01::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #9a9a9a;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.contBtn01:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

/*幅*/
.contBtn01Wrap.w375 .contBtn01 {
	width: 375px;
}

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

	/*幅*/
	.contBtn01Wrap.w375 .contBtn01 {
		width: 100%;
	}

}

/*--------------------------------
フッター部分　コンテンツ
--------------------------------*/
/*----------download-------------*/
.contDownload {
	background: url(../../images/top/download_bg.jpg)no-repeat center;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	color: #fff;
	margin-top: 100px;
	padding: 70px 0;
}

.contDownload a.contDownloadFlexBox01 {
	color: #fff;
	display: block;

	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	text-decoration: none;
	position: relative;
	z-index: 0;
}

.contDownloadCell01 {
	width: 100%;
	position: absolute;
	top: -30px;
	z-index: -1;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.contDownloadCell01 .contDownloadCell01Left { max-width: 310px;}

.contDownloadCell01 .contDownloadCell01Right {}

.contDownloadCell02 {
	text-align: center;
	margin: 0 auto;
	position: relative;
}

.contDownloadTtl01 {
	font-size: 20px;
	position: relative;
	z-index: -10;
	padding: 0 0 10px;
	margin: 0 0 20px;
	border-bottom: solid 1px #fff;
}

.contDownloadText01 {
	font-size: 27px;
	line-height: 1.6em;
	font-weight: bold;
	margin: 0 0 30px;
}

.contDownloadBtnWrap01 {}

.contDownload .contDownloadBtn01 {
	display: block;
	text-align: center;
	vertical-align: middle;
	box-sizing: border-box;
	width: 306px;
	line-height: 52px;
	height: 52px;
	font-size: 14px;
	font-weight: 500;
	color: #2B2A2A;
	border: 1px solid #FFB100;
	background-color: #FFB100;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	border-radius: 30px;
	position: relative;
	z-index: 1;
	overflow: hidden;
	margin: 0 auto;
}

.contDownloadFlexBox01:hover {
	text-decoration: none;
}

.contDownloadFlexBox01:hover .contDownloadBtn01,
.contDownloadBtn01:hover {
	color: #FFB100;
	text-decoration: none;
}

.contDownloadFlexBox01 .contDownloadBtn01::before,
.contDownloadBtn01::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: -1;
	content: '';
	background: #fff;
	transform-origin: right top;
	transform: scale(0, 1);
	transition: transform .3s;
}

.contDownloadFlexBox01:hover .contDownloadBtn01::before,
.contDownloadBtn01:hover::before {
	transform-origin: left top;
	transform: scale(1, 1);
}

.contDownloadBtn01:after {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4.5px 0 4.5px 5px;
	border-color: transparent transparent transparent #fff;
	display: block;
	position: absolute;
	right: 20px;
	top: 50%;
	margin: -5px 0 0;
}

.contDownloadFlexBox01:hover .contDownloadBtn01:after,
.contDownloadBtn01:hover:after {
	border-color: transparent transparent transparent #FFB100;
}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.contDownload {
		margin-top: 110px;
	}

	.contDownloadFlexBox01 {
		display: block;
	}

	.contDownloadText01 {
		font-size: 20px;
		margin: 0 0 30px;
	}

	.contDownloadBtnWrap01 {
		margin: 30px 0 0;
	}

	.contDownloadBtn01 {
		width: auto;
	}

}



/* -------------------------------------------------------------------- 
 企業情報
-------------------------------------------------------------------- */
/*---------*/
.pageWrap.PHILOSOPHY {}

.pageWrap.PHILOSOPHY .detailMainvisual {
	/*background: #313131;*/
}

.philosophyBlock01 {
	padding: 20px 0 70px;
}

.philosophyBlock02 {
	padding: 0 0 0;
}

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

	/*---------*/
	.pageWrap.PHILOSOPHY {}

	.philosophyBlock01 {
		padding: 20px 0 20px;
	}

	/*-----*/
}

/* -------------------------------------------------------------------- 
 企業情報 会社概要/沿革/経営陣紹介
-------------------------------------------------------------------- */
.pageWrap.COMPANY.OUTLINE {}

.pageWrap.COMPANY.OUTLINE .companyOutlineBlock01 .contIn {
	width: 938px;
}

.companyOutlineFlexBlock01 {
	padding: 40px 0;
}

.companyOutlineFlexBlock01In {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.companyOutlineFlexBlock01 .box {
	width: 47%;
	margin: 0 55px 30px 0;
}

.companyOutlineFlexBlock01 .box:nth-child(2n) {
	margin: 0 0 30px 0;
}

.companyOutlineFlexBlock01 .box .ttl {
	font-size: 24px;
	line-height: 1.5em;
	font-weight: bold;
	text-align: left;
}

.companyOutlineFlexBlock01 .box .subTtl {
	font-size: 16px;
	line-height: 1.5em;
	font-weight: bold;
	padding: 5px 0 0;
	text-align: left;
}

.companyOutlineFlexBlock01 .box .txt {
	font-size: 14px;
	line-height: 1.5em;
	padding: 20px 0 0;
	text-align: left;
}

/*1カラム*/
.companyOutlineFlexBlock01.col1 .companyOutlineFlexBlock01In {
	display: block;
}

.companyOutlineFlexBlock01.col1 .box {
	width: 100%;
	margin: 0 0 30px 0;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-bottom: dotted 1px #ccc;
	padding: 0 0 30px;
}

.companyOutlineFlexBlock01.col1 .box .txt {
	padding: 0 0;
}

.companyOutlineFlexBlock01.col1 .box .boxL {
	padding: 0 0 0;
	width: 250px;
}

.companyOutlineFlexBlock01.col1 .box .boxL .ttl,
.companyOutlineFlexBlock01.col1 .box .boxL .subTtl {
	text-align: center;
}

.companyOutlineFlexBlock01.col1 .box .boxR {
	flex: 1;
}



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

	/*---------*/
	.pageWrap.COMPANY.OUTLINE .companyOutlineBlock01 .contIn {
		width: auto;
	}

	.companyOutlineFlexBlock01 {
		padding: 20px 0 30px;
	}

	.companyOutlineFlexBlock01In {
		display: block;
	}

	.companyOutlineFlexBlock01 .box {
		width: auto;
		margin: 0 0 30px 0;
	}

	.companyOutlineFlexBlock01 .box:nth-child(2n) {
		margin: 0 0 30px 0;
	}

	.companyOutlineFlexBlock01 .box .ttl {
		font-size: 18px;
		line-height: 1.5em;
		font-weight: bold;
		text-align: left;
	}

	.companyOutlineFlexBlock01 .box .subTtl {
		font-size: 16px;
		line-height: 1.5em;
		font-weight: bold;
		padding: 5px 0 0;
		text-align: left;
	}

	.companyOutlineFlexBlock01 .box .txt {
		font-size: 14px;
		line-height: 1.5em;
		padding: 10px 0 0;
		text-align: left;
	}

	/*1カラム*/
	.companyOutlineFlexBlock01.col1 .box {
		width: 100%;
		margin: 0 0 10px 0;
		display: block;
		padding: 0 0 20px;
	}

	.companyOutlineFlexBlock01.col1 .box .txt {
		padding: 0 0;
	}

	.companyOutlineFlexBlock01.col1 .box .boxL {
		padding: 0 0 0;
		width: auto;
	}

	.companyOutlineFlexBlock01.col1 .box .boxL .ttl,
	.companyOutlineFlexBlock01.col1 .box .boxL .subTtl {
		text-align: center;
	}

	/*-----*/
}

/* -------------------------------------------------------------------- 
導入事例
-------------------------------------------------------------------- */
.pageWrap.CASE {}

/*導入事例*/
.pageWrap.CASE #mainvisualPage3Inner {
	padding: 0;
}

.pageWrap.CASE #mainvisualPage3Inner .text_area .title_box {
	width: 50%;
}

.pageWrap.CASE #mainvisualPage3Inner .text_area .img_box {
	padding-top: 30px;
}

.pageWrap.CASE #mainvisualPage3Inner .text_area .img_box img {
	height: 100%;
}

/*---------*/
.caseBlock01 {
	margin: 0 0 0;
	padding: 70px 0 0;
}

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

/* 3カラム */
.caseFlexBlock01.col3 {
	-webkit-box-pack: start;
	-ms-flex-pack: start;
	justify-content: space-between;
}


/*パターン1*/
.caseFlexBlock01 .caseFlexBox01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: space-between;
	background: #fff;
	width: 515px;
	padding: 30px 35px;
	margin: 0 0 20px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	box-sizing: border-box;
}

a.caseFlexBox01:hover .contBtn06 {
	background: #fff;
	color: #0D64E3;
	text-decoration: none;
}

/*パターン2*/
.caseFlexBlock01 .caseBox01 {
	display: block;
	background: #fff;
	width: 48%;
	padding: 0 0 34px;
	margin: 0 0 45px;
	box-sizing: border-box;
}

a.caseBox01:hover {
	opacity: .7;
}

.caseFlexBlock01 .caseBox01 .caseBoxTtl01 {
	padding: 0 25px 0 0;
	margin-top: 16px;
	box-sizing: border-box;
	width: auto;
}

.caseFlexBlock01 .caseBox01 .caseBoxTtl01 .caseTtl {
	font-size: 15px;
	line-height: 1.8em;
	font-weight: bold;
	margin: 0 0;
	padding: 0 0 0 25px;
	position: relative;
	box-sizing: border-box;
}

.caseFlexBlock01 .caseBox01 .caseBoxTtl01 .caseTtl:before {
	content: "";
	position: absolute;
	width: 11px;
	height: 4px;
	background: #334a85;
	display: inline-block;
	top: 11px;
	left: 0;
	margin: 0;
}

.caseFlexBlock01 .caseBox01 .caseBoxTxt01 {
	padding: 0 25px 0;
	box-sizing: border-box;
	text-align: left;
	margin-top: 0;
	font-size: 14px;
	line-height: 1.857;
}

.caseFlexBlock01 .caseBox01 .caseBoxTxt01 .caseTxt03 {
	padding-top: 15px;
	font-size: 12px;
}

.caseFlexBlock01 .caseBox01 .caseBoxTxt01 .caseTxt03 img {
	vertical-align: middle;
}

.caseFlexBlock01 .caseBox01 .caseBoxImg01 {
	width: auto;
	height: 168px;
	display: table;
	margin: 0 auto;
}

.caseFlexBlock01 .caseBox01 .caseBoxImg01 .caseImgIn01 {
	display: table-cell;
	vertical-align: middle;
	margin: 0 auto;
}

.caseBoxTtl01 {
	text-align: left;
	width: 280px;
	padding: 0 20px 0 0;
}

.caseBoxTtl01 .caseSubTtl {
	color: #fff;
	background: #334A85;
	font-size: 14px;
	line-height: 1.8em;
	margin: 0 0 10px;
	padding: 2px 10px;
	display: inline-block;
}

.caseBoxTtl01 .caseTtl {
	font-size: 18px;
	line-height: 1.8em;
	font-weight: bold;
	margin: 0 0 10px;
}

.caseBoxTtl01 .caseTxt01 {
	color: #092E57;
	font-size: 16px;
	line-height: 1.8em;
	margin: 0 0 20px;
}

.caseBoxTtl01 .caseTxt02 {
	font-size: 14px;
	line-height: 1.8em;
}

.caseBoxImg01 {}

.caseImgIn01 {
	overflow: hidden;
}

.pageWrap .caseBoxImg01 .caseBtn01 {
	margin: 0 0 0;
}

.pageWrap .caseBoxImg01 .caseBtn01>div {
	font-size: 10px;
	line-height: 1.4em;
	width: 120px;
	min-height: 29px;
	line-height: 29px;
}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.pageWrap.CASE {}

	.pageWrap.CASE #mainvisualPage3Inner {
		padding: 30px 20px 0;
	}

	.pageWrap.CASE #mainvisualPage3Inner .text_area .title_box {
		padding-top: 0;
		width: 100%;
	}

	.pageWrap.CASE #mainvisualPage3Inner .text_area .img_box {
		padding-top: 0;
	}

	/*---------*/
	.caseBlock01 {
		padding: 20px 20px 0;
		margin: 0 0 0;
	}

	.caseFlexBlock01 {
		padding: 0 0 0;
	}

	/* 3カラム */
	.caseFlexBlock01.col3 .caseBox01 {
		margin-right: 0;
	}

	.caseFlexBlock01.col3 .caseBox01:nth-child(3n) {
		margin-right: 0;
	}

	/*パターン1*/
	.caseFlexBox01 {
		display: block;
		background: #fff;
		width: 100%;
		padding: 20px 20px;
		margin: 0 0 20px;
		box-sizing: border-box;
	}

	/*パターン2*/
	.caseFlexBlock01 .caseBox01 {
		display: block;
		background: #fff;
		width: auto;
		padding: 30px 0;
		margin: 0 auto 20px;
	}

	.caseFlexBlock01 .caseBox01 .caseBoxTtl01 {
		padding: 0 25px 0 0;
	}

	.caseFlexBlock01 .caseBox01 .caseBoxTtl01 .caseTtl {
		font-size: 15px;
		line-height: 1.73;
		margin: 0 0 20px;
		padding: 0 0 0 20px;
	}

	.caseFlexBlock01 .caseBox01 .caseBoxTxt01 {
		padding: 0 35px;
		margin-top: 20px;
	}

	.caseBoxTtl01 {
		text-align: left;
		width: auto;
		padding: 0 0 20px;
	}

	.caseBoxTtl01 .caseTxt01 {
		color: #092E57;
		font-size: 16px;
		line-height: 1.8em;
		margin: 0 0 10px;
	}

	.caseBoxImg01 {
		width: 160px;
		text-align: center;
		margin: 0 auto;
	}

	/*---------*/
}

/* =================================
企業ロゴ スライダー
================================== */
.pageWrap .companyLogoList {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	height: 89px;
	background: #fff;
}

.pageWrap .companyLogoList .companyLogoListTtl {
	padding: 10px 30px;
	text-align: center;
	font-size: 18px;
	font-weight: bold;
	background: #1A2D53;
	width: 259px;
	line-height: 1.5em;
	position: relative;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;

}

.pageWrap .companyLogoList .companyLogoListTtl p,
.pageWrap .companyLogoList .companyLogoListTtl a {
	width: 100%;
	display: block;
	text-decoration: none;
	color: #fff;
	font-weight: bold;
}

.pageWrap .companyLogoList .companyLogoListTtl a:hover {
	opacity: 0.6;
}

.pageWrap .companyLogoList .companyLogoListTtl span {
	font-size: 26px;
	color: #967D43;
}

.pageWrap .companyLogoList .companyLogoListTtl:before {
	content: "";
	background-image: url(./../../images/top/companylogo_ico_l.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100%;
	width: 20px;
	height: 65px;
	position: absolute;
	left: 20px;
	top: 12px;
}

.pageWrap .companyLogoList .companyLogoListTtl:after {
	content: "";
	background-image: url(./../../images/top/companylogo_ico_r.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100%;
	width: 20px;
	height: 65px;
	position: absolute;
	right: 20px;
	top: 12px;
}

.pageWrap .companyLogoList .logo_slider {
	width: calc(100% - 259px);
}

.pageWrap .companyLogoList ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	margin: 0 0 0;
	padding: 0;
	width: 100%;
}

.pageWrap .companyLogoList ul li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding: 0 10px;
	margin: 0;
	/*
    border-right: 1px solid #CFCDCD;
    border-bottom: 1px solid #CFCDCD;
*/
	height: 89px;

}

.pageWrap .companyLogoList ul li a {
	width: 100%;
	display: block;
	text-decoration: none;
}

.pageWrap .companyLogoList ul li a:hover {
	opacity: 0.6;
}

.pageWrap .companyLogoList ul li.first {
	padding: 10px 30px;
	text-align: left;
	font-size: 18px;
	font-weight: bold;
	background: #E0E0E0;
	width: 212px;
	position: relative;
}

.pageWrap .companyLogoList ul li.first span {
	font-size: 22px;
	color: #334A85;
}

.pageWrap .companyLogoList ul li.first:after {
	content: "";
	width: 10px;
	height: 10px;
	border: 1px solid;
	border-color: transparent transparent #707070 #707070;
	-webkit-transform: rotate(224deg);
	transform: rotate(224deg);
	position: absolute;
	right: 15px;
	margin-top: -6px;
	top: 50%;
}

/*@media all and (min-width: 0px) and (max-width: 768px) */
@media all and (min-width: 0px) and (max-width: 768px) {
	.pageWrap .companyLogoList {
		display: block;
		height: auto;
		width: 100%;
	}

	.pageWrap .companyLogoList .companyLogoListTtl {
		padding: 10px 0;
		font-size: 18px;
		width: 100%;
		height: 80px;
		line-height: 1.5em;
	}

	.pageWrap .companyLogoList .logo_slider {
		width: 100%;
		padding-left: 0;
	}

}

/* -------------------------------------------------------------------- 
 導入事例 詳細
-------------------------------------------------------------------- */
/**/
.pageWrap.CASE .detailMv #mainvisualPage3Inner {
	padding: 40px 0 40px;
}
.pageWrap.CASE .detailMv #mainvisualPage3Inner .content_right {
	box-sizing: border-box;
	display: grid;
	gap: 24px;
	padding: 10px;
	width: min(100%, 550px);
}
.pageWrap.CASE .detailMv #mainvisualPage3Inner .text_area .title_box {
	width: 50%;
	padding-right: 10px;
}

.pageWrap.CASE .detailMv #mainvisualPage3Inner .text_area .img_box {
	padding-left: 0;
	width: 100%;
	margin: 0 0 0 auto;
	aspect-ratio: 1.9 / 1;
	overflow: hidden;
}

.pageWrap.CASE .detailMv #mainvisualPage3Inner .content_right .content_right_bottom .content_wrapper {
	display: flex;
	gap: 10px;
	align-items: center;
	justify-content: flex-start;
	flex-wrap: wrap;
}
.pageWrap.CASE .detailMv #mainvisualPage3Inner .content_right .content_right_bottom .company-name {
	font-size: 18px;
    font-weight: bold;
    text-align: left;
    margin: 0;
    letter-spacing: 0.03em;
}
.pageWrap.CASE .detailMv #mainvisualPage3Inner .content_right .content_right_bottom .company-logo {
	height: 40px;
	width: auto;
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
}
.pageWrap.CASE .detailMv #mainvisualPage3Inner .content_right .content_right_bottom .company-logo img {
	height: 100%;
}

@media all and (min-width: 0px) and (max-width: 768px) {
	.pageWrap.CASE .detailMv #mainvisualPage3Inner .content_right .content_right_bottom .company-name {
		font-size: 16px;
	}
}

/**/
.caseDetailBlock01 {
	padding: 0 0 0;
}

.caseDetailBlock01 .text01Wrap {
	width: auto;
	margin: 0 auto;
}

.caseDetailBlock01 .text01Wrap .text01,
.caseDetailBlock02 .text01Wrap .text01 {
	font-size: 14px;
	line-height: 1.857;
	text-align: left;
}

.caseDetailBlock02 {
	padding: 75px 0 70px;
}

.caseDetailBlock02 .contDetailMokujiList {
	margin: 0 auto 0;
	padding: 0 0 0;
	text-align: left;
	border: 0;
	background: none;
	font-size: 16px;
	width: auto;
}

.caseDetailBlock02 .contDetailMokujiList li {
	list-style: none;
	position: relative;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

.caseDetailBlock02 .contDetailMokujiList li:hover {
	opacity: .7;
}

.caseDetailBlock02 .contDetailMokujiList li::after {
	content: "";
	background-image: url(../img/case/detail/list.png);
	background-repeat: no-repeat;
	background-position: center;
	background-size: contain;
	width: 10px;
	height: 8px;
	display: inline-block;
	position: absolute;
	top: 50%;
	right: 25px;
	margin-top: -2px;
}

.caseDetailBlock02 .contDetailMokujiList li:last-child {
	border-bottom: 0;
}

.caseDetailBlock02 .contDetailMokujiList .num {
	font-family: 'Jost', sans-serif;
	font-size: 21px;
	line-height: 1.8em;
	color: #334A85;
	font-weight: normal;
	position: absolute;
	top: 6px;
	left: 35px;
}

.caseDetailBlock02 .contDetailMokujiList .ttl {
	font-size: 16px;
	line-height: 1.8em;
	color: #2B2A2A;
	font-weight: bold;
	width: auto;
	display: inline-block;
}

.caseDetailBlock02 .contDetailMokujiList a {
	font-size: 18px;
	line-height: 1.8em;
	color: #334A85;
	font-weight: bold;
	background: #DFEEE9;
	display: block;
	padding: 8px 45px 8px 90px;
	-webkit-border-radius: 30px;
	-moz-border-radius: 30px;
	border-radius: 30px;
	position: relative;
}

.caseDetailBlock02 .contDetailMokujiList li p {
	margin-bottom: 10px;
	position: relative;
}

.caseDetailBlock03 {
	padding: 70px 0 70px;
	margin-bottom: 20px;
}

.caseDetailBlock03 .title02Wrap {
	padding: 60px 0 30px;
}

.pageWrap section.caseDetailBlock04 {
	padding: 40px 0 0;
}

.caseDetailBlock05 {
	padding: 0 0;
}

/*---------*/
.caseDetailFlexBlock01 {
	display: table;
	background: #fff;
	padding: 35px 30px;
	width: 100%;
	width: calc(100% - 60px);
}

.caseDetailFlexBlock01 .vTop {
	vertical-align: top;
}

.caseDetailBoxTtl01 {
	display: table-cell;
	vertical-align: top;
	padding: 0 0 0 0;
}

.caseDetailBoxTtl01 .caseDetailTxt {
	font-size: 16px;
	line-height: 1.8em;
	text-align: left;
	word-break: break-word;
}

.caseDetailBoxTtl01 .caseDetailTxt p {
	margin: 0 0 30px;
}

.caseDetailBoxTtl01 .caseDetailTxt p:last-child {
	margin: 0 0;
}

.caseDetailBoxImg01 {
	display: table-cell;
	padding: 0 0 0 30px;
}

.caseDetailBoxImg01 img {
	width: auto;
	max-width: initial;
}

.caseDetailBlock04 {
	padding: 60px 0 80px;
}

.caseDetailBlock04 .contBtnWrap02 {
	padding: 35px 0 0;
}

/*---------*/
.caseDetailContBlock01 {
	border: 1px solid #707070;
	box-sizing: border-box;
	margin: 0 auto 60px;
	display: block;
	width: 642px;
}

.caseDetailContBlock01In {
	padding: 50px 40px 50px;
}

.caseDetailContTtl01 {
	font-size: 18px;
	line-height: 1.8em;
	text-align: left;
	margin: 0 0 10px;
}

.caseDetailContBox01 {
	position: relative;
}

.caseDetailContTxt01 {
	font-size: 16px;
	line-height: 1.8em;
	text-align: left;
	padding: 0 140px 0 0;
}

.caseDetailContTxt01 p {
	font-size: 22px;
	font-weight: bold;
	color: #092E57;
}

.caseDetailContBtn01 {
	position: absolute;
	bottom: 0;
	right: 0;
}

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

	/*詳細*/
	.pageWrap.CASE .detailMv #mainvisualPage3Inner {
		padding: 20px;
	}

	.pageWrap.CASE .detailMv .contIn #mainvisualPage3Inner {
		padding: 20px 0;
	}

	.pageWrap.CASE .detailMv #mainvisualPage3Inner .text_area .title_box {
		position: relative;
		width: auto;
		text-align: left;
	}

	.pageWrap.CASE .detailMv #mainvisualPage3Inner .text_area .img_box {
		position: relative;
		left: 0;
		width: auto;
		padding-left: 0;
		margin: 0;
	}

	/*---------*/
	.caseDetailBlock01,
	.caseDetailBlock04 {
		padding: 0 20px;
	}

	.caseDetailBlock01 {
		padding: 20px 20px;
	}

	.caseDetailBlock01 .text01Wrap {
		width: auto;
		margin: 0 auto;
		padding: 0 0 20px;
	}

	.caseDetailBlock02 {
		margin: 0 0;
		padding: 0 0 20px;
	}

	.caseDetailBlock02 .contDetailMokujiList {
		width: auto;
		margin: 0 auto;
		padding: 20px 0 10px;
	}

	.caseDetailBlock02 .contDetailMokujiList li::after {
		right: 15px;
	}

	.caseDetailBlock02 .contDetailMokujiList li p {
		margin-bottom: 10px;
	}

	.caseDetailBlock02 .contDetailMokujiList .num {
		font-size: 14px;
		line-height: 1.5;
		top: 50%;
		left: 22px;
		margin-top: -9px;
	}

	.caseDetailBlock02 .contDetailMokujiList .ttl {
		font-size: 14px;
		line-height: 1.5;
		width: auto;
		padding: 0 20px 0 10px;
	}

	.caseDetailBlock02 .contDetailMokujiList a {
		font-size: 16px;
		line-height: 1.8em;
		padding: 8px 15px 8px 40px;
	}

	.caseDetailBlock02 .contDetailMokujiList .txt {
		display: block;
	}

	.caseDetailBlock03 {
		padding-top: 30px;
		padding-bottom: 30px;
	}

	.caseDetailBlock03 .title02Wrap {
		padding: 30px 0 20px;
	}

	.caseDetailBlock03 .text01Wrap {
		text-align: left;
	}

	.pageWrap section.caseDetailBlock04 {
		padding-top: 30px;
		padding-bottom: 30px;
	}

	.caseDetailBlock05 {
		padding-top: 0;
		padding-bottom: 0;
	}

	.caseDetailFlexBlock01 {
		display: block;
		padding: 20px 20px;
		width: 100%;
		margin: 0 auto;
	}

	.caseDetailBoxTtl01 {
		display: block;
		padding: 0 0;
	}

	.caseDetailBoxImg01 {
		display: block;
		padding: 20px 0 0;
	}

	.caseDetailBoxTtl01 .caseDetailTxt p {
		margin: 0 0 10px;
	}

	.caseDetailBoxImg01 img {
		width: auto;
		max-width: 100%;
	}

	.caseDetailBlock04 {
		padding-top: 30px;
		padding-bottom: 40px;
	}

	.caseDetailBlock04 .contBtnWrap02 {
		padding: 10px 0 30px;
	}

	.contTrialBtn {
		position: relative;
		padding: 20px 0;
	}

	/*---------*/
	.caseDetailContBlock01 {
		border: 1px solid #707070;
		box-sizing: border-box;
		margin: 20px 0 0;
		display: block;
		width: auto;
	}

	.caseDetailContBlock01In {
		padding: 20px 20px 20px;
	}

	.caseDetailContTtl01 {
		font-size: 14px;
		line-height: 1.8em;
		text-align: center;
		margin: 0 0;
	}

	.caseDetailContBox01 {
		position: relative;
	}

	.caseDetailContTxt01 {
		font-size: 16px;
		line-height: 1.8em;
		text-align: center;
		padding: 0 0 0 0;
	}

	.caseDetailContTxt01 p {
		font-size: 16px;
		font-weight: bold;
		color: #092E57;
	}

	.caseDetailContBtn01 {
		position: relative;
		margin: 20px 0 0;
	}

	/*---------*/
}

/* -------------------------------------------------------------------- 
課題から探す
-------------------------------------------------------------------- */
.pageWrap.SOLUTION {}

.pageWrap.SOLUTION .defaultBlock {}

.solutionItems {
	padding: 0 0 70px;
}

.pageWrap.SOLUTION .defaultBlock .solutionItems:last-child {
	padding: 0 0;
}

.solutionItem {
	margin-bottom: 20px;
	display: flex;
	background: #F5F5F5;
	min-height: 180px;
	box-sizing: border-box;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}

.solutionItems .solutionItem:last-child {
	margin-bottom: 0;
}

.double .solutionItem:first-child {
	margin-bottom: 0;
	border: 1px solid #EAEAEA;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	background: #F5F5F5;
	height: 180px;
}

.solutionItem .left {
	background-color: #fff;
	position: relative;
	width: 470px;
	padding: 20px 0;
	text-align: left;
	border: 2px solid #8CBEAE;
	border-right: 0;
	-webkit-border-top-left-radius: 10px;
	-webkit-border-bottom-left-radius: 10px;
	-moz-border-radius-topleft: 10px;
	-moz-border-radius-bottomleft: 10px;
	border-top-left-radius: 10px;
	border-bottom-left-radius: 10px;
}

.solutionItem .center {
	width: 440px;
	padding: 18px 20px 20px 69px;
	border-width: 2px 0px;
	border-top-style: solid;
	border-bottom-style: solid;
	border-top-color: rgb(140, 190, 174);
	border-bottom-color: rgb(140, 190, 174);
	border-image: initial;
	border-left-style: initial;
	border-left-color: initial;
	border-right-style: initial;
	border-right-color: initial;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	flex-direction: column;
	-webkit-box-pack: center;
	justify-content: center;
	box-sizing: border-box;
}

.solutionItem .center .ttl {
	font-size: 16px;
	font-weight: bold;
	color: #334A85;
	line-height: 1.6;
	padding: 0 0 6px;
	text-align: left;
}

.solutionItem .center p {
	text-align: left;
	font-size: 16px;
	line-height: 1.6;
	margin: 0;
}

.solutionItem .right {
	margin-left: auto;
	width: 233px;
}

.solutionItem .right a {
	background-color: #334A85;
	width: 233px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	height: 100%;
	color: #fff;
	position: relative;
	-webkit-transition: all 0.2s ease;
	-moz-transition: all 0.2s ease;
	-o-transition: all 0.2s ease;
	transition: all 0.2s ease;
	border: 2px solid #334A85;
	-webkit-border-top-right-radius: 10px;
	-webkit-border-bottom-right-radius: 10px;
	-moz-border-radius-topright: 10px;
	-moz-border-radius-bottomright: 10px;
	border-top-right-radius: 10px;
	border-bottom-right-radius: 10px;
	box-sizing: border-box;
}

.solutionItem .right a:hover {
	background-color: #fff;
	color: #334A85;

}

.solutionItem .right a:after {
	position: absolute;
	top: 50%;
	bottom: 0;
	right: 20px;
	margin: -4px auto 0;
	content: "";
	vertical-align: middle;
	width: 9px;
	height: 9px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.solutionItem .right a:hover:after {
	border-top: 1px solid #334A85;
	border-right: 1px solid #334A85;
}

.solutionItem .right .cat {
	text-align: left;
	font-size: 13px;
	line-height: 1.6;
	padding: 3px 10px;
	margin: 0 0 10px;
	border: solid 1px #fff;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}

.solutionItem .right a:hover .cat {
	border: solid 1px #334A85;
}

.solutionItem .right p {
	text-align: center;
	font-size: 16px;
	line-height: 1.6;
	font-weight: bold;
	margin: 0;
}

.solutionItem .left::after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	left: 100%;
	width: 30px;
	height: 100%;
	background: linear-gradient(to bottom left, transparent 50%, #fff 50%) top left/ 100% 50% no-repeat,
		linear-gradient(to top left, transparent 50%, #fff 50%) bottom left / 100% 50% no-repeat;
}

.solutionItem .left span {
	padding-left: 16px;
	display: inline-block;
	padding-bottom: 8px;
	border-bottom: 2px solid #8CBEAE;
	color: #334A85;
	font-size: 16px;
	margin-bottom: 15px;

}

.solutionItem .left h3 {
	font-size: 18px;
	font-weight: bold;
	color: #444444;
	line-height: 1.5555;
	letter-spacing: 0.05em;
	padding: 0 20px;
	margin: 0;
}

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

	/*---------*/
	.solutionItem .left {
		width: 100%;
		padding: 20px 0;
		border: 2px solid #8CBEAE;
		border-bottom: 0;
		-webkit-border-top-left-radius: 10px;
		-webkit-border-top-right-radius: 10px;
		-webkit-border-bottom-left-radius: 0;
		-moz-border-radius-topleft: 10px;
		-moz-border-radius-topright: 10px;
		-moz-border-bottom-left-radius: 0;
		border-top-left-radius: 10px;
		border-top-right-radius: 10px;
		border-bottom-left-radius: 0;
		box-sizing: border-box;
	}

	.solutionItem .left::after {
		background: linear-gradient(to bottom left, #fff 50%, transparent 50%) top left/ 50% 100% no-repeat,
			linear-gradient(to bottom right, #fff 50%, transparent 50%) top right / 50% 100% no-repeat;
		width: 100%;
		height: 50px;
		top: 100%;
		left: 0;
	}

	.solutionItem {
		margin-bottom: 30px;
		display: flex;
		background: #F5F5F5;
		height: auto;
		flex-direction: column;
	}

	.solutionItem .left h3 {
		font-size: 16px;
		line-height: 1.5555;
		letter-spacing: 0.05em;
		padding: 0 20px;
	}

	.solutionItem .center {
		width: auto;
		margin-left: 0;
		padding: 70px 20px 20px 20px;
		border: 2px solid #8CBEAE;
		border-bottom: 0;
		border-top: 0;
		box-sizing: border-box;
	}

	.solutionItem .right {
		margin-left: 0;
		margin-top: auto;
		width: auto;
	}

	.solutionItem .right a {
		padding: 10px 0 8px;
		width: auto;
		border-left: 0;
		-webkit-border-bottom-right-radius: 10px;
		-webkit-border-bottom-left-radius: 10px;
		-moz-border-radius-bottomright: 10px;
		-moz-border-radius-bottomleft: 10px;
		border-bottom-right-radius: 10px;
		border-bottom-left-radius: 10px;
		-webkit-border-top-right-radius: 0;
		border-top-right-radius: 0;
	}

	.solutionItem .right p {
		width: 100%;
		font-size: 14px;
	}

	.solutionItem .right .cat {
		text-align: left;
		font-size: 10px;
		line-height: 1.6;
		padding: 3px 10px;
		margin: 0 0 0;
		border: solid 1px #fff;
	}

	.solutionItem .right a:hover {
		border-left: 2px solid #334A85;
	}

	.solutionItem .right a:hover .cat {
		border: solid 1px #334A85;
	}

	/*---------*/
}

/* -------------------------------------------------------------------- 
セミナー
-------------------------------------------------------------------- */
/*---------------*/
.pageWrap.SEMINAR {}

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

.seminarListFlex01 .seminarListBox01 {
	width: 500px;
	background: #fff;
	margin: 0 0 50px;
}

.seminarListImg {
	overflow: hidden;
}

.seminarListTxtBox {
	padding: 0;
}

.seminarListTtl {
	font-size: 20px;
	line-height: 1.6em;
	font-weight: bold;
	text-align: left;
	color: #333333;
	position: relative;
}

.seminarListTtl span {
	position: relative;
	padding: 0 0 20px 20px;
	display: block;
}

.seminarListTtl span:before {
	position: absolute;
	top: 7px;
	bottom: 0;
	left: 0;
	margin: 0 auto 0;
	content: "";
	vertical-align: middle;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 22px 0 0 2px;
	border-color: #334A85;
}

.seminarListTxt {
	font-size: 16px;
	line-height: 1.8em;
	text-align: left;
	color: #2B2A2A;
	padding: 15px 0 0;
}

.seminarListTxtBox .seminarListDate {
	font-size: 16px;
	line-height: 1.625;
	letter-spacing: 0.05em;
	font-weight: bold;
	position: relative;
	padding-left: 0;
	text-align: left;
	margin-bottom: 10px;
}

/*
.seminarListTxtBox .seminarListDate:before{
    content:"■";
	position: absolute;
	left:0;
	color:#334A85;
}
*/
/*カテゴリ*/
.seminarListCat {
	font-size: 12px;
	display: table-cell;
	text-align: left;
	padding: 0 0 5px 0;
}

.seminarListCat span {
	color: #fff;
	background: #2E2A91;
	text-align: center;
	padding: 2px 10px;
	margin: 0 10px 5px 0;
	font-size: 16px;
	display: inline-block;
}

/*カテゴリ　色*/
/*ウェビナー*/
.seminarListCat span.cat01 {
	color: #fff;
	background: #2E2A91;
}

/*受付中*/
.seminarListCat span.cat02 {
	color: #fff;
	background: #FF6436;
}

/*受付終了*/
.seminarListCat span.cat03 {
	color: #fff;
	background: #BABABA;
}

.seminarListBtn {
	width: 120px;
	height: 29px;
	display: table;
	margin: 0 auto;
	background: #0D64E3;
	border: 1px solid #0D64E3;
	color: #fff;
	font-size: 10px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

a.seminarListBox01:hover .seminarListBtn {
	background: #fff;
	color: #0D64E3;
}

.seminarListBtn span {
	display: table-cell;
	vertical-align: middle;
}

/*---------*/
/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.pageWrap.SEMINAR {}

	.seminarListFlex01 {
		padding: 30px 0 0;
	}

	.seminarListBox01 {
		width: 100%;
		background: #fff;
		margin: 0 0 20px;
		display: block;
	}

	.seminarListTtl {
		font-size: 18px;
		line-height: 1.6em;
	}

	.seminarListTtl span {
		padding: 0 0 10px 20px;
	}

	.seminarListTxt {
		font-size: 16px;
		line-height: 1.8em;
		padding: 15px 0 0;
	}

	.seminarListTxtBox .seminarListDate {
		font-size: 14px;
		margin-bottom: 20px;
	}

	.seminarListCat span {
		padding: 2px 10px;
		margin: 0 10px 5px 0;
		font-size: 14px;
	}

	/*---------*/
}

/* -------------------------------------------------------------------- 
セミナー詳細
-------------------------------------------------------------------- */
/*---------------*/
.pageWrap.SEMINAR.DETAIL { padding-top: 110px; }

.pageWrap.SEMINAR.DETAIL .text01Wrap .seminarListCat {
	font-size: 16px;
	letter-spacing: 0.05em;
	font-weight: normal;
	line-height: 1.562;
	text-align: left;
	display: block;
}

.pageWrap.SEMINAR.DETAIL .text01Wrap .seminarTxt {
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.05em;
	line-height: 1.7;
	text-align: left;
	display: block;
}

/*---おすすめ　or 課題----*/
.detailRecommendedBlock01 {
	background: #F5F6F9;
	padding: 25px 30px;
	position: relative;
	text-align: left;
	background-image: url(../img/seminar/detail/img01.png);
	background-repeat: no-repeat;
	background-position: right 60px bottom;
	background-size: contain;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
}

.detailRecommendedBlock01.arrowB {
	margin-bottom: 115px;
}

.detailRecommendedBlock01.arrowB:after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 35px 30px 0 30px;
	border-color: #334A85 transparent transparent transparent;
	position: absolute;
	bottom: -75px;
	left: 50%;
	margin-left: -25px;
}

.detailRecommendedTtl01 {
	font-size: 20px;
	font-weight: bold;
	line-height: 1.8;
	letter-spacing: 0.05em;
	padding: 0 0;
	margin-bottom: 10px;
	color: #334A85;
}

.detailUl01 {
	text-align: left;
	display: inline-block;
	list-style-type: none;
}

.detailUl01 li {
	color: #333333;
	font-size: 18px;
	line-height: 2;
	letter-spacing: 0.05em;
	font-weight: 500;
	text-indent: initial;
	position: relative;
	text-align: left;
	padding: 0 0 0 35px;
	margin: 0 0 0;
	word-break: break-word;
}

.detailUl01 li span {}

.detailUl01 li:before {
	content: "";
	background: url(../img/ico/checkmark.png)no-repeat;
	background-size: 100%;
	position: absolute;
	width: 23px;
	height: 23px;
	left: 0px;
	margin-top: -3px;
	top: 11px;
	display: inline-block;
}

/*---解決----*/
.detailRecommendedBlock02 {
	background: #fff;
	padding: 80px 0;
}

.detailRecommendedBlock02In {
	padding: 0 100px 40px;
	border: 1px solid #334A85;
	background: #fff;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	box-sizing: border-box;
}

.detailRecommendedTtl02 {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.8em;
	padding: 3px 10px;
	color: #fff;
	background: #334A85;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	box-sizing: border-box;
	position: relative;
	top: -20px;
}

.detailRecommendedBlock02 .txt {
	font-size: 22px;
	font-weight: normal;
	line-height: 1.6em;
	padding: 0 0 20px;
}

/*---------*/
/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.pageWrap.SEMINAR.DETAIL {}

	/*---おすすめ----*/
	.detailRecommendedBlock01 {
		padding: 20px;
		background-image: none;
	}

	.detailRecommendedTtl01 {
		font-size: 16px;
	}

	.detailUl01 li {
		font-size: 14px;
		line-height: 1.5em;
		font-weight: 500;
		padding: 0 0 0 35px;
		margin: 0 0 0;
		text-indent: initial;
	}

	.detailUl01 li:before {
		width: 23px;
		height: 23px;
		margin-top: -10px;
		top: 10px;
		display: inline-block;
	}

	.detailRecommendedBlock01.arrowB {
		margin-bottom: 55px;
	}

	.detailRecommendedBlock01.arrowB:after {
		content: "";
		border-style: solid;
		border-width: 20px 15px 0 15px;
		bottom: -35px;
	}

	/*---解決----*/
	.detailRecommendedBlock02 {
		padding: 50px 0 30px;
	}

	.detailRecommendedBlock02In {
		padding: 0 20px 20px;
	}

	.detailRecommendedTtl02 {
		font-size: 18px;
		line-height: 1.8em;
		padding: 3px 10px;
		top: -20px;
	}

	.detailRecommendedBlock02 .txt {
		font-size: 18px;
		font-weight: normal;
		line-height: 1.6em;
		padding: 0 0 10px;
	}
}


/**------**/
.lecturerBlock01 {
	display: table;
	margin-bottom: 40px;
}

.lecturerBlock01 .imgBox,
.lecturerBlock01 .txtBox {
	display: table-cell;
	vertical-align: top;
}

.lecturerBlock01 .imgBox {
	width: 140px;
}

.lecturerBlock01 .txtBox {
	padding-left: 40px;
}

.lecturerBlock01 .txtBox dl {
	padding: 0;
	margin: 0;
}

.lecturerBlock01 .txtBox dl dt {
	text-align: left;
	padding: 0 0 15px;
	margin: 0;
	font-size: 20px;
	line-height: 1.6em;
	font-weight: bold;
	border-bottom: 1px solid #E4E4E4;
}

.lecturerBlock01 .txtBox dl dt span {
	text-align: left;
	padding: 0;
	margin: 0;
	font-size: 16px;
	line-height: 1.6em;
	font-weight: normal;
	display: block;
}

.lecturerBlock01 .txtBox dl dd {
	padding: 15px 0;
	margin: 0;
	font-size: 14px;
	line-height: 1.6em;
	font-weight: normal;
	text-align: left;
	border-bottom: 1px solid #E4E4E4;
}

.lecturerBlock01 .txtBox dl dd span {
	color: #334A85;
}

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

	/**------**/
	.lecturerBlock01 {
		display: block;
		margin-bottom: 20px;
	}

	.lecturerBlock01 .imgBox,
	.lecturerBlock01 .txtBox {
		display: block;
	}

	.lecturerBlock01 .imgBox {
		display: block;
		margin: 0 auto 20px;
	}

	.lecturerBlock01 .txtBox {
		padding-left: 0;
	}

	.lecturerBlock01 .txtBox dl dt {
		padding: 0 0 15px;
		margin: 0;
		font-size: 16px;
		line-height: 1.6em;
	}

	.lecturerBlock01 .txtBox dl dd {
		padding: 15px 0;
		font-size: 14px;
		line-height: 1.6em;
	}

	/*---------*/
}

/**------**/
.detailTable01 {
	width: 100%;
	border-top: 1px solid #E4E4E4;
}

.detailTable01 th {
	text-align: center;
	vertical-align: top;
	border-bottom: 1px solid #E4E4E4;
	border-right: 1px solid #E4E4E4;
	background-color: #fff;
	box-sizing: border-box;
	padding: 20px 20px 14px 20px;
	color: #444444;
	font-size: 16px;
	line-height: 1.56;
	letter-spacing: 0.05em;
	font-weight: bold;
	width: 104px;
}

.detailTable01 td {
	text-align: left;
	vertical-align: middle;
	border-bottom: 1px solid #E4E4E4;
	padding: 16px 35px 14px 35px;
	font-size: 16px;
	line-height: 2;
	letter-spacing: 0.05em;

}

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

	/**------**/
	.detailTable01 tbody {
		display: block;
	}

	.detailTable01 tr {
		display: block;
	}

	.detailTable01 {
		display: block;
		width: auto;
		border-top: none;
	}

	.detailTable01 th {
		display: block;
		text-align: center;
		vertical-align: middle;
		border-top: 1px solid #E4E4E4;
		border-right: none;
		box-sizing: border-box;
		padding: 10px 0 10px;
		color: #444444;
		font-size: 14px;
		line-height: 1.5em;
		font-weight: bold;
		width: auto;
	}

	.detailTable01 td {
		display: block;
		text-align: left;
		vertical-align: middle;
		border-bottom: none;
		padding: 14px 0 14px;
		font-size: 14px;
		line-height: 1.43em;
	}

	/*---------*/
}

/* -------------------------------------------------------------------- 
選ばれる理由
-------------------------------------------------------------------- */
/*---------------*/
.pageWrap.REASON {}

.reasonBlock01 {
	padding: 60px 0 0;
}

.reasonBlock02 {
	padding: 0 0 60px;
}

.reasonBlock03 {
	padding: 0;
	margin: auto;
    width: fit-content;
}
.pageWrap .reasonBlock03 .detailFlex02 {
	flex-direction: row;
	gap: 16px;
}
@media screen and (max-width: 980px) {
	.pageWrap .reasonBlock03 .detailFlex02 {
		flex-direction: column
	}
}
.reasonTxt01 {
	font-size: 14px;
	line-height: 1.43em;
	padding: 15px 0;
	text-align: left;
}

/*---------*/
.reasonFrame01 {
	margin: 60px 0 80px;
	padding: 50px 100px 20px;
	background: #F5F6F9;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	box-sizing: border-box;
	position: relative;
}

.reasonFrame01 .reasonFrameTtl01 {
	font-size: 21px;
	letter-spacing: 0.05em;
	line-height: 1.71;
	margin: 0 0 10px;
	position: relative;
	text-align: left;
	font-weight: bold;
}

.reasonFrame01 .reasonFrameTtl01 span {
	background: #F5F6F9;
	display: inline-block;
	position: relative;
	z-index: 1;
	padding: 0 40px 0 0;
}

.reasonFrame01 .reasonFrameTtl01::after {
	position: absolute;
	content: "";
	width: 100%;
	height: 1px;
	background: #334A85;
	display: inline-block;
	top: 50%;
	right: 0;
}

.reasonFrameTxt01 {
	font-size: 16px;
	line-height: 1.8em;
	padding: 0 0 30px;
	text-align: left;
}

.reasonFrameFlex01 {
	margin: 0 0 30px;
	position: relative;
}

.reasonFrameFlex01.erase::after {
	position: absolute;
	content: "";
	display: block;
	transform: rotate(10deg);
	background-color: rgb(51, 51, 51);
	width: 100%;
	height: 1px;
	top: 50%;
	left: 0px;
}

.reasonFrameFlex01In {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.reasonFrameFlex01In {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.reasonFrameFlex01In .reasonFrameFlexCol01:nth-child(2n) {
	padding: 0 0 0 30px;
}

.reasonFrameFlexCol01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.reasonFrameFlexCol01 .img {
	padding: 0 0 0;
}

.reasonFrameFlexCol01 .txt {
	flex: 1;
	text-align: left;
	padding: 0 0 0 20px;
	font-size: 14px;
	line-height: 2;
}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.pageWrap.REASON {}

	.reasonBlock01 {
		padding: 30px 0 0;
	}

	.reasonBlock02 {
		padding: 0 0 30px;
	}

	.reasonBlock03 {
		padding: 0 20px 0;
	}

	/*---------*/
	.reasonFrame01 {
		padding: 30px 20px 10px;
		margin: 35px 0 40px;
	}

	.reasonFrame01 .reasonFrameTtl01 {
		font-size: 18px;
		letter-spacing: 0.05em;
		line-height: 1.71;
		margin: 0 0 10px;
		border-bottom: solid 1px #334A85;
		padding: 0 0 5px;
	}

	.reasonFrame01 .reasonFrameTtl01 span {
		background: none;
		padding: 0 0 0;
	}

	.reasonFrame01 .reasonFrameTtl01::after {
		content: none;
	}

	.reasonFrameTxt01 {
		font-size: 16px;
		line-height: 1.8em;
		padding: 0 0 20px;
		text-align: left;
	}

	.reasonFrameFlex01 {
		margin: 0 0 10px;
	}

	.reasonFrameFlex01.erase::after {
		position: absolute;
		content: "";
		display: block;
		transform: rotate(40deg);
		background-color: rgb(51, 51, 51);
		width: 100%;
		height: 1px;
		top: 50%;
		left: 0px;
	}

	.reasonFrameFlex01In {
		display: block;
	}

	.reasonFrameFlex01In .reasonFrameFlexCol01:nth-child(2n) {
		padding: 0 0;
	}

	.reasonFrameFlexTtl01 {
		font-size: 16px;
		line-height: 1.8em;
		font-weight: bold;
		color: #334A85;
		padding: 0 0 10px;
	}

	.reasonFrameFlexCol01 {
		display: block;
	}

	.reasonFrameFlexCol01 .img {
		padding: 10px 0 10px;
		text-align: center;
	}

	.reasonFrameFlexCol01 .img img {
		margin: 0 auto;
		display: block;
	}

	.reasonFrameFlexCol01 .txt {
		padding: 0 0 20px;
		text-align: left;
	}

	/*---------*/
}

/*----------米Twitter社公認商用可能データ利用サービス認定 バナー-------------*/
.ctaBorderBlock01 {
	border: 1px solid #707070;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	margin: 40px 0;
}

.ctaBorderBlock01In {
	padding: 30px;
}

.ctaBorderBlockTtl01 {
	font-size: 22px;
	font-weight: bold;
	margin: 0 0 40px;
	border-bottom: solid 1px #334a85;
	display: inline-block;
	padding: 0 0 12px;
	line-height: 1.6em;
}

.ctaBorderBlockTtl01 span {
	color: #1DA1F2;
	padding: 0 20px 0 0;
	font-size: 24px;
}

.ctaBorderFlex01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}

.ctaBorderFlex01 .borderFlexCell01 {}

.ctaBorderFlex01 .borderFlexCell02 {
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.ctaBorderFlex01 .borderFlexText01 {
	text-align: left;
	font-size: 16px;
	line-height: 1.625;
	letter-spacing: 0.05em;
	padding: 0 0 0 10px;
}

.ctaBorderFlex01 .borderFlexText01 a {
	color: #368B33;
	text-decoration: underline;
}

.ctaBorderFlex01 .borderFlexText01 a:hover {
	text-decoration: none;
}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.ctaBorderFlex01 {
		display: block;
	}

	.ctaBorderBlock01In {
		padding: 20px;
	}

	.ctaBorderBlockTtl01 {
		font-size: 16px;
		margin: 0 0 20px;
		padding: 0 0 7px;
		line-height: 1.6em;
	}

	.ctaBorderBlockTtl01 span {
		display: block;
		padding: 0 0 0;
		font-size: 18px;
	}

	.ctaBorderFlex01 .borderFlexText01 {
		font-size: 14px;
		margin: 20px 0 0;
		padding: 0 0 0;
	}

	.ctaBorderFlex01 a {
		display: block;
	}
}

/* -------------------------------------------------------------------- 
サービスTOP VER2
-------------------------------------------------------------------- */
div.lineBorder01 {
	border-bottom: solid 1px #EBF4F2;
}

.serviceBlock01 {}

.serviceBlock02 {
	padding: 80px 0;
}

.serviceReasonBlock {
	padding: 80px 0 0;
}

.serviceBlock03 .title02Wrap {
	margin: 0 0 40px;
}

.serviceBlock04 {
	padding: 80px 0;
}

.serviceBlock05 {
	padding: 80px 0 40px;
}

.serviceBlock05 .defaultContTb01 {
	margin: 80px 0 0;
}

/*---おすすめ　or 課題2 ※サービスTOP----*/
.serviceBlock01 .detailRecommendedBlock01 {
	background: none;
	padding: 30px 0 20px;
	position: relative;
}

.serviceBlock01 .detailRecommendedBlock01.arrowB {
	margin-bottom: 115px;
}

.serviceBlock01 .detailRecommendedBlock01.arrowB:after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 35px 30px 0 30px;
	border-color: #334A85 transparent transparent transparent;
	position: absolute;
	bottom: -75px;
	left: 50%;
	margin-left: -25px;
}

.serviceBlock01 .detailRecommendedTtl01 {
	font-size: 40px;
	font-weight: bold;
	line-height: 1.8em;
	margin: 0 0 30px;
	color: #36B9FF;
}

.serviceBlock01 .detailUl {
	text-align: left;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 0 0 0;
	counter-reset: number 0;
	list-style: none;
}

.serviceBlock01 .detailUl.flexC {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}

.serviceBlock01 .detailUl li {
	color: #333333;
	font-size: 16px;
	line-height: 1.3em;
	font-weight: 500;
	position: relative;
	text-align: left;
	margin: 0 20px 0 0;
	word-break: break-word;
	width: 340px;
	background: #F5F6F9;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	padding: 45px 0 35px;

}

.serviceBlock01 .detailUl li:before {
	counter-increment: number 1;
	content: counter(number, decimal-leading-zero);
	font-family: 'Jost', sans-serif;
	position: absolute;
	font-size: 40px;
	font-weight: normal;
	color: #334A85;
	z-index: 1;
	left: 0;
	right: 0;
	top: -11px;
	margin: 0 auto;
	display: block;
	text-align: center;
}

.serviceBlock01 .detailUl li:nth-child(3n) {
	margin: 0 0 0 0;
}

.serviceBlock01 .detailUl li span {}

.serviceBlock01 .detailUl li span.img {
	padding: 0 0 20px;
	display: block;
}

.serviceBlock01 .detailUl li span.img img {
	text-align: center;
	display: block;
	margin: 0 auto;
}

.serviceBlock01 .detailUl li span.txt {
	position: relative;
	display: block;
	padding: 0 40px 0;
	display: block;
	line-height: 2em;
}

/*---解決----*/
.serviceBlock01 .detailRecommendedBlock02 {
	background: #F5F6F9;
	padding: 80px 0;
}

.serviceBlock01 .detailRecommendedBlock02In {
	padding: 40px 40px;
	margin-top: 40px;
	border: 0;
	background: #fff;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	box-sizing: border-box;
}

.detailRecommendedTtl02 {
	font-size: 32px;
	font-weight: bold;
	line-height: 1.4em;
	padding: 20px 10px;
	color: #fff;
	background: #334A85;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	box-sizing: border-box;
	position: relative;
	top: -20px;
}

.serviceBlock01 .detailRecommendedBlock02 .txt {
	font-size: 16px;
	font-weight: normal;
	line-height: 2em;
	padding: 0 0 20px;
	text-align: center;
}


.serviceBlock01 .detailRecommendedBlock02 .wrapper-flex {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
}

.serviceBlock01 .detailRecommendedBlock02 .wrapper-flex .txt {
	text-align: left;
	width: 65%;
}

.serviceBlock01 .detailRecommendedBlock02 .wrapper-flex .detailRecommendedBlock02In {
	background: transparent;
	width: 25%;
	padding: 0;
    margin: 0;
}

@media (max-width: 480px) {
	.serviceBlock01 .detailRecommendedBlock02 .wrapper-flex {
		flex-direction: column;
	}
	.serviceBlock01 .detailRecommendedBlock02 .wrapper-flex .txt,
	.serviceBlock01 .detailRecommendedBlock02 .wrapper-flex .detailRecommendedBlock02In {
		width: 100%;
	}
}

/*---------*/
/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.pageWrap .contactWrap01 .contactContIn.center {
		padding: 30px 20px;
	}

	.serviceBlock01 {
		padding: 20px 0 0;
	}

	.serviceBlock02 {
		padding: 20px 20px 0;
	}

	.serviceReasonBlock {
		padding: 20px 20px 0;
	}

	.pageWrap .serviceBlock03 {
		padding: 30px 20px 0;
	}

	.serviceBlock03 .title02Wrap {
		margin: 0 0 20px;
	}

	.serviceBlock05 {
		padding: 40px 20px;
	}

	.serviceBlock05 .defaultContTb01 {
		margin: 40px 0;
	}

	/*---おすすめ----*/
	.serviceBlock01 .detailRecommendedBlock01 {
		padding: 20px 0 20px;
	}

	.serviceBlock01 .detailRecommendedTtl01 {
		font-size: 20px;
	}

	.serviceBlock01 .detailUl {
		padding: 0 0 0;
		display: block;
	}

	.serviceBlock01 .detailUl li,
	.serviceBlock01 .detailUl li:nth-child(3n) {
		display: block;
		font-size: 14px;
		line-height: 1.3em;
		font-weight: 500;
		margin: 50px 0 20px;
		width: auto;
	}

	.serviceBlock01 .detailUl li span.txt {
		width: auto;
		margin-left: 0;
		padding: 0 20px 0;
	}

	.serviceBlock01 .detailUl li img {
		display: block;
		margin: 0 auto 10px;
	}

	.serviceBlock01 .detailUl li:before {
		display: inline-block;
	}

	.serviceBlock01 .detailRecommendedBlock01.arrowB {
		margin-bottom: 55px;
	}

	.serviceBlock01 .detailRecommendedBlock01.arrowB:after {
		content: "";
		border-style: solid;
		border-width: 20px 15px 0 15px;
		bottom: -19px;
	}

	/*---解決----*/
	.serviceBlock01 .detailRecommendedBlock02 {
		padding: 40px 0 50px;
	}

	.serviceBlock01 .detailRecommendedBlock02In {
		padding: 10px 10px 10px;
	}

	.detailRecommendedTtl02 {
		font-size: 14px;
		line-height: 1.5em;
		padding: 3px 10px;
		top: -20px;
	}

	.serviceBlock01 .detailRecommendedBlock02 .txt {
		font-size: 14px;
		font-weight: normal;
		line-height: 1.6em;
		padding: 0 0 10px;
		text-align: left;
	}
}

/*---機能----*/
.serviceFunction {
	padding: 80px 0;
}

.serviceFunction .stepBlock01 {
	counter-reset: number 0;
}

.serviceFunction .stepBlock01 .stepBox01 {
	padding: 50px 70px;
	border-bottom: 0;
}

.serviceFunction .stepBlock01 .stepTtl01 {
	position: relative;
	color: #2B2A2A;
	font-size: 30px;
	font-weight: bold;
	text-align: left;
	border-bottom: solid 1px #334A85;
	margin-bottom: 40px;
	letter-spacing: 0.05em;
}

.serviceFunction .stepBlock01 .stepTtl01:before {
	counter-increment: number 1;
	content: counter(number, decimal-leading-zero);
	font-family: 'Jost', sans-serif;
    font-size: 54px;
	line-height: 1.4;
	font-weight: normal;
	color: #334A85;
	z-index: -1;
	padding-right: 30px;
	vertical-align: middle;
}

.serviceFunction .stepBlock01 .stepTxtBlock01 {
	margin-bottom: 60px;
}

.serviceFunction .stepTxt01 {
	text-align: left;
	margin-bottom: 40px;
}

.serviceFunction .stepTxt01 dt {
	font-size: 22px;
	line-height: 2em;
	font-weight: bold;
	margin-bottom: 10px;
	letter-spacing: 0.01em;
}

.serviceFunction .stepTxt01 dd {
	padding: 0;
	margin: 0;
	font-size: 16px;
	line-height: 2em;
	font-weight: normal;
}

.serviceFunction .stepImg01 {}

.serviceFunction .stepImg01.img04 {
	width: 680px;
	margin: auto;
}

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

	/*---機能----*/
	.serviceFunction {
		padding: 40px 0;
	}

	.serviceFunction .stepBlock01 {
		counter-reset: number 0;
		padding: 0 10px;
	}

	.serviceFunction .stepBlock01 .stepBox01 {
		padding: 20px 10px 20px;
	}

	.serviceFunction .stepBlock01 .stepTtl01 {
		font-size: 18px;
		margin-bottom: 20px;
	}

	.serviceFunction .stepBlock01 .stepTtl01:before {
		counter-increment: number 1;
		content: counter(number, decimal-leading-zero);
		font-family: 'Jost', sans-serif;
		font-size: 22px;
		font-weight: bold;
		z-index: -1;
		padding-right: 20px;
		vertical-align: middle;
	}

	.serviceFunction .stepBlock01 .stepTxtBlock01 {
		margin-bottom: 40px;
	}

	.serviceFunction .stepTxt01 {
		text-align: left;
		border-left: 0;
		padding-left: 0;
		margin-bottom: 20px;
	}

	.serviceFunction .stepTxt01 dt {
		font-size: 16px;
		line-height: 1.6em;
		font-weight: bold;
		margin-bottom: 10px;
	}

	.serviceFunction .stepTxt01 dd {
		padding: 0;
		margin: 0;
		font-size: 14px;
		line-height: 1.6em;
		font-weight: normal;
	}

	.serviceFunction .stepTxt01 .stepImg01 {}

}

/* -------------------------------------------------------------------- 
サービス詳細
-------------------------------------------------------------------- */
/*---------------*/
.pageWrap.SERVICE.DETAIL {}

.pageWrap.SERVICE.DETAIL #mainvisualPage3Inner .text_area {
}

.pageWrap.SERVICE.DETAIL .mv01 #mainvisualPage3Inner .text_area .title_box {
	width: 540px;
}

/*e-mining(イーマイニング）*/
#e_mining .pageWrap.SERVICE.DETAIL .mv01 #mainvisualPage3Inner .text_area .img_box img {
	position: relative;
	right: -70px;
}


.IT__wrapper {
	width: 1060px;
	display: grid;
	margin: auto;
	overflow: hidden;
	position: relative;
}

.IT__header {
	display: grid;
	grid-template-areas: "promotion title . img";
	grid-template-columns: repeat(4, 1fr);
	grid-template-rows: 1fr;
	position: relative;
	padding-top: 92px;
}

.IT__title {
	grid-column: 2 / 4;
	grid-row: 1;
	font-size: 24px;
	position: relative;
	z-index: 10;
}

.IT__title span {
	color: orangered;
	font-size: 2em;
	display: inline-block;
}

.IT__promotion {
	background: #FFB100;
	border-radius: 100%;
	color: white;
	font-size: 28px;
	font-weight: bold;
	grid-column: 1 / 2;
	grid-row: 1;
	width: 180px;
	height: 180px;
	padding: 10px;
	margin-left: auto;
	aspect-ratio: 1;
	display: flex;
	flex-direction: column;
	justify-content: center;
}

.IT__promotion span {
	font-size: 2.5em;
	display: block;
	line-height: 0.8;
}

.IT__img {
	grid-column: 3 / 5;
	grid-row: 1;
	position: absolute;
	inset-inline-end: 0;
	inset-block-start: -91px;
	width: 385px;
	z-index: 0;
}

.IT__contents {
	display: flex;
	justify-content: space-around;
	padding-top: 48px;
	position: relative;
	z-index: 10;
}

.IT__contents-item {
	width: 30%;
	border: 3px solid #334A85;
	border-radius: 10px;
	overflow: hidden;
	font-size: 24px;
	font-weight: bold;
	color: #334A85;
}

.IT__contents-item__title {
	background: #EDEDED;
	padding: 16px;
}

.IT__contents-item__text {
	padding: 16px;
	background: white;
}


/*SNS運用ガイドライン作成サービス*/
.pageWrap.SERVICE.DETAIL .sns_rule #mainvisualPage2Inner .text_area {
	min-height: 640px;
}

/*---------------*/
.pageWrap.SERVICE.DETAIL #mainvisualPage3Inner .btn01Wrap .btnWrapIn,
.pageWrap.SERVICE.DETAIL #mainvisualPage3Inner .btn01Wrap .contIn {
	width: 100%;
}

.serviceDetailBlock01 {}

.serviceDetailBlock02 {
	padding: 70px 0;
}

.serviceDetailBlock03 {
	padding: 70px 0;
}

.serviceDetailBlock04 {
	padding: 70px 0 100px;
}

.serviceDetailBlock04 .defaultContTb01 {
	margin: 60px 0 0;
}

.serviceDetailBlock05 {
	padding: 70px 0 70px;
	border-top: solid 2px #EBF4F2;
	border-bottom: solid 2px #EBF4F2;
}

.serviceDetailBlock06 {
	padding: 70px 0 0;
}

.serviceComparisonBlock {
	padding: 70px 0;
}

/*------ポイント------*/
.detailPointAc01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding-bottom: 30px;
}

.detailPointAc01 li {
	display: table;
	width: 232px;
	margin-right: 27px;
	margin-bottom: 40px;
	padding: 35px 45px;
	position: relative;
	background: #FFFBF1;
}

.detailPointAc01 li:nth-child(3n) {
	margin-right: 0;
}

.detailPointAc01 li a {
	display: block;
}

.detailPointAc01 .pointAncTtl01 {
	display: block;
	font-size: 10px;
	line-height: 1.0em;
	color: #334A85;
	text-align: center;
	width: 45px;
	position: absolute;
	top: -40px;
	left: 5px;
}

.detailPointAc01 .pointAncTtl01 span {
	font-family: 'Jost', sans-serif;
	font-size: 40px;
	line-height: 1.6em;
	font-weight: 400;
	display: block;
	text-align: left;
	margin-top: -5px;
}

.detailPointAc01 .pointAncText01 {
	font-size: 18px;
	line-height: 1.6em;
	font-weight: bold;
	text-align: left;
}

/*---*/
.detailPointListBlock01 {
	padding: 80px 0;
}

.detailPointListBox01 {
	margin-bottom: 170px;
}

.detailPointListBlock01 .detailPointListBox01:last-child {
	margin-bottom: 0;
}

.detailPointListBox01 .detailPointListTxt {
	font-size: 16px;
	line-height: 1.6em;
	text-align: left;
}

.detailPointListBox01 .detailPointListTxt p {}

.detailPointListBox01 a {}

.detailPointListTtlFlex01 {
	margin-bottom: 30px;
}

.detailPointTb01 {
	display: table;
	width: 100%;
	background-color: #fff;
	border: 1px solid #334A85;
	color: #334A85;
}

.detailPointTb01 .cell1 {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
	background-color: #334A85;
	color: #fff;
	width: 120px;
	height: 120px;
}

.detailPointTb01 .cell1 p {
	font-size: 10px;
	line-height: 1.6em;
}

.detailPointTb01 .cell1 span {
	font-size: 40px;
	line-height: 1.6em;
	display: block;
	margin-top: -10px;
}

.detailPointTb01 .cell2 {
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	padding: 20px 40px;
}

.detailPointTb01 .cell2 .subTtl {
	font-size: 18px;
	line-height: 1.6em;
	color: #2B2A2A;
	margin-bottom: 0;
}

.detailPointTb01 .cell2 .ttl {
	font-size: 28px;
	line-height: 1.6em;
	font-weight: bold;
}

.detailPointTb01 .cell2 .ttl span {
	color: #334A85;
}

.detailPointTb01 .cell2 .ttl span.label {
	color: #2B2A2A;
	background: #E0E0E0;
	display: inline-block;
	padding: 3px 10px;
	font-size: 18px;
	line-height: 1.6em;
	margin-left: 100px;
	position: relative;
	top: -2px;
}

/*---*/
.detailBeforeAfterBlock {
	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: 40px;
	margin-bottom: 60px;
}

.detailBeforeAfterBlock .box1 {
	width: 280px;
	border: 1px solid #C6C6C6;
	background-color: #D1D0D0;
	padding: 20px 30px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	font-size: 14px;
	line-height: 1.6em;
	text-align: left;
	position: relative;
}

.detailBeforeAfterBlock .box1:after {
	content: "";
	background: url(/images/service/detail/arrow_r.png)no-repeat;
	background-size: 100%;
	position: absolute;
	width: 104px;
	height: 38px;
	top: 50%;
	margin-top: -20px;
	right: -122px;
}

.detailBeforeAfterBlock .box2 {
	width: 647px;
	border: 1px solid #C6C6C6;
	background-color: #EDEDED;
	position: relative;
	padding: 20px 30px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	font-size: 14px;
	line-height: 1.6em;
	text-align: left;
	position: relative;
}

.detailBeforeAfterBlock .box1 .detailDl01,
.detailBeforeAfterBlock .box2 .detailDl01 {
	position: relative;
}

.detailBeforeAfterBlock .box1 .detailDl01 dt,
.detailBeforeAfterBlock .box2 .detailDl01 dt {
	position: absolute;
	top: -53px;
	left: 0;
	right: 0;
	text-align: center;
	font-family: 'Jost', sans-serif;
	font-size: 24px;
	line-height: 1.6em;
	color: #334A85;
}

.detailBeforeAfterBlock .box1 .detailDl01 dd,
.detailBeforeAfterBlock .box2 .detailDl01 dd {
	padding: 0;
	margin: 0;
}

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

	/*---------------*/
	.pageWrap.SERVICE.DETAIL {}

	.pageWrap.SERVICE.DETAIL .mv01 #mainvisualPage3Inner .text_area .title_box {
		width: auto;
	}

	/*e-mining(イーマイニング）*/
	#e_mining .pageWrap.SERVICE.DETAIL .mv01 #mainvisualPage3Inner .text_area .img_box img {
		right: 0;
	}

	.IT__wrapper {
		width: 100%;
	}

	.IT__header {
		grid-template-columns: auto;
		padding-top: 106px;
	}

	.IT__title {
		font-size: clamp(16px, 3.5vw, 24px);
		position: relative;
		z-index: 10;
		width: 63vw;
		margin: auto;
	}

	.IT__contents {
		flex-direction: column;
		gap: 16px
	}

	.IT__promotion {
		width: max(26vw, 120px);
		height: max(26vw, 120px);
		padding: 10px;
		position: absolute;
		inset-block-start: -101px;
		font-size: clamp(20px, 3.5vw, 24px);
	}

	.IT__img {
		inset-inline-end: -68px;
		inset-block-start: 0;
		width: 270px;
	}

	.IT__contents-item {
		width: 98%;
	}


	/*SNS運用ガイドライン作成サービス*/
	.pageWrap.SERVICE.DETAIL .sns_rule #mainvisualPage2Inner .text_area {
		min-height: auto;
		padding: 0 0 30px;
	}

	/*---------------*/
	.pageWrap.SERVICE .pageNaviWrap01 {
		padding: 20px 0;
	}

	.serviceDetailBlock01 {}

	.serviceDetailBlock02 {
		padding: 30px 0;
	}

	.serviceDetailBlock03 {
		padding: 40px 20px 40px;
	}

	.serviceDetailBlock04 {
		padding: 40px 0 50px;
	}

	.serviceDetailBlock04 .defaultContTb01 {
		margin: 30px 0 0;
	}

	.serviceDetailBlock05 {
		padding: 30px 0 30px;
	}

	.serviceDetailBlock06 {
		padding: 30px 0 0;
	}

	.serviceComparisonBlock {
		padding: 30px 0;
	}

	/*------ポイント------*/
	.detailPointAc01 {
		padding: 50px 0 0;
	}

	.detailPointAc01 li {
		display: table;
		width: 100%;
		margin-right: 0;
		margin-bottom: 50px;
		padding: 35px 45px;
		position: relative;
		background: #FFFBF1;
	}

	.detailPointAc01 li:nth-child(3n) {
		margin-right: 0;
	}

	.detailPointAc01 li a {
		display: block;
	}

	.detailPointAc01 .pointAncTtl01 {
		font-size: 10px;
		line-height: 1.0em;
		width: 45px;
		position: absolute;
		top: -40px;
		left: 5px;
	}

	.detailPointAc01 .pointAncTtl01 span {
		font-size: 40px;
		line-height: 1.6em;
		font-weight: 400;
		display: block;
		text-align: left;
	}

	.detailPointAc01 .pointAncText01 {
		font-size: 18px;
		line-height: 1.6em;
		font-weight: bold;
		text-align: left;
	}

	/*---*/
	.detailPointListBlock01 {
		padding: 20px 0 30px;
	}

	.detailPointListBox01 {
		margin-bottom: 40px;
	}

	.detailPointListBlock01 .detailPointListBox01:last-child {
		margin-bottom: 0;
	}

	.detailPointListBox01 .detailPointListTxt {
		font-size: 16px;
		line-height: 1.6em;
		text-align: left;
	}

	.detailPointListBox01 .detailPointListTxt p {}

	.detailPointListBox01 a {}

	.detailPointListTtlFlex01 {
		margin-bottom: 20px;
	}

	.detailPointTb01 {
		display: block;
		width: 100%;
	}

	.detailPointTb01 .cell1 {
		display: block;
		text-align: center;
		width: 100%;
		height: auto;
		padding: 5px 20px;
	}

	.detailPointTb01 .cell2 {
		display: block;
		text-align: left;
		vertical-align: middle;
		padding: 20px 20px;
	}

	.detailPointTb01 .cell2 .subTtl {
		font-size: 16px;
		line-height: 1.6em;
		color: #2B2A2A;
		margin-bottom: 0;
	}

	.detailPointTb01 .cell2 .ttl {
		font-size: 20px;
		line-height: 1.6em;
		font-weight: bold;
	}

	.detailPointTb01 .cell2 .ttl span {
		color: #334A85;
	}

	.detailPointTb01 .cell2 .ttl span.label {
		display: inline-block;
		padding: 3px 10px;
		font-size: 12px;
		line-height: 1.6em;
		margin-left: 20px;
		position: relative;
		top: -2px;
	}

	/*---*/
	.detailBeforeAfterBlock {
		margin-top: 40px;
		margin-bottom: 40px;
	}

	.detailBeforeAfterBlock .box1 {
		width: 100%;
		padding: 10px 20px;
		margin-bottom: 85px;
		font-size: 14px;
		line-height: 1.6em;
	}

	.detailBeforeAfterBlock .box1:after {
		content: "";
		background: url(/images/service/detail/arrow_b.png)no-repeat;
		background-size: 100%;
		position: absolute;
		width: 38px;
		height: 56px;
		top: initial;
		bottom: -65px;
		margin: 0 auto;
		right: 0;
		left: 0;
	}

	.detailBeforeAfterBlock .box2 {
		width: 100%;
		padding: 10px 20px;
		font-size: 14px;
		line-height: 1.6em;
	}

	.detailBeforeAfterBlock .box1 .detailDl01,
	.detailBeforeAfterBlock .box2 .detailDl01 {
		position: relative;
	}

	.detailBeforeAfterBlock .box1 .detailDl01 dt,
	.detailBeforeAfterBlock .box2 .detailDl01 dt {
		top: -43px;
		font-size: 24px;
		line-height: 1.6em;
		color: #334A85;
	}

	.detailBeforeAfterBlock .box1 .detailDl01 dd,
	.detailBeforeAfterBlock .box2 .detailDl01 dd {
		padding: 0;
		margin: 0;
	}
}

/* -------------------------------------------------------------------- 
サービス詳細 e-mining(イーマイニング）
-------------------------------------------------------------------- */
.servicePage.e_mining {}

.servicePage.e_mining #mainvisualPage2Inner .text_area {
	min-height: 585px;
}

.servicePage.e_mining #mainvisualPage2Inner .imgBlock02 {
	padding-left: 30px;
}

.servicePage.e_mining #mainvisualPage2Inner .text_area .title {
	font-size: 42px;
}

.servicePage.e_mining #mainvisualPage2Inner .text_area .txt_box_img {
	display: flex;
	align-items: center;
}

.servicePage.e_mining #mainvisualPage2Inner .text_area .txt_box_img img {
	height: 100%;
	width: 75%;
}

.servicePage.e_mining #mainvisualPage2Inner .text_area .txt_box_img .IT__promotion {
	width: 104px;
	height: 104px;
	font-size: 18px;
}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.servicePage.e_mining #mainvisualPage2Inner .text_area {
		min-height: auto;
	}

	.servicePage.e_mining #mainvisualPage2Inner .imgBlock02 {
		width: auto;
		padding-left: 0;
	}

	.servicePage.e_mining #mainvisualPage2Inner .text_area .img_box {
		right: 0;
		padding-bottom: 20px;
	}

	.servicePage.e_mining #mainvisualPage2Inner .text_area .txt_box_img .IT__promotion {
		width: 16vw;
		height: 16vw;
		font-size: 2.6vw;
		padding: 4px;
		inset-block-start: 338px;
		inset-inline-start: 76vw;
	}
}

/* -------------------------------------------------------------------- 
サービス詳細 炎上リスクモニタリング
-------------------------------------------------------------------- */
.servicePage.riskMonitoring {}

.servicePage.riskMonitoring #mainvisualPage2Inner .text_area {
	min-height: 623px;
}

.servicePage .serviceBlock01 {
	padding: 20px 0 0;
}

.servicePage .reasonBlock {
	padding: 80px 0 0;
}

.servicePage .functionBlock {
	padding: 0 0;
}

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

	/*---------------*/
	.servicePage.riskMonitoring {}

	.servicePage.riskMonitoring #mainvisualPage2Inner .text_area {
		min-height: auto;
	}

	.servicePage.riskMonitoring #mainvisualPage2Inner .imgBlock02 {
		width: auto;
	}

	.servicePage .serviceBlock01 {
		padding: 10px 0 0;
	}

	.servicePage .reasonBlock {
		padding: 40px 0 0;
	}

	.servicePage .functionBlock {
		padding: 0 0;
	}
}

/* -------------------------------------------------------------------- 
サービス詳細 なりすましバスターズ
-------------------------------------------------------------------- */
.servicePage.n_busters {}

.servicePage.n_busters #mainvisualPage2Inner .text_area {
	min-height: 480px;
	padding-top: 20px;
}

.servicePage.n_busters #mainvisualPage2Inner .imgBlock02 {
	width: 80%;
	margin: auto;
}

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

	/*---------------*/
	.servicePage.n_busters #mainvisualPage2Inner .text_area {
		min-height: auto;
		padding-top: 0;
	}

	.servicePage.n_busters #mainvisualPage2Inner .imgBlock02 {
		width: auto;
	}
}

/*------------ポイント2　※選ばれる3つの理由------------*/
.detailPointAc02 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding-bottom: 30px;
	position: relative;
}

.detailPointAc02.arrowB {}

.detailPointAc02.arrowB:after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 35px 30px 0 30px;
	border-color: #334A85 transparent transparent transparent;
	position: absolute;
	bottom: -25px;
	left: 50%;
	margin-left: -25px;
}

.detailPointAc02 li {
	display: table;
	width: 340px;
	margin-right: 20px;
	margin-bottom: 40px;
	padding: 20px 20px 50px;
	position: relative;
	background: #fff;
	border: 1px solid #334A85;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	box-sizing: border-box;
}

.detailPointAc02 li:nth-child(3n) {
	margin-right: 0;
}

.detailPointAc02 li a {
	display: block;
}

.detailPointAc02 li:after {
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 10px 0 10px;
	border-color: #334A85 transparent transparent transparent;
	position: absolute;
	bottom: 15px;
	left: 50%;
	margin-left: -10px;
}

/*矢印なし*/
.detailPointAc02 li.linkNon {
	padding: 20px;
}

.detailPointAc02 li.linkNon:after {
	content: none;
}

.detailPointAc02 li.linkNon>a {
	pointer-events: none;
}

.detailPointAc02 .pointAncTtl01 {
	display: block;
	color: #334A85;
	text-align: center;
	margin-top: 0;
	margin-bottom: 10px;
}

.detailPointAc02 .pointAncTtl01 dt {
	width: auto;
	display: block;
	vertical-align: middle;
	padding-bottom: 20px;
	text-align: center;
}

.detailPointAc02 .pointAncTtl01 span {
	font-family: 'Jost', sans-serif;
	font-size: 30px;
	line-height: 1;
	font-weight: 400;
	text-align: center;
	display: block;
}

.detailPointAc02 .pointAncTtl01 span.name {
	width: auto;
	font-size: 10px;
	font-size: 16px;
	line-height: 1.0em;
	margin-bottom: 5px;
}

.detailPointAc02 .pointAncTtl01 dd {
	vertical-align: middle;
	text-align: center;
	font-size: 18px;
	line-height: 1.4em;
	font-weight: bold;
	padding: 0;
	margin: 0;
}

.detailPointAc02 .pointAncText01 {
	font-size: 16px;
	line-height: 2em;
	font-weight: normal;
	text-align: center;
	letter-spacing: -1px;
}

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

	/*------ポイント2------*/
	.detailPointAc02 {
		padding: 20px 0 0;
	}

	.detailPointAc02.arrowB {
		padding-bottom: 55px;
	}

	.detailPointAc02.arrowB:after {
		content: "";
		border-style: solid;
		border-width: 20px 15px 0 15px;
		bottom: 18px;
		margin-left: -15px;
	}

	.detailPointAc02 li {
		display: table;
		width: 100%;
		margin-right: 0;
		margin-bottom: 20px;
		padding: 15px 15px 50px;
		position: relative;
	}

	.detailPointAc02 li:nth-child(3n) {
		margin-right: 0;
	}

	.detailPointAc02 li a {
		display: block;
	}

	.detailPointAc02 .pointAncTtl01 {}

	.detailPointAc02 .pointAncTtl01 dt {
		padding-right: 5px;
	}

	.detailPointAc02 .pointAncTtl01 span {
		font-size: 30px;
		line-height: 1;
	}

	.detailPointAc02 .pointAncTtl01 span.name {
		font-size: 10px;
		line-height: 1.0em;
		position: relative;
	}

	.detailPointAc02 .pointAncTtl01 dd {
		font-size: 16px;
		padding-left: 10px;
	}

	.detailPointAc02 .pointAncText01 {
		font-size: 14px;
		line-height: 1.6em;
		font-weight: bold;
	}
}

/*----選ばれる3つの理由----*/
.detailPointListBlock02 {
	padding: 80px 0;
}

.detailPointListBlock02 .detailPointListBox01:last-child {
	margin-bottom: 0;
}

.detailPointListBlock02 .detailPointListTtl {
	font-size: 19px;
	font-weight: bold;
	line-height: 2.15;
	letter-spacing: 0.05em;
	text-align: left;
	position: relative;
	padding-left: 25px;
	margin-bottom: 30px;
}

.detailPointListBlock02 .detailPointListTtl::before {
	display: inline-block;
	content: "";
	width: 16px;
	height: 16px;
	background-color: #334A85;
	position: absolute;
	top: 13px;
	left: 0;
}

.detailPointListBlock02 .detailPointListBox01 .detailPointListTxt {
	font-size: 16px;
	line-height: 1.6em;
	text-align: left;
}

.detailPointListBlock02 .detailPointListBox01 {
	margin-bottom: 130px;
}

.detailPointListBlock02 .detailPointListBox01 .detailPointListTxt p {}

.detailPointListBlock02 .detailPointListBox01 a {}

.detailPointListBlock02 .detailPointListTtlFlex01 {
	margin-bottom: 20px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.detailPointListBlock02 .detailPointListTtlFlex01.reverse {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-direction: row-reverse;
	flex-direction: row-reverse;
}

.detailPointListBlock02 .detailPointTb01 {
	display: block;
	width: 591px;
	color: #2B2A2A;
	border: 0;
}

.detailPointListBlock02 .detailPointListImg {
	position: relative;
	right: -26px;
	top: 0;
	width: 360px;
}

.detailPointListBlock02 .detailPointListTtlFlex01.reverse .detailPointListImg {
	position: relative;
	right: 0;
	left: -50px;
}

.detailPointListBlock02 .detailPointListBoxImg {
	margin: -30px 0 30px;
}

.detailPointListBlock02 .detailPointListBoxImg img {
	margin: 0;
	display: block;
}

.detailPointListBlock02 .detailPointListBoxImg.right img {
	margin-left: auto;
	margin-right: 0;
}

.detailPointListBlock02 .detailPointListBoxImg.center img {
	margin-left: auto;
	margin-right: auto;
}

.detailPointListBlock02 .detailPointListBoxImg.left img {
	margin-left: 0;
	margin-right: auto;
}


.detailPointListBlock02 .detailPointTb01 .cell1 {
	display: block;
	text-align: left;
	color: #334A85;
	background: none;
	width: auto;
	height: auto;
	position: relative;
	padding-left: 40px;
}

.detailPointListBlock02 .detailPointTb01 .cell1:before {
	content: "";
	height: 1px;
	background: #334A85;
	width: 34px;
	position: relative;
	left: -40px;
	top: 12px;
	display: block;
}

.detailPointListBlock02 .detailPointTb01 .cell1 p {
	font-size: 15px;
	line-height: 1.6em;
	text-align: left;
	padding: 0 0 0 45px;
}

.detailPointListBlock02 .detailPointTb01 .cell1 span {
	font-size: 23px;
	line-height: 1.6em;
	display: inline-block;
	margin-top: -10px;
	padding-left: 5px;
	font-family: 'Jost', sans-serif;
}

.detailPointListBlock02 .detailPointTb01 .cell2 {
	display: table-cell;
	text-align: left;
	vertical-align: middle;
	padding: 20px 0;
	position: relative;
	z-index: 1;
}

.detailPointListBlock02 .detailPointTb01 .cell2 .subTtl {
	font-size: 21px;
	line-height: 1.6em;
	color: #2B2A2A;
	margin-bottom: 0;
	font-weight: bold;
	letter-spacing: 0.05em
}

.detailPointListBlock02 .detailPointTb01 .cell2 .subTtl span {
	color: #334A85;
}

.detailPointListBlock02 .detailPointTb01 .cell2 .ttl {
	font-size: 30px;
	line-height: 1.6em;
	font-weight: bold;
	margin-bottom: 20px;
	letter-spacing: 0.05em
}

.detailPointListBlock02 .detailPointTb01 .cell2 .ttl span {}

.detailPointListBlock02 .detailPointTb01 .cell2 .ttl span.label {
	color: #4BA5FF;
	background: #E0E0E0;
	display: inline-block;
	padding: 3px 10px;
	font-size: 18px;
	line-height: 1.6em;
	margin-left: 100px;
	position: relative;
	top: -2px;
}

.detailPointListBlock02 .detailPointTb01 .cell2 .txt {
	line-height: 2;
	font-size: 16px;
}


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

	/*---------------*/
	/*---*/
	.detailPointListBlock02 {
		padding: 20px 0 30px;
	}

	.detailPointListBlock02 .detailPointListBox01 {
		margin-bottom: 40px;
	}

	.detailPointListBlock02 .detailPointListBox01:last-child {
		margin-bottom: 0;
	}

	.detailPointListBlock02 .detailPointListTtl {
		font-size: 16px;
		line-height: 2.15;
		letter-spacing: 0.05em;
		padding-left: 20px;
	}

	.detailPointListBlock02 .detailPointListTtl::before {
		width: 14px;
		height: 14px;
		top: 11px;
	}

	.detailPointListBlock02 .detailPointListBox01 .detailPointListTxt {
		font-size: 16px;
		line-height: 1.6em;
		text-align: left;
	}

	.detailPointListBlock02 .detailPointListBox01 .detailPointListTxt p {}

	.detailPointListBlock02 .detailPointListBox01 a {}

	.detailPointListBlock02 .detailPointListTtlFlex01 {
		margin-bottom: 20px;
		display: block;
	}

	.detailPointListBlock02 .detailPointTb01 {
		display: block;
		width: 100%;
	}

	.detailPointListBlock02 .detailPointTb01 .cell1 {
		display: block;
		text-align: center;
		width: auto;
		position: relative;
		padding: 0;
	}

	.detailPointListBlock02 .detailPointTb01 .cell1:before {}

	.detailPointListBlock02 .detailPointTb01 .cell2 {
		display: block;
		text-align: left;
		vertical-align: middle;
		padding: 20px 0;
	}

	.detailPointListBlock02 .detailPointTb01 .cell2 .subTtl {
		font-size: 16px;
		line-height: 1.6em;
		color: #2B2A2A;
		margin-bottom: 0;
	}

	.detailPointListBlock02 .detailPointTb01 .cell2 .ttl {
		font-size: 20px;
		line-height: 1.6em;
		font-weight: bold;
	}

	.detailPointListBlock02 .detailPointTb01 .cell2 .ttl span {}

	.detailPointListBlock02 .detailPointTb01 .cell2 .ttl span.label {
		display: inline-block;
		padding: 3px 10px;
		font-size: 12px;
		line-height: 1.6em;
		margin-left: 20px;
		position: relative;
		top: -2px;
	}

	.detailPointListBlock02 .detailPointListImg,
	.detailPointListBlock02 .detailPointListTtlFlex01.reverse .detailPointListImg {
		position: relative;
		right: 0;
		left: 0;
		top: 0;
	}

	/*---*/
	.detailPointListBlock02 .detailPointListBoxImg.right img,
	.detailPointListBlock02 .detailPointListBoxImg.left img,
	.detailPointListBlock02 .detailPointListBoxImg.center img {
		margin-left: auto;
		margin-right: auto;
	}
}




/* -------------------------------------------------------------------- 
課題別ケーススタディ
-------------------------------------------------------------------- */
.pageWrap.CASESTUDY {}

.casestudyBlock01 {
	padding: 100px 0 0;
}

.casestudyBlock01 .txt01 {
	font-size: 14px;
	line-height: 1.43em;
	padding: 15px 0;
	text-align: left;
}

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

	/*---------------*/
	.pageWrap.CASESTUDY {}

	.casestudyBlock01 {
		padding: 30px 0 30px;
	}

}

/* -------------------------------------------------------------------- 
販売パートナー事業者さま募集
-------------------------------------------------------------------- */
.pageWrap.AGENCY {}

.agencyBlock01 {
	padding: 0 0;
}

.agencyBlock02 {
	padding: 20px 0 100px;
}

.agencyBlock03 {
	padding: 0 0;
}

/*フロー*/
.agencyBlock02 .flow01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	padding: 0 0;
}

.agencyBlock02 .flow01 li {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	width: 240px;
	min-height: 86px;
	background-color: #fff;
	border: 2px solid #334A85;
	color: #334A85;
	padding: 20px 20px 20px 30px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	position: relative;
	box-sizing: border-box;
}

.agencyBlock02 .flow01 li:after {
	content: "";
	background: url(../img/agency/flow_arrow.png)no-repeat;
	background-size: 100%;
	position: absolute;
	width: 51px;
	height: 38px;
	top: 50%;
	margin-top: -20px;
	right: -53px;
	z-index: 1;
}

.agencyBlock02 .flow01 li:last-child:after {
	content: none;
}

.agencyBlock02 .flow01 li .ttl {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	text-align: left;
	font-size: 18px;
	line-height: 1.6em;
	font-weight: bold;
}

.agencyBlock02 .flow01 li .ttl .ico {
	margin-right: 15px;
}


/****3カラム メリット***/
.meritFlexBlock01 {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding-top: 70px;
	padding-bottom: 30px;
	margin-top: 30px;
}

.meritFlexBlock01 .box {
	display: table;
	width: 326px;
	margin-right: 40px;
	margin-bottom: 30px;
	position: relative;
}

.meritFlexBlock01 .box:nth-child(3n) {
	margin-right: 0;
}

.meritFlexBlock01 .box a {
	display: block;
}

.meritFlexBlock01 .ttl {
	display: block;
	font-family: 'Jost', sans-serif;
	font-size: 10px;
	line-height: 1.0em;
	color: #334A85;
	text-align: center;
	width: auto;
	position: absolute;
	top: -70px;
	left: 5px;
	margin: 0;
}

.meritFlexBlock01 .ttl span {
	font-size: 40px;
	line-height: 1.4em;
	font-weight: 500;
	display: block;
	text-align: left;
	margin-top: -5px;
}

.meritFlexBlock01 .txt {
	font-size: 16px;
	line-height: 1.6em;
	text-align: left;
	padding-top: 30px;
	margin: 0;
}

.meritFlexBlock01 .img {
	background: #f1fffa;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	padding: 25px 30px;
	margin: 0;
	width: 100%;
	height: 188px;
	box-sizing: border-box;
}

.meritFlexBlock01 .img img {
	vertical-align: middle;
}


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

	/*---------------*/
	.pageWrap.AGENCY {}

	.agencyBlock01 {
		padding: 0 0;
	}

	.agencyBlock02 {
		padding: 0 0 30px;
	}

	/*フロー*/
	.agencyBlock02 .flow01 {
		display: block;
	}

	.agencyBlock02 .flow01 li {
		display: table;
		width: 100%;
		min-height: 86px;
		color: #334A85;
		padding: 20px 30px;
		margin: 0 auto 30px;
	}

	.agencyBlock02 .flow01 li:after {
		content: "";
		background: url(../img/agency/flow_arrow_b.png)no-repeat;
		background-size: 100%;
		position: absolute;
		width: 38px;
		height: 56px;
		top: initial;
		bottom: -58px;
		margin: 0 auto;
		right: 0;
		left: 0;
	}

	.agencyBlock02 .flow01 li:last-child:after {
		content: none;
	}

	.agencyBlock02 .flow01 li p {
		display: table-cell;
		text-align: center;
		vertical-align: middle;
		font-size: 18px;
		line-height: 1.6em;
		font-weight: bold;
	}

	/*3カラム*/
	.meritFlexBlock01 {
		padding-top: 0;
		padding-bottom: 30px;
	}

	.meritFlexBlock01 .box {
		margin-right: auto;
		margin-left: auto;
		padding-top: 40px;
		margin-top: 20px;
		width: 100%;
	}

	.meritFlexBlock01 .box:nth-child(3n) {
		margin-right: auto;
	}

	.meritFlexBlock01 .box a {
		display: block;
	}

	.meritFlexBlock01 .ttl {
		font-size: 10px;
		line-height: 1.0em;
		width: auto;
		top: -30px;
		left: 5px;
	}

	.meritFlexBlock01 .ttl span {
		font-size: 38px;
		line-height: 1.6em;
		text-align: left;
		margin-top: -5px;
	}

	.meritFlexBlock01 .txt {
		font-size: 16px;
		line-height: 1.6em;
		text-align: left;
		padding-top: 10px;
	}

	.meritFlexBlock01 .img {
		width: 100%;
	}

}

/****ロゴ　横並び***/
.logoFlexBlock01 {
	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-bottom: 80px;
}
.partner .logoFlexBlock01 {
	gap: 40px;
}

.logoFlexBlock01 .box {
	position: relative;
}

.logoFlexBlock01 .img {
	margin: 0;
	box-sizing: border-box;
}

.logoFlexBlock01 .img img {}

/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	.logoFlexBlock01 {
		margin-bottom: 40px;
	}

	.logoFlexBlock01 .box {
		position: relative;
		width: 47%;
		padding: 0 10px 0 0;
	}

	.logoFlexBlock01 .box:nth-child(2n) {
		padding: 0 0 0 0;
	}
}

/* -------------------------------------------------------------------- 
個人情報保護方針
-------------------------------------------------------------------- */
.privacy_wrap {
	font-size: 16px;
	line-height: 1.8em;
}

.privacy_wrap p {
	padding: 10px 0 10px;
}

.privacy_wrap strong {
	font-weight: bold;
}

.privacy_wrap h2 {
	font-weight: bold;
	padding: 30px 0 20px;
	font-size: 20px;
}

.privacy_wrap h2.ttl {
	font-weight: bold;
	padding: 60px 0 20px;
	font-size: 24px;
}

.privacy_wrap .indent_box {
	padding-left: 2em;
}

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

	/*---------------*/
	.privacy_wrap p {
		padding: 5px 0 5px;
	}

	.privacy_wrap h2 {
		font-weight: bold;
		padding: 20px 0 10px;
		font-size: 18px;
	}

	.privacy_wrap h2.ttl {
		font-weight: bold;
		padding: 40px 0 20px;
		font-size: 22px;
	}

	.privacy_wrap .indent_box {
		padding-left: 1em;
	}

}







/* -------------------------------------------------------------------- 
XXXX
-------------------------------------------------------------------- */
/*@media screen and (max-width:768px) {*/
@media screen and (max-width:768px) {
	/*---------------*/
}



/**コラム**/
.single-product .column-section {
	padding-top: 40px
}

.single-product .column-section .detailFlex01.column {
	margin: 0 0 40px;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}

.single-product .column-section .detailFlex01.column a {
	text-decoration: none;
}

.single-product .column-section .detailFlex01.column .detailAFlexBox01 {
	width: 450px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	border-top: 3px solid #334A85;
	padding: 30px 30px;
	margin: 0 0 30px;
}

.single-product .column-section .detailColumnBox01 {
	text-align: left;
	margin: 0 0 30px;
	line-height: 1.8em;
}

.single-product .column-section .detailColumnBox01Date {
	font-size: 16px;
	margin: 0 0 10px;
}

.single-product .column-section .detailColumnBox01Ttl {
	font-size: 18px;
	font-weight: bold;
}

.single-product .column-section .detailColumnFlex {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.single-product .column-section .detailColumnFlexImg img {
	width: 172px;
	max-width: initial;
}

.single-product .column-section .detailColumnFlexTxt {
	margin: 0 0 0 20px;
	text-align: left;
	line-height: 1.8em;
}

@media screen and (max-width:768px) {
	.single-product .column-section .detailFlex01 {
		display: block;
	}

	.single-product .column-section .detailAFlexBox01 {
		width: 100%;
		margin: 0 0 30px;
	}

	/**コラム**/
	.single-product .column-section .detailFlex01.column .detailAFlexBox01 {
		display: block;
		width: 100%;
		padding: 20px 20px;
		margin: 0 0 20px;
		box-sizing: border-box;
	}

	.single-product .column-section .detailColumnBox01 {
		text-align: left;
		margin: 0 0 10px;
		line-height: 1.8em;
	}

	.single-product .column-section .detailColumnFlex {
		display: block;
	}

	.single-product .column-section .detailColumnFlexImg img {
		width: 172px;
		max-width: initial;
	}

	.single-product .column-section .detailColumnFlexTxt {
		margin: 10px 0 0;
	}

}

/* e-mining 追加　*/
#e-mining .nazuki {
	display: flex;
	margin: 0 auto 30px;
	width: 100%;
	max-width: 960px;
	align-items: center;
}

#e-mining .nazuki img {
	width: 250px;
}

#e-mining .nazuki p {
	font-size: 16px;
	line-height: 2em;
	margin-left: 16px;
}

/* ai-mining 追加　*/
#ai-mining .pageWrap #mainvisualPage2Inner .text_area .img_box {
	max-width: 650px;
}
#ai-mining .pageWrap #mainvisualPage2Inner .text_area .sub_title .img {
	width: min(100%, 200px);
}
#ai-mining .pageWrap #mainvisualPage2Inner .text_area .sub_title .img img {
	width: 100%;
}
#ai-mining .defaultTxtImgBox01 .imgArea {
	width: 240px;
}
#ai-mining .detailPointAc02.section-features {
	display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}
@media screen and (max-width:480px) {
	#ai-mining .detailPointAc02.section-features {
		grid-template-columns: repeat(1, 1fr);
	}
}
#ai-mining .detailPointAc02.section-features li {
	width: 100%;
}
#ai-mining .detailPointAc02.section-features li:after {
	display: none;
}
#ai-mining .detailPointAc02 .hover .img {
	height:240px; width:auto;
}
#ai-mining #reason .detailPointAc02 .pointAncText01 {
	color: #2B2A2A;
	text-align: center;
    font-size: 18px;
    line-height: 2.4em;
    font-weight: bold;
}
#ai-mining #reason .detailPointAc02 .pointAncTtl01 span.bold {
	color: #334A85;
	font-size: 1.5em;
	font-weight: bold;
}

/* 炎上モニタリングページ　調整*/

.postid-335 .pageWrap .serviceReasonBlock .title02.fs28 {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
}

.postid-335 .pageWrap .serviceReasonBlock .title02.fs28 span {
	padding: 20px 10px;
}

.postid-335 .pageWrap .serviceReasonBlock .title02.fs28 img {
	max-height: 88px;
}

.postid-335 .serviceBlock01 .detailRecommendedBlock02In {
	max-width: 580px;
}

#renewal.renewal-bloc {
	padding: 40px 0 0;
}
#renewal .renewal-content {
	display: flex;
	align-items: center;
}
#renewal .renewal-img {
	width: min(100%, 300px);
}
#renewal .renewal-txt {
	text-align: left;
}
#renewal .renewal-txt .ttl {
    font-size: 30px;
    line-height: 1.6em;
    font-weight: bold;
    margin-bottom: 20px;
    letter-spacing: 0.05em;
	position: relative;
}
#renewal .renewal-txt .logo-inline {
	display: inline-block;
    position: relative;
	max-height: 1.8em;
	padding: 0 6px;
}
#renewal .renewal-txt .txt {
	line-height: 2;
	font-size: 18px;
}

@media screen and (max-width:768px) {
	#renewal .renewal-content {
		flex-direction: column;
	}
	#renewal .renewal-txt .txt {
		font-size: 15px;
	}
}

.visually-hidden {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

#news.contents table {
width: 100%;
}
#news.contents th {
    text-align: center;
    vertical-align: top;
    box-sizing: border-box;
    padding: 20px 20px 14px 20px;
    color: #444444;
    font-size: 16px;
    line-height: 1.56;
    letter-spacing: 0.05em;
    font-weight: bold;
    width: 104px;
}
#news.contents td {
    text-align: left;
    vertical-align: middle;
    padding: 16px 35px 14px 35px;
    font-size: 16px;
    line-height: 2;
    letter-spacing: 0.05em;
}
.archiveListTtl {
    font-size: 20px;
    line-height: 1.6em;
    font-weight: bold;
    text-align: left;
    color: #333333;
    position: relative;
}
.archiveListTtl span {
    position: relative;
    padding: 0 0 20px 20px;
    display: block;
}
.archiveListTtl span:before {
    position: absolute;
    top: 7px;
    bottom: 0;
    left: 0;
    margin: 0 auto 0;
    content: "";
    vertical-align: middle;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 22px 0 0 2px;
    border-color: #334A85;
}
.justify-content-center {
	justify-content: center!important;
}
.align-items-center {
	align-items: center!important;
}

/*  ai_mining-lp  */
#ai-mining .red {
	color: #ec7d44!important;
}
.pageWrap .ai_mining-lp #mainvisualPage2Inner {
	min-height: 630px;
}
.serviceBlock {
	padding-top: 80px;
}
.ai_mining-lp .servicePage #mainvisualPage2Inner .text_area {
	max-width: 450px;
}
.ai_mining-lp .tool-name {
	background-color: white;
	border-radius: 100px;
	font-size: 18px;
	padding: 3px 10px;
	text-align: left;
	width: fit-content;
	margin-bottom: 16px;
}
.list_area ul {
	display: flex;
	justify-content: space-between;
}
.list_area li {
	background-color: white;
	border-radius: 8px;
	padding: 10px;
	width: 28.33%;
}
.list_area li p {
	font-size: 1.4rem;
	font-weight: bold;
	color: var(--relief-blue);
	text-align: center;
}
.list_area li .first-line {
	font-size: 0.874rem;
	display: block;
}
.pageWrap .ai_mining-lp #mainvisualPage2Inner .btnWrap01 .btnWrapIn {
	padding: 30px 0 8px;
}
.ai_mining-lp .servicePage #mainvisualPage2Inner .imgBlock02 {
	padding-left: 0;
}
.ai_mining-lp .pageWrap #mainvisualPage2Inner .mvBtn01 {
	width: stretch;
}

.ai_mining-lp .client_logos .logo_slider__title p {
	color: var(--relief-blue);
	font-size: 20px;
	font-weight: bold;
	padding: 40px 0 16px;
}
.title-en {
	color: var(--relief-blue);
	font-size: 18px;
	font-weight: bold;
}
.pageWrap .title02 span.highlighted {
	position: relative;
	color: #000;
}
.pageWrap .title02 span.highlighted::after {
	content: "";
	background-color: #ffb100d6;
    height: 50%;
    width: 100%;
    display: inline-block;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}

/* problem */
.ai_mining-lp .cases {
  padding: 40px;
  text-align: center;
}

/* 横並び */
.ai_mining-lp .cases .case-list {
  display: flex;
  gap: 24px;
  justify-content: center;
}

.ai_mining-lp .cases .case {
  width: 280px;
  padding: 24px;
  border: 2px solid var(--relief-blue);
  border-radius: 16px;
  background: #fff;
  text-align: left;
  position: relative;
}
.ai_mining-lp .cases .case-label {
  font-size: 12px;
  color: #2f6fb3;
  font-weight: bold;
  letter-spacing: 1px;
  margin-bottom: 12px;
}

.ai_mining-lp .cases .icon {
	width: 120px;
	height: 120px;
	margin: 0 auto 20px;
	background: #d6e2f1;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
}

.ai_mining-lp .cases .text {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.8;
  color: var(--relief-blue);
  text-align: center;
}

/* 下矢印 */
.ai_mining-lp .cases .arrow {
  width: 0;
  height: 0;
  margin: 40px auto;
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-top: 20px solid #3a5a8f;
}

.ai_mining-lp .cases .bottom-text {
  font-size: 20px;
  font-weight: bold;
  color: var(--relief-blue);
}

/* reason */

/* セクション */
.ai_mining-lp .reasons {
  padding: 40px 20px;
  max-width: 900px;
  margin: auto;
}

/* 各カード */
.ai_mining-lp .reason {
  display: flex;
  align-items: center;
  gap: 24px;
  background: white;
  border-radius: 20px;
  padding: 24px 28px;
  margin-bottom: 24px;
}

/* アイコン */
.ai_mining-lp .reason .icon {
	width: 110px;
	height: 110px;
	flex-shrink: 0;
	display: flex;
	justify-content: center;
	align-items: center;
}
.ai_mining-lp .reason .icon.first {
	width: 70px;
	height: 70px;
}
.ai_mining-lp .reason .icon.second {
	width: 90px;
	height: 90px;
}

/* 右側 */
.ai_mining-lp .reason .content {
  flex: 1;
  text-align: left;
}

/* ラベル */
.ai_mining-lp .reason .label {
  font-size: 16px;
  letter-spacing: 2px;
  color: #2f6fb3;
  font-weight: bold;
  margin-bottom: 8px;
}

/* タイトル */
.ai_mining-lp .reason .title {
  font-size: 24px;
  font-weight: bold;
  color: var(--relief-blue);
  margin-bottom: 10px;
}

/* 説明 */
.ai_mining-lp .reason .desc {
  font-size: 16px;
  color: #5b6b7f;
  line-height: 1.8;
}
.ai_mining-lp #info.serviceBlock {
	padding: 40px 0;
	margin-top: -18px;
}

.ai_mining-lp .serviceBlock01 .detailUl li:before {
	content: "CASE" counter(number, decimal-leading-zero);
}
.ai_mining-lp .solution {
	position: relative;
	padding-top: 100px;
}
.ai_mining-lp .solution::before {
	content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 35px 30px 0 30px;
    border-color: #334A85 transparent transparent transparent;
    position: absolute;
    top: -75px;
    left: 50%;
    margin-left: -25px;
}
.bgBlue {
  background: #cfd8e3;
}
.bgLightGray {
  background: var(--mist-gray);
}
.ai_mining-lp .info-cards {
  display: flex;
  gap: 20px;
  justify-content: center;
  padding: 40px;
}

.ai_mining-lp .info-cards .card {
  background: white;
  border-radius: 12px;
  padding: 20px;
  width: 220px;
  text-align: center;
}

.ai_mining-lp .info-cards .card .title {
  font-size: 18px;
  color: #1f4aa8;
  font-weight: bold;
  margin-bottom: 10px;
}

.ai_mining-lp .info-cards .card .value {
  font-size: 18px;
  color: #333;
  padding-top: 10px;
}

.ai_mining-lp .info-cards .card .value span {
  font-size: 34px;
  color: #ec7d44;
  font-weight: bold;
}

/* SNS */
.ai_mining-lp .info-cards .card .sns {
  display: flex;
  justify-content: center;
  gap: 8px;
  margin: 10px 0;
}

.ai_mining-lp .info-cards .card .sns img {
  width: 30px;
  height: 30px;
}

.ai_mining-lp .info-cards .card .note {
  font-size: 12px;
  color: #555;
}

.ai_mining-lp #function .sub_title p {
	font-size: 18px;
}
.ai_mining-lp .functions {
  display: flex;
  gap: 20px;
  justify-content: center;
  padding: 40px;
}

.ai_mining-lp .function {
  width: 240px;
  border-radius: 14px;
  overflow: hidden;
  text-align: center;
  border: 1px solid #d0d7e2;
}

/* 上の番号ラベル */
.function-head {
  background: var(--relief-blue);
  color: #fff;
  font-size: 18px;
  padding: 8px;
  font-weight: bold;
}

/* 丸アイコン */
.function .circle {
  width: 120px;
  height: 120px;
  background: #fff;
  border-radius: 50%;
  margin: 20px auto;
  display: flex;
  align-items: center;
  justify-content: center;
}

.function .circle img {
  width: 80%;
}

/* テキスト部分 */
.function .content {
  padding: 0 16px 20px;
}

.function .content h3 {
  font-size: 20px;
  color: var(--relief-blue);
  margin-bottom: 10px;
  line-height: 1.4;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.function .content h3::after {
	content: "";
	border-radius: 100px;
	display: inline-block;
	width: 30px;
	height: 5px;
	background-color: var(--relief-blue);
	margin-top: 16px;
}
.function .content p {
  font-size: 16px;
  color: #555;
  line-height: 1.6;
}

/* flow */
.ai_mining-lp .flow {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  padding: 0 0 80px;
}
.ai_mining-lp .flow .flow-item {
  	text-align: center;
	width: 240px;
	display: flex;
	flex-direction: column;
	align-items: center;
}
.ai_mining-lp .flow .circle {
  width: 130px;
  height: 130px;
  background: #d6e2f1;
  border-radius: 50%;
  margin-bottom: 12px;
}
.ai_mining-lp .flow .circle:nth-of-type(3) img {
	width: 80%;
    padding-top: 17px;
}
.ai_mining-lp .flow .text {
  font-size: 26px;
  height: 2.5em;
  color: var(--relief-blue);
  font-weight: 600;
}
.ai_mining-lp .flow .arrow {
  width: 40px;
  height: 20px;
  position: relative;
}
.ai_mining-lp .flow .arrow::after {
	content: "";
	position: absolute;
	right: -6px;
	top: -34px;
	border-left: 20px solid var(--relief-blue);
	border-top: 13px solid transparent;
	border-bottom: 13px solid transparent;
}

.ai_mining-lp .ctaBlock {
	padding: 80px 16px;
}
.ai_mining-lp .ctaBlock .cta-text {
	font-size: 20px;
	font-weight: bold;
	color: var(--relief-blue);
	text-align: center;
}

.ai_mining-lp .ctaBlock .cta {
  display: flex;
  gap: 24px;
  align-items: center;
}

.ai_mining-lp .ctaBlock .btn {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 18px 28px;
  border-radius: 999px;
  font-size: 18px;
  font-weight: bold;
  text-decoration: none;
  transition: 0.3s;
}

.ai_mining-lp .ctaBlock .btn-primary {
  background: #ec7d44;
  color: #fff;
}

.ai_mining-lp .ctaBlock .btn-primary .icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background: #fff;
  color: #ec7d44;
  border-radius: 50%;
  font-weight: bold;
}

.ai_mining-lp .ctaBlock .btn-outline {
  border: 2px solid #2c4770;
  color: #2c4770;
  background: transparent;
}
.ai_mining-lp .ctaBlock .btn-outline .icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background: #2c4770;
  color: #fff;
  border-radius: 50%;
}

/* ホバー */
.ai_mining-lp .ctaBlock .btn-primary:hover {
  background: #d96b36;
}

.ai_mining-lp .ctaBlock .btn-outline:hover {
  background: #2c4770;
  color: #fff;
}

.ai_mining-lp .ctaBlock .btn-outline:hover .icon {
  background: #fff;
  color: #2c4770;
}

.ai_mining-lp .cta-links {
	display: flex;
    justify-content: center;
    gap: 24px;
	margin-top: 40px;
}

/* support */
.ai_mining-lp .supports {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
  padding: 0 0 80px;
  max-width: 1000px;
  margin: auto;
}

/* カード */
.ai_mining-lp .support {
  display: flex;
  align-items: center;
  gap: 20px;
  background: white;
  padding: 24px;
  border-radius: 20px;
}

.ai_mining-lp .support .icon-wrap {
  position: relative;
}
.ai_mining-lp .support .icon {
  width: 90px;
  height: 90px;
  background: #d6e2f1;
  border-radius: 50%;
}

/* バッジ（¥） */
.ai_mining-lp .support .badge {
  position: absolute;
  right: -5px;
  bottom: -5px;
  width: 28px;
  height: 28px;
  background: #f4b400;
  color: #fff;
  font-size: 12px;
  font-weight: bold;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ai_mining-lp .support .content {
  flex: 1;
  text-align: left;
}
.ai_mining-lp .support .title {
  font-size: 24px;
  font-weight: 700;
  color: var(--relief-blue);
  margin-bottom: 8px;
}

.ai_mining-lp .support .desc {
  font-size: 16px;
  color: #333;
  line-height: 1.8;
}

/* STEP */
.ai_mining-lp .steps {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
  padding: 0;
  max-width: 1100px;
  margin: auto;
}

.ai_mining-lp .step {
  background: white;
  border: 1px solid #c7d6ea;
  border-radius: 16px;
  padding: 24px 16px;
  text-align: center;
}

.ai_mining-lp .step .icon {
  width: 90px;
  height: 90px;
  margin: 0 auto 16px;
}

.ai_mining-lp .step .label {
  font-size: 16px;
  color: #2f6fb3;
  letter-spacing: 2px;
  font-weight: bold;
  margin-bottom: 6px;
}

.ai_mining-lp .step .title {
  font-size: 24px;
  font-weight: 700;
  color: #1f3f66;
  margin-bottom: 10px;
}

.ai_mining-lp .step .desc {
  font-size: 13px;
  color: #5b6b7f;
  line-height: 1.8;
}

.ai_mining-lp .note {
  text-align: center;
  font-size: 14px;
  color: #666;
  margin-top: 20px;
}

.ai_mining-lp .detailPointListBlock02 .detailPointListImg.first {
	max-width: 182px;
	top: 30px;
	left: 50px;
}
.ai_mining-lp .detailPointListBlock02 .detailPointTb01 .cell2 .txt,
.ai_mining-lp .defaultTxtImgBox01 .txtArea .text {
	font-size: 18px;
}
.ai_mining-lp .detailPointListBlock02 .detailPointListBox01 {
	margin-bottom: 60px;
}
.ai_mining-lp .serviceBlock01 .detailRecommendedBlock01.arrowB:after {
	content: none;
}
.ai_mining-lp #feature .contentListWrap01 .contentWrap01:after {
	content: none;
}

/* FAQ */
.ai_mining-lp .faq {
  max-width: 1000px;
  margin: auto;
  padding: 40px 20px;
}
.ai_mining-lp .faq-item {
  background: white;
  border-radius: 16px;
  padding: 20px 24px;
  margin-bottom: 20px;
}
.ai_mining-lp .faq-item .row {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  margin-bottom: 10px;
  position: relative;
}
.ai_mining-lp .faq-item .row .badge {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  color: #fff;
  font-weight: bold;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  margin-top: 3px;
}
.ai_mining-lp .faq-item .row.q .badge {
  background: #2c4770;
}

.ai_mining-lp .faq-item .row.a .badge {
  background: #ec7d44;
}

.ai_mining-lp .faq-item .text {
  font-size: 18px;
  color: var(--relief-blue);
  line-height: 1.8;
  text-align: left;
}
.ai_mining-lp .faq-item .row.q .text {
	font-weight: bold;
}

.feature-detail {
	margin-bottom: 40px;
}
.feature-detail-list {
	display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}
.feature-detail-list-item {
	background: var(--mist-gray);
	border-radius: 10px;
	padding: 16px;
	display: grid;
	grid-template-rows: 64px 1fr;
	gap: 16px;
}
.feature-detail-list-item-title {
	font-size: 21px;
	font-weight: bold;
	color: #334a85;
	
}
.feature-detail-list-item-text {
	font-size: 18px;
}
.feature-detail-list.col-2 {
    grid-template-columns: repeat(2, 1fr);
}
.feature-detail-list.col-2 .feature-detail-list-item  {
	grid-template-rows: 105px 1fr;
	gap: 16px;
}
.feature-detail-list.col-2 .feature-detail-list-item-title {
	border-bottom: 1px solid var(--relief-blue);
    padding-bottom: 10px;
}
.feature-detail-list.col-2 .feature-detail-list-item-title span {
	display: block;
	font-size: 36px;
}
.feature-detail-list.col-2 .feature-detail-list-item-text {
	text-align: left;
	padding-inline: 16px;
}
.function-list {
	display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
}
.function-list-item {
	border: 1px solid #334A85;
	border-radius: 10px;
	padding: 16px 24px;
	display: grid;
	grid-template-rows: 72px 1fr;
	gap: 16px;
}
.function-list-item-title {
	font-size: 24px;
}
.function-list-item-text {
	font-size: 16px;
    line-height: 1.6;
    text-align: left;
}

#ai-mining .cta-bottom {
	background: url(../../images/top/download_bg.jpg) no-repeat center;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	color: #fff;
	padding: 70px;
}

#ai-mining .cta-bottom .container {
  max-width: 900px;
  margin: 0 auto;
}

#ai-mining .cta-bottom .sub-text {
  font-size: 14px;
  opacity: 0.8;
  margin-bottom: 10px;
}

#ai-mining .cta-bottom h1 {
  font-size: 32px;
  margin-bottom: 30px;
  line-height: 1.5;
}

#ai-mining .cta-bottom .cards {
  display: flex;
  justify-content: center;
  gap: 20px;
  margin-bottom: 30px;
}

#ai-mining .cta-bottom .card {
  width: 150px;
  height: 100px;
  background: #fff;
  border-radius: 8px;
  box-shadow: 0 6px 12px rgba(0,0,0,0.2);
}

#ai-mining .cta-bottom .btn-primary {
  display: inline-block;
  background: #f5c518;
  color: #333;
  padding: 15px 40px;
  border-radius: 999px;
  font-weight: bold;
  text-decoration: none;
  margin: 20px 0;
  font-size: 26px;
  transition: 0.3s opacity ease;
}


#ai-mining .cta-bottom .note {
  font-size: 12px;
  margin: 0 auto 40px;
  color: white;
}

#ai-mining .cta-bottom .btn-secondary {
  display: inline-block;
  border: 1px solid white;
  color: white;
  padding: 10px 30px;
  border-radius: 999px;
  text-decoration: none;
  font-size: 16px;
  transition: 0.3s opacity ease;
}
#ai-mining .cta-bottom .btn-primary:hover, #ai-mining .cta-bottom .btn-secondary:hover {
	opacity: 0.6;
}
.postid-6606#ai-mining .contDownload {
	margin-top: 0;
}

@media screen and (max-width:768px) {
	#ai-mining .pageWrap {
		padding-top: 0;
	}
	#ai-mining .pageWrap #mainvisualPage2Inner .text_area .title { text-align: center; }
	.ai_mining-lp .servicePage.e_mining #mainvisualPage2Inner .text_area .title {
		text-align: center;
	}
	.list_area li {
		padding: 4px;
		width: 32.33%;
		box-sizing: border-box;
	}
	.list_area li p {
		font-size: 1rem;
	}
	.ai_mining-lp .client_logos .logo_slider__title p {
		padding: 40px 24px 16px;
	}
	.ai_mining-lp .cases .case-list {
		flex-direction: column;
		align-items: center;
	}
	.ai_mining-lp .cases .case {
		width: 90%;
		max-width: 400px;
	}
	.ai_mining-lp .cases {
		padding: 40px 16px;
		box-sizing: border-box;
	}
	.ai_mining-lp .reason {
		flex-direction: column;
	}
	.ai_mining-lp .detailPointListBlock02 .detailPointListImg.first {
		margin: auto;
		top: 0;
		left: 0;
	}
	.ai_mining-lp .info-cards, .ai_mining-lp .functions, .ai_mining-lp .ctaBlock .cta, .ai_mining-lp .support {
		flex-direction: column;
	}
	.ai_mining-lp .supports, .ai_mining-lp .steps {
		grid-template-columns: 1fr;
	}
	.ai_mining-lp .function { width: 100%; }
	.ai_mining-lp .flow { flex-direction: column; }
	.ai_mining-lp .flow .arrow {
		width: 20px;
		transform: rotate(90deg);
	}
	.ai_mining-lp .flow .arrow::after {
		right: 13px;
        top: 0px;
	}
	.feature-detail-list, .feature-detail-list.col-2, .feature-detail-list-item,
	.feature-detail-list.col-2 .feature-detail-list-item,
	.function-list, .function-list-item {
		grid-template-columns: none;
	}
}