.elementor-kit-10{--e-global-color-primary:#333333;--e-global-color-secondary:#DEF0EB;--e-global-color-text:#333333;--e-global-color-accent:#68C4B9;--e-global-color-3154f77:#8FD2C8;--e-global-color-04d2285:#B7E0D7;--e-global-color-266d8fc:#FFFFFF;--e-global-color-a80fe0b:#F5653C;--e-global-color-84edaac:#E8DE6F;--e-global-typography-primary-font-weight:600;--e-global-typography-secondary-font-weight:400;--e-global-typography-text-font-weight:400;--e-global-typography-accent-font-weight:500;font-weight:400;}.elementor-kit-10 e-page-transition{background-color:#FFBC7D;}.elementor-section.elementor-section-boxed > .elementor-container{max-width:1140px;}.e-con{--container-max-width:1140px;}.elementor-widget:not(:last-child){--kit-widget-spacing:20px;}.elementor-element{--widgets-spacing:20px 20px;--widgets-spacing-row:20px;--widgets-spacing-column:20px;}{}h1.entry-title{display:var(--page-title-display);}@media(max-width:1024px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:1024px;}.e-con{--container-max-width:1024px;}}@media(max-width:767px){.elementor-section.elementor-section-boxed > .elementor-container{max-width:767px;}.e-con{--container-max-width:767px;}}/* Start custom CSS *//* フルワイド */

.elementor-template-full-width #content {
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

.elementor-template-full-width .l-content {
    margin: 0 !important;
    padding-top: 0 !important;
}

/* Elementor内の段落に余白を戻す */
.elementor-widget-text-editor p {
  margin-bottom: 1em;
}


.aspect-s {
  aspect-ratio: 1 / 1;
}

.a_marker {
  font-weight: bold;
  background: linear-gradient(transparent 40%, #fffb00 40%);
  background-size: 0% 100%;
  background-repeat: no-repeat;
  transition: background-size 1s ease;
  display: inline;
}

/* スクロールで表示されたらアニメーション実行 */
.a_marker.is-visible {
  background-size: 100% 100%;
}

.speech-bubble {
  display: inline-block;          /* ← これで文字の長さに合わせる */
  background: #f2f2f2;
  border-radius: 30px;
  padding: 0.8em 1.2em;
  color: #333;
  position: relative;
  max-width: 100%;                /* 長文でも折り返す */
  line-height: 1.6;
}

.speech-bubble::after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 20px;
  border-width: 10px 10px 0;
  border-style: solid;
  border-color: #f2f2f2 transparent;
}/* End custom CSS */