.approved-closing,.approved-closing *,.approved-closing *::before,.approved-closing *::after{box-sizing:border-box}.approved-closing a{color:inherit;text-decoration:none}.approved-closing img{display:block;max-width:100%}.approved-closing :focus-visible{outline:2px solid #9f1f45;outline-offset:5px}.approved-closing .ac-cta{color:#fff}.approved-closing p,.approved-closing h2{padding:0}.approved-closing--form .ac-footer-grid{border-top:0}.approved-closing--form{padding-top:30px}

.approved-closing{--wine:#9F1F45;--ink:#160F10;--paper:#efedec;--white:#fff;--header:82px;--muted:#746b6d;--ease:cubic-bezier(.2,.7,.15,1);color-scheme:light}
/* Keep the approved short purpose paragraphs balanced without isolated endings. */
/* Preserve the approved center-logo/equal visible-gap navigation. */
@keyframes brand-drift{to{transform:translateX(-25%)}}
@media(min-width:2200px){}
@media(max-width:1100px){}
@media(max-width:900px){.approved-closing{--header:72px}}
@media(max-width:600px){}
@media(prefers-reduced-motion:reduce){}
@media(max-width:600px){}
@media(max-width:600px){}
@media(max-width:359px){}

/* V69: a direct business invitation, then factual news. Selected A5 stays intact. */
@media(max-width:1100px){}
@media(max-width:800px){}
@media(max-width:600px){}
@media(prefers-reduced-motion:reduce){}

/* V81: equal geometry, different action-color roles. All candidates remain local. */
.approved-closing {
 --action-surface:#9f1f45; --action-hover:#b12a52; --action-text:#fff; --action-border:#9f1f45;
 --recruit-action:#e8c688; --recruit-action-hover:#f0d5a7; --recruit-action-text:#9f1f45;
 --closing-paper:#f7f4ee; --action-ease:cubic-bezier(.22,.61,.36,1); --action-sheen:#ffffff2b;
}
/* A stationary endpoint divider; only the arrow moves. */
/* One interaction-only light pass. No automatic looping shine. */
@media(hover:hover) and (pointer:fine) {
}
@keyframes action-light-pass { from { transform:translateX(-130%); } to { transform:translateX(130%); } }
/* Service-directory navigation is lighter than a direct inquiry. */
/* Artwork and footer share one paper ground. Original logo colors remain intact. */
@media(max-width:800px) { }
@media(max-width:600px) {
}
@media(prefers-reduced-motion:reduce) {
}

/* V83.5: selected study 01; soft elevation, site-aligned 3px corners. */
.approved-closing {
  --inquiry-accent-light:#b73158;
  --inquiry-accent:#9f1f45;
  --inquiry-accent-deep:#8e1d3e;
  --inquiry-gradient:linear-gradient(110deg,var(--inquiry-accent-light),var(--inquiry-accent) 62%,var(--inquiry-accent-deep));
  --inquiry-on-accent:#fff;
  --inquiry-edge:transparent;
  --cta-ease:cubic-bezier(.2,.65,.35,1);
  --cta-response:140ms;
  --cta-radius:3px;
  --cta-shadow-rest:0 3px 6px #2c152024,0 8px 16px -5px #2c15202b;
  --cta-shadow-hover:0 6px 9px #2c15201f,0 15px 23px -5px #2c15203b;
}
.approved-closing .wine-cta-content { display:inline-flex; align-items:center; gap:12px; white-space:nowrap; }
.approved-closing .wine-cta-icon { display:block; flex:0 0 20px; width:20px; height:20px; }
.approved-closing .wine-cta {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
  padding-inline:28px 22px;
  border:1px solid var(--inquiry-edge);
  border-radius:var(--cta-radius);
  background:var(--inquiry-gradient);
  color:var(--inquiry-on-accent);
  text-decoration:none;
}
.approved-closing .wine-cta:is(:hover,:focus-visible,:active) {
  background:var(--inquiry-gradient);
  color:var(--inquiry-on-accent);
}
/* Recruitment preserves the approved white surface / black hover colors. */
/* Study 01 uses diffuse shadows without an extruded solid underside. */
.approved-closing :is(.wine-cta,#recruit .a5-action .ts-button,.header-contact) {
  border-radius:var(--cta-radius);
  box-shadow:var(--cta-shadow-rest);
  transform:translateY(0);
  transition:transform var(--cta-response) var(--cta-ease),box-shadow var(--cta-response) var(--cta-ease),border-color var(--cta-response) ease;
}
.approved-closing :is(.wine-cta,#recruit .a5-action .ts-button,.header-contact)::before {
  content:none!important;
  animation:none!important;
}
/* Selected 01 moves the complete button, not the arrow independently. */
.approved-closing :is(.wine-cta,#recruit .a5-action .ts-button)>span:last-child,.approved-closing :is(.wine-cta,#recruit .a5-action .ts-button):is(:hover,:focus-visible,:active)>span:last-child {
  transform:none;
  transition:none;
}
@media(hover:hover) and (pointer:fine) {
  .approved-closing :is(.wine-cta,#recruit .a5-action .ts-button,.header-contact):hover {
    transform:translateY(-3px);
    box-shadow:var(--cta-shadow-hover);
  }
}
.approved-closing :is(.wine-cta,#recruit .a5-action .ts-button,.header-contact):focus-visible {
  transform:translateY(-3px);
  box-shadow:var(--cta-shadow-hover);
}
.approved-closing :is(.wine-cta,.header-contact):focus-visible { outline:2px solid var(--inquiry-accent); outline-offset:5px; }
.approved-closing :is(.wine-cta,#recruit .a5-action .ts-button,.header-contact):active {
  transform:translateY(1px);
  box-shadow:inset 0 2px 4px #32061540,0 2px 5px #32141e21;
}
@media(max-width:600px) {
  .approved-closing .wine-cta { gap:24px; padding-inline:22px 20px; }
  .approved-closing .wine-cta-content { gap:10px; }
  .approved-closing .wine-cta-icon { flex-basis:18px; width:18px; height:18px; }
}
@media(prefers-reduced-motion:reduce) {
  .approved-closing :is(.wine-cta,#recruit .a5-action .ts-button,.header-contact),.approved-closing :is(.wine-cta,#recruit .a5-action .ts-button,.header-contact):is(:hover,:focus-visible,:active) { transform:none; transition:none; }
}
.approved-closing :is(.wine-cta,#recruit .a5-action .ts-button,.header-contact),.approved-closing :is(.wine-cta,#recruit .a5-action .ts-button,.header-contact):is(:hover,:focus-visible,:active) { transform:none; transition:none; }

/* Selected V84.3 /11, scoped to the shared closing so upstream designs do not drift. */
.approved-closing{--paper:#f7f4ee;--ink:#160f10;--wine:#9f1f45;--rule:#d6cdc4;position:relative;isolation:isolate;background:var(--paper);color:var(--ink);font-family:'Noto Sans JP','Yu Gothic',sans-serif;-webkit-font-smoothing:antialiased}
.approved-closing .ac-inner{width:min(1320px,calc(100% - 160px));margin-inline:auto;min-width:0}
.approved-closing .ac-art{position:absolute;z-index:-2;inset:0;background:url('./assets/business-contact-art.png') center/cover no-repeat;pointer-events:none}
.approved-closing .ac-art::after{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 59% 68% at 50% 31%,#fffffff5 12%,#ffffffd1 48%,#ffffff38 85%,transparent 100%),linear-gradient(to top,#f7f4eea8 0%,#f7f4ee88 22%,transparent 55%)}
.approved-closing .ac-contact{position:relative;isolation:isolate;padding:70px 0 68px;min-width:0}
.approved-closing .ac-content{position:relative;text-align:center}
.approved-closing .ac-eyebrow{color:var(--wine);font:600 11px/1.6 Arial,sans-serif;letter-spacing:.14em;margin:0 0 20px}
.approved-closing .ac-title{margin:0;font-size:58px;line-height:1.4;font-weight:500;letter-spacing:-.045em;text-wrap:balance}
.approved-closing .ac-title>span{display:block;white-space:nowrap}
.approved-closing .ac-action{display:flex;flex-direction:column;align-items:center;margin-top:25px;gap:26px;min-width:0}
.approved-closing .ac-description{margin:0;font-size:15px;line-height:2.05;font-weight:400;text-wrap:pretty}
.approved-closing .ac-description>span{display:block}
.approved-closing .ac-cta{width:420px;max-width:100%;height:78px;font-size:16px;font-weight:600;letter-spacing:.015em;flex-shrink:0}
.approved-closing .ac-arrow{display:flex;align-items:center;justify-content:flex-end;border-left:1px solid #ffffff4d;font:400 34px/1 Arial,sans-serif;min-width:54px;height:31px}
.approved-closing .ac-footer{position:relative;background:transparent;padding-bottom:30px;min-width:0}
.approved-closing .ac-footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:23px 56px;padding-top:30px;border-top:1px solid #c8bcb28c}
.approved-closing .ac-identity{min-width:0}
.approved-closing .ac-brand{display:block;width:220px;max-width:100%;min-width:0}
.approved-closing .ac-brand img{width:100%;height:auto}
.approved-closing address{font-style:normal;font-size:11px;letter-spacing:.015em;line-height:1.8;color:#463e41;margin-top:20px}
.approved-closing .ac-nav{display:flex;justify-content:flex-end;align-items:flex-start;flex-wrap:wrap;column-gap:23px;row-gap:0;font:600 11px/1.4 Arial,sans-serif;letter-spacing:.025em}
.approved-closing .ac-nav a{display:flex;gap:4px;align-items:center;min-height:44px;border-bottom:1px solid transparent;transition:color 140ms,border-color 140ms}
.approved-closing .ac-nav a:hover{color:var(--wine);border-bottom-color:var(--wine)}
.approved-closing .ac-external{font-size:12px}
.approved-closing .ac-copyright{display:block;grid-column:1/-1;font:400 10px/1.6 Arial,sans-serif;letter-spacing:.035em;color:#51474a}
@media(max-width:1100px){.approved-closing .ac-inner{width:calc(100% - 88px)}.approved-closing .ac-footer-grid{gap:23px 35px}.approved-closing .ac-nav{column-gap:17px}.approved-closing .ac-cta{font-size:15px}}
@media(max-width:850px){.approved-closing .ac-inner{width:calc(100% - 64px)}.approved-closing .ac-footer-grid{grid-template-columns:1fr;gap:22px}.approved-closing .ac-nav{justify-content:flex-start;column-gap:24px}.approved-closing .ac-title{font-size:52px}}
@media(max-width:600px){
 .approved-closing .ac-inner{width:calc(100% - 44px)}
 .approved-closing .ac-contact{padding:52px 0 48px}
 .approved-closing .ac-eyebrow{font-size:10px;letter-spacing:.12em;margin-bottom:22px}
 .approved-closing .ac-title{font-size:clamp(27px,7.65vw,38px);line-height:1.55;letter-spacing:-.05em}
 .approved-closing .ac-action{margin-top:23px;gap:28px}
 .approved-closing .ac-description{font-size:13px;line-height:2}
 .approved-closing .ac-cta{height:72px;font-size:14px}
 .approved-closing .ac-arrow{font-size:29px;min-width:38px;height:28px}
 .approved-closing .ac-footer-grid{padding-top:27px;gap:22px}
 .approved-closing .ac-footer{padding-bottom:28px}
 .approved-closing .ac-nav{gap:0 24px;font-size:11px}
 .approved-closing .ac-brand{width:205px}
 .approved-closing address{line-height:1.9;margin-top:18px}
 .approved-closing .ac-copyright{font-size:9px;line-height:1.8}
 .approved-closing .ac-art{background:none;border:0 solid transparent;border-image-source:url('./assets/business-contact-art-mobile.png');border-image-slice:500 310 600 320 fill;border-image-width:44.56328vw 27.62923vw 53.47594vw 28.5205vw;border-image-repeat:stretch}
 .approved-closing .ac-art::after{background:radial-gradient(ellipse 110% 66% at 50% 26%,#fffffff5 12%,#ffffffd1 53%,#ffffff45 90%,transparent 100%),linear-gradient(to top,#f7f4eecc 0%,#f7f4ee99 29%,transparent 62%);mask-image:radial-gradient(ellipse 25vw 24vw at 14vw 17vw,#0005 0%,#000 80%)}
}
@media(max-width:370px){html .approved-closing .ac-cta{padding-inline:17px 15px;gap:16px;font-size:13px}}
@media(prefers-reduced-motion:reduce){.approved-closing .ac-nav a{transition:none}}
/* Only study controls are removed; pause/replay stay available. */

/* V85.3: two windows indicate a new external tab; other link arrows stay intact. */
.approved-closing #recruit .external-window-icon {
 display:block;
 width:22px;
 height:22px;
}
.approved-closing .ac-external {
 display:inline-flex;
 align-items:center;
}
.approved-closing .ac-external .external-window-icon {
 display:block;
 width:14px;
 height:14px;
 stroke-width:1.8;
}

/* V89: destination semantics and secondary-action presentation share one rule. */
.approved-closing {
  --link-arrow-size:24px;
  --link-arrow-gap:32px;
  --link-arrow-travel:4px;
  --link-response:240ms;
  --link-ease:cubic-bezier(.22,.61,.36,1);
}
.approved-closing .link-arrow-icon { display:block; flex:none; width:var(--link-arrow-size); height:var(--link-arrow-size); }
.approved-closing .link-arrow-slot { display:inline-flex; align-items:center; justify-content:center; flex:none; }

/* Keep section placement/type; fit each label so the visible icon gap is equal. */
.approved-closing a.link-text-action > .link-arrow-slot,.approved-closing a.hero-scroll > .link-arrow-slot {
  display:flex;
  flex:0 0 var(--link-arrow-size);
  align-items:center;
  justify-content:center;
  width:var(--link-arrow-size);
  height:var(--link-arrow-size);
  transform:none;
  transition:transform var(--link-response) var(--link-ease);
}
.approved-closing :is(#mission,#news,#service,#company) a.link-text-action[data-link-direction="right"]:is(:hover,:focus-visible) > .link-arrow-slot {
  transform:translateX(var(--link-arrow-travel));
}
.approved-closing :is(#mission,#news,#service,#company) a.link-text-action[data-link-direction="down"]:is(:hover,:focus-visible) > .link-arrow-slot,.approved-closing a.hero-scroll:is(:hover,:focus-visible) > .link-arrow-slot {
  transform:translateY(var(--link-arrow-travel));
}

/* Keep the selected CTA's divider/slot and whole-button elevation unchanged. */
.approved-closing .wine-cta .link-arrow-icon { --link-arrow-size:28px; }
.approved-closing .wine-cta > .link-arrow-slot { flex-shrink:0; }

@media(prefers-reduced-motion:reduce) {
  .approved-closing :is(#mission,#news,#service,#company) a.link-text-action > .link-arrow-slot,.approved-closing :is(#mission,#news,#service,#company) a.link-text-action:is(:hover,:focus-visible) > .link-arrow-slot,.approved-closing a.hero-scroll > .link-arrow-slot,.approved-closing a.hero-scroll:is(:hover,:focus-visible) > .link-arrow-slot { transform:none!important; transition:none!important; }
}
.approved-closing :is(#mission,#news,#service,#company) a.link-text-action > .link-arrow-slot,.approved-closing :is(#mission,#news,#service,#company) a.link-text-action:is(:hover,:focus-visible) > .link-arrow-slot,.approved-closing a.hero-scroll > .link-arrow-slot,.approved-closing a.hero-scroll:is(:hover,:focus-visible) > .link-arrow-slot { transform:none!important; transition:none!important; }
