﻿@charset "UTF-8";

/*================================================
 *  CSSリセット
 ================================================*/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary,time,mark,audio,video { margin: 0; padding: 0; border: 0; outline: 0; font-size: 100%; vertical-align: baseline; background: transparent; font-weight: normal; }
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section { display: block; }
ul { list-style: none; }
blockquote,q { quotes: none; }
blockquote:before,blockquote:after,q:before,q:after { content: none; }
a { margin: 0; padding: 0; font-size: 100%; vertical-align: baseline; background: transparent; }
del { text-decoration: line-through; }
abbr[title],dfn[title] { border-bottom: 1px dotted; cursor: help}
table td { vertical-align: top; }
hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0 }
input,select { vertical-align: middle; }
iframe { border: none; }
.cashlessPtBack { width:auto; }

/*================================================
 *  一般・共通設定
 ================================================*/
body { font-size: 14px; font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; line-height: 1.6; background: #fff; color: #333; }
a { color: #333; }
a:hover { text-decoration: none; }
a:hover img { opacity: 0.5; }
h1 { text-align: left; }
h2 { font-size: 21px; font-weight: bold; }
h3 { font-size: 16px; font-weight: bold; }
h4 { font-size: 18px; font-weight: bold; }
h5,h6 { font-weight: bold; }

/* ---------- 余白調整用クラス ---------- */
.inner { position: relative; width: 980px; margin: 0 auto; }
.updown { padding: 1em 0; }
.space-top { margin-top: 2em; }
.space-btm { margin-bottom: 2em; }
.center { text-align: center; }
.blocenter { margin-bottom: 5px; text-align: center; }
.flex { display: flex; }

/* ---------- インライン要素クラス ---------- */
/* 文字ベタ黄色マーカー */
.mark { background: linear-gradient(transparent 50%, #FFF100 50%); background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, transparent), color-stop(50%, #FFF100)); }

/* ---------- バナーフレーム箇所 ---------- */
#slide-item { margin-top: 1em; width: 100%; height: 90px; overflow: hidden; }
#slide-item iframe { width: 100%; height: 90px; }
/* 発送遅延のご案内時 高さ190px */
#rakuten_bnr { width: 100%; height: 100px; overflow: hidden; padding-top: 1em !important; } /* 通常190px */
#rakuten_bnr iframe { width: 100%; height: 100px; overflow: hidden; } /* 通常190px */
#notice_bnr { width: 100%; height: 0px; overflow: hidden; padding-top: 1em; display: block; } /* 通常120px */
#notice_bnr iframe { width: 100%; height: 0px; overflow: hidden; } /* 通常120px */

/* ---------- ページ上部へ戻るボタン ---------- */
#ptop { position: fixed; bottom: 1%; right: 1%; z-index: 999; }
#ptop a { display: block; width: 35px; height: 35px; padding: 2px; text-align: center; border-radius: 50%; background: #3ea22b; color: #fff; }

/* ---------- 特集ページリンクボタン ---------- */
#fix-box { background: url(../images/banner/fixbn1.png) 0 0 no-repeat; top: 300px; }
.fix-bn { width: 122px; height: 120px; position: fixed !important; position: absolute; right: 10px; -webkit-transition: width ease-in-out 0.5s; transition: width ease-in-out 0.5s; z-index: 999; }
.fix-bn:hover { width: 132px; }
.fix-bn a { display: block; width: 100%; height: 100%; }

/*================================================
 *  ヘッダー
 ================================================*/
h1#keyword { padding-bottom: 0.3em; text-align: right; font-weight: bold; color: #3ea22b; }
header,#header { position: relative; width: 100%; margin-top: 0.5em; box-sizing: border-box; -webkit-box-sizing: border-box; }
header #head,#header #head { height: 60px; padding-bottom: 1em; }
header #head .logomenu,#header #head .logomenu { display: table; width: 100%; }
header #head #nav-drawer,#header #head #nav-drawer { display: none; }
header .summary,#header .summary { position: absolute; top: 0; right: 0; margin: 0; }
header .summary li,#header .summary li { text-align: right; }
header .info li a,#header .info li a { color: #333; font-size: 12px; }
header .info li + li,#header .info li + li { border-left: 1px solid #333; }
header iframe { width: 100%; height: 60px; }
#header iframe { width: 100%; height: 65px; }
.info { font-size: 0px; }
.info li { display: inline-block; padding: 0 10px; text-align: center; }
.info li:nth-last-child(1) { padding: 0 0 0 10px; }
.info li a { display: block; }
nav,#nav { overflow: hidden; width: 100%; min-width: 980px; padding: 0.6em 0; background: #3EA22B; }
nav ul,#nav ul { float: right; }
nav li,nav li a,#nav li,#nav li a { color: #fff; font-size: 14px; text-decoration: none; }
nav .info li,#nav .info li { padding: 0 5px; }
nav .info li:nth-last-child(1),#nav .info li:nth-last-child(1) { padding: 0 0 0 5px; }
nav li a,#nav li a { border: 1px solid #fff; padding: 0 5px; border-radius: 5px; }
nav #favokey,#nav #favokey { line-height: 28px; }
nav form,#nav form { height: 26px; margin: 0.25em auto; text-align: center; }
/*nav form,#nav form { float: left; height: 26px; background: #fff; margin-top: 0.25em; }*/
nav input,#nav input { margin: 0; height: 100%; vertical-align: top; background-color: transparent; box-sizing: border-box; -webkit-box-sizing: border-box; }
nav input[type="text"],#nav input[type="text"] { width: 600px; background: #fff; text-indent: 0.7em; font-size: 1em; border: none; -webkit-border-radius: 0; -webkit-appearance: none; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
/*nav input[type="text"],#nav input[type="text"] { width: 240px; background: #fff; text-indent: 0.7em; font-size: 1em; border: none; -webkit-border-radius: 0; -webkit-appearance: none; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }*/
nav input[type="submit"],#nav input[type="submit"] { width: 100px; background: #333; color: #fff; font-size: 0.9em; border: none; -webkit-border-radius: 0; -webkit-appearance: none; -webkit-tap-highlight-color: rgba(0, 0, 0, 0); }
.container { margin: 0 auto; padding: 0; width: 100%; color: #333; background: #f3faf3; overflow: hidden; }
.spnav { display: none; }

/*================================================
 *  コンテンツ（メイン）
 ================================================*/
/* ---------- 基本設計 ---------- */
#contents { overflow: hidden; width: 980px; margin: 1.5em auto; background: #fff; }
#main { overflow: hidden; float: right; width: 690px; box-sizing: border-box; -webkit-box-sizing: border-box; text-align: center; }
#main h2 { margin: 0.5em 0; padding: 0 2%; position:relative; display:inline-block; clear: both; }
#main h2:before, #main h2:after { content: ""; display: block; width: 400px; height: 4px; border-top: 1px solid #333; border-bottom:1px solid #333; position:absolute; top:50%; margin-top:-2px; }
#main h2:before { left:-404px; }
#main h2:after { right:-404px; }
#main h2#cvp { font-size: 14px; font-weight: normal; margin: 0 2% 0.5em 2%; padding: 0; }
#main h2#cvp:before, #main h2#cvp:after { border: 0; }
#main > div { text-align: left; }
#main div > p { width: 96%; margin:0 auto; }
#main div > strong a { margin: 0.2em 0 0.2em 2%; }
#main em { font-weight: bold; font-style: normal; color: #bf0000; }
#main small { font-size: 12px; }

/* ---------- リンクボタン※インライン要素タイプ ---------- */
#main strong a { margin: 0.2em 0.5em 0.2em 0; padding: 0.5em; border: 1px solid #333; border-radius: 5px; color: #333; line-height: 48px; font-size: 14px; font-weight: bold; text-decoration: none; }
#main strong a::after { content: url('../images/main/arrow2.png'); position: relative; top: 2px; margin-left: 0.5em; }
#main strong a:hover { border: 1px solid #ccc; }

/* ---------- リンクボタン※ブロック要素タイプ ---------- */
#main .button { overflow: hidden; }
#main .button p a { display: block; width: 96%; padding: 0 3%; margin: 0 auto 0.5em auto; line-height: 2em; text-align: center; border: 1px solid #333; border-radius: 5px; box-sizing: border-box; font-weight: bold; text-decoration: none; background: #fff; }
#main .button p a::after { content: url('../images/main/arrow2.png'); position: relative; top: 2px; margin-left: 1em; }
#main .button p a:hover { border: 1px solid #ccc; }

/* ---------- アンカーリンクボタン※文字のみオレンジベタ ---------- */
#main .anchorbtn { width: 98%; margin: 5px auto 0 auto; }
#main .anchorbtn ul { overflow: hidden; width: 100%; display: flex; }
#main .anchorbtn ul li { display: flex; height: auto; margin: 5px 0.5em 0 0; float: left; width: 50%; width: calc((100% - 0.5em) / 2); width: -moz-calc((100% - 1em) / 2); }
#main .anchorbtn ul li a { display: block; width: 100%; padding: 0.5em; margin: 0 auto; line-height: 1.5em; border-radius: 5px; font-weight: bold; background: #ffbf00 url(../images/main/arrow3.png) no-repeat right 10px center; background-size: 16px 16px; box-sizing: border-box; text-decoration: none; }
#main .anchorbtn ul li a:hover { background: #ffe7aa url(../images/main/arrow3.png) no-repeat right 10px center; background-size: 16px 16px; }
#main .anchorbtn ul li:last-child { margin: 5px 0 0 0; }

/* ---------- アンカーリンクボタン※画像付きタイプ ---------- */
#main .ancbtn ul { width: 100%; display: table; margin: 0.5em 0; border-collapse: separate; border-spacing: 0.5em 0; }
#main .ancbtn li { width: 50%; display: table-cell; border: 1px solid #ccc; font-size: 12px; }
#main .ancbtn li a { display: block; padding: 0.2em; }
#main .ancbtn li p { width: 75%; height: 100%; display: inline-block; padding-left: 2%; }
#main .ancbtn li span { width: 23%; height: 100%; display: inline-block; vertical-align: middle; }

/* ---------- 見出しデザイン ---------- */
#main h3.underline { padding-top: 3em; margin-bottom: 0.5em; border-bottom: 3px solid #3ea22b; color: #3ea22b; }
#main h3.underline { clear: both; }
#main h3.bgcolor { clear: both; background: #3ea22b; color: #fff; padding: 10px; margin: 1.5em 0 0.4em 0; }
#main h4 { padding: 0.3em 0; margin: 0.2em 0; }
#main h4 span { font-weight: bold; margin: 0 0.5em; padding: 0 0.3em; background: #3ea22b; color: #fff; border-radius: 3px; }
#main h4.left { display: block; width: 96%; margin:0 auto; }
#main h4.underline { border-bottom: 2px solid #ccc; font-size: 18px; margin: 2em 0 0.5em 0; padding-left: 10px; }
#main h4.underline:before { content: ''; width: 8px; height: 20px; margin-right: 5px; display: inline-block; position: relative; left: -5px; top: 4px; background: #3ea22b; }
#main h4.bgcolor { background: #ffe7aa; margin: 0.5em; padding: 1em; display: inline-block; border-radius: 10px; }
#main h4.bgcolor b { color: #bf0000; font-weight: bold; }
#main h4.bgcolor small { font-size: 12px; font-weight: normal; }

/* ---------- その他 ---------- */
/* お買い物フロー用 */
#main .flownext { text-align: center; margin: 2em auto; }

/* 画像 */
#main span { position: relative; }
#main span img,
#main em img { width: 100%; }
/* 画像の上にテキスト */
#main span em { position: absolute; top: 0; left: 0; margin: 0; color: #fff; background: #ff0000; line-height: 1; padding: 10px; }
#main span.overtext { display: block; overflow: hidden; position: relative; }
#main span.overtext em { position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: 4%; color: #fff; background-color: rgba(0, 0, 0, 0.6); font-size: 18px; line-height: 1.5; padding: 15% 2%; text-align: center; }
#main span.overtext em small { font-size: 14px; }
/* プルダウンボタン */
.selectbox select { width: 100%; padding: 5px; -webkit-appearance: none; -moz-appearance: none; appearance: none; border: 1px solid #999; background: #fff url(../images/main/arrow3.png) right 5px bottom 50% no-repeat; background-size: 16px, 100%; }

/* ---------- 囲いデザイン ---------- */
/* 点線囲み */
.borderwrap { width: 96%; background: #f3faf3; border: 1px dashed #ccc; padding: 1em; margin: 0.5em auto; box-sizing: border-box; }

/* ベタ囲み */
#main .section { margin: 1em 0; padding: 0.5em; background: #eceadc; }
#main .section h5 { padding: 5px; font-size: 16px; font-weight: bold; color: #3EA22B; background: #f3faf3; text-align: center; }
#main .section h6 { padding: 0.5em; color: #333; font-size: 16px; font-weight: bold; text-align: center; }

/* 目次デザイン */
#main .box-wrap { display: -webkit-box; display: -ms-flexbox; display: flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; margin-top: 2%; }
#main .box { width: 100%; border: 1px solid #ccc; box-sizing: border-box; }
#main .box h3 { background: #eceadc; padding: 0.5em; }
#main .box ul { padding: 5px 0; }
#main .box ul li { padding:  5px 0 0 30px; background:url('../images/main/arrow5.png') no-repeat left 10px top 7px; background-size: 15px auto; }
#main .box + .box { margin-left: 2%; }
#main .box ul li a { text-decoration: none; }
#main .box ul li a:hover { text-decoration: underline; }

/* ---------- リストデザイン ---------- */
/* 商品リスト */
#main .item2list,#main .item3list,#main .item4list { width: 96%; margin: 0 auto; }
#main .item2list ul,#main .item3list ul,#main .item4list ul { overflow: hidden; display: flex; }
#main .item2list ul li,#main .item3list ul li,#main .item4list ul li { height: auto; margin: 0.5em 0.5em 0 0; float: left; }
#main .item2list ul li { width: 50%; width: calc((100% - 0.5em) / 2); width: -moz-calc((100% - 0.5em) / 2); }
#main .item3list ul li { width: 33.33333%; width: calc((100% -  1em) / 3); width: -moz-calc((100% - 1em) / 3); }
#main .item4list ul li { width: 25%; width: calc((100% - 1.5em) / 4); width: -moz-calc((100% - 1.5em) / 4); }
#main .item2list ul li:last-child, #main .item3list ul li:last-child, #main .item4list ul li:last-child { margin-right: 0; }
#main .item2list ul li a,#main .item3list ul li a,#main .item4list ul li a { text-decoration: none; }
#main .item2list span,#main .item3list span,#main .item4list span { display: block; overflow: hidden; margin-bottom: 0.2em; position: relative; }
#main .item2list p,#main .item3list p,#main .item4list p { font-size: 12px; }
#main .item2list h4,#main .item3list h4,#main .item4list h4 { font-size: 16px; }
#main .item2list p em,#main .item3list p em,#main .item4list p em,.price-ex em { font-size: 1.4em; font-weight: bold; color: #bf0000; }
#main .item2list p em::after,#main .item3list p em::after { content: " (税込)"; font-weight: normal; font-size: 0.6em; }
#main .item2list p b,#main .item3list p b,#main .item4list p b { font-size: 12px; margin-left: 5px; color: #bf0000; }
#main .item2list p strong,#main .item3list p strong { border-radius: 4px; background: #DF0000; color: #fff; padding: 0.2em 0.4em; margin-right: 2%; }
#main .item2list ul.oneclm { display: block; }
#main .item2list ul.oneclm li { width: 100%; }

/* 2カラムデザイン */
/* twocolumnlist = 右画像60％タイプ */
/* twocolumn2list = 左画像35％タイプ */
#main ul.twocolumnlist,#main ul.twocolumn2list { display: table; width: 96%; margin: 1em auto; padding-bottom: 0.5em; border-bottom: 1px dotted #ccc; }
#main ul.twocolumnlist:last-child,#main ul.twocolumn2list:last-child { border-bottom: none; }
#main ul.twocolumnlist li,#main ul.twocolumn2list li { display: table-cell; vertical-align: top; }
#main ul.twocolumnlist li:nth-child(2) { width: 35%; }
#main ul.twocolumnlist li img,#main ul.twocolumn3list li img { width: 96%; padding-left: 4%; }
#main ul.twocolumn2list li:nth-child(1) { width: 60%; }
#main ul.twocolumn2list li img { width: 96%; padding-right: 4%; }
#main ul.twocolumn2list li h5 { font-size: 16px; font-weight: bold; color: #3ea22b; }
#main ul.twocolumn2list li p { text-align: left; }

/* FAQページ用 */
#main .block { margin: 1em 0; padding: 2%; background: #fff; border: 1px solid #ccc; }
#main .block h5 { padding: 5px; font-size: 16px; font-weight: bold; color: #3EA22B; background: #f3faf3; text-align: left; }
#main .block ul { display: table; width: 100%; margin: 2% 0 }
#main .block ul li:nth-child(1) { width: 5%; font-weight: bold; }
#main .block ul li:nth-child(2) { width: 18%; padding: 2%; background: #3ea22b; color: #fff; font-weight: bold; text-align: center; }
#main .block ul li:nth-child(3) { padding-left: 2%; background: #fff; }
#main .block li { display: table-cell; list-style: none; padding: 2% 0; vertical-align: middle; }
#main .block li p { margin: 0; }

/* 2行テーブル */
#main ul.tablelist { width: 96%; display: table; table-layout: fixed; margin: 0 auto 1em auto; }
#main ul.tablelist li { display: table-cell; text-align: center; vertical-align: bottom; border-top: 1px solid #ccc; border-right: 1px solid #ccc; border-bottom: 1px solid #ccc; }
#main ul.tablelist li:nth-child(1) { border-left: 1px solid #ccc; }
#main ul.tablelist li b { display: block; font-weight: bold; color: #3ea22b; padding: 0.5em 0; border-bottom: 1px dashed #ccc; }
#main ul.tablelist li p { display: block; padding: 0.5em 0; }

/* 箇条書き */
/* bullet2 = 赤色 */
ul.bullet,ul.bullet2 { width: 96%; margin: 0 auto; }
ul.bullet li,ul.bullet2 li { padding: 0 0 0.5em 0; margin: 0 0 0 1.5em; position: relative; text-indent: -1.1em; font-size: 14px; }
ul.bullet li:before,ul.bullet2 li:before { content: ''; width: 12px; height: 12px; display: inline-block; border-radius: 100%; position: relative; left: -5px; top: 1px; }
ul.bullet li { color: #333; }
ul.bullet li:before { background: #333; }
ul.bullet2 li { color: #bf0000; }
ul.bullet2 li:before { background: #bf0000; }

/* ---------- テーブルデザイン ---------- */
/* 送料ページ他 */
.sotable { width: 690px; table-layout: fixed; text-align: center; font-size: 12px; border-collapse: collapse; border: 1px solid #999; margin: 10px 0; }
.sotable td,.sotable th { border: 1px solid #999; padding: 5px; vertical-align: middle; }
.sotable td:nth-child(1),.sotable tr:nth-child(2) td { background: #f3faf3; }
.sotable th { background: #3ea22b; color: #fff; font-weight: bold; }
.sotable caption { font-weight: bold; font-size: 18px; text-align: left; }

/* お支払いページ他 */
.patable { width: 96%; border-collapse: collapse; border: 1px solid #999; margin: 1em auto; }
.patable td { border: 1px solid #999; padding: 10px; vertical-align: middle; }
.patable tr:nth-child(1) td { background: #f3faf3; }

/* 山実シリーズ違い用 */
.recotable { width: 100%; max-width: 690px; table-layout: fixed; border-collapse: collapse; border: 1px solid #bbb; text-align: center; margin: 0; }
.recotable caption { background: #bbb; color: #fff; font-weight: bold; font-size: 18px; padding: 0.5em 0; }
.recotable td { padding: 0.2em; vertical-align: middle; }
.recotable th { padding: 1em 0.2em; vertical-align: middle; line-height: 1.5em; font-size: 16px; font-weight: bold; }
.recotable img { width: 100%; }
.recotable p img { width: 100%; }
.recotable p a { margin: 0; padding: 5px; border: 1px solid #333; border-radius: 5px; color: #333; line-height: 48px; font-size: 14px; font-weight: bold; text-decoration: none; }
.recotable p a::after { content: url('../images/main/arrow2.png'); position: relative; top: 2px; margin-left: 5px; }
.recotable p a:hover { border: 1px solid #ccc; }
.recotable b { display: block; font-size: 16px; font-weight: bold; background: #eee; }

/* ---------- ランキング ---------- */
#main #ranking,#main .ranking { overflow: hidden; text-align: center; }
#main #ranking h3,#main .ranking h3 { position: relative; width: 100%; margin: 0.5em 0; border-bottom: 1px solid #999; color: #3ea22b; }
#main #ranking ul,#main .ranking ul { overflow: hidden; display: flex; }
#main #ranking li,#main .ranking li { margin-top: 6px; margin-left: 10px; padding-bottom: 10px; position: relative; }
#main #ranking li a,#main .ranking li a { display: block; width: 126px; text-align: center; text-decoration: none; font-size: 12px; }
#main #ranking li p,#main .ranking li p { font-size: 10px; text-align: left; }
#main #ranking li span,#main .ranking li span { display: block; overflow: hidden; width: 126px; height: 126px; position: relative; margin-bottom: 5px; border: 1px solid #999; }
#main #ranking li span img,#main .ranking li span img { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); -webkit-transform: translate(-50%, -50%); width: 100%; height: auto; }
#main .ranking li::after { position: absolute; top: -6px; left: -3px; width: 30px; height: 30px; padding: 4% 3%; box-sizing: border-box; border-radius: 15px; color: #fff; font-weight: bold; }
#main .ranking li:nth-child(1)::after { content: '1'; background: #FFD700; }
#main .ranking li:nth-child(2)::after { content: '2'; background: #C0C0C0; }
#main .ranking li:nth-child(3)::after { content: '3'; background: #C47222; }
#main .ranking li:nth-child(4)::after { content: '4'; background: #ccc; }
#main .ranking li:nth-child(5)::after { content: '5'; background: #ccc; }
/* #main .ranking li:nth-child(1)::after { background: rgb(255, 255, 255, 0.7) url('../images/main/rank1.gif') no-repeat center center; background-size: contain; } */
/* #main .ranking li:nth-child(2)::after { background: rgb(255, 255, 255, 0.7) url('../images/main/rank2.gif') no-repeat center center; background-size: contain; } */
/* #main .ranking li:nth-child(3)::after { background: rgb(255, 255, 255, 0.7) url('../images/main/rank3.gif') no-repeat center center; background-size: contain; } */
/* #main .ranking li:nth-child(4)::after { background: rgb(255, 255, 255, 0.7) url('../images/main/rank4.gif') no-repeat center center; background-size: contain; } */
/* #main .ranking li:nth-child(5)::after { background: rgb(255, 255, 255, 0.7) url('../images/main/rank5.gif') no-repeat center center; background-size: contain; } */

/* ---------- 下層ページ個別 ---------- */
#main #support { margin: 1em 0; padding: 2%; background: #fff; border: 1px solid #ccc; }
#main #support ul { margin: 2% 0; }
#main #support li { list-style: none; padding: 2% 0; }
#main #support h5 { padding: 5px; font-size: 16px; font-weight: bold; color: #3EA22B; background: #f3faf3; text-align: left; margin-bottom: 0.5em; }
#main #support b { padding: 5px 0; font-size: 24px; font-weight: bold; }
#main #support b img { height: 24px; padding-right: 5px; }
#main #support a { text-decoration: none; text-align: center; display: block; width: 190px; margin: 0 0 10px 0; padding: 10px; border: 1px solid #333; border-radius: 5px; color: #333; font-size: 16px; font-weight: bold; }
#main #support a::after { content: url('../images/main/arrow2.png'); position: relative; top: 2px; margin-left: 10px; }
#main #shoppingguide h4 { margin-bottom: 10px; }
#main #shoppingguide p#flowend { margin: 40px auto; font-size: 21px; font-weight: bold; color: #bf0000; text-align: center; }
#main #shoppingguide p#flowend span { font-size: 14px; font-weight: normal; }
#main #shoppingguide p#flowend span::before { content: "\A"; white-space: pre; }

/*================================================
 *  アコーディオンメニュー
 ================================================*/
.accbox { margin:0; padding: 0; max-width: 100%; }
.accbox label { display: block; margin: 1.5px 0; padding: 13px 12px; color: #333; font-weight: bold; background: #f3faf3; cursor: pointer; -webkit-transition: all 0.5s; transition: all 0.5s; }
.accbox label:before { content: '\f054'; font-family: 'FontAwesome'; padding-right: 8px; }
.accbox label:hover { background: #ffbf00; }
.accbox input { display: none; }
.accbox .accshow { height: 0; padding: 0; overflow: hidden; opacity: 0; -webkit-transition: 0.8s; transition: 0.8s; }
.accbox .accshow p { margin: 0; }
.cssacc:checked + label + .accshow { height: auto; padding: 5px; background: #fff; opacity: 1; }
.cssacc:checked + label:before { content: '\f078'; }

/*================================================
 *  コンテンツ（サブ）
 ================================================*/
#sub { box-sizing: border-box; -webkit-box-sizing: border-box; overflow: hidden; float: left; width: 260px; }
#sub span img { width: 100%; }
#sub iframe#notice { width: 100%; height: 220px; margin-bottom: 10px; display: none; }
#sub iframe#calendar { width: 100%; height: 317px; margin-bottom: 30px; }
#sub h3 { position: relative; margin-bottom: 20px; padding: 0.6em; background: #eceadc; border-radius: 7px; clear: both; }
#sub h3:after { position: absolute; content: ''; top: 100%; left: 30px; border: 10px solid transparent; border-top: 10px solid #eceadc; width: 0; height: 0; }
#sub li { margin-bottom: 0.5em; text-align: left; }
#sub li a { color: #333; text-decoration: none; }
#sub li h4 { font-size: 16px; padding: 0.3em 0 0 0; }
#sub li p { font-size: 12px; }
#sub .trim-sub { display: block; overflow: hidden; width: 260px; height: 180px; position: relative; margin-bottom: 5px; }
#sub .trim-sub img { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 100%; height: auto; }
#sub #emblem,#sub .emblem { display: table; margin-bottom: 20px; }
#sub #emblem img,#sub #emblem p,
#sub .emblem img,#sub .emblem p { display: table-cell; vertical-align: middle; }
#sub #emblem img,#sub .emblem img { padding-right: 5px; }
#sub #bargain { margin-bottom: 30px;overflow: hidden; }
#sub #bargain img { float: left; margin: 0 5px; }
#sub #category { margin-bottom: 30px; }
#sub #category li { margin-top: 5px; margin-bottom: 0; padding: 10px 0; border-bottom: 2px dotted #ccc; }
#sub #category li:nth-child(1) { background: url('../images/sub/cat-storage.jpg') right top no-repeat; background-size: 90px 72px; } 
#sub #category li:nth-child(2) { background: url('../images/sub/cat-interior.jpg') right top no-repeat; background-size: 90px 72px; } 
#sub #category li:nth-child(3) { background: url('../images/sub/cat-lunchbox.jpg') right top no-repeat; background-size: 90px 72px; } 
#sub #category li:nth-child(4) { background: url('../images/sub/cat-kitchen.jpg') right top no-repeat; background-size: 90px 72px; } 
#sub #category li:nth-child(5) { background: url('../images/sub/cat-washing.jpg') right top no-repeat; background-size: 90px 72px; } 
#sub #category li:nth-child(6) { background: url('../images/sub/cat-bath.jpg') right top no-repeat; background-size: 90px 72px; } 
#sub #category li:nth-child(7) { background: url('../images/sub/cat-cleaner.jpg') right top no-repeat; background-size: 90px 72px; } 
#sub #category li:nth-child(8) { background: url('../images/sub/cat-leisure.jpg') right top no-repeat; background-size: 90px 72px; } 
#sub #category li:nth-child(9) { background: url('../images/sub/cat-other.jpg') right top no-repeat; background-size: 90px 72px; }
#sub #category li h4 { font-size: 21px; font-weight: bold; color: #3EA22B; padding: 0; }

/*================================================
 *  フッター
 ================================================*/
footer h2,#footer h2 { margin: 0.5em; }
footer,#footer { clear: both; background: #f3faf3; min-width: 980px; }
footer .footmenu,footer .guide,#footer .footmenu,#footer .guide { position: relative; overflow: hidden; width: 980px; margin: 0 auto; padding: 20px 0; }
footer .footmenu ul,footer .guide ul,#footer .footmenu ul,#footer .guide ul { position: relative; float: left; left: 50%; margin: 0; padding: 0; }
footer .footmenu li,#footer .footmenu li { position: relative; float: left; left: -50%; margin: 0; padding: 0 15px; font-size: 12px; }
footer .footmenu li + li,#footer .footmenu li + li { border-left: 1px solid #333; }
footer .guide li,#footer .guide li { position: relative; float: left; left: -50%; margin: 0 10px; padding: 15px; width: 270px; height: 460px; border: 2px dashed #ccc; background: #fff; text-align: left; }
footer .guide dt,#footer .guide dt { font-size: 16px; font-weight: bold; text-align: center; }
footer .guide dd, #footer .guide dd { padding: 10px 0; }
footer .guide dd + dd,#footer .guide dd + dd { border-top: 2px dotted #ccc; }
footer .guide dl p,#footer .guide dl p { margin-left: 10px; color: #3EA22B; font-weight: bold; position: relative; }
footer .guide dl p:before,#footer .guide dl p:before { content: ''; width: 4px; height: 4px; display: inline-block; border-radius: 100%; background: #3EA22B; position: relative; left: -10px; top: -3px; }
footer .copyright,#footer .copyright { clear: both; padding: 20px 0; background: #eceadc; font-size: 12px; text-align: center; } 

/*================================================
 *  楽天市場CSS - かご周り
 ================================================*/



/* 2023/04/03 楽天仕様変更により廃止 */
/* カートボタン */
/* #pagebody div#rakutenLimitedId_aroundCart .add-cart { width: 330px !important; height: 60px !important; border-radius: 10px !important; } */
/* #pagebody div#rakutenLimitedId_aroundCart .checkout { width: 330px !important; height: 40px !important; border-radius: 10px !important; } */
/* .cart-button-container { float: left; }  */
/* 商品番号 */
/* span.item_number_title { color: #333 !important; font-size: 12px; background-color: #eceadc; padding: 1px 8px; } */
/* span.item_number { color: #333 !important; font-size: 13px; border-color: #eceadc; border-style: dashed; border-width: 0 0 1px; padding: 1px 2px 0; } */
/* キャッチコピー */
/* span.catch_copy { margin-bottom: 10px; display: block; color: #bf0000; font-size: 14px; } */
/* 商品名 */
/* span.item_name { font-size: 21px; color: #666; } */
/* span.item_name b { font-weight: normal; } */
/* 価格 */
/* span.tax_postage { color: #333; } */
/* .price1 { padding: 10px 5px 0 0; font-size: 14px !important; line-height: 46px; } */
/* .price2 { font-weight: normal; font-size: 26px !important; } */
/* 納期表示 選択肢の場合 */
/* td.floating-cart-sku-table { background: #ccc; } */
/* td.inventory_choice_name { width: 70px !important; font-size: 90% !important; padding: 4px; background-color: #E5E5E5 !important; } */
/* #rakutenLimitedId_aroundCart .inventory font { width: 200px !important; padding: 0px 5px !important; font-size: 11px !important; color: #333 !important; } */
/* 納期表示  選択肢在庫切れの場合 */
/* #rakutenLimitedId_aroundCart > table:nth-child(1) .inventory_soldout font:nth-child(1) { border: 0px !important; margin: 15px 0 10px; padding: 4px 8px 0px 94px; font-size: 12px !important; font-weight: normal !important; color: #3ea22b; display: inline-block; background-image: none !important; background-repeat: no-repeat; min-height: 30px; min-width: inherit; } */
/* 売り切れ文言 */
/* .soldout_msg { margin: 5px 0; padding: 4px 6px; font-weight: bold; font-size: 18px !important; color: #333 !important; background-color: #FFF; border-radius: 3px; display: inline-block; height: 30px; overflow: hidden; background: -webkit-gradient(transparent 60%, #ffbf00 60%); background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #ffbf00)); background: linear-gradient(transparent 60%, #ffbf00 60%); } */
/* 個数表示 上下余白調整 */
/* div#rakutenLimitedId_aroundCart.Firefox span.unit { line-height: 4em; } */
/* #units { margin: 10px 0; } */
/* input#units:after { content: "\A"; white-space: pre; } */
/* カート周り */
/* #rakutenLimitedId_aroundCart * { font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, 'ＭＳ Ｐゴシック', sans-serif !important; } */
/* #rakutenLimitedId_aroundCart > table:nth-child(1) { background-color: #f3faf3; padding: 10px; border-collapse: separate; } */
/* #rakutenLimitedId_aroundCart .option_select { background: #eceadc; padding: 0.5em; box-sizing: border-box; display: flex; } */
/* #rakutenLimitedId_aroundCart span.choice { font-weight: bold; color: #333; padding-right: 0.5em; font-size: 14px; } */
/* #rakutenLimitedId_aroundCart select { */
	/* -webkit-appearance: none; */
    /* -moz-appearance: none; */
    /* appearance: none; */
/* 	font-size: 14px !important; */
/* 	font-weight: bold !important; */
/* 	border: 0; */
/* 	background: #eceadc; */
/* 	color: #333; */
/* } */
/* #rakutenLimitedId_aroundCart select::-ms-expand { */
/* 	display: none; */
/* } */
/* 再入荷のお知らせ */
/* #rakutenLimitedId_aroundCart .InputGryBtn { width: 100%; } */



/* パンくずリスト */
td.sdtext > a:first-child { display: none; }
.sdtext { margin-left: -10px; color: #fff !important; padding-bottom: 3px; }
.sdtext > a { background: #ddd; padding: 0 30px 0 10px; display: block; float: left; text-decoration: none; color: #333; text-shadow: 0 1px 0 rgba(255, 255, 255, .5); position: relative; margin: 0; height: 20px; border: none; opacity: 1; -webkit-transition: none; transition: none; }
.sdtext > a:hover { background-color: #99db76; }
.sdtext > a:nth-of-type(2):after, .sdtext > a:nth-of-type(n + 3):after { content: url("../images/item/common/pan.png"); position: absolute; top: 0; right: 0; }
.sdtext > a:nth-of-type(2):hover:after { content: url("../images/item/common/pan_after_over.png"); position: absolute; top: 0; right: 0; }
.sdtext > a:nth-of-type(n + 3):hover { margin-left: -18px; padding: 0 30px 0 28px; }
.sdtext > a:nth-of-type(n + 3):hover:before { content: url("../images/item/common/pan_before_over.png"); position: absolute; top: 0; left: 0; }
.sdtext > a:nth-of-type(n + 3):hover:after { content: url("../images/item/common/pan_after_over.png"); position: absolute; top: 0; right: 0; }
.sdtext > a:nth-last-of-type(2) { padding-right: 30px; }
.sdtext > a:nth-last-of-type(2):after { content: url("../images/item/common/pan_last.png"); position: absolute; top: 0; right: 0; }
.sdtext > a:nth-last-of-type(2):hover:after { content: url("../images/item/common/pan_last_over.png"); position: absolute; top: 0; right: 0; }
.sdtext > a:last-of-type { background: none; }
.sdtext > a:last-of-type:hover { -webkit-box-shadow: 0 -1px 0 0 #aaa inset; box-shadow: 0 -1px 0 0 #aaa inset; margin: 0; padding: 0 10px; }
.sdtext > a:last-of-type:after,
.sdtext > a:last-of-type:hover:before,
.sdtext > a:last-of-type:hover:after { content: none; }

/*================================================
 *  楽天市場CSS - 商品画像
 ================================================*/
/* a.rakutenLimitedId_ImageMain1-3 br { display: none; } */
/* a.rakutenLimitedId_ImageMain1-3:nth-child(1) { height: 100%; min-width: 300px; text-align: center; float: left; display: block; } */
/* a.rakutenLimitedId_ImageMain1-3:nth-child(1) > img:nth-child(1) { max-width: 100%; max-height: 100%; margin: 0 0 10px 0; border: 0; } */
/* a.rakutenLimitedId_ImageMain1-3:nth-child(1):hover { text-align: center; } */
/* a.rakutenLimitedId_ImageMain1-3:nth-child(1):hover > img:nth-child(1) { max-width: 100%; max-height: 100%; margin: 0 0 10px 0; border: 0; -webkit-transform: scale(1.0); transform: scale(1.0); } */
/* a.rakutenLimitedId_ImageMain1-3:nth-child(n + 2) { float: left; display: inline-block; height: 140px; padding: 5px; background: #f3faf3; } */
/* a.rakutenLimitedId_ImageMain1-3:nth-child(n + 2) > img:nth-child(1) { margin: 0; border: 0; width: 140px; max-height: 140px; } */
/* a.rakutenLimitedId_ImageMain1-3:nth-child(n + 2):hover > img:nth-child(1) { border: 0; width: 140px; -webkit-transform: scale(1.1); transform: scale(1.1); } */
/* #picture_message { margin-top: 24px !important; height: 12px !important; } */
/* ---------- 動画 ---------- */
/* div[id^="RVideoPF"] { overflow: hidden; } */

/*================================================
 *  楽天市場CSS - 商品ページ
 ================================================*/
/* ---------- 商品販売説明文（パソコン） ---------- */
.staffrv { border: 1px solid #333; padding: 0.5em; margin: 2em 0; max-width: 690px; }
.staffrv > p { font-weight: normal; font-size: 1.5em; text-align: center; padding-bottom: 0.5em; text-decoration: underline; }
.staffrv h2 { font-weight: bold; font-size: 1.2em; color: #3EA22B; line-height: 2em; }
.staffrv ul { width: 100%; display: flex; box-sizing: border-box; }
.staffrv ul li { width: 50%; }
.staffrv ul li + li { margin-left: 1em; }
.staffrv ul li img { width: 100%; }
.staffrv ul li p { margin-bottom: 1em; }
.staffrv ul li span { display: flex; justify-content: center; align-items: center; padding: 0.5em; background: #f3faf3; }
.staffrv ul li span img { width: 50px; height: auto; padding-right: 0.5em; }
.staffrv ul li span b { font-weight: bold; }

/* ---------- 商品説明文（パソコン） ---------- */
div#itemspec { margin: 20px 0 60px 0; padding: 0 0 20px 0; width: 676px; }
div#itemspec h3 { font-size: 28px; font-weight: normal; color: #888; margin: 0; padding: 20px 0 0px 25px; min-height: 60px; }
div#itemspec b { display: block; font-weight: bold; font-size: 18px; color: #333; margin: 0; padding: 30px 0 10px 0; }
div#itemspec span { display: block; margin: 20px 0; padding: 20px 10px; list-style-type: none; vertical-align: top; /* overflow: hidden; */ }
div#itemspec span img { max-width: 676px; max-height: 500px; }
div#itemspec p { padding: 0 5px 10px 0; margin: 0 0 0 1em; line-height: 1.7em; position: relative; text-indent: -0.4em; font-size: 16px; color: #333; }
div#itemspec p:before { content: ''; width: 4px; height: 4px; display: inline-block; border-radius: 100%; background: #999; position: relative; left: -10px; top: -3px; }
div#itemspec table,div#itemspec th,div#itemspec td { margin: 0; padding: 0; }
div#itemspec table { background: #EEE; border-collapse: collapse; margin: 2em auto 0; font-size: 16px; border-bottom: 1px solid #CCCCCC; width: 100%; }
div#itemspec table th,div#itemspec td { border-top: 1px solid #CCCCCC; padding: 8px; }
div#itemspec table th { font-weight: normal; text-align: left; width: 26%; }
div#itemspec table td { background: #FFFFFF; }

/* ---------- 関連付け箇所 ---------- */
.wrp { width: 676px; background: #fff; padding-bottom: 20px; overflow: hidden; }
.srs_wrp { border: solid 4px #F3EFC5; }
.sld { margin: 0; padding: 0; width: 668px; background: #fff; }
.sld_h,.catnow h3 { padding: 0 5px 5px 5px; font-weight: bold; font-size: 14px; color: #3ea22b; background: #F3EFC5; }
.sld_cnt,.sld_cnt2 { background: #fff; position: relative; overflow-x: scroll; overflow-y: hidden; -webkit-overflow-scrolling: touch; -webkit-transform: translateZ(0); transform: translateZ(0); }
.sld_cnt_ul { margin: 10px 0 15px 10px; width: 744px; }
.sld_cnt_ul li { position: relative; float: left; margin: 0 10px 0 0; padding: 7px; width: 100px; background: #FFF; }
.sld_cnt_ul li p:nth-child(1) { margin: 0 auto; width: 100px; margin: 0; }
.sld_cnt_ul li p:nth-child(2) { text-align: center; font-size: 11px; margin: 0 0 5px 0; height: 36px; line-height: 18px; overflow: hidden; position: relative; }
.sld_cnt_ul li p:nth-child(2):before,
.sld_cnt_ul li p:nth-child(2):after,
.sld_cnt_ul2 li p:nth-child(2):before,
.sld_cnt_ul2 li p:nth-child(2):after { position: absolute; background: #fff; }
.sld_cnt_ul li p:nth-child(2):before,
.sld_cnt_ul2 li p:nth-child(2):before { content: "..."; bottom: 0; right: 0; }
.sld_cnt_ul li p:nth-child(2):after,
.sld_cnt_ul2 li p:nth-child(2):after { content: ""; width: 100%; height: 100%; }
.sld2 { margin: 10px 0 20px 0; padding: 0; width: 676px; background: #fff; }
.sld_h2 { margin: 10px 0; padding: 0 5px 5px 5px; font-weight: bold; font-size: 16px; color: #3ea22b; border-bottom: solid 1px #3ea22b; }
.sld_cnt_ul2 { margin: 0 0 20px 10px; width: 912px; }
.sld_cnt_ul2 li { position: relative; float: left; margin-right: 10px; padding: 5px; width: 130px; height: auto; background: #FFF; border: solid 1px #CCC }
.sld_cnt_ul2 li p:nth-child(1) { margin: 0 auto; display: block; width: 130px; height: 130px; overflow: hidden; }
.sld_cnt_ul2 li p img { position: relative; top: 50%; left: 50%; width: 130px; height: auto; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
.sld_cnt_ul2 li p:nth-child(2) { font-size: 12px; margin: 0 0 5px 0; height: 54px; line-height: 18px; overflow: hidden; position: relative; }
.cf:after { display: block; height: 0; content: ""; visibility: hidden; clear: both; }
.cf { zoom: 1; }

/* ---------- シリーズ一覧 ---------- */
#srs_bn a { display: block; overflow: hidden; clear: both; margin: 20px 10px; padding: 10px 20px 10px 10px; border: 2px solid #3ea22b; background: #FFF url(../images/item/common/catnow_arrow.png) no-repeat right 5px center; text-decoration: none; }
#srs_bn img { float: left; margin-right: 10px !important; max-height: 60px; }
#srs_bn p { font-weight: bold; font-size: 21px; color: #333; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
#srs_bn p:after { content: "\Aシリーズ一覧"; white-space: pre; font-weight: normal; font-size: 14px; color: #3ea22b; }
.reco_head { width: 676px; text-align: center; background: #FFF; margin: 40px 0 0 0; }
 .reco_head h2 { font-weight: normal; font-size: 16px; line-height: 40px; color: #FFF; background: #3ea22b; }
#recohead_img { background: #FFF url("../images/item/common/recommend_head.jpg") no-repeat 50% 50%; padding-bottom: 75px; background-size: contain; margin: 15px 10px 30px; }
#if-wrp { width: 676px; height: 650px; overflow: hidden; margin: 0; padding: 0; border: 0; }

/*================================================
 *  カテゴリページ
 ================================================*/
td.breadcrumbs_list { margin: 0; padding: 20px; width: 680px; color: #3ea22b; font-size: 21px; font-weight: bold; background-color: #eceadc; }
td.breadcrumbs_list a.breadcrumbs_list { font-size: 14px; font-weight: normal; color: #333; }
#pagebody > table:nth-child(8) > tbody:nth-child(1) > tr:nth-child(1) > td:nth-child(1) > table:nth-child(2) > tbody:nth-child(1) > tr:nth-child(1) > td:nth-child(1) > table:nth-child(1) > tbody:nth-child(1) > tr:nth-child(2) > td:nth-child(3) > table:nth-child(5) { background-color: #F3FAF3; padding: 10px; }
span.subcategory_list { display: none; }
a.subcategory_list { color: #666 !important; display: table-cell; padding: 0 20px; width: 33%; height: 60px; vertical-align: middle; border: 1px solid #ccc; box-sizing: border-box; border-radius: 6px; background: ##f8f8f8; }
a.subcategory_list:visited { color: #666 !important; }
a.subcategory_list:hover { color: #666 !important; text-decoration: none; background: #eceadc; }
a.subcategory_list:link { font-size: 13px; text-decoration: none; }
a.subcategory_list:hover { font-size: 13px; }
a.category_itemnamelink { display: block; position: relative; width: 100%; height: 54px; overflow: hidden; font-size: 12px; line-height: 1.5em; text-align: left; }
a.category_itemnamelink:before,
a.category_itemnamelink:after { background: #fff; position: absolute; }
a.category_itemnamelink:before { content: "･･･"; bottom: 0; right: 0; }
a.category_itemnamelink:after { content: ""; height: 100%; width: 100%; }
a.category_itemnamelink:link,
a.category_itemnamelink:hover,
a.category_itemnamelink:visited { font-size: 12px; color: #666; }
span.category_itemprice { color: #bf0000; font-size: 1.5em; font-weight: bold; }
#risFil > table { margin: 0; padding: 0; table-layout: fixed; }
#risFil .categoryWindowImg { width: 195px; height: 195px; border: 0px solid #ccc; box-sizing: border-box; }
