/* ========================================
共通
======================================== */
a:hover{
	opacity: 0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
}
.icms_caption{
	font-size: 82%;
	line-height: 1.3;
	text-indent: -1.1em;
	padding-left: 1.1em;
}
.grid_contents .grid_cols.grid-8{
	width: auto;
}
.icms_block{
    width: 960px;
    margin: 0 auto 110px;
    box-sizing: border-box;
}
.icms_block p{
    margin-bottom: 0;
}
.icms_img img{
	max-width: 100%;
	width: auto;
}
.fs-16{
	font-size: 16px !important;
}
@media screen and (max-width: 768px){
	.icms_block{
		width: 100%;
		margin: 0 auto 30px;
	}
}


/* =========================================================
 * ニュース・更新情報		トピックス
 * ====================================================== */

.news_hq {
	margin-top: 20px;
	line-height:1.3;
	font-size: 0.9em;
}
.news_hq dt {
	padding:20px 0 5px 0;
	font-weight:bold;
	font-size: 0.9em;
}
.news_hq dt:before {
	content: "・";
	margin-left: 0em;
}
.news_hq dd {
	padding:0 0 20px 20px;
	border-bottom:1px solid #eee;
	line-height: 1.4;
}
.news_hq .noday {
	font-weight:bold;
	padding:20px 0;
	border-bottom:1px solid #eee;
	line-height:1.3;
}
.news_hq .noday:before {
	content: "・";
	margin-left: 0em;
}
.news_hq h5 {
	margin:0 0 5px 0;
	padding: 3px 15px;
	line-height:1.0;
	color: #333;
	font-weight: bold;
	background: #ddd;
}



/* ========================================
導入部分
======================================== */
h3.icms_intro_ttl_h3{
	font-size: 21px;
	font-weight: bold;
	margin-bottom: 30px;
}
h3.icms_intro_ttl_h3 .icms_intro_ttl_h3_sub{
	font-size: 18px;
	margin-bottom: 10px;
}
ul.icms_intro_ul{
}
ul.icms_intro_ul li{
	margin-bottom: 10px;
}
.icms_intro_contact{}
.icms_intro_contact .icms_intro_contact_ttl{
	background-color: #369d35;
	color: #FFF;
	padding: 10px;
	text-align: center;
}
.icms_intro_contact .icms_intro_contact_detail{
	border: 1px solid #cfcfcf;
	border-top: none;
	padding: 10px 20px 20px;
}
.icms_intro_contact .icms_intro_contact_detail .icms_intro_contact_detail_inner{
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 10px;
}
.icms_intro_contact .icms_intro_contact_tel{
	font-size: 26px;
	font-weight: bold;
	letter-spacing: -.1rem;
	margin-left: 5px;
	display: flex;
	align-items: center;
}
.icms_intro_contact .icms_intro_contact_hours{
	font-size: 12px;
}
.icms_intro_contact a.icms_intro_contact_btn{
	background-color: #fdd000;
	border: 2px solid #0d4484;
	border-radius: 10px;
	padding: 8px 10px;
	text-align: center;
	color: #0d4484;
	width: 100%;
	display: block;
	font-size: 14px;
}
.icms_intro_contact a.icms_intro_contact_btn span{
	position: relative;
	padding-right: 20px;
}
.icms_intro_contact a.icms_intro_contact_btn span:after{
	position: absolute;
	top: 50%;
	right: 0;
	content: "";
	width: 10px;
	height: 16px;
	background: url(/content/dam/nttcom/hq/jp/business/services/network/iot/icms/img/icn_arrow.png) no-repeat top right;
	background-size: contain;
	margin-top: -8px;
}

@media screen and (max-width: 768px){
	.icms_service_logo img{
		max-width: 100%;
		width: auto;
	}
	.icms_intro_contact .icms_intro_contact_detail{
		padding: 10px;
		margin-bottom: 10px;
	}
	.icms_intro_contact .icms_intro_contact_detail .icms_intro_contact_detail_inner{
		display: block;
	}
	.icms_intro_contact .icms_intro_contact_tel{
		justify-content: center;
	}
	.icms_intro_contact a.icms_intro_contact_btn{
		font-size: 12px;
	}
}
    
/* ========================================
タブ内部
======================================== */
/* title */
.icms_ttl_h2{
	text-align: center;
	font-size: 42px;
	font-weight: bold;
	margin-top: 110px;
	margin-bottom: 30px;
}
.icms_ttl_h3{
	text-align: center;
	font-size: 26px;
	font-weight: bold;
	background-color: #0d4483;
	color: #FFF;
	padding: 15px;
	border-radius: 10px;
	margin-bottom: 30px;
}
.icms_ttl_h4{
	text-align: center;
	font-size: 24px;
	font-weight: bold;
}
@media screen and (max-width: 768px){
	.icms_ttl_h2{
		font-size: 34px;
		margin-top: 55px;
	}
	.icms_ttl_h3{
		font-size: 20px;
		padding: 10px;
	}
	.icms_ttl_h4{
		font-size: 20px;
	}
}
/* List */
ul.icms_list_01{
	margin: 0 75px 0 0;
	padding: 0;
	font-size: 18px;
}
ul.icms_list_01 li{
	margin: 0;
	padding: 0;
	list-style: none;
	position: relative;
	margin-bottom: 10px;
	padding-left: 20px;
}
ul.icms_list_01 li:before{
	position: absolute;
	left: 0;
	top: 0;
	content: "■";
	color: #0d4483;
}
@media screen and (max-width: 768px){
	ul.icms_list_01{
		margin: 0 0 0 0;
		font-size: 14px;
	}
	ul.icms_list_01 li{
		margin-bottom: 5px;
	}
}
/* グレーBOX */
.icms_gy_box{
	background-color: #f7f7f7;
	padding: 30px;
	text-align: center;
}
.icms_gy_box .icms_gy_box_txt{
	text-align: center;
	margin-bottom: 20px;
}
.icms_gy_box ul{
	display: inline-block;
}
.icms_gy_box ul.icms_list_01 li{
	text-align: left;
}
@media screen and (max-width: 768px){
	.icms_gy_box{
		padding: 10px;
	}
	.icms_gy_box .icms_gy_box_txt{
		text-align: left;
	}
}
/* btn */
a.icms_detail_btn{
	background-color: #FFF;
	border: 2px solid #0d4484;
	border-radius: 10px;
	padding: 10px;
	text-align: center;
	color: #0d4484;
	width: 400px;
	display: block;
	font-size: 18px;
	position: relative;
	padding-right: 20px;
	margin: 0 auto;
}
a.icms_detail_btn:after{
	position: absolute;
	top: 50%;
	right: 20px;
	content: "";
	width: 17px;
	height: 16px;
	background: url(/content/dam/nttcom/hq/jp/business/services/network/iot/icms/img/icn_loupe.gif) no-repeat top right;
	background-size: contain;
	margin-top: -8px;
}
@media screen and (max-width: 768px){
	a.icms_detail_btn{
		width: 100%;
		font-size: 16px;
	}
	a.icms_detail_btn:after{
		right: 10px;
	}
}
/* option */
.icms_option_ttl{
	font-size: 24px;
	font-weight: bold;
	padding-bottom: 15px;
	margin-bottom: 30px;
	border-bottom: 2px solid #0d4484;
}
ul.icms_option_list{
	display: flex;
	justify-content: space-between;
	list-style: none;
	margin: 0;
	padding: 0;
	margin-bottom: 30px;
}
ul.icms_option_list li{
	border: 1px solid #0d4484;
	margin: 0;
	padding: 15px;
	text-align: center;
	color: #0d4484;
	display: flex;
    align-items: center;
    justify-content: center;
    margin-left: 30px;
    flex: 1 2 auto;
}
ul.icms_option_list li:first-child{
    margin-left: 0;
}
@media screen and (max-width: 768px){
	.icms_option_ttl{
		font-size: 20px;
		padding-bottom: 10px;
	}
	ul.icms_option_list{
		display: block;
		margin-bottom: 0;
	}
	ul.icms_option_list li{
		padding: 10px;
		display: block;
		margin-left: 0;
		margin-bottom: 10px;
	}
}
/* 4つの特長 */
.icms_four_features_wrap{
	position: relative;
	padding-top: 60px;
}
.icms_four_features_ttl{
	position: absolute;
	left: 50%;
	top: 0;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}
.icms_four_features{
	border: 3px solid #0d4484;
	border-radius: 10px;
	background-color: #fef6dc;
	padding: 25px 0 0 30px;
}
.icms_four_features .icms_four_features_inner{
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}
.icms_four_features .icms_four_features_box{
	background-color: #FFF;
	padding: 20px;
	text-align: center;
	box-shadow: 2px 2px rgba(243, 234, 203, 1);
	width: calc((100% - 30px) / 2);
	margin-right: 30px;
	font-size: 18px;
}
.icms_four_features .icms_four_features_box_ttl{
	font-size: 20px;
	font-weight: bold;
	color: #0d4484;
	margin-bottom: 10px;
}
.icms_four_features .icms_four_features_box_img{
	margin-bottom: 10px;
}
@media screen and (max-width: 768px){
	.icms_four_features_wrap{
		padding-top: 0;
	}
	.icms_four_features_ttl{
		position: inherit;
		text-align: center;
	}
	.icms_four_features_ttl img{
		width: auto;
		max-width: 100%;
	}
	.icms_four_features{
		padding: 25px 10px 0 10px;
		margin-top: -30px;
	}
	
	.icms_four_features .icms_four_features_inner{
		display: block;
		margin-bottom: 0;
	}
	.icms_four_features .icms_four_features_box{
		padding: 10px;
		width: 100%;
		margin-right: 0;
		margin-bottom: 10px;
	}
	.icms_four_features .icms_four_features_box_ttl{
		font-size: 20px;
		margin-bottom: 10px;
	}
	.icms_four_features .icms_four_features_box_img img{
		width: auto;
		max-width: 100%;
	}
}
/* 3つのeSIMプロファイル */
.icms_esim_profile{
	display: flex;
	justify-content: space-between;
	margin-bottom: 40px;
}
.icms_esim_profile .icms_esim_profile_box{
	border: 1px solid #0d4484;
	background-color: #fef6dc;
	padding: 19px;
	width: 300px;
}
.icms_esim_profile .icms_esim_profile_box_img{
	margin-bottom: 10px;
}
.icms_esim_profile .icms_esim_profile_box_ttl{
	color: #0d4484;
	font-weight: bold;
	text-align: center;
	padding-bottom: 10px;
	border-bottom: 1px solid #0d4484;
	margin-bottom: 20px;
}
.icms_esim_profile .icms_esim_profile_box_ttl2{
	color: #0d4484;
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	margin-bottom: 10px;
}
.icms_esim_profile .icms_esim_profile_box_txt{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
}
@media screen and (max-width: 768px){
	.icms_esim_profile{
		display: block;
	}
	.icms_esim_profile .icms_esim_profile_box{
		padding: 10px;
		margin-bottom: 10px;
		width: 100%;
	}
	.icms_esim_profile .icms_esim_profile_box_img{
		text-align: center;
	}
	.icms_esim_profile .icms_esim_profile_box_img img{
		max-width: 100%;
		width: auto;
	}
	.icms_esim_profile .icms_esim_profile_box_ttl2{
		font-size: 20px;
	}
	.icms_esim_profile .icms_esim_profile_box_txt{
		display: block;
	}
}
/* 基本機能 */
.icms_basic_function{
	display: flex;
	justify-content: space-between;
	margin-bottom: 40px;
}
.icms_basic_function .icms_basic_function_box{
	background-color: #fef6dc;
	padding: 19px;
	width: 300px;
	text-align: center;
}
.icms_basic_function .icms_basic_function_box_img{
	margin-bottom: 10px;
}
@media screen and (max-width: 768px){
	.icms_basic_function{
		display: block;
	}
	.icms_basic_function .icms_basic_function_box{
		padding: 10px;
		margin-bottom: 10px;
		width: 100%;
	}
	.icms_basic_function .icms_basic_function_box_img img{
		max-width: 100%;
		width: auto;
	}
}
/* モデルケース */
.icms_modelcase_ttl{
	border-top: 4px solid #0d4484;
	border-bottom: 1px solid #0d4484;
	padding: 20px 0;
	text-align: center;
}
.icms_modelcase_ttl h3{
	font-size: 28px;
	font-weight: bold;
}
.icms_modelcase_ttl h3 span{
	font-size: 18px;
	display: block;
	margin-bottom: 10px;
}
.icms_modelcase_intro{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
@media screen and (max-width: 768px){
	.icms_modelcase_ttl{
		padding: 0;
	}
	.icms_modelcase_ttl h3{
		font-size: 20px;
	}
	.icms_modelcase_ttl h3 span{
		font-size: 16px;
	}
	.icms_modelcase_intro{
		margin-top: 20px;
	}
	.icms_modelcase_intro_img{
		text-align: center;
	}
	.icms_modelcase_intro_img img{
		width: auto;
		max-width: 100%;
	}
}
/* point */
.icms_modelcase_point{
	border: 1px solid #facf31;
	background-color: #fef6dc;
	padding: 10px 0 10px 10px;
	margin-bottom: 110px;
	font-size: 15px;
	text-align: center;
	display: flex;
	justify-content: space-between;
}
.icms_modelcase_point_box{
	width: 230px;
	border-right: 1px solid #fce286;
	padding-right: 10px;
}
.icms_modelcase_point_box.bdr_none{
	border-right: none;
}
.icms_modelcase_point_ttl{
	background-color: #FFF;
	padding: 9px;
	margin: 0 0 20px;
	text-align: center;
	box-shadow: 2px 2px rgba(243, 234, 203, 1);
	font-size: 18px;
}
.icms_modelcase_point_txt{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
}
@media screen and (max-width: 768px){
	.icms_modelcase_point{
		padding: 10px;
		margin-bottom: 50px;
		display: block;
	}
	.icms_modelcase_point_box{
		width: 100%;
		border-right: none;
		padding-right: 0;
		border-bottom: 1px solid #fce286;
		padding-bottom: 10px;
		margin-bottom: 10px;
	}
	.icms_modelcase_point_box.bdr_none{
		border-bottom: none;
		margin-bottom: 0;
	}
	.icms_modelcase_point_txt{
		display: block;
	}
}
/* 料金プラン */
.icms_rateplan{
	border: 1px solid #0d4484;
	padding: 40px 30px;
	margin-bottom: 60px;
}
.icms_rateplan .icms_rateplan_ttl{
	font-size: 28px;
	font-weight: bold;
	margin-bottom: 20px;
	text-align: center;
}
.icms_rateplan .icms_rateplan_plus{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.icms_rateplan .icms_rateplan_plus_txt01{
	background-color: #0d4484;
	padding: 25px;
	text-align: center;
	color: #FFF;
	font-size: 20px;
	width: 390px;
}
.icms_rateplan .icms_rateplan_plus_txt02{
	border: 2px solid #0d4484;
	padding: 25px;
	text-align: center;
	color: #0d4484;
	font-size: 20px;
	width: 390px;
}
@media screen and (max-width: 768px){
	.icms_rateplan{
		padding: 10px;
		margin-bottom: 30px;
	}
	.icms_rateplan .icms_rateplan_ttl{
		font-size: 20px;
	}
	.icms_rateplan .icms_rateplan_plus{
		display: block;
		text-align: center;
	}
	.icms_rateplan .icms_rateplan_plus .icms_rateplan_plus_img{
		margin: 10px auto;
	}
	.icms_rateplan .icms_rateplan_plus .icms_rateplan_plus_img img{
		max-width: 100%;
		width: auto;
	}
	.icms_rateplan .icms_rateplan_plus_txt01{
		padding: 10px;
		width: 100%;
	}
	.icms_rateplan .icms_rateplan_plus_txt02{
		padding: 10px;
		font-size: 20px;
		width: 100%;
	}
}
/* ご利用可能プロファイル */
.icms_rateplan_profile{
	border-top: 1px solid #dbdbdb;
	margin-top: 30px;
}
.icms_rateplan_profile .icms_rateplan_profile_ttl{
	padding-top: 30px;
	margin-bottom: 10px;
}
.icms_rateplan_profile ul.icms_rateplan_profile_list{
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	justify-content: space-between;
}
.icms_rateplan_profile ul.icms_rateplan_profile_list li{
	margin: 0 0 0 20px;
	padding: 10px;
	background-color: #ebf6fc;
	text-align: center;
	width: 280px;
	font-size: 14px;
}
.icms_rateplan_profile ul.icms_rateplan_profile_list li:first-child{
	margin: 0;
}
@media screen and (max-width: 768px){
	.icms_rateplan_profile ul.icms_rateplan_profile_list{
		display: block;
	}
	.icms_rateplan_profile ul.icms_rateplan_profile_list li{
		margin: 0 0 10px 0;
		width: auto;
	}
	.icms_rateplan_profile ul.icms_rateplan_profile_list li:first-child{
		margin: 0 0 10px 0;
	}
}
/* 容量 */
.icms_rateplan_wrap{
	display: flex;
	justify-content: space-between;
}
.icms_rateplan_wrap .icms_rateplan_box{
	border: 2px solid #0d4484;
	padding: 8px;
	width: 280px;
	text-align: center;
}
.icms_rateplan_box_ttl{
	background-color: #fdd533;
	padding: 10px;
	margin-bottom: 20px !important;
	text-align: center;
}
.icms_rateplan_box_txt01{
	color: #0d4484;
	font-weight: bold;
	line-height: 1;
}
.icms_rateplan_box_txt01 .icms_rateplan_box_txt01-01{
	font-size: 85px;
	line-height: 1;
	display: block;
}
.icms_rateplan_box_txt01 .icms_rateplan_box_txt01-02{
	font-size: 45px;
}
.icms_rateplan_box_txt01 .icms_rateplan_box_txt01-03{
	font-size: 36px;
}
.icms_rateplan_box_txt01 .icms_rateplan_box_txt01-04{
	font-size: 28px;
}
.icms_rateplan_wrap .icms_rateplan_box_txt02{
	color: #0d4484;
	font-size: 22px;
	font-weight: bold;
	margin-top: 20px;
	margin-bottom: 20px;
}
.icms_rateplan_box_icn{
	display: flex;
	justify-content: center;
	font-size: 14px;
}
.icms_rateplan_box_icn_inner{
	margin: 0 10px;
}
@media screen and (max-width: 768px){
.icms_rateplan_wrap{
	display: block;
}
.icms_rateplan_wrap .icms_rateplan_box{
	width: 100%;
	margin-bottom: 10px;
}
.icms_rateplan_box_txt01 .icms_rateplan_box_txt01-01{
	font-size: 65px;
}
.icms_rateplan_box_txt01 .icms_rateplan_box_txt01-02{
	font-size: 24px;
}
.icms_rateplan_box_txt01 .icms_rateplan_box_txt01-03{
	font-size: 22px;
}
.icms_rateplan_box_txt01 .icms_rateplan_box_txt01-04{
	font-size: 20px;
}
.icms_rateplan_wrap .icms_rateplan_box_txt02{
	font-size: 18px;
}
.icms_rateplan_box_icn{
	margin-right: 0;
    margin-left: 0;
}
}




/* ========================================
フッター部分
======================================== */
.tb_above{/*PCとタブレット*/
	display:block;
}
.sp_only{
	display:none;
}
@media screen and (max-width: 768px) {
	.tb_above{/*PCとタブレット*/
		display:block;
	}
	.sp_only{
		display:none;
	}
}
@media screen and (max-width: 480px) {
	.tb_above{/*PCとタブレット*/
		display:none;
	}
	.sp_only{
		display:block;
	}
}

.sdpf_wrap .sdpf_inner{
	width:1180px;
	margin:0 auto;
}
.one_answer .one_txt{
	color:#1d8eff;
}
.one_answer h3{
	margin:0;
	padding:0;
	font-weight: bold;
}
.one_answer_read{
	display:flex;
	justify-content: space-between;
	margin-bottom:30px;
}
.one_answer_read h3{
	font-size:30px;
	width:40%;
}
.one_answer_read p{
	width:55%;
}
.one_flexblock{
	display:flex;
	justify-content: space-between;
}
.one_flexblock .one_flexitems{
	width:20%;
}
.one_flexblock .one_flexitems h3{
	padding-bottom:48px;
	font-size:30px;
}
.one_flexblock .one_flexitems .lines{
	padding-bottom:10px;
}
.one_flexblock .one_flexitems p{
	font-size:14px;
}
.sdpfSlider{
	background:url(/content/dam/nttcom/hq/jp/business/services/network/iot/icms/img/sdpfSlider_bg.jpg) no-repeat top center #eaeef4;
	background-size:cover;
	border-top:5px solid #0d4484;
	padding:60px 0 40px;
}
.sdpfSlider2{
	background-color: #ebeff6;
	padding: 80px 0;
}

.sdpfSlider h2{
	margin: 0 0 30px;
	text-align:center;
}
.sdpfSlider h2 img{
	margin:0 auto;
}
.sdpfSlider .top_txt{
	margin: 30px auto;
	color:#1d8eff;
	font-size: 32px;
	font-weight: bold;
	text-align: center;
}

@media screen and (max-width: 768px) {
	.sdpf_wrap .sdpf_inner{
		width:94%;
	}
	.one_answer_read,.one_flexblock{
		display:block;
		margin-bottom:30px;
	}
	.one_answer_read h3{
		font-size:24px;
		width:100%;
		margin-bottom:10px;
	}
	.one_answer_read p{
		width:100%;
		font-size:14px;
	}
	.one_answer_read,.one_flexblock{
		display:block;
		margin-bottom:30px;
	}
	.one_flexblock .one_flexitems{
		width:100%;
	}
	.one_flexblock .one_flexitems h3{
		padding-bottom:18px;
		font-size:24px;
	}
	.one_flexblock .one_flexitems p{
		font-size:14px;
		margin-bottom:30px;
	}
	/*.sdpfSlider{
		background-size: contain;
	}*/
	.sdpfSlider2{
	padding: 0 0 10px;
	}
	.sdpfSlider h2{
		text-align:center;
	}
	.sdpfSlider h2 img{
		margin:0 auto 30px;
		max-width:100%;
	}
	.sdpfSlider .top_txt{
		font-size: 24px;
	}
}



/* ============================================================
 modal
 ============================================================ */
#modal-content {
	/*font-family:"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Helvetica, sans-serif;*/
	font-family:FrutigerNeueLTW10-Regul,FrutigerNeueW01-Regular,"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Helvetica, sans-serif;
}
.modal {
  background: #004386;
  padding-bottom: 30px;
}
.modal_heading-area {
  margin-bottom: 24px;
  padding: 25px 0 0;
  background: #004386;
}
.modal_heading-wrap {
  box-sizing: border-box;
  max-width: 1040px;
  margin: 0 auto;
  padding: 0 30px;
}
.modal_heading1 .sub_text{
  font-size: 20px;
}
.modal_heading1,
.modal_heading4,
.modal_heading8 {
  box-sizing: border-box;
  margin: 0 auto;
  padding-left: 20px;
  border-left: 4px solid #0098d8;
  font-size: 26px;
  color: #fff;
}
.modal_container {
  background: #fff;
  box-sizing: border-box;
  max-width: 1040px;
  margin: 0 auto 30px;
  padding: 30px 40px 30px;
}
.modal_block {
  position: relative;
  display: block;
}
.modal_area{
	max-width: 960px;
    margin: 0px auto;
    font-size: 16px;
}
.modal_container h2 {
  border: 0 !important;
  padding: 0 !important;
  margin: 0;
  font-size: 26px;
  color: #004386;
  margin-bottom: 40px;
}
.modal_container .right {
  float: right;
  display: block;
}
.modal_container .left {
  float: left;
  display: block;
}
.modal_text {
  margin: 0 0 0.2em;
  font-size: 16px;
  line-height: 1.5;
  color: #333333;
  position: relative;
}
.modal_text p {
  margin-bottom: 20px;
}
.modal_text p:last-child {
  margin-bottom: 0;
}
.modal_block::after {
  clear: both;
  content: '';
  display: block;
}
.modal_container .right.column1 {
  float: none;
  display: block;
  width: 100%;
}
.modal_container .left.column1 {
  float: none;
  display: block;
  width: 100%;
  text-align: center;
}

/**/
#colorbox,
#cboxOverlay,
#cboxWrapper {
  overflow: visible;
}
#colorbox,
#cboxOverlay,
#cboxWrapper {
  overflow: visible;
}
#colorbox.is-active {
  opacity: 1 !important;
}
#colorbox,
#cboxOverlay,
#cboxWrapper {
  overflow: visible;
}
#cboxWrapper {
  transition-property: opacity;
  transition-duration: 400ms;
}
#colorbox {
  outline: 0;
  opacity: 0 !important;
  transition-property: opacity;
  transition-duration: 400ms;
}
#cboxCloseBottom {
  position: absolute;
  bottom: 0;
  left: 0;
  display: table;
  width: 100%;
  height: 60px;
  color: #fff;
  font-size: 16px;
  text-align: center;
  cursor: pointer;
}
#cboxCloseBottom .cboxCloseBottom_inner {
  display: table-cell;
  vertical-align: middle;
}
#cboxCloseBottom span {
  padding-left: 20px;
  background: url(/content/dam/nttcom/hq/jp/business/services/network/iot/icms/img/icon_close_modal.png) no-repeat 0% 50% / 14px 14px;
  line-height: 1;
}
#cboxClose {
    display: none;
    top: -45px;
    right: 0;
    width: 30px;
    height: 30px;
    background: url(/content/dam/nttcom/hq/jp/business/services/network/iot/icms/img/icon_close_modal.png) no-repeat 0 0;
}
@media screen and (max-width:768px) {
  .modal {
    min-width: 0;
  }
  .modal_heading-area {
    margin-bottom: 20px;
    padding: 15px 0 0;
  }
  .modal_heading-wrap {
    padding: 0 20px;
  }
  .modal_heading1 {
    padding-left: 13px;
    border-left: 3px solid #0098d8;
    font-size: 1.4em;
  }
  .modal_container {
    padding: 20px 20px 10px;
  }
  .modal_container h2 {
    display: block;
    font-size: 1.3em;
    border-bottom: 2px solid #004386 !important;
  }
  .modal_container .right {
    float: none;
    display: block;
    width: 100%;
    margin-top: 10px;
    text-align: center;
  }
  .modal_container .left {
    float: none;
    display: block;
    width: 100%;
    margin-top: 10px;
  }
  .modal_text {
    margin: 0 0 12px;
    font-size: 1em;
    line-height: 1.5;
  }
}
@media screen and (max-width:480px) {
  #cboxClose {
    top: 35px;
    right: 10px;
    width: 40px;
    height: 40px;
    background-position: 50% 50%;
    background-size: 20px 20px;
  }
  #cboxLoadedContent {
    background-color: transparent;
  }
  iframe {
    width: 90% !important;
    margin: 0px auto;
    background-color: rgba(0, 0, 0, 0);
  }
  .modal {
    margin-bottom: 50px;
  }
  .modal_heading-area {
    margin-bottom: 20px;
    padding: 15px 0 0;
  }
  .modal_heading-wrap {
    padding: 0 5%;
  }
  .modal_heading1 {
    padding-left: 10px;
    border-left: 3px solid #0098d8;
    font-size: 1.2em;
  }
  .modal_container {
    padding: 20px 10px 10px 10px;
    margin: 0 auto 20px;
    width: 100%;
  }
  .modal_text {
    margin: 0 0 12px;
    font-size: 0.9em;
    line-height: 1.5;
  }
  /**/
  #cboxContent {
    margin-top: 70px;
  }
  #cboxCloseBottom {
    bottom: -75px;
  }
}


.modal_area p{
    margin: 0;
}


/* txt */
.modal_area .icms_modal_intro_txt{
	font-size:18px;
	margin-bottom: 30px;
}
.modal_area .icms_modal_txt-12{
	font-size:12px;
}
.modal_area .icms_modal_txt-14{
	font-size:14px;
}
.modal_area .mgb10{
	margin-bottom: 10px;
}

/* table */
.modal_area .icms_modal_table{
	width: 100%;
	border-bottom: 1px solid #ccc;
	border-left: 1px solid #ccc;
	border-collapse: collapse;
    border-spacing: 0;
}
.modal_area .icms_modal_table th{
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	background-color: #0d4484;
	color: #FFF;
	text-align: center;
	font-weight: normal;
	padding: 15px;
}
.modal_area .icms_modal_table td{
	border-top: 1px solid #ccc;
	border-right: 1px solid #ccc;
	text-align: center;
	padding: 15px;
}
.modal_area .icms_modal_table td.icms_modal_sim{
	background-color: #ebf6fc;
}

.modal_area .icms_modal_table td .icms_modal_lineheight{
	line-height: 2em;
}
@media screen and (max-width: 768px){
	.modal_area .icms_modal_table{
		width: 100%;
	}
	.modal_area .icms_modal_table th{
		padding: 10px;
	}
	.modal_area .icms_modal_table td{
		padding: 10px;
	}
	.modal_area .icms_modal_table td.icms_modal_sim{
		vertical-align: top;
	}
	.modal_area .icms_modal_table td .icms_modal_lineheight{
		line-height: 2em;
	}
}

/* flex */
.modal_area .icms_modal_flex{
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding-right: 35px;
	padding-left: 35px;
}
.modal_area .icms_modal_flex .icms_modal_flex_ttl{
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 10px;
}
.modal_area .icms_modal_flex ul.icms_modal_flex_list{
	margin: 0;
	padding: 0;
	list-style: none;
}
.modal_area .icms_modal_flex ul.icms_modal_flex_list li{
	margin: 0;
	padding: 0;
	font-size: 14px;
}
.modal_area .icms_modal_bdr{
	border-bottom: 1px solid #0d4484;
	padding-bottom: 40px;
	margin-bottom: 40px;
}
@media screen and (max-width: 768px){
	.modal_area .icms_modal_flex{
		display: block;
		padding-right: 0;
		padding-left: 0;
	}
	.modal_area .icms_modal_flex_img{
		margin-top: 10px;
	}
	.modal_area .icms_modal_flex_img img{
		max-width: 100%;
		width: auto;
	}
}

/* arrow */
.modal_area .icms_modal_arrow_box{
	display: flex;
	justify-content: space-between;
	align-items: center;
	background-color: #f7f7f7;
	padding: 0 30px;
	line-height: 0;
}
.modal_area .icms_modal_arrow_01,
.modal_area .icms_modal_arrow_02,
.modal_area .icms_modal_arrow_03{
	padding-left: 205px;
	line-height: 0;
}
.modal_area .icms_modal_arrow_01{
	margin-top: -21px;
    margin-bottom: -30px;
}
.modal_area .icms_modal_arrow_02{
	margin-top: -30px;
    margin-bottom: -30px;
}
.modal_area .icms_modal_arrow_03{
	margin-top: -21px;
    margin-bottom: -30px;
}
.modal_area .icms_modal_arrow_txt{
	flex: 0 1 430px;
	line-height: 1.3;
}
.modal_area .icms_modal_arrow_txt01{
	font-size: 18px;
	color: #c11519;
	font-weight: bold;
}
.modal_area .icms_modal_arrow_txt02{
	font-size: 16px;
}
@media screen and (max-width: 768px){
	.modal_area .icms_modal_arrow_box{
		display: block;
		padding: 10px;
	}
	.icms_modal_arrow_box_img{
		text-align: center;
	}
	.icms_modal_arrow_box_img img{
		max-width: 100%;
		width: auto;
	}
	.modal_area .icms_modal_arrow_01,
	.modal_area .icms_modal_arrow_02,
	.modal_area .icms_modal_arrow_03{
		padding-left: 0;
		text-align: center;
	}
	.modal_area .icms_modal_arrow_01{
		margin-top: 0;
		margin-bottom: 0;
	}
	.modal_area .icms_modal_arrow_02{
		margin-top: 0;
		margin-bottom: 0;
	}
	.modal_area .icms_modal_arrow_03{
		margin-top: 0;
		margin-bottom: 0;
	}
	.modal_area .icms_modal_arrow_txt{
		flex: none;
	}
}



/* relatedServicesBanner */
a.relatedServicesBannerLink{}
a.relatedServicesBannerLink:hover *{
  opacity: 0.7;
}
.relatedServicesBanner{
  border: 2px solid #004386;
  padding: 10px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  position: relative;
}
.relatedServicesBanner:after{
  position: absolute;
  content: '';
  width: 11px;
  right: 10px;
  top: 50%;
  background-image: url(/content/dam/nttcom/hq/jp/business/services/network/iot/icms/img/icn_arrow.png);
  background-repeat: no-repeat;
  height: 18px;
  transform: translate(0,-50%);
}
.relatedServicesBanner .relatedServicesBannerImg{
  flex: 0 0 490px;
}
.relatedServicesBanner .relatedServicesBannerImg img{
  width: 100%;
  max-width: 100%;
  display: block;
}
.relatedServicesBanner .relatedServicesBannerTxt{
  padding: 0 30px 0 20px;
  flex: 1 1 465px;
}

@media only screen and (min-width: 0px) and (max-width: 768px){
  .relatedServicesBanner{
    display: block;
  }
  .relatedServicesBanner:after{
    content: none;
  }
  .relatedServicesBanner .relatedServicesBannerTxt{
    padding: 10px 0 0;
  }
}


/* top_conditions */
.top_conditions {
  margin: 80px 0 120px;
  border-top: 5px solid #0d4484;
  padding-top: 80px;
}
.top_conditions_ttl {
  font-size: 30px;
  font-weight: bold;
  color: #004386;
  margin-bottom: 30px;
}
.icms_inner_s {
  max-width: 980px;
  margin: 0 auto;
}
@media only screen and (min-width: 0px) and (max-width: 768px){
  /* top_conditions */
  .top_conditions {
    margin: 5rem 0 7.5rem;
    padding-top: 60px;
  }
  .top_conditions_ttl {
    font-size: 22px;
    margin-bottom: 1.875rem;
  }
  .icms_inner_s {
    max-width: 100%;
  }
}