@font-face{font-family:'Campaign Mincho';src:url('/assets/fonts/noto-serif-jp-headings.woff2') format('woff2');font-weight:400;font-display:swap}
@font-face{font-family:Cormorant;src:url('/assets/fonts/cormorant-garamond.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{--paper:#f7f5ee;--white:#fffef9;--ink:#28244e;--muted:#686671;--line:#dcdad0;--olive:#56613e;--sage:#e8eacd;--lime:#d9e0ad;--serif:Cormorant,Georgia,'Times New Roman',serif;--jp-serif:'Campaign Mincho','Yu Mincho','Hiragino Mincho ProN','Noto Serif JP',serif;--sans:'Noto Sans JP','Hiragino Kaku Gothic ProN','Yu Gothic',Meiryo,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.8;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer}img{display:block;max-width:100%;height:auto}svg{display:block}p,h1,h2,h3{margin:0}button,a,input,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #ad6a35;outline-offset:5px}::selection{background:var(--lime);color:var(--ink)}[hidden]{display:none!important}.wrap{width:min(1200px,calc(100% - 112px));margin-inline:auto}.section-pad{padding-block:112px}.eyebrow{font:500 11px/1.4 var(--sans);letter-spacing:.16em}.serif-en{font:400 62px/1.04 var(--serif);letter-spacing:-.035em}.small-dot{display:inline-block;width:7px;height:7px;background:var(--olive);border-radius:50%;margin-right:10px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:58px;padding:15px 25px;font-size:13px;font-weight:600;border:1px solid transparent;transition:background .2s,color .2s,transform .2s}.button svg{width:21px;height:21px;flex-shrink:0}.button--primary{background:var(--ink);color:var(--paper)}.button--primary:hover{background:#413a69;transform:translateY(-2px)}.button--light{color:var(--ink);background:var(--paper)}.button--light:hover{background:var(--lime);transform:translateY(-2px)}.skip-link{position:absolute;z-index:10;left:20px;top:-100px;padding:15px;background:var(--ink);color:white}.skip-link:focus{top:10px}.announcement{background:var(--ink);color:var(--paper);text-align:center;font-size:10px;letter-spacing:.12em;padding:7px 16px;line-height:1.5}.announcement span{margin-left:22px;letter-spacing:.08em;opacity:.85}.site-header{display:flex;align-items:center;justify-content:space-between;height:106px;border-bottom:1px solid var(--line)}.brand{display:inline-flex;align-items:center;gap:12px;line-height:1.1}.brand>img{width:45px;height:45px;object-fit:contain}.brand>span{font:400 28px/1.2 var(--serif)}.brand-chevrons{font-family:var(--sans);font-size:17px;letter-spacing:-.15em;margin-inline:3px 6px}.brand small{display:block;font:8px/1.6 var(--sans);letter-spacing:.15em;margin-top:4px}.site-header nav{display:flex;align-items:center;gap:30px;font-size:11px}.site-header nav>a{padding-block:14px}.site-header nav>a:hover{color:var(--olive)}.nav-shop{display:flex;align-items:center;gap:16px;border-bottom:1px solid var(--ink);font-size:10px;letter-spacing:.06em}.nav-shop svg{width:16px;height:16px}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:680px;padding-top:44px;padding-bottom:54px;position:relative}.hero-copy{padding-top:26px;z-index:1}.hero-anniversary{display:block;font:12px/1.6 var(--sans);letter-spacing:.04em;margin-top:30px}.hero-anniversary strong{display:block;font:400 44px/1.1 var(--serif);letter-spacing:-.03em;margin-top:5px}.hero-japanese{display:block;font:400 clamp(38px,4.5vw,60px)/1.45 var(--jp-serif);letter-spacing:.09em;margin-top:24px}.hero-description{margin-top:20px;font-size:13px;line-height:2;letter-spacing:.06em}.campaign-date{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;margin:26px 0 27px;font-family:var(--serif)}.date-year{font-size:19px}.campaign-date time{font-size:30px;line-height:1.3}.campaign-date time small,.closing-date time small{font:9px var(--sans);margin-left:6px}.date-dash{font-size:21px}.days-label{font:9px/1.6 var(--sans);letter-spacing:.06em;border:1px solid var(--ink);padding:3px 6px;margin-left:7px;align-self:center}.hero-down{display:inline-flex;font-size:11px;gap:18px;align-items:center;margin-left:20px;min-height:44px}.hero-down span{font-size:18px}.hero-art{position:relative;align-self:center;margin-left:-50px;min-width:0;height:590px}.seven-art{width:100%;height:100%;overflow:visible}.art-circle{stroke:#e0dfd3;stroke-width:1}.orbit-type{font:10px var(--sans);fill:var(--olive);letter-spacing:5px}.seven-main,.seven-outline{font:640px var(--serif);letter-spacing:-20px;fill:var(--ink)}.seven-outline{fill:none;stroke:#a6ad87;stroke-width:1}.orbit-line{stroke:#879269;stroke-width:1.2;stroke-dasharray:1500;stroke-dashoffset:1500;animation:draw-orbit 2.8s .2s ease-out forwards}.art-spark{stroke:var(--olive);stroke-width:1}.art-caption{position:absolute;right:2%;top:27px;font-size:9px;letter-spacing:.16em;line-height:1.6}.anniversary-seal{width:117px;height:117px;border-radius:50%;background:var(--lime);position:absolute;right:8%;bottom:94px;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(12deg);box-shadow:0 0 0 7px var(--paper),0 0 0 8px var(--lime)}.anniversary-seal strong{font:italic 58px/.9 var(--serif)}.anniversary-seal span{font-size:7px;letter-spacing:.13em;line-height:2.8}.art-footer{position:absolute;bottom:6px;left:15%;right:1%;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.17em}.art-footer span{color:var(--olive)}.benefit-overview{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--line);padding-block:26px}.benefit-overview>a{padding:2px 36px;border-right:1px solid var(--line);transition:background .2s}.benefit-overview>a:first-child{padding-left:0}.benefit-overview>a:last-child{border:none}.benefit-overview>a:hover{background:#eeeee0}.overview-label{display:block;font-size:9px;letter-spacing:.16em;color:var(--olive);margin-bottom:8px}.benefit-overview strong{display:block;font-size:21px;font-weight:500;line-height:1.3}.benefit-overview strong>span{font:45px/1 var(--serif)}.benefit-overview .overview-gift{font:34px/1.3 var(--serif)}.overview-gift small{font:15px var(--sans);margin-left:7px}.benefit-overview a>span:last-child{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:var(--muted);margin-top:7px}.benefit-overview svg{width:20px;height:20px;color:var(--ink)}.gratitude{text-align:center;position:relative;padding-block:106px 110px}.gratitude h2{font:400 30px/1.6 var(--jp-serif);letter-spacing:.09em;margin:24px 0}.gratitude>p:not(.eyebrow){font-size:13px;line-height:2.3;margin-top:17px}.gratitude-signature{display:block;font:italic 25px var(--serif);margin-top:30px}.gratitude-flower{position:absolute;right:8%;top:145px;font-size:73px;font-weight:300;color:#bcc397;transform:rotate(18deg)}.benefits{background:#edeee3}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;margin-bottom:45px}.section-heading .eyebrow{margin-bottom:20px;color:var(--olive)}.section-heading h2{font:400 34px/1.6 var(--jp-serif);letter-spacing:.045em}.section-heading h2 .serif-en{display:block;font-size:57px;letter-spacing:-.025em;margin-top:8px}.section-heading>p,.section-heading>div>p:not(.eyebrow):not(.serif-en){font-size:12px;line-height:2.1;color:var(--muted)}.benefit-cards{display:grid;grid-template-columns:1fr 1fr;gap:24px}.coupon-card,.points-card{padding:30px 34px 24px;position:relative}.coupon-card{background:var(--white)}.points-card{background:var(--ink);color:var(--paper);overflow:hidden}.card-topline{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:9px;letter-spacing:.1em}.small-tag{font-size:9px;letter-spacing:0;border:1px solid currentColor;border-radius:20px;padding:3px 9px;white-space:nowrap}.benefit-cards h3{font-size:14px;font-weight:500;letter-spacing:.04em;margin-top:27px}.coupon-value{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:-6px}.coupon-value strong{font:154px/1.15 var(--serif);letter-spacing:-.035em}.coupon-value>span{font-size:22px;line-height:1.1;padding-top:20px}.coupon-value b{font:33px/1.5 var(--serif)}.coupon-ticket{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:9px 18px;border-top:1px dashed #b8b5b4;padding-top:21px;position:relative}.coupon-ticket:before,.coupon-ticket:after{content:'';width:20px;height:20px;background:#edeee3;border-radius:50%;position:absolute;top:-10px;left:-44px}.coupon-ticket:after{left:auto;right:-44px}.code-caption{font-size:8px;letter-spacing:.12em;width:100%;text-align:center}.coupon-ticket code{font:500 24px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:-.035em;user-select:all}.copy-button{display:flex;align-items:center;gap:8px;border:1px solid var(--ink);background:transparent;min-height:40px;padding:7px 11px;color:var(--ink);font-size:10px;transition:background .2s}.copy-button:hover{background:var(--sage)}.copy-button svg{width:16px;height:16px}.copy-status{width:100%;text-align:center;min-height:18px;font-size:10px;color:var(--olive)}.fine-print{font-size:10px;line-height:1.9;color:var(--muted);margin-top:11px}.points-card .fine-print{color:#d1cede}.points-card .fine-print a{border-bottom:1px solid #77718d;padding-bottom:3px;display:inline-block;margin-top:8px}.points-value{position:relative;display:flex;align-items:center;justify-content:center;gap:12px;isolation:isolate;height:230px}.points-value>span{font-size:13px;line-height:1.9}.points-value>strong{font:235px/.9 var(--serif);letter-spacing:-.1em;margin-right:20px;color:var(--lime)}.points-value>b{font-weight:400;font-size:32px;align-self:flex-end;margin-bottom:28px}.points-orbit{position:absolute;width:100%;max-width:400px;inset:0;margin:auto;z-index:-1;fill:none;stroke:#777987;stroke-width:.7}.points-message{font:24px var(--serif);border-top:1px solid #554f70;padding-top:22px;text-align:center;letter-spacing:.03em}.points-card .fine-print{text-align:center;margin-top:15px}.gifts{background:var(--ink);color:var(--paper);position:relative;overflow:hidden}.gifts:before{content:'7';font:850px var(--serif);position:absolute;left:-120px;top:20px;color:rgba(255,255,255,.025);pointer-events:none}.gifts>.wrap{position:relative}.gifts .eyebrow{color:var(--lime)}.gifts .section-heading{align-items:center;margin-bottom:24px}.gifts .section-heading h2{font-size:39px;line-height:1.55}.gifts .section-heading>div:last-child{max-width:390px}.gift-intro{font-size:47px;margin-bottom:19px;color:var(--lime)}.gifts .section-heading>div>p:not(.eyebrow):not(.serif-en){color:#c5c2d0}.gift-basis{font-size:10px;color:#d2cfdd;line-height:1.9}.step-cards{list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:start;margin:76px 0 32px}.step-card{background:var(--paper);color:var(--ink);position:relative}.step-card--1{margin-top:72px}.step-card--2{margin-top:36px}.step-card--3{background:#e8eacd}.step-topline{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:18px 22px;border-bottom:1px solid var(--line);font-size:9px;letter-spacing:.06em}.step-topline b{font:24px var(--serif);margin-left:6px}.step-topline>span:last-child{font-size:8px;color:var(--olive)}.step-card h3{padding:18px 22px 15px;font-weight:400;line-height:1.3}.step-card h3 strong{font:58px/1 var(--serif);letter-spacing:-.035em}.step-card h3>span{font-size:10px;margin-left:6px;white-space:nowrap;display:block;margin-top:8px}.step-visual{position:relative;margin:4px 18px 0;background:#eeebe2;display:flex;gap:5px;align-items:center;justify-content:center;height:196px;overflow:hidden}.step-visual .product-image{height:100%;width:100%;object-fit:cover}.pair-plus{font-size:17px;position:relative;z-index:1}.gift-ribbon{position:absolute;bottom:0;right:0;padding:4px 12px;font-size:7px;letter-spacing:.12em;background:var(--olive);color:white}.step-bottom{padding:20px 22px 22px}.step-caption{font-size:10px;color:var(--muted);margin-bottom:12px}.gift-names{font-size:12px;line-height:1.7;min-height:88px}.gift-names>span{display:block}.gift-plus{font-weight:400;display:block;color:var(--olive);font-size:14px;padding:3px 0}.gift-count{font-size:9px;padding-top:14px;border-top:1px solid #d2d1c2;margin-top:15px;letter-spacing:.035em}.gift-note{display:flex;gap:17px;align-items:flex-start;justify-content:center;font-size:11px;line-height:2;color:#d8d4e3}.gift-note>span{font-size:28px;line-height:1.1;color:var(--lime)}.gift-note strong{font-weight:500;color:var(--white)}.gift-checker{margin-top:40px;border:1px solid #5c5675;padding:26px 28px;display:grid;grid-template-columns:1fr 1fr;gap:12px 30px;align-items:center}.gift-checker label{font-size:12px;display:block}.gift-checker>div>p{font-size:10px;color:#c9c5d6;margin-top:6px}.gift-checker form{display:flex;gap:10px}.amount-input{position:relative;flex:1;min-width:0}.amount-input input{width:100%;min-height:50px;background:transparent;border:1px solid #aaa4bb;padding:11px 35px 11px 15px;color:var(--paper);border-radius:0;font-size:16px}.amount-input input::placeholder{color:#c5c0d1}.amount-input>span{position:absolute;right:13px;top:12px}.gift-checker .button{min-height:50px;padding:10px 15px;font-size:11px;gap:12px}.gift-result{grid-column:1/-1;font-size:11px;color:var(--lime);border-top:1px solid #554f6f;padding-top:12px;margin-top:4px;min-height:35px}.gift-cta{display:flex;align-items:center;justify-content:center;gap:27px;margin-top:42px}.gift-cta>span{font-size:11px;color:#d0cbdc}.products .section-heading h2{font-size:30px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.product-photo{position:relative;aspect-ratio:1;background:#eeece3;margin-bottom:24px;overflow:hidden}.product-photo>.product-image{width:100%;height:100%;object-fit:cover;transition:transform .5s}.product-card:hover .product-photo>.product-image{transform:scale(1.035)}.product-number{position:absolute;top:15px;left:17px;z-index:1;font:27px var(--serif);background:var(--paper);border-radius:50%;width:38px;height:38px;display:grid;place-items:center}.product-placeholder{height:100%;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#e9e7dd;text-align:center;padding:25px;position:relative}.product-placeholder:before{content:'';position:absolute;inset:13%;border:1px solid #c6c7b5;border-radius:50%}.product-placeholder>span:first-child{font:17px var(--serif);letter-spacing:.03em;z-index:1}.placeholder-mark{font:120px/1.15 var(--serif);letter-spacing:-.04em;color:var(--olive);z-index:1}.product-placeholder>span:last-child{font:7px var(--sans);letter-spacing:.14em;z-index:1}.product-card:nth-child(3) .product-placeholder{background:#e4e8d4}.product-label{font-size:9px;letter-spacing:.12em;color:var(--olive);margin-bottom:10px}.product-card h3{font-size:15px;font-weight:500;line-height:1.8;min-height:54px}.product-card h3 small{display:block;font-size:11px;font-weight:400}.product-description{font-size:11px;line-height:2;color:var(--muted);margin:15px 0 18px;min-height:68px}.text-link{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--ink);padding:9px 0;font-size:11px;min-height:44px}.text-link svg{width:18px;height:18px}.text-link:hover{color:var(--olive)}.member-note{display:block;font-size:8px;color:var(--muted);margin-top:10px}.details{display:grid;grid-template-columns:1fr 1.8fr;gap:70px;padding-block:16px 100px}.details h2{font:400 23px/1.7 var(--jp-serif);margin-top:18px}.detail-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{display:flex;align-items:center;justify-content:space-between;gap:15px;list-style:none;cursor:pointer;padding:22px 0;font-size:12px}summary::-webkit-details-marker{display:none}summary>span{font-size:20px;font-weight:300;transition:transform .2s}details[open] summary>span{transform:rotate(45deg)}details>div{font-size:11px;line-height:2;color:var(--muted);padding:0 20px 23px 0}details p+p{margin-top:12px}details ul{padding-left:18px}details li{margin-block:6px}.closing{background:var(--sage);text-align:center;position:relative;overflow:hidden}.closing .eyebrow{color:var(--olive)}.closing-title{display:flex;justify-content:center;align-items:center;gap:20px;font:italic 80px/1 var(--serif);letter-spacing:-.04em;margin:30px 0 20px}.closing-title>span{font:170px/.9 var(--serif);letter-spacing:-.06em;margin:0 12px 0 0}.closing h2{font:400 26px/1.7 var(--jp-serif);letter-spacing:.07em}.closing p:not(.eyebrow){font-size:12px;line-height:2.2;margin:20px 0 29px}.closing .button{min-width:300px}.closing-date{display:flex;justify-content:center;align-items:baseline;gap:10px;margin-top:25px;font:23px var(--serif)}.closing-date .date-year{font-size:15px}.site-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-block:40px}.footer-brand>span{font:23px var(--serif)}.site-footer>div{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:5px 22px;font-size:9px;color:var(--muted)}.site-footer>div>small{width:100%;text-align:right;font-size:8px;margin-top:6px}.back-top{border:1px solid var(--line);display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;font-size:20px}.mobile-shop{display:none}.mobile-break{display:none}.error-page{min-height:100vh;display:grid;place-items:center;padding:30px}.error-page h1{font-size:26px;margin-top:25px}.error-page p{margin-block:20px}.reveal{opacity:1}.motion-ready .reveal{opacity:0;transform:translateY(20px);transition:opacity .65s ease,transform .65s ease}.motion-ready .reveal.is-visible{opacity:1;transform:none}.step-card:nth-child(2){transition-delay:.09s}.step-card:nth-child(3){transition-delay:.18s}@keyframes draw-orbit{to{stroke-dashoffset:0}}
@media(min-width:1450px){.hero{min-height:730px}.hero-art{height:640px}.hero-copy{padding-top:38px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.hero{min-height:640px;grid-template-columns:1.05fr .95fr}.hero-art{height:510px;margin-left:-60px}.hero-copy{padding-top:5px}.hero-down{margin:10px 0 0;display:flex;width:max-content}.art-caption{right:0}.anniversary-seal{width:98px;height:98px;right:0;bottom:80px}.benefit-overview>a{padding-inline:24px}.benefit-overview .overview-gift{font-size:29px}.overview-gift small{font-size:12px}.benefit-cards{gap:20px}.coupon-card,.points-card{padding:26px 24px 20px}.coupon-ticket:before{left:-34px}.coupon-ticket:after{right:-34px}.step-cards{gap:16px}.step-topline{padding-inline:16px}.step-topline>span:last-child{font-size:7px;letter-spacing:0}.step-card h3{padding-inline:16px}.step-card h3 strong{font-size:48px}.step-visual{margin-inline:12px;height:170px}.step-bottom{padding-inline:16px}.product-grid{gap:24px}.details{gap:35px}.closing-title{font-size:68px}}
@media(max-width:799px){.wrap{width:calc(100% - 40px)}.section-pad{padding-block:72px}.announcement{font-size:8px;letter-spacing:.12em}.announcement span{font-size:8px;margin-left:12px}.site-header{height:86px}.brand{gap:9px}.brand>img{width:38px;height:38px}.brand>span{font-size:24px}.brand small{font-size:6px;letter-spacing:.1em}.brand-chevrons{font-size:14px}.site-header nav{gap:18px}.site-header nav>a:not(.nav-shop){display:none}.nav-shop{font-size:8px;gap:9px}.nav-shop svg{width:14px}.hero{grid-template-columns:1fr 1fr;min-height:570px;padding-top:28px;padding-bottom:25px}.hero-copy{padding-top:0;grid-column:1/-1}.hero-copy>.eyebrow{font-size:9px}.hero-anniversary{margin-top:25px;font-size:10px}.hero-anniversary strong{font-size:35px}.hero-japanese{font-size:43px;line-height:1.5;letter-spacing:.05em;margin-top:22px}.hero-description{font-size:11px;line-height:2;margin-top:19px}.hero-art{position:absolute;right:-5px;top:42px;width:52%;height:335px;margin:0;pointer-events:none;z-index:-0}.hero-copy{pointer-events:none}.hero-copy a{pointer-events:auto}.hero-anniversary{position:relative;z-index:1;width:max-content}.hero-japanese{position:relative;width:max-content;z-index:1}.art-caption{font-size:6px;right:5%;top:17px}.anniversary-seal{width:66px;height:66px;right:0;bottom:33px;box-shadow:0 0 0 4px var(--paper),0 0 0 5px var(--lime)}.anniversary-seal strong{font-size:36px}.anniversary-seal span{font-size:4px}.art-footer{display:none}.campaign-date{margin:29px 0 21px;gap:9px}.campaign-date time{font-size:31px}.date-year{font-size:18px}.days-label{font-size:8px;margin-left:4px}.hero .button{min-width:275px}.hero-down{display:inline-flex;margin:0 0 0 19px;font-size:10px}.benefit-overview{padding-block:19px;gap:0}.benefit-overview>a{padding:0 18px}.overview-label{font-size:7px;letter-spacing:.1em;margin-bottom:10px}.benefit-overview strong{font-size:14px}.benefit-overview strong>span{font-size:34px}.benefit-overview .overview-gift{font-size:23px}.overview-gift small{font-size:11px;display:block;margin-left:0;margin-top:2px}.benefit-overview a>span:last-child{font-size:8px;line-height:1.6;gap:5px;min-height:26px}.benefit-overview svg{width:15px;flex-shrink:0}.gratitude{padding-block:73px}.gratitude h2{font-size:26px;letter-spacing:.04em;margin:19px 0 23px}.gratitude>p:not(.eyebrow){font-size:12px;line-height:2.2}.gratitude-flower{right:1%;top:39px;font-size:40px}.gratitude-signature{font-size:22px;margin-top:25px}.section-heading{display:block;margin-bottom:30px}.section-heading .eyebrow{font-size:9px;margin-bottom:15px}.section-heading h2{font-size:30px}.section-heading h2 .serif-en{font-size:49px;margin-top:4px}.section-heading>p{margin-top:21px}.benefit-cards{gap:18px}.coupon-card,.points-card{padding:22px 19px}.card-topline{font-size:8px;gap:5px;flex-wrap:wrap}.small-tag{font-size:8px}.benefit-cards h3{font-size:12px}.coupon-value strong{font-size:115px}.coupon-value>span{font-size:18px}.coupon-value b{font-size:25px}.coupon-ticket{gap:8px;padding-top:17px}.coupon-ticket:before{left:-29px}.coupon-ticket:after{right:-29px}.coupon-ticket code{font-size:20px}.copy-button{font-size:9px}.points-value{height:203px;gap:8px}.points-value>strong{font-size:192px}.points-value>span{font-size:11px}.points-value>b{font-size:24px}.points-message{font-size:18px;padding-top:19px}.fine-print{font-size:9px}.gifts .section-heading h2{font-size:32px}.gifts .section-heading>div:last-child{margin-top:24px}.gift-intro{font-size:40px;display:none}.gift-basis{font-size:9px}.step-cards{grid-template-columns:1fr;gap:22px;margin-top:30px;padding-left:25px;border-left:1px solid #615b75;margin-left:8px}.step-card--1,.step-card--2{margin-top:0}.step-card:before{content:'';position:absolute;left:-31px;top:26px;width:10px;height:10px;background:var(--lime);border-radius:50%;box-shadow:0 0 0 6px var(--ink)}.step-card{display:grid;grid-template-columns:1fr 1fr}.step-topline{grid-column:1/-1;padding:12px 20px}.step-topline>span:last-child{font-size:8px;letter-spacing:.07em}.step-card h3{grid-column:1/-1;padding:19px 20px 14px}.step-card h3 strong{font-size:54px}.step-card h3>span{display:inline;font-size:11px}.step-visual{margin:0 0 22px 20px;height:180px}.step-bottom{padding:10px 20px 18px}.step-caption{font-size:9px}.gift-names{font-size:11px;min-height:75px}.gift-count{font-size:8px;padding-top:10px;margin-top:10px}.gift-note{font-size:10px;justify-content:flex-start;gap:10px}.gift-checker{grid-template-columns:1fr;padding:20px;gap:17px}.gift-checker label{font-size:12px}.gift-checker form{gap:10px}.gift-result{font-size:10px}.gift-cta{flex-direction:column;gap:15px;margin-top:30px}.gift-cta .button{min-width:270px}.product-grid{gap:20px}.products .section-heading h2{font-size:25px}.product-number{width:30px;height:30px;font-size:23px;top:9px;left:9px}.product-label{font-size:7px;letter-spacing:.06em}.product-card h3{font-size:12px;min-height:66px}.product-description{font-size:10px;min-height:100px;margin-top:10px}.placeholder-mark{font-size:80px}.product-placeholder{padding:15px}.product-placeholder>span:first-child{font-size:11px}.product-placeholder>span:last-child{font-size:5px}.member-note{font-size:8px}.details{grid-template-columns:1fr;gap:25px;padding-bottom:70px}.details .eyebrow{font-size:9px}.details h2{font-size:25px;margin-top:12px}.closing-title{font-size:51px;gap:12px;margin:27px 0}.closing-title>span{font-size:120px;margin-right:5px}.closing h2{font-size:23px;letter-spacing:.03em}.closing p:not(.eyebrow){font-size:11px}.site-footer{flex-wrap:wrap;padding-block:32px 90px;gap:25px}.footer-brand>span{font-size:21px}.site-footer>div{order:3;width:100%;justify-content:flex-start;gap:8px 20px}.site-footer>div>small{text-align:left}.mobile-shop{position:fixed;display:flex;align-items:center;justify-content:space-between;gap:15px;bottom:0;left:0;right:0;z-index:5;padding:10px 20px calc(10px + env(safe-area-inset-bottom));background:rgba(247,245,238,.97);border-top:1px solid var(--line);transform:translateY(110%);visibility:hidden;transition:transform .25s,visibility .25s}.mobile-shop.is-visible{transform:translateY(0);visibility:visible}.mobile-shop>span{font:22px/1.05 var(--serif)}.mobile-shop>span>small{display:block;font:7px var(--sans);letter-spacing:.08em;margin-top:5px}.mobile-shop .button{min-height:44px;padding:10px 15px;font-size:10px;gap:17px}.mobile-shop .button svg{width:17px}.desktop-break{display:none}}
@media(max-width:540px){.hero{min-height:558px}.hero-art{width:56%;right:-7px;top:84px;height:295px}.hero-japanese{font-size:37px;margin-top:27px}.hero-description{margin-top:18px;font-size:11px}.hero-anniversary strong{font-size:36px}.hero-down{display:flex;margin:8px 0 0;min-height:36px;gap:16px}.hero .button{width:100%;min-height:53px}.campaign-date{gap:8px;margin-top:25px;margin-bottom:18px}.campaign-date time{font-size:29px}.campaign-date time small{font-size:8px;margin-left:4px}.days-label{margin-left:auto;font-size:7px;padding:3px 4px}.date-year{font-size:16px}.anniversary-seal{bottom:36px;right:4px;width:60px;height:60px}.art-caption{display:none}.benefit-overview>a{padding:0 12px}.benefit-overview>a:last-child{padding-right:0}.benefit-overview strong{font-size:11px;white-space:nowrap}.benefit-overview strong>span{font-size:32px}.benefit-overview .overview-gift{font-size:23px;white-space:normal}.overview-gift small{font-size:10px;margin-top:1px}.benefit-overview a>span:last-child{font-size:7px;line-height:1.7}.benefit-overview svg{display:none}.gratitude .eyebrow{font-size:9px}.gratitude h2{font-size:24px}.gratitude>p:not(.eyebrow){font-size:11px}.mobile-break{display:block}.benefit-cards{grid-template-columns:1fr}.coupon-card,.points-card{padding:25px 25px 22px}.card-topline{font-size:9px;flex-wrap:nowrap}.small-tag{font-size:8px}.benefit-cards h3{font-size:13px;margin-top:24px}.coupon-value strong{font-size:143px;line-height:1.1}.coupon-value>span{font-size:22px}.coupon-value b{font-size:31px}.coupon-ticket{column-gap:18px;padding-top:19px}.coupon-ticket:before{left:-35px}.coupon-ticket:after{right:-35px}.coupon-ticket code{font-size:23px}.copy-button{font-size:10px;min-height:40px}.fine-print{font-size:9px}.points-value{height:210px}.points-value>strong{font-size:225px}.points-value>span{font-size:13px}.points-value>b{font-size:30px}.points-message{font-size:22px}.step-cards{padding-left:18px}.step-card:before{left:-24px}.step-card{display:block}.step-topline{padding-inline:20px}.step-card h3{padding-top:20px}.step-card h3 strong{font-size:59px}.step-card h3>span{font-size:10px}.step-visual{margin:8px 20px 0;height:190px}.step-bottom{padding:19px 20px 22px}.step-caption{font-size:10px}.gift-names{font-size:13px;min-height:0}.gift-plus{font-size:12px;padding:2px 0}.gift-count{font-size:9px;margin-top:14px}.gift-checker{padding:19px 16px}.gift-checker label{font-size:11px}.gift-checker .button{gap:8px}.product-grid{grid-template-columns:1fr;gap:32px}.product-card{display:grid;grid-template-columns:130px 1fr;gap:0 20px;align-items:start}.product-photo{grid-row:1/6;aspect-ratio:1;margin:0}.product-number{font-size:18px;width:24px;height:24px;left:7px;top:7px}.product-label{font-size:7px;margin:2px 0 7px}.product-card h3{font-size:13px;line-height:1.7;min-height:0}.product-card h3 small{font-size:10px}.product-description{font-size:10px;min-height:0;margin:11px 0 7px}.text-link{font-size:10px}.member-note{grid-column:2;font-size:8px}.product-placeholder>span:first-child{font-size:9px}.placeholder-mark{font-size:61px}.product-placeholder>span:last-child{font-size:5px;letter-spacing:.04em}.product-placeholder{padding:8px}.closing-title{font-size:36px;gap:11px}.closing-title>span{font-size:103px}.closing h2{font-size:20px}.closing .button{min-width:0;width:100%}.closing-date{font-size:21px}.closing-date .date-year{font-size:14px}.footer-brand>span{font-size:21px}.section-heading>p{font-size:11px}.products .section-heading h2{font-size:24px}}
@media(max-width:359px){.wrap{width:calc(100% - 32px)}.announcement{font-size:7px}.announcement span{margin-left:7px;font-size:7px}.brand>span{font-size:21px}.brand small{font-size:5px}.nav-shop{font-size:7px}.hero-japanese{font-size:32px}.hero-art{top:110px;height:280px}.hero-anniversary strong{font-size:32px}.campaign-date{gap:5px}.campaign-date time{font-size:26px}.days-label{font-size:6px}.benefit-overview .overview-gift{font-size:20px}.benefit-overview>a{padding-inline:9px}.product-card{grid-template-columns:105px 1fr;gap:0 15px}.closing-title{font-size:31px}.closing-title>span{font-size:91px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.orbit-line{stroke-dashoffset:0}.motion-ready .reveal{opacity:1;transform:none}}

@media(max-width:540px){.gifts .section-heading h2{font-size:28px}.products .section-heading h2{font-size:22px}.hero-description{font-size:12px}.gratitude>p:not(.eyebrow){font-size:12px}.fine-print{font-size:11px}.points-card .fine-print{font-size:11px}.gift-basis,.gift-note,.gift-result{font-size:11px}.product-description,details>div{font-size:12px}.member-note{font-size:10px}.closing p:not(.eyebrow){font-size:12px}}

/* Confirmed campaign offers and image layouts. */
.points-eligibility{font-size:12px;line-height:1.9;text-align:center;margin:18px auto 10px;max-width:32em;color:var(--paper)}
.points-links{display:flex;flex-wrap:wrap;justify-content:center;gap:4px 22px;font-size:12px;color:var(--lime)}
.points-links a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:5px}
.step-visual--set{gap:5px;padding:10px 8px 26px;background:#f2f1ea}
.step-visual--set .product-image{flex:1 1 0;width:0;min-width:0;height:100%;object-fit:contain}
.step-visual--set .pair-plus{flex:none;font-size:13px}
.product-photo .product-image--illustration{object-fit:contain;padding:16px;background:#fff}
.gift-image-note{display:inline-block;font-size:11px;margin-top:8px;font-weight:400}
.product-image-note{font-size:11px;color:var(--muted);margin-top:26px;line-height:1.9}
.detail-link{display:inline-block;margin-top:12px;text-decoration:underline;text-underline-offset:4px}
.benefit-cards>article{min-width:0}
@media(max-width:359px){.card-topline{flex-wrap:wrap}.coupon-value strong{font-size:132px}}
@media(max-width:540px){.product-photo .product-image--illustration{padding:6px}.product-image-note{font-size:11px}.points-eligibility{font-size:12px}}

/* The optional membership guide uses the same palette without campaign JS. */
.guide-back{font-size:12px;text-decoration:underline;text-underline-offset:5px}
.membership-guide{max-width:860px;padding-block:72px}
.guide-intro{position:relative;padding-bottom:48px;border-bottom:1px solid var(--line)}
.guide-intro .eyebrow,.membership-guide section>.eyebrow{color:var(--olive)}
.guide-free{display:inline-block;background:var(--sage);font-size:12px;padding:5px 12px;margin-top:24px}
.guide-intro h1{font-size:clamp(28px,4.5vw,44px);font-weight:500;line-height:1.6;letter-spacing:.03em;margin-block:20px}
.guide-intro>p:not(.eyebrow){font-size:14px;line-height:2;color:var(--muted)}
.guide-intro .button{margin-top:28px}
.membership-guide h2{font-size:22px;font-weight:500;line-height:1.7;margin:14px 0 24px}
.guide-registration,.guide-points{padding-top:48px}
.guide-steps{list-style:none;margin:0;padding:0}
.guide-steps li{display:flex;gap:26px;padding:26px 0;border-bottom:1px solid var(--line)}
.guide-step-number{font:48px/1 var(--serif);color:var(--olive);min-width:50px}
.guide-steps h3{font-size:16px;font-weight:500;margin-bottom:10px}
.guide-steps p,.guide-registration-note,.guide-points>p:not(.eyebrow){font-size:13px;line-height:2;color:var(--muted)}
.guide-steps p+p{margin-top:8px}
.guide-steps a{color:var(--ink);text-decoration:underline;text-underline-offset:4px}
.guide-steps strong{color:var(--ink)}
.guide-registration-note{margin-top:20px;background:var(--sage);padding:18px 22px}
.guide-points>.text-link{width:fit-content;font-size:13px;margin-block:16px 28px}
.guide-sources{margin-top:32px;padding:24px;background:#eeeee3;font-size:12px}
.guide-sources>p{margin-bottom:8px}
.guide-sources a{display:block;width:fit-content;line-height:2;padding-block:7px;text-decoration:underline;text-underline-offset:4px}
.guide-return{display:flex;align-items:center;flex-wrap:wrap;gap:22px;margin-top:40px}
.guide-return>a:not(.button){font-size:12px;text-decoration:underline;text-underline-offset:5px}
.guide-footer{display:flex;justify-content:space-between;gap:16px;padding-block:24px;border-top:1px solid var(--line);font-size:10px;color:var(--muted)}
@media(max-width:540px){.membership-page .site-header{height:auto;min-height:100px;flex-wrap:wrap;padding-block:16px;gap:16px}.guide-back{font-size:11px}.membership-guide{padding-block:44px}.guide-intro{padding-bottom:36px}.guide-intro>p:not(.eyebrow){font-size:13px}.membership-guide h2{font-size:20px}.guide-steps li{gap:14px}.guide-step-number{font-size:36px;min-width:34px}.guide-steps h3{font-size:15px}.guide-steps p{font-size:13px}.guide-registration-note,.guide-sources{padding:16px}.guide-return{align-items:stretch;flex-direction:column}.membership-guide .button{font-size:12px;padding-inline:20px}}
