@charset "UTF-8";

/*-----ソフトウェアページ用CSS-----*/

.software_first_image_container {
	position: relative;
	display: block;
	height: 200px;
	width: 100% !important;
	max-height: 200px;
}

@media screen and (max-width: 960px){
.software_first_image {
	height: 200px;
}
}

.software_subtitle h2 {
	font-size: 1.8em;
}

@media screen and (max-width: 1280px){
	.software_subtitle h2 {
	font-size: 1.5em;
}
.software_first_image {
	height: 200px;
}
}

@media screen and (max-width: 640px) {
	.software_subtitle h2 {
	font-size: 1.3em;
}
	.software_first_image {
	height: 200px;
}
}

.software_subtitle h2:before {
	content: '';
	position: absolute;
	bottom: -5px;
	display: inline-block;
	width: 10em;
	height: 3px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	border-radius: 2px;
	background-color: #000000;
}

.software_subtitle_jp {
	position: relative;
	display: inline-block;
	width: 100%;
	text-align: center;
	/* padding-bottom: 70px; */
	color: #0082FE;
}

.background-blue {
	background-color: #3949AB;
	margin-top: 50px;
}

.inner_960 {
	max-width: 960px;
	margin: 0 auto;
}

.arrow_under {
	position: relative;
	display: inline-block;
	padding-left: 20px;
	text-decoration: none;
	color: white;
	transition: color .3s;
}

.arrow_under:before {

	content: '';
	width: 10px;
	height: 10px;
	border: 0;
	border-bottom: solid 2px #fff;
	border-right: solid 2px #fff;
	position: absolute;
	top: 50%;
	left: 0%;
	margin-top: -10px;
	transform: rotate(45deg);
}

.anchor-element {
	display: flex;
	flex-wrap: wrap;
	padding: 20px 0;

}

.anchor-list {
	width: 100%;
	display:flex;
	flex-direction: row;
	flex-wrap: wrap;
	list-style: none;
	justify-content: start;
	padding: 0;
	font-size: 1.0em;
	align-items: center;
}

.list-inner {
	width: 10vw;
	color: white;
	margin: 0 auto;
	text-align: center;
	padding: 1.0em 0.5em;
	transition: color .3s;
}

/*-- ノートPC用 --*/
@media (max-width: 1800px) {
	.list-inner {
	width: 15vw;
	}
}

.list-inner a {
	color: white;
}

.arrow_under:hover {
	color: #0082FE;
}

.list-inner:hover {
	color: #0082FE;
}

/*-- タブレット用 --*/
@media (max-width: 960px) {
	.anchor-element {
	width: 100%;
	text-align: center;
	margin: 0 auto;
	padding: 10px 0;
	}
	.anchor-list {
	display:block;
	width: 100%;
	margin: 0 auto;
	}
	.list-inner {
	width: 100%;
	color: white;
	margin: 0 auto;
	padding: 0.5em;
	}
	.anchor-list li{
	border-top: 0.1px solid white;
	}
	.anchor-list li:first-child{
	 border: none;
	}
	.arrow_under:hover {
	color: #fff;
	}
}

/*-- スマートフォン用 --*/
@media (max-width: 520px) {
	.anchor-element {
	width: 100%;
	text-align: center;
	margin: 0 auto;
	padding: 10px 0;
	}
	.anchor-list {
	width: 100%;
	margin: 0 auto;
	}
	.list-inner {
	width: 100%;
	color: white;
	margin: 0 auto;
	padding: 0.5em;
	}
	.anchor-list li{
	border-top: 0.1px solid white;
	}
	.anchor-list li:first-child{
	 border: none;
	}
	.arrow_under:hover {
	color: #fff;
	}
}

.catch-text {
	font-size: 2.2em;
	text-align: center;
	margin-top: 30px;
}

.lead-text {
	font-size: 1.1em;
	padding-top: 30px;
	padding-bottom: 50px;
}

@media screen and (max-width: 1280px){
	.catch-text {
	font-size: 2.0em;
}
}

@media screen and (max-width: 640px) {
	.catch-text {
	font-size: 1.8em;
}
}

.container {
	display:flex;
	flex-wrap:wrap;
}

.container-item {
	width: calc(100% / 3);
	padding-bottom: 20px;
	text-align: center;
}

.container-item img {
	max-width: 80%;
	height: 200px;
	padding: 10px;
	object-fit: contain;
}

/*-- タブレット用 --*/
@media (max-width: 960px) {
	.container-item {
	text-align: center;
	}
}

/*-- スマートフォン用 --*/
@media (max-width: 520px) {
	.container-item {
	width: 100%;
	text-align: center;
	}
}

.container-item a:hover {
	opacity: 0.7;
}

.btn {
	text-align: center;
	display: inline-block;
	width: auto;
	min-width: 180px;
	max-width: 300px;
	padding: 10px 20px;
	background-color: white;
	color: #3949AB;
	border: 2px solid #3949AB;
	position: relative;
}

.btn::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
}

a:hover .btn{
	color: white;
	background-color: #3949AB;
}

/*--ページ上部に戻るボタン--*/
.top_return {
	width: 50px;
	height: 50px;
	position: fixed;
	bottom: 50px;
	right: 20px;
	z-index: 110;
	background: #0082FE;
	opacity: 0.7;
	border-radius: 50%;
}

.top_return a{
	position: relative;
	display: block;
	width: 50px;
	height: 50px;
	text-decoration: none;
}

.top_return a::before{
	font-family: 'Font Awesome 5 Free';
	font-weight: 1000;
	content: '\f102';
	font-size: 25px;
	color: #fff;
	position: absolute;
	width: 30px;
	height: 35px;
	top: -5px;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	text-align: center;
}

.top_return:hover {
	opacity: 1;
}

/*------------フローティングバナー------------*/

.float_info_area{
	position: fixed;
	bottom: 20px;
	right: 20px;
	width: 350px;
	height: auto;
	background-color: rgba(0,0,0,0);
	z-index: 99999;
}
@media only screen and (max-width: 1024px) {
	.float_info_area{
		display: none;
	}
}

.float_info_text{
	padding-top: 3px;
	background-color: #AAFFFF;
	text-align: center;
	font-weight: bold;
	border: 0.1px solid #EEE;
	border-bottom: none;
}
.float_info_item{
	background-color: rgba(0,0,0,0);
	border: 0.1px solid #EEE;
}
.float_info_close{
	background: #CCCCCC;
	width: 50px;
	height: 27px; 		/*float_info_textのパディング + ボタン押した後のfloat_info_areaの高さ*/
	position: absolute;
	right: 0px;
	top: 0;
    transform: translate(0%, -100%);
    -webkit-transform: translate(0%, -100%);
    -ms-transform: translate(0%, -100%);
	z-index: 100000;
	cursor: pointer;
}
.float_info_area img:hover{
	cursor: pointer;
	opacity: 0.8;
}

/*------------フローティングバナー(SP)------------*/

.float_info_area_sp{
	position: fixed;
	bottom: 0;
	right: 0;
	width: 520px;
	height: 170px;
	background-color: rgba(0,0,0,0);
	z-index: 99999;
}
@media only screen and (max-width: 1024px) {
	.float_info_area_sp{
		display: none;
	}
}

@media screen and (min-width: 521px) {
	.float_info_area_sp {
	  display: none;
	}
  }
  @media screen and (max-width: 520px) {
	.float_info_area_sp {
	  display: block;
	  width: 100vw;
	}
  }

.float_info_text_sp{
	padding-top: 3px;
	background-color: #AAFFFF;
	text-align: center;
	font-weight: bold;
	border: 0.1px solid #EEE;
	border-bottom: none;
}
.float_info_item_sp{
	background-color: rgba(0,0,0,0);
	border: 0.1px solid #EEE;
}
.float_info_close_sp{
	background: #CCCCCC;
	width: 50px;
	height: 27px; 		/*float_info_textのパディング + ボタン押した後のfloat_info_areaの高さ*/
	position: absolute;
	right: 0px;
	top: 0;
    transform: translate(0%, -100%);
    -webkit-transform: translate(0%, -100%);
    -ms-transform: translate(0%, -100%);
	z-index: 100000;
	cursor: pointer;
}
.float_info_area_sp img:hover{
	cursor: pointer;
	opacity: 0.8;
}











/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/* 松平 ソフトウェア */
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/

/*---ソフトウェア個別メインビジュアル共通---*/

.software_main_container {
	position: relative;
	display: block;
	height: 500px;
	width: 100% !important;
	max-height: 500px;
}
.software_main_container p{
	position: absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	margin:0;
	padding:0;
	font-size: 4.0em;
	color: white;
	font-family: "roboto-thin";
	font-weight: bold;
 }

/*---3D Smart Pro AI---*/

 .main_3d-smart-pro-ai {
	position: relative;
	display: block;
	width: 100% !important;
	height: 100%;
	max-height: 100%;
	background-size: cover;
	/* background-size: auto; */
	background-position: center center !important;
	background-repeat:no-repeat !important;
	background-image: url("../images/software_2/3d-smart-pro-ai/main-visual_pc.jpg?20230310");
}

/*---デジタルチャックインターロックページ---*/

 .main_digital-chuck {
	position: relative;
	display: block;
	width: 100% !important;
	height: 100%;
	max-height: 100%;
	background-size: cover;
	/* background-size: auto; */
	background-position: center center !important;
	background-repeat:no-repeat !important;
	background-image: url("../images/software_2/digital-chuck/main-visual_pc.jpg?20230310");
}

/*---NT Smart Signページ---*/

.main_nt-smart-sign {
	position: relative;
	display: block;
	width: 100% !important;
	height: 100%;
	max-height: 100%;
	background-size: cover;
	/* background-size: auto; */
	background-position: center center !important;
	background-repeat:no-repeat !important;
	background-image: url("../images/software_2/nt-smart-sign/main_visual_pc.jpg?20230310");
}

/*---エアバックページ---*/

.main_airbag {
	position: relative;
	display: block;
	width: 100% !important;
	height: 100%;
	max-height: 100%;
	background-size: cover;
	/* background-size: auto; */
	background-position: center center !important;
	background-repeat:no-repeat !important;
	background-image: url("../images/software_2/airbag/main_visual_pc.jpg?20230310");
}

/*---ATCメンテナンスナビゲーターページ---*/

.main_atc-nav {
	position: relative;
	display: block;
	width: 100% !important;
	height: 100%;
	max-height: 100%;
	background-size: cover;
	/* background-size: auto; */
	background-position: center center !important;
	background-repeat:no-repeat !important;
	background-image: url("../images/software_2/atc-nav/main_visual_pc.jpg?20230310");
}

/*---カットインチェックページ---*/

.main_cut-in-check {
	position: relative;
	display: block;
	width: 100% !important;
	height: 100%;
	max-height: 100%;
	background-size: cover;
	/* background-size: auto; */
	background-position: center center !important;
	background-repeat:no-repeat !important;
	background-image: url("../images/software_2/cut-in-check/main_visual_pc.jpg?20230323");
}

/*---ソフトウェア個別レスポンシブ---*/

@media screen and ( max-width:820px) {
	.software_main_container {height: 450px;}
	.software_main_container p{font-size: 5.0em;}
	.main_3d-smart-pro-ai{background-image: url("../images/software_2/3d-smart-pro-ai/main-visual_sp.jpg?20230310");}
	.main_digital-chuck{background-image: url("../images/software_2/digital-chuck/main-visual_sp.jpg?20230310");}
	.main_nt-smart-sign{background-image: url("../images/software_2/nt-smart-sign/main_visual_sp.jpg?20230310");}
	.main_airbag{background-image: url("../images/software_2/airbag/main_visual_sp.jpg?20230310");}
	.main_atc-nav{background-image: url("../images/software_2/atc-nav/main_visual_sp.jpg?20230310");}
	.main_cut-in-check{background-image: url("../images/software_2/cut-in-check/main_visual_sp.jpg?20230310");}
}

@media screen and ( max-width:520px) {
	.software_main_container{height: 300px;}
	.software_main_container p{font-size: 3.5em;}
	.main_3d-smart-pro-ai{background-image: url("../images/software_2/3d-smart-pro-ai/main-visual_sp.jpg?20230310");}
	.main_digital-chuck{background-image: url("../images/software_2/digital-chuck/main-visual_sp.jpg?20230310");}
	.main_nt-smart-sign{background-image: url("../images/software_2/nt-smart-sign/main_visual_sp.jpg?20230310");}
	.main_airbag{background-image: url("../images/software_2/airbag/main_visual_sp.jpg?20230310");}
	.main_atc-nav{background-image: url("../images/software_2/atc-nav/main_visual_sp.jpg?20230310");}
	.main_cut-in-check{background-image: url("../images/software_2/cut-in-check/main_visual_sp.jpg?20230310");}
}



/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/
/* 上野 ソフトウェア */
/*■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■*/

.software_first_image_container{
	position: relative;
	display: block;
	height: 300px;
	width: 100% !important;
	max-height: 800px;
}
.software_first_image_container h1{
	position: absolute;

	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);

	/*
	bottom: 0;
	left: 5%;
	*/


	margin:0;
	padding:0;
	font-size: 4.0em;
	color: white;
	font-family: "roboto-thin";
	font-weight: bold;

 }

.software_first_image_container img{
	width: 100%;
	height: auto;
 }

 .software_first_image{

	position: relative;
	display: block;
	height: 100%;
	width: 100% !important;

	/*background-size: cover;*/
	background-size: auto;

	background-position: center center !important;
	background-repeat:no-repeat !important;
	object-fit: cover;

	max-height: 100%;

	background-image: url("../images/software/software_02_1800.jpg");
	background-image: url("../images/software/software_03_1280.jpg");
}

@media screen and ( max-width:960px) {
	.software_first_image{background-image: url("../images/software/software_02_900.jpg");}
	.software_first_image{background-image: url("../images/software/software_03_960.jpg");}
	.software_first_image_container{height: 450px;}
	.software_first_image_container h1{font-size: 5.0em;}
}
@media screen and ( max-width:500px) {
	.software_first_image{background-image: url("../images/software/software_02_450.jpg");}
	.software_first_image{background-image: url("../images/software/software_03_480.jpg");}
	.software_first_image_container{height: 300px;}
	.software_first_image_container h1{font-size: 3.5em;}
}

/*英語用 start*/
.software_first_image_container img{
	width: 100%;
	height: auto;
 }

 .software_first_image_en{

	position: relative;
	display: block;
	height: 100%;
	width: 100% !important;

	/*background-size: cover;*/
	background-size: auto;

	background-position: center center !important;
	background-repeat:no-repeat !important;
	object-fit: cover;

	max-height: 100%;

	background-image: url("../images/software/software_02_en_1800.jpg");
	background-image: url("../images/software/software_03_en_1280.jpg");
}

@media screen and ( max-width:960px) {
	.software_first_image_en{background-image: url("../images/software/software_02_en_900.jpg");}
	.software_first_image_en{background-image: url("../images/software/software_03_en_960.jpg");}
	.software_first_image_container{height: 450px;}
	.software_first_image_container h1{font-size: 5.0em;}
}
@media screen and ( max-width:500px) {
	.software_first_image_en{background-image: url("../images/software/software_02_en_450.jpg");}
	.software_first_image_en{background-image: url("../images/software/software_03_en_480.jpg");}
	.software_first_image_container{height: 300px;}
	.software_first_image_container h1{font-size: 3.5em;}
}
/*英語用 end*/

.software_scroll_list{
	display: inline-block;
	width: 30%;
	height: 100px;
	margin: 10px;
	padding: 10px;
	background-color: #CCFFFF;
}

.software_image_container{
	width: 100%;
	/*height: 400px;*/
	/*max-height: 400px;*/
}
.software_image_container img{
	/*
	width: 100%;
	height: 100%;
	object-fit: cover;
	*/
}

.software_image_container_half{
	width: 100%;
	/*height: 300px;*/
	/*max-height: 300px;*/
}
.software_image_container_half img{
	/*
	width: 100%;
	height: 100%;
	object-fit: cover;
	*/
}

.software_image_container p{
	position: absolute;
	top: 50%;
	left: 50%;
	-ms-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);
	margin:0;
	padding:0;
 }

.software_image_container_min{
	width: 100%;
	/*height: 150px;*/
	/*max-height: 150px;*/
}
.software_image_container_min img{
	/*
	width: 100%;
	height: 100%;
	object-fit: cover;
	*/
}




.software_title_area{
	margin: 0px 0px 60px 0px;
}
.software_content_area{
	margin: 80px 0px 0px 0px;
}
.software_content_area_min{
	margin: 10px 0px 0px 0px;
}
.software_subtitle{

	position: relative;
	height: auto;
	/*padding-bottom: 20px;*/
	margin-bottom: 1em;

	width: 	100%;
	text-align: center;
}
.software_subtitle h2{
	/* font-size: 2.5rem !important; */
	font-size: 2.7rem;
	/*font-size: calc(2.5rem + ((1vw - 0.64rem) * 2));*/
	/*font-size: calc(2.5rem + ((1vw - 0.64rem) * 1.5));*/
	vertical-align: middle;
}
.software_subtitle h2:before {
	content: '';
	position: absolute;
	bottom: -5px;
	display: inline-block;
	/*width: 400px;*/
	width: 50vw;
	height: 3px;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	border-radius: 2px;
	background-color: #000000;
}

.software_subtitle_jp h3{
	font-size: 1.5em;
	vertical-align: middle;
}
.software_subtitle_jp{
	position: relative;
	display: inline-block;
	width: 	100%;
	text-align: center;
	/*padding-bottom: 70px;*/
}

.software_subtitle_en h3{
	font-size: 1.8rem !important;
	vertical-align: middle;
}
.software_subtitle_en{
	position: relative;
	display: inline-block;
	width: 	100%;
	text-align: center;
}


.software_content_title{
	font-size: 2.2em;
	/*font-size: calc(1.8rem + ((1vw - 0.64rem) * 1.5));*/
	font-weight: bold;
	text-align: center;
	/*font-family: 'Noto Sans JP', sans-serif;*/

	margin: 10px 0px 10px 10px;
	border-left: solid 3px #888888;
	border-bottom: solid 1px #888888;
	padding: 5px 10px;

	color: #00A42C;
	/*color: #00A42C;*/
}

.software_text_container{
	padding: 30px 10%;
}
.software_text_container_min{
	padding: 0px 10%;
}

@media screen and ( max-width:1280px) {
	.software_subtitle h2{font-size: 2.2em;}
	.software_content_title{font-size: 1.8em;}
	.software_subtitle_jp h3{font-size: 1.5em;}
}
@media screen and ( max-width:640px) {
	.software_subtitle h2{font-size: 1.5em;}
	.software_content_title{font-size: 1.5em;}
	.software_subtitle_jp h3{font-size: 1.2em;}
	.software_text_container{padding: 10px 10px;}
	.software_text_container_min{padding: 0px 10px;}
}


 .software_image{

	position: relative;
	display: block;
	height: 100%;
	width: 100% !important;

	/*background-size: cover;*/
	background-size: auto;

	background-position: center center !important;
	background-repeat:no-repeat !important;
	object-fit: cover;

	max-height: 100%;
 }
