/* TORQUE G04 CSS*/

li{
	list-style:none;
}
figure{
	margin: 0;
}
ol,ul{
	padding: 0;
}

.p_box p{text-align: left;}


.flexbox{
	display: flex;
	display: -ms-flexbox;
	flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	justify-content: space-between;
	-ms-flex-pack:justify;
	width: 100%;
	padding: 0;
	margin-bottom: 80px;
}
.flexbox p{
	text-align: left;
}

.img_box{
  margin-bottom: 1em;
  margin-left: 1em;
}
/* ******************************************************************************************** */
h3{
  margin-bottom: 15px;
  padding-bottom:6px;
	font-size: 20px;
  border-bottom: 2px solid #e8e8e8;
}

.dsp_pc{display: block;}
.dsp_sp{display: none;}
.func4 .dsp_pc{margin-bottom: 60px;}
.va-middle{vertical-align: middle;}

#products_content p.cap{
  font-size:90%;
  text-align: left;
}

#products_content p.rnote{
  text-align: right;
  font-size:small;
}

.flexbox .flex-1 {
  flex: 1 1 0%;
  -ms-flex: 1 1 0%;
  margin-bottom:60px;
}
.flexbox .flex-2 {
  flex: 2 1 0%;
  -ms-flex: 2 1 0%;
  margin-bottom:60px;
}
.flexbox .flex-3 {
  flex: 3 1 0%;
  -ms-flex: 3 1 0%;
  margin-bottom:60px;
}
.flexbox .flex-4 {
  flex: 4 1 0%;
  -ms-flex: 4 1 0%;
  margin-bottom:60px;
}

.flexbox .flex-col2{
	flex: 0 1 49%;
	-ms-flex: 0 1 49%;
  position: relative;
  margin-bottom:60px;
}
.flexbox .flex-col3{
	flex: 0 1 31%;
	-ms-flex: 0 1 31%;
  position: relative;
  margin-bottom:60px;
}

.boxlayout img{
  position: absolute;
  left:0;
  bottom:0;
}

.flexbox.aerbox li{
  margin:0;
  padding:0;
  text-align: left;
}
.flexbox.aerbox li.flex-1{
  margin-bottom:20px;
  text-align: left;
}
.flexbox.aerbox li.flex-3{
  padding:5px 20px;
}

.func1 .sct2{
	margin-bottom: 80px;
}
.func1 .sct2 .flexbox{
	display: flex;
	display: -ms-flexbox;
	flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	justify-content:flex-start;
	-ms-flex-pack:justify;
	width: 100%;
	padding: 0;
	margin-bottom: 40px;
}
.func1 .sct2 .flexbox li{
  padding:10px 1%;
	flex: 0 1 25%;
	-ms-flex: 0 1 23%;
}
#products_content.func1 .sct2 h3{
  margin-bottom:60px;
}
#products_content.func1 .sct2 .flexbox li h4{
  text-align: center;
  font-weight: bold;
}
#products_content.func1 .sct2 p span{
  color:#E60012;
  font-size:110%;
  font-weight: bold;
}
.func1 .sct2 .flexbox li .ico-cate1{background-color: #B7DEE8;}
.func1 .sct2 .flexbox li .ico-cate2{background-color: #B9CDE5;}
.func1 .sct2 .flexbox li .ico-cate3{background-color: #FCD5B5;}
.func1 .sct2 .flexbox li .ico-cate4{background-color: #E6B9B8;}
.func1 .sct2 .flexbox li .ico-cate5{background-color: #FFC000;}
.func1 .sct2 .flexbox li .ico-cate6{background-color: #8EB4E3;}
.func1 .sct2 .flexbox li .ico-cate7{background-color: #C4BD97;}
.func1 .sct2 .flexbox li .ico-cate8{background-color: #D7E4BD;}
.func1 .sct2 .flexbox li .ico-cate9{background-color: #CCC1DA;}
.func1 .sct2 .flexbox li .ico-cate10{background-color: #FFFF00;}

#products_content.func1 .sct2 .flexbox li .ico-name{
  text-align: center;
  font-weight: bold;
}
#products_content.func1 .sct2 .flexbox li .ico-text{
  text-align: left;
}

.func2 .boxlayout{
  padding-bottom:46%;
  margin-bottom: 40px;
}


.func3 .boxlayout{
  padding-bottom:50%;
  margin-bottom: 40px;
}
.func4 .boxlayout{
  padding-bottom:50%;
  margin-bottom: 40px;
}
.func5 .boxlayout{
  padding-bottom:80%;
  margin-bottom: 40px;
}

.func5 .sct1,
.func5 .sct2,
.func5 .sct1 .flexbox{
  margin-bottom: 0;
}
.func5 .sct1 .flexbox .flex-1{
  margin-bottom: 0;
  padding:0 5px 10px 0;
}
.func5 .sct2 .flex-1{
  padding:0 0 10px 10px;
}
#products_content.func5 .ols-box p{
  margin-bottom:10px;
}
#products_content.func5 .ols-box p.txBtn{
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
	-ms-flex-pack:justify;
  align-items: center;
  height: 32px;
}
.boxlayout .ols-box{
  position: absolute;
  left:0;
  bottom:0;
}
.boxlayout .ols-box img{
  width:100%;
  height:auto;
  position:static;
  left:auto;
  bottom:auto;
}




.g04 .g04btn{
	background: #FFF;
	display: block;
	color: inherit;
	text-decoration: none;
	margin-top:10px;
	border-radius:5px;
	padding: 5px 20px;
	position: relative;
  text-align: right;
}
.g04 .g04btn:hover {
    -webkit-transition: 0.5s;
    transition: 0.5s;
    opacity: 0.5;
}
.g04 .g04btn::after{
	display: inline-block;
	content: "";
	width: 8px;
	height: 8px;
	border-top: 1px solid;
	border-right: 1px solid;
	position: absolute;
	right: 5px;
	transform: rotate(45deg);
	top: 13px;
}

.block {
    margin-bottom: 50px;
    text-align: center;
}
.blockText {
    margin-bottom: 40px;
    font-size: 128.57%;
}
.mb100 {
    margin-bottom: 100px !important;
}
.btnOnlineShop {
    position: relative;
    display: inline-block;
    min-width: 680px;
    padding: 15px 30px;
    border: 4px solid #000;
    border-radius: 15px;
    color: #000 !important;
    font-size: 142.85%;
  text-decoration: none;
}
.btnOnlineShop:before {
    display: inline-block;
    content: url(/prdct/telecom/office/phone/common/img/ico_cart01.png);
    margin-right: 30px;
    vertical-align: middle;
}
.btnOnlineShop:after {
    position: absolute;
    right: 10px;
    bottom: 5px;
    content: url(/prdct/telecom/office/phone/common/img/ico_blank.png);
}

.cautionBlock {
    padding: 20px 30px;
    border: 4px solid #dcdcdc;
    border-radius: 20px;
    text-align: left;
}
.cautionInner {
    display: table;
    table-layout: fixed;
    width: 100%;
}
.cautionTitle {
    display: table-cell;
    width: 170px;
    border-right: 2px solid #dcdcdc;
    vertical-align: middle;
    font-size: 157%;
}
.cautionTitle img {
    margin-right: 10px;
    vertical-align: middle;
}
.cautionBody {
    display: table-cell;
    padding-left: 30px;
    vertical-align: middle;
    font-size: 114%;
}
.cautionText {
    color: #c11a1a;
    text-align: left;
}
/* ******************************************************************************************** */



/*--------------top-------------------------------------------------------------------------------------------------------------------*/
.g04 .flexbox.caselist li{
	flex: 0 1 48%;
	-ms-flex: 0 1 48%;
  margin-bottom:40px;
  text-align: left;
}
.g04 .flexbox.caselist figcaption{
	background: #fff;
	color:#333;
	padding: 5px ;
}
/*
.g04 .g04btn{
	background: #FFF;
	display: block;
	color: inherit;
	text-decoration: none;
	margin-top:10px;
	border-radius:5px;
	padding: 5px 20px;
	position: relative;
}
.g04 .g04btn:hover {
    -webkit-transition: 0.5s;
    transition: 0.5s;
    opacity: 0.5;
}
.g04 .g04btn::before{
	display: inline-block;
	content: "";
	width: 8px;
	height: 8px;
	border-top: 1px solid;
	border-right: 1px solid;
	position: absolute;
	left: 5px;
	transform: rotate(45deg);
	top: 13px;
}
*/
.newsList {
    max-width: 880px;
    margin: 0 auto;
    margin-bottom: 110px;
    text-align: center;
}
.blockTitle {
    margin-bottom: 40px;
    /* font-size: 185.7%; */
}
.blockTitle h2 {
    font-size: 26px;
    font-weight: normal;
}




.infoBlock {
    max-width: 880px;
    margin: auto;
    padding: 30px;
    border: 2px solid #dcdcdc;
    border-radius: 10px;
    text-align: left;
    margin-bottom: 40px;
}
.infoInner {
    display: table;
    table-layout: fixed;
    width: 100%;
}
.infoTitle {
    display: table-cell;
    width: 300px;
    border-right: 2px solid #dcdcdc;
    vertical-align: middle;
    font-size: 157%;
    text-align: center;
}
.infoBody {
    display: table-cell;
    padding-left: 40px;
    vertical-align: middle;
    font-size: 114%;
}
.infoBody ul {
    margin: 0;
    padding: 0;
}
.infoBody li {
    margin: 8px 0;
    list-style: none;
}
.infoBody a {
    color: inherit;
    text-decoration: underline;
}



/*--------------spec-------------------------------------------------------------------------------------------------------------------*/
.g04.spec li,
.g04.spec p{
	text-align: left;
}
.g04.spec p {
	margin-top: 30px;
}
.g04.spec h4{
	text-align: left;
	margin: 30px 0 10px;
}
.g04.spec .flexbox{
	justify-content: center;
	-ms-flex-pack:justify;
	padding: 0;
}
.g04.spec .small{
	font-size:14px;
	margin-bottom: 60px;
}
.g04.spec ol.note .marker {
    display: block;
    float: left;
    margin-left: -2.5em;
    white-space: nowrap;
    width: 2.5em;
    _margin-left: -1.25em;
}
.g04.spec ol.note li {
    list-style: none;
    margin-left: 2.5em;
		font-size: 14px;
}
p.note, ul.note li {
    list-style: none;
    margin-left: 0;
    padding-left: 1em;
    text-indent: -1em;
}
/*--------------catalog-------------------------------------------------------------------------------------------------------------------*/
.catalog .img_box {
	margin:0 auto;
	margin-bottom: 40px;
	text-align: center;
}
.catalog iframe{
	width: 948px;
    height: 533px;
}
.catalog .pdf_link {
    text-decoration: none;
    position: relative;
    display: block;
    max-width: 350px;
    width: 100%;
    padding: 20px 40px;
    background: #eaeaea;
    color: #000 !important;
    letter-spacing: 0.1em;
    margin-bottom: 20px;
	margin: 0 auto
}
.catalog .pdf_link:after {
    background:url(/prdct/telecom/consumer/common/img/ico_download_pdf.png) no-repeat;
    position: absolute;
    right: 20px;
    top: 0;
    bottom: 0;
    margin: auto;
    content: "";
    display: block;
    width: 45px;
    height: 39px;
}

.catalog small {
    text-align: left;
    display: inline-block;
    margin-top: 20px;
}
.catalog .flex_2col > div {
  width: 48%
}




/* ------------------------------------------------------------------------------スマホ------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------スマホ------------------------------------------------------------------------------ */
/* ------------------------------------------------------------------------------スマホ------------------------------------------------------------------------------ */
@media (max-width: 767px) {
.g04 .flexbox {
	display: block;
  padding: 0 10px;
	text-align: center;
}
	.g04 .flexbox li{
		margin-bottom: 30px;
	}

/* ******************************************************************************************** */
.dsp_pc{display: none;}
.dsp_sp{display: block;}
.func4 .dsp_sp{margin-bottom: 60px;}

#products_content p.cap{
  text-align:center;
}

.flexbox .flex-1 {
  margin-bottom:30px;
}
.flexbox .flex-2 {
  margin-bottom:30px;
}
.flexbox .flex-3 {
  margin-bottom:30px;
}
.flexbox .flex-4 {
  margin-bottom:30px;
}

.flexbox .flex-col2{
  margin-bottom:30px;
}
.flexbox .flex-col3{
  margin-bottom:30px;
}

.boxlayout img{
  position:static;
  left:auto;
  bottom:auto;
}

.top_kv{
  text-align: center;
}

.flexbox.aerbox li{
  margin-bottom: 0px;
}
.flexbox.aerbox li.flex-1{
  margin-bottom:20px;
  text-align: center;
}
.flexbox.aerbox li.flex-3{
  margin-bottom: 30px;
  padding:0px 10px;
}

#products_content.func1 .sct2{
	margin-bottom: 60px;
}
.func1 .sct2 .flexbox{
	display: -ms-flexbox;
	display: flex;
	flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	justify-content:flex-start;
	-ms-flex-pack:justify;
	width: 100%;
	padding: 0;
	margin-bottom: 0px;
}
.func1 .sct2 .flexbox li{
  padding: 10px 1%;
	flex: 0 1 50%;
	-ms-flex: 0 1 48%;
}
.func1 .sct2 .flexbox li img{}

.func2 .boxlayout{
  padding-bottom:0;
  margin-bottom: 40px;
}
.func3 .boxlayout{
  padding-bottom:0;
  margin-bottom: 40px;
}
.func4 .boxlayout{
  padding-bottom:0;
  margin-bottom: 40px;
}
.func5 .boxlayout{
  padding-bottom:0;
  margin-bottom: 0px;
}

.func5 .sct1{
  margin-bottom: 80px;
}
.func5 .sct2 p{
}
#products_content.func5 .ols-box{
  margin-bottom:80px;
  position:static;
  left:auto;
  bottom:auto;
}
#products_content.func5 .sct2 .ols-box{
  margin-bottom:30px;
  position:static;
  left:auto;
  bottom:auto;
}
#products_content.func5 .ols-box p{
  margin-bottom:10px;
}
#products_content.func5 .ols-box p.txBtn{
  display: -ms-flexbox;
  display: flex;
  justify-content: center;
	-ms-flex-pack:justify;
  align-items: center;
  height: 32px;
}


.block {
    margin-bottom: 40px;
    text-align: center;
}
.blockText {
    margin-bottom: 15px;
}
.inner {
    margin: 0 10px;
}
.btnOnlineShop {
    position: relative;
    display: inline-block;
    min-width:inherit;
    width:90%;
    padding: 15px 30px;
    border: 4px solid #000;
    border-radius: 15px;
    color: #000 !important;
    font-size: 142.85%;
  text-decoration: none;
}

/* ******************************************************************************************** */


	.g04 .caselist img{
		width: 100%;
	}
	.blockTitle {
    margin-bottom: 15px;
}
	.blockTitle h2 {
    font-size: 16px;
	font-weight: bold;
}
	.infoBlock {
    margin: auto;
    padding: 15px 30px;
    border: 2px solid #dcdcdc;
    border-radius: 10px;
    text-align: left;
    margin: 0 10px 20px;
}
	.newsList {
    margin-bottom: 60px;
    text-align: center;
}
	.infoTitle {
    margin-bottom: 15px;
    padding-bottom: 10px;
    padding-bottom: 10px;
    border-bottom: 2px solid #dcdcdc;
    text-align: center;
	border-right: none;
	display: block;
		width: 100%;
		font-size: 16px;

}
	.infoBody {
    display: block;
    padding-left: 0;
    font-size: 12px;
    text-align: left;
}



/*	spec*/
	.g04.spec .small{
	padding: 0 10px;
}

.catalog .pdf_link {

    text-align: center;
}
.catalog .pdf_link:after {
    right: 10px;
}
	.catalog .sec2{
		margin-top: 50px;
  }

.catalog .flex.flex_2col {
  display: block;
}
.catalog .flex_2col > div {
  width: 100%
}
.catalog .flex_2col > div:nth-of-type(n+2) {
  margin-top: 10%;
}

.video_container{
position: relative;
padding-bottom: 56.25%;
height: 0;
overflow: hidden;
}
.video_container iframe {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.img_box{
  width: 30%;
  margin-left: 0;
}

}
@media(max-width:470px){
	#products_content.func1 .func1box li:nth-last-of-type(2) .sup {
    top: 8px;
    width: 60%;
    text-align: right;
}

}

@media (max-width: 767px) {
.center{
  margin: 0 40% 0 40%;
}
}

.btnOnlineShop:after {
    content: "\EA08";
    font-family: "template-iconfont";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    vertical-align: middle;
    font-style: normal;
    font-variant: normal;
    font-weight: normal;
    line-height: 1;
    text-decoration: none;
    text-transform: none;
    speak: none;
}

.bottom_contact-support .bottom_contact-support-wrap h3 {
	border-bottom: none;
	margin-bottom: 0;
	padding-bottom: 0;
}