@charset "utf-8";

/* --メインイメージ-------------------------- */
.sensing_main{
	position: relative;
	margin: 0 auto;
	height: 660px;
}
.sensing_main_img{
	position: absolute;
	margin: 30px auto;
    width: 1180px;
}
.sensing_text{
	color: #FFF;
	margin: 0 auto;
	box-sizing: border-box;
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN",
        "Hiragino Sans", "Noto Sans", Meiryo, sans-serif;
}
.sensing_logo{
    position: absolute;
    bottom: 35px;
    right: 25px;
    width: 388px;
}
.title {
  color: rgb(0, 0, 0);
  font-weight: bold;
}
.text {
  color: rgb(0, 0, 0);
}
.about .text{
  font-size: 24px;
  line-height: 2;
  text-align: left;
  margin-left: 50px;
}
@media (max-width:767px){
  .about .text{
    margin-left: 2%;
    margin-right: 2%;
    font-size: 16px;
  }
}
.space{
  margin-top: 50px;
  margin-bottom: 80px;
}
.oTxtList {
    font-size: 1.8rem;
    margin-bottom: 30px;
    text-align: center;
}
.oTxtList .product_name{
    font-size: 2.6rem;
    font-weight: bold;
}
.img_protocol{
	position: relative;
	margin-top: 10px;
    width: 1120px;
    margin-left: 75px;
}
.img_protocol img {
  display: block;
}
@media (max-width:767px){
    .img_protocol{
        position: relative;
        margin-top: 10px;
        margin-left: 5%;
        margin-right: 5%;
        width: 90%;
        text-align: center;
    }
}
.img_text_step {
  position: absolute;
  top: 177px;
  color: rgb(255, 255, 255);
  font-size: 14px;
  font-weight: bold;
  background: #00b0ec;
  padding: 0px 7px;
}
.img_protocol .title {
  position: absolute;
  top: 174px;
  font-size: 17px;
}
.img_protocol .text {
  position: absolute;
  top: 215px;
  font-size: 13px;
}
.img_protocol .step1 .title {
    left: 260px;
}
.img_protocol .step1 .text {
    left: 200px;
}
.img_protocol .step2 .title {
    left: 580px;
}
.img_protocol .step2 p {
    left: 520px;
}
.img_protocol .step3 .title {
    left: 900px;
}
.img_protocol .step3 p {
    left: 840px;
}
.features{
  width: 1030px;
}
.feature{
	position: relative;
	margin-top: 10px;
    width: 1030px;
    height: 400px;
}
.features .feature_img img {
  position: absolute;
  display: block;
  width: 500px;
  height: auto;
}
.right_feature{
  position: absolute;
  left: 600px;
}
.left_feature{
  position: absolute;
  left: 30px;
}
.feature .text_area{
  position: absolute;
  top: 20px;
  width: 580px;
  height: 380px;
}
.feature .right_img img{
  left: 580px;
}
.feature .left_img img{
  left: 10px;
}
.features .check img{
  position: absolute;
  width:23px;
  top: 75px;
}
.features .check .check02 img{
  top: 214px;
}
.features .title {
  position: absolute;
  color: rgb(0, 0, 0);
  font-size: 24px;
  font-weight: bold;
}
.features .text {
  position: absolute;
  top: 70px;
  left: 40px;
  color: rgb(0, 0, 0);
  font-size: 20px;
  line-height: 1.9;
  width: 490px;
}
.feature .text02 p{
  top: 210px;
}
@media (max-width:767px){
  .features{
	position: relative;
	margin-top: 10px;
    width: 90%;
    height: auto;
  }
  .feature{
    margin-bottom: 50px;
  }
  .features .feature_img img {
    position: relative;
    display: block;
    width: 80%;
    height: auto;
    transform: translateX(-50%);
    left: 50%;
  }
  .feature .feature_img img{
    left: 50%;
    transform: translateX(-50%);
    margin-top: 50px;
  }
  .features .text,
  .features .title {
    position: relative;
    width: 90%;
    left: 0px;
    top: 0px;
  }
  .feature .text{
    left: 27px;
    margin-top: 7px;
    font-size: 16px;
  }
  .feature .title{
    font-size: 20px;
  }
  .features .check img{
    width:20px;
    top: 5px;
  }
  .feature{
    position: relative;
    margin-top: 10px;
    width: 100%;
    height: auto;
  }
  .right_feature{
    position: relative;
    left: 0px;
  }
  .left_feature{
    position: relative;
    left: 0px;
  }
  .feature .text_area{
    position: relative;
    top: 20px;
    width: 90%;
    height: auto;
  }
  .features .check .check02 img{
    position: relative;
    top: 25px;
  }
  .feature .text02 p{
    position: relative;
    margin-top: 0px;
    top: 0px;
  }
  .feature .contents{
    position: relative;
    margin-top: 25px;
  }
}
.mainFeatures{
	position: relative;
	margin-top: 10px;
    width: 1030px;
    height: 400px;
}
.mainFeatures .text{
  position: absolute;
  top: 20px;
  width: 580px;
  font-size: 22px;
  line-height: 1.9;
}
.mainFeatures .rightText{
  left: 600px;
}
.mainFeatures .leftText{
  left: 65px;
}
.mainFeatures .br-sp{
  display: none;
}
@media (max-width:767px){
  .mainFeatures{
	  margin-top: 10px;
    width: 90%;
    height: auto;
  }
  .mainFeatures .text{
    position: relative;
    width: 85%;
    font-size: 16px;
    left: 35px;
  }
    @media (max-width:450px){
      .mainFeatures .br-sp{
        display: block;
      }
  }
}
.example{
  position: relative;
  margin-left: 3%;
  margin-right: 3%;
}
.example .step {
  position: relative;
  margin-top: 10px;
  width: 1080px;
  height: 260px;
  margin-left: 40px;
}
.example .example_number {
  position: absolute;
  width: 230px;
}

.example .example_img img {
  position: absolute;
  right: 0px;
  width: 300px;
}
.example .step p{
  position: absolute;
  left: 260px;
}
.example .title{
  position: absolute;
  font-size: 24px;
}
.example .text{
  position: absolute;
  top: 48px;
  font-size: 20px;
  margin-bottom: 50px;
}
.example .step .triangle img {
    position: absolute;
    left: 50%;
    top: 200px;
    transform: translateX(-50%);
    width: 50px;
}
.example .subText {
    font-size: 20px;
}
@media (max-width:767px){
    .example{
      margin-left: 0%;
      margin-right: 0%;
      width: 100%;
    }
    .example .step {
        position: relative;
        margin: 10px auto 70px auto;
        width: 70%;
        height: auto;
    }
    .example .example_number {
        position: absolute;
        width: 40%;
        opacity: 30%;
        right: 0%;
        margin-top: 4%;
    }
    .example .example_img img{
        position: relative;
        width: 100%;
        top: 10px;
        margin: 0 auto;
      }
    .example .step p{
        position: relative;
        left: 0%;
    }
    .example .title{
        position: relative;
        top: 15px;
        font-size: 20px;
    }
    .example .text{
        position: relative;
        top: 30px;
        font-size: 16px;

    }
    .example .step .triangle {
        position: relative;
        left: 50%;
        transform: translateX(-50%);
        top: 50px;
    }
    .example .step .triangle img {
        position: relative;
        left: 50%;
        transform: translateX(-50%);
        width: 50px;
        top: 5px;
    }
    .example h3{
        margin-right: 5%;
        margin-left: 5%;
    }
    .example .subText {
        margin-right: 5%;
        margin-left: 5%;
        font-size: 18px;
    }
    .br-pc{
        display: none;
    }
    @media (min-width:646px){
      .example .step .no03 {
        height: 104.7px;
      }
    }
}
.sensing_text_01{    /*AttCAST有ver*/
    position: absolute;
    bottom: 100px;
    right: 40px;
    font-size: 3rem;
    font-weight: 500;
}
.sensing_text_02{    /*AttCAST有ver*/
    position: absolute;
    display: block;
    top: 40px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 4rem;
    font-weight: 500;
    white-space: nowrap; /* 折り返さないように */
}
.sensing_text_02 span{
    background: #00b0ec;
    padding: 5px 8px;
}
.sensing_text_02 span.no1{
    margin-left: 10px;
    margin-right: 12px;
}
.sensing_text_02 span.no2{
    margin-right: 12px;
}
@media  (max-width: 767px){
	.sensing_main{
		position: relative;
		height: auto;
	}
	.sensing_main_img{
		width:100%;
		position:static;
	}
	.sensing_text{
		position:absolute;
		left:0;
		top:5%;
		margin:0;
		padding:0;
		width:100%;
		height:100%;
		flex-wrap:wrap;
		align-content:center;
		padding: 6vw 0 0 37vw;
	}
	.sensing_text_01,
	.sensing_text_02{
		width:100%;
	}
	.sensing_text_01{
		font-size: 6.1vw;
	}
	.sensing_text_02{
		font-size: 4.8vw;
	}
}

.note{
    margin-top:0!important;
}

.oImg1080{
    display: block;
    width: 1080px;
    height: auto;
}
@media  (max-width: 767px){
    .oImg1080{
        width: 95%;
    }
}

.oImg1000{
    display: block;
    width: 1000px;
    height: auto;
}
@media  (max-width: 767px){
    .oImg1000{
        width: 95%;
    }
}

.oHd03 {
    max-width: 100%;
    font-size: 2rem;
    font-weight: bold;
    color: #FFF;
    text-align: center;
    margin-top: 60px;
    padding: 15px 0;
    background: #333;
}

.guruguru1{
    position: absolute;
    top: -10px;
    right: 0;
    left: 146px;
    bottom: 0px;
    width: 75px;
    height: 70px;
}
.guruguru2{
    position: absolute;
    top: -10px;
    right: 0;
    left: 538px;
    bottom: 0;
    width: 75px;
    height: 70px;
}
.guruguru3{
    position: absolute;
    top: -10px;
    right: 0;
    left: 924px;
    bottom: 0;
    width: 75px;
    height: 70px;
}
@media  (max-width: 767px){
    .guruguru1{
        position: absolute;
        top: 3vw;
        right: 0;
        left: 38vw;
        bottom: 0px;
        width: 75px;
        height: 70px;
    }
    .guruguru2{
        position: absolute;
        top: 72vw;
        right: 0;
        left: 38vw;
        bottom: 0;
        width: 75px;
        height: 70px;
    }
    .guruguru3{
        position: absolute;
        top: 141vw;
        right: 0;
        left: 38vw;
        bottom: 0;
        width: 75px;
        height: 70px;
    }
}


.arrow-clippath1 {
    position: relative;
    display: inline-block;
    width: 48px;
    height: 45px;
    left: 160px;
    background-color: #333;
    transform: rotate(90deg);
    clip-path: polygon(0 32%, 60% 32%, 60% 0, 100% 50%, 60% 100%, 60% 68%, 0 68%);
}
.effect{
    max-width: 100%;
    font-size: 2rem;
    font-weight: bold;
    color: #444;
    text-align: center;
    padding: 15px 0;
    background: #ccedf9;
}

.oList03 > ul{
    margin-top: 20px;
}
.oList03 > ul > li > p {
    min-height: 0;
}
@media  (max-width: 767px){
    .oList03 > ul > li > p {
        min-height: 0;
    }
}

.txt_deco1{
    font-size: 22px;
    font-weight:600;
    text-align: center;
    margin-top: 30px;
    letter-spacing:0.2em;
}
.txt_deco1 span {
    font-size: 30px;
    padding: 0.2rem;
    margin-bottom: 0.2rem;
    background: linear-gradient(transparent 90%, #00b0ec 90%);
    font-weight: bold;
}
@media  (max-width: 767px){
    .txt_deco1{
        font-size: 4vw;
        font-weight:600;
        text-align: center;
        margin-top: 30px;
        letter-spacing:0.15em;
    }
    .txt_deco1 span {
        font-size: 5vw;
        padding: 0.2rem;
        margin-bottom: 0.2rem;
        background: linear-gradient(transparent 90%, #00b0ec 90%);
        font-weight: bold;
    }
}

#forte{
    position: relative;
    width: 1148px;
}
.patent{
    position: absolute;
    right: 110px;
    top: 76px;
    background: #F2F2F2;
    padding: 8px 10px 12px;
    width: 100px;
    height: 20px;
    text-align: center;
    margin-left: 20px;
}
@media  (max-width: 767px){
    #forte{
        width: 100%;
    }
    .txt_deco2 {
        font-size: 4.5vw;
        letter-spacing:0.15em;
    }
    .txt_deco2 span {
        font-size: 3vw;
    }
    .patent{
        right: 10vw;
        top: 5vw;
        padding: 2vw;
    }
}


.txt_deco3 {
    margin: 30px auto 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 28px;
    color: #00b0ec;
    line-height: 1.2;
    text-align: center;
}
.txt_deco3::before,
.txt_deco3::after {
    content: '';
    display: block;
    width: 70px;
    height: 2px;
    background: #00b0ec;
}
.txt_deco3::before {
    margin-right: .8em;
}
.txt_deco3::after {
    margin-left: .8em;
}

.txt_deco4 {
    margin: 40px auto 0;
    display: flex;
    align-items: center;
    font-size: 26px;
    color: #00b0ec;
    line-height: 1.2;
}
.txt_deco4::before {
    content: '';
    display: block;
    width: 60px;
    height: 2px;
    background: #00b0ec;
}
.txt_deco4::before {
    margin-right: .8em;
}
@media  (max-width: 767px){
    .txt_deco3 {
        margin: 5vw auto 6vw;
        display: flex;
        align-items: center;
        justify-content: center;
        font-size: 4.5vw;
        color: #00b0ec;
        line-height: 1.2;
        text-align: center;
    }
    .txt_deco3::before,
    .txt_deco3::after {
        content: '';
        display: block;
        width: 10vw;
        height: 2px;
        background: #00b0ec;
    }
    .txt_deco3::before {
        margin-right: .8em;
    }
    .txt_deco3::after {
        margin-left: .8em;
    }

    .txt_deco4 {
        margin: 5vw auto 0;
        display: flex;
        align-items: center;
        font-size: 5vw;
        color: #00b0ec;
        line-height: 1.2;
    }
    .txt_deco4::before {
        content: '';
        display: block;
        width: 8vw;
        height: 2px;
        background: #00b0ec;
    }
    .txt_deco4::before {
        margin-right: .8em;
    }
}




/* 2colum
----------------------------------------------- */
.oSet01{
	display:flex;
	justify-content:space-between;
}
.oSet01_box01{
	width:49%;
}
.oSet01_box02{
	width:49%;
}
.oHd02 + .oSet01,
.oSet01 + .oSet01{
	margin-top:20px;
}
.oHd03 + .oSet01{
	margin-top:30px;
}
@media (max-width:767px){
	.oSet01{
		width:93.75%;
		display:block;
	}
	.oSet01_box01,
	.oSet01_box02{
		width:100%;
	}
	.oSet01_box02{
		margin-top:3vw;
		margin-bottom:5.5vw;
	}
	.oHd02 + .oSet01{
		margin-top:3vw;
	}
	.oHd03 + .oSet01{
		margin-top:3vw;
	}
}
.box_left{
    background: #00b0ec;
    padding: 14px 0;
    text-align: center;
    color: #FFF;
    margin-bottom: 15px;
    font-size: 2rem;
    font-weight: 600;
}
.box_left_note{
    margin-top: 10px;
    font-size: 1.8rem;
    font-weight: 600;
    text-align: center;
}
.box_right{
    background: #00b0ec;
    padding: 5px 0;
    text-align: center;
    color: #FFF;
    margin-bottom: 15px;
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.3;
}
.box_right span{
    font-size: 1.6rem;
    font-weight: normal;
}
.box_right_note{
    display: flex;
	justify-content:space-between;
    list-style-type: none;
    margin-top: 10px;
}
.box_right_note li{
    width: 50%;
    text-align: center;
    line-height: 1.3;
    font-size: 1.5rem;
}
.box_right_note li span{
    font-size: 1.8rem;
    font-weight: 600;
}

/* oList03
----------------------------------------------- */
.oList03{
    position: relative;
	max-width:100%;
}
.oList03 > ul{
	list-style-type:none;
	width:100%;
	display:flex;
	flex-wrap:wrap;
	justify-content: flex-start;
}
.oList03 > ul > li{
	width:32%;
	margin-right: 2%;
}
.oList03 > ul > li:last-child{
	margin-right: 0;
}
.oList03_img{
	margin-top:15px;
}
.oList03_link{
	margin-top:14px;
	font-size:1.5rem;
}
.oHd02 + .oList03{
	margin-top:27px;
}

@media (max-width:767px){
	.oList03 > ul > li{
		width:100%;
		margin-top: 1.5em;
	}
	.oList03 > ul > li > p{
		min-height: 0;
	}
	.oList03_img{
		margin-top:1%;
	}
	.oHd02 + .oList03{
		margin-top:3.8vw;
	}
}


.mt10{margin-top: 10px;}
.mt20{margin-top: 20px;}
.mt30{margin-top: 30px;}
.mt40{margin-top: 40px;}
.mt50{margin-top: 50px;}




.tateyamablue{
    color: #00b0ec;
}
.messe{
    text-align: center;
    background-color: #00b0ec;
    width: 700px;
    font-size: 25px;
    color: #FFF;
    padding: 5px;
    margin-top: 30px;
}
@media (max-width:767px){
.messe{
    width: 95%;
    font-size: 5vw;
    margin-top: 3vw;

    }
}


/* --導入の流れ（導入手順）--------------------- */
.areaTrialFlow {
	position: relative;
	text-align: left;
}
.trialFlow {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	-ms-align-items: center;
	align-items: center;
	margin-top: 30px;
}
.trialFlow li {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	width: 180px;
	height: 80px;
	background-color: #465270;
	border-radius: 8px;
	margin-bottom: 20px;
	color: #fff;
	font-weight: 700;
	font-size: 1.8rem;
	text-align: center;
	letter-spacing:2px;
}
.trialFlow li::after {
	position: absolute;
	width: 15px;
	height: 34px;
	top: 0;
	bottom: 0;
	right: -38px;
	margin: auto;
	background-image: url("../img/ic_arrow_trial.svg");
	background-size: 15px;
	background-repeat: no-repeat;
	content: "";
}
.trialFlow li:last-child::after {
	display: none;
}
.trialFreePc {
	display: block;
	max-width: 700px;
}
.trialNotes {
	text-align: right;
	font-size: 1.4rem;
}
@media  (max-width: 767px){
	.trialFreePc {
		margin-top: 5vw;
	}
	.trialNotes {
		display: block;
		margin-top: 3vw;
	}
}

/* FAQ */
.faq {
  margin-top: 24px;
}
.faq__dt, .faq__dd {
  position: relative;
  padding-left: 24px;
}
.faq__dt::before, .faq__dd::before {
  font-weight: bold;
  position: absolute;
  left: 0;
  top: 0;
}
.faq__dt {
  font-weight: bold;
  border-bottom: 1px dotted #aaa;
  margin-bottom: 15px;
}
.faq__dt::before {
  content: 'Q.';
  color: #c80021;
}

.faq__dd::before {
  content: 'A.';
  color: #00b0ec;
}


iframe.youtube-16-9 {
	width: 100%;
	height: auto;
	aspect-ratio: 16 / 9;
}
.form{
  width: 360px;
}
@media  (max-width: 767px){
  .form{
    width: 100%;
    font-size: 16px;
  }
}


/* --無料トライアル------------------------------- */
.oLink02 a{
	margin: 50px auto;
	width:400px;
}

