@charset "UTF-8";

/* 共通 */
html {
	min-height: 100%;
	position: relative;
}

body {
	font-family: "ヒラギノ角ゴ ProN W3", メイリオ, Meiryo, HiraKakuProN-W3, 游ゴシック, "Yu Gothic", Verdana, Helvetica, Arial, sans-serif;
	line-height: normal;
	font-size: 90%;
	margin: 95px 0px 300px 0px;
	padding: 0 10px;
	background-color: #fff;
}

a {
	color: #007cde;
	text-decoration: underline;
}

a:hover {
	text-decoration: none;
}

a[href^="https://youtu.be/"] {
	background: url(../images/yt.png) no-repeat left center;
	padding-left: 19px;
}

a:hover img {
	opacity: 0.6;
	transition: opacity 0.3s ease;
	text-decoration: none;
}

h1 {
	font-size: 170%;
	margin: 10px 0 15px 0;
}

h2 {
	color: #FE6A00;
	font-size: 150%;
}

h2 a {
	color: inherit;
	text-decoration: underline;
}

h3 {
	width: 100%;
	background-color: #eaeaea;
	padding: 5px 5px 5px 15px;
	position: relative;
	margin-bottom: 10px;
}

h3::before {
	content: '';
	position: absolute;
	left: 5px;
	top: 5px;
	bottom: 5px;
	width: 6px;
	background-color: #ff6600;
}

h4 {
	width: 100%;
	color: #FE6A00;
	font-size: 110%;
	border-bottom: 1px solid #ff6600;
	margin-bottom: 0.5em;
}

.img {
	max-width: 100%;
}

.right {
	text-align: right;
}

.center {
	text-align: center;
}

p {
	margin: 1em 0;
}

.memo {
	font-size: 80%;
}


li {
	margin-left: 2em;
	line-height: 1.5em;
}

ul ul li {
	list-style-type: square;
}

ul.number {
	list-style-type: decimal;
}

a[target="_blank"]:not(.no-ex-icon):not(:has(img)) {
	background-image: url('../images/external_link.png');
	background-position: left center;
	background-size: 20px 15px;
	padding-left: 23px;
}

a[href^="https://youtu.be/"] {
	background: url('../images/yt.png') no-repeat left center;
	padding-left: 19px;
}

.link_icon {
	background-image: url('../images/menu/point1.png');
	background-position: left center;
	background-size: 14px 12px;
	padding-left: 19px;
}

.down-link {
	background-image: url('../images/down_link.png');
	background-position: left center;
	background-size: 15px 15px;
	padding-left: 19px;
	margin-right: 15px;
	font-weight: bold;
}

.pagetop-down-link {
	border: solid 1px #ffa530;
	background-color: #fef1e1;
	padding: 10px;
	margin-bottom: 10px;
}

.yen {
	font-size: 60%;
	font-weight: normal;
	margin-right: 2px;
	vertical-align: 0.4em;
}

.taxInclusiveText {
	font-size: 60%;
	font-weight: normal;
	margin-left: 2px;
}

/* main */
main {
	align-items: center;
	justify-content: center;
	width: 100%;
	display: flex;
	/* margin-bottom: 20px; */
	/* padding: 0 100px 10px 100px; */
	margin: 0 auto 20px auto;
	max-width: 1300px;
	min-width: 1004px;
}

.middle_area {
	/* 複数分割(サイトトップ) */
	display: flex;
	justify-content: space-between;
	max-width: 1300px;
	min-width: 1004px;
	flex-grow: 1;
}

.main_area {
	/* 2分割の右側 */
	flex-grow: 1;
	min-width: 734px;
	margin: 0px 0px auto 20px;
	max-height: 100%;
	text-align: left;
}

.contents {
	/* 左右分けなし */
	max-width: 1300px;
	min-width: 1004px;
	margin: 0 auto;
	max-height: 100%;
}

/* header */
header {
	position: fixed;
	z-index: 99;
	top: 0;
	left: 0;
	padding: 10px 100px 10px 100px;
	width: 100%;
	display: flex;
	justify-content: center;
	background-color: #fff;
	border-bottom: 0.5px solid #c6c6c6;
}

.header_area {
	max-width: 1004px;
	min-width: 1004px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.logo {
	vertical-align: middle;
	height: 68px;
}

.logo img {
	vertical-align: middle;
	height: 100%;
	width: auto;
}

.header-middle {
	align-items: center;
	flex-direction: column;
	flex-wrap: nowrap;
	justify-content: center;
	padding: 0px;
}

.header-middle-top {
	display: flex;
	align-items: center;
	justify-content: center;
	font-weight: bold;
}

.header-middle-bottom {}

.header-middle-bottom span {}

.search-form {
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 5px;
}

.search-container {
	display: flex;
	align-items: center;
	border: 1px solid #adadade2;
	border-radius: 5px;
	overflow: hidden;
	width: 100%;
	max-width: 600px;
}

.search-select {
	border: none;
	padding: 5px 10px;
	background: #fff;
	cursor: pointer;
	border-right: 1px solid #adadade2;
	border-radius: 0;
}

.search-input {
	border: none;
	padding: 5px;
	flex: 1;
}

.search-input:focus {
	outline: none;
}

.search-button {
	background: #007cde;
	color: #fff;
	border: none;
	padding: 5px 10px;
	cursor: pointer;
}

.search-button:hover {
	opacity: 0.6;
	transition: opacity 0.3s ease;
}

.promo-message {
	font-size: 110%;
	text-align: center;
	padding: 5px;
	background-color: #C81312;
	font-weight: bold;
	color: #fff;
	box-shadow: 5px 5px 0 #ffb000;
	width: 1004px;
	margin: 0 auto 15px auto;
}

.promo-message span {
	color: #C81312;
	margin: 0 0.05em;
	display: inline-block;
	width: 1.5em;
	background-color: #fff;
}


.header_cart {
	height: 33px;
	width: auto;
}

.sns-icon {
	height: 17px;
	width: auto;
	margin: 0 10px 0 0;
	vertical-align: middle;
	text-decoration: none;
}

.searchArea {
	margin: 0 10px;
	width: 200px;
	height: auto;
}

.gsc-control-cse {
	padding: 0 !important;
}

.image_link_over img {
	transition: 0.2s;
}

/* side menu */
.side_menu {
	width: 250px;
	float: left;
}

.side_menu_banner {
	width: 250px;
	height: auto;
	margin-bottom: 5px;
}

.menu_title {
	width: 100%;
	background-color: #eaeaea;
	font-weight: bold;
	margin-top: 10px;
	padding: 5px 5px 5px 17px;
	position: relative;
}

.menu_title::before {
	content: '';
	position: absolute;
	left: 5px;
	top: 5px;
	bottom: 5px;
	width: 6px;
	background-color: #ff6600;
}

.side-menu-li {
	margin-left: 0em;
	line-height: 2em;
}

.side-menu-MenuCategory {
	list-style: url(../images/menu/point1.png);
	list-style-position: inside;
	padding: 7px 0px 0px 2px;
}

.side-menu-MenuSub {
	list-style: url(../images/menu/point2.png);
	list-style-position: inside;
	padding-left: 1.5em;
}

/* page top*/
#page_top {
	width: 50px;
	height: 50px;
	position: fixed;
	right: 30px;
	bottom: -60px;
	border-radius: 50%;
	z-index: 900;
}

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

#page_top a::before {
	position: absolute;
	width: 50px;
	height: 50px;
	top: 0px;
	bottom: 0;
	right: 30px;
	left: 0;
	margin: auto;
	text-align: center;
}

/* footer */
footer {
	background-color: #007cde;
	color: #fff;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 270px;
	z-index: 100;
}

.footer_area {
	display: flex;
	justify-content: center;
	padding: 15px 0;
	z-index: 100;
}

.bottom_info {
	width: 700px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	z-index: 100;
}

footer a {
	color: #fff;
	text-decoration: underline;
}

footer a:hover {
	text-decoration: none;
}

.copyright {
	font-size: 80%;
	text-align: center;
	padding: 10px 0px;
}

/* table */
table.container {
	border: 1px solid #c6c6c6;
	border-collapse: collapse;
}

table.container th {
	border: #c6c6c6 solid;
	border-width: 0 0 1px 1px;
	background: #666;
	color: #FFF;
	text-align: right;
	padding: 10px;
}

table.container td {
	padding: 10px;
	border: 1px #c6c6c6 solid;
	border-width: 0 0 1px 1px;
	text-align: left;
}

/* input */
textarea,
input,
select {
	border: 1px solid #c6c6c6;
	background-color: #FFFFFF;
	color: #333333;
	padding: 5px;
	border-radius: 3px;
}

textarea[readonly],
input[readonly] {
	color: gray;
}

/* テキスト */
.notice {
	color: #FE6A00;
	font-weight: bold;
}

.notice2 {
	color: #007bff;
	font-weight: bold;
}

.notice3 {
	color: #db002c;
	font-weight: bold;
}

.highlight {
	background-color: #007bff;
	color: #fff;
	padding: 5px;
	font-weight: bold;
	border: 7px double #fff;
}

.highlight2 {
	background-color: #db002c;
	color: #fff;
	padding: 5px;
	font-weight: bold;
	border: 7px double #fff;
}

.bold {
	font-weight: bold;
}

.underline {
	text-decoration: underline;
}

del.price {
	background-image: linear-gradient(#e70000, #e70000);
	background-position: 0 50%;
	background-size: 100% 3px;
	background-repeat: repeat-x;
	text-decoration: none;
	font-size: 100%;
}

.highlighter {
	background: linear-gradient(transparent 50%, #f6ff00 50%);
	padding: 0 0.1em;
}

.price {
	color: #ce0000;
	font-size: 150%;
	font-weight: bold;
}

.spacing {
	margin: 1em 0;
}

.spacing-top {
	margin-top: 1em;
}

.spacing-bottom {
	margin-bottom: 1em;
}

/* 画像 img */
.img-middle {
	vertical-align: middle;
}

.icons {
	width: 150px;
	height: auto;
	margin: 0 3px 0 0;
}

.weekend_sale_icons {
	min-width: 250px;
	max-width: 250px;
	height: auto;
	margin: 0 3px 0 0;
}

.grid-icons {
	width: 100%;
	height: auto;
	margin: 3px 0 0 0;
}

.addtocart_icon {
	width: 180px;
	height: auto;
	margin-bottom: 10px;
}

/* プルダウン */
select {
	padding: 8px;
	border: 1px solid #c6c6c6;
	border-radius: 4px;
	max-width: 220px;
}

/* オプションのスタイル */
option {
	padding: 8px;
	font-size: 14px;
}

/* オンラインページ */

/* パンくずリンク */
.breadcrumb {
	border: 1px solid #c6c6c6;
	margin-bottom: 10px;
	padding: 5px 10px;
}

.sns-share-area {
	width: 100%;
	display: flex;
	justify-content: space-between;
}

.sns-top-share-area {
	display: flex;
}

.sns-top-share-area img {
	margin: 0 8px;
}

.sns-share-icon {
	height: 25px;
	width: auto;
}

/* プルダウンエリア */
.online_pulldown {
	float: left;
}

/* カートページ */
.inquiry-area {
	padding-left: 20px;
	float: right;
	text-align: right;
}

.cart-img-area,
.img_area {
	width: 200px;
	height: 200px;
	align-items: center;
	justify-content: center;
	display: flex;
}

/* お問い合わせに進むボタンのスタイル */
.cart-button {
	text-align: center;
	background-color: #FFD812;
	color: #000;
	text-decoration: none;
	border: none;
	border-radius: 5px;
	/* 角を丸くする */
	cursor: pointer;
	/* マウスオーバー時の変化をアニメーション化 */
	transition: opacity 0.2s ease;
}

/* マウスオーバー時のスタイル変更 */
.cart-button:hover {
	opacity: 0.6;
	/* マウスオーバー時の透明度を変更 */
}

.cart-button.disabled {
	background-color: #ddd;
	/* 非アクティブ時の背景色 */
	color: #666;
	/* 非アクティブ時の文字色 */
	cursor: not-allowed;
	/* マウスカーソルを変更してクリックを無効にする */
	pointer-events: none;
	/* マウスイベントを無効にする */
}

.cart-quantity-update-button {
	margin-left: 5px;
	padding: 5px;
	background-color: #FFD812;
	font-size: 0.8em;
}

.inquiry-button {
	display: block;
	font-weight: bold;
	width: 250px;
	padding: 15px;
}

.cart-list {
	clear: both;
	/* floatを解除 */
}

.cart_item {
	min-width: 600px;
}

.cart-text-content {
	flex-grow: 1;
	padding-left: 20px;
	min-height: 100px;
	text-align: left;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
}

.cart-notes textarea {
	width: 100%;
	box-sizing: border-box;
	resize: vertical;
	/* 垂直方向のリサイズを許可 */
}

.cart-quantity {
	width: 150px;
}

.cart-quantity-select {
	width: 3em;
}

.cart-add-message {
	height: 1.5em;
}

.cart-quantity-form {
	display: inline;
}

.cart-quantity,
.cart-delete {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-right: 15px;
}

.inquiry-form-bottun button {
	border-radius: 5px;
	/* 角の丸みを指定 */
	padding: 5px 10px;
	/* ボタンの内側の余白を指定 */
	margin-right: 20px;
	background-color: #007cde;
	/* ボタンの背景色を指定 */
	color: white;
	/* ボタンのテキスト色を指定 */
	cursor: pointer;
	/* マウスカーソルの形状を指定 */
	font-size: 16px;
	/* ボタンのテキストのフォントサイズを指定 */
	font-weight: bold;
	text-decoration: none;
}

.wide-blue-button {
	border-radius: 5px;
	padding: 5px 10px;
	background-color: #007cde;
	color: white;
	cursor: pointer;
	width: 100%;
	font-weight: bold;
	text-decoration: none;
	margin-bottom: 1em;
	text-align: center;
}

.wide-blue-button:hover {
	opacity: 0.6;
	transition: opacity 0.3s ease;
}

.wide-white-button {
	border-radius: 5px;
	padding: 5px 10px;
	background-color: white;
	border: 2px solid #007cde;
	color: #007cde;
	cursor: pointer;
	font-weight: bold;
	text-decoration: none;
	margin-bottom: 1em;
	text-align: center;
}

/* online */

.submit_button {
	background-color: #007cde;
	/* ボタンの背景色 */
	border: none;
	/* ボーダーを無くす */
	color: white;
	/* テキストの色 */
	padding: 5px 10px;
	/* ボタンの内側の余白 */
	text-align: center;
	/* テキストの中央寄せ */
	text-decoration: none;
	/* テキストの下線を無くす */
	display: inline-block;
	/* インラインブロックにする */
	border-radius: 5px;
	/* 角を丸くする */
}

/* 表示タイプgrid */
.grid-item-container {
	margin-top: 10px;
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	justify-content: flex-start;
}

.grid-item {
	width: calc(25% - 10px);
	margin: 0;
	padding: 10px;
	border: 1px solid #c6c6c6;
	border-radius: 5px;
	background-color: #fff;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	box-sizing: border-box;
}

.grid-item a {
	display: flex;
	flex-direction: column;
	text-decoration: none;
	color: inherit;
	height: 100%;
}

a.grid-item-sale-icon {
	height: auto;
}

.grid-item-text {
	word-wrap: break-word;
	display: flex;
	flex-direction: column;
}

.grid-price {
	color: #ce0000;
	font-size: 140%;
	font-weight: bold;
	margin-top: auto;
}

.grid-no-price {
	font-size: 80%;
}

.grid-no-price-sold-out {
	font-size: 90%;
	color: #666;
}

.grid-item:hover {
	background-color: #daebff;
}

.grid-item img {
	object-fit: contain;
}

.grid-item-img-area {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	width: 100%;
	height: 200px;
}

.grid-item-img-area img {
	width: 100%;
	height: auto;
	max-height: 190px;
	display: block;
	margin: 0 auto;
}

.grid-explanation {
	line-clamp: 3;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
	overflow: hidden;
}


.grid-add-to-cart-button img,
.grid-sold-out-button img {
	height: 35px;
	width: 100%;
	object-fit: contain;
}

.grid-add-to-cart-button,
.grid-sold-out-button {
	border-radius: 5px;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-top: 5px;
}

.grid-add-to-cart-button {
	background-color: #FFD812;
}

.grid-sold-out-button {
	background-color: #DDDDDD;
}

.grid-add-to-cart-button form,
.grid-add-to-cart-button img,
.grid-sold-out-button img {
	display: flex;
	width: 100%;
}



/* 表示タイプlist */
.item {
	display: flex;
	padding: 10px;
	margin: 10px 0px 10px 0px;
	border: 1px solid #c6c6c6;
	border-radius: 5px;
	background-color: #fff;
	word-wrap: break-word;
}

.item img {
	object-fit: contain;
	max-width: 200px;
	max-height: 200px;
}


.item-img-area {
	display: flex;
	flex-direction: column;
	/* 縦方向に並べる */
	justify-content: flex-start;
	/* 上寄せ */
	align-items: center;
	/* 左右中央に配置 */
	min-width: 200px;
	max-width: 200px;
}

.item-img-area img {
	margin: 5px 0;
	max-width: 100%;
	min-height: 100px;
}

.text-content {
	flex-grow: 1;
	padding-left: 10px;
	box-sizing: border-box;
	word-break: break-all;
}

.condition-area {
	padding: 5px 0;
	margin: 0.5em 0;
}

.accessories-area {
	background-color: #d9eaf8;
	padding: 5px;
	margin: 1em 0;
}

.online-detail-button {
	text-align: center;
	background-color: #007cde;
	color: #fff;
	padding: 6px;
	margin-right: 3px;
	text-decoration: none;
	border-radius: 5px;
	cursor: pointer;
	transition: opacity 0.2s ease;
	font-weight: bold;
}

.grade {
	text-align: center;
	background-color: #747474;
	color: #fff;
	padding: 7px;
	margin-right: 3px;
	font-weight: bold;
}

.top-mark-area {
	margin-bottom: 10px;
}

.manufacturer {
	font-size: 120%;
	font-weight: bold;
}

.grid-manufacturer {
	font-size: 100%;
	font-weight: bold;
}

.grid-model-number {
	font-size: 110%;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

.id-text {
	color: #666;
	font-size: 90%;
	padding-left: 5px;
}

/* 1行に4つずつ表示 */
.product-container {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
}

.product-item {
	flex: 1 1 calc(25% - 20px);
	box-sizing: border-box;
}

.list-view .product-item {
	flex: 1 1 100%;
}

/* フィルターエリア */
.filter-area {
	padding: 10px 10px;
	font-weight: bold;
	background-color: #FE6A00;
	color: #ffffff;
	text-decoration: none;
	border-radius: 5px;
}

/* カートボタンエリア */
.add-to-cart-button-container {
	max-width: 180px;
	min-width: 180px;
	text-align: center;
}

/* .online-detail-button にマウスが重なったときのスタイル */
.online-detail-button:hover {
	opacity: 0.6;
	transition: opacity 0.2s ease;
}

/* .feature-link-image にマウスが重なったときのスタイル */
.feature-link-image:hover {
	opacity: 0.6;
	transition: opacity 0.2s ease;
}

/* .online-productlink-button にマウスが重なったときのスタイル */
.online-productlink-button:hover {
	opacity: 0.6;
	transition: opacity 0.2s ease;
}

.online-productlink-button {
	text-align: center;
	font-size: 85%;
	color: #007cde;
	border: 2px solid #007cde;
	padding: 3px 6px 3px 20px;
	text-decoration: none;
	border-radius: 5px;
	cursor: pointer;
	transition: opacity 0.2s ease;
	font-weight: bold;
	background-image: url('../images/new_window_anc.png');
	background-position: left center;
	background-repeat: no-repeat;
	background-size: 20px;
}

/* ページネーション */
.pagination {
	margin-top: 20px;
}

.pagination-link,
.pagenation-no-link {
	padding: 7px;
	margin: 10px 5px;
	font-size: 120%;
}

.pagination-link {
	border: solid 2px #007cde;
	background-color: #007cde;
	color: #fff;
	font-weight: bold;
}

.pagenation-no-link {
	border: solid 2px #007cde;
	color: #007cde;
	font-weight: bold;
	cursor: default;
}

/* ボタンに下線を追加 */
button[type="submit"] {
	cursor: pointer;
	transition: text-decoration 0.2s ease;
	/* マウスオーバー時の変化をアニメーション化 */
}

/* マウスオーバー時のスタイル変更 */
button[type="submit"]:hover {
	opacity: 0.6;
}

/* メールフォーム */
#submitButton {
	width: 80%;
	display: block;
	padding: 10px;
	box-sizing: border-box;
}

/* 中古品確認用テキスト */
.used-purchase-text-area {
	max-height: 0;
	overflow: hidden;
	transition: max-height 0.5s ease;
}

/* 会社概要 */
table.cp {
	width: 800px;
}

th.cp {
	width: 16em;
}

th.cpw {
	width: 6em;
}

/* Youtube, Googlemap サイズ */
iframe,
lite-youtube {
	width: 640px;
	height: 360px;
}

.noScriptArea {
	margin: 10px 0;
	background-color: #ce0000;
	color: #FFF;
	padding: 10px;
	font-size: 150%;
	font-weight: bold;
	width: 80%;
	text-align: center;
}

/* 画像読み込み遅延 */
.spinner {
	width: 30px;
	height: 30px;
	border: 4px solid #ccc;
	border-top: 4px solid #333;
	border-radius: 50%;
	animation: spin 1s linear infinite;
	margin: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

.lazy-container {
	position: relative;
	min-height: 150px;
}

.lazy-img {
	opacity: 0;
	transition: opacity 0.3s ease-in;
	width: 100%;
	height: auto;
	display: block;
}

.lazy-img.loaded {
	opacity: 1;
}