.mobile-photo{display:contents}
nav[hidden]{display:none!important}
a:focus-visible,button:focus-visible{outline:2px solid #6d6949;outline-offset:5px}
@media(min-width:1001px){.menu-toggle{display:none}.draft-section{height:var(--height)}}
@media(max-width:1000px){
 html,body{min-width:0;width:100%}
 main.stage{width:100%;max-width:680px;container-type:inline-size}
 main.stage>.section{height:auto}
 .section{padding-left:24px;padding-right:24px}
 header,.draft-header{position:relative;inset:auto;z-index:5;order:0;width:100%;height:auto;padding:24px 0 30px;gap:12px}
 header .brand,.draft-header .brand{font-size:20px;letter-spacing:.1em;white-space:nowrap}
 header .menu-toggle{display:block;flex-shrink:0;font-family:inherit;font-size:11px;padding:8px 7px;border:1px solid #a89a7a;background:transparent;color:inherit;min-height:40px}
 header nav,.draft-header nav{position:absolute;right:0;left:auto;top:74px;width:240px;padding:24px;background:#f7f3ea;box-shadow:0 6px 18px #49342920;display:flex;flex-direction:column;gap:0;font-size:16px;letter-spacing:.05em}
 header nav a{display:block;padding:14px 0}
 .hero h1{font-size:clamp(24px,6.8vw,32px)}
 .about h2{font-size:28px}
 .section .copy p,.section.about .copy p{font-size:16px;line-height:2;letter-spacing:.03em;margin-top:24px}
 .section .watercolor-cta,.section .watercolor-cta .label{font-size:21px}
 .draft-section{width:100%;height:auto!important;padding:54px 24px;overflow:hidden}
 .draft-section h1,.draft-section h2,.draft-section.intro-photo h1,.draft-section .right-copy h2,.draft-section.gift-left.long h2,.wrap-right h2,.reservation-full h2,.info-map h2{font-size:28px;line-height:1.85;letter-spacing:.04em}
 .draft-section h3{font-size:21px;line-height:1.8;letter-spacing:.03em}
 .draft-section p,.draft-section .text-area p,.draft-section .intro-copy p{font-size:16px;line-height:2;letter-spacing:.03em;width:100%;max-width:none}
 .draft-section.photo-right,.draft-section.photo-left,.draft-section.gift-left,.draft-section.tart-left,.draft-section.wrap-right{display:flex;flex-direction:column;padding-bottom:32px}
 .draft-section .text-area,.draft-section .text-area.right-copy,.draft-section.photo-left .text-area,.draft-section.intro-photo .text-area,.draft-section.wrap-right .text-area{position:static;left:auto;top:auto;width:100%;order:1}
 .draft-section .text-area>p{margin-top:22px}
 .draft-section .watercolor-cta,.draft-section.gift-left.long .watercolor-cta{width:292px;max-width:100%;margin:24px auto 0}
 .draft-section .watercolor-cta .label{font-size:21px}
 .draft-section .watercolor-cta .phone{font-size:14px}
 .draft-section .mobile-photo{display:block;position:relative;overflow:hidden;isolation:isolate;order:2;width:calc(100% + 48px);margin:28px -24px 0;aspect-ratio:1/1}
 .draft-section .mobile-photo .scene-bg{position:absolute;inset:auto;top:0;right:0;left:auto;width:auto;max-width:none;height:100%;min-height:0;object-fit:contain;z-index:0}
 .draft-section.photo-left .mobile-photo .scene-bg,.draft-section.gift-left .mobile-photo .scene-bg,.draft-section.tart-left .mobile-photo .scene-bg{left:0;right:auto}
 .draft-section.gift-left .mobile-photo{aspect-ratio:880/992}
 .draft-section .mobile-photo .gift-patch{display:none}
 .draft-section.wrap-right .wrap-photo{position:relative;inset:auto;order:2;width:calc(100% + 48px);height:auto;aspect-ratio:1/1;margin:28px -24px 0;mask-image:none;z-index:0}
 .wrap-right .wrap-photo img{height:100%;width:auto;right:0}
 .draft-section.intro-photo{padding-top:0}
 .draft-section.intro{padding-top:0;padding-bottom:40px}
 .draft-section.intro .intro-copy{padding:28px 0 0}
 .draft-section.intro .intro-copy h1{font-size:28px}
 .draft-section.intro p{margin-top:22px}
 .draft-section.intro::after{left:24px;right:24px}
 .draft-section .product-detail{margin-top:22px;padding-top:20px;border-width:1px}
 .draft-section .product-detail .price{font-size:20px;margin-top:6px}
 .draft-section .text-area .cta-context{font-size:15px;margin-top:22px}
 .reservation-band{display:block;border-width:1px}
 .reservation-band p{margin-top:22px}
 .reservation-full .reservation-content{display:block;margin-top:22px}
 .reservation-full .cta-context{font-size:15px;margin-top:22px}
 .news,.faq{display:block}
 .news ul,.faq dl{margin-top:28px}
 .news li{display:block;font-size:17px;line-height:1.9;padding:20px 0;border-width:1px}
 .news time{display:block;font-size:14px;letter-spacing:.06em;margin-bottom:5px}
 .faq .faq-item{padding:0 0 24px;margin:0 0 24px;border-width:1px}
 .faq dt{font-size:18px;line-height:1.9}
 .faq dd{font-size:16px;line-height:2;margin:12px 0 0}
 .notice h2{font-size:23px}
 .notice p{margin-top:22px}
 .products .lead{margin-top:22px}
 #sweets-02 .product-grid{display:grid;grid-template-columns:1fr;grid-template-rows:none;gap:38px;margin-top:30px}
 #sweets-02 .product-card,#sweets-02 .product-card:first-child{grid-row:auto;width:100%;margin:0;transform:none;align-self:start;justify-self:center;max-width:400px}
 #sweets-02 .product-card img{width:100%;height:auto;aspect-ratio:308/326;object-fit:cover}
 #sweets-02 .product-card:first-child img{height:auto;aspect-ratio:560/620;object-position:50% 48%}
 #sweets-02 .product-card figcaption,#sweets-02 .product-card:first-child figcaption{padding:12px 0 0}
 #sweets-02 .product-card h3,#sweets-02 .product-card:first-child h3{font-size:19px;letter-spacing:.01em;line-height:1.8}
 #sweets-02 .product-card .price{font-size:17px;margin-top:4px}
 .info-map{display:block}
 .info-map .info-items{margin-top:22px}
 .info-map li{font-size:16px;line-height:2;padding:12px 0;border-width:1px}
 .info-map .supplement,.info-map .access p{font-size:16px;margin-top:22px}
 .info-map .access{margin-top:44px}
 .info-map .map{width:100%;height:330px;margin-top:24px}
 .common-footer{padding:34px 24px;border-width:1px}
 .common-footer .copyright{font-size:14px;letter-spacing:.06em}
 .common-footer .demo-note{font-size:12px;line-height:1.9;margin-top:16px;max-width:none}
}

.mobile-break{display:none}
@media(max-width:1000px){
 .mobile-break{display:block}
 .draft-section.intro-photo .text-area>p{width:100%}
 #visit-01 .intro-copy h1,#visit-03 h2{font-size:clamp(23px,6.45vw,28px)}
 .info-map li,.faq dt,.faq dd{text-wrap:pretty}
}
@media(max-width:1000px){#visit-03 h2{font-size:clamp(22px,6.1vw,26px)}}
