/* #gHeader
================================================ */
#gHeader { border-bottom: 1px solid  #0f7cbb; }

#sca #mainImg .tit { font-family: 'Noto Serif JP', sans-serif; font-size: 2.4rem; }

@media all and (min-width: 600px) { #sca #mainImg .tit { font-size: 4rem; } }

/* #mainImg
================================================ */
#mainImg { position: relative; background: none; margin-top: 0; margin-bottom: 45px; padding-top: 50px; height: auto; z-index: 1; }
#mainImg:before { content: ''; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: url("../../img/sensor/bg_main_iot01_sp.jpg") no-repeat center center/cover; z-index: -1; }
#mainImg .inner { width: 1120px; position: relative; padding-left: 15px; padding-right: 15px; padding-bottom: 50px; }
#mainImg .inner:before { display: none; }
#mainImg .main-header { display: flex; flex-direction: column; }
#mainImg .main-header .sub { color: #fff; font-size: 3rem; font-weight: 900; text-shadow: 2px 2px 2px #003f68; line-height: 1.5; margin-top: 10px; letter-spacing: 0.03em; }
#mainImg .main-header .sub-small { padding-top: 50px; color: #ffe156; font-size: 1.5rem; font-style: normal; font-weight: 900; text-shadow: 2px 2px 2px #003f68; letter-spacing: 0.01em;}
#mainImg .imgArea { position: relative; max-width: 370px; margin: auto; }
#mainImg .imgArea .img { max-width: 270px; margin-top: 50px; }
#mainImg .imgArea .circle { color: #0171b8; font-weight: 900; text-align: center; position: absolute; top: -80px; right: -10px; background: url(../../img/sensor/img_main_en01_sp.png) no-repeat top left/contain; width: 125px; height: 125px; padding: 40px 20px 0; z-index: -1;}
#mainImg .list { display: flex; flex-wrap: wrap; justify-content: center; max-width: 370px; margin: 10px auto 0; }
#mainImg .list .item { width: 105px; width: calc(33.333% - 12px); font-size: 1.6rem; color: #016cb1; font-weight: 900; text-align: center; background-color: #d4f4ff; border-radius: 50%; box-sizing: border-box; padding: 27px 0; line-height: 1.5; letter-spacing: 0.01em; margin: 0 6px;}
#mainImg .h_sensor_link-btn{
	margin-top: 20px;
    text-align: center;
	font-weight: bold;
}
#mainImg .h_sensor_link-btn a{
	max-width: 420px;
    background: #ff8400;
}
@media all and (max-width: 350px) { 
	#mainImg .list .item { padding: 18px 0; } 
}

@media all and (min-width: 600px) {
	#mainImg { margin-top: 95px; padding: 0 0 85px; margin-bottom: 0; }
	#mainImg::before { top: 0; height: 100%; background-image: url(../../img/sensor/bg_main_iot01_pc.jpg);} #mainImg .inner{
		padding-bottom: 0px;
	}    
	#mainImg .mainWrap { position: relative; }
	#mainImg .main-header { max-width: 685px; }
	#mainImg .main-header .sub { font-size: 5.8rem; margin-top: 0; }
	#mainImg .main-header .sub-small {font-size: 2.6rem; padding-top: 60px; }
	#mainImg .main-header .sub-small span { font-size: 4rem; vertical-align: baseline;}
	#mainImg .imgArea { max-width: 100%; margin: 0; }
	#mainImg .imgArea .img { max-width: 472px; margin-top: 0; position: absolute; top: -45px; right: 0; }
	#mainImg .imgArea .circle { font-size: 2.6rem; top: -230px; right: -10px; background: url(../../img/sensor/img_main_en01_pc.png) no-repeat top left/contain; width: 250px; height: 250px; padding: 76px 20px;}
	#mainImg .list { max-width: 481px; margin: 40px -10px 0; }
	#mainImg .list .item { width: 140px; width: calc(33.333% - 20px); font-size: 2.2rem; padding: 37px 0; margin: 0 10px;}
	#mainImg .h_sensor_link-btn{
		margin-top: 40px;
	}
	#mainImg .h_sensor_link-btn a{
		font-size: 1.7rem;
	}
}

/*  movie
================================================== */
#movie { padding-top: 0; }
#movie .movieWrap { background: #e5f0f7; padding: 25px; }
#movie .movieArea { position: relative; overflow: hidden; padding-bottom: 56.25%; /* 16:9 (9÷16=0.5625) */ }
#movie .movieArea iframe { 
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: none;
 }
 @media all and (min-width: 600px) {
	#movie { padding-top: 50px; }
	#movie .movieWrap { padding: 40px 270px; }
 }


/*  sensorSec
================================================== */
.sensorSec .set { margin-top: 30px; }
.sensorSec .set .setTit { position: relative; margin-bottom: 5px; padding-left: 15px; font-weight: bold; font-size: 1.5rem; }
.sensorSec .set .setTit:before {
	content: "";
	position: absolute;
	top: .4em;
	left: 0;
	-webkit-transform: rotate(50deg);
	-ms-transform: rotate(50deg);
	transform: rotate(50deg);
	width: 5px;
	height: 10px;
	border-right: 3px solid #016cb1;
	border-bottom: 3px solid #016cb1;
}
.sensorSec .note { margin-top: 1em; font-size: 1.1rem; color: #999; }
.sensorSec .setCheck { position: relative; padding-left: 20px; margin-bottom: 10px; font-size: 1.7rem; font-weight: bold; color: #1cacda; line-height: 1.5; }
.sensorSec .setCheck:before {
	content: "";
	position: absolute;
	top: .4em;
	left: 0;
	width: 15px;
	height: 15px;
	background: url(../../img/common/ico_check01.png) no-repeat center / contain;
}
.sensorSec .areaBtn { position: relative; margin-top: 30px; padding: 25px; z-index: 1; }
.sensorSec .areaBtn::before { content: ''; position: absolute; top: 0; left: 50%; transform: translateX(-50%); height: 100%; width: 200%; background: #f3f3f3; z-index: -1; }
.sensorSec .areaBtn .btn { margin-top: 0; }
.sensorSec .areaBtn .btn a { height: auto; padding: 13px 0 14px; line-height: 1.4; text-align: center; }
.sensorSec .set_maintxt{
	margin-bottom: 10px;
	color: #016cb1;
    font-weight: bold;
} 
.sensorSec .mod_list02_item{
	position: relative; padding-left: 20px; margin: 15px 0; font-weight: bold; color: #1cacda; line-height: 1.5; 
}
.sensorSec .mod_list02_item:before {
	content: "";
	position: absolute;
	top: 4px;
	left: 0;
	width: 15px;
	height: 15px;
	background: url(../../img/common/ico_check01.png) no-repeat center / contain;
}
@media all and (min-width: 600px) {
	.sensorSec .set .setTit { padding-left: 20px; margin-bottom: 8px; font-size: 1.8rem; }
	.sensorSec .set .setTit:before {top: 0.5em;	height: 13px; }
	.sensorSec .note { margin-top: 0.5em; font-size: 1.3rem; }
	.sensorSec .setCheck { font-size: 2.4rem; }
	.sensorSec .areaBtn::before { width: 100%; }
	.sensorSec .mod_list02_item{
		margin: 0;
		margin-bottom: 25px;
		padding-left: 35px;
		font-size: 2rem;
	}
	.sensorSec .mod_list02_item:before {
		top: 5px;
		width: 20px;
		height: 20px;
	}
	.sensorSec .set_maintxt{
		font-size: 2.4rem;
	} 
}

/*  パッケージ内部リンク
================================================== */
.sensor_link{
	padding: 10px 0;
}
.sensor_link-btn .sensor_link-point{
	display: flex;
	justify-content: center;
	align-items: flex-end;
	position: relative;
	margin-bottom: 10px;
    color: #016cb1;
    font-size: 1.1rem;
	font-weight: bold;
    text-align: center;
}
.sensor_link-btn .sensor_link-point:before,.sensor_link-btn .sensor_link-point:after {
  width: 2px;
  height: 35px;
  content: "";
  background: #016cb1;
}

.sensor_link-btn .sensor_link-point:before {
  margin-right: 10px;
  transform: rotate(-30deg);
}

.sensor_link-btn .sensor_link-point:after {
  margin-left: 10px;
  transform: rotate(30deg);
}

.sensor_link-btn{
	margin-bottom: 20px;
}
.sensor_link-btn:last-child{
	margin-bottom: 0px;
}
.sensor_link-btn a{
	position: relative;
	display: block;
    padding: 10px 0px 10px 28px;
    background: #016cb1;
    font-size: 1.2rem;
    color: #fff;
    border-radius: 30px;
    text-decoration: none;
}
.sensor_link-btn a:before{
	content: '';
    width: 6px;
    height: 6px;
    margin-top: -5px;
    border-top: solid 1px #fff;
    border-right: solid 1px #fff;
    transform: rotate(135deg);
    position: absolute;
    top: 50%;
    left: 14px;
}
@media all and (min-width: 600px) {
	.sensor_link-btn .sensor_link-point:before {
	  margin-right: 20px;
	}

	.sensor_link-btn .sensor_link-point:after {
	  margin-left: 20px;
	}
	.sensor_link-btn .sensor_link-point{
		margin-bottom: 15px;
		font-size: 1.4rem;
	}
	.sensor_link{
        display: flex;
        justify-content: center;
		padding: 15px 0;
	}
	.sensor_link .sensor_link-btn{
		flex: 0 1 45%;
		width: 45%;
		max-width: 45%;
		margin-right: 20px;
	}
	.sensor_link-btn a{
		font-size: 1.6rem;
		text-align: center;
	}
	.sensor_link-btn a:before {
		content: '';
		width: 8px;
		height: 8px;
		border-top: solid 2px #fff;
		border-right: solid 2px #fff;
		top: 45%;
		left: 35px;
	}
}

/*  #sec03
================================================== */
#sec03 .mod_list01_item {
    margin-bottom: 15px;
}


/*  #sec04
================================================== */
#sec04.sensorSec .set_maintxt{
	margin-bottom: 5px;
	font-size: 1.6rem;
}
#sec04 .mod_tit03{
	margin-bottom: 5px;
	font-size: 1.6rem;
}
#sec04 .mod_list01{
	padding-left: 20px;
}
#sec04 .set_num{
	margin-bottom: 20px;
}
#sec04 .set_num .set_num-main{
	font-size: 1.5rem;
	font-weight: bold;
	color: #1cacda;
}
#sec04 .set_num .set_num-sub{
	padding-left: 20px;
}
#sec04 .set_num .set_num-sub a{
	color: #016cb1;
}
@media all and (min-width: 600px){
	#sec04.sensorSec .set_maintxt{
		margin-bottom: 10px;
		font-size: 2.4rem;
	}
	#sec04 .mod_tit03{
		margin-bottom: 10px;
		font-size: 2.4rem;
	}
	#sec04 .mod_tit03{
		font-size: 2rem;
	}
	#sec04 .set_num .set_num-main{
		font-size: 2rem;
	}
	
}

/*  装飾
================================================== */

/*  注釈用字下げ */
p.indent-1t5 {
padding-left:1.5em;
text-indent:-1.5em;
}



.mgr-3em{margin-right : 3em;}

/*　center　*/
.center { text-align: center; }

/*　　↓▼　　*/
.sankakucenter{
	width: 100%;
	margin: 20px auto;
}
.sankaku{
	width: 0;
	height: 0;
	border: 80px solid transparent;
	border-top: 40px solid #ccc;
	margin-bottom: -40px;
}

/*　lbl テキストの水色　*/
.lbl { color:#1cace1}

/*　txtry テキストの両揃え　*/
.txtry {text-align: justify; text-justify: inter-ideograph;}

/*　bold　*/
.bold {font-weight: bold; }

/*　 ↓ボタン　*/
a.butn{
  display: inline-block;
  width: 240px;
  margin: 6px 0px 0px 0px;
  padding: 5px 5px 5px 5px;
  border: 1px solid ;
  background: rgba(255,255,255,.90);
  text-decoration: none;
  line-height: 1.5em;
  transition: .3s;
  color: rgba(1,108,177,.90);
}
.cap {
margin: 25px 0 72px auto;
}

.cap_txt {
	font-size: 1.1rem;
	color: #999;
}
@media all and (min-width: 600px) {
.cap_txt {
	font-size: 1.4rem;
}
}

a.butnover:hover {
  background: rgba(1,108,177,.90);
  color: rgba(255,255,255,.90);
  border: 1px solid #009BD3;
}

.left { text-align: left; }



.btn_midasi {font-weight:normal;  color:#aaa;}
.btn_ue {margin-top:10px; margin-bottom:-30px; text-align: center;}
.btn_left {margin-left:0;}

@media all and (min-width: 600px) {
.btn_ue {margin-top:10px; margin-bottom:0; text-align: left;}
.btn_left {margin-left:10px;}
}


.copy { margin-bottom: 5px; font-size: 1.5rem; font-weight: 700; }
@media all and (min-width: 600px) {
.copy { margin-bottom: 5px; font-size: 1.8rem; }  }


/*  #spec
================================================== */
#spec .tit { margin-bottom: 20px; }
#spec .subTit { margin-bottom: 13px; }
#spec .txt { margin-bottom: 21px; }
#spec .table { margin-bottom: 25px; }
#spec .table .img { padding: 0 0 20px; }
#spec .copy { margin-bottom: 5px; font-size: 1.5rem; font-weight: 700; }
#spec .table .list { list-style-type: square; }
#spec figcaption { font-size: 1.3rem; text-align: center; }
#spec td { vertical-align:middle; }

@media all and (min-width: 600px) {
	#spec .tit { margin-bottom: 40px; }
  #spec .subTit { margin-bottom: 18px; }
  #spec .txt { margin-bottom: 30px; }
  #spec .table { margin-bottom: 40px; }
  #spec .img_box { margin-bottom: 40px; }
  #spec .copy { margin-bottom: 5px; font-size: 1.8rem; }
}
@media all and (min-width: 600px) {
	#spec .table { margin-bottom: 30px; }
  #spec .table thead th { padding: 16px 0; }
  #spec .table tbody th { vertical-align:top; max-width: 170px; box-sizing: border-box; }
  #spec .table tbody td { vertical-align:middle; }
	#spec .table .img { padding: 20px; width: 400px; box-sizing: border-box; }
}

/*  #sec01
================================================== */
#sec01 { padding-top: 45px; }
@media all and (min-width: 600px) {
	#sec01 { padding-top: 110px; }
}

/*  package
================================================== */
.package{
	margin-top: 60px;
    border-top: 10px solid #0E67A6;
}
.package_bg{
	position: relative;
}
.package_bg:after {
   position: absolute;
    z-index: -2;
    top: 0;
	right: 0;
    content: "";
    display: block;
    width: 100%;
    height: 330px;
    background: url(../../img/sensor/bg_point_01_sp.jpg) no-repeat top/contain;
}
.package_bg:before {
    position: absolute;
    z-index: -2;
	left: 0;
    bottom: 0;
    content: "";
    display: block;
    width: 100%;
    height: 330px;
    background: url(../../img/sensor/bg_point_02_sp.jpg) no-repeat bottom/contain;
}
.package_wrap{
	padding: 30px 0;
}
.package_box{
	margin-bottom: 30px;
}
.package_box:last-child{
	margin-bottom: 0px;
}
.package_ttl{
	margin-bottom: 10px;
	font-size: 1.8rem;
    color: #0E67A6;
    font-weight: bold;
    text-align: center;
	line-height: 1.6;
	text-shadow: #fff 1px 0 5px, #fff 1px 0 5px, #fff 1px 0 5px,#fff 1px 0 5px, #fff 1px 0 5px, #fff 1px 0 5px;
}
.package_ttl .package_ttl-line{
	font-size: 1.6rem;
	 background:linear-gradient(transparent 70%, #FFEC00 70%);
}
.package_txt{
	margin-bottom: 20px;
    text-align: center;
	font-weight: bold;
	text-shadow: #fff 1px 0 5px, #fff 1px 0 5px, #fff 1px 0 5px,#fff 1px 0 5px, #fff 1px 0 5px, #fff 1px 0 5px;
}
.package_icon{
	margin-bottom: 30px;
	display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -webkit-flex-flow: row wrap;
    -ms-flex-flow: row wrap;
    flex-flow: row wrap;
    -webkit-align-content: flex-start;
    -ms-flex-line-pack: start;
    align-content: flex-start;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.package_icon-box{
	flex: 0 1 32.5%;
    width: 32.5%;
    max-width: 32.5%;
}
.package_icon-img{
	margin-bottom: 10px;
}
.package_icon-txt{
	background: #009BE2;
    color: #fff;
    text-align: center;
    border-radius: 40px;
	font-weight: bold;
}
.package_demo{
	position: relative;
	padding: 20px 0;
    font-size: 2rem;
    background: #0E67A6;
    text-align: center;
    color: #fff;
    font-weight: bold;
}
.package_demo:before {
    content: "";
    position: absolute;
    top: -10%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    border-bottom: 18px solid #0E67A6;
    border-left: 18px solid transparent;
    border-right: 18px solid transparent;
}
.package_demo-free{
	margin-right: 10px;
    padding: 2px 20px;
    background: #ef8237;
    border-radius: 40px;
    line-height: 1.5;
}
@media all and (min-width: 600px) {
	.package_bg:after {
		display: none;
	}
	.package_bg:before {
		display: none;
	}
	.package_ttl{
		font-size: 2.4rem;
	}
	.package_ttl .package_ttl-line {
		font-size: 1.8rem;
	}
	.package_bg{
		background: url(../../img/sensor/bg_point_pc.jpg) no-repeat center bottom/cover;
	}
	.package_wrap{
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-webkit-flex-flow: row wrap;
		-ms-flex-flow: row wrap;
		flex-flow: row wrap;
		-webkit-align-content: flex-start;
		-ms-flex-line-pack: start;
		align-content: flex-start;
		-webkit-box-pack: justify;
		-webkit-justify-content: space-between;
		-ms-flex-pack: justify;
		justify-content: space-between;
		position: relative;
	}
	.package_wrap:before{
		content:"";
		display:block;
		width: 2px;
		height: 75%;
		background-color:#0E67A6;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%); 
	}
	.package_icon-box {
		flex: 0 1 31%;
		width: 31%;
		max-width: 31%;
	}
	.package_icon-img {
		width: 120px;
		margin: auto;
		margin-bottom: 10px;
	}
	.package_box{
		flex: 0 1 43%;
		width: 43%;
		max-width: 43%;
		margin-bottom: 0;
	}
	.package_ttl{
		text-shadow:none;
	}
	.package_demo {
		padding: 15px 0;
		font-size: 2.8rem;
	}
	.package_demo-free {
		margin-right: 16px;
		line-height: 1.8;
	}
}
/*info
================================================== */

#info .mod_btn01_link{
	font-size: 1.1rem;
}

#info .mod_btn01_link .mod_btn02_txt{
	font-size: 1rem;
}
@media all and (min-width: 600px){
	.mod_info01 .relation .btn{
		width:400px;
	}
	#info .mod_btn01_link{
		font-size: 1.4rem;
	}
	#info .mod_btn01_link .mod_btn02_txt {
		font-size: 1.2rem;
	}
}


/*  #back-btn
================================================== */
#back-btn .areaBtn { margin: 0 -18px; padding: 25px 45px; background: #f3f3f3; }
#back-btn .areaBtn .btn { margin-top: 0; }
#back-btn .areaBtn .btn a { height: auto; padding: 13px 0 14px; line-height: 1.4; text-align: center; }

@media all and (min-width: 600px) {
  #back-btn .areaBtn .btn { max-width: 350px; width: 350px; margin: 0 auto; }
  #back-btn .areaBtn .btn a { padding: 20px 0 19px; } }
