/* レンタルサイト（Bootstrap 3.4.1・renewal-common.min.css・style.css）が要素名だけで付ける性質を、ポータル内だけブラウザの既定値へ戻す（revert）。ポータル自身の CSS はこれより詳しいセレクタなので優先される。*/
.p-portal[data-portal] :where(*){box-sizing:revert}
.p-portal[data-portal] :where(a){background:revert;color:revert;font-feature-settings:revert;outline:revert;text-decoration:revert;transition:revert}
.p-portal[data-portal] :where(abbr){border:revert;cursor:revert;text-decoration:revert}
.p-portal[data-portal] :where(address){font-style:revert;line-height:revert;margin:revert}
.p-portal[data-portal] :where(article,aside,details,figcaption,header,hgroup,main,menu,nav,section,summary,template){display:revert}
.p-portal[data-portal] :where(audio){display:revert;height:revert;vertical-align:revert}
.p-portal[data-portal] :where(b,strong){font-weight:revert}
.p-portal[data-portal] :where(blockquote){border:revert;font-size:revert;margin:revert;padding:revert}
.p-portal[data-portal] :where(button){appearance:revert;color:revert;cursor:revert;font-family:revert;font-feature-settings:revert;font-kerning:revert;font-language-override:revert;font-optical-sizing:revert;font-size:revert;font-size-adjust:revert;font-stretch:revert;font-style:revert;font-variant:revert;font-variation-settings:revert;font-weight:revert;line-height:revert;margin:revert;overflow:revert;text-transform:revert}
.p-portal[data-portal] :where(canvas,progress){display:revert;vertical-align:revert}
.p-portal[data-portal] :where(caption){color:revert;padding:revert;text-align:revert}
.p-portal[data-portal] :where(code){background:revert;border-radius:revert;color:revert;font-family:revert;font-size:revert;padding:revert;white-space:revert}
.p-portal[data-portal] :where(col){display:revert;float:revert;position:revert}
.p-portal[data-portal] :where(dd){line-height:revert;margin:revert}
.p-portal[data-portal] :where(dfn){font-style:revert}
.p-portal[data-portal] :where(dt){font-weight:revert;line-height:revert}
.p-portal[data-portal] :where(fieldset){border:revert;margin:revert;min-width:revert;padding:revert}
.p-portal[data-portal] :where(figure){display:revert;margin:revert}
.p-portal[data-portal] :where(footer){color:revert;display:revert;font-size:revert;line-height:revert}
.p-portal[data-portal] :where(h1,h2,h3,h4,h5,h6){color:revert;font-family:revert;font-size:revert;font-weight:revert;line-height:revert;margin:revert}
.p-portal[data-portal] :where(hr){border:revert;box-sizing:revert;height:revert;margin:revert;overflow:revert}
.p-portal[data-portal] :where(img){border:revert;height:revert;max-height:revert;max-width:revert;vertical-align:revert}
.p-portal[data-portal] :where(input){appearance:revert;background:revert;border:revert;border-radius:revert;box-shadow:revert;box-sizing:revert;color:revert;cursor:revert;display:revert;font-family:revert;font-feature-settings:revert;font-kerning:revert;font-language-override:revert;font-optical-sizing:revert;font-size:revert;font-size-adjust:revert;font-stretch:revert;font-style:revert;font-variant:revert;font-variation-settings:revert;font-weight:revert;height:revert;line-height:revert;margin:revert;outline:revert;overflow:revert;padding:revert;text-align:revert;width:revert}
.p-portal[data-portal] :where(kbd){background:revert;border-radius:revert;box-shadow:revert;color:revert;font-family:revert;font-size:revert;font-weight:revert;padding:revert}
.p-portal[data-portal] :where(label){display:revert;font-weight:revert;margin:revert;max-width:revert}
.p-portal[data-portal] :where(legend){border:revert;box-sizing:revert;color:revert;display:revert;font-size:revert;line-height:revert;margin:revert;max-width:revert;padding:revert;white-space:revert;width:revert}
.p-portal[data-portal] :where(mark){background:revert;color:revert;padding:revert}
.p-portal[data-portal] :where(optgroup){color:revert;font-family:revert;font-feature-settings:revert;font-kerning:revert;font-language-override:revert;font-optical-sizing:revert;font-size:revert;font-size-adjust:revert;font-stretch:revert;font-style:revert;font-variant:revert;font-variation-settings:revert;font-weight:revert;line-height:revert;margin:revert}
.p-portal[data-portal] :where(output){color:revert;display:revert;font-size:revert;line-height:revert;padding:revert}
.p-portal[data-portal] :where(dl,ol,p,ul){margin:revert}
.p-portal[data-portal] :where(pre){background:revert;border:revert;border-radius:revert;color:revert;display:revert;font-family:revert;font-size:revert;line-height:revert;margin:revert;overflow:revert;padding:revert;word-break:revert}
.p-portal[data-portal] :where(samp){font-family:revert;font-size:revert}
.p-portal[data-portal] :where(select){background:revert;border:revert;border-radius:revert;box-shadow:revert;color:revert;font-family:revert;font-feature-settings:revert;font-kerning:revert;font-language-override:revert;font-optical-sizing:revert;font-size:revert;font-size-adjust:revert;font-stretch:revert;font-style:revert;font-variant:revert;font-variation-settings:revert;font-weight:revert;height:revert;line-height:revert;margin:revert;outline:revert;text-transform:revert}
.p-portal[data-portal] :where(small){color:revert;display:revert;font-size:revert;font-weight:revert;line-height:revert}
.p-portal[data-portal] :where(sub){bottom:revert;font-size:revert;line-height:revert;position:revert;vertical-align:revert}
.p-portal[data-portal] :where(sup){font-size:revert;line-height:revert;position:revert;top:revert;vertical-align:revert}
.p-portal[data-portal] :where(svg){overflow:revert}
.p-portal[data-portal] :where(table){border-spacing:revert;background:revert;border-collapse:revert}
.p-portal[data-portal] :where(td){display:revert;float:revert;padding:revert;position:revert}
.p-portal[data-portal] :where(textarea){color:revert;font-family:revert;font-feature-settings:revert;font-kerning:revert;font-language-override:revert;font-optical-sizing:revert;font-size:revert;font-size-adjust:revert;font-stretch:revert;font-style:revert;font-variant:revert;font-variation-settings:revert;font-weight:revert;line-height:revert;margin:revert;overflow:revert}
.p-portal[data-portal] :where(th){display:revert;float:revert;padding:revert;position:revert;text-align:revert}
.p-portal[data-portal] :where(video){display:revert;max-height:revert;max-width:revert;vertical-align:revert}
/* ポータル共通の土台。各ポータルで個別に書かない。ポータル固有の指定はこれより詳しいセレクタで上書きする */
.p-portal[data-portal],.p-portal[data-portal] :where(*,*::before,*::after){box-sizing:border-box}
.p-portal[data-portal] :where([hidden]){display:none!important}
.p-portal[data-portal] :where(button,input,select,textarea,optgroup){font:inherit;color:inherit}
.p-portal[data-portal] :where(button){cursor:pointer}
.p-portal[data-portal] :where(a){color:inherit;text-decoration:none}
.p-portal[data-portal] :where(a,button,input,select,summary){touch-action:manipulation;-webkit-tap-highlight-color:transparent}
.p-portal[data-portal] :where(textarea){resize:vertical}
.p-portal[data-portal] :where(dialog)::backdrop{background:#0008}
.p-portal[data-portal] :where(:focus-visible){outline:2px solid #292c30;outline-offset:2px}
.p-portal[data-portal] :where(.p-hero) :where(:focus-visible){outline-color:#fff}
.p-portal[data-portal] :is(p a:not([class]),.text-link):not(:where([id$="-scenes"],[id$="-uses"],[id$="-use"],[id$="-use-cases"],[id$="-purpose"],[id$="-choose"],#p-camera-guide) *){color:#292c30;text-decoration:underline;text-underline-offset:3px}
.p-portal[data-portal] :where([id$="-scenes"],[id$="-uses"],[id$="-use"],[id$="-use-cases"],[id$="-purpose"],[id$="-choose"],#p-camera-guide) :is(p a:not([class]),.text-link){color:#337ab7;text-decoration:underline;text-underline-offset:2px}
.p-portal[data-portal] :where(img,picture){border:0}
.p-portal[data-portal]{line-break:strict}

/* 見出し・本文・文中のリンクの土台（レンタルサイトのカテゴリーページに合わせる）。ヒーローの中は対象外。共通の部品の指定が優先する */
.p-portal[data-portal] [id]{scroll-margin-top:var(--ps-portal-sticky-top,0px)}
.p-portal[data-portal] h2:not(:where([class*="hero"] h2)){color:#1a1a1a;font-size:24px;font-weight:700;line-height:1.4;letter-spacing:normal}
.p-portal[data-portal] h3:not(:where([class*="hero"] h3)){font-size:16px;font-weight:700;line-height:1.5;letter-spacing:normal}
.p-portal[data-portal] :is(.p-mk,.p-camera-type-choice,.category-card,.p-sony-e-mount-portal-guide-card,.series,.cinema-series-card,.use-card,.set,.p-eMount-Portal-gear-card,.p-eMount-Portal-fx-card,.product,.p-microphone-card,.product-card) h3{display:block;box-sizing:border-box;min-width:0;max-width:100%;white-space:normal;overflow-wrap:anywhere;word-break:normal}
.p-portal[data-portal] p:not(:where([class*="hero"] p)){font-size:14px;line-height:1.85}
@media (max-width:599px){
  .p-portal[data-portal] h2:not(:where([class*="hero"] h2)){font-size:20px}
}
.p-portal[data-portal] :is(.p-rank,.p-mk-grid,.p-mk-other,.p-faq,.p-filter,.p-filter-result,.p-table,.p-scene-tabs){color:#1a1a1a}
.p-portal[data-portal] :is(div,section):has(>table.p-table){border:1px solid #e7e7ea;border-radius:0}
/* 節と節の間（レンタルサイトのカテゴリーページに合わせ、節の上下24px＝間48px）と節の背景（白） */
.p-portal[data-portal] section[id]:has(h2):not(:has(.p-page-title)):not(section[id] section){padding-block:24px;margin-block:0;background:#fff}
/* ヒーローの高さ（全ポータル共通。600px以上は480px、599px以下は440px） */
.p-portal[data-portal]{--p-hero-height:480px}
@media (max-width:599px){.p-portal[data-portal]{--p-hero-height:440px}}
.p-portal[data-portal] .p-hero{box-sizing:border-box;height:var(--p-hero-height);min-height:0}

.p-portal[data-portal] .p-hero{--p-hero-ink:#292c30;--p-hero-muted:#5e6268;--p-hero-accent:var(--p-red)}
.p-portal[data-portal] .p-hero--dark{--p-hero-ink:#fff;--p-hero-muted:#fff;--p-hero-accent:#fff}
.p-portal[data-portal] .p-hero .p-hero__copy{width:100%;max-width:780px;padding:0}
.p-portal[data-portal] .p-hero .p-hero__eyebrow{margin:0 0 16px;color:var(--p-hero-accent);font-size:14px;font-weight:800;line-height:1.7;letter-spacing:.12em}
.p-portal[data-portal] .p-hero .p-hero__title{margin:0 0 20px;color:var(--p-hero-ink);font-size:clamp(36px,4vw,58px);font-weight:700;line-height:1.3;letter-spacing:-.035em}
.p-portal[data-portal] .p-hero .p-hero__title em{color:var(--p-hero-accent);font-style:normal}
.p-portal[data-portal] .p-hero .p-hero__description{margin:0 0 26px;color:var(--p-hero-muted);font-size:16px;font-weight:400;line-height:1.9;letter-spacing:normal}
.p-portal[data-portal] .p-hero .p-hero__actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0}
@media(max-width:850px){.p-portal[data-portal] .p-hero .p-hero__title{font-size:clamp(32px,5.8vw,48px)}}


.p-portal[data-portal]{
  --p-red: #b0000d;
  --p-red-hover: #8f000a;
  --p-ink: #202126;
  --p-muted: #666a70;
  --p-line: #d9dce1;
  --p-soft: #f4f5f6;
  --p-white: #fff;
  --p-radius: 8px;
  --p-control-height: 44px;
  --p-table-control-height: 37px;
  --p-content-width: 1068px;
  --p-content-gutter: max(30px, calc((100% - var(--p-content-width)) / 2));
  --p-font: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Noto Sans JP", "Yu Gothic", Meiryo, sans-serif;
  
}
@media (max-width:700px){.p-portal[data-portal]{--p-content-gutter:16px}}
.p-portal[data-portal] .p-page{
  font-family: var(--p-font);
}
.p-portal[data-portal] .p-page :where(button, input, select, textarea){
  font-family: inherit;
}
.p-portal[data-portal] .p-heading{
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: baseline;
  gap: 12px;
  margin-bottom: 14px;
  padding-bottom: 8px;
  
  color: var(--p-ink);
}
.p-portal[data-portal] .p-heading__number{
  color: var(--p-red);
  font-size: 22px;
  font-weight: 800;
  font-variant-numeric: tabular-nums;
  letter-spacing: 0;
}
.p-portal[data-portal] .p-heading h2{
  margin: 0;
  color: var(--p-ink);
  font-family: var(--p-font);
  font-size: 22px;
  font-weight: 800;
  line-height: 1.35;
}
.p-portal[data-portal] .p-heading__meta{
  margin-left: auto;
  color: var(--p-muted);
  font-size: 12px;
  text-align: right;
}
.p-portal[data-portal] .p-heading + .p-heading__description{
  max-width: 760px;
  margin: 0 0 28px;
  color: var(--p-muted);
  font-size: 14px;
}
.p-portal[data-portal] .p-btn{
  display: inline-flex;
  min-height: var(--p-control-height);
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0 20px;
  border: 1px solid var(--p-red);
  border-radius: var(--p-radius);
  font-size: 14px;
  font-weight: 800;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  text-shadow: none;
}
.p-portal[data-portal] .p-hero .p-btn--primary,
.p-portal[data-portal] .p-hero .p-btn--secondary{
  min-height: 52px;
  gap: 12px;
  padding: 14px 24px;
  border-radius: 0;
  font-size: 15px;
  font-weight: 700;
  line-height: 22px;
}
.p-portal[data-portal] .p-btn--primary{
  border-color: var(--p-red);
  background: var(--p-red);
  color: #fff;
}
.p-portal[data-portal] .p-btn--primary:hover{
  border-color: var(--p-red-hover);
  background: var(--p-red-hover);
  color: #fff;
  text-decoration: none;
}
.p-portal[data-portal] .p-btn--secondary{
  border-color: #292c30;
  background: #fff;
  color: #292c30;
}
.p-portal[data-portal] .p-btn--secondary:hover{
  border-color: #000;
  background: #fff;
  color: #000;
  text-decoration: none;
}
.p-portal[data-portal] .p-btn--secondary[aria-pressed="true"]{
  border-color: #292c30;
  background: var(--p-white);
  color: var(--p-ink);
}
.p-portal[data-portal] .p-btn--link{
  min-height: auto;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 3px;
}
.p-portal[data-portal] .p-btn:disabled{
  opacity: .45;
  cursor: default;
}
.p-portal[data-portal] .p-linkcard{
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 16px 0 0;
  padding: 16px 18px;
  border: 1px solid var(--p-line);
  border-radius: 0;
  background: var(--p-white);
  color: var(--p-ink);
  text-decoration: none;
}
.p-portal[data-portal] .p-linkcard:hover,.p-portal[data-portal] .p-linkcard:focus-visible{
  border-color: #292c30;
}
.p-portal[data-portal] .p-linkcard__title{
  display: block;
  font-weight: 800;
}
.p-portal[data-portal] .p-linkcard__count{
  display: block;
  color: var(--p-muted);
  font-size: 12px;
}
.p-portal[data-portal] .p-linkcard__link{
  margin-left: auto;
  color: inherit;
  font-size: 13px;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 3px;
  white-space: nowrap;
}
.p-portal[data-portal] .p-result-count{
  margin: 8px 0;
  color: var(--p-muted);
  font-size: 13px;
  text-align: right;
}
.p-portal[data-portal] .p-article-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
@media (max-width:767px){.p-portal[data-portal] .p-article-grid{grid-template-columns:1fr}}
.p-portal[data-portal] .p-article{display:flex;flex-direction:column;gap:8px;box-sizing:border-box;padding:0 0 16px;border:1px solid #dedee2;border-radius:0;background:#fff;color:#292c30;text-decoration:none}
.p-portal[data-portal] .p-article__photo{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover}
.p-portal[data-portal] .p-article__title{padding:0 16px;color:#292c30;font-size:15px;font-weight:700;line-height:1.6}
.p-portal[data-portal] .p-article:hover .p-article__title{text-decoration:underline;text-underline-offset:3px}
.p-portal[data-portal] .p-article__date{padding:0 16px;color:#59636e;font-size:13px}
.p-portal[data-portal] .p-more{
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 6px;
  margin-top: 20px;
  color: var(--p-muted);
  font-size: 12px;
}
.p-portal[data-portal] .p-tray{
  position: fixed;
  z-index:30;
  right: calc(var(--ps-portal-fixed-right, 0px) + 18px);
  bottom:var(--ps-portal-fixed-bottom, 0px);
  left: 18px;
  display: none;
  width: min(1032px, calc(100% - 36px - var(--ps-portal-fixed-right, 0px)));
  box-sizing: border-box;
  align-items: center;
  gap: 12px;
  margin: auto;
  padding: 12px 14px;
  border: 1px solid var(--p-line);
  border-radius: 12px;
  background: var(--p-white);
  box-shadow: 0 10px 30px rgba(0, 0, 0, .18);
  color: var(--p-ink);
}
.p-portal[data-portal] .p-tray.is-visible{
  display: flex;
}
.p-portal[data-portal] .p-tray__body{
  min-width: 0;
  flex: 1;
}
.p-portal[data-portal] .p-tray__items{
  display: flex;
  max-height: 90px;
  flex-wrap: wrap;
  gap: 6px;
  margin-top: 6px;
  overflow: auto;
}
.p-portal[data-portal] .p-tray__item{
  display: inline-flex;
  min-width: 0;
  align-items: center;
  gap: 6px;
  padding: 4px 8px;
  border: 1px solid var(--p-line);
  border-radius: 6px;
  background: #fff;
  font-size: 12px;
}
.p-portal[data-portal] .p-tray__item span{
  overflow-wrap: anywhere;
}
.p-portal[data-portal] .p-tray__remove{
  padding: 0;
  border: 0;
  background: transparent;
  color: var(--p-muted);
  font-size: 16px;
  cursor: pointer;
}
.p-portal[data-portal] .p-faq{
  width: min(var(--p-content-width), 100%);
  margin-inline: auto;
  background: var(--p-white);
  color: var(--p-ink);
}
.p-portal[data-portal] .p-faq__item{
  border-bottom: 1px solid var(--p-line);
}
.p-portal[data-portal] .p-faq__question{
  display: grid;
  width: 100%;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 12px;
  padding: 16px 4px;
  border: 0;
  background: transparent;
  color: var(--p-ink);
  text-align: left;
  cursor: pointer;
}
.p-portal[data-portal] .p-faq__number,.p-portal[data-portal] .p-faq__toggle{
  color: var(--p-red);
  font-weight: 800;
}
.p-portal[data-portal] .p-faq__answer{
  display: none;
  margin: 0;
  padding: 0 36px 16px;
  color: var(--p-muted);
  font-size: 14px;
}
.p-portal[data-portal] .p-is-open .p-faq__answer{
  display: block;
}
.p-portal[data-portal] .p-note{
  width: min(var(--p-content-width), calc(100% - 36px));
  margin: 0 auto 70px;
  padding: 6px 12px;
  background: #fff;
  color: var(--p-muted);
  font-size: 12px;
}
.p-portal[data-portal] .p-note p{
  margin: 4px 0 0;
}
@media (max-width: 700px){.p-portal[data-portal] .p-heading{
    grid-template-columns: auto minmax(0, 1fr);
  }.p-portal[data-portal] .p-heading__meta{
    grid-column: 1 / -1;
    margin-left: 0;
    text-align: left;
  }.p-portal[data-portal] .p-tray{
    align-items: stretch;
    flex-direction: column;
  }.p-portal[data-portal] .p-tray > .p-btn{
    width: 100%;
  }.p-portal[data-portal] .p-linkcard{
    align-items: flex-start;
  }}

.p-portal[data-portal] .p-nav{
  display: flex;
  width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  background: #121315;
  
  scrollbar-width: thin;
}.p-portal[data-portal] .p-nav a{
  flex: 1 0 auto;
  min-width: 0;
  padding: 10px 14px;
  border-right: 1px solid #33353a;
  color: #fff;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.35;
  text-align: center;
  text-decoration: none;
}.p-portal[data-portal] .p-nav a:hover,.p-portal[data-portal] .p-nav a:focus-visible{
  background: #26282c;
}.p-portal[data-portal] .p-nav .p-nav__rental{
  background: #b0000d;
}.p-portal[data-portal] .p-nav .p-nav__rental:hover,.p-portal[data-portal] .p-nav .p-nav__rental:focus-visible{
  background: #8f000a;
}.p-portal[data-portal] .p-nav-v2-slot{
  position: relative;
  z-index: 60;
  width: 100%;
  height: 64px;
  background: #121315;
}.p-portal[data-portal] .p-nav.p-nav--v2{
  height: 64px;
  box-sizing: border-box;
  padding-block: 0;
  align-items: stretch;
  border-bottom: 0;
  background: #121315;
  transition: height .18s ease;
}.p-portal[data-portal] .p-nav.p-nav--v2 > a{
  position: relative;
  display: inline-flex;
  min-width: 0;
  align-items: center;
  justify-content: center;
  padding: 0 10px;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.3;
}.p-portal[data-portal] .p-nav.p-nav--v2 > a[aria-current="true"]::after{
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 3px;
  background: #292c30;
  content: "";
}.p-portal[data-portal] .p-nav.p-nav--v2.is-fixed,.p-portal[data-portal] .p-nav-v2-mobile.is-fixed{
  position: fixed;
  z-index:900;
  top:var(--ps-portal-sticky-top, 0px);
  right: 0;
  left: 0;
  height: 44px;
}.p-portal[data-portal] .p-nav-v2-slot:has(> .p-nav--v2) ~ section[id]{
  scroll-margin-top: calc(var(--ps-portal-sticky-top, 0px) + 52px);
}.p-portal[data-portal] .p-nav-v2-mobile,.p-portal[data-portal] .p-nav-v2-sheet{
  display: none;
}@media (max-width: 768px){.p-portal[data-portal] .p-nav-v2-slot.is-enhanced > .p-nav--v2{
    display: none;
  }.p-portal[data-portal] .p-nav-v2-slot.is-enhanced > .p-nav-v2-mobile{
    display: flex;
  }.p-portal[data-portal] .p-nav-v2-mobile{
    width: 100%;
    height: 64px;
    box-sizing: border-box;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 12px 0 16px;
    background: #121315;
    color: #fff;
    transition: height .18s ease;
  }.p-portal[data-portal] .p-nav-v2-mobile__current{
    min-width: 0;
    overflow: hidden;
    font-size: 14px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
  }.p-portal[data-portal] .p-nav-v2-mobile__toggle{
    display: inline-flex;
    min-width: 72px;
    min-height: 44px;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
    padding: 0 4px;
    border: 0;
    background: transparent;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
  }.p-portal[data-portal] .p-nav-v2-mobile__toggle:focus-visible,.p-portal[data-portal] .p-nav-v2-sheet__close:focus-visible,.p-portal[data-portal] .p-nav-v2-sheet__link:focus-visible{
    outline: 3px solid #fff;
    outline-offset: -3px;
  }.p-portal[data-portal] .p-nav-v2-sheet{
    position: fixed;
    z-index:900;
    top:var(--ps-portal-sticky-top, 0px);
    right: 0;
    bottom:var(--ps-portal-fixed-bottom, 0px);
    left: 0;
    display: block;
    width: 100%;
    height: auto;
    max-width: none;
    max-height: none;
    margin: 0;
    padding: 0;
    border: 0;
    background: rgba(0, 0, 0, .58);
    color: inherit;
  }.p-portal[data-portal] .p-nav-v2-sheet:not([open]){
    display: none;
  }.p-portal[data-portal] .p-nav-v2-sheet::backdrop{
    background: transparent;
  }.p-portal[data-portal] .p-nav-v2-sheet__panel{
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    max-height: min(82vh, 680px);
    max-height: min(82svh, 680px);
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 0 0 env(safe-area-inset-bottom);
    background: #121315;
    color: #fff;
    transform: translateY(100%);
    transition: transform .2s ease;
  }.p-portal[data-portal] .p-nav-v2-sheet.p-is-open .p-nav-v2-sheet__panel{
    transform: translateY(0);
  }.p-portal[data-portal] .p-nav-v2-sheet__header{
    position: sticky;
    z-index: 1;
    top: 0;
    display: flex;
    min-height: 52px;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 4px 12px 4px 16px;
    border-bottom: 1px solid #33353a;
    background: #121315;
  }.p-portal[data-portal] .p-nav-v2-sheet__title{
    margin: 0;
    font-size: 16px;
    font-weight: 700;
  }.p-portal[data-portal] .p-nav-v2-sheet__close{
    min-width: 64px;
    min-height: 44px;
    padding: 0 8px;
    border: 1px solid #55585e;
    background: transparent;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
  }.p-portal[data-portal] .p-nav-v2-sheet__links{
    display: grid;
  }.p-portal[data-portal] .p-nav-v2-sheet__link{
    position: relative;
    display: flex;
    min-height: 44px;
    align-items: center;
    padding: 10px 16px;
    border-bottom: 1px solid #33353a;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
  }.p-portal[data-portal] .p-nav-v2-sheet__link[aria-current="true"]{
    background: #24262a;
  }.p-portal[data-portal] .p-nav-v2-sheet__link[aria-current="true"]::before{
    position: absolute;
    top: 7px;
    bottom: 7px;
    left: 0;
    width: 3px;
    background: #292c30;
    content: "";
  }
}@media (prefers-reduced-motion: reduce){.p-portal[data-portal] .p-nav.p-nav--v2,.p-portal[data-portal] .p-nav-v2-mobile,.p-portal[data-portal] .p-nav-v2-sheet__panel{
    transition: none;
  }
}.p-portal[data-portal] .p-nav-v2-unstick{
  position: static !important;
}
.p-portal[data-portal] .p-nav-v2-slot.is-enhanced.is-compact > .p-nav--v2{
    display: none;
  }.p-portal[data-portal] .p-nav-v2-slot.is-enhanced.is-compact > .p-nav-v2-mobile{
    display: flex;
  }.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-mobile{
    width: 100%;
    height: 64px;
    box-sizing: border-box;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding: 0 12px 0 16px;
    background: #121315;
    color: #fff;
    transition: height .18s ease;
  }.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-mobile__current{
    min-width: 0;
    overflow: hidden;
    font-size: 14px;
    font-weight: 700;
    text-overflow: ellipsis;
    white-space: nowrap;
  }.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-mobile__toggle{
    display: inline-flex;
    min-width: 72px;
    min-height: 44px;
    align-items: center;
    justify-content: flex-end;
    gap: 6px;
    padding: 0 4px;
    border: 0;
    background: transparent;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
  }.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-mobile__toggle:focus-visible,.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-sheet__close:focus-visible,.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-sheet__link:focus-visible{
    outline: 3px solid #fff;
    outline-offset: -3px;
  }.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-sheet{
    position: fixed;
    z-index:900;
    top:var(--ps-portal-sticky-top, 0px);
    right: 0;
    bottom:var(--ps-portal-fixed-bottom, 0px);
    left: 0;
    display: block;
    width: 100%;
    height: auto;
    max-width: none;
    max-height: none;
    margin: 0;
    padding: 0;
    border: 0;
    background: rgba(0, 0, 0, .58);
    color: inherit;
  }.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-sheet:not([open]){
    display: none;
  }.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-sheet::backdrop{
    background: transparent;
  }.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-sheet__panel{
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    max-height: min(82vh, 680px);
    max-height: min(82svh, 680px);
    overflow-y: auto;
    overscroll-behavior: contain;
    padding: 0 0 env(safe-area-inset-bottom);
    background: #121315;
    color: #fff;
    transform: translateY(100%);
    transition: transform .2s ease;
  }.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-sheet.p-is-open .p-nav-v2-sheet__panel{
    transform: translateY(0);
  }.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-sheet__header{
    position: sticky;
    z-index: 1;
    top: 0;
    display: flex;
    min-height: 52px;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 4px 12px 4px 16px;
    border-bottom: 1px solid #33353a;
    background: #121315;
  }.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-sheet__title{
    margin: 0;
    font-size: 16px;
    font-weight: 700;
  }.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-sheet__close{
    min-width: 64px;
    min-height: 44px;
    padding: 0 8px;
    border: 1px solid #55585e;
    background: transparent;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
  }.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-sheet__links{
    display: grid;
  }.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-sheet__link{
    position: relative;
    display: flex;
    min-height: 44px;
    align-items: center;
    padding: 10px 16px;
    border-bottom: 1px solid #33353a;
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
  }.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-sheet__link[aria-current="true"]{
    background: #24262a;
  }.p-portal[data-portal] .p-nav-v2-slot.is-compact .p-nav-v2-sheet__link[aria-current="true"]::before{
    position: absolute;
    top: 7px;
    bottom: 7px;
    left: 0;
    width: 3px;
    background: #292c30;
    content: "";
  }
.p-portal[data-portal]{container-type:inline-size}
.p-portal[data-portal] .p-nav-v2-slot{width:100cqi;margin-inline:calc((100% - 100cqi)/2)}

.p-portal[data-portal] .p-table-scroll{
  max-width: 100%;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  overscroll-behavior-inline: contain;
}.p-portal[data-portal] .p-table.p-table{
  width: max-content;
  min-width: 0;
  border-collapse: collapse;
  table-layout: fixed;
  font-size: 13px;
  line-height: 1.45;
}.p-portal[data-portal] .p-table.p-table--fill{
  width: 100%;
  min-width: calc(
    156px +
    132px +
    200px +
    170px +
    104px
  );
}.p-portal[data-portal] .p-table.p-table--fill .p-col-product{
  width: 200px;
  min-width: 200px;
  max-width: 200px;
}.p-portal[data-portal] .p-table th,.p-portal[data-portal] .p-table td{
  padding: 10px 12px;
  border-right: 1px solid #e7e7ea;
  border-bottom: 1px solid #e7e7ea;
  vertical-align: middle;
}.p-portal[data-portal] .p-table th:last-child,.p-portal[data-portal] .p-table td:last-child{
  border-right: 0;
}.p-portal[data-portal] .p-table thead th{
  height: 52px;
  padding-block: 8px;
  white-space: nowrap;
  background: #161619;
  color: #fff;
  vertical-align: middle;
}.p-portal[data-portal] .p-table tbody tr{
  height: 108px;
}.p-portal[data-portal] .p-table .p-col-actions{
  width: 156px;
  min-width: 156px;
  max-width: 156px;
  text-align: center;
}.p-portal[data-portal] :is(.p-table,.p-spec-table) .p-col-photo{
  width: 132px;
  min-width: 132px;
  max-width: 132px;
  padding-inline: 10px;
  text-align: center;
}.p-portal[data-portal] .p-table .p-col-product{
  width: 200px;
  min-width: 200px;
  max-width: 200px;
}.p-portal[data-portal] .p-table .p-col-price{
  width: 170px;
  min-width: 170px;
  max-width: 170px;
  white-space: nowrap;
}.p-portal[data-portal] .p-table .p-col-stock{
  width: 104px;
  min-width: 104px;
  max-width: 104px;
  white-space: nowrap;
}.p-portal[data-portal] .p-table .p-col-short{
  width: 112px;
  min-width: 112px;
  max-width: 160px;
  white-space: nowrap;
}.p-portal[data-portal] .p-table .p-col-long{
  width: 220px;
  min-width: 180px;
  max-width: 240px;
  white-space: normal;
  overflow-wrap: anywhere;
  line-break: strict;
}.p-portal[data-portal] .p-actions{
  display: flex;
  min-width: min(132px, 100%);
  max-width: 100%;
  align-items: center;
  flex-direction: column;
  gap: 6px;
}.p-portal[data-portal] .p-table td .p-action{
  margin: 0;
  width: 132px;
  min-width: min(132px, 100%);
  max-width: 100%;
}.p-portal[data-portal] .p-table .p-action--request{
  display: inline-flex;
  flex: 0 0 auto;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  padding: 8px 10px;
  border: 1px solid #292c30;
  border-radius: 8px;
  background: #fff;
  color: #292c30;
  font-size: 11.5px;
  font-weight: 900;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;
  cursor: pointer;
}.p-portal[data-portal] .p-table .p-action--request{
  border-color: #292c30;
  background: #fff;
  color: #292c30;
}.p-portal[data-portal] :is(.p-table,.p-spec-table) .p-photo{
  display: flex;
  width: 112px;
  max-width: 100%;
  height: 88px;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  margin: auto;
  padding: 5px;
  overflow: hidden;
  background: transparent;
  border: 0;
  border-radius: 0;
}.p-portal[data-portal] :is(.p-table,.p-spec-table) .p-photo__img{
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  margin: 0;
  padding: 0;
  object-fit: contain;
  background: transparent;
  border: 0;
  border-radius: 0;
}.p-portal[data-portal] .p-table .p-col-product{
  text-align: left;
}.p-portal[data-portal] .p-product{
  min-width: 0;
  display: grid;
  gap: 3px;
  text-align: left;
}.p-portal[data-portal] .p-table .p-product > a,.p-portal[data-portal] .p-table .p-product > b{
  font-weight: 700;
  line-height: 1.5;
}.p-portal[data-portal] .p-table .p-product small{
  color: #5f646d;
  font-size: 11.5px;
  line-height: 1.5;
}.p-portal[data-portal] .p-table .p-product > *{
  min-width: 0;
}.p-portal[data-portal] tr[data-rental-state="unavailable"],.p-portal[data-portal] tr.norent[data-norent="1"]{
  background: #fafafa;
  color: #8a8f95;
}.p-portal[data-portal] [data-rental-state="unavailable"] :is(td, th, p, span, small, b, strong, em, div, a):not(.p-action),.p-portal[data-portal] .norent[data-norent="1"] :is(td, th, p, span, small, b, strong, em, div, a):not(.p-action){
  color: #8a8f95;
}.p-portal[data-portal] .p-table tbody th.p-col-product,.p-portal[data-portal] .p-table .p-product,.p-portal[data-portal] .p-table .p-product > *{
  white-space: normal;
  word-break: break-word;
}.p-portal[data-portal] .p-spec-scroll{
  max-width: 100%;
  overflow-x: auto;
}.p-portal[data-portal] .p-spec-table{
  width: 100%;
  border-collapse: collapse;
  font-size: 13px;
  line-height: 1.55;
}.p-portal[data-portal] .p-spec-scroll .p-spec-table th,.p-portal[data-portal] .p-spec-scroll .p-spec-table td{
  padding: 12px 14px;
  border-right: 1px solid #e7e7ea;
  border-bottom: 1px solid #e7e7ea;
  text-align: left;
  vertical-align: top;
}.p-portal[data-portal] .p-spec-scroll .p-spec-table thead th{
  padding-block: 16px;
  background: #161619;
  color: #fff;
  font-weight: 700;
  white-space: nowrap;
}.p-portal[data-portal] .p-spec-scroll .p-spec-table .p-spec-key{
  position: sticky;
  left: 0;
  z-index: 1;
  background: #fff;
  border-right-color: #c9c9cf;
  font-weight: 700;
  white-space: normal;
;top:var(--ps-portal-sticky-top, 0px)}.p-portal[data-portal] .p-spec-scroll .p-spec-table thead .p-spec-key{
  z-index: 2;
  background: #161619;
}.p-portal[data-portal] .p-spec-scroll .p-spec-table tbody tr:last-child > *{
  border-bottom: 1px solid #e7e7ea;
}.p-portal[data-portal] .p-spec-scroll .p-spec-model{
  min-width: 0;
}.p-portal[data-portal] .p-spec-scroll .p-spec-model img{
  max-width: 80px;
  height: auto;
}@media (max-width: 390px){.p-portal[data-portal] .p-spec-scroll .p-spec-table .p-spec-key{
    width: 112px;
    min-width: 112px;
  }.p-portal[data-portal] .p-spec-scroll .p-spec-table :is(th, td):not(.p-spec-key){
    min-width: 150px;
  }
}@media (max-width: 850px){.p-portal[data-portal] .p-table-scroll:has(> .p-table--stack){
    overflow: visible;
    border: 0;
  }.p-portal[data-portal] .p-table--stack.p-table--stack{
    display: block;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-left: 0;
    border: 0;
  }.p-portal[data-portal] .p-table--stack.p-table--stack thead{
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
  }.p-portal[data-portal] .p-table--stack.p-table--stack tbody{
    display: block;
  }.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr{
    display: flex;
    flex-direction: column;
    height: auto;
    background: #fff;
    border: 1px solid #dce2e9;
    padding: 14px;
    margin-bottom: 12px;
  }.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr > th,.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr > td,.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr > .p-col-product{
    display: grid;
    grid-template-columns: 6.5em minmax(0, 1fr);
    gap: 12px;
    align-items: center;
    width: auto;
    min-width: 0;
    max-width: none;
    padding: 6px 0;
    border: 0;
    text-align: left;
    font-weight: 400;
    white-space: normal;
  }.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr > th::before,.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr > td::before{
    content: attr(data-label);
    color: #667085;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.6;
  }.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr > .p-col-photo{ order: 1; }.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr > .p-col-rank{ order: 2; }.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr > .p-col-product{ order: 3; }.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr > th,.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr > td{ order: 4; }.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr > .p-col-actions{ order: 5; }.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr > .p-col-photo,.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr > .p-col-actions{
    grid-template-columns: minmax(0, 1fr);
  }.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr > .p-col-photo::before,.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr > .p-col-actions::before{
    content: none;
  }.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr > .p-col-rank{
    font-size: 18px;
    font-weight: 700;
    color: #b0000d;
  }.p-portal[data-portal] .p-table--stack.p-table--stack tbody tr > .p-col-product b{
    font-size: 16px;
  }.p-portal[data-portal] .p-table--stack.p-table--stack .p-actions{
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
  }.p-portal[data-portal] .p-spec-scroll .p-table--stack.p-table--stack tbody tr > th,.p-portal[data-portal] .p-spec-scroll .p-table--stack.p-table--stack tbody tr > td{
    position: static;
    width: auto;
    min-width: 0;
    max-width: none;
    text-align: left;
  }.p-portal[data-portal] .p-spec-scroll:has(> .p-table--stack){
    overflow: visible;
  }.p-portal[data-portal] .p-table--stack.p-table--stack > caption:not(.p-sr-only):not(.p-hidden){
    display: block;
    width: 100%;
    text-align: left;
  }
}.p-portal[data-portal] .p-table .p-col-rank{
  white-space: nowrap;
}.p-portal[data-portal] .p-table tbody tr:nth-child(1) > .p-col-rank,.p-portal[data-portal] .p-table tbody tr:nth-child(2) > .p-col-rank,.p-portal[data-portal] .p-table tbody tr:nth-child(3) > .p-col-rank{
  color: #b0000d;
  font-size: 1.25em;
  font-weight: 800;
}.p-portal[data-portal] .p-table--rows .p-product__meta{
  display: none;
}@media (max-width: 850px){.p-portal[data-portal] .table-scroll:has(> .p-table--scroll){
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    overscroll-behavior-inline: contain;
  }.p-portal[data-portal] .p-table--scroll.p-table--scroll{
    width: max-content;
    min-width: 100%;
    table-layout: fixed;
  }.p-portal[data-portal] .p-table--scroll.p-table--scroll :is(th, td):first-child{
    position: sticky;
    left: 0;
    z-index: 1;
    width: 150px;
    min-width: 150px;
    max-width: 150px;
    background: #fff;
  ;top:var(--ps-portal-sticky-top, 0px)}.p-portal[data-portal] .p-table--scroll.p-table--scroll thead th:first-child{
    z-index: 2;
    background: #161619;
  }.p-portal[data-portal] .p-table--scroll.p-table--scroll tbody tr:nth-child(even) > :first-child{
    background: #fff;
  }.p-portal[data-portal] .p-table--scroll.p-table--scroll tbody th:first-child img{
    width: 72px;
    height: 54px;
    object-fit: contain;
  }.p-portal[data-portal] .p-table--scroll.p-table--scroll tbody th:first-child a{
    font-size: 13px;
  }
}@media (max-width: 850px){.p-portal[data-portal] .table-scroll:has(> .p-table--rows){
    overflow: visible;
    border: 0;
  }.p-portal[data-portal] .p-table--rows.p-table--rows{
    display: block;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    border: 0;
  }.p-portal[data-portal] .p-table--rows.p-table--rows thead{
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
    border: 0;
  }.p-portal[data-portal] .p-table--rows.p-table--rows tbody{
    display: grid;
    gap: 8px;
  }.p-portal[data-portal] .p-table--rows.p-table--rows tbody tr{
    display: grid;
    grid-template-columns: 84px minmax(0, 1fr);
    grid-template-areas:
      "photo product"
      "photo price"
      "photo meta"
      "actions actions";
    gap: 4px 14px;
    height: auto;
    padding: 12px;
    background: #fff;
    border: 1px solid #dce2e9;
  }.p-portal[data-portal] .p-table--rows.p-table--rows tbody tr[hidden]{
    display: none;
  }.p-portal[data-portal] .p-table--rows.p-table--rows tbody tr > th,.p-portal[data-portal] .p-table--rows.p-table--rows tbody tr > td{
    width: auto;
    min-width: 0;
    max-width: none;
    padding: 0;
    border: 0;
    text-align: left;
    white-space: normal;
  }.p-portal[data-portal] .p-table--rows.p-table--rows tbody tr > .p-col-actions{
    grid-area: actions;
    margin-top: 8px;
  }.p-portal[data-portal] .p-table--rows.p-table--rows tbody tr > .p-col-photo{
    grid-area: photo;
  }.p-portal[data-portal] .p-table--rows.p-table--rows tbody tr > .p-col-product,.p-portal[data-portal] .p-table--rows.p-table--rows .p-product{
    display: contents;
  }.p-portal[data-portal] .p-table--rows.p-table--rows .p-product > a{
    grid-area: product;
    align-self: end;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.45;
  }.p-portal[data-portal] .p-table--rows.p-table--rows .p-product__meta{
    display: block;
    grid-area: meta;
    align-self: start;
    color: #667085;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.5;
  }.p-portal[data-portal] .p-table--rows.p-table--rows tbody tr > .p-col-price{
    grid-area: price;
    color: #b0000d;
    font-size: 17px;
    font-weight: 700;
    line-height: 1.45;
  }.p-portal[data-portal] .p-table--rows.p-table--rows .p-col-price small{
    font-size: 12px;
    font-weight: 400;
  }.p-portal[data-portal] .p-table--rows.p-table--rows tbody tr > :nth-child(n + 5){
    display: none;
  }.p-portal[data-portal] .p-table--rows.p-table--rows .p-photo{
    width: 84px;
    height: 66px;
    padding: 0;
    border: 0;
  }.p-portal[data-portal] .p-table--rows.p-table--rows .p-photo__img{
    width: 84px;
    height: 66px;
    max-width: none;
    max-height: none;
    object-fit: contain;
  }.p-portal[data-portal] .p-table--rows.p-table--rows .p-actions,.p-portal[data-portal] .p-table--rows.p-table--rows .p-actions .p-action{
    width: 100%;
    max-width: none;
  }
}.p-portal[data-portal] .p-table.p-table tbody > tr > :is(td, th){
  background-color: #fff;
}

/* 表とカードの操作ボタン */
.p-portal[data-portal] :is(
  .p-action--compare,
  .p-action--rental,
  .p-action--product,
  .p-action.p-btn--primary,
  .p-action.p-btn--secondary,
  .p-mk__btn
) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  box-sizing: border-box;
  min-height: 40px;
  padding: 0 12px;
  border-radius: 0;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  text-decoration: none;
}

.p-portal[data-portal] :is(
  .p-action--compare,
  .p-action.p-btn--secondary
) {
  background: #fff;
  color: #292c30;
  border: 1px solid #9a9a9a;
}

.p-portal[data-portal] :is(
  .p-action--compare,
  .p-action.p-btn--secondary
)[aria-pressed="true"] {
  background: #292c30;
  border-color: #292c30;
  color: #fff;
}

.p-portal[data-portal] :is(
  .p-action--compare,
  .p-action.p-btn--secondary
)::before {
  content: "+";
  margin-right: 4px;
}

.p-portal[data-portal] :is(
  .p-action--compare,
  .p-action.p-btn--secondary
)[aria-pressed="true"]::before {
  content: "\2713";
}

.p-portal[data-portal] :is(
  .p-action--rental,
  .p-action.p-btn--primary
) {
  background: #b0000d;
  color: #fff;
  border: 1px solid #b0000d;
}

.p-portal[data-portal] :is(
  .p-action--product,
  .p-mk__btn
) {
  background: #fff;
  color: #292c30;
  border: 1px solid #292c30;
}

/* 表のページ送り。並びは「前へ・件数・ページの選択・次へ」。各ポータルで個別に書かない */
.p-portal[data-portal] .p-pager{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:12px;margin:16px 0 0;padding:0;color:#292c30;font-size:14px}
.p-portal[data-portal] .p-pager[hidden]{display:none}
.p-portal[data-portal] .p-pager button,.p-portal[data-portal] .p-pager select{box-sizing:border-box;min-height:40px;margin:0;padding:0 14px;border:1px solid #d6d7db;border-radius:0;background:#fff;color:#292c30;font:inherit;font-size:14px}
.p-portal[data-portal] .p-pager button:disabled{opacity:.4;cursor:not-allowed}
.p-portal[data-portal] .p-pager label{display:flex;align-items:center;gap:6px;margin:0;font-weight:400}
.p-portal[data-portal] .p-compare-qr{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center}.p-portal[data-portal] .p-compare-qr canvas,.p-portal[data-portal] .p-compare-qr svg{display:block;width:96px;height:96px;margin:0 auto}.p-portal[data-portal] .p-compare-qr__note{display:block;font-size:12px;line-height:1.45;color:#5f646d}
.p-portal .p-price{color:#c8102e;font-weight:900;white-space:nowrap}
.p-portal .p-price__yen{color:#292c30;font-size:.62em;font-weight:700}
.p-portal .p-price__per{margin-left:.2em;color:#555;font-size:max(11px,.45em);font-weight:700}

/* 条件から探す（S-11）。外枠の中だけに効く。プルダウンを1行4つまで並べ、最後に「商品を検索」。8個目からは .p-filter__more（details）に入れる */
.p-portal[data-portal] .p-filter{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 8px;align-items:end;margin:0;padding:16px;border:1px solid #e1e2e4;border-radius:0;background:#fff}
.p-portal[data-portal] .p-filter__field{display:grid;gap:6px;min-width:0;margin:0;font-size:12px;font-weight:400;color:#666}
.p-portal[data-portal] .p-filter__field--wide{grid-column:span 2}
.p-portal[data-portal] .p-filter__field input,.p-portal[data-portal] .p-filter__field select{box-sizing:border-box;width:100%;height:48px;margin:0;padding:0 10px;border:1px solid #d6d7db;border-radius:0;background:#fff;color:#292c30;font:inherit;font-size:14px;font-weight:400}
.p-portal[data-portal] .p-filter__submit{box-sizing:border-box;width:100%;height:48px;margin:0;padding:0 16px;border:0;border-radius:0;background:#b0000d;color:#fff;font:inherit;font-size:15px;font-weight:700;cursor:pointer}
.p-portal[data-portal] .p-filter__more{grid-column:1/-1;margin:0;padding:0;border:0}
.p-portal[data-portal] .p-filter__more>summary{display:inline-flex;align-items:center;height:36px;padding:0 4px;color:#292c30;font-size:14px;font-weight:700;text-decoration:underline;cursor:pointer;list-style:none}
.p-portal[data-portal] .p-filter__more>summary::-webkit-details-marker{display:none}
.p-portal[data-portal] .p-filter__more-body{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px 8px;margin:8px 0 0}
.p-portal[data-portal] .p-filter__submit:focus-visible,.p-portal[data-portal] .p-filter__reset:focus-visible,.p-portal[data-portal] .p-filter__more>summary:focus-visible{outline:2px solid #292c30;outline-offset:2px}
.p-portal[data-portal] .p-filter-result{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;margin:16px 0 0}
.p-portal[data-portal] .p-filter-result+.p-filter-results{margin-block:0;padding-block:0;border:0}
.p-portal[data-portal] .p-filter-result__count{margin:0;font-size:14px;color:#292c30}
.p-portal[data-portal] .p-filter-result__count strong{margin:0 2px;font-size:22px;font-weight:700;color:#b0000d}
.p-portal[data-portal] .p-filter__reset{box-sizing:border-box;height:36px;margin:0;padding:0 16px;border:1px solid #d6d7db;border-radius:0;background:#fff;color:#292c30;font:inherit;font-size:14px;text-decoration:none;cursor:pointer}
@media (max-width:899px){.p-portal[data-portal] .p-filter,.p-portal[data-portal] .p-filter__more-body{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599px){.p-portal[data-portal] .p-filter,.p-portal[data-portal] .p-filter__more-body{grid-template-columns:1fr}.p-portal[data-portal] .p-filter__field--wide{grid-column:auto}}

.p-portal[data-portal] .p-rank{
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 16px;
  margin: 24px 0 0;
  padding: 0;
  list-style: none;
}.p-portal[data-portal] .p-rank__item{
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  padding: 44px 14px 14px;
  border: 1px solid #ddd;
  background: #fff;
}.p-portal[data-portal] .p-rank__no{
  position: absolute;
  top: 0;
  left: 0;
  padding: 6px 12px;
  background: #555;
  color: #fff;
  font-size: 20px;
  font-weight: 800;
  line-height: 1.2;
  font-variant-numeric: tabular-nums;
}.p-portal[data-portal] .p-rank__item:nth-child(1) .p-rank__no{
  background: #a78129;
}.p-portal[data-portal] .p-rank__item:nth-child(2) .p-rank__no{
  background: #737d86;
}.p-portal[data-portal] .p-rank__item:nth-child(3) .p-rank__no{
  background: #a26b48;
}.p-portal[data-portal] .p-rank__photo{
  display: block;
  margin: 0 0 10px;
}.p-portal[data-portal] .p-rank__photo img{
  display: block;
  width: 100%;
  height: 130px;
  object-fit: contain;
}.p-portal[data-portal] .p-rank__maker{
  margin: 0 0 4px;
  color: #666;
  font-size: 12px;
  line-height: 1.4;
}.p-portal[data-portal] .p-rank__name{
  margin: 0 0 10px;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.6;
  overflow-wrap: anywhere;
}.p-portal[data-portal] .p-rank__name a{
  color: inherit;
  text-decoration: none;
}.p-portal[data-portal] .p-rank__name a:hover{
  text-decoration: underline;
}.p-portal[data-portal] .p-rank__meta{
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px;
  min-height: 27px;
  margin: auto 0 12px;
  font-variant-numeric: tabular-nums;
}.p-portal[data-portal] .p-rank__price{
  color: #b0000d;
  font-size: 18px;
  font-weight: 800;
  line-height: 1.5;
}.p-portal[data-portal] .p-rank__price--none{
  color: #666;
  font-size: 12px;
  font-weight: 400;
}.p-portal[data-portal] .p-rank__price small{
  margin-left: 2px;
  color: #666;
  font-size: 11px;
  font-weight: 400;
}.p-portal[data-portal] .p-rank__nocompare{
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  margin: 0;
  color: #666;
  font-size: 12px;
  line-height: 1.4;
  text-align: center;
}.p-portal[data-portal] .p-rank__actions{
  display: grid;
  gap: 8px;
}.p-portal[data-portal] .p-rank__actions .p-action{
  width: 100%;
}@media (max-width: 1100px){
  .p-portal[data-portal] .p-rank{
    gap: 12px;
  }.p-portal[data-portal] .p-rank__item{
    padding-inline: 10px;
  }
}@media (max-width: 899px){
  .p-portal[data-portal] .p-rank{
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}@media (max-width: 700px){.p-portal[data-portal] .p-rank__item{
    padding: 40px 10px 10px;
  }.p-portal[data-portal] .p-rank__photo img{
    height: 100px;
  }.p-portal[data-portal] .p-rank__meta{
    min-height: 24px;
  }.p-portal[data-portal] .p-rank__price{
    font-size: 16px;
  }
}

/* メーカーから選ぶ（S-10）。外枠の中だけに効く。4社以下は .p-mk-grid--2、5〜6社は既定の3列 */
.p-portal[data-portal] .p-mk-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}
.p-portal[data-portal] .p-mk-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.p-portal[data-portal] .p-mk{display:flex;flex-direction:column;gap:12px;margin:0;padding:16px;border:1px solid #dedede;border-radius:0;background:#fff}
.p-portal[data-portal] .p-mk__name{display:flex;flex-wrap:wrap;align-items:baseline;gap:10px;margin:0;font-size:20px;font-weight:700;line-height:1.3;color:#181818}
.p-portal[data-portal] .p-mk__name span{font-size:13px;font-weight:400;color:#686868}
.p-portal[data-portal] .p-mk p{margin:0;font-size:13px;line-height:1.6;color:#292c30}
.p-portal[data-portal] .p-mk__meta{font-weight:700;color:#181818}
.p-portal[data-portal] .p-mk__model{color:#686868}
.p-portal[data-portal] .p-mk__btn{width:100%;margin-top:auto;cursor:pointer}
.p-portal[data-portal] .p-mk__btn:focus-visible{outline:2px solid #292c30;outline-offset:2px}
/* カード（S-30）。メーカーのカード（.p-mk）と同じ作り: 見出し・補足・写真・説明・一覧・ボタンの順。並びは .p-card-grid（既定3列、--2・--4）。ボタンは幅いっぱいでカードの下端にそろえる */
.p-portal[data-portal] .p-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}
.p-portal[data-portal] .p-card-grid--2{grid-template-columns:repeat(2,minmax(0,1fr))}
.p-portal[data-portal] .p-card-grid--4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:899px){.p-portal[data-portal] .p-card-grid,.p-portal[data-portal] .p-card-grid--4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599px){.p-portal[data-portal] .p-card-grid,.p-portal[data-portal] .p-card-grid--2,.p-portal[data-portal] .p-card-grid--4{grid-template-columns:1fr}}
.p-portal[data-portal] .p-card.p-card{display:flex;flex-direction:column;gap:12px;box-sizing:border-box;min-width:0;margin:0;padding:16px;border:1px solid #dedede;border-radius:0;background:#fff;color:#292c30;box-shadow:none}
.p-portal[data-portal] .p-card.p-card>*{margin:0}
.p-portal[data-portal] .p-card__icon.p-card__icon{display:flex;align-items:center;justify-content:flex-start;width:48px;height:48px;margin:0;padding:0;border:0;background:none;color:#292c30;font-size:32px;line-height:1}
.p-portal[data-portal] .p-card__icon.p-card__icon svg{display:block;width:32px;height:32px}
.p-portal[data-portal] .p-card__title.p-card__title{margin:0;padding:0;font-size:16px;font-weight:700;line-height:1.5;color:#181818}
.p-portal[data-portal] .p-card__title.p-card__title a{color:inherit;text-decoration:none}
.p-portal[data-portal] .p-card__title.p-card__title a:hover{text-decoration:underline;text-underline-offset:3px}
.p-portal[data-portal] .p-card__meta.p-card__meta{position:static;display:block;margin:0;padding:0;border:0;background:none;font-size:13px;font-weight:700;line-height:1.6;color:#181818}
.p-portal[data-portal] .p-card__photo-link.p-card__photo-link{display:block;margin:0;padding:0;border:0}
.p-portal[data-portal] .p-card__photo.p-card__photo{display:block;width:100%;height:160px;margin:0;padding:0;object-fit:contain;background:#fff}
.p-portal[data-portal] .p-card__text.p-card__text{margin:0;padding:0;font-size:13px;line-height:1.6;color:#292c30}
.p-portal[data-portal] .p-card__list.p-card__list{margin:0;padding:0 0 0 20px;font-size:13px;line-height:1.6;color:#292c30}
.p-portal[data-portal] .p-card__text.p-card__text a{color:#292c30;text-decoration:underline;text-underline-offset:3px}
.p-portal[data-portal] .p-card__btn{align-self:stretch;width:auto;margin-top:auto}
.p-portal[data-portal] .p-card.p-card>.p-card__btn{margin-top:auto}
.p-portal[data-portal] .p-card.p-card:is(:has(.p-card__title [aria-current="true"]),:has(.p-card__btn[aria-pressed="true"])){border:2px solid #292c30;padding:15px}
/* 周辺機器のカード（S-31）。.p-card-grid--acc: 2列の横長。左にアイコンの四角、右に名前・説明・「商品を見る」。カード全体が押せる */
.p-portal[data-portal] .p-card-grid.p-card-grid--acc{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
@media (max-width:767px){.p-portal[data-portal] .p-card-grid.p-card-grid--acc{grid-template-columns:1fr;gap:12px}}
.p-portal[data-portal] .p-card-grid--acc .p-card.p-card{position:relative;display:grid;grid-template-columns:72px minmax(0,1fr);grid-template-rows:auto auto 1fr;column-gap:18px;row-gap:6px;padding:24px;border-color:#e0e2e5}
.p-portal[data-portal] .p-card-grid--acc .p-card.p-card:hover{border-color:#292c30}
.p-portal[data-portal] .p-card-grid--acc .p-card.p-card:has(.p-card__btn[aria-pressed="true"]){padding:23px}
.p-portal[data-portal] .p-card-grid--acc .p-card.p-card>*{grid-column:2}
.p-portal[data-portal] .p-card-grid--acc .p-card .p-card__icon.p-card__icon{grid-column:1;grid-row:1/span 3;align-self:center;justify-content:center;box-sizing:border-box;width:72px;height:72px;border:1px solid #e0e2e5;background:#fff;color:#c8102e}
.p-portal[data-portal] .p-card-grid--acc .p-card .p-card__icon.p-card__icon svg{width:40px;height:40px}
.p-portal[data-portal] .p-card-grid--acc .p-card .p-card__text.p-card__text{color:#666}
.p-portal[data-portal] .p-card-grid--acc .p-card.p-card .p-card__btn.p-card__btn{position:static;grid-row:3;justify-self:start;align-self:end;width:auto;min-width:0;height:auto;min-height:0;margin:4px 0 0;padding:0;border:0;background:none;font-size:12px;font-weight:700;line-height:1.5;color:#292c30;text-decoration:none}
.p-portal[data-portal] .p-card-grid--acc .p-card.p-card .p-card__btn.p-card__btn::after{content:"";position:absolute;inset:0}
.p-portal[data-portal] .p-card-grid--acc .p-card.p-card:hover .p-card__btn.p-card__btn{text-decoration:underline;text-underline-offset:3px}
.p-portal[data-portal] .p-card-grid--acc .p-card.p-card .p-card__btn.p-card__btn:focus-visible{outline:none}
.p-portal[data-portal] .p-card-grid--acc .p-card.p-card:has(.p-card__btn:focus-visible){outline:2px solid #292c30;outline-offset:2px}
@media (max-width:767px){.p-portal[data-portal] .p-card-grid--acc .p-card.p-card{padding:20px 14px}.p-portal[data-portal] .p-card-grid--acc .p-card.p-card:has(.p-card__btn[aria-pressed="true"]){padding:19px 13px}}
.p-portal[data-portal] .p-rank__actions{margin-top:auto}
.p-portal[data-portal] .p-mk-all{display:inline-block;margin:16px 0 0;font-size:14px;color:#292c30;text-decoration:underline}
@media (max-width:899px){.p-portal[data-portal] .p-mk-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599px){.p-portal[data-portal] .p-mk-grid,.p-portal[data-portal] .p-mk-grid--2{grid-template-columns:1fr}}
.p-portal[data-portal] .p-mk-other{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:16px 0 0;font-size:14px;color:#59636e}
.p-portal[data-portal] .p-mk-other>button{padding:0;border:0;background:none;color:#292c30;font:inherit;font-weight:700;text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.p-portal[data-portal] .p-mk-other>button:focus-visible{outline:2px solid #292c30;outline-offset:2px}
.p-portal[data-portal] .p-mk-other+.p-mk-all{display:block}
.p-portal[data-portal] .p-mk img{display:block;width:100%;height:160px;margin:0;object-fit:contain;background:#fff}
/* ほかのメーカー: 閉じた状態で置き、見出しにメーカーの数を出す。中のボタンの並びは .p-mk-other */
.p-portal[data-portal] .p-mk-others{margin:16px 0 0}
.p-portal[data-portal] .p-mk-others>summary{display:inline-flex;align-items:center;gap:6px;min-height:44px;color:#292c30;font-size:14px;font-weight:700;cursor:pointer;list-style:none}
.p-portal[data-portal] .p-mk-others>summary::-webkit-details-marker{display:none}
.p-portal[data-portal] .p-mk-others>summary::before{content:"";width:0;height:0;border-style:solid;border-width:5px 0 5px 7px;border-color:transparent transparent transparent currentColor}
.p-portal[data-portal] .p-mk-others[open]>summary::before{transform:rotate(90deg)}
.p-portal[data-portal] .p-mk-others>.p-mk-other{margin:8px 0 0}

/* メーカーから選ぶ（S-10・S-23）で開く、そのメーカーの商品の表。カードの並びの幅いっぱいに出す */
.p-portal[data-portal] .p-mk-list{grid-column:1/-1;box-sizing:border-box;min-width:0;max-width:100%;margin:0;padding:16px;border:1px solid #dedede;border-radius:0;background:#fff}
.p-portal[data-portal] .p-mk-grid+.p-mk-list{margin-top:16px}
.p-portal[data-portal] .p-mk-other>.p-mk-list{flex:0 0 100%;font-size:16px;font-weight:400;color:#181818}
.p-portal[data-portal] .p-mk-list__head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 12px}
.p-portal[data-portal] .p-mk-list__title{margin:0;font-size:18px;font-weight:700;line-height:1.4;color:#181818}
.p-portal[data-portal] .p-mk-list__title:focus{outline:none}
.p-portal[data-portal] .p-mk-list__title:focus-visible{outline:2px solid currentColor;outline-offset:2px}
.p-portal[data-portal] .p-mk-list .p-mk__btn{width:auto;margin:0}
.p-portal[data-portal] .p-mk-list__scroll{overflow-x:auto}
.p-portal[data-portal] .p-mk-list__foot{margin:12px 0 0;text-align:center}
.p-portal[data-portal] .p-mk__btn[aria-expanded="true"]{background:#181818;border-color:#181818;color:#fff}

/* 用途別のおすすめ構成（S-13）。外枠の中だけに効く。用途のタブ → こんな方に → どうつなぐか（図） → まとめて借りられるセット → 言葉の意味 */
.p-portal[data-portal] .p-scene-tabs{display:flex;margin:0 0 24px;padding:0;list-style:none}
.p-portal[data-portal] .p-scene-tab{display:flex;flex:1;align-items:center;justify-content:center;gap:8px;min-height:56px;margin:0;padding:8px 12px;border:0;border-radius:0;background:#fff;color:#292c30;font:inherit;font-size:16px;font-weight:700;cursor:pointer}
.p-portal[data-portal] .p-scene-tab[aria-selected="true"]{background:#292c30;color:#fff}
.p-portal[data-portal] .p-scene-tab svg{width:24px;height:24px;fill:currentColor;flex:none}
.p-portal[data-portal] .p-scene-tab:focus-visible{outline:2px solid #292c30;outline-offset:2px}
.p-portal[data-portal] .p-scene{display:grid;gap:24px}
.p-portal[data-portal] .p-scene[hidden]{display:none}
.p-portal[data-portal] .p-scene__who{margin:0;padding:16px 20px;background:#fff;font-size:15px;line-height:1.7;color:#292c30}
.p-portal[data-portal] .p-scene__who b{margin-right:12px;color:#b0000d}
.p-portal[data-portal] .p-scene__h{margin:0 0 16px;font-size:18px;font-weight:700;line-height:1.5;color:#292c30}
.p-portal[data-portal] .p-scene__flow{padding:24px 16px 16px;border:1px solid #e1e2e4}
.p-portal[data-portal] .p-scene__steps{display:grid;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;margin:0;padding:0;list-style:none}
.p-portal[data-portal] .p-scene__step{position:relative;margin:0;padding:0 8px;text-align:center}
.p-portal[data-portal] .p-scene__step:not(:last-child)::after{content:"";position:absolute;top:36px;left:calc(50% + 36px);right:calc(-50% + 36px);height:2px;background:#292c30}
.p-portal[data-portal] .p-scene__icon{position:relative;z-index:1;display:grid;place-items:center;width:72px;height:72px;margin:0 auto 10px;border:2px solid #292c30;background:#fff;color:#292c30}
.p-portal[data-portal] .p-scene__icon svg{width:36px;height:36px;fill:currentColor}
.p-portal[data-portal] .p-scene__step--in .p-scene__icon{background:#292c30;color:#fff}
.p-portal[data-portal] .p-scene__step b{display:block;font-size:15px;color:#292c30}
.p-portal[data-portal] .p-scene__step p{margin:4px 0 0;font-size:13px;line-height:1.6;color:#666}
.p-portal[data-portal] .p-scene__badge{display:inline-block;margin:6px 0 0;padding:2px 8px;border:1px solid #d6d7db;font-size:12px;color:#292c30}
.p-portal[data-portal] .p-scene__step--in .p-scene__badge{border-color:#292c30;background:#292c30;color:#fff}
.p-portal[data-portal] .p-scene__legend{display:flex;flex-wrap:wrap;gap:16px;margin:16px 0 0;font-size:13px;color:#666}
.p-portal[data-portal] .p-scene__legend i{display:inline-block;width:14px;height:14px;margin-right:4px;border:2px solid #292c30;vertical-align:-2px}
.p-portal[data-portal] .p-scene__legend i.is-in{background:#292c30}
.p-portal[data-portal] .p-scene__sets{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none}
.p-portal[data-portal] .p-scene__set{display:grid;grid-template-columns:120px minmax(0,1fr);gap:14px;margin:0;padding:16px;border:1px solid #dedede;background:#fff}
.p-portal[data-portal] .p-scene__set img{width:120px;height:90px;object-fit:contain}
.p-portal[data-portal] .p-scene__set h4{margin:0 0 4px;font-size:16px;line-height:1.5;color:#292c30}
.p-portal[data-portal] .p-scene__fit{margin:0 0 8px;font-size:13px;line-height:1.6}
.p-portal[data-portal] .p-scene__fit b{margin-right:8px;color:#b0000d}
.p-portal[data-portal] .p-scene__items{display:flex;flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none}
.p-portal[data-portal] .p-scene__items li{margin:0;padding:2px 8px;border:1px solid #d6d7db;font-size:12px}
.p-portal[data-portal] .p-scene__foot{display:flex;grid-column:1/-1;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:12px 0 0}
.p-portal[data-portal] .p-scene__price{font-weight:700}
.p-portal[data-portal] .p-scene__go{display:inline-flex;align-items:center;height:40px;padding:0 18px;border-radius:0;background:#b0000d;color:#fff;font-size:14px;font-weight:700;text-decoration:none}
.p-portal[data-portal] .p-scene__words{border:1px solid #e1e2e4}
.p-portal[data-portal] .p-scene__words>summary{padding:14px 16px;font-weight:700;cursor:pointer}
.p-portal[data-portal] .p-scene__words dl{display:grid;grid-template-columns:120px minmax(0,1fr);gap:8px 16px;margin:0;padding:0 16px 16px;font-size:14px}
.p-portal[data-portal] .p-scene__words dt{font-weight:700}
.p-portal[data-portal] .p-scene__words dd{margin:0;color:#666}
@media (max-width:899px){.p-portal[data-portal] .p-scene__steps{grid-auto-flow:row;grid-template-columns:repeat(2,minmax(0,1fr));row-gap:24px}.p-portal[data-portal] .p-scene__step::after{display:none}.p-portal[data-portal] .p-scene__sets{grid-template-columns:1fr}}
@media (max-width:599px){.p-portal[data-portal] .p-scene-tabs{flex-direction:column;border-bottom:0}.p-portal[data-portal] .p-scene__set{grid-template-columns:1fr}.p-portal[data-portal] .p-scene__words dl{grid-template-columns:1fr}}
.p-portal[data-portal] .p-scene-tabs>li{display:flex;flex:1;min-width:0}
.p-portal[data-portal] .p-scene-tabs>li>.p-scene-tab{width:100%}
@media (max-width:599px){
  .p-portal[data-portal] [id$="-ranking"] .p-scene-tabs{flex-direction:row;overflow-x:auto;scrollbar-width:none}
  .p-portal[data-portal] [id$="-ranking"] .p-scene-tabs>li{flex:1 1 0;min-width:max-content}
  .p-portal[data-portal] [id$="-ranking"] .p-scene-tab{padding-inline:6px;font-size:13px;white-space:nowrap}
}
.p-portal[data-portal] .p-scene-tabs{gap:8px}
.p-portal[data-portal] .p-scene-tab{border:1px solid #d6d7db}
.p-portal[data-portal] .p-scene-tab[aria-selected="true"]{border-color:#292c30}

/* レンタル方法（S-14）とよくある質問（S-15）。外枠の中だけに効く */
.p-portal[data-portal] .p-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0;padding:0;list-style:none;counter-reset:p-step}
.p-portal[data-portal] .p-steps__item{margin:0;padding:20px 16px 16px;border:1px solid #dedede;border-radius:0;background:#fff;counter-increment:p-step}
.p-portal[data-portal] .p-steps__item::before{content:counter(p-step);display:grid;place-items:center;width:32px;height:32px;margin:0 0 12px;background:#292c30;color:#fff;font-size:16px;font-weight:700}
.p-portal[data-portal] .p-steps__item h3{margin:0 0 8px;font-size:16px;font-weight:700;line-height:1.5;color:#292c30}
.p-portal[data-portal] .p-steps__item p{margin:0;font-size:14px;line-height:1.7;color:#444}
.p-portal[data-portal] .p-guide-links{display:flex;flex-wrap:wrap;gap:8px 24px;margin:16px 0 0;padding:0;list-style:none;font-size:14px}
.p-portal[data-portal] .p-guide-links a{color:#292c30;text-decoration:underline}
.p-portal[data-portal] .p-faq{margin:0;padding:0;border-top:1px solid #dedede}
.p-portal[data-portal] .p-faq__item{margin:0;border-bottom:1px solid #dedede}
.p-portal[data-portal] .p-faq__item>summary{display:flex;align-items:baseline;gap:12px;padding:16px 4px;font-size:16px;font-weight:700;line-height:1.6;color:#292c30;cursor:pointer;list-style:none}
.p-portal[data-portal] .p-faq__item>summary::-webkit-details-marker{display:none}
.p-portal[data-portal] .p-faq__item>summary::before{content:"Q";flex:none;color:#b0000d;font-weight:800}
.p-portal[data-portal] .p-faq__item>summary:focus-visible{outline:2px solid #292c30;outline-offset:2px}
.p-portal[data-portal] .p-faq__a{display:flex;gap:12px;margin:0;padding:0 4px 16px;font-size:14px;line-height:1.8;color:#444}
.p-portal[data-portal] .p-faq__a::before{content:"A";flex:none;color:#292c30;font-weight:800;font-size:16px}
.p-portal[data-portal] .p-faq__a a{color:#292c30;text-decoration:underline}
@media (max-width:899px){.p-portal[data-portal] .p-steps{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:599px){.p-portal[data-portal] .p-steps{grid-template-columns:1fr}}

/* 掲載情報と出典（S-09 の⑪）と締めの帯（S-25）。外枠の中だけに効く */
.p-portal[data-portal] .p-sources{box-sizing:border-box;width:min(1068px,100%);margin:0 auto;padding:24px 16px 40px;color:#59636e;font-size:12px;line-height:1.8}
.p-portal[data-portal] .p-sources__title{display:inline-flex;align-items:center;gap:6px;min-height:44px;margin:0;padding:0;border:0;background:none;color:#292c30;font-size:13px;font-weight:700;line-height:1.6;letter-spacing:0;cursor:pointer;list-style:none}
.p-portal[data-portal] .p-sources__title::-webkit-details-marker{display:none}
.p-portal[data-portal] .p-sources__title::before{content:"";width:0;height:0;border-style:solid;border-width:5px 0 5px 7px;border-color:transparent transparent transparent currentColor;transition:transform .15s}
.p-portal[data-portal] .p-sources[open]>.p-sources__title::before{transform:rotate(90deg)}
.p-portal[data-portal] .p-sources__title:focus-visible{outline:2px solid #292c30;outline-offset:2px}
.p-portal[data-portal] .p-sources__body{padding:4px 0 0}
.p-portal[data-portal] .p-sources p{margin:0;color:inherit;font-size:inherit;line-height:inherit}
.p-portal[data-portal] .p-sources ul{margin:8px 0 0;padding-left:20px}
.p-portal[data-portal] .p-sources a{color:#1762a3;text-decoration:underline}
.p-portal[data-portal] .p-sources.p-sources--inline{width:auto;margin:8px 0 0;padding:0;color:#59636e;font-size:12px}
/* 表の見出しと中身の揃え（T-15）。写真・順位・比較とレンタルは中央、価格は右、それ以外は左。見出しは中身と同じ揃え。上下はすべて中央。縦に積む幅では効かせない。「用途から選ぶ」の節（-scenes）の表と、比較ダイアログの表（行ごとに項目が並ぶ表）は対象外 */
@media (min-width:851px){
.p-portal[data-portal] :is(.p-table,.p-spec-table):not([id$="-scenes"] table,dialog table) :is(thead th,tbody td,tbody th){text-align:left;vertical-align:middle}
.p-portal[data-portal] :is(.p-table,.p-spec-table):not([id$="-scenes"] table,dialog table) :is(thead th,tbody td):is(.p-col-photo,.p-col-rank,.p-col-actions){text-align:center}
.p-portal[data-portal] :is(.p-table,.p-spec-table):not([id$="-scenes"] table,dialog table) :is(thead th,tbody td).p-col-price{text-align:right}
}
/* 表の機種のセル（T-16）。機種名を先頭に 13px 太字・黒・下線なし、補足（メーカー・種類・商品ID・説明）は機種名の下に 12px・灰色。セルの中は .p-product で包む。出典の開閉（details）・用途の節（-scenes）は対象外。縦に積む幅（850px 以下）では効かせない */
@media (min-width:851px){.p-portal[data-portal] :is(.p-col-product,.p-spec-key):not([id$="-scenes"] *) :is(.p-product,.table-product,.table-product>div:only-child){display:flex;flex-direction:column;gap:2px;min-width:0;text-align:left}
.p-portal[data-portal] :is(.p-col-product,.p-spec-key):not([id$="-scenes"] *) :is(.p-product,.table-product,.table-product>div:only-child)>a:not(.p-action){order:-1}
.p-portal[data-portal] :is(.p-table,.p-spec-table):not([id$="-scenes"] table) :is(:is(.p-col-product,.p-spec-key) :is(.p-product,.table-product,.table-product>div:only-child)>:is(a,b):not(.p-action),.p-spec-key>a){font-size:13px;font-weight:700;line-height:1.5;color:#181818;text-decoration:none}
.p-portal[data-portal] :is(.p-table,.p-spec-table):not([id$="-scenes"] table) :is(:is(.p-col-product,.p-spec-key) :is(.p-product,.table-product,.table-product>div:only-child)>:is(a,b):not(.p-action),.p-spec-key>a):hover{text-decoration:underline;text-underline-offset:3px}
.p-portal[data-portal] :is(.p-table,.p-spec-table):not([id$="-scenes"] table) :is(.p-col-product,.p-spec-key) :is(:is(.p-product,.table-product,.table-product>div:only-child)>:not(a):not(details):not(div:only-child),a:not(.p-action) small){display:block;margin:0;padding:0;border:0;background:none;font-size:12px;font-weight:400;line-height:1.5;color:#59636e;letter-spacing:normal;text-transform:none}}
/* 仕様を比べる表（.p-spec-table）。本文の幅いっぱいを基本に、仕様のセルは 6 文字分（最後の説明の列は 12 文字分）から最大 240px で折り返し、収まらなければ箱（.p-spec-scroll）の中で横に送る。比較・レンタル・写真・機種（200px）・価格の列は一覧の表と同じ */
@media (min-width:851px){.p-portal[data-portal] .p-table.p-spec-table:not([id$="-scenes"] table).p-spec-table{width:100%;table-layout:auto}.p-portal[data-portal] .p-table.p-spec-table:not([id$="-scenes"] table) :is(th,td):not(.p-col-actions,.p-col-photo,.p-col-product,.p-col-price,.p-spec-key){min-width:6em;max-width:240px;white-space:normal}.p-portal[data-portal] .p-table.p-spec-table:not([id$="-scenes"] table) :is(th,td):last-child:not(.p-col-actions,.p-col-photo,.p-col-product,.p-col-price,.p-spec-key){min-width:12em}.p-portal[data-portal] .p-table.p-spec-table:not([id$="-scenes"] table) .p-spec-key{width:200px;min-width:200px;max-width:200px}.p-portal[data-portal] .p-spec-scroll .p-table.p-spec-table:not([id$="-scenes"] table) :is(th,td):is(.p-col-actions,.p-col-photo){padding-inline:12px}}
/* EC の商品データが無いと中身ができない枠（data-needs-ec）は、JS が動かないときと商品データを読めなかったときに隠す */
.p-portal:not([data-js]) [data-needs-ec],.p-portal[data-ec-failed] [data-needs-ec]{display:none!important}

/* Opt-in comparison printing. All state and output stay within the portal. */
/* 比較表の紙面を印刷する間だけ、portal-common.js が用紙の余白を0にする指定を差し込み、ブラウザのヘッダー・フッター（日時・題名・URL）を出さない。余白は紙面が持つ。向きは指定しない */
.p-portal[data-portal] [data-print-output]{display:none}
@media print{
.p-portal[data-portal]:has(>dialog[data-print-dialog][open]>[data-print-output]){width:100%!important;max-width:none!important;min-width:0!important;padding:0!important;margin:0!important;overflow:visible!important}
.p-portal[data-portal]:has(>dialog[data-print-dialog][open]>[data-print-output])>:not(dialog[data-print-dialog][open]){display:none!important}
.p-portal[data-portal]>dialog[data-print-dialog][open]:has(>[data-print-output]){display:block!important;position:static!important;inset:auto!important;transform:none!important;width:100%!important;min-width:0!important;max-width:none!important;height:auto!important;max-height:none!important;overflow:visible!important;margin:0!important;padding:0!important;border:0!important;box-shadow:none!important}
.p-portal[data-portal]>dialog[data-print-dialog][open]:has(>[data-print-output])>[data-print-view]{display:none!important}
.p-portal[data-portal]>dialog[data-print-dialog][open]>[data-print-output]{display:block!important;box-sizing:border-box;padding:10mm;-webkit-box-decoration-break:clone;box-decoration-break:clone;width:100%;font:10.5pt/1.55 "Hiragino Sans","Hiragino Kaku Gothic ProN","Noto Sans JP","Yu Gothic",sans-serif;color:#292c30!important;background:#fff!important}
.p-portal[data-portal] [data-print-output] *{box-sizing:border-box}
.p-portal[data-portal] [data-print-output] .p-print-layout--landscape{display:none}
.p-portal[data-portal] [data-print-output] .p-print-page+.p-print-page{break-before:page}
.p-portal[data-portal] [data-print-output] .p-print-company{display:flex;align-items:center;justify-content:space-between;gap:6mm;padding:0 0 3mm;border-bottom:.6mm solid #292c30;break-inside:avoid}
.p-portal[data-portal] [data-print-output] .p-print-logo{display:block;width:46mm!important;max-width:none!important;height:auto!important;margin:0!important}
.p-portal[data-portal] [data-print-output] address{display:flex;flex-direction:column;font-style:normal;font-size:8pt;line-height:1.5;text-align:right;color:#555}
.p-portal[data-portal] [data-print-output] address strong{font-size:9pt;color:#292c30}
.p-portal[data-portal] [data-print-output] .p-print-title{margin:5mm 0 1mm;font-size:17pt;font-weight:700;line-height:1.3;color:#292c30}
.p-portal[data-portal] [data-print-output] .p-print-meta{margin:0;font-size:9pt;line-height:1.5;color:#555}
.p-portal[data-portal] [data-print-output] .p-print-note{margin:1.5mm 0 4mm;font-size:8.5pt;line-height:1.5;color:#555}
.p-portal[data-portal] [data-print-output] table{--p-print-label:30mm;display:table!important;width:calc(var(--p-print-label) + (100% - .5mm - var(--p-print-label)) * var(--p-print-share, 1))!important;min-width:0!important;margin:0!important;table-layout:fixed!important;border-collapse:separate!important;border-spacing:0!important;border:0!important;border-top:.25mm solid #d9d9d9!important;border-left:.25mm solid #d9d9d9!important;break-inside:auto}
/* 機種が多いときの2つ目以降の表は新しいページから始め、表がページの途中で切れにくくする */
.p-portal[data-portal] [data-print-output] table+table{margin-top:0!important;break-before:page}
.p-portal[data-portal] [data-print-output] thead{display:table-header-group!important}
.p-portal[data-portal] [data-print-output] tbody{display:table-row-group!important}
.p-portal[data-portal] [data-print-output] tr{display:table-row!important;break-inside:avoid}
.p-portal[data-portal] [data-print-output] tbody tr:nth-last-child(2){break-after:avoid}
.p-portal[data-portal] [data-print-output] tbody tr:last-child{break-before:avoid}
.p-portal[data-portal] [data-print-output] :is(th,td){display:table-cell!important;position:static!important;float:none!important;width:auto!important;min-width:0!important;max-width:none!important;height:auto!important;padding:2mm 2.5mm!important;border:0!important;border-right:.25mm solid #d9d9d9!important;border-bottom:.25mm solid #d9d9d9!important;white-space:normal!important;overflow:visible!important;overflow-wrap:anywhere!important;text-overflow:clip!important;vertical-align:top!important;text-align:left!important;font-size:10.5pt!important;font-weight:400!important;line-height:1.55!important;color:#292c30!important;background:#fff!important}
.p-portal[data-portal] [data-print-output] tr>:first-child{width:var(--p-print-label)!important;font-size:9pt!important;font-weight:600!important}
.p-portal[data-portal] [data-print-output] thead th{vertical-align:top!important}
.p-portal[data-portal] [data-print-output] .p-print-photo{display:block;height:26mm;margin:0 0 2mm}
.p-portal[data-portal] [data-print-output] .p-print-photo img{display:block;width:100%!important;max-width:none!important;height:100%!important;margin:0!important;object-fit:contain}
.p-portal[data-portal] [data-print-output] .p-print-product>:is(a,span):not(.p-print-photo){display:block;font-size:10pt;font-weight:700;line-height:1.4;color:#292c30!important;text-decoration:none!important}
.p-portal[data-portal] [data-print-output] td a{color:#292c30!important;text-decoration:none!important}
.p-portal[data-portal] [data-print-output] .p-print-qr-cell{text-align:center!important}
.p-portal[data-portal] [data-print-output] .p-print-qr{display:block;width:24mm;max-width:100%;margin:0 auto;background:#fff!important;color:#000!important}
.p-portal[data-portal] [data-print-output] .p-print-qr svg{display:block;width:100%;height:auto;fill:#000!important;background:#fff!important}
.p-portal[data-portal] [data-print-output] .p-print-qr svg path{fill:#000!important}
.p-portal[data-portal] [data-print-output] .p-price{white-space:nowrap!important;font-size:13pt!important;font-weight:700!important;line-height:inherit!important;color:#c8102e!important}
.p-portal[data-portal] [data-print-output] :is(.p-price__yen,.p-price__per){font-size:8.5pt!important;font-weight:400!important;color:#555!important}
@media (orientation:landscape){
.p-portal[data-portal] [data-print-output] .p-print-layout--portrait{display:none}
.p-portal[data-portal] [data-print-output] .p-print-layout--landscape{display:block}
.p-portal[data-portal] [data-print-output] .p-print-title{margin-top:2mm}
.p-portal[data-portal] [data-print-output] .p-print-note{margin-bottom:1.5mm}
.p-portal[data-portal] [data-print-output] :is(th,td){padding-top:.9mm!important;padding-bottom:.9mm!important}
.p-portal[data-portal] [data-print-output] table{--p-print-label:36mm}
.p-portal[data-portal] [data-print-output] .p-print-photo{height:13mm;margin-bottom:1mm}
.p-portal[data-portal] [data-print-output] .p-print-qr{width:14mm}
}
}

/* 比較UI: data-compare-ui を付けたページだけ。 */
  /* ボタン（サイトのカートのボタン・レンタルの小窓の白いボタンに合わせる） */
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-btn { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; min-height: 44px; padding: 0 16px; border-radius: 8px; font-family: inherit; font-size: 14px; font-weight: 700; line-height: 1.2; text-decoration: none; cursor: pointer; white-space: nowrap; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-btn--primary { border: 2px solid var(--p-compare-accent); background: var(--p-compare-accent); color: #fff; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-btn--primary:hover { border-color: #a50d26; background: #a50d26; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-btn--secondary { border: 2px solid var(--p-compare-line2); background: #fff; color: var(--p-compare-ink); }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-btn--secondary:hover, .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-btn--secondary[aria-pressed="true"] { border-color: var(--p-compare-ink); }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-btn--large { min-height: 56px; padding: 0 24px; font-size: 16px; }
  /* 閉じる・外す（サイトのお問い合わせの窓の閉じるに合わせる） */
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-close { display: inline-flex; align-items: center; justify-content: center; flex: none; width: 44px; height: 44px; padding: 0; border: 0; background: none; color: var(--p-compare-mute); cursor: pointer; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-close:hover { color: var(--p-compare-ink); }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-close svg { width: 20px; height: 20px; fill: currentColor; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-close--small svg { width: 14px; height: 14px; }
  /* 入力欄（サイトの会員登録の入力欄に合わせる） */
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-input { box-sizing: border-box; min-height: 44px; padding: 0 14px; border: 1px solid var(--p-compare-line2); border-radius: 8px; background: #fff; color: var(--p-compare-ink); font-family: inherit; font-size: 14px; }

  /* 比較バー（サイトに同じ役割の部品は無いので、サイトの色・角丸・線で作る） */
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-bar { position: fixed; left: 0; right: var(--ps-portal-fixed-right, 0px); bottom: var(--ps-portal-fixed-bottom, 0px); z-index: 880; box-sizing: border-box; display: flex; flex-wrap: wrap; align-items: center; gap: 12px; padding: 12px max(16px, calc((100% - 1100px) / 2)); border-top: 1px solid var(--p-compare-line); background: #fff; box-shadow: 0 -4px 16px rgba(0,0,0,.08); }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-bar__items { display: flex; flex-wrap: nowrap; overflow-x: auto; overscroll-behavior-x: contain; gap: 8px; flex: 1 1 0%; min-width: 0; margin: 0; padding: 0; list-style: none; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-bar__name { overflow: hidden; max-width: 18em; white-space: nowrap; text-overflow: ellipsis; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-bar__item { display: inline-flex; flex: none; min-width: 0; max-width: 100%; align-items: center; min-height: 44px; padding: 0 0 0 14px; border: 1px solid var(--p-compare-line); border-radius: 8px; background: #fff; color: var(--p-compare-ink); font-size: 14px; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) :is(.p-compare-bar__clear, .p-compare-bar > .p-compare-btn) { flex: none; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-bar__clear { display: inline-flex; align-items: center; justify-content: center; box-sizing: border-box; min-height: 56px; padding: 0 24px; border: 2px solid var(--p-compare-line2); border-radius: 8px; background: #fff; color: var(--p-compare-ink); font-family: inherit; font-size: 16px; font-weight: 700; line-height: 1.2; white-space: nowrap; cursor: pointer; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-bar__clear:hover { border-color: var(--p-compare-ink); }

  /* 比較の小窓（サイトのレンタルの小窓に合わせる：角丸14px・影） */
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-dialog { position: fixed; top: calc(var(--ps-portal-sticky-top, 0px) + 12px); bottom: auto; left: 50%; z-index: 899; box-sizing: border-box; width: min(1100px, calc(100% - 32px)); height: auto; max-height: calc(100% - var(--ps-portal-sticky-top, 0px) - var(--ps-portal-fixed-bottom, 0px) - 24px); margin: 0; padding: 0; transform: translateX(-50%); overflow: auto; overscroll-behavior: contain; border: 0; border-radius: 14px; background: #fff; box-shadow: 0 12px 40px rgba(0,0,0,.2); color: var(--p-compare-text); }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-dialog__head { position: sticky; top: 0; z-index: 3; display: grid; grid-template-columns: 1fr auto; gap: 12px 16px; align-items: center; padding: 16px 16px 16px 24px; border-bottom: 1px solid var(--p-compare-line); background: #fff; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-dialog__title { margin: 0; color: var(--p-compare-ink); font-size: 20px; font-weight: 700; line-height: 1.4; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-dialog__tools { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: end; gap: 12px 24px; padding-right: 8px; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-dialog__output { display: flex; flex-wrap: wrap; gap: 8px; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-dialog__mail { display: flex; flex-wrap: wrap; align-items: end; gap: 8px; flex: 1 1 360px; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-dialog__mail label { display: block; flex: 1 1 100%; color: var(--p-compare-ink); font-size: 13px; font-weight: 700; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-dialog__mail .p-compare-input { flex: 1 1 220px; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-dialog__body { padding: 16px 24px 24px; }

  /* 表（サイトの商品ページの仕様の表に合わせる：外枠1px・角丸10px） */
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table { width: 100%; border-collapse: separate; border-spacing: 0; table-layout: fixed; border: 1px solid var(--p-compare-line); border-radius: 10px; font-size: 14px; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table :is(th, td) { box-sizing: content-box; padding: 12px; border: 0; border-bottom: 1px solid var(--p-compare-line); border-left: 1px solid var(--p-compare-line); text-align: left; vertical-align: top; background: #fff; color: var(--p-compare-ink); }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table tr > :first-child { border-left: 0; width: 160px; font-weight: 700; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table tbody tr:last-child > * { border-bottom: 0; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table thead th:first-child { border-top-left-radius: 10px; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table thead th:last-child { border-top-right-radius: 10px; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table tbody tr:last-child > :first-child { border-bottom-left-radius: 10px; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table tbody tr:last-child > :last-child { border-bottom-right-radius: 10px; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table thead th { vertical-align: top; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-product-actions { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-product-actions .p-compare-btn { position: static; flex: 0 1 auto; max-width: 100%; white-space: normal; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-remove-status { grid-column: 1 / -1; margin: 0; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-remove-status:empty { display: none; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table .p-compare-photo { display: block; height: 110px; margin: 0 0 8px; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table .p-compare-photo img { width: 100%; height: 100%; object-fit: contain; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table .p-compare-name { display: block; font-weight: 700; line-height: 1.4; }
  /* 価格（比較表はサイトのレンタルの小窓と同じ赤の太字） */
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table .p-price { color: var(--p-compare-accent); font-size: 18px; font-weight: 900; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table .p-price__yen, .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table .p-price__per { color: var(--p-compare-ink); font-size: 12px; font-weight: 400; }

  /* 表示項目を編集 */
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-pick { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; margin: -12px 4px -12px -12px; vertical-align: middle; cursor: pointer; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-pick[hidden] { display: none; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-pick input { width: 20px; height: 20px; margin: 0; accent-color: var(--p-compare-ink); cursor: pointer; }
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table tr.p-compare-off :is(th, td), .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table tr.p-compare-off .p-price { color: var(--p-compare-sub); text-decoration: line-through; text-decoration-thickness: 1px; }
  /* 横に送ったとき、固定した項目名の列の左（小窓の内側の余白）に後ろの列が透けないよう白で覆う */
  .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table tr > :first-child { position: sticky; left: 0; z-index: 1; box-shadow: -24px 0 0 #fff; }

  @media (max-width: 767px) {
    .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-bar__items { flex-basis: 100%; flex-wrap: nowrap; overflow-x: auto; overscroll-behavior-x: contain; }
    .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-bar__item { flex: none; }
    .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-bar__name { max-width: 11em; }
    .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-bar .p-compare-btn--large { flex: 1 1 auto; }
    .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-dialog { width: calc(100% - 16px); }
    .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-dialog__head { padding: 12px 8px 12px 16px; }
    .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-dialog__title { font-size: 18px; }
    .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-dialog__body { padding: 12px 16px 16px; overflow-x: auto; }
    .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table tr > :first-child { box-shadow: -16px 0 0 #fff; }
    .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table { width: 660px; }
    .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table tr > :first-child { width: 132px; word-break: keep-all; overflow-wrap: anywhere; }
    .p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-pick { width: 36px; margin-left: -10px; margin-right: 0; }
  }

.p-portal[data-portal]:has(dialog[data-compare-ui]) { --p-compare-accent: var(--pr-accent, #C8102E); --p-compare-ink: var(--pr-ink, #1a1a1a); --p-compare-text: #525263; --p-compare-sub: var(--pr-sub, #555); --p-compare-mute: var(--pr-mute, #999); --p-compare-line: var(--pr-line, #d5d3cf); --p-compare-line2: var(--pr-line2, #d5d3cf); }
.p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-bar[hidden] { display: none; }
.p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-bar:has([data-compare-items] > :not([hidden])) { font: 14px/1.6 "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; color: var(--p-compare-text); }
.p-portal[data-portal]:has(dialog[data-compare-ui]):has(.p-compare-bar:not([hidden])) { padding-bottom: var(--p-compare-bar-height, 190px); }
.p-portal[data-portal] dialog[data-compare-ui] { font: 14px/1.6 "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif; max-width: none; }
.p-portal[data-portal] dialog[data-compare-ui] [data-print-view] { display: contents; }
.p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-dialog__body { overflow-x: auto; }
.p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-bar [role="status"] { flex: 0 0 100%; margin: 0; }
.p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-bar [role="status"]:empty { display: none; }
.p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table [hidden] { display: none; }
.p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table { min-width: var(--p-compare-table-width, 660px); }
.p-portal[data-portal]:has(dialog[data-compare-ui]) .p-compare-table a.p-compare-photo { text-decoration: none; }
@media print {
  .p-portal[data-portal] dialog[data-compare-ui] :is([data-compare-remove], .p-compare-remove-status) { display: none !important; }
  .p-portal[data-portal] dialog[data-compare-ui] .p-compare-table tr.p-compare-off { display: none !important; }
}
