@charset "UTF-8";
@import url("https://image.raku-uru.jp/cms/fontcss/font.css");
/* reset
--------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li, fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, figure, figcaption,
footer, header, hgroup, menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  vertical-align: baseline;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  line-height: 1;
  word-wrap: break-word;
  word-break: break-all;
}
nav ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}
ins {
  background-color: #f2f82f;
  color: #171216;
  text-decoration: none;
}
mark {
  background-color: #f2f82f;
  color: #171216;
  font-weight: bold;
}
abbr[title], dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
del {
  text-decoration: line-through;
}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #d2d2d2;
  margin: 1.0rem 0;
  padding: 0;
}
input, select {
  vertical-align: middle;
}
img {
  border: none;
  vertical-align: middle;
  line-height: 0;
}
/*--------------------------------------
  'sm': 'screen and(max-width: 480px)
  'md': 'screen and(min-width: 768px)
  'lg': 'screen and(min-width: 960px)
  'xl': 'screen and(min-width: 1200px)
  #common
--------------------------------------*/
* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
html {
  font-size: 62.5%;
}
body {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  color:#1a130c;
  background:#fff ;
}
input, textarea, button, select, i {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", "Yu Gothic", "游ゴシック体", "YuGothic", "Meiryo UI", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
a,
a:visited {
  color:#000;
  text-decoration: none;
}
a:hover,
button:hover {
  color:#4a4630;
  text-decoration: underline;
}
a img:hover {
  filter: alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;
}
a, a:hover {
  -webkit-transition: 0.3s;
  -moz-transition: 0.3s;
  -o-transition: 0.3s;
  transition: 0.3s;
}
img {
  max-width: 100%;
  height: auto;
  border: none;
}
h1, h2, h3, h4, h5, h6 {
  font-feature-settings: "palt";
}
/*  TEXTカラー
--------------------------------------*/
.txt-wt {
  color: #fff;
}
.txt-red, .red {
  color: #d70035;
}
.txt-blue {
  color: #006eb0;
}
/*  調整用
--------------------------------------*/
.none_bg {
  background: none !important;
}
.none_bd {
  border: none !important;
}
.none_bd_top {
  border-top: none !important;
}
/* 改行 */
.no_br br {
  display: none;
}
.on_br br {
  display: block;
}
@media screen and (min-width: 960px) {
  .no_br br {
    display: block;
  }
  .on_br br {
    display: none;
  }
}
/* TEXT配置 */
.txt_center {
  text-align: center !important;
}
.txt_right {
  text-align: right !important;
}
.txt_left {
  text-align: left !important;
}
/*  文字ツメ */
.txt_spac {
  letter-spacing: -1px;
}
.txt_spac_pl {
  letter-spacing: 2px;
}
.bold {
  font-weight: bold;
}
/* margin・padding
--------------------------------------*/
.mt0 {
  margin-top: 0px !important;
}
.mb0 {
  margin-bottom: 0px !important;
}
.pt0 {
  padding-top: 0px !important;
}
.pb0 {
  padding-bottom: 0px !important;
}
.mt5 {
  margin-top: 5px !important;
}
.mb5 {
  margin-bottom: 5px !important;
}
.pt5 {
  padding-top: 5px !important;
}
.pb5 {
  padding-bottom: 5px !important;
}
.mt10 {
  margin-top: 10px !important;
}
.mb10 {
  margin-bottom: 10px !important;
}
.pt10 {
  padding-top: 10px !important;
}
.pb10 {
  padding-bottom: 10px !important;
}
.mt15 {
  margin-top: 15px !important;
}
.mb15 {
  margin-bottom: 15px !important;
}
.pt15 {
  padding-top: 15px !important;
}
.pb15 {
  padding-bottom: 15px !important;
}
.mt20 {
  margin-top: 20px !important;
}
.mb20 {
  margin-bottom: 20px !important;
}
.pt20 {
  padding-top: 20px !important;
}
.pb20 {
  padding-bottom: 20px !important;
}
.mt25 {
  margin-top: 25px !important;
}
.mb25 {
  margin-bottom: 25px !important;
}
.pt25 {
  padding-top: 25px !important;
}
.pb25 {
  padding-bottom: 25px !important;
}
/*  共通CSS
--------------------------------------*/
em, i, cite {
  font-style: normal;
}
strong, b {
  font-weight: bold;
}
blockquote, q {
  border-left: 4px solid #d2d2d2;
  margin: 0 0 2.4em 1rem;
  position: relative;
  display: block;
  color: #4a515c;
}
blockquote:after, q:after {
  content: "”";
  font-size: 90px;
  line-height: 0em;
  color: #dcdce0;
  position: absolute;
  right: 0;
  top: 100%;
}
blockquote p:last-child, q p:last-child {
  margin-bottom: 0;
}
/* FOAM
--------------------------------------*/
/* OSi　リセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
input, textarea, select {
  outline: 0;
}
/* 基本スタイル */
input[type="text"], input[type="email"], input[type="url"] {
  background: #fff;
  border: 1px solid #d2d2d2;
  padding: 0.2em 15px;
}
input[type="text"]::focus, input[type="text"]:hover, input[type="email"]::focus, input[type="email"]:hover, input[type="url"]::focus, input[type="url"]:hover {
  border: 1px solid #00AEE3;
}
button {
  cursor: pointer;
}
input[type='checkbox'], input[type="radio"], input[type="submit"] {
  cursor: pointer;
}
textarea {
  border: 1px solid #d2d2d2;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
  border-radius: 4px;
  height: 230px;
  margin: auto;
}
/* 基本table
--------------------------------------*/
table {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  margin: auto;
}
table table {
  width: 100%;
}
th, td {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #d2d2d2;
  margin: 0 0 -1px 0;
  vertical-align: middle;
  padding:5px;
  display:block;
}
table tr:last-child td:last-child {
  margin-bottom:0;
}
th {
  background: #f6f6f7;
}
/* ご利用ガイド用スタイル */
table.about-tbl {
  margin: 24px auto;
  width: 100%;
}
table.about-tbl th, table.about-tbl td {
  padding: 10px;
}
table.about-tbl a {
  text-decoration: underline;
}
table.shipment-tbl {
  margin-bottom: 30px;
}
table.shipment-tbl table {
  margin-bottom: 15px;
}
table.shipment-tbl th, table.shipment-tbl td {
  font-size: 14px;
}
table.shipment-tbl td {
  padding: 5px 10px;
}
table.shipment-tbl thead th,
table.shipment-tbl thead td {
  text-align: center;
  font-weight: bold;
}
.shipment-tbl-normal-shippoint-point span {
  display: inline-block;
}
.shipment-tbl-tkbsize-defined {
  margin-top: 30px;
}
.shipment-tbl-tkbsize-defined thead td {
  background: #f6f6f7;
}
.shipment-tbl-tkbsize-defined tbody tr td:last-child {
  border-bottom-width: 2px;
}
.shipment-tbl-eidome a {
  text-decoration: underline;
}
@media screen and (min-width: 768px) {
  table.shipment-tbl th {
    max-width:22em;
  }
  table.shipment-tbl table th {
    max-width: 10em;
  }
  .shipment-tbl-tkbsize-defined tbody tr td:last-child {
    border-width: 1px;
  }
}
/* clearfix */
.cl, #header, #container, #main,
.main, #secondary, #footer {
  *zoom: 1;
}
.cl::after, #header::after, #container::after, #main::after,
.main::after, #secondary::after, #footer::after {
  content: "";
  display: block;
  clear: both;
  height: 0;
  visibility: hidden;
}
/* キャリア別表示・非表示 */
.pc {
  display: none;
}
.sp {
  display: block;
}
@media screen and (min-width: 768px) {
  table table {
    min-width: 80%;
    max-width: 100%;
    width: auto;
  }
  th,td {
    margin-right: -1px;
    display: table-cell;
  }
}
@media screen and (min-width: 960px) {
  .pc {
    display: block;
  }
  .sp {
    display: none;
  }
}
/*--------------------------------------
  layout
--------------------------------------*/
#wrapper {
  position: relative;
  height: 100%;
  width: 100%;
}
#header {
  margin: 0 auto;
  position: relative;
  z-index: 2000;
}
#container {
  width: 100%;
  margin: 0 auto;
  text-align: center;
  position: relative;
  overflow: hidden;
}
#main,
.main {
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}
.one-column #main,
.one-column .main {
  width: 100%;
  margin: auto;
}
.inner {
  width: 94%;
  margin: 0 3%;
  height: auto;
  position: relative;
}
@media screen and (min-width: 768px) {
  .inner {
    width: 100%;
    max-width: 1040px;
    margin: 0 auto;
    padding: 0 3%;
  }
}
@media screen and (min-width: 1200px) {
  .inner {
    padding: 0;
  }
}
@media (min-width: 1018px) and (max-width: 1159px) {
  #wrapper {
    width: 95%;
  }
  .inner {
    padding: 0 1%;
  }
}
.inner_980 {
  width: 94%;
  margin: 0 3%;
  height: auto;
  position: relative;
}
@media screen and (min-width: 768px) {
  .inner_980 {
    width: 100%;
    max-width: 980px;
    margin: 0 auto;
    padding: 0 3%;
  }
}
@media screen and (min-width: 1200px) {
  .inner_980 {
    padding: 0;
  }
}
.no_inner {
  width: 100%;
  height: auto;
  margin: 0;
  position: relative;
}
@media screen and (min-width: 768px) {
  .no_inner {
    max-width: 1040px;
    margin: 0 auto;
  }
}
#secondary {
  margin: 0 auto;
  position: relative;
  overflow: hidden;
}
#footer {
  text-align: center;
  position: relative;
}
.layer-bk, .layer-wh {
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 4;
  padding: 0.5em 0;
}
.layer-bk {
  background: rgba(0, 0, 0, 0.44);
}
.layer-wh {
  background: rgba(255, 255, 255, 0.8);
}
/*--------------------------------------
  共通パーツ
--------------------------------------*/
/* SNS */
.sns li {
  display: inline-block;
}
.sns li a {
  color: #000;
}
.sns li a i {
  font-size: 24px;
  font-size: 2.4rem;
}
/* もっとリンク 右矢印 */
.more-link {
  text-align: right;
  margin-bottom: 1.5em;
  font-size: 14px;
  font-size: 1.4rem;
}
.more-link a {
  display: inline-block;
  text-decoration: none;
}
.more-link a::after {
  content: "\e902";
  font-family: "icomoon";
  color: #0079ff;
  margin-left: 5px;
}
.more-link a:hover {
  color: #106aa7;
  text-decoration: none !important;
}
.more-link a:hover::after {
  color: #106aa7;
}
/* パンくず */
.breadcrumbs {
  margin: 0 10px;
  padding: 6px 10px;
  text-align: left;
  background-color: #eee;
}
.breadcrumbs strong {
  font-weight: normal;
}
.breadcrumbs li {
  max-width: 100%;
  display: inline-block;
  color: #6d6d72;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.78;
}
.breadcrumbs a {
  text-decoration: underline;
}
.breadcrumbs li::after {
  content: " > ";
  margin: 0 5px;
  color: #c9c9c9;
}
.breadcrumbs li:last-child::after {
  content: "";
}
@media screen and (min-width: 600px) {
  .breadcrumbs {
    margin: 0;
    padding: 10px;
  }
}
@media screen and (min-width: 768px) {
  .breadcrumbs li {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
/* ページ送り */
.pager {
  position: relative;
  margin: 0 auto;
  text-align: center;
  width: 94%;
}
.pager .prev,
.pager .next {
  position: absolute;
  top: 50%;
  margin-top: -10px;
  height: 20px;
}
.pager .prev a,
.pager .next a {
  position: relative;
  color: #1a130c;
  line-height: 20px;
}
.pager .prev a::after,
.pager .next a::after {
  position: absolute;
  width: 14px;
}
.pager .prev {
  left: 0;
}
.pager .prev a {
  padding-left: 24px;
}
.pager .prev a::after {
  left: 0;
  content: "\e905";
  font-family: "icomoon";
  font-size: 16px;
}
.pager .next {
  right: 0;
}
.pager .next a {
  padding-right: 24px;
}
.pager .next a::after {
  right: 0;
  content: "\e90b";
  font-family: "icomoon";
  font-size: 16px;
}
@media screen and (min-width: 768px) {
  .pager {
    width: 60%;
  }
}
.page-num {
  display: inline-block;
}
.page-num ul {
  font-size: 0;
}
.page-num ul li {
  font-size: 14px;
  display: inline-block;
  margin: 0 15px;
}
.page-num ul li span {
  font-weight: bold;
  font-size: 16px;
}
/* 〇 */
.page-num2 {
  display: inline-block;
}
.page-num2 ul {
  font-size: 0;
}
.page-num2 ul li {
  font-size: 14px;
  display: inline-block;
  margin: 0 5px;
}
.page-num2 ul li a {
  display: block;
  width: 36px;
  height: 36px;
  text-align: center;
  line-height: 36px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  border: 1px solid #000;
  color: #000;
}
.page-num2 ul li a:hover {
  background-color: #4a4630;
  color: #fff;
  text-decoration: none;
}
.page-num2 ul li span a {
  font-weight: bold;
  background-color: #000;
  color: #fff;
}
/* □ */
.page-num3 {
  display: inline-block;
}
.page-num3 ul {
  font-size: 0;
}
.page-num3 ul li {
  font-size: 14px;
  display: inline-block;
  margin: 0 5px;
}
.page-num3 ul li a {
  display: block;
  width: 36px;
  height: 36px;
  text-align: center;
  line-height: 36px;
  border: 1px solid #000;
  color: #000;
}
.page-num3 ul li a:hover {
  background-color: #4a4630;
  color: #fff;
  text-decoration: none;
}
.page-num3 ul li span a {
  font-weight: bold;
  background-color: #000;
  color: #fff;
}
/* CSSボタン */
.css-batu, .css-plus {
  display: inline-block;
  position: relative;
  margin: 0 20px 0 7px;
  padding: 0;
  width: 4px;
  height: 20px;
  background: #000;
  cursor: pointer;
}
/* ×ボタン */
.css-batu {
  transform: rotate(45deg);
}
.css-batu::before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: -8px;
  width: 20px;
  height: 4px;
  margin-top: -2px;
  background: #000;
}
/* +ボタン */
.css-plus::before {
  display: block;
  content: "";
  position: absolute;
  top: 50%;
  left: -8px;
  width: 20px;
  height: 4px;
  margin-top: -2px;
  background: #000;
}
/*  TOPへ戻る */
#page-top {
  position: fixed;
  height: 44px;
  bottom: 10px;
  right: 0;
  margin: 0 10px;
  font-size: 20px;
  font-size: 2rem;
  z-index: 999;
}
#page-top a {
  text-decoration: none;
  background: #595335;
  opacity: 0.7;
  width: 40px;
  height: 40px;
  line-height: 36px;
  text-align: center;
  display: inline-block;
  vertical-align: middle;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}
#page-top a::after {
  content: "\e912";
  font-family: 'icomoon';
  color: #fff;
  font-size: 14px;
}
#page-top a:hover {
  text-decoration: none;
}
/*  TOPへ戻る〇 */
#page-top2 {
  position: fixed;
  height: 44px;
  bottom: 20px;
  left: 86%;
  font-size: 20px;
  font-size: 2rem;
  z-index: 999;
}
#page-top2 a {
  background: rgba(255, 255, 255, 0.7);
  text-decoration: none;
  color: #000;
  width: 44px;
  height: 44px;
  text-align: center;
  display: inline-block;
  line-height: 44px;
  vertical-align: middle;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
}
#page-top2 a::after {
  content: "\e912";
  font-family: 'icomoon';
  color: #fff;
  font-size: 14px;
}
#page-top2 a:hover {
  text-decoration: none;
}
@media screen and (min-width: 960px) {
  #page-top2 {
    position: absolute;
    top: 0;
  }
}
/*--------------------------------------------
  検索フォームスタイル
--------------------------------------------*/
.searchform1,
.searchform2,
.searchform3,
.searchform4 {
  position: relative;
  height: 36px;
}
.searchform1 input,
.searchform2 input,
.searchform3 input,
.searchform4 input {
  border: none;
}
.searchform1 input[type="text"],
.searchform2 input[type="text"],
.searchform3 input[type="text"],
.searchform4 input[type="text"] {
  padding: 0 15px;
  position: absolute;
}
.searchform1 input[type="submit"],
.searchform2 input[type="submit"],
.searchform3 input[type="submit"],
.searchform4 input[type="submit"] {
  position: absolute;
  padding: 0;
}
.searchform1 button,
.searchform2 button,
.searchform3 button,
.searchform4 button {
  position: absolute;
  padding: 0;
}
/* 虫眼鏡ボタン付き検索（searchform1）
--------------------------------------------*/
.searchform1 input[type="text"] {
  background: #eee;
  border-right: none;
}
.sbox1 {
  height: 36px;
  left: 0;
  top: 0;
  width: 260px;
  width: -webkit-calc(100% - 40px);
  width: calc(100% - 40px);
  border-radius: 2px 0 0 2px;
}
.sbox1:hover {
  border: none;
  background: #FFFDF4;
}
.sbtn1 {
  width: 40px;
  height: 36px;
  right: 0;
  top: 0;
  border-radius: 0 2px 2px 0;
  background: #000;
  color: #fff;
  border: none;
  border-left: none;
  font-size: 16px;
  font-size: 1.6rem;
}
.sbtn1::after {
  content: "\e92b";
  font-family: "icomoon";
  font-size: 20px;
  color: #fff;
}
.sbtn1:hover {
  background: #000;
  color: #fff;
}
/* 検索ボタン付き検索（searchform2）
--------------------------------------------*/
.searchform2 input[type="text"] {
  border-right: none;
  border: 1px solid #bfbfbf;
  background: #fff;
}
.searchform2 input[type="text"]:hover {
  /* border: solid 1px #00b7ee; */
}
.sbox2 {
  height: 36px;
  left: 0;
  top: 0;
  width: 240px;
  width: -webkit-calc(100% - 60px);
  width: calc(100% - 60px);
}
.sbtn2 {
  width: 60px;
  height: 36px;
  right: 0;
  top: 0;
  background: #444444;
  color: #fff;
  border: none;
  border-left: none;
  font-size: 16px;
  font-size: 1.6rem;
}
.sbtn2:hover {
  background: #444444;
  color: #fff;
}
/* 虫眼鏡フレーム内検索（#searchform3）
--------------------------------------------*/
.searchform3 {
  /* border: 2px solid #bfbfbf; */
  height: 40px;
}
.searchform3 input[type="text"] {
  border-right: none;
  border: none;
background: none;
font-size: 1.2rem;
}
.searchform3:hover {
  border: none;
}
.sbox3 {
  height: 36px;
  left: 0;
  top: 0;
  width: 260px;
  width: -webkit-calc(100% - 40px);
  width: calc(100% - 40px);
background: none;
}
.sbox3:hover {
  border: none;
}
.sbtn3 {
  width: 40px;
  height: 36px;
  right: 0;
  top: 0;
  background: none;
  color: #333;
  border: none;
  border-left: none;
  font-size: 16px;
  font-size: 1.6rem;
}
.sbtn3::after {
  content: "\e92b";
  font-family: "icomoon";
  font-size: 20px;
  color: #595335;
vertical-align: middle;
}
.sbtn3:hover {
  background: none;
  color: #000;
border:none;
}
/* 伸びる検索（searchform4）
--------------------------------------------*/
.searchform4 {
  height: 44px;
  margin: 0 auto;
  position: absolute;
  top: 0;
  width: 44px;
}
.searchform4 input[type="text"] {
  background: #ccc;
  border: none;
  border-radius: 22px;
  color: #333;
  cursor: pointer;
  height: 44px;
  opacity: 0;
  outline: none;
  padding: 5px;
  position: absolute;
  top: 0;
  right: 0;
  transition: all 0.7s;
  width: 44px;
  z-index: 5;
}
.searchform4 input[type="text"]:focus {
  cursor: text;
  opacity: 1;
  width: 300px;
}
.searchform4 input[type="submit"] {
  display: none;
}
.sbtn4 {
  border-radius: 50%;
  display: inline-block;
  height: 44px;
  line-height: 44px;
  margin: 0 auto;
  position: absolute;
  top: 0;
  text-align: center;
  width: 44px;
}
.sbtn4::after {
  content: "\e92b";
  font-family: "icomoon";
  font-size: 20px;
  color: #fff;
}
/*------------------------------
  slider
------------------------------*/
#main-image {
  position: relative;
  margin: 0 auto;
  text-align: center;
  overflow: hidden;
}
#main-image img {
  max-width: 100%;
  max-height: 100%;
}
.main-image-slider {
  position: relative;
  overflow: hidden;
  width: 100%;
  max-width: 1040px;
  height: auto;
  margin: 0 auto;
}
.main-image-slider > ul {
  position: absolute;
  z-index: 100;
  top: 0;
  left: 0;
  display: inline-block;
  overflow: hidden;
  height: 336px;
}
.main-image-slider > ul > li {
  display: inline;
  float: left;
  overflow: hidden;
  width: 1040px;
  height: 336px;
  list-style-type: none;
}
.main-image-slider > ul > li span,
.main-image-slider > ul > li a {
  display: flex;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
}
.main-image-prev {
  position: absolute;
  right: 10px;
  top: 50%;
  z-index: 999;
  font-size: 22px;
  margin-top: -16px;
}
.main-image-next {
  position: absolute;
  left: 10px;
  top: 50%;
  z-index: 999;
  font-size: 22px;
  margin-top: -16px;
}
.main-image-prev a,
.main-image-next a {
  display: block;
  width: 24px;
  height: 24px;
  line-height: 30px;
  text-align: center;
}
.main-image-prev a:hover,
.main-image-next a:hover {
  text-decoration: none;
}
.main-image-indicator {
  position: absolute;
  z-index: 999;
  right: 0;
  bottom: 5px;
  left: 0;
}
.main-image-indicator ul {
  text-align: center;
}
.main-image-indicator ul li {
  display: inline-block;
  width: 14px;
  height: 14px;
  margin: 0 8px;
  pacity: .6;
  border: #FFE18C solid 1px;
  border-radius: 50%;
  background-color: transparent;
}
.main-image-indicator ul li.active {
  background-color: #FFE18C;
}
@media screen and (min-width: 600px) {
  #main-image {
    width: 100%;
    overflow: hidden;
    margin: 0;
    text-align: center;
  }
  .main-image-slider > ul {
    height: 460px;
  }
  .main-image-slider > ul > li {
    width: 100%;
  }
  .main-image-indicator {
    bottom: 6px;
  }
  .main-image-indicator ul {
    font-size: 0;
    margin: 0;
    padding: 0;
  }
  .main-image-indicator ul li {
    width: 10px;
    height: 10px;
    margin: 0 4px;
  }
}
@media screen and (min-width: 1019px) {
  .main-image-prev a,
  .main-image-next a {
    display: block;
    width: 30px;
    height: 30px;
    line-height: 20px;
    text-align: center;
  }
}
/*--------------------------------------
  calendar
--------------------------------------*/
.months {
  font-family: 'メイリオ', 'Meiryo', 'Meiryo UI';
  text-align: center;
  padding: 8px 0;
  margin: auto;
  font-size: 18px;
  font-size: 1.8rem;
}
.schedule-area {
  text-align: center;
  margin-bottom: 24px;
}
.schedule-area .months {
  width: 94%;
  color: #fff;
  background-color: #595335;
  padding: 8px 0;
  margin-bottom: 1.0em;
  -moz-border-radius: 30px;
  -webkit-border-radius: 30px;
  border-radius: 30px;
}
.schedule-area2 {
  text-align: center;
}
.schedule-area2 .months {
  text-align: left;
  padding: 10px;
}
/* カレンダー線あり
--------------------------------------------*/
.calendar table {
  width: 94%;
  margin: auto;
}
.calendar th, .calendar td {
  font-size: 13px;
  font-weight: normal;
  padding: 5px 0;
  width: -webkit-calc(94% / 7);
  width: calc(94% / 7);
  text-align: center;
  border: 2px solid #fff;
  margin: 0;
  display: table-cell;
}
.calendar thead th {
  padding: 10px 0;
}
.calendar thead th:first-child {
  color: #d70035;
}
.calendar thead th:last-child {
  color: #006eb0;
}
.calendar td i {
  display: inline-block;
  width: 26px;
  height: 26px;
  line-height: 26px;
}
/* カレンダー線なし
--------------------------------------------*/
.calendar-2 {
  margin-bottom: 24px;
}
.calendar-2 table {
  width: 94%;
  margin: auto;
}
.calendar-2 th, .calendar-2 td {
  font-size: 13px;
  font-weight: normal;
  padding: 0;
  width: -webkit-calc(94% / 7);
  width: calc(94% / 7);
  text-align: center;
  border: none;
  display: table-cell;
}
.calendar-2 thead {
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
}
.calendar-2 thead th {
  background: rgba(246, 246, 247, 0);
  padding: 10px 0;
}
.calendar-2 thead th:first-child {
  color: #d70035;
}
.calendar-2 thead th:last-child {
  color: #006eb0;
}
.calendar-2 tbody {
  padding-top: 10px;
}
.calendar-2 tbody td {
  vertical-align: middle;
  padding: 5px 3px;
}
.calendar-2 tbody td i {
  display: inline-block;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  line-height: 26px;
}
/* イベント色分け */
.e1 i {
  color: #000;
  background-color: #d7d8d8;
  border-radius: 20px;
}
.e2 i {
  color: #fff;
  background-color: #595335;
  border-radius: 20px;
}
.e3 i {
  color: #000;
  background-color: #d6dd21;
  border-radius: 20px;
}
.list-event {
  border-top: 1px solid #d2d2d2;
  padding: 15px 0;
  margin: 0 3%;
  text-align: left;
}
.list-event li {
  display: inline-block;
  line-height: 24px;
  position: relative;
  min-height: 24px;
  margin-bottom: 5px;
  margin-right: 10px;
  padding-left: 32px;
  text-align: left;
  list-style: none;
  font-size: 13px;
  font-size: 1.3rem;
}
.list-event li::before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 24px;
  height: 24px;
  content: '';
}
.list-event li.event1::before {
  background-color: #d7d8d8;
border-radius: 20px;
}
.list-event li.event2::before {
  background-color: #595335;
border-radius: 20px;
}
.list-event li.event3::before {
  background-color: #d6dd21;
border-radius: 20px;
}
/*--------------------------------------
  header
--------------------------------------*/
#wrapper {
  max-width: 1040px;
  margin: 0 auto;
}
#header {
  width: 100%;
  max-width: 1040px;
  height: 75px;
  margin: 0;
  z-index: auto;
}
#header a:hover {
  text-decoration: none;
}
.header-top {
  text-align: center;
  z-index: 1000;
}
.logo {
  width: -webkit-calc(100% - 100px);
  width: calc(100% - 100px);
  margin: auto;
}
/* LOGO画像・テキスト */
.site-name {
  height: 55px;
  font-family: "Sawarabi Mincho", "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, serif;
  margin: 0;
  padding: 0 5px;
  text-align: left;
  font-size: 16px;
  font-size: 1.6rem;
  color: #000;
  position: relative;
  overflow: hidden;
}
.site-name img {
  max-width: 100%;
  max-height: 55px;
  width: auto;
  height: auto;
  margin: auto;
}
.site-name a {
  max-height: 55px;
  width: calc(100% - 20px);
  display: block;
  position: absolute;
  text-align: center;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: none;
}
/* menu */
.menubtn {
  width: 55px;
  height: 55px;
  line-height: 55px;
  text-align: center;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1001;
  background: #595335;
}
.menubtn a {
  display: block;
}
/* メニューボタン */
#jq-open-btn {
  display: inline-block;
  position: relative;
  width: 55px;
  height: 55px;
}
#jq-open-btn::before {
  content: "\e926";
  font-family: "icomoon";
  font-size: 16px;
  color: #fff;
  line-height: 55px;
}
#jq-open-btn:hover {
  text-decoration: none;
  background: #4a4630;
}
#jq-open-btn.close::before {
  content: "\e904";
  font-family: "icomoon";
  font-size: 16px;
  color: #fff;
  line-height: 55px;
}
#jq-open-btn b {
  display: none;
}
/* 検索
------------------------------*/
.search-area {
  width: 100%;
  margin: auto;
  padding: 10px;
  background-color: #eee;
}
.searchform3 {
  height: 30px;
  margin: auto;
  background: #fff;
  border-radius: 40px;
}
.searchform3:hover {
  /* border: 1px solid #00b7ee; */
}
.sbox3 {
  left: 40px;
  height: 28px;
  width: -webkit-calc(100% - 40px);
  width: calc(100% - 40px);
}
.sbtn3 {
  height: 28px;
  left: 0;
}
/* グローバルナビ
------------------------------*/
#global-nav {
  display: none;
  z-index: 999;
  width: 100%;
}
/* ヘッダーメニュー
------------------------------*/
.header-menu {
  width: 100%;
  list-style: none;
  margin: 0;
  overflow: hidden;
}
.header-menu li {
  margin: 0;
  float: left;
  font-size: 14px;
  font-size: 1.4rem;
  width: 33.3%;
  width: -webkit-calc(100% / 3);
  width: calc(100% / 3);
}
*::-ms-backdrop, .header-menu li  {
  width: 33.33%; /* IE11 */
}
.header-menu li:first-child.mypage,
.header-menu li:nth-child(2).cart {
  width: 50%;
}
.header-menu li:only-child {
  width:100%;
}
.header-menu li a {
  display: block;
  background-color: #595335;
  border-bottom: solid 2px #3e3a25;
  color: #fff;
  height: 50px;
  line-height: 50px;
}
.header-menu li a:hover {
  background-color: #000;
  color: #FFF;
  text-decoration: none;
}
.header-menu li a::before {
  content: "";
  font-family: "icomoon";
  color: #fff;
  font-size: 14px;
  margin-right: 6px;
}
.header-menu li.entry a::before {
  content: "\e90a";
}
.header-menu li.logout a::before {
  content: "\e931";
}
.header-menu li.mypage a::before {
  content: "\e927";
}
.header-menu li.cart a::before {
  content: "\e918";
}
.entry a:hover::before,
.logout a:hover::before,
.mypage a:hover::before,
.cart a:hover::before {
  color: #FFF;
}
/* カテゴリーリスト */
.cat-menu {
  width: 100%;
}
.cat-menu li {
  background: #fff;
  border-top: 1px solid #eee;
  font-size: 14px;
  font-size: 1.4rem;
}
.cat-menu li b {
  display: block;
  padding: 15px;
  font-size: 14px;
  font-size: 1.4rem;
  position: relative;
  border-top: 2px solid #eee;
}
.cat-menu li b::after {
  content: "\e93b";
  font-family: "icomoon";
  color: #fff;
  font-size: 11px !important;
  position: absolute;
  left: 90%;
  top: 50%;
  /* margin-top: -5px; */
}
.cat-menu li a {
  display: block;
  padding: 15px;
}
.cat-menu li a:hover {
  background-color: #FCF4DA;
}
.cat-menu li li li {
  border-top: none;
}
.cat-menu li li li a {
  font-size: 12px;
  padding:9px 9px 9px 30px;
}
/*------------------------------
  #container
------------------------------*/
#container {
}
@media screen and (min-width: 960px) {
  #container {
  }
  .site-name a {
    max-height: 180px;
  }
  .site-name img {
    max-width: 100%;
    max-height: 180px;
    height: auto;
    margin: auto;
  }
}
#main,
.main {
  margin: 0 3% 30px;
}
.main {
  margin: 30px;
}
#top-main {
  margin: 0 3%;
}
/* LP */
#body-lp #main {
  margin-top: 0;
}
#body-lp .logo {
  margin-top: 0;
}
#body-lp .item-order {
  width: 100%;
  padding-top: 30px;
}
#body-lp footer {
  position: relative;
}
#body-lp footer .sns {
  text-align: center;
  margin-top: 10px;
}
.lp-img {
  margin-bottom: 30px;
  text-align: center;
}
#main,
.main {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.5;
  text-align: left;
}
@media screen and (min-width: 960px) {
  .main-article {
    max-width: 1000px;
    margin: 0 auto;
  }
  /* LP */
  #body-lp #header {
    height: auto;
  }
  #body-lp #main {
    margin-top: 0;
  }
  #body-lp .logo {
    margin-top: 0;
  }
}
/* section item block
------------------------------*/
.section-block,
.cat-block {
  clear: both;
  padding: 16px 0 20px;
  width: 100%;
}
/* 見出し */
.section-head,
.item-head {
  padding: 10px 3px;
  margin: 0 0 30px;
  text-align: left;
  border-bottom: 1px solid #595335;
  border-top: 1px solid #595335;
  color: #595335;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
  font-family: "Sawarabi Mincho", "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, serif;
  line-height: 1.0;
  font-feature-settings: "palt";
}
.section-head h2,
.item-head h2 {
  font-weight: normal;
}
/* 見出しh2 */
.title1,
.ttl h2 {
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  order: 2;
  font-family: "Sawarabi Mincho", "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, serif;
  padding-top: 10px;
  font-feature-settings: "palt";
  color:#ccc;
}
.title2 {
  font-size: 20px;
  font-size: 2rem;
  font-weight: normal;
  line-height: 1.5;
  text-align: left;
  font-family: "sans-serif";
}
/* ディスクリプション */
.lead-txt {
  padding: 10px 0 0;
}
.lead-txt p {
  text-align: center;
  line-height: 1.5;
  font-size: 14px;
  font-size: 1.4rem;
  margin-bottom: 1.0em;
}
/* 見出し:サブタイトル */
.sub-title {
  font-size: 24px;
  font-size: 2.4rem;
  order: 1;
  padding: 0 10px 0 0;
  margin: 0 10px 0 0;
}
.sub-title2 {
  font-size: 20px;
  font-size: 2rem;
}
@media (min-width: 375px) {
  .title1, .sub-title {
    font-size: 1.8rem;
  }
  .secondary-head {
    padding: 10px;
  }
  .guide-nav {
    padding: 0 10px;
  }
  .main {
    margin: 0px 20px 30px;
  }
  table.about-tbl {
    margin: 4px auto;
  }
  .list-info {
    padding: 0 20px;
  }
}
@media screen and (min-width: 600px) {
  .main {
    margin: 0px 20px 30px;
  }
  .section-head {
    flex-direction: row;
    margin: 0 0 10px;
  }
  .title1 {
    padding: 0;
    font-size: 1.8rem;
  }
  .title2 {
    font-size: 1.8rem;
  }
  table.about-tbl {
    margin: 4px auto;
  }
  .sub-title .section-head h2 {
    font-size: 1.8rem;
  }
  .footer-logo {
    width: auto;
  }
  .footer-logo img {
    max-width: 200px;
    margin: 0 auto;
  }
  .secondary-head {
    padding: 10px;
  }
  .guide-nav {
    padding: 0 10px;
  }
  .ttl {
    padding: 0px 0 10px;
  }
  .list-info {
    padding: 0 10px;
  }
}
@media (min-width: 1018px) and (max-width: 1159px) {
  #wrapper {
    width: 95%;
  }
  #main-image {
    width: 100%;
  }
  .sub-title, .section-head h2 {
    font-size: 2rem;
  }
  .icon-rank {
    width: 26px;
    height: 26px;
    line-height: 26px;
  }
  .icon-rank span {
    font-size: 16px;
  }
  .ttl {
    padding: 20px 0 10px;
  }
  .list-info {
    padding: 0 10px;
  }
}
/* TOP
----------------------------------*/
/* フリーエリア */
#top-shop-message1 {
  text-align: center;
  font-family: serif;
  font-size: 20px;
  line-height: 34px;
  margin: 0;
}
#top-shop-message1,
#top-shop-message2 {
  margin: 0 auto 24px;
  /* max-width: 1000px; */
}
#top-shop-message2 {
  margin: 0;
  padding: 20px;
  border-top: 1px solid #595335;
}
#top-shop-message1 h2,
#top-shop-message2 h2 {
  font-size: 20px;
  font-size: 2rem;
  line-height: 1.5;
  padding: 10px 0;
  position: relative;
}
#top-shop-message1 p,
#top-shop-message2 p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.5;
  margin-bottom: 1.5em;
}
#top-shop-message1 .bnr-col3,
#top-shop-message2 .bnr-col3 {
  text-align: center;
}
#top-shop-message1 .bnr-col3 img,
#top-shop-message2 .bnr-col3 img {
  margin: auto;
  margin-bottom: 6px;
}
/* SP landscape 横 */
@media (min-width: 375px) {
  #top-shop-message1 {
    font-size: 1.8rem;
  }
}
@media screen and (min-width: 600px) {
  .section-block #top-shop-message1 {
    font-size: 16px;
    line-height: normal;
  }
  #top-shop-message2 {
    margin: 0;
    padding: 10px;
  }
}
@media screen and (min-width: 960px) {
  #top-shop-message1 .bnr-col3,
  #top-shop-message2 .bnr-col3 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: center;
  }
}
@media (min-width: 1018px) and (max-width: 1159px) {
  #top-shop-message2 {
    margin: 10px 0;
  }
}
/* お知らせ */
.list-info {
  list-style: none;
  padding: 0 10px;
}
.list-info li {
  font-size: 16px;
  font-size: 1.6rem;
  padding: 10px 0;
  text-align: left;
  line-height: 1.5;
}
.list-info li span {
  font-size: 14px;
  font-size: 1.4rem;
  display: block;
  margin-bottom: 6px;
}
.list-info li a {
  display: block;
}
/* 商品リスト
----------------------------------*/
/* カラム */
.col-2,
.col-3,
.col-4,
.col-5,
.col-6 {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}
.col-2 li,
.col-3 li,
.col-4 li,
.col-5 li,
.col-6 li {
  width: 50%;
}
.item-photo {
  overflow: hidden;
  margin: auto;
  margin-bottom: 10px;
  position: relative;
  max-width: 250px;
  max-height: 250px;
}
.item-photo img {
  display: block;
  max-width: 100%;
  max-height: 250px;
  width: auto;
  height: auto;
  margin: auto;
}
/* アイコン */
.icon-rank {
  position: absolute;
  width: 30px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background-color: #595335;
  color: #fff;
  left: 0px;
  top: 0px;
  z-index: 100;
}
.icon-rank span {
  font-weight: bold;
  font-size: 18px;
}
.icon-rank:hover {
  background-color: #595335;
  opacity: 50%;
}
.icon-rank-secondary {
  background-color: #d7d8d8;
}
@media screen and (min-width: 600px) {
  .icon-rank span {
    font-size: 1.6rem;
  }
  .icon-rank {
    width: 26px;
    height: 26px;
    line-height: 26px;
  }
}
/* バッチ */
  .icon-badge86518::before{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
  }
  .icon-badge86518::before{
    content: "NEW";
    width: 60px;
    height: 18px;
    display: inline-block;
    font-size: 11px;
    line-height: 18px;
    font-weight: bold;
    text-align: center;
    background: #3e3a25;
    color: #fff;
    padding: 4px;
  }
  .icon-badge86519::before{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
  }
  .icon-badge86519::before{
    content: "おすすめ";
    width: 60px;
    height: 18px;
    display: inline-block;
    font-size: 11px;
    line-height: 18px;
    font-weight: bold;
    text-align: center;
    background: #ff7b65;
    color: #fff;
    padding: 4px;
  }
  .icon-badge86520::before{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
  }
  .icon-badge86520::before{
    content: "人気";
    width: 60px;
    height: 18px;
    display: inline-block;
    font-size: 11px;
    line-height: 18px;
    font-weight: bold;
    text-align: center;
    background: #86c03f;
    color: #fff;
    padding: 4px;
  }
.icn-reservation::before {
  content: "予約商品";
  font-size: 11px;
  line-height: 20px;
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 66px;
  height: 20px;
  text-align: center;
  color: #1a130c;
  background: #f3f3f3;
}
a .icn-reservation::before {
  color: #1a130c;
  background: #f3f3f3;
}
.item-detail-name.icn-reservation::before {
  font-size: 16px;
  line-height: 32px;
  position: relative;
  float: left;
  width: 96px;
  height: 32px;
  margin-right: 10px;
}
.item-info {
  text-align: center;
}
.item-info .item-name {
  line-height: 1.3;
  font-size: 16px;
  font-size: 1.6rem;
  margin-top: 10px;
font-weight: bold;
}
.item-info .item-price {
  margin-top: 10px;
}
.item-info .item-nonstock {
  display: inline-block;
  vertical-align: top;
  font-size: 11px;
  font-weight: normal;
  line-height: 18px;
  margin-right: 6px;
  padding: 0 3px;
  text-align: center;
  color: #f33;
  background: #fff;
}
.tax {
  font-size: 70% !important;
color:b0b0b0;
}
.list-product {
  padding: 0 1%;
}
.list-product li {
  list-style: none;
  margin: 15px 0;
  padding: 0 1.5% 0;
}
.list-product li a {
  display: block;
}
/* 検索・カテゴリーページ
----------------------------------*/
.cat-head {
  padding: 10px;
}
.frame-block,
.ttl {
  padding: 20px 0 10px;
}
.frame-block .title1,
.ttl h2 {
  color: #595335;
}
/* カテゴリ名 */
.cat-name {
  border-bottom: 1px solid #d2d2d2;
  display: block;
  padding: 0 5px 10px;
  font-size: 14px;
  margin-bottom: 10px;
}
/*　並び順／ページ送り */
.sort {
  text-align: right;
  margin-bottom: 1.5em;
}
.cat-head + .sort {
  border-top: 1px solid #e5e5e5;
}
.sort ul {
  padding: 10px 0;
}
.sort ul li {
  display: inline-block;
  font-size: 12px;
  font-size: 1.2rem;
  padding: 0 6px;
  border-right: 1px solid #333;
}
.sort a {
  text-decoration: underline;
}
.sort ul li:last-child, .sort ul li:first-child {
  border: none;
}
.item-list-itemcount {
  border-top: 1px solid #e5e5e5;
  text-align: right;
  margin: 15px 0;
  padding: 15px 0;
  font-size: 12px;
  font-size: 1.2rem;
}
/* 検索結果0 */
.product-list {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 1.6;
}
/* 詳細ページ
----------------------------------*/
#item-detail {
  padding-top: 10px;
}
.item-2column {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 960px) {
  .item-2column {
    -webkit-justify-content: space-between;
    justify-content: space-between;
    flex-direction: row;
  }
}
.item-detail-block {
  margin-bottom: 24px;
}
.item-footer {
  clear: both;
  margin-bottom: 60px;
}
.item-detail-left {
  width: 100%;
  margin-top: 20px;
}
.item-detail-right {
  width: 100%;
}
.item-detail-head {
  border-top: 1px solid #d2d2d2;
  border-bottom: 1px solid #d2d2d2;
  text-align: left;
  padding: 10px 5px;
}
.item-detail-head .ttl {
  font-size: 22px;
  font-size: 2.2rem;
  line-height: 1.5;
  padding: 0 10px;
}
.item-detail-head p {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.4;
  margin-top: 10px;
}
/* 販売価格 */
.item-detail-price {
  padding: 15px;
  border-top: 1px solid #d2d2d2;
  border-bottom: 1px solid #d2d2d2;
  margin-bottom: 20px;
}
.item-detail-price dt {
  font-size: 18px;
  font-size: 1.8rem;
  display: table-cell;
  vertical-align: middle;
  width: 120px;
}
.item-detail-price dd {
  display: table-cell;
  vertical-align: middle;
}
.item-detail-price .price {
  font-size: 22px;
  font-size: 2.2rem;
}
.item-block a {
  text-decoration: underline;
}
/* 価格・スペック */
.item-detail-block-in,
.item-detail-spec {
  width: 100%;
  padding: 0 3%;
  margin-bottom: 20px;
}
.item-detail-block-in dl,
.item-detail-spec dl {
  display: table;
  width: 98%;
  margin: 0 auto 15px;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: left;
}
.item-detail-block-in dl {
  padding: 0;
}
.item-detail-block-in dt,
.item-detail-spec dt {
  display: table-cell;
  vertical-align: middle;
  width: 120px;
  padding: 0px;
}
.item-detail-block-in dd,
.item-detail-spec dd {
  display: table-cell;
  vertical-align: middle;
  padding: 3px;
  line-height: 1.4;
}
.item-detail-block-in dt {
  width: 7em;
}
.item-detail-category {
  font-size: 14px;
  font-size: 1.4rem;
}
.item-detail-name {
  font-size: 22px;
  font-size: 2.2rem;
  font-weight: normal;
}
/* カートエリア */
.item-detail-cart {
  width: 100%;
  padding: 0 3%;
  margin-bottom: 25px;
}
.item-detail-cart p {
  font-size: 14px;
  margin-bottom: 10px;
  text-align: left;
}
@media (min-width: 600px) and (max-width: 1019px) {
  .item-detail-cart, .item-detail-spec {
    padding: 0;
  }
}
@media screen and (max-width: 600px) {
  .item-detail-spec {
    padding: 0;
  }
  .item-footer {
    margin: 10px;
  }
}
@media (min-width: 375px) {
  .item-detail-cart {
    padding: 0 2%;
  }
}
/* バリエーション */
/* select text */
.item-detail-select,
.item-detail-inputtext {
  position: relative;
  width: 100%;
  margin-bottom: 20px;
}
.item-detail-select label,
.item-detail-inputtext input {
  position: relative;
  display: inline-block;
  overflow: hidden;
  width: 100%;
  height: 56px;
  vertical-align: middle;
  border: 1px solid #d2d2d2;
  background-color: #fff;
}
.item-detail-select::before {
  position: absolute;
  z-index: 2;
  top: 50%;
  right: 20px;
  width: 0;
  height: 0;
  margin-top: -3px;
  content: '';
  border-width: 8px 5px 0 5px;
  border-style: solid;
  border-color: #333 transparent transparent transparent;
}
.item-detail-select select {
  font-size: 16px;
  line-height: 56px;
  position: relative;
  z-index: 2;
  display: block;
  width: 100%;
  width: -webkit-calc(100%);
  height: 56px;
  margin: 0;
  padding: 0 45px 0 15px;
  border: 0;
  outline: none;
  background: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
select::-ms-expand {
  display: none;
}
/* radio */
.item-detail-radio {
  overflow: hidden;
  width: 100%;
  margin-bottom: 18px;
  text-align: left;
  overflow: hidden;
  width: 100%;
  margin-bottom: 18px;
}
.item-detail-radio div {
  margin-bottom: 10px;
  padding-bottom: 1px;
}
.item-detail-radio input {
  position: absolute;
  opacity: .0;
}
.item-detail-radio input + label {
  max-width: 100%;
  font-size: 16px;
  line-height: 1;
  position: relative;
  display: inline-block;
  padding-left: 30px;
}
.item-detail-radio input + label::before {
  position: absolute;
  top: 1px;
  left: 0;
  display: block;
  width: 15px;
  height: 15px;
  margin-top: -1px;
  content: '';
  border: 1px solid #999;
  border-radius: 50%;
}
.item-detail-radio input:checked + label::after {
  position: absolute;
  top: 3px;
  left: 3px;
  display: block;
  width: 11px;
  height: 11px;
  content: '';
  border-radius: 50%;
  background-color: #595335;
}
.item-detail-radio label {
  font-size: 18px;
  line-height: 2;
  display: block;
  padding: 0;
}
.item-detail-num-count {
  font-size: 0;
  display: flex;
  width: 100%;
  margin-bottom: 18px;
}
.item-detail-num-plus {
  font-size: 14px;
  display: inline-block;
  vertical-align: middle;
}
.item-detail-num-plus a,
.item-detail-num-minus a {
  font-size: 24px;
  line-height: 55px;
  display: block;
  width: 55px;
  height: 55px;
  text-align: center;
  text-decoration: none;
  background-color: #f1f1f1;
  color: #000;
  border: 1px solid #ddd;
}
.item-detail-num-minus {
  font-size: 14px;
  display: inline-block;
  margin-right: 12px;
  vertical-align: middle;
}
.item-detail-num {
  height: 55px;
  margin-right: 12px;
  padding: 0;
  vertical-align: middle;
}
.item-detail-num input[type=number] {
  font-size: 14px;
  line-height: 55px;
  display: block;
  width: 55px;
  height: 55px;
  text-align: center;
  border: solid 1px #d2d2d2;
  -moz-appearance: textfield;
}
.item-detail-num input[type=number]::-webkit-inner-spin-button, .item-detail-num input[type=number]::-webkit-outer-spin-button {
  margin: 0;
  -webkit-appearance: none;
}
.item-detail-num-select {
  position: relative;
  display: inline-block;
  overflow: hidden;
  width: 100%;
  height: 56px;
  margin-bottom: 18px;
  vertical-align: middle;
  border: 1px solid #d2d2d2;
  background-color: #fff;
}
.item-detail-num-select label::before {
  position: absolute;
  z-index: 2;
  top: 50%;
  right: 20px;
  width: 0;
  height: 0;
  margin-top: -3px;
  content: '';
  border-width: 7px 5px 0 4px;
  border-style: solid;
  border-color: #000 transparent transparent transparent;
}
.item-detail-num-select select {
  font-size: 14px;
  line-height: 56px;
  position: relative;
  z-index: 2;
  display: block;
  width: 100%;
  width: -webkit-calc(100%);
  height: 56px;
  margin: 0;
  padding: 0 0 0 20px;
  text-indent: .01px;
  text-overflow: '';
  border: 0;
  outline: none;
  background: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
/* カートボタン */
.item-detail-cart-btn {
  width: 100%;
  margin-bottom: 20px;
  position: relative;
}
.item-detail-cart-btn a {
  display: block;
  font-size: 20px;
  line-height: 55px;
  width: 100%;
  height: 55px;
  text-align: center;
  color: #fff;
  background-color: #ff7b65;
  border-bottom: solid 4px #b35647;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
.item-detail-cart-btn a::before {
  content: "\e918";
  font-family: "icomoon";
  font-size: 26px;
  margin-right: 15px;
}
.item-detail-cart-btn a:hover {
  background-color: #ff7b65;
  opacity: 0.5;
  text-decoration: none;
}
.item-detail-addwishlist-btn {
  width: 100%;
  margin-bottom: 20px;
}
.item-detail-addwishlist-btn a {
  font-size: 16px;
  line-height: 32px;
  display: block;
  width: 100%;
  height: 32px;
  text-align: center;
  color: #fff;
  background-color: #ff7b65;
  border-bottom: solid 4px #b35647;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
.item-detail-addwishlist-btn a:hover {
  background-color: #ff7b65;
  opacity: 0.5;
  text-decoration: none;
}
.item-detail-addnotificationmail-btn {
  width: 100%;
  margin-bottom: 20px;
}
.item-detail-addnotificationmail-btn a {
  font-size: 16px;
  line-height: 32px;
  display: block;
  width: 100%;
  height: 32px;
  text-align: center;
  color: #fff;
  background-color: #ff7b65;
  border-bottom: solid 4px #b35647;
  -moz-border-radius: 5px;
  -webkit-border-radius: 5px;
  border-radius: 5px;
}
.item-detail-addnotificationmail-btn a:hover {
  background-color: #ff7b65;
  opacity: 0.5;
  text-decoration: none;
}
.item-detail-txt1,
.item-detail-txt2,
.item-detail-txt3 {
  width: 100%;
}
.item-detail-txt1 p,
.item-detail-txt2 p,
.item-detail-txt3 p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6;
  text-align: left;
}
.item-detail-txt2 {
  margin-top: 15px;
  color: #595335;
  font-family: serif;
  font-size: 2.0rem;
  text-align: center;
}
.item-detail-txt3 {
  padding: 20px;
  background: #eee;
  font-size: 1.4rem;
}
@media screen and (min-width: 600px) {
  .item-detail-txt2 {
    font-size: 22px;
  }
}
@media screen and (min-width: 960px) {
  .item-detail-txt2 {
    margin-top: 30px;
  }
}
.item-detail-share {
  margin-bottom: 0;
  text-align: left;
}
.item-detail-share ul {
  padding: 15px 0;
}
.item-detail-share li {
  display: inline-block;
  width: 120px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  margin: 0;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  border-radius: 2px;
}
.item-detail-share li a {
  display: block;
  font-size: 14px;
  color: #fff;
}
.item-detail-share li a:hover {
  text-decoration: none;
}
.item-detail-share li.twitter {
  background-color: #55acee;
}
.item-detail-share li.twitter a:hover {
  background-color: #1689e0;
}
.item-detail-share li.xicon {
  background-color: #000;
}
.item-detail-share li.xicon a:hover {
  background-color: #333;
}
.item-detail-share li.facebook {
  background-color: #3b5998;
}
.item-detail-share li.facebook a:hover {
  background-color: #263961;
}
.item-dtail-nostock,
.item-dtail-outofoperiod {
  font-size: 14px;
  font-size: 1.4rem;
  color: #d70035;
  line-height: 1.6;
  margin-bottom: 24px;
}
.item-dtail-stock0 {
  color: #d70035;
}
/* サムネイル付き商品画像
----------------------------*/
/* オープン画像 */
/*overlay*/
.overlay {
  position: fixed;
  z-index: 9998;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 100%;
  background-color: rgba(51, 51, 51, 0.8);
}
.modal-open {
  /* overflow: hidden; */
}
.modal-open .overlay {
  display: block;
}
/* modal */
.modal {
  position: absolute;
  z-index: 9999;
  display: none;
  background-color: #fff;
}
.modal-open .modal {
  display: block;
}
.modal-inner {
  position: relative;
  width: 100%;
}
.modal-img {
  width: 100%;
}
.modal-img img {
  max-width: 640px;
  max-height: 640px;
  width: auto;
  height: auto;
}
.modal-close {
  position: absolute;
  top: -42px;
  right: 0px;
}
.modal-close a {
  display: block;
  width: 32px;
  height: 32px;
}
.modal-close a::before {
  content: "\e904";
  font-family: "icomoon";
  color: #000;
  font-size: 32px;
}
/* 1枚目画像 */
.item-detail-photo-main {
  position: relative;
  padding: 0;
}
.item-detail-photo {
  position: relative;
  overflow: hidden;
  width: 380px;
  height: 380px;
  margin: 0 auto 10px;
}
.item-detail-photo li {
  list-style: none;
  float: left;
  width: 380px;
  height: 380px;
  position:relative;
}
.item-detail-photo img {
  display: block;
  position:absolute;
  top:50%;
  left:50%;
  transform: translate(-50%, -50%);
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  margin: auto;
}
/* 商品画像:矢印 */
.item-detail-photo-backbtn,
.item-detail-photo-nextbtn {
  position: absolute;
  top: 50%;
  display: block;
  margin-top: -15px;
}
.item-detail-photo-backbtn a,
.item-detail-photo-nextbtn a {
  position: relative;
  display: block;
  width: 40px;
  height: 40px;
  color: #fff;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  line-height: 40px;
  text-align: center;
  font-size: 16px;
  background-color: #000;
}
.item-detail-photo-backbtn a::before,
.item-detail-photo-nextbtn a::before {
  position: absolute;
}
.item-detail-photo-backbtn a:hover,
.item-detail-photo-nextbtn a:hover {
  text-decoration: none;
}
.item-detail-photo-backbtn {
  left: 0;
}
.item-detail-photo-backbtn a::before {
  content: "\e905";
  font-family: "icomoon";
  left: 12px;
}
.item-detail-photo-nextbtn {
  right: 0;
}
.item-detail-photo-nextbtn a::before {
  content: "\e90b";
  font-family: "icomoon";
  right: 10px;
}
/* 商品画像:サムネイル */
.item-detail-thumb {
  width: 100%;
  margin: 0 auto;
  text-align: left;
  overflow: hidden;
}
.item-detail-thumb-photo {
  display: inline-block;
  vertical-align: top;
  width: 60px;
  height: 60px;
  margin: 0 0 10px;
  overflow: hidden;
  position: relative;
  border: 1px solid #d2d2d2;
}
.item-detail-thumb-photo img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50% , -50%);
  max-height: 60px;
  max-width: inherit;
}
.ttl-reservation {
  font-size: 16px;
  line-height: 33px;
  display: inline-block;
  width: 100px;
  height: 33px;
  margin-right: 12px;
  text-align: center;
  font-weight: normal;
  color: #1a130c;
  background: #f3f3f3;
}
@media screen and (max-width: 960px) {
  /* 1枚目画像 */
  .item-detail-photo {
    width: 480px;
    height: 480px;
  }
  .item-detail-photo li {
    width: 480px;
    height: 480px;
  }
}
@media screen and (max-width: 600px) {
  /* サムネイル付き商品画像
  ----------------------------*/
  /* オープン画像 */
  .nav-open {
    overflow: hidden;
  }
  .nav-open .overlay {
    display: block;
  }
  /* modal */
  .modal-img img {
    max-width: 340px;
    max-height: 340px;
    width: auto;
    height: auto;
  }
  .modal-close {
    position: absolute;
    top: -30px;
  }
  .modal-close a {
    display: block;
    width: 24px;
    height: 24px;
  }
  .modal-close a::before {
    font-size: 24px;
  }
  /* 1枚目画像 */
  .item-detail-photo-main {
    margin: 0 auto;
  }
  .item-detail-photo {
    width: 300px;
    height: 300px;
  }
  .item-detail-photo ul {
    width: 100%;
    height: 300px;
    margin: 0 auto;
  }
  .item-detail-photo ul li {
    display: block;
    width: 300px;
    height: 300px;
    margin: 0;
  }
  /* 商品画像:サムネイル */
  .item-detail-thumb-photo {
    width: 48px;
    height: 48px;
  }
}
/*--------------------------------------
  #secondary
--------------------------------------*/
#secondary {
  width: 100%;
  padding: 20px 0;
  border-top: 1px solid #595335;
}
#secondary .left-block,
#secondary .right-block {
  width: 100%;
  padding: 0 3%;
  margin: 0 auto;
}
/* 見出し */
.secondary-head {
  padding: 10px 0;
  position: relative;
  margin-bottom: 1.0em;
  color: #595335;
}
.guide-nav {
  width: 100%;
  text-align: left;
}
.guide-nav li {
  display: inline-block;
  font-size: 14px;
  font-size: 1.4rem;
  margin-bottom: 10px;
}
.guide-nav li a {
  display: block;
  padding: 0 30px 0 0;
}
.guide-nav li a:hover {
  display: block;
  padding: 0 30px 0 0;
}
/* カレンダー
--------------------------------------------*/
.schedule-area2 {
  margin-bottom: 10px;
  width: 100%;
}
.schedule-area2 .months {
  text-align: left;
  padding: 10px;
  font-size: 16px;
  font-size: 1.6rem;
}
.list-event {
  margin: 0;
  padding: 20px 0;
  text-align: right;
}
.list-event li {
  font-size: 12px;
  font-size: 1.2rem;
}
.footer-logo {
  width: 90%;
  text-align: center;
  font-family: "Sawarabi Mincho", "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "メイリオ", Meiryo, serif;
  margin: auto;
  margin-bottom: 15px;
}
.footer-logo a {
  font-size: 18px;
  font-size: 1.8rem;
  display: inline-block;
}
.footer-logo img {
  margin: 0 auto 15px;
}
/* SNS
--------------------------------------------*/
.sns {
  padding: 0 3%;
  margin-bottom: 15px;
}
.sns li {
  text-align: center;
  margin: 0 5px;
}
.sns li a {
  display: block;
  width: 34px;
  height: 34px;
  line-height: 34px;
  -moz-border-radius: 50%;
  -webkit-border-radius: 50%;
  border-radius: 50%;
  background-color: #fff;
  font-size: 26px;
  color: #595335;
  text-decoration: none;
}
.sns li a::before {
  content: "";
  font-family: 'icomoon';
  color: #595335;
}
.sns li a.twitter::before {
  content: "\e913";
}
.sns li a.xicon::before {
  content: "\e933";
}
.sns li a.facebook::before {
  content: "\ea90";
}
/*--------------------------------------
  #footer
--------------------------------------*/
#footer {
  width: 100%;
  max-width: 1040px;
  padding: 15px 3%;
  margin: 0 auto;
  text-align: center;
  border-top: 3px solid #595335;
}
.copyright {
  line-height: 1.4;
  font-size: 11px;
  font-size: 1.1rem;
  width: 100%;
  padding: 0 3%;
}
@media screen and (min-width: 768px) {
  /* ----------------------------
    768px
  ---------------------------- */
  /* LP */
  #body-lp #container {
    padding: 30px 0;
  }
  #body-lp .item-order {
    width: 60%;
    margin: 0 auto;
  }
  #body-lp #page-top {
    bottom:48px;
  }
  #body-lp footer .sns {
    position: absolute;
    right: 0;
    top: 10px;
  }
  /* section item block
  ------------------------------*/
  .section-block,
  .cat-block {
    padding: 20px 0 20px;
  }
  /* お知らせ */
  .list-info li {
    text-align: left;
    clear: both;
  }
  .list-info li span {
    width: 120px;
    float: left;
  }
  .list-info li a {
    margin-left: 120px;
  }
  /* 商品リスト
  ---------------------------*/
  /* カラム */
  .col-3 li,
  .col-4 li,
  .col-5 li,
  .col-6 li {
    width: 33.3333%;
    width: -webkit-calc(100% * 0.33333);
    width: calc(100% * 0.33333);
    padding: 0 1.5%;
  }
  .item-photo {
    max-height: 260px;
  }
  /*--------------------------------------
    #secondary
  --------------------------------------*/
  #secondary {
    padding: 24px 0;
  }
  /* カレンダー */
  .block-in {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-flow: wrap;
  }
  .schedule-area2 {
    width: 46%;
    margin-right: 2%;
  }
  /*--------------------------------------
    #footer
  --------------------------------------*/
  .footer-logo a {
    font-size: 20px;
    font-size: 2rem;
  }
  .footer-logo img {
    width: auto;
  }
}
@media screen and (min-width: 960px) {
  /* ----------------------------
    960px
  ---------------------------- */
  #main,
  .main {
    margin: 0 10px 30px;
  }
  #top-main {
    margin: 0;
  }
  /*--------------------------------------
    header
  --------------------------------------*/
  #header {
    height: 270px;
  }
  .header-top {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 60px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    padding-top: 0;
    border-bottom: 3px solid #595335;
  }
  /* menu */
  .menubtn {
    display: none;
  }
  .logo {
    width: 100%;
    text-align: center;
    overflow: hidden;
    height: 260px;
  }
  /* LOGO画像・テキスト */
  .site-name {
    height: 330px;
    margin: auto;
    padding: 15px;
    font-size: 20px;
    font-size: 2rem;
  }
  .site-name img {
    margin: 0 auto;
  }
  .site-name a {
    height: auto;
  }
  /* 検索
  ------------------------------*/
  .search-area {
    background-color: transparent;
    width: 280px;
    margin: 0 auto 0 0;
    padding: 0;
  }
  .searchform3 {
    background: #f4f4f4;
  }
  .searchform3 input[type=text] {
    max-width: 250px;
    width: 100%;
  }
  /* グローバルナビ
  ------------------------------*/
  #global-nav {
    display: block;
  }
  /* ヘッダーメニュー
  ------------------------------*/
  .header-menu {
    width: 33%;
    margin: 0 0 0 auto;
  }
  .header-menu li {
    width: 30.8%;
    margin-left: 4px;
  }
  .header-menu li:only-child {
    width: 98%;
  }
  .header-menu li:first-child.mypage,
  .header-menu li:nth-child(2).cart {
    width: 48%;
  }
  .header-menu li a {
    height: 34px;
    line-height: 30px;
border-radius: 4px;
  }
  /* カテゴリーリスト */
  .cat-menu {
    width: 100%;
    text-align: center;
    height: 40px;
    margin-bottom: 0px;
    background: #595335;
  }
  .cat-menu li {
    background-color: transparent;
    display: inline-block;
    font-size: 14px;
    font-size: 1.4rem;
    border-top: none;
    line-height: 0.2rem;
  }
  .cat-menu li b {
    border-top: none;
  }
  .cat-menu li b::after {
    left: 85%;
  }
  .cat-menu li a {
    text-align: left;
  }
  li.cat-dropdown {
    position: relative;
  }
  li.cat-dropdown b {
    padding: 20px 30px;
    font-size: 16px;
    font-size: 1.6rem;
    color: #fff;
    letter-spacing: 0.1rem;
  }
  li.cat-dropdown b::after {
    content: "\e93b";
    margin-left: 6px;
  }
  li.cat-dropdown > ul {
    position: absolute;
    top: 40px;
    left: 0;
    width: 280px;
    z-index: 2000;
  }
  li.cat-dropdown > ul > li {
    display: block;
    width: 80%;
    border-top: 1px solid #eee;
  }
  li.cat-dropdown > ul > li li{
    width: 100%;
    border-top: 1px solid #eee;
  }
  li.cat-dropdown > ul li a {
    display: block;
    background-color: rgba(255, 255, 255, 0.9) !important;
    border: none !important;
    padding: 6px 15px !important;
    text-align: left;
    line-height: 1.4;
  }
  li.cat-dropdown > ul li a::after {
    content: "";
  }
  .cat-menu li ul {
    display: none;
  }
  .cat-menu li ul li ul {
    width: 100%;
  }
  .cat-menu li ul li ul li a {
    padding-left: 30px !important;
  }
  .cat-menu li:hover ul {
    display: block;
  }
  /* section item block
  ------------------------------*/
  .section-block,
  .cat-block {
    padding: 30px 0;
  }
  /* 見出し */
  .section-head,
  .item-head {
    margin-bottom: 2.0em;
    flex-direction: row;
  }
  /* 見出しh2 */
  .title1,
  .ttl h2 {
    font-size: 22px;
    font-size: 2.2rem;
    padding: 0;
  }
  .title2 {
    font-size: 16px;
    font-size: 1.6rem;
    font-family: sans-serif;
    font-weight: bold;
    letter-spacing: 0.1rem;
    color: #000;
  }
  /* 見出し:サブタイトル */
  .sub-title {
    font-size: 22px;
    font-size: 2.2rem;
    border-right: 1px solid #595335;
    padding: 0 10px 0 0;
    margin: 0 10px 0 0;
  }
  .sub-title2 {
    font-size: 24px;
    font-size: 2.4rem;
  }
  /* TOP
  ----------------------------------*/
  #top-shop-message1,
  #top-shop-message2 {
    margin: 0 auto 30px;
    padding: 0;
  }
  #top-shop-message1 h2,
  #top-shop-message2 h2 {
    font-size: 26px;
    font-size: 2.6rem;
    padding: 15px 0;
  }
  #top-shop-message1 p,
  #top-shop-message2 p {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.65;
  }
  #top-shop-message2 {
    padding: 30px 10px;
    border-top: 1px solid #595335;
  }
  /* 商品リスト
  ---------------------------*/
  /* カラム */
  .col-3 li {
    padding: 0 2% 0 0;
  }
  /* カラム */
  .col-4 li {
    width: 25%;
    margin: 0 0 30px;
    padding: 0 2% 0 0;
  }
  .col-5 li {
    width: 20%;
    margin: 0 0 30px;
    padding: 0 2% 0 0;
  }
  .col-6 li {
    width: -webkit-calc(100% * 0.1666);
    width: calc(100% * 0.1666);
    margin: 0 0 30px;
    padding: 0 1%;
  }
  .list-product {
    padding: 0;
  }
  /* 検索・カテゴリーページ
  ----------------------------------*/
  .cat-head,
  .frame-block,
  .ttl {
    padding: 20px 0 30px;
  }
  /*　並び順／ページ送り */
  .sort {
    margin-bottom: 40px;
  }
  .sort ul {
    padding: 20px 0;
  }
  .sort ul li {
    font-size: 14px;
    font-size: 1.4rem;
    padding: 0 10px;
  }
  .item-list-itemcount {
    font-size: 14px;
    font-size: 1.4rem;
  }
  /* 詳細ページ
  ----------------------------------*/
  .item-detail-left {
    width: 560px;
    margin-top: 40px;
  }
  .item-detail-right {
    width: -webkit-calc(100% - 600px);
    width: calc(100% - 600px);
    margin-top: 40px;
  }
  /* 価格・スペック */
  .item-detail-block-in,
  .item-detail-spec {
    padding: 0;
  }
  /* カートエリア */
  .item-detail-cart {
    padding: 0;
  }
  .item-detail-txt1,
  .item-detail-txt2,
  .item-detail-txt3 {
    padding: 0;
  }
  /*--------------------------------------
    #secondary
  --------------------------------------*/
  #secondary {
    padding: 40px 0;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
  }
  #secondary .left-block {
    width: 300px;
    padding: 0 30px;
  }
  #secondary .right-block {
    width: -webkit-calc(100% - 300px);
    width: calc(100% - 300px);
  }
  .nav-1 li {
    list-style-type: circle;
  }
  .nav-1 li ul li {
    list-style-type: none;
    display: inline-block;
    margin-right: 15px;
  }
  /*--------------------------------------
    #footer
  --------------------------------------*/
  #footer {
    padding: 30px 0;
  }
  .copyright {
    font-size: 12px;
    font-size: 1.2rem;
  }
  #body-lp .copyright {
    font-size: 12px;
    font-size: 1.2rem;
  }
}
/* ログインページ
----------------------------------*/
#main-image + div#login-error-message {
  border-top-width: 1px;
  border-top-style: solid;
}
#top-shop-message1 {
  margin: 30px 0;
}
#top-shop-message2 {
  margin: 30px 0;
}
#login-error-message {
  font-size: 12px;
  margin: 20px 10px;
  padding: 10px;
  text-align: center;
  color: #e6503f;
  border: #e6503f solid 1px;
}
#login-message {
  margin:30px 10px 0;
}
.login-tbl {
  display: block;
  width: calc(100% - 20px);
  margin: 20px 10px 20px;
}
.login-tbl tbody,
.login-tbl tr {
  display: block;
  width: 100%;
}
.login-tbl th {
  font-size: 14px;
  font-weight: normal;
  line-height: 1.2;
  display: block;
  padding: 10px;
  text-align: left;
  border: none;
  background: none;
}
.login-tbl td {
  font-size: 14px;
  font-weight: normal;
  display: block;
  padding: 10px;
  vertical-align: top;
  border: none;
}
.login-tbl td input[type=text],
.login-tbl td input[type=password] {
  font-size: 16px;
  line-height: 36px;
  width: 100%;
  height: 36px;
  padding: 0 10px;
  border: #d0d0d0 solid 1px;
}
.login-link ul li {
  margin-top: 1em;
}
.login-btn {
  font-size: 15px;
  margin-bottom: 25px;
  text-align: center;
}
.login-btn a {
  font-size: 16px;
  font-weight: normal;
  line-height: 44px;
  position: relative;
  display: inline-block;
  width: 152px;
  height: 44px;
  text-align: center;
  text-decoration: none;
  color: #fff;
  background-color: #ff7b65;
  border-bottom: solid 4px #b35647;
  border-radius: 5px;
}
.login-link{
  margin-bottom: 60px;
}
.login-link ul li {
  text-align: center;
  list-style: none;
}
.login-link ul li a {
  text-decoration: underline;
}
@media screen and (min-width: 960px) {
  .body-login .main {
    float: none;
    width: 785px;
    margin-right: auto;
    margin-left: auto;
  }
  .body-login .footer-logo {
    float: none;
    width: 100%;
    text-align: center;
  }
  #login-error-message {
    font-size: 14px;
    margin: 30px 0 40px;
    padding: 8px 15px;
    text-align: left;
  }
  #login-message {
    margin: 30px 0;
    text-align: center;
  }
  .login-tbl {
    max-width: 785px;
    display: table;
    margin: 15px auto;
  }
  .login-tbl tbody {
    display: table-row-group;
  }
  .login-tbl tr {
    display: table-row;
  }
  .login-tbl th {
    font-size: 16px;
    font-weight: normal;
    line-height: 36px;
    width: 200px;
    text-align: left;
    vertical-align: top;
    display: table-cell;
  }
  .login-tbl td {
    text-align: left;
    display: table-cell;
  }
}
/* 特商法・送料についてページ
----------------------------------*/
.payment-content tr:first-child td {
  font-weight:bold;
  background: #f6f6f7;
  text-align:center;
}
.payment-content td {
  text-align:right;
}
/* notfoundページ
----------------------------------*/
.notfound {
  font-size: 24px;
  margin-top: 90px;
  margin-bottom: 60px;
}
@media only screen and (max-width: 600px) {
  .notfound {
    font-size: 16px;
    margin:50px 10px 0;
  }
}
@media screen and (min-width: 1200px) {
  /* ----------------------------
    1200px
  ---------------------------- */
}
/* .detailed-search */
.detailed-search-head {
  font-size: 18px;
  line-height: 36px;
  padding: 0 5px;
  cursor: pointer;
  text-align: right;
}
.detailed-search-show .detailed-search-head {
  border-bottom: 1px solid #595335;
}
.detailed-search-head::after {
  content: "\ea43";
  font-family: "icomoon";
  color: #595335;
  margin-left: 15px;
}
.detailed-search-show .detailed-search-head::after {
  content: "\ea41";
  font-family: "icomoon";
}
.detailed-search-content {
  display: block;
  width: calc(100% - 20px);
  max-width: 650px;
  margin: 50px 0 40px;
  margin-right: auto;
  margin-left: auto;
  display: none;
}
.detailed-search-keyword,
.detailed-search-category,
.detailed-search-price {
  margin-bottom: 10px;
}
.detailed-search input[type="text"],
.detailed-search-category label {
  border: 1px solid #d2d2d2;
}
.detailed-search-name {
  display: inline-block;
  width: 35%;
  margin-right: 5px;
}
.detailed-search-keyword input[type="text"] {
  width: calc(65% - 5px);
  height: 30px;
  line-height: 30px;
  font-size: 16px;
  padding: 0 5px;
}
.detailed-search-category label {
  position: relative;
  display: inline-block;
  width: calc(65% - 5px);
  overflow: hidden;
  vertical-align: middle;
  background-color: #fff;
  padding-left: 5px;
  height: 30px;
}
.detailed-search-category label::after {
  z-index: 3;
  position: absolute;
  right: 7px;
  top: 10px;
  content: "\e900";
  font-family: "icomoon";
  font-size: 8px;
}
.detailed-search-category select {
  position: relative;
  display: block;
  width: 100%;
  margin: 0;
  border: 0;
  outline: none;
  font-size: 16px;
  line-height: 30px;
  appearance: none;
  padding-right: 32px;
}
.detailed-search-price input[type="text"] {
  width: calc( (65% - 65px) / 2);
  height: 30px;
  line-height: 30px;
  font-size: 16px;
  padding: 0 5px;
  text-align: right;
  ime-mode: disabled;
}
.detailed-search-price-unit1 {
  height: 30px;
  line-height: 30px;
  font-size: 16px;
  width:35px;
  margin: 0 5px;
}
.detailed-search-price-unit2 {
  height: 30px;
  line-height: 30px;
  font-size: 16px;
  width:15px;
  margin-left: 5px;
}
.detailed-search-btn {
  text-align: right;
}
.detailed-search-btn button {
  line-height: 36px;
  padding: 1px 30px 0;
  -webkit-appearance: none;
  background-color: #595335;
  border: 0;
  border-bottom: solid 2px #3e3a25;
  color: #fff;
  border-radius: 4px;
  font-size: 16px;
}
/* .sort-select */
.sort-select {
  padding: 20px 0px;
}
@media only screen and (max-width: 600px) {
  .sort-select {
   padding: 10px 0px;
  }
}
.sort-select .sort-label {
  display: inline;
  font-size: 16px;
  vertical-align: middle;
  line-height: 30px;
}
.sort-select label {
  position: relative;
  display: inline-block;
  overflow: hidden;
  vertical-align: middle;
  height: 30px;
  padding-left: 5px;
  border: 1px solid #d2d2d2;
}
.sort-select label::after {
  z-index: 3;
  position: absolute;
  right: 7px;
  top: 10px;
  content: "\e900";
  font-family: "icomoon";
  font-size: 8px;
}
.sort-select select {
  z-index: 2;
  display: block;
  width: 100%;
  margin: 0;
  border: 0;
  outline: none;
  font-size: 16px;
  line-height: 30px;
  appearance: none;
  padding-right: 32px;
}
.wysiwyg-data html, .wysiwyg-data address, .wysiwyg-data blockquote, .wysiwyg-data body, .wysiwyg-data dd, .wysiwyg-data div, .wysiwyg-data dl, .wysiwyg-data dt, .wysiwyg-data fieldset, .wysiwyg-data form, .wysiwyg-data frame, .wysiwyg-data frameset, .wysiwyg-data h1, .wysiwyg-data h2, .wysiwyg-data h3, .wysiwyg-data h4, .wysiwyg-data h5, .wysiwyg-data h6, .wysiwyg-data noframes, .wysiwyg-data ol, .wysiwyg-data p, .wysiwyg-data ul, .wysiwyg-data center, .wysiwyg-data dir, .wysiwyg-data hr, .wysiwyg-data menu, .wysiwyg-data pre {
  display: block;
  unicode-bidi: embed;
}
.wysiwyg-data {
  padding: 20px;
  line-height: normal;
  text-align: left;
  font-size: 14px;
}
.wysiwyg-data li {
  display: list-item;
}
.wysiwyg-data head {
  display: none;
}
.wysiwyg-data table {
  display: table;
}
.wysiwyg-data tr {
  display: table-row;
}
.wysiwyg-data thead {
  display: table-header-group;
}
.wysiwyg-data tbody {
  display: table-row-group;
}
.wysiwyg-data tfoot {
  display: table-footer-group;
}
.wysiwyg-data col {
  display: table-column;
}
.wysiwyg-data colgroup {
  display: table-column-group;
}
.wysiwyg-data td, .wysiwyg-data th {
  display: table-cell;
}
.wysiwyg-data caption {
  display: table-caption;
}
.wysiwyg-data th {
  font-weight: bolder;
  text-align: center;
}
.wysiwyg-data caption {
  text-align: center;
}
.wysiwyg-data body {
  margin: 8px;
}
.wysiwyg-data h1 {
  font-size: 20px;
  font-size: 2rem;
  margin: .67em 0;
}
.wysiwyg-data h2 {
  font-size: 18px;
  font-size: 1.8rem;
  margin: .75em 0;
}
.wysiwyg-data h3 {
  font-size: 16px;
  font-size: 1.6rem;
  margin: .83em 0;
}
.wysiwyg-data h4, .wysiwyg-data p, .wysiwyg-data blockquote, .wysiwyg-data ul, .wysiwyg-data fieldset, .wysiwyg-data form, .wysiwyg-data ol, .wysiwyg-data dl, .wysiwyg-data dir, .wysiwyg-data menu {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 1.12em 0;
  color: #333;
}
.wysiwyg-data h5 {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 1.5em 0;
}
.wysiwyg-data h6 {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 1.67em 0;
}
.wysiwyg-data h1, .wysiwyg-data h2, .wysiwyg-data h3, .wysiwyg-data h4, .wysiwyg-data h5, .wysiwyg-data h6, .wysiwyg-data b, .wysiwyg-data strong {
  font-weight: normal;
}
.wysiwyg-data blockquote {
  margin-left: 40px;
  margin-right: 40px;
}
.wysiwyg-data i, .wysiwyg-data cite, .wysiwyg-data em, .wysiwyg-data var, .wysiwyg-data address {
  font-style: italic;
}
.wysiwyg-data pre, .wysiwyg-data tt, .wysiwyg-data code, .wysiwyg-data kbd, .wysiwyg-data samp {
  font-family: monospace;
}
.wysiwyg-data pre {
  white-space: pre;
}
.wysiwyg-data button, .wysiwyg-data textarea, .wysiwyg-data input, .wysiwyg-data select {
  display: inline-block;
}
.wysiwyg-data big {
  font-size: 120%;
}
.wysiwyg-data small, .wysiwyg-data sub, .wysiwyg-data sup {
  font-size: 86%;
}
.wysiwyg-data sub {
  vertical-align: sub;
}
.wysiwyg-data sup {
  vertical-align: super;
}
.wysiwyg-data table {
  border-spacing: 2px;
}
.wysiwyg-data thead, .wysiwyg-data tbody, .wysiwyg-data tfoot {
  vertical-align: middle;
}
.wysiwyg-data td, .wysiwyg-data th, .wysiwyg-data tr {
  vertical-align: inherit;
}
.wysiwyg-data s, .wysiwyg-data strike, .wysiwyg-data del {
  text-decoration: line-through;
}
.wysiwyg-data hr {
  border: 1px inset;
}
.wysiwyg-data ol, .wysiwyg-data ul, .wysiwyg-data dir, .wysiwyg-data menu, .wysiwyg-data dd {
  margin-left: 40px;
}
.wysiwyg-data ol {
  list-style-type: decimal;
}
.wysiwyg-data ol ul {
  margin-top: 0;
  margin-bottom: 0;
}
.wysiwyg-data ul ol, .wysiwyg-data ul ul {
  margin-top: 0;
  margin-bottom: 0;
}
.wysiwyg-data ol ol {
  margin-top: 0;
  margin-bottom: 0;
}
.wysiwyg-data u, .wysiwyg-data ins {
  text-decoration: underline;
}
.wysiwyg-data br:before {
  content: "\A";
  white-space: pre-line;
}
.wysiwyg-data center {
  text-align: center;
}
.wysiwyg-data :link, .wysiwyg-data :visited {
  text-decoration: underline;
}
.wysiwyg-data :focus {
  outline: thin dotted invert;
}
.wysiwyg-data table {
  border: solid 1px;
  border-collapse: separate;
  border-color: #c0c0c0 #c0c0c0 #808080 #808080;
  border-spacing: 2px;
  width: auto;
}
.wysiwyg-data table tr td {
  border: solid 1px;
  border-color: #808080 #808080 #c0c0c0 #c0c0c0;
  padding: 0;
}
.item-comment .wysiwyg-data table tr td {
  background: #fff;
}
.wysiwyg-data ul {
  list-style-type: disc;
}
.wysiwyg-data ul li {
  list-style-type: disc;
}
.wysiwyg-data ol {
  list-style-type: decimal;
}
.wysiwyg-data BDO[DIR="ltr"] {
  direction: ltr;
  unicode-bidi: bidi-override;
}
.wysiwyg-data BDO[DIR="rtl"] {
  direction: rtl;
  unicode-bidi: bidi-override;
}
.wysiwyg-data *[DIR="ltr"] {
  direction: ltr;
  unicode-bidi: embed;
}
.wysiwyg-data *[DIR="rtl"] {
  direction: rtl;
  unicode-bidi: embed;
}
@media print {
  .wysiwyg-data h1 {
    page-break-before: always;
    page-break-after: avoid;
  }
  .wysiwyg-data h2, .wysiwyg-data h3, .wysiwyg-data h4, .wysiwyg-data h5, .wysiwyg-data h6 {
    page-break-after: avoid;
  }
  .wysiwyg-data ul, .wysiwyg-data ol, .wysiwyg-data dl {
    page-break-before: avoid;
  }
}
.cat-tile-list {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  list-style: none;
  padding: 0;
  margin: 0;
}
.cat-tile-list li {
  flex: 1 1 30%;
  min-width: 140px;
}
.cat-tile-list a {
  display: block;
  text-align: center;
  padding: 22px 10px;
  background: #595335;
  color: #fff;
  font-size: 14px;
  border-radius: 4px;
}
.cat-tile-list a:hover {
  background: #3e3a25;
  color: #fff;
  text-decoration: none;
}
.kumagera-cat-head {
  justify-content: space-between;
  align-items: center;
}
.kumagera-cat-viewall {
  font-size: 13px;
  color: #595335;
  text-decoration: underline;
  white-space: nowrap;
}
.kumagera-cat-loading,
.kumagera-cat-empty {
  list-style: none;
  width: 100%;
  text-align: center;
  color: #999;
  padding: 20px 0;
  font-size: 13px;
}
.kumagera-designer-block {
  margin-bottom: 24px;
}
.kumagera-designer-name {
  font-size: 15px;
  color: #595335;
  border-bottom: 1px solid #e8e4d6;
  padding-bottom: 8px;
  margin-bottom: 14px;
}
.kumagera-cat-desc {
  font-size: 13px;
  color: #8a8874;
  line-height: 1.6;
  margin: 0 0 14px;
}
.kumagera-hero {
  position: relative;
  overflow: hidden;
}
.kumagera-hero-logo {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 40%;
  max-width: 220px;
  text-align: center;
  pointer-events: none;
}
.kumagera-hero-logo img {
  width: 100%;
  height: auto;
}
#header {
  height: 50px;
  position: sticky;
  top: 0;
  transition: transform 0.25s ease;
  background: #fff;
}
#header.kumagera-header-hidden {
  transform: translateY(-100%);
}
#header .logo {
  width: calc(100% - 50px);
  height: 50px;
  text-align: left;
  overflow: visible;
}
#header .site-name {
  height: 50px;
  font-size: 13px;
  padding: 0 12px;
}
#header .site-name img {
  max-height: 28px;
}
#header .site-name a {
  max-height: none;
  height: 100%;
}
#header .menubtn {
  width: 50px;
  height: 50px;
  line-height: 50px;
}
#jq-open-btn {
  width: 50px;
  height: 50px;
}
#jq-open-btn::before {
  line-height: 50px;
}
@media screen and (min-width: 960px) {
  #header {
    height: 56px;
    display: flex;
    align-items: center;
  }
  .logo {
    width: auto;
    height: 56px;
    text-align: left;
    overflow: visible;
  }
  .site-name {
    height: 56px;
    margin: 0;
    padding: 0 20px;
    font-size: 15px;
  }
  .site-name img {
    max-height: 32px;
    max-width: none;
  }
  .site-name a {
    position: relative;
    top: auto;
    left: auto;
    transform: none;
    max-height: none;
    width: auto;
    height: 100%;
    display: flex;
    align-items: center;
  }
  .header-top {
    position: static;
    height: auto;
    border-bottom: none;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    gap: 16px;
    padding: 8px 20px;
    width: 100%;
  }
  .search-area {
    width: 240px;
    margin: 0;
  }
  .header-menu {
    width: auto;
    margin: 0;
    display: flex;
  }
  .header-menu li {
    width: auto;
    margin-left: 10px;
  }
}

/* ===== ヒーローの背景フォールバック／デザイナーブロックの余白（旧ブロックから必要分のみ残す） ===== */
.kumagera-hero { background-color: #4a4630; min-height: 180px; }
.kumagera-designer-block { margin-bottom: 30px; }

/* =========================================================
   クマゲラ カスタムCSS（まとめ・最新版）
   ★「共通部分」CSS の一番下（今までに貼った分よりさらに下）に
     そのまま貼り付けてください。あとから貼るほど優先されるので、
     以前のブロックを消さなくても、この内容で上書きされます。
   ========================================================= */

/* ===== 白いヘッダーを再表示（左にロゴ・クリック可・スクロールで隠れる） ===== */
#header { display: block; }
#header .logo { display: block; }
@media screen and (min-width: 960px) {
  #header { display: flex; align-items: center; }
}

/* ===== レイアウト：ヘッダー・ヒーロー・フッターを画面の端まで ===== */
#wrapper { max-width: 100%; }
#header, #footer { max-width: 100%; }
@media screen and (min-width: 1080px) {
  #top-main { max-width: 1040px; margin-left: auto; margin-right: auto; }
}
/* ヒーローを画面いっぱいに（切り取られないよう overflow を解除） */
#top-main { overflow: visible; }
#top-main .kumagera-hero {
  background-color: #4a4630;          /* 写真未設定でもオリーブ地に */
  min-height: 180px;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}

/* ===== オリーブのカテゴリナビ（PCは横並び・少し小さめ） ===== */
@media screen and (min-width: 960px) {
  #global-nav .cat-menu { height: 40px; }
  #global-nav .cat-menu > li > a {
    display: inline-block;
    color: #fff;
    line-height: 40px;
    padding: 0 18px;
    font-size: 1.4rem;               /* 少し小さく */
    text-align: center;
  }
  #global-nav .cat-menu > li > a:hover {
    background: #4a4630;
    color: #fff;
    text-decoration: none;
  }
}

/* ===== フッター左のロゴ ===== */
.footer-logo { width: 100%; text-align: left; margin: 0 0 15px; }
.footer-logo img { margin: 0; max-height: 60px; width: auto; }

/* ===== 会員登録・マイページ・カート（背景なし・オリーブ文字・小さめ） ===== */
.header-menu li a,
.header-menu li a:hover {
  background: none !important;
  border-bottom: none !important;
  border-radius: 0;
  color: #595335;
  height: auto;
  line-height: 1.5;
  font-size: 1.2rem;
}
.header-menu li a:hover { color: #4a4630; text-decoration: underline; }
.header-menu li a::before { color: #595335 !important; }
.header-menu li a:hover::before { color: #4a4630 !important; }

/* ===== 商品サムネイルを正方形に（写真は中央でトリミング） ===== */
#top-main .item-photo {
  width: 100%;
  max-width: 250px;
  max-height: none;
  aspect-ratio: 1 / 1;
}
#top-main .item-photo a { display: block; width: 100%; height: 100%; }
#top-main .item-photo img { width: 100%; height: 100%; max-height: none; object-fit: cover; }

/* ===== 商品名・価格の色（黒 → オリーブ） ===== */
#top-main .item-info .item-name a,
#top-main .item-info .item-price { color: #595335; }

/* ===== ヒーロー下の説明文のフォント・色 ===== */
#top-main #top-shop-message1 {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  color: #595335;
}

/* ===== 見出しラベル（NEW ARRIVAL など）：サブ文字を右横に ===== */
#top-main .section-head:not(.kumagera-cat-head) {
  flex-direction: row;
  align-items: baseline;
  justify-content: center;
  gap: 14px;
  text-align: center;
  border-top: 1px solid #d8d5c8;
  border-bottom: 1px solid #d8d5c8;
  margin: 0 0 24px;
}
#top-main .section-head:not(.kumagera-cat-head) .title1 {
  order: 1;                          /* NEW ARRIVAL を左に */
  color: #8a8874;
  letter-spacing: 0.25em;
  padding: 0;
}
#top-main .section-head:not(.kumagera-cat-head) .sub-title {
  order: 2;                          /* 新着商品 を右に */
  border: none;
  margin: 0;
  padding: 0;
  font-size: 1.3rem;                 /* サイズは今まで通り */
  letter-spacing: normal;
  color: #8a8874;
}

/* ===== カテゴリ見出し（下線タイプ・文字を大きく・線を長く） ===== */
.kumagera-cat-head {
  border-top: none;
  border-bottom: none;
  padding: 0;
  margin: 0 0 8px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: flex-end;
}
.kumagera-cat-head .title1 {
  order: 0;
  margin: 0;
  padding: 0 60px 8px 0;             /* 右余白 → 下線が文字より長くなる */
  color: #595335;
  font-size: 2.2rem;                 /* 大きく */
  border-bottom: 2px solid #595335;
}
@media screen and (min-width: 960px) {
  .kumagera-cat-head .title1 { font-size: 2.6rem; padding-right: 120px; }
}
.kumagera-cat-head .kumagera-cat-viewall {
  order: 1;
  flex-shrink: 0;
  margin-left: 12px;
  padding-bottom: 4px;
  color: #595335;
  text-decoration: underline;
  white-space: nowrap;
}
.kumagera-cat-showcase .kumagera-cat-desc,
.kumagera-designer-section > .kumagera-cat-desc { margin: 10px 0 18px; }
.kumagera-cat-showcase, .kumagera-designer-section { padding-top: 10px; }

/* ===== デザイナー（名前の左に丸いサムネイル） ===== */
.kumagera-designer-head {
  display: flex;
  align-items: center;
  gap: 12px;
  border-bottom: 1px solid #e0dbcc;
  padding-bottom: 8px;
  margin: 0 0 14px;
}
/* デザイナー名とサムネイルをクリックできるように */
a.kumagera-designer-head { text-decoration: none; color: inherit; display: flex; }
a.kumagera-designer-head:hover .kumagera-designer-name { text-decoration: underline; }
.kumagera-designer-thumb {
  flex-shrink: 0;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background-color: #f4f1e6;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.kumagera-designer-name {
  border-bottom: none;
  padding: 0;
  margin: 0;
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-size: 1.6rem;
  font-weight: normal;
  color: #595335;
}

/* =========================================================
   クマゲラ カスタムCSS V2（デザイン刷新版）
   ★「共通部分」CSS の一番下（既存のカスタムブロックよりさらに下）に
     そのまま貼り付けてください。あとから貼るほど優先されるので、
     以前のブロックは消さなくて大丈夫です。
   内容：統合オリーブヘッダー／商品ドロップダウン／ABOUT／
         カートアイコン／ヒーロー文言＋ボタン／写真カテゴリタイル／
         商品カード磨き込み（クリーム地・ホバー拡大・NEWバッジ）／
         ストーリー／ご利用ガイド／ダークオリーブフッター
   ========================================================= */

/* ===== 1) 統合ヘッダー：オリーブ1本（スマホ・PC共通） ===== */
#header {
  display: flex;
  align-items: center;
  background: #595335;
  height: 50px;
  position: sticky;
  top: 0;
  z-index: 1000;
  transition: transform 0.25s ease;
}
#header.kumagera-header-hidden { transform: translateY(-100%); }
#header .logo { display: block; width: auto; flex: 0 0 auto; height: 50px; }
#header .site-name { height: 50px; font-size: 1.3rem; padding: 0 12px; }
#header .site-name a { color: #f2efe4; display: flex; align-items: center; height: 100%; }
#header .site-name img { max-height: 30px; width: auto; }
/* MENUボタン（スマホ）：オリーブ地に馴染ませる */
#header .menubtn { width: 50px; height: 50px; line-height: 50px; background: transparent; border-left: 1px solid rgba(242,239,228,0.25); }
#header .menubtn a, #header .menubtn b { color: #f2efe4; }

@media screen and (min-width: 960px) {
  #header { height: 58px; }
  #header .logo { height: 58px; }
  #header .site-name { height: 58px; padding: 0 20px; font-size: 1.5rem; }
  #header .site-name img { max-height: 34px; max-width: none; }
}

/* ===== 2) ヘッダー内ナビ（商品ドロップダウン＋ABOUT）… PCのみ ===== */
.kumagera-nav { display: none; }
@media screen and (min-width: 960px) {
  .kumagera-nav { display: flex; flex: 1 1 auto; align-items: center; margin-left: 16px; }
  .kumagera-nav .kumagera-nav-link {
    display: inline-block;
    color: #f2efe4;
    font-size: 1.35rem;
    letter-spacing: 0.1em;
    line-height: 58px;
    padding: 0 22px;
    text-decoration: none;
  }
  .kumagera-nav .kumagera-nav-link:hover { background: #4a4630; color: #f2efe4; text-decoration: none; }
  .kumagera-dd { position: relative; }
  /* 「商品」の右に小さな矢印 */
  .kumagera-dd > .kumagera-nav-link::after {
    content: "";
    display: inline-block;
    margin-left: 8px;
    width: 6px;
    height: 6px;
    border-right: 1px solid #f2efe4;
    border-bottom: 1px solid #f2efe4;
    transform: rotate(45deg) translateY(-2px);
  }
  /* ホバーでカテゴリ一覧が下に開く */
  .kumagera-dd-menu {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 230px;
    margin: 0;
    padding: 0;
    list-style: none;
    background: #4a4630;
    box-shadow: 0 10px 24px rgba(0,0,0,0.18);
    opacity: 0;
    visibility: hidden;
    transform: translateY(6px);
    transition: opacity 0.22s ease, transform 0.22s ease, visibility 0.22s;
    z-index: 1001;
  }
  .kumagera-dd:hover .kumagera-dd-menu,
  .kumagera-dd:focus-within .kumagera-dd-menu { opacity: 1; visibility: visible; transform: translateY(0); }
  .kumagera-dd-menu li { width: 100%; }
  .kumagera-dd-menu a {
    display: block;
    padding: 13px 20px;
    color: #f2efe4;
    font-size: 1.3rem;
    line-height: 1.4;
    border-bottom: 1px solid rgba(242,239,228,0.12);
    text-decoration: none;
    transition: padding-left 0.18s ease, background 0.18s ease;
  }
  .kumagera-dd-menu li:last-child a { border-bottom: none; }
  .kumagera-dd-menu a:hover { background: #3e3a25; color: #f2efe4; padding-left: 26px; text-decoration: none; }
  .kumagera-dd-menu li.kumagera-dd-sub a { padding-left: 34px; font-size: 1.25rem; opacity: 0.85; }
  .kumagera-dd-menu li.kumagera-dd-sub a::before { content: "— "; opacity: 0.6; }
  .kumagera-dd-menu li.kumagera-dd-sub a:hover { padding-left: 40px; }
}

/* ===== 3) ヘッダー右：会員登録・マイページ・カート（アイコン付き） ===== */
.kumagera-account {
  display: flex;
  align-items: center;
  list-style: none;
  margin: 0 60px 0 auto;      /* スマホ：右のMENUボタンぶん空ける */
  padding: 0;
}
.kumagera-account li { margin-left: 18px; }
.kumagera-account li a {
  display: flex;
  align-items: center;
  gap: 6px;
  color: #f2efe4;
  font-size: 1.15rem;
  opacity: 0.9;
  text-decoration: none;
  white-space: nowrap;
}
.kumagera-account li a:hover { opacity: 1; color: #f2efe4; text-decoration: underline; }
.kumagera-account .kumagera-cart svg {
  width: 19px;
  height: 19px;
  fill: none;
  stroke: #f2efe4;
  stroke-width: 1.6;
  stroke-linecap: round;
  stroke-linejoin: round;
}
/* スマホでは カートのアイコンだけ表示（他リンクはMENU内にあります） */
@media screen and (max-width: 959px) {
  .kumagera-account li { display: none; }
  .kumagera-account li.kumagera-cart { display: block; }
  .kumagera-account .kumagera-cart span { display: none; }
  .kumagera-account .kumagera-cart svg { width: 22px; height: 22px; }
}
@media screen and (min-width: 960px) {
  .kumagera-account { margin: 0 20px 0 auto; }
}

/* ===== 4) 旧2本目のバー（オリーブナビ）はPCでは非表示に
        ※スマホのMENUプルダウン＆カテゴリ読み込みスクリプトが
          使うので、HTMLからは削除しないでください ===== */
@media screen and (min-width: 960px) {
  #global-nav { display: none; }
}

/* ===== 5) ヒーロー：文言＋ボタンのオーバーレイ ===== */
#top-main { overflow: visible; }
#top-main .kumagera-hero {
  background-color: #4a4630;
  min-height: 260px;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
}
#top-main .kumagera-hero img { width: 100%; }
.kumagera-hero-overlay {
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  background: rgba(62,58,37,0.28);   /* 写真の上に薄い暗幕（文字を読みやすく） */
  padding: 24px 16px;
  pointer-events: none;              /* キービジュアル（スライダー等）のクリックを妨げない */
}
.kumagera-hero-cta { pointer-events: auto; }
.kumagera-hero-overlay .kumagera-hero-logo {
  position: static;
  transform: none;
  width: 90px;
  margin: 0 0 12px;
  pointer-events: none;
}
.kumagera-hero-tagline {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  color: #f2efe4;
  font-size: 2.4rem;
  letter-spacing: 0.22em;
  line-height: 1.5;
  margin: 0 0 8px;
  text-shadow: 0 1px 10px rgba(0,0,0,0.35);
}
.kumagera-hero-sub {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  color: #f2efe4;
  font-size: 1.35rem;
  letter-spacing: 0.16em;
  margin: 0;
  text-shadow: 0 1px 8px rgba(0,0,0,0.35);
}
.kumagera-hero-cta {
  display: inline-block;
  margin-top: 22px;
  border: 1px solid #f2efe4;
  color: #f2efe4;
  padding: 11px 40px;
  font-size: 1.3rem;
  letter-spacing: 0.2em;
  text-decoration: none;
  transition: background 0.25s ease, color 0.25s ease;
}
.kumagera-hero-cta:hover { background: #f2efe4; color: #595335; text-decoration: none; }
@media screen and (min-width: 960px) {
  #top-main .kumagera-hero { min-height: 400px; }
  .kumagera-hero-overlay .kumagera-hero-logo { width: 110px; }
  .kumagera-hero-tagline { font-size: 3.2rem; }
  .kumagera-hero-sub { font-size: 1.5rem; }
}

/* ===== 6) セクションの余白を広げる（ページに呼吸を） ===== */
#top-main .section-block { padding: 44px 0 6px; }
@media screen and (min-width: 960px) {
  #top-main .section-block { padding: 56px 0 8px; }
}

/* ===== 7) 商品カード磨き込み：クリーム地＋ホバーでゆっくり拡大 ===== */
#top-main .item-photo { background-color: #f4f1e6; }
#top-main .item-photo img { transition: transform 0.45s ease; }
#top-main .list-product li:hover .item-photo img { transform: scale(1.05); }
#top-main .item-info .item-name a:hover { color: #4a4630; }

/* NEW ARRIVAL の商品にNEWバッジ（新着セクション限定） */
.kumagera-new-section .item-photo::after {
  content: "NEW";
  position: absolute;
  top: 0;
  left: 0;
  background: #595335;
  color: #f2efe4;
  font-size: 1.0rem;
  letter-spacing: 0.15em;
  line-height: 1;
  padding: 5px 10px;
  z-index: 5;
}

/* ===== 8) CATEGORY：写真タイルに（写真はHTML側の style で指定） ===== */
#top-main .cat-tile-list { gap: 16px; }
#top-main .cat-tile-list li { flex: 1 1 30%; min-width: 220px; }
#top-main .cat-tile-list a {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 160px;
  padding: 0;
  border-radius: 0;
  overflow: hidden;
  background-color: #4a4630;     /* 写真未設定でもオリーブ地 */
  background-size: cover;
  background-position: center;
  color: #f2efe4;
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-size: 1.7rem;
  letter-spacing: 0.2em;
  text-decoration: none;
}
#top-main .cat-tile-list a::before {
  content: "";
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  background: linear-gradient(rgba(62,58,37,0.4), rgba(62,58,37,0.6));
  transition: background 0.3s ease;
}
#top-main .cat-tile-list a:hover::before {
  background: linear-gradient(rgba(62,58,37,0.2), rgba(62,58,37,0.42));
}
#top-main .cat-tile-list a:hover { background-color: #3e3a25; color: #f2efe4; text-decoration: none; }
#top-main .cat-tile-list a span {
  position: relative;
  z-index: 1;
  border-bottom: 1px solid rgba(242,239,228,0.7);
  padding: 0 8px 6px;
}
@media screen and (min-width: 960px) {
  #top-main .cat-tile-list { gap: 20px; }
  #top-main .cat-tile-list a { height: 190px; }
}

/* ===== 9) ストーリー（工房紹介）：クリーム地・全幅・2カラム ===== */
.kumagera-story {
  background: #f4f1e6;
  margin: 64px calc(50% - 50vw) 0;
  padding: 52px 6%;
}
.kumagera-story-inner {
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 28px;
  align-items: center;
  text-align: left;
}
.kumagera-story-photo { width: 100%; }
.kumagera-story-photo img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
.kumagera-story-text { width: 100%; }
.kumagera-story-text .kumagera-story-en {
  font-size: 1.2rem;
  letter-spacing: 0.3em;
  color: #8a8874;
  margin: 0 0 10px;
}
.kumagera-story-text h2 {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight: normal;
  font-size: 2.2rem;
  letter-spacing: 0.1em;
  color: #595335;
  margin: 0 0 16px;
}
.kumagera-story-text p { font-size: 1.35rem; line-height: 2.1; color: #595335; margin: 0 0 12px; }
.kumagera-story-more {
  display: inline-block;
  margin-top: 6px;
  border: 1px solid #595335;
  color: #595335;
  padding: 10px 36px;
  font-size: 1.2rem;
  letter-spacing: 0.2em;
  text-decoration: none;
  transition: background 0.25s ease, color 0.25s ease;
}
.kumagera-story-more:hover { background: #595335; color: #f2efe4; text-decoration: none; }
@media screen and (min-width: 960px) {
  .kumagera-story { padding: 64px 6%; }
  .kumagera-story-inner { flex-direction: row; gap: 48px; }
  .kumagera-story-photo, .kumagera-story-text { width: 50%; }
  .kumagera-story-text h2 { font-size: 2.4rem; }
}

/* ===== 10) ご利用ガイド 3点バー ===== */
.kumagera-guide {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  padding: 48px 0 10px;
  list-style: none;
  margin: 0;
}
.kumagera-guide li {
  flex: 1 1 220px;
  border: 1px solid #d8d5c8;
  padding: 26px 18px;
  text-align: center;
}
.kumagera-guide svg {
  width: 30px;
  height: 30px;
  fill: none;
  stroke: #595335;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  margin: 0 auto 10px;
  display: block;
}
.kumagera-guide h3 {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight: normal;
  font-size: 1.5rem;
  letter-spacing: 0.12em;
  color: #595335;
  margin: 0 0 8px;
}
.kumagera-guide p { font-size: 1.2rem; color: #8a8874; line-height: 1.8; margin: 0; }

/* ===== 11) フッター：ダークオリーブに反転 ===== */
#secondary {
  background: #3e3a25;
  color: #f2efe4;
  border-top: none;
  margin-top: 64px;
  padding: 52px 5% 24px;
  text-align: left;
}
#secondary a, #secondary a:visited { color: #f2efe4; }
#secondary a:hover { color: #f2efe4; opacity: 1; text-decoration: underline; }
#secondary .left-block { padding: 0 0 28px; }
@media screen and (min-width: 960px) {
  #secondary { display: flex; }
  #secondary .left-block { width: 320px; padding: 0 40px 0 0; }
  #secondary .right-block { width: calc(100% - 320px); }
}
/* ロゴ：濃い地でも見えるようクリームのチップに載せる
   （白抜きロゴ画像を登録したらこの2行は削除してOK） */
#secondary .footer-logo { width: auto; text-align: left; margin: 0 0 14px; }
#secondary .footer-logo a { display: inline-block; background: #f4f1e6; padding: 10px 16px; border-radius: 4px; }
#secondary .footer-logo img { margin: 0; max-height: 48px; width: auto; }
.kumagera-footer-blurb { font-size: 1.2rem; line-height: 2; opacity: 0.85; margin: 0 0 16px; }
#secondary .sns { display: flex; gap: 10px; }
#secondary .sns li a {
  background: transparent;
  border: 1px solid rgba(242,239,228,0.4);
  color: #f2efe4;
  transition: background 0.25s ease, color 0.25s ease;
}
#secondary .sns li a:hover { background: #f4f1e6; color: #595335; text-decoration: none; }
#secondary .secondary-head { border: none; padding: 0; margin: 0 0 14px; }
#secondary .secondary-head .title2 {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight: normal;
  font-size: 1.3rem;
  letter-spacing: 0.25em;
  color: #8a8874;
}
.kumagera-footer-cols { display: flex; flex-wrap: wrap; gap: 32px; }
.kumagera-footer-col { flex: 1 1 220px; }
#secondary .guide-nav li { display: block; font-size: 1.25rem; margin: 0 0 9px; }
#secondary .guide-nav li a { opacity: 0.85; }
#secondary .guide-nav li a:hover { opacity: 1; }
/* コピーライト帯もダークオリーブで連続させる */
#footer {
  background: #3e3a25;
  color: #f2efe4;
  max-width: 100%;
  border-top: 1px solid rgba(242,239,228,0.15);
  padding: 18px 3%;
}
#footer .copyright { color: #f2efe4; opacity: 0.6; }

/* =========================================================
   クマゲラ カスタムCSS V4（商品詳細ページ）
   ★「共通部分」CSS の一番下（V3ブロックのさらに下）に追記。
   内容：2カラム（ギャラリー固定）／カテゴリーチップ／明朝タイトル／
         価格まわり整理／数量・カートボタン／安心3点／シェア／
         商品詳細見出し／同カテゴリ・おすすめ商品カード
   ========================================================= */

/* ===== 全体レイアウト：左＝ギャラリー（追従）・右＝情報 ===== */
@media screen and (min-width: 960px) {
  #item-detail .item-2column {
    display: flex;
    gap: 48px;
    align-items: flex-start;
    text-align: left;
  }
  #item-detail .item-detail-left {
    width: 50%;
    flex: 0 0 auto;
    position: sticky;
    top: 78px;            /* ヘッダー(58px)+余白 */
  }
  #item-detail .item-detail-right { width: 50%; }
}
#item-detail { text-align: left; }

/* ===== ギャラリー ===== */
#item-detail .item-detail-photo-main { background: #f4f1e6; }
#item-detail .item-detail-thumb { margin-top: 12px; }
#item-detail .item-detail-thumb-photo {
  border: 1px solid #e8e4d6;
  background: #f4f1e6;
  opacity: 0.65;
  transition: opacity 0.2s ease, border-color 0.2s ease;
}
#item-detail .item-detail-thumb-photo:hover,
#item-detail .item-detail-thumb-photo.active { opacity: 1; border-color: #595335; }
/* 前へ/次へ矢印をオリーブに */
#item-detail .item-detail-photo-backbtn a,
#item-detail .item-detail-photo-nextbtn a { color: #595335; }

/* ===== カテゴリーチップ＋商品名 ===== */
.kumagera-item-cat { margin: 0 0 12px; }
.kumagera-item-cat a {
  display: inline-block;
  font-size: 1.1rem;
  letter-spacing: 0.15em;
  color: #8a8874;
  border: 1px solid #d8d5c8;
  padding: 4px 12px;
  text-decoration: none;
}
.kumagera-item-cat a:hover { color: #595335; border-color: #595335; text-decoration: none; }
#item-detail .item-detail-head { border: none; padding: 0; margin: 0 0 14px; }
#item-detail .item-detail-head .ttl {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight: normal;
  font-size: 2.4rem;
  line-height: 1.4;
  letter-spacing: 0.06em;
  color: #595335;
  text-align: left;
}

/* ===== 価格：ラベルを消して大きく（通常販売の価格のみ） ===== */
.kumagera-main-price dl { border-bottom: 1px solid #e8e4d6; padding: 0 0 16px; margin: 0 0 14px; }
.kumagera-main-price dt { display: none; }
.kumagera-main-price dd .price {
  font-size: 3.0rem;
  font-weight: bold;
  letter-spacing: 0.02em;
  color: #595335;
}
.kumagera-main-price dd .tax { font-size: 1.2rem; color: #8a8874; margin-left: 6px; }

/* 会員価格・在庫・商品コード等：小さく1行に（空欄は元々非表示） */
#item-detail .item-detail-block-in { display: flex; flex-wrap: wrap; gap: 4px 20px; margin: 0 0 8px; }
#item-detail .item-detail-block-in dl {
  display: flex;
  align-items: baseline;
  gap: 6px;
  font-size: 1.2rem;
  color: #8a8874;
  margin: 0;
  padding: 0;
  border: none;
}
#item-detail .item-detail-block-in dt { font-weight: normal; }
#item-detail .item-detail-block-in dt::after { content: "："; }
#item-detail .item-detail-stock dd { color: #4a7c42; }

/* ===== バリエーション・数量 ===== */
#item-detail .item-detail-cart { margin-top: 14px; }
#item-detail .item-detail-cart > div { margin-bottom: 14px; }
#item-detail .item-detail-select select,
#item-detail .item-detail-inputtext input {
  border: 1px solid #d8d5c8;
  background: #fffdf8;
  color: #595335;
  padding: 10px 12px;
  font-size: 1.35rem;
}
#item-detail .js-counter-wrap p { font-size: 1.25rem; margin: 0 0 6px; }
#item-detail .item-detail-num-count { display: flex; align-items: stretch; width: fit-content; border: 1px solid #d8d5c8; }
#item-detail .item-detail-num-minus a,
#item-detail .item-detail-num-plus a {
  display: block;
  width: 40px;
  height: 44px;
  line-height: 44px;
  text-align: center;
  background: #f4f1e6;
  color: #595335;
  font-size: 1.8rem;
  text-decoration: none;
}
#item-detail .item-detail-num-minus a:hover,
#item-detail .item-detail-num-plus a:hover { background: #e8e4d6; }
#item-detail .item-detail-num input {
  width: 56px;
  height: 44px;
  border: none;
  border-left: 1px solid #d8d5c8;
  border-right: 1px solid #d8d5c8;
  text-align: center;
  font-size: 1.5rem;
  color: #595335;
  background: #fffdf8;
}

/* ===== カートに入れるボタン：オリーブ・全幅・アイコン付き ===== */
#item-detail .item-detail-cart-btn a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  background: #595335;
  color: #f2efe4;
  font-size: 1.5rem;
  letter-spacing: 0.15em;
  padding: 16px;
  border: none;
  border-radius: 0;
  text-decoration: none;
  transition: background 0.25s ease;
}
#item-detail .item-detail-cart-btn a:hover { background: #4a4630; color: #f2efe4; text-decoration: none; }
#item-detail .item-detail-cart-btn a::before {
  content: "\e918";
  font-family: "icomoon";
  font-size: 1.8rem;
  margin-right: 10px;
}
/* 在庫切れなどの文言 */
#item-detail .item-dtail-nostock,
#item-detail .item-dtail-outofoperiod,
#item-detail .item-dtail-orderinvalid {
  background: #f4f1e6;
  color: #d70035;
  text-align: center;
  padding: 14px;
  font-size: 1.3rem;
}
/* お気に入り・入荷通知：控えめな下線リンク */
#item-detail .item-detail-addwishlist-btn a,
#item-detail .item-detail-addnotificationmail-btn a {
  display: block;
  text-align: center;
  background: none;
  border: none;
  color: #8a8874;
  font-size: 1.2rem;
  text-decoration: underline;
  padding: 4px 0;
}
#item-detail .item-detail-addwishlist-btn a:hover,
#item-detail .item-detail-addnotificationmail-btn a:hover { color: #595335; }

/* ===== 安心ポイント3点 ===== */
ul.kumagera-item-trust {
  display: flex;
  gap: 10px;
  list-style: none;
  margin: 22px 0 0;
  padding: 0;
}
ul.kumagera-item-trust li {
  flex: 1;
  background: #f4f1e6;
  font-size: 1.1rem;
  line-height: 1.6;
  text-align: center;
  padding: 10px 6px;
  color: #4a4630;
  list-style: none;
}
ul.kumagera-item-trust li a { color: #4a4630; text-decoration: underline; }


/* ===== スペック表（メーカー・返品区分など） ===== */
#item-detail .item-detail-spec { margin-top: 24px; border-top: 1px solid #e8e4d6; }
#item-detail .item-detail-spec dl {
  display: flex;
  gap: 16px;
  font-size: 1.25rem;
  padding: 10px 0;
  margin: 0;
  border-bottom: 1px solid #e8e4d6;
}
#item-detail .item-detail-spec dt { width: 110px; flex-shrink: 0; color: #8a8874; font-weight: normal; }
#item-detail .item-detail-spec dd { color: #595335; }

/* ===== 商品詳細（説明）見出し：下線タイプに ===== */
#item-detail .item-footer { padding: 40px 0 8px; text-align: left; }
#item-detail .item-footer .title1 {
  display: inline-block;
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight: normal;
  font-size: 2.2rem;
  color: #595335;
  border-bottom: 2px solid #595335;
  padding: 0 100px 8px 0;
  margin: 0 0 24px;
}
#item-detail .item-detail-txt1 {
  max-width: 760px;
  text-align: left;
  font-size: 1.35rem;
  line-height: 2.1;
  color: #595335;
}

/* ===== 商品カード（同カテゴリ・おすすめ）：トップと同じ見た目に ===== */
#item-detail .item-photo {
  width: 100%;
  max-width: 250px;
  max-height: none;
  aspect-ratio: 1 / 1;
  background-color: #f4f1e6;
}
#item-detail .item-photo a { display: block; width: 100%; height: 100%; }
#item-detail .item-photo img { width: 100%; height: 100%; max-height: none; object-fit: cover; transition: transform 0.45s ease; }
#item-detail .list-product li:hover .item-photo img { transform: scale(1.05); }
#item-detail .item-info .item-name a,
#item-detail .item-info .item-price { color: #595335; }
#item-detail .kumagera-cat-showcase,
#item-detail .item-detail-block { padding-top: 32px; }

/* =========================================================
   クマゲラ カスタムCSS V3（商品説明レイアウト用パーツ）
   ★「共通部分」CSS の一番下（V2ブロックのさらに下）に追記。
   「商品説明テンプレート」のクラスをデザインします。
   どのページ（商品詳細・LP）でも同じ見た目になります。
   ========================================================= */

/* 明朝体のサブ見出し（リード文）
   ※ p.〜 と書いているのは、基本CSSの .wysiwyg-data p に負けないためです。
     ここを .kumagera-desc-lead だけに戻すと文字が小さくなります。 */
p.kumagera-desc-lead {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-size: 1.8rem;   /* 本文14px より大きく、「商品詳細」の見出し22px より小さく */
  line-height: 1.85;
  letter-spacing: 0.05em;
  color: #595335;
  margin: 0 0 24px;
}
@media screen and (min-width: 768px) {
  p.kumagera-desc-lead { font-size: 1.9rem; }
}

/* スペックチップ（クリーム地・横並び） */
ul.kumagera-spec-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  list-style: none;
  margin: 0 0 26px;
  padding: 0;
}
ul.kumagera-spec-chips li {
  background: #f4f1e6;
  padding: 12px 22px;
  text-align: center;
  font-size: 1.25rem;
  line-height: 1.5;
  color: #595335;
  list-style: none;
}
ul.kumagera-spec-chips li b {
  display: block;
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight: normal;
  font-size: 1.6rem;
}

/* ▶︎付きポイント行（p.〜 は .wysiwyg-data p に負けないため） */
p.kumagera-desc-point {
  padding-left: 1.4em;
  text-indent: -1.4em;
  font-size: 1.35rem;
  line-height: 2.0;
  color: #595335;
  margin: 0 0 10px;
}

/* 内容物ボックス（クリーム地） */
.kumagera-contents-box {
  background: #f4f1e6;
  padding: 22px 26px;
  margin: 20px 0 0;
  max-width: 720px;
  text-align: left;
}
.kumagera-contents-box h3 {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight: normal;
  font-size: 1.4rem;
  letter-spacing: 0.12em;
  color: #595335;
  margin: 0 0 10px;
  border: none;
  padding: 0;
}
.kumagera-contents-box ul {
  list-style: none;
  margin: 0;
  padding: 0;
  font-size: 1.25rem;
  color: #595335;
}
@media screen and (min-width: 768px) {
  .kumagera-contents-box ul { columns: 2; column-gap: 32px; }
}
.kumagera-contents-box ul li {
  margin: 0 0 6px;
  padding-left: 1em;
  text-indent: -1em;
  list-style: none;
}
.kumagera-contents-box ul li::before { content: "・"; }

/* 説明本文の段落を読みやすく（商品詳細ページの説明エリア内） */
.wysiwyg-data p, .item-exp p { line-height: 2.0; }

/* =========================================================
   クマゲラ カスタムCSS V5（商品詳細の見た目修正パッチ）
   ★「共通部分」CSS の一番下（V4ブロックのさらに下）に追記。
   修正内容：
   ・メイン写真：クリーム色の余白をなくし、写真を幅いっぱいに
   ・数量ボックス：崩れ（余分な枠・ズレ・矢印）を修正
   ・パンくず（ヘッダー下のグレー帯）：背景をなくして馴染ませる
   ・商品コードの折り返し／価格上の余分な線／シェアボタンの
     黒・青ボタンを控えめなリンクに
   ========================================================= */

/* ===== パンくず：グレー帯をやめて、小さなオリーブ文字に ===== */
.breadcrumbs { background: none; border: none; padding: 14px 0 0; }
.breadcrumbs .inner { background: none; }
.breadcrumbs ol li,
.breadcrumbs ol li a,
.breadcrumbs ol li a:visited { color: #8a8874; font-size: 1.15rem; font-weight: normal; background: none; }
.breadcrumbs ol li a:hover { color: #595335; }
.breadcrumbs ol li strong { color: #595335; font-weight: normal; }

/* ===== メイン写真：余白のクリーム地をやめ、写真を幅いっぱいに ===== */
#item-detail .item-detail-photo-main { background: transparent; }
#item-detail .item-detail-photo { height: auto; max-height: none; background: transparent; }
#item-detail .item-detail-photo li img { width: 100%; height: auto; max-height: none; margin: 0; }
/* 前へ/次へ矢印：オリーブの丸に */
#item-detail .item-detail-photo-backbtn a,
#item-detail .item-detail-photo-nextbtn a { background: rgba(89,83,53,0.75); color: #fff; }
#item-detail .item-detail-photo-backbtn a:hover,
#item-detail .item-detail-photo-nextbtn a:hover { background: rgba(74,70,48,0.9); }

/* ===== 数量ボックスの崩れ修正 ===== */
#item-detail .item-detail-num-count { display: flex; align-items: stretch; width: fit-content; border: 1px solid #d8d5c8; background: #fffdf8; }
#item-detail .item-detail-num-count > div {
  margin: 0;
  padding: 0;
  float: none;
  width: auto;
  height: auto;
  border: none;
  background: none;
}
#item-detail .item-detail-num-minus a,
#item-detail .item-detail-num-plus a {
  display: block;
  width: 40px;
  height: 44px;
  line-height: 44px;
  margin: 0;
  padding: 0;
  text-align: center;
  background: #f4f1e6;
  color: #595335;
  font-size: 1.8rem;
  border: none;
  border-radius: 0;
  text-decoration: none;
}
#item-detail .item-detail-num input {
  display: block;
  width: 56px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: none;
  border-left: 1px solid #d8d5c8;
  border-right: 1px solid #d8d5c8;
  border-radius: 0;
  text-align: center;
  font-size: 1.5rem;
  color: #595335;
  background: #fffdf8;
}
/* 数字入力の上下矢印（ブラウザ標準）を消す */
#item-detail .item-detail-num input::-webkit-outer-spin-button,
#item-detail .item-detail-num input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
#item-detail .item-detail-num input[type="number"] { -moz-appearance: textfield; appearance: textfield; }

/* ===== 商品コード等の折り返し修正（00␣1 のように割れるのを防ぐ） ===== */
#item-detail .item-detail-block-in dl { width: auto; float: none; }
#item-detail .item-detail-block-in dt,
#item-detail .item-detail-block-in dd { width: auto; margin: 0; padding: 0; white-space: nowrap; float: none; }

/* ===== 価格まわりの余分な線を除去（下の細線1本だけ残す） ===== */
#item-detail .item-detail-block { border: none; padding-top: 0; margin-top: 0; }
#item-detail .item-detail-price dl { border-top: none; }


/* ===== カテゴリバナー：クリーム・全幅・中央 ===== */
#main { overflow: visible; }
.kumagera-cat-banner {
  background: #f4f1e6;
  text-align: center;
  padding: 44px 20px;
  margin: 14px calc(50% - 50vw) 0;
}
.kumagera-cat-banner-label {
  font-size: 1.1rem;
  letter-spacing: 0.35em;
  color: #8a8874;
  margin: 0 0 8px;
}
.kumagera-cat-banner-name {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight: normal;
  font-size: 2.6rem;
  letter-spacing: 0.15em;
  color: #595335;
  margin: 0 0 10px;
  border: none;
  padding: 0;
}
.kumagera-cat-banner .lead-txt { border: none; margin: 0 auto; padding: 0; max-width: 640px; }
.kumagera-cat-banner .lead-txt p { font-size: 1.3rem; color: #4a4630; text-align: center; }

/* ===== ツールバー：件数（左）／詳細検索・表示順（右） ===== */
.kumagera-list-toolbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 12px;
  padding: 22px 0 6px;
  text-align: left;
}
.kumagera-list-count { font-size: 1.2rem; color: #8a8874; margin: 0; }
.kumagera-list-tools { display: flex; align-items: center; gap: 18px; }
.kumagera-list-tools .sort { margin: 0; padding: 0; text-align: right; }
.kumagera-list-tools .sort select {
  border: 1px solid #d8d5c8;
  background: #fffdf8;
  color: #595335;
  padding: 8px 12px;
  font-size: 1.25rem;
}

/* ===== 詳細検索（クリックで開閉） ===== */
details.kumagera-search { position: relative; font-size: 1.2rem; color: #8a8874; }
details.kumagera-search summary {
  cursor: pointer;
  list-style: none;
  text-decoration: underline;
}
details.kumagera-search summary::-webkit-details-marker { display: none; }
details.kumagera-search summary::after { content: " ▾"; font-size: 1.0rem; }
details.kumagera-search[open] summary { color: #595335; }
.kumagera-search-box {
  position: absolute;
  right: 0;
  top: 100%;
  margin-top: 10px;
  background: #f4f1e6;
  padding: 20px;
  z-index: 50;
  box-shadow: 0 8px 20px rgba(0,0,0,0.08);
  min-width: 280px;
}
.kumagera-search-box form { display: flex; flex-direction: column; gap: 12px; text-align: left; }
.kumagera-search-field label { display: block; font-size: 1.1rem; color: #8a8874; margin: 0 0 4px; }
.kumagera-search-field input,
.kumagera-search-field select {
  border: 1px solid #d8d5c8;
  background: #fffdf8;
  color: #595335;
  padding: 8px 10px;
  font-size: 1.25rem;
  width: 100%;
}
.kumagera-search-price { display: flex; align-items: center; gap: 6px; font-size: 1.2rem; color: #595335; }
.kumagera-search-price input { width: 70px; }
.kumagera-search-submit button {
  background: #595335;
  color: #f2efe4;
  border: none;
  padding: 10px 26px;
  font-size: 1.25rem;
  letter-spacing: 0.15em;
  cursor: pointer;
  width: 100%;
  transition: background 0.25s ease;
}
.kumagera-search-submit button:hover { background: #4a4630; }
@media screen and (max-width: 599px) {
  .kumagera-search-box { position: static; margin-top: 10px; box-shadow: none; }
}

/* ===== 商品カード：全ページ共通（トップと同じ見た目に） ===== */
#main .item-photo {
  width: 100%;
  max-width: 250px;
  max-height: none;
  aspect-ratio: 1 / 1;
  background-color: #f4f1e6;
}
#main .item-photo a { display: block; width: 100%; height: 100%; }
#main .item-photo img { width: 100%; height: 100%; max-height: none; object-fit: cover; transition: transform 0.45s ease; }
#main .list-product li:hover .item-photo img { transform: scale(1.05); }
#main .item-info .item-name a,
#main .item-info .item-price { color: #595335; }
#main .list-product { padding-top: 14px; }

/* ===== ページャー ===== */
.pager { display: flex; justify-content: center; align-items: center; gap: 8px; padding: 30px 0 20px; }
.pager .prev, .pager .next { position: static; margin: 0; }
.pager .prev a, .pager .next a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 36px;
  padding: 0 14px;
  border: 1px solid #d8d5c8;
  background: none;
  color: #595335;
  font-size: 1.15rem;
  letter-spacing: 0.15em;
  text-decoration: none;
  transition: border-color 0.2s ease;
}
.pager .prev a:hover, .pager .next a:hover { border-color: #595335; }
.pager .page-num3 { margin: 0; }
.pager .page-num3 ul { display: flex; gap: 8px; list-style: none; margin: 0; padding: 0; }
.pager .page-num3 li { margin: 0; }
.pager .page-num3 li a {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 36px;
  height: 36px;
  border: 1px solid #d8d5c8;
  background: none;
  color: #595335;
  font-size: 1.3rem;
  text-decoration: none;
  transition: border-color 0.2s ease;
}
.pager .page-num3 li a:hover { border-color: #595335; }
/* 現在のページ */
.pager .page-num3 li span a,
.pager .page-num3 li span {
  background: #595335;
  color: #f2efe4;
  border-color: #595335;
}
.pager .page-num3 li span a { pointer-events: none; }

/* ===== 商品0件のとき ===== */
.item-list-noitem {
  background: #f4f1e6;
  color: #8a8874;
  text-align: center;
  padding: 60px 20px;
  margin: 24px 0;
  font-size: 1.35rem;
}

/* ツールバー右側の縦位置を揃える */
.kumagera-list-toolbar { align-items: center; }
.kumagera-list-tools { display: flex; align-items: center; gap: 18px; }
details.kumagera-search summary { line-height: 36px; }

/* ベーステーマの label 装飾（大きな▼など）を無効化 */
.kumagera-list-tools .sort { width: auto; margin: 0; padding: 0; background: none; border: none; }
.kumagera-list-tools .sort label {
  position: static;
  display: inline-block;
  width: auto;
  margin: 0;
  padding: 0;
  background: none;
  border: none;
}
.kumagera-list-tools .sort label::before,
.kumagera-list-tools .sort label::after { display: none !important; content: none !important; }

/* 表示順セレクト本体：スリムに・自前の小さな矢印 */
.kumagera-list-tools .sort select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: auto;
  height: 36px;
  line-height: 34px;
  margin: 0;
  padding: 0 34px 0 12px;
  border: 1px solid #d8d5c8;
  border-radius: 0;
  background-color: #fffdf8;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="6" viewBox="0 0 10 6"><path d="M1 1l4 4 4-4" fill="none" stroke="%23595335" stroke-width="1.5"/></svg>');
  background-repeat: no-repeat;
  background-position: right 12px center;
  color: #595335;
  font-size: 1.2rem;
}
.kumagera-list-tools .sort select::-ms-expand { display: none; }

/* 詳細検索パネル内のセレクト・入力欄も同じスリムな見た目に */
.kumagera-search-box .kumagera-search-field select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  height: 36px;
  line-height: 34px;
  padding: 0 34px 0 10px;
  border-radius: 0;
  background-color: #fffdf8;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="10" height="6" viewBox="0 0 10 6"><path d="M1 1l4 4 4-4" fill="none" stroke="%23595335" stroke-width="1.5"/></svg>');
  background-repeat: no-repeat;
  background-position: right 12px center;
}
.kumagera-search-box .kumagera-search-field label::before,
.kumagera-search-box .kumagera-search-field label::after { display: none !important; content: none !important; }
.kumagera-search-box .kumagera-search-field label { position: static; margin: 0 0 4px; padding: 0; background: none; }
.kumagera-search-box input[type="text"] { height: 36px; border-radius: 0; }

/* =========================================================
   クマゲラ カスタムCSS V8（ABOUTページ）
   ★「共通部分」CSS の一番下（V7ブロックのさらに下）に追記。
   「15_ABOUTフリーページ_HTML」とセットで使います。
   ========================================================= */

/* フリーページの枠がヒーロー等（全幅）を切り取らないように */
.main:has(.kumagera-about),
#main:has(.kumagera-about),
.main-article:has(.kumagera-about),
.wysiwyg-data:has(.kumagera-about) { overflow: visible; }
/* ページ上部の自動タイトル（ABOUT）は非表示（ヒーローと重複するため） */
.main-article:has(.kumagera-about) .ttl { display: none; }

.kumagera-about { text-align: left; color: #595335; line-height: 2; }
.kumagera-about h3 {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight: normal;
  color: #595335;
  font-size: 2.3rem;
  letter-spacing: 0.12em;
  line-height: 1.7;
  margin: 0 0 20px;
  border: none;
  padding: 0;
}
.kumagera-about h4 {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight: normal;
  color: #595335;
  font-size: 1.6rem;
  letter-spacing: 0.12em;
  margin: 0 0 8px;
}
.kumagera-about p { font-size: 1.35rem; margin: 0 0 14px; }
.kumagera-about-en {
  font-size: 1.15rem;
  letter-spacing: 0.32em;
  color: #8a8874;
  margin: 0 0 10px;
}
.kumagera-center { text-align: center; }
.kumagera-about-photo img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; }

/* ===== ① ヒーロー（全幅・写真＋暗幕＋タイトル） ===== */
.kumagera-about-hero {
  position: relative;
  min-height: 280px;
  margin: 0 calc(50% - 50vw);
  background-color: #4a4630;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.kumagera-about-hero::before {
  content: "";
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  background: rgba(62, 58, 37, 0.45);
}
.kumagera-about-hero-in { position: relative; padding: 40px 20px; }
.kumagera-about-hero-in .kumagera-about-label {
  color: rgba(242, 239, 228, 0.85);
  font-size: 1.2rem;
  letter-spacing: 0.4em;
  margin: 0 0 10px;
}
.kumagera-about-hero-in h2 {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight: normal;
  color: #f2efe4;
  font-size: 2.8rem;
  letter-spacing: 0.25em;
  margin: 0;
  border: none;
  padding: 0;
  text-shadow: 0 1px 10px rgba(0, 0, 0, 0.35);
}
@media screen and (min-width: 960px) {
  .kumagera-about-hero { min-height: 340px; }
  .kumagera-about-hero-in h2 { font-size: 3.2rem; }
}
/* スマホでは写真の見える高さを抑えて、文字が収まる分だけに */
@media screen and (max-width: 600px) {
  .kumagera-about-hero { min-height: 190px; }
  .kumagera-about-hero-in { padding: 26px 16px; }
  .kumagera-about-hero-in h2 { font-size: 2.1rem; letter-spacing: 0.18em; }
  .kumagera-about-hero-in .kumagera-about-label { font-size: 1.1rem; margin: 0 0 6px; }
}

/* ===== ② 工房紹介（写真＋文章 2カラム） ===== */
.kumagera-about-intro {
  max-width: 1000px;
  margin: 0 auto;
  padding: 64px 20px 0;
  display: flex;
  flex-direction: column;
  gap: 28px;
  align-items: center;
}
@media screen and (min-width: 860px) {
  .kumagera-about-intro { flex-direction: row; gap: 52px; }
  .kumagera-about-intro > div { width: 50%; }
}

/* ===== ③ 環境への取り組み（クリーム帯・全幅） ===== */
.kumagera-about-eco {
  margin: 64px calc(50% - 50vw) 0;
  background: #f4f1e6;
  padding: 60px 20px;
  text-align: center;
}
.kumagera-about-eco h3 { text-align: center; }
.kumagera-about-eco-lead { max-width: 660px; margin: 0 auto 36px; text-align: left; }
@media screen and (min-width: 860px) { .kumagera-about-eco-lead { text-align: center; } }
.kumagera-about-eco-items {
  display: flex;
  justify-content: center;
  gap: 20px;
  max-width: 900px;
  margin: 0 auto;
  flex-wrap: wrap;
}
.kumagera-eco-item { flex: 1 1 240px; background: #fffdf8; padding: 30px 22px; }
.kumagera-eco-item p { font-size: 1.2rem; color: #8a8874; line-height: 1.9; margin: 0; }
.kumagera-eco-icon {
  display: block;
  width: 36px;
  height: 36px;
  margin: 0 auto 12px;
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
}
.kumagera-eco-icon-energy { background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23595335" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"><path d="M12 3v4M5.6 5.6l2.8 2.8M3 12h4M18.4 5.6l-2.8 2.8M21 12h-4M12 21a5 5 0 0 0 5-5c0-2.8-5-8-5-8s-5 5.2-5 8a5 5 0 0 0 5 5z"/></svg>'); }
.kumagera-eco-icon-wood { background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23595335" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"><path d="M12 22V8M12 8C12 8 7 9 5 6c-2-3 1-5 3-4s4 6 4 6zM12 8c0 0 5 1 7-2 2-3-1-5-3-4s-4 6-4 6zM8 22c0-3 1.8-5 4-5s4 2 4 5"/></svg>'); }
.kumagera-eco-icon-noplastic { background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23595335" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"><path d="M4 6h16M6 6l1.5 14h9L18 6M9.5 6V4a1 1 0 0 1 1-1h3a1 1 0 0 1 1 1v2"/><path d="M9 11l6 6M15 11l-6 6"/></svg>'); }

/* ===== ④ 大切にしている3つのこと ===== */
.kumagera-about-values {
  max-width: 1000px;
  margin: 0 auto;
  padding: 68px 20px 0;
  text-align: center;
}
.kumagera-about-values h3 { text-align: center; }
.kumagera-about-values-lead { max-width: 620px; margin: 0 auto 40px; }
.kumagera-about-values-grid { display: flex; gap: 24px; flex-wrap: wrap; }
.kumagera-value-card { flex: 1 1 240px; border: 1px solid #d8d5c8; padding: 38px 26px; }
.kumagera-about-num {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-size: 1.3rem;
  letter-spacing: 0.3em;
  color: #8a8874;
  margin: 0 0 12px;
}
.kumagera-value-card p { font-size: 1.25rem; color: #4a4630; margin: 0; }
.kumagera-value-card .kumagera-about-num { margin-bottom: 12px; }

/* ===== ⑤ KUMAGERA DESIGNERS（ダークオリーブ帯・全幅） ===== */
.kumagera-about-designers {
  margin: 72px calc(50% - 50vw) 0;
  background: #3e3a25;
  color: #f2efe4;
  padding: 64px 20px;
}
.kumagera-about-designers .kumagera-about-en { color: rgba(242, 239, 228, 0.6); }
.kumagera-about-designers h3 { color: #f2efe4; }
.kumagera-about-designers p { opacity: 0.92; }
.kumagera-about-designers-in {
  max-width: 1000px;
  margin: 0 auto;
  display: flex;
  flex-direction: column-reverse;
  gap: 28px;
  align-items: center;
}
@media screen and (min-width: 860px) {
  .kumagera-about-designers-in { flex-direction: row; gap: 52px; }
  .kumagera-about-designers-in > div { width: 50%; }
}
.kumagera-about-note {
  border-left: 2px solid rgba(242, 239, 228, 0.4);
  padding-left: 16px;
  font-size: 1.25rem;
  opacity: 0.8;
}
.kumagera-about-cta-btn {
  display: inline-block;
  margin-top: 16px;
  border: 1px solid #f2efe4;
  color: #f2efe4;
  padding: 11px 38px;
  font-size: 1.25rem;
  letter-spacing: 0.2em;
  text-decoration: none;
  transition: background 0.25s ease, color 0.25s ease;
}
.kumagera-about-cta-btn:hover { background: #f2efe4; color: #595335; text-decoration: none; }

/* DESIGNERS の写真は切り取らず、写真全体を表示 */
.kumagera-about-designers .kumagera-about-photo img {
  aspect-ratio: auto;
  height: auto;
  max-height: none;
  object-fit: contain;
}
.kumagera-about-designers .kumagera-about-photo { background: transparent; min-height: 0; }

/* 写真の下の小さなキャプション */
.kumagera-about .kumagera-about-photo-cap { background: transparent; min-height: 0; }
.kumagera-about .kumagera-about-caption {
  font-size: 1.15rem;
  color: #8a8874;
  text-align: center;
  line-height: 1.7;
  margin: 8px 0 0;
}

/* ===== ⑥ 締めのCTA ===== */
.kumagera-about-close { text-align: center; padding: 68px 20px 30px; }
.kumagera-about-close p {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-size: 1.7rem;
  letter-spacing: 0.12em;
  margin: 0 0 24px;
}
.kumagera-about-close a {
  display: inline-block;
  border: 1px solid #595335;
  color: #595335;
  padding: 13px 48px;
  font-size: 1.3rem;
  letter-spacing: 0.2em;
  text-decoration: none;
  margin: 0 8px 12px;
  transition: background 0.25s ease, color 0.25s ease;
}
.kumagera-about-close a:hover { background: #595335; color: #f2efe4; text-decoration: none; }

/* =========================================================
   クマゲラ カスタムCSS V9（ABOUTページ修正）
   ★「共通部分」CSS の一番下（V8ブロックのさらに下）に追記。
   「17_ABOUTフリーページ_HTML（修正版）」とセットで使います。
   修正点：
   ・カードが縦積みになる問題 → エディタに書き換えられても
     崩れないレイアウト方式（inline-block／float）に変更
   ・KUMAGERA DESIGNERS帯の文字が黒くて読めない → 明色を強制
   ・写真未設定のボックス → クリーム色の無地に
   ========================================================= */

/* ===== 写真ボックス（写真未設定でもきれいに） ===== */
.kumagera-about .kumagera-about-photo {
  background: #eceadd;
  min-height: 220px;
}
.kumagera-about .kumagera-about-photo img {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}

/* ===== 工房紹介：float 2カラム（V8のflex指定を無効化） ===== */
.kumagera-about-intro { display: block; }
.kumagera-about-intro::after { content: ""; display: block; clear: both; }
@media screen and (min-width: 860px) {
  .kumagera-about-intro .kumagera-about-photo { float: left; width: 47%; }
  .kumagera-about-intro .kumagera-about-text { float: right; width: 47%; }
}

/* ===== 環境への取り組み・3つのこと：inline-blockカード =====
   （途中のラッパーdivが無くても横に並ぶ方式） */
.kumagera-about-eco { text-align: center; }
.kumagera-about-eco .kumagera-eco-item {
  display: inline-block;
  vertical-align: top;
  float: none;
  width: 29%;
  min-width: 230px;
  margin: 0 8px 14px;
  text-align: center;
  background: #fffdf8;
  padding: 30px 22px;
}
.kumagera-about-values { text-align: center; }
.kumagera-about-values .kumagera-value-card {
  display: inline-block;
  vertical-align: top;
  float: none;
  width: 29%;
  min-width: 230px;
  margin: 0 8px 14px;
  border: 1px solid #d8d5c8;
  padding: 38px 22px;
  text-align: center;
}

/* ===== KUMAGERA DESIGNERS：float 2カラム＋明色文字を強制 ===== */
.kumagera-about-designers {
  display: block;
  padding: 64px max(20px, calc(50% - 500px));
}
.kumagera-about-designers::after { content: ""; display: block; clear: both; }
@media screen and (min-width: 860px) {
  .kumagera-about-designers .kumagera-about-text { float: left; width: 47%; }
  .kumagera-about-designers .kumagera-about-photo { float: right; width: 47%; }
}
/* ベースCSSの文字色に負けないように !important で明色に */
.kumagera-about-designers h3,
.kumagera-about-designers p { color: #f2efe4 !important; }
.kumagera-about-designers .kumagera-about-en { color: rgba(242, 239, 228, 0.6) !important; }
.kumagera-about-designers .kumagera-about-note { color: rgba(242, 239, 228, 0.85) !important; }
.kumagera-about-designers .kumagera-about-cta-btn { color: #f2efe4 !important; }
.kumagera-about-designers .kumagera-about-cta-btn:hover { color: #595335 !important; background: #f2efe4; }
/* ダーク帯の中の写真ボックスは半透明の明色に */
.kumagera-about-designers .kumagera-about-photo { background: rgba(242, 239, 228, 0.12); }

/* ===== ヒーロー内の見出し色もベースCSSに負けないように ===== */
.kumagera-about-hero-in h2 { color: #f2efe4 !important; }
.kumagera-about-hero-in .kumagera-about-label { color: rgba(242, 239, 228, 0.85) !important; }

/* =========================================================
   クマゲラ カスタムCSS V10（トップ：カテゴリ別セクション 案A）
   ★「共通部分」CSS の一番下（V9ブロックのさらに下）に追記。
   「19_トップページ_HTML（案A版）」とセットで使います。
   左ラベル型：カテゴリ名・説明・ボタンを左枠、商品を右へ。
   ========================================================= */

/* ===== 案A レイアウト ===== */
#top-main .kumagera-showcase-a { display: block; }
@media screen and (min-width: 960px) {
  #top-main .kumagera-showcase-a {
    display: grid;
    grid-template-columns: 240px 1fr;
    gap: 44px;
    align-items: start;
    text-align: left;
  }
}

/* 左枠：英語ラベル・カテゴリ名・説明・ボタン */
.kumagera-showcase-a-head { text-align: left; margin-bottom: 20px; }
.kumagera-showcase-en {
  font-size: 1.1rem;
  letter-spacing: 0.3em;
  color: #8a8874;
  margin: 0 0 8px;
}
.kumagera-showcase-title {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight: normal;
  font-size: 2.4rem;
  letter-spacing: 0.12em;
  line-height: 1.5;
  color: #595335;
  border: none;
  border-bottom: 2px solid #595335;
  padding: 0 0 14px;
  margin: 0 0 14px;
}
#top-main .kumagera-showcase-a .kumagera-cat-desc {
  font-size: 1.25rem;
  color: #4a4630;
  line-height: 1.9;
  margin: 0 0 18px;
}
/* すべて見る → 枠線ボタンに（下線タイプを上書き） */
#top-main .kumagera-showcase-more,
#top-main .kumagera-showcase-more:visited {
  display: inline-block;
  border: 1px solid #595335;
  color: #595335;
  padding: 9px 28px;
  font-size: 1.2rem;
  letter-spacing: 0.15em;
  text-decoration: none;
  transition: background 0.25s ease, color 0.25s ease;
}
#top-main .kumagera-showcase-more:hover {
  background: #595335;
  color: #f2efe4;
  text-decoration: none;
}

/* 右枠：商品リスト */
.kumagera-showcase-a-body { min-width: 0; }
/* デザイナーブロックの商品列（スクリプトが col-4 で生成）も3列に */
@media screen and (min-width: 960px) {
  #top-main .kumagera-showcase-a .kumagera-designer-list .list-product.col-4 li { width: 33.3333%; }
}

/* デザイナーブロックの余白調整 */
#top-main .kumagera-showcase-a .kumagera-designer-block { margin-bottom: 30px; }
#top-main .kumagera-showcase-a .kumagera-designer-head { margin-top: 0; }

/* =========================================================
   クマゲラ カスタムCSS V11（DESIGNERS「プロジェクトについて」リンク）
   ★「共通部分」CSS の一番下（V10ブロックのさらに下）に追記。
   「21_トップページ_HTML」とセットで使います。
   ========================================================= */
#top-main .kumagera-showcase-sublink,
#top-main .kumagera-showcase-sublink:visited {
  display: block;
  margin-top: 12px;
  font-size: 1.15rem;
  color: #8a8874;
  text-decoration: underline;
}
#top-main .kumagera-showcase-sublink:hover { color: #595335; }

/* =========================================================
   クマゲラ カスタムCSS V12（CATEGORY：大タイル → 細めのピルボタン）
   ★「共通部分」CSS の一番下（V11ブロックのさらに下）に追記。
   HTMLの変更は不要です（今のタイルをそのまま作り替えます）。
   ========================================================= */
#top-main .cat-tile-list {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
}
#top-main .cat-tile-list li {
  flex: 0 0 auto;
  min-width: 0;
  width: auto;
}
#top-main .cat-tile-list a {
  position: static;
  display: inline-block;
  height: auto;
  padding: 9px 28px;
  overflow: visible;
  background: none;
  background-color: transparent;
  background-image: none !important;
  border: 1px solid #595335;
  border-radius: 22px;
  color: #595335;
  font-family: "Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3",Meiryo,sans-serif;
  font-size: 1.3rem;
  letter-spacing: 0.08em;
  line-height: 1.6;
  text-decoration: none;
  transition: background 0.25s ease, color 0.25s ease;
}
/* 旧タイルの暗幕（::before）を無効化 */
#top-main .cat-tile-list a::before { display: none; content: none; }
#top-main .cat-tile-list a span {
  position: static;
  border-bottom: none;
  padding: 0;
}
#top-main .cat-tile-list a:hover {
  background: #595335;
  color: #f2efe4;
  text-decoration: none;
}

/* =========================================================
   クマゲラ カスタムCSS V13（修正まとめ）
   ★「共通部分」CSS の一番下（V12ブロックのさらに下）に追記。
   「24_トップページ_HTML」とセットで使います。
   内容：
   1) ヘッダーの中身を中央寄せ（カートページと同じ幅感に）
   2) フッターのロゴ裏のベージュ背景を削除
   3) KUMAGERA DESIGNERS の見出しが単語の途中で改行される問題を修正
   4) ご利用ガイドの「お問合せ」リンク化に伴うスタイル
   5) NEWS（外部ブログ）カードのスタイル
   ========================================================= */

/* ===== 1) ヘッダー：中身を中央寄せ ===== */
#header {
  padding-left: max(16px, calc(50% - 540px));
  padding-right: max(16px, calc(50% - 540px));
}

/* ===== 2) フッターのロゴ裏のベージュ背景を削除 ===== */
#secondary .footer-logo a {
  background: none;
  padding: 0;
  border-radius: 0;
}

/* ===== 3) 見出しの単語途中改行を防ぐ（DESIGNERSなど） ===== */
.kumagera-showcase-title {
  word-break: keep-all;
  overflow-wrap: normal;
}

/* ===== 4) ご利用ガイド：お問合せカードをリンクに ===== */
.kumagera-guide-link {
  display: block;
  color: inherit;
  text-decoration: none;
}
.kumagera-guide-link:hover { text-decoration: none; }
.kumagera-guide-link:hover h3 { text-decoration: underline; }
.kumagera-guide li { transition: border-color 0.25s ease; }
.kumagera-guide li:hover { border-color: #8a8874; }

/* ===== 5) NEWS（外部ブログ）カード ===== */
#top-main .kumagera-news-list {
  display: flex;
  gap: 24px;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
}
#top-main .kumagera-news-list li {
  flex: 1 1 240px;
  max-width: 400px;
  text-align: left;
  list-style: none;
}
#top-main .kumagera-news-list li a {
  display: block;
  color: #595335;
  text-decoration: none;
}
.kumagera-news-thumb {
  display: block;
  width: 100%;
  aspect-ratio: 16 / 10;
  background-color: #f4f1e6;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  margin-bottom: 10px;
}
.kumagera-news-date {
  display: block;
  font-size: 1.1rem;
  letter-spacing: 0.05em;
  color: #8a8874;
}
.kumagera-news-title {
  display: block;
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-size: 1.5rem;
  line-height: 1.6;
  color: #595335;
  margin: 2px 0 6px;
}
#top-main .kumagera-news-list li a:hover .kumagera-news-title { text-decoration: underline; }
.kumagera-news-desc {
  display: block;
  font-size: 1.2rem;
  line-height: 1.8;
  color: #8a8874;
}
.kumagera-news-loading, .kumagera-news-empty {
  width: 100%;
  max-width: none !important;
  text-align: center;
  color: #999;
  padding: 20px 0;
  font-size: 1.3rem;
}
.kumagera-news-empty a { color: #595335; text-decoration: underline; }
.kumagera-news-more { text-align: center; margin-top: 22px; }
.kumagera-news-more a { font-size: 1.25rem; color: #595335; text-decoration: underline; }

/* =========================================================
   クマゲラ カスタムCSS V14
   ★「共通部分」CSS の一番下（V13ブロックのさらに下）に追記。
   内容：
   1) 商品一覧・商品詳細ページの中身をヘッダーと同じ幅に中央寄せ
   2) 商品一覧：デスクトップは1行3商品に・写真を枠いっぱいに
   3) ABOUTページ：縦に長すぎる画像を整える／
      SUSTAINABILITYの説明文を中央揃えに
   4) 「プロジェクトについて詳しく」ジャンプ時にヘッダーで
      隠れないための余白
   ========================================================= */

/* ===== 1) 商品一覧・商品詳細などの中身をヘッダーと同じ幅に ===== */
@media screen and (min-width: 1080px) {
  #main {
    max-width: 1080px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 20px;
    padding-right: 20px;
  }
}

/* ===== 2) 商品一覧（カテゴリ・検索結果）：デスクトップ3列 ===== */
@media screen and (min-width: 960px) {
  #main:has(.kumagera-cat-banner) .list-product.col-4 li { width: 33.3333%; }
}
/* 写真がセルいっぱいに広がるように（250px制限を解除） */
#main:has(.kumagera-cat-banner) .item-photo { max-width: none; }

/* ===== 3) ABOUTページの画像：縦長になりすぎないように ===== */
.kumagera-about img {
  width: 100%;
  max-height: 420px;
  aspect-ratio: 4 / 3;
  object-fit: cover;
}
/* SUSTAINABILITYの説明文を中央揃えに */
.kumagera-about-eco-lead { text-align: center !important; }
.kumagera-about-eco p { text-align: center; }

/* ===== 4) アンカージャンプ時のヘッダー分の余白 ===== */
.kumagera-about-designers { scroll-margin-top: 70px; }

/* =========================================================
   クマゲラ カスタムCSS V15（KUMAGERA DESIGNERS ブランドページ）
   ★「共通部分」CSS の一番下（V14ブロックのさらに下）に追記。
   「35_商品一覧_HTML」「36_共通部分_HTML」とセットで使います。
   ========================================================= */

/* ===== ハブページ：デザイナーカード ===== */
.kumagera-designer-cards {
  display: flex;
  flex-wrap: wrap;
  gap: 24px;
  padding: 36px 0 8px;
  text-align: left;
}
.kumagera-designer-card {
  flex: 1 1 320px;
  max-width: 508px;
  display: flex;
  gap: 18px;
  align-items: center;
  border: 1px solid #d8d5c8;
  padding: 24px;
  text-decoration: none;
  color: #595335;
  transition: border-color 0.25s ease;
}
.kumagera-designer-card:hover { border-color: #595335; text-decoration: none; }
.kumagera-designer-card-thumb {
  flex-shrink: 0;
  width: 74px;
  height: 74px;
  border-radius: 50%;
  background-color: #f4f1e6;
  background-size: cover;
  background-position: center;
}
.kumagera-designer-card-body { display: block; min-width: 0; }
.kumagera-designer-card-name {
  display: block;
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-size: 1.7rem;
  letter-spacing: 0.08em;
}
.kumagera-designer-card-text { display: block; font-size: 1.2rem; color: #8a8874; margin: 4px 0 6px; }
.kumagera-designer-card-go { display: block; font-size: 1.15rem; text-decoration: underline; }
.kumagera-designer-card:hover .kumagera-designer-card-go { color: #4a4630; }

/* ===== ブランドページ：ヒーロー（全幅・写真＋暗幕） ===== */
.kumagera-brand { text-align: left; }
.kumagera-brand-hero {
  position: relative;
  min-height: 300px;
  margin: 14px calc(50% - 50vw) 0;
  background-color: #4a4630;
  background-size: cover;
  background-position: center;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.kumagera-brand-hero::before {
  content: "";
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  background: transparent;   /* 色フィルターなし（写真そのまま） */
}
/* 色フィルターを外したので、文字の影を強めて読めるように */
.kumagera-brand-name { text-shadow: 0 2px 14px rgba(0, 0, 0, 0.65); }
.kumagera-brand-tagline { text-shadow: 0 2px 12px rgba(0, 0, 0, 0.65); }
.kumagera-brand-hero-in { position: relative; padding: 40px 20px; }
.kumagera-brand-icon {
  display: block;
  width: 92px;
  height: 92px;
  margin: 0 auto 14px;
  border-radius: 50%;
  background-color: #f4f1e6;
  background-size: cover;
  background-position: center;
  border: 3px solid rgba(242, 239, 228, 0.6);
}
.kumagera-brand-name {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight: normal;
  color: #f2efe4;
  font-size: 3.0rem;
  letter-spacing: 0.2em;
  margin: 0 0 8px;
  border: none;
  padding: 0;
  text-shadow: 0 1px 10px rgba(0, 0, 0, 0.35);
}
.kumagera-brand-tagline {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  color: #f2efe4;
  font-size: 1.4rem;
  letter-spacing: 0.15em;
  margin: 0;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.35);
}

/* ===== ステートメント文 ===== */
.kumagera-brand-statement {
  max-width: 640px;
  margin: 0 auto;
  padding: 40px 20px 6px;
  text-align: center;
}
.kumagera-brand-statement p { font-size: 1.35rem; line-height: 2.2; color: #595335; }

/* ===== ギャラリー（3枚） ===== */
.kumagera-brand-gallery {
  display: flex;
  gap: 14px;
  padding: 26px 0 6px;
}
.kumagera-brand-gallery span {
  flex: 1 1 30%;
  aspect-ratio: 1 / 1;
  background-color: #f4f1e6;
  background-size: cover;
  background-position: center;
}
@media screen and (max-width: 599px) {
  .kumagera-brand-gallery { flex-wrap: wrap; }
  .kumagera-brand-gallery span { flex: 1 1 45%; }
  /* 1枚目と3枚目を上に並べ、真ん中の写真を下に大きく */
  .kumagera-brand-gallery span:nth-child(1) { order: 1; }
  .kumagera-brand-gallery span:nth-child(3) { order: 2; }
  .kumagera-brand-gallery span:nth-child(2) { order: 3; flex: 1 1 100%; }
}

/* ===== SNSリンク ===== */
.kumagera-brand-sns { text-align: center; padding: 14px 0 20px; margin: 0; }
.kumagera-brand-sns a {
  font-size: 1.2rem;
  color: #8a8874;
  text-decoration: underline;
  margin: 0 10px;
}
.kumagera-brand-sns a:hover { color: #595335; }

/* ===== PRODUCTS / ALL PRODUCTS 見出し ===== */
.kumagera-brand-products-head {
  display: inline-block;
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight: normal;
  font-size: 2.0rem;
  letter-spacing: 0.15em;
  color: #595335;
  border-bottom: 2px solid #595335;
  padding: 0 80px 8px 0;
  margin: 20px 0 4px;
}

/* =========================================================
   クマゲラ カスタムCSS V16
   ★「共通部分」CSS の一番下（V15ブロックのさらに下）に追記。
   内容：
   1) ヘッダーにカテゴリを直置きしたぶん、間隔を少し詰める
   2) ABOUTページ：「大切にしている3つのこと」と
      SUSTAINABILITY の説明文を確実に中央揃えに
   ========================================================= */

/* ===== 1) ヘッダーナビの間隔調整（項目が増えたため） ===== */
@media screen and (min-width: 960px) {
  .kumagera-nav .kumagera-nav-link {
    padding: 0 16px;
    font-size: 1.3rem;
    letter-spacing: 0.08em;
  }
}

/* ===== 2) ABOUTページの説明文を中央揃えに（強制） ===== */
.kumagera-about-eco p,
.kumagera-about-eco h3,
.kumagera-about-values p,
.kumagera-about-values h3 {
  text-align: center !important;
}
.kumagera-about-eco .kumagera-about-eco-lead,
.kumagera-about-values .kumagera-about-values-lead {
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ===== 1) ヒーロー ===== */
/* ロゴ・文言・ボタンを写真より前面に */
#top-main .kumagera-hero { position: relative; }
#top-main .kumagera-hero .kumagera-hero-overlay { z-index: 5; }

/* キービジュアル写真を左右いっぱいに（中央寄せの枠制限を解除） */
#top-main .kumagera-hero > *:not(.kumagera-hero-overlay) {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
}
#top-main .kumagera-hero > *:not(.kumagera-hero-overlay) img {
  width: 100%;
  max-width: none;
  height: auto;
  max-height: 62vh;
  object-fit: cover;
  display: block;
  margin: 0;
}

/* ONLINE STORE ラベル */
.kumagera-hero-store {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  color: #f2efe4;
  font-size: 1.5rem;
  letter-spacing: 0.5em;
  text-indent: 0.5em;
  margin: 0;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.35);
}
@media screen and (min-width: 960px) {
  .kumagera-hero-store { font-size: 1.7rem; }
}

/* ===== 2) 事業者向けセクション ===== */
.kumagera-b2b {
  background: #f4f1e6;
  margin: 64px calc(50% - 50vw) 0;
  padding: 52px 20px;
  text-align: center;
}
.kumagera-b2b-in { max-width: 720px; margin: 0 auto; }
.kumagera-b2b-en {
  font-size: 1.1rem;
  letter-spacing: 0.32em;
  color: #8a8874;
  margin: 0 0 8px;
}
.kumagera-b2b h2 {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight: normal;
  font-size: 2.2rem;
  letter-spacing: 0.14em;
  color: #595335;
  border: none;
  padding: 0;
  margin: 0 0 14px;
}
.kumagera-b2b p {
  font-size: 1.3rem;
  line-height: 2.1;
  color: #4a4630;
  margin: 0 0 24px;
}
.kumagera-b2b-btn {
  display: inline-block;
  border: 1px solid #595335;
  color: #595335;
  padding: 12px 40px;
  font-size: 1.25rem;
  letter-spacing: 0.15em;
  text-decoration: none;
  transition: background 0.25s ease, color 0.25s ease;
}
.kumagera-b2b-btn:hover { background: #595335; color: #f2efe4; text-decoration: none; }

/* ===== 3) 「表示順」セレクトの枠線が欠ける問題 ===== */
.kumagera-list-tools .sort { display: inline-flex; overflow: visible; }
.kumagera-list-tools .sort label {
  display: inline-flex;
  overflow: visible;
  height: auto;
  line-height: normal;
}
.kumagera-list-tools .sort select {
  box-sizing: border-box;
  height: 38px;
  line-height: normal;
  border: 1px solid #d8d5c8;
  border-radius: 0;
  outline: none;
}

#top-main .kumagera-hero-static {
  background-size: cover;
  background-position: center;
  min-height: 340px;
  display: block;
}
@media screen and (min-width: 960px) {
  #top-main .kumagera-hero-static { min-height: 480px; }
}
/* ロゴ・ONLINE STORE・ボタンを確実に前面・中央に */
#top-main .kumagera-hero-static .kumagera-hero-overlay {
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  z-index: 10;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

/* =========================================================
   クマゲラ カスタムCSS V19
   ★「共通部分」CSS の一番下（V18ブロックのさらに下）に追記。
   「48_トップページ_HTML」「49_共通部分_HTML」とセットで使います。
   内容：
   1) ヒーローのスライドショー（5秒ごとにゆっくりクロスフェード）
   2) 「商品を見る」ボタンの文字を白に
   ========================================================= */

/* ===== 1) ヒーロースライドショー ===== */
#top-main .kumagera-hero-static { position: relative; overflow: hidden; }
.kumagera-hero-slides {
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  z-index: 1;
}
.kumagera-hero-slide {
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  background-size: cover;
  background-position: center;
  opacity: 0;
  transition: opacity 1.6s ease;
}
.kumagera-hero-slide.is-active { opacity: 1; }
/* オーバーレイ（ロゴ・ボタン）はスライドより前面（V18のz-index:10が有効） */

/* ===== 2) 「商品を見る」ボタンの文字を白に ===== */
#top-main .kumagera-hero-cta,
#top-main .kumagera-hero-cta:visited {
  color: #ffffff !important;
  border-color: #ffffff;
}
#top-main .kumagera-hero-cta:hover {
  background: #ffffff;
  color: #595335 !important;
}

/* スライド本体：写真＋薄い暗幕＋中央にキャプション */
.kumagera-hero-slide {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  pointer-events: none;              /* 非表示スライドはクリック不可 */
}
.kumagera-hero-slide.is-active { pointer-events: auto; }
.kumagera-hero-slide::before {
  content: "";
  position: absolute;
  top: 0; right: 0; bottom: 0; left: 0;
  background: rgba(62, 58, 37, 0.32); /* 文字を読みやすくする薄い暗幕 */
}
.kumagera-hero-slide-in {
  position: relative;
  padding: 30px 20px;
  max-width: 760px;
}

/* 商品名（大きな明朝） */
.kumagera-hero-slide-title {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  color: #ffffff;
  font-size: 2.6rem;
  letter-spacing: 0.18em;
  line-height: 1.5;
  margin: 0 0 10px;
  text-shadow: 0 1px 10px rgba(0, 0, 0, 0.4);
}
/* ひとこと説明 */
.kumagera-hero-slide-sub {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  color: #ffffff;
  font-size: 1.4rem;
  letter-spacing: 0.12em;
  margin: 0 0 24px;
  text-shadow: 0 1px 8px rgba(0, 0, 0, 0.4);
}
@media screen and (min-width: 960px) {
  .kumagera-hero-slide-title { font-size: 3.4rem; }
  .kumagera-hero-slide-sub { font-size: 1.6rem; }
}
/* ボタン（V19の白字スタイルを引き継ぎ） */
.kumagera-hero-slide .kumagera-hero-cta { margin-top: 0; }

/* ===== 1) スマホのヘッダーロゴ 白い点 修正 =====
   ベーステーマがロゴのリンクを position:absolute にしているため、
   スマホでロゴ枠がつぶれて点のように見えていました。通常配置に戻します。 */
#header .site-name a {
  position: static;
  transform: none;
  top: auto;
  left: auto;
  width: auto;
}
#header .site-name img { max-height: 30px; width: auto; }
#header .logo { min-width: 110px; }

/* ===== 2) フリー1（ショップ説明1）先頭行＝タイトル／スマホ折返し =====
   ショップ説明1には <p>1行目</p><p>2行目</p> の2段落を入れてください。
   1段落目が見出し、2段落目が本文になります。 */
#top-main #top-shop-message1 { padding: 0 16px; }
#top-main #top-shop-message1 p:first-child {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-size: 2.0rem;
  line-height: 1.6;
  letter-spacing: 0.08em;
  color: #595335;
  margin: 0 0 14px;
  word-break: normal;
  overflow-wrap: anywhere;
}
#top-main #top-shop-message1 p:first-child + p {
  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック","Yu Gothic",Meiryo,sans-serif;
  font-size: 1.4rem;
  line-height: 1.9;
  color: #8a8874;
  max-width: 760px;
  margin: 0 auto;
  word-break: normal;
  overflow-wrap: anywhere;
}
@media screen and (min-width: 960px) {
  #top-main #top-shop-message1 p:first-child { font-size: 2.6rem; }
  #top-main #top-shop-message1 p:first-child + p { font-size: 1.5rem; }
}

/* ===== 1) ヒーローのボタン：アクティブなスライドだけクリック可 ===== */
#top-main .kumagera-hero-slide { z-index: 1; }
#top-main .kumagera-hero-slide.is-active { z-index: 2; }
#top-main .kumagera-hero-slide:not(.is-active) .kumagera-hero-cta { pointer-events: none; }
#top-main .kumagera-hero-slide.is-active .kumagera-hero-cta { pointer-events: auto; }

/* ===== 2) フリー1：エディタが付けた font-size を上書き（!important） ===== */
#top-main #top-shop-message1 { padding: 0 16px; }
#top-main #top-shop-message1 p { word-break: normal !important; overflow-wrap: anywhere; }
#top-main #top-shop-message1 p:first-child {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif !important;
  font-size: 2.2rem !important;
  line-height: 1.6 !important;
  letter-spacing: 0.08em !important;
  color: #595335 !important;
  margin: 0 0 14px !important;
}
#top-main #top-shop-message1 p:first-child + p {
  font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック","Yu Gothic",Meiryo,sans-serif !important;
  font-size: 1.4rem !important;
  line-height: 1.9 !important;
  color: #8a8874 !important;
  max-width: 760px;
  margin: 0 auto !important;
}
@media screen and (min-width: 960px) {
  #top-main #top-shop-message1 p:first-child { font-size: 2.6rem !important; }
  #top-main #top-shop-message1 p:first-child + p { font-size: 1.5rem !important; }
}

/* ===== 3) KUMAGERA DESIGNERS：クリーム全幅バンド＋元の文字色 ===== */
#top-main .kumagera-designer-section.kumagera-showcase-a {
  background: #f4f1e6;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  padding-top: 52px;
  padding-bottom: 52px;
  padding-left: max(20px, calc(50vw - 520px));
  padding-right: max(20px, calc(50vw - 520px));
}
/* V20（ダークオリーブ）で明色にした文字を、元のオリーブ色に戻す */
#top-main .kumagera-designer-section .kumagera-showcase-en { color: #8a8874; }
#top-main .kumagera-designer-section .kumagera-showcase-title {
  color: #595335;
  border-bottom-color: #595335;
}
#top-main .kumagera-designer-section .kumagera-cat-desc { color: #4a4630; }
#top-main .kumagera-designer-section .kumagera-showcase-more,
#top-main .kumagera-designer-section .kumagera-showcase-more:visited {
  border-color: #595335;
  color: #595335;
}
#top-main .kumagera-designer-section .kumagera-showcase-more:hover {
  background: #595335;
  color: #f2efe4;
}
#top-main .kumagera-designer-section .kumagera-showcase-sublink,
#top-main .kumagera-designer-section .kumagera-showcase-sublink:visited { color: #8a8874; }
#top-main .kumagera-designer-section .kumagera-showcase-sublink:hover { color: #595335; }
#top-main .kumagera-designer-section .kumagera-designer-name {
  color: #595335;
  border-bottom-color: #e0dbcc;
}
#top-main .kumagera-designer-section .item-info .item-name a,
#top-main .kumagera-designer-section .item-info .item-price { color: #595335; }
#top-main .kumagera-designer-section .kumagera-designer-thumb { background-color: #e5e0cf; }
#top-main .kumagera-designer-section .kumagera-cat-loading,
#top-main .kumagera-designer-section .kumagera-cat-empty { color: #999; }

/* ===== 4) スマホのヘッダーロゴを左端寄せに ===== */
@media screen and (max-width: 959px) {
  #header {
    padding-left: 12px;
    padding-right: 12px;
  }
  #header .site-name { padding-left: 2px; padding-right: 8px; }
  #header .logo { min-width: 0; }
}

/* ===== 1) KUMAGERA DESIGNERS：元の体裁のまま、背景だけベージュ全幅 =====
   V20/V21 で加えた全幅マージン・余白・サムネ色を元に戻し、
   背景は擬似要素で左右いっぱいに敷く（中身の配置は変えない）。 */
#top-main .kumagera-designer-section.kumagera-showcase-a {
  position: relative;
  margin-left: 0;
  margin-right: 0;
  padding-left: 0;
  padding-right: 0;
  padding-top: 44px;
  padding-bottom: 44px;
  background: transparent;
}
#top-main .kumagera-designer-section.kumagera-showcase-a::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: calc(50% - 50vw);
  right: calc(50% - 50vw);
  background: #f4f1e6;
  z-index: 0;
}
#top-main .kumagera-designer-section.kumagera-showcase-a > * {
  position: relative;
  z-index: 1;
}
/* サムネイルの色を元に戻す */
#top-main .kumagera-designer-section .kumagera-designer-thumb { background-color: #f4f1e6; }

/* ===== 2) フリー1タイトル：スマホで改行（PCは1行） =====
   ショップ説明1の1行目に <br> を入れておくと、スマホだけ改行されます。 */
#top-main #top-shop-message1 p:first-child br { display: none; }
@media screen and (max-width: 600px) {
  #top-main #top-shop-message1 p:first-child br { display: inline; }
}

/* ===== 3) スマホのヘッダーロゴを左端へ =====
   スマホではナビが隠れるため、ロゴの margin:auto が中央寄せの原因。解除します。 */
@media screen and (max-width: 959px) {
  #header { padding-left: 10px; padding-right: 10px; }
  #header .logo { margin-left: 0; margin-right: 0; }
  #header .site-name { padding-left: 0; padding-right: 8px; }
}

@media screen and (max-width: 959px) {
  #global-nav .kumagera-mnav { width: 100%; }
  #global-nav .kumagera-mnav > li {
    background: #fff;
    border-top: 1px solid #eee;
  }
  /* トップ項目（商品／ABOUT／工房の動物たち）とプルダウンの見出し */
  #global-nav .kumagera-mnav > li > a,
  #global-nav .kumagera-mnav > li > .kumagera-mnav-dd > summary {
    display: block;
    padding: 15px;
    font-size: 1.4rem;
    color: #333;
    text-decoration: none;
    list-style: none;
    cursor: pointer;
  }
  /* 「商品」などの開閉サマリー：右端に開閉マーク */
  #global-nav .kumagera-mnav-dd > summary {
    position: relative;
  }
  #global-nav .kumagera-mnav-dd > summary::-webkit-details-marker { display: none; }
  #global-nav .kumagera-mnav-dd > summary::after {
    content: "\e93b";
    font-family: "icomoon";
    font-size: 11px;
    color: #595335;
    position: absolute;
    top: 50%;
    right: 18px;
    transform: translateY(-50%) rotate(90deg);
    transition: transform 0.2s ease;
  }
  #global-nav .kumagera-mnav-dd[open] > summary::after { transform: translateY(-50%) rotate(-90deg); }
  /* プルダウンの中身（カテゴリ一覧） */
  #global-nav .kumagera-mnav .kumagera-msub { margin: 0; padding: 0; background: #faf9f5; }
  #global-nav .kumagera-mnav .kumagera-msub > li { border-top: 1px solid #eee; }
  #global-nav .kumagera-mnav .kumagera-msub > li > a {
    display: block;
    padding: 12px 15px 12px 28px;
    font-size: 1.3rem;
    color: #333;
    text-decoration: none;
  }
  /* さらに下の階層（デザイナーの子カテゴリなど） */
  #global-nav .kumagera-mnav .kumagera-msub .menu-open { margin: 0; padding: 0; }
  #global-nav .kumagera-mnav .kumagera-msub .menu-open li { border-top: 1px dotted #e5e5e5; }
  #global-nav .kumagera-mnav .kumagera-msub .menu-open li a {
    display: block;
    padding: 10px 15px 10px 42px;
    font-size: 1.25rem;
    color: #666;
    text-decoration: none;
  }
  #global-nav .kumagera-mnav a:hover,
  #global-nav .kumagera-mnav summary:hover { background: #f4f1e6; }
}

/* ===== V26 動物バナー（トップ・ABOUT共通）＋工房のなかまたちページ（/fr/2） =====
   ★選択子を親クラス付き（.kumagera-ani ○○ / .kumagera-anibnr ○○）にしています。
     フリーページでは基本CSSの .wysiwyg-data div / p / h3 が
     クラス1個の指定より強いため、親クラスを付けて優先度を上げる必要があります。
     ここを単独クラスに戻すと、ABOUTのバナーと動物ページが崩れます。 ===== */

/* ============================================================================
   V26-1 動物バナー（トップページ・ABOUTページ 共通）
   ポラロイド5枚を扇状に配置。写真の位置はCSSで1枚ずつ指定しています。
   ============================================================================ */
.kumagera-anibnr {
  position:relative; margin:0 calc(50% - 50vw); background:#fff;
  padding:56px 20px 60px; text-align:center; overflow:hidden;
}
.kumagera-anibnr:after {
  content:""; position:absolute; right:-90px; top:-90px; width:320px; height:320px;
  background:radial-gradient(circle,#f4f1e6 0%,rgba(244,241,230,0) 70%);
}
.kumagera-anibnr .kumagera-anibnr-in {
  max-width:1100px; margin:0 auto; position:relative; text-align:center; font-size:0;
}
.kumagera-anibnr .kumagera-anibnr-text {
  display:inline-block; vertical-align:middle; text-align:left;
  width:270px; margin-right:14px;
}
.kumagera-anibnr .kumagera-anibnr-en {
  font-size:1.1rem; letter-spacing:.3em; color:#8a8874 !important; margin:0 0 12px;
}
.kumagera-anibnr .kumagera-anibnr-title {
  font-family:"Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight:normal; font-size:3rem; line-height:1.42; color:#595335 !important;
  margin:0 0 10px; word-break:keep-all;
}
.kumagera-anibnr .kumagera-anibnr-lead {
  font-size:1.25rem; line-height:1.9; color:#8a8874 !important; margin:0 0 22px;
}
.kumagera-anibnr .kumagera-anibnr-btnwrap { margin:0; }
.kumagera-anibnr .kumagera-anibnr-btn {
  display:inline-block; border:1px solid #595335; color:#595335 !important;
  font-size:1.3rem; letter-spacing:.15em; padding:11px 30px; text-decoration:none;
  transition:background .2s,color .2s;
}
.kumagera-anibnr .kumagera-anibnr-btn:hover { background:#595335; color:#fff !important; }
.kumagera-anibnr .kumagera-anibnr-photos {
  display:inline-block; vertical-align:middle; position:relative;
  width:790px; height:300px;
}
.kumagera-anibnr .kumagera-anibnr-pola {
  position:absolute; background:#fff; padding:7px 7px 22px;
  box-shadow:0 8px 22px rgba(74,70,48,.18);
}
.kumagera-anibnr .kumagera-anibnr-img {
  display:block; width:140px; height:140px; background-color:#e7e2d2;
  object-fit:cover;
}
.kumagera-anibnr .kumagera-anibnr-cap {
  display:block; text-align:center; margin:8px 0 0; font-size:1.2rem;
  color:#595335 !important;
  font-family:"Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
}
/* マスキングテープ風の飾り（CSSだけなので編集画面で消えません） */
.kumagera-anibnr .kumagera-anibnr-pola.kanb-tape:before {
  content:""; position:absolute; top:-9px; left:50%; margin-left:-24px;
  width:48px; height:17px; background:rgba(159,151,110,.42);
  border-left:1px dashed rgba(255,255,255,.5);
  border-right:1px dashed rgba(255,255,255,.5); transform:rotate(-2deg);
}
.kumagera-anibnr .kanb-p1 { left:0;     top:62px; transform:rotate(-8deg); }
.kumagera-anibnr .kanb-p2 { left:142px; top:6px;  transform:rotate(5deg); }
.kumagera-anibnr .kanb-p3 { left:294px; top:50px; transform:rotate(-3deg); z-index:2; }
.kumagera-anibnr .kanb-p3 .kumagera-anibnr-img { width:178px; height:178px; }
.kumagera-anibnr .kanb-p4 { left:488px; top:2px;  transform:rotate(7deg); }
.kumagera-anibnr .kanb-p5 { left:614px; top:66px; transform:rotate(-6deg); }
@media screen and (max-width:1180px) { .kumagera-anibnr .kumagera-anibnr-text { display:block; width:auto; text-align:center; margin:0 0 22px; } .kumagera-anibnr .kumagera-anibnr-photos { width:100%; max-width:790px; }
}
@media screen and (max-width:700px) { .kumagera-anibnr { padding:38px 16px 42px; } .kumagera-anibnr .kumagera-anibnr-title { font-size:2.6rem; } .kumagera-anibnr .kumagera-anibnr-title br { display:none; } .kumagera-anibnr .kumagera-anibnr-photos { height:auto; } .kumagera-anibnr .kumagera-anibnr-pola { position:static; display:inline-block; vertical-align:top; margin:6px; } .kumagera-anibnr .kumagera-anibnr-img { width:96px !important; height:96px !important; }
}

/* ============================================================================
   V26-2 工房のなかまたち ページ（/fr/2）
   ※HTMLは div と p/h2-h4/a/img/span/br のみ。レイアウトはすべてCSS側で行うので
     フリーページの編集画面で崩れません。
   ============================================================================ */
.kumagera-ani { text-align:left; }

/* ---- ヒーロー（濃いオリーブの帯） ---- */
.kumagera-ani .kumagera-ani-hero {
  position:relative; margin:0 calc(50% - 50vw); background-color:#4a4630;
  background-size:cover; background-position:center;
  padding:58px 20px 156px; text-align:center;
}
/* 写真の上に薄い暗幕（文字を読みやすく） */
.kumagera-ani .kumagera-ani-hero:before {
  content:""; position:absolute; top:0; right:0; bottom:0; left:0;
  background:rgba(48,45,30,.52);
}
.kumagera-ani .kumagera-ani-hero > * { position:relative; z-index:1; }
.kumagera-ani .kumagera-ani-hero-en {
  font-size:1.1rem; letter-spacing:.35em; color:#c4bfa8 !important; margin:0 0 12px;
}
.kumagera-ani .kumagera-ani-hero h2 {
  font-family:"Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight:normal; font-size:3.2rem; line-height:1.4; color:#f4f1e6 !important;
  margin:0 0 16px; word-break:keep-all; border:none; padding:0; background:none;
}
.kumagera-ani .kumagera-ani-hero-lead {
  font-size:1.4rem; line-height:1.95; color:#c9c4b0 !important; margin:0 auto; max-width:560px;
}

/* ---- 散らしギャラリー（ポラロイド9枚） ----
   高さは写真の実寸から逆算しているので、上下の文章と重なりません。 */
.kumagera-ani .kumagera-ani-galwrap { margin:0 calc(50% - 50vw); background:#fffdf8; padding:0 20px; }
.kumagera-ani .kumagera-ani-gal {
  width:1040px; max-width:100%; margin:-58px auto 0; position:relative; height:566px;
}
.kumagera-ani .kumagera-ani-pola {
  position:absolute; background:#fff; padding:9px 9px 20px;
  box-shadow:0 8px 22px rgba(74,70,48,.18);
}
.kumagera-ani .kumagera-ani-pola.kag-tape:before {
  content:""; position:absolute; top:-9px; left:50%; margin-left:-24px;
  width:48px; height:17px; background:rgba(159,151,110,.42);
  border-left:1px dashed rgba(255,255,255,.5);
  border-right:1px dashed rgba(255,255,255,.5); transform:rotate(-2deg);
}
.kumagera-ani .kumagera-ani-img {
  display:block; width:180px; height:180px; background-color:#e7e2d2; object-fit:cover;
}
/* 上段5枚 */
.kumagera-ani .kag1 { left:0;    top:50px; transform:rotate(-7deg); }
.kumagera-ani .kag2 { left:190px; top:0;    transform:rotate(4deg); }
.kumagera-ani .kag3 { left:380px; top:44px; transform:rotate(-3deg); z-index:2; }
.kumagera-ani .kag3 .kumagera-ani-img { width:210px; height:210px; }
.kumagera-ani .kag4 { left:630px; top:0;    transform:rotate(8deg); }
.kumagera-ani .kag9 { left:830px; top:56px; transform:rotate(-5deg); }
.kumagera-ani .kag9 .kumagera-ani-img { width:150px; height:150px; }
/* 中段4枚（ここが以前スカスカだった部分です） */
.kumagera-ani .kag7 { left:110px; top:300px; transform:rotate(-9deg); }
.kumagera-ani .kag7 .kumagera-ani-img { width:150px; height:150px; }
.kumagera-ani .kag5 { left:290px; top:316px; transform:rotate(5deg); }
.kumagera-ani .kag8 { left:500px; top:330px; transform:rotate(6deg); z-index:2; }
.kumagera-ani .kag6 { left:720px; top:306px; transform:rotate(-6deg); }
.kumagera-ani .kumagera-ani-galcap {
  text-align:center; font-size:1.35rem; color:#8a8874 !important; line-height:2;
  margin:34px 20px 0;
}
@media screen and (max-width:1100px) { .kumagera-ani .kumagera-ani-hero { padding-bottom:130px; } .kumagera-ani .kumagera-ani-gal { width:auto; height:auto; margin-top:-52px; font-size:0; text-align:center; } .kumagera-ani .kumagera-ani-pola { position:static; display:inline-block; vertical-align:top; margin:7px; } .kumagera-ani .kumagera-ani-img { width:126px !important; height:126px !important; }
}

/* ---- セクション共通の見出し ---- */
.kumagera-ani .kumagera-ani-sec { max-width:940px; margin:0 auto; padding:64px 20px 0; }
.kumagera-ani .kumagera-ani-en {
  font-size:1.05rem; letter-spacing:.3em; color:#a9a692 !important; margin:0 0 8px;
  text-align:center;
}
.kumagera-ani .kumagera-ani-h {
  font-family:"Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight:normal; font-size:2.4rem; color:#595335 !important; margin:0;
  text-align:center; word-break:keep-all; border:none; padding:0; background:none;
}
.kumagera-ani .kumagera-ani-h:after {
  content:""; display:block; width:42px; height:1px; background:#c9c4a8; margin:16px auto 0;
}
.kumagera-ani .kumagera-ani-lead {
  font-size:1.35rem; color:#8a8874 !important; line-height:2; margin:18px auto 0;
  max-width:620px; text-align:center;
}

/* ---- ニワトリたち（カード5枚） ---- */
.kumagera-ani .kumagera-hens { max-width:880px; margin:36px auto 0; text-align:center; font-size:0; }
.kumagera-ani .kumagera-hen {
  display:inline-block; vertical-align:top; width:264px; margin:0 8px 24px;
  background:#fff; border:1px solid #ebe7d8; border-radius:10px; overflow:hidden;
  text-align:left; box-shadow:0 4px 14px rgba(74,70,48,.06);
}
.kumagera-ani .kumagera-hen-img {
  display:block; width:100%; height:180px; background-color:#e7e2d2; object-fit:cover;
}
.kumagera-ani .kumagera-hen-body { padding:18px 18px 20px; }
.kumagera-ani .kumagera-hen-name {
  font-family:"Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-size:1.9rem; color:#595335 !important; margin:0; font-weight:normal; word-break:keep-all;
}
.kumagera-ani .kumagera-hen-en { font-size:1rem; letter-spacing:.14em; color:#a9a692; margin-left:8px; }
.kumagera-ani .kumagera-hen-tags { margin:12px 0 0; font-size:0; }
.kumagera-ani .kumagera-hen-tag {
  display:inline-block; font-size:1.1rem; color:#6f6c5a; background:#f4f1e6;
  border-radius:12px; padding:4px 11px; margin:0 5px 5px 0;
}
.kumagera-ani .kumagera-hen-desc {
  font-size:1.25rem; color:#4a4630 !important; line-height:1.8; margin:12px 0 0;
  padding-top:12px; border-top:1px dotted #e0dccb;
}
/* 顔が上にある写真は、中央ではなく上を基準に切り抜く */
.kumagera-ani .kumagera-hen-top .kumagera-hen-img { object-position: top; }
@media screen and (max-width:900px) { .kumagera-ani .kumagera-hen { width:46%; min-width:240px; }
}
@media screen and (max-width:560px) { .kumagera-ani .kumagera-hen { width:100%; max-width:320px; margin:0 0 20px; }
}

/* ---- ニワトリと暮らすということ（クリームの帯・写真と文章の交互） ---- */
.kumagera-ani .kumagera-ani-live {
  margin:60px calc(50% - 50vw) 0; background:#f4f1e6; padding:60px 20px 64px;
}
.kumagera-ani .kumagera-ani-live-in { max-width:900px; margin:0 auto; }
.kumagera-ani .kumagera-live-row { max-width:840px; margin:0 auto 26px; }
.kumagera-ani .kumagera-live-row:after { content:""; display:block; clear:both; }
.kumagera-ani .kumagera-live-row:last-child { margin-bottom:0; }
.kumagera-ani .kumagera-live-img {
  display:block; width:100%; height:230px; background-color:#e7e2d2; object-fit:cover;
  border-radius:8px; margin-bottom:16px;
}
.kumagera-ani .kumagera-live-txt h4 {
  font-family:"Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight:normal; font-size:1.7rem; color:#595335 !important; margin:0 0 10px;
  border:none; padding:0; background:none;
}
.kumagera-ani .kumagera-live-txt p { font-size:1.35rem; line-height:2.05; color:#4a4630 !important; margin:0; }
@media screen and (min-width:768px) { .kumagera-ani .kumagera-live-row .kumagera-live-imgbox { float:left; width:46%; } .kumagera-ani .kumagera-live-row .kumagera-live-txt { float:right; width:48%; padding-top:26px; } .kumagera-ani .kumagera-live-row.kumagera-live-rev .kumagera-live-imgbox { float:right; } .kumagera-ani .kumagera-live-row.kumagera-live-rev .kumagera-live-txt { float:left; } .kumagera-ani .kumagera-live-img { margin-bottom:0; }
}

/* ---- ときどき来る動物たち ---- */
.kumagera-ani .kumagera-ani-visit { max-width:940px; margin:0 auto; padding:64px 20px 78px; }
.kumagera-ani .kumagera-visit-photos { text-align:center; font-size:0; margin-top:40px; }
.kumagera-ani .kumagera-vpola {
  display:inline-block; vertical-align:top; background:#fff; padding:10px 10px 24px;
  box-shadow:0 8px 22px rgba(74,70,48,.18); margin:0 16px 18px; position:relative;
}
.kumagera-ani .kumagera-vpola.kag-tape:before {
  content:""; position:absolute; top:-9px; left:50%; margin-left:-24px;
  width:48px; height:17px; background:rgba(159,151,110,.42);
  border-left:1px dashed rgba(255,255,255,.5);
  border-right:1px dashed rgba(255,255,255,.5); transform:rotate(-2deg);
}
.kumagera-ani .kumagera-v-img {
  display:block; width:210px; height:158px; background-color:#e7e2d2; object-fit:cover;
}
.kumagera-ani .kumagera-v-name {
  display:block; text-align:center; font-size:1.3rem; color:#595335 !important; margin:9px 0 2px;
  font-family:"Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
}
.kumagera-ani .kumagera-v-note { display:block; text-align:center; font-size:1.05rem; color:#a09d88 !important; margin:0; }
.kumagera-ani .kv1 { transform:rotate(-4deg); }
.kumagera-ani .kv2 { transform:rotate(3deg); }
.kumagera-ani .kv3 { transform:rotate(-2deg); }
.kumagera-ani .kv4 { transform:rotate(4deg); }
.kumagera-ani .kv5 { transform:rotate(-3deg); }
/* 説明文が長い場合も崩れないように幅を固定 */
/* ポラロイドの幅を写真に合わせる（右側に白い余白が出ないように） */
.kumagera-ani .kumagera-vpola { width:230px; }
.kumagera-ani .kumagera-v-name,
.kumagera-ani .kumagera-v-note { width:auto; }
.kumagera-ani .kumagera-v-note { line-height:1.75; }
@media screen and (max-width:700px) { .kumagera-ani .kumagera-vpola { margin:0 8px 16px; width:170px; } .kumagera-ani .kumagera-v-img { width:150px; height:114px; }
}

/* ============================ V26 ここまで ============================ */

/* ---- フリーページ対策の補強 ---- */
.kumagera-anibnr .kumagera-anibnr-pola img { display:block; width:140px; height:140px; object-fit:cover; background-color:#e7e2d2; }
.kumagera-anibnr .kanb-p3 img { width:178px; height:178px; }
@media screen and (max-width:700px){
  .kumagera-anibnr .kumagera-anibnr-pola img { width:104px !important; height:104px !important; }
}

/* =========================================================
   V27 商品説明の「ポイント」欄（環境配慮・地域配慮のまとめ）
   ・葉っぱのマークとアイコンはCSSで描画。画像の用意は不要
   ・項目は2つでも3つでも自動で幅が変わります
   ========================================================= */
.kumagera-pt { margin: 34px 0 0; max-width: 760px; text-align: left; background: #f4f1e6; padding: 28px 26px 22px; }
.kumagera-pt .kumagera-pt-head {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-size: 2.2rem; letter-spacing: .14em; color: #595335 !important; margin: 0 0 20px;
  padding: 0 0 10px; border-bottom: 2px solid #595335; display: inline-block;
}
.kumagera-pt .kumagera-pt-leaf {
  display: inline-block; width: 22px; height: 22px; vertical-align: -4px; margin-right: 8px;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23595335" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"><path d="M12 21V11"/><path d="M12 11C12 11 5 11 4 6c-1-5 4-4 5-2s3 7 3 7z"/><path d="M12 11c0 0 7 0 8-5 1-5-4-4-5-2s-3 7-3 7z"/></svg>') center/contain no-repeat;
}
.kumagera-pt .kumagera-pt-items { font-size: 0; margin: 0 -1%; }
.kumagera-pt .kumagera-pt-item {
  display: inline-block; vertical-align: top; width: 48%; margin: 0 1% 8px;
  background: #fffdf8; padding: 18px 16px 16px;
}
/* 項目が3つのときは3列に */
.kumagera-pt .kumagera-pt-item:first-child:nth-last-child(3),
.kumagera-pt .kumagera-pt-item:first-child:nth-last-child(3) ~ .kumagera-pt-item { width: 31.3%; }
.kumagera-pt .kumagera-pt-item h4 {
  font-family: "Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight: normal; font-size: 1.55rem; color: #595335 !important; margin: 0 0 10px; line-height: 1.5;
  letter-spacing: .04em; border: none; padding: 0; background: none;
}
.kumagera-pt .kumagera-pt-item p { font-size: 1.2rem; line-height: 1.85; color: #6f6c5a !important; margin: 0; }
.kumagera-pt .kumagera-pt-ic {
  display: block; width: 30px; height: 30px; margin: 0 0 10px;
  background-position: center; background-repeat: no-repeat; background-size: contain;
}
.kumagera-pt .kumagera-pt-ic-wood { background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23595335" stroke-width="1.4" stroke-linecap="round"><circle cx="12" cy="12" r="9"/><circle cx="12" cy="12" r="5.5"/><circle cx="12" cy="12" r="2"/></svg>'); }
.kumagera-pt .kumagera-pt-ic-place { background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23595335" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"><path d="M2 19l6-9 4 5.5 3-4L22 19z"/><circle cx="17" cy="6" r="2.4"/></svg>'); }
.kumagera-pt .kumagera-pt-ic-noplastic { background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23595335" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"><path d="M4 6h16M6 6l1.5 14h9L18 6M9.5 6V4a1 1 0 0 1 1-1h3a1 1 0 0 1 1 1v2"/><path d="M9 11l6 6M15 11l-6 6"/></svg>'); }
.kumagera-pt .kumagera-pt-ic-paper { background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23595335" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"><path d="M7.5 5.5l2.2-3.2 2.2 3.2"/><path d="M9.7 2.3v6"/><path d="M19 12.5l1.4 3.6-3.8.4"/><path d="M20.4 16.1l-5.2 2.6"/><path d="M4.6 13.2L2.6 16l3.4 1.7"/><path d="M2.6 16l5.6 2.8"/><path d="M9.7 8.3L5.2 15.4h9.4L10.1 8.3z"/></svg>'); }
.kumagera-pt .kumagera-pt-ic-energy { background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23595335" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"><path d="M12 3v4M5.6 5.6l2.8 2.8M3 12h4M18.4 5.6l-2.8 2.8M21 12h-4M12 21a5 5 0 0 0 5-5c0-2.8-5-8-5-8s-5 5.2-5 8a5 5 0 0 0 5 5z"/></svg>'); }
@media screen and (max-width: 700px) {
  .kumagera-pt { padding: 24px 18px 18px; }
  .kumagera-pt .kumagera-pt-item,
  .kumagera-pt .kumagera-pt-item:first-child:nth-last-child(3),
  .kumagera-pt .kumagera-pt-item:first-child:nth-last-child(3) ~ .kumagera-pt-item { width: 100%; margin: 0 0 10px; }
}

/* =========================================================
   V28 ①トップのInstagram帯／②動物ページの締め／③ABOUTのAI宣言／④トップのAIバナー
   ・手のマークとInstagramのマークはCSSで描画。画像の用意は不要
   ========================================================= */

/* ---- ① トップページ Instagram帯（NEWSの下） ---- */
.kumagera-igband { margin:0 calc(50% - 50vw); background:#4a4630; padding:56px 20px 60px; text-align:center; }
.kumagera-igband .kumagera-igband-mark { margin:0 0 16px; }
.kumagera-igband .kumagera-igband-ig {
  display:inline-block; width:26px; height:26px; border:1.6px solid #c4bfa8;
  border-radius:8px; position:relative; vertical-align:middle;
}
.kumagera-igband .kumagera-igband-ig:before {
  content:""; position:absolute; top:5px; left:5px; width:12px; height:12px;
  border:1.6px solid #c4bfa8; border-radius:50%;
}
.kumagera-igband .kumagera-igband-ig:after {
  content:""; position:absolute; top:4px; right:4px; width:3px; height:3px;
  background:#c4bfa8; border-radius:50%;
}
.kumagera-igband .kumagera-igband-en { font-size:1.1rem; letter-spacing:.3em; color:#c4bfa8; margin:0 0 8px; }
.kumagera-igband .kumagera-igband-handle {
  font-family:"Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-size:2.2rem; color:#f4f1e6; margin:0 0 12px;
}
.kumagera-igband .kumagera-igband-lead { font-size:1.3rem; line-height:1.9; color:#b8b39c; margin:0 0 30px; }
.kumagera-igband .kumagera-igband-btnwrap { margin:0; }
.kumagera-igband .kumagera-igband-btn {
  display:inline-block; border:1px solid #c4bfa8; color:#f4f1e6; font-size:1.35rem;
  letter-spacing:.15em; padding:13px 34px; text-decoration:none;
  transition:background .2s,color .2s;
}
.kumagera-igband .kumagera-igband-btn:hover { background:#f4f1e6; color:#4a4630; }

/* ---- ② 工房のなかまたちページ 最後のご案内（クリームの帯＋ボタン2つ） ---- */
.kumagera-ani .kumagera-ani-cta {
  margin:0 calc(50% - 50vw); background:#f4f1e6; padding:52px 20px 56px; text-align:center;
}
.kumagera-ani .kumagera-ani-cta-lead { font-size:1.45rem; color:#4a4630 !important; margin:0 0 24px; }
.kumagera-ani .kumagera-ani-cta-btnwrap { margin:0; font-size:0; }
.kumagera-ani .kumagera-ani-cta-btn {
  display:inline-block; background:#595335; border:1px solid #595335; color:#f2efe4 !important;
  font-size:1.35rem; letter-spacing:.16em; padding:13px 34px; text-decoration:none;
  margin:0 5px 10px; transition:background .2s,color .2s;
}
.kumagera-ani .kumagera-ani-cta-btn:hover { background:#4a4630; color:#f2efe4 !important; }
.kumagera-ani .kumagera-ani-cta-btn2 {
  display:inline-block; background:transparent; border:1px solid #595335; color:#595335 !important;
  font-size:1.35rem; letter-spacing:.16em; padding:13px 34px; text-decoration:none;
  margin:0 5px 10px; transition:background .2s,color .2s;
}
.kumagera-ani .kumagera-ani-cta-btn2:hover { background:#595335; color:#fff !important; }

/* ---- ③ ABOUTページ「商品デザインにはAIを使いません」＋デザイナー紹介 ---- */
.kumagera-about .kumagera-noai { padding:60px 0 56px; text-align:center; }
.kumagera-about .kumagera-noai-box { background:#f4f1e6; padding:40px 24px 34px; margin:0 0 8px; }
.kumagera-about .kumagera-noai-mark { margin:0 0 14px; }
/* 手のマーク（③と④で共通・CSSで描画） */
.kumagera-about .kumagera-noai-hand,
.kumagera-aibnr .kumagera-aibnr-hand {
  display:inline-block; width:36px; height:36px; background:center/contain no-repeat;
  background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23595335" stroke-width="1.3" stroke-linecap="round" stroke-linejoin="round"><path d="M9 11V4.8a1.3 1.3 0 0 1 2.6 0V11"/><path d="M11.6 10.6V3.6a1.3 1.3 0 0 1 2.6 0V11"/><path d="M14.2 11V5.6a1.3 1.3 0 0 1 2.6 0V13"/><path d="M16.8 9.6a1.3 1.3 0 0 1 2.6 0v5.2c0 3.4-2.6 6.2-6 6.2h-1.2c-3.4 0-4.8-1.6-6.4-4.2l-2-3.4a1.3 1.3 0 0 1 2.1-1.6L9 15"/></svg>');
}
.kumagera-about .kumagera-noai-en { font-size:1.15rem; letter-spacing:.32em; color:#8a8874 !important; margin:0 0 12px; }
.kumagera-about .kumagera-noai-ttl {
  font-family:"Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight:normal; font-size:2.6rem; letter-spacing:.1em; line-height:1.5;
  color:#595335 !important; margin:0; word-break:keep-all;
}
.kumagera-about .kumagera-noai-ttl:after {
  content:""; display:block; width:42px; height:1px; background:#c9c4a8; margin:20px auto 24px;
}
.kumagera-about .kumagera-noai-lead {
  font-size:1.4rem; line-height:2.05; color:#4a4630 !important; max-width:640px; margin:0 auto 10px;
}
.kumagera-about .kumagera-noai-min {
  font-size:1.1rem; line-height:1.8; color:#a09d88 !important; max-width:640px; margin:0 auto;
}
.kumagera-about .kumagera-noai-sub { font-size:1.15rem; letter-spacing:.3em; color:#8a8874 !important; margin:46px 0 6px; }
.kumagera-about .kumagera-noai-subttl {
  font-family:"Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight:normal; font-size:1.9rem; color:#595335 !important; margin:0 0 30px;
}
.kumagera-about .kumagera-dzs { font-size:0; margin:0 auto; max-width:1000px; }
.kumagera-about .kumagera-dz {
  display:inline-block; vertical-align:top; width:33.3%; padding:0 22px; margin:0 0 20px;
  text-align:center; text-decoration:none; color:inherit; position:relative;
}
.kumagera-about .kumagera-dz + .kumagera-dz:before {
  content:""; position:absolute; left:0; top:8px; bottom:8px; width:1px; background:#e8e4d6;
}
.kumagera-about .kumagera-dz-ph {
  display:block; width:124px; height:124px; margin:0 auto 14px; border-radius:50%;
  background:#eceadd center/cover no-repeat;
}
.kumagera-about .kumagera-dz-name {
  display:block;
  font-family:"Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-size:1.75rem; color:#595335 !important; letter-spacing:.06em; line-height:1.5;
}
.kumagera-about .kumagera-dz-en { display:block; font-size:1.05rem; letter-spacing:.12em; color:#a9a692 !important; margin:4px 0 0; }
.kumagera-about .kumagera-dz-role { display:block; font-size:1.15rem; color:#8a8874 !important; margin:8px 0 0; }
.kumagera-about .kumagera-dz-desc { display:block; font-size:1.2rem; line-height:1.9; color:#6f6c5a !important; margin:12px 0 0; text-align:center; }
.kumagera-about .kumagera-dz-go { display:block; font-size:1.15rem; color:#8a8874 !important; text-decoration:underline; margin:12px 0 0; }
.kumagera-about a.kumagera-dz:hover .kumagera-dz-name { text-decoration:underline; }
.kumagera-about .kumagera-noai-note { font-size:1.2rem; color:#8a8874 !important; margin:18px 0 0; }
@media screen and (max-width:760px) {
  .kumagera-about .kumagera-noai-ttl { font-size:2rem; letter-spacing:.06em; }
  .kumagera-about .kumagera-noai-box { padding:32px 18px 28px; }
  .kumagera-about .kumagera-dz { display:block; width:100%; padding:0 0 18px; }
  .kumagera-about .kumagera-dz + .kumagera-dz:before { display:none; }
}

/* ---- ④ トップページ AIバナー（商品ラインナップの下・工房のなかまたちの上） ---- */
.kumagera-aibnr { margin:0 calc(50% - 50vw); background:#f4f1e6; padding:56px 20px 60px; text-align:center; }
.kumagera-aibnr .kumagera-aibnr-in {
  max-width:1000px; margin:0 auto; font-size:0;
  background:#fffdf8; padding:44px 30px; box-shadow:0 10px 30px rgba(74,70,48,.10);
}
.kumagera-aibnr .kumagera-aibnr-text { display:inline-block; vertical-align:middle; text-align:left; max-width:480px; margin:0 24px; }
.kumagera-aibnr .kumagera-aibnr-mark { margin:0 0 14px; }
.kumagera-aibnr .kumagera-aibnr-hand { width:34px; height:34px; }
.kumagera-aibnr .kumagera-aibnr-en { font-size:1.15rem; letter-spacing:.3em; color:#8a8874; margin:0 0 12px; }
.kumagera-aibnr .kumagera-aibnr-ttl {
  font-family:"Sawarabi Mincho","游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN",serif;
  font-weight:normal; font-size:3rem; line-height:1.45; letter-spacing:.04em;
  color:#595335; margin:0 0 14px; word-break:keep-all;
}
.kumagera-aibnr .kumagera-aibnr-lead { font-size:1.3rem; line-height:1.95; color:#6f6c5a; margin:0 0 24px; }
.kumagera-aibnr .kumagera-aibnr-btnwrap { margin:0; }
.kumagera-aibnr .kumagera-aibnr-btn {
  display:inline-block; background:#595335; border:1px solid #595335; color:#f2efe4;
  font-size:1.35rem; letter-spacing:.15em; padding:14px 34px; text-decoration:none;
  transition:background .2s,color .2s;
}
.kumagera-aibnr .kumagera-aibnr-btn:hover { background:#4a4630; color:#f2efe4; }
.kumagera-aibnr .kumagera-aibnr-faces { display:inline-block; vertical-align:middle; font-size:0; margin:0 24px; }
.kumagera-aibnr .kumagera-aibnr-face {
  display:inline-block; width:110px; height:110px; border-radius:50%;
  background:#dcd8c6 center/cover no-repeat; border:3px solid #fffdf8; margin-left:-20px;
}
.kumagera-aibnr .kumagera-aibnr-face:first-child { margin-left:0; }
@media screen and (max-width:900px) {
  .kumagera-aibnr .kumagera-aibnr-in { padding:34px 20px 32px; }
  .kumagera-aibnr .kumagera-aibnr-text { display:block; text-align:center; margin:0 0 26px; max-width:none; }
  .kumagera-aibnr .kumagera-aibnr-ttl { font-size:2.3rem; }
  .kumagera-aibnr .kumagera-aibnr-face { width:86px; height:86px; margin-left:-16px; }
}
@media screen and (max-width:700px) {
  .kumagera-aibnr { padding:40px 16px 44px; }
  .kumagera-aibnr .kumagera-aibnr-ttl { font-size:2.1rem; }
  .kumagera-aibnr .kumagera-aibnr-face { width:78px; height:78px; margin-left:-14px; }
}
/* ---- 動物バナー：スマホで右上の飾り（円形グラデーション）を消す ---- */
@media screen and (max-width:860px) {
  .kumagera-anibnr:after { display:none; }
}
/* ============================ V28 ここまで ============================ */

/* ===== V29 商品ページ：シェアボタン ===== */
/* ---- シェアボタン：黒と青の箱をやめて、サイトに合わせた細枠ボタンに ---- */
#item-detail .item-detail-share { margin: 20px 0 0; }
#item-detail .item-detail-share ul {
  display: flex; justify-content: flex-end; gap: 10px; list-style: none; margin: 0; padding: 0;
}
#item-detail .item-detail-share li {
  display: block; width: auto; height: auto; line-height: 1;
  background: none; border-radius: 0; margin: 0;
}
#item-detail .item-detail-share li a {
  display: inline-block; border: 1px solid #ddd8c6; background: #fffdf8; color: #8a8874;
  font-size: 1.15rem; letter-spacing: .06em; padding: 8px 16px; text-decoration: none;
  border-radius: 2px; transition: background .2s, color .2s, border-color .2s;
}
#item-detail .item-detail-share li a:hover {
  background: #595335; border-color: #595335; color: #f4f1e6; text-decoration: none;
}
/* ============================ V29 ここまで ============================ */

/* ===== V30 商品ページ：ギフト包装と環境配慮を外して、配送のご案内を1行の帯に
   ・HTMLを触らずCSSだけで2つ目・3つ目を隠しています
   ・あとでHTML側の <li> を消しても、そのまま同じ見た目になります ===== */
ul.kumagera-item-trust { gap: 0; }
ul.kumagera-item-trust li:nth-child(2),
ul.kumagera-item-trust li:nth-child(3) { display: none; }
ul.kumagera-item-trust li:first-child {
  display: flex; align-items: center; gap: 10px; flex: 1 1 100%;
  text-align: left; padding: 13px 16px; font-size: 1.25rem; line-height: 1.6;
}
ul.kumagera-item-trust li:first-child:before {
  content: ""; flex: 0 0 22px; height: 22px; background: center/contain no-repeat;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="%23595335" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round"><path d="M1.5 6.5h13v11h-13z"/><path d="M14.5 10h4l3 3.5V17.5h-7"/><circle cx="6" cy="18.5" r="1.8"/><circle cx="18" cy="18.5" r="1.8"/></svg>');
}
ul.kumagera-item-trust li:first-child br { display: none; }
ul.kumagera-item-trust li:first-child a {
  margin-left: auto; white-space: nowrap; font-size: 1.2rem; color: #595335; text-decoration: underline;
}
ul.kumagera-item-trust li:first-child a:after { content: "\3000\2192"; text-decoration: none; }
#item-detail .item-detail-share li a i { color: inherit; margin-right: 4px; }
/* ============================ V30 ここまで ============================ */
