:root{--ink:#102238;--purple:#7f2a7c;--orange:#ffb52a;--teal:#28c8c3;--content:1200px}
*{box-sizing:border-box}
html,body{margin:0}
body{color:var(--ink);font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}
.decor{position:absolute;pointer-events:none}
.ring{border-radius:50%;border:3px solid rgba(139,79,159,.16)}
.dot{border-radius:50%}

.marker{position:relative;display:inline-block;z-index:0;padding:0 .08em}
.marker::before{content:"";position:absolute;z-index:-1;inset:auto -.14em -.06em -.16em;height:1.02em;background:url("assets/heading-marker-orange.svg") center/100% 100% no-repeat;transform:rotate(-.6deg)}
.marker::after{content:"";position:absolute;width:40px;height:35px;right:-43px;top:-20px;background:url("assets/heading-rays-orange.svg") center/contain no-repeat;transform:rotate(5deg)}


/* Approved Overview: SP */
.sp-page{width:390px;min-width:390px;background:#f8f7fa}
.overview-sp{position:relative;overflow:hidden;min-height:720px;background:radial-gradient(ellipse 88% 30% at 0% 17%,rgba(255,177,121,.19),transparent 72%),radial-gradient(ellipse 95% 34% at 100% 66%,rgba(180,145,213,.24),transparent 73%),linear-gradient(103deg,#f8f4f1 0%,#f8f7fa 49%,#f2eef9 100%)}
.overview-sp::before{content:"";position:absolute;width:520px;height:210px;left:-290px;top:-130px;border:34px solid rgba(255,176,119,.065);border-radius:50%;transform:rotate(-8deg)}
.overview-sp::after{content:"";position:absolute;width:520px;height:190px;right:-275px;bottom:-125px;border-radius:50%;background:rgba(132,88,157,.075);transform:rotate(6deg)}
.overview-sp__inner{position:relative;z-index:2;padding:54px 20px 42px;text-align:center}
.overview-sp h2{margin:0;font-size:25px;line-height:1.5;font-weight:800;letter-spacing:0}
.sp-heading-line{display:inline-block;white-space:nowrap}
.overview-sp .marker--left::after{left:-42px;right:auto;top:13px;transform:rotate(-112deg)}
.overview-sp p{margin:27px 0 0;font-size:16px;line-height:1.82;font-weight:500;letter-spacing:.01em}
.overview-sp__visual{display:block;width:342px;height:auto;margin:28px auto 0}
.overview-ring{width:38px;height:38px;right:17px;top:172px}
.overview-dot{width:12px;height:12px;left:22px;bottom:146px;background:rgba(36,188,190,.28)}


/* Next Comparison: PC */
.pc-page{min-width:1024px;background:#f7f4f4}
.comparison{position:relative;overflow:hidden;min-height:1180px;background:radial-gradient(ellipse 51% 46% at 3% 18%,rgba(255,177,121,.18),transparent 72%),radial-gradient(ellipse 51% 44% at 99% 18%,rgba(180,145,213,.25),transparent 71%),radial-gradient(ellipse 55% 42% at 3% 79%,rgba(255,177,121,.16),transparent 73%),radial-gradient(ellipse 55% 44% at 100% 82%,rgba(77,201,215,.18),transparent 72%),linear-gradient(103deg,#faf3ef 0%,#f8f5f6 48%,#f1edf8 100%)}
.comparison::before{content:"";position:absolute;width:1040px;height:350px;left:-470px;bottom:-245px;border-radius:50% 50% 0 0;background:rgba(255,161,104,.06);transform:rotate(-5deg)}
.comparison::after{content:"";position:absolute;width:900px;height:390px;right:-390px;top:-280px;border-radius:50%;border:66px solid rgba(132,88,157,.055);transform:rotate(8deg)}
.comparison__inner{position:relative;z-index:2;width:min(var(--content),calc(100% - 96px));min-height:1180px;margin:auto;padding:60px 0 64px}
.comparison h2{margin:0;text-align:center;font-size:44px;line-height:1.4;font-weight:800;letter-spacing:.005em}
.marker--teal{margin-left:.08em}
.marker--teal::before{height:1.02em;bottom:-.06em;background:url("assets/heading-marker-teal.svg") center/100% 100% no-repeat;transform:rotate(-1deg)}
.marker--teal::after{display:none}
.comparison__grid{display:grid;grid-template-columns:300px minmax(0,560px) 300px;gap:20px;align-items:center;justify-content:center;margin-top:38px}
.comparison__side h3{margin:0 0 26px;font-size:31px;line-height:1.3;font-weight:800}
.comparison__side ul{display:grid;gap:27px;margin:0;padding:0;list-style:none}
.comparison__side li{display:grid;grid-template-columns:48px 1fr;align-items:center;gap:14px;font-size:17px;line-height:1.55;font-weight:700;white-space:nowrap}
.comparison__side img{display:block;width:44px;height:44px;object-fit:contain}
.comparison__side--odoo ul{gap:25px}
.comparison__grid picture{display:block;width:100%}.comparison__transition-art{display:block;width:100%;max-width:560px;height:auto;margin-inline:auto}
.benefits{position:relative;margin-top:56px;text-align:center}
.benefits::before{content:"";position:absolute;z-index:-1;width:920px;height:390px;left:50%;top:106px;transform:translateX(-50%);border-radius:50%;background:rgba(255,255,255,.2);filter:blur(1px)}
.benefits__eyebrow{margin:0;color:#8e2584;font-size:15px;line-height:1.5;font-weight:800;letter-spacing:.06em}
.benefits h2,.benefits h3{margin:8px 0 0;font-size:39px;line-height:1.4;font-weight:800;letter-spacing:.005em}
.benefits__accent{position:relative;display:inline-block}
.benefits__accent::after{content:"";position:absolute;z-index:-1;left:-.1em;right:-.1em;bottom:.02em;height:.34em;border-radius:50%;background:#66d7d3;transform:rotate(-1.3deg)}
.benefits__lead{margin:19px 0 0;font-size:17px;line-height:1.8;font-weight:500}
.benefits__cards{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:38px;text-align:left}
.benefit-card{position:relative;min-height:258px;padding:31px 30px 28px;border-radius:24px;background:rgba(255,255,255,.9);box-shadow:0 14px 35px rgba(74,48,79,.08);border:1px solid rgba(255,255,255,.72)}
.benefit-card__icon{display:grid;place-items:center;width:72px;height:72px;margin:0 auto;border-radius:20px}
.benefit-card__icon img{display:block;width:42px;height:42px;object-fit:contain}
.benefit-card__icon--purple{background:linear-gradient(135deg,#a73eb6,#7f2a9b)}
.benefit-card__icon--blue{background:linear-gradient(135deg,#27c3c1,#148ed1)}
.benefit-card__icon--orange{background:linear-gradient(135deg,#ff9b29,#ff6d57)}
.benefit-card h3,.benefit-card h4{margin:22px 0 0;font-size:21px;line-height:1.45;font-weight:800;text-align:center}
.benefit-card p{margin:14px 0 0;font-size:16px;line-height:1.8;font-weight:500}
.benefits__note{margin:22px 0 0;color:#596374;font-size:12px;line-height:1.65}
.comparison-ring{width:42px;height:42px;right:5.7%;top:160px;border-color:rgba(36,188,190,.16)}
.comparison-dot-a{width:17px;height:17px;left:8%;top:175px;background:rgba(255,142,95,.24);transform:rotate(45deg);border-radius:4px}
.comparison-dot-b{width:15px;height:15px;right:17%;bottom:92px;background:rgba(36,188,190,.2)}
@media(max-width:1279px){.comparison__inner{width:calc(100% - 64px)}
.comparison__grid{grid-template-columns:215px minmax(0,470px) 215px;gap:15px;justify-content:center}
.comparison h2{font-size:40px}
.comparison__side li{font-size:15px;gap:10px}
.comparison__side img{width:38px;height:38px}
.benefits h2,.benefits h3{font-size:34px}
.benefit-card{padding:27px 24px}
.benefit-card h3,.benefit-card h4{font-size:18px}
.benefit-card p{font-size:14px}
}

/* Approved Comparison: SP */
.comparison-sp{position:relative;overflow:hidden;min-height:880px;background:radial-gradient(ellipse 95% 30% at 0% 13%,rgba(255,177,121,.2),transparent 72%),radial-gradient(ellipse 100% 34% at 100% 70%,rgba(180,145,213,.24),transparent 73%),linear-gradient(103deg,#faf3ef 0%,#f8f5f6 48%,#f1edf8 100%)}
.comparison-sp::before{content:"";position:absolute;width:520px;height:190px;right:-280px;top:-118px;border:34px solid rgba(132,88,157,.055);border-radius:50%;transform:rotate(8deg)}
.comparison-sp__inner{position:relative;z-index:2;padding:48px 20px 52px}
.comparison-sp h2{margin:0;text-align:center;font-size:28px;line-height:1.52;font-weight:800;letter-spacing:0}
.comparison-sp__block{margin-top:39px}
.comparison-sp__block h3{margin:0 0 20px;font-size:25px;line-height:1.4;font-weight:800;text-align:center}
.comparison-sp__block--legacy h3::before{content:"";display:inline-block;width:12px;height:12px;margin:0 12px 3px 0;border-radius:3px;background:#ffd7c5;transform:rotate(45deg)}
.comparison-sp__list{display:grid;gap:15px;width:320px;margin:0 auto;padding:0;list-style:none}
.comparison-sp__list li{display:grid;grid-template-columns:38px 1fr;align-items:center;gap:13px;font-size:16px;line-height:1.55;font-weight:700}
.comparison-sp__list img{display:block;width:36px;height:36px;object-fit:contain}
.comparison-sp__visual{display:block;width:350px;height:auto;margin:26px auto 3px}
.comparison-sp__block--odoo{margin-top:14px}
.comparison-sp__block--odoo h3{font-size:29px}
.comparison-sp__block--odoo .comparison-sp__list{gap:17px}
.comparison-sp-ring{width:36px;height:36px;right:17px;top:175px;border-color:rgba(36,188,190,.16)}
.comparison-sp-dot{width:13px;height:13px;left:24px;bottom:88px;background:rgba(255,142,95,.24);transform:rotate(45deg);border-radius:3px}

/* Next Benefits: PC */
.benefits-section{position:relative;overflow:hidden;min-height:690px;background:radial-gradient(ellipse 58% 72% at 0% 48%,rgba(255,177,121,.18),transparent 72%),radial-gradient(ellipse 58% 72% at 100% 45%,rgba(77,201,215,.18),transparent 72%),linear-gradient(103deg,#faf3ef 0%,#f8f5f6 48%,#eef7fa 100%)}
.benefits-section::before{content:"";position:absolute;width:940px;height:250px;left:-430px;bottom:-180px;border-radius:50%;background:rgba(255,161,104,.055);transform:rotate(-5deg)}
.benefits-section::after{content:"";position:absolute;width:760px;height:320px;right:-350px;top:-236px;border-radius:50%;border:54px solid rgba(79,195,207,.05);transform:rotate(8deg)}
.benefits-section__inner{position:relative;z-index:2;width:min(var(--content),calc(100% - 96px));margin:auto;padding:54px 0 48px}
.benefits-section .benefits{margin-top:0}
.benefits-section .benefits::before{display:none}

/* Approved Benefits: SP */
.benefits-sp{position:relative;overflow:hidden;background:radial-gradient(ellipse 105% 28% at 0% 15%,rgba(255,177,121,.2),transparent 72%),radial-gradient(ellipse 105% 30% at 100% 78%,rgba(77,201,215,.18),transparent 73%),linear-gradient(103deg,#faf3ef 0%,#f8f5f6 48%,#eef7fa 100%)}
.benefits-sp__inner{position:relative;z-index:2;padding:46px 20px 44px;text-align:center}
.benefits-sp__eyebrow{margin:0;color:#8e2584;font-size:14px;line-height:1.5;font-weight:800;letter-spacing:.05em}
.benefits-sp h2{margin:7px 0 0;font-size:28px;line-height:1.5;font-weight:800;letter-spacing:0}
.benefits-sp__accent{position:relative;display:inline-block;z-index:0}
.benefits-sp__accent::before{content:"";position:absolute;z-index:-1;left:-.12em;right:-.12em;bottom:.02em;height:.38em;border-radius:50%;background:#66d7d3;transform:rotate(-1.2deg)}
.benefits-sp__lead{margin:17px 5px 0;font-size:16px;line-height:1.75;font-weight:500}
.benefits-sp__cards{display:grid;gap:16px;margin-top:27px;text-align:left}
.benefits-sp .benefit-card{min-height:0;padding:23px 22px 22px;border-radius:20px}
.benefits-sp .benefit-card__icon{width:62px;height:62px;border-radius:18px}
.benefits-sp .benefit-card__icon img{width:36px;height:36px}
.benefits-sp .benefit-card h3{margin:16px 0 0;font-size:20px;line-height:1.45}
.benefits-sp .benefit-card p{margin:10px 0 0;font-size:16px;line-height:1.72}
.benefits-sp__note{margin:17px 2px 0;color:#596374;font-size:12px;line-height:1.65;text-align:left}
.benefits-sp-ring{width:34px;height:34px;right:14px;top:207px;border-color:rgba(36,188,190,.16)}

/* Next Integrated Flow: PC */
.integrated-flow{position:relative;overflow:hidden;min-height:650px;background:radial-gradient(ellipse 55% 72% at 0% 45%,rgba(77,201,215,.12),transparent 72%),radial-gradient(ellipse 52% 70% at 100% 38%,rgba(180,145,213,.2),transparent 72%),linear-gradient(103deg,#f3f8fa 0%,#f8f5f6 50%,#f2eef9 100%)}
.integrated-flow__inner{position:relative;z-index:2;width:min(var(--content),calc(100% - 96px));margin:auto;padding:54px 0 42px;text-align:center}
.integrated-flow h2{margin:0;font-size:40px;line-height:1.45;font-weight:800;letter-spacing:.003em}
.integrated-flow__accent{position:relative;display:inline-block;z-index:0;margin:0 .06em}
.integrated-flow__accent::before{content:"";position:absolute;z-index:-1;left:-.14em;right:-.14em;bottom:-.02em;height:1em;background:url("assets/heading-marker-orange.svg") center/100% 100% no-repeat;transform:rotate(-.7deg)}
.integrated-flow__lead{margin:17px 0 0;font-size:17px;line-height:1.8;font-weight:500}
.integrated-flow__diagram{display:flex;align-items:flex-start;justify-content:center;gap:20px;height:290px;margin-top:42px}
.flow-node{position:relative;z-index:2;flex:0 0 160px;width:160px;text-align:center}
.flow-arrow{display:block;flex:0 0 52px;width:52px;height:30px;margin-top:48px}
.flow-node__card{display:grid;place-items:center;width:126px;height:126px;margin:auto;border-radius:26px;background:rgba(255,255,255,.9);box-shadow:0 14px 32px rgba(72,48,82,.12);border:1px solid rgba(255,255,255,.75)}
.flow-node__card img{display:block;width:82px;height:82px;object-fit:contain}
.flow-node h3{margin:12px 0 0;font-size:20px;line-height:1.4;font-weight:800}
.flow-node p{margin:5px 0 0;color:#596374;font-size:13px;line-height:1.45;font-weight:600}
.integrated-flow-dot{width:14px;height:14px;left:8%;top:330px;background:rgba(255,142,95,.22);transform:rotate(45deg);border-radius:4px}
.integrated-flow-ring{width:42px;height:42px;right:7%;top:105px;border-color:rgba(139,79,159,.14)}
@media(max-width:1279px){.integrated-flow__diagram{position:relative;left:50%;width:1200px;transform:translateX(-50%) scale(.79);transform-origin:top center}.integrated-flow{min-height:600px}}

/* Approved Integrated Flow: SP */
.integrated-flow-sp{position:relative;overflow:hidden;background:radial-gradient(ellipse 105% 30% at 0% 18%,rgba(77,201,215,.14),transparent 72%),radial-gradient(ellipse 105% 32% at 100% 76%,rgba(180,145,213,.2),transparent 72%),linear-gradient(103deg,#f3f8fa 0%,#f8f5f6 50%,#f2eef9 100%)}
.integrated-flow-sp__inner{position:relative;z-index:2;padding:46px 20px 43px;text-align:center}
.integrated-flow-sp h2{margin:0;font-size:28px;line-height:1.52;font-weight:800}
.integrated-flow-sp__accent{position:relative;display:inline-block;z-index:0}
.integrated-flow-sp__accent::before{content:"";position:absolute;z-index:-1;left:-.14em;right:-.14em;bottom:-.02em;height:1em;background:url("assets/heading-marker-orange.svg") center/100% 100% no-repeat}
.integrated-flow-sp__lead{margin:17px 4px 0;font-size:16px;line-height:1.75;font-weight:500}
.flow-sp-list{display:grid;justify-items:center;margin-top:28px}
.flow-sp-item{display:grid;grid-template-columns:80px 1fr;align-items:center;gap:17px;width:350px;padding:18px 20px;border-radius:20px;background:rgba(255,255,255,.9);box-shadow:0 12px 28px rgba(72,48,82,.09);text-align:left}
.flow-sp-item__icon{display:block;width:76px;height:76px}
.flow-sp-item h3{margin:0;font-size:20px;line-height:1.45;font-weight:800}
.flow-sp-item p{margin:5px 0 0;color:#596374;font-size:15px;line-height:1.55;font-weight:600}
.flow-sp-arrow{display:block;width:38px;height:18px;margin:7px auto;transform:rotate(90deg)}
.integrated-flow-sp-ring{width:34px;height:34px;right:14px;top:215px;border-color:rgba(139,79,159,.14)}

/* Next RICE CLOUD Reasons: PC */
.reasons{position:relative;overflow:hidden;min-height:720px;background:radial-gradient(ellipse 52% 86% at 0% 48%,rgba(77,201,215,.18),transparent 72%),radial-gradient(ellipse 58% 88% at 100% 54%,rgba(180,145,213,.22),transparent 72%),linear-gradient(103deg,#eff8f9 0%,#f9f5f4 50%,#f2edf8 100%)}
.reasons::before{content:"";position:absolute;width:760px;height:760px;left:-455px;top:-200px;border:72px solid rgba(40,188,185,.045);border-radius:50%}
.reasons__inner{position:relative;z-index:2;display:grid;grid-template-columns:440px minmax(0,650px);gap:92px;align-items:center;width:min(var(--content),calc(100% - 96px));min-height:720px;margin:auto;padding:72px 0}
.reasons__intro{text-align:left}
.reasons__eyebrow{margin:0;color:#8e2584;font-size:15px;line-height:1.5;font-weight:800;letter-spacing:.06em}
.reasons h2{margin:13px 0 0;font-size:42px;line-height:1.48;font-weight:800}
.reasons__accent{position:relative;display:inline-block;z-index:0}
.reasons__accent::before{content:"";position:absolute;z-index:-1;left:-.12em;right:-.12em;bottom:-.02em;height:.42em;border-radius:50%;background:#60d5d0;transform:rotate(-1deg)}
.reasons__lead{margin:26px 0 0;font-size:18px;line-height:1.8;font-weight:700}
.reasons__support{margin:14px 0 0;color:#4d5b6c;font-size:16px;line-height:1.82;font-weight:500}
.reasons__steps{position:relative;display:grid;gap:0}
.reasons__steps::before{content:"";position:absolute;left:117px;top:77px;bottom:77px;width:2px;background:linear-gradient(#a340b9,#25bdb8,#ff8151)}
.reason-step{position:relative;display:grid;grid-template-columns:54px 86px 1fr;gap:20px;align-items:center;min-height:174px;padding:25px 0;border-bottom:1px solid rgba(64,49,76,.13)}
.reason-step:last-child{border-bottom:0}
.reason-step__number{align-self:start;padding-top:15px;color:rgba(127,42,124,.44);font-size:18px;line-height:1;font-weight:800;letter-spacing:.08em}
.reason-step__icon{position:relative;z-index:2;display:grid;place-items:center;width:86px;height:86px;border-radius:50%;background:#f8eefb;box-shadow:0 0 0 9px rgba(248,245,246,.92)}
.reason-step:nth-child(2) .reason-step__icon{background:#e7f8f7}.reason-step:nth-child(3) .reason-step__icon{background:#fff0e9}
.reason-step__icon img{display:block;width:56px;height:56px}
.reason-step h3{margin:0;font-size:22px;line-height:1.45;font-weight:800}
.reason-step p{margin:8px 0 0;color:#465567;font-size:16px;line-height:1.75;font-weight:500}
.reasons-dot{width:14px;height:14px;left:7%;bottom:105px;background:rgba(255,142,95,.24);transform:rotate(45deg);border-radius:4px}
.reasons-ring{width:44px;height:44px;right:5%;top:82px;border-color:rgba(36,188,190,.17)}
@media(max-width:1279px){.reasons__inner{grid-template-columns:370px minmax(0,560px);gap:54px;width:calc(100% - 64px)}.reasons h2{font-size:36px}.reasons__lead{font-size:16px}.reasons__support{font-size:14px}.reason-step{grid-template-columns:46px 76px 1fr;gap:16px}.reasons__steps::before{left:100px}.reason-step__icon{width:76px;height:76px}.reason-step h3{font-size:19px}.reason-step p{font-size:14px}}

/* Approved RICE CLOUD Reasons: SP */
.reasons-sp{position:relative;overflow:hidden;background:radial-gradient(ellipse 105% 28% at 0% 14%,rgba(77,201,215,.18),transparent 72%),radial-gradient(ellipse 110% 32% at 100% 82%,rgba(180,145,213,.22),transparent 72%),linear-gradient(103deg,#eff8f9 0%,#f9f5f4 50%,#f2edf8 100%)}
.reasons-sp__inner{position:relative;z-index:2;padding:47px 20px 45px}
.reasons-sp__intro{text-align:center}
.reasons-sp__eyebrow{margin:0;color:#8e2584;font-size:14px;line-height:1.5;font-weight:800;letter-spacing:.05em}
.reasons-sp h2{margin:8px 0 0;font-size:28px;line-height:1.52;font-weight:800}
.reasons-sp__accent{position:relative;display:inline-block;z-index:0}
.reasons-sp__accent::before{content:"";position:absolute;z-index:-1;left:-.12em;right:-.12em;bottom:-.01em;height:.42em;border-radius:50%;background:#60d5d0;transform:rotate(-1deg)}
.reasons-sp__lead{margin:20px 2px 0;font-size:16px;line-height:1.75;font-weight:700}
.reasons-sp__support{margin:11px 2px 0;color:#4d5b6c;font-size:15px;line-height:1.75;font-weight:500}
.reasons-sp__steps{position:relative;display:grid;margin-top:30px}
.reasons-sp__steps::before{content:"";position:absolute;left:42px;top:48px;bottom:48px;width:2px;background:linear-gradient(#a340b9,#25bdb8,#ff8151)}
.reason-sp-step{position:relative;display:grid;grid-template-columns:84px 1fr;gap:17px;align-items:center;min-height:154px;padding:18px 0;border-bottom:1px solid rgba(64,49,76,.13)}
.reason-sp-step:last-child{border-bottom:0}
.reason-sp-step__number{position:absolute;z-index:3;left:0;top:17px;color:rgba(127,42,124,.48);font-size:13px;line-height:1;font-weight:800;letter-spacing:.08em}
.reason-sp-step__icon{position:relative;z-index:2;display:grid;place-items:center;width:84px;height:84px;border-radius:50%;background:#f5eafa;box-shadow:0 0 0 8px rgba(248,245,246,.94)}
.reason-sp-step:nth-child(2) .reason-sp-step__icon{background:#e7f8f7}.reason-sp-step:nth-child(3) .reason-sp-step__icon{background:#fff0e9}
.reason-sp-step__icon img{display:block;width:54px;height:54px}
.reason-sp-step h3{margin:0;font-size:19px;line-height:1.45;font-weight:800}
.reason-sp-step p{margin:7px 0 0;color:#465567;font-size:15px;line-height:1.68;font-weight:500}
.reasons-sp-ring{width:34px;height:34px;right:14px;top:260px;border-color:rgba(36,188,190,.17)}

/* Product Interface: PC */
.product-interface{position:relative;overflow:hidden;min-height:680px;background:radial-gradient(ellipse 58% 82% at 0% 50%,rgba(77,201,215,.13),transparent 72%),radial-gradient(ellipse 62% 88% at 100% 48%,rgba(255,177,121,.13),transparent 74%),linear-gradient(103deg,#f0f7fa 0%,#f7f4f7 48%,#f7f1ef 100%)}
.product-interface::before{content:"";position:absolute;width:900px;height:330px;left:-440px;bottom:-245px;border:58px solid rgba(61,180,192,.045);border-radius:50%;transform:rotate(-6deg)}
.product-interface__inner{position:relative;z-index:2;display:grid;grid-template-columns:430px minmax(0,720px);gap:54px;align-items:center;width:min(var(--content),calc(100% - 96px));min-height:680px;margin:auto;padding:54px 0}
.product-interface__copy{padding-left:10px}
.product-interface h2{margin:0;font-size:43px;line-height:1.46;font-weight:800;letter-spacing:.002em}
.product-interface__accent{position:relative;display:inline-block;z-index:0;padding:0 .04em}
.product-interface__accent::before{content:"";position:absolute;z-index:-1;left:-.14em;right:-.14em;bottom:-.08em;height:1.06em;background:url("assets/heading-marker-orange.svg") center/100% 100% no-repeat;transform:rotate(-.9deg)}
.product-interface__accent::after{content:"";position:absolute;width:38px;height:34px;right:-46px;top:1px;background:url("assets/heading-rays-orange.svg") center/contain no-repeat;transform:rotate(13deg)}
.product-interface__copy>p{margin:26px 0 0;font-size:17px;line-height:1.9;font-weight:500}
.product-interface__visual{position:relative;margin:0}
.product-interface__visual img{display:block;width:100%;height:auto}
.product-interface-dot{width:14px;height:14px;left:6%;top:46px;background:rgba(139,79,159,.2)}
.product-interface-ring{width:42px;height:42px;right:4%;bottom:62px;border-color:rgba(36,188,190,.16)}
@media(max-width:1279px){.product-interface__inner{grid-template-columns:370px minmax(0,610px);gap:34px;width:calc(100% - 64px)}.product-interface h2{font-size:36px}.product-interface__copy>p{font-size:15px}}

/* Product Interface: SP */
.product-interface-sp{position:relative;overflow:hidden;background:radial-gradient(ellipse 108% 32% at 0% 16%,rgba(77,201,215,.15),transparent 72%),radial-gradient(ellipse 110% 34% at 100% 82%,rgba(255,177,121,.14),transparent 74%),linear-gradient(103deg,#f0f7fa 0%,#f7f4f7 48%,#f7f1ef 100%)}
.product-interface-sp__inner{position:relative;z-index:2;padding:47px 20px 44px;text-align:center}
.product-interface-sp h2{margin:0;font-size:28px;line-height:1.52;font-weight:800}
.product-interface-sp__accent{position:relative;display:inline-block;z-index:0;padding:0 .04em}
.product-interface-sp__accent::before{content:"";position:absolute;z-index:-1;left:-.16em;right:-.15em;bottom:.01em;height:.78em;border-radius:14px 18px 13px 16px;background:#ffb326;transform:rotate(-1.2deg)}
.product-interface-sp__accent::after{content:none}
.product-interface-sp p{margin:20px 2px 0;font-size:16px;line-height:1.78;font-weight:500;text-align:left}
.product-interface-sp__visual{margin:27px -2px 0}
.product-interface-sp__visual img{display:block;width:350px;max-width:100%;height:auto;margin:auto}
.product-interface-sp-dot{width:12px;height:12px;left:22px;top:155px;background:rgba(139,79,159,.2)}
.product-interface-sp-ring{width:32px;height:32px;right:12px;bottom:28px;border-color:rgba(36,188,190,.16)}

/* RICE CLOUD Support: PC */
.support-section{position:relative;overflow:hidden;min-height:720px;background:radial-gradient(ellipse 60% 86% at 0% 48%,rgba(255,177,121,.15),transparent 73%),radial-gradient(ellipse 61% 86% at 100% 48%,rgba(77,201,215,.17),transparent 73%),linear-gradient(103deg,#faf4f0 0%,#f8f5f7 48%,#edf8fa 100%)}
.support-section::after{content:"";position:absolute;width:850px;height:300px;right:-390px;top:-225px;border:56px solid rgba(61,180,192,.045);border-radius:50%;transform:rotate(8deg)}
.support-section__inner{position:relative;z-index:2;display:grid;grid-template-columns:500px minmax(0,630px);gap:70px;align-items:center;width:min(var(--content),calc(100% - 96px));min-height:720px;margin:auto;padding:58px 0}
.support-section__visual{position:relative;width:500px;aspect-ratio:810/555}
.support-section__cloud{display:block;width:100%;height:auto}
.support-section__logo{position:absolute;left:50%;top:57%;display:block;width:330px;height:auto;transform:translate(-50%,-50%)}
.support-section__copy{text-align:left}
.support-section__eyebrow{margin:0;color:#8e2584;font-size:15px;line-height:1.5;font-weight:800;letter-spacing:.08em}
.support-section h2{margin:12px 0 0;font-size:43px;line-height:1.46;font-weight:800}
.support-section__accent{position:relative;display:inline-block;z-index:0}
.support-section__accent::before{content:"";position:absolute;z-index:-1;left:-.12em;right:-.12em;bottom:-.03em;height:.42em;border-radius:50%;background:#64d6d2;transform:rotate(-1deg)}
.support-section__lead{margin:22px 0 0;font-size:17px;line-height:1.85;font-weight:500}
.support-section__list{margin:31px 0 0;padding:0;list-style:none}
.support-section__list li{display:grid;grid-template-columns:82px 1fr;align-items:center;min-height:72px;border-bottom:1px solid rgba(77,63,86,.16)}
.support-section__list li:first-child{border-top:1px solid rgba(77,63,86,.16)}
.support-section__list span{color:#922c88;font-size:27px;line-height:1;font-weight:900;letter-spacing:.03em}
.support-section__list strong{font-size:18px;line-height:1.55;font-weight:800}
.support-section-dot{width:15px;height:15px;right:7%;bottom:82px;background:rgba(255,142,95,.24)}
@media(max-width:1279px){.support-section__inner{grid-template-columns:430px minmax(0,550px);gap:46px;width:calc(100% - 64px)}.support-section__visual{width:430px}.support-section__logo{width:284px}.support-section h2{font-size:37px}.support-section__lead{font-size:15px}.support-section__list strong{font-size:16px}}

/* RICE CLOUD Support: SP */
.support-section-sp{position:relative;overflow:hidden;background:radial-gradient(ellipse 110% 30% at 0% 20%,rgba(255,177,121,.16),transparent 72%),radial-gradient(ellipse 112% 31% at 100% 80%,rgba(77,201,215,.17),transparent 73%),linear-gradient(103deg,#faf4f0 0%,#f8f5f7 49%,#edf8fa 100%)}
.support-section-sp__inner{position:relative;z-index:2;padding:44px 20px 48px;text-align:center}
.support-section-sp__eyebrow{margin:0;color:#8e2584;font-size:13px;line-height:1.5;font-weight:800;letter-spacing:.07em}
.support-section-sp h2{margin:10px 0 0;font-size:29px;line-height:1.52;font-weight:800}
.support-section-sp__accent{position:relative;display:inline-block;z-index:0}
.support-section-sp__accent::before{content:"";position:absolute;z-index:-1;left:-.14em;right:-.14em;bottom:-.02em;height:.44em;border-radius:50%;background:#64d6d2;transform:rotate(-1deg)}
.support-section-sp__lead{margin:18px 0 0;font-size:16px;line-height:1.78;font-weight:500;text-align:left}
.support-section-sp__visual{position:relative;width:350px;max-width:100%;aspect-ratio:810/555;margin:22px auto 4px}
.support-section-sp__cloud{display:block;width:100%;height:auto}
.support-section-sp__logo{position:absolute;left:50%;top:57%;display:block;width:231px;height:auto;transform:translate(-50%,-50%)}
.support-section-sp__list{margin:18px 0 0;padding:0 18px;list-style:none;border-radius:22px;background:rgba(255,255,255,.72);box-shadow:0 12px 28px rgba(65,51,80,.07);text-align:left}
.support-section-sp__list li{display:grid;grid-template-columns:56px 1fr;align-items:center;min-height:70px;border-bottom:1px solid rgba(77,63,86,.16)}
.support-section-sp__list li:last-child{border-bottom:0}
.support-section-sp__list span{color:#922c88;font-size:22px;line-height:1;font-weight:900;letter-spacing:.03em}
.support-section-sp__list strong{font-size:16px;line-height:1.55;font-weight:800}
.support-section-sp-dot{width:12px;height:12px;left:18px;top:194px;background:rgba(255,142,95,.23)}
.support-section-sp-ring{width:34px;height:34px;right:12px;bottom:32px;border-color:rgba(36,188,190,.16)}

/* Next Implementation Steps: PC */
.implementation-steps{position:relative;overflow:hidden;min-height:680px;background:radial-gradient(ellipse 54% 80% at 0% 66%,rgba(255,177,121,.17),transparent 72%),radial-gradient(ellipse 58% 82% at 100% 28%,rgba(180,145,213,.2),transparent 72%),linear-gradient(103deg,#faf4ef 0%,#f9f6f6 49%,#f2eef8 100%)}
.implementation-steps::after{content:"";position:absolute;width:780px;height:300px;right:-340px;top:-225px;border:55px solid rgba(132,88,157,.045);border-radius:50%;transform:rotate(8deg)}
.implementation-steps__inner{position:relative;z-index:2;width:min(var(--content),calc(100% - 96px));margin:auto;padding:49px 0 48px;text-align:left}
.implementation-steps__eyebrow{margin:0;color:#8e2584;font-size:15px;line-height:1.5;font-weight:800;letter-spacing:.06em}
.implementation-steps h2{margin:7px 0 0;font-size:40px;line-height:1.45;font-weight:800}
.implementation-steps__accent{position:relative;display:inline-block;z-index:0}
.implementation-steps__accent::before{content:"";position:absolute;z-index:-1;left:-.12em;right:-.12em;bottom:-.02em;height:1em;background:url("assets/heading-marker-orange.svg") center/100% 100% no-repeat;transform:rotate(-.8deg)}
.implementation-steps__lead{margin:14px 0 0;font-size:17px;line-height:1.8;font-weight:500}
.implementation-staircase{position:relative;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:start;gap:16px;min-height:390px;margin-top:34px;padding:0 6px}
.implementation-staircase::before{content:"";position:absolute;left:5%;right:3%;bottom:14px;height:86px;border-radius:46px;background:linear-gradient(90deg,rgba(255,145,111,.12),rgba(180,134,211,.15),rgba(54,188,201,.13));filter:blur(1px);transform:skewY(-4deg)}
.implementation-step{position:relative;z-index:1;min-height:264px;padding:22px 20px 20px;border:1px solid rgba(127,42,124,.08);border-radius:22px;background:rgba(255,255,255,.9);box-shadow:0 15px 32px rgba(65,51,80,.09);text-align:left}
.implementation-step:nth-child(1){margin-top:112px}.implementation-step:nth-child(2){margin-top:84px}.implementation-step:nth-child(3){margin-top:56px}.implementation-step:nth-child(4){margin-top:28px}.implementation-step:nth-child(5){margin-top:0}
.implementation-step__top{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:78px}
.implementation-step__number{display:block;color:rgba(127,42,124,.2);font-size:46px;line-height:1;font-weight:900;letter-spacing:-.04em}
.implementation-step__visual{display:grid;place-items:center;width:72px;height:72px;border-radius:22px;background:#f4e8f6;transform:rotate(-3deg)}
.implementation-step:nth-child(2) .implementation-step__visual{background:#e3f8f8;transform:rotate(3deg)}.implementation-step:nth-child(3) .implementation-step__visual{background:#fff0ec;transform:rotate(-2deg)}.implementation-step:nth-child(4) .implementation-step__visual{background:#fff5dd;transform:rotate(3deg)}.implementation-step:nth-child(5) .implementation-step__visual{background:#e8f4fb;transform:rotate(-3deg)}
.implementation-step__visual img{display:block;width:58px;height:58px;object-fit:contain;transform:rotate(3deg)}
.implementation-step:nth-child(2) .implementation-step__visual img{transform:rotate(-3deg)}.implementation-step:nth-child(3) .implementation-step__visual img{transform:rotate(2deg)}.implementation-step:nth-child(4) .implementation-step__visual img{transform:rotate(-3deg)}.implementation-step:nth-child(5) .implementation-step__visual img{transform:rotate(3deg)}
.implementation-step h3{margin:18px 0 0;font-size:19px;line-height:1.45;font-weight:800}
.implementation-step p{margin:9px 0 0;color:#4c5a6b;font-size:16px;line-height:1.65;font-weight:500}
.implementation-steps-dot{width:14px;height:14px;left:7%;top:130px;background:rgba(255,142,95,.23);transform:rotate(45deg);border-radius:4px}
.implementation-steps-ring{width:42px;height:42px;right:6%;bottom:92px;border-color:rgba(36,188,190,.16)}
@media(max-width:1279px){.implementation-steps__inner{width:calc(100% - 64px)}.implementation-steps h2{font-size:35px}.implementation-staircase{gap:10px}.implementation-step{min-height:264px;padding:18px 14px}.implementation-step__number{font-size:38px}.implementation-step__visual{width:62px;height:62px;border-radius:18px}.implementation-step__visual img{width:50px;height:50px}.implementation-step h3{font-size:17px}.implementation-step p{font-size:16px}}

/* Approved Implementation Steps: SP */
.implementation-steps-sp{position:relative;overflow:hidden;min-height:1110px;background:radial-gradient(ellipse 115% 26% at 0% 22%,rgba(255,177,121,.18),transparent 72%),radial-gradient(ellipse 120% 28% at 100% 78%,rgba(180,145,213,.21),transparent 72%),linear-gradient(103deg,#faf4ef 0%,#f9f6f6 49%,#f2eef8 100%)}
.implementation-steps-sp__inner{position:relative;z-index:2;padding:45px 20px 42px}
.implementation-steps-sp__eyebrow{margin:0;color:#8e2584;font-size:14px;line-height:1.5;font-weight:800;letter-spacing:.06em;text-align:center}
.implementation-steps-sp h2{margin:8px 0 0;font-size:28px;line-height:1.5;font-weight:800;text-align:center}
.implementation-steps-sp__accent{position:relative;display:inline-block;z-index:0}
.implementation-steps-sp__accent::before{content:"";position:absolute;z-index:-1;left:-.1em;right:-.1em;bottom:-.01em;height:1em;background:url("assets/heading-marker-orange.svg") center/100% 100% no-repeat}
.implementation-steps-sp__lead{margin:16px 7px 0;font-size:16px;line-height:1.75;font-weight:500;text-align:center}
.implementation-steps-sp__list{display:grid;gap:14px;margin-top:29px}
.implementation-step-sp{position:relative;display:grid;grid-template-columns:42px 64px minmax(0,1fr);gap:12px;align-items:center;min-height:142px;padding:18px 16px;border:1px solid rgba(127,42,124,.08);border-radius:20px;background:rgba(255,255,255,.92);box-shadow:0 12px 27px rgba(65,51,80,.08)}
.implementation-step-sp:nth-child(even){margin-left:12px}.implementation-step-sp:nth-child(odd){margin-right:12px}
.implementation-step-sp__number{color:rgba(127,42,124,.23);font-size:30px;line-height:1;font-weight:900;letter-spacing:-.04em}
.implementation-step-sp__visual{display:grid;place-items:center;width:64px;height:64px;border-radius:19px;background:#f4e8f6;transform:rotate(-2deg)}
.implementation-step-sp:nth-child(2) .implementation-step-sp__visual{background:#e3f8f8;transform:rotate(2deg)}.implementation-step-sp:nth-child(3) .implementation-step-sp__visual{background:#fff0ec}.implementation-step-sp:nth-child(4) .implementation-step-sp__visual{background:#fff5dd;transform:rotate(2deg)}.implementation-step-sp:nth-child(5) .implementation-step-sp__visual{background:#e8f4fb}
.implementation-step-sp__visual img{display:block;width:51px;height:51px;object-fit:contain}
.implementation-step-sp h3{margin:0;font-size:18px;line-height:1.45;font-weight:800}
.implementation-step-sp p{margin:6px 0 0;color:#4c5a6b;font-size:16px;line-height:1.65;font-weight:500}
.implementation-steps-sp-dot{width:12px;height:12px;left:15px;top:288px;background:rgba(255,142,95,.24)}
.implementation-steps-sp-ring{width:34px;height:34px;right:13px;bottom:122px;border-color:rgba(36,188,190,.16)}

/* Next Suitable Companies: PC */
.suitable-companies{position:relative;overflow:hidden;min-height:600px;background:radial-gradient(ellipse 58% 88% at 0% 38%,rgba(180,145,213,.2),transparent 72%),radial-gradient(ellipse 56% 84% at 100% 62%,rgba(77,201,215,.16),transparent 72%),linear-gradient(103deg,#f5f1f8 0%,#f7f5f8 48%,#eef8fa 100%)}
.suitable-companies::after{content:"";position:absolute;width:830px;height:310px;right:-410px;bottom:-230px;border:52px solid rgba(36,188,190,.045);border-radius:50%;transform:rotate(-7deg)}
.suitable-companies__inner{position:relative;z-index:2;width:min(var(--content),calc(100% - 96px));min-height:600px;margin:auto;padding:44px 0 30px}
.suitable-companies__copy{position:relative;z-index:2}
.suitable-companies__eyebrow{margin:0;text-align:center;color:#168f9a;font-size:15px;line-height:1.5;font-weight:800;letter-spacing:.06em}
.suitable-companies h2{margin:8px 0 0;text-align:center;font-size:40px;line-height:1.45;font-weight:800}
.suitable-companies__accent{position:relative;display:inline-block;z-index:0}
.suitable-companies__accent::before{content:"";position:absolute;z-index:-1;left:-.12em;right:-.12em;bottom:-.02em;height:1em;background:url("assets/heading-marker-teal.svg") center/100% 100% no-repeat;transform:rotate(-.8deg)}
.suitable-companies__lead{max-width:760px;margin:18px auto 0;text-align:center;font-size:16px;line-height:1.75;font-weight:500}
.suitable-companies__list{display:grid;grid-template-columns:1fr 1fr;column-gap:64px;row-gap:8px;max-width:1060px;margin:24px auto 0;padding:0;list-style:none}
.suitable-companies__list li{display:grid;grid-template-columns:42px minmax(0,1fr);gap:14px;align-items:center;min-height:58px;padding:7px 0;font-size:16px;line-height:1.65;font-weight:700}
.suitable-companies__check{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:linear-gradient(145deg,#963d9b,#742470);color:#fff;font-size:24px;line-height:1;font-weight:900;box-shadow:0 6px 14px rgba(127,42,124,.18)}
.suitable-companies__visual{position:absolute;z-index:1;right:-12px;bottom:2px;width:850px;margin:0;pointer-events:none}
.suitable-companies__visual img{display:block;width:100%;height:auto}
.suitable-companies-dot{width:14px;height:14px;right:8%;top:108px;background:rgba(255,181,42,.25)}
.suitable-companies-ring{width:42px;height:42px;left:6%;bottom:92px;border-color:rgba(139,79,159,.14)}
@media(max-width:1279px){.suitable-companies__inner{width:calc(100% - 64px)}.suitable-companies h2{font-size:35px}.suitable-companies__list{column-gap:38px}.suitable-companies__list li{grid-template-columns:38px 1fr;font-size:15px}.suitable-companies__check{width:38px;height:38px}.suitable-companies__visual{right:-24px;width:700px}}

/* Approved Suitable Companies: SP */
.suitable-companies-sp{position:relative;overflow:hidden;min-height:820px;background:radial-gradient(ellipse 110% 34% at 0% 18%,rgba(180,145,213,.2),transparent 72%),radial-gradient(ellipse 115% 36% at 100% 78%,rgba(77,201,215,.18),transparent 72%),linear-gradient(103deg,#f5f1f8 0%,#f7f5f8 48%,#eef8fa 100%)}
.suitable-companies-sp__inner{position:relative;z-index:2;padding:42px 20px 28px}
.suitable-companies-sp__eyebrow{margin:0;text-align:center;color:#168f9a;font-size:14px;line-height:1.5;font-weight:800;letter-spacing:.05em}
.suitable-companies-sp h2{margin:8px 0 0;text-align:center;font-size:28px;line-height:1.5;font-weight:800}
.suitable-companies-sp__accent{position:relative;display:inline-block;z-index:0}
.suitable-companies-sp__accent::before{content:"";position:absolute;z-index:-1;left:-.12em;right:-.12em;bottom:-.02em;height:1em;background:url("assets/heading-marker-teal.svg") center/100% 100% no-repeat}
.suitable-companies-sp__lead{margin:16px 4px 0;text-align:center;font-size:16px;line-height:1.75;font-weight:500}
.suitable-companies-sp__list{display:grid;gap:9px;margin:24px 0 0;padding:0;list-style:none}
.suitable-companies-sp__list li{display:grid;grid-template-columns:38px 1fr;gap:12px;align-items:center;min-height:62px;padding:8px 12px;border-radius:16px;background:rgba(255,255,255,.72);font-size:16px;line-height:1.62;font-weight:700}
.suitable-companies-sp__check{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:linear-gradient(145deg,#963d9b,#742470);color:#fff;font-size:21px;line-height:1;font-weight:900;box-shadow:0 5px 12px rgba(127,42,124,.16)}
.suitable-companies-sp__visual{display:block;width:350px;height:auto;margin:19px auto 0}
.suitable-companies-sp-dot{width:11px;height:11px;right:18px;top:145px;background:rgba(255,181,42,.28)}
.suitable-companies-sp-ring{width:34px;height:34px;left:14px;bottom:105px;border-color:rgba(139,79,159,.14)}

/* FAQ: PC */
.faq-section{position:relative;overflow:hidden;min-height:690px;background:radial-gradient(ellipse 48% 74% at 0% 24%,rgba(255,177,121,.15),transparent 72%),radial-gradient(ellipse 56% 82% at 100% 72%,rgba(180,145,213,.18),transparent 72%),linear-gradient(103deg,#fbf8f7 0%,#faf9fb 52%,#f5f1f9 100%)}
.faq-section__inner{position:relative;z-index:2;display:grid;grid-template-columns:330px minmax(0,1fr);gap:74px;width:min(var(--content),calc(100% - 96px));margin:auto;padding:66px 0 58px}
.faq-section__eyebrow{margin:0;color:#8e2584;font-size:15px;line-height:1.5;font-weight:800;letter-spacing:.08em}
.faq-section h2{margin:8px 0 0;font-size:42px;line-height:1.45;font-weight:800}
.faq-section__accent{position:relative;display:inline-block;z-index:0}
.faq-section__accent::before{content:"";position:absolute;z-index:-1;left:-.12em;right:-.12em;bottom:-.03em;height:1em;background:url("assets/heading-marker-orange.svg") center/100% 100% no-repeat}
.faq-section__intro p:last-child{margin:20px 0 0;font-size:16px;line-height:1.75;font-weight:500}
.faq-list{border-top:1px solid rgba(127,42,124,.19)}
.faq-item{border-bottom:1px solid rgba(127,42,124,.19);background:rgba(255,255,255,.28)}
.faq-item summary{display:grid;grid-template-columns:44px minmax(0,1fr) 34px;gap:10px;align-items:center;min-height:78px;padding:14px 18px;list-style:none;cursor:pointer;font-size:17px;line-height:1.65;font-weight:700}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item__q{color:#8b2d83;font-size:25px;line-height:1;font-weight:900}
.faq-item__toggle{position:relative;width:30px;height:30px;border-radius:50%;background:#f3e8f4}
.faq-item__toggle::before,.faq-item__toggle::after{content:"";position:absolute;left:8px;right:8px;top:14px;height:2px;border-radius:2px;background:#7f2a7c}
.faq-item__toggle::after{transform:rotate(90deg);transition:transform .2s ease}
.faq-item[open] .faq-item__toggle::after{transform:rotate(0)}
.faq-item p{margin:0;padding:0 62px 22px;color:#405064;font-size:16px;line-height:1.8;font-weight:500}
.faq-item summary:focus-visible{outline:3px solid #28c8c3;outline-offset:-3px;border-radius:10px}
.faq-section-dot{width:13px;height:13px;left:7%;bottom:90px;background:rgba(36,188,190,.2)}
.faq-section-ring{width:44px;height:44px;right:6%;top:102px;border-color:rgba(139,79,159,.14)}
@media(max-width:1279px){.faq-section__inner{grid-template-columns:280px 1fr;gap:45px;width:calc(100% - 64px)}.faq-section h2{font-size:36px}.faq-item summary{font-size:16px}}

/* Contact: PC */
.contact-section{position:relative;overflow:hidden;min-height:560px;color:#fff;background:#5a3156 url("assets/contact-bg-pc.svg") center/cover no-repeat}
.contact-section__inner{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;width:min(var(--content),calc(100% - 96px));min-height:560px;margin:auto;padding:38px 0;text-align:center}
.contact-section__heading{display:block;width:760px;max-width:76%;height:auto;margin:0 auto}
.contact-section__title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.contact-section__body{margin:22px auto 0;font-size:17px;line-height:1.8;font-weight:500}
.contact-section__button{display:inline-flex;align-items:center;justify-content:center;gap:22px;min-width:350px;height:70px;margin-top:24px;padding:0 34px;border-radius:999px;background:#fff;color:#724069;text-decoration:none;font-size:17px;font-weight:800;box-shadow:0 13px 28px rgba(21,8,25,.2);transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease}
.contact-section__button:hover{transform:translateY(-2px);box-shadow:0 17px 34px rgba(21,8,25,.26);background:#fffafc}
.contact-section__button:focus-visible{outline:4px solid #28c8c3;outline-offset:5px}
.contact-section__button-arrow{font-size:24px;line-height:1}
.contact-section__partner{display:block;width:170px;height:auto;margin:30px auto 0}
@media(max-width:1279px){.contact-section__heading{width:680px}.contact-section__body{font-size:16px}}
@media(prefers-reduced-motion:reduce){.faq-item__toggle::after,.contact-section__button{transition:none}}

/* FAQ: SP */
.faq-section-sp{position:relative;overflow:hidden;min-height:620px;background:radial-gradient(ellipse 110% 34% at 0% 18%,rgba(255,177,121,.16),transparent 72%),radial-gradient(ellipse 115% 40% at 100% 82%,rgba(180,145,213,.19),transparent 72%),linear-gradient(103deg,#fbf8f7 0%,#faf9fb 52%,#f5f1f9 100%)}
.faq-section-sp__inner{position:relative;z-index:2;padding:42px 20px 48px}
.faq-section-sp__eyebrow{margin:0;text-align:center;color:#8e2584;font-size:14px;line-height:1.5;font-weight:800;letter-spacing:.08em}
.faq-section-sp h2{margin:7px 0 0;text-align:center;font-size:28px;line-height:1.5;font-weight:800}
.faq-section-sp__accent{position:relative;display:inline-block;z-index:0}
.faq-section-sp__accent::before{content:"";position:absolute;z-index:-1;left:-.12em;right:-.12em;bottom:-.03em;height:1em;background:url("assets/heading-marker-orange.svg") center/100% 100% no-repeat}
.faq-section-sp__lead{margin:15px 4px 0;text-align:center;font-size:16px;line-height:1.75;font-weight:500}
.faq-list-sp{margin-top:25px;border-top:1px solid rgba(127,42,124,.19)}
.faq-item-sp{border-bottom:1px solid rgba(127,42,124,.19);background:rgba(255,255,255,.32)}
.faq-item-sp summary{display:grid;grid-template-columns:34px minmax(0,1fr) 30px;gap:8px;align-items:center;min-height:70px;padding:12px 8px;list-style:none;cursor:pointer;font-size:16px;line-height:1.55;font-weight:700}
.faq-item-sp summary::-webkit-details-marker{display:none}
.faq-item-sp__q{color:#8b2d83;font-size:22px;line-height:1;font-weight:900}
.faq-item-sp__toggle{position:relative;width:28px;height:28px;border-radius:50%;background:#f3e8f4}
.faq-item-sp__toggle::before,.faq-item-sp__toggle::after{content:"";position:absolute;left:7px;right:7px;top:13px;height:2px;border-radius:2px;background:#7f2a7c}
.faq-item-sp__toggle::after{transform:rotate(90deg);transition:transform .2s ease}
.faq-item-sp[open] .faq-item-sp__toggle::after{transform:rotate(0)}
.faq-item-sp p{margin:0;padding:0 42px 18px;color:#405064;font-size:16px;line-height:1.75;font-weight:500}
.faq-item-sp summary:focus-visible{outline:3px solid #28c8c3;outline-offset:-3px;border-radius:8px}
.faq-section-sp-dot{width:11px;height:11px;left:17px;bottom:48px;background:rgba(36,188,190,.2)}
.faq-section-sp-ring{width:34px;height:34px;right:15px;top:92px;border-color:rgba(139,79,159,.14)}

/* Contact: SP */
.contact-section-sp{position:relative;overflow:hidden;min-height:560px;color:#fff;background:#5a3156 url("assets/contact-bg-sp.svg") center/cover no-repeat}
.contact-section-sp__inner{position:relative;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:560px;padding:38px 20px;text-align:center}
.contact-section-sp__heading{display:block;width:350px;max-width:100%;height:auto;margin:0 auto}
.contact-section-sp__title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.contact-section-sp__body{max-width:330px;margin:20px auto 0;font-size:16px;line-height:1.75;font-weight:500}
.contact-section-sp__button{display:inline-flex;align-items:center;justify-content:center;gap:17px;width:350px;max-width:100%;height:64px;margin-top:24px;padding:0 24px;border-radius:999px;background:#fff;color:#724069;text-decoration:none;font-size:16px;font-weight:800;box-shadow:0 11px 24px rgba(21,8,25,.2)}
.contact-section-sp__button:focus-visible{outline:4px solid #28c8c3;outline-offset:4px}
.contact-section-sp__button-arrow{font-size:22px;line-height:1}
.contact-section-sp__partner{display:block;width:140px;height:auto;margin:30px auto 0}
