/* Editorial invitation, with restrained motion toward the next step. */
.experience{position:relative;overflow:hidden}
.experience:before{content:"";position:absolute;top:20px;right:-150px;width:420px;height:420px;border:1px solid #ac91631c;border-radius:50%;pointer-events:none}
.experience .section-heading{position:relative}
.experience h2 em{font-style:normal;color:#997142}
.heart-questions{width:min(650px,100%);margin:31px auto 27px;padding:0 30px;border-left:1px solid #aa8b5a55}
.heart-questions p{position:relative;font:18px/2.2 var(--serif);letter-spacing:.04em;color:#65516e;margin:13px 0;padding-left:28px}
.question-star{position:absolute;left:0;color:#a38756;font-size:16px}
.experience-intro{text-align:center;color:#76677d;font-size:13px;line-height:2.3;margin-top:34px}
.experience-intro .personal-wish{font:21px/1.9 var(--serif);letter-spacing:.06em;color:#4f405a;margin-bottom:17px}
.experience-grid{margin-top:42px}
.experience-grid article{position:relative;transition:transform .45s,border-color .45s}
.experience-grid h3{font-size:23px}
.experience-invitation{text-align:center;margin:38px auto 0}
.experience-invitation>p{font:20px/1.9 var(--serif);color:#65516e;letter-spacing:.05em;margin:0 0 22px}
.experience-invitation .button{max-width:365px;margin:auto;box-shadow:0 9px 25px #89704418}
.experience-invitation small{display:block;font-size:10px;color:#7c6d7f;margin-top:12px}
.experience .topics{padding-top:25px;margin-top:30px}






.button{overflow:hidden;isolation:isolate}
.button:after{content:"";position:absolute;inset:-50% auto -50% -65%;width:38%;background:linear-gradient(110deg,transparent,#fff8,transparent);transform:skewX(-20deg);opacity:0;pointer-events:none;z-index:-1}
.button.is-illuminated:after{animation:cta-light 1.7s ease-out .15s both}
.purchase.is-illuminated{animation:cta-halo 2.6s ease-out both}
.button:focus-visible{box-shadow:0 0 0 4px #dfbf8335,0 10px 30px #dfbf8330}
.plan-card .moon-phase{transition:box-shadow .55s,transform .55s}

.plan-card .purchase:active{transform:scale(.98)}
@keyframes cta-light{0%{left:-65%;opacity:0}18%{opacity:.8}80%{opacity:.65}100%{left:135%;opacity:0}}
@keyframes cta-halo{0%,100%{box-shadow:0 0 0 transparent}40%{box-shadow:0 0 0 3px #dfbf8315,0 9px 30px #dfbf8325}}
@media(hover:hover) and (pointer:fine){.experience-grid article:hover{transform:translateY(-3px);border-color:#a0804b}.purchase:hover{transform:translateY(-2px);box-shadow:0 10px 30px #dfbf8322}.purchase:hover .arrow,.purchase:hover>span{transform:translate(3px,-2px)}.plan-card:hover .moon-phase{box-shadow:0 0 24px #dfbf8330}.header-cta:hover{background:#dfbf8310;border-color:#dfbf8390}}
@media(max-width:760px){.experience .eyebrow{font-size:8px;letter-spacing:.18em}.experience h2{font-size:24px;line-height:1.8;letter-spacing:.04em}.heart-questions{margin-top:28px;padding:0 0 0 17px;width:fit-content;max-width:100%}.heart-questions p{font-size:16px;line-height:1.9;letter-spacing:.015em;margin:19px 0;padding-left:24px}.question-star{font-size:14px}.experience-intro{font-size:12px;margin-top:29px}.experience-intro .personal-wish{font-size:20px;line-height:1.9;margin-bottom:18px}.experience-grid{margin-top:31px;gap:25px}.experience-grid h3{font-size:21px}.experience-invitation{margin-top:30px}.experience-invitation>p{font-size:19px;margin-bottom:20px}.experience-invitation .button{font-size:12px;gap:16px;min-height:54px;padding-inline:16px}.experience-invitation small{font-size:9px}.experience:before{right:-210px;width:330px;height:330px}}
@media(max-width:360px){.experience h2{font-size:21px}.heart-questions p{font-size:14px}.experience-intro .personal-wish{font-size:18px}.experience-grid h3{font-size:19px}.experience-invitation>p{font-size:17px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.experience-grid article:hover,.purchase:hover,.purchase:active{transform:none}}

/* Menu-first landing for visitors from the LINE rich menu. */
.plans.section{padding-top:52px}.plans h1{font-size:32px;letter-spacing:.08em;line-height:1.9;margin:0 0 20px}.plans .section-heading{margin-bottom:38px}
@media(max-width:760px){.plans.section{padding-top:31px}.plans h1{font-size:26px;line-height:1.75;margin-bottom:17px}.plans .section-heading{margin-bottom:28px}}
@media(max-width:360px){.plans h1{font-size:24px}}
