@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; 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;}
/*--------------------------------------------------*/
/*  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: Lato, "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", 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_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;
}
.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.category li:nth-child(4)  .sub_category {background: url("/img/menu/zoudai.png") no-repeat right bottom #fff;}
.left_menu.category li:nth-child(5)  .sub_category {background: url("/img/menu/biyaku.png") no-repeat right bottom #fff;}
.left_menu.category li:nth-child(11) .sub_category {background: url("/img/menu/diet.png") no-repeat right bottom #fff;}
.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 .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: 0 4px;
}
.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 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:hover {
	background: -webkit-linear-gradient(top,#faffff,#c0e0f0);
	background: -moz-linear-gradient(top,   #faffff,#c0e0f0);
	background: linear-gradient(to bottom,  #faffff,#c0e0f0);
}
.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;
}

/*--------------------------------------------------*/
/*  ピックアップ商品                                */
/*--------------------------------------------------*/
.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_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;
}

.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;
}

/* 使う場所別の設定 */
.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;
}
/*--------------------------------------------------*/
/*  部位・症状のメニュー                            */
/*--------------------------------------------------*/
.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;
}
#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;
}
/*---------------
 注意ボックス
---------------*/
.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;
}