@charset "euc-jp";

body {
&#160; background-color: #FFFFFF;
&#160; background-image: url(https://img.shop-pro.jp/tmpl_img/81/bgimage.png);
&#160; color: #333;
&#160; -webkit-font-smoothing: antialiased;
}

a {
&#160; color: #333;
}
a:hover {
&#160; color: #ccc;
&#160; text-decoration: none;
}

.btn {
&#160; border-radius: 0;
}

ul, ol, form, p {
&#160; margin: 0;
}

/*
&#160;* layout
&#160;*/
&#160; .container {
&#160; width: 80%;
&#160; margin: 0 auto;
}


/* header */
.promo__section {
&#160; background-color: #FFFFFF;&#160; /* bodyと同じ背景色 */
&#160; background-image: url(https://img.shop-pro.jp/tmpl_img/81/bgimage.png);&#160; /* bodyと同じ背景画像 */
&#160; width: 100%;
&#160; min-height: 49px;
}

.promo {
&#160; background: #FFFFFF;
}

.promo__text {
&#160; &#160; display: flex;
&#160; &#160; flex-direction: row;
&#160; &#160; flex-wrap: nowrap;
&#160; &#160; justify-content: space-around;
&#160; &#160; color: #333;
&#160; &#160; font-weight: bold;
&#160; &#160; background: #FFFFFF;
&#160; &#160; font-size: 16px;
&#160; &#160; width: 365px;
&#160; &#160; line-height: 1.5;
&#160; &#160; list-style: none;
}
&#160;&#160;
.header__section {
&#160; text-align: center;
&#160; margin-bottom: 60px;
}

.header-search {
&#160; position: relative;
&#160; margin-top: 9px;/* 検索ボックス位置上下 */
&#160; width: 310px;
}
.header-search i {
&#160; position: absolute;
&#160; top: 14px;/* 検索窓画像上下位置 */
&#160; left: 10px;/* 検索窓画像左右位置 */
}

.header-search__box {
&#160; width: 180px;
&#160; height: 10px;
&#160; padding: 15px 11px 17px 51px;/* 検索ボックス位置 */
&#160; font-size: 1.2rem;
&#160; background: none;
&#160; border: 1px solid #999;
&#160; border-radius: 3px;/* 検索ボックス角 */
&#160; color: #333;
}
.header-search__box:focus {
&#160; padding: 14px 10px 16px 50px;
&#160; background: #fff;
&#160; border: 1px solid #e5e5e5;
}

.header-tools {
&#160; float: right;
&#160; margin: 25px 0 0;
&#160; width: 465px;
&#160; text-align: right;
}

.header-tools__unit {
&#160; display: inline;
&#160; margin-left: 45px;
&#160; line-height: 1.4;
}

.header-tools__unit-cart {
&#160; margin-left: 21px;
}

.header-tools__btn {
&#160; position: relative;
&#160; padding: 7px 15px 7px 34px;
&#160; font-size: 12px;
}
.header-tools__btn i {
&#160; position: absolute;
&#160; top: 9px;
&#160; left: 6px;
&#160; font-size: 14px;
}

.header-tools__count {
&#160; padding: 0 2px;
&#160; font-size: 14px;
}

.header__logo-img {
&#160; margin: 90px 0;
}

.header__logo {
&#160; margin: 70px 0;
}

.header-gnavi {
&#160; list-style-type: none;
&#160; position: relative;
  /* 修正: ナビゲーションを右寄せにする */
  display: flex;
  justify-content: flex-end;
}

.header-gnavi__unit {
&#160; list-style: none;
&#160; margin-left: 30px;
}

.header-gnavi__link {
&#160; padding: 15px 30px;
}

.header-gnavi__link--menu {
&#160; position: relative;
&#160; border: 1px solid #ddd;
&#160; border-bottom: none;
&#160; padding: 14px 29px 15px;
&#160; background: #fff;
&#160; z-index: 55;
}

.mega-navi {
&#160; display: none;
&#160; list-style-type: none;
&#160; border: 1px solid #ddd;
&#160; width: 1220px;
&#160; position: absolute;
&#160; top: 32px;
&#160; left: 0;
&#160; padding: 39px;
&#160; background: #fff;
&#160; z-index: 50;
&#160; text-align: left;
}

.mega-navi__unit {
&#160; padding: 10px;
&#160; text-align: left;
&#160; width: 31%;
&#160; display: inline-block;
&#160; vertical-align: top;
}

.mega-navi__link {
&#160; display: block;
&#160; width: 100%;
}

/* slider */
#slider div {
&#160; width: 1300px !important;
}

.slider {
&#160; margin: 0 auto 60px;
&#160; width: 1300px;
}
.slider .bx-wrapper {
&#160; z-index: 0;
&#160; margin-bottom: 0;
}
.slider .bx-wrapper .bx-viewport {
&#160; -moz-box-shadow: none !important;
&#160; -webkit-box-shadow: none !important;
&#160; box-shadow: none !important;
&#160; left: 0 !important;
&#160; border: none !important;
}
.slider .bx-wrapper .bx-caption {
&#160; background: #000;
&#160; background: rgba(0, 0, 0, 0.6);
}
.slider .bx-wrapper .bx-caption span {
&#160; font-size: 18px;
&#160; padding: 30px;
}
.slider .bx-wrapper .bx-pager {
&#160; padding-top: 20px !important;
&#160; bottom: -30px !important;
}

/* main */
.main__section {
&#160; border-top: 1px solid #000;
&#160; border-bottom: 1px solid #000;
&#160; margin-bottom: 60px;
&#160; padding: 20px 0;/* リードbody間 */
&#160; overflow: hidden;
&#160; width:100%;
}


.main__section--product {
&#160; padding: 20px 0 60px;
}

/* sidebar */
.sidebar__section {
&#160; width: 270px; /* ランキングの幅を固定 */
&#160; float: left; /* 左に配置 */
&#160; /* 修正: メインコンテンツとの隙間を確保 */
&#160; margin-right: 30px; 
}

.menu__section {
&#160; margin-bottom: 60px;
}

.more-prd span {
&#160; cursor: pointer;
}

/* breadcrumb.sort */
.breadcrumb__section {
&#160; padding-bottom: 60px;
}

.breadcrumb-list__unit {
&#160; background: url(https://img.shop-pro.jp/tmpl_img/81/spacer.png) no-repeat;
}

.sort__section {
&#160; position: absolute;
&#160; top: 0;
&#160; right: 0;
}

.sort--sub-layer {
&#160; min-width: 200px;
&#160; width: 100%;
}

/* contents */
.contents__section {
&#160; /* 修正: サイドバーの幅と隙間を考慮して、残りの幅を動的に計算 */
&#160; width: calc(100% - 270px - 30px);
  float: left; /* サイドバーの右隣に配置 */
}

.info__section, .recommend__section, .new-item__section, .seller__section, .together__section, .product-list__section, .free-space__section, .product__image, .delivery__section, .payment__section, .cancel__section {
&#160; margin-bottom: 60px;
}

.product-list__section {
&#160; position: relative;
}

.free-space__section {
&#160; background: url(https://img.shop-pro.jp/tmpl_img/81/spacer.png) no-repeat;
}

.recommend-list, .new-item-list, .seller-list, .together-list {
&#160; margin-top: 40px;
}

/* 商品一覧（.sub-list）のパディングをリセット (5列表示用) */
.sub-list {
&#160; padding-bottom: 60px;
&#160; font-size: 0;
&#160; padding-left: 0 !important;&#160;
&#160; padding-right: 0 !important;
}

/* 5列表示のための幅を調整 */
.sub-list__unit {
&#160; display: inline-block;
&#160; vertical-align: top;
&#160; padding: 0 0.5% 20px 0.5%; /* 左右に0.5%の余白を設定 */
&#160; width: 20%; 
&#160; font-size: 14px;
&#160; box-sizing: border-box; 
}

.sub-list__img {
&#160; padding-bottom: 10px;
}

.sub-list__link {
&#160; display: block;
}

.sub-list__name {
&#160; display: block;
}

.product-list__freespace-top {
&#160; padding-bottom: 60px;
&#160; background: url(https://img.shop-pro.jp/tmpl_img/81/spacer.png) no-repeat;
}

.product-list__freespace-bottom {
&#160; padding-top: 60px;
&#160; background: url(https://img.shop-pro.jp/tmpl_img/81/spacer.png) no-repeat;
}

/* information */
.info {
&#160; margin-top: 40px;
}

.info-list {
&#160; list-style-type: none;
}

.info-list__unit {
&#160; padding-bottom: 30px;
}

.info-list__date {
&#160; display: block;
&#160; padding-bottom: 10px;
}

/* history */
.history__section {
&#160; clear: both;
&#160; border-top: 1px solid #ddd;
&#160; padding-top: 60px;
}

/* footer */
.footer__section {
&#160; border-bottom: 1px solid #000;
}

.footer__guide {
&#160; &#160; display: flex;
&#160; &#160; flex-direction: row;
&#160; &#160; flex-wrap: nowrap;
&#160; &#160; justify-content: space-around;
&#160; &#160; padding-bottom: 30px;
&#160; &#160; margin-bottom: 60px;
&#160; &#160; border-bottom: 1px solid #ddd;
}

.guide__col {
&#160; display: inline-block;
&#160; margin: 0 10px;
&#160; vertical-align: top;
}

.guide__col--one-third {
&#160; width: 410px;
}

.guide__col--half {
&#160; width: 625px;
}

.guide__h2 {
&#160; padding-bottom: 20px;
&#160; margin-bottom: 20px;
&#160; border-bottom: 1px solid #ddd;
&#160; font-size: 16px;
}

.guide__list {
&#160; margin: 0;
}

.guide__name {
&#160; padding-bottom: 15px;
}

.guide__other {
&#160; margin: 0;
&#160; padding-bottom: 30px;
&#160; color: #666;
}

.footer__navi {
&#160; margin-bottom: 40px;
}

.shop-owner {
&#160; overflow: hidden;
}

.shop-owner__img {
&#160; float: left;
&#160; width: 200px;
&#160; margin-right: 20px;
}

.shop-owner__info {
&#160; float: left;
&#160; width: 290px;
}

.shop-owner__name {
&#160; margin-bottom: 16px;
&#160; font-weight: bold;
}

.shop-owner__memo {
&#160; line-height: 1.8;
}

.sns-list {
&#160; list-style-type: none;
&#160; padding-bottom: 60px;
}

.sns-list__unit {
&#160; display: table-cell;
&#160; padding-right: 5px;
}

.sns-list__unit svg {
&#160; position: relative;
&#160; display: inline-block;
&#160; width: 2em;
&#160; height: 2em;
&#160; line-height: 2em;
&#160; vertical-align: middle;
&#160; fill: currentColor;
}

.footer-navi__col {
&#160; list-style-type: none;
&#160; line-height: 2.2;
}

.pagetop__btn {
&#160; display: block;
&#160; padding: 18px 0;
&#160; width: 100%;
&#160; max-width: 50px;
&#160; float: right;
}

/* copyright */
.copyright__section {
&#160; padding: 20px 0;
&#160; font-size: 10px;
}

.copyright {
&#160; margin: 0 0 10px;
}

.copyright__img {
&#160; width: 200px;
&#160; height: 18px;
&#160; margin: 0 0 5px 5px;
}

/* menu-list */
.menu-list {
&#160; margin: 10px 0 0;
&#160; list-style-type: none;
}

.menu-list--more-prd {
&#160; margin: 10px 0 20px;
}

.menu-list__link {
&#160; display: block; 
&#160; padding: 10px 0;
&#160; width: 100%;
}

.menu-list__text {
&#160; padding-right: 10px;&#160;
}

/* 「＞」マークのアイコン部分 */
.menu-list__icon {
&#160; padding-left: 10px;&#160;
}

.menu-list__unit {
&#160; &#160; margin-bottom: 5px;&#160;
}

/* calender */
.cal {
&#160; margin: 20px 0 60px;
&#160; text-align: center;
}

.tbl_calendar {
&#160; margin-bottom: 20px;
&#160; width: 100%;
}
.tbl_calendar caption {
&#160; text-align: center;
&#160; padding: 6px 0;
}
.tbl_calendar th {
&#160; padding: 6px 0;
&#160; border-bottom: 1px solid #ccc;
}
.tbl_calendar td {
&#160; padding: 6px 0;
&#160; border-bottom: 1px solid #ccc;
}

/* qrcode */
.qrcode {
&#160; margin: 20px 0 60px;
&#160; text-align: center;
}

/* 最近チェックした商品 (商品一覧コンテナ) */
/* 商品リストの上部に余白を追加し、線との重なりを防ぐ */
.product-list {
  /* ... 既存の Flexbox 設定 ... */
  list-style-type: none;
  font-size: 0;
  margin: 0; 
  /* &#128072; 上部に適切な余白 (例: 20px) を確保 */
  margin-top: 20px; 
  overflow: hidden; 
  padding-left: 0 !important;
  padding-right: 0 !important;
  display: flex;
  flex-wrap: wrap; 
}

/* 既存の .recommend-list, .new-item-list などの設定を確認 */
/* もしリスト全体を囲む要素にマージンがある場合は、そちらも確認してください */
/* 例: .recommend-list, .new-item-list, .seller-list, .together-list { margin-top: 40px; } */
/* これが有効な場合は、上記の .product-list の margin-top: 20px は不要な場合があります */

/* ランキング数字 */
/* ランキング数字 (各商品ユニット) */
.product-list__unit {
  /* float: left や inline-block は不要 */
&#160; display: flex; 
  /* ユニット内のコンテンツを縦に並べる */
  flex-direction: column; 
  /* 商品名や価格を、画像の下で揃えるために必須 */
  justify-content: space-between; 
&#160; font-size: 15px;
&#160; margin: 0;&#160;
&#160; /* vertical-align: top は Flexbox では不要 */
&#160; position: relative;
&#160; text-align: center;
&#160; box-sizing: border-box;&#160;
}

/* 5列表示の幅を確保 */
.product-list__unit-lg {
&#160; /* Flexboxで均等分割されるため、width: 20%は維持 */
&#160; width: 20%; 
&#160; padding: 0 0.5% 20px 0.5%;&#160;
}

.product-list__unit-sm {
&#160; width: 110px;
}

.product-list__unit-md {
&#160; width: 141px;
}

/* 修正: 5列表示の幅を適用（固定幅を上書き） */
.product-list__unit-lg {
&#160; width: 20%; 
&#160; /* 5列表示に必要なパディングを追加 */
&#160; padding: 0 0.5% 20px 0.5%;&#160;
}

.product-list__unit--sidebar {
&#160; display: block;
&#160; margin: 0 0 20px;
}

.product-list__image:hover {
&#160; opacity: 0.8;
}

.product-list__image--sm {
&#160; max-width: 110px;
}

.product-list__text {
&#160; display: block;
}

/* 商品名 */
.product-list__name {
&#160; font-weight: ;
&#160; margin-top: 20px;
&#160; text-align: left;
  /* Flexboxで縦揃えが制御されるため、min-heightは削除推奨 */
  /* もし2行表示を強制したい場合は残す */
  min-height: auto; 
}

.product-list__name--sidebar {
&#160; margin-top: 0;
&#160; margin-left: 10px;
}

/* 商品説明 */
.product-list__expl {
&#160; margin-top: 10px;
&#160; text-align: left;
}

.product-list__prices {
&#160; margin-top: 10px;/*トップ金額文字大きさ*/
&#160; text-align: left;
}

.product-list__prices--sidebar {
&#160; margin-left: 10px;
}

.product-list__price-regular {
&#160; text-decoration: line-through;
}

.product-list__price-soldout {
&#160; color: #ff0000;
}

.product-list__discount-rate {
&#160; color: #ff0000;
}

.rank-box {
&#160; position: absolute;
&#160; top: 20px;
&#160; left: 10px;
&#160; z-index: 5;
}

.rank-box--sidebar {
&#160; top: 10px;
}

.rank-number {
&#160; padding: 8px 0 0;
&#160; background: #fff;
&#160; color: #000;
&#160; font-weight: bold;
&#160; border-radius: 50%;
&#160; width: 40px;
&#160; height: 32px;
&#160; display: block;
&#160; text-align: center;
}

.rank-number--sidebar {
&#160; padding: 4px 0 0;
&#160; width: 22px;
&#160; height: 18px;
}

.rank-number-color--1 {
&#160; background: #ffea22;
}

.rank-number-color--2 {
&#160; background: #cbcbcb;
}

.rank-number-color--3 {
&#160; background: #d9a300;
}

/* pagenation */
.pagenation {
&#160; position: relative;
&#160; text-align: center;
&#160; max-width: 600px;
&#160; margin: 0 auto;
}
.pagenation .disabled {
&#160; color: #ccc;
}

.pagenation-prev {
&#160; position: absolute;
&#160; left: 0;
}

.pagenation-pos {
&#160; line-height: 0.8;
}
.pagenation-pos__number {
&#160; margin: 0 5px;
&#160; font-size: 22px;
}

.pagenation-next {
&#160; position: absolute;
&#160; right: 0;
}

/* product */
.product__section {
&#160; margin-bottom: 120px;
}
.product__section h2 {
&#160; border-bottom: none;
&#160; font-size: 22px;
}

.product__explain {
&#160; padding-top: 60px;
&#160; line-height: 1.8;
&#160; background: url(https://img.shop-pro.jp/tmpl_img/81/spacer.png) no-repeat;
}

.product__model {
&#160; color: #666;
}

.product__image-main {
&#160; text-align: center;
}

.product__image-thumb ul li {
&#160; cursor: pointer;
&#160; margin-bottom: 25px;
&#160; padding: 0 10px;
}

.image__thumb {
&#160; padding: 2px;
&#160; border: 2px solid #fff;
}

.image__thumb--active {
&#160; border: 2px solid #ddd;
}

.product__guide {
&#160; padding: 0 0 60px;
}

.product__price-part {
&#160; font-size: 22px;
&#160; padding-bottom: 5px;
}

.product__price-regular {
&#160; padding-bottom: 5px;
}

.product__price-establish {
&#160; padding-bottom: 5px;
&#160; color: #666;
}

.product__discount {
&#160; color: #ff0000;
}

.product__stock-str {
&#160; padding-top: 30px;
&#160; font-size: 22px;
}

.product__related-list__link {
&#160; display: block;
&#160; padding: 5px 0;
}
.product__related-list__link span {
&#160; padding-left: 15px;
}

.product__order {
&#160; border-top: 1px solid #ddd;
&#160; border-bottom: 1px solid #ddd;
&#160; padding: 40px 0 60px;
}

.option-list__name, .init-list__name, .text-titles-list__name {
&#160; padding-bottom: 10px;
&#160; font-weight: normal;
}

.option-list__detail, .init-list__detail, .text-titles-list__detail {
&#160; margin: 0;
}

.option-list__select {
&#160; height: 50px;
&#160; border: 2px solid #ddd;
}

.text-titles-list__detail-text {
&#160; height: 50px;
&#160; border: 2px solid #ddd;
}

.init-list__detail-num {
&#160; width: 200px;
&#160; height: 38px;
&#160; border: 2px solid #ddd;
&#160; display: inline-block;
}

.init-list__detail-updw {
&#160; margin: 0;
&#160; padding-left: 10px;
&#160; vertical-align: middle;
&#160; display: inline-block;
}

.init-list__detail-unit {
&#160; padding-left: 10px;
}

.order-btn-list {
&#160; margin: 0;
&#160; padding-top: 30px;
}

.stock_error {
&#160; text-align: center;
&#160; color: #cf0400;
}

.option-table {
&#160; margin: 40px 0;
}
.option-table table {
&#160; width: 95%;
&#160; margin: 0 auto;
&#160; border-bottom: 1px solid #ddd;
&#160; border-left: 1px solid #ddd;
}
.option-table table th, .option-table table td {
&#160; padding: 11px 7px;
&#160; border-top: 1px solid #ddd;
&#160; border-right: 1px solid #ddd;
}
.option-table table th {
&#160; text-align: center;
}
.option-table table td {
&#160; vertical-align: top;
&#160; text-align: center;
}

.related-list {
&#160; text-align: right;
&#160; padding-right: 15px;
}

.related-list__unit {
&#160; display: inline-block;
}

/* option detail */
.option-detail__section {
&#160; padding: 20px;
&#160; text-align: center;
}

.option-detail__table th {
&#160; text-align: center;
}
.option-detail__table td {
&#160; text-align: center;
}

.option-detail__price--regular {
&#160; text-decoration: line-through;
}

.option-detail__discount {
&#160; color: #ff0000;
}

/* privacy.shopkeeper */
.shop-info__lead {
&#160; margin: 40px 0 20px;
&#160; line-height: 1.8;
}

.shop-info-list__title {
&#160; padding: 20px 0 5px;
}
.shop-info-list__title:first-child {
&#160; padding: 0 0 5px;
}

.shop-info-list__note {
&#160; margin: 0;
&#160; line-height: 1.8;
}

/*
&#160;* Module
&#160;*/
.section__title-h2 {
&#160; margin: 0;
&#160; padding-bottom: 10px;/*TOPランキングリード縦幅*/
&#160; border-bottom: 5px solid #ddd;/*TOPランキング下線*/
&#160; font-size: 20px;
&#160; background: url(https://img.shop-pro.jp/tmpl_img/81/spacer.png) no-repeat;
}

.btn-primary {
&#160; background: #333;
&#160; border: 1px solid #333;
&#160; color: #fff;
}
.btn-primary:hover {
&#160; background: #666;
&#160; color: #fff;
&#160; opacity: 0.8;
&#160; -moz-opacity: 0.8;
&#160; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(opacity=80)";
&#160; filter: progid:DXImageTransform.Microsoft.Alpha(opacity=80);
&#160; zoom: 1;
}

.btn-secondary {
&#160; background: #48A3FF;
&#160; border: 1px solid #48A3FF;
&#160; color: #fff;
}
.btn-secondary:hover {
&#160; background: #48A3FF;
&#160; color: #fff;
&#160; opacity: 0.8;
&#160; -moz-opacity: 0.8;
&#160; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(opacity=80)";
&#160; filter: progid:DXImageTransform.Microsoft.Alpha(opacity=80);
&#160; zoom: 1;
}

.btn-tertiary {
&#160; background: #cf0400;
&#160; border: 1px solid #cf0400;
&#160; color: #fff;
}
.btn-tertiary:hover {
&#160; background: #cf0400;
&#160; color: #fff;
&#160; opacity: 0.8;
&#160; -moz-opacity: 0.8;
&#160; -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(opacity=80)";
&#160; filter: progid:DXImageTransform.Microsoft.Alpha(opacity=80);
&#160; zoom: 1;
}

.btn__addcart, .btn__quick, .btn__soldout {
&#160; padding: 20px 0 22px 0;
}
.btn__addcart i, .btn__quick i, .btn__soldout i {
&#160; margin-right: 10px;
}
.btn__addcart span, .btn__quick span, .btn__soldout span {
&#160; vertical-align: middle;
}

.btn__soldout.disabled,
.btn__soldout[disabled] {
&#160; background-color: #cf0400;
&#160; color: #fff;
}

.txt--sm {
&#160; font-size: 10px;
}

.txt--md {
&#160; font-size: 12px;
}

.txt--lg {
&#160; font-size: 15px;/*トップ商品フォントサイズ*/
}

.txt--c {
&#160; text-align: center;
}

.txt--r {
&#160; text-align: right;
}

.txt--red {
&#160; color: #ff0000;
}

.txt--gray {
&#160; color: #999;
}

.border--none {
&#160; border: none;
}

.mar-t--20 {
&#160; margin-top: 20px;
}

.mar-b--20 {
&#160; margin-bottom: 20px;
}

.mar-b--60 {
&#160; margin-bottom: 60px;
&#160; display: flex;
&#160; flex-direction: row;
&#160; justify-content: space-around;
&#160; width: 80%;
&#160; margin: 0 auto;
}

.width--110 {
&#160; width: 110px;
}

.width--160 {
&#160; width: 160px;
}

.hide {
&#160; display: none;
}

/* textarea input */
textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"],
.uneditable-input {
&#160; outline: none;
}

.promo__logo {
&#160; flex: 0 0 auto;
&#160; margin-right: 5px;
}

.promo__nav {
&#160; flex: 1 1 auto;
}

.promo__text a {
&#160; text-decoration: none;
&#160; color: #333;
}

.promo__text a:hover {
&#160; color: #007bff;
}

.promo {
&#160; &#160; display: flex;
&#160; &#160; align-items: center;
&#160; &#160; justify-content: space-around;
&#160; &#160; padding: 0;
&#160; &#160; background-color: #ffffff;
}

.promo__logo {
&#160; flex: 0 0 auto;
&#160; margin-right: 15px;
}

.shop-logo {
&#160; max-width: 400px; /* ショップロゴサイズ変更 */
&#160; height: auto;
}

.promo__nav {
&#160; flex: 1 1 auto;
}

.breadcrumb__section {
&#160; display: flex;
&#160; justify-content: flex-start; /* ←左寄せにする */
&#160; padding: 20px 0;
&#160; width: 100%;
&#160; padding-left: 15%; /* ←ここで「中央よりちょい左」に調整 */
}

.breadcrumb-list__unit {
&#160; font-size: 18px;
&#160; font-weight: bold; /* or normal; */
&#160; letter-spacing: 0.03em;
&#160; line-height: 0;
}


/* ---------- ランキング（サイドバー）崩れ対策 ---------- */
/* li 要素全体を flex 化して、画像とテキストの比率を固定する */
.product-list__unit--sidebar {
&#160; display: flex !important;
&#160; align-items: center;
&#160; gap: 3px;
&#160; padding: 8px 0;
&#160; box-sizing: border-box;
&#160; min-height: 56px; /* 必要に応じて調整 */
}

/* 左カラム（順位＋画像）を固定幅に */
.product-list__unit--sidebar .pull-left {
&#160; float: none !important;&#160; &#160; &#160; &#160; /* 既存 float を無効化 */
&#160; flex: 0 0 110px !important;&#160; &#160; /* 固定幅（元の width--110 と同じ） */
&#160; display: flex;
&#160; align-items: center;
&#160; gap: 8px;
}

/* 画像が伸びたり潰れたりしないように */
.product-list__unit--sidebar .product-list__image {
&#160; max-width: 100%;
&#160; height: auto;
&#160; display: block;
}

/* 右カラム（商品名・価格）を可変に。min-width:0 が重要（Flex 内での省略制御） */
.product-list__unit--sidebar .pull-right {
&#160; float: none !important;
&#160; flex: 1 1 auto !important;
&#160; min-width: 0; /* これがないと子要素の text-overflow が効かない */
}

/* 商品名：2行まで表示して長すぎたら省略（必要なら1行にする） */
.product-list__unit--sidebar .product-list__name {
&#160; display: block;
&#160; line-height: 1.3;
&#160; max-height: 3.9em;&#160; &#160; &#160; &#160; &#160; &#160; /* 1.3 * 2行 = 2.6em（必要なら 1 行にする） */
&#160; overflow: hidden;
&#160; text-overflow: ellipsis;
&#160; white-space: normal;&#160; &#160; &#160; &#160; &#160; /* 複数行にする場合は nowrap を外す */
&#160; word-break: break-word;
}

/* 価格行（下の行）の余白調整 */
.product-list__unit--sidebar .product-list__prices {
&#160; margin-top: 6px;
}

/* とくに狭い画面では画像を小さくして、可読性を保つ */
@media (max-width: 420px) {
&#160; .product-list__unit--sidebar {
&#160; &#160; gap: 3px;
&#160; &#160; min-height: auto;
&#160; }
&#160; .product-list__unit--sidebar .pull-left {
&#160; &#160; flex: 0 0 70px !important;
&#160; }
&#160; .product-list__unit--sidebar .product-list__name {
&#160; &#160; max-height: 3.9em; /* 3行くらいまで許容 */
&#160; }
}