/* rh-common.css : .rh の中だけに効く。TOP・予約には読み込まない */
@import url('https://fonts.googleapis.com/css2?family=Cinzel&family=Zen+Kaku+Gothic+New:wght@400;500;700&display=swap');

.rh{--bg:#fffbf0;--text:#2D2D2D;--accent:#8E735B;--line:rgba(142,115,91,.12);
  background:var(--bg);color:var(--text);
  font-family:'Zen Kaku Gothic New','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;
  line-height:2;letter-spacing:.05em;
  -webkit-font-smoothing:antialiased;padding:80px 24px;overflow-x:hidden}
.rh *{box-sizing:border-box}
.rh-inner{max-width:720px;margin:0 auto}
.rh h1,.rh h2,.rh h3{font-weight:400;letter-spacing:.2em}
.rh .en{font-family:'Cinzel',serif;letter-spacing:.3em;font-size:11px;color:var(--accent)}
.rh a{color:var(--accent);text-decoration:none}
.rh-section{border-top:1px solid var(--line);padding:56px 0}
.rh-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:12px}
.rh-grid img{width:100%;height:auto;display:block}
.rh table{width:100%;border-collapse:collapse}
.rh td,.rh th{border-bottom:1px solid var(--line);padding:14px 4px;text-align:left;font-weight:400}
.rh-btn{display:block;max-width:340px;margin:40px auto 0;padding:18px 0;background:#1A1A1A;
  color:#fffbf0!important;text-align:center;font-size:11px;letter-spacing:.3em}
.rh-btn:hover{opacity:.7}

.rh .reveal{transition:opacity 1.5s,transform 1.5s}
html.rh-js .rh .reveal{opacity:0;transform:translateY(20px)}
html.rh-js .rh .reveal.active{opacity:1;transform:none}

@media (max-width:480px){
  .rh{padding:48px 16px}
  .rh-section{padding:40px 0}
}
