@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.green_btn,
button.green_btn,
.green_btn {
	display: block;
	margin: 0 auto;
	padding: 11px 0;
	color: #fff;
	font-size: 18px;
	line-height: 1;
	text-align: center;
	text-decoration: none;
	text-shadow: -1px -1px 1px #606060;
	cursor: pointer;
	background: -webkit-linear-gradient(top,#20aa00,#008000);
	background: -moz-linear-gradient(top,   #20aa00,#008000);
	background: linear-gradient(to bottom,  #20aa00,#008000);
	border: 1px solid #006a00;
	border-radius: 4px;
}
.green_btn:hover {
	background: -webkit-linear-gradient(top,#1aa000,#006000);
	background: -moz-linear-gradient(top,   #1aa000,#006000);
	background: linear-gradient(to bottom,  #1aa000,#006000);
}
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::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_desc div#one_line {
    line-height: 34px;
}
.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(14) .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;
}
/*--------------------------------------------------*/
/*  その他コンテンツ                                */
/*--------------------------------------------------*/
.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);
}
.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;
}
.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;
}
.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;
}
/*--------------------------------------------------*/
/*  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_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_box4 .body,
.sp_modal_box3 .body,
.sp_modal_box2 .body,
.sp_modal_box .body {
	padding: 30px 50px;
	overflow-y: scroll;
}
.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_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_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;
}