.elementor-10 .elementor-element.elementor-element-87b247a{--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:-100px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-3b5f44b{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--overlay-opacity:0.33;--margin-top:100px;--margin-bottom:100px;--margin-left:0px;--margin-right:0px;--padding-top:100px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-3b5f44b::before, .elementor-10 .elementor-element.elementor-element-3b5f44b > .elementor-background-video-container::before, .elementor-10 .elementor-element.elementor-element-3b5f44b > .e-con-inner > .elementor-background-video-container::before, .elementor-10 .elementor-element.elementor-element-3b5f44b > .elementor-background-slideshow::before, .elementor-10 .elementor-element.elementor-element-3b5f44b > .e-con-inner > .elementor-background-slideshow::before, .elementor-10 .elementor-element.elementor-element-3b5f44b > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-image:url("https://trusting-lovelace.163-43-30-20.plesk.page/wp-content/uploads/2025/11/logo2.svg");--background-overlay:'';background-position:center center;background-repeat:no-repeat;background-size:contain;}.elementor-10 .elementor-element.elementor-element-be2cd56{--display:flex;--align-items:center;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-1ed4218{--display:flex;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--margin-top:0px;--margin-bottom:0px;--margin-left:300px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-76c37a2{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-7ec4ea8{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:2px 0px 0px 0px;}.elementor-10 .elementor-element.elementor-element-7ec4ea8 .elementor-icon-wrapper{text-align:center;}.elementor-10 .elementor-element.elementor-element-7ec4ea8.elementor-view-stacked .elementor-icon{background-color:#5799D9;}.elementor-10 .elementor-element.elementor-element-7ec4ea8.elementor-view-framed .elementor-icon, .elementor-10 .elementor-element.elementor-element-7ec4ea8.elementor-view-default .elementor-icon{color:#5799D9;border-color:#5799D9;}.elementor-10 .elementor-element.elementor-element-7ec4ea8.elementor-view-framed .elementor-icon, .elementor-10 .elementor-element.elementor-element-7ec4ea8.elementor-view-default .elementor-icon svg{fill:#5799D9;}.elementor-10 .elementor-element.elementor-element-7ec4ea8 .elementor-icon{font-size:14px;}.elementor-10 .elementor-element.elementor-element-7ec4ea8 .elementor-icon svg{height:14px;}.elementor-10 .elementor-element.elementor-element-6009d1b.elementor-element{--align-self:center;}.elementor-10 .elementor-element.elementor-element-6009d1b .elementor-heading-title{font-family:"Outfit", Sans-serif;font-size:18px;font-weight:500;letter-spacing:2px;color:#C9C9C9;}.elementor-10 .elementor-element.elementor-element-08fd0bb{--divider-border-style:solid;--divider-color:#333333;--divider-border-width:1px;}.elementor-10 .elementor-element.elementor-element-08fd0bb .elementor-divider-separator{width:150px;}.elementor-10 .elementor-element.elementor-element-08fd0bb .elementor-divider{padding-block-start:0px;padding-block-end:0px;}.elementor-10 .elementor-element.elementor-element-4576815 .elementor-heading-title{font-size:40px;line-height:50px;letter-spacing:1px;color:var( --e-global-color-text );}.elementor-10 .elementor-element.elementor-element-9c699e7{text-align:justify;font-size:16px;line-height:30px;letter-spacing:1px;color:var( --e-global-color-text );}.elementor-10 .elementor-element.elementor-element-54f24f9{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-e7206d5{width:var( --container-widget-width, 366px );max-width:366px;--container-widget-width:366px;--container-widget-flex-grow:0;top:0px;}body:not(.rtl) .elementor-10 .elementor-element.elementor-element-e7206d5{left:0px;}body.rtl .elementor-10 .elementor-element.elementor-element-e7206d5{right:0px;}.elementor-10 .elementor-element.elementor-element-e7206d5 img{width:100%;}.elementor-10 .elementor-element.elementor-element-cf53f52{width:var( --container-widget-width, 270px );max-width:270px;--container-widget-width:270px;--container-widget-flex-grow:0;top:0px;}body:not(.rtl) .elementor-10 .elementor-element.elementor-element-cf53f52{right:56px;}body.rtl .elementor-10 .elementor-element.elementor-element-cf53f52{left:56px;}.elementor-10 .elementor-element.elementor-element-cf53f52 img{width:100%;}.elementor-10 .elementor-element.elementor-element-c9e49fb{width:var( --container-widget-width, 200px );max-width:200px;--container-widget-width:200px;--container-widget-flex-grow:0;top:300px;}body:not(.rtl) .elementor-10 .elementor-element.elementor-element-c9e49fb{left:0px;}body.rtl .elementor-10 .elementor-element.elementor-element-c9e49fb{right:0px;}.elementor-10 .elementor-element.elementor-element-c9e49fb img{width:100%;}.elementor-10 .elementor-element.elementor-element-9ccae33{width:var( --container-widget-width, 194px );max-width:194px;--container-widget-width:194px;--container-widget-flex-grow:0;top:322px;}body:not(.rtl) .elementor-10 .elementor-element.elementor-element-9ccae33{left:228px;}body.rtl .elementor-10 .elementor-element.elementor-element-9ccae33{right:228px;}.elementor-10 .elementor-element.elementor-element-9ccae33 img{width:100%;}.elementor-10 .elementor-element.elementor-element-9e18893{--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;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-9e18893:not(.elementor-motion-effects-element-type-background), .elementor-10 .elementor-element.elementor-element-9e18893 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F3F3F3;}.elementor-10 .elementor-element.elementor-element-e7e8c44{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--align-items:center;--gap:80px 80px;--row-gap:80px;--column-gap:80px;--padding-top:100px;--padding-bottom:0100px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-0b3a242{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-ae64555{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:center;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-6088bb3.elementor-element{--align-self:center;}.elementor-10 .elementor-element.elementor-element-6088bb3 .elementor-heading-title{font-family:"Outfit", Sans-serif;font-size:40px;font-weight:500;letter-spacing:2px;color:#C9C9C9;}.elementor-10 .elementor-element.elementor-element-dd08eec{text-align:center;}.elementor-10 .elementor-element.elementor-element-dd08eec .elementor-heading-title{font-size:22px;line-height:20px;letter-spacing:2px;color:var( --e-global-color-text );}.elementor-10 .elementor-element.elementor-element-0e6de70{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-537f198{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-567cf56{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:100px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-077227f{--display:flex;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-b7cbdff{--display:flex;--flex-direction:row;--container-widget-width:initial;--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--gap:10px 10px;--row-gap:10px;--column-gap:10px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-b033108{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:2px 0px 0px 0px;}.elementor-10 .elementor-element.elementor-element-b033108 .elementor-icon-wrapper{text-align:center;}.elementor-10 .elementor-element.elementor-element-b033108.elementor-view-stacked .elementor-icon{background-color:#5799D9;}.elementor-10 .elementor-element.elementor-element-b033108.elementor-view-framed .elementor-icon, .elementor-10 .elementor-element.elementor-element-b033108.elementor-view-default .elementor-icon{color:#5799D9;border-color:#5799D9;}.elementor-10 .elementor-element.elementor-element-b033108.elementor-view-framed .elementor-icon, .elementor-10 .elementor-element.elementor-element-b033108.elementor-view-default .elementor-icon svg{fill:#5799D9;}.elementor-10 .elementor-element.elementor-element-b033108 .elementor-icon{font-size:14px;}.elementor-10 .elementor-element.elementor-element-b033108 .elementor-icon svg{height:14px;}.elementor-10 .elementor-element.elementor-element-5ba71ab.elementor-element{--align-self:center;}.elementor-10 .elementor-element.elementor-element-5ba71ab .elementor-heading-title{font-family:"Outfit", Sans-serif;font-size:18px;font-weight:500;letter-spacing:2px;color:#C9C9C9;}.elementor-10 .elementor-element.elementor-element-a8b0114{text-align:center;}.elementor-10 .elementor-element.elementor-element-a8b0114 .elementor-heading-title{font-size:22px;line-height:20px;letter-spacing:2px;color:var( --e-global-color-text );}.elementor-10 .elementor-element.elementor-element-987583b{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-10 .elementor-element.elementor-element-987583b.e-con{--align-self:flex-end;}.elementor-10 .elementor-element.elementor-element-4e3b046{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}@media(min-width:768px){.elementor-10 .elementor-element.elementor-element-1ed4218{--width:500px;}.elementor-10 .elementor-element.elementor-element-54f24f9{--width:240px;}.elementor-10 .elementor-element.elementor-element-0e6de70{--width:280px;}.elementor-10 .elementor-element.elementor-element-987583b{--width:280px;}.elementor-10 .elementor-element.elementor-element-4e3b046{--width:40%;}}/* Start custom CSS for html, class: .elementor-element-8c3f66e *//* ===========================
   ヘッダー＋背景スライド
   =========================== */

.header{
  position:relative;
  text-align:center;
  color:#fff;
  overflow:hidden;
  min-height:78vh;
}

/* 背景スライド全体 */
.header-bg{
  position:absolute;
  inset:0;
  z-index:0;
  overflow:hidden;
}

/* スライド */
.header-bg__slide{
  position:absolute;
  inset:0;
  background-size:cover;
  background-position:50% 0;     /* 上中央揃え */
  opacity:0;
  transition:opacity 1.5s ease-in-out;
  transform-origin:center center;
  animation:kb-zoom 24s ease-in-out infinite alternate;
}

/* 3枚分の画像 */
.header-bg__slide--1{
  background-image:url('/wp-content/uploads/2025/11/slide2.jpg');
}
.header-bg__slide--2{
  background-image:url('/wp-content/uploads/2025/11/slide3.jpg');
}
.header-bg__slide--3{
  background-image:url('/wp-content/uploads/2025/11/slide4.jpg');
}

/* 表示中 */
.header-bg__slide.is-active{
  opacity:1;
}

/* Ken Burns */
@keyframes kb-zoom{
  0%   { transform:scale(1.05); }
  100% { transform:scale(1.18); }
}

/* 中身コンテナ（基準） */
.inner-header{
  position:relative;
  z-index:3;
  width:100%;
  max-width:1200px;
  margin:0 auto;
  padding:0 20px;
}

/* ===========================
   波アニメ
   =========================== */

.waves-wrapper{
  position:absolute;
  left:0;
  right:0;
  top:-2px;
  z-index:2;
}

.waves{
  width:100%;
  height:220px;
  min-height:60px;
  max-height:160px;
  transform:scaleY(-1);
}

.parallax > use{
  animation:move-forever 25s cubic-bezier(.55,.5,.45,.5) infinite;
}
.parallax > use:nth-child(1){ animation-delay:-2s; animation-duration:7s; }
.parallax > use:nth-child(2){ animation-delay:-3s; animation-duration:10s; }
.parallax > use:nth-child(3){ animation-delay:-4s; animation-duration:13s; }
.parallax > use:nth-child(4){ animation-delay:-5s; animation-duration:20s; }

@keyframes move-forever{
  0%   { transform:translate3d(-90px,0,0); }
  100% { transform:translate3d(85px,0,0); }
}

/* ===========================
   FVキャッチコピー（縦書き）
   =========================== */

/* FVキャッチコピー（縦書き） */
.fv-copy{
  position:relative;
  display:flex;
  justify-content:flex-start;   /* 中身は左揃えで並べる */
  align-items:flex-start;       /* 縦書き同士を上揃え */
  gap:20px;

  width:fit-content;
  max-width:100%;
  margin:20px auto 0;           /* 塊として中央に */

  color:#333333;
  text-align:left;

  /* Safari 対策：filter は使わない */
  opacity:0;
  transform:translateY(-10px) scale(1.02);

  animation:fv-copy-in .9s ease-out forwards;
  animation-delay:2s;
}

/* サブコピー */
.fv-copy__sub{
  writing-mode:vertical-rl;
  text-orientation:mixed;
  font-size:clamp(14px, 1.6vw, 16px);
  line-height:2;
  letter-spacing:.1em;
}

/* メインコピー（h1） */
.fv-copy__main{
  writing-mode:vertical-rl;
  text-orientation:mixed;
  font-weight:600;
  font-size:clamp(20px, 4.5vw, 38px);
  line-height:1.3;
  letter-spacing:.1em;
  font-family:"游明朝体","Yu Mincho","Hiragino Mincho ProN",
             "Hiragino Mincho Pro","HG明朝E","ＭＳ Ｐ明朝",serif;
}

/* テキストシャドウ（強めの白） */
.fv-copy__main,
.fv-copy__sub{
  text-align:left;
  text-shadow:
    0 0 3px  rgba(255,255,255,1),
    0 0 10px rgba(255,255,255,0.95),
    0 0 18px rgba(255,255,255,0.9);
}

/* ぼんやり → クリア（blur なし） */
@keyframes fv-copy-in{
  0%{
    opacity:0;
    transform:translateY(-10px) scale(1.02);
  }
  100%{
    opacity:1;
    transform:translateY(0) scale(1);
  }
}

/* ===========================
   TOP 施工実績ボックス（左下固定）
   =========================== */

.top-works-box{
  position:absolute;
  left:40px;        /* ★ 右ではなく左に固定 */
  right:auto;       /* 念のためリセット */
  bottom:40px;      /* 下から 40px */
  width:400px;
  z-index:4;

  display:flex;
  justify-content:flex-start;  /* 中身も左寄せ */
  align-items:flex-end;
}


/* ===========================
   TOP 施工実績カード
   =========================== */

.works-cards{
  display:flex;
  flex-direction:column;
  gap:18px;
  width:100%;
}

/* カード全体 */
.works-card{
  display:flex;
  align-items:center;
  gap:18px;
  padding:10px 10px;
  background:#fff;
  border-radius:8px;
  box-shadow:0 8px 24px rgba(0,0,0,.08);
  text-decoration:none;
  color:#333;
  position:relative;
  overflow:hidden;
  transition:
    box-shadow .25s ease,
    transform .25s ease;
}

.works-card:hover{
  box-shadow:0 10px 28px rgba(0,0,0,.15);
  transform:translateY(-2px);
}

/* サムネイル 1:1 */
.works-card__thumb{
  flex:0 0 90px;
  margin:0;
  border-radius:8px;
  overflow:hidden;
  background:#eee;
}

.works-card__thumb img{
  width:100%;
  height:100%;
  aspect-ratio:1/1;
  object-fit:cover;
  display:block;
}

/* 本文 */
.works-card__body{
  flex:1;
  min-width:0;
}

/* 日付＋NEW */
.works-card__meta{
  display:flex;
  align-items:center;
  gap:10px;
  margin-bottom:6px;
  font-size:14px;
  color:#555;
}

.works-card__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:3px 12px 4px;
  border-radius:999px;
  background:#ff1966;
  color:#fff;
  font-size:12px;
  font-weight:700;
  letter-spacing:.12em;
}

/* タイトル：1行で… */
.works-card__title{
  font-size:16px;
  font-weight:700;
  line-height:1.5;
  margin:0;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  color:#222;
}

/* 矢印 */
.works-card__icon{
  flex:0 0 auto;
  margin-left:14px;
  display:flex;
  align-items:center;
}

.works-card__icon img{
  width:18px;
  height:auto;
  display:block;
  transition:transform .2s ease;
}

/* ホバーで矢印が少し動く */
.works-card:hover .works-card__icon img{
  transform:translateX(4px);
}

/* ===========================
   レスポンシブ
   =========================== */

@media (max-width:768px){
  .header{
    min-height:60vh;
  }

  .inner-header{
    padding:40px 16px 24px;
  }

  .waves{
    height:80px;
  }

  /* キャッチコピーは横書きで縦積み */
  .fv-copy{
    flex-direction:column;
    align-items:flex-start;
    gap:8px;
    margin-top:24px;
  }

  .fv-copy__main,
  .fv-copy__sub{
    writing-mode:horizontal-tb;
    text-orientation:mixed;
    letter-spacing:.08em;
  }

  /* 右下固定を解除して通常のブロックに */
  .top-works-box{
    position:static;
    width:100%;
    margin:24px auto 0;
    padding:0 16px;
    display:block;
  }

  .works-card{
    flex-direction:column;
    align-items:flex-start;
  }

  .works-card__thumb{
    flex:0 0 auto;
    width:100%;
    max-width:260px;
  }

  .works-card__icon{
    position:absolute;
    right:14px;
    bottom:14px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-8310fb8 *//* 2つ並びのバナー */
.top-banners {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
}

/* 個別バナー */
.top-banner {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 8px;
  text-decoration: none;
  color: #ffffff;
  min-height: 200px;
}

/* 背景画像用レイヤー */
.top-banner__bg {
  position: absolute;
  inset: 0;
  background-size: 110%;            /* 少し大きめにしておく */
  background-position: center;
  background-repeat: no-repeat;
  transform: scale(1);
  transition: transform 0.6s ease;  /* ふわっと動く */
}

/* 各バナーごとの画像 */
.top-banner--excellent .top-banner__bg {
  background-image: url('/wp-content/uploads/2025/11/img12.jpg');
}
.top-banner--sdgs .top-banner__bg {
  background-image: url('/wp-content/uploads/2025/11/img11.jpg');
}

/* 黒グラデ */
.top-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    to right,
    rgba(0, 0, 0, 0.55) 0%,
    rgba(0, 0, 0, 0.35) 40%,
    rgba(0, 0, 0, 0.10) 100%
  );
  pointer-events: none;
  z-index: 1;
}

/* テキスト */
.top-banner__overlay {
  position: absolute;
  left: 32px;
  bottom: 32px;
  z-index: 2;
}

.top-banner__en {
  font-family: "Outfit", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
               sans-serif;
  font-size: 14px;
  letter-spacing: 0.2em;
  margin-bottom: 6px;
}

.top-banner__ja {
  font-size: 22px;
  font-weight: 700;
  line-height: 1.5;
}

/* 右下の「白丸＋矢印」 */
.top-banner__arrow-wrap {
  position: absolute;
  right: 32px;
  bottom: 32px;
  width: 44px;
  height: 44px;
  border-radius: 999px;
  background-color: #ffffff;
  box-shadow: 0 6px 18px rgba(0, 0, 0, 0.25);
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.top-banner__arrow {
  width: 18px;
  height: 18px;
  background-color: #333333;
  -webkit-mask: url('/wp-content/uploads/2025/11/yazirushi2.svg') no-repeat center / contain;
  mask: url('/wp-content/uploads/2025/11/yazirushi2.svg') no-repeat center / contain;
}

/* ホバー時の動き */
.top-banner:hover .top-banner__bg {
  transform: scale(1.08);           /* 画像だけズーム */
}

.top-banner:hover .top-banner__arrow-wrap {
  transform: translateX(4px);       /* 矢印の円がスッと動く */
  box-shadow: 0 10px 24px rgba(0, 0, 0, 0.3);
}

/* ちょっとだけゆらぎアニメーション（任意） */
.top-banner:hover .top-banner__bg {
  animation: banner-pan 6s ease-out forwards;
}

@keyframes banner-pan {
  0% {
    transform: scale(1.02) translateX(0);
  }
  100% {
    transform: scale(1.08) translateX(6px);
  }
}

/* スマホでは1カラム */
@media (max-width: 767px) {
  .top-banners {
    grid-template-columns: 1fr;
    gap: 16px;
  }

  .top-banner {
    min-height: 160px;
  }

  .top-banner__overlay {
    left: 20px;
    bottom: 24px;
  }

  .top-banner__ja {
    font-size: 18px;
  }

  .top-banner__arrow-wrap {
    right: 20px;
    bottom: 24px;
    width: 38px;
    height: 38px;
  }
}
/* 文字色を常に白に固定（hover時も） */
.top-banner__en,
.top-banner__ja {
  color: #ffffff;
}

.top-banner:hover .top-banner__en,
.top-banner:hover .top-banner__ja {
  color: #ffffff;
}/* End custom CSS */
/* Start custom CSS for shortcode, class: .elementor-element-2d07f8c *//* ニュース丸カプセル一覧ラッパー */
.news-pills {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

/* 1行のカプセルリンク */
.news-pill {
  display: flex;
  align-items: center;
  gap: 24px;
  padding: 20px 24px;
  border-radius: 999px;
  background-color: #f3f3f3;
  text-decoration: none;
  color: #333333;
  font-size: 14px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.06);
  transition: background-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

/* 日付部分 */
.news-pill__date {
  flex: 0 0 auto;
  font-family: "Outfit", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI",
               sans-serif;
  letter-spacing: 0.16em;
  font-size: 13px;
  color: #555555;
}

/* タイトル部分（横に伸びて途中で…） */
.news-pill__title {
  flex: 1 1 auto;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* ホバー時のふわっと感 */
.news-pill:hover {
  background-color: #e5e5e5;
  transform: translateY(-1px);
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.08);
}

/* スマホでは余白少し詰める */
@media (max-width: 767px) {
  .news-pill {
    padding: 8px 16px;
    gap: 16px;
  }
  .news-pill__date {
    font-size: 12px;
  }
}/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-d3ab85b *//* ===== 優良工事 受賞バナー ===== */

.award-banner {
  position: relative;
  display: block;
  width: 320px;              /* お好みで調整 */
  max-width: 100%;
  aspect-ratio: 4 / 3;       /* 比率固定（4:3） */
  border-radius: 18px;
  overflow: hidden;
  text-decoration: none;
  color: #ffffff;
}

/* 背景写真 */
.award-banner__bg {
  position: absolute;
  inset: 0;
  background-image: url('/wp-content/uploads/2025/11/award.jpg');
  background-size: cover;
  background-position: center;
  transform: scale(1);
  transition: transform 0.6s ease;   /* ホバーでふわっと */
}

/* ゴールドのエンブレム */
.award-banner__badge {
  position: absolute;
  left: 20px;
  top: 20px;
  width: 90px;               /* 大きさはお好みで */
  height: auto;
  z-index: 2;
  transform: translate(0, 0);
  transition: transform 0.6s ease;
}

/* テキスト */
.award-banner__text {
  position: absolute;
  left: 24px;
  bottom: 24px;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.award-banner__line {
  display: block;
  font-size: 18px;
  font-weight: 700;
  color: #ffffff;             /* 通常時 白 */
}

/* ホバー時も文字は白のまま固定 */
.award-banner:hover .award-banner__line {
  color: #ffffff;
}

/* ホバーアニメーション */
.award-banner:hover .award-banner__bg {
  transform: scale(1.06);     /* 写真を少しズーム */
}

.award-banner:hover .award-banner__badge {
  transform: translate(4px, -4px) scale(1.03);  /* 右上にフワッと動かす */
}

/* スマホで少し小さくしたい場合（任意） */
@media (max-width: 767px) {
  .award-banner {
    width: 100%;
  }
  .award-banner__line {
    font-size: 16px;
  }
}/* End custom CSS */