html{scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:#F6F1E7}
a{color:#3A2A1E;text-decoration:none}
a:hover{color:#B4561C}
.masonry{columns:220px;column-gap:20px}
.card{break-inside:avoid;display:flex;flex-direction:column;gap:12px;margin:0 0 20px;padding:14px 14px 18px;background:#FFFDF8;border:1px solid #E6DCCB;border-radius:16px;box-shadow:0 1px 0 #E6DCCB,0 6px 16px rgba(74,42,23,.06);transition:transform .18s ease,box-shadow .18s ease}
.card:hover{transform:translateY(-3px);box-shadow:0 1px 0 #E6DCCB,0 12px 26px rgba(74,42,23,.12)}
.lb{font-family:'Lilita One',sans-serif;font-size:12px;letter-spacing:.08em;color:#FFFFFF;padding:3px 10px 2px;border-radius:999px}
.dt{font-size:12px;font-weight:500;color:#6E5D4E;letter-spacing:.04em}
.ph{width:100%;border-radius:10px;background:repeating-linear-gradient(135deg,#EFE6D5 0 9px,#E8DDC9 9px 18px);display:flex;align-items:center;justify-content:center;font-size:12px;color:#6E5D4E;text-align:center;padding:8px;box-sizing:border-box}
.ct{margin:0;font-size:15px;line-height:1.55;font-weight:700}
.ct a:hover{text-decoration:underline;text-underline-offset:3px}
.cx{margin:0;font-size:13px;line-height:1.7;color:#5A4A3C}
.bn{break-inside:avoid;display:flex;align-items:center;justify-content:center;gap:10px;margin:0 0 20px;min-height:88px;padding:16px;box-sizing:border-box;background:#FFFDF8;border:1px solid #E6DCCB;border-radius:16px;font-weight:700;font-size:15px}
.bn:hover{border-color:#3A2A1E}
.nav a:hover span:first-child{color:#B4561C}
.fl a{color:#FBEFD9;text-decoration:underline;text-underline-offset:3px}
.fl a:hover{color:#FFFFFF}
/* sub pages */
.crumb{max-width:1240px;margin:0 auto;padding:28px 24px 0;font-size:12px;color:#6E5D4E}
.crumb ol{margin:0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.crumb li+li::before{content:"›";margin-right:6px;color:#A8977F}
.crumb a{text-decoration:underline;text-underline-offset:3px}
/* 詳細ページではパンくずのすぐ下に本文の囲みが来るので、間をあける */
.crumb+.news-wrap{padding-top:16px}
/* 小さな文字のリンクを指で押しやすくする。押せる範囲だけ上下に広げ、見た目の位置は変えない */
.crumb a,a.news-cat,footer a[href$="privacy/index.html"]{display:inline-block;padding:12px 0;margin:-12px 0}
/* ページトップへのボタン。assets/js/pagetop.js がスクロールに合わせて is-shown を付け外しする */
.pagetop{position:fixed;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:50;display:flex;flex-direction:column;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#3A2A1E;color:#F5B82E;border:2px solid #F6F1E7;box-sizing:border-box;box-shadow:0 6px 16px rgba(74,42,23,.25);opacity:0;visibility:hidden;transform:translateY(12px);transition:opacity .2s ease,transform .2s ease,visibility .2s}
.pagetop.is-shown{opacity:1;visibility:visible;transform:none}
.pagetop:hover{color:#FFFFFF}
.pagetop:focus-visible{outline:3px solid #F5B82E;outline-offset:2px}
.pagetop svg{display:block}
.pagetop span{font-family:'Lilita One',sans-serif;font-size:12px;line-height:1;letter-spacing:.06em}
@media (min-width:800px){.pagetop{right:24px;bottom:24px}}
@media (prefers-reduced-motion:reduce){.pagetop{transition:none;transform:none}}
/* いちばん下までスクロールしたとき、フッターの文字がページトップへのボタンに隠れないようにする */
footer{padding-bottom:56px}
/* フッターの会社名と連絡先。幅の狭い画面では左寄せにして、右下のページトップへのボタンと重ならないようにする */
.f-co{display:flex;flex-direction:column;align-items:flex-end;gap:14px;text-align:right}
@media (max-width:799px){.f-co{align-items:flex-start;text-align:left}}
/* 電話番号はスマホで押すとそのまま電話をかけられる。フッターの文字の色に合わせる */
.f-co a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.f-co a:hover{color:#FFFFFF}
.page-head{max-width:1240px;margin:0 auto;padding:28px 24px 36px;display:flex;flex-direction:column;gap:6px}
.page-head .en{font-family:'Lilita One',sans-serif;font-size:clamp(40px,6vw,64px);line-height:1;letter-spacing:.02em;color:#D9681F}
.page-head h1{margin:0;font-size:18px;font-weight:900;letter-spacing:.06em}
.btn{display:inline-flex;align-items:center;gap:10px;min-height:52px;padding:0 32px;border-radius:999px;background:#3A2A1E;color:#FFFFFF;font-size:15px;font-weight:700}
.btn:hover{color:#F5B82E}
.nav a[aria-current="page"] span:first-child{color:#D9681F}
