/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */

@layer properties {
  @supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))) {
    *,:before,:after,::backdrop{
      --tw-rotate-x: initial;
      --tw-rotate-y: initial;
      --tw-rotate-z: initial;
      --tw-skew-x: initial;
      --tw-skew-y: initial;
      --tw-shadow: 0 0 #0000;
      --tw-shadow-color: initial;
      --tw-shadow-alpha: 100%;
      --tw-inset-shadow: 0 0 #0000;
      --tw-inset-shadow-color: initial;
      --tw-inset-shadow-alpha: 100%;
      --tw-ring-color: initial;
      --tw-ring-shadow: 0 0 #0000;
      --tw-inset-ring-color: initial;
      --tw-inset-ring-shadow: 0 0 #0000;
      --tw-ring-inset: initial;
      --tw-ring-offset-width: 0px;
      --tw-ring-offset-color: #fff;
      --tw-ring-offset-shadow: 0 0 #0000;
      --tw-blur: initial;
      --tw-brightness: initial;
      --tw-contrast: initial;
      --tw-grayscale: initial;
      --tw-hue-rotate: initial;
      --tw-invert: initial;
      --tw-opacity: initial;
      --tw-saturate: initial;
      --tw-sepia: initial;
      --tw-drop-shadow: initial;
      --tw-drop-shadow-color: initial;
      --tw-drop-shadow-alpha: 100%;
      --tw-drop-shadow-size: initial;
    }
  }
}

@layer theme {
  :root,:host{
    --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
    --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
    --spacing: .25rem;
    --default-font-family: var(--font-sans);
    --default-mono-font-family: var(--font-mono);
  }
}

@layer base {
  *,:after,:before,::backdrop{
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }
  ::file-selector-button{
    box-sizing: border-box;
    border: 0 solid;
    margin: 0;
    padding: 0;
  }
  html,:host{
    -webkit-text-size-adjust: 100%;
    tab-size: 4;
    line-height: 1.5;
    font-family: var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
    font-feature-settings: var(--default-font-feature-settings,normal);
    font-variation-settings: var(--default-font-variation-settings,normal);
    -webkit-tap-highlight-color: transparent;
  }
  hr{
    height: 0;
    color: inherit;
    border-top-width: 1px;
  }
  abbr:where([title]){
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  h1,h2,h3,h4,h5,h6{
    font-size: inherit;
    font-weight: inherit;
  }
  a{
    color: inherit;

    
    -webkit-text-decoration: inherit;
    text-decoration: inherit;
  }
  b,strong{
    font-weight: bolder;
  }
  code,kbd,samp,pre{
    font-family: var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
    font-feature-settings: var(--default-mono-font-feature-settings,normal);
    font-variation-settings: var(--default-mono-font-variation-settings,normal);
    font-size: 1em;
  }
  small{
    font-size: 80%;
  }
  sub,sup{
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0;
    position: relative;
  }
  sub{
    bottom: -.25em;
  }
  sup{
    top: -.5em;
  }
  table{
    text-indent: 0;
    border-color: inherit;
    border-collapse: collapse;
  }
  :-moz-focusring{
    outline: auto;
  }
  progress{
    vertical-align: baseline;
  }
  summary{
    display: list-item;
  }
  ol,ul,menu{
    list-style: none;
  }
  img,svg,video,canvas,audio,iframe,embed,object{
    vertical-align: middle;
    display: block;
  }
  img,video{
    max-width: 100%;
    height: auto;
  }
  button,input,select,optgroup,textarea{
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }
  ::file-selector-button{
    font: inherit;
    font-feature-settings: inherit;
    font-variation-settings: inherit;
    letter-spacing: inherit;
    color: inherit;
    opacity: 1;
    background-color: #0000;
    border-radius: 0;
  }
  :where(select:is([multiple],[size])) optgroup{
    font-weight: bolder;
  }
  :where(select:is([multiple],[size])) optgroup option{
    padding-inline-start: 20px;
  }
  ::file-selector-button{
    margin-inline-end: 4px;
  }
  ::placeholder{
    opacity: 1;
  }
  @supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px) {
    ::placeholder{
      color: currentColor;
    }
    @supports (color:color-mix(in lab, red, red)) {
      ::placeholder{
        color: color-mix(in oklab, currentcolor 50%, transparent);
      }
    }
  }
  textarea{
    resize: vertical;
  }
  ::-webkit-search-decoration{
    -webkit-appearance: none;
  }
  ::-webkit-date-and-time-value{
    min-height: 1lh;
    text-align: inherit;
  }
  ::-webkit-datetime-edit{
    display: inline-flex;
  }
  ::-webkit-datetime-edit-fields-wrapper{
    padding: 0;
  }
  ::-webkit-datetime-edit{
    padding-block: 0;
  }
  ::-webkit-datetime-edit-year-field{
    padding-block: 0;
  }
  ::-webkit-datetime-edit-month-field{
    padding-block: 0;
  }
  ::-webkit-datetime-edit-day-field{
    padding-block: 0;
  }
  ::-webkit-datetime-edit-hour-field{
    padding-block: 0;
  }
  ::-webkit-datetime-edit-minute-field{
    padding-block: 0;
  }
  ::-webkit-datetime-edit-second-field{
    padding-block: 0;
  }
  ::-webkit-datetime-edit-millisecond-field{
    padding-block: 0;
  }
  ::-webkit-datetime-edit-meridiem-field{
    padding-block: 0;
  }
  ::-webkit-calendar-picker-indicator{
    line-height: 1;
  }
  :-moz-ui-invalid{
    box-shadow: none;
  }
  button,input:where([type=button],[type=reset],[type=submit]){
    appearance: button;
  }
  ::file-selector-button{
    appearance: button;
  }
  ::-webkit-inner-spin-button{
    height: auto;
  }
  ::-webkit-outer-spin-button{
    height: auto;
  }
  [hidden]:where(:not([hidden=until-found])){
    display: none !important;
  }
}

@layer components;

:root{
  --ink: #17352d;
  --muted: #5f6e69;
  --primary: #0d513d;
  --primary-dark: #092f27;
  --accent: #d99032;
  --accent-soft: #f6e6c9;
  --paper: #fbfaf5;
  --surface: #f2f0e8;
  --white: #fff;
  --line: #dfe3dc;
  --display: "Yu Mincho", "Hiragino Mincho ProN", serif;
  --sans: "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif;
  --radius: 6px;
  --shadow: 0 22px 60px #142b221f;
}

.lp-manga-composition{
  --manga-balloon-fill: #ffffffb3;
  gap: clamp(24px,4vw,52px);
  width: min(960px,100% - 32px);
  margin: 0 auto 48px;
  display: grid;
}

.lp-manga-composition .manga-page{
  background: #fff;
  border: 1px solid #d9d1c2;
  width: 100%;
  margin: 0;
  position: relative;
  overflow: hidden;
  box-shadow: 0 24px 64px #21352d29;
  container-type: inline-size;
}

.lp-manga-composition .manga-page>img{
  width: 100%;
  height: auto;
  display: block;
}

.lp-manga-composition .manga-page--workflow>.manga-page-base{
  width: 102.937%;
  max-width: none;
}

.lp-manga-composition .manga-page--memory-composite{
  isolation: isolate;
}

.lp-manga-composition .manga-memory-current-panel{
  position: relative;
  container-type: inline-size;
}

.lp-manga-composition .manga-memory-current-panel>img{
  width: 100%;
  height: auto;
  display: block;
}

.lp-manga-composition .manga-memory-inset{
  z-index: 4;
  aspect-ratio: 3/2;
  background: #fff;
  border: max(2px,.35cqw) solid #8a6847;
  border-radius: clamp(6px,1.2cqw,12px);
  width: 50%;
  position: absolute;
  top: 3%;
  right: 2.5%;
  overflow: hidden;
  box-shadow: 0 0 0 max(2px,.35cqw) #fff8e8b8,0 .8cqw 2.2cqw #462e1c3d;
  container-type: inline-size;
}

.lp-manga-composition .manga-memory-inset>img{
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
}

.lp-manga-composition .manga-memory-kicker{
  z-index: 2;
  color: #fff;
  font: 800 clamp(7px,2.1cqw,16px)/1.4 var(--sans);
  letter-spacing: .08em;
  background: #1e493be0;
  border: 1px solid #ffffffe6;
  border-radius: 99px;
  margin: 0;
  padding: .55cqw 1.4cqw;
  position: absolute;
  top: 4%;
  right: 4%;
}

.lp-manga-composition .manga-memory-dialogue-card{
  --memory-speech-padding-top: 2.2cqw;
  z-index: 2;
  width: 24%;
  height: 70%;
  padding: var(--memory-speech-padding-top) 2.2cqw 2cqw;
  color: #171511;
  background: var(--manga-balloon-fill);
  font: 700 clamp(7px,2.25cqw,17px)/1.42 var(--display);
  border: max(1px,.24cqw) solid #171511e0;
  border-radius: 50%;
  place-items: center;
  margin: 0;
  display: grid;
  position: absolute;
  inset: 18% auto auto 52%;
  box-shadow: 0 .25cqw .65cqw #18140e2e;
}

.lp-manga-composition .manga-memory-speech:after{
  content: "";
  background: var(--manga-balloon-fill);
  border-top: 0;
  border-bottom: max(1px,.24cqw) solid #171511e0;
  border-right: max(1px,.24cqw) solid #171511e0;
  width: 2.4cqw;
  height: 2.4cqw;
  position: absolute;
  top: 46%;
  right: -1.1cqw;
  transform: rotate(-45deg);
}

.lp-manga-composition .manga-memory-dialogue-card b{
  color: #0d513d;
  font: 800 clamp(7px,1.75cqw,13px)/1.2 var(--sans);
  white-space: nowrap;
  writing-mode: horizontal-tb;
  background: #fffcf4f5;
  border: max(1px,.18cqw) solid #0d513db8;
  border-radius: 99px;
  padding: .3cqw 1.15cqw;
  position: absolute;
  top: 1.7cqw;
  left: 50%;
  transform: translate(-50%);
}

.lp-manga-composition .manga-memory-dialogue-card span{
  letter-spacing: .04em;
  text-orientation: upright;
  white-space: normal;
  writing-mode: vertical-rl;
  max-height: 100%;
  font-size: clamp(7px,2cqw,15px);
  line-height: 1.35;
  display: block;
}

.lp-manga-composition .manga-memory-inset .manga-memory-speech{
  margin-top: -8.112cqw;
  margin-left: -5.315cqw;
}

.lp-manga-composition .manga-dialogue-layer{
  pointer-events: none;
  position: absolute;
  inset: 0;
}

.lp-manga-composition .manga-balloon{
  z-index: 2;
  left: var(--balloon-x);
  top: var(--balloon-y);
  width: var(--balloon-width);
  height: var(--balloon-height);
  color: #171511;
  background: var(--manga-balloon-fill);
  filter: drop-shadow(0 .2cqw .26cqw #19140e29);
  transform: scale(var(--balloon-scale,1));
  transform-origin: var(--balloon-transform-origin,50% 0%);
  pointer-events: auto;
  border: max(1px,.22cqw) solid #171511;
  place-items: center;
  padding: 1.2cqw;
  display: grid;
  position: absolute;
}

.lp-manga-composition .manga-balloon-text{
  letter-spacing: .04em;
  white-space: pre-line;
  max-width: 100%;
  max-height: 100%;
  line-height: 1.48;
  display: block;
}

.lp-manga-composition .manga-balloon--oval,.lp-manga-composition .manga-balloon--thought{
  border-radius: 50%;
}

.lp-manga-composition .manga-balloon--oval>span,.lp-manga-composition .manga-balloon--thought>span{
  writing-mode: vertical-rl;
  text-orientation: upright;
  text-align: start;
  white-space: pre;
}

.lp-manga-composition .manga-memory-recall-layer .manga-balloon-text{
  margin-bottom: clamp(6px,3.85cqw,30px);
  margin-right: clamp(14px,6.4cqw,50px);
  line-height: 1.25;
}

@media (width<=600px) {
  .lp-manga-composition .manga-memory-recall-layer .manga-balloon-text{
    margin-bottom: 4px;
    margin-right: clamp(12px,4.2cqw,17px);
  }
}

.lp-manga-composition .manga-balloon--thought:before,.lp-manga-composition .manga-balloon--thought:after{
  content: "";
  background: #ffffffb3;
  border: max(1px,.2cqw) solid #171511;
  border-radius: 50%;
  position: absolute;
}

.lp-manga-composition .manga-balloon--thought:before{
  bottom: var(--thought-tail-main-bottom,-10%);
  left: var(--thought-tail-main,20%);
  aspect-ratio: 1;
  width: 12%;
}

.lp-manga-composition .manga-balloon--thought:after{
  bottom: var(--thought-tail-small-bottom,-17%);
  left: var(--thought-tail-small,12%);
  aspect-ratio: 1;
  width: 7%;
}

.lp-manga-composition .manga-balloon--thought.manga-balloon--tail-left{
  --thought-tail-main: -9%;
  --thought-tail-main-bottom: 34%;
  --thought-tail-small: -18%;
  --thought-tail-small-bottom: 23%;
}

.lp-manga-composition .manga-balloon--thought.manga-balloon--tail-right{
  --thought-tail-main: 97%;
  --thought-tail-main-bottom: 25%;
  --thought-tail-small: 108%;
  --thought-tail-small-bottom: 12%;
}

.lp-manga-composition .manga-balloon--caption,.lp-manga-composition .manga-balloon--label{
  border-radius: .35cqw;
}

.lp-manga-composition .manga-balloon--caption{
  background: #fffcf2b8;
  border-width: max(1px,.16cqw);
  padding: .8cqw 1.1cqw;
}

.lp-manga-composition .manga-balloon--caption>span,.lp-manga-composition .manga-balloon--label>span{
  text-align: start;
  width: 100%;
}

.lp-manga-composition .manga-balloon--label>span{
  text-align: center;
}

.lp-manga-composition .manga-balloon--label{
  color: #fff;
  text-shadow: 0 1px 3px #09251bb8;
  background: #21534185;
  border-color: #ffffffe0;
  border-radius: 99px;
  padding: .25cqw .8cqw;
}

.lp-manga-composition .manga-balloon--soft,.lp-manga-composition .manga-balloon--strong,.lp-manga-composition .manga-balloon--serif{
  font-family: Hiragino Mincho ProN,Yu Mincho,YuMincho,Noto Serif JP,serif;
}

.lp-manga-composition .manga-balloon--soft{
  font-weight: 600;
}

.lp-manga-composition .manga-balloon--strong{
  font-weight: 800;
}

.lp-manga-composition .manga-balloon--serif{
  font-weight: 650;
}

.lp-manga-composition .manga-balloon--small{
  font-size: clamp(7px,2.05cqw,20px);
}

.lp-manga-composition .manga-balloon--medium{
  font-size: clamp(8px,2.35cqw,23px);
}

@media (width<=640px) {
  .lp-manga-composition .manga-balloon[data-balloon-scale="0.72"]{
    transform: scale(.8);
  }
  .lp-manga-composition{
    gap: 18px;
    width: 100%;
    margin-bottom: 26px;
  }
  .lp-manga-composition .manga-page{
    border-inline: 0;
    box-shadow: 0 12px 30px #21352d1f;
  }
  .lp-manga-composition .manga-memory-inset{
    z-index: 1;
    width: 100%;
    box-shadow: none;
    border: 0;
    border-top: 3px solid #b28a62;
    border-radius: 0;
    position: relative;
    top: auto;
    right: auto;
  }
}

.layout-calm .manga-section.manga-section--bare,.manga-section.manga-section--bare{
  background: #f7f3e9;
  width: 100%;
  padding: 0;
  display: block;
  overflow: hidden;
}

.manga-section.manga-section--bare:before{
  display: none;
}

.manga-section--bare .lp-manga-composition{
  gap: clamp(20px,2.5vw,34px);
  width: 100%;
  max-width: none;
  margin: 0;
}

.manga-section--bare .manga-page{
  width: 100%;
  box-shadow: none;
  border-left: 0;
  border-right: 0;
  border-radius: 0;
}

*{
  box-sizing: border-box;
}

html{
  scroll-behavior: auto;
}

body{
  background: var(--paper);
  color: var(--ink);
  font-family: var(--sans);
  margin: 0;
}

a{
  color: inherit;
  text-decoration: none;
}

button,input,textarea,select{
  font: inherit;
}

button,summary{
  -webkit-tap-highlight-color: transparent;
}

.site{
  --hero-position: center;
  background: var(--paper);
  min-width: 320px;
  transition: background .35s,color .35s;
  overflow-x: clip;
}

.theme-calm{

  

  

  
  --display: "Yu Mincho", "Hiragino Mincho ProN", serif;
  --radius: 0px;

  --ink: #17352d;
  --muted: #5f6e69;
  --primary: #0d513d;
  --primary-dark: #092f27;
  --accent: #d99032;
  --accent-soft: #f6e6c9;
  --paper: #fbfaf5;
  --surface: #f2f0e8;
  --line: #dfe3dc;
}

.site-header{
  z-index: 19;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  background: #fffffff5;
  border-bottom: 1px solid #1432281a;
  align-items: center;
  gap: 34px;
  height: 84px;
  padding: 0 max(24px,50vw - 620px);
  display: flex;
  position: relative;
}

.brand{
  align-items: center;
  gap: 12px;
  display: flex;
}

.brand-mark{
  color: #fff;
  width: 44px;
  height: 44px;
  font: 700 19px/1 var(--display);
  letter-spacing: -.06em;
  background: linear-gradient(145deg,#2d5b4a 0%,#17382e 100%);
  border: 1px solid #b68a45;
  border-radius: 12px 12px 16px;
  place-items: center;
  display: grid;
  position: relative;
  overflow: hidden;
  box-shadow: inset 0 0 0 4px #fffdf814,0 6px 16px #17382e2e;
}

.brand-mark:before{
  content: "";
  border: 1px solid #dcbe84a6;
  border-radius: 8px 8px 11px;
  position: absolute;
  inset: 4px;
}

.brand-mark:after{
  content: "";
  background: #d9b873;
  border-radius: 999px;
  width: 10px;
  height: 2px;
  position: absolute;
  bottom: 7px;
  right: 7px;
  box-shadow: -4px -4px 0 -.5px #d9b873ad;
}

.brand-monogram{
  z-index: 2;
  color: #f6e5b9;
  letter-spacing: -.12em;
  text-shadow: 0 1px #00000047,0 0 12px #e0be782e;
  font: 600 23px/.9 Georgia,Times New Roman,serif;
  display: block;
  position: relative;
  transform: translate(-.04em);
}

.brand-copy{
  align-content: center;
  display: grid;
}

.brand b,.brand small,.brand-kicker{
  display: block;
}

.brand-kicker{
  color: #9a7338;
  font: 700 7px/1 var(--sans);
  letter-spacing: .18em;
  margin-bottom: 2px;
}

.brand b{
  font: 700 15px/1.25 var(--display);
  letter-spacing: .055em;
}

.brand small{
  color: var(--muted);
  letter-spacing: .035em;
  margin-top: 2px;
  font-size: 8px;
}

.site-header nav{
  gap: 28px;
  margin-left: auto;
  display: flex;
}

.site-header nav a{
  font-size: 11px;
  font-weight: 700;
}

.header-cta{
  color: #fff;
  background: var(--primary);
  border-radius: var(--radius);
  padding: 13px 19px;
  font-size: 12px;
  font-weight: 700;
}

.hero{
  isolation: isolate;
  align-items: center;
  min-height: 720px;
  display: grid;
  position: relative;
}

.hero-content{
  width: min(1240px,100% - 48px);
  margin: auto;
  padding: 80px 0 110px;
}

.eyebrow{
  color: var(--primary);
  letter-spacing: .09em;
  align-items: center;
  gap: 12px;
  font-size: 13px;
  font-weight: 700;
  display: flex;
}

.eyebrow span{
  background: var(--accent);
  width: 38px;
  height: 1px;
}

.hero h1{
  max-width: 690px;
  font: 700 clamp(43px,5vw,72px)/1.22 var(--display);
  letter-spacing: .02em;
  margin: 24px 0;
}

.hero h1 span{
  display: block;
}

.hero-lead{
  color: #3e514b;
  font-size: 17px;
  font-weight: 600;
  line-height: 1.9;
}

.button{
  border-radius: var(--radius);
  cursor: pointer;
  min-height: 58px;
  box-shadow: none;
  border: 0;
  justify-content: center;
  align-items: center;
  gap: 34px;
  padding: 0 27px;
  font-weight: 800;
  transition: transform .2s,box-shadow .2s;
  display: inline-flex;
}

.button:hover{
  box-shadow: 0 12px 30px var(--primary);
  transform: translateY(-2px);
}

@supports (color:color-mix(in lab, red, red)) {
  .button:hover{
    box-shadow: 0 12px 30px color-mix(in srgb,var(--primary) 24%,transparent);
  }
}

.button.primary{
  color: #fff;
  background: var(--primary);
}

.button i{
  color: var(--accent);
  font-size: 20px;
  font-style: normal;
}

.theme-calm .hero-content{
  border-left: 1px solid var(--accent);
  padding-left: 38px;
}

.manga-section{
  background: linear-gradient(120deg,#f5f0e5 0%,#fffdf8 62%);
  grid-template-columns: .72fr 1.28fr;
  align-items: start;
  gap: 76px;
  padding: 110px max(24px,50vw - 580px);
  display: grid;
  position: relative;
}

.manga-section:before{
  content: "MANGA STORY";
  color: #0d513d0b;
  font: 800 clamp(70px,10vw,150px)/1 var(--sans);
  letter-spacing: -.05em;
  writing-mode: vertical-rl;
  position: absolute;
  top: 70px;
  left: 2.5vw;
}

.layout-calm .hero-content{
  border-left: 4px solid var(--accent);
  padding-left: 42px;
}

.layout-calm .manga-section{
  text-align: center;
  grid-template-columns: 1fr;
}

@media (width>=901px) {
  .manga-section,.layout-calm .manga-section{
    padding-left: 0;
    padding-right: 0;
    display: block;
  }

  

  .section{
    padding: 140px max(48px,50vw - 640px);
  }
  .section-heading{
    margin-bottom: 62px;
  }
  .section-heading h2{
    font-size: clamp(40px,3.6vw,56px);
  }
  .section-heading p{
    font-size: 16px;
  }
  .centered p{
    max-width: 820px;
  }
  
  .worry-grid article{
    min-height: 238px;
    padding: 43px 38px;
  }
  .worry-grid h3{
    max-width: 330px;
    font-size: 21px;
  }
  .worry-grid p{
    font-size: 14px;
  }

  

  

  .price-copy h2{
    font-size: 52px;
  }
  .price-copy p{
    font-size: 16px;
  }
  .price-card{
    padding: 48px;
  }
  .price-card h3{
    font-size: 24px;
  }
  .price-card li{
    padding: 19px 0;
    font-size: 15px;
  }
  .flow-list li{
    min-height: 220px;
    padding: 38px 34px;
  }
  .flow-list li b{
    font-size: 22px;
  }
  .flow-list li p{
    font-size: 13px;
  }
  .faq-list{
    max-width: 1080px;
  }
  .faq-list summary{
    min-height: 92px;
    font-size: 16px;
  }
  .faq-list details>div p{
    font-size: 14px;
  }
  .contact-section{
    padding: 140px max(48px,50vw - 640px);
  }
  .contact-copy>p{
    font-size: 16px;
  }
  .contact-section form{
    padding: 48px;
  }
  .contact-section form h3{
    font-size: 26px;
  }
  .contact-section label{
    font-size: 14px;
  }
}

.section{
  padding: 112px max(24px,50vw - 580px);
}

.section-heading{
  margin-bottom: 50px;
}

.section-heading h2{
  font: 700 clamp(31px,3vw,45px)/1.45 var(--display);
  margin: 12px 0 0;
}

.section-heading p{
  color: var(--muted);
  margin: 0;
  font-size: 14px;
  line-height: 2;
}

.centered{
  text-align: center;
}

.centered p{
  max-width: 660px;
  margin: 15px auto 0;
}

.worry-grid{
  background: var(--line);
  border: 1px solid var(--line);
  grid-template-columns: repeat(3,1fr);
  gap: 1px;
  display: grid;
}

.worry-grid article{
  background: var(--white);
  min-height: 190px;
  padding: 34px 30px;
  position: relative;
}

.worry-grid article>span{
  color: var(--accent);
  font-size: 10px;
  font-weight: 800;
}

.worry-grid h3{
  max-width: 270px;
  font: 700 17px/1.6 var(--display);
  margin: 22px 0 12px;
}

.worry-grid p{
  color: var(--muted);
  margin: 0;
  font-size: 11px;
  line-height: 1.8;
}

.service-section{
  background: var(--surface);
}

.price-section{
  background: var(--surface);
  grid-template-columns: .85fr 1.15fr;
  align-items: center;
  gap: 90px;
  display: grid;
}

.price-copy h2{
  font: 700 clamp(31px,3vw,44px)/1.45 var(--display);
  margin: 14px 0 20px;
}

.price-copy p{
  color: var(--muted);
  font-size: 13px;
  line-height: 2;
}

.price-card{
  background: var(--white);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  padding: 38px;
}

.price-card h3{
  font: 700 19px/1.4 var(--display);
  margin: 0 0 22px;
}

.price-card ul{
  margin: 0;
  padding: 0;
  list-style: none;
}

.price-card li{
  border-top: 1px solid var(--line);
  padding: 15px 0;
  font-size: 12px;
  font-weight: 700;
}

.price-card li span{
  color: var(--accent);
  margin-right: 18px;
  font-size: 10px;
}

.price-note{
  background: var(--accent-soft);
  margin-top: 18px;
  padding: 18px;
}

.price-note b{
  font-size: 11px;
}

.price-note p{
  color: var(--muted);
  margin: 5px 0 0;
  font-size: 9px;
  line-height: 1.6;
}

.flow-list{
  counter-reset: flow;
  grid-template-columns: repeat(3,1fr);
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
  display: grid;
}

.flow-list li{
  background: var(--white);
  border: 1px solid var(--line);
  border-radius: var(--radius);
  min-height: 180px;
  padding: 30px 28px;
  position: relative;
}

.flow-list li span{
  color: var(--accent);
  letter-spacing: .12em;
  font-size: 9px;
  font-weight: 900;
}

.flow-list li b{
  font: 700 18px/1.4 var(--display);
  margin: 25px 0 9px;
  display: block;
}

.flow-list li p{
  color: var(--muted);
  margin: 0;
  font-size: 10px;
  line-height: 1.8;
}

.faq-section{
  background: var(--surface);
}

.faq-list{
  max-width: 900px;
  margin: auto;
}

.faq-list details{
  border-top: 1px solid var(--line);
  background: var(--white);
}

.faq-list details:last-child{
  border-bottom: 1px solid var(--line);
}

.faq-list summary{
  cursor: pointer;
  align-items: center;
  gap: 18px;
  min-height: 78px;
  padding: 0 24px;
  font-size: 13px;
  font-weight: 700;
  list-style: none;
  display: flex;
}

.faq-list summary::-webkit-details-marker{
  display: none;
}

.faq-list summary span,.faq-list div>span{
  color: var(--accent);
  font: 700 20px/1 var(--display);
}

.faq-list summary i{
  color: var(--primary);
  margin-left: auto;
  font-size: 20px;
  font-style: normal;
}

.faq-list details[open] summary i{
  transform: rotate(45deg);
}

.faq-list details>div{
  gap: 20px;
  padding: 0 24px 24px;
  display: flex;
}

.faq-list details>div p{
  color: #000000;
  margin: 0;
  font-size: 16px;
  line-height: 1.9;
}

.contact-section{
  color: #fff;
  background: var(--primary-dark);
  grid-template-columns: .9fr 1.1fr;
  gap: 100px;
  padding: 110px max(24px,50vw - 580px);
  display: grid;
}

.contact-copy h2{
  font: 700 clamp(35px,4vw,54px)/1.4 var(--display);
  margin: 16px 0 22px;
}

.contact-copy>p{
  color: #ffffffad;
  font-size: 13px;
  line-height: 2;
}

.contact-facts{
  gap: 12px;
  margin: 34px 0 22px;
  display: flex;
}

.contact-facts span{
  border: 1px solid #ffffff2e;
  min-width: 150px;
  padding: 15px;
  font-size: 10px;
}

.contact-facts b{
  color: var(--accent);
  font-size: 19px;
  display: block;
}

.contact-copy>small{
  color: #ffffff73;
  font-size: 9px;
  line-height: 1.8;
}

.contact-section form{
  color: var(--ink);
  background: var(--white);
  border-radius: var(--radius);
  padding: 40px;
}

.contact-section form h3{
  font: 700 21px/1.4 var(--display);
  margin: 0;
}

.contact-section form>p{
  color: var(--muted);
  margin: 7px 0 27px;
  font-size: 10px;
}

.contact-section label{
  margin-top: 16px;
  font-size: 11px;
  font-weight: 700;
  display: block;
}

.contact-section label span{
  color: #c94f3d;
  margin-left: 7px;
  font-size: 9px;
}

.contact-section input,.contact-section textarea,.contact-section select{
  width: 100%;
  color: var(--ink);
  border: 1px solid var(--line);
  border-radius: calc(var(--radius) / 2);
  background: #fafafa;
  outline: none;
  margin-top: 7px;
  padding: 13px 14px;
}

.contact-section input:focus,.contact-section textarea:focus,.contact-section select:focus{
  border-color: var(--primary);
  box-shadow: 0 0 0 3px var(--primary);
}

@supports (color:color-mix(in lab, red, red)) {
  .contact-section input:focus,.contact-section textarea:focus,.contact-section select:focus{
    box-shadow: 0 0 0 3px color-mix(in srgb,var(--primary) 10%,transparent);
  }
}

.form-row{
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  display: grid;
}

.contact-section form .button{
  width: 100%;
  margin-top: 24px;
}

.contact-section form>small{
  color: var(--muted);
  text-align: center;
  margin-top: 10px;
  font-size: 8px;
  display: block;
}

footer{
  color: #fff;
  background: #0b1612;
  grid-template-columns: 1fr auto;
  align-content: center;
  align-items: center;
  gap: 8px 30px;
  min-height: 180px;
  padding: 42px max(24px,50vw - 580px);
  display: grid;
}

.footer-brand{
  grid-row: 1/3;
}

.footer-brand .brand-mark{
  background: var(--accent);
  color: #1b241f;
}

.footer-brand small,footer p,footer>small{
  color: #ffffff73;
}

footer p,footer>small{
  text-align: right;
  margin: 0;
  font-size: 9px;
}

.mobile-cta{
  display: none;
}

@media (width<=980px) {

  .site-header nav{
    display: none;
  }
  .hero{
    min-height: 650px;
  }
  .hero-content{
    padding-top: 60px;
  }

  
  .worry-grid{
    grid-template-columns: repeat(2,1fr);
  }
  
  .price-section,.contact-section{
    grid-template-columns: 1fr;
    gap: 50px;
  }
  .manga-section{
    grid-template-columns: 1fr;
  }
  
}

@media (width<=640px) {

  
  .site-header{
    height: 64px;
    padding: 0 14px;
  }
  .brand b{
    font-size: 12px;
  }
  .brand small{
    font-size: 7px;
  }
  .brand-mark{
    border-radius: 10px 10px 13px;
    width: 36px;
    height: 36px;
    font-size: 15px;
  }
  .brand-kicker{
    display: none;
  }
  .header-cta{
    margin-left: auto;
    padding: 10px 12px;
    font-size: 10px;
  }
  .hero{
    align-items: end;
    min-height: 660px;
  }

  .hero-content{
    width: 100%;
    padding: 310px 20px 42px;
  }
  .theme-calm .hero-content{
    border: 0;
    padding-left: 38px;
  }
  .eyebrow{
    font-size: 10px;
  }
  .eyebrow span{
    width: 24px;
  }
  .hero h1{
    margin: 16px 0;
    font-size: 34px;
    line-height: 1.32;
  }
  .hero-lead{
    font-size: 13px;
    line-height: 1.8;
  }

  

  .manga-section{
    gap: 38px;
    padding: 70px 18px;
  }
  .manga-section:before{
    display: none;
  }

  .section{
    padding: 75px 18px;
  }
  .section-heading{
    margin-bottom: 34px;
  }
  .section-heading h2{
    font-size: 28px;
    line-height: 1.5;
  }
  .section-heading p{
    font-size: 11px;
    line-height: 1.9;
  }
  .worry-grid,.flow-list{
    grid-template-columns: 1fr;
  }
  .worry-grid{
    gap: 1px;
  }
  .worry-grid article{
    min-height: auto;
    padding: 26px 24px;
  }

  
  .price-section{
    gap: 35px;
  }
  .price-card{
    padding: 27px 22px;
  }
  .contact-section{
    padding: 75px 18px 100px;
  }
  .contact-section form{
    padding: 28px 20px;
  }
  .form-row{
    grid-template-columns: 1fr;
    gap: 0;
  }
  .contact-facts span{
    flex: 1;
    min-width: 0;
  }
  footer{
    grid-template-columns: 1fr;
    padding: 40px 20px 100px;
  }
  .footer-brand{
    grid-row: auto;
  }
  footer p,footer>small{
    text-align: left;
  }
  .mobile-cta{
    z-index: 30;
    padding: 8px 10px max(8px,env(safe-area-inset-bottom));
    color: #fff;
    background: #092f27f7;
    align-items: center;
    gap: 10px;
    display: flex;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    box-shadow: 0 -8px 28px #0000002e;
  }
  .mobile-cta span{
    flex: 1;
    font-size: 10px;
    font-weight: 800;
  }
  .mobile-cta small{
    color: #ffffff9e;
    font-size: 8px;
    font-weight: 400;
    display: block;
  }
  .mobile-cta a{
    color: #17241f;
    background: var(--accent);
    border-radius: var(--radius);
    padding: 12px 20px;
    font-size: 11px;
    font-weight: 800;
  }
}

@media (prefers-reduced-motion:reduce) {
  html{
    scroll-behavior: auto;
  }
  *{
    transition: none !important;
  }
}

@media (width>=981px) {

  #concerns,#service,#price,#flow,#faq,.contact-section{
    position: relative;
    overflow: hidden;
  }
  #concerns:before,#service:before,#flow:before{
    color: #0d513d0e;
    font: 900 118px/1 var(--sans);
    letter-spacing: -.08em;
    position: absolute;
    top: 26px;
    right: -18px;
  }
  #concerns:before{
    content: "EMPATHY";
  }
  #service:before{
    content: "SOLUTION";
  }
  
  #flow:before{
    content: "6 STEPS";
  }
  #concerns{
    background: linear-gradient(135deg,#fff9ed 0 48%,#edf7fb 48% 100%);
  }
  #service{
    background: #fffdf8;
  }

  #price{
    background: linear-gradient(135deg,#fff7df,#f6ece0);
  }
  #flow{
    background: #fffdf8;
  }
  #faq{
    background: linear-gradient(#eaf5f2,#f8fbf8);
  }
  .section-heading{
    z-index: 2;
    position: relative;
  }
  
  .section-heading h2,.price-copy h2{
    max-width: 780px;
    font-family: var(--sans);
    letter-spacing: -.035em;
    font-weight: 900;
  }

  .worry-grid{
    z-index: 2;
    background: 0 0;
    border: 0;
    gap: 22px;
    position: relative;
  }
  .worry-grid article{
    border: 3px solid var(--primary);
    border-radius: 28px 28px 28px 7px;
    min-height: 265px;
    padding: 42px 38px;
    box-shadow: 9px 9px #0d513d1f;
  }
  .worry-grid article:nth-child(3n/**/+1){
    background: #fff4ef;
    border-color: #df7656;
  }
  .worry-grid article:nth-child(3n/**/+2){
    background: #eef8fd;
    border-color: #6aaec8;
  }
  .worry-grid article:nth-child(3n){
    background: #fff8cf;
    border-color: #d8a82c;
  }
  .worry-grid article>span{
    color: #fff;
    background: var(--primary);
    border-radius: 50%;
    place-items: center;
    width: 42px;
    height: 42px;
    font-size: 13px;
    display: grid;
  }
  .worry-grid h3{
    max-width: none;
    font-family: var(--sans);
    margin: 22px 0 13px;
    font-size: 23px;
    font-weight: 900;
  }
  .worry-grid p{
    color: #42564f;
    font-size: 15px;
  }

  

  

  

  

  #price{
    grid-template-columns: 1fr 1fr;
    gap: 70px;
  }
  .price-copy{
    border: 3px solid var(--primary);
    background: #fff;
    border-radius: 30px 30px 8px;
    padding: 45px;
    box-shadow: 12px 12px #efbc59;
  }
  .price-copy h2{
    font-size: 48px;
  }
  .price-card{
    border: 3px solid var(--primary);
    border-radius: 30px;
    box-shadow: 12px 12px #0d513d24;
  }
  .price-card h3{
    font-family: var(--sans);
    border-bottom: 6px solid #f1c45d;
    padding-bottom: 20px;
    font-weight: 900;
  }
  .price-card li{
    font-size: 16px;
  }
  .price-note{
    background: #eaf7f3;
    border-radius: 14px;
  }
  .price-table{
    color: var(--ink);
    border: 4px solid var(--primary);
    background: #fff;
    border-radius: 34px;
    grid-column: 1/-1;
    margin-top: 30px;
    padding: 50px;
    box-shadow: 14px 14px #efbc59;
  }
  .price-table-heading{
    grid-template-columns: 1fr 1fr;
    align-items: end;
    gap: 8px 60px;
    margin-bottom: 34px;
    display: grid;
  }
  .price-table-heading span{
    color: #c77e38;
    letter-spacing: .18em;
    font-size: 11px;
    font-weight: 900;
  }
  .price-table-heading h3{
    font: 900 34px/1.35 var(--sans);
    grid-column: 1;
    margin: 0;
  }
  .price-table-heading p{
    color: var(--muted);
    grid-area: 1/2/3;
    margin: 0;
    font-size: 14px;
    line-height: 1.9;
  }
  .price-table-grid{
    grid-template-columns: repeat(3,1fr);
    gap: 18px;
    display: grid;
  }
  .price-table-grid article{
    text-align: center;
    border: 3px solid var(--primary);
    background: #fff9ce;
    border-radius: 22px;
    flex-direction: column;
    align-items: center;
    min-height: 255px;
    padding: 28px 28px 25px;
    display: flex;
    position: relative;
    box-shadow: 7px 7px #0d513d21;
  }
  .price-table-grid article:nth-child(3n/**/+2){
    background: #eaf7fc;
  }
  .price-table-grid article:nth-child(3n){
    background: #fff1eb;
  }
  .price-table-grid article>span{
    color: #fff;
    background: var(--primary);
    border-radius: 50%;
    place-items: center;
    width: 31px;
    height: 31px;
    font-size: 10px;
    font-weight: 900;
    display: grid;
    position: absolute;
    top: 16px;
    left: 17px;
  }
  .price-table-grid b{
    color: var(--primary);
    font: 900 34px/1.2 var(--sans);
  }
  .price-table-grid p{
    color: #4e5d58;
    min-height: 45px;
    margin: 15px 0 17px;
    font-size: 13px;
    font-weight: 700;
    line-height: 1.7;
  }
  .price-table-grid strong{
    color: #e2673c;
    font: 900 28px/1.2 var(--sans);
    margin-top: auto;
  }
  .price-table-grid small{
    color: var(--muted);
    margin-top: 7px;
    font-size: 9px;
  }
  .price-includes{
    color: #fff;
    background: var(--primary);
    border-radius: 24px;
    margin-top: 38px;
    padding: 34px;
  }
  .price-includes h4{
    text-align: center;
    font: 900 25px/1.4 var(--sans);
    margin: 0 0 23px;
  }
  .price-includes>div{
    grid-template-columns: repeat(3,1fr);
    gap: 12px;
    display: grid;
  }
  .price-includes span{
    color: var(--primary);
    text-align: center;
    background: #fff;
    border-radius: 999px;
    padding: 14px 15px;
    font-size: 13px;
    font-weight: 900;
  }
  .price-table-caution{
    color: #5b645f;
    background: #f4f1e8;
    border-radius: 13px;
    margin: 25px 0 0;
    padding: 18px 20px;
    font-size: 12px;
    line-height: 1.8;
  }
  .flow-list{
    z-index: 2;
    gap: 22px;
    position: relative;
  }
  .flow-list li{
    border: 3px solid var(--primary);
    border-radius: 24px;
    min-height: 245px;
    padding: 40px 36px;
    box-shadow: 8px 8px #0d513d1f;
  }
  .flow-list li:nth-child(3n/**/+1){
    background: #fff1eb;
  }
  .flow-list li:nth-child(3n/**/+2){
    background: #eaf7fc;
  }
  .flow-list li:nth-child(3n){
    background: #fff6c9;
  }
  .flow-list li span{
    color: #fff;
    background: var(--primary);
    border-radius: 99px;
    padding: 7px 11px;
    font-size: 11px;
    display: inline-block;
  }
  .flow-list li b{
    font-family: var(--sans);
    margin-top: 30px;
    font-size: 24px;
    font-weight: 900;
  }
  .flow-list li p{
    font-size: 14px;
  }
  .faq-list{
    border: 3px solid var(--primary);
    background: #fff;
    border-radius: 28px;
    max-width: 1160px;
    padding: 24px;
    box-shadow: 12px 12px #f0bd59;
  }
  .faq-list details{
    border: 2px solid #d7e4df;
    border-radius: 15px;
    margin: 10px 0;
    overflow: hidden;
  }
  .faq-list details:last-child{
    border-bottom: 2px solid #d7e4df;
  }
  .faq-list summary{
    min-height: 94px;
    padding: 0 30px;
    font-size: 17px;
  }
  .faq-list summary span{
    color: #fff;
    background: var(--primary);
    border-radius: 50%;
    place-items: center;
    width: 42px;
    height: 42px;
    font-size: 18px;
    display: grid;
  }
  .contact-section{
    background: linear-gradient(120deg,var(--primary-dark) 0 53%,#f3c459 53% 100%);
    gap: 70px;
  }
  .contact-copy h2{
    font-family: var(--sans);
    letter-spacing: -.03em;
    font-weight: 900;
  }
  .contact-facts span{
    background: #ffffff14;
    border: 2px solid #ffffff59;
    border-radius: 16px;
    padding: 20px;
    font-size: 13px;
  }
  .contact-section form{
    outline: 3px solid var(--primary-dark);
    border: 4px solid #fff;
    border-radius: 28px;
    box-shadow: 14px 14px #092f273d;
  }
  .contact-section form h3{
    font-family: var(--sans);
    font-weight: 900;
  }
  .contact-section input,.contact-section textarea,.contact-section select{
    background: #fff;
    border: 2px solid #d7dfdb;
    border-radius: 12px;
    padding: 16px;
  }
  .contact-section form .button{
    color: #fff;
    background: var(--primary);
    min-height: 72px;
    font-size: 16px;
  }
}

@media (width<=640px) {

  

  

  

  .hero{
    min-height: 620px;
  }
  .hero h1{
    font-size: clamp(29px,8.6vw,34px);
  }
  .hero-content{
    padding-left: 18px;
    padding-right: 18px;
  }
  .theme-calm .hero-content{
    padding-left: 18px;
  }
  .manga-section{
    padding: 58px 0;
  }

  

  
  #price{
    display: block;
  }
  .price-copy{
    border: 2px solid var(--primary);
    border-radius: 20px 20px 6px;
    padding: 25px 21px;
    box-shadow: 7px 7px #efbc59;
  }
  .price-copy h2{
    font-size: 28px;
  }
  .price-copy p{
    font-size: 11px;
  }
  .price-card{
    border: 2px solid var(--primary);
    border-radius: 20px;
    margin-top: 28px;
    padding: 25px 20px;
    box-shadow: 7px 7px #0d513d24;
  }
  .price-card h3{
    font-size: 18px;
  }
  .price-card li{
    font-size: 11px;
  }
  .price-table{
    color: var(--ink);
    border: 2px solid var(--primary);
    background: #fff;
    border-radius: 20px;
    margin-top: 30px;
    padding: 25px 13px;
    box-shadow: 7px 7px #efbc59;
  }
  .price-table-heading{
    text-align: center;
    margin-bottom: 20px;
    display: block;
  }
  .price-table-heading span{
    color: #c77e38;
    letter-spacing: .16em;
    font-size: 8px;
    font-weight: 900;
  }
  .price-table-heading h3{
    font: 900 24px/1.35 var(--sans);
    margin: 5px 0 8px;
  }
  .price-table-heading p{
    color: var(--muted);
    margin: 0;
    font-size: 9px;
    line-height: 1.7;
  }
  .price-table-grid{
    grid-template-columns: 1fr 1fr;
    gap: 9px;
    display: grid;
  }
  .price-table-grid article{
    text-align: center;
    border: 2px solid var(--primary);
    background: #fff9ce;
    border-radius: 14px;
    flex-direction: column;
    align-items: center;
    min-height: 175px;
    padding: 19px 10px 15px;
    display: flex;
    position: relative;
    box-shadow: 4px 4px #0d513d1f;
  }
  .price-table-grid article:nth-child(3n/**/+2){
    background: #eaf7fc;
  }
  .price-table-grid article:nth-child(3n){
    background: #fff1eb;
  }
  .price-table-grid article>span{
    color: #fff;
    background: var(--primary);
    border-radius: 50%;
    place-items: center;
    width: 22px;
    height: 22px;
    font-size: 7px;
    font-weight: 900;
    display: grid;
    position: absolute;
    top: 7px;
    left: 7px;
  }
  .price-table-grid b{
    color: var(--primary);
    font: 900 24px/1.2 var(--sans);
  }
  .price-table-grid p{
    color: #4e5d58;
    min-height: 44px;
    margin: 10px 0;
    font-size: 9px;
    font-weight: 700;
    line-height: 1.55;
  }
  .price-table-grid strong{
    color: #e2673c;
    font: 900 17px/1.2 var(--sans);
    margin-top: auto;
  }
  .price-table-grid small{
    color: var(--muted);
    margin-top: 4px;
    font-size: 7px;
  }
  .price-includes{
    color: #fff;
    background: var(--primary);
    border-radius: 16px;
    margin-top: 22px;
    padding: 20px 12px;
  }
  .price-includes h4{
    text-align: center;
    font: 900 18px/1.4 var(--sans);
    margin: 0 0 14px;
  }
  .price-includes>div{
    grid-template-columns: 1fr 1fr;
    gap: 7px;
    display: grid;
  }
  .price-includes span{
    color: var(--primary);
    text-align: center;
    background: #fff;
    border-radius: 999px;
    padding: 10px 7px;
    font-size: 8px;
    font-weight: 900;
  }
  .price-table-caution{
    color: #5b645f;
    background: #f4f1e8;
    border-radius: 10px;
    margin: 16px 0 0;
    padding: 13px;
    font-size: 8px;
    line-height: 1.7;
  }
  .faq-list{
    border-width: 2px;
    border-radius: 18px;
    padding: 8px;
    box-shadow: 6px 6px #f0bd59;
  }
  .faq-list summary{
    gap: 10px;
    min-height: 72px;
    padding: 0 14px;
    font-size: 11px;
  }
  .faq-list summary span{
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    font-size: 13px;
  }
  .contact-section{
    background: var(--primary-dark);
  }
  .contact-section form .button{
    min-height: 60px;
    font-size: 12px;
  }
}

.layout-calm{
  --primary: #354955;
  --primary-dark: #24343d;
  --accent: #a98b5f;
  --accent-soft: #e9e0d0;
  --paper: #f6f3ec;
  --surface: #ebe8e1;
  --line: #d3cfc5;
}

@media (width>=981px) {

  

  

  

  

  .layout-calm #concerns,.layout-calm #service,.layout-calm #price,.layout-calm #flow,.layout-calm #faq{
    background: var(--paper);
  }
  .layout-calm #concerns:before,.layout-calm #service:before,.layout-calm #flow:before{
    color: #3549550b;
    font-family: var(--display);
    right: 3vw;
  }
  
  .layout-calm .section-heading h2,.layout-calm .price-copy h2{
    font-family: var(--display);
    letter-spacing: .02em;
    font-weight: 600;
  }
  
  .layout-calm .worry-grid{
    border-top: 1px solid var(--line);
    background: 0 0;
    gap: 0;
  }
  .layout-calm .worry-grid article{
    border: 0;
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    box-shadow: none;
    background: 0 0;
    border-radius: 0;
  }
  .layout-calm .worry-grid article:nth-child(n){
    background: 0 0;
  }
  .layout-calm .worry-grid article>span{
    color: #9c815c;
    width: auto;
    height: auto;
    font: 600 24px/1 var(--display);
    background: 0 0;
    border-radius: 0;
    display: block;
  }
  .layout-calm .worry-grid h3{
    font-family: var(--display);
    font-weight: 600;
  }

  

  
  .layout-calm .price-copy,.layout-calm .price-card,.layout-calm .price-table{
    border: 1px solid var(--line);
    box-shadow: none;
    background: #fbfaf6;
    border-radius: 0;
  }
  .layout-calm .price-table-grid article{
    border: 0;
    border-top: 1px solid var(--line);
    box-shadow: none;
    background: 0 0;
    border-radius: 0;
  }
  .layout-calm .price-table-grid article:nth-child(n){
    background: 0 0;
  }
  .layout-calm .flow-list{
    border-top: 1px solid var(--line);
    gap: 0;
  }
  .layout-calm .flow-list li{
    border: 0;
    border-right: 1px solid var(--line);
    border-bottom: 1px solid var(--line);
    box-shadow: none;
    background: 0 0;
    border-radius: 0;
  }
  .layout-calm .flow-list li:nth-child(n){
    background: 0 0;
  }
  .layout-calm .faq-list{
    border: 1px solid var(--line);
    box-shadow: none;
    background: #fbfaf6;
    border-radius: 0;
  }
  .layout-calm .contact-section{
    background: #2f414b;
  }
  .layout-calm .contact-section form{
    box-shadow: none;
    border: 0;
    border-radius: 0;
    outline: 0;
  }

  

  

  

  

  

  

  

  

}

@media (width<=640px) {
  
  .layout-calm #concerns,.layout-calm #service,.layout-calm #price,.layout-calm #flow,.layout-calm #faq{
    background: #f6f3ec;
  }

}

@media (width>=981px) {
  .section{
    padding-top: 94px;
    padding-bottom: 94px;
  }
  .section-heading{
    margin-bottom: 38px;
  }
  .section-heading.centered{
    text-align: center;
    max-width: 820px;
    margin-left: auto;
    margin-right: auto;
  }

  .worry-grid{
    grid-template-columns: repeat(2,1fr);
    gap: 12px;
  }
  .worry-grid article{
    grid-template-rows: auto auto;
    grid-template-columns: 48px 1fr;
    align-content: center;
    column-gap: 18px;
    min-height: 0;
    padding: 28px 30px;
    display: grid;
  }
  .worry-grid article>span{
    grid-row: 1/3;
    align-self: start;
    width: 40px;
    height: 40px;
  }
  .worry-grid h3{
    margin: 0 0 8px;
    font-size: 19px;
    line-height: 1.5;
  }
  .worry-grid p{
    margin: 0;
    font-size: 13px;
    line-height: 1.75;
  }

  

  

  
  #price{
    align-items: start;
  }
  .price-copy,.price-card{
    min-height: 0;
  }
  .price-table{
    margin-top: 18px;
    padding: 38px;
  }
  .price-table-heading{
    margin-bottom: 26px;
  }
  .price-table-grid{
    gap: 14px;
  }
  .price-table-grid article{
    justify-content: flex-start;
    min-height: 218px;
    padding: 25px 20px 22px;
  }
  .price-table-grid p{
    min-height: 0;
    margin: 12px 0;
  }
  .price-table-grid strong{
    margin-top: auto;
  }
  .price-includes{
    margin-top: 28px;
    padding: 27px;
  }
  .flow-list{
    gap: 14px;
  }
  .flow-list li{
    text-align: center;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    min-height: 200px;
    padding: 31px 26px;
    display: flex;
  }
  .flow-list li b{
    margin: 22px 0 9px;
  }
  .flow-list li p{
    max-width: 260px;
    margin: 0 auto;
    line-height: 1.75;
  }
  .faq-list{
    max-width: 1000px;
    padding: 12px 20px;
  }
  .faq-list details{
    border-left: 0;
    border-right: 0;
    border-radius: 0;
    margin: 0;
  }
  .faq-list summary{
    text-align: left;
    min-height: 78px;
  }
  .faq-list details>div{
    text-align: left;
  }
  .contact-copy{
    align-self: center;
  }
  .contact-section form{
    align-self: start;
  }
}

@media (width<=640px) {
  .section{
    padding-top: 62px;
    padding-bottom: 62px;
  }
  .section-heading{
    margin-bottom: 28px;
  }
  .section-heading.centered{
    text-align: center;
  }
  .worry-grid article{
    grid-template-rows: auto auto;
    grid-template-columns: 38px 1fr;
    column-gap: 12px;
    min-height: 0;
    padding: 22px 18px;
    display: grid;
  }
  .worry-grid article>span{
    grid-row: 1/3;
    align-self: start;
    width: 34px;
    height: 34px;
  }
  .worry-grid h3{
    margin: 0 0 6px;
    font-size: 15px;
  }
  .worry-grid p{
    font-size: 10px;
    line-height: 1.7;
  }

  

  
  .price-table-grid article{
    min-height: 160px;
  }
  .flow-list li{
    text-align: center;
    min-height: 0;
    padding: 25px 20px;
  }
  .flow-list li b{
    margin: 18px 0 8px;
  }
  .faq-list summary{
    text-align: left;
  }
}

.hero.hero-manga-first{
  background: radial-gradient(circle at 12% 18%,#d9903221,#0000 28%),linear-gradient(135deg,#f8f4e9 0%,#fffdf8 54%,#ece4d5 100%);
  grid-template-columns: 1fr;
  align-items: center;
  gap: 0;
  min-height: 720px;
  padding: 56px max(32px,50vw - 680px);
  display: grid;
  position: relative;
  overflow: hidden;
}

.hero-manga-first:before{
  content: none;
  display: none;
}

.hero-manga-first .hero-content{
  z-index: 2;
  border-left: 4px solid var(--accent);
  background: linear-gradient(90deg,#f8f4e9f0 0%,#f8f4e9c7 72%,#f8f4e900 100%);
  grid-area: 1/1;
  width: min(660px,50vw);
  margin: 0;
  padding: 34px 0 36px 34px;
  position: relative;
}

.hero-manga-first .hero-content h1{
  text-shadow: 0 2px 18px #ffffffe6;
  max-width: 610px;
  margin: 22px 0;
  font-size: 45px;
  line-height: 1.32;
}

.hero-manga-first .hero-lead{
  max-width: 560px;
  font-size: 16px;
}

.hero-manga-grid{
  z-index: 0;
  opacity: .19;
  pointer-events: none;
  width: min(72vw,1040px);
  max-width: none;
  display: block;
  position: absolute;
  top: 50%;
  right: max(-90px,50vw - 750px);
  transform: translateY(-50%)rotate(.35deg);
}

.hero-manga-image{
  filter: saturate(.86)contrast(.95)brightness(1.08);
  border: 0;
  width: 100%;
  height: auto;
  display: block;
}

.hero-credentials{
  color: #000000;
  border-top: 1px solid #0d513d2e;
  flex-wrap: wrap;
  gap: 8px 18px;
  margin-top: 24px;
  padding-top: 16px;
  font-size: 9px;
  line-height: 1.5;
  display: flex;
}

.hero-credentials span{
  align-items: center;
  gap: 5px;
  display: flex;
}

.hero-credentials i{
  color: #fff;
  background: #a87b35;
  border-radius: 50%;
  place-items: center;
  width: 30px;
  height: 30px;
  font-size: 18px;
  font-style: normal;
  font-weight: 900;
  display: grid;
}

.hero-credentials b{
  color: var(--primary);
  font-size: 10px;
}

@media (width<=980px) {
  .hero.hero-manga-first{
    grid-template-columns: 1fr;
    gap: 0;
    min-height: 660px;
    padding: 0;
  }
  .hero-manga-grid{
    opacity: .15;
    width: 125%;
    max-width: none;
    padding: 0;
    top: 36%;
    right: -38%;
    transform: translateY(-50%)rotate(.35deg);
  }
  .hero-manga-first .hero-content{
    border-left: 4px solid var(--accent);
    background: linear-gradient(90deg,#fbfaf5f2 0%,#fbfaf5d1 72%,#fbfaf561 100%);
    border-top: 0;
    grid-area: 1/1;
    width: 100%;
    padding: 54px 32px 64px;
  }
}

@media (width<=640px) {
  .hero.hero-manga-first{
    align-items: stretch;
    display: grid;
  }
  .hero-manga-grid{
    opacity: .13;
    width: 184%;
    padding: 0;
    top: 24%;
    right: -76%;
  }
  .hero-manga-first .hero-content{
    padding: 38px 18px 48px 22px;
  }
  .hero-manga-first .hero-content h1{
    margin: 16px 0;
    font-size: clamp(31px,9.3vw,39px);
    line-height: 1.32;
  }
  .hero-manga-first .hero-lead{
    font-size: 11px;
  }

  .hero-credentials{
    gap: 7px;
    margin-top: 20px;
    padding-top: 13px;
    display: grid;
  }
  .hero-credentials span{
    font-size: 10px;
  }
  .hero-credentials b{
    font-size: 11px;
  }
}

.layout-calm .manga-section{
  padding-top: 76px;
  padding-bottom: 76px;
}

.section-cta b{
  text-wrap: balance;
}

.section-cta a{
  box-sizing: border-box;
  width: 100%;
  max-width: none;
}

.layout-calm .section-heading h2,.layout-calm .price-copy h2{
  font-size: clamp(30px,2.65vw,40px);
  line-height: 1.42;
}

.layout-calm #concerns{
  background: linear-gradient(135deg,#fff8d8 0%,#fff2e8 100%);
}

.layout-calm #service{
  background: linear-gradient(135deg,#e9f8ef 0%,#f7fff9 100%);
}

.layout-calm #price{
  background: linear-gradient(135deg,#fff6d7 0%,#ffede5 100%);
}

.layout-calm #flow{
  background: linear-gradient(135deg,#e8f8f0 0%,#f7fff9 100%);
}

.layout-calm #faq{
  background: linear-gradient(135deg,#fff2e9 0%,#fff9dd 100%);
}

.layout-calm .worry-grid article,.layout-calm .flow-list li{
  border-width: 2px;
  border-radius: 20px;
  box-shadow: 6px 7px #0d513d1a;
}

.layout-calm .worry-grid article:nth-child(3n/**/+1),.layout-calm .flow-list li:nth-child(3n/**/+1){
  background: #fff1eb;
}

.layout-calm .worry-grid article:nth-child(3n/**/+2),.layout-calm .flow-list li:nth-child(3n/**/+2){
  background: #eaf7ff;
}

.layout-calm .worry-grid article:nth-child(3n),.layout-calm .flow-list li:nth-child(3n){
  background: #fff8cf;
}

.section-cta{
  z-index: 2;
  border: 2px solid var(--primary);
  text-align: center;
  background: linear-gradient(135deg,#0d513d,#167458);
  border-radius: 20px;
  width: 100%;
  max-width: none;
  margin: 26px 0 0;
  padding: 22px 24px;
  display: block;
  position: relative;
  box-shadow: 7px 8px #0d513d24;
}

.section-cta p{
  margin: 0;
}

.section-cta b{
  color: #fff;
  max-width: 760px;
  font: 800 19px/1.45 var(--sans);
  margin: 5px auto 0;
  display: block;
}

.section-cta p span{
  color: #dff6ed;
  letter-spacing: .04em;
  font-size: 10px;
  font-weight: 800;
  display: block;
}

.section-cta a{
  color: #17392f;
  background: #f6c65e;
  border-radius: 12px;
  justify-content: space-between;
  align-items: center;
  min-height: 60px;
  margin-top: 15px;
  padding: 0 22px;
  font-size: 14px;
  font-weight: 900;
  display: flex;
}

.section-cta i{
  color: inherit;
  font-size: 21px;
  font-style: normal;
}

.section-cta small{
  color: #ffffffb3;
  margin-top: 8px;
  font-size: 9px;
  display: block;
}

.section-cta{
  grid-column: 1/-1;
}

.section-cta.tone-sky{
  background: linear-gradient(135deg,#245b72,#3987a5);
}

.section-cta.tone-sky a{
  background: #fff6d1;
}

@media (width>=981px) {
  .layout-calm .worry-grid article{
    padding: 24px 26px;
  }

  .layout-calm .flow-list li{
    min-height: 180px;
    padding: 26px 22px;
  }
  .layout-calm .price-table{
    padding: 32px;
  }
  .layout-calm .price-table-grid article{
    min-height: 205px;
  }
}

@media (width<=640px) {
  .layout-calm .manga-section{
    padding-top: 44px;
    padding-bottom: 44px;
  }

  .layout-calm .section{
    padding-top: 46px;
    padding-bottom: 46px;
  }
  .layout-calm .section-heading{
    margin-bottom: 23px;
  }
  .layout-calm .section-heading h2,.layout-calm .price-copy h2{
    font-size: 26px;
    line-height: 1.48;
  }
  .section-cta{
    border-radius: 16px;
    margin-top: 20px;
    padding: 17px 13px;
    box-shadow: 4px 5px #0d513d21;
  }
  .section-cta b{
    max-width: 330px;
    font-size: 16px;
  }
  .section-cta a{
    min-height: 54px;
    padding: 0 13px;
    font-size: 11px;
  }
}

#concerns:before,#service:before,#flow:before{
  content: none;
  display: none;
}

.hero-manga-first .hero-content h1{
  font-size: clamp(31px,5.45vw,35px);
}

.layout-calm .section-cta a,.layout-calm .contact-section form .button,.layout-calm .header-cta,.layout-calm .mobile-cta a{
  color: #fff;
  border-color: #111518;
  box-shadow: 0 9px 22px #11151833;
}

.layout-calm .section-cta a i,.layout-calm .contact-section form .button i{
  color: #f1c45d;
}

.layout-calm .section-cta a:hover,.layout-calm .contact-section form .button:hover,.layout-calm .header-cta:hover,.layout-calm .mobile-cta a:hover{
  background: #242c31;
  box-shadow: 0 12px 28px #11151847;
}

.layout-calm .price-table{
  border: 1px solid var(--line);
  box-shadow: none;
  background: #fbfaf6;
  border-radius: 0;
  padding: 38px;
}

.layout-calm .price-table-heading{
  text-align: left;
  grid-template-columns: minmax(260px,.8fr) minmax(320px,1.2fr);
  align-items: end;
  gap: 32px;
  margin-bottom: 28px;
  display: grid;
}

.layout-calm .price-table-heading h3{
  font: 600 32px/1.4 var(--display);
  margin: 0;
}

.layout-calm .price-table-heading p{
  color: var(--muted);
  margin: 0;
  font-size: 13px;
  line-height: 1.8;
}

.layout-calm .price-table-grid{
  background: #fff;
  border: 1px solid #c8c2b5;
  display: block;
  overflow: hidden;
}

.layout-calm .price-table-labels,.layout-calm .price-table-grid article{
  grid-template-columns: 120px minmax(0,1fr) 190px;
  align-items: center;
  display: grid;
}

.layout-calm .price-table-labels{
  color: #fff;
  background: #354955;
  min-height: 48px;
  font-size: 11px;
  font-weight: 800;
}

.layout-calm .price-table-labels span{
  padding: 0 22px;
}

.layout-calm .price-table-grid article,.layout-calm .price-table-grid article:nth-child(n){
  min-height: 74px;
  color: var(--ink);
  box-shadow: none;
  text-align: left;
  background: #fff;
  border: 0;
  border-top: 1px solid #ddd8cd;
  border-radius: 0;
  padding: 0;
}

.layout-calm .price-table-grid article:nth-of-type(2n){
  background: #f3f0e9;
}

.layout-calm .price-table-grid article>b,.layout-calm .price-table-grid article>p,.layout-calm .price-table-grid article>strong{
  border-right: 1px solid #ddd8cd;
  align-items: center;
  min-height: 74px;
  margin: 0;
  padding: 15px 22px;
  display: flex;
}

.layout-calm .price-table-grid article>b{
  color: #354955;
  font: 700 20px/1.2 var(--sans);
  gap: 10px;
}

.layout-calm .price-table-grid article>b span{
  color: #a98b5f;
  font-size: 9px;
}

.layout-calm .price-table-grid article>p{
  color: #59656a;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.55;
}

.layout-calm .price-table-grid article>strong{
  color: #111518;
  font: 800 21px/1.2 var(--sans);
  border-right: 0;
  justify-content: flex-end;
}

@media (width<=760px) {
  #price{
    display: block;
  }
  .hero-manga-first .hero-content h1{
    font-size: 35px;
  }
  .layout-calm .price-table{
    margin-top: 28px;
    padding: 22px 14px;
  }
  .layout-calm .price-table-heading{
    text-align: left;
    margin-bottom: 18px;
    display: block;
  }
  .layout-calm .price-table-heading h3{
    font-size: 25px;
  }
  .layout-calm .price-table-heading p{
    margin-top: 8px;
    font-size: 10px;
  }
  .layout-calm .price-table-labels,.layout-calm .price-table-grid article{
    grid-template-columns: 82px minmax(0,1fr) 132px;
  }
  .layout-calm .price-table-labels span,.layout-calm .price-table-grid article>b,.layout-calm .price-table-grid article>p,.layout-calm .price-table-grid article>strong{
    padding-left: 11px;
    padding-right: 11px;
  }
  .layout-calm .price-table-grid article>b{
    gap: 5px;
    font-size: 15px;
  }
  .layout-calm .price-table-grid article>p{
    font-size: 10px;
  }
  .layout-calm .price-table-grid article>strong{
    font-size: 16px;
  }
}

.layout-calm .section-kicker{
  color: var(--palette-accent);
  letter-spacing: .18em;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
  font-size: 11px;
  font-weight: 900;
  display: inline-flex;
}

.layout-calm .section-kicker:before{
  content: "";
  background: currentColor;
  width: 30px;
  height: 1px;
}

.layout-calm .service-section{
  color: var(--palette-secondary-deep);
  background: linear-gradient(90deg,transparent 69%,#214c3d0e 69% 89%,transparent 89%), var(--palette-base);
  display: block;
}

.layout-calm .aftercare-intro{
  border-bottom: 1px solid var(--palette-line);
  grid-template-columns: minmax(0,1fr) minmax(320px,.78fr);
  align-items: end;
  gap: clamp(24px,5vw,72px);
  width: min(1100px,100%);
  margin: 0 auto clamp(34px,5vw,62px);
  display: grid;
}

.layout-calm .aftercare-copy{
  padding: clamp(28px,4vw,54px) 0 clamp(34px,5vw,64px);
}

.layout-calm .aftercare-copy h2{
  color: var(--palette-secondary-deep);
  font: 700 clamp(30px, 2.65vw, 40px)/1.35 var(--display);
  letter-spacing: .02em;
  margin: 0 0 22px;
}

.layout-calm .aftercare-copy>p{
  max-width: 640px;
  color: var(--muted);
  margin: 0;
  font-size: 15px;
  line-height: 2;
}

.layout-calm .aftercare-tags{
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 26px;
  display: flex;
}

.layout-calm .aftercare-tags span{
  color: var(--palette-secondary-deep);
  border: 1px solid var(--palette-line);
  border-left: 3px solid var(--palette-accent);
  background: #fffdf8db;
  padding: 8px 13px;
  font-size: 11px;
  font-weight: 800;
}

.layout-calm .aftercare-character{
  aspect-ratio: 5/4;
  background: linear-gradient(#fffdf800,#fffdf8c2);
  align-self: stretch;
  min-height: 0;
  margin: 0;
  position: relative;
  overflow: hidden;
}

.layout-calm .aftercare-character img{
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  right: 0;
}

.layout-calm .aftercare-character figcaption{
  color: #fff;
  border-left: 4px solid var(--palette-accent);
  background: #17382ef0;
  padding: 12px 14px;
  position: absolute;
  bottom: 18px;
  left: 4%;
  right: 4%;
}

.layout-calm .aftercare-character figcaption b,.layout-calm .aftercare-character figcaption span{
  display: block;
}

.layout-calm .aftercare-character figcaption b{
  font: 700 16px/1.4 var(--display);
}

.layout-calm .aftercare-character figcaption span{
  color: #ffffffbd;
  margin-top: 3px;
  font-size: 9px;
}

.layout-calm .pr-grid{
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 14px;
  width: min(1100px,100%);
  margin: 0 auto;
  display: grid;
}

.layout-calm .pr-grid article{
  min-height: 188px;
  color: var(--palette-secondary-deep);
  background: var(--palette-card);
  border: 1px solid var(--palette-line);
  border-top: 4px solid var(--palette-secondary);
  grid-template-columns: 36px minmax(0,1fr);
  gap: 15px;
  padding: 25px 23px;
  display: grid;
  box-shadow: 0 10px 24px #17382e0f;
}

.layout-calm .pr-grid article:first-child,.layout-calm .pr-grid article:nth-child(5){
  border-top-color: var(--palette-secondary);
}

.layout-calm .pr-grid article>span{
  color: #fff;
  background: var(--palette-secondary-deep);
  border-radius: 50%;
  place-items: center;
  width: 34px;
  height: 34px;
  font-size: 10px;
  font-weight: 900;
  display: grid;
}

.layout-calm .pr-grid h3{
  margin: 3px 0 9px;
  font-size: 17px;
  line-height: 1.55;
}

.layout-calm .pr-grid p{
  color: var(--muted);
  margin: 0;
  font-size: 12px;
  line-height: 1.8;
}

.layout-calm .service-section>.section-cta{
  width: min(1100px,100%);
  margin: 34px auto 0;
}

.layout-calm .price-section{
  background: var(--palette-base);
  gap: clamp(28px,5vw,64px);
}

.layout-calm .price-copy,.layout-calm .price-card{
  border: 1px solid var(--palette-line);
  box-shadow: none;
  border-radius: 0;
  align-self: stretch;
}

.layout-calm .price-copy{
  background: var(--palette-card);
  border-left: 6px solid var(--palette-accent);
  padding: clamp(28px,4vw,48px);
}

.layout-calm .price-copy h2{
  margin-top: 0;
  font-size: clamp(34px,4vw,52px);
}

.layout-calm .price-card{
  border-top: 6px solid var(--palette-secondary);
}

.layout-calm .price-note,.layout-calm .price-buyback{
  color: var(--palette-secondary-deep);
  border-left: 4px solid var(--palette-secondary);
  background: #e7efe9;
  margin-top: 16px;
  padding: 18px;
}

.layout-calm .price-buyback{
  border-left-color: var(--palette-accent);
  background: #f3ead9;
}

.layout-calm .price-note b,.layout-calm .price-buyback b{
  font-size: 14px;
  line-height: 1.55;
  display: block;
}

.layout-calm .price-note p,.layout-calm .price-buyback p{
  color: var(--muted);
  margin: 5px 0 0;
  font-size: 11px;
  line-height: 1.75;
}

.layout-calm .price-table-heading{
  border-bottom: 1px solid var(--palette-line);
  grid-template-columns: minmax(0,1fr) minmax(260px,.72fr);
  align-items: center;
  gap: 24px 48px;
  padding-bottom: 22px;
}

.layout-calm .price-table-heading p{
  border-left: 3px solid var(--palette-accent);
  padding-left: 18px;
}

.layout-calm .faq-section .faq-list{
  width: min(920px,100%);
  margin-inline: auto;
}

.layout-calm .brand-mark,.layout-calm .footer-brand .brand-mark{
  border: 2px solid #c6a264;
  border-radius: 50%;
  font-weight: 800;
  box-shadow: inset 0 0 0 3px #fffdf81f,0 7px 18px #17382e2e;
}

.layout-calm .brand-mark:before{
  border-radius: 50%;
  inset: 5px;
}

.layout-calm .brand-mark:after{
  width: 15px;
  height: 2px;
  box-shadow: none;
  background: linear-gradient(90deg,#0000,#d9b873 25% 75%,#0000);
  border-radius: 99px;
  bottom: 7px;
  right: 50%;
  transform: translate(50%);
}

.layout-calm .brand-mark{
  background: radial-gradient(circle at 34% 25%,#ffffff21,#0000 32%),linear-gradient(145deg,#315f4e 0%,#17382e 58%,#102b24 100%);
}

.layout-calm .brand-mark:before{
  border-color: #e1c48bb8;
  box-shadow: inset 0 0 0 1px #ffffff0d;
}

.layout-calm .footer-brand .brand-monogram{
  color: #f6e5b9;
}

.layout-calm .brand-copy b{
  letter-spacing: .08em;
}

.layout-calm .mobile-cta{
  z-index: 60;
  min-height: 64px;
  padding: 8px max(14px,calc((100vw - 1180px)/2)) max(8px,env(safe-area-inset-bottom));
  color: #fff;
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  background: #17382ef7;
  border-top: 1px solid #ffffff2e;
  align-items: center;
  gap: 10px;
  display: flex;
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  box-shadow: 0 -10px 30px #0a1c152e;
}

.layout-calm .mobile-cta>span{
  flex: 1;
  font-size: 12px;
  font-weight: 900;
  line-height: 1.35;
}

.layout-calm .mobile-cta>span small{
  color: #ffffffad;
  font-size: 8px;
  font-weight: 500;
  display: block;
}

.layout-calm .footer-phone-cta,.layout-calm .mobile-cta .line-cta--mobile{
  border-radius: 6px;
  justify-content: center;
  align-items: center;
  min-height: 44px;
  padding: 0 18px;
  font-size: 10px;
  font-weight: 900;
  display: inline-flex;
}

.layout-calm .footer-phone-cta{
  color: #fff;
  background: linear-gradient(135deg,#d87918 0%,#ec9c28 52%,#f5ba49 100%);
  border: 1px solid #ffe2a6b8;
  flex-direction: row;
  gap: 8px;
  line-height: 1.05;
  box-shadow: inset 0 1px #ffffff5c,0 5px 16px #934d0a4d;
}

.layout-calm .footer-phone-copy{
  flex-direction: column;
  flex: 1;
  align-items: center;
  gap: 2px;
  min-width: 0;
  display: flex;
}

.layout-calm .footer-phone-cta b{
  font: 900 9px/1.12 var(--sans);
  white-space: nowrap;
}

.layout-calm .footer-phone-cta small{
  color: #ffffffc2;
  font: 700 8px/1 var(--sans);
  margin: 0;
}

.layout-calm .footer-phone-cta i{
  color: #fff;
  text-align: center;
  flex: 0 0 18px;
  margin-left: auto;
  font-size: 18px;
  font-style: normal;
  font-weight: 800;
  line-height: 1;
}

.layout-calm .mobile-cta .line-cta--mobile{
  color: #fff;
  width: auto;
}

.layout-calm .mobile-cta .line-cta--mobile b{
  white-space: nowrap;
}

.layout-calm .mobile-cta .line-cta-copy{
  flex-direction: column;
  flex: 1;
  align-items: center;
  gap: 2px;
  min-width: 0;
  display: flex;
}

.layout-calm .mobile-cta .line-cta-copy b{
  font: 900 9px/1.12 var(--sans);
}

.layout-calm .mobile-cta .line-cta-copy small{
  color: #fff;
  font: 800 8px/1 var(--sans);
  margin: 0;
}

.layout-calm .mobile-cta .line-cta-badge{
  flex: none;
}

.layout-calm.site{
  padding-bottom: 70px;
}

@media (width<=760px) {
  .layout-calm .aftercare-intro{
    grid-template-columns: 1fr;
    gap: 0;
  }
  .layout-calm .aftercare-copy{
    padding: 8px 0 18px;
  }
  .layout-calm .aftercare-copy h2{
    font-size: clamp(30px, 2.65vw, 40px);
  }
  .layout-calm .aftercare-copy>p{
    font-size: 12px;
    line-height: 1.9;
  }
  .layout-calm .aftercare-tags{
    margin-top: 18px;
  }
  .layout-calm .aftercare-tags span{
    padding: 7px 10px;
    font-size: 9px;
  }
  .layout-calm .aftercare-character{
    min-height: 330px;
  }
  .layout-calm .aftercare-character img{
    width: 110%;
    right: -5%;
  }
  .layout-calm .pr-grid{
    grid-template-columns: 1fr;
    gap: 9px;
  }
  .layout-calm .pr-grid article{
    grid-template-columns: 30px minmax(0,1fr);
    gap: 11px;
    min-height: 0;
    padding: 17px 15px;
  }
  .layout-calm .pr-grid article>span{
    width: 29px;
    height: 29px;
    font-size: 8px;
  }
  .layout-calm .pr-grid h3{
    margin: 1px 0 5px;
    font-size: 14px;
  }
  .layout-calm .pr-grid p{
    font-size: 10px;
    line-height: 1.7;
  }
  .layout-calm .service-section>.section-cta{
    margin-top: 22px;
  }
  .layout-calm .price-copy{
    padding: 25px 20px;
  }
  .layout-calm .price-copy h2{
    font-size: 32px;
  }
  .layout-calm .price-note,.layout-calm .price-buyback{
    padding: 14px;
  }
  .layout-calm .price-table-heading{
    text-align: left;
    padding-bottom: 16px;
    display: block;
  }
  .layout-calm .price-table-heading h3{
    font-size: 23px;
  }
  .layout-calm .price-table-heading p{
    margin-top: 10px;
    padding-left: 12px;
    font-size: 10px;
  }
  .layout-calm .mobile-cta{
    gap: 6px;
    min-height: 58px;
    padding-inline: 8px;
  }
  .layout-calm .mobile-cta>span{
    display: none;
  }
  .layout-calm .footer-phone-cta,.layout-calm .mobile-cta .line-cta--mobile{
    flex: 1 1 0;
    min-width: 0;
    min-height: 43px;
    padding: 0 8px;
    font-size: 9px;
  }
  .layout-calm.site{
    padding-bottom: calc(62px + env(safe-area-inset-bottom));
  }
}

@media (width<=380px) {
  .layout-calm .aftercare-character{
    min-height: 285px;
  }
  .layout-calm .footer-phone-cta,.layout-calm .mobile-cta .line-cta--mobile{
    font-size: 8px;
  }
}

@media (width<=480px) {
  .hero-manga-first .hero-content h1{
    font-size: clamp(31px,9.3vw,35px);
  }
  .layout-calm .price-table-labels,.layout-calm .price-table-grid article{
    grid-template-columns: 68px minmax(0,1fr) 104px;
  }
  .layout-calm .price-table-labels{
    font-size: 9px;
  }
  .layout-calm .price-table-labels span,.layout-calm .price-table-grid article>b,.layout-calm .price-table-grid article>p,.layout-calm .price-table-grid article>strong{
    padding-left: 8px;
    padding-right: 8px;
  }
  .layout-calm .price-table-grid article>b{
    font-size: 14px;
    display: block;
  }
  .layout-calm .price-table-grid article>b span{
    margin-bottom: 4px;
    display: block;
  }
  .layout-calm .price-table-grid article>p{
    font-size: 9px;
  }
  .layout-calm .price-table-grid article>strong{
    font-size: 14px;
  }
}

.layout-calm .section{
  padding-top: 52px;
  padding-bottom: 52px;
}

.layout-calm .section-heading{
  margin-bottom: 26px;
}

.layout-calm .concerns-heading{
  grid-template-columns: minmax(0,.9fr) minmax(340px,1.1fr);
  align-items: center;
  gap: 34px;
  display: grid;
}

.layout-calm .concerns-copy h2{
  margin: 0 0 18px;
}

.layout-calm .concerns-copy p{
  color: var(--muted);
  margin: 0;
  font-size: 13px;
  line-height: 1.9;
}

.layout-calm .concerns-staff{
  border: 1px solid var(--line);
  background: #fff;
  height: 250px;
  margin: 0;
  position: relative;
  overflow: hidden;
}

.layout-calm .concerns-staff img{
  object-fit: cover;
  object-position: right bottom;
  transform-origin: 100% 100%;
  width: 100%;
  height: 100%;
  display: block;
  transform: scale(1.45);
}

.layout-calm .concerns-staff figcaption{
  color: #fff;
  background: #111518e6;
  max-width: 300px;
  padding: 12px 16px;
  position: absolute;
  bottom: 12px;
  right: 12px;
}

.layout-calm .concerns-staff figcaption b,.layout-calm .concerns-staff figcaption span{
  display: block;
}

.layout-calm .concerns-staff figcaption b{
  font-size: 13px;
}

.layout-calm .concerns-staff figcaption span{
  color: #ffffffb8;
  margin-top: 3px;
  font-size: 9px;
}

.layout-calm .worry-grid,.layout-calm .flow-list{
  background: 0 0;
  border: 0;
  gap: 12px;
}

.layout-calm .worry-grid article:nth-child(n),.layout-calm .flow-list li:nth-child(n){
  color: var(--ink);
  border: 1px solid var(--line);
  box-shadow: none;
  background: #fbfaf6;
  border-radius: 12px;
}

.layout-calm .price-table{
  padding: 30px;
}

.layout-calm .price-table-grid{
  background: 0 0;
  border: 0;
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 12px;
  display: grid;
  overflow: visible;
}

.layout-calm .price-table-labels{
  display: none;
}

.layout-calm .price-table-grid article,.layout-calm .price-table-grid article:nth-child(n),.layout-calm .price-table-grid article:nth-of-type(2n){
  min-height: 180px;
  color: var(--ink);
  border: 1px solid var(--line);
  background: #fff;
  border-top: 4px solid #354955;
  border-radius: 12px;
  flex-direction: column;
  align-items: flex-start;
  padding: 22px 18px;
  display: flex;
  box-shadow: 0 8px 20px #35495514;
}

.layout-calm .price-table-grid article>b,.layout-calm .price-table-grid article>p,.layout-calm .price-table-grid article>strong{
  border: 0;
  width: 100%;
  min-height: 0;
  margin: 0;
  padding: 0;
  display: block;
}

.layout-calm .price-table-grid article>b{
  color: #354955;
  font-size: 24px;
}

.layout-calm .price-table-grid article>b span{
  color: #fff;
  vertical-align: middle;
  background: #a98b5f;
  border-radius: 99px;
  margin-right: 8px;
  padding: 4px 6px;
  font-size: 8px;
  display: inline-block;
}

.layout-calm .price-table-grid article>p{
  color: #59656a;
  margin-top: 14px;
  font-size: 11px;
  line-height: 1.55;
}

.layout-calm .price-table-grid article>strong{
  color: #111518;
  text-align: right;
  margin-top: auto;
  padding-top: 18px;
  font-size: 21px;
}

.layout-calm .price-includes{
  color: var(--ink);
  border: 1px solid var(--line);
  background: #ebe8e1;
  border-radius: 12px;
  margin-top: 28px;
  padding: 26px;
}

.layout-calm .price-includes h4{
  text-align: left;
  font: 600 22px/1.4 var(--display);
  margin: 0 0 18px;
}

.layout-calm .price-includes>div{
  grid-template-columns: repeat(3,minmax(0,1fr));
  gap: 9px;
  display: grid;
}

.layout-calm .price-includes span{
  color: #354955;
  text-align: left;
  background: #fff;
  border: 1px solid #d3cfc5;
  border-radius: 8px;
  align-items: center;
  gap: 8px;
  min-height: 52px;
  padding: 11px 12px;
  font-size: 11px;
  font-weight: 700;
  display: flex;
}

.layout-calm .price-includes span:before{
  content: "✓";
  color: #fff;
  background: #354955;
  border-radius: 50%;
  flex: none;
  place-items: center;
  width: 20px;
  height: 20px;
  font-size: 10px;
  display: grid;
}

.layout-calm .flow-list{
  grid-template-columns: repeat(12,minmax(0,1fr));
}

.layout-calm .flow-list li:nth-child(n){
  grid-column: span 3;
  min-height: 190px;
  padding: 26px 20px;
}

.layout-calm .flow-list li:nth-child(n/**/+5){
  grid-column: span 4;
}

.layout-calm .flow-list li span{
  color: #8d7350;
  background: 0 0;
}

@media (width<=980px) {
  .site-header{
    position: relative;
  }
  .site-header .header-cta{
    margin: 0;
    position: absolute;
    top: 50%;
    right: 14px;
    transform: translateY(-50%);
  }
}

@media (width<=760px) {
  .site-header{
    height: 64px;
    padding: 0 14px;
  }
  .hero.hero-manga-first{
    min-height: 0;
    padding: 0;
  }
  .hero-manga-first .hero-content{
    min-height: 0;
    padding: 28px 22px 30px;
  }
  .hero-manga-first .hero-content h1{
    margin-top: 14px;
    margin-bottom: 16px;
  }
  .hero-manga-first .hero-lead{
    margin-bottom: 14px;
  }
  .hero-credentials{
    margin-top: 14px;
    padding-top: 10px;
  }
  .layout-calm .section{
    padding-top: 36px;
    padding-bottom: 36px;
  }
  .layout-calm #concerns{
    padding-top: 26px;
  }
  .layout-calm .section-heading{
    margin-bottom: 20px;
  }
  .layout-calm .concerns-heading{
    grid-template-columns: minmax(0,1fr) minmax(260px,.95fr);
    gap: 18px;
  }
  .layout-calm .concerns-copy h2{
    font-size: 24px;
  }
  .layout-calm .concerns-copy p{
    font-size: 10px;
  }
  .layout-calm .concerns-staff{
    height: 210px;
  }
  .layout-calm .concerns-staff figcaption{
    padding: 9px 11px;
    bottom: 8px;
    right: 8px;
  }

  .layout-calm .price-table{
    padding: 22px 14px;
  }
  .layout-calm .price-table-grid{
    grid-template-columns: repeat(3,minmax(0,1fr));
    gap: 8px;
  }
  .layout-calm .price-table-grid article:nth-child(n){
    min-height: 170px;
    padding: 17px 12px;
  }
  .layout-calm .price-table-grid article>b{
    font-size: 20px;
  }
  .layout-calm .price-table-grid article>p{
    font-size: 9px;
  }
  .layout-calm .price-table-grid article>strong{
    font-size: 17px;
  }
  .layout-calm .price-includes{
    padding: 18px 14px;
  }
  .layout-calm .price-includes h4{
    font-size: 19px;
  }
  .layout-calm .price-includes span{
    min-height: 48px;
    padding: 8px;
    font-size: 9px;
  }
  .layout-calm .flow-list li:nth-child(n){
    min-height: 180px;
    padding: 22px 14px;
  }
}

@media (width<=599px) {
  .layout-calm .concerns-heading{
    grid-template-columns: 1fr;
  }
  .layout-calm .flow-list{
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .layout-calm .flow-list li:nth-child(n),.layout-calm .flow-list li:nth-child(n/**/+5){
    grid-column: span 1;
  }
  .layout-calm .flow-list li:last-child{
    grid-column: 1/-1;
  }
}

@media (width<=480px) {
  
  .layout-calm .price-table-grid,.layout-calm .price-includes>div{
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
}

@media (width>=981px) {
  .layout-calm .contact-section{
    grid-template-columns: minmax(0,1fr) minmax(0,1fr);
    align-items: stretch;
    gap: clamp(56px,6vw,88px);
  }
  .layout-calm .contact-copy{
    flex-direction: column;
    justify-content: center;
    align-self: stretch;
    width: 100%;
    max-width: 560px;
    min-height: 100%;
    display: flex;
  }
  .layout-calm .contact-copy h2{
    white-space: nowrap;
    width: 100%;
    margin: 0 0 22px;
    font-size: clamp(38px,3.35vw,48px);
    line-height: 1.35;
  }
  .layout-calm .contact-copy>p{
    width: 100%;
    max-width: 560px;
    margin: 0;
    line-height: 2.05;
  }
}

.lp-manga-composition .manga-balloon--thought{
  isolation: isolate;
  clip-path: none;
  filter: drop-shadow(0 0 max(1px,.14cqw) #171511)drop-shadow(0 .2cqw .26cqw #19140e29);
  background: #ffffffb3;
  border: 0;
  border-radius: 44% 56% 48% 52%/50% 45% 55% 50%;
  padding: 1.7cqw;
  overflow: visible;
}

.lp-manga-composition .manga-balloon--thought:before,.lp-manga-composition .manga-balloon--thought:after{
  z-index: -1;
  content: "";
  aspect-ratio: 1;
  background: #ffffffb3;
  border: 0;
  border-radius: 50%;
  display: block;
  position: absolute;
}

.lp-manga-composition .manga-balloon--thought:before{
  width: 25%;
  top: -6%;
  left: 17%;
  box-shadow: 2.2cqw -.15cqw #ffffffb3,4.1cqw .45cqw #ffffffb3;
}

.lp-manga-composition .manga-balloon--thought:after{
  width: 24%;
  bottom: -5%;
  right: 18%;
  box-shadow: -2.1cqw .1cqw #ffffffb3,-4cqw -.5cqw #ffffffb3;
}

.lp-manga-composition .manga-balloon--thought>span{
  z-index: 1;
  position: relative;
}

.layout-calm .price-table-caution{
  font-family: var(--sans);
  letter-spacing: 0;
  font-size: 11px;
  font-weight: 500;
  line-height: 1.8;
}

@media (width<=760px) {

  
  .layout-calm .price-table-caution{
    font-size: 10px;
  }
  .layout-calm .contact-section{
    gap: 32px;
    padding: 46px 24px 60px;
  }
  .layout-calm .contact-copy h2{
    margin: 0 0 16px;
    font-size: 32px;
    line-height: 1.4;
  }
}

.header-actions{
  align-items: center;
  gap: 8px;
  display: flex;
}

.line-cta{
  isolation: isolate;
  color: #fff;
  font-feature-settings: "palt" 1;
  letter-spacing: .035em;
  text-rendering: optimizelegibility;
  background: #06c755;
  border: 1px solid #05ad4a;
  border-radius: 12px;
  justify-content: center;
  align-items: center;
  gap: 12px;
  min-height: 60px;
  padding: 0 22px;
  font-family: -apple-system,BlinkMacSystemFont,Hiragino Sans,Yu Gothic UI,Yu Gothic,Meiryo,sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.4;
  transition: transform .2s,background-color .2s,box-shadow .2s;
  animation: 2.2s ease-in-out infinite lineCtaGlow;
  display: flex;
  position: relative;
  overflow: hidden;
  box-shadow: 0 0 #06c75580,0 12px 28px #06c7554d;
}

.line-cta:after{
  z-index: -1;
  content: "";
  background: linear-gradient(90deg,#0000,#ffffff7a,#0000);
  width: 24%;
  height: 240%;
  animation: 3.2s ease-in-out infinite lineCtaShine;
  position: absolute;
  top: -70%;
  left: -32%;
  transform: rotate(22deg);
}

.line-cta:hover{
  color: #fff;
  background: #05b84e;
  transform: translateY(-2px);
  box-shadow: 0 0 0 7px #06c75524,0 16px 34px #06c75561;
}

.line-cta-badge{
  color: #06c755;
  letter-spacing: -.02em;
  background: #fff;
  border-radius: 7px;
  flex: none;
  padding: 7px 7px;
  font-size: 10px;
  font-weight: 1000;
}

.header-cta,.contact-section form .button{
  font-feature-settings: "palt" 1;
  letter-spacing: .035em;
  text-rendering: optimizelegibility;
  font-family: -apple-system,BlinkMacSystemFont,Hiragino Sans,Yu Gothic UI,Yu Gothic,Meiryo,sans-serif;
  font-weight: 700;
  line-height: 1.4;
}

.line-cta b{
  color: inherit;
  font: inherit;
  white-space: nowrap;
}

.line-cta i{
  color: #fff;
  margin-left: auto;
  font-size: 21px;
  font-style: normal;
}

.header-line-cta{
  border-radius: 4px;
  gap: 8px;
  min-height: 42px;
  padding: 0 14px;
  font-size: 11px;
}

.header-line-cta .line-cta-badge{
  padding: 4px 6px;
  font-size: 8px;
}

.header-line-cta i{
  display: none;
}

.layout-calm .section-cta .line-cta,.layout-calm .price-copy .line-cta,.layout-calm .contact-copy .line-cta,.layout-calm .mobile-cta .line-cta{
  color: #fff;
  background: #06c755;
  border-color: #05ad4a;
  box-shadow: 0 0 #06c75580,0 12px 28px #06c7554d;
}

.layout-calm .section-cta .line-cta:hover,.layout-calm .price-copy .line-cta:hover,.layout-calm .contact-copy .line-cta:hover,.layout-calm .mobile-cta .line-cta:hover{
  color: #fff;
  background: #05b84e;
  box-shadow: 0 0 0 7px #06c75524,0 16px 34px #06c75561;
}

.section-cta .line-cta{
  box-sizing: border-box;
  width: 100%;

  justify-content: flex-start;
  margin-top: 15px;
}

.line-cta--contact{
  justify-content: flex-start;
  width: min(100%,430px);
  margin: 0 0 20px;
}

.mobile-cta .line-cta--mobile{
  display: none;
}

@keyframes lineCtaGlow {
  0%,to {
    box-shadow: 0 0 #06c75561,0 12px 28px #06c7554d;
  }
  50% {
    box-shadow: 0 0 0 8px #06c75500,0 16px 36px #06c75573;
  }
}

@keyframes lineCtaShine {
  0%,55% {
    left: -32%;
  }
  82%,to {
    left: 118%;
  }
}

@media (width<=980px) {
  .site-header .header-actions{
    margin: 0;
    position: absolute;
    top: 50%;
    right: 14px;
    transform: translateY(-50%);
  }
  .site-header .header-cta{
    position: static;
    transform: none;
  }
}

@media (width<=640px) {
  html{
    scroll-padding-bottom: calc(64px + env(safe-area-inset-bottom));
  }
  .site{
    padding-bottom: calc(64px + env(safe-area-inset-bottom));
  }
  .mobile-cta{
    min-height: 56px;
    padding-top: 6px;
    padding-bottom: max(6px,env(safe-area-inset-bottom));
  }
  .header-actions{
    gap: 5px;
  }
  .site-header .header-cta{
    padding: 9px;
    font-size: 8px;
  }
  .header-line-cta{
    min-height: 36px;
    padding: 0 9px;
    font-size: 9px;
  }
  .header-line-cta .line-cta-badge{
    display: none;
  }
  .line-cta{
    gap: 8px;
    min-height: 56px;
    padding: 0 14px;
    font-size: 11px;
  }
  .line-cta-badge{
    font-size: 8px;
  }
  .line-cta--contact{
    width: 100%;
  }
  .mobile-cta .line-cta--mobile{
    border-radius: 8px;
    width: auto;
    min-height: 44px;
    padding: 0 13px;
    font-size: 9px;
    display: flex;
    box-shadow: 0 0 #06c75580;
  }
  .line-cta--mobile .line-cta-badge{
    display: none;
  }
  .line-cta--mobile i{
    text-align: center;
    flex: 0 0 18px;
    margin-left: auto;
    font-size: 18px;
    line-height: 1;
    display: block;
  }
}

@media (prefers-reduced-motion:reduce) {
  .line-cta,.line-cta:after{
    animation: none;
  }
}

.story-cta{
  color: #fff;
  background: #223a48;
  border-radius: 16px;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  align-items: center;
  gap: 12px;
  width: min(900px,100% - 40px);
  margin: clamp(28px,4vw,48px) auto clamp(44px,6vw,72px);
  padding: clamp(22px,3vw,34px);
  display: grid;
}

.story-cta .line-cta,.story-cta .phone-cta{
  justify-content: flex-start;
  width: 100%;
  min-height: 64px;
}

.story-cta .phone-cta{
  color: #fff;
  background: linear-gradient(135deg,#e8840a,#ffc247);
  border: 1px solid #ffe09b;
  border-radius: 12px;
  align-items: center;
  gap: 12px;
  padding: 0 20px;
  display: flex;
  box-shadow: inset 0 0 0 1px #ffffff6b,0 8px 20px #80490542;
}

.story-cta .phone-cta-badge{
  color: #9b5100;
  background: #fff7e6;
  border-radius: 7px;
  place-items: center;
  min-width: 42px;
  min-height: 30px;
  font-size: 9px;
  font-weight: 900;
  display: grid;
}

.story-cta .phone-cta-copy{
  flex-direction: column;
  flex: 1;
  align-items: center;
  gap: 1px;
  display: flex;
}

.story-cta .phone-cta-copy b{
  text-align: center;
  font-size: 14px;
}

.story-cta .phone-cta-copy small{
  color: inherit;
  font-size: 10px;
  font-weight: 800;
}

.story-cta .phone-cta i{
  font-size: 22px;
  font-style: normal;
}

.layout-calm .flow-list.flow-timeline{
  background: 0 0;
  border: 0;
  width: min(980px,100%);
  margin: 0 auto;
  padding: 0;
  display: block;
  position: relative;
}

.layout-calm .flow-list.flow-timeline:before{
  content: "";
  background: linear-gradient(#b68a48,#314d5c);
  width: 2px;
  position: absolute;
  top: 30px;
  bottom: 30px;
  left: 42px;
}

.layout-calm .flow-list.flow-timeline li:nth-child(n),.layout-calm .flow-list.flow-timeline li:nth-child(n/**/+5),.layout-calm .flow-list.flow-timeline li:last-child{
  min-height: 0;
  color: var(--ink);
  border: 0;
  border-bottom: 1px solid var(--line);
  box-shadow: none;
  text-align: left;
  background: 0 0;
  border-radius: 0;
  grid-column: auto;
  grid-template-columns: 84px minmax(0,1fr) minmax(280px,380px);
  align-items: center;
  gap: 26px;
  padding: 22px 0;
  display: grid;
  position: relative;
}

.layout-calm .flow-list.flow-timeline li:last-child{
  border-bottom: 0;
}

.layout-calm .flow-list.flow-timeline li>span{
  z-index: 1;
  color: #fff;
  letter-spacing: .05em;
  text-align: center;
  background: #314d5c;
  border: 5px solid #fbfaf7;
  border-radius: 50%;
  place-items: center;
  width: 66px;
  height: 66px;
  margin: 0;
  font-size: 9px;
  line-height: 1.15;
  display: grid;
  position: relative;
}

.layout-calm .flow-list.flow-timeline .flow-copy{
  min-width: 0;
}

.layout-calm .flow-list.flow-timeline .flow-copy b{
  font-family: var(--display);
  margin: 0 0 8px;
  font-size: clamp(18px,2.4vw,26px);
  font-weight: 700;
  line-height: 1.35;
  display: block;
}

.layout-calm .flow-list.flow-timeline .flow-copy p{
  max-width: 560px;
  color: var(--muted);
  margin: 0;
  font-size: 13px;
  line-height: 1.8;
}

.layout-calm .flow-list.flow-timeline li:not(:has(.flow-panel)) .flow-copy{
  grid-column: 2/4;
}

.flow-panel{
  aspect-ratio: 3/2;
  background: #e8e3d9;
  border: 1px solid #cfc8bb;
  border-radius: 8px;
  height: auto;
  margin: 0;
  overflow: hidden;
}

.flow-panel img{
  object-fit: contain;
  object-position: center;
  width: 100%;
  height: 100%;
  display: block;
}

.layout-calm .flow-list.flow-timeline .flow-step--reverse .flow-panel{
  grid-area: 1/3;
}

.layout-calm .flow-list.flow-timeline .flow-step--reverse .flow-copy{
  grid-area: 1/2;
}

@media (width<=700px) {
  .story-cta{
    grid-template-columns: minmax(0,1fr) minmax(0,1fr);
    gap: 8px;
    width: calc(100% - 24px);
    padding: 16px;
  }
  .story-cta .line-cta,.story-cta .phone-cta{
    gap: 5px;
    width: 100%;
    min-height: 62px;
    padding-inline: 8px;
  }
  .story-cta .phone-cta-badge,.story-cta .line-cta-badge{
    flex: 0 0 32px;
    min-width: 32px;
    min-height: 26px;
    font-size: 8px;
  }
  .story-cta .phone-cta-copy b,.story-cta .line-cta-copy b{
    font-size: 9px;
  }
  .story-cta .phone-cta-copy small,.story-cta .line-cta-copy small{
    font-size: 8px;
  }
  .layout-calm .flow-list.flow-timeline:before{
    left: 27px;
  }
  .layout-calm .flow-list.flow-timeline li:nth-child(n),.layout-calm .flow-list.flow-timeline li:nth-child(n/**/+5),.layout-calm .flow-list.flow-timeline li:last-child{
    grid-template-columns: 56px minmax(0,1fr);
    gap: 16px;
    padding: 18px 0;
  }
  .layout-calm .flow-list.flow-timeline li>span{
    border-width: 4px;
    width: 54px;
    height: 54px;
    font-size: 8px;
  }
  .layout-calm .flow-list.flow-timeline li:not(:has(.flow-panel)) .flow-copy{
    grid-column: 2;
  }
  .flow-panel{
    aspect-ratio: 3/2;
    grid-column: 2;
    width: 100%;
    height: auto;
  }
  .layout-calm .flow-list.flow-timeline .flow-step--reverse .flow-copy,.layout-calm .flow-list.flow-timeline .flow-step--reverse .flow-panel{
    grid-area: auto/2;
  }
}

.layout-calm .concerns-staff{
  aspect-ratio: 3/2;
  height: auto;
}

.layout-calm .concerns-staff img{
  object-fit: contain;
  object-position: center;
  transform: none;
}

.layout-calm .contact-facts span{
  color: #435b53;
  background: #ffffff85;
  border-color: #cbdad3;
}

.layout-calm footer{
  color: var(--ink);
  background: #fffffff5;
  border-top: 1px solid #1432281a;
}

.layout-calm .footer-brand .brand-mark{
  color: #fff;
  background: var(--primary);
}

.layout-calm .footer-brand small,.layout-calm footer p,.layout-calm footer>small{
  color: var(--muted);
}

@media (width<=760px) {
  .layout-calm .concerns-staff{
    aspect-ratio: 3/2;
    height: auto;
  }
}

.lp-manga-composition .manga-balloon--thought{
  isolation: isolate;
  background: var(--manga-balloon-fill);
  filter: drop-shadow(0 .18cqw .24cqw #19140e1f);
  -webkit-backdrop-filter: blur(.5px)brightness(1.08);
  backdrop-filter: blur(.5px)brightness(1.08);
  border: max(1px,.14cqw) solid #171511d1;
  border-radius: 46% 54% 48% 52%/51% 45% 55% 49%;
  padding: 1.55cqw;
  overflow: hidden;
}

.lp-manga-composition .manga-balloon--thought:before,.lp-manga-composition .manga-balloon--thought:after{
  display: none;
}

@media (width<=640px) {
  .lp-manga-composition .manga-balloon[data-balloon-scale="0.72"]{
    transform: scale(.72);
  }
  .lp-manga-composition .manga-memory-inset{
    z-index: 4;
    border: max(2px,.35cqw) solid #8a6847;
    border-radius: clamp(6px,1.2cqw,12px);
    width: 50%;
    position: absolute;
    top: 3%;
    right: 2.5%;
    box-shadow: 0 0 0 max(2px,.35cqw) #fff8e8b8,0 .8cqw 2.2cqw #462e1c3d;
  }
  .lp-manga-composition .manga-memory-kicker{
    font-size: 2.1cqw;
  }
  .lp-manga-composition .manga-memory-dialogue-card{
    width: 14.1177%;
    height: 61.445%;
    font-size: 2.25cqw;
  }
  .lp-manga-composition .manga-memory-inset .manga-memory-speech{
    margin-left: 1.74381cqw;
  }
  .lp-manga-composition .manga-memory-dialogue-card b{
    font-size: 1.75cqw;
  }
  .lp-manga-composition .manga-memory-dialogue-card span{
    font-size: 2cqw;
  }
}

.section-cta-actions{
  grid-template-columns: minmax(0,1fr) minmax(0,1fr);
  gap: 12px;
  width: 100%;
  display: grid;
}

.section-cta-actions .line-cta,.section-cta-actions .phone-cta{
  width: 100%;
}

.layout-calm .section-cta .phone-cta{
  color: #17352d;
  background: #f4ead7;
  border: 1px solid #d8b66c;
  border-radius: 12px;
  align-items: center;
  gap: 14px;
  min-height: 64px;
  padding: 0 24px;
  display: flex;
  box-shadow: inset 0 0 0 1px #ffffff9e,0 7px 18px #082d2329;
}

.layout-calm .section-cta .phone-cta-badge{
  color: #fff;
  background: #0d513d;
  border-radius: 7px;
  place-items: center;
  min-width: 46px;
  min-height: 32px;
  font-size: 11px;
  font-weight: 900;
  display: grid;
}

.layout-calm .section-cta .phone-cta-copy{
  flex-direction: column;
  flex: 1;
  justify-content: center;
  align-items: center;
  gap: 2px;
  display: flex;
}

.layout-calm .section-cta .phone-cta-copy small{
  color: #17352d;
  letter-spacing: .035em;
  margin: 0;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.1;
}

.layout-calm .section-cta .phone-cta b{
  text-align: center;
  flex: 1;
  font-size: 15px;
}

.layout-calm .section-cta .phone-cta i{
  color: #b8791f;
  font-size: 24px;
  font-style: normal;
}

.lp-manga-composition .manga-settlement-dialogue p span{
  text-align: left;
  white-space: pre-line;
  align-self: center;
  width: auto;
  min-width: 0;
  display: block;
}

.lp-manga-composition .manga-settlement-dialogue p:nth-child(2) span{
  margin: 0;
}

.layout-calm .aftercare-character{
  aspect-ratio: 5/4;
  min-height: 0;
}

.layout-calm .aftercare-character img{
  object-fit: cover;
  object-position: center center;
  width: 100%;
  height: 100%;
  bottom: 0;
  right: 0;
}

@media (width<=700px) {
  .section-cta-actions{
    grid-template-columns: minmax(0,1fr) minmax(0,1fr);
    gap: 8px;
  }
  .section-cta-actions .phone-cta{
    order: 1;
  }
  .section-cta-actions .line-cta{
    order: 2;
  }
  .layout-calm .section-cta-actions .phone-cta,.layout-calm .section-cta-actions .line-cta{
    gap: 5px;
    min-height: 62px;
    margin-top: 0;
    padding-inline: 8px;
    font-size: 10px;
  }
  .layout-calm .section-cta-actions .phone-cta-badge,.layout-calm .section-cta-actions .line-cta-badge{
    box-sizing: border-box;
    flex: 0 0 32px;
    place-items: center;
    width: 32px;
    min-width: 32px;
    min-height: 26px;
    padding: 0;
    font-size: 8px;
    display: grid;
  }
  .layout-calm .section-cta-actions .phone-cta b,.layout-calm .section-cta-actions .line-cta b{
    text-align: center;
    flex: 1;
    font-size: 10px;
  }
  .layout-calm .section-cta-actions .phone-cta-copy small{
    font-size: 8px;
  }
  .layout-calm .section-cta-actions .phone-cta i,.layout-calm .section-cta-actions .line-cta i{
    text-align: center;
    flex: 0 0 20px;
    margin-left: auto;
    font-family: inherit;
    font-size: 18px;
    font-weight: 800;
    line-height: 1;
  }
}

@media (width>=981px) {
  .hero.hero-manga-first{
    background: #f3ecdf;
    min-height: clamp(700px,78vh,840px);
    padding: 0;
  }
  .hero.hero-manga-first:after{
    z-index: 1;
    content: "";
    pointer-events: none;
    background: linear-gradient(90deg,#f8f4e9fa 0%,#f8f4e9e6 30%,#f8f4e99e 52%,#f8f4e91f 78%,#f8f4e90a 100%),linear-gradient(#ffffff1a,#f6f0e433);
    display: block;
    position: absolute;
    inset: 0;
  }
  .hero-manga-grid{
    opacity: 1;
    width: 100%;
    height: 100%;
    inset: 0;
    transform: none;
  }
  .hero-manga-image{
    object-fit: cover;
    object-position: center 48%;
    filter: saturate(.9)contrast(.96)brightness(1.03);
    width: 100%;
    height: 100%;
  }
  .hero-manga-first .hero-content{
    background: linear-gradient(90deg,#f8f4e9e6 0%,#f8f4e99e 76%,#0000 100%);
    width: min(980px,80vw);
    margin-left: max(56px,50vw - 664px);
    padding: clamp(48px,6vh,72px) clamp(38px,4vw,64px);
  }
  .hero-manga-first .hero-content h1{
    letter-spacing: .01em;
    max-width: 860px;
    margin: 24px 0;
    font-size: clamp(46px,3.6vw,54px);
    line-height: 1.28;
  }
  .hero-manga-first .hero-content h1 span{
    white-space: nowrap;
  }
  .hero-manga-first .hero-lead{
    max-width: 680px;
    font-size: 18px;
    line-height: 1.9;
  }
  .hero-credentials{
    max-width: 680px;
    font-size: 20px;
  }
  .hero-credentials b{
    font-size: 22px;
  }
}

@media (width<=760px) {
  .hero.hero-manga-first{
    min-height: 0;
  }
  .hero-manga-grid{
    opacity: .16;
    width: 100%;
    height: 100%;
    inset: 0;
    transform: none;
  }
  .hero-manga-image{
    object-fit: cover;
    object-position: 58% center;
    width: 100%;
    height: 100%;
  }
  .hero-manga-first .hero-content{
    background: linear-gradient(90deg,#fbfaf5f5 0%,#fbfaf5db 72%,#fbfaf580 100%);
    width: 100%;
    padding: 34px 18px 32px 22px;
  }
  .hero-manga-first .hero-content h1{
    letter-spacing: -.03em;
    max-width: none;
    font-size: clamp(19px,6vw,26px);
    line-height: 1.45;
  }
  .hero-manga-first .hero-content h1 span{
    white-space: nowrap;
  }
  .section-heading h2,.concerns-copy h2,.price-copy h2,.contact-copy h2,.price-table-heading h3{
    text-wrap: balance;
    word-break: normal;
    overflow-wrap: break-word;
  }
  .section-heading h2 br,.concerns-copy h2 br,.price-copy h2 br{
    display: none;
  }
  .section-heading h2,.price-copy h2{
    font-size: clamp(23px,6.7vw,28px);
    line-height: 1.5;
  }
  .section-heading p,.concerns-copy p,.price-copy p,.flow-copy p,.contact-copy p{
    text-wrap: pretty;
  }
  .site-header .header-line-cta{
    border-radius: 6px;
    width: auto;
    height: 34px;
    min-height: 34px;
    padding: 0 9px;
    font-size: 9px;
    animation: none;
    box-shadow: 0 5px 12px #06c7552e;
  }
  .section-cta p b{
    text-wrap: nowrap;
    white-space: nowrap;
    max-width: none;
    font-size: 12px;
  }
}

.layout-calm{
  --palette-base: #f7f1e6;
  --palette-card: #fffdf8;
  --palette-secondary: #214c3d;
  --palette-secondary-deep: #17382e;
  --palette-accent: #b68a45;
  --palette-line: #ded3c2;
  --ink: var(--palette-secondary-deep);
  --muted: #637168;
  --primary: var(--palette-secondary);
  --primary-dark: var(--palette-secondary-deep);
  --accent: var(--palette-accent);
  --accent-soft: #efe2cc;
  --paper: var(--palette-base);
  --surface: #eee7da;
  --line: var(--palette-line);
  background: var(--palette-base);
}

.layout-calm .site-header,.layout-calm footer{
  color: var(--palette-secondary-deep);
  border-color: var(--palette-line);
  background: #fffdf8f7;
}

.layout-calm .site-header{
  border-bottom: 1px solid var(--palette-line);
}

.layout-calm .brand-mark,.layout-calm .footer-brand .brand-mark{
  color: #fff;
  background: linear-gradient(145deg,#2d5b4a 0%,var(--palette-secondary-deep) 100%);
}

.layout-calm footer p,.layout-calm footer>small,.layout-calm .footer-brand small{
  color: var(--muted);
}

.layout-calm .header-cta,.layout-calm .contact-section form .button{
  color: #fff;
  background: var(--palette-secondary-deep);
  border-color: var(--palette-secondary-deep);
  box-shadow: 0 9px 22px #17382e29;
}

.layout-calm .header-cta:hover,.layout-calm .contact-section form .button:hover{
  background: #285746;
  box-shadow: 0 11px 24px #17382e33;
}

.layout-calm #concerns,.layout-calm #faq{
  background: var(--palette-card);
}

.layout-calm #service,.layout-calm #price,.layout-calm #flow{
  background: var(--palette-base);
}

.layout-calm .section-heading h2,.layout-calm .concerns-copy h2,.layout-calm .price-copy h2,.layout-calm .price-table-heading h3{
  color: var(--palette-secondary-deep);
}

.layout-calm .eyebrow span{
  background: var(--palette-accent);
}

.layout-calm .worry-grid article:nth-child(n),.layout-calm .flow-list li:nth-child(n){
  color: var(--palette-secondary-deep);
  background: var(--palette-card);
  border-color: var(--palette-line);
}

.layout-calm .worry-grid article>span,.layout-calm .flow-list li>span{
  color: var(--palette-accent);
}

.layout-calm .section-spot-visual{
  z-index: 2;
  background: var(--palette-card);
  border: 1px solid var(--palette-line);
  grid-column: 1/-1;
  justify-self: center;
  width: min(760px,100%);
  margin: 0 auto 32px;
  padding: 9px;
  position: relative;
  overflow: hidden;
  box-shadow: 0 16px 38px #214c3d1a;
}

.layout-calm .section-spot-image{
  position: relative;
}

.layout-calm .section-spot-visual img{
  aspect-ratio: 3/2;
  object-fit: contain;
  background: #f2eadc;
  width: 100%;
  height: auto;
  display: block;
}

.layout-calm .section-spot-visual figcaption{
  color: var(--palette-secondary-deep);
  border-left: 4px solid var(--palette-accent);
  padding: 13px 15px 7px 17px;
}

.layout-calm .section-spot-visual figcaption b,.layout-calm .section-spot-visual figcaption span{
  display: block;
}

.layout-calm .section-spot-visual figcaption b{
  font: 600 17px/1.45 var(--display);
}

.layout-calm .section-spot-visual figcaption span{
  color: var(--muted);
  margin-top: 3px;
  font-size: 10px;
  line-height: 1.7;
}

.layout-calm .section-spot-visual--price{
  margin-top: 8px;
}

.layout-calm .price-copy,.layout-calm .price-card,.layout-calm .price-table,.layout-calm .faq-list{
  color: var(--palette-secondary-deep);
  background: var(--palette-card);
  border-color: var(--palette-line);
}

.layout-calm .price-card h3{
  border-bottom-color: var(--palette-accent);
}

.layout-calm .price-note{
  background: #e7efe9;
}

.layout-calm .price-table-grid article:nth-child(n),.layout-calm .price-table-grid article:nth-of-type(2n){
  background: var(--palette-card);
  border-color: var(--palette-line);
  border-top-color: var(--palette-secondary);
}

.layout-calm .price-table-grid article>b,.layout-calm .price-table-grid article>strong{
  color: var(--palette-secondary-deep);
}

.layout-calm .price-table-grid article>b span{
  color: #fff;
  background: var(--palette-accent);
}

.layout-calm .price-includes{
  color: var(--palette-secondary-deep);
  background: #e5ece7;
  border-color: #cad7cf;
}

.layout-calm .price-includes span{
  color: var(--palette-secondary-deep);
  background: var(--palette-card);
  border-color: #ccd8d0;
}

.layout-calm .price-includes span:before{
  background: var(--palette-secondary);
}

.layout-calm .price-table-caution{
  color: var(--muted);
  background: #f1eadf;
}

.layout-calm .section-cta,.layout-calm .section-cta.tone-sky{
  background: var(--palette-secondary-deep);
  border-color: var(--palette-secondary-deep);
  box-shadow: 7px 8px #b68a452e;
}

.layout-calm .faq-list details{
  background: var(--palette-card);
  border-color: var(--palette-line);
}

.layout-calm .faq-list summary span,.layout-calm .faq-list details>div>span{
  color: var(--palette-accent);
}

.layout-calm .faq-list summary i{
  color: var(--palette-secondary);
}

.layout-calm .contact-section{
  color: var(--palette-secondary-deep);
  background: linear-gradient(112deg,var(--palette-base) 0 70%,#e3ebe5 70% 100%);
}

.layout-calm .contact-copy h2{
  color: var(--palette-secondary-deep);
}

.layout-calm .contact-copy>p,.layout-calm .contact-copy>small{
  color: var(--muted);
}

.layout-calm .contact-facts span{
  color: var(--palette-secondary-deep);
  border-color: var(--palette-line);
  background: #fffdf8d1;
}

.layout-calm .contact-facts b{
  color: var(--palette-accent);
}

.layout-calm .contact-section form{
  color: var(--palette-secondary-deep);
  background: var(--palette-card);
  border: 1px solid var(--palette-line);
}

@media (width<=760px) {
  .layout-calm .section-spot-visual{
    width: 100%;
    margin-bottom: 22px;
    padding: 6px;
    box-shadow: 0 10px 24px #214c3d17;
  }
  .layout-calm .section-spot-visual figcaption{
    padding: 10px 10px 6px 12px;
  }
  .layout-calm .section-spot-visual figcaption b{
    font-size: 13px;
  }
  .layout-calm .section-spot-visual figcaption span{
    font-size: 9px;
  }
  .layout-calm .contact-section{
    background: var(--palette-base);
  }
}

@media (width>=600px) {
  .layout-calm .aftercare-intro{
    grid-template-columns: minmax(0,1fr) minmax(260px,.95fr);
    align-items: center;
    gap: 18px;
  }
  .layout-calm .aftercare-copy{
    padding: 28px 0 34px;
  }
  .layout-calm #price{
    grid-template-columns: minmax(0,.9fr) minmax(260px,1.1fr);
    align-items: center;
    gap: 26px 18px;
    display: grid;
  }
  .layout-calm #price .price-copy{
    background: 0 0;
    border: 0;
    grid-area: 1/1;
    padding: 0;
  }
  .layout-calm #price .section-spot-visual--price{
    grid-area: 1/2;
    width: 100%;
    margin: 0;
  }
  .layout-calm #price .price-card{
    grid-area: 2/1/auto/-1;
  }
  .layout-calm #price .price-table{
    grid-area: 3/1/auto/-1;
  }
  .layout-calm #price>.section-cta{
    grid-area: 4/1/auto/-1;
  }
  .layout-calm .contact-section{
    grid-template-columns: minmax(0,.9fr) minmax(300px,1.1fr);
    align-items: start;
    gap: clamp(22px,4vw,52px);
    display: grid;
  }
  .layout-calm .contact-section form{
    padding: clamp(20px,3vw,30px);
  }
}

@media (width>=600px) and (width<=980px) {
  .layout-calm .aftercare-copy h2{
    font-size: clamp(30px, 2.65vw, 40px);
  }

  .layout-calm .price-copy h2,.layout-calm .contact-copy h2{
    font-size: 24px;
  }
  .layout-calm .aftercare-copy>p,.layout-calm .price-copy>p,.layout-calm .contact-copy>p{
    font-size: 10px;
    line-height: 1.9;
  }
  .layout-calm .contact-section{
    padding: 44px 24px 76px;
  }
  .layout-calm .contact-section form h3{
    font-size: 18px;
  }
  .layout-calm .contact-section form>p{
    margin-bottom: 16px;
  }
  .layout-calm .contact-section label{
    margin-top: 10px;
  }
  .layout-calm .contact-section input,.layout-calm .contact-section textarea,.layout-calm .contact-section select{
    padding: 9px 10px;
  }
}

@media (width<=599px) {
  .layout-calm .aftercare-intro,.layout-calm #price,.layout-calm .contact-section{
    grid-template-columns: 1fr;
  }
  .layout-calm #price .price-copy,.layout-calm #price .section-spot-visual--price,.layout-calm #price .price-card,.layout-calm #price .price-table,.layout-calm #price>.section-cta{
    grid-area: auto/1;
  }
}

.layout-calm .section-cta .phone-cta b{
  color: #000;
  transition: color .2s;
}

.layout-calm .section-cta .phone-cta:hover,.layout-calm .section-cta .phone-cta:focus-visible{
  color: #fff;
  background: #0d513d;
  border-color: #0d513d;
}

.layout-calm .section-cta .phone-cta:hover b,.layout-calm .section-cta .phone-cta:focus-visible b,.layout-calm .section-cta .phone-cta:hover i,.layout-calm .section-cta .phone-cta:focus-visible i{
  color: #fff;
}

@media (width<=760px) {
  .layout-calm .aftercare-copy h2{
    font-size: clamp(30px, 2.65vw, 40px);
  }
  .layout-calm .price-copy h2{
    font-size: 28px;
  }
  .layout-calm #flow .section-heading.centered{
    text-align: left;
    max-width: none;
    margin-left: 0;
    margin-right: 0;
  }
  .layout-calm .mobile-cta .footer-phone-cta,.layout-calm .mobile-cta .footer-phone-cta:hover,.layout-calm .mobile-cta .footer-phone-cta:focus-visible{
    color: #fff;
    background: linear-gradient(135deg,#d87918 0%,#ec9c28 52%,#f5ba49 100%);
    border-color: #ffe2a6b8;
    box-shadow: inset 0 1px #ffffff5c,0 5px 16px #934d0a4d;
  }
}

.layout-calm .story-cta .phone-cta,.layout-calm .section-cta .phone-cta,.layout-calm .footer-phone-cta,.layout-calm .story-cta .phone-cta:hover,.layout-calm .story-cta .phone-cta:focus-visible,.layout-calm .section-cta .phone-cta:hover,.layout-calm .section-cta .phone-cta:focus-visible,.layout-calm .footer-phone-cta:hover,.layout-calm .footer-phone-cta:focus-visible{
  color: #fff;
  background: linear-gradient(135deg,#d87918 0%,#ec9c28 52%,#f5ba49 100%);
  border-color: #ffe2a6b8;
  box-shadow: inset 0 1px #ffffff5c,0 5px 16px #934d0a4d;
}

.layout-calm .story-cta .phone-cta-badge,.layout-calm .section-cta .phone-cta-badge{
  color: #9b5100;
  background: #fff7e6;
}

.layout-calm .story-cta .phone-cta b,.layout-calm .story-cta .phone-cta small,.layout-calm .story-cta .phone-cta i,.layout-calm .section-cta .phone-cta b,.layout-calm .section-cta .phone-cta small,.layout-calm .section-cta .phone-cta i{
  color: #fff;
}

@media (width<=760px) {
  .layout-calm #service>.section-cta>p>b{
    margin-top: -14px;
  }
}

@property --tw-rotate-x {
  syntax: "*";
  inherits: false;
}

@property --tw-rotate-y {
  syntax: "*";
  inherits: false;
}

@property --tw-rotate-z {
  syntax: "*";
  inherits: false;
}

@property --tw-skew-x {
  syntax: "*";
  inherits: false;
}

@property --tw-skew-y {
  syntax: "*";
  inherits: false;
}

@property --tw-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-shadow-color {
  syntax: "*";
  inherits: false;
}

@property --tw-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-inset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-shadow-color {
  syntax: "*";
  inherits: false;
}

@property --tw-inset-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-ring-color {
  syntax: "*";
  inherits: false;
}

@property --tw-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-inset-ring-color {
  syntax: "*";
  inherits: false;
}

@property --tw-inset-ring-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-ring-inset {
  syntax: "*";
  inherits: false;
}

@property --tw-ring-offset-width {
  syntax: "<length>";
  inherits: false;
  initial-value: 0;
}

@property --tw-ring-offset-color {
  syntax: "*";
  inherits: false;
  initial-value: #fff;
}

@property --tw-ring-offset-shadow {
  syntax: "*";
  inherits: false;
  initial-value: 0 0 #0000;
}

@property --tw-blur {
  syntax: "*";
  inherits: false;
}

@property --tw-brightness {
  syntax: "*";
  inherits: false;
}

@property --tw-contrast {
  syntax: "*";
  inherits: false;
}

@property --tw-grayscale {
  syntax: "*";
  inherits: false;
}

@property --tw-hue-rotate {
  syntax: "*";
  inherits: false;
}

@property --tw-invert {
  syntax: "*";
  inherits: false;
}

@property --tw-opacity {
  syntax: "*";
  inherits: false;
}

@property --tw-saturate {
  syntax: "*";
  inherits: false;
}

@property --tw-sepia {
  syntax: "*";
  inherits: false;
}

@property --tw-drop-shadow {
  syntax: "*";
  inherits: false;
}

@property --tw-drop-shadow-color {
  syntax: "*";
  inherits: false;
}

@property --tw-drop-shadow-alpha {
  syntax: "<percentage>";
  inherits: false;
  initial-value: 100%;
}

@property --tw-drop-shadow-size {
  syntax: "*";
  inherits: false;
}

.manga-section--bare .lp-manga-composition{
  gap: clamp(5px,-0.5vw,20px);
}

.lp-manga-composition .manga-teaser{
  background: #171511;
  border-block: 1px solid #d9d1c2;
  grid-template-columns: repeat(12,minmax(0,1fr));
  gap: clamp(3px,.55vw,6px);
  padding: clamp(3px,.55vw,6px);
  display: grid;
  overflow: hidden;
}

.lp-manga-composition .teaser-panel{
  isolation: isolate;
  background: #171511;
  min-width: 0;
  position: relative;
  overflow: hidden;
  container-type: inline-size;
}

.lp-manga-composition .teaser-panel>img{
  z-index: -2;
  object-fit: cover;
  width: 100%;
  height: 100%;
  position: absolute;
  inset: 0;
}

.lp-manga-composition .teaser-panel:after{
  z-index: -1;
  content: "";
  pointer-events: none;
  position: absolute;
  inset: 0;
}

.lp-manga-composition .teaser-panel--room{
  aspect-ratio: 7/4;
  grid-area: 1/6/auto/span 7;
}

.lp-manga-composition .teaser-panel--room>img{
  object-position: 48% center;
}

.lp-manga-composition .teaser-panel--room:after{
  background: linear-gradient(90deg,#100e0bad,#0000 54%),linear-gradient(#0c0b0929,#0c0b091f);
}

.lp-manga-composition .teaser-panel--memories{
  aspect-ratio: 5/4;
  grid-area: 1/1/auto/span 5;
}

.lp-manga-composition .teaser-panel--memories>img{
  object-position: 38% center;
}

.lp-manga-composition .teaser-panel--memories:after{
  background: linear-gradient(#0000 38%,#0c0b09a8);
}

.lp-manga-composition .teaser-panel--discovery{
  aspect-ratio: 5/4;
  grid-area: 2/8/auto/span 5;
}

.lp-manga-composition .teaser-panel--discovery>img{
  object-position: 52% center;
}

.lp-manga-composition .teaser-panel--discovery:after{
  background: linear-gradient(90deg,#0000 46%,#0c0b0938);
}

.lp-manga-composition .teaser-panel--emotion{
  aspect-ratio: 7/4;
  grid-area: 2/1/auto/span 7;
}

.lp-manga-composition .teaser-panel--emotion>img{
  object-position: 42% center;
}

.lp-manga-composition .teaser-panel--emotion:after{
  background: linear-gradient(#0000 39%,#0c0b09b3);
}

.lp-manga-composition .teaser-panel--rewind{
  aspect-ratio: 862/352;
  text-align: center;
  grid-area: 3/1/auto/-1;
  place-items: center;
  display: grid;
}

.lp-manga-composition .teaser-panel--rewind:after{
  background: #0c1e18bd;
}

.lp-manga-composition .teaser-heading,.lp-manga-composition .teaser-dialogue,.lp-manga-composition .teaser-caption,.lp-manga-composition .teaser-rewind-copy{
  z-index: 1;
  margin: 0;
  position: absolute;
}

.lp-manga-composition .teaser-heading{
  color: #fff;
  width: 16%;
  height: 82%;
  font: 800 clamp(10px, 3.1cqw, 17px) / 1.55 var(--display);
  letter-spacing: .06em;
  writing-mode: vertical-rl;
  text-orientation: upright;
  text-shadow: 0 2px 5px #0000006b;
  background: #1a4837db;
  place-items: center;
  padding: .6em .35em;
  display: grid;
  top: 4%;
  right: 2.5%;
}

.lp-manga-composition .teaser-dialogue{
  color: #171511;
  font: 700 clamp(11px, 3.4cqw, 19px) / 1.55 var(--display);
  letter-spacing: .04em;
  text-align: center;
  writing-mode: vertical-rl;
  text-orientation: upright;
  background: var(--manga-balloon-fill);
  filter: drop-shadow(0 .25cqw .35cqw #16110c33);
  border: max(1px,.2cqw) solid #171511;
  border-radius: 50%;
  place-items: center;
  padding: .72em 1.18em;
  display: grid;
}

.lp-manga-composition .teaser-dialogue--room{
  width: 16.719%;
  height: 59.036%;
  margin: 4px 5px 1px 16px;
  padding: clamp(10px,3.91cqw,18px) clamp(16px,6.45cqw,28px);
  font-size: clamp(19px,2cqw,10px);
  bottom: 28%;
  left: 8%;
  right: auto;
}

.lp-manga-composition .teaser-dialogue--room:after{
  aspect-ratio: 1;
  content: "";
  background: var(--manga-balloon-fill);
  border: max(1px,.2cqw) solid #171511;
  border-radius: 50%;
  width: 18%;
  position: absolute;
  bottom: -17%;
  left: 17%;
  right: auto;
}

.lp-manga-composition .teaser-caption{
  color: #fff;
  width: 46%;
  height: 92%;
  font: 700 clamp(10px, 3.8cqw, 17px) / 1.55 var(--display);
  letter-spacing: .05em;
  text-align: center;
  writing-mode: vertical-rl;
  text-orientation: upright;
  text-shadow: 0 1px 4px #0000009e;
  background: #18251fd1;
  place-items: center;
  padding: .65em .7em;
  display: grid;
  bottom: 4%;
  right: 3%;
}

.lp-manga-composition .teaser-caption--memories{
  width: 23.082%;
  height: 80.455%;
}

.lp-manga-composition .teaser-dialogue--staff{
  border-radius: 48% 45% 52% 42%;
  width: 34%;
  height: 63.172%;
  margin-bottom: -7px;
  margin-right: -7px;
  bottom: 6%;
  right: 62%;
}

.lp-manga-composition .teaser-dialogue--emotion{
  width: 16.428%;
  height: 36.555%;
  font-size: clamp(6px,1.696cqw,30px);
  inset: 4% 3% auto auto;
}

.lp-manga-composition .teaser-caption--ending{
  width: 22.311%;
  height: 92%;
  bottom: 4%;
  left: 3%;
  right: auto;
}

.lp-manga-composition .teaser-rewind-copy{
  color: #fff;
  width: min(76%,720px);
  font: 650 clamp(13px, 2.35cqw, 23px) / 1.7 var(--display);
  letter-spacing: .1em;
  writing-mode: horizontal-tb;
  text-orientation: mixed;
  text-shadow: 0 2px 8px #000000b8;
  place-items: center;
  gap: .6em;
  display: grid;
  position: relative;
}

.lp-manga-composition .teaser-rewind-copy p{
  white-space: pre;
  margin: 0;
}

.lp-manga-composition .teaser-heading,.lp-manga-composition .teaser-dialogue,.lp-manga-composition .teaser-caption{
  text-align: start;
  white-space: pre;
}

.lp-manga-composition .manga-story-divider{
  color: #235341;
  font: 800 clamp(14px, 2vw, 19px) / 1.4 var(--display);
  letter-spacing: .24em;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: 16px;
  padding-inline: clamp(18px,4vw,42px);
  display: grid;
}

.lp-manga-composition .manga-story-divider:before,.lp-manga-composition .manga-story-divider:after{
  content: "";
  background: linear-gradient(90deg,#0000,#8fa99f);
  height: 1px;
}

.lp-manga-composition .manga-story-divider:after{
  background: linear-gradient(90deg,#8fa99f,#0000);
}

.lp-manga-composition .manga-page-base{
  z-index: 0;
  position: relative;
}

.lp-manga-composition .manga-dialogue-layer{
  z-index: 2;
}

.lp-manga-composition .manga-balloon--compact{
  font-size: clamp(7px,1.65cqw,16px);
}

.lp-manga-composition .manga-extra-panel{
  isolation: isolate;
  background: #fff;
  border-block: 1px solid #d9d1c2;
  width: 100%;
  margin: 0;
  position: relative;
  overflow: hidden;
  container-type: inline-size;
}

.lp-manga-composition .manga-extra-visual{
  position: relative;
}

.lp-manga-composition .manga-extra-visual>img{
  width: 100%;
  height: auto;
  display: block;
}

.lp-manga-composition .manga-extra-copy{
  z-index: 2;
  pointer-events: none;
  position: absolute;
  inset: 0;
}

.lp-manga-composition .manga-extra-copy .manga-extra-line{
  pointer-events: auto;
}

.lp-manga-composition .manga-extra-line,.lp-manga-composition .manga-extra-note{
  text-align: center;
  margin: 0;
}

.lp-manga-composition .manga-settlement-dialogue{
  background: #fffdf7;
  border-top: 1px solid #d9d1c2;
  grid-template-columns: minmax(0,.9125fr) minmax(0,1fr);
  gap: 12px;
  padding: clamp(18px,3vw,28px);
  display: grid;
}

.lp-manga-composition .manga-settlement-dialogue p{
  color: #211b16;
  font: 700 clamp(9px, 1.7cqw, 16px) / 1.45 var(--display);
  background: #fff;
  border: 1px solid #d9d1c2;
  grid-template-columns: max(38px,7.8cqw) minmax(0,1fr);
  align-items: center;
  gap: max(8px,1.2cqw);
  margin: 0;
  padding: .8cqw 1.25cqw;
  display: grid;
}

.lp-manga-composition .manga-settlement-dialogue p:first-child,.lp-manga-composition .manga-settlement-dialogue p:nth-child(2){
  height: 9.266cqw;
}

.lp-manga-composition .manga-settlement-dialogue b{
  color: #fff;
  width: 100%;
  font: 800 .72em / 1.7 var(--sans);
  letter-spacing: .08em;
  text-align: center;
  background: #235341b3;
  border-radius: 99px;
  padding: .2em .75em;
}

.lp-manga-composition .manga-settlement-dialogue p:nth-child(2) b{
  background: #8a6a32;
}

.lp-manga-composition .manga-settlement-dialogue .manga-settlement-relief{
  color: #235341;
  text-align: center;
  white-space: nowrap;
  background: 0 0;
  border: 0;
  grid-column: 1/-1;
  width: 100%;
  padding: 4px 12px 0;
  font-size: clamp(14px,2vw,20px);
  display: block;
}

.lp-manga-composition .manga-extra-panel--reassurance .manga-extra-note{
  box-shadow: none;
  border: 0;
  border-radius: 0;
  padding: .85em 1.2em;
  position: static;
  left: auto;
  right: auto;
}

.lp-manga-composition .manga-extra-line{
  color: #171511;
  width: 18%;
  height: 53%;
  font: 700 clamp(11px, 2.15cqw, 20px) / 1.55 var(--display);
  letter-spacing: .04em;
  writing-mode: vertical-rl;
  text-orientation: upright;
  text-align: start;
  white-space: pre;
  background: var(--manga-balloon-fill);
  filter: drop-shadow(0 .22cqw .3cqw #19140e24);
  border: max(1px,.18cqw) solid #171511;
  border-radius: 50%;
  place-items: center;
  padding: .8em .55em;
  display: grid;
  position: absolute;
  bottom: 14%;
}

.lp-manga-composition .manga-extra-line--staff:before,.lp-manga-composition .manga-extra-line--misaki:before{
  color: #fff;
  letter-spacing: .12em;
  writing-mode: horizontal-tb;
  background: #235341;
  border-radius: 99px;
  padding: .18em .7em;
  font-size: .58em;
  font-weight: 800;
  position: absolute;
  top: -1.05em;
}

.lp-manga-composition .manga-extra-line--staff{
  right: 2.5%;
}

@media (width<=520px) {
  .lp-manga-composition .manga-balloon--thought[data-balloon-scale="0.72"]{
    font-size: 2.2cqw !important;
  }
  .lp-manga-composition .manga-page--workflow,.lp-manga-composition .manga-page--closing{
    overflow: hidden;
  }
  .lp-manga-composition .manga-page--workflow>.manga-page-base,.lp-manga-composition .manga-page--workflow>.manga-dialogue-layer{
    transform-origin: 50%;
    transform: translateY(-.35%)scaleY(1.012);
  }
  .lp-manga-composition .manga-page--closing>.manga-page-base,.lp-manga-composition .manga-page--closing>.manga-dialogue-layer{
    transform-origin: 50%;
    transform: translateY(-.45%)scale(1.012);
  }
  
  .lp-manga-composition .manga-balloon--hearing-request{
    --balloon-mobile-height: 36.5cqw !important;
    margin-top: -8cqw !important;
  }
  .lp-manga-composition .manga-balloon--estimate-caption{
    margin-top: 2.1977cqw !important;
  }
  .lp-manga-composition .manga-balloon--estimate-caution{
    --balloon-width: 96.55% !important;
    text-align: center !important;
    margin-top: .916cqw !important;
    margin-left: -2.358cqw !important;
  }
  .lp-manga-composition .manga-balloon--estimate-caution .manga-balloon-text{
    text-align: center;
    width: 100%;
  }
  .lp-manga-composition .manga-balloon--work-start-caption{
    margin-top: 15.224cqw !important;
  }
  .lp-manga-composition .manga-balloon--friend-recall{
    margin-left: -76.67cqw !important;
  }
  .lp-manga-composition .manga-memory-inset .manga-memory-speech.manga-spoken-dialogue{
    width: 30%;
    height: 61%;
    top: 9%;
    left: 34%;
  }
  .lp-manga-composition .manga-memory-inset .manga-memory-speech.manga-spoken-dialogue span{
    white-space: nowrap !important;
  }
  .lp-manga-composition .manga-balloon--vendor-concern{
    padding: .45cqw;
    --balloon-x: 71.5% !important;
    --balloon-y: 69.2% !important;
    --balloon-width: 18cqw !important;
    --balloon-height: 18.5cqw !important;
  }
  .lp-manga-composition .manga-balloon--vendor-concern .manga-balloon-text{
    text-align: center;
    place-self: center;
    width: 100%;
    height: 100%;
  }
  .lp-manga-composition .manga-balloon--found-relief{
    margin-top: -3.2cqw !important;
  }
  .lp-manga-composition .manga-extra-panel--buyback .manga-extra-line--misaki:after{
    display: none !important;
  }
  
}

.lp-manga-composition .manga-extra-panel--buyback .manga-extra-line--staff{
  bottom: 16%;
  left: 29.5%;
  right: auto;
}

.lp-manga-composition .manga-extra-panel--buyback .manga-extra-line--staff:after{
  display: none;
}

.lp-manga-composition .manga-extra-panel--buyback .manga-extra-tail--staff{
  background: var(--manga-balloon-fill);
  clip-path: polygon(0 0,100% 50%,0 100%);
  pointer-events: auto;
  border: 0;
  border-top: max(1px,.18cqw) solid #171511;
  width: 64%;
  height: 18%;
  margin: 0;
  display: block;
  position: absolute;
  inset: -24% -58% auto auto;
  transform: none;
}

.lp-manga-composition .manga-extra-panel--buyback .manga-extra-line--misaki{
  bottom: 18%;
  left: 1.5%;
}

.lp-manga-composition .manga-extra-panel--buyback .manga-extra-line--misaki:after{
  display: none;
}

.lp-manga-composition .manga-extra-panel--reassurance .manga-extra-line--staff{
  height: 82%;
  bottom: 9%;
}

.lp-manga-composition .manga-extra-line--misaki{
  left: 2.5%;
}

.lp-manga-composition .manga-extra-line--staff:after,.lp-manga-composition .manga-extra-line--misaki:after{
  aspect-ratio: 1;
  content: "";
  background: var(--manga-balloon-fill);
  border-bottom: max(1px,.18cqw) solid #171511;
  border-right: max(1px,.18cqw) solid #171511;
  border-radius: 0 0 .18em;
  width: 14%;
  position: absolute;
  bottom: -4%;
  transform: rotate(45deg);
}

.lp-manga-composition .manga-extra-line--staff:after{
  right: 24%;
}

.lp-manga-composition .manga-extra-line--misaki:after{
  left: 24%;
}

.lp-manga-composition .manga-extra-panel--reassurance .manga-extra-line--misaki{
  width: 15%;
  height: 55%;
  bottom: 23%;
}

.lp-manga-composition .manga-extra-note{
  color: #fff;
  font: 700 clamp(11px, 1.85cqw, 18px) / 1.65 var(--display);
  letter-spacing: .05em;
  background: #235341;
  border: 1px solid #ffffffb8;
  border-radius: .3em;
  padding: .65em 1.1em;
  position: absolute;
  bottom: 2.5%;
  left: 18%;
  right: 18%;
  box-shadow: 0 2px 10px #0000003d;
}

@media (width<=680px) {
  .lp-manga-composition .manga-teaser{
    border-inline: 0;
  }
  .lp-manga-composition .teaser-heading{
    font-size: clamp(10px,3cqw,15px);
  }
  .lp-manga-composition .teaser-dialogue,.lp-manga-composition .teaser-caption{
    font-size: clamp(8px,2.2cqw,12px);
  }
  .lp-manga-composition .teaser-rewind-copy{
    font-size: clamp(9px,2.45cqw,13px);
  }
  .lp-manga-composition .manga-extra-panel{
    border-inline: 0;
  }
  .lp-manga-composition .manga-extra-note{
    box-shadow: none;
    border: 0;
    border-radius: 0;
    padding: .9em 1.2em;
    font-size: clamp(10px,2.7cqw,13px);
    line-height: 1.7;
    position: static;
    left: auto;
    right: auto;
  }
  .lp-manga-composition .manga-extra-line{
    width: 19%;
    height: 55%;
    font-size: clamp(10px,2.7cqw,13px);
    bottom: 15%;
  }
  
}

@media (width<=520px) {
  .lp-manga-composition .manga-balloon--spoken[data-balloon-scale="0.72"]{
    height: var(--balloon-mobile-height,var(--balloon-height));
    font-size: 2.46696cqw !important;
  }
  .lp-manga-composition .manga-memory-dialogue-card.manga-spoken-dialogue span,.lp-manga-composition .manga-settlement-dialogue span.manga-spoken-dialogue,.lp-manga-composition .teaser-dialogue.manga-spoken-dialogue,.lp-manga-composition .manga-extra-line.manga-spoken-dialogue{
    font-size: 8.1px !important;
  }
  .lp-manga-composition .manga-memory-inset .manga-memory-speech.manga-spoken-dialogue{
    width: 27%;
    height: 58%;
    margin-top: 0;
    margin-left: 0;
    top: 10%;
    left: 36%;
  }
  .lp-manga-composition .manga-memory-inset .manga-memory-speech.manga-spoken-dialogue:after{
    width: 1.6cqw;
    height: 1.6cqw;
    top: 52%;
    right: -.75cqw;
  }
  .lp-manga-composition .manga-balloon--workflow-caption{
    width: 45% !important;
    height: 2.8% !important;
    margin-left: 38cqw !important;
  }
  .lp-manga-composition .manga-teaser{
    grid-template-columns: 1fr;
  }
  .lp-manga-composition .teaser-panel--room,.lp-manga-composition .teaser-panel--memories,.lp-manga-composition .teaser-panel--discovery,.lp-manga-composition .teaser-panel--emotion,.lp-manga-composition .teaser-panel--rewind{
    grid-area: auto/1;
  }
  .lp-manga-composition .teaser-panel--room{
    aspect-ratio: 4/3;
  }
  .lp-manga-composition .teaser-panel--memories,.lp-manga-composition .teaser-panel--discovery,.lp-manga-composition .teaser-panel--emotion{
    aspect-ratio: 5/4;
  }
  .lp-manga-composition .teaser-panel--rewind{
    aspect-ratio: 3/2;
  }
  .lp-manga-composition .teaser-heading{
    width: 15%;
    height: 70%;
    margin-top: 11.007cqw;
    font-size: clamp(10px,3.2cqw,15px);
  }
  .lp-manga-composition .teaser-dialogue--room{
    width: 13.7139%;
    height: 48%;
    margin: 0 .2342cqw 35cqw 1.1px;
    padding: .88145cqw 1.4251cqw;
  }
  .lp-manga-composition .teaser-dialogue--room:after{
    display: none;
  }
  .lp-manga-composition .teaser-caption{
    width: 25%;
    height: 86%;
    font-size: clamp(10px,3.3cqw,14px);
  }
  .lp-manga-composition .teaser-caption--memories{
    width: 18.4426%;
    height: 76.6308%;
    margin-bottom: 13.349cqw;
  }
  .lp-manga-composition .teaser-dialogue--staff{
    width: 13.8211%;
    height: 52.1886%;
    margin: -.23419cqw 9.60187cqw 27.8689cqw -.93677cqw;
  }
  .lp-manga-composition .teaser-dialogue--emotion{
    width: 11.1626%;
    height: 30%;
    margin-right: 4.68384cqw;
  }
  .lp-manga-composition .teaser-caption--ending{
    width: 18.6129%;
    height: 68.3859%;
    margin-top: -.23419cqw;
  }
  .lp-manga-composition .manga-settlement-dialogue{
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 14px;
  }
  .lp-manga-composition .manga-settlement-dialogue p:nth-child(-n/**/+2) span{
    white-space: nowrap;
    font-size: clamp(6px,1.85cqw,8px);
  }
  .lp-manga-composition .manga-settlement-dialogue .manga-settlement-relief{
    grid-column: 1;
  }
  .lp-manga-composition .manga-extra-panel--buyback .manga-extra-line--staff{
    border-radius: 32%/18%;
    width: 11.6087%;
    height: 44.462%;
    margin: -1.15474cqw -3.00231cqw 16.3972cqw 11.0855cqw;
    font-size: 1.77621cqw;
  }
  .lp-manga-composition .manga-extra-panel--buyback .manga-extra-line--misaki{
    border-radius: 32%/18%;
    width: 11.6087%;
    height: 57.5%;
    margin: -.23095cqw 0 15.2425cqw;
    font-size: 1.77621cqw;
    bottom: 9%;
  }
  .lp-manga-composition .manga-extra-panel--buyback .manga-extra-tail--staff{
    display: none;
  }
  .lp-manga-composition .manga-balloon--estimate-caution{
    color: #fff;
    text-align: left;
    filter: none;
    background: #0d513deb;
    border-color: #fffc;
    border-radius: 0;
    padding: .55cqw 1.2cqw;
    line-height: 1.45;
    --balloon-x: 3% !important;
    --balloon-y: 64.4% !important;
    --balloon-width: 94% !important;
    --balloon-height: 2.85% !important;
    font-size: 1.15cqw !important;
    transform: none !important;
  }
  .lp-manga-composition .manga-balloon--inquiry-caption{
    margin-top: 32.7cqw !important;
  }
  .lp-manga-composition .manga-balloon--self-check-thought,.lp-manga-composition .manga-balloon--vendor-concern{
    --balloon-height: 29cqw !important;
  }
  .lp-manga-composition .manga-balloon--vendor-concern{
    filter: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
    background: 0 0;
    border: 0;
    padding: .7cqw;
    --balloon-x: 75% !important;
    --balloon-y: 67.4% !important;
    --balloon-width: 20cqw !important;
    --balloon-height: 20cqw !important;
    margin: 0 !important;
  }
  .lp-manga-composition .manga-balloon--qualification-thought{
    --balloon-height: 45cqw !important;
  }
  .lp-manga-composition .manga-balloon--friend-recall{
    --balloon-width: 20.2cqw !important;
    --balloon-height: 42cqw !important;
  }
  .lp-manga-composition .manga-balloon--work-intro{
    margin-left: -4cqw !important;
  }
  .lp-manga-composition .manga-balloon--keep-check{
    margin-top: -1.7cqw !important;
    margin-left: -37.6cqw !important;
  }
  .lp-manga-composition .manga-balloon--mother-item{
    --balloon-mobile-height: 27cqw !important;
    margin-top: .95cqw !important;
  }
  .lp-manga-composition .manga-balloon--document-found{
    margin-left: 5.8cqw !important;
  }
  .lp-manga-composition .manga-balloon--shelf-check{
    margin-left: .5cqw !important;
  }
  .lp-manga-composition .manga-balloon--found-keepsake{
    margin-left: 13.7cqw !important;
  }
  .lp-manga-composition .manga-balloon--relief-left{
    --balloon-x: 37.5% !important;
    margin-top: -10cqw !important;
  }
  .lp-manga-composition .manga-balloon--consultation-right{
    --balloon-x: 3% !important;
    margin-top: -4.476cqw !important;
    margin-left: 0 !important;
  }

  .lp-manga-composition .manga-extra-panel--buyback .manga-extra-line--misaki:after{
    border-radius: 0 0 .18em;
    width: 18%;
    display: block;
    bottom: -4%;
  }
  .lp-manga-composition .manga-extra-panel--reassurance .manga-extra-line--staff{
    height: 92%;
    padding: .6em .45em;
    font-size: clamp(9px,2.4cqw,10px);
    line-height: 1.45;
    bottom: 3%;
  }
  
  .lp-manga-composition .manga-thought-dialogue{
    font-size: 1.77621vw !important;
  }
  .lp-manga-composition .manga-balloon--estimate-caution{
    --balloon-width: 96.55% !important;
    text-align: center !important;
    margin-top: .916cqw !important;
    margin-left: -2.358cqw !important;
  }
  .lp-manga-composition .manga-balloon--estimate-caution .manga-balloon-text{
    text-align: center;
    width: 100%;
  }
  .lp-manga-composition .manga-memory-inset .manga-memory-speech.manga-spoken-dialogue{
    width: 30%;
    height: 61%;
    top: 9%;
    left: 34%;
  }
  .lp-manga-composition .manga-memory-inset .manga-memory-speech.manga-spoken-dialogue span{
    white-space: nowrap !important;
  }
  .lp-manga-composition .manga-balloon--vendor-concern{
    padding: .45cqw;
    --balloon-x: 71.5% !important;
    --balloon-y: 69.2% !important;
    --balloon-width: 18cqw !important;
    --balloon-height: 18.5cqw !important;
  }
  .lp-manga-composition .manga-balloon--vendor-concern .manga-balloon-text{
    text-align: center;
    place-self: center;
    width: 100%;
    height: 100%;
  }
  .lp-manga-composition .manga-balloon--found-relief{
    margin-top: -3.2cqw !important;
  }
  .lp-manga-composition .manga-extra-panel--buyback .manga-extra-line--misaki:after{
    display: none !important;
  }
  .lp-manga-composition .teaser-dialogue--staff{
    height: 35.04%;
    margin: -.23419cqw 8.60783cqw 37.813cqw -1.13558cqw;
  }
  .lp-manga-composition .manga-balloon--estimate-caution{
    color: #fff;
    background: #235341e0;
    padding: 1cqw 1.2cqw 1cqw 23cqw;
    line-height: 1.7;
    --balloon-y: 59.6% !important;
    --balloon-width: 99.6931% !important;
    --balloon-height: 15cqw !important;
    font-size: clamp(10px,2.7cqw,13px) !important;
  }
  .lp-manga-composition .manga-balloon--estimate-caption{
    z-index: 3;
  }
  .lp-manga-composition .manga-balloon--first-action-thought{
    --balloon-height: 40cqw !important;
  }
  .lp-manga-composition .manga-balloon--self-check-thought{
    --balloon-height: 37cqw !important;
  }
  .lp-manga-composition .manga-balloon--vendor-concern{
    --balloon-height: 26.5cqw !important;
  }
  .lp-manga-composition .manga-balloon--trouble-thought{
    --balloon-height: 40cqw !important;
  }
  .lp-manga-composition .manga-balloon--qualification-thought{
    --balloon-width: 20cqw !important;
    --balloon-height: 52cqw !important;
    margin-top: -.19646cqw !important;
  }
  .lp-manga-composition .manga-balloon--friend-recall{
    --balloon-height: 54cqw !important;
  }
  .lp-manga-composition .manga-balloon--hearing-request{
    --balloon-mobile-height: 40cqw !important;
  }
  .lp-manga-composition .manga-balloon--mother-item{
    --balloon-mobile-height: 33cqw !important;
  }
  .lp-manga-composition .manga-balloon--family-memory-thought{
    --balloon-height: 48cqw !important;
  }
  .lp-manga-composition .manga-balloon--keep-check{
    margin-top: -3.07525cqw !important;
  }
  .lp-manga-composition .manga-balloon--relief-left{
    --balloon-x: 65.2% !important;
    --balloon-y: 88.5% !important;
    margin-left: -5.89391cqw !important;
  }
  .lp-manga-composition .manga-memory-inset .manga-memory-speech.manga-spoken-dialogue{
    width: 23.633%;
    height: 91%;
    margin-left: 4.91159cqw;
    top: 3%;
  }
  .lp-manga-composition .manga-extra-panel--buyback .manga-extra-line--misaki{
    height: 49.816%;
    margin: -.23095cqw 0 17.7975cqw 24.9509cqw;
  }
  .lp-manga-composition .manga-page--intro{
    overflow: hidden;
  }
  .lp-manga-composition .manga-page--intro>.manga-page-base,.lp-manga-composition .manga-page--intro>.manga-dialogue-layer{
    transform-origin: 50%;
    transform: translate(1.35%)scale(1.027);
  }
  .lp-manga-composition .manga-memory-inset .manga-memory-speech.manga-spoken-dialogue{
    margin-left: 11.7214cqw;
  }
  .lp-manga-composition .manga-balloon--friend-recall{
    --balloon-width: 22.05cqw !important;
    margin: -32.9234cqw -.38961cqw .19646cqw -82.3674cqw !important;
  }
  .lp-manga-composition .manga-page--workflow>.manga-page-base{
    margin-top: -1.17878cqw;
  }
  .lp-manga-composition .manga-balloon--estimate-caution{
    background: #235341ad;
    padding: .55cqw 1.2cqw;
    line-height: 1.45;
    --balloon-y: 66.7% !important;
    --balloon-width: 99.6931% !important;
    --balloon-height: 6.4cqw !important;
    text-align: center !important;
    margin-top: 0 !important;
    font-size: clamp(6px,1.15cqw,8px) !important;
  }
  .lp-manga-composition .manga-balloon--estimate-caution .manga-balloon-text{
    white-space: nowrap;
  }
  .lp-manga-composition .manga-extra-note{
    background: #235341ad;
  }
  .lp-manga-composition .manga-balloon--vendor-concern{
    box-shadow: none;
    filter: none;
    background: #ffffffc7;
    border: 1px solid #2a302db8;
    border-radius: 50%;
    padding: 2.2cqw 2.1cqw;
    --balloon-x: 67.5% !important;
    --balloon-y: 69% !important;
    --balloon-width: 23cqw !important;
    --balloon-height: 31cqw !important;
    margin: 0 !important;
  }
  .lp-manga-composition .manga-balloon--vendor-concern .manga-balloon-text{
    text-align: start;
    white-space: pre;
    place-self: center;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    line-height: 1.42;
    margin: 0 !important;
  }

}

@media (width>=521px) {
  .lp-manga-composition .manga-balloon--thought[data-balloon-scale="0.72"],.lp-manga-composition .manga-balloon--spoken[data-balloon-scale="0.72"]{
    height: var(--balloon-mobile-height,var(--balloon-height));
    font-size: 2.46696cqw !important;
  }
  .lp-manga-composition .manga-page--intro,.lp-manga-composition .manga-page--workflow,.lp-manga-composition .manga-page--closing{
    overflow: hidden;
  }
  .lp-manga-composition .manga-page--intro>.manga-page-base,.lp-manga-composition .manga-page--intro>.manga-dialogue-layer{
    transform-origin: 50%;
    transform: translate(1.35%)scale(1.027);
  }
  .lp-manga-composition .manga-page--workflow>.manga-page-base,.lp-manga-composition .manga-page--workflow>.manga-dialogue-layer{
    transform-origin: 50%;
    transform: translateY(-.35%)scaleY(1.012);
  }
  .lp-manga-composition .manga-page--closing>.manga-page-base,.lp-manga-composition .manga-page--closing>.manga-dialogue-layer{
    transform-origin: 50%;
    transform: translateY(-.45%)scale(1.012);
  }
  .lp-manga-composition .manga-balloon--first-action-thought{
    --balloon-height: 40cqw !important;
  }
  .lp-manga-composition .manga-balloon--self-check-thought{
    --balloon-height: 37cqw !important;
  }
  .lp-manga-composition .manga-balloon--trouble-thought{
    --balloon-height: 42cqw !important;
  }
  .lp-manga-composition .manga-balloon--qualification-thought{
    --balloon-width: 23.934cqw !important;
    --balloon-height: 52cqw !important;
    margin-top: -.19646cqw !important;
  }
  .lp-manga-composition .manga-balloon--friend-recall{
    --balloon-width: 22.05cqw !important;
    --balloon-height: 54cqw !important;
    margin: -32.9234cqw -.38961cqw .19646cqw -82.3674cqw !important;
  }
  .lp-manga-composition .manga-memory-inset .manga-memory-speech.manga-spoken-dialogue{
    width: 23.633%;
    height: 91%;
    margin-left: 11.7214cqw;
    top: 3%;
    left: 34%;
  }
  .lp-manga-composition .manga-memory-inset .manga-memory-speech.manga-spoken-dialogue span{
    white-space: nowrap !important;
    font-size: 1.77621cqw !important;
  }
  .lp-manga-composition .manga-balloon--workflow-caption{
    width: 30.7% !important;
    height: 3.8% !important;
    margin-top: 28.4185cqw !important;
    margin-left: 38cqw !important;
  }
  .lp-manga-composition .manga-balloon--hearing-request{
    --balloon-mobile-height: 40cqw !important;
    --balloon-height: 40cqw !important;
    margin-top: -8cqw !important;
  }
  .lp-manga-composition .manga-page--workflow>.manga-page-base{
    margin-top: -1.17878cqw;
  }
  .lp-manga-composition .manga-balloon--estimate-caption{
    margin-top: 2.1977cqw !important;
  }
  .lp-manga-composition .manga-balloon--estimate-caution{
    color: #fff;
    background: #235341ad;
    padding: .55cqw 1.2cqw;
    line-height: 1.45;
    --balloon-y: 64.6% !important;
    --balloon-width: 99.6931% !important;
    --balloon-height: 6.4cqw !important;
    text-align: center !important;
    margin-top: 0 !important;
    margin-left: -2.358cqw !important;
    font-size: 1.15cqw !important;
  }
  .lp-manga-composition .manga-balloon--estimate-caution .manga-balloon-text{
    white-space: nowrap;
    text-align: center;
    width: 100%;
  }
  .lp-manga-composition .manga-balloon--work-start-caption{
    margin-top: 15.224cqw !important;
  }
  .lp-manga-composition .manga-balloon--vendor-concern{
    box-shadow: none;
    filter: none;
    background: #ffffffc7;
    border: 1px solid #2a302db8;
    border-radius: 50%;
    padding: 2.2cqw 2.1cqw;
    --balloon-x: 68.5% !important;
    --balloon-y: 69% !important;
    --balloon-width: 23cqw !important;
    --balloon-height: 31cqw !important;
    margin: 0 !important;
  }
  .lp-manga-composition .manga-balloon--vendor-concern .manga-balloon-text{
    text-align: start;
    white-space: pre;
    place-self: center;
    width: auto;
    max-width: 100%;
    height: auto;
    max-height: 100%;
    line-height: 1.42;
    margin: 0 !important;
  }
  .lp-manga-composition .manga-balloon--mother-item{
    --balloon-height: 33cqw !important;
  }
  .lp-manga-composition .manga-balloon--family-memory-thought{
    --balloon-height: 48cqw !important;
  }
  .lp-manga-composition .manga-balloon--found-relief{
    --balloon-height: 30cqw !important;
  }
  .lp-manga-composition .manga-balloon--resolution-caption{
    --balloon-height: 10cqw !important;
  }
  
  .lp-manga-composition .manga-balloon--keep-check{
    margin-top: -3.07525cqw !important;
  }
  .lp-manga-composition .manga-balloon--relief-left{
    --balloon-x: 65.2% !important;
    --balloon-y: 88.5% !important;
    margin-left: -5.89391cqw !important;
  }
  .lp-manga-composition .manga-extra-note{
    background: #235341ad;
  }

}

@media (width<=520px) {
  .lp-manga-composition .manga-balloon--first-action-thought{
    --balloon-height: 45cqw !important;
  }
  .lp-manga-composition .manga-balloon--self-check-thought{
    --balloon-height: 42cqw !important;
  }
  .lp-manga-composition .manga-balloon--trouble-thought{
    --balloon-height: 48cqw !important;
  }
  .lp-manga-composition .manga-balloon--qualification-thought{
    --balloon-height: 59cqw !important;
  }
  .lp-manga-composition .manga-balloon--vendor-concern{
    --balloon-y: 65% !important;
    --balloon-height: 36cqw !important;
  }
  .lp-manga-composition .manga-balloon--friend-recall{
    --balloon-width: 28cqw !important;
    --balloon-height: 63cqw !important;
  }
  .lp-manga-composition .manga-memory-inset .manga-memory-speech.manga-spoken-dialogue{
    box-sizing: border-box;
    width: 18%;
    height: 79%;
    margin-left: 4.5cqw;
    padding-block: .45cqw;
    top: 5%;
    left: 42%;
    overflow: hidden;
  }
  .lp-manga-composition .manga-balloon--estimate-caution{
    box-sizing: border-box;
    padding: .25cqw 1.2cqw;
    --balloon-x: 2% !important;
    --balloon-width: 102% !important;
    --balloon-height: 5.2cqw !important;
    left: var(--balloon-x) !important;
    margin-top: .4cqw !important;
  }
  .lp-manga-composition .manga-balloon--work-intro{
    margin-left: -8cqw !important;
  }
  .lp-manga-composition .manga-balloon--keep-check{
    margin-top: -5cqw !important;
    margin-left: -39cqw !important;
  }
  .lp-manga-composition .manga-balloon--mother-item{
    --balloon-mobile-height: 32.5cqw !important;
    margin-top: -1.8cqw !important;
  }
  .lp-manga-composition .manga-balloon--document-found{
    margin-left: 3.2cqw !important;
  }
  .lp-manga-composition .manga-balloon--shelf-check{
    margin-left: -1.7cqw !important;
  }
  .lp-manga-composition .manga-balloon--found-keepsake{
    margin-left: 16cqw !important;
  }
  .lp-manga-composition .manga-balloon--found-relief{
    margin-top: -9cqw !important;
  }
  .lp-manga-composition .manga-balloon--relief-left{
    margin-top: -17cqw !important;
    margin-left: -3cqw !important;
  }
  .lp-manga-composition .manga-balloon--family-memory-thought{
    --balloon-height: 37cqw !important;
    margin-top: -1cqw !important;
  }
  .lp-manga-composition .manga-extra-panel--buyback .manga-extra-line--misaki{
    height: 55.5%;
    margin-bottom: 14.5cqw;
  }

}

@media (width>=521px) {
  .manga-section--bare .lp-manga-composition{
    width: 100%;
    max-width: none;
    margin-inline: 0;
    overflow-x: clip;
  }
  .lp-manga-composition .manga-page,.lp-manga-composition .manga-extra-panel,.lp-manga-composition .manga-teaser{
    width: 100%;
    max-width: none;
  }
  .lp-manga-composition .manga-balloon[data-balloon-scale="0.72"]{
    height: var(--balloon-mobile-height,var(--balloon-height));
    transform: scale(.8);
  }
  .lp-manga-composition .manga-balloon--small{
    font-size: 1.8cqw;
  }
  .lp-manga-composition .manga-balloon--medium{
    font-size: 2.35cqw;
  }
  
  .lp-manga-composition .manga-balloon--thought[data-balloon-scale="0.72"],.lp-manga-composition .manga-balloon--spoken[data-balloon-scale="0.72"]{
    font-size: 1.76696cqw !important;
  }
  .lp-manga-composition .manga-teaser{
    grid-template-columns: 1fr;
  }
  .lp-manga-composition .teaser-panel--room,.lp-manga-composition .teaser-panel--memories,.lp-manga-composition .teaser-panel--discovery,.lp-manga-composition .teaser-panel--emotion,.lp-manga-composition .teaser-panel--rewind{
    grid-area: auto/1;
  }
  .lp-manga-composition .teaser-panel--room{
    aspect-ratio: 4/3;
  }
  .lp-manga-composition .teaser-panel--memories,.lp-manga-composition .teaser-panel--discovery,.lp-manga-composition .teaser-panel--emotion{
    aspect-ratio: 5/4;
  }
  .lp-manga-composition .teaser-panel--rewind{
    aspect-ratio: 3/2;
  }
  .lp-manga-composition .teaser-heading{
    width: 15%;
    height: 78%;
    margin-top: 11.007cqw;
    font-size: 3.2cqw;
  }
  .lp-manga-composition .teaser-dialogue.manga-spoken-dialogue{
    font-size: 1.77621cqw !important;
  }
  .lp-manga-composition .teaser-dialogue--room{
    width: 8.7139%;
    height: 38%;
    margin: 0 .2342cqw 18.9704cqw 3.04463cqw;
    padding: .88145cqw 1.4251cqw;
  }
  .lp-manga-composition .teaser-dialogue--room:after{
    display: none;
  }
  .lp-manga-composition .teaser-caption{
    width: 25%;
    height: 86%;
    font-size: 3.3cqw;
  }
  .lp-manga-composition .teaser-caption--memories{
    width: 18.4426%;
    height: 76.6308%;
    margin-bottom: 13.349cqw;
  }
  .lp-manga-composition .teaser-dialogue--staff{
    width: 8.8211%;
    height: 28.04%;
    margin: -.23419cqw 8.60783cqw 37.813cqw -1.13558cqw;
  }
  .lp-manga-composition .teaser-dialogue--emotion{
    width: 11.1626%;
    height: 39.2%;
    margin-right: 4.68384cqw;
  }
  .lp-manga-composition .teaser-caption--ending{
    width: 18.6129%;
    height: 68.3859%;
    margin-top: -.23419cqw;
  }
  .lp-manga-composition .teaser-rewind-copy{
    font-size: 2.45cqw;
  }
  .lp-manga-composition .manga-balloon--first-action-thought{
    --balloon-height: 45cqw !important;
  }
  .lp-manga-composition .manga-balloon--self-check-thought{
    --balloon-height: 42cqw !important;
  }
  .lp-manga-composition .manga-balloon--trouble-thought{
    --balloon-height: 48cqw !important;
  }
  .lp-manga-composition .manga-balloon--qualification-thought{
    --balloon-width: 23.934cqw !important;
    --balloon-height: 59cqw !important;
    margin-top: -.19646cqw !important;
  }
  .lp-manga-composition .manga-balloon--vendor-concern{
    padding: 2.2cqw 2.1cqw;
    --balloon-x: 72.5% !important;
    --balloon-y: 68% !important;
    --balloon-width: 14cqw !important;
    --balloon-height: 36cqw !important;
    margin: 0 !important;
  }
  .lp-manga-composition .manga-balloon--friend-recall{
    --balloon-width: 28cqw !important;
    --balloon-height: 63cqw !important;
    margin: -32.9234cqw -.38961cqw .19646cqw -82.3674cqw !important;
  }
  .lp-manga-composition .manga-memory-inset .manga-memory-speech.manga-spoken-dialogue{
    box-sizing: border-box;
    width: 20%;
    height: 78%;
    margin-top: 0;
    margin-left: 11cqw;
    padding-block: .45cqw;
    top: 9%;
    left: 34%;
    overflow: hidden;
  }
  .lp-manga-composition .manga-memory-inset .manga-memory-speech.manga-spoken-dialogue span{
    white-space: nowrap !important;
    font-size: 1.77621cqw !important;
  }
  .lp-manga-composition .manga-memory-inset .manga-memory-speech.manga-spoken-dialogue:after{
    width: 1.6cqw;
    height: 1.6cqw;
    top: 52%;
    right: -.75cqw;
  }
  .lp-manga-composition .manga-balloon--estimate-caution{
    box-sizing: border-box;
    padding: .25cqw 1.2cqw;
    line-height: 1.45;
    --balloon-x: -10% !important;
    --balloon-y: 67% !important;
    --balloon-width: 126% !important;
    --balloon-height: 5.2cqw !important;
    left: var(--balloon-x) !important;
    text-align: center !important;
    margin-top: .4cqw !important;
    margin-left: -2.358cqw !important;
    font-size: 1.9cqw !important;
  }
  .lp-manga-composition .manga-balloon--estimate-caution .manga-balloon-text{
    text-align: center;
    white-space: nowrap;
    width: 100%;
  }
  .lp-manga-composition .manga-balloon--work-intro{
    margin-left: -8cqw !important;
  }
  .lp-manga-composition .manga-balloon--keep-check{
    margin-top: -5cqw !important;
    margin-left: -39cqw !important;
  }
  .lp-manga-composition .manga-balloon--mother-item{
    --balloon-height: 32.5cqw !important;
    --balloon-mobile-height: 32.5cqw !important;
    margin-top: -1.8cqw !important;
  }
  .lp-manga-composition .manga-balloon--document-found{
    margin-left: 3.2cqw !important;
  }
  .lp-manga-composition .manga-balloon--shelf-check{
    margin-left: -1.7cqw !important;
  }
  .lp-manga-composition .manga-balloon--found-keepsake{
    margin-left: 16cqw !important;
  }
  .lp-manga-composition .manga-balloon--found-relief{
    --balloon-height: 30cqw !important;
    margin-top: -9cqw !important;
  }
  .lp-manga-composition .manga-balloon--relief-left{
    --balloon-x: 65.2% !important;
    --balloon-y: 88.5% !important;
    margin-top: -17cqw !important;
    margin-left: -3cqw !important;
  }
  .lp-manga-composition .manga-balloon--family-memory-thought{
    --balloon-height: 50cqw !important;
    margin-top: -1cqw !important;
  }
  .lp-manga-composition .manga-extra-panel--buyback .manga-extra-line--misaki{
    height: 53.5%;
    margin: -.23095cqw 0 16.5cqw 24.9509cqw;
  }

  .lp-manga-composition .manga-page--intro,.lp-manga-composition .manga-page--workflow,.lp-manga-composition .manga-page--closing{
    overflow: hidden;
  }
  .lp-manga-composition .manga-page--intro>.manga-page-base,.lp-manga-composition .manga-page--intro>.manga-dialogue-layer{
    transform-origin: 50%;
    transform: translate(1.35%)scale(1.027);
  }
  .lp-manga-composition .manga-page--workflow>.manga-page-base,.lp-manga-composition .manga-page--workflow>.manga-dialogue-layer{
    transform-origin: 50%;
    transform: translateY(-.35%)scaleY(1.012);
  }
  .lp-manga-composition .manga-page--closing>.manga-page-base,.lp-manga-composition .manga-page--closing>.manga-dialogue-layer{
    transform-origin: 50%;
    transform: translateY(-.45%)scale(1.012);
  }
  .lp-manga-composition .manga-page--workflow>.manga-page-base{
    margin-top: -1.17878cqw;
  }
  .lp-manga-composition .manga-balloon--workflow-caption{
    width: 44.7% !important;
    height: 2.8% !important;
    margin-top: 28.4185cqw !important;
    margin-left: 38cqw !important;
  }
  .lp-manga-composition .manga-balloon--hearing-request{
    --balloon-mobile-height: 40cqw !important;
    --balloon-height: 40cqw !important;
    margin-top: -8cqw !important;
  }
  .lp-manga-composition .manga-balloon--estimate-caption{
    z-index: 3;
    margin-top: 2.1977cqw !important;
  }
  .lp-manga-composition .manga-balloon--work-start-caption{
    margin-top: 15.224cqw !important;
  }
  .lp-manga-composition .manga-balloon--resolution-caption{
    width: 11.6169%;
    --balloon-height: 48cqw !important;
  }
  .lp-manga-composition .manga-teaser,.lp-manga-composition .manga-extra-panel{
    border-inline: 0;
  }
  .lp-manga-composition .manga-extra-note{
    box-shadow: none;
    background: #235341ad;
    border: 0;
    border-radius: 0;
    padding: .9em 1.2em;
    font-size: 2.7cqw;
    line-height: 1.7;
    position: static;
    left: auto;
    right: auto;
  }
  .lp-manga-composition .manga-extra-line{
    width: 19%;
    height: 55%;
    font-size: 2.7cqw;
    bottom: 15%;
  }
  
  .lp-manga-composition .manga-memory-dialogue-card.manga-spoken-dialogue span,.lp-manga-composition .manga-settlement-dialogue span.manga-spoken-dialogue,.lp-manga-composition .teaser-dialogue.manga-spoken-dialogue,.lp-manga-composition .manga-extra-line.manga-spoken-dialogue{
    font-size: 1.77621cqw !important;
  }
  .lp-manga-composition .manga-settlement-dialogue{
    grid-template-columns: 1fr;
    gap: 1.84758cqw;
    padding: 3.23326cqw;
  }
  .lp-manga-composition .manga-settlement-dialogue p:nth-child(-n/**/+2) span{
    white-space: nowrap;
    font-size: 1.85cqw;
  }
  .lp-manga-composition .manga-settlement-dialogue .manga-settlement-relief{
    grid-column: 1;
  }
  .lp-manga-composition .manga-extra-panel--buyback .manga-extra-line--staff{
    border-radius: 32%/18%;
    width: 11.6087%;
    height: 44.462%;
    margin: -1.15474cqw -3.00231cqw 16.3972cqw 11.0855cqw;
    font-size: 1.77621cqw;
  }
  .lp-manga-composition .manga-extra-panel--buyback .manga-extra-line--misaki{
    border-radius: 32%/18%;
    width: 11.6087%;
    height: 53.5%;
    margin: -.23095cqw 0 16.5cqw 24.9509cqw;
    font-size: 1.77621cqw;
    bottom: 9%;
  }
  .lp-manga-composition .manga-extra-panel--buyback .manga-extra-tail--staff,.lp-manga-composition .manga-extra-panel--buyback .manga-extra-line--misaki:after{
    display: none !important;
  }
  .lp-manga-composition .manga-extra-panel--reassurance .manga-extra-line--staff{
    height: 92%;
    padding: .6em .45em;
    font-size: 2.4cqw;
    line-height: 1.45;
    bottom: 3%;
  }

}

/* 「高額請求のトラブルも…」の吹き出しだけ縦幅を縮める */
.lp-manga-composition .manga-balloon--trouble-thought{
  --balloon-height: 34cqw !important;
  padding-block: 1.1cqw;
}

/* スマートフォン */
@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--trouble-thought{
    --balloon-height: 40cqw !important;
    padding-block: 1cqw;
  }
}

/* --------------------------------------------------
   漫画内の吹き出しサイズ調整
   1・2枚目は縮小、3枚目は全文が収まるように拡大
-------------------------------------------------- */

/* 1枚目：「そういえば、さとみが…」 */
.lp-manga-composition .manga-balloon--friend-recall{
  --balloon-width: 18cqw !important;
  --balloon-height: 39.5cqw !important;
  padding: 1cqw 2.4cqw !important;
}

.lp-manga-composition .manga-balloon--friend-recall .manga-balloon-text{
  place-self: center;
  margin: 0 !important;
}

/* 2枚目：「認定資格もあるし…」 */
.lp-manga-composition .manga-balloon--qualification-thought{
  --balloon-width: 17.5cqw !important;
  --balloon-height: 40.5cqw !important;
  padding: 1cqw !important;
}

/* 3枚目：「その場で確認できるから安心ですね。」 */
.lp-manga-composition .manga-balloon--onsite-confirmation{
  --balloon-width: 15.2cqw !important;
  --balloon-height: 34cqw !important;
  --balloon-mobile-height: 34cqw !important;
  padding: 1cqw !important;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--friend-recall{
    --balloon-width: 21cqw !important;
    --balloon-height: 43cqw !important;
    padding-inline: 2.6cqw !important;
  }

  .lp-manga-composition .manga-balloon--qualification-thought{
    --balloon-width: 20cqw !important;
    --balloon-height: 48cqw !important;
  }

  .lp-manga-composition .manga-balloon--onsite-confirmation{
    --balloon-width: 16cqw !important;
    --balloon-height: 38cqw !important;
    --balloon-mobile-height: 38cqw !important;
  }
}

/* --------------------------------------------------
   最終コマ：PC・スマホでセリフ位置を統一
-------------------------------------------------- */
.lp-manga-composition
  .manga-page--closing
  .manga-balloon--relief-left{
  --balloon-x: 28.4% !important;
  --balloon-y: 89.5% !important;
  height: var(--balloon-mobile-height, var(--balloon-height)) !important;
  margin-top: -17cqw !important;
  margin-left: 0 !important;
  transform: scale(.8) !important;
  transform-origin: 0 0 !important;
}

.lp-manga-composition
  .manga-page--closing
  .manga-balloon--consultation-right{
  --balloon-x: 88.244% !important;
  --balloon-y: 82.7% !important;
  height: var(--balloon-mobile-height, var(--balloon-height)) !important;
  margin-top: -5.874cqw !important;
  margin-left: 0 !important;
  transform: scale(.8) !important;
  transform-origin: 0 0 !important;
}

.lp-manga-composition
  .manga-page--closing
  .manga-balloon--relief-left
  .manga-balloon-text,.lp-manga-composition
  .manga-page--closing
  .manga-balloon--consultation-right
  .manga-balloon-text{
  place-self: center;
  margin: 0 !important;
}

/* --------------------------------------------------
   指定8箇所：漫画吹き出しの縦幅・文字サイズ調整
   既存の画面幅別指定より後で上書きする
-------------------------------------------------- */

/* 1枚目：「何から手をつけようかな・・・」 */
.lp-manga-composition .manga-balloon--first-action-thought{
  --balloon-height: 32cqw !important;
  --balloon-mobile-height: 32cqw !important;
  padding-block: .8cqw !important;
}

/* 2枚目：「でも、一つひとつ自分で確認するのは難しそう・・・」 */
.lp-manga-composition .manga-balloon--self-check-thought{
  --balloon-height: 31cqw !important;
  --balloon-mobile-height: 31cqw !important;
  padding-block: .8cqw !important;
}

/* 3枚目：「料金もサービスも違うし、どこを選べばいいんだろう。」 */
.lp-manga-composition .manga-balloon--vendor-concern{
  --balloon-height: 27cqw !important;
  --balloon-mobile-height: 27cqw !important;
  padding-block: 1.1cqw !important;
}

/* 4枚目：カフェ回想シーンのセリフを拡大 */
.lp-manga-composition
  .manga-memory-inset
  .manga-memory-speech.manga-spoken-dialogue
  span{
  font-size: 2.35cqw !important;
}

/* 5枚目：「お困りごとやご希望を伺います。」
   縦幅を縮め、下のコマへ重ならない高さに固定 */
.lp-manga-composition .manga-balloon--hearing-request{
  --balloon-height: 30.5cqw !important;
  --balloon-mobile-height: 30.5cqw !important;
  padding-block: .6cqw !important;
  margin-top: -8cqw !important;
}

/* 6枚目：「通帳や印鑑、権利書も確認します。」 */
.lp-manga-composition .manga-balloon--document-check{
  --balloon-height: 22.5cqw !important;
  --balloon-mobile-height: 22.5cqw !important;
  padding-block: .7cqw !important;
}

/* 7枚目：「判断に迷うものは、その場で一緒に確認できますよ。」 */
.lp-manga-composition .manga-balloon--judgment-support{
  --balloon-height: 24cqw !important;
  --balloon-mobile-height: 24cqw !important;
  padding-block: .7cqw !important;
}

/* 8枚目：「お父さん、お母さん。二人との思い出、ちゃんと残せたよ。」 */
.lp-manga-composition .manga-balloon--family-memory-thought{
  --balloon-height: 28cqw !important;
  --balloon-mobile-height: 28cqw !important;
  padding-block: .8cqw !important;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--first-action-thought{
    --balloon-height: 41cqw !important;
    --balloon-mobile-height: 41cqw !important;
  }

  .lp-manga-composition .manga-balloon--self-check-thought{
    --balloon-height: 39cqw !important;
    --balloon-mobile-height: 39cqw !important;
  }

  .lp-manga-composition .manga-balloon--vendor-concern{
    --balloon-height: 32cqw !important;
    --balloon-mobile-height: 32cqw !important;
    padding-block: .8cqw !important;
  }

  .lp-manga-composition
    .manga-memory-inset
    .manga-memory-speech.manga-spoken-dialogue
    span{
    font-size: 2.8cqw !important;
  }

  .lp-manga-composition .manga-balloon--hearing-request{
    --balloon-height: 40cqw !important;
    --balloon-mobile-height: 40cqw !important;
    padding-block: .5cqw !important;
  }

  .lp-manga-composition .manga-balloon--document-check{
    --balloon-height: 27.5cqw !important;
    --balloon-mobile-height: 27.5cqw !important;
    padding-block: .5cqw !important;
  }

  .lp-manga-composition .manga-balloon--judgment-support{
    --balloon-height: 29.5cqw !important;
    --balloon-mobile-height: 29.5cqw !important;
    padding-block: .5cqw !important;
  }

  .lp-manga-composition .manga-balloon--family-memory-thought{
    --balloon-height: 32cqw !important;
    --balloon-mobile-height: 32cqw !important;
  }
}

/* --------------------------------------------------
   追加微調整
   ・カフェ回想シーンのセリフをもう少し拡大
   ・「料金もサービスも…」の吹き出しを少し下へ移動
-------------------------------------------------- */

.lp-manga-composition
  .manga-memory-inset
  .manga-memory-speech.manga-spoken-dialogue
  span{
  font-size: clamp(12px, 2.55cqw, 24px) !important;
}

.lp-manga-composition .manga-balloon--vendor-concern{
  margin-top: 1.25cqw !important;
}

@media (width <= 520px) {
  .lp-manga-composition
    .manga-memory-inset
    .manga-memory-speech.manga-spoken-dialogue
    span{
    font-size: clamp(5.6px, 2.6cqw, 14px) !important;
  }

  .lp-manga-composition .manga-balloon--vendor-concern{
    margin-top: 1.5cqw !important;
  }
}

/* --------------------------------------------------
   漫画吹き出し：セリフとの余白を最終調整
   ・PCではPC用の高さを使用
   ・余白が大きい吹き出しは縮小
   ・文字がはみ出す4箇所は必要な分だけ再拡大
-------------------------------------------------- */
@media (width >= 521px) {
  .lp-manga-composition .manga-balloon--thought[data-balloon-scale="0.72"],.lp-manga-composition .manga-balloon--spoken[data-balloon-scale="0.72"]{
    height: var(--balloon-height) !important;
  }

  .lp-manga-composition
    .manga-page--intro
    .manga-balloon--spoken[data-balloon-max-characters="6"]{
    --balloon-height: 14.5cqw !important;
  }

  .lp-manga-composition .manga-balloon--vendor-concern{
    --balloon-height: 21.5cqw !important;
    padding-block: .65cqw !important;
  }

  .lp-manga-composition .manga-balloon--trouble-thought{
    --balloon-height: 27cqw !important;
    padding-block: .65cqw !important;
  }

  .lp-manga-composition .manga-balloon--friend-recall{
    --balloon-height: 24.5cqw !important;
    padding-block: .65cqw !important;
  }

  .lp-manga-composition .manga-balloon--qualification-thought{
    --balloon-height: 30.5cqw !important;
    padding-block: .65cqw !important;
  }

  .lp-manga-composition .manga-balloon--work-intro{
    --balloon-height: 29cqw !important;
    padding-block: .65cqw !important;
  }

  .lp-manga-composition .manga-balloon--shelf-check{
    --balloon-height: 26.5cqw !important;
    padding-block: .65cqw !important;
  }

  .lp-manga-composition .manga-balloon--keep-check{
    --balloon-height: 21.5cqw !important;
    padding-block: .65cqw !important;
  }

  .lp-manga-composition .manga-balloon--mother-item{
    --balloon-height: 28.5cqw !important;
    padding-block: .65cqw !important;
  }

  .lp-manga-composition .manga-balloon--document-found{
    --balloon-height: 19.5cqw !important;
    padding-block: .65cqw !important;
  }

  .lp-manga-composition .manga-balloon--judgment-support{
    --balloon-height: 24.5cqw !important;
    padding-block: .65cqw !important;
  }

  .lp-manga-composition .manga-balloon--onsite-confirmation{
    --balloon-height: 26cqw !important;
    padding-block: .65cqw !important;
  }

  .lp-manga-composition .manga-balloon--found-keepsake{
    --balloon-height: 21.5cqw !important;
    padding-block: .65cqw !important;
  }

  .lp-manga-composition .manga-balloon--found-relief{
    --balloon-height: 23cqw !important;
    padding-block: .65cqw !important;
  }

  .lp-manga-composition .manga-balloon--family-memory-thought{
    --balloon-height: 24.5cqw !important;
    padding-block: .65cqw !important;
  }
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--vendor-concern{
    --balloon-height: 29cqw !important;
    --balloon-mobile-height: 29cqw !important;
    padding-block: .5cqw !important;
  }

  .lp-manga-composition .manga-balloon--trouble-thought{
    --balloon-height: 33cqw !important;
    --balloon-mobile-height: 33cqw !important;
    padding-block: .5cqw !important;
  }

  .lp-manga-composition .manga-balloon--friend-recall{
    --balloon-height: 30.5cqw !important;
    --balloon-mobile-height: 30.5cqw !important;
    padding-block: .5cqw !important;
  }

  .lp-manga-composition .manga-balloon--qualification-thought{
    --balloon-height: 40.5cqw !important;
    --balloon-mobile-height: 37.5cqw !important;
    padding-block: .5cqw !important;
  }

  .lp-manga-composition .manga-balloon--shelf-check{
    --balloon-height: 32.5cqw !important;
    --balloon-mobile-height: 32.5cqw !important;
    padding-block: .5cqw !important;
  }

  .lp-manga-composition .manga-balloon--onsite-confirmation{
    --balloon-height: 30.5cqw !important;
    --balloon-mobile-height: 30.5cqw !important;
    padding-block: .5cqw !important;
  }

  .lp-manga-composition .manga-balloon--found-relief{
    --balloon-height: 33cqw !important;
    --balloon-mobile-height: 26cqw !important;
    padding-block: .5cqw !important;
  }

  .lp-manga-composition .manga-balloon--family-memory-thought{
    --balloon-height: 29cqw !important;
    --balloon-mobile-height: 29cqw !important;
    padding-block: .5cqw !important;
  }
}

/* --------------------------------------------------
   「判断に迷うものは〜」の吹き出しだけ最終調整
-------------------------------------------------- */
@media (width >= 521px) {
  .lp-manga-composition .manga-balloon--judgment-support{
    --balloon-height: 26.5cqw !important;
    padding-block: .5cqw !important;
  }
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--judgment-support{
    --balloon-height: 31.5cqw !important;
    --balloon-mobile-height: 31.5cqw !important;
    padding-block: .45cqw !important;
  }
}

/* --------------------------------------------------
   主要セクション見出しの文字サイズを統一
-------------------------------------------------- */
.layout-calm .section-heading h2,.layout-calm .concerns-copy h2,.layout-calm .aftercare-copy h2,.layout-calm .price-copy h2,.layout-calm .contact-copy h2{
  font-size: clamp(30px, 2.65vw, 37.7px);
}
/* ==================================================
   2026-08-14 会議メモ反映
   スマホ漫画・吹き出し・見出し・CTA・FAQの最終調整
================================================== */

/* スマホだけで使用する改行 */
.mobile-only-break{
  display: none;
}

/* 「資格と一貫対応」「明朗会計」を下線型に統一 */
.layout-calm .section-kicker--underline{
  border-bottom: 1px solid currentColor;
  padding-bottom: 5px;
}

.layout-calm .section-kicker--underline::before{
  display: none;
}

/* 画像キャプションを中央揃え・上辺アクセントに統一 */
.layout-calm .aftercare-character figcaption,.layout-calm .concerns-staff figcaption{
  color: #fff;
  background: #17382ef0;
  border-top: 4px solid #b68a48;
  border-left: 0;
  max-width: none;
  padding: 10px 14px;
  text-align: center;
  bottom: 0px;
  left: 4%;
  right: 4%;
}

.layout-calm .aftercare-character figcaption b,.layout-calm .aftercare-character figcaption span,.layout-calm .concerns-staff figcaption b,.layout-calm .concerns-staff figcaption span{
  text-align: center;
}

.layout-calm .section-spot-visual figcaption{
  border-top: 4px solid #17382e;
  border-left: 0;
  text-align: center;
}

.layout-calm .section-spot-visual figcaption b,.layout-calm .section-spot-visual figcaption span{
  text-align: center;
}

/* 緑の帯をロゴ色へ統一 */
.lp-manga-composition .manga-extra-note,.layout-calm .section-cta,.layout-calm .section-cta.tone-sky{
  background: #17382e;
  border-color: #17382e;
}

.lp-manga-composition .manga-story-divider{
  color: #17382e;
}

.lp-manga-composition .manga-story-divider::before{
  background: linear-gradient(90deg, #0000, #17382e);
}

.lp-manga-composition .manga-story-divider::after{
  background: linear-gradient(90deg, #17382e, #0000);
}

/* CTAの文字・矢印位置を統一 */
.story-cta .line-cta,.section-cta-actions .line-cta,.layout-calm .contact-copy .line-cta,.mobile-cta .line-cta--mobile{
  grid-template-columns: auto minmax(0, 1fr) 24px;
  align-items: center;
  justify-content: stretch;
  display: grid;
}

.story-cta .line-cta b,.section-cta-actions .line-cta b,.layout-calm .contact-copy .line-cta b,.story-cta .line-cta-copy,.mobile-cta .line-cta-copy{
  text-align: center;
  justify-self: center;
}

.story-cta .line-cta i,.section-cta-actions .line-cta i,.layout-calm .contact-copy .line-cta i,.mobile-cta .line-cta--mobile i,.story-cta .phone-cta i,.section-cta-actions .phone-cta i,.mobile-cta .footer-phone-cta i{
  text-align: center;
  justify-self: end;
  flex: 0 0 24px;
  margin-left: 0;
  font-family: Arial, "Yu Gothic", sans-serif;
  font-size: 20px;
  font-weight: 800;
  line-height: 1;
  display: block;
}

.layout-calm .section-cta .line-cta,.layout-calm .contact-copy .line-cta,.layout-calm .mobile-cta .line-cta{
  box-shadow: 0 0 0 3px #06c75526, 0 14px 32px #06c75566;
}

.layout-calm .section-cta > p{
  margin: 0 0 12px;
  text-align: center;
}

/* Q/Aアイコンの大きさと位置を統一 */
.layout-calm .faq-list summary > span,.layout-calm .faq-list details > div > span{
  box-sizing: border-box;
  flex: 0 0 34px;
  place-items: center;
  width: 34px;
  height: 34px;
  font-size: 18px;
  line-height: 1;
  display: grid;
}

.layout-calm .faq-list summary{
  align-items: center;
}

.layout-calm .faq-list details > div{
  align-items: flex-start;
}

/* 漫画の結び帯を中央揃え */

/* --------------------------------------------------
   スマホ漫画の位置・吹き出し・説明枠調整
-------------------------------------------------- */
@media (width <= 520px) {
  .mobile-only-break{
    display: block;
  }

  /* 画像間の不要な白い隙間を除去 */
  .manga-section--bare .lp-manga-composition{
    gap: 0;
  }

  .lp-manga-composition .manga-story-divider{
    margin-block: 14px;
  }

  /* 冒頭ダイジェスト */
  .lp-manga-composition .teaser-dialogue--room{
    margin: 0 .2342cqw 35cqw 1.1px !important;
  }

  .lp-manga-composition .teaser-dialogue--staff{
    /* PC版と同じ相対位置（吹き出し中心）を維持 */
    left: 24.985% !important;
    top: 32.715% !important;
    right: auto !important;
    bottom: auto !important;
    margin: 0 !important;
    transform: translate(-50%, -50%) !important;
  }

  .lp-manga-composition .teaser-dialogue--emotion{
    inset: 12% 2% auto auto !important;
    margin: 0 !important;
  }

  .lp-manga-composition .teaser-rewind-copy{
    width: min(84%, 720px);
    padding: .7em 1em;
    color: #fff;
    border: 1px solid #f8f2dfc7;
    font-size: clamp(7px, 3.05cqw, 20px) !important;
    line-height: 1.65;
  }

  /* 「遺品整理の会社って〜」を丸いセリフ吹き出しへ */
  .lp-manga-composition .manga-balloon--company-search-dialogue{
    --balloon-x: 50% !important;
    --balloon-y: 47.7% !important;
    --balloon-width: 17.5cqw !important;
    --balloon-height: 39cqw !important;
    --balloon-mobile-height: 39cqw !important;
    box-sizing: border-box;
    background: var(--manga-balloon-fill) !important;
    border: max(1px, .22cqw) solid #171511 !important;
    border-radius: 50% !important;
    filter: drop-shadow(0 .2cqw .26cqw #19140e29) !important;
    height: var(--balloon-height) !important;
    margin: 0 !important;
    margin-top: 9.231cqw !important;
    padding: .8cqw !important;
    transform: scale(.8) !important;
    transform-origin: 100% 0 !important;
  }

  .lp-manga-composition .manga-balloon--company-search-dialogue .manga-balloon-text{
    writing-mode: vertical-rl !important;
    text-orientation: upright !important;
    white-space: pre !important;
    text-align: start !important;
    place-self: center;
    width: auto;
    line-height: 1.35;
  }

  /* 作業フローの右端ラベル */
  .lp-manga-composition .manga-workflow-label{
    --balloon-width: 20% !important;
    margin: 0 !important;
    font-size: 1.9cqw !important;
  }

  .lp-manga-composition .manga-workflow-label--2{
    --balloon-y: 14.5% !important;
    --balloon-width: 18% !important;
  }

  .lp-manga-composition .manga-workflow-label--3{
    --balloon-y: 28.5% !important;
    --balloon-width: 18% !important;
  }

  .lp-manga-composition .manga-workflow-label--4{
    --balloon-y: 41.2% !important;
    --balloon-width: 18% !important;
  }

  .lp-manga-composition .manga-workflow-label--5{
    --balloon-y: 56% !important;
    --balloon-width: 18% !important;
  }

  .lp-manga-composition .manga-workflow-label--6{
    --balloon-y: 69.6% !important;
    --balloon-width: 16% !important;
  }

  .lp-manga-composition .manga-workflow-label--7{
    --balloon-y: 83.2% !important;
    --balloon-width: 17% !important;
  }

  .lp-manga-composition .manga-balloon--hearing-request{
    --balloon-x: 5% !important;
  }

  /* セリフではなく説明として見せる四角枠 */
  .lp-manga-composition .manga-balloon--mobile-explanation{
    box-sizing: border-box;
    background: #fffcf2d9 !important;
    border: max(1px, .16cqw) solid #171511 !important;
    border-radius: .35cqw !important;
    filter: drop-shadow(0 .2cqw .26cqw #19140e24) !important;
    height: var(--balloon-height) !important;
    margin: 0 !important;
    padding: .7cqw 1cqw !important;
    transform: scale(.8) !important;
    transform-origin: 0 0 !important;
  }

  .lp-manga-composition .manga-balloon--mobile-explanation .manga-balloon-text{
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    white-space: normal !important;
    text-align: left !important;
    place-self: center stretch;
    width: 100%;
    font-size: 2.15cqw !important;
    line-height: 1.4;
  }

  .lp-manga-composition .manga-balloon--work-intro.manga-balloon--mobile-explanation{
    --balloon-x: 0.8% !important;
    --balloon-y: 42.7% !important;
    --balloon-width: 34% !important;
    --balloon-height: 8% !important;
    --balloon-mobile-height: 7.5% !important;
  }

  .lp-manga-composition .manga-balloon--document-check.manga-balloon--mobile-explanation{
    --balloon-x: 0.5% !important;
    --balloon-y: 94.9% !important;
    --balloon-width: 39% !important;
    --balloon-height: 6% !important;
    --balloon-mobile-height: 6.8% !important;
  }

  /* 「こちらは残しておきますか？」を隣の吹き出しに近い高さへ */
  .lp-manga-composition .manga-balloon--keep-check{
    --balloon-height: 32.5cqw !important;
    --balloon-mobile-height: 32.5cqw !important;
  }

  /* 3分類ラベル */
  .lp-manga-composition .manga-page--sorting .manga-balloon--label{
    --balloon-y: -0.1% !important;
  }

  .lp-manga-composition .manga-balloon--shelf-check{
    --balloon-x: 83% !important;
  }

  .lp-manga-composition .manga-balloon--document-found{
    --balloon-x: 8% !important;
    --balloon-y: 24.5% !important;
  }

  .lp-manga-composition .manga-balloon--furniture-carry-caption{
    --balloon-x: -13.4% !important;
    --balloon-y: 53.2% !important;
  }

  .lp-manga-composition .manga-balloon--judgment-support{
    --balloon-x: 84% !important;
    --balloon-y: 65.2% !important;
  }

  .lp-manga-composition .manga-balloon--onsite-confirmation{
    --balloon-x: 7.9% !important;
  }

  /* 精算時の「買取できるお品が〜」 */
  .lp-manga-composition
    .manga-extra-panel--reassurance
    .manga-settlement-line--staff
    .manga-spoken-dialogue{
    font-size: 8.1px !important;
  }

  .lp-manga-composition .manga-balloon--found-keepsake{
    --balloon-x: -.7% !important;
    --balloon-y: 17% !important;
  }

  .lp-manga-composition .manga-balloon--resolution-caption{
    --balloon-x: 2% !important;
  }

  .lp-manga-composition .manga-balloon--family-memory-thought{
    --balloon-x: 56% !important;
    --balloon-width: 18.5cqw !important;
    --balloon-height: 30.5cqw !important;
    --balloon-mobile-height: 38.5cqw !important;
    padding-block: .7cqw !important;
  }

  /* 「迷った時は〜」 */
  .layout-calm .concerns-copy h2{
    font-size: 25px !important;
  }

  /* LINEボタンの中央揃えと矢印表示 */
  .story-cta .line-cta,.section-cta-actions .line-cta,.layout-calm .contact-copy .line-cta,.mobile-cta .line-cta--mobile{
    grid-template-columns: auto minmax(0, 1fr) 5px;
  }

  .story-cta .line-cta i,.section-cta-actions .line-cta i,.layout-calm .contact-copy .line-cta i,.mobile-cta .line-cta--mobile i{
    font-size: 18px;
  }

  /* Q/Aをスマホでも同じ大きさに */
  .layout-calm .faq-list summary > span,.layout-calm .faq-list details > div > span{
    flex-basis: 30px;
    width: 30px;
    height: 30px;
    font-size: 16px;
  }
}

/* --------------------------------------------------
   「葬儀を終え、両親の残した実家へ。」
   文字サイズ変更に合わせて説明枠も自動調整
-------------------------------------------------- */
.lp-manga-composition .manga-balloon--intro-home-caption{
  box-sizing: border-box;
  left: auto !important;
  right: 3.5%;
  width: max-content !important;
  max-width: 42cqw;
  height: auto !important;
  min-height: 0;
  padding: clamp(4px, .65cqw, 8px) clamp(6px, 1cqw, 12px);
  font-size: clamp(7px, 3.05cqw, 20px) !important;
  transform-origin: 100% 0 !important;
}

.lp-manga-composition
  .manga-balloon--intro-home-caption
  .manga-balloon-text{
  width: auto;
  max-width: none;
  line-height: 1.45;
  white-space: pre-line;
}

/* --------------------------------------------------
   カフェ回想の「私も一人では片づけられなくて〜」
   買取場面の「こちらのお品は〜」と同じ吹き出しデザイン
-------------------------------------------------- */
.lp-manga-composition
  .manga-memory-inset
  .manga-memory-dialogue-card--staff-pill{
  filter: drop-shadow(0 .22cqw .3cqw #19140e24);
  border: max(1px, .18cqw) solid #171511;
  border-radius: 32% / 18% !important;
  padding: .8em .55em !important;
  box-shadow: none;
}

.lp-manga-composition
  .manga-memory-inset
  .manga-memory-dialogue-card--staff-pill::after{
  display: none !important;
}

.lp-manga-composition
  .manga-memory-inset
  .manga-memory-dialogue-card--staff-pill
  > b{
  color: #fff;
  letter-spacing: .12em;
  white-space: nowrap;
  background: #235341;
  border: 0;
  border-radius: 99px;
  padding: .18em .7em;
  font-family: var(--sans);
  font-size: .58em;
  font-weight: 800;
  line-height: 1.4;
  top: -1.05em;
  left: 50%;
  transform: translateX(-50%);
}

/* 「6 ご契約」ラベルのみを少し右へ移動 */
.lp-manga-composition .manga-workflow-label--6{
  --balloon-x: 82.3% !important;
}

/* Story CTA alignment adjustment */
.story-cta .line-cta,.story-cta .phone-cta{
  height: 64px;
  min-height: 64px;
}

.story-cta .line-cta-copy{
  flex: 1;
  min-width: 0;
  text-align: center;
}

.story-cta .line-cta-copy b{
  white-space: normal;
  text-align: center;
  line-height: 1.25;
  overflow-wrap: anywhere;
}

.story-cta .line-cta-badge{
  margin-left: 10px;
}

@media (width <= 700px) {
  .story-cta .line-cta,.story-cta .phone-cta{
    height: 62px;
    min-height: 62px;
  }

  .story-cta .line-cta-badge{
    margin-left: 4px;
  }
}

/* 漫画直後CTA：LINE文言を電話CTAと同じ3段構成に整える */
.story-cta .line-cta-copy{
  flex-direction: column;
  flex: 1;
  align-items: center;
  justify-content: center;
  gap: 1px;
  min-width: 0;
  display: flex;
}

.story-cta .line-cta-copy b{
  text-align: center;
  white-space: normal;
  line-height: 1.35;
}

.story-cta .line-cta-copy small{
  text-align: center;
  line-height: 1.15;
}

/* セクションCTA：LINE文言を2行化し、矢印の表示領域を確保 */
.layout-calm .section-cta-actions .line-cta{
  min-width: 0;
}

.layout-calm .section-cta-actions .line-cta b{
  flex: 1 1 auto;
  min-width: 0;
  text-align: center;
  white-space: normal;
  line-height: 1.35;
}

.layout-calm .section-cta-actions .line-cta i{
  flex: 0 0 24px;
  margin-left: 6px;
  text-align: center;
  font-size: 22px;
  line-height: 1;
  display: block;

  color: #fff !important;
}

/* PC版：漫画フローの 2〜7 を「1 お問い合わせ」と同じ右端ラインに揃える */
@media (width >= 761px) {
  .lp-manga-composition .manga-workflow-label--2,.lp-manga-composition .manga-workflow-label--3,.lp-manga-composition .manga-workflow-label--4,.lp-manga-composition .manga-workflow-label--5,.lp-manga-composition .manga-workflow-label--6,.lp-manga-composition .manga-workflow-label--7{
    left: auto !important;
    right: 1.32238% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    transform-origin: 100% 0 !important;
  }

  /* PC版：3分類ラベルを上枠から少し下へ移動 */
  .lp-manga-composition .manga-page--sorting .manga-balloon--label{
    --balloon-y: 0.2% !important;
  }
}

/* セクションCTAはPC/SPとも「電話 → LINE」の順番を維持 */
.section-cta-actions .phone-cta{
  order: 1;
}

.section-cta-actions .line-cta{
  order: 2;
}

/* HERO：「24時間いつでもご相談ください。」の左線を削除し、文字下のラインへ変更 */
.layout-calm .hero-manga-first .eyebrow{
  display: inline-block;
  width: fit-content;
  padding-bottom: 6px;
  border-bottom: 2px solid var(--palette-accent);
}

.layout-calm .hero-manga-first .eyebrow span{
  display: none;
}

/* 「お困りごとやご希望を伺います。」のみ四角い吹き出しに変更 */
.lp-manga-composition .manga-balloon--hearing-request{
  border-radius: .35cqw !important;
}

.lp-manga-composition .manga-balloon--hearing-request .manga-balloon-text{
  writing-mode: vertical-rl;
  text-orientation: upright;
  text-align: start;
}

/* 「お困りごとやご希望を伺います。」：他の四角い説明枠に合わせて角丸を調整 */
.lp-manga-composition .manga-balloon--hearing-request{

  border-radius: 28% / 14% !important;
}

/* 「お困りごとやご希望を伺います。」：吹き出しを少し低くし、セリフを上へ */
.lp-manga-composition .manga-balloon--hearing-request{
  --balloon-height: 22cqw !important;
  --balloon-mobile-height: 32cqw !important;
  padding-block: .65cqw !important;
}

.lp-manga-composition .manga-balloon--hearing-request .manga-balloon-text{
  transform: translateY(-1.2cqw);
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--hearing-request{
    --balloon-height: 31cqw !important;
    --balloon-mobile-height: 31cqw !important;
  }

  .lp-manga-composition .manga-balloon--hearing-request .manga-balloon-text{
    transform: translateY(-.8cqw);
  }
}

/* ヒアリング画面微調整：
   1) 「お困りごとやご希望を伺います。」の吹き出しを少し短く
   2) 建物条件の説明枠を横長にし、左へ寄せる */
.lp-manga-composition .manga-balloon--hearing-request{
  --balloon-height: 19.5cqw !important;
  --balloon-mobile-height: 28.5cqw !important;
}

.lp-manga-composition .manga-balloon--workflow-caption{
  --balloon-x: 54% !important;
  --balloon-width: 52% !important;
  --balloon-height: 3.2% !important;
  margin-left: 0 !important;
  padding-inline: 1.2cqw !important;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--hearing-request{
    --balloon-height: 28.5cqw !important;
    --balloon-mobile-height: 28.5cqw !important;
  }

  .lp-manga-composition .manga-balloon--workflow-caption{
    --balloon-x: 51% !important;
    --balloon-width: 54% !important;
    --balloon-height: 3.4% !important;
    margin-left: 14px !important;
  }
}

/* ==================================================
   2026-08-15 指摘修正
   ================================================== */

/* 1. HERO「24時間いつでもご相談ください。」
      下線と同色・「資格と一貫対応」と同じ文字サイズへ */
.layout-calm .hero-manga-first .eyebrow{
  color: var(--palette-accent) !important;
  border-bottom-color: var(--palette-accent) !important;
  font-size: 21px !important;
}

/* 2. 回想導入「葬儀を終えた私は〜」の白い枠線を削除 */
.lp-manga-composition .teaser-rewind-copy{
  border: 0 !important;
}

/* 3. 「遺品整理の会社って〜」を
      「でも、一つひとつ自分で〜」と同じ文字種・文字サイズへ */
.lp-manga-composition .manga-balloon--company-search-dialogue{
  font-family: Hiragino Mincho ProN, Yu Mincho, YuMincho, Noto Serif JP, serif !important;
  font-weight: 650 !important;
  font-size: clamp(7px, 1.65cqw, 16px) !important;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--company-search-dialogue{
    font-size: 2.46696cqw !important;
  }
}

/* 4. 「お困りごとやご希望を伺います。」の吹き出しをさらに短く */
.lp-manga-composition .manga-balloon--hearing-request{
  --balloon-height: 19cqw !important;
  --balloon-mobile-height: 25.5cqw !important;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--hearing-request{
    --balloon-height: 25.5cqw !important;
    --balloon-mobile-height: 25.5cqw !important;
  }
}

/* 仕分け確認シーン：
   「こちらは残しておきますか？」／「はい、母がよく使っていたものなんです。」
   を角丸四角の吹き出しへ変更 */
.lp-manga-composition .manga-balloon--rounded-rect{
  border-radius: 26% / 12% !important;
}

.lp-manga-composition .manga-balloon--rounded-rect::before,.lp-manga-composition .manga-balloon--rounded-rect::after{
  display: none !important;
}

/* 第6ページ：
   「お探しのものが見つかって〜」
   「見つけてくださり〜」
   の2つを角丸四角の吹き出しに変更 */
.lp-manga-composition .manga-balloon--closing-rounded-rect{
  border-radius: 26% / 12% !important;
}

.lp-manga-composition .manga-balloon--closing-rounded-rect::before,.lp-manga-composition .manga-balloon--closing-rounded-rect::after{
  display: none !important;
}

/* ヒアリング画面：
   「お困りごとや／ご希望を伺います。」を吹き出し中央へ配置し、
   2列の先頭「お」「ご」の高さを揃える */
.lp-manga-composition .manga-balloon--hearing-request .manga-balloon-text{
  place-self: center !important;
  align-self: center !important;
  justify-self: center !important;
  text-align: start !important;
  margin: 0 !important;
  transform: none !important;
}

/* 第6ページ：「お探しのものが見つかって〜」
   PC／タブレットでもスマホ版と同じ縦位置にそろえる */
.lp-manga-composition .manga-balloon--found-relief{
  --balloon-width: 10.8cqw !important;
  margin-top: -1.8cqw !important;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--found-relief{
    --balloon-width: 14cqw !important;
    margin-top: -1.8cqw !important;
  }
}

/* 第6ページ：「片づいたのは、部屋だけではありませんでした。」
   横長キャプションから縦書きの角丸吹き出しへ変更 */
.lp-manga-composition .manga-balloon--resolution-caption{
  background: var(--manga-balloon-fill) !important;
  border: max(1px, .18cqw) solid #171511 !important;
  padding: 1.1cqw .8cqw !important;
  filter: drop-shadow(0 .2cqw .26cqw #19140e29) !important;
}

.lp-manga-composition .manga-balloon--resolution-caption .manga-balloon-text{
  writing-mode: vertical-rl !important;
  text-orientation: upright !important;
  text-align: start !important;
  white-space: pre-line !important;
  width: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
  place-self: center !important;
  line-height: 1.45 !important;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--resolution-caption{
    --balloon-x: 2.2% !important;
    --balloon-y: 53.5% !important;
    --balloon-width: 15.8cqw !important;
    --balloon-height: 54cqw !important;
  }
}

/* 第6ページ下段：
   「ひとりで抱え込まなくて〜」「いつでも、まずは〜」を角丸四角へ。
   「ひとりで抱え込まなくて〜」は女性寄り・中央寄りへ移動 */
.lp-manga-composition .manga-balloon--relief-left,.lp-manga-composition .manga-balloon--consultation-right{
  border-radius: 26% / 12% !important;
}

.lp-manga-composition .manga-balloon--relief-left::before,.lp-manga-composition .manga-balloon--relief-left::after,.lp-manga-composition .manga-balloon--consultation-right::before,.lp-manga-composition .manga-balloon--consultation-right::after{
  display: none !important;
}

.lp-manga-composition .manga-balloon--relief-left{
  --balloon-x: 11.5% !important;
  margin-left: 4.5cqw !important;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--relief-left{
    --balloon-x: 12.5% !important;
    margin-left: 3cqw !important;
  }
}

/* 第6ページ：結びの緑帯を漫画の枠内から枠下へ移動 */
.lp-manga-composition .manga-closing-message{
  box-sizing: border-box;
  width: 100%;
  color: #fff;
  text-align: center;
  background: #17382e;
  border-top: 1px solid #d9d1c2;
  border-bottom: 1px solid #d9d1c2;
  padding: clamp(10px, 1.7vw, 18px) 20px;
  font-family: Hiragino Mincho ProN, Yu Mincho, YuMincho, Noto Serif JP, serif;
  font-size: clamp(13px, 1.9vw, 20px);
  font-weight: 800;
  line-height: 1.5;
  letter-spacing: .04em;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-closing-message{
    padding: 9px 12px;
    font-size: clamp(10px, 3.2cqw, 12px);
  }
}

/* 「通帳や印鑑、権利書も確認します。」
   隣の「大切な品を混ぜないように〜」と同じ透過感へ統一 */
.lp-manga-composition .manga-balloon--document-check{
  background: #fffcf2b8 !important;
}

/* 「片づいたのは、部屋だけではありませんでした。」
   「1 お問い合わせ」と同じ半透明グリーンの背景色へ */
.lp-manga-composition .manga-balloon--resolution-caption{
  background: #21534185 !important;
}

/* 「片づいたのは、部屋だけではありませんでした。」
   半透明グリーン背景に合わせて文字色を白へ */
.lp-manga-composition .manga-balloon--resolution-caption,.lp-manga-composition .manga-balloon--resolution-caption .manga-balloon-text{
  color: #fff !important;
}

/* 第6ページ下段：
   セリフ吹き出しが人物の手に重ならないよう位置を調整 */
.lp-manga-composition .manga-balloon--relief-left{
  --balloon-x: 25.5% !important;
  --balloon-y: 80.8% !important;
  margin-top: 0 !important;
}

.lp-manga-composition .manga-balloon--consultation-right{
  --balloon-x: 86.5% !important;
  --balloon-y: 80.6% !important;
  margin-top: 0 !important;
  margin-left: 0 !important;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--relief-left{
    --balloon-x: 27% !important;
    --balloon-y: 80.5% !important;
  }

  .lp-manga-composition .manga-balloon--consultation-right{
    --balloon-x: 86% !important;
    --balloon-y: 80.5% !important;
  }
}

/* 第6ページ下段・再調整：
   吹き出し枠そのものが人物の手に重ならないよう、
   左右とも縦幅を短くし、手から離れる位置へ配置 */
.lp-manga-composition
  .manga-page--closing
  .manga-balloon--relief-left{
  --balloon-x: 28.5% !important;
  --balloon-y: 80.2% !important;
  --balloon-width: 11.5cqw !important;
  --balloon-height: 22.5cqw !important;
  --balloon-mobile-height: 22.5cqw !important;
  margin-top: 0 !important;
  margin-left: 0 !important;
}

.lp-manga-composition
  .manga-page--closing
  .manga-balloon--consultation-right{
  --balloon-x: 64.2% !important;
  --balloon-y: 78.8% !important;
  --balloon-width: 10.8cqw !important;
  --balloon-height: 23cqw !important;
  --balloon-mobile-height: 23cqw !important;
  margin-top: 0 !important;
  margin-left: 0 !important;
}

.lp-manga-composition
  .manga-page--closing
  .manga-balloon--relief-left
  .manga-balloon-text,.lp-manga-composition
  .manga-page--closing
  .manga-balloon--consultation-right
  .manga-balloon-text{
  place-self: center !important;
  margin: 0 !important;
}

@media (width <= 520px) {
  .lp-manga-composition
    .manga-page--closing
    .manga-balloon--relief-left{
    --balloon-x: 28.5% !important;
    --balloon-y: 79.2% !important;
    --balloon-width: 12.2cqw !important;
    --balloon-height: 24cqw !important;
    --balloon-mobile-height: 27.4cqw !important;
  }

  .lp-manga-composition
    .manga-page--closing
    .manga-balloon--consultation-right{
    --balloon-x: 62.5% !important;
    --balloon-y: 79.6% !important;
    --balloon-width: 11.5cqw !important;
    --balloon-height: 24.5cqw !important;
    --balloon-mobile-height: 25.5cqw !important;
  }
}

/* 第6ページ下段：
   文字サイズを小さくし、吹き出し枠内に確実に収める */
.lp-manga-composition
  .manga-page--closing
  .manga-balloon--relief-left,.lp-manga-composition
  .manga-page--closing
  .manga-balloon--consultation-right{
  font-size: clamp(6px, 1.45cqw, 13px) !important;
  padding: .7cqw !important;
  overflow: hidden !important;
}

.lp-manga-composition
  .manga-page--closing
  .manga-balloon--relief-left
  .manga-balloon-text,.lp-manga-composition
  .manga-page--closing
  .manga-balloon--consultation-right
  .manga-balloon-text{
  max-width: 100% !important;
  max-height: 100% !important;
  line-height: 1.3 !important;
  white-space: normal !important;
  overflow: hidden !important;
  place-self: center !important;
}

@media (width <= 520px) {
  .lp-manga-composition
    .manga-page--closing
    .manga-balloon--relief-left,.lp-manga-composition
    .manga-page--closing
    .manga-balloon--consultation-right{
    font-size: 2.05cqw !important;
    padding: .55cqw !important;
  }

  .lp-manga-composition
    .manga-page--closing
    .manga-balloon--relief-left
    .manga-balloon-text,.lp-manga-composition
    .manga-page--closing
    .manga-balloon--consultation-right
    .manga-balloon-text{
    line-height: 1.25 !important;
  }
}

/* 仕分け確認シーン：
   「こちらは残しておきますか？」と
   「はい、母がよく使っていたものなんです。」の吹き出し高さを統一 */
.lp-manga-composition .manga-balloon--keep-check,
.lp-manga-composition .manga-balloon--mother-item {
  --balloon-height: 28.5cqw !important;
  --balloon-mobile-height: 28.5cqw !important;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--keep-check,
  .lp-manga-composition .manga-balloon--mother-item {
    --balloon-height: 32.5cqw !important;
    --balloon-mobile-height: 32.5cqw !important;
  }
}

/* 仕分け確認シーン・最終調整：
   2つの吹き出しを「枠の高さ」だけでなく上端位置まで完全に揃える */
.lp-manga-composition .manga-balloon--keep-check,
.lp-manga-composition .manga-balloon--mother-item {
  --balloon-y: 55% !important;
  --balloon-height: 28.5cqw !important;
  --balloon-mobile-height: 28.5cqw !important;
  height: 28.5cqw !important;
  margin-top: 0 !important;
  box-sizing: border-box !important;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--keep-check,
  .lp-manga-composition .manga-balloon--mother-item {
    --balloon-y: 55% !important;
    --balloon-height: 32.5cqw !important;
    --balloon-mobile-height: 32.5cqw !important;
    height: 32.5cqw !important;
    margin-top: 0 !important;
  }
}

/* 仕分け確認シーン：
   「こちらは残しておきますか？」の枠内余白を詰め、
   隣の吹き出しと同じ高さに見えるよう文字を縦方向へ均等配置 */
.lp-manga-composition .manga-balloon--keep-check {
  padding-block: .25cqw !important;
}

.lp-manga-composition .manga-balloon--keep-check .manga-balloon-text {
  box-sizing: border-box !important;
  height: 100% !important;
  max-height: 100% !important;
  margin: 0 !important;
  padding-block: 0 !important;
  place-self: stretch center !important;
  text-align: justify !important;
  text-align-last: justify !important;
  line-height: 1.35 !important;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--keep-check {
    padding-block: .15cqw !important;
  }

  .lp-manga-composition .manga-balloon--keep-check .manga-balloon-text {
    height: 100% !important;
    text-align: justify !important;
    text-align-last: justify !important;
  }
}

/* 「こちらは残しておきますか？」：
   縦書き文字の文字間を通常に戻し、間延びを解消 */
.lp-manga-composition .manga-balloon--keep-check .manga-balloon-text {
  text-align: start !important;
  text-align-last: auto !important;
  letter-spacing: .02em !important;
  line-height: 1.3 !important;
  place-self: center !important;
  height: auto !important;
  max-height: 100% !important;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--keep-check .manga-balloon-text {
    text-align: start !important;
    text-align-last: auto !important;
    letter-spacing: 0 !important;
    line-height: 1.25 !important;
    place-self: center !important;
    height: auto !important;
  }
}

/* 「こちらは残しておきますか？」：
   文字間はそのまま、吹き出しの縦幅だけコンパクト化 */
.lp-manga-composition .manga-balloon--keep-check {
  --balloon-height: 23.5cqw !important;
  --balloon-mobile-height: 23.5cqw !important;
  height: 23.5cqw !important;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--keep-check {
    --balloon-height: 27.5cqw !important;
    --balloon-mobile-height: 27.5cqw !important;
    height: 27.5cqw !important;
  }
}

/* 「こちらは残しておきますか？」：
   スマホ版のみ、吹き出しの縦幅をさらにコンパクト化 */
@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--keep-check {
    --balloon-height: 24.5cqw !important;
    --balloon-mobile-height: 24.5cqw !important;
    height: 24.5cqw !important;
  }
}

/* ==================================================
   漫画直後CTA：LINE「公式LINE」を無料相談の下へ配置
   ================================================== */
#story > .section-cta .section-cta-actions .line-cta {
  grid-template-columns: auto minmax(0, 1fr) 24px;
  align-items: center;
  column-gap: 12px;
  overflow: hidden;
}

#story > .section-cta .section-cta-actions .line-cta-copy {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 2px;
  min-width: 0;
  text-align: center;
}

#story > .section-cta .section-cta-actions .line-cta-copy b {
  margin: 0;
  color: #fff;
  white-space: normal;
  text-align: center;
  line-height: 1.25;
}

#story > .section-cta .section-cta-actions .line-cta-copy small {
  display: block;
  margin: 1px 0 0;
  color: #fff;
  white-space: nowrap;
  text-align: center;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.1;
}

#story > .section-cta .section-cta-actions .line-cta i {
  justify-self: end;
  margin-left: 0;
}

@media (width <= 700px) {
  #story > .section-cta .section-cta-actions .line-cta {
    grid-template-columns: 32px minmax(0, 1fr) 20px;
    column-gap: 5px;
  }

  #story > .section-cta .section-cta-actions .line-cta-copy small {
    font-size: 8px;
  }
}

/* ==================================================
   スマホ版：「迷った時は〜」を指定の3行で固定
   ================================================== */
@media (width <= 760px) {
  .layout-calm .concerns-copy h2 br {
    display: block !important;
  }

  .layout-calm .concerns-copy h2 {
    white-space: nowrap;
    font-size: clamp(22px, 6.2vw, 25px) !important;
    line-height: 1.65;
  }
}

/* ==================================================
   スマホ端末差対策：
   「整理のあとも同じ窓口で」画像の高さ消失・非表示防止
   ================================================== */
.layout-calm .aftercare-character {
  width: 100%;
  min-height: 280px !important;
  aspect-ratio: 5 / 4;
  position: relative;
  overflow: hidden;
}

.layout-calm .aftercare-character img {
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-width: none !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

/* 760px以下はレイアウトを1カラムに固定して端末幅による競合を回避 */
@media (width <= 760px) {
  .layout-calm .aftercare-intro {
    grid-template-columns: 1fr !important;
    gap: 0 !important;
  }

  .layout-calm .aftercare-character {
    min-height: 330px !important;
  }
}

/* 小さいスマホでも最低高さを確保 */
@media (width <= 380px) {
  .layout-calm .aftercare-character {
    min-height: 285px !important;
  }
}

/* ==================================================
   スマホ版：「遺品整理のあとも同じ窓口で」帯を画像下端に密着
   ================================================== */
@media (width <= 760px) {
  .layout-calm .aftercare-character figcaption {
    bottom: 0 !important;
    left: 4% !important;
    right: 4% !important;
    margin: 0 !important;
  }
}

/* ==================================================
   LINE CTA：「無料相談する」と「公式LINE」の間隔を詰める
   ================================================== */
.layout-calm .section-cta-actions .line-cta-copy {
  gap: 0 !important;
}

.layout-calm .section-cta-actions .line-cta-copy small {
  margin-top: -1px !important;
  line-height: 1 !important;
}

/* ==================================================
   スマホ版：サービスCTA内外の余白を調整
   ・「まずは専門家に無料でご相談ください。」上と
     CTAボタン下の余白を同程度にする
   ・CTAボックスと「明朗会計」ボックスの間を詰める
   ================================================== */
@media (width <= 760px) {
  .layout-calm #service > .section-cta {
    padding-top: 17px !important;
    padding-bottom: 17px !important;
  }

  .layout-calm #service > .section-cta > p > b {
    margin-top: 0 !important;
  }

  .layout-calm #service {
    padding-bottom: 14px !important;
  }

  .layout-calm #price {
    padding-top: 14px !important;
  }
}

/* ==================================================
   スマホ版：「料金は、内訳まで明確に。」を1行固定
   ================================================== */
@media (width <= 760px) {
  .layout-calm #price .price-copy h2 {
    white-space: nowrap !important;
    text-wrap: nowrap !important;
    overflow-wrap: normal !important;
    word-break: keep-all !important;
    font-size: clamp(19px, 5.6vw, 24px) !important;
  }
}

/* ==================================================
   スマホ版：ヘッダー／フッターのブランド文字左端を統一
   「まごころ遺品サポート」とサブコピーの開始位置を揃える
   ================================================== */
@media (width <= 760px) {
  .layout-calm .site-header .brand-copy,
  .layout-calm footer .brand-copy {
    justify-items: start;
    align-items: center;
    text-align: left;
  }

  .layout-calm .site-header .brand-copy > b,
  .layout-calm .site-header .brand-copy > small,
  .layout-calm footer .brand-copy > b,
  .layout-calm footer .brand-copy > small {
    box-sizing: border-box;
    width: 100%;
    margin-left: 0 !important;
    padding-left: 0 !important;
    text-align: left !important;
    transform: none !important;
  }

  .layout-calm .site-header .brand-copy > small,
  .layout-calm footer .brand-copy > small {
    margin-top: 3px;
  }
}

/* ==================================================
   スマホ版：ブランド文字の「見た目上の左端」を1px補正
   見出し（明朝）とサブコピー（ゴシック）の字面差を吸収
   ================================================== */
@media (width <= 760px) {
  .layout-calm .site-header .brand-copy > small,
  .layout-calm footer .brand-copy > small {
    position: relative;
    left: 1px;
  }
}

/* ==================================================
   フッター：会社概要
   ================================================== */
.layout-calm footer {
  grid-template-columns: minmax(260px, .72fr) minmax(0, 1.28fr);
  align-items: start;
  gap: 26px 54px;
  min-height: 0;
  padding-top: 38px;
  padding-bottom: 34px;
}

.layout-calm .footer-brand {
  grid-row: auto;
  align-self: start;
}

.footer-company-info {
  width: 100%;
  max-width: 720px;
  justify-self: end;
  border-top: 1px solid var(--palette-line);
}

.footer-company-info p {
  display: grid;
  grid-template-columns: 122px minmax(0, 1fr);
  gap: 14px;
  margin: 0;
  padding: 8px 0;
  color: var(--muted);
  border-bottom: 1px solid var(--palette-line);
  text-align: left;
  font-size: 10px;
  line-height: 1.65;
}

.footer-company-info b {
  color: var(--palette-secondary-deep);
  font-weight: 800;
}

.footer-company-info span,
.footer-company-info a {
  color: var(--muted);
}

.layout-calm footer > small {
  grid-column: 1 / -1;
  text-align: right;
  margin-top: 4px;
}

@media (width <= 760px) {
  .layout-calm footer {
    grid-template-columns: 1fr;
    gap: 18px;
    padding: 32px 20px 100px;
  }

  .footer-company-info {
    max-width: none;
    justify-self: stretch;
  }

  .footer-company-info p {
    grid-template-columns: 96px minmax(0, 1fr);
    gap: 10px;
    padding: 7px 0;
    font-size: 9px;
    line-height: 1.6;
  }

  .layout-calm footer > small {
    grid-column: 1;
    text-align: left;
    margin-top: 0;
  }
}

@media (width <= 380px) {
  .footer-company-info p {
    grid-template-columns: 86px minmax(0, 1fr);
    gap: 46px;
    font-size: 8px;
  }
}

/* ==================================================
   フッター：ブランド名とサブコピーの見た目の左端を揃える
   「認定遺品整理士が在籍」が左に見える分だけ微調整
   ================================================== */
.layout-calm footer .footer-brand .brand-copy {
  justify-items: start;
  text-align: left;
}

.layout-calm footer .footer-brand .brand-copy > b,
.layout-calm footer .footer-brand .brand-copy > small {
  width: 100%;
  margin-left: 0 !important;
  padding-left: 0 !important;
  text-align: left !important;
  transform: none !important;
}

.layout-calm footer .footer-brand .brand-copy > small {
  position: relative;
  left: 2px;
}

/* ==================================================
   漫画直後CTA：外枠横幅をサービスCTAと統一
   ================================================== */
.layout-calm #story > .section-cta {
  width: min(1100px, calc(100% - 48px));
  margin-inline: auto;
}

@media (width <= 640px) {
  .layout-calm #story > .section-cta {
    width: calc(100% - 36px);
  }
}

/* ==================================================
   漫画直後CTA：
   CTA下端〜次セクションまでを #story 内の余白として確保
   開発者ツールで #story を選択した際も、下側に同程度の領域が出るようにする
   ================================================== */
.layout-calm #story.manga-section.manga-section--bare {
  padding-bottom: 34px !important;
}

.layout-calm #story > .section-cta {
  margin-bottom: 0 !important;
}

@media (width <= 760px) {
  .layout-calm #story.manga-section.manga-section--bare {
    padding-bottom: 28px !important;
  }
}

/* ==================================================
   ヘッダー・フッター・タブアイコン：
   新しい「みさき＋専門スタッフ」ロゴへ変更
   ================================================== */
.layout-calm .brand-mark,
.layout-calm .footer-brand .brand-mark {
  background: transparent !important;
  border: 0 !important;
  border-radius: 50% !important;
  overflow: hidden !important;
  box-shadow: 0 6px 16px #17382e24 !important;
}

.layout-calm .brand-mark::before,
.layout-calm .brand-mark::after,
.layout-calm .footer-brand .brand-mark::before,
.layout-calm .footer-brand .brand-mark::after {
  display: none !important;
}

.layout-calm .brand-logo-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 50%;
}

.layout-calm .brand-monogram {
  display: none !important;
}

/* ==================================================
   漫画最終帯：
   「大切な思い出を残しながら、心と住まいの整理をお手伝いします。」
   を1行で表示
   ================================================== */
.lp-manga-composition .manga-closing-message {
  white-space: nowrap !important;
  font-size: clamp(11px, 1.65vw, 18px) !important;
  letter-spacing: .03em !important;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-closing-message {
    white-space: nowrap !important;
    font-size: clamp(7.5px, 2.65cqw, 10.5px) !important;
    letter-spacing: .01em !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
}

/* ==================================================
   ヘッダー／フッター ブランドロゴ
   ・スマホ（760px以下）：現状ロゴ・現状サイズを維持
   ・PC（761px以上）：assets/images/brand-logo-pc.png に切替
   ※PC用画像を変更するときは brand-logo-pc.png を同名で差し替えるだけ
   ================================================== */
.layout-calm .brand-logo-picture {
  display: block;
  width: 100%;
  height: 100%;
}

.layout-calm .brand-logo-picture .brand-logo-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 50%;
}

@media (width >= 761px) {
  .layout-calm .site-header .brand-mark {
    flex: 0 0 64px;
    width: 64px !important;
    height: 64px !important;
  }

  .layout-calm footer .footer-brand .brand-mark {
    flex: 0 0 82px;
    width: 82px !important;
    height: 82px !important;
  }

  .layout-calm .site-header .brand {
    gap: 16px;
  }

  .layout-calm footer .footer-brand {
    gap: 18px;
  }
}

/* スマホは現状サイズを明示的に維持 */
@media (width <= 760px) {
  .layout-calm .site-header .brand-mark,
  .layout-calm footer .footer-brand .brand-mark {
    width: 36px !important;
    height: 36px !important;
  }
}

/* ==================================================
   PC版漫画：最大860px + 左右背景パターンのJS自動演出
   ・PC（981px以上）の漫画表示部分だけに適用
   ・漫画本体は min(860px, 画面幅 - 164px)
   ・左右の柄は、右上から左下へ途切れずゆっくり移動
   ・文言を短周期で重ね、タイル境界をまたいでも途中で消えない連続柄
   ・スマホ／タブレットは従来どおり横幅100%
   ================================================== */
.manga-pc-pattern-stage {
  width: 100%;
}

@media (width >= 981px) {
  .layout-calm #story .manga-pc-pattern-stage {
    --manga-pattern-tile-width: 512px;
    --manga-pattern-tile-height: 384px;
    --manga-pattern-loop-x: 1024px;
    --manga-pattern-loop-y: 768px;
    --manga-pattern-layer-offset-x: -1536px;
    --manga-pattern-layer-offset-y: -1152px;
    isolation: isolate;
    position: relative;
    width: 100%;
    background-color: #fdfdfb;
    background-image: url("../images/manga-side-pattern-continuous.png");
    background-position: 0 0;
    background-size:
      var(--manga-pattern-tile-width)
      var(--manga-pattern-tile-height);
    background-repeat: repeat;
    overflow: hidden;
  }

  /* JSが有効な場合は、背景専用レイヤーだけを斜めに移動させる */
  .layout-calm #story .manga-pc-pattern-stage.is-side-motion-ready {
    background-image: none;
  }

  .layout-calm #story .manga-side-motion-layer {
    z-index: 0;
    pointer-events: none;
    position: absolute;
    top: var(--manga-pattern-layer-offset-y);
    right: var(--manga-pattern-layer-offset-x);
    bottom: var(--manga-pattern-layer-offset-y);
    left: var(--manga-pattern-layer-offset-x);
    background-color: #fdfdfb;
    background-image: url("../images/manga-side-pattern-continuous.png");
    background-position: 0 0;
    background-size:
      var(--manga-pattern-tile-width)
      var(--manga-pattern-tile-height);
    background-repeat: repeat;
    transform: translate3d(0, 0, 0);
    backface-visibility: hidden;
    will-change: transform;
  }

  .layout-calm #story .manga-pc-pattern-stage > .lp-manga-composition {
    z-index: 1;
    box-sizing: border-box;
    position: relative;
    width: min(860px, calc(100% - 164px));
    max-width: 860px;
    margin: 0 auto;
    background: #f7f3e9;
    overflow-x: clip;
  }
}

@media (width <= 980px) {
  .layout-calm #story .manga-pc-pattern-stage,
  .layout-calm #story .manga-pc-pattern-stage.is-side-motion-ready {
    background: none;
  }

  .layout-calm #story .manga-side-motion-layer {
    display: none;
  }

  .layout-calm #story .manga-pc-pattern-stage > .lp-manga-composition {
    width: 100%;
    max-width: none;
    margin-inline: 0;
  }
}

@media (prefers-reduced-motion: reduce) and (width >= 981px) {
  .layout-calm #story .manga-pc-pattern-stage.is-side-motion-ready {
    background-image: url("../images/manga-side-pattern-continuous.png");
  }

  .layout-calm #story .manga-side-motion-layer {
    display: none;
  }
}

/* ==================================================
   第4ページ：作業開始前の説明を横書きへ変更
   「残すものや探しているものを
     確認してから作業を始めます。」
   ・PC／タブレットでは横長の四角枠＋横書き2行
   ・スマホ（520px以下）は既存の横書き説明枠を維持
   ================================================== */
@media (width >= 521px) {
  .lp-manga-composition .manga-balloon--work-intro {
    --balloon-x: -3% !important;
    --balloon-y: 43.2% !important;
    --balloon-width: 38cqw !important;
    --balloon-height: 8.8cqw !important;
    box-sizing: border-box;
    height: var(--balloon-height) !important;
    margin: 0 !important;
    padding: .75cqw 1.35cqw !important;
    border-radius: 0 !important;
    transform: scale(.8) !important;
    transform-origin: 50% 0 !important;
  }

  .lp-manga-composition
    .manga-balloon--work-intro
    .manga-balloon-text {
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    white-space: normal !important;
    text-align: center !important;
    place-self: center stretch;
    width: 100%;
    max-width: none;
    max-height: none;
    font-size: clamp(9px, 2.05cqw, 20px) !important;
    line-height: 1.45 !important;
  }

  .lp-manga-composition .manga-balloon--work-intro::before,
  .lp-manga-composition .manga-balloon--work-intro::after {
    display: none !important;
  }
}

/* ==================================================
   第4ページ：「通帳や印鑑、権利書も確認します。」を横書きへ変更
   ・PC／タブレットでは横長の四角枠＋横書き2行
   ・元の左下付近を保ちながら、文字を枠中央へ配置
   ・スマホ（520px以下）は既存の横書き説明枠を維持
   ================================================== */
@media (width >= 521px) {
  .lp-manga-composition .manga-balloon--document-check {
    --balloon-x: .8% !important;
    --balloon-y: 95.4% !important;
    --balloon-width: 38cqw !important;
    --balloon-height: 6.4cqw !important;
    --balloon-mobile-height: 8.4cqw !important;
    box-sizing: border-box;
    height: var(--balloon-height) !important;
    margin: 0 !important;
    padding: .75cqw 1.3cqw !important;
    border-radius: 0 !important;
    transform: scale(.8) !important;
    transform-origin: 0 0 !important;
  }

  .lp-manga-composition
    .manga-balloon--document-check
    .manga-balloon-text {
    writing-mode: horizontal-tb !important;
    text-orientation: mixed !important;
    white-space: normal !important;
    text-align: center !important;
    place-self: center stretch;
    width: 100%;
    max-width: none;
    max-height: none;
    font-size: clamp(9px, 2.05cqw, 20px) !important;
    line-height: 1.45 !important;
  }

  .lp-manga-composition .manga-balloon--document-check::before,
  .lp-manga-composition .manga-balloon--document-check::after {
    display: none !important;
  }
}


/* ==================================================
   漫画：丸枠（セリフ）の文字サイズを統一
   ・丸い会話／心の声の吹き出しを同じ文字サイズに統一
   ・四角い説明枠、状況説明、ラベルは対象外
   ================================================== */
.lp-manga-composition .manga-balloon--thought,
.lp-manga-composition
  .manga-balloon--oval:not(.manga-balloon--mobile-explanation) {
  font-size: 1.76696cqw !important;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--thought,
  .lp-manga-composition
    .manga-balloon--oval:not(.manga-balloon--mobile-explanation) {
    font-size: 2.46696cqw !important;
  }

  /* 最終ページ下段は、統一後の文字が切れない分だけ枠幅を調整 */
  .lp-manga-composition
    .manga-page--closing
    .manga-balloon--relief-left,
  .lp-manga-composition
    .manga-page--closing
    .manga-balloon--consultation-right {
    --balloon-width: 14cqw !important;
    width: 14cqw !important;
    padding-inline: .2cqw !important;
  }
}

/* ==================================================
   冒頭ダイジェスト丸枠：セリフ文字サイズを本編の丸枠と統一
   対象：「これ・・・一人で全部片付けなきゃなの・・？」
   ・PC／タブレット（521px以上）の見た目サイズを本編丸枠に合わせる
   ・スマホ（520px以下）は現状を維持
   ================================================== */
@media (width >= 521px) {
  .lp-manga-composition
    .teaser-dialogue--room.manga-thought-dialogue {
    font-size: 1.43cqw !important;
  }
}

/* ==================================================
   冒頭ダイジェスト丸枠：スタッフのセリフ文字サイズを本編と統一
   対象：「こちら、引き出しの奥に残っていました。」
   ・PC／タブレット（521px以上）の見た目サイズを本編丸枠に合わせる
   ・スマホ（520px以下）は現状を維持
   ================================================== */
@media (width >= 521px) {
  .lp-manga-composition
    .teaser-dialogue--staff.manga-spoken-dialogue {
    font-size: 1.43cqw !important;
  }
}

/* ==================================================
   冒頭ダイジェスト：スマホ版の吹き出し位置を修正
   対象：「これ・・・一人で全部片付けなきゃなの・・？」
   ・PC／タブレット（521px以上）は現状を維持
   ・スマホ（520px以下）のみ、上方向へのはみ出しを解消
   ================================================== */
@media (width <= 520px) {
  .lp-manga-composition
    .teaser-dialogue--room.manga-thought-dialogue {
    bottom: 2% !important;
  }
}

/* ==================================================
   第1ページ：「遺品整理の会社って〜」を丸い吹き出しへ変更
   ・「でも、一つひとつ自分で〜」と同じ縦長の心の声デザイン
   ・PC／タブレットは現在の四角枠の中心付近を維持
   ・スマホは既存の丸枠位置・サイズを維持
   ================================================== */
.lp-manga-composition .manga-balloon--company-search-dialogue {
  --balloon-x: 59% !important;
  --balloon-y: 60% !important;
  --balloon-width: 13.5cqw !important;
  --balloon-height: 31cqw !important;
  --balloon-mobile-height: 31cqw !important;
  box-sizing: border-box !important;
  left: var(--balloon-x) !important;
  top: var(--balloon-y) !important;
  width: var(--balloon-width) !important;
  height: var(--balloon-height) !important;
  margin: 0 !important;
  padding: .8cqw !important;
  background: var(--manga-balloon-fill) !important;
  border: max(1px, .22cqw) solid #171511 !important;
  border-radius: 50% !important;
  filter: drop-shadow(0 .2cqw .26cqw #19140e29) !important;
  transform: translate(-50%, -50%) scale(.8) !important;
  transform-origin: 50% 50% !important;
  font-family: Hiragino Mincho ProN, Yu Mincho, YuMincho, Noto Serif JP, serif !important;
  font-size: 1.76696cqw !important;
  font-weight: 650 !important;
}

.lp-manga-composition
  .manga-balloon--company-search-dialogue
  .manga-balloon-text {
  writing-mode: vertical-rl !important;
  text-orientation: upright !important;
  white-space: pre !important;
  text-align: start !important;
  place-self: center !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  line-height: 1.35 !important;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--company-search-dialogue {
    --balloon-x: 50% !important;
    --balloon-y: 47.7% !important;
    --balloon-width: 17.5cqw !important;
    --balloon-height: 39cqw !important;
    --balloon-mobile-height: 39cqw !important;
    left: var(--balloon-x) !important;
    top: var(--balloon-y) !important;
    width: var(--balloon-width) !important;
    height: var(--balloon-height) !important;
    margin: 0 !important;
    margin-top: 9.231cqw !important;
    padding: .8cqw !important;
    transform: scale(.8) !important;
    transform-origin: 100% 0 !important;
    font-size: 2.46696cqw !important;
  }
}

/* ==================================================
   スマホ版：認定・許可欄と追従バーにブランド表示を追加
   ・「古物商許可」の右側へ、ロゴ＋屋号を配置
   ・追従バーの上中央へ、ロゴ＋屋号をタブ状に配置
   ・PC／タブレット（761px以上）は非表示
   ================================================== */
.hero-credentials-brand,
.mobile-cta-brand {
  display: none;
}

@media (width <= 760px) {
  /* 認定・許可欄：1段目は全幅、2段目は古物商＋屋号の2列 */
  .layout-calm .hero-credentials {
    grid-template-columns: minmax(0, 1fr) auto;
    display: grid !important;
    align-items: center;
    column-gap: clamp(7px, 2.6vw, 14px);
    row-gap: 7px;
  }

  .layout-calm .hero-credentials > span:first-child {
    grid-column: 1 / -1;
  }

  .layout-calm .hero-credentials > span:nth-child(2) {
    grid-column: 1;
    min-width: 0;
  }

  .layout-calm .hero-credentials .hero-credentials-brand {
    grid-column: 2;
    grid-row: 2;
    justify-self: end;
    align-items: center;
    gap: 6px;
    min-width: 0;
    padding: 2px 0;
    color: var(--primary);
    background: transparent;
    display: inline-flex;
  }

  .layout-calm .hero-credentials .hero-credentials-brand img {
    flex: 0 0 31px;
    width: 31px;
    height: 31px;
    object-fit: cover;
    object-position: center;
    border: 1px solid #b68a4573;
    border-radius: 50%;
    box-shadow: 0 4px 10px #17382e21;
  }

  .layout-calm .hero-credentials .hero-credentials-brand strong {
    color: var(--primary);
    white-space: nowrap;
    font-family: var(--display);
    font-size: clamp(8px, 2.45vw, 10px);
    font-weight: 800;
    line-height: 1.18;
    letter-spacing: .025em;
  }

  /* 追従バー：バー上部中央にブランドタブを固定 */
  .layout-calm .mobile-cta .mobile-cta-brand,
  .layout-calm .mobile-cta .mobile-cta-brand:hover,
  .layout-calm .mobile-cta .mobile-cta-brand:focus-visible {
    z-index: 2;
    position: absolute;
    top: 0;
    left: 50%;
    align-items: center;
    gap: 7px;
    width: max-content;
    min-height: 38px;
    margin: 0;
    padding: 4px 13px 4px 5px;
    color: var(--primary);
    background: #fffdf9f7;
    border: 1px solid #17382e33;
    border-bottom-color: #fffdf9f7;
    border-radius: 999px;
    font-size: inherit;
    font-weight: inherit;
    line-height: 1;
    display: inline-flex;
    transform: translate(-50%, -82%);
    box-shadow: 0 -2px 12px #0a1c1524, 0 5px 15px #0a1c151f;
  }

  .layout-calm .mobile-cta .mobile-cta-brand img {
    flex: 0 0 30px;
    width: 30px;
    height: 30px;
    object-fit: cover;
    object-position: center;
    border: 1px solid #b68a4573;
    border-radius: 50%;
  }

  .layout-calm .mobile-cta .mobile-cta-brand strong {
    color: var(--primary);
    white-space: nowrap;
    font-family: var(--display);
    font-size: clamp(10px, 2.9vw, 12px);
    font-weight: 800;
    line-height: 1;
    letter-spacing: .035em;
  }

  /* 追従バー上のブランド分だけ、ページ最下部の隠れを防止 */
  .layout-calm.site {
    padding-bottom: calc(100px + env(safe-area-inset-bottom)) !important;
  }

  html {
    scroll-padding-bottom: calc(100px + env(safe-area-inset-bottom));
  }
}

@media (width <= 360px) {
  .layout-calm .hero-credentials {
    column-gap: 5px;
  }

  .layout-calm .hero-credentials .hero-credentials-brand {
    gap: 4px;
  }

  .layout-calm .hero-credentials .hero-credentials-brand img {
    flex-basis: 27px;
    width: 27px;
    height: 27px;
  }

  .layout-calm .hero-credentials .hero-credentials-brand strong {
    font-size: 7.5px;
  }

  .layout-calm .mobile-cta .mobile-cta-brand,
  .layout-calm .mobile-cta .mobile-cta-brand:hover,
  .layout-calm .mobile-cta .mobile-cta-brand:focus-visible {
    gap: 5px;
    min-height: 34px;
    padding: 3px 10px 3px 4px;
  }

  .layout-calm .mobile-cta .mobile-cta-brand img {
    flex-basis: 27px;
    width: 27px;
    height: 27px;
  }

  .layout-calm .mobile-cta .mobile-cta-brand strong {
    font-size: 9.5px;
  }
}

/* ==================================================
   ブランド表示・追従CTA 最終調整
   ・スマホ：認定／許可欄の屋号を1行化し、少し上へ移動
   ・PC：ヘッダー屋号を拡大し、サブコピーを屋号右側へ配置
   ・PC：追従バーを「受付案内 → ロゴ＋屋号 → CTA」の横一列へ
   ================================================== */

/* スマホ：認定／許可欄のロゴ＋屋号 */
@media (width <= 760px) {
  .layout-calm .hero-credentials {
    grid-template-columns: minmax(135px, 1fr) auto;
    column-gap: clamp(4px, 1.8vw, 9px);
  }

  .layout-calm .hero-credentials .hero-credentials-brand {
    align-self: center;
    gap: clamp(4px, 1.5vw, 7px);
    max-width: 48vw;
    padding-block: 0;
    transform: translateY(-1px);
  }

  .layout-calm .hero-credentials .hero-credentials-brand img {
    flex-basis: clamp(28px, 8.3vw, 34px);
    width: clamp(28px, 8.3vw, 34px);
    height: clamp(28px, 8.3vw, 34px);
  }

  .layout-calm .hero-credentials .hero-credentials-brand strong {
    white-space: nowrap;
    font-size: clamp(9.5px, 3.05vw, 12.5px);
    line-height: 1;
    letter-spacing: .015em;
  }
}

@media (width <= 360px) {
  .layout-calm .hero-credentials {
    grid-template-columns: minmax(132px, 1fr) auto;
    column-gap: 3px;
  }

  .layout-calm .hero-credentials > span:nth-child(2) {
    gap: 4px;
    white-space: nowrap;
    font-size: 7.8px;
  }

  .layout-calm .hero-credentials .hero-credentials-brand {
    gap: 4px;
    max-width: 46vw;
    transform: translateY(-4px);
  }

  .layout-calm .hero-credentials .hero-credentials-brand img {
    flex-basis: 27px;
    width: 27px;
    height: 27px;
  }

  .layout-calm .hero-credentials .hero-credentials-brand strong {
    font-size: 9.5px;
  }
}

/* PC／タブレット：ヘッダーの屋号＋サブコピー */
@media (width >= 761px) {
  .layout-calm .site-header {
    gap: clamp(16px, 2vw, 30px);
  }

  .layout-calm .site-header .brand {
    flex: 0 1 auto;
    gap: 16px;
    min-width: 0;
  }

  .layout-calm .site-header .brand-copy {
    grid-template-columns: max-content max-content;
    grid-template-areas:
      "kicker kicker"
      "name tagline";
    align-items: center;
    column-gap: clamp(10px, 1vw, 16px);
    row-gap: 3px;
    min-width: 0;
  }

  .layout-calm .site-header .brand-kicker {
    grid-area: kicker;
    margin: 0;
  }

  .layout-calm .site-header .brand-copy > b {
    grid-area: name;
    width: auto;
    white-space: nowrap;
    font-size: clamp(18px, 1.45vw, 23px);
    line-height: 1.08;
    letter-spacing: .065em;
  }

  .layout-calm .site-header .brand-copy > small {
    grid-area: tagline;
    position: static;
    width: auto;
    margin: 0;
    padding-left: clamp(10px, 1vw, 15px);
    color: var(--muted);
    border-left: 1px solid var(--palette-line, var(--line));
    white-space: nowrap;
    font-size: clamp(8px, .72vw, 10px);
    line-height: 1.25;
    transform: none;
  }

  .layout-calm .mobile-cta {
    gap: clamp(8px, 1vw, 14px);
  }

  .layout-calm .mobile-cta .mobile-cta-info {
    flex: 1 1 auto;
    align-items: center;
    gap: clamp(6px, .8vw, 10px);
    min-width: 0;
    white-space: nowrap;
    display: flex;
  }

  .layout-calm .mobile-cta .mobile-cta-info b {
    flex: none;
    color: #fff;
    font: 900 clamp(10px, .9vw, 13px) / 1.2 var(--sans);
    white-space: nowrap;
  }

  .layout-calm .mobile-cta .mobile-cta-info small {
    color: #ffffffbf;
    font: 600 clamp(8px, .72vw, 10px) / 1.2 var(--sans);
    white-space: nowrap;
    display: inline;
  }

  .layout-calm .mobile-cta .mobile-cta-brand,
  .layout-calm .mobile-cta .mobile-cta-brand:hover,
  .layout-calm .mobile-cta .mobile-cta-brand:focus-visible {
    position: static;
    flex: 0 0 auto;
    align-items: center;
    gap: 8px;
    width: auto;
    min-height: 44px;
    margin: 0;
    padding: 4px 13px 4px 5px;
    color: var(--primary);
    background: #fffdf9f2;
    border: 1px solid #ffffff70;
    border-radius: 999px;
    font-size: inherit;
    line-height: 1;
    display: inline-flex;
    transform: none;
    box-shadow: 0 5px 16px #0a1c1529;
  }

  .layout-calm .mobile-cta .mobile-cta-brand img {
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    object-fit: cover;
    object-position: center;
    border: 1px solid #b68a4573;
    border-radius: 50%;
  }

  .layout-calm .mobile-cta .mobile-cta-brand strong {
    color: var(--primary);
    white-space: nowrap;
    font-family: var(--display);
    font-size: clamp(10px, 7.85vw, 20px);
    font-weight: 800;
    line-height: 1;
    letter-spacing: .025em;
  }

  .layout-calm .footer-phone-cta,
  .layout-calm .mobile-cta .line-cta--mobile {
    flex: 0 1 auto;
    min-width: 0;
  }
}

/* 981〜1180px：ヘッダーと追従バーを窮屈にしない中間調整 */
@media (981px <= width <= 1180px) {
  .layout-calm .site-header {
    gap: 14px;
    padding-inline: 18px;
  }

  .layout-calm .site-header nav {
    gap: 14px;
  }

  .layout-calm .site-header nav a {
    font-size: 10px;
  }

  .layout-calm .site-header .brand-copy > b {
    font-size: 18px;
  }

  .layout-calm .site-header .brand-copy > small {
    padding-left: 9px;
    font-size: 8px;
  }

  .layout-calm .header-cta {
    padding-inline: 13px;
    font-size: 10px;
  }

  .layout-calm .header-line-cta {
    padding-inline: 10px;
  }

  .layout-calm .mobile-cta {
    gap: 8px;
    padding-inline: 10px;
  }

  .layout-calm .mobile-cta .mobile-cta-info b {
    font-size: 10px;
  }

  .layout-calm .mobile-cta .mobile-cta-info small {
    font-size: 8px;
  }

  .layout-calm .mobile-cta .mobile-cta-brand,
  .layout-calm .mobile-cta .mobile-cta-brand:hover,
  .layout-calm .mobile-cta .mobile-cta-brand:focus-visible {
    gap: 6px;
    min-height: 42px;
    padding: 3px 10px 3px 4px;
  }

  .layout-calm .mobile-cta .mobile-cta-brand img {
    flex-basis: 31px;
    width: 31px;
    height: 31px;
  }

  .layout-calm .mobile-cta .mobile-cta-brand strong {
    font-size: 10px;
  }

  .layout-calm .footer-phone-cta,
  .layout-calm .mobile-cta .line-cta--mobile {
    padding-inline: 12px;
  }
}

/* 761〜980px：ナビ非表示時のPC／タブレット用追従バー */
@media (761px <= width <= 980px) {
  .layout-calm .site-header .brand-copy {
    column-gap: 9px;
  }

  .layout-calm .site-header .brand-copy > b {
    font-size: 18px;
  }

  .layout-calm .site-header .brand-copy > small {
    padding-left: 9px;
    font-size: 8px;
  }

  .layout-calm .mobile-cta {
    gap: 7px;
    padding-inline: 8px;
  }

  .layout-calm .mobile-cta .mobile-cta-info {
    gap: 5px;
  }

  .layout-calm .mobile-cta .mobile-cta-info b {
    font-size: 9px;
  }

  .layout-calm .mobile-cta .mobile-cta-info small {
    font-size: 7.5px;
  }

  .layout-calm .mobile-cta .mobile-cta-brand,
  .layout-calm .mobile-cta .mobile-cta-brand:hover,
  .layout-calm .mobile-cta .mobile-cta-brand:focus-visible {
    gap: 5px;
    min-height: 40px;
    padding: 3px 8px 3px 3px;
  }

  .layout-calm .mobile-cta .mobile-cta-brand img {
    flex-basis: 29px;
    width: 29px;
    height: 29px;
  }

  .layout-calm .mobile-cta .mobile-cta-brand strong {
    font-size: 9px;
  }

  .layout-calm .footer-phone-cta,
  .layout-calm .mobile-cta .line-cta--mobile {
    min-height: 42px;
    padding-inline: 9px;
  }

  .layout-calm .footer-phone-cta b,
  .layout-calm .mobile-cta .line-cta-copy b {
    font-size: 8px;
  }

  .layout-calm .footer-phone-cta small,
  .layout-calm .mobile-cta .line-cta-copy small {
    font-size: 7px;
  }
}

/* ==================================================
   追従バー：高さとブランド〜CTA間隔の最終調整
   ・スマホ：バーを少し高くし、上部ブランドとCTAの間に余白を確保
   ・タブレット／PC：バーを少し高くし、ブランド右側と電話CTAの間隔を拡大
   ================================================== */
@media (width <= 760px) {
  .layout-calm .mobile-cta {
    min-height: 68px !important;
    padding-top: 10px !important;
    padding-bottom: max(10px, env(safe-area-inset-bottom)) !important;
  }

  .layout-calm .mobile-cta .mobile-cta-brand,
  .layout-calm .mobile-cta .mobile-cta-brand:hover,
  .layout-calm .mobile-cta .mobile-cta-brand:focus-visible {
    top: -2px;
  }

  .layout-calm.site {
    padding-bottom: calc(112px + env(safe-area-inset-bottom)) !important;
  }

  html {
    scroll-padding-bottom: calc(112px + env(safe-area-inset-bottom));
  }
}

@media (761px <= width <= 980px) {
  .layout-calm .mobile-cta {
    min-height: 72px !important;
    gap: 4px !important;
    padding-top: 10px !important;
    padding-bottom: max(10px, env(safe-area-inset-bottom)) !important;
  }

  .layout-calm .mobile-cta .mobile-cta-brand,
  .layout-calm .mobile-cta .mobile-cta-brand:hover,
  .layout-calm .mobile-cta .mobile-cta-brand:focus-visible {
    margin-right: 8px !important;
  }

  .layout-calm.site {
    padding-bottom: calc(76px + env(safe-area-inset-bottom)) !important;
  }

  html {
    scroll-padding-bottom: calc(76px + env(safe-area-inset-bottom));
  }
}

@media (width >= 981px) {
  .layout-calm .mobile-cta {
    min-height: 76px !important;
    padding-top: 10px !important;
    padding-bottom: max(10px, env(safe-area-inset-bottom)) !important;
  }

  .layout-calm .mobile-cta .mobile-cta-brand,
  .layout-calm .mobile-cta .mobile-cta-brand:hover,
  .layout-calm .mobile-cta .mobile-cta-brand:focus-visible {
    margin-right: 8px !important;
  }

  .layout-calm.site {
    padding-bottom: calc(80px + env(safe-area-inset-bottom)) !important;
  }

  html {
    scroll-padding-bottom: calc(80px + env(safe-area-inset-bottom));
  }
}

/* ==================================================
   スマホ追従バー：ロゴ＋屋号をバー内へ収める
   ・ロゴ＋屋号をCTA上段へ通常配置し、背景外へのはみ出しを防止
   ・白いカプセル背景／枠／影を削除
   ・屋号を白文字へ変更
   ================================================== */
@media (width <= 760px) {
  .layout-calm .mobile-cta {
    box-sizing: border-box;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    grid-template-areas:
      "brand brand"
      "phone line";
    align-items: center;
    column-gap: 7px !important;
    row-gap: 6px !important;
    min-height: 96px !important;
    padding: 6px 8px max(6px, env(safe-area-inset-bottom)) !important;
    display: grid !important;
    overflow: hidden;
  }

  .layout-calm .mobile-cta .mobile-cta-info {
    display: none !important;
  }

  .layout-calm .mobile-cta .mobile-cta-brand,
  .layout-calm .mobile-cta .mobile-cta-brand:hover,
  .layout-calm .mobile-cta .mobile-cta-brand:focus-visible {
    grid-area: brand;
    position: static !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    justify-self: center;
    align-self: center;
    gap: 6px;
    width: max-content;
    min-height: 30px;
    margin: 0 !important;
    padding: 0 !important;
    color: #fff !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    transform: none !important;
    box-shadow: none !important;
    display: inline-flex !important;
  }

  .layout-calm .mobile-cta .mobile-cta-brand img {
    flex: 0 0 28px;
    width: 28px;
    height: 28px;
    margin: 0;
    box-shadow: none;
  }

  .layout-calm .mobile-cta .mobile-cta-brand strong {
    color: #fff !important;
    white-space: nowrap;
    font-size: clamp(10px, 3.05vw, 12px);
    line-height: 1;
  }

  .layout-calm .mobile-cta .footer-phone-cta {
    grid-area: phone;
  }

  .layout-calm .mobile-cta .line-cta--mobile {
    grid-area: line;
  }

  .layout-calm .mobile-cta .footer-phone-cta,
  .layout-calm .mobile-cta .line-cta--mobile {
    box-sizing: border-box;
    width: 100% !important;
    min-width: 0;
    min-height: 43px;
    margin: 0 !important;
  }

  .layout-calm.site {
    padding-bottom: calc(104px + env(safe-area-inset-bottom)) !important;
  }

  html {
    scroll-padding-bottom: calc(104px + env(safe-area-inset-bottom));
  }
}

/* ==================================================
   PC／タブレット追従バー：ロゴ＋屋号を背景になじませる
   ・白いカプセル背景／枠／影を削除
   ・「まごころ遺品サポート」を白文字へ変更
   ・スマホ版で適用済みの見た目を、761px以上にも統一
   ================================================== */
@media (width >= 761px) {
  .layout-calm .mobile-cta .mobile-cta-brand,
  .layout-calm .mobile-cta .mobile-cta-brand:hover,
  .layout-calm .mobile-cta .mobile-cta-brand:focus-visible {
    padding: 0 !important;
    color: #fff !important;
    background: transparent !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
  }

  .layout-calm .mobile-cta .mobile-cta-brand strong {
    color: #fff !important;
  }
}

/* ==================================================
   PC／タブレット版ヘッダー：サブコピーの視認性と左端を調整
   ・「大切なものを見落とさない遺品整理」を屋号と同じ濃い緑へ変更
   ・サブコピーの文字サイズを拡大
   ・英字表記の左端を屋号の見た目上の左端へ合わせる
   ・スマホ版（760px以下）は現状を維持
   ================================================== */
@media (width >= 761px) {
  .layout-calm .site-header .brand-copy > small {
    color: var(--palette-secondary-deep, #17382e) !important;
    font-size: clamp(11px, .9vw, 13px) !important;
    font-weight: 700 !important;
    line-height: 1.2;
  }

  .layout-calm .site-header .brand-kicker {
    box-sizing: border-box;
    padding-left: 3px;
  }
}

/* ==================================================
   追従バー：文字サイズの最終調整
   ・スマホ：アイコン横の「まごころ遺品サポート」を少し拡大
   ・PC：受付案内2文を読みやすく拡大
   ・タブレット（761〜980px）は現状を維持
   ================================================== */
@media (width <= 760px) {
  .layout-calm .mobile-cta .mobile-cta-brand strong {
    font-size: clamp(11px, 3.3vw, 13px) !important;
  }
}

@media (width >= 981px) {
  .layout-calm .mobile-cta .mobile-cta-info b {
    font-size: clamp(18px, 6vw, 25px) !important;
    line-height: 1.2;
  }

  .layout-calm .mobile-cta .mobile-cta-info small {
    font-size: clamp(16px, .82vw, 16px) !important;
    line-height: 1.2;
  }
}


/* ==================================================
   スマホ版：見出し横のブランド表示
   「資格と一貫対応」「明朗会計」用
================================================== */
.mobile-brand-heading{
  display: none;
}

@media (max-width: 520px){
  .mobile-brand-heading{
    display: flex;
    align-items: center;
    gap: 6px;
    margin: -2px 0 10px auto;
    width: fit-content;
    color: #17352d;
  }

  .mobile-brand-heading img{
    width: 22px;
    height: 22px;
    object-fit: contain;
  }

  .mobile-brand-heading strong{
    font-size: 11px;
    letter-spacing: .04em;
    white-space: nowrap;
    font-weight: 700;
  }

  .mobile-brand-heading--price{
    margin: -2px 0 8px auto;
  }
}


/* 資格と一貫対応・明朗会計のブランド表示を見出し高さに合わせる */
.layout-calm .mobile-brand-heading{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:6px;
  height:24px;
  margin:0 0 14px auto;
  color:#17352d;
}

.layout-calm .mobile-brand-heading img{
  width:22px;
  height:22px;
  object-fit:contain;
}

.layout-calm .mobile-brand-heading strong{
  font-size:14px;
  line-height:1;
  letter-spacing:.06em;
  font-weight:700;
  white-space:nowrap;
}

/* 左側の「資格と一貫対応」「明朗会計」と上下位置を統一 */
.layout-calm .section-kicker--underline{
  height:24px;
  display:inline-flex;
  align-items:center;
  margin-bottom:14px;
}


/* 資格と一貫対応・明朗会計：見出しとブランド表示の高さを完全統一 */
.layout-calm .aftercare-copy,
.layout-calm .price-copy{
  position: relative;
}

.layout-calm .section-kicker--underline + .mobile-brand-heading{
  position: absolute;
  top: 30px;
  right: 0;
  height: 24px;
  margin: 0;
}

.layout-calm .section-kicker--underline{
  margin-bottom: 40px;
}

@media (max-width: 520px){
  .layout-calm .section-kicker--underline + .mobile-brand-heading{
    position: absolute;
    top: 7px;
    right: 0;
  }
}


/* ==================================================
   2026-08-19 ブランド見出し位置最終調整
   「資格と一貫対応」「明朗会計」と
   アイコン＋屋号の縦位置を完全に統一
================================================== */

@media (max-width:520px){
  .layout-calm .aftercare-copy,
  .layout-calm .price-copy{
    position:relative;
  }

  .layout-calm .section-kicker--underline{
    display:inline-flex !important;
    align-items:center !important;
    height:24px !important;
    line-height:1 !important;
    margin-bottom: 25px !important;
    vertical-align:middle;
  }

  .layout-calm .mobile-brand-heading{
    position:absolute;
    top:0;
    right:0;
    height:24px !important;
    margin:0 !important;
    display:flex !important;
    align-items:center !important;
    gap:6px;
  }

  .layout-calm .mobile-brand-heading img{
    width:22px !important;
    height:22px !important;
  }

  .layout-calm .mobile-brand-heading strong{
    font-size:14px !important;
    line-height:24px !important;
  }

  /* 明朗会計側の見出し位置基準 */
  .layout-calm .price-copy .mobile-brand-heading{
    top:24px;
  }
}


/* ==================================================
   ブランド見出し位置統一
   資格と一貫対応 / 明朗会計
   スマホ表示のみ
================================================== */
@media (width <= 760px) {
  .layout-calm .mobile-brand-heading {
    display: flex;
    align-items: center;
    gap: 8px;
    height: 32px;
    margin: 14px 0 18px;
  }

  .layout-calm .mobile-brand-heading img {
    width: 32px;
    height: 32px;
    object-fit: contain;
    flex: none;
  }

  .layout-calm .mobile-brand-heading strong {
    display: flex;
    align-items: center;
    height: 32px;
    font-size: 18px;
    line-height: 1;
    letter-spacing: .06em;
  }

  .layout-calm .aftercare-copy .section-kicker + .mobile-brand-heading,
  .layout-calm .price-copy .section-kicker + .mobile-brand-heading {
    margin-top: 14px;
    margin-bottom: 18px;
  }
}

/* 2026-08-19 資格・明朗会計用ブランドアイコン透過調整 */
@media (max-width: 520px){
  .mobile-brand-heading img{
    width:22px;
    height:22px;
    object-fit:contain;
    background:transparent !important;
  }
}

@media (width <= 760px){

  .layout-calm .hero-manga-first .eyebrow{
    font-size: 14px !important;
    letter-spacing: .12em;
  }

}

/* 2026-08-19 スマホ版：古物商許可・許可番号の文字サイズ調整 */
@media (width <= 640px) {
  .hero-credentials span:nth-child(2) {
    font-size: 9px;
  }

  .hero-credentials span:nth-child(2) b {
    font-size: 10px;
  }
}


/* 2026-08-19 追加調整：スマホ版 認定遺品整理士・古物商許可の文字サイズ統一 */
@media (width <= 640px) {
  .hero-credentials span:nth-child(1),
  .hero-credentials span:nth-child(2) {
    font-size: 9px;
  }

  .hero-credentials span:nth-child(1) b,
  .hero-credentials span:nth-child(2) b {
    font-size: 10px;
  }
}

@media (width <= 520px) {

  .lp-manga-composition .manga-balloon--caption .manga-balloon-text{
    white-space: pre-line;
  }

  .lp-manga-composition .manga-page--intro 
  .manga-balloon[data-manga-text="page-1-dialogue-4"]{
    --balloon-width: 42% !important;
    --balloon-height: 5.5% !important;
  }

}

/* ==================================================
   第1ページ：「写真も服も、どれも思い出がある。」
   PC版をスマホ版位置へ合わせる調整
================================================== */

@media (width >= 521px) {

  .lp-manga-composition
  .manga-page--intro
  .manga-balloon[data-manga-text="page-1-dialogue-4"]{

    --balloon-x: 59.7% !important;
    --balloon-y: 46% !important;
    --balloon-width: 37% !important;
    --balloon-height: 4% !important;

    padding: .8cqw 1.1cqw !important;
    transform: scale(.72) !important;
    transform-origin: 100% 0 !important;
  }

}


/* 2026-08-19 文字サイズ統一依頼 引き継ぎ修正
   「写真も服も、どれも思い出がある。」PC版をスマホ位置へ合わせる */
@media (width >= 521px) {
  .lp-manga-composition .manga-balloon[data-manga-text="page-1-dialogue-4"],
  .lp-manga-composition .manga-balloon--self-check-thought {
    /* 既存指定を維持 */
  }

  .lp-manga-composition .manga-balloon--caption[data-balloon-max-characters="10"] {
    /* 既存キャプション枠へ影響しないため空 */
  }
}

/* 対象セリフ専用 */
.lp-manga-composition .manga-balloon-text[data-manga-text="page-1-dialogue-4"] {
  line-height: 1.45;
}


/* ==================================================
   大切なものや、価値のあるものも〜
   PC版：既存位置を維持
   SP版：専用クラスのみ見た目移動
   ================================================== */
@media (width <= 520px) {
  .lp-manga-composition .mobile-move-right-sp {
    transform: translateX(5vw) scale(var(--balloon-scale, 1)) !important;
  }
}


/* ==================================================
   大切なものや、価値のあるものも〜
   HTML inline style削除後のPC/SP別管理
   ================================================== */
.lp-manga-composition .manga-balloon--memory-value-caption {
  --balloon-x: 3%;
  --balloon-y: 44.4%;
  --balloon-width: 40%;
  --balloon-height: 3.83822%;
  --balloon-scale: .72;
  --balloon-transform-origin: 0 0;
  margin-top: 7.972cqw;
  margin-right: .839cqw;
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--memory-value-caption {
    --balloon-x: -2%;
    --balloon-y: 44.6%;
    --balloon-width: 45%;
    --balloon-height: 3.83822%;
    --balloon-scale: .72;
    --balloon-transform-origin: 0 0;
    margin-top: 7.972cqw;
    margin-right: 0;
    transform: translateX(5vw) scale(.72);
  }
}


/* ==================================================
   「写真も服も、どれも思い出がある」
   HTML inline style → CSSへ移動
   ================================================== */
.lp-manga-composition .manga-balloon--memory-photo-caption {
  --balloon-x:62.7%;
  --balloon-y:46%;
  --balloon-width:33%;
  --balloon-height:2.2%;
  --balloon-scale:0.72;
  --balloon-transform-origin:100% 0%;
  margin-top:7.273cqw;
  margin-bottom:1.119cqw;
  padding-block:calc(0.8cqw + 1px);
}


@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--memory-photo-caption {
  --balloon-x:59.7%;
  --balloon-y:45.7%;
  --balloon-width:36%;
  --balloon-height:3%;
  --balloon-scale:0.72;
  --balloon-transform-origin:100% 0%;
  margin-top:7.273cqw;
  margin-bottom:1.119cqw;
  padding-block:calc(0.8cqw + 1px);
  }
}

/* ==================================================
   料金セクション：ブランドアイコンをコンパクト表示
   「資格と一貫対応」側と同等の見え方へ統一
================================================== */
.layout-calm .price-copy .mobile-brand-heading--price{
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px;
  height: 28px;
  margin: 0 0 18px;
  position: static;
}

.layout-calm .price-copy .mobile-brand-heading--price img{
  width: 26px !important;
  height: 26px !important;
  object-fit: contain;
  flex: 0 0 26px;
  background: transparent !important;
}

.layout-calm .price-copy .mobile-brand-heading--price strong{
  height: auto;
  font-size: 16px !important;
  line-height: 1.2 !important;
  letter-spacing: .05em;
}

@media (width <= 520px){
  .layout-calm .price-copy .mobile-brand-heading--price{
    height: 24px;
    gap: 6px;
    margin-bottom: 14px;
  }

  .layout-calm .price-copy .mobile-brand-heading--price img{
    width: 22px !important;
    height: 22px !important;
    flex-basis: 22px;
  }

  .layout-calm .price-copy .mobile-brand-heading--price strong{
    font-size: 14px !important;
  }
}


/* ==================================================
   料金セクション：
   屋号 → 見出し と 見出し → 本文 の間隔を近い見え方に統一
================================================== */
.layout-calm .price-copy .mobile-brand-heading--price{
  margin-bottom: 24px !important;
}

.layout-calm .price-copy h2{
  margin-top: 0 !important;
  margin-bottom: 24px !important;
}

@media (width <= 520px){
  .layout-calm .price-copy .mobile-brand-heading--price{
    margin-bottom: 18px !important;
  }

  .layout-calm .price-copy h2{
    margin-bottom: 18px !important;
  }
}


/* ==================================================
   iPhone / narrow viewport:
   お問い合わせセクションの横ズレ防止・中央配置固定
================================================== */
@media (max-width: 599px) {
  html,
  body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
  }

  .layout-calm .contact-section {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    margin-inline: auto;
    padding-left: max(22px, env(safe-area-inset-left));
    padding-right: max(22px, env(safe-area-inset-right));
    grid-template-columns: minmax(0, 1fr);
    justify-items: stretch;
    overflow-x: clip;
  }

  .layout-calm .contact-copy {
    box-sizing: border-box;
    width: 100%;
    max-width: none;
    min-width: 0;
    margin-inline: auto;
  }

  .layout-calm .contact-copy h2,
  .layout-calm .contact-copy > p,
  .layout-calm .contact-facts,
  .layout-calm .line-cta--contact {
    box-sizing: border-box;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-left: 0;
    margin-right: 0;
  }

  .layout-calm .contact-facts {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .layout-calm .contact-facts span {
    box-sizing: border-box;
    width: 100%;
    min-width: 0;
  }
}

/* さらに狭いiPhoneでも左右余白を均等化 */
@media (max-width: 380px) {
  .layout-calm .contact-section {
    padding-left: max(18px, env(safe-area-inset-left));
    padding-right: max(18px, env(safe-area-inset-right));
  }
}


/* ==================================================
   第6ページ「片づいたのは、部屋だけではありませんでした。」
   PC版のみ文字サイズを拡大
   スマホ版は現状維持
================================================== */
@media (width >= 521px) {
  .lp-manga-composition
    .manga-page--closing
    .manga-balloon--resolution-caption {
    font-size: 2.35cqw !important;
  }

  .lp-manga-composition
    .manga-page--closing
    .manga-balloon--resolution-caption
    .manga-balloon-text {
    font-size: inherit !important;
    line-height: 1.4 !important;
  }
}


/* ==================================================
   2026-08-20 スマホ版：認定・許可情報の高さ調整
   古物商許可とブランド表示の段差解消
================================================== */
@media (width <= 640px) {
  .hero-credentials {
    align-items: center;
  }

  .hero-credentials-brand {
    align-self: center;
    transform: translateY(0);
  }

  .hero-credentials span {
    align-items: center;
  }
}


/* ==================================================
   2026-08-20 スマホ版
   冒頭漫画「片づいたのは、部屋だけではありませんでした。」
   セリフ文字サイズ調整
================================================== */
@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--intro-home-caption .manga-balloon-text {
    font-size: clamp(10px, 4.2cqw, 18px) !important;
    line-height: 1.45;
  }
}


/* ==================================================
   スマホ版のみ
   「片づいたのは、部屋だけではありませんでした。」
   のセリフだけ文字サイズ変更
   ※manga-balloon--small共通指定には影響させない
================================================== */
@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--resolution-caption {
    font-size: clamp(10px, 3.4cqw, 16px) !important;
  }

  .lp-manga-composition .manga-balloon--resolution-caption .manga-balloon-text {
    font-size: clamp(7px,3.05cqw,20px);
  }
}

@media (width <= 520px) {
  .lp-manga-composition .manga-balloon--memory-value-caption {
    --balloon-x: -3% !important;
    --balloon-y: 44.5% !important;
  }
}


/* ==================================================
   2026-08-20
   「大切な品を混ぜないように〜」
   HTML直書きstyleをCSSへ移動
================================================== */
.lp-manga-composition .manga-balloon--memory-value-caption {
  --balloon-x: 1%;
  --balloon-y: 45%;
  --balloon-width: 42%;
  --balloon-height: 3%;
  --balloon-scale: 0.72;
  --balloon-transform-origin: 0 0;
}


/* ==================================================
   「写真も服も、どれも思い出がある」
   吹き出し内の上下左右中央揃え
   ※対象吹き出しのみ変更
================================================== */
.lp-manga-composition .manga-balloon--memory-photo-caption .manga-balloon-text {
  text-align: center !important;
  place-self: center !important;
}


/* ==================================================
   iPhoneなど幅520px以下：
   お問い合わせ導入文の折り返し改善
   ※先ほど案内した修正内容のみ反映
================================================== */
@media (width <= 520px) {
  .layout-calm .contact-section {
    padding-left: 18px;
    padding-right: 18px;
  }

  .layout-calm .contact-copy > p {
    font-size: 12px;
    line-height: 1.9;
  }
}


/* ==================================================
   2026-08-27 スマホ版会社概要
   左側の項目名を全行共通幅にして、右側の開始位置を統一
   「産業廃棄物収集運搬業許可」は他項目と同じ文字サイズで1行表示
================================================== */
@media (width <= 760px) {
  .footer-company-info p {
    grid-template-columns: 12em minmax(0, 1fr);
  }

  .footer-company-info p:last-child > b {
    white-space: nowrap;
    font-size: inherit;
    line-height: inherit;
    letter-spacing: inherit;
  }
}
