/* 現行デザインを保ち、本文はJavaScriptがなくても読める初期状態にする。 */
body.aru-seo-recovery-page .aru-home .aru-reveal,
body.aru-seo-recovery-page .aru-home .aru-heading-enter { opacity:1; visibility:visible; transform:none; }
body.aru-seo-recovery-page .aru-home [hidden] { display:none!important; }
body.aru-seo-recovery-page .aru-home h1 .aru-seo-location { display:block!important; font:400 clamp(11px,1.05vw,15px)/1.8 "Noto Sans JP",sans-serif!important; letter-spacing:.08em!important; margin-bottom:18px; white-space:normal; }
body.aru-seo-recovery-page .aru-concept-brand { font-family:var(--aru-font-serif,serif); font-size:clamp(23px,2.6vw,38px); line-height:1.9; letter-spacing:.08em; margin:0 0 28px; }
body.aru-seo-recovery-page .aru-concept-brand span { display:block; }
.aru-seo-intro,.aru-seo-lead { line-height:2; max-width:900px; }
.aru-seo-intro { margin-top:36px; }
.aru-seo-note { margin-top:32px; line-height:2; }
.aru-seo-note h4 { font-size:17px; font-weight:500; margin:0 0 12px; }
.aru-seo-note p { font-size:14px; }
.aru-recovery-panel-source { display:none!important; }
.aru-benefit-panel { margin-bottom:24px; }
body.aru-seo-recovery-page .aru-benefit-tabs button { white-space:normal; }
.aru-seo-reviews,.aru-seo-columns,.aru-seo-news { padding-top:80px; padding-bottom:80px; }
.aru-seo-reviews h2,.aru-seo-columns h2,.aru-seo-news h2 { font-size:clamp(24px,3vw,38px); line-height:1.6; margin-bottom:24px; }
.aru-seo-reviews h3 { margin:40px 0 20px; font-size:20px; }
.aru-seo-report-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:18px; }
.aru-seo-report-grid a { display:block; color:inherit; text-decoration:none; font-size:12px; line-height:1.7; }
.aru-seo-report-grid img { display:block; width:100%; height:auto; aspect-ratio:4/5; object-fit:cover; margin-bottom:12px; }
.aru-seo-google-reviews { overflow:hidden; }
.aru-seo-steps { grid-column:1/-1; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:28px; margin:42px 0 0; padding:0; list-style:none; counter-reset:steps; }
.aru-seo-steps li { counter-increment:steps; padding-top:18px; border-top:1px solid #c9bd9f; }
.aru-seo-steps li:before { content:"0" counter(steps); display:block; color:#9c8752; margin-bottom:14px; font-family:serif; font-size:28px; }
.aru-seo-steps h3 { font-size:18px; line-height:1.8; margin-bottom:12px; }
.aru-seo-steps p { font-size:14px; line-height:1.9; }
.aru-seo-faq-group { margin:32px 0; }
.aru-seo-faq-group h3 { font-size:20px; margin-bottom:18px; }
.aru-seo-post-list { margin:20px 0 30px; }
.aru-seo-post-list>a { display:grid; grid-template-columns:110px 1fr 24px; gap:20px; padding:24px 0; border-bottom:1px solid #dbd4c5; color:inherit; text-decoration:none; line-height:1.7; }
.aru-seo-post-list time { color:#807553; font-size:13px; }
body.aru-seo-recovery-page .aru-seo-final-heading { font-family:serif; font-size:clamp(23px,3.4vw,46px); line-height:1.8; margin-bottom:28px; }
body.aru-seo-recovery-page #comparison { width:100%; margin:0; }
body.aru-seo-recovery-page #comfort>h3 { font-size:clamp(22px,2.8vw,34px); font-weight:400; }
body.aru-seo-recovery-page .aru-home a:focus-visible,body.aru-seo-recovery-page .aru-home button:focus-visible { outline:2px solid #79673d; outline-offset:5px; }
@media(max-width:767px) {
 .aru-seo-report-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:22px 14px; }
 .aru-seo-steps { grid-template-columns:1fr; gap:22px; margin-top:28px; }
 .aru-seo-steps li { padding-left:46px; position:relative; }
 .aru-seo-steps li:before { position:absolute; left:0; top:14px; }
 .aru-seo-post-list>a { grid-template-columns:1fr 20px; gap:8px; }
 .aru-seo-post-list time { grid-column:1/-1; }
 .aru-seo-reviews,.aru-seo-columns,.aru-seo-news { padding-top:52px; padding-bottom:52px; }
 body.aru-seo-recovery-page .aru-concept-brand { font-size:22px; }
 body.aru-seo-recovery-page .aru-benefit-tabs button { font-size:11px; }
 .aru-seo-note { margin-top:26px; }
}
@media(prefers-reduced-motion:reduce) { .aru-seo-recovery-page *, .aru-seo-recovery-page *::before,.aru-seo-recovery-page *::after { scroll-behavior:auto!important; animation-duration:.001ms!important; transition-duration:.001ms!important; } }

body.aru-seo-recovery-page .aru-pv-toggle { display:block; position:absolute; bottom:10px; right:24px; z-index:5; font:11px/1.5 sans-serif; color:#5b503b; background:rgba(250,247,239,.8); border:1px solid #c7bca4; border-radius:20px; padding:6px 12px; cursor:pointer; }
/* 動画JSが動く前・停止中も、現在の丸いマスク内にポスターを描く。 */
body.aru-seo-recovery-page .aru-thread-scene { --aru-pv-edge:100vw; }
body.aru-seo-recovery-page.aru-pc-unified.aru-desktop-editorial .aru-thread-hero .aru-c-hero__image>img { visibility:visible!important; }
body.aru-seo-recovery-page .aru-thread-hero .aru-c-hero__image:not(.aru-video-playing)>img { opacity:1!important; }
@media(min-width:901px) { body.aru-seo-recovery-page .aru-thread-scene { --aru-pv-edge:min(55vw,calc(100svh - 110px)); } }
/* PC完成DOM内のボタン位置を保ち、SPでは余白を二重にしない。 */
@media(max-width:899px) { body.aru-seo-recovery-page .aru-thread-bottom { padding-left:0!important; padding-right:0!important; } }
@media(max-width:899px) { body.aru-seo-recovery-page.aru-journey .aru-thread-hero .aru-c-hero__copy { transform:none!important; } }
body.aru-seo-recovery-page .aru-pv-toggle { top:12px; bottom:auto; }

/* 見出しから説明ラベルへ変えても、既存の文字と余白を維持する。 */
.aru-home :where(.aru-label-h3) { margin:0; padding:0!important; border:0!important; background:transparent!important; color:var(--aru-ink); font-family:"Shippori Mincho","Yu Mincho",serif; font-weight:500; letter-spacing:.02em; line-height:1.65; word-break:keep-all; overflow-wrap:break-word; }
.aru-official-review .aru-home .aru-label-h3.aru-type-subsection-title { font-family:var(--aru-type-mincho)!important; font-size:var(--aru-type-subsection-size)!important; font-weight:500!important; line-height:1.65!important; letter-spacing:.04em!important; }
.aru-official-review .aru-home .aru-label-h3.aru-type-card-title { font-family:var(--aru-type-mincho)!important; font-size:var(--aru-type-card-size)!important; font-weight:500!important; line-height:1.6!important; letter-spacing:.04em!important; }
.aru-ribbon-demo .aru-ribbon-card .aru-label-h3 { margin:18px 0 6px; }
.aru-c-karte-return .aru-label-h3 { margin:0 0 16px; }
.aru-home .aru-label-h4 { margin:0; border:0!important; background:transparent!important; box-shadow:none!important; word-break:normal; overflow-wrap:break-word; }
.aru-official-review .aru-home .aru-label-h4.aru-type-functional-title { font-family:var(--aru-type-gothic)!important; font-size:15px!important; font-weight:500!important; line-height:1.5!important; letter-spacing:.025em!important; }
.aru-review-plan .aru-label-h4 { padding:0 0 0 16px; color:var(--aru-ink); }
.aru-review-plan .aru-label-h4 strong { font:34px/1.3 Georgia,serif; padding-inline:5px; }
.aru-c-other-fees .aru-label-h4 { padding:0; color:var(--aru-copy); }
@media(max-width:900px) {
 .aru-home .aru-label-h3 { word-break:normal; }
 .aru-ribbon-demo .aru-ribbon-card .aru-label-h3 { margin-top:14px; }
 .aru-c-other-fees .aru-label-h4 { grid-column:1; grid-row:1; }
}
@media(min-width:901px) {
 .aru-desktop-editorial.aru-pc-refinement .aru-ribbon-card .aru-label-h3 { margin:16px 0 8px!important; }
 .aru-pc-unified.aru-desktop-editorial #machines .aru-number-other .aru-label-h3 { font-size:16px!important; }
 .aru-pc-unified.aru-desktop-editorial #machines .aru-number-own .aru-label-h3 { font-size:22px!important; }
 .aru-pc-unified.aru-desktop-editorial .aru-official-report .aru-label-h3 { font-size:28px!important; margin-bottom:12px; }
}
