@charset "utf-8";
/*--------------------------------------------------*/
/*  ■z-index のルール                              */
/*       1～：上に戻るボタン・スライダー            */
/*      10～：左メニュー関連                        */
/*     100～：コンテンツのオーバーレイ              */
/*     101～：ドロップダウンメニュー                */
/*     201～：ポップアップ                          */
/*--------------------------------------------------*/


/*--------------------------------------------------*/
/*  リセット                                        */
/*--------------------------------------------------*/
html,
body,
h1,
h2,
h3,
h4,
h5,
h6,
header,
footer,
section,
div,
p,
ul,
ol,
li,
dl,
dt,
dd,
article,
table,
th,
td,
img,
form,
input,
textarea,
select,
button {
	margin: 0;
	padding: 0;
	color: #2a2a2a;
	font-size: 16px;
	font-weight: normal;
	font-style: normal;
	line-height: 1.6;
	list-style: none;
	word-break: break-all;
	border: none;
	border-collapse: collapse;
}

/*
*:not(input):not(textarea):not(select),
input[type=image],
input[type=file],
input[type=submit],
input[type=button],
input[type=reset] {
	-moz-user-select: none;
	-webkit-user-select: none;
}
*/
a:link {
	color: #1010ca;
}

a:visited {
	color: #1010ca;
}

a:hover {
	color: #f00000;
}

a:active {
	color: #f00000;
}

a:hover img {
	opacity: 0.8;
}

/*--------------------------------------------------*/
/*  共通スタイル                                    */
/*--------------------------------------------------*/
.clear:after {
	clear: both;
	display: block;
	height: 0;
	content: ".";
	visibility: hidden;
}

.focus {
	background: #ffffd0 !important;
}

.colorRed {
	color: #f00 !important;
}

.bold {
	font-weight: bold !important;
}

.hide {
	display: none !important;
}

/* add by hashimoto 2017/09/13 */
.showy2 {
	padding: 0 3px;
	background: #fff352;
}

ul.normal {
	margin-left: 20px;
	padding: 10px 20px 10px 25px;
}

ul.normal li {
	padding: 2px 0;
	list-style: disc;
}

h2[id^="no"] {
	margin-top: 30px !important;
	color: #da0000;
}

/* end */

.clr_000 {
	color: #000 !important;
}

.clr_fff {
	color: #fff !important;
}

.clr_f00 {
	color: #f00 !important;
}

.clr_00f {
	color: #00f !important;
}

.clr_0f0 {
	color: #0f0 !important;
}

.fw_no {
	font-weight: normal !important;
}

.fw_bo {
	font-weight: bold !important;
}

.fs_10 {
	font-size: 10px !important;
}

.fs_11 {
	font-size: 11px !important;
}

.fs_12 {
	font-size: 12px !important;
}

.fs_13 {
	font-size: 13px !important;
}

.fs_14 {
	font-size: 14px !important;
}

.fs_15 {
	font-size: 15px !important;
}

.fs_16 {
	font-size: 16px !important;
}

.fs_17 {
	font-size: 17px !important;
}

.fs_18 {
	font-size: 18px !important;
}

.fs_19 {
	font-size: 19px !important;
}

.fs_20 {
	font-size: 20px !important;
}

.fs_21 {
	font-size: 21px !important;
}

.fs_22 {
	font-size: 22px !important;
}

.fs_23 {
	font-size: 23px !important;
}

.fs_24 {
	font-size: 24px !important;
}

.fs_25 {
	font-size: 25px !important;
}

.fs_26 {
	font-size: 26px !important;
}

.fs_27 {
	font-size: 27px !important;
}

.fs_28 {
	font-size: 28px !important;
}

.fs_29 {
	font-size: 29px !important;
}

.fs_30 {
	font-size: 30px !important;
}

.fs_31 {
	font-size: 31px !important;
}

.fs_32 {
	font-size: 32px !important;
}

.fs_33 {
	font-size: 33px !important;
}

.fs_34 {
	font-size: 34px !important;
}

.fs_35 {
	font-size: 35px !important;
}

.fs_36 {
	font-size: 36px !important;
}

.ta_c {
	text-align: center !important;
}

.ta_l {
	text-align: left !important;
}

.ta_r {
	text-align: right !important;
}

.mt_0 {
	margin-top: 0px !important;
}

.mt_5 {
	margin-top: 5px !important;
}

.mt_10 {
	margin-top: 10px !important;
}

.mt_15 {
	margin-top: 15px !important;
}

.mt_20 {
	margin-top: 20px !important;
}

.mt_30 {
	margin-top: 30px !important;
}

.mt_40 {
	margin-top: 40px !important;
}

.mt_50 {
	margin-top: 50px !important;
}

.mt_100 {
	margin-top: 100px !important;
}

.mb_0 {
	margin-bottom: 0px !important;
}

.mb_5 {
	margin-bottom: 5px !important;
}

.mb_10 {
	margin-bottom: 10px !important;
}

.mb_15 {
	margin-bottom: 15px !important;
}

.mb_20 {
	margin-bottom: 20px !important;
}

.mb_30 {
	margin-bottom: 30px !important;
}

.mb_40 {
	margin-bottom: 40px !important;
}

.mb_50 {
	margin-bottom: 50px !important;
}

.mb_100 {
	margin-bottom: 100px !important;
}

.ml_0 {
	margin-left: 0px !important;
}

.ml_5 {
	margin-left: 5px !important;
}

.ml_10 {
	margin-left: 10px !important;
}

.ml_15 {
	margin-left: 15px !important;
}

.ml_20 {
	margin-left: 20px !important;
}

.ml_30 {
	margin-left: 30px !important;
}

.ml_40 {
	margin-left: 40px !important;
}

.ml_50 {
	margin-left: 50px !important;
}

.ml_100 {
	margin-left: 100px !important;
}

.mr_0 {
	margin-right: 0px !important;
}

.mr_5 {
	margin-right: 5px !important;
}

.mr_10 {
	margin-right: 10px !important;
}

.mr_15 {
	margin-right: 15px !important;
}

.mr_20 {
	margin-right: 20px !important;
}

.mr_30 {
	margin-right: 30px !important;
}

.mr_40 {
	margin-right: 40px !important;
}

.mr_50 {
	margin-right: 50px !important;
}

.mr_100 {
	margin-right: 100px !important;
}

.pt_0 {
	padding-top: 0px !important;
}

.pt_5 {
	padding-top: 5px !important;
}

.pt_10 {
	padding-top: 10px !important;
}

.pt_15 {
	padding-top: 15px !important;
}

.pt_20 {
	padding-top: 20px !important;
}

.pt_30 {
	padding-top: 30px !important;
}

.pb_0 {
	padding-bottom: 0px !important;
}

.pb_5 {
	padding-bottom: 5px !important;
}

.pb_10 {
	padding-bottom: 10px !important;
}

.pb_15 {
	padding-bottom: 15px !important;
}

.pb_20 {
	padding-bottom: 20px !important;
}

.pb_30 {
	padding-bottom: 30px !important;
}

.pl_0 {
	padding-left: 0px !important;
}

.pl_5 {
	padding-left: 5px !important;
}

.pl_10 {
	padding-left: 10px !important;
}

.pl_15 {
	padding-left: 15px !important;
}

.pl_20 {
	padding-left: 20px !important;
}

.pl_30 {
	padding-left: 30px !important;
}

.pr_0 {
	padding-right: 0px !important;
}

.pr_5 {
	padding-right: 5px !important;
}

.pr_10 {
	padding-right: 10px !important;
}

.pr_15 {
	padding-right: 15px !important;
}

.pr_20 {
	padding-right: 20px !important;
}

.pr_30 {
	padding-right: 30px !important;
}

.ime_act {
	ime-mode: active !important;
}

.ime_dis {
	ime-mode: disabled !important;
}

.po_re {
	position: relative !important;
}

.dsp_non {
	display: none !important;
}

.dsp_blc {
	display: block !important;
}

.dsp_tbl {
	display: table !important;
	width: 100%;
}

.dsp_cel {
	display: table-cell !important;
	vertical-align: middle;
}

.wrp_100 {
	width: 1000px;
	margin: 0 auto;
}

.wrp_120 {
	width: 1200px;
	margin: 0 auto;
}

.wrp_130 {
	width: 1300px;
	margin: 0 auto;
}

.tbl_2c {
	display: table;
	width: 1300px;
	margin: 0 auto;
}

.tbl_2c_l {
	display: table-cell;
	width: 200px;
	vertical-align: top;
}

.tbl_2c_r {
	display: table-cell;
	width: ;
	padding: 0 0 0 20px;
	vertical-align: top;
}

.tbl_3c {
	display: table;
	width: 1300px;
	margin: 0 auto;
}

.tbl_3c_l {
	display: table-cell;
	width: 200px;
	min-width: 200px;
	vertical-align: top;
}

.tbl_3c_c {
	display: table-cell;
	width: ;
	padding: 0 20px;
	vertical-align: top;
}

.tbl_3c_r {
	display: table-cell;
	width: 240px;
	vertical-align: top;
}

.ovr_hid {
	overflow: hidden !important;
}

.no_border {
	border: none !important;
}

.link {
	color: #1010ca;
	text-decoration: underline;
	cursor: pointer;
}

.link:hover {
	color: #f00000;
}

.ac_contents {
	display: none;
}

.ls_di li {
	list-style: disc;
}

.va_bottom {
	vertical-align: bottom !important;
}

/*--------------------------------------------------*/
/*  noscript                                        */
/*--------------------------------------------------*/
.warning {
	width: 800px;
	margin: 30px auto;
	padding: 20px 40px;
	font-size: 18px;
	line-height: 30px;
	background: #fffaff;
	border: 6px double #f00000;
}

.warning p {
	color: #f00000;
	margin: 0 0 10px -20px;
	font-size: 24px;
	font-weight: bold;
	line-height: 34px;
}

/*--------------------------------------------------*/
/*  注意喚起                                        */
/*--------------------------------------------------*/
.emergency_box {
	position: relative;
	max-width: 688px;
	margin: 0 auto 20px auto;
	padding: 5px 10px 5px 130px;
	background: #fffeff;
	border: 6px double #d00000;
}

.emergency_box.no_img {
	width: calc(100% - 52px);
	max-width: calc(100% - 52px);
	padding: 10px 20px;
}

.emergency_box img {
	position: absolute;
	top: calc(50% - 37px);
	left: 20px;
	width: 84px;
}

.emergency_box p {
	margin: 8px 20px;
	color: #2a2a2a;
	font-size: 15px;
	line-height: 21px;
}

.emergency_box p.title {
	margin: 5px 10px;
	color: #d00000;
	font-size: 20px;
	font-weight: bold;
	line-height: 28px;
}

.emergency_box p.img_warn {
	position: relative;
	margin: 0 10px;
	padding: 0 0 0 60px;
	line-height: 40px;
}

.emergency_box p.img_warn::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 40px;
	height: 40px;
	content: "";
	background-image: url("/img/icon/warn.png");
	background-repeat: no-repeat;
	background-size: contain;
	vertical-align: middle;
}

/*--------------------------------------------------*/
/*  新着あり                                        */
/*--------------------------------------------------*/
.notice_unread_icon {
	position: absolute;
	top: calc(50% - 24px);
	right: 72px;
	width: 30px;
	height: 36px;
	z-index: 1;
	padding: 4px 8px;
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	line-height: 18px;
	text-align: center;
	background: #f04070;
	border-radius: 4px;
	-webkit-animation: blink 1.0s ease-in-out infinite alternate;
	-moz-animation: blink 1.0s ease-in-out infinite alternate;
	animation: blink 1.0s ease-in-out infinite alternate;
}

.notice_unread_icon::before {
	position: absolute;
	top: 18px;
	left: 46px;
	z-index: 2;
	width: 0;
	height: 0;
	content: "";
	border-color: transparent transparent transparent #f04070;
	border-style: solid solid solid solid;
	border-width: 5px 0 5px 8.7px;
}

@-webkit-keyframes blink {
	0% {
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		opacity: 1;
	}
}

@-moz-keyframes blink {
	0% {
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		opacity: 1;
	}
}

@keyframes blink {
	0% {
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		opacity: 1;
	}
}

.notice_unread_num {
	display: block;
	position: absolute;
	top: -2px;
	right: 1px;
	width: 12px;
	height: 12px;
	padding: 2px;
	color: #fff;
	font-size: 12px;
	line-height: 1;
	text-align: center;
	background: #f00;
	border-radius: 50%;
}

.right_menu .notice_unread_num {
	top: 2px;
	right: 2px;
	width: 12px;
}

.right_menu .notice_unread_icon {
	display: none;
}

.notice_unread_num.double {
	width: 18px;
	border-radius: 8px;
}

/*--------------------------------------------------*/
/*  共通ボタン                                      */
/*--------------------------------------------------*/
a.red_btn,
button.red_btn,
.red_btn {
	display: block;
	margin: 0 auto;
	padding: 11px 0;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	text-shadow: -1px -1px 1px #606060;
	cursor: pointer;
	background: -webkit-linear-gradient(top, #ea3030, #ca0000);
	background: -moz-linear-gradient(top, #ea3030, #ca0000);
	background: linear-gradient(to bottom, #ea3030, #ca0000);
	border: 1px solid #b00000;
	border-radius: 4px;
}

.red_btn:hover {
	background: -webkit-linear-gradient(top, #e02a2a, #aa0000);
	background: -moz-linear-gradient(top, #e02a2a, #aa0000);
	background: linear-gradient(to bottom, #e02a2a, #aa0000);
}

a.gray_btn,
button.gray_btn,
.gray_btn {
	display: block;
	margin: 0 auto;
	padding: 11px 0;
	color: #2a2a2a;
	font-size: 18px;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	background: -webkit-linear-gradient(top, #faffff, #dadada);
	background: -moz-linear-gradient(top, #faffff, #dadada);
	background: linear-gradient(to bottom, #faffff, #dadada);
	border: 1px solid #808080;
	border-radius: 4px;
}

.gray_btn:hover {
	background: -webkit-linear-gradient(top, #faffff, #c0e0f0);
	background: -moz-linear-gradient(top, #faffff, #c0e0f0);
	background: linear-gradient(to bottom, #faffff, #c0e0f0);
}

a.orange_btn,
button.orange_btn,
.orange_btn {
	display: block;
	margin: 0 auto;
	padding: 11px 0;
	color: #3a3a3a;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	background: -webkit-linear-gradient(top, #fff090, #f0ca5a);
	background: -moz-linear-gradient(top, #fff090, #f0ca5a);
	background: linear-gradient(to bottom, #fff090, #f0ca5a);
	border: 1px solid #8a8a50;
	border-radius: 4px;
}

.orange_btn:hover {
	background: -webkit-linear-gradient(top, #fae080, #eaba4a);
	background: -moz-linear-gradient(top, #fae080, #eaba4a);
	background: linear-gradient(to bottom, #fae080, #eaba4a);
}

.normal_btn {
	width: 240px;
	padding: 14px 0;
	font-size: 20px;
}

.wide_btn {
	width: 320px;
	padding: 16px 0 !important;
	font-size: 20px;
}

.icon_btn {
	margin: 10px;
	font-size: 0;
	text-align: center;
}

.icon_btn li {
	display: inline-block;
	width: 80px;
	margin: 0 4px 8px 4px;
	font-size: 0;
}

.icon_btn li a {
	display: block;
	position: relative;
	padding: 10px 0 32px 0;
	color: #2a2a2a;
	font-size: 12px;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	background: -webkit-linear-gradient(top, #faffff, #dadada);
	background: -moz-linear-gradient(top, #faffff, #dadada);
	background: linear-gradient(to bottom, #faffff, #dadada);
	border: 1px solid #808080;
	border-radius: 4px;
}

.icon_btn li a i {
	font-size: 36px;
}

.icon_btn li a span {
	display: block;
	position: absolute;
	bottom: 10px;
	left: 0;
	width: 100%;
	font-size: 12px;
	font-weight: bold;
}

.icon_btn li a:hover {
	background: -webkit-linear-gradient(top, #faffff, #c0e0f0);
	background: -moz-linear-gradient(top, #faffff, #c0e0f0);
	background: linear-gradient(to bottom, #faffff, #c0e0f0);
}

/*--------------------------------------------------*/
/*  基本スタイル                                    */
/*--------------------------------------------------*/
body {
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", YuGothic, "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif;
}

#body {
	position: relative;
	width: 100%;
}

#body_overlay {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100;
	width: 100%;
	height: 120%;
	background-color: rgba(0, 0, 0, 0.7);
}

/*--------------------------------------------------*/
/*  固定配置                                        */
/*--------------------------------------------------*/
#return {
	position: fixed;
	right: 10px;
	bottom: 40px;
	z-index: 1;
}

#return.on_chatbot {
	bottom: 180px;
}

#return a {
	display: block;
	position: relative;
	width: 50px;
	height: 14px;
	padding: 30px 0 6px 0;
	color: #fff;
	font-size: 14px;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	background-color: rgba(0, 0, 0, 0.75);
	border-radius: 4px;
}

#return a::after {
	position: absolute;
	top: 7px;
	left: 16px;
	width: 0;
	height: 0;
	content: "";
	border-color: transparent transparent #fff transparent;
	border-style: solid solid solid solid;
	border-width: 0 9px 15.59px 9px;
}

#return a:hover {
	background-color: rgba(0, 0, 0, 0.6);
}

/*--------------------------------------------------*/
/*  入力フォーム共通                                */
/*--------------------------------------------------*/
form .input {
	height: 38px;
	margin: 0;
	padding: 0;
	border: 1px solid #b0b0b0;
}

form .input input {
	display: block;
	width: calc(100% - 20px);
	height: 18px;
	padding: 10px;
	font-size: 18px;
	line-height: 1;
	border: none;
	outline: none;
}

/*--------------------------------------------------*/
/*  ヘッダー                                        */
/*--------------------------------------------------*/
.header_inner {
	max-width: 1300px;
	min-width: 1000px;
	margin: 5px auto 0 auto;
}

#top_logo,
#top_logo img {
	width: 202px;
	height: 72px;
}

/* プライムロゴ用 */
#top_logo img#logo_primemember,
#header_l img#logo_primemember {
	width: auto;
	height: 62px;
	margin-top: 2px;
	margin-left: 8px;
}

#top_logo a,
#header_l a {
	display: flex;
	margin-bottom: 6px;
}

#top_tel {
	text-align: center;
}

#top_tel img {
	width: 280px;
}

#top_btn {
	width: 560px;
	/*	width: 545px; きっちりだとブラウザ縮小で崩れる*/
	height: 64px;
	font-size: 0;
	text-align: right;
}

#top_btn li {
	position: relative;
	display: inline-block;
	width: 72px;
	font-size: 0;
	border-right: 1px solid #eaeaea;
}

#top_btn li.cart {
	width: 180px;
}

#top_btn li:last-child {
	border-right: none;
}

#top_btn li p,
#top_btn li a {
	display: block;
	padding: 2px 0;
	color: #2a2a2a;
	font-size: 12px;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
}

#top_btn li p img,
#top_btn li a img {
	display: block;
	width: 72px;
	height: 46px;
	margin: 0 0 2px 0;
}

#top_btn li.cart a {
	position: relative;
	padding: 50px 10px 2px 72px;
}

#top_btn li.cart a img {
	position: absolute;
	top: 2px;
	left: 10px;
	width: 52px;
	height: 60px;
	margin: 0;
}

#top_btn li.cart a #cart_item {
	display: block;
	position: absolute;
	top: 8px;
	left: 17px;
	width: 48px;
	color: #000;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
}

#top_btn li.cart a #cart_price {
	display: block;
	position: absolute;
	top: 12px;
	right: 10px;
	width: 108px;
	color: #000;
	font-size: 22px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	white-space: nowrap;
}

#top_btn li p:hover,
#top_btn li a:hover {
	color: #f00000;
	text-decoration: underline;
}

#top_btn li p:hover img,
#top_btn li a:hover img {
	opacity: 0.7;
}

#top_btn li.cart a:hover #cart_price {
	color: #f00000;
}
#top_btn li .fa-user-plus {
	color: #f04070;
	font-size: 40px;
	display: block;
	line-height: 46px;
	text-align: center;
	width: 72px;
	margin-bottom: 2px;
  }
.search_desc {
	width: 220px;
	padding-left: 30px;
}

.search_desc div {
	position: relative;
	width: 200px;
	padding: 6px 0 3px 0;
	font-size: 13px;
	line-height: 17px;
	text-align: center;
	background: #fff;
	border: 1px solid #f05070;
	border-radius: 2px;
}

.search_desc div#one_line {
	line-height: 34px;
}

.search_desc div::before {
	position: absolute;
	top: 14px;
	right: -24px;
	width: 0;
	height: 0;
	content: "";
	border-color: transparent transparent transparent #f05070;
	border-style: solid solid solid solid;
	border-width: 8px 12px 8px 12px;
}

.search_desc div::after {
	position: absolute;
	top: 14px;
	right: -23px;
	width: 0;
	height: 0;
	content: "";
	border-color: transparent transparent transparent #fff;
	border-style: solid solid solid solid;
	border-width: 8px 12px 8px 12px;
}

.search_body .inner {
	position: relative;
	height: 34px;
	border: 3px solid #f05070;
	border-radius: 4px;
}

.search_body .search_input {
	width: calc(100% - 64px);
}

.search_body .search_input input {
	display: block;
	width: calc(100% - 20px);
	height: 20px;
	padding: 7px 10px;
	font-size: 20px;
	line-height: 1;
	border: none;
	border-radius: 4px;
	outline: none;
}

.search_body .search_submit {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 64px;
	height: 34px;
}

.search_body .search_submit input {
	display: block;
	border: none;
	width: 64px;
	padding: 7px 0;
	color: #fff;
	font-size: 20px;
	line-height: 1;
	text-align: center;
	background: #f04070;
}

.search_link {
	width: 320px;
	padding-left: 20px;
}

.search_link>p {
	padding: 2px 0;
	font-size: 14px;
	line-height: 18px;
}

.search_link>p span {
	color: #f00000;
	font-weight: bold;
}

.search_link div {
	font-size: 15px;
	font-weight: bold;
	line-height: 23px;
}

.search_link ul {
	font-size: 0;
}

.search_link ul li {
	display: inline-block;
	padding: 0 0 0 10px;
	font-size: 0;
}

.search_link ul li a {
	font-size: 13px;
	line-height: 17px;
}

#top_menu {
	position: relative;
	margin: 10px 0 0 0;
	font-size: 0;
	background: #eaeaea;
}

#top_menu>ul {
	display: table;
	width: 1300px;
	margin: 0 auto;
	font-size: 0;
	table-layout: fixed;
}

#top_menu>ul>li {
	display: table-cell;
	vertical-align: middle;
	border-left: 1px solid #fff;
}

#top_menu>ul>li:last-child {
	border-right: 1px solid #fff;
}

#top_menu .open_menu {
	position: relative;
	padding: 15px;
	font-size: 15px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	cursor: default;
}

#top_menu .open_menu::before {
	position: absolute;
	top: calc(50% - 7px);
	right: 8px;
	content: "\f0d7";
	font-family: FontAwesome;
	font-style: normal;
	font-size: 14px;
}

#top_menu li:hover .open_menu {
	color: #fff;
	background: #f04070;
}

#top_menu li:hover .open_menu::before {
	color: #f04070;
}

#top_menu li:hover .open_menu::after {
	position: absolute;
	bottom: 0;
	left: calc(50% - 8px);
	width: 0;
	height: 0;
	content: "";
	border-color: transparent transparent #fff transparent;
	border-style: solid solid solid solid;
	border-width: 8px 8px 8px 8px;
}

#top_menu .hide_menu {
	display: none;
	position: absolute;
	top: 45px;
	left: 0;
	z-index: 101;
	width: 100%;
	background: #fff;
}

#top_menu .hide_menu .img_menu {
	width: 1260px;
	margin: 20px auto;
	font-size: 0;
}

#top_menu .hide_menu .img_menu li {
	display: inline-block;
	width: 110px;
	margin: 0 15px;
	font-size: 0;
	vertical-align: top;
}

#top_menu .hide_menu .img_menu li a {
	display: block;
	padding: 20px 0;
	color: #2a2a2a;
	font-size: 13px;
	font-weight: bold;
	line-height: 17px;
	text-align: center;
	text-decoration: none;
}

#top_menu .hide_menu .img_menu li>a>img {
	display: block;
	width: 100%;
	margin: 0 0 10px 0;
}

#top_menu .hide_menu .img_menu li a:hover {
	color: #f00000;
	text-decoration: underline;
}

#top_menu .hide_menu .img_menu li.pickup {
	position: relative;
	width: 120px;
	margin: 0;
	padding: 20px 0 0 20px;
}

#top_menu .hide_menu .img_menu li.pickup.title::before {
	position: absolute;
	top: 0;
	left: 0;
	width: 1px;
	height: 100%;
	content: "";
	background: #eaeaea;
}

#top_menu .hide_menu .img_menu li.pickup.title::after {
	position: absolute;
	top: 0;
	left: 15px;
	content: "人気の商品";
	font-size: 15px;
	font-weight: bold;
	line-height: 1;
}

#top_menu .hide_menu .img_menu li.pickup a {
	width: 90px;
	padding: 0 15px;
}

#top_menu .hide_menu .img_menu li.pickup a>img {
	margin: 0 0 4px 0;
}

#top_menu .hide_menu .img_menu li.pickup a .name,
#top_menu .hide_menu .img_menu li.pickup a .review {
	display: block;
	color: #2a2a2a;
	font-size: 12px;
	line-height: 14px;
}

#top_menu .hide_menu .img_menu li.pickup a .review {
	font-weight: normal;
}

#top_menu .hide_menu .img_menu li.pickup a .star {
	display: block;
	margin: 2px 0 0 0;
}

#top_menu .hide_menu .img_menu li.pickup a .star img {
	margin: 0;
	vertical-align: bottom;
}

#top_menu .hide_menu .img_menu li.pickup a:hover {
	text-decoration: none;
}

#top_menu .hide_menu .img_menu li.pickup a:hover .name {
	color: #f00000;
	text-decoration: underline;
}

#top_menu .hide_menu .img_menu li.pickup a:hover .star {
	opacity: 0.8;
}

#top_menu .hide_menu .symptom_menu {
	width: 1300px;
	margin: 0 auto;
	font-size: 0;
	display: flex;
	flex-wrap: wrap;
}

#top_menu .hide_menu .symptom_menu>li {
	display: inline-block;
	width: 219px;
	padding: 20px;
	font-size: 0;
	border-bottom: 1px solid #c0c0c0;
	border-right: 1px solid #c0c0c0;
}

#top_menu .hide_menu .symptom_menu>li:nth-child(5n+1) {
	width: 218px;
	border-left: 1px solid #c0c0c0;
}

#top_menu .hide_menu .symptom_menu .title {
	display: block;
	position: relative;
	margin: 0 0 5px 0;
	color: #2a2a2a;
	font-size: 16px;
	font-weight: bold;
	line-height: 22px;
	text-decoration: none;
}

#top_menu .hide_menu .symptom_menu .title::after {
	position: absolute;
	top: calc(50% - 6.5px);
	right: 0;
	content: "全て見る";
	font-size: 13px;
	font-weight: normal;
	line-height: 1;
	text-decoration: underline;
}

#top_menu .hide_menu .symptom_menu .title:hover {
	color: #f00000;
	text-decoration: underline;
}

#top_menu .hide_menu .symptom_menu .dsp_tbl .image {
	width: 60px;
	padding: 0 20px 0 0;
}

#top_menu .hide_menu .symptom_menu .dsp_tbl .image a,
#top_menu .hide_menu .symptom_menu .dsp_tbl .image a img {
	display: block;
	width: 100%;
}

#top_menu .hide_menu .symptom_menu .dsp_tbl .text {
	height: 96px;
	vertical-align: top;
}

#top_menu .hide_menu .symptom_menu .dsp_tbl .text li {
	position: relative;
	width: 100%;
	height: 18px;
	margin: 3px 0;
	font-size: 14px;
	line-height: 18px white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-moz-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}

#top_menu .hide_menu .symptom_menu .dsp_tbl .text li.long_text {
	font-size: 12px;
}

#top_menu .hide_menu .symptom_menu .dsp_tbl .text li::before {
	position: absolute;
	top: calc(50% - 3px);
	left: 0;
	width: 0;
	height: 0;
	content: "";
	border-color: transparent transparent transparent #f00000;
	border-style: solid solid solid solid;
	border-width: 3.2px 3.2px 3.2px 3.2px;
}

#top_menu .hide_menu .symptom_menu .dsp_tbl .text li a {
	padding: 0 0 0 10px;
	color: #2a2a2a;
	text-decoration: none;
}

#top_menu .hide_menu .symptom_menu .dsp_tbl .text li a:hover {
	color: #f00000;
	text-decoration: underline;
}

#top_menu .hide_menu .menu_tbl {
	display: table;
	table-layout: fixed;
	width: 1260px;
	margin: 30px auto;
}

#top_menu .hide_menu .menu_tbl ul {
	display: table-cell;
	margin: 20px 10px 30px 10px;
	text-align: left;
	vertical-align: top;
}

#top_menu .hide_menu .menu_tbl ul li {
	line-height: 1;
}

#top_menu .hide_menu .menu_tbl ul li.prt {
	position: relative;
	padding: 0 0 3px 8px;
	font-size: 14px;
	font-weight: bold;
}

#top_menu .hide_menu .menu_tbl ul li.prt:not(:first-child) {
	margin: 20px 0 0 0;
}

#top_menu .hide_menu .menu_tbl ul li.prt::before {
	position: absolute;
	top: calc(50% - 5px);
	left: 0;
	width: 0;
	height: 0;
	content: "";
	border-color: transparent transparent transparent #f00000;
	border-style: solid solid solid solid;
	border-width: 3.2px 3.2px 3.2px 3.2px;
}

#top_menu .hide_menu .menu_tbl ul li.cld {
	padding: 13px 0 0 40px;
	font-size: 13px;
	background: url("/img/icon/menu_arrow_long.png") no-repeat 18px 0;
}

#top_menu .hide_menu .menu_tbl ul li.cld:last-child {
	background: url("/img/icon/menu_arrow_long_last.png") no-repeat 18px 0;
}

#top_menu .hide_menu .menu_tbl ul li,
#top_menu .hide_menu .menu_tbl ul li a {
	color: #2a2a2a;
	line-hegiht: 1;
}

#top_menu .hide_menu .menu_tbl ul li a:hover {
	color: #f00000;
}

/*--------------------------------------------------*/
/*  フッター                                        */
/*--------------------------------------------------*/
footer {
	margin: 40px 0 0 0;
	padding: 10px 0 0 0;
	background: #f4f4f4;
}

footer .dsp_tbl {
	position: relative;
	width: 1200px;
	margin: 20px auto;
}

footer .dsp_tbl .dsp_cel {
	width: 240px;
	vertical-align: top;
}

footer .dsp_tbl .dsp_cel .title {
	padding: 20px 0 0 0;
	font-size: 15px;
	font-weight: bold;
	line-height: 21px;
}

footer .dsp_tbl .dsp_cel li {
	padding: 3px 0;
	line-height: 1;
}

footer .dsp_tbl .dsp_cel li.prt p,
footer .dsp_tbl .dsp_cel li.prt a {
	position: relative;
	padding: 0 0 0 22px;
	color: #2a2a2a;
	font-size: 13px;
	line-height: 15px;
	text-decoration: none;
	cursor: pointer;
}

footer .dsp_tbl .dsp_cel li.prt p::before,
footer .dsp_tbl .dsp_cel li.prt a::before {
	position: absolute;
	top: calc(50% - 3.2px);
	left: 14px;
	width: 0;
	height: 0;
	content: "";
	border-color: transparent transparent transparent #f00000;
	border-style: solid solid solid solid;
	border-width: 3.2px 3.2px 3.2px 3.2px;
}

footer .dsp_tbl .dsp_cel li.cld {
	height: 12px;
	padding: 5px 0 3px 0;
	line-height: 1;
	background: url("/img/icon/menu_arrow.png") no-repeat 30px 0;
}

footer .dsp_tbl .dsp_cel li:last-child.cld {
	background: url("/img/icon/menu_arrow_last.png") no-repeat 30px 0;
}

footer .dsp_tbl .dsp_cel li:last-child {
	padding-bottom: 20px;
}

footer .dsp_tbl .dsp_cel li.cld p,
footer .dsp_tbl .dsp_cel li.cld a {
	padding: 0 0 0 50px;
	color: #2a2a2a;
	font-size: 12px;
	line-height: 1;
	text-decoration: none;
}

footer .dsp_tbl .dsp_cel li p:hover,
footer .dsp_tbl .dsp_cel li a:hover {
	color: #f00000;
	text-decoration: underline;
}

.footer_logo {
	position: absolute;
	bottom: 10px;
	right: 0;
}

.footer_logo img {
	width: 180px;
}

#copy_right {
	padding: 30px 0 40px 0;
	text-align: center;
	background: #fff;
}

#copy_right p {
	padding: 3px 0;
	color: #404040;
	font-size: 13px;
	line-height: 19px;
}

/*--------------------------------------------------*/
/*  パンくずリスト                                  */
/*--------------------------------------------------*/
.breadcrumb {
	width: 1260px;
	margin: 20px auto;
	font-size: 0;
}

.breadcrumb.prd {
	margin: 5px auto 5px auto;
}

.breadcrumb.prd:first-child {
	margin-top: 20px;
}

.breadcrumb li {
	display: inline-block;
	color: #2a2a2a;
	font-size: 14px;
	line-height: 18px;
}

.breadcrumb li:not(:last-child):after {
	display: inline-block;
	content: "\f105";
	font-family: FontAwesome;
	font-style: normal;
	padding: 0 10px;
	color: #707070;
}

.breadcrumb li a {
	text-decoration: none;
}

.breadcrumb li p {
	display: inline;
	color: #2a2a2a;
	font-size: 14px;
	line-height: 18px;
}

.breadcrumb li:first-child a:before {
	display: inline-block;
	content: "\f015";
	font-family: FontAwesome;
	font-style: normal;
}

.breadcrumb li a:hover,
.breadcrumb li:first-child a:hover::before {
	text-decoration: underline;
}

/*--------------------------------------------------*/
/*  左メニュー                                      */
/*--------------------------------------------------*/
.left_title {
	position: relative;
	padding: 12px 15px;
	color: #2a2a2a;
	font-size: 14px;
	font-weight: bold;
	line-height: 18px;
	background: #fcfcfc;
	border: 1px solid #b0b0b0;
	border-bottom: none;
}

.left_title::after {
	position: absolute;
	bottom: 10px;
	left: 12px;
	width: 176px;
	height: 2px;
	content: "";
	background: #909090;
}

.left_title.search {
	padding: 16px 20px 22px 44px;
}

.left_title.search::before {
	position: absolute;
	top: calc(50% - 16px);
	left: 17px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f002";
	color: #2a2a2a;
	font-size: 22px;
	font-weight: normal;
	line-height: 1;
}

.left_link_block {
	margin: 0 0 20px 0;
}

.left_link_block a {
	display: block;
	border: 1px solid #b0b0b0;
	border-top: none;
}

.left_link_block a img {
	display: block;
	width: 99%;
	margin: 0 auto;
}

.left_menu {
	position: relative;
	margin: 0 0 20px 0;
}

.left_menu.normal_menu li a,
.left_menu li.main_category>a {
	display: block;
	position: relative;
	padding: 7px 20px;
	font-size: 14px;
	line-height: 1;
	text-decoration: none;
	background: #fafafa;
	border-left: 1px solid #b0b0b0;
	border-right: 1px solid #b0b0b0;
}

.left_menu.normal_menu li:last-child a,
.left_menu li.main_category:last-child>a {
	padding: 7px 20px 6px 20px;
	border-bottom: 1px solid #b0b0b0;
}

.left_menu.normal_menu li a::after,
.left_menu li.main_category>a::after {
	position: absolute;
	top: calc(50% - 6px);
	right: 10px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f054";
	color: #b0b0b0;
	font-size: 10px;
	line-height: 12px;
}

.left_menu.normal_menu li:hover a {
	text-decoration: underline;
}

.left_menu:not(.normal_menu) li.main_category:hover>a {
	padding: 6px 20px;
	background: #fff;
	border-top: 1px solid #b0b0b0;
	border-bottom: 1px solid #b0b0b0;
	border-right: 1px solid #fff;
}

.left_menu.normal_menu li:hover a::after,
.left_menu li.main_category:hover>a::after {
	right: 5px;
	color: #f00000;
	font-size: 12px;
}

.left_menu:not(.normal_menu) li.main_category:hover>a::before {
	position: absolute;
	top: 0;
	right: -1px;
	z-index: 11;
	width: 1px;
	height: 26px;
	content: "";
	background: #fff;
}

.left_menu .sub_category {
	display: none;
	position: absolute;
	top: -57px;
	left: 199px;
	z-index: 10;
	width: 460px;
	height: 520px;
	padding: 20px;
	background: #fff;
	border: 1px solid #b0b0b0;
	box-shadow: 4px 4px 4px 0 rgba(0, 0, 0, 0.4);
}

.left_menu .sub_category.bottom {
	top: auto;
	bottom: 0;
}

.left_menu .sub_category .title {
	padding: 0 0 10px 0;
	color: #e00000;
	font-size: 28px;
	line-height: 1;
}

.left_menu .sub_category a {
	display: block;
	position: relative;
	padding: 4px 20px;
	font-size: 16px;
	line-height: 22px;
	text-decoration: none;
}

.left_menu .sub_category a::before {
	position: absolute;
	top: calc(50% - 6px);
	left: 10px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f0da";
	font-size: 12px;
	line-height: 1;
}

.left_menu .main_category:hover>a,
.left_menu .sub_category a:hover {
	color: #f00000;
}

.left_menu .main_category:hover>a {
	font-weight: bold;
}

.left_menu .main_category a:hover {
	text-decoration: underline;
}

.tbl_3c_l .side_banner {
	display: block;
	width: 200px;
	margin: 0 0 10px 0;
}

.tbl_3c_l .side_banner img {
	display: block;
	width: 200px;
}

/*--------------------------------------------------*/
/*  右メニュー                                      */
/*--------------------------------------------------*/
.tbl_3c_r .side_banner {
	display: block;
	width: 240px;
	margin: 0 0 10px 0;
}

.tbl_3c_r .side_banner img {
	display: block;
	width: 240px;
}

.right_menu {
	width: 210px;
	padding: 13px 13px;
	background: #f0f0f0;
	border: 2px solid #e0e0e0;
	border-radius: 4px;
}

.right_menu .title {
	position: relative;
	padding: 4px 0;
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
}

.right_menu>.title {
	padding: 3px 50px 3px 0;
	line-height: 20px;
}

.right_menu .title a {
	position: absolute;
	top: calc(50% - 6px);
	right: 0;
	font-size: 12px;
}

.right_menu .title #tgl_caption {
	position: absolute;
	bottom: 6px;
	right: 0;
	color: #1010ca;
	font-size: 12px;
	line-height: 1;
	text-decoration: underline;
}

.right_menu .title #tgl_caption:hover {
	color: #f00000;
}

.right_menu .title #tgl_caption.open::after {
	content: "閉じる▲";
}

.right_menu .title #tgl_caption.close::after {
	content: "開く▼";
}

.right_box {
	margin: 0 0 30px 0;
	padding: 15px 20px;
	background: #fff;
	border-radius: 2px;
}

.right_box .title {
	margin: 0 0 20px 0;
	font-size: 16px;
	text-align: center;
}

.right_box p {
	font-size: 12px;
	line-height: 18px;
}
.right_box.push_link {
    text-align: center;
    padding: 15px 10px;
}
.right_box .input {
	height: 25px;
	margin: 0 0 10px 0;
}

.right_box .input input {
	width: calc(100% - 12px);
	height: 13px;
	padding: 6px;
	color: #2a2a2a;
	font-size: 13px;
}

.right_box .gray_btn {
	width: 120px;
	margin: 20px auto 20px auto;
	padding: 10px 0;
	color: #2a2a2a;
	font-size: 14px;
}

.right_box.login {
	padding: 15px 10px;
}

.right_box.login .user_name {
	margin: 10px 0 20px 0;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	vertical-align: bottom;
}

.right_box.login .user_point {
	color: #e00000;
	font-size: 26px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	vertical-align: bottom;
}

.right_box.login .user_name span,
.right_box.login .user_point span {
	padding: 0 0 0 4px;
	font-size: 13px;
	font-weight: normal;
}

.right_box.login ul {
	margin: 20px 0;
	font-size: 0;
	text-align: center;
}

.right_box.login ul li {
	display: inline-block;
	width: 54px;
	margin: 4px;
	vertical-align: top;
}

/* 1〜4個目だけ margin を上書き */
.right_box.login ul li:nth-child(-n+4) {
	margin: 6px;
}

.right_box.login ul li a {
	display: block;
	position: relative;
	width: 52px;
	height: 12px;
	padding: 36px 0 4px 0;
	color: #2a2a2a;
	font-size: 11px;
	font-weight: bold;
	line-height: 1;
	text-decoration: none;
	background: -webkit-linear-gradient(top, #faffff, #dadada);
	background: -moz-linear-gradient(top, #faffff, #dadada);
	background: linear-gradient(to bottom, #faffff, #dadada);
	border: 1px solid #808080;
	border-radius: 2px;
}

.right_box.login ul li:nth-child(4) a,
.right_box.login ul li:nth-child(5) a {
	font-size: 10px;
}

.right_box.login ul li a i {
	position: absolute;
	top: 4px;
	left: 0;
	width: 100%;
	font-size: 28px;
	font-weight: normal;
	text-align: center;
}

.right_box.login ul li a i.fa-heart {
	font-family: "FontAwesome";
	font-weight: 900;
	font-size: 26px;
	font-style: initial;
	padding-top: 2px;
}

.right_box.login ul li a:hover {
	background: -webkit-linear-gradient(top, #faffff, #c0e0f0);
	background: -moz-linear-gradient(top, #faffff, #c0e0f0);
	background: linear-gradient(to bottom, #faffff, #c0e0f0);
}

.right_box .ta_c a {
    color: #1010ca;
    text-decoration: underline;
    cursor: pointer;
}
.right_box .ta_c a:hover {
    color: #f00000;
}

.right_menu>ul {
	position: relative;
	margin: 0 0 30px 0;
}

.right_menu .check_list li {
	margin: 0 0 2px 0;
}

.right_menu .check_list li a {
	display: table;
	position: relative;
	width: calc(100% - 10px);
	padding: 10px 5px;
	text-decoration: none;
	background: #fff;
	border: 1px solid #fff;
}

.right_menu .check_list li a::after {
	position: absolute;
	bottom: 0;
	right: 10px;
	color: #1010ca;
	font-size: 11px;
	content: "詳細を見る";
	text-decoration: underline;
}

.right_menu .check_list li a .dsp_cel {
	height: 75px;
	padding: 5px 5px 5px 0;
	vertical-align: top;
}

.right_menu .check_list li a .img {
	width: 84px;
	padding: 5px;
	vertical-align: middle;
}

.right_menu .check_list li a .img img {
	display: block;
	width: auto;
	height: auto;
	max-width: 84px;
	max-height: 70px;
	margin: 0 auto;
}

.right_menu .check_list li a .name {
	display: block;
	max-height: 30px;
	margin: 4px 0 8px 0;
	color: #2a2a2a;
	font-size: 12px;
	line-height: 15px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.right_menu .check_list li a .price {
	display: block;
	color: #e00000;
	font-size: 12px;
}

.right_menu .check_list li a:hover {
	border-color: #f04070;
}

.right_menu .check_list li a:hover::after {
	color: #f00000;
}

.right_menu .info_list.close {
	max-height: 180px;
	overflow: auto;
}

.right_menu .info_list li a {
	display: block;
	position: relative;
	padding: 12px 20px 8px 10px;
	color: #2a2a2a;
	font-size: 14px;
	line-height: 18px;
	background: #fff;
	text-decoration: none;
	border-bottom: 1px solid #eaeaea;
}

.right_menu .info_list li a time {
	display: block;
	padding: 0 0 5px 0;
	font-size: 13px;
	font-weight: bold;
	line-height: 1;
}

.right_menu .info_list li:last-child a {
	border-bottom: none;
}

.right_menu .info_list li a::after {
	position: absolute;
	top: calc(50% - 7px);
	right: 5px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f054";
	color: #b0b0b0;
	font-size: 14px;
	font-weight: normal;
	line-height: 1;
}

.right_menu .info_list li a:hover {
	background: #fff0ff;
}

.right_menu .info_list li a:hover::after {
	color: #f04070;
}

/*--------------------------------------------------*/
/*  コンテンツ見出し＋更新日                        */
/*--------------------------------------------------*/
h1:not(#top_logo) {
	position: relative;
	margin: 0 0 10px 0;
	font-size: 26px;
	font-weight: bold;
	line-height: 36px;
	border-bottom: 1px solid #dadada;
}

h2 {
	position: relative;
	margin: 0 0 5px 0;
	font-size: 20px;
	font-weight: bold;
	line-height: 28px;
	border-bottom: 1px solid #dadada;
}

h2.search {
	padding: 0 0 0 36px;
}

h2.search::before {
	position: absolute;
	top: calc(50% - 18px);
	left: 0;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f002";
	color: #2a2a2a;
	font-size: 28px;
	font-weight: normal;
	line-height: 1;
}

h2.obi {
	position: relative;
	margin: 20px -10px 10px -10px;
	padding: 10px 10px 10px 34px;
	font-size: 20px;
	font-weight: bold;
	line-height: 28px;
	background: #eaeaea;
	border: none;
}

h2.obi::before {
	position: absolute;
	left: 12px;
	top: calc(50% - 14px);
	width: 10px;
	height: 28px;
	content: "";
	background: #f05070;
}

h3 {
	margin: 20px 0 5px 0;
	font-size: 20px;
	font-weight: bold;
	line-height: 26px;
}

h3.square {
	margin: 20px -5px 5px -10px;
	padding: 10px 10px 10px 10px;
	border-bottom: 1px solid #b0b0b0;
}

h3.square::before {
	margin: 0 10px 0 0;
	content: "◆";
	font-weight: normal;
}

.update_date {
	position: absolute;
	bottom: 6px;
	right: 10px;
	font-size: 14px;
	line-height: 1;
}

/*--------------------------------------------------*/
/*  スライダー                                      */
/*--------------------------------------------------*/
.main_slider {
	width: 820px;
	margin: 0 !important;
	padding: 0 !important;
}

.main_slider img {
	width: 820px;
}

.main_slider .slick-prev,
.main_slider .slick-next {
	top: calc(50% - 20px);
	z-index: 1;
	width: 40px;
	height: 40px;
	color: transparent;
	outline: none;
	background-color: rgba(104, 104, 104, 0.6);
	border-radius: 100%;
}

.main_slider .slick-prev {
	left: -10px;
}

.main_slider .slick-next {
	right: -10px;
}

.main_slider .slick-prev::before,
.main_slider .slick-next::before {
	position: absolute;
	top: 2px;
	width: 36px;
	height: 36px;
	font-family: FontAwesome;
	font-style: normal;
	color: #fff;
	font-size: 36px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
	opacity: 0.8;
}

.main_slider .slick-prev::before {
	left: 0;
	content: "\f104";
}

.main_slider .slick-next::before {
	right: 0;
	content: "\f105";
}

.main_slider_navi {
	width: 820px;
	margin: 0 auto 20px auto;
	font-size: 0;
}

.main_slider_navi li {
	display: inline-block;
	width: 164px !important;
	padding: 12px 0 0 0;
	font-size: 0;
	outline: none;
}

.main_slider_navi li p {
	position: relative;
	display: block;
	width: 156px;
	border: 4px solid #fff;
}

.main_slider_navi .slick-current p {
	border-color: #f04070;
}

.main_slider_navi .slick-current p::before {
	position: absolute;
	top: -24px;
	left: calc(50% - 12px);
	width: 0;
	height: 0;
	content: " ";
	border-color: transparent transparent #f04070 transparent;
	border-style: solid solid solid solid;
	border-width: 12px 12px 12px 12px;
}

.main_slider_navi li img {
	display: block;
	width: 100%;
}

.main_slider li:not(:first-child),
.main_slider_navi li:not(:first-child) {
	display: none;
}

.prd_slider {
	position: relative;
	/*
	width: 840px;
*/
	width: 730px;
	margin: 10px auto 20px auto;
	padding: 0 35px;
	font-size: 0;
}

.prd_slider>li {
	/*
	width: 168px;
*/
	width: 146px;
	outline: none;
}

.recommend_category .prd_slider {
	width: 840px;
}

.recommend_category .prd_slider>li {
	width: 168px;
}

.prd_slider .slick-prev,
.prd_slider .slick-next {
	display: block;
	top: calc(50% - 42px);
	z-index: 1;
	color: transparent;
	width: 28px;
	height: 84px;
	font-size: 0;
	cursor: pointer;
	background: #f0f0f0;
	border: 1px solid #909090;
	border-radius: 2px;
	outline: none;
}

.prd_slider .slick-prev {
	left: 0;
}

.prd_slider .slick-next {
	right: 0;
}

.prd_slider .slick-prev::before,
.prd_slider .slick-next::before {
	position: absolute;
	top: 34px;
	width: 28px;
	font-family: FontAwesome;
	font-style: normal;
	color: #404040;
	font-size: 16px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
}

.prd_slider .slick-prev::before {
	right: 0;
	content: "\f053";
}

.prd_slider .slick-next::before {
	left: 0;
	content: "\f054";
}

.prd_slider .slick-prev:hover,
.prd_slider .slick-next:hover {
	background: #e0e0e0;
}

.prd_slider .slick-prev button,
.prd_slider .slick-next button {
	font-size: 0;
}

.prd_slider .slick-prev.slick-disabled,
.prd_slider .slick-next.slick-disabled {
	cursor: default;
	background: #fefefe;
	border: 1px solid #c0c0c0;
}

.prd_slider .slick-prev.slick-disabled::before,
.prd_slider .slick-next.slick-disabled::before {
	color: #c0c0c0;
}

/* おすすめバナー */
.minbanner_slider {
	width: 730px;
	margin: 10px auto;
}

.slick-initialized .slick-slide.bnr_box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.minbanner_slider .bnr_box a {
	width: 49%;
	margin-bottom: 10px;
}

.minbanner_slider .slick-prev,
.minbanner_slider .slick-next {
	display: block;
	top: calc(50% - 50px);
	z-index: 1;
	color: transparent;
	width: 28px;
	height: 84px;
	font-size: 0;
	cursor: pointer;
	background: #f0f0f0;
	border: 1px solid #909090;
	border-radius: 2px;
	outline: none;
}

.minbanner_slider .slick-prev::before,
.minbanner_slider .slick-next::before {
	position: absolute;
	top: 34px;
	width: 28px;
	font-family: FontAwesome;
	font-style: normal;
	color: #404040;
	font-size: 16px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
}

.minbanner_slider .slick-prev {
	left: -40px;
}

.minbanner_slider .slick-next {
	right: -40px;
}

.minbanner_slider .slick-prev::before {
	right: 0;
	content: "\f053";
}

.minbanner_slider .slick-next::before {
	left: 0;
	content: "\f054";
}

.minbanner_slider .slick-prev.slick-disabled,
.minbanner_slider .slick-next.slick-disabled {
	cursor: default;
	background: #fefefe;
	border: 1px solid #c0c0c0;
}

h2.recommendation_banner {
	margin: 0 0 10px 5px;
	padding: 5px;
}

/*--------------------------------------------------*/
/*  ピックアップ商品                                */
/*--------------------------------------------------*/
.prd_box {
	padding: 0 20px;
	font-size: 0;
}

.ftr_prd {
	display: inline-block;
	width: 134px;
	margin: 0 5px;
	font-size: 0;
	vertical-align: top;
	overflow: hidden;
	outline: none;
}

.ftr_prd a {
	text-decoration: none;
}

.ftr_prd .prd_img,
.ftr_prd .prd_img img,
.ftr_prd .prd_nam,
.ftr_prd .prd_dsc,
.ftr_prd .prd_prc,
.ftr_prd .prd_rev {
	display: block;
}

.ftr_prd .prd_img {
	border: 1px solid #c0c0c0;
}

.ftr_prd .prd_img:hover {
	border: 1px solid #f00000;
}

.ftr_prd .prd_img img {
	width: 100%;
}

#ppz_item_main .ftr_prd .prd_img img {
	max-width: 124px !important;
}

.ftr_prd .prd_nam {
	max-height: 40px;
	margin: 6px 4px;
	color: #1010ca;
	font-size: 16px;
	line-height: 20px;
	text-decoration: underline;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.ftr_prd .prd_dsc {
	max-height: 72px;
	margin: 0 4px;
	color: #2a2a2a;
	font-size: 14px;
	line-height: 18px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
}

.ftr_prd .prd_prc {
	padding: 5px 4px;
	color: #e00000;
	font-size: 16px;
	line-height: 20px;
	text-align: center;
	text-decoration: none;
}
.ftr_prd .prd_prc strong{
	font-size: 1.3em;
	font-weight: bold;
}
.ftr_prd .prd_rev {
	color: #2a2a2a;
	font-size: 11px;
	line-height: 1;
	text-align: center;
	text-decoration: none;
}

.ftr_prd .prd_rev span {
	display: block;
}

.ftr_prd .prd_rev span.star img {
	display: block;
	margin: 0 auto;
}

.ftr_prd .prd_nam:hover,
.ftr_prd .prd_prc:hover,
.ftr_prd .prd_rev:hover {
	color: #f00000;
}

.ftr_prd a:hover .prd_nam {
	color: #f00000;
}

.ftr_prd a:hover .prd_img {
	border: 1px solid #f00000;
}

.ftr_prd a:hover .prd_img img {
	opacity: 0.8;
}

/* 20200705修正 */
.ranking_box li.ftr_prd_new {
	width: 126px;
}

.ftr_prd.ftr_prd_new .prd_img img {
	height: auto;
}

.ranking_box li.ftr_prd_new ul li {
	display: inline-block;
	width: auto;
	margin: 3px 6px 3px 0;
	padding: 5px;
	color: #404040;
	font-size: 12px;
	line-height: 1;
	border: 1px solid #808080;
	border-radius: 2px;
}
/* sl0の時タグ非表示 */
.sl0 .ranking_box li.ftr_prd_new ul {
    display: none;
}
.ranking_box .ftr_prd.ftr_prd_new .prd_prc {
	padding: 3px 0;
}

.ftr_prd.ftr_prd_new .prd_rev span.star {
	width: 74px;
}

.ftr_prd.ftr_prd_new .prd_rev span.star img {
	width: 100%;
	height: auto;
}

.ftr_prd.ftr_prd_new .prd_prc {
	text-align: left;
}

.ftr_prd.ftr_prd_new .prd_rev {
	display: flex;
	text-align: left;
}

.ftr_prd.ftr_prd_new .rev_count {
	line-height: 16px;
}
/* ランキングしたリンク */
.ranking_box  .prd_slider:has(+ .ranking_cta_container) {
    border-bottom: none;
}
.ranking_cta_container {
    text-align: center;
    border-bottom: 1px solid #dadada;
    margin-bottom: 20px;
    padding-bottom: 20px;
}

.ranking_cta_container a {
        display: block;
        width: 240px;
        background: #e35608;
        border-radius: 20px;
        line-height: 40px;
        color: #fff;
        text-decoration: none;
        transition: 0.5s;
        text-align: center;
        font-weight: bold;
        margin: 0 auto;
}
.ranking_cta_container a:hover {
    opacity: 0.6;
}
/* 使う場所別の設定 */
.recommend_category .ftr_prd {
	width: 148px;
	margin: 0 10px;
}

.prd_slider .ftr_prd .prd_nam {
	height: 36px;
	margin: 4px;
	font-size: 14px;
	line-height: 18px;
}

.prd_slider .ftr_prd .prd_dsc {
	width: 100%;
	max-height: 48px;
	font-size: 12px;
	line-height: 16px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.campaign_list {
	margin: 0 auto 40px auto;
	font-size: 0;
	text-align: center;
}

.campaign_list .ftr_prd {
	display: inline-block;
	width: 170px;
	margin: 0 15px;
	text-align: left;
}

.campaign_list .ftr_prd .prd_prc {
	position: relative;
	padding: 5px 15px 5px 0;
	color: #e00000;
	font-size: 36px;
	font-weight: bold;
	line-height: 1;
	text-align: right;
}

.campaign_list .ftr_prd .prd_prc::after {
	position: absolute;
	right: 0;
	bottom: 10px;
	font-size: 15px;
	content: "円";
}

.prd_box .ftr_prd {
	width: 110px;
	margin: 0 10px;
}

.prd_box .ftr_prd .prd_nam,
.prd_box .ftr_prd .prd_prc {
	font-size: 13px;
	line-height: 15px;
}

.prd_box .ftr_prd .prd_nam {
	max-height: 30px;
}

.ranking_box .ftr_prd .prd_prc {
	padding: 3px 0 0 0;
	font-size: 14px;
	line-height: 18px;
}

/*
.ranking_box .ftr_prd .prd_rev span {
	font-size: 18px;
}
*/
.tab_ranking_box ul {
	text-align: left !important;
}

.tab_ranking_box .ftr_prd {
	width: 90px;
	margin: 0 5px;
	text-align: left;
	vertical-align: top;
}

.tab_ranking_box .ftr_prd .prd_nam {
	height: 28px;
	margin: 3px 0;
	color: #2a2a2a;
	font-size: 12px;
	line-height: 14px;
	text-decoration: none;
}

.tab_ranking_box .ftr_prd .prd_nam:hover {
	color: #f00000;
	text-decoration: underline;
}

.tab_ranking_box .ftr_prd .prd_prc {
	color: #e00000;
	padding: 3px 0;
	font-size: 11px;
	line-height: 13px;
}

/*--------------------------------------------------*/
/*  売れ筋ランキング                                */
/*--------------------------------------------------*/
.tab_ranking_menu {
	font-size: 0;
}

.tab_ranking_menu li {
	display: inline-block;
	width: 124px;
	height: 15px;
	margin: 0 4px 4px 0;
	padding: 10px 4px;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	line-height: 14px;
	text-align: center;
	cursor: pointer;
	background: #606060;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-moz-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}

.tab_ranking_menu li:nth-child(6n) {
	margin: 0 0 4px 0;
}

.tab_ranking_menu li:not(.active):hover {
	background: #808080;
}

.tab_ranking_menu li.active {
	font-size: 14px;
	background: #f04070;
}

.ranking_box {
	margin: 0 0 20px 0;
	padding: 0 9px;
	border: 1px solid #b0b0b0;
}

.ranking_box h3,
.tab_ranking_box h3 {
	position: relative;
	margin: 12px 0 4px 0;
	padding: 0 0 0 32px;
	font-size: 18px;
	background: url("/img/icon/rank_title.png") no-repeat 0 0;
}

.ranking_box h3.fire {
	background: url("/img/icon/fire_title.png") no-repeat 0 0;
}

.ranking_box h3.lens {
	background: url("/img/icon/lens_title.png") no-repeat 0 0;
}

.ranking_box .prd_slider {
	width: 730px;
	margin: 10px auto;
	border-bottom: 1px dotted #c0c0c0;
}

.ranking_box .prd_slider:last-child,
.ranking_box .prd_slider.no_border {
	border-bottom: none;
}

.ranking_box li {
	width: 128px;
	margin: 0 10px;
	padding: 0 0 15px 0;
	vertical-align: top;
	outline: none;
}

.tab_ranking_box {
	padding: 0 10px 30px 10px;
}

.tab_ranking_box ul {
	display: none;
	font-size: 0;
	text-align: center;
}

.tab_ranking_box ul.active {
	display: block;
}

.ranking_box li .rank,
.tab_ranking_box li .rank {
	height: 22px;
	padding: 5px 0 2px 0;
	color: #da0000;
	font-size: 13px;
	font-weight: bold;
	line-height: 1;
	vertical-align: bottom;
}

.ranking_box li .rank strong,
.tab_ranking_box li .rank strong {
	padding: 0 2px 0 0;
	font-size: 22px;
}

.ranking_box ul.no-ranking li .rank {
	display: none;
}

/*--------------------------------------------------*/
/*  部位・症状のメニュー                            */
/*--------------------------------------------------*/
.symptom_category {
	margin: 0 0 20px 0;
	font-size: 0;
	vertical-align: top;
}

.symptom_category li {
	display: inline-block;
	width: 280px;
	margin: 0 10px 15px 10px;
	font-size: 0;
	border-top: 4px solid #f04070;
}

.symptom_category li a.title {
	position: relative;
	display: block;
	padding: 8px 5px;
	color: #2a2a2a;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	text-decoration: none;
}

.symptom_category li a.title::after {
	position: absolute;
	top: 10px;
	right: 5px;
	content: "全て見る";
	font-size: 13px;
	font-weight: normal;
	text-decoration: underline;
}

.symptom_category .dsp_tbl .dsp_cel {
	vertical-align: top;
	padding: 0 5px 0 10px;
}

.symptom_category .dsp_tbl .image {
	width: 72px;
	padding: 5px 10px 5px 5px;
}

.symptom_category .dsp_tbl .image a,
.symptom_category .dsp_tbl .image a img {
	display: block;
	width: 72px;
}

.symptom_category .dsp_tbl .text {
	line-height: 1;
}

.symptom_category .dsp_tbl .text a {
	position: relative;
	display: block;
	padding: 3px 10px 3px 12px;
	color: #2a2a2a;
	font-size: 13px;
	line-height: 1;
	text-decoration: none;
}

.symptom_category .dsp_tbl .text a::before {
	position: absolute;
	top: calc(50% - 3.2px);
	left: 4px;
	width: 0;
	height: 0;
	content: "";
	border-color: transparent transparent transparent #f04070;
	border-style: solid solid solid solid;
	border-width: 3.2px 3.2px 3.2px 3.2px;
}

.symptom_category li a.title:hover,
.symptom_category li a.title:hover::after,
.symptom_category li .dsp_tbl .text a:hover {
	color: #f00000;
	text-decoration: underline;
}

/*--------------------------------------------------*/
/*  おすすめジャンル＋スライダー                    */
/*--------------------------------------------------*/
.recommend_category.dsp_tbl {
	width: 100%;
	margin: 0 0 20px 0;
}

.recommend_category .menu {
	width: 198px;
	padding: 15px 20px;
	vertical-align: top;
	background: #fafafa;
	border: 1px solid #b0b0b0;
}

.recommend_category .body {
	padding: 15px 20px 5px 20px;
	vertical-align: top;
	border: 1px solid #b0b0b0;
	border-left: none;
}

.recommend_category .menu h2 {
	padding: 0 0 8px 0;
	border-bottom: 2px solid #f04070;
}

.recommend_category .menu h2 a {
	display: block;
	position: relative;
	padding: 0 0 0 5px;
	color: #2a2a2a;
	text-decoration: none;
}

.recommend_category .menu li a {
	display: block;
	position: relative;
	padding: 4px 0 4px 24px;
	font-size: 16px;
	line-height: 22px;
	text-decoration: none;
}

.recommend_category .menu li a::before {
	position: absolute;
	top: calc(50% - 6px);
	left: 12px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f0da";
	font-size: 12px;
	line-height: 1;
}

.recommend_category .menu a:hover {
	color: #f00000;
}

.recommend_category .menu li a:hover {
	text-decoration: underline;
}

.recommend_category .body .title {
	padding: 0 0 10px 0;
	font-size: 20px;
	font-weight: bold;
}

/*--------------------------------------------------*/
/*  商品一覧                                        */
/*--------------------------------------------------*/
.prd_list.yoko {
	margin: 0 0 30px 0;
}

.prd_list.yoko li {
	display: table;
	width: 100%;
}

.prd_list.yoko li>div {
	display: table-cell;
	min-height: 100px;
	padding: 10px;
	vertical-align: top;
	border-bottom: 1px solid #dadada;
}

.prd_list.yoko li .yoko_l {
	width: 120px;
}

.prd_list.yoko li .yoko_c {
	width: 400px;
}

.prd_list.yoko li .yoko_r {
	position: relative;
	width: 240px;
}

.prd_list.yoko .yoko_l img {
	display: block;
	width: 100%;
}

.prd_list.yoko .item_name {
	margin: 0;
	font-size: 16px;
	line-height: 20px;
}

.prd_list.yoko .item_desc {
	height: 34px;
	margin: 5px 0;
	font-size: 13px;
	line-height: 17px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.prd_list.yoko .item_desc span,
.prd_list.yoko .item_desc strong {
	padding: 0 4px 0 0;
}

.prd_list.yoko .item_maker {
	position: relative;
	height: 12px;
	padding: 10px 0 5px 0;
	color: #606060;
	font-size: 12px;
	line-height: 1;
}

.prd_list.yoko .item_maker a {
	display: block;
	position: absolute;
	top: 10px;
	left: 36px;
	max-width: 240px;
	height: 12px;
	color: #606060;
	text-decoration: none;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-moz-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}

.prd_list.yoko .item_maker a:hover {
	color: #f00000;
}

.prd_list.yoko .item_maker .more_text {
	position: absolute;
	top: 0;
	right: 10px;
	color: #606060;
	font-size: 12px;
	line-height: 1;
	vertical-align: top;
	text-decoration: underline;
	cursor: pointer;
}

.prd_list.yoko .item_review a {
	color: #fa8000;
	font-size: 16px;
	line-height: 1;
	text-decoration: none;
}

.prd_list.yoko .item_review a .star {
	font-size: 0;
}

.prd_list.yoko .item_review a .num {
	color: #2a2a2a;
	font-size: 14px;
}

.prd_list.yoko .item_review a:hover .num {
	color: #f00000;
}

.prd_list.yoko .item_price {
	padding: 10px 0 0 60px;
	color: #da0000;
	font-size: 16px;
	line-height: 1;
	text-align: right;
	vertical-align: bottom;
}

.prd_list.yoko .item_price strong {
	padding: 0 4px;
	font-size: 26px;
}

.prd_list.yoko .item_stock {
	position: absolute;
	top: 20px;
	left: 10px;
	width: 60px;
	height: 12px;
	padding: 6px 0;
	font-size: 12px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	border: 1px solid #1010ca;
}

.prd_list.yoko .item_stock.ok {
	color: #fff;
	background: #1010ca;
}

.prd_list.yoko .item_stock.ng {
	color: #da0000;
	background: #fff;
	border-color: #da0000;
}

.prd_list.yoko .yoko_r .gray_btn {
	display: block;
	width: 140px;
	height: 16px;
	margin: 30px auto 0 auto;
	padding: 8px 0;
	font-size: 16px;
	line-height: 1;
}

.prd_list.tate {
	margin: 0 0 20px 0;
	font-size: 0;
}

.prd_list.tate li {
	display: inline-block;
	width: 190px;
	margin: 0 0 10px 0;
	padding: 0 20px 20px 0;
	font-size: 0;
	vertical-align: top;
	border-bottom: 1px solid #c0c0c0;
}

.prd_list.tate li:nth-child(4n) {
	padding: 0 0 20px 0;
}

.prd_list.tate .item_image,
.prd_list.tate .item_image img {
	display: block;
	width: 100%;
}

.prd_list.tate .item_price {
	padding: 5px 0 0 0;
	color: #da0000;
	font-size: 13px;
	line-height: 1;
	text-align: center;
	vertical-align: bottom;
}

.prd_list.tate .item_price strong {
	padding: 0 4px;
	font-size: 24px;
}

.prd_list.tate .item_name {
	height: 42px;
	margin: 5px 0;
	padding: 0;
	font-size: 15px;
	line-height: 21px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
}

.prd_list.tate .item_review {
	position: relative;
	margin: 4px 0;
	text-align: right;
}

.prd_list.tate .item_review a {
	color: #fa8000;
	font-size: 16px;
	line-height: 1;
	text-decoration: none;
}

.prd_list.tate .item_review a .star {
	color: #fa8000;
	font-size: 17px;
}

.prd_list.tate .item_review a .num {
	color: #2a2a2a;
	font-size: 11px;
}

.prd_list.tate .item_review a:hover .num {
	color: #f00000;
}

.prd_list.tate .item_stock {
	position: absolute;
	top: calc(50% - 10px);
	left: 0;
	width: 50px;
	height: 11px;
	margin: 0 auto;
	padding: 4px 0;
	color: #fff;
	font-size: 11px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
}

.prd_list.tate .item_stock.ok {
	background: #1010ca;
	border: 1px solid #1010ca;
}

.prd_list.tate .item_stock.ng {
	background: #e00000;
	border: 1px solid #e00000;
}

.prd_list.tate .item_desc {
	height: 96px;
	margin: 5px 0 10px 0;
	font-size: 12px;
	line-height: 16px;
	overflow: hidden;
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 6;
}

.prd_list.tate .item_desc span,
.prd_list.tate .item_desc strong {
	padding: 0 4px 0 0;
}

.prd_list.tate .item_maker {
	width: 100%;
	font-size: 12px;
	line-height: 1;
	text-align: center;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-moz-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}

.prd_list.tate .item_maker a {
	color: #606060;
	font-size: 12px;
	line-height: 1;
	text-decoration: none;
}

.prd_list.tate .item_maker a:hover {
	color: #f00000;
}

/*--------------------------------------------------*/
/*  商品詳細                                        */
/*--------------------------------------------------*/
.item_dt_tbl {
	display: table;
	width: 1300px;
	margin: 20px auto 20px auto;
}

.item_dt_tbl .item_dt_l {
	display: table-cell;
	padding: 0 20px 0 0;
	vertical-align: top;
}

.item_dt_tbl .item_dt_r {
	display: table-cell;
	width: 240px;
	vertical-align: top;
}

.item_dt_r .menu_box {
	width: 240px;
}

.item_dt_r .menu_box .order_btn {
	position: relative;
	padding: 20px 10px;
	border: 1px solid #c0c0c0;
}

.item_dt_r .menu_box .order_btn a {
	width: 200px;
}

.item_dt_r .menu_box .order_btn a.go_btn.off {
	color: #808080;
	text-shadow: none;
	background: #f0f0f0;
	border: 1px solid #808080;
}

.item_dt_r .menu_box .order_image {
	display: none;
	position: relative;
	height: 198px;
	overflow: hidden;
	border: 1px solid #c0c0c0;
	border-bottom: none;
}

.item_dt_r .menu_box .order_image img {
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	margin: auto;
}

.item_dt_r .menu_box .dt_btn {
	font-size: 0;
}

.item_dt_r .menu_box .dt_btn li {
	display: inline-block;
	width: 80px;
	height: 80px;
	vertical-align: top;
}

.item_dt_r .menu_box .dt_btn li a {
	display: block;
	color: #2a2a2a;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	background: #f8f8f8;
	border-bottom: 1px solid #c0c0c0;
	border-right: 1px solid #c0c0c0;
}

.item_dt_r .menu_box .dt_btn li:nth-child(3n-2) a {
	border-left: 1px solid #c0c0c0;
}

.item_dt_r .menu_box .dt_btn li.ln1 a {
	height: 14px;
	padding: 33px 0 32px 0;
	line-height: 1;
}

.item_dt_r .menu_box .dt_btn li.ln2 a {
	height: 40px;
	padding: 20px 0 19px 0;
	line-height: 20px;
}

.item_dt_r .menu_box .dt_btn li a:hover {
	color: #fff;
	background: #f04070;
	border-color: #f04070;
}

.maker_dt .item_desc_tbl,
.item_dt_l .item_desc_tbl {
	display: table;
	width: 100%;
}

.item_desc_tbl .item_desc_l,
.item_desc_tbl .item_desc_r {
	display: table-cell;
	vertical-align: top;
}

.item_desc_tbl .item_desc_l {
	width: 300px;
	padding: 0 20px 0 0;
}

.item_dt .item_desc_l .item_image {
	width: 300px;
	height: 250px;
	overflow: hidden;
}

.item_dt .item_desc_l .item_image img {
	display: block;
	max-width: 300px;
	max-height: 250px;
	margin: 0 auto;
}

.maker_dt .item_desc_l .item_image {
	display: table;
	width: 298px;
	height: 248px;
	border: 1px solid #c0c0c0;
}

.maker_dt .item_desc_l .item_image .inner {
	display: table-cell;
	width: 298px;
	height: 248px;
	text-align: center;
	vertical-align: middle;
}

.maker_dt .item_desc_l .item_image img {
	max-width: 298px;
	max-height: 248px;
	vertical-align: bottom;
}

.item_desc_l .image_list {
	margin: 15px 0;
	font-size: 0;
}

.item_desc_l .image_list li {
	display: inline-block;
	width: 66px;
	height: 55px;
	margin: 0 9px 8px 0;
	border: 1px solid #c0c0c0;
	overflow: hidden;
	cursor: pointer;
}

.item_desc_l .image_list li:nth-child(4n) {
	margin: 0 0 8px 0;
}

.item_desc_l .image_list li.active,
.item_desc_l .image_list li:hover {
	border-color: #f04070;
}

.item_desc_l .image_list li img {
	display: block;
	height: 100%;
	margin: 0 auto;
}

.item_dt .item_title {
	position: relative;
	padding: 0 170px 5px 0;
	border-bottom: 1px solid #dadada;
}

.maker_dt .item_title {
	position: relative;
	padding: 0 0 5px 0;
	border-bottom: 1px solid #dadada;
}

.maker_dt .item_title h1,
.item_dt .item_title h1 {
	margin: 0 !important;
	padding: 0 !important;
	font-size: 24px;
	font-weight: bold;
	line-height: 32px;
	border-bottom: none !important;
}

.maker_dt .item_title .update_date {
	position: static;
	font-size: 14px;
	line-height: 18px;
	text-align: right;
}

.maker_dt .maker_desc,
.item_dt .item_desc {
	position: relative;
	padding: 10px 15px 20px 15px;
	font-size: 16px;
	line-height: 24px;
}

.item_dt .item_desc .item_review {
	/*
	position: absolute;
	top: 5px;
	right: 10px;
*/
	position: relative;
	top: -5px;
	text-align: right;
}

.item_dt .item_desc .item_review a {
	color: #2a2a2a;
	font-size: 14px;
	line-height: 18px;
	text-decoration: none;
}

.item_dt .item_desc .item_review a.non {
	text-decoration: underline;
}

.item_dt .item_desc .item_review a:hover {
	color: #f00000;
}

.item_dt .item_desc .ingred {
	padding: 3px 0;
	font-size: 14px;
	font-weight: bold;
	line-height: 18px;
}

.item_dt .item_desc .effect {
	margin: 10px 0 5px 0;
	font-size: 0;
}

.item_dt .item_desc .effect li {
	display: inline-block;
	margin: 3px 5px 3px 0;
	padding: 6px 6px;
	font-size: 13px;
	line-height: 1;
	border: 1px solid #b0b0b0;
	border-radius: 2px;
}

.item_dt .item_desc .link {
	font-size: 0;
	cursor: default;
}

.item_dt .item_desc .link li {
	display: inline-block;
	margin: 0 15px 0 0;
}

.item_dt .item_desc .link li a {
	position: relative;
	padding: 0 0 0 8px;
	font-size: 14px;
	line-height: 18px;
}

.item_dt .item_desc .link li a::before {
	position: absolute;
	top: calc(50% - 6px);
	left: 2px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f0da";
	font-size: 12px;
	line-height: 1;
}

.item_dt .item_deal {
	position: relative;
	margin: 10px 15px 20px 15px;
	padding: 40px 15px 10px 15px;
	font-size: 15px;
	font-weight: bold;
	line-height: 23px;
	background: #fffcff;
	border: 3px solid #ea0000;
	border-radius: 4px;
}

.item_dt .item_deal::before {
	position: absolute;
	top: 12px;
	left: 10px;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	content: "■お得な豆知識";
}

.item_dt .item_deal .sub {
	display: block;
	padding: 5px 0 0 5px;
	color: #e00000;
	font-size: 14px;
	line-height: 20px;
}

.item_dt h2 {
	position: relative;
	margin: 20px 0 0 0;
	color: #da0000;
}

.item_dt h2 #order_arrow {
	display: none;
	position: absolute;
	top: 3px;
	right: 0;
	font-size: 64px;
	color: #da0000;
	background: #fff;
	transform: rotate(-30deg);
}

.item_dt .item_text {
	padding: 10px 10px;
	font-size: 16px;
	line-height: 26px;
}

.item_dt .item_text img {
	display: block;
	max-width: 720px;
	border: 1px solid #c0c0c0;
}

.item_list .category_title {
	position: relative;
	margin: 0 0 10px 0;
	padding: 0 160px 0 0;
	border-bottom: 1px solid #dadada;
}

.item_list .category_title h1 {
	margin: 0 !important;
	padding: 0 !important;
	border-bottom: none !important;
}

.item_list .review_list,
.item_dt .review_list {
	margin: 10px;
}

.item_list .review_list li,
.item_dt .review_list li {
	padding: 20px 10px;
	border-bottom: 1px solid #dadada;
}

.item_list .review_list li:last-child,
.item_dt .review_list li:last-child {
	margin: 0 0 20px 0;
}

.item_list .review_list .title,
.item_dt .review_list .title {
	padding: 0 0 10px 0;
	font-size: 18px;
	font-weight: bold;
	line-height: 24px;
	vertical-align: bottom;
}

.item_list .review_list .title span,
.item_dt .review_list .title span {
	padding: 0 0 0 5px;
	font-size: 16px;
	font-weight: normal;
}

.item_list .review_list .star,
.item_dt .review_list .star {
	display: inline-block;
	margin: 0 0 8px 0;
	font-size: 0;
}

.item_list .review_list .star i,
.item_dt .review_list .star i {
	margin: 0 3px 0 0;
	color: #ea9a00;
	font-size: 20px;
	line-height: 1;
}

.item_list .review_list time,
.item_dt .review_list time {
	display: inline-block;
	margin: 0 0 0 30px;
	font-size: 16px;
	line-height: 20px;
}

.item_list .review_list .user,
.item_dt .review_list .user {
	display: inline-block;
	margin: 0 0 0 20px;
	font-size: 16px;
	line-height: 20px;
}

.item_list .review_list .user span,
.item_dt .review_list .user span {
	font-size: 13px;
}

.item_list .review_list .comment,
.item_dt .review_list .comment {
	font-size: 16px;
	line-height: 26px;
}

.review_area {
	width: 800px;
	margin: 50px auto 30px auto;
}

.review_tbl {
	width: 798px;
	border: 1px solid #c0c0c0;
}

.review_tbl td {
	background: #f4f4f4;
}

.review_tbl td:first-child {
	width: 450px;
	padding: 30px 30px 0 30px;
}

.review_tbl td:last-child {
	padding: 30px 30px 0 0;
}

.review_tbl tr:last-child td {
	width: calc(100% - 20px);
	padding: 30px;
}

.review_tbl .title {
	font-size: 18px;
	line-height: 1;
}

.review_tbl .input {
	height: 34px;
	margin: 4px 0 0 0;
	border: 1px solid #c0c0c0;
	border-radius: 4px;
}

.review_tbl .input input {
	display: block;
	width: calc(100% - 20px);
	height: calc(100% - 16px);
	padding: 8px 10px;
	color: #000;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	border-radius: 4px;
}

.review_tbl .input input[type="number"] {
	width: calc(100% - 10px);
	height: 34px;
	padding: 0 0 0 10px;
	line-height: 34px;
}

.review_tbl select {
	display: block;
	width: 100%;
	height: 34px;
	margin: 4px 0 0 0;
	font-size: 22px;
	line-height: 34px;
	vertical-align: top;
	border: 1px solid #c0c0c0;
	border-radius: 4px;
}

.review_tbl select option {
	color: #000;
	font-size: 18px;
}

.review_tbl textarea {
	display: block;
	width: calc(100% - 22px);
	height: 120px;
	margin: 4px 0 30px 0;
	padding: 8px 10px;
	font-size: 16px;
	line-height: 22px;
	border: 1px solid #c0c0c0;
	border-radius: 4px;
}

.item_dt h3 {
	width: 1000px;
	margin: 20px auto 2px auto;
}

.order_tbl {
	width: 960px;
	margin: 0 0 20px 20px;
}

.order_tbl th {
	padding: 10px 0;
	color: #2a2a2a;
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	vertical-align: middle;
	background: #f0f0f0;
}

.order_tbl td {
	min-height: 48px;
	color: #2a2a2a;
	font-size: 15px;
	line-height: 19px;
	text-align: center;
	vertical-align: middle;
}

.order_tbl th,
.order_tbl td {
	border-top: 1px solid #c0c0c0;
	border-left: 1px solid #c0c0c0;
}

.order_tbl th:last-child,
.order_tbl td:last-child {
	border-right: 1px solid #c0c0c0;
}

.order_tbl tr:last-child td {
	border-bottom: 1px solid #c0c0c0;
}

.order_tbl td:nth-child(1) {
	width: 200px;
}

.order_tbl td:nth-child(2) {
	width: 160px;
	border-right: none;
}

.order_tbl td:nth-child(3) {
	width: ;
	border-left: none;
}

.order_tbl td:nth-child(4) {
	width: 80px;
}

.order_tbl td:nth-child(5) {
	width: 240px;
}

.order_tbl .basic {
	position: relative;
	padding: 24px 40px 8px 0;
	font-size: 16px;
	line-height: 16px;
	text-align: right;
}

.order_tbl .basic del {
	color: #7a7a7a;
}

.order_tbl .basic del span {
	color: #2a2a2a;
}

.order_tbl .basic small {
	padding: 0 0 0 2px;
	font-size: 11px;
}

.order_tbl .basic::after {
	position: absolute;
	top: calc(50% - 4px);
	right: 10px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f061";
	color: #a0a0a0;
	font-size: 14px;
	line-height: 14px;
}

.order_tbl .sale {
	height: 28px;
	padding: 14px 0 6px 20px;
	color: #da0000;
	font-size: 16px;
	font-weight: bold;
	line-height: 28px;
	text-align: left;
	vertical-align: bottom;
}

.order_tbl .sale strong {
	display: inline-block;
	width: 120px;
	padding: 0 4px 0 0;
	font-size: 28px;
	text-align: right;
}

.order_tbl .sale strong small {
	font-size: 14px;
}

.order_tbl .sale .unit {
	position: relative;
	display: inline-block;
	min-width: 80px;
	margin: 0 0 0 6px;
	font-size: 15px;
}

.order_tbl .sale .title {
	position: absolute;
	top: -18px;
	left: 10px;
	font-size: 11px;
	white-space: nowrap;
}

.order_tbl .sale .unit small {
	font-size: 11px;
}

.order_tbl .point {
	position: relative;
	padding: 0 0 10px 0;
}

.order_tbl .point::after {
	position: absolute;
	bottom: 0px;
	right: 8px;
	content: "ポイント";
	font-size: 10px;
	line-height: 1;
}

.order_tbl .btn {
	display: block;
	position: relative;
	width: 160px;
	height: 14px;
	margin: 0 auto;
	padding: 10px 0 10px 20px;
	font-size: 14px;
	font-weight: bold;
	line-height: 14px;
	text-align: center;
	text-decoration: none;
	/*
	color: #3a3a3a;
	background: -webkit-linear-gradient(top,#fff090,#f0ca5a);
	background: -moz-linear-gradient(top,   #fff090,#f0ca5a);
	background: linear-gradient(to bottom,  #fff090,#f0ca5a);
	border: 1px solid #8a8a50;
*/
	color: #fff;
	background: #3d9982;
	border: 1px solid #20707a;
	border-radius: 10px;
}

.order_tbl .btn::before {
	position: absolute;
	top: 2px;
	left: 2px;
	width: 20px;
	height: 20px;
	padding: 5px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f07a";
	color: #fff;
	font-size: 20px;
	font-weight: normal;
	line-height: 1;
	background: #505050;
	border-radius: 8px;
}

.order_tbl .btn:hover {
	/*
	background: -webkit-linear-gradient(top,#fae080,#eaba4a);
	background: -moz-linear-gradient(top,   #fae080,#eaba4a);
	background: linear-gradient(to bottom,  #fae080,#eaba4a);
*/
	background: #40aa8a;
}

.order_tbl td.ng {
	color: #e00000;
	font-size: 18px;
	font-weight: bold;
}

/* 取扱い終了 */
.order_tbl td.NG {
	color: #868481;
	font-size: 18px;
	font-weight: bold;
}

#popup_overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 301;
	width: 100%;
	height: 120%;
	background-color: rgba(0, 0, 0, 0.75);
}

#popup_box {
	display: none;
	position: absolute;
	top: 50px;
	left: calc(50% - 621px);
	z-index: 302;
	background: #fff;
}

#popup_box .close_btn {
	position: absolute;
	bottom: 0;
	right: 0;
	z-index: 304;
	width: 118px;
	height: 24px;
	padding: 37px 0;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	background: #f05070;
	cursor: pointer;
	border: 1px solid #f05070;
}

#popup_box .close_btn:hover {
	color: #f05070;
	background: #ffeae0;
}

#popup_box .main_img {
	position: relative;
	margin: 20px;
	background: #c0c0c0;
	border: 1px solid #c0c0c0;
}

#popup_box .main_img img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	background: #fff;
}

#popup_box .img_list {
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 303;
	width: calc(100% - 120px);
	height: 100px;
	margin: 0 120px 0 0;
	font-size: 0;
	height: 100px;
	background: #f0f0f0;
	border-top: 1px solid #c0c0c0;
}

#popup_box .img_list li {
	position: relative;
	display: inline-block;
	width: 120px;
	height: 100px;
	font-size: 0;
	cursor: pointer;
	border-right: 1px solid #c0c0c0;
}

#popup_box .img_list li img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	width: auto;
	height: auto;
	max-width: 100%;
	max-height: 100%;
	background: #fff;
}

#popup_box .img_list li.active img {
	opacity: 0.7;
}


/*--------------------------------------------------*/
/*  その他コンテンツ                                */
/*--------------------------------------------------*/
.belt_link {
	width: 100%;
	padding: 20px 0 0 0;
}

.belt_link a {
	display: block;
	width: 100%;
	height: 40px;
	color: transparent;
	text-decoration: none;
	background: url(/img/banner/line_1000_belt.png) repeat-x 0 0;
}

.belt_link a:hover {
	opacity: 0.8;
}

.search_box {
	position: relative;
	width: 600px;
	margin: 20px auto;
	padding: 20px 20px 10px 20px;
	background: #fff0fa;
	border: 2px solid #f07090;
}

.search_box .search {
	position: relative;
	width: 480px;
	height: 38px;
	margin: 10px auto;
	background: #f05070;
	border-radius: 3px;
}

.search_box .search input[type="text"] {
	display: block;
	position: absolute;
	top: 3px;
	left: 3px;
	width: 394px;
	height: 32px;
	padding: 0 10px;
	font-size: 22px;
	line-height: 32px;
	border: none;
	border-radius: 3px 0 0 3px;
}

.search_box .search input[type="image"] {
	display: block;
	position: absolute;
	top: 3px;
	right: 3px;
	width: 60px;
	height: 32px;
	color: #fff;
	font-size: 20px;
	line-height: 32px;
	background: #f05070;
	border: none;
	border-radius: 0 3px 3px 0;
}

.search_box .search input[type="image"]:hover {
	background: #ff6070;
}

.search_box p {
	padding: 10px 20px;
	font-size: 14px;
	line-height: 24px;
	text-align: center;
	vertical-align: bottom;
}

.search_box p strong {
	color: #f00;
	font-size: 16px;
	font-weight: bold;
}

.contents,
section {
	position: relative;
	margin: 0 0 30px 0;
	padding: 0 15px;
	font-size: 16px;
	line-height: 26px;
}

section.no_padding {
	padding: 0 0 0 0;
}

section>.update_date {
	top: 14px;
}

.contents>h2 {
	margin: 20px 0 10px -10px;
}

section>h2 {
	margin: 0 0 10px -10px;
}

section.no_padding>h2 {
	margin: 0 0 10px 5px;
}

.contents>p,
section>p {
	padding: 8px 0;
}

.contents>p strong,
section>p strong,
strong.bg_pink {
	padding: 0 2px;
	font-size: 17px;
	font-weight: bold;
	background: -webkit-linear-gradient(top, #fff, 60%, #fff, 60%, #ffd0ff, 89%, #ffbaff, 89%, #fff);
	background: -moz-linear-gradient(top, #fff, 60%, #fff, 60%, #ffd0ff, 89%, #ffbaff, 89%, #fff);
	background: linear-gradient(to bottom, #fff, 60%, #fff, 60%, #ffd0ff, 89%, #ffbaff, 89%, #fff);
	/*
	background: -webkit-linear-gradient(top,#fff,60%,#fff,60%,#ffa0ff,89%,#ff90ff,89%,#fff);
	background: -moz-linear-gradient(top,   #fff,60%,#fff,60%,#ffa0ff,89%,#ff90ff,89%,#fff);
	background: linear-gradient(to bottom,  #fff,60%,#fff,60%,#ffa0ff,89%,#ff90ff,89%,#fff);
*/
}

.contents .img_l,
section .img_l {
	float: left;
	max-width: 60%;
	max-height: 400px;
	margin: 10px 10px 10px 0;
}

.contents .img_r,
section .img_r {
	float: right;
	max-width: 60%;
	max-height: 400px;
	margin: 10px 0 10px 10px;
}

.contents .img_c,
section .img_c {
	display: block;
	max-width: 100%;
	max-height: 400px;
	margin: 10px auto;
}

.contents .img_c.border,
section .img_c.border {
	border: 1px solid #c0c0c0;
}

.contents .youtube,
section .youtube {
	display: block;
	margin: 20px auto;
	border: 1px solid #b0b0b0;
}

.agree h2 {
	margin: 0 0 0 -10px;
	border: none;
}

.agree p {
	margin: 0 0 20px 0;
}

.faq>h3 {
	position: relative;
	margin: 20px 0 0 0;
	padding: 10px 10px 10px 50px;
	vertical-align: bottom;
	background: #eaeaea;
	border: none;
}

.faq>h3::before {
	position: absolute;
	top: calc(50% - 12px);
	left: 10px;
	content: "Ｑ";
	color: #ea0000;
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
}

.faq>div {
	position: relative;
	padding: 20px 0 20px 50px;
}

.faq>div::before {
	position: absolute;
	top: 30px;
	left: 10px;
	content: "Ａ";
	color: #1010a0;
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
}

.faq>div p {
	padding: 8px 0;
	font-size: 16px;
	line-height: 26px;
}

.contents_menu {
	width: 640px;
	margin: 20px auto;
	padding: 15px 20px;
	background: #fdfdfd;
	border: 2px solid #a0a0a0;
	border-radius: 4px;
}

.contents_menu .space {
	padding-top: 20px;
}

.contents_menu li {
	padding: 2px 0;
	font-size: 16px;
	line-height: 20px;
}

.contents_menu li a {
	position: relative;
	text-decoration: none;
}

.faq .contents_menu li a {
	padding: 0 0 0 30px;
	color: #2a2a2a;
	text-decoration: underline;
}

.faq .contents_menu li a:hover {
	color: #f00000;
}

.faq .contents_menu li a::before {
	position: absolute;
	top: calc(50% - 11px);
	left: 0;
	width: 22px;
	height: 14px;
	padding: 4px 0;
	content: "Q";
	color: #fff;
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	background: #1010a0;
	border-radius: 2px;
}

.contents_menu li a:hover {
	text-decoration: underline;
}

.normal_box,
.pink_box,
.blue_box {
	margin: 20px;
	padding: 10px 15px;
	border-radius: 4px;
}

.normal_box {
	background: #ffffff;
	border: 2px solid #b0b0b0;
}

.pink_box {
	background: #fff7fa;
	border: 2px solid #f0a0c0;
}

.blue_box {
	background: #f7ffff;
	border: 2px solid #90daf0;
}

.normal_box .title,
.pink_box .title,
.blue_box .title {
	padding: 5px 0;
	font-size: 18px;
	font-weight: bold;
}

.normal_box p:not(.title),
.pink_box p:not(.title),
.blue_box p:not(.title) {
	padding: 5px 20px;
	font-size: 16px;
	line-height: 1.6;
}

ul.normal_box,
ul.pink_box,
ul.blue_box,
ol.normal_box,
ol.pink_box,
ol.blue_box {
	padding: 10px 20px 10px 35px;
}

.normal_box ul,
.pink_box ul,
.blue_box ul,
.normal_box ol,
.pink_box ol,
.blue_box ol {
	padding: 0 20px 0 35px;
}

ul.normal_box li,
ul.pink_box li,
ul.blue_box li,
ol.normal_box li,
ol.pink_box li,
ol.blue_box li,
.normal_box ul li,
.pink_box ul li,
.blue_box ul li {
	padding: 2px 0;
}

.list_disc {
	padding: 0 10px 30px 10px;
	font-size: 16px;
	line-height: 24px;
}

.page_disc {
	padding: 0 10px 20px 10px;
	font-size: 16px;
	line-height: 26px;
}

.search_fail {
	position: relative;
	height: 63px;
	margin: 20px 0;
}

.search_fail img {
	position: absolute;
	top: calc(50% - 26px);
	left: 20px;
	width: 72px;
}

.search_fail p {
	position: absolute;
	bottom: 0;
	left: 102px;
	font-size: 18px;
	font-weight: bold;
	line-height: 36px;
	vertical-align: bottom;
}

.search_fail strong {
	font-size: 32px;
}

.info_box {
	position: relative;
	margin: 0 0 20px 0;
	padding: 10px;
	border: 1px solid #b0b0b0;
}

.info_box .title {
	padding: 0 0 5px 0;
	font-size: 15px;
	font-weight: bold;
	line-height: 21px;
}

.info_box p {
	position: relative;
	padding: 2px 15px;
	color: #2a2a2a;
	font-size: 12px;
	line-height: 16px;
}

.info_box p::before {
	position: absolute;
	top: 8px;
	left: 4px;
	width: 4px;
	height: 4px;
	content: "";
	background: #505050;
	border-radius: 100%;
}

.info_box .dsp_cel {
	width: calc(50% - 20px);
	padding: 10px;
	vertical-align: top;
}

.info_box.safety {
	background: url("/img/safety.png") no-repeat right 40px bottom 10px;
}

.select_category {
	margin: 0 0 20px 0;
	font-size: 0;
}

.select_category li {
	display: inline-block;
	width: 144px;
	margin: 0 10px;
}

.select_category li a,
.select_category li a img {
	display: block;
	width: 100%;
}

.select_category li a {
	color: #2a2a2a;
	font-size: 14px;
	line-height: 18px;
	text-align: center;
	text-decoration: none;
}

.select_category li a:hover {
	color: #f00000;
	text-decoration: underline;
}

.news_list {
	margin: 20px 10px;
}

.news_list>li {
	border: 1px solid #b0b0b0;
	border-bottom: none;
}

.news_list>li:last-child {
	border-bottom: 1px solid #b0b0b0;
}

.news_list>li .title {
	position: relative;
	padding: 20px 80px 12px 15px;
	font-size: 20px;
	line-height: 28px;
	cursor: pointer;
	background: #f7f7f7;
}

.news_list>li .title.ac_open {
	font-weight: bold;
	background: #fff0ff;
}

.news_list>li .title time {
	display: block;
	margin: 0 0 8px 0;
	font-size: 14px;
	font-weight: bold;
	line-height: 1;
}

.news_list>li .title i {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 80px;
	height: 100%;
	font-weight: normal;
	text-align: center;
}

.news_list>li .title i::before {
	position: absolute;
	top: calc(50% - 24px);
	left: 0;
	width: 80px;
	font-family: FontAwesome;
	font-style: normal;
	content: "\f055";
	font-size: 36px;
	font-weight: normal;
	line-height: 1;
}

.news_list>li .title i::after {
	position: absolute;
	top: calc(50% + 16px);
	left: 0;
	width: 80px;
	content: "開 く";
	font-size: 14px;
	font-weight: normal;
	line-height: 1;
}

.news_list>li .title.ac_open i::before {
	content: "\f056";
}

.news_list>li .title.ac_open i::after {
	content: "閉じる";
}

.news_list>li .title:hover {
	color: #f00000;
	text-decoration: underline;
}

.news_list>li .title:hover i::after {
	color: #f00000;
	text-decoration: underline;
}

.news_list>li .title:hover i::before {
	color: #f00000;
}

.news_list>li .body {
	padding: 20px 20px 30px 20px;
	font-size: 16px;
	line-height: 26px;
	border-top: 1px solid #e0e0e0;
}

.process {
	font-weight: bold;
	margin: 0 0 20px 0;
}

.process li {
	font-weight: normal;
	padding: 0 0 10px 0;
	font-size: 16px;
	line-height: 22px;
	list-style: decimal;
}

.normal_tbl {
	width: 100%;
	margin: 0 0 20px 0;
}

.normal_tbl th {
	width: 140px;
	padding: 15px;
	font-size: 16px;
	font-weight: bold;
	line-height: 26px;
	text-align: left;
	vertical-align: middle;
	background: #f0f0f0;
	border: 1px solid #b0b0b0;
	border-bottom: none;
}

.normal_tbl td {
	padding: 15px;
	font-size: 15px;
	line-height: 1.5;
	vertical-align: middle;
	border-top: 1px solid #b0b0b0;
	border-right: 1px solid #b0b0b0;
}

.normal_tbl tr:last-child th,
.normal_tbl tr:last-child td {
	border-bottom: 1px solid #b0b0b0;
}

.normal_tbl td p {
	font-size: 15px;
	line-height: 1.5;
	vertical-align: bottom;
}

.normal_tbl td p.calc {
	padding: 4px 0;
	font-size: 16px;
	font-weight: bold;
}

.normal_tbl td p span {
	color: #f00000;
	font-size: 18px;
	font-weight: bold;
}

.normal_tbl th span {
	float: right;
	display: inline-block;
	width: 32px;
	height: 12px;
	padding: 4px 0;
	color: #fff;
	font-size: 12px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	background: #f00000;
	border: 1px solid #f00000;
}

.normal_tbl input[type="text"],
.normal_tbl select,
.normal_tbl textarea {
	width: 500px;
	padding: 6px 8px;
	font-size: 16px;
	line-height: 1;
	border: 1px solid #b0b0b0;
	border-radius: 2px;
}

.normal_tbl.login input[type="text"] {
	width: 400px;
}

.normal_tbl option,
.normal_tbl select {
	line-height: 22px;
	padding: 6px 8px 8px 8px;
}

.normal_tbl textarea {
	height: 120px;
	line-height: 22px;
}

.normal_tbl.tips {
	width: auto;
	margin: 10px auto;
}

.normal_tbl.login {
	width: 640px;
	margin: 0 auto;
}

.normal_tbl.tips th,
.normal_tbl.contact th,
.normal_tbl.company th {
	width: 180px;
}

.normal_tbl.maker {
	width: calc(100% - 20px);
	margin: 20px 10px 20px 10px;
}

.normal_tbl.maker th {
	width: 60px;
	font-size: 15px;
	text-align: center;
}

.normal_tbl.maker th,
.normal_tbl.maker td {
	padding: 5px 15px;
}

.normal_tbl.tips th {
	padding: 8px 15px;
}

.normal_tbl.tips td {
	padding: 8px 40px 8px 40px;
	font-size: 18px;
	font-weight: bold;
}

.normal_tbl.tips td strong {
	font-size: 24px;
	margin: 0 4px;
}

.company1 {
	height: 286px;
	background: url("/img/images/company_2.png") no-repeat 0 0;
}

.company2 {
	height: 289px;
	background: url("/img/images/company_3_1.png") no-repeat 0 0;
}

.company3 {
	height: 256px;
	background: url("/img/images/company_4_1.png") no-repeat 0 0;
}

.company4 {
	height: 332px;
	background: url("/img/images/company_5.png") no-repeat 0 0;
}

.flow_link {
	margin: 0 0 40px 0;
	font-size: 0;
	text-align: center;
}

.flow_link li {
	display: inline-block;
	width: 148px;
	height: 148px;
	margin: 0 5px;
}

.flow_link li a {
	display: block;
	position: relative;
	width: 120px;
	height: 120px;
	padding: 20px 13px 6px 13px;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	text-decoration: none;
	border: solid 1px #0080ff;
	border-radius: 4px;
}

.flow_link li a img {
	display: block;
	width: 100%;
}

.flow_link li a::before {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 0;
	height: 0;
	content: "";
	border-top: 64px solid #0080ff;
	border-right: 64px solid transparent;
}

.flow_link li a .step {
	position: absolute;
	top: 17px;
	left: -3px;
	z-index: 2;
	color: #fff;
	transform: rotate(-45deg);
}

.flow_link li a .title {
	position: absolute;
	top: 18px;
	left: 60px;
	z-index: 2;
	width: 80px;
	font-size: 20px;
	text-align: center;
	color: #0080ff;
}

.flow_link.tracking {
	margin: 20px 0 40px 0;
}

.flow_link.tracking li a .step {
	top: 15px;
	left: 7px;
}

.flow_link.tracking li a .title {
	position: absolute;
	top: 120px;
	left: 0;
	width: 100%;
	height: 20px;
	line-height: 1;
}

.tracking li.jp a {
	border: solid 1px #ff4040;
}

.tracking li.jp a::before {
	border-top: 60px solid #ff4040;
}

.tracking li.jp a .title {
	color: #ff4040;
}

.flow_link li a:hover {
	border: solid 1px #f04070;
}

.flow_link li a:hover::before {
	border-top: 60px solid #f04070;
}

.flow_link li a:hover .title {
	color: #f04070;
}

.flow_list {
	width: 640px;
	margin: 20px auto;
}

.flow_list>.box:not(:last-child) {
	position: relative;
	padding: 0 0 80px 0;
}

.flow_list>.box:not(:last-child)::after {
	position: absolute;
	bottom: 10px;
	left: calc(50% - 30px);
	width: 60px;
	height: 60px;
	content: "";
	background: url("/img/images/flow_5.png") no-repeat 0 0;
}

.flow_list>.box .title {
	padding: 12px;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	line-height: 1;
	background: #0080ff;
}

.flow_list>.box .body {
	padding: 20px;
	border: 2px solid #0080ff;
	border-top: none;
}

.flow_list>.box>.body>a {
	display: block;
	width: 560px;
	max-height: 240px;
	margin: 0 auto;
	overflow: hidden;
}

.flow_list>.box>.body>a>img {
	display: block;
	width: 560px;
}

.flow_list .img_list {
	width: 100%;
	margin: 0 auto;
	font-size: 0;
	text-align: center;
}

.flow_list .img_list li {
	display: inline-block;
	width: 180px;
	margin: 0 5px;
}

.flow_list .img_list li a,
.flow_list .img_list li a img {
	display: block;
	width: 100%;
}

.tracking_tbl1 {
	width: 100%;
	margin: 20px auto;
}

.tracking_tbl1 th {
	width: 160px;
	padding: 10px;
	vertical-align: middle;
}

.tracking_tbl1 td {
	padding: 10px;
}

.tracking_tbl1 td a {
	display: block;
	padding: 0 20px;
	max-height: 200px;
	overflow: hidden;
	border: 1px solid #c0c0c0;
}

.tracking_tbl1 th img,
.tracking_tbl1 td a img {
	display: block;
	width: 100%;
}

.tracking_tbl1 td p {
	margin: 10px 0 0 0;
	color: #ea0000;
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
}

.tracking_tbl2 {
	margin: 20px auto;
}

.tracking_tbl2 td {
	vertical-align: middle;
}

.tracking_tbl2 td:nth-child(1) {
	width: 300px;
	text-align: right;
}

.tracking_tbl2 td:nth-child(2) {
	width: 60px;
	padding: 0 15px;
	vertical-align: top;
}

.tracking_tbl2 td:nth-child(3) {
	width: 300px;
	font-size: 24px;
	font-weight: bold;
}

.tracking_tbl2 td:nth-child(1) img {
	height: 50px;
}

.tracking_tbl2 td:nth-child(2) img {
	width: 60px;
}

/*--------------------------------------------------*/
/*  コンビニ決済の説明                              */
/*--------------------------------------------------*/
.conveni_warn {
	margin: 0 10px 20px 10px;
	padding: 14px 0;
	color: #e00000;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	background: #fff0c0;
	border: 1px solid #ffc000;
}

.conveni_select {
	margin: 0 10px;
	font-size: 0;
}

.conveni_select li {
	display: inline-block;
	position: relative;
	width: calc(50% - 22px);
	margin: 0 10px 20px 10px;
	padding: 16px 0 0 0;
	color: #202020;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
	line-height: 24px;
	vertical-align: top;
	cursor: pointer;
	border: 1px solid #808080;
	border-radius: 4px;
}

.conveni_select li:hover {
	color: #f06000;
	font-size: 24px;
	border-color: #f06000;
}

.conveni_select li img {
	display: block;
	width: 80%;
	max-width: 400px;
	margin: 0 auto;
}

/*--------------------------------------------------*/
/*  注文履歴                                        */
/*--------------------------------------------------*/
.order_list>li {
	margin: 20px 20px 40px 20px;
	border: 1px solid #b0b0b0;
}

.order_list.track {
	margin: 20px 20px 0 20px;
	border: 1px solid #b0b0b0;
	border-bottom: none;
}

.order_list .order_title {
	display: table;
	width: 100%;
	color: #0a0a0a;
	background: #f3f3f3;
	border-bottom: 1px solid #b0b0b0;
}

.order_list.track .order_title {
	border-bottom: none;
}

.order_list .order_title>div {
	display: table-cell;
	padding: 8px 0 8px 20px;
}

.order_list .order_title .order_date {
	width: 160px;
	padding-left: 20px;
}

.order_list .order_title .order_price {}

.order_list .order_title .order_price .use_pt {
	display: block;
	margin-left: -20px;
	font-size: 14px;
}

.order_list .order_title .order_paid {
	vertical-align: bottom;
}

.order_list .order_title .reorder {
	position: relative;
	padding-right: 92px;
}

.order_list .order_title .reorder a.orange_btn {
	position: absolute;
	top: calc(50% - 24px);
	right: 0;
	width: 90px;
	padding: 4px 0;
	font-size: 14px;
	line-height: 20px;
}

.order_list .order_title .order_status {
	width: 160px;
	padding-right: 10px;
	font-size: 18px;
	text-align: center;
}

.order_list .order_title .order_status a {
	display: block;
	font-size: 14px;
}

.order_list .order_title>div p.t {
	font-size: 14px;
	font-weight: bold;
	line-height: 24px;
}

.order_list .order_title>div p.b {
	padding: 0 0 0 5px;
	font-size: 18px;
	line-height: 24px;
}

.order_list .order_title>div p strong {
	color: #e00000;
	font-size: 18px;
	font-weight: bold;
}

.order_list .order_pay {
	padding: 20px;
	border-bottom: 1px solid #b0b0b0;
}

.order_list .order_pay p {
	font-size: 16px;
	font-weight: bold;
	line-height: 1;
}

.order_list .order_pay .payment_btn {
	margin: 10px 0 0 0;
	font-size: 0;
	text-align: center;
	vertical-align: bottom;
}

.order_list .order_pay .payment_btn li {
	display: inline-block;
	width: 160px;
	margin: 0 5px;
	padding: 8px 0;
	color: #2a2a2a;
	font-size: 16px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	background: -webkit-linear-gradient(top, #faffff, #dadada);
	background: -moz-linear-gradient(top, #faffff, #dadada);
	background: linear-gradient(to bottom, #faffff, #dadada);
	border: 1px solid #808080;
	border-radius: 4px;
}

.order_list .order_pay .payment_btn li:hover {
	background: -webkit-linear-gradient(top, #faffff, #c0e0f0);
	background: -moz-linear-gradient(top, #faffff, #c0e0f0);
	background: linear-gradient(to bottom, #faffff, #c0e0f0);
}

.order_list .order_pay .payment_btn li.active {
	padding: 10px 0;
	font-size: 18px;
	background: -webkit-linear-gradient(top, #fff090, #f0ca5a);
	background: -moz-linear-gradient(top, #fff090, #f0ca5a);
	background: linear-gradient(to bottom, #fff090, #f0ca5a);
	border: 1px solid #8a8a50;
}

.order_list .order_pay .payment_btn li.active:hover {
	background: -webkit-linear-gradient(top, #fae080, #eaba4a);
	background: -moz-linear-gradient(top, #fae080, #eaba4a);
	background: linear-gradient(to bottom, #fae080, #eaba4a);
}

.order_list .payment_info>li {
	display: none;
	padding: 20px;
	background: #ffeafa;
	border: 3px solid #ffa0ba;
	/*
	border-bottom: 1px solid #b0b0b0;
*/
}

.order_list .payment_info>li.active {
	display: block;
}

.order_list .payment_info>li .gray_btn {
	width: 320px;
}

.order_list .payment_info .pay_info {
	margin: 20px 30px 0 30px;
	padding: 10px 10px 10px 30px;
	background: #f7ffff;
	border: 1px solid #80a0f0;
	border-radius: 4px;
}

.order_list .payment_info .pay_info li {
	position: relative;
	margin: 4px 0;
	padding: 0 0 0 0;
	font-size: 14px;
	line-height: 18px;
	list-style: disc;
}

.order_list .bank_tbl {
	width: 290px;
	margin: 0 auto;
}

.order_list .bank_tbl th {
	width: 72px;
	padding: 8px 0;
	font-size: 16px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
}

.order_list .bank_tbl td {
	position: relative;
	padding: 8px 0 8px 20px;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	text-align: left;
	vertical-align: middle;
}

.order_list .bank_tbl td::before {
	position: absolute;
	top: 9px;
	left: 0;
	content: "：";
	font-size: 16px;
	font-weight: normal;
	line-height: 1;
}

.order_list .select_credit {
	max-width: 600px;
	margin: 0 auto;
	font-size: 0;
	text-align: left;
}

.order_list .select_credit li {
	display: inline-block;
	width: calc(50% - 10px);
	margin: 0 5px 10px 5px;
	font-size: 0;
}

.order_list .select_credit li input,
.order_list .select_credit li img {
	display: block;
	width: 100%;
	cursor: pointer;
}

.order_list .select_credit li:hover {
	opacity: 0.8;
}

.order_list .order_item {
	position: relative;
}

.order_list .order_item .overlay {
	position: absolute;
	top: 10px;
	right: 20px;
	z-index: 1;
	width: 240px;
	height: calc(100% - 20px);
	background-color: rgba(0, 0, 0, 0.8);
}

.order_list .order_item .overlay>div {
	position: absolute;
	top: calc(50% - 48px);
	left: 0;
	z-index: 2;
	width: 100%;
}

.order_list .order_item .overlay>div p {
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	line-height: 22px;
	text-align: center;
}

.order_list .order_item .overlay>div .gray_btn {
	width: 180px;
	margin: 10px auto 0 auto;
	padding: 12px 0;
	font-size: 16px;
	font-weight: normal;
}

.order_list .order_item .overlay>div .orange_btn {
	width: 180px;
	margin: 10px auto 0 auto;
	padding: 12px 0;
	font-size: 16px;
	font-weight: bold;
}

.order_list li .item_box {
	padding: 0 20px;
	border-bottom: 1px dotted #b0b0b0;
}

.order_list li .item_box:last-child {
	border-bottom: none;
}

.order_list li .item_box .item_title {
	padding: 20px 0 0 0;
	font-size: 15px;
	line-height: 27px;
}

.order_list li .item_box .item_title strong {
	display: block;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
}

.order_list li .item_box table {
	width: 100%;
}

.order_list li .item_box table .item_img {
	width: 120px;
	padding: 20px 0;
	vertical-align: top;
}

.order_list li .item_box table .item_img a {
	display: block;
	border: 1px solid #b0b0b0;
}

.order_list li .item_box table .item_img a img {
	display: block;
	width: 100%;
}

.order_list li .item_box table .item_info {
	padding: 20px;
	vertical-align: top;
}

.order_list li .item_box table .item_info p {
	position: relative;
	padding: 0 0 8px 42px;
	font-size: 14px;
	line-height: 18px;
}

.order_list li .item_box table .item_info p::before {
	position: absolute;
	top: 0;
	left: 0;
}

.order_list li .item_box table .item_info p.n::before {
	content: "商品：";
}

.order_list li .item_box table .item_info p.p::before {
	content: "金額：";
}

.order_list li .item_box table .item_info p.q::before {
	content: "数量：";
}

.order_list li .item_box table .item_info p.d::before {
	content: "発送：";
}

.order_list li .item_box table .item_btn {
	width: 200px;
	padding: 20px;
	vertical-align: middle;
}

.order_list li .item_box table .item_btn a {
	margin: 0 auto 10px auto;
	padding: 8px 0;
	font-size: 14px;
	font-weight: normal;
}

.order_list li .item_box table .item_btn a:last-child {
	margin: 0 auto;
}

.track_list>li {
	position: relative;
	margin: 0 20px;
	padding: 20px;
	border-left: 1px solid #b0b0b0;
	border-right: 1px solid #b0b0b0;
	border-bottom: 1px dotted #b0b0b0;
}

.track_list>li:first-child {
	border-top: 1px solid #b0b0b0;
}

.track_list>li:last-child {
	margin-bottom: 20px;
	border-bottom: 1px solid #b0b0b0;
}

.track_list .track_item {
	display: table;
	width: calc(100% - 240px);
}

.track_list .track_item .track_img {
	display: table-cell;
	width: 120px;
	vertical-align: top;
}

.track_list .track_item .track_img a {
	display: block;
	border: 1px solid #b0b0b0;
}

.track_list .track_item .track_img a img {
	display: block;
	width: 100%;
}

.track_list .track_item .track_name {
	display: table-cell;
	padding: 0 0 0 20px;
	vertical-align: top;
}

.track_list .track_item .track_name a {
	font-size: 14px;
	line-height: 18px;
}

.track_list .track_item .track_number {
	position: absolute;
	top: 20px;
	right: 20px;
	width: 220px;
}

.track_list .track_item .track_number .inner {
	padding: 8px 10px;
	border: 1px solid #dadada;
	background: #fafafa;
	border-radius: 2px;
}

.track_list .track_item .track_number .inner p {
	font-size: 14px;
	line-height: 22px;
}

.track_list .track_item .track_number .inner .shipping_img {
	font-size: 0;
}

.track_list .track_item .track_number .inner .shipping_img img {
	display: block;
	margin: 5px auto 0 auto;
	max-width: 96px;
	min-width: 54px;
	height: 72px;
	border: 1px solid #b0b0b0;
}

.track_list .track_item .track_number .inner .shipping_img img:hover {
	border-color: #f06000;
}

/*
.track_list .track_item {
	display: table;
	width: 100%;
}
.track_list .track_item .track_img {
	display: table-cell;
	width: 120px;
	vertical-align: top;
}
.track_list .track_item .track_img a {
	display: block;
	border: 1px solid #b0b0b0;
}
.track_list .track_item .track_img a img {
	display: block;
	width: 100%;
}
.track_list .track_item .track_name {
	display: table-cell;
	padding: 0 20px;
	vertical-align: top;
}
.track_list .track_item .track_name a {
	font-size: 14px;
	line-height: 18px;
}
.track_list .track_item .track_number {
	display: table-cell;
	width: 220px;
	vertical-align: top;
}
.track_list .track_item .track_number .inner {
	padding: 10px;
	border: 1px solid #dadada;
	border-radius: 2px;
}
.track_list .track_item .track_number .inner p {
	font-size: 14px;
	line-height: 22px;
}
*/

.track_list .track_status {
	margin: 20px 0 5px 0;
	font-size: 20px;
	font-weight: bold;
	line-height: 28px;
}

.track_list .track_graph {
	position: relative;
	margin: 0 20px;
	padding: 60px 0;
	40px 0;
}

.track_list .track_graph .graph {
	position: relative;
	height: 24px;
	background: #dadada;
}

.track_list .track_graph .graph::before,
.track_list .track_graph .graph::after {
	position: absolute;
	top: 0;
	z-index: 1;
	content: "";
	border-radius: 50%;
}

.track_list .track_graph .graph::before {
	left: -12px;
	width: 24px;
	height: 24px;
	background: #409a90;
}

.track_list .track_graph .graph::after {
	right: -12px;
	width: 20px;
	height: 20px;
	background: #dadada;
	border: 2px solid #409a90;
}

.track_list .track_graph .graph p {
	position: relative;
	height: 24px;
	background: #409a90;
}

.track_list .track_st1 .track_graph .graph p {
	width: 0;
}

.track_list .track_st2 .track_graph .graph p {
	width: 10%;
	-moz-animation: an_st2 3s ease-out;
	-webkit-animation: an_st2 3s ease-out;
}

.track_list .track_st3 .track_graph .graph p {
	width: 20%;
	-moz-animation: an_st3 3s ease-out;
	-webkit-animation: an_st3 3s ease-out;
}

.track_list .track_st4 .track_graph .graph p {
	width: 40%;
	-moz-animation: an_st4 3s ease-out;
	-webkit-animation: an_st4 3s ease-out;
}

.track_list .track_st5 .track_graph .graph p {
	width: 50%;
	-moz-animation: an_st5 3s ease-out;
	-webkit-animation: an_st5 3s ease-out;
}

.track_list .track_st6 .track_graph .graph p {
	width: 70%;
	-moz-animation: an_st6 3s ease-out;
	-webkit-animation: an_st6 3s ease-out;
}

.track_list .track_st7 .track_graph .graph p {
	width: 80%;
	-moz-animation: an_st7 3s ease-out;
	-webkit-animation: an_st7 3s ease-out;
}

.track_list .track_st8 .track_graph .graph p {
	width: 85%;
	-moz-animation: an_st8 3s ease-out;
	-webkit-animation: an_st8 3s ease-out;
}

.track_list .track_st9 .track_graph .graph p {
	width: 90%;
	-moz-animation: an_st9 3s ease-out;
	-webkit-animation: an_st9 3s ease-out;
}

.track_list .track_st10 .track_graph .graph p {
	width: 95%;
	-moz-animation: an_st10 3s ease-out;
	-webkit-animation: an_st10 3s ease-out;
}

.track_list .track_st11 .track_graph .graph p {
	width: 100%;
	-moz-animation: an_st11 3s ease-out;
	-webkit-animation: an_st11 3s ease-out;
}

@-moz-keyframes an_st2 {
	0% {
		width: 0px;
	}

	100% {
		width: 10%;
	}
}

@-moz-keyframes an_st3 {
	0% {
		width: 0px;
	}

	100% {
		width: 20%;
	}
}

@-moz-keyframes an_st4 {
	0% {
		width: 0px;
	}

	100% {
		width: 40%;
	}
}

@-moz-keyframes an_st5 {
	0% {
		width: 0px;
	}

	100% {
		width: 50%;
	}
}

@-moz-keyframes an_st6 {
	0% {
		width: 0px;
	}

	100% {
		width: 70%;
	}
}

@-moz-keyframes an_st7 {
	0% {
		width: 0px;
	}

	100% {
		width: 80%;
	}
}

@-moz-keyframes an_st8 {
	0% {
		width: 0px;
	}

	100% {
		width: 85%;
	}
}

@-moz-keyframes an_st9 {
	0% {
		width: 0px;
	}

	100% {
		width: 90%;
	}
}

@-moz-keyframes an_st10 {
	0% {
		width: 0px;
	}

	100% {
		width: 95%;
	}
}

@-moz-keyframes an_st11 {
	0% {
		width: 0px;
	}

	100% {
		width: 100%;
	}
}

@-webkit-keyframes an_st2 {
	0% {
		width: 0px;
	}

	100% {
		width: 10%;
	}
}

@-webkit-keyframes an_st3 {
	0% {
		width: 0px;
	}

	100% {
		width: 20%;
	}
}

@-webkit-keyframes an_st4 {
	0% {
		width: 0px;
	}

	100% {
		width: 40%;
	}
}

@-webkit-keyframes an_st5 {
	0% {
		width: 0px;
	}

	100% {
		width: 50%;
	}
}

@-webkit-keyframes an_st6 {
	0% {
		width: 0px;
	}

	100% {
		width: 70%;
	}
}

@-webkit-keyframes an_st7 {
	0% {
		width: 0px;
	}

	100% {
		width: 80%;
	}
}

@-webkit-keyframes an_st8 {
	0% {
		width: 0px;
	}

	100% {
		width: 85%;
	}
}

@-webkit-keyframes an_st9 {
	0% {
		width: 0px;
	}

	100% {
		width: 90%;
	}
}

@-webkit-keyframes an_st10 {
	0% {
		width: 0px;
	}

	100% {
		width: 95%;
	}
}

@-webkit-keyframes an_st11 {
	0% {
		width: 0px;
	}

	100% {
		width: 100%;
	}
}

.track_list .track_graph .graph p::after {
	position: absolute;
	top: 0;
	right: -12px;
	z-index: 2;
	width: 24px;
	height: 24px;
	content: "";
	background: #104a40;
	border-radius: 50%;
}

.track_list .track_graph .start,
.track_list .track_graph .ship,
.track_list .track_graph .end,
.track_list .track_graph .current {
	position: absolute;
	font-size: 13px;
	line-height: 19px;
}

.track_list .track_graph .start {
	top: 90px;
	left: -10px;
	text-align: center;
}

.track_list .track_graph .ship {
	top: 90px;
	left: calc(20% - 30px);
	text-align: center;
}

.track_list .track_graph .ship::before {
	position: absolute;
	top: -6px;
	left: 26px;
	width: 0;
	height: 0;
	content: "";
	border-color: #409a90 transparent transparent transparent;
	border-style: solid solid solid solid;
	border-width: 4px 4px 4px 4px;
}

.track_list .track_graph .end {
	top: 90px;
	right: -10px;
	max-width: 400px;
	text-align: right;
}

.track_list .track_graph .current {
	top: 0;
	padding: 5px;
	color: #104a40;
	background: #eafffa;
	border: 2px solid #104a40;
	border-radius: 4px;
}

.track_list .track_st1 .track_graph .current {
	left: -15px;
}

.track_list .track_st2 .track_graph .current {
	left: calc(10% - 52px);
}

.track_list .track_st3 .track_graph .current {
	left: calc(20% - 75px);
}

.track_list .track_st4 .track_graph .current {
	left: calc(40% - 75px);
}

.track_list .track_st5 .track_graph .current {
	left: calc(50% - 90px);
}

.track_list .track_st6 .track_graph .current {
	right: calc(30% - 67px);
}

.track_list .track_st7 .track_graph .current {
	right: calc(20% - 52px);
}

.track_list .track_st8 .track_graph .current {
	right: calc(15% - 67px);
}

.track_list .track_st9 .track_graph .current {
	right: calc(10% - 52px);
}

.track_list .track_st10 .track_graph .current {
	right: -15px;
}

.track_list .track_st11 .track_graph .current {
	right: -15px;
}

.track_list .track_graph .current::after {
	position: absolute;
	bottom: -16px;
	left: calc(50% - 8px);
	width: 0;
	height: 0;
	content: "";
	border-color: #104a40 transparent transparent transparent;
	border-style: solid solid solid solid;
	border-width: 8px 8px 8px 8px;
}

.track_list .track_st1 .track_graph .current::after {
	left: 4px;
}

.track_list .track_st10 .track_graph .current::after {
	left: 58px;
}

.track_list .track_st11 .track_graph .current::after {
	left: 52px;
}

.track_list .track_graph strong {
	display: block;
	font-size: 15px;
	font-weight: bold;
}


.history_list>li {
	margin: 20px 0 40px 0;
	padding: 0 20px 20px 20px;
}

.history_list>li:not(:last-child) {
	border-bottom: 1px solid #d0d0d0;
}

.history_list li h2 {
	position: relative;
	margin: 0 0 0 -5px;
	color: #e00000;
	border: none;
}

.history_list li h2 a {
	position: absolute;
	right: 0;
	top: calc(50% - 7px);
	font-size: 14px;
	font-weight: normal;
	line-height: 1;
}

.history_tbl1 {
	width: 100%;
	margin: 10px 0 20px 0;
}

.history_tbl1 th {
	padding: 8px 0;
	font-size: 15px;
	font-weight: bold;
	text-align: center;
	background: #fafafa;
}

.history_tbl1 td {
	padding: 10px;
	font-size: 15px;
	text-align: center;
	vertical-align: middle;
}

.history_tbl1 th,
.history_tbl1 td {
	border-top: 1px solid #b0b0b0;
	border-left: 1px solid #b0b0b0;
}

.history_tbl1 th:last-child,
.history_tbl1 td:last-child {
	border-right: 1px solid #b0b0b0;
}

.history_tbl1 tr:last-child td {
	border-bottom: 1px solid #b0b0b0;
}

.history_tbl1 .img {
	width: 80px;
}

.history_tbl1 .img a,
.history_tbl1 .img a img {
	display: block;
	width: 100%;
}

.history_tbl1 .name {
	width: ;
	text-align: left;
	border-left: none;
}

.history_tbl1 .name a {
	font-size: 16px;
	font-weight: bold;
	line-height: 20px;
	text-decoration: none;
}

.history_tbl1 .name a:hover {
	color: #f00000;
}

.history_tbl1 .unit {
	width: 80px;
	text-align: right;
}

.history_tbl1 .num {
	width: 50px;
}

.history_tbl1 .total {
	width: 120px;
	font-size: 16px;
	text-align: right;
}

.history_list .pay_select {
	margin: 0 0 20px 0;
	font-size: 0;
	text-align: center;
}

.history_list .pay_select li {
	display: inline-block;
	position: relative;
	width: 220px;
	margin: 0 10px;
	padding: 12px 0;
	color: #2a2a2a;
	font-size: 16px;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	cursor: pointer;
	background: -webkit-linear-gradient(top, #faffff, #dadada);
	background: -moz-linear-gradient(top, #faffff, #dadada);
	background: linear-gradient(to bottom, #faffff, #dadada);
	border: 1px solid #808080;
	border-radius: 4px;
	vertical-align: bottom;
}

.history_list .pay_select li:hover,
.history_list .pay_select li.active {
	color: #fff;
	font-weight: bold;
	background: #404040;
}

.history_list .pay_select li.active {
	width: 300px;
	padding: 18px 0;
	font-size: 18px;
	font-weight: bold;
}

.history_list .pay_select.btn3 li {
	width: 160px;
}

.history_list .pay_select.btn3 li.active {
	width: 240px;
}

.history_list .pay_select.btn4 li {
	width: 140px;
	margin: 0 10px 0 0;
}

.history_list .pay_select.btn4 li:last-child {
	margin: 0 0 0 0;
}

.history_list .pay_select.btn4 li.active {
	width: 180px;
}

.history_list .dis_tbl {
	width: 590px;
	margin: 0 auto;
}

.history_list .dsp_cel.payment {
	width: 290px;
	vertical-align: middle;
}

.history_list .dsp_cel.price {
	width: 280px;
	padding: 0 0 0 20px;
	vertical-align: top;
}

.history_list .bank_tbl {
	width: 290px;
	margin: 0 auto;
}

.history_list .bank_tbl th {
	width: 72px;
	padding: 8px 0;
	font-size: 16px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
}

.history_list .bank_tbl td {
	position: relative;
	padding: 8px 0 8px 20px;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	text-align: left;
	vertical-align: middle;
}

.history_list .bank_tbl td::before {
	position: absolute;
	top: 9px;
	left: 0;
	content: "：";
	font-size: 16px;
	font-weight: normal;
	line-height: 1;
}

.history_list .select_credit {
	font-size: 0;
	text-align: left;
}

.history_list .select_credit li {
	display: block;
	width: 270px;
	margin: 0 0 5px 0;
}

.history_list .select_credit li:last-child {
	margin: 0 0 0 0;
}

.history_list .select_credit li input,
.history_list .select_credit li img {
	display: block;
	width: 100%;
}

.history_list .select_credit li:hover {
	opacity: 0.8;
}

.history_list .price_tbl {
	width: 100%;
}

.history_list .price_tbl th {
	width: 100px;
	padding: 10px 12px;
	font-size: 14px;
	line-height: 1;
	background: #f0f0f0;
	border: 1px solid #b0b0b0;
	border-bottom: none;
}

.history_list .price_tbl td {
	padding: 10px 12px;
	font-size: 14px;
	line-height: 1;
	text-align: right;
	border-top: 1px solid #b0b0b0;
	border-right: 1px solid #b0b0b0;
}

.history_list .price_tbl tr:last-child th {
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	border-bottom: 1px solid #b0b0b0;
}

.history_list .price_tbl tr:last-child td {
	color: #e00000;
	font-weight: bold;
	border-bottom: 1px solid #b0b0b0;
}

.history_list .price_tbl tr:last-child td span {
	font-size: 22px;
}

.history_list .pay_info {
	width: 560px;
	margin: 20px auto 40px auto;
	padding: 10px 10px 10px 30px;
	background: #f7ffff;
	border: 1px solid #80a0f0;
	border-radius: 4px;
}

.history_list .pay_info li {
	position: relative;
	margin: 4px 0;
	padding: 0 0 0 0;
	font-size: 14px;
	line-height: 18px;
	list-style: disc;
}

.history_list .pay_payeasy,
.history_list .pay_conveni,
.history_list .pay_credit {
	display: none;
}

.history_list .gray_btn {
	width: 200px;
	padding: 12px 0;
	font-weight: bold;
}

.receipt {
	width: 600px;
	margin: 0 auto 20px auto;
	padding: 20px;
	background: #fff;
	border: solid 1px #505050;
	border-radius: 4px;
}

.receipt table {
	width: 600px;
	margin: 0 auto;
}

.receipt table td:last-child {
	width: 220px;
}

.receipt table td div {
	padding: 4px 0;
	font-size: 18px;
	line-height: 1;
}

.receipt table input[type="text"] {
	width: 260px;
	margin: 0 10px;
	padding: 4px 6px;
	font-size: 16px;
	border: 1px solid #b0b0b0;
}

.receipt table input[type="submit"] {
	width: 180px;
}

/*--------------------------------------------------*/
/*  登録情報の変更                                  */
/*--------------------------------------------------*/
.reg_tbl {
	width: 100%;
	margin: 10px 0 0 0;
}

.reg_tbl tr {
	background: #ffeaff;
}

.reg_tbl.check tr,
.reg_tbl tr.ok {
	background: #fff;
}

.reg_tbl th {
	width: 180px;
	font-size: 14px;
	font-weight: bold;
	text-align: right;
	vertical-align: middle;
	border: 1px solid #b0b0b0;
	border-top: 1px solid #b0b0b0;
	border-left: 1px solid #b0b0b0;
}

.reg_tbl.check th {
	width: 120px;
	padding-right: 15px;
}

.reg_tbl td {
	padding: 0 0 0 15px;
	vertical-align: middle;
	border-top: 1px solid #b0b0b0;
	border-right: 1px solid #b0b0b0;
}

.reg_tbl th,
.reg_tbl td {
	border-bottom: 1px solid #b0b0b0;
}

.reg_tbl th span {
	display: inline-block;
	width: 30px;
	height: 12px;
	margin: 0 10px 0 15px;
	padding: 4px 0;
	color: #fff;
	font-size: 12px;
	font-weight: normal;
	line-height: 1;
	text-align: center;
	background: #e00000;
}

.reg_tbl tr.ok th span {
	background: #009a3a;
}

.reg_tbl td .inner {
	position: relative;
	padding: 10px 0;
}

.reg_tbl td .mailMB,
.reg_tbl td .mailPC {
	position: relative;
}

.reg_tbl td .inputHelp {
	position: absolute;
	top: -36px;
	z-index: 2;
	padding: 8px 10px;
	color: #fff;
	font-size: 14px;
	line-height: 20px;
	cursor: pointer;
	background: #000;
	border: 2px solid #dadada;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
	-webkit-box-shadow: 3px 4px 5px #606060;
	-moz-box-shadow: 3px 4px 5px #606060;
	box-shadow: 3px 4px 5px #606060;
}

.reg_tbl td .inputHelp:before {
	display: block;
	position: absolute;
	left: 15px;
	bottom: -8px;
	content: "";
	width: 0;
	border: 8px solid transparent;
	border-top-color: #dadada;
	border-bottom-width: 0;
}

.reg_tbl td .inputHelp:after {
	display: block;
	position: absolute;
	left: 17px;
	bottom: -6px;
	content: "";
	width: 0;
	border: 6px solid transparent;
	border-top-color: #000;
	border-bottom-width: 0;
}

#help_family_name {
	left: -6px;
}

#help_first_name {
	left: 176px;
}

#help_family_name_kana {
	left: -6px;
}

#help_first_name_kana {
	left: 176px;
}

#help_post_code {
	left: -6px;
}

#help_address1 {
	left: -6px;
}

#help_address2 {
	left: -6px;
	top: -1px !important;
}

#help_address3 {
	left: 176px;
	top: 40px !important;
}

#help_mail_address1 {
	left: -6px;
}

#help_mail_address {
	left: -6px;
}

#help_tel_no {
	left: -6px;
}

#help_passwd {
	left: -6px;
}

.reg_tbl td .errorMessage {
	position: absolute;
	top: 50%;
	left: 370px;
	z-index: 1;
	width: 280px;
	padding: 8px 10px;
	color: #fff;
	font-size: 14px;
	line-height: 20px;
	white-space: nowrap;
	cursor: pointer;
	background: #d00000;
	border: 2px solid #dadada;
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-webkit-box-shadow: 3px 4px 5px #606060;
	-moz-box-shadow: 3px 4px 5px #606060;
	box-shadow: 3px 4px 5px #606060;
}

.reg_tbl td .errorMessage:before {
	display: block;
	position: absolute;
	top: 8px;
	left: -8px;
	content: "";
	width: 0;
	border: 8px solid transparent;
	border-right-color: #dadada;
	border-left-width: 0;
}

.reg_tbl td .errorMessage:after {
	display: block;
	position: absolute;
	top: 10px;
	left: -6px;
	content: "";
	width: 0;
	border: 6px solid transparent;
	border-right-color: #d00000;
	border-left-width: 0;
}

#error_kanji {
	margin-top: -22px;
}

#error_kana {
	margin-top: -22px;
}

#error_sex {
	margin-top: -22px;
}

#error_zip {
	margin-top: -32px;
}

#error_address1 {
	margin-top: -61px;
}

#error_address2 {
	margin-top: -18px;
}

#error_address3 {
	margin-top: 20px;
}

#error_mail1 {
	margin-top: -36px;
}

#error_mail2 {
	margin-top: -36px;
}

#error_tel {
	margin-top: -22px;
}

#error_password {
	margin-top: -22px;
}

#error_birth {
	margin-top: -22px;
}

#error_payment {
	margin-top: -22px;
}

/*
.reg_tbl td .changeForm {
	color: #1010ca;
	font-size: 16px;
	font-weight: normal;
	text-decoration: underline;
	cursor: pointer;
}
*/
.reg_tbl td input[type="text"] {
	display: inline-block;
	height: 26px;
	padding: 0 8px;
	font-size: 16px;
	line-height: 26px;
	background: #f0fffa;
	border: 1px solid #00aa4a;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
}

.reg_tbl td input[type="text"].ok {
	background: #fff;
	border: 1px solid #b0b0b0;
}

.reg_tbl td input[type="text"].ng {
	background: #ffdaea;
	border: 1px solid #e04040;
}

.reg_tbl td input[type="text"].no {
	background: #eaeaea;
	border: 1px solid #b0b0b0;
}

.reg_tbl td select {
	display: inline-block;
	height: 26px;
	padding: 0 6px;
	font-size: 16px;
	line-height: 26px;
	background: #f0fffa;
	border: 1px solid #00aa4a;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
}

.reg_tbl td select.ok {
	background: #fff;
	border: 1px solid #b0b0b0;
}

.reg_tbl td select.ng {
	background: #ffdaea;
	border: 1px solid #e04040;
}

.reg_tbl td label {
	line-height: 30px;
}

.reg_tbl td .notice {
	color: #f00000;
	font-size: 13px;
	font-weight: bold;
	line-height: 17px;
}

.reg_tbl td .addressList li {
	display: table;
	width: 100%;
	border-top: 1px solid #b0b0b0;
}

.reg_tbl td .addressList li:first-child {
	border-top: none;
}

.reg_tbl td .addressList li .td1 {
	display: table-cell;
	width: 40px;
	text-align: center;
	vertical-align: middle;
	border-right: 1px solid #b0b0b0;
}

.reg_tbl td .addressList li .td1 label {
	position: relative;
	display: block;
	padding: 10px 0;
}

.reg_tbl td .addressList li .td1 label.selected span {
	width: 36px;
	position: absolute;
	top: 50%;
	left: 2px;
	margin-top: 8px;
	color: #f00;
	font-size: 10px;
	font-weight: bold;
	line-height: 12px;
}

.reg_tbl td .addressList li .td2 {
	display: table-cell;
	padding: 18px 8px;
	vertical-align: middle;
}

.reg_tbl td .addressList li .td2 p {
	font-size: 15px;
	line-height: 23px;
}

.reg_tbl td .addressList li .td3 {
	display: table-cell;
	width: 36px;
	padding: 5px 0;
	text-align: center;
	vertical-align: middle;
}

.reg_tbl td .addressList li .td3 p,
.reg_tbl td .addressList li .td3 a,
.reg_tbl #addAddress {
	color: #1010ca;
	font-size: 12px;
	line-height: 30px;
	text-decoration: underline;
	cursor: pointer;
}

.reg_tbl #addAddress {
	display: inline;
}

.reg_tbl.check td .addressList li {
	display: block;
	padding: 10px 15px;
}

.reg_tbl.check td .addressList li p {
	font-size: 15px;
	line-height: 23px;
}

#inputConfirm {
	width: 240px;
	margin: 30px auto;
	padding: 14px 0;
	font-size: 20px;
}

.reg_tbl td .w36 {
	width: 36px;
}

.reg_tbl td .w48 {
	width: 48px;
}

.reg_tbl td .w64 {
	width: 64px;
}

.reg_tbl td .w80 {
	width: 80px;
}

.reg_tbl td .w96 {
	width: 96px;
}

.reg_tbl td .w120 {
	width: 120px;
}

.reg_tbl td .w150 {
	width: 150px;
}

.reg_tbl td .w180 {
	width: 180px;
}

.reg_tbl td .w310 {
	width: 310px;
}

.gobackBtn {
	position: relative;
	height: 52px;
	margin: 30px 0;
}

.gobackBtn .red_btn {
	position: absolute;
	top: 0;
	left: 50%;
	width: 240px;
	margin: 0;
	padding: 15px 0;
	font-size: 20px;
}

.gobackBtn .gray_btn {
	position: absolute;
	top: 7px;
	right: calc(50% + 50px);
	width: 140px;
	margin: 0;
	padding: 10px 0;
	color: #000;
	font-size: 16px;
}

/*--------------------------------------------------*/
/*  LINE注文                                        */
/*--------------------------------------------------*/
.line_flow h2 {
	margin: 40px 0 30px 0;
	padding: 14px 0;
	color: #fff;
	font-size: 22px;
	font-weight: bold;
	line-height: 22px;
	text-align: center;
	background: #00b000;
}

.step_flow {
	position: relative;
	margin-top: 20px;
	padding: 10px 0;
	font-size: 0;
	text-align: center;
}

.step_flow li {
	display: inline-block;
	position: relative;
	width: 154px;
}

.step_flow li:not(:last-child)::after {
	position: absolute;
	top: 50%;
	right: -17px;
	width: 0;
	height: 0;
	margin-top: -15px;
	content: "";
	border-color: transparent transparent transparent #b0b0b0;
	border-style: solid solid solid solid;
	border-width: 15px 10px 15px 10px;
}

.step_flow li a {
	display: block;
	position: relative;
	width: 120px;
	margin: 0 15px;
	padding: 4px 0 0 0;
	color: #000;
	font-size: 20px;
	line-height: 32px;
	text-align: center;
	text-decoration: none;
	border: 2px solid #a0a0a0;
	border-radius: 2px;
}

.tel_flow .step_flow li a:hover {
	background: #ffeaaa;
	border-color: #f06000;
}

.line_flow .step_flow li a:hover {
	background: #eaffea;
	border-color: #01b302;
}

.step_flow li a span {
	display: block;
	padding-bottom: 4px;
	font-size: 16px;
	line-height: 20px;
	text-align: center;
}

.step_box {
	position: relative;
	margin: 30px 0 50px 0;
}

.step_box .mark {
	position: absolute;
	top: -27px;
	left: 30px;
	width: 84px;
	height: 56px;
	padding: 14px 0;
	color: #fff;
	font-size: 32px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	border: 4px solid #fff;
	border-radius: 100%;
}

.tel_flow .step_box .mark {
	background: #f06000;
}

.line_flow .step_box .mark {
	background: #01b302;
}

.step_box .mark span {
	display: block;
	height: 16px;
	padding-bottom: 8px;
	font-size: 16px;
	line-height: 1;
}

.box_title {
	height: 18px;
	padding: 10px 0;
	color: #fff;
	font-size: 18px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	border-radius: 4px 4px 0 0;
}

.tel_flow .box_title {
	background: #f06000;
}

.line_flow .box_title {
	background: #01b302;
}

.box_body {
	padding: 30px 20px;
	color: #000;
	font-size: 16px;
	line-height: 1.6;
	border-top: none;
	border-radius: 0 0 4px 4px;
}

.tel_flow .box_body {
	border: 2px solid #f06000;
}

.line_flow .box_body {
	border: 2px solid #01b302;
}

.box_inner {
	display: table;
	width: 100%;
	margin: 10px 0;
}

.box_txt {
	display: table-cell;
	width: ;
	padding: 0 20px 0 0;
	vertical-align: top;
}

.box_img {
	display: table-cell;
	width: 300px;
	vertical-align: top;
}

.box_img img {
	display: block;
	width: 288px;
	padding: 5px;
	background: #fafafa;
	border: 1px solid #c0c0c0;
}

.box_body p {
	padding-bottom: 10px;
}

.border .box_img,
.border .box_txt {
	padding-top: 10px;
	padding-bottom: 20px;
	border-bottom: 1px dotted #01b302;
}

.line_box {
	position: relative;
	margin: 30px 0 50px 0;
}

.line_inner {
	display: table;
	width: 100%;
}

.line_left {
	display: table-cell;
	width: ;
	padding: 0 20px 60px 0;
	vertical-align: top;
	font-size: 16px;
	line-height: 1.6;
}

.line_right {
	display: table-cell;
	width: 380px;
	padding: 20px 0;
	font-size: 16px;
	line-height: 1.6;
	vertical-align: middle;
	background: #d8dce4;
	border-left: 1px solid #464e66;
	border-right: 1px solid #464e66;
}

#step_line_1 .line_right {
	padding: 0 0 0 0;
}

#step_line_4 .line_right {
	border-bottom: 1px solid #464e66;
}

.line_right img {
	display: block;
	width: 380px;
}

.line_title {
	height: 84px;
	margin: 0 0 20px 0;
}

.line_title .mark {
	display: inline-block;
	width: 84px;
	height: 56px;
	padding: 14px 0;
	color: #fff;
	font-size: 32px;
	font-weight: bold;
	line-height: 1;
	text-align: center;
	background: #01b302;
	border: 4px solid #fff;
	border-radius: 100%;
}

.line_title .mark span {
	display: block;
	height: 16px;
	padding-bottom: 8px;
	font-size: 16px;
	line-height: 1;
}

.line_title .text {
	display: inline-block;
	height: 24px;
	padding: 50px 0 10px 5px;
	color: #000;
	font-size: 24px;
	font-weight: bold;
	line-height: 1;
}

/*--------------------------------------------------*/
/*  SPモーダルウィンドウ                            */
/*--------------------------------------------------*/
.scroll_lock4,
.scroll_lock3,
.scroll_lock2,
.scroll_lock {
	overflow: hidden;
}

#sp_modal_overlay4,
#sp_modal_overlay3,
#sp_modal_overlay2,
#sp_modal_overlay {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 901;
	width: 100%;
	height: 120%;
	background-color: rgba(0, 0, 0, 0.7);
}

.scroll_wrap4,
.scroll_wrap3,
.scroll_wrap2,
.scroll_wrap {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 902;
	width: 100%;
	height: 100%;
	overflow: auto;
}

.sp_modal_box4,
.sp_modal_box3,
.sp_modal_box2,
.sp_modal_box {
	display: none;
	position: relative;
	z-index: 903;
	width: 80%;
	max-width: 960px;
	margin: 40px auto;
	padding: 0 0 86px 0;
	background: #fff;
	border: 4px solid #f04070;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
}

.sp_modal_box::before {
	position: absolute;
	left: 0;
	top: 180px;
	z-index: 904;
	width: 100%;
	height: 20px;
	content: "";
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
	background: linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
}

.sp_modal_box::after {
	position: absolute;
	left: 0;
	bottom: 126px;
	z-index: 904;
	width: 100%;
	height: 20px;
	content: "";
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
}

.sp_modal_box2::before {
	position: absolute;
	left: 0;
	top: 96px;
	z-index: 904;
	width: 100%;
	height: 20px;
	content: "";
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
	background: linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
}

.sp_modal_box2::after {
	position: absolute;
	left: 0;
	bottom: 86px;
	z-index: 904;
	width: 100%;
	height: 20px;
	content: "";
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
}

.sp_modal_box4::before,
.sp_modal_box3::before {
	position: absolute;
	left: 0;
	top: 96px;
	z-index: 904;
	width: 100%;
	height: 20px;
	content: "";
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
	background: linear-gradient(to bottom, rgba(255, 255, 255, 1), rgba(255, 255, 255, 0.3));
}

.sp_modal_box3::before {
	top: 140px;
}

.sp_modal_box4::after,
.sp_modal_box3::after {
	position: absolute;
	left: 0;
	bottom: 86px;
	z-index: 904;
	width: 100%;
	height: 20px;
	content: "";
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.3), rgba(255, 255, 255, 1));
}

.sp_modal_box4 .close_btn,
.sp_modal_box3 .close_btn,
.sp_modal_box2 .close_btn,
.sp_modal_box .close_btn {
	position: absolute;
	top: 10px;
	right: 10px;
	z-index: 905;
	width: 48px;
	height: 36px;
	padding: 6px 0;
	color: #fff;
	font-size: 36px;
	line-height: 1;
	text-align: center;
	cursor: pointer;
	background: #f04070;
}

.sp_modal_box4 .close_btn:hover,
.sp_modal_box3 .close_btn:hover,
.sp_modal_box2 .close_btn:hover,
.sp_modal_box .close_btn:hover {
	opacity: 0.8;
}

.sp_modal_box3 .menu,
.sp_modal_box2 .menu,
.sp_modal_box .menu {
	height: 64px;
	margin: 0 auto 20px auto;
	font-size: 0;
	text-align: center;
}

.sp_modal_box3 .menu li,
.sp_modal_box2 .menu li,
.sp_modal_box .menu li {
	display: inline-block;
	width: 140px;
	height: 48px;
	margin: 0 10px;
	padding: 7px 0;
	color: #202020;
	font-size: 18px;
	line-height: 24px;
	text-align: center;
	cursor: pointer;
	background: -webkit-linear-gradient(top, #faffff, #dadada);
	background: -moz-linear-gradient(top, #faffff, #dadada);
	background: linear-gradient(to bottom, #faffff, #dadada);
	border: 1px solid #808080;
	border-radius: 4px;
}

.sp_modal_box3 .menu,
.sp_modal_box2 .menu {
	height: 64px;
	margin: 20px auto 30px auto;
}

.sp_modal_box3 .menu li,
.sp_modal_box2 .menu li {
	width: 200px;
}

.sp_modal_box4 .title,
.sp_modal_box3 .title,
.sp_modal_box2 .title,
.sp_modal_box .title {
	position: relative;
	padding: 30px;
	font-size: 28px;
	font-weight: bold;
	line-height: 36px;
	text-align: center;
}

.sp_modal_box3 .title {
	line-height: 44px;
}

.sp_modal_box4 .body,
.sp_modal_box3 .body,
.sp_modal_box2 .body,
.sp_modal_box .body {
	padding: 30px 50px;
	overflow-y: scroll;
}

.sp_modal_box3 .body {
	padding: 10px 50px 30px;
}

.sp_modal_box4 .body p,
.sp_modal_box3 .body p,
.sp_modal_box2 .body p,
.sp_modal_box .body p {
	padding: 4px 0;
	font-size: 20px;
	line-height: 32px;
}

.sp_modal_box4 .body p.mini,
.sp_modal_box3 .body p.mini,
.sp_modal_box2 .body p.mini,
.sp_modal_box .body p.mini {
	font-size: 18px;
	line-height: 26px;
}

.sp_modal_box4 .body p strong,
.sp_modal_box3 .body p strong,
.sp_modal_box2 .body p strong,
.sp_modal_box .body p strong {
	padding: 0 3px;
	font-size: 22px;
}

.sp_modal_box3 .body p .icon_img,
.sp_modal_box2 .body p .icon_img,
.sp_modal_box .body p .icon_img {
	display: inline;
	width: 24px;
	margin: 0 5px;
	padding: 0;
}

.sp_modal_box3 .body p .icon_img.border,
.sp_modal_box2 .body p .icon_img.border,
.sp_modal_box .body p .icon_img.border {
	padding: 1px;
	border: 1px solid #dadada;
}

.sp_modal_box3 .body p .block_img,
.sp_modal_box2 .body p .block_img,
.sp_modal_box .body p .block_img {
	display: block;
	width: 80%;
	max-width: 600px;
	margin: 10px auto;
	padding: 1px;
	border: 1px solid #dadada;
}

.sp_modal_box3 .body p .block_img img,
.sp_modal_box2 .body p .block_img img,
.sp_modal_box .body p .block_img img {
	display: block;
	width: 100%;
	margin: 0 auto;
}

.sp_modal_box3 .body .num,
.sp_modal_box2 .body .num,
.sp_modal_box .body .num {
	display: inline-block;
	width: 36px;
	height: 24px;
	margin: 0 10px 0 0;
	padding: 6px 0;
	color: #fff;
	font-size: 24px;
	font-weight: bold;
	line-height: 24px;
	text-align: center;
	border-radius: 2px;
	background: #f04060;
}

.sp_modal_box3 .body .t,
.sp_modal_box2 .body .t,
.sp_modal_box .body .t {
	position: relative;
	padding: 0 0 0 46px;
}

.sp_modal_box3 .body .t .num,
.sp_modal_box2 .body .t .num,
.sp_modal_box .body .t .num {
	position: absolute;
	top: 0;
	left: 0;
}

.sp_modal_box4 p.gray_btn,
.sp_modal_box3 p.gray_btn,
.sp_modal_box2 p.gray_btn,
.sp_modal_box p.gray_btn {
	width: 240px;
	margin: 70px auto 40px auto;
	padding: 11px 0;
}

.sp_modal_box4 .red_btn,
.sp_modal_box3 .red_btn,
.sp_modal_box2 .red_btn,
.sp_modal_box .red_btn {
	width: 540px;
	padding: 18px 0;
	font-size: 28px;
	line-height: 1;
}

.sp_modal_box4 .ok_btn,
.sp_modal_box3 .ok_btn,
.sp_modal_box2 .ok_btn,
.sp_modal_box .ok_btn {
	position: absolute;
	left: calc(50% - 271px);
	bottom: 20px;
	width: 540px;
	padding: 18px 0;
	font-size: 28px;
	line-height: 1;
}

.sp_modal_box4 .gray_btn.ok_btn,
.sp_modal_box3 .gray_btn.ok_btn,
.sp_modal_box2 .gray_btn.ok_btn,
.sp_modal_box .gray_btn.ok_btn {
	position: absolute;
	left: calc(50% - 161px);
	bottom: 20px;
	width: 320px;
	padding: 12px 0;
	font-size: 20px;
	line-height: 1;
}

.sp_modal_box3 .conveni_tbl,
.sp_modal_box2 .conveni_tbl {
	width: 100%;
}

.sp_modal_box3 .conveni_tbl th,
.sp_modal_box2 .conveni_tbl th {
	padding: 0 20px 6px 0;
	font-size: 22px;
	font-weight: normal;
	line-height: 28px;
	text-align: right;
	vertical-align: bottom;
}

.sp_modal_box3 .conveni_tbl td,
.sp_modal_box2 .conveni_tbl td {
	padding: 6px 0;
	font-size: 24px;
	line-height: 28px;
	text-align: right;
	vertical-align: bottom;
}

/*--------------------------------------------------*/
/*  モーダルウィンドウ                              */
/*--------------------------------------------------*/
#modal_overlay {
	display: none;
	z-index: 200;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 120%;
	background-color: rgba(0, 0, 0, 0.75);
}

.scroll_wrap {
	display: none;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 201;
	width: 100%;
	height: 100%;
	overflow: auto;
}

.modal_box {
	display: none;
	position: absolute;
	z-index: 202;
	width: 720px;
	text-align: left;
	background: #fff;
	border: 4px solid #f04070;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
}

.modal_box.scroll_box {
	position: relative;
	width: 80%;
	max-width: 960px;
	margin: 40px auto;
	padding: 0 0 20px 0;
}

.modal_box.scroll_box::after {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 20px;
	content: "";
	background: -webkit-linear-gradient(top, rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 1));
	background: -moz-linear-gradient(top, rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 1));
	background: linear-gradient(to bottom, rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 1));
}

.modal_box .close_btn {
	position: absolute;
	top: 5px;
	right: 5px;
	width: 48px;
	height: 36px;
	padding: 6px 0;
	color: #fff;
	font-size: 36px;
	line-height: 1;
	text-align: center;
	cursor: pointer;
	background: #f04070;
}

.modal_box .close_btn:hover {
	opacity: 0.8;
}

.modal_box .title {
	padding: 30px 60px 20px 30px;
	font-size: 28px;
	font-weight: bold;
	line-height: 36px;
	text-align: center;
}

.modal_box .body {
	padding: 20px 30px;
}

.modal_box.scroll_box .body {
	overflow-y: scroll;
}

.modal_box .body p {
	padding: 4px 0;
	font-size: 18px;
	line-height: 26px;
}

.modal_box .body form {
	width: 540px;
	margin: 0 auto 20px auto;
}

.modal_box .body form p {
	margin: 0;
	padding: 0;
	line-height: 1;
}

.modal_box .body form .input {
	margin: 0 0 15px 0;
}

.modal_box .red_btn {
	width: 240px;
	margin: 30px auto 10px auto;
	padding: 14px 0;
}

.modal_box .gray_btn {
	width: 240px;
	margin: 30px auto 10px auto;
	padding: 13px 0;
}

.modal_box .payment .red_btn {
	width: 320px;
	margin: 30px auto 20px auto;
	padding: 18px 0;
	font-size: 22px;
}

.modal_box .payment .gray_btn {
	width: 240px;
	margin: 0 auto 20px auto;
	padding: 16px 0;
}

.modal_box .btn_area {
	position: relative;
	margin: 20px 0 0 0;
	font-size: 0;
	text-align: center;
}

.modal_box .btn_area a,
.modal_box .btn_area p {
	display: inline-block;
	margin: 10px 20px;
}

.modal_box .btn_area .gray_btn {
	width: 160px;
}

.modal_box .btnArea {
	position: relative;
	height: 46px;
	margin: 30px 0 10px 0;
}

.modal_box .btnArea .red_btn {
	position: absolute;
	top: 0;
	right: 100px;
	margin: 0;
	padding: 13px 0;
}

.modal_box .btnArea .gray_btn {
	position: absolute;
	top: 6px;
	left: 80px;
	width: 90px;
	margin: 0;
	padding: 10px 0;
	color: #000;
	font-size: 14px;
}

.modal_box .reg_tbl {
	width: 540px;
	margin: 0 auto;
}

.modal_box .reg_tbl th {
	width: 104px;
	text-align: center;
}

.modal_box .reg_tbl th span {
	display: block;
	margin: 5px auto 0 auto;
}

.modal_box .reg_tbl td {
	padding: 15px 0 15px 15px;
}

.modal_box .inputHelp {
	z-index: 202;
}

.modal_box #help_address1,
.modal_box #help_address0_1,
.modal_box #help_address1_1,
.modal_box #help_address2_1,
.modal_box #help_address3_1 {
	top: -56px !important;
}

.modal_box #help_address2,
.modal_box #help_address0_2,
.modal_box #help_address1_2,
.modal_box #help_address2_2,
.modal_box #help_address3_2 {
	top: -18px !important;
}

.modal_box #help_address3,
.modal_box #help_address0_3,
.modal_box #help_address1_3,
.modal_box #help_address2_3,
.modal_box #help_address3_3 {
	top: 20px !important;
	left: 176px !important;
}

.modal_box .reg_tbl .errorMessage {
	left: 360px;
	z-index: 201;
}

.modal_box #error_zip,
.modal_box #error_zip0,
.modal_box #error_zip1,
.modal_box #error_zip2,
.modal_box #error_zip3 {
	margin-top: -32px;
}

.modal_box #error_address1,
.modal_box #error_address0_1,
.modal_box #error_address1_1,
.modal_box #error_address2_1,
.modal_box #error_address3_1 {
	margin-top: -61px;
}

.modal_box #error_address2,
.modal_box #error_address0_2,
.modal_box #error_address1_2,
.modal_box #error_address2_2,
.modal_box #error_address3_2 {
	margin-top: -18px;
}

.modal_box #error_address3,
.modal_box #error_address0_3,
.modal_box #error_address1_3,
.modal_box #error_address2_3,
.modal_box #error_address3_3 {
	margin-top: 20px;
}




.modal_box .body.mainte {
	height: 430px;
	padding: 20px 30px 20px 360px;
	background: url(/img/mainte.png) no-repeat left 20px bottom 0;
}

.modal_box .body.mainte p {
	padding: 8px 0;
	font-size: 20px;
	line-height: 32px;
}

.modal_box .body.mainte p strong {
	font-size: 24px;
}

.modal_box .body.timer {
	min-height: 160px;
	background: url("/img/cart_timer_image.png") no-repeat right 10px bottom 20px;
}

.modal_box .body.timer p {
	padding-right: 150px;
}

a.disabled {
	pointer-events: none;
	color: #000;
}
/* 新プレ移行モーダル */
.new_transfer_premium .sp_modal_box3 .body table {
    display: table;
    width: 100%;
    margin: 4em 0 6em;
    table-layout: fixed;
    font-size: 1.2em;
    max-width: 80%;
    margin: 0 auto;
}

.new_transfer_premium .sp_modal_box3 .body table th {
    font-weight: bold;
    border: 2px solid #d79d0e;
    text-align: center;
    padding: 20px;
    vertical-align: middle;
    background: #dc1c00;
    color: #fff;
}

.new_transfer_premium .sp_modal_box3 .body table th {
    font-size: 14px;
    padding: 0px 5px !important;
}

.new_transfer_premium .sp_modal_box3 .body table td {
    border: 2px solid #d79d0e;
    text-align: center;
    padding: 20px;
    vertical-align: middle;
    font-weight: 600;
    background: #fff;
}

.new_transfer_premium .sp_modal_box3 .body table td {
    text-align: center;
}

.new_transfer_premium .sp_modal_box3 .body table td {
    padding: 10px 20px !important;
    vertical-align: middle;
}

.new_transfer_premium .sp_modal_box3 .body table td img {
    max-width: 16%;
    display: block;
    margin: 0 auto;
}

.new_transfer_premium .sp_modal_box3 {
    background: url(/img/detail/new_transfer_premium_bg.png);
    background-size: cover;
    background-position: center;
    border-radius: 15px;
}

.new_transfer_premium .sp_modal_box3::before,
.new_transfer_premium .sp_modal_box3::after {
    content: none;
}

.new_transfer_premium .sp_modal_box3:after {
    background: rgba(255, 255, 255, 0.7);
    position: absolute;
    top: 5%;
    left: 4%;
    width: 92%;
    height: 90%;
    content: "";
    z-index: 1;
    border: 3px solid #d79d0e;
    border-radius: 15px;
}

.new_transfer_premium .sp_modal_box3:before {
    position: absolute;
    top: calc(5% - 10px);
    left: calc(4% - 10px);
    width: calc(92% + 20px);
    height: calc(90% + 20px);
    content: "";
    z-index: 1;
    border: 3px solid #d79d0e;
    border-radius: 15px;
    background: none;
}


.new_transfer_premium .sp_modal_box3 {
    border: none;
}

.new_transfer_premium .sp_modal_box3 .inner {
    /* z-index: 10; */
    position: relative;
    z-index: 2;
}

.new_transfer_premium .sp_modal_box3 .title {
    padding: 50px 30px 20px;
}

.new_transfer_premium .sp_modal_box3 .red_btn span {
    font-size: 0.8em;
}

.new_transfer_premium .sp_modal_box3 .red_btn {
    padding: 10px 0;
    font-size: 25px;
    line-height: 1.4;
    /* background: -webkit-linear-gradient(top, #fb3f00, #d20204);
    background: -moz-linear-gradient(top, #fb3f00, #d20204);
    background: linear-gradient(to bottom, #fb3f00, #d20204); */
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.4);
background: linear-gradient(90deg, #6f5208, #b68e1b, #5b4206);
    transition: 0.6s;
    border: 1px solid #d79d0e;
}

.new_transfer_premium .sp_modal_box3 .red_btn:hover {
    opacity: 0.8;
}

.new_transfer_premium .sp_modal_box3 .close_btn {
    background: #dc1c00;
    height: 40px;
    top: 40px;
    right: 45px;
}

.new_transfer_premium .sp_modal_box3 .body p.mini {
    line-height: 32px;
}

.new_transfer_premium .sp_modal_overlay3_red {
    color: #dc1c00;
}

.new_transfer_premium .underline {
    background-color: #ffff66;
    color: #dc1c00;
    border-bottom: 2px solid #dc1c00;
    font-weight: 600;
}

.new_transfer_premium .bottom_link a:after {
    content: "\f04b";
    font-family: 'FontAwesome';
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

.new_transfer_premium .bottom_link a {
    position: relative;
}

/* パターン2 */
.new_transfer_premium .privilege_cover {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    position: relative;
    flex-wrap: wrap;
    width: 700px;
    margin: 0 auto;
}

.new_transfer_premium .privilege {
    width: 30% !important;
    background: #fff;
    box-sizing: border-box;
    border-radius: 25px;
    font-weight: 600;
    font-size: 1.2em;
    border: 2px solid #dc1c00;
    margin-bottom: 20px;
    padding: 10px;
}

.new_transfer_premium .privilege span {
    color: #323232;
    line-height: 1.4 !important;
    min-height: 80px;
    display: flex !important;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    font-size: 1em !important;
}

.new_transfer_premium .privilege span#privilege01 {
    display: block;
    line-height: 68px;
    text-align: center;
    /* font-size: 1.2em; */
}

.new_transfer_premium .privilege span#privilege02 {
    display: block;
    line-height: 24px;
    text-align: center;
    /* font-size: 1.1em; */
}

.new_transfer_premium .privilege span#privilege02 span {
    /* font-size: 16px; */
    line-height: 20px;
}

.new_transfer_premium .privilege span#privilege03 {
    display: block;
    line-height: 68px;
    text-align: center;
    /* font-size: 1.2em; */
}

.new_transfer_premium .privilege span#privilege04 {
    display: block;
    line-height: 34px;
    text-align: center;
    /* font-size: 1.1em; */
}

.new_transfer_premium .privilege span#privilege05 {
    display: block;
    line-height: 34px;
    text-align: center;
    /* font-size: 0.9em; */
}

.new_transfer_premium .privilege span#privilege06 {
    display: block;
    line-height: 34px;
    text-align: center;
    /* font-size: 1.1em; */
}

.new_transfer_premium .privilege img {
    width: 100px;
    height: auto;
    margin: 15px auto;
    display: block;
}

.new_transfer_premium .privilege a {
    position: relative;
    transition: 0.6s;
    padding: 10px;
    display: block;
}

.new_transfer_premium .privilege a {
    text-decoration: none;
    box-sizing: border-box;
    height: 100%;
}

.new_transfer_premium .privilege a:hover {
    opacity: 0.6;
}

.new_transfer_premium .logo {

    margin: 0 auto 20px;
    display: block;
}
/*---------------
 注意ボックス
---------------*/
.box_notice {
	position: relative;
	margin: 0;
	padding: 25px 10px 7px;
	background: #F2F2F2;
	border: solid 2px #DF0101;
}

.box_notice .box-title {
	position: absolute;
	display: inline-block;
	top: -2px;
	left: -2px;
	padding: 0 9px;
	height: 25px;
	line-height: 25px;
	font-size: 17px;
	background: #DF0101;
	color: #ffffff;
	font-weight: bold;
}

.box_notice p {
	margin: -25px 0 !important;
	padding: -25px 0 !important;
	color: #2a2a2a;
}

/* バナーボックス */
.bnr_box img {
	vertical-align: bottom;
	width: 100%;
	margin-bottom: 10px;
}

/*  商品詳細本文                                    */
/*--------------------------------------------------*/

/*
h3.article {
	margin: 0!important;
	font-size: 18px;
	font-weight: bold;
	border-bottom: 1px dotted #b0b0b0;
	margin-bottom: -20px;
}
*/
h3.article {
	font-size: 18px;
	padding: 10px;
	border-top: 1px solid #b0b0b0;
	border-bottom: 1px solid #b0b0b0;
}

h4.article {
	font-size: 18px;
	font-weight: bold;
	padding-left: 10px;
	border-left: 3px solid #b0b0b0;
}

/*---------------
 商品詳細/商品の特長
---------------*/
.box_merit {
	position: relative;
	margin: 0;
	padding: 25px 10px 7px;
	background: #FFEDBA;
	border: solid 2px #FFC107;
}

.box_merit .box-title {
	position: absolute;
	display: inline-block;
	top: -2px;
	left: -2px;
	padding: 0 9px;
	height: 25px;
	line-height: 25px;
	font-size: 17px;
	background: #FFC107;
	color: #ffffff;
	font-weight: bold;
}

.box_merit p {
	margin: -25px 0 !important;
	padding: -25px 0 !important;
	color: #2a2a2a;
}

/*---------------
 商品詳細/参考リンク
---------------*/
.box_reference {
	position: relative;
	margin: 0 0 30px 0;
	padding: 25px 10px 7px;
	background: #f0f0f0;
	border: solid 1px #c0c0c0;
}

.box_reference .box-title {
	position: absolute;
	display: inline-block;
	top: -1px;
	left: -1px;
	padding: 0 9px;
	height: 25px;
	line-height: 25px;
	font-size: 17px;
	background: #c0c0c0;
	color: #2a2a4b;
	font-weight: bold;
}

.box_reference p {
	margin: -25px 0 !important;
	padding: 10px;
	color: #2a2a4b;
	line-height: 1em;
}

/* sl1検索ボックスしたキーワード用 */
.dsp_cel.search_body {
	position: relative;
}

#suggestions {
	display: none;
	background-color: rgba(255, 255, 255, 0.9);
	padding: 10px;
	border: 3px solid #f05070;
	border-radius: 4px;
	position: absolute;
	z-index: 1000;
	width: 100%;
	box-sizing: border-box;
	margin-top: 4px;
	transition: all .3s ease;
}

#suggestions .search-box-h {
	font-weight: 600;
	font-size: 15px;
}

.fa-times-circle {
	position: absolute;
	right: 4px;
	top: 2px;
	font-size: 25px;
	cursor: pointer;
	transition: 0.6s;
}

.fa-times-circle:hover {
	opacity: 0.6;
}

#suggestions ul {
	display: flex;
	flex-wrap: wrap;
}

#suggestions ul li {
	padding: 2px 4px;
}

#suggestions ul li a {
	color: #f04070;
	background: #F9CDDA;
	text-decoration: none;
	padding: 2px 5px;
	font-size: 15px;
	border-radius: 3px;
	transition: 0.6s;
}

#suggestions ul li a:hover {
	color: #fff;
	opacity: 0.6;
}

/* ヘッダー用新検索フォーム */
.new_search_body {
	position: relative;
	padding-top: 10px;
}

.new_search_body .inner {
	position: relative;
	height: 34px;
	border: 3px solid #f05070;
	border-radius: 4px;
}

.new_search_body .search_input {
	width: calc(100% - 64px);
}

.new_search_body .search_submit {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 64px;
	height: 34px;
}

.new_search_body .search_input input {
	display: block;
	width: 100%;
	height: 34px;
	padding: 0 10px;
	box-sizing: border-box;
	font-size: 20px;
	line-height: 1;
	border: none;
	border-radius: 4px 0 0 4px;
	outline: none;
}

.new_search_body .search_input input::placeholder {
	line-height: 30px !important;
}

.new_search_body .search_submit {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 64px;
	height: 34px;
}

.new_search_body .search_submit input {
	display: block;
	border: none;
	width: 64px;
	padding: 7px 0;
	color: #fff;
	font-size: 20px;
	line-height: 1;
	text-align: center;
	background: #f04070;
	cursor: pointer;
}

.search_area form {
	margin: 0;
}

.search_option {
	margin: 5px 0;
}

.search_menu {
	font-size: 15px;
	font-weight: 700;
	margin: 3px 0;
}

.search_menu input {
	display: none;
}

.search_menu label {
	font-size: 15px;
	margin-right: 10px;
	cursor: pointer;
}

.search_menu label span {
	border: 1px solid #ffc6d6;
	background-color: #fff;
	width: 16px;
	height: 16px;
	display: inline-block;
	vertical-align: middle;
	margin-top: -3px;
	margin-right: 5px;
	border-radius: 50%;
	line-height: 0;
	position: relative;
	z-index: 1;
}

.search_menu input[name='search_select']:checked+label span::before,
.search_menu input[name^=search_r_select]:checked+label span::before {
	content: "";
	display: block;
	background-color: #f04070;
	border-radius: 50%;
	line-height: 0;
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	margin: 13%;
}
.new_search_box_result_body .search_submit{
    display: block;
    position: absolute;
    top: 3px;
    right: 3px;
    width: 56px;
    height: 36px;
}
.new_search_box_result_body .search_submit input{
    display: block;
    border: none;
    width: 56px;
    padding: 7px 0;
    color: #fff;
    font-size: 20px;
    line-height: 1;
    text-align: center;
    background: #f04070;
    cursor: pointer;
}
/* 検索失敗ページ */
.new_search_box_result {
	position: relative;
	width: 600px;
	margin: 20px auto;
	padding: 20px 20px 10px 20px;
	background: #fff0fa;
	border: 2px solid #f07090;
}

.new_search_box_result p {
	padding: 10px 20px;
	font-size: 14px;
	line-height: 24px;
	text-align: center;
	vertical-align: bottom;
}

.new_search_box_result p strong {
	color: #f00;
	font-size: 16px;
	font-weight: bold;
}

.new_search_box_result .search_menu {
	width: 480px;
	margin: 5px auto !important;
}

.new_search_box_result .search_area {
	position: relative;
	width: 480px;
	height: 40px;
	margin: 10px auto;
	background: #f05070;
	border-radius: 3px;
}
.new_search_box_result .search_submit{
    display: block;
    position: absolute;
    top: 3px;
    right: 0;
    width: 64px;
    height: 34px;
}
.new_search_box_result .search_submit input{
    display: block;
    border: none;
    width: 64px;
    padding: 7px 0;
    color: #fff;
    font-size: 20px;
    line-height: 1;
    text-align: center;
    background: #f04070;
    cursor: pointer;
}
.new_search_box_result input[type="text"] {
	display: block;
	position: absolute;
	top: 3px;
	left: 3px;
	width: 414px;
	height: 34px;
	padding: 0 10px;
	box-sizing: border-box;
	font-size: 22px;
	line-height: 32px;
	border: none;
	border-radius: 3px 0 0 3px;
}

.new_search_box_result .search_submit label {
	display: block;
	position: absolute;
	top: 0px;
	right: 0px;
	width: 56px;
	height: 32px;
	color: #fff;
	font-size: 20px;
	line-height: 32px;
	background: #f05070;
	border: none;
	border-radius: 0 3px 3px 0;
}

.new_search_box_result .search_submit label img {
	width: 100%;
	height: auto;
}
/* サジェスト */
.popular-tags-box {
	display: none;
	background-color: rgba(255, 255, 255, 0.9);
	padding: 10px;
	border: 3px solid #f05070;
	border-radius: 4px;
	position: absolute;
	z-index: 1000;
	width: 100%;
	box-sizing: border-box;
	margin-top: 4px;
	transition: all .3s ease;
}

.popular-tags-box .suggest-header {
	display: flex;
	align-items: center;
	margin-bottom: 4px;
}

.popular-tags-box .suggest-title {
	font-weight: bold;
	font-size: 15px;
}

.popular-tags-box .close-btn {
	margin-left: auto;
	font-size: 18px;
	cursor: pointer;
	padding: 0 4px;
	border-radius: 50%;
	transition: background 0.2s;
}

.popular-tags-box .close-btn:hover {
	background: #ffe5f0;
}

.popular-tags-box .popular-tags {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.popular-tags-box .popular-tags .tag {
	color: #f04070;
	background: #F9CDDA;
	text-decoration: none;
	padding: 2px 5px;
	font-size: 15px;
	border-radius: 3px;
	transition: 0.6s;
	cursor: pointer;
	white-space: nowrap;
}

.popular-tags-box .popular-tags .tag:hover {
	color: #fff;
	opacity: 0.6;
}
/* 紹介バナー設置 */
.introduction_banner {
	margin: 20px auto 30px;
	display: block;
	text-align: center;
}

.introduction_banner img {
	width: 100%;
}

/* 未入金者へのバナー */
.not_payment .top_fixed_banner {
	display: block !important;
}

.top_fixed_banner {
	text-align: center;
	background: #ffb300;
	line-height: 30px;
	color: #fff;
	font-size: 14px;
}

.top_fixed_banner .fas,.top_fixed_banner .fa {
	margin-right: 10px;
}

.top_fixed_banner a {
	color: #fff;
}

.top_fixed_banner a:hover {
	text-decoration: none;
	opacity: 0.6;
}
.history_unpaid{
    display: none;
    border: 4px solid #ff4a00;
    border-radius: 5px;
    margin: 20px auto 30px;
}
.history_unpaid.not_payment{
	display: block;
}
.not_payment .history_unpaid{
	display: block;
}
.history_unpaid_h{
    background: #ff4a00;
    text-align: center;
    line-height: 40px;
    color: #fff;
	font-weight: 600;
}
.history_unpaid p{
    padding: 15px;
}

/* 通知ボタン追加 */
#top_btn li#bell{
	position: relative;
}
#bell a span {
    position: absolute;
    background: #2a2a2a;
    right: 5px;
    top: 0;
    padding: 3px 5px;
    color: #fff;
    border-radius: 10px;
    font-size: 10px;
    animation: bell_blink 1s step-start infinite;
}
@keyframes bell_blink {
  50% {
    opacity: 0;
  }
}
#bell a svg{
    fill: #f04070;
    width: 72px;
    height: 46px;
    padding: 2px;
    box-sizing: border-box;
}
#bell a:hover svg{
	opacity: 0.7;
}
#right_bell svg{
    width: 52px;
    height: 35px;
    box-sizing: border-box;
    padding: 5px 0 0px;
    position: absolute;
    top: -2px;
    left: 0;
}

#point_history svg {
	position: absolute;
	top: 3px;
	left: 13px;
}

#point_history span {
	position: absolute;
	bottom: 2px;
	left: 6px;
	font-size: 10px;
}
.push_banner_area .round_btn_cover{
	position: absolute;
	right: -5px;
	top:-5px;
	z-index: 1;
}
.push_banner_area .round_btn {
display: block;
position: relative;
width: 20px;
height: 20px;
border-radius: 50%;  /* 丸みの度合い */
background: #666; /* ボタンの背景色 */
transition: 0.5s;
/* font-size: 14px; */
}
.push_banner_area .round_btn:hover{
	cursor: pointer;
	opacity: 0.6;
}

.push_banner_area .round_btn::before, .push_banner_area .round_btn::after {
content: "";
position: absolute;
top: 50%;
left: 50%;
width: 3px;
height: 14px;
background: #fff; /* バツ印の色 */
}

.push_banner_area .round_btn::before {
transform: translate(-50%,-50%) rotate(45deg);
}

.push_banner_area .round_btn::after {
transform: translate(-50%,-50%) rotate(-45deg);
}

.push_banner_area_inner {
	position: relative;
}
.push_banner_area_inner::after {
content: "";
position: absolute;
top: 0;
left: 22px;
border-style: solid;
border-width: 0 10px 10px 10px;
border-color: transparent transparent rgba(227, 86, 8, 0.8);
translate: -50% -100%;
}

div#push_fixed {
	position: absolute;
	bottom: -70px;
	z-index: 1;
	width: 135px;
	left: 15px;
	text-align: center;
    display: none;
}
.show-bell div#push_fixed {
    display: block;
}
#top_btn li .push_banner_area_inner {
	background-color: rgba(227, 86, 8, 0.8);
	height: auto;
	width: 100%;
	font-size: 13px;
	padding: 6px 8px;
	box-sizing: border-box;
	line-height: 1.8;
	color: #fff;
	border-radius: 5px;
	font-weight: 600;
	text-decoration: none;
	text-align: center;
}

.push_banner_area_inner div {
	display: inline-block;
	font-size: 15px;
	font-weight: 600;
	color: #ffda60;
	margin-right: 2px;
}