.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-529 .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-529 .elementor-element.elementor-element-65596bd:not(.elementor-motion-effects-element-type-background), .elementor-529 .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-529 .elementor-element.elementor-element-65596bd::before, .elementor-529 .elementor-element.elementor-element-65596bd > .elementor-background-video-container::before, .elementor-529 .elementor-element.elementor-element-65596bd > .e-con-inner > .elementor-background-video-container::before, .elementor-529 .elementor-element.elementor-element-65596bd > .elementor-background-slideshow::before, .elementor-529 .elementor-element.elementor-element-65596bd > .e-con-inner > .elementor-background-slideshow::before, .elementor-529 .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-529 .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:0px;--padding-bottom:70px;--padding-left:0px;--padding-right:0px;}.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 );}.elementor-widget-google_maps.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-google_maps .premium-global-cursor-{{ID}}{color:var( --e-global-color-primary );fill:var( --e-global-color-primary );}.elementor-widget-google_maps .premium-global-badge-{{ID}} .premium-badge-text{color:var( --e-global-color-secondary );}.elementor-widget-google_maps:not(.premium-gbadge-custom) .premium-global-badge-{{ID}} .premium-badge-container, .elementor-widget-google_maps.premium-gbadge-custom .premium-global-badge-{{ID}} .premium-badge-container{background-color:var( --e-global-color-primary );}.elementor-widget-google_maps .premium-global-badge-{{ID}} .premium-badge-icon{color:var( --e-global-color-secondary );fill:var( --e-global-color-secondary );}.elementor-529 .elementor-element.elementor-element-3120fed{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 55px 0px 55px;}.elementor-529 .elementor-element.elementor-element-3120fed iframe{height:400px;}.elementor-529 .elementor-element.elementor-element-743448a{--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:70px;--padding-left:0px;--padding-right:0px;}.elementor-529 .elementor-element.elementor-element-743448a:not(.elementor-motion-effects-element-type-background), .elementor-529 .elementor-element.elementor-element-743448a > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#428ECA12;}@media(max-width:767px){.elementor-529 .elementor-element.elementor-element-65596bd{--min-height:20vh;}.elementor-529 .elementor-element.elementor-element-3120fed{padding:0px 0px 0px 0px;}.elementor-529 .elementor-element.elementor-element-3120fed iframe{height:250px;}}/* 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: left;
    padding:70px 0 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 0% 0;   /* 上70px→40px、左右に余白 */
    text-align: center;     /* 左寄せ維持 */
  }

  .service_sec h2{
    margin: 0 0 22px;     /* 40px → SPでは詰める */
    letter-spacing: 1px; /* 2px → 読みやすく */
    font-size: 1.5rem;
    line-height: 1.35;
  }

  .service_sec p{
    font-size: 0.95rem;
    line-height: 1.75;
    margin: 0;
  }
}/* End custom CSS */