@charset "utf-8";
/* ==============================
	無線機ラインナップ
============================== */
.content_area{
	max-width:1240px;
	margin:0 auto;
	padding:0 20px 55px;
	box-sizing:border-box;
}

/* タブ */
.lineup_tab{
	display:flex;
	align-items:flex-end;
	gap:10px;
	margin:0px 0px 36px;
	padding:0px;
	border-bottom:1px solid #212121;
	list-style:none;
}
.tab_item{
	list-style:none;
	margin:0;
}
.tab_item:first-child{
	margin:0 0 0 20px;
}
.tab_link{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	min-width:220px;
	height:52px;
	padding:2px 24px 0;
	border:none;
	background:#E8E8E8;
	color:#999;
	font-size:1.5rem;
	font-weight:500;
	line-height:2.1rem;
	cursor:pointer;
	box-sizing:border-box;
	transition:background-color 0.3s, color 0.3s, border-color 0.3s;
}
.active .tab_link{
	top:1px;
	background:#fff;
	color:#212121;
	border:1px solid #212121;
	border-bottom-color:#fff;
}
.tab_link:hover{
	background:#D8D8D8;
}

/* タブ切り替え */
.lineup_area{
	display:none;
}
.lineup_area.is-active{
	display:block;
}

/* 通信距離/種類リスト */
.distance_list{
	margin:0 0 80px;
	padding:15px 0 0 10px;
}
.distance_box{
	display:grid;
	grid-template-columns:224px 34px 1fr;
	align-items:start;
	column-gap:16px;
	margin-bottom:12px;
}
.distance_box:last-child{
	margin-bottom:0;
}
.distance_head{
	grid-column:1;
	display:grid;
	grid-template-columns:auto 1fr;
	column-gap:12px;
	margin:0;
	font-size:1.8rem;
	font-weight:500;
	line-height:2.6rem;
	color:#212121;
	white-space:nowrap;
}
.distance_box::before{
	content:"：";
	grid-column:2;
	grid-row:1;
	font-size:1.8rem;
	font-weight:500;
	line-height:2.6rem;
	color:#212121;
}
.distance_items{
	grid-column:3;
	display:grid;
	grid-template-columns:repeat(3, minmax(0, 1fr));
	column-gap:30px;
	row-gap:0;
	margin:0;
	padding:0;
	list-style:none;
}
.distance_items li{
	list-style:none;
	margin:0;
}
.distance_items a{
	position:relative;
	display:block;
	padding:0 28px 15px 0;
	border-bottom:1px solid #E2E7EC;
	color:#212121;
	font-size:1.5rem;
	line-height:2.1rem;
	text-decoration:none;
	box-sizing:border-box;
	transition:color 0.3s, border-color 0.3s;
}
.distance_items a span{
	display:block;
	overflow:hidden;
	text-overflow:ellipsis;
	white-space:nowrap;
}
.distance_items a::after{
	content:"";
	position:absolute;
	top:36%;
	right:10px;
	transform:translateY(-50%);
	width:15px;
	height:10px;
	background:url(/img/common/arrow_b_blue.svg) no-repeat center;
}
.distance_items a:hover{
	color:#0440B9;
	border-color:#0440B9;
}

/* 製品カテゴリ */
.kinds_list{
	margin-top:0;
}
.kinds_box{
	margin-bottom:78px;
}
.kinds_box h2{
	position:relative;
	margin:0 0 12px;
	padding-top:40px;
	font-size:2.4rem;
	font-weight:bold;
	line-height:3.5rem;
	color:#212121;
	border-top:1px solid #8E9194;
}
.kinds_box h2::before{
	content:"";
	position:absolute;
	left:0;
	top:0;
	width:70px;
	height:4px;
	background:#0440B9;
}
.kinds_desc{
	margin:0 0 38px;
	font-size:1.5rem;
	line-height:2.7rem;
}
.kinds_items{
	display:grid;
	grid-template-columns:repeat(5, 1fr);
	gap:48px 10px;
	margin:0;
	padding:0;
	list-style:none;
}
.kinds_items li{
	list-style:none;
	margin-bottom:0;
}
.kinds_items a{
	display:block;
	color:#212121;
	text-align:center;
	text-decoration:none;
}
.kinds_img{
	display:flex;
	align-items:center;
	justify-content:center;
	aspect-ratio:232 / 154;
	margin-bottom:8px;
	border:1px solid #E2E7EC;
	background:#fff;
	box-sizing:border-box;
	overflow:hidden;
	transition:border-color 0.3s;
}
.kinds_img img{
	display:block;
	width:74%;
	height:74%;
	object-fit:contain;
}
.kinds_items p{
    display: inline;
    margin: 0;
    font-size: 1.5rem;
    line-height: 2.1rem;
    word-break: break-all;
    color: #212121;
    text-decoration-line: underline;
    text-decoration-color: currentColor;
    text-decoration-thickness: 1px;
    text-underline-offset: 3px;
    transition: color 0.3s, text-decoration-thickness 0.3s;
}
.kinds_items a:hover .kinds_img{
    border-color: #0440B9;
}
.kinds_items a:hover p{
    color: #0440B9;
    text-decoration-thickness: 3px;
}

/* メーカーナビ */
.maker_nav_list{
	position:relative;
	display:grid;
	grid-template-columns:repeat(5, 1fr);
	gap:38px 10px;
	margin:0 0 57px;
	padding:58px 0 70px;
	list-style:none;
}
.maker_nav_list::before{
	content:"お取り扱いメーカー一覧";
	position:absolute;
	left:0;
	top:15px;
	font-size:1.8rem;
	font-weight:500;
	line-height:2.6rem;
}
.maker_nav_list::after{
	content:"：";
	position:absolute;
	left:240px;
	top:15px;
	font-size:1.8rem;
	font-weight:500;
	line-height:2.6rem;
}
.maker_nav_list li{
	list-style:none;
	margin-bottom:0;
}
.maker_nav_list a{
	position:relative;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:flex-start;
	gap:12px;
	color:#212121;
	padding-bottom:30px;
	text-decoration:none;
}
.maker_nav_list a::after{
	content:"";
	position:absolute;
	left:50%;
    bottom:4px;
	transform:translateX(-50%);
	width:15px;
	height:10px;
	background:url(/img/common/arrow_b_blue.svg) no-repeat center;
}
.maker_nav_img{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	width:100%;
	max-width:232px;
	margin:0 auto;
	box-sizing:border-box;
}
.maker_nav_img::after{
	content:"";
	position:absolute;
	inset:-4px;
	border:2px solid #0440B9;
	box-sizing:border-box;
	opacity:0;
	pointer-events:none;
	transition:opacity 0.3s;
}
.maker_nav_list a:hover .maker_nav_img::after{
	opacity:1;
}
.maker_nav_img img{
	display:block;
	width:100%;
	height:100%;
	object-fit:contain;
}
.maker_nav_list p{
	display:none;
}

/* メーカー説明文を入れる場合用 */
.maker_desc{
	margin:0 0 32px;
	font-size:1.4rem;
	line-height:2.4rem;
	color:#212121;
}

/* メーカー別製品一覧 */
.maker_items{
	display:grid;
	grid-template-columns:repeat(5, 1fr);
	gap:34px 10px;
	margin:0;
	padding:0;
	list-style:none;
}
.maker_items li{
	list-style:none;
}
.maker_items a{
	display:block;
	color:#212121;
	text-align:center;
	text-decoration:none;
}
.maker_itemes_img{
	display:flex;
	align-items:center;
	justify-content:center;
	aspect-ratio:174 / 115;
	margin-bottom:10px;
	border:1px solid #E2E7EC;
	background:#fff;
	box-sizing:border-box;
	transition:border-color 0.3s;
}
.maker_itemes_img img{
	display:block;
	width:auto;
	max-width:86%;
	height:auto;
	max-height:86%;
	object-fit:contain;
}
.maker_items p{
	display:inline;
	margin:0;
	font-size:1.3rem;
	line-height:1.6;
	text-decoration:underline;
	text-underline-offset:3px;
	transition:color 0.3s, text-decoration-color 0.3s;
}
.maker_items a:hover .maker_itemes_img{
	border-color:#0440B9;
}
.maker_items a:hover p{
	color:#0440B9;
	text-decoration-color:transparent;
}

@media screen and (max-width:1024px){
.tab_item:first-child{
	margin:0 0 0 14px;
}
.tab_link{
	height:45px;
	min-width:230px;
}
.lineup_tab{
	gap:5px;
}
.distance_list{
	padding:5px 0 0;
	margin-bottom:80px;
}
.distance_box{
	display:grid;
	grid-template-columns:auto 1fr;
		column-gap:12px;
	row-gap:18px;
	margin-bottom:38px;
}
.distance_head{
	grid-column:1;
	grid-row:1;
	display:flex;
	gap:16px;
	font-size:1.7rem;
}
.distance_box::before{
	grid-column:2;
	grid-row:1;
	content:"：";
	font-size:1.8rem;
	line-height:2.6rem;
}
.distance_items{
	grid-column:1 / -1;
	grid-row:2;
	display:grid;
	grid-template-columns:repeat(2, minmax(0, 1fr));
	column-gap:26px;
	row-gap:24px;
}
.distance_items a{
	padding:0 32px 16px 0;
	font-size:1.4rem;
	line-height:2.1rem;
}
.distance_items a::after{
	top:32%;
	right:12px;
}
.kinds_box h3{
	margin:0 0 26px;
	padding-top:40px;
	font-size:2.3rem;
	line-height:3.4rem;
}
.kinds_desc{
	margin:0 0 17px;
	font-size:1.4rem;
}
.kinds_items{
	grid-template-columns:repeat(4, 1fr);
	gap:46px 20px;
}
.kinds_items p{
	font-size:1.4rem;
	line-height:2rem;
}
.maker_nav_list::before{
	top:4px;
	font-size:1.7rem;
	line-height:2.5rem;
}
.maker_nav_list::after{
	left:192px;
	top:4px;
	font-size:1.7rem;
	line-height:2.5rem;
}
.maker_nav_list{
	padding:40px 0 60px;
}
.maker_nav_img{
	max-width:145px;
}
}

@media screen and (max-width:767px){
.lineup_tab{
	gap:4px;
	margin-bottom:28px;
}
.tab_link{
	min-width:auto;
	width:100%;
	height:42px;
	padding:0 5px;
	font-size:1.2rem;
}
.tab_item{
	width:45%;
}
.distance_list{
	padding:7px 0 0;
}
.distance_box{
	row-gap:4px;
}
.distance_box > p{
	display:block;
	margin:0 0 8px;
}
.distance_box > p strong{
	display:block;
	font-size:1.5rem;
	line-height:1.7;
}
.distance_box > p strong::after{
	content:none;
}
.distance_items{
	display:grid;
	grid-template-columns:1fr;
	gap:0;
}
.distance_items a{
	padding:14px 32px 13px 0;
}
.distance_items a::after{
	top:50%;
	right:13px;
}
.kinds_items{
	grid-template-columns:repeat(2, 1fr);
	gap:26px 12px;
}
.maker_nav_list{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:28px 12px;
	margin-bottom:48px;
	padding:46px 0 44px;
}
.maker_nav_list::before{
	left:0;
	top:0;
	font-size:1.5rem;
}
.maker_nav_list::after{
	left:178px;
	top:0;
	font-size:1.5rem;
}
.maker_nav_img{
	height:70px;
	max-width:160px;
}
.kinds_box h3{
	font-size:2.2rem;
	margin:0 0 15px;
}
.kinds_desc{
	margin:0 0 14px;
	font-size:1.3rem;
}
.kinds_items{
	gap:33px 17px;
}
.kinds_items p{
	font-size:1.3rem;
	line-height:1.9rem;
}
}