.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-358 .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-358 .elementor-element.elementor-element-65596bd:not(.elementor-motion-effects-element-type-background), .elementor-358 .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-358 .elementor-element.elementor-element-65596bd::before, .elementor-358 .elementor-element.elementor-element-65596bd > .elementor-background-video-container::before, .elementor-358 .elementor-element.elementor-element-65596bd > .e-con-inner > .elementor-background-video-container::before, .elementor-358 .elementor-element.elementor-element-65596bd > .elementor-background-slideshow::before, .elementor-358 .elementor-element.elementor-element-65596bd > .e-con-inner > .elementor-background-slideshow::before, .elementor-358 .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-358 .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;}.elementor-widget-html.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-html .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-html .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-html:not(.premium-gbadge-custom) .premium-global-badge-{{ID}} .premium-badge-container, .elementor-widget-html.premium-gbadge-custom .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-html .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}@media(max-width:767px){.elementor-358 .elementor-element.elementor-element-65596bd{--min-height:20vh;}}/* 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 text-editor, class: .elementor-element-20438ee */.service_sec{
    text-align: center;
    padding:70px 0 ;
}
.service_sec h2{
    letter-spacing: 2px;
    font-weight: 600;
    margin: 0 0 40px;
}
.service_sec p{
    line-height: 1.7;
    margin: 0 0 0px;
}
/* =========================
   service_sec SP最適化
========================= */
@media (max-width: 767px){

  .service_sec{
    padding: 40px 6%;     /* 70px → SPは詰める */
    text-align: center;   /* そのままでOK */
  }

  .service_sec h2{
    margin: 0 0 24px;     /* 見出し下の余白を縮小 */
    letter-spacing: 1px; /* 2px → SPでは控えめ */
    font-size: 1.5rem;
    line-height: 1.35;
  }

  .service_sec p{
    font-size: 0.95rem;
    line-height: 1.75;   /* SPは少し広めが読みやすい */
    margin: 0;
  }
}/* End custom CSS */