:root{--cream:#fff4df;--blue:#3155a5;--orange:#f56a00;--green:#246b37;--red:#c93242;--ink:#1268ad}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);font-family:Arial,'Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;color:#1465a8}img{display:block;max-width:100%}a{text-decoration:none;color:inherit}.desktop-nav{height:44px;background:var(--orange);color:#fff;display:flex;align-items:center;justify-content:flex-end;gap:52px;padding:0 6vw;font-weight:800;letter-spacing:.18em;font-size:18px}.mobile-head{display:none}.check{background-color:var(--cream);background-image:linear-gradient(90deg,rgba(49,85,165,.8) 1px,transparent 1px),linear-gradient(rgba(49,85,165,.8) 1px,transparent 1px);background-size:44px 44px}.top-hero{min-height:520px;border-top:64px solid transparent;border-bottom:64px solid transparent;border-image:url('images/line.png') 112 round;display:grid;grid-template-columns:1fr 1fr;align-items:center;padding:48px max(7vw,60px);gap:20px}.hero-left{max-width:440px;margin-left:auto}.main-logo{width:100%;max-width:390px}.hero-buttons{display:grid;gap:22px;width:270px;margin:24px auto 0}.hero-buttons a{background:#d51f25;color:#fff;text-align:center;padding:13px;border-radius:8px;font-weight:800;font-size:22px}.main-burger{width:min(43vw,520px);margin:auto;animation:float 5s ease-in-out infinite}@keyframes float{50%{transform:translateY(-8px) rotate(1deg)}}.ingredients{display:grid;grid-template-columns:repeat(3,1fr);max-width:900px;margin:70px auto 30px;gap:58px;padding:0 30px}.ingredient img.photo{width:210px;aspect-ratio:1;object-fit:cover;margin:auto}.ingredient .label{height:48px;width:auto;margin:12px auto 6px}.ingredient p{font-size:14px;line-height:1.65;font-weight:700;margin:0}.exploded{max-width:780px;margin:55px auto 80px;display:grid;grid-template-columns:1fr .7fr .45fr;align-items:center;gap:30px}.exploded .burger2{width:290px;justify-self:end}.exploded .copy{font-weight:900;font-size:40px;line-height:1.18;writing-mode:vertical-rl;letter-spacing:.08em;justify-self:center}.exploded .burger-logo{width:110px}.shop-section{border-top:64px solid transparent;border-image:url('images/line.png') 112 round;padding:90px 30px 110px}.shop-inner{max-width:760px;margin:auto;display:grid;grid-template-columns:1.2fr 1fr;gap:38px;align-items:center}.shop-inner img{width:100%}.shop-info{font-size:17px;line-height:1.6;font-weight:800}.footer{background:var(--orange);height:125px;display:grid;place-items:center}.footer img{width:190px;max-height:90px;object-fit:contain}.menu-page{min-height:calc(100vh - 44px);padding:55px 6vw 70px;background-color:var(--cream);background-image:linear-gradient(90deg,var(--green) 1px,transparent 1px),linear-gradient(var(--green) 1px,transparent 1px);background-size:54px 54px}.menu-board{max-width:900px;margin:auto;background:#fffdf7;border:6px solid var(--green);border-radius:32px;padding:24px 80px 44px}.menu-heading{display:flex;justify-content:center;align-items:center;gap:20px;height:150px}.menu-heading .title-img{max-width:430px;max-height:125px;object-fit:contain}.menu-heading .mascot{width:80px}.food-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px 30px}.menu-item{text-align:center;color:var(--red);font-weight:800}.menu-item img{height:105px;width:100%;object-fit:contain;margin:auto}.menu-item .name{font-size:12px;line-height:1.3;min-height:32px;margin:3px 0}.menu-item .price{font-size:22px;letter-spacing:.05em}.side-board{padding-left:115px;padding-right:115px}.side-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px 26px;align-items:end}.side-item img{height:92px}.side-grid .wide{grid-column:auto}.side-deco{position:absolute}.drink-list{color:var(--red);font-weight:800;font-size:15px;line-height:1.55;align-self:center}.drink-list strong{font-size:23px}.mobile-menu{display:none}
@media(max-width:700px){.desktop-nav{display:none}.mobile-head{height:58px;background:var(--orange);display:flex;justify-content:flex-end;align-items:center;padding:0 20px;position:relative;z-index:20}.hamb{width:42px;height:34px;border:0;background:transparent;display:grid;align-content:space-between;padding:0;cursor:pointer}.hamb span{height:4px;background:#fff;border-radius:4px}.mobile-menu{position:fixed;inset:0 0 0 32%;background:var(--blue);z-index:50;transform:translateX(110%);transition:transform .3s ease;display:flex;flex-direction:column;padding:80px 45px 45px}.mobile-menu.open{transform:translateX(0)}.close{position:absolute;right:22px;top:18px;font-size:56px;color:#fff;line-height:.7;cursor:pointer}.mobile-menu nav{margin-top:70px}.mobile-menu nav a{display:block;color:#fff;font-family:Georgia,serif;font-weight:900;font-size:38px;padding:18px 0;border-bottom:2px dashed var(--orange);-webkit-text-stroke:1px var(--blue);text-shadow:-1px -1px 0 #fff,1px -1px 0 #fff,-1px 1px 0 #fff,1px 1px 0 #fff}.mobile-menu img{width:150px;margin:auto auto 0}.check{background-size:22px 22px}.top-hero{min-height:510px;border:0;display:block;padding:45px 28px 20px;position:relative}.hero-left{max-width:none;margin:0}.main-logo{width:65%;margin:0 auto}.hero-buttons{display:none}.main-burger{width:62%;margin:-5px 4% 0 auto}.top-hero:after{content:'美味すぎて\A やみつき。';white-space:pre;position:absolute;left:23%;top:245px;font-size:22px;font-weight:900;line-height:1.15;writing-mode:vertical-rl}.top-hero:before{content:'浜松初出店！';position:absolute;left:14%;top:380px;background:#d51f25;color:#fff;border-radius:5px;padding:8px 26px;font-weight:800}.ingredients{display:block;margin:25px auto 20px;padding:0 30px}.ingredient{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;margin:45px 0;gap:15px}.ingredient:nth-child(2){grid-template-columns:1.05fr 1fr}.ingredient:nth-child(2) .photo{grid-column:2;grid-row:1}.ingredient:nth-child(2) .text{grid-column:1;grid-row:1}.ingredient img.photo{width:100%;max-width:190px}.ingredient .label{height:auto;width:100%;margin:0 0 8px}.ingredient p{font-size:12px}.exploded{margin:45px auto 65px;padding:0 42px;grid-template-columns:1fr .45fr;gap:10px;position:relative}.exploded .burger2{width:210px}.exploded .copy{font-size:27px}.exploded .burger-logo{position:absolute;width:65px;right:28px;bottom:0}.shop-section{border-top:65px solid transparent;border-image:url('images/line_sp.png') 216 round;padding:65px 35px 60px}.shop-inner{display:block}.shop-inner img{width:70%;margin:auto}.shop-info{width:70%;margin:16px auto 0;font-size:12px}.footer{height:112px}.footer img{width:165px}.menu-page{min-height:calc(100vh - 58px);padding:45px 18px;background-size:46px 46px}.menu-board,.side-board{border-width:4px;border-radius:20px;padding:18px 26px 42px}.menu-heading{height:140px;justify-content:center}.menu-heading .title-img{max-width:78%;max-height:120px}.menu-heading .mascot{display:none}.food-grid{grid-template-columns:repeat(3,1fr);gap:24px 10px}.menu-item img{height:95px}.menu-item .name{font-size:10px;min-height:28px}.menu-item .price{font-size:19px}.side-grid{grid-template-columns:repeat(4,1fr);gap:22px 8px}.side-item img{height:75px}.side-item .name{font-size:8px}.side-item .price{font-size:16px}.drink-list{grid-column:1/-1;font-size:11px;margin-top:8px}.drink-list strong{font-size:17px}}

/* 2026-09 fine tuning */
@media (min-width:701px){
  body.check{background-image:none}
  .hero-buttons a{transition:transform .22s ease,box-shadow .22s ease,filter .22s ease}
  .hero-buttons a:hover{transform:translateY(-4px) rotate(-1deg);box-shadow:0 8px 0 rgba(49,85,165,.22);filter:brightness(1.04)}
}
.exploded .fresh-copy{width:170px;justify-self:center}
.exploded .burger-logo{width:120px;object-fit:contain}
.footer-brand{display:flex;align-items:center;justify-content:center;gap:22px}
.footer .footer-brand img:first-child{width:82px;max-height:80px;object-fit:contain}
.footer .footer-brand img:last-child{width:170px;max-height:75px;object-fit:contain}
.food-heading .food-mascot{width:80px}
.side-heading{position:relative}
.side-heading .side-mascot{width:78px;object-fit:contain}
@media(max-width:700px){
  body.check{background-image:linear-gradient(90deg,rgba(49,85,165,.18) 1px,transparent 1px),linear-gradient(rgba(49,85,165,.18) 1px,transparent 1px)}
  .top-hero:after{font-family:'Hiragino Mincho ProN','Yu Mincho',serif;line-height:1.55;letter-spacing:.08em}
  .ingredient:nth-child(2) img.photo{max-width:215px}
  .exploded{grid-template-columns:1fr .55fr .42fr;align-items:center;padding:0 30px;gap:8px}
  .exploded .fresh-copy{width:86px;justify-self:center}
  .exploded .burger-logo{position:static;width:78px;justify-self:center}
  .shop-section{border-image:url('images/line_sp.png') 216 round}
  .footer-brand{gap:14px}
  .footer .footer-brand img:first-child{width:62px}
  .footer .footer-brand img:last-child{width:130px}
  .mobile-menu{padding:70px 34px 38px}
  .mobile-menu .menu-close{position:absolute;right:20px;top:14px;z-index:2}
  .mobile-menu .menu-close span{transition:transform .25s ease,opacity .2s ease;position:absolute;left:0;right:0;top:15px}
  .mobile-menu.open .menu-close span:nth-child(1){transform:rotate(45deg)}
  .mobile-menu.open .menu-close span:nth-child(2){opacity:0}
  .mobile-menu.open .menu-close span:nth-child(3){transform:rotate(-45deg)}
  .mobile-menu nav{margin-top:65px;display:flex;flex-direction:column;gap:20px}
  .mobile-menu nav a{border:0;padding:0;display:block}
  .mobile-menu nav a img{width:auto;height:48px;max-width:180px;margin:0}
  .mobile-menu-brand{margin:auto auto 0;display:flex;align-items:center;gap:14px;width:100%}
  .mobile-menu .mobile-menu-brand img{margin:0;object-fit:contain}
  .mobile-menu .mobile-menu-brand img:first-child{width:58px}
  .mobile-menu .mobile-menu-brand img:last-child{width:125px}
  .menu-heading .mascot{display:block}
  .food-heading{gap:8px}
  .food-heading .title-img{max-width:72%}
  .food-heading .food-mascot{width:58px}
  .side-heading{gap:6px}
  .side-heading .title-img{max-width:62%}
  .side-heading .side-mascot{display:block;width:50px;flex:0 0 auto}
}

/* 2026-09 final small adjustments */
@media(max-width:700px){
  /* POPなサイトに合わせて、筆文字より丸みのあるゴシックへ */
  .top-hero:after{
    font-family:'Hiragino Maru Gothic ProN','Hiragino Kaku Gothic ProN','Yu Gothic',sans-serif;
    font-weight:900;
    line-height:1.7;
    letter-spacing:.06em;
  }
  /* SIDE見出し：ポテトをタイトルと同程度の存在感に */
  .side-heading .side-mascot.potato{width:72px}
  /* 上にいたドリンク君はドリンク列へ移動 */
  .side-heading .side-mascot.juice{display:none}
  .side-heading .title-img{max-width:68%}

  /* クリームソーダからを1段下げ、4つのドリンク枠として並べる */
  .side-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px 8px;align-items:end}
  .side-grid .side-item:nth-child(8){grid-column:1;grid-row:3}
  .side-grid .side-item:nth-child(9){grid-column:2;grid-row:3}
  .side-grid .side-item:nth-child(10){grid-column:3;grid-row:3}
  .side-grid .side-item:nth-child(11){grid-column:4;grid-row:2}
  .drink-list{
    grid-column:4;
    grid-row:3;
    margin:0;
    position:relative;
    align-self:end;
    text-align:center;
    transform:translateX(5px);
    min-width:0;
  }
  .drink-copy{font-size:9px;line-height:1.35;white-space:normal}
  .drink-copy strong{font-size:16px}
  .drink-mascot{
    width:58px!important;
    height:58px;
    object-fit:contain;
    margin:0 auto 5px!important;
  }
}

/* 2026-09-05 SP menu first-open + SIDE row balance */
@media(max-width:700px){
  body.menu-open{overflow:hidden}
  .mobile-menu{visibility:visible;will-change:transform}
  .mobile-menu nav a img,.mobile-menu-brand img{flex:none}

  /* 3段目：パフェ／クリームソーダ／シェイク系を4つ横並び */
  .side-grid .side-item:nth-child(11){grid-column:1;grid-row:3}
  .side-grid .side-item:nth-child(8){grid-column:2;grid-row:3}
  .side-grid .side-item:nth-child(9){grid-column:3;grid-row:3}
  .side-grid .side-item:nth-child(10){grid-column:4;grid-row:3}

  /* 4段目：ソフトドリンク＋ミスタードリンク */
  .drink-list{
    grid-column:1/-1;
    grid-row:4;
    transform:none;
    display:grid;
    grid-template-columns:1.45fr .75fr;
    align-items:center;
    gap:12px;
    width:100%;
    margin-top:4px;
    text-align:left;
  }
  .drink-copy{grid-column:1;grid-row:1;text-align:center;font-size:9px;line-height:1.4}
  .drink-copy strong{font-size:17px}
  .drink-mascot{
    grid-column:2;grid-row:1;
    width:76px!important;height:76px;
    margin:0 auto!important;
  }
}

/* Final mobile fixes: keep the first menu opening identical on every page. */
@media(max-width:700px){
  .top-hero:after{
    font-weight:900;
    -webkit-text-stroke:.45px currentColor;
    text-shadow:.25px 0 currentColor,-.25px 0 currentColor;
  }
}


/* PC SIDE: attached faithful layout. Mobile SIDE keeps the custom 3rd/4th rows. */
.drink-mascot{display:none}
@media(max-width:700px){
  .drink-mascot{display:block}
}
