/* Kaeru Visual Design Studio: frontend + TinyMCE preview */
.kvds-heading,
.kvds-columns {
  box-sizing: border-box;
  position: relative;
  isolation: isolate;
}
.kvds-heading *,
.kvds-columns * { box-sizing: border-box; }

.kvds-heading {
  margin: var(--kvds-margin-top,38px) 0 var(--kvds-margin-bottom,24px);
  padding: var(--kvds-padding-v,12px) var(--kvds-padding-h,0);
  border-radius: var(--kvds-radius,0);
  background-color: var(--kvds-bg,#fff);
  background-image: var(--kvds-bg-image,none);
  background-position: var(--kvds-bg-position,center center);
  background-size: cover;
  overflow: hidden;
}
.kvds-heading__overlay,
.kvds-columns__overlay {
  position: absolute;
  z-index: -1;
  inset: 0;
  pointer-events: none;
}
.kvds-heading__overlay { background: var(--kvds-overlay,transparent); }
.kvds-heading__panel {
  position: relative;
  z-index: 1;
  width: 100%;
  padding: 0;
  border-radius: var(--kvds-panel-radius,10px);
}
.kvds-heading.kvds-has-panel .kvds-heading__panel {
  padding: 18px 22px;
  background: var(--kvds-panel,rgba(255,255,255,.88));
}
.kvds-heading__main {
  display: flex;
  align-items: baseline;
  justify-content: flex-start;
  gap: .65em;
  min-width: 0;
}
.kvds-align-center .kvds-heading__main { justify-content: center; }
.kvds-align-right .kvds-heading__main { justify-content: flex-end; }
.kvds-heading__prefix {
  flex: 0 0 auto;
  color: var(--kvds-line-accent,#347A58);
  font: 700 .72em/1 system-ui,sans-serif;
  letter-spacing: .08em;
}
.kvds-heading__title,
.entry-content .kvds-heading__title,
.article .entry-content .kvds-heading__title,
body .entry-content .kvds-heading__title {
  display: block !important;
  flex: 0 1 auto;
  width: auto !important;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--kvds-color,#20352b) !important;
  background: transparent !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  font-size: var(--kvds-font-size,34px) !important;
  font-weight: var(--kvds-font-weight,600) !important;
  line-height: var(--kvds-line-height,1.55) !important;
  letter-spacing: var(--kvds-letter-spacing,.04em) !important;
  text-align: inherit !important;
  text-transform: none !important;
}
.kvds-font-serif .kvds-heading__title { font-family: "Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif !important; }
.kvds-font-sans .kvds-heading__title { font-family: "Noto Sans JP","Yu Gothic","Hiragino Kaku Gothic ProN",sans-serif !important; }
.kvds-font-inherit .kvds-heading__title { font-family: inherit !important; }
.entry-content .kvds-heading__title::before,
.entry-content .kvds-heading__title::after,
.article .entry-content .kvds-heading__title::before,
.article .entry-content .kvds-heading__title::after,
body .entry-content .kvds-heading__title::before,
body .entry-content .kvds-heading__title::after,
.kvds-heading__title::before,
.kvds-heading__title::after {
  content: none !important;
  display: none !important;
  position: static !important;
  width: 0 !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  background: none !important;
  box-shadow: none !important;
  transform: none !important;
}
.kvds-heading__label {
  display: inline-flex;
  align-items: center;
  min-height: 25px;
  margin: 0 0 9px;
  padding: 4px 10px;
  border-radius: 4px;
  color: var(--kvds-label-color,#fff);
  background: var(--kvds-label-bg,#347A58);
  font: 700 11px/1.2 "Noto Sans JP",sans-serif;
  letter-spacing: .08em;
}
.kvds-label-left .kvds-heading__label { margin-left: 0; }
.kvds-align-center { text-align: center; }
.kvds-align-right { text-align: right; }
.kvds-heading__subtitle {
  margin: 9px 0 0 !important;
  color: #52675e;
  color: color-mix(in srgb,var(--kvds-color,#20352b) 72%,transparent);
  font-size: 13px;
  line-height: 1.75;
}
.kvds-heading__line {
  position: absolute;
  display: none;
  pointer-events: none;
}
.kvds-heading__line--top,
.kvds-heading__line--bottom {
  left: 0;
  width: var(--kvds-line-width,100%);
  height: var(--kvds-line-thickness,2px);
  background: linear-gradient(90deg,var(--kvds-line-accent,#347A58) 0 var(--kvds-line-accent-width,28%),var(--kvds-line-color,#347A58) var(--kvds-line-accent-width,28%) 100%);
}
.kvds-heading__line--top { top: 0; }
.kvds-heading__line--bottom { bottom: 0; }
.kvds-heading__line--left,
.kvds-heading__line--right {
  top: 0;
  width: var(--kvds-line-thickness,2px);
  height: 100%;
  background: var(--kvds-line-accent,#347A58);
}
.kvds-heading__line--left { left: 0; }
.kvds-heading__line--right { right: 0; }
.kvds-has-line-top .kvds-heading__line--top,
.kvds-has-line-right .kvds-heading__line--right,
.kvds-has-line-bottom .kvds-heading__line--bottom,
.kvds-has-line-left .kvds-heading__line--left { display:block; }
.kvds-heading__shape { position:absolute; z-index:2; left:50%; bottom:calc(var(--kvds-line-thickness,2px) * -1); transform:translate(-50%,100%); }
.kvds-shape-triangle .kvds-heading__shape { width:0;height:0;border-left:18px solid transparent;border-right:18px solid transparent;border-top:16px solid var(--kvds-line-accent,#347A58); }
.kvds-shape-diamond .kvds-heading__shape { width:16px;height:16px;background:var(--kvds-line-accent,#347A58);transform:translate(-50%,50%) rotate(45deg); }
.kvds-shape-none .kvds-heading__shape { display:none !important; }

.kvds-columns {
  margin: 28px 0;
  padding: var(--kvds-cols-padding,0);
  border-radius: var(--kvds-cols-radius,0);
  background-color: var(--kvds-cols-bg,#fff);
  background-image: var(--kvds-cols-bg-image,none);
  background-position: var(--kvds-cols-bg-position,center center);
  background-size: cover;
  overflow: hidden;
}
.kvds-columns__overlay { background: var(--kvds-cols-overlay,transparent); }
.kvds-columns__grid {
  position: relative;
  z-index: 1;
  display: grid;
  gap: var(--kvds-cols-gap,24px);
  align-items: stretch;
}
.kvds-columns-2.kvds-ratio-1-1 .kvds-columns__grid { grid-template-columns:minmax(0,1fr) minmax(0,1fr); }
.kvds-columns-2.kvds-ratio-1-2 .kvds-columns__grid { grid-template-columns:minmax(0,1fr) minmax(0,2fr); }
.kvds-columns-2.kvds-ratio-2-1 .kvds-columns__grid { grid-template-columns:minmax(0,2fr) minmax(0,1fr); }
.kvds-columns-3 .kvds-columns__grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
.kvds-columns.kvds-align-start .kvds-columns__grid { align-items:start; }
.kvds-columns.kvds-align-center .kvds-columns__grid { align-items:center; }
.kvds-columns.kvds-align-end .kvds-columns__grid { align-items:end; }
.kvds-column { min-width:0; }
.kvds-column__inner { height:100%; }
.kvds-columns-has-panel .kvds-column__inner {
  padding: var(--kvds-col-padding,20px);
  border-radius: var(--kvds-col-radius,12px);
  background: var(--kvds-col-panel,rgba(255,255,255,.88));
}
.kvds-column__inner > :first-child { margin-top:0; }
.kvds-column__inner > :last-child { margin-bottom:0; }

@media (max-width:720px) {
  .kvds-heading__title { font-size: clamp(22px,7vw,var(--kvds-font-size,34px)) !important; }
  .kvds-mobile-stack .kvds-columns__grid { grid-template-columns:1fr !important; }
  .kvds-mobile-scroll { overflow-x:auto; }
  .kvds-mobile-scroll .kvds-columns__grid { grid-template-columns:repeat(var(--kvds-mobile-count,2),minmax(78vw,1fr)) !important; min-width:max-content; }
  .kvds-mobile-scroll .kvds-column { width:78vw; }
}

/* v0.3.0: 見出し拡張・ボックス復活 */
.kvds-box,
.kvds-box * { box-sizing:border-box; }

/* 見出し線と本文の距離 */
.kvds-heading__panel {
  --kvds-panel-base-v:0px;
  --kvds-panel-base-h:0px;
  --kvds-line-extra-top:0px;
  --kvds-line-extra-right:0px;
  --kvds-line-extra-bottom:0px;
  --kvds-line-extra-left:0px;
  padding:
    calc(var(--kvds-panel-base-v) + var(--kvds-line-extra-top))
    calc(var(--kvds-panel-base-h) + var(--kvds-line-extra-right))
    calc(var(--kvds-panel-base-v) + var(--kvds-line-extra-bottom))
    calc(var(--kvds-panel-base-h) + var(--kvds-line-extra-left));
}
.kvds-heading.kvds-has-panel .kvds-heading__panel {
  --kvds-panel-base-v:18px;
  --kvds-panel-base-h:22px;
  padding:
    calc(var(--kvds-panel-base-v) + var(--kvds-line-extra-top))
    calc(var(--kvds-panel-base-h) + var(--kvds-line-extra-right))
    calc(var(--kvds-panel-base-v) + var(--kvds-line-extra-bottom))
    calc(var(--kvds-panel-base-h) + var(--kvds-line-extra-left));
}
.kvds-has-line-top { --kvds-line-extra-top:calc(var(--kvds-line-gap-top,10px) + var(--kvds-line-thickness,2px)); }
.kvds-has-line-right { --kvds-line-extra-right:calc(var(--kvds-line-gap-right,12px) + var(--kvds-line-thickness,2px)); }
.kvds-has-line-bottom { --kvds-line-extra-bottom:calc(var(--kvds-line-gap-bottom,10px) + var(--kvds-line-thickness,2px)); }
.kvds-has-line-left { --kvds-line-extra-left:calc(var(--kvds-line-gap-left,12px) + var(--kvds-line-thickness,2px)); }

.kvds-heading__line--top,
.kvds-heading__line--bottom { background:var(--kvds-line-color,#347A58); }
.kvds-line-mode-accent .kvds-heading__line--top,
.kvds-line-mode-accent .kvds-heading__line--bottom {
  background:linear-gradient(90deg,var(--kvds-line-accent,#347A58) 0 var(--kvds-line-accent-width,28%),var(--kvds-line-color,#347A58) var(--kvds-line-accent-width,28%) 100%);
}
.kvds-line-mode-solid .kvds-heading__line--left,
.kvds-line-mode-solid .kvds-heading__line--right { background:var(--kvds-line-color,#347A58); }
.kvds-line-align-center .kvds-heading__line--top,
.kvds-line-align-center .kvds-heading__line--bottom { left:50%; transform:translateX(-50%); }
.kvds-line-align-right .kvds-heading__line--top,
.kvds-line-align-right .kvds-heading__line--bottom { right:0; left:auto; }
.kvds-heading__line--left,
.kvds-heading__line--right { height:var(--kvds-line-width,100%); }
.kvds-line-align-center .kvds-heading__line--left,
.kvds-line-align-center .kvds-heading__line--right { top:50%; transform:translateY(-50%); }
.kvds-line-align-right .kvds-heading__line--left,
.kvds-line-align-right .kvds-heading__line--right { top:auto; bottom:0; }

/* 見出し文字の装飾 */
.kvds-heading__title > span { position:relative; display:inline-block; z-index:1; }
.kvds-text-decor-highlight .kvds-heading__title > span {
  background:linear-gradient(transparent 58%,var(--kvds-text-decor,rgba(183,208,194,.45)) 58%,var(--kvds-text-decor,rgba(183,208,194,.45)) 88%,transparent 88%);
  padding:0 .08em;
}
.kvds-text-decor-soft-shadow .kvds-heading__title > span {
  text-shadow:calc(var(--kvds-text-decor-size,8px) * .35) calc(var(--kvds-text-decor-size,8px) * .35) 0 var(--kvds-text-decor,rgba(183,208,194,.45));
}
.kvds-text-decor-outline .kvds-heading__title > span {
  -webkit-text-stroke:calc(var(--kvds-text-decor-size,8px) / 8) var(--kvds-text-decor,rgba(183,208,194,.45));
  paint-order:stroke fill;
}
.kvds-heading__prefix {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:1em;
  padding:.18em .35em;
  border-radius:var(--kvds-prefix-radius,6px);
  color:var(--kvds-prefix-color,var(--kvds-line-accent,#347A58));
  background:var(--kvds-prefix-bg,transparent);
  font-size:var(--kvds-prefix-size,25px);
  font-weight:var(--kvds-prefix-weight,700);
  line-height:1;
}

/* 単色の中央装飾など */
.kvds-heading__shape { background:var(--kvds-shape-color,var(--kvds-line-accent,#347A58)); }
.kvds-shape-align-left .kvds-heading__shape { left:0; transform:translate(0,100%); }
.kvds-shape-align-right .kvds-heading__shape { right:0; left:auto; transform:translate(0,100%); }
.kvds-shape-short-line .kvds-heading__shape {
  width:var(--kvds-shape-size,18px);
  height:3px;
  border:0;
  border-radius:999px;
}
.kvds-shape-circle .kvds-heading__shape {
  width:var(--kvds-shape-size,18px);
  height:var(--kvds-shape-size,18px);
  border:0;
  border-radius:50%;
}
.kvds-shape-triangle .kvds-heading__shape {
  width:0;height:0;background:transparent;
  border-left:calc(var(--kvds-shape-size,18px) * .7) solid transparent;
  border-right:calc(var(--kvds-shape-size,18px) * .7) solid transparent;
  border-top:var(--kvds-shape-size,18px) solid var(--kvds-shape-color,var(--kvds-line-accent,#347A58));
}
.kvds-shape-diamond .kvds-heading__shape {
  width:var(--kvds-shape-size,18px);
  height:var(--kvds-shape-size,18px);
  background:var(--kvds-shape-color,var(--kvds-line-accent,#347A58));
}

/* ボックス */
.kvds-box {
  position:relative;
  isolation:isolate;
  margin:var(--kvds-box-margin-top,26px) 0 var(--kvds-box-margin-bottom,26px);
  padding:var(--kvds-box-padding-v,24px) var(--kvds-box-padding-h,26px);
  border-radius:var(--kvds-box-radius,12px);
  background-color:var(--kvds-box-bg,#EEF5F0);
  background-image:var(--kvds-box-bg-image,none);
  background-position:var(--kvds-box-bg-position,center center);
  background-size:cover;
  color:var(--kvds-box-body-color,#34453e);
  overflow:visible;
}
.kvds-box__overlay { position:absolute; z-index:-1; inset:0; border-radius:inherit; background:var(--kvds-box-overlay,transparent); pointer-events:none; }
.kvds-box__panel { position:relative; z-index:1; }
.kvds-box-has-panel .kvds-box__panel { padding:var(--kvds-box-panel-padding,20px); border-radius:var(--kvds-box-panel-radius,10px); background:var(--kvds-box-panel,rgba(255,255,255,.88)); }
.kvds-box-has-border-top { border-top:var(--kvds-box-border-width,1px) var(--kvds-box-border-style,solid) var(--kvds-box-border-color,#347A58); }
.kvds-box-has-border-right { border-right:var(--kvds-box-border-width,1px) var(--kvds-box-border-style,solid) var(--kvds-box-border-color,#347A58); }
.kvds-box-has-border-bottom { border-bottom:var(--kvds-box-border-width,1px) var(--kvds-box-border-style,solid) var(--kvds-box-border-color,#347A58); }
.kvds-box-has-border-left { border-left:var(--kvds-box-border-width,1px) var(--kvds-box-border-style,solid) var(--kvds-box-border-color,#347A58); }
.kvds-box-border-style-dashed { --kvds-box-border-style:dashed; }
.kvds-box-border-style-dotted { --kvds-box-border-style:dotted; }
.kvds-box-border-style-double { --kvds-box-border-style:double; }
.kvds-box-border-style-solid { --kvds-box-border-style:solid; }
.kvds-box-has-accent.kvds-box-accent-left { box-shadow:inset var(--kvds-box-accent-width,6px) 0 0 var(--kvds-box-accent-color,#347A58); }
.kvds-box-has-accent.kvds-box-accent-right { box-shadow:inset calc(var(--kvds-box-accent-width,6px) * -1) 0 0 var(--kvds-box-accent-color,#347A58); }
.kvds-box-has-accent.kvds-box-accent-top { box-shadow:inset 0 var(--kvds-box-accent-width,6px) 0 var(--kvds-box-accent-color,#347A58); }
.kvds-box-has-accent.kvds-box-accent-bottom { box-shadow:inset 0 calc(var(--kvds-box-accent-width,6px) * -1) 0 var(--kvds-box-accent-color,#347A58); }
.kvds-box__head { display:flex; align-items:center; gap:.65em; margin:0 0 13px; min-width:0; }
.kvds-box-align-center .kvds-box__head { justify-content:center; text-align:center; }
.kvds-box-align-right .kvds-box__head { justify-content:flex-end; text-align:right; }
.kvds-box__title { min-width:0; color:var(--kvds-box-title-color,#244b3b); font-size:var(--kvds-box-title-size,22px); font-weight:var(--kvds-box-title-weight,700); line-height:1.45; }
.kvds-box-title-font-serif .kvds-box__title { font-family:"Noto Serif JP","Yu Mincho",serif; }
.kvds-box-title-font-sans .kvds-box__title { font-family:"Noto Sans JP","Yu Gothic",sans-serif; }
.kvds-box-title-font-inherit .kvds-box__title { font-family:inherit; }
.kvds-box__title > span { position:relative; display:inline-block; }
.kvds-box-title-decor-highlight .kvds-box__title > span { background:linear-gradient(transparent 58%,var(--kvds-box-title-decor,rgba(183,208,194,.45)) 58%,var(--kvds-box-title-decor,rgba(183,208,194,.45)) 88%,transparent 88%); padding:0 .08em; }
.kvds-box-title-decor-soft-shadow .kvds-box__title > span { text-shadow:calc(var(--kvds-box-title-decor-size,8px) * .35) calc(var(--kvds-box-title-decor-size,8px) * .35) 0 var(--kvds-box-title-decor,rgba(183,208,194,.45)); }
.kvds-box-title-decor-outline .kvds-box__title > span { -webkit-text-stroke:calc(var(--kvds-box-title-decor-size,8px) / 8) var(--kvds-box-title-decor,rgba(183,208,194,.45)); paint-order:stroke fill; }
.kvds-box__icon { display:inline-flex; flex:0 0 auto; align-items:center; justify-content:center; width:1.8em; height:1.8em; color:var(--kvds-box-icon-color,#fff); background:var(--kvds-box-icon-bg,#078C00); font-size:var(--kvds-box-icon-size,20px); font-weight:800; line-height:1; }
.kvds-box-icon-none .kvds-box__icon { width:auto; height:auto; background:transparent; }
.kvds-box-icon-circle .kvds-box__icon { border-radius:50%; }
.kvds-box-icon-round .kvds-box__icon { border-radius:.45em; }
.kvds-box-icon-square .kvds-box__icon { border-radius:0; }
.kvds-box__prefix { flex:0 0 auto; color:var(--kvds-box-prefix-color,#078C00); font-size:var(--kvds-box-prefix-size,34px); font-weight:var(--kvds-box-prefix-weight,800); line-height:1; }
.kvds-box__label { position:relative; z-index:2; display:inline-flex; align-items:center; margin:0 0 10px; padding:4px 10px; border-radius:999px; color:var(--kvds-box-label-color,#fff); background:var(--kvds-box-label-bg,#078C00); font:700 11px/1.3 "Noto Sans JP",sans-serif; letter-spacing:.08em; }
.kvds-box-label-edge .kvds-box__label { position:absolute; top:0; left:var(--kvds-box-padding-h,26px); transform:translateY(-50%); }
.kvds-box-label-floating .kvds-box__label { position:absolute; top:-8px; left:12px; transform:translateY(-100%); }
.kvds-box__body { color:var(--kvds-box-body-color,#34453e); font-size:var(--kvds-box-body-size,16px); line-height:var(--kvds-box-body-line,1.85); }
.kvds-box__body > :first-child { margin-top:0; }
.kvds-box__body > :last-child { margin-bottom:0; }

@media (max-width:720px) {
  .kvds-box { padding:calc(var(--kvds-box-padding-v,24px) * .8) calc(var(--kvds-box-padding-h,26px) * .7); }
  .kvds-box__head { align-items:flex-start; }
  .kvds-box__title { font-size:clamp(17px,5vw,var(--kvds-box-title-size,22px)); }
}


/* v0.4.0: 見出しの余白構造・端末別設定・文字背景 */
.kvds-heading {
  --kvds-active-font-size:var(--kvds-font-size,34px);
  --kvds-active-line-height:var(--kvds-line-height,1.55);
  --kvds-active-prefix-size:var(--kvds-prefix-size,25px);
  --kvds-active-subtitle-size:var(--kvds-subtitle-size,13px);
  --kvds-active-label-size:var(--kvds-label-size,11px);
  --kvds-active-padding-v:var(--kvds-padding-v,12px);
  --kvds-active-padding-h:var(--kvds-padding-h,0px);
  --kvds-active-line-gap-top:var(--kvds-line-gap-top,10px);
  --kvds-active-line-gap-right:var(--kvds-line-gap-right,12px);
  --kvds-active-line-gap-bottom:var(--kvds-line-gap-bottom,10px);
  --kvds-active-line-gap-left:var(--kvds-line-gap-left,12px);
  padding:var(--kvds-active-padding-v) var(--kvds-active-padding-h);
}
.kvds-heading__panel,
.kvds-heading.kvds-has-panel .kvds-heading__panel {
  padding:0 !important;
}
.kvds-heading.kvds-has-panel .kvds-heading__panel {
  background:var(--kvds-panel,rgba(255,255,255,.88));
}
.kvds-heading__content {
  --kvds-content-base-v:0px;
  --kvds-content-base-h:0px;
  --kvds-content-line-top:0px;
  --kvds-content-line-right:0px;
  --kvds-content-line-bottom:0px;
  --kvds-content-line-left:0px;
  position:relative;
  z-index:2;
  width:100%;
  min-width:0;
  padding:
    calc(var(--kvds-content-base-v) + var(--kvds-content-line-top))
    calc(var(--kvds-content-base-h) + var(--kvds-content-line-right))
    calc(var(--kvds-content-base-v) + var(--kvds-content-line-bottom))
    calc(var(--kvds-content-base-h) + var(--kvds-content-line-left));
}
.kvds-heading.kvds-has-panel .kvds-heading__content {
  --kvds-content-base-v:18px;
  --kvds-content-base-h:22px;
}
.kvds-heading.kvds-has-line-top .kvds-heading__content { --kvds-content-line-top:calc(var(--kvds-active-line-gap-top) + var(--kvds-line-thickness,2px)); }
.kvds-heading.kvds-has-line-right .kvds-heading__content { --kvds-content-line-right:calc(var(--kvds-active-line-gap-right) + var(--kvds-line-thickness,2px)); }
.kvds-heading.kvds-has-line-bottom .kvds-heading__content { --kvds-content-line-bottom:calc(var(--kvds-active-line-gap-bottom) + var(--kvds-line-thickness,2px)); }
.kvds-heading.kvds-has-line-left .kvds-heading__content { --kvds-content-line-left:calc(var(--kvds-active-line-gap-left) + var(--kvds-line-thickness,2px)); }
.kvds-heading__main { align-items:flex-start; }
.kvds-heading__text-stack {
  display:flex;
  flex:0 1 auto;
  flex-direction:column;
  min-width:0;
  max-width:100%;
  text-align:inherit;
}
.kvds-heading__title,
.entry-content .kvds-heading__title,
.article .entry-content .kvds-heading__title,
body .entry-content .kvds-heading__title {
  font-size:var(--kvds-active-font-size) !important;
  line-height:var(--kvds-active-line-height) !important;
}
.kvds-heading__prefix { font-size:var(--kvds-active-prefix-size); }
.kvds-heading__label { font-size:var(--kvds-active-label-size); }
.kvds-heading__subtitle {
  width:100%;
  margin:9px 0 0 !important;
  padding:0 !important;
  font-size:var(--kvds-active-subtitle-size);
  text-align:inherit;
}

.kvds-heading__title > span {
  display:inline-block;
  max-width:100%;
  box-decoration-break:clone;
  -webkit-box-decoration-break:clone;
}
.kvds-text-decor-soft-bg .kvds-heading__title > span,
.kvds-text-decor-stripes .kvds-heading__title > span {
  padding:var(--kvds-text-decor-padding-v,2px) var(--kvds-text-decor-padding-h,8px);
  border-radius:var(--kvds-text-decor-radius,4px);
}
.kvds-text-decor-soft-bg .kvds-heading__title > span { background:var(--kvds-text-decor,rgba(183,208,194,.28)); }
.kvds-text-decor-stripes .kvds-heading__title > span {
  background-image:repeating-linear-gradient(
    var(--kvds-text-stripe-angle,-45deg),
    var(--kvds-text-decor,rgba(183,208,194,.28)) 0,
    var(--kvds-text-decor,rgba(183,208,194,.28)) var(--kvds-text-stripe-width,10px),
    var(--kvds-text-decor-2,rgba(207,234,245,.28)) var(--kvds-text-stripe-width,10px),
    var(--kvds-text-decor-2,rgba(207,234,245,.28)) calc(var(--kvds-text-stripe-width,10px) + var(--kvds-text-stripe-width,10px))
  );
}
.kvds-text-decor-highlight .kvds-heading__title > span {
  background:linear-gradient(transparent 58%,var(--kvds-text-decor,rgba(183,208,194,.28)) 58%,var(--kvds-text-decor,rgba(183,208,194,.28)) 88%,transparent 88%);
  padding:0 var(--kvds-text-decor-padding-h,.08em);
  border-radius:var(--kvds-text-decor-radius,0);
}

@media (max-width:1024px) {
  .kvds-heading {
    --kvds-active-font-size:var(--kvds-font-size-tablet,var(--kvds-font-size,34px));
    --kvds-active-line-height:var(--kvds-line-height-tablet,var(--kvds-line-height,1.55));
    --kvds-active-prefix-size:var(--kvds-prefix-size-tablet,var(--kvds-prefix-size,25px));
    --kvds-active-subtitle-size:var(--kvds-subtitle-size-tablet,var(--kvds-subtitle-size,13px));
    --kvds-active-label-size:var(--kvds-label-size-tablet,var(--kvds-label-size,11px));
    --kvds-active-padding-v:var(--kvds-padding-v-tablet,var(--kvds-padding-v,12px));
    --kvds-active-padding-h:var(--kvds-padding-h-tablet,var(--kvds-padding-h,0px));
    --kvds-active-line-gap-top:var(--kvds-line-gap-top-tablet,var(--kvds-line-gap-top,10px));
    --kvds-active-line-gap-right:var(--kvds-line-gap-right-tablet,var(--kvds-line-gap-right,12px));
    --kvds-active-line-gap-bottom:var(--kvds-line-gap-bottom-tablet,var(--kvds-line-gap-bottom,10px));
    --kvds-active-line-gap-left:var(--kvds-line-gap-left-tablet,var(--kvds-line-gap-left,12px));
  }
}
@media (max-width:600px) {
  .kvds-heading {
    --kvds-active-font-size:var(--kvds-font-size-mobile,var(--kvds-font-size-tablet,var(--kvds-font-size,34px)));
    --kvds-active-line-height:var(--kvds-line-height-mobile,var(--kvds-line-height-tablet,var(--kvds-line-height,1.55)));
    --kvds-active-prefix-size:var(--kvds-prefix-size-mobile,var(--kvds-prefix-size-tablet,var(--kvds-prefix-size,25px)));
    --kvds-active-subtitle-size:var(--kvds-subtitle-size-mobile,var(--kvds-subtitle-size-tablet,var(--kvds-subtitle-size,13px)));
    --kvds-active-label-size:var(--kvds-label-size-mobile,var(--kvds-label-size-tablet,var(--kvds-label-size,11px)));
    --kvds-active-padding-v:var(--kvds-padding-v-mobile,var(--kvds-padding-v-tablet,var(--kvds-padding-v,12px)));
    --kvds-active-padding-h:var(--kvds-padding-h-mobile,var(--kvds-padding-h-tablet,var(--kvds-padding-h,0px)));
    --kvds-active-line-gap-top:var(--kvds-line-gap-top-mobile,var(--kvds-line-gap-top-tablet,var(--kvds-line-gap-top,10px)));
    --kvds-active-line-gap-right:var(--kvds-line-gap-right-mobile,var(--kvds-line-gap-right-tablet,var(--kvds-line-gap-right,12px)));
    --kvds-active-line-gap-bottom:var(--kvds-line-gap-bottom-mobile,var(--kvds-line-gap-bottom-tablet,var(--kvds-line-gap-bottom,10px)));
    --kvds-active-line-gap-left:var(--kvds-line-gap-left-mobile,var(--kvds-line-gap-left-tablet,var(--kvds-line-gap-left,12px)));
  }
}

/* 管理画面の端末プレビューは実際の画面幅に関係なく端末設定を強制表示 */
.kvds-preview-device-pc .kvds-heading {
  --kvds-active-font-size:var(--kvds-font-size,34px);
  --kvds-active-line-height:var(--kvds-line-height,1.55);
  --kvds-active-prefix-size:var(--kvds-prefix-size,25px);
  --kvds-active-subtitle-size:var(--kvds-subtitle-size,13px);
  --kvds-active-label-size:var(--kvds-label-size,11px);
  --kvds-active-padding-v:var(--kvds-padding-v,12px);
  --kvds-active-padding-h:var(--kvds-padding-h,0px);
  --kvds-active-line-gap-top:var(--kvds-line-gap-top,10px);
  --kvds-active-line-gap-right:var(--kvds-line-gap-right,12px);
  --kvds-active-line-gap-bottom:var(--kvds-line-gap-bottom,10px);
  --kvds-active-line-gap-left:var(--kvds-line-gap-left,12px);
}
.kvds-preview-device-tablet .kvds-heading {
  --kvds-active-font-size:var(--kvds-font-size-tablet,var(--kvds-font-size,34px));
  --kvds-active-line-height:var(--kvds-line-height-tablet,var(--kvds-line-height,1.55));
  --kvds-active-prefix-size:var(--kvds-prefix-size-tablet,var(--kvds-prefix-size,25px));
  --kvds-active-subtitle-size:var(--kvds-subtitle-size-tablet,var(--kvds-subtitle-size,13px));
  --kvds-active-label-size:var(--kvds-label-size-tablet,var(--kvds-label-size,11px));
  --kvds-active-padding-v:var(--kvds-padding-v-tablet,var(--kvds-padding-v,12px));
  --kvds-active-padding-h:var(--kvds-padding-h-tablet,var(--kvds-padding-h,0px));
  --kvds-active-line-gap-top:var(--kvds-line-gap-top-tablet,var(--kvds-line-gap-top,10px));
  --kvds-active-line-gap-right:var(--kvds-line-gap-right-tablet,var(--kvds-line-gap-right,12px));
  --kvds-active-line-gap-bottom:var(--kvds-line-gap-bottom-tablet,var(--kvds-line-gap-bottom,10px));
  --kvds-active-line-gap-left:var(--kvds-line-gap-left-tablet,var(--kvds-line-gap-left,12px));
}
.kvds-preview-device-mobile .kvds-heading {
  --kvds-active-font-size:var(--kvds-font-size-mobile,var(--kvds-font-size-tablet,var(--kvds-font-size,34px)));
  --kvds-active-line-height:var(--kvds-line-height-mobile,var(--kvds-line-height-tablet,var(--kvds-line-height,1.55)));
  --kvds-active-prefix-size:var(--kvds-prefix-size-mobile,var(--kvds-prefix-size-tablet,var(--kvds-prefix-size,25px)));
  --kvds-active-subtitle-size:var(--kvds-subtitle-size-mobile,var(--kvds-subtitle-size-tablet,var(--kvds-subtitle-size,13px)));
  --kvds-active-label-size:var(--kvds-label-size-mobile,var(--kvds-label-size-tablet,var(--kvds-label-size,11px)));
  --kvds-active-padding-v:var(--kvds-padding-v-mobile,var(--kvds-padding-v-tablet,var(--kvds-padding-v,12px)));
  --kvds-active-padding-h:var(--kvds-padding-h-mobile,var(--kvds-padding-h-tablet,var(--kvds-padding-h,0px)));
  --kvds-active-line-gap-top:var(--kvds-line-gap-top-mobile,var(--kvds-line-gap-top-tablet,var(--kvds-line-gap-top,10px)));
  --kvds-active-line-gap-right:var(--kvds-line-gap-right-mobile,var(--kvds-line-gap-right-tablet,var(--kvds-line-gap-right,12px)));
  --kvds-active-line-gap-bottom:var(--kvds-line-gap-bottom-mobile,var(--kvds-line-gap-bottom-tablet,var(--kvds-line-gap-bottom,10px)));
  --kvds-active-line-gap-left:var(--kvds-line-gap-left-mobile,var(--kvds-line-gap-left-tablet,var(--kvds-line-gap-left,12px)));
}

/* v0.6.0: side-specific heading line thickness and length */
.kvds-heading__line--top {
  width:var(--kvds-line-length-top,var(--kvds-line-width,100%));
  height:var(--kvds-line-thickness-top,var(--kvds-line-thickness,2px));
}
.kvds-heading__line--bottom {
  width:var(--kvds-line-length-bottom,var(--kvds-line-width,100%));
  height:var(--kvds-line-thickness-bottom,var(--kvds-line-thickness,2px));
}
.kvds-heading__line--right {
  width:var(--kvds-line-thickness-right,var(--kvds-line-thickness,2px));
  height:var(--kvds-line-length-right,var(--kvds-line-width,100%));
}
.kvds-heading__line--left {
  width:var(--kvds-line-thickness-left,var(--kvds-line-thickness,2px));
  height:var(--kvds-line-length-left,var(--kvds-line-width,100%));
}
.kvds-has-line-top { --kvds-line-extra-top:calc(var(--kvds-line-gap-top,10px) + var(--kvds-line-thickness-top,var(--kvds-line-thickness,2px))); }
.kvds-has-line-right { --kvds-line-extra-right:calc(var(--kvds-line-gap-right,12px) + var(--kvds-line-thickness-right,var(--kvds-line-thickness,2px))); }
.kvds-has-line-bottom { --kvds-line-extra-bottom:calc(var(--kvds-line-gap-bottom,10px) + var(--kvds-line-thickness-bottom,var(--kvds-line-thickness,2px))); }
.kvds-has-line-left { --kvds-line-extra-left:calc(var(--kvds-line-gap-left,12px) + var(--kvds-line-thickness-left,var(--kvds-line-thickness,2px))); }
.kvds-heading.kvds-has-line-top .kvds-heading__content { --kvds-content-line-top:calc(var(--kvds-active-line-gap-top) + var(--kvds-line-thickness-top,var(--kvds-line-thickness,2px))); }
.kvds-heading.kvds-has-line-right .kvds-heading__content { --kvds-content-line-right:calc(var(--kvds-active-line-gap-right) + var(--kvds-line-thickness-right,var(--kvds-line-thickness,2px))); }
.kvds-heading.kvds-has-line-bottom .kvds-heading__content { --kvds-content-line-bottom:calc(var(--kvds-active-line-gap-bottom) + var(--kvds-line-thickness-bottom,var(--kvds-line-thickness,2px))); }
.kvds-heading.kvds-has-line-left .kvds-heading__content { --kvds-content-line-left:calc(var(--kvds-active-line-gap-left) + var(--kvds-line-thickness-left,var(--kvds-line-thickness,2px))); }
.kvds-heading__shape { bottom:calc(var(--kvds-line-thickness-bottom,var(--kvds-line-thickness,2px)) * -1); }

/* v0.7.0: side-specific heading line colors */
.kvds-heading__line--top {
  background:var(--kvds-line-color-top,var(--kvds-line-color,#347A58));
}
.kvds-heading__line--right {
  background:var(--kvds-line-color-right,var(--kvds-line-color,#347A58));
}
.kvds-heading__line--bottom {
  background:var(--kvds-line-color-bottom,var(--kvds-line-color,#347A58));
}
.kvds-heading__line--left {
  background:var(--kvds-line-color-left,var(--kvds-line-color,#347A58));
}
.kvds-line-mode-accent .kvds-heading__line--top {
  background:linear-gradient(90deg,var(--kvds-line-accent-top,var(--kvds-line-accent,#347A58)) 0 var(--kvds-line-accent-width,28%),var(--kvds-line-color-top,var(--kvds-line-color,#347A58)) var(--kvds-line-accent-width,28%) 100%);
}
.kvds-line-mode-accent .kvds-heading__line--bottom {
  background:linear-gradient(90deg,var(--kvds-line-accent-bottom,var(--kvds-line-accent,#347A58)) 0 var(--kvds-line-accent-width,28%),var(--kvds-line-color-bottom,var(--kvds-line-color,#347A58)) var(--kvds-line-accent-width,28%) 100%);
}
.kvds-line-mode-accent .kvds-heading__line--right {
  background:var(--kvds-line-accent-right,var(--kvds-line-accent,#347A58));
}
.kvds-line-mode-accent .kvds-heading__line--left {
  background:var(--kvds-line-accent-left,var(--kvds-line-accent,#347A58));
}

/* v0.8.0: responsive double bottom line */
.kvds-heading {
  --kvds-active-line-thickness-bottom:var(--kvds-line-thickness-bottom,var(--kvds-line-thickness,2px));
  --kvds-active-line-length-bottom:var(--kvds-line-length-bottom,var(--kvds-line-width,100%));
  --kvds-active-line-thickness-bottom2:var(--kvds-line-thickness-bottom2,4px);
  --kvds-active-line-length-bottom2:var(--kvds-line-length-bottom2,110px);
  --kvds-active-line-pair-gap-bottom:var(--kvds-line-pair-gap-bottom,4px);
}
.kvds-heading__line--bottom {
  width:var(--kvds-active-line-length-bottom);
  height:var(--kvds-active-line-thickness-bottom);
}
.kvds-heading__line--bottom2 {
  left:0;
  bottom:0;
  width:var(--kvds-active-line-length-bottom2);
  height:var(--kvds-active-line-thickness-bottom2);
  background:var(--kvds-line-color-bottom2,#078C00);
}
.kvds-has-line-bottom2 .kvds-heading__line--bottom2 { display:block; }
.kvds-has-line-bottom2 .kvds-heading__line--bottom {
  bottom:calc(var(--kvds-active-line-thickness-bottom2) + var(--kvds-active-line-pair-gap-bottom));
}
.kvds-line2-mode-accent .kvds-heading__line--bottom2 {
  background:linear-gradient(90deg,var(--kvds-line-accent-bottom2,#078C00) 0 var(--kvds-line-accent-width-bottom2,100%),var(--kvds-line-color-bottom2,#078C00) var(--kvds-line-accent-width-bottom2,100%) 100%);
}
.kvds-line2-align-center .kvds-heading__line--bottom2 { left:50%; right:auto; transform:translateX(-50%); }
.kvds-line2-align-right .kvds-heading__line--bottom2 { left:auto; right:0; transform:none; }
.kvds-heading.kvds-has-line-bottom2 .kvds-heading__content {
  --kvds-content-line-bottom:calc(var(--kvds-active-line-gap-bottom) + var(--kvds-active-line-thickness-bottom) + var(--kvds-active-line-pair-gap-bottom) + var(--kvds-active-line-thickness-bottom2));
}
.kvds-has-line-bottom2 {
  --kvds-line-extra-bottom:calc(var(--kvds-line-gap-bottom,10px) + var(--kvds-active-line-thickness-bottom) + var(--kvds-active-line-pair-gap-bottom) + var(--kvds-active-line-thickness-bottom2));
}
@media (max-width:1024px) {
  .kvds-heading {
    --kvds-active-line-thickness-bottom:var(--kvds-line-thickness-bottom-tablet,var(--kvds-line-thickness-bottom,2px));
    --kvds-active-line-length-bottom:var(--kvds-line-length-bottom-tablet,var(--kvds-line-length-bottom,100%));
    --kvds-active-line-thickness-bottom2:var(--kvds-line-thickness-bottom2-tablet,var(--kvds-line-thickness-bottom2,4px));
    --kvds-active-line-length-bottom2:var(--kvds-line-length-bottom2-tablet,var(--kvds-line-length-bottom2,90px));
    --kvds-active-line-pair-gap-bottom:var(--kvds-line-pair-gap-bottom-tablet,var(--kvds-line-pair-gap-bottom,4px));
  }
}
@media (max-width:600px) {
  .kvds-heading {
    --kvds-active-line-thickness-bottom:var(--kvds-line-thickness-bottom-mobile,var(--kvds-line-thickness-bottom-tablet,var(--kvds-line-thickness-bottom,1px)));
    --kvds-active-line-length-bottom:var(--kvds-line-length-bottom-mobile,var(--kvds-line-length-bottom-tablet,var(--kvds-line-length-bottom,100%)));
    --kvds-active-line-thickness-bottom2:var(--kvds-line-thickness-bottom2-mobile,var(--kvds-line-thickness-bottom2-tablet,var(--kvds-line-thickness-bottom2,3px)));
    --kvds-active-line-length-bottom2:var(--kvds-line-length-bottom2-mobile,var(--kvds-line-length-bottom2-tablet,var(--kvds-line-length-bottom2,70px)));
    --kvds-active-line-pair-gap-bottom:var(--kvds-line-pair-gap-bottom-mobile,var(--kvds-line-pair-gap-bottom-tablet,var(--kvds-line-pair-gap-bottom,3px)));
  }
}
.kvds-preview-device-tablet .kvds-heading {
  --kvds-active-line-thickness-bottom:var(--kvds-line-thickness-bottom-tablet,var(--kvds-line-thickness-bottom,2px));
  --kvds-active-line-length-bottom:var(--kvds-line-length-bottom-tablet,var(--kvds-line-length-bottom,100%));
  --kvds-active-line-thickness-bottom2:var(--kvds-line-thickness-bottom2-tablet,var(--kvds-line-thickness-bottom2,4px));
  --kvds-active-line-length-bottom2:var(--kvds-line-length-bottom2-tablet,var(--kvds-line-length-bottom2,90px));
  --kvds-active-line-pair-gap-bottom:var(--kvds-line-pair-gap-bottom-tablet,var(--kvds-line-pair-gap-bottom,4px));
}
.kvds-preview-device-mobile .kvds-heading {
  --kvds-active-line-thickness-bottom:var(--kvds-line-thickness-bottom-mobile,var(--kvds-line-thickness-bottom,1px));
  --kvds-active-line-length-bottom:var(--kvds-line-length-bottom-mobile,var(--kvds-line-length-bottom,100%));
  --kvds-active-line-thickness-bottom2:var(--kvds-line-thickness-bottom2-mobile,var(--kvds-line-thickness-bottom2,3px));
  --kvds-active-line-length-bottom2:var(--kvds-line-length-bottom2-mobile,var(--kvds-line-length-bottom2,70px));
  --kvds-active-line-pair-gap-bottom:var(--kvds-line-pair-gap-bottom-mobile,var(--kvds-line-pair-gap-bottom,3px));
}


/* v0.8.2: per-side accent colors and meaningful vertical-line accents */
.kvds-line-top-mode-solid .kvds-heading__line--top{background:var(--kvds-line-color-top,var(--kvds-line-color,#347A58));}
.kvds-line-top-mode-accent .kvds-heading__line--top{background:linear-gradient(90deg,var(--kvds-line-accent-top,var(--kvds-line-accent,#078C00)) 0 var(--kvds-line-accent-width-top,28%),var(--kvds-line-color-top,var(--kvds-line-color,#347A58)) var(--kvds-line-accent-width-top,28%) 100%);}
.kvds-line-bottom-mode-solid .kvds-heading__line--bottom{background:var(--kvds-line-color-bottom,var(--kvds-line-color,#347A58));}
.kvds-line-bottom-mode-accent .kvds-heading__line--bottom{background:linear-gradient(90deg,var(--kvds-line-accent-bottom,var(--kvds-line-accent,#078C00)) 0 var(--kvds-line-accent-width-bottom,28%),var(--kvds-line-color-bottom,var(--kvds-line-color,#347A58)) var(--kvds-line-accent-width-bottom,28%) 100%);}
.kvds-line-right-mode-solid .kvds-heading__line--right{background:var(--kvds-line-color-right,var(--kvds-line-color,#347A58));}
.kvds-line-right-mode-accent .kvds-heading__line--right{background:linear-gradient(180deg,var(--kvds-line-accent-right,var(--kvds-line-accent,#078C00)) 0 var(--kvds-line-accent-width-right,28%),var(--kvds-line-color-right,var(--kvds-line-color,#347A58)) var(--kvds-line-accent-width-right,28%) 100%);}
.kvds-line-left-mode-solid .kvds-heading__line--left{background:var(--kvds-line-color-left,var(--kvds-line-color,#347A58));}
.kvds-line-left-mode-accent .kvds-heading__line--left{background:linear-gradient(180deg,var(--kvds-line-accent-left,var(--kvds-line-accent,#078C00)) 0 var(--kvds-line-accent-width-left,28%),var(--kvds-line-color-left,var(--kvds-line-color,#347A58)) var(--kvds-line-accent-width-left,28%) 100%);}
