@import url('https://fonts.googleapis.com/css2?family=Outfit:wght@200;300;400&family=Zen+Maru+Gothic:wght@400;500;700&display=swap');

/* =========================================================
   アスカデザインラボ 追加CSS（additional.css）
   すべてのセレクタは .adl の中だけに効く。
   ・.adl .adl--site  … 本サイトのページ
   ・.adl .adl--asuka … AIクリエイター Asuka のページ
   このファイルは tools/convert.py で静的サイトのCSSから作っている。
   ========================================================= */

/* ---------- 本サイト（静的サイトのCSSをそのまま .adl .adl--site に閉じ込めたもの） ---------- */

.adl .adl--site {
  
  --c-white: #FFFFFF;
  --c-main: #48D1CC;      
  --c-accent: #E1AD01;    
  
  --c-ink: #20272B;
  --c-ink-sub: #566068;
  --c-ink-sub-on-tint: #46525A; 
  --c-soft: #F5FAF9;
  --c-line: #DCE8E7;
  --c-tq-100: #E8F7F5;    
  --c-tq-200: #B4EAE6;    
  --c-tq-300: #9FE3DF;    
  --c-gold-300: #F2D777;  
  --c-main-hover: #3CC4BF;

  
  --lift-1: 0 1px 2px rgba(32, 39, 43, .05), 0 8px 18px rgba(32, 39, 43, .06);
  --lift-2: 0 2px 4px rgba(32, 39, 43, .05), 0 16px 32px rgba(32, 39, 43, .08);
  --lift-3: 0 3px 6px rgba(32, 39, 43, .06), 0 24px 44px rgba(32, 39, 43, .11);

  
  --font-ja: "Zen Maru Gothic", "Hiragino Maru Gothic ProN", "Hiragino Sans", "Yu Gothic", "Meiryo", sans-serif;
  --font-en: "Outfit", var(--font-ja);

  
  --s-1: 8px;  --s-2: 16px; --s-3: 24px; --s-4: 32px;
  --s-5: 40px; --s-6: 48px; --s-8: 64px; --s-10: 80px; --s-14: 112px;
  --section-gap: var(--s-14);
  --container: 1120px;
  --gutter: var(--s-4);
  --sheet-r: 56px;
  --sheet-overlap: 56px;

  
  --ease-out: cubic-bezier(.22, 1, .36, 1);
  --ease-pop: cubic-bezier(.34, 1.56, .64, 1);
}
@media (max-width: 767px) {
.adl .adl--site { --section-gap: var(--s-8); --gutter: var(--s-3); --sheet-r: 32px; --sheet-overlap: 32px; }
}
.adl .adl--site *, .adl .adl--site *::before, .adl .adl--site *::after { box-sizing: border-box; }
.adl .adl--site { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
.adl .adl--site {
  margin: 0;
  background: var(--c-white);
  color: var(--c-ink);
  font-family: var(--font-ja);
  font-size: 17px;
  font-weight: 500;
  line-height: 1.85;
  letter-spacing: .03em;
  overflow-wrap: anywhere;
}
.adl .adl--site img { display: block; max-width: 100%; height: auto; }
.adl .adl--site [hidden] { display: none !important; }
.adl .adl--site a { color: inherit; }
.adl .adl--site h1, .adl .adl--site h2, .adl .adl--site h3, .adl .adl--site h4, .adl .adl--site p, .adl .adl--site ul, .adl .adl--site ol, .adl .adl--site dl, .adl .adl--site dd, .adl .adl--site figure { margin: 0; }
.adl .adl--site ul, .adl .adl--site ol { padding: 0; list-style: none; }
.adl .adl--site table { border-collapse: collapse; }
.adl .adl--site :focus-visible { outline: 2px solid var(--c-ink); outline-offset: 4px; border-radius: 8px; }
.adl .adl--site .container {
  width: 100%;
  max-width: calc(var(--container) + var(--gutter) * 2);
  margin-inline: auto;
  padding-inline: var(--gutter);
}
.adl .adl--site .sr-only {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.adl .adl--site .skip-link {
  position: absolute; left: var(--s-2); top: -100px; z-index: 100;
  padding: var(--s-1) var(--s-2); border-radius: 8px;
  background: var(--c-ink); color: var(--c-white);
}
.adl .adl--site .skip-link:focus { top: var(--s-2); }
.adl .adl--site .todo { display: block; font-size: 14px; font-weight: 400; color: var(--c-ink-sub); }
.adl .adl--site .media {
  position: relative;
  overflow: hidden;
  background: var(--c-soft);
  border-radius: 20px;
}
.adl .adl--site .media::before {
  content: attr(data-label);
  position: absolute; inset: 0;
  display: grid; place-items: center;
  padding: var(--s-1);
  font-size: 12px; font-weight: 400; line-height: 1.5; text-align: center;
  color: var(--c-ink-sub);
}
.adl .adl--site .media > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.adl .adl--site .media:has(> img:not([hidden]))::before { content: none; }
.adl .adl--site .media--round { border-radius: 50%; }
.adl .adl--site .btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 54px;
  padding: 0 var(--s-4);
  border: 1px solid transparent;
  border-radius: 14px;
  font-size: 16px; font-weight: 700; line-height: 1.3; letter-spacing: .06em;
  text-decoration: none;
  transition: background-color .25s, box-shadow .25s, transform .25s var(--ease-out);
}
.adl .adl--site .btn--primary { background: var(--c-main); color: var(--c-ink); box-shadow: 0 8px 20px rgba(32, 39, 43, .12); }
.adl .adl--site .btn--primary:hover { background: var(--c-main-hover); transform: translateY(-2px); box-shadow: 0 12px 26px rgba(32, 39, 43, .14); }
.adl .adl--site .btn--secondary { background: var(--c-white); color: var(--c-ink); border-color: var(--c-ink); }
.adl .adl--site .btn--secondary:hover { background: var(--c-soft); transform: translateY(-2px); }
.adl .adl--site .btn--small { min-height: 46px; padding: 0 var(--s-3); font-size: 15px; }
.adl .adl--site .btn-row { display: flex; flex-wrap: wrap; gap: var(--s-2); }
.adl .adl--site .text-link {
  display: inline-flex; align-items: center; min-height: 44px;
  font-size: 15px; font-weight: 700; letter-spacing: .06em;
  text-decoration: underline;
  text-decoration-color: var(--c-accent);
  text-decoration-thickness: 2px;
  text-underline-offset: 6px;
}
.adl .adl--site .text-link:hover { text-decoration-color: var(--c-ink); }
.adl .adl--site .site-header { position: relative; z-index: 20; background: var(--c-white); }
.adl .adl--site .header-inner {
  display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap;
  gap: 0 var(--s-2);
  min-height: 80px;
}
.adl .adl--site .brand {
  display: inline-flex; align-items: center; gap: 10px;
  min-height: 44px;
  font-size: 17px; font-weight: 700; letter-spacing: .1em;
  text-decoration: none;
}
.adl .adl--site .brand::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--c-accent); }
.adl .adl--site .global-nav ul { display: flex; align-items: center; gap: 2px; }
.adl .adl--site .global-nav a {
  position: relative;
  display: inline-flex; align-items: center;
  min-height: 44px; padding: 0 14px;
  font-size: 15px; font-weight: 500; letter-spacing: .06em;
  text-decoration: none;
}
.adl .adl--site .global-nav a:not(.btn)::after {
  content: "";
  position: absolute; left: 14px; right: 14px; bottom: 8px;
  height: 1px; background: var(--c-ink);
  transform: scaleX(0); transform-origin: left;
  transition: transform .3s var(--ease-out);
}
.adl .adl--site .global-nav a:not(.btn):hover::after, .adl .adl--site .global-nav a[aria-current="page"]::after { transform: scaleX(1); }
.adl .adl--site .global-nav .nav-ai { gap: 6px; }
.adl .adl--site .global-nav .nav-ai::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--c-main); }
.adl .adl--site .global-nav .btn { margin-left: var(--s-1); min-height: 44px; padding: 0 20px; font-size: 15px; }
.adl .adl--site .menu-button { display: none; }
@media (max-width: 1023px) {
.adl .adl--site .header-inner { min-height: 64px; }
.adl .adl--site .menu-button {
    display: inline-flex; align-items: center; gap: 10px;
    min-height: 44px; padding: 0 16px;
    border: 1px solid var(--c-ink); border-radius: 999px;
    background: var(--c-white); color: var(--c-ink);
    font: inherit; font-size: 14px; font-weight: 700;
    cursor: pointer;
  }
.adl .adl--site .menu-button__bars, .adl .adl--site .menu-button__bars::before, .adl .adl--site .menu-button__bars::after { display: block; width: 16px; height: 1.5px; border-radius: 2px; background: currentColor; transition: transform .25s; }
.adl .adl--site .menu-button__bars { position: relative; }
.adl .adl--site .menu-button__bars::before, .adl .adl--site .menu-button__bars::after { content: ""; position: absolute; left: 0; }
.adl .adl--site .menu-button__bars::before { top: -5px; }
.adl .adl--site .menu-button__bars::after { top: 5px; }
.adl .adl--site .menu-button[aria-expanded="true"] .menu-button__bars { background: transparent; }
.adl .adl--site .menu-button[aria-expanded="true"] .menu-button__bars::before { top: 0; transform: rotate(45deg); }
.adl .adl--site .menu-button[aria-expanded="true"] .menu-button__bars::after { top: 0; transform: rotate(-45deg); }
.adl .adl--site .global-nav { width: 100%; }
.adl .adl--site .global-nav ul { flex-direction: column; align-items: stretch; padding-bottom: var(--s-2); }
.adl .adl--site .global-nav :is(li, .li) + :is(li, .li) { border-top: 1px solid var(--c-line); }
.adl .adl--site .global-nav a { width: 100%; min-height: 56px; padding: 0 var(--s-1); font-size: 16px; }
.adl .adl--site .global-nav a:not(.btn)::after { display: none; }
.adl .adl--site .global-nav .btn { margin: var(--s-2) 0 0; justify-content: center; }
.adl .adl--site .global-nav :is(li, .li):last-child { border-top: 0; }
.adl .adl--site.js .global-nav { display: none; }
.adl .adl--site.js .global-nav.is-open { display: block; animation: menu-in .3s var(--ease-out); }
}
@keyframes menu-in { from { opacity: 0; transform: translateY(-6px); } }
.adl .adl--site .sheet {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding-block: var(--section-gap) calc(var(--section-gap) + var(--sheet-overlap));
  margin-top: calc(var(--sheet-overlap) * -1);
  border-radius: var(--sheet-r) var(--sheet-r) 0 0;
  background: var(--c-white);
  box-shadow: 0 -1px 0 rgba(32, 39, 43, .05), 0 -20px 40px -30px rgba(32, 39, 43, .14);
}
.adl .adl--site .sheet--mid { background: var(--c-tq-200); }
.adl .adl--site .sheet--soft { background: var(--c-tq-100); }
.adl .adl--site .sheet--mid .section-head__text, .adl .adl--site .sheet--soft .section-head__text { color: var(--c-ink-sub-on-tint); }
.adl .adl--site .sheet > .container { position: relative; z-index: 1; }
.adl .adl--site .sheet__backdrop { position: absolute; inset: 0; z-index: 0; pointer-events: none; }
.adl .adl--site .bd { position: absolute; display: block; }
.adl .adl--site .bd--dots {
  width: 340px; height: 260px;
  background-image: radial-gradient(circle, rgba(32, 39, 43, .14) 1.2px, transparent 1.6px);
  background-size: 20px 20px;
  -webkit-mask-image: radial-gradient(closest-side, #000 40%, transparent);
          mask-image: radial-gradient(closest-side, #000 40%, transparent);
}
.adl .adl--site .sheet--mid .bd--dots { background-image: radial-gradient(circle, rgba(255, 255, 255, .85) 1.3px, transparent 1.7px); }
.adl .adl--site .bd--ring { width: 420px; aspect-ratio: 1 / 1; border: 1px solid var(--c-main); border-radius: 50%; opacity: .5; }
.adl .adl--site .sheet--mid .bd--ring { border-color: var(--c-white); opacity: .8; }
.adl .adl--site .bd--blob { width: 560px; aspect-ratio: 1 / 1; background: radial-gradient(closest-side, rgba(255, 255, 255, .7), transparent); }
.adl .adl--site .bd--spark {
  width: 16px; height: 16px;
  background: var(--c-accent);
  clip-path: path("M8 0C8.4 4.1 11.9 7.6 16 8 11.9 8.4 8.4 11.9 8 16 7.6 11.9 4.1 8.4 0 8 4.1 7.6 7.6 4.1 8 0Z");
}
.adl .adl--site .bd-pos-a .bd--dots { right: -40px; top: 48px; }
.adl .adl--site .bd-pos-a .bd--ring { left: -220px; top: 34%; width: 520px; }
.adl .adl--site .bd-pos-a .bd--blob { right: -160px; bottom: 4%; }
.adl .adl--site .bd-pos-a .bd--spark { left: 46%; top: 80px; }
.adl .adl--site .bd-pos-b .bd--dots { left: -60px; bottom: 18%; }
.adl .adl--site .bd-pos-b .bd--ring { right: -160px; top: 60px; width: 360px; }
.adl .adl--site .bd-pos-b .bd--blob { left: 28%; top: 18%; width: 640px; }
.adl .adl--site .bd-pos-b .bd--spark { right: 12%; top: 132px; }
@media (max-width: 767px) {
.adl .adl--site .bd--dots { width: 220px; height: 180px; }
.adl .adl--site .bd--ring { width: 280px !important; }
.adl .adl--site .bd--blob { width: 360px !important; }
}
.adl .adl--site .section-head { max-width: 40em; margin-bottom: var(--s-6); }
.adl .adl--site .section-title {
  font-size: clamp(24px, 2.6vw, 32px);
  font-weight: 700;
  line-height: 1.55;
  letter-spacing: .1em;
}
.adl .adl--site .section-title::after {
  content: "";
  display: block;
  width: 32px; height: 3px;
  margin-top: 14px;
  border-radius: 2px;
  background: var(--c-accent);
}
.adl .adl--site .section-head--center { margin-inline: auto; text-align: center; }
.adl .adl--site .section-head--center .section-title::after { margin-inline: auto; }
.adl .adl--site .section-head__text { margin-top: var(--s-2); color: var(--c-ink-sub); font-size: 16px; }
.adl .adl--site .mask { display: inline-block; overflow: hidden; vertical-align: bottom; padding-bottom: .08em; }
.adl .adl--site .mask__inner { display: inline-block; }
.adl .adl--site .paper { position: relative; isolation: isolate; }
.adl .adl--site .paper::before {
  content: "";
  position: absolute; inset: 0; z-index: -1;
  border-radius: inherit;
  background: var(--paper-back, var(--c-tq-300));
  rotate: var(--paper-tilt, -3deg);
  translate: 6px 8px;
  transition: rotate .5s var(--ease-out), translate .5s var(--ease-out);
}
.adl .adl--site .paper--gold { --paper-back: var(--c-gold-300); }
.adl .adl--site .paper > .media, .adl .adl--site .paper > .paper__face { box-shadow: var(--lift-1); transition: transform .4s var(--ease-out), box-shadow .4s var(--ease-out); }
.adl .adl--site .hero { position: relative; isolation: isolate; overflow: hidden; padding-block: var(--s-6) calc(var(--s-14) + var(--sheet-overlap)); }
.adl .adl--site .hero__backdrop { position: absolute; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; }
.adl .adl--site .backdrop__grid {
  position: absolute; inset: 0;
  background-image: radial-gradient(circle, #A6CFCB 1.1px, transparent 1.5px);
  background-size: 22px 22px;
  -webkit-mask-image: radial-gradient(ellipse 55% 65% at 70% 45%, #000 20%, transparent 75%);
          mask-image: radial-gradient(ellipse 55% 65% at 70% 45%, #000 20%, transparent 75%);
}
.adl .adl--site .backdrop__blob { position: absolute; display: block; }
.adl .adl--site .backdrop__blob--1 {
  width: min(56vw, 720px); aspect-ratio: 1 / 1;
  right: -8vw; top: -10%;
  background: radial-gradient(closest-side, rgba(72, 209, 204, .34), rgba(72, 209, 204, .16) 55%, transparent);
}
.adl .adl--site .backdrop__blob--2 {
  width: min(34vw, 420px); aspect-ratio: 1 / 1;
  left: -8vw; bottom: 4%;
  background: radial-gradient(closest-side, rgba(72, 209, 204, .16), transparent);
}
.adl .adl--site .hero__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  align-items: center;
  gap: var(--s-8);
}
.adl .adl--site .hero__eyebrow {
  display: flex; align-items: center; gap: 12px;
  font-size: 15px; font-weight: 700; letter-spacing: .14em;
}
.adl .adl--site .hero__eyebrow::before { content: ""; width: 28px; height: 2px; background: var(--c-accent); }
.adl .adl--site .hero__title {
  margin-top: var(--s-3);
  font-size: clamp(34px, 4.6vw, 58px);
  font-weight: 700;
  line-height: 1.45;
  letter-spacing: .08em;
}
.adl .adl--site .hero__title .line { display: block; }
.adl .adl--site .hero__lead { margin-top: var(--s-3); color: var(--c-ink-sub); }
.adl .adl--site .hero__en {
  margin-top: var(--s-2);
  font-family: var(--font-en);
  font-size: 14px; font-weight: 300; letter-spacing: .04em; line-height: 1.7;
  color: var(--c-ink-sub);
  max-width: 34em;
}
.adl .adl--site .hero__services { display: flex; flex-wrap: wrap; gap: var(--s-1); margin-top: var(--s-4); }
.adl .adl--site .chip {
  display: inline-flex; align-items: center; gap: 8px;
  min-height: 36px; padding: 0 14px;
  border: 1px solid var(--c-line); border-radius: 999px;
  background: var(--c-white);
  font-size: 14px; font-weight: 700;
}
.adl .adl--site .chip::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--c-main); }
.adl .adl--site .chip--soon::before { background: var(--c-accent); }
.adl .adl--site .hero .btn-row { margin-top: var(--s-5); }
.adl .adl--site .stack {
  --w: min(100%, 520px);
  position: relative;
  width: var(--w);
  aspect-ratio: 1 / 1;
  justify-self: center;
}
.adl .adl--site .stack__item { position: absolute; background: var(--c-white); border-radius: 14px; box-shadow: 0 0 0 6px var(--c-white), 0 0 0 7px var(--c-line), var(--lift-2); }
.adl .adl--site .stack__item--manga { width: 54%; aspect-ratio: 1 / 1.414; left: 6%; top: 4%; rotate: -6deg; z-index: 1; }
.adl .adl--site .stack__item--card { width: 62%; aspect-ratio: 91 / 55; right: 0; top: 40%; rotate: 5deg; z-index: 3; box-shadow: 0 0 0 6px var(--c-white), 0 0 0 7px var(--c-line), var(--lift-3); }
.adl .adl--site .stack__item--portrait { width: 34%; aspect-ratio: 1 / 1; right: 8%; top: 4%; border-radius: 50%; rotate: 0deg; z-index: 2; }
.adl .adl--site .stack__tag {
  position: absolute; z-index: 4;
  padding: 2px 12px;
  border-radius: 999px;
  background: var(--c-white);
  box-shadow: var(--lift-1);
  font-size: 13px; font-weight: 700; letter-spacing: .08em;
}
.adl .adl--site .stack__tag--manga { left: 4%; top: 62%; }
.adl .adl--site .stack__tag--card { right: 4%; bottom: 6%; }
.adl .adl--site .stack__tag--portrait { right: 2%; top: 36%; }
.adl .adl--site .stack__spark { position: absolute; width: 22px; height: 22px; fill: var(--c-accent); left: 58%; top: 2%; z-index: 4; }
@media (max-width: 899px) {
.adl .adl--site .hero__inner { grid-template-columns: 1fr; gap: var(--s-6); }
.adl .adl--site .stack { --w: min(100%, 420px); }
}
@media (max-width: 767px) {
.adl .adl--site .hero { padding-top: var(--s-3); }
.adl .adl--site .hero .btn-row { flex-direction: column; }
.adl .adl--site .hero .btn-row .btn { width: 100%; }
}
.adl .adl--site .concept__inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr);
  gap: var(--s-4) var(--s-8);
  align-items: start;
}
.adl .adl--site .concept__title { font-size: clamp(24px, 2.8vw, 34px); font-weight: 700; line-height: 1.6; letter-spacing: .08em; }
.adl .adl--site .concept__title::after { content: ""; display: block; width: 32px; height: 3px; margin-top: 16px; border-radius: 2px; background: var(--c-accent); }
.adl .adl--site .concept__body p + p { margin-top: var(--s-2); }
.adl .adl--site .concept__body { color: var(--c-ink); }
.adl .adl--site .concept__body strong { font-weight: 700; background: linear-gradient(transparent 62%, rgba(255, 255, 255, .8) 62%); }
@media (max-width: 899px) {
.adl .adl--site .concept__inner { grid-template-columns: 1fr; }
}
.adl .adl--site .service-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--s-5) var(--s-4);
}
.adl .adl--site .service-list > :is(li, .li) { display: flex; }
.adl .adl--site .service {
  display: flex; flex-direction: column;
  width: 100%;
  text-decoration: none;
}
.adl .adl--site .service__visual { border-radius: 24px; }
.adl .adl--site .service__visual .media { aspect-ratio: 4 / 3; border-radius: 24px; }
.adl .adl--site .service:hover .service__visual .media { transform: translateY(-8px) rotate(1.5deg); box-shadow: var(--lift-2); }
.adl .adl--site .service:hover .service__visual::before { rotate: -6deg; translate: 2px 12px; }
.adl .adl--site .service__head { display: flex; align-items: center; flex-wrap: wrap; gap: 6px 12px; margin-top: var(--s-3); }
.adl .adl--site .service__name { font-size: 21px; font-weight: 700; letter-spacing: .08em; }
.adl .adl--site .badge {
  display: inline-flex; align-items: center;
  padding: 2px 12px;
  border-radius: 999px;
  background: var(--c-accent); color: var(--c-ink);
  font-size: 13px; font-weight: 700; letter-spacing: .08em;
}
.adl .adl--site .badge--new { background: var(--c-main); }
.adl .adl--site .service__price { margin-top: 4px; font-family: var(--font-en); font-size: 22px; font-weight: 400; letter-spacing: .02em; }
.adl .adl--site .service__price small { font-family: var(--font-ja); font-size: 14px; font-weight: 500; margin-left: 2px; }
.adl .adl--site .service__price--soon { font-family: var(--font-ja); font-size: 16px; font-weight: 700; color: var(--c-ink-sub); }
.adl .adl--site .service__desc { margin-top: var(--s-1); font-size: 15px; color: var(--c-ink-sub); }
.adl .adl--site .service .text-link { margin-top: auto; padding-top: var(--s-2); align-self: flex-start; }
@media (max-width: 899px) {
.adl .adl--site .service-list { grid-template-columns: 1fr; gap: var(--s-6); }
.adl .adl--site .service__visual .media { aspect-ratio: 16 / 9; }
}
.adl .adl--site .ai__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr);
  align-items: center;
  gap: var(--s-8);
}
.adl .adl--site .ai__label {
  display: inline-flex; align-items: center; gap: 8px;
  padding: 4px 14px;
  border-radius: 999px;
  background: var(--c-white);
  font-size: 13px; font-weight: 700; letter-spacing: .1em;
}
.adl .adl--site .ai__label::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: var(--c-main); }
.adl .adl--site .ai__name {
  margin-top: var(--s-2);
  font-family: var(--font-en);
  font-size: clamp(64px, 9vw, 120px);
  font-weight: 200;
  line-height: 1;
  letter-spacing: .01em;
}
.adl .adl--site .ai__role { margin-top: var(--s-2); font-size: 20px; font-weight: 700; letter-spacing: .12em; }
.adl .adl--site .ai__text { margin-top: var(--s-2); color: var(--c-ink-sub-on-tint); max-width: 30em; }
.adl .adl--site .ai .btn-row { margin-top: var(--s-4); }
.adl .adl--site .ai__stickers { position: relative; aspect-ratio: 5 / 4; width: min(100%, 480px); justify-self: center; }
.adl .adl--site .ai-sticker {
  position: absolute;
  width: 40%; aspect-ratio: 1 / 1;
  border-radius: 24px;
  background: var(--c-white);
  box-shadow: 0 0 0 6px var(--c-white), 0 0 0 7px var(--c-line), var(--lift-2);
  rotate: var(--tilt);
}
.adl .adl--site .ai-sticker > img { object-fit: contain; padding: 6%; background: var(--c-white); }
.adl .adl--site .ai-sticker::after {
  content: "";
  position: absolute; right: 0; bottom: 0;
  width: 24%; height: 24%;
  background: linear-gradient(315deg, var(--c-tq-100) 0 49%, #D6E3E2 50%, #F3F8F8 100%);
  border-top-left-radius: 12px;
  box-shadow: -3px -3px 8px rgba(32, 39, 43, .08);
}
.adl .adl--site .ai-sticker--1 { --tilt: -7deg; left: 2%; top: 8%; }
.adl .adl--site .ai-sticker--2 { --tilt: 5deg; right: 4%; top: 0; z-index: 2; box-shadow: 0 0 0 6px var(--c-white), 0 0 0 7px var(--c-line), var(--lift-3); }
.adl .adl--site .ai-sticker--3 { --tilt: -2deg; left: 30%; bottom: 0; z-index: 1; }
@media (max-width: 899px) {
.adl .adl--site .ai__inner { grid-template-columns: 1fr; gap: var(--s-6); }
}
@media (max-width: 767px) {
.adl .adl--site .ai .btn-row .btn { width: 100%; }
}
.adl .adl--site .work-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--s-5) var(--s-4);
}
.adl .adl--site .work .media { aspect-ratio: 91 / 55; border-radius: 16px; }
.adl .adl--site .work .paper { border-radius: 16px; }
.adl .adl--site .work__meta { margin-top: var(--s-2); display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; }
.adl .adl--site .work__type {
  font-size: 12px; font-weight: 700; letter-spacing: .08em;
  padding: 1px 10px; border-radius: 999px;
  border: 1px solid var(--c-line); background: var(--c-white);
}
.adl .adl--site .work__name { font-size: 15px; font-weight: 700; }
.adl .adl--site .work__job { width: 100%; font-size: 14px; color: var(--c-ink-sub); }
.adl .adl--site .works__more { margin-top: var(--s-6); }
@media (max-width: 899px) {
.adl .adl--site .work-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-4) var(--s-3); }
}
@media (max-width: 479px) {
.adl .adl--site .work-list { grid-template-columns: 1fr; }
}
.adl .adl--site .reason-list { display: grid; gap: var(--s-3); }
.adl .adl--site .reason {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  gap: var(--s-3);
  align-items: start;
  padding: var(--s-5);
  border-radius: 28px;
  background: var(--c-white);
  box-shadow: var(--lift-1);
}
.adl .adl--site .reason__num {
  font-family: var(--font-en);
  font-size: 56px; font-weight: 200; line-height: 1;
  color: var(--c-ink);
}
.adl .adl--site .reason__num::after { content: ""; display: block; width: 24px; height: 3px; margin-top: 12px; border-radius: 2px; background: var(--c-accent); }
.adl .adl--site .reason__title { font-size: 20px; font-weight: 700; line-height: 1.6; letter-spacing: .06em; }
.adl .adl--site .reason__text { margin-top: var(--s-1); color: var(--c-ink-sub); font-size: 16px; }
.adl .adl--site .reason__text p + p { margin-top: var(--s-1); }
@media (max-width: 767px) {
.adl .adl--site .reason { grid-template-columns: 1fr; padding: var(--s-4) var(--s-3); gap: var(--s-2); }
.adl .adl--site .reason__num { font-size: 44px; }
}
.adl .adl--site .ideal-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--s-3);
}
.adl .adl--site .ideal {
  padding: var(--s-4) var(--s-3);
  border-radius: 24px;
  background: var(--c-soft);
  border: 1px solid var(--c-line);
}
.adl .adl--site .ideal__title { display: flex; align-items: center; gap: 10px; font-size: 17px; font-weight: 700; line-height: 1.5; }
.adl .adl--site .ideal__title::before { content: ""; flex: none; width: 10px; height: 10px; border-radius: 3px; background: var(--c-main); rotate: 45deg; }
.adl .adl--site .ideal__text { margin-top: var(--s-1); font-size: 15px; color: var(--c-ink-sub); line-height: 1.8; }
@media (max-width: 899px) {
.adl .adl--site .ideal-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 599px) {
.adl .adl--site .ideal-list { grid-template-columns: 1fr; }
}
.adl .adl--site .faq-list { display: grid; gap: var(--s-2); max-width: 880px; }
.adl .adl--site .faq {
  border-radius: 20px;
  background: var(--c-white);
  box-shadow: var(--lift-1);
}
.adl .adl--site .faq summary {
  position: relative;
  display: flex; align-items: center; gap: var(--s-2);
  min-height: 64px;
  padding: var(--s-2) 64px var(--s-2) var(--s-3);
  font-size: 16px; font-weight: 700; line-height: 1.6;
  cursor: pointer;
  list-style: none;
}
.adl .adl--site .faq summary::-webkit-details-marker { display: none; }
.adl .adl--site .faq summary::before { content: "Q"; flex: none; font-family: var(--font-en); font-size: 22px; font-weight: 300; color: var(--c-ink); }
.adl .adl--site .faq summary::after {
  content: "";
  position: absolute; right: var(--s-3); top: 50%;
  width: 22px; height: 22px; margin-top: -11px;
  border-radius: 50%;
  background:
    linear-gradient(var(--c-ink), var(--c-ink)) center / 10px 1.5px no-repeat,
    linear-gradient(var(--c-ink), var(--c-ink)) center / 1.5px 10px no-repeat,
    var(--c-tq-200);
  transition: rotate .3s var(--ease-out);
}
.adl .adl--site .faq[open] summary::after { rotate: 45deg; }
.adl .adl--site .faq__a {
  display: flex; gap: var(--s-2);
  padding: 0 var(--s-3) var(--s-3);
  font-size: 15px; color: var(--c-ink-sub-on-tint);
}
.adl .adl--site .faq__a::before { content: "A"; flex: none; font-family: var(--font-en); font-size: 22px; font-weight: 300; line-height: 1.4; color: var(--c-accent); }
.adl .adl--site .faq__a p + p, .adl .adl--site .faq__a ul { margin-top: var(--s-1); }
.adl .adl--site .faq__note { margin-top: var(--s-3); font-size: 14px; color: var(--c-ink-sub-on-tint); }
.adl .adl--site .message__inner {
  display: grid;
  grid-template-columns: 280px minmax(0, 1fr);
  gap: var(--s-6) var(--s-8);
  align-items: center;
}
.adl .adl--site .message__photo { border-radius: 50%; }
.adl .adl--site .message__photo .media { aspect-ratio: 1 / 1; }
.adl .adl--site .message__photo::before { border-radius: 50%; }
.adl .adl--site .message__body p + p { margin-top: var(--s-2); }
.adl .adl--site .message__sign { margin-top: var(--s-3); font-weight: 700; letter-spacing: .1em; }
.adl .adl--site .message .text-link { margin-top: var(--s-2); }
@media (max-width: 767px) {
.adl .adl--site .message__inner { grid-template-columns: 1fr; }
.adl .adl--site .message__photo { width: 180px; }
}
.adl .adl--site .contact-cta { text-align: center; }
.adl .adl--site .contact-cta .section-head { margin-inline: auto; }
.adl .adl--site .contact-cta .section-title::after { margin-inline: auto; }
.adl .adl--site .contact-cta__note { margin-top: var(--s-2); font-size: 14px; color: var(--c-ink-sub-on-tint); }
.adl .adl--site .contact-cta .btn-row { justify-content: center; margin-top: var(--s-4); }
.adl .adl--site .site-footer { position: relative; margin-top: calc(var(--sheet-overlap) * -1); border-radius: var(--sheet-r) var(--sheet-r) 0 0; background: var(--c-white); box-shadow: 0 -1px 0 rgba(32, 39, 43, .05), 0 -20px 40px -30px rgba(32, 39, 43, .14); }
.adl .adl--site .footer-inner {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: var(--s-4);
  padding-block: var(--s-8) var(--s-4);
}
.adl .adl--site .footer-brand p { margin-top: var(--s-1); font-size: 14px; color: var(--c-ink-sub); }
.adl .adl--site .footer-nav ul { display: grid; grid-template-columns: repeat(2, auto); gap: 4px var(--s-5); }
.adl .adl--site .footer-nav a { display: inline-flex; align-items: center; min-height: 40px; font-size: 15px; text-decoration: none; }
.adl .adl--site .footer-nav a:hover { text-decoration: underline; text-decoration-color: var(--c-accent); text-underline-offset: 6px; }
.adl .adl--site .copyright { grid-column: 1 / -1; padding-top: var(--s-3); border-top: 1px solid var(--c-line); font-size: 13px; font-weight: 400; color: var(--c-ink-sub); }
@media (max-width: 767px) {
.adl .adl--site .footer-inner { grid-template-columns: 1fr; }
}
.adl .adl--site .breadcrumb { padding-top: var(--s-2); font-size: 13px; color: var(--c-ink-sub); }
.adl .adl--site .breadcrumb ol { display: flex; flex-wrap: wrap; gap: 4px 10px; }
.adl .adl--site .breadcrumb :is(li, .li) + :is(li, .li)::before { content: "/"; margin-right: 10px; color: var(--c-line); }
.adl .adl--site .breadcrumb a { text-decoration: none; }
.adl .adl--site .breadcrumb a:hover { text-decoration: underline; }
.adl .adl--site .page-hero { position: relative; isolation: isolate; overflow: hidden; padding-block: var(--s-6) calc(var(--s-14) + var(--sheet-overlap)); }
.adl .adl--site .page-hero__inner { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--s-8); align-items: center; }
.adl .adl--site .page-hero__label { display: inline-flex; align-items: center; gap: 10px; font-size: 15px; font-weight: 700; letter-spacing: .14em; }
.adl .adl--site .page-hero__label::before { content: ""; width: 28px; height: 2px; background: var(--c-accent); }
.adl .adl--site .page-hero__title { margin-top: var(--s-3); font-size: clamp(30px, 3.8vw, 46px); font-weight: 700; line-height: 1.5; letter-spacing: .08em; }
.adl .adl--site .page-hero__text { margin-top: var(--s-3); color: var(--c-ink-sub); }
.adl .adl--site .page-hero__text p + p { margin-top: var(--s-2); }
.adl .adl--site .page-hero .btn-row { margin-top: var(--s-5); }
.adl .adl--site .card-stack { position: relative; aspect-ratio: 1 / 1; width: min(100%, 500px); justify-self: center; }
.adl .adl--site .card-stack .bc { position: absolute; width: 76%; aspect-ratio: 91 / 55; background: var(--c-white); border-radius: 12px; box-shadow: 0 0 0 6px var(--c-white), 0 0 0 7px var(--c-line), var(--lift-2); }
.adl .adl--site .card-stack .bc--1 { left: 0; top: 10%; rotate: -8deg; }
.adl .adl--site .card-stack .bc--2 { right: 0; top: 34%; rotate: 4deg; z-index: 2; box-shadow: 0 0 0 6px var(--c-white), 0 0 0 7px var(--c-line), var(--lift-3); }
.adl .adl--site .card-stack .bc--3 { left: 8%; bottom: 4%; rotate: -2deg; z-index: 1; }
@media (max-width: 899px) {
.adl .adl--site .page-hero__inner { grid-template-columns: 1fr; }
.adl .adl--site .card-stack { width: min(100%, 400px); }
}
@media (max-width: 767px) {
.adl .adl--site .page-hero .btn-row { flex-direction: column; }
.adl .adl--site .page-hero .btn-row .btn { width: 100%; }
}
.adl .adl--site .check-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-2) var(--s-4); max-width: 920px; }
.adl .adl--site .check-list :is(li, .li) {
  display: flex; gap: 12px; align-items: flex-start;
  padding: var(--s-2) var(--s-3);
  border-radius: 16px;
  background: var(--c-white);
  box-shadow: var(--lift-1);
  font-weight: 700; font-size: 16px; line-height: 1.7;
}
.adl .adl--site .check-list :is(li, .li)::before {
  content: ""; flex: none;
  width: 20px; height: 20px; margin-top: 4px;
  border-radius: 50%;
  background: var(--c-main) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-7' fill='none' stroke='%2320272B' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 100% no-repeat;
}
@media (max-width: 767px) {
.adl .adl--site .check-list { grid-template-columns: 1fr; }
}
.adl .adl--site .steps { display: grid; grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); gap: var(--s-3); counter-reset: step; }
.adl .adl--site .step {
  position: relative;
  padding: var(--s-4) var(--s-3);
  border-radius: 24px;
  background: var(--c-white);
  box-shadow: var(--lift-1);
  counter-increment: step;
}
.adl .adl--site .step__num { font-family: var(--font-en); font-size: 13px; font-weight: 400; letter-spacing: .16em; color: var(--c-ink-sub); }
.adl .adl--site .step__num::after { content: counter(step, decimal-leading-zero); display: block; font-size: 40px; font-weight: 200; letter-spacing: 0; line-height: 1.1; color: var(--c-ink); }
.adl .adl--site .step__title { margin-top: var(--s-2); font-size: 18px; font-weight: 700; line-height: 1.5; }
.adl .adl--site .step__text { margin-top: var(--s-1); font-size: 15px; color: var(--c-ink-sub); }
.adl .adl--site .step .text-link { margin-top: var(--s-1); }
.adl .adl--site .steps--flow { --cols: 3; }
@media (max-width: 899px) {
.adl .adl--site .steps, .adl .adl--site .steps--flow { grid-template-columns: 1fr; }
}
.adl .adl--site .flow-note { margin-top: var(--s-4); font-size: 15px; color: var(--c-ink-sub-on-tint); }
.adl .adl--site .flow-note p + p { margin-top: 4px; }
.adl .adl--site .feature-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-4); }
.adl .adl--site .feature__visual .media { aspect-ratio: 4 / 3; border-radius: 24px; }
.adl .adl--site .feature__visual { border-radius: 24px; }
.adl .adl--site .feature__title { margin-top: var(--s-3); font-size: 19px; font-weight: 700; line-height: 1.6; letter-spacing: .04em; }
.adl .adl--site .feature__text { margin-top: var(--s-1); font-size: 15px; color: var(--c-ink-sub); }
.adl .adl--site .feature__text p + p { margin-top: var(--s-1); }
@media (max-width: 899px) {
.adl .adl--site .feature-list { grid-template-columns: 1fr; gap: var(--s-6); }
}
.adl .adl--site .option-group + .option-group { margin-top: var(--s-10); }
.adl .adl--site .option-group__title { font-size: 20px; font-weight: 700; letter-spacing: .08em; margin-bottom: var(--s-3); }
.adl .adl--site .option-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-4); }
.adl .adl--site .option {
  display: grid;
  grid-template-columns: 200px minmax(0, 1fr);
  gap: var(--s-3);
  align-items: center;
  padding: var(--s-3);
  border-radius: 28px;
  background: var(--c-white);
  box-shadow: var(--lift-1);
}
.adl .adl--site .option .media { aspect-ratio: 91 / 55; border-radius: 12px; box-shadow: 0 0 0 4px var(--c-white), 0 0 0 5px var(--c-line); }
.adl .adl--site .option__name { font-size: 18px; font-weight: 700; }
.adl .adl--site .option__text { margin-top: 4px; font-size: 15px; color: var(--c-ink-sub); }
.adl .adl--site .option__sides { margin-top: var(--s-1); display: grid; gap: 6px; font-size: 14px; color: var(--c-ink-sub); }
.adl .adl--site .option__sides dt { display: inline; font-weight: 700; color: var(--c-ink); margin-right: 6px; }
.adl .adl--site .option__sides dd { display: inline; }
.adl .adl--site .option-note { margin-top: var(--s-4); padding: var(--s-3); border-radius: 20px; background: var(--c-white); font-size: 15px; }
.adl .adl--site .option-note strong { display: block; margin-bottom: 4px; }
@media (max-width: 1023px) {
.adl .adl--site .option-list { grid-template-columns: 1fr; }
}
@media (max-width: 599px) {
.adl .adl--site .option { grid-template-columns: 1fr; }
}
.adl .adl--site .voice-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-4); }
.adl .adl--site .voice {
  display: flex; flex-direction: column;
  padding: var(--s-4);
  border-radius: 28px;
  background: var(--c-white);
  box-shadow: var(--lift-1);
}
.adl .adl--site .voice__title { font-size: 17px; font-weight: 700; line-height: 1.7; }
.adl .adl--site .voice__title::before { content: "“"; display: block; font-family: var(--font-en); font-size: 48px; font-weight: 200; line-height: .6; color: var(--c-accent); margin-bottom: 10px; }
.adl .adl--site .voice__text { margin-top: var(--s-2); font-size: 15px; color: var(--c-ink-sub); }
.adl .adl--site .voice__who { margin-top: auto; padding-top: var(--s-3); display: flex; align-items: center; gap: 12px; font-size: 14px; font-weight: 700; }
.adl .adl--site .voice__who .media { width: 48px; height: 48px; flex: none; }
.adl .adl--site .voice__who .media::before { font-size: 8px; }
.adl .adl--site .voice-list > :is(li, .li):first-child { grid-column: 1 / -1; }
@media (max-width: 767px) {
.adl .adl--site .voice-list { grid-template-columns: 1fr; }
.adl .adl--site .voice { padding: var(--s-3); }
}
.adl .adl--site .price-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-4); }
.adl .adl--site .price {
  display: flex; flex-direction: column;
  padding: var(--s-5) var(--s-4);
  border-radius: 32px;
  background: var(--c-white);
  box-shadow: var(--lift-2);
}
.adl .adl--site .price__name { font-size: 22px; font-weight: 700; letter-spacing: .08em; }
.adl .adl--site .price__desc { margin-top: var(--s-1); font-size: 15px; color: var(--c-ink-sub); }
.adl .adl--site .price__amount { margin-top: var(--s-3); padding-block: var(--s-2); border-block: 1px solid var(--c-line); display: flex; align-items: baseline; justify-content: space-between; gap: var(--s-2); }
.adl .adl--site .price__amount span { font-size: 14px; color: var(--c-ink-sub); }
.adl .adl--site .price__amount strong { font-family: var(--font-en); font-size: 40px; font-weight: 300; letter-spacing: .01em; }
.adl .adl--site .price__amount strong small { font-family: var(--font-ja); font-size: 16px; font-weight: 700; margin-left: 2px; }
.adl .adl--site .price__includes-title { margin-top: var(--s-3); font-size: 14px; font-weight: 700; }
.adl .adl--site .price__includes { margin-top: var(--s-1); display: flex; flex-wrap: wrap; gap: 8px; }
.adl .adl--site .price__includes :is(li, .li) { padding: 4px 12px; border-radius: 999px; background: var(--c-tq-100); font-size: 14px; }
.adl .adl--site .price-extra { margin-top: var(--s-4); padding: var(--s-4); border-radius: 24px; background: var(--c-white); }
.adl .adl--site .price-extra__title { font-size: 16px; font-weight: 700; }
.adl .adl--site .price-extra ul { margin-top: var(--s-1); display: grid; gap: 4px; font-size: 15px; color: var(--c-ink-sub); }
.adl .adl--site .price-extra ul :is(li, .li)::before { content: "・"; }
.adl .adl--site .price-extra p { margin-top: var(--s-1); font-size: 14px; color: var(--c-ink-sub); }
@media (max-width: 899px) {
.adl .adl--site .price-list { grid-template-columns: 1fr; }
}
.adl .adl--site .reprint { margin-top: var(--s-10); display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--s-4); }
.adl .adl--site .reprint__title { grid-column: 1 / -1; font-size: 20px; font-weight: 700; letter-spacing: .08em; }
.adl .adl--site .table-card { padding: var(--s-4); border-radius: 24px; background: var(--c-white); box-shadow: var(--lift-1); }
.adl .adl--site .table-card h4 { font-size: 16px; font-weight: 700; margin-bottom: var(--s-2); }
.adl .adl--site .table-card table { width: 100%; font-size: 15px; }
.adl .adl--site .table-card th, .adl .adl--site .table-card td { padding: 12px 4px; border-bottom: 1px solid var(--c-line); text-align: left; font-weight: 500; }
.adl .adl--site .table-card thead th { font-size: 13px; color: var(--c-ink-sub); }
.adl .adl--site .table-card td:last-child, .adl .adl--site .table-card th:last-child { text-align: right; font-family: var(--font-en); font-size: 17px; }
.adl .adl--site .table-card tbody tr:last-child td { border-bottom: 0; }
.adl .adl--site .table-card .note { margin-top: var(--s-2); font-size: 14px; color: var(--c-ink-sub); }
@media (max-width: 899px) {
.adl .adl--site .reprint { grid-template-columns: 1fr; }
}
.adl .adl--site .payment { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-3); }
.adl .adl--site .payment :is(li, .li) { padding: var(--s-3); border-radius: 20px; background: var(--c-white); box-shadow: var(--lift-1); font-size: 15px; }
.adl .adl--site .payment :is(li, .li) strong { display: block; font-size: 16px; margin-bottom: 4px; }
@media (max-width: 899px) {
.adl .adl--site .payment { grid-template-columns: 1fr; }
}
.adl .adl--site .has-depth {
  transform: translate3d(calc(var(--px, 0) * var(--depth, 0) * 1px), calc(var(--py, 0) * var(--depth, 0) * 1px), 0);
  transition: transform .9s var(--ease-out);
}
@media (prefers-reduced-motion: no-preference) {
.adl .adl--site .hero__eyebrow, .adl .adl--site .page-hero__label { animation: fade-up .8s var(--ease-out) .1s both; }
.adl .adl--site .hero__title .line, .adl .adl--site .page-hero__title { animation: rise .9s var(--ease-out) both; }
.adl .adl--site .hero__title .line:nth-child(2) { animation-delay: .15s; }
.adl .adl--site .hero__lead, .adl .adl--site .hero__en, .adl .adl--site .hero__services, .adl .adl--site .hero .btn-row, .adl .adl--site .page-hero__text, .adl .adl--site .page-hero .btn-row { animation: fade-up .9s var(--ease-out) .45s both; }
.adl .adl--site .stack__item, .adl .adl--site .card-stack .bc { animation: drop .8s var(--ease-pop) both; }
.adl .adl--site .stack__item--manga, .adl .adl--site .card-stack .bc--1 { animation-delay: .35s; }
.adl .adl--site .stack__item--portrait, .adl .adl--site .card-stack .bc--3 { animation-delay: .55s; }
.adl .adl--site .stack__item--card, .adl .adl--site .card-stack .bc--2 { animation-delay: .75s; }
.adl .adl--site .stack__tag { animation: fade-up .6s var(--ease-out) 1.1s both; }
.adl .adl--site .stack__spark { animation: twinkle .8s var(--ease-pop) 1.3s both; }
.adl .adl--site.js-reveal .reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .8s var(--ease-out), transform .8s var(--ease-out);
    transition-delay: calc(var(--d, 0) * .12s);
  }
.adl .adl--site.js-reveal .reveal.is-visible { opacity: 1; transform: none; }
.adl .adl--site.js-reveal .reveal--paper { transform: translateY(56px) rotate(-5deg) scale(.92); transition: opacity .7s var(--ease-out), transform .9s var(--ease-pop); transition-delay: calc(var(--d, 0) * .14s); }
.adl .adl--site.js-reveal .reveal--paper.is-visible { transform: none; }
.adl .adl--site.js-reveal .section-head.reveal { transform: none; }
.adl .adl--site.js-reveal .section-head .mask__inner { transform: translateY(110%); transition: transform 1s var(--ease-out); }
.adl .adl--site.js-reveal .section-head.is-visible .mask__inner { transform: none; }
.adl .adl--site.js-reveal .section-head .section-title::after { transform: scaleX(0); transform-origin: left; transition: transform .8s var(--ease-out) .5s; }
.adl .adl--site.js-reveal .section-head--center .section-title::after, .adl .adl--site.js-reveal .contact-cta .section-title::after { transform-origin: center; }
.adl .adl--site.js-reveal .section-head.is-visible .section-title::after { transform: none; }
.adl .adl--site .is-ambient .backdrop__blob--1 { animation: float-a 26s ease-in-out infinite alternate; }
.adl .adl--site .is-ambient .backdrop__blob--2 { animation: float-b 22s ease-in-out infinite alternate; }
.adl .adl--site .is-ambient .backdrop__grid { animation: float-grid 30s ease-in-out infinite alternate; }
.adl .adl--site .is-ambient .bd--blob { animation: float-b 24s ease-in-out infinite alternate; }
.adl .adl--site .is-ambient .bd--ring { animation: float-ring 28s ease-in-out infinite alternate; }
.adl .adl--site .is-ambient.is-paused * { animation-play-state: paused !important; }
@supports (animation-timeline: view()) {
.adl .adl--site .sheet { animation: sheet-rise linear both; animation-timeline: view(); animation-range: entry 0% entry 60%; }
.adl .adl--site .bd { animation: drift linear both; animation-timeline: view(); animation-range: cover; }
.adl .adl--site .bd--dots { --from: 80px;  --to: -80px; }
.adl .adl--site .bd--ring { --from: 160px; --to: -160px; }
.adl .adl--site .bd--blob { --from: -120px; --to: 120px; }
.adl .adl--site .bd--spark { --from: 220px; --to: -220px; animation-name: drift-spin; }
.adl .adl--site .is-ambient .bd--blob { animation: drift linear both, float-b 24s ease-in-out infinite alternate; animation-timeline: view(), auto; animation-range: cover, normal; }
.adl .adl--site .is-ambient .bd--ring { animation: drift linear both, float-ring 28s ease-in-out infinite alternate; animation-timeline: view(), auto; animation-range: cover, normal; }
}
}
@keyframes fade-up { from { opacity: 0; transform: translateY(20px); } }
@keyframes rise { from { opacity: 0; transform: translateY(.5em); filter: blur(6px); } }
@keyframes drop {
  0%   { opacity: 0; translate: 0 -40px; scale: 1.08; }
  70%  { opacity: 1; }
  100% { opacity: 1; translate: 0 0; scale: 1; }
}
@keyframes twinkle { from { opacity: 0; scale: 0; rotate: -90deg; } }
@keyframes sheet-rise {
  from { translate: 0 120px; scale: .97; border-radius: calc(var(--sheet-r) * 1.8) calc(var(--sheet-r) * 1.8) 0 0; }
  to   { translate: 0 0; scale: 1; }
}
@keyframes drift { from { translate: 0 var(--from); } to { translate: 0 var(--to); } }
@keyframes drift-spin { from { translate: 0 var(--from); rotate: -60deg; } to { translate: 0 var(--to); rotate: 120deg; } }
@keyframes float-a { from { rotate: 0deg; scale: 1; translate: 0 0; } to { rotate: 14deg; scale: 1.08; translate: -3vw 2vw; } }
@keyframes float-b { from { rotate: 0deg; scale: 1; } to { rotate: -18deg; scale: 1.12; } }
@keyframes float-grid { from { scale: 1; } to { scale: 1.04; } }
@keyframes float-ring { from { rotate: 0deg; scale: 1; } to { rotate: 10deg; scale: 1.06; } }
@media (prefers-reduced-motion: reduce) {
.adl .adl--site { scroll-behavior: auto; }
.adl .adl--site .btn, .adl .adl--site .paper > .media, .adl .adl--site .paper::before { transition: none; }
}
.adl .adl--site .hero__title { font-size: clamp(30px, 3.9vw, 50px); }
@media (min-width: 900px) {
.adl .adl--site .hero__title .line { white-space: nowrap; }
}
.adl .adl--site .backdrop__blob--1 { top: 2%; }
.adl .adl--site .stack__tag--card { bottom: 18%; right: 2%; }
@media (max-width: 479px) {
.adl .adl--site .hero__title { font-size: 27px; letter-spacing: .04em; }
}
.adl .adl--site .touch-list { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--s-4); }
.adl .adl--site .touch .paper { border-radius: 50%; max-width: 300px; }
.adl .adl--site .touch .media { aspect-ratio: 1 / 1; border-radius: 50%; box-shadow: 0 0 0 6px var(--c-white), 0 0 0 7px var(--c-line), var(--lift-1); }
.adl .adl--site .touch__name { margin-top: var(--s-4); font-size: 20px; font-weight: 700; letter-spacing: .08em; }
.adl .adl--site .touch__catch { margin-top: 4px; font-size: 15px; font-weight: 700; }
.adl .adl--site .touch__text { margin-top: var(--s-1); font-size: 15px; color: var(--c-ink-sub); }
@media (max-width: 899px) {
.adl .adl--site .touch-list { grid-template-columns: 1fr; gap: var(--s-6); }
.adl .adl--site .touch .paper { max-width: 260px; }
}
.adl .adl--site .circle-stack { position: relative; aspect-ratio: 1 / 1; width: min(100%, 480px); justify-self: center; }
.adl .adl--site .circle-stack .pc { position: absolute; width: 52%; aspect-ratio: 1 / 1; border-radius: 50%; background: var(--c-white); box-shadow: 0 0 0 6px var(--c-white), 0 0 0 7px var(--c-line), var(--lift-2); }
.adl .adl--site .circle-stack .pc--1 { left: 0; top: 6%; }
.adl .adl--site .circle-stack .pc--2 { right: 0; top: 22%; z-index: 2; box-shadow: 0 0 0 6px var(--c-white), 0 0 0 7px var(--c-line), var(--lift-3); }
.adl .adl--site .circle-stack .pc--3 { left: 22%; bottom: 0; z-index: 1; }
.adl .adl--site .circle-stack .pc-tag { position: absolute; z-index: 3; padding: 2px 12px; border-radius: 999px; background: var(--c-white); box-shadow: var(--lift-1); font-size: 13px; font-weight: 700; }
@media (prefers-reduced-motion: no-preference) {
.adl .adl--site .circle-stack .pc { animation: drop .8s var(--ease-pop) both; }
.adl .adl--site .circle-stack .pc--1 { animation-delay: .35s; }
.adl .adl--site .circle-stack .pc--3 { animation-delay: .55s; }
.adl .adl--site .circle-stack .pc--2 { animation-delay: .75s; }
.adl .adl--site .circle-stack .pc-tag { animation: fade-up .6s var(--ease-out) 1.1s both; }
}
.adl .adl--site .price__amounts { margin-top: var(--s-3); border-top: 1px solid var(--c-line); }
.adl .adl--site .price__amounts .price__amount { margin-top: 0; border-top: 0; }
.adl .adl--site .soon {
  max-width: 760px;
  margin-inline: auto;
  padding: var(--s-8) var(--s-5);
  border-radius: 32px;
  background: var(--c-white);
  box-shadow: var(--lift-2);
  text-align: center;
}
.adl .adl--site .soon__title { margin-top: var(--s-3); font-size: clamp(22px, 2.6vw, 28px); font-weight: 700; line-height: 1.6; letter-spacing: .08em; }
.adl .adl--site .soon__text { margin-top: var(--s-2); color: var(--c-ink-sub); }
.adl .adl--site .soon .btn-row { justify-content: center; margin-top: var(--s-4); }
.adl .adl--site .manga-pages { position: relative; aspect-ratio: 1 / 1; width: min(100%, 460px); justify-self: center; }
.adl .adl--site .manga-pages .mp { position: absolute; width: 56%; aspect-ratio: 1 / 1.414; border-radius: 10px; background: var(--c-white); box-shadow: 0 0 0 6px var(--c-white), 0 0 0 7px var(--c-line), var(--lift-2); }
.adl .adl--site .manga-pages .mp--1 { left: 4%; top: 4%; rotate: -7deg; }
.adl .adl--site .manga-pages .mp--2 { right: 4%; top: 10%; rotate: 6deg; z-index: 2; box-shadow: 0 0 0 6px var(--c-white), 0 0 0 7px var(--c-line), var(--lift-3); }
@media (prefers-reduced-motion: no-preference) {
.adl .adl--site .manga-pages .mp { animation: drop .8s var(--ease-pop) both; }
.adl .adl--site .manga-pages .mp--1 { animation-delay: .35s; }
.adl .adl--site .manga-pages .mp--2 { animation-delay: .6s; }
}
@media (max-width: 767px) {
.adl .adl--site .soon { padding: var(--s-6) var(--s-3); }
.adl .adl--site .soon .btn-row .btn { width: 100%; }
}
.adl .adl--site .filter { display: flex; flex-wrap: wrap; gap: var(--s-1); margin-bottom: var(--s-8); }
.adl .adl--site .filter a {
  display: inline-flex; align-items: center; gap: 8px;
  min-height: 44px; padding: 0 20px;
  border: 1px solid var(--c-ink); border-radius: 999px;
  background: var(--c-white);
  font-size: 15px; font-weight: 700; text-decoration: none;
  transition: background-color .25s;
}
.adl .adl--site .filter a:hover { background: var(--c-soft); }
.adl .adl--site .filter a span { font-family: var(--font-en); font-weight: 300; color: var(--c-ink-sub); }
.adl .adl--site .works-group { scroll-margin-top: var(--s-4); }
.adl .adl--site .works-group + .works-group { margin-top: var(--s-14); }
.adl .adl--site .works-group__title { display: flex; align-items: baseline; gap: 12px; font-size: 22px; font-weight: 700; letter-spacing: .08em; margin-bottom: var(--s-4); }
.adl .adl--site .works-group__title span { font-family: var(--font-en); font-size: 15px; font-weight: 300; color: var(--c-ink-sub); }
.adl .adl--site .work-list--square .media { aspect-ratio: 1 / 1; }
.adl .adl--site .works-empty { padding: var(--s-6) var(--s-4); border-radius: 24px; background: var(--c-white); box-shadow: var(--lift-1); text-align: center; color: var(--c-ink-sub); }
.adl .adl--site .profile { display: grid; grid-template-columns: 300px minmax(0, 1fr); gap: var(--s-6) var(--s-8); align-items: start; }
.adl .adl--site .profile__photo { border-radius: 50%; }
.adl .adl--site .profile__photo .media { aspect-ratio: 1 / 1; }
.adl .adl--site .profile__name { font-size: 28px; font-weight: 700; letter-spacing: .1em; }
.adl .adl--site .profile__note { margin-top: var(--s-1); font-size: 14px; color: var(--c-ink-sub); }
.adl .adl--site .profile__roles { display: flex; flex-wrap: wrap; gap: var(--s-1); margin-top: var(--s-3); }
.adl .adl--site .profile__list { margin-top: var(--s-4); border-top: 1px solid var(--c-line); }
.adl .adl--site .profile__list > div { display: grid; grid-template-columns: 140px minmax(0, 1fr); gap: var(--s-2); padding: 14px 0; border-bottom: 1px solid var(--c-line); font-size: 15px; }
.adl .adl--site .profile__list dt { font-weight: 700; }
.adl .adl--site .profile__list dd { color: var(--c-ink-sub); }
@media (max-width: 899px) {
.adl .adl--site .profile { grid-template-columns: 1fr; }
.adl .adl--site .profile__photo { width: 200px; }
}
@media (max-width: 599px) {
.adl .adl--site .profile__list > div { grid-template-columns: 1fr; gap: 2px; }
}
.adl .adl--site .story { display: grid; gap: var(--s-4); max-width: 880px; }
.adl .adl--site .story__item { padding: var(--s-5); border-radius: 28px; background: var(--c-white); box-shadow: var(--lift-1); }
.adl .adl--site .story__title { font-size: 20px; font-weight: 700; line-height: 1.6; letter-spacing: .06em; }
.adl .adl--site .story__title::after { content: ""; display: block; width: 24px; height: 3px; margin-top: 12px; border-radius: 2px; background: var(--c-accent); }
.adl .adl--site .story__body { margin-top: var(--s-2); color: var(--c-ink-sub); }
.adl .adl--site .story__body p + p { margin-top: var(--s-2); }
@media (max-width: 767px) {
.adl .adl--site .story__item { padding: var(--s-4) var(--s-3); }
}
.adl .adl--site .company { max-width: 880px; padding: var(--s-2) var(--s-5); border-radius: 28px; background: var(--c-white); box-shadow: var(--lift-1); }
.adl .adl--site .company > div { display: grid; grid-template-columns: 160px minmax(0, 1fr); gap: var(--s-2); padding: var(--s-2) 0; border-bottom: 1px solid var(--c-line); }
.adl .adl--site .company > div:last-child { border-bottom: 0; }
.adl .adl--site .company dt { font-weight: 700; }
.adl .adl--site .company dd { color: var(--c-ink-sub); }
@media (max-width: 599px) {
.adl .adl--site .company { padding: var(--s-1) var(--s-3); }
.adl .adl--site .company > div { grid-template-columns: 1fr; gap: 2px; }
}
.adl .adl--site .form-wrap { display: grid; grid-template-columns: minmax(0, 1fr) 320px; gap: var(--s-6); align-items: start; }
.adl .adl--site .form { padding: var(--s-5); border-radius: 32px; background: var(--c-white); box-shadow: var(--lift-2); }
.adl .adl--site .field { border: 0; margin: 0; padding: 0; min-width: 0; }
.adl .adl--site .field + .field { margin-top: var(--s-4); }
.adl .adl--site .field__label { display: flex; align-items: center; gap: 10px; padding: 0; font-size: 16px; font-weight: 700; }
.adl .adl--site .req { padding: 0 8px; border-radius: 4px; background: var(--c-accent); color: var(--c-ink); font-size: 12px; font-weight: 700; }
.adl .adl--site .opt { padding: 0 8px; border-radius: 4px; border: 1px solid var(--c-line); color: var(--c-ink-sub); font-size: 12px; font-weight: 700; }
.adl .adl--site .field__hint { margin-top: 2px; font-size: 13px; color: var(--c-ink-sub); }
.adl .adl--site .input, .adl .adl--site .select, .adl .adl--site .textarea {
  width: 100%;
  margin-top: var(--s-1);
  min-height: 52px;
  padding: 12px 16px;
  border: 1px solid #B9CACC;
  border-radius: 12px;
  background: var(--c-white);
  color: var(--c-ink);
  font: inherit; font-size: 16px; font-weight: 500;
  transition: border-color .2s, box-shadow .2s;
}
.adl .adl--site .textarea { min-height: 200px; resize: vertical; line-height: 1.8; }
.adl .adl--site .input:focus, .adl .adl--site .select:focus, .adl .adl--site .textarea:focus { outline: none; border-color: var(--c-ink); box-shadow: 0 0 0 3px var(--c-tq-200); }
.adl .adl--site .radio-group { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-1); margin-top: var(--s-1); }
.adl .adl--site .radio { display: flex; align-items: center; gap: 10px; min-height: 52px; padding: 0 16px; border: 1px solid #B9CACC; border-radius: 12px; cursor: pointer; font-size: 15px; }
.adl .adl--site .radio input { width: 18px; height: 18px; accent-color: var(--c-ink); }
.adl .adl--site .radio:has(input:checked) { border-color: var(--c-ink); background: var(--c-tq-100); }
.adl .adl--site .form__submit { margin-top: var(--s-5); }
.adl .adl--site .form__submit .btn { width: 100%; min-height: 60px; font-size: 17px; cursor: pointer; font-family: inherit; }
.adl .adl--site .form__privacy { margin-top: var(--s-2); font-size: 13px; color: var(--c-ink-sub); text-align: center; }
.adl .adl--site .contact-info { display: grid; gap: var(--s-2); }
.adl .adl--site .contact-info :is(li, .li) { padding: var(--s-3); border-radius: 20px; background: var(--c-white); box-shadow: var(--lift-1); font-size: 15px; }
.adl .adl--site .contact-info strong { display: block; margin-bottom: 4px; font-size: 16px; }
@media (max-width: 1023px) {
.adl .adl--site .form-wrap { grid-template-columns: 1fr; }
}
@media (max-width: 599px) {
.adl .adl--site .form { padding: var(--s-4) var(--s-3); }
.adl .adl--site .radio-group { grid-template-columns: 1fr; }
}
.adl .adl--site .page-hero--short { padding-bottom: calc(var(--s-8) + var(--sheet-overlap)); }
.adl .adl--site .service-list--two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
@media (max-width: 899px) {
.adl .adl--site .service-list--two { grid-template-columns: 1fr; }
}
.adl .adl--site .icon {
  flex: none;
  width: 72px; height: 72px;
  border-radius: 20px;
  background: var(--c-white);
  box-shadow: var(--lift-1);
}
.adl .adl--site .icon::before { font-size: 9px; line-height: 1.3; padding: 6px; }
.adl .adl--site .icon > img { object-fit: contain; padding: 12%; }
.adl .adl--site .sheet--soft .icon, .adl .adl--site .sheet--mid .icon { background: var(--c-white); }
.adl .adl--site .reason { grid-template-columns: 104px minmax(0, 1fr); }
.adl .adl--site .reason__side { display: flex; flex-direction: column; align-items: flex-start; gap: var(--s-2); }
.adl .adl--site .reason .icon { background: var(--c-tq-100); box-shadow: none; }
@media (max-width: 767px) {
.adl .adl--site .reason__side { flex-direction: row; align-items: center; gap: var(--s-3); }
.adl .adl--site .reason__num::after { display: none; }
}
.adl .adl--site .ideal .icon { width: 64px; height: 64px; margin-bottom: var(--s-2); }
.adl .adl--site .step__icon { position: absolute; right: var(--s-3); top: var(--s-3); width: 64px; height: 64px; background: var(--c-tq-100); box-shadow: none; }
.adl .adl--site .concept__visual { margin-top: var(--s-5); border-radius: 24px; max-width: 460px; }
.adl .adl--site .concept__visual .media { aspect-ratio: 4 / 3; border-radius: 24px; background: var(--c-white); }
.adl .adl--site .cta-icons { display: flex; flex-wrap: wrap; justify-content: center; gap: var(--s-3) var(--s-5); margin-top: var(--s-4); }
.adl .adl--site .cta-icons :is(li, .li) { display: flex; flex-direction: column; align-items: center; gap: 10px; font-size: 14px; font-weight: 700; }
.adl .adl--site .cta-icons .icon { width: 80px; height: 80px; border-radius: 24px; }
.adl .adl--site .recommend { display: grid; grid-template-columns: 320px minmax(0, 1fr); gap: var(--s-6); align-items: center; }
.adl .adl--site .recommend__visual { border-radius: 28px; }
.adl .adl--site .recommend__visual .media { aspect-ratio: 1 / 1; border-radius: 28px; background: var(--c-white); }
.adl .adl--site .recommend .check-list { grid-template-columns: 1fr; }
@media (max-width: 899px) {
.adl .adl--site .recommend { grid-template-columns: 1fr; }
.adl .adl--site .recommend__visual { max-width: 280px; }
}
.adl .adl--site .voice__who .media { width: 52px; height: 52px; box-shadow: 0 0 0 3px var(--c-white), 0 0 0 4px var(--c-line); }
.adl .adl--site .price__visual { aspect-ratio: 91 / 55; margin-bottom: var(--s-3); border-radius: 16px; box-shadow: 0 0 0 5px var(--c-white), 0 0 0 6px var(--c-line), var(--lift-1); }
.adl .adl--site .price--wide {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr);
  gap: var(--s-6);
  align-items: center;
  padding: var(--s-5);
}
.adl .adl--site .price-wide__visual { border-radius: 24px; }
.adl .adl--site .price-wide__visual .media { aspect-ratio: 1 / 1; border-radius: 24px; }
.adl .adl--site .price-note {
  margin-top: var(--s-4);
  padding: var(--s-3) var(--s-4);
  border-left: 3px solid var(--c-accent);
  border-radius: 0 16px 16px 0;
  background: rgba(255, 255, 255, .6);
}
.adl .adl--site .price-note ul { margin-top: var(--s-1); display: grid; gap: 4px; font-size: 15px; color: var(--c-ink-sub-on-tint); }
.adl .adl--site .price-note ul :is(li, .li)::before { content: "・"; }
.adl .adl--site .price-note p:last-child { margin-top: var(--s-1); font-size: 14px; color: var(--c-ink-sub-on-tint); }
@media (max-width: 899px) {
.adl .adl--site .price--wide { grid-template-columns: 1fr; padding: var(--s-4) var(--s-3); }
.adl .adl--site .price-wide__visual { max-width: 360px; }
}
.adl .adl--site .payment :is(li, .li) .icon { margin-bottom: var(--s-2); width: 56px; height: 56px; border-radius: 16px; background: var(--c-tq-100); box-shadow: none; }
.adl .adl--site .soon__visual { width: 180px; aspect-ratio: 1 / 1; margin: 0 auto var(--s-3); border-radius: 32px; }
.adl .adl--site .story__item--media { display: grid; grid-template-columns: 200px minmax(0, 1fr); gap: var(--s-4); align-items: start; }
.adl .adl--site .story__visual { aspect-ratio: 1 / 1; border-radius: 24px; }
@media (max-width: 767px) {
.adl .adl--site .story__item--media { grid-template-columns: 1fr; }
.adl .adl--site .story__visual { width: 160px; }
}
.adl .adl--site .contact-info :is(li, .li) { display: grid; grid-template-columns: 52px minmax(0, 1fr); gap: var(--s-2); align-items: start; }
.adl .adl--site .contact-info .icon { width: 52px; height: 52px; border-radius: 16px; background: var(--c-tq-100); box-shadow: none; }
.adl .adl--site .brand--logo::before { content: none; }
.adl .adl--site .brand--logo img { display: block; width: auto; height: 36px; }
.adl .adl--site .site-footer .brand--logo img { height: 40px; }
@media (max-width: 767px) {
.adl .adl--site .brand--logo img { height: 28px; }
}
.adl .adl--site :is(h1, h2, h3, .hero__title, .page-hero__title, .concept__title, .section-title, .reason__title) { word-break: auto-phrase; text-wrap: balance; }
@media (max-width: 767px) {
.adl .adl--site .concept__title { font-size: 22px; letter-spacing: .04em; }
.adl .adl--site .concept__title br { display: none; }
}
@media (max-width: 767px) {
.adl .adl--site .reason { grid-template-columns: 1fr; }
.adl .adl--site .reason__num { font-size: 40px; }
}
@media (max-width: 599px) {
.adl .adl--site .cta-icons { flex-wrap: nowrap; gap: 12px; }
.adl .adl--site .cta-icons :is(li, .li) { flex: 1 1 0; font-size: 12px; text-align: center; }
.adl .adl--site .cta-icons .icon { width: 64px; height: 64px; border-radius: 20px; }
}
@media (max-width: 599px) {
.adl .adl--site .cta-icons :is(li, .li) span { white-space: nowrap; letter-spacing: 0; }
}
@media (min-width: 900px) {
.adl .adl--site .concept__inner { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); grid-template-areas: "title title" "visual body"; align-items: center; gap: 40px 64px; }
.adl .adl--site .concept__side, .adl .adl--site .concept__side > .wp-block-group__inner-container { display: contents; }
.adl .adl--site .concept__title { grid-area: title; }
.adl .adl--site .concept__title br { display: none; }
.adl .adl--site .concept__visual { grid-area: visual; margin-top: 0; max-width: none; }
.adl .adl--site .concept__body { grid-area: body; font-size: 18px; line-height: 2; }
.adl .adl--site .concept__body p + p { margin-top: 24px; }
}
@media (max-width: 899px) {
.adl .adl--site .hero__inner, .adl .adl--site .page-hero__inner { gap: 24px; }
.adl .adl--site .stack, .adl .adl--site .card-stack, .adl .adl--site .circle-stack, .adl .adl--site .manga-pages { order: -1; width: min(86%, 340px); margin-inline: auto; }
.adl .adl--site .hero { padding-top: 16px; }
}
@media (max-width: 899px) {
.adl .adl--site .stack { justify-self: center; }
.adl .adl--site .stack__item--manga { left: 2%; }
.adl .adl--site .stack__item--card { right: 2%; }
.adl .adl--site .stack__item--portrait { right: 10%; }
.adl .adl--site .card-stack .bc--1 { left: 2%; }
.adl .adl--site .card-stack .bc--2 { right: 2%; }
}
@media (max-width: 767px) {
.adl .adl--site .hero, .adl .adl--site .page-hero { padding-bottom: calc(var(--s-6) + var(--sheet-overlap)); }
}

/* ---------- Asuka のページ ---------- */

.adl .adl--asuka {
  
  --c-white: #FFFFFF;
  --c-main: #48D1CC;       
  --c-accent: #E1AD01;     
  
  --c-ink: #20272B;
  --c-ink-sub: #566068;
  --c-soft: #F5FAF9;
  --c-line: #DCE8E7;
  --c-main-hover: #3CC4BF;
  --c-main-shadow: rgba(72, 209, 204, .32);
  --shadow-soft: 0 10px 30px rgba(32, 39, 43, .07);

  
  --font-ja: "Zen Maru Gothic", "Hiragino Maru Gothic ProN", "Hiragino Sans", "Yu Gothic", "Meiryo", sans-serif;
  --font-en: "Outfit", var(--font-ja);

  
  --s-1: 8px;  --s-2: 16px; --s-3: 24px; --s-4: 32px;
  --s-5: 40px; --s-6: 48px; --s-8: 64px; --s-10: 80px; --s-14: 112px;
  --section-gap: var(--s-14);
  --container: 1120px;
  --gutter: var(--s-4);

  
  --ease-out: cubic-bezier(.22, 1, .36, 1);
  --ease-pop: cubic-bezier(.34, 1.56, .64, 1);
}
@media (max-width: 767px) {
.adl .adl--asuka { --section-gap: var(--s-8); --gutter: var(--s-3); }
}
.adl .adl--asuka *, .adl .adl--asuka *::before, .adl .adl--asuka *::after { box-sizing: border-box; }
.adl .adl--asuka { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
.adl .adl--asuka {
  margin: 0;
  background: var(--c-white);
  color: var(--c-ink);
  font-family: var(--font-ja);
  font-size: 17px;
  font-weight: 500;
  line-height: 1.85;
  letter-spacing: .03em;
  overflow-wrap: anywhere;
}
.adl .adl--asuka img { display: block; max-width: 100%; height: auto; }
.adl .adl--asuka [hidden] { display: none !important; }
.adl .adl--asuka a { color: inherit; }
.adl .adl--asuka h1, .adl .adl--asuka h2, .adl .adl--asuka h3, .adl .adl--asuka h4, .adl .adl--asuka p, .adl .adl--asuka ul { margin: 0; }
.adl .adl--asuka ul { padding: 0; list-style: none; }
.adl .adl--asuka :focus-visible { outline: 2px solid var(--c-ink); outline-offset: 4px; border-radius: 8px; }
.adl .adl--asuka .container {
  width: 100%;
  max-width: calc(var(--container) + var(--gutter) * 2);
  margin-inline: auto;
  padding-inline: var(--gutter);
}
.adl .adl--asuka .section { padding-block: var(--section-gap); }
.adl .adl--asuka .sr-only {
  position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0;
  overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.adl .adl--asuka .skip-link {
  position: absolute; left: var(--s-2); top: -100px; z-index: 100;
  padding: var(--s-1) var(--s-2); border-radius: 8px;
  background: var(--c-ink); color: var(--c-white);
}
.adl .adl--asuka .skip-link:focus { top: var(--s-2); }
.adl .adl--asuka .todo { display: block; font-size: 14px; font-weight: 400; color: var(--c-ink-sub); }
.adl .adl--asuka .media {
  position: relative;
  overflow: hidden;
  background: var(--c-soft);
  border: 1px solid var(--c-line);
  border-radius: 20px;
}
.adl .adl--asuka .media::before {
  content: attr(data-label);
  position: absolute; inset: 0;
  display: grid; place-items: center;
  padding: var(--s-1);
  font-size: 12px; font-weight: 400; line-height: 1.5; text-align: center;
  color: var(--c-ink-sub);
}
.adl .adl--asuka .media > img {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
}
.adl .adl--asuka .media--round { border-radius: 50%; }
.adl .adl--asuka .noimage {
  display: grid; place-items: center;
  aspect-ratio: 1 / 1;
  background: var(--c-soft);
  border: 1px solid var(--c-line);
  border-radius: 24px;
}
.adl .adl--asuka .noimage span {
  font-family: var(--font-en);
  font-size: 13px; font-weight: 300; letter-spacing: .2em;
  color: #7C878C;
}
.adl .adl--asuka .btn {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 54px;
  padding: 0 var(--s-4);
  border: 1px solid transparent;
  border-radius: 14px;
  font-size: 16px; font-weight: 700; line-height: 1.3; letter-spacing: .06em;
  text-decoration: none;
  transition: background-color .25s, box-shadow .25s, transform .25s var(--ease-out), border-color .25s;
}
.adl .adl--asuka .btn--primary {
  background: var(--c-main);
  color: var(--c-ink);
  box-shadow: 0 8px 20px var(--c-main-shadow);
}
.adl .adl--asuka .btn--primary:hover { background: var(--c-main-hover); transform: translateY(-2px); box-shadow: 0 12px 26px var(--c-main-shadow); }
.adl .adl--asuka .btn--secondary {
  background: var(--c-white);
  color: var(--c-ink);
  border-color: var(--c-ink);
}
.adl .adl--asuka .btn--secondary:hover { background: var(--c-soft); transform: translateY(-2px); }
.adl .adl--asuka .btn--small { min-height: 46px; padding: 0 var(--s-3); font-size: 15px; }
.adl .adl--asuka .site-header { position: relative; z-index: 10; background: var(--c-white); }
.adl .adl--asuka .header-inner {
  display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap;
  gap: 0 var(--s-2);
  min-height: 80px;
}
.adl .adl--asuka .brand {
  display: inline-flex; align-items: center; gap: 10px;
  min-height: 44px;
  font-size: 16px; font-weight: 700; letter-spacing: .1em;
  text-decoration: none;
}
.adl .adl--asuka .brand::before {
  content: "";
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--c-main);
}
.adl .adl--asuka .page-nav ul { display: flex; align-items: center; gap: var(--s-1); }
.adl .adl--asuka .page-nav a {
  position: relative;
  display: inline-flex; align-items: center;
  min-height: 44px; padding: 0 var(--s-2);
  font-size: 15px; font-weight: 500; letter-spacing: .06em;
  text-decoration: none;
}
.adl .adl--asuka .page-nav a:not(.page-nav__back)::after {
  content: "";
  position: absolute; left: var(--s-2); right: var(--s-2); bottom: 8px;
  height: 1px;
  background: var(--c-ink);
  transform-origin: left;
  transition: transform .3s var(--ease-out), background-color .3s;
}
.adl .adl--asuka .page-nav a:not(.page-nav__back):hover::after { background: var(--c-main); transform: scaleX(1.0); height: 2px; }
.adl .adl--asuka .page-nav .page-nav__back {
  margin-left: var(--s-1);
  border: 1px solid var(--c-ink);
  border-radius: 999px;
  padding-inline: 20px;
  transition: background-color .25s;
}
.adl .adl--asuka .page-nav .page-nav__back:hover { background: var(--c-soft); }
.adl .adl--asuka .menu-button { display: none; }
@media (max-width: 767px) {
.adl .adl--asuka .header-inner { min-height: 64px; }
.adl .adl--asuka .menu-button {
    display: inline-flex; align-items: center; gap: 10px;
    min-height: 44px; padding: 0 16px;
    border: 1px solid var(--c-ink); border-radius: 999px;
    background: var(--c-white); color: var(--c-ink);
    font: inherit; font-size: 14px; font-weight: 700;
    cursor: pointer;
  }
.adl .adl--asuka .menu-button__bars, .adl .adl--asuka .menu-button__bars::before, .adl .adl--asuka .menu-button__bars::after { display: block; width: 16px; height: 1.5px; border-radius: 2px; background: currentColor; transition: transform .25s; }
.adl .adl--asuka .menu-button__bars { position: relative; }
.adl .adl--asuka .menu-button__bars::before, .adl .adl--asuka .menu-button__bars::after { content: ""; position: absolute; left: 0; }
.adl .adl--asuka .menu-button__bars::before { top: -5px; }
.adl .adl--asuka .menu-button__bars::after { top: 5px; }
.adl .adl--asuka .menu-button[aria-expanded="true"] .menu-button__bars { background: transparent; }
.adl .adl--asuka .menu-button[aria-expanded="true"] .menu-button__bars::before { top: 0; transform: rotate(45deg); }
.adl .adl--asuka .menu-button[aria-expanded="true"] .menu-button__bars::after { top: 0; transform: rotate(-45deg); }
.adl .adl--asuka .page-nav { width: 100%; }
.adl .adl--asuka .page-nav ul { flex-direction: column; align-items: stretch; gap: 0; padding-bottom: var(--s-2); }
.adl .adl--asuka .page-nav :is(li, .li) + :is(li, .li) { border-top: 1px solid var(--c-line); }
.adl .adl--asuka .page-nav a { width: 100%; min-height: 56px; padding: 0 var(--s-1); font-size: 16px; }
.adl .adl--asuka .page-nav a:not(.page-nav__back)::after { display: none; }
.adl .adl--asuka .page-nav .page-nav__back { justify-content: center; margin: var(--s-1) 0 0; }
.adl .adl--asuka.js .page-nav { display: none; }
.adl .adl--asuka.js .page-nav.is-open { display: block; animation: menu-in .3s var(--ease-out); }
}
@keyframes menu-in-asuka { from { opacity: 0; transform: translateY(-6px); } }
.adl .adl--asuka .section-head { max-width: 38em; margin-bottom: var(--s-6); }
.adl .adl--asuka .section-title {
  font-size: clamp(24px, 2.6vw, 30px);
  font-weight: 700;
  line-height: 1.5;
  letter-spacing: .1em;
}
.adl .adl--asuka .section-head__text { margin-top: var(--s-2); color: var(--c-ink-sub); font-size: 16px; }
.adl .adl--asuka .hero { padding-top: var(--s-8); overflow: hidden; }
.adl .adl--asuka .hero__inner { display: flex; flex-direction: column; }
.adl .adl--asuka .hero__name {
  --avatar: clamp(104px, 13vw, 168px);
  --sticker: clamp(84px, 11vw, 148px);
  position: relative;
  display: flex; align-items: center; gap: clamp(16px, 2.4vw, 32px);
  padding-block: calc(var(--sticker) * .55) calc(var(--sticker) * .35);
}
.adl .adl--asuka .hero__avatar {
  flex: none;
  width: var(--avatar);
  aspect-ratio: 1 / 1;
  background: var(--c-soft);
  border: 0;
  box-shadow: 0 0 0 6px var(--c-white), 0 0 0 7px var(--c-line);
}
.adl .adl--asuka .hero__avatar::before { padding: var(--s-2); }
.adl .adl--asuka .hero__title {
  font-family: var(--font-en);
  font-size: clamp(104px, 19vw, 248px);
  font-weight: 200;
  line-height: .9;
  letter-spacing: .01em;
  white-space: nowrap;
}
.adl .adl--asuka .char { display: inline-block; }
.adl .adl--asuka .sticker {
  position: absolute;
  z-index: 1;
  width: var(--sticker);
  aspect-ratio: 1 / 1;
  border: 0;
  border-radius: 24px;
  background: var(--c-soft);
  box-shadow: 0 0 0 6px var(--c-white), 0 0 0 7px var(--c-line), var(--shadow-soft);
  rotate: var(--tilt);
}
.adl .adl--asuka .sticker::before { font-size: 11px; }
.adl .adl--asuka .sticker > img { object-fit: contain; padding: 6%; background: var(--c-white); }
.adl .adl--asuka .sticker--1 { --tilt: 7deg;  left: calc(var(--avatar) + 50%); top: 0; }
.adl .adl--asuka .sticker--2 { --tilt: -5deg; left: calc(var(--avatar) + 22%); bottom: calc(var(--sticker) * -.42); }
.adl .adl--asuka .sticker--3 { --tilt: 4deg;  right: 0; top: 38%; }
.adl .adl--asuka .deco { position: absolute; pointer-events: none; }
.adl .adl--asuka .deco--ring {
  width: calc(var(--avatar) * 1.9);
  aspect-ratio: 1 / 1;
  left: calc(var(--avatar) * -.45);
  top: 50%;
  translate: 0 -50%;
  border: 1px solid var(--c-main);
  border-radius: 50%;
  opacity: .55;
}
.adl .adl--asuka .deco--spark { width: 18px; height: 18px; }
.adl .adl--asuka .deco--spark-1 { fill: var(--c-accent); left: calc(var(--avatar) + 8px); top: 14%; }
.adl .adl--asuka .deco--spark-2 { fill: var(--c-main); width: 12px; height: 12px; right: 18%; bottom: 4%; }
.adl .adl--asuka .hero__body {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: end;
  gap: var(--s-2) var(--s-8);
  margin-top: var(--s-6);
}
.adl .adl--asuka .hero__role {
  grid-column: 1 / -1;
  display: flex; align-items: center; gap: 12px;
  font-size: clamp(18px, 1.7vw, 21px);
  font-weight: 700;
  letter-spacing: .16em;
}
.adl .adl--asuka .hero__role::before {
  content: "";
  width: 28px; height: 1px;
  background: var(--c-ink);
}
.adl .adl--asuka .hero__lead { color: var(--c-ink-sub); font-size: 17px; }
.adl .adl--asuka .hero__actions { display: flex; flex-wrap: wrap; gap: var(--s-2); justify-content: flex-end; }
@media (max-width: 899px) {
.adl .adl--asuka .hero__body { grid-template-columns: 1fr; }
.adl .adl--asuka .hero__actions { justify-content: flex-start; }
}
@media (max-width: 767px) {
.adl .adl--asuka .hero { padding-top: var(--s-3); padding-bottom: calc(var(--s-8) + var(--sheet-overlap)); }
.adl .adl--asuka .hero__name {
    --avatar: 96px;
    --sticker: 78px;
    flex-direction: column; align-items: flex-start; gap: var(--s-3);
    padding-block: 0 var(--s-2);
  }
.adl .adl--asuka .hero__title { font-size: clamp(96px, 30vw, 140px); }
.adl .adl--asuka .deco--ring { width: 170px; left: -50px; top: 48px; translate: 0 -50%; }
.adl .adl--asuka .deco--spark-1 { left: 112px; top: 6px; }
.adl .adl--asuka .sticker--1 { left: auto; right: 6%; top: 4px; }
.adl .adl--asuka .sticker--2 { left: auto; right: 34%; top: 24px; bottom: auto; }
.adl .adl--asuka .sticker--3 { right: 2px; top: auto; bottom: -34px; --sticker: 70px; }
.adl .adl--asuka .hero__body { margin-top: var(--s-4); }
.adl .adl--asuka .hero__actions { flex-direction: column; }
.adl .adl--asuka .hero__actions .btn { width: 100%; }
}
.adl .adl--asuka .about__inner {
  display: grid;
  grid-template-columns: 220px minmax(0, 1fr);
  align-items: baseline;
  gap: var(--s-2) var(--s-6);
  padding-block: var(--s-6);
  border-top: 1px solid var(--c-line);
  border-bottom: 1px solid var(--c-line);
}
.adl .adl--asuka .about__title { font-size: 15px; font-weight: 700; color: var(--c-ink-sub); letter-spacing: .14em; }
.adl .adl--asuka .about__text { max-width: 30em; font-size: clamp(18px, 1.9vw, 21px); font-weight: 500; line-height: 2; }
@media (max-width: 767px) {
.adl .adl--asuka .about__inner { grid-template-columns: 1fr; padding-block: var(--s-4); }
}
.adl .adl--asuka .work-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: var(--s-6) var(--s-4);
}
@media (max-width: 899px) {
.adl .adl--asuka .work-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--s-5) var(--s-3); }
}
@media (max-width: 767px) {
.adl .adl--asuka .work-list { gap: var(--s-4) var(--s-2); }
}
@media (max-width: 359px) {
.adl .adl--asuka .work-list { grid-template-columns: 1fr; }
}
.adl .adl--asuka .work-list > :is(li, .li) { display: flex; }
.adl .adl--asuka .work {
  display: flex; flex-direction: column;
  width: 100%;
  border-radius: 24px;
  text-decoration: none;
}
.adl .adl--asuka .work__image { transition: transform .4s var(--ease-out), box-shadow .4s var(--ease-out), border-color .4s; }
.adl .adl--asuka .work__title { margin-top: var(--s-2); font-size: 17px; font-weight: 700; line-height: 1.6; }
.adl .adl--asuka .work__desc {
  margin-top: 4px;
  font-size: 15px; line-height: 1.75;
  color: var(--c-ink-sub);
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.adl .adl--asuka .work__link {
  align-self: flex-start;
  margin-top: auto; padding-top: 12px;
  font-size: 14px; font-weight: 700; letter-spacing: .06em;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 6px;
}
.adl .adl--asuka .work:hover .work__link { text-decoration-color: var(--c-main); text-decoration-thickness: 2px; }
@media (max-width: 767px) {
.adl .adl--asuka .work__title { font-size: 15px; margin-top: 12px; }
.adl .adl--asuka .work__desc { font-size: 14px; }
.adl .adl--asuka .work__link { font-size: 13px; }
}
.adl .adl--asuka .free-tool {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
  align-items: center;
  gap: var(--s-6);
  padding: var(--s-5);
  border-radius: 32px;
  background: var(--c-soft);
}
.adl .adl--asuka .free-tool__image { aspect-ratio: 3 / 2; border-radius: 20px; background: var(--c-white); }
.adl .adl--asuka .badge {
  display: inline-flex; align-items: center; gap: 6px;
  font-size: 14px; font-weight: 700; letter-spacing: .1em;
}
.adl .adl--asuka .badge::before {
  content: "";
  width: 8px; height: 8px;
  border-radius: 50%;
  background: var(--c-accent);
}
.adl .adl--asuka .free-tool__title { margin-top: var(--s-1); font-size: clamp(22px, 2.4vw, 27px); font-weight: 700; line-height: 1.5; letter-spacing: .06em; }
.adl .adl--asuka .free-tool__desc { margin-top: var(--s-2); }
.adl .adl--asuka .free-tool .btn { margin-top: var(--s-4); }
.adl .adl--asuka .free-tool__note { margin-top: 12px; font-size: 13px; font-weight: 400; color: var(--c-ink-sub); }
.adl .adl--asuka .paid { margin-top: var(--s-10); }
.adl .adl--asuka .paid__title {
  display: flex; align-items: center; flex-wrap: wrap; gap: 12px;
  font-size: 18px; font-weight: 700; letter-spacing: .08em;
  margin-bottom: var(--s-2);
}
.adl .adl--asuka .paid__tag {
  font-size: 12px; font-weight: 500;
  padding: 2px 12px;
  border: 1px solid var(--c-line);
  border-radius: 999px;
  color: var(--c-ink-sub);
}
.adl .adl--asuka .paid__list { border-top: 1px solid var(--c-line); }
.adl .adl--asuka .paid-item {
  display: grid;
  grid-template-columns: 64px minmax(0, 1fr) auto;
  align-items: center;
  gap: var(--s-3);
  padding-block: var(--s-3);
  border-bottom: 1px solid var(--c-line);
}
.adl .adl--asuka .paid-item__icon { width: 64px; height: 64px; border-radius: 18px; }
.adl .adl--asuka .paid-item__icon::before { font-size: 9px; padding: 4px; }
.adl .adl--asuka .paid-item__name { font-size: 17px; font-weight: 700; line-height: 1.6; }
.adl .adl--asuka .paid-item__desc { font-size: 15px; color: var(--c-ink-sub); }
@media (max-width: 899px) {
.adl .adl--asuka .free-tool { grid-template-columns: 1fr; padding: var(--s-4); gap: var(--s-4); }
}
@media (max-width: 767px) {
.adl .adl--asuka .free-tool { padding: var(--s-3); border-radius: 24px; }
.adl .adl--asuka .free-tool .btn { width: 100%; }
.adl .adl--asuka .paid { margin-top: var(--s-8); }
.adl .adl--asuka .paid-item { grid-template-columns: 56px minmax(0, 1fr); gap: var(--s-2); }
.adl .adl--asuka .paid-item__icon { width: 56px; height: 56px; }
.adl .adl--asuka .paid-item .btn { grid-column: 1 / -1; width: 100%; }
}
.adl .adl--asuka .site-footer { background: var(--c-soft); }
.adl .adl--asuka .footer-inner {
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
  gap: var(--s-1) var(--s-4);
  padding-block: var(--s-6);
}
.adl .adl--asuka .footer-back {
  display: inline-flex; align-items: center;
  min-height: 44px;
  font-size: 15px; font-weight: 500;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 6px;
}
.adl .adl--asuka .footer-back:hover { text-decoration-color: var(--c-main); text-decoration-thickness: 2px; }
.adl .adl--asuka .copyright { width: 100%; font-size: 13px; font-weight: 400; color: var(--c-ink-sub); }
@media (max-width: 767px) {
.adl .adl--asuka .footer-inner { flex-direction: column; align-items: flex-start; }
}
.adl .adl--asuka {
  --lift-1: 0 1px 2px rgba(32, 39, 43, .06), 0 8px 20px rgba(32, 39, 43, .06);
  --lift-2: 0 2px 4px rgba(32, 39, 43, .06), 0 18px 36px rgba(32, 39, 43, .09), 0 40px 70px -24px rgba(72, 209, 204, .35);
  --lift-3: 0 3px 6px rgba(32, 39, 43, .07), 0 28px 50px rgba(32, 39, 43, .12), 0 60px 90px -30px rgba(72, 209, 204, .45);
  --sheet-r: 56px;
  --sheet-overlap: 56px;
}
@media (max-width: 767px) {
.adl .adl--asuka { --sheet-r: 32px; --sheet-overlap: 32px; }
}
.adl .adl--asuka .has-depth {
  transform: translate3d(calc(var(--px, 0) * var(--depth, 0) * 1px), calc(var(--py, 0) * var(--depth, 0) * 1px), 0);
  transition: transform .9s var(--ease-out);
}
.adl .adl--asuka .hero { position: relative; isolation: isolate; padding-bottom: calc(var(--s-14) + var(--sheet-overlap)); }
.adl .adl--asuka .hero__backdrop { position: absolute; inset: 0; z-index: -1; overflow: hidden; pointer-events: none; }
.adl .adl--asuka .backdrop__grid {
  position: absolute; inset: 0;
  background-image: radial-gradient(circle, #C9DEDC 1px, transparent 1.4px);
  background-size: 22px 22px;
  -webkit-mask-image: radial-gradient(ellipse 60% 65% at 38% 42%, #000 20%, transparent 75%);
          mask-image: radial-gradient(ellipse 60% 65% at 38% 42%, #000 20%, transparent 75%);
  opacity: .9;
}
.adl .adl--asuka .backdrop__blob { position: absolute; display: block; }
.adl .adl--asuka .backdrop__blob--1 {
  width: min(52vw, 680px); aspect-ratio: 1 / 1;
  left: -10vw; top: -4%;
  background: radial-gradient(circle at 60% 40%, #E3F7F6, #EEF9F8 60%, transparent 72%);
  border-radius: 58% 42% 55% 45% / 48% 56% 44% 52%;
}
.adl .adl--asuka .backdrop__blob--2 {
  width: min(30vw, 380px); aspect-ratio: 1 / 1;
  right: -4vw; top: 18%;
  background: radial-gradient(circle, #EEF9F8, transparent 70%);
  border-radius: 45% 55% 40% 60% / 55% 45% 55% 45%;
}
.adl .adl--asuka .sticker { box-shadow: 0 0 0 6px var(--c-white), 0 0 0 7px var(--c-line), var(--lift-2); background: var(--c-white); }
.adl .adl--asuka .sticker--2 { box-shadow: 0 0 0 6px var(--c-white), 0 0 0 7px var(--c-line), var(--lift-3); }
.adl .adl--asuka .sticker::after {
  content: "";
  position: absolute; right: 0; bottom: 0;
  width: 24%; height: 24%;
  background: linear-gradient(315deg, var(--c-white) 0 49%, #D6E3E2 50%, #F3F8F8 100%);
  border-top-left-radius: 12px;
  box-shadow: -3px -3px 8px rgba(32, 39, 43, .08);
}
.adl .adl--asuka .hero__avatar { box-shadow: 0 0 0 6px var(--c-white), 0 0 0 7px var(--c-line), var(--lift-1); }
.adl .adl--asuka .hero__title { position: relative; z-index: 0; }
.adl .adl--asuka .sheet {
  position: relative;
  border-radius: var(--sheet-r) var(--sheet-r) 0 0;
  background: var(--c-white);
  box-shadow: 0 -1px 0 var(--c-line), 0 -30px 60px -40px rgba(32, 39, 43, .18);
}
.adl .adl--asuka .sheet--soft { background: var(--c-soft); }
.adl .adl--asuka .gallery { padding-bottom: calc(var(--section-gap) + var(--sheet-overlap)); }
.adl .adl--asuka .tools {
  margin-top: calc(var(--sheet-overlap) * -1);
  padding-top: var(--section-gap);
  padding-bottom: calc(var(--section-gap) + var(--sheet-overlap));
}
.adl .adl--asuka .site-footer { margin-top: calc(var(--sheet-overlap) * -1); }
.adl .adl--asuka .about { position: relative; margin-top: calc(var(--sheet-overlap) * -1); padding-bottom: var(--s-10); }
.adl .adl--asuka .work__frame { position: relative; isolation: isolate; }
.adl .adl--asuka .work__frame::before {
  content: "";
  position: absolute; inset: 0; z-index: -1;
  border-radius: 24px;
  background: #E3F4F3;
  rotate: -3deg;
  translate: 6px 8px;
  transition: rotate .5s var(--ease-out), translate .5s var(--ease-out);
}
.adl .adl--asuka .work__image {
  background: var(--c-white);
  box-shadow: var(--lift-1);
}
.adl .adl--asuka .work:hover .work__image { transform: translateY(-8px) rotate(1.5deg); box-shadow: var(--lift-2); }
.adl .adl--asuka .work:hover .work__frame::before { rotate: -6deg; translate: 2px 12px; }
.adl .adl--asuka .free-tool { background: var(--c-soft); box-shadow: inset 0 0 0 1px var(--c-line); }
.adl .adl--asuka .free-tool__visual { position: relative; isolation: isolate; }
.adl .adl--asuka .free-tool__visual::before {
  content: "";
  position: absolute; inset: 0; z-index: -1;
  border-radius: 20px;
  background: #D9F3F1;
  rotate: -2.5deg;
  translate: -10px 12px;
}
.adl .adl--asuka .free-tool__image { box-shadow: var(--lift-2); border: 0; }
.adl .adl--asuka .paid-item__icon { background: var(--c-white); box-shadow: var(--lift-1); border: 0; }
@media (max-width: 767px) {
.adl .adl--asuka .backdrop__blob--1 { width: 120vw; left: -40vw; top: -10%; }
.adl .adl--asuka .backdrop__blob--2 { display: none; }
.adl .adl--asuka .backdrop__grid { -webkit-mask-image: radial-gradient(ellipse 90% 50% at 40% 30%, #000 20%, transparent 75%); mask-image: radial-gradient(ellipse 90% 50% at 40% 30%, #000 20%, transparent 75%); }
}
@media (prefers-reduced-motion: no-preference) {
.adl .adl--asuka .deco--ring { animation: ring-in 1.2s var(--ease-out) both; }
.adl .adl--asuka .hero__avatar { animation: avatar-in .8s var(--ease-pop) .1s both; }
.adl .adl--asuka .char { animation: char-in .9s var(--ease-out) both; animation-delay: calc(.25s + var(--i) * .07s); }
.adl .adl--asuka .sticker { animation: stick .6s var(--ease-pop) both; }
.adl .adl--asuka .sticker--1 { animation-delay: .9s; }
.adl .adl--asuka .sticker--2 { animation-delay: 1.1s; }
.adl .adl--asuka .sticker--3 { animation-delay: 1.3s; }
.adl .adl--asuka .deco--spark { animation: twinkle .8s var(--ease-pop) 1.5s both; }
.adl .adl--asuka .deco--spark-2 { animation-delay: 1.7s; }
.adl .adl--asuka .hero__body { animation: fade-up .9s var(--ease-out) .6s both; }
.adl .adl--asuka.js-reveal .reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity .8s var(--ease-out), transform .8s var(--ease-out);
    transition-delay: calc(var(--d, 0) * .12s);
  }
.adl .adl--asuka.js-reveal .reveal.is-visible { opacity: 1; transform: none; }
}
@keyframes ring-in-asuka { from { opacity: 0; scale: .7; } }
@keyframes avatar-in-asuka { from { opacity: 0; scale: .6; } }
@keyframes char-in-asuka { from { opacity: 0; transform: translateY(.35em); filter: blur(6px); } }
@keyframes stick-asuka {
  0%   { opacity: 0; scale: 1.5; rotate: calc(var(--tilt) + 14deg); }
  70%  { opacity: 1; }
  100% { opacity: 1; scale: 1; rotate: var(--tilt); }
}
@keyframes twinkle-asuka { from { opacity: 0; scale: 0; rotate: -90deg; } }
@keyframes fade-up-asuka { from { opacity: 0; transform: translateY(20px); } }
@media (prefers-reduced-motion: reduce) {
.adl .adl--asuka { scroll-behavior: auto; }
.adl .adl--asuka .btn, .adl .adl--asuka .work__image { transition: none; }
}
.adl .adl--asuka .sheet { overflow: hidden; isolation: isolate; }
.adl .adl--asuka .sheet > .container { position: relative; z-index: 1; }
.adl .adl--asuka .sheet__backdrop { position: absolute; inset: 0; z-index: 0; pointer-events: none; }
.adl .adl--asuka .bd { position: absolute; display: block; }
.adl .adl--asuka .bd--dots {
  width: 360px; height: 280px;
  background-image: radial-gradient(circle, #C9DEDC 1.2px, transparent 1.6px);
  background-size: 20px 20px;
  -webkit-mask-image: radial-gradient(closest-side, #000 40%, transparent);
          mask-image: radial-gradient(closest-side, #000 40%, transparent);
}
.adl .adl--asuka .bd--ring { width: 420px; aspect-ratio: 1 / 1; border: 1px solid var(--c-main); border-radius: 50%; opacity: .35; }
.adl .adl--asuka .bd--blob {
  width: 520px; aspect-ratio: 1 / 1;
  background: radial-gradient(circle, rgba(72, 209, 204, .12), transparent 68%);
  border-radius: 50%;
}
.adl .adl--asuka .bd--spark {
  width: 16px; height: 16px;
  background: var(--c-accent);
  clip-path: path("M8 0C8.4 4.1 11.9 7.6 16 8 11.9 8.4 8.4 11.9 8 16 7.6 11.9 4.1 8.4 0 8 4.1 7.6 7.6 4.1 8 0Z");
}
.adl .adl--asuka .about .bd--dots { right: 4%; top: 10%; width: 240px; height: 180px; }
.adl .adl--asuka .about .bd--ring { display: none; }
.adl .adl--asuka .about .bd--blob { left: -180px; bottom: -260px; }
.adl .adl--asuka .about .bd--spark { right: 22%; bottom: 26%; }
.adl .adl--asuka .gallery .bd--dots { right: -40px; top: 48px; }
.adl .adl--asuka .gallery .bd--ring { left: -220px; top: 34%; width: 520px; }
.adl .adl--asuka .gallery .bd--blob { right: -160px; bottom: 6%; }
.adl .adl--asuka .gallery .bd--spark { left: 46%; top: 86px; background: var(--c-main); width: 12px; height: 12px; clip-path: path("M6 0C6.3 3.1 8.9 5.7 12 6 8.9 6.3 6.3 8.9 6 12 5.7 8.9 3.1 6.3 0 6 3.1 5.7 5.7 3.1 6 0Z"); }
.adl .adl--asuka .tools .bd--dots { left: -60px; bottom: 20%; }
.adl .adl--asuka .tools .bd--ring { right: -160px; top: 60px; width: 360px; }
.adl .adl--asuka .tools .bd--blob { left: 30%; top: 22%; width: 640px; }
.adl .adl--asuka .tools .bd--spark { right: 12%; top: 132px; }
@media (max-width: 767px) {
.adl .adl--asuka .bd--dots { width: 220px; height: 180px; }
.adl .adl--asuka .bd--ring { width: 280px !important; }
.adl .adl--asuka .bd--blob { width: 360px !important; }
}
.adl .adl--asuka .mask { display: inline-block; overflow: hidden; vertical-align: bottom; padding-bottom: .08em; }
.adl .adl--asuka .mask__inner { display: inline-block; }
@media (prefers-reduced-motion: no-preference) {
.adl .adl--asuka.js-reveal .section-head .mask__inner { transform: translateY(110%); transition: transform 1s var(--ease-out); }
.adl .adl--asuka.js-reveal .section-head.is-visible .mask__inner { transform: none; }
.adl .adl--asuka.js-reveal .section-head.reveal { transform: none; }
.adl .adl--asuka.js-reveal .section-head .section-head__text { opacity: 0; transform: translateY(16px); transition: opacity .9s var(--ease-out) .25s, transform .9s var(--ease-out) .25s; }
.adl .adl--asuka.js-reveal .section-head.is-visible .section-head__text { opacity: 1; transform: none; }
.adl .adl--asuka.js-reveal .work-list .reveal {
    transform: translateY(56px) rotate(-5deg) scale(.92);
    transition: opacity .7s var(--ease-out), transform .9s var(--ease-pop);
    transition-delay: calc(var(--d, 0) * .14s);
  }
.adl .adl--asuka.js-reveal .work-list .reveal.is-visible { transform: none; }
.adl .adl--asuka.js-reveal .paid-item.reveal { transform: translateX(-32px); }
.adl .adl--asuka.js-reveal .paid-item.reveal.is-visible { transform: none; }
.adl .adl--asuka.js-reveal .paid-item .paid-item__icon { scale: .6; transition: scale .7s var(--ease-pop) .2s; }
.adl .adl--asuka.js-reveal .paid-item.is-visible .paid-item__icon { scale: 1; }
.adl .adl--asuka.js-reveal .free-tool.reveal { transform: translateY(40px) scale(.97); }
.adl .adl--asuka.js-reveal .free-tool.reveal.is-visible { transform: none; }
.adl .adl--asuka.js-reveal .free-tool__image { transform: translate(-24px, 24px) rotate(-2deg); transition: transform 1.1s var(--ease-out) .2s; }
.adl .adl--asuka.js-reveal .free-tool.is-visible .free-tool__image { transform: none; }
@supports (animation-timeline: view()) {
.adl .adl--asuka .sheet:not(.site-footer) {
      animation: sheet-rise linear both;
      animation-timeline: view();
      animation-range: entry 0% entry 60%;
    }
.adl .adl--asuka .bd { animation: drift linear both; animation-timeline: view(); animation-range: cover; }
.adl .adl--asuka .bd--dots { --from: 80px;  --to: -80px; }
.adl .adl--asuka .bd--ring { --from: 160px; --to: -160px; }
.adl .adl--asuka .bd--blob { --from: -120px; --to: 120px; }
.adl .adl--asuka .bd--spark { --from: 220px; --to: -220px; animation-name: drift-spin; }
.adl .adl--asuka .work-list > :is(li, .li):nth-child(3n+2) .work { animation: col-lag linear both; animation-timeline: view(); animation-range: cover; }
.adl .adl--asuka .free-tool__visual { view-timeline-name: --ft; }
.adl .adl--asuka .free-tool__visual::before { animation: back-slide linear both; animation-timeline: --ft; animation-range: cover; }
}
}
@keyframes sheet-rise-asuka {
  from { translate: 0 120px; scale: .97; border-radius: calc(var(--sheet-r) * 1.8) calc(var(--sheet-r) * 1.8) 0 0; }
  to   { translate: 0 0; scale: 1; }
}
@keyframes drift-asuka { from { translate: 0 var(--from); } to { translate: 0 var(--to); } }
@keyframes drift-spin-asuka { from { translate: 0 var(--from); rotate: -60deg; } to { translate: 0 var(--to); rotate: 120deg; } }
@keyframes col-lag-asuka { from { translate: 0 -36px; } to { translate: 0 36px; } }
@keyframes back-slide-asuka { from { translate: -40px 56px; rotate: -6deg; } to { translate: 8px -16px; rotate: 1deg; } }
@media (max-width: 899px) {
.adl .adl--asuka .work-list > :is(li, .li):nth-child(3n+2) .work { animation: none; }
@supports (animation-timeline: view()) {
@media (prefers-reduced-motion: no-preference) {
.adl .adl--asuka .work-list > :is(li, .li):nth-child(2n) .work { animation: col-lag linear both; animation-timeline: view(); animation-range: cover; }
}
}
}
.adl .adl--asuka {
  --c-tq-100: #DDF5F3;   
  --c-tq-300: #9FE3DF;   
  --c-gold-50: #FFF7E1;  
  --c-gold-200: #F3DE9C; 
  --c-on-dark: #FFFFFF;
  --c-on-dark-sub: #AEBBC0; 
}
.adl .adl--asuka .backdrop__blob--1 { background: radial-gradient(circle at 60% 40%, rgba(72, 209, 204, .34), rgba(72, 209, 204, .16) 55%, transparent 72%); }
.adl .adl--asuka .backdrop__blob--2 { background: radial-gradient(circle, rgba(225, 173, 1, .16), transparent 70%); }
.adl .adl--asuka .backdrop__grid { background-image: radial-gradient(circle, #A6CFCB 1.1px, transparent 1.5px); }
.adl .adl--asuka .deco--ring { opacity: .9; }
.adl .adl--asuka .hero__avatar, .adl .adl--asuka .sticker { background: var(--c-white); }
.adl .adl--asuka .about.sheet { background: var(--c-ink); color: var(--c-on-dark); box-shadow: 0 -30px 60px -30px rgba(32, 39, 43, .35); }
.adl .adl--asuka .about__inner { border-color: rgba(255, 255, 255, .14); }
.adl .adl--asuka .about__title { color: var(--c-on-dark-sub); }
.adl .adl--asuka .about .bd--dots { background-image: radial-gradient(circle, rgba(255, 255, 255, .22) 1.2px, transparent 1.6px); }
.adl .adl--asuka .about .bd--blob { background: radial-gradient(circle, rgba(72, 209, 204, .28), transparent 68%); }
.adl .adl--asuka .about :focus-visible { outline-color: var(--c-white); }
.adl .adl--asuka .gallery.sheet { background: var(--c-tq-100); }
.adl .adl--asuka .gallery .section-head__text, .adl .adl--asuka .gallery .work__desc { color: #46525A; }
.adl .adl--asuka .gallery .bd--dots { background-image: radial-gradient(circle, rgba(32, 39, 43, .16) 1.2px, transparent 1.6px); }
.adl .adl--asuka .gallery .bd--ring { opacity: .7; border-color: #2FB8B2; }
.adl .adl--asuka .gallery .bd--blob { background: radial-gradient(circle, rgba(255, 255, 255, .7), transparent 68%); }
.adl .adl--asuka .noimage { background: var(--c-white); border-color: transparent; }
.adl .adl--asuka .work__frame::before { background: var(--c-tq-300); }
.adl .adl--asuka .tools.sheet { background: var(--c-gold-50); }
.adl .adl--asuka .tools .section-head__text, .adl .adl--asuka .tools .paid-item__desc, .adl .adl--asuka .tools .free-tool__note, .adl .adl--asuka .tools .todo { color: #4F5961; }
.adl .adl--asuka .tools .bd--dots { background-image: radial-gradient(circle, rgba(225, 173, 1, .45) 1.2px, transparent 1.6px); }
.adl .adl--asuka .tools .bd--ring { border-color: var(--c-accent); opacity: .5; }
.adl .adl--asuka .tools .bd--blob { background: radial-gradient(circle, rgba(72, 209, 204, .16), transparent 68%); }
.adl .adl--asuka .free-tool { background: var(--c-white); box-shadow: var(--lift-2); }
.adl .adl--asuka .free-tool__visual::before { background: var(--c-tq-300); }
.adl .adl--asuka .free-tool__image { background: var(--c-tq-100); }
.adl .adl--asuka .paid__list, .adl .adl--asuka .paid-item { border-color: var(--c-gold-200); }
.adl .adl--asuka .paid__tag { border-color: var(--c-gold-200); background: var(--c-white); }
.adl .adl--asuka .paid-item__icon { background: var(--c-white); }
.adl .adl--asuka .site-footer.sheet { background: var(--c-ink); color: var(--c-on-dark); box-shadow: 0 -30px 60px -30px rgba(32, 39, 43, .4); }
.adl .adl--asuka .site-footer .footer-back { text-decoration-color: var(--c-main); }
.adl .adl--asuka .site-footer .copyright { color: var(--c-on-dark-sub); }
.adl .adl--asuka .site-footer :focus-visible { outline-color: var(--c-white); }
.adl .adl--asuka .tools .btn--secondary { border-color: var(--c-ink); }
.adl .adl--asuka { --c-tq-200: #B4EAE6; }
.adl .adl--asuka .about.sheet { background: var(--c-tq-200); color: var(--c-ink); box-shadow: 0 -30px 60px -36px rgba(32, 39, 43, .2); }
.adl .adl--asuka .about__inner { border-color: rgba(32, 39, 43, .12); }
.adl .adl--asuka .about__title { color: #3E4A50; }
.adl .adl--asuka .about .bd--dots { background-image: radial-gradient(circle, rgba(255, 255, 255, .8) 1.3px, transparent 1.7px); }
.adl .adl--asuka .about .bd--blob { background: radial-gradient(circle, rgba(255, 255, 255, .55), transparent 68%); }
.adl .adl--asuka .about :focus-visible { outline-color: var(--c-ink); }
.adl .adl--asuka .gallery.sheet { background: var(--c-white); }
.adl .adl--asuka .noimage { background: var(--c-soft); border-color: var(--c-line); }
.adl .adl--asuka .gallery .bd--blob { background: radial-gradient(circle, rgba(72, 209, 204, .14), transparent 68%); }
.adl .adl--asuka .site-footer.sheet { background: var(--c-tq-200); color: var(--c-ink); box-shadow: 0 -30px 60px -36px rgba(32, 39, 43, .2); }
.adl .adl--asuka .site-footer .footer-back { text-decoration-color: var(--c-ink); }
.adl .adl--asuka .site-footer .copyright { color: #3E4A50; }
.adl .adl--asuka .site-footer :focus-visible { outline-color: var(--c-ink); }
.adl .adl--asuka .tools.sheet { background: #E8F7F5; }
.adl .adl--asuka .tools .bd--dots { background-image: radial-gradient(circle, rgba(31, 143, 138, .28) 1.2px, transparent 1.6px); }
.adl .adl--asuka .tools .bd--ring { border-color: var(--c-main); opacity: .6; }
.adl .adl--asuka .tools .bd--blob { background: radial-gradient(circle, rgba(255, 255, 255, .75), transparent 68%); }
.adl .adl--asuka .paid__list, .adl .adl--asuka .paid-item { border-color: #C9E7E4; }
.adl .adl--asuka .paid__tag { border-color: #C9E7E4; }
.adl .adl--asuka .sheet { box-shadow: 0 -1px 0 rgba(31, 143, 138, .10), 0 -24px 48px -32px rgba(31, 143, 138, .28); }
.adl .adl--asuka .about.sheet, .adl .adl--asuka .site-footer.sheet { box-shadow: 0 -1px 0 rgba(31, 143, 138, .12), 0 -24px 48px -32px rgba(31, 143, 138, .32); }
.adl .adl--asuka .backdrop__blob--2 { background: radial-gradient(circle, rgba(72, 209, 204, .14), transparent 70%); }
.adl .adl--asuka .hero__role::before { height: 2px; background: var(--c-accent); }
.adl .adl--asuka .deco--spark-1 { width: 26px; height: 26px; }
.adl .adl--asuka .deco--spark-2 { fill: var(--c-accent); }
.adl .adl--asuka .section-title::after, .adl .adl--asuka .about__title::after {
  content: "";
  display: block;
  width: 32px; height: 3px;
  margin-top: 12px;
  border-radius: 2px;
  background: var(--c-accent);
}
.adl .adl--asuka .work__link { text-decoration-color: var(--c-accent); text-decoration-thickness: 2px; }
.adl .adl--asuka .work:hover .work__link { text-decoration-color: var(--c-ink); }
.adl .adl--asuka .work-list > :is(li, .li):nth-child(3n+2) .work__frame::before { background: #F2D777; }
.adl .adl--asuka .badge { padding: 3px 14px; border-radius: 999px; background: var(--c-accent); color: var(--c-ink); }
.adl .adl--asuka .badge::before { display: none; }
.adl .adl--asuka .paid__tag { border-color: var(--c-accent); }
.adl .adl--asuka .paid-item__icon { overflow: visible; }
.adl .adl--asuka .paid-item__icon::after {
  content: "";
  position: absolute; right: -3px; top: -3px;
  width: 10px; height: 10px;
  border-radius: 50%;
  background: var(--c-accent);
  box-shadow: 0 0 0 3px var(--c-white);
}
.adl .adl--asuka .brand::before { background: var(--c-accent); }
.adl .adl--asuka .site-footer .footer-back { text-decoration-color: var(--c-accent); text-decoration-thickness: 2px; }
.adl .adl--asuka {
  --lift-1: 0 1px 2px rgba(32, 39, 43, .05), 0 8px 18px rgba(32, 39, 43, .06);
  --lift-2: 0 2px 4px rgba(32, 39, 43, .05), 0 16px 32px rgba(32, 39, 43, .08);
  --lift-3: 0 3px 6px rgba(32, 39, 43, .06), 0 24px 44px rgba(32, 39, 43, .11);
  --c-main-shadow: rgba(32, 39, 43, .12);
}
.adl .adl--asuka .sheet, .adl .adl--asuka .about.sheet, .adl .adl--asuka .site-footer.sheet { box-shadow: 0 -1px 0 rgba(32, 39, 43, .05), 0 -20px 40px -30px rgba(32, 39, 43, .14); }
.adl .adl--asuka .gallery .bd--blob { display: none; }
@media (prefers-reduced-motion: no-preference) {
.adl .adl--asuka .hero .backdrop__blob--1 { animation: float-a 26s ease-in-out infinite alternate; }
.adl .adl--asuka .hero .backdrop__blob--2 { animation: float-b 22s ease-in-out infinite alternate; }
.adl .adl--asuka .hero .backdrop__grid { animation: float-grid 30s ease-in-out infinite alternate; }
.adl .adl--asuka .tools .bd--blob { animation: float-b 24s ease-in-out infinite alternate; }
.adl .adl--asuka .tools .bd--ring { animation: float-ring 28s ease-in-out infinite alternate; }
@supports (animation-timeline: view()) {
.adl .adl--asuka .tools .bd--blob { animation: drift linear both, float-b 24s ease-in-out infinite alternate; animation-timeline: view(), auto; animation-range: cover, normal; }
.adl .adl--asuka .tools .bd--ring { animation: drift linear both, float-ring 28s ease-in-out infinite alternate; animation-timeline: view(), auto; animation-range: cover, normal; }
}
.adl .adl--asuka .is-ambient.is-paused .backdrop__blob, .adl .adl--asuka .is-ambient.is-paused .backdrop__grid, .adl .adl--asuka .is-ambient.is-paused .bd { animation-play-state: paused; }
}
@keyframes float-a-asuka { from { rotate: 0deg; scale: 1; translate: 0 0; } to { rotate: 14deg; scale: 1.08; translate: 3vw 2vw; } }
@keyframes float-b-asuka { from { rotate: 0deg; scale: 1; } to { rotate: -18deg; scale: 1.12; } }
@keyframes float-grid-asuka { from { scale: 1; } to { scale: 1.04; } }
@keyframes float-ring-asuka { from { rotate: 0deg; scale: 1; } to { rotate: 10deg; scale: 1.06; } }
.adl .adl--asuka .backdrop__blob--1, .adl .adl--asuka .backdrop__blob--2 { border-radius: 0; }
.adl .adl--asuka .backdrop__blob--1 { background: radial-gradient(closest-side, rgba(72, 209, 204, .34), rgba(72, 209, 204, .16) 55%, transparent 100%); }
.adl .adl--asuka .backdrop__blob--2 { background: radial-gradient(closest-side, rgba(72, 209, 204, .16), transparent 100%); }
.adl .adl--asuka .brand--logo::before { content: none; }
.adl .adl--asuka .brand--logo img { display: block; width: auto; height: 36px; }
.adl .adl--asuka .site-footer .brand--logo img { height: 40px; }
@media (max-width: 767px) {
.adl .adl--asuka .brand--logo img { height: 28px; }
}
.adl .adl--asuka .gallery__more { margin-top: var(--s-6); text-align: center; }
@media (max-width: 767px) {
.adl .adl--asuka .paid-item { grid-template-columns: 56px minmax(0, 1fr); }
.adl .adl--asuka .paid-item .btn { grid-column: 1 / -1; width: 100%; }
}
.adl .adl--asuka .text-link {
  display: inline-flex; align-items: center; min-height: 44px;
  font-size: 16px; font-weight: 700; letter-spacing: .06em;
  text-decoration: underline;
  text-decoration-color: var(--c-accent);
  text-decoration-thickness: 2px;
  text-underline-offset: 6px;
}
.adl .adl--asuka .text-link:hover { text-decoration-color: var(--c-ink); }

/* ---------- style属性の置き換え ---------- */

.adl .adl--site .st-ee58eb { --d:1; }
.adl .adl--site .st-08723a { --d:0; }
.adl .adl--site .st-c9a8d5 { --d:2; }
.adl .adl--site .st-1dfe98 { margin-bottom: var(--s-3); }
.adl .adl--site .st-d2467b { margin-top: var(--s-5); }
.adl .adl--site .st-ec48d1 { --cols:3; }
.adl .adl--site .st-bd996b { box-shadow: var(--lift-1); }
.adl .adl--site .st-213a12 { margin-top: var(--s-6); }
.adl .adl--site .st-67cebf { --cols:2; }
.adl .adl--site .st-9e5fe0 { border-top: 1px solid var(--c-line); }
.adl .adl--site .st-3eb982 { margin-top: var(--s-4); }
.adl .adl--site .st-a9b1cd { margin-bottom: var(--s-6); }
.adl .adl--site .st-c3e885 { --d:3; }
.adl .adl--asuka .st-4c2363 { --i:0; }
.adl .adl--asuka .st-1cdb0a { --i:1; }
.adl .adl--asuka .st-bb14b0 { --i:2; }
.adl .adl--asuka .st-3aa23c { --i:3; }
.adl .adl--asuka .st-31ee11 { --i:4; }
.adl .adl--asuka .st-08723a { --d:0; }
.adl .adl--asuka .st-ee58eb { --d:1; }
.adl .adl--asuka .st-c9a8d5 { --d:2; }

/* ---------- WordPress（SWELL）上での調整 ---------- */

/* WordPress（SWELL）上で静的サイトと同じ見た目にするための調整。
   ブロックが付ける要素・クラスと、SWELLの本文スタイルの差を埋める。 */

/* ---------- ページ全体：SWELLの本文の幅から出して画面いっぱいに ---------- */
.adl.wp-block-group {
  width: 100vw;
  max-width: 100vw;
  margin: 0 calc(50% - 50vw) !important;
  padding: 0;
  overflow-x: clip;
}
/* SWELL側のページタイトル・アイキャッチ・本文下の余白を消す（見出しはブロック側で表示） */
.adl#body_wrap .c-pageTitle,
.adl#body_wrap .p-articleHead,
.adl#body_wrap .p-articleThumb,
.adl#body_wrap .l-topTitleArea { display: none !important; }
.adl#body_wrap .l-mainContent,
.adl#body_wrap .l-content,
.adl#body_wrap .l-mainContent__inner { padding-top: 0 !important; padding-bottom: 0 !important; margin-top: 0 !important; }
.adl#body_wrap .l-content { margin-bottom: 0 !important; }
.adl#body_wrap .post_content { margin: 0 !important; }
.adl#body_wrap #main_content .l-mainContent__inner > .post_content { margin-top: 0 !important; }
/* SWELLのフッターは使わない（ページ側のフッター＝同期パターンを表示しているため） */
.adl#body_wrap .l-footer { display: none; }

/* ---------- ブロックが足す余白・装飾を打ち消す ---------- */
.adl :where(.adl--site, .adl--asuka) :where(.is-layout-flow, .is-layout-constrained, .wp-block-group, .wp-block-group__inner-container) > * {
  margin-block-start: 0;
  margin-block-end: 0;
}
.adl :where(.adl--site, .adl--asuka) :is(h1, h2, h3, h4, h5, h6) {
  margin: 0;
  padding: 0;
  border: 0;
  background: none;
  color: inherit;
  box-shadow: none;
}
.adl :where(.adl--site, .adl--asuka) :is(h1, h2, h3, h4, h5, h6)::before { content: none; display: none; }
.adl :where(.adl--site, .adl--asuka) :is(h1, h2, h3, h4)::after { border: 0; }
.adl :where(.adl--site, .adl--asuka) p { margin: 0; }
.adl :where(.adl--site, .adl--asuka) :is(ul, ol).wp-block-list { margin: 0; padding: 0; list-style: none; }
.adl :where(.adl--site, .adl--asuka) :is(ul, ol).wp-block-list > li { margin: 0; padding: 0; }
.adl :where(.adl--site, .adl--asuka) :is(ul, ol).wp-block-list > li:not(.check-list li)::before { content: none; }
.adl :where(.adl--site, .adl--asuka) figure.wp-block-image { margin: 0; }
.adl :where(.adl--site, .adl--asuka) .wp-block-image img { border-radius: 0; box-shadow: none; }
.adl :where(.adl--site, .adl--asuka) a { color: inherit; }
.adl :where(.adl--site, .adl--asuka) .wp-block-group.li { list-style: none; }

/* ---------- ボタン（wp:button） ---------- */
.adl :where(.adl--site, .adl--asuka) .wp-block-buttons { display: flex; flex-wrap: wrap; gap: 16px; margin: 0; }
.adl :where(.adl--site, .adl--asuka) .wp-block-buttons:not(:first-child) { margin-top: 32px; }
.adl :where(.adl--site, .adl--asuka) .btn-row > .wp-block-buttons { margin-top: 0; }
.adl :where(.adl--site, .adl--asuka) .wp-block-button { margin: 0; }
.adl .adl-btn .wp-block-button__link {
  display: inline-flex; align-items: center; justify-content: center;
  min-height: 54px;
  padding: 0 32px;
  border: 1px solid transparent;
  border-radius: 14px;
  font-family: inherit;
  font-size: 16px; font-weight: 700; line-height: 1.3; letter-spacing: .06em;
  text-decoration: none;
  transition: background-color .25s, box-shadow .25s, transform .25s cubic-bezier(.22, 1, .36, 1);
}
.adl .adl-btn--primary .wp-block-button__link { background: #48D1CC; color: #20272B; box-shadow: 0 8px 20px rgba(32, 39, 43, .12); }
.adl .adl-btn--primary .wp-block-button__link:hover { background: #3CC4BF; transform: translateY(-2px); box-shadow: 0 12px 26px rgba(32, 39, 43, .14); }
.adl .adl-btn--secondary .wp-block-button__link { background: #FFFFFF; color: #20272B; border-color: #20272B; }
.adl .adl-btn--secondary .wp-block-button__link:hover { background: #F5FAF9; transform: translateY(-2px); }
.adl .adl-btn--small .wp-block-button__link { min-height: 46px; padding: 0 24px; font-size: 15px; }
.adl .adl-btn .wp-block-button__link:focus-visible { outline: 2px solid #20272B; outline-offset: 4px; }
@media (max-width: 767px) {
  .adl :where(.adl--site, .adl--asuka) .wp-block-buttons { flex-direction: column; align-items: stretch; }
  .adl :where(.adl--site, .adl--asuka) .contact-cta .wp-block-buttons { align-items: center; }
  .adl .adl-btn .wp-block-button__link { width: 100%; }
}
@media (prefers-reduced-motion: reduce) { .adl .adl-btn .wp-block-button__link { transition: none; } }

/* 中央そろえのセクション（お問い合わせ導線）ではボタンも中央に */
.adl :where(.adl--site, .adl--asuka) .contact-cta .wp-block-buttons { justify-content: center; }

/* ---------- テキストリンク（<p class="text-link"><a>） ---------- */
.adl :where(.adl--site, .adl--asuka) :is(.text-link, .work__link) a {
  display: inline-flex; align-items: center; min-height: 44px;
  color: inherit;
  text-decoration: underline;
  text-decoration-color: #E1AD01;
  text-decoration-thickness: 2px;
  text-underline-offset: 6px;
}
.adl :where(.adl--site, .adl--asuka) :is(.text-link, .work__link) a:hover { text-decoration-color: #20272B; }
.adl .adl--site p.text-link { display: block; text-decoration: none; min-height: 0; }
.adl .adl--asuka p.work__link { text-decoration: none; }
.adl .adl--asuka .work__link a { min-height: 0; }

/* ---------- 表（wp:table） ---------- */
.adl :where(.adl--site, .adl--asuka) .wp-block-table { margin: 0; overflow: visible; }
.adl :where(.adl--site, .adl--asuka) .wp-block-table table { width: 100%; border-collapse: collapse; table-layout: auto; }
.adl :where(.adl--site, .adl--asuka) .wp-block-table :is(th, td) { border: 0; background: none; padding: 12px 4px; text-align: left; font-weight: 500; }
.adl :where(.adl--site, .adl--asuka) .wp-block-table thead { border: 0; }
/* 増刷の料金表 */
.adl .adl--site .table-card .wp-block-table :is(th, td) { border-bottom: 1px solid #DCE8E7; font-size: 15px; }
.adl .adl--site .table-card .wp-block-table thead th { font-size: 13px; color: #566068; }
.adl .adl--site .table-card .wp-block-table :is(td, th):last-child { text-align: right; font-family: "Outfit", sans-serif; font-size: 17px; white-space: nowrap; }
.adl .adl--site .table-card .wp-block-table tbody tr:last-child td { border-bottom: 0; }
/* 事業概要の表・プロフィールの表・名刺モデルの表 */
.adl .adl--site .company { padding: 16px 40px; }
.adl .adl--site .company :is(td) { padding: 16px 0; border-bottom: 1px solid #DCE8E7; color: #566068; vertical-align: top; }
.adl .adl--site .company td:first-child { width: 160px; font-weight: 700; color: #20272B; }
.adl .adl--site .company tr:last-child td { border-bottom: 0; }
.adl .adl--site .profile__list { margin-top: 32px; border-top: 1px solid #DCE8E7; }
.adl .adl--site .profile__list td { padding: 14px 0; border-bottom: 1px solid #DCE8E7; font-size: 15px; color: #566068; vertical-align: top; }
.adl .adl--site .profile__list td:first-child { width: 140px; font-weight: 700; color: #20272B; }
.adl .adl--site .option__sides td { padding: 4px 0; font-size: 14px; color: #566068; vertical-align: top; }
.adl .adl--site .option__sides td:first-child { width: 3em; font-weight: 700; color: #20272B; }
@media (max-width: 599px) {
  .adl .adl--site :is(.company, .profile__list) :is(tr, td) { display: block; width: auto !important; }
  .adl .adl--site :is(.company, .profile__list) td:first-child { border-bottom: 0; padding-bottom: 0; }
  .adl .adl--site .company { padding: 8px 24px; }
}

/* ---------- 画像（wp:image）の枠：静的サイトの .media と同じに ---------- */
.adl :where(.adl--site, .adl--asuka) .wp-block-image.media > img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.adl :where(.adl--site, .adl--asuka) .wp-block-image.icon > img { object-fit: contain; }
.adl .adl--asuka .wp-block-image.sticker > img { object-fit: contain; }
/* 画像が入るまで alt（ファイル名）を小さく表示 */
.adl :where(.adl--site, .adl--asuka) .wp-block-image.media > img { font-size: 11px; color: #566068; text-align: center; }

/* ---------- 名刺モデルの表面・裏面 ---------- */
.adl .adl--site .option__sides { margin-top: 8px; }

/* ---------- 制作事例の種類ボタン（段落の中のリンク） ---------- */
.adl .adl--site .filter__links { display: flex; flex-wrap: wrap; gap: 8px; }

/* ---------- お問い合わせフォーム（Contact Form 7） ---------- */
.adl .adl--site .wpcf7 { padding: 40px; border-radius: 32px; background: #FFFFFF; box-shadow: 0 2px 4px rgba(32, 39, 43, .05), 0 16px 32px rgba(32, 39, 43, .08); }
.adl .adl--site .wpcf7 p { margin: 0 0 32px; font-size: 16px; font-weight: 700; }
.adl .adl--site .wpcf7 label { display: block; }
.adl .adl--site .wpcf7 :is(input[type="text"], input[type="email"], textarea, select) {
  display: block; width: 100%;
  margin-top: 8px;
  min-height: 52px;
  padding: 12px 16px;
  border: 1px solid #B9CACC;
  border-radius: 12px;
  background: #FFFFFF;
  color: #20272B;
  font: inherit; font-size: 16px; font-weight: 500;
}
.adl .adl--site .wpcf7 textarea { min-height: 200px; line-height: 1.8; }
.adl .adl--site .wpcf7 :is(input, textarea, select):focus { outline: none; border-color: #20272B; box-shadow: 0 0 0 3px #B4EAE6; }
.adl .adl--site .wpcf7 .wpcf7-radio { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; margin-top: 8px; font-weight: 500; }
.adl .adl--site .wpcf7 .wpcf7-list-item { margin: 0; }
.adl .adl--site .wpcf7 .wpcf7-list-item label { display: flex; align-items: center; gap: 10px; min-height: 52px; padding: 0 16px; border: 1px solid #B9CACC; border-radius: 12px; cursor: pointer; font-size: 15px; }
.adl .adl--site .wpcf7 .wpcf7-list-item label:has(input:checked) { border-color: #20272B; background: #E8F7F5; }
.adl .adl--site .wpcf7 input[type="radio"] { width: 18px; height: 18px; accent-color: #20272B; }
.adl .adl--site .wpcf7 .adl-req { margin-left: 8px; padding: 0 8px; border-radius: 4px; background: #E1AD01; font-size: 12px; }
.adl .adl--site .wpcf7 .adl-opt { margin-left: 8px; padding: 0 8px; border-radius: 4px; border: 1px solid #DCE8E7; color: #566068; font-size: 12px; }
.adl .adl--site .wpcf7 input[type="submit"] {
  width: 100%; min-height: 60px;
  border: 0; border-radius: 14px;
  background: #48D1CC; color: #20272B;
  font: inherit; font-size: 17px; font-weight: 700; letter-spacing: .06em;
  box-shadow: 0 8px 20px rgba(32, 39, 43, .12);
  cursor: pointer;
}
.adl .adl--site .wpcf7 input[type="submit"]:hover { background: #3CC4BF; }
@media (max-width: 599px) {
  .adl .adl--site .wpcf7 { padding: 32px 24px; }
  .adl .adl--site .wpcf7 .wpcf7-radio { grid-template-columns: 1fr; }
}

/* ---------- 飾りのレイヤー（HTMLに置かずCSSで描く） ---------- */
/* ヒーロー：点の方眼とぼかしの円 */
.adl .adl--site :is(.hero, .page-hero)::before,
.adl .adl--asuka .hero::before {
  content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background-image: radial-gradient(circle, #A6CFCB 1.1px, transparent 1.5px);
  background-size: 22px 22px;
  -webkit-mask-image: radial-gradient(ellipse 55% 65% at 70% 45%, #000 20%, transparent 75%);
          mask-image: radial-gradient(ellipse 55% 65% at 70% 45%, #000 20%, transparent 75%);
}
.adl .adl--site :is(.hero, .page-hero)::after,
.adl .adl--asuka .hero::after {
  content: ""; position: absolute; z-index: -1; pointer-events: none;
  width: min(56vw, 720px); aspect-ratio: 1 / 1;
  right: -8vw; top: 2%;
  background: radial-gradient(closest-side, rgba(72, 209, 204, .34), rgba(72, 209, 204, .16) 55%, transparent);
}
.adl .adl--asuka .hero::after { left: -10vw; right: auto; }
.adl .adl--asuka .hero::before { -webkit-mask-image: radial-gradient(ellipse 60% 65% at 38% 42%, #000 20%, transparent 75%); mask-image: radial-gradient(ellipse 60% 65% at 38% 42%, #000 20%, transparent 75%); }
.adl .adl--asuka .hero { position: relative; isolation: isolate; }

/* 各シート：点の模様と細い円 */
.adl :where(.adl--site, .adl--asuka) .sheet::before {
  content: ""; position: absolute; z-index: 0; pointer-events: none;
  width: 340px; height: 260px;
  right: -40px; top: 48px;
  background-image: radial-gradient(circle, rgba(32, 39, 43, .14) 1.2px, transparent 1.6px);
  background-size: 20px 20px;
  -webkit-mask-image: radial-gradient(closest-side, #000 40%, transparent);
          mask-image: radial-gradient(closest-side, #000 40%, transparent);
}
.adl :where(.adl--site, .adl--asuka) .sheet::after {
  content: ""; position: absolute; z-index: 0; pointer-events: none;
  width: 480px; aspect-ratio: 1 / 1;
  left: -220px; top: 34%;
  border: 1px solid #48D1CC; border-radius: 50%;
  opacity: .5;
}
.adl :where(.adl--site, .adl--asuka) .sheet:nth-of-type(even)::before { right: auto; left: -60px; top: auto; bottom: 18%; }
.adl :where(.adl--site, .adl--asuka) .sheet:nth-of-type(even)::after { left: auto; right: -160px; top: 60px; width: 360px; }
.adl .adl--site .sheet--mid::before { background-image: radial-gradient(circle, rgba(255, 255, 255, .85) 1.3px, transparent 1.7px); }
.adl .adl--site .sheet--mid::after { border-color: #FFFFFF; opacity: .8; }
/* 中身を飾り（点・円）より手前に出す。
   SWELLでは中身が .wp-block-group__inner-container（display: contents）で包まれるので、その中も対象にする */
.adl :where(.adl--site, .adl--asuka) .sheet > *,
.adl :where(.adl--site, .adl--asuka) .sheet > .wp-block-group__inner-container > * { position: relative; z-index: 1; }
@media (max-width: 767px) {
  .adl :where(.adl--site, .adl--asuka) .sheet::before { width: 220px; height: 180px; }
  .adl :where(.adl--site, .adl--asuka) .sheet::after { width: 280px; }
}
@media (prefers-reduced-motion: no-preference) {
  .adl .adl--site .is-ambient::after,
  .adl .adl--asuka .hero::after { animation: adl-float 26s ease-in-out infinite alternate; }
  .adl :where(.adl--site, .adl--asuka) .is-ambient.is-paused::after,
  .adl .adl--asuka .hero.is-paused::after { animation-play-state: paused; }
}
@keyframes adl-float {
  from { rotate: 0deg; scale: 1; translate: 0 0; }
  to   { rotate: 14deg; scale: 1.08; translate: -3vw 2vw; }
}

/* ---------- 出現の動きの順番（style="--d:N" の置き換え） ---------- */
.adl :where(.adl--site, .adl--asuka) .wp-block-image.reveal > img { opacity: 1; }

/* ---------- グループの内側の箱 ----------
   SWELL（theme.json の無いテーマ）では、グループの中身が .wp-block-group__inner-container で包まれる。
   この箱を「無いもの」として扱い、静的サイトと同じグリッド・横並びがそのまま効くようにする */
.adl .wp-block-group__inner-container { display: contents; }

/* ---------- ヘッダー（SWELL）：お問い合わせだけボタンの見た目に ---------- */
.adl#body_wrap .c-gnav > .adl-menu-btn { display: flex; align-items: center; }
.adl#body_wrap .c-gnav .adl-menu-btn > a {
  height: auto;
  line-height: 1.4;
  margin: 0 0 0 8px;
  padding: 10px 20px;
  border-radius: 14px;
  background: #48D1CC;
  color: #20272B;
  font-weight: 700;
  box-shadow: 0 8px 20px rgba(32, 39, 43, .12);
}
.adl#body_wrap .c-gnav .adl-menu-btn > a:hover { background: #3CC4BF; }
.adl#body_wrap .c-gnav .adl-menu-btn > a::after { display: none; }
.adl#body_wrap .c-gnav .adl-menu-ai > a .ttl::before {
  content: ""; display: inline-block; width: 6px; height: 6px; margin-right: 6px;
  border-radius: 50%; background: #48D1CC; vertical-align: middle;
}

/* =========================================================
   制作事例（投稿）を自動で並べる一覧：クエリーループ
   ========================================================= */
.adl .adl--site .work-query .work-list { margin: 0; padding: 0; list-style: none; }
.adl .adl--site .work-query .work-list > .wp-block-post { display: flex; flex-direction: column; margin: 0; }
.adl .adl--site .work__frame {
  position: relative;
  aspect-ratio: 91 / 55;
  border-radius: 16px;
  transition: transform .4s cubic-bezier(.22, 1, .36, 1), box-shadow .4s cubic-bezier(.22, 1, .36, 1);
}
.adl .adl--site .work-query--square .work__frame { aspect-ratio: 1 / 1; }
.adl .adl--site .work-query--tall .work__frame { aspect-ratio: 1 / 1.414; }
/* 画像が無い事例は「NO IMAGE」 */
/* 枠の面（::after）。後ろの台紙（.paper::before）より手前に置く */
.adl .adl--site .work__frame::after {
  content: "NO IMAGE";
  position: absolute; inset: 0; z-index: 0;
  display: grid; place-items: center;
  border-radius: inherit;
  background: #F5FAF9;
  box-shadow: 0 1px 2px rgba(32, 39, 43, .05), 0 8px 18px rgba(32, 39, 43, .06);
  font-family: "Outfit", sans-serif; font-size: 13px; font-weight: 300; letter-spacing: .2em;
  color: #7C878C;
}
.adl .adl--site .work__frame .wp-block-post-featured-image {
  position: absolute; inset: 0; z-index: 1;
  margin: 0;
  overflow: hidden;
  border-radius: inherit;
}
.adl .adl--site .work__frame .wp-block-post-featured-image :is(a, img) { display: block; width: 100%; height: 100%; object-fit: cover; }
.adl .adl--site .work-list > .wp-block-post:nth-child(3n+2) .paper::before { background: #F2D777; }
.adl .adl--site .work-list > .wp-block-post:hover .work__frame { transform: translateY(-8px) rotate(1.5deg); box-shadow: 0 2px 4px rgba(32, 39, 43, .05), 0 16px 32px rgba(32, 39, 43, .08); }
.adl .adl--site .work-list > .wp-block-post:hover .paper::before { rotate: -6deg; translate: 2px 12px; }
.adl .adl--site .work__meta { display: flex; flex-wrap: wrap; align-items: center; gap: 6px 10px; margin-top: 16px; }
.adl .adl--site .work__type a { color: inherit; text-decoration: none; }
.adl .adl--site .work__name { font-size: 15px; font-weight: 700; line-height: 1.6; }
.adl .adl--site .work__name a { color: inherit; text-decoration: none; }
.adl .adl--site .work__name a:hover { text-decoration: underline; text-decoration-color: #E1AD01; text-decoration-thickness: 2px; text-underline-offset: 5px; }
.adl .adl--site .work__job { width: 100%; font-size: 14px; color: #566068; }
.adl .adl--site .work__job p { margin: 0; }
.adl .adl--site .work__job .wp-block-post-excerpt__more-text { display: none; }
.adl .adl--site .works__more-link { margin-top: 40px; }
@media (prefers-reduced-motion: reduce) { .adl .adl--site .work__frame { transition: none; } }

/* =========================================================
   制作事例の詳しいページ（投稿）
   ========================================================= */
/* SWELLの投稿の頭・日付・カテゴリ欄・前後の記事・関連記事は使わない（本文側で表示するため） */
.adl#body_wrap .p-articleHead,
.adl#body_wrap .p-articleMetas,
.adl#body_wrap .p-articleFoot,
.adl#body_wrap .l-articleBottom { display: none !important; }
.adl .adl--site .work-hero__visual { position: relative; width: min(100%, 520px); justify-self: center; border-radius: 16px; }
.adl .adl--site .work-hero__visual .media { aspect-ratio: 91 / 55; border-radius: 16px; background: #F5FAF9; box-shadow: 0 0 0 6px #FFFFFF, 0 0 0 7px #DCE8E7, 0 2px 4px rgba(32, 39, 43, .05), 0 16px 32px rgba(32, 39, 43, .08); }
.adl .adl--site .work-hero__visual--square { width: min(100%, 420px); }
.adl .adl--site .work-hero__visual--square .media { aspect-ratio: 1 / 1; }
.adl .adl--site .work-hero__visual--tall { width: min(100%, 360px); }
.adl .adl--site .work-hero__visual--tall .media { aspect-ratio: 1 / 1.414; }
.adl .adl--site .page-hero__label a { color: inherit; text-decoration: none; }
.adl .adl--site .page-hero__text p { margin: 0; }
.adl .adl--site .page-hero__text .wp-block-post-excerpt__more-text { display: none; }
.adl .adl--site .work-body__text { max-width: 40em; color: #46525A; }
.adl .adl--site .work-body .btn-row { margin-top: 40px; }

/* 似顔絵の事例：縦長の画像なので 3:4 の枠で上から見せる */
.adl .adl--site .work-query--portrait .work__frame { aspect-ratio: 3 / 4; }
.adl .adl--site .work-query--portrait .work__frame img { object-position: top center; }
.adl .adl--site .work-hero__visual--portrait { width: min(100%, 380px); }
.adl .adl--site .work-hero__visual--portrait .media { aspect-ratio: 3 / 4; }
.adl .adl--site .work-hero__visual--portrait .media img { object-position: top center; }

/* 事例のページ：名刺の表・裏を並べる */
.adl .adl--site .work-gallery { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px; margin-bottom: 64px; }
.adl .adl--site .work-gallery__item { border-radius: 12px; }
.adl .adl--site .work-gallery__item .media { aspect-ratio: 91 / 55; border-radius: 12px; background: #FFFFFF; box-shadow: 0 0 0 5px #FFFFFF, 0 0 0 6px #DCE8E7, 0 2px 4px rgba(32, 39, 43, .05), 0 16px 32px rgba(32, 39, 43, .08); }
.adl .adl--site .work-gallery__item .media img { object-fit: contain; }
.adl .adl--site .work-gallery__item:nth-child(even)::before { background: #F2D777; }
@media (max-width: 767px) { .adl .adl--site .work-gallery { grid-template-columns: 1fr; gap: 24px; } }
.adl .adl--site .work-info { margin-bottom: 64px; }
.adl .adl--site .work-info a { text-decoration: underline; text-decoration-color: #E1AD01; text-underline-offset: 4px; overflow-wrap: anywhere; }
.adl .adl--site .work-body .section-head { margin-bottom: 24px; }

/* 似顔絵の一覧：4列（画像を小さめに）。タブレット3列・スマホ2列 */
.adl .adl--site .work-query--portrait .work-list { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 40px 24px; }
@media (max-width: 899px) { .adl .adl--site .work-query--portrait .work-list { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 599px) { .adl .adl--site .work-query--portrait .work-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 16px; } }
.adl .adl--site .work-query--portrait .work-list > .wp-block-post:nth-child(3n+2) .paper::before { background: #9FE3DF; }
.adl .adl--site .work-query--portrait .work-list > .wp-block-post:nth-child(4n+2) .paper::before,
.adl .adl--site .work-query--portrait .work-list > .wp-block-post:nth-child(4n+4) .paper::before { background: #F2D777; }
/* リンクしないカードは、持ち上がる動きも付けない */
.adl .adl--site .work-query--portrait .work-list > .wp-block-post:hover .work__frame { transform: none; }
.adl .adl--site .work-query--portrait .work-list > .wp-block-post:hover .paper::before { rotate: -3deg; translate: 6px 8px; }
/* 種類の札（タグ）は表示だけ（タグの一覧ページには移動しない） */
.adl .adl--site .work__type a { pointer-events: none; }

/* =========================================================
   トップの制作事例：ランダムな並びで、ゆっくり横に流れる帯
   ・JSが動くとき（.js）だけ帯にする。JSが無い・動きを減らす設定のときは普通の一覧
   ・名刺は横長、似顔絵は縦長のまま高さをそろえる
   ・似顔絵は詳しいページが無いのでリンクしない
   ========================================================= */
.adl .adl--site .work-query--marquee .work-list { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.adl .adl--site .work-query--marquee .category-portrait :is(.work__name, .work__job) { display: none; }
.adl .adl--site .work-query--marquee .category-portrait a { pointer-events: none; }
.adl .adl--site .work-query--marquee .category-portrait .work__frame { aspect-ratio: 3 / 4; max-width: 60%; }
.adl .adl--site .work-query--marquee .category-portrait .work__frame img { object-position: top center; }

@media (prefers-reduced-motion: no-preference) {
  .adl .adl--site.js .work-query--marquee {
    width: 100vw;
    margin-left: calc(50% - 50vw);
    padding-block: 16px 8px;
    overflow: hidden;
    -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
            mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);
  }
  .adl .adl--site.js .work-query--marquee .work-list {
    display: flex;
    flex-wrap: nowrap;
    gap: 0;
    width: max-content;
    will-change: transform; /* 位置は adl.js が動かす（自動で流れる＋ドラッグ・スワイプで送れる） */
  }
  .adl .adl--site.js .work-query--marquee { cursor: grab; touch-action: pan-y; user-select: none; -webkit-user-select: none; }
  .adl .adl--site.js .work-query--marquee.is-dragging { cursor: grabbing; }
  .adl .adl--site.js .work-query--marquee img { -webkit-user-drag: none; pointer-events: none; }
  .adl .adl--site.js .work-query--marquee .work-list > .wp-block-post { flex: none; width: auto; padding-right: 40px; }
  .adl .adl--site.js .work-query--marquee .work__frame { height: 210px; width: auto; aspect-ratio: 91 / 55; }
  .adl .adl--site.js .work-query--marquee .category-portrait .work__frame { aspect-ratio: 3 / 4; max-width: none; }
  .adl .adl--site.js .work-query--marquee .work__meta { max-width: 346px; }
  .adl .adl--site.js .work-query--marquee .category-portrait .work__meta { max-width: 158px; }
}
@media (max-width: 767px) {
  .adl .adl--site.js .work-query--marquee .work__frame { height: 150px; }
  .adl .adl--site.js .work-query--marquee .work__meta { max-width: 248px; }
  .adl .adl--site.js .work-query--marquee .category-portrait .work__meta { max-width: 113px; }
  .adl .adl--site.js .work-query--marquee .work-list > .wp-block-post { padding-right: 24px; }
}

/* =========================================================
   事例の画像をランダムに出す枠（.random-card など。adl.js が差し替える）
   ========================================================= */
/* 名刺：横長の枠ならそのまま、4:3 の枠では切れないよう全体を見せる */
.adl .adl--site .service__visual .random-card > img,
.adl .adl--site .service__visual .random-portrait > img { object-fit: contain; padding: 6%; background: #FFFFFF; }
.adl .adl--site .random-portrait > img { object-position: top center; }
/* 似顔絵の丸い枠：顔が入るように上寄せ */
.adl .adl--site .stack__item--portrait.random-portrait > img { object-position: center 18%; }
/* 事例がまだ無い枠（漫画など）は「準備中」と出す */
.adl .adl--site .is-empty { background: #F5FAF9; }
.adl .adl--site .is-empty > img { visibility: hidden; }
/* SWELLは画像ブロックの ::after を見えなくしている（visibility: hidden; height: 0）ので打ち消す */
.adl .adl--site figure.wp-block-image.is-empty::after {
  z-index: 2;
  visibility: visible;
  height: auto;
  clear: none;
  content: "準備中";
  position: absolute; inset: 0;
  display: grid; place-items: center;
  font-size: 14px; font-weight: 700; letter-spacing: .1em;
  color: #7C878C;
}

/* 事業概要「私について」の写真：人物が入るように位置を合わせる */
.adl .adl--site .story__visual > img[src*="story-sunset"] { object-position: 82% center; }
.adl .adl--site .story__visual > img[src*="story-drink"] { object-position: center 30%; }

/* =========================================================
   漫画の事例
   ========================================================= */
/* 一覧：縦長の枠で、漫画の上（1コマ目）から見せる。4列 */
.adl .adl--site .work-query--tall .work-list { grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 40px 24px; }
@media (max-width: 899px) { .adl .adl--site .work-query--tall .work-list { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 599px) { .adl .adl--site .work-query--tall .work-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 16px; } }
.adl .adl--site .work-query--tall .work__frame { aspect-ratio: 3 / 4; cursor: zoom-in; }
.adl .adl--site .work-query--tall .work__frame img { object-position: top center; }
.adl .adl--site .work-query--tall .work__frame:focus-visible { outline: 2px solid #20272B; outline-offset: 6px; }
.adl .adl--site .work-query--tall .work-list > .wp-block-post:nth-child(4n+2) .paper::before,
.adl .adl--site .work-query--tall .work-list > .wp-block-post:nth-child(4n+4) .paper::before { background: #F2D777; }
.adl .adl--site .work-query--tall .work-list > .wp-block-post:nth-child(3n+2):not(:nth-child(4n+2)):not(:nth-child(4n+4)) .paper::before { background: #9FE3DF; }
.adl .adl--site .work-query--tall .work__name { width: 100%; font-size: 14px; }
/* トップから移動してきた漫画を、少しの間だけ目立たせる */
.adl .adl--site .work-list > .wp-block-post.is-target .work__frame { outline: 3px solid #E1AD01; outline-offset: 8px; border-radius: 16px; }

/* トップの帯：漫画は縦長、名前だけ表示 */
.adl .adl--site .work-query--marquee .category-manga .work__job { display: none; }
.adl .adl--site .work-query--marquee .category-manga .work__frame { aspect-ratio: 3 / 4; max-width: 60%; }
.adl .adl--site .work-query--marquee .category-manga .work__frame img { object-position: top center; }
@media (prefers-reduced-motion: no-preference) {
  .adl .adl--site.js .work-query--marquee .category-manga .work__frame { aspect-ratio: 3 / 4; max-width: none; }
  .adl .adl--site.js .work-query--marquee .category-manga .work__meta { max-width: 158px; }
}
@media (max-width: 767px) {
  .adl .adl--site.js .work-query--marquee .category-manga .work__meta { max-width: 113px; }
}

/* 最初の画面・サービス一覧・漫画ページの漫画の画像：上（1コマ目）から見せる */
.adl .adl--site .random-manga > img { object-fit: cover !important; padding: 0 !important; object-position: top center; }

/* 漫画を大きく表示する画面（adl.js） */
.adl-viewer {
  position: fixed; inset: 0; z-index: 100000;
  display: flex; justify-content: center; align-items: center;
  padding: 56px 16px 24px;
  overflow: hidden;
  background: rgba(32, 39, 43, .88);
  cursor: zoom-out;
}
/* 画面の高さに収める（スクロールしなくても1枚全体が見える） */
.adl-viewer img { display: block; width: auto; height: auto; max-width: 100%; max-height: calc(100dvh - 80px); object-fit: contain; border-radius: 8px; box-shadow: 0 16px 40px rgba(0, 0, 0, .35); cursor: default; }
.adl-viewer__close {
  position: fixed; top: 12px; right: 16px;
  width: 44px; height: 44px;
  border: 0; border-radius: 50%;
  background: #FFFFFF; color: #20272B;
  font-size: 24px; line-height: 44px;
  cursor: pointer;
}
.adl-viewer__close:focus-visible { outline: 2px solid #48D1CC; outline-offset: 3px; }

/* ---------- ロゴ（フッター） ---------- */
.adl :where(.adl--site, .adl--asuka) figure.wp-block-image.brand--logo { display: block; }
.adl :where(.adl--site, .adl--asuka) figure.wp-block-image.brand--logo img { display: block; width: auto; height: 40px; }
@media (max-width: 767px) { .adl :where(.adl--site, .adl--asuka) figure.wp-block-image.brand--logo img { height: 32px; } }

/* ---------- スマホでの並び ---------- */
@media (max-width: 767px) {
  /* 有料ツール：ボタン（ボタンのブロック）は下に全幅で */
  .adl .adl--asuka .paid-item { grid-template-columns: 56px minmax(0, 1fr); }
  .adl .adl--asuka .paid-item > .wp-block-buttons,
  .adl .adl--asuka .paid-item > .wp-block-group__inner-container > .wp-block-buttons { grid-column: 1 / -1; width: 100%; }
  .adl .adl--asuka .paid-item .wp-block-button,
  .adl .adl--asuka .paid-item .wp-block-button__link { width: 100%; }
  /* 私の強み・3つの特徴：番号とアイコンを上に、文章は全幅で */
  .adl .adl--site .reason { grid-template-columns: 1fr; }
}
/* 作品ギャラリーの下のリンク */
.adl .adl--asuka .gallery__more { margin-top: 48px; text-align: center; }
.adl .adl--asuka .gallery__more a {
  display: inline-flex; align-items: center; min-height: 44px;
  font-weight: 700; letter-spacing: .06em;
  text-decoration: underline; text-decoration-color: #E1AD01; text-decoration-thickness: 2px; text-underline-offset: 6px;
}

/* トップの制作事例：流さないとき（動きを減らす設定・JSが動かないとき）は、6件だけを同じ形の枠で並べる */
.adl .adl--site .work-query--marquee .work-list > .wp-block-post:nth-child(n+7) { display: none; }
.adl .adl--site .work-query--marquee .work__frame,
.adl .adl--site .work-query--marquee :is(.category-portrait, .category-manga) .work__frame { aspect-ratio: 3 / 4; max-width: none; }
.adl .adl--site .work-query--marquee .work__frame img { object-position: top center; }
@media (max-width: 767px) { .adl .adl--site .work-query--marquee .work-list { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 32px 16px; } }
@media (prefers-reduced-motion: no-preference) {
  .adl .adl--site.js .work-query--marquee .work-list > .wp-block-post:nth-child(n+7) { display: block; }
  .adl .adl--site.js .work-query--marquee .work__frame { aspect-ratio: 91 / 55; }
  .adl .adl--site.js .work-query--marquee :is(.category-portrait, .category-manga) .work__frame { aspect-ratio: 3 / 4; }
}

/* ---------- スタンプ作品とAsukaヒーロー専用画像 ---------- */
.adl .adl--asuka .work-query--sticker { width: 100%; }
.adl .adl--asuka .sticker-list { margin: 0; padding: 0; list-style: none; }
.adl .adl--asuka .sticker-list > .wp-block-post { margin: 0; padding: 0; min-width: 0; }
.adl .adl--asuka .sticker-list > .wp-block-post::before { content: none; }
.adl .adl--asuka .sticker-card-link { display: block; height: 100%; color: inherit; text-decoration: none; border-radius: 24px; }
.adl .adl--asuka .sticker-card-link:focus-visible { outline: 3px solid #20272B; outline-offset: 5px; }
.adl .adl--asuka .sticker-card { height: 100%; }
.adl .adl--asuka .sticker-list .work__frame { position: relative; aspect-ratio: 4 / 3; overflow: hidden; }
.adl .adl--asuka .sticker-list .work__image { position: absolute; inset: 0; width: 100%; height: 100%; margin: 0; }
.adl .adl--asuka .sticker-list .work__image img { width: 100%; height: 100%; object-fit: cover !important; object-position: center; }
.adl .adl--asuka .sticker-list .work__desc p { margin: 0; }
.adl .adl--asuka .sticker-card-link .work__link { text-decoration: underline; text-underline-offset: 5px; }
.adl :is(.random-sticker, .random-hero-sticker).is-empty { visibility: hidden; }
.adl :is(.random-sticker, .random-hero-sticker).is-random::before { content: none; }
.adl :is(.random-sticker, .random-hero-sticker) > img { object-fit: contain; }

/* ---------- Asukaヒーロー：小さな画像を最大5枚、画像比率＋5px余白 ---------- */
.adl .adl--asuka .hero__name { --sticker: clamp(84px, 9vw, 128px); padding-block: 128px 112px; }
.adl .adl--asuka .hero .sticker {
  width: var(--sticker); height: auto; aspect-ratio: auto;
  padding: 5px; border-radius: 10px; background: #FFFFFF;
  box-shadow: 0 4px 14px rgba(32,39,43,.10);
}
.adl .adl--asuka .hero .sticker > img {
  position: static; display: block; width: 100%; height: auto;
  aspect-ratio: auto; padding: 0; object-fit: contain; background: transparent;
}
.adl .adl--asuka .hero .sticker::before,
.adl .adl--asuka .hero .sticker::after { content: none; display: none; }
.adl .adl--asuka .hero .sticker--1 { left: auto; right: 15%; top: 0; bottom: auto; }
.adl .adl--asuka .hero .sticker--2 { left: 28%; right: auto; top: auto; bottom: 0; }
.adl .adl--asuka .hero .sticker--3 { left: auto; right: 0; top: 40%; bottom: auto; --sticker: inherit; }
.adl .adl--asuka .hero .sticker--4 { --tilt: -7deg; left: 52%; right: auto; top: auto; bottom: -4px; animation-delay: 1.5s; }
.adl .adl--asuka .hero .sticker--5 { --tilt: 6deg; left: auto; right: 38%; top: 0; bottom: auto; animation-delay: 1.7s; }
@media (max-width: 767px) {
  .adl .adl--asuka .hero__name { --sticker: 58px; padding-block: 8px 92px; }
  .adl .adl--asuka .hero .sticker--1 { right: 1%; top: 4px; bottom: auto; }
  .adl .adl--asuka .hero .sticker--2 { left: 4%; right: auto; top: auto; bottom: 12px; }
  .adl .adl--asuka .hero .sticker--3 { right: 37%; top: 52px; bottom: auto; }
  .adl .adl--asuka .hero .sticker--4 { left: auto; right: 0; top: auto; bottom: 0; }
  .adl .adl--asuka .hero .sticker--5 { left: auto; right: 43%; top: auto; bottom: 44px; }
}

/* ---------- お問い合わせ：現在の枠を残してGoogleフォームを切り替え ---------- */
.adl .adl--site .adl-contact-switch {
  min-width: 0; padding: 40px; border-radius: 32px; background: #FFFFFF;
  box-shadow: 0 2px 4px rgba(32,39,43,.05), 0 16px 32px rgba(32,39,43,.08);
}
.adl .adl--site .adl-contact-choices { margin: 0 0 32px; padding: 0; border: 0; min-width: 0; }
.adl .adl--site .adl-contact-choices legend { margin-bottom: 12px; padding: 0; font-size: 16px; font-weight: 700; }
.adl .adl--site .adl-contact-options { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; }
.adl .adl--site .adl-contact-options label {
  display: flex; align-items: center; gap: 10px; min-height: 52px; padding: 12px 16px;
  border: 1px solid #B9CACC; border-radius: 12px; font-size: 15px; font-weight: 500; cursor: pointer;
}
.adl .adl--site .adl-contact-options label:has(input:checked) { border-color: #20272B; background: #E8F7F5; }
.adl .adl--site .adl-contact-options label:focus-within { outline: 2px solid #20272B; outline-offset: 3px; }
.adl .adl--site .adl-contact-options input { flex: none; width: 18px; height: 18px; margin: 0; accent-color: #20272B; }
.adl .adl--site .adl-contact-switch .adl-req { margin-left: 8px; padding: 0 8px; border-radius: 4px; background: #E1AD01; font-size: 12px; }
.adl .adl--site .adl-contact-switch [hidden] { display: none !important; }
.adl .adl--site .adl-contact-panel iframe { display: block; width: 100%; max-width: 100%; border: 0; background: #FFFFFF; }
.adl .adl--site .adl-contact-fallback { margin: 0 0 16px; font-size: 14px; }
.adl .adl--site .adl-contact-fallback a { text-decoration: underline; text-underline-offset: 4px; }
.adl .adl--site .adl-contact-soon { margin: 0; padding: 24px 0; font-size: 17px; }
@media (max-width: 599px) {
  /* スマホ：Googleフォーム自体に余白があるので、外側の余白を詰めてフォームを横いっぱいに使う */
  .adl .adl--site #form > .container,
  .adl .adl--site #form > .wp-block-group__inner-container > .container { padding-inline: 8px; }
  .adl .adl--site .adl-contact-switch { padding: 24px 16px 8px; border-radius: 20px; }
  .adl .adl--site .adl-contact-options { grid-template-columns: 1fr; }
  .adl .adl--site .adl-contact-panel iframe { width: calc(100% + 32px); max-width: none; margin-inline: -16px; }
  .adl .adl--site .adl-contact-fallback { padding-inline: 4px; }
}

/* 名刺のモデル：表面と裏面の2枚を少しずらして重ねる（裏面が手前） */
.adl .adl--site .option__cards { position: relative; aspect-ratio: 91 / 72; }
.adl .adl--site .option__cards .option__card {
  position: absolute; width: 82%; aspect-ratio: 91 / 55;
  border-radius: 10px; background: #FFFFFF;
  box-shadow: 0 0 0 4px #FFFFFF, 0 0 0 5px #DCE8E7, 0 2px 4px rgba(32, 39, 43, .05), 0 10px 22px rgba(32, 39, 43, .08);
}
.adl .adl--site .option__cards .option__card > img { object-fit: contain; }
/* 裏面（モデルの違いが分かる面）を手前に */
.adl .adl--site .option__cards .option__card--front { left: 0; top: 0; z-index: 1; rotate: -3deg; }
.adl .adl--site .option__cards .option__card--back { right: 0; bottom: 0; z-index: 2; rotate: 3deg; }

/* 似顔絵ページ：タッチの画像は3人並びの横長（今のサイトの画像）。丸ではなく横長の枠で全体を見せる */
.adl .adl--site .touch .paper { border-radius: 20px; max-width: none; }
.adl .adl--site .touch .paper::before { border-radius: 20px; }
.adl .adl--site .touch .media { aspect-ratio: 2 / 1; border-radius: 20px; background: #FFFFFF; }
.adl .adl--site .touch .media > img { object-fit: contain; padding: 4%; }
/* 見本写真 */
.adl .adl--site .touch__photo { max-width: 520px; margin: 0 0 48px; }
.adl .adl--site .touch__photo img { display: block; width: 100%; height: auto; border-radius: 12px; }
.adl .adl--site .touch__photo-caption { margin-top: 8px; font-size: 13px; color: #566068; }
/* 料金の使用例：3人並びの画像を切らずに見せる */
.adl .adl--site .price-wide__visual .media { aspect-ratio: 750 / 452; background: #FFFFFF; }
.adl .adl--site .price-wide__visual .media > img { object-fit: contain; }

/* Asuka：自作ツールの画像 */
/* 無料ツール：実際の画面。切らずに全体を見せる */
.adl .adl--asuka .free-tool__image { aspect-ratio: 857 / 531; background: #FFFFFF; }
.adl .adl--asuka .free-tool__image > img { object-fit: contain; }
/* 有料ツール：横長のバナーを小さめに（アイコンの大きさのまま横に少し広げる） */
.adl .adl--asuka .paid-item { grid-template-columns: 112px minmax(0, 1fr) auto; }
.adl .adl--asuka .paid-item__icon { width: 112px; height: auto; aspect-ratio: 4 / 3; border-radius: 12px; background: #FFFFFF; box-shadow: 0 1px 2px rgba(32, 39, 43, .05), 0 6px 14px rgba(32, 39, 43, .06); }
.adl .adl--asuka .paid-item__icon > img { object-fit: cover; padding: 0; }
@media (max-width: 767px) {
  .adl .adl--asuka .paid-item { grid-template-columns: 88px minmax(0, 1fr); }
  .adl .adl--asuka .paid-item__icon { width: 88px; }
}

/* スマホのヘッダーのロゴ：SWELL の初期設定では横長ロゴが小さくなりすぎるので、読める大きさにする */
@media (max-width: 959px) {
  .adl#body_wrap .l-header__logo { flex: 1 1 auto; display: flex; justify-content: center; }
  /* ロゴの枠の高さは SWELL の設定（スマホのロゴサイズ）に左右されるので、ここで決める。
     枠 52px の中に、高さ32pxのロゴと上下10pxずつの余白 */
  .adl#body_wrap .c-headLogo { max-width: 72vw; height: 52px; }
  .adl#body_wrap .c-headLogo__link { display: flex; align-items: center; height: 100%; padding: 10px 0; }
  .adl#body_wrap .c-headLogo__img { width: auto; height: 32px; max-width: 64vw; object-fit: contain; }
  /* ロゴの上下に余白をとる（ヘッダーの高さを少し広げる） */
  .adl#body_wrap .l-header__inner { min-height: 60px; padding-block: 4px; }
}

/* ---------- ブロックエディタ（編集画面）で画像を選びやすくする ----------
   表示用の枠（縦横比・重ね配置・画像の絶対配置）は編集画面では画像が潰れて見えなくなるため、
   編集画面の画像ブロック（.block-editor-block-list__block）だけ、普通の大きさで並べて表示する */
.adl :where(.adl--site, .adl--asuka) figure.wp-block-image.block-editor-block-list__block {
  position: relative !important; inset: auto !important; rotate: none !important; translate: none !important;
  width: 100% !important; max-width: 100% !important; height: auto !important; aspect-ratio: auto !important;
  min-height: 60px; overflow: visible !important;
}
.adl :where(.adl--site, .adl--asuka) figure.wp-block-image.block-editor-block-list__block img {
  position: static !important; display: block; width: 100% !important; height: auto !important; padding: 0 !important; opacity: 1 !important;
}
.adl :where(.adl--site, .adl--asuka) .block-editor-block-list__block:is(.work-gallery__item, .option__cards, .work-hero__visual, .stack, .card-stack, .circle-stack, .manga-pages) {
  aspect-ratio: auto !important; height: auto !important; min-height: 0 !important;
}

