/* 全言語ページ共通：ページ内にあったインラインCSSを集約 */

/* --- 出張レンタルサウナ / 見出し --- */
.svc-ttl{font-size:2rem !important;line-height:1.35 !important;}
@media (min-width:768px){ .svc-ttl{font-size:2.6rem !important;} }

.sauna-section{position:relative;isolation:isolate;padding:6.5rem 0 5rem;background:transparent;}
.sauna-section::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,#faf0e6,#fdf9f5);clip-path:polygon(0 0,100% 70px,100% 100%,0 100%);}
@media (max-width:600px){
  .sauna-section{padding:5.5rem 0 4rem;}
  .sauna-section::before{clip-path:polygon(0 0,100% 36px,100% 100%,0 100%);}
}
.sauna-layout{display:flex;flex-wrap:wrap-reverse;align-items:center;gap:2.5rem;}
.sauna-body{flex:1 1 340px;min-width:280px;}
.sauna-img{flex:1 1 340px;min-width:280px;}
.sauna-img img{width:100%;height:auto;display:block;box-shadow:0 12px 30px rgba(120,60,20,0.16);}

.sauna-price-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0.7rem;margin:1.4rem 0 0.9rem;}
.sauna-price-card{background:#fff;border:1px solid rgba(192,85,44,0.2);border-radius:10px;padding:0.8rem 0.5rem;text-align:center;}
.sauna-price-time{font-size:0.85rem;color:#8a5a3d;margin-bottom:0.3rem;}
.sauna-price-yen{font-size:1.15rem;font-weight:700;color:#7a3013;white-space:nowrap;}
@media (max-width:480px){
  .sauna-price-grid{grid-template-columns:1fr;}
}

.sauna-price-option-row{display:flex;justify-content:space-between;align-items:baseline;padding:0.5rem 0.2rem;border-top:1px dashed rgba(192,85,44,0.3);font-size:0.95rem;opacity:0.8;}

.sauna-reserve-note{margin:0.8rem 0 0.3rem;padding:0.7rem 0.9rem;background:rgba(192,85,44,0.08);border-left:3px solid #c0552c;border-radius:6px;}
.sauna-reserve-note p{margin:0;font-size:0.88rem;line-height:1.6;color:#7a3013;}

.sauna-dm-note{margin-top:0.7rem;font-size:0.92rem;opacity:0.8;}

.sauna-mini-notes{list-style:none;margin:1rem 0 0;padding:0;font-size:0.78rem;line-height:1.7;opacity:0.65;}
.sauna-mini-notes li{position:relative;padding-left:1.1em;}
.sauna-mini-notes li::before{content:"※";position:absolute;left:0;top:0;}

/* --- お問い合わせフォーム送信結果 --- */
.contact-message{
  margin-top:1rem;
  padding:0.9rem 1.1rem;
  border-radius:8px;
  font-size:0.95rem;
  line-height:1.6;
  white-space:pre-wrap;
}
.contact-message.is-success{
  background:#eef7ee;
  color:#1e5e2a;
  border:1px solid #b6ddb9;
}
.contact-message.is-error{
  background:#fbeaea;
  color:#8a2020;
  border:1px solid #eab8b8;
}

/* 配達（出前）メニューセクション用CSS — 全言語ページ共通 */
.deli-section{padding:5rem 0 3rem;background:transparent;}
@media (max-width:600px){ .deli-section{padding:4rem 0 2rem;} }
.deli-section .svc-ttl{font-size:2rem !important;line-height:1.35 !important;}
@media (min-width:768px){ .deli-section .svc-ttl{font-size:2.6rem !important;} }
.deli-layout{display:flex;flex-wrap:wrap;align-items:center;gap:2.5rem;}
.deli-img{flex:1 1 340px;min-width:280px;}
.deli-img img{width:100%;height:auto;display:block;box-shadow:0 12px 30px rgba(120,60,20,0.16);}
.deli-body{flex:1 1 340px;min-width:280px;}

.deli-notes{list-style:none;margin:1rem 0 0;padding:0;font-size:0.9rem;line-height:1.8;}
.deli-notes li{position:relative;padding-left:1.1em;}
.deli-notes li::before{content:"※";position:absolute;left:0;top:0;color:#c0552c;}

.deli-order{margin-top:1.4rem;padding:1.1rem 1.2rem;background:#2f2f2f;color:#fff;border-radius:12px;text-align:center;}
.deli-shop{font-size:1.3rem;font-weight:700;letter-spacing:0.08em;}
.deli-shop small{font-size:0.8rem;font-weight:400;letter-spacing:0.04em;opacity:0.85;}
.deli-tel{display:inline-block;margin:0.4rem 0;font-size:1.9rem;font-weight:700;letter-spacing:0.04em;color:#fff;text-decoration:none;white-space:nowrap;}
.deli-hours{font-size:0.85rem;opacity:0.9;line-height:1.7;}

.deli-menu{display:grid;grid-template-columns:repeat(2,1fr);gap:1.6rem 2.5rem;margin-top:3rem;align-items:start;}
.deli-col{display:flex;flex-direction:column;gap:1.6rem;min-width:0;}
@media (max-width:700px){ .deli-menu{grid-template-columns:1fr;} }
.deli-cat h3{margin:0 0 0.5rem;padding:0.45rem 0.9rem;background:#2f2f2f;color:#fff;font-size:1rem;letter-spacing:0.2em;text-align:center;}
.deli-cat ul{list-style:none;margin:0;padding:0;}
.deli-cat li{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:0.5rem 0.3rem;border-bottom:1px dashed rgba(192,85,44,0.3);font-size:0.97rem;}
.deli-cat li small{display:block;font-size:0.72rem;opacity:0.6;line-height:1.4;}
.deli-cat li b{white-space:nowrap;color:#7a3013;}
.deli-tax{margin:1.2rem 0 0;font-size:0.78rem;opacity:0.65;text-align:right;}
