/* Studio 8XKOkgeO4v / PLAN. Scoped so other sections keep their styling. */
.studio-pricing{--plan-ink:#2a2f4e;--plan-gold:#c79d63;position:relative;isolation:isolate;overflow:clip;padding:96px 0;background:#f1f5f8;color:var(--plan-ink);font-family:'Noto Sans JP',sans-serif;letter-spacing:0;scroll-margin-top:0}
.studio-pricing:before,.studio-pricing:after{content:'';position:absolute;z-index:-1;pointer-events:none;background:#fff;opacity:.58;border-radius:50%}
.studio-pricing:before{width:650px;height:480px;right:-170px;top:-300px;transform:rotate(25deg)}
.studio-pricing:after{width:1100px;height:440px;left:-350px;bottom:-260px;transform:rotate(20deg)}
.studio-pricing__inner{width:min(1128px,calc(100% - 80px));margin:0 auto}
.studio-pricing__heading{display:flex;flex-direction:column;gap:24px;align-items:flex-start}
.studio-pricing__label{display:flex;align-items:center;gap:40px;width:100%}
.studio-pricing__label h2{display:flex;align-items:center;gap:8px;flex:none;font:600 20px/1.5 'Noto Sans JP',sans-serif;letter-spacing:0;margin:0}
.studio-pricing__label h2:before{content:'';width:6px;height:6px;border-radius:50%;background:#a78e60}
.studio-pricing__label>span{height:1px;flex:1;background:#cbd1d7}
.studio-pricing__english{font:300 88px/1 'Poppins',sans-serif;letter-spacing:0;color:#305fb9;margin:0}
.studio-pricing__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:16px;margin-top:76px}
.studio-pricing__intro{margin-top:28px;font-size:16px;line-height:1.8}
.studio-pricing__intro p{margin:0}
.studio-pricing__period{font-size:13px;color:#727888;margin-top:8px!important}
.studio-plan{display:flex;flex-direction:column;position:relative;min-width:0;background:#fff;border-radius:12px;box-shadow:0 44px 52px #00000005}
.studio-plan__header{display:flex;flex-direction:column;align-items:center;gap:8px;background:#e1ebf2;border:4px solid #fff;border-bottom:0;border-radius:12px 12px 0 0;padding:24px 8px}
.studio-plan__header h3{font:700 28px/1.5 'Poppins','Noto Sans JP',sans-serif;letter-spacing:0;text-align:center;margin:0}
.studio-plan__tag{font:500 16px/1.48 'Noto Sans JP',sans-serif;margin:0;padding:4px 12px;border-radius:3px;background:#c6dae6}
.studio-plan__amount{display:flex;align-items:baseline;justify-content:center;min-height:112px;padding:36px 8px 12px;white-space:nowrap}
.studio-plan__amount strong{font:400 60px/1 'Roboto',sans-serif;letter-spacing:-.025em}
.studio-plan__amount>span{font:700 22px/1 'Noto Sans JP',sans-serif}
.studio-plan__amount>small{font:500 14px/1 'Noto Sans JP',sans-serif;margin-left:8px}
.studio-plan__payment{text-align:center;padding:0 24px 24px;border-bottom:1px solid #f1f1f1}
.studio-plan__tax{font-size:12px;color:#727888;margin:0 0 14px}
.studio-plan__installment{font-size:14px;line-height:1.8;margin:0}
.studio-plan__installment span{display:inline-block}
.studio-plan__installment strong{font-size:23px;font-weight:700;margin:0 3px}
.studio-plan__fee{font-size:11px;color:#727888;margin:2px 0 0}
.studio-plan__summary{font-size:15px;line-height:1.9;margin:0;min-height:5.7em}
.studio-plan__amount--quote strong{font:400 44px/1.2 'Noto Sans JP',sans-serif;letter-spacing:0}
.studio-plan__body{display:flex;flex-direction:column;gap:28px;flex:1;padding:36px 40px 48px;border-radius:0 0 12px 12px}
.studio-plan__features{list-style:none;display:flex;flex-direction:column;gap:12px;margin:0;padding:0}
.studio-plan__features li{display:flex;align-items:flex-start;gap:8px;font:500 18px/1.65 'Noto Sans JP',sans-serif}
.studio-plan__features svg{flex:0 0 24px;width:24px;height:24px;margin-top:2px;fill:none;stroke:#a78e60;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.studio-plan__description{display:flex;align-items:center;flex:1;margin:0;font:500 18px/1.65 'Noto Sans JP',sans-serif}
.studio-plan__cta{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:64px;margin-top:auto;padding:16px;border:0;border-radius:4px;color:#fff;background:linear-gradient(90deg,#c39a60,#dbbd83);font:700 18px/1.5 'Noto Sans JP',sans-serif;letter-spacing:0;transition:filter .25s,box-shadow .25s}
.studio-plan__cta:hover{filter:brightness(1.04);box-shadow:0 8px 18px #b18b4f24}
.studio-plan__cta:focus-visible{outline:3px solid #305fb9;outline-offset:4px}
.studio-plan__arrow{display:flex;align-items:center;justify-content:flex-end;flex:0 0 48px;height:24px;border-left:1px solid #ffffff66}
.studio-plan__arrow svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s}
.studio-plan__cta:is(:hover,:focus-visible) svg{transform:translateX(3px)}
.studio-plan--featured{margin:-36px -4px -4px;border:4px solid var(--plan-gold);border-radius:20px;z-index:1}
.studio-plan--featured .studio-plan__header{padding-top:40px;padding-bottom:40px;border-radius:16px 16px 0 0;background:#f5e3c4}
.studio-plan--featured .studio-plan__tag{background:#efdab0}
.studio-pricing__note{font-size:12px;line-height:1.8;margin:28px 0 0;color:#727888;text-align:left}
.studio-pricing__note p{margin:6px 0}
@media(max-width:1100px) and (min-width:841px){
  .studio-pricing__inner{width:calc(100% - 48px)}
  .studio-plan__header h3{font-size:22px}
  .studio-plan__amount strong{font-size:50px}
  .studio-plan__amount--quote strong{font-size:34px}
  .studio-plan__body{padding:40px 22px}
  .studio-plan__features li,.studio-plan__description{font-size:16px}
  .studio-plan__cta{font-size:16px}
}
@media(max-width:840px){
  .studio-pricing{padding:64px 0}
  .studio-pricing__inner{width:calc(100% - 40px)}
  .studio-pricing__english{font-size:64px}
  .studio-pricing__grid{grid-template-columns:1fr;gap:28px;margin:48px auto 0;max-width:520px}
  .studio-plan--featured{margin:0}
  .studio-plan__header,.studio-plan--featured .studio-plan__header{padding:24px 12px}
  .studio-plan__body{padding:32px;gap:32px}
  .studio-plan__summary{min-height:0}
  .studio-plan__description{min-height:90px}
  .studio-pricing__note{max-width:520px;margin:24px auto 0;text-align:left}
}
@media(max-width:440px){
  .studio-pricing__label{gap:24px}
  .studio-pricing__label h2{font-size:18px}
  .studio-pricing__english{font-size:56px}
  .studio-plan__header h3{font-size:25px}
  .studio-plan__amount{min-height:96px;padding:28px 8px 10px}
  .studio-plan__amount strong{font-size:48px}
  .studio-plan__amount--quote strong{font-size:36px}
  .studio-plan__body{padding:28px 24px}
  .studio-plan__features li,.studio-plan__description{font-size:16px}
}
@media(prefers-reduced-motion:reduce){.studio-plan__cta,.studio-plan__arrow svg{transition:none}}
