<!-- start Simple Custom CSS and JS -->
<style type="text/css">
/* CSS for Simple CSS Plugin */
.lp-menu-wrapper * { box-sizing: border-box; }
.lp-menu-wrapper { font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; color: #333; background-color: transparent; padding: 40px 0; margin: 0 auto; width: 100%; line-height: 1.6; }

/* Reduced max-width to 800px */
.lp-menu-wrapper .lp-menu-container { max-width: 800px; margin: 0 auto; }

.lp-menu-wrapper .lp-u-bold { font-weight: bold; }
.lp-menu-wrapper .lp-u-red { color: #800000; }
.lp-menu-wrapper .lp-u-gold { color: #c5a059; }

/* Premium Zone */
.lp-menu-wrapper .lp-menu-premium-zone { border: 4px solid #800000; border-radius: 12px; overflow: hidden; margin-bottom: 56px; box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1); background: #fff; }
.lp-menu-wrapper .lp-menu-premium-header { background-color: #800000; color: #fff; padding: 20px 16px; text-align: center; }
.lp-menu-wrapper .lp-menu-premium-title { margin: 0; font-size: 20px; letter-spacing: 0.05em; font-weight: bold; line-height: 1.4; border: none; }
.lp-menu-wrapper .lp-menu-premium-title::after { border: none; }

/* Note Area */
.lp-menu-wrapper .lp-menu-note { background-color: #fff8e1; border-bottom: 1px solid #eecfa1; padding: 14px; text-align: center; }
.lp-menu-wrapper .lp-menu-note-text { color: #800000; font-weight: bold; margin: 0; font-size: 14px; }

/* Menu Item */
.lp-menu-wrapper .lp-menu-item { padding: 28px 20px; border-bottom: 1px dashed #ccc; background-color: #fff; }
.lp-menu-wrapper .lp-menu-item:last-child { border-bottom: none; }
.lp-menu-wrapper .lp-menu-item-inner { display: flex; flex-direction: column; gap: 16px; }
.lp-menu-wrapper .lp-menu-name-area { flex: 1; }
.lp-menu-wrapper .lp-menu-name { font-size: 21px; font-weight: bold; margin-bottom: 6px; line-height: 1.3; color: #333; }
.lp-menu-wrapper .lp-menu-desc-text { font-size: 14px; color: #666; margin-top: 8px; margin-bottom: 12px; line-height: 1.6; text-align: left; }
.lp-menu-wrapper .lp-menu-price { font-size: 32px; font-weight: bold; color: #800000; text-align: right; line-height: 1; white-space: nowrap; }

/* Matsu Rank Special */
.lp-menu-wrapper .lp-menu-item.lp-rank-matsu { background-color: #fffdf5; border-bottom: 2px solid #c5a059; padding-top: 80px; position: relative; }
.lp-menu-wrapper .lp-menu-badge { position: absolute; top: 12px; left: 16px; background: linear-gradient(90deg, #c5a059, #d4af37); color: white; padding: 6px 24px; font-size: 16px; font-weight: bold; border-radius: 4px; transform: rotate(-2deg); border: 2px solid #fff; box-shadow: 0 4px 6px rgba(0,0,0,0.1); z-index: 10; }
.lp-menu-wrapper .lp-menu-name.lp-matsu-name { color: #800000; font-size: 24px; }

/* Set Content Box */
.lp-menu-wrapper .lp-menu-set-box { background-color: rgba(255, 255, 255, 0.8); border: 1px solid #eecfa1; border-radius: 8px; padding: 14px; margin-top: 4px; }
.lp-menu-wrapper .lp-menu-set-label { display: block; font-size: 13px; font-weight: bold; color: #c5a059; margin-bottom: 6px; }
.lp-menu-wrapper .lp-menu-set-list { display: grid; grid-template-columns: 1fr; gap: 6px; }
.lp-menu-wrapper .lp-menu-set-item { font-weight: 500; font-size: 15px; display: flex; align-items: center; }
.lp-menu-wrapper .lp-menu-set-icon { color: #c5a059; margin-right: 6px; }

/* Topping Box */
.lp-menu-wrapper .lp-menu-topping { display: block; background-color: #fff; border: 1px solid #ccc; border-radius: 8px; padding: 14px 18px; margin-top: 10px; box-shadow: 0 2px 5px rgba(0,0,0,0.06); }
.lp-menu-wrapper .lp-menu-topping-label { display: block; font-size: 14px; font-weight: bold; color: #555; margin-bottom: 6px; }
.lp-menu-wrapper .lp-menu-topping-text { font-size: 18px; color: #222; line-height: 1.4; }

/* Option Zone */
.lp-menu-wrapper .lp-menu-option-zone { background-color: #fff; border: 1px solid #e5e7eb; border-radius: 12px; padding: 24px; box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06); }
.lp-menu-wrapper .lp-menu-option-header { border-left: 6px solid #800000; padding-left: 14px; margin-bottom: 20px; font-size: 20px; font-weight: bold; color: #333; }
.lp-menu-wrapper .lp-menu-option-row { display: flex; flex-direction: column; padding: 14px 8px; border-bottom: 1px solid #f3f4f6; }
.lp-menu-wrapper .lp-menu-option-row:nth-child(even) { background-color: #f9fafb; }
.lp-menu-wrapper .lp-menu-option-name { font-size: 15px; font-weight: 500; margin-bottom: 4px; }
.lp-menu-wrapper .lp-menu-option-price { font-size: 18px; font-weight: bold; text-align: right; color: #333; }

/* PC Layout */
@media (min-width: 768px) {
  .lp-menu-wrapper { padding: 60px 20px; }
  .lp-menu-wrapper .lp-menu-item-inner { flex-direction: row; align-items: center; justify-content: space-between; gap: 24px; }
  .lp-menu-wrapper .lp-menu-name-area { min-width: 0; }
  .lp-menu-wrapper .lp-menu-price { width: auto; flex-shrink: 0; margin-left: 0; text-align: right; align-self: flex-start; margin-top: 8px; }
  .lp-menu-wrapper .lp-menu-topping { display: inline-block; min-width: 320px; }
  .lp-menu-wrapper .lp-menu-name.lp-matsu-name { font-size: 28px; }
  .lp-menu-wrapper .lp-menu-price.lp-matsu-price { font-size: 42px; margin-bottom: 0; }
  .lp-menu-wrapper .lp-menu-set-list { grid-template-columns: 1fr 1fr; }
  .lp-menu-wrapper .lp-menu-option-row { flex-direction: row; align-items: center; justify-content: space-between; }
  .lp-menu-wrapper .lp-menu-option-name { margin-bottom: 0; font-size: 16px; }
  .lp-menu-wrapper .lp-menu-option-price { font-size: 20px; }
  .lp-menu-wrapper .lp-menu-badge { left: 24px; padding: 8px 32px; font-size: 18px; }
}</style>
<!-- end Simple Custom CSS and JS -->
