/* -----------------------------------------------------------------------
	placeholder
----------------------------------------------------------------------- */
/* -----------------------------------------------------------------------
	placeholder
----------------------------------------------------------------------- */
/* -----------------------------------------------------------------------
	layout
----------------------------------------------------------------------- */
.pcOnly { display: inherit !important; }
@media screen and (max-width: 768px) {
 .pcOnly {
 display: none !important;
}
}
.spOnly { display: none !important; }
@media screen and (max-width: 768px) {
 .spOnly {
 display: inherit !important;
}
}
.pctbOnly { display: inherit !important; }
@media screen and (max-width: 768px) {
 .pctbOnly {
 display: none !important;
}
}
.fL { float: left; }
.fR { float: right; }
.clearFix:after { content: ""; display: table; clear: both; }
.clear { clear: both; }
.taL { text-align: left; }
.taR { text-align: right; }
.taC { text-align: center; }
/* -----------------------------------------------------------------------
	list
----------------------------------------------------------------------- */
.list01 { color: #595959; padding-left: 1em; text-indent: -1em; }
.list01 li:before { content: '\0030fb'; }
/* -----------------------------------------------------------------------
	table
----------------------------------------------------------------------- */
.table01 { width: 100%; font-size: 14px; border-top: 1px solid #9E9E9F; border-right: 1px solid #9E9E9F; }
@media screen and (max-width: 768px) {
 .table01 {
 font-size: 10px;
}
}
.table01 > tbody > tr > th, .table01 > tbody > tr > td { padding: 10px; vertical-align: middle; border-bottom: 1px solid #9E9E9F; border-left: 1px solid #9E9E9F; }
.table01 > tbody > tr > th { background: #F2F9FD; white-space: nowrap; font-weight: bold; }
.table01 > tbody > tr > th .small { font-size: 64%; display: inline-block; margin-left: 0.5em; font-weight: normal; }
@media screen and (max-width: 768px) {
 .table01 > tbody > tr > th .small {
 display: block;
 margin-left: 0;
 font-size: 7px;
}
}
.table02 { width: 100%; font-size: 12px; border-top: 1px solid #9E9E9F; border-right: 1px solid #9E9E9F; table-layout: fixed; }
@media screen and (max-width: 768px) {
 .table02 {
 font-size: 10px;
}
}
.table02 > thead > tr > th, .table02 > tbody > tr > th, .table02 > tbody > tr > td { padding: 20px 5px; vertical-align: middle; border-bottom: 1px solid #9E9E9F; border-left: 1px solid #9E9E9F; text-align: center; letter-spacing: -0.5px; }
@media screen and (max-width: 768px) {
 .table02 > thead > tr > th, .table02 > tbody > tr > th, .table02 > tbody > tr > td {
 padding: 5px;
}
}
.table02 > thead > tr > th img, .table02 > tbody > tr > th img, .table02 > tbody > tr > td img { display: inline-block; }
.table02 > tbody > tr > th { background: #F2F9FD; }
.table02 > thead > tr > th { background: #D9EEF9; padding: 8px 5px; }
@media screen and (max-width: 768px) {
 .table02 > thead > tr > th {
 padding: 5px;
}
}
.table02 + table { margin-top: 26px; }
.table03 { width: 100%; font-size: 12px; }
@media screen and (max-width: 768px) {
 .table03 {
 font-size: 10px;
}
}
.table03 > tbody > tr > th, .table03 > tbody > tr > td { vertical-align: top; line-height: 1.3; padding: 1px 0; }
.table03 > tbody > tr > th { width: 110px; white-space: nowrap; text-align: right; padding-right: 5px; }
.table03 > tbody > tr > th:after { content: '\00ff1a'; }
.table03 > tbody > tr > td { color: #008CD6; }
.table04 { width: 100%; background: #E0F0D8; font-size: 14px; line-height: 1.8; }
.table04_2 th { padding-right: 10px; white-space: nowrap; }
@media screen and (max-width: 768px) {
 .table04 {
 font-size: 10px;
}
}
.table04 > tbody > tr:nth-child(even) {
 background: #F0F7EC;
}
.table04 > tbody > tr > th, .table04 > tbody > tr > td { padding: 20px 0; vertical-align: middle; }
@media screen and (max-width: 768px) {
 .table04 > tbody > tr > th, .table04 > tbody > tr > td {
 padding: 10px;
}
}
.table04 > tbody > tr > th { width: 23%; padding-left: 5%; }
.table04 > tbody > tr > td { width: 77%; }
.table05 { width: 100%; font-size: 12px; border-collapse: separate; border-spacing: 2px; }
.table05.mb20 {margin-bottom:20px;}
@media screen and (max-width: 960px) {
.table05 {
 font-size: 10px;
}
}
@media screen and (max-width: 768px) {
 .table05 > thead {
 display: none;
}
}
.table05 > thead > tr > th, .table05 > tbody > tr > th, .table05 > tbody > tr > td { padding: 10px 20px; vertical-align: middle; background: #D9EEF9; }
@media screen and (max-width: 960px) {
.table05 > tbody > tr > td {
 padding: 10px;
}
}
 @media screen and (max-width: 768px) {
 .table05 > thead > tr > th, .table05 > tbody > tr > th, .table05 > tbody > tr > td {
   display: block;
   padding: 5px 10px;
   font-size: 12px;
 }
}
.table05 > thead > tr > th img, .table05 > tbody > tr > th img, .table05 > tbody > tr > td img { display: inline-block; }
@media screen and (max-width: 768px) {
 .table05 > thead > tr > th img, .table05 > tbody > tr > th img, .table05 > tbody > tr > td img {
 display: block;
}
	.table05 > tbody > tr > td a { display: block; margin: 0 auto; margin-top: 3%;}
	#cart_item_list__product_image img { width: 40%; display: block; margin: 0 auto; margin-top: 3%;}
	.table05 > tbody > tr > td[id^="result_list__name--"], #cart_item_list__product_detail {width: 100%;  font-size: 18px; height: 2em; border-bottom: 1px solid #008cd6; color: #008cd6;}
	.table05 > tbody > tr > td[id^="result_list__name--"] a {margin: 0; color: #008cd6;}
	.table05 > tbody > tr > td.textOverflowTest {padding: 5px 10px;}
	.btnPlus {width: 40% !important;}
}
.table05 > tbody > tr:nth-child(odd) > td {
 background: #F2F9FD;
}
.table05 > thead > tr > th { padding: 8px 20px; background: #008CD6 !important; text-align: center; color: #fff; white-space: nowrap; }
.table05 > tbody > tr > td { position: relative; }
@media screen and (max-width: 768px) {
/* .table05 > tbody > tr > td:before {
 content: attr(aria-label) ":";
 display: block;
 font-weight: bold;
}*/
}
.table05 .imgTd:before { content: normal !important; }
@media screen and (max-width: 768px) {
 .table05 .imgTd {
 text-align: center;
}
}
.table05 .th01 { width: 10%; }
/*.table05 .th06 { width: 15%; }*/
/* overflow:hidden、heightは必ず指定する */
.textOverflowTest {
  overflow: hidden;
  /*border: 1px solid #ccc;
  padding: 20px;*/
  height: 120px;
  width:14%;
  /*background: #eee;*/
}
.table05 > tbody > tr > td.textOverflowTest {padding: 10px 20px;}
@media screen and (max-width: 960px) {
.table05 .th01, .textOverflowTest {
 width: 20%;
}
}
@media screen and (max-width: 768px) {
.table05 .th01, .textOverflowTest {
 width: 100%;
}
	.textOverflowTest {height: auto;}
}
.table05.mypage, .formTbl.mypage {margin: 0 7.5%; width: 85%;}
.table05.mypage p.mypageTxt, #myPage .order_date, #myPage .order_detail { padding: 0% 3% 5%; font-size: 14px;}
.table05.mypage figure {display: inline-block;}
.table05.mypage figure + figure {margin-left: 30px;}
@media screen and (max-width: 768px) {
	.table05.mypage figure {display: block;}
	.table05.mypage figure + figure {margin-left: 0; margin-top: 3%;}
}

.table06 { width: 100%; margin-bottom:32px; border-spacing: 18px; border-collapse: separate; }
.table06 td { width: 50%; vertical-align: top; border: 1px solid #CCC; }
.table06 ul { font-size: 0; display:table; }
.table06 li { display:table-cell; font-size:14px; vertical-align:top; }
.table06 li + li { padding-left: 0px; }
.table06 li.itemimg { width:44%; }
.table06 li.itemimg img { width:100%; }
.table06 h1 { font-size:18px; font-weight:bold; line-height: 175%; border-bottom: 2px solid #000; display: inline; }
.table06 .info { font-size:12px; padding: 10px 0; }
.table06 .info_samp { font-size:14px; padding: 10px 0; }
.table06 .ico { display:block; padding-top:10px; }
.table06 .ico img { display: inline; margin-right: 5px; margin-bottom:5px; }
 @media screen and (max-width: 768px) {
.table06 td {
display:block;
width: 100%;
}
.table06 td:nth-child(odd) {
margin-bottom:18px;
}
.table06 li.txt {
font-size:12px;
}
.table06 .info {
font-size:10px;
}
.table06 .info_samp {
font-size:10px;
}
}
/* -----------------------------------------------------------------------
	placeholder
----------------------------------------------------------------------- */
/* -----------------------------------------------------------------------
	text
----------------------------------------------------------------------- */
.bold { font-weight: bold; }
.en { font-family: Helvetica, Arial, sans-serif; }

.indent01 { padding-left: 1em; text-indent: -1em; }
.ls1 { letter-spacing: 1px; }
.ls2 { letter-spacing: 2px; }
/* -----------------------------------------------------------------------
	link
----------------------------------------------------------------------- */
.link01 { text-decoration: underline; color: #008CD6; }
.link01.gr {color: #62AC40;}
.link02 { font-size: 10px; color: #62AC40; }
.link02:before { content: ''; display: inline-block; background: url(/dcms_media/image/ico_arrow07.png) no-repeat; background-size: contain; width: 7px; height: 12px; margin-right: 0.5em; vertical-align: middle; }
/* -----------------------------------------------------------------------
	button
----------------------------------------------------------------------- */
.btnStyle01, #entryForm #zip-search { display: block; width: 240px; line-height: 30px; text-align: center; color: #fff; font-size: 14px; background: #64B33C; border-radius: 3px; margin: 0 auto; font-weight: bold; }
.btnStyle01.arrow:after { content: ''; display: inline-block; background: url(/dcms_media/image/ico_arrow04.png) no-repeat; background-size: contain; width: 7px; height: 15px; vertical-align: middle; margin-left: 0.5em; }
.btnStyle01.sizeM { font-size: 18px; line-height: 50px; border-radius: 5px; width: 270px; }
@media screen and (max-width: 768px) {
 .btnStyle01.sizeM {
  font-size: 14px;
  width:auto;
}
}
.btnStyle01.sizeS, #entryForm #zip-search, #entryForm #zip-search2 { font-size: 14px; line-height: 34px; border-radius: 5px; width: 190px; }
.btnStyle01.bl, #entryForm #zip-search { background: #008CD6; }
.btnStyle01.gy { background: #9E9E9F; }
.btnStyle02 { display: block; width: 100%; line-height: 55px; text-align: center; color: #fff; font-size: 18px; font-weight: bold; background: #64B23C; border-radius: 3px; margin: 0 auto; }
#page_product_detail .btnStyle02 {width:460px;}
@media screen and (min-width: 769px) and (max-width: 1024px) {
    #page_product_detail .btnStyle02 {width:260px;}
}
@media screen and (max-width: 768px) {
 .btnStyle02 {
 font-size: 14px;
}
	#page_product_detail .btnStyle02 {width:170px;}
}
.SearchBtnSP {display: none;}
@media screen and (max-width: 768px) {
	.SearchBtnSP {display: block;}
}
/* -----------------------------------------------------------------------
	title
----------------------------------------------------------------------- */
.ttlStyle01 { font-size: 20px; padding: 2px 0; line-height: 1.3; color: #64B33C; border-bottom: 1px solid #64B33C; overflow: hidden; text-align: left; }
.ttlStyle01.gr { font-size: 20px; padding: 2px 0; line-height: 1.3; color: #64B33C; border-bottom:none; overflow: hidden; text-align: left; }
@media screen and (max-width: 768px) {
 .ttlStyle01 {
 font-size: 14px;
}
}
.ttlStyle01.wt { color: #fff; border-bottom: 1px solid #fff; padding: 0 0 4px;}
.ttlStyle01 .en { font-size: 15px; float: right; font-family: Helvetica, Arial, sans-serif; letter-spacing: 1px; padding-top: 8px;}
@media screen and (max-width: 768px) {
 .ttlStyle01 .en {
 display: block;
 font-size: 9px;
 /*margin-top: 5px;*/
}
}
.ttlStyle02 { color: #008CD6; font-size: 20px; line-height: 1.3; margin-bottom: 6px; text-align: left; }
@media screen and (max-width: 768px) {
 .ttlStyle02 {
   font-size: 16px;
 }
}
.ttlStyle02 .small { font-size: 12px; display: block; line-height: 1.2; padding-bottom: 8px; padding-top: 5px; }
@media screen and (max-width: 768px) {
 .ttlStyle02 .small {
 display: block;
 margin-left: 0;
 font-size: 10px;
 margin-top: 6px;
}
}
.ttlStyle02 .bk { color: #000; }
.ttlStyle02 .icon { display: inline-block; vertical-align: middle; color: #000; font-size: 12px; margin-left: 1em; white-space: nowrap; }
.ttlStyle02 .icon img { display: inline-block; vertical-align: middle; }
.ttlStyle03 { font-size: 32px; line-height: 1.3; color: #64B33C; text-align: center; }
@media screen and (max-width: 768px) {
 .ttlStyle03 {
 font-size: 30px;
 margin-top:3%;
}
}
.ttlStyle03.bl { color: #008CD6; margin:10px 0; }
.ashirai { background: url(/dcms_media/image/ashirai.jpg) no-repeat left center; padding-right: 2.6rem; background-size: contain; margin-right:5px; }
@media screen and (max-width: 768px) {
 .ashirai {
margin-right:0px;
}
}
.ttlStyle04 {font-size: 26px; font-weight: bold; padding: 0.5% 11% 1%; line-height: 1.3;}
.ttlStyle04 span {font-size: 18px;}
.ttlStyle04.bl {color: #fff; background: #008CD6;}
.ttlStyle05.bl {font-size: 18px; font-weight: bold; margin: 2% 11% 0; line-height: 1.3; color:#008CD6; border-bottom: 1px solid #008CD6;}
/* -----------------------------------------------------------------------
	placeholder
----------------------------------------------------------------------- */
/* -----------------------------------------------------------------------
	check button
----------------------------------------------------------------------- */
.checkInput01 { cursor: pointer; display: inline-block; position: relative; text-align: left; }
.checkInput01 input[type="checkbox"] { opacity: 0; filter: alpha(opacity=0); height: 0; width: 0; position: absolute; }
.checkInput01 .txt { display: inline-block; vertical-align: middle; padding-left: 20px; text-indent: -20px; }
.checkInput01 .txt:before { content: ''; display: inline-block; vertical-align: middle; width: 14px; height: 14px; background: #fff; border: 1px solid #008CD6; margin-right: 0.3em; }
.checkInput01 input[type=checkbox]:checked + .txt:before { background: #008CD6; }
.checkInput01.lbl .txt:before { border: 1px solid #00A9C7; }
.checkInput01.lbl input[type=checkbox]:checked + .txt:before { background: #00A9C7; }
.checkInput02 { cursor: pointer; display: inline-block; vertical-align: top; position: relative; }
.checkInput02 input[type="checkbox"] { opacity: 0; filter: alpha(opacity=0); height: 0; width: 0; position: absolute; }
.checkInput02 .txt { display: inline-block; vertical-align: middle; font-size: 14px; color: #595757; position: relative; vertical-align: top; padding: 11px 8px 11px 33px; background: #DBDCDC; border-radius: 3px; height: 40px; }
@media screen and (max-width: 768px) {
 .checkInput02 .txt {
 font-size: 12px;
 padding: 8px 8px 8px 30px;
 height: auto;
}
}
.checkInput02 .txt:before { content: ''; display: block; position: absolute; left: 14px; top: 15px; width: 10px; height: 10px; background: #008CD6; border-radius: 50%; z-index: 5; opacity: 0; filter: alpha(opacity=0); }
@media screen and (max-width: 768px) {
 .checkInput02 .txt:before {
 width: 8px;
 height: 8px;
 left: 14px;
 top: 12px;
}
}
.checkInput02 .txt:after { content: ''; display: block; position: absolute; left: 10px; top: 11px; width: 18px; height: 18px; background: #fff; border: 1px solid #888888; border-radius: 50%; z-index: 2; }
@media screen and (max-width: 768px) {
 .checkInput02 .txt:after {
 width: 16px;
 height: 16px;
 left: 10px;
 top: 8px;
}
}
.checkInput02 input[type=checkbox]:checked + .txt { background: #B2DCF3; }
.checkInput02 input[type=checkbox]:checked + .txt:before { opacity: 1; filter: alpha(opacity=100); }
/* -----------------------------------------------------------------------
	input text
----------------------------------------------------------------------- */
.textInput01, #entryForm input, #login_email, #login_pass { background: #fff; border: 1px solid #008CD6; border-radius: 5px; height: 32px; padding-left: 10px; font-size: 12px; }
@media screen and (max-width: 768px) {
 .textInput01, #entryForm input, #login_email, #login_pass {
 height: 28px;
}
}
.textInput01.gy, #entryForm input { border-color: #888; background: #EEEEEF; }
#entryForm input.bl {background: #008CD6; border-color: #008CD6; font-size: 13px; line-height: 1.5;}
#entryForm input.gl {background: #64B33C; border-color: #64B33C; font-size: 13px; line-height: 1.5;}
.textInput01.textbox {height: 130px;}
/* -----------------------------------------------------------------------
	select
----------------------------------------------------------------------- */
.selectBox01, #top_box__address_detail #top_box__address .input_zip { border: 1px solid #9E9E9F; width: 144px; position: relative; height: 30px; padding: 3px; overflow: hidden; margin-bottom: 12px; font-size: 14px; }
.selectBox01.size2 { width: 290px; }
@media screen and (max-width: 768px) {
 .selectBox01.size2 {
 width: 200px;
}
}
.selectBox01:before, #top_box__address_detail #top_box__address .input_zip:before { content: ''; display: block; background: #EEEEEF; width: 30px; height: 28px; border-left: 1px solid #9E9E9F; position: absolute; top: 0; right: 0; z-index: 2; }
.selectBox01:after, #top_box__address_detail #top_box__address .input_zip:after { content: ''; display: block; width: 0; height: 0; border-right: 6px solid transparent; border-left: 6px solid transparent; border-top: 10px solid #323333; position: absolute; top: 10px; right: 8px; z-index: 5; }
.selectBox01 select, #top_box__address_detail #top_box__address .input_zip select { width: 130%; position: relative; z-index: 6; }
.selectBox02 { position: relative; overflow: hidden; margin-bottom: 12px; width: 120px; border: 1px solid #008CD6; height: 55px; }
.selectBox02 .quantity { color: #008CD6; font-weight: bold; position: absolute; font-size: 20px; top: 12px; left: 14px; }
.selectBox02 select { width: 130%; position: absolute; top: 0; left: 0; z-index: 6; padding: 12px 10px 12px 70px; font-size: 20px; font-weight: bold; height: 55px; }


/*追加*/
span.question-circle {display: none;}
