@charset "UTF-8";


/* =========================================================
 * hqnw オーバー
 * @ PAGE
 * ====================================================== */

.ocn-sec_boxlink {
	margin:0 auto;
	text-align: center;
	margin-bottom: 20px;
}
.ocn-sec_boxlink a{
	display: inline-block;
	padding: 8px 30px;
	border: 2px solid #004386;
	background: #eaf5fc;
}
.ocn-sec_boxlink a:hover{
	display: inline-block;
	padding: 8px 30px;
	border: 2px solid #518fce;
	background: #ffffff;
}
.ocn-sec_over a:hover img {
	opacity: 0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
}
.ocn-sec_textover a:hover,
.ocn-sec_textover .ocn-sec_textover_target:hover,
.ocn-sec_textover_area:hover .ocn-sec_textover_target {
	opacity: 0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha(opacity=60)";
}


/* =========================================================
 * H　見出し
 * ====================================================== */

h2{
	font-size: 24px;
	color:#333;
	margin-top:0px;
	margin-bottom:20px !important;
}

.computeFlatTypeSection h1 {
	margin-top:10px;
	margin-bottom: 20px;
	font-size:38px;
	line-height: 1.2;
}

.computeFlatTypeSection {
	margin-bottom: 40px;
}

.tabNavigation,
.tabNavi-transition {
	display: block;
	margin-bottom:40px;
}
.tabSection {
	margin-bottom: 10px;
}

.parsys h2 {
	font-weight: bold !important;
	font-size:28px;
	border-bottom:3px solid #004386 !important;
	margin-top:40px;
	margin-bottom:20px;
	padding-top:10px !important;
	padding-bottom:10px !important;
	line-height:1.3 !important;
}
.parsys h3 {
	font-weight: bold !important;
	font-size:22px !important;
	border-bottom:2px solid #004386 !important;
	margin-top:20px !important;
	margin-bottom:10px !important;
	padding-top:10px !important;
	padding-bottom:10px !important;
	line-height:1.3 !important;
}

.parsys h4 {
	font-weight: bold !important;
	font-size:18px;
	border-bottom:1px solid #004386 !important;
	margin-top:10px !important;
	margin-bottom:10px !important;
	padding-top:10px !important;
	padding-bottom:10px !important;
	line-height:1.3 !important;
}

.parsys h5 {
	font-weight: bold !important;
	font-size:14px;
	border-bottom:1px solid #004386 !important;
	margin-top:10px !important;
	margin-bottom:10px !important;
	padding-top:10px !important;
	padding-bottom:10px !important;
	line-height:1.3 !important;
}
.parsys h6 {
	font-weight: bold !important;
	font-size:10px;
	border-bottom:1px solid #004386 !important;
	margin-top:10px !important;
	margin-bottom:10px !important;
	padding-top:10px !important;
	padding-bottom:10px !important;
	line-height:1.3 !important;
}

.ocn-sec_ttl_hq {
	background: #004386 !important;
	color: #fff !important;
	padding: 13px 10px!important;
	overflow: hidden !important;
	border-radius: 6px !important;
	-webkit-border-radius: 6px;
	-moz-border-radius: 6px;
	text-align: center;
}

.ocn-sec_ttl_hq.nobottom {
    -webkit-border-bottom-right-radius: 0px !important;
    -webkit-border-bottom-left-radius: 0px !important;
    -moz-border-radius-bottomright: 0px !important;
    -moz-border-radius-bottomleft: 0px !important;
}

.ocn-sec_table_840{
	width:840px;
	margin:0 auto;
	text-align: center;
}

.ocn-sec_caption{
	padding-left: 1em;
	text-indent: -1em;
	font-size: 82%;	/*13px相当*/
	line-height: 1.3;
	margin:5px 0 0 0;
}
.ocn-sec_caption_num{
	padding-left: 1.8em;
	text-indent: -1.8em;
	font-size: 82%;	/*13px相当*/
	line-height: 1.3;
	margin:5px 0 0 0;
}


.ocn-sec_bg_line ul {
	-webkit-margin-before: 0.5em;
	-webkit-margin-after: 0.5em;
	-webkit-margin-start: 0px;
}
ul.ocn-sec_caption {
	padding-left: 0;
	margin-left: 15px;
}
ul.ocn-sec_caption li {
	padding-left: 0em;
	text-indent:  0em;
}


/* =========================================================
 * モバイル1
 * ====================================================== */
@media only screen
 and (min-width: 0px)
 and (max-width: 768px) {

	.computeFlatTypeSection h1 {
		margin-top:10px;
		margin-bottom: 20px;
		font-size:28px;
		line-height: 1.2;
	}
	h2 {
		font-weight: bold !important;
		font-size:18px;
		padding-top:10px;
		padding-bottom: 0px;
		margin-top:0;
		margin-bottom:10px;
	}

	.separate table {
		border: none;
	}
	.separate table thead {
		display: none;
	}
	.separate table th,
	.separate table td {
		border-left: 1px solid #999;
		border-bottom: 1px solid #999;
		padding: 8px;
	}

	.separate tbody tr{
		border-top: 1px solid #999;
		display: block;
		margin-bottom: 20px;
	}

	.separate tbody td{
		border-right: 1px solid #999;
		border-bottom: 1px solid #999;
		display: block;
		padding-right: 4px;
		text-align: left;
	}

	.separate table td::before {
		content: attr(data-label);
		float: left;
		font-weight: bold;
	}
	.tabChange_dropdown select {
		font-size: 94% !important;
		font-size: 1.2rem;
	}
	.accordion_header {
		font-size: 1rem;
	}

	.accordion_contents {
		padding-left: 10px;
		padding-top: 0px;
		padding-bottom: 10px;
		width: 97.6%;
	}
	table th, table td {
		font-size: 88% !important;
	}

	.parsys h2 {
		font-size:16px;
	}
	.parsys h3 {
		font-size:14px !important;
	}

	.parsys h4 {
		font-size:13px;
	}

	.parsys h5 {
		font-size:12px;
	}
	.parsys h6 {
		font-size:11px;
	}
	.accordion_contents .image_component img {
		width:99% !important;
		height:99% !important;
		text-align: center;
		margin-top: 15px !important;
	}
	table.ocn-sec_table_840 {
		width:97.6% !important;
	}
}


/* =========================================================
 * sec_box01
 * ====================================================== */
.sec_box01 {
	background-color: #fff;
	text-align: center;
	padding: 20px;
	border: 2px solid #004387;
	border-radius: 8px;
	margin-top: 10px;
}
.sec_box01 h3 {
	color: #004386;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding-bottom: 16px !important;
	font-size: 24px !important;
	border-bottom: none !important;
}
.sec_box01 .icon {
	height: 170px;
}
.sec_box01 .lead {
	padding-top: 16px;
	text-align: left;
}
.sec_box01 ul {
	-webkit-margin-before: 0em;
	-webkit-margin-after: 0em;
	-webkit-padding-start: 20px;
}


/* =========================================================
 * sec_box03
 * ====================================================== */
.sec_box03 {
	border: 2px solid #004387;
	border-radius: 8px;
	background-color: #fff;
	padding: 20px;
}
.sec_box03 .left_area {
	width: 113px;
	margin: 0 auto;
	text-align: center;
}
.sec_box03 .center_area {
	width: 645px;
	padding-left: 20px;
}
.sec_box03 .right_area {
	width: 458px;
	padding-left: 20px;
}
.sec_box03 h3 {
	color: #004386;
	font-size: 24px !important;
	border-bottom: none !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding-top: 0 !important;
}
.sec_box03 ul {
	list-style-type: none;
	-webkit-padding-start: 0;
	padding-left: 0;
	color: #fff;
}
.sec_box03 li {
	float: left;
	width: 418px;
	text-align: center;
	padding: 5px 6px;
	background-color: #18933B;
	border-radius: 6px;
	margin-bottom: 10px;
}
.sec_box03 .point-3 li {
	width: 29.4%;
	margin-right: 5px;
}
.sec_box03 .point-2 li {
	width: 46%;
	margin-right: 5px;
}
.sec_box03 .point-3 li.small {
	font-size: 12px;
	line-height: 24px;
	height: 24px;
}

/* =========================================================
 * sec_box04
 * ====================================================== */
.sec_box04 {
	border: 2px solid #004387;
	border-radius: 8px;
	background-color: #EAF5FC;
	padding: 20px 30px 30px 30px;
}
.sec_box04 .left_area {
	width: 503px;
	margin: 0 auto;
	text-align: center;
}
.sec_box04 .right_area {
	padding-left: 20px;
}
.sec_box04 h3 {
	color: #004386;
	font-size: 20px !important;
	border-bottom: none !important;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	padding-top: 0 !important;
	letter-spacing: -0.08em;
}
.sec_box04 h3 .strong {
	font-size: 30px !important;
	font-weight: bold;
}



/* =========================================================
 * PC/SP 480px
 * ====================================================== */

.display_pc {
	display: inline;
}
.none_display_pc {
	display: none;
}

@media only screen and (min-width: 0px) and (max-width: 480px) {

	.display_pc {
		display:none;
	}
	.none_display_pc {
		display: inline;
	}
}


/* =========================================================
 * table
 * ====================================================== */

table th {
	font-weight: bold;
}
table ul {
	-webkit-margin-before: 0em;
	-webkit-margin-after: 0em;
	-webkit-padding-start: 20px;
	padding-left: 20px;
	margin: 0;
}


/* =========================================================
 * 汎用上書き
 * ====================================================== */

.parsys .mt0_hq{
	margin-top: 0px !important;
}
.parsys .mb0_hq{
	margin-bottom: 0px !important;
}
.parsys .mt70_hq {
	margin-top: 70px !important;
}
.parsys .mb70_hq {
	margin-bottom: 70px !important;
}
.parsys .mt80_hq {
	margin-top: 80px !important;
}
.parsys .mb80_hq {
	margin-bottom: 80px !important;
}


/* =========================================================
 * 汎用ブロック
 * ====================================================== */

.ocn-sec_block_840 {
	width: 840px !important;
	margin: 0 auto;
}

@media only screen and (min-width: 0px) and (max-width: 740px) {
	.ocn-sec_block_840 {
		width: 100% !important;
		margin: 0 auto;
	}
}


/* =========================================================
 * コンタクトボタン　更新版
 * @ contact_bt
 * ====================================================== */

.contact_bt{
	position:fixed;
	right:20px;
	z-index:100;
}
.contact_bt{
	background:#ffd601;
	border:2px solid #004386;
	padding: 12px 20px 12px 20px;
	font-family: FrutigerNeueLTW10-Bold,Frutiger Neue W01 Bd,"ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Helvetica, sans-serif;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	box-shadow: 2px 2px 4px rgba(0,0,0,0.3); 
}
.contact_bt a{
	text-decoration:none;
	color:#193477;
	font-size:18px;
	font-weight:bold;
}

.contact_bt a:after {
	content: url(/content/dam/nttcom/hq/jp/business/services/network/vpn/vpn/img/icon_right_arrow.png);
	margin-left: 10px;
}


@media only screen and (min-width: 0px) and (max-width: 740px) {

	.contact_bt a{
		font-size:16px !important;
	}
}


/* =========================================================
 * column_component 上書き
 * ====================================================== */

.column_component.colnum-2 > .cc-colnum:nth-child(1) {
	padding: 0 10px 0 0;
}
.column_component.colnum-2 > .cc-colnum:nth-child(2) {
	padding: 0 0 0 10px;
}
.column_component.colnum-3 > .cc-colnum:nth-child(1) {
	padding: 0 20px 0 0;
}
.column_component.colnum-3 > .cc-colnum:nth-child(2) {
	padding: 0 10px 0 10px;
}
.column_component.colnum-3 > .cc-colnum:nth-child(3) {
	padding: 0 0 0 20px;
}
.column_component.colnum-4 > .cc-colnum:nth-child(1) {
	padding: 0 15px 0 0;
}
.column_component.colnum-4 > .cc-colnum:nth-child(2) {
	padding: 0 10px 0 5px;
}
.column_component.colnum-4 > .cc-colnum:nth-child(3) {
	padding: 0 5px 0 10px;
}
.column_component.colnum-4 > .cc-colnum:nth-child(4) {
	padding: 0 0 0 15px;
}


/* =========================================================
 * other
 * ====================================================== */

.fs-24{
	font-size:24px !important;
}
.flex_box {
	display: flex;
	justify-content: center;
	align-items: center;
}
.side_box > div {
	display: table-cell;
	vertical-align: middle;
}

@media only screen and (min-width: 0px) and (max-width: 768px) {
	.column_component.colnum-2 > .cc-colnum:nth-child(1),
	.column_component.colnum-2 > .cc-colnum:nth-child(2) {
		padding: 10px 0;
	}
	.column_component.colnum-3 > .cc-colnum:nth-child(1),
	.column_component.colnum-3 > .cc-colnum:nth-child(2),
	.column_component.colnum-3 > .cc-colnum:nth-child(3) {
		padding: 10px 0;
	}
	.column_component.colnum-4 > .cc-colnum:nth-child(1),
	.column_component.colnum-4 > .cc-colnum:nth-child(2),
	.column_component.colnum-4 > .cc-colnum:nth-child(3),
	.column_component.colnum-4 > .cc-colnum:nth-child(4) {
		padding: 10px 0;
	}
	.non_display_sp {
		display:none;
	}
	.non_display_pc {
		display:block;
	}

	.side_box > div {
		display: block;
	}

	.fs-30 {
		font-size:24px !important;
	}

	.bnr_sp img {
		width: 100%;
	}
	.bnr_sp.mgt60 {
		/* mgt30相当 */
		margin-top: 1.875rem !important;
	}
	.bnr_sp.mgt80 {
		/* mgt40相当 */
		margin-top: 2.5rem !important;
	}

	.sec_box03 .center_area,
	.sec_box03 .right_area {
		width: auto;
		padding-top: 20px;
		padding-left: 0;
	}
	.sec_box03 li {
		float: none;
		width: auto;
	}
	.sec_box03 .point-2 li,
	.sec_box03 .point-3 li {
		width: auto;
	}
	.sec_box03 .point-3 li.small {
		font-size: 100%;
		line-height: normal;
		height: auto;
	}

	.sec_box04 {
		padding: 20px;
	}
	.sec_box04 img {
		width: 100%;
	}
	.sec_box04 .left_area {
		width: auto;
	}
	.sec_box04 .right_area {
		width: auto;
		padding-top: 20px;
		padding-left: 0;
	}

}

