.w99-detail--ip{--ip-ink:#382943;--ip-rose:#944665;--ip-line:#dcc8dc;color:var(--ip-ink);background:#fff8fc}
.w99-detail--ip .w99-section{padding-top:76px;padding-bottom:76px}
.w99-detail--ip .w99-detail-hero{position:relative;background:radial-gradient(ellipse at 85% 15%,#e7e0fc 0,transparent 54%),radial-gradient(ellipse at 8% 80%,#fce0e9 0,transparent 55%),#fff8fc;gap:5%;grid-template-columns:1.1fr 1fr}
.w99-detail--ip .w99-detail-hero h1{font-size:clamp(34px,3.5vw,58px);font-weight:600;line-height:1.45;letter-spacing:.035em;text-wrap:balance}
.w99-detail--ip .w99-detail-hero>img{object-fit:contain;height:auto;max-height:670px;aspect-ratio:4/5;background:#fff;border:10px solid #fff;border-radius:140px 140px 32px 32px;box-shadow:0 22px 65px #60405e18}
.w99-detail--ip .w99-eyebrow{color:#71455e;letter-spacing:.15em}
.w99-detail--ip .w99-audience{border-color:var(--ip-line);font-size:12px;margin:20px 0 14px;padding:14px 0 0}
.w99-detail--ip .w99-button{border-radius:100px;background:#6e3e67;box-shadow:0 6px 0 #ecd9e5;font-weight:600}
.w99-detail--ip .w99-button:hover{background:#512d4d;transform:translateY(-1px)}
.w99-detail--ip .w99-ip-minimum{border:1px solid #d9a9bf;border-radius:24px;background:#fffafbe8;padding:20px 24px;margin-top:20px;max-width:580px}
.w99-detail--ip .w99-ip-minimum p{font-size:13px;line-height:1.7;margin:0;max-width:none}
.w99-ip-minimum>div{display:flex;align-items:baseline;gap:14px;margin:2px 0 8px;flex-wrap:wrap}
.w99-ip-minimum strong{font-family:Georgia,serif;color:var(--ip-rose);font-size:72px;line-height:1;font-weight:400}
.w99-ip-minimum span{font-size:17px;font-weight:600}
.w99-detail--ip .w99-ip-minimum .w99-ip-min-note{font-size:12px}
.w99-ip-routes{text-align:center;background:#f8f2ff}
.w99-ip-routes>.w99-lead,.w99-ip-routes>.w99-small{margin-left:auto;margin-right:auto}
.w99-ip-route-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin:36px 0 24px;text-align:left}
.w99-ip-route-grid article{padding:34px;border-radius:28px;border:1px solid #e0c9d9;background:#fff;box-shadow:0 12px 32px #6c43670a;display:flex;flex-direction:column;align-items:flex-start}
.w99-ip-route-grid article:nth-child(2){background:#fff9fc}
.w99-ip-direction{font-size:12px;font-weight:600;letter-spacing:.12em;color:#734c77;border-bottom:1px solid #dbc7dc;padding-bottom:16px;margin-bottom:23px;width:100%}
.w99-ip-direction>span{margin:0 12px;color:#a04d79}
.w99-detail--ip .w99-ip-route-grid h3{font-size:clamp(21px,2vw,28px);line-height:1.55;font-weight:600;text-wrap:balance}
.w99-ip-route-grid .w99-textlink{margin-top:auto}
.w99-detail--ip .w99-subnav{background:#fff8fc;border-color:var(--ip-line);gap:24px}
.w99-detail--ip .w99-chapter{gap:7%;grid-template-columns:1fr 1.35fr;border-color:var(--ip-line);padding:44px 0}
.w99-detail--ip .w99-chapter h2{font-size:clamp(25px,2.5vw,36px);line-height:1.6;text-wrap:balance}
.w99-detail--ip:lang(ja) :is(h2,h3){word-break:auto-phrase}
.w99-detail--ip .w99-number{color:#98657d;font-style:italic}
.w99-detail--ip .w99-detail-interlude{border-radius:30px;overflow:hidden}
.w99-detail--ip .w99-case-section{background:#faebf2}
.w99-detail--ip .w99-case-grid{margin-top:34px;gap:28px}
.w99-detail--ip .w99-case-grid article{background:#fff;border:1px solid #e2cbd9;padding:26px;border-radius:28px}
.w99-detail--ip .w99-case-grid img{height:auto;aspect-ratio:1;border-radius:16px}
.w99-detail--ip .w99-ip-sales{background:#f1ebfa}
.w99-detail--ip .w99-detail-process{background:#fff5eb}
.w99-detail--ip .w99-detail-process ol{gap:20px;margin-top:32px}
.w99-detail--ip .w99-detail-process li{background:#fff;border:1px solid #e6d3ca;border-radius:24px;padding:24px}
.w99-detail--ip .w99-detail-process h3{font-size:20px;line-height:1.5}
.w99-detail--ip .w99-faq{max-width:1200px}
.w99-detail--ip .w99-faq details{border-color:var(--ip-line)}
.w99-detail--ip .w99-contact{background:radial-gradient(ellipse at 15% 20%,#f7dce9,transparent 65%),linear-gradient(135deg,#f6edf9,#e7e4fb)}
.w99-detail--ip .w99-contact h3{margin-top:26px;font-size:17px}
.w99-detail--ip :is(a,summary):focus-visible{outline:3px solid #6b3975;outline-offset:5px}
@media(max-width:800px){.w99-detail--ip .w99-section{padding:48px 7%}.w99-detail--ip .w99-detail-hero,.w99-detail--ip .w99-chapter,.w99-ip-route-grid{grid-template-columns:1fr}.w99-detail--ip .w99-detail-hero{gap:34px}.w99-detail--ip .w99-detail-hero>img{max-height:480px;max-width:380px;justify-self:center;border-radius:90px 90px 24px 24px}.w99-detail--ip .w99-detail-hero h1{font-size:34px}.w99-detail--ip .w99-ip-minimum{padding:18px}.w99-ip-minimum strong{font-size:64px}.w99-ip-route-grid article{padding:26px}.w99-detail--ip .w99-chapter{gap:14px}.w99-detail--ip .w99-detail-process ol{grid-template-columns:1fr 1fr}.w99-detail--ip .w99-case-grid{grid-template-columns:1fr}.w99-detail--ip .w99-button{width:100%;font-size:14px;padding:16px 20px}.w99-detail--ip .w99-detail-interlude{margin:24px 0}.w99-ip-direction>span{margin:0 8px}}
@media(max-width:450px){.w99-detail--ip .w99-detail-process ol{grid-template-columns:1fr}.w99-detail--ip .w99-detail-hero h1{font-size:30px}}
@media(prefers-reduced-motion:reduce){.w99-detail--ip .w99-button:hover{transform:none}}

.w99-ip-plans{background:#fff5ef}.w99-plan-terms{border-top:1px solid #dcc8dc;padding-top:18px;font-weight:600}.w99-ip-brand{background:#f5effa}
