/* Sales LP only. Common header, footer and other page styles remain untouched. */
.sp-page-sales #sp-main.sp-main{--s32-navy:#082b46;--s32-gold:#ac864b;--s32-orange:#c65708;background:#fcfaf5;color:var(--s32-navy)}
.sp-page-sales #sp-main.sp-main .sp-wrap{max-width:1280px}
.sp-page-sales #sp-main.sp-main .s32-section{padding:44px 0}
.sp-page-sales #sp-main.sp-main [class^="s32-"]{box-sizing:border-box}
.sp-page-sales #sp-main.sp-main .s32-heading{text-align:center;margin:0 0 25px}
.sp-page-sales #sp-main.sp-main .s32-heading h2{font-size:27px;line-height:1.5;margin:0;font-family:"Noto Serif JP","Yu Mincho",serif;background:none;border:0;padding:0}
.sp-page-sales #sp-main.sp-main .s32-heading h2:before,.sp-page-sales #sp-main.sp-main .s32-heading h2:after{content:"";display:inline-block;width:48px;height:1px;background:var(--s32-gold);vertical-align:middle;margin:0 20px}
.sp-page-sales #sp-main.sp-main .s32-heading p,.sp-page-sales #sp-main.sp-main .s32-eye{font-size:11px;letter-spacing:.19em;color:var(--s32-gold);font-weight:600;margin:8px 0 0}
.sp-page-sales #sp-main.sp-main .s32-center{text-align:center}
.sp-page-sales #sp-main.sp-main .s32-muted,.sp-page-sales #sp-main.sp-main .s32-product-note{font-size:12px;color:#596777;line-height:1.9}
.sp-page-sales #sp-main.sp-main .s32-button{display:flex;align-items:center;justify-content:center;gap:16px;min-height:54px;padding:13px 22px;border:1px solid #bd5107;border-radius:32px;background:linear-gradient(110deg,#d96b12,#bd4c04);box-shadow:0 4px 12px #45260016;color:#fff;text-decoration:none;font-size:14px;font-weight:700;line-height:1.6;text-align:center;transition:background .2s,box-shadow .2s}
.sp-page-sales #sp-main.sp-main .s32-button:hover{background:#a94405;box-shadow:0 5px 16px #45260030;color:#fff}
.sp-page-sales #sp-main.sp-main a:focus-visible,.sp-page-sales #sp-main.sp-main summary:focus-visible{outline:3px solid #db9f41;outline-offset:4px}
.sp-page-sales #sp-main.sp-main .s32-button--outline{background:transparent;border-color:#c3d0d8;box-shadow:none;color:#fff}
.sp-page-sales #sp-main.sp-main .s32-button--outline:hover{background:#ffffff16}
.sp-page-sales #sp-main.sp-main .s32-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin:26px 0 18px}
.sp-page-sales #sp-main.sp-main .s32-hero{background:radial-gradient(ellipse at 10% 0,#154564,#061e33 80%);color:#fff}
.sp-page-sales #sp-main.sp-main .s32-hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:0;padding:0;max-width:1440px}
.sp-page-sales #sp-main.sp-main .s32-hero-copy{padding:46px 40px 35px  max(30px,calc((100vw - 1280px)/2));min-width:0}
.sp-page-sales #sp-main.sp-main .s32-hero h1{color:#fff;font-family:"Noto Serif JP","Yu Mincho",serif;font-size:clamp(28px,3vw,44px);letter-spacing:.04em;line-height:1.5;margin:18px 0;border:0;padding:0;background:none;white-space:nowrap}
.sp-page-sales #sp-main.sp-main .s32-lead{font-family:"Noto Serif JP","Yu Mincho",serif;font-size:25px;line-height:1.7;color:#f3e5c8;margin:0 0 18px}
.sp-page-sales #sp-main.sp-main .s32-hero-copy>p:not(.s32-eye):not(.s32-lead){font-size:13px;line-height:2;color:#e1e7ec}
.sp-page-sales #sp-main.sp-main .s32-hero-photo{margin:0;min-height:430px;position:relative;overflow:hidden;background:#ede6d6}
.sp-page-sales #sp-main.sp-main .s32-hero-photo img{position:absolute;width:100%;height:100%;object-fit:cover;inset:0;display:block}
.sp-page-sales #sp-main.sp-main .s32-hero-placeholder{height:100%;padding:32px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;background:radial-gradient(ellipse at 30% 20%,#fffdf6,#e6dcc9);color:var(--s32-navy)}
.sp-page-sales #sp-main.sp-main .s32-piano-art{width:180px;max-width:70%;height:auto;color:#a18151}
.sp-page-sales #sp-main.sp-main .s32-hero-placeholder .s32-piano-art{width:250px;margin:20px 0 0}
.sp-page-sales #sp-main.sp-main .s32-hero-placeholder p{font-family:"Noto Serif JP","Yu Mincho",serif;line-height:1.9;font-size:22px;margin:10px 0}
.sp-page-sales #sp-main.sp-main .s32-hero-placeholder small{font-size:11px;color:#6b6459}
.sp-page-sales #sp-main.sp-main .s32-phone{color:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:12px}
.sp-page-sales #sp-main.sp-main .s32-phone strong{font-size:25px;letter-spacing:.03em}
.sp-page-sales #sp-main.sp-main .s32-phone span{font-size:12px}
.sp-page-sales #sp-main.sp-main .s32-concern-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.sp-page-sales #sp-main.sp-main .s32-concern{background:#fff;border:1px solid #e8e2d6;border-radius:6px;text-decoration:none;color:inherit;padding:20px;text-align:center;box-shadow:0 5px 20px #55451d04}
.sp-page-sales #sp-main.sp-main .s32-concern:hover{border-color:var(--s32-gold)}
.sp-page-sales #sp-main.sp-main .s32-concern>span{display:block;font-size:23px;color:var(--s32-gold);font-family:Georgia,serif;margin-bottom:8px}
.sp-page-sales #sp-main.sp-main .s32-concern h3{font-size:16px;margin:0 0 9px;border:0;padding:0;background:none}
.sp-page-sales #sp-main.sp-main .s32-concern p{font-size:12px;margin:0;line-height:1.9;color:#536374}
.sp-page-sales #sp-main.sp-main .s32-offers{padding-top:18px}
.sp-page-sales #sp-main.sp-main .s32-offer-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.sp-page-sales #sp-main.sp-main .s32-offer{background:#fff;border:1px solid #e8e2d6;border-left:3px solid var(--s32-gold);padding:28px 32px;display:flex;flex-direction:column;scroll-margin-top:100px}
.sp-page-sales #sp-main.sp-main .s32-offer h2{font:28px/1.6 "Noto Serif JP","Yu Mincho",serif;margin:8px 0 14px;border:0;padding:0;background:none}
.sp-page-sales #sp-main.sp-main .s32-offer>p:not(.s32-eye){font-size:14px;line-height:1.9;margin:0 0 20px}
.sp-page-sales #sp-main.sp-main .s32-offer h3{font-size:13px;border:0;padding:0;margin:0 0 10px;background:none}
.sp-page-sales #sp-main.sp-main .s32-offer ul{list-style:none;margin:0 0 24px;padding:0;font-size:13px;line-height:1.9}
.sp-page-sales #sp-main.sp-main .s32-offer li{padding:4px 0 4px 22px;position:relative}
.sp-page-sales #sp-main.sp-main .s32-offer li:before{content:"✓";position:absolute;left:0;color:var(--s32-gold)}
.sp-page-sales #sp-main.sp-main .s32-offer .s32-button{margin-top:auto}
.sp-page-sales #sp-main.sp-main .s32-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:24px}
.sp-page-sales #sp-main.sp-main .s32-product{min-width:0;background:#fff;border:1px solid #e6e1d7;border-radius:7px;overflow:hidden;box-shadow:0 5px 22px #55451d06}
.sp-page-sales #sp-main.sp-main .s32-product-photo{aspect-ratio:4/3;overflow:hidden;margin:5px 5px 0;border-radius:4px}
.sp-page-sales #sp-main.sp-main .s32-product-photo img{display:block;width:100%;height:100%;object-fit:cover}
.sp-page-sales #sp-main.sp-main .s32-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;background:linear-gradient(135deg,#f6f3ec,#e9e3d8);font-size:12px;letter-spacing:.12em;color:#6e6558;padding:16px}
.sp-page-sales #sp-main.sp-main .s32-placeholder .s32-piano-art{width:125px;max-height:100px;margin-bottom:5px}
.sp-page-sales #sp-main.sp-main .s32-product-body{padding:20px 16px;display:flex;flex-direction:column;height:calc(100% - 0px);overflow-wrap:anywhere}
.sp-page-sales #sp-main.sp-main .s32-product{display:flex;flex-direction:column}
.sp-page-sales #sp-main.sp-main .s32-product-photo{flex:none}
.sp-page-sales #sp-main.sp-main .s32-product-body{flex:1;height:auto}
.sp-page-sales #sp-main.sp-main .s32-product h3{font-size:18px;line-height:1.5;margin:0 0 12px;border:0;padding:0;background:none}
.sp-page-sales #sp-main.sp-main .s32-product-summary{font-size:12px;background:#f4f2ed;padding:5px 8px;margin:0 0 12px}
.sp-page-sales #sp-main.sp-main .s32-product-price{font-size:16px;font-weight:700;color:#a94710;line-height:1.6;margin:0 0 10px}
.sp-page-sales #sp-main.sp-main .s32-product-comment{font-size:12px;line-height:1.9;margin:0 0 18px;color:#536374}
.sp-page-sales #sp-main.sp-main .s32-product-button{font-size:12px;padding:12px 10px;min-height:46px;gap:8px;margin-top:auto}
.sp-page-sales #sp-main.sp-main .s32-product-note{margin:20px 0 0;text-align:center;font-size:11px}
.sp-page-sales #sp-main.sp-main .s32-empty{text-align:center;padding:35px;border:1px solid #e6e1d7;background:white}
.sp-page-sales #sp-main.sp-main .s32-empty .s32-button{max-width:420px;margin:20px auto 0}
.sp-page-sales #sp-main.sp-main .s32-support{background:#edf3f6}
.sp-page-sales #sp-main.sp-main .s32-support>.sp-wrap>.s32-center{font-size:13px;line-height:1.9}
.sp-page-sales #sp-main.sp-main .s32-related{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:25px}
.sp-page-sales #sp-main.sp-main .s32-related>a{display:flex;align-items:center;gap:16px;padding:22px 18px;background:white;border:1px solid #e2e8ec;color:inherit;text-decoration:none}
.sp-page-sales #sp-main.sp-main .s32-related>a:hover{border-color:var(--s32-gold)}
.sp-page-sales #sp-main.sp-main .s32-related h3{font-size:15px;margin:0 0 5px;border:0;padding:0;background:none}
.sp-page-sales #sp-main.sp-main .s32-related p{font-size:11px;line-height:1.8;margin:0}
.sp-page-sales #sp-main.sp-main .s32-related-mark{color:var(--s32-gold);font-size:28px}
.sp-page-sales #sp-main.sp-main .s32-flow{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:#e9e4da;list-style:none;padding:0;margin:0;border:1px solid #e9e4da}
.sp-page-sales #sp-main.sp-main .s32-flow li{padding:22px;background:#fff}
.sp-page-sales #sp-main.sp-main .s32-flow li>span{font-size:22px;font-family:Georgia,serif;color:var(--s32-gold)}
.sp-page-sales #sp-main.sp-main .s32-flow h3{font-size:14px;margin:10px 0 8px;border:0;padding:0;background:none}
.sp-page-sales #sp-main.sp-main .s32-flow p{font-size:12px;line-height:1.9;margin:0}
.sp-page-sales #sp-main.sp-main .s32-faq{padding-top:20px}
.sp-page-sales #sp-main.sp-main .s32-faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-items:start}
.sp-page-sales #sp-main.sp-main .s32-faq details{background:#fff;border:1px solid #e5e1d8;padding:0 18px}
.sp-page-sales #sp-main.sp-main .s32-faq summary{display:flex;gap:14px;align-items:center;padding:16px 0;cursor:pointer;list-style:none;font-size:13px;font-weight:600}
.sp-page-sales #sp-main.sp-main .s32-faq summary::-webkit-details-marker{display:none}
.sp-page-sales #sp-main.sp-main .s32-faq summary:before{content:"Q";font:20px Georgia,serif;color:var(--s32-gold)}
.sp-page-sales #sp-main.sp-main .s32-faq summary:after{content:"＋";margin-left:auto}
.sp-page-sales #sp-main.sp-main .s32-faq details[open] summary:after{content:"−"}
.sp-page-sales #sp-main.sp-main .s32-faq details p{font-size:13px;line-height:1.9;margin:0 0 18px;padding-top:15px;border-top:1px solid #eee8dc}
.sp-page-sales #sp-main.sp-main .s32-final{padding:52px 0;background:radial-gradient(ellipse at 50% 0,#16415e,#061f34);color:#fff;text-align:center}
.sp-page-sales #sp-main.sp-main .s32-final h2{font:32px/1.7 "Noto Serif JP","Yu Mincho",serif;border:0;padding:0;background:none;color:#fff;margin:16px 0}
.sp-page-sales #sp-main.sp-main .s32-final>.sp-wrap>p:not(.s32-eye){font-size:14px;line-height:2;color:#e1e7ec}
.sp-page-sales #sp-main.sp-main .s32-final .s32-actions{max-width:850px;margin:28px auto}
.sp-page-sales #sp-main.sp-main .s32-final .s32-button{min-height:65px;font-size:17px}
.sp-page-sales #sp-main.sp-main .s32-final-phone .s32-phone strong{font-size:32px}
.sp-page-sales #sp-main.sp-main .s32-final-phone p{font-size:12px;color:#d5dfe7}
.sp-page-sales #sp-main.sp-main .s32-final a:not(.s32-button){color:#fff}
@media(max-width:1100px){
.sp-page-sales #sp-main.sp-main .s32-hero-copy{padding:32px 24px}
.sp-page-sales #sp-main.sp-main .s32-hero h1{font-size:28px}
.sp-page-sales #sp-main.sp-main .s32-hero .s32-actions{grid-template-columns:1fr;max-width:350px}
.sp-page-sales #sp-main.sp-main .s32-products{grid-template-columns:repeat(2,minmax(0,1fr))}
.sp-page-sales #sp-main.sp-main .s32-concern-grid{gap:12px}
.sp-page-sales #sp-main.sp-main .s32-concern{padding:20px 12px}
.sp-page-sales #sp-main.sp-main .s32-concern h3{font-size:14px}
.sp-page-sales #sp-main.sp-main .s32-related>a{gap:10px;padding:16px 12px}
.sp-page-sales #sp-main.sp-main .s32-related-mark{display:none}
}
@media(max-width:800px){
.sp-page-sales #sp-main.sp-main .s32-heading h2{font-size:23px}
.sp-page-sales #sp-main.sp-main .s32-heading h2:before,.sp-page-sales #sp-main.sp-main .s32-heading h2:after{display:none}
.sp-page-sales #sp-main.sp-main .s32-hero-grid{grid-template-columns:1fr 1fr}
.sp-page-sales #sp-main.sp-main .s32-hero h1{font-size:24px;white-space:normal}
.sp-page-sales #sp-main.sp-main .s32-lead{font-size:22px}
.sp-page-sales #sp-main.sp-main .s32-concern-grid,.sp-page-sales #sp-main.sp-main .s32-flow{grid-template-columns:repeat(2,1fr)}
.sp-page-sales #sp-main.sp-main .s32-offer{padding:24px 20px}
.sp-page-sales #sp-main.sp-main .s32-offer h2{font-size:24px}
.sp-page-sales #sp-main.sp-main .s32-related{grid-template-columns:1fr}
.sp-page-sales #sp-main.sp-main .s32-related>a{padding:20px}
.sp-page-sales #sp-main.sp-main .s32-related>a>span:last-child{margin-left:auto}
.sp-page-sales #sp-main.sp-main .s32-final .s32-button{font-size:14px}
}
@media(max-width:600px){
.sp-page-sales #sp-main.sp-main .s32-section{padding:30px 0}
.sp-page-sales #sp-main.sp-main .s32-hero-grid{grid-template-columns:1fr}
.sp-page-sales #sp-main.sp-main .s32-hero-copy{padding:32px 22px 25px}
.sp-page-sales #sp-main.sp-main .s32-hero h1{font-size:28px;letter-spacing:0}
.sp-page-sales #sp-main.sp-main .s32-hero .s32-actions{max-width:none}
.sp-page-sales #sp-main.sp-main .s32-hero-photo{min-height:260px}
.sp-page-sales #sp-main.sp-main .s32-hero-placeholder{padding:24px}
.sp-page-sales #sp-main.sp-main .s32-hero-placeholder .s32-piano-art{width:130px;margin-top:12px}
.sp-page-sales #sp-main.sp-main .s32-hero-placeholder p{font-size:18px;line-height:1.6}
.sp-page-sales #sp-main.sp-main .s32-heading h2{font-size:22px}
.sp-page-sales #sp-main.sp-main .s32-offer-grid,.sp-page-sales #sp-main.sp-main .s32-products,.sp-page-sales #sp-main.sp-main .s32-faq-grid,.sp-page-sales #sp-main.sp-main .s32-actions{grid-template-columns:1fr}
.sp-page-sales #sp-main.sp-main .s32-concern h3{font-size:14px;line-height:1.7}
.sp-page-sales #sp-main.sp-main .s32-concern p{font-size:11px}
.sp-page-sales #sp-main.sp-main .s32-offer{padding:24px}
.sp-page-sales #sp-main.sp-main .s32-product-body{padding:22px}
.sp-page-sales #sp-main.sp-main .s32-placeholder .s32-piano-art{width:155px;max-height:130px}
.sp-page-sales #sp-main.sp-main .s32-product-button{font-size:14px;min-height:50px}
.sp-page-sales #sp-main.sp-main .s32-flow li{padding:18px 15px}
.sp-page-sales #sp-main.sp-main .s32-final{padding:36px 0}
.sp-page-sales #sp-main.sp-main .s32-final h2{font-size:27px}
.sp-page-sales #sp-main.sp-main .s32-final .s32-button{font-size:16px;min-height:60px}
.sp-page-sales #sp-main.sp-main .s32-final-phone .s32-phone{display:flex;flex-direction:column;gap:4px}
}
.sp-page-sales #sp-main.sp-main #sales-products,.sp-page-sales #sp-main.sp-main #sales-contact,.sp-page-sales #sp-main.sp-main #sales-support{scroll-margin-top:90px}

/* v0.40.5 買取カードだけ色温度を青灰寄りにして、販売と区別する（構造・サイズは共通） */
.sp-page-sales #sp-main.sp-main .s32-offer#buyback{background:#f3f6f8;border-color:#d5dee5;border-left-color:#3f5f7a}
.sp-page-sales #sp-main.sp-main .s32-offer#buyback .s32-eye,.sp-page-sales #sp-main.sp-main .s32-offer#buyback li:before{color:#3f5f7a}
.sp-page-sales #sp-main.sp-main .s32-offer#buyback .s32-button{border-color:#1f4666;background:linear-gradient(110deg,#2c5878,#1d4260);box-shadow:0 4px 12px #0a233a22}
.sp-page-sales #sp-main.sp-main .s32-offer#buyback .s32-button:hover{background:#163650}
