*{box-sizing:border-box}body{margin:0;background:#f7f1e7;color:#211d1a;font-family:"Yu Mincho","Hiragino Mincho ProN",serif}header{background:#211d1a;color:white;padding:13px 5%;display:flex;align-items:center;justify-content:space-between;gap:12px}header strong{font-size:25px;letter-spacing:.12em}nav{display:flex;gap:20px;font:19px sans-serif}a{color:inherit;text-decoration:none}.hero{min-height:620px;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.12)),url("assets/images/hero-tendon.jpg") center/cover;display:flex;align-items:center;color:white;padding:8% max(7%,calc((100% - 1000px)/2))}.hero h1{font-size:clamp(48px,9vw,94px);letter-spacing:.18em;margin:10px 0}.hero p{font-size:clamp(17px,2.5vw,23px);line-height:1.9}.eyebrow{font:13px sans-serif;letter-spacing:.24em;color:#d8bf98}.btn{display:inline-block;background:#963a32;color:white;padding:13px 25px;margin-top:15px;font:600 15px sans-serif}.intro{max-width:850px;margin:auto;padding:65px 25px 80px;text-align:center;line-height:2}.intro p{max-width:690px;margin:25px auto 0;text-align:left;font-size:clamp(15px,1.8vw,18px);line-height:2.15;letter-spacing:.035em}.intro h2{font-size:30px;letter-spacing:.1em}footer{text-align:center;background:#211d1a;color:#ddd;padding:24px;font:12px sans-serif}@media(max-width:650px){header{padding:10px 15px}header strong{font-size:21px}nav{gap:12px;font-size:17px}.hero{min-height:530px;padding:40px 24px;background-position:58% center}.intro{padding:45px 22px}.intro p{font-size:15px;line-height:2;letter-spacing:0}} 
.recommended{background:#211d1a;color:#f8f1e8;padding:76px max(5%,calc((100% - 1120px)/2)) 90px;text-align:center}.rec-kicker{font:12px sans-serif;letter-spacing:.26em;color:#c8a678}.recommended h2{font-size:clamp(25px,3vw,36px);letter-spacing:.13em;margin:14px 0 38px}.rec-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.rec-card{background:#302923;text-align:left;overflow:hidden;border:1px solid #594b3b}.rec-card img{display:block;width:100%;height:245px;object-fit:cover}.rec-copy{padding:22px 20px 25px}.rec-copy h3{font-size:21px;margin:0 0 12px;letter-spacing:.04em}.rec-copy p{font-size:14px;line-height:1.9;margin:0;color:#e3d9ca}@media(max-width:700px){.recommended{padding:55px 20px 65px}.rec-grid{grid-template-columns:1fr;gap:18px}.rec-card img{height:230px}.rec-copy{padding:18px 19px 22px}.rec-copy h3{font-size:20px}}
#tennoya-counter{background:#38291e;color:#f5e6c7;text-align:center;padding:8px;font:14px sans-serif}#visit-count{font-size:20px;color:white}#tennoya-blog{background:#fffaf3;padding:45px max(20px,calc((100% - 850px)/2));}#tennoya-blog h2{text-align:center}#blog-posts article{border-bottom:1px solid #dacdbd;padding:22px 0}#blog-posts img{width:100%;max-height:430px;object-fit:contain;border-radius:8px}#blog-posts time{font:13px sans-serif;color:#665}#blog-posts p{white-space:pre-wrap;line-height:1.9}

/* ===== ORIGINAL STYLE SECTION ===== */

.banquet{background:#f3ede3;color:#30261c;padding:76px 22px 88px;text-align:center}.banquet-inner{max-width:950px;margin:auto}.banquet .kicker{font:12px sans-serif;letter-spacing:.25em;color:#9a754a}.banquet h2{font-size:clamp(27px,3vw,38px);letter-spacing:.12em;margin:13px 0 24px}.banquet .desc{max-width:680px;margin:0 auto 32px;font-size:17px;line-height:2}.banquet-panel{background:white;border:1px solid #dacbb8;padding:30px 25px;max-width:730px;margin:auto;box-shadow:0 8px 25px #3322110d}.banquet-panel h3{font-size:23px;margin:0 0 16px;color:#7e4734}.banquet-panel p{font-size:16px;line-height:2;margin:8px 0}.banquet .em{font-weight:bold;color:#8e392e}.banquet .reservation{display:inline-block;margin-top:22px;background:#8e392e;color:white;padding:13px 30px;text-decoration:none;font:600 15px sans-serif}@media(max-width:650px){.banquet{padding:55px 18px 65px}.banquet .desc,.banquet-panel p{font-size:15px}.banquet-panel{padding:25px 17px}}

/* ===== ORIGINAL STYLE SECTION ===== */

.basic-course{margin-bottom:22px}.basic-course h3{color:#f1d19a}

/* ===== ORIGINAL STYLE SECTION ===== */


#menu-toggle{display:none}
@media(max-width:650px){
  header{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;padding:12px 16px}
  header strong{font-size:23px;line-height:1.3}
  #menu-toggle{display:block;background:transparent;color:#f8f1e8;border:1px solid #8d7966;border-radius:6px;padding:10px 15px;font:18px sans-serif;margin:0;white-space:nowrap}
  header nav{display:none;flex:0 0 100%;width:100%;flex-direction:column;gap:0;font-size:18px;padding-top:6px}
  header.menu-open nav{display:flex}
  header nav a{display:block;white-space:normal;overflow-wrap:anywhere;line-height:1.45;padding:10px 3px;border-top:1px solid #493b31}
  #tennoya-counter{padding:6px 8px;font-size:12px;line-height:1.4}
  #visit-count{font-size:16px}
}


/* ===== ORIGINAL STYLE SECTION ===== */

/* トップページには新着2記事だけ表示 */
#blog-posts > article:nth-of-type(n+3){display:none!important}


/* ===== ORIGINAL STYLE SECTION ===== */


/* トップページのブログだけを独立したスクロール枠に */
#tennoya-blog{padding-top:30px;padding-bottom:30px}
#tennoya-blog #blog-posts{box-sizing:border-box;max-width:680px;height:420px;overflow-y:auto;overflow-x:hidden;margin:16px auto 0;padding:8px 22px;background:#fff;border:1px solid #d8c9b6;border-radius:12px;box-shadow:0 3px 16px rgba(45,30,15,.10);overscroll-behavior:contain;scrollbar-gutter:stable}
#tennoya-blog #blog-posts article{padding:14px 0}
#tennoya-blog #blog-posts h3{margin:8px 0;font-size:1.08rem}
@media(max-width:600px){#tennoya-blog #blog-posts{height:340px;padding:8px 12px;max-width:100%}}


/* ===== ORIGINAL STYLE SECTION ===== */


/* ===== ORIGINAL STYLE SECTION ===== */


#app-tester{background:#fff9ef;padding:48px 18px;color:#30251f;font-family:"Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif}
#app-tester .tester-wrap{max-width:850px;margin:auto;border:2px solid #d7b978;border-radius:16px;background:#fffefb;padding:clamp(22px,5vw,42px);box-shadow:0 5px 22px #392b1715}
#app-tester .tester-kicker{color:#8b3a2b;font-weight:bold;letter-spacing:.14em;text-align:center;font-size:14px;margin:0 0 8px}
#app-tester h2{text-align:center;font-size:clamp(23px,5vw,30px);line-height:1.5;margin:0 0 20px;color:#71372b}
#app-tester p{line-height:1.95;font-size:16px;margin:0 0 15px}
#app-tester .tester-info{margin:24px 0;padding:20px;border-radius:12px;background:#f9f0df}
#app-tester .tester-info h3{font-size:20px;margin:0 0 12px;color:#683b2d}
#app-tester ol{padding-left:1.5em;margin:0;line-height:2}
#app-tester .tester-actions{text-align:center;margin-top:22px}
#app-tester .tester-button{display:inline-block;margin:6px;max-width:100%;background:#8e392e;color:white;padding:15px 26px;border-radius:9px;font:bold 17px sans-serif;text-decoration:none}
#app-tester .tester-small{font-size:13px;color:#6b615b;text-align:center;line-height:1.7;margin-top:13px}
@media(max-width:550px){#app-tester{padding:25px 12px}#app-tester .tester-wrap{padding:21px 16px}#app-tester p{font-size:15px}#app-tester .tester-button{display:block}}


/* ===== ORIGINAL STYLE SECTION ===== */


.evening-info{padding:clamp(34px,5vw,66px) 18px;background:#fff8ee;color:#35271e}
.evening-info .evening-inner{max-width:1060px;margin:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:stretch}
.evening-info .evening-panel{background:#fffdf9;border:1px solid #e8d7bf;border-radius:12px;padding:clamp(22px,3vw,38px);box-shadow:0 5px 18px rgba(58,35,14,.05)}
.evening-info h2{font-size:clamp(21px,2.5vw,27px);line-height:1.5;margin:0 0 22px;text-align:center;letter-spacing:.04em}
.evening-info h2:after{content:"";display:block;width:45px;height:2px;background:#b18b57;margin:14px auto 0}
.evening-info p{font-size:clamp(14px,1.4vw,16px);line-height:1.95;margin:0 0 16px;text-align:left;overflow-wrap:anywhere}
.evening-info p:last-child{margin-bottom:0}
@media(max-width:720px){.evening-info .evening-inner{grid-template-columns:1fr;gap:16px}.evening-info .evening-panel{padding:24px 20px}.evening-info h2{margin-bottom:20px}}


/* ===== ORIGINAL STYLE SECTION ===== */


/* トップページには最新2記事のみ表示 */
#blog-posts > article:nth-of-type(n+3){display:none!important}
#blog-posts .tn-post-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}
#blog-posts .tn-post-photos img{width:100%;height:auto;aspect-ratio:1;object-fit:contain;border-radius:8px;cursor:pointer}
@media(max-width:500px){#blog-posts .tn-post-photos{gap:5px}}
.tn-photo-overlay{position:fixed;inset:0;z-index:99999;background:rgba(0,0,0,.92);display:flex;align-items:center;justify-content:center;padding:55px 12px 20px}
.tn-photo-overlay img{max-width:min(85vw,720px);max-height:75vh;width:auto;height:auto;object-fit:contain;border-radius:8px;box-shadow:0 8px 30px #0008}
.tn-photo-close{position:absolute;top:10px;right:12px;background:#fff;color:#222;border:0;border-radius:6px;padding:10px 16px;font-size:16px;cursor:pointer}
#blog-posts .tn-post-photos img{cursor:zoom-in}



/* 宴会案内の文章バランス調整 */
.banquet-description{padding:38px clamp(20px,4vw,42px);text-align:left}
.banquet-description h3{text-align:center;margin:0 0 18px;line-height:1.55;letter-spacing:.05em}
.banquet-description p{max-width:38em;margin:0 auto 16px;text-align:left;line-height:2.15;letter-spacing:.02em;overflow-wrap:anywhere}
.banquet-description .banquet-lead{font-weight:600}
.banquet-description .banquet-note{margin:24px auto 4px;padding:14px 18px;text-align:center;background:#fbf5ee;border:1px solid #e4d3bf;border-radius:10px;font-size:17px;color:#7d3c30}
.banquet-description .banquet-subheading{margin-top:34px;padding-top:26px;border-top:1px solid #eadccd}
@media(max-width:650px){
  .banquet-description{padding:26px 18px}
  .banquet-description h3{font-size:21px;margin-bottom:14px}
  .banquet-description p{font-size:15px;line-height:2.05;margin-bottom:14px}
  .banquet-description .banquet-note{font-size:16px;padding:12px 14px;margin-top:20px}
  .banquet-description .banquet-subheading{margin-top:26px;padding-top:20px}
}
