/* Scoped adjustments loaded after party.css. */
.party-campaign{position:relative;overflow:hidden;background:linear-gradient(135deg,#071f35 0%,#0c3451 55%,#4f1833 100%);color:#fff;padding:66px 0 70px}
.party-campaign:before,.party-campaign:after{content:"";position:absolute;border:1px solid rgba(226,184,104,.28);border-radius:50%;pointer-events:none}
.party-campaign:before{width:360px;height:360px;left:-190px;top:-210px}
.party-campaign:after{width:500px;height:500px;right:-280px;bottom:-340px}
.party-campaign .container{position:relative;z-index:1}
.party-campaign-head{text-align:center;max-width:920px;margin:0 auto 34px}
.party-campaign-label{margin:0 0 12px;color:#e8c47b;font-size:13px;font-weight:800;letter-spacing:.22em}
.party-campaign-period{display:inline-flex;align-items:center;gap:12px;margin:0 0 20px;padding:9px 18px;border:1px solid rgba(232,196,123,.65);border-radius:999px;background:rgba(255,255,255,.06);font-size:16px}
.party-campaign-period span{color:#e8c47b;font-weight:800}
.party-campaign-period strong{font-weight:700}
.party-campaign h2{margin:0 0 12px!important;color:#fff;font-family:Georgia,'Noto Serif JP',serif;font-size:clamp(32px,4vw,52px);line-height:1.35}
.party-campaign h2 span{display:block;margin-bottom:7px;color:#f0c779;font-family:inherit;font-size:.42em;letter-spacing:.12em}
.party-campaign-head>p:last-child{margin:0;color:#dbe6ee}
.party-choice-grid{display:grid;grid-template-columns:minmax(0,1fr) 64px minmax(0,1fr);align-items:stretch;max-width:1040px;margin:0 auto}
.party-choice-grid article{position:relative;padding:32px 34px;text-align:center;border:1px solid rgba(232,196,123,.7);background:linear-gradient(145deg,rgba(255,255,255,.12),rgba(255,255,255,.055));box-shadow:0 22px 60px rgba(0,0,0,.22)}
.party-choice-grid article:first-child{border-radius:22px 0 0 22px}
.party-choice-grid article:last-child{border-radius:0 22px 22px 0}
.party-choice-number{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e8c47b;color:#102942;font-family:Georgia,serif;font-weight:800}
.party-choice-kicker{margin:14px 0 4px;color:#f0d9a7;font-size:15px;font-weight:800;letter-spacing:.08em}
.party-choice-grid h3{margin:0 0 12px;color:#fff;font-size:clamp(25px,3vw,34px);line-height:1.35}
.party-choice-grid article>p:last-child{margin:0;color:#dce6ec;font-size:16px}
.party-choice-or{display:grid;place-items:center;align-self:center;justify-self:center;width:54px;height:54px;border-radius:50%;background:#e8c47b;color:#102942;font-family:Georgia,serif;font-weight:900;box-shadow:0 8px 24px rgba(0,0,0,.25);z-index:2}
.party-campaign-note{max-width:1040px;margin:22px auto 0;color:#d5dee5;font-size:14px;line-height:1.8;text-align:center}
@media(max-width:700px){.party-campaign{padding:48px 0}.party-campaign-period{display:flex;flex-direction:column;gap:2px;border-radius:14px}.party-choice-grid{grid-template-columns:1fr;gap:0}.party-choice-grid article:first-child{border-radius:20px 20px 0 0}.party-choice-grid article:last-child{border-radius:0 0 20px 20px}.party-choice-or{margin:-8px auto;z-index:3}.party-choice-grid article{padding:26px 20px}.party-campaign-note{text-align:left}}
.party-page .party-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.party-page .party-benefits article{padding:24px;margin:0;min-width:0}
.party-page .party-benefits h3{font-size:22px;margin:0 0 12px}
.party-page .party-support-grid article{display:grid;grid-template-columns:48px minmax(0,1fr);column-gap:14px;align-content:start;align-items:center}
.party-page .party-support-grid .party-number{grid-column:1;grid-row:1;font-size:32px;line-height:1.4;border:0;padding:0;margin:0}
.party-page .party-support-grid article>h3{grid-column:2;grid-row:1;margin:0;font-size:22px}
.party-page .party-support-grid article>p{grid-column:1/-1;margin:16px 0 0}
.party-page .party-form{width:100%;max-width:960px}
.party-page .party-form iframe{width:100%;max-width:960px;height:2200px}
@media(min-width:651px) and (max-width:1000px){.party-page .party-benefits{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:650px){.party-page .party-benefits{grid-template-columns:1fr;gap:16px}.party-page .party-benefits article{padding:22px}.party-page .party-benefits h3{font-size:21px}.party-page .party-support-grid article{padding:22px;grid-template-columns:42px minmax(0,1fr);column-gap:10px}.party-page .party-support-grid article>h3{font-size:21px}.party-page .party-form iframe{height:2700px}}
.party-page{font-size:18px;line-height:1.85}
.party-page h1,.party-page h2,.party-page h3{line-height:1.5;letter-spacing:.025em}
.party-page .party-hero-banner{padding:0 0 28px;background:#fff}
.party-banner-inner{width:min(1500px,100%);margin-inline:auto}
.party-page .party-hero-banner figure{margin:0}
.party-page .party-hero-banner figure img{display:block;width:100%;max-width:none;height:auto!important;aspect-ratio:auto!important;object-fit:contain!important;border-radius:0;box-shadow:none}
.party-page .party-hero-banner figcaption{padding:8px 20px;margin:0;text-align:right;font-size:13px}
.party-banner-actions{display:flex;flex-wrap:wrap;gap:16px 28px;justify-content:center;align-items:center;padding:18px 20px 0}
.party-banner-actions .pill{font-size:18px;padding:14px 30px}
.party-plan-link{text-decoration:underline;text-underline-offset:5px;font-size:17px;font-weight:700}
.party-page .party-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
@media(max-width:520px){.party-page .party-hero-banner{padding:0 0 20px}.party-page .party-hero-banner figcaption{font-size:12px;text-align:left;padding-inline:12px}.party-banner-actions{gap:12px;padding-top:12px}.party-banner-actions .pill{font-size:17px;width:100%}}
.party-page .header-inner{justify-content:space-between}
.party-page .header-cta{margin-left:auto}
.party-breadcrumb{padding-top:18px;padding-bottom:18px;font-size:12px;color:var(--muted)}
.party-breadcrumb span{margin:0 10px}
.party-hero{background:linear-gradient(120deg,#fff9fc,#f0f7fb);padding:48px 0 64px}
.party-hero-grid{display:grid;grid-template-columns:1fr;gap:32px;align-items:center}
.party-eyebrow{font-size:14px;font-weight:800;letter-spacing:.16em;color:#bb386b;margin:0 0 16px}
.party-page h1{font-size:clamp(30px,3.6vw,47px);margin:0 0 20px}
.party-page h1 span{color:#cc4075}
.party-lead{font-size:20px;font-weight:700}
.party-hero figure{margin:0;min-width:0}
.party-hero img{width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;border-radius:24px;box-shadow:var(--shadow)}
.party-hero figcaption{text-align:right;font-size:13px;margin-top:10px;color:var(--muted)}
.party-chips{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}
.party-chips span{border:1px solid #eac4d3;border-radius:30px;padding:6px 12px;font-size:13px;font-weight:700;background:white}
.party-section{padding-top:72px;padding-bottom:72px}
.party-page h2{font-size:clamp(25px,3vw,36px);margin:0 0 32px}
.party-features,.party-groups{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.party-features article{padding:8px 24px 0 0;border-top:1px solid #dfc8d3}
.party-number{font-family:Georgia,serif;font-size:36px;color:#d24b7c}
.party-features h3{font-size:19px;margin:10px 0}
.party-features p{font-size:18px}
.party-plan-wrap{background:#fff5f9}
.party-plan{background:white;border:1px solid #efd8e2;border-radius:24px;padding:38px}
.party-plan-title{text-align:center}
.party-plan-title>span{display:inline-block;padding:5px 15px;border-radius:30px;background:#062743;color:white;font-size:14px}
.party-plan-title h3{font-size:27px;margin:16px 0 8px}
.party-plan-title p{margin:0;font-size:20px}
.party-prices{display:grid;grid-template-columns:1fr 1fr;gap:20px;max-width:740px;margin:24px auto}
.party-prices p{margin:0;padding:20px;text-align:center;background:#fff3f8;border-radius:16px;font-weight:700}
.party-prices strong{font-size:52px;display:block;line-height:1.4}
.party-prices strong span{font-size:22px}
.party-prices small{display:block;font-size:15px;font-weight:400}
.party-included{list-style:none;padding:0;display:flex;justify-content:center;flex-wrap:wrap;gap:10px 26px;font-weight:700}
.party-included li:before{content:"✓ ";color:#c83d74}
.party-bonus{margin:28px 0;padding:24px;border-top:1px solid #edc4d4;border-bottom:1px solid #edc4d4;text-align:center}
.party-bonus small{color:#bd396c;font-weight:800;font-size:14px}
.party-bonus h3{font-size:23px;margin:8px 0}
.party-notes{font-size:15px;color:#566777;line-height:1.9}
ul.party-notes{padding-left:20px}
.party-groups article{border:1px solid #e4dce1;border-radius:20px;padding:24px}
.party-groups article>p:first-child{font-size:26px;font-weight:800;margin:0 0 16px}
.party-groups h3{font-size:20px;margin:0 0 12px}
.party-groups span{font-size:16px;font-weight:700;color:#b73568}
.party-groups article>p:last-child{font-size:18px}
.party-groups a,.party-form-fallback a,.party-access p a{text-decoration:underline;text-underline-offset:4px}
.party-group-featured{background:#fff4f8;border-color:#edb8cd!important}
.party-faq{padding-top:0}
.party-faq details{padding:20px 0;border-bottom:1px solid var(--line)}
.party-faq summary{cursor:pointer;font-weight:700}
.party-faq details p{font-size:18px}
.party-reservation{background:#f3f7fa;text-align:center;scroll-margin-top:100px}
.party-confirmation{font-size:16px;font-weight:700}
.party-form{width:100%;max-width:640px;margin:30px auto 0}
.party-form iframe{display:block;width:100%;max-width:640px;height:1394px}
.party-form-fallback{font-size:16px}
.party-access{text-align:center}
#plan{scroll-margin-top:90px}
.party-page .party-hero img{height:auto;aspect-ratio:auto;object-fit:contain}
.party-benefits{display:grid;grid-template-columns:1fr;gap:0}
.party-benefits article{padding:26px 30px;border:1px solid #ded7dc;border-left:4px solid #bc3b6e;border-radius:14px;margin-bottom:18px;background:#fff}
.party-benefits h3{font-size:clamp(21px,2.3vw,27px);margin:0 0 10px}
.party-benefits p{margin:0;max-width:900px}
.party-support-wrap{background:#fff5f9}
.party-support-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 40px}
.party-support-grid h3{font-size:24px;margin:8px 0}
.party-support-grid p{margin:10px 0}
.party-support-grid article{background:#fff;border:1px solid #e3d4dc;border-radius:16px;padding:26px 30px;min-width:0}
.party-support-grid .party-number{display:block;border-bottom:1px solid #eadce3;padding-bottom:12px;margin-bottom:16px}
.party-options-grid article>h3{padding-bottom:14px;border-bottom:1px solid #e3d4dc}
.party-options-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:30px 0}
.party-options-grid article{border:1px solid #e6dbe1;border-radius:20px;padding:28px;min-width:0}
.party-options-grid h3{font-size:24px;margin:0 0 12px}
.party-option-price{font-size:20px;font-weight:800;color:#b73568;margin:12px 0}
.party-options-grid article>p:last-child{margin-bottom:0}
@media(max-width:650px){.party-support-grid,.party-options-grid{grid-template-columns:1fr}.party-options-grid article{padding:22px}.party-options-grid h3{font-size:22px}.party-option-price{font-size:19px}}
.party-mamas{padding-top:0}
.party-mama-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin:30px 0 14px}
.party-mama-photos figure{margin:0;min-width:0}
.party-mama-photos img{width:100%;aspect-ratio:1;object-fit:cover;height:auto;border-radius:24px;box-shadow:var(--shadow)}
.party-mama-photos figcaption{text-align:center;font-weight:800;font-size:22px;margin-top:12px}
.party-page .party-chips span{font-size:16px}
.party-page .party-features h3{font-size:23px}
.party-page .party-plan-title>span{font-size:17px}
.party-page .party-plan-title p{font-size:25px}
.party-page .party-included{font-size:20px}
.party-page .party-bonus small{font-size:17px}
.party-page .party-bonus h3{font-size:27px}
@media(max-width:600px){.party-mama-photos{grid-template-columns:1fr;gap:24px;max-width:360px;margin:28px auto}.party-mama-photos figcaption{font-size:21px}.party-page{font-size:17px}.party-page .party-prices strong{font-size:39px}.party-page .party-notes,.party-page .party-confirmation{font-size:15px}.party-page .party-included{font-size:18px}.party-page .party-bonus h3{font-size:23px}.party-page .party-chips span{font-size:14px}}
@media(max-width:850px){.party-hero-grid{grid-template-columns:1fr;gap:28px}.party-hero img{height:310px}.party-features,.party-groups{grid-template-columns:1fr}.party-section{padding-top:48px;padding-bottom:48px}.party-plan{padding:24px}.party-faq{padding-top:0}}
@media(max-width:520px){.party-page .header-inner{gap:10px;min-height:76px}.party-page .brand{min-width:0}.party-page .brand-name{font-size:20px}.party-page .header-cta{font-size:14px;padding:10px 12px}.party-hero{padding-top:28px;padding-bottom:36px}.party-hero img{height:240px}.party-lead{font-size:20px}.party-plan{padding:22px 16px}.party-prices{gap:10px}.party-prices p{padding:16px 6px}.party-bonus{padding:20px 0}.party-form iframe{height:1700px}.party-reservation .container{width:calc(100% - 20px)}.party-reservation h2{font-size:25px}.party-form-fallback{overflow-wrap:anywhere}}
