@charset "utf-8";

body {
	font-family: 'ヒラギノ角ゴ', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
	font-size: 14px;
}

img {
	flex-shrink: 0
}

a {
	color: #245dc1;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

#body_wrap {
	background-color: #FFFFFF;
	margin: 0;
	width: 100%;
	height: 100%;
	padding: 200px 0 0;
	margin-top: -200px;
	/* リンク位置上昇分 */
}

.inner {
	width: 940px;
	clear: both;
	margin: 0 auto;
}

.fixed {
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 10000;
}

h1,
h2,
h3,
h4,
h5,
p,
dd {
	margin: 0;
	padding: 0;
}

.pt20 {
	padding-top: 20px;
}

.pb20 {
	padding-bottom: 20px;
}

.ml30 {
	margin-left: 30px;
}

.mr30 {
	margin-right: 30px;
}

.mt20 {
	margin-top: 20px;
}

.mt30 {
	margin-top: 30px;
}

.mt40 {
	margin-top: 40px;
}

.mb40 {
	margin-bottom: 40px;
}

/* #header
-----------------------------------------------------------*/
#headerLogo {
	background: #fff;
}

.headerLogo_inner {
	position: relative;
	width: 940px;
	margin: 0 auto;
	padding: 8px 0;
}

#header_wrap {
	width: 100%;
	background-color: #FAF1FF;
}

#header_wrap_all {
	width: 100%;
	background-color: #FAF1FF;
}

#header_wrap_commerce {
	width: 100%;
	background-color: #FFF3F7;
}



#headerImg {
	background: url(../img/eclp/headbanner_pc.png) no-repeat center center;
	background-size: cover;
	width: 100%;
	height: 280px;
}

.headerLogo_right {
	float: right;
	font-size: 12px;
}


/* #intro
-----------------------------------------------------------*/

.mainvisual {
	width: 940px;
	margin: 0 auto;
	padding: 42px 0 20px;
	background-image: url(../img/shopify_lp/mainvisual_bg.png);
	background-size: 360px 500px;
	background-repeat: no-repeat;
	background-position: center right;
}

.mainvisual img {
	width: 549px;
	text-align: left;
}

.mainvisual .button-inquiry--large {
    box-shadow: 0 6px 0 0 #7735b1;
    background-color: #a876d6;
    display: block;
    color: #fff;
    text-align: center;
    padding: 2px;
    border: 0;
    border-radius: 6px;
    box-sizing: border-box;
    font-size: 20px;
    line-height: 2;
    width: 90%;
    margin: 2px auto;
}

.mainvisual p{
	/* color: #02426d; */
	font-weight: bold;
	margin: 5px 0;
}




/* clearfix
-----------------------------------------------------------*/

.clearfix:after {
	content: "";
	display: block;
	visibility: hidden;
	height: 0.1px;
	font-size: 0.1em;
	line-height: 0;
	clear: both;
}

/* img関連
-----------------------------------------------------------*/
.box_overflow {
	overflow: hidden;
}

.img200 {
	width: 200px;
}

.float_r_img {
	float: right;
}

.float_l_img {
	float: left;
}

/* text関連
-----------------------------------------------------------*/
p {
	margin: 10px 0;
}

.txt_red {
	color: #DB0000;
}

.eventsEnd {
  display: block;
  width: 98%;
  margin: 10px auto 13px;
  padding: 10px 0 8px 0;
  border: solid 1px #DB0000;
  text-align: center;
  color: #DB0000;
  font-weight: bold;
}

.txt_c {
	text-align: center;
}

/* footer
-----------------------------------------------------------*/

#footer {
	margin: 20px auto;
	text-align: center;
	height: 30px;
	padding: 20px 0;
}


/* ----------------------------------------
  トップへ戻るボタン
---------------------------------------- */




.backtotop a {
	display: inline-block;
	width: 56px;
	height: 56px;
	padding: 0;
	margin: 0;
	font-size: 98%;
	color: #666;
	line-height: 62px;
	text-align: center;
	background-color: #eee;
	border-radius: 50%;
	display: block;
}

.backtotop {
	position: fixed;
	right: 10px;
	bottom: 20px;
	z-index: 1000;
	/* display: none; */
}

.backtotop {
	bottom: 30px;
}

.backtotop:not(:target) {
	bottom: 30px\9;
	/* IE9 */
}






/* button
-----------------------------------------------------------*/
.btn_top {
	width: 549px;
}

.btn_top p,
.c-cta-inquiry p {
	text-align: center;
	font-weight: bold;
}


.btn_top a {
	width: 459px;
}

.button-inquiry--large {
	box-shadow: 0 6px 0 0 #7735b1;
	background-color: #a876d6;
	display: block;
	color: #fff;
	text-align: center;
	padding: 6px;
	border: 0;
	border-radius: 6px;
	box-sizing: border-box;
	font-size: 24px;
	line-height: 2;
	width: 90%;
	margin: 20px auto;
}

.button-inquiry--large>span {
	padding: 10px 12px 12px;
	background: #FFF;
	color: #663e79;
	font-size: 18px;
	font-weight: bold;
	border-radius: 50px;
	-webkit-border-radius: 50px;
	-moz-border-radius: 50px;
	-o-border-radius: 50px;
	display: inline-block;
	vertical-align: bottom;
	margin-right: 15px;
}


.btn_area .button-inquiry,
.btn_area .eventsEnd {
	width: 480px;
}



.btn_area .btn_cta-text {
	text-align: center;
	line-height: 1.8;
	font-size: 18px;
	color: #333;
}

.cta-text {
	text-align: center;
	font-size: 16px;
}

.cta-apply {
	text-align: center;
	font-size: 13px;
	margin-top: 20px;
}

.qa_link {
	text-align: center;
}

.qa_link a {
	display: inline-block;
	padding: 14px;
	border: 1px solid #ccc;
	border-radius: 10px;
	background-color: #FFF;
	font-size: 16px;
	margin: 0 auto;
}


/* headline
-----------------------------------------------------------*/

.section-header {
	background: #045183;
	text-align: center;
	padding: 20px;
	font-size: 26px;
	font-weight: 600;
	color: #fff;
	font-weight: 600;
	line-height: 1.4;
	padding: 20px 20px 15px;
	margin: 0 0 20px;
}

.section-header span {
	font-size: 18px;
	display: block;
}

h3 {
	margin: 0 0 30px;
	line-height: 1.5;
	color: #045183;
	font-size: 22px;
	font-weight: 600;
	text-align: center;
}



/* background
-----------------------------------------------------------*/

.bg_gray {
	background-color: #eee;
	padding-bottom: 20px;
}

.bg_white {
	background-color: #fff;
	padding-bottom: 20px;
}


/* layout
-----------------------------------------------------------*/

.flex_container {
	display: flex;
}

.align_c {
	text-align: center;
}

.box_white {
	background-color: #FFF;
	padding: 20px;
	margin-top: 20px;
	text-align: center;
}

.box_gray {
	background-color: #f5f5f5;
	padding: 20px;
	margin-top: 20px;
	text-align: center;
}

.border_gray {
	border: solid #ccc 1px;
}

.block {
	margin-top: 40px;
}

.section-description {
	text-align: center;
	margin-bottom: 20px;
}

.note {
	font-size: 12px;
	margin: 8px 0;
}


/* 文字装飾
-----------------------------------------------------------*/

.text-purple {
	color: #a876d6;
}

.text-navy {
	color: #045183;
}

/* 三角装飾
-----------------------------------------------------------*/
.triangle-bottom {
	display: inline-block;
	border-style: solid;
	border-width: 28px 35px 0 35px;
	border-color: #a876d6 transparent transparent transparent;
}

.triangle-box {
	width: 80px;
	margin: -16px auto 0;
	text-align: center;
}


/* campaign
-----------------------------------------------------------*/
.campaign_box {
	box-sizing: border-box;
	padding: 24px;
	border: #B171DC solid 2px;
	background-color: #fff;
}

.campaign_box .line_box{
	display: block;
    background-color: #f5f5f5;
    /* border: 2px #faf1ff solid; */
    padding: 20px;
	margin-top: 20px;
}

/* problem
-----------------------------------------------------------*/
.problem_3point ul ol {
	font-weight: 700;
	line-height: 1.5em;
	font-size: 16px;
	margin-bottom: 8px;
}

.problem_3point ul ol span {
	font-size: 32px;
	font-weight: 700;
	color: #a876d6;
}

.problem_3point li {
	margin-bottom: 16px;
}

.problem_3point li:last-child {
	margin-bottom: 0;
}

/* about_vc
-----------------------------------------------------------*/

.about_vc_3point_box {
	font-size: 18px;
	line-height: 1.5;

}

.about_vc_3point_box p {
	text-align: center !important;
}

.about_vc_3point_box img.circre {
	margin: 0 !important;
}

.about_vc_3point_box img.second {
	height: 160px;
	width: auto;
	margin: 0;
}

.about_vc_logo,
.about_vc_genre {
	width: 100%;
	margin: 0 auto;
	box-sizing: border-box;
}

.about_vc_genre h4 {
	font-size: 18px;
	font-weight: 600;
	text-align: center;
}

.about_vc_genre_box {
	width: 50%;
	float: left;
}

/* about_dmp
-----------------------------------------------------------*/
.about_dmp_img {
	width: 80%
}

/* voice
-----------------------------------------------------------*/
.voice_box_white {
	background-color: #fff;
}

.voice_box_white h3.case1 {
	background-image: url(../../ecsite/img/b_c_img_01.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 173px 47px;
	height: 50px;
	padding-left: 200px;
	padding-top: 10px;
	text-align: left;
	margin-bottom: 0;
}

.voice_box_white h3.case2 {
	background-image: url(../../ecsite/img/b_c_img_05.png);
	background-repeat: no-repeat;
	background-position: left top;
	background-size: 173px 47px;
	height: 50px;
	padding-left: 200px;
	padding-top: 10px;
	text-align: left;
	margin-bottom: 0;
}

.voice_inner {
	padding: 16px 32px 32px;
}

.voice_box_img1 {
	width: 375px;
	margin-right: 30px;
}

.voice_ttl {
	font-size: 16px;
	margin-top: 0 !important;
}

.voice_ttl span {
	font-size: 24px;
	font-weight: bold;
}



/* qa
-----------------------------------------------------------*/

.qa-sub-header,.about-dmp {
	padding: 9px 0 6px 0;
	font-size: 18px;
	background: #045183;
	color: #fff;
	margin-top: 45px;
	font-weight: normal;
	margin-bottom: 20px;
}

.media_reason_area .flex_container {
	justify-content: center;
}

.media_reason {
	font-size: 20px;
}

.media_reason p {
	text-align: center;
}

.media_reason:first-child {
	margin-right: 60px;
}

.media_reason span {
	font-size: 12px;
}

.media_reason_img {
	width: 300px;
	height: auto;
}

.media_ipush_img {
	width: 100%;
	margin: 0 auto;
}

.qa_area p {
	margin-bottom: 20px;
	margin-top: 0 !important;
}



/* custemer
-----------------------------------------------------------*/

.custemer_case {
	background-color: #eee;
	padding: 20px;
	margin-bottom: 20px;
}

.custemer_case_title {
	margin-bottom: 20px;
}

.custemer_case_title_img {
	width: 260px;
	height: 60px;
}

.custemer_case_title_text {
	font-size: 22px;
	font-weight: 600;
	line-height: 60px;
	margin-left: 20px;
}

.custemer_case_details {
	background-color: #FFF;
	padding: 20px;
}

.custemer_case_details_img {
	width: 300px;
	height: auto;
}

.custemer_case_details_text_title {
	font-size: 20px;
	margin-bottom: 20px;
}

.custemer_case_details_text_title span {
	font-size: 28px;
	font-weight: 600;
}

.custemer_case_details_text {
	margin-left: 40px;
}

/* custemer
-----------------------------------------------------------*/

.ec_list {
	display: flex;
	flex-wrap: wrap;
}

.ec_list_box_col1 {
	width: 100%;
}

.ec_list_box {
	width: 450px;
}

.ec_list_box:nth-child(even) {
	margin-right: 40px;
}

.ec_list h4 {
	display: block;
	/* width: 100%; */
	font-size: 16px;
	font-weight: 600;
	text-align: center;
	color: #035081;
	background-color: #eee;
	padding: 8px;
}

.ec_list_box,
.ec_list_box_col1 {
	margin: 20px 0;
}

.ec_list_box ul,
.ec_list_box_col1 ul {
	display: flex;
	justify-content: center;
	margin-top: 20px;
}

.ec_list_box_col1 ul li {
	margin-right: 6px;
}

.ec_list_box ul li {
	width: 100px;
	text-align: center;
	margin-right: 40px;
}

.ec_list_box ul li:last-child,
.ec_list_box_col1 ul li:last-child {
	margin-right: 0;
}



/* plan
-----------------------------------------------------------*/
.basicplan .basicplan_item {
	width: 440px;
	margin-right: 40px;
}

.basicplan .basicplan_item:last-child {
	margin-right: 0;
}

.basicplan_item hr {
	border-width: 0px;
	border-top-width: 1px;
	border-style: dotted;
	border-color: #ccc;
	margin: 20px 0;
}


.basicplan_item_title {
	font-size: 24px;
	line-height: 1.5;
	text-align: center;
}


.plan_option {
	margin-bottom: 20px;
}

.plan_option_item {
	width: 280px;
	margin-right: 20px;
	text-align: center;
}

.plan_option_item h4 {
	font-size: 18px;
	font-weight: 600;
	text-align: center;
}

.plan_option_item img {
	height: 100px;
	width: auto;
	margin: 20px auto 10px;
}

.plan_option_item:last-child {
	margin-right: 0;
}



/* 料金プラン表 */

.pure-table {
	empty-cells: show;
	border: 1px solid #cbcbcb;
}

.pure-table td,
.pure-table th {
	border-left: 1px solid #cbcbcb;
	border-width: 0 0 0 1px;
	font-size: inherit;
	margin: 0;
	overflow: visible;
	padding: .5em 1em;
}

.pure-table,
table {
	border-collapse: collapse;
	border-spacing: 0;
}

.c-plan-table {
	margin: 0 auto;
	font-size: 18px;
	background-color: #fff;
	width: 96%;
}

.c-plan-table td,
.c-plan-table th {
	font-weight: normal;
	width: 30%;
	padding: 16px 3px;
	text-align: center;
	vertical-align: middle;
	color: #666666;
	background-color: #fff;
	line-height: 1.4em;
}

.c-plan-table thead td:first-child {
	background-color: #ccc;
	color: #ffffff;
}

.c-plan-table thead td:nth-child(2) {
	background-color: #a876d6;
	color: #ffffff;
}

.c-plan-table thead td:nth-child(3) {
	background-color: #6897b5;
	color: #ffffff;
}

.c-plan-table tbody tr:nth-child(2n+1) th {
	background-color: #eee;
}

.c-plan-table tbody tr:nth-child(2n+1) td:nth-child(2) {
	background-color: #f6f1fb;
}

.c-plan-table tbody tr:nth-child(2n+1) td:nth-child(3) {
	background-color: #e5ecf2;
}

.c-plan-table tbody small {
	font-size: 10px;
	line-height: 1.2em;
}

.c-plan-table tbody th.vertical {
	width: 40px;
	background-color: #fff;
}

.c-plan-table tbody th.vertical span {
	-ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	height: 120px;
	letter-spacing: 2px;
}


/* support
-----------------------------------------------------------*/

.support_flow img {
	width: 100%;
}

.support_team_container {
	display: flex;
	flex-wrap: wrap;
}

.support_team_img {
	width: 280px;
	height: 160px;
	margin-right: 40px;

}

.support_start {
	background-color: #eee;
	padding: 20px;
}

.support_start {
	margin: 20px 0;
}

.support_start_img {
	justify-content: center;
	margin-bottom: 20px;
}

.support_start_img img {
	margin-right: 20px;
	width: 240px;
	height: auto;
}

.support_start_img img:last-child {
	margin-right: 0;
}


/* qa
-----------------------------------------------------------*/
.qa_item {
	margin-bottom: 20px;
}

.qa_item dl dt {
	background-image: url(../img/eclp/qa_q_icon.png);
	background-size: 30px;
	margin-bottom: 10px;
	font-weight: bold;
}

.qa_item dl dd {
	background-image: url(../img/eclp/qa_a_icon.png);
	background-size: 30px;
}


.qa_item dl dt,
.qa_item dl dd {
	font-size: 14px;
	padding: 3px 0 3px 36px;
	line-height: 1.8;
	background-repeat: no-repeat;
	background-position: top left;
}

/*---
表示出し分け
--*/

.pcshow {
	display: block;
}

.spshow {
	display: none;
}

/*---
アドフラウド対策、ブランドセーフティの取り組み強化
--*/
.ad_fraud_img {
	width: 430px;
	height: auto;
	margin-left: 30px;
}

/*==================================================

モバイル用CSS

==================================================*/
@media screen and (max-width: 767px) {

	body {
		line-height: 1.5;
		margin: 0;
	}

	img {
		max-width: 100%;
		height: auto;
	}

	.flex_container {
		flex-wrap: wrap;
		align-items: flex-start;
	}


	.section-header {
		font-size: 24px;
		margin: 0 0 20px !important;

	}

	h2 {
		margin-top: 32px !important;
	}

	h3 {
		font-size: 20px;
	}

	.headerLogo_right {
		margin-right: 8px;
	}


	.btn_area .button-inquiry,
	.btn_area .eventsEnd,
	.btn_top .button-inquiry {
		width: 90%;
	}

	.button-inquiry--large,
	.button-inquiry--medium {
		/*background: transparent url(../img/btn_02.png) no-repeat;
  width: 546px;
  height: 94px; */
		box-shadow: 0 6px 0 0 #7735b1;
		background-color: #a876d6;
		display: block;
		color: #fff;
		text-align: center;
		padding: 8px;
		border: 0;
		border-radius: 6px;
		box-sizing: border-box;
		font-size: 20px;
		line-height: 2;
		width: 90%;
		margin: 0 auto 10px;
	}

	.button-inquiry--large>span,
	.button-inquiry--medium>span {
		padding: 7px 9px 9px;
		background: #FFF;
		color: #663e79;
		font-size: 14px;
		font-weight: bold;
		border-radius: 50px;
		-webkit-border-radius: 50px;
		-moz-border-radius: 50px;
		-o-border-radius: 50px;
		display: inline-block;
		vertical-align: bottom;
		margin-right: 15px;
	}

	.box_white {
		padding: 16px;
	}

	/*main_visual*/
	.mainvisual {
		width: auto;
		margin: 0 auto;
		padding: 20px;
		background-image: none;
	}

	.mainvisual img {
		width: 100%;
		text-align: center;
	}

	/* button
-----------------------------------------------------------*/
	.btn_top {
		width: 100%;
		margin-top: 20px;
	}

	.btn_top a {
		width: 80%;
	}

	.media_reason {
		width: 100%;
		margin: 0 0 20px;
	}

	.media_reason:first-child {
		margin-right: 0;
	}

	.custemer_case_title_img {
		width: 200px;
		height: auto;
	}

	.custemer_case_title_text {
		margin-left: 0;
		margin-top: 10px;
		line-height: 1.5;
	}

	.custemer_case_details_img {
		width: 100%;
	}

	.custemer_case_details_text {
		margin-left: 20px;
	}

	.basicplan .basicplan_item {
		width: 100%;
		margin: 0 0 20px;
	}

	.plan_option_item {
		width: 100%;
		margin: 0 0 20px;
	}

	/* 料金プラン表 */
	.c-plan-table {
		font-size: 12px;
	}


	.support_team_img {
		width: 100%;
		height: auto;
		margin: 0 auto 20px;
	}

	.support_start .flex_container {
		flex-wrap: nowrap;
	}

	.support_start_img img {
		width: 90px;
		height: auto;
	}

	.ec_list_box {
		width: 100%;
	}

	.ec_list_box:nth-child(even) {
		margin-right: 0;
	}

	.ec_list_box ul,
	.ec_list_box_col1 ul {
		flex-wrap: wrap;
	}


	.ec_list_box ul,
	.ec_list_box_col1 ul {
		flex-wrap: wrap;
	}

	.ec_list_box ul li,
	.ec_list_box_col1 ul li {
		margin: 5px;
	}


	#bannerarea {
		height: 40px;
	}

	#bannerarea img {
		width: 100%;
		height: auto;
		margin: 0 auto;
	}

	h3.sideline span {
		font-size: 20px;
	}

	#header {
		width: 100%;
		margin: 8px auto;
		position: relative;
	}

	.headerLogo_inner {
		width: 100%;
	}

	.logo {
		margin-left: 2px;
	}

	#headerImg img {
		width: 100%;
		height: auto;
	}

	.inner {
		width: 90%;
		clear: both;
		margin: 0 auto;
	}

	.col {
		width: 100%;
		border: 1px solid #d8d8d8;
		background-color: #FFFFFF;
		margin: 15px 15px 15px 0;
	}

	.col.last {
		margin: 15px 0 30px 0;
		clear: right;
	}

	.col2wrap {
		width: 100%;
	}

	.col2-left,
	.col2-right {
		float: none;
	}


	/* .backtotop
-----------------------------------------------------------*/
	.backtotop {
		bottom: 20px;
		/* IE10 */
	}

	.backtotop a {
		display: inline-block;
		width: 56px;
		height: 56px;
		padding: 0;
		margin: 0;
		font-size: 98%;
		color: #666;
		line-height: 62px;
		text-align: center;
		background-color: #eee;
		border-radius: 50%;
		display: block;
	}

	.backtotop a:hover {
		background-color: #999;
		color: #eee;
	}




	/*---
表示出し分け
--*/

	.pcshow {
		display: none;
	}

	.spshow {
		display: block;
	}

	/*---
アドフラウド対策、ブランドセーフティの取り組み強化
--*/
	.ad_fraud_img {
		width: 100%;
		height: auto;
		margin: 0 auto;
	}


	/* about_vc
-----------------------------------------------------------*/
	.about_vc_genre_box {
		width: 100%;
		margin-top: 20px;
	}

	/* about_dmp
-----------------------------------------------------------*/
	.about_dmp_img {
		width: 100%
	}

	/* voice
-----------------------------------------------------------*/
	.voice_box_white h3.case1 {
		padding: 60px 16px 16px 16px;
	}

	.voice_box_white h3.case2 {
		padding: 60px 16px 16px 16px;
	}

	.voice_box_img1,
	.voice_box_img2 {
		width: 100%;
		margin: 0 0 16px !important;
	}

	.voice_box_white .box_overflow {
		overflow: inherit;
	}

}
