/******************************
 * SLIDER
 ******************************/
.p-main-slider .bx-wrapper .bx-viewport { border:0; box-shadow:none; left:0; overflow:hidden; }
.p-main-slider .bx-wrapper img { display:block; margin:0 auto; width:100%; }
.p-main-slider .bx-wrapper .bx-pager { padding-top:0; bottom:-40px; }
@media screen and (max-width:767px){
  .p-main-slider .bx-wrapper .bx-pager { bottom:-25px; }
}
.p-main-slider .bx-wrapper .bx-pager.bx-default-pager a { margin:0 10px; background:#ddd; }

/******************************
 * 余白
 ******************************/
.p-main-slider .bx-wrapper{ margin-bottom:80px !important; }

/******************************
 * NEWS
 ******************************/
.p-line-information { margin:90px 0; }
@media (max-width:1023px){ .p-line-information{ margin:90px 0 50px; } }
@media (max-width:767px){  .p-line-information{ margin:45px 0; } }

.p-line-information-list__item { display:flex; margin-bottom:20px; }
@media (max-width:767px){ .p-line-information-list__item { display:block; margin-bottom:15px; } }
.p-line-information-list__date { width:120px; }
.p-line-information-list__ttl  { flex:1; }

/******************************
 * PRODUCTS（グループバナー）
 ******************************/
.p-group-bnr { margin:20px 0 !important; }
.p-group-bnr .u-container { padding-left:0 !important; padding-right:0 !important; }
.p-group-bnr-list { margin-left:0 !important; margin-right:0 !important; margin-bottom:8px !important; }
.p-group-bnr-list__item { margin:0 8px !important; word-break:break-all; }
@media (max-width:1023px){
  .p-group-bnr { margin:50px 0 60px; }
  .p-group-bnr .c-slider-thema .slick-next { right:-10px; }
  .p-group-bnr .c-slider-thema .slick-prev { left:-10px; }
}
@media (max-width:767px){
  .p-group-bnr .c-slider-thema .slick-next { right:-3px; }
  .p-group-bnr .c-slider-thema .slick-prev { left:-3px; }
}
.p-group-bnr .c-ttl-bg { margin:8px 0 !important; padding:0 !important; }
.p-group-bnr-list .slick-dotted.slick-slider { margin-bottom:10px !important; }
.p-group-bnr-list .slick-dots { bottom:-10px !important; }

/******************************
 * INFORMATION
 ******************************/
.p-information{
  margin:20px 0; padding:60px 90px;
  background:url(https://img.shop-pro.jp/tmpl_img/87/bg-grid.png) repeat;
  color:#2d2d2d;
}
@media (max-width:1023px){ .p-information{ margin:60px 25px 45px; padding:45px; } }
@media (max-width:767px){  .p-information{ margin-left:0; margin-right:0; padding:35px 25px; } }

/******************************
 * CONCEPT
 ******************************/
.p-concept-box{ display:flex; flex-wrap:wrap; margin:75px 0 105px; }
@media (max-width:1023px){ .p-concept-box{ margin:45px 25px 75px; } }
@media (max-width:767px){  .p-concept-box{ display:block; margin:0 0 60px; } }

.p-concept-box__logo{
  box-sizing:border-box; display:flex; justify-content:center; align-items:center;
  padding:60px; width:330px; min-height:300px; background:#fafafa; text-align:center;
}
@media (max-width:1023px){ .p-concept-box__logo{ padding:45px; width:220px; min-height:195px; } }
@media (max-width:767px){  .p-concept-box__logo{ padding:30px 15px; width:auto; min-height:80px; } }
.p-concept-box__logo img{ max-width:210px; }
@media (max-width:1023px){ .p-concept-box__logo img{ max-width:130px; } }
@media (max-width:767px){  .p-concept-box__logo img{ max-width:120px; } }

.p-concept-box__txt{
  box-sizing:border-box; flex:1; display:flex; justify-content:center; align-items:center;
  position:relative; padding:60px 120px; color:#fff;
  background:url(https://img.shop-pro.jp/tmpl_img/87/bg.gif) no-repeat center/cover #aaa;
}
@media (max-width:1023px){ .p-concept-box__txt{ padding:45px; } }
@media (max-width:767px){  .p-concept-box__txt{ padding:20px 25px; } }
.p-concept-box__txt::before{ content:""; position:absolute; inset:0; background:rgba(0,0,0,.4); }
.p-concept-box__body{ position:relative; z-index:10; }

/******************************
 * RECOMMEND
 ******************************/
.c-ttl-bg.is-recommend::before{ background:url(https://img.shop-pro.jp/tmpl_img/87/bg.gif ) center/cover no-repeat; content:none !important; }
.p-recommend{ overflow:hidden; padding-bottom:90px; }
@media (max-width:1023px){ .p-recommend{ padding-bottom:60px; } }
@media (max-width:767px){  .p-recommend{ padding-bottom:30px; } }

/******************************
 * PICKUP（共通）
 ******************************/
.p-pickup{ padding:120px 0; background:#fafafa; }
@media (max-width:1023px){ .p-pickup{ padding:90px 0; } }
@media (max-width:767px){  .p-pickup{ padding:45px 0 60px; } }

.p-pickup-list{ margin-top:60px; }
@media (max-width:767px){ .p-pickup-list{ margin-top:0; margin-left:0 !important; margin-right:0 !important; } }

.p-pickup-list__item{
  display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center;
  margin-bottom:75px; word-break:break-all;
}
@media (max-width:1023px){ .p-pickup-list__item{ margin-bottom:60px; } }
@media (max-width:767px){  .p-pickup-list__item{ display:block; margin:0 auto 45px; max-width:none !important; } }
.p-pickup-list__item:last-child{ margin-bottom:0; }

.p-pickup-list__img{
  overflow:hidden; position:relative; width:53%; height:28vw; opacity:1; transform:translate(0,0);
}
@media (min-width:1270px){ .p-pickup-list__img{ max-height:365px; } }
@media (max-width:1023px){ .p-pickup-list__img{ width:53%; height:28vw; } }
@media (max-width:767px){
  .p-pickup-list__img{
    width:100vw !important; max-width:none !important; height:auto !important;
    position:relative !important; left:50% !important; transform:translateX(-50%) !important;
    aspect-ratio:4/3; overflow:hidden;
  }
}
.p-pickup-list__img::before,
.p-pickup-list__img::after{ content:""; position:absolute; inset:0; }
.p-pickup-list__img .p-pickup-list__img-bg{
  position:absolute; inset:0; transition:all .4s .6s cubic-bezier(.785,.135,.15,.86);
  background:#000000;
}
.p-pickup-list__img::after,
.p-pickup-list__img::before{ transition:all .4s cubic-bezier(.785,.135,.15,.86); background:#fff; }
.p-pickup-list__img.faded .p-pickup-list__img-bg,
.p-pickup-list__img.faded::after{ width:0; }
.p-pickup-list__img img{ width:100% !important; height:100%; object-fit:cover; object-position:50% 10%; }
@media (max-width:767px){
  .p-pickup-list__img img{ position:static !important; transform:none !important; height:100%; object-fit:cover; object-position:50% 20%; }
}

.p-pickup-list__txt{ box-sizing:border-box; flex:1; padding:0 70px; }
@media (max-width:1023px){ .p-pickup-list__txt{ padding-left:60px; padding-right:25px; width:47%; } }
@media (max-width:767px){  .p-pickup-list__txt{ margin-top:20px; padding:0 12px !important; width:auto; } }

.p-pickup-list__ttl{ margin:0 0 15px; line-height:1.4; font-size:24px; font-weight:400; }
@media (max-width:767px){ .p-pickup-list__ttl{ margin-bottom:10px; font-size:17px; } }
.p-pickup-list__ttl img{ display:none !important; }
.p-pickup-list__btn{ margin-top:30px; }
@media (max-width:767px){ .p-pickup-list__btn{ margin-top:20px; } }

/******************************
 * RANKING
 ******************************/
@media (max-width:1023px){ .c-ttl-bg.is-ranking{ margin-bottom:25px; } }
@media (max-width:767px){  .c-ttl-bg.is-ranking{ margin-bottom:35px; } }
.c-ttl-bg.is-ranking::before{ background:url(https://img.shop-pro.jp/tmpl_img/87/bg.gif) center/cover no-repeat; content:none !important; }

.c-ttl-bg.is-recommend,
.c-ttl-bg.is-ranking{ background:#fff !important; color:#000 !important; }
.c-ttl-bg.is-recommend::before,
.c-ttl-bg.is-ranking::before{ content:none !important; background:none !important; }
.c-ttl-bg.is-recommend span,
.c-ttl-bg.is-ranking span{ color:#000 !important; }

.p-ranking{ padding-top:30px; }
@media (max-width:1023px){ .p-ranking{ padding-top:90px; } }
@media (max-width:767px){  .p-ranking{ padding-top:60px; } }

.p-ranking-list{ margin-bottom:30px; }
@media (max-width:1050px){ .p-ranking-list{ margin:0 20px 30px; } }
@media (max-width:1023px){ .p-ranking-list{ margin-left:0; margin-right:0; } }
@media (max-width:767px){  .p-ranking-list{ margin:0 -12px 30px; } }

.p-ranking-list .slick-prev{ left:-5px; margin-top:-43px; }
.p-ranking-list .slick-next{ right:-5px; margin-top:-43px; }
@media (max-width:767px){
  .p-ranking-list .slick-prev,
  .p-ranking-list .slick-next{ margin-top:-30px; }
}
.p-ranking-list .slick-dotted.slick-slider{ margin-bottom:90px; }
.p-ranking-list .slick-dots{ bottom:-45px; }
.p-ranking-list .slick-dots li{ margin:0 2px; }

.p-ranking-list__item{ position:relative; box-sizing:border-box; margin:0 10px; padding-bottom:25px; word-break:break-all; }
@media (max-width:1023px){ .p-ranking-list__item{ margin:0 20px; } }
@media (max-width:767px){  .p-ranking-list__item{ margin:0 12px; } }

.p-ranking-list__item.slick-active .p-ranking-list__num{ opacity:1; animation:rankingfadein .2s 0s; }
.p-ranking-list__img{ margin-bottom:20px; background:#fff; }
@media (max-width:767px){ .p-ranking-list__img{ margin-bottom:10px; text-align:center; } }

.p-ranking-list__num{
  box-sizing:border-box; position:absolute; top:0; right:0; padding-top:3px; min-width:30px;
  line-height:27px; font-size:16px; font-weight:bold; background:#fff; color:#2d2d2d;
  text-align:center; opacity:0; transition:all .1s ease;
}
.p-ranking-list__num.is-1,
.p-ranking-list__num.is-2,
.p-ranking-list__num.is-3{ background:#fff; color:#000; }
@keyframes rankingfadein{ 0%{opacity:0;} 100%{opacity:1;} }

.p-ranking-list__ttl{ font-size:14px; }
@media (max-width:767px){ .p-ranking-list__ttl{ font-size:13px; } }
.p-ranking-list__ttl img{ vertical-align:middle; }
.p-ranking-list__price{ margin-top:15px; font-size:14px; }
@media (max-width:767px){ .p-ranking-list__price{ margin-top:5px; font-size:13px; } }
.p-ranking-list__price.is-default{ margin-top:0; }
.p-ranking-list__btn{ position:absolute; bottom:0; right:0; }

/******************************
 * SHOP
 ******************************/
.p-shop{ padding-top:90px; }
@media (max-width:1023px){ .p-shop{ padding-top:60px; } }
@media (max-width:767px){  .p-shop{ padding-top:30px; } }

.p-shop-wrap{ position:relative; overflow:hidden; padding:45px 0; }
@media (max-width:767px){ .p-shop-wrap{ padding:0; } }
.p-shop-wrap::before{ content:""; position:absolute; inset:0; z-index:10; background:rgba(0,0,0,.4); }
@media (max-width:767px){ .p-shop-wrap::before{ content:none; } }

.p-shop__bg{ position:absolute; inset:0; z-index:1; width:100%; height:100%; text-align:center; }
@media (max-width:767px){ .p-shop__bg{ position:static; width:auto; height:auto; } }
.p-shop__bg img{ width:100%; }
@media (max-width:767px){ .p-shop__bg img{ max-width:100%; } }
@media (max-width:1023px){ .p-shop__bg .simpleParallax{ overflow:visible !important; } }
@media (max-width:767px){  .p-shop__bg .simpleParallax{ overflow:hidden !important; } }

.p-shop-contents{ display:flex; justify-content:center; align-items:center; min-height:360px; text-align:center; }
@media (max-width:767px){ .p-shop-contents{ min-height:inherit; } }

.p-shop-box{ position:relative; z-index:100; width:660px; color:#fff; }
@media (max-width:767px){ .p-shop-box{ margin-top:15px; width:auto; color:#2d2d2d; } }
.p-shop-box__ttl{ margin-bottom:15px; line-height:1.4; font-size:24px; }
@media (max-width:767px){ .p-shop-box__ttl{ font-size:17px; } }
.p-shop-box__body{ margin-top:20px; }
@media (max-width:767px){ .p-shop-box__body{ margin-top:0; } }
.p-shop-box__url{ margin-top:15px; }
.p-shop-box__url a{ color:#fff; }
@media (max-width:767px){ .p-shop-box__url a{ color:#2d2d2d; } }
.p-shop-box__btn{ margin-top:30px; }
@media (max-width:767px){ .p-shop-box__btn{ margin-top:20px; } }

/******************************
 * Top Page 画像
 ******************************/
.top-products img, .c-top img, .p-home img{ width:100%; max-width:100%; height:auto; image-rendering:auto; }
.top-products .thumb{ height:auto; }

/* 画像ぼけ対策 */
.acc-local img, .top-products img, .p-home img{ max-width:100% !important; height:auto !important; image-rendering:crisp-edges; }

/* PRODUCTS スライドの余白 */
.top-products .slick-slide{ margin:0 1px; }

/******************************
 * 特集ページ
 ******************************/
.brand-section, .contents-section{ margin:20px 0; padding:10px; background:#fff; }
.brand-section h2, .contents-section h2{ font-size:1.5em; margin-bottom:15px; }
.brand-list li, .contents-section li{ margin-bottom:8px; }
.contents-section{ margin:0 2%; padding:0; background:none !important; }

/******************************
 * BRAND（一覧3列固定）
 ******************************/
.brand-grid{
  display:grid; grid-template-columns:repeat(3, minmax(0,1fr)); gap:10px;
  list-style:none; margin:0; padding:0;
}
.brand-grid > li{ width:auto !important; }
@media (max-width:1024px){ .brand-grid{ grid-template-columns:repeat(3, minmax(0,1fr)); } }
@media (max-width:560px){  .brand-grid{ grid-template-columns:repeat(3, minmax(0,1fr)); } }
.brand-card span{ font-size:.85rem; padding:8px 6px; }

/******************************
 * COLUMN / BLOG（#wp-latest）
 ******************************/
#wp-latest{ padding-top:10px !important; padding-bottom:10px !important; text-align:left !important; background:transparent !important; }
#wp-latest .column-line{ display:none !important; border:0 !important; height:0 !important; margin:0 !important; padding:0 !important; }
#wp-latest::after{ content:none !important; border:0 !important; margin:0 !important; }

#wp-latest .wp-card{ display:block !important; }

#wp-latest p,
#wp-latest .wp-body,
#wp-latest .excerpt,
#wp-latest .entry,
#wp-latest .content,
#wp-latest .text,
#wp-latest .lead{
  max-width:none !important; margin-left:0 !important; margin-right:0 !important;
  padding-left:0 !important; padding-right:0 !important; text-align:left !important;
}

#wp-latest h2{ margin:0 0 6px !important; padding:0 !important; text-align:left !important; }

@media (max-width:767px){
  #wp-latest{ padding-left:var(--gutter) !important; padding-right:var(--gutter) !important; box-sizing:border-box; }
  .brand-section:not(.u-no-bg){ padding-left:var(--gutter) !important; padding-right:var(--gutter) !important; }
}

#wp-latest .wp-body,
#wp-latest .wp-title,
#wp-latest .wp-excerpt{ padding-left:0 !important; padding-right:0 !important; box-sizing:border-box; }

/********************************************
 * コンテナ & ガター
 ********************************************/
:root{
  --container: 1080px;
  --gutter: 25px;
}
.u-container{
  max-width:var(--container);
  margin-left:auto;
  margin-right:auto;
  padding-left:var(--gutter);
  padding-right:var(--gutter);
  box-sizing:border-box;
}

/* 横幅いっぱいにしたいセクション */
.p-main-slider > .u-container,
.p-pickup       > .u-container,
.p-recommend    > .u-container,
.top-products   > .u-container,
.p-group-bnr    > .u-container{
  padding-left:0 !important; padding-right:0 !important;
}

/* slick系の自動余白打ち消し */
.p-recommend .slick-list,
.top-products .slick-list,
.p-group-bnr .slick-list{ padding:0 !important; margin:0 !important; }
.p-recommend .slick-slide,
.top-products .slick-slide{ margin:0 8px; }

.p-recommend img,
.top-products img,
.p-group-bnr img,
.p-main-slider img{ display:block; width:100%; height:auto; }

/* BLOG/NEWS/BRAND にガター */
#wp-latest,
.p-line-information,
.brand-section,
.brand-grid,
.brand-section.u-no-bg{
  max-width:var(--container);
  margin-left:auto;
  margin-right:auto;
  padding-left:var(--gutter);
  padding-right:var(--gutter);
  box-sizing:border-box;
}

/* BLOG内の画像は常にフル幅 */
#wp-latest .wp-thumb,
#wp-latest .wp-thumb img{ width:100% !important; height:auto !important; display:block !important; }

/* SP用：ガター */
@media (max-width:767px){ :root{ --gutter:8px; } }
@media (max-width:1023px){
  #wp-latest,
  .brand-section:not(.u-no-bg){
    padding-left:var(--gutter) !important; padding-right:var(--gutter) !important; box-sizing:border-box;
  }
}

/* COLUMN中央寄せ復旧 */
.brand-section.u-no-bg{ margin-left:auto !important; margin-right:auto !important; text-align:left !important; }
.brand-section.u-no-bg .brand-heading{
  display:block; width:100% !important; box-sizing:border-box;
  margin:0 0 12px !important; padding:0 !important; text-align:left !important;
  padding-left:var(--gutter) !important; padding-right:0 !important;
}

/* THIS 画像周りの左右余白ゼロ（保険） */
.p-pickup .p-pickup-list,
.p-pickup .p-pickup-list__item,
.p-pickup .p-pickup-list__img{ margin-left:0 !important; margin-right:0 !important; padding-left:0 !important; padding-right:0 !important; }

/* RECOMMEND横ビチ（SP） */
@media (max-width:767px){
  .p-recommend > .u-container{ padding-left:0 !important; padding-right:0 !important; }
  .p-recommend .p-recommend-list,
  .p-recommend .c-item-list{
    width:100vw !important; max-width:none !important; position:relative !important;
    left:50% !important; transform:translateX(-50%) !important; margin:0 !important; padding:0 !important;
  }
  .p-recommend .c-item-list__item{ padding-left:6px !important; padding-right:6px !important; }
  .p-recommend .c-item-list__img img{ display:block !important; width:100% !important; height:auto !important; }
  .p-recommend .slick-slide{ margin:0 5px !important; }
}

/* SPパッチ（PRODUCTS / STYLE GUIDE） */
@media (max-width:767px){
  .top-products,
  .top-products > .u-container{ padding-left:0 !important; padding-right:0 !important; }

  .top-products .c-item-list,
  .top-products .c-slider-thema{
    width:100vw !important; max-width:none !important; position:relative !important;
    left:50% !important; transform:translateX(-50%) !important; margin:0 !important; padding:0 !important;
  }
  .top-products .slick-list{ margin:0 !important; padding:0 !important; }
  .top-products .slick-track{ margin-left:0 !important; }
  .top-products .slick-slide{ margin:0 5px !important; }
  .top-products img{ display:block !important; width:100% !important; height:auto !important; }

  .p-ranking,
  .p-ranking > .u-container{ padding-left:0 !important; padding-right:0 !important; }
  .p-ranking .p-ranking-list{
    width:100vw !important; max-width:none !important; position:relative !important;
    left:50% !important; transform:translateX(-50%) !important; margin:0 !important; padding:0 !important;
  }
  .p-ranking .slick-list{ margin:0 !important; padding:0 !important; }
  .p-ranking .slick-track{ margin-left:0 !important; }
  .p-ranking .slick-slide{ margin:0 4px !important; }
  .p-ranking .p-ranking-list__img img{ display:block !important; width:100% !important; height:auto !important; }
}

/* グループバナー横ビチ（SP） */
@media (max-width:767px){
  .p-group-bnr,
  .p-group-bnr > .u-container{ padding-left:0 !important; padding-right:0 !important; }
  .p-group-bnr .p-group-bnr-list,
  .p-group-bnr .c-slider-thema{
    width:100vw !important; max-width:none !important; position:relative !important;
    left:50% !important; transform:translateX(-50%) !important; margin:0 !important; padding:0 !important;
  }
  .p-group-bnr .slick-list{ margin:0 !important; padding:0 !important; }
  .p-group-bnr .slick-track{ margin-left:0 !important; }
  .p-group-bnr .slick-slide{ margin:0 5px !important; }
  .p-group-bnr img{ display:block !important; width:100% !important; height:auto !important; }
  .p-group-bnr{ margin-bottom:12px !important; }
}

/******************************
 * THIS（pickup 1つ目）カスタム：変数で色制御
 ******************************/
.p-pickup:first-of-type{
  --pickup-color:#ddd7d7;       /* 背景帯＆見出し帯 */
  --pickup-text:#13294b;        /* 見出し文字色   */
  --pickup-gap:20px;
  --pickup-gap-btn:20px;
  --pickup-bottom-space:28px;
  --pickup-card-gap:28px;

  position:relative !important;
  background:transparent !important;
  overflow:visible !important;
  padding-bottom:var(--pickup-bottom-space) !important;

  /* 画像比率（可変） */
  --pickup-aspect-pc:16/9;
  --pickup-aspect-sp:4/3;
}
.p-pickup:first-of-type::before{
  content:""; position:absolute; inset:0 auto 0 50%; transform:translateX(-50%);
  width:100vw;  
  z-index:0;
}
.p-pickup:first-of-type .c-ttl-main{
  display:flex !important; align-items:center !important; justify-content:center !important;
  min-height:25px; padding:8px 12px; position:relative !important;
  background:transparent !important; color:var(--pickup-text) !important; text-align:center; z-index:1;
}
.p-pickup:first-of-type .c-ttl-main::after{
  content:""; position:absolute; inset:0 auto 0 50%; transform:translateX(-50%); width:100vw;
  z-index:-1;
}
.p-pickup:first-of-type .p-pickup-list,
.p-pickup:first-of-type .p-pickup-list__item,
.p-pickup:first-of-type .p-pickup-list__txt{ margin:0 !important; padding:0 !important; }
.p-pickup:first-of-type .p-pickup-list__img{
  width:100vw !important; max-width:none !important; margin:0 !important; padding:0 !important;
  position:relative !important; left:50% !important; transform:translateX(-50%) !important; overflow:hidden;
  aspect-ratio:var(--pickup-aspect-pc) !important; height:auto !important; max-height:none !important;
}
@media (max-width:767px){
  .p-pickup:first-of-type .p-pickup-list__img{ aspect-ratio:var(--pickup-aspect-sp) !important; }
}
.p-pickup:first-of-type .p-pickup-list__img img{
  display:block !important; width:100% !important; height:100% !important; object-fit:cover !important; object-position:50% 20%;
}
.p-pickup:first-of-type .p-pickup-list__item{ margin-bottom:var(--pickup-card-gap) !important; display:block !important; }
.p-pickup:first-of-type .p-pickup-list__img{ margin-bottom:var(--pickup-gap) !important; }
.p-pickup:first-of-type .p-pickup-list__txt,
.p-pickup:first-of-type .p-pickup-list__btn{ margin-bottom:var(--pickup-gap) !important; }
.p-pickup:first-of-type .p-pickup-list__btn{ margin-top:var(--pickup-gap-btn) !important; }
.p-pickup:first-of-type .p-pickup-list__item:last-child{ margin-bottom:var(--pickup-bottom-space) !important; }

/* THIS（共通）画像のフタをOFF（演出なし保険） */
.p-pickup .u-opa{ opacity:1 !important; visibility:visible !important; }
.p-pickup .p-pickup-list__img .p-pickup-list__img-bg,
.p-pickup .p-pickup-list__img.faded .p-pickup-list__img-bg{ width:0 !important; opacity:0 !important; display:none !important; }
.p-pickup .p-pickup-list__img::before,
.p-pickup .p-pickup-list__img::after{ display:none !important; width:0 !important; opacity:0 !important; }

/******************************
 * BLOG（#wp-latest）締めライン
 ******************************/
:root{
  --wp-card-gap:28px;
  --wp-line-gap-above:14px;
  --wp-line-gap-below:28px;
  --wp-line-color:#ddd;
  --wp-line-weight:1px;
}
#wp-latest .c-btn,
#wp-latest .c-btn a,
#wp-latest .btn,
#wp-latest .more,
#wp-latest .wp-more{ margin-bottom:0 !important; }
.brand-section.u-no-bg #wp-latest .wp-card{ margin-bottom:var(--wp-card-gap) !important; background:#fff !important; }
.brand-section.u-no-bg #wp-latest .wp-card:last-child{ margin-bottom:0 !important; }
.brand-section.u-no-bg #wp-latest{
  position:relative; z-index:1; padding-bottom:var(--wp-line-gap-below) !important;
}
.brand-section.u-no-bg #wp-latest::after{
  content:"" !important; display:block !important; height:var(--wp-line-weight);
  background:var(--wp-line-color); margin-top:var(--wp-line-gap-above) !important; margin-bottom:var(--wp-line-gap-below) !important;
  position:relative; left:50%; width:100vw; transform:translateX(-50%);
}
@media (max-width:767px){
  :root{ --wp-card-gap:28px; --wp-line-gap-above:12px; --wp-line-gap-below:24px; }
}

/******************************
 * 全幅安定ユーティリティ
 ******************************/
.full-bleed-stable{
  width:100vw !important;
  margin-left:calc(50% - 50vw) !important;
  margin-right:calc(50% - 50vw) !important;
  left:auto !important;
  transform:none !important;
  will-change:auto !important;
  backface-visibility:hidden !important;
}

/* はみ出し防止 */
html, body{ overflow-x:hidden; }

/******************************
 * INFORMATION レイアウト
 ******************************/
.info-heading{ font-size:1.5em; margin-bottom:20px; text-align:center; }
.info-card img[src=""], .info-card img:not([src]), .info-card img[src*="info"].broken{ display:none; }

.info-grid{
  display:grid;
  grid-template-columns:repeat(3, minmax(0,1fr)); /* PC 3列 */
  gap:20px; list-style:none; margin:0; padding:0 var(--gutter);
}
.info-card img{ width:100%; aspect-ratio:3/4; object-fit:cover; display:block; }
@media (max-width:1024px){ .info-grid{ grid-template-columns:repeat(2, 1fr); } }
@media (max-width:560px){  
  .info-grid{ grid-template-columns: repeat(2, 1fr); }
}

/***********************
 * COLUMN下の単発画像 → BLOGのガターに揃える
 ***********************/
.brand-section.u-no-bg > img{
  display:block !important; width:100% !important; height:auto !important; margin:0 auto !important;
  box-sizing:border-box; padding-left:var(--gutter); padding-right:var(--gutter);
}

/******************************
 * pickup新着（id="pickup-new"）：ここだけで色変更可能
 ******************************/

/* ===== 修正セット（CSSの一番最後に追加）======================== */

/* 1) ブログ区切り線を復活 + 余白を詰める */
.brand-section.u-no-bg #wp-latest::after{
  content:"" !important;
  display:block !important;
  height:1px;
  background:#ddd;
  position:relative; left:50%; width:100vw; transform:translateX(-50%);
  margin-top:8px !important;     /* 上の余白 */
  margin-bottom:6px !important;   /* 下の余白（詰め）*/
}

/* 2) THIS（新着）の上を詰める */
#pickup-new{
  padding-top:10px !important;
  margin-top:0 !important;
}

/* 3) THIS の帯色＆文字色を強制（確実に反映） */
.p-pickup#pickup-new .c-ttl-main{ text-align:center !important; }
    /* 文字色 */

/* 4) FEATURE → COLUMN の薄い仕切り線（必要なら） */
.brand-section.u-no-bg{ position:relative; }
.brand-section.u-no-bg::before{
  content:"" !important;
  display:block; height:1px; background:#ddd;
  position:relative; left:50%; width:100vw; transform:translateX(-50%);
  margin:6px 0 8px; /* 余白小さめ */
}

/* 5) RECOMMEND と STYLE GUIDE の距離を詰める + 薄線 */
.p-recommend{ padding-bottom:0 !important; }
.p-ranking{   padding-top:0 !important; position:relative; }




/* =============================================================== */

/* 上のINFORMATION（画像グリッド）に上下の線を付ける */
#info-top{ position: relative; }
#info-top::before,
#info-top::after{
  content:"";
  position:absolute;
  left:50%;
  transform:translateX(-50%);
  width:100vw;   /* 画面幅いっぱい */
  height:1px;
  background:#ddd; /* 薄いグレー */
  z-index: 1;
  pointer-events:none;
}
#info-top::before{ top:0; }     /* 上の線 */
#info-top::after { bottom:0; }  /* 下の線 */
/* STYLE GUIDE 下の線と INFORMATION 見出しの距離を詰める */


#info-top .brand-heading{
  margin-top: 6px !important;   /* 見出しの上余白を少しだけに */
}


/* STYLE GUIDE 本体の下余白を増やす（上書き） */
.p-ranking-list .slick-dotted.slick-slider{
  margin-bottom: 900px !important;   /* 好みで調整 */
}

/* STYLE GUIDE の仕切り線の“線の上”を広げる */

/* STYLE GUIDE と INFORMATIONの“線”の間を広げる */
#info-top{
  margin-top: 16px !important;   /* 好みで 12&#12316;24px くらいに調整 */
}

/* SPで少し広げたい場合（任意） */
@media (max-width:767px){
  #info-top{ margin-top: 80px !important; }
}




/* 帯色に変数を適用 */
#pickup-new::before,
#pickup-new .c-ttl-main::after{
  background: var(--pickup-color) !important;
}

/* 見出し文字色に変数を適用 */
#pickup-new .c-ttl-main,
#pickup-new .c-ttl-main *{
  color: var(--pickup-text) !important;
}



/* pickup新着（id="pickup-new"）の帯背景を最優先で上書き */
.p-pickup#pickup-new::before,
.p-pickup#pickup-new .c-ttl-main::after{
  background: var(--pickup-color) !important;
}

#pickup-new{
  --pickup-color: #ddd7d7; /* 帯の色 */
  --pickup-text:  #000000; /* タイトル文字色 */
}
/* #pickup-new セクション自体の背景を上書き */
.p-pickup#pickup-new { background: var(--pickup-color) !important; }
/* THIS のタイトル帯を広げる */
#pickup-new .c-ttl-main {
  padding:20px 30px !important; /* 上下を200pxに（デフォは8px） */
  min-height:10px !important;   /* 予備で高さも広げておく */
}
/* BRAND LIST カード微調整 */
.brand-card{
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:6px; padding:6px 4px; background:#fff; text-decoration:none;
}
.brand-card img{
  width:100%; height:auto; display:block; object-fit:contain;
  aspect-ratio: 21/ 9; /* 正方形で揃える */
  background:#fff;
}
.brand-card__name{
  display:block; font-size:12px; line-height:1.3; color:#333; text-align:center;
  word-break:keep-all;
}
@media (max-width:560px){
  .brand-card__name{ font-size:11px; }
}
.auto-thumb img{
  width:100%;
  aspect-ratio:3/4;   /* 必要に応じて 16/9 や 4/3 へ変更可 */
  object-fit:cover;
  display:block;
}

/* COLUMNの下にあるブログカードの高さを先取りしてレイアウトシフト防止 */
#wp-latest{
  min-height: 360px;       /* ここで“空き”を確保：320&#12316;420pxくらいで調整 */
}

/* サムネ枠の比率を固定 → 画像が来ても高さが暴れない */
#wp-latest .wp-thumb{
  width:100%;
  aspect-ratio: 16 / 9;    /* 画像の横長さに合わせて 4/3 や 3/2 でもOK */
}
#wp-latest .wp-thumb img{
  width:100%; height:100%;
  object-fit: cover; display:block;
}

/* COLUMN直下の単発画像も安全に（既に入っていればOK） */
.brand-section.u-no-bg > img{
  display:block; width:100%; height:auto;
}