.p-bookingNotice{position:fixed;inset:0;z-index:5000;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .8s ease,visibility .8s ease;font-family:inherit}
.p-bookingNotice.is-open{opacity:1;visibility:visible;pointer-events:auto}
.p-bookingNotice__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.55);opacity:0;transition:opacity .9s ease}
.p-bookingNotice.is-open .p-bookingNotice__backdrop{opacity:1}
.p-bookingNotice__box{position:relative;width:100%;max-width:720px;margin:0 auto;box-sizing:border-box;padding:10px;background:rgba(255,255,255,.92);border-radius:12px;box-shadow:0 30px 90px rgba(0,0,0,.35);transform:translateY(18px) scale(.975);opacity:0;filter:blur(10px);will-change:transform,opacity,filter;transition:transform .85s cubic-bezier(.14,1,.22,1) .06s,opacity .7s ease .06s,filter .7s ease .06s}
.p-bookingNotice.is-open .p-bookingNotice__box{transform:translateY(0) scale(1);opacity:1;filter:blur(0)}
.p-bookingNotice__inner{position:relative;background:#fff;border-radius:10px;padding:40px 44px 32px;color:#111;text-align:center;border:3px solid #00899e}
.p-bookingNotice__close{position:absolute;top:14px;right:14px;width:46px;height:46px;border:0;border-radius:8px;background:#00899e;color:#fff;font-size:26px;line-height:1;cursor:pointer;transition:opacity .25s ease,transform .25s ease}
.p-bookingNotice__close:hover{opacity:.9;transform:scale(1.05)}
.p-bookingNotice__title{margin:0 0 14px 0;font-size:26px;letter-spacing:.1em;font-weight:800;text-align:center;color:#00899e;box-sizing:border-box;padding:0 56px}
.p-bookingNotice__body{max-width:46em;margin:0 auto;font-size:15px;line-height:1.9;letter-spacing:.06em;text-align:center}
.p-bookingNotice__body p{margin:10px 0 0}
.p-bookingNotice__body p:first-child{margin-top:0}
.p-bookingNotice__gap{margin:0;height:14px}
.p-bookingNotice__mail{text-align:center;margin-top:14px !important;font-size:18px;font-weight:800;letter-spacing:.02em;color:#00899e}
.p-bookingNotice__body a{color:#00899e;text-decoration:underline;word-break:break-all}
.p-bookingNotice__note{opacity:.95;font-size:14px;color:#333}
html.is-bookingNotice-open{overflow:hidden}
@media only screen and (max-width:767px){
  .p-bookingNotice{padding:14px}
  .p-bookingNotice__inner{padding:40px 18px 22px}
  .p-bookingNotice__title{font-size:20px}
  .p-bookingNotice__body{font-size:13px}
  .p-bookingNotice__mail{font-size:16px}
  .p-bookingNotice__btn{min-width:220px}
}

