@charset "UTF-8";

@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700&family=Zen+Maru+Gothic:wght@500;700&display=swap");

/*
 * Hapimiru production theme for the login and result pages.
 * Base layout remains in style.css.
 */

/*
 * Happy Meal Kit balanced theme
 *
 * This layer changes only the visual palette. Layout and behavior remain in
 * the existing stylesheets so the theme can be removed independently.
 */

:root {
	--hm-ink: #604c3f;
	--hm-ink-strong: #4d3a2f;
	--hm-ink-muted: #7b6b60;
	--hm-paper: #fffdf8;
	--hm-cream: #fff8e9;
	--hm-cream-strong: #ffefc5;
	--hm-line: #eadcc6;
	--hm-line-strong: #dcc6a5;
	--hm-yellow: #f5b32c;
	--hm-yellow-soft: #fff3c9;
	--hm-green: #7bb575;
	--hm-green-strong: #579653;
	--hm-green-soft: #eef8ea;
	--hm-blue: #68b9c7;
	--hm-blue-strong: #438f9d;
	--hm-blue-soft: #eaf7fa;
	--hm-coral: #ef8f75;
	--hm-coral-strong: #cf6f59;
	--hm-coral-soft: #fff0eb;
	--hm-shadow: rgba(96, 76, 63, 0.11);
}

/* Shared page surface */
body.theme-hapimiru-balanced,
body.theme-hapimiru-balanced .ui-page {
	background-color: #fffaf2 !important;
	background-image:
		linear-gradient(180deg, rgba(255, 253, 248, 0.9) 0%, rgba(255, 250, 242, 0.82) 100%),
		url("../images/kitchen-bg-photo.png") !important;
	color: var(--hm-ink) !important;
}

body.theme-hapimiru-balanced #bigbox,
body.theme-hapimiru-balanced #containar {
	border-color: var(--hm-line) !important;
	background-color: rgba(255, 253, 248, 0.96) !important;
	box-shadow: 0 14px 34px var(--hm-shadow) !important;
}

body.theme-hapimiru-balanced a:link,
body.theme-hapimiru-balanced a:visited {
	color: var(--hm-green-strong);
}

body.theme-hapimiru-balanced a:hover {
	color: var(--hm-coral-strong);
}

/* Header and footer */
body.theme-hapimiru-balanced .ui-header {
	background-color: var(--hm-cream-strong) !important;
	background-image:
		linear-gradient(180deg, rgba(255, 255, 255, 0.74) 0%, rgba(255, 255, 255, 0.18) 100%),
		url("../images/login-header-line-art.svg"),
		linear-gradient(120deg, #fff5d8 0%, #ffedbb 54%, #ffe4aa 100%) !important;
	background-position: center center, center bottom -16px, center center !important;
	border-bottom: 3px solid var(--hm-yellow) !important;
	color: var(--hm-ink-strong) !important;
	box-shadow: 0 5px 18px rgba(96, 76, 63, 0.1) !important;
}

body.theme-hapimiru-balanced .ui-header .ui-title,
body.theme-hapimiru-balanced #home > .ui-header .ui-title {
	background: radial-gradient(ellipse at center, rgba(255, 255, 255, 0.72) 0%, rgba(255, 255, 255, 0.4) 44%, rgba(255, 255, 255, 0) 76%) center center / 500px 52px no-repeat !important;
	color: var(--hm-ink-strong) !important;
	text-shadow: 0 1px 0 rgba(255, 255, 255, 0.7) !important;
}

body.theme-hapimiru-balanced .ui-footer {
	border-top-color: var(--hm-line) !important;
	background: rgba(255, 253, 248, 0.97) !important;
	box-shadow: 0 -3px 14px rgba(96, 76, 63, 0.08) !important;
}

body.theme-hapimiru-balanced .ui-footer .ui-navbar li #nav1,
body.theme-hapimiru-balanced .ui-footer .ui-navbar li #nav2 {
	border-color: var(--hm-line) !important;
	background: linear-gradient(180deg, #fffdf8 0%, #fff5dd 100%) !important;
	color: var(--hm-ink) !important;
}

body.theme-hapimiru-balanced .ui-footer .ui-navbar li #nav1:hover,
body.theme-hapimiru-balanced .ui-footer .ui-navbar li #nav2:hover {
	border-color: var(--hm-line-strong) !important;
	background: linear-gradient(180deg, #fff8e9 0%, #ffedc2 100%) !important;
	color: var(--hm-ink-strong) !important;
}

/* Common buttons and controls */
body.theme-hapimiru-balanced .ui-btn,
body.theme-hapimiru-balanced .ui-page-theme-a .ui-btn,
body.theme-hapimiru-balanced html .ui-bar-a .ui-btn,
body.theme-hapimiru-balanced html .ui-body-a .ui-btn,
body.theme-hapimiru-balanced html body .ui-group-theme-a .ui-btn {
	border-color: var(--hm-line) !important;
	background: rgba(255, 253, 248, 0.98) !important;
	color: var(--hm-ink) !important;
	box-shadow: 0 4px 12px rgba(96, 76, 63, 0.08) !important;
}

body.theme-hapimiru-balanced .ui-btn:hover,
body.theme-hapimiru-balanced .ui-page-theme-a .ui-btn:hover {
	border-color: var(--hm-line-strong) !important;
	background: var(--hm-cream) !important;
	color: var(--hm-ink-strong) !important;
}

body.theme-hapimiru-balanced .ui-btn-active,
body.theme-hapimiru-balanced .ui-page-theme-a .ui-btn-active,
body.theme-hapimiru-balanced .ui-btn.ui-btn-active,
body.theme-hapimiru-balanced .ui-page-theme-a .ui-btn.ui-btn-active {
	border-color: var(--hm-green-strong) !important;
	background: linear-gradient(180deg, #91c88a 0%, var(--hm-green-strong) 100%) !important;
	color: #ffffff !important;
}

body.theme-hapimiru-balanced .ui-btn-icon-left:after,
body.theme-hapimiru-balanced .ui-btn-icon-right:after,
body.theme-hapimiru-balanced .ui-btn-icon-top:after,
body.theme-hapimiru-balanced .ui-btn-icon-bottom:after,
body.theme-hapimiru-balanced .ui-btn-icon-notext:after {
	background-color: rgba(87, 150, 83, 0.92);
}

body.theme-hapimiru-balanced input,
body.theme-hapimiru-balanced textarea,
body.theme-hapimiru-balanced select,
body.theme-hapimiru-balanced .ui-input-text,
body.theme-hapimiru-balanced .ui-input-search {
	border-color: var(--hm-line-strong) !important;
	background-color: #ffffff !important;
	color: var(--hm-ink-strong) !important;
	box-shadow: inset 0 1px 2px rgba(96, 76, 63, 0.05) !important;
}

/* Top page */
body.theme-hapimiru-balanced .customer-notice-board,
body.theme-hapimiru-balanced .plan-context-notes,
body.theme-hapimiru-balanced #PresentGouList {
	border-color: var(--hm-line) !important;
	background: rgba(255, 253, 248, 0.97) !important;
	box-shadow: 0 6px 18px rgba(96, 76, 63, 0.08) !important;
}

body.theme-hapimiru-balanced .customer-notice-board h2 {
	border-bottom-color: var(--hm-line) !important;
	border-left-color: var(--hm-yellow) !important;
	background-color: var(--hm-cream) !important;
	color: var(--hm-ink-strong) !important;
}

body.theme-hapimiru-balanced .customer-notice-item {
	border-top-color: #f3eadc !important;
	color: var(--hm-ink) !important;
}

body.theme-hapimiru-balanced .customer-notice-time,
body.theme-hapimiru-balanced .customer-notice-target-label {
	color: var(--hm-green-strong) !important;
}

body.theme-hapimiru-balanced .customer-notice-heading {
	border-left-color: var(--hm-yellow) !important;
	background: var(--hm-yellow-soft) !important;
	color: var(--hm-ink-strong) !important;
}

body.theme-hapimiru-balanced .customer-notice-message,
body.theme-hapimiru-balanced .customer-notice-empty {
	color: var(--hm-ink-muted) !important;
}

body.theme-hapimiru-balanced .customer-notice-target,
body.theme-hapimiru-balanced .customer-notice-pdf-link,
body.theme-hapimiru-balanced .customer-notice-pdf-link:visited {
	border-color: #d7e7cf !important;
	background: var(--hm-green-soft) !important;
	color: var(--hm-green-strong) !important;
}

body.theme-hapimiru-balanced .customer-notice-debug-badge,
body.theme-hapimiru-balanced .plan-context-debug-badge {
	background: var(--hm-blue-soft) !important;
	color: var(--hm-blue-strong) !important;
}

body.theme-hapimiru-balanced .contract-plan-note,
body.theme-hapimiru-balanced .delivery-pattern-note,
body.theme-hapimiru-balanced .course-staff-note,
body.theme-hapimiru-balanced .customer-debug-note {
	border-color: var(--hm-line) !important;
	color: var(--hm-ink) !important;
}

body.theme-hapimiru-balanced .contract-plan-note-label,
body.theme-hapimiru-balanced .customer-name-suffix {
	color: var(--hm-ink-muted) !important;
}

body.theme-hapimiru-balanced .contract-plan-note-value {
	color: var(--hm-green-strong) !important;
}

body.theme-hapimiru-balanced .contract-plan-note-code {
	background: var(--hm-cream) !important;
	color: var(--hm-ink-muted) !important;
}

body.theme-hapimiru-balanced #home .home-menu-grid .ui-btn {
	border-color: var(--hm-line) !important;
	background-color: #fffdf8 !important;
	background-image:
		radial-gradient(circle at 86% 20%, rgba(245, 179, 44, 0.24) 0, rgba(245, 179, 44, 0.24) 34px, rgba(245, 179, 44, 0) 35px),
		linear-gradient(135deg, #fffdf8 0%, #fff7df 100%) !important;
}

body.theme-hapimiru-balanced #home .home-menu-grid .ui-btn:before {
	background: linear-gradient(90deg, var(--hm-yellow) 0%, var(--hm-coral) 100%) !important;
}

body.theme-hapimiru-balanced #home .home-menu-item:nth-child(2) .ui-btn {
	background-image:
		radial-gradient(circle at 86% 20%, rgba(104, 185, 199, 0.22) 0, rgba(104, 185, 199, 0.22) 34px, rgba(104, 185, 199, 0) 35px),
		linear-gradient(135deg, #fffdf8 0%, var(--hm-blue-soft) 100%) !important;
}

body.theme-hapimiru-balanced #home .home-menu-item:nth-child(2) .ui-btn:before {
	background: linear-gradient(90deg, var(--hm-blue) 0%, var(--hm-green) 100%) !important;
}

body.theme-hapimiru-balanced #home .home-menu-item:nth-child(3) .ui-btn {
	background-image:
		radial-gradient(circle at 86% 20%, rgba(239, 143, 117, 0.22) 0, rgba(239, 143, 117, 0.22) 34px, rgba(239, 143, 117, 0) 35px),
		linear-gradient(135deg, #fffdf8 0%, var(--hm-coral-soft) 100%) !important;
}

body.theme-hapimiru-balanced #home .home-menu-item:nth-child(3) .ui-btn:before {
	background: linear-gradient(90deg, var(--hm-coral) 0%, var(--hm-yellow) 100%) !important;
}

body.theme-hapimiru-balanced #home .home-menu-grid .ui-btn span,
body.theme-hapimiru-balanced #home .home-menu-grid .ui-btn .menu-label {
	color: var(--hm-ink-strong) !important;
}

/* Catalog selection */
body.theme-hapimiru-balanced #tyumon .catalog-select-lead,
body.theme-hapimiru-balanced #oyasumi .catalog-select-lead {
	color: var(--hm-ink-muted) !important;
}

body.theme-hapimiru-balanced #tyumon .catalog-select-panel,
body.theme-hapimiru-balanced #oyasumi .catalog-select-panel {
	border-color: var(--hm-line) !important;
	background: #ffffff !important;
	box-shadow: 0 8px 20px rgba(96, 76, 63, 0.08) !important;
}

body.theme-hapimiru-balanced #tyumon .catalog-list-header,
body.theme-hapimiru-balanced #oyasumi .catalog-list-header {
	border-bottom-color: var(--hm-line) !important;
	background: var(--hm-yellow-soft) !important;
	color: var(--hm-ink-strong) !important;
}

body.theme-hapimiru-balanced #tyumon #CatalogAns .catalog-select-row,
body.theme-hapimiru-balanced #tyumon #CatalogAns .catalog-select-row.ui-btn,
body.theme-hapimiru-balanced #oyasumi #OyasumiAns .catalog-select-row,
body.theme-hapimiru-balanced #oyasumi #OyasumiAns .catalog-select-row.ui-btn {
	border-bottom-color: var(--hm-line) !important;
	background-color: #fffefa !important;
	color: var(--hm-ink) !important;
}

body.theme-hapimiru-balanced #tyumon #CatalogAns .catalog-select-row:hover,
body.theme-hapimiru-balanced #oyasumi #OyasumiAns .catalog-select-row:not(.is-disabled):hover {
	background-color: var(--hm-green-soft) !important;
	color: var(--hm-ink-strong) !important;
}

body.theme-hapimiru-balanced #tyumon #CatalogAns > li.catalog-row-reception-closed .catalog-select-row,
body.theme-hapimiru-balanced #oyasumi #OyasumiAns > li.catalog-row-reception-closed .catalog-select-row {
	background: #f8f5ef !important;
}

body.theme-hapimiru-balanced #tyumon #CatalogAns > li.catalog-row-lunch .catalog-week .catalog-value,
body.theme-hapimiru-balanced #tyumon #CatalogAns > li.catalog-row-lunch .catalog-deadline .catalog-value,
body.theme-hapimiru-balanced #oyasumi #OyasumiAns > li.catalog-row-lunch .catalog-week .catalog-value,
body.theme-hapimiru-balanced #oyasumi #OyasumiAns > li.catalog-row-lunch .catalog-deadline .catalog-value {
	color: var(--hm-green-strong) !important;
}

body.theme-hapimiru-balanced #tyumon #CatalogAns > li.catalog-row-option .catalog-week .catalog-value,
body.theme-hapimiru-balanced #tyumon #CatalogAns > li.catalog-row-option .catalog-deadline .catalog-value {
	color: var(--hm-blue-strong) !important;
}

body.theme-hapimiru-balanced #tyumon .catalog-select-action,
body.theme-hapimiru-balanced #tyumon .catalog-select-action-lunch,
body.theme-hapimiru-balanced #oyasumi .catalog-select-action {
	background: linear-gradient(180deg, #93ca8c 0%, var(--hm-green-strong) 100%) !important;
	box-shadow: 0 5px 12px rgba(87, 150, 83, 0.2) !important;
}

body.theme-hapimiru-balanced #tyumon .catalog-select-action-option {
	background: linear-gradient(180deg, #82cbd6 0%, var(--hm-blue-strong) 100%) !important;
	box-shadow: 0 5px 12px rgba(67, 143, 157, 0.2) !important;
}

body.theme-hapimiru-balanced #tyumon .catalog-select-action-confirm {
	background: linear-gradient(180deg, #f1a58f 0%, var(--hm-coral-strong) 100%) !important;
	box-shadow: 0 5px 12px rgba(207, 111, 89, 0.2) !important;
}

body.theme-hapimiru-balanced #tyumon .catalog-order-partial .catalog-value {
	border-color: var(--hm-yellow) !important;
	background: #fff0a8 !important;
	color: #77500b !important;
}

body.theme-hapimiru-balanced #tyumon .catalog-reception-open .catalog-value {
	border-color: #a9dce4 !important;
	background: var(--hm-blue-soft) !important;
	color: var(--hm-blue-strong) !important;
}

/* Order entry and confirmation */
body.theme-hapimiru-balanced #tyumonSyosai .syosai-order-main,
body.theme-hapimiru-balanced #tyumonSyosai .syosai-menu-panel,
body.theme-hapimiru-balanced #tyumonTSyosai .tsyosai-order-main,
body.theme-hapimiru-balanced #tyumonTSyosai .tsyosai-menu-panel,
body.theme-hapimiru-balanced .syosai-kakunin-panel,
body.theme-hapimiru-balanced .tsyosai-kakunin-panel {
	border-color: var(--hm-line) !important;
	background: rgba(255, 255, 255, 0.97) !important;
	box-shadow: 0 7px 18px rgba(96, 76, 63, 0.08) !important;
}

body.theme-hapimiru-balanced .syosai-section-title,
body.theme-hapimiru-balanced .tsyosai-section-title {
	border-left-color: var(--hm-yellow) !important;
	border-bottom-color: var(--hm-line) !important;
	background: var(--hm-cream) !important;
	color: var(--hm-ink-strong) !important;
}

body.theme-hapimiru-balanced .syosai-help,
body.theme-hapimiru-balanced .tsyosai-help,
body.theme-hapimiru-balanced .syosai-menu-note,
body.theme-hapimiru-balanced .tsyosai-menu-note {
	border-color: var(--hm-line) !important;
	background: #fffdf8 !important;
	color: var(--hm-ink-muted) !important;
}

body.theme-hapimiru-balanced .syosai-order-table,
body.theme-hapimiru-balanced .tsyosai-order-table,
body.theme-hapimiru-balanced .syosai-order-table th,
body.theme-hapimiru-balanced .syosai-order-table td,
body.theme-hapimiru-balanced .tsyosai-order-table th,
body.theme-hapimiru-balanced .tsyosai-order-table td {
	border-color: var(--hm-line-strong) !important;
}

body.theme-hapimiru-balanced .syosai-order-table thead th,
body.theme-hapimiru-balanced .tsyosai-order-table thead th {
	background-color: var(--hm-cream) !important;
	color: var(--hm-ink-strong) !important;
}

body.theme-hapimiru-balanced .syosai-order-table tbody th,
body.theme-hapimiru-balanced .tsyosai-order-table tbody th {
	background: #fffdf8 !important;
	color: var(--hm-ink-strong) !important;
}

body.theme-hapimiru-balanced .syosai-order-table input:focus,
body.theme-hapimiru-balanced .tsyosai-order-table input:focus {
	border-color: var(--hm-green) !important;
	background: var(--hm-green-soft) !important;
	box-shadow: 0 0 0 3px rgba(123, 181, 117, 0.18) !important;
}

body.theme-hapimiru-balanced .syosai-menu-list li,
body.theme-hapimiru-balanced .tsyosai-menu-list li {
	border-color: #f0e5d5 !important;
	background: #fffefa !important;
	color: var(--hm-ink) !important;
}

body.theme-hapimiru-balanced .syosai-favorite-block,
body.theme-hapimiru-balanced .tsyosai-favorite-block {
	border-color: var(--hm-line) !important;
	background: #fffaf0 !important;
}

body.theme-hapimiru-balanced .syosai-meal-calc-open,
body.theme-hapimiru-balanced #syosaiEnableInput {
	border-color: #e4c273 !important;
	background: linear-gradient(180deg, #ffdc79 0%, var(--hm-yellow) 100%) !important;
	color: #654515 !important;
}

body.theme-hapimiru-balanced .syosai-confirm-button,
body.theme-hapimiru-balanced .tsyosai-confirm-button {
	border-color: var(--hm-green-strong) !important;
	background: linear-gradient(180deg, #91c88a 0%, var(--hm-green-strong) 100%) !important;
	color: #ffffff !important;
}

body.theme-hapimiru-balanced .syosai-kakunin-missing-warning {
	border-color: #e6bc45 !important;
	background: var(--hm-yellow-soft) !important;
	color: #725019 !important;
}

body.theme-hapimiru-balanced .syosai-oyasumi-panel,
body.theme-hapimiru-balanced .syosai-meal-calc-inner {
	border-color: var(--hm-line) !important;
	background: #fffdf8 !important;
}

/* Settings page */
body.theme-hapimiru-balanced #settei .settings-customer-banner,
body.theme-hapimiru-balanced #settei .settings-info-card,
body.theme-hapimiru-balanced #settei .settings-mail-card {
	border-color: var(--hm-line) !important;
	background: #fffdf8 !important;
	box-shadow: 0 7px 18px rgba(96, 76, 63, 0.08) !important;
}

body.theme-hapimiru-balanced #settei .settings-customer-banner {
	border-left-color: var(--hm-yellow) !important;
	background: linear-gradient(90deg, var(--hm-cream) 0%, #fffdf8 100%) !important;
	color: var(--hm-ink-strong) !important;
}

body.theme-hapimiru-balanced #settei .settings-card-title,
body.theme-hapimiru-balanced #settei .settings-mail-title {
	color: var(--hm-ink-strong) !important;
}

body.theme-hapimiru-balanced #settei .settings-card-icon,
body.theme-hapimiru-balanced #settei .settings-mail-icon {
	border-color: #d8e8d3 !important;
	background: var(--hm-green-soft) !important;
	color: var(--hm-green-strong) !important;
}

body.theme-hapimiru-balanced #settei .settings-mail-guide {
	border-color: #efd083 !important;
	border-left-color: var(--hm-yellow) !important;
	background: var(--hm-cream) !important;
	color: var(--hm-ink) !important;
}

/* Root login and result pages */
body.theme-hapimiru-balanced h1.site-logo {
	border-bottom-color: var(--hm-line) !important;
	background: linear-gradient(180deg, #fffdf8 0%, #fff3d7 100%) !important;
	box-shadow: 0 2px 12px rgba(96, 76, 63, 0.08) !important;
}

body.theme-hapimiru-balanced h1.site-logo:after {
	background: linear-gradient(90deg, var(--hm-yellow) 0%, var(--hm-coral) 48%, var(--hm-green) 100%) !important;
}

body.theme-hapimiru-balanced #containar > h2 {
	border-color: var(--hm-line) !important;
	background: var(--hm-yellow-soft) !important;
	color: var(--hm-ink-strong) !important;
}

body.theme-hapimiru-balanced #containar > div {
	border-color: var(--hm-line) !important;
	background-color: rgba(255, 253, 248, 0.97) !important;
}

body.theme-hapimiru-balanced #btn1,
body.theme-hapimiru-balanced input[type="submit"] {
	border-color: var(--hm-green-strong) !important;
	background: linear-gradient(180deg, #91c88a 0%, var(--hm-green-strong) 100%) !important;
	color: #ffffff !important;
}

body.theme-hapimiru-balanced .login-result-card {
	border-color: var(--hm-line) !important;
	background: linear-gradient(180deg, #fffdf8 0%, #fff8e9 100%) !important;
	box-shadow: 0 14px 34px rgba(96, 76, 63, 0.11) !important;
}

body.theme-hapimiru-balanced .login-result-card:before {
	background: linear-gradient(90deg, var(--hm-yellow) 0%, var(--hm-coral) 50%, var(--hm-green) 100%) !important;
}

@media print {
	body.theme-hapimiru-balanced,
	body.theme-hapimiru-balanced .ui-page {
		background: #ffffff !important;
	}
}


/*
 * Sister-site-forward visual layer.
 * Loaded after theme-hapimiru-balanced.css to keep the layout untouched.
 */

:root {
	--hms-ink-strong: #49362d;
	--hms-ink: #604c3f;
	--hms-ink-muted: #806f63;
	--hms-line: #dfc9aa;
}

body.theme-hapimiru-sister,
body.theme-hapimiru-sister .ui-page {
	background-color: #f9f4e8 !important;
	background-image:
		linear-gradient(180deg, rgba(255, 255, 255, 0.78) 0%, rgba(249, 244, 232, 0.92) 100%),
		repeating-linear-gradient(135deg, rgba(245, 179, 44, 0.035) 0, rgba(245, 179, 44, 0.035) 2px, transparent 2px, transparent 18px) !important;
	color: var(--hms-ink) !important;
	font-family: "Noto Sans JP", "Yu Gothic", Meiryo, sans-serif !important;
}

body.theme-hapimiru-sister h1,
body.theme-hapimiru-sister h2,
body.theme-hapimiru-sister h3,
body.theme-hapimiru-sister .ui-title,
body.theme-hapimiru-sister .ui-btn,
body.theme-hapimiru-sister .catalog-value,
body.theme-hapimiru-sister .menu-label {
	font-family: "Zen Maru Gothic", "Hiragino Maru Gothic ProN", "Yu Gothic", Meiryo, sans-serif !important;
}

body.theme-hapimiru-sister h1,
body.theme-hapimiru-sister h2,
body.theme-hapimiru-sister h3 {
	color: var(--hms-ink-strong) !important;
}

body.theme-hapimiru-sister #bigbox,
body.theme-hapimiru-sister #containar {
	border: 2px solid var(--hms-line) !important;
	border-radius: 14px !important;
	background: rgba(255, 255, 255, 0.97) !important;
	box-shadow: 0 10px 0 rgba(96, 76, 63, 0.035), 0 20px 42px rgba(96, 76, 63, 0.08) !important;
}

/* White brand header with a colorful meal-kit accent. */
body.theme-hapimiru-sister .ui-header {
	background-color: #fffdf8 !important;
	background-image:
		linear-gradient(180deg, rgba(255, 255, 255, 0.94) 0%, rgba(255, 249, 232, 0.76) 100%),
		url("../images/login-header-line-art.svg") !important;
	background-position: center center, center bottom -18px !important;
	background-size: 100% 100%, 1040px 76px !important;
	border-bottom: 0 !important;
	box-shadow: 0 6px 18px rgba(96, 76, 63, 0.08) !important;
}

body.theme-hapimiru-sister .ui-header:after {
	height: 5px !important;
	background: linear-gradient(90deg,
		#f5b32c 0%, #f5b32c 25%,
		#ef8f75 25%, #ef8f75 50%,
		#7bb575 50%, #7bb575 75%,
		#68b9c7 75%, #68b9c7 100%) !important;
}

body.theme-hapimiru-sister .ui-header .ui-title,
body.theme-hapimiru-sister #home > .ui-header .ui-title {
	background: radial-gradient(ellipse at center, rgba(255, 255, 255, 0.96) 0%, rgba(255, 255, 255, 0.7) 48%, rgba(255, 255, 255, 0) 78%) center / 540px 54px no-repeat !important;
	color: var(--hms-ink-strong) !important;
	font-weight: 700 !important;
	text-shadow: none !important;
}

body.theme-hapimiru-sister #home > .ui-header .ui-title {
	font-size: 1.5em !important;
}

body.theme-hapimiru-sister .ui-footer {
	border-top: 2px solid #f0dcc0 !important;
	background: #fffdf8 !important;
}

body.theme-hapimiru-sister .ui-footer .ui-navbar li #nav1,
body.theme-hapimiru-sister .ui-footer .ui-navbar li #nav2 {
	border-color: #f0dcc0 !important;
	background: #fffaf0 !important;
	color: #604c3f !important;
}

/* Common controls use outlined cream surfaces and stronger color blocks. */
body.theme-hapimiru-sister .ui-btn,
body.theme-hapimiru-sister .ui-page-theme-a .ui-btn {
	border: 2px solid #ead6ba !important;
	border-radius: 12px !important;
	background: #fffdf8 !important;
	color: #604c3f !important;
	box-shadow: 0 4px 0 rgba(96, 76, 63, 0.06) !important;
}

body.theme-hapimiru-sister .ui-btn:hover,
body.theme-hapimiru-sister .ui-page-theme-a .ui-btn:hover {
	border-color: #e6bd69 !important;
	background: #fff7dc !important;
	color: #4d3a2f !important;
}

body.theme-hapimiru-sister .ui-btn-active,
body.theme-hapimiru-sister .ui-page-theme-a .ui-btn-active,
body.theme-hapimiru-sister .ui-btn.ui-btn-active {
	border-color: #4f914e !important;
	background: #69aa63 !important;
	color: #ffffff !important;
	box-shadow: 0 5px 0 rgba(63, 121, 61, 0.18) !important;
}

body.theme-hapimiru-sister input,
body.theme-hapimiru-sister textarea,
body.theme-hapimiru-sister select,
body.theme-hapimiru-sister .ui-input-text,
body.theme-hapimiru-sister .ui-input-search {
	border: 2px solid #e5d2b5 !important;
	border-radius: 10px !important;
	background: #ffffff !important;
	color: #604c3f !important;
}

/* Top page */
body.theme-hapimiru-sister .plan-context-notes,
body.theme-hapimiru-sister #PresentGouList {
	border: 2px solid var(--hms-line) !important;
	border-radius: 14px !important;
	background: #fffdf8 !important;
	box-shadow: 0 6px 0 rgba(96, 76, 63, 0.04) !important;
}

body.theme-hapimiru-sister .customer-notice-board {
	position: relative;
	isolation: isolate;
	margin: 18px 0 22px;
	padding: 58px 14px 14px !important;
	border: 6px solid #c9a779 !important;
	border-radius: 12px !important;
	background-color: #edd9b8 !important;
	background-image:
		linear-gradient(rgba(255, 249, 235, 0.34), rgba(255, 249, 235, 0.34)),
		url("../images/cork-texture-hapimiru.png") !important;
	background-position: center, center !important;
	background-size: auto, 320px 320px !important;
	box-shadow:
		0 5px 0 rgba(96, 76, 63, 0.045),
		inset 0 0 0 2px rgba(255, 253, 248, 0.46) !important;
	overflow: hidden;
}

body.theme-hapimiru-sister .customer-notice-board h2 {
	position: absolute;
	top: 9px;
	left: 12px;
	z-index: 3;
	display: inline-flex;
	align-items: center;
	width: auto;
	max-width: calc(100% - 24px);
	min-height: 38px;
	margin: 0;
	padding: 0.48em 1.25em 0.48em 3.2em;
	box-sizing: border-box;
	border: 1px solid rgba(154, 118, 76, 0.24) !important;
	border-radius: 3px !important;
	background-color: #fffdf8 !important;
	background-image: url("../WebJYver0_1_0/images/headback-vegetable.png") !important;
	background-repeat: no-repeat !important;
	background-position: 0.72em center !important;
	background-size: 31px 31px !important;
	color: var(--hms-ink-strong) !important;
	font-size: 1.12em !important;
	font-weight: 700 !important;
	line-height: 1.35;
	box-shadow: 0 2px 5px rgba(96, 76, 63, 0.11) !important;
	text-align: left;
}

body.theme-hapimiru-sister .customer-notice-board h2:before,
body.theme-hapimiru-sister .customer-notice-board h2:after {
	content: "";
	position: absolute;
	top: 4px;
	width: 9px;
	height: 9px;
	border: 1px solid rgba(73, 54, 45, 0.16);
	border-radius: 50%;
	box-shadow: 0 1px 2px rgba(73, 54, 45, 0.22);
}

body.theme-hapimiru-sister .customer-notice-board h2:before {
	left: 5px;
	background: #7bb575;
}

body.theme-hapimiru-sister .customer-notice-board h2:after {
	right: 5px;
	background: #f5b32c;
}

body.theme-hapimiru-sister .customer-notice-list {
	position: relative;
	z-index: 1;
	display: grid;
	gap: 12px;
	margin: 0;
	padding: 0;
}

body.theme-hapimiru-sister .customer-notice-item,
body.theme-hapimiru-sister .customer-notice-empty {
	position: relative;
	margin: 0;
	box-sizing: border-box;
	border: 0 !important;
	border-radius: 2px !important;
	background: #fffefa !important;
	box-shadow: 0 3px 8px rgba(96, 76, 63, 0.13) !important;
}

body.theme-hapimiru-sister .customer-notice-item {
	display: grid;
	grid-template-columns: minmax(128px, auto) minmax(0, 1fr);
	gap: 1em;
	align-items: start;
	padding: 18px 22px !important;
	color: var(--hms-ink) !important;
}

body.theme-hapimiru-sister .customer-notice-empty {
	padding: 18px 22px !important;
}

body.theme-hapimiru-sister .customer-notice-item:before,
body.theme-hapimiru-sister .customer-notice-item:after,
body.theme-hapimiru-sister .customer-notice-empty:before,
body.theme-hapimiru-sister .customer-notice-empty:after {
	content: "";
	position: absolute;
	top: -7px;
	z-index: 2;
	width: 46px;
	height: 15px;
	opacity: 0.82;
	pointer-events: none;
}

body.theme-hapimiru-sister .customer-notice-item:before,
body.theme-hapimiru-sister .customer-notice-empty:before {
	left: 16px;
	background: #f7cf58;
	transform: rotate(-7deg);
}

body.theme-hapimiru-sister .customer-notice-item:after,
body.theme-hapimiru-sister .customer-notice-empty:after {
	right: 16px;
	background: #83cbd6;
	transform: rotate(7deg);
}

body.theme-hapimiru-sister .customer-notice-time,
body.theme-hapimiru-sister .customer-notice-target-label {
	color: #477f44 !important;
}

body.theme-hapimiru-sister .customer-notice-time {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: max-content;
	min-width: 0;
	padding: 0.28em 0.9em;
	border-radius: 999px;
	background: #477f44;
	color: #ffffff !important;
	line-height: 1.4;
}

body.theme-hapimiru-sister .customer-notice-heading {
	border-left: 0 !important;
	border-radius: 999px !important;
	background: #f5b32c !important;
	color: var(--hms-ink-strong) !important;
}

body.theme-hapimiru-sister .customer-notice-message,
body.theme-hapimiru-sister .customer-notice-empty {
	color: var(--hms-ink) !important;
}

body.theme-hapimiru-sister .contract-plan-note,
body.theme-hapimiru-sister .delivery-pattern-note,
body.theme-hapimiru-sister .course-staff-note,
body.theme-hapimiru-sister .customer-debug-note {
	border-color: var(--hms-line) !important;
	background: #fffdf8 !important;
}

body.theme-hapimiru-sister .contract-plan-note-label,
body.theme-hapimiru-sister .customer-name-suffix {
	color: var(--hms-ink-muted) !important;
}

body.theme-hapimiru-sister .contract-plan-note-value {
	color: #477f44 !important;
}

body.theme-hapimiru-sister .customer-debug-note .contract-plan-note-value {
	color: var(--hms-ink-strong) !important;
}

body.theme-hapimiru-sister .contract-plan-note-code {
	border: 1px solid #efd9b9;
	background: #fff4d7 !important;
	color: #715d50 !important;
}

body.theme-hapimiru-sister #home .home-plan-context {
	position: relative;
	grid-template-columns: minmax(260px, 1.7fr) minmax(150px, 0.78fr);
	margin: -8px 0 22px;
	border: 1px solid #ddc9ab !important;
	border-left: 1px solid #ddc9ab !important;
	border-radius: 10px !important;
	background: #ffffff !important;
	box-shadow: 0 4px 0 rgba(96, 76, 63, 0.035) !important;
}

body.theme-hapimiru-sister #home .home-plan-context .customer-debug-note,
body.theme-hapimiru-sister #tyumon .page-plan-context .customer-debug-note,
body.theme-hapimiru-sister #tyumonSyosai .page-plan-context .customer-debug-note {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	grid-template-rows: auto auto;
	column-gap: 0.55em;
	row-gap: 0.14em;
	align-content: center;
	min-height: 86px;
	padding-left: 4.5em;
	background: #ffffff !important;
}

body.theme-hapimiru-sister #home .home-plan-context .customer-debug-note .contract-plan-note-label,
body.theme-hapimiru-sister #tyumon .page-plan-context .customer-debug-note .contract-plan-note-label,
body.theme-hapimiru-sister #tyumonSyosai .page-plan-context .customer-debug-note .contract-plan-note-label {
	grid-column: 1;
	grid-row: 1;
	margin-bottom: 0;
}

body.theme-hapimiru-sister #home .home-plan-context .customer-debug-note .contract-plan-note-code,
body.theme-hapimiru-sister #tyumon .page-plan-context .customer-debug-note .contract-plan-note-code,
body.theme-hapimiru-sister #tyumonSyosai .page-plan-context .customer-debug-note .contract-plan-note-code {
	grid-column: 2;
	grid-row: 1;
	align-self: center;
	justify-self: start;
	margin-top: 0;
}

body.theme-hapimiru-sister #home .home-plan-context .customer-debug-note .contract-plan-note-value,
body.theme-hapimiru-sister #tyumon .page-plan-context .customer-debug-note .contract-plan-note-value,
body.theme-hapimiru-sister #tyumonSyosai .page-plan-context .customer-debug-note .contract-plan-note-value {
	grid-column: 1 / -1;
	grid-row: 2;
}

body.theme-hapimiru-sister #home .home-plan-context .customer-debug-note:before,
body.theme-hapimiru-sister #tyumon .page-plan-context .customer-debug-note:before,
body.theme-hapimiru-sister #tyumonSyosai .page-plan-context .customer-debug-note:before {
	content: "";
	position: absolute;
	left: 1em;
	top: 50%;
	width: 42px;
	height: 42px;
	border-radius: 50%;
	background: url("../WebJYver0_1_0/images/icons-png/nav-home.png") center / contain no-repeat;
	transform: translateY(-50%);
	opacity: 0.86;
}

body.theme-hapimiru-sister #home .home-plan-context .contract-plan-note {
	min-height: 86px;
	border-left: 1px solid #ddc9ab !important;
	background: #ffffff !important;
}

body.theme-hapimiru-sister #home .home-plan-context .contract-plan-note .contract-plan-note-value {
	display: inline-flex;
	align-self: flex-start;
	padding: 0.18em 0.72em 0.24em;
	border: 1px solid #cfe2c5;
	border-radius: 999px;
	background: #eaf5e4;
	color: #477f44 !important;
	font-size: 1.08em;
}

body.theme-hapimiru-sister #home .home-menu-grid .ui-btn {
	border: 2px solid var(--hms-line) !important;
	border-radius: 14px !important;
	background-color: #fff8df !important;
	background-image: linear-gradient(180deg, #fffdf8 0%, #fff2c9 100%) !important;
	box-shadow: 0 7px 0 rgba(245, 179, 44, 0.12) !important;
}

body.theme-hapimiru-sister #home .home-menu-grid .ui-btn:before {
	height: 7px !important;
	background: #f5b32c !important;
}

body.theme-hapimiru-sister #home .home-menu-item:nth-child(2) .ui-btn {
	background-image: linear-gradient(180deg, #fffdf8 0%, #e6f6f8 100%) !important;
	box-shadow: 0 7px 0 rgba(104, 185, 199, 0.12) !important;
}

body.theme-hapimiru-sister #home .home-menu-item:nth-child(2) .ui-btn:before {
	background: #68b9c7 !important;
}

body.theme-hapimiru-sister #home .home-menu-item:nth-child(3) .ui-btn {
	background-image: linear-gradient(180deg, #fffdf8 0%, #ffebe5 100%) !important;
	box-shadow: 0 7px 0 rgba(239, 143, 117, 0.12) !important;
}

body.theme-hapimiru-sister #home .home-menu-item:nth-child(3) .ui-btn:before {
	background: #ef8f75 !important;
}

body.theme-hapimiru-sister #home .home-menu-grid .ui-btn span,
body.theme-hapimiru-sister #home .home-menu-grid .ui-btn .menu-label {
	color: var(--hms-ink-strong) !important;
	font-size: 1.13em !important;
	font-weight: 700 !important;
}

body.theme-hapimiru-sister #home .home-menu-grid .ui-btn img {
	width: 80px !important;
	height: 80px !important;
}

/* Catalog selection */
body.theme-hapimiru-sister #tyumon .catalog-select-panel,
body.theme-hapimiru-sister #oyasumi .catalog-select-panel {
	border: 2px solid var(--hms-line) !important;
	border-radius: 14px !important;
	box-shadow: 0 7px 0 rgba(96, 76, 63, 0.045) !important;
}

body.theme-hapimiru-sister #tyumon .catalog-list-header,
body.theme-hapimiru-sister #oyasumi .catalog-list-header {
	border-bottom: 2px solid #e9c56f !important;
	background: #ffe9a6 !important;
	color: var(--hms-ink-strong) !important;
	font-weight: 700 !important;
}

body.theme-hapimiru-sister #tyumon #CatalogAns .catalog-select-row,
body.theme-hapimiru-sister #tyumon #CatalogAns .catalog-select-row.ui-btn,
body.theme-hapimiru-sister #oyasumi #OyasumiAns .catalog-select-row,
body.theme-hapimiru-sister #oyasumi #OyasumiAns .catalog-select-row.ui-btn {
	border: 0 !important;
	border-bottom: 2px solid #f2e4d0 !important;
	border-radius: 0 !important;
	background: #fffdf8 !important;
	box-shadow: none !important;
}

body.theme-hapimiru-sister #tyumon #CatalogAns .catalog-select-row:hover,
body.theme-hapimiru-sister #oyasumi #OyasumiAns .catalog-select-row:not(.is-disabled):hover {
	background: #f2faef !important;
}

body.theme-hapimiru-sister #tyumon .catalog-select-action,
body.theme-hapimiru-sister #tyumon .catalog-select-action-lunch,
body.theme-hapimiru-sister #oyasumi .catalog-select-action {
	border: 0 !important;
	background: #69aa63 !important;
	box-shadow: 0 5px 0 rgba(63, 121, 61, 0.18) !important;
}

body.theme-hapimiru-sister #tyumon .catalog-select-action-option {
	background: #55acba !important;
	box-shadow: 0 5px 0 rgba(67, 143, 157, 0.18) !important;
}

body.theme-hapimiru-sister #tyumon .catalog-select-action-confirm {
	background: #e87f64 !important;
	box-shadow: 0 5px 0 rgba(189, 91, 69, 0.18) !important;
}

body.theme-hapimiru-sister #tyumon .catalog-order-partial .catalog-value {
	border: 2px solid #e8ad20 !important;
	background: #fff0aa !important;
	color: #6f4911 !important;
}

body.theme-hapimiru-sister #tyumon .catalog-order-missing .catalog-value {
	border-color: #efad9c !important;
	background: #fff0eb !important;
	color: #b8513c !important;
}

body.theme-hapimiru-sister #tyumon .catalog-reception-open .catalog-value {
	border-color: #9ed3dc !important;
	background: #e6f7fa !important;
	color: #357f8d !important;
}

/* Order entry */
body.theme-hapimiru-sister #tyumonSyosai .syosai-order-main,
body.theme-hapimiru-sister #tyumonSyosai .syosai-menu-panel,
body.theme-hapimiru-sister #tyumonTSyosai .tsyosai-order-main,
body.theme-hapimiru-sister #tyumonTSyosai .tsyosai-menu-panel,
body.theme-hapimiru-sister .syosai-kakunin-panel,
body.theme-hapimiru-sister .tsyosai-kakunin-panel {
	border: 2px solid var(--hms-line) !important;
	border-radius: 14px !important;
	background: #ffffff !important;
	box-shadow: 0 7px 0 rgba(96, 76, 63, 0.045) !important;
}

body.theme-hapimiru-sister .syosai-section-title,
body.theme-hapimiru-sister .tsyosai-section-title {
	border-left: 8px solid #f5b32c !important;
	border-bottom: 2px solid var(--hms-line) !important;
	background: #fff2cc !important;
	color: var(--hms-ink-strong) !important;
	font-weight: 700 !important;
}

body.theme-hapimiru-sister .syosai-help,
body.theme-hapimiru-sister .tsyosai-help,
body.theme-hapimiru-sister .syosai-menu-note,
body.theme-hapimiru-sister .tsyosai-menu-note {
	border-color: #f2e4d0 !important;
	background: #fffdf8 !important;
	color: #715d50 !important;
}

body.theme-hapimiru-sister .syosai-order-table,
body.theme-hapimiru-sister .tsyosai-order-table,
body.theme-hapimiru-sister .syosai-order-table th,
body.theme-hapimiru-sister .syosai-order-table td,
body.theme-hapimiru-sister .tsyosai-order-table th,
body.theme-hapimiru-sister .tsyosai-order-table td {
	border-color: #e3cba8 !important;
}

body.theme-hapimiru-sister .syosai-order-table thead th,
body.theme-hapimiru-sister .tsyosai-order-table thead th {
	background: #fff2cc !important;
	color: var(--hms-ink-strong) !important;
	font-weight: 700 !important;
}

body.theme-hapimiru-sister .syosai-menu-list li,
body.theme-hapimiru-sister .tsyosai-menu-list li {
	border-color: #f0dfc7 !important;
	background: #fffdf8 !important;
	color: #604c3f !important;
}

body.theme-hapimiru-sister .syosai-favorite-block,
body.theme-hapimiru-sister .tsyosai-favorite-block {
	border-color: #efd9b9 !important;
	background: #fff8e6 !important;
}

body.theme-hapimiru-sister #syosaiEnableInput {
	border-color: #e19b17 !important;
	background: #f5b32c !important;
	color: #ffffff !important;
	box-shadow: 0 5px 0 rgba(194, 132, 15, 0.18) !important;
}

body.theme-hapimiru-sister .syosai-meal-calc-open {
	border-color: #5d9d58 !important;
	background: #eef8ea !important;
	color: #4f914e !important;
	box-shadow: 0 5px 0 rgba(87, 150, 83, 0.1) !important;
}

body.theme-hapimiru-sister .syosai-confirm-button,
body.theme-hapimiru-sister .tsyosai-confirm-button {
	border-color: #4f914e !important;
	background: #69aa63 !important;
	color: #ffffff !important;
	box-shadow: 0 5px 0 rgba(63, 121, 61, 0.18) !important;
}

body.theme-hapimiru-sister .preview-star,
body.theme-hapimiru-sister .syosai-favorite-toggle {
	color: #f5a900 !important;
}

/* Settings and login keep the same brand language. */
body.theme-hapimiru-sister #settei .settings-customer-banner,
body.theme-hapimiru-sister #settei .settings-info-card,
body.theme-hapimiru-sister #settei .settings-mail-card,
body.theme-hapimiru-sister .login-result-card {
	border: 2px solid var(--hms-line) !important;
	border-radius: 14px !important;
	background: #fffdf8 !important;
	box-shadow: 0 7px 0 rgba(96, 76, 63, 0.045) !important;
}

body.theme-hapimiru-sister .result-primary-link,
body.theme-hapimiru-sister .result-primary-link:link,
body.theme-hapimiru-sister .result-primary-link:visited {
	border-color: #dfa128 !important;
	background: #f5bb3e !important;
	color: var(--hms-ink-strong) !important;
	text-shadow: none !important;
	box-shadow: 0 3px 0 rgba(180, 118, 18, 0.12) !important;
}

body.theme-hapimiru-sister .result-primary-link:hover {
	border-color: #ce8d13 !important;
	background: #efb032 !important;
	color: var(--hms-ink-strong) !important;
}

body.theme-hapimiru-sister #settei .settings-customer-banner,
body.theme-hapimiru-sister #settei .settings-mail-guide {
	border-left-color: #f5b32c !important;
	background: #fff2cc !important;
	color: var(--hms-ink-strong) !important;
}

/* Current settings-page markup. Remove the remaining legacy mint palette. */
body.theme-hapimiru-sister #settei .settings-page-title {
	border: 1px solid var(--hms-line) !important;
	border-left: 1px solid var(--hms-line) !important;
	background: #ffffff !important;
	color: var(--hms-ink-strong) !important;
	box-shadow: 0 4px 0 rgba(96, 76, 63, 0.035) !important;
}

body.theme-hapimiru-sister #settei .settings-info-card,
body.theme-hapimiru-sister #settei .settings-mail-card {
	border: 1px solid var(--hms-line) !important;
	background: #ffffff !important;
	box-shadow: 0 5px 0 rgba(96, 76, 63, 0.04) !important;
}

body.theme-hapimiru-sister #settei .settings-info-card:before {
	border-color: #efd9b9 !important;
	background-color: #fff4d7 !important;
	background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='28'%20height='28'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23b9781b'%20stroke-width='2.2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='4'%20y='10'%20width='16'%20height='10'%20rx='2'%20/%3E%3Cpath%20d='M8%2010V7a4%204%200%200%201%208%200v3'%20/%3E%3Cpath%20d='M12%2014v2'%20/%3E%3C/svg%3E") !important;
}

body.theme-hapimiru-sister #settei .settings-mail-card:before {
	border-color: #c8dde0 !important;
	background-color: #eef8fa !important;
	background-image: url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='28'%20height='28'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%234d93a1'%20stroke-width='2.2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Crect%20x='3'%20y='5'%20width='18'%20height='14'%20rx='2.5'%20/%3E%3Cpath%20d='m4%207%208%206%208-6'%20/%3E%3C/svg%3E") !important;
}

body.theme-hapimiru-sister #settei .settings-section-title {
	color: var(--hms-ink-strong) !important;
}

body.theme-hapimiru-sister #settei .settings-current-value {
	border-color: #eadcc6 !important;
	background: #fffdf8 !important;
	color: var(--hms-ink-strong) !important;
}

body.theme-hapimiru-sister #settei .settings-current-value:empty:before,
body.theme-hapimiru-sister #settei .settings-current-value.is-empty-value {
	background: #faf7f0 !important;
	color: var(--hms-ink-muted) !important;
}

body.theme-hapimiru-sister #settei .settings-note,
body.theme-hapimiru-sister #settei label {
	color: var(--hms-ink-muted) !important;
}

body.theme-hapimiru-sister #settei .ui-collapsible-heading-toggle,
body.theme-hapimiru-sister #settei .ui-page-theme-a .ui-collapsible-heading-toggle {
	border-color: #c8dde0 !important;
	background: #eef8fa !important;
	color: var(--hms-ink-strong) !important;
	box-shadow: 0 4px 0 rgba(104, 185, 199, 0.08) !important;
}

body.theme-hapimiru-sister #settei .ui-collapsible-heading-toggle:after {
	background-color: #68b9c7 !important;
}

body.theme-hapimiru-sister #settei .ui-collapsible:not(.ui-collapsible-collapsed) .ui-collapsible-heading-toggle {
	border-bottom-color: #dce9eb !important;
}

body.theme-hapimiru-sister #settei .ui-collapsible-content {
	border-color: #c8dde0 !important;
	background: #ffffff !important;
}

body.theme-hapimiru-sister #settei .mail-collapsible .ui-input-text {
	border-color: #dfc9aa !important;
	background: #fffdf8 !important;
}

body.theme-hapimiru-sister h1.site-logo {
	padding: 2px 16px 12px !important;
	border-bottom: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.theme-hapimiru-sister h1.site-logo:before {
	display: block !important;
	bottom: 4px !important;
	height: 54px !important;
	background-position: center bottom -8px !important;
	background-size: 920px 68px !important;
	opacity: 0.09 !important;
}

body.theme-hapimiru-sister h1.site-logo .site-logo-image-frame {
	position: relative;
	z-index: 1;
	display: block;
	width: min(94%, 960px);
	aspect-ratio: 6.45 / 1;
	margin: 0 auto;
	overflow: hidden;
}

body.theme-hapimiru-sister h1.site-logo .site-logo-image-frame img {
	position: absolute !important;
	top: 50%;
	left: 0;
	display: block;
	width: 100% !important;
	max-width: none !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	transform: translateY(-52%);
	filter: none !important;
	border: 0 !important;
	background: transparent !important;
}

body.theme-hapimiru-sister h1.site-logo:after,
body.theme-hapimiru-sister .login-result-card:before {
	background: linear-gradient(90deg,
		#f5b32c 0%, #f5b32c 25%,
		#ef8f75 25%, #ef8f75 50%,
		#7bb575 50%, #7bb575 75%,
		#68b9c7 75%, #68b9c7 100%) !important;
}

body.theme-hapimiru-sister h1.site-logo:after {
	top: auto !important;
	bottom: 0 !important;
	height: 6px !important;
}

body.theme-hapimiru-sister #containar > h2 {
	border: 2px solid var(--hms-line) !important;
	border-left: 8px solid #f5b32c !important;
	border-radius: 14px !important;
	background: #fff2cc !important;
	color: var(--hms-ink-strong) !important;
}

body.theme-hapimiru-sister #btn1,
body.theme-hapimiru-sister input[type="submit"] {
	border-color: #4f914e !important;
	background: #69aa63 !important;
	color: #ffffff !important;
	box-shadow: 0 5px 0 rgba(63, 121, 61, 0.18) !important;
}

/* Login page */
body.login-page.theme-hapimiru-sister #containar {
	border-color: transparent !important;
	background: transparent !important;
	box-shadow: none !important;
}

body.theme-hapimiru-sister #containar > div[style*="background-color"] {
	border: 2px solid var(--hms-line) !important;
	background: #fffdf8 !important;
	box-shadow: 0 10px 0 rgba(96, 76, 63, 0.035), 0 18px 38px rgba(96, 76, 63, 0.08) !important;
}

body.theme-hapimiru-sister #containar > div[style*="background-color"]:before {
	display: none !important;
}

body.theme-hapimiru-sister .bookmark-card {
	border: 2px solid #ebcf98 !important;
	background: #fff8e8 !important;
	color: var(--hms-ink) !important;
}

body.theme-hapimiru-sister .bookmark-icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	margin: 0 auto 8px;
	border: 2px solid #efbd4b;
	border-radius: 50%;
	background: #ffffff;
	color: #e6a119;
	box-shadow: 0 3px 0 rgba(190, 126, 20, 0.1);
}

body.theme-hapimiru-sister .bookmark-icon svg {
	display: block;
	width: 25px;
	height: 25px;
}

body.theme-hapimiru-sister .bookmark-text,
body.theme-hapimiru-sister #containar form,
body.theme-hapimiru-sister #containar form p {
	color: var(--hms-ink) !important;
}

body.theme-hapimiru-sister #containar input[type="text"],
body.theme-hapimiru-sister #containar input[type="password"] {
	border-color: var(--hms-line) !important;
	background: #ffffff !important;
	color: var(--hms-ink-strong) !important;
}

body.theme-hapimiru-sister #containar input[type="text"]:focus,
body.theme-hapimiru-sister #containar input[type="password"]:focus {
	border-color: #e3a72c !important;
	outline-color: rgba(245, 179, 44, 0.22) !important;
}

body.theme-hapimiru-sister #containar #btn1,
body.theme-hapimiru-sister #containar input[type="submit"],
body.theme-hapimiru-sister #containar .login-submit-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 142px;
	min-height: 48px;
	padding: 0.55em 1.35em;
	border: 1px solid #dfa128 !important;
	border-radius: 9px;
	background: #f5bb3e !important;
	color: var(--hms-ink-strong) !important;
	font-family: "Zen Maru Gothic", "Hiragino Maru Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
	font-size: 1.03em;
	font-weight: 800;
	text-shadow: none !important;
	box-shadow: 0 3px 0 rgba(180, 118, 18, 0.12) !important;
	cursor: pointer;
	transition: transform 0.12s ease, background-color 0.12s ease, border-color 0.12s ease, box-shadow 0.12s ease;
}

body.theme-hapimiru-sister #containar #btn1:hover,
body.theme-hapimiru-sister #containar input[type="submit"]:hover,
body.theme-hapimiru-sister #containar .login-submit-button:hover {
	border-color: #ce8d13 !important;
	background: #efb032 !important;
	transform: translateY(-1px);
	box-shadow: 0 4px 0 rgba(180, 118, 18, 0.14) !important;
}

body.theme-hapimiru-sister #containar .login-submit-button:active {
	transform: translateY(2px);
	box-shadow: 0 1px 0 rgba(180, 118, 18, 0.18) !important;
}

body.theme-hapimiru-sister #containar .login-submit-button:focus-visible {
	outline: 3px solid rgba(104, 185, 199, 0.42);
	outline-offset: 3px;
}

@media screen and (max-width: 640px) {
	body.theme-hapimiru-sister h1.site-logo {
		padding: 2px 4px 10px !important;
	}

	body.theme-hapimiru-sister h1.site-logo .site-logo-image-frame {
		width: 100%;
	}

	body.theme-hapimiru-sister .ui-header .ui-title {
		font-size: 1em !important;
	}

	body.theme-hapimiru-sister #home > .ui-header .ui-title {
		font-size: 1.28em !important;
	}

	body.theme-hapimiru-sister #home .home-menu-grid .ui-btn span,
	body.theme-hapimiru-sister #home .home-menu-grid .ui-btn .menu-label {
		font-size: 1.08em !important;
	}

	body.theme-hapimiru-sister #home .home-menu-grid .ui-btn img {
		width: 64px !important;
		height: 64px !important;
	}

	body.theme-hapimiru-sister .customer-notice-board {
		padding: 55px 9px 10px !important;
		border-width: 4px !important;
		background-size: auto, 260px 260px !important;
	}

	body.theme-hapimiru-sister .customer-notice-board h2 {
		top: 8px;
		left: 8px;
		max-width: calc(100% - 16px);
		min-height: 36px;
		padding: 0.42em 1.15em 0.42em 3em;
		background-position: 0.65em center !important;
		background-size: 29px 29px !important;
		font-size: 1.04em !important;
	}

	body.theme-hapimiru-sister .customer-notice-list {
		gap: 10px;
	}

	body.theme-hapimiru-sister .customer-notice-item {
		grid-template-columns: minmax(0, 1fr);
		gap: 0.55em;
		padding: 18px 14px !important;
	}

	body.theme-hapimiru-sister .customer-notice-empty {
		padding: 18px 14px !important;
	}

	body.theme-hapimiru-sister .customer-notice-item:before,
	body.theme-hapimiru-sister .customer-notice-item:after,
	body.theme-hapimiru-sister .customer-notice-empty:before,
	body.theme-hapimiru-sister .customer-notice-empty:after {
		width: 36px;
		height: 13px;
	}

	body.theme-hapimiru-sister .customer-notice-item:before,
	body.theme-hapimiru-sister .customer-notice-empty:before {
		left: 11px;
	}

	body.theme-hapimiru-sister .customer-notice-item:after,
	body.theme-hapimiru-sister .customer-notice-empty:after {
		right: 11px;
	}

	body.theme-hapimiru-sister #home .home-plan-context {
		grid-template-columns: minmax(0, 1fr);
		margin-top: 0;
	}

	body.theme-hapimiru-sister #home .home-plan-context .customer-debug-note {
		grid-column: auto;
	}

	body.theme-hapimiru-sister #home .home-plan-context .customer-debug-note,
	body.theme-hapimiru-sister #tyumon .page-plan-context .customer-debug-note,
	body.theme-hapimiru-sister #tyumonSyosai .page-plan-context .customer-debug-note {
		min-height: 84px;
		padding-left: 4.15em;
	}

	body.theme-hapimiru-sister #home .home-plan-context .customer-debug-note:before,
	body.theme-hapimiru-sister #tyumon .page-plan-context .customer-debug-note:before,
	body.theme-hapimiru-sister #tyumonSyosai .page-plan-context .customer-debug-note:before {
		left: 0.78em;
		width: 38px;
		height: 38px;
	}

	body.theme-hapimiru-sister #home .home-plan-context .contract-plan-note {
		min-height: 74px;
		border-top: 1px solid #ddc9ab !important;
		border-left: 0 !important;
	}
}

@media print {
	body.theme-hapimiru-sister,
	body.theme-hapimiru-sister .ui-page {
		background: #ffffff !important;
	}
}
