@charset "utf-8";

/**********************************************
** Site Name: 不正対策.com
** Site URI: https://www.fuseitaisaku.com/
** Description: サービス導入
** Author: a-yamamoto
** Last Update: 2020/04/01
** Updater: a-yamamoto
**********************************************/

/*-------------------------------------------*/
/*  CONTENTS:
/*--------------------------------------------
1.0 - 汎用スタイル
    1.1 - 見出し
2.0 - 導入フロー
    2.1 - PCスライド
3.0 - よくある質問

---------------------------------------------*/

/*-------------------------------------------*/
/*  1.0 - 汎用スタイル
/*-------------------------------------------*/

/*  1.1 - 見出し
/*-------------------------------------------*/


/*タブレット・スマホ*/
/* 959px以下 */
@media screen and (max-width:959px) {
  .flow h1.heading {
	  margin-bottom: 20px;
		padding: 0 10px;
	}
	.flow .heading_sub { padding: 0 10px;}
}

/*PC*/
/* 960px以上 */
@media screen and (min-width:960px) {
  .flow h1.heading,
	.flow .heading_sub {
    min-width: 940px;
    max-width: 1100px;
    margin: 0 auto;
  }
  .flow h1.heading { margin-bottom: 50px;}	
}

/*-------------------------------------------*/
/*  2.0 - 導入フロー
/*-------------------------------------------*/

.flow .flow_detail { background: #eef0f2;}
flow .flow_detail .slide li .detail {
  box-sizing: border-box;
}
.flow .flow_detail li .detail .title {
  width: 100%;
	display: table;
	table-layout: fixed;
  border-bottom: #333 1px solid;
	margin-bottom: 30px;
}
.flow .flow_detail li .detail .title .flow_num,
.flow .flow_detail li .detail .title .title_txt {
  box-sizing: border-box;
  display: table-cell;
	vertical-align: top;
}
.flow .flow_detail li .detail .title .flow_num {
  width: 80px;
	box-sizing: border-box;
  position: relative;
	text-align: center;
  font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
	font-size: 4.5rem;
  color: #1d50a2;
}
.flow .flow_detail li .detail .title .flow_num::before {
  width: 1px;
	height: 30px;
	content: "";
	position: absolute;
	background: #333;
	top: 19px;
	right: -5px;
}
.flow .flow_detail li .detail .title .flow_num span {
  position: absolute;
	top: -5px;
	left: 50%;
  margin-left: -20px;
  letter-spacing: 1px;
  font-size: 1.0rem;
}
.flow .flow_detail li .detail .title .title_txt {
  width: 100%;
	padding: 20px 0 0 20px;
	line-height: 1.5em;
  font-weight: bold;
}
.flow .flow_detail li .detail .btn {
  width: 100%;
  border: none;
	margin: 20px auto 0;
	font-size: 2.0rem;
	color: #fff;
}
.flow .flow_detail li .detail .btn:hover { opacity: 0.6;}

/*タブレット・スマホ*/
/* 959px以下 */
@media screen and (max-width:959px) {
  .flow .flow_detail { padding: 30px 10px 50px;}
	.flow .flow_detail .txt { margin-bottom: 30px;}
	.flow .flow_detail .slide li .detail .title .title_txt { font-size: 1.8rem;}
	.flow .flow_detail .slide li {
	  background: #fff;
		margin-bottom: 30px;
	}
	.flow .flow_detail .slide li .detail {
	  width: 100%;
	  padding: 20px;
	}
	.flow .flow_detail .slide li .detail .thumb { width: 100%;}
	.flow .flow_detail .slide li .thumb img {
	  width: 100%;
		vertical-align: bottom;
	}
	.flow .flow_detail li .detail .btn { margin: 30px auto 20px;}
}

/*PC*/
/* 960px以上 */
@media screen and (min-width:960px) {
  .flow .flow_detail { padding: 40px 0 70px;}
	.flow .flow_detail .flow_slide {
	  width: calc(100% - 150px);
		min-width: 820px;
		margin: 30px auto 0;
	}
	.flow .flow_detail .slide li {
	  display: flex;
	}
	.flow .flow_detail .slide li .detail {
	  width: 40%;
		min-height: 380px;
	  padding: 30px;
	}
	.flow .flow_detail .slide li .thumb { width: 60%;}
	.flow .flow_detail .slide li .thumb img {
	  width: 100%;
		vertical-align: bottom;
		object-fit: cover;
	}
	.flow .flow_detail .slide li .detail .title .title_txt { font-size: 2.0rem;}	
}

/*  2.1 - PCスライド
/*-------------------------------------------*/

/*PC*/
/* 960px以上 */
@media screen and (min-width:960px) {
  .flow .flow_detail .flow_slide .slide.slick-initialized { display: block;}
	.flow .flow_detail .flow_slide .slide .slick-list { background: #fff;}
	.flow .flow_detail .slide .slide_dots {
	  margin-top: 30px;
	  text-align: center;
	}
	.flow .flow_detail .slide .slide_dots li { display: inline-block;}
	.flow .flow_detail .slide .slide_dots button {
	  width: 30px;
		height: 30px;
	  border: none;
		cursor: pointer;
		font-size: 1.8rem;
	}
	.flow .flow_detail .slide .slide_dots .slick-active button {
	  border-radius: 20px;
	  background: #333;
		color: #fff;
	}
	.flow .flow_detail .slide .slick-prev,
	.flow .flow_detail .slide .slick-next {
	  width: 50px;
		height: 50px;
	  position: absolute;
		z-index: 200;
		border: none;
		border-radius: 30px;
		background: #333;
		text-indent: 120%;
		overflow: hidden;
		white-space: nowrap;
		cursor: pointer;
	}
	.flow .flow_detail .slide .slick-prev { top: 38%; left: -7%;}
	.flow .flow_detail .slide .slick-next { top: 38%; right: -7%;}
	.flow .flow_detail .slide .slick-prev:before,
	.flow .flow_detail .slide .slick-prev::after,
	.flow .flow_detail .slide .slick-next:before,
	.flow .flow_detail .slide .slick-next::after {
		position: absolute;
		top: 49%;
		display: block;
		content: '';
		width: 20px;
		height: 2px;
		background: #fff;
		border-radius: 4px;
	}
	.flow .flow_detail .slide .slick-prev:before,
	.flow .flow_detail .slide .slick-prev::after { left: 13px;}
	.flow .flow_detail .slide .slick-next:before,
	.flow .flow_detail .slide .slick-next::after { right: 13px;}
	.flow .flow_detail .slide .slick-next::before {
		margin-top: -7px;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.flow .flow_detail .slide .slick-next::after {
		margin-top: 6px;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
}
	.flow .flow_detail .slide .slick-prev::before {
		margin-top: -7px;
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.flow .flow_detail .slide .slick-prev::after {
		margin-top: 6px;
		-webkit-transform: rotate(45deg);
		transform: rotate(45deg);
  }
}

/*-------------------------------------------*/
/*  3.0 - よくある質問
/*-------------------------------------------*/

.flow .faq .faq_list { margin-bottom: 50px;}
.flow .faq .faq_list li p.question {
  box-sizing: border-box;
  position: relative;
  padding: 20px 30px 20px 10px;
  border-bottom: #333 1px solid;
  text-indent: -3.4em;
  padding-left: 3.4em;
  cursor: pointer;
  letter-spacing: 1px;
  line-height: 1.8em;
  font-weight: bold;
}
.flow .faq .faq_list li p.question span {
  width: 30px;
  display: inline-block;
  margin: 0 10px 0 10px;
  padding: 1px 0;
  border-radius: 2px;
  background: #1d50a2;
  text-align: center;
  text-indent: 0;
  font-weight: bold;
  font-size: 1.4rem;
  color: #fff;
}
.flow .faq .faq_list li p.question::before,
.flow .faq .faq_list li p.question::after {
  position: absolute;
  top: 50%;
  right: 10px;
  display: block;
  content: '';
  width: 11px;
  height: 3px;
  background: #1d50a2;
  border-radius: 4px;
}
.flow .faq .faq_list li p.question::before {
  margin-right: 6px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.flow .faq .faq_list li p.question::after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.flow .faq .faq_list li p.question.open::before,
.report .report_open p.open::after {
  top: 48%;
}
.flow .faq .faq_list li p.question.open::before {
  margin-top: 1px;
  margin-right: 7px;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}
.flow .faq .faq_list li p.question.open::after {
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.flow .faq .faq_list li .answer {
  display: none;
  box-sizing: border-box;
  padding: 15px 20px 15px 10px;
  border-bottom: #333 1px solid;
}
.flow .faq .faq_list li .answer .ico,
.flow .faq .faq_list li .answer .txt {
  display: table-cell;
  box-sizing: border-box;
  vertical-align: top;
}
.flow .faq .faq_list li .answer .ico p {
  width: 30px;
  padding: 3px 0;
  border-radius: 2px;
  background: #f39800;
  text-align: center;
  font-weight: bold;
  font-size: 1.4rem;
  color: #fff;
}
.flow .faq .faq_list li .answer .txt {
  padding-left: 10px;
  line-height: 2.0em;
  font-size: 1.4rem;
}
.flow .faq .faq_list li .answer .txt p { margin-bottom: 15px;}
.flow .faq .faq_list li .answer .txt ul { padding: 0 0 15px;}
.flow .faq .faq_list li .answer .txt ul li {
  text-indent: -1em;
  margin-bottom: 5px;
  padding-left: 1em;
}
.flow .faq .faq_btn .btn { margin: 0 auto;}

/*タブレット・スマホ*/
/* 959px以下 */
@media screen and (max-width:959px) {
	.flow .faq { padding: 30px 0 50px;}
	.flow .faq h2.heading,
	.flow .faq .heading_sub {
	  padding-left: 10px;
		padding-right: 10px;
	}
  .flow .faq .faq_list li p.question { font-size: 1.5rem;}
}

/*PC*/
/* 960px以上 */
@media screen and (min-width:960px) {
	.flow .faq { padding: 50px 0 70px;}
  .flow .faq .faq_list li p.question { font-size: 1.8rem;}
}



