
@charset "UTF-8";
@import url("/common/css/themecolor.css");
/* 1024px以上 */

.pc-view {
	display: block;
}

.sp-view {
	display: none;
}


header .lang .en a {
	color: #333;
}

section#main-area {
	text-align: center;
	margin: 0 auto 24px;
	position: relative;
}

#main-area p {
	position: absolute;
	top: 40%;
	bottom: 60%;
	left: 50%;
	right: 50%;
	margin-left: -110px;
}

#main-area p img {
	width: 220px;
	height: auto;
}

.segment-box {
	display: flex;
	align-items: stretch;
	justify-content: center;
	margin-top: 30px;
	margin-bottom: 100px;
}

.segment-img {
	margin: 0 !important;
	padding: 0 15px;
}

p.segment-img img {
	width: 250px;
	height: auto;
}

li.infra {
	padding-right: 40px;
}

li.life {
	padding-right: 40px;
	padding-left: 20px;
}

li.dx {
	padding-left: 20px;
}

.segment-ttl {
	background:var(--themeColor);
	text-align: center;
	color: #fff !important;
	max-height: 70px;
	padding: 24px 0;
	margin: 0 !important;
}

.segment-ttl02 {
	background:var(--themeColor);
	text-align: center;
	color: #fff !important;
	max-height: 70px;
	padding: 12px 0;
	margin: 0 !important;
}

.segment-company {
	margin-top: 20px;
	height: 335px;
}

.segment-service {
	margin-top: 30px;
}

.segment-logo-bttom {
	margin-top: 30px;
}

li.segment-logo-ttl {
	border-top: 1px solid var(--themeColor);
	border-bottom: 1px solid var(--themeColor);
	padding: 10px;
	text-align: center;
}

.segment-company ul li,
.segment-service ul li {
	text-align: center;
	margin-top: 34px;
}

.logo-fb img {
	width: 130px;
	height: auto;
}

.logo-mvno img {
	width: 180px;
	height: auto;
}

.logo-cloud img {
	width: 190px;
	height: auto;
}

.logo-yournet img {
	width: 170px;
	height: auto;
}

.logo-giga img {
	width: 190px;
	height: auto;
}

.logo-dti img {
	width: 100px;
	height: auto;
}

.logo-fullspeed img {
	width: 160px;
	height: auto;
}

.logo-forit img {
	width: 210px;
	height: auto;
}

.logo-tone img {
	width: 160px;
	height: 38.5px;
}

.logo-afb img {
	width: 90px;
	height: auto;
}

.logo-dx img {
	width: 200px;
	height: auto;
}


section#video_slide {
	margin:0 0 20px;
	padding:0;

}

#video_area {
	width: 100%;
	margin: 0 0 20px 0;
	text-align: center;
	position: relative;
	}

#video_area div.dot {
	background: url("/common/image/dot.gif");
	position: absolute;
	top: 0;
	left:0;
	z-index: 5;
	width: 100%;
	height:100%;

	margin:0;
	}

#video_area div.copy_b {
	  position: absolute;
  top: 50%;
  left: 50%;
  width: 323px;
  height: 29px;
  background: url("/image/copy_w.png");
  background-size: 323px 29px;
  z-index: 6;
  margin: -15px 0 0 -490px;
	}

#video_area div.copy_w {
	  position: absolute;
  top: 50%;
  left: 50%;
  width: 323px;
  height: 29px;
  background: url("/image/copy_w.png");
  background-size: 323px 29px;
  z-index: 6;
  margin: -15px 0 0 -490px;
	}

#video {
	width: 100%;
	position: relative;
	line-height:0;
	overflow:hidden;
	}
#video0, #video1, #video2, #video3, #video4, #video5 {
	opacity:0;
	}

ul#control {
	display: inline-block;
	margin: 0;
	padding: 0;
	}

ul#control li {
	margin: 0 3px;
	padding: 0;
	float: left;
	width: 10px;
	height: 10px;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5x;
	overflow: hidden;
	text-indent: 100%;
	cursor: pointer;
	background: #ccc;
	}

ul#control li.active {
	background: #00a0e9 !important;
	}



.bx-wrapper {
	position: relative;
	*zoom: 1;
	}

.bx-wrapper .bx-viewport {
	-webkit-transform: translatez(0);
	-moz-transform: translatez(0);
    	-ms-transform: translatez(0);
    	-o-transform: translatez(0);
    	transform: translatez(0);
	}

.bx-wrapper .bx-pager,
.bx-wrapper .bx-controls-auto {
	position: absolute;
	bottom: -30px;
	width: 100%;
	}

.bx-wrapper .bx-loading {
	min-height: 50px;
	background: url(/common/image/bx_loader.gif) center center no-repeat #fff;
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2000;
	}

.bx-wrapper .bx-pager {
	text-align: center;
	font-size: .85em;
	font-family: Arial;
	font-weight: bold;
	color: #666;
	padding-top: 20px;
	}

.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
	display: inline-block;
	*zoom: 1;
	*display: inline;
	}

.bx-wrapper .bx-pager.bx-default-pager a {
	background: #666;
	text-indent: -9999px;
	display: block;
	width: 10px;
	height: 10px;
	margin: 0 5px;
	outline: 0;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
	background: #000;
	}

.bx-wrapper .bx-prev {
	left: -30px;
	background: url("/common/image/arrow_white_l.png") center center no-repeat var(--themeColor);
	text-indent: 100%;
	overflow: hidden;
	border-radius: 5px;
	z-index: 30;
	}

.bx-wrapper .bx-next {
	right: -20px;
	background: url("/common/image/arrow_white_r.png") center center no-repeat var(--themeColor);
	text-indent: 100%;
	overflow: hidden;
	border-radius: 5px;
	z-index: 30;
	}

.bx-wrapper .bx-prev:hover,
.bx-wrapper .bx-next:hover {
	opacity: .2;
	}

.bx-wrapper .bx-controls-direction a {
	position: absolute;
	top: 0;
	outline: 0;
	width: 20px;
	height: 100px;
	z-index: 9999;
	}

.bx-wrapper .bx-controls-direction a.disabled {
	display: none;
	}
#variablelistContenner{
	padding-bottom: 50px;
}
#variablelist2{
	margin-top: -1.5em;
}
.variablelist {
	position: relative;
	/*min-height: 400px;*/
	/*overflow: hidden;*/
	margin: 0 0 0 0;
	}
	.variablelist.list .mix{
		display: inline-block;
	}
.pager {
	display: block;
	padding: 0 0 30px 0;
	width: 100%;
	clear: both;
	cursor: pointer;
	}

.pager span {
	display: block;
	width: 184px;
	height: 27px;
	margin: 0 auto;
	padding: 7px 80px;
	background: url("/common/image/arrow_bottom.png") center center no-repeat var(--themeColor);
	border-radius: 5px;
	}

.pager:hover span {
	opacity: .5;
	}


.mv {
	display: none;
	}

.mv:after {
	display: block;
	clear: both;
	content: "";
	}

.mv .bx-wrapper .bx-prev {
	left: 0px;
	top: 85px;
	width: 30px;
	height: 30px;
	background: url("/common/image/arrow_white_l.png") center center no-repeat #00a0e9;
	opacity: .3;
	text-indent: 100%;
	overflow: hidden;
	}

.mv .bx-wrapper .bx-next {
	right: 0px;
	top: 85px;
	width: 30px;
	height: 30px;
	background: url("/common/image/arrow_white_r.png") center center no-repeat #00a0e9;
	opacity: .3;
	text-indent: 100%;
	overflow: hidden;
	}

.mv .loading {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 0px;
	height: 0px;
	background: url("/common/image/bx_loader.gif") center center no-repeat #fff;
	opacity: 0;
	-webkit-animation: loading 4s;
	-moz-animation: loading 4s;
	-o-animation: loading 4s;
	animation: loading 4s;
	}
	@-webkit-keyframes loading {
	0% { opacity: 1; width: 100%; height: 100%;}
	99% { opacity: 0; width: 100%; height: 100%;}
	100% { opacity: 0; width: 0%; height: 0%;}
	}
	@-moz-keyframes loading {
	0% { opacity: 1; width: 100%; height: 100%;}
	99% { opacity: 0; width: 100%; height: 100%;}
	100% { opacity: 0; width: 0%; height: 0%;}
	}
	@-o-keyframes loading {
	0% { opacity: 1; width: 100%; height: 100%;}
	99% { opacity: 0; width: 100%; height: 100%;}
	100% { opacity: 0; width: 0%; height: 0%;}
	}
	@keyframes loading {
	0% { opacity: 1; width: 100%; height: 100%;}
	99% { opacity: 0; width: 100%; height: 100%;}
	100% { opacity: 0; width: 0%; height: 0%;}
	}
.mv li {
	position: relative;
	width: 980px;
	height: 200px;
	}
.mv li p {
	position: absolute;
	left: 50px;
	top: 50px;
	z-index: 3;
	}
.mv li p img {
	width: 250px;
	height: 22px;
	}
.mv li div.dot {
	display: block;
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 100%;
	z-index: 2;
	background: url("/common/image/dot.gif")
	}
.mv li.mv1 {
	background: url("/image/mov0.png") center center no-repeat;
	background-size: 100% auto;
	}
.mv li.mv3 {
	background: url("/image/mov1.png") center center no-repeat;
	background-size: 100% auto;
	}
.mv li.mv5 {
	background: url("/image/mov2.png") center center no-repeat;
	background-size: 100% auto;
	}





.groupcompany {
	position: relative;
	margin-top: 80px;
	}

#main .groupcompany h2 {
	position: relative;
	display: block;
	margin: 0;
	padding: 0 0 5px 0;
	font-size: 14px;
	font-weight: bold;
	color: #666;
	border-bottom: 2px solid #ccc;
	max-width: 100%;
	}
#main .groupcompany h2:before {
	position: absolute;
	left: 0px;
	bottom: -2px;
	content: "";
	width: 200px;
	border-bottom: 2px solid var(--themeColor);
	}

#main .groupcompany h2 .fa {
	font-size: 20px;
	margin-right: 5px;
	color: #ddd;
	}

.groupcompany ul {
	width: 100%;
	}

.groupcompany ul:after {
	clear: both;
	display: block;
	content: "";
	}

.groupcompany div.more {
	position: absolute;
	display: block;
	width: 100px;
	height: 20px;
	right: 0px;
	top: 0px;
	}

.groupcompany div.more a {
	display: block;
	width: 100px;
	font-size: 12px;
	line-height: 1em;
	padding: .3em;
	text-align: center;
	color: white;
	background: #9B9B9B;
	border-radius: 5px;
	}

.groupcompany div.more a:hover {
	opacity: .8;
	}

.spgroupSlide {
	margin: 0;
	}

.spgroupSlide,
.spgroupSlide .bx-prev,
.spgroupSlide .bx-next {
	display: none;
	}

.banner {
	margin: 0 20px 30px 30px;
	}

.banner li {
	display: block;
	width: 300px;
	height: 100px;
	}
.banner img {
	display: block;
	width: 300px;
	height: 100px;
	}

.spbanner {
	margin: 0;
	display: none;
	}

.spbanner ul,
.spbanner .bx-prev,
.spbanner .bx-next {
	display: none;
	}


.pickup {
	display: block;
	clear: both;
	margin: 0;
	}

.pickup:after {
	display: block;
	clear: both;
	content: "";
	}

#main .pickup h2 {
	position: relative;
	display: block;
	margin: 0 0 20px 0;
	padding: 0 0 5px 0;
	font-size: 14px;
	font-weight: bold;
	color: #666;
	border-bottom: 2px solid #ccc;
	max-width: 100%;
	}
#main .pickup h2:before {
	position: absolute;
	left: 0px;
	bottom: -2px;
	content: "";
	width: 200px;
	border-bottom: 2px solid #00a0e9;
	}
#main .pickup h2 .fa {
	font-size: 24px;
	margin-right: 5px;
	color: #ddd;
	}


.pickup img {
	display: block;
	width: 300px;
	height: 100px;
	}

#main .pickup1,
#main .pickup2 {
	display: block;
	width: 300px;
	height: 100px;
	float: left;
	margin: 0 40px 0 0;
	}

#main .pickup3 {
	display: block;
	width: 300px;
	height: 100px;
	float: left;
	margin: 0;
	}


.info {
	position: relative;
	margin: 0;
	}

#main .info h2 {
	position: relative;
	display: block;
	margin: 0 0 20px 0;
	padding: 0 0 5px 0;
	font-size: 14px;
	font-weight: bold;
	color: #666;
	border-bottom: 2px solid #ccc;
	max-width: 100%;
	}
#main .info h2:before {
	position: absolute;
	left: 0px;
	bottom: -2px;
	content: "";
	width: 200px;
	border-bottom: 2px solid var(--themeColor);
	}
#main .info h2 .fa {
	font-size: 24px;
	margin-right: 5px;
	color: #ddd;
	}


.info .controls button {
	display: inline-block;
	margin: 0 5px 10px 0;
	padding: .5em 0;
	background: #eee;
	border: 0;
	color: #666;
	font-size: 12px;
	cursor: pointer;
	}

.info .controls button.active {
	color: white;
	background: #00a0e9;
	}

.info .controls button:focus {
	outline: 0 none;
	}

.info .controls button.all {
	position: absolute;
	right: 135px;
	top: 0px;
	width: 70px;
	font-size: 14px;
	padding: 2px 0;
	border-radius: 5px;
	}

.info .controls button.freebit {
	position: absolute;
	right: 55px;
	top: 0px;
	width: 70px;
	font-size: 14px;
	padding: 2px 0;
	border-radius: 5px;
	}

.info .controls button.lolist {
	position: absolute;
	right: 30px;
	top: 0px;
	width: 20px;
	height: 20px;
	margin: 0;
	padding: 0;
	background: url("/common/image/bt_list.gif") 0 0 no-repeat;
	}

.info .controls button.logrid {
	position: absolute;
	right: 30px;
	top: 0px;
	width: 20px;
	height: 20px;
	margin: 0;
	padding: 0;
	background: url("/common/image/bt_grid.gif") 0 0 no-repeat;
	}

.info .controls img.rss {
	position: absolute;
	right: 0px;
	top: 0px;
	width: 20px;
	height: 20px;
	}


.variablelist .mix,
.variablelist .gap {
	display: inline-block;
	width: 49%;
	overflow: hidden;
	vertical-align: top;
	}

.variablelist .mix {
	text-align: left;
	display: none;
	}

.variablelist .mix a {
	color: #666;
	}

.variablelist .mix a:hover {
	color: #00a0e9;
	}

.variablelist .mix img {
	display: block;
	width: 140px;
	height: 140px;
	margin: 0 auto 5px auto;
	border: 1px solid #ccc;
	box-sizing: border-box;
	}

#main .variablelist .mix h3 {
	text-align: center;
	font-weight: bold;
	font-size: 12px;
	line-height: 1.2em;
	margin: 0 0 .3em 0;
	padding: 0;
	border: 0;
	width: auto;
	}
#main .variablelist .mix h3:before {
	content: "";
	}

#main .variablelist .mix p {
	font-size: 12px;
	line-height: 1.3em;
	margin: 0 0 3em 0;
	padding: 0;
	}

#main .variablelist .mix p.date {
	display: block;
	text-align: center;
	margin: 0 0 .5em 0;
	padding: 0;
	}

.variablelist .mix {
	position: relative;
	width: 16.6%;
	min-height: 120px;
	}

.variablelist .company-icon:before{
	position: absolute;
	right: 81px;
	top: 260px;
	display: block;
	width: 70px;
	text-align: center;
	padding: .3em 0;
	font-size: .8em;
	line-height: 1em;
	border-radius: 5px 0 0 5px;
	border-right: none;
	}

.variablelist .freebit:before {
	content: "freebit";
	color: white;
	background: #9B9B9B;
	border: 1px solid #9B9B9B;
	}

.variablelist .group:before {
	content: "group";
	color: white;
	background: #9B9B9B;
	border: 1px solid #9B9B9B;
	}

.variablelist .company-icon:after{
	position: absolute;
	right: 11px;
	top: 260px;
	display: block;
	width: 70px;
	text-align: center;
	padding: .3em 0;
	color: #999;
	font-size: .8em;
	line-height: 1em;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 0 5px 5px 0;
	border-left: none;
	}

.variablelist .pr:after {
	content: "PR";
	}

.variablelist .ir:after {
	content: "IR";
	}

.variablelist .sr:after {
	content: "SERVICE";
	}
.variablelist.grid .company-icon:before,
.variablelist.grid .company-icon:after{
    top:auto;
    bottom:0;
}
.variablelist.grid .mix {
    padding-bottom:1.5em;
    margin-bottom:10px;
}

#main .variablelist.list .mix,
#main .variablelist.list .gap {
	position: relative;
	width: 49%;
	}

#main .variablelist.list .mix:before {
	padding-top: 0px;
	}

#main .variablelist.list .mix a {
	display: block;
	margin: 0 0 20px 0;
	padding: 0;
	}

#main .variablelist.list .mix img {
	position: absolute;
	left: 1px;
	top: 0px;
	display: block;
	width: 100px;
	height: 100px;
	box-sizing: border-box;
	}

#main .variablelist.list .mix h3 {
	display: block;
	text-align: left;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.3em;
	margin: 0px 0 5px 115px !important;
	padding: 10px 0 0 0;
	width: auto;
	}
#main .variablelist.list .mix h3:before {
	content: "";
	margin: 0;
	}

#main .variablelist.list .mix p {
	display: block;
	font-size: 12px;
	line-height: 1.3em;
	margin: 0 0 10px 115px !important;
	}

#main .variablelist.list .mix p.date {
	margin: 10px 0 0 115px;
	font-size: 12px;
	line-height: 1 !important;
	text-align: left;
	}

#main .variablelist.list .company-icon:before{
	position: absolute;
	right: 70px;
	top: 0px;
	display: block;
	width: 70px;
	text-align: center;
	padding: .3em 0;
	font-size: .8em;
	line-height: 1em;
	border-radius: 5px 0 0 5px;
	border-right: none;
	}

#main .variablelist.list .company-icon:after{
	position: absolute;
	right: 0px;
	top: 0px;
	display: block;
	width: 70px;
	text-align: center;
	padding: .3em 0;
	color: #999;
	font-size: .8em;
	line-height: 1em;
	border: 1px solid #ccc;
	border-radius: 0 5px 5px 0;
	border-left: none;
	}

.variablelist {
	position: relative;
	}

.variablelist .pager {
	position: absolute;
	bottom: 0px;
	display: block;
	padding: 30px 0;
	width: 100%;
	clear: both;
	cursor: pointer;
	background: #fff;
	}

.variablelist .pager span {
	display: block;
	width: 184px;
	height: 27px;
	margin: 0 auto;
	padding: 7px 80px;
	background: url("/common/image/arrow_bottom.png") center center no-repeat var(--themeColor);
	border-radius: 5px;
	}

.variablelist .pager:hover span {
	opacity: .5;
	}

/* 2021年始用 */
section#newyear{
	width: 100%;
	height: 360px;
	background:url("/image/2021_newyear_bk.png");
  	background-size: cover;
  	background-position: center top;
	margin:0 0 20px;
	padding:0;
	text-align: center;
}

/* 2025.07.24 RoadMap bnn */

section#roadmap {
	width: 1000px;
	height: auto;
	margin: 0 auto 16px;
}

.roadmap-bnn {
  transition: opacity 0.3s ease;
}

.roadmap-bnn:hover {
  opacity: 0.8;
}

/* メインバナー（2022/04/01】 */
.banner_container {
	max-width: 1000px;
	margin: 0 auto;
	overflow: hidden; }
	.banner_container .inner {
	  display: flex;
	  height: 300px;
	  width: 108%;
	  transform: translateX(-50%);
	  position: relative;
	  left: 50%; }
	  .banner_container .inner__child {
		flex: 1;
		transform: skew(15deg);
		overflow: hidden; }
		.banner_container .inner__child a {
		  display: inline-block;
		  width: 100%;
		  height: 100%; }
		  .banner_container .inner__child a:hover {
			opacity: .5; }
  .banner_container .inner .img01{
		 flex-basis: 23%;
		 background-size: 100%;
  }
  .banner_container .inner .img02{
		 flex-basis: 18%;
  }
  .banner_container .inner .img03{
		 flex-basis: 18%;
  }
  .banner_container .inner .img04{
		 flex-basis: 18%;
  }
  .banner_container .inner .img05{
		 flex-basis: 23%;
  }

  .banner_container .inner .bg1 {
	background:  url("/common/image/banner_img01.png");}
  .banner_container .inner .bg2 {
	background:  url("/common/image/banner_img02.png");}
  .banner_container .inner .bg3 {
	background:  url("/common/image/banner_img03.png");}
  .banner_container .inner .bg4 {
	background:  url("/common/image/banner_img04.png");}
  .banner_container .inner .bg5 {
	  background:  url("/common/image/banner_img05.png");}
  .banner_container .inner .bg6 {
	  background:  url("/common/image/banner_img06.png");}
  .banner_container .inner .bg7 {
	  background:  url("/common/image/banner_img07.png");}


/* 1024px以上 */



/* 374px以下 */
@media screen and (max-width: 374px) {
    #main .variablelist.list .mix p.date {
        margin-bottom: 24px !important;
    }
    #main .variablelist.list .freebit:before,
    #main .variablelist.list .group:before,
    #main .variablelist.list .company-icon:after {
        top: 15px;
    }
    .variablelist.list .group::before {
        right: 0;
        left: 115px;
    }
    .variablelist.list .company-icon::after {
        right: 0;
        left: 170px
    }
}

/* 768〜1023px */
@media screen and (min-width: 768px) and (max-width: 1023px) {

section#video_slide {
	display: none;
	}

#video_area {
	display: none;
	}

.mv {
	display: block;
	position: relative;
	width: 100%;
	height: 200px;
	margin: 0 0 20px 0;
	}

.mv .loading {
	position: absolute;
	left: 0px;
	top: 0px;
	width: 100%;
	height: 200px;
	}

.mv li {
	width: 100%;
	}

.mv li.mv2 img {
	width: 100%;
	height: 100%;
	}
.mv li.mv4 img {
	width: 100%;
	height: 100%;
	}
.mv li.mv6 img {
	width: 100%;
	height: 100%;
	}

.groupcompany {
	margin: 0;
	}

.groupcompany ul li {
	width: unset;
	height: unset;
	}

li.infra {
	padding-right: 20px;
}

li.life {
	padding-right: 20px;
	padding-left: 10px;
}

li.dx {
	padding-left: 10px;
}

p.segment-img img {
	width: 180px;
}

.bx-wrapper .bx-controls-direction a {
	position: absolute;
	top: 0;
	outline: 0;
	width: 20px;
	height: 70px;
	z-index: 9999;
	}

.banner {
	margin: 0 20px 20px 27px;
	}

.banner li {
	display: block;
	width: 210px;
	height: 70px;
	}

.banner img {
	display: block;
	width: 210px;
	height: 70px;
	}


.variablelist .mix img {
	width: 100px;
	height: 100px;
	}

#main .variablelist .mix h3 {
	font-weight: bold;
	font-size: 12px;
	line-height: 1.2em;
	margin: 0 0 .3em 0;
	padding: 0;
	border: 0;
	width: auto;
	}
#main .variablelist .mix h3:before {
	content: "";
	}

#main .variablelist .mix p.date {
	margin: 0 0 .3em 0;
	}

.variablelist .freebit:before,
.variablelist .group:before {
	position: absolute;
	right: 58px;
	top: 260px;
	display: block;
	width: 58px;
	text-align: center;
	padding: .2em 0;
	font-size: .7em;
	line-height: 1em;
	border-radius: 5px 0 0 5px;
	border-right: none;
	}

.variablelist .company-icon:after{
	position: absolute;
	right: 0px;
	top: 260px;
	display: block;
	width: 58px;
	text-align: center;
	padding: .2em 0;
	color: #999;
	font-size: .7em;
	line-height: 1em;
	background: #fff;
	border: 1px solid #ccc;
	border-radius: 0 5px 5px 0;
	border-left: none;
	}

#main .variablelist.list .mix p.date {
	margin: 3px 0 0 115px !important;
	font-size: 12px;
	line-height: 1 !important;
	text-align: left;
	}

#main .variablelist.list .freebit:before,
#main .variablelist.list .group:before {
	right: 60px;
	width: 60px;
	padding: .2em 0;
	font-size: .7em;
	}

#main .variablelist.list .company-icon:after{
	width: 60px;
	padding: .2em 0;
	font-size: .7em;
	}

#main .pickup {
	display: block;
	clear: both;
	margin: 0 0 10px 0;
	}

#main .pickup img {
	display: block;
	width: 220px;
	height: 73px;
	}

#main p.pickup1,
#main p.pickup2 {
	display: block;
	width: 220px;
	height: 73px;
	float: left;
	margin: 0 20px 0 0 !important;
	}

#main p.pickup3 {
	display: block;
	width: 220px;
	height: 73px;
	float: left;
	margin: 0;
	}

/* 2020年始用 */
section#newyear{
	width: 100%;
	height: auto;
	margin:0 0 20px;
	padding:0;
}
section#newyear img{
	width: 100%;
	height: auto;
}
}/* 768〜1023px */






/* 767px以下 */
@media screen and (max-width: 767px) {

.pc-view {
	display: none;
}

.sp-view {
	display: block;
}

li.infra {
	padding-right: 0;
}

p.segment-img {
	padding-top: 20px;
}

p.segment-img img {
	margin: auto;
}

.segment-company {
	height: auto;
}

ul.segment-company ul li,
ul.segment-service ul li {
	text-align: -webkit-center;
}

li.life,
li.dx {
	border-top: 1px solid #ccc;
	margin-top: 40px;
	padding-top: 30px;
}

li.life {
	padding-right: 0;
	padding-left: 0;
}

li.dx {
	padding-left: 0;
}

.segment-box {
	margin-bottom: 100px !important;
}

footer .etc a {
	color: #666;
}

footer address {
	color: #666;
}

section#video_slide {
	display: none;
	}

#video_area {
	display: none;
	}

.mv {
	display: block;
	height: 300px;
	margin: 0 0 30px 0;
	}

.mv .bx-wrapper .bx-prev {
	top: 80px;
	}

.mv .bx-wrapper .bx-next {
	top: 80px;
	}

.mv {
	width: 100%;
	height: 200px;
	}

.mv .loading {
	display: none;
	}

.mv li {
	width: 100%;
	}

.mv li p {
	left: 29px;
	top: 30px;
	}

.mv li.mv1 {
	background: url("/image/mov0.png") center center no-repeat;
	background-size: auto 100%;
	}
.mv li.mv3 {
	background: url("/image/mov1.png") center center no-repeat;
	background-size: auto 100%;
	}
.mv li.mv5 {
	background: url("/image/mov2.png") center center no-repeat;
	background-size: auto 100%;
	}

.mv li.mv2 img {
	width: 100%;
	height: 100%;
	}
.mv li.mv4 img {
	width: 100%;
	height: 100%;
	}
.mv li.mv6 img {
	width: 100%;
	height: 100%;
	}

.groupcompany ul {
	display: block;
	width: 100%;
	margin-bottom: 10px;
	}

.groupcompany ul:after {
	clear: both;
	display: block;
	content: "";
	}

.groupcompany ul li {
	/* width: 20%; */
	height: auto !important;
	}

.groupcompany ul li img {
	display: block;
	/* width: 100%; */
	height: auto;
	}

.groupcompany div.more {
	position: absolute;
	display: block;
	width: 100px;
	right: 0px;
	top: 0px;
	}

.groupcompany div.more a {
	display: block;
	width: 100px;
	font-size: 12px;
	line-height: 1em;
	padding: .3em;
	text-align: center;
	color: white;
	background: #9B9B9B;
	border-radius: 5px;
	}

.groupSlide,
.spgroupSlide .bx-prev,
.spgroupSlide .bx-next {
	display: none;
	}

.spgroupSlide {
	display: block;
	width: 100%;
	height: auto;
	padding: 0;
	}

.spgroupSlide,
.spgroupSlide .bx-prev,
.spgroupSlide .bx-next {
	display: block;
	}

.spgroupSlide li {
	display: block;
	padding: 0;
	width: 100%;
	height: auto;
	}

.spgroupSlide img {
	display: block;
	width: 100%;
	height: auto;
	}


.banner {
	display: block;
	height: 0;
	}

.banner ul,
.banner .bx-prev,
.banner .bx-next {
	display: none;
	}

.spbanner {
	display: block;
	width: 100%;
	height: auto;
	margin: 0 0 20px 0;
	padding: 0;
	}
.spbanner img{
width:100%;
margin-bottom: 30px;
}

.spbanner .bx-prev,
.spbanner .bx-next {
	display: block;
	}

.spbanner ul {
	display: block;
	}

.spbanner li {
	display: block;
	padding: 0;
	width: 100%;
	height: auto;
	}


.bx-wrapper .bx-prev {
	left: -0px;
	background: url("/common/image/arrow_white_l.png") center center no-repeat var(--themeColor);
	opacity: .3;
	text-indent: 100%;
	overflow: hidden;
	}

.bx-wrapper .bx-next {
	right: -0px;
	background: url("/common/image/arrow_white_r.png") center center no-repeat var(--themeColor);
	opacity: .3;
	text-indent: 100%;
	overflow: hidden;
	}

.bx-wrapper .bx-prev:hover,
.bx-wrapper .bx-next:hover {
	opacity: .2;
	}

.bx-wrapper .bx-controls-direction a {
	position: absolute;
	top: 50%;
	margin-top: -15px;
	outline: 0;
	width: 30px;
	height: 30px;
	z-index: 10;
	}

.info h2 {
	margin: 0 0 20px 0;
	}

.info .controls button {
	display: inline-block;
	margin: 0 0 10px 0;
	}

.info .controls button.all {
	right: 80px;
	}

.info .controls button.freebit {
	right: 0px;
	}

.info .controls button.lolist,
.info .controls button.logrid,
.info .controls img.rss {
	display: none;
	}

#main .variablelist.list .mix,
#main .variablelist.list .gap {
	width: 100%;
	}

#main .variablelist.list .mix p.date {
	margin: 3px 0 0 115px;
	font-size: 12px;
	line-height: 1 !important;
	text-align: left;
	}

#main .variablelist.list .freebit:before,
#main .variablelist.list .group:before {
	right: 55px;
	width: 55px;
	padding: .2em 0;
	font-size: .7em;
	}

#main .variablelist.list .company-icon:after{
	width: 55px;
	padding: .2em 0;
	font-size: .7em;
	}

#main .pickup {
	display: block;
	clear: both;
	margin: 0 0 30px 0;
	}

#main .pickup h2 {
	display: none;
	}

#main .pickup1 {
	width: 100%;
	height: auto;
	margin: 0 0 10px 0;
	}

#main .pickup1 img {
	width: 100%;
	height: auto;
	}

#main .pickup2,
#main .pickup3 {
	display: none;
	}

section#newyear{
	width: 100%;
	height: auto;
	margin:0 0 20px;
	padding:0;
}
section#newyear img{
	width: 100%;
	height: auto;
}


/* メインバナー（2022/04/01】 */

.sp-main-banner {
	display: flex;
	justify-content: center;
	align-items: inherit;
	width: 100%;
}

.sp-main-banner ul.sp-main-banner-right {
	width: 44%;
}

.sp-main-banner ul.sp-main-banner-left {
	width: 56%;
}

.sp-main-banner ul li {
	line-height: 0;
}

.sp-main-banner ul li img {
	width: 100%;
}

section#roadmap {
	width: 100%;
	margin: 0 auto 16px;
}

section#roadmap img {
	width: 100%;
	height: auto;
}


}/* 767px以下 */
