@charset "utf-8";

label { margin-left: 4px;}

form .pageLink li.nextBu { border: none;}


/* ---------------------------------------------------------------------------------------- 

	ボタン

---------------------------------------------------------------------------------------- */

.userConfirm .pageLink a,
.userMypage .pageLink a,
.userLoginMenu .pageLink a,
.buLogout a,
#header .buLogout a,
.cartPartsLook a {
	background: #444;
	border-radius: 0;
	border: 1px solid #ccc;
	color: #fff;
	text-decoration: none;
	text-align: center;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-webkit-transition: 0.3s;
	transition: 0.3s;
} 

.userRegist .pageLink input,
.cartConfirm .pageLink input,
.cartPayment .pageLink input,
.cartRegistConfirm .pageLink input,
.catalog-search .searchLink input,
.loginLink input,
.cartShowCart .pageLink input,
.cartIsUserRegist .pageLink input,
.cartCustomer .pageLink input {
	display: inline-block;
	background: #444;
	border-radius: 0;
	border: 1px solid #ccc;
	color: #fff;
	text-decoration: none;
	text-align: center;
	vertical-align: middle;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	-webkit-transition: 0.3s;
	transition: 0.3s;
}

.userConfirm .pageLink a:hover,
.userMypage .pageLink a:hover,
.userLoginMenu .pageLink a:hover,
.buLogout a:hover,
.cartPartsLook a:hover,
.userRegist .pageLink input:hover,
.cartConfirm .pageLink input:hover,
.cartPayment .pageLink input:hover,
.cartRegistConfirm .pageLink input:hover,
.catalog-search .searchLink input:hover,
.loginLink input:hover,
.cartShowCart .pageLink input:hover,
.cartIsUserRegist .pageLink input:hover,
.cartCustomer .pageLink input:hover {
	background: #777;
}

.userMypage .pageLink a,
.userLoginMenu .pageLink a,
.buLogout a {
	padding: 8px 16px;
}

.userConfirm .pageLink a {
	padding: 0px 16px;
}

@media (max-width: 767px) {
	
	.userConfirm .pageLink a {
		padding: 8px 16px;
	}

}


/* ---------------------------------------------------------------------------------------- 

	商品カテゴリリスト [ MODULE:catalog_index ]	

---------------------------------------------------------------------------------------- */

.categoryIndex .upperNavi,
.categoryIndex .bottomNavi {
	background-color: transparent;
}

.categoryIndex .upperNavi ul li a,
.categoryIndex .bottomNavi ul li a {
	background-color: transparent;
	color: #999;
}

.categoryIndex .upperNavi ul li a:hover,
.categoryIndex .bottomNavi ul li a:hover {
	background-color: transparent;
	color: #333;
	text-decoration: underline;
}

/* 第2階層 */
.categoryIndex .upperNavi ul ul,
.categoryIndex .bottomNavi ul ul {
	display: none;
}

.column2 #side .categoryIndex .sideBox {
	border: none;
	border-radius: 0;
}

#side .categoryIndex .sideBox h3 {
	margin-top: 0;
	margin-bottom: 0;
}

#side .categoryIndex ul,
#opt .categoryIndex ul {
	list-style: none;
	padding-left: 0;
}

#side .categoryIndex ul li,
#opt .categoryIndex ul li {
	padding: 10px;
	border-top: #ccc dotted 1px;
	border-bottom: #ccc dotted 1px;
	margin-top: -1px;
}

#side .categoryIndex ul li:first-child,
#opt .categoryIndex ul li:first-child {
	border-top: none;
}

#side .categoryIndex ul li ul,
#opt .categoryIndex ul li ul {
	padding-left: 20px;
}

#side .categoryIndex ul li li,
#opt .categoryIndex ul li li {
	padding: 10px 0 0;
	border-top: none;
	border-bottom: none;
}

#side .categoryIndex ul li li a:before,
#opt .categoryIndex ul li li a:before {
    content: "└";
    padding: 0 5px 0 0;
}

#side .categoryIndex ul li ul {
	padding-left: 20px !important;
}


/* ---------------------------------------------------------------------------------------- 

	ログイン [ MODULE:user_login ]

---------------------------------------------------------------------------------------- */

#header .userLoginGetForm h2 {
	display: none;
}

#header .userLoginGetForm dl,
#header .userLoginGetForm dt,
#header .userLoginGetForm dd,
#header .userLoginGetForm .loginLink,
#upper .userLoginGetForm dl,
#upper .userLoginGetForm dt,
#upper .userLoginGetForm dd,
#upper .userLoginGetForm .loginLink,
#bottom .userLoginGetForm dl,
#bottom .userLoginGetForm dt,
#bottom .userLoginGetForm dd,
#bottom .userLoginGetForm .loginLink {
	display: inline-block;
}

#header .userLoginGetForm dt,
#upper .userLoginGetForm dt,
#bottom .userLoginGetForm dt {
	padding-right: 8px;
}

#header .userLoginGetForm dd,
#upper .userLoginGetForm dd,
#bottom .userLoginGetForm dd {
	padding-right: 16px;
}

#header .userLoginGetForm ul,
#upper .userLoginGetForm ul,
#bottom .userLoginGetForm ul,
#side .userLoginGetForm ul ,
#opt .userLoginGetForm ul {
	margin-top: 16px;
	padding-left: 0;
}

#side .userLoginGetForm ul,
#opt .userLoginGetForm ul {
	margin-left: 1.6em;
}

#header .userLoginGetForm ul li,
#upper .userMypageLogin ul li,
#bottom .userLoginGetForm ul li,
#header .userMypageLogin ul li,
#upper .userLoginGetForm ul li,
#bottom .userMypageLogin ul li {
	display: inline-block;
	padding-right: 10px;
}

#side .userLoginGetForm .pageLink,
#opt .userLoginGetForm .pageLink {
	margin-bottom: 16px;
}

#side .userLoginGetForm ul li,
#side .userMypageLogin ul li,
#opt .userLoginGetForm ul li,
#opt .userMypageLogin ul li {
	margin-bottom: 8px;
}

@media (max-width: 767px) {
	
	#header .userLoginGetForm {
		padding: 16px;
	}
	
	#header .userLoginGetForm h2 {
		display: block;
	}
	
	#header .userLoginGetForm dl,
	#header .userLoginGetForm dt,
	#header .userLoginGetForm dd,
	#header .userLoginGetForm .loginLink,
	#upper .userLoginGetForm dl,
	#upper .userLoginGetForm dt,
	#upper .userLoginGetForm dd,
	#upper .userLoginGetForm .loginLink,
	#bottom .userLoginGetForm dl,
	#bottom .userLoginGetForm dt,
	#bottom .userLoginGetForm dd,
	#bottom .userLoginGetForm .loginLink {
		display: block;
		padding-right: 0;
	}
	
	#header .userLoginGetForm dl,
	#upper .userLoginGetForm dl,
	#bottom .userLoginGetForm dl {
		margin-bottom: 8px;
	}
	
	#header .userLoginGetForm .loginLink,
	#upper .userLoginGetForm .loginLink,
	#bottom .userLoginGetForm .loginLink {
		margin-bottom: 16px;
	}
	
	#header .userLoginGetForm ul li,
	#header .userMypageLogin ul li,
	#upper .userLoginGetForm ul li,
	#upper .userMypageLogin ul li,
	#bottom .userLoginGetForm ul li,
	#bottom .userMypageLogin ul li {
		margin-bottom: 8px;
	}
	
}


/* ---------------------------------------------------------------------------------------- 

	ログイン [ MODULE:user_login_menu ]

---------------------------------------------------------------------------------------- */

#header .userLoginMenu {
	margin-bottom: 16px;
}

#opt .userLoginMenu ul {
	margin-left: .6em;
}

.userLoginMenu .buLogout a {
	display: inline-block;
	margin-bottom: 16px;
}

@media (max-width: 767px) {

	#header .userLoginMenu {
		margin: 0;
		padding: 16px;
	}
	
}


/* ---------------------------------------------------------------------------------------- 

	新着商品 [ MODULE:catalog_new ]
	ピックアップ商品 [ MODULE:catalog_picup ]
	ランダム商品 [ MODULE:catalog_get_random ]
	人気商品 [ MODULE:catalog_popular ]
	カテゴリーTOP
	検索結果

---------------------------------------------------------------------------------------- */

.shopSearch      .row div[class*='col-'],
.catalog_random  .row div[class*='col-'],
.catalog_new     .row div[class*='col-'],
.catalog_picup   .row div[class*='col-'],
.catalog_popular .row div[class*='col-'],
.catalogBoxCatchNo    div[class*='col-'],
.catalogBoxCatchYes   div[class*='col-'] {
	margin-bottom: 15px;
}

.shopSearch      .row div[class*='col-'] img,
.catalog_random  .row div[class*='col-'] img,
.catalog_new     .row div[class*='col-'] img,
.catalog_picup   .row div[class*='col-'] img,
.catalog_popular .row div[class*='col-'] img,
.catalogBoxCatchNo    div[class*='col-'] img,
.catalogBoxCatchYes   div[class*='col-'] img {
	margin-left: auto;
	margin-right: auto;
	display: block;
}

#opt  .shopSearch      .row div[class*='col-'],
#opt  .catalog_random  .row div[class*='col-'],
#opt  .catalog_new     .row div[class*='col-'],
#opt  .catalog_picup   .row div[class*='col-'],
#opt  .catalog_popular .row div[class*='col-'],
#side .shopSearch      .row div[class*='col-'],
#side .catalog_random  .row div[class*='col-'],
#side .catalog_new     .row div[class*='col-'],
#side .catalog_picup   .row div[class*='col-'],
#side .catalog_popular .row div[class*='col-'] {
	width: 100%;
}

.shopSearch div[class*='col-'] img,
.catalogBoxCatchNo div[class*='col-'] img,
.catalog_picup div[class*='col-'] img,
.catalog_random div[class*='col-'] img,
.catalog_new div[class*='col-'] img,
.catalog_popular div[class*='col-'] img {
	margin-bottom: 8px;
}

.shopSearch div[class*='col-'] > div:last-child,
.catalogBoxCatchNo div[class*='col-'] .price,
.catalog_picup div[class*='col-'] .price,
.catalog_random div[class*='col-'] .price,
.catalog_new div[class*='col-'] .price,
.catalog_popular div[class*='col-'] .price {
	margin-top: 8px;
}

.catalogBoxCatchNo div[class*='col-']:nth-child(4n+1) {
	clear: both;
}

@media screen and (max-width: 1024px) {
	
	.column2 .catalogBoxCatchNo .row div[class*='col-'],
	.column2 .shopSearch .row div[class*='col-'],
	.column2 #contents .catalog_picup div[class*='col-'],
	.column2 #contents .catalog_random div[class*='col-'],
	.column2 #contents .catalog_new div[class*='col-'],
	.column2 #contents .catalog_popular div[class*='col-'] {
		width: 50%;
	}
	
	.column2 .catalogBoxCatchNo .row div[class*='col-']:nth-child(odd),
	.column2 .shopSearch .row div[class*='col-']:nth-child(odd),
	.column2 #contents .catalog_picup div[class*='col-']:nth-child(odd),
	.column2 #contents .catalog_random div[class*='col-']:nth-child(odd),
	.column2 #contents .catalog_new div[class*='col-']:nth-child(odd),
	.column2 #contents .catalog_popular div[class*='col-']:nth-child(odd) {
		clear: both;
	}
	
}

@media screen and (max-width: 767px) {
	
	.catalogBoxCatchNo .row div[class*='col-'],
	.shopSearch .row div[class*='col-'],
	.catalog_picup div[class*='col-'],
	.catalog_random div[class*='col-'],
	.catalog_new div[class*='col-'],
	.catalog_popular div[class*='col-'],
	#opt .catalog_picup .row div[class*='col-'],
	#opt .catalog_random .row div[class*='col-'],
	#opt .catalog_new .row div[class*='col-'],
	#opt .catalog_popular .row div[class*='col-'] {
		width: 50%;
	}
	
	.catalogBoxCatchNo .row div[class*='col-']:nth-child(odd),
	.shopSearch .row div[class*='col-']:nth-child(odd),
	.catalog_picup div[class*='col-']:nth-child(odd),
	.catalog_random div[class*='col-']:nth-child(odd),
	.catalog_new div[class*='col-']:nth-child(odd),
	.catalog_popular div[class*='col-']:nth-child(odd),
	#opt .catalog_picup .row div[class*='col-']:nth-child(odd),
	#opt .catalog_random .row div[class*='col-']:nth-child(odd),
	#opt .catalog_new .row div[class*='col-']:nth-child(odd),
	#opt .catalog_popular .row div[class*='col-']:nth-child(odd) {
		clear: both;
	}
	
}


/* ---------------------------------------------------------------------------------------- 

	商品検索フォーム [ MODULE:catalog_search ]

---------------------------------------------------------------------------------------- */

.catalog-search-form {
	vertical-align: top;
}

.catalog-search select {
	display: block;
	max-width: 100%;
}

.catalog-search .catalogSearchText {
	display: block;
	width: 100%;
}

@media (max-width: 767px) {
	
	#header .catalog-search {
		padding: 16px;
	}
	
}

/* optに配置した際にbrが出力される */
.catalog-search select + br {
	display: none;
}


/* ---------------------------------------------------------------------------------------- 

	カートパーツ [ MODULE:cart_parts ]

---------------------------------------------------------------------------------------- */

#upper .cartPartsCount,
#bottom .cartPartsCount,
#upper .cartPartsCharge,
#bottom .cartPartsCharge,
#upper .cartPartsLook,
#bottom .cartPartsLook {
	line-height: 50px;
}

#side .cartPartsLook,
#opt .cartPartsLook {
	margin: 15px 0;
}

#upper .cartPartsLook a,
#bottom .cartPartsLook a {
	width: auto;
	margin: 8px 0 0;
	padding: 6px 10px;
	line-height: 1.4;
}

#side .cartPartsLook a,
#opt .cartPartsLook a {
	display: block;
	max-width: 200px;
	width: 100%;
	margin: 0 auto;
	padding: 10px;
}

div#opt .cartPartsCount,
div#opt .cartPartsCharge {
	float: none;
	padding: 0;
}


/* ---------------------------------------------------------------------------------------- 

	ご注文のお手続き [ MODULE:cart_guide ]

---------------------------------------------------------------------------------------- */

#opt .cartGuide ol {
	margin-left: 1.6em;
}


/* ---------------------------------------------------------------------------------------- .

	お客様登録 

---------------------------------------------------------------------------------------- */

@media (max-width: 767px) {

	.cartRegistConfirm form table,
	.userRegist form table {
		border-bottom: 1px solid #fff;
	}
	
}


/* ---------------------------------------------------------------------------------------- 

	お客様情報変更 確認 [ user_confirm.htm ]
	お客様登録     確認 [ user_confirm.htm ]

---------------------------------------------------------------------------------------- */

.userConfirm .pageLink {
	margin-top: 30px;
}

/* 戻るボタン */
/* pc */
@media (min-width: 768px) {
	
	.userConfirm .returnBu a {
		line-height: 36px;
	}
	
}


/* ---------------------------------------------------------------------------------------- 

	お客様情報変更 完了 [ user_complate.htm ]
	お客様登録     完了 [ user_complate.htm ]

---------------------------------------------------------------------------------------- */

.userComplate {
	text-align: center;
	margin-bottom: 25px;
}


/* ---------------------------------------------------------------------------------------- 

	マイページ-ログイン画面 [ MODULE:user-mypage_login ]
	マイページ-ログイン画面 [ uMODULE:user-mypage ]

---------------------------------------------------------------------------------------- */

@media screen and (max-width: 767px) {
	
	.userMypageLogin form + ul {
		margin-top: 48px;
	}

}


/* ---------------------------------------------------------------------------------------- 

	会員ページ（ポイントの確認） [MODULE:user-point]

---------------------------------------------------------------------------------------- */

@media screen and (max-width: 767px) {
	
	#point-table tr {
		display: block;
		width: 100%;
		padding: 8px 0;
		border-bottom: 1px solid #ccc;
	}
	
	#point-table tr:first-child {
		display: none;
	}
	
	#point-table th,
	#point-table td {
		display: block;
		width: 100%;
		border: none;
		text-align: left !important;
	}
	
	#point-table td {
		padding: 4px 0;
	}
	
	#point-table td:nth-child(1):before { content: 'ご利用日時：';}
	#point-table td:nth-child(2):before { content: 'ご利用区分：';}
	#point-table td:nth-child(3):before { content: '獲得/ご利用ポイント：';}
	#point-table td:nth-child(4):before { content: '残高：';}
	
}


/* ---------------------------------------------------------------------------------------- 

	会員ページ（購入履歴） [MODULE:user-history]

---------------------------------------------------------------------------------------- */

@media screen and (max-width: 767px) {
	
	.userMypageHistory table tr {
		display: block;
		width: 100%;
		border-bottom: 1px solid #ccc;
	}
	
	.userMypageHistory table tr:first-child {
		display: none;
	}
	
	.userMypageHistory table th,
	.userMypageHistory table td {
		display: block;
		width: 100%;
		border: none;
	}
	
}


/* ---------------------------------------------------------------------------------------- 

	ご注文のお手続き-会員登録 [ cart_login.htm ]

---------------------------------------------------------------------------------------- */

.cartRuleBody {
	border: 1px solid #ccc;
}

.cartRuleBodyBox {
	max-height: 100%;
}


/* ---------------------------------------------------------------------------------------- 

	ご注文のお手続き-ご注文完了

---------------------------------------------------------------------------------------- */

.cartThankyou .cartComplateBody {
	font-weight: bold;
	padding: 10px;
}

@media screen and (min-width: 768px) {
	
	.cartThankyou .cartComplateBody {
		text-align: center;
		margin-top: 25px;
		margin-bottom: 25px;
	}
	
}


/* ---------------------------------------------------------------------------------------- 

	商品カタログ（カテゴリートップ） [ MODULE:catalog-category ]

---------------------------------------------------------------------------------------- */

.displayOrder,
.displayFormat {
	text-align: right;
	padding: 4px 8px;
}

.displayNumber {
	text-align: right;
	margin-bottom: 10px;
}

.catalogBoxCatchYes .itemPrice {
	margin-bottom: 5px;
}


/* ---------------------------------------------------------------------------------------- 

	商品カタログ（商品詳細） [ MODULE:catalog-detail ]

---------------------------------------------------------------------------------------- */

.catalogDetailBoxLeft {
	margin-bottom: 20px;
}

.list-inline {
	display: flex;
	flex-wrap: wrap;
	margin: 8px -5px 16px;
}

.list-inline li {
	box-sizing: border-box;
	width: 25%;
	padding: 5px;
}

form .variationInfo table th {
  border: 1px solid #ccc;
}

@media screen and (max-width: 768px) {
	
	.list-inline li {
		width: 33.3333333%;
	}
  
  form .variationInfo table th,
  form .variationInfo table td {
    border: 1px solid #ccc;
    display: table-cell;
    width: auto;
  }
	
}


/* ---------------------------------------------------------------------------------------- 

	ショッピングカート（カートの中を見る） [ MODULE:cart-show_cart ]

---------------------------------------------------------------------------------------- */

.column2 .cartShowTable th {
	border-right: 1px solid #ccc;
}

.column2 .cartShowTable td {
	border-left: 1px solid #ccc;
}

@media screen and (max-width: 1199px) {
	
	.column2 .cartShowTable {
		border-left: 1px solid #ccc;
		border-right: 1px solid #ccc;
	}
	
	.column2 .cartShowTable tr {
		border-bottom: 1px solid #ccc;
	}
	
	.column2 .cartShowTable tr:first-child {
		display: none;
	}
	
	.column2 .cartShowTable th,
	.column2 .cartShowTable td {
		display: block;
		width: 100%;
		border: none;
	}
	
	.column2 .cartShowTable td:not(:first-child) {
		border-top: none;
		text-align: right;
		padding: 8px;
	}
	
	.column2 .cartShowTable td.cartUnitTd,
	.column2 .cartShowTable td.cartNumTd,
	.column2 .cartShowTable td.cartPriceTd {
		padding-top: 0;
	}
	
	.column2 .cartShowTable .cartNameTd {
		font-weight: bold;
	}
	
	.column2 .cartShowTable .cartNumTd > *{
		display: inline-block;
	}
	
	.column2 .cartShowTable .cartUnitTd:before {
		content: '単価：';
	}
	
	.column2 .cartShowTable .cartNumTd:before {
		content: '数量：';
	}
	
	.column2 .cartShowTable .cartPriceTd:before {
		content: '金額：';
	}
	
}


@media screen and (max-width: 767px) {
	
	.cartShowTable {
		border-left: 1px solid #ccc;
		border-right: 1px solid #ccc;
	}
	
	.cartShowTable tr {
		border-bottom: 1px solid #ccc;
	}
	
	.cartShowTable tr:first-child {
		display: none;
	}
	
	.cartShowTable th,
	.cartShowTable td {
		display: block;
		width: 100%;
		border: none;
	}
	
	.cartShowTable td:not(:first-child) {
		border-top: none;
		text-align: right;
		padding: 8px;
	}
	
	.cartShowTable td.cartUnitTd,
	.cartShowTable td.cartNumTd,
	.cartShowTable td.cartPriceTd {
		padding-top: 0;
	}
	
	.cartShowTable .cartNameTd {
		font-weight: bold;
	}
	
	.cartShowTable .cartNumTd > *{
		display: inline-block;
	}
	
	.cartShowTable .cartUnitTd:before {
		content: '単価：';
	}
	
	.cartShowTable .cartNumTd:before {
		content: '数量：';
	}
	
	.cartShowTable .cartPriceTd:before {
		content: '金額：';
	}
	
}


/* ---------------------------------------------------------------------------------------- 

	ショッピングカート（お支払い・配送の指定画面） [ MODULE:cart-payment ]

---------------------------------------------------------------------------------------- */

.cartPayment .cartDelivBox ul {
	list-style: none;
	padding-left: 0px;
}

.cartPayment .cartDelivBox ul li {
	min-height: 0.01%;
	overflow-x: auto;
	margin-bottom: 15px;
}

.cartDelivBox table th {
	border-right: 1px solid #ccc;
}

.cartDelivBox table td {
	border-left: 1px solid #ccc;
}

@media screen and (max-width: 767px) {
	
	.cartDelivBox td:last-child {
		border-bottom: 1px solid #ccc;
	}
	
	.cartDelivBox tr:last-child td:last-child {
		border-bottom: none;
	}
	
	.cartPointBox th,
	.cartPointBox td {
		display: block;
		width: 100% !important;
	}
	
}

div.cartBikoBox textarea,
#type2column02 div.cartBikoBox textarea {
		width: 100% !important;
		max-width: 100% !important;
}


/* ---------------------------------------------------------------------------------------- 

	ご注文のお手続き[MODULE:cart_guide]

---------------------------------------------------------------------------------------- */

#opt div.cartGuideBox ol {
	padding-left: 0;
}
