/* /first-time/: shared scene shell, front-page accordions and shadow-only final CTA. */
.first-time-page [hidden] { display:none!important; }
.first-time-page .kids-hero-mask-one img { width:310.712px;height:466.012px;left:-12.773px;top:-15.702px; }
.first-time-page .kids-hero-photo-two { top:215px; }
.first-time-page .kids-hero-mask-two img { width:299.37px;height:449px;left:-10.093px;top:-121.79px;transform:none; }
.first-reasons { gap:20px; }
.first-reasons-collage { position:relative;width:250px;height:160px;margin-bottom:24px;align-self:center; }
.first-reasons-collage > img { position:absolute;pointer-events:none; }
.first-reasons-pattern { left:93.11px;top:22px; }
.first-reasons-blur { left:-17.89px;top:2px; }
.first-reasons-photo-one,.first-reasons-photo-two { position:absolute;width:120px;height:120px;overflow:hidden;mask:url('../images/first-time/566cd.svg') no-repeat 0 0 /120px 120px; }
.first-reasons-photo-one { left:129.55px;top:0; }
.first-reasons-photo-one img { position:absolute;width:189px;height:126px;left:-9.777px;top:-.069px;object-fit:cover; }
.first-reasons-photo-two { left:0;top:40.07px; }
.first-reasons-photo-two img { position:absolute;width:187.17px;height:124.76px;left:-39.07px;top:-3.43px;object-fit:fill; }
.first-reason-list { display:flex;flex-direction:column;gap:52px;width:100%; }
.first-reason { display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center; }
.first-reason > div { position:relative;max-width:100%; }
.first-reason h3 { position:relative;display:inline-block;padding:2px 4px;background:var(--color-main);color:var(--color-white);font:500 18px/1 var(--font-ja);letter-spacing:.54px; }
.first-reason > div > span { position:absolute;left:-50px;top:-32px;white-space:nowrap;transform:rotate(-9.38deg);font:400 34px/1 'Whisper',cursive;letter-spacing:3.06px;color:var(--color-accent-pink-2); }
.first-reason:first-child > div > span { left:-100px; }
.first-reason:last-child > div > span { left:-24px; }
.first-reason > p { width:267px;max-width:100%; }
.first-flow { position:relative;gap:48px; }
.first-flow-pattern { position:absolute;right:-22px;bottom:60.35px;pointer-events:none; }
.first-flow-list { position:relative;display:flex;flex-direction:column;align-items:center;gap:64px;width:100%; }
.first-flow-step { position:relative;display:flex;align-items:center;gap:20px;width:calc(100% + 18px);max-width:390px;min-height:156px;padding:28px 20px 24px 28px;border-radius:60px 0 60px 0;background:var(--color-white); }
.first-flow-step h3 { margin-bottom:8px;font:700 18px/1.3 var(--font-ja);letter-spacing:0; }
.first-flow-step h3 span { background:linear-gradient(transparent calc(100% - 6px),var(--color-accent-pink-1) 0); }
.first-step-copy { position:relative;z-index:1;width:190px;max-width:calc(100% - 130px); }
.first-step-copy > p { font-size:14px;line-height:1.3;letter-spacing:0; }
.first-step-02 .first-step-copy,.first-step-04 .first-step-copy { margin-left:auto; }
.first-step-05 .first-step-copy { width:100%;max-width:100%; }
.first-time-page .first-step-number { position:absolute;z-index:2;top:-18px;left:24px;display:flex;align-items:flex-end;gap:4px;color:#d0b993;font:500 36px/1 var(--font-num);letter-spacing:1.08px; }
.first-step-number > span { font-size:29px;font-weight:600;letter-spacing:.87px; }
.first-step-02 .first-step-number,.first-step-04 .first-step-number { left:auto;right:24px; }
.first-step-01 > h3 { flex:none;width:130px;margin:0;font-size:20px; }
.first-step-reserve { position:relative;display:flex;flex-direction:column;gap:4px;width:180px;max-width:100%;text-align:center; }
.first-step-reserve > p { display:flex;align-items:center;justify-content:center;gap:4px;font-size:13px;line-height:1;letter-spacing:.39px; }
.first-step-reserve .plan-btn { width:142px;align-self:center;margin-right:4px; }
.first-booking-pointer { position:absolute;right:-6px;top:39px; }
.first-flow-step > img,.first-flow-step > div:not(.first-step-copy):not(.first-step-reserve) { position:absolute; }
.first-step-blur { left:-70px;top:-86.55px; }
.first-step-pattern { left:46px;top:45.12px; }
.first-step-store { left:21px;top:-16.88px;width:123px;height:123px;mask:url('../images/first-time/49ddf.svg') no-repeat 0 0 /123px 123px;overflow:hidden; }
.first-step-store img { position:absolute;left:-19.299px;top:-38.599px;width:161.598px;height:161.598px;object-fit:cover; }
.first-step-03 .first-step-pattern { left:auto;right:16px;top:-43.88px; }
.first-step-kimono { right:55px;top:-14.88px;width:120px;height:120px;mask:url('../images/first-time/875b4.svg') no-repeat 0 0 /120px 120px;overflow:hidden; }
.first-step-kimono img { position:absolute;left:-3px;top:-3px;width:125.52px;height:125.52px;object-fit:cover; }
.first-step-belt { right:25px;top:91.12px;width:61px;height:61px;mask:url('../images/first-time/27094.svg') no-repeat 0 0 /61px 61px;overflow:hidden; }
.first-step-belt img { position:absolute;left:-1.404px;top:-1.404px;width:63.807px;height:63.807px;object-fit:cover; }
.first-step-04 .first-step-pattern { left:31px;top:58px; }
.first-step-04 .first-step-blur { left:-81px;top:-53.55px; }
.first-step-hair { left:53px;top:-19.55px;width:86px;height:86px;mask:url('../images/first-time/37c1f.svg') no-repeat 0 0 /86px 86px;overflow:hidden; }
.first-step-hair img { position:absolute;width:127.891px;height:85.46px;left:-24.107px;top:.542px;object-fit:fill; }
.first-step-dressing { left:-11px;top:57.45px;width:91px;height:91px;mask:url('../images/first-time/01f19.svg') no-repeat 0 0 /91px 91px;overflow:hidden; }
.first-step-dressing img { position:absolute;width:141.94px;height:94.61px;left:-29.62px;top:-2.6px;object-fit:fill; }
.first-clothing { gap:20px; }
.first-attire { width:100%;border-radius:0;background:none; }
.first-time-page .first-attire .faq-question { width:100%;display:flex;justify-content:space-between;gap:8px;padding:12px 16px;border:0;border-radius:0;text-align:left;font:500 18px/1 var(--font-ja);letter-spacing:.54px; }
.first-time-page .first-attire-women .faq-question { background:var(--color-accent-pink-2);color:var(--color-text); }
.first-time-page .first-attire-men .faq-question { background:#395784;color:var(--color-white); }
.first-attire-toggle { flex:none;display:flex;align-items:center;justify-content:center;width:33px;height:33px;border:1px solid var(--color-text);border-radius:100px;background:white; }
.first-attire .first-attire-minus { display:none; }
.first-attire.is-open .first-attire-plus { display:none; }
.first-attire.is-open .first-attire-minus { display:block; }
.first-time-page .first-attire .faq-answer { display:block;max-height:none;overflow:visible;padding:24px 16px;border:1px solid var(--color-accent-pink-2);border-top:0;background:var(--color-white);font:500 15px/1.5 var(--font-ja);letter-spacing:.45px; }
.first-time-page .first-attire-men .faq-answer { border-color:#395784; }
.first-attire-section { padding:0;align-items:stretch;text-align:left;display:flex;flex-direction:column;gap:16px;margin-bottom:24px; }
.first-attire-section:last-child { margin-bottom:0; }
.first-attire-section h3 { color:var(--color-main);font:700 16px/1 var(--font-ja);letter-spacing:.48px; }
.first-attire-men .first-attire-section h3 { color:#395784; }
.first-attire-section ul { display:flex;flex-direction:column;gap:8px; }
.first-attire-section li,.first-belongings li { display:flex;align-items:flex-start;gap:4px; }
.first-attire-section li > img,.first-belongings li > img { flex:none; }
.first-attire-section li > span { flex:1;min-width:0; }
.first-attire-warning h3 { font-size:15px; }
.first-attire-warning li { font-size:14px;line-height:1.5; }
.first-belongings { display:flex;flex-direction:column;gap:8px;padding:24px 16px;border:1px solid var(--color-accent-beige);border-top:6px solid var(--color-accent-beige);background:var(--color-white); }
.first-belongings h3 { align-self:flex-start;padding:2px 4px;background:var(--color-accent-beige);font:500 18px/1 var(--font-ja);letter-spacing:.54px; }
.first-belongings ul { display:flex;flex-direction:column;gap:8px; }
.first-choice .furisode-choice-card h3 { display:flex;align-items:center;gap:6px; }
.first-choice-dot { flex:none; }
.first-choice-photo { flex:1;min-width:0;position:relative;aspect-ratio:214/285;overflow:hidden; }
.first-choice-photo > img { position:absolute;width:100%;height:100%;aspect-ratio:auto;object-fit:cover; }
.first-pattern-guide { display:flex;gap:8px; }
.first-pattern-guide > div { flex:1;min-width:0;display:flex;flex-direction:column;gap:4px;padding:12px 8px;background:var(--color-white);border-radius:2px; }
.first-pattern-guide h4 { color:var(--color-main);font:700 13px/1 var(--font-ja);letter-spacing:.39px; }
.first-pattern-guide p { font-size:13px;line-height:1.5;letter-spacing:.39px; }
@media(max-width:389px) {
  .first-time-page .kids-heading h1 { font-size:clamp(23px,7.6vw,30px); }
  .first-time-page .kids-section h2 { font-size:21px;line-height:1.2; }
  .first-reason h3 { font-size:16px;line-height:1.3; }
  .first-reason > div > span { left:0; }
  .first-reason:first-child > div > span { left:-60px; }
  .first-flow-step { padding-left:20px;padding-right:16px;gap:12px; }
  .first-step-01 > h3 { width:110px;font-size:18px; }
  .first-step-reserve { width:150px; }
  .first-step-kimono { right:16px; }
  .first-step-belt { right:5px; }
  .first-step-copy { max-width:calc(100% - 125px); }
  .first-step-05 .first-step-copy { max-width:100%; }
  .first-pattern-guide { gap:4px; }
  .first-pattern-guide > div { padding:8px 5px; }
  .first-pattern-guide h4 { font-size:12px;line-height:1.3; }
}
@media(max-width:359px) {
  .first-step-01 { flex-direction:column;align-items:flex-start;gap:12px; }
  .first-step-reserve { align-self:flex-end; }
}

/* This Figma export is stretched horizontally; restore its intended portrait ratio. */
.first-choice-photo > .first-choice-export-photo { object-fit:fill; }
