/* Pricing page: compare services at desktop widths; retain all commercial terms. */
.pricing-page .pricing-hero{padding:65px 0;background:radial-gradient(ellipse at 85% 25%,#e8e2d3,var(--cream) 65%)}.pricing-hero-layout{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.pricing-intro{max-width:580px}.pricing-page .pricing-hero h1{font-size:clamp(2.6rem,5vw,4.4rem);margin:20px 0}.pricing-page .pricing-lead{font-size:clamp(1.2rem,2vw,1.7rem);line-height:1.9}.pricing-page .pricing-intro .detail-lead{font-size:.95rem;line-height:2;margin-top:20px}.pricing-page .pricing-chooser{max-width:none;margin:0;padding:25px;background:#fcfaf4;box-shadow:5px 7px 0 #d8ccb2,0 20px 35px #5b4a3010;transform:rotate(1deg);border-radius:12px}.pricing-page .pricing-chooser>p{font-family:var(--display);font-size:1.25rem;margin:0 0 15px}.pricing-page .pricing-chooser a{display:grid;grid-template-columns:32px 1fr auto;gap:12px;min-height:66px;margin-top:12px;padding:12px 16px;transition:transform .2s,background .2s}.pricing-page .pricing-chooser a:hover{transform:translateX(4px);background:#f2ecdf}.pricing-chooser svg{width:28px;height:28px;fill:none;stroke:var(--red);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}.pricing-page .pricing-chooser a span{font-size:.8rem}.pricing-page .pricing-chooser a b{font-size:.85rem}.pricing-page .pricing-cards{max-width:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;align-items:stretch;padding-bottom:12px}.pricing-page #make .pricing-cards{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}.pricing-page .pricing-card{padding:28px;box-shadow:4px 6px 0 #d5c8ad,0 16px 26px #53432b0b;background:linear-gradient(145deg,#fffefa,#f9f6ee);border-radius:12px;border-top:3px solid #b9a582;min-width:0}.pricing-page .pricing-card.is-featured{border:1px solid var(--red);border-top:3px solid var(--red);background:linear-gradient(145deg,#f9f5e9,#eee8d9)}.pricing-page .pricing-card h3{font-family:var(--display);font-size:1.6rem}.pricing-page .pricing-catch{min-height:3.6em;line-height:1.8}.pricing-page .pricing-amount{padding:16px 0;border-block:1px solid var(--line);margin:16px 0 22px}.pricing-page .pricing-amount strong{font-size:clamp(2rem,3vw,2.7rem);color:var(--red)}.pricing-page .pricing-card ul{font-size:.85rem}.pricing-page .pricing-card li+li{margin-top:10px}.pricing-object{height:110px;position:relative;display:flex;align-items:center;justify-content:center;margin-bottom:24px;border-radius:8px;background:#ebe5d7;overflow:hidden}.pricing-object svg{width:64px;height:64px;fill:none;stroke:#8b6c32;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(3px 4px 0 #d1c4a5);transform:rotate(-7deg);z-index:1}.pricing-object:before,.pricing-object:after{content:'';position:absolute;width:62px;height:70px;background:#fffdf5;border:1px solid #cabb9a;box-shadow:3px 5px 0 #cdbf9e;border-radius:4px;transform:rotate(10deg);left:calc(50% - 31px);top:20px}.pricing-object:after{transform:rotate(-8deg);left:calc(50% - 47px);opacity:.6}.pricing-object-personal,.pricing-object-team{background:#e4e9dc}.pricing-object-personal svg,.pricing-object-team svg{stroke:#647352}.pricing-object-personal:before{width:95px;left:calc(50% - 47px);transform:rotate(4deg)}.pricing-object-team:before{left:calc(50% - 65px);transform:rotate(-12deg)}.pricing-object-team:after{left:calc(50% + 4px);transform:rotate(12deg)}.pricing-object-line{background:#e7ebdf}.pricing-object-line:before{width:48px;left:calc(50% - 24px);border-radius:9px;transform:rotate(8deg)}.pricing-object-hp:before{width:106px;left:calc(50% - 53px);transform:rotate(4deg)}.pricing-page .pricing-plans{gap:18px}.pricing-page .pricing-plans>div{background:#fffdf8;padding:20px 16px}.pricing-page .pricing-plans .pricing-amount strong{font-size:1.9rem}.pricing-page .pricing-promise{max-width:none;grid-template-columns:1fr 1fr;gap:24px}.pricing-page .pricing-promise li{padding:26px;border:1px solid var(--line);border-radius:8px;background:var(--cream)}.pricing-page .pricing-promise b{border-bottom:2px solid var(--red);padding-bottom:7px}.pricing-page .pricing-notes ul{max-width:950px}.pricing-page .pricing-notes .inner{border-top:1px solid var(--line);padding-top:28px}.pricing-page .pricing-card .text-link{font-size:.82rem;line-height:1.9}.pricing-page .pricing-badge{z-index:2}.pricing-page .pricing-chooser a:focus-visible{outline:3px solid var(--red);outline-offset:3px}@media(max-width:1050px){.pricing-hero-layout{gap:32px}.pricing-page .pricing-card{padding:24px 20px}.pricing-page .pricing-cards{gap:20px}.pricing-page .pricing-chooser a{grid-template-columns:26px 1fr}.pricing-page .pricing-chooser a b{grid-column:2}.pricing-page .pricing-chooser svg{grid-row:span 2}.pricing-page .pricing-plans{grid-template-columns:1fr}}@media(max-width:820px){.pricing-hero-layout{grid-template-columns:1fr;gap:30px}.pricing-page .pricing-hero{padding:40px 0 48px}.pricing-page .pricing-chooser{transform:none;padding:20px}.pricing-page .pricing-chooser a{grid-template-columns:28px 1fr auto}.pricing-page .pricing-chooser a b{grid-column:auto}.pricing-page .pricing-chooser svg{grid-row:auto}.pricing-page .pricing-cards,.pricing-page #make .pricing-cards{grid-template-columns:1fr;gap:30px}.pricing-page .pricing-catch{min-height:0}.pricing-page .pricing-promise{grid-template-columns:1fr}.pricing-page .pricing-amount strong{font-size:2.5rem}.pricing-page .pricing-card{padding:26px 22px}.pricing-page .pricing-chooser a{padding:12px 10px;gap:8px}.pricing-page .pricing-chooser a span{font-size:.72rem}.pricing-page .pricing-chooser a b{font-size:.75rem}.pricing-page .pricing-promise li{padding:22px}.pricing-page .pricing-hero h1{font-size:3rem}.pricing-page .pricing-intro .detail-lead{font-size:.9rem}}@media(prefers-reduced-motion:reduce){.pricing-page .pricing-chooser a{transition:none}}

/* Keep the contact steps and action on separate rows. */
.pricing-page .pricing-contact .contact-inner{display:flex;flex-direction:column;align-items:center;gap:24px}.pricing-page .pricing-contact h2{margin:0}.pricing-page .pricing-steps{display:block;margin:0;max-width:100%;padding-left:1.5em}.pricing-page .pricing-contact .contact-button{display:block;margin:0;max-width:100%;flex-shrink:0}.pricing-page .pricing-contact .detail-consultation-note{margin:0;max-width:900px}.pricing-page .pricing-card{scroll-margin-top:calc(var(--pricing-header-height,100px) + 24px)}.pricing-page .pricing-card.is-selected{outline:3px solid #237d85;outline-offset:6px;box-shadow:4px 6px 0 #d5c8ad,0 0 28px #237d8540}.pricing-page .pricing-card.is-selected:after{content:'✓ 選択したプラン';position:absolute;right:14px;top:12px;background:#237d85;color:#ffffff;font-size:.7rem;padding:5px 9px;border:1px solid #1b6269;border-radius:5px}.pricing-page .pricing-card.is-selected{animation:pricing-select-glow 1.2s ease-out}.pricing-card:focus-visible{outline:3px solid #237d85;outline-offset:6px}@keyframes pricing-select-glow{from{box-shadow:0 0 0 12px #237d8540}to{box-shadow:4px 6px 0 #d5c8ad,0 0 28px #237d8540}}@media(prefers-reduced-motion:reduce){.pricing-page .pricing-card.is-selected{animation:none}}

/* Persistent, multi-cue destination highlight: surface, heavy edge and full-width label. */
.pricing-page .pricing-card.is-selected{outline:5px solid #237d85;outline-offset:3px;background:#eaf5f2;border-color:#237d85;padding-top:76px;box-shadow:5px 8px 0 #a8c8bf,0 12px 28px #237d8526;animation:pricing-select-arrive .55s ease-out}.pricing-page .pricing-card.is-selected:after{content:'✓ 選択したプランを表示中';top:0;left:0;right:0;border:0;border-radius:9px 9px 0 0;background:#237d85;color:#fff;min-height:42px;display:flex;align-items:center;justify-content:center;padding:8px 12px;font-size:.95rem;font-weight:700;letter-spacing:.04em}.pricing-page .pricing-card.is-selected .pricing-object{background:#d0e8e0}.pricing-page .pricing-card.is-selected .pricing-object svg{stroke:#17616a}.pricing-page .pricing-card.is-selected .pricing-amount strong{color:#17616a}.pricing-page .pricing-card.is-selected>.pricing-badge{top:50px;left:auto;right:14px;font-size:.65rem}.pricing-page .pricing-card.is-selected:focus{outline:5px solid #237d85;outline-offset:3px}@keyframes pricing-select-arrive{from{box-shadow:0 0 0 14px #237d8535}to{box-shadow:5px 8px 0 #a8c8bf,0 12px 28px #237d8526}}@media(prefers-reduced-motion:reduce){.pricing-page .pricing-card.is-selected{animation:none}}@media(max-width:820px){.pricing-page .pricing-card.is-selected:after{font-size:.85rem}.pricing-page .pricing-card.is-selected{padding-top:76px}}
