/* =========================
       HOTEL：既存そのまま
       ========================= */
    .yuka-hotel-search{ margin:18px 0; }
    .yuka-hotel-search__title{
      font-size:13px;
      color:#6f7680;
      margin:0 0 10px;
      letter-spacing:.04em;
    }
    .yuka-hotel-search__btns{
      display:flex;
      gap:12px;
      align-items:stretch;
    }
    .yuka-hotel-search__btn{
      flex:1 1 0;
      display:flex;
      align-items:center;
      justify-content:space-between;
      text-decoration:none;
      font-size:14px;
      font-weight:500;
      letter-spacing:.06em;
      line-height:1.2;
      min-height:46px;
      box-sizing:border-box;
      transition:all .25s;
      padding:14px 28px;
      position:relative;
      user-select:none;
      -webkit-tap-highlight-color:transparent;
      color:#454a51;
    }
    .yuka-hotel-search__btnLabel{
      flex:1;
      text-align:center;
      color:inherit;
      white-space:nowrap;
      overflow:hidden;
      text-overflow:ellipsis;
    }
    .yuka-hotel-search__btnHint{
      width:18px;
      text-align:right;
      font-size:11px;
      opacity:.16;
      transform:translateY(-.5px);
      flex:0 0 18px;
    }
    @media (max-width: 768px){
      .yuka-hotel-search__btns{ flex-direction:column; }
      .yuka-hotel-search__btn{ width:100%; padding:14px 22px; }
      .yuka-hotel-search__btnLabel{ max-width: calc(100% - 44px); white-space:normal; line-height:1.25; }
    }

    .yuka-hotel-search--pill .yuka-hotel-search__btn{
      background:#fff;
      border:1px solid #e7e7e7;
      border-radius:999px;
      box-shadow:0 2px 10px rgba(0,0,0,0.035);
    }
    .yuka-hotel-search--pill .yuka-hotel-search__btn:hover{
      transform:translateY(-2px);
      box-shadow:0 8px 20px rgba(0,0,0,0.06);
      filter:saturate(0.98);
    }
    .yuka-hotel-search--pill .yuka-hotel-search__btn.is-jalan{
      color:#9a5a2f;
      background:linear-gradient(180deg, #fff6ef 0%, #ffffff 70%);
      border-color:#f2d9cb;
      box-shadow:0 6px 18px rgba(154,90,47,0.10);
    }
    .yuka-hotel-search--pill .yuka-hotel-search__btn.is-ikyu{
      color:#6f5f45;
      background:linear-gradient(180deg, #fbf7f0 0%, #ffffff 70%);
      border-color:#e8dcc8;
      box-shadow:0 6px 18px rgba(111,95,69,0.10);
    }
    .yuka-hotel-search--pill .yuka-hotel-search__btn.is-yahoo{
      color:#375a77;
      background:linear-gradient(180deg, #f1f6fb 0%, #ffffff 70%);
      border-color:#d4e1ee;
      box-shadow:0 6px 18px rgba(55,90,119,0.10);
    }

    .yuka-hotel-search--cards{
      padding:16px;
      background:#f6f7f9;
      border:1px solid #eef0f3;
      border-radius:16px;
    }
    .yuka-hotel-search--cards .yuka-hotel-search__btn{
      background:#fff;
      border:1px solid #e5e7eb;
      border-radius:14px;
      box-shadow:0 8px 18px rgba(0,0,0,0.04);
      letter-spacing:.03em;
      padding:14px 16px;
    }
    .yuka-hotel-search--cards .yuka-hotel-search__btnHint{ opacity:.18; }
    .yuka-hotel-search--cards .yuka-hotel-search__btn:hover{
      transform:translateY(-2px);
      box-shadow:0 14px 26px rgba(0,0,0,0.07);
      border-color:#d7dbe2;
    }

    .yuka-hotel-search--minimal .yuka-hotel-search__btn{
      background:transparent;
      border:1px solid rgba(0,0,0,0.10);
      border-radius:14px;
      color:rgba(0,0,0,0.58);
      box-shadow:none;
      letter-spacing:.04em;
    }
    .yuka-hotel-search--minimal .yuka-hotel-search__btnHint{ opacity:.14; }
    .yuka-hotel-search--minimal .yuka-hotel-search__btn:hover{
      background:rgba(0,0,0,0.025);
      border-color:rgba(0,0,0,0.16);
      transform:translateY(-1px);
    }

    /* =========================
       GOURMET MENU
       ========================= */
    .yuka-gourmet-menu{
      --ygrm-btn-w: 122px;
      --ygrm-panel-w: 220px;
      --ygrm-align-w: min(100%, 640px);
      margin:16px 0 22px;
      text-align:center;
    }

    .yuka-gourmet-menu__meta{
      width:var(--ygrm-align-w);
      max-width:100%;
      margin:0 auto 8px;
    }

    .yuka-gourmet-menu__pr{
      display:flex;
      align-items:center;
      gap:4px;
      justify-content:flex-start;
      width:100%;
      color:#8a8a8a;
      font-size:11px;
      line-height:1.2;
      margin:0 0 6px;
      text-align:left;
    }

    .yuka-gourmet-menu__prIcon{
      display:inline-flex;
      align-items:center;
      justify-content:center;
      width:12px;
      height:12px;
      flex:0 0 12px;
      opacity:.82;
    }

    .yuka-gourmet-menu__prIcon svg{
      display:block;
      width:12px;
      height:12px;
      fill:currentColor;
    }

    .yuka-gourmet-menu__prText{
      display:inline-block;
      transform:translateY(.2px);
    }

    .yuka-gourmet-menu__title{
      font-size:13px;
      line-height:1.5;
      color:#6b5d4f;
      letter-spacing:.06em;
      margin:0;
      text-align:center;
    }

    .yuka-gourmet-menu__desktop{ display:block; }
    .yuka-gourmet-menu__mobile{ display:none; }

    .yuka-gourmet-menu__inner{
      position:relative;
      display:inline-block;
      width:var(--ygrm-btn-w);
      padding-bottom:2px;
    }

    .yuka-gourmet-menu__trigger{
      appearance:none;
      border:none;
      cursor:pointer;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      gap:6px;
      width:100%;
      min-height:46px;
      padding:0 18px;
      background:#1693ea;
      color:#fff;
      border-radius:0;
      font-size:14px;
      font-weight:700;
      line-height:1.2;
      box-shadow:none;
      transition:background-color .18s ease;
    }
    .yuka-gourmet-menu__trigger:hover,
    .yuka-gourmet-menu__trigger:focus{
      background:#1285d3;
      outline:none;
    }
    .yuka-gourmet-menu__trigger[aria-expanded="true"]{
      background:#1285d3;
    }
    .yuka-gourmet-menu__triggerIcon{
      font-size:12px;
      transform:translateY(-.5px);
    }

    .yuka-gourmet-menu__panel{
      position:absolute;
      top:calc(100% - 2px);
      left:50%;
      transform:translateX(-50%);
      min-width:var(--ygrm-panel-w);
      background:#fff;
      border:1px solid #e7e7e7;
      border-radius:12px;
      box-shadow:0 12px 28px rgba(0,0,0,0.12);
      padding:40px 8px 8px;
      z-index:9999;
      text-align:left;
    }

    .yuka-gourmet-menu__close{
      position:absolute;
      top:8px;
      right:8px;
      width:28px;
      height:28px;
      border:none;
      background:transparent;
      color:#777;
      font-size:18px;
      line-height:1;
      cursor:pointer;
      padding:0;
    }
    .yuka-gourmet-menu__close:hover,
    .yuka-gourmet-menu__close:focus{
      color:#444;
      outline:none;
    }

    .yuka-gourmet-menu__link{
      display:block;
      text-decoration:none;
      color:#444;
      font-size:14px;
      line-height:1.4;
      padding:12px 14px;
      border-radius:8px;
      transition:background .18s ease;
    }
    .yuka-gourmet-menu__link:hover{
      background:#f7f8fa;
    }
    .yuka-gourmet-menu__link.is-hotpepper{ color:#b24a55; }
    .yuka-gourmet-menu__link.is-tabelog{ color:#7a5a32; }
    .yuka-gourmet-menu__link.is-gnavi{ color:#446b63; }

    @media (max-width: 768px){
      .yuka-gourmet-menu{
        --ygrm-panel-w: min(100vw - 32px, 420px);
        --ygrm-align-w: min(100%, 640px);
      }

      .yuka-gourmet-menu__desktop{ display:none; }
      .yuka-gourmet-menu__mobile{ display:block; }

      .yuka-gourmet-mobile__picker{
        position:relative;
        display:inline-block;
        width:var(--ygrm-btn-w);
      }

      .yuka-gourmet-mobile__pickerFace{
        display:inline-flex;
        align-items:center;
        justify-content:center;
        gap:6px;
        width:100%;
        min-height:46px;
        padding:0 18px;
        background:#1693ea;
        color:#fff;
        border-radius:0;
        font-size:14px;
        font-weight:700;
        line-height:1.2;
        box-sizing:border-box;
      }

      .yuka-gourmet-mobile__pickerIcon{
        font-size:12px;
        transform:translateY(-.5px);
      }

      .yuka-gourmet-mobile__select{
        position:absolute;
        inset:0;
        width:100%;
        height:100%;
        opacity:0;
        cursor:pointer;
        font-size:16px;
        -webkit-appearance: menulist;
        appearance: auto;
      }
    }

    /* =========================
       ASOVIEW
       ========================= */
    .yuka-asoview{
      --yuka-asoview-line: #FF0000;
      margin:18px 0 22px;
    }

    .yuka-asoview__hero{
      display:grid;
      grid-template-columns:48px 1fr;
      gap:14px;
      align-items:start;
      margin-bottom:14px;
    }

    .yuka-asoview__heroImage{
      width:48px;
      height:48px;
      display:flex;
      align-items:center;
      justify-content:center;
      overflow:hidden;
    }

    .yuka-asoview__heroImage img{
      width:100%;
      height:100%;
      object-fit:contain;
      display:block;
    }

    .yuka-asoview__heroFallback{
      display:flex;
      align-items:center;
      justify-content:center;
      width:100%;
      height:100%;
      font-size:28px;
      line-height:1;
    }

    .yuka-asoview__heroBody{
      min-width:0;
    }

.yuka-asoview__title{
  position:relative;
  font-size:22px;
  font-weight:700;
  color:#384350;
  line-height:1.35;
  letter-spacing:.02em;
  margin:0;
  padding-bottom:12px;
}

    .yuka-asoview__title::after{
      content:"";
      position:absolute;
      left:0;
      right:0;
      bottom:0;
      height:2px;
      background:linear-gradient(90deg, var(--yuka-asoview-line) 0%, transparent 100%);
      opacity:.42;
      pointer-events:none;
    }

    .yuka-asoview__lead{
      margin:10px 0 0;
      font-size:13px;
      color:#617082;
      line-height:1.8;
    }

    .yuka-asoview__row{
      display:flex;
      gap:10px;
      align-items:stretch;
    }

    .yuka-asoview__select{
      flex:1 1 auto;
      min-height:46px;
      border:1px solid #e2e5e9;
      border-radius:10px;
      padding:0 12px;
      font-size:14px;
      background:#fff;
      color:#444;
      box-sizing:border-box;
    }

    .yuka-asoview__button{
      flex:0 0 auto;
      display:inline-flex;
      align-items:center;
      justify-content:center;
      min-height:46px;
      padding:0 18px;
      background:#1285D3;
      border:1px solid #1285D3;
      color:#fff;
      text-decoration:none;
      border-radius:999px;
      font-size:14px;
      font-weight:700;
      letter-spacing:.04em;
      box-shadow:none;
      transition:background-color .18s ease, border-color .18s ease, opacity .18s ease;
      white-space:nowrap;
    }

    .yuka-asoview__button:hover{
      background:#0f78bf;
      border-color:#0f78bf;
    }

    .yuka-asoview__button.is-disabled,
    .yuka-asoview__button.is-disabled:hover{
      opacity:.55;
      cursor:default;
      background:#1285D3;
      border-color:#1285D3;
    }

    .yuka-asoview__footerText{
      margin:12px 0 0;
      font-size:13px;
      color:#617082;
      line-height:1.85;
    }

    @media (max-width: 768px){
      .yuka-asoview__hero{
        grid-template-columns:42px 1fr;
        gap:12px;
      }

      .yuka-asoview__title{
        font-size:19px;
        line-height:1.4;
        padding-bottom:10px;
      }

      .yuka-asoview__heroImage{
        width:42px;
        height:42px;
      }

      .yuka-asoview__row{
        flex-direction:column;
      }

      .yuka-asoview__button{
        width:100%;
      }
    }
