@charset "UTF-8";
/* CSS Document */
/*スマホ用スタイル*/
@media screen and (max-width: 767px) {

.spmb5{margin-bottom:5px!important}
.spmb10{margin-bottom:10px!important}
.spmb15{margin-bottom:15px!important}
.spmb20{margin-bottom:20px!important}
.spmb25{margin-bottom:25px!important}
.spmb30{margin-bottom:30px!important}
.spmb35{margin-bottom:35px!important}
.spmb40{margin-bottom:40px!important}
.spmb50{margin-bottom:50px!important}

.spmt0{margin-top:0px!important}
.spmt5{margin-top:5px!important}
.spmt10{margin-top:10px!important}
.spmt15{margin-top:15px!important}
.spmt20{margin-top:20px!important}
.spmt30{margin-top:30px!important}
.spmt32{margin-top:32px!important}
.spmt33{margin-top:33px!important}
.spmt35{margin-top:35px!important}
.spmt50{margin-top:50px!important}
.spmt55{margin-top:55px!important}
.spmt60{margin-top:60px!important}

/*セクション間余白----------------------------------------------------------- */
  section {
    padding: 60px 0;
 }
h2{
	padding-bottom: 40px;
}
.white_box{
	padding: 30px 20px;
}
.gray-box{
	background: #f1f1f1;
	padding: 30px 20px;
	border-radius: 15px;
}
/*
表示設定
----------------------------------------------------------- */
/* .br_sp{
	display: block;
}
.br_tab {
	display: none;
}
.br_pc{
	display: none!important;
}
.spml0 {margin-left: 0!important;}
 */
/*はみ出し画像中央----------------------------------------------------------- */
  .wic1 img {
    width: 100%;
  }
  .wic1 {
    margin-left: -15px;
    margin-right: -15px;
  }
  .wic2 img {
    width: 100%;
  }
  .wic2 {
    margin-left: -15px;
    margin-right: -15px;
  }
  .wic3 img {
    width: 100%;
  }
  .wic3 {
    margin-left: -15px;
    margin-right: -15px;
  }

h2 img{
	max-width: 100%;
}
/*Header----------------------------------------------------------- */
body {
    padding-top: 63px;
}
.fv-container{
	margin: -36px auto 0px;
	box-sizing: border-box;
}

.head-check{
	padding-bottom: 0px!important;
	
}
.only-sp {
        display: block !important;
}
.fv11{
	margin: 0px auto!important;
    width: 100%!important;
	padding-top: 25px!important;
}
header .container {
  width: 100%!important;
  margin: 0 auto!important;
  padding-bottom: 8px!important;
  padding-top: 8px!important;
}
header .flex{
  display: flex;
  justify-content: space-between;	
}
header a{
	text-decoration: none;
	color: #fff;
}
header .logo img{
	width: 83%;
}
.logo{
	padding-top: 6px;
}
.menu{
	font-size: 12px;
	font-weight: bold;
	line-height: 1.4;
	vertical-align: middle;
	flex-direction: column;

}
  .menu .btn_or,
  .menu .btn_gr {
    width: 100%; /* 横幅100%にしたい場合 */
  }
  .menu .btn_gr{
	display: none;
  }
  .menu .btn_or{
	font-size: 1.4rem;
  }
.btn_or a {
	display: block;
	text-decoration: none;
	color: #fff;
	padding: 13px 6px;
	width: 19rem;
    margin: 0 auto;
}
.btn_gr a {
	display: block;
	text-decoration: none;
	color: #fff;
	padding: 10px 15px;
	vertical-align: middle;	
}
.btn_or{
	text-align: center;
    margin-right: 10px;
	font-size: 1.6rem;
}
.btn_gr{
	vertical-align: middle;	
}

/*MV----------------------------------------------------------- */
.mv{
	background: url(../img/sp_mvbg.jpg) no-repeat right;
	background-size: cover;
	margin: 0px auto !important;
    width: 100% !important;
    padding-top: 25px !important;
}
.fv{
	background: none;
}
.fv .container{
	padding: auto 0;
}
/*CTA----------------------------------------------------------- */
.cta{
	position: relative;
	padding: 40px 0;
	background: url("../img/sp_cta_bg.png")no-repeat;
	background-size: cover;
}
.cta h2{
  padding-bottom: 12px;
}
.feature01{
	margin-bottom: 0px!important;
}
.ctasp{
	display: none!important;
}

/*sec01----------------------------------------------------------- */
.sec01 h2{
	padding-bottom: 0px!important;
}
/*sec02----------------------------------------------------------- */
.sec02{
	background-color: #ecf5e0;
}
.flex{
	display: block;
}
.sec02 .feature01 h3{
	position: relative;
}
.sec02 .feature02 h3{
	position: relative;
}
.sec02 .feature03 h3{
	position: relative;
}
.sec02 .feature01 h3:before {
	content: url("../img/sp_feature01.png");
	display: inline-block;
	position: absolute;
	top: -4.8rem;
	left: -2.5rem;
}
.sec02 .feature02 h3:after {
	content: url("../img/sp_feature02.png");
	display: inline-block;
	position: absolute;
	top: -4.8rem;
	right: -2.5rem;
}
.sec02 .feature03 h3:before {
	content: url("../img/sp_feature03.png");
	display: inline-block;
	position: absolute;
	top: -4.8rem;
	left: -2.5rem;
}
.sec02 button{
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	border-radius: 60px;
	padding: 10px 15px;
}

/*sec03----------------------------------------------------------- */
.sec03 h4{
	max-width: 100%;
	margin-top: 20px;
}
.sec03 h2{
	padding-bottom: 25px!important;
}

/*sec04----------------------------------------------------------- */

.sec04 ul{
	padding-left: 7%;
	font-size: 4.3vw;
    font-weight: bold;
    list-style-type: none;
}
.sec04 li::before{
	content: '';
    display: block;
    position: absolute;
    top: .5em;
    left: -1.2em;
    width: 20px;
    height: 10px;
    border-left: 4px solid #2c3440;
    border-bottom: 4px solid #2c3440;
    transform: rotate(-45deg);
}
/*sec05----------------------------------------------------------- */
.sec05 .white_box{
	margin-bottom: 24px!important;
}
.sec05 .feature01{
	position: relative;
}
.sec05{
	background:url(../img/sp_sec05_bg.jpg);
	background-size: contain;
}
.sec05 .feature01 h3:before {
    left: 1rem;
}
.sec05 .feature02 h3:after {
	content: url("../img/pc_feature02.png");
	display: inline-block;
	position: absolute;
	top: -1.0rem;
    right: 1rem;
}
.sec05 .feature03 h3:before {
	content: url("../img/pc_feature03.png");
	display: inline-block;
	position: absolute;
	top: -1.0rem;
    left: 15px;
}
.sec05 .feature02{
	position: relative;
}
.sec05 .feature03{
	position: relative;
	margin-bottom: 0px!important;
}
.sec05 .people01{
	position: absolute;
    right: 1%;
    top: -18px;
}
.sec05_left{
	margin-left: 0px;
	margin-top: 60px;
}
.sec05 .people02{
	position: absolute;
    left: 0px;
    top: -15px;
}
.sec05 .people03{
	position: absolute;
    right: 13px;
    top: -13px;
}
.people03 img{
	width: 80%;
}
.sec05_left2{
	margin-left:0px!important;
}


/*sec06----------------------------------------------------------- */
.sec06 .white_box{
	margin: 15px;
	margin-top: 0;
}
.clearfix{
	padding-bottom: 11px;
}
/*
.spml15{
	margin-left: 15px!important;	
}
*/
.sppr0{
	padding-right: 0;		
}
.sec06 .txt{
	padding: 20px;
	padding-left: 15px!important;
	font-size: 18px;
	vertical-align: middle;
}
.sec06 .col-md-6{
	padding-left: 0;
	margin-left: 0;
}
.sec06{
	position: relative;
}
.sec06 .people04{
	position: absolute;
	right: 5%;
    top: 79%;
    width: 11%;
}
.sec06 .arrow{
	margin: 10px 0px!important;
}
.sec06 h2{
	padding-bottom: 25px;
}

/*sec07----------------------------------------------------------- */
.sec07 .solution01:before {
	content: url("../img/pc_solution01.png");
	display: inline-block;
	position: absolute;
	top: -4.5rem;
    left: -4px;
}
.sec07 .solution02:after {
	content: url("../img/pc_solution02.png");
	display: inline-block;
	position: absolute;
	top: -4.0rem;
    right: 0rem;
}
.sec07 .solution03:before {
	content: url("../img/pc_solution03.png");
	display: inline-block;
	position: absolute;
	top: -4.0rem;
    left: -7px;
}
.sec07 .solution01{
	position: relative;
}

.sec07 .solution02{
	position: relative;
}
.sec07 .solution03{
	position: relative;
	margin-bottom: 0px!important;
}
.solution010203{
	padding-top: 60px;
}
.sec07 .q{
	background: url("../img/sp_q.png")left top 0px no-repeat;
	padding-bottom: 15px;
    padding-left: 17%;
	font-size: 18px;
	font-weight: bold;
}
.sec07 .a{
	background: url("../img/sp_a.png")left top 4px no-repeat;
    padding-left: 17%;
	padding-top: 5px;
}
.sec07 h2{
	padding-bottom: 45px;
}
.sec07 .blue_btn{
	padding: 0px 39px 28px;
}
.sp_only { display: block !important;
}
.sec07 .container{
	margin-right: auto!important;
    margin-left: auto!important;
    padding-left: 10px!important;
    padding-right: 10px!important;
    margin-bottom: 30px;
}
.sec07{
	padding: 60px 0 22px!important;
}
.sec07 .people06{
	position: absolute;
	left: 9%;
	top: 3%;
}

/*sec08----------------------------------------------------------- */
.sec08 h4{
	font-size: 5.2vw;
    text-align: center;
    font-weight: bold;
	line-height: 1.5;
	margin-top: 0px!important;
}
.sec08 .white_box{
	margin-bottom: 25px!important;
}
.sec08 .img3{
	margin-bottom: 0px!important;
}
.sec08 .center_sp{
	text-align: center;
}
.sec08 h2{
	padding-bottom: 25px;
}
/*sec09----------------------------------------------------------- */
.sec09{
	background: url(../img/sp_sec09_bg.jpg);
	background-size: cover;
}
.sec09 .white_box{
	margin-bottom: 30px!important;
}
.sec09 .container > .white_box:nth-child(2) {
  margin-bottom: 0px!important;
}
.sec09 .feature01 h3 {
    margin-top: 60px!important;
}
.sec09 .feature02 h3 {
    margin-top: 60px!important;
}
.sec09 .feature01 h3:before {
	top: -10.5rem;
	left: -7px;
}
.sec09 .feature02 h3:after {
	content: url("../img/pc_feature02.png");
	display: inline-block;
	position: absolute;
	top: -10.5rem;
    right: 0rem;
}
.sec09 h2{
	padding-bottom: 25px!important;
}

/*sec10----------------------------------------------------------- */
.sec10 .white_box{
	padding: 30px 20px 5px!important;
}
.sec10 .q{
	background: url("../img/sp_q.png")left top 0px no-repeat;
	padding-bottom: 4px;
    padding-left: 14%;
	font-size: 18px;
	font-weight: bold;
}
.sec10 .a{
	background: url("../img/sp_a.png")left top 4px no-repeat;
    padding-left: 14%;
	padding-top: 5px;
}
.sec10 .people06{
	position: absolute;
    left: 73%;
    top: 2.8%;
    width: 8%;
}
.sec10 h2{
	padding-bottom: 25px!important;
}


/*sec11----------------------------------------------------------- */

/*sec12----------------------------------------------------------- */
/*form----------------------------------------------------------- */
.form .white_box{
	padding: 30px 15px;
}
.form button{
	border-radius: 60px;
	padding: 15px 20px;
	font-size: 22px;
	width: 100%;
}
.p-index-contact__block{
	height: 1280px;
}
.form h2{
	font-size: 40px;
	font-weight: bold;
	color: #2394e9;
}
/*
 Footer
----------------------------------------------------------- */
footer{
	padding: 0rem!important;
}
.l-footer__main {
    padding: 2rem 0rem 2rem;
}
.l-footer__flex {
    display: block;
}
.l-footer__bottom {
    padding-right: 0rem;
    padding-left: 0rem;
	font-size: 150%;
}
.l-footer__privacy li{
	padding-bottom: 10px;
}
.l-footer__flex{
	text-align: center;
}
.l-footer__inner{
	padding:10px;
}
/*
people
----------------------------------------------------------- */
.people01{
	position: absolute;
	right: -2%;
	bottom: -22%;
}
.people01 img{
	width: 90%;
}
.sec02 .feature02 .people02{
	position: absolute;
	top: -4.5%;
	left: -4%;
}
.people02 img{
	width: 80%;
}

.sec02 .feature03 .people03{
	position: absolute;
	bottom: -8%;
	right: -3%;
}
.sec06 .people03 img{
	width: 90%;
}
.sec03 .case01,.case02,.case03 {
	margin-left: -9.5%;
	padding-bottom: 30px;
}
.sec04 .people001{
	position: absolute;
	left: 4%;
    top: 157px;
	z-index: 100;
}

.sec04 .people04{
	position: absolute;
	top: 0%;
	right: 3%;
}
.people04 img{
	width: 90%;
}
.sec06 .people05{
	position: absolute;
	bottom: -12%;
	right: -6%;
}
.people05 img{
	width: 80%;
}
.people06 img{
	width: 90%;
}
.sec04 h2{
   padding-bottom: 90px!important;
}
}

/*スマホ用スタイルend*/
