@charset "utf-8";

/* ========================================================
	template.css => テンプレート用CSS
======================================================== */
html,body{
    width: 100%;
    overflow-x: hidden;
}
html {
	font-size: 62.5%;
}
body {
	background-color: #fff;
	font-size: 10px;
	font-size: 1rem;
	line-height: 1.7;
	color: #1e273d;
	font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", "メイリオ", "Meiryo", Verdana,Arial, Helvetica, sans-serif;
	-webkit-text-size-adjust: 100%;
}
body.m {
	font-family: "メイリオ", "Meiryo", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro W3", Verdana,Arial, Helvetica, sans-serif;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
	line-height: 1.7;
}
a {
	color: #616465;
	text-decoration: none;
	-webkit-transition: color 0.15s, background-color 0.15s, background-image 0.15s, border 0.15s, opacity 0.15s;
	-o-transition: color 0.15s, background-color 0.15s, background-image 0.15s, border 0.15s, opacity 0.15s;
	transition: color 0.15s, background-color 0.15s, background-image 0.15s, border 0.15s, opacity 0.15s;
}

a.text-link{
	color:#0044CC;
	text-decoration:underline;
}

a.text-link:hover {
	color:#0044CC;
	text-decoration:none;
}

a:hover {
}
a.a_reverse,
.a_reverse a {
	text-decoration: none;
}
a.a_reverse[href]:hover,
.a_reverse a[href]:hover {
	text-decoration: underline;
}

#container a {
	color:#0044CC;
	text-decoration:underline;
}
#container a:hover {
	color:#0044CC;
	text-decoration:none;
}

#container .catch{border: 1px solid #ff3900;
border-radius: 3px; padding:5px; color:#ff3900; text-align:left;}


label {
	cursor: pointer;
}
input, select, textarea, button {
	margin: 0;
	vertical-align: middle;
	font-family: inherit;
	outline: none;
	font-size: 100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

button {
	cursor: pointer;
}
iframe {
	vertical-align: middle;
}


#archiveMenu dt{
    display:block;
    height:50px;
    line-height:50px;
    cursor:pointer;
    background:url(../images/i_swich.png) 3px -72px no-repeat;
    text-decoration:underline;
	padding-left:20px;
	color:#0044CC;
    }
#archiveMenu dd{
    display:none;
	padding-left:20px;
	color:#0044CC;
    }
#archiveMenu dt.active{
    background:url(../images/i_swich.png) 3px 20px no-repeat;
    }


@media screen and (max-width: 680px) {
	img {
		max-width: 100%;
		height: auto;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	iframe {
		max-width: 100%;
		height: 200px;
	}
}


/* pc / sp
============================================================================================================ */
.sp,
.sps {
	display: none !important;
}
@media screen and (max-width: 680px) {
	.pc {
		display: none !important;
	}
	.sp {
		display: block !important;
	}
	img.sp, span.sp, br.sp, em.sp, strong.sp {
		display: inline !important;
	}
}
@media screen and (max-width: 370px) {
	.sps {
		display: block !important;
	}
	img.sps, spsan.sps, br.sps, em.sps, strong.sps {
		display: inline !important;
	}
}


/* sp
============================================================================================================ */
@media screen and (max-width: 680px) {
	*[data-label] img {
		display: none;
	}
	*[data-label]:before {
		content: attr(data-label);
	}
	*[data-label-r]:after {
		content: attr(data-label-r);
	}

	.sp_mincho {
		font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", serif;
	}
}

/* font-size
============================================================================================================ */
.fz_s {
	font-size: 12px;
	font-size: 1.2rem;
	line-height: 1.5;
}
.fz_m {
}
.fz_l {
	font-size: 16px;
	font-size: 1.6rem;
	line-height: 1.8;
}
.fz_ll {
}
@media screen and (max-width: 680px) {
	.fz_s {
		font-size: 1.1rem;
	}
	.fz_l {
		font-size: 1.5rem;
	}
}

/* font-weight
============================================================================================================ */
.fwn {
	font-weight: normal !important;
}

/* color
============================================================================================================ */
.c_black {
	color: #000 !important;
}
.c_green {
	color: #7ea200 !important;
}
.c_gold {
	color: #a58e3d !important;
}

/* letter-spacing
============================================================================================================ */
.ls1 {
	letter-spacing: 1em;
	margin-right: -1em;
}
span.ls1 {
	display: inline-block;
}

/* dot
============================================================================================================ */
.dot {
	display: inline-block;
	margin: 0 -0.2em;
}



/* w
============================================================================================================ */
.w {
	position: relative;
	display: block;
	width: 1100px;
	margin: 0 auto;
	padding: 0 10px;
	}
.pl {
	width: 700px;
	padding: 0 0 0 280px;
}
.mw {
	min-width: 1100px;
}
.w:after,
.mw:after {
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0; overflow: hidden;
}
@media screen and (max-width: 680px) {
	.w {
		width: auto;
		padding: 0;
	}
	.mw {
		min-width: 0;
	}
	.pl {
		width: auto;
		padding: 0 10px;
	}
}



/* hv_wh
============================================================================================================ */
a.hv_wh,
button.hv_wh,
a .hv_wh,
.hv_wh a {
	position: relative;
	display: inline-block;
}
a.hv_wh:after,
button.hv_wh:after,
a .hv_wh:after,
.hv_wh a:after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background-color: rgba(255,255,255,0);
	-webkit-transition: background 0.15s;
	-o-transition: background 0.15s;
	transition: background 0.15s;
	z-index: 3;
}
a.hv_wh:hover:after,
button.hv_wh:hover:after,
a:hover .hv_wh:after,
.hv_wh a:hover:after {
	background-color: rgba(255,255,255,0.3);
}
@media screen and (max-width: 680px) {
	a.hv_wh:after,
	button.hv_wh:after,
	a .hv_wh:after,
	.hv_wh a:after {
		content: none;
	}
}


/* ヘッダー
============================================================================================================ */
#header {
	/*background: #007fc6;*/
	color: #fff;
}
#header .head {
	margin: 0 auto;
	width: 1100px;
	position: relative;
}
#header .head:after {
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0; overflow: hidden;
}
#fix-header {
	position: absolute;
	top: 0px;
	left: 0;
	right: 0;
	z-index: 200;
	background: #007fc6;
}
#fix-header.fixed {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
}
#header .fix-head {
}

.nvr-logo{
	float: left;
	font-size: 11px;
	font-size: 1.1rem;
	color: #fff;
	position: absolute;
	top: 50%;
	margin-top: -22px;
}
.nvr-logo span{
	display:block;
	background: url(../images/nvr_logo.gif) no-repeat left top;
	padding-left: 80px;
}
.nvr-logo a{
	color:#ffffff;
	border:none;
}

.tel {
	float: left;
	line-height: 22pt;
}

.sp-head,.sp-head2{
	display: none;
}



@media screen and (max-width: 680px) {
	#header {
		position: fixed;
		width: 100%;
		background: #f2f2f2;
		color: #666;
		z-index: 100;
	}
	#header .head {
		padding: 0;
		width: auto;
	}
	.sp-head{
		background: #007fc6;
		display: block;
		height: 60px;
		padding: 10px 8px;
		box-sizing: border-box;
	}
	.sp-head:after{
		content:" "; display: block; clear: both; height: 0; line-height: 0;
	}
	.sp-head2{
		background: #222222;
		display: block;
		height: 38px;
		/*padding: 10px 8px;*/
		padding: 5px 8px;
		box-sizing: border-box;
	}
	/*.sp-head2:after{
		content:" "; display: block; clear: both; height: 0; line-height: 0;
	}*/
	.sp-head .mail a{
		width: 80px;
		position: absolute;
		top: 70%;
		right: 50px;
		margin-top: -17px;
		display: block;
		color: #313d57;
		background: url(../images/icon_mail.gif) no-repeat 5px center #eff8fe;
		background-size: 18px auto;
		padding: .5em .2em .5em 1.8em;
		text-align: center;
		font-size: 1.1rem;
		border-radius: 2px;
	}
	.sp-head .nvr-logo{
		font-size: 0.8rem;
		color: #fff;
		position: absolute;
		top: 70%;
		margin-top: -15px;
	}
	.nvr-logo span{
		background-position: center left;
		background-size: 40px auto;
		padding-left: 40px;
}
	.sp-head2 .tel2 {
		color: #fff;
		position: relative;
	}
	.sp-head2 .tel2 img {
		/*height:18px !important;*/
		height:30px !important;
	}
	.sp-head2 .tel2 a {
		height:100%;
		width:100%;
	}

}
.tel a:hover img, .tel2 a:hover img {
	opacity: 0.6; filter: brightness(110%);
	-webkit-transition: all .3s;
	transition: all .3s;
}
/*a[href^="tel:"] { cursor: default; }*/

/* nav
------------------------------------------------------------- */
#header nav {
float: right;
}
#header nav > div {
	position: relative;
}
#header nav > div > div:after {
	content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0; overflow: hidden;
}
#header nav .global {
	float: left;
}




#header nav .global > li {
	position: relative;
	z-index: 2;
	float: left;
	font-size: 14px;
	font-size: 1.4rem;
	border-right: 1px solid #0086ce;
}

#header nav .global > li.sp_menu {
	display: none;
}

#header nav .global > li > a {
	position: relative;
	display: block;
	height: 60px;
	padding: 20px;
	color: #fff;
	text-align: center;
	text-decoration: none;
	line-height: 1.5;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	border-right: 1px solid #0077b7;
}

#header nav .global > li > a.sitelink {
	background-color: #eff8fe;
}

#header nav .global > li:first-child > a {
	border-left: 1px solid #0077b7;
}
#header nav .global .nav_inquiry {
	background:#0bd3af;
	/*background:#ff3900;*/
}
#header nav .global .nav_inquiry li {
	background:none;
}
#header nav .global .nav_support {
	background:#06a9bb;
	/*border-right: 1px solid #0cedc4 !important;*/
	/*background:#ff3900;*/
}
#header nav .global .nav_support li {
	background:none;
}
#header nav .global .nav_support a {
	/*border-right: 1px solid #059dad !important;*/
}
#header nav .global .nav_support li, #header nav .global .nav_support li a {
	border-right: none !important;
}




@media screen and (max-width: 681px) {
#header nav .global > li {
	border-right: none;
}
	
#header nav .global > li.sp_menu {
	display: block;
	}
	
#header nav .global > li > a {
	border-right: none;
}
#header nav .global > li:first-child > a {
	border-left: none;
}

#header nav .global .nav_inquiry,#header nav .global .nav_inquiry li {
	background:none;
}
#header nav .global .nav_support,#header nav .global .nav_support li, #header nav .global .nav_support li a, #header nav .global .nav_support a {
	background:none;
	border-right:none !important;
}

}






#header nav .global ul {
	position: absolute;
	left: -10px;
	top: 60px;
	height: 0;
	overflow: hidden;
	z-index: 10;
}
#header nav .global ul li {
	padding-left: 10px;
}
#header nav .global ul li a {
	min-width: 175px;
	display: block;
	padding: 10px 20px 10px 25px;
	background: #f2f2f2 url(../images/head/snav_arrow.png) no-repeat 10px 50%;
	border-bottom: 1px solid #eae4da;
	font-size: 12px;
	font-size: 1.2rem;
	text-align: left;
	white-space: nowrap;
	text-decoration: none;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transform-origin: 0 0;
	-moz-transform-origin: 0 0;
	-ms-transform-origin: 0 0;
	-o-transform-origin: 0 0;
	transform-origin: 0 0;
	-webkit-transition: all 0.15s;
	-o-transition: all 0.15s;
	transition: all 0.15s;
	-webkit-transform: scale(1, 0);
	-ms-transform: scale(1, 0);
	transform: scale(1, 0);
	opacity: 0;
}
#header nav .global ul li a:hover,
#header nav .global ul li.current a {
	background-color: #fff;
	color: #666;
}

#header nav .global .has_snav.showed ul {
	overflow: visible;
	height: auto;
}
#header nav .global .has_snav.open li a {
	-webkit-transform: scale(1, 1);
	-ms-transform: scale(1, 1);
	transform: scale(1, 1);
	opacity: 1;
}


/*#header nav .hover,
#header nav .global > .current > a:before {
	position: absolute;
	bottom: 10px;
	height: 3px;
	background-color: #fff;
}*/
#header nav .global > .current > a:before {
	content: "";
	left: 5px;
	right: 5px;
}
#header nav .hover {
	-webkit-transition: height 0.1s ease;
	-o-transition: height 0.1s ease;
	transition: height 0.1s ease;
	height: 0;
}
#header nav .hover.mov {
	-webkit-transition: all 0.3s ease, height 0.15s ease;
	-o-transition: all 0.3s ease, height 0.15s ease;
	transition: all 0.3s ease, height 0.15s ease;
	height: 3px;
	z-index: 10;
}


@media screen and (max-width: 680px) {
	#header .nav-btn {
		position: absolute;
		right: 0;
		top: 40%;
		z-index: 10;
	}
	#header .nav-btn a {
		position: relative;
		display: block;
		width: 50px;
		height: 55px;
		z-index: 2;
	}
	#header .nav-btn:before,
	#header .nav-btn a:before,
	#header .nav-btn a:after {
		content: "";
		position: absolute;
		left: 12px;
		right: 12px;
		top: 50%;
		height: 3px;
		margin-top: -1px;
		background-color: #fff;
		-webkit-transition: all 0.2s;
		-o-transition: all 0.2s;
		transition: all 0.2s;
	}
	#header .nav-btn a:before {
		-webkit-transform: translateY(-9px);
		-ms-transform: translateY(-9px);
		-o-transform: translateY(-9px);
		transform: translateY(-9px);
	}
	#header .nav-btn a:after {
		-webkit-transform: translateY(9px);
		-ms-transform: translateY(9px);
		-o-transform: translateY(9px);
		transform: translateY(9px);
	}

	/* open */
	#header.open .nav-btn:before {
		opacity: 0;
	}
	#header.open .nav-btn a:before {
		-webkit-transform: translateY(0) rotate(45deg);
		-ms-transform: translateY(0) rotate(45deg);
		transform: translateY(0) rotate(45deg);
	}
	#header.open .nav-btn a:after {
		-webkit-transform: translateY(0) rotate(-45deg);
		-ms-transform: translateY(0) rotate(-45deg);
		transform: translateY(0) rotate(-45deg);
	}


	#header nav {
		position: fixed;
		top: 98px;
		left: 0;
		right: 0;
		height: 0;
		opacity: 0;
		overflow: hidden;
		background: #f2f2f2;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		-webkit-transition: height 0.3s, opacity 0.3s;
		-o-transition: height 0.3s, opacity 0.3s;
		transition: height 0.3s, opacity 0.3s;
	}
	#header nav .hover,
	#header nav .global .current a:before {
		display: none;
	}
	#header nav > div {
		height: 100%;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
	}
	#header nav > div > div {
		height: 100%;
		overflow-y: auto;
	}

	#header nav div > ul,
	#header nav div > ul li {
		float: none !important;
	}
	#header nav div > ul li {
		border-bottom: 1px solid #fff;
	}
	#header nav div > ul a {
		position: relative;
		height: auto !important;
		display: block;
		padding: 10px 25px !important;
		text-align: left !important;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		text-decoration: none;
		color: #666;
	}

	#header nav .global > li > a {
		color: #333;
		font-weight: bold;
	}


	/* open */
	#header.open nav {
		height: 100%;
		opacity: 1;
	}

	#header nav .global ul {
		position: static;
		height: 0;
		overflow: hidden !important;
		-webkit-transition: height 0.3s;
		-o-transition: height 0.3s;
		transition: height 0.3s;
	}
	#header nav .global ul li {
		border-top: 1px solid #fff;
		border-bottom: 0;
	}
	#header nav .global ul li a {
		padding: 10px 25px;
		background: #f2f2f2;
		border-bottom: 0;
		white-space: normal;
		-webkit-transform: scale(1);
		-ms-transform: scale(1);
		transform: scale(1);
		opacity: 1;
		color: #666;
	}
	#header nav .global ul li a:hover,
	#header nav .global ul li.current a {
		background: #f2f2f2;
		color: #666;
	}

	#header nav .global .showed ul {
		overflow: visible;
		height: auto;
	}

	#header nav .global .has_snav > a:before{
		content: "";
		display: block;
		position: absolute;
		left: auto;
		bottom: auto;
		right: 20px;
		top: 50%;
		width: 13px;
		height: 3px;
		margin-top: -1px;
		background-color: #313d57;
		-webkit-transition: all 0.2s;
		-o-transition: all 0.2s;
		transition: all 0.2s;
	}
	#header nav .global .has_snav > a:after {
		content: "";
		display: block;
		position: absolute;
		left: auto;
		bottom: auto;
		right: 25px;
		top: 50%;
		width: 3px;
		height: 13px;
		margin-top: -3px;
		background-color: #313d57;
		-webkit-transition: all 0.2s;
		-o-transition: all 0.2s;
		transition: all 0.2s;
	}
	#header nav .has_snav > a:before {
		-webkit-transform: translateY(3px);
		-ms-transform: translateY(3px);
		-o-transform: translateY(3px);
		transform: translateY(3px);
	}
	#header nav .has_snav > a.open:before {
		-webkit-transform: translateY(0) rotate(180deg);
		-ms-transform: translateY(0) rotate(180deg);
		transform: translateY(0) rotate(180deg);
	}
	#header nav .has_snav > a.open:after {
		display:none;
	}
}

@media screen and (min-width: 681px) {
	#header nav .global .has_snav ul {
		height: 0 !important;
	}
	#header nav .global .has_snav.showed ul {
		height: auto !important;
	}
}
	nav .nvr-logo{
		display: block
	}

.site-type{
	display: block;
	background: #222222;
	/*padding: 10px 0;
	font-size: 12px;
	font-size: 1.2rem;*/
	color:#FFF;
	border-top:5px solid #222222;
	height:35px;
}
.site-type:after{
	content:" "; display: block; clear: both; height: 0; line-height: 0;
}
.site-type ul{
	float: right;
	margin: 0px 10px 0 0;
	height:35px;
}
.site-type ul li{
	display: inline-block;
	margin-left: 10px;
	border-right: 1px solid #000;
	padding-right: 15px;
	font-size:11px;
}

.site-type ul li a{color:#fff;}

.site-type ul li a:hover{
	text-decoration: underline;
}



.site-type ul li.active{
	background-image: url(../images/icon_active.png);
	background-repeat: no-repeat;
	background-position: center bottom;
        height:29px;
}









.site-type ul li.current{
	color: #fff;
	font-weight: bold;
}
.site-type .logo{
	float: right;
}
@media screen and (max-width: 681px) {
	.site-type{
		display: none;
	}
	.head .nvr-logo{
		display: none;
	}
}





/* sp show nav
------------------------------------------------------------- */
@media screen and (max-width: 680px) {

}


/* コンテナ
============================================================================================================ */
#container {
	position: relative;
	font-size: 14px;
	font-size: 1.4rem;
}
@media screen and (max-width: 680px) {
	#container {
		font-size: 1.3rem;
		padding: 0 10px;
	}
}



/* copyright
------------------------------------------------------------- */
.copyright {
	padding: 10px 0;
	background-color: #313d57;
	text-align: center;
	margin-top: 45px;
}
.copyright small {
	font-size: 10px;
	font-size: 1rem;
	color: #fff;
}

@media screen and (max-width: 680px) {

}





/* ===================================================================================================================

	コンテンツ

=================================================================================================================== */

/* main-img-box
============================================================================================================ */
#main-img-box {
	background: url(../images/sub_main_bg.jpg) repeat-x center;
	height: 300px;
	width: 100%;
	margin-top: 100px;
	margin-bottom: 40px;
	position: relative;
}

/*サポート用150px*/
#main-img-box-150 {
	background: url(../images/sub_main_bg.jpg) repeat-x center;
	height: 150px;
	width: 100%;
	margin-top: 100px;
	margin-bottom: 40px;
	position: relative;
}

#main-img-box > section,#main-img-box-150 > section{
	width: 1100px;
	margin: auto;
	position: relative;
	display: table;
	height:inherit;
}

.page-title{
	display: table-cell;
	vertical-align: middle;
	font-size: 30px;
	font-size: 3rem;
	text-align: center;
	line-height: 1.4em;
}

.page-title-s{
    font-size: 14px;
    top: -16px;
    position: relative;
}

#main-img-box .main-img,#main-img-box-150 .main-img {
	display: table-cell;
	vertical-align: middle;
	text-align: right;
}
@media screen and (max-width: 680px) {
	#main-img-box-150 {
	height: auto;
	margin-top:73px;
	}
	#main-img-box {
		background-size: cover;
		height: auto;
		position: relative;
		/*padding-top: 60px;*/
		margin-top: 72px;
	}
	#main-img-box > section,#main-img-box-150 > section{
		width: auto;
		margin: auto;
	}
	.page-title{
		font-size: 2rem;
		font-weight: 700;
		position: relative;
		left: 0;
		right: 0;
		top: 0;
		margin: auto;
		padding:1.8em 0 1.5em 0;
		text-align: center;
		line-height: 1.4;
		display: block;/* 20160905*/
	}
	
/* 20160905*/
	#main-img-box .text-none .main-img{
		display: block;
		text-align: center;
	}
	#main-img-box .main-img{
	display: block;
	text-align:center;
	}
	
	#main-img-box-150 .main-img{
	display: none;
	}
	
	#main-img-box .main-img img{
	max-width:60%;
	}
}

#main-img-box.mb-none,#main-img-box-150.mb-none {
	margin-bottom: 0;
}

#main-img-box section.main-has-text{
	height: 300px;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	display: block;
}
.main-has-text .main-text{
	position: absolute;
	top: 50%;
	left: 0;
	margin: -4.5em auto 0;
	text-align: center;
}
.main-has-text .page-title{
	display:block;
	font-size: 30px;
	font-size: 3rem;
}
.main-has-text .main-text p {
	font-size: 18px;
	font-size: 1.8rem;
	margin-top: 10px;
}
.main-has-text .main-img{
	display: block;
	position: absolute;
	/*top: 50%;*/
	right: 0;
	margin: auto;
}
@media screen and (max-width: 680px) {
	#main-img-box section.main-has-text{
		height: auto;
		margin: auto;
		position: relative;
		top: 0;
		bottom: 0;
		right: 0;
		left: 0;
		display: block;
		padding: 20px 10px 0;
	}
	.main-has-text .main-text{
		position: relative;
		top: 0;
		left: 0;
		margin: 0 auto 0;
		text-align: center;
	}
	.main-has-text .page-title{
		font-size: 2rem;
		position: relative;
		left: 0;
		right: 0;
		top: 0;
		margin: auto;
		text-align: center;
		line-height: 1.4;
	}
	.main-has-text .main-text p{
		font-size: 1.3rem;
		margin: 10px 0 20px;
	}
	.main-has-text .main-img{
		display: block;
		position: relative;
		top: 0;
		right: 0;
		margin: 0 auto 0;
	}
	.main-has-text {
		padding:0px !important;
	}
}

/* topic-path
============================================================================================================ */
.topic-path{
	font-size: 12px;
	font-size: 1.2rem;
	color: #666;
	position: absolute;
	left: 0;
	top: 10px;
	z-index:20;
}
.topic-path li{
	display: inline-block;
}
.topic-path li a:after{
	content:">";
	margin-left: 5px;
}

@media screen and (max-width: 680px) {
	.topic-path{
		position: relative;
		/*top: 40px;*/
		left: 0;
		width: 98%;
		/*display: block;*/
		margin: auto;
		box-sizing: border-box;
		font-size: 1.1rem;
		z-index:0;
	}
	
	.topic-path li a{
	display: block;
	padding:22px 0px 0px 3px;
	}
}




/* main-left
============================================================================================================ */
#main-left{
	width: 72.72%;
	float: left;
}
@media screen and (max-width: 680px) {
	#main-left{
		width: auto;
		float: none;
	}
}




/* aside
============================================================================================================ */
aside{
	width: 23.63%;
	float: right;
}
aside dt{
	background:#007fc6;
	color: #fff;
	text-align: center;
	padding: 5px;
}
aside dd{
	margin-bottom: 20px;
}
aside dd li{
	border-bottom: 1px solid #d9d9d9;
}
aside dd li:last-child{
	border-bottom: none;
}

aside dt.blog-title{
	background: #007fc6;
	color: #fff;
	text-align:	center;
	padding: 5px;
}

aside dd a{
	display: block;
	padding: 10px 15px 10px 26px;
	color:#1e273d !important;
	text-decoration:none !important;
}
aside dd a:hover{
	background:#f2f2f2;
	color: #007fc6 !important;
}

@media screen and (max-width: 680px) {
	aside{
		width: auto;
		float: none;
		margin-top: 40px;
		clear:both;
	}
	
	aside dt.blog-title dd a{
	text-align:	center;
}

	
}


/* list-arrow
============================================================================================================ */
.list-arrow li{
position: relative;
vertical-align: middle;
}
.list-arrow li:before,
.list-arrow li:after{
position: absolute;
top: 0;
bottom: 0;
left: 0;
margin: auto;
content: "";
vertical-align: middle;
}
.list-arrow li:before{
	left: 15px;
	box-sizing: border-box;
	width: 4px;
	height: 4px;
	border: 4px solid transparent;
	border-left: 4px solid #007fc6;
}

.lead > p{
	margin-bottom: 20px;
}


/* section-border
============================================================================================================ */
.section-border{
	border-top: 1px solid #d9d9d9;
	padding-top: 20px;/*2018/09*/
	margin-top: 20px;/*2018/09*/
	clear:both;
}

.section-border div + div{
	margin-top: 20px;
}
@media screen and (max-width: 680px) {
	.section-border{
		padding-top: 20px;/*2018/09*/
		margin-top: 20px;
	}
	.section-border div + div{
		margin-top: 25px;
	}
}



/* img-left img-right
============================================================================================================ */
.img-left:after,
.img-right:after{
	content:" "; display: block; clear: both; height: 0; line-height: 0;
}
.img-left img{
	float: left;
	width: 50%;
}
.img-left .text{
	float: right;
	/*width: 43.75%;*/
	width: 45%;
}
.img-right img{
	float: right;
	width: 50%;
}
.img-right .text{
	float: left;
	/*width: 43.75%;*/
	width: 45%;
}

.tokucho .img-left img{
	float: left;
	width: 40%;
}
.tokucho .img-left .text{
	float: right;
	width: 55%;
}
.tokucho .img-right img{
	float: right;
	width: 40%;
}
.tokucho .img-right .text{
	float: left;
	width: 55%;
}

.img-left .text p,
.img-right .text p{
	margin-bottom: 20px;
}

.tokucho_m .img-left {
	margin-bottom:2em;
}
.tokucho_m .img-left img{
	float: left;
	width: 9.09%;
}
.tokucho_m .img-left .text{
	float: right;
	width: 87.27%;
}

@media screen and (max-width: 680px) {
	.img-left img, .tokucho .img-left img, .tokucho_m .img-left img{
		float: none;
		width: auto;
		margin: 15px auto auto auto;
		display: block;
	}
	.img-left .text, .tokucho .img-left .text, .tokucho_m .img-left .text{
		float: none;
		width: auto;
		margin: 0px;
	}
	.img-right img, .tokucho .img-right img{
		float: none;
		width: 100%;
		margin: 15px auto auto auto;
		display: block;
	}
	.img-right .text, .tokucho .img-right .text{
		float: none;
		width: auto;
		margin: 0px;
	}
	.img-left .text p,
	.img-right .text p{
		margin-bottom: 10px;
	}
	.section + .section{
		padding-top: 30px;
	}
}


/* link-s
============================================================================================================ */
.link-s{
	background:#eff8fe;
	border: 1px solid #21a4fa;
	border-radius: 3px;
	width: 190px;
	box-sizing: border-box;
	display: block;
	text-align: center;
	padding: 4px 5px;
	color: #616465 !important;
	text-decoration: none !important;
}
.link-s:hover{
	background:#fff;
	text-decoration: none;
}
@media screen and (max-width: 680px) {
	.link-s{
		width: 100%;
		display: block;
		padding: 5px;
	}
}


/* local-nav
============================================================================================================ */
.local-nav{
	display: block;
	margin: 40px auto 0;
}
.local-nav li{
	display: inline-block;
	background: #f2f2f2;
	font-size: 14px;
	font-size: 1.4rem;
}
.local-nav a{
	color: #1e273d;
	display: block;
	padding: 10px 15px 10px 30px;
	border: 1px solid #f2f2f2;
}
.local-nav .current{
	padding: 10px 15px 10px 30px;
	border: 1px solid #0086ce;
	background: #fff;
	color: #0086ce;
}
.local-nav a:hover{
	border: 1px solid #0086ce;
	background: #fff;
	color: #0086ce;
}
@media screen and (max-width: 680px) {
	.local-nav{
		display: none;
	}
}


/* cv-box
============================================================================================================ */
 .cv-box{
	background: #f2f2f2;
	margin-top: 40px;
	font-size:14px;
	font-size:1.4rem;
}
.cv-box ul{
	display: table;
}
.cv-box li{
	border-right: 1px solid #e0e0e0;
	display: table-cell;
	position: relative;
	width: 25%;
	box-sizing: border-box;
	color:#313d57;
	text-align: center;
}
.cv-box li > a{
	display: block;
	border-right: 2px solid #fafafa;
	padding: 30px;
	color: #313d57;
}
.cv-box li:first-child{
	border-left: 1px solid #e0e0e0;
}
.cv-box li:first-child > a{
	border-left: 2px solid #fafafa;
}
.cv-box li strong{
	font-size: 16px;
	font-size: 1.6rem;
	display: block;
	margin-top: 60px;
}
.cv-box .link-btn{
	border: 1px solid #313d57;
	background: #fff;
	color:#313d57;
	display: inline-block;
	border-radius: 4px;
	padding: 2px 30px;
	margin-top: 30px;
}
.cv-box .link-btn:hover{
	background: #313d57;
	color:#fff;
}

.cv-box .scene{
	background: url(../images/icon_scene.gif) no-repeat center 20px;
}
.cv-box .scene p{
	margin-top: 47px;
}

.cv-box .faq{
	background: url(../images/icon_faq.gif) no-repeat center 20px;
}
.cv-box .faq p{
	margin-top: 47px;
}

.cv-box .camera{
	background: url(../images/icon_camera.gif) no-repeat center 20px;
}
.cv-box .camera p{
	margin-top: 47px;
}

.cv-box .dl{
	background: url(../images/icon_dl.gif) no-repeat center 20px;
}
.cv-box .dl p{
	margin-top: 20px;
}

.cv-box .contact{
	background: url(../images/icon_contact.gif) no-repeat center 20px;
}
.cv-box .contact p{
	margin-top: 47px;
}

.cv-box .consul{
	background: url(../images/icon_consul.gif) no-repeat center 20px;
}
.cv-box .consul p{
	margin-top: 20px;
}
@media screen and (max-width: 680px) {
	.cv-box{
		font-size:1.1rem;
		margin-top: 0;
	}
	.cv-box p{
		display: none;
	}
	.cv-box ul{
		display: -webkit-flex;
		display: -moz-flex;
  		display: flex;
		border-left: none;
		-webkit-flex-direction: row;
		-moz-flex-direction: row;
		flex-direction:row;
		-webkit-flex-wrap: wrap;
		-moz-flex-wrap:wrap;
		flex-wrap:wrap;
	}
	.cv-box li{
		border-right: 1px solid #e0e0e0;
		border-bottom: 1px solid #e0e0e0;
		display: block;
		width: 25%;
	}
	.cv-box .scene,
	.cv-box .faq,
	.cv-box .camera,
	.cv-box .dl,
	.cv-box .contact,
	.cv-box .consul{
		background-position: center 1em;
		background-size: 32px auto;
	}
	.cv-box li a:after{
		content:"";
		display: block;
		margin-top: 3.5em;
		white-space: pre ;
	}
	.cv-box .scene a:after{
		content:"利用シーン";
	}
	.cv-box .faq a:after{
		content:"FAQ";
	}
	.cv-box .camera a:after{
		content:"対応カメラ";
	}
	.cv-box .dl a:after{
		content:"ダウンロード";
	}
	.cv-box .contact a:after{
		content:"お問い合わせ";
	}
	.cv-box .consul a:after{
		content:"無料相談";
	}
	.cv-box li > a{
		padding: 10px 8px;
		width: auto;
		min-height: 100%;
		display: block;
		box-sizing: border-box;
	}
	.cv-box li strong{
		display: none;
	}
	.cv-box li strong span{
		display: none;
	}
	.cv-box .link-btn{
		display: none;
	}
}


/* #topics-box
============================================================================================================ */

.topics-title{
	text-decoration: underline;
}


#topics-box{
	background: #313d57;
	padding: 20px 0 40px;
	font-size: 13px;
	font-size: 1.3rem;
	color: #fff;
	z-index: 5;
}
.topics{
	width: 100%;
	display: inline-block;
	/*border-right: 1px solid #242d3f;*/
	/*padding-right: 40px;*/
	position: relative;
	vertical-align: middle;
	box-sizing: border-box;
}

.topics a{color:#ffffff!important;}

.topics:after{
	content:" ";
	/*border-right: 2px solid #3f4c6b;*/
	min-height: 100%;
	position: absolute;
	top: 0;
	right: -4px;
}
.topics > p{
	font-size: 20px;
	font-size: 2rem;
	color: #fff;
	margin-bottom: 20px;
}
.topics li{
	/*border-bottom: 2px solid #3f4c6b;*/
	margin-bottom: 20px;
	float:left;
	width:49%;
	margin-right:10px;
}
.topics li:after{
	content:" "; display: block; clear: both; height: 0; line-height: 0;
}
.topics li a{
	display: table;
	/*border-bottom: 1px solid #242d3f;*/
	color: #fff;
	padding: 0 10px 20px 0;
}
.topics li .thum{
	width: 150px;
	display: table-cell;
	vertical-align: top;
	overflow: hidden;
	position: relative;
}
.topics li .thum img{
	max-width:140%;
	min-width:100%;
	width:auto;
	min-height:100%;
	max-height:140%;
	height:auto;
	position:absolute;
	top:-40%;
	right:-40%;
	bottom:-40%;
	left:-40%;
	margin:auto;
}
.topics li dl{
	display: table-cell;
	vertical-align: top;
	padding-left: 10px;
}
.topics li:last-child{
	border-bottom: none;
	margin-bottom: 0;
}
.topics li:last-child a{
	border-bottom: none;
	padding-bottom: 0;
}
.topics li .cate{
	background: #1fa3fa;
	font-size: 12px;
	font-size: 1.2rem;
	padding: 2px 5px;
	margin-right: 10px;
}
.topics li dt{
	margin-top: 10px;
}
@media screen and (max-width: 680px) {
	
	
	.topics li{
	/*border-bottom: 2px solid #3f4c6b;*/
	margin-bottom: 20px;
	float:none;
	width:100%;
	margin-right:0px;
}
	
	#topics-box{
		padding: 20px 10px 40px;
	}
	.topics{
		width: auto;
		display: block;
		border-right: none;
		padding-right: 0;
	}
	.topics:after{
		border-right: none;
	}
	.topics li .thum{
		width: 100px;
	}
	.topics li .cate{
		display: block;
		margin-bottom: 5px;
	}
}


/* sns-box
============================================================================================================ */
.sns-box{
	display: inline-block;
	box-sizing: border-box;
	vertical-align: middle;
	margin-left: 40px;
	width: 30%;
}
.sns-box li{
	border: 1px solid #fff;
	border-radius: 4px;
	margin-bottom: 18px;
	text-align: center;
}
.sns-box li a{
	display: block;
	padding: 10px;
	box-sizing: border-box;
	color: #fff;
}
.sns-box li strong{
	display: block;
	font-size: 16px;
	font-size: 1.6rem;
}
@media screen and (max-width: 680px) {
	.sns-box{
		display: block;
		width: auto;
		margin: 30px 0 0;
		text-align: center;
	}
	.sns-box li{
		display: inline-block;
		border: 1px solid #fff;
		border-radius: 84px;
		margin-bottom: 18px;
		text-align: center;
		position: relative;
		margin-right: 20px;
	}
	.sns-box li a{
		width: 84px;
		height: 84px;
		display: block;
	}
	.sns-box li img{
		position: absolute;
		top: 0;
		bottom: 0;
		right: 0;
		left: 0;
		margin: auto;
	}
	.sns-box li strong{
		font-size: 1.4rem;
	}
	.sns-box .btn-faq{
		display: none;
	}
}



/* foot-map
============================================================================================================ */
.foot-map{
	font-size: 12px;
	font-size: 1.2rem;
	margin-top: 60px;
	position: relative;
    display: flex;
}
.foot-map .nav {
	margin-right: -3.7%;
}
.foot-map .nav:after {
	content:" "; display: block; clear: both; height: 0; line-height: 0;
}
.foot-map  .nav li{
	display: block;
	float: left;
	width: 220px;
}
.foot-map  .nav li:nth-of-type(6n-2){
	display: block;
	float: left;
	width: 220px;
}
.foot-map  .nav li:nth-of-type(6n-2) li{
	display: block;
	float: left;
	width: 220px;
}
.foot-map .nav ul{
	margin: 5px 0 0 18px;
}
.foot-map .nav ul li{
	margin-top: 8px;
}
.foot-map .nav > li span{
	display: block;
	font-weight: bold;
	font-size: 13px;
	font-size: 1.3rem;
}
.foot-map .nav > li span:before{
	content:"●";
	margin-right: 2px;
	font-size: 16px;
	font-size: 1.6rem;
}
.foot-map a{
	color: #313d57 !important;
	text-decoration:none !important;
}
.foot-map a:hover{
	text-decoration: underline !important;
}
@media screen and (max-width: 680px) {
	.foot-map{
		margin-top: 0;
	}
.foot-map .nav{
		display: none;
	}
}

/* icon-nav
============================================================================================================ */
.icon-nav{
	margin-top: 60px;
	font-size: 12px;
	font-size: 1.2rem;
}
.icon-nav li{
	display: inline-block;
	margin-right: 20px;
}
.icon-nav .home a{
	background: url(../images/icon_home.gif) no-repeat left top;
	background-size: 21px 18px;
	padding-left: 30px;
	display: block;
}
.icon-nav .contact a{
	background: url(../images/icon_contact_s.gif) no-repeat left top;
	background-size: 21px 17px;
	padding-left: 30px;
	display: block;
}
.icon-nav .sitemap a{
	background: url(../images/icon_sitemap.gif) no-repeat left top;
	background-size: 24px 18px;
	padding-left: 30px;
	display: block;
}
.icon-nav .company a{
	background: url(../images/icon_company.gif) no-repeat left top;
	background-size: 14px 21px;
	padding-left: 25px;
	display: block;
}


.icon-nav .facebook a{
	background: url(../images/icon_facebook.gif) no-repeat left top;
	background-size: 20px 20px;
	padding-left: 25px;
	display: block;
}

.icon-nav .twitter a{
	background: url(../images/icon_twitter.gif) no-repeat left top;
	background-size: 22px 17px;
	padding-left: 25px;
	display: block;
}


@media screen and (max-width: 680px) {
	.icon-nav{
		margin-top: 0;
		padding: 0 0.5%;
		box-sizing: border-box;
	}
	.icon-nav:after{
		cntent:" "; display: block; clear: both; height: 0; line-height: 0;
	}
	.icon-nav li{
		width: 50%;
		text-align: center;
		background: #F2F2F2;
		box-sizing: border-box;
		margin: 0;
		float: left;
		border-right: 1px solid #e0e0e0;
		padding: 4px;
	}
	.icon-nav li:last-child{
		float: right;
	}
	.icon-nav li a{
		padding: 10px;
	}
	.icon-nav .home,
	.icon-nav .contact{
		display: none;
	}
	.icon-nav .sitemap a{
		background-position: 1.5em center;
	}
	.icon-nav .company a{
		background-position: 3em center;
	}
	
	
	.icon-nav .facebook a{
		background-position: 1.5em center;
		border-top: 1px solid #e0e0e0;
	}
	.icon-nav .twitter a{
		background-position: 1.8em center;
		border-top: 1px solid #e0e0e0;
	
	
}}


/* footer
============================================================================================================ */
footer{
	border-top: 1px solid #ececec;
	margin-top: 15px;
	margin-bottom: 15px;	
	text-align: center;
	color: #888;
	font-size: 12px;
	font-size: 1.2rem;
	padding-top: 25px;
	line-height: 1.8;
	position: relative;
}
.foot-logo{
	color: #313d57;
	display: block;
	margin: 25px auto 0;
}
.foot-logo2{
	margin: 0 0 25px;
}
footer address{
	color: #313d57;
	margin-top: 10px;
	margin-bottom: 10px;
}
@media screen and (max-width: 680px) {
	footer{
    margin-top: 0;
    padding-top: 0;
    line-height: 1.8;
    padding-bottom: 120px;
    min-height: 40vh;
    box-sizing: border-box;
	}
}

/* ===================================================================================================================

	モジュール

=================================================================================================================== */

/* section
============================================================================================================ */
.section + .section,
.section-border + .section,
.section_s + .section,
.c-s-box1_2 + .c-s-box1_2
{
	margin-top: 40px;
}
@media screen and (max-width: 680px) {
	.section + .section {
		margin-top: 30px;
	}
}



/* title
============================================================================================================ */
.title_l {
	padding-bottom: 10px;/*2018/09*/
	font-size: 30px;
	font-size: 3rem;
	color: #007fc6;
	text-align: center;
	font-weight: normal;
	margin: 0 auto;
}
.title_m {
	font-size: 24px;
	font-size: 2.4rem;
	color: #1e273d;
	/*margin-bottom: 20px;*/
	font-weight: normal;
}
.title_s {
	font-size: 16px;
	font-size: 1.6rem;
	margin-bottom: 5px;
}
.caption {
	margin-bottom: 10px !important;
	font-size: 18px;
	font-size: 1.8rem;
	color: #007fc6;
	text-align: left;
	font-weight: normal;
}
.title_m h3 {
	font-weight:normal;
}

@media screen and (max-width: 680px) {
	.title_l {
		font-size: 1.8rem;
		font-weight: 700;
	}
	.title_m {
		font-size: 1.6rem;
		margin-bottom: 10px;
	}
	.title_s {
		font-size: 1.4rem;
	}
	.title_m2 {
		font-size: 1.4rem;
		margin-bottom: 10px;
	}

	.title_s2 {
		font-size: 1.2rem;
	}
	.caption {
			font-size: 1.4rem;
		}
	.title_small {
		font-size: 1.4rem;
	}
}


/* table
============================================================================================================ */
table.basic {
	width: 100%;
	border: 1px solid #d9d9d9;
	line-height: 1.6;
	table-layout: fixed;
}
table.basic th,
table.basic td {
	padding: 0.6em 1em;
	border: 1px solid #d9d9d9;
	word-wrap:break-word;
    position: relative;
}
table.basic th {
	background:#f2f2f2;
}
table.basic.td_cetner td {
	text-align: center;
}
table.basic.td_right td {
	text-align: right;
}


table .w10 {width: 10%;}
table .w15 {width: 15%;}
table .w20 {width: 20%;}
table .w25 {width: 25%;}
table .w30 {width: 30%;}
table .w35 {width: 35%;}
table .w40 {width: 40%;}
table .w45 {width: 45%;}
table .w50 {width: 50%;}

@media screen and (max-width: 680px) {
	table.basic {
		border-width: 2px;
		font-size: 1.2rem;
		line-height: 1.5;
	}
	table.basic th,
	table.basic td {
		padding: 0.5em;
	}
	table.basic th {
		width: 10%;
	}
	table.basic td {
		width: 20%;
	}

}


/* link
============================================================================================================ */
a.blank {
	padding: 3px 26px 3px 0;
	background: url(../images/parts/ico_blank.png) 100% no-repeat;
}
a.pdf {
	padding: 3px 22px 3px 0;
	background: url(../images/parts/ico_pdf.png) 100% no-repeat;
}

@media screen and (max-width: 680px) {
	a.blank {
		background-image: url(../images/parts/ico_blank_sp.png);
		-webkit-background-size: 16px;
		background-size: 16px;
	}
	a.pdf {
		background-image: url(../images/parts/ico_pdf_sp.png);
		-webkit-background-size: 16px;
		background-size: 16px;
	}
}


/* block_link
============================================================================================================ */
.block_link {
	display: block;
	text-decoration: none;
	color: #000;
}


/* box_link / border_link
============================================================================================================ */
.box_link {
	position: relative;
	display: inline-block;
	min-width: 210px;
	padding: 8px;
	background: #3c3c3c;
	border-bottom: 3px solid #000000;
	border-radius: 4px;
	text-decoration: none;
	color: #fff;
	text-align: center;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.box_link:before {
	content: "";
	position: absolute;
	right: 12px;
	top: 50%;
	width: 6px;
	height: 12px;
	margin-top: -6px;
	background-image: url(../images/parts/btn_arrow_w.png);
}
a.box_link:hover:before,
a:hover .box_link:before {
	right: 11px;
}
a.box_link:after,
a .box_link:after {
	bottom: -3px;
}

@media screen and (max-width: 680px) {
	a.box_link,
	a .box_link {
		display: block;
		min-width: 0;
		padding: 6px 15px;
	}
	.box_link:before {
		right: 8px;
		background-image: url(../images/parts/btn_arrow_w_sp.png);
		-webkit-background-size: 6px;
		background-size: 6px;
	}
	a.box_link:hover:before,
	a:hover .box_link:before {
		right: 8px;
	}
}

.border_link {
	position: relative;
	display: inline-block;
	min-width: 210px;
	padding: 8px;
	border: 1px solid #535353;
	text-decoration: none;
	text-align: center;
	color: #000;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.border_link:before {
	content: "";
	position: absolute;
	right: 12px;
	top: 50%;
	width: 6px;
	height: 12px;
	margin-top: -6px;
	background-image: url(../images/parts/btn_arrow.png);
}
a.border_link:hover,
a:hover .border_link {
	background-color: #f3f3f3;
}
a.border_link:hover:before,
a:hover .border_link:before {
	right: 11px;
}
@media screen and (max-width: 680px) {
	a.border_link,
	a .border_link {
		display: block;
		min-width: 0;
		padding: 6px 15px;
	}
	.border_link:before {
		right: 8px;
		background-image: url(../images/parts/btn_arrow_sp.png);
		-webkit-background-size: 6px;
		background-size: 6px;
	}
	a.border_link:hover:before,
	a:hover .border_link:before {
		right: 8px;
	}
}

.box_link.green {
	background-color: #7ea200;
	border-color: #638001;
}
.box_link.gold {
	background-color: #a58e3d;
	border-color: #7d6920;
}
.box_link.white {
	background-color: #ffffff;
	border-color: #cccccc;
	color: #000;
}
.box_link.white:before {
	background-image: url(../images/parts/btn_arrow_green.png);
}

.border_link.green {
	border-color: #7ea200;
	color: #7ea200;
}
.border_link.green:before {
	background-image: url(../images/parts/btn_arrow_green.png);
}
a.border_link.green:hover,
a:hover .border_link.green {
	background-color: #f1fed2;
}
@media screen and (max-width: 680px) {
	.box_link.white:before,
	.border_link.green:before {
		background-image: url(../images/parts/btn_arrow_green_sp.png);
	}
}

.border_link.gold {
	border-color: #a58e3d;
	color: #a58e3d;
}
.border_link.gold:before {
	background-image: url(../images/parts/btn_arrow_gold.png);
}
a.border_link.gold:hover,
a:hover .border_link.gold {
	background-color: #fef4d2;
}
@media screen and (max-width: 680px) {
	.border_link.gold:before {
		background-image: url(../images/parts/btn_arrow_gold_sp.png);
	}
}


.border_link.white {
	border-color: #fff;
	color: #fff;
}
.border_link.white:before {
	background-image: url(../images/parts/btn_arrow_w.png);
}
a.border_link.white:hover,
a:hover .border_link.white {
	background-color: transparent;
}
@media screen and (max-width: 680px) {
	.border_link.white:before {
		background-image: url(../images/parts/btn_arrow_w_sp.png);
	}
}


.box_link.db,
.border_link.db {
	display: block;
	min-width: 0;
}

/* box_link_l
------------------------------------------------------------- */
.box_link_l {
	display: inline-block;
	min-width: 560px;
	padding: 18px;
	background: #2b2b2b url(../images/parts/bg_pattern_black.jpg) 50%;
	color: #fff;
	font-size: 22px;
	font-size: 2.2rem;
	line-height: 1.4;
	text-align: center;
	text-decoration: none;
	font-weight: bold;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
@media screen and (max-width: 680px) {
	.box_link_l {
		display: block !important;
		min-width: 0;
		-webkit-background-size: 140px;
		background-size: 140px;
		font-size: 1.8rem;
	}
}

/* li
============================================================================================================ */
ul.inline {
	text-align: center;
}
ul.inline li {
	display: inline-block;
	margin: 0 5px;
}
@media screen and (max-width: 680px) {
	ul.inline {
		margin: 0 -3px;
	}
	ul.inline:after {
		content: "."; display: block; height: 0; clear: both; visibility: hidden; line-height: 0;
	}
	ul.inline li {
		float: left;
		margin: 0;
		padding: 0 3px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}
	ul.inline.column4 li {
		width: 25%;
	}
}


/* square
------------------------------------------------------------- */
ul.square li {
	position: relative;
	padding-left: 1em;
}
ul.square li:before {
	content: "■";
	position: absolute;
	left: 0;
}

/* disc
------------------------------------------------------------- */
ul.disc li {
	position: relative;
	padding-left: 1em;
}
ul.disc li:before {
	content: "・";
	position: absolute;
	left: 0;
}

/* notes
------------------------------------------------------------- */
ul.notes li {
	position: relative;
	padding-left: 1em;
}
ul.notes li:before {
	content: "※";
	position: absolute;
	left: 0;
}

/* decimal
------------------------------------------------------------- */
ol.decimal {
	list-style-type: decimal;
}
ol.decimal li {
	margin-left: 2em;
}

/* parentheses
------------------------------------------------------------- */
ol.parentheses li {
	position: relative;
	padding-left: 2em;
}
ol.parentheses li .num {
	position: absolute;
	left: 0;
}



/* dl
============================================================================================================ */
dl.float {
}
dl.float dt {
	float: left;
}
dl.float dd {
	margin-left: 14em;
	padding-bottom: 1em;
}

@media screen and (max-width: 680px) {
	dl.float {
	}
	dl.float dt {
		float: none;
	}
	dl.float dd {
		margin-left: 0;
	}
}
dl.dl_sec dd ~ dt {
	margin-top: 25px;
}


/* img
============================================================================================================ */
@media screen and (max-width: 680px) {
	.sp_img50p img {
		max-width: 50%;
	}
}


/* zoom_img
============================================================================================================ */
.zoom_img {
	position: relative;
}
.zoom_img:before {
	content: "";
	position: absolute;
	right: 0;
	bottom: 0;
	width: 50px;
	height: 50px;
	background-image: url(../images/parts/ico_zoom.png);
}
.zoom_img.has_border img {
	border: 4px solid #7ea200;
}
@media screen and (max-width: 680px) {
	.zoom_img:before {
		width: 25px;
		height: 25px;
		-webkit-background-size: 100%;
		background-size: 100%;
	}
	.zoom_img.has_border img {
		border-width: 2px;
	}
}

/* img.radius
============================================================================================================ */
img.radius {
	border-radius: 1000px;
}


/* #pagetop
============================================================================================================ */
#pagetop{
	background:#b4b4b4;
	color: #fff !important;
	text-decoration:none !important;
	padding: .8em;
	position: absolute;
	top: -42px;
	right: 50%;
	margin-right: -545px;

}
@media screen and (max-width: 680px) {
	#pagetop{
		display: block;
		padding: .8em;
		margin-bottom: 20px;
		position: relative;
		top: 0;
		right: 0;
		margin-right: 0;
	}
}

.color_b{
	color: #007FC6;
}



/* .box
============================================================================================================ */
.c-s-box1, .c-s-box2, .c-s-box3, .c-x-box3, .c-s-box3_2, .c-s-box_support, .c-x-box5_2, .c-x-box2_1{
	display:flex;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;

	align-content:stretch;
	-webkit-align-content:stretch;
	-moz-align-content:stretch;
	-ms-align-content:stretch;

	align-items: stretch;
	-webkit-align-items: stretch;
	-moz-align-items: stretch;
	-ms-align-items: stretch;

    flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
}
.c-s-box1:after, .c-s-box2:after, .c-s-box3:after, .c-x-box3:after, .c-s-box3_2:after, .c-s-box_support:after .c-x-box5_2:after, .c-x-box2_1:after{
    clear: both;
}


.c-x-box2_1 .box {
	width:55%;
	height:auto;
}
.c-s-box1 .box {
	width:100%;
	height:auto;
	/*margin:0 0 20px 0;*//*200702高さ修正*/
}
.c-s-box1 .box .image {
	text-align:center;
}

.c-s-box2 .box {
	width:47.5%;
	height:auto;
	margin:0 5% 20px 0;/*200702高さ修正*/
	float:left;
}
.c-s-box2 .box:nth-child(2n) {
	margin-right:0px;
}

.c-s-box2 .box img{
	margin-bottom: 0px;/*200702高さ修正*/
    height: auto;
}

.c-s-box3 .box {
	width:30.00%;
	height:auto;
	margin:0 5% 40px 0;
	float:left;
}
.c-s-box3 .box:nth-child(3n) {
	margin-right:0px;
}

.c-s-box3_2 {
	letter-spacing: -.40em;
}
.c-s-box3_2 .box {
	width:31.66%;
	height:auto;
	margin:0 2.50% 20px 0;
	display: inline-block;
	*display: inline;
    *zoom: 1;
	position: relative;
	letter-spacing: normal;
}
.c-s-box3_2 .box:nth-child(3n) {
	margin-right:0px;
}

.c-s-box_support .box:nth-child(3n) {
	margin-right:0px;
}

.c-s-box_support {
	letter-spacing: -.40em;
}

.c-s-box_support .box {
	width:31.66%;
	height:auto;
	margin:0 2.50% 20px 0;
	display: inline-block;
	*display: inline;
    *zoom: 1;
	position: relative;
	letter-spacing: normal;
}
.c-s-box_support .box-full {
	margin-right: 0px !important;
	width: 100% !important;
	}

.c-x-box3 .box {
	width:30.90%;
	height:auto;
	margin:0 3.64% 40px 0;
	float:left;
}
.c-x-box3 .box:nth-child(3n) {
	margin-right:0px;
}

.c-x-box5_2 {
	letter-spacing: -.40em;
}
.c-x-box5_2 .box {
	width:18.50%;
	height:auto;
	margin:0 1.80% 20px 0;
	display: inline-block;
	*display: inline;
    *zoom: 1;
	position: relative;
	letter-spacing: normal;
}
.c-x-box5_2 .box:nth-child(5n) {
	margin-right:0px;
}

.box img {
	max-width:100%;
	min-height:1px;
}
.box p {
	margin-bottom:20px;
}

.border-box{
	padding:10px;
	border: 1px solid #000000;
    box-sizing: border-box !important;
    -webkit-box-sizing: border-box !important;
    -moz-box-sizing: border-box !important;
    -ms-box-sizing: border-box !important;
}

.padding-box {
	box-sizing:border-box !important;
	-webkit-box-sizing: border-box !important;
	-moz-box-sizing: border-box !important;
	-ms-box-sizing: border-box !important;
	padding:20px;
}
.padding-box2 {
	box-sizing:border-box !important;
	-webkit-box-sizing: border-box !important;
	-moz-box-sizing: border-box !important;
	-ms-box-sizing: border-box !important;
	padding:20px;/*200702高さ修正*/
}

.gray-box {
	background-color:#f2f2f2;
}

.link_box {
    display: block;
	width:100%;
	height:100%;
	border:1px solid #dbdbdb;
	text-decoration:none !important;
}
.link_box:hover {
	border:1px solid #3297d4;
}
.link_box div {
	max-width:100%;
	min-height:1px;
}

.box .link_box p {
	color:#1e273d;
}
.link_box .link-s {
    background: #eff8fe none repeat scroll 0 0;
    border: 1px solid #21a4fa;
    border-radius: 3px;
    box-sizing: border-box;
    color: #616465 !important;
    display: block;
    padding: 0 5px;
    text-align: center;
    text-decoration: none !important;
    width: 100%;
	margin:0px;
}

.cv-btn a {
	padding:16px 80px;
	background-color:#0bd3af;
	border-radius: 3px;
	box-shadow:0px 5px 0px 0px #008770;
	display:inline-block;
	font-size:20px;
	font-weight: bold;
	color:#ffffff !important;
	text-decoration:none !important;
}
.cv-btn a:hover {
	background-color:#00BF9F;
}
.cv-btn.btn-blue a {
	background-color: #007fc6 !important;
	box-shadow: 0px 5px 0px 0px #005e94 !important;
}
.cv-btn.btn-blue a:hover {
	background-color: #006ead !important;
}


@media screen and (max-width: 680px) {
.c-s-box1 .box, .c-s-box2 .box, .c-s-box3 .box, .c-s-box3_2 .box, .c-s-box_support .box, .c-x-box3 .box, .c-x-box2_1 .box {
	flex-basis:auto;
	width:100%;
	height:100%;
	margin:0 0 20px 0;/*2018/09*/
	clear:both !important;
}
.c-x-box5_2 .box {
	width:48.52%;
	height:auto;
	margin:0 2.94% 10px 0;
	display: inline-block;
	*display: inline;
    *zoom: 1;
	position: relative;
	letter-spacing: normal;
}
.c-x-box5_2 .box:nth-child(5n) {
	margin-right:2.94% !important;
}
.c-x-box5_2 .box:nth-child(2n) {
	margin-right:0px !important;
}
	
.c-s-box_support_sp .box:nth-child(2n) {
	margin-right:0px !important;
}

.c-s-box_support .box {
	width:48%;
	height:auto;
	margin:0 10px 10px 0 !important;
	display: inline-block;
	*display: inline;
    *zoom: 1;
	position: relative;
	letter-spacing: normal;
}
.c-s-box_support .box-full {
	margin-right: 0px !important;
	width: 100% !important;
	}
.link_box {
	display:block;
}
.btn_box .link-s {
    padding: 0.5px 20px !important;
}
.padding-box2 {
	box-sizing:border-box !important;
	-webkit-box-sizing: border-box !important;
	-moz-box-sizing: border-box !important;
	-ms-box-sizing: border-box !important;
	padding:20px;
}
.cv-btn a {
	padding:10px 20px;
	background-color:#0bd3af;
	border-radius: 3px;
	box-shadow:0px 3px 0px 0px #008770;
	display:block;
	font-size:14px;

	color:#ffffff !important;
	text-decoration:none !important;
}

}

.btn_box {
	margin:0px !important;
	width:100%;
	text-align:right;
}
.btn_box .link-s {
    display: inline;
    padding: 0.5px 60px;
}



/* faq

============================================================================================================ */

dl.search{
	position:relative;
	background-color:#fff;
	border:1px solid #aaa;
	border-radius:6px;
	height:44px;
}

dl.search dt input{
	width:70%;
	background:none;
	border:none;
	padding-left: 8px;
	line-height: 47px;
}
dl.search dd{
	position:absolute;
	top:1px;
	right:1px;
	width:30%;
}
dl.search dd button{
	display:block;
	background:#3a97d3;
	width:100%;
	height:42px;
	border:none;
	border-radius: 0 6px 6px 0;
}
dl.search dd button:hover {
	background:#4e91e4;
}
dl.search dd button span{
	display:block;
	color:#FFF;
}


form > dl.search {
	clear:both;
	margin-left: 3em;
    margin-right: 3em;
}

form > p{
	margin-top:8px;
	text-align:center;
}


ul > li.ques{
	margin-bottom:8px;
    text-indent:-1.4em;
    padding-left:1.4em;

}

ul > li.ques:before{
		color:#3A97D3;
	font-weight:bold;
	margin-right:8px;
	content:"Q:"
}

ul > li.ques:last-child{
	margin-bottom:0px;
}

section .button {
    display: block;
    margin: 20px auto 0;
    color: #616465 !important;
    text-decoration: none !important;
}
section .button:hover {
    background: #fff;
    text-decoration: none;
}

.button {
    background: #eff8fe;
    border: 1px solid #21a4fa;
    border-radius: 3px;
    width: 190px;
    box-sizing: border-box;
    display: block;
    text-align: center;
    padding: 0 5px;
    color: #616465 !important;
    text-decoration: none !important;
}

section .category {

}

section .category > h3 {
    float: none;
    height: 40px;
    text-indent: 15px;
    width: 100%;
    font-size: 90%;
    margin: 0px 0px 0.5em;
    line-height: 40px;
	border:solid 1px #cccccc;
	box-sizing:content-box;
}

@media screen and (max-width: 680px) {

form > dl.search {
	clear:both;
	margin-left: 1em;
    margin-right: 1em;
}

}

/* contents-nav

============================================================================================================ */

.contents-nav{

	display: block;

	margin: 0;

}

.contents-nav li{

	display: inline-block;

	font-size: 14px;

	font-size: 1.4rem;

}

.contents-nav li:after{

    content: '';
    box-sizing: border-box;
    width: 4px;
    padding-right: 16px;
    height: 4px;
    border: 4px solid transparent;
    border-left: 4px solid #007fc6;
}


.contents-nav li{

	display: inline-block;

	font-size: 14px;

	font-size: 1.4rem;

	margin-bottom: 8px;

}

.contents-nav a{

	color: #1e273d;

	display: block;

	padding: 10px 15px 10px 15px;

	border: 1px solid #f2f2f2;

}

.contents-nav a:hover{

	border: 1px solid #0086ce;

	background: #fff;

	color: #0086ce;

}

@media screen and (max-width: 680px) {

	section .category {
    margin-bottom: 0px !important;
}


}

/* list-arrow

============================================================================================================ */

.contents-list-arrow li{

position: relative;

vertical-align: middle;

border: 1px solid #cccccc;

width: 100%;

box-sizing:border-box;

}

.contents-list-arrow li:before,

.contents-list-arrow li:after{

position: absolute;

top: 0;

bottom: 0;

/*left: 0;*/

right: 0;

margin: auto;

content: "";

vertical-align: middle;

}

.lead > p{

	margin-bottom: 20px;

}

@media screen and (max-width: 680px) {
	.topics li .thum{
		display: inline-block;
		width: 100px;
		height: 100px;
	}
}

.nvr-logo a{
	color: #fff;
}

.title_m2 {
	font-size: 18px;
	font-size: 1.8rem;
	color: #1e273d;
	margin-bottom: 20px;
	font-weight:normal;
}
.title_small {
	display:block;
	font-size:18px;
	font-size: 1.8rem;
	margin-bottom: 5px;
}
.title_m h3 {
	font-weight:normal;
}

.txt_c {
	text-align:center !important;
}
.m_bottom20 {
	margin-bottom:20px;
}
.m_bottom40 {
	margin-bottom:40px;
}
.m_top20 {
	margin-top:20px;
}
.m_top40 {
	margin-top:40px;
}

ul.list {
	list-style:circle outside none !important;
	margin: 0 0 0 1em;
}
ul.list ul, ul.list ul ul {
	list-style:circle outside none !important;
	margin-left: 1em;
}
.list li {
    margin-bottom: 0.4em;
    margin-left: 1em;
	margin-top:0px !important;
}
.list ul, .list ul ul {
    margin-top: 1em;
}

ol.num_list {
	margin: 0 0 0 1em;
	list-style-type:decimal;
}
ol.num_list li {
    margin-bottom: 0.2em;
    margin-left: 1em;
	margin-top:0px !important;
}

.sitemap_list p {
	width:100%;
	border-bottom:1px solid #d9d9d9;
	padding:1em 0;
	margin:0 0 2em 0;
	clear:both;
}
.sitemap_list p::before {
    content: "●";
}
.sitemap_list {
	margin-bottom:2em;
}
.sitemap_list .c-s-box2 .box {
	margin-bottom:0px;
}

@media screen and (max-width: 680px) {
.list li {
    margin-bottom: 0.5em;
    margin-left: 1em;
	margin-top:0px !important;
}


.adjust01 {
	margin-top:0px !important;
}
.adjust02 {
	margin-bottom:20px !important;
}
p.adjust03 {
	margin-bottom:20px !important;
}

}

.adjust01 {
	margin-top:51px;
}
p.adjust02 {
	margin-bottom:51px;
}
p.adjust03 {
	margin-bottom:43px;
}

.name {
    color: #1fa3f9 !important;
    font-size: 1.8rem;
    margin-bottom: 20px;
}
@media screen and (max-width: 680px) {
.name {
    color: #1fa3f9 !important;
    font-size: 1.5rem;
    margin-bottom: 10px;
}
}
.adjust_img {
	max-width:80%;
	text-align:center !important;
}
@media screen and (max-width: 680px) {
.adjust_img {
	max-width:100%;
}
}

/* lineup */
ul.icon {
    border-collapse: separate;
    border-spacing: 2px 0;
    display: table;
    width: 100%;
	text-align:center;
	margin-bottom:20px;
}
ul.icon li {
    background: #007fc6 none repeat scroll 0 0;
    color: #fff;
    display: table-cell;
    font-size: 1.2rem;
    padding: 2px 5px;
    vertical-align: middle;
}
.lineup_box1 img {
	max-height:80px;
	max-width:100%;
}
.lineup_box2 img {
	max-height:120px;
	max-width:100%;
}

.table_layout01 {
	width:100%;
	text-align:center;
	vertical-align:middle;
	table-layout: fixed;
}
.table_layout01 th {
	text-align:center;
}
@media screen and (max-width: 680px) {
.table_layout01 {
	font-size:10px !important;
}
.table_layout01 th, .table_layout01 td {
	padding:0.5em 0px !important;
}

}
.table_wrap {
	table-layout: fixed;
	width:100%;
}
.table_wrap td {
	word-wrap:break-word;
}


/* lineup table */
.price {
	width:100%;
	text-align:center;
	vertical-align:middle;
	table-layout: fixed;
}
.price th {
	text-align:center;
}
.price td img {
	max-width:100%;
}
.price .table_img {
	max-height:150px;
	margin:2em 0px;
}
.price .table_img2 {
	max-width:220px;
}
@media screen and (max-width: 680px) {
.price .table_img2 {
	max-width:100%;
}
}

/* form */
table.form_table {
	width:100%;
	text-align:left;
	vertical-align:middle;
	table-layout: fixed;
}
table.form_table th {
	padding:1em 1.5em !important;
}
table.form_table td {
	padding:1em 1.5em !important;
}
.form_table .form_cell {
	display:inline-block;
	margin-right:1.5em;
}
.form_table .form_wrap .form_cell {
	line-height: 2em;
}
.form_table .form_wrap2 .form_cell {
	line-height: 4em;
}
.form_table .form_cell2 {
	display:block;
	line-height: 2em;
}
.form_table input[type="text"], .form_table textarea {
	box-sizing: border-box;
	width:100%;
	max-width:100%;
	padding:0.5em 1em;
	border:1px solid #d9d9d9;
}
.form_table label {
	padding-left:0.5em;
}
.form_table .small_text {
	width:auto !important;
}

.form_table .small_text2 {
	margin-left:2em;
}
@media screen and (max-width: 680px) {
.form_table .small_text2 {
	margin-left:0;
	display:block;
}
table.form_table {
	font-size: 1.4rem !important;
}
table.form_table tr,table.form_table th,table.form_table td {
	display: block;
	width: 100%;
	box-sizing: border-box;
}
table.form_table colgroup {
	display: none;
}
}

.caution {
	font-weight:bold;
}

.btn-check {
	margin:2em auto 3em auto;
	padding:1em 2em;
	background:#3a97d3 none repeat scroll 0 0;
	border: medium none;
	cursor: pointer;
	color:#ffffff;
	font-size:140%;
	display: block;
	border-radius: 6px;
}
.btn-check:hover {
	background:#5dacdf none repeat scroll 0 0;
}

.btn-back {
	margin:2em auto 3em auto;
	padding:1em 2em;
	background:#d9d9d9 none repeat scroll 0 0;
	border: medium none;
	cursor: pointer;
	color:#1e273d;
	font-size:140%;
	display: block;
	border-radius: 6px;
}
.btn-back:hover {
	background:#f2f2f2 none repeat scroll 0 0;
}

/* faq

============================================================================================================ */

dl.search{
	position:relative;
	background-color:#fff;
	border:1px solid #aaa;
	border-radius:6px;
	height:44px;
}

dl.search dt input{
	width:70%;
	background:none;
	border:none;
	padding-left: 8px;
    height:48px;
}

/*safariのみ*/
@media screen and (-webkit-min-device-pixel-ratio:0) {
  ::i-block-chrome, dl.search dt input{
   padding-top: 15px;
   line-height: 48px;
  }
}

dl.search dd{
	position:absolute;
	top:1px;
	right:1px;
	width:30%;
}

dl.search dd button{
	display:block;
	background:#3a97d3;
	width:100%;
	height:42px;
	border:none;
	border-radius: 0 6px 6px 0;
}

dl.search dd button:hover {
	background:#4e91e4;
}

dl.search dd button span{
	display:block;
	color:#FFF;
}


form > dl.search {
	clear:both;
	margin-left: 3em;
    margin-right: 3em;
}

form > p{
	margin-top:8px;
	text-align:center;
}


ul > li.ques{
	margin-bottom:8px;
    text-indent:-1.4em;
    padding-left:1.4em;
}

ul > li.ques:before{
    color:#3A97D3;
	font-weight:bold;
	margin-right:8px;
	content:"Q:"
}

ul > li.ques:last-child{
	margin-bottom:0px;
}

section .button {
    display: block;
    margin: 20px auto 0;
    color: #616465 !important;
    text-decoration: none !important;
}

section .button:hover {
    background: #fff;
    text-decoration: none;
}

.button {
    background: #eff8fe;
    border: 1px solid #21a4fa;
    border-radius: 3px;
    width: 190px;
    box-sizing: border-box;
    display: block;
    text-align: center;
    padding: 0 5px;
    color: #616465 !important;
    text-decoration: none !important;
}

section .category {
}

section .category > h3 {
    float: none;
    height: 40px;
    text-indent: 15px;
    width: 100%;
    font-size: 90%;
    margin: 0px 0px 0.5em;
    line-height: 40px;
	border:solid 1px #cccccc;
	box-sizing:content-box;
}

@media screen and (max-width: 680px) {

form > dl.search {
	clear:both;
	margin-left: 1em;
    margin-right: 1em;
}

}

/* contents-nav

============================================================================================================ */

.contents-nav{
	display: block;
	margin: 0;
}

.contents-nav li{
	display: inline-block;
	font-size: 14px;
	font-size: 1.4rem;
}

.contents-nav li:after{
    content: '';
    box-sizing: border-box;
    width: 4px;
    padding-right: 16px;
    height: 4px;
    border: 4px solid transparent;
    border-left: 4px solid #007fc6;
}


.contents-nav li{
	display: inline-block;
	font-size: 14px;
	font-size: 1.4rem;
	margin-bottom: 8px;
}

.contents-nav a{
	color: #1e273d !important;
	text-decoration: none !important;
	font-weight: bold;
	display: block;
	padding: 10px 15px 10px 15px;
	border: 1px solid #f2f2f2;
}

.contents-nav a:hover{
	border: 1px solid #0086ce;
	background: #fff;
	color: #0086ce;
}

@media screen and (max-width: 680px) {
	section .category {
    margin-bottom: 0px !important;
}
}

/* list-arrow

============================================================================================================ */

.contents-list-arrow li{
	position: relative;
	vertical-align: middle;
	border: 1px solid #cccccc;
	width: 100%;
	box-sizing:border-box;
}

.contents-list-arrow li:before,
.contents-list-arrow li:after{
	position: absolute;
	top: 0;
	bottom: 0;
	/*left: 0;*/
	right: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

.lead > p{
	margin-bottom: 20px;
}




/* link-s

============================================================================================================ */

.btn_box-right {
	float: right;
}

.btn_box-center {
	text-align: center;
}

.p_bottom40 {
    padding-bottom: 40px;
}

.btn_box-left {
    float: left;
    clear: both;
}

/*ご購入検討サポート一覧*/

.link-s-index {
	background: #eff8fe;
    border: 1px solid #21a4fa;
    border-radius: 3px;
    width: 190px;
    box-sizing: border-box;
    display: block;
    text-align: center;
    color: #616465 !important;
    text-decoration: none !important;
	margin-top:15px;
}

.link-s-index a{
    text-decoration: none !important;
	color:#1e273d !important;
	display:block;
}


@media screen and (max-width: 680px) {

.btn_box-right {
	width:100%;
}

.btn_box-left {
    width:100%;
}

}


@media screen and (max-width: 680px) {

dl.text > img.mb20{
	margin-bottom:20px;
}

}

.pt3-box {
	width:100%;
	padding:20px;
	font-size:1.4rem;
}

.pt3-box > dl > dd > ol{
    padding-left: 16px;
    list-style-type: decimal;
}

.pt3-box > dl > dt > h2.caution{
    color:#ff1200;
	font-weight:bold;
}

.pt3-box > dl > dt > h2.caution{
	background: url("../images/icon_caution.png") 0px 4px;
    width: 100%;
    background-repeat: no-repeat;
    text-indent: 16px;
    margin-left: -4px;
}

.pt3-box > dl > dt > p{
	font-weight:bold;
}

.link-btn{
    border: 1px solid #313d57;
    background: #fff;
    color: #313d57;
    display: inline-block;
    border-radius: 4px;
    padding: 2px 30px;
    margin-top: 30px;
}


/*sendback*/
.c-s-box1 .box .svg img{
    text-align: center;
	border:1px solid #dbdbdb;
	width:100%;
}


/*catalogdl*/
.section-border2{
	border-top: 1px solid #d9d9d9;
	padding-top: 20px;/*200702高さ調整*/
	margin-top: 20px;/*200702高さ調整*/
	clear:both;
}

.section-border2 div + div{
	margin-top: 50px;
}

@media screen and (max-width: 680px) {
	.section-border2{
		padding-top: 30px;
		margin-top: 20px;
	}

	.section-border2 div + div{

		margin-top: 25px;

	}

}

.c-s-box1_2{
	display:flex;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;

	align-content:stretch;
	-webkit-align-content:stretch;
	-moz-align-content:stretch;
	-ms-align-content:stretch;

	align-items: stretch;
	-webkit-align-items: stretch;
	-moz-align-items: stretch;
	-ms-align-items: stretch;

    flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;

}

.c-s-box1_2:after{
    clear: both;
}

.c-s-box1_2 .box {
	width:100%;
	height:auto;
	margin:0px;
}

/*box*/

.c-s-box3-2 .box {
	width:31.66%;
	height:auto;
	margin:0 2.5% 20px 0;
	float:left;
}

.c-s-box3-2 .box:nth-child(3n) {
	margin-right:0px;
}



.c-x-box3-2 .box {
	width:30.90%;
	height:auto;
	margin:0 3.64% 40px 0;
	float:left;
}

.c-x-box3-2 .box:nth-child(3n) {
	margin-right:0px;
}


/*160823 consider*/
.c-s-box2-index {

	align-content:stretch;
	-webkit-align-content:stretch;
	-moz-align-content:stretch;
	-ms-align-content:stretch;

	align-items: stretch;
	-webkit-align-items: stretch;
	-moz-align-items: stretch;
	-ms-align-items: stretch;

    flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
}

.section-index{
	overflow:hidden;
	width:100%;
}

.section-index div + div{
	margin-top: 50px;
}

@media screen and (max-width: 680px) {
	.section-index{
		    overflow: hidden;
	}

	.section-index div + div{
		margin-top: 25px;
	}
}

.c-s-box2-index > .c-s-box2-group > .box , .c-s-box2-index2 > .c-s-box2-group > .box{
	height:auto;
	flex-basis: auto;
    width: 47.5%;
    margin: 0 5% 40px 0;
    float: left;
	display:block;
}

.c-s-box2-index > .c-s-box2-group > .box > p , .c-s-box2-index2 > .c-s-box2-group > .box > p{
	margin:0px;
}

.c-s-box2-index2 > .c-s-box2-group > .box > a > p.link-s{
	width:100%;
}

.c-s-box2-index > .c-s-box2-group > .box:nth-child(2n) , .c-s-box2-index2 > .c-s-box2-group > .box:nth-child(2n) {
	margin-right:0px;
}

 .c-s-box2-index > .c-s-box2-group > .box > a > img {
	border:1px solid #ccc;
	margin-bottom:15px;
	width:100%;
}

.c-s-box2-index2 > .c-s-box2-group > .box > a > img {
	border:none;
	margin-bottom:15px;
	width:100%;
}

.c-s-box2-index > .c-s-box2-group > .box > p > strong , .c-s-box2-index2 > .c-s-box2-group > .box > p > strong{
	color: #313d57;
	font-size: 1.6rem;
}

@media screen and (max-width: 680px) {
.c-s-box2-index > .c-s-box2-group > .box > p > strong, .c-s-box2-index2 > .c-s-box2-group > .box > p > strong {
    color: #313d57;
    font-size: 1.2rem;
}

 .c-s-box2-index > .c-s-box2-group > .box {
	flex-basis: auto;
    width: 48%;
    height: auto;
    margin: 0 4% 4% 0;
    float: left;
	display:block;
}

.c-s-box2-index2 > .c-s-box2-group > .box {
	flex-basis: auto;
    width: 100%;
    height: auto;
    margin: 0 0 4% 0;
    float: left;
	display:block;
}

 .c-s-box2-index > .c-s-box2-group > .box:nth-child(2n) , .c-s-box2-index2 > .c-s-box2-group > .box:nth-child(2n){
	margin-right:0px;
}


}


table.event{
	margin-top: 40px;
}

table.basic > caption{
	margin-bottom: 30px;
	font-size: 30px;
	font-size: 2rem;
	color: #007fc6;
	text-align: center;
	font-weight: normal;
}

table.emphasis {
    border-collapse: collapse;
    border: 3px solid #0369AD;
    text-align: left;
	float:right;
	margin-top:15px;
	margin-bottom:40px;
}

table.emphasis th {
    border: 1px solid #0369AD;
    background: #0369AD;
    padding: 10px;
    font-weight: bold;
    color: #fff;
    text-align: left;
}

table.emphasis td {
    border: 1px solid #0369AD;
    padding: 10px;
    vertical-align: baseline;
    text-align: left;
}

dl.account{
    position: relative;
}

dl.account img{
    border: 1px solid #dbdbdb;
}

dl.account > dt > p.txt_c{
    font-weight:bold;
}

dl.account > dd > a.link-s , dl.account > dd.demo-manual > a.link-s {
	left: 0px;
    position: relative;
	margin-bottom:15px;
	width:100%;
}

dd.demo-manual{
}

@media screen and (max-width: 680px) {

table.basic th.calc {
    width: 50%;
}

table.emphasis {
    width:100%;
}

table.emphasis td > input{
    width:80%;
}

}

.c-s-box5 > .box > a > img{
	border:1px solid #ccc;
	margin-bottom:5px;
}

.c-s-box5 > .box > div{
	margin-bottom:20px;
}

.c-s-box5 .box {
    width: 18%;
    height: auto;
    margin: 0 2% 0 0;
    float: left;
}

.c-s-box5, .c-x-box5 {
    display: flex;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    align-content: stretch;
    -webkit-align-content: stretch;
    -moz-align-content: stretch;
    -ms-align-content: stretch;
    align-items: stretch;
    -webkit-align-items: stretch;
    -moz-align-items: stretch;
    -ms-align-items: stretch;
    flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
}

.c-s-box5 .box:nth-child(5n) {
    margin-right: 0px;
}

.c-s-box5 .box > p {
    margin-top: 8px;
}

@media screen and (max-width: 680px) {

.c-s-box3-2 .box {
	flex-basis:auto;
	width:100%;
	height:100%;
	margin:0 0 40px 0;
	clear:both !important;
}

.c-s-box5 .box, .c-s-box5 .box {
    flex-basis: auto;
    width: 48%;
    height: 100%;
    margin: 0 0 0 0;
    float: left;
	text-align:center;
}


}

/*flow demoloan mobileapp*/
table.basic > tbody > tr > td.customer_sk,
table.basic > tbody > tr > th.app,
table.basic > tbody > tr > td.app{
	width:198px;
}

table.basic > tbody > tr > td.comment > p{
	margin-bottom:0px;
}


table.basic > tbody > tr > td.comment > p > img{
	margin-right:8px;
}

/* #pro-r128-s16rの指定位置*/
#pro-r128-s16r {
  scroll-margin-top: 120px; /* ヘッダーの高さに合わせて調整 */
}

table.basic + h3.title_m {
	margin-top:40px;
}

@media screen and (max-width: 680px) {

table.basic > tbody > tr > td.customer_sk,
table.basic > tbody > tr > th.app,
table.basic > tbody > tr > td.app{
	width:10%;
}

	table.basic > tbody > tr > td.customer_sk > img{
	width:100%;
}

	}



.link-s-center{
	background:#eff8fe;
	border: 1px solid #21a4fa;
	border-radius: 3px;
	width: 190px;
	box-sizing: border-box;
	display: inline-block;
	/*text-align: center;*/
	padding: 0 5px;
	color: #616465 !important;
	text-decoration: none !important;
	font-size: 1.4rem;
}

.link-s-center:hover{
	background:#fff;
	text-decoration: none;
}

@media screen and (max-width: 680px) {

	.link-s-center{
		width: 100%;
		display: block;
		padding: 5px;
	}

}

/*screens*/

dl.index{
}

dl.index > dt:before{
	content:"－－";
}


dl.index > dd {
	text-indent:15px;
}


dl.index > dd:before {
	content:"■";
}

/*repair*/
.clearover{
	clear:both;
	overflow:hidden;
}

p.title_s2{
	line-height: 1.7;
    color: #1e273d;
	font-weight:bold;
}

.btn_box2 {
    margin: 0px !important;
    text-align: right;
}


/* form */
.error_box {
	background:#f8e6e6;
	border:1px solid #d0b4af;
	color:#bb0f16;
}



.txt-indent p {
	padding-left:2em;
}
@media screen and (max-width: 680px) {
.txt-indent p {
	padding-left:0;
}

}

/*メルマガ登録デフォルト*/

div.wpcf7 {
	margin: 0;
	padding: 0;
}

div.wpcf7-response-output {
	margin: 2em 0.5em 1em;
	padding: 0.2em 1em;
}

div.wpcf7 .screen-reader-response {
	position: absolute;
	overflow: hidden;
	clip: rect(1px, 1px, 1px, 1px);
	height: 1px;
	width: 1px;
	margin: 0;
	padding: 0;
	border: 0;
}

div.wpcf7-mail-sent-ok {
	border: 2px solid #398f14;
}

div.wpcf7-mail-sent-ng {
	border: 2px solid #ff0000;
}

div.wpcf7-spam-blocked {
	border: 2px solid #ffa500;
}

div.wpcf7-validation-errors {
	border: 2px solid #f7e700;
}

.wpcf7-form-control-wrap {
	position: relative;
}

span.wpcf7-not-valid-tip {
	color: #f00;
	font-size: 1em;
	font-weight: normal;
	display: block;
}

.use-floating-validation-tip span.wpcf7-not-valid-tip {
	position: absolute;
	top: 20%;
	left: 20%;
	z-index: 100;
	border: 1px solid #ff0000;
	background: #fff;
	padding: .2em .8em;
}

span.wpcf7-list-item {
	display: inline-block;
	margin: 0 0 0 1em;
}

span.wpcf7-list-item-label::before,
span.wpcf7-list-item-label::after {
	content: " ";
}

.wpcf7-display-none {
	display: none;
}

div.wpcf7 .ajax-loader {
	visibility: hidden;
	display: inline-block;
	background-image: url('../../images/ajax-loader.gif');
	width: 16px;
	height: 16px;
	border: none;
	padding: 0;
	margin: 0 0 0 4px;
	vertical-align: middle;
}

div.wpcf7 .ajax-loader.is-active {
	visibility: visible;
}

div.wpcf7 div.ajax-error {
	display: none;
}

div.wpcf7 .placeheld {
	color: #888;
}

div.wpcf7 .wpcf7-recaptcha iframe {
	margin-bottom: 0;
}

div.wpcf7 input[type="file"] {
	cursor: pointer;
}

div.wpcf7 input[type="file"]:disabled {
	cursor: default;
}


/*メルマガ登録*/

.mail_title{background: url(../images/mail_title.png) no-repeat left top;
width:260px;
height:30px;
text-align:center;
color:#fff;
padding-top:45px;
font-size:14px;}

.wpcf7 {
 font-size:12px;
 text-align:left;
}
.wpcf7 a{padding:0!important;
color:#14449a!important;
text-decoration:underline!important;}

div.wpcf7-mail-sent-ok {
    border: 2px solid #6D9BD8!important;
}


.wpcf7 input[type="checkbox"]{display:inline-block!important;}


.wpcf7 .left{ text-align:left;}

.asterisk {
 margin: 0 0 0 0.2em;
 color: #6D9BD8;
}
.wpcf7 p{margin-top:10px;}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="url"],
.wpcf7 textarea {
 background-color: #fff;
 color: #333;
 width: 100%;
 border: 1px solid #ddd;
 font-size: 100%;
 padding: 0.5em;
 border-radius: 4px;
 box-shadow: 1px 1px 3px rgba(0,0,0,.1) inset;
}
.wpcf7 input[type="submit"] {
 font-size: 100%;
 padding: 0.8em 1.2em;
 background: #14449a;
 color: #fff;
 border-radius: 4px;
 cursor: pointer;
 box-shadow: 0 0 1px rgba(0,0,0,.2);
 border: 1px solid #ccc;
margin:0 auto!important;
font-weight:bold;
}
.wpcf7 input[type="submit"]:hover {
 box-shadow: 0 0 1px rgba(0,0,0,.2) inset;
}


div.wpcf7 .screen-reader-response {
    position: absolute;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
    height: 1px;
    width: 1px;
    margin: 0;
    padding: 0;
    border: 0;
}


div.wpcf7-response-output {
    margin: 2em 0.5em 1em;
    padding: 0.2em 1em;
}


@media screen and (max-width: 680px) {
	
	
	.mail_title{background-image: none;
background-color:#007FC6;
width:100%;
height:30px;
text-align:center;
line-height:30px;
color:#fff;
font-size:1.3rem;
padding:0;}


.wpcf7 input[type="text"],
.wpcf7 input[type="email"]{font-size:16px;}



}


/* lineup catch */
.main-has-text .catch {
	position:absolute;
	top:7px;
	left:-10px;
	
	border: 1px solid #ff3900;
	border-radius: 3px;
	padding: 5px 5px 3px 5px;
	color: #ff3900;
	text-align: left;
	font-size:13px;
}
.adjust_width {
	width:45%;
}

.main-img-demo {
	position:absolute;
	top:0;
	right:-20px;
}
@media screen and (max-width: 680px) {
.main-img-demo {
	position:absolute;
	top:50%;
	right:-50px;
}
.main-img-demo img {
	width:60%;
}
}


/*LPランディング・キャンペーン*/
.lp_recommend{
	font-weight: bold;
    border-bottom: 4px solid #FFFF66;
}

.lp_recommend_orange{
	font-weight: bold;
    border-bottom: 4px solid #FF6600;
}

.lp_link_box{
    display: block;
    width: 100%;
    height: 100%;
    text-decoration: none !important;
}

.lp_name {
    color: #007fc6 !important;
    font-size: 2.0rem;
    margin-bottom: 20px;
}

.lp_title_m {
    font-size: 24px;
    font-size: 2.4rem;
    color: #1e273d;
    margin-bottom: 20px;
    font-weight: bold;
}

td.lp_blue {
	background: #f0fcff;
	font-weight: bold;
}

#lp_main-img-box{
    background: url("../../nvr/images/lp_nvr-pro_top_bg.jpg") no-repeat center;
    height: 440px;
    width: 100%;
    margin-top: 100px;
    /*margin-bottom: 40px;*/
    position: relative;
}

#lp2_main-img-box{
    background: url("../../nvr/images/campaign_204mk26132u_back02_end.jpg") no-repeat center;
    height: 440px;
    width: 100%;
    margin-top: 60px;
    /*margin-bottom: 40px;*/
    position: relative;
}

#lp_main-img-box section.lp_main-has-text,
#lp2_main-img-box section.lp_main-has-text{
    margin: auto;
    position: absolute;
    top: 50px;
    bottom: 0;
    right: 0;
    left: 0;
	text-align: center;
    display: block;
}

#lp_main-img-box .lp_main-img img,
#lp2_main-img-box .lp_main-img img{
	max-width:60%;
	}


.lp_main-has-text .lp_main-text {
    /*position: absolute;
    top: 0%;
    left: 0;
    margin: -0.5em auto 0;*/
    text-align: center;
    font-size: 1.8rem;
}

	
.lp_main-has-text .lp_main-text p{
	font-size: 18px;
	font-size: 1.8rem;
	/*margin-top: 20px;*/
}

.lp_main-has-text .page-title{
	display:block;
	font-size: 30px;
	font-size: 3rem;
}

.lp_lineup_box1 img {
    max-width: 100%;
}

@media screen and (max-width: 680px){
	#lp_main-img-box .main-img img,
	#lp2_main-img-box .main-img img{
    max-width: 100%;
}
	
	#lp_main-img-box,
	#lp2_main-img-box{
		background-size: cover;
		height: auto;
		position: relative;
		padding-top: 60px;
		margin-top: 0;
	}
	#lp_main-img-box > section,
	#lp2_main-img-box > section{
		width: auto;
		margin: auto;
	}
	
	#lp_main-img-box section.lp_main-has-text,
	#lp2_main-img-box section.lp_main-has-text{
		height: auto;
		margin: auto;
		position: relative;
		top: 0;
		bottom: 0;
		right: 0;
		left: 0;
		display: block;
		padding: 20px 10px 0;
	}
	
	
	.lp_main-has-text .lp_main-text{
		position: relative;
		top: 0;
		left: 0;
		margin: 0 auto 0;
		text-align: center;
	}

	
	.lp_main-text .page-title {
    font-size: 2rem;
    position: relative;
    left: 0;
    right: 0;
    top: 0;
    margin: auto;
    text-align: center;
    line-height: 190%;
    padding: 0px;
}
	
}


/*くの字アイコン*/
.icon-arrow-under{
position: relative;
display: inline-block;
padding-left: 20px;
}

.icon-arrow-under::before{
  content: '';
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 2px #007fc6;
  border-right: solid 2px #007fc6;
  -ms-transform: rotate(135deg);
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  position: absolute;
  top: 30%;
  left: 6px;
}

/*製品ページポイント*/
ul.nvr-point{
	margin: 0 auto;
    display: flex;
}

ul.nvr-point li{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 85px;
    height: 58px;
    font-size: 12px;
    color: #fff;
    text-align: center;
    line-height: 1.3;
    background: #007fc6;
    border-radius: 5px;
}

ul.nvr-point li:not(:last-child) {
    margin-right: 1.3em;
}



.link-in-page {
    margin-top: -4em;
    padding-top: 4em;
}




.local-navi ul li {
    display: inline-block;
    width: 32.7%;
    text-align: center;
    margin-right: 10px;
	font-size: 16px;
	font-size: 1.6rem;
}
.local-navi ul li:last-child {
    margin-right: 0px;
}
.local-navi ul li a {
	display: block;
	width: 100%;
	height: 100%;
	background: #eff8fe none repeat scroll 0 0;
border: 1px solid #21a4fa;
border-radius: 3px;
box-sizing: border-box;
color: #616465 !important;
padding: 15px;
text-align: center;
text-decoration: none !important;
margin: 0px;
	}
.local-navi ul li a:hover {
	background: #A3DAFF none repeat scroll 0 0;
}
.local-navi ul li a::before {
  content: '';
  display: inline-block;
  width: 23px;
  height: 18px;
  background-size: contain;
  background-repeat: no-repeat;
  vertical-align: middle;
  padding-right: 10px;
}
.local-navi ul li .local-navi-nvr::before {
  background-image: url(../../nvr/images/local-navi-nvr.png);
  }
.local-navi ul li .local-navi-camera::before {
  background-image: url(../../nvr/images/local-navi-camera.png);
  }
.local-navi ul li .local-navi-other::before {
  background-image: url(../../nvr/images/local-navi-other.png);
  }

.lineup-list ul {
	list-style: none;
	padding-left: 0;
	display: flex;
	flex-wrap: wrap;
	text-align: center;
	width: 100%;
	position: relative;
	line-height: 1.2em;
}
.lineup-list ul li {
	display: block;
	margin-right: 10px;
	margin-bottom: 10px;
	width: 32.72%;
	box-sizing: border-box;
	position: relative;
	align-self: stretch;
	background-color: #ffffff;
	}
.lineup-list p {
	color: #1e273d;
}
.lineup-list ul li:nth-of-type(3n) {
	margin-right: 0px;
}
.lineup-list ul.list5 li {
	display: block;
	margin-right: 10px;
	margin-bottom: 10px;
	width: 19.27%;
	box-sizing: border-box;
	position: relative;
	align-self: stretch;
	background-color: #ffffff;
	}
.lineup-list ul.list5 li:nth-of-type(5n) {
	margin-right: 0px;
}
.lineup-list ul li a {
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: space-between;
	width: 100%;
	height: 100%;
	padding: 0;
	text-decoration: none !important;
	border: 1px solid #cccccc;
	box-sizing: border-box;
	position: relative;
}
.lineup-list ul li a:hover {
	border: 1px solid #3297d4;
	background-color: #eff8fe;
}
.lineup-list ul li a .lineup-title {
	color: #1fa3f9;
	margin-top: 40px;
	font-size: 18px;
	font-weight: bold;
}
.lineup-list ul li a .software-icon-blue {
	display: inline;
	position: absolute;
	top: 10px;
	right: 10px;
	padding: 2px 15px 0px 15px;
	border: 1px solid #19abff;
	color: #19abff;
	border-radius: 2px;
	background-color: #eff8fe;
}
.lineup-list ul li a .software-icon-green {
	display: inline;
	position: absolute;
	top: 10px;
	right: 10px;
	padding: 2px 15px 0px 15px;
	border: 1px solid #06a9bb;
	color: #ffffff;
	border-radius: 2px;
	background-color: #06a9bb;
}
ul.point-icon {
	display: inline-block;
	margin-top: 15px;
}
ul.point-icon li {
	display: inline-block;
	position: relative;
	background-color: #19abff;
	border-radius: 16px;
	margin: 0 5px;
	font-size: 14px;
	color: #ffffff;
	padding: 2px 20px;
	width: auto;
}
.lineup-img {
	margin: 20px 0;
}
.lineup-img img {
	max-height: 100px;
	max-width: 100%;
	min-height: 1px;
}
.lineup-img+.link-button {
margin-top: 0px !important;
}
.lineup-list .function-icon {
	margin-top: 20px;
	box-sizing: border-box;
	padding: 0 20px;
	width: 100%;
}
.lineup-list .function-icon li {
	width: 24.5%;
	margin: 0 2px 0px 0 !important;
	background-color: #cccccc;
	font-size: 12px;
	padding: 10px 3px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #ffffff;
}
.lineup-list .function-icon li span {
	font-size: 14px;
	font-weight: bold;
}
.lineup-list .function-icon .icon-tb {
	background-color: #007FC6;
}
.lineup-list .function-icon .icon-monitor {
	background-color: #0188C4;
}
.lineup-list .function-icon .icon-raid {
	background-color: #0292C1;
}
.lineup-list .function-icon .icon-poe {
	background-color: #0292C1;
}
.lineup-list .function-icon .icon-mini {
	background-color: #0292C1;
}
.lineup-list .function-icon .icon-4k {
	background-color: #0292C1;
}
.lineup-list .function-icon .icon-poecam {
	background-color: #07B8B8;
}
.lineup-list .function-icon .icon-largescale {
	background-color: #07B8B8;
}
.lineup-list .function-icon .icon-ai {
	background-color: #07B8B8;
}
.lineup-list .function-icon li:nth-of-type(4n) {
	margin-right: 0px !important;
}
.lineup-list a .link-button {
	display: block;
	margin-top: 20px;
	width: 100%;
	height: auto;
	padding:20px;
	background-color: #eff8fe;
	box-sizing: border-box;
	font-size: 16px;
	align-self: flex-end;
}
.lineup-list a:hover .link-button {
	background-color: #A3DAFF;
}
.ribbon-content {
  position: absolute;
  top: -3px;
  left: -3px;
  width: 90px;
  height: 91px;
  overflow: hidden;
  }
.ribbon {
  display: inline-block;
  position: absolute;
  /*padding: 7px 0;*/
  left: -73%;
  top: -73%;
  width: 130px;
  height: 130px;
  text-align: center;
  font-size: 16px;
  line-height: 16px;
  color: #fff;
  /*letter-spacing: -0.05em;*/
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  /*box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);*/
}
.ribbon:before, .ribbon:after {
  position: absolute;
  content: "";
  border-top: 2px solid #000000;
  border-left: 2px solid transparent;
  border-right: 2px solid transparent;
  bottom: -2px;
}
.ribbon:before {
  left: 2px;
}
.ribbon:after {
  right: 2px;
}
.ribbon span {
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
display: block;
position: absolute;
bottom: 11%;
right: 12%;
  width: 100px;
  height: auto;
}
.color-4ch {
	background-color: #19abff;
}
.color-8ch {
	background-color: #138cd1;
}
.color-16ch {
	background-color: #0d6ca3;
}
.color-32ch {
	background-color: #064d75;
}
.color-64ch {
background-color: #033d5e;
}
.color-128ch {
	background-color: #001f33;
}
.cta-box-content {
	display: flex;
	justify-content: center;
	background-color: #f2f2f2;
	padding: 30px 40px;
}
.cta-box-content .cta-box {
	margin-top: 0 !important;
	margin-left: 20px;
	margin-right: 20px;
	max-width: 50%;
}
.cta-box-content .cta-button a {
display: block;
width: 100%;
height: 100%;
background: #eff8fe none repeat scroll 0 0;
border: 1px solid #21a4fa;
border-radius: 3px;
box-sizing: border-box;
color: #616465 !important;
padding: 15px 80px;
text-align: center;
text-decoration: none !important;
margin: 0px;
}
.cta-box-content .cta-button a:hover {
	background: #A3DAFF none repeat scroll 0 0;
}



@media screen and (max-width: 680px) {
.local-navi ul li {
	font-size: 1.4rem !important;
	font-size: 14px !important;
    display: block;
    width: 100%;
    text-align: center;
    margin-right: 0px;
	margin-bottom: 10px;
	}
.local-navi ul li:last-child {
    margin-bottom: 0px;
}
.lineup-list ul li {
	display: block;
	margin-right: 0px;
	width: 100%;
	}
.lineup-list ul.list5 li {
	margin-right: 10px !important;
	width: 48.52%;
}
.lineup-list ul.list5 li:nth-of-type(2n) {
	margin-right: 0px !important;
}
.lineup-list ul li p {
	font-size: 14px;
}
.lineup-list ul li a .lineup-title {
	margin-top: 40px;
}
ul.point-icon {
	display: inline-block;
	margin-top: 15px;
}
ul.point-icon li {
	display: inline-block;
	margin: 0 5px;
	font-size: 14px;
	width: auto;
}
.lineup-list a .link-button {
	font-size: 14px;
}

.cta-box-content {
	display: block;
	padding: 20px 20px;
}
.cta-box-content .cta-box {
	margin-top: 0 !important;
	margin-left: 0px;
	margin-right: 0px;
	margin-bottom: 20px;
	max-width: 100%;
}
.cta-box-content .cta-box:last-child {
	margin-bottom: 0 !important;
}
.cta-box-content .cta-button a {
display: block;
width: 100%;
height: 100%;
padding: 15px 30px;
}
.global .global-lineup ul {
	display: block !important;
}
}

.global .global-lineup ul {
	display: none;
}


#main-img-box.not_img {
	height: 150px;
}
#main-img-box.not_img > section{
	display: block;
}
.page-title.not_img{
	display: block;
	position: absolute;
	top: 50px;
	left: 0;
	right: 0;
	margin: auto;
}

.menu-box-container {
position: relative;
width: 1105px;
margin: 0px auto;
padding-top: 40px;
}
.menu-box-container .menu-box {
position: absolute;
top: 120px;
right: 70px;
width: 380px;
padding: 20px 30px 25px 30px;
border-radius: 3px;
background-color: rgba(255, 255, 255, 0.9);
-webkit-box-shadow: 1px 2px 5px rgba(0,0,0,.2);
box-shadow: 1px 2px 5px rgba(0,0,0,.2);
box-sizing: border-box;
font-size: 16px !important;
color: #2d3954;
line-height: 1em;
}
.menu-box-container .menu-box p {
font-size: 16px !important;
}
.menu-box .menu-box-title{
margin-bottom: 5px;
}
.menu-box .menu-box-title span {
padding: 2px 5px;
border-radius: 3px;
display: inline-block;
}
.menu-box .consider span {
background-color: #eff8fe;
color: #005e94;
}
.menu-box .support span {
background-color: #edfbfc !important;
color: #008770;
}
.menu-box .cv-btn a {
width: 100%;
padding: 15px 15px;
text-align: center;
box-sizing: border-box;
font-weight: normal;
font-size: 16px !important;
}
.menu-box .cv-btn a:hover {
font-weight: normal;
}
.menu-box .btn-blue {
margin-bottom: 25px;
}
.menu-box .btn-blue a {
background-color: #007fc6 !important;
box-shadow: 0px 5px 0px 0px #005e94 !important;
}
.menu-box .btn-blue a:hover {
background-color: #006ead !important;
}

@media screen and (max-width: 680px) {
.menu-box-container .main-img {
background:url(../../images/sp-main.png) no-repeat !important;
background-size: cover !important;
height: 0 !important;
padding-top:63.4375% !important;
}
.menu-box-container {
position: relative;
width: 100%;
display: block;
}
.menu-box-container .menu-box {
position: relative;
width: 100%;
top:0;
right: 0;
padding: 5px 15px 10px 15px;
border-radius: 0px;
background-color: rgba(255, 255, 255, 1);
box-shadow: none;
font-size: 14px !important;
display: flex;
flex-wrap: wrap;
}
.menu-box .menu-box-title {
width: 86px;
margin-right: 10px;
align-self: center;
margin-bottom: 0px;
}
.menu-box .menu-box-title span {
padding: 5px 10px;
display: block;
width: 100%;
box-sizing: border-box;
margin-bottom: 10px;
}
.menu-box .cv-btn {
width: 70%;
margin: 15px auto 10px auto;
}
.menu-box .cv-btn a {
font-size: 14px !important;
font-weight: normal;
}
}

/*サポートページ*/
.support_btn_l {
    display: block;
	width:100%;
	border:1px solid #21a4fa;
	text-decoration:none !important;
	border-radius: 3px;
	background: #eff8fe;
	text-align: center;
	box-shadow:0px 2px 4px #ccc;
}

.support_btn_l:hover {
	background: #ffffff;
	box-shadow: none;
	transform: translate3d(0, 2px, 0);
}

.support_btn_l h3{
    font-weight: 700;
	color:#1e273d;
	font-size: 1.6rem;
}

.support_btn_l h3 i.fa-angle-right {
    position: absolute;
    top: 24px;
    right: 16px;
    color: #1e273d;
}

.support_btn_m {
    display: block;
	width:100%;
	border:1px solid #21a4fa;
	text-decoration:none !important;
	border-radius: 3px;
	background: #eff8fe;
	text-align: center;
	box-shadow:0px 2px 4px #ccc;
}

.support_btn_m:hover {
	background: #ffffff;
	box-shadow: none;
	transform: translate3d(0, 2px, 0);
}

.support_btn_m h3{
    font-weight: 700;
	color:#1e273d;
	font-size: 1.4rem;
	text-align: left;
	text-indent: 2.4rem;
}

.support_btn_m h3 i.fa-angle-right{
	position: absolute;
    top: 24px;
    right: 16px;
	color:#1e273d;
}

.btn_dl::before{
	position: absolute;
    top: 10px;
    left: 16px;
    content: url('../../support/images/icon_download_sp.png');
}

.btn_trouble::before{
	position: absolute;
    top: 10px;
    left: 16px;
    content: url('../../support/images/icon_trouble_sp.png');
}

.btn_trouble2::before{
	position: absolute;
    top: 20px;
    left: 16px;
    content: url('../../support/images/icon_trouble_sp2.png');
}

.btn_trouble3::before{
	position: absolute;
    top: 20px;
    left: 16px;
    content: url('../../support/images/icon_cameraaccess_sp2.png');
}

.btn_repair::before{
	position: absolute;
    top: 10px;
    left: 16px;
    content: url('../../support/images/icon_repair_sp.png');
}

.btn_kakaku::before{
	position: absolute;
    top: 20px;
    left: 16px;
    content: url('../../support/images/icon_yen.png');
}

.btn_info::before{
	position: absolute;
    top: 20px;
    left: 16px;
    content: url('../../support/images/icon_info.png');
}

.btn_hosyo::before{
	position: absolute;
    top: 20px;
    left: 16px;
    content: url('../../support/images/icon_hosyo.png');
}

.btn_demo::before{
	position: absolute;
    top: 20px;
    left: 16px;
    content: url('../../support/images/icon_demo.png');
}

.btn_remote::before{
	position: absolute;
    top: 20px;
    left: 16px;
    content: url('../../support/images/icon_remote.png');
}

.btn_hasso::before{
	position: absolute;
    top: 20px;
    left: 16px;
    content: url('../../support/images/icon_hasso.png');
}

.btn_setting::before{
	position: absolute;
    top: 20px;
    left: 16px;
    content: url('../../support/images/icon_setting.png');
}

.btn_shiyo::before{
	position: absolute;
    top: 20px;
    left: 16px;
    content: url('../../support/images/icon_shiyo.png');
}

.btn_nvraccess::before{
	position: absolute;
    top: 10px;
    left: 16px;
    content: url('../../support/images/icon_nvraccess_sp.png');
}

.btn_cameraaccess::before{
	position: absolute;
    top: 10px;
    left: 16px;
    content: url('../../support/images/icon_cameraaccess_sp.png');
}

.btn_recdata::before{
	position: absolute;
    top: 10px;
    left: 16px;
    content: url('../../support/images/icon_recdata_sp.png');
}

@media screen and (max-width: 680px) {
	.support_btn_l h3 {
		font-size: 1.8rem;
		text-align: left;
        text-indent: 59px;
	}
	.box-full .support_btn_l h3 {
        text-indent: 0px !important;
	}
}
/*サポートここまで*/

.fz_ll {
	font-size: 20px;
}
.cta-box-content {
flex-wrap: wrap;
}
.cta-box-content .box-txt {
	flex: 1;
	margin-right: 20px;
}
.cta-box-content .box-btn {
	flex-basis: 260px;
	align-self: center;
	margin-top: 0px !important;
}
.cta-box-content .box-btn .cv-btn a {
	padding: 20px;
	font-size: 16px;
	box-sizing: border-box;
	width: 100%;
	text-align: center;
	position: relative;
}
.cta-box-content .box-btn .cv-btn a:after {
  position: absolute;
  top: 30%;
  right: 20px;
  content: '\f0da';
  color: #ffffff;
  font-size: 16px;
  font-family: fontAwesome;
}
.cta-box-content .box-question {
display: block;
width: 100%;
border-top: 1px solid #ccc;
margin-top: 20px;
padding-top: 20px;
}
.cta-box-content .box-question p {
font-weight: bold;
margin-bottom: 10px;
}
.cta-box-content .box-question ul {
display: flex;
flex-wrap: wrap;
}
.cta-box-content .box-question ul li {
flex-basis: 48.6%;
box-sizing: border-box;
margin-right: 20px;
margin-bottom: 5px;
position: relative;
}
.cta-box-content .box-question ul li:nth-of-type(even) {
margin-right: 0px;
}
.cta-box-content .box-question ul li a {
display: block;
padding-left: 10px;
}
.cta-box-content .box-question ul li a:before {
  position: absolute;
  top: 0;
  left: 0px;
  content: '\f0da';
  color: #0044CC;
  font-size: 14px;
  font-family: fontAwesome;
}


@media screen and (max-width: 680px) {
.fz_ll {
	font-size: 16px;
}
.cta-box-content .box-txt {
	display: block;
	margin-right: 0px;
	margin-bottom: 10px;
}
.cta-box-content .box-btn {
	display: block;
	width: 100%;
	align-self: center;
	margin-top: 0px !important;
}
.cta-box-content .box-btn .cv-btn a {
	padding: 10px;
}
.cta-box-content .box-btn .cv-btn a:after {
  top: 25%;
}

.cta-box-content .box-question ul {
display: block;
}
.cta-box-content .box-question ul li {
width: 100%;
margin-right: 0px;
}
}

.page-text {
	display: table-cell;
	vertical-align: middle;
	text-align: right;
	height: 150px;
}
.title-ctext {
    border: 4px solid #C7C314;
    padding: 20px 30px;
    background-color: rgba(255, 255, 255, 0.8);
	width: auto;
	display: inline-block;
	font-size: 18px;
	font-size: 1.8rem;
	text-align: center;
}
.main-text2 .text {
    border: 4px solid #C7C314;
    padding: 20px 30px;
    background-color: rgba(255, 255, 255, 0.8);
	font-weight: 700;
}
.main-has-text .main-text2 {
    top: 40% !important;
}

.top-border {
	border-top: 1px solid #d9d9d9;
	padding-top: 20px;
	margin-top: 30px;
	clear: both;
}

@media screen and (max-width: 680px) {
.main-text2 .text {
    margin-right: 10px !important;
	margin-left: 10px !important;
}
.page-text {
	display: block;
	text-align: center;
	height: auto;
}
}

/* フローティングバナー */
a#rc_rightArea {
}

a#rc_rightArea img.pc {
 width: 104px; /*画像の全体幅*/
 position: fixed;
 top: 155px;
 right: -20px; /*マウスを乗せた時に出てくる幅*/
 display: inline-block;
 transition: all .2s ease;
 z-index: 99999;
}


a#rc_rightArea img.pc:hover {
    /* 透過削除 202504*/
	right: 0;
}

@media all and (min-width: 1024px) and (max-width: 1280px) {/* タブレット用のブレイクポイントを指定 */
a#rc_rightArea img.pc {
        /*display: none; タブレットサイズ以下でPC用のバナーを非表示に */
    }
}
 
@media all and (min-width: 768px) and (max-width: 1024px){
a#rc_rightArea img.pc {
 width: 104px; /*画像の全体幅*/
 position: fixed;
 top: 155px;
 right: -20px; /*マウスを乗せた時に出てくる幅*/
 display: inline-block;
 transition: all .2s ease;
 z-index: 99999;
}
}
 
@media all and (min-width: 480px) and (max-width: 768px){
a#rc_rightArea img.sp {
		position: fixed;
        bottom: 0;
        right: 0;/* バナーの左右の位置 */
	    display: inline-block; /*消していたスマホ用のバナーを表示させる*/ 
        width: 100vw; /*スマホの画面幅いっぱいにバナーを表示*/
	    z-index: 99999;
}
}

@media all and (max-width: 480px) {/* スマホ用のブレイクポイントを指定 */
a#rc_rightArea img.sp {
	   position: fixed;
       bottom: 0;
        right: 0;/* バナーの左右の位置 */
      display: inline-block; /*消していたスマホ用のバナーを表示させる*/ 
       width: 100vw; /*スマホの画面幅いっぱいにバナーを表示*/
	 z-index: 99999;
    }
}

/*.column ul.list, .column ol.num_list {
	font-size: 115%
}*/

.column h4 {
	font-size: 1.8rem;
	border-bottom: 2px solid #82B9D9;
	display: inline-block;
	font-weight: normal;
	line-height: 1.5;
	padding-bottom: 5px;
	color: #353333;
	margin-bottom: 20px;
}
.block_pickup {
    padding: 1em 1.5em;
    background: #f0f4f9;
    border-left: solid 4px #007fc6;
}

.block_pickup p {

}

.marker_line {
    background: linear-gradient(transparent 75%, #ffdc00 75%);
}

.color_red {
	color: #dc3545 !important;
}
.quotes {
    position: relative;
    padding: 15px 15px 15px 50px !important;
    box-sizing: border-box;
    font-style: normal;
    background: #fafafa;
    color: #555;
}
.quotes::before {
    display: inline-block;
    position: absolute;
    top: 10px !important;
    left: 10px !important;
    content: "“";
    color: #e0e0e0;
    font-size: 90px;
    line-height: 1;
}
.column blockquote {
	margin: 0 0 2rem !important;
}

.caption01 {
  border-bottom: 2px solid #007FC6;
  display: inline-block;
  font-size: 2rem;
  font-weight: normal;
  line-height: 1.5;
  padding-bottom: 5px;
  color: #353333;
  margin-bottom: 20px;
}


@media screen and (max-width: 680px) {
	.column h4 {
		font-size: 1.4rem;
	}
	.caption01 {
  font-size: 1.4rem;
}
	#ez-toc-container, .column .border-box{
	font-size:1.4rem;
	}
	
}

/*nvr-pro btn*/
.nvr-pro_btn_m {
    display: block;
    width: 100%;
    border: 1px solid #21a4fa;
    text-decoration: none !important;
    border-radius: 3px;
    background: #eff8fe;
    text-align: center;
    box-shadow: 0px 2px 4px #ccc;
}

.nvr-pro_btn_m:hover {
	background: #ffffff;
	box-shadow: none;
	transform: translate3d(0, 2px, 0);
}
.nvr-pro_btn_m h3 {
    font-weight: 700;
    color: #1e273d;
    font-size: 1.4rem;
    text-align: left;
}

.nvr-pro_btn_m h3 i.fa-angle-right{
	position: absolute;
    top: 24px;
    right: 16px;
	color:#1e273d;
}




.contact-box {
	width: 80%;
	margin:auto;
}
.contact-box div {
	width: 100%;
}
.contact-list {
	display: flex;
	flex-wrap: wrap;
	margin-top: 10px;
}
.contact-list li {
	width: 50%;
	position: relative;
    padding-left: 12px;
	box-sizing: border-box;
}
.contact-list li:before {
	content: "";
    position: absolute;
    top: .5em;
    left: 0;
    width: 0;
    height: 0;
    border-width: 4px;
    border-style: solid;
    border-color: transparent transparent transparent #007fc6;
}
.contact-list li:nth-of-type(-n+2) {
	margin-bottom: 1rem;
}

.border-box-news {
	border: 1px solid #0044CC;
	width: 100%;
}
.border-box-news a {
	display: block;
	width: 100%;
	padding: 10px;
	text-decoration: none!important;
	color: #0044CC;
	box-sizing: border-box;
	background-color: rgba(255,255,255,.5);
}
.border-box-news a:hover {
	background-color: rgba(0,68,204,.1);
}

@media screen and (max-width: 680px) {
.contact-box {
	width: 100%;
	box-sizing: border-box;
}
.contact-list {
	display: block;
	width: 100%;
}
.contact-list li {
	margin-bottom: 0.5rem !important;
	width: 100%;
}

.border-box-news {
	width: auto;
}
}

/*アコーディオン*/
/*全体*/
.hidden_box {
    margin: 1em 0;
    padding: 0;
    display: block;
    width: 100%;
    border: 1px solid #21a4fa;
    text-decoration: none !important;
    border-radius: 3px;
    box-shadow: 0px 2px 4px #ccc;
}
.hidden_box p:empty:before {
content: none !important;
}

/*ボタン装飾*/
.hidden_box label {
    padding: 2.5% 2.5% 2.5% 50px;
    font-weight: bold;
    cursor :pointer;
	display: block;
	position: relative;
}
.hidden_box label::before {
    top: 48%;
    left: 20px;
    transform: rotate(0deg);

}
.hidden_box label::before, .hidden_box label::after {
    position: absolute;
    content: '';
    width: 15px;
    height: 2px;
    background-color: #333;
}
.hidden_box label::after {
    top: 48%;
    left: 20px;
    transform: rotate(90deg);
}
.hidden_box input:checked ~ label:before {
     transform: rotate(45deg);
}
.hidden_box input:checked ~ label:after {
     transform: rotate(-45deg);
}

/*ボタンホバー時*/
.hidden_box label:hover, .hidden_box input:checked ~ label {
    background: #ffffff;
}

/*チェックは見えなくする*/
.hidden_box input {
    display: none;
}

/*中身を非表示にしておく*/
.hidden_box .hidden_show {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;
}

/*クリックで中身表示*/
.hidden_box input:checked ~ .hidden_show {
    padding: 0px 25px 25px 25px;
    height: auto;
    opacity: 1;
}

.emphasis {
    font-weight: bold;
}
.txt-indent {
    text-indent: -1em;
    padding-left: 1em;
    display: block;
}
.txt-indent02 {
    padding-left: 1em;
    display: block;
}

.longlife-icon {
    display: block;
    position: absolute;
    bottom:  15px;
    right: 15px;
    background-color: #19abff;
    border-radius: 16px;
    margin: 0px 0px;
    font-size: 14px;
    color: #ffffff;
    padding: 4px 20px;
    width: auto;
}
@media screen and (max-width: 680px) {
.longlife-icon {
    display: block;
    position: relative;
    bottom: 0;
    right: 0;
    text-align: center;
}
}

.image img {
    max-width: 100%;
    height: auto;
}

/* NVRとはページ用 */
.font-adjust p {
    font-size: 15px !important;
    font-size: 1.5rem !important;
}
.font-adjust p + p {
    margin-top: 10px;
}
.title_line {
  border-bottom: 2px solid #007FC6;
  display: inline-block;
  color: #353333;
  margin-bottom: 20px;
}
@media screen and (max-width: 680px) {
.font-adjust p {
    font-size: 14px !important;
    font-size: 1.4rem !important;
}
}


.color_box_gray {
padding: 1em 0.5em 0.5em 0.5em;
margin: 2em auto 0;
border: solid 4px #ececec;
}
.w80 {
width:80%;
}
@media screen and (max-width: 680px) {
.w80 {
width:100%;
}
}

.color_box_gray li span {
  background-color: yellow;
}