@charset "utf-8";
/*
再利用可能な全てのオブジェクトを記述します。

接頭辞はComponentの頭文字を取って【c_】とします。

ここで指定するのは以下の様なものと予想されます。
.c_btn/.c_breadclumb/.c_hero/.c_serch/.c_dropdown/
.c_card/.c_feature/.c_overlay/.c_form/.c_thumbnail/.c_box

モディファイヤを使用する場合は接頭辞【is_】をつけ、各コンポーネントの下に記述します。

↓↓↓↓↓↓コメントアウト表記サンプル Comment out sample ↓↓↓↓↓↓
/*----------------------------------------------
	大くくりコメントアウト large part
---------------------------------------------*/

/*  中くくりコメントアウト middle part
------------------------------------- */

/* 小くくりコメントアウト small part */
/*
↑↑↑↑↑↑コメントアウト表記サンプル Comment out sample ↑↑↑↑↑↑
*/

/*----------------------------------------------
	common
---------------------------------------------*/

/*----------------------------------------------
	テキスト
---------------------------------------------*/
/*  .c_txt_normal
------------------------------------- */
.c_txt_normal {
	line-height: 1.8;
}
.c_txt_normal:not(:first-child) { margin-top: .6em; }
.c_txt_normal:not(:last-child) { margin-bottom: .6em; }
.c_txt_normal.is_sm {
	font-size: 1.2rem;;
}

/*  .c_txt_lead
------------------------------------- */
.c_txt_lead {
	margin-bottom: 1.2em;
	line-height: 1.8;
}
.c_txt_lead:not(:first-child) { margin-top: 1.2em; }
.c_txt_lead:not(:last-child) { margin-bottom: 1.2em; }

/*  .c_txt_error
------------------------------------- */
.c_txt_error {
	color: red;
}

/*----------------------------------------------
	タイトル
---------------------------------------------*/
/*  .c_ttl_normal
------------------------------------- */
.c_ttl_normal {
	font-weight: bold;
	font-size: 2rem;
}
.c_ttl_normal:not(:first-child) { margin-top: 1.6em; }
.c_ttl_normal:not(:last-child) { margin-bottom: .6em; }
.c_ttl_normal.is_ttl_search {
	color: #ff9900;
}
.c_ttl_normal.is_background {
	padding: .4em .8em;
	background-color: #F5F5F5;
}

/*  .c_ttl_md
------------------------------------- */
.c_ttl_md {
	font-weight: bold;
	font-size: 1.8rem;
}
.c_ttl_md:not(:first-child) { margin-top: 1.2em; }
.c_ttl_md:not(:last-child) { margin-bottom: .6em; }
.c_ttl_md.is_border {
	padding-bottom: .4em;
	border-bottom: 1px solid #CCC;
}

/*  .c_ttl_sm
------------------------------------- */
.c_ttl_sm {
	font-weight: bold;
	font-size: 1.5rem;
}
.c_ttl_sm.is_green {
	color: #29B767;
}
.c_ttl_sm:not(:first-child) { margin-top: 1.2em; }
.c_ttl_sm:not(:last-child) { margin-bottom: .6em; }

/*  .c_ttl_xs
------------------------------------- */
.c_ttl_xs {
	font-weight: bold;
	font-size: 1.3rem;
}
.c_ttl_xs:not(:first-child) { margin-top: 1.6em; }
.c_ttl_xs:not(:last-child) { margin-bottom: .2em; }

@media screen and (max-width: 896px) {
	.c_ttl_normal {
		font-size: 1.6rem;
	}
	.c_ttl_md {
    font-size: 1.6rem;
	}
}

/*  .c_ttl_sub
------------------------------------- */
.c_ttl_sub {
	display: inline-block;
	margin-left: 15px;
	color: #333;
	font-weight: normal;
	font-size: 1.3rem;
}

/*  .c_ttl_sub_link
------------------------------------- */
.c_ttl_sub_link {
	display: inline-block;
	margin-left: 15px;
	font-weight: bold;
	font-size: 1.4rem;
}

/*----------------------------------------------
	ボタン
	<button>タグに付与する場合は、【.u_reset_button】を追加する
	ex.)<button class="c_btn u_reset_button">
---------------------------------------------*/
.c_btn {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	min-width: 180px;
	padding: .8em .5em;
	border-radius: 5px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	cursor: pointer;
}
.c_btn.is_normal {
	border: 1px solid #a0a0a0;
	background-color: #ffe785;
	color: #333;
	transition: all .2s ease;
}
.c_btn.is_normal:hover {
	background-color: #f7ce5a;
}
.c_btn.is_cart {
	background-color: #d84242;
	color: #fff;
	transition: all .2s ease;
}
.c_btn.is_cart:hover {
	background-color: #c31c1c;
}
.c_btn.is_mylist {
	border: 1px solid #e3e3e3;
	background-color: #fff;
	color: #333;
	transition: all .2s ease;
}
.c_btn.is_mylist:hover {
	background-color: #f6f6f6;
}
.c_btn.is_mylist_on {
	border: 1px solid #a0a0a0;
	background-color: #ffe785;
	color: #333;
	transition: all .2s ease;
}
.c_btn.is_mylist_on:hover {
	background-color: #f7ce5a;
}
.c_btn.is_notice {
	border: 1px solid #a0a0a0;
	background-color: #ff9900;
	color: #333;
	transition: all .2s ease;
}
.c_btn.is_notice:hover {
	background-color: #ef8400;
}
.c_btn.is_primary {
	padding: .5em 1em;
	border: 1px solid #a0a0a0;
	background-color: #ffe785;
	color: inherit;
	transition: .2s ease;
}
.c_btn.is_primary:hover {
	background-color: #f7ce5a;
}
.c_btn.is_primary:focus {
	border: none;
	outline: 0;
}
.c_btn.is_secondary,
.c_btn.is_order_search{
	padding: .5em 1em;
	border: 1px solid #a0a0a0;
	background-color: #f5f5f5;
	color: inherit;
	transition: .2s ease;
}
.c_btn.is_secondary:hover,
.c_btn.is_order_search:hover{
	background-color: #d5d5d5;
	color: #333;
}
.c_btn.is_disabled {
	padding: .5em 1em;
	border: 1px solid #a0a0a0;
	background-color: #f5f5f5;
	color: inherit;
	opacity: .3;
	pointer-events: none;
}
.c_btn.is_half {
	width: 50%;
}
.c_btn.is_wide {
	padding-right: 5em;
	padding-left: 5em;
}
.c_btn.is_full {
	width: 100%;
}
.c_btn.is_full_pc {
	width: 100%;
}
.c_btn.is_md {
	font-size: 1.2rem;
}
.c_btn.is_sm {
	min-width: inherit;
	font-size: 1.1rem;
}
.c_btn.is_xs {
	height: 21px;
	min-width: inherit;
	padding: 0 .4em;
	font-size: 1rem;
}
.c_btn_sp {
	display: inline-flex;
	color: #4371d0;
	line-height: 1;
	justify-content: flex-end;
	align-items: center;
	cursor: pointer;
}
.c_btn_sp:hover {
	color: #d00;
}
.c_btn_sp > svg {
	margin-right: .4em;
}
@media screen and (max-width: 896px) {
	.c_btn {
		min-width: inherit;
	}
	.c_btn.is_full_pc {
		width: inherit;
	}
	.c_btn.is_full_sp {
		width: 100%;
	}
	.c_btn_sp {
		padding: .4em .8em;
		border: 1px solid #e3e3e3!important;
		border-radius: 2px;
		background-color: #f6f6f6!important;
		color: #333;
		font-weight: bold;
		font-size: 1.2rem;
		line-height: 1;
	}
	.c_btn_sp .c_icon_pseudo_element {
		padding-left: 0;
	}
	.c_btn_sp .c_icon_pseudo_element::before {
		content: none;
	}
  .c_btn.is_order_search{
    padding: .5em 2em;
  }
}
@media screen and (max-width: 480px) {
	.c_btn {
		min-height: 42px;
	}
	.c_btn_sp {
		padding: .4em .3em;
	}
}

/*----------------------------------------------
	アイコン
---------------------------------------------*/
.c_icon.is_icon_info svg {
	width: 18px;
	height: 18px;
	fill: #4371d0;
}
.c_icon.is_icon_cart,
.c_icon.is_icon_mylist {
	position: relative;
	width: 18px;
	height: 18px;
	margin-right: .2em;
}
.c_icon.is_icon_cart svg,
.c_icon.is_icon_mylist svg {
	position: absolute;
	top: 0;
	left: 0;
	bottom: 0;
	width: 18px;
	height: 18px;
	margin: auto;
}
.c_icon.is_icon_cart svg {
	fill: #fff;
}
.c_icon.is_icon_mylist svg {
	fill: #333;
}
.c_icon.is_icon_security svg {
	transform: translateY(3px);
	width: 18px;
	height: 18px;
	fill: #333;
}

/*  疑似要素アイコン
------------------------------------- */
.c_icon_pseudo_element {
	position: relative;
	display: inline-flex;
	align-items: center;
	padding-left: .8em;
}
.c_icon_pseudo_element::before {
	position: absolute;
	display: inline-block;
	content: "";
	left: 0;
}
.c_icon_pseudo_element.is_angle_right::before {
	width: 4px;
	height: 4px;
	border-right: 2px solid #333;
	border-bottom: 2px solid #333;
	transform: rotate(-45deg);
}
.c_icon_pseudo_element.is_angle_right.is_right::before {
	transform: translateX(-3px) rotate(-45deg);
}
.c_icon_pseudo_element.is_angle_left::before {
	width: 4px;
	height: 4px;
	border-top: 2px solid #333;
	border-left: 2px solid #333;
	transform: translateX(3px) rotate(-45deg);
}
.c_icon_pseudo_element.is_angle_left.is_right::before {
	transform: translateX(0) rotate(-45deg);
}
.c_icon_pseudo_element.is_plus::before {
	content: "+";
}
.c_icon_pseudo_element.is_right {
	padding-right: .8em;
	padding-left: 0;
}
.c_icon_pseudo_element.is_right::before {
	right: 0;
	left: inherit;
}
.c_icon_pseudo_element.is_edge {
	width: 100%;
	justify-content: center;
}

/*----------------------------------------------
	リスト
---------------------------------------------*/
/*  .c_lst_normal
------------------------------------- */
.c_lst_normal {
	margin-left: 1.4em;
	line-height: 1.8;
}
.c_lst_normal:not(:first-child) { margin-top: .6em; }
.c_lst_normal:not(:last-child) { margin-bottom: .6em; }
.c_lst_normal > li {
	list-style-type: disc;
}
.c_lst_normal > li:not(:first-child) { margin-top: .6em; }
.c_lst_normal > li:not(:last-child) { margin-bottom: .6em; }
.c_lst_normal.is_child > li:not(:first-child) { margin-top: 0; }
.c_lst_normal.is_child > li:not(:last-child) { margin-bottom: 0; }
/*  .c_lst_annotation
------------------------------------- */
.c_lst_annotation {
	line-height: 1.8;
}
.c_lst_annotation > li {
	margin-bottom: .3em;
	padding-left: 1em;
	text-indent: -1em;
}

/*  .c_lst_num
------------------------------------- */
.c_lst_num {
	margin-left: 1.4em;
	line-height: 1.8;
}
.c_lst_num > li {
	list-style-type: decimal;
}
.c_lst_num > li:not(:first-child) { margin-top: 1em; }
.c_lst_num > li:not(:last-child) { margin-bottom: 1em; }
.c_lst_num.is_parentheses > li {
	list-style-type: none;
	counter-increment: cnt;
}
.c_lst_num.is_parentheses > li::before {
	content: "(" counter(cnt) ") ";
}
.c_lst_num.is_child > li:not(:first-child) { margin-top: 0; }
.c_lst_num.is_child > li:not(:last-child) { margin-bottom: 0; }

/*----------------------------------------------
	テーブル
---------------------------------------------*/
.c_tbl {
	border-bottom: 1px solid #e3e3e3;
}
.c_tbl.is_full {
	width: 100%;
}
.c_tbl th,
.c_tbl td {
	padding: 1em;
}
.c_tbl tr {
	border-top: 1px solid #ccc;
}
.c_tbl th {
	text-align: left;
	background-color: #f5f5f5;
}

/*----------------------------------------------
	商品情報
---------------------------------------------*/
.c_prod_ph {
  display: flex;
  align-items: center;
	text-align: center;
}
.c_prod_ph:not(:first-child) { margin-top: 10px; }
.c_prod_ph:not(:last-child) { margin-bottom: 10px; }
.c_prod_ph img {
	width: 11vw;
	height: 11vw;
	max-height: 225px;
	min-height: 130px;
	object-fit: contain;
  font-family: 'object-fit: contain;';
	min-width: 130px;
  margin: 0 auto;
}
.c_prod_name {
	display: block;
	font-weight: bold;
	font-size: 1.6rem;
	line-height: 1.6;
}
.c_prod_name:not(:first-child) { margin-top: .4em; }
.c_prod_name:not(:last-child) { margin-bottom: .4em; }
.c_prod_name.is_sm {
	font-size: 1.4rem;
}
.c_prod_name.is_xs {
	font-size: 1.3rem;
}
.c_prod_stock {
	font-weight: bold;
	font-size: 1.4rem;
	line-height: 1;
}
.c_prod_stock:not(:first-child) { margin-top: .6em; }
.c_prod_stock:not(:last-child) { margin-bottom: .6em; }
.c_prod_stock.is_md {font-size: 1.6rem;}
.c_prod_stock.is_lg {font-size: 1.8rem;}
.c_prod_stock.is_stock { color: #d84242; }
.c_prod_stock.is_shipping { color: #29B767; }
.c_prod_stock.is_backorder { color: #a0a0a0; }
.c_prod_price {
	font-weight: bold;
	line-height: 1;
	color: #d84242;
}
.c_prod_price:not(:first-child) { margin-top: .6em; }
.c_prod_price:not(:last-child) { margin-bottom: .6em; }
.c_prod_price > span {
	color: #333;
	font-weight: normal;
}
.c_prod_price.is_md {
	font-size: 1.5rem;
}
.c_prod_price.is_md > span {
	font-size: 85%;
}
.c_prod_price.is_lg {
	font-size: 2rem;
}
.c_prod_price.is_lg > span {
	font-size: 65%;
}
.c_prod_quantity {
	line-height: 1;
}
.c_prod_quantity:not(:first-child) { margin-top: 1em; }
.c_prod_quantity:not(:last-child) { margin-bottom: 1em; }
.c_prod_tag_wrap {
	color: #333;
	font-size: 1.2rem;
}
.c_prod_tag_wrap:not(:first-child) { margin-top: .4em; }
.c_prod_tag_wrap:not(:last-child) { margin-bottom: 1em; }
.c_prod_tag {
	margin-right: .4em;
	padding: .1em .2em;
	color: #fff;
	font-weight: bold;
}
.c_prod_tag:not(:first-child) { margin-top: .6em; }
.c_prod_tag:not(:last-child) { margin-bottom: .6em; }
.c_prod_tag.is_tag_ecology {
	background-color: #1a8d42;
}
.c_prod_txt {
	color: #333;
}
.c_prod_print {
	max-width: 150px;
}
.c_prod_printdata {
    font-weight: bold;
}
.c_prod_printdata > span:first-child {
    color: #d84242;
}
.c_prod_printdata > span:last-child {
    font-size: 0.9em;
}
.c_prod_caption {
	font-weight: bold;
	line-height: 1;
	color: #d84242;
	font-size: 2rem;
    margin-bottom: 0.6em;
}
@media screen and (max-width: 896px) {
	.c_prod_name {
		font-size: 1.2rem;
	}
	.c_prod_stock {
		font-size: 1.3rem;
	}
}
@media screen and (max-width: 480px) {
	.c_prod_ph img {
		min-width: 100px;
	}
}

/*----------------------------------------------
	商品詳細オプション選択（ラジオボタン）
---------------------------------------------*/
.c_lst_name {
	margin-bottom: 5px;
}
.c_lst_name.is_lst_hide {
	display: none;
}
.c_lst_btn {
	display: flex;
	flex-wrap: wrap;
}
.c_lst_btn li {
	margin-bottom: 10px;
}
.c_lst_btn li {
	margin-right: 10px;
}
.c_lst_btn input[type=radio] {
	display: none;
}
.c_lst_btn_radio {
	display: block;
	position: relative;
	min-width: calc((100% - 80px) / 9);
	padding: .1em .6em;
	border: 1px solid #e3e3e3;
	background-color: #fff;
	cursor: pointer;
	transition: all .2s ease;
}
.c_lst_btn_radio:hover {
	background-color: #f6f6f6;
}
.c_lst_btn_radio.is_unavailable {
	color: #ccc;
}
.c_lst_btn_radio::before {
	opacity: 0;
	position: absolute;
	top: -1px;
	left: -1px;
	z-index: -1;
	width: calc(100% + 2px);
	height: calc(100% + 2px);
	border: 1px solid #f63232;
	box-sizing: border-box;
	background-color: rgba(255, 236, 236, .5);mix-blend-mode: multiply;
	content: '';
}
.c_lst_btn_radio img {
	width: 39px;
	object-fit: contain;
	font-family: 'object-fit: contain;';
}
.c_lst_btn input[type=radio]:checked + .c_lst_btn_radio::before {
	opacity: 1;
	z-index: 1;
}
.c_lst_color_name {
	display: none;
}
@media screen and (max-width: 896px) {
	.c_lst_btn_radio:hover {
		background: transparent;
	}
}
@media screen and (max-width: 568px) {
	.c_lst_name {
		position: relative;
		height: 50px;
		padding: 0 10px;
		border: 1px solid #e3e3e3;
		border-radius: 5px;
		background-color: #f6f6f6;
		line-height: 50px;
	}
	.c_lst_name.is_lst_hide {
		display: block;
	}
	.c_lst_name::after {
		position: absolute;
		top: 0;
		right: 10px;
		bottom: 0;
		transform: rotate(45deg);
		width: 8px;
		height: 8px;
		margin: auto;
		border-right: 2px solid #333;
		border-bottom: 2px solid #333;
		content: '';
		transition: all .2s ease;
	}
	.c_lst_name.open::after {
		transform: rotate(-135deg);
	}
	.c_lst_btn {
		display: none;
		border: 1px solid #e3e3e3;
		border-radius: 5px;
	}
	.c_lst_btn li:nth-child(n) {
		width: 100%;
		margin: 0;
	}
	.c_lst_btn li:not(:last-child) {
		border-bottom: 1px solid #e3e3e3;
	}
	.c_lst_btn li:first-child .c_lst_btn_radio {
		border-radius: 5px 5px 0 0;
	}
	.c_lst_btn li:last-child .c_lst_btn_radio {
		border-radius: 0 0 5px 5px;
	}
	.c_lst_btn_radio {
		display: flex;
		height: 50px;
		border: none;
		align-items: center;
		justify-content: space-between;
	}
	.c_lst_btn_radio::before {
		content: none;
	}
	.c_lst_btn_radio img {
		margin: inherit;
	}
	.c_lst_color_name {
		display: block;
	}
}

/*----------------------------------------------
	lnk
---------------------------------------------*/
.c_lnk_img {
	transition: all .2s ease;
}
.c_lnk_img:hover {
	opacity: .6;
}
@media screen and (max-width: 896px) {
	.c_lnk_img:hover {
		opacity: 1;
	}
}

/*----------------------------------------------
	フォーム関係
---------------------------------------------*/
/*  テキストボックス
------------------------------------- */
.c_form_text {
	height: 32px;
	padding: .4em .8em;
	border: 1px solid #a0a0a0;
	border-radius: 3px;
	background-image: none;
	background-color: transparent;
	color: inherit;
	font-size: 1em;
	font-family: inherit;
	appearance: none;
}
.c_form_text.is_full {
	width: 100%;
}
.c_form_text.is_sm {
	height: 21px;
	padding-top: 0;
	padding-bottom: 0;
}
@media screen and (max-width: 896px) {
	.c_form_text.is_full_sp {
		width: 100%;
	}
}

/*  テキストエリア
------------------------------------- */
.c_form_textarea {
	width: 100%;
	padding: .4em .8em;
	border: 1px solid #a0a0a0;
	border-radius: 3px;
	background-image: none;
	background-color: transparent;
	color: inherit;
	font-size: 1em;
	font-family: inherit;
	appearance: none;
}

/*  セレクトボックス
------------------------------------- */
.c_form_selectbox {
	height: 32px;
	padding: .4em .8em;
	border: 1px solid #a0a0a0;
	border-radius: 3px;
	color: inherit;
	font-size: 1em;
	font-family: inherit;
	cursor: pointer;
}
.c_form_selectbox::-ms-expand {
	display: none;
}
@media screen and (max-width: 480px) {
	.c_form_selectbox {
		font-size: 16px;
	}
}

/*  セレクトボックス（小）
------------------------------------- */
.c_select_parts_wrapper {
  position: relative;
  display: inline-block;
  user-select: none;
}
.c_select_parts_wrapper select {
	display: none;
}
.c_select_parts {
	position: relative;
	display: inline-block;
}
.c_select_parts_trigger {
	position: relative;
	display: block;
	min-width: 70px;
	padding: 0 20px 0 10px;
	color: #333;
	background: #fff;
	border: 1px solid #e3e3e3;
	border-radius: 3px;
	text-align: center;
	cursor: pointer;
}
.c_select_parts_trigger:after {
	position: absolute;
	display: block;
	content: '';
	width: 6px; height: 6px;
	top: 50%; right: 5px;
	margin-top: -3px;
	border-bottom: 2px solid #333;
	border-right: 2px solid #333;
	transform: rotate(45deg) translateY(-50%);
	transition: all .4s ease-in-out;
	transform-origin: 50% 0;
}
.c_select_parts.opened .c_select_parts_trigger:after {
	margin-top: 2px;
	transform: rotate(-135deg) translateY(-50%);
}
.custom_options {
	position: absolute;
	z-index: 2;
	display: block;
	top: 100%;
	right: 0;
	min-width: 100%;
	margin: 5px 0;
	border: 1px solid #e3e3e3;
	border-radius: 3px;
	box-sizing: border-box;
	box-shadow: 0 2px 1px rgba(0,0,0,.07);
	background: #fff;
	transition: all .4s ease-in-out;
	opacity: 0;
	visibility: hidden;
	pointer-events: none;
	transform: translateY(-15px);
}
.c_select_parts.opened .custom_options {
	opacity: 1;
	visibility: visible;
	pointer-events: all;
	transform: translateY(0);
}
.custom_options:before {
	position: absolute;
	display: block;
	content: '';
	bottom: 100%; right: 5px;
	width: 7px; height: 7px;
	margin-bottom: -4px;
	border-top: 1px solid #e3e3e3;
	border-left: 1px solid #e3e3e3;
	background: #fff;
	transform: rotate(45deg);
	transition: all .4s ease-in-out;
}
.option_hover:before {
	background: #f9f9f9;
}
.custom_option {
	display: block;
	position: relative;
	padding: 0 10px;
	border-bottom: 1px solid #e3e3e3;
	text-align: right;
	white-space: nowrap;
	cursor: pointer;
	transition: all .4s ease-in-out;
}
.custom_option:first-of-type {
	border-radius: 3px 3px 0 0;
}
.custom_option:last-of-type {
	border-bottom: 0;
	border-radius: 0 0 3px 3px;
}
.custom_option:hover,
.custom_option.selection {
	background: #f9f9f9;
}

/*  チェックボックス
------------------------------------- */
.c_checkbox_input {
  display: none;
}
.c_checkbox_parts {
	display: inline-flex;
  align-items: flex-start;
  position: relative;
  padding-left: 20px;
	cursor: pointer;
}
.c_checkbox_parts.is_edge {
  justify-content: center;
	width: 100%;
	padding-left: 0;
}
.c_checkbox_parts::before {
  display: block;
  position: absolute;
	top: 0;
  left: 0;
  width: 12px;
  height: 12px;
  border: 1px solid #cacaca;
  border-radius: 3px;
	box-shadow: -1px -1px 2px 0 rgba(0, 0, 0, .1) inset;
	content: '';
}
.c_checkbox_input:checked + .c_checkbox_parts {
  color: #d84242;
}
.c_checkbox_input:checked + .c_checkbox_parts::after {
  display: block;
  position: absolute;
  top: 2px;
  left: 4px;
  width: 4px;
  height: 8px;
  transform: rotate(40deg);
  border-bottom: 2px solid #333;
  border-right: 2px solid #333;
	content: '';
}
.c_checkbox_input:disabled + .c_checkbox_parts {
  color: #cacaca;
}








/*----------------------------------------------
	pager
---------------------------------------------*/
.c_pager {
	display: flex;
	margin: 30px 0;
	justify-content: center;
}
.c_pager_btn {
	display: block;
	margin: 0 2px;
	padding: .3em .8em;
	border: 1px solid #d9d9d9;
	border-radius: 3px;
	background-color: #fafafa;
	color: #333;
	transition: all .2s ease;
}
.c_pager_btn:hover {
	background-color: #edf9ff;
	color: #333;
}
.c_pager_btn.is_pager_prev {
	position: relative;
	padding-left: 30px;
}
.c_pager_btn.is_pager_next {
	position: relative;
	padding-right: 30px;
}
.c_pager_btn.is_pager_prev::before,
.c_pager_btn.is_pager_prev::after,
.c_pager_btn.is_pager_next::before,
.c_pager_btn.is_pager_next::after {
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	content: '';
}
.c_pager_btn.is_pager_prev::before,
.c_pager_btn.is_pager_next::before {
	width: 10px;
	height: 2px;
	background-color: #333;
}
.c_pager_btn.is_pager_prev::before {
	left: 14px;
}
.c_pager_btn.is_pager_next::before {
	right: 14px;
}
.c_pager_btn.is_pager_prev::after,
.c_pager_btn.is_pager_next::after {
	width: 0;
	height: 0;
	border-style: solid;
	content: '';
}
.c_pager_btn.is_pager_prev::after {
	left: 8px;
	border-width: 4px 6px 4px 0;
	border-color: transparent #333 transparent transparent;
}
.c_pager_btn.is_pager_next::after {
	right: 8px;
	border-width: 4px 0 4px 6px;
	border-color: transparent transparent transparent #333;
}
.c_pager_btn.is_pager_nolink {
	border: none;
	background: none;
	pointer-events: none;
}
@media screen and (max-width: 480px) {
	.c_pager {
		justify-content: space-between;
	}
	.c_pager_btn {
		display: none;
	}
	.c_pager_btn.is_pager_prev,
	.c_pager_btn.is_pager_next {
		display: block;
	}
}

/*----------------------------------------------
	box
---------------------------------------------*/
/*  .c_common_box
------------------------------------- */
.c_common_box {
	padding: 20px;
	/* background-color: #fff; */
}
.c_common_box:not(:last-child) {
	margin-bottom: 20px;
}
.c_common_box.is_border_top_box {
	margin-top: 20px;
	border-top: 1px solid #e3e3e3;
}
.c_common_box.is_whole_bg {
	/* width: 100vw;
	margin: 0 calc(50% - 50vw);
  padding: 20px calc(50vw - 50% + 20px); */
	background-color: white;
}
@media screen and (max-width: 896px) {
	.c_common_box {
		padding: 20px;
	}
}
/*  .c_prod_list_box
------------------------------------- */
.c_prod_list_box {
	display: block;
	padding: 5px;
	outline: none;
	transition: all .2s ease;
}

/*  .c_keyword_box
------------------------------------- */
.c_keyword_box {
	display: flex;
	align-items: center;
}
.c_keyword_box dt {
	display: flex;
	position: relative;
	height: 20px;
	margin-right: 10px;
	padding: 2px 0 2px 8px;
	background-color: #333;
	color: #fff;
	justify-content: center;
	align-items: center;
}
.c_keyword_box dt::after {
	position: absolute;
	top: 0;
	right: -10px;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 0 10px 10px;
	border-color: transparent transparent transparent #333;
	content: '';
}
.c_keyword_box dd {
	position: relative;
	padding: 0 8px;
	font-weight: bold;
}
.c_keyword_box dd:not(:last-child)::after {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	width: 1px;
	height: 70%;
	margin: auto;
	border-right: 1px solid #4371d0;
	content: '';
}
/*  .c_prod
------------------------------------- */
.c_prod {
	display: flex;
	flex-wrap: wrap;
}
.c_prod_box {
	width: calc(25% - 15px);
	padding: 0 0 15px;
	border-bottom: 1px solid #e3e3e3;
	font-size: 1.4rem;
}
.c_prod_box:not(:nth-child(4n)) {
	margin-right: 20px;
}
.c_prod_box:not(:nth-child(-n+4)) {
	padding-top: 20px;
}
/*  .c_cart_check
------------------------------------- */
.c_cart_check_total {
	margin-bottom: 15px;
	text-align: right;
}
.c_cart_check_total span{
	color: #d84242;
	font-weight: bold;
	font-size: 2rem;
}
.c_cart_check_mylist {
	font-size: 1.2rem;
	margin-top: 5px;
}
.c_cart_check_list {
	height: 405px;
	margin-top: 20px;
	margin-bottom: 20px;
	overflow-y: auto;
}
.c_cart_check_prod {
	display: flex;
	border-bottom: 1px solid #e3e3e3;
	transition: all .2s ease;
}
.c_cart_check_prod:not(:first-child) { padding-top: 10px; }
.c_cart_check_prod:not(:last-child) { padding-bottom: 10px; }
.c_cart_check_prod:last-child {
	border-bottom: 0;
}
.c_cart_check_prod_ph {
	display: flex;
	width: 72px;
	height: 72px;
	margin-right: 5px;
	justify-content: center;
	align-items: center;
}
.c_cart_check_prod_ph img {
	width: 100%;
	max-height: 100%;
	object-fit: contain;
	font-family: 'object-fit: contain;'
}
.c_cart_check_prod_txt {
	width: calc(100% - 77px);
}
.c_cart_check_price {
	margin-top: 10px;
	color: #d84242;
	font-weight: bold;
	text-align: right;
}
.c_cart_check_quantity {
	line-height: 1;
	text-align: right;
}
.c_cart_check_quantity:not(:first-child) { margin-top: .4em; }
.c_cart_check_quantity:not(:last-child) { margin-bottom: .4em; }

/*  .c_detail_cart_box
------------------------------------- */
.c_detail_cart_box {
	margin-bottom: 20px;
	padding: 10px;
	box-shadow: 0 0 5px 0 rgba(0, 0, 0, .2);
}
.c_detail_cart_txt {
	margin-top: 5px;
}
.c_detail_cart_add {
	margin: 5px 0 20px;
	font-size: 1.2rem;
}
.c_detail_cart_order .c_btn {
	margin-top: 10px;
}
.c_detail_cart_num {
	display: flex;
	align-items: center;
	margin-top: 0.4em;
  font-size: 1.6rem;
}
.c_detail_cart_security {
	margin-top: 10px;
	font-size: 1.2rem;
}
.c_detail_cart_box.is_subtotal {
	background: #f5f5f5;
	border: 1px solid #e3e3e3;
	box-shadow: inherit;
}
.c_detail_cart_box.is_subtotal .c_detail_cart_txt {
	margin-top: 0;
	font-size: 1.4rem;
}
.c_detail_cart_box.is_confirm {
	border: 1px solid #e3e3e3;
	box-shadow: inherit;
}
@media screen and (max-width: 896px) {
	.c_detail_cart_box.is_subtotal {
		padding: 10px;
	}
}
/*  .c_detail_cart_tbl
------------------------------------- */
.c_detail_cart_tbl {
	width: 100%;
}
.c_detail_cart_tbl td {
	padding: .4em 0;
	line-height: 1;
}
.c_detail_cart_tbl_price {
	text-align: right;
}
.c_detail_cart_tbl_total {
	border-top: 1px solid #cacaca;
	vertical-align: top;
}
@media screen and (max-width: 896px) {
	.c_detail_cart_box {
		box-shadow: none;
	}
	.c_detail_cart_order {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.c_detail_cart_num {
		width: 100%;
	}
	.c_detail_cart_box .c_btn.is_mylist {
		width: calc(50% - 10px);
	}
}
@media screen and (max-width: 480px) {
	.c_detail_cart_box .c_btn.is_mylist {
		width: 100%;
	}
}

/*  .c_detail_box
------------------------------------- */
.c_detail_txt {
	margin-bottom: 20px;
}
.c_detail_code {
	margin-bottom: 10px;
}
.c_detail_info_box {
	padding: 10px 0;
}
.c_detail_info_box:not(:last-child) {
	border-bottom: 1px solid #e3e3e3;
}
.c_detail_info_ttl {
	margin-bottom: 5px;
	font-weight: bold;
}
.c_detail_info_tbl.is_hide {
	display: none;
}
.c_detail_info_bullets.is_detail_hide {
	display: none;
}
.c_detail_more {
	margin-top: 10px;
	color: #4371d0;
	text-align: right;
	cursor: pointer;
}
.c_detail_more_arrow {
	padding-left: 13px;
	display: inline-block;
	position: relative;
}
.c_detail_more_arrow:hover {
	color: #d84242;
}
.c_detail_more_arrow::before {
	position: absolute;
	top: 4px;
	left: 0;
	transform: rotate(-45deg);
	width: 5px;
	height: 5px;
	border-left: 2px solid #333;
	border-bottom: 2px solid #333;
	content: '';
}
.c_detail_more_arrow.open::before {
	transform: rotate(135deg);
	top: 7px;
}
@media screen and (max-width: 896px) {
	/*  .c_detail_box
	------------------------------------- */
	.c_detail_txt {
		margin-top: 20px;
	}
}
@media screen and (max-width: 568px) {
	/*  .c_keyword_box
	------------------------------------- */
	.c_keyword_box {
		display: none;
	}
}
@media screen and (max-width: 480px) {
	/*  .c_prod_box
	------------------------------------- */
	.c_prod_box:nth-child(n) {
		width: 100%;
		margin-right: 0;
		padding: 0;
	}
	.c_prod_list_box {
		padding: 10px 0;
	}
	/* .is_prod_flex_box */
	.c_prod_box.is_prod_flex_box .c_prod_list_box {
		display: flex;
	}
	.c_prod_box.is_prod_flex_box .c_prod_ph {
		width: 100px;
		margin-right: 10px;
	}
	.c_prod_box.is_prod_flex_box .c_prod_txt_box {
		width: calc(100% - 120px);
	}
}

/*----------------------------------------------
	tbl
---------------------------------------------*/
.c_tbl_cart {
	display: block;
	border-bottom: 1px solid #e3e3e3;
}
.c_tbl_cart tbody {
	display: block;
}
.c_tbl_cart tr {
  display: flex;
	border-top: 1px solid #e3e3e3;
}
.c_tbl_cart tr.c_tbl_cart_header {
	border-top: inherit;
}
.c_tbl_cart th {
	font-weight: normal;
	font-size: 1.3rem;
	text-align: center;
}
.c_tbl_cart th.c_tbl_cart_quantity {
	text-align: center;
}
.c_tbl_cart th,
.c_tbl_cart td {
	padding: 1.4em 0;
	vertical-align: top;
}
.c_tbl_cart_row {
	position: relative;
}
.c_tbl_cart_summary {
	display: flex;
	flex: 5 1 0%;
	padding-right: 1.4em;
}
.c_tbl_cart_summary_item {
	margin-right: 20px;
}
.c_tbl_cart_status {
	width: 210px;
}
@media screen and (max-width: 896px) {
	.c_tbl_cart td.c_tbl_cart_summary {
		padding-right: 0;
	}
}
.c_tbl_cart_summary_item:first-child {
	flex: 0 0 130px;
	margin-right: 20px;
	margin-bottom: 0!important;
}
.c_tbl_cart_quantity {
	flex: 1;
	text-align: center;
	width: 6em;
}
.c_tbl_cart_quantity > select {
	padding: .2em 1em;
}
.c_tbl_cart_option {
	flex: 1;
	line-height: 2;
	text-align: right;
	width: 8em
}
.c_tbl_cart_option2 {
	flex: 1;
}
.c_tbl_cart_important_point {
	padding-top: 2em;
	font-size: 1.2rem;
	line-height: 1.8;
}
/*  .is_confirm
------------------------------------- */
.c_tbl_cart.is_confirm td.c_tbl_cart_img {
  width: 16%;
}
.c_tbl_cart.is_confirm th,
.c_tbl_cart.is_confirm td {
  padding: 1.2em .6em;
}
/*  .is_purchaselist
------------------------------------- */
.c_tbl_cart.is_purchaselist {
	height: 100%;
	border: 0;
}
.c_tbl_cart.is_purchaselist tr {
	border-top: 0;
}

/* 【削除】ボタンをクリックした時 */
.c_tbl_cart_row.clicked {
	position: relative;
}
.c_tbl_cart_row.clicked::after {
	position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1;
  pointer-events: auto;
  content: "";
  background-color: rgba(255,255,255,.85)
}
/* 【元に戻す】ボタン */
.c_tbl_cart_undo {
	display: inline-block;
	visibility: hidden;
	opacity: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: 2;
	transform: translate(-50%, -50%);
	padding: .7em 1em;
	border: 1px solid #cacaca!important;
	border-radius: 2px;
	background: #fff!important;
	cursor: pointer;
	transition: all .3s;
}
.c_tbl_cart_undo svg {
	fill: #FF9900;
}
.c_tbl_cart_undo span {
	display: block;
	font-size: 1.2rem;
}
.clicked .c_tbl_cart_undo {
	visibility: visible;
	opacity: 1;
}

@media screen and (max-width: 896px) {
	.c_tbl_cart_header {
		display: none!important;
	}
	.c_tbl_cart tr {
		display: block;
	}
	.c_tbl_cart th,
	.c_tbl_cart td {
		padding: .8em 0;
	}
	.c_tbl_cart_quantity {
		width: 100%;
		padding: 0!important;
		text-align: left;
	}
	.c_tbl_cart_option {
		display: flex;
		align-items: center;
		width: 100%;
		text-align: left;
	}
	.c_tbl_cart_option > a {
		margin-right: .6em;
	}
	.c_tbl_cart_quantity > select {
    height: inherit;
    border: 1px solid #e3e3e3;
    background-color: #f6f6f6;
	}
	.c_tbl_cart.is_confirm {
		border-bottom: none;
	}
}

/*----------------------------------------------
	carousel
---------------------------------------------*/
.c_carousel {
	position: relative;
}
.c_carousel .slick-arrow {
	position: absolute;
	top: 0;
	bottom: 0;
	z-index: 2;
	width: 40px;
	height: 40px;
	margin: auto;
	border: 1px solid #d9d9d9;
	border-radius: 5px;
	background-color: #fafafa;
	font-size: 0;cursor: pointer;
	transition: all .2s ease;
}
.c_carousel .slick-arrow:hover {
	background-color: #edf9ff;
}
.c_carousel .slick-prev {
	left: 0;
}
.c_carousel .slick-next {
	right: 0;
}
.c_carousel .slick-arrow::before {
	display: block;
	right: 0;
	left: 0;
	width: 10px;
	height: 10px;
	margin: auto;
	border-bottom: 3px solid #333;
	content: '';
}
.c_carousel .slick-prev::before {
	transform: rotate(45deg);
	margin-right: 10px;
	border-left: 3px solid #333;
}
.c_carousel .slick-next::before {
	transform: rotate(-45deg);
	margin-left: 10px;
	border-right: 3px solid #333;
}
.c_carousel_more {
	display: none;
}
/* カルーセルではなく2列にする場合はこちら */
/*@media screen and (max-width: 568px) {
	.c_carousel {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.c_carousel_box {
		width: calc(50% - 10px);
		margin-bottom: 10px;
	}
	.c_carousel_box.is_carousel_hide {
		display: none;
	}
	.c_carousel_more {
		display: block;
		color: #4371d0;
		cursor: pointer;
	}
	.c_carousel_more_arrow {
		padding-left: 13px;
		display: inline-block;
		position: relative;
	}
	.c_carousel_more_arrow::before {
		position: absolute;
		top: 4px;
		left: 0;
		transform: rotate(-45deg);
		width: 5px;
		height: 5px;
		border-left: 2px solid #333;
		border-bottom: 2px solid #333;
		content: '';
		transition: all .2s ease;
	}
	.c_carousel_more_arrow.open::before {
		transform: rotate(135deg);
		top: 7px;
	}
}*/

/*----------------------------------------------
	gallery
---------------------------------------------*/
.c_detail_gallery {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	background-color: #fff;
}
.c_detail_gallery.is_hide {
	z-index: -1;
}

/*----------------------------------------------
	gallery(slick)
---------------------------------------------*/
.c_detail_gallery .slide-item {
	display: flex !important;
	position: relative;
	height: 300px;
	margin-bottom: 10px;
	align-items: center;
	justify-content: center;
}
.c_detail_gallery .slide-item > img {
	width: 80%;
	height: 80%;
	object-fit: contain;
	font-family: 'object-fit: contain;'
}
.c_detail_gallery .slick-arrow {
	position: absolute;
	top: 0;
	bottom: 0;
	z-index: 2;
	width: 34px;
	height: 34px;
	margin: auto;
	border: 1px solid #d9d9d9;
	border-radius: 5px;
	background-color: #fafafa;
	font-size: 0;
	cursor: pointer;
	transition: all .2s ease;
}
.c_detail_gallery .slick-arrow:hover {
	background-color: #edf9ff;
}
.c_detail_gallery .slick-arrow::before {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 8px;
	height: 8px;
	margin: auto;
	border-bottom: 2px solid #333;
	content: '';
}
.c_detail_gallery .slick-prev::before {
	left: 3px;
	transform: rotate(45deg);
	border-left: 2px solid #333;
}
.c_detail_gallery .slick-next::before {
	right: 3px;
	transform: rotate(-45deg);
	border-right: 2px solid #333;
}
.c_detail_gallery .slick-prev {
	left: 0;
}
.c_detail_gallery .slick-next {
	right: 0;
}
.c_detail_gallery .slick-dots {
	display: none !important;
}
.c_detail_gallery .c_detail_gallery_thumb {
	display: flex;
	flex-wrap: wrap;
}
.c_detail_gallery .thumbnail-item {
	width: calc((100% - 50px) / 6);
	margin-top: 10px;
	border: 1px solid #e3e3e3;
	cursor: pointer;
	transition: all .2s ease;
}
.c_detail_gallery .thumbnail-item img {
	width: 100%;
	height: 100%;
	max-height: 42px;
  object-fit: contain;
	font-family: 'object-fit: contain;';
}
@media all and (-ms-high-contrast:none){
  *::-ms-backdrop, .c_detail_gallery .thumbnail-item {
	width: calc((100% - 50px) / 6.05); /* IE11 */
	}
}
.c_detail_gallery .thumbnail-item:hover {
	opacity: .6;
}
.c_detail_gallery .thumbnail-item:not(:nth-child(6n)) {
	margin-right: 10px;
}
.c_detail_gallery .thumbnail-item.thumbnail-current {
	border: 2px solid #21569f;
}
@media screen and (max-width: 896px) {
	.c_detail_gallery .c_detail_gallery_thumb {
		display: none;
	}
	.c_detail_gallery .slide-item {
    height: 56vw;
    padding: 10px;
		text-align: center;
	}
	.c_detail_gallery .slide-item img {
		height: 50vw;
    width: 50vw;
	}
	.c_detail_gallery .slide-list,
	.c_detail_gallery .slide-track {
		height: 100px;
	}
	.c_detail_gallery .slick-dots {
		display: flex !important;
		transform: translateY(-10px);
		justify-content: center;
	}
	.c_detail_gallery .slick-dots li {
		margin: 0 5px;
	}
	.c_detail_gallery .slick-dots li button {
		width: 10px;
		height: 10px;
		border: 1px solid #d9d9d9;
		border-radius: 50px;
		background-color: #fafafa;
		font-size: 0;
	}
	.c_detail_gallery .slick-dots li.slick-active button {
		border-color: #1a4a8d;
		background-color: #21569f;
	}
}

/*----------------------------------------------
	.c_order_flow
---------------------------------------------*/
.c_order_flow {
	display: flex;
	margin-bottom: 16px;
	justify-content: space-around;
	align-items: center;
}
.c_order_flow > li {
	border-bottom: 3px solid #ccc;
	color: #ccc;
	font-weight: bold;
	font-size: 1.2rem;
	text-align: center;
}
.c_order_flow > li.c_order_flow_cart {
	border-bottom: 3px solid rgba(255,255,255,0);
}
.c_order_flow > li.active {
	border-bottom: 3px solid #fe9900;
	color: #fe9900;
}
.c_order_flow > li.active > svg {
	fill: #fe9900;
}
.c_order_flow > li > svg {
	width: 24px;
	height: 24px;
	fill: #ccc;
}
.c_order_flow > li.c_order_flow_arrow {
	border-bottom: inherit;
}
.c_order_flow > li.c_order_flow_arrow > svg {
	width: 12px;
	height: 12px;
}

/*----------------------------------------------
	.c_subtotal_box
---------------------------------------------*/
.c_subtotal_box {
	margin-bottom: 2em;
	padding: .4em 1em;
	background-color: #f5f5f5;
	text-align: right;
}
@media screen and (max-width: 896px) {
	.c_subtotal_box {
		width: calc(100% + 30px);
    margin: -15px -15px 0;
	}
}

/*----------------------------------------------
	.c_select_view
---------------------------------------------*/
.c_select_view {
	display: flex;
	margin-bottom: 1.6em;
}
.c_select_view > li {
	margin-right: 2em;
}
.c_select_view > li > button {
	display: flex;
	cursor: pointer;
}
.c_select_view > li > button.selected {
	color: #fe9900;
}
.c_select_view > li > button.selected svg {
	fill: #fe9900;
}
.c_select_view svg {
	width: 18px;
	height: 18px;
	margin-right: .4em;
	fill: #959595;
}

/*----------------------------------------------
	.c_address_list
---------------------------------------------*/
.c_address_list {
	padding: 1em;
	border: 1px solid #cacaca;
}
.c_address_list.selected {
  background-color: #FFFDF3;
}
.c_address_list_txt {
	margin-bottom: 0.8em;
	line-height: 1.7;
}
.l_address_lists.list_view .c_address_list_box {
	display: flex;
  flex-wrap: wrap;
}
.c_address_list_box:not(:first-child) { margin-top: .6em; }
.c_address_list_box:not(:last-child) { margin-bottom: .6em; }

.c_address_list_box > * {
	margin-right: 1em;
}
.c_address_list_btn {
	display: inline-block;
  margin-bottom: 1em;
	font-weight: bold;
}
.c_address_list_btn input {
	display: none;
}
.c_address_list_btn label {
	position: relative;
	padding: .4em 1.2em;
	border: 1px solid #a0a0a0;
	border-radius: 3px;
	cursor: pointer;
	transition: all .2s ease;
}

.c_address_list_btn label:hover {
	background-color: #d5d5d5;
	color: #333;
}
.c_address_list_btn input[type="radio"]:checked + label {
	background-color: #ffe785;
}
.c_address_list_btn input[type="radio"]:checked + label::after {
	display: inline-block;
	width: 11px;
	height: 11px;
  margin-left: .4em;
	background-image: url(../images/icon_circle_check.png);
	background-size: cover;
	content: "";
}
.c_address_list_option {
	display: flex;
}
.c_address_list_option > li {
	margin-right: .6em;
}

/*----------------------------------------------
	.c_tag_required
---------------------------------------------*/
.c_tag {
	margin-right: .6em;
	padding: .2em .4em;
	border-radius: 2px;
	font-size: 1rem;
	vertical-align: text-bottom;
}
.c_tag.is_required {
	background-color: #d84242;
	color: #fff;
}
.c_tag.is_optional {
	background-color: #a0a0a0;
	color: #fff;
}

/*----------------------------------------------
	.c_search_postal_code_btn
---------------------------------------------*/
.c_search_postal_code_btn {
	margin-left: 10px;
  width: 32px;
  height: 32px;
  border: 1px solid #d9d9d9;
  border-radius: 5px;
  background-color: #fafafa;
  font-size: 0;
  cursor: pointer;
  transition: all .2s ease;
}
.c_search_postal_code_btn > svg {
	width: 26px;
	height: 26px;
}
.c_search_postal_code_btn:hover {
  background-color: #edf9ff;
}

/*----------------------------------------------
	.c_external_link
---------------------------------------------*/
.c_external_link svg {
	width: .8em;
	height: .8em;
	margin: 0 .2em;
	fill: #4371d0;
}
.c_external_link:hover svg {
	fill: #d00;
}

/*----------------------------------------------
	.c_radio_ttl
---------------------------------------------*/
.c_radio_ttl {
	font-weight: bold;
}
.c_radio_ttl:not(:first-child) { margin-top: 1.6em; }
.c_radio_ttl:not(:last-child) { margin-bottom: 0; }
.c_radio_ttl input {
	vertical-align: -0.1em;
}
.c_radio_ttl label {
	cursor: pointer;
}

/*----------------------------------------------
	.c_delivery_date
---------------------------------------------*/
.c_delivery_date {
	color: #29b767;
	font-weight: bold;
	font-size: 1.6rem;
}

/*----------------------------------------------
	.c_continue_shopping_btn
---------------------------------------------*/
.c_continue_shopping_btn {
	margin: 3em auto;
}

/*----------------------------------------------
	.c_purchaselist_summary
---------------------------------------------*/
.c_purchaselist_summary {
	display: flex;
	flex-direction: column;
}
.c_purchaselist_summary_item {
	display: inline-flex;
	flex-wrap: wrap;
}
.c_purchaselist_summary_item:not(:first-child) { margin-top: .6em; }
.c_purchaselist_summary_item:not(:last-child) { margin-bottom: .6em; }
.c_purchaselist_summary_item > * {
	padding-right: 2em;
}
@media screen and (max-width: 896px) {
	.c_purchaselist_summary_item {
		flex-direction: column;
	}
	.c_purchaselist_summary_item:not(:first-child) { margin-top: .2em; }
	.c_purchaselist_summary_item:not(:last-child) { margin-bottom: .2em; }
	.c_purchaselist_summary_item > *:not(:first-child) { margin-top: .2em; }
	.c_purchaselist_summary_item > *:not(:last-child) { margin-bottom: .2em; }
}

/*----------------------------------------------
	.c_faq
---------------------------------------------*/
.c_faq {
	font-size: 1.6rem;
	line-height: 2;
}
.c_faq:first-of-type {
	padding-top: 1em;
	border-top: 1px solid #E3E3E3;
}
.c_faq_header {
	position: relative;
	margin-bottom: 1em;
	padding: .8em 1em;
	border-radius: 10px;
	background-color: #f5f5f5;
	color: #366bb3;
	font-weight: bold;
	cursor: pointer;
}
.c_faq_header > span {
	margin-right: .6em;
	padding: .2em .4em;
	border-radius: 5px;
	background-color: #366bb3;
	color: #fff;
	font-weight: normal;
	font-size: 2rem;
}
.c_faq_header::after {
  display: block;
  position: absolute;
  top: 0;
  right: 30px;
  bottom: 0;
  transform: rotate(45deg);
  width: 6px;
  height: 6px;
  margin: auto;
  border-right: 2px solid #333;
  border-bottom: 2px solid #333;
  content: '';
	transition: .2s;
}
.c_faq_header.is_open::after {
	transform:rotate(225deg);
}
.c_faq_inner {
	margin-bottom: 1em;
}
@media screen and (max-width: 896px) {
	.c_faq {
		font-size: 1.4rem;
	}
	.c_faq_header > span {
    padding: .4em;
    border-radius: 50%;
    font-size: 1.6rem;
    position: absolute;
    line-height: 0.8;
    top: -10px;
    left: -10px;
	}
	.c_faq_header {
    padding: .8em 3em .8em 1em;
	}
}

/*----------------------------------------------
	.c_screenshot
---------------------------------------------*/
.c_screenshot:not(:first-child) { margin-top: 2.4em; }
.c_screenshot:not(:last-child) { margin-bottom: 2.4em; }
.c_screenshot img {
	border: 1px solid #ccc;
}
.c_screenshot figcaption {
	margin-top: .6em;
	text-align: center;
}

/*----------------------------------------------
	.c_page_nav
---------------------------------------------*/
.c_page_nav {
	display: flex;
	flex-wrap: wrap;
}
.c_page_nav_item {
	width: 50%;
}
/*----------------------------------------------
	マイリスト関係
---------------------------------------------*/
.c_search_mylist {
	display: flex;
	position: relative;
}
.c_search_mylist_textbox {
	position: relative;
	margin-right: .2em;
	padding-left: 1.4em;
}
.c_search_mylist_icon {
	position: absolute;
	top: 2px;
	left: 2px;
	fill: #A0A0A0;
}

/*----------------------------------------------
	注文履歴関係
---------------------------------------------*/
.c_search_purchaselist {
	display: flex;
	position: relative;
  align-items: center;
}
.c_search_purchaselist_textbox {
	position: relative;
	margin-right: 20px;
	/*padding-left: 1.4em;*/
}
.c_search_purchaselist_textbox#search-purchaselist-date-from {
	margin-right: 0;
}
.c_search_purchaselist_icon {
	position: absolute;
	top: 2px;
	left: 2px;
	fill: #A0A0A0;
}
#search-purchaselist-order-num,
#search-purchaselist-item-name,
#search-purchaselist-date-from,
#search-purchaselist-to-date{
  height: 32px;
}

@media screen and (max-width: 896px) {
  .c_search_purchaselist_textbox {
    margin-right: 10px;
  }
}
@media screen and (max-width: 568px) {
  .c_search_purchaselist_textbox {
    margin-right: 0;
  }
}

/*----------------------------------------------
	書類（印刷ページ）関係
---------------------------------------------*/
/*  .c_document_ttl
------------------------------------- */
.c_document_ttl {
	padding: .4em;
	border: 3px solid #707070;
	font-weight: bold;
	font-size: 1.6rem;
	line-height: 1;
	text-align: center;
}

/*  .c_document_subttl
------------------------------------- */
.c_document_subttl {
	padding: .6em;
	border: 2px solid #707070;
	background: #f8f8f8;
	font-weight: bold;
	font-size: 1.4rem;
	line-height: 1;
}
.c_document_subttl.is_border {
	border: 0;
	border-bottom: 1px solid #707070;
	background-color: inherit;
	text-align: center;
}

/*  .c_document_tbl
------------------------------------- */
.c_document_tbl {
	border: 2px solid #707070;
}
.c_document_tbl th,
.c_document_tbl td {
	border: 1px solid #707070;
	vertical-align: top;
}
.c_document_tbl td {
	padding: 1em;
}
.c_document_tbl th {
	padding: .4em 1em;
	background-color: #F8F8F8
}
.c_document_tbl_quantity {
	width: 10%;
}
.c_document_tbl_unit {
	width: 15%;
}
.c_document_tbl_price {
	width: 20%;
}
.c_document_tbl_total {
	font-weight: bold;
}

/*  .c_document_remarks
------------------------------------- */
.c_document_remarks {
	padding-top: 1em;
	border-top: 1px solid #707070;
	font-size: 1.2rem;
	font-weight: normal;
}

/*  .c_document_handle
------------------------------------- */
.c_document_handle {
	width: 70%;
	border-bottom: 1px solid #707070;
	text-align: right;
}
#quotation .c_document_handle {
	width: 70%;
	border-bottom: 1px solid #707070;
	text-align: left!important;
  font-size: 1.5rem;
}

/*  .c_document_total_price
------------------------------------- */
.c_document_total_price {
	display: flex;
	padding-bottom: .6em;
	border-bottom: 3px solid #707070;
	justify-content: space-between;
	font-weight: bold;
}

/*  .c_document_date
------------------------------------- */
.c_document_date {
	padding: .6em;
}
.c_document_date dt,
.c_document_date dd {
	padding-top: .6em;
}
.c_document_date dt {
	float: left;
	font-weight: bold;
}
.c_document_date dd {
	padding-left: 8em;
}

/*----------------------------------------------
	領収書
---------------------------------------------*/
/*  .c_quotation_summary
------------------------------------- */
.c_quotation_summary {
	width: 100%;
}
.c_quotation_summary th {
	width: 20%;
	padding: .4em;
	text-align: left;
	font-size: 1.8rem;
	font-weight: normal;
	vertical-align: bottom;
}

.c_quotation_summary th {
	width: 20%;
	height: 3em;
	padding: .4em;
	border-bottom: 2px solid #000;
	font-size: 2rem;
	vertical-align: bottom;
}

.c_quotation_summary td {
	width: 80%;
	height: 3em;
	padding: .4em;
	border-bottom: 2px solid #000;
	font-size: 2rem;
	vertical-align: bottom;
}
@media screen and (max-width: 896px) {
	.c_quotation_summary th {
		width: 40%;
		font-size: 1.4rem;
	}
	.c_quotation_summary td {
		width: 60%;
		font-size: 1.4rem;
	}
}
/*  .c_quotation_company
------------------------------------- */
.c_quatation_company {
	display: flex;
	justify-content: space-between;
	margin-top: 2em;
	margin-bottom: 2em;
	padding: 1em;
	border: 2px solid #000;
}
.c_quatation_company_logo {
	width: 150px;
}
/*  .c_quatation_itemlist
------------------------------------- */
.c_quatation_itemlist {
	width: 100%;
	border: 1px solid #000;
}
.c_quatation_itemlist th,
.c_quatation_itemlist td {
	padding: .4em;
	border: 1px solid #000;
}
th.c_quatation_itemlist_name {
	width: 70%;
}
th.c_quatation_itemlist_quantity {
	width: 10%;
}
th.c_quatation_itemlist_price {
	width: 20%;
}
td.c_quatation_itemlist_quantity {
	text-align: center;
}
td.c_quatation_itemlist_price {
	text-align: right;
}
/*  .c_quatation_subtotal
------------------------------------- */
.c_quatation_subtotal {
	margin: .4em;
	text-align: right;
	font-size: 1.6em;
}
/*  .c_quatation_tax
------------------------------------- */
.c_quatation_tax {
	margin: .4em;
	text-align: right;
	font-size: 1.6em;
}

/*----------------------------------------------
	見積書
---------------------------------------------*/
/*  .c_document_tbl
------------------------------------- */
#quotation .c_document_tbl {
	border: 2px solid #707070;
  width: 100%;
}
#quotation .c_document_tbl_number{
  width: 2rem;
}
@media screen and (max-width: 896px) {
  #quotation .c_document_tbl_quantity{
    width: 5em!important;
  }
}
/*  .c_quotation_summary
------------------------------------- */

#quotation .c_quotation_summary {
	width: 100%;
  margin-top: 20px;
}
#quotation .c_quotation_summary th {
	width: 7em!important;
	padding: .4em;
	text-align: right;
	font-size: 1.5rem;
	font-weight: normal;
	vertical-align: bottom;
}
#quotation .c_quotation_summary td {
	width: inherit!important;
	height: 3em;
	padding: .4em;
	border-bottom: 1px solid #000;
	font-size: 1.5rem;
	vertical-align: bottom;
}
@media screen and (max-width: 896px) {
  #quotation .c_quotation_summary th,
  #quotation .c_quotation_summary td {
    font-size: 1.1rem;
  }
  
}
/*  .c_quotation_summary02
------------------------------------- */

#quotation .c_quotation_summary02 {
  margin: -20px 0 0 auto;
}
#quotation .c_quotation_summary02 th {
	width: 7em!important;
	padding: .4em;
	text-align: right;
	font-size: 1.5rem;
	font-weight: normal;
	vertical-align: bottom;
}
#quotation .c_quotation_summary02 td {
	width: inherit!important;
	padding: .4em;
	font-size: 1.5rem;
	vertical-align: bottom;
}
@media screen and (max-width: 896px) {
  #quotation .c_quotation_summary02_box{
  position: inherit;
  top: inherit;
  right: inherit;
}
#quotation .c_quotation_summary02 {
  margin: 0 0 0 auto;
}
  #quotation .c_quotation_summary02 th,
  #quotation .c_quotation_summary02 td {
    font-size: 1.1rem;
  }
  
}
/*  .l_document_summary_item1
------------------------------------- */
#quotation .l_document_summary_item1{
  width: 52%!important;
}
#quotation .l_document_summary_item2{
  width: 37%!important;
}
@media screen and (max-width: 896px) {
  #quotation .l_document_summary_item1{
    width: 100%!important;
  }
  #quotation .l_document_summary_item2{
    width: 50%!important;
    margin: 30px auto 0;
  }
}
@media screen and (max-width: 568px) {
  #quotation .l_document_summary_item2{
    width: 60%!important;}
  }
@media screen and (max-width: 480px) {
  #quotation .l_document_summary_item2{
    width: 80%!important;}
  }
@media screen and (max-width: 320px) {
  #quotation .l_document_summary_item2{
    width: 100%!important;
  }
}

/*  .c_document_txt
------------------------------------- */
.c_document_txt{
  margin-top: 5px;
  margin-left: 1rem;
}
