
/* レスポンシブ */
@media screen and (max-width: 1200px) {
  .lp_page {
    max-width: 100%;
  }
}

@media screen and (max-width: 1151px) {}


@media screen and (max-width: 950px) {

  .p-sub_pc_on {
    display: none !important;
  }

  table .p-sub_pc_on {
    display: none !important;
  }

  .p-sub_sp_on {
    display: block !important;
    z-index: 1 !important;
  }

  table .p-sub_sp_on {
    display: table-cell !important;
  }


  h1, h2, h3, section, [id] {
  scroll-margin-top: 60px;
  }

  .l-inner {
    width: 90%;
    margin: 80px auto;
  }

  #page_header{
    height: 46vh;
  }

  #page_content{
    width: auto;
    padding: 0 !important;
    margin: 0 !important;
  }

  .kv-title {
    font-size: 40px;
  }

  .kv-sub_title{
    margin-bottom: 0rem;
  }

  .p-top_head{
    font-size: 40px !important;
  }

  .c-table tr{
    display: block;
  }

  .c-table tr th, td {
    display: block;
  }

  .c-pagination-inner{
    max-width: 140px;
  }

  /* ヘッダー */
  /* ヘッダー帯（全幅固定・上部固定） */


  /* include-footer-contact */

  .include-footer-contact{
    padding: 0;
  }

  .include-footer-contactwrap-inner{
    padding: 80px 0;
  }

  .include-footer-contact-content{
    flex-direction: column;
  }

  .include-footer-contact-inner{
    padding: 40px 32px;
  }

  .include-footer-contact-head{
    font-size: 24px;
    width: 100%;
    text-align: center;
    margin-bottom: 2rem;
  }

  .include-footer-contact-head-en{
    font-size: 75px;
    margin-bottom: -2rem;
  }

  .include-footer-contact-tel{
    padding-right: 0;
    margin-bottom: 2rem;
  }

  .include-footer-contact-tel .p-top_text{
    font-size: 20px;
    font-weight: 500;
    line-height: 1.2 !important;
  }

  .include-footer-contact-tel::after{
    content: none;
  }

  .include-footer-contact-btns{
    padding-left: 0;
  }

  .tel-number{
    font-size: 36px;
  }

  .p-sub_head {
    font-size: 23px !important;
    margin-bottom: 25px !important;
    /* white-space: nowrap; */
  }


  /* トップページ */

  .l-header_contents_list {
    top: 25%;
    left: 7%;
    transform: none;
  }

  .l-header_contents_phrase_text-red {
    font-size: 48px;
  }

  .l-header_contents_phrase_text{
    font-size: 25px;
    line-height: 1;
    margin-bottom: 1rem;
  }

  .l-header_contents_phrase_text_space{
    margin-bottom: 1rem;
  }

  .l-header_contents_sub_text{
    width: 90%;
  }
  
  .l-header_contents_img{
    /* 幅を可変にしつつ上限を付ける */
    width: clamp(160px, 60vw, 320px);
    max-width: calc(100% - 32px); /* 端末の左右16pxずつの余白を確保して溢れ回避 */
    height: auto;
    display: block;
  }
  
  .p-top_about-inner{
    padding: 0;
    margin-top: 0;
  }

  .p-top_about-list {
    display: block;
  }

  .p-top_about-title::after{
    top: 64px;
  }

  .p-top_about-title{
    margin-bottom: 6rem;
  }

  .p-top_about-list-textwrap {
    width: 100%;
    padding: 2rem 0;
  }
  
  .p-top_about-list-imgwrap {
    width: calc(75vw - 8%);
    margin-left: auto;
    margin-right: calc(50% - 50vw);
    height: 340px;
    padding: 0;
    /* border-radius: 10px 0 0 10px; */
    position: static;
    left: auto;
    transform: none;
  }

  .p-top_about-list-imgwrap img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 10px 0 0 10px;
  }

  .p-top_business-bg{
    padding: 0;
  }

  .p-top_business-list{
    display: block;
  }

  .p-top_business-list-item{
    width: 100%;
  }

  .p-top_business-list-item:first-child{
    margin-bottom: 4rem;
  }

  .p-top_works-wrap{
    display: block;
  }

  .p-top_works-text-textwrap{
    width: 100%;
  }

  .p-top_works-inner{
    padding: 0;
  }

  .p-top_works-list{
    width: 100%;
  }

  .p-top_works-title::after{
    top: 64px;
  }

  .p-top_associate-bg{
    margin-top: 0;
    padding: 0;
  }

  :root{
    --associate-left: 0px;
    --associate-row-h: 400px;
  }

  .p-top_associate-inner{
    height: auto;
    margin-bottom: 0;
  }

  .p-top_associate-img-list{
    left: 8%;
    transform: none;
    width: 100%;
    padding-left: 0;
    grid-template-columns: 40% 30% 1fr;
    gap: 10px;
    height: auto;
  }

  .p-top_associate-img-list-item{
    height: var(--associate-row-h);
  }

  .p-top_associate-messagewrap{
    position: relative;
    width: 100%;
    padding: 24px 0 0;
    margin-top: 8rem;
  }

  .p-top_associate-message-text{
    font-size: 32px;
  }

  .p-top_associate-bg::after{
    width: 100%;
    height: 150px;
  }

  .p-top_associate-title{
    margin-bottom: 6rem;
  }

  .p-top_associate-title::after{
    bottom: -40px;
  }

  .breadcrumbsWrap{
    transform: none;
    left: 5%;
    top: 12%;
    width: 90%;
    overflow-x: auto;
    overflow-y: hidden;
    word-break: keep-all;
    white-space: nowrap;
  }

  /* サブページ---company */
  .p-compan_greeting{
    margin-bottom: 4rem;
  }

  .p-company_greeting-name{
    font-size: 23px;
  }
  
  .p-company_greeting-name-title{
    font-size: 18px;
  }

    /* サブページ---recruit */
  .p-recruit_environment-text{
    width: 90%;
    margin: 0 auto;
  }

  .p-company_greeting-name{
    font-size: 23px;
  }
  
  .p-company_greeting-name-title{
    font-size: 18px;
  }

  /* サブページ---works */
  .p-works_list_wrapper {
    margin-bottom: 10vw;
  }

  .p-works_inner {
      padding: 8rem 0;
  }

  .p-works_list{
    grid-template-columns: auto;
    gap: 12vw;
  }

  .p-works_list_item_inner {
      padding: 4vw 8vw 16vw;
  }

  .p-works_category {
      margin: 4vw 0 4.5vw;
      padding: 2vw 4vw;
  }

  .c-btn_view-more_wrapper .c-btn_view-more {
      justify-content: right;
  }

  /* サブページ---work */
  

  /* サブページ---work-single */

  .p-works-single_inner {
      padding: 80px 0;
  }

  .p-works-single_post_category {
      margin: 0 0 5vw;
  }

  .p-works-single_post_header_inner {
      display: block;
  }

  .p-works-single_post_title {
      margin-bottom: 5vw;
  }

  .p-works-single_post_header_inner p {
      padding: 0;
  }

  .p-works-single_inner .c-btn_view-more_wrapper {
      transform: none;
  }

  .p-works-single_before-after{
    gap: 15px;
  }

  .p-entry__thumbnail{
      width: 100%;
      height: 230px;
      margin: 0 auto;
  }

  /* サブページ---flow */
  .p-flow_item-head-step {
      width: 35%;
      border-radius: 32px;
      margin-right: 16px;
      font-size: 20px;
  }

  .p-flow_item-content-img{
    width: 30%;
  }

  .p-flow_item-content-text{
    width: 60%;
  }


  /* サブページ---faq */
  .p-faq_accordion {
      margin-bottom: 14px;
      border-radius: 6px;
  }

  .p-faq_accordion summary {
      display: flex;
      align-items: flex-start;
      position: relative;
      padding: 16px 50px 16px 65px;
      font-size: 15px;
      line-height: 1.6;
      cursor: pointer;
  }

  .p-faq_accordion-q-head {
      position: absolute;
      left: 5%;
      top: 0;
      bottom: 0;
      margin: auto 0;
      width: 34px;
      height: 34px;
      line-height: 34px;
      font-size: 18px;
      background: var(--primary-color);
      color: #fff;
      border-radius: 50%;
      text-align: center;
  }

  .p-faq_accordion summary::before {
      right: 22px;
      width: 2px;
      height: 14px;
      background: var(--primary-color);
  }

  .p-faq_accordion summary::after {
      right: 16px;
      width: 14px;
      height: 2px;
      background: var(--primary-color);
  }

  .p-faq_accordion[open] .p-faq_accordion-a {
      display: flex;
      align-items: flex-start;
      flex-direction: row;
  }

  .p-faq_accordion-a-head {
      width: 34px;
      height: 34px;
      line-height: 34px;
      font-size: 18px;
      margin-right: 10px;
      margin-left: 0;
      flex-shrink: 0;
      margin: auto 0;
  }

  .p-faq_accordion-a-text {
      font-size: 15px;
      line-height: 1.7;
      flex: 1;
      margin-right: 0;
      margin-left: 20px;
  }

  .p-faq_accordion-divider {
      margin: 16px 50px 16px 65px;
      height: 3px;
      background-size: 8px 3px;
  }

  .faq-h2-businesspartner {
      margin-top: 60px !important;
      margin-bottom: 20px;
  }

  .p-faq_accordion-a-text-img{
  width: 90%;
}

  /* サブページ---service-mokukouji */
  .features {
    position: relative;
    left: 50%;
    width: 100%;
    /* ← 画面幅いっぱい */
    transform: translateX(-50%);
    /* ← 中央に戻す */
    background-color: #F4F7F9;
    padding: 0;
    margin-top: 70px
  }

  .features__title {
    font-size: 20px;
  }

  .features__text {
      text-align: left;
  }

  .feature-item {
      width: 100%;
      max-width: 280px;
      margin-bottom: 2rem;
  }


  .p-service-setsubikouji_opening {
      display: block;
  }

  .p-service-setsubikouji_opening-img-wrap {
      width: 100%;
  }

  .p-service-setsubikouji_opening-text-wrap {
      width: 100%;
  }

  .feature-item__title {
      margin: 20px;
  }

  /* サブページ---service-reform */
  .p-service-reform_opening{
    display: block;
  }
  
  .p-service-reform_opening-img-wrap{
    width: 100%;
  }
  
  .p-service-reform_opening-text-wrap{
    width: 100%;
  }

  .p-service-reform_menu{
    margin-top: 4rem;
  }

  .p-service-reform_menu-list{
    display: block;
  }

  .p-service-reform_menu-list-item{
    width: 100%;
  }

  .p-service-reform_flow{
    margin-top: 4rem;
  }

  .p-service-reform_flow-item-head-title{
    width: 100%;
  }

  .p-service-reform_flow-item-head{
    display: block;
    margin-bottom: 1.2rem;
  }

  .p-service-reform_flow-item-head-step{
    font-size: 20px;
    width: 40%;
    margin-right: 1rem;
  }

  .p-service-reform_flow-item-content{
    display: block;
    margin-bottom: 2rem;
    padding-bottom: 2rem;
  }

  .p-service-reform_flow-item-content-img{
    width: 100%;
    margin-bottom: 2rem;
  }

  .p-service-reform_flow-item-content-img img{
    width: 100%;
  }

  .p-service-reform_flow-item-content-text{
    width: 100%;
    margin-top: 2rem;
  }


  /* サブページ---partner */
  .p-partner-banner {
    height: auto;
    padding: 40px 0;
  }

  .p-partner-banner_content{
    position: relative;
    max-width: 90%;
    padding: 30px 20px;
  }

  .p-partner-banner_title {
      font-size: 20px;
  }

  .p-partner-banner_text {
      font-size: 14px;
  }

  .p-partner-banner_content {
      max-width: 80%;
  }

  .p-partner-banner_title {
      font-size: 20px;
      line-height: 30px;
  }
  
  .p-partner_profile{
    margin-top: 0;
  }

  .post_content p {
      line-height: 2;
      padding-left: 0 !important;
  }

  /* サブページ---news */
  .p-sub_news_inner {
    display: block;
    padding: 0;
  }

  .p-sub_news_main_contents {
      width: 100%;
      margin-bottom: 4rem;
  }

  .p-sub_news_side_contents {
      width: 100%;
  }

  .p-sub_news_list {
      margin-bottom: 4vw;
  }

  .p-sub_news_list a {
      padding: 4vw;
  }

  .p-sub_news_date {
      font-size: 14px;
      margin-bottom: 8px;
  }

  .p-sub_news_title {
      font-size: 18px;
      line-height: 1.6;
  }

  .p-sub_news_side_contents_item_inner {
      padding: 1.5rem;
  }

  .p-sub_news_side_title {
      font-size: 18px;
      margin-bottom: 1.5rem;
  }

  .p-sub_news_side_contents_list a {
      font-size: 14px;
  }

  .p-sub_news_side_date {
      font-size: 12px;
  }

  .p-sub_news_side_post_title {
      font-size: 14px;
      line-height: 1.6;
  }

  .p-sub_news_side_contents_item {
      margin-bottom: 45px;
  }

  .page-nation {
      margin-top: 8vw;
  }

  /* サブページ---news-single */

  .p-single-news_post_wrapper{
    padding: 2rem;
  }

  /* サブページ---privacy-policy */
  .p-privacy-policy_head_text_wrapper {
      margin-bottom: 40px;
  }

  .p-privacy-policy_text a{
    color: var(--primary-color);
  }


  /* サブページ---contact */

  .p-faq_title_wrapper {
    margin-bottom: 4rem;
  }

  .p-contact_content {
    padding: 2rem 2rem;
    width: 80%;
  }

  .p-contact_content_list{
    width: 100%;
  }

  .p-contact_head_text {
    font-size: 16px;
  }

  .p-contact_text {
    width: 100%;
    grid-template-columns: repeat(2, 1fr);
    grid-column-gap: 1vw;
    justify-content: unset;
  }

  .p-contact_main_text {
    order: 2;
  }

  .p-contact_sub_text {
    width: 26px;
    order: 1;
    margin: 0 0.5rem 0 0;
  }

  .p-contact_content_list_item {
    display: grid;
    gap: 0.5rem;
  }

  .p-contact_text {
    font-size: 16px !important;
  }

  .p-contact_input {
    width: 100%;
  }

  .p-contact_text_sub {
    font-size: 14px !important;
  }

  .wpcf7 .contact_submit {
    font-size: 16px;
    width: 80%;
  }

  .p-contact_submit::before {
    top: 27%;
    right: 12%;
  }

  .wpcf7 input, .wpcf7 textarea, .wpcf7 select{
    width: 100%;
  }

  .p-contact_checkbox input{
    width: 6%;
  }

  .p-contact_content_footer{
    margin-top: 4rem;
  }

  /* サブページ---contact-complete */

  .p-contact-complete_head_text {
      font-size: 22px;
  }

  .p-contact-complete_body_text.c-font-c-F07575 {
      font-size: 14px;
  }

  .c-btn-circle_text {
      font-size: 16px;
  }

  .c-btn-circle a {
      gap: 1rem;
      padding: 1rem 2rem;
  }

  .p-contact-complete_body_text {
      text-align: left;
  }

  .bg_image.pc {
      display: none;
  }
  .bg_image.mobile {
      display: block;
  }
  /* top renovation */
  .p-top_renovation-inner {
    padding: 0 20px;
  }
  .p-top_renovation-list-item {
    background-image: url(../img/common/sp_top_sentence.png); /* SP用画像 */
    background-size: 110%;
    background-position: calc(50% - 20px) 75px;
    padding: 2rem 0 0 0;
  }

  .p-top_renovation_opening {
    flex-direction: column;
    padding: 40px 20px;
    gap: 75px;
  }

  .p-top_renovation_opening-text-wrap {
    width: 100%;
    padding-top: 0;
  }

  .p-top_renovation_opening-img-wrap {
    width: 100%;
    padding-top: 0;
    padding-bottom: 0;
  }

  .p-top_renovation_opening-img img {
    width: 100%;
    height: auto;
  }

  .p-top_renovation_opening-main-head {
    font-size: 22px;
  }

  .p-top_renovation_opening-sub-head {
    font-size: 22px;
  }

  .p-top_renovation_opening-text,
  .p-top_renovation_opening-sub-text {
    font-size: 14px;
  }

  /* 感謝状セクション */
    .item-kansya {
        width: 100%;        /* SPは100%に戻す */
        margin-left: 0;
        overflow: hidden;
    }

    .item-kansya.p-top_renovation_opening {
        padding: 0;
    }

    .item-kansya.p-top_renovation_opening-img {
        align-items: center;
    }

  .item-kansya-inner {
    flex-direction: column;
    padding: 80px 20px;
    gap: 24px;
    max-width: 100%;
  }

  .item-kansya .p-top_renovation_opening-img-wrap {
    order: 2;
    width: 100%;
    padding: 0;
  }

  .item-kansya .p-top_renovation_opening-text-wrap {
    order: 1;
    width: 100%;
    padding: 0;
    text-align: center;
  }

  .item-kansya .p-top_renovation_opening-img img {
    width: 100%;
    height: auto;
  }

  .item-kansya .p-top_renovation_opening-img img {
    width: 100%;
    height: auto;
  }
   /* ===== サービス一覧：1列 ===== */
  .p-top_works-title{
    font-size: 22px;
  }

  .p-top-work_menu-list {
    display: flex;
    flex-direction: column;
  }

  .p-top-work_menu-list-item {
    width: 100%;
  }

  .p-top-work_menu-link {
    display: block;
    width: 100%;
    height: 126px;
    position: relative;
    text-align: center;
    align-items: center;
  }

  .p-top-work_menu-link span {
    writing-mode: horizontal-tb; /* 縦書き解消 */
    white-space: normal;
    word-break: keep-all;
    font-size: 29px;
    font-weight: bold;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%); /* ← 中央配置 */
    width: 100%;
    text-align: center;
  }
  
    .p-top-work_menu-list::before {
        content: "";
        position: absolute;
        display: block;

        /* 画像のサイズ（実際のサイズに合わせて調整） */
        width: 10%;
        height: 10%;

        background-image: url('../img/common/top_works_circle04.png');
        background-size: contain;
        background-repeat: no-repeat;

        /* 位置：セクションの左端から少し外に出すならマイナス値 */
        top: 73%;
        left: 33px; 
        z-index: 1;
    }

    .p-top_features-list-item{
      padding: 4rem 0;
    }

    .p-top_features__inner{
      margin: 0 auto;
    }
    
    .p-top_features__title{
      font-size: 25px;
    }


  /* ===== 施工実績カード ===== */
  .p-top_works-list {
    grid-template-columns: 1fr;
  }

  .p-top_works-list-item {
    width: 100%;
    height: auto !important; /* 340px → auto */
    min-width: 0;
  }

  .p-top_works_card_title {
    word-break: break-word;
    white-space: normal;
    font-size: 22px;
  }
    /* serive-page用 */
  .p-top_works-section-sub-inner {
    max-width: 100% !important;
    padding: 40px 20px !important;
    box-sizing: border-box !important;
  }

  .p-top_works-list-sub {
    display: grid !important;
    grid-template-columns: 1fr !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 20px 0 !important;
    box-sizing: border-box !important;
  }

  .p-top_works-list-item {
    height: auto !important;
    width: 100% !important;
    min-width: 0 !important;
    box-sizing: border-box !important;
  }

  /* ===== 採用セクション ===== */
  #recruit {
    overflow-x: clip;
  }

  .p-top_recruit-bg {
    width: 100%;
    margin-top: 0;
    padding-top: 40px;
  }

  .p-top_recruit-bg::after {
    display: none;
  }

  .p-top_recruit-inner {
    height: auto !important;
    margin-bottom: 0 !important;
    overflow: hidden !important;
    display: flex !important;
    flex-direction: column !important;
    padding: 0 20px 80px !important;
    position: static !important;
    margin: 40px auto;
  }

  .p-top_recruit-titlewrap {
    order: 1;
    position: static !important;
    width: 100% !important;
  }

  .p-top_recruit-messagewrap {
    order: 2;
    position: static !important;
    left: auto !important;
    bottom: auto !important;
    width: 100% !important;
    padding-right: 0 !important;
    z-index: auto !important;
  }

  .p-top_recruit-title {
    position: relative; /* 念のため */
  }

  .p-top_recruit-title::after {
    bottom: auto;      /* -70px をリセット */
    top: 100%;         /* タイトルの直下に */
    margin-top: 8px;
  }

  .p-top_recruit-message-text {
    font-size: 26px;
    line-height: 1.5;
    white-space: normal !important;
  }

  .p-top_recruit-img-list {
    order: 3;
    position: static !important;
    left: auto !important;
    transform: none !important;
    width: 100% !important;
    padding-left: 0 !important;
    display: flex !important;
    flex-direction: row !important;
    gap: 8px !important;
    height: auto !important;
    margin-top: 40px !important;
    top: auto !important;
    overflow: hidden !important;
  }

  .p-top_recruit-img-list-item {
    flex: 1 !important;
    min-width: 0 !important;
    overflow: hidden;
    border-radius: 8px;
  }

  .p-top_recruit-img-list-item img {
    width: 100% !important;
    height: 300px !important;
    object-fit: cover !important;
    display: block !important;
  }
  /* ===== カテゴリナビ ===== */
  .c-category-box-container {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 8px;
  }

  .c-category-box {
    text-align: center;
    white-space: normal;
    word-break: keep-all;
  }
  /* instagram */
  .instagram {
    text-align: center;
    margin-top: 80px;
  }
}

/* ── LocaWeave: SP共通 ── */
@media (max-width: 960px) {
  :root { --inner-pad: 24px; }

  .lw-header__nav { display: none; }
  .lw-header__contact { display: none; }
  .lw-header__hamburger { display: flex; }

  .p-lw-kv { height: 180vh; }
  .p-lw-kv__copy { padding-left: 24px; padding-right: 24px; padding-top: 60px; max-width: 100%; }
  .p-lw-kv__headline--lg { font-size: 36px; }
  .p-lw-kv__headline--md { font-size: 28px; }
  .p-lw-kv__sub { font-size: 13px; }
  .p-lw-kv__badge { right: 20px; bottom: 20px; width: 110px; }
  .p-lw-kv__scroll { left: 24px; }

  .p-lw-about__content { padding: 60px var(--inner-pad) 0; }
  .p-lw-about__photos { position: static; height: auto; display: flex; flex-direction: column; gap: 16px; margin-top: 32px; }
  .p-lw-about__photo-left,
  .p-lw-about__photo-right { position: static; width: 100%; height: 200px; border-radius: 16px; }

  .p-lw-business__list { grid-template-columns: 1fr; gap: 40px; }

  .p-lw-strengths__item { grid-template-columns: 1fr; gap: 32px; margin-top: 48px; }
  .p-lw-strengths__item .p-lw-strengths__img { order: -1; }
  .p-lw-strengths__img img { height: 250px; }
  .p-lw-strengths__overlay { height: auto; padding: 60px 0; }
  .p-lw-strengths__overlay-title { font-size: 22px; }

  .p-lw-property__head { padding-left: 40px; padding-right: 24px; }
  .p-lw-property__list { gap: 16px; padding-left: 40px; }
  .p-lw-property__card { flex: 0 0 80vw; }
  .p-lw-property__nav { display: none; }

  .p-lw-cta__card { grid-template-columns: 1fr; padding: 40px 30px; text-align: center; }
  .p-lw-cta__tel-area { border-right: none; border-bottom: 1px solid var(--lw-light); padding-right: 0; padding-bottom: 30px; }
  .p-lw-cta__btns { padding-left: 0; }

  .l-lw-footer__layout { grid-template-columns: 1fr; gap: 40px; }
  .l-lw-footer__nav-grid { grid-template-columns: 1fr 1fr; gap: 24px; }

  .p-lw-service__section { grid-template-columns: 1fr; gap: 40px; }
  .p-lw-flow__step { padding: 28px 20px 28px 120px; min-height: 120px; }
  .p-lw-flow__step-badge { left: 20px; width: 60px; height: 60px; }
  .p-lw-flow__step-num { left: 110px; top: 20px; }
  .p-lw-flow__step-title { font-size: 20px; }

  .p-lw-lm__layout { grid-template-columns: 1fr; }
  .p-lw-lm__img { height: 250px; }

  .p-lw-company__greeting { grid-template-columns: 1fr; }

  .lw-section-title { font-size: 36px; }
  .p-lw-marquee__item { font-size: 52px; }

  .p-lw-business__badge { width: 90px; height: 90px; top: -45px; right: var(--inner-pad); }
  .p-lw-cta__badge { width: 90px; height: 90px; margin: -45px auto 0 var(--inner-pad); }
}

/* ── LocaWeaveの強みページ SP ── */
@media screen and (max-width: 960px) {
  .p-lw-str-intro__center {
    padding: 40px var(--inner-pad) 24px !important;
  }
  .p-lw-str-intro__heading { font-size: 20px !important; }
  .p-lw-str-intro__sep { height: 60px; margin: 16px auto !important; }
  .p-lw-str-intro__body { font-size: 14px !important; }
  .p-lw-str-intro__media {
    grid-template-columns: 1fr !important;
    padding: 0 var(--inner-pad) !important;
    gap: 24px !important;
  }
  .p-lw-str-intro__left {
    flex-direction: row;
    justify-content: center;
  }
  .p-lw-str-intro__badge { width: 100px !important; height: 100px !important; }
  .p-lw-str-intro__photo {
    height: 260px !important;
    border-radius: 16px !important;
  }
  .p-lw-str-intro__bg { height: 220px; }

  .p-lw-str-feature { padding: 60px 0 !important; }
  .p-lw-str-feature__inner { grid-template-columns: 1fr !important; gap: 32px !important; }
  .p-lw-str-feature--rev .p-lw-str-feature__img { order: -1; }
  .p-lw-str-feature__img { height: 260px !important; }
  .p-lw-str-feature__title { font-size: 26px !important; }

  .p-lw-str-reasons { padding: 60px 0 80px !important; }
  .p-lw-str-reasons__en { font-size: 22px !important; }
  .p-lw-str-reasons__grid { grid-template-columns: 1fr !important; gap: 40px !important; }
  .p-lw-str-reasons__card-img { height: 200px !important; }
}