@charset "utf-8";
/* ページ内リンク */
.page_link{
	margin-top:21px !important;
	margin-bottom:88px;
	justify-content:center;
	display:flex;
	flex-wrap:wrap;
	gap:48px;
}
.page_link a:hover{text-decoration:underline;}
img{object-fit:contain;}

/* トップ */
.mv{
	position:relative;
	height:630px;
}
.camera-network .mv{
	background:url("/wp-content/uploads/solution/camera-network/pic_catch.jpg") center / cover no-repeat;
}
.phone-pbx .mv{
	background:url("/wp-content/uploads/solution/phone-pbx/pic_catch.jpg") center / cover no-repeat;
}
.ipradio .mv{
	background:url("/wp-content/uploads/solution/ipradio/pic_catch.jpg") center / cover no-repeat;
}
.public-infrastructure .mv{
	background:url("/wp-content/uploads/solution/public-infrastructure/pic_catch.jpg") center / cover no-repeat;
}
.health-welfare .mv{
	background:url("/wp-content/uploads/solution/health-welfare/pic_catch.jpg") center / cover no-repeat;
}
.mv_text{
	position:absolute;
	left:6.1%;
	top:48%;
	transform:translateY(-50%);
	color:#fff;
	text-shadow:0px 1px 10px #004F7C80;
}
.mv_text p:first-child{
	font-size:2.8rem;
	font-weight:500;
	line-height:4rem;
	margin-bottom:0;
}
.mv_text h1{
	font-size:5.8rem;
	line-height:8rem;
	margin-bottom:20px;
	letter-spacing:3px;
}
.mv_text p{
	font-size:1.7rem;
	margin-bottom:28px;
}
.mv_band{
	width:352px;
}
.content_area{
	max-width:none;
	padding:0;
	margin:auto;
}

/* 共通 */
h2{
	font-size:2.8rem;
	line-height:4rem;
	text-align:center;
	margin:0;
	padding:0;
	border:none;
}
h2::before{
	display:none;
}
h2::after{
	content:"";
	display:block;
	width:70px;
	height:4px;
	margin:24px auto 45px;
	background:#0440B9;
}
h4{
	margin:40px 0 11px;
	font-size:2.2rem;
	line-height:3.2rem;
}
.line{
	border:1px solid #E2E7EC;
}
.main_visual{
	max-width:1500px;
	margin:auto;
}

/* 監視カメラ・ネットワーク機器 */
.network_content{
	position:relative;
	max-width:1200px;
	width:calc(100% - 60px);
	margin:-50px auto 98px;
	padding:68px 48px 0;
	background:#fff;
}
.network_lead{
	text-align:center;
}
.network_content figure{
	margin:15px 0;
}
.mode_grid{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:18px 30px;
}
.mode_box h5{
	margin:8px 0 12px;
}
.mode_box img{
	margin-bottom:16px;
}
.mode_box p{
	margin:0;
}
.product_cards{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:30px;
	margin-bottom:62px;
}
.product_card{
	display:flex;
	flex-direction:column;
}
.product_spec{
	flex:1;
	display:flex;
	flex-direction:column;
	background:#EFF3F6;
	padding:23px;
}
.product_spec h4{
	margin:0 0 20px;
	text-align:center;
	font-size:1.7rem;
	line-height:2.5rem;
	font-weight:bold;
	border:none;
	padding:0;
}
.product_spec dl,.product_spec dd{
	margin:0;
	line-height:2rem;
}
.product_spec dl{
	display:grid;
	grid-template-columns:150px 1fr;
	gap:15px;
	font-size:1.3rem;
	margin-bottom:7px;
}
.feature_grid{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:22px 30px;
	margin:15px 0 115px;
}
.feature_item{
	display:grid;
	grid-template-columns:125px 1fr;
	gap:22px;
	align-items:start;
}
.feature_img{
	width:125px;
	height:125px;
}
.feature_item h4{
	margin:0 0 8px;
	font-size:1.8rem;
	line-height:2.6rem;
	font-weight:bold;
	border:none;
	padding:0;
}
.feature_item p{
	margin:0;
	font-size:1.3rem;
	line-height:2.4rem;
}

/* ビジネスホン */
.box_section{
	max-width:1100px;
	margin:56px auto 60px;
	padding:58px 90px 68px;
	border:10px solid #EBF1F6;
	background:#fff;
}
.logo_area{
	text-align:center;
	margin-bottom:30px;
}
.logo_area img{
	max-width:253px;
	margin:auto;
}
.catch{
	font-weight:bold;
	text-align:center;
	margin-bottom:62px;
	font-size:1.9rem;
}
.col3{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:0 25px;
	margin:18px 0 0;
}
.vo_list{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:0 25px;
	margin:10px 0;
}
.product_table{
	width:100%;
	border-collapse:collapse;
	margin-top:20px;
	margin-left:0;
	margin-right:0;
	border-spacing:0;
}
.product_table th,.product_table td{
	border:1px solid #E2E7EC;
	padding:12px 20px;
	font-size:1.5rem;
}
.product_table th{
	width:33.5%;
	color:#212121;
	background:#EFF3F6;
	text-align:left;
}
.product_table tr:last-child th{
	border-bottom:1px solid #E2E7EC;
}
.lineup_grid{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:30px;
	margin:20px 0 10px;
}
.lineup_card{
	display:flex;
	flex-direction:column;
	height:100%;
}
.lineup_img,.support_img{
	height:231px;
	display:flex;
	align-items:center;
	justify-content:center;
}
.lineup_body,.support_body{
	background:#EBF1F6;
	padding:22px;
	flex:1;
	display:flex;
	flex-direction:column;
}
.lineup_body h4,.support_body h4{
	display:flex;
	justify-content:center;
	align-items:center;
	min-height:50px;
	font-size:1.7rem;
	font-weight:bold;
	margin:0 0 19px;
	padding:0;
	border:none;
	line-height:2.5rem;
	text-align:center;
}
.lineup_body h5{
	font-size:1.3rem;
	margin:16px 0 8px;
	padding:0;
	line-height:2rem;
	font-weight:bold;
}
.lineup_body h5::before{
	display:none;
}
.lineup_body .notion{
	font-size:1.3rem;
	line-height:2rem;
	margin-bottom:0;
}
.lineup_body p{
	font-size:1.1rem;
	line-height:1.7rem;
	margin-bottom:8px;
}
.lineup_body li{
	font-size:1.1rem;
	line-height:1.7rem;
	margin-bottom:0;
}
.icom_table{
	width:100%;
	border-collapse:collapse;
	table-layout:fixed;
	margin-top:30px;
	font-size:1.5rem;
	text-align:center;
	margin-left:0;
	margin-right:0;
	border-spacing:0;
}
.icom_table th,.icom_table td{
	padding:11px 20px 13px;
	border:1px solid #E2E7EC;
	vertical-align:middle;
}
.icom_table th{
	background:#EFF3F6;
	color:#212121;
	font-weight:500;
	text-align:center;
}
.icom_table td{
	background:#fff;
	color:#212121;
}
.icom_table tr:last-child th{
	border-bottom:1px solid #E2E7EC;
}
.case_grid,.support_grid,.solution_grid{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:30px;
}
.case_grid figure{
	margin:0;
	text-align:center;
}
.case_grid figcaption{
	margin-top:10px;
}
.vi-nurse h3{
	font-size:2rem;
}
.vi-nurse h4{
	margin:40px 0 10px;
	font-size:1.8rem;
	line-height:2.6rem;
	padding:0;
	border:none;
}
.vi-nurse .col3{
	margin:0;
}
.support_body h4{
	min-height:auto;
	margin:0 0 41px;
}
.support_body ul{
	margin-bottom:5px;
}
.support_body li{
	font-size:1.3rem;
	margin-bottom:0;
}
.pdx h3{
	font-size:2.8rem;
	line-height:4rem;
	text-align:center;
	margin:0;
	padding:0;
	border:none;
	color:#212121;
}
.pdx h3::before{
	display:none;
}
.pdx h3::after{
	content:"";
	display:block;
	width:70px;
	height:4px;
	margin:24px auto 45px;
	background:#0440B9;
}
.pdx h4{
	margin:56px 0 13px;
	font-size:2.4rem;
	font-weight:500;
	line-height:3.5rem;
	color:#1A4C7E;
	padding:0;
	border:none;
}
.pdx h5{
	margin:36px 0 11px;
	padding:19px 0 0;
	font-size:2.2rem;
	font-weight:500;
	line-height:3.2rem;
	border-top:1px solid #8E9194;
}
.pdx h5::before{
	display:none;
}
section .catch{
	margin-bottom:32px;
}
.sv_feature_item p,.solution_card p{
	margin-bottom:13px;
}
.solution_grid{
	gap:0 30px;
}
.solution_card h4{
	font-size:2rem;
	margin:26px 0 20px;
}
.solution_card img{
	margin-bottom:18px;
}
.center_text{
	text-align:center;
	margin:14px 0 0;
}

/* ipシステム */
.ip_blue_box{
	background:#EBF1F6;
	padding:48px 100px;
}
.ip_blue_lead{
	margin:0 0 26px;
	color:#0440B9;
	font-size:1.9rem;
	font-weight:bold;
	text-align:center;
}
.ip_photo_grid{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:29px;
	margin:0 auto 28px;
}
.ip_photo_grid figure{
	margin:0;
}
.ip_photo_grid figcaption{
	margin-top:7px;
	text-align:center;
	font-size:1.3rem;
}
.ip_function_list{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:43px;
	margin:0 auto;
}
.function_list_continue::after {
    content: "など";
    display: block;
}
.ip_blue_lead.ipradio{
	margin:0 0 36px;
}
.ipradio_media_title{
	margin:12px 0 13px;
	padding-left:0;
	font-size:1.5rem;
	font-weight:bold;
	line-height:2.7rem;
}
.ipradio_media_title::before{
	display:none;
}
.ipradio_media{
	display:grid;
	grid-template-columns:1fr 435px;
	gap:30px;
	align-items:start;
}
.ipradio_media .ipradio_media_img{
	margin:5px 0;
}
.ipradio_media_img figcaption{
	margin-top:15px;
	font-size:1.3rem;
	line-height:1.95rem;
	text-align:center;
}
.ipradio_note_box{
	display:grid;
	grid-template-columns:1fr 290px;
	gap:20px;
	align-items:center;
	margin:30px auto 0;
	padding:28px 32px 36px;
	border:1px solid #0440B9;
	background:#fff;
}
.ipradio_label{
	display:inline-block;
	margin:0 0 22px;
	padding:4px 20px;
	background:#0440B9;
	color:#fff;
	font-weight:bold;
}
.ipradio_note_txt h5{
	margin:12px 0;
	font-size:1.9rem;
	font-weight:bold;
	line-height:2.7rem;
	padding:0;
	color:#0440B9;
}
.ipradio_note_txt h5::before{
	display:none;
}
.ipradio_note_txt p{
	margin:0;
}
.ipradio_note_txt p + p{
	margin-top:14px;
}
.ipradio_card_grid{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:30px;
	margin:38px auto;
}
.ipradio_card h4{
	margin:0 0 18px;
	font-size:1.5rem;
	font-weight:bold;
	line-height:2.7rem;
	padding:0;
	border:none;
}
.ipradio_card img{
	margin-bottom:15px;
}
.ipradio_card p{
	margin:0;
}
.ipradio_note_box.no_pic{
	grid-template-columns:1fr;
}
.ipradio_note_box.no_pic p span{
	grid-template-columns:1fr;
}
.emphasis{
	margin-top:28px !important;
}
.emphasis span{
	font-weight:bold;
}
.ipradio_product{
	display:flex;
	flex-direction:column;
}
.ipradio_product figure{
	margin:4px 0;
}
.ipradio_product_box{
	background:#EBF1F6;
	padding:18px 20px 12px;
	flex:1;
	display:flex;
	flex-direction:column;
}
.ipradio_product_box h5{
	display:flex;
	justify-content:center;
	align-items:center;
	font-size:1.7rem;
	font-weight:bold;
	margin:0 0 16px;
	padding:0;
	border:none;
	line-height:2.5rem;
	text-align:center;
}
.ipradio_product_box h5::before{
	display:none;
}
.ipradio_product_box p{
	margin:0 0 6px;
	font-size:1.3rem;
}
.ipradio_product_box ol{
	margin:0;
}
.ipradio_product_box li{
	font-size:1.3rem;
	line-height:2rem;
}
.ipradio_product_grid{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	gap:34px;
	margin-bottom:60px;
}
.ipradio_feature_grid{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:30px;
	margin-bottom:16px;
}
.ipradio_num_text{
	margin:0 0 65px;
}
.flow_list{
	max-width:900px;
	margin:0 auto;
	padding:3px 0;
	list-style:none;
}
.flow_item{
	position:relative;
	display:grid;
	grid-template-columns:113px 1fr;
	gap:28px;
	padding-bottom:40px;
	align-items:start;
}
.flow_item::before{
	content:"";
	position:absolute;
	left:55px;
	top:110px;
	bottom:0;
	width:1px;
	height:238px;
	background:#8E9194;
}
.flow_item:first-child::before{
	height:290px;
}
.flow_item:nth-last-child(2)::before{
	height:100px;
}
.flow_item:last-child::before{
	display:none;
}
.flow_item ul{
	margin-bottom:0;
}
.flow_item ul li{
	list-style:disc;
	font-size:1.3rem;
	margin-bottom:5px;
}
.flow_list img{
	position:relative;
	z-index:1;
	width:113px;
	height:113px;
}
.flow_title{
	color:#1A4C7E;
	font-size:2rem;
	line-height:2.9rem;
	border:none;
	padding:0;
	margin:42px 0 11px;
}
.flow_list p{
	margin:0;
	font-size:1.3rem;
	line-height:2.4rem;
}

/* 公共インフラ */
.public-infrastructure .content_area{
	max-width:1240px;
	padding:0 20px;
	margin:0 auto 114px;
}
.public-infrastructure .page_link{
	display:flex;
	flex-wrap:wrap;
	gap:7px 50px;
	list-style:none;
	max-width:1100px;
	margin:21px auto 88px;
}
.public-infrastructure .page_link li{
	width:auto;
}
.normal_title{
	position:relative;
	margin:88px 0 28px;
	padding:40px 0 0 0;
	font-size:3.2rem;
	font-weight:500;
	line-height:4.6rem;
	border-top:1px solid #8E9194;
	text-align:left;
}
.normal_title::before{
	content:"";
	display:block;
	position:absolute;
	top:0;
	left:0;
	width:70px;
	height:4px;
	background:#0440B9;
}
.normal_title::after{
	display:none;
}
.public-infrastructure_column{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	grid-gap:30px;
}

/* 保健福祉ソリューション */
.health-welfare .network_lead{
	margin-bottom:56px;
}
.health-welfare .ip_blue_box{
	background:#EBF1F6;
	padding:44px 58px 28px;
	margin-bottom:20px;
}
.top_blue_box{
	background:#EBF1F6;
	padding:43px 56px 26px;
	margin:56px auto 22px;
}
.koko_helper{
	margin:0 auto 28px;
	text-align:center;
}
.koko_helper_list{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	grid-gap:0 60px;
}
.kokohelper_arrow{
	margin:0 auto 9px;
}
.koko_helper_after p{
	font-size:2.8rem;
	line-height:3.8rem;
	font-weight:bold;
	color:#1A4C7E;
	text-align:center;
	margin-bottom:60px;
}
.koko_helper_after p span{
	font-size:1.8rem;
}
.health-welfare .box_section .network_lead{
	margin-bottom:18px;
}
.card-grid{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	grid-gap:30px;
}
.card{
	padding:24px 30px 28px;
	background:#EBF1F6;
}
.num_wrap{
	display:flex;
	align-items:center;
	margin-bottom:6px;
}
.num{
	font-family:var(--font_Roboto);
	font-size:3.2rem;
	line-height:3.8rem;
	color:#1A4C7E;
	margin-right:8px;
}
.card_title{
	font-size:1.9rem;
	line-height:2.7rem;
	color:#1A4C7E;
	font-weight:500;
}
.card_body{
	line-height:2.7rem;
}
.kokohelpa p{
	font-size:2.1rem;
	font-weight:bold;
	text-align:center;
	margin:20px auto 16px;
}
.kokohelpa img{
	height:43px;
	margin:auto;
}
.purple_box{
	max-width:1100px;
	background:#F1E8F6;
	padding:46px 100px 27px;
	margin:40px auto;
}
.kokohelpa_txt{
	font-size:1.9rem;
	line-height:2.7rem;
	font-weight:bold;
	text-align:center;
	margin-bottom:30px;
}
.purple_box .kokohelpa_txt{
	color:#682C8E;
}
.purple_box ul{
	margin-top:18px;
}
.scarlet_box{
	max-width:1100px;
	background:#FEECED;
	padding:46px 100px 49px;
	margin:40px auto;
}
.scarlet_box .kokohelpa_txt{
	color:#C9292E;
}
video{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	border:none;
}
.movie_bk{
	padding:30px 20px;
}
.movie_bk .movie_wrap{
	max-width:600px;
	width:100%;
	padding-bottom:min(56.25%, calc(600px * 0.5625));
}
.movie_bk{
	background:#EFF3F6;
}
.kokohelpa_movie,.orange_box h5,.blue_box h5{
	margin:40px 0 20px;
	font-size:1.5rem;
	font-weight:bold;
	line-height:2.1rem;
	padding:0;
}
.kokohelpa_movie::before,.orange_box h5::before,.blue_box h5::before{
	display:none;
}
.orange_box{
	max-width:1100px;
	background:#F8EBE3;
	padding:46px 100px 49px;
	margin:40px auto;
}
.orange_box .kokohelpa_txt{
	color:#E64A10;
}
.orange_box .column_3 img{
	margin-bottom:20px;
}
.orange_box .column_3 p{
	margin-bottom:10px;
}
.orange_box .column_3 p strong{
	font-size:1.8rem;
	font-weight:bold;
}
.orange_box .movie_bk{
	background:#E2D6CF;
}
.blue_box{
	max-width:1100px;
	background:#EBF1F6;
	padding:46px 100px 49px;
	margin:12px auto;
}
.blue_box ul{
	margin-top:17px;
	margin-bottom:35px;
}
.blue_box h5{
	margin:0 0 4px;
}
.blue_box .column_2{
	margin:17px 0 0;
}
.kokohelpa_voice{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	grid-gap:30px;
}
.profile{
	margin:0 0 17px;
	font-size:1.5rem;
	font-weight:bold;
	line-height:2.1rem;
	padding:0;
	border:none;
}
.kokohelpa_img img{
	max-width:900px;
	margin:auto;
	padding:4px 0;
}
.kokohelpa_list{
	display:grid;
	grid-template-columns:repeat(3, 1fr);
	grid-gap:0 46px;
}
.kokohelpa_list li{
	margin-bottom:6px;
}
.comment{
	display:flex;
	align-items:center;
	gap:40px;
}
.comment_profile{
	width:160px;
	flex-shrink:0;
	text-align:center;
}
.comment_icon{
	width:88px;
	height:88px;
	margin:0 auto 10px;
	border-radius:50%;
	background:#e9eff5;
	overflow:hidden;
}
.comment_title{
	margin:0;
	font-weight:500;
}
.comment_body{
	position:relative;
	flex:1;
	padding:34px 36px;
	background:#EBF1F6;
}
.comment_body::before{
	content:"";
	position:absolute;
	top:50%;
	left:-20px;
	transform:translateY(-50%);
	border-top:12px solid transparent;
	border-bottom:12px solid transparent;
	border-right:20px solid #EBF1F6;
}
.comment_body p{
	margin:0;
}

@media screen and (max-width:1024px){
/* 監視カメラ・ネットワーク機器 */
.mv{height:500px;}
.mv_text p:first-child{
	font-size:2.6rem;
}
.mv_text{
	position:absolute;
	left:5%;
	top:56%;
}
.mv_text h1{
	font-size:4.2rem;
	line-height:6rem;
	margin-bottom:17px;
}
.mv_text p{
	font-size:1.6rem;
}
.page_link{
	gap:35px;
}
.page_link a{
	font-size:1.5rem;
}
.network_content{
	margin:-50px auto 98px;
	padding:64px 28px 0;
}
h2,.pdx h3{
	font-size:2.6rem;
	line-height:3rem;
}
h2::after{
	margin:30px auto 50px;
}
h3,.pdx h4{
	font-size:2.2rem;
	margin:38px 0 9px;
}
h4,.pdx h5{
	font-size:2rem;
	line-height:3rem;
	padding:20px 0 0;
	margin:28px 0 11px
}
.mode_box h5{
	font-size:19px;
}
.product_cards{
	gap:20px;
	margin-bottom:40px;
	display:grid;
	grid-template-columns:repeat(2, 1fr);
}
.product_card{
	flex:1;
	display:flex;
	flex-direction:column;
}
.product_spec h4{
	font-size:1.6rem;
}
.product_spec{
	padding:21px 20px 30px;
}
.product_spec dl div{
	display:grid;
	grid-template-columns:86px 1fr;
	gap:11px;
}
.feature_grid{
	display:block;
}
.feature_item{
	margin-bottom:20px;
}
.feature_item h4{
	font-size:1.7rem;
	line-height:2.5rem;
}

/* ビジネスホン・PBX */
.lineup_grid{
	gap:20px;
}
.lineup_body,.support_body{
	padding:20px;
}
.lineup_img, .support_img{
	height:auto;
}
.lineup_body h4{
	font-size:1.6rem;
}
.support_body h4{
	font-size:1.6rem;
	margin-bottom:10px;
}
.box_section{
	margin:50px auto 56px;
	padding:50px 30px 50px;
}
.network_content:has(.box_section){
	padding:68px 30px 0;
}

/* IP同報システム/地域情報伝達無線システム */
.network_content:has(.ip_blue_box){
	padding:68px 30px 0;
}
.ip_blue_box{
	padding:48px 20px 50px;
}
.ipradio_media{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
	gap:20px;
}
.ip_blue_lead .ipradio_note_txt h5{
	font-size:1.8rem;
	line-height:2.7rem;
}
.ip_blue_lead{
	margin-bottom:25px;
	font-size:1.8rem;
}
.ip_function_list{
	grid-template-columns:1fr;
	gap:0;
}
.ip_function_list ol{
	margin-bottom:0;
}
.ipradio_label{
	font-size:1.4rem;
}
.ipradio_media_title{
	font-size:1.4rem;
}
.ipradio_list{
	width:100%;
}
.ipradio_note_box{
	display:flex;
	flex-direction:column-reverse;
	padding:30px 30px 26px 30px;
	gap:28px;
}
.ipradio_note_img{
	width:53%;
	display:flex;
	justify-content:center;
	border:1px solid #E2E7EC;
	align-items:center;
	align-self:center;
}
.ipradio_note_txt{
	text-align:left !important;
	align-self:stretch;
}
.ipradio_card_grid{
	gap:15px;
}
.ipradio_product_grid{
	gap:30px;
}
.flow_item{
	padding-left:125px;
	min-height:100px;
	grid-template-columns:1fr;
}
.flow_item::before{
	left:50px;
	top:50px;
	height:calc(100% + 50px);
}
.flow_item:first-child::before,
.flow_item:nth-last-child(2)::before{
	top:50px;
	height:calc(100% + 50px);
}
.flow_list img{
	position:absolute;
	left:0;
	top:0;
	width:100px;
	height:100px;
	z-index:2;
}
.flow_title{
	margin:0 0 11px;
	padding:30px 0 0;
}

/* 公共インフラソリューション */
.normal_title{
	font-size:2.6rem;
	line-height:3rem;
	margin:80px 0 20px
}

/* 保健福祉ソリューション */
.network_content.kokohelpa_box{
	padding:68px 10px 0;
}
.health-welfare .kokohelpa_box .network_lead{
	margin-bottom:40px;
}
.health-welfare .kokohelpa_box .ip_blue_box{
	padding:44px 20px 28px;
}
.koko_helper_after p{
	margin-bottom:40px;
}
.card-grid{
	grid-gap:15px;
}
.card{
	padding:15px 20px 18px;
}
.card_title{
	font-size:1.7rem;
	line-height:2.5rem;
}
.card_body{
	font-size:1.3rem;
}
.kokohelpa p{
	font-size:1.9rem;
}
.kokohelpa_txt{
	font-size:1.8rem;
}
.purple_box,.scarlet_box,.orange_box,.blue_box{
	max-width:100%;
	padding:35px 20px 40px;
	margin:20px 0;
}
.num{
	white-space:nowrap;
}
.kokohelpa_img img{
	max-width:100%;
}
.orange_box .column_3 p strong{
	font-size:1.5rem;
	line-height:1rem;
}
.orange_box .column_3 img{
	margin-bottom:15px;
}
.comment{
	gap:10px;
}
.comment_body{
	padding:16px 20px;
}
.kokohelpa_list{
	grid-template-columns:repeat(2, 1fr);
	grid-gap:0 30px;
}
}

@media screen and (max-width:900px){
.lead_section{
	margin-top:-25px;
	padding:45px 20px 0;
}
.box_section{
	padding:45px 24px;
	border-width:7px;
}
.lineup_grid,.case_grid,.support_grid,.solution_grid,.col3{
	grid-template-columns:1fr;
}
.lineup_body{
	min-height:auto;
	width:100%;
}
.product_table th,.product_table td{
	display:block;
	width:100%;
}
.heading_left{
	font-size:2rem;
}
.lineup_card{
	align-items:center;
}
.lineup_img{
	height:231px !important;
	width:364px !important;
	margin-bottom:20px;
}
}

@media screen and (max-width:767px){
.mv_text{
	top:51%;
}
.network_content{
	width:calc(100% - 20px);
	margin-top:-28px;
	padding:42px 20px 0;
}
h2,.pdx h3{
	font-size:2.4rem;
	line-height:3rem;
}
h2::after{
	width:50px;
	margin:16px auto;
}
h3,.pdx h4{
	font-size:2rem;
	margin:35px 0 10px;
}
h4,.pdx h5{
	font-size:1.8rem;
	line-height:2.7rem;
	padding:12px 0 0;
}
.network_lead{
	text-align:left;
	margin-bottom:40px;
}
.mode_grid{
	grid-template-columns:1fr;
	gap:30px;
}
.product_cards{
	grid-template-columns:1fr;
}
.feature_grid{
	grid-template-columns:1fr;
	gap:34px;
}
.page_link{
	margin:15px 20px 60px !important;
	display:block;
	padding:0;
}
.page_link li{
	display:block;
	width:100%;
	margin:0;
}
.page_link a{
	display:block;
	font-size:1.3rem;
	padding:12px 30px 9px 9px;
	border-bottom:1px solid #E2E7EC;
}
.page_link a::after{
	right:10px;
}

/* 監視カメラ・ネットワーク機器 */
.mv{height:280px;}
.mv_text p:first-child{
	font-size:1.7rem;
	line-height:2.5rem;
}
.mv_text h1{
	font-size:2.7rem;
	line-height:4.2rem;
	margin-bottom:17px;
}
.mv_text p{
	font-size:1.1rem;
	line-height:1.98rem;
	margin:0;
}
.product_spec{
	padding:30px 24px;
}
.product_spec dl div{
	grid-template-columns:repeat(2, 1fr);
	gap:2px;
	margin-bottom:14px;
}
.feature_item{
	grid-template-columns:125px 1fr;
	gap:18px;
}
.feature_item h4{
	font-size:1.6rem;
	line-height:2.4rem;
}
.feature_item p{
	line-height:2.2rem;
}
.flow_list{
	padding:3px 0;
}
.flow_item{
	position:relative;
	display:block;
	padding-left:80px;
	padding-bottom:20px;
	min-height:80px;
}
.flow_list img{
	position:absolute;
	left:0;
	top:0;
	width:65px;
	height:65px;
	z-index:2;
}
.flow_item::before{
	left:32px;
	top:40px;
	width:1px;
	height:calc(100% + 40px);
	background:#8E9194;
}
.flow_item:first-child::before,
.flow_item:nth-last-child(2)::before{
	top:40px;
	height:calc(100% + 20px);
}
.flow_item:last-child::before{
	display:none;
}
.flow_title{
	padding-top:19px;
	font-size:1.6rem;
	font-weight:500;
	margin:0 0 4px;
}
.flow_item ul{
	padding-left:16px;
}
.flow_item ul li,
.flow_list p{
	font-size:1.2rem;
	line-height:2.3rem;
}

/* ビジネスホン */
.lineup_card{
	align-items:center;
	display:block;
	min-width:0;
}
.lineup_img{
	max-width:100%;
	margin:0 auto;
	height:auto !important;
}
.scroll_table.sp table{
	min-width:0;
}
.box_section .catch{
	font-size:1.7rem;
}
.box_section{
	margin-top:0;
	padding:45px 14px;
}
.box_section h2::after{
	margin:14px auto 20px;
}
.logo_area img{
	max-width:100%;
	padding:0 20%;
	margin:0 auto;
}
.icom_table{
	margin-bottom:30px;
}
.icom_table th, .icom_table td{
	display:table-cell;
}
.icom_table tr:last-child td{
	border-bottom:1px solid #E2E7EC;
}
.vo_list{
	display:block;
}
.support_img{
	height:auto !important;
}
.network_content:has(.box_section){
	padding:40px 0 0;
}

/* IPシステム */
.ipradio .mv_text h1{
	letter-spacing:0;
}
.network_content:has(.ip_blue_box){
	padding:42px 10px 0;
}
.ipradio .network_lead{
	text-align:center;
	margin-bottom:25px;
	padding:0 10px;
}
.ipradio h3{
	line-height:2.9rem;
	margin:60px 0 15px;
}
.ip_blue_box{
	padding:35px 20px 50px;
}
.ip_blue_lead{
	margin-bottom:27px;
	font-size:1.6rem;
	line-height:2.4rem;
}
.ip_photo_grid{
	gap:10px;
}
.ip_photo_grid figcaption{
	line-height:2rem;
}
.ipradio_media{
	grid-template-columns:1fr;
	gap:0;
	margin-bottom:40px;
}
.ipradio_note_box{
	padding:18px 14px 25px;
	gap:11px;
}
.ipradio_note_img{
	width:100%;
}
.ipradio_note_txt h5{
	font-size:1.6rem;
	margin:13px 0;
}
.ipradio_note_txt p{
	line-height:2.4rem;
}
.ipradio_label{
	padding:4px 20px 7px;
}
.ipradio_card_grid{
	grid-template-columns:1fr;
}
.ipradio_product_grid{
	grid-template-columns:1fr;
}
.network_content{
	padding:42px 10px 0;
	margin:-30px auto 80px;
}

/* 公共インフラソリューション */
.normal_title{
	font-size:2.4rem;
	line-height:2.8rem;
	margin:80px 0 20px
}
.public-infrastructure .page_link{
	display:block;
	margin:15px auto 60px !important;
}
.public-infrastructure .page_link li{
	display:flex;
	flex-wrap:wrap;
	width:100%;
}
.public-infrastructure .page_link li a{
	width:100%;
	font-size:1.3rem;
}

/* 保健福祉ソリューション */
.health-welfare .kokohelpa_box .ip_blue_box{
	padding:28px 20px 20px;
}
.health-welfare .kokohelpa_box .network_lead{
	text-align:center;
	margin-bottom:25px;
}
.koko_helper_list{
	display:block;
}
.koko_helper_list li{
	line-height:2.4rem;
}
.kokohelper_arrow{
	margin:20px auto 11px;
}
.koko_helper_after p span{
	font-size:1.4rem;
}
.koko_helper_after p{
	font-size:2.2rem;
	line-height:3.2rem;
	margin-bottom:48px;
}
.koko_helper{
	margin-bottom:15px;
	font-size:1.8rem;
	line-height:2.6rem;
}
.kokohelpa_box .box_section{
	padding:40px 15px;
}
.kokohelpa_box .box_section .network_lead{
	margin-bottom:16px;
}
.card-grid{
	display:block;
	padding:0;
}
.card-grid .card{
	margin-bottom:20px;
	padding:15px 20px 26px;
}
.card_title{
	font-size:1.7rem;
	line-height:2.5rem;
}
.num{
	font-size:3rem;
	white-space:nowrap;
}
.purple_box, .scarlet_box, .orange_box, .blue_box{
	padding:35px 20px 20px;
	margin:20px 0 41px;
}
.scarlet_box .column_2{
	display:grid;
	gap:16px;
}
.txt_box{
	order:2;
}
.img_box{
	order:1;
}
.movie_bk{
	background:transparent;
	border-radius:0;
	padding:0;
}
.kokohelpa p{
	font-size:1.7rem;
	margin:11px auto 13px;
}
.kokohelpa_txt{
	font-size:1.6rem;
	line-height:2.4rem;
	margin-bottom:22px;
}
.orange_box .column_3 div{
	margin-bottom:35px;
}
.kokohelpa_voice{
	display:block;
}
.kokohelpa_list{
	display:grid;
	grid-template-columns:repeat(2, 1fr);
}
.line{
	margin-bottom:20px;
}
.kokohelpa_img{
	margin:20px 40px;
}
.kokohelpa_img img{
	padding-bottom:40px;
}
.comment{
	display:block;
}
.comment_profile{
	width:auto;
	margin-bottom:20px;
}
.comment_body::before{
	top:-18px;
	left:50%;
	transform:translateX(-50%);
	border-left:12px solid transparent;
	border-right:12px solid transparent;
	border-bottom:18px solid #eaf1f7;
	border-top:none;
}
}

@media screen and (max-width:500px){
/* 公共インフラ */
.public-infrastructure_column{
	display:flex !important;
	flex-direction:column !important;
	width:100%;
	gap:5px;
}
.public-infrastructure_column > div:has(p){
	order:1 !important;
	width:100%;
}
.public-infrastructure_column > div:has(img){
	order:2 !important;
	width:100%;
}
.public-infrastructure_column img{
	width:100%;
	height:auto;
}

/* 保健福祉ソリューション */
.kokohelpa_list{
	display:block;
}
.kokohelpa_img{
	margin:0 20px;
}
}