/*Base*/
@charset "UTF-8";

body{
margin:0;
	font-family: "Noto Sans JP", sans-serif;
	letter-spacing:1px;}

a{text-decoration: none; color:#1c439a;}
a:hover{text-decoration:underline; color:#0690fa;}

.swiper-button-prev,
.swiper-button-next {
	display:none;}


footer a:hover{text-decoration:none;}


#head .copytext{
	font-size:1em;
	letter-spacing:2px;
	position:relative;
	font-family: "Noto Sans JP", sans-serif;
  font-weight: 600;
  font-style: normal;
	margin:5px 0 0;
	z-index:1;
	color:#4667c8;
	width:100%;
	text-align:left;
	left:225px;
}

#head .copytext br{
}

/*slide text anime*/

.c01{
	z-index:1;
	position: relative; 
	color:#0690fa;
	font-size:1.6em;
	 text-shadow: 1px 1px 2px rgb(255, 255, 255, 0.6);
  &::before{
    content: ""; 
	position: absolute; 
	z-index: 1; top: 0%; right: 100%; bottom: 0%; left: 0%;
    background : #fff;
  }
  &.active{
	margin:0px 0 0 0px;
    animation-name: kf_c01a;
    animation-duration: 0s;
    animation-delay: .5s;
    animation-fill-mode: forwards;
    &::before{
      animation-name: kf_c01b;
      animation-duration: 1s;
      animation-fill-mode: forwards;
    }
  }
}


#spmenu{
	display:none;
}

#head .menu{
	display:flex;
	justify-content:flex-end;
	flex-wrap: wrap;
	width:100%;
	position:absolute;
	margin-top:45px;
	font-weight: 400;
	font-style: normal;
	z-index:1;
}

#head .menu .en{
	margin:3px 0 0px;
}

.menu a,footer a {
	padding:0 20px;
  position: relative;
  display: inline-block;
  text-decoration: none;
	font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
	font-size:1.05em;
}







.menu a::after{
	color:#0690fa;
  position: absolute;
  bottom: -4px;/*テキストからの距離*/
  left: 30px;
  content: '';
  width: 40%;/*hover時に表示*/
  height: 1px;/*下線の高さ*/
  background: #0690fa;/*下線の色*/
  transform: scale(0, 1);/*トランス前の下線*/
  transform-origin: left top;/*トランスフォーム開始位置*/
  transition: transform .3s;/*アニメーション速度*/
}

footer a::after {
	color:#0690fa;
  position: absolute;
  bottom: -4px;/*テキストからの距離*/
  left: 10px;
  content: '';
  width: 30%;/*hover時に表示*/
  height: 1px;/*下線の高さ*/
  background: #0690fa;/*下線の色*/
  transform: scale(0, 1);/*トランス前の下線*/
  transform-origin: left top;/*トランスフォーム開始位置*/
  transition: transform .3s;/*アニメーション速度*/
}
a:hover::after {
  transform: scale(1, 1);/*トランス後の下線*/
}
footer .logo a::after {
  height: 0px;/*下線の高さ*/
}
.btn_q::after{
  height: 1px;/*下線の高さ*/}

footer a::after{
  background: #fff;/*下線の色*/}

#head{
	display:flex;
	height:85px;
	top:0;
	width:100%;
	position:fixed;
	background-color: rgb(255 255 255 / 1);
	z-index:999;
}

#head img{
	width:80%;
	max-width:440px;
}
#head .logo{
	width:430px;
	padding:15px 0 0 25px;
  display:block;
	z-index:999;
}

#head .form{
	display:none;
}


/*問い合わせ*/
#head .apply{
	position:fixed;
	right:0px;
	bottom:30%;
	z-index:-99;
}

#head .apply a.btn_q{
	cursor:pointer;
	line-height:21px;
	font-size:1em;
	display: block;
	text-align: center;
	width: 220px;
	height:40px;
	padding: 20px 0 0;
	font-weight: bold;
	background-image: linear-gradient(to top, #D8D9DB 0%, #fff 80%, #FDFDFD 100%);
	border-radius: 5px;
	color: #1c439a;
	border: 1px solid #ddd;
	text-shadow: 0 1px #fff;2px #D8D9DB;
	transition: 0.5s;
	opacity: 0.85;
}

#head .apply a.btn_q:hover {
  text-decoration: none;
	opacity: 0.6;
	text-shadow: 0 1px #fff;2px #fff;
	background-image: linear-gradient(to top, #D8D9DB 0%, #fff 80%, #fff 100%);
	}


#navArea{
	display:none;
}
/*test menu*/

#slidepc{
	height:740px;
	text-align:center;
	margin:0px auto 0;
}

#home #slidepc{
	height:auto;
	text-align:center;
	margin:150px auto 0;
	max-width:1600px;
}

#slidepc h3, #slide{
	color:#345896;
  position: relative;
	margin:0 auto 40px;
  padding: 0.3em;
	line-height:38px;
	width:690px;
  background: #e0edff;
	font-size:1.4em;
	font-weight:500;
}

#slidepc h3 span{
	font-size:0.7em;
	font-weight:300;
}


#slidepc h3:after {
  position: absolute;
  content: '';
  top: 100%;
  left: 30px;
  border: 15px solid transparent;
  border-top: 15px solid #e0edff;
  width: 0;
  height: 0;
}

#slidepc h2, #slidesp h2{
	margin:30px 0 0;
  color: #5480ac;
	font-size:1.15em;}

#slidepc h2 a, #slidesp h2 a{
	font-weight:500;
  position: relative;
  color: #5480ac;
}

#slidepc h2 :after , #slidesp h2 :after{
	margin:3px auto ;
	width:410px;
	padding:0px 12px 0 0px;
  content: "";
  display: block;
  height: 2px;
  background: -webkit-linear-gradient(to right, rgb(112, 94, 190), transparent);
  background: linear-gradient(to right, rgb(151, 209, 242), transparent);
}

#slidepc br{
	display:none;
}

#slidepc h3 br{
	display:inline;
}
#slidesp{
	display:none;
}


/*slide text anime*/

.c01{
	z-index:1;
	position: relative; 
	color:#0690fa;
	font-size:1.6em;
	 text-shadow: 1px 1px 2px rgb(255, 255, 255, 0.6);
  &::before{
    content: ""; 
	position: absolute; 
	z-index: 1; top: 0%; right: 100%; bottom: 0%; left: 0%;
    background : #fff;
  }
  &.active{
	margin:0px 0 0 0px;
    animation-name: kf_c01a;
    animation-duration: 0s;
    animation-delay: .5s;
    animation-fill-mode: forwards;
    &::before{
      animation-name: kf_c01b;
      animation-duration: 1s;
      animation-fill-mode: forwards;
    }
  }
}

.c01b{
	position: relative; 
	color:#0690fa;
	text-align:center;
	font-size:1.5em;
	 text-shadow: 1px 1px 2px rgb(255, 255, 255, 0.6);
  &::before{
    content: ""; 
	position: absolute; 
	z-index: 1; 
	top: 0%; right: 100%; bottom: 0%; left: 0%;
    background : #fff;
  }
  &.active{
	margin:0px 0 0 0px;
    animation-name: kf_c01a;
    animation-duration: 0s;
    animation-delay: .2s;
    animation-fill-mode: forwards;
    &::before{
      animation-name: kf_c01b;
      animation-duration: 1.2s;
      animation-fill-mode: forwards;
    }
  }
}

.c01small a{
	font-size:0.5em;
	font-weight:thin;
	color:#0690fa;
}





.robbot01 img{
	position:absolute;
	top:-90px;
}


@keyframes kf_c01a {
  100%{
	color:#0690fa;
  }
}
@keyframes kf_c01b {
  50%{
    left: 0%; right: 0%;
  }
  100%{
    left: 100%; right: 0%;
  }
}
/*slide text anime*/
/*slide text anime02*/

.c04{
	font-size:1.6em;
	line-height:38px;
	position: relative; 
	color: #ef732e; 
	left:8%;
	background: rgb(255, 255, 255, 0.5);;
}
@keyframes kf_c04b {
  100%{
    clip-path: circle(5% at 50% 50%);
  }
}
/*slide text anime02*/


/*menu*/



#wrapper{
	position:relative;
	width:100%;
}


.info2 h1{
	margin-left:830px;
	margin-top:90px;
}


#information{
	background:#fff;
	width:100%;
}

#information .article{
	width:75%;
	background:#fff;
	border:1px solid#6b8bd2;
	border-radius:2px;
	padding:5px 40px ;
	margin:10px auto 0;
	height:200px;
	text-align:left;
	line-height:18px;}


#information .articlesecond{
	width:1000px;
	padding:0px ;
	min-height:500px;
	margin:0px auto 0;
	text-align:left;
	line-height:40px;}


#information .privacy{
	width:1000px;
	padding:0px ;
	margin:-20px auto 80px;
	text-align:left;
	line-height:40px;
	text-align:justify;}

#information .privacy h4{
	margin-top:60px;
	font-size:1.25em;
}

#information .privacy .privacyright{
	display:block;
	position:relative;
	margin:50px 0 150px;
	width:100%;
	text-align:right;
	line-height:34px;
}


#information .column .tlcolumn{
	font-weight:normal;
	font-size:1.1em;
	padding:0px 0 0 0;
	color:#1c439a;
}

#information .article .date{
	margin:0 22px;
}
#information .article .more a{
	position:absolute;
	right:115px;
	margin-top:50px;
	font-size:0.85em;
	width:160px;
}


/*accordion*/
#question{
	width:100%;
	margin:90px auto;
	heght:auto;
}

#question h2{	font-family: "Noto Sans JP", sans-serif;
	font-size:1.2em;
	letter-spacing:2px;
	background:#1c439a;
	color:#fff;
	text-align:center;
	width: 100%;
	padding: 11px 0;
	margin: 20px auto 40px;
}

.accordion  {
  margin: 10px auto;
	width:1030px;
}



.accordion_title {
	font-family: "Noto Sans JP", sans-serif;
	font-size:1.1em;
  position: relative;
  border: none;
	border-radius:15px;
  display: block;
  list-style: none;
	color:#fff;
  width: 95%;
  cursor: pointer;
  background: #1c439a;
  padding: 1.4em 1.6em 1.4em;
  line-height: 1.6em;
}




summary.accordion_title::-webkit-details-marker {
  display:none;
}

.accordion_title:after {
  content: "+";
  position: absolute;
  top: calc(50% - 0.5em);
  right: 20px;
  line-height: 1;
  padding: 0;
  pointer-events: none;
}

.accordion::details-content {
  opacity: 0;
  block-size: 0;
  transition: .3s;
  transition-property: display, opacity, block-size, padding;
  transition-behavior: allow-discrete;
  line-height: 1.6em;
  background: #ffffff;
	padding:0 30px;
}

.accordion .accordion_content {
  padding: 0 1.4em;
}

.accordion .accordion_content > *:first-of-type {
  margin-top: 0;
}

.accordion .accordion_content > *:last-of-type {
  margin-bottom: 0;
}

.accordion[open]::details-content {
  opacity: 1;
  block-size: auto;
  block-size: calc-size(auto, size);
}

.accordion[open] .accordion_content {
  padding: 1.4em;
}

.accordion[open] .accordion_title:after {
  content: "-";
}

/*accordion*/

/*機能一覧*/
#function{
	width:100%;
	height:auto;
	margin:10px 0 10px;
	text-align:center;
	background:#f9fafc;
	padding-bottom:120px;
	margin-bottom:-60px;
}
#function .iconsp{
	display:none;
}

#function h4{
	font-size:0.75em;
	color:#666;
	margin:-60px 0 0;
}
#function .btn-mouseover{
	text-align:center;
	margin:10px auto 0px;
}

#function .btn-mouseover img{
	width:90px;
	height:90px;}

#function span{
	text-align:center;
    margin: 40px;
	font-size:0.9em;
	line-height:2px;
}

#function b{
	font-size:1.2em;
	display:block;
	line-height:33px;
	font-weight:500;
}

#function span p{
	line-height:18px;}

#function #iconall{
	margin:0px auto 0px;
	display:flex;
    justify-content: space-between;
	flex-wrap: wrap;
	width:1260px;
}

#function #iconall div {
  width: calc(25% - 22px); /* margin padding分を引く */
  margin: 60px 0 0 ;
  padding: 0px;
	height:120px;
}
#function #iconall02{
	margin:270px auto;
	padding:120px 0 0px;
	display:flex;
    justify-content: space-between;
	flex-wrap: wrap;
	width:1250px;}

#function #iconall03{
	margin-top:-400px;
}

#function .mouseover__conts{
	cursor: default;
	width:180px;
	z-index:99;
	}


#function h2, #features h2, #casestudy h2, #price h2, #faq h2, #column h2, #solution h2, #information h2, #company h2, #sample h2, #pagewaku h2, #case h2, #casewaku h2, #form h2{
	font-weight: bold;
	margin: 60px auto 110px;
	font-size:2.6em;
	color:#1c439a;
  padding: 1.0em 0 0;
  position: relative;
	text-align:center;vertical-align: sub;
}

#solution h2, #features h2{
	margin-left: 110px;}

#solution h2{
	margin: 60px 0 50px 110px;}
.bpmbig{
	font-size:1.18em;
	margin:-6px 0px 0 -115px;position: absolute;
}

#price{
	padding-top:100px;
}


.second{
	margin-top:150px;
}

#pagewaku h2{
	margin: 60px auto 90px;
	padding: 11px 0;
	}



/*Function rollOver*/
.link h2{margin:0 0 20px 0;}
.mouseover__conts{
  position: relative;
}
.mouseover__conts{
cursor: pointer;
}
.btn-mouseover:hover + .mouseover__box{
  display: block;
}

.mouseover__box:hover{
  display: block;
}
.mouseover__box{
  display: none;
  position: absolute;
  top:-335px;
	left:-110px;
	width:auto;
  max-width: 500px;
  padding: 15px;
  font-size: 13px;
	background-color: rgb(255 255 255 / 70%);
  border: 1px solid #ccc;
  box-sizing: border-box;
	z-index:2;
}

.boxright{
	left:-110px;
}
.mouseover__box img{
	height:230px;
	width:auto;
}

.mouseover__conts02{
	display:flex;
  position: relative;
	padding-left:245px;
}
.mouseover__conts02{
cursor:default;
}

.btn-mouseover{
	z-index:3;
}

.mouseover__conts02 .mouseover__box{
  display: inline;
  position: absolute;
  top:-275px;
	left:-45px;
	width:auto;
	height:330px;
  font-size: 13px;
	background-color: rgb(255 255 255 / 100%);
  border: 0px solid #ccc;
text-align:left;
  box-sizing: border-box;
	z-index:2;
}

.mouseover__conts02 .mouseover__box .boxtext{
	position:absolute;
	bottom:15px;
}

.mouseover__conts02 .mouseover__box.boxgraf02{
	left:-65px;
}
.mouseover__conts02 .mouseover__box.boxgraf03{
	left:-70px;
}

.mouseover__conts02 .boxleft{
  top:-250px;
	left:-100px;
}

.mouseover__conts02 .boxright{
  top:-250px;
	left:-140px;
}

.mouseover__conts02 img{
	width:auto;
	height:auto;
}

.tes{
	z-index:-9999;
}

.boxgraf{
  top:-245px;
	left:-40px;
}

.mouseover__box img{
	width:330px;
}

.btn-mouseover p img{
	z-index:999;}
/*Function rollOver*/

/*solution*/
#solution{
	margin-bottom:120px;
	background:#f9fafc;
	padding-bottom:230px;
	margin-bottom:-120px
}
#solution h1{
	text-align:center;
	margin:0 0 40px;
	text-align:center;
	font-size:1.4em;
	color:#5179f3;
font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
}
#solution .mainh1{
	margin:0 0 110px;
	font-size:1.9em;
	letter-spacing:2px;
	color:#3376c0;
	display:flex;
	justify-content: center;
	align-items: center;
}
#solution .mainh1::before,
#solution .mainh1::after {
	content: '';
	width: 70px;
	height: 5px;
	background-color: #fcb66e;
}

#solution .mainh1::before {
	margin-right: 20px;
}
#solution .mainh1::after {
	margin-left: 20px;
}

#solution .sub{
	margin:-70px  0 0px -61px;
	text-align:center;
	position:absolute;
	font-size:1.7em;
	color:#fff;
	font-weight:thin;
	width:290px;
	border-radius:2px;
	padding: 12px 0.4em;
  z-index: 11;
}

#solution .sub::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #3376c0;
  transform: skew(-20deg);
  z-index: -1;
}

#solution .sub::after {
  content: '';
  position: absolute;
  border-left: 20px double #fff;
  height: 100%;
  top: 0;
  right: 20px;
  transform: skew(-20deg);
}

#solution .solblock{
	background:#fff;
	line-height:38px;
	text-align:left;
	border:1px solid#a7afc3;
	border-radius:1px;
	padding:50px 50px 0;
	margin:70px auto 0;
	width:90%;
	max-width:1100px;
	box-shadow: 0 1px 4px 0 rgba(189, 193, 197, .8);
	font-size:1.3em;
}

#solution .solblock h3{
	font-size:1.55em;
	line-height:52px;
	color:#333;
}
#solution .solblockin{
	display:flex;
    justify-content: space-between;
}

#solution .soltextblock{
	margin:10px 0 0;
	width:57%;
}

#solution h3{
	color:#3376c0;
	font-size:1.6em;
	font-weight:bold;
	text-align:center;
	line-height:44px;
	margin:30px 0 30px;
	text-align: left;font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
}
#solution .solblock span{
	font-size:1.15em;
}
#solution .soltext{
	margin:20px 0;
	color:#333;
	font-size:0.83em;
	width:100%;
	line-height:31px;
}


#solution .soltextblock .solmore{
	font-size:0.9em;
	position:relative;
	top:20px;
}

#solution .solblock img{
	width:260px;
	height:80%;
	margin:30px 50px 30px;
}

#solution01, #solution02, #solution03{
	padding:0px 0 50px;
}
#solution01 .solblock, #solution02 .solblock, #solution03 .solblock{
	padding-bottom:60px;
}

#solution01 h3, #solution02 h3, #solution03 h3{
	text-align:left;
	margin-top:20px;
	font-size:1.5em;
}

#solflex{
	width:1010px;
	display:flex;
  justify-content: space-between;
  gap: 140px;
	margin:0px auto 40px;
	text-align:center;
	line-height:38px;
	text-align:left;
	text-align:justify;
	color:#333;
}


#solution h4{
	color:#4667cc;
	font-size:1.1em;
	margin:40px 0 20px;
	padding-left:12px;
    background: linear-gradient(to right, #edf3fc 0%, #c9ddfd 100%);
    background-repeat: no-repeat;
    background-position: left bottom;
    background-size: 100% 50%;
	width:70%;
}



/*特徴*/
#features{
	margin:-160px 0 170px;
}

#features h1{
	line-height:44px;
}

#features h1 p{
	display:none;
}

#featureswaku{
	background:#fff;
	width:1195px;
	padding:1px;
	margin:0 auto 50px;
/*
	border:1px solid#88a1bd;
	box-shadow: 1px 2px 2px 0 rgba(189, 193, 197, .7);*/
}

#featuresflex{
	margin:0px 0 0px;
	background:#fff;
	padding:35px 20px 15px;
	display:flex;
  justify-content: space-between;
  gap: 40px;
	text-align:center;
	line-height:38px;
	text-align:left;
	text-align:justify;
	color:#333;
}

#featuresflex h2{position:relative;
 padding:2px 20px 2px 40px;
 background:#DEEBF7;
 border-bottom:solid 3px #3070b7;
	font-size:1.2em;
	width:220px;
	margin:20px 0 30px;
}

#featuresflex h2::before{
 position:absolute;
 content:'';
 left:-2px;
 top:-2px;
 width:0;
 height:0;
 border:none;
 border-left:solid 40px white;
 border-bottom:solid 80px transparent;
}



#featuresflex h3{
	color:#333;
	margin:10px 0 20px;
	font-size:1.67em;
	font-weight:bold;
}

#featuresflex img{
	width:400px;
	height:auto;
}

#featuresflex .featurestext{
	font-size:1.14em;
	text-align:justify;
	color:#666;
}

#featuresflex .featurestext h2{
	background:#1c439a;
	color:#fff;
}

#features .featuresimg{
	text-align:left;
	padding:50px 0px 30px;
	line-height:26px;
}

#features .featuresimg p{
	padding:5px 10px;
	margin:0 0 20px;
	font-size:0.95em;
	border:1px dotted#ccc;
}

#features .featuresimg img{
	width:320px;
	height:auto;
}

#features .text{
	text-align:center;
	font-weight:normal;
	font-size:0.9em;
}
#features .three{
	display:flex;
	justify-content: center; 
}
#features h1{
	text-align:center;
	font-size:1.7em;
	color:#5179f3;
font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
	text-align:center;
	margin:-40px 0 40px;
}

#features .t20{
	margin:0 8px;
	font-size:1.3em;
}

/*
#features h3{
	font-family: "Noto Sans JP", sans-serif;
	color:#1c439a;
	width:270px;
	height:270px;
	margin:0 20px 60px;
	border-radius:180px;
	border: 0px solid#1c439a;
background:radial-gradient(#98baf4, #fff);
box-shadow: 0 10px 25px 0 rgba(27, 67, 154, .1);
	line-height:28px;
}
#features .text{
	font-size:0.9em;
	width:200px;
	margin:30px auto;
	width:180px;
	line-height:33px;
}

#features .text p{
	color:#333;
}

#features .text span{
	font-size:1.3em;
}
*/


/*会社概要*/
#company .copy{
  font-family: "Noto Sans JP", sans-serif;
	margin:30px auto 0;
	width:1020px;
	line-height:33px;
}

#company .consult{
  font-family: "Noto Sans JP", sans-serif;
	margin:30px auto 0;
	width:1020px;
	font-size:1.2em;
	line-height:42px;
}

 #company .companymainpic{
	text-align:center;
	background-image:url(../images/company.jpg);
  background-repeat:  no-repeat;                         /* 画像の繰り返しを指定  */              
    background-position:center center;  
  background-size: 100% auto;    
	height:300px;
}

#company h2{
	margin:0 0 10px;
}

#company .crmlogo{
	margin:0 auto 100px;
	width:100px;
	height:auto;
}



#company table td{
	padding:12px;
	line-height:28px;
	vertical-align:top;
	width:65%;
}

#company .right{
	text-align:right;
	width:35%;
}


#company .copy{
	margin:-40px auto 90px;
	font-weight:normal;
	text-align:center;
	font-size:2.1em;
	line-height:46px;
  font-family: "Noto Sans JP", sans-serif;}

#company .copy span{
	margin-left:25px;
}

#company table{
  font-family: "Noto Sans JP", sans-serif;
	margin:30px auto 0;
	width:900px;
	line-height:33px;
	font-size:1.1em;
} 

#company .detail h3{
	width:900px;
	margin:110px auto 0;
	font-weight:normal;
	font-size:1.3em;
	text-align:left;
  font-family: "Noto Sans JP", sans-serif;}

#company .copy, .consult{
  font-family: "Noto Serif JP", serif;}

#form{
	width:1020px;
	margin:120px auto 0;
}

/*コラム*/
#column{
	font-size:1.07em;
}

#column .columnsp{
	display:none;
}

#column .swiper-slide a:hover{
	text-decoration:none;
}


#column .swiper-custom-parent {
	width:1200px;
	height:320px;
	margin:30px auto 160px;
	text-align:center;
	padding-left:20px;}

#column .swiper-slide .titlesub img{
	width:260px;
	height:auto;}

#column .columnarticle{
	line-height:32px;
	margin-top:15px;
	font-size:0.8em;
	padding:10px;
	width:335px;
	height:245px;
	border:1px solid#ccc;
	text-align:left;

    white-space: nowrap; /* 横幅のMAXに達しても改行しない */
    overflow: hidden; /* 溢れた部分を隠す */
    text-overflow: ellipsis; /* 「…」と省略 */
    -webkit-text-overflow: ellipsis; /* Safari用 */
    -o-text-overflow: ellipsis; /* Opera用 */}



#column .titlesub{
	font-family: "Noto Sans JP", sans-serif;
	padding:0 0 20px;
	color:#1c439a;
	margin:0px 0 50px;
	text-align:center;
	font-size:1.1em;
	line-height:2px;

    white-space: nowrap; /* 横幅のMAXに達しても改行しない */
    overflow: hidden; /* 溢れた部分を隠す */
    text-overflow: ellipsis; /* 「…」と省略 */
    -webkit-text-overflow: ellipsis; /* Safari用 */
    -o-text-overflow: ellipsis; /* Opera用 */
}

}

#column .titlesub a{
	color:#0b45a7;}

#column .second .article{
  font-family: "Noto Sans JP", sans-serif;
	text-align:justify;
	color:#333;
	height:100%;
	width:730px;
	margin:10px auto 220px;
	line-height:42px;
	font-size:1.1em;
}
#column .second .article h1{
	font-size:1.3em;
	color:#333;
	border:1px solid#ddd;
	padding:20px;
	margin:20px 0 50px;
}
#column .second .article h3{
	background:#e0e5fa;
	border-left:5px solid#7691f5;
	padding-left:15px;
	margin:60px 0 40px;
	font-weight:normal;
}

#column .second .article h4{
	margin:80px auto 40px;
	color:#333;
	text-align:center;
	font-size:1.6em;
}

#column .second .article .matome{
	border:1px solid#ddd;
	margin-top:60px;
	padding:20px;
}


#column .second .article .matome h4{
	margin:30px auto 60px;}

#column .second .article archive{
	font-size:0.9em;}


#column .second .article  u{
background: linear-gradient(transparent 50%, #f8fba1 50%);
	text-decoration: none;
	}
/*ケース*/
#casestudy{
	background:#f9fafc;
	padding-bottom:120px;
	margin-bottom:-170px;
}
#casestudy .swiper-custom-parent {
	width:1200px;
	height:320px;
	margin:30px auto 160px;
	text-align:center;
	padding-left:20px;}

#casestudy .swiper-slide .titlesub img{
	height:280px;
	width:auto;}

.titlesub{
	font-family: "Noto Sans JP", sans-serif;
	padding:0 0 20px;
	color:#1c439a;
	margin:0px 0 50px;
	text-align:center;
	font-size:1.0em;
	line-height:2px;
}

.titlesub a{
	color:#333;}
/*ケースページ*/
#case{
	width:1000px;
	margin:0 auto 90px;
  font-family: "Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
	letter-spacing:0;
	text-align:justify;
	line-height:36px;
}

#case h1{
	padding:2px 0 2px 20px;
	border-left:12px solid #034a54;
	color:#034a54;
}

#case .caseread h2, #case .casecolumn h2{
	font-size:1.7em;
	padding:2px 0 6px;
	margin:60px 0 50px;
	text-align:left;
  border-bottom: 1px dashed #8c8b8b;
}

#case .casearticle h2{
	font-size:1.3em;
	padding:4px 0;
	margin:120px 0 50px;
	border:0px;
}

#case .caseread h2::after, #case .casearticle h2::after, #case .casecolumn h2::after{
  transform: rotate(0deg);
}

.casemainpict{
	display:flex;
	 justify-content:left;
	width:80%;
}

.casemainpict img{
	width:320px;
	height:auto;
}


#case .casearticle b, #case .casearticle strong{
	font-size:1.15em;
	line-height:42px;
	padding:0 10px 0 0;
	text-align:left;
	margin-left:-10px;
	color:#1c439a;
	font-weight:bold;
}

#case .casearticle h2{
	background:#45b035;
	color:#fff;
	margin-left:-25px;
	padding-right:30px;
}

#case u{
background: linear-gradient(transparent 50%, #f8fba1 50%);
	text-decoration: none;
	}
	
#case .casenav{
	margin:110px auto 0;
    display: flex;
    justify-content: space-between;
	width:60%;
	text-align:center;
}

#case .casenav span{
}
/*ケースページ*/

/*price*/
#price{
	margin:0 0 110px; 
}

#price table{
	margin:0 auto 20px; 
	width:60%;
}
#price td{
	padding:22px 50px;
	text-align:left;
	font-size:1.3em;
	background:#f4f6f9;
}
#price .blue{
	background:#1c439a;
	color:#fff;
	text-align:center;
}

#price .small{
	font-size:0.7em;
}
	
/*FAQ*/
#faq{
	background:#f9fafc;
	padding-bottom:200px;
	margin-bottom:-170px
}

#faq .accordion_title {
	font-size:1.1em;
	border-radius:1px;
	margin:20px auto 0px;
  width: 75%;
  background: #bde7fa;
  padding: 0.15em 0.1em;
	line-height:30px;
}

#faq .accordion::details-content {
	padding:0 60px 20px 180px;
	background:#f9fafc;
}


#faq ul{
	margin: 20px auto ;
	line-height:33px;
	width:80%;
	list-style: none;
}

#faq .answer{
	padding-left:20px;
	font-size:0.95em;
}

#faq .underline{
background: linear-gradient(transparent 50%, #a8eaff 50%);
}

#faq .accordion_contents{
        }
#faq .accordion_contents ol {
          list-style-type: upper-alpha;
          color:#ea9112;
			font-size:1.3em;
	margin-left:-130px;
        }

#faq .accordion_contents ol span{
		color: #333;
		font-size:0.8em;
        }

#faq  .accordion_title{
  counter-reset: my-counter 16; 
	color:#126085;
	font-size:1.3em;
	width:1020px;
}

#faq  .accordion_title span{
	font-size:0.8em;
	color:#1c439a;
}
#faq .accordion_title ol{
	margin-left:-20px;
	width:85%;}
#faq .accordion_title ol li{
      list-style: none;

}
#faq .accordion_title ol li::before {
  content: counter(my-counter, upper-alpha); /* 大文字アルファベットに変換して表示 */
  counter-increment: my-counter; /* 次のリストのためにカウンタをインクリメント */
  margin-right: 0.8em; /* マーカーとテキストの間にスペースを設ける */
	padding:6px 16px 12px;
background:#1c439a;
	border-radius:24px;
	color:#fff;
}

/*more*/

/*more
.more:hover, 
.more:focus {
   animation-duration: 1s; 
   animation-name: pulse; 
}*/


.more{
	position:absolute;
	right:20px;
	margin-top:20px;
}
.more02{
	position:relative;
	margin-top:40px;
	width:90%;
	text-align:right;
}

span .marker {
    background: linear-gradient(transparent 50%, #FFF56E 50%);
}
/*LP*/


#bpmlp,#sample, #pagewaku{
}

#bpmlp .bpmlpimg{
	margin: 80px auto 40px;
	text-align:center;
	width:340px;
}
#bpmlp .lp01img{
	width:840px;
}

#bpmlp .lp01bimg{
	margin: 0px auto 140px;
	width:650px;
}

#bpmlp .lp03img{
	margin: 90px auto 0px;
	width:820px;
}

#bpmlp .bpmlptextflex{
	width:980px;
	display:flex;
	justify-content: space-between;
    padding: 5px;
	margin:0 auto;
}
#bpmlp .bpmlptext{
	font-size:1.1em;
	text-align:left;
	line-height:40px;
	width:60%;
	margin: 80px auto 30px;
	display:flex;
	justify-content:center;
}

#bpmlp .bpmlptext01{
	font-size:1.1em;
	text-align:left;
	line-height:40px;
	width:540px;
	margin: 80px auto 30px;
	text-align:justify;
	padding-right:30px;
}

#bpmlp .bpmlptext02{
	font-size:1.1em;
	text-align:left;
	line-height:40px;
	width:510px;
	margin: 80px auto 130px;
	text-align:justify;
	background:#e9fafc;
	border:1px solid#d6f5fa;
	padding:20px;
}

#bpmlp .bpmlptext03{
	font-size:0.95em;
	text-align:left;
	line-height:32px;
	width:980px;
	margin: 20px auto 180px;
	display:flex;
	justify-content:space-between;
}

#bpmlp .bpmlptext04{
	text-align:left;
	line-height:32px;
	width:920px;
	padding-left:130px;
	margin: 40px auto 80px;
}

#bpmlp .bpmlptext03 .manage01, .manage02, .manage03{
	width:33%;
	margin:0 15px;
	border:1px dotted#89b8bf;
	border-radius:10px;
	padding:10px 10px 15px;
}

#bpmlp .bpmlptext03 .managetl{
	font-size:1.1em;
	background:#e9fafc;
	padding:5px 8px 5px 20px;
	border-radius:10px;
	margin:0 0 10px;
	border-bottom:2px solid#ccc;
}

#bpmlp .bpmlptext .textbefore, .textafter{
	background:#f3faf0;
	width:350px;
	padding:20px;
	margin:0 20px;
	}
.textafter{
	background:#faf2e1;
}

#bpmlp u{
    background: linear-gradient(transparent 50%, #FFF56E 50%);
	text-decoration:none;
}

#bpmlp .bpmlptext span{
	font-weight:bold;
	color:#25abf8;}


#bpmlp h2 {
  position: relative;
  padding: 0.8rem 2rem;
  text-align: center;
  color: #0075a9;
  border-radius: 0px;
  background: #d8ecf5;
  font-size: 1.65em;
	margin:0 auto;
}

#bpmlp h2:after {
  font-family: 'Font Awesome 5 Free';
  font-size: 0.7em;
  position: absolute;
  top: -30px;
left:12%;
  height: 40px;
	width:80px;
  padding: 1.8em 0.5em 1.6em .5em; 
  content: 'POINT 01 \f0a4';
  color: #fff;
  border-radius:  80px;
  background: #0075a9;
}

#bpmlp .lp02tl:after{
  content: 'POINT 02 \f0a4';
}
#bpmlp .lp03tl:after{
  content: 'POINT 03 \f0a4';
}


#bpmlp .lp02tl br{
	display:none;
}

#bpmlp .lp03tl{
}

#bpmlp .lp03tl br{
	display:none;
}
#bpmlp .h2span{
	font-size:0.7em;
	color:#333;
	font-weight:600;
	margin-left:40px;
}

#bpmlp .fukidashi{
	margin:110px 0 0 -120px;
	text-align:center;
}

#bpmlp .marker01{
	font-size:2.05em;
	margin:0px 0 0;
}
#bpmlp .marker02{
	font-size:1.65em;
	margin:0px 0 0;
}
#bpmlp .marker03{
	font-size:1.75em;
	margin:0px 0 0;
}

#bpmlp .marker03 br{
	display:none;
}

#bpmlp h3 {
  position: relative;
  padding-left: 4em;
	font-size:1.3em;
	margin:50px auto;
}

#bpmlp h3 .fuki{
	text-align:center;
	position:absolute;
	font-size:1.1em;
	font-weight:400;
	color:#fff;
	margin-top:-10px;
	width:220px;
	border-radius:2px;
	padding: 8px 0.5em;
  z-index: 11;
	margin-top:0px;
}

#bpmlp h3 .second{
	margin:0 auto;
}

#bpmlp h3 .fuki::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #e26a19;
  transform: skew(-20deg);
  z-index: -1;
}

#bpmlp h3 .fuki::after {
  content: '';
  position: absolute;
  border-left: 20px double #fff;
  height: 100%;
  top: 0;
  right: 20px;
  transform: skew(-20deg);
}

.textbefore h4{
	color:#23a664;
}

.textafter h4{
	color:#e26a19;
}

.bpmlptext h4 {
	margin-top:-5px;
  position: relative;
	font-size:1.2em;
  padding: 0 1rem .5rem;
}

.bpmlptext h4:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 5px;
  content: '';
  background-image: -webkit-repeating-linear-gradient(135deg, #e26a19, #e26a19 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, #e26a19, #e26a19 1px, transparent 2px, transparent 5px);
  background-size: 7px 7px;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.bpmlptext .textbefore h4:after {
  background-image: -webkit-repeating-linear-gradient(135deg, #23a664, #23a664 1px, transparent 2px, transparent 5px);
  background-image: repeating-linear-gradient(-45deg, #23a664, #23a664 1px, transparent 2px, transparent 5px);
}
/*
#bpmlp h3 .fuki {
  position: absolute;
	margin-left:-160px;
  padding: 5px 1rem;
  color: #e3f5d8;
  background: #0075a9;
  border-radius: 15px;
	font-size:0.9em;
}

#bpmlp h3 .fuki:after {
  position: absolute;
  top: calc(50% - 7px);
  right: -10px;
  width: 0;
  height: 0;
  content: '';
  border-width: 7px 0 7px 12px;
  border-style: solid;
  border-color: transparent transparent transparent #0075a9;
}
*/

/*LP*/


/*page top*/
#page-top {
	background-image:url('../images/topbtn.svg?0808');
	background-repeat:no-repeat;
	background-size:60x;
	width:60px;
	height:60px;
    	position: fixed;
    	bottom: 48px;
    	right: 8%;
	filter:alpha(opacity=90);
	-moz-opacity: 0.9;
	opacity: 0.9;
	z-index:999;
}



/*footer*/
footer{
	margin-top:120px;
	background: #1c439a;
	height:150px;
	width:100%;
}

footer .logo a{
	width:170px;
	height:auto;
	padding:10px 10px 0px 30px;
}

.footermenu{
	padding:10px;
  display : flex;
  justify-content:flex-start;
  flex-wrap : wrap;
align-items:center;
	width:90%;
	font-size:0.98em;
}

.footermenu a{
	color:#fff;
	padding:10px 10px 0;
	font-size:0.95em;
}
/*SPfooter*/
.menusp {
	display:none;
}
/*SPfooter*/





/*1305px*/
@media only screen and (max-width: 1305px) {
#head .menu a{
	padding:0 17px;
}

#head .copytext{
	right:380px;
}
}
/*1305px*/


/*1230px*/
@media only screen and (max-width: 1230px) {
#head .menu a{
	padding:0 11px;
}

#head .copytext{
	right:300px;
}
}
/*1230px*/



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


#head .menu .home{
	display:none;
}
#head .menu{
	margin-top:85px;
	left:0px;
justify-content: space-around;
	height:35px;
	background:#fff;
}

.menu a{
	padding:0 5px;
}

#head .copytext{
	right:0px;
	left:-50px;
	text-align:left;
}
}
/*1140px*/


/*1035px*/
@media only screen and (max-width: 1045px) {
.fuki{
	left:5px;
}

#bpmlp h2:after {
	left:5px;
}

}
/*1035px*/


/*1024px*/
@media only screen and (max-width: 1024px) {
#featureswaku{
	width:99%;
}

#function #iconall,#function,#iconall02{
	width:99%;
}


#bpmlp .bpmlptext{
	width:99%;
}
#solution{
	width:100%;}
#solution .solblock{
	width:89%;
	max-width:89%;}
#solflex{
	width:99%;
}
#featureswaku{
	width:99%;}

#company table{
	width:99%;}

#company .detail h3{
	width:99%;}
#column .swiper-custom-parent {
	width:99%;}

#casestudy .swiper-custom-parent {
	width:99%;}

#faq .accordion{
	width:99%;}
#faq  .accordion_title{
	width:89%;
}
.footermenu{
	width:98%;
}

}
/*1024px*/


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

}
/*955px*/



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


.menu a{
	padding:0 2px;
	font-size:0.99em;
}

#column .swiper-custom-parent{
	display:none;
}

#column .columnsp{
	display:inline;
}

#column .columnsp .columnarticle{
	text-align:center;
	margin:0 auto;
}
}
/*845px*/




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

}
/*810px*/