@charset "utf-8";

.rus-main {
  display:block!important;
  position:relative!important;
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
  float:none!important;
  clear:both!important;
  overflow:visible!important;
}

.rus-main h1,.rus-main h2,.rus-main h3,.rus-main p,.rus-main ul,.rus-main ol,.rus-main dl,.rus-main figure {
  margin-block-start:0;
  margin-block-end:0;
}

.rus-main img {
  border:0!important;
  vertical-align:middle;
}

.rus-main button {
  appearance:auto;
}

.rus-main {
  --rus-green:#0b6b3a;
  --rus-green2:#20ad51;
  --rus-lime:#b7ef69;
  --rus-yellow:#ffe500;
  --rus-red:#c70f1d;
  --rus-ink:#17201b;
  --rus-muted:#58635c;
  --rus-soft:#edf7f0;
  --rus-line:#cfe2d5;
  --rus-white:#fff;
  --rus-shadow:0 18px 48px rgba(4,49,25,.12)
}

.rus-main,.rus-main * {
  box-sizing:border-box
}

.rus-main {
  margin:0;
  font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;
  color:var(--rus-ink);
  background:#fff;
  line-height:1.75;
  font-size:16px
}

.rus-main img {
  max-width:100%;
  display:block
}

.rus-main a {
  color:inherit
}

.rus-main button,.rus-main a {
  touch-action:manipulation
}

.rus-wrap {
  width:min(1120px,calc(100% - 40px));
  margin:auto
}

.rus-topbar {
  background:#073c25;
  color:#fff;
  text-align:center;
  font-size:.82rem;
  padding:.42rem 1rem;
  letter-spacing:.04em
}

.rus-header {
  position:sticky;
  top:0;
  z-index:20;
  background:rgba(255,255,255,.94);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(11,107,58,.12)
}

.rus-header-inner {
  height:72px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px
}

.rus-brand {
  display:flex;
  align-items:center;
  gap:11px;
  text-decoration:none;
  font-weight:900
}

.rus-brand-mark {
  display:grid;
  place-items:center;
  background:var(--rus-green);
  color:#fff;
  font-size:1.2rem;
  letter-spacing:-.08em;
  width:54px;
  height:36px
}

.rus-brand span:last-child {
  font-size:.9rem;
  color:var(--rus-muted)
}

.rus-main nav {
  display:flex;
  gap:24px;
  align-items:center
}

.rus-main nav a {
  text-decoration:none;
  font-weight:700;
  font-size:.9rem
}

.rus-mini-cta {
  background:var(--rus-green);
  color:#fff;
  padding:.65rem 1rem;
  border-radius:999px
}

.rus-hero {
  overflow:hidden;
  background:linear-gradient(120deg,#041e13 0%,#0a512f 58%,#159548 100%);
  color:#fff;
  position:relative
}

.rus-hero:after {
  content:"";
  position:absolute;
  inset:auto -8vw -35% auto;
  width:55vw;
  aspect-ratio:1;
  border:90px solid rgba(255,229,0,.12);
  border-radius:50%
}

.rus-hero-grid {
  position:relative;
  z-index:1;
  min-height:650px;
  display:grid;
  grid-template-columns:1.03fr .97fr;
  align-items:center;
  gap:36px;
  padding:70px 0 58px
}

.rus-eyebrow {
  display:inline-flex;
  align-items:center;
  gap:9px;
  text-transform:uppercase;
  font-size:.85rem;
  letter-spacing:.12em;
  font-weight:900;
  color:var(--rus-yellow)
}

.rus-eyebrow:before {
  content:"";
  width:28px;
  height:3px;
  background:currentColor
}

.rus-hero h1 {
  font-size: clamp(3rem, 5.5vw, 5.2rem);
  font-weight: 900;
  line-height: 1.04;
  letter-spacing: -0.07em;
}

.rus-hero h1 .rus-hero-line {
  display: inline-block;
  white-space: nowrap;
}

.rus-hero h1 em {
  font-style: normal;
  font-weight: 900;
  color: var(--rus-green);
}

.rus-hero p {
  font-size:clamp(1rem,1.8vw,1.2rem);
  max-width:610px;
  color:#d9f3e4;
  margin:0 0 1.8rem
}

.rus-hero h1 br {
  display: block;
}

.rus-actions {
  display:flex;
  gap:12px;
  flex-wrap:wrap
}

.rus-btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:.75rem 1.35rem;
  border-radius:8px;
  text-decoration:none;
  font-weight:900;
  border:2px solid transparent;
  transition:.2s transform,.2s background
}

.rus-btn:hover {
  transform:translateY(-2px)
}

.rus-btn-primary {
  background:var(--rus-yellow);
  color:#17201b;
  box-shadow:0 10px 24px rgba(0,0,0,.18)
}

.rus-btn-ghost {
  border-color:rgba(255,255,255,.6);
  color:#fff
}

.rus-hero-note {
  display:flex;
  gap:16px;
  flex-wrap:wrap;
  margin-top:22px;
  font-size:.83rem;
  color:#d7efe0
}

.rus-hero-note span:before {
  content:"✓";
  font-weight:900;
  color:var(--rus-yellow);
  margin-right:6px
}

.rus-visual {
  position:relative;
  min-height:490px;
  display:grid;
  place-items:center
}

.rus-visual img {
  width:min(507px,100%);
  filter:drop-shadow(0 28px 30px rgba(0,0,0,.4))
}

.rus-price-stamp {
  position:absolute;
  top:6%;
  right:1%;
  background:var(--rus-yellow);
  color:var(--rus-ink);
  width:142px;
  aspect-ratio:1;
  border-radius:50%;
  display:grid;
  place-items:center;
  text-align:center;
  font-weight:900;
  line-height:1.2;
  border:8px solid rgba(255,255,255,.75)
}

.rus-price-stamp strong {
  font-size:1.55rem;
  display:block
}

.rus-stock-band {
  position:absolute;
  bottom:0;
  left:0;
  right:0;
  background:#fff;
  color:var(--rus-green);
  padding:15px 20px;
  border-radius:12px;
  box-shadow:var(--rus-shadow);
  display:grid;
  grid-template-columns:auto 1fr;
  gap:14px;
  align-items:center
}

.rus-stock-band b {
  font-size:1.05rem
}

.rus-re-logo {
  background:var(--rus-green);
  color:#fff;
  border-radius:8px;
  padding:.5rem .7rem;
  font-weight:900;
  font-size:1.35rem
}

.rus-trust-strip {
  border-bottom:1px solid var(--rus-line);
  background:#fff
}

.rus-trust-grid {
  display:grid;
  grid-template-columns:repeat(5,1fr)
}

.rus-trust-item {
  padding:22px 12px;
  text-align:center;
  border-right:1px solid var(--rus-line);
  font-weight:900;
  font-size:.9rem
}

.rus-trust-item:first-child {
  border-left:1px solid var(--rus-line)
}

.rus-trust-icon {
  display:block;
  color:var(--rus-green);
  font-size:1.6rem;
  line-height:1;
  margin-bottom:8px
}

.rus-main section {
  padding:92px 0
}

.rus-section-kicker {
  color:var(--rus-green);
  font-size:.82rem;
  letter-spacing:.14em;
  font-weight:900;
  text-transform:uppercase
}

.rus-section-title {
  font-size:clamp(2rem,4vw,3.4rem);
  line-height:1.18;
  letter-spacing:-.045em;
  margin:.6rem 0 1rem
}

.rus-section-lead {
  color:var(--rus-muted);
  max-width:720px;
  margin:0 0 38px;
  font-size:1.05rem
}

.rus-center {
  text-align:center
}

.rus-center .rus-section-lead {
  margin-inline:auto
}

.rus-highlight {
  background:linear-gradient(transparent 62%,var(--rus-yellow) 62%)
}

.rus-compare {
  background:#f6faf7
}

.rus-compare-table {
  background:#fff;
  border-radius:18px;
  box-shadow:var(--rus-shadow);
  overflow:hidden;
  border:1px solid var(--rus-line)
}

.rus-compare-row {
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr;
  align-items:stretch
}

.rus-compare-row>div {
  padding:21px 24px;
  border-bottom:1px solid var(--rus-line)
}

.rus-compare-row>div+div {
  border-left:1px solid var(--rus-line)
}

.rus-compare-row:last-child>div {
  border-bottom:0
}

.rus-compare-head {
  font-weight:900;
  background:#eef7f1
}

.rus-compare-head .rus-reuse-col {
  background:var(--rus-green);
  color:#fff
}

.rus-label {
  font-weight:900
}

.rus-reuse-col {
  background:#f1faf4
}

.rus-good {
  color:var(--rus-green);
  font-weight:900
}

.rus-note {
  font-size:.8rem;
  color:var(--rus-muted);
  margin-top:14px
}

.rus-value-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:18px
}

.rus-value-card {
  border:1px solid var(--rus-line);
  border-radius:16px;
  padding:28px 24px;
  background:#fff;
  box-shadow:0 10px 30px rgba(8,76,40,.06);
  position:relative;
  overflow:hidden
}

.rus-value-card:before {
  content:attr(data-num);
  position:absolute;
  right:14px;
  top:-8px;
  color:#e1f2e6;
  font-weight:900;
  font-size:4.5rem;
  line-height:1
}

.rus-value-icon {
  width:52px;
  height:52px;
  border-radius:14px;
  background:var(--rus-green);
  color:#fff;
  display:grid;
  place-items:center;
  font-size:1.5rem;
  margin-bottom:18px;
  position:relative
}

.rus-value-card h3 {
  font-size:1.15rem;
  line-height:1.45;
  margin:.2rem 0 .7rem;
  position:relative
}

.rus-value-card p {
  margin:0;
  color:var(--rus-muted);
  font-size:.92rem;
  position:relative
}

.rus-warranty {
  margin-top:22px;
  background:#071d13;
  color:#fff;
  border-radius:18px;
  padding:26px 30px;
  display:grid;
  grid-template-columns:auto 1fr;
  gap:20px;
  align-items:center
}

.rus-six {
  display:grid;
  place-items:center;
  width:82px;
  height:82px;
  border:5px solid var(--rus-yellow);
  border-radius:50%;
  color:var(--rus-yellow);
  font-size:2rem;
  font-weight:900;
  line-height:1
}

.rus-warranty b {
  font-size:1.25rem
}

.rus-warranty p {
  margin:.25rem 0 0;
  color:#cee6d6;
  font-size:.92rem
}

.rus-types {
  background:#fff
}

.rus-type-grid {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:22px
}

.rus-type-card {
  display:grid;
  grid-template-columns:1.05fr .95fr;
  min-height:310px;
  border:1px solid var(--rus-line);
  border-radius:18px;
  overflow:hidden;
  background:linear-gradient(145deg,#f7fbf8,#edf7f0);
  box-shadow:0 12px 36px rgba(8,76,40,.08)
}

.rus-type-copy {
  padding:34px 12px 32px 32px;
  display:flex;
  flex-direction:column;
  justify-content:center
}

.rus-type-label {
  color:var(--rus-green);
  font-size:.78rem;
  font-weight:900;
  letter-spacing:.12em
}

.rus-type-card h3 {
  font-size:1.55rem;
  line-height:1.35;
  margin:.45rem 0 .75rem
}

.rus-type-card p {
  color:var(--rus-muted);
  margin:0;
  font-size:.93rem
}

.rus-type-art {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px 20px 24px 0
}

.rus-type-art img {
  max-height:220px;
  width:auto;
  object-fit:contain
}

.rus-desktop-art img:first-child {
  width:66%;
  margin-right:-18%
}

.rus-desktop-art img:last-child {
  width:38%;
  align-self:flex-end;
  z-index:1
}

.rus-selector {
  background:#0a281a;
  color:#fff;
  overflow:hidden
}

.rus-selector .rus-section-kicker {
  color:var(--rus-yellow)
}

.rus-selector .rus-section-lead {
  color:#c8dfd0
}

.rus-use-tabs {
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  margin-bottom:22px
}

.rus-use-tab {
  font:inherit;
  border:1px solid #4d715d;
  background:transparent;
  color:#fff;
  border-radius:999px;
  padding:.7rem 1rem;
  cursor:pointer;
  font-weight:800
}

.rus-use-tab[aria-selected="true"] {
  background:var(--rus-yellow);
  border-color:var(--rus-yellow);
  color:var(--rus-ink)
}

.rus-use-panel {
  display:grid;
  grid-template-columns:1fr .82fr;
  gap:32px;
  background:#fff;
  color:var(--rus-ink);
  border-radius:20px;
  padding:34px;
  box-shadow:0 24px 60px rgba(0,0,0,.22)
}

.rus-use-panel h3 {
  font-size:1.65rem;
  margin:0 0 .5rem
}

.rus-specs {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:10px;
  margin:22px 0
}

.rus-spec {
  background:var(--rus-soft);
  border-radius:10px;
  padding:15px
}

.rus-spec small {
  display:block;
  color:var(--rus-muted)
}

.rus-spec b {
  font-size:1.05rem
}

.rus-advisor {
  border-left:1px solid var(--rus-line);
  padding-left:32px;
  display:flex;
  flex-direction:column;
  justify-content:center
}

.rus-advisor-label {
  color:var(--rus-green);
  font-weight:900
}

.rus-advisor p {
  color:var(--rus-muted)
}

.rus-report-grid {
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:50px;
  align-items:center
}

.rus-report-card {
  background:#f2f4f2;
  border:1px solid #d8dfda;
  border-radius:18px;
  padding:28px;
  box-shadow:var(--rus-shadow)
}

.rus-report-top {
  display:flex;
  justify-content:space-between;
  gap:20px;
  border-bottom:2px solid #c9d3cc;
  padding-bottom:16px;
  margin-bottom:16px
}

.rus-report-top b {
  font-size:1.2rem
}

.rus-report-ok {
  background:var(--rus-green);
  color:#fff;
  border-radius:999px;
  padding:.3rem .75rem;
  font-weight:900
}

.rus-meter {
  height:16px;
  background:#d9e0db;
  border-radius:999px;
  overflow:hidden;
  margin:.45rem 0 1rem
}

.rus-meter span {
  display:block;
  width:78%;
  height:100%;
  background:linear-gradient(90deg,var(--rus-green),#5fcf60)
}

.rus-report-lines {
  display:grid;
  gap:10px
}

.rus-report-line {
  display:flex;
  justify-content:space-between;
  padding:9px 0;
  border-bottom:1px solid #d9e0db
}

.rus-checklist {
  display:grid;
  gap:13px;
  margin-top:24px
}

.rus-check {
  display:flex;
  gap:12px;
  align-items:flex-start
}

.rus-check-mark {
  flex:0 0 auto;
  width:27px;
  height:27px;
  border-radius:7px;
  background:var(--rus-green);
  color:#fff;
  display:grid;
  place-items:center;
  font-weight:900
}

.rus-faq {
  background:#f6faf7
}

.rus-faq-list {
  display:grid;
  gap:12px;
  max-width:880px;
  margin:auto
}

.rus-faq details {
  background:#fff;
  border:1px solid var(--rus-line);
  border-radius:12px;
  padding:0 22px
}

.rus-faq summary {
  cursor:pointer;
  padding:20px 34px 20px 0;
  font-weight:900;
  position:relative;
  list-style:none
}

.rus-faq summary::-webkit-details-marker {
  display:none
}

.rus-faq summary:after {
  content:"＋";
  position:absolute;
  right:0;
  color:var(--rus-green);
  font-size:1.35rem
}

.rus-faq details[open] summary:after {
  content:"−"
}

.rus-faq details p {
  margin:0 0 20px;
  color:var(--rus-muted)
}

.rus-final {
  padding:0;
  background:#071d13;
  color:#fff
}

.rus-final-grid {
  display:grid;
  grid-template-columns:1.2fr .55fr;
  align-items:end;
  gap:32px;
  min-height:500px
}

.rus-final-copy {
  padding:76px 0
}

.rus-final h2 {
  font-size:clamp(2.1rem,4.6vw,4.1rem);
  line-height:1.12;
  letter-spacing:-.05em;
  margin:0 0 1rem
}

.rus-final p {
  color:#cbe1d3;
  max-width:650px
}

.rus-final .rus-actions {
  margin-top:28px
}

.rus-final-art img {
  max-height:440px;
  margin-left:auto;
  filter:drop-shadow(0 18px 30px rgba(0,0,0,.3))
}

.rus-fine {
  font-size:.78rem;
  color:#aac1b2;
  margin-top:18px
}

.rus-footer {
  background:#03130c;
  color:#a9b9ae;
  padding:28px 0;
  font-size:.82rem
}

.rus-footer-inner {
  display:flex;
  justify-content:space-between;
  gap:20px;
  flex-wrap:wrap
}

.rus-footer a {
  color:#dce7df
}

/* Compact, bright presentation */

.rus-main {
  --rus-green:#13864a;
  --rus-green2:#45bd6a;
  --rus-lime:#c9f58c;
  --rus-yellow:#ffe55c;
  --rus-ink:#183021;
  --rus-muted:#5d6d62;
  --rus-soft:#f0faf3;
  --rus-line:#d9eadf;
  --rus-shadow:0 12px 32px rgba(23,105,58,.1)
}

.rus-topbar {
  background:#16894d;
  padding:.32rem 1rem;
  font-size:.8rem
}

.rus-header-inner {
  height:64px
}

.rus-hero {
  background:linear-gradient(135deg,#fbfffc 0%,#edf9f1 54%,#d8f2e1 100%);
  color:var(--rus-ink);
  border-bottom:1px solid var(--rus-line)
}

.rus-hero:after {
  inset:auto -8vw -48% auto;
  width:50vw;
  border-width:70px;
  border-color:rgba(255,229,92,.26)
}

.rus-hero-grid {
  min-height:520px;
  gap:30px;
  padding:42px 0 34px
}

.rus-eyebrow {
  color:var(--rus-green);
  font-size:.82rem
}

.rus-hero p {
  font-size:clamp(.98rem,1.6vw,1.12rem);
  color:#476052;
  margin-bottom:1.35rem
}

.rus-actions {
  gap:10px
}

.rus-btn {
  min-height:48px;
  padding:.65rem 1.25rem
}

.rus-btn-primary {
  box-shadow:0 8px 20px rgba(53,92,62,.14)
}

.rus-btn-ghost {
  border-color:var(--rus-green);
  color:var(--rus-green);
  background:rgba(255,255,255,.58)
}

.rus-hero-note {
  gap:14px;
  margin-top:16px;
  color:#3e624c
}

.rus-hero-note span:before {
  color:var(--rus-green)
}

.rus-visual {
  min-height:390px
}

.rus-visual img {
  width:min(470px,100%);
  filter:drop-shadow(0 20px 22px rgba(32,84,51,.23))
}


.rus-stock-band {
  padding:11px 16px;
  border-radius:10px;
  gap:12px
}

.rus-stock-band b {
  font-size:1rem
}

.rus-re-logo {
  padding:.4rem .62rem;
  font-size:1.2rem
}

.rus-trust-item {
  padding:14px 10px;
  font-size:.86rem
}

.rus-trust-icon {
  font-size:1.35rem;
  margin-bottom:5px
}

.rus-main section {
  padding:58px 0
}

.rus-section-kicker {
  font-size:.79rem
}

.rus-section-title {
  font-size:clamp(1.85rem,3.5vw,2.85rem);
  margin:.45rem 0 .75rem
}

.rus-section-lead {
  margin-bottom:25px;
  font-size:1rem
}

.rus-highlight {
  background:linear-gradient(transparent 64%,var(--rus-yellow) 64%)
}

.rus-compare {
  background:#f7fcf8
}

.rus-compare-table {
  border-radius:16px
}

.rus-compare-row>div {
  padding:15px 20px
}

.rus-value-grid {
  gap:14px
}

.rus-value-card {
  border-radius:14px;
  padding:22px 20px;
  box-shadow:0 8px 24px rgba(8,76,40,.055)
}

.rus-value-card:before {
  font-size:4rem;
  color:#e7f5eb
}

.rus-value-icon {
  width:46px;
  height:46px;
  border-radius:12px;
  font-size:1.35rem;
  margin-bottom:13px
}

.rus-warranty {
  margin-top:16px;
  background:#e9f7ee;
  color:var(--rus-ink);
  border:1px solid var(--rus-line);
  border-radius:16px;
  padding:18px 24px;
  gap:18px
}

.rus-warranty p {
  color:var(--rus-muted);
  margin-top:.2rem
}

.rus-type-grid {
  gap:18px
}

.rus-type-card {
  min-height:250px;
  border-radius:16px;
  background:linear-gradient(145deg,#fbfefc,#edf8f1);
  box-shadow:0 9px 28px rgba(8,76,40,.07)
}

.rus-type-copy {
  padding:25px 10px 24px 26px
}

.rus-type-card h3 {
  font-size:1.4rem;
  margin:.4rem 0 .6rem
}

.rus-type-card p {
  font-size:.9rem
}

.rus-type-art {
  padding:18px 16px 18px 0
}

.rus-type-art img {
  max-height:178px
}

.rus-selector {
  background:#eaf8ef;
  color:var(--rus-ink);
  border-block:1px solid var(--rus-line)
}

.rus-selector .rus-section-kicker {
  color:var(--rus-green)
}

.rus-selector .rus-section-lead {
  color:var(--rus-muted)
}

.rus-use-tabs {
  gap:8px;
  margin-bottom:16px
}

.rus-use-tab {
  border-color:#a9d6b9;
  background:#fff;
  color:var(--rus-green);
  padding:.55rem .9rem
}

.rus-use-tab[aria-selected="true"] {
  background:var(--rus-green);
  border-color:var(--rus-green);
  color:#fff
}

.rus-use-panel {
  gap:24px;
  border:1px solid var(--rus-line);
  border-radius:16px;
  padding:25px;
  box-shadow:var(--rus-shadow)
}

.rus-specs {
  gap:8px;
  margin:16px 0
}

.rus-spec {
  padding:12px
}

.rus-advisor {
  padding-left:24px
}

.rus-report-grid {
  gap:32px
}

.rus-report-card {
  background:#f4f8f5;
  border-color:var(--rus-line);
  border-radius:16px;
  padding:22px
}

.rus-checklist {
  gap:10px;
  margin-top:18px
}

.rus-faq {
  background:#f7fcf8
}

.rus-faq-list {
  gap:8px
}

.rus-faq details {
  border-radius:10px;
  padding:0 20px
}

.rus-faq summary {
  padding:15px 34px 15px 0
}

.rus-faq details p {
  margin-bottom:15px
}

.rus-final {
  background:linear-gradient(115deg,#0f7542,#21a65b)
}

.rus-final .rus-eyebrow {
  color:var(--rus-yellow)
}

.rus-final .rus-btn-ghost {
  border-color:#fff;
  color:#fff;
  background:rgba(255,255,255,.08)
}

.rus-final-grid {
  gap:26px;
  min-height:400px
}

.rus-final-copy {
  padding:50px 0
}

.rus-final h2 {
  font-size:clamp(2rem,4vw,3.45rem);
  margin-bottom:.8rem
}

.rus-final p {
  color:#e5f5eb
}

.rus-final .rus-actions {
  margin-top:20px
}

.rus-footer {
  background:#0b4c2c;
  color:#c2d8c9;
  padding:22px 0
}

.rus-final .rus-fine {
    margin-top: 10px !important;
  }

  /* PC：文章とボタンの間隔 */
.rus-advisor .rus-btn {
    margin-top: 12px;
  }
}

/* ===== HERO PC調整 ===== */
@media (min-width:769px) {
  .rus-hero-grid {
    grid-template-columns: 1.25fr .75fr;
  }

  .rus-hero h1 {
    line-height: 1.15;
    margin-bottom: 20px;
  }

  .rus-hero h1 .rus-hero-line {
    white-space: nowrap;
  }
	
  .rus-visual > img {
    width: min(430px, 100%);
    height: auto !important;
    object-fit: contain;
  }	
  /* PC: price badge - single source of truth */
  .rus-price-stamp {
    width: 150px;
    top: -6%;
    right: -12%;
    left: auto;
    padding: 16px 8px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 2px;
    font-size: .9rem;
    line-height: 1.3;
    border: 5px solid rgba(255,255,255,.85);
    box-shadow: 0 8px 22px rgba(23,105,58,.12);
  }

  .rus-price-stamp strong {
    font-size: 1.35rem;
    line-height: 1.25;
    white-space: nowrap;
  }

  .rus-sp-br {
    display: none;
  }
  .rus-final .rus-fine {
    margin-top: 10px !important;
  }
}

@media (max-width:768px) {
  .rus-main {
    font-size:16px
  }
  .rus-wrap {
    width:min(100% - 28px,1120px)
  }
  .rus-main nav a:not(.rus-mini-cta) {
    display:none
  }
  .rus-topbar {
    font-size:.74rem
  }
  .rus-header-inner {
    height:58px
  }
  .rus-brand span:last-child {
    display:none
  }
  .rus-mini-cta {
    font-size:.82rem;
    padding:.55rem .75rem
  }
  .rus-hero-grid {
    grid-template-columns:1fr;
    min-height:auto;
    padding:34px 0 42px
  }
  .rus-hero h1 {
    font-size: clamp(2.7rem, 12.2vw, 4rem);
    font-weight: 900;
    line-height: 1.04;
    letter-spacing: -0.075em;
    margin-bottom: 20px !important;
  }
  .rus-visual {
    min-height:285px
  }
  .rus-visual img {
    width: min(470px, 100%);
  }
  .rus-visual > img {
    aspect-ratio: 507 / 402;
    object-fit: contain;
  }	
  .rus-price-stamp {
    width:102px;
   font-size:.75rem;
   top:-8%;
   right:0;
  }
  .rus-price-stamp strong {
    font-size:1.2rem
  }
  .rus-stock-band {
    position:relative;
    margin-top:-18px
  }
  .rus-actions {
    display:grid
  }
  .rus-btn {
    width:100%
  }
  .rus-main section {
    padding:46px 0
  }
  .rus-trust-grid {
    grid-template-columns:1fr 1fr
  }
  .rus-trust-item {
    font-size:.8rem;
    padding:18px 8px
  }
  .rus-trust-item:last-child {
    grid-column:1/-1
  }
  .rus-compare-table {
    overflow-x:auto
  }
  .rus-compare-row {
    min-width:650px
  }
  .rus-compare-row>div {
    padding:16px
  }
  .rus-value-grid {
    grid-template-columns:1fr
  }
  .rus-warranty {
    grid-template-columns:1fr;
    text-align:center
  }
  .rus-six {
    margin:auto
  }
  .rus-type-grid,.rus-use-panel,.rus-report-grid,.rus-final-grid {
    grid-template-columns:1fr
  }
  .rus-type-card {
    grid-template-columns:1fr;
    min-height:0
  }
  .rus-type-copy {
    padding:24px 22px 10px
  }
  .rus-type-art {
    min-height:190px;
    padding:12px 22px 22px
  }
  .rus-use-tabs {
    display:grid;
    grid-template-columns:1fr 1fr
  }
  .rus-use-panel {
    padding:24px
  }
  .rus-specs {
    grid-template-columns:1fr
  }
  .rus-advisor {
    border-left:0;
    border-top:1px solid var(--rus-line);
    padding:25px 0 0
  }
  .rus-advisor {
    border-left:0;
    border-top:1px solid var(--rus-line);
    padding:25px 0 0
  }

/* ここに追加 */
.rus-advisor .rus-btn {
  margin-top:24px;
}

.rus-report-grid {
  gap:28px
}
  .rus-report-grid {
    gap:28px
  }
  .rus-report-card {
    padding:20px
  }
  .rus-final-copy {
    padding: 48px 0;
  }

  .rus-final-art {
    display: none;
  }
  .rus-sp-br {
    display: block;
  }
/* スマホだけ：格子の上下に白余白 */
.rus-trust-strip {
  padding-top: 30px;
  padding-bottom: 30px;
}
	
  .rus-trust-grid {
    grid-template-columns: 1fr 1fr;
    border-top: 1px solid var(--rus-line);
    border-left: 1px solid var(--rus-line);
}

  .rus-trust-item {
    border-right: 1px solid var(--rus-line);
    border-bottom: 1px solid var(--rus-line);
}

/* 既存の左線指定を打ち消す */
  .rus-trust-item:first-child {
    border-left: 0;
}

/* 最後の「6カ月保証」は2列分 */
  .rus-trust-item:last-child {
    grid-column: 1 / -1;
}	

/* PC：CTAボタンと注意書きの間隔 */
  .rus-final .rus-fine {
    margin-top: 32px !important;
}
	
}

/* ===== 見出しと本文の間隔 ===== */
  .rus-section-title {
    margin-bottom: 16px !important;
  }

  .rus-section-lead {
    line-height: 1.9;
    margin-bottom: 28px !important;
  }
  /* ===== 最終CTA 高さ調整 ===== */
  .rus-main section.rus-final {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .rus-final-grid {
    min-height: 320px;
  }

  .rus-final-copy {
    padding: 25px 0;
  }

  .rus-final-art img {
  width: auto;
  height: auto !important;
  max-width: 100%;
  max-height: 360px;
  object-fit: contain;
  margin-left: auto;
  }

/* ===== デスクトップ画像の重なり調整 ===== */
  .rus-desktop-art {
  gap: 10px;
  }

  .rus-desktop-art img:first-child {
  width: 62%;
  margin-right: -6%;
  }

  .rus-desktop-art img:last-child {
  width: 34%;
  }

/* ===== FINAL FIXES ===== */
/* PC / SP 改行タグ */
.rus-pc-br { display:block; }
.rus-sp-br { display:none; }

/* 見出し：既存デザインに合わせて太さを統一 */
.rus-section-title,
.rus-hero h1,
.rus-hero h1 em,
.rus-final h2,
.rus-final h2 span {
  font-weight:900 !important;
}
.rus-price-stamp {
    width: 150px !important;
    height: 150px !important;
    aspect-ratio: auto !important;

    top: -4% !important;
    right: -8% !important;
    left: auto !important;

    padding: 18px 12px !important;

    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;

    font-size: .82rem !important;
    line-height: 1.25 !important;
    text-align: center !important;

    overflow: hidden !important;
  }

  .rus-price-stamp strong {
    display: block !important;
    font-size: 1.18rem !important;
    line-height: 1.2 !important;
    white-space: nowrap !important;
    margin-top: 6px !important;
  }


@media (max-width:768px) {
  .rus-pc-br { display:none !important; }
  .rus-sp-br { display:block !important; }

  /* スマホだけ：格子の上下に白余白 */
  .rus-main .rus-trust-strip {
    padding-top:30px !important;
    padding-bottom:30px !important;
  }

  /* スマホでも各セクションの大見出しを太字に保つ */
  .rus-section-title,
  .rus-hero h1,
  .rus-hero h1 em,
  .rus-final h2,
  .rus-final h2 span {
    font-weight:900 !important;
  }
}

/* ==================================================
   見出し
   ================================================== */

.rus-hero h1,
.rus-hero h1 .rus-hero-line,
.rus-hero h1 em {
  font-weight: 900 !important;
}

.rus-hero h1 {
  margin-bottom: 20px !important;
}

.rus-section-title,
.rus-section-title .rus-highlight {
  font-weight: 900 !important;
}

.rus-type-card h3,
.rus-use-panel h3,
.rus-advisor h3,
.rus-value-card h3 {
  font-weight: 900 !important;
}

@media (max-width: 768px) {

  .rus-hero h1,
  .rus-hero h1 .rus-hero-line,
  .rus-hero h1 em,
  .rus-section-title,
  .rus-section-title .rus-highlight,
  .rus-type-card h3,
  .rus-use-panel h3,
  .rus-advisor h3,
  .rus-value-card h3 {
    font-weight: 900 !important;
  }

  .rus-hero h1 {
    margin-bottom: 20px !important;
  }
}

/* ===== iPhone / mobile：見出しの太さをPCと統一 ===== */
@media (max-width: 768px) {
  .rus-main h1,
  .rus-main h2,
  .rus-main h3,
  .rus-section-title,
  .rus-section-title .rus-highlight,
  .rus-hero h1,
  .rus-hero h1 .rus-hero-line,
  .rus-hero h1 em,
  .rus-type-card h3,
  .rus-value-card h3,
  .rus-use-panel h3,
  .rus-advisor h3,
  .rus-final h2,
  .rus-final h2 span,
  .rus-trust-item,
  .rus-btn {
    font-family: "Noto Sans JP", "Yu Gothic", Meiryo, sans-serif !important;
    font-weight: 900 !important;
  }
}
