@charset "UTF-8";
.mincho {
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.sawarabi {
  font-family: "Sawarabi Mincho", sans-serif;
}

input[name=star] {
  width: 1.4rem;
  height: 1.4rem;
  border-radius: 50%;
  background: #ffffff;
  cursor: pointer;
}

#wrap,
#makebanner {
  width: 100%;
}

#wrap {
  overflow: hidden;
}

.line {
  display: none;
}

.content {
  width: 1200px;
  margin: 0 auto;
}

/*価格の基本文字カラー*/
.price,
.item-list li:nth-child(n+5) .lims table .woong:last-child td,
.m_price,
.item-list .lims > table > tbody > tr:nth-child(3) td,
.item span {
  color: #333;
  /*font-weight: bold;*/
}

.wrap-item-list {
  margin-top: 40px;
}

.item-list tr + tr td.lims {
  padding-top: 40px;
}

.item-list {
  display: flex;
  flex-wrap: wrap;
}

.item-list .price,
.item-list .item-name,
.item-list .lims table tr.woong td,
#leftRecent .price,
p.price,
.item-list-sp span.price,
p.name.item-name,
ul.item span.price,
.e-reco p.item-name {
  /*一覧表示の価格と商品名の余白（トップ新商品・おすすめ商品、チェック履歴、カテゴリー、検索結果・・・【一律】*/
  padding-top: 10px !important;
  display: block;
}

.price {
  color: #bf0000;
}

.item-list p,
#recent p {
  text-align: left !important;
}

.item-list table,
table#recent {
  table-layout: fixed;
}

.item-list td.lims,
#recent td.itemBox,
#M_group td.itemBox,
.item-list li {
  width: 240px !important;
  padding-right: 40px;
}

table#M_group > tbody > tr,
#recent > tbody > tr {
  display: flex;
}

.item-list td.lims {
  float: left;
}

td.itemImg img {
  width: 100%;
}

.item-list.item-list-5 li {
  width: 184px !important;
  padding-right: 40px;
}

.item-list td.lims table {
  float: left;
}

.item-list td.lims:last-child,
#recent td.itemBox:last-child,
#M_group td.itemBox:last-child,
.item-list li:last-child,
.item-list li:nth-of-type(4n) {
  padding-right: 0;
}

table#M_group tr + tr > td.itemBox {
  padding-top: 40px;
}

.item-list.item-list-5 li:nth-child(4n) {
  padding-right: 40px;
}

.item-list.item-list-5 li:last-child,
.item-list.item-list-5 li:nth-child(5n) {
  padding-right: 0;
}

.item-list li:nth-of-type(n + 5),
.item-list:nth-of-type(n + 3),
#matomegai .innerList + .innerList {
  margin-top: 40px;
}

.item-list.item-list-5 li:nth-child(n+6) {
  margin-top: 40px;
}

.item-list.item-list-5 li:nth-child(5) {
  margin-top: 0;
}

a:link,
a:visited,
a:active {
  color: #333;
  text-decoration: none;
}

a:hover {
  color: #888;
  text-decoration: none;
}

.clear:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0;
}

* html .clear {
  zoom: 1;
}

*:first-child + html .clear {
  zoom: 1;
}

@media screen and (min-width: 640px) {
  a:hover,
a:hover img,
.btn:hover,
#M_basketClosedBox a:hover,
.soldout:not(:hover) {
    filter: alpha(opacity=70);
    -moz-opacity: 0.7;
    opacity: 0.7;
    transition: 0.3s ease-in-out;
  }
}
.wrap-btn {
  margin-top: 40px;
  display: flex;
}

.btn {
  white-space: nowrap;
  text-decoration: none;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 5px;
}

.btn:hover {
  text-decoration: none;
}

.btn-primary {
  background: #30c2b1;
  color: #fff !important;
  border: none;
}

.btn-sub {
  background: #eee;
  color: #888 !important;
}

.btn-common {
  width: 200px;
  height: 50px;
  font-size: 1.6rem;
}

.btn-small {
  width: 60px;
  height: 40px;
}

.soldout {
  cursor: default;
  color: #888 !important;
}

p.soldout {
  margin-top: 10px;
}

.wrap-review .btn-sub {
  width: 200px;
  height: 50px;
}

.index-h1 {
  position: absolute;
  clip: rect(1px 1px 1px 1px);
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(0px 0px 99.9% 99.9%);
  clip-path: inset(0px 0px 99.9% 99.9%);
  overflow: hidden;
  height: 1px;
  width: 1px;
  padding: 0;
  border: 0;
}

.subpage h1 {
  font-size: 180%;
}

.subpage h2 {
  font-size: 160%;
}

.subpage h3 {
  font-size: 140%;
}

.subpage h4 {
  font-size: 120%;
}

.subpage h5 {
  font-size: 120%;
}

.subpage h6 {
  font-size: 120%;
}

.item-list a img,
.img-item-list img {
  width: 100%;
  height: auto;
}

.item-list a img {
  /*height: 230px;*/
  /*object-fit: cover;*/
  -o-object-fit: contain;
  object-fit: contain;
  box-sizing: border-box;
  font-family: "object-fit: contain;";
}

.item-list-5.item-list a img {
  /*height: 174px;*/
}

.item-list a img,
.itemImg img,
.img-item-list img {
  /*border: 1px solid #ddd;*/
}

.item-list .lims table td {
  height: auto !important;
  text-align: center;
}

.item-list .lims table .woong td {
  text-align: left;
}

.item-list .woong td a,
.item-name a {
  /*height: 4.5em;*/
  /*display: block;*/
  overflow: hidden;
}

#makebanner td[width="10"] {
  display: none;
}

#makebanner td[width="640"],
#makebanner td[width="640"] table {
  width: 100%;
}

#makebanner img[src$="helptitle.gif"],
#makebanner img[src$="companytitle.gif"],
#makebanner img[src$="baskettitle.gif"],
#makebanner img[src$="membertitle.gif"],
#makebanner img[src$="memberqtitle.gif"],
#makebanner img[src$="pointtitle.gif"] {
  display: none;
}

.tbl-style-1 {
  width: 100%;
}

.tbl-style-1 th {
  text-align: left;
  background: #f5f5f5;
  white-space: nowrap;
}

.tbl-style-1 th,
.tbl-style-1 td {
  font-weight: normal;
  padding: 10px;
  border: 1px solid #ddd;
  text-align: left;
}

.topicpath,
#topicPath,
.searchPath,
#matomegai p.pankuzu {
  font-size: 1.2rem;
  background: #f5f0ec;
  padding: 10px;
  text-align: left;
  margin-bottom: 40px;
  color: #888;
}

.topicpath a,
#topicPath a,
.searchPath a,
#matomegai p.pankuzu a {
  color: #888;
}

#topicPath li,
#topicPath ul {
  display: inline;
}

.msg-empty {
  color: #888;
  text-align: center;
}

input::-webkit-input-placeholder,
input::-moz-placeholder,
input:-ms-input-placeholder {
  color: #858585;
}

/*▲common*/
/*▼.pager*/
ul.M_pager,
.pager {
  display: flex !important;
  justify-content: center;
  align-items: center;
  margin: 80px auto 0 !important;
}

ul.M_pager li a,
li.active span,
.pager li a span,
.pager .current,
.pager td font.woong {
  padding: 0 !important;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2rem;
}

ul.M_pager li a,
.pager li a span,
#news table[width="368"] > tbody tr:nth-child(2) td a font.woong {
  background: #fff !important;
  color: #000;
  border: 1px solid #000 !important;
}

li.active span,
.pager .current,
.pager td > font.woong {
  border: 1px solid #855f45;
  background: #855f45;
  color: #fff;
}

ul.M_pager li,
.pager li {
  margin: 0 5px !important;
  padding: 0 !important;
}

.M_pager li.next a {
  background: #fff !important;
  color: #000;
  white-space: nowrap;
  width: auto;
  border: none !important;
}

.pager span.btn-next,
.pager span.btn-prev {
  background: none !important;
  color: #000;
  border: none !important;
}

/*▲.pager*/
/*▼.news-list*/
.news-list {
  margin-top: 20px;
}

.news-list > table > tbody > tr:nth-child(2) table td,
#news .news-list > table > tbody > tr > td,
.news-list ul li span {
  padding: 20px 0;
  border-bottom: 1px solid #ddd;
  box-sizing: border-box;
}

.news-list > table > tbody > tr:nth-child(2) table td:nth-child(1),
.news-list ul li > span:nth-child(1) {
  white-space: nowrap;
}

/*▲.news-list*/
/*▼#matomegai*/
#matomegai .detail .item-name img,
#matomegai .detail .else,
#matomegai .detail .content,
#matomegai .btnWrap .quickBtn,
#matomegai .wishlistBtn {
  display: none;
}

#matomegai .cartBtn {
  width: 100%;
  margin-top: 5px;
  padding: 10px;
  box-sizing: border-box;
  background: #000;
  color: #fff;
  border-radius: 6px;
  display: inline-block;
  display: none;
}

#matomegai p.quantity {
  margin-top: 5px;
  color: orange;
  display: none;
}

#matomegai p.quantity a {
  color: orange;
  text-decoration: underline;
}

.icn-matomegai a,
#list_item .matomegai a {
  padding: 5px;
  font-size: 1.2rem;
  display: inline-block;
  border: 1px solid #ff8b45;
  color: #ff8b45;
  width: 100%;
  text-align: center;
  box-sizing: border-box;
}

p.icn-matomegai,
#list_item p.matomegai {
  margin-top: 5px;
}

#matomegai .list-sort li:nth-child(n+3) {
  display: none;
}

#matomegai div.icon {
  display: none !important;
}

.wrap-matomegai-detail {
  text-align: right;
  margin-top: 10px;
}

.wrap-matomegai-detail .price:after {
  content: "円";
}

/*▲#matomegai*/
/*▼#guide*/
table[width="570"] #guide {
  /*width: 870px !important;*/
}

#guide {
  /*width: 800px !important;*/
  padding-left: 0 !important;
}

#guide .M_guideNav li {
  padding: 0 !important;
  border-right: none !important;
  line-height: 1;
  width: 20%;
  box-sizing: border-box;
}

#guide .M_guideNav li + li {
  border-left: 1px solid #fff;
}

#guide .M_guideNav a {
  font-size: 1.4rem !important;
  color: #fff !important;
  text-decoration: none;
  display: block;
  padding: 0 1em;
  background: #888;
  display: flex;
  height: 50px;
  justify-content: center;
  align-items: center;
}

#guide .M_guideNav a:hover {
  text-decoration: none !important;
}

#guide .inner-contents {
  padding: 0 !important;
}

#guide .M_txtTitle {
  position: relative;
  font-size: 2.6rem !important;
  font-weight: normal;
  text-align: left;
  margin-bottom: 1em !important;
}

.index-section.index-shopintro {
  margin-top: 20px;
  padding-top: 50px;
  padding-bottom: 60px;
}

.M_guideContent,
div#guide-sp section.editContent,
div#policy-sp section.editContent,
.insert-policy {
  background: #fafafa;
  padding: 20px;
  margin: 40px 0 !important;
  border: 1px solid #ddd;
  text-align: left;
}

#guide .M_guideNav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 40px 0 !important;
}

/*▲#guide*/
/*▼#ordercontract*/
table#M_ordercontract,
table#lawList {
  margin-top: 20px;
}

dl.M_ordercontractWrap {
  display: table-row;
  margin-bottom: 0 !important;
  width: 100%;
}

.M_ordercontractItem {
  font-weight: normal !important;
  font-size: 1.4rem !important;
  margin-bottom: 0 !important;
  background: #f5f5f5;
  padding: 10px;
  border-bottom: 1px solid #ddd;
  border-left: 1px solid #ddd;
  border-right: 1px solid #ddd;
  display: table-cell;
  white-space: nowrap;
}

dd.M_ordercontractDescription {
  padding: 10px;
  border-bottom: 1px solid #ddd;
  border-right: 1px solid #ddd;
  display: table-cell;
  width: 100%;
}

dl.M_ordercontractWrap:nth-of-type(1) {
  border-top: 1px solid #ddd;
}

table#M_ordercontract > tbody > tr:nth-of-type(1) {
  /*display: none;*/
}

/*▲#ordercontract*/
/*▼#header*/
.wrap-topimage,
.index-section.index-banner {
  background: #f5f0eb;
}

div#header,
header#header {
  /*margin-bottom: 20px;*/
}

.topimage .bx-wrapper {
  /*margin-top: 20px;*/
}

#header .note,
header .note {
  background-color: #865f45;
  padding: 15px 0;
  color: #fff;
}

#header .note a,
header .note a {
  font-size: 1.6rem;
  color: #fff;
  line-height: 1;
  text-decoration: underline;
}

.header-category a {
  line-height: 1.5;
}

.header-category ul.M_layer1 {
  display: flex;
  flex-wrap: wrap;
}

.header-category ul.M_layer1 li {
  position: relative;
  z-index: 100;
}

.header-category #M_ctgList2 li {
  background: none;
  padding-left: 0;
}

.header-category ul.M_layer1 > li a:hover {
  text-decoration: none !important;
  opacity: 1;
  color: #000;
}

.header-category .M_layer2 {
  background: #f5f0eb;
}

.header-category .M_layer3 {
  background: #f0e9df;
}

.header-category .M_layer4 {
  background: #ddcbb6;
}

.header-category .M_layer5 {
  background: #ccb8a0;
}

/* .M_layer1 にhoverしたときに .M_layer2 を表示 */
.header-category ul.M_layer1 > li:hover ul.M_layer2 {
  display: block !important;
}

/* サブメニューが画面下に見切れる場合の位置調整 */
.header-category ul.M_layer1 > li:last-child ul.M_layer2,
.header-category ul.M_layer1 > li:nth-last-child(2) ul.M_layer2 {
  top: auto;
  bottom: 0;
  transform: translateY(100%);
  z-index: 100;
}

.header-category ul.M_layer2 li,
.header-category ul.M_layer3 li .header-category ul.M_layer4 li .header-category ul.M_layer5 li {
  width: 200px;
}

.header-category ul.M_layer2,
.header-category ul.M_layer3,
.header-category ul.M_layer4,
.header-category ul.M_layer5 {
  box-shadow: 1px 3px 9px rgba(95, 95, 95, 0.4);
}

.header-category ul.M_layer2 li a,
.header-category ul.M_layer3 li a,
.header-category ul.M_layer4 li a,
.header-category ul.M_layer5 li a {
  display: block;
  position: relative;
  font-size: 14px;
  font-family: "Sawarabi Gothic", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "メイリオ", Meiryo, "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
}

.header-category ul.M_layer2 > div > li:has(ul) > a::before,
.header-category ul.M_layer2 > div > li:has(ul) > a::after,
.header-category ul.M_layer3 > li:has(ul) > a::before,
.header-category ul.M_layer3 > li:has(ul) > a::after,
.header-category ul.M_layer4 > li:has(ul) > a::before,
.header-category ul.M_layer4 > li:has(ul) > a::after,
.header-category ul.M_layer5 > li:has(ul) > a::before,
.header-category ul.M_layer5 > li:has(ul) > a::after {
  content: "";
  display: block;
  width: 10px;
  height: 1px;
  background: #000;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}

.header-category ul.M_layer2 > div > li:has(ul) > a::after,
.header-category ul.M_layer3 > li:has(ul) > a::after,
.header-category ul.M_layer4 > li:has(ul) > a::after,
.header-category ul.M_layer5 > li:has(ul) > a::after {
  transform: translateY(-50%) rotate(90deg);
}

.header-category ul.M_layer2 {
  display: none;
  position: absolute;
  left: 0;
  box-sizing: border-box;
  z-index: 110;
  flex-wrap: wrap;
  box-sizing: border-box;
  top: 100px;
  width: 200px;
}

.header-category ul.M_layer2 .content {
  display: block;
  width: 200px;
}

.header-category ul.M_layer2 li:hover ul.M_layer3 {
  display: block !important;
}

.header-category ul.M_layer2 li:hover ul.M_layer3 li {
  width: 200px;
}

.header-category ul.M_layer3 li:hover ul.M_layer4 {
  display: block !important;
}

.header-category ul.M_layer3 li:hover ul.M_layer4 li {
  width: 200px;
}

.header-category ul.M_layer4 li:hover ul.M_layer5 {
  display: block !important;
}

.header-category ul.M_layer4 li:hover ul.M_layer5 li {
  width: 200px;
}

.header-category ul.M_layer2 li:first-child a {
  border-top: none;
}

.header-category ul.M_layer2 li a {
  background-color: #f5f0eb;
  box-sizing: border-box;
  width: 200px;
  border-right: none !important;
  padding-right: 22px !important;
  padding: 10px;
  position: relative;
}

.header-category ul.M_layer2 li a:hover {
  background: #f0e9df;
  opacity: 1;
  color: #000;
}

.header-category ul.M_layer3 {
  position: absolute;
  left: 200px;
  top: 0;
  display: none;
}

.header-category ul.M_layer3 li a {
  background-color: #f0e9df;
  box-sizing: border-box;
  width: 200px;
  border-right: none !important;
  padding-right: 23px !important;
  padding: 10px;
  display: block;
}

.header-category ul.M_layer3 li a:hover {
  background: #ddcbb6;
  opacity: 1;
  color: #000;
}

.header-category ul.M_layer4 {
  position: absolute;
  left: 200px;
  top: 0;
  display: none;
}

.header-category ul.M_layer4 li a {
  background-color: #ddcbb6;
  box-sizing: border-box;
  width: 200px;
  border-right: none !important;
  padding-right: 22px !important;
  padding: 10px;
}

.header-category ul.M_layer4 li a:hover {
  background: #ccb8a0;
  opacity: 1;
  color: #000;
}

.header-category ul.M_layer5 {
  position: absolute;
  left: 200px;
  top: 0;
  display: none;
}

.header-category ul.M_layer5 li a {
  background-color: #ccb8a0;
  box-sizing: border-box;
  width: 200px;
  border-right: none !important;
  padding-right: 20px !important;
  padding: 10px;
}

.header-category ul.M_layer5 li a:hover {
  background: #b49c7c;
  opacity: 1;
  color: #000;
}

.header-bottom {
  padding: 20px 0;
}

ul.login-menu li a {
  color: #ff8b45;
}

#M_basketClosedBox a:after {
  content: "カート";
  text-indent: 0 !important;
  white-space: nowrap;
  color: #30c2b1;
  position: relative;
  top: 18px;
}

.header-middle .header-basket {
  width: 119px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-left: 1px solid #fff;
}

.header-category .M_layer1 > li > a:before,
div.header-navi ul li a:before,
ul.login-menu li a:before,
ul#category_list > li a:before {
  content: "";
  display: block;
  background-size: cover !important;
}

.header-category .M_layer1 > li:nth-child(1) > a:before,
ul#category_list > li:nth-of-type(1) a:before {
  width: 18px;
  height: 20px;
  background: url(https://gigaplus.makeshop.jp/cakecup/images/icn_g_navi_1.svg) no-repeat center center;
  margin-bottom: 18px;
}

.header-category .M_layer1 > li:nth-child(2) > a:before,
ul#category_list > li:nth-of-type(2) a:before {
  width: 22px;
  height: 20px;
  background: url(https://gigaplus.makeshop.jp/cakecup/images/icn_g_navi_2.svg) no-repeat center center;
  margin-bottom: 19px;
}

.header-category .M_layer1 > li:nth-child(3) > a:before,
ul#category_list > li:nth-of-type(3) a:before {
  width: 23px;
  height: 23px;
  background: url(https://gigaplus.makeshop.jp/cakecup/images/wrapping.png) no-repeat center center;
  margin-bottom: 19px;
}

div.header-navi ul li:nth-child(1) a:before {
  width: 20px;
  height: 20px;
  background: url(https://gigaplus.makeshop.jp/cakecup/images/icn_g_navi_3.svg) no-repeat center center;
  margin-bottom: 18px;
}

div.header-navi ul li:nth-child(2) a:before {
  width: 20px;
  height: 20px;
  background: url(https://gigaplus.makeshop.jp/cakecup/images/icn_g_navi_4.svg) no-repeat center center;
  margin-bottom: 18px;
}

div.header-navi ul li:nth-child(3) a:before {
  width: 20px;
  height: 20px;
  background: url(https://gigaplus.makeshop.jp/cakecup/images/icn_g_navi_5.svg) no-repeat center center;
  margin-bottom: 18px;
}

div.header-navi ul li:nth-child(4) a:before {
  width: 20px;
  height: 20px;
  background: url(https://gigaplus.makeshop.jp/cakecup/images/icn_g_navi_6.svg) no-repeat center center;
  margin-bottom: 18px;
}

div.header-navi ul li:nth-child(5) a:before {
  width: 22px;
  height: 20px;
  background: url(https://gigaplus.makeshop.jp/cakecup/images/icn_g_navi_7.svg) no-repeat center center;
  margin-bottom: 19px;
}

ul.login-menu li.btn-login a:before {
  width: 18px;
  height: 18px;
  background: url(https://gigaplus.makeshop.jp/cakecup/images/btn_mypage.svg) no-repeat center center;
  margin-bottom: 18px;
}

.header-category .M_layer1 > li > a,
div.header-navi ul li a,
ul.login-menu li a {
  width: 120px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-left: 1px solid #e5e5e5;
  box-sizing: border-box;
  flex-direction: column;
  font-size: 14px;
}

ul.login-menu li,
.header-basket {
  border-color: #fff;
  background-color: #f5f0eb;
}

div.header-navi ul {
  display: flex;
}

.hedear-top ul.sub {
  position: absolute;
  right: 0;
  bottom: 16px;
}

.hedear-top ul.sub li {
  display: inline-block;
  margin: 0 20px 0 0;
  position: relative;
}

.hedear-top ul.sub li:after {
  content: "｜";
  font-size: 12px;
  color: #865f45;
  position: absolute;
  right: -17px;
  top: 0;
}

.hedear-top ul.sub li:last-child {
  margin-right: 0;
}

.hedear-top ul.sub li:last-child:after {
  display: none;
}

.hedear-top ul.sub li a {
  font-size: 12px;
  color: #865f45;
}

.hedear-top .logo {
  text-align: center;
  width: 100%;
  padding: 34px 0;
}

.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all 0.4s;
  box-sizing: border-box;
}

.menu-trigger {
  position: relative;
  width: 30px;
  height: 20px;
}

.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #855f45;
}

.menu-trigger span:nth-of-type(1) {
  top: 0;
}

.menu-trigger span:nth-of-type(2) {
  top: 9px;
}

.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}

.menu-trigger.active span:nth-of-type(1) {
  transform: translateY(6px) rotate(-45deg);
}

.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}

.menu-trigger.active span:nth-of-type(3) {
  transform: translateY(-12px) rotate(45deg);
}

.M_headBasket {
  border: none !important;
  margin: 0 !important;
  background: none !important;
  width: auto !important;
  float: none !important;
  padding: 0 !important;
}

#M_headBasketSwitch {
  position: relative;
  width: auto !important;
  height: auto !important;
  z-index: 1 !important;
  float: none !important;
}

#M_basketClosedBox {
  background: none !important;
  position: relative !important;
  width: auto !important;
  height: auto !important;
  text-indent: 0 !important;
  display: flex;
}

#M_basketOpenedBox {
  position: absolute;
  right: 0;
  top: 30px;
  width: 400px !important;
  height: auto;
  background: #fff !important;
  border: 1px solid #ccc !important;
  padding: 10px;
  display: none !important;
}

.M_headBasket table {
  width: 100% !important;
  margin: 0;
}

#M_headBasketIn {
  clear: both;
  font-size: 1.2rem !important;
  text-align: right;
  padding: 0 !important;
  width: auto !important;
  margin-top: 10px;
}

#M_headBasketIn em {
  color: #fff;
  font-style: normal;
  font-weight: normal;
  background: #000;
  border-radius: 3px;
  padding: 6px;
  display: inline-block;
}

p#M_headBasketIn {
  display: none;
}

ul.login-menu {
  display: flex;
  line-height: 1;
  white-space: nowrap;
  align-items: center;
}

ul.login-menu a {
  font-size: 1.2rem;
  padding: 1em 0;
  display: flex;
  align-items: center;
}

.header-top .content {
  display: flex;
  justify-content: flex-end;
}

.header-bottom .content {
  display: flex;
  /*justify-content: flex-end;*/
  justify-content: space-between;
  align-items: center;
}

.bx-wrapper .bx-controls-direction a.disabled {
  display: block;
}

.bx-wrapper .bx-controls-direction a:hover {
  transition: none;
}

div#wrap .topimage,
div#wrap .bx-wrapper {
  width: 1080px;
  overflow: hidden;
}

.topimage img {
  max-width: 1080px;
}

/*▼bx-sliderを100%表示する際の設定（min-widthにはコンテンツ幅を設定）*/
/*.topimage .bx-wrapper img, .bx-pager.bx-default-pager {
  width: 100%;
  min-width: 1080px;
}*/
/*▲bx-sliderを100%表示する際の設定（min-widthにはコンテンツ幅を設定）*/
/*▼bx-sliderの前後を見せる際の設定（widthには表示幅の固定値を設定）*/
/*.topimage .bx-wrapper img {
  width: 1080px;
}
.bx-viewport:before, .bx-viewport:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  background: #000;
  z-index: 1;
  opacity: 0.6;
}
.bx-viewport:before {
  right: 100%;
}
.bx-viewport:after {
  left: 100%;
}
.topimage .bx-wrapper {
  width: 100%;
}
div#wrap .topimage .bx-viewport {
  overflow: visible !important;
  width: 1080px !important;
  margin: 0 auto;
}*/
/*▲bx-sliderの前後を見せる際の設定（widthには表示幅の固定値を設定）*/
.topimage .bx-wrapper .bx-viewport {
  box-shadow: none;
}

.logo a img {
  width: 150px;
}

.logo a img + span.shop-name {
  display: none;
}

span.shop-name {
  font-size: 1.8rem;
  font-weight: bold;
}

.hedear-top > .content {
  display: flex;
  justify-content: space-between;
  position: relative;
}

.header-middle > .content > div:nth-child(3) {
  display: flex;
  align-items: center;
}

body.fixed .fixed-area {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.1);
  z-index: 2;
}

.header-middle .content {
  display: flex;
  /*justify-content: space-between;*/
  /*align-items: center;*/
  /*padding: 20px 0;*/
  flex-wrap: wrap;
}

.description {
  font-size: 1rem;
}

div#header,
header,
.side-menu {
  background: #fff;
  z-index: 2;
}

/*li.btn-login a:before, li.btn-registration a:before, li.btn-mypage a:before {
  content: "";
  display: flex;
  width: 20px;
  height: 20px;
  background-size: contain;
  margin-right: 5px;
  background-repeat: no-repeat;
  background-position: center center;
}
li.btn-login a:before {
  background-image: url(https://gigaplus.makeshop.jp/cakecup/images/btn_login.svg);
}
li.btn-mypage a:before {
  background-image: url(https://gigaplus.makeshop.jp/cakecup/images/btn_mypage.svg);
}*/
.header-basket {
  position: relative;
}

.header-basket span {
  background: red;
  position: absolute;
  border-radius: 50%;
  color: #fff;
  font-size: 1rem;
  width: 20px;
  height: 20px;
  line-height: 20px;
  top: -9px;
  right: -10px;
  z-index: 1;
  text-align: center;
  display: none;
}

.box-search .btn-search {
  background: url(https://gigaplus.makeshop.jp/cakecup/images/btn_search.svg) no-repeat center center;
  text-indent: -9999em;
  height: 38px;
  width: 38px;
  background-size: 20px 20px;
}

.item-search a.btn.btn-primary.btn-common {
  background-image: url(https://gigaplus.makeshop.jp/cakecup/images/btn_search_w.svg);
  background-repeat: no-repeat;
  background-position: left 20px center;
  background-size: 16px 16px;
}

.box-search input {
  border: none;
  background: none;
  width: 100%;
}

.box-search {
  border: 1px solid #d9c6ba;
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 40px;
  box-sizing: border-box;
  /*width: 600px;*/
  width: 100%;
}

.shop-tel {
  font-size: 1.8rem;
}

.header-middle .shop-tel {
  margin-right: 10px;
}

.shop-tel:before {
  content: "Tel:";
  margin-right: 5px;
  font-size: 1.4rem;
}

.shop-tel:after {
  content: "（土日祝除く）";
  margin-left: 5px;
  font-size: 1rem;
}

#M_basketClosedBox a,
.header-basket > a {
  display: flex !important;
  text-decoration: none !important;
  background: url(https://gigaplus.makeshop.jp/cakecup/images/btn_cart.svg) no-repeat center top 32px;
  justify-content: center;
  align-items: center;
  background-size: 20px;
}

#M_basketClosedBox a {
  text-indent: -9999em;
  width: 120px !important;
  height: 110px !important;
}

.header-category ul.M_layer2 > div > li:has(ul) > a,
.header-category ul.M_layer2 > div > li:has(ul) > a,
.header-category ul.M_layer3 > li:has(ul) > a,
.header-category ul.M_layer3 > li:has(ul) > a,
.header-category ul.M_layer4 > li:has(ul) > a,
.header-category ul.M_layer4 > li:has(ul) > a,
.header-category ul.M_layer5 > li:has(ul) > a,
.header-category ul.M_layer5 > li:has(ul) > a {
  position: relative;
}

.header-category ul.M_layer2 > li:has(ul) > a::before,
.header-category ul.M_layer2 > li:has(ul) > a::after {
  content: "";
  display: block;
  width: 10px;
  height: 1px;
  background: #000;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}

.header-category ul.M_layer2 > li:has(ul) > a::after {
  transform: translateY(-50%) rotate(90deg);
}

li.bg.bg01 a {
  color: #ff9047;
}

li.bg.bg01 a:before {
  background: url(../img/common/btn_mypage.svg) no-repeat left top;
  background-size: 20px;
  width: 20px;
  height: 20px;
  margin-bottom: 15px;
}

li.bg.bg02 a {
  color: #31c1b1;
}

li.bg.bg02 a:before {
  background: url(../img/common/btn_cart.svg) no-repeat left top;
  background-size: 20px;
  width: 20px;
  height: 20px;
  margin-bottom: 15px;
}

li.bg a {
  border-left: 1px solid #fff;
  background: #f5f0eb;
  position: relative;
}

/* PCヘッダ: #wrap はドロップダウンが欠けないよう visible。z-index は main より手前に */
.pc_nav #wrap {
  overflow: visible;
}

.pc_nav #header.fixed-area,
.pc_nav header#header.fixed-area {
  position: relative;
  z-index: 1000;
}

body.fixed .pc_nav .fixed-area {
  z-index: 1000;
}

/*▲#header*/
/*▼#index*/
.index-section.index-instagram {
  border-top: 10px solid #f5f0eb;
  margin-top: 40px;
  padding-top: 60px;
}

.index-section.index-instagram h2:before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background: url(https://gigaplus.makeshop.jp/cakecup/images/icn_ig.png) no-repeat;
  background-size: 30px;
  margin-right: 19px;
}

.index-section.index-instagram iframe {
  margin-top: 32px;
}

.index-section.index-instagram .msg a {
  color: #865f45;
  text-decoration: underline;
}

.index-section.index-instagram .msg {
  font-size: 1.6rem;
  margin-top: 35px;
}

.index-blog iframe {
  margin-top: 35px;
  border: none;
}

.index-section.index-banner ul li img {
  width: 100%;
  border-radius: 5px;
}

.index-section.index-banner ul li .txt01 {
  font-size: 14px;
  font-weight: bold;
  letter-spacing: 1px;
  margin: 15px 0 5px;
  line-height: 1.6em;
  text-align: left;
}

.index-section.index-banner ul li .txt02 {
  font-size: 12px;
  ligne-height: 1.6em;
  text-align: left;
}

.index-section.index-banner ul li {
  margin-right: 30px;
  width: calc((100% - 90px) / 4);
}

.index-section.index-banner ul li:nth-child(4n) {
  margin-right: 0;
}

.index-section.index-banner ul li:nth-child(n+5) {
  margin-top: 30px;
}

.index-section.index-banner ul {
  display: flex;
  flex-wrap: wrap;
}

h1.index-h1 + .index-banner {
  /*padding-top: 0;*/
}

div#index .index-section:nth-of-type(1) {
  /*padding-top: 0;*/
}

.index-news .news-list > table > tbody > tr:nth-child(1),
.index-news .news-list > table > tbody > tr:nth-child(3),
.index-news .news-list > table > tbody > tr:nth-child(4) {
  display: none;
}

.index-news .news-list > table > tbody > tr:nth-child(2) > td {
  padding: 0;
  border: none;
}

#M_reviewViewAll .M_reviewList > .M_reviewInner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin: 0;
}

.M_reviewBox {
  display: flex;
  justify-content: center;
  width: 100%;
  flex-direction: column;
}

#M_reviewViewAll .M_reviewInner > .M_reviewImg {
  width: 120px;
  height: 120px;
  float: none;
  background-color: #fff;
}

#M_reviewViewAll .M_reviewInner > .M_reviewImg a {
  display: flex;
  width: 100%;
  height: 100%;
  position: relative;
  align-items: center;
  justify-content: center;
}

#M_reviewViewAll .M_reviewInner > .M_reviewImg img {
  border: none;
  box-sizing: border-box;
  width: 100%;
  height: auto;
}

#index #M_reviewViewAll .M_reviewInner > .M_reviewBox {
  margin-left: 20px;
  width: calc(100% - 20px - 120px);
}

#M_reviewViewAll .M_reviewBox > .M_reviewHead {
  text-align: left;
}

#M_reviewViewAll .M_reviewHead > .M_reviewName {
  margin-bottom: 15px;
}

#M_reviewViewAll .M_reviewHead > .M_reviewRate {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

#M_reviewViewAll .M_reviewRate p {
  float: none;
}

#M_reviewViewAll .M_reviewRate .imgLi {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

#M_reviewViewAll .M_reviewRate .imgLi span {
  float: none;
  background-position: center;
}

.news-list > table > tbody > tr:nth-child(1),
.news-list > table > tbody > tr:nth-child(3),
.news-list > table > tbody > tr:nth-child(4) {
  display: none;
}

.box-rank {
  position: relative;
}

.M_reviewRate > p {
  display: none;
}

.index-section.index-shopintro img {
  max-width: 100%;
}

.index-section {
  padding: 40px 0;
}

.index-section h2 {
  text-align: center;
  font-size: 2.4rem;
  color: #41210f;
  display: flex;
  justify-content: center;
  align-items: center;
}

.index-news table table > tbody > tr > td:nth-child(2),
.news-list ul li span:nth-child(2),
#news .news-list td:nth-child(1) {
  padding-left: 2em;
  box-sizing: border-box;
}

.index-section.index-banner ul.M_bannerList {
  display: flex;
  flex-wrap: wrap;
}

.index-section.index-banner ul.M_bannerList li {
  width: calc((100% - 80px) / 5);
  margin-right: 20px;
}

.index-section.index-banner ul.M_bannerList li:last-child {
  margin-right: 0;
}

.index-section.index-banner ul.M_bannerList li img {
  width: 100%;
}

.bx-wrapper .bx-viewport {
  box-shadow: none !important;
  background: #fff;
}

.topimage .bx-wrapper .bx-pager,
.topimage .bx-wrapper .bx-controls-auto {
  bottom: 20px;
}

.topimage .bx-wrapper {
  margin-bottom: 0 !important;
}

.topimage .bx-wrapper .bx-pager.bx-default-pager a:hover,
.topimage .bx-wrapper .bx-pager.bx-default-pager a.active {
  background: #865f45 !important;
  border-color: #865f45 !important;
}

.topimage .bx-wrapper .bx-pager.bx-default-pager a {
  background: none !important;
  border: 1px solid #fff;
  box-sizing: border-box;
}

.bx-wrapper .bx-prev {
  left: 0 !important;
  background: url(https://gigaplus.makeshop.jp/cakecup/images/btn_prev.svg) no-repeat center center !important;
}

.bx-wrapper .bx-next {
  right: 0 !important;
  background: url(https://gigaplus.makeshop.jp/cakecup/images/btn_next.svg) no-repeat center center !important;
}

.bx-wrapper .bx-prev,
.bx-wrapper .bx-next {
  background-size: 50px 100px !important;
}

.wrap-topimage .bx-wrapper .bx-controls-direction a {
  margin-top: -50px !important;
}

.wrap-topimage .bx-wrapper .bx-controls-direction a {
  width: 50px !important;
  height: 100px !important;
  z-index: 1 !important;
}

.index-section.index-ranking .item-list li,
.index-section.index-ranking .item li {
  position: relative;
}

.rank-num {
  position: absolute;
  z-index: 1;
}

.index-ranking ul li:nth-child(n-5) .rank-num:before {
  content: "";
  display: block;
  width: 30px;
  height: 30px;
  background-size: contain !important;
}

.index-ranking ul li:nth-child(1) .rank-num:before {
  background: url(https://gigaplus.makeshop.jp/cakecup/images/icn_rank_num_1.svg);
}

.index-ranking ul li:nth-child(2) .rank-num:before {
  background: url(https://gigaplus.makeshop.jp/cakecup/images/icn_rank_num_2.svg);
}

.index-ranking ul li:nth-child(3) .rank-num:before {
  background: url(https://gigaplus.makeshop.jp/cakecup/images/icn_rank_num_3.svg);
}

.index-ranking ul li:nth-child(4) .rank-num:before {
  background: url(https://gigaplus.makeshop.jp/cakecup/images/icn_rank_num_4.svg);
}

.index-ranking ul li:nth-child(5) .rank-num:before {
  background: url(https://gigaplus.makeshop.jp/cakecup/images/icn_rank_num_5.svg);
}

.index-ranking ul li:nth-child(6) .rank-num:before {
  content: "6";
}

.index-ranking ul li:nth-child(7) .rank-num:before {
  content: "7";
}

.index-ranking ul li:nth-child(8) .rank-num:before {
  content: "8";
}

.index-ranking ul li:nth-child(9) .rank-num:before {
  content: "9";
}

.index-ranking ul li:nth-child(10) .rank-num:before {
  content: "10";
}

#M_reviewViewAll .M_reviewRead > .M_reviewReadText,
.reviewComment {
  margin: 0;
  padding: 1em;
  text-align: left;
  line-height: 1.5;
  box-sizing: border-box;
}

#index #M_reviewViewAll .M_reviewRead,
#index .reviewBox {
  background: #fff;
  margin-top: 10px;
}

#M_reviewViewAll .M_reviewerInfo p,
p.reviewDate {
  margin-right: 10px;
}

p.M_reviewer {
  margin-right: 0 !important;
}

#index #M_reviewViewAll .M_reviewList,
#index .itemListReview li {
  border: none !important;
  padding: 20px;
  background: #fafafa !important;
  margin: 0;
}

#index #M_reviewViewAll .M_reviewList + .M_reviewList,
#index .itemListReview li + li {
  margin-top: 20px !important;
}

/*▲#index*/
/*▼#footer*/
.footer-nav {
  background-color: #e9e4df;
}

.footer-guide .txt p + p {
  margin-top: 1em;
}

.footer-guide .txt {
  font-size: 1.3rem;
}

.link-detail a {
  color: #865f45;
  font-size: 1.3rem;
  text-decoration: underline;
}

.link-detail {
  text-align: right;
}

.timetable img {
  width: 320px;
}

.footer-guide .credit ul li img {
  width: 40px;
}

.footer-guide .credit ul li {
  margin-right: 5px;
}

.footer-guide .credit ul {
  display: flex;
}

.footer-guide .credit {
  margin-top: 20px;
}

.footer-guide h4 {
  margin-bottom: 20px;
}

.footer-guide .content > div > div {
  margin-top: 30px;
}

.footer-guide h3 {
  font-size: 1.8rem;
  font-weight: bold;
}

.footer-guide .content > div {
  width: calc((100% - 76px) / 3);
  margin-right: 38px;
}

.footer-guide .content > div:nth-child(3n) {
  margin-right: 0;
}

.footer-guide .content {
  display: flex;
}

.footer-guide {
  padding-top: 80px;
  text-align: left;
  padding-bottom: 90px;
}

.footer-sns ul {
  display: flex;
  justify-content: center;
  align-items: center;
}

.footer-sns ul li {
  margin: 0 10px;
}

.footer-category .M_layer2 {
  display: none !important;
}

.footer-category #M_ctgList2 a:hover {
  text-decoration: none;
}

.footer-category ul.M_layer1 {
  display: flex;
  justify-content: space-between;
}

.footer-category ul.M_layer1 li {
  background: none !important;
}

.footer-nav ul {
  display: flex;
  justify-content: center;
  padding: 30px 0;
}

.footer-nav ul li {
  padding: 0 1em;
  line-height: 1;
}

.footer-nav ul li + li {
  border-left: 1px solid;
}

.item-list td.lims,
.rankImgWrap {
  position: relative;
}

#footer {
  margin-top: 80px;
  background: #f5f0eb;
}

form[name=bulk_purchase_detail_form] + img {
  display: none;
}

.copyright {
  padding: 30px 0;
  text-align: center;
}

.copyright em {
  font-size: 1.2rem;
  font-weight: normal;
}

/*▲#footer*/
/*▼pgaetop*/
p.btn-pagetop {
  cursor: pointer;
}

p.btn-pagetop span {
  text-indent: -9999em;
  background: url(https://gigaplus.makeshop.jp/cakecup/images/btn_pagetop.svg) no-repeat center center;
  width: 60px;
  height: 60px;
  background-size: cover;
  display: flex;
}

.area-btn-pagetop {
  position: relative;
}

.btn-pagetop {
  position: fixed;
  right: 10px;
  bottom: 10px;
}

.btn-pagetop.bottom {
  position: absolute;
  top: 20px;
  bottom: auto;
}

.btn-pagetop span {
  opacity: 1;
}

/*▲pgaetop*/
/*▼#category #search common*/
.list-info {
  padding: 20px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.list-sort {
  line-height: 1;
  display: flex;
  white-space: nowrap;
}

.list-sort li {
  padding: 0 1em;
}

.list-total span {
  font-size: 2.2rem;
  padding: 0 4px;
  font-weight: bold;
}

.list-sort li + li {
  border-left: 1px solid;
}

.list-sort li:last-child {
  padding-right: 0;
}

/*▲#category #search common*/
/*▼#category*/
.category-image img {
  width: 100%;
}

.sub-category {
  margin-top: 20px;
}

.sub-category > table > tbody > tr > td,
#catNarrowdown a {
  background: #eee;
}

.sub-category > table > tbody > tr > td a,
#catNarrowdown a {
  color: #888;
}

.sub-category table table {
  border: none;
  margin-bottom: 0;
}

.sub-category table td td {
  padding: 0;
}

.sub-category .line,
.item-list .line、,
.sub-category table table td:first-child,
.sub-category table table td:nth-child(2) {
  /*サブカテゴリー余白削除*/
  display: none;
}

.sub-category > table > tbody > tr > td a {
  display: block;
  align-items: center;
  justify-content: center;
  padding: 10px;
}

.sub-category > table > tbody > tr {
  display: flex;
  height: auto;
}

.sub-category > table > tbody > tr:nth-child(n+3) {
  margin-top: 10px;
}

.sub-category > table > tbody > tr > td {
  width: calc((100% - 30px) / 4);
  display: flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
}

.sub-category > table > tbody > tr > td + td {
  margin-left: 10px;
}

p.price.consumerprice:after {
  content: "円（税込）";
}

p.price.consumerprice {
  text-decoration: line-through;
}

/*▲#category*/
/*▼#search*/
#search .wrap-btn,
#news .wrap-btn,
.wrap-review .wrap-btn {
  justify-content: center;
}

.item-search {
  background: #eee;
  padding: 20px 10px;
  margin: 20px 0;
}

.item-search dl {
  display: flex;
  flex-wrap: wrap;
  text-align: left;
  align-items: center;
}

.item-search dl select,
.item-search dl input {
  width: 100%;
  height: 40px;
  min-width: 0;
}

dt.search-price + dd {
  display: flex;
  align-items: center;
}

.item-search dl dt,
.item-search dl dd {
  padding: 5px;
  box-sizing: border-box;
}

dt.search-category + dd > div + div {
  margin-top: 2px;
}

dt.search-price + dd span {
  white-space: nowrap;
  margin: 0 10px;
}

#detail #M_reviewViewAll .M_reviewReadText,
#detail .reviewComment {
  padding: 10px;
  text-align: left;
  line-height: 1.5;
  background: #fafafa;
  /* color: #888; */
  border: 1px solid #ddd;
  margin-top: 10px;
}

div#M_reviewBody,
#detail .review-list {
  margin-top: 40px;
}

#detail .M_reviewList + .M_reviewList,
#detail .list_review li + li {
  margin-top: 40px;
}

#M_reviewViewAll .txtLi span.off {
  color: #e5e5e5 !important;
}

.icon {
  background: red;
  color: #fff !important;
  padding: 4px;
  font-size: 1.2rem;
  display: inline-block !important;
  line-height: 1;
  position: relative;
  bottom: 2px;
  margin-right: 5px;
}

.item-list td.lims,
.rankImgWrap {
  position: relative;
}

.search-result font {
  color: #000;
}

p.search-result {
  margin-top: 20px;
}

.item-search dl dd {
  width: 35%;
  padding-right: 30px !important;
}

.item-search dl dt {
  width: 15%;
}

#search p.price:after {
  content: "（税込）";
}

/*▲#search*/
/*▼#detail*/
.detail-img .bx-controls.bx-has-controls-direction {
  display: none;
}

.wrap-insert.wrap-comment {
  margin-top: 60px;
}

.wrap-insert h2 {
  margin-bottom: 14px;
}

.wrap-insert.wrap-function .box-insert {
  width: 60%;
  margin: 0 auto;
}

.wrap-insert + .wrap-insert,
.detail-spec-2 + .wrap-insert {
  margin-top: 20px;
}

table#M_group p.spe {
  display: none;
}

.wrap-addimage {
  display: none;
}

.detail-txt.detail-txt-01 > table th {
  background: #f5f5f5;
}

.wrap-insert.wrap-comment .box-insert {
  border: 1px solid #ccc;
  padding: 10px 14px;
  margin-top: 10px;
}

.wrap-insert.wrap-size .box-insert {
  text-align: center;
}

.wrap-insert.wrap-size .box-insert img {
  border: 1px solid #ddd;
  max-width: 100%;
}

.wrap-insert.wrap-function .box-insert img {
  max-width: 100%;
}

.detail-txt.detail-txt-01 + p {
  margin-top: 10px;
}

.detail-info > h2 {
  margin-bottom: 0.5em;
}

.detail-txt.detail-txt-01 > table th,
.detail-txt.detail-txt-01 > table td {
  border: 1px solid #ddd;
  padding: 5px;
  text-align: center;
}

.detail-spec-2 span.spec-label {
  display: flex;
  justify-content: space-between;
  white-space: nowrap;
}

.detail-spec-2 > p {
  display: table-row;
}

.detail-spec-2 > p > span {
  display: table-cell;
  /*border: 1px solid #ddd;*/
  padding: 10px;
}

.detail-spec-2 {
  display: table;
  width: 100%;
}

.thumbnail + .detail-spec-2 {
  margin-top: 30px;
}

.link-recipe {
  margin-top: 40px;
}

.link-recipe > p:nth-child(2) {
  margin-top: 10px;
}

.link-recipe > p:nth-child(2) a {
  display: flex;
  background: #888;
  color: #fff;
  border-radius: 5px;
  width: 200px;
  margin: 0 auto;
  height: 40px;
  justify-content: center;
  align-items: center;
}

.link-recipe p {
  text-align: center;
}

.detail-info-in {
  background: #f5f0ec;
  padding: 40px;
}

.wrap-insert + .detail-info-in,
.detail-spec-2 + .detail-info-in {
  margin-top: 20px;
}

.detail-text {
  text-align: left;
}

#M_usualValue font {
  color: #000;
}

.item-detail-info font {
  color: #000;
}

.item-detail-info select {
  padding: 0 1em;
  font-size: 1.4rem;
}

img[src$="basket_up.gif"],
img[src$="basket_down.gif"] {
  display: none;
}

.M_inventory * {
  font-size: 1.4rem !important;
}

.bx-controls-direction a {
  transition: none !important;
}

.M_imageThumbnail-item {
  width: 11.7142857143%;
  height: auto;
  margin-right: 3%;
}

.M_imageThumbnail-item img {
  max-width: 100%;
}

@media screen and (min-width: 0\0 ) and (-webkit-min-device-pixel-ratio: 0.75), screen and (min-width: 0\0 ) and (min-resolution: 72dpi) {
  .M_imageThumbnail-item {
    width: 11.7%;
  }
}
.M_imageThumbnail-item:nth-child(n+8) {
  margin-top: 16px;
}

.M_imageThumbnail-item:nth-child(7n) {
  margin-right: 0;
}

.detail-img {
  width: 60%;
}

.detail-info {
  margin-left: 40px;
  word-break: break-all;
  box-sizing: border-box;
  width: calc(40% - 40px);
}

.M_imageThumbnail-item a {
  opacity: 0.5;
}

.M_imageThumbnail-item a.active {
  opacity: 1;
}

ul.detail-spec li {
  line-height: 40px;
}

ul.detail-spec li:first-child {
  padding-top: 0;
}

.wrap-addimage dd {
  margin-top: 10px;
}

.wrap-addimage dd + dt {
  margin-top: 20px;
}

input.m_price {
  text-align: left;
}

p.stockTitle {
  display: none;
}

table.stockList {
  margin-top: 20px !important;
}

.M_inventory table.stockList th {
  font-weight: normal;
  background: #eee;
}

p.stockTxt {
  font-size: 1.2rem !important;
}

table.stockList + p {
  margin-top: 20px !important;
}

.detail-img img {
  width: 100%;
}

a.M_select-option-restock-btn {
  display: block;
  background: #000;
  color: #fff;
  border-radius: 3px;
  font-size: 1.2rem !important;
  padding: 2px 4px;
}

p.quantity span.zaiko {
  margin-left: 10px;
  font-size: 1.2rem;
}

.wrap-review .wrap-btn {
  margin-top: 20px;
}

.review-view {
  margin-top: 40px;
}

table#M_reviewView > tbody > tr:first-child,
table#M_reviewView > tbody > tr:nth-child(3) {
  display: none;
}

table#M_reviewView td {
  padding: 10px;
  border-bottom: 1px dashed #ccc;
  text-align: left;
}

table#M_reviewView > tbody > tr:nth-child(n+4) > td:first-child {
  padding-left: 0;
}

table#M_reviewView > tbody > tr:nth-child(n+4) > td:last-child {
  padding-right: 0;
  text-align: right;
}

table#M_review textarea {
  width: 100%;
  height: 140px;
}

#detail h1 {
  border: none;
}

#detail h1 span:first-child:after {
  display: none !important;
}

table.stockList input {
  margin-right: 5px;
  cursor: pointer;
}

#detail .bx-wrapper {
  margin: 0 auto 0;
}

.bx-wrapper .bx-viewport {
  box-shadow: none;
  background: #fff;
}

input[name=review_name] {
  width: 90%;
  height: 40px;
}

.review-write td {
  padding: 5px 0 5px 10px;
  white-space: nowrap;
}

.review-write table > tbody > tr:nth-child(1) > td:nth-child(2),
.review-write table > tbody > tr:nth-child(2) > td:nth-child(1) {
  padding-left: 0;
}

#M_reviewViewAll {
  width: 100% !important;
  margin-top: 0 !important;
}

#M_reviewViewAll .M_reviewInfo {
  border-bottom: none !important;
}

#M_reviewViewAll .M_reviewList {
  background: none !important;
  border: none !important;
  margin-bottom: 0 !important;
}

#M_memberValue {
  display: block;
}

#M_memberValue .M_member_price_in,
#M_memberValue .M_member_price_ex {
  color: #b12704;
  font-weight: normal;
  font-size: 2.6rem;
  text-align: left !important;
  padding: 0;
  background: none;
}

.wrap-detail {
  display: flex;
  justify-content: space-between;
  margin-top: 40px;
}

.bx-viewport {
  z-index: 0;
}

.review-write {
  margin-top: 40px;
}

#M_group {
  margin-bottom: 0;
}

ul.M_nameList input {
  height: 40px;
}

.txtLi {
  text-align: left;
}

.M_reviewRate p:nth-child(1) {
  display: none;
}

#M_reviewViewAll .M_reviewInner {
  margin: 0;
}

#M_reviewViewAll #M_reviewHead {
  margin-bottom: 0;
}

p.M_reviewTotal {
  margin-top: 40px !important;
}

input#M_price2 {
  /*width: 60px;*/
  padding: 0 !important;
  background: none;
}

.box-restock {
  margin-top: 10px;
}

.box-restock .btn.btn-primary {
  height: 48px;
  width: 100%;
}

/*▼定期購入*/
.wrap-repeat {
  margin-top: 40px;
  padding-top: 20px;
  border-top: 1px dashed #ccc;
}

p.M_repeatPrice,
.repeatPrice,
#rs_taxPrice {
  font-weight: normal !important;
  font-size: 1.8rem !important;
  /*sp reset*/
}

.wrap-repeat > div + div,
#repeatGift {
  margin-top: 10px !important;
}

p.M_repeatBonusName,
#repeatGift .giftName {
  text-align: left;
  font-weight: normal !important;
  margin-bottom: 10px !important;
  font-size: 1.6rem;
}

.repeatsale-quantity > table > tbody > tr:nth-child(1) > td:nth-child(1) {
  display: none;
  /*PCの数量のラベル「数量」を非表示*/
}

.repeatsale-quantity:before {
  content: "数量：";
  white-space: nowrap;
  font-size: 1.2rem;
  margin-right: 5px;
}

.repeatsale-quantity {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.M_repeatBonusImg img {
  width: 100%;
}

.M_repeatBonusImg {
  width: 30%;
  margin-right: 10px;
}

.M_repeatBonusClear {
  display: flex;
  width: 100%;
  justify-content: flex-start;
}

/*回数割引割引適用時の不要要素の非表示*/
table#M_repeatPriceTable > thead,
tr.M_priceHead {
  display: none;
}

/*PCのみ「以降」の文言が欠落しているので補完*/
table#M_repeatPriceTable tr:nth-child(n+3) th:after {
  content: "以降";
}

/*SPのみ価格の「（税込）」の文言が欠落しているので補完*/
.repeatsale-price-table .repeatPrice td:after {
  content: "（税込）";
}

/*▲定期購入*/
.cart-in {
  background-image: url(https://gigaplus.makeshop.jp/cakecup/images/btn_cart_w.svg);
  background-size: 20px 20px;
  background-position: 20% center;
  background-repeat: no-repeat;
  text-indent: 20px;
}

.M_imageThumbnail.clear,
ul#thumb_images {
  display: flex;
  flex-wrap: wrap;
  margin-top: 20px;
}

.M_imageThumbnail.clear {
  margin-top: 0;
}

.M_imageMainWrap,
img#bigimg,
.M_imageThumbnail-item {
  border: 1px solid #ddd;
  box-sizing: border-box;
}

.soldout.btn,
.cart-in {
  width: 100%;
  height: 50px;
  font-size: 1.6rem;
}

.soldout.btn {
  background: #eee;
}

.detail-sns {
  display: flex;
  margin-top: 10px;
}

ul.detail-sns li {
  margin-right: 10px;
}

.detail-sns .facebook iframe {
  width: 85px !important;
}

span.spec-label:after,
p.M_repeatPrice span:after {
  content: "：";
}

/*#detail span.price:before {
  content: "￥";
}*/
#detail span.price:after {
  content: "円";
}

#detail p.selling-price:after {
  content: "（税込）";
  font-size: 1rem;
}

p.point span.spec-value:after {
  content: "ポイント";
}

p.dcrate span.spec-value:after {
  content: "%OFF";
}

.detail-option {
  margin-top: 20px;
}

.wrap-detail,
.wrap-addimage,
.detail-txt {
  text-align: left;
}

span.zaiko {
  margin-left: 5px;
  display: inline-block;
}

p.wrap-cart-in {
  width: 100%;
}

input[name=amount],
input[name=brand_name_option_amount],
input[name=repeat_sale_amount] {
  padding: 0 1em;
  width: 60px;
  font-size: 1.4rem;
  height: 40px;
  box-sizing: border-box;
}

p.question-mail a {
  /* text-decoration: underline; */
  font-size: 1.2rem;
  color: #888;
}

p.question-mail {
  margin-top: 10px;
}

.detail-section {
  margin-top: 40px;
}

.detail-spec {
  /*margin-top: 30px;*/
}

.detail-btn {
  margin-top: 20px;
}

.wrap-addimage img {
  width: 100%;
}

ul#add_img {
  display: flex;
}

ul#add_img li {
  width: calc((100% - 40px) / 3);
}

ul#add_img li + li {
  margin-left: 20px;
}

ul#add_img li p {
  margin-top: 1em;
}

.detail-info h1.item-name {
  font-size: 1.8rem;
}

.detail-section h3,
.wrap-recent h3,
.left-section h3 {
  background: #f5f0ec;
  font-size: 1.6rem;
  padding: 1em;
  line-height: 1;
  color: #888;
}

.detail-option select {
  margin-bottom: 10px;
  margin-top: 6px;
}

.detail-spec p + p {
  margin-top: 0.5em;
}

p.selling-price .price,
p.selling-price .m_price {
  /*font-size: 2.0rem;*/
}

/*detail-spec table表示*/
/*.detail-spec {
  display: table;
}
.detail-spec p {
  display: table-row;
}
.detail-spec p > span {
  display: table-cell;
  padding: 5px 0;
  text-align: left;
  vertical-align: middle;
}
span.spec-label {
  white-space: nowrap;
  vertical-align: text-top;
  text-align: left;
  font-weight: normal;
}*/
/*//detail-spec table表示*/
/*▲#detail*/
.main-image + .thumbnail {
  margin-top: 20px;
}

/*▼#news*/
.news-date {
  text-align: left;
  font-size: 1.2rem;
  margin-top: 10px;
}

.news-content {
  text-align: left;
  margin-top: 20px;
  padding: 1em 0;
}

div#news.news-detail h1 {
  font-size: 2rem;
  line-height: 1.3;
}

#news .news-list td:nth-child(2) {
  text-align: left;
  white-space: nowrap;
  width: 10%;
  float: left;
}

#news .news-list td:nth-child(1) {
  width: 90%;
  float: right;
}

#news .news-list table tr {
  display: flex;
  flex-wrap: wrap;
  height: auto;
  flex-direction: row-reverse;
  background: none;
}

#news .pager table tr td {
  display: flex;
  justify-content: center;
}

#news .pager a:hover {
  text-decoration: none;
}

#news .pager > table > tbody > tr:nth-child(1) {
  display: none;
}

#nes .pager {
  margin-top: 100px;
}

/*▲#news*/
/*nameoption 名入れオプション（PCデフォルトをSP共通で適応）*/
#M_nameCustom,
div#nameCustom {
  margin: 10px auto;
}

#M_nameCustom .M_nameTxt,
.nameTxt {
  margin-bottom: 16px;
}

#M_nameCustom .M_nameList li,
div#nameCustom ul.nameList li {
  margin-bottom: 16px;
  text-align: left;
}

#M_nameCustom .M_nameItem,
p.nameItem {
  margin-bottom: 8px;
}

#M_nameCustom .M_nameInput,
#M_nameCustom .M_nameTextarea,
ul.nameList input,
ul.nameList textarea {
  width: 100%;
  padding: 2px 0;
}

#M_nameCustom .M_nameLimit,
div#nameCustom .nameLimit {
  text-align: right;
  font-size: 11px;
  color: #888;
  margin-top: 4px;
}

#M_nameCustom .M_nameList li.lastChild,
#nameCustom .nameList li.lastChild {
  margin-bottom: 0;
}

#M_nameCustom .M_nameRequired,
#nameCustom span.nameRequired {
  background: #cc0000;
  color: #fff;
  display: inline-block;
  font-size: 10px;
  margin-right: 8px;
  padding: 1px 3px;
}

#M_nameCustom .M_errorMessage,
ul.nameList li p.errorMessage {
  color: #ff0000;
  margin-top: 4px;
  background: url(../../shop/images/errorIcon.png) no-repeat 0 0;
  padding-left: 20px;
}

/*▼calendar*/
/*土曜日の文字色*/
.left-calendar > div > div:nth-child(2) table > tbody > tr > td:nth-child(7) font,
.left-calendar > div > div:nth-child(2) table > tbody > tr > td:nth-child(7) {
  color: #0066cc !important;
}

/*日曜日の文字色*/
.left-calendar > div > div:nth-child(2) table > tbody > tr > td:nth-child(1) font,
.left-calendar > div > div:nth-child(2) table > tbody > tr > td:nth-child(1) {
  color: #cc0000 !important;
}

/*▼特定の色のCSS3対応*/
.left-calendar td[bgcolor="#000000"] {
  background-color: #000 !important;
}

/*▲特定の色のCSS3対応*/
/*▼今日とイベントのカラー説明*/
.calendar-1 .calendar > table:nth-child(2) {
  margin-top: 10px;
}

/*今日の背景色（管理画面でも設定が必要）*/
.calendar td[bgcolor="#ff0000"] {
  background: #ff0000;
}

/*定休日の背景色（管理画面でも設定が必要）*/
.calendar td[bgcolor="#eeeeee"] {
  background: #eeeeee;
}

/*▲今日とイベントのカラー説明*/
/*▲calendar*/
/*▼#left-menu*/
#leftRecent .itemTd p {
  width: 100% !important;
}

#leftRecent .imgTd img {
  margin: 0;
  width: 100%;
  height: auto;
}

#leftRecent {
  margin-bottom: 0 !important;
}

#leftRecent .itemTd {
  padding-left: 10px;
}

table#leftRecent > tbody > tr > td {
  padding: 10px 0;
  border-bottom: 1px dashed #ddd;
}

#left-menu {
  width: 200px;
}

.left-section + .left-section {
  margin-top: 20px;
}

/*▼.left-category common*/
.left-category a {
  display: flex;
  padding: 10px;
  width: 100%;
}

.left-category span {
  cursor: pointer;
}

.left-category li a:hover {
  text-decoration: none !important;
}

/*▲.left-category common*/
.left-category ul.M_layer1 > li > span {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.left-category .M_layer2 .M_hasChild > span:after {
  display: none;
}

.left-category ul.M_layer1 > li > span {
  /*第1階層項目*/
  position: relative;
}

.left-category #M_ctgList3 .M_childOpen ul {
  display: block;
}

.left-category .M_layer2 li span a span {
  background: none !important;
  display: inline-block !important;
}

.left-category #M_ctgList3 .M_currentParent ul {
  padding-left: 0;
}

ul.bnr-left img {
  width: 100%;
  height: auto;
}

ul.bnr-left li + li {
  margin-top: 10px;
}

.left-calendar td[bgcolor="#993399"] {
  color: #fff !important;
}

.left-calendar > div:nth-child(3) {
  border-top: 1px solid #eee;
  margin-top: 18px;
  padding-top: 16px;
  padding-bottom: 11px;
}

.left-calendar > div:nth-child(2) > table + table {
  margin-top: 14px;
}

.left-section.left-search {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border: 1px solid #ddd;
}

.left-section.left-search input {
  border: none;
  width: 80%;
}

/*▼CATEGORY_MENU_1*/
/*▲CATEGORY_MENU_1*/
/*▼CATEGORY_MENU_2*/
/*▼reset*/
.left-category #M_ctgList2 li {
  background: none;
  padding-left: 0;
}

/*▲reset*/
/*▲CATEGORY_MENU_2*/
/*▼CATEGORY_MENU_3*/
/*▼reset*/
.left-category #M_ctgList3 a:link,
.left-category #M_ctgList3 a:visited,
.left-category #M_ctgList3 a:active {
  text-decoration: none !important;
  font-weight: normal !important;
}

.left-category #M_ctgList3 .M_hasChild span,
.left-category #M_ctgList3 .M_childOpen li span {
  background: none;
}

.left-category #M_ctgList3 li span {
  padding-left: 0 !important;
}

/*▲reset*/
/*▼開閉前後のアイコン*/
.left-category .M_hasChild > span:after {
  content: "";
  width: 7.6px;
  height: 7.6px;
  border: 0px;
  border-top: solid 1px #000;
  border-right: solid 1px #000;
  position: absolute;
  top: 49%;
  margin-top: -3px;
  right: 15px;
}

.left-category .M_hasChild > span:after {
  transform: rotate(135deg);
}

.left-category .M_childOpen > span:after {
  transform: rotate(-45deg);
}

/*▲開閉前後のアイコン*/
div#M_ctgList3 .M_layer2 {
  background: #fafafa;
}

/*▲CATEGORY_MENU_3*/
div#left-menu ul.M_bannerList img {
  width: 100%;
}

/*▲#left-menu*/
/*▼#basket*/
tr.addName > td:nth-child(4),
.basket-name-option .delete {
  font-size: 0;
  margin-top: 10px;
  padding-left: 0;
}

tr.addName > td:nth-child(4) a:before,
.basket-name-option .delete a:before {
  content: "×";
  display: flex;
  background: #eee;
  border-radius: 50px;
  width: 20px;
  height: 20px;
  box-sizing: border-box;
  justify-content: center;
  align-items: center;
  line-height: 1;
  font-size: 1.2rem;
  margin-left: 10px;
}

.basket-name-option .name {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.basket-name-option ul.nameList {
  margin-top: 20px;
  width: 100%;
}

.basket-name-option .delete {
  margin-top: 10px;
}

.basket td + td {
  padding-left: 40px;
}

.basket td table td {
  padding: 0;
  border: none;
}

.basketQunantity {
  display: none;
}

td.basket-name {
  text-align: left !important;
  vertical-align: top;
}

.basket-option {
  font-size: 1.4rem;
  align-items: center;
  margin-top: 10px;
}

td.basket-haisou {
  border: none;
}

.basket_option_mulopt_box {
  margin-top: 0 !important;
  margin-left: 0 !important;
  width: 90%;
}

/*tr.addName td:nth-child(1), tr.addName td:nth-child(6) {
  display: none;
}*/
tr.addName-item td {
  border-bottom: none;
}

.basket-quantity span {
  display: none;
}

.quantityAmend a:before {
  content: "変更";
}

.quantityAmend a img {
  display: none;
}

.quantityAmend a:hover {
  text-decoration: none;
}

td.basket-img {
  width: 100px;
  vertical-align: top;
}

td.basket-name {
  width: 590px;
}

td.basket-quantity {
  width: 180px;
}

td.basket-price {
  width: 120px;
  white-space: nowrap;
}

td.basket-btn {
  width: 60px;
}

td.basket-btn a {
  text-decoration: none;
}

p.clear-bsket {
  margin-left: 10px;
  margin-right: auto;
}

.M_nameItem {
  margin-bottom: 0;
}

p.amazon-pay-btn {
  margin-right: 10px;
}

.wrap-btn-order .btn {
  height: 60px;
}

.basket-wrap {
  margin-bottom: 160px;
  margin-top: 40px;
}

.basket-img img {
  width: 100%;
  height: auto;
}

.basket-name .item-name {
  font-size: 1.8rem;
}

#basket .M_nameFix,
#basket .nameFix {
  padding: 5px;
  background: #eee;
  border: 1px solid #ddd;
  color: #888;
}

.basket-quantity input,
.quantityInput input,
#basket .amount input {
  width: 60px;
  height: 40px;
}

.quantity-wrap,
.quantityWrap,
#basket .amount {
  display: flex;
  justify-content: flex-start;
  text-align: center;
}

.quantityAmend .btn,
.quantity-wrap .btn,
#basket .amount .btn {
  margin-left: 5px;
}

.basket td {
  border-bottom: 1px solid #eee;
  padding: 20px 0;
  text-align: center;
  box-sizing: border-box;
}

.basket-total {
  text-align: right;
  margin-top: 20px;
  font-size: 1.6rem;
  border-bottom: 1px solid #ddd;
  padding-bottom: 10px;
}

.basket-total span:nth-child(1) {
  font-size: 2.4rem;
}

.basket-total span:nth-child(2) {
  font-size: 1.2rem;
}

.carriage-msg {
  margin-top: 20px;
  text-align: right;
}

p.carriage-msg2 {
  font-size: 1.2rem;
  margin-top: 5px;
}

.basket-btn a {
  font-size: 2.4rem;
}

.basket-option select:nth-of-type(1) {
  margin-bottom: 10px;
}

/*▲#basket*/
/*▼切り替え（カラム変更）*/
/*▼1カラム*/
/*左側メニューを非表示*/
#makebanner td[width="150"] {
  display: none;
}

/*▲1カラム*/
/*▼2カラム*/
/*div#center {
  width: 1080px;
  margin-top: 40px;
}
.main-contents, .topicpath {
  width: calc(1080px - 200px - 40px);
  margin-left: 40px;
  box-sizing: border-box;
}
.main-contents .content, .topicpath .content {
  width: 100%;
box-sizing: border-box;
}*/
/*▲2カラム*/
/*▲切り替え（カラム変更）*/
.index-section.index-banner .content {
  margin-bottom: 60px;
}

.index-section.index-banner .content h3 {
  text-align: center;
  font-size: 28px;
  font-family: "Montserrat", sans-serif;
  font-weight: normal;
}

.index-section.index-banner .content h3 span {
  margin-bottom: 30px;
  border-bottom: 1px solid #b08a76;
  display: inline-block;
}

.blog-btn {
  text-align: center;
}

.blog-btn a {
  text-align: center;
  color: #fff;
  background: #333;
  padding: 10px 30px;
  display: inline-block;
  border-radius: 22px;
  text-decoration: none;
}

/*241105商品回遊*/
.excursion_list.col5 {
  width: 100%;
  margin: 0 auto 10px;
}

.excursion_list.col4 {
  width: 80%;
  margin: 0 auto;
}

.excursion_list.col3 {
  width: 100%;
  margin: 0 auto;
}

.excursion_list.col5,
.excursion_list.col4,
.excursion_list.col3 {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}

.index-section.index-banner .excursion_list.col5 li {
  max-width: 180px;
  width: calc(20% - 10px) !important;
  margin: 0 !important;
}

.index-section.index-banner .excursion_list.col4 li {
  max-width: 180px;
  width: calc(25% - 10px) !important;
  margin: 0 !important;
}

.index-section.index-banner .excursion_list.col3 li {
  max-width: 150px;
  width: calc(33.3333333333% - 10px) !important;
  margin: 0 !important;
}

.excursion_list_item {
  border: 1px solid #94725a;
  border-radius: 10px;
  padding: 5px;
}

.list_name {
  color: #94725a;
  font-size: 18px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .excursion_list.col3 {
    justify-content: flex-start;
  }
  .list_name {
    color: #94725a;
    font-size: 16px;
    text-align: center;
  }
}
@media screen and (max-width: 500px) {
  .excursion_list.col3 {
    justify-content: flex-start;
    gap: 5px;
  }
  .index-section.index-banner .excursion_list.col3 li {
    max-width: 100px;
    width: calc(33.3333333333% - 20px) !important;
  }
  .list_name {
    color: #94725a;
    font-size: 12px;
    text-align: center;
  }
}
h3.items_ttl {
  text-align: center;
  font-size: 28px;
  font-family: "Montserrat", sans-serif;
  font-weight: normal;
  margin-top: 30px;
}

h3.items_ttl span {
  margin-bottom: 30px;
  border-bottom: 1px solid #b08a76;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: rgb(176, 138, 118);
  display: inline-block;
}

.instagram-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
  max-width: 1080px;
  margin: 30px auto 0;
}

.instagram-post {
  min-width: 100% !important;
  width: 100%;
  aspect-ratio: 1/1;
}

.instagram-media .Header {
  display: none !important;
}

/* Instagram埋め込みのサイズを強制調整 */
.instagram-post blockquote {
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 auto !important;
}

/* レスポンシブ対応 */
@media (max-width: 1024px) {
  .instagram-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .instagram-post {
    flex-basis: 50%;
    /* 2列 */
    min-width: 50% !important;
  }
}
.box-insert .item_wrap {
  max-width: 100%;
}

.item_wrap .i-info {
  max-width: 100%;
}

/*ランキング*/
.ranking img {
  width: 100%;
}

.ranking .ranking_list {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: nowrap !important;
  gap: 15px;
  margin-bottom: 30px;
}

.ranking .ranking_list a {
  color: #000;
}

.ranking .ranking_list li {
  width: calc(20% - 15px);
  margin: 0 !important;
}

.ranking .ranking_icon {
  text-align: center;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
  text-align: center;
  margin-bottom: 10px;
  font-size: 20px;
}

.ranking .ranking_icon i {
  display: block;
  width: 25px;
}

.ranking .ranking_icon .num {
  font-size: 25px;
}

.ranking .ranking_list .ranking_img {
  background-color: #FFF;
  border-radius: 5px;
  aspect-ratio: 1/1;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px;
  margin-bottom: 10px;
}

.ranking .ranking_list .ranking_name {
  font-size: 13px;
  text-align: left;
  margin-bottom: 10px;
}

.ranking .ranking_list .ranking_price {
  font-size: 13px;
  text-align: right;
}

.ranking .ranking_list .ranking_price span {
  font-size: 80%;
}

@media (max-width: 767px) {
  .ranking .ranking_list {
    display: block;
    gap: 0;
    margin-bottom: 24px;
    padding: 0 12px;
  }
  .ranking .ranking_list li {
    width: 40vw !important;
    margin: 0;
  }
  .ranking .ranking_list .slick-slide {
    margin-right: 12px;
  }
  .ranking .ranking_list .slick-list {
    overflow: visible;
  }
  .ranking .ranking_list .ranking_img {
    padding: 8px;
  }
  .ranking .ranking_list .ranking_name {
    font-size: 12px;
    line-height: 1.4;
  }
  .ranking .ranking_list .ranking_price {
    font-size: 12px;
  }
}
h2.ranking_ttl {
  font-weight: bold;
  margin-bottom: 20px;
}

.keyword_list {
  display: flex;
  justify-content: space-between;
  padding: 0px;
  width: 100%;
}

.keyword_list li {
  position: relative;
  font-size: 1.5rem;
  color: #777;
}

.keyword_list li a {
  font-size: 1.5rem;
  color: #777;
  padding: 0 10px;
}

.keyword_list li:nth-of-type(2)::after,
.keyword_list li:nth-of-type(3)::after {
  position: absolute;
  content: "/";
  right: -5px;
  top: 0;
}

@media screen and (max-width: 768px) {
  .keyword_list {
    flex-wrap: wrap;
    justify-content: flex-start;
    padding: 10px;
  }
  .keyword_list_first {
    width: 100%;
  }
  .keyword_list li {
    font-size: 1.4rem;
  }
  .keyword_list li a {
    padding: 0 5px !important;
    font-size: 1.4rem;
  }
}
.index-section.index-banner .keyword_list_spttl {
  text-align: center;
  font-size: 18px;
  font-family: "Montserrat", sans-serif;
  font-weight: normal;
}

.index-section.index-banner .keyword_list_spttl span {
  margin-bottom: 30px;
  border-bottom: 1px solid #b08a76;
  display: inline-block;
}

.index-section.index-banner .keyword_list_sp {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

.index-section.index-banner .keyword_list_sp li {
  width: auto !important;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 999px;
  color: #333;
  padding: 10px;
  font-size: 13px;
  line-height: 1.3;
  margin: 0 !important;
}

.index-section.index-banner .keyword_list_sp li:nth-child(n+3) {
  margin: 0 !important;
}
/*# sourceMappingURL=m_sys_common.css.map */