@charset "UTF-8";

/* ====================================
	jp.sharpトップ共通スタイル
 ==================================== */
/* ユーティリティ */
.mt1em {
	margin-top: 1em;
}

.bdr-gray {
	border: solid 1px #d9d9d9;
}

a.hover-fade {
	text-decoration: none;
}

.delimiter {
	display: none;
}

/* アロータイトル・左 */
.has-arrow-left {
	padding: 0 0 0 1em;
	background-image: url(/products/common/images/chevron-right-solid.svg);
	background-repeat: no-repeat;
	background-position: left 0 top .4em;
	background-size: auto .9em;
}

.lineup-sub-title,
.sub-title,
.products-sub-title {
	font-weight: 300;
}

.has-btn-show-list {
	display: flex;
}

ul.list-btn-show-list {
	display: flex;
}

ul.list-btn-show-list li {
	display: flex;
	align-items: center;
}

/* 一覧を見るボタン */
a.btn-show-list {
	display: inline-block;
	padding: .25em 1em .25em .75em;
	font-size: 1.3rem;
	background: #fff;
	color: #535353;
	border: solid 1px #535353;
	border-radius: 0.5rem;
	/* position: relative; */
	text-decoration: none;
}

.btn-show-list svg,
.btn-show-list-business svg {
	position: relative;
	top: -.1em;
}

.arrow-link {
	display: inline-block;
	padding: 0 0 0 1.4em;
	font-size: 1.4rem;
	line-height: 1;
	position: relative;
}

.arrow-link::before {
	content: '';
	display: inline-block;
	width: 12px;
	height: 14px;
	background: url(/products/common/images/chevron-right-solid.svg) no-repeat center center;
	background-size: auto 100%;
	position: absolute;
	top: 50%;
	left: 0.2em;
	margin-top: -0.5em;
}

/* メインビジュアル：スライドショー */
.main-visual-button-next,
.main-visual-button-prev {
	position: absolute;
	top: 50%;
	width: 6%;
	height: 12%;
	margin-top: -6%;
	z-index: 2;
	cursor: pointer;
	background-color: rgba(255, 255, 255, 0.6);
	background-size: 40% auto;
	background-position: center;
	background-repeat: no-repeat;
}

.main-visual-button-prev {
	background-image: url(/products/common/images/arrow-prev-b.svg);
	left: 0;
	right: auto
}

.main-visual-button-next {
	background-image: url(/products/common/images/arrow-next-b.svg);
	right: 0;
	left: auto
}

.main-img .swiper-pagination {
	display: flex;
	justify-content: center;
	width: 100%;
	padding: 20px 0;
	position: relative;
}

.main-img .swiper-pagination-bullet {
	width: 40px;
	height: 4px;
	margin: 0 5px;
	background: #aaa;
	border-radius: 0;
}

.main-img .swiper-pagination-bullet-active {
	background: #878787;
}

/* 製品・サービス */
#lineup {
	background: #f5f5f5;
}

#lineup ul.list-lineup-item {
	display: none;
}

.product-name {
	font-weight: 300;
}

ul.list-lineup a {
	background-color: #fff;
	text-decoration: none;
}

ul.list-service li a {
	background-color: #fff;
	background-repeat: no-repeat;
}

ul.list-service li a[data-icon="cocoroplus"] {
	background-image: url(../images/icon-cocoroplus.svg);
}

ul.list-service li a[data-icon="multicopy"] {
	background-image: url(../images/icon-multicopy.svg);
}

/* 製品についてもっと詳しく */
ul.list-lineup-more li a {
	background-color: #fff;
	background-repeat: no-repeat;
}

ul.list-lineup-more li a[data-icon="catalog"] {
	background-image: url(../images/icon-catalog.svg);
}

ul.list-lineup-more li a[data-icon="movie"] {
	background-image: url(../images/icon-movie.svg);
}

/* 製品のサポート・ご購入 */
ul.list-main-support li a {
	background-repeat: no-repeat;
}

ul.list-main-support li a[data-icon="support"] {
	background-image: url(../images/icon-support.svg);
}

ul.list-main-support li a[data-icon="faq"] {
	background-image: url(../images/icon-faq.svg);
}

ul.list-main-support li a[data-icon="store"] {
	background-image: url(../images/icon-store.svg);
}

/* 新着情報 */
ul.list-news a {
	text-decoration: underline;
}

.corporate-news {
	margin-top: 4rem;
	font-size: 1.4rem;
}

.corporate-news a {
	display: block;
	padding: 0 0 0 1em;
	color: #24137d;
	background: url(/products/common/images/chevron-right-solid.svg) no-repeat left top .4em;
	background-size: .8em auto;
}

/* 災害時における製品の取り扱いについて */
.saigai-info {
	padding: 0.5em;
	border: solid 1px #EF000E;
	color: #EF000E;
	text-align: center;
}

.saigai-info a {
	color: inherit;
}

/* メインビジュアル下お知らせリンク：黒 */
.info-link-bk {
	padding: 0.5em;
	border: solid 1px #000;
	color: #000;
	text-align: center;
}

.info-link-bk a {
	color: inherit;
}

/* 製品に関する大切なお知らせ */
.important-notification {
	text-align: right;
}

.important-notification a {
	display: inline-block;
	padding: 0.25em 0 0.25em 1.75em;
	background-image:
		url(/index_common/images/icon-important-notification.svg);
	background-repeat: no-repeat;
	background-position: left center;
	background-size: contain;
	font-size: 1.5rem;
	line-height: 1;
}

/* キャンペーン */
#campaign .flex-item .ttl {
	font-weight: 500;
}

#campaign .flex-item .text {
	color: #535353;
}

#campaign .flex-item .img-container {
	border: solid 1px #d9d9d9;
}

/* ピックアップコンテンツ */
#pickup .flex-item.hidden {
	display: none;
}

#pickup .flex-item .category {
	line-height: 1.4;
	color: #a0a0a0;
}

#pickup .flex-item .ttl {
	font-weight: 500;
}

#pickup .flex-item .img {
	border: solid 1px #d9d9d9;
}

#pickupMore a {
	display: block;
	margin-top: 5rem;
	padding: 0.5em;
	font-size: 1.8rem;
	background: #e6e6e6;
	color: #403d33;
	text-align: center;
	cursor: pointer;
}

#pickupMore .icon-more {
	display: inline-block;
	width: 1em;
	margin-right: 0.5em;
	line-height: 1;
}

/* 製品ページ専用フッター */
.products-page-footer-navi-item a {
	color: #535353;
}

/* ポップアップ */
body {
	position: relative;
}

.popup-scroll-prevent {
	position: fixed;
	z-index: -1;
	width: 100%;
	height: 100%;
	overflow-y: scroll;
}

.lineup-popup {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	padding: 15vh 5% 5vh;
	background: rgba(0, 0, 0, 0.7);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 11;
	display: none;
}

.lineup-popup-container {
	width: 100%;
	max-height: 100%;
	overflow: auto;
}

/* closeボタン */
.lineup-popup .btn-close {
	width: 100%;
	height: 15vh;
	line-height: 1;
	color: #eee;
	cursor: pointer;
	position: absolute;
	top: 0;
	left: 0;
}

.lineup-popup .btn-close span {
	font-weight: bold;
	padding: 0.5rem;
	position: absolute;
	bottom: 0;
	right: 5%;
	font-size: 3rem;
}

.lineup-popup .result {
	background: #fff;
}

.lineup-popup .result .ttl {
	font-weight: 500;
	text-align: center;
}

.lineup-popup ul.list-lineup-item {
	display: flex;
	flex-wrap: wrap;
	max-width: 768px;
	margin: 0 auto;
}

.lineup-popup ul.list-lineup-item li a {
	display: block;
	padding: 65% 0 0;
	text-align: center;
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 65% auto;
}

.lineup-popup ul.list-lineup-item li a[data-img="aquos"] {
	background-image: url(/lineup/images/av_aquos.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="bd4k"] {
	background-image: url(/lineup/images/av_bd4k.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="bd"] {
	background-image: url(/lineup/images/av_bd.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="aquos-audio"] {
	background-image: url(/lineup/images/av_aquos-audio.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="sound-partner"] {
	background-image: url(/lineup/images/av_soundpartner.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="speakerlantern"] {
	background-image: url(/lineup/images/ha_speakerlantern.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="speaker"] {
	background-image: url(/lineup/images/av_speaker.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="aircon"] {
	background-image: url(/lineup/images/air_aircon.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="kuusei"] {
	background-image: url(/lineup/images/air_kuusei.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="dassyuu"] {
	background-image: url(/lineup/images/air_dassyuu.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="pcig"] {
	background-image: url(/lineup/images/air_pcig.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="pci_fan"] {
	background-image: url(/lineup/images/air_pci_fan.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="kansouki"] {
	background-image: url(/lineup/images/air_kansouki.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="joshitsu"] {
	background-image: url(/lineup/images/air_joshitsu.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="kashitsu"] {
	background-image: url(/lineup/images/air_kashitsu.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="danbou"] {
	background-image: url(/lineup/images/air_danbou.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="reizo"] {
	background-image: url(/lineup/images/kitchen_reizo.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="range"] {
	background-image: url(/lineup/images/kitchen_range.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="toaster"] {
	background-image: url(/lineup/images/kitchen_toaster.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="hotcook"] {
	background-image: url(/lineup/images/kitchen_hotcook.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="blender"] {
	background-image: url(/lineup/images/kitchen_blender.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="ocha"] {
	background-image: url(/lineup/images/kitchen_ocha.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="ricecooker"] {
	background-image: url(/lineup/images/kitchen_ricecooker.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="ks"] {
	background-image: url(/lineup/images/kitchen_ks.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="sentaku"] {
	background-image: url(/lineup/images/ha_sentaku.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="uw"] {
	background-image: url(/lineup/images/ha_uw.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="souji"] {
	background-image: url(/lineup/images/ha_souji.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="shoescloset"] {
	background-image: url(/lineup/images/ha_shoescloset.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="pethealthcare"] {
	background-image: url(/lineup/images/ha_pethealthcare.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="haircare"] {
	background-image: url(/lineup/images/health_haircare.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="beauty"] {
	background-image: url(/lineup/images/health_beauty.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="mlp"] {
	background-image: url(/lineup/images/health_mlp.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="k-tai"] {
	background-image: url(/lineup/images/mobile_k-tai.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="phone"] {
	background-image: url(/lineup/images/mobile_phone.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="robohon"] {
	background-image: url(/lineup/images/mobile_robohon.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="funband"] {
	background-image: url(/lineup/images/mobile_funband.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="dynabook"] {
	background-image: url(/lineup/images/infod_dynabook.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="edictionary"] {
	background-image: url(/lineup/images/infod_edictionary.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="penjisho"] {
	background-image: url(/lineup/images/infod_penjisho.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="enote"] {
	background-image: url(/lineup/images/infod_enote.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="calc"] {
	background-image: url(/lineup/images/infod_calc.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="sunvista"] {
	background-image: url(/lineup/images/energy_sunvista.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="energy_controller"] {
	background-image: url(/lineup/images/energy_controller.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="battery"] {
	background-image: url(/lineup/images/energy_battery.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="energy_v2h"] {
	background-image: url(/lineup/images/energy_v2h.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="citycharge"] {
	background-image: url(/lineup/images/energy_citycharge.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="solar"] {
	background-image: url(/lineup/images/energy_solar.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="tekion"] {
	background-image: url(/lineup/images/livingware_tekion.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="spray"] {
	background-image: url(/lineup/images/livingware_spray.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="mask"] {
	background-image: url(/lineup/images/livingware_mask.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="faceshield"] {
	background-image: url(/lineup/images/livingware_shield.jpg);
}

.lineup-popup ul.list-lineup-item li a[data-img="dailycare_hair"] {
	background-image: url(/lineup/images/livingware_dailycare_hair.jpg);
}

/* ====================================
	スマートフォン専用スタイル
===================================== */
@media only screen and (max-width: 767px) {
	.pc {
		display: none !important;
	}

	.sp-tr {
		text-align: right;
	}

	.has-btn-show-list ul.list-btn-show-list {
		margin-left: 2rem;
	}

	/* 災害時における製品の取り扱いについて */
	.saigai-info {
		margin: 1rem 0 2rem;
		font-size: 1.2rem;
	}

	/* メインビジュアル下お知らせリンク：黒 */
	.info-link-bk {
		margin: 1rem 0 2rem;
		font-size: 1.2rem;
	}

	/* 製品に関する大切なお知らせ */
	.important-notification {
		margin: 1rem 0 3rem;
	}

	/* セクション */
	.sub-section {
		padding-top: 4rem;
		padding-bottom: 4rem;
		border-top: solid 1px #d9d9d9;
	}

	.products-sub-title {
		flex-shrink: 0;
		font-size: 2.2rem;
	}

	.sub-title-container {
		margin-bottom: 3rem;
	}

	.sub-title-container .sub-title {
		flex-shrink: 0;
	}

	/* フレックスコンテナ */
	.flex-container {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	/* フレックスコンテナ：スマホ2列 */
	.flex-container.sp-column2 {
		font-size: 1.5rem;
	}

	.flex-container.sp-column2 .ttl {
		font-size: 1.6rem;
		font-weight: 500;
	}

	.flex-container.sp-column2>.flex-item {
		width: 48%;
	}

	.flex-container.sp-column2>.flex-item:nth-of-type(-n+2) {
		margin-top: 0;
	}

	/* 製品・サービス */
	#lineup {
		border-top: none;
	}

	.product-name {
		font-size: 1.6rem;
	}

	ul.list-lineup {
		display: flex;
		flex-wrap: wrap;
		margin-top: 2rem;
	}

	ul.list-lineup>li {
		width: 49%;
		margin-left: 1%;
		margin-top: 0.5rem;
	}

	ul.list-lineup>li:nth-child(2n-1) {
		margin-left: 0;
	}

	ul.list-lineup>li:nth-child(-n+2) {
		margin-top: 0;
	}

	ul.list-lineup>li>a {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		height: 100%;
		padding: 1rem;
		line-height: 1.3;
	}

	ul.list-lineup>li>a .img {
		padding: 0 20%;
	}

	ul.list-lineup>li>a .ttl {
		width: 100%;
		text-align: center;
	}

	ul.list-service {
		margin-top: 2rem;
	}

	ul.list-service li {
		margin-top: 2px;
	}

	ul.list-service li:first-child {
		margin-top: 0;
	}

	ul.list-service li a {
		display: block;
		padding: 1em 2em 1em 4em;
		background-size: 2.5em auto;
		background-position: left 0.5em center;
		position: relative;
	}

	ul.list-service li a::before {
		content: '';
		display: inline-block;
		width: 12px;
		height: 14px;
		background: url(/products/common/images/chevron-right-solid.svg) no-repeat center center;
		background-size: auto 100%;
		position: absolute;
		top: 50%;
		right: 0.75em;
		margin-top: -0.5em;
	}

	/* 製品についてもっと詳しく */
	.lineup-sub-title {
		margin-top: 2rem;
		padding-top: 2rem;
		font-size: 1.8rem;
		border-top: solid 1px #A0A0A0;
	}

	ul.list-lineup-more {
		margin-top: 2rem;
	}

	ul.list-lineup-more li:not(:first-child) {
		margin-top: 2px;
	}

	ul.list-lineup-more li a {
		display: block;
		padding: 1em 2em 1em 4em;
		background-size: 2.5em auto;
		background-position: left 0.5em center;
		position: relative;
	}

	ul.list-lineup-more li a::before {
		content: '';
		display: inline-block;
		width: 12px;
		height: 14px;
		background: url(/products/common/images/chevron-right-solid.svg) no-repeat center center;
		background-size: auto 100%;
		position: absolute;
		top: 50%;
		right: 0.75em;
		margin-top: -0.5em;
	}

	/* 商品のサポート・ご購入 */
	#support {
		border-top: none;
	}

	ul.list-main-support {
		display: flex;
		justify-content: space-between;
		border: solid 1px #D9D9D9;
	}

	ul.list-main-support li {
		width: 33.3%;
	}

	ul.list-main-support li a {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		height: 100%;
		padding: 50% 5% 5% 5%;
		background-repeat: no-repeat;
		background-position: center top 20%;
		background-size: 30% auto;
		border-left: solid 1px #D9D9D9;
		font-size: 1.4rem;
	}

	ul.list-main-support li:first-child a {
		border-left: none;
	}

	ul.list-main-support li a .ttl {
		width: 100%;
		text-align: center;
	}

	ul.list-main-support li a .ttl .small {
		font-size: 0.8em;
	}

	ul.list-support {
		margin-top: 2rem;
	}

	ul.list-support li .ttl {
		font-size: 1.4rem;
	}

	ul.list-support li a {
		display: flex;
		align-items: center;
		height: 100%;
		padding: 0.2em 2em 0.2em 1.4em;
		position: relative;
	}

	ul.list-support li a::after {
		content: '';
		display: inline-block;
		width: 12px;
		height: 14px;
		background: url(/products/common/images/chevron-right-solid.svg) no-repeat center center;
		background-size: auto 100%;
		position: absolute;
		top: 50%;
		left: 0.2em;
		margin-top: -0.5em;
	}

	/* キャンペーン */
	#campaign .flex-item {
		margin-top: 2rem;
	}

	#campaign .flex-item:first-of-type {
		margin-top: 0;
	}

	#campaign .sp-column-img-text {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: flex-start;
	}

	#campaign .sp-column-img-text .ttl {
		font-size: 1.6rem;
		font-weight: 500;
	}

	#campaign .sp-column-img-text .text {
		margin-top: 1rem;
		font-size: 1.5rem;
	}

	#campaign .sp-column-img-text .text-small {
		font-size: 0.9em;
	}

	#campaign .sp-column-img-text>.img-container {
		width: 33%;
	}

	#campaign .sp-column-img-text>.text-container {
		width: 60%;
	}

	/* ピックアップコンテンツ */
	#pickup .flex-item {
		margin-top: 2rem;
	}

	#pickup .flex-item:nth-of-type(-n+2) {
		margin-top: 0;
	}

	#pickup .flex-item .ttl {
		margin-top: 0.5em;
	}

	#pickup .flex-item .text {
		margin-top: 0.5em;
		font-size: 1.4rem;
	}

	#pickup .flex-item .category {
		margin-top: 0.5em;
		font-size: 1.2rem;
	}

	/* 新着情報 */
	ul.list-news li {
		margin-top: 1em;
		padding-top: 1em;
		border-top: dashed 1px #a0a0a0;
		display: none;
	}

	ul.list-news li:nth-child(-n + 12) {
		display: inherit;
	}

	ul.list-news li:first-child {
		margin-top: 0;
		padding-top: 0;
		border-top: none;
	}

	ul.list-news li .text {
		margin-top: 0.2em;
	}

	ul.list-news li .date {
		font-size: 1.4rem;
	}

	ul.list-news li .text {
		font-size: 1.4rem;
	}

	/* 外部リンクバナー */
	#outerLinks ul {
		display: flex;
		flex-wrap: wrap;
	}

	#outerLinks ul li {
		max-width: 48%;
		margin-right: 2%;
		margin-bottom: 1rem;
	}

	#outerLinks ul li a {
		display: block;
		width: 100%;
	}

	/* jp.sharpフッター */
	#productsPageFooterNavi {
		display: flex;
		justify-content: space-between;
		padding: 2rem 0;
		color: #535353;
		border-top: solid 1px #A0A0A0;
	}

	.products-page-footer-navi-item {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		width: 50%;
		padding: 2rem 0;
	}

	.products-page-footer-navi-item:first-of-type {
		border-right: solid 1px #A0A0A0;
	}

	.products-page-footer-navi-ttl {
		width: 100%;
		text-align: center;
	}

	ul.list-sns {
		display: flex;
		justify-content: center;
		width: 100%;
		padding: 0 5%;
		margin-top: 1em;
	}

	ul.list-sns li a {
		display: block;
		max-width: 5rem;
		padding: 15%;
	}

	.products-page-footer-navi-item .link {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.products-page-footer-navi-item .link a {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.products-page-footer-navi-item .link a .img {
		width: 3.5rem;
	}

	.products-page-footer-navi-item .link .ttl {
		padding-left: 0.2em;
		font-size: 1.4rem;
		text-align: center;
	}

	/* ポップアップ */
	.lineup-popup .result {
		padding: 3rem 5% 4rem;
	}

	.lineup-popup .result .ttl {
		margin-bottom: 2rem;
		font-size: 2rem;
	}

	.lineup-popup ul.list-lineup-item li {
		width: 33%;
		margin-bottom: 1rem;
	}

	.lineup-popup ul.list-lineup-item li a {
		font-size: 1.2rem;
		line-height: 1.3;
	}
}

/* ====================================
	PC&タブレット、印刷専用スタイル
===================================== */
@media print,
screen and (min-width: 768px) {
	.sp {
		display: none !important;
	}

	.has-btn-show-list ul.list-btn-show-list {
		margin-left: 3rem;
	}

	/* 災害時における製品の取り扱いについて */
	.saigai-info {
		margin: 2rem 0;
		font-size: 1.4rem;
	}

	/* メインビジュアル下お知らせリンク：黒 */
	.info-link-bk {
		margin: 2rem 0;
		font-size: 1.4rem;
	}

	/* 製品に関する大切なお知らせ */
	.important-notification {
		margin: 2rem 0;
	}

	/* 一覧を見るボタン */
	.btn-show-list:hover {
		background: #535353;
		color: #fff;
	}

	/* セクション */
	.sub-section {
		padding-top: 6rem;
		padding-bottom: 6rem;
	}

	#campaign.sub-section {
		padding-top: 2rem;
	}

	#lineup.sub-section {
		padding-bottom: 8rem;
	}

	.products-sub-title {
		font-size: 2.8rem;
	}

	.sub-title {
		font-size: 2.2rem;
	}

	.sub-title-underline {
		padding-bottom: 0.6em;
		border-bottom: solid 1px #000;
	}

	.btn-show-list-business {
		display: inline-block;
		margin-left: 1rem;
		padding: .25em 1em .25em .75em;
		font-size: 1.3rem;
		background: #fff;
		color: #535353;
		border: solid 1px #535353;
		border-radius: .5rem;
		position: relative;
	}

	.btn-show-list-business:hover {
		background: #535353;
		color: #fff;
		text-decoration: none;
	}

	/* メインビジュアル：スライドショー */
	.main-visual-button-next,
	.main-visual-button-prev {
		position: absolute;
		top: 50%;
		width: 30px;
		height: 80px;
		margin-top: -40px;
	}

	/* フレックスコンテナ */
	.flex-container {
		display: flex;
		flex-wrap: wrap;
	}

	/* 製品・サービス */
	#lineup .products-sub-title {
		padding-top: 0;
		border-top: none;
	}

	ul.list-lineup {
		display: flex;
		flex-wrap: wrap;
		margin-top: 2rem;
	}

	ul.list-lineup>li {
		width: 24%;
		margin-left: 1%;
		margin-top: 1.5rem;
	}

	ul.list-lineup>li:nth-child(4n-3) {
		margin-left: 0;
	}

	ul.list-lineup>li:nth-child(-n+4) {
		margin-top: 0;
	}

	ul.list-lineup>li>a {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		height: 100%;
		padding: 1rem;
		font-size: 1.8rem;
		line-height: 1.3;
		-webkit-transform: perspective(1px) translateZ(0);
		transform: perspective(1px) translateZ(0);
		box-shadow: 0 0 1px rgba(0, 0, 0, 0);
		position: relative;
		overflow: hidden;
	}

	ul.list-lineup>li>a:before {
		content: "";
		position: absolute;
		z-index: -1;
		left: 0;
		right: 0;
		bottom: 0;
		background: #e6000d;
		height: 4px;
		-webkit-transform: translateY(4px);
		transform: translateY(4px);
		-webkit-transition-property: transform;
		transition-property: transform;
		-webkit-transition-duration: 0.2s;
		transition-duration: 0.2s;
		-webkit-transition-timing-function: ease-out;
		transition-timing-function: ease-out;
	}

	ul.list-lineup>li>a:hover:before,
	ul.list-lineup>li>a:focus:before,
	ul.list-lineup>li>a:active:before {
		-webkit-transform: translateY(0);
		transform: translateY(0);
	}

	ul.list-lineup>li>a .img {
		padding: 0 20%;
	}

	ul.list-lineup>li>a .ttl {
		width: 100%;
		text-align: center;
	}

	ul.list-service {
		display: flex;
		flex-wrap: wrap;
		margin-top: 6rem;
	}

	ul.list-service li {
		width: 24%;
		margin-left: 1%;
		margin-top: 1.5rem;
	}

	ul.list-service li:nth-child(4n-3) {
		margin-left: 0;
	}

	ul.list-service li:nth-child(-n+4) {
		margin-top: 0;
	}

	ul.list-service li a {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 100%;
		padding: 10% 8% 10% 38%;
		background-position: left 13% center;
		background-size: 26% auto;
		font-size: 1.8rem;
	}

	ul.list-service li a:hover {
		background-color: #e5e5e5;
		text-decoration: none;
	}

	ul.list-service li a .ttl {
		text-align: center;
		font-size: 1.6rem;
	}

	/* 製品についてもっと詳しく */
	.lineup-sub-title {
		margin-top: 4rem;
		font-size: 1.8rem;
	}

	ul.list-lineup-more {
		display: flex;
		flex-wrap: wrap;
		margin-top: 1em;
	}

	ul.list-lineup-more li {
		width: 24%;
		margin-top: 1rem;
		margin-left: 1%;
	}

	ul.list-lineup-more li:nth-child(-n+4) {
		margin-top: 0;
	}

	ul.list-lineup-more li:nth-child(4n-3) {
		margin-left: 0;
	}

	ul.list-lineup-more li a {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 100%;
		padding: 6% 6% 6% 40%;
		background-repeat: no-repeat;
		background-position: left 18% center;
		background-size: 18% auto;
	}

	ul.list-lineup-more li a:hover {
		background-color: #e5e5e5;
		text-decoration: none;
	}


	ul.list-lineup-more li a .ttl {
		font-size: 1.6rem;
		text-align: center;
	}

	/* 製品のサポート・ご購入 */
	#support .products-sub-title {
		padding-top: 0;
		border-top: none;
	}

	ul.list-main-support {
		display: flex;
		justify-content: space-between;
		margin-top: 5rem;
	}

	ul.list-main-support li {
		width: 31%;
	}

	ul.list-main-support li a {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 100%;
		padding: 10% 10% 10% 35%;
		background-repeat: no-repeat;
		background-position: left 18% center;
		background-size: 20% auto;
		border: solid 1px #D9D9D9;
		font-size: 1.8rem;
	}

	ul.list-main-support li a:hover {
		background-color: #e5e5e5;
		text-decoration: none;
	}

	ul.list-main-support li a .ttl {
		text-align: center;
	}

	ul.list-main-support li a .ttl .small {
		font-size: 0.8em;
	}

	ul.list-support {
		display: flex;
		flex-wrap: wrap;
	}

	ul.list-support li {
		width: 31%;
		margin-left: 3.5%;
		margin-top: 3rem;
	}

	ul.list-support li:nth-child(3n-2) {
		margin-left: 0;
	}

	ul.list-support li a {
		display: flex;
		align-items: center;
		height: 100%;
		padding: 1em 1em 1em 2em;
		border: solid 1px #D9D9D9;
		position: relative;
	}

	ul.list-support li a:hover {
		background: #e5e5e5;
		text-decoration: none;
	}

	ul.list-support li a::before {
		content: '';
		display: inline-block;
		width: 12px;
		height: 14px;
		background: url(/products/common/images/chevron-right-solid.svg) no-repeat center center;
		background-size: auto 100%;
		position: absolute;
		top: 50%;
		left: 0.75em;
		margin-top: -0.5em;
	}

	/* キャンペーン */
	#campaign {
		padding-bottom: 2rem;
	}

	#campaign .sub-title-container {
		padding-top: 5rem;
		border-top: solid 1px #d9d9d9;
	}

	#campaign .flex-container {
		margin-top: 5rem;
	}

	#campaign .flex-item {
		width: 31%;
		margin-top: 2rem;
		margin-left: 3.5%;
		font-size: 1.5rem;
	}

	#campaign .flex-item:nth-of-type(3n-2) {
		margin-left: 0;
	}

	#campaign .flex-item:nth-of-type(-n+3) {
		margin-top: 0;
	}

	#campaign .flex-item .ttl {
		margin-top: 0.5em;
		font-size: 1.6rem;
	}

	#campaign .flex-item .text {
		margin-top: 0.2em;
	}

	#campaign .flex-item .text-small {
		font-size: 0.9em;
	}

	/* ピックアップコンテンツ */
	#pickup .products-sub-title {
		padding-top: 5rem;
		border-top: solid 1px #d9d9d9;
	}

	#pickup .flex-container {
		margin-top: 5rem;
	}

	#pickup .flex-container {
		font-size: 1.5rem;
	}

	#pickup .flex-container>.flex-item {
		width: 31%;
		margin-left: 3.5%;
		margin-top: 4rem;
	}

	#pickup .flex-container>.flex-item:nth-of-type(3n-2) {
		margin-left: 0;
	}

	#pickup .flex-container>.flex-item:nth-of-type(-n+3) {
		margin-top: 0;
	}

	#pickup .flex-item .ttl {
		margin-top: 0.5em;
		font-size: 1.6rem;
	}

	#pickup .flex-item .text {
		margin-top: 0.5em;
		font-size: 1.4rem;
	}

	#pickup .flex-item .category {
		margin-top: 0.5em;
		font-size: 1.2rem;
	}

	#pickupMore {
		margin-top: 5rem;
		font-size: 1.8rem;
	}

	/* 新着情報 */
	ul.list-news {
		margin-top: 4rem;
	}

	ul.list-news a:hover {
		text-decoration: none;
	}

	ul.list-news li {
		padding-top: 1em;
		display: none;
	}

	ul.list-news li:nth-child(-n + 12) {
		display: table;
	}

	ul.list-news li:first-child {
		padding-top: 0;
	}

	ul.list-news li .date {
		display: table-cell;
		width: 8em;
		font-size: 1.4rem;
	}

	ul.list-news li .text {
		display: table-cell;
		padding-left: 2em;
		font-size: 1.4rem;
	}

	/* 外部リンクバナー */
	#outerLinks ul {
		display: flex;
		flex-wrap: wrap;
	}

	#outerLinks ul li {
		margin-right: 1%;
		margin-bottom: 1rem;
	}

	/* jp.sharpフッター */
	#productsPageFooterNavi {
		display: flex;
		justify-content: space-between;
		padding: 3rem 5%;
		color: #535353;
		border-top: solid 1px #A0A0A0;
	}

	.products-page-footer-navi-item {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		width: 50%;
	}

	.products-page-footer-navi-item:first-of-type {
		border-right: solid 1px #A0A0A0;
	}

	.products-page-footer-navi-ttl {
		width: 100%;
		text-align: center;
	}

	.products-page-footer-navi-item a .ttl {
		padding-left: 0.5em;
		font-size: 2rem;
	}

	ul.list-sns {
		display: flex;
		justify-content: center;
		width: 100%;
		margin-top: 1em;
	}

	ul.list-sns li {
		display: flex;
		margin-left: 2%;
	}

	ul.list-sns li:first-child {
		margin-left: 0;
	}

	ul.list-sns li a {
		display: flex;
		justify-content: center;
		align-items: center;
		max-width: 5rem;
		height: 100%;
		padding: 10%;
	}

	.products-page-footer-navi-item .link {
		display: flex;
		justify-content: center;
		align-items: center;
	}

	.products-page-footer-navi-item .link a {
		display: flex;
		justify-content: center;
		align-items: center;
		height: 100%;
		padding: 0.5em 1em;
		background: #fff;
	}

	.products-page-footer-navi-item .link a .img {
		width: 4.5rem;
	}

	/* ポップアップ */
	.lineup-popup .result {
		padding: 3rem 3rem 5rem;
	}

	.lineup-popup .result .ttl {
		margin-bottom: 3rem;
		font-size: 2rem;
	}

	.lineup-popup ul.list-lineup-item li {
		width: 152px;
		margin-bottom: 20px;
	}

	.lineup-popup ul.list-lineup-item li a {
		font-size: 1.4rem;
		line-height: 1.3;
	}
}

/* ====================================
	タブレット専用スタイル
===================================== */
@media screen and (min-width: 768px) and (max-width: 1079px) {
	ul.list-lineup-more li a {
		padding: 8% 5% 8% 34%;
		background-position: left 11% center;
		background-size: 22% auto;
	}

	ul.list-service li a {
		padding: 50% 10% 5% 10%;
		background-position: top 15% center;
		background-size: 35% auto;
	}

	ul.list-main-support li a {
		padding: 10% 5% 10% 28%;
		background-position: left 9% center;
		background-size: 18% auto;
	}

	/* 外部リンクバナー */
	#outerLinks ul li {
		max-width: 24%;
		margin-right: 1%;
	}

	#outerLinks ul li a {
		display: block;
		width: 100%;
	}
}

/* ====================================
	PC専用スタイル
===================================== */
@media print,
screen and (min-width: 1080px) {

	/* ピックアップコンテンツ */
	#pickup {
		padding-bottom: 6rem;
	}
}

/* ====================================
	大画面PC専用スタイル
===================================== */
@media screen and (min-width: 1200px) {
	#mainVisual {
		padding-top: 20px;
	}

	.lineup-popup ul.list-lineup-item {
		max-width: 840px;
	}

	.lineup-popup ul.list-lineup-item li {
		width: 20%;
	}
}

/* ====================================
	IE印刷専用スタイル
===================================== */
@media print and (-ms-high-contrast: none) {}