@charset "utf-8";
/* ===========================================================================
   下層ページ共通スタイル
   main.css のトークン（#080808 / #efefef / #393939・PC 1440 / SP 414）を踏襲。
   =========================================================================== */

.l-header.-solid{mix-blend-mode:normal}

/* ---------- 下層 MV ---------- */
.p-mv{height:34.7222222222vw;min-height:380px;position:relative;overflow:hidden}
.p-mv__image{position:absolute;inset:0}
.p-mv__image::after{
  content:"";position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(8,8,8,.75) 0%,rgba(8,8,8,.25) 45%,rgba(8,8,8,.95) 100%);
}
.p-mv__image img{height:100%;object-fit:cover;width:100%;transform:scale(1.12);transition:transform 1.2s ease-out}
.p-mv.-inview .p-mv__image img{transform:scale(1)}
.p-mv__image .-sp{display:none}
.p-mv__body{
  position:absolute;bottom:3.4722222222vw;left:6.5277777778vw;right:6.5277777778vw;z-index:1;
}
/* 既定で表示する。flash-inv は演出であって表示条件にはしない（アニメが走らない環境で消えるため） */
.p-mv__heading{font-size:5.5rem;line-height:1;text-transform:uppercase}
.p-mv.-inview .p-mv__heading{animation:flash-inv .3s cubic-bezier(.4,0,.2,1) .3s forwards}
.p-mv__lead{
  color:#efefef;font-family:"Noto Sans JP",sans-serif;font-size:1.3rem;
  line-height:1.9;margin-top:14px;max-width:60ch;
}

/* ---------- 共通レイアウト ---------- */
.c-container{padding:90px 6.5277777778vw 40px}
.c-section{margin-bottom:96px}
.c-section:last-of-type{margin-bottom:0}
.c-section__heading{
  font-size:2.8rem;padding-bottom:12px;position:relative;text-transform:uppercase;margin-bottom:34px;
}
.c-section__heading .__text{display:inline-block}
.c-section.-inview .c-section__heading .__text{animation:flash-inv .3s cubic-bezier(.4,0,.2,1) .3s forwards}
.c-section__heading::before,.c-section__heading::after{
  content:"";position:absolute;bottom:0;left:0;height:1px;width:0;display:block;
}
.c-section__heading::before{background-color:#393939;transition:width .4s .5s ease-in}
.c-section__heading::after{background-color:#efefef;transition:width .4s .7s ease-in}
.c-section.-inview .c-section__heading::before,
.c-section.-inview .c-section__heading::after{width:100%}
.c-section__body{
  font-family:"Noto Sans JP",sans-serif;font-size:1.4rem;line-height:2;
}
/* 本文と表・リストなどのブロックは大きく離す（段落同士は 1em のまま） */
.c-section__body > * + *{margin-top:36px}
.c-section__body p + p{margin-top:1em}
/* 本文中の素のリンクだけ下線を引く。ボタン等のクラス付きリンクには効かせない */
.c-section__body a:not([class]){color:#efefef;text-decoration:underline;text-underline-offset:3px}
.c-note{color:#efefef;font-size:1.2rem;line-height:1.9}
.c-empty{color:#efefef;font-family:"Noto Sans JP",sans-serif;font-size:1.4rem;padding:60px 0;text-align:center}
.c-cta{margin:60px auto 0;width:190px}
.c-cta .c-button{
  border:1px solid #393939;border-radius:32px;font-size:1.8rem;line-height:1;
  overflow:hidden;transition:color .3s,background-color .3s;
}
.c-cta .c-button:hover{background-color:#efefef;color:#080808}

/* ---------- 汎用リスト ---------- */
.c-deflist{display:grid;gap:0}
.c-deflist__item{
  border-bottom:1px solid #393939;display:grid;grid-template-columns:180px 1fr;gap:0 24px;padding:16px 0;
}
.c-deflist__item:first-child{border-top:1px solid #393939}
.c-deflist dt{color:#efefef;font-size:1.2rem;letter-spacing:.06em;text-transform:uppercase;padding-top:.25em}
.c-deflist dd{font-family:"Noto Sans JP",sans-serif}

.c-pricelist{display:grid}
.c-pricelist__item{
  align-items:baseline;border-bottom:1px solid #393939;display:flex;gap:0 20px;
  justify-content:space-between;padding:15px 0;
}
.c-pricelist__item:first-child{border-top:1px solid #393939}
.c-pricelist .-price{flex:none;font-variant-numeric:tabular-nums;letter-spacing:.04em}

.c-taglist{display:flex;flex-wrap:wrap;gap:8px}
.c-taglist li{border:1px solid #393939;border-radius:20px;font-size:1.2rem;padding:5px 12px 4px}

.c-marklist li{padding-left:24px;position:relative}
.c-marklist li + li{margin-top:6px}
.c-marklist li::before{position:absolute;left:0;top:0}
.c-marklist.-ok li::before{content:"○";color:#efefef}
.c-marklist.-ng li::before{content:"×";color:#efefef}

/* ---------- ABOUT ---------- */
.p-about-concept{display:grid;gap:0 4.1666666667vw;grid-template-columns:1fr 42%;align-items:center}
.p-about-concept__catch{font-family:"Michroma",sans-serif;font-size:3.2rem;line-height:1.2;margin-bottom:22px;text-transform:uppercase}
.p-about-concept__video{border-radius:10px;overflow:hidden;position:relative;width:100%;display:block}
.p-about-concept__video img{width:100%;transition:transform .4s}
.p-about-concept__video:hover img{transform:scale(1.05)}
.p-about-concept__play{
  border:1px solid #efefef;border-radius:50%;height:72px;width:72px;
  left:50%;top:50%;position:absolute;transform:translate(-50%,-50%);
  background-color:rgba(8,8,8,.35);transition:background-color .3s;
}
.p-about-concept__play::after{
  content:"";position:absolute;left:54%;top:50%;transform:translate(-50%,-50%);
  border-left:16px solid #efefef;border-top:10px solid transparent;border-bottom:10px solid transparent;
}
.p-about-concept__video:hover .p-about-concept__play{background-color:rgba(8,8,8,.7)}

.p-about-floor__item{border-bottom:1px solid #393939}
.p-about-floor__item:first-child{border-top:1px solid #393939}
.p-about-floor__trigger{
  align-items:center;display:flex;gap:0 20px;padding:20px 0;text-align:left;width:100%;
  transition:opacity .3s;
}
.p-about-floor__trigger:hover{opacity:.6}
.p-about-floor__trigger .-no{color:#efefef;font-size:1.3rem;flex:none;width:32px}
.p-about-floor__trigger .-name{font-size:1.8rem;letter-spacing:.04em}
.p-about-floor__trigger .-mark{
  flex:none;height:12px;margin-left:auto;position:relative;width:12px;
}
.p-about-floor__trigger .-mark::before,.p-about-floor__trigger .-mark::after{
  background-color:#efefef;content:"";position:absolute;left:0;top:50%;height:1px;width:100%;
  transition:transform .3s;
}
.p-about-floor__trigger .-mark::after{transform:rotate(90deg)}
.p-about-floor__trigger[aria-expanded="true"] .-mark::after{transform:rotate(0)}
.p-about-floor__panel{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}
.p-about-floor__panel.-open{grid-template-rows:1fr}
.p-about-floor__inner{overflow:hidden}
.p-about-floor__inner img{border-radius:10px;margin-bottom:16px;width:100%}
.p-about-floor__inner p{
  color:#efefef;font-family:"Noto Sans JP",sans-serif;font-size:1.3rem;padding-bottom:24px;
}

/* 動画モーダル */
.c-modalvideo{
  align-items:center;background-color:rgba(8,8,8,.94);display:flex;justify-content:center;
  inset:0;position:fixed;z-index:9;padding:6vw;
}
.c-modalvideo[hidden]{display:none}
.c-modalvideo__inner{max-width:1000px;width:100%}
.c-modalvideo__inner video{border-radius:10px;width:100%}
.c-modalvideo__close{
  height:40px;position:absolute;right:4vw;top:4vw;width:40px;
}
.c-modalvideo__close::before,.c-modalvideo__close::after{
  background-color:#efefef;content:"";height:1px;left:0;position:absolute;top:50%;width:100%;
}
.c-modalvideo__close::before{transform:rotate(45deg)}
.c-modalvideo__close::after{transform:rotate(-45deg)}

/* ---------- VIP ---------- */
.p-vip-lead{margin-bottom:36px;max-width:70ch}
.p-vip-feature{display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}
.p-vip-feature__item{border:1px solid #393939;border-radius:10px;padding:24px}
.p-vip-feature__item .-no{color:#efefef;font-family:"Michroma",sans-serif;font-size:1.2rem}
.p-vip-feature__item h3{font-size:1.7rem;margin:10px 0 8px}
.p-vip-feature__item p{color:#efefef;font-size:1.3rem}
.p-vip-tab__nav{border-bottom:1px solid #393939;display:flex;flex-wrap:wrap;gap:0 26px;margin-bottom:28px}
.p-vip-tab__link{
  color:#efefef;font-size:1.4rem;letter-spacing:.04em;padding-bottom:12px;position:relative;
  transition:color .3s;
}
.p-vip-tab__link::after{
  background-color:#efefef;bottom:-1px;content:"";height:1px;left:0;position:absolute;
  transition:width .3s;width:0;
}
.p-vip-tab__link.-selected{color:#efefef}
.p-vip-tab__link.-selected::after{width:100%}
.p-vip-tab__panel{display:none}
.p-vip-tab__panel.-selected{display:grid;gap:0 3vw;grid-template-columns:1fr 1fr;align-items:start}
.p-vip-tab__panel img{border-radius:10px;width:100%}

/* ---------- SYSTEM ---------- */
.p-system{display:grid;gap:0 5vw;grid-template-columns:200px 1fr;align-items:start}
.p-system__nav{position:sticky;top:120px}
.p-system__nav ul{display:grid;gap:12px}
.p-system__nav a{
  color:#efefef;display:block;font-size:1.3rem;letter-spacing:.06em;
  padding-left:16px;position:relative;text-transform:uppercase;transition:color .3s;
}
.p-system__nav a::before{
  background-color:#393939;content:"";height:1px;left:0;position:absolute;top:.85em;
  transition:background-color .3s,width .3s;width:8px;
}
.p-system__nav a:hover,.p-system__nav a.-current{color:#efefef}
.p-system__nav a.-current::before{background-color:#efefef;width:12px}
.p-system-dress{display:grid;gap:0 3vw;grid-template-columns:1fr 1fr}
.p-system-dress h3{font-family:"Michroma",sans-serif;font-size:1.6rem;margin-bottom:14px}

/* ---------- FAQ ---------- */
/* Q&A は行長が伸びすぎないよう、問い合わせフォームと同じ幅に揃える */
.p-faq{margin:0 auto;max-width:800px}
.p-faq__item{border-bottom:1px solid #393939}
.p-faq__item:first-child{border-top:1px solid #393939}
.p-faq__question{
  align-items:flex-start;display:flex;gap:0 16px;padding:20px 0;text-align:left;width:100%;
  transition:color .3s;
}
.p-faq__question.-disabled{color:#393939}
.p-faq__question .-q{color:#efefef;flex:none;font-size:1.3rem;width:18px}
.p-faq__question .-text{font-family:"Noto Sans JP",sans-serif;font-size:1.5rem;line-height:1.6}
.p-faq__question .-mark{flex:none;height:12px;margin-left:auto;position:relative;top:.4em;width:12px}
.p-faq__question .-mark::before,.p-faq__question .-mark::after{
  background-color:currentColor;content:"";height:1px;left:0;position:absolute;top:50%;width:100%;
  transition:transform .3s;
}
.p-faq__question .-mark::after{transform:rotate(90deg)}
.p-faq__question[aria-expanded="true"] .-mark::after{transform:rotate(0)}
.p-faq__answer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .35s ease}
.p-faq__answer.-open{grid-template-rows:1fr}
.p-faq__inner{display:flex;gap:0 16px;overflow:hidden}
.p-faq__inner .-a{color:#efefef;flex:none;font-size:1.3rem;width:18px}
.p-faq__inner p{
  color:#efefef;font-family:"Noto Sans JP",sans-serif;font-size:1.4rem;line-height:1.9;padding-bottom:22px;
}

/* ---------- ACCESS ---------- */
.p-access{display:grid;gap:0 4vw;grid-template-columns:1fr 1fr;align-items:start}
.p-access__map img{aspect-ratio:4/3;border-radius:10px;object-fit:cover;width:100%}
.p-access__map .c-note{margin-top:10px}

/* ---------- CONTACT ---------- */
.p-contact{margin:0 auto;max-width:800px}
.p-contact__lead{font-family:"Noto Sans JP",sans-serif;font-size:1.4rem;line-height:2;margin-bottom:40px}
.p-contact-form__row{
  border-bottom:1px solid #393939;display:grid;gap:0 24px;grid-template-columns:220px 1fr;padding:20px 0;
}
.p-contact-form__row:first-of-type{border-top:1px solid #393939}
.p-contact-form__label{
  align-items:center;display:flex;font-size:1.3rem;gap:0 10px;letter-spacing:.04em;padding-top:.4em;
  font-family:"Noto Sans JP",sans-serif;
}
.p-contact-form__label .-req{
  background-color:#efefef;border-radius:3px;color:#080808;font-size:1rem;padding:2px 6px 1px;
}
.p-contact-form__field input,.p-contact-form__field select,.p-contact-form__field textarea{
  background-color:rgba(255,255,255,.04);border:1px solid #393939;border-radius:4px;color:#efefef;
  font-family:"Noto Sans JP",sans-serif;font-size:1.4rem;padding:12px 14px;width:100%;
  transition:border-color .3s;
}
.p-contact-form__field input:focus,.p-contact-form__field select:focus,
.p-contact-form__field textarea:focus{border-color:#efefef;outline:none}
.p-contact-form__field textarea{resize:vertical}
.p-contact-form-consent{margin-top:28px;text-align:center}
.p-contact-form-consent label{
  align-items:center;cursor:pointer;display:inline-flex;font-family:"Noto Sans JP",sans-serif;
  font-size:1.3rem;gap:0 10px;
}
.p-contact-form-consent input{accent-color:#efefef;height:16px;width:16px}
.p-contact-form__button{margin:28px auto 0;width:220px}
.p-contact-form__button .c-button{
  border:1px solid #efefef;background-color:#efefef;border-radius:32px;color:#080808;
  font-size:1.6rem;padding:15px 0 16px;transition:opacity .3s;
}
.p-contact-form__button .c-button:disabled{cursor:not-allowed;opacity:.35}
.p-contact-form__done{
  border:1px solid #393939;border-radius:6px;font-family:"Noto Sans JP",sans-serif;font-size:1.4rem;
  margin-top:24px;padding:16px;text-align:center;
}

/* ===========================================================================
   SP
   =========================================================================== */
@media (max-width:768px){
  .p-mv{height:auto;min-height:0;aspect-ratio:3/4;max-height:70vh}
  .p-mv__image .-pc{display:none}
  .p-mv__image .-sp{display:block}
  .p-mv__body{bottom:7.2463768116vw;left:4.8309178744vw;right:4.8309178744vw}
  .p-mv__heading{font-size:min(9vw,3.4rem)}
  .p-mv__lead{font-size:1.2rem}

  .c-container{padding:56px 4.8309178744vw 30px}
  .c-section{margin-bottom:64px}
  .c-section__heading{font-size:2rem;margin-bottom:24px}
  .c-section__body{font-size:1.3rem}

  .c-section__body > * + *{margin-top:26px}
  .c-deflist__item{grid-template-columns:1fr;gap:6px 0;padding:14px 0}
  .c-pricelist__item{padding:13px 0}
  .c-cta{width:164px}
  .c-cta .c-button{font-size:1.5rem;padding:14px 0 16px}

  .p-event__title{font-size:2.4rem}
  .p-event__button{height:38px;width:38px}
  .p-event-category{margin-bottom:30px}
  .p-event__wrap{grid-template-columns:repeat(2,1fr);gap:30px 4.8309178744vw}
  .c-event__title{font-size:1.4rem}
  .c-event__text{font-size:1.1rem;margin-top:12px}
  .c-event-category__item{font-size:1rem}

  .p-post{grid-template-columns:1fr;gap:32px 0}
  .p-post__title{font-size:2.2rem}
  .p-post-info__item{grid-template-columns:1fr;gap:6px 0}
  .p-post__back{width:100%}

  .p-about-concept{grid-template-columns:1fr;gap:28px 0}
  .p-about-concept__catch{font-size:2.2rem}
  .p-about-concept__play{height:56px;width:56px}
  .p-about-floor__trigger .-name{font-size:1.5rem}

  .p-vip-feature{grid-template-columns:1fr}
  .p-vip-tab__nav{gap:0 18px}
  .p-vip-tab__link{font-size:1.2rem}
  .p-vip-tab__panel.-selected{grid-template-columns:1fr;gap:20px 0}

  .p-system{grid-template-columns:1fr;gap:28px 0}
  .p-system__nav{position:static}
  .p-system__nav ul{display:flex;flex-wrap:wrap;gap:8px 16px}
  .p-system-dress{grid-template-columns:1fr;gap:24px 0}

  .p-faq__question .-text{font-size:1.3rem}
  .p-faq__inner p{font-size:1.3rem}

  .p-access{grid-template-columns:1fr;gap:24px 0}

  .p-contact-form__row{grid-template-columns:1fr;gap:8px 0}
  .p-contact-form__label{padding-top:0}
  .p-contact-form__button{width:100%}
  .c-modalvideo{padding:0 5vw}
  .c-modalvideo__close{right:5vw;top:16px}
}

/* ---------- /ranking/ （明るい帯をやめてサイト配色に統一したぶんの余白調整） ---------- */
.p-ranking-page{padding-top:90px;padding-bottom:40px}
/* キービジュアルで既に Group Ranking と出しているので、コンポーネント側の見出しは伏せる */
.p-ranking-page .c-rank__heading{display:none}
.p-ranking-page .c-rank__period{margin-top:0}
@media (max-width:768px){
  .p-ranking-page{padding-top:56px;padding-bottom:30px}
}

/* ===========================================================================
   Rio Group 用に追加したコンポーネント
   =========================================================================== */

/* ---- グローバルナビの店舗リスト ---- */
.l-navigation-shop{display:grid;gap:8px 0;margin-top:34px;padding-top:26px;border-top:1px solid #393939}
.l-navigation-shop__link{
  align-items:baseline;color:#efefef;display:flex;font-size:1.3rem;gap:0 12px;transition:color .3s;
}
.l-navigation-shop__link:hover{opacity:.6}
.l-navigation-shop__link.-current{text-decoration:underline;text-underline-offset:5px}
.l-navigation-shop__link.-disabled{color:#2c2c2c}
.l-navigation-shop__link .-area{font-size:1rem;letter-spacing:.06em;opacity:.7}

/* ---- ボタン群 ---- */
.c-btnrow{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.c-btn{
  align-items:center;background-color:#efefef;border:1px solid #efefef;border-radius:32px;color:#080808;
  display:flex;font-size:1.3rem;justify-content:center;letter-spacing:.04em;min-width:170px;
  padding:13px 22px 12px;transition:background-color .3s,color .3s;
}
.c-btn:hover{background-color:rgba(0,0,0,0);color:#efefef}
.c-btn.-ghost{background-color:rgba(0,0,0,0);border-color:#393939;color:#efefef}
.c-btn.-ghost:hover{border-color:#efefef}

/* ---- SNS ---- */
.c-sns{display:flex;flex-wrap:wrap;gap:8px}
.c-sns__link{
  border:1px solid #393939;border-radius:20px;font-family:"Michroma",sans-serif;font-size:1rem;
  letter-spacing:.06em;padding:5px 12px 4px;transition:border-color .3s,color .3s;
}
.c-sns__link:hover{border-color:#efefef}

/* ---- 店舗一覧（下層 / 求人） ---- */
.p-shoplist{display:grid;gap:34px 2.2222222222vw;grid-template-columns:repeat(3,1fr)}
.p-shoplist__thumb{aspect-ratio:3/2;border-radius:10px;overflow:hidden;background-color:#141414}
.p-shoplist__thumb img{height:100%;object-fit:cover;width:100%;transition:transform .4s}
.p-shoplist__link:hover .p-shoplist__thumb img{transform:scale(1.05)}
.p-shoplist__area{color:#efefef;font-size:1.1rem;letter-spacing:.06em;margin-top:14px}
.p-shoplist__name{font-family:"Michroma",sans-serif;font-size:1.7rem;line-height:1.3;margin-top:6px}
.p-shoplist__addr{color:#efefef;font-size:1.2rem;line-height:1.7;margin-top:8px}
.p-shoplist__meta{color:#efefef;font-size:1.1rem;margin-top:6px}

/* ---- アクセス ---- */
.p-access-list{display:grid;gap:88px}
.p-access__item{display:grid;gap:0 3vw;grid-template-columns:38% 1fr;align-items:start}
.p-access__thumb{aspect-ratio:3/2;border-radius:10px;overflow:hidden;background-color:#141414}
.p-access__thumb img{height:100%;object-fit:cover;width:100%}
.p-access__area{color:#efefef;font-size:1.1rem;letter-spacing:.06em}
.p-access__name{font-family:"Michroma",sans-serif;font-size:2rem;line-height:1.3;margin:6px 0 18px}

/* ---- ランキング：写真なし / 空 / タブ多数 ---- */
.c-rank__noimg{
  align-items:center;color:#3d3d3d;display:flex;font-family:"Michroma",sans-serif;font-size:1rem;
  height:100%;justify-content:center;letter-spacing:.1em;width:100%;
}
.c-rank__empty{
  color:#efefef;font-size:1.3rem;grid-column:1/-1;padding:50px 0;text-align:center;
}

/* ---- 店舗ページ：料金ハイライト（KV 直下） ---- */
.p-shop-price{
  background-color:rgba(239,239,239,.03);border:1px solid #393939;border-radius:12px;
  padding:6px 34px 28px;
}
.p-shop-price .c-pricelist__item:first-child{border-top:0}
.p-shop-price .c-pricelist__item:last-child{border-bottom:0}
.p-shop-price .c-pricelist .-price{font-family:"Michroma",sans-serif;font-size:1.6rem}
.p-shop-price .c-note{margin-top:14px}
.p-shop-price .c-btnrow{margin-top:22px}

/* ---- 店舗ページ：店舗情報（左＝情報 / 右＝地図、SP は地図が下） ---- */
.p-shopinfo{display:grid;gap:0 3.4722222222vw;grid-template-columns:1fr 42%;align-items:start}
.p-shopinfo__body .c-deflist__item{grid-template-columns:110px 1fr;gap:0 18px}
.p-shopinfo__map iframe{
  aspect-ratio:4/3;border:0;border-radius:10px;display:block;width:100%;
  filter:grayscale(1) invert(.92) contrast(.86);
}
.p-shopinfo__maplink{margin-top:14px}
.p-shopinfo__maplink .c-btn{width:100%}

.c-rank-tabs.-wide{grid-template-columns:repeat(4,1fr);gap:14px 1.5277777778vw}
.c-rank-tabs.-wide .c-rank-tabs__link{font-size:1.25rem;padding-bottom:12px}

@media (max-width:768px){
  .l-navigation-shop{margin-top:24px;padding-top:20px}
  .l-navigation-shop__link{font-size:1.1rem}
  .c-btn{font-size:1.2rem;min-width:0;flex:1 1 auto;padding:12px 16px 11px}
  .p-shoplist{grid-template-columns:1fr;gap:28px}
  .p-shoplist__name{font-size:1.5rem}
  .p-access-list{gap:56px}
  .p-access__item{grid-template-columns:1fr;gap:16px 0}
  .p-access__name{font-size:1.6rem}
  .p-shop-price{padding:4px 20px 22px}
  .p-shop-price .c-pricelist .-price{font-size:1.4rem}
  .p-shopinfo{grid-template-columns:1fr;gap:28px 0}
  .p-shopinfo__body .c-deflist__item{grid-template-columns:1fr;gap:6px 0}
  .p-shopinfo__map iframe{aspect-ratio:1/1}
  .c-rank-tabs.-wide{grid-template-columns:repeat(2,1fr);gap:12px 4vw}
  .c-rank-tabs.-wide .c-rank-tabs__link{font-size:1.1rem}
  .c-rank-tabs.-wide .c-rank-tabs__item:nth-child(n+3){margin-top:0}
}

/* ---------- 店舗ページ：ヒーロー直下のキービジュアル ---------- */
.p-shop-kv{
  margin:2.7777777778vw auto 0;padding:0 6.5277777778vw;max-width:1180px;
}
.p-shop-kv img{
  border:1px solid #393939;border-radius:10px;display:block;width:100%;
  opacity:0;transform:translateY(16px);transition:opacity .6s,transform .6s;
}
.p-shop-kv.-inview img{opacity:1;transform:none}
@media (max-width:768px){
  .p-shop-kv{padding:0 4.8309178744vw;margin-top:28px}
}
