@charset "utf-8";

/*---------------------------------------
	汎用
---------------------------------------*/
sup,sub,span{
	color:inherit;
}

.fc-red{
	color:#C03;
}

/*PC・TB・TB+SP・SP*/
.only_pc{
	display:block;
}
.only_tb{
	display:none;
}
.only_tbsp{
	display:none;
}
.only_sp{
	display:none;
}

@media screen and (max-width: 768px) {
	.only_pc{
		display:none;
	}
	.only_tb{
		display:block;
	}
	.only_tbsp{
		display:block;
	}
	.only_sp{
		display:none;
	}
}

@media screen and (max-width: 480px) {
	.only_pc{
		display:none;
	}
	.only_tb{
		display:none;
	}
	.only_tbsp{
		display:block;
	}
	.only_sp{
		display:block;
	}
}

/*下線リンク*/
a.link_underline{
	text-decoration:underline;
}
a.link_underline:hover{
	text-decoration:none;
}

.disc{
	margin-left: 1.3em;
	padding: 0;
	list-style-type: disc;
}

.h3_orig{
	font-size:18px;
	font-weight:bold;
	line-height:1.5;
	margin:30px 0 10px 0;
}
.h4_orig{
	font-size:16px;
	font-weight:bold;
	line-height:1.5;
	margin:30px 0 10px 0;
}



/*---------------------------------------
	通信種別
---------------------------------------*/
.type_ttl{
	font-size:24px;
	font-weight:bold;
	line-height:1.3;
	text-align:center;
	margin:50px 0 30px 0;
}
.type_wrap{
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap:30px;
}
.type_wrap > li{
	width:calc((100% - 30px) / 2);
	border:2px solid #C03;
	border-radius:20px;
	padding:20px;
}

@media screen and (max-width: 768px) {
	.type_wrap > li{
		width:100%;
	}
}

.type_wrap h4{
	font-size:20px;
	font-weight:bold;
	line-height:1.3;
	text-align:center;
	margin:0 0 10px 0;
}
.type_wrap h5{
	font-size:16px;
	font-weight:bold;
	line-height:1.5;
	margin:0 0 10px 0;
}
.type_wrap p{
	font-size:16px;
	line-height:1.5;
	margin:0;
}
.type_wrap p + p{
	margin:1em 0 0 0;
}

/*---------------------------------------
	テーブル
---------------------------------------*/
.tbl_orig{
	width:100%;
	min-width:600px;
	line-height:1.5;
}
.tbl_orig th{
	font-weight:bold;
	text-align:center;
	vertical-align:middle;
}
.tbl_orig td{
	text-align:center;
	vertical-align:middle;
}
.tbl_orig.v-t td{
	text-align:center;
	vertical-align:top;
}

.tbl_orig strong{
	font-size:22px;
	line-height:1.5;
}

/*◎は小さく表示されてしまうため調整*/
.tbl_orig strong.fc-red{
	font-size:27px;
	line-height:1;
}

/*文字小さくしたい*/
.tbl_orig.smallfont th,
.tbl_orig.smallfont td{
	padding:5px;
	font-size:14px;
}

/*---------------------------------------
	提供機能
---------------------------------------*/
.function_wrap{
	width: 100%;
	border:2px solid #C03;
	border-radius:20px;
	padding:20px;
	margin: 30px 0;
}

.function_wrap h4{
	font-size:20px;
	font-weight:bold;
	line-height:1.3;
	margin:0 0 10px 0;
}
.function_wrap h5{
	font-size:16px;
	font-weight:bold;
	line-height:1.5;
	margin:0 0 10px 0;
}
.function_wrap p{
	font-size:16px;
	line-height:1.5;
	margin:0;
}
.function_wrap p + p{
		margin:1em 0 0 0;
}

/*---------------------------------------
	ユースケース/サポートサービス 2カラム
---------------------------------------*/
.cmn_wrap{
	list-style: none;
	margin: 30px 0 0;
	padding: 0;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap:30px;
}
.cmn_wrap > li{
	width:calc((100% - 30px) / 2);
	border:2px solid #CCC;
	border-radius:20px;
	padding:20px;
}
.cmn_wrap > li.wide{
	width:100% !important;
	border:2px solid #CCC;
	border-radius:20px;
	padding:20px;
}
@media screen and (max-width: 768px) {
	.cmn_wrap > li{
		width:100%;
	}
}

.cmn_wrap h4{
	font-size:18px;
	font-weight:bold;
	line-height:1.4;
	margin:0;
}
.cmn_wrap h5{
	font-size:16px;
	font-weight:bold;
	line-height:1.5;
	margin:0 0 10px 0;
}
.cmn_wrap p{
	font-size:16px;
	line-height:1.5;
	margin:0;
}
.cmn_wrap p + p{
	margin:1em 0 0 0;
}

/*---------------------------------------
	サポートサービス ロゴ
---------------------------------------*/
.service_logo img{
	display:block;
	margin:0 auto;
	height:60px;
	width:auto;
}

.wide .service_logo img{
	display:block;
	margin:0 auto;
	max-height:30px;
	width:auto;
}

/*---------------------------------------
連携サービス
---------------------------------------*/
.support_wrap{
	list-style: none;
	margin: 0;
	padding: 0;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
.support_head{
	width:220px;
}
.support_arrow{
	width:80px;
	text-align: center;
	margin:0 auto;
}
.support_body{
	width:calc(100% - 220px - 80px);
}
@media screen and (max-width: 768px) {
	.support_head,
	.support_arrow,
	.support_body{
		width:100%;
	}
}

.support_head_item{
	color:#FFF;
	font-size:16px;
	font-weight:bold;
	line-height:1.5;
	text-align:center;
	background-color:#C03;
	border-radius:15px;
	padding:15px;
	margin:0 auto;
}
.support_arrow_item{
	color:#C03;
	font-size: 80px;
	font-weight: bold;
	line-height:1;
	margin:0 auto;
}
.support_body_item{
	border:1px solid #C03;
	border-radius:15px;
	padding:10px 20px;
	margin:10px 0;
}
.support_body_link{
	display:inline-block;
	margin-right: 20px;
	font-weight:bold;
}
@media screen and (max-width: 480px) {
	.support_body_link{
		display:block;
	}
}

/*---------------------------------------
	モーダルで表示させる要素
---------------------------------------*/
.more_content_wrap{
	margin:40px;
}
@media screen and (max-width: 480px) {
	.more_content_wrap{
		margin:20px;
	}
}
.more_content_wrap h3{
	color:#193477;
	font-size:24px;
	font-weight:bold;
	line-height:1.4;
	text-align:center;
	margin:0 0 20px;
}
.more_content_wrap p{
	font-size:16px;
	line-height:1.5;
	margin:0 0 1em;
}
.more_content_wrap figure{
	text-align:center;
}
.more_content_wrap figure img{
	max-width:100%;
}