@charset "euc-jp";

/*body {
  font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO", sans-serif ;
  background-color: #fff;
  background-image: url();
  color: #000000;
}*/
html {
	scroll-behavior: smooth;
}
body {
  font-family: 'M PLUS Rounded 1c',sans-serif;
  font-size: 100%;
}
a {
  color: #44833d;
  text-decoration: none;
}
a:hover {
  color: #73c76a;
  text-decoration: none;
}
a:focus {
  font-weight: bold;
  text-decoration: none;
}
/*パンくずリスト*/
.topicpath-nav a {
  color: #000000;
}
.topicpath-nav a:hover {
  color: #44833d;
}
/*---------------------------
基本
------------------------------*/
#wrapper {
  max-width: 1000px;
}
#contents {
  float: right;
  padding-left: 30px;
  line-height: 1.6;
}
#contents .topicpath-nav {
  margin-bottom: 5px;
}
#contents .topicpath-nav li {
  padding: 0;
}
#contents .topicpath-nav a {
   margin-left: 5px;
}

/*----------------------------------------
　ヘッダ
------------------------------------------*/
/* ロゴ */
.branding img {max-width: 330px;}　

/* メインナビドロップダウン */
.nav-main ul {
    list-style-type: none;/* リストマークなし */
    padding: 0;/* リストマークの余白なし */
}
.main-nav {
   /*display: flex; 要素をFlexboxに定義 */
   /*justify-content: flex-start; 左寄せ配置 */
   /*text-align: left; テキストを中央寄せ */
}
.main-nav li {
    position: relative;/* ボックスの配置基準 */
    z-index: auto;/* 前面に描画 */
    /*min-width: 8em; 親メニューの最小横幅 */
    font-size: 1.1em;
}
.main-nav a {
    display: block;/* 要素をブロックに定義 */
    text-decoration: none;/* リンク下線なし */
    background-color: #ffffff;/* 背景色 */
    color: inherit;/* テキスト色 */
    padding: 10px;/* 余白 */
	white-space: nowrap;
}
.main-nav a:hover {
    background-color: #f2f2f2;/* リンク選択時の背景色 */
}
.main-nav li ul {/* 子メニュー */
    position: absolute;/* ボックスの配置基準 */
    top: 100%;/* 親メニュー上部からの表示位置 */
    left: 0;/* 親メニュー左端からの表示位置 */
    width: 100%;/* 親メニュー幅に合わせる */
    margin: 0;
    z-index: 2;/* さらに前面に描画 */
    list-style-type: none;/* リストマークなし */
    padding: 0;/* リストマークの余白なし */
    width: auto;
}
.main-nav li ul li {
    visibility: hidden;/* 子メニューの非表示 */
    /* スライド表示させる場合は以下も */
    overflow: hidden;/* ボックスからはみ出た部分を非表示 */
    height: 0;
    transition-duration: 0.2s;/* 変化にかかる時間 */
}
.main-nav li:hover > ul > li {
    visibility: visible;/* 子メニューの表示 */
    /* スライド表示させる場合は以下も */
    overflow: visible;/* ボックスからはみ出た部分を表示 */
    height: 44px;/* 項目名が途切れて隠れないように注意 */
    padding-right: 5px;
    padding-left: 5px;
}
.nav-parent a {
  padding-right: 1em;
}
/* Font awesome 位置 */
.main-nav .fa, .main-nav .fas, #side .fa, #side .fas, #side .fab, #side .far {
  padding-right: 0.2em;
  font-size: 98%;
  vertical-align: 0%;
}

/*----------------------------------------
　コンテンツエリア
------------------------------------------*/
/* タイポ　*/
h1.ana-typo {
  margin: 0 0 1em;
  font-size: 2.5em;
}
h2.ana-typo {
  margin: 0.5em 0 0.2em;
  font-size: 1.5em;
  font-weight: normal;
  border-bottom: 1px solid #cbcbcb;
}
.page-header + p.ana-typo {
  margin: 0 0 1.5em;
}

/*h2:after {content: "*0〜414px"; color: green;} for testing*/
h3.ana-typo {
  margin: 1em 0 0.2em;
  font-size: 1.5em;
  font-weight: normal;
}
h4.ana-typo {
  margin: 0;
  font-size: 1.2em;
  font-weight: normal;
}

/* ページタイトルバナー */
.page-banner {
  position: relative;
  margin-bottom: 0.8em;
}

.page-banner h1 {
  position: absolute;
  margin: 0;
  font-size: 3.5em;
  white-space: nowrap;
  color: #ffffff;
  top: 19%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
.page-banner h1.longer-title {
  position: absolute;
  font-size: 1.8em;
  top: 12%;
  left: 50%;
}
.page-banner img {
  width: auto;
  height: 280px;
  border-radius: 8px;
  object-fit: cover;
}
.page-banner:before {
  content: '';
  background-color: rgba(130,130,130,.3);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  border-radius: 8px;
}

/* 段落レベル */
.page-header {
  margin-bottom: 0.8em;
}
.level-1 {
  padding: 0 0 2em;
}
.level-2 {
  padding: 0 0 1em;
  overflow: hidden;
}
.level-3 {
}

/*-----------------
装飾タイトル・文字
--------------------*/
/* セール点滅文字 */
@keyframes blinkAnime{
   0% { color: #000000; }
 100% { color: #E60000; }
}
.sale-blink {
    animation: blinkAnime 0.5s ease-in-out infinite alternate;
}
@keyframes blinkSlow {
	0% {opacity: 0;}
	100% {opacity: 1;}
}
.slow-blink {
	animation: blinkSlow 1.5s ease-in-out infinite alternate;
}

.txt-border-bold {
    border-bottom: 1px solid #cccccc;
    overflow: hidden;
    margin-bottom: 0.5em !important;
    font-weight: bold !important;
}
h3.orange-tip {
  padding: 0.5em;/*文字周りの余白*/
  font-weight: normal;
  color: #494949;/*文字色*/
  background: #fffaf4;/*背景色*/
  border-left: solid 5px #ffaf58;/*左線（実線 太さ 色）*/
}
h3.bg-gray {
  margin: 0.5em 0;
  padding: 0.2em 0.4em;
  font-size: 1.5em;
  font-weight: normal;
  background-color: #f6f6f6f6;
  border-radius: 3px;
}
/* タグ風 */
h3.tag {
  padding: 0.5em;/*文字周りの余白*/
  line-height: 1.3;/*行高*/
  background: #e5f8db;/*背景色*/
  vertical-align: middle;
  border-radius: 25px 0px 0px 25px;/*左側の角を丸く*/
}
h3.tag:before {
  content: '●';
  color: white;
  margin-right: 8px;
}
/* ステッチ風 */
h3.stitch {
  position: relative;
  background: #e5f8db;
  box-shadow: 0px 0px 0px 5px #e5f8db;
  border: dashed 2px white;
  padding: 0.2em 0.5em;
}
h3.stitch:after {
  position: absolute;
  content: '';
  left: -7px;
  top: -7px;
  border-width: 0 0 15px 15px;
  border-style: solid;
  border-color: #fff #fff #8bc35c;
  box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.15);
}
/* ただのグレー枠 */
.frame_gray_margin {
  margin: 1em auto;
  padding: 1em;
  border: 1px solid #cccccc;
  border-radius: 10px;
}
/* タイトル付かこみ枠 */
.frame_atten {
    position: relative;
    margin: 2em 0;
    padding: 1.5em;
    border: solid 3px #1f5c9e;
    border-radius: 8px;
}
.frame_atten .box-title {
    position: absolute;
    display: inline-block;
    top: -10px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    font-size: 19px;
    background: #FFF;
    color: #1f5c9e;
    font-weight: bold;
}
.frame_gray_margin p, .frame_atten p {
    margin: 0;
    padding: 0;
}
/*説明下エリア*/
.product_unit p, .product_matome p, .product_otoku p, .product_notes p {
   margin: 0;
   padding-left: 1em;
   text-indent: -1.3em;
}
.unit_outer {
  text-align: right;
  margin-top: 1.5em;
}
/* 参加定員・販売単位 */
.product_unit {
  display: inline-block;
  background-color: #fcfcfc;
  border: 1px solid #ddd;
  border-radius: 10px;
  padding: 6px 14px;
  text-align: left;
}
.product_unit p:before {
  font-family: "Font Awesome 5 Free";
  content: "\f024";
  color: #1f5c9e;
  font-weight: 900;
  margin-right: 0.3em;
}
p .order_unit {
  color: #1f5c9e;
  font-size: large;
  font-weight: bold;
  margin: 0 0.1em;
}
/* ご了承下さい */
.product_notes {
  background-color: #f5fbeaab;
  border-radius: 10px;
  padding: 1em 1.5em;
  margin-top: 0.8em;
  font-size: 14px;
}
.product_notes img {
  width: 100%;
  margin: 0.6em 0 1em 0;
}
.product_notes p:before {
  font-family: "Font Awesome 5 Free";
  content: "\f06a";
  color: #439e1f;
  font-weight: 900;
  margin-right: 0.3em;
}

/* ------------コラムボックス----------- */
.col_2-1, .col_3-1 {
  width: 100%;
  padding-bottom: 1em;
}
.col_2-1 img, .col_3-1 img {
  width: 100%;
  height: auto;
  margin-bottom: 0.2em;
  object-fit: cover;
}

/*-------------
テーブル
--------------- */
 /* レスポンシブ基本 */
 /* *, *:before, *:after {-moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;}*/
 .tbl-res {border-collapse: collapse; width: 100%; margin: 1em auto;}
 .tbl-res th,.tbl-res td {padding: 0.5em 1em; border: 1px solid #aaa; vertical-align: top; text-align: left;}
 .tbl-res th {background: #eee; width: 30%;}
 .tbl-res td {background: #fff;}
  .tbl-res th,.tbl-res td {display: block; width: auto; border-bottom: none;}
  .tbl-res tr:last-child {border-bottom: 1px solid #aaa;}
/* Basic */
table.ana-basic {
  width:100%;
  border-collapse: separate;
}
table.ana-basic th, table.ana-basic td {
  border: solid 1px #cccccc;
  padding: 5px 10px;
}
table.ana-basic th {
  font-weight: normal;
  background: #fafafa;
}
 /* Bottom Border Only */
table.b-border {
  width:100%;
  margin: 1em 0;
  border-collapse: separate;
}
table.b-border th, table.b-border td {
  border-bottom: solid 1px #cccccc;
  padding: 0.5em 0 0 0.5em;
}
table.b-border th {
  text-align: left;
  font-weight: normal;
  background: #fafafa;
}
/* --------カラフル送料表---------- */
table.shipping {
  table-layout: fixed;
  width: 100%;
  border: 1px solid #ffffff;
}
table.shipping td, table.shipping th {
  text-align: center;
  padding: 5px;
  border: 1px solid #ffffff;
}
table.shipping th {
  background-color: #f2f2f2;
  padding: 3px;
}
table.shipping th small{
  font-size: 10px;
  font-weight: normal;
}
table.shipping td.area-a, table.shipping th.area-a {
  background-color: #66ccff !important;
}
table.shipping td.area-b1, table.shipping th.area-b1 {
  background-color: #ffcc33 !important;
}
table.shipping td.area-b2, table.shipping th.area-b2 {
  background-color: #009933 !important;
}
table.shipping td.area-b3, table.shipping th.area-b3 {
  background-color: #ff99cc !important;
}
table.shipping td.area-c, table.shipping th.area-c {
  background-color: #ff6600 !important;
}

/*--------最近チェックした商品-----------*/
.hist-img img{
    height: auto;
    width: 100%;
    object-fit: cover;
    border-radius: 5px;
}
#recent-products .hist-name {
  font-weight: bold;
  font-size: 90%;
  border-bottom: dotted 1px #b1b1b1;
  text-overflow: ellipsis;
  white-space: nowrap;
  overflow: hidden;
}
#recent-products .hist-desc {
  display: none;
}
#recent-products .hist-price {
  text-align: right;
  padding-top: 0.2em;
}
#recent-products .new_mark_img1 {
  display: none !important;
}

/*---------------------------
サイドバー
 -----------------------------*/
.sidebar_block {
  margin-bottom: 2.25em;
}
#side a {
  color: #000000;
}
#side a:hover {
  color: #44833d;
}
#side h3 {
   margin: 0;
   padding-bottom: 0.3em;
}

/* リスト装飾隠す */
#side .unstyled img {
   display: block;
   margin-bottom: 5px;
 }
/* 検索ボックス */
#side input[type="text"] {
  max-width: 12em;
  margin-top: 3px;
  border: dotted 2px #cdcdcd;
}
#side .btn-xs {
  margin-top: 3px;
  padding: 3px;
  border-radius: 50px;
}
#side .icon-lg-b.icon-search {
    background-position: -313px -25px;
}
/* カテゴリーリスト */
.cat_parent {
  background-color: #f5f5f5;
  padding: 2px 0 0 0.3em;
  vertical-align: middle;
  border-radius: 3px 0 0 3px;
}
/*--- アコーディオン追加---*/
#mobilemenu .item {
  margin: 0;
  padding: .75em 1em;
  color: rgba(0,0,0,.4);
  font-weight: 700;
  border-top: 1px solid rgba(34,36,38,.15);
  -webkit-transition: background .1s ease,color .1s ease;
  transition: background .1s ease,color .1s ease;
  cursor: pointer;
}
#mobilemenu .title, #mobilemenu .item {
  color: #2E2C42;
  font-weight: 600;
  padding: 0.5em;
  display: flex;
  align-items: center;
}
#mobilemenu .title:hover {
  color: #ffffff;
  background: #799228;
}
#mobilemenu .active.title, #mobilemenu .item:active {
  color: #ffffff;
  background-color: #799228;
}
#mobilemenu .child.icon, #mobilemenu .dropdown.icon {
  height: auto;
}
#mobilemenu > .content {
  padding: 0px;
}
#mobilemenu > .content > .accordion{
  margin: 0px;
  border-radius: 0;
  box-shadow: none;
}
#mobilemenu > .content > .accordion > a div{
  background: #e6f2db;
  color: #55671c;
  padding-left: 1em;
}
#mobilemenu > .content > .accordion > a div:hover{
  background: #92af84;
  color: #ffffff;
}
.accordion .item a{
  color: #64762d !important;
}
.accordion .item a:hover{
  color: #244e00 !important;
}
.accordion .item a:active{
  color: #85b65a !important;
}
/*#mobilemenu .dropdown.icon {
  font-size: 18px;
  margin-top: 0px;
}*/
#mobilemenu .dropdown.icon::before {
  content: '\f054';
  font-weight: 900;
  font-family: 'Font Awesome 5 Free';
}
#mobilemenu .active .dropdown.icon {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
  margin-top: 3px;
}
#mobilemenu > .content > .accordion > .content {
  padding: 0px;
}
#mobilemenu > .content > .accordion > .content > .accordion{
  margin: 0px;
}
#mobilemenu > .content > .accordion > .content > .accordion > .item{
  background: #312F45;
  color: #FFFFFF;
  padding-left: 50px;
  font-weight: 500;
  border-top: 1px solid #45425C;
}
/* 店長より */
#side .tencyo-prof {
  padding: 0 1em 1em;
  border-radius: 300px;
  width: 70%;
}

/*--------------------------------
     0pxから414px（モバイル基本）
 ---------------------------------*/

/*--------------------------------
     415pxから959px（iPadタテ等）
 ---------------------------------*/
@media screen and (min-width: 429px) {
  /* ロゴ */
  .branding img { max-width: 400px; 
  }
  /* ページタイトルバナー　*/
  .page-banner h1 {
    top: 5px;
    left: 25px;
    transform: none;
    -webkit-transform: none;
    -ms-transform: none;
  }
  .page-banner h1.longer-title {
    font-size: 2.5em;
    position: absolute;
    top: 15px; left: 23px;
    transform: none;
    -webkit-transform: none;
    -ms-transform: none;
  }
  .page-banner img {
    width: 100%;
    height: auto;
  }
  /* タイポ */
  /*h2:after { content: "*415px〜959px"; color: red; } for testing*/
  h2.ana-typo {
    font-size: 1.8em;
  }
  /* 段落レベル */
  .level-1 { padding: 0 0 0.5em; }
  .level-2 { padding: 0 0.5em 1em; overflow: hidden; }
  .level-3 {  }
  /* コラムボックス */
  .col_2-1 { width: 48%; float: left; padding: 0 1em 1em 0; }
  .col_2-1:nth-of-type(2) { padding: 0; }
  .col_3-1 { width: 33.33%; float: left; padding: 0 0 1em 0; }
  /* テーブル */
  .tbl-res th,.tbl-res td {display: table-cell; width: auto;}
  /* margin */
  .mar_b_50 { margin-bottom: 30px; }
}

/*--------------------------------
     960px以上（パソコン）
 ---------------------------------*/
@media screen and (min-width: 960px) {
  /*h2:after {
  content: "*960px〜";
  color: blue;
}
  for testing*/
  /* ページタイトルバナー　*/
  .page-banner h1 {
    top: 5px;
    left: 25px;
    transform: none;
    -webkit-transform: none;
    -ms-transform: none;
  }
  /* margin */
  .mar_b_50 { margin-bottom: 50px; }
}

/*
 * temp
 */

/* font */
.txt_l { text-align: left; }
.txt_c { text-align: center; }
.txt_r { text-align: right; }
.txt_fwn { font-weight: normal; }
.txt_fwb { font-weight: bold; }
.txt_10 { font-size: 10px; }
.txt_12 { font-size: 12px; }
.txt_14 { font-size: 14px; }
.txt_16 { font-size: 16px; }
.txt_18 { font-size: 18px; }
.txt_20 { font-size: 20px; }
.txt_24 { font-size: 24px; }
.txt_28 { font-size: 28px; }
.txt_c_333 {color: #333;}

/* background */
.bgc_gray {
  background-color: #f1f1f1;
}

/* margin */
.mar_b_1em { margin-bottom: 1em; }
.mar_b_1-5em { margin-bottom: 1.5em; }
.mar_b_2em { margin-bottom: 2em; }
.mar_auto { margin: 0 auto; }
.mar_0 { margin: 0; }
.mar_t_0 { margin-top: 0; }
.mar_r_0 { margin-right: 0; }
.mar_b_0 { margin-bottom: 0; }
.mar_l_0 { margin-left: 0; }
.mar_5 { margin: 5px; }
.mar_t_5 { margin-top: 5px; }
.mar_r_5 { margin-right: 5px; }
.mar_b_5 { margin-bottom: 5px; }
.mar_l_5 { margin-left: 5px; }
.mar_t_10 { margin-top: 10px; }
.mar_r_10 { margin-right: 10px; }
.mar_b_10 { margin-bottom: 10px; }
.mar_l_10 { margin-left: 10px; }
.mar_t_20 { margin-top: 20px; }
.mar_r_20 { margin-right: 20px; }
.mar_b_20 { margin-bottom: 20px; }
.mar_l_20 { margin-left: 20px; }
.mar_t_30 { margin-top: 30px; }
.mar_r_30 { margin-right: 30px; }
.mar_b_30 { margin-bottom: 30px; }
.mar_l_30 { margin-left: 30px; }
.mar_t_50 { margin-top: 50px; }
.mar_r_50 { margin-right: 50px; }
.mar_b_50 { margin-bottom: 50px; }
.mar_l_50 { margin-left: 50px; }

/* padding */
.pad_tb_1em { padding: 1em 0; } /* Added */
.pad_v_10 { padding: 10px 0; }
.pad_v_20 { padding: 20px 0; }
.pad_v_30 { padding: 30px 0; }
.pad_0 { padding: 0; }
.pad_t_0 { padding-top: 0; }
.pad_r_0 { padding-right: 0; }
.pad_b_0 { padding-bottom: 0; }
.pad_l_0 { padding-left: 0; }
.pad_5 { padding: 5px; }
.pad_t_5 { padding-top: 5px; }
.pad_r_5 { padding-right: 5px; }
.pad_b_5 { padding-bottom: 5px; }
.pad_l_5 { padding-left: 5px; }
.pad_10 { padding: 10px; }
.pad_t_10 { padding-top: 10px; }
.pad_r_10 { padding-right: 10px; }
.pad_b_10 { padding-bottom: 10px; }
.pad_l_10 { padding-left: 10px; }
.pad_20 { padding: 20px; }
.pad_t_20 { padding-top: 20px; }
.pad_r_20 { padding-right: 20px; }
.pad_b_20 { padding-bottom: 20px; }
.pad_l_20 { padding-left: 20px; }
.pad_30 { padding: 30px}
.pad_t_30 { padding-top: 30px; }
.pad_r_30 { padding-right: 30px; }
.pad_b_30 { padding-bottom: 30px; }
.pad_l_30 { padding-left: 30px; }

/* border */
.bor_t_1 { border-top: 1px solid #eee; }
.bor_r_1 { border-right: 1px solid #eee; }
.bor_b_1 { border-bottom: 1px solid #eee; }
.bor_l_1 { border-left: 1px solid #eee; }

/* vertical align */
.va-10 { vertical-align: -10%; }
.va-20 { vertical-align: -20%; }
.va-30 { vertical-align: -30%; }
.va-35 { vertical-align: -35%; }
.va-40 { vertical-align: -40%; }

@media (max-width: 980px) { /* ~980px */
  #base_gmoWrapp,
  #gmo_CMSPbar {
    overflow: hidden;
    min-width: 100% !important;
    width: 100% !important;
  }
}
@media (max-width: 768px) { /* ~768px */
  #contents {
    padding-left: 0;
  }
}
@media (max-width: 480px) { /* ~480px */
  .col-lg-4 {
    width: 100% !important;
  }
}

/*
 * icons
 */
.icon-user { background-position: -208px 0px; }
.icon-lg-b.icon-user { background-position: -312px 0px; }
.icon-adduser { background-position: -240px 0px; }
.icon-lg-b.icon-adduser { background-position: -360px 0px; }
.icon-login { background-position: -48px -80px; }
.icon-lg-b.icon-login { background-position: -72px -120px; }
.icon-logout { background-position: -32px -80px; }
.icon-lg-b.icon-logout { background-position: -48px -120px; }
.icon-home { background-position: -176px -16px; }
.icon-lg-b.icon-home { background-position: -264px -24px; }
.icon-mail { background-position: -64px 0px; }
.icon-lg-b.icon-mail { background-position: -96px 0px; }
.icon-pencil { background-position: -96px 0px; }
.icon-lg-b.icon-pencil { background-position: -144px 0px; }
.icon-help { background-position: -272px -80px; }
.icon-lg-b.icon-help { background-position: -408px -120px; }
.icon-cart { background-position: -176px -64px; }
.icon-lg-b.icon-cart { background-position: -264px -96px; }
.icon-search { background-position: -208px -16px; }
.icon-lg-b.icon-search { background-position: -312px -24px; }
.icon-chevron_up { background-position: -0px -144px; }
.icon-lg-b.icon-chevron_up { background-position: -0px -216px; }
.icon-chevron_down { background-position: -352px -128px; }
.icon-lg-b.icon-chevron_down { background-position: -528px -192px; }

.icon-b,
.icon-w {
  width: 16px;
  height: 16px;
  display: inline-block;
  *display: inline;
  *zoom: 1;
}
.icon-lg-b,
.icon-lg-w {
  width: 24px;
  height: 24px;
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

.icon-b { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon16_b.png); }
.icon-w { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon16_w.png); }
.icon-lg-b { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon24_b.png); }
.icon-lg-w { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon24_w.png); }

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) {
  .icon-b,
  .icon-w {
    -webkit-background-size: 368px 320px;
    background-size: 368px 320px;
  }

  .icon-lg-b,
  .icon-lg-w {
    -webkit-background-size: 552px 480px;
    background-size: 552px 480px;
  }

  .icon-b { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon16_2x_b.png); }
  .icon-w { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon16_2x_w.png); }
  .icon-lg-b { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon24_2x_b.png); }
  .icon-lg-w { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon24_2x_w.png); }
}
@media (max-width: 768px) {
  .icon-b { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon24_b.png); }
  .icon-w { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon24_w.png); }
}
@media only screen and (max-width: 768px) and (-webkit-min-device-pixel-ratio: 2), only screen and (max-width: 768px) and (min--moz-device-pixel-ratio: 2), only screen and (max-width: 768px) and (-o-min-device-pixel-ratio: 2 / 1), only screen and (max-width: 768px) and (min-device-pixel-ratio: 2), only screen and (max-width: 768px) and (min-resolution: 192dpi), only screen and (max-width: 768px) and (min-resolution: 2dppx) {
  .icon-b { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon24_2x_b.png); }
  .icon-w { background-image: url(https://img.shop-pro.jp/tmpl_img/73/icon24_2x_w.png); }
}
