.elementor-566 .elementor-element.elementor-element-9260e81{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:-72px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:150px;--padding-bottom:150px;--padding-left:0px;--padding-right:0px;}.elementor-566 .elementor-element.elementor-element-9260e81:not(.elementor-motion-effects-element-type-background), .elementor-566 .elementor-element.elementor-element-9260e81 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#999999;}.elementor-widget-heading .elementor-heading-title{color:var( --e-global-color-primary );}.elementor-566 .elementor-element.elementor-element-8cf07b3.elementor-element{--align-self:flex-start;}.elementor-566 .elementor-element.elementor-element-8cf07b3 .elementor-heading-title{font-family:"futura-pt", Sans-serif;font-size:120px;font-weight:600;color:#F7F7F7;}.elementor-566 .elementor-element.elementor-element-9117ab3 > .elementor-widget-container{background-color:#1C1C1C;padding:10px 20px 10px 20px;}.elementor-566 .elementor-element.elementor-element-9117ab3.elementor-element{--align-self:flex-start;}.elementor-566 .elementor-element.elementor-element-9117ab3 .elementor-heading-title{font-family:"Noto Sans JP", Sans-serif;font-size:25px;font-weight:600;color:#FFFFFF;}.elementor-566 .elementor-element.elementor-element-9bb5920{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:50px;--padding-left:0px;--padding-right:0px;}.elementor-566 .elementor-element.elementor-element-7e49861{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:center;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-566 .elementor-element.elementor-element-764b368{z-index:2;text-align:left;}.elementor-566 .elementor-element.elementor-element-764b368 .elementor-heading-title{font-family:"Noto Sans JP", Sans-serif;font-size:40px;font-weight:600;line-height:1.4em;}.elementor-566 .elementor-element.elementor-element-513fbab > .elementor-widget-container{margin:0px 0px 0px -48px;padding:0px 0px 0px 0px;}.elementor-566 .elementor-element.elementor-element-513fbab.elementor-element{--align-self:flex-start;}.elementor-566 .elementor-element.elementor-element-513fbab .elementor-heading-title{font-family:"futura-pt", Sans-serif;font-size:80px;font-weight:600;text-transform:uppercase;color:#BEBEBE;}.elementor-566 .elementor-element.elementor-element-34fa5e2 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:4px 0px 12px 0px;}.elementor-566 .elementor-element.elementor-element-34fa5e2.elementor-element{--align-self:flex-start;}.elementor-566 .elementor-element.elementor-element-34fa5e2{text-align:left;}.elementor-566 .elementor-element.elementor-element-34fa5e2 .elementor-heading-title{font-family:"Noto Sans JP", Sans-serif;font-size:49px;font-weight:600;line-height:1.5em;}.elementor-widget-text-editor{color:var( --e-global-color-text );}.elementor-widget-text-editor.elementor-drop-cap-view-stacked .elementor-drop-cap{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor.elementor-drop-cap-view-framed .elementor-drop-cap, .elementor-widget-text-editor.elementor-drop-cap-view-default .elementor-drop-cap{color:var( --e-global-color-primary );border-color:var( --e-global-color-primary );}.elementor-566 .elementor-element.elementor-element-ddeb0d6{font-family:"Noto Sans JP", Sans-serif;font-size:16px;font-weight:600;line-height:1.8em;}.elementor-566 .elementor-element.elementor-element-12244fa{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0%;--padding-bottom:0%;--padding-left:0%;--padding-right:0%;}.elementor-566 .elementor-element.elementor-element-12244fa:not(.elementor-motion-effects-element-type-background), .elementor-566 .elementor-element.elementor-element-12244fa > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFFFFF;}.elementor-566 .elementor-element.elementor-element-85f16ec{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0%;--padding-bottom:0%;--padding-left:10%;--padding-right:0%;}.elementor-566 .elementor-element.elementor-element-85f16ec:not(.elementor-motion-effects-element-type-background), .elementor-566 .elementor-element.elementor-element-85f16ec > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:var( --e-global-color-accent );}.elementor-566 .elementor-element.elementor-element-5952eaa > .elementor-widget-container{margin:0px 0px 0px 0px;padding:50px 0px 0px 0px;}.elementor-566 .elementor-element.elementor-element-5952eaa.elementor-element{--align-self:flex-start;}.elementor-566 .elementor-element.elementor-element-5952eaa .elementor-heading-title{font-family:"futura-pt", Sans-serif;font-size:80px;font-weight:600;text-transform:uppercase;color:#F5F5F5;}.elementor-widget-loop-grid .elementor-button{background-color:var( --e-global-color-accent );}.elementor-566 .elementor-element.elementor-element-f02c5e3{--grid-columns:2;}.elementor-566 .elementor-element.elementor-element-f02c5e3 > .elementor-widget-container{margin:0px -100px -75px 0px;padding:0px 0px 0px 0px;}.elementor-566 .elementor-element.elementor-element-634274b{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-566 .elementor-element.elementor-element-f879e0a{font-family:"Noto Sans JP", Sans-serif;font-size:16px;font-weight:600;line-height:1.8em;}@media(max-width:1024px){.elementor-566 .elementor-element.elementor-element-f02c5e3{--grid-columns:2;}}@media(min-width:768px){.elementor-566 .elementor-element.elementor-element-9260e81{--content-width:80%;}.elementor-566 .elementor-element.elementor-element-9bb5920{--content-width:80%;}.elementor-566 .elementor-element.elementor-element-85f16ec{--width:80%;}.elementor-566 .elementor-element.elementor-element-634274b{--content-width:80%;}}@media(max-width:767px){.elementor-566 .elementor-element.elementor-element-9260e81{--padding-top:50px;--padding-bottom:50px;--padding-left:20px;--padding-right:020px;}.elementor-566 .elementor-element.elementor-element-8cf07b3 > .elementor-widget-container{margin:0px 0px 0px 0px;padding:31px 0px 0px 0px;}.elementor-566 .elementor-element.elementor-element-8cf07b3 .elementor-heading-title{font-size:70px;}.elementor-566 .elementor-element.elementor-element-9117ab3.elementor-element{--align-self:center;}.elementor-566 .elementor-element.elementor-element-9117ab3 .elementor-heading-title{font-size:18px;}.elementor-566 .elementor-element.elementor-element-9bb5920{--padding-top:50px;--padding-bottom:30px;--padding-left:20px;--padding-right:20px;}.elementor-566 .elementor-element.elementor-element-7e49861{--gap:0px 0px;--row-gap:0px;--column-gap:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-566 .elementor-element.elementor-element-764b368 .elementor-heading-title{font-size:25px;}.elementor-566 .elementor-element.elementor-element-513fbab{width:100%;max-width:100%;text-align:right;}.elementor-566 .elementor-element.elementor-element-513fbab > .elementor-widget-container{margin:-37px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-566 .elementor-element.elementor-element-513fbab.elementor-element{--align-self:flex-end;}.elementor-566 .elementor-element.elementor-element-513fbab .elementor-heading-title{font-size:43px;}.elementor-566 .elementor-element.elementor-element-34fa5e2 .elementor-heading-title{font-size:18px;}.elementor-566 .elementor-element.elementor-element-ddeb0d6{font-size:14px;}.elementor-566 .elementor-element.elementor-element-85f16ec{--width:80%;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0%;--padding-bottom:0%;--padding-left:6%;--padding-right:0%;}.elementor-566 .elementor-element.elementor-element-5952eaa{width:100%;max-width:100%;text-align:left;}.elementor-566 .elementor-element.elementor-element-5952eaa > .elementor-widget-container{margin:16px 0px 0px 0px;padding:0px 0px 0px 0px;}.elementor-566 .elementor-element.elementor-element-5952eaa.elementor-element{--align-self:flex-start;}.elementor-566 .elementor-element.elementor-element-5952eaa .elementor-heading-title{font-size:43px;}.elementor-566 .elementor-element.elementor-element-f02c5e3{--grid-columns:1;}.elementor-566 .elementor-element.elementor-element-f02c5e3 > .elementor-widget-container{margin:0px -48px -66px 0px;padding:0px 0px 0px 0px;}.elementor-566 .elementor-element.elementor-element-634274b{--padding-top:100px;--padding-bottom:50px;--padding-left:20px;--padding-right:20px;}.elementor-566 .elementor-element.elementor-element-f879e0a{font-size:14px;}}/* Start custom CSS for heading, class: .elementor-element-8cf07b3 *//* 画像のコンテナを基準にする */
.elementor-566 .elementor-element.elementor-element-8cf07b3 .elementor-widget-container {
  position: relative;
  overflow: hidden; /* はみ出した要素を隠す */
  /* ここから背景色を削除。::before で初期状態も隠すようにする */
}

/* 黒いスライド要素（オーバーレイ）を作成 */
.elementor-566 .elementor-element.elementor-element-8cf07b3 .elementor-widget-container::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #999999; /* スライドの色（黒） */
  z-index: 2;
  /* アニメーション開始前も画面を覆うようにする */
  transform: translateX(0%); /* 初期状態では画面を覆っておく */
  transition: transform 0s ease 0s; /* 初期表示時にアニメーションが走らないようにする */
}

/* 画像本体の初期状態 */
.elementor-566 .elementor-element.elementor-element-8cf07b3 img {
  opacity: 0; /* 最初は透明にしておく */
  z-index: 1;
  display: block; /* 画像が占めるスペースを確保 */
  width: 100%; /* 画像の幅をコンテナに合わせる */
  height: auto; /* 画像の高さを自動調整 */
}

/* 画面内に入った時のアニメーションを定義 */
/* 1. 黒い幕が左から右へスライドアウト（隠れる） */
/* elementor-invisible クラスは、Elementorが提供する要素がビューポート外にあることを示すクラスです。
   アニメーションが始まる前（つまり elementor-invisible の間）は ::before が画面を覆います。
   アニメーションが始まったら（elementor-invisible が外れたら）、::before がスライドします。
*/
.elementor-editor-active .elementor-566 .elementor-element.elementor-element-8cf07b3 .elementor-widget-container::before,
.elementor-566 .elementor-element.elementor-element-8cf07b3.animated .elementor-widget-container::before {
  /* ::before のスライドインとスライドアウトのアニメーション */
  animation: slide-hide 1.2s cubic-bezier(0.77, 0, 0.175, 1) forwards;
}

/* 2. 画像が少し遅れて表示される */
.elementor-editor-active .elementor-566 .elementor-element.elementor-element-8cf07b3 img,
.elementor-566 .elementor-element.elementor-element-8cf07b3.animated img {
  animation: fade-in-reveal 0.8s 0.4s cubic-bezier(0.77, 0, 0.175, 1) forwards; /* 0.4s遅延させる */
}


/* アニメーションの詳細を定義（キーフレーム） */
/* 黒い幕が隠れるアニメーション */
@keyframes slide-hide {
  0% {
    transform: translateX(0%); /* 画面を覆った状態から開始 */
  }
  50% {
    transform: translateX(101%); /* 右側へ完全に抜ける */
  }
  100% {
    transform: translateX(101%); /* アニメーション後も画面外に保持 */
  }
}


@keyframes fade-in-reveal {
  0% {
    opacity: 0;
    transform: scale(1.1); /* 少し拡大した状態から開始 */
  }
  100% {
    opacity: 1;
    transform: scale(1); /* 本来のサイズに戻る */
  }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-9117ab3 *//* 画像のコンテナを基準にする */
.elementor-566 .elementor-element.elementor-element-9117ab3 .elementor-widget-container {
  position: relative;
  overflow: hidden; /* はみ出した要素を隠す */
  /* ここから背景色を削除。::before で初期状態も隠すようにする */
}

/* 黒いスライド要素（オーバーレイ）を作成 */
.elementor-566 .elementor-element.elementor-element-9117ab3 .elementor-widget-container::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #1C1C1C; /* スライドの色（黒） */
  z-index: 2;
  /* アニメーション開始前も画面を覆うようにする */
  transform: translateX(0%); /* 初期状態では画面を覆っておく */
  transition: transform 0s ease 0s; /* 初期表示時にアニメーションが走らないようにする */
}

/* 画像本体の初期状態 */
.elementor-566 .elementor-element.elementor-element-9117ab3 img {
  opacity: 0; /* 最初は透明にしておく */
  z-index: 1;
  display: block; /* 画像が占めるスペースを確保 */
  width: 100%; /* 画像の幅をコンテナに合わせる */
  height: auto; /* 画像の高さを自動調整 */
}

/* 画面内に入った時のアニメーションを定義 */
/* 1. 黒い幕が左から右へスライドアウト（隠れる） */
/* elementor-invisible クラスは、Elementorが提供する要素がビューポート外にあることを示すクラスです。
   アニメーションが始まる前（つまり elementor-invisible の間）は ::before が画面を覆います。
   アニメーションが始まったら（elementor-invisible が外れたら）、::before がスライドします。
*/
.elementor-editor-active .elementor-566 .elementor-element.elementor-element-9117ab3 .elementor-widget-container::before,
.elementor-566 .elementor-element.elementor-element-9117ab3.animated .elementor-widget-container::before {
  /* ::before のスライドインとスライドアウトのアニメーション */
  animation: slide-hide 1.2s cubic-bezier(0.77, 0, 0.175, 1) forwards;
}

/* 2. 画像が少し遅れて表示される */
.elementor-editor-active .elementor-566 .elementor-element.elementor-element-9117ab3 img,
.elementor-566 .elementor-element.elementor-element-9117ab3.animated img {
  animation: fade-in-reveal 0.8s 0.4s cubic-bezier(0.77, 0, 0.175, 1) forwards; /* 0.4s遅延させる */
}


/* アニメーションの詳細を定義（キーフレーム） */
/* 黒い幕が隠れるアニメーション */
@keyframes slide-hide {
  0% {
    transform: translateX(0%); /* 画面を覆った状態から開始 */
  }
  50% {
    transform: translateX(101%); /* 右側へ完全に抜ける */
  }
  100% {
    transform: translateX(101%); /* アニメーション後も画面外に保持 */
  }
}


@keyframes fade-in-reveal {
  0% {
    opacity: 0;
    transform: scale(1.1); /* 少し拡大した状態から開始 */
  }
  100% {
    opacity: 1;
    transform: scale(1); /* 本来のサイズに戻る */
  }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-513fbab *//* 画像のコンテナを基準にする */
.elementor-566 .elementor-element.elementor-element-513fbab .elementor-widget-container {
  position: relative;
  overflow: hidden; /* はみ出した要素を隠す */
  /* ここから背景色を削除。::before で初期状態も隠すようにする */
}

/* 黒いスライド要素（オーバーレイ）を作成 */
.elementor-566 .elementor-element.elementor-element-513fbab .elementor-widget-container::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #FFFFFF
  ; /* スライドの色（黒） */
  z-index: 2;
  /* アニメーション開始前も画面を覆うようにする */
  transform: translateX(0%); /* 初期状態では画面を覆っておく */
  transition: transform 0s ease 0s; /* 初期表示時にアニメーションが走らないようにする */
}

/* 画像本体の初期状態 */
.elementor-566 .elementor-element.elementor-element-513fbab img {
  opacity: 0; /* 最初は透明にしておく */
  z-index: 1;
  display: block; /* 画像が占めるスペースを確保 */
  width: 100%; /* 画像の幅をコンテナに合わせる */
  height: auto; /* 画像の高さを自動調整 */
}

/* 画面内に入った時のアニメーションを定義 */
/* 1. 黒い幕が左から右へスライドアウト（隠れる） */
/* elementor-invisible クラスは、Elementorが提供する要素がビューポート外にあることを示すクラスです。
   アニメーションが始まる前（つまり elementor-invisible の間）は ::before が画面を覆います。
   アニメーションが始まったら（elementor-invisible が外れたら）、::before がスライドします。
*/
.elementor-editor-active .elementor-566 .elementor-element.elementor-element-513fbab .elementor-widget-container::before,
.elementor-566 .elementor-element.elementor-element-513fbab.animated .elementor-widget-container::before {
  /* ::before のスライドインとスライドアウトのアニメーション */
  animation: slide-hide 1.2s cubic-bezier(0.77, 0, 0.175, 1) forwards;
}

/* 2. 画像が少し遅れて表示される */
.elementor-editor-active .elementor-566 .elementor-element.elementor-element-513fbab img,
.elementor-566 .elementor-element.elementor-element-513fbab.animated img {
  animation: fade-in-reveal 0.8s 0.4s cubic-bezier(0.77, 0, 0.175, 1) forwards; /* 0.4s遅延させる */
}


/* アニメーションの詳細を定義（キーフレーム） */
/* 黒い幕が隠れるアニメーション */
@keyframes slide-hide {
  0% {
    transform: translateX(0%); /* 画面を覆った状態から開始 */
  }
  50% {
    transform: translateX(101%); /* 右側へ完全に抜ける */
  }
  100% {
    transform: translateX(101%); /* アニメーション後も画面外に保持 */
  }
}


@keyframes fade-in-reveal {
  0% {
    opacity: 0;
    transform: scale(1.1); /* 少し拡大した状態から開始 */
  }
  100% {
    opacity: 1;
    transform: scale(1); /* 本来のサイズに戻る */
  }
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-34fa5e2 *//* 画像のコンテナを基準にする */
.elementor-566 .elementor-element.elementor-element-34fa5e2 .elementor-widget-container {
  position: relative;
  overflow: hidden; /* はみ出した要素を隠す */
  /* ここから背景色を削除。::before で初期状態も隠すようにする */
}

/* 黒いスライド要素（オーバーレイ）を作成 */
.elementor-566 .elementor-element.elementor-element-34fa5e2 .elementor-widget-container::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #FFFFFF
  ; /* スライドの色（黒） */
  z-index: 2;
  /* アニメーション開始前も画面を覆うようにする */
  transform: translateX(0%); /* 初期状態では画面を覆っておく */
  transition: transform 0s ease 0s; /* 初期表示時にアニメーションが走らないようにする */
}

/* 画像本体の初期状態 */
.elementor-566 .elementor-element.elementor-element-34fa5e2 img {
  opacity: 0; /* 最初は透明にしておく */
  z-index: 1;
  display: block; /* 画像が占めるスペースを確保 */
  width: 100%; /* 画像の幅をコンテナに合わせる */
  height: auto; /* 画像の高さを自動調整 */
}

/* 画面内に入った時のアニメーションを定義 */
/* 1. 黒い幕が左から右へスライドアウト（隠れる） */
/* elementor-invisible クラスは、Elementorが提供する要素がビューポート外にあることを示すクラスです。
   アニメーションが始まる前（つまり elementor-invisible の間）は ::before が画面を覆います。
   アニメーションが始まったら（elementor-invisible が外れたら）、::before がスライドします。
*/
.elementor-editor-active .elementor-566 .elementor-element.elementor-element-34fa5e2 .elementor-widget-container::before,
.elementor-566 .elementor-element.elementor-element-34fa5e2.animated .elementor-widget-container::before {
  /* ::before のスライドインとスライドアウトのアニメーション */
  animation: slide-hide 1.2s cubic-bezier(0.77, 0, 0.175, 1) forwards;
}

/* 2. 画像が少し遅れて表示される */
.elementor-editor-active .elementor-566 .elementor-element.elementor-element-34fa5e2 img,
.elementor-566 .elementor-element.elementor-element-34fa5e2.animated img {
  animation: fade-in-reveal 0.8s 0.4s cubic-bezier(0.77, 0, 0.175, 1) forwards; /* 0.4s遅延させる */
}


/* アニメーションの詳細を定義（キーフレーム） */
/* 黒い幕が隠れるアニメーション */
@keyframes slide-hide {
  0% {
    transform: translateX(0%); /* 画面を覆った状態から開始 */
  }
  50% {
    transform: translateX(101%); /* 右側へ完全に抜ける */
  }
  100% {
    transform: translateX(101%); /* アニメーション後も画面外に保持 */
  }
}


@keyframes fade-in-reveal {
  0% {
    opacity: 0;
    transform: scale(1.1); /* 少し拡大した状態から開始 */
  }
  100% {
    opacity: 1;
    transform: scale(1); /* 本来のサイズに戻る */
  }
}


.highlight-half {
    position: relative;
    display: inline-block; /* インライン要素だが、幅と高さを制御できるように */
    z-index: 1; /* 後から追加する擬似要素より手前に表示 */
}

.highlight-half {
    position: relative;
    display: inline-block; /* インライン要素だが、幅と高さを制御できるように */
    z-index: 1; /* 後から追加する擬似要素より手前に表示 */
}

.highlight-half::before {
    content: '';
    position: absolute;
    bottom: 0; /* 文字の下に表示 */
    left: 0;
    width: 100%; /* 親要素（.highlight-half）の幅全体 */
    height: 50%; /* ★文字の高さの半分 */
    background-color: #FFD400; /* ハイライトの色 */
    z-index: -1; /* 文字の背面に表示 */
}/* End custom CSS */