/* top.php専用。PCは既存デザインを維持。 */
.mobile-header{display:none}
.responsive-top .bx-wrapper .bx-pager{display:none}
@media screen and (max-width: 979px){
  .responsive-top{--mobile-tagline-height:20px;--mobile-menu-space:64px;--mobile-logo-height:clamp(72px,calc(19vw - 12.16px),173.85px);--mobile-header-height:calc(var(--mobile-tagline-height) + var(--mobile-logo-height) + 1px)}
  html{min-width:0!important;width:100%}
  body#layoutType01.responsive-top{width:100%;min-width:0!important;margin:0;font-size:14px;line-height:1.5;-webkit-text-size-adjust:100%}
  .responsive-top,.responsive-top *{box-sizing:border-box}
  .responsive-top #page,.responsive-top #contents,.responsive-top .contents_bg{width:100%;min-width:0!important;max-width:100%}
  #layoutType01.responsive-top #contents{padding-top:calc(var(--mobile-header-height) + 8px)!important;overflow:visible}
  #layoutType01.responsive-top #contents .wrap{width:100%;max-width:100%;padding:0 0 12px;margin:0}
  .responsive-top #header,.responsive-top .topicPathFixedWrap{display:none!important}
  .responsive-top .mobile-header{display:block;position:fixed;top:0;left:0;right:0;height:var(--mobile-header-height);background:#fff;border-bottom:1px solid #bd0000;box-shadow:0 1px 4px #0002;z-index:10001}
  .mobile-header .mobile-tagline{height:var(--mobile-tagline-height);line-height:var(--mobile-tagline-height);font-size:10px;white-space:nowrap;text-align:center;margin:0;color:#fff;padding:0 5px;letter-spacing:0;background-color: #BD0000;}
  /* 600×114のロゴ画像。上部のtaglineを除いた領域の背景に配置。 */
  .mobile-header-row{display:block;height:var(--mobile-logo-height);padding:0 var(--mobile-menu-space) 0 0;margin:0;background-color:#fff;background-image:url(../images/sp_head_logo.png);background-repeat:no-repeat;background-position:left center;background-size:100% auto;background-origin:content-box;background-clip:content-box}

.mobile-brand{display:block;position:absolute;top:var(--mobile-tagline-height);left:0;right:var(--mobile-menu-space);height:var(--mobile-logo-height);z-index:1;background:none}
.mobile-brand img{display:none}
  .mobile-brand img[hidden],.mobile-brand span[hidden]{display:none}
  .mobile-brand-sub{font-size:12px;margin-left:8px;font-weight:normal}
  .mobile-menu{position:static}
  .mobile-menu summary{position:absolute;right:8px;bottom:6px;z-index:2;border-radius:4px;background:rgba(255,255,255,.92);display:flex;flex-direction:column;gap:4px;align-items:center;justify-content:center;min-width:48px;min-height:44px;cursor:pointer;color:#bd0000;font-size:10px;list-style:none}
  .mobile-menu summary::-webkit-details-marker{display:none}
  .menu-bars{display:block;width:25px;height:18px;border-top:2px solid currentColor;border-bottom:2px solid currentColor;position:relative}
  .menu-bars:before{content:"";position:absolute;left:0;right:0;top:6px;border-top:2px solid currentColor}
  .mobile-menu nav{position:absolute;z-index:3;left:0;right:0;top:100%;box-shadow:0 3px 5px #0002;background:#fae7e9;padding:4px 0}
  .mobile-menu nav a{display:block;padding:14px 16px;min-height:46px;border-bottom:1px solid #fff;color:#bd0000;text-decoration:none;font-size:15px}
  .mobile-menu summary:focus-visible,.mobile-menu nav a:focus-visible{outline:2px solid #bd0000;outline-offset:2px}
  .responsive-top #bukkenList{width:100%;margin:0;padding:0}
  .responsive-top .campaign-panel{padding:0!important;margin:0 0 28px!important;border:0!important;border-radius:0!important;background:none!important;width:100%}
  .responsive-top .campaign-panel>.displayTable,.responsive-top .campaign-panel .displayTableCell{display:block;width:100%!important;max-width:100%}
  .responsive-top #slider4,.responsive-top #slider4>div{margin:0;padding:0}
  .responsive-top #slider4 img{display:block;width:100%;max-width:100%;height:auto}
  .responsive-top .bx-wrapper{width:100%;max-width:100%!important;margin:0 auto 28px;padding:0;border:0;background:transparent;box-shadow:none}
  .responsive-top .bx-wrapper .bx-viewport{left:0!important;border:0!important;box-shadow:none!important;background:#fff}
  .responsive-top .bx-wrapper .bx-pager{display:block;bottom:-24px;padding-top:8px}
  .responsive-top .bx-wrapper .bx-pager.bx-default-pager a{width:8px;height:8px;margin:0 5px;background:#ccc}
  .responsive-top .bx-wrapper .bx-pager.bx-default-pager a.active{background:#bd0000}
  .responsive-top .bx-wrapper .bx-controls-direction a{top:50%;margin-top:-16px;z-index:20}
  .responsive-top #recruit-area{padding:16px 8px 8px;max-width:100%}
  .responsive-top #recruit-area .ttl-area{font-size:18px;margin-bottom:18px}
  .responsive-top #recruit-area>div{margin-left:0!important}
  .responsive-top #recruit-area ul{padding:0;margin:0;display:flow-root}
  .responsive-top #recruit-area li{padding-bottom:8px!important;text-align:center}
  .responsive-top #recruit-area li a{display:block}
  .responsive-top #recruit-area li img{max-width:100%;height:auto}
  .responsive-top #recruit-area hr{margin:4px 0 10px}
  .responsive-top .area-footer{padding:18px 8px;font-size:11px}
  .responsive-top .modal-content{width:calc(100% - 24px)!important;max-width:600px;margin:12px;padding:12px}
  /* 営業時間表記の下。右64pxのハンバーガーメニュー領域は避ける。 */
  .mobile-header #tel_click{position:absolute;right:calc(var(--mobile-menu-space) + 4px);top:calc(var(--mobile-tagline-height) + var(--mobile-logo-height) * .46);width:calc((100% - var(--mobile-menu-space)) * .43);z-index:2}
  .mobile-header #tel_click button{display:block;box-sizing:border-box;width:100%;min-height:30px;height:clamp(30px,calc(var(--mobile-logo-height) * .4),44px);padding:0;border:0;border-radius:0;background:transparent url(../images/head_6_tel.png) center center / contain no-repeat;color:transparent;font-family:inherit;font-size:0;line-height:1;cursor:pointer}
  .mobile-header #tel_click button:focus-visible{outline:2px solid #bd0000;outline-offset:2px}
  .mobile-header .tel_select{position:absolute;top:100%;right:var(--mobile-menu-space);width:min(300px,calc(100vw - 80px));max-height:calc(100dvh - var(--mobile-header-height) - 12px);overflow:auto;z-index:4;background:#fae7e9;box-shadow:0 3px 6px #0003;border:1px solid #bd0000}
  .mobile-header .tel_select[hidden]{display:none!important}
  .mobile-header .tel_select p{margin:0;padding:10px;font-size:12px;color:#bd0000}
  .mobile-header .tel_select ul{margin:0;padding:0;list-style:none}
  .mobile-header .tel_select li{margin:0;padding:0;border-top:1px solid #fff}
  .mobile-header .tel_select li a{display:block;padding:12px;min-height:44px;color:#bd0000;text-decoration:none;font-size:14px}
  .mobile-header .tel-close{display:block;width:100%;min-height:44px;border:0;border-top:1px solid #fff;background:#fff;color:#bd0000;cursor:pointer}

}
@media screen and (max-width: 979px) {
    .responsive-top .campaign-panel {
        margin-bottom: 0 !important;
    }

    .responsive-top #recruit-area {
        padding-top: 8px;
    }
    .responsive-top .bx-wrapper {
        margin: 0 auto 2px;
    }
}
@media (prefers-reduced-motion:reduce){.responsive-top *{scroll-behavior:auto!important}}
