/**
 * Echoes color overlay.
 * This stylesheet is enqueued only when body has .site-color-echoes.
 */
body.site-color-echoes {
	/* Primitive tokens */
	--hinomasora-color-cream: #FCF2DB;
	--hinomasora-color-cream-surface: #FAF1D2;
	--hinomasora-color-teal: #1B5F71;
	--hinomasora-color-teal-indicator: #6AA8AC;
	--hinomasora-color-red: #D61900;
	--hinomasora-color-dark-teal: #0F5871;
	--hinomasora-color-muted-teal: #2E6873;
	--hinomasora-color-pale-teal: #D4F3F3;
	--hinomasora-color-event: #FBEDB2;
	--hinomasora-color-gold: #F6B00C;
	--hinomasora-color-footer-text: #173D4A;
	--hinomasora-color-white: #FFFFFF;

	/* Semantic tokens */
	--hinomasora-site-background: var(--hinomasora-color-cream);
	--hinomasora-site-surface: var(--hinomasora-color-cream-surface);
	--hinomasora-site-primary: var(--hinomasora-color-teal);
	--hinomasora-site-primary-indicator: var(--hinomasora-color-teal-indicator);
	--hinomasora-site-accent: var(--hinomasora-color-red);
	--hinomasora-site-text: var(--hinomasora-color-dark-teal);
	--hinomasora-site-muted: var(--hinomasora-color-muted-teal);
	--hinomasora-site-border: var(--hinomasora-color-pale-teal);
	--hinomasora-site-event: var(--hinomasora-color-event);
	--hinomasora-site-footer-background: var(--hinomasora-color-gold);
	--hinomasora-site-footer-text: var(--hinomasora-color-footer-text);
	--hinomasora-site-on-primary: var(--hinomasora-color-white);

	/* Component tokens */
	--hinomasora-button-background: var(--hinomasora-site-primary);
	--hinomasora-button-foreground: var(--hinomasora-site-on-primary);
	--hinomasora-button-indicator: var(--hinomasora-site-primary-indicator);
	--hinomasora-outline-foreground: var(--hinomasora-site-accent);
	--hinomasora-calendar-event-background: var(--hinomasora-site-event);
	--hinomasora-calendar-selected-background: var(--hinomasora-site-primary);
	--hinomasora-footer-background: var(--hinomasora-site-footer-background);
	--hinomasora-footer-foreground: var(--hinomasora-site-footer-text);

	background: var(--hinomasora-site-background);
	color: var(--hinomasora-site-text);
}

body.site-color-echoes .l-header {
	background: var(--hinomasora-site-primary);
}

body.site-color-echoes .l-header.hidden,
body.site-color-echoes .l-header.hidden02 {
	background: none;
	box-shadow: none;
}

body.site-color-echoes .bg_siteColor {
	background: var(--hinomasora-site-footer-background);
}

body.site-color-echoes .gnav>ul>li:last-child a,
body.site-color-echoes .c-title--head__sub,
body.site-color-echoes .c-list-news-more a,
body.site-color-echoes .c-list-more a,
body.site-color-echoes .c-list-prev_next a,
body.site-color-echoes .c-caution_sub,
body.site-color-echoes .page-id-50 .col.col7 p:last-of-type strong:nth-of-type(2),
body.site-color-echoes .page-id-50 .col.col7 p:last-of-type > strong:nth-of-type(2) {
	color: var(--hinomasora-site-primary);
}

body.site-color-echoes .c-title--head__sub,
body.site-color-echoes .c-list-news-more a {
	border-color: var(--hinomasora-site-primary);
}

body.site-color-echoes .c-event_date,
body.site-color-echoes .c-caution,
body.site-color-echoes .c-live-calendar__place,
body.site-color-echoes .c-live-calendar__detailTime {
	border-color: var(--hinomasora-outline-foreground);
	color: var(--hinomasora-outline-foreground);
}

body.site-color-echoes .c-btn a,
body.site-color-echoes .c-btn input[type="submit"],
body.site-color-echoes .c-btn button[type="submit"],
body.site-color-echoes .c-btn__l a,
body.site-color-echoes .c-live-calendar__detailBtn,
body.site-color-echoes .c-live-calendar-add__link,
body.site-color-echoes .c-live-calendar-modal__btn {
	border-color: var(--hinomasora-site-primary);
	background: var(--hinomasora-site-surface);
	color: var(--hinomasora-site-primary) !important;
}

body.site-color-echoes .c-list-btn a {
	background: var(--hinomasora-button-background);
	color: var(--hinomasora-button-foreground);
}

body.site-color-echoes .c-movie-swiper__pagination .swiper-pagination-bullet {
	background: var(--hinomasora-site-border);
}

body.site-color-echoes .c-movie-swiper__pagination .swiper-pagination-bullet-active,
body.site-color-echoes .c-movie-swiper__nav,
body.site-color-echoes .c-movie-swiper__nav i {
	background: transparent;
	color: var(--hinomasora-site-primary) !important;
}

body.site-color-echoes .c-movie-swiper__pagination .swiper-pagination-bullet-active {
	background: var(--hinomasora-site-primary);
}

body.site-color-echoes .c-btn a:hover,
body.site-color-echoes .c-btn input[type="submit"]:hover,
body.site-color-echoes .c-btn button[type="submit"]:hover,
body.site-color-echoes .c-btn__l a:hover,
body.site-color-echoes .c-live-calendar__detailBtn:hover,
body.site-color-echoes .c-live-calendar-add__link:hover,
body.site-color-echoes .c-live-calendar-modal__btn:hover,
body.site-color-echoes .c-list-btn a:hover {
	border-color: var(--hinomasora-button-background);
	background: var(--hinomasora-button-background);
	color: var(--hinomasora-button-foreground) !important;
	box-shadow: 0 0 0 3px var(--hinomasora-button-indicator);
}

body.site-color-echoes .c-btn a:focus-visible,
body.site-color-echoes .c-btn input[type="submit"]:focus-visible,
body.site-color-echoes .c-btn button[type="submit"]:focus-visible,
body.site-color-echoes .c-btn__l a:focus-visible,
body.site-color-echoes .c-live-calendar__detailBtn:focus-visible,
body.site-color-echoes .c-live-calendar-add__link:focus-visible,
body.site-color-echoes .c-live-calendar-modal__btn:focus-visible {
	outline: 3px solid var(--hinomasora-button-indicator);
	outline-offset: 3px;
}

body.site-color-echoes .c-live-calendar,
body.site-color-echoes .c-live-calendar__detail,
body.site-color-echoes .c-live-calendar__detailCard,
body.site-color-echoes .c-live-calendar-add,
body.site-color-echoes .c-live-calendar-modal__panel {
	border-color: var(--hinomasora-site-border);
	background: var(--hinomasora-site-surface);
}

body.site-color-echoes .c-live-calendar__month,
body.site-color-echoes .c-live-calendar__nav,
body.site-color-echoes .c-live-calendar__detailDate {
	color: var(--hinomasora-site-primary);
}

body.site-color-echoes .c-live-calendar__nav:hover {
	color: var(--hinomasora-site-primary);
	box-shadow: 0 0 0 3px var(--hinomasora-button-indicator);
}

body.site-color-echoes .c-live-calendar__cell {
	border-color: var(--hinomasora-site-border);
	background: var(--hinomasora-site-surface);
}

body.site-color-echoes .c-live-calendar__date {
	color: var(--hinomasora-site-text);
}

body.site-color-echoes .c-live-calendar__date--event {
	border-left-color: var(--hinomasora-site-primary);
	background: var(--hinomasora-calendar-event-background);
}

body.site-color-echoes .c-live-calendar__date--event:hover,
body.site-color-echoes .c-live-calendar__date--event.is-selected {
	background: var(--hinomasora-calendar-selected-background);
	color: var(--hinomasora-site-on-primary);
	box-shadow: 0 0 0 3px var(--hinomasora-button-indicator);
}

body.site-color-echoes .c-live-calendar__date--event:hover .c-live-calendar__place,
body.site-color-echoes .c-live-calendar__date--event.is-selected .c-live-calendar__place {
	border-color: var(--hinomasora-site-on-primary);
	color: var(--hinomasora-site-on-primary);
}

body.site-color-echoes .c-live-calendar__date--event:hover .c-live-calendar__title,
body.site-color-echoes .c-live-calendar__date--event.is-selected .c-live-calendar__title {
	color: var(--hinomasora-site-on-primary);
}

body.site-color-echoes .c-live-calendar__cell.is-today {
	outline-color: var(--hinomasora-site-footer-background);
}

body.site-color-echoes .c-live-calendar__detailTitle,
body.site-color-echoes .c-live-calendar-modal__title {
	color: var(--hinomasora-site-text);
}

body.site-color-echoes .c-live-calendar__detailPlace,
body.site-color-echoes .c-live-calendar__switch,
body.site-color-echoes .c-live-calendar-add__note,
body.site-color-echoes .c-live-calendar-modal__note,
body.site-color-echoes .c-live-calendar-modal__close {
	color: var(--hinomasora-site-muted);
}

body.site-color-echoes .c-live-calendar__detailBtn--sub,
body.site-color-echoes .c-live-calendar-modal__btn--sub {
	border-color: var(--hinomasora-outline-foreground);
	background: var(--hinomasora-site-surface);
	color: var(--hinomasora-outline-foreground) !important;
}

body.site-color-echoes .c-live-calendar__detailBtn--sub:hover,
body.site-color-echoes .c-live-calendar-modal__btn--sub:hover {
	border-color: var(--hinomasora-outline-foreground);
	background: var(--hinomasora-site-surface);
	color: var(--hinomasora-outline-foreground) !important;
	box-shadow: 0 0 0 3px var(--hinomasora-button-indicator);
}

body.site-color-echoes .c-live-calendar-add__switch:focus-visible,
body.site-color-echoes .c-live-calendar-modal__close:focus-visible {
	outline: 3px solid var(--hinomasora-button-indicator);
	outline-offset: 3px;
}

body.site-color-echoes .l-footer {
	background: var(--hinomasora-footer-background);
	color: var(--hinomasora-footer-foreground);
}

body.site-color-echoes .l-footer__company-detail,
body.site-color-echoes .c-footer_nav li a,
body.site-color-echoes .l-copyright {
	color: var(--hinomasora-footer-foreground);
}

/* Secondary pages: preserve normal outside echoes while replacing their legacy colors. */
body.site-color-echoes.page-id-50,
body.site-color-echoes.post-type-archive-discography,
body.site-color-echoes.page-id-117 {
	background: var(--hinomasora-site-background);
	color: var(--hinomasora-site-text);
}

body.site-color-echoes.page-id-50 .bg_gray,
body.site-color-echoes.post-type-archive-discography .bg_gray,
body.site-color-echoes.page-id-117 .bg_gray,
body.site-color-echoes.page-id-50 .bg_gray02,
body.site-color-echoes.post-type-archive-discography .bg_gray02,
body.site-color-echoes.page-id-117 .bg_gray02 {
	background: var(--hinomasora-site-surface);
	color: var(--hinomasora-site-text);
}

body.site-color-echoes.page-id-50 .col.col7 p > strong:first-of-type,
body.site-color-echoes.page-id-50 .col.col7 p:last-of-type > strong:first-of-type {
	color: var(--hinomasora-site-text);
}

body.site-color-echoes.post-type-archive-discography .c-card-box,
body.site-color-echoes.post-type-archive-discography .c-card_box__white {
	background: var(--hinomasora-site-surface);
	color: var(--hinomasora-site-text);
}

body.site-color-echoes.page-id-117 .c-input,
body.site-color-echoes.page-id-117 .c-textarea,
body.site-color-echoes.page-id-117 .c-privacy_box {
	border-color: var(--hinomasora-color-teal-indicator);
	background: var(--hinomasora-site-surface);
	color: var(--hinomasora-site-text);
}

body.site-color-echoes.page-id-117 .c-input:focus,
body.site-color-echoes.page-id-117 .c-textarea:focus {
	border-color: var(--hinomasora-color-teal);
	outline: 2px solid var(--hinomasora-color-teal);
	outline-offset: 1px;
}

body.site-color-echoes.page-id-117 .c-caution {
	color: var(--hinomasora-color-red);
}

body.site-color-echoes #loftloader-wrapper .loader-section {
	background: var(--hinomasora-color-teal) !important;
}

body.site-color-echoes #loftloader-wrapper .loader-inner #loader,
body.site-color-echoes #loftloader-wrapper .loader-inner #loader span,
body.site-color-echoes #loftloader-wrapper .loader-inner #loader img {
	color: var(--hinomasora-color-cream);
}

body.site-color-echoes.page-id-50 .labelAni .bg-ani {
	background: var(--hinomasora-color-gold);
}

body.site-color-echoes .reveal-text::after {
	background-color: var(--hinomasora-color-gold);
}

body.site-color-echoes.page-id-50 .labelAni {
	color: var(--hinomasora-color-dark-teal);
}

body.site-color-echoes.page-id-50 .c-ppl_sub {
	background: var(--hinomasora-color-teal);
}

body.site-color-echoes.page-id-50 .c-mv-text strong,
body.site-color-echoes.page-id-50 .c-occupation__mv,
body.site-color-echoes.page-id-50 .c-mv-title,
body.site-color-echoes.page-id-50 .c-mv-title span {
	color: var(--hinomasora-color-cream);
	text-shadow: 0 1px 2px rgba(15, 88, 113, 0.72);
}

body.site-color-echoes.page-id-50 .col.col7 p:last-of-type strong:nth-of-type(2),
body.site-color-echoes.page-id-50 .col.col7 p:last-of-type > strong:nth-of-type(2) {
	color: var(--hinomasora-color-red);
}
