.clearfix::after, .l-solo__col::after, .l-helper__plan::after, .l-absence__block::after, .l-iot__tbl--2::after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

@font-face {
  font-family: 'js';
  font-weight: 300;
  font-style: normal;
  src: url("/spcontent/tomobataraki/font/JosefinSans-Regular.ttf") format("opentype");
}

@font-face {
  font-family: 'js';
  font-weight: 500;
  font-style: normal;
  src: url("/spcontent/tomobataraki/font/JosefinSans-SemiBold.ttf") format("opentype");
}

@font-face {
  font-family: 'js';
  font-weight: 700;
  font-style: normal;
  src: url("/spcontent/tomobataraki/font/JosefinSans-Bold.ttf") format("opentype");
}

@font-face {
  font-family: 'fm';
  font-weight: 100;
  font-style: normal;
  src: url("/spcontent/tomobataraki/font/Futura-Boo.ttf") format("opentype");
}

@font-face {
  font-family: 'fm';
  font-weight: 300;
  font-style: normal;
  src: url("/spcontent/tomobataraki/font/Futura-Med.ttf") format("opentype");
}

@font-face {
  font-family: 'fm';
  font-weight: 500;
  font-style: normal;
  src: url("/spcontent/tomobataraki/font/Futura-Bol.ttf") format("opentype");
}

@font-face {
  font-family: 'ns';
  font-weight: 300;
  font-style: normal;
  src: url("/spcontent/tomobataraki/font/NotoSansCJKjp-Medium.otf") format("opentype");
}

@font-face {
  font-family: 'ns';
  font-weight: 500;
  font-style: normal;
  src: url("/spcontent/tomobataraki/font/NotoSansCJKjp-Bold.otf") format("opentype");
}

.l-keyvisual {
  position: relative;
}

.l-keyvisual__pic {
  padding-left: 27.22222222222222vw;
}

@media (max-width: 1260px) {
  .l-keyvisual__pic {
    padding-left: 343px;
  }
}

@media (max-width: 767px) {
  .l-keyvisual__pic {
    padding-left: 0;
  }
}

.l-keyvisual__pic::before {
  content: "";
  display: block;
  padding-top: 75.90132827324479%;
  background: url(/spcontent/tomobataraki/images/point1/pic_keyvisual01.jpg) no-repeat;
  background-size: cover;
}

@media (max-width: 767px) {
  .l-keyvisual__pic::before {
    padding-top: 106.66666666666667%;
    background-image: url(/spcontent/tomobataraki/images/point1/pic_keyvisual01_sp.jpg);
  }
}

.l-keyvisual__txt {
  position: absolute;
  top: 6.25vw;
  left: 8.33333vw;
}

@media (max-width: 1260px) {
  .l-keyvisual__txt {
    top: 79px;
    left: 105px;
  }
}

@media (max-width: 767px) {
  .l-keyvisual__txt {
    top: 12vw;
    left: 8.66667vw;
  }
}

.l-keyvisual__sub {
  font-size: 1.11111vw;
  font-weight: bold;
}

@media (max-width: 1260px) {
  .l-keyvisual__sub {
    font-size: 14px;
  }
}
body.android .l-keyvisual__sub {
  font-weight: 500;
}

@media (max-width: 767px) {
  .l-keyvisual__sub {
    color: #fff;
    font-size: 3.2vw;
  }
}

/*アイコン追加*/
.l-keyvisual__iot {
	margin-top:1.3vw;
	padding-left:3.4vw;
	position: relative;
}
p.l-keyvisual__iot:before {
	position: absolute;
	content: " ";
	display: inline-block;
	width: 3.2em;
	height: 3.2em;
	background-image: url("/spcontent/tomobataraki/images/icon_iot.svg") ; 
	background-size: contain;
	vertical-align: middle;	
	background-repeat: no-repeat;
	top:0;
	left:0;
}

@media (max-width: 1260px) {
	.l-keyvisual__iot {
	padding-left:43px;
	position: relative;
  margin-top: 16.38px;
}
}

@media (max-width: 767px) {
	.l-keyvisual__iot {
	 font-size: 3.2vw;
	margin-top:2.3vw;
	padding-left:11.8vw;
	position: relative;
	background-color: rgba(255,255,255,0.5)
}
}



.l-keyvisual h1 {
  width: 20.48611vw;
  height: 2.08333vw;
  margin-top: 1.04167vw;
}

@media (max-width: 1260px) {
  .l-keyvisual h1 {
    width: 258px;
    height: 25px;
    margin-top: 13px;
  }
}

@media (max-width: 767px) {
  .l-keyvisual h1 {
    width: 57.33333vw;
    height: 5.86667vw;
    margin-top: 4vw;
  }
}

.l-keyvisual__n {
  margin-top: 10px;
  padding: 0 3.1746031746031744vw 0 27.22222222222222vw;
}

@media (max-width: 1260px) {
  .l-keyvisual__n {
    padding: 0 40px 0 343px;
  }
}

@media (max-width: 767px) {
  .l-keyvisual__n {
    padding: 0 8.66667vw;
  }
}

.l-solo {
  margin-top: 6.94444vw;
}

@media (max-width: 1260px) {
  .l-solo {
    margin-top: 87px;
  }
}

@media (max-width: 767px) {
  .l-solo {
    margin-top: 16vw;
  }
}

.l-solo h2 {
  width: 28.40278vw;
  height: 2.22222vw;
  margin: 0 auto;
}

@media (max-width: 1260px) {
  .l-solo h2 {
    width: 358px;
    height: 28px;
  }
}

@media (max-width: 767px) {
  .l-solo h2 {
    width: 80.13333vw;
    height: 6vw;
  }
}

.l-solo__col {
  position: relative;
  margin-top: 6.94444vw;
}

@media (max-width: 1260px) {
  .l-solo__col {
    margin-top: 87px;
  }
}

@media (max-width: 767px) {
  .l-solo__col {
    margin-top: 14.66667vw;
  }
}

.l-solo__col::before {
  position: absolute;
  display: block;
  width: 100%;
  height: 41.66667vw;
  content: '';
  background-color: #f6d1ce;
}

@media (max-width: 1260px) {
  .l-solo__col::before {
    height: 525px;
  }
}

@media (max-width: 767px) {
  .l-solo__col::before {
    display: none;
  }
}

.l-solo__col__control {
  position: relative;
  z-index: 10;
  float: left;
  width: 45.83333vw;
  padding-top: 11.11111vw;
}

@media (max-width: 1260px) {
  .l-solo__col__control {
    width: 577px;
    padding-top: 140px;
  }
}

@media (max-width: 767px) {
  .l-solo__col__control {
    float: none;
    width: auto;
    padding-top: 0;
  }
}

.l-solo__col__control h3 {
  width: 18.19444vw;
  height: 1.59722vw;
  margin-top: 5.55556vw;
  padding-left: 12.15278vw;
}

@media (max-width: 1260px) {
  .l-solo__col__control h3 {
    width: 229px;
    height: 22px;
    margin-top: 70px;
    padding-left: 153px;
  }
}

@media (max-width: 767px) {
  .l-solo__col__control h3 {
    width: 52.4vw;
    height: 4.53333vw;
    margin-top: 13.33333vw;
    padding-left: 9.33333vw;
  }
}

.l-solo__col__control__txt {
  font-size: 1.11111vw;
  width: 30.55556vw;
  margin-top: 1.38889vw;
  padding-left: 12.15278vw;
}

@media (max-width: 1260px) {
  .l-solo__col__control__txt {
    font-size: 14px;
    width: 385px;
    margin-top: 17px;
    padding-left: 153px;
  }
}

@media (max-width: 767px) {
  .l-solo__col__control__txt {
    font-size: 3.2vw;
    line-height: 2;
    width: auto;
    margin-top: 3.33333vw;
    padding: 0 8vw;
  }
}

.l-solo__col__use {
  position: relative;
  z-index: 10;
  float: right;
  width: 37.5vw;
  margin-right: 8.33333vw;
}

@media (max-width: 1260px) {
  .l-solo__col__use {
    width: 472px;
    margin-right: 105px;
  }
}

@media (max-width: 767px) {
  .l-solo__col__use {
    float: none;
    width: auto;
    margin-top: 10.66667vw;
    margin-right: 0;
  }
}

.l-solo__col__use__pic {
  width: 37.5vw;
}

@media (max-width: 1260px) {
  .l-solo__col__use__pic {
    width: 472px;
  }
}

@media (max-width: 767px) {
  .l-solo__col__use__pic {
    width: auto;
    padding: 0 14vw;
  }
}

.l-solo__col__use h3 {
  width: 19.86111vw;
  height: 1.52778vw;
  margin-top: 5.55556vw;
  padding-left: 3.81944vw;
}

@media (max-width: 1260px) {
  .l-solo__col__use h3 {
    width: 250px;
    height: 19px;
    margin-top: 70px;
    padding-left: 48px;
  }
}

@media (max-width: 767px) {
  .l-solo__col__use h3 {
    width: 52.4vw;
    height: 4.53333vw;
    margin-top: 13.33333vw;
    padding-left: 9.33333vw;
  }
}

.l-solo__col__use__txt {
  font-size: 1.11111vw;
  width: 30.55556vw;
  margin-top: 1.38889vw;
  padding-left: 3.81944vw;
}

@media (max-width: 1260px) {
  .l-solo__col__use__txt {
    font-size: 14px;
    width: 385px;
    margin-top: 17px;
    padding-left: 48px;
  }
}

@media (max-width: 767px) {
  .l-solo__col__use__txt {
    font-size: 3.2vw;
    line-height: 2;
    width: auto;
    margin-top: 3.33333vw;
    padding: 0 8vw;
  }
}

.l-helper {
  margin-top: 8.33333vw;
}

@media (max-width: 1260px) {
  .l-helper {
    margin-top: 105px;
  }
}

@media (max-width: 767px) {
  .l-helper {
    margin-top: 16vw;
  }
}

.l-helper h2 {
  width: 44.02778vw;
  height: 2.22222vw;
  margin: 0 auto;
}

@media (max-width: 1260px) {
  .l-helper h2 {
    width: 555px;
    height: 28px;
  }
}

@media (max-width: 767px) {
  .l-helper h2 {
    width: 68.13333vw;
    height: 15.73333vw;
    margin: 0 8.66667vw;
  }
}

.l-helper__lead {
  font-size: 1.11111vw;
  margin-top: 1.73611vw;
  text-align: center;
}

@media (max-width: 1260px) {
  .l-helper__lead {
    font-size: 14px;
    margin-top: 22px;
  }
}

@media (max-width: 767px) {
  .l-helper__lead {
    font-size: 3.2vw;
    line-height: 2;
    margin-top: 4vw;
    padding: 0 8.66667vw;
    text-align: left;
  }
}

.l-helper__plan {
  width: 75vw;
  margin: 3.47222vw auto 0;
}

@media (max-width: 1260px) {
  .l-helper__plan {
    width: 945px;
    margin: 44px auto 0;
  }
}

@media (max-width: 767px) {
  .l-helper__plan {
    width: auto;
    margin: 0 8.66667vw 0;
  }
}

.l-helper__plan > div {
  float: left;
  width: 20.83333vw;
  padding: 0 2.08333vw;
}

@media (max-width: 1260px) {
  .l-helper__plan > div {
    width: 263px;
    padding: 0 26px;
  }
}

@media (max-width: 767px) {
  .l-helper__plan > div {
    float: none;
    width: auto;
    padding: 0;
  }
}

.l-helper__plan > div:last-child {
  padding-right: 0;
}

.l-helper__plan__pic, .l-helper__plan__pic--1, .l-helper__plan__pic--2, .l-helper__plan__pic--3 {
  width: 20.83333vw;
  height: 20.83333vw;
  background-repeat: no-repeat;
  background-size: contain;
}

@media (max-width: 1260px) {
  .l-helper__plan__pic, .l-helper__plan__pic--1, .l-helper__plan__pic--2, .l-helper__plan__pic--3 {
    width: 262px;
    height: 262px;
  }
}

@media (max-width: 767px) {
  .l-helper__plan__pic, .l-helper__plan__pic--1, .l-helper__plan__pic--2, .l-helper__plan__pic--3 {
    width: 82.66667vw;
    height: 82.66667vw;
    margin-top: 10.66667vw;
  }
}

.l-helper__plan__pic--1 {
  background-image: url(/spcontent/tomobataraki/images/point1/pic_helper01.jpg);
}

.l-helper__plan__pic--2 {
  background-image: url(/spcontent/tomobataraki/images/point1/pic_helper02.jpg);
}

.l-helper__plan__pic--3 {
  background-image: url(/spcontent/tomobataraki/images/point1/pic_helper03.jpg);
}

.l-helper__plan__txt {
  font-size: 1.11111vw;
  margin-top: 2.08333vw;
}

@media (max-width: 1260px) {
  .l-helper__plan__txt {
    font-size: 14px;
    margin-top: 26px;
  }
}

@media (max-width: 767px) {
  .l-helper__plan__txt {
    font-size: 3.2vw;
    margin-top: 3.46667vw;
  }
}

.l-absence {
  margin-top: 8.33333vw;
}

@media (max-width: 1260px) {
  .l-absence {
    margin-top: 105px;
  }
}

@media (max-width: 767px) {
  .l-absence {
    margin-top: 16vw;
  }
}

.l-absence h2 {
  width: 26.38889vw;
  height: 2.22222vw;
  margin: 0 auto;
}

@media (max-width: 1260px) {
  .l-absence h2 {
    width: 333px;
    height: 28px;
  }
}

@media (max-width: 767px) {
  .l-absence h2 {
    width: 75.86667vw;
    height: 6.13333vw;
    margin: 0 8.66667vw;
  }
}

.l-absence__block {
  height: 56.25vw;
  margin-top: 12.84722vw;
  padding: 0 8.33333vw 0 12.5vw;
  background-color: #fbdbd5;
}

@media (max-width: 1260px) {
  .l-absence__block {
    height: 709px;
    margin-top: 162px;
    padding: 0 105px 0 157px;
  }
}

@media (max-width: 767px) {
  .l-absence__block {
    height: auto;
    margin-top: 12vw;
    padding: 0;
  }
}

.l-absence__block > div {
  float: left;
  width: 37.5vw;
}

@media (max-width: 1260px) {
  .l-absence__block > div {
    width: 472px;
  }
}

@media (max-width: 767px) {
  .l-absence__block > div {
    float: none;
    width: auto;
  }
}

.l-absence__block > div:last-child {
  float: right;
}

.l-absence__block__delivery {
  position: relative;
}

.l-absence__block__delivery__pic {
  position: absolute;
  top: -7.98611vw;
  left: -12.5vw;
  width: 50vw;
  height: 37.5vw;
  background: url(/spcontent/tomobataraki/images/point1/pic_delivery01.jpg) no-repeat;
  background-size: contain;
}

@media (max-width: 1260px) {
  .l-absence__block__delivery__pic {
    top: -100px;
    left: -157px;
    width: 630px;
    height: 472px;
  }
}

@media (max-width: 767px) {
  .l-absence__block__delivery__pic {
    position: relative;
    top: 0;
    left: 0;
    width: 100vw;
    height: 74.93333vw;
    background-image: url(/spcontent/tomobataraki/images/point1/pic_delivery01.jpg);
  }
}

.l-absence__block__delivery__pic__caption {
  font-size: 1.11111vw;
  font-weight: bold;
  position: absolute;
  right: 0;
  bottom: 0;
  box-sizing: border-box;
  width: 17.22222vw;
  height: 3.47222vw;
  padding-top: 0.83333vw;
  text-align: center;
  color: #fff;
  background-color: #101010;
}

@media (max-width: 1260px) {
  .l-absence__block__delivery__pic__caption {
    font-size: 14px;
    width: 217px;
    height: 44px;
    padding-top: 10px;
  }
}

@media (max-width: 767px) {
  .l-absence__block__delivery__pic__caption {
    font-size: 3.2vw;
    width: 50.13333vw;
    height: 10vw;
    padding-top: 2.13333vw;
  }
}

body.android .l-absence__block__delivery__pic__caption {
  font-weight: 500;
}

.l-absence__block__delivery h3 {
  width: 27.22222vw;
  height: 1.59722vw;
  margin-top: 35.41667vw;
}

@media (max-width: 1260px) {
  .l-absence__block__delivery h3 {
    width: 343px;
    height: 20px;
    margin-top: 446px;
  }
}

@media (max-width: 767px) {
  .l-absence__block__delivery h3 {
    width: 78.26667vw;
    height: 4.66667vw;
    margin-top: 13.33333vw;
    padding: 0 8.66667vw;
  }
}

.l-absence__block__delivery__txt {
  font-size: 1.11111vw;
  width: 32.63889vw;
  margin-top: 1.38889vw;
}

@media (max-width: 1260px) {
  .l-absence__block__delivery__txt {
    font-size: 14px;
    width: 411px;
    margin-top: 17px;
  }
}

@media (max-width: 767px) {
  .l-absence__block__delivery__txt {
    font-size: 3.2vw;
    line-height: 2;
    width: auto;
    margin-top: 4vw;
    padding: 0 8.66667vw;
  }
}

.l-absence__block__place {
  position: relative;
}

@media (max-width: 767px) {
  .l-absence__block__place {
    padding: 0 8.66667vw 10.66667vw;
  }
}

.l-absence__block__place__pic {
  width: 37.5vw;
  height: 25vw;
  margin-top: 4.16667vw;
  background: url(/spcontent/tomobataraki/images/point1/pic_place01.jpg) no-repeat;
  background-size: contain;
}

@media (max-width: 1260px) {
  .l-absence__block__place__pic {
    width: 472px;
    height: 315px;
    margin-top: 53px;
  }
}

@media (max-width: 767px) {
  .l-absence__block__place__pic {
    position: absolute;
    top: 0;
    left: 50%;
    width: 82.66667vw;
    height: 54.93333vw;
    margin-left: -41.33333vw;
  }
}

.l-absence__block__place h3 {
  width: 20.83333vw;
  height: 1.52778vw;
  margin-top: 8.33333vw;
  padding-left: 3.81944vw;
}

@media (max-width: 1260px) {
  .l-absence__block__place h3 {
    width: 263px;
    height: 19px;
    margin-top: 105px;
    padding-left: 48px;
  }
}

@media (max-width: 767px) {
  .l-absence__block__place h3 {
    width: 59.86667vw;
    height: 4.4vw;
    margin-top: 10.66667vw;
    padding-top: 68vw;
    padding-left: 0;
  }
}

.l-absence__block__place__txt {
  font-size: 1.11111vw;
  width: 32.63889vw;
  margin-top: 1.38889vw;
  padding-left: 3.81944vw;
}

@media (max-width: 1260px) {
  .l-absence__block__place__txt {
    font-size: 14px;
    width: 411px;
    margin-top: 17px;
    padding-left: 48px;
  }
}

@media (max-width: 767px) {
  .l-absence__block__place__txt {
    font-size: 3.2vw;
    line-height: 2;
    width: auto;
    margin-top: 4vw;
    padding-left: 0;
  }
}


/*tuika */

.l-iot {
  margin-top: 6.94444vw;
	margin-bottom: 6vw;
}

@media (max-width: 1260px) {
  .l-iot  {
    margin-top: 87px;
  }
}

@media (max-width: 767px) {
  .l-iot  {
    margin-top: 16vw;
  }
}

.l-iot  h2 {
  width: 35.69444vw; /* 514*100/1440 */
  height: 3.40278vw; /* 49*100/1440 */
  margin: 0 auto;
}

@media (max-width: 1260px) {
  .l-iot  h2 {
    width: 449.75px; /* 514/1440*1260 */
  }
}

@media (max-width: 767px) {
  .l-iot h2 {
    width: 82.66667vw; /* 310*100/375 */
  }
}

.l-iot__tbl--1 {
  margin-top: 6.94444vw;
}

@media (max-width: 1260px) {
  .l-iot__tbl--1 {
    margin-top: 87px;
  }
}

@media (max-width: 767px) {
  .l-iot__tbl--1 {
    margin-top: 16vw;
  }
}

.l-iot__tbl--1 > div:first-child {
  float: right;
}

@media (max-width: 767px) {
  .l-iot__tbl--1 > div:first-child {
    float: none;
  }
}

.l-iot__tbl--1 > div:last-child {
  float: left;
}

@media (max-width: 767px) {
  .l-iot__tbl--1 > div:last-child {
    float: none;
  }
}

.l-iot__tbl--1 .l-iot__tbl__pic {
  width: 100%;
  height: 34.72222vw;
  background: url(/spcontent/tomobataraki/images/point1/pic_iot_01.jpg) 0 100% no-repeat;
  background-size: contain;
}

@media (max-width: 1260px) {
  .l-iot__tbl--1 .l-iot__tbl__pic {
    height: 440px;
  }
}

@media (max-width: 767px) {
  .l-iot__tbl--1 .l-iot__tbl__pic {
    height: 69.33333vw;
  }
}

.l-iot__tbl--2 {
  margin-top: 6.94444vw;
}

@media (max-width: 1260px) {
  .l-iot__tbl--2 {
    margin-top: 87px;
  }
}

@media (max-width: 767px) {
  .l-iot__tbl--2 {
    margin-top: 16vw;
  }
}

.l-iot__tbl--2 > div:first-child {
  float: left;
}

@media (max-width: 767px) {
  .l-iot__tbl--2 > div:first-child {
    float: none;
  }
}

.l-iot__tbl--2 > div:last-child {
  float: right;
}

@media (max-width: 767px) {
  .l-iot__tbl--2 > div:last-child {
    float: none;
  }
}

.l-iot__tbl--2 .l-iot__tbl__pic {
  width: 100%;
  height: 34.72222vw;
  background: url(/spcontent/tomobataraki/images/point1/pic_iot_02.jpg) no-repeat;
  background-size: contain;
}

@media (max-width: 1260px) {
  .l-iot__tbl--2 .l-iot__tbl__pic {
    height: 440px;
  }
}

@media (max-width: 767px) {
  .l-iot__tbl--2 .l-iot__tbl__pic {
    height: 69.33333vw;
  }
}

.l-iot__tbl > div, .l-iot__tbl--1 > div, .l-iot__tbl--2 > div {
  width: 50%;
  height: 34.72222vw;
  vertical-align: top;
}

@media (max-width: 1260px) {
  .l-iot__tbl > div, .l-iot__tbl--1 > div, .l-iot__tbl--2 > div {
    height: 440px;
  }
}

@media (max-width: 767px) {
  .l-iot__tbl > div, .l-iot__tbl--1 > div, .l-iot__tbl--2 > div {
    width: auto;
    height: auto;
  }
}

.l-iot__tbl__descript {
  padding: 9.72222vw 0 0 8.33333vw;
}

@media (max-width: 1260px) {
  .l-iot__tbl__descript {
    padding: 122px 0 0 105px;
  }
}

@media (max-width: 767px) {
  .l-iot__tbl__descript {
    padding: 2.33333vw 8.66667vw 0;
  }
}

.l-iot__tbl__descript__title--1 {
  width: 28.09722vw;
}

@media (max-width: 1260px) {
  .l-iot__tbl__descript__title--1 {
    width: 303px;
    height: 20px;
  }
}

@media (max-width: 767px) {
  .l-iot__tbl__descript__title--1 {
    width:75.46667vw;
  }
}

.l-iot__tbl__descript__title--2 {
  width: 23.70833vw;
}

@media (max-width: 1260px) {
  .l-iot__tbl__descript__title--2 {
    width: 349px;
    height: 20px;
  }
}

@media (max-width: 767px) {
  .l-iot__tbl__descript__title--2 {
    width: 69.73333vw;
  }
}

.l-iot__tbl__descript__txt {
  line-height: 2;
  margin-top: 2.77778vw;
	margin-bottom: 2vw;
}

@media (max-width: 1260px) {
  .l-iot__tbl__descript__txt {
    margin-top: 35px;
  }
}

@media (max-width: 767px) {
  .l-iot__tbl__descript__txt {
    margin-top: 4vw;
  }
}