@charset "utf-8";
body {
	max-width: 1920px;
	margin: 0 auto;
}

.c-img img {
	width: 100%;
}
.c-text.ansp-mb60 {
	margin-bottom: 60px;
}

/*/// データ分析支援サービスとは ansp-about ///*/
.ansp-about {
	max-width: 800px;
	font-size: 16px;
	text-align: center;
}
.ansp-about--1 {
	margin: 30px auto 130px;
}
.ansp-about--2 {
	margin: 30px auto 130px;
}
.ansp-about--3 {
	margin: 30px auto 0;
}

.ansp-about .ansp-about-step {
	margin-top: 30px;
	padding: 28px 30px;
	background-color: #F2F4F5;
	border-radius: 30px;
}
.ansp-about .ansp-about-step--1 {
	border: 4px solid #4EBFDF;
}
.ansp-about .ansp-about-step--2 {
	border: 4px solid #4CBDB6;
}
.ansp-about .ansp-about-step--3 {
	border: 4px solid #3B96A2;
}
.ansp-about .ansp-about-step--4 {
	border: 4px solid #2A6F8A;
}
.ansp-about .ansp-about-step .ansp-about-step-flex {
	margin-bottom: 30px;
	display: flex;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: flex-start;
	gap: 0 20px;
}
.ansp-about .ansp-about-step .ansp-about-step-flex .ansp-about-step-flex-inner {
	text-align: left;
}
.ansp-about .ansp-about-step .ansp-about-step-title {
	margin-bottom: 12px;
	font-size: 26px;
	font-weight: bold;
}
.ansp-about .ansp-about-step--1 .ansp-about-step-title {
	color: #4EBFDF;
}
.ansp-about .ansp-about-step--2 .ansp-about-step-title {
	color: #4CBDB6;
}
.ansp-about .ansp-about-step--3 .ansp-about-step-title {
	color: #3B96A2;
}
.ansp-about .ansp-about-step--4 .ansp-about-step-title {
	color: #2A6F8A;
}
.ansp-about .ansp-about-step .ansp-about-step-text {
	line-height: 1.75;
}
.ansp-about .ansp-about-step .ansp-about-step-icon {
	width: 100px;
	margin: 0 auto;
	display: block;
}
.ansp-about .ansp-about-step .ansp-about-step-flow {
	max-width: 366px;
	width: 100%;
	margin: 0 auto;
}
.ansp-about .ansp-about-step .ansp-about-step-flow .ansp-about-step-flow-text {
	padding: 6px;
	color: #FFF;
	font-size: 18px;
	border-radius: 20px;
}
.ansp-about .ansp-about-step--1 .ansp-about-step-flow .ansp-about-step-flow-text {
	background-color: #4EBFDF;
}
.ansp-about .ansp-about-step--2 .ansp-about-step-flow .ansp-about-step-flow-text {
	background-color: #4CBDB6;
}
.ansp-about .ansp-about-step--3 .ansp-about-step-flow .ansp-about-step-flow-text {
	background-color: #3B96A2;
}
.ansp-about .ansp-about-step--4 .ansp-about-step-flow .ansp-about-step-flow-text {
	background-color: #2A6F8A;
}
.ansp-about .ansp-about-step .ansp-about-step-flow .ansp-about-step-flow-arrow {
	margin: 6px auto;
	width: 20px;
	display: block;
}
.ansp-about .ansp-about-step--1 .ansp-about-step-flow .ansp-about-step-flow-arrow {
	fill: #4EBFDF;
}
.ansp-about .ansp-about-step--2 .ansp-about-step-flow .ansp-about-step-flow-arrow {
	fill: #4CBDB6;
}
.ansp-about .ansp-about-step--3 .ansp-about-step-flow .ansp-about-step-flow-arrow {
	fill: #3B96A2;
}
.ansp-about .ansp-about-step--4 .ansp-about-step-flow .ansp-about-step-flow-arrow {
	fill: #2A6F8A;
}

.ansp-about .ansp-about-consult .ansp-about-consult-title {
	margin-bottom: 10px;
	padding: 12px 70px 10px;
	background-color: #86C689;
	border-radius: 5vh;
	color: #FFF;
	font-size: 24px;
	font-weight: bold;
	line-height: 1.5;
	display: inline-block;
}
.ansp-about .ansp-about-consult img {
	width: 100%;
	max-width: 380px;
	margin: 0 auto 10px;
	display: block;
}
.ansp-about .ansp-about-consult p {
	line-height: 1.75;
}

.ansp-about .ansp-about-head {
	margin-bottom: 30px;
	padding: 12px 58px 10px;
	background-color: #6BABDC;
	border-radius: 5vh;
	color: #FFF;
	font-size: 24px;
	font-weight: bold;
	display: inline-block;
}
.ansp-about .ansp-about-text {
	margin-bottom: 20px;
	line-height: 1.75;
}
.ansp-about .ansp-about-img-about {
	width: 100%;
	max-width: 702px;
	margin: 0 auto 20px;
	display: block;
}
.ansp-about .ansp-about-img-analysis {
	width: 100%;
	max-width: 630px;
	margin: 0 auto 40px;
	display: block;
}
.ansp-about .ansp-about-img-flow {
	width: 100%;
	max-width: 720px;
	margin: 0 auto 30px;
	display: block;
}
.ansp-about .ansp-about-foot {
	margin-bottom: 20px;
	padding: 6px 45px;
	background-color: #D37354;
	border-radius: 5vh;
	color: #FFF;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.5;
	display: inline-block;
}
.ansp-about .ansp-about-img-arrow {
	width: 86px;
	margin: 0 auto 20px;
	display: block;
}
.ansp-about .ansp-about-list {
	width: fit-content;
	margin: 0 auto 14px;
	padding-left: 20px;
	text-align: left;
	list-style: disc outside;
}
.ansp-about .ansp-about-list li {
	margin: .75em 0;
	list-style-type: disc;
}
.ansp-about .ansp-about-conclusion {
	font-size: 23px;
	font-weight: bold;
	line-height: 1.5;
}


/*/// 分析レポートの概要 ansp-flow ///*/
.ansp-flow {
	max-width: 702px;
	margin: 30px auto 0;
	font-size: 18px;
	text-align: center;
}
.ansp-flow .ansp-flow-box {
	max-width: 660px;
	margin: 0 auto 20px;
	padding: 15px 34px 15px 32px;
	background-color: #F5F5F5;
	border-radius: 20px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.ansp-flow .ansp-flow-box .ansp-flow-box-text {
	text-align: left;
}
.ansp-flow .ansp-flow-box .ansp-flow-box-text .ansp-flow-box-text-title {
	margin-bottom: 10px;
	padding: 6px 32px 5px;
	background-color: #FFF;
	border: 2px solid #000;
	border-radius: 5vh;
	font-weight: bold;
	line-height: 1.5;
	display: inline-block;
}
.ansp-flow .ansp-flow-box .ansp-flow-box-text ul {
	padding-left: 20px;
	list-style: disc outside;
}
.ansp-flow .ansp-flow-box .ansp-flow-box-text ul li {
	margin: .33em 0;
	list-style-type: disc;
}
.ansp-flow .ansp-flow-box .ansp-flow-box-img {
	width: 100%;
	max-width: 200px;
}
.ansp-flow .ansp-flow-box .ansp-flow-box-img img {
	width: 100%;
	display: block;
}
.ansp-flow .ansp-flow-remark {
	max-width: 660px;
	margin: 0 auto 20px;
	font-size: 13px;
	text-align: left;
}
.ansp-flow .ansp-flow-img {
	width: 100%;
	margin: 0 auto 16px;
	display: block;
}
.ansp-flow .ansp-flow-btn {
	padding: 11px 45px 10px 30px;
	border: 2px solid #2F3A69;
	border-radius: 5vh;
	color: #2F3A69;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.5;
	display: inline-block;
	position: relative;
	cursor: pointer;
	transition: all .3s ease-out;
}
.ansp-flow .ansp-flow-btn::after {
	width: 8px;
	height: 8px;
	content: '';
	border-bottom: 2px solid #2F3A69;
	border-right: 2px solid #2F3A69;
	position: absolute;
	top: 50%;
	right: 24px;
	transform: translateY(-42%) rotate(-45deg);
}
.ansp-flow .ansp-flow-btn:hover {
	background-color: #2F3A69;
	color: #FFF;
}
.ansp-flow .ansp-flow-btn:hover::after {
	border-bottom: 2px solid #FFF;
	border-right: 2px solid #FFF;
}

#sample_img_modal {
	width: 100%;
	height: 100vh;
	height: 100dvh;
	background-color: #000000CC;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 2;
}
#sample_img_modal.modal-hide {
	display: none;
}
#sample_img_modal .modal-inner {
	width: 90%;
	max-width: 1111px;
	margin: 0 auto;
	padding: 30px;
	background-color: #FFF;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#sample_img_modal .modal-inner img {
	width: 100%;
	max-width: 1051px;
}
#sample_img_modal_close {
	margin-top: 30px;
	padding-top: 30px;
	border-top: 1px solid #E5E5E5;
	font-size: 14px;
}
#sample_img_modal_close span {
	padding-left: 20px;
	position: relative;
	cursor: pointer;
}
#sample_img_modal_close span::before,
#sample_img_modal_close span::after {
	width: 14px;
	height: 2px;
	content: '';
	background-color: #000;
	position: absolute;
	top: 50%;
	left: 0;
}
#sample_img_modal_close span::before {
	transform: translateY(-50%) rotate(45deg);
}
#sample_img_modal_close span::after {
	transform: translateY(-50%) rotate(-45deg);
}


/*/// サービス活用事例 ansp-case ///*/
.ansp-case {
	max-width: 702px;
	margin: 30px auto 0;
	font-size: 16px;
}
.ansp-case .ansp-case-box {
	margin-bottom: 32px;
	padding: 25px 30px 30px;
	border: 4px solid #6BABDC;
	border-radius: 20px;
	position: relative;
}
.ansp-case .ansp-case-box:last-child {
	margin-bottom: 0;
}
.ansp-case .ansp-case-box .ansp-case-box-title {
	margin-bottom: 24px;
	margin-right: 80px;
	color: #6BABDC;
	font-size: 18px;
	font-weight: bold;
	display: flex;
	align-items: flex-start;
}
.ansp-case .ansp-case-box .ansp-case-box-title .ansp-case-box-title-tag {
	margin-right: 10px;
	padding: 8px 20px 6px;
	border: 2px solid #E54410;
	border-radius: 5vh;
	color: #E54410;
	font-size: 16px;
}
.ansp-case .ansp-case-box .ansp-case-box-title .ansp-case-box-title-tag span {
	margin-left: 5px;
	font-size: 20px;
}
.ansp-case .ansp-case-box .ansp-case-box-title .ansp-case-box-title-text {
	padding-top: 8px;
	line-height: 1.5;
	text-align: center;
}
.ansp-case .ansp-case-box .ansp-case-box-title .ansp-case-box-title-text span {
	margin-left: .5em;
	display: inline-block;
}
.ansp-case .ansp-case-box .ansp-case-inner {
	display: flex;
	align-items: flex-start;
}
.ansp-case .ansp-case-box .ansp-case-box-text img {
	width: 40px;
	margin-right: 10px;
	display: block;
}
.ansp-case .ansp-case-box .ansp-case-box-text .ansp-case-box-text-problem {
	margin-bottom: 30px;
	display: flex;
	align-items: flex-start;
}
.ansp-case .ansp-case-box .ansp-case-box-text .ansp-case-box-text-problem p {
	font-weight: bold;
	line-height: 1.75;
}
.ansp-case .ansp-case-box .ansp-case-box-text .ansp-case-box-text-solution {
	display: flex;
	align-items: flex-start;
}
.ansp-case .ansp-case-box .ansp-case-box-text .ansp-case-box-text-solution p {
	line-height: 1.75;
}
.ansp-case .ansp-case-box .ansp-case-box-img {
	width: 100%;
	max-width: 200px;
	margin-left: 22px;
}
.ansp-case .ansp-case-box .ansp-case-box-img img {
	width: 100%;
	display: block;
}
.ansp-case .ansp-case-box .ansp-case-badge {
	width: 80px;
	position: absolute;
	top: 20px;
	right: 20px;
}


/*/// お問い合わせ方法 ansp-contact ///*/
.ansp-contact {
	max-width: 800px;
	margin: 30px auto 0;
	font-size: 16px;
	text-align: center;
}
.ansp-contact .ansp-contact-img {
	max-width: 380px;
	width: 100%;
	margin: 0 auto 20px;
	display: block;
}
.ansp-contact .ansp-contact-text {
	margin-bottom: 30px;
	line-height: 1.75;
}
.ansp-contact .ansp-contact-caution {
	margin-bottom: 10px;
	padding: 38px 48px 40px;
	border: 3px solid #E54410;
	border-radius: 20px;
}
.ansp-contact .ansp-contact-caution .ansp-contact-caution-title {
	margin-bottom: 34px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.ansp-contact .ansp-contact-caution .ansp-contact-caution-title img {
	width: 40px;
	margin-right: 12px;
	display: block;
}
.ansp-contact .ansp-contact-caution .ansp-contact-caution-title p {
	color: #E54410;
	font-size: 30px;
	font-weight: bold;
}
.ansp-contact .ansp-contact-caution ul {
	padding-left: 20px;
	text-align: left;
	list-style: disc outside;
}
.ansp-contact .ansp-contact-caution ul li {
	margin: .75em 0;
	line-height: 1.5;
	list-style-type: disc;
}
.ansp-contact .ansp-contact-remark {
	max-width: 800px;
	margin: 0 auto;
	font-size: 13px;
	text-align: left;
}


/*/// 関連ソフトウェア・サービス ansp-relation ///*/
.ansp-relation {
	max-width: 600px;
	margin: 50px auto 20px;
	font-size: 16px;
	text-align: center;
}
.ansp-relation .ansp-relation-mailab {
	margin: 0 auto;
	width: 100%;
	display: block;
}


@media screen and (min-width:601px) {
	.ansp-sp600,
	.ansp-about .ansp-about-img-about.ansp-sp600,
	.ansp-about .ansp-about-img-analysis.ansp-sp600,
	.ansp-about .ansp-about-img-flow.ansp-sp600,
	.ansp-relation .ansp-relation-mailab.ansp-sp600 {
		display: none;
	}
}
@media screen and (max-width:600px) {
	.ansp-pc600,
	.ansp-about .ansp-about-img-about.ansp-pc600,
	.ansp-about .ansp-about-img-analysis.ansp-pc600,
	.ansp-about .ansp-about-img-flow.ansp-pc600,
	.ansp-relation .ansp-relation-mailab.ansp-pc600 {
		display: none;
	}

	.ansp-about .ansp-about-step {
		padding: 28px 22px;
	}
	.ansp-about .ansp-about-step:nth-child(n+2) {
		margin-top: 20px;
	}
	.ansp-about .ansp-about-step .ansp-about-step-flex {
		display: block;
	}
	.ansp-about .ansp-about-step .ansp-about-step-icon {
		width: 150px;
		margin-bottom: 12px;
	}
	.ansp-about .ansp-about-step .ansp-about-step-title {
		margin-bottom: 8px;
		text-align: center;
	}

	.ansp-about .ansp-about-consult .ansp-about-consult-title {
		margin-bottom: 24px;
		padding: 14px 50px 12px;
		font-size: 20px;
	}
	.ansp-about .ansp-about-consult img {
		margin-bottom: 16px;
	}
	.ansp-about .ansp-about-consult p {
		line-height: 1.5;
		text-align: left;
	}

	.ansp-about .ansp-about-head {
		margin-bottom: 20px;
		padding: 14px 40px 12px;
		font-size: 20px;
	}
	.ansp-about .ansp-about-text {
		margin-bottom: 10px;
		line-height: 1.2;
		text-align: left;
	}
	.ansp-about .ansp-about-img-about {
		max-width: 345px;
	}
	.ansp-about .ansp-about-img-analysis {
		max-width: 290px;
		margin-bottom: 20px;
	}
	.ansp-about .ansp-about-img-flow {
		max-width: 345px;
	}
	.ansp-about .ansp-about-foot {
		margin-bottom: 18px;
		padding: 12px 30px 10px;
	}
	.ansp-about .ansp-about-list {
		width: 87%;
		margin-bottom: 10px;
	}
	.ansp-about .ansp-about-list li {
		margin: .4em 0;
	}
	.ansp-about .ansp-about-img-arrow {
		width: 43px;
		margin-bottom: 8px;
	}
	.ansp-about .ansp-about-conclusion {
		font-size: 22px;
	}

	.ansp-flow .ansp-flow-box {
		max-width: 345px;
		padding: 30px 32px;
		justify-content: center;
	}
	.ansp-flow .ansp-flow-box:nth-child(4) {
		margin-bottom: 10px;
	}
	.ansp-flow .ansp-flow-box .ansp-flow-box-text .ansp-flow-box-text-title {
		margin-bottom: 16px;
	}
	.ansp-flow .ansp-flow-box .ansp-flow-box-text img {
		width: 100%;
		max-width: 280px;
		margin-bottom: 20px;
		display: block;
	}
	.ansp-flow .ansp-flow-box .ansp-flow-box-text ul {
		font-size: 16px;
	}
	.ansp-flow .ansp-flow-remark {
		max-width: 345px;
		margin-bottom: 30px;
		font-size: 14px;
	}
	.ansp-flow .ansp-flow-btn {
		padding: 11px 80px 10px 54px;
		font-size: 18px;
	}
	.ansp-flow .ansp-flow-btn::after {
		width: 10px;
		height: 10px;
	}
	.ansp-flow .ansp-flow-img {
		max-width: 345px;
	}
	#sample_img_modal_close {
		margin-top: 20px;
		padding-top: 20px;
	}

	.ansp-case .ansp-case-box {
		padding: 20px 22px;
	}
	.ansp-case .ansp-case-box .ansp-case-box-title {
		margin-bottom: 10px;
		margin-right: 0;
		display: block;
	}
	.ansp-case .ansp-case-box .ansp-case-box-title .ansp-case-box-title-tag {
		margin: 0 0 8px;
		padding: 8px 18px 6px;
		display: inline-block;
	}
	.ansp-case .ansp-case-box .ansp-case-box-title .ansp-case-box-title-tag span {
		font-size: 16px;
	}
	.ansp-case .ansp-case-box .ansp-case-box-title .ansp-case-box-title-text {
		padding-top: 0;
		font-size: 22px;
		text-align: left;
	}
	.ansp-case .ansp-case-box .ansp-case-box-title .ansp-case-box-title-text span {
		display: inline;
	}
	.ansp-case .ansp-case-box .ansp-case-box-img {
		max-width: 300px;
		margin: 0 auto 14px;
		position: relative;
	}
	.ansp-case .ansp-case-box .ansp-case-box-img .ansp-case-badge {
		width: 60px;
		top: -10px;
		right: -10px;
	}
	.ansp-case .ansp-case-box .ansp-case-inner {
		display: block;
	}
	.ansp-case .ansp-case-box .ansp-case-box-text .ansp-case-box-text-problem {
		margin-bottom: 16px;
		display: block;
	}
	.ansp-case .ansp-case-box .ansp-case-box-text .ansp-case-box-text-problem p {
		font-size: 18px;
		line-height: 1.44;
	}
	.ansp-case .ansp-case-box .ansp-case-box-text img {
		margin: 0 auto 6px;
	}
	.ansp-case .ansp-case-box .ansp-case-box-text .ansp-case-box-text-solution {
		display: block;
	}
	.ansp-case .ansp-case-box .ansp-case-box-text .ansp-case-box-text-solution p {
		line-height: 1.5;
	}

	.ansp-contact .ansp-contact-img {
		width: 81%;
	}
	.ansp-contact .ansp-contact-text {
		margin-bottom: 10px;
		line-height: 1.5;
		text-align: left;
	}
	.ansp-contact .ansp-contact-caution {
		padding: 22px 22px 30px 12px;
	}
	.ansp-contact .ansp-contact-caution .ansp-contact-caution-title {
		margin-bottom: 30px;
	}
	.ansp-contact .ansp-contact-caution .ansp-contact-caution-title img {
		width: 34px;
		margin-right: 9px;
	}
	.ansp-contact .ansp-contact-caution .ansp-contact-caution-title p {
		font-size: 22px;
	}

	.ansp-relation .ansp-relation-mailab {
		width: 87%;
		max-width: 300px;
	}

}