/* tablet-landscape.css */
@layer responsive.landscape {
  @media screen and (max-width: 930px) and (orientation: landscape){

    /* === 1) タブ横向けトークン微調整（やや大きめ） === */
    :root{
      --fs-md:18px; --fs-lg:20px; --fs-2xl:28px;
      --h-50:50px;
    }

    /* === 2) ハンバーガー＆ナビ === */
    .p-header_hamburger{display:block; position:fixed; top:0; left:0; width:50px; height:50px; z-index:100}
    .p-header_nav{
      position:fixed; inset:0; background:var(--brand);
      display:flex; align-items:flex-start; justify-content:center;
      opacity:0; pointer-events:none; transform:translateX(-100%);
      transition:transform .3s ease, opacity .3s ease; z-index:10;
    }
    .p-header_nav.is-active{opacity:1; pointer-events:auto; transform:translateX(0)}
    .p-nav_list{gap:1rem; margin:0; padding:0; font-size:var(--fs-md)}

    /* === 3) サイドメニュー（横向きは全幅オーバーレイ） === */
    .side-menu{
      position:fixed; top:70px; left:0; width:100%; height:120vh;
      transform:translateX(-100%); transition:transform .3s;
      visibility:hidden; pointer-events:none; background:var(--brand); z-index:1000;
    }
    .side-menu.active{transform:translateX(0); visibility:visible; pointer-events:auto}

    /* === 4) 主要フォーム幅と余白（見栄えの微調整） === */
    .mx-5vw{margin-inline:5vw}
    .form-row,.form-row-3{max-width:1100px}

    /* ボタンは読みやすいサイズに */
    .button-position{width:25%; height:64px; font-size:20px}
    .button-position_sub{width:25%; height:56px; font-size:20px}
    .button-position_userinfo{width:250px; height:64px; font-size:18px}

    /* 大きめの自由入力欄 */
  .limited-textbox{
    width:830px; height:400px; padding:10px; font-size:12px; border:1px solid #ccc; border-radius:20px; resize:vertical; line-height:1.6; box-sizing:border-box;
  }
  .etc-textbox{ width:800px; height:200px;}

  .head-label{font-size:18px;}

  .unit_center{display: block; white-space: normal !important; word-wrap: break-word; max-width: 100%;}

  .input-group .input-group-text {margin-left: 10px !important;}
  .input-group .form-control.col-4 {margin-left: 85px !important;}
  .input-group .form-control.col-1 {margin-left: 10px !important;}
  .section-product .input-group-text {margin-left: 10px !important;}
  .section-product .form-control {width:800px !important; margin-left: 10px !important;}

  .section-line-blue{margin-top: 15px;}

  .btn.btn-light.b_frame{padding: 2px 6px !important; line-height: 1.2; margin-left: 10px !important;}

   .page-hero.hero-bar{
    grid-template-columns: 1fr auto;
    grid-auto-rows: auto;
    row-gap: .5rem;
  }
  .hero-bar .step_title_sub{
    grid-column: 1 / -1;  /* 1行目いっぱいを中央表示 */
    justify-self: center;
  }
  .hero-bar .hero-logout{
    grid-column: 2;       /* 2行目の右端 */
    justify-self: end;
  }
  }
}