@CHARSET "UTF-8";

/* ===== login.css ===== */
/*---------------------------------------------------------------------------*/
/*ログイン画面*/
#login {
	position: absolute;
	display: none;
	z-index: 86;
	opacity: 1.0;
	top: 36px;
	left: 0%;
	width: 100%;
	height: auto;
}
#login .inner {
	position: relative;
	display: block;
	margin: 0 auto;
	width: auto;
	height: auto;
	min-width: 350px;
	max-width: 400px;
	border: solid 2px #BBB;
	background: #f7f7f7;
}
#login .bt_close {
	position: absolute;
	z-index: 87;
	top: 0px;
	right: 0px;
	margin: 0;
	padding: 0;
	font-size: 30px;
	text-align: center;
	line-height: 1.0;
	width: 34px;
	height: 34px;
	background: transparent;
	cursor: pointer;
}
#login .tx_title {
	position: relative;
	margin: 0;
	padding: 5px 0 0 20px;
	width: 100%;
	font-family: -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-size: 24px; /* 文字サイズ */
	background: transparent;
}
#login .tx_title::after {
	content: "";
	clear: both;
	display: block;
}
/*-------------------------------------*/
/* 入力フォーム */
#login form {
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	min-height: 300px;
	background: #f7f7f7;
	overflow:hidden;
}
#login form::after {
	content: "";
	clear: both;
	display: block;
}
/*-------------------------------------*/
/* 入力ブロック */
#login .login_block {
	position: relative;
	clear: both;
	margin: 0;
	padding: 10px;
	width: 100%;
	background: transparent;
}
#login .login_block::after {
	content: "";
	clear: both;
	display: block;
}
#login .login_block .login_form {
	position: relative;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	flex-wrap: nowrap;
	margin: 0;
	padding: 5px 0;
	font-family: -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-size: 16px; /* 文字サイズ */
	width: 100%;
	background: transparent;
}
#login .login_block .login_form h3 {
	flex: 1 1 140px;
	padding: 5px;
	text-align: right;
	font-size: 16px;
	overflow-wrap: break-word;
	color: #333; /* 文字色 */
}
#login .login_block .login_form div {
	flex: 2 1 200px;
	padding: 3px;
	font-size: 16px;
	overflow-wrap: break-word;
	min-width: 0;
}
/*-------------------------------------*/
/* 入力フォーム */
.login_form input[type="text"],
.login_form input[type="password"],
.login_form input[type="email"]
{
	margin: 0;
	padding: 5px;
	width: 95%;
	max-width: 260px;
	font-family: -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-size: 16px;
	line-height: 1.5;
	overflow-wrap: break-word;
	border: solid 1px #BBB;
	border-radius: 5px;
	box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.2);
	background: #fafafa;
	ime-mode: inactive;
}
/* 入力の際に、枠を表示する */
.login_form input[type="text"]:focus,
.login_form input[type="password"]:focus,
.login_form input[type="email"]:focus
{
	border: 1px solid #777;
}
/*-------------------------------------*/
/* ボタンブロック */
#login .login_block .login_commit {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: center;
	flex-wrap: nowrap;
	margin: 0;
	padding: 0;
	font-family: -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-size: 16px; /* 文字サイズ */
	line-height: 1.5;
	width: 100%;
	background: transparent;
}
#login .login_block .login_commit div {
	flex: 1 1 100%;
	margin: 0;
	padding: 5px 20px;
	text-align: center;
}
#login .login_block .login_commit div span {
	display: inline-block;
	width:100%;
	margin: 0;
	padding: 0;
	text-align: left;
	font-family: -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-size: 14px; /* 文字サイズ */
	line-height: 1.5;
	color: #333; /* 文字色 */
	overflow-wrap: break-word;
}
/*-------------------------------------*/
/* チェックボックス */
.login_commit input[type="checkbox"] {
	display: inline-block;
	padding: 5px;
	font-size: 16px;
}
.login_commit label {
	display: inline-block;
	padding: 5px;
	font-size: 16px;
	line-height: 1.0;
	overflow-wrap: break-word;
	color: #333; /* 文字色 */
}
/*-------------------------------------*/
/* カスタムチェックボックス */
.login_commit input[type="checkbox"]{
    display: none;
}
.login_commit input[type="checkbox"]+label{
    display: inline-block;
    position: relative;
    padding-left: 26px;
    cursor: pointer;
}
.login_commit input[type="checkbox"]+label::before{
    content: "";
    display: block;
    position: absolute;
    top: 2px;
    left: 0;
    width: 18px;
    height: 18px;
    border: 1px solid #888;
    background-color: #fafafa;
}
.login_commit input[type="checkbox"]:checked+label::after{
    content: "";
    display: block;
    position: absolute;
    top: 5px;
    left: 3px;
    width: 12px;
    height: 6px;
    transform: rotate(-50deg);
    border-bottom: 3px solid;
    border-left: 3px solid;
    border-color:  #333;
}
/*-------------------------------------*/
/* ボタン */
.login_commit .bt_commit {
	margin: 0 10px;
	font-size: 16px;
	line-height: 1.5;
	width: 200px;
	height: 38px;
	background: #57E;
	color: #FFF;
	outline: none;
	-webkit-appearance: none;
	appearance: none;
}
.login_commit .bt_commit:hover {
	background: #68F;
	color: #FFF;
}
.login_commit .bt_commit:disabled {
	background: #AAA;
	color: #DDD;
}
/*-------------------------------------*/
/* フッター */
#login .tx_footer {
	position: relative;
	margin: 0 0 10px 0;
	padding: 5px;
	width: 100%;
	height: 36px;
	font-size: 14px; /* 文字サイズ */
	font-family: -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	text-align: center;
	line-height: 1.5;
	overflow-wrap: break-word;
	background: transparent;
}
#login .tx_footer::after {
	content: "";
	clear: both;
	display: block;
}
/*=====================================*/
/* END */

/* ===== menus.css ===== */
/*---------------------------------------------------------------------------*/
/* サイドメニュー */
.main_block .page_side {
	position: relative;
	margin: 0;
	padding: 0;
	background: transparent;
	border: none;
}
.main_block .page_side:after {
	content: "";
	clear: both;
	display: block;
}
/*-------------------------------------*/
/* サイドメニュー内容 */
.page_side .side_block {
	position: relative;
	display: flex;
	flex-direction: row;
	justify-content: center; /* ブロックのセンタリング */
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
}
/*-------------------------------------*/
.page_side .side_main {
	position: relative;
	width: 100%;
	max-width: 900px;
	margin: 0;
	padding: 0;
	margin-top: 20px;
	overflow: hidden;
}
@media screen and (max-width: 1080px) {
	.page_side .side_main {
		max-width: 800px;
	}
}
@media screen and (max-width: 800px) {
	.page_side .side_main {
		max-width: 350px;
		margin-top: 10px;
	}
}
.side_block .side_main .category {
	position: relative;
	display: flex;
	flex-direction: row;
	justify-content: center;
	flex-wrap: wrap;
	width: 100%;
	min-width: 340px;
	margin: 0;
	padding: 5px;
	border: solid 1px #008080;
	border-radius: 5px;
	box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.2);
}
.side_block .side_main .category {
	display: flex;
	flex-wrap: wrap;
	gap: 3px 5px;
}
.side_block .side_main span { /* チェックボックスのセル */
	position: relative;
	display: block;
	width: fit-content;
	min-width: 60px;
	margin: 0;
	padding: 0 5px;
	font-family: -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-size: 15px;
	letter-spacing: -0.5px;
	line-height: 2.0;
	text-align: left;
	background: transparent;
}
/*-------------------------------------*/
/* カスタムチェックボックス */
.category label {
	display: inline-block;
	margin: 0;
	padding: 4px 0 0 0;
	font-family: -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-size: 15px;
	line-height: 1.0;
	color: #333;
}
.category input[type="checkbox"]{
    display: none;
}
.category input[type="checkbox"]+label{
    display: inline-block;
    position: relative;
    padding-left: 26px;
    cursor: pointer;
}
.category input[type="checkbox"]+label::before{
    content: "";
    display: block;
    position: absolute;
    top: 2px;
    left: 0;
    width: 18px;
    height: 18px;
    border: 1px solid #888;
    background-color: #fafafa;
}
.category input[type="checkbox"]:checked+label::after{
    content: "";
    display: block;
    position: absolute;
    top: 5px;
    left: 3px;
    width: 12px;
    height: 6px;
    transform: rotate(-50deg);
    border-bottom: 3px solid;
    border-left: 3px solid;
    border-color:  #333;
}
/*-------------------------------------*/
/* カスタムチェックボックス2 */
.side_block .side_main .category2 {
	position: relative;
	display: flex;
	flex-direction: row;
	justify-content: center;
	flex-wrap: wrap;
	width: 100%;
	min-width: 340px;
	margin: 0;
	padding: 5px 0 0 0;
}
.side_block .side_main .category2 {
	display: flex;
	flex-wrap: wrap;
	gap: 3px 5px;
}
.category2 input[type="checkbox"] {
    display: none;
}
.category2 label {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 0 4px;
  border: 1px solid #e2e8f0;
  border-radius: 5px;
  background-color: #ffffff;
  cursor: pointer;
  transition: all 0.2s ease;
  font-size: 14px;
}
.category2 label:hover {
  background-color: #e2e8f0;
  border-color: #cbd5e1;
}
.category2 input[type="checkbox"]:checked+label {
  background-color: #dbe5f0;
  border-color: #abc5d0;
}
/*=====================================*/
/* END */

/* ===== contents.css ===== */
/*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
/* コンテンツ・リスト表示用枠(共通) */
.items_list,
.contents_list {
	position: relative;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-content: space-around;
	flex-wrap: wrap;
	width: 100%;
	max-width: 1080px;
	margin: 0 auto;
	padding: 0;
}
.items_list::after,
.contents_list::after {
	content: "";
	clear: both;
	display: block;
}
@media screen and (max-width: 1080px) {
	.items_list,
	.contents_list {
		max-width: 900px;
	}
}
@media screen and (max-width: 800px) {
	.items_list,
	.contents_list {
		max-width: 360px;
	}
}
/* グリッド表示 */
.items_list > .inner {
	width: 100%;
	max-width: 1080px;
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(320px, 1fr));
	justify-content: center;
	gap: 8px;
	padding: 0 0 0 5px;
}
/* フレックス表示 */
.contents_list > .inner {
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
}
/*==================================================================*/
/* アイテム表示ブロック */
.img_block {
	position: relative;
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	flex-wrap: wrap;
	margin: 0 0 8px 0;
	padding: 0;
	border: solid 1px #CCC;
}
.img_block::after {
	content: "";
	clear: both;
	display: block;
}
.items_list .img_block {
	width: 340px;
}
.contents_list .img_block {
	width: auto;
}
@media screen and (max-width: 800px) {
	.img_block {
		margin: 0;
		padding: 0;
		width: 100%;
	}
}
/*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
/* カテゴリーアイコン */
.icon {
  width: 22px;
  height: 22px;
  background-image: URL("../img/icon-sprite-sheet.png");
  background-size: 200px 28px;
  display: inline-block;
  vertical-align: middle;
}








.icon-0 { background-position: -8px -4px; }
.icon-1 { background-position: -32px -4px; }
.icon-2 { background-position: -56px -4px; }
.icon-3 { background-position: -79px -4px; }
.icon-4 { background-position: -102px -4px; }
.icon-5 { background-position: -125px -4px; }
.icon-6 { background-position: -149px -4px; }
.icon-7 { background-position: -172px -4px; }
/*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
/* アイテム画像表示・上下中央揃え */
.img_block .img_view {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;  /* 上下中央 */
	flex-wrap: nowrap;
	height: 180px;
	width: 160px;
	margin: 0;
	padding: 5px;
	overflow: hidden;
}
@media screen and (max-width: 800px) {
	.img_block .img_view {
		padding: 0;
		max-height: 180px; /* 高さの上限 */
		max-width: 160px;
	}
}
/*-------------------------------------*/
/* アイテム画像 */
.img_block .img_view img {
	position: relative;
	display: block;
	padding: 0;
	margin: 0 auto;  /* 左右中央 */
	max-height: 160px; /* heightにしない:素材サイズ優先 */
	max-width: 160px; /* widthにしない:素材サイズ優先 */
}
@media screen and (max-width: 800px) {
	.img_block .img_view img {
		max-height: 160px;
		max-width: 160px;
	}
}
/*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
/* アイテム情報表示エリア */
.img_block .info_view {
	position: relative;
	display: flex;
	flex-direction: column;
	justify-content: space-around;
	align-items: center;  /* 上下中央 */
	flex-wrap: nowrap;
	height: auto;
	width: 160px;
	margin: 0 0 0 10px;
	padding: 5px;
	font-family: -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-size: 14px;
	line-height: 1.7;
	overflow: hidden;
}
@media screen and (max-width: 800px) {
	.img_block .info_view {
		max-width: 160px;
		font-size: 13px;
	}
}
/*-------------------------------------*/
/* アイテム情報・マウスオーバ表示 */
a.tooltip {
	position: relative;
	display: inline-block;
	width: 160px;
	min-height: 122px;
	padding: 0;
	margin: 0 auto;
	text-decoration: none;
	background: transparent;
	border: none;
}
a.tooltip:hover {
	text-decoration: none;
	background: transparent;
	border: none;
}
a.tooltip .top_descs {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	padding: 0;
	margin: 0;
	color: #000;
	background: #ffffff;
	opacity: 0;
	transition: opacity .2s;
	border: none;
	overflow: normal;
}
a.tooltip:hover .top_descs {
	opacity: 1.0;
}

/*-------------------------------------*/
/* アイテム情報・デフォルト表示 */
.img_block .info_view .infos {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	margin: 0;
	padding: 0;
	color: #000;
	background: #ffffff;
	flex-wrap: nowrap;
	overflow: normal;
}
.img_block .info_view .infos p {
	font-size: 14px;
}
.img_block .info_view .infos > div {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin: 3px 0 0 0;
}
/*-------------------------------------*/
/* アイテム情報・トップ表示 */
.img_block .info_view .top_infos {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	margin: 0;
	padding: 0;
	color: #000;
	background: #ffffff;
	flex-wrap: nowrap;
	overflow: normal;
}
.img_block .info_view .top_infos p {
	font-size: 14px;
}
.img_block .info_view .top_infos > div {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin: 3px 0 0 0;
}
/*-------------------------------------*/
/* アイテム情報・ボタン表示 */
.img_block .info_view .icons {
	display: flex;
	flex-direction: row;
	justify-content: space-around;
	flex-wrap: nowrap;
	width: 100%;
	margin: 5px 0;
	padding: 0;
}
.img_block .info_view .icons div {
	flex: 1 1 auto;
	text-align: center;
	margin: 0;
	padding: 0;
	background: transparent;
}
.img_block .info_view .icon1 {
	position: absolute;
	bottom: 5px;
	right: 10px;
	display: flex;
	flex-direction: row;
	justify-content: flex-end;
	flex-wrap: nowrap;
	width: 40px;
	margin: 5px 0;
	padding: 0;
	background: transparent;
}
.img_block .info_view .icon1 div {
	flex: 1 1 auto;
	text-align: center;
	margin: 0;
	padding: 0;
	background: transparent;
}
/*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
/* カート合計表示 */
.img_block .sum_view {
	height: 60px;
}
/*------------------------------------------------*/
/* カート詳細表示エリア */
.img_block .desc_view {
	display: block;
	position: relative;
	min-height: 160px;
	width: 160px;
	margin:  0;
	padding: 0;
	font-family: -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-size: 14px;
	line-height: 1.7;
	overflow: hidden;
}
@media screen and (max-width: 800px) {
	.img_block .desc_view {
		max-height: 160px;
		max-width: 160px;
		font-size: 13px;
	}
}
.img_block .desc_view .cart_desc {
	position: absolute;
	inset: 0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	flex-wrap: nowrap;
	margin: 0;
	padding: 0;
	color: #000;
	overflow: normal;
}
.img_block .desc_view .cart_desc p {
	font-size: 14px;
	margin: 0;
	padding: 3px 10px;
}
.img_block .desc_view .cart_desc > div {
	display: inline-flex;
	align-items: center;
	gap: 4px;
	margin: 0;
	padding: 3px 10px;
}
/*=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-*/
/* ボタン表示エリア(共通) */
.img_block .form_view {
	display: block;
	position: relative;
	height: auto;
	width: 160px;
	margin: 0;
	padding: 5px;
}
/*------------------------------------------------*/
/* 上下並び形式の操作ボタン cart,upld */
.img_block .form_view .buttons {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center ;
	flex-wrap: nowrap;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
}
.img_block .form_view .buttons .bt_action {
	display: block;
	width: 140px;
	height: 34px;
	margin: 10px 0;
	padding: 0;
	text-align: center;
	font-family: -apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	font-size: 16px;
	line-height: 2.0;
	font-size: 16px;
	background: #2f4f4f;
	color: #FFF;
	border-radius: 5px;
}
.img_block .form_view .buttons .bt_red {
	background: #833;
}

.img_block .form_view .buttons .bt_green {
	background: #383;
}
.img_block .form_view .buttons .bt_magenta {
	background: #A38;
}
.img_block .form_view .buttons .bt_action:hover {
	color: #FFF;
	opacity: 0.7;
}
.img_block .form_view .buttons .bt_action:disabled {
	background: #BBB;
	color: #EEE;
}
/*=====================================*/
/* END */
