/*
Theme Name: MHT 店舗サイト
Author: MHT
Description: 音声AIの変更案と確認済み店舗データを安全に表示する店舗用ブロックテーマ。
Version: 0.10.0
Requires at least: 6.6
Requires PHP: 8.2
Text Domain: mht-store-theme
*/
:root{--mht-background:#f8f6f1;--mht-surface:#fff;--mht-text:#223129;--mht-primary:#245a47;--mht-primary-text:#fff;--mht-accent:#c78a4a;--mht-border:#d9ded7;--mht-width:1120px;--mht-radius:12px;--mht-body-font:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;--mht-heading-font:"Yu Mincho","Hiragino Mincho ProN",Georgia,serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--mht-background);color:var(--mht-text);font:400 1rem/1.8 var(--mht-body-font);overflow-wrap:anywhere}
a{color:var(--mht-primary);text-underline-offset:.18em}
a:hover{text-decoration-thickness:2px}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--mht-accent);outline-offset:3px}
img{max-width:100%;height:auto}
button,input,textarea{font:inherit}
.mht-skip{position:absolute;left:-9999px;top:0;z-index:1000;padding:12px 18px;background:var(--mht-surface);color:var(--mht-text)}
.mht-skip:focus{left:12px}
.mht-container,.mht-header-inner,.mht-footer-inner{width:min(calc(100% - 40px),var(--mht-width));margin-inline:auto}
.mht-site-header{position:relative;z-index:20;margin:0!important;background:var(--mht-surface);border-bottom:1px solid var(--mht-border)}
.mht-header-inner{min-height:82px;display:flex;align-items:center;gap:28px}
.mht-brand{font:700 clamp(1.1rem,2vw,1.45rem)/1.3 var(--mht-heading-font);color:var(--mht-text);text-decoration:none;max-width:28rem}
.mht-nav{display:flex;align-items:center;gap:clamp(12px,1.8vw,28px);margin-left:auto;flex-wrap:wrap}
.mht-nav a{color:var(--mht-text);font-size:.92rem;font-weight:600;text-decoration:none}
.mht-nav a:hover{text-decoration:underline}
.mht-header-cta,.mht-button{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:10px 22px;border-radius:var(--mht-radius);background:var(--mht-primary);color:var(--mht-primary-text);font-weight:700;text-decoration:none;line-height:1.4;transition:transform .2s,opacity .2s}
.mht-header-cta:hover,.mht-button:hover{color:var(--mht-primary-text);opacity:.9;transform:translateY(-1px)}
.mht-button-outline{background:transparent;color:var(--mht-primary);border:1px solid var(--mht-primary)}
.mht-button-outline:hover{color:var(--mht-primary)}
.mht-hero{width:min(calc(100% - 40px),calc(var(--mht-width) + 80px));min-height:470px;margin:36px auto 0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.92fr);background:var(--mht-primary);color:var(--mht-primary-text);border-radius:calc(var(--mht-radius) + 10px);overflow:hidden;align-items:stretch}
.mht-hero:not(:has(.mht-hero-image)){display:block}
.mht-hero-copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(32px,5vw,76px);text-align:var(--mht-hero-position)}
.mht-hero h1{font:700 clamp(2.35rem,5vw,4.8rem)/1.24 var(--mht-heading-font);margin:4px 0 20px;letter-spacing:.025em}
.mht-hero .mht-kicker{color:var(--mht-primary-text);opacity:.85}
.mht-lead{font-size:clamp(1.05rem,1.6vw,1.35rem);line-height:1.75;max-width:34rem;margin:0}
.mht-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}
.mht-hero .mht-button{background:var(--mht-surface);color:var(--mht-primary)}
.mht-hero .mht-button-outline{background:transparent;color:var(--mht-primary-text);border-color:currentColor}
.mht-hero-image{min-height:100%;background:var(--mht-border)}
.mht-hero-image img{width:100%;height:100%;object-fit:cover;display:block}
.mht-kicker{font-size:.78rem;font-weight:700;letter-spacing:.1em;color:var(--mht-primary);margin:0 0 10px}
.mht-section{padding:clamp(58px,8vw,112px) 0}
.mht-section h2,.mht-page-shell h1,.mht-page-shell h2{font-family:var(--mht-heading-font);line-height:1.3}
.mht-section h2{font-size:clamp(1.8rem,3vw,2.7rem);margin:0 0 28px}
.mht-section-head{display:flex;justify-content:space-between;align-items:end;gap:24px;margin-bottom:28px}
.mht-section-head h2{margin-bottom:0}
.mht-section-head>a,.mht-text-link{font-weight:700;white-space:nowrap}
.mht-readable{max-width:50rem;white-space:normal;font-size:1.06rem;line-height:2}
.mht-intro{border-bottom:1px solid var(--mht-border)}
.mht-soft{background:color-mix(in srgb,var(--mht-primary) 5%,var(--mht-background))}
.mht-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.mht-card{background:var(--mht-surface);border:1px solid var(--mht-border);border-radius:var(--mht-radius);padding:clamp(22px,3vw,32px);box-shadow:0 12px 34px rgba(16,33,23,.04)}
.mht-card h2,.mht-card h3{font:700 1.2rem/1.5 var(--mht-heading-font);margin:0 0 10px}
.mht-card p{margin:0 0 12px}
.mht-price{font-size:1.2rem;font-weight:700;color:var(--mht-primary)}
.mht-two-col{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(30px,6vw,90px)}
.mht-detail-list{margin:0;border-top:1px solid var(--mht-border)}
.mht-detail{display:grid;grid-template-columns:minmax(130px,30%) 1fr;gap:16px;padding:16px 0;border-bottom:1px solid var(--mht-border)}
.mht-detail dt{font-weight:700}
.mht-detail dd{margin:0;white-space:pre-line}
.mht-condition{display:block;color:color-mix(in srgb,var(--mht-text) 75%,white);font-size:.9rem;margin-top:3px}
.mht-news-list{border-top:1px solid var(--mht-border)}
.mht-news-item{display:grid;grid-template-columns:140px 1fr;gap:22px;padding:18px 0;border-bottom:1px solid var(--mht-border)}
.mht-news-item time{font-size:.88rem;white-space:nowrap}
.mht-news-item h3{font-size:1.05rem;margin:0}
.mht-faq{border-top:1px solid var(--mht-border);padding:17px 0}
.mht-faq:last-child{border-bottom:1px solid var(--mht-border)}
.mht-faq summary{cursor:pointer;font-weight:700;list-style-position:inside}
.mht-faq p{margin:12px 0 0;padding-left:22px}
.mht-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.mht-gallery img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:var(--mht-radius)}
.mht-page-shell{width:min(calc(100% - 40px),var(--mht-width));min-height:55vh;margin:0 auto!important;padding:clamp(50px,7vw,96px) 0}
.mht-page-title{font-size:clamp(2.1rem,4vw,3.5rem)!important;line-height:1.25;margin:0 0 42px}
.mht-page-shell h2{margin:42px 0 18px}
.mht-page-shell .mht-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.mht-contact{max-width:45rem}
.mht-post-row{border-bottom:1px solid var(--mht-border);padding:24px 0}
.mht-post-row h2{margin:6px 0 10px}
.mht-article{max-width:820px}
.mht-article .wp-block-post-featured-image img{border-radius:var(--mht-radius)}
.mht-site-footer{margin:0!important;background:var(--mht-text);color:var(--mht-background);padding:52px 0}
.mht-footer-inner{display:flex;justify-content:space-between;gap:32px}
.mht-footer-name{font:700 1.35rem var(--mht-heading-font)}
.mht-site-footer a{color:var(--mht-background)}
.mht-site-footer nav{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:26px}
@media(max-width:960px){.mht-header-inner{align-items:flex-start;flex-wrap:wrap;padding:18px 0}.mht-nav{order:3;flex-basis:100%;margin-left:0}.mht-hero{grid-template-columns:1fr 1fr;min-height:390px}.mht-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.mht-container,.mht-header-inner,.mht-footer-inner{width:min(calc(100% - 32px),var(--mht-width))}.mht-header-inner{gap:14px}.mht-header-cta{margin-left:auto}.mht-nav{gap:10px 18px;overflow:auto;flex-wrap:nowrap;white-space:nowrap;padding-bottom:4px}.mht-hero{width:100%;margin:0;display:flex;flex-direction:column-reverse;border-radius:0;min-height:0}.mht-hero-image{height:230px}.mht-hero-copy{padding:38px 22px 46px}.mht-hero h1{font-size:2.45rem}.mht-section{padding:58px 0}.mht-section-head{align-items:flex-start;flex-direction:column}.mht-card-grid,.mht-page-shell .mht-card-grid,.mht-two-col{grid-template-columns:1fr}.mht-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}.mht-news-item{grid-template-columns:1fr;gap:3px}.mht-detail{grid-template-columns:1fr;gap:1px}.mht-footer-inner{flex-direction:column}.mht-page-shell{width:calc(100% - 32px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.mht-button,.mht-header-cta{transition:none}}

.mht-shop-image{margin:0 0 30px}.mht-shop-image img{display:block;width:100%;max-height:520px;object-fit:cover;border-radius:var(--mht-radius)}



.mht-story-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.mht-story-card{padding:30px;background:var(--mht-surface);border:1px solid var(--mht-border);border-radius:var(--mht-radius)}
.mht-story-card h3{font:700 1.2rem/1.5 var(--mht-heading-font);margin:0 0 16px}
.mht-story-card p{margin:0;line-height:1.9}
.mht-amenities-section{background:var(--mht-primary);color:var(--mht-primary-text)}
.mht-amenities-section .mht-kicker,.mht-amenities-section .mht-text-link{color:var(--mht-primary-text)}
.mht-amenity-list{display:flex;flex-wrap:wrap;gap:12px;list-style:none;padding:0;margin:26px 0 30px}
.mht-amenity-list li{padding:11px 18px;border:1px solid currentColor;border-radius:999px;font-size:.92rem;font-weight:700}
.mht-journal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.mht-journal-card{background:var(--mht-surface);border:1px solid var(--mht-border);border-radius:var(--mht-radius);overflow:hidden}
.mht-journal-image{display:block;aspect-ratio:16/9;background:var(--mht-border)}
.mht-journal-image:empty{display:none}
.mht-journal-image img{display:block;width:100%;height:100%;object-fit:cover}
.mht-journal-body{padding:24px}
.mht-journal-body time{font-size:.8rem;opacity:.72}
.mht-journal-body h3{font:700 1.22rem/1.5 var(--mht-heading-font);margin:9px 0 12px}
.mht-journal-body h3 a{text-decoration:none}
.mht-journal-body p{margin:0 0 18px}
.mht-journal-more{font-weight:700}
.mht-article-next{display:flex;gap:16px;flex-wrap:wrap;margin-top:42px;padding-top:24px;border-top:1px solid var(--mht-border)}
@media(max-width:800px){.mht-story-grid{grid-template-columns:1fr}.mht-journal-grid{grid-template-columns:1fr}}

/* メニュー: 分類ごとに価格と説明を見比べられる一覧。 */
.mht-menu-intro{max-width:650px;margin:0 0 36px;font-size:18px;line-height:1.9}
.mht-menu-tax{font-size:13px;color:#697068}
.mht-menu-featured{margin:48px 0}
.mht-menu-featured>h2{font-size:22px;margin-bottom:22px}
.mht-menu-jump{display:flex;flex-wrap:wrap;gap:10px;padding:24px 0;border-top:1px solid #d9ddd3;border-bottom:1px solid #d9ddd3;margin:34px 0}
.mht-menu-jump a{display:inline-flex;align-items:center;gap:14px;padding:10px 14px;border-radius:50px;background:#edf0e7;text-decoration:none;font-size:14px}
.mht-menu-jump span{font-size:11px;color:#66725f}
.mht-menu-group{margin:50px 0;scroll-margin-top:130px}
.mht-menu-group-head{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid #334f3d;padding-bottom:15px}
.mht-menu-group h2{font-size:26px;margin:0}.mht-menu-group-head>span{font-size:13px;color:#6a7769}
.mht-menu-rows{display:grid;grid-template-columns:1fr 1fr;column-gap:48px}
.mht-menu-row{display:flex;justify-content:space-between;gap:16px;padding:25px 0;border-bottom:1px solid #dedfd6;min-width:0}
.mht-menu-row h3{font-size:17px;line-height:1.65;margin:0 0 7px}.mht-menu-row p{font-size:13px;line-height:1.9;color:#647063;margin:8px 0 0}
.mht-menu-row .mht-menu-row-price{font-family:Georgia,serif;font-size:21px;white-space:nowrap;color:#344d3e;margin-top:0;flex-shrink:0}
.mht-menu-row-price span{font-family:inherit;font-size:12px;margin-left:4px}
.mht-menu-temperature{font-size:10px;letter-spacing:.07em;border:1px solid #c9d2c3;border-radius:4px;padding:3px 8px;display:inline-block;color:#50674e}
.mht-menu-demo{border:1px solid #b7c6b2;border-radius:12px;margin:30px 0;background:#f1f5ec;overflow:hidden}
.mht-menu-demo>summary{cursor:pointer;padding:21px 24px;font-weight:600;font-size:15px;color:#294632}
.mht-menu-demo>summary span{font-size:10px;letter-spacing:.1em;background:#dce8d4;padding:5px 8px;border-radius:4px;margin-left:12px}
.mht-menu-demo-body{padding:0 24px 24px}.mht-menu-demo-body>p{font-size:14px}.mht-menu-demo-body>h2{font-size:24px}
@media(max-width:700px){.mht-menu-rows{grid-template-columns:1fr}.mht-menu-group{margin:35px 0}.mht-menu-group h2{font-size:23px}.mht-menu-row{gap:20px}.mht-menu-demo>summary{padding:18px;font-size:14px}.mht-menu-demo-body{padding:0 15px 18px}.mht-menu-demo>summary span{display:inline-block;margin-left:6px}}

.mht-page-shell .mht-menu-featured .mht-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.mht-menu-featured .mht-menu-image img{height:190px;width:100%;object-fit:cover}
.mht-menu-featured .mht-menu-card h3{font-size:17px}
.mht-menu-row:target{background:#e9eedf;outline:5px solid #e9eedf;scroll-margin-top:110px}
@media(max-width:700px){.mht-page-shell .mht-menu-featured .mht-card-grid{grid-template-columns:1fr}.mht-menu-featured .mht-menu-image img{height:200px}}

.mht-menu-detail-link{text-decoration:underline;text-decoration-color:#9daf97;text-underline-offset:5px}
.mht-menu-detail-link:hover{color:#47713a}.mht-menu-detail-link span{font-family:sans-serif;font-size:12px}
.mht-menu-search{display:flex;align-items:flex-end;gap:18px;flex-wrap:wrap;background:#ecf0e5;border-radius:10px;padding:20px;margin:30px 0}
.mht-menu-search label{font-size:12px;font-weight:600;flex:1;min-width:200px}
.mht-menu-search input,.mht-menu-search select{display:block;width:100%;min-height:45px;margin-top:7px;border:1px solid #b9c6b2;background:#fff;padding:10px;border-radius:5px;font:inherit;font-size:15px;color:inherit}
.mht-menu-search p{flex-basis:100%;font-size:12px;margin:0}
.mht-menu-group[hidden],.mht-menu-row[hidden],.mht-menu-featured[hidden]{display:none!important}
@media(max-width:700px){.mht-menu-search{padding:16px}.mht-menu-search label{min-width:100%;}}

.mht-collection-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:28px 0 42px}
.mht-collection-card{display:flex;flex-direction:column;gap:12px;border:1px solid #cbd5c4;padding:30px;background:#fffdf7;text-decoration:none;border-radius:9px;color:inherit}
.mht-collection-card h3{font-size:23px;margin:0}.mht-collection-card p{font-size:14px;line-height:1.9;margin:0}.mht-collection-card:hover{border-color:#54734b;background:#f2f5eb}
.mht-collection-arrow{margin-top:auto;padding-top:12px;font-size:13px;color:#3b6241;font-weight:600}
.mht-collection-breadcrumb{font-size:12px;line-height:2;margin:0 0 25px}.mht-collection-intro{font-size:17px;line-height:2;max-width:760px}

@media(max-width:700px){.mht-collection-grid{grid-template-columns:1fr}.mht-collection-card{padding:24px}}

/* Editable TOP highlights: readable links with subtle motion, no rotating content. */
.mht-home-highlights{padding:48px 0 54px;background:#f0ede4;border-bottom:1px solid #dfdacf}
.mht-highlights-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:24px}
.mht-highlights-head h2{font-size:clamp(1.35rem,2vw,1.8rem);margin:4px 0 0}
.mht-highlights-head .mht-kicker{margin:0;font-size:.72rem;letter-spacing:.16em}
.mht-highlight-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.mht-highlight-card{display:grid;grid-template-columns:35% 1fr;min-width:0;background:#fffdf8;color:#263e31;text-decoration:none;border:1px solid #dcd9ce;transition:transform .2s,box-shadow .2s}
.mht-highlight-card:hover,.mht-highlight-card:focus-visible{transform:translateY(-3px);box-shadow:0 12px 24px #20372c14}
.mht-highlight-card:focus-visible{outline:3px solid #47745a;outline-offset:4px}
.mht-highlight-image{overflow:hidden}.mht-highlight-image img{width:100%;height:100%;min-height:220px;object-fit:cover}
.mht-highlight-copy{padding:25px;min-width:0;overflow-wrap:anywhere}
.mht-highlight-label{font-size:.71rem;letter-spacing:.12em;color:#53715c;border-bottom:1px solid #bdc7b9;padding-bottom:5px}
.mht-highlight-copy h3{font-size:1.15rem;line-height:1.65;margin:14px 0 10px}
.mht-highlight-copy p{font-size:.83rem;line-height:1.9;color:#59695d;margin:0 0 18px}
.mht-highlight-link{font-size:.82rem;font-weight:600;text-decoration:underline;text-underline-offset:5px}
.mht-highlight-text{grid-template-columns:1fr}
.mht-hero-news{display:inline-block;font-size:.83rem;text-underline-offset:6px;margin-top:10px}
.mht-menu-lede{margin:-10px 0 30px;max-width:52rem;line-height:1.9}
@media(max-width:800px){.mht-highlight-grid{grid-template-columns:1fr}.mht-highlight-image img{min-height:185px}.mht-home-highlights{padding:34px 0}.mht-highlights-head{align-items:start;flex-direction:column;gap:12px}.mht-highlight-copy{padding:22px}.mht-highlight-copy h3{font-size:1.08rem}}
@media(prefers-reduced-motion:reduce){.mht-highlight-card{transition:none}.mht-highlight-card:hover{transform:none}}
