@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800&display=swap');
:root{--ink:#192b33;--deep:#102129;--muted:#52626a;--gold:#805b26;--gold-light:#e6c88e;--cream:#faf7f0;--line:#e4dfd5;--shadow:0 18px 45px rgba(25,43,51,.09)}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:108px}
body{margin:0;color:var(--ink);background:#fff;font-family:'Noto Sans JP',system-ui,-apple-system,BlinkMacSystemFont,sans-serif;font-size:16px;line-height:1.8;letter-spacing:.025em;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}a{color:inherit;text-decoration:none}a:focus-visible,summary:focus-visible{outline:3px solid #d89e45;outline-offset:4px}
.container{width:min(100% - 48px,1180px);margin-inline:auto}.skip-link{position:absolute;top:-100px;left:12px;z-index:30;background:#fff;padding:10px 16px}.skip-link:focus{top:12px}
.site-header{background:#fff;position:relative;z-index:5;border-bottom:1px solid var(--line)}.header-inner{min-height:100px;display:flex;align-items:center;justify-content:space-between;gap:28px}
.brand{display:flex;align-items:center;gap:10px;min-width:210px;line-height:1.15;white-space:nowrap}.brand-mark{width:52px;height:52px;border-radius:50%;overflow:hidden;flex:none;background:var(--ink)}.brand-mark img{width:100%;height:100%;object-fit:cover}.brand-name{display:flex;flex-direction:column;gap:4px}.brand-name small{font-size:11px;font-weight:700;letter-spacing:.18em}.brand-name strong{font-size:19px;letter-spacing:.035em;line-height:1}.brand-name strong span{color:var(--gold)}
.navigation{display:flex;align-items:center;gap:clamp(12px,2vw,32px);font-size:14px;font-weight:700;white-space:nowrap}.navigation a{transition:color .2s}.navigation a:hover,.footer-bottom a:hover{color:var(--gold)}
.header-call{background:var(--ink);color:#fff;border-radius:7px;min-width:181px;padding:10px 15px;text-align:center;line-height:1.3;transition:background .2s}.header-call:hover,.button-primary:hover{background:#334c55}.header-call span{display:block;color:var(--gold-light);font-size:11px;font-weight:700;letter-spacing:.08em;margin-bottom:4px}.header-call strong{font-size:17px;letter-spacing:.01em;white-space:nowrap}
.hero{background:var(--cream);overflow:hidden}.hero-layout{display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:5%;padding-block:78px 84px}.hero-copy{position:relative;z-index:1}.eyebrow{color:var(--gold);font-size:13px;font-weight:800;letter-spacing:.18em;line-height:1.5;margin:0 0 18px}.hero h1{font-size:clamp(37px,4.4vw,58px);letter-spacing:.035em;line-height:1.42;margin:0 0 24px;font-weight:800}.hero h1 em{color:var(--gold);font-style:normal}.hero-lead{font-size:17px;font-weight:500;line-height:2;margin:0 0 34px;color:#33464e}
.hero-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.button{min-height:60px;display:inline-flex;align-items:center;justify-content:space-between;gap:22px;border-radius:7px;padding:13px 23px;font-size:15px;font-weight:800;line-height:1.4;transition:background .2s,transform .2s,color .2s}.button:hover{transform:translateY(-2px)}.button-primary{background:var(--ink);color:#fff;min-width:250px}.button-primary span,.button-outline span{font-size:21px;font-weight:400;line-height:1}.button-outline{border:1px solid #929e9b;background:transparent;min-width:190px}.button-outline:hover{background:#fff}.hero-support{font-size:13px;line-height:1.7;color:var(--muted);margin:18px 0 0}
.hero-visual{position:relative;min-width:0;padding-right:18px;padding-bottom:18px}.hero-visual::before{content:"";position:absolute;inset:24px 0 0 25px;border:2px solid #d7c5a5;border-radius:180px 180px 12px 12px}.hero-visual img{position:relative;width:100%;height:min(42vw,530px);object-fit:cover;border-radius:180px 180px 12px 12px;box-shadow:var(--shadow)}.hero-stamp{position:absolute;right:-1px;bottom:-8px;width:112px;height:112px;background:var(--ink);border:4px solid var(--gold-light);outline:3px solid var(--ink);border-radius:50%;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(9deg);font-weight:800;box-shadow:0 10px 28px rgba(0,0,0,.13)}.hero-stamp strong{font-size:17px;line-height:1.2}.hero-stamp span{font-size:26px;line-height:1.2}
.trust-band{background:var(--ink);color:#fff}.trust-inner{display:grid;grid-template-columns:repeat(3,1fr);padding-block:24px}.trust-inner>div{padding:5px 25px;display:flex;align-items:center;gap:15px;justify-content:center;border-right:1px solid #65737a}.trust-inner>div:first-child{padding-left:0}.trust-inner>div:last-child{border-right:0;padding-right:0}.trust-inner strong{font-size:17px;white-space:nowrap;color:var(--gold-light)}.trust-inner span{font-size:13px;line-height:1.5;color:#e8eded}
.section{padding-block:100px}.section-head{display:flex;align-items:end;justify-content:space-between;gap:55px;margin-bottom:40px}.section-head>div{flex:0 0 49%}h2,h3,p{overflow-wrap:break-word}h2{font-size:clamp(28px,3vw,40px);line-height:1.48;letter-spacing:.045em;font-weight:800;margin:0}.section-head>p{flex:1;margin:0 0 4px;color:var(--muted);line-height:1.95}
.category-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}.category-card{border:1px solid var(--line);border-radius:9px;overflow:hidden;box-shadow:0 8px 24px rgba(25,43,51,.045);background:#fff}.category-photo{height:282px;background:#f2ede3;overflow:hidden}.category-photo img{width:100%;height:100%;object-fit:cover}.category-body{padding:27px 31px 32px}.category-body>span{color:var(--gold);font-size:11px;font-weight:800;letter-spacing:.13em}.category-body h3{font-size:24px;line-height:1.5;margin:7px 0 20px}.category-body ul{display:flex;gap:9px;flex-wrap:wrap;list-style:none;padding:0;margin:0}.category-body li{background:var(--cream);border:1px solid #eee7d9;border-radius:5px;padding:6px 12px;font-size:14px;font-weight:700;line-height:1.45}.section-note{color:var(--muted);font-size:13px;margin:18px 0 0}
.first-section{background:var(--cream)}.section-head.compact{margin-bottom:36px}.reassurance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px}.reassurance-grid article{background:#fff;border-radius:8px;border:1px solid var(--line);padding:30px 28px 32px}.reassurance-grid article>span{display:block;font-size:30px;font-weight:800;line-height:1;color:var(--gold-light);margin-bottom:26px}.reassurance-grid h3,.steps h3{font-size:19px;line-height:1.5;margin:0 0 12px}.reassurance-grid p,.steps p{color:var(--muted);margin:0;line-height:1.85}
.method-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.method-card{background:var(--cream);border-top:5px solid var(--gold);border-radius:7px;padding:34px;display:flex;gap:21px}.method-no{color:#d6bd8d;font-size:32px;font-weight:800;line-height:1.15}.method-label{color:var(--gold);font-size:13px;font-weight:800;margin:0 0 8px;letter-spacing:.07em}.method-card h3{font-size:25px;line-height:1.45;margin:0 0 15px}.method-card div>p:not(.method-label){color:var(--muted);margin:0 0 24px;line-height:1.9}.method-card a{color:var(--ink);font-size:15px;font-weight:800;border-bottom:1px solid var(--ink);display:inline-flex;align-items:center;gap:15px;line-height:1.65;padding-bottom:4px}.method-card a:hover{color:var(--gold);border-color:var(--gold)}
.flow-section{background:var(--cream)}.steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;list-style:none;padding:0;margin:0}.steps li{border-top:2px solid #b9a273;padding:24px 12px 0 0;position:relative}.steps li:not(:last-child)::after{content:"";position:absolute;right:0;top:-6px;width:10px;height:10px;border-top:2px solid #b9a273;border-right:2px solid #b9a273;transform:rotate(45deg)}.steps li>span{display:block;color:var(--gold);font-size:32px;font-weight:800;line-height:1.1;margin-bottom:19px}
.faq-layout{display:grid;grid-template-columns:35% 1fr;gap:10%}.faq-layout>div:first-child>p:last-child{color:var(--muted);margin:21px 0 0;line-height:1.9}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line);padding:0 18px}.faq-list summary{cursor:pointer;list-style:none;position:relative;padding:24px 40px 24px 0;font-weight:700;font-size:17px;line-height:1.6}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary::after{content:"＋";position:absolute;right:0;top:23px;color:var(--gold);font-size:24px;font-weight:400;line-height:1}.faq-list details[open] summary::after{content:"−"}.faq-list details p{margin:0;padding:0 20px 24px 0;color:var(--muted);line-height:1.9}
.about-section{background:var(--deep);color:#fff;overflow:hidden}.about-layout{display:grid;grid-template-columns:46% 1fr;min-height:460px;gap:9%;align-items:center}.about-photo{align-self:stretch;background:url('assets/hero.webp') center/cover no-repeat;min-height:430px}.about-copy{padding-block:65px;max-width:500px}.about-copy h2{font-size:clamp(27px,2.8vw,38px);margin-bottom:22px}.about-copy>p:not(.eyebrow){color:#e5ebed;line-height:2;margin:0}.about-mark{width:64px;height:64px;border-radius:50%;overflow:hidden;margin-top:27px}.about-mark img{height:100%;width:100%;object-fit:cover}
.contact-section{background:#e9d9b7;padding-block:68px}.contact-layout{display:grid;grid-template-columns:1fr auto;gap:55px;align-items:center}.contact-layout h2{font-size:clamp(27px,3vw,39px)}.contact-layout>div:first-child>p:last-child{margin:18px 0 0;line-height:1.85}.contact-box{background:#fff;min-width:385px;border-radius:8px;box-shadow:var(--shadow);padding:25px 30px;text-align:center}.contact-box>span{display:block;color:var(--gold);font-size:13px;font-weight:800;letter-spacing:.08em}.contact-box a{display:block;font-size:32px;line-height:1.4;font-weight:800;letter-spacing:.015em;margin:7px 0}.contact-box a:hover{color:var(--gold)}.contact-box p{font-size:13px;color:var(--muted);font-weight:700;margin:0}
.footer{background:var(--deep);color:#fff;padding:50px 0 22px}.footer-main{display:flex;justify-content:space-between;gap:50px;align-items:start;padding-bottom:38px}.footer-brand{font-size:24px;font-weight:800;letter-spacing:.04em;line-height:1.25;white-space:nowrap}.footer-brand small{display:block;color:#d4dfe1;font-size:12px;letter-spacing:.15em;margin-bottom:7px}.footer-brand span{color:var(--gold-light)}.footer-main p{font-size:13px;line-height:1.85;color:#d4dfe1;margin:0}.footer-bottom{border-top:1px solid #40545c;padding-top:19px;display:flex;justify-content:space-between;gap:20px;font-size:12px;color:#bdcbcf}.mobile-call{display:none}
@media(max-width:1050px){.header-inner{gap:14px}.brand{min-width:auto}.navigation{gap:13px;font-size:13px}.header-call{min-width:158px;padding-inline:10px}.header-call strong{font-size:15px}.trust-inner>div{padding-inline:14px;display:block;text-align:center}.trust-inner span{display:block;margin-top:3px}.hero-layout{gap:4%}.hero h1{font-size:clamp(33px,4.25vw,51px)}.hero-lead br{display:none}}
@media(max-width:760px){
 html{scroll-padding-top:105px}body{padding-bottom:70px}.container{width:min(100% - 36px,540px)}
 .header-inner{display:grid;grid-template-columns:1fr auto;gap:0;min-height:0;padding-top:12px}.brand{grid-column:1;grid-row:1;gap:7px;min-width:0}.brand-mark{height:43px;width:43px}.brand-name small{font-size:9px}.brand-name strong{font-size:16px}.header-call{grid-column:2;grid-row:1;min-width:0;background:transparent;color:var(--ink);padding:0 0 0 8px;text-align:right}.header-call:hover{background:transparent;color:var(--gold)}.header-call span{color:var(--gold);font-size:10px;margin:0}.header-call strong{font-size:15px}.navigation{grid-column:1/-1;grid-row:2;overflow-x:auto;gap:23px;margin-top:12px;padding:0 0 11px;scrollbar-width:none;font-size:12px}.navigation::-webkit-scrollbar{display:none}.navigation a{flex:none}
 .hero-layout{display:block;padding-block:54px 45px}.hero h1{font-size:clamp(31px,7.5vw,44px);line-height:1.44;margin-bottom:20px}.hero .eyebrow{margin-bottom:13px}.hero-lead{font-size:15px;line-height:1.95;margin-bottom:24px}.hero-actions{gap:10px}.button{min-height:54px;font-size:14px;padding:12px 16px}.button-primary{min-width:238px}.button-outline{min-width:168px}.hero-support{font-size:12px;margin-top:14px}.hero-visual{margin:35px 9px 0 0;padding-right:12px;padding-bottom:12px}.hero-visual::before{inset:20px 0 0 20px;border-radius:150px 150px 8px 8px}.hero-visual img{height:min(68vw,390px);border-radius:150px 150px 8px 8px}.hero-stamp{width:86px;height:86px;right:-2px;bottom:-5px}.hero-stamp strong{font-size:14px}.hero-stamp span{font-size:20px}
 .trust-inner{grid-template-columns:1fr;padding-block:4px}.trust-inner>div,.trust-inner>div:first-child,.trust-inner>div:last-child{display:flex;text-align:left;justify-content:flex-start;padding:12px 0;border-right:0;border-bottom:1px solid #506169;gap:14px}.trust-inner>div:last-child{border:0}.trust-inner strong{font-size:14px;min-width:119px}.trust-inner span{font-size:12px;margin:0}
 .section{padding-block:68px}.section-head,.section-head.compact{display:block;margin-bottom:28px}.section-head>p{margin:16px 0 0;line-height:1.85}h2{font-size:clamp(27px,6.7vw,34px)}.category-grid,.reassurance-grid,.method-grid,.steps,.faq-layout{grid-template-columns:1fr}.category-grid{gap:17px}.category-photo{height:auto;aspect-ratio:1.6}.category-body{padding:21px 22px 25px}.category-body h3{font-size:21px;margin:5px 0 15px}.category-body li{font-size:13px}.section-note{font-size:12px}.reassurance-grid{gap:12px}.reassurance-grid article{padding:20px 22px}.reassurance-grid article>span{font-size:23px;margin-bottom:10px}.reassurance-grid h3,.steps h3{font-size:17px;margin-bottom:5px}.reassurance-grid p,.steps p{font-size:14px}
 .method-grid{gap:14px}.method-card{padding:24px 20px;gap:13px}.method-no{font-size:25px}.method-card h3{font-size:21px}.method-card div>p:not(.method-label){font-size:14px;margin-bottom:15px}.method-card a{font-size:14px}.steps{gap:22px}.steps li{padding:16px 0 0}.steps li:not(:last-child)::after{display:none}.steps li>span{font-size:23px;margin-bottom:9px}.faq-layout{gap:25px}.faq-layout>div:first-child>p:last-child{margin-top:10px}.faq-list details{padding:0 5px}.faq-list summary{font-size:15px;padding-block:19px}.faq-list summary::after{top:19px}.faq-list details p{font-size:14px;padding-bottom:19px}
 .about-layout{display:block}.about-photo{min-height:260px;margin-inline:-18px}.about-copy{padding-block:44px 52px}.about-copy h2{font-size:clamp(26px,6.7vw,34px)}.contact-section{padding-block:52px}.contact-layout{display:block}.contact-layout>div:first-child>p:last-child{font-size:14px;margin-top:13px}.contact-box{min-width:0;margin-top:25px;padding:19px}.contact-box a{font-size:clamp(24px,6.8vw,32px)}.footer{padding:38px 0 26px}.footer-main{display:block;padding-bottom:25px}.footer-main p{margin-top:20px;font-size:12px}.footer-bottom{font-size:11px;line-height:1.6}.mobile-call{display:flex;position:fixed;z-index:20;bottom:0;left:0;right:0;min-height:70px;align-items:center;justify-content:center;gap:20px;color:#fff;background:var(--ink);border-top:4px solid var(--gold-light);font-size:16px;font-weight:800;box-shadow:0 -8px 25px rgba(0,0,0,.16)}.mobile-call span{font-size:24px;font-weight:400}
}
@media(max-width:380px){.container{width:calc(100% - 30px)}.header-call span{font-size:9px}.header-call strong{font-size:13px}.brand-name strong{font-size:14px}.brand-mark{width:39px;height:39px}.navigation{gap:17px}.hero h1{font-size:30px}h2{font-size:24px;letter-spacing:.02em}.contact-layout h2{font-size:23px;letter-spacing:.01em}.category-body h3,.method-card h3{font-size:19px}.hero-actions .button{width:100%}.hero-visual img{height:75vw}.trust-inner strong{min-width:114px}.footer-bottom{display:block}.footer-bottom a{display:block;margin-top:9px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.navigation a,.header-call{transition:none}}
.items-contact{margin-top:24px;padding:21px 25px;background:var(--cream);border-left:4px solid var(--gold);display:flex;align-items:center;justify-content:space-between;gap:24px}
.items-contact p{margin:0;font-size:16px;line-height:1.7}.items-contact a{flex:none;color:var(--ink);font-size:15px;font-weight:800;display:inline-flex;align-items:center;gap:15px;border-bottom:1px solid var(--ink);padding-bottom:4px}.items-contact a:hover{color:var(--gold);border-color:var(--gold)}
.prepare-note{margin-top:27px;padding:27px 31px;background:#f4efe5;border-radius:7px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:30px}.prepare-note .eyebrow{font-size:12px;margin-bottom:6px}.prepare-note h3{font-size:22px;line-height:1.5;margin:0 0 7px}.prepare-note p:last-child{color:var(--muted);font-size:15px;line-height:1.85;margin:0}.prepare-note .button{white-space:nowrap}
.footer-details{max-width:570px}.footer-details .footer-note{margin-top:12px;color:#e4d2ad}.footer-main p{font-size:14px}
@media(max-width:760px){.items-contact{display:block;padding:19px 20px}.items-contact p{font-size:15px}.items-contact a{margin-top:15px;font-size:14px}.prepare-note{display:block;padding:23px 21px;margin-top:18px}.prepare-note h3{font-size:20px}.prepare-note .button{width:100%;min-width:0;margin-top:19px}.navigation{font-size:13px}.navigation a{display:inline-flex;align-items:center;min-height:40px}.hero-support,.trust-inner span,.section-note,.footer-main p{font-size:14px}.reassurance-grid p,.steps p,.method-card div>p:not(.method-label),.faq-list details p{font-size:15px}}
@media(max-width:380px){.prepare-note h3{font-size:18px}.prepare-note .button{font-size:13px}.items-contact a{font-size:13px}.mobile-call{font-size:14px;gap:12px}}
@media(max-width:760px){.navigation{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;overflow:visible;margin-top:10px;padding:0;border-top:1px solid var(--line)}.navigation a{justify-content:center;text-align:center;border-bottom:1px solid var(--line);min-height:41px;white-space:normal}}
.category-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.category-photo{height:auto;aspect-ratio:1.42}.category-photo img{width:100%;height:100%;object-fit:cover}
.category-body{padding:17px 18px 21px}.category-body h3{font-size:19px;line-height:1.5;margin:5px 0 0}
@media(max-width:1050px){.category-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.category-grid{gap:13px}.category-body{padding:14px 14px 17px}.category-body h3{font-size:17px}.category-photo{aspect-ratio:1.35}}
@media(max-width:380px){.category-grid{grid-template-columns:1fr;gap:16px}.category-photo{aspect-ratio:1.65}.category-body{padding:17px 20px 20px}.category-body h3{font-size:20px}}

/* The printed campaign's red and gold hierarchy, adapted for readable screens. */
:root{--ink:#302421;--deep:#291d1b;--muted:#5f5550;--gold:#956423;--gold-light:#e5c88e;--cream:#fff8ec;--line:#e9ddcd;--red:#a21e20;--red-dark:#781b1a}
.site-header{border-top:5px solid var(--red);border-bottom-color:#e8d6ba}
.brand-name strong span{color:var(--red)}
.navigation a:hover,.footer-bottom a:hover{color:var(--red)}
.header-call,.button-primary{background:var(--red-dark)}
.header-call:hover,.button-primary:hover{background:var(--red)}
.header-call span{color:#f4d49a}
.hero{background:linear-gradient(125deg,#fff8ed 15%,#fff2e3 100%)}
.hero h1 em{color:var(--red-dark)}
.hero .eyebrow{color:var(--red-dark)}
.hero-visual::before{border-color:#cc9d54}
.hero-stamp{background:var(--red-dark);border-color:#f4d49a;outline-color:var(--red-dark)}
.trust-band{background:var(--red-dark)}
.trust-inner strong{color:#ffe0a6}
.trust-inner>div{border-color:#b77370}
.items-section{background:#fffdf9;border-top:1px solid #f0e4d1}
.items-section .section-head{border-left:6px solid var(--red);padding-left:25px}
.items-section .eyebrow{color:var(--red-dark)}
.category-card{border-color:#e3cfaa;box-shadow:0 8px 22px rgba(81,36,17,.075)}
.category-photo{background:#f8eee1}
.category-body{border-top:4px solid var(--red);background:linear-gradient(180deg,#fffaf1,#fff)}
.category-body>span{color:var(--red-dark)}
.category-body h3{color:#302421}
.items-contact{background:#fff2df;border-left-color:var(--red)}
.items-contact a:hover,.method-card a:hover,.contact-box a:hover{color:var(--red);border-color:var(--red)}
.reassurance-grid article>span,.method-no{color:#bc8e4a}
.method-card{border-top-color:var(--red)}
.method-label,.steps li>span,.faq-list summary::after{color:var(--red-dark)}
.contact-section{background:#f2dcb7}
.contact-box{border:2px solid #bd8d48}
.contact-box>span{color:var(--red-dark)}
.footer-brand span{color:#f0c478}
.mobile-call{background:var(--red-dark);border-top-color:#e5b956}
@media(max-width:760px){.items-section .section-head{padding-left:16px;border-left-width:4px}.header-call,.header-call:hover{background:transparent;color:var(--red-dark)}.header-call span{color:var(--red-dark)}.trust-inner>div,.trust-inner>div:first-child,.trust-inner>div:last-child{border-color:#b77370}.trust-inner>div:last-child{border:0}}

/* The supplied Smile Value lockup is used intact; the frame crops only its white margin. */
.brand{display:block;flex:none;width:285px;height:78px;min-width:0;overflow:hidden;background:#fff}
.brand-logo,.about-logo,.footer-logo{display:block;object-fit:cover;object-position:center;background:#fff}
.brand-logo{width:100%;height:100%}
.about-logo{width:270px;height:85px;margin-top:27px;border-radius:5px}
.footer-logo{width:250px;height:80px;flex:none;border-radius:5px}
@media(max-width:1050px) and (min-width:761px){.brand{width:235px;height:70px}.navigation{gap:12px}}
@media(max-width:760px){.brand{grid-column:1;grid-row:1;width:min(51vw,202px);height:clamp(50px,15.5vw,61px)}.header-inner{column-gap:7px}.header-call{align-self:center}.about-logo{width:min(270px,100%)}.footer-logo{width:235px;height:75px}}
@media(max-width:380px){.brand{width:51vw;height:50px}.footer-logo{width:220px;height:70px}}

.about-section{background:#672426;border-top:5px solid #c99a50}
.about-photo{background-image:linear-gradient(90deg,rgba(72,20,22,.08),rgba(91,24,26,.2)),url('assets/hero.webp')}
.about-copy .eyebrow{color:#f4cc83}
.about-copy>p:not(.eyebrow){color:#fff1e6}
.about-logo{border:1px solid #d4aa69;box-shadow:0 10px 28px rgba(32,10,10,.16)}

/* Final reading rhythm across the page */
body{letter-spacing:.015em}
.hero-layout{padding-block:70px 74px}
.hero h1{font-size:clamp(38px,4.15vw,54px);line-height:1.42;letter-spacing:.018em;font-weight:700}
.hero-lead{font-size:17px;line-height:1.85}
.hero-stamp{width:94px;height:94px}
.hero-stamp strong{font-size:15px}.hero-stamp span{font-size:22px}
.section{padding-block:86px}
.section-head{align-items:center;margin-bottom:35px}
.section-head>p{font-size:16px;line-height:1.8}
h2{font-size:clamp(28px,2.8vw,38px);line-height:1.5;letter-spacing:.025em;font-weight:700}
.category-body h3{font-size:19px;font-weight:700}
.method-card h3{font-size:23px}
.method-card div>p:not(.method-label),.steps p,.faq-list details p{font-size:16px;line-height:1.8}
.faq-list summary{font-size:16px}
.about-copy>p:not(.eyebrow),.contact-layout>div:first-child>p:last-child{font-size:16px;line-height:1.85}
.footer-details p{font-size:14px;line-height:1.9}
@media(max-width:1050px) and (min-width:761px){
  .hero h1{font-size:clamp(35px,4.05vw,48px)}
  .hero-layout{gap:4%}
}
@media(max-width:760px){
  .hero-layout{padding-block:42px 44px}
  .hero h1{font-size:clamp(30px,7vw,40px);line-height:1.45}
  .hero-lead{font-size:16px;line-height:1.8}
  .hero-visual{margin-top:29px}
  .hero-stamp{width:72px;height:72px}
  .hero-stamp strong{font-size:12px}.hero-stamp span{font-size:18px}
  .section{padding-block:64px}
  .section-head>p{font-size:16px}
  .steps p,.method-card div>p:not(.method-label),.faq-list details p{font-size:16px}
  .faq-list summary{font-size:16px}
  .navigation{font-size:14px}
  .button{font-size:15px}
  .contact-layout>div:first-child>p:last-child{font-size:16px}
  .footer-details p{font-size:14px}
}
@media(max-width:380px){
  .hero h1{font-size:30px}
  .category-body h3{font-size:19px}
}

/* 開催予定と掲載例。既存の赤・金・白の階層を引き継ぐ。 */
[hidden]{display:none!important}
.text-link{color:var(--red-dark);font-weight:700;text-decoration:underline;text-underline-offset:4px}
.events-section{background:#fff;scroll-margin-top:10px}
.events-section .section-head{margin-bottom:27px}
.event-card{display:grid;grid-template-columns:minmax(300px,.72fr) 1fr;border:1px solid #e2cfaa;border-radius:10px;overflow:hidden;box-shadow:0 14px 34px rgba(85,45,23,.08)}
.event-date{background:var(--red-dark);color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;gap:10px;padding:38px 40px}
.event-date>span:first-child{font-size:17px;font-weight:700;color:#f8dca7}
.event-date strong{font-size:clamp(30px,3.1vw,41px);line-height:1.3;letter-spacing:0;white-space:nowrap;font-variant-numeric:tabular-nums}
.event-date small{font-size:.42em;vertical-align:middle;letter-spacing:0}
.event-date .date-separator{color:#e8c486;font-weight:400;margin-inline:2px}
.event-date>span:last-child{font-size:21px;font-weight:700;letter-spacing:.04em}
.event-detail{padding:32px 40px 34px;background:#fffaf1}
.event-label{display:inline-block;color:var(--red-dark);font-size:14px;font-weight:800;letter-spacing:.08em;border-bottom:2px solid #cba05d;padding-bottom:3px}
.event-detail h3{font-size:clamp(24px,2.3vw,29px);line-height:1.4;margin:10px 0 13px}
.event-address{font-size:16px;line-height:1.8;margin:0;color:var(--ink)}
.event-caption{font-size:14px;color:var(--muted);margin:13px 0 18px}
.event-link,.event-empty a,.examples-action a{color:var(--red-dark);font-size:15px;font-weight:800;display:inline-flex;align-items:center;gap:12px;border-bottom:1px solid currentColor;padding-bottom:3px}
.event-link:hover,.event-empty a:hover,.examples-action a:hover{color:var(--gold)}
.event-note{color:var(--muted);font-size:14px;margin:15px 0 0;line-height:1.7}
.event-empty{border:1px solid #e2cfaa;border-left:5px solid var(--red-dark);background:#fffaf1;border-radius:7px;padding:28px 32px}
.event-empty p{font-size:17px;line-height:1.85;margin:0 0 12px}
.examples-section{background:#fff8ec}
.examples-section .section-head{margin-bottom:24px}
.examples-disclosure{display:flex;align-items:center;gap:13px;margin:0 0 25px;padding:14px 18px;background:#fff;border:1px solid #e7d4b9;border-radius:6px;font-size:14px;line-height:1.7;color:#4f3e35}
.examples-disclosure strong{display:inline-block;flex:none;padding:4px 10px;border-radius:3px;background:var(--red-dark);color:#fff;font-size:13px;line-height:1.4}
.examples-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.example-card{display:grid;grid-template-columns:42% 1fr;min-width:0;min-height:200px;background:#fff;border:1px solid #e7d9c2;border-radius:8px;overflow:hidden}
.example-card img{width:100%;height:100%;object-fit:cover;background:#f5ebdc}
.example-card>div{padding:25px 24px;align-self:center}
.example-card span{font-size:12px;color:var(--red-dark);font-weight:800;letter-spacing:.12em}
.example-card h3{font-size:20px;line-height:1.5;margin:6px 0 9px}
.example-card p{font-size:15px;line-height:1.8;color:var(--muted);margin:0}
.examples-action{display:flex;align-items:center;justify-content:space-between;gap:25px;background:#fff;border-left:4px solid var(--red-dark);padding:21px 26px;margin-top:25px}
.examples-action p{font-size:16px;line-height:1.7;margin:0}
.examples-action a{flex:none}
@media(max-width:1050px){
 .event-date{padding:33px 27px}.event-detail{padding:29px 30px}
 .event-date strong{font-size:32px}.example-card{grid-template-columns:38% 1fr}.example-card>div{padding:18px}
}
@media(max-width:760px){
 .event-card{grid-template-columns:1fr}.event-date{padding:22px 24px;gap:5px}.event-date strong{font-size:clamp(28px,7vw,39px)}.event-date>span:first-child{font-size:15px}.event-date>span:last-child{font-size:18px}
 .event-detail{padding:23px 24px 26px}.event-detail h3{font-size:24px}.event-note{font-size:14px}.event-empty{padding:22px}
 .examples-disclosure{align-items:flex-start;font-size:14px;line-height:1.75}.examples-grid{grid-template-columns:1fr;gap:13px}.example-card{grid-template-columns:38% 1fr;min-height:176px}.example-card>div{padding:17px}.example-card h3{font-size:19px}.example-card p{font-size:14px}
 .examples-action{display:block;padding:20px}.examples-action a{margin-top:12px}
}
@media(max-width:430px){.example-card{display:block}.example-card img{height:auto;aspect-ratio:1.8}.example-card>div{padding:18px 20px 21px}.example-card p{font-size:15px}.examples-disclosure{gap:10px}.event-date strong{font-size:clamp(26px,6.7vw,32px)}.event-date .date-separator{margin-inline:0}.event-detail h3{font-size:22px}}

/* 実物の買取実績。写真と品名を主役にし、金額は任意で表示します。 */
.results-section{background:#fff;border-top:1px solid var(--line)}
.results-section .section-head{border-left:5px solid var(--red-dark);padding-left:24px;margin-bottom:30px}
.results-section .eyebrow{color:var(--red-dark);font-size:14px;margin-bottom:10px}
.results-empty{padding:34px 38px;background:#fffaf2;border:1px solid #e2cfaa;border-radius:9px}
.results-empty-label{display:inline-block;color:var(--gold);font-size:14px;font-weight:700;margin-bottom:12px}
.results-empty h3{font-size:24px;line-height:1.65;margin:0 0 10px;color:var(--red-dark)}
.results-empty p{font-size:16px;color:var(--muted);line-height:1.85;margin:0;max-width:46em}
.results-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.result-card{min-width:0;background:#fff;border:1px solid #e2cfaa;border-radius:9px;overflow:hidden;box-shadow:0 8px 24px rgba(81,36,17,.06)}
.result-photo{aspect-ratio:4/3;background:#f7f3ee;padding:14px}
.result-photo img{width:100%;height:100%;object-fit:contain}
.result-body{padding:23px 24px 25px;border-top:3px solid var(--red-dark)}
.result-category{font-size:14px;font-weight:700;color:var(--gold);margin:0 0 7px}
.result-title{font-size:22px;line-height:1.5;margin:0 0 12px}
.result-description{font-size:16px;line-height:1.8;color:var(--muted);margin:0 0 18px;white-space:pre-line}
.result-details{margin:0;border-top:1px solid var(--line)}
.result-detail{display:grid;grid-template-columns:5em minmax(0,1fr);gap:12px;padding-top:12px;font-size:14px;line-height:1.7}
.result-detail dt{color:var(--muted)}
.result-detail dd{margin:0;font-weight:500;overflow-wrap:anywhere}
.result-detail-price{align-items:baseline}
.result-detail-price dd{color:var(--red-dark);font-size:26px;font-weight:800;line-height:1.35;font-variant-numeric:tabular-nums}
.results-note{font-size:14px;line-height:1.8;margin:22px 0 0;color:var(--muted)}
@media(min-width:761px) and (max-width:1100px){
 .header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 24px;padding-block:10px}
 .header-inner .brand{grid-column:1;grid-row:1}.header-call{grid-column:2;grid-row:1}
 .navigation{grid-column:1/-1;grid-row:2;justify-content:center;gap:clamp(18px,4vw,38px);padding-block:7px}
}
@media(max-width:1050px){.results-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
 .navigation a:last-child{grid-column:1/-1}
 .results-section .section-head{padding-left:16px;border-left-width:4px}
 .results-empty{padding:25px 23px}.results-empty h3{font-size:21px}.results-empty p{font-size:16px}
 .results-grid{gap:18px}.result-body{padding:20px}.result-title{font-size:20px}
}
@media(max-width:560px){.results-grid{grid-template-columns:1fr}.result-photo{aspect-ratio:4/3}.results-empty{padding:24px 21px}}
