.rf-store-section{max-width:1120px;margin:0 auto;padding:76px 30px;color:#404040;scroll-margin-top:130px}
.rf-store-section h2{color:#81785e;font-size:34px;line-height:1.6;font-weight:400;letter-spacing:.08em;margin:0 0 28px}
.rf-store-section h3{color:#81785e;font-size:22px;line-height:1.6;font-weight:400;margin:0 0 14px}
.rf-store-section p,.rf-store-section li,.rf-store-section dd,.rf-store-section td,.rf-store-section th{font-family:"Noto Sans JP",sans-serif;font-size:15px;line-height:1.95;letter-spacing:.03em;overflow-wrap:anywhere}
.rf-store-section .rf-store-eyebrow{font-family:"EB Garamond",serif;color:#81785e;letter-spacing:.16em;font-size:15px;margin:0 0 10px}
.rf-store-lead{max-width:820px;margin:0 0 28px}
.rf-store-facts{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #c9bfad;border-bottom:1px solid #c9bfad;margin:28px 0}
.rf-store-facts>div{padding:24px 0}.rf-store-facts>div+div{padding-left:30px;border-left:1px solid #dfd8cc}
.rf-store-facts dt{color:#81785e;font-size:16px;margin-bottom:8px}.rf-store-facts dd{margin:0}
.rf-store-actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center;margin-top:28px}
.rf-store-link{display:inline-flex;align-items:center;justify-content:center;gap:20px;border:1px solid #81785e;padding:15px 24px;color:#81785e;min-height:54px;line-height:1.6;font-family:"Noto Sans JP",sans-serif;font-size:14px;text-decoration:none;transition:background .25s,color .25s}
.rf-store-link:hover,.rf-store-link:focus-visible{background:#ece7dc;color:#645b43}
.rf-store-link-primary{color:#fff;background:#81785e}.rf-store-link-primary:hover,.rf-store-link-primary:focus-visible{background:#69604b;color:#fff}
.rf-store-link img{width:24px;height:24px;flex:none;filter:brightness(0) saturate(100%) opacity(.55)}.rf-store-link-primary img{filter:brightness(0) invert(1)}
.rf-store-menu-wrap{scroll-margin-top:130px}
.rf-store-nav{display:flex;gap:10px 24px;flex-wrap:wrap;margin-top:28px;padding-top:20px;border-top:1px solid #dfd8cc}
.rf-store-nav a{color:#81785e;font-family:"Noto Sans JP",sans-serif;font-size:14px;line-height:1.8;text-decoration:underline;text-underline-offset:5px}
.rf-store-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}
.rf-store-menu-card{border-top:1px solid #c9bfad;padding:24px 0 8px;min-width:0}
.rf-store-menu-card p{margin:0 0 16px}.rf-store-menu-card .rf-store-link{padding:10px 18px;min-height:46px}
.rf-store-menu-note{margin:28px 0 0;color:#675f50;font-size:13px!important}
.rf-store-table{width:100%;border-collapse:collapse;table-layout:fixed}.rf-store-table th,.rf-store-table td{border:0;border-bottom:1px solid #dfd8cc;text-align:left;padding:20px 14px;vertical-align:top;background:transparent!important;color:#404040}
.rf-store-table th{width:23%;font-weight:400;color:#81785e}.rf-store-table a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.rf-store-map{display:block;width:100%;height:340px;border:0;margin-top:30px;background:#f0ece4}
.rf-store-route{margin-top:24px}.rf-store-route ul{padding-left:20px}.rf-store-route li+li{margin-top:10px}
.rf-store-faq details{border-bottom:1px solid #c9bfad;padding:22px 0}.rf-store-faq summary{font-size:19px;line-height:1.7;color:#81785e;cursor:pointer;list-style-position:inside}.rf-store-faq details[open] summary{margin-bottom:18px}.rf-store-faq p{margin:0 0 12px}
.rf-store-brand-label{margin-top:50px;padding-bottom:10px;border-bottom:1px solid #dfd8cc}
.rf-store-common-gallery .gallery-section{margin-top:20px}.rf-store-common-gallery .rf-store-section{padding-bottom:0}
.rf-store-section :where(a,summary):focus-visible{outline:2px solid #81785e;outline-offset:5px}
.rf-store-phrase{display:inline-block}.rf-store-title-break{display:block}
@media(max-width:780px){.rf-store-section{padding:48px 22px;scroll-margin-top:92px}.rf-store-section h2{font-size:26px;letter-spacing:.04em}.rf-store-section h3{font-size:20px}.rf-store-facts{grid-template-columns:1fr}.rf-store-facts>div{padding:20px 0}.rf-store-facts>div+div{padding-left:0;border-left:0;border-top:1px solid #dfd8cc}.rf-store-menu-grid{grid-template-columns:1fr;gap:12px}.rf-store-actions{align-items:stretch}.rf-store-link{width:100%;justify-content:space-between}.rf-store-table th{width:27%}.rf-store-table th,.rf-store-table td{padding:16px 8px;font-size:13px}.rf-store-map{height:280px}.rf-store-nav{gap:12px 20px}.rf-store-faq summary{font-size:17px}}
@media(prefers-reduced-motion:reduce){.rf-store-link{transition:none}}

/* Store-menu feedback, 2026-10-31. */
.rf-store-menu-wrap .rf-store-course-table{width:100%;border-collapse:collapse;font:14px/1.8 "Noto Sans JP",sans-serif;background:transparent;margin:14px 0 8px;table-layout:auto}
.rf-store-menu-wrap .rf-store-course-table th,.rf-store-menu-wrap .rf-store-course-table td{border-top:1px solid #ded8cc;padding:10px 12px;text-align:left;vertical-align:top;overflow-wrap:anywhere}
.rf-store-menu-wrap .rf-store-course-table th{color:#81785e;font-weight:400}.rf-store-menu-wrap .rf-store-course-table a{border-bottom:1px solid #c9bfad;color:#81785e}
.rf-store-menu-wrap .rf-store-extra-menus,.rf-store-menu-wrap .rf-store-pilates-cards{width:100%;max-width:1120px;margin:0 auto}
.rf-store-menu-wrap .rf-store-extra-menus h3{font-size:26px;line-height:1.7;color:#81785e;margin-bottom:24px}
.rf-store-menu-wrap .rf-store-pilates-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:54px}
.rf-store-menu-wrap .rf-store-pilates-card{min-width:0}.rf-store-menu-wrap .rf-store-pilates-card>img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover}
.rf-store-menu-wrap .rf-store-pilates-card .menu-item-desc{padding-top:24px}.rf-store-menu-wrap .rf-store-pilates-card h3{font-size:22px;line-height:1.8;color:#81785e}
.rf-store-menu-wrap .rf-store-price-note{max-width:1120px;width:100%;font:13px/1.9 "Noto Sans JP",sans-serif;color:#555}
@media(max-width:650px){.rf-store-menu-wrap .rf-store-pilates-cards{grid-template-columns:1fr;gap:40px}.rf-store-menu-wrap .rf-store-course-table{font-size:12px}.rf-store-menu-wrap .rf-store-course-table th,.rf-store-menu-wrap .rf-store-course-table td{padding:9px 7px}.rf-store-menu-wrap .rf-store-extra-menus h3{font-size:21px}.rf-store-menu-wrap .menu-price{letter-spacing:.03em;font-size:22px;line-height:1.7}}
