.elementor-widget-container.premium-cursor-ftext .premium-global-cursor-{{ID}} .premium-cursor-follow-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-container .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-container .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-container:not(.premium-gbadge-custom) .premium-global-badge-{{ID}} .premium-badge-container, .elementor-widget-container.premium-gbadge-custom .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-container .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-677 .elementor-element.elementor-element-65596bd{--display:flex;--min-height:35vh;--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;--justify-content:center;--overlay-opacity:0.5;}.elementor-677 .elementor-element.elementor-element-65596bd:not(.elementor-motion-effects-element-type-background), .elementor-677 .elementor-element.elementor-element-65596bd > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-image:url("https://need-tech.jp/wp-content/uploads/2025/12/AdobeStock_1609414625_Preview.jpeg");background-repeat:no-repeat;background-size:cover;}.elementor-677 .elementor-element.elementor-element-65596bd::before, .elementor-677 .elementor-element.elementor-element-65596bd > .elementor-background-video-container::before, .elementor-677 .elementor-element.elementor-element-65596bd > .e-con-inner > .elementor-background-video-container::before, .elementor-677 .elementor-element.elementor-element-65596bd > .elementor-background-slideshow::before, .elementor-677 .elementor-element.elementor-element-65596bd > .e-con-inner > .elementor-background-slideshow::before, .elementor-677 .elementor-element.elementor-element-65596bd > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#000000;--background-overlay:'';}.elementor-widget-text-editor.premium-cursor-ftext .premium-global-cursor-{{ID}} .premium-cursor-follow-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-text-editor .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-text-editor .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-text-editor:not(.premium-gbadge-custom) .premium-global-badge-{{ID}} .premium-badge-container, .elementor-widget-text-editor.premium-gbadge-custom .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-text-editor .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-widget-text-editor{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );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-677 .elementor-element.elementor-element-2312511{--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:70px;--padding-bottom:70px;--padding-left:0px;--padding-right:0px;}.elementor-widget-posts .elementor-button{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts.premium-cursor-ftext .premium-global-cursor-{{ID}} .premium-cursor-follow-text{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-posts .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-posts .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-posts:not(.premium-gbadge-custom) .premium-global-badge-{{ID}} .premium-badge-container, .elementor-widget-posts.premium-gbadge-custom .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-posts .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-widget-posts .elementor-post__title, .elementor-widget-posts .elementor-post__title a{color:var( --e-global-color-secondary );font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );}.elementor-widget-posts .elementor-post__meta-data{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .elementor-post__excerpt p{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );}.elementor-widget-posts .elementor-post__read-more{color:var( --e-global-color-accent );}.elementor-widget-posts a.elementor-post__read-more{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-post__card .elementor-post__badge{background-color:var( --e-global-color-accent );font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-weight:var( --e-global-typography-accent-font-weight );}.elementor-widget-posts .elementor-pagination{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-widget-posts .e-load-more-message{font-family:var( --e-global-typography-secondary-font-family ), Sans-serif;font-weight:var( --e-global-typography-secondary-font-weight );}.elementor-677 .elementor-element.elementor-element-87a8680{--grid-row-gap:30px;--grid-column-gap:30px;}.elementor-677 .elementor-element.elementor-element-87a8680 > .elementor-widget-container{margin:40px 0px 40px 0px;}.elementor-677 .elementor-element.elementor-element-87a8680 .elementor-post__meta-data span + span:before{content:"///";}.elementor-677 .elementor-element.elementor-element-87a8680 .elementor-post{border-style:solid;border-width:0px 0px 1px 0px;border-color:#C3C3C3;}.elementor-677 .elementor-element.elementor-element-87a8680 .elementor-post__title, .elementor-677 .elementor-element.elementor-element-87a8680 .elementor-post__title a{font-family:"Noto Sans JP", Sans-serif;font-weight:500;}.elementor-677 .elementor-element.elementor-element-87a8680 .elementor-post__meta-data{color:#1F1F1F;font-family:"Noto Sans JP", Sans-serif;font-size:16px;font-weight:400;}@media(max-width:1024px){.elementor-677 .elementor-element.elementor-element-87a8680 > .elementor-widget-container{margin:0px 0px 20px 0px;}}@media(max-width:767px){.elementor-677 .elementor-element.elementor-element-65596bd{--min-height:20vh;}.elementor-677 .elementor-element.elementor-element-87a8680 > .elementor-widget-container{margin:-20px 0px 20px 0px;}.elementor-677 .elementor-element.elementor-element-87a8680 .elementor-post__meta-data{font-size:16px;}}/* Start custom CSS for text-editor, class: .elementor-element-e3617d4 */.single_page_ttl {
    text-align: center;
}
.single_page_ttl h1{
    margin: 0;
    color: #fff;
    letter-spacing: 5px;
}
.single_page_ttl p{
    
    margin: 0 0 5px;
    color: #fff;
    letter-spacing: 5px;
}/* =========================
   single_page_ttl SP最適化
========================= */
@media (max-width: 767px){

  .single_page_ttl{
    padding: 0 0%;
    text-align: center; /* そのままでOK */
  }

  .single_page_ttl h1{
    letter-spacing: 2px;   /* 5px → SPでは広すぎる */
    font-size: 1.6rem;    /* 見出しを適正サイズに */
    line-height: 1.35;
    margin: 0 0 6px;
  }

  .single_page_ttl p{
    letter-spacing: 1.5px; /* サブはさらに控えめ */
    font-size: 0.85rem;
    margin: 0;
    opacity: 0.9;
  }
}/* End custom CSS */
/* Start custom CSS for posts, class: .elementor-element-87a8680 */.elementor-post__text{
    margin: 0 0%;
    padding-bottom: 15px;
}
.elementor-post__title{
    float: right;
    width: 86%;
    margin-top: 0px;
    transition: all 0.3s;
    
}
.elementor-post__title a:hover{
    color:#1f1f1f90; 
    transition: all 0.3s;
    
}
.elementor-post__meta-data{
    float: left;
    width: 120px;
    margin-top: 0px;
}
@media screen and (max-width: 1023px) {
.elementor-post__text{
    margin: 0 3%;
    padding-bottom: 15px;
}
.elementor-post__title{
    float: right;
    width: 80%;
    margin-top: 0px;
    transition: all 0.3s;
    
}
.elementor-post__meta-data{
    float: left;
    width: 120px;
    margin-top: 3px;
}}

@media only screen and (max-width: 768px) {.elementor-post__text{
    margin: 0 3%;
    padding-bottom: 10px;
}
.elementor-post__title{
    float: none;
    width: 75%;
    margin-top: 0px;
    transition: all 0.3s;
    
}
.elementor-post__meta-data{
    float: none;
    width: 100%;
    margin-top: 5px;
}}


/* =========================
   Elementor Posts：PC/Tablet を flex 化（見た目を整える）
========================= */
.elementor-post{
  display: flex;
  gap: 18px;
  align-items: baseline;
  padding: 14px 0;
  border-bottom: 1px solid rgba(0,0,0,0.10);
}

.elementor-post:last-child{
  border-bottom: none;
}

.elementor-post__text{
  margin: 0 auto;
  padding-bottom: 0; /* 行の中に入れるので不要に */
  width: min(1100px, 90%);
}

.elementor-post__meta-data{
  float: none !important;
  width: 140px;                 /* 日付幅を安定 */
  margin-top: 0 !important;
  font-size: 0.9rem;
  color: rgba(0,0,0,0.65);
  flex: 0 0 140px;
}

.elementor-post__title{
  float: none !important;
  width: auto !important;
  margin-top: 0 !important;
  flex: 1 1 auto;
  transition: color 0.3s;
}

.elementor-post__title a{
  display: inline-block;
  line-height: 1.55;
  text-decoration: none;
}

/* hoverはそのまま活かしつつ上品に */
.elementor-post__title a:hover{
  color: rgba(31,31,31,0.55);
}

/* =========================
   Tablet：余白だけ少し詰める
========================= */
@media (max-width: 1023px){
  .elementor-post__text{
    width: 94%;
  }
  .elementor-post__meta-data{
    flex-basis: 120px;
    width: 120px;
  }
}

/* =========================
   SP：縦積み（日付→タイトル）＋左右余白
========================= */
@media (max-width: 768px){

  .elementor-post{
    flex-direction: column;
    gap: 6px;
    padding: 12px 0;
  }

  .elementor-post__text{
    width: 100%;
    margin: 0;
    padding: 0 6%;
  }

  .elementor-post__meta-data{
    width: 100% !important;
    flex: none;
    font-size: 0.85rem;
  }

  .elementor-post__title{
    width: 100% !important;
  }

  .elementor-post__title a{
    font-size: 1rem;
    padding: 4px 0;
  }
}/* End custom CSS */