@charset "utf-8";

/* For Tablet CSS
----------------------------------------------------------------------------*/
@media screen and (max-width: 1px) {
	div.p_infos h3.t3 br {
		display:block;
	}
	div.p_infos h2.t2 br {
		display:block;
	}
	div.p_infos h2.t2{
	}
	.products_main_outer h1.productTitle {
	    padding:0;
	    width: 96%;
	}
	img.fl_img,
	img.fr_img {
		width:auto;
	}
}

/* For Mobile Landscape CSS
----------------------------------------------------------------------------*/
@media screen and (max-width: 1px) {
	.table_over_width{
		width:100%;
		overflow:scroll;
	}
}

/* For Mobile Portlate CSS
----------------------------------------------------------------------------*/
@media screen and (max-width: 1px) {
	.img_over_width{
		width:80%;
	}
	.products_main_outer h1.productTitle {
		height:auto;
		padding:0 2%;
	}
}

/*-----------------------------------------------
	製品写真部
-----------------------------------------------*/
.pr30 {padding-right: 30px;}
ul.product_feature_icons2 li {
    float: left;
    margin-right: 9px;
    margin-bottom: 9px;
    height: 52px;
}
.p_photo_desc{
	margin-top: 120px;
}

.p_photo_desc.nolink{
	margin-bottom: 60px;
}

.p_photo_desc .p_photo{
	float: left;
	width: 450px;
	margin: 0 36px 0 40px;
	padding-bottom: 23px;
}

.p_photo_desc .p_photo img {
	display: block;
	margin: auto;
}

.p_photo_desc .p_desc{
	float: left;
	width: 390px;
	display: block;
	margin: 0 40px 0 24px;
}

.p_photo_desc .p_desc p.description{
	font-size: 16px !important;
	font-weight: bold;
	color: #000;
	line-height: 180%;
	margin-bottom: 24px;
}

.p_photo_desc .p_desc p.name{
	font-size: 34px !important;
	font-weight: bold;
	color: #000;
	line-height: 120%;
	font-family: "Lucida Sans Unicode","Lucida Grande",Arial,Helvetica,verdana,sans-serif;
}

.p_photo_desc .p_desc p.price{
	font-size: 16px !important;
	color: #555;
}

.p_photo_desc .p_desc ul.icons li{
	float: left;
	margin-top: 13px;
	margin-right: 24px;
}

.p_photo_desc .p_icons{
	margin: 19px 54px 28px 85px;
	width: 900px;
}


/*-----------------------------------------------
	コンテンツリンク部
-----------------------------------------------*/

.p_features {
    margin: 0 35px 25px;
    padding-top: 18px;
    padding-bottom: 20px;
}

.p_features li{
	float: left;
	display: table;
	width: 237px;
	height: 55px;
	margin-right: 15px;
	margin-bottom: 0;
	padding: 10px 2px 3px 42px;
	border-bottom: 1px solid #E0E0E0;
	list-style-type: none;
}

.p_features li.no_mg{
	margin-right: 0px;
}

.p_features li.on{
	opacity: 0.5;
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
}

.p_features li a{
	width: 250px;
	height: 55px;
	color: #000;
	font-size: 16px;
	text-decoration: none;
	display: table-cell;
	vertical-align: middle;
	line-height: 1.5em;
}

.p_features li a:hover{
	text-decoration: none !important;
}
.p_features li.in a {
	display: table-cell;
	position: relative;
}
.p_features li.in a::before{
  content: '';
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 3px #8d9ca8;
  border-right: solid 3px #8d9ca8;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
	position: absolute;
	top: 50%;
	left: -10%;
	margin-top: -5px;
}
/* IE用 */
@media all and (-ms-high-contrast: none){
 .p_features li.in a::before{
  top: 100%;
 }
}

/*-----------------------------------------------
	機能紹介
-----------------------------------------------*/
.p_infos{
	padding: 120px 40px !important;
	margin: 0;
}

/* odd、evenはJSで付加 */
.p_infos.odd{
	background-color: #F5F5F5;
}

.p_infos.even{
	background-color: #FFF;
}

/* 特定モデル */
.products_main_outer .p_infos p.model{
	margin-bottom: 12px;
	padding: 5px 12px;
	display: inline-block;
	font-size: 16px !important;
	line-height: 16px;
	color: #FFF;
	background-color: #000;
}

/* リード文(メイン) */
.p_infos h2.main{
	font-size: 41px;
	font-weight: normal;
	color: #000;
	line-height: 120%;
	margin: 0;
}
.p_infos h2.main span{
	font-size: 28px;
}

/* リード文(サブ) */
.p_infos h2.sub{
	font-size: 18px;
	font-weight: normal;
	color: #000;
	line-height: 140%;
	margin: 0;
}

.p_infos div.p_infos_inner{
	width: 100%;
	margin-top: 45px;
	display: table;
	table-layout: fixed;
	vertical-align: middle;
}
div.cols01 {width: 70%;}
.p_infos div.p_infos_inner.separator{
	background-image: url("img/bg_separator.png");
	background-position: 50% 0%;
	background-repeat: repeat-y;
}
.p_infos div.p_infos_inner div.cols p,.cols01 p {
    color: #000;
}
.p_infos div.p_infos_inner div.cols01 {
	display: table-cell;
	vertical-align: middle;
}

html*.p_infos div.p_infos_inner div.cols01 {
	float: left;
	width: 70%;
}

.p_infos div.p_infos_inner div.cols{
	display: table-cell;
	vertical-align: middle;
}

html*.p_infos div.p_infos_inner div.cols{
	float: left;
	width: 50%;
}


html*.p_infos div.p_infos_inner div.col_1only{
	width: 100%;
}

.p_infos div.p_infos_inner div.cols div.cols_inner{
	display: inline-block;
}

.p_infos div.p_infos_inner div.cols p{
	color: #000;
}

.p_infos div.p_infos_inner div.cols p:after{
	content: "";
}

.p_infos div.p_infos_inner div.cols p.img_note{
	font-size: 14px !important;
}

/* リンク画像 */
.p_infos div.p_infos_inner div.cols a:hover img{
	opacity: 0.5;
	filter:alpha(opacity=50);
	-moz-opacity: 0.5;
}

/* 注意書き */
.p_infos div.p_infos_inner ul.mark_attention li{
	font-size: 12px;
	color: #000;
}

/* featureリスト 2行を2列表示 */
.p_infos div.p_infos_inner ul.feature_list{
	width: 900px;
}
.p_infos div.p_infos_inner ul.feature_list li {
    width: 35.6% !important;
    float: left;
    color: #000;
    font-size: 21px;
    line-height: 110%;
    margin-bottom: 40px;
    text-indent: -1em;
    padding: 20px;
    padding-right: 100px!important;
}
.mb10 {margin-bottom: 10px !important;}
.p_infos div.p_infos_inner ul.feature_list li span {
    font-size: 16px;

}
.p_infos div.p_infos_inner ul.feature_list li.last{
	margin-bottom: 0;
}

.p_infos div.p_infos_inner ul.feature_list li span{
	font-size: 16px;
}

/* featureリスト 「・」付加 */
.p_infos div.p_infos_inner ul.feature_list2 li{
	width: 450px;
	color: #000;
	font-size: 16px;
	line-height: 150%;
	text-indent: -1.5em;
	padding-left: 1.5em;
}

.p_infos div.p_infos_inner ul.feature_list2 li:before{
	content: "・ ";
}

/* 大きめのアイコン列挙 */
.p_infos div.p_infos_inner ul.product_feature_icons{
	margin-left: 30px;
}

.p_infos div.p_infos_inner ul.product_feature_icons li{
	float: left;
	margin-right: 25px;
	margin-bottom: 10px;
}

/* 70px以内のアイコン整列 */
.p_infos div.p_infos_inner ul.product_feature_icons2{
	margin-left: 30px;
	letter-spacing: -.40em;
}

.p_infos div.p_infos_inner ul.product_feature_icons2 li{
	display: inline-block;
	letter-spacing: normal;
	width: 70px;
	height: 61px;
}

html*.p_infos div.p_infos_inner ul.product_feature_icons2 li{
	float: left;
	margin-right: 9px;
	margin-bottom: 9px;
	width: 61px;
	height: 52px;
}
.p_infos li {
    margin-bottom: 10px;
    margin-left: 1em;
    color: #000;
    font-size: 16px;
    line-height: 1.8em;
    text-indent: -1em;
    padding-left: 1em;
}
.p_infos div.p_infos_inner div.cols p {
    color: #000;
    text-indent: 0em;
    padding-left: 0em;
    margin-left: 1.7em;
}

#feature_icons_tooltip {
 display: none;
}

/* 20170927追加 */
.products_main_outer p:not(.fs10_ao).txt_note {
 font-size: 12px !important;
}
.bnr span {
	display: block;
	text-align: center;
	border: 1px solid #004473;
}
.newcolor_black {
	position: relative;
	left: 5px;
	top: -3px;
	margin: 0 0 5px 5px;
	padding: 1px 4px;
	border: 1px solid #000;
	color: #000;
	font-size: 65%;
}
.txt_product {
 display: table;
}
.txt_product p.name,
.txt_product .logo_hireso {
 display: table-cell;
 vertical-align: middle;
}
.txt_product .logo_hireso img {
 margin-left: 40px;
}

@media screen and ( max-width: 768px ) {
.txt_product {
 display:inherit;
}
.txt_product p.name,
.txt_product .logo_hireso {
 display: block;
}
.txt_product .logo_hireso img {
 margin-left: 0;
 margin-bottom: 20px;
}
}

/*-----------------------------------------------
	.btnRect
-----------------------------------------------*/

.btnLayout li a.btnRect {
	border: 1px solid #004473;
	color: #fff;
	background-color: #004573;
	display: table-cell;
	font-family: inherit;
	text-align: center;
	text-decoration: none;
	position: relative;
	vertical-align: middle;
	height: 55px;
	line-height: 1.5em;
}

div#main a.btnRect {
	text-decoration: none;
}

.btnRect:link,
a.btnRect:link,
.btnRect:visited,
a.btnRect:visited {
	text-decoration: none;
}

.btnLayout li .btnRect:hover,
.btnLayout li a.btnRect:hover {
	color: #626262;
	background-color: #fff;
	cursor: pointer;
	text-decoration: none !important;
}

.btnLayout li .btnRect:active,
.btnLayout li a.btnRect:active {
	background-color: #F5F5F5;
}

a.btnRect::before{
	content: '';
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 3px #8d9ca8;
	border-right: solid 3px #8d9ca8;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	left: 3%;
	margin-top: -5px;
}

.btnLayout li .btnLarge {
	font-size: 20px;
	padding: 0.5em;
	width: 380px !important;
}

/*-----------------------------------------------
	.btnLayout
-----------------------------------------------*/

.btnReset {
	float: none !important;
	margin-top: 300px;
}

.btnLayout {
	margin-top: 40px;
	text-align: center;
}

.btnLayout > li {
	display: inline-block;
	border: none;
	padding: 0;
	width: auto;
	height: auto;
	float: none;
}

.btnLayout > li + li {
	margin-left: 50px;
}

.btnLayout li a {
	width: auto;
}

/*-----------------------------------------------
	.list_app
-----------------------------------------------*/
.p_infos .list_app {
	margin-top: 10px;
	font-size: 0;
}
.p_infos .list_app li {
	display: inline-block;
	border: none;
	padding: 0;
	margin: 0 0 0 10px;
	text-indent: 0;
}
.p_infos .list_app li:first-child {
	margin-left: 0;
}
@media screen and ( max-width: 768px ) {
.p_infos .list_app li {
	margin: 0 0 0 10px !important;
}
.p_infos .list_app li:first-child {
	margin-left: 0;
}
}
@media screen and ( max-width: 374px ) {
.p_infos .list_app li {
	margin: 5px 0 0 0 !important;
}
.p_infos .list_app li span {
	display: block;
}
.p_infos .list_app li:first-child {
	margin-top: 0 !important;
}
}

/*-----------------------------------------------
	.note_app
-----------------------------------------------*/
.p_infos.note_app {
	padding-top: 40px !important;
	padding-bottom: 0 !important;
	background-color: #fff;
}
.p_infos.note_app .note_app_inner {
	padding: 30px 20px;
	border: 2px solid #E0E0E0;
}
.p_infos.note_app .note_app_inner ul {
	text-align: center;
}
.p_infos.note_app .note_app_inner ul li {
	display: inline-block;
	margin: 0 0 0 60px !important;
	padding: 0;
	color: #000;
	font-size: 12px;
	line-height: 1.25rem;
	text-indent: 0;
	text-align: left;
}
.p_infos.note_app .note_app_inner ul li:first-child {
	margin-left: 0 !important;
}
.p_infos.note_app .note_app_inner ul li img {
	vertical-align: bottom;
}
.p_infos.note_app .note_app_inner ul li span {
	margin-left: 10px;
}
@media screen and ( max-width: 667px ) {
.p_infos.note_app .note_app_inner {
	padding: 20px;
}
.p_infos.note_app .note_app_inner ul li {
	display: block;
	margin: 15px 0 0 0 !important;
	padding-left: 140px;
	text-indent: -140px;
}
.p_infos.note_app .note_app_inner ul li:first-child {
	margin: 0 !important;
}
.p_infos.note_app .note_app_inner ul li img {
	width: 130px;
}
}

/*関連情報 彩速ナビ一時消す*/
.imgLink_res ul li:first-child{
	display: none;
}


/*-----------------------------------------------
	.note_app
-----------------------------------------------*/
.mapfan_fs_s {
	font-size: 80%;
}

/*-----------------------------------------------
	.mapfan_apps
-----------------------------------------------*/
.mapfan_apps {
	width: 700px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
.mapfan_assist_wrap {
	width: 60%;
	display: flex;
	align-items: flex-start;
	flex-direction: column;
}
.mapfan_assist_content {
	display: flex;
	width: 100%;
	justify-content: space-between;
}
.mapfan_assist_qr {
	float: left;
	text-align: center;
	width: 40%;
}
.mapfan_assist_qr_apple {
	float: left;
}
.mapfan_site {
	display: flex;
	flex-direction: column;
	align-items: flex-end;
}
.mapfan_site_img {
	margin-top: 65px;
}
@media screen and ( max-width: 768px ) {
	.mapfan_apps {
		width: auto;
		flex-direction: column;
	}
	.mapfan_assist_wrap {
		width: auto;
		align-items: center;
		margin: 0 auto;
	}
	.mapfan_assist_content {
		flex-direction: column;
	}
	.mapfan_assist_qr {
		display: flex;
		flex-direction: column;
		align-items: center;
		margin-left: 0;
		width: auto;
	}
	.mapfan_assist_qr_apple {
		clear: both;
	}
	.mapfan_site {
		align-items: center;
		margin-top: 30px;
	}
	.mapfan_site_img {
		margin-top: 0;
	}
}

/*-----------------------------------------------
	.txt_center
-----------------------------------------------*/
.txt_center {
	text-align: center;
}