body { background: #f4f1eb; color: #17191b; margin: 0; }
.class_style_public_pages .arakawa-site{
	--ha-ink: #17191b;
	--ha-deep: #16242a;
	--ha-night: #111d22;
	--ha-paper: #f4f1eb;
	--ha-white: #fffefa;
	--ha-mist: #dad8d1;
	--ha-muted: #6f7372;
	--ha-gold: #b9965a;
	--ha-gold-light: #dbc38f;
	--ha-teal: #527378;
	--ha-line: rgba(23, 25, 27, .16);
	--ha-font-mincho: "Hiragino Mincho ProN", "Yu Mincho", YuMincho, "Noto Serif JP", serif;
	--ha-font-display: Didot, "Bodoni 72", "Bodoni MT", "Playfair Display", "Times New Roman", serif;
	--ha-font-sans: "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", YuGothic, "Noto Sans JP", "Helvetica Neue", Arial, sans-serif;
	background: var(--ha-paper);
	color: var(--ha-ink);
	font-family: var(--ha-font-sans);
	min-height: 100vh;
	overflow: hidden;
	scroll-behavior: smooth;
}

.arakawa-site, .arakawa-site * { box-sizing: border-box; }
.class_style_public_pages .arakawa-site a{ color: inherit; }
.class_style_public_pages .arakawa-site button{ font-family: inherit; margin: 0; }
.class_style_public_pages .arakawa-site :focus-visible{ outline: 2px solid var(--ha-gold); outline-offset: 4px; }
.class_style_public_pages .arakawa-header{
	align-items: center;
	background: rgba(244, 241, 235, .94);
	border-bottom: 1px solid var(--ha-line);
	display: grid;
	grid-template-columns: 260px 1fr 112px;
	min-height: 82px;
	padding: 0 clamp(22px, 4vw, 66px);
	position: relative;
	z-index: 20;
}
.class_style_public_pages .arakawa-brand{ align-items: center; display: inline-flex; gap: 13px; text-decoration: none; width: max-content; }
.class_style_public_pages .arakawa-brand-monogram{ align-items: center; border: 1px solid var(--ha-gold); border-radius: 50%; color: #80683d; display: inline-flex; font-family: var(--ha-font-display); font-size: 13px; height: 42px; justify-content: center; letter-spacing: .08em; width: 42px; }
.class_style_public_pages .arakawa-brand-copy strong{ display: block; font-family: var(--ha-font-display); font-size: 13px; font-weight: 500; letter-spacing: .14em; }
.class_style_public_pages .arakawa-brand-copy small{ color: var(--ha-muted); display: block; font-family: var(--ha-font-display); font-size: 8px; letter-spacing: .22em; margin-top: 4px; text-transform: uppercase; }
.class_style_public_pages .arakawa-nav{ display: flex; gap: clamp(15px, 2.2vw, 34px); justify-content: center; }
.class_style_public_pages .arakawa-nav a{ color: #4a5151; font-family: var(--ha-font-sans); font-size: 10px; font-weight: 500; letter-spacing: .12em; text-decoration: none; }
.class_style_public_pages .arakawa-nav a:hover{ color: var(--ha-gold); }
.class_style_public_pages .arakawa-header-contact{ border-bottom: 1px solid var(--ha-ink); font-family: var(--ha-font-display); font-size: 11px; justify-self: end; letter-spacing: .14em; padding: 5px 0; text-decoration: none; text-transform: uppercase; }
.class_style_public_pages .arakawa-hero{ background: var(--ha-deep); color: var(--ha-white); display: grid; grid-template-columns: minmax(0, 1.12fr) minmax(390px, .88fr); min-height: calc(100vh - 82px); position: relative; }
.class_style_public_pages .arakawa-hero-copy{ align-items: flex-start; display: flex; flex-direction: column; justify-content: center; min-height: 710px; padding: 90px clamp(40px, 8vw, 135px); position: relative; }
.class_style_public_pages .arakawa-hero-copy::before{ background: radial-gradient(circle, rgba(185, 150, 90, .13), transparent 67%); content: ""; height: 560px; left: -180px; position: absolute; top: -120px; width: 560px; }
.class_style_public_pages .arakawa-overline{ color: var(--ha-gold); font-family: var(--ha-font-display); font-size: 11px; letter-spacing: .22em; margin: 0 0 28px; text-transform: uppercase; }
.class_style_public_pages .arakawa-hero h1{ font-family: var(--ha-font-mincho); font-size: clamp(60px, 7vw, 112px); font-weight: 400; letter-spacing: .1em; line-height: .96; margin: 0; position: relative; z-index: 1; }
.class_style_public_pages .arakawa-hero h1 span{ display: block; white-space: nowrap; }
.class_style_public_pages .arakawa-hero h1 small{ color: var(--ha-gold-light); display: block; font-family: var(--ha-font-display); font-size: .16em; font-weight: 400; letter-spacing: .26em; margin-top: 24px; text-transform: uppercase; }
.class_style_public_pages .arakawa-hero-lead{ font-family: var(--ha-font-mincho); font-size: clamp(21px, 2vw, 30px); letter-spacing: .1em; line-height: 1.65; margin: 66px 0 0; position: relative; }
.class_style_public_pages .arakawa-hero-lead::before{ background: var(--ha-gold); content: ""; height: 1px; left: 0; position: absolute; top: -30px; width: 60px; }
.class_style_public_pages .arakawa-hero-intro{ color: rgba(255, 254, 250, .67); font-size: 12px; letter-spacing: .04em; line-height: 2; margin: 18px 0 0; max-width: 530px; }
.class_style_public_pages .arakawa-hero-actions{ display: flex; flex-wrap: wrap; gap: 12px; margin-top: 36px; }
.class_style_public_pages .arakawa-button{ align-items: center; border: 1px solid transparent; display: inline-flex; font-size: 11px; font-weight: 700; justify-content: center; letter-spacing: .08em; min-height: 46px; padding: 0 25px; text-decoration: none; transition: background .2s ease, color .2s ease, border-color .2s ease; }
.class_style_public_pages .arakawa-button.is-primary{ background: var(--ha-gold); color: var(--ha-night); }
.class_style_public_pages .arakawa-button.is-primary:hover{ background: var(--ha-gold-light); }
.class_style_public_pages .arakawa-button.is-light{ border-color: rgba(255,255,255,.42); color: var(--ha-white); }
.class_style_public_pages .arakawa-button.is-light:hover{ border-color: var(--ha-gold-light); color: var(--ha-gold-light); }
.class_style_public_pages .arakawa-button.is-outline{ border-color: rgba(255,255,255,.35); color: var(--ha-white); min-width: 112px; }
.class_style_public_pages .arakawa-button.is-outline:hover{ border-color: var(--ha-gold-light); color: var(--ha-gold-light); }
.class_style_public_pages .arakawa-button.is-gold{ background: var(--ha-gold); color: var(--ha-night); margin-top: 46px; }
.class_style_public_pages .arakawa-button.is-disabled{ background: #9a9c99; color: #f2f1ed; cursor: not-allowed; }
.class_style_public_pages .arakawa-hero-visual{ background: #c9c7c1; min-height: 710px; overflow: hidden; position: relative; }
.class_style_public_pages .arakawa-hero-image-frame{ height: 100%; position: absolute; inset: 0; }
.class_style_public_pages .arakawa-hero-image-frame::after{ background: linear-gradient(180deg, transparent 55%, rgba(17,29,34,.64)); content: ""; inset: 0; position: absolute; }
.class_style_public_pages .arakawa-hero-image-frame img{ filter: saturate(.76) contrast(.96); height: 100%; object-fit: cover; object-position: center center; width: 100%; }
.class_style_public_pages .arakawa-hero-signature{ bottom: 42px; color: var(--ha-white); font-family: var(--ha-font-display); font-size: 17px; left: 42px; letter-spacing: .1em; margin: 0; position: absolute; z-index: 2; }
.class_style_public_pages .arakawa-hero-signature span{ display: block; font-size: 8px; letter-spacing: .2em; margin-top: 7px; text-transform: uppercase; }
.class_style_public_pages .arakawa-scroll-cue{ bottom: 32px; left: clamp(40px, 8vw, 135px); position: absolute; }
.class_style_public_pages .arakawa-scroll-cue span{ color: rgba(255,255,255,.42); font-family: var(--ha-font-display); font-size: 8px; letter-spacing: .2em; text-transform: uppercase; writing-mode: vertical-rl; }
.class_style_public_pages .arakawa-preview-note{ align-items: center; background: #e7dfd1; border-bottom: 1px solid rgba(23,25,27,.12); display: flex; gap: 24px; justify-content: center; padding: 15px 30px; }
.class_style_public_pages .arakawa-preview-note span{ border: 1px solid #9b7f4c; color: #725d37; font-family: var(--ha-font-display); font-size: 9px; letter-spacing: .16em; padding: 4px 8px; text-transform: uppercase; }
.class_style_public_pages .arakawa-preview-note p{ color: #5e584e; font-size: 10px; letter-spacing: .04em; line-height: 1.7; margin: 0; }
.class_style_public_pages .arakawa-section{ margin: 0 auto; max-width: 1440px; padding: 130px clamp(28px, 7vw, 112px); }
.class_style_public_pages .arakawa-section-heading{ align-items: flex-start; display: flex; justify-content: space-between; margin-bottom: 72px; }
.class_style_public_pages .arakawa-section-heading .arakawa-overline{ margin-bottom: 20px; }
.class_style_public_pages .arakawa-section-heading h2{ font-family: var(--ha-font-display); font-size: clamp(46px, 5.6vw, 78px); font-weight: 400; letter-spacing: .055em; line-height: 1; margin: 0; }
.class_style_public_pages .arakawa-section-index{ color: rgba(23,25,27,.08); font-family: var(--ha-font-display); font-size: clamp(60px, 9vw, 126px); line-height: .8; margin: 0; }
.class_style_public_pages .arakawa-section-heading.is-on-dark h2{ color: var(--ha-white); }
.class_style_public_pages .arakawa-section-heading.is-on-dark .arakawa-section-index{ color: rgba(255,255,255,.06); }
.class_style_public_pages .arakawa-profile-layout{ display: grid; gap: clamp(48px, 8vw, 120px); grid-template-columns: minmax(270px, .82fr) minmax(430px, 1.18fr); }
.class_style_public_pages .arakawa-profile-lead{ position: relative; }
.class_style_public_pages .arakawa-profile-lead::before{ background: var(--ha-gold); content: ""; height: 1px; left: 0; position: absolute; top: 1px; width: 42px; }
.class_style_public_pages .arakawa-profile-lead > p{ font-family: var(--ha-font-mincho); font-size: clamp(19px, 2vw, 26px); letter-spacing: .055em; line-height: 2; margin: 0; padding-top: 35px; }
.class_style_public_pages .arakawa-text-link{ border-bottom: 1px solid var(--ha-ink); display: inline-flex; font-size: 11px; font-weight: 700; gap: 32px; letter-spacing: .05em; margin-top: 32px; padding: 0 0 8px; text-decoration: none; }
.class_style_public_pages .arakawa-profile-body > p{ color: #555b5a; font-size: 13px; letter-spacing: .045em; line-height: 2.25; margin: 0; }
.class_style_public_pages .arakawa-profile-roles{ border-top: 1px solid var(--ha-line); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 54px; }
.class_style_public_pages .arakawa-profile-roles article{ border-right: 1px solid var(--ha-line); padding: 26px 22px 0 0; }
.class_style_public_pages .arakawa-profile-roles article + article{ padding-left: 22px; }
.class_style_public_pages .arakawa-profile-roles article:last-child{ border-right: 0; }
.class_style_public_pages .arakawa-profile-roles span{ color: var(--ha-gold); font-family: var(--ha-font-display); font-size: 9px; letter-spacing: .15em; text-transform: uppercase; }
.class_style_public_pages .arakawa-profile-roles h3{ font-family: var(--ha-font-display); font-size: 22px; font-weight: 400; letter-spacing: .04em; margin: 9px 0 14px; }
.class_style_public_pages .arakawa-profile-roles p{ color: #747775; font-size: 10px; line-height: 1.85; margin: 0; }
.class_style_public_pages .arakawa-facts{ border-bottom: 1px solid var(--ha-line); border-top: 1px solid var(--ha-line); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); margin-top: 90px; }
.class_style_public_pages .arakawa-facts > div{ align-items: baseline; border-right: 1px solid var(--ha-line); display: grid; grid-template-columns: auto 1fr; padding: 28px clamp(18px, 3vw, 44px); }
.class_style_public_pages .arakawa-facts > div:last-child{ border-right: 0; }
.class_style_public_pages .arakawa-facts strong{ font-family: var(--ha-font-display); font-size: clamp(38px, 4vw, 58px); font-weight: 400; letter-spacing: -.01em; }
.class_style_public_pages .arakawa-facts span{ color: var(--ha-gold); font-family: var(--ha-font-display); font-size: 9px; letter-spacing: .13em; margin-left: 9px; text-transform: uppercase; }
.class_style_public_pages .arakawa-facts small{ color: var(--ha-muted); font-size: 9px; grid-column: 1 / -1; letter-spacing: .07em; margin-top: 9px; }
.class_style_public_pages .arakawa-concerts{ background: var(--ha-night); color: var(--ha-white); max-width: none; }

.arakawa-concerts > * { margin-left: auto; margin-right: auto; max-width: 1216px; }
.class_style_public_pages .arakawa-concert-block + .arakawa-concert-block{ margin-top: 92px; }
.class_style_public_pages .arakawa-subheading{ align-items: baseline; border-bottom: 1px solid rgba(255,255,255,.22); display: flex; justify-content: space-between; padding-bottom: 14px; }
.class_style_public_pages .arakawa-subheading span{ color: var(--ha-gold-light); font-family: var(--ha-font-display); font-size: 10px; letter-spacing: .2em; text-transform: uppercase; }
.class_style_public_pages .arakawa-subheading h3{ font-family: var(--ha-font-mincho); font-size: 18px; font-weight: 400; letter-spacing: .08em; margin: 0; }
.class_style_public_pages .arakawa-empty-concert{ align-items: center; border-bottom: 1px solid rgba(255,255,255,.13); display: flex; justify-content: space-between; padding: 50px 0; }
.class_style_public_pages .arakawa-empty-concert p{ font-family: var(--ha-font-mincho); font-size: clamp(20px, 2.4vw, 31px); margin: 0; }
.class_style_public_pages .arakawa-empty-concert span, .class_style_public_pages .arakawa-archive-empty{ color: rgba(255,255,255,.5); font-size: 10px; letter-spacing: .05em; }
.class_style_public_pages .arakawa-event{ align-items: center; border-bottom: 1px solid rgba(255,255,255,.13); display: grid; gap: 36px; grid-template-columns: 120px 1fr auto; padding: 34px 0; }
.class_style_public_pages .arakawa-event-date{ align-items: baseline; display: grid; grid-template-columns: 1fr auto; }
.class_style_public_pages .arakawa-event-date span{ color: var(--ha-gold-light); font-family: var(--ha-font-display); font-size: 9px; letter-spacing: .13em; }
.class_style_public_pages .arakawa-event-date strong{ font-family: var(--ha-font-display); font-size: 37px; font-weight: 400; grid-column: 1; }
.class_style_public_pages .arakawa-event-date small{ color: rgba(255,255,255,.5); font-size: 10px; grid-column: 2; grid-row: 2; }
.class_style_public_pages .arakawa-event-copy time{ color: var(--ha-gold-light); font-family: var(--ha-font-display); font-size: 10px; letter-spacing: .11em; }
.class_style_public_pages .arakawa-event-copy h4{ font-family: var(--ha-font-mincho); font-size: 21px; font-weight: 400; letter-spacing: .04em; margin: 7px 0 8px; }
.class_style_public_pages .arakawa-event-copy p{ color: rgba(255,255,255,.75); font-size: 11px; margin: 0; }
.class_style_public_pages .arakawa-event-copy small{ color: rgba(255,255,255,.46); display: block; font-size: 10px; line-height: 1.7; margin-top: 9px; }
.class_style_public_pages .arakawa-archive-grid{ display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.class_style_public_pages .arakawa-archive-grid article{ border-bottom: 1px solid rgba(255,255,255,.13); border-right: 1px solid rgba(255,255,255,.13); min-height: 205px; padding: 28px 24px 30px 0; }
.class_style_public_pages .arakawa-archive-grid article + article{ padding-left: 24px; }
.class_style_public_pages .arakawa-archive-grid article:last-child{ border-right: 0; }
.class_style_public_pages .arakawa-archive-grid time{ color: var(--ha-gold-light); font-family: var(--ha-font-display); font-size: 10px; letter-spacing: .14em; }
.class_style_public_pages .arakawa-archive-grid h4{ font-family: var(--ha-font-mincho); font-size: 16px; font-weight: 400; line-height: 1.65; margin: 15px 0 10px; }
.class_style_public_pages .arakawa-archive-grid p{ color: rgba(255,255,255,.48); font-size: 9px; line-height: 1.6; margin: 0; }
.class_style_public_pages .arakawa-archive-grid a{ color: var(--ha-gold-light); display: inline-block; font-size: 9px; letter-spacing: .06em; margin-top: 25px; text-decoration: none; }
.class_style_public_pages .arakawa-archive-empty{ border-bottom: 1px solid rgba(255,255,255,.13); margin: 0; padding: 38px 0; }
.class_style_public_pages .arakawa-catalog-section{ padding-bottom: 100px; }
.class_style_public_pages .arakawa-album-grid{ display: grid; gap: clamp(20px, 2.5vw, 34px); grid-template-columns: repeat(3, minmax(0, 1fr)); }
.class_style_public_pages .arakawa-album-card{ min-width: 0; }
.class_style_public_pages .arakawa-album-cover{ aspect-ratio: 1 / 1; display: flex; flex-direction: column; justify-content: space-between; overflow: hidden; padding: clamp(24px, 3vw, 44px); position: relative; }
.class_style_public_pages .arakawa-album-cover::before, .class_style_public_pages .arakawa-album-cover::after{ border: 1px solid currentColor; border-radius: 50%; content: ""; opacity: .24; position: absolute; }
.class_style_public_pages .arakawa-album-cover::before{ height: 64%; right: -18%; top: -18%; width: 64%; }
.class_style_public_pages .arakawa-album-cover::after{ bottom: -34%; height: 80%; left: -25%; width: 80%; }
.class_style_public_pages .arakawa-album-cover.is-french{ background: #e7e0d2; color: #433f39; }
.class_style_public_pages .arakawa-album-cover.is-colors{ background: #4f6e72; color: #fffbee; }
.class_style_public_pages .arakawa-album-cover.is-khachaturian{ background: #772f31; color: #fae9d3; }
.class_style_public_pages .arakawa-album-cover > span{ font-family: var(--ha-font-display); font-size: 8px; letter-spacing: .22em; position: relative; text-transform: uppercase; z-index: 1; }
.class_style_public_pages .arakawa-album-cover > strong{ font-family: var(--ha-font-mincho); font-size: clamp(22px, 2.3vw, 34px); font-weight: 400; letter-spacing: .06em; line-height: 1.55; position: relative; z-index: 1; }
.class_style_public_pages .arakawa-album-cover > small{ font-family: var(--ha-font-display); font-size: 7px; letter-spacing: .16em; position: relative; text-transform: uppercase; z-index: 1; }
.class_style_public_pages .arakawa-album-copy{ padding: 20px 3px 0; }
.class_style_public_pages .arakawa-album-copy > p, .class_style_public_pages .arakawa-score-copy > p:first-child{ color: var(--ha-gold); font-family: var(--ha-font-display); font-size: 9px; letter-spacing: .15em; margin: 0 0 8px; text-transform: uppercase; }
.class_style_public_pages .arakawa-album-copy h3, .class_style_public_pages .arakawa-score-copy h3{ font-family: var(--ha-font-mincho); font-size: 16px; font-weight: 400; line-height: 1.55; margin: 0 0 7px; }
.class_style_public_pages .arakawa-album-copy > span, .class_style_public_pages .arakawa-score-copy > span{ color: var(--ha-muted); display: block; font-size: 10px; line-height: 1.75; }
.class_style_public_pages .arakawa-album-copy details{ border-top: 1px solid var(--ha-line); margin-top: 16px; padding-top: 10px; }
.class_style_public_pages .arakawa-album-copy summary{ cursor: pointer; font-size: 10px; font-weight: 700; letter-spacing: .05em; }
.class_style_public_pages .arakawa-album-copy details p{ color: var(--ha-muted); font-size: 10px; line-height: 1.75; margin: 12px 0 0; }
.class_style_public_pages .arakawa-product-meta{ align-items: center; border-top: 1px solid var(--ha-line); display: flex; gap: 10px; justify-content: space-between; margin-top: 16px; padding-top: 12px; }
.class_style_public_pages .arakawa-product-meta strong{ font-family: var(--ha-font-display); font-size: 12px; font-weight: 400; }
.class_style_public_pages .arakawa-product-meta a{ border-bottom: 1px solid var(--ha-ink); font-size: 9px; font-weight: 700; padding-bottom: 4px; text-decoration: none; }
.class_style_public_pages .arakawa-catalog-note{ color: var(--ha-muted); font-size: 9px; line-height: 1.8; margin: 42px 0 0; }
.class_style_public_pages .arakawa-scores{ border-top: 1px solid var(--ha-line); }
.class_style_public_pages .arakawa-store-intro{ align-items: end; border-bottom: 1px solid var(--ha-line); display: grid; gap: clamp(36px, 7vw, 105px); grid-template-columns: minmax(330px, 1fr) minmax(280px, .72fr); margin: -20px 0 45px; padding-bottom: 40px; }
.class_style_public_pages .arakawa-store-kicker{ color: var(--ha-gold); font-family: var(--ha-font-display); font-size: 9px; letter-spacing: .19em; margin: 0 0 17px; text-transform: uppercase; }
.class_style_public_pages .arakawa-store-intro h3{ font-family: var(--ha-font-mincho); font-size: clamp(24px, 3vw, 39px); font-weight: 400; letter-spacing: .05em; line-height: 1.7; margin: 0; }
.class_style_public_pages .arakawa-store-intro > p{ color: var(--ha-muted); font-size: 11px; line-height: 2; margin: 0; }
.class_style_public_pages .arakawa-store-steps{ border-bottom: 1px solid var(--ha-line); border-top: 1px solid var(--ha-line); display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); list-style: none; margin: 0 0 54px; padding: 0; }
.class_style_public_pages .arakawa-store-steps li{ border-right: 1px solid var(--ha-line); display: grid; min-height: 122px; padding: 24px 28px; }
.class_style_public_pages .arakawa-store-steps li:last-child{ border-right: 0; }
.class_style_public_pages .arakawa-store-steps span{ color: var(--ha-gold); font-family: var(--ha-font-display); font-size: 9px; letter-spacing: .16em; }
.class_style_public_pages .arakawa-store-steps strong{ font-family: var(--ha-font-mincho); font-size: 16px; font-weight: 400; letter-spacing: .05em; margin-top: 13px; }
.class_style_public_pages .arakawa-store-steps small{ color: var(--ha-muted); font-size: 9px; margin-top: 7px; }
.class_style_public_pages .arakawa-score-grid{ display: grid; gap: 22px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.class_style_public_pages .arakawa-score-card{ background: var(--ha-white); border: 1px solid var(--ha-line); padding: 15px; }
.class_style_public_pages .arakawa-score-preview{ aspect-ratio: .76 / 1; background: #eeece6; display: flex; flex-direction: column; overflow: hidden; padding: 34px 29px; position: relative; }
.class_style_public_pages .arakawa-score-preview::after{ background: linear-gradient(135deg, transparent 55%, rgba(185,150,90,.18)); content: ""; inset: 0; position: absolute; }
.class_style_public_pages .arakawa-score-preview > span{ color: var(--ha-gold); font-family: var(--ha-font-display); font-size: 9px; letter-spacing: .15em; margin-bottom: auto; text-transform: uppercase; }
.class_style_public_pages .arakawa-score-preview i{ border-top: 1px solid rgba(23,25,27,.18); display: block; height: 19px; position: relative; z-index: 1; }
.class_style_public_pages .arakawa-score-preview strong{ font-family: var(--ha-font-mincho); font-size: clamp(22px, 2vw, 31px); font-weight: 400; letter-spacing: .06em; margin-top: auto; position: relative; z-index: 1; }
.class_style_public_pages .arakawa-score-preview small{ color: var(--ha-muted); font-family: var(--ha-font-display); font-size: 7px; letter-spacing: .16em; margin-top: 10px; text-transform: uppercase; }
.class_style_public_pages .arakawa-score-copy{ padding: 18px 5px 6px; }
.class_style_public_pages .arakawa-score-description{ color: #555b5a; font-size: 10px; line-height: 1.8; margin: 16px 0; }
.class_style_public_pages .arakawa-score-copy > small{ color: var(--ha-muted); font-size: 9px; }
.class_style_public_pages .arakawa-score-preview-media{ aspect-ratio: .76 / 1; background: #eeece6; overflow: hidden; }
.class_style_public_pages .arakawa-score-preview-media .row, .class_style_public_pages .arakawa-score-preview-media .row_value, .class_style_public_pages .arakawa-score-preview-media .field_view{ height: 100%; margin: 0; padding: 0; }
.class_style_public_pages .arakawa-score-preview-media .row_title{ display: none; }
.class_style_public_pages .arakawa-score-preview-media img{ display: block; height: 100%; object-fit: cover; width: 100%; }
.class_style_public_pages .arakawa-store-status{ border: 1px solid rgba(155,127,76,.35); color: #725d37 !important; display: inline-block !important; font-family: var(--ha-font-sans); font-size: 8px !important; letter-spacing: .08em; margin-top: 15px; padding: 5px 8px; }
.class_style_public_pages .arakawa-store-empty{ color: var(--ha-muted); grid-column: 1 / -1; margin: 0; padding: 42px 0; }
.class_style_public_pages .arakawa-score-detail-main{ min-height: 72vh; }
.class_style_public_pages .arakawa-score-detail{ display: grid; gap: clamp(50px, 8vw, 120px); grid-template-columns: minmax(340px, .82fr) minmax(440px, 1.18fr); margin: 0 auto; max-width: 1320px; padding: clamp(70px, 9vw, 128px) clamp(28px, 7vw, 92px); }
.class_style_public_pages .arakawa-score-detail-visual{ min-width: 0; }
.class_style_public_pages .arakawa-score-detail-visual > p{ color: var(--ha-muted); font-family: var(--ha-font-display); font-size: 8px; letter-spacing: .12em; margin: 14px 0 0; text-transform: uppercase; }
.class_style_public_pages .arakawa-score-preview.is-detail, .class_style_public_pages .arakawa-score-preview-media.is-detail{ box-shadow: 0 24px 58px rgba(17,29,34,.12); }
.class_style_public_pages .arakawa-score-detail-copy{ padding-top: 10px; }
.class_style_public_pages .arakawa-store-back{ border-bottom: 1px solid var(--ha-line); color: var(--ha-muted) !important; display: inline-block; font-family: var(--ha-font-display); font-size: 9px; letter-spacing: .12em; margin-bottom: 64px; padding-bottom: 6px; text-decoration: none; text-transform: uppercase; }
.class_style_public_pages .arakawa-score-detail-copy .arakawa-overline{ margin-bottom: 17px; }
.class_style_public_pages .arakawa-score-detail-copy h1, .class_style_public_pages .arakawa-score-not-found h1{ font-family: var(--ha-font-mincho); font-size: clamp(38px, 5vw, 68px); font-weight: 400; letter-spacing: .07em; line-height: 1.3; margin: 0; }
.class_style_public_pages .arakawa-score-detail-subtitle{ color: var(--ha-muted); font-family: var(--ha-font-mincho); font-size: 16px; letter-spacing: .05em; line-height: 1.8; margin: 18px 0 0; }
.class_style_public_pages .arakawa-score-specs{ border-bottom: 1px solid var(--ha-line); border-top: 1px solid var(--ha-line); margin: 42px 0 0; }
.class_style_public_pages .arakawa-score-specs > div{ align-items: baseline; border-bottom: 1px solid var(--ha-line); display: grid; gap: 25px; grid-template-columns: 145px 1fr; padding: 14px 0; }
.class_style_public_pages .arakawa-score-specs > div:last-child{ border-bottom: 0; }
.class_style_public_pages .arakawa-score-specs dt{ color: var(--ha-gold); font-family: var(--ha-font-display); font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
.class_style_public_pages .arakawa-score-specs dd{ font-size: 11px; line-height: 1.7; margin: 0; }
.class_style_public_pages .arakawa-score-detail-description{ color: #555b5a; font-size: 12px; letter-spacing: .035em; line-height: 2.1; margin: 32px 0; }
.class_style_public_pages .arakawa-score-purchase-panel{ align-items: center; background: var(--ha-deep); color: var(--ha-white); display: flex; justify-content: space-between; padding: 25px 27px; }
.class_style_public_pages .arakawa-score-purchase-panel > div{ display: grid; }
.class_style_public_pages .arakawa-score-purchase-panel small{ color: var(--ha-gold-light); font-family: var(--ha-font-display); font-size: 8px; letter-spacing: .16em; text-transform: uppercase; }
.class_style_public_pages .arakawa-score-purchase-panel strong{ font-family: var(--ha-font-display); font-size: 24px; font-weight: 400; margin-top: 6px; }
.class_style_public_pages .arakawa-score-purchase-panel span{ color: rgba(255,255,255,.55); font-size: 8px; margin-top: 4px; }
.class_style_public_pages .arakawa-score-safety-note{ border-left: 2px solid var(--ha-gold); margin-top: 25px; padding: 4px 0 4px 18px; }
.class_style_public_pages .arakawa-score-safety-note strong{ font-family: var(--ha-font-display); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }
.class_style_public_pages .arakawa-score-safety-note p{ color: var(--ha-muted); font-size: 9px; line-height: 1.8; margin: 7px 0 0; }
.class_style_public_pages .arakawa-score-detail-copy .arakawa-text-link{ margin-top: 30px; }
.class_style_public_pages .arakawa-score-not-found{ margin: 0 auto; max-width: 900px; padding: 140px 30px; text-align: center; }
.class_style_public_pages .arakawa-score-not-found .arakawa-overline{ margin-bottom: 20px; }
.class_style_public_pages .arakawa-score-not-found > p:not(.arakawa-overline){ color: var(--ha-muted); margin: 24px 0 32px; }
.class_style_public_pages .arakawa-lesson{ background: #24383d; color: var(--ha-white); max-width: none; }

.arakawa-lesson > * { margin-left: auto; margin-right: auto; max-width: 1216px; }
.class_style_public_pages .arakawa-service-grid{ border-bottom: 1px solid rgba(255,255,255,.15); border-top: 1px solid rgba(255,255,255,.15); display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); }
.class_style_public_pages .arakawa-service-grid article{ border-right: 1px solid rgba(255,255,255,.15); min-height: 255px; padding: 30px 28px 38px; }
.class_style_public_pages .arakawa-service-grid article:last-child{ border-right: 0; }
.class_style_public_pages .arakawa-service-grid span{ color: var(--ha-gold-light); font-family: var(--ha-font-display); font-size: 10px; }
.class_style_public_pages .arakawa-service-grid h3{ font-family: var(--ha-font-mincho); font-size: 18px; font-weight: 400; line-height: 1.55; margin: 38px 0 15px; }
.class_style_public_pages .arakawa-service-grid p{ color: rgba(255,255,255,.57); font-size: 10px; line-height: 1.9; margin: 0; }
.class_style_public_pages .arakawa-activity-grid{ display: grid; gap: 18px; grid-template-columns: repeat(3, minmax(0, 1fr)); }
.class_style_public_pages .arakawa-activity-grid > a{ background: var(--ha-white); border: 1px solid var(--ha-line); min-height: 300px; padding: 35px; text-decoration: none; transition: transform .2s ease, border-color .2s ease; }
.class_style_public_pages .arakawa-activity-grid > a:hover{ border-color: var(--ha-gold); transform: translateY(-4px); }
.class_style_public_pages .arakawa-activity-grid span{ color: var(--ha-gold); font-family: var(--ha-font-display); font-size: 9px; letter-spacing: .19em; text-transform: uppercase; }
.class_style_public_pages .arakawa-activity-grid h3{ font-family: var(--ha-font-display); font-size: clamp(24px, 2.5vw, 36px); font-weight: 400; letter-spacing: .025em; margin: 65px 0 18px; }
.class_style_public_pages .arakawa-activity-grid p{ color: var(--ha-muted); font-size: 11px; line-height: 1.9; margin: 0; }
.class_style_public_pages .arakawa-activity-grid small{ border-bottom: 1px solid var(--ha-ink); display: inline-block; font-size: 9px; font-weight: 700; margin-top: 30px; padding-bottom: 5px; }
.class_style_public_pages .arakawa-contact{ align-items: start; background: #dedbd4; display: grid; gap: clamp(55px, 8vw, 125px); grid-template-columns: minmax(280px, .8fr) minmax(470px, 1.2fr); max-width: none; }

.arakawa-contact > * { max-width: 620px; }
.class_style_public_pages .arakawa-contact-intro{ justify-self: end; }
.class_style_public_pages .arakawa-contact-intro h2{ font-family: var(--ha-font-display); font-size: clamp(46px, 5.6vw, 78px); font-weight: 400; letter-spacing: .055em; line-height: 1; margin: 0; }
.class_style_public_pages .arakawa-contact-intro > p:not(.arakawa-overline){ color: #5d625f; font-size: 12px; line-height: 2; margin: 28px 0 0; }
.class_style_public_pages .arakawa-contact-status{ align-items: center; border-bottom: 1px solid var(--ha-line); border-top: 1px solid var(--ha-line); display: flex; gap: 18px; margin-top: 38px; padding: 18px 0; }
.class_style_public_pages .arakawa-contact-status span{ background: var(--ha-deep); color: var(--ha-white); font-family: var(--ha-font-display); font-size: 8px; letter-spacing: .16em; padding: 6px 9px; text-transform: uppercase; }
.class_style_public_pages .arakawa-contact-status p{ color: var(--ha-muted); font-size: 9px; margin: 0; }
.class_style_public_pages .arakawa-contact-form{ justify-self: start; width: min(100%, 650px); }
.class_style_public_pages .arakawa-contact-form .public-field{ margin: 0 0 22px; }
.class_style_public_pages .arakawa-contact-form label, .class_style_public_pages .arakawa-contact-form legend{ color: #4e5452; display: block; font-size: 10px; font-weight: 700; letter-spacing: .05em; margin: 0 0 8px; }
.class_style_public_pages .arakawa-contact-form input, .class_style_public_pages .arakawa-contact-form select, .class_style_public_pages .arakawa-contact-form textarea{ background: rgba(255,255,255,.6); border: 1px solid rgba(23,25,27,.18); border-radius: 0; color: var(--ha-ink); font: inherit; font-size: 12px; outline: none; padding: 13px 14px; width: 100%; }
.class_style_public_pages .arakawa-contact-form input:focus, .class_style_public_pages .arakawa-contact-form select:focus, .class_style_public_pages .arakawa-contact-form textarea:focus{ background: rgba(255,255,255,.88); border-color: var(--ha-gold); }
.class_style_public_pages .arakawa-contact-form textarea{ line-height: 1.75; resize: vertical; }
.class_style_public_pages .arakawa-form-row{ display: grid; gap: 16px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.class_style_public_pages .arakawa-online-field{ border: 0; padding: 0; }
.class_style_public_pages .arakawa-online-field label{ align-items: center; display: inline-flex; font-weight: 400; margin: 3px 20px 3px 0; }
.class_style_public_pages .arakawa-online-field input{ accent-color: var(--ha-deep); margin: 0 6px 0 0; width: auto; }
.class_style_public_pages .arakawa-form-notice{ color: var(--ha-muted); font-size: 9px; line-height: 1.7; margin: 0; }
.class_style_public_pages .arakawa-contact-form .public-actions{ display: flex; justify-content: flex-end; margin: 20px 0 0; }
.class_style_public_pages .arakawa-contact-form .public-actions-main{ margin-left: auto; }
.class_style_public_pages .arakawa-required{ color: #805e25; font-size: 8px; font-weight: 500; margin-left: 6px; }
.class_style_public_pages .arakawa-contact-form .error_message{ margin: 6px 0 0; min-height: 0; }
.class_style_public_pages .arakawa-contact-form .error_message:empty{ display: none; }
.class_style_public_pages .arakawa-honeypot{ height: 0; left: -10000px; overflow: hidden; position: absolute; width: 0; }
.class_style_public_pages .arakawa-submit{ background: var(--ha-deep); border: 1px solid var(--ha-deep); border-radius: 0; color: var(--ha-white); cursor: pointer; font-size: 10px; letter-spacing: .07em; min-height: 46px; padding: 0 24px; }
.class_style_public_pages .arakawa-submit:hover{ background: #294148; border-color: #294148; }
.class_style_public_pages .arakawa-contact-done{ border-bottom: 1px solid var(--ha-line); border-top: 1px solid var(--ha-line); padding: 42px 0; }
.class_style_public_pages .arakawa-contact-done .arakawa-overline{ margin-bottom: 16px; }
.class_style_public_pages .arakawa-contact-done h3{ font-family: var(--ha-font-mincho); font-size: clamp(22px, 2.4vw, 31px); font-weight: 400; letter-spacing: .05em; margin: 0; }
.class_style_public_pages .arakawa-contact-done > p:last-child{ color: var(--ha-muted); font-size: 11px; line-height: 1.9; margin: 18px 0 0; }
.class_style_public_pages .arakawa-contact-confirm{ color: #17191b; font-family: "Hiragino Sans", "Yu Gothic", sans-serif; }
.class_style_public_pages .arakawa-confirm-lead{ color: #5d625f; font-size: 12px; line-height: 1.8; margin: 0 0 20px; }
.class_style_public_pages .arakawa-contact-confirm dl{ border-top: 1px solid rgba(23,25,27,.16); margin: 0; }
.class_style_public_pages .arakawa-contact-confirm dl > div{ border-bottom: 1px solid rgba(23,25,27,.16); display: grid; gap: 18px; grid-template-columns: 150px 1fr; padding: 12px 0; }
.class_style_public_pages .arakawa-contact-confirm dt{ color: #6f7372; font-size: 10px; font-weight: 700; }
.class_style_public_pages .arakawa-contact-confirm dd{ font-size: 12px; line-height: 1.75; margin: 0; overflow-wrap: anywhere; }
.class_style_public_pages .arakawa-contact-confirm .public-actions{ display: flex; justify-content: space-between; margin: 22px 0 0; }
.class_style_public_pages .arakawa-contact-confirm .public-actions-main{ margin-left: auto; }
.class_style_public_pages .arakawa-contact-confirm .button_link{ align-items: center; background: #16242a; border: 1px solid #16242a; border-radius: 0; color: #fffefa; display: inline-flex; font-size: 10px; justify-content: center; min-height: 42px; padding: 0 18px; }
.class_style_public_pages .arakawa-contact-confirm .button_link.secondary{ background: transparent; color: #17191b; }
.class_style_public_pages .arakawa-footer{ align-items: center; background: #101719; color: var(--ha-white); display: grid; gap: 40px; grid-template-columns: 1fr auto; padding: 60px clamp(28px, 7vw, 112px) 34px; }
.class_style_public_pages .arakawa-footer-brand{ align-items: center; display: flex; gap: 14px; }
.class_style_public_pages .arakawa-footer-brand > span{ align-items: center; border: 1px solid var(--ha-gold); border-radius: 50%; color: var(--ha-gold-light); display: flex; font-family: var(--ha-font-display); font-size: 13px; height: 44px; justify-content: center; width: 44px; }
.class_style_public_pages .arakawa-footer-brand strong{ display: block; font-family: var(--ha-font-display); font-size: 14px; font-weight: 400; letter-spacing: .15em; }
.class_style_public_pages .arakawa-footer-brand small{ color: rgba(255,255,255,.45); display: block; font-family: var(--ha-font-display); font-size: 8px; letter-spacing: .17em; margin-top: 6px; text-transform: uppercase; }
.class_style_public_pages .arakawa-footer nav{ display: flex; gap: 26px; }
.class_style_public_pages .arakawa-footer nav a{ color: rgba(255,255,255,.67); font-family: var(--ha-font-display); font-size: 9px; letter-spacing: .09em; text-decoration: none; }
.class_style_public_pages .arakawa-footer > p{ border-top: 1px solid rgba(255,255,255,.11); color: rgba(255,255,255,.3); font-size: 8px; grid-column: 1 / -1; letter-spacing: .08em; margin: 5px 0 0; padding-top: 22px; }


@media (max-width: 1100px) {.class_style_public_pages .arakawa-header{ grid-template-columns: 220px 1fr 90px; padding-left: 24px; padding-right: 24px; }
.class_style_public_pages .arakawa-nav{ gap: 13px; }
.class_style_public_pages .arakawa-nav a{ font-size: 9px; }
.class_style_public_pages .arakawa-hero{ grid-template-columns: 1fr 43%; }
.class_style_public_pages .arakawa-hero-copy{ padding-left: 50px; padding-right: 45px; }
.class_style_public_pages .arakawa-hero h1{ font-size: clamp(54px, 7vw, 80px); }
.class_style_public_pages .arakawa-scroll-cue{ left: 50px; }
.class_style_public_pages .arakawa-profile-roles{ grid-template-columns: 1fr; }
.class_style_public_pages .arakawa-profile-roles article, .class_style_public_pages .arakawa-profile-roles article + article{ border-bottom: 1px solid var(--ha-line); border-right: 0; padding: 20px 0; }
.class_style_public_pages .arakawa-service-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
.class_style_public_pages .arakawa-service-grid article:nth-child(2){ border-right: 0; }
.class_style_public_pages .arakawa-service-grid article:nth-child(-n+2){ border-bottom: 1px solid rgba(255,255,255,.15); }

}


@media (max-width: 820px) {.class_style_public_pages .arakawa-header{ display: flex; flex-wrap: wrap; gap: 15px; justify-content: space-between; padding-bottom: 13px; padding-top: 13px; }
.class_style_public_pages .arakawa-brand-monogram{ height: 38px; width: 38px; }
.class_style_public_pages .arakawa-header-contact{ order: 2; }
.class_style_public_pages .arakawa-nav{ border-top: 1px solid var(--ha-line); justify-content: flex-start; order: 3; overflow-x: auto; padding-top: 12px; width: 100%; }
.class_style_public_pages .arakawa-nav a{ flex: 0 0 auto; }
.class_style_public_pages .arakawa-hero{ display: flex; flex-direction: column; min-height: auto; }
.class_style_public_pages .arakawa-hero-copy{ min-height: 540px; padding: 84px 34px 68px; }
.class_style_public_pages .arakawa-hero-visual{ height: clamp(250px, 52vw, 360px); min-height: 0; order: -1; }
.class_style_public_pages .arakawa-hero-image-frame img{ object-position: center 31%; }
.class_style_public_pages .arakawa-scroll-cue{ display: none; }
.class_style_public_pages .arakawa-section{ padding-bottom: 94px; padding-top: 94px; }
.class_style_public_pages .arakawa-section-heading{ margin-bottom: 54px; }
.class_style_public_pages .arakawa-section-index{ display: none; }
.class_style_public_pages .arakawa-profile-layout{ grid-template-columns: 1fr; }
.class_style_public_pages .arakawa-profile-roles{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
.class_style_public_pages .arakawa-profile-roles article, .class_style_public_pages .arakawa-profile-roles article + article{ border-bottom: 0; border-right: 1px solid var(--ha-line); padding: 22px 18px 0 0; }
.class_style_public_pages .arakawa-profile-roles article + article{ padding-left: 18px; }
.class_style_public_pages .arakawa-profile-roles article:last-child{ border-right: 0; }
.class_style_public_pages .arakawa-album-grid, .class_style_public_pages .arakawa-score-grid{ gap: 26px; grid-template-columns: repeat(2, minmax(0, 1fr)); }
.class_style_public_pages .arakawa-album-card:nth-child(3):last-child, .class_style_public_pages .arakawa-score-card:nth-child(3):last-child{ grid-column: 1 / -1; max-width: calc(50% - 13px); }
.class_style_public_pages .arakawa-store-intro{ grid-template-columns: 1fr; }
.class_style_public_pages .arakawa-score-detail{ gap: 45px; grid-template-columns: minmax(260px, .8fr) minmax(360px, 1.2fr); padding-left: 30px; padding-right: 30px; }
.class_style_public_pages .arakawa-archive-grid{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
.class_style_public_pages .arakawa-archive-grid article:nth-child(2){ border-right: 0; }
.class_style_public_pages .arakawa-archive-grid article:nth-child(-n+2){ border-bottom-color: rgba(255,255,255,.25); }
.class_style_public_pages .arakawa-activity-grid{ grid-template-columns: 1fr; }
.class_style_public_pages .arakawa-activity-grid > a{ min-height: 245px; }
.class_style_public_pages .arakawa-activity-grid h3{ margin-top: 42px; }
.class_style_public_pages .arakawa-contact{ grid-template-columns: 1fr; }
.class_style_public_pages .arakawa-contact-intro{ justify-self: start; }
.class_style_public_pages .arakawa-footer{ grid-template-columns: 1fr; }
.class_style_public_pages .arakawa-footer nav{ flex-wrap: wrap; }

}


@media (max-width: 680px) {.class_style_public_pages .arakawa-brand-copy strong{ font-size: 11px; }
.class_style_public_pages .arakawa-brand-copy small{ font-size: 7px; }
.class_style_public_pages .arakawa-header-contact{ font-size: 9px; }
.class_style_public_pages .arakawa-nav{ gap: 18px; }
.class_style_public_pages .arakawa-hero{ display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); min-height: clamp(390px, 78vw, 480px); }
.class_style_public_pages .arakawa-hero-copy{ min-height: 0; padding: 50px clamp(14px, 4.2vw, 25px) 42px; }
.class_style_public_pages .arakawa-hero-copy::before{ height: 360px; left: -210px; top: -110px; width: 360px; }
.class_style_public_pages .arakawa-hero-visual{ height: auto; min-height: 0; order: initial; }
.class_style_public_pages .arakawa-hero-image-frame img{ object-position: 52% center; }
.class_style_public_pages .arakawa-hero-signature{ bottom: 22px; font-size: 14px; left: 18px; }
.class_style_public_pages .arakawa-hero h1{ font-size: clamp(34px, 7.4vw, 45px); letter-spacing: .055em; line-height: 1.05; }
.class_style_public_pages .arakawa-hero h1 small{ font-size: clamp(7px, 1.7vw, 10px); letter-spacing: .18em; margin-top: 15px; }
.class_style_public_pages .arakawa-hero .arakawa-overline{ font-size: clamp(7px, 1.5vw, 9px); letter-spacing: .14em; line-height: 1.7; margin-bottom: 18px; }
.class_style_public_pages .arakawa-hero-lead{ font-size: clamp(15px, 3vw, 18px); letter-spacing: .07em; margin-top: 49px; }
.class_style_public_pages .arakawa-hero-lead::before{ top: -23px; width: 38px; }
.class_style_public_pages .arakawa-hero-intro{ font-size: 10px; line-height: 1.8; margin-top: 13px; }
.class_style_public_pages .arakawa-hero-actions{ gap: 8px; margin-top: 24px; }
.class_style_public_pages .arakawa-hero-actions .arakawa-button{ font-size: 9px; min-height: 40px; padding: 0 13px; }
.class_style_public_pages .arakawa-preview-note{ align-items: flex-start; flex-direction: column; gap: 9px; padding: 15px 20px; }
.class_style_public_pages .arakawa-section{ padding: 78px 20px; }
.class_style_public_pages .arakawa-section-heading h2, .class_style_public_pages .arakawa-contact-intro h2{ font-size: clamp(40px, 12vw, 58px); }
.class_style_public_pages .arakawa-profile-lead > p{ font-size: 18px; }
.class_style_public_pages .arakawa-profile-roles{ grid-template-columns: 1fr; }
.class_style_public_pages .arakawa-profile-roles article, .class_style_public_pages .arakawa-profile-roles article + article{ border-bottom: 1px solid var(--ha-line); border-right: 0; padding: 20px 0; }
.class_style_public_pages .arakawa-facts{ grid-template-columns: 1fr; }
.class_style_public_pages .arakawa-facts > div{ border-bottom: 1px solid var(--ha-line); border-right: 0; }
.class_style_public_pages .arakawa-facts > div:last-child{ border-bottom: 0; }
.class_style_public_pages .arakawa-empty-concert{ align-items: flex-start; flex-direction: column; gap: 13px; }
.class_style_public_pages .arakawa-event{ gap: 20px; grid-template-columns: 78px 1fr; }
.class_style_public_pages .arakawa-event .arakawa-button{ grid-column: 2; justify-self: start; }
.class_style_public_pages .arakawa-event-date strong{ font-size: 29px; }
.class_style_public_pages .arakawa-archive-grid{ grid-template-columns: 1fr; }
.class_style_public_pages .arakawa-archive-grid article, .class_style_public_pages .arakawa-archive-grid article + article{ border-right: 0; padding-left: 0; }
.class_style_public_pages .arakawa-album-grid, .class_style_public_pages .arakawa-score-grid{ grid-template-columns: 1fr; }
.class_style_public_pages .arakawa-album-card:nth-child(3):last-child, .class_style_public_pages .arakawa-score-card:nth-child(3):last-child{ grid-column: auto; max-width: none; }
.class_style_public_pages .arakawa-store-steps{ grid-template-columns: 1fr; }
.class_style_public_pages .arakawa-store-steps li{ border-bottom: 1px solid var(--ha-line); border-right: 0; min-height: 105px; }
.class_style_public_pages .arakawa-store-steps li:last-child{ border-bottom: 0; }
.class_style_public_pages .arakawa-score-detail{ grid-template-columns: 1fr; padding: 60px 20px 80px; }
.class_style_public_pages .arakawa-score-detail-visual{ margin: 0 auto; max-width: 420px; width: 100%; }
.class_style_public_pages .arakawa-store-back{ margin-bottom: 42px; }
.class_style_public_pages .arakawa-score-purchase-panel{ align-items: stretch; flex-direction: column; gap: 20px; }
.class_style_public_pages .arakawa-score-purchase-panel .arakawa-button{ width: 100%; }
.class_style_public_pages .arakawa-service-grid{ grid-template-columns: 1fr; }
.class_style_public_pages .arakawa-service-grid article, .class_style_public_pages .arakawa-service-grid article:nth-child(2){ border-bottom: 1px solid rgba(255,255,255,.15); border-right: 0; min-height: 215px; }
.class_style_public_pages .arakawa-service-grid article:last-child{ border-bottom: 0; }
.class_style_public_pages .arakawa-form-row{ grid-template-columns: 1fr; }
.class_style_public_pages .arakawa-online-field label{ display: flex; }
.class_style_public_pages .arakawa-contact-confirm dl > div{ gap: 5px; grid-template-columns: 1fr; }
.class_style_public_pages .arakawa-footer{ padding-left: 20px; padding-right: 20px; }
.class_style_public_pages .arakawa-footer nav{ align-items: flex-start; flex-direction: column; gap: 14px; }

}


@media (max-width: 460px) {.class_style_public_pages .arakawa-brand-monogram{ height: 34px; width: 34px; }
.class_style_public_pages .arakawa-brand-copy strong{ font-size: 10px; }
.class_style_public_pages .arakawa-header{ gap: 11px; padding-left: 14px; padding-right: 14px; }
.class_style_public_pages .arakawa-nav{ gap: 15px; }
.class_style_public_pages .arakawa-hero{ grid-template-columns: minmax(0, 1.12fr) minmax(0, .88fr); }
.class_style_public_pages .arakawa-hero-intro{ display: none; }
.class_style_public_pages .arakawa-hero-actions{ align-items: flex-start; flex-direction: column; }
.class_style_public_pages .arakawa-hero-actions .arakawa-button{ width: 100%; }
.class_style_public_pages .arakawa-hero-signature{ bottom: 16px; font-size: 11px; left: 10px; }
.class_style_public_pages .arakawa-hero-signature span{ font-size: 6px; letter-spacing: .13em; }
.class_style_public_pages .arakawa-section{ padding-bottom: 68px; padding-top: 68px; }
.class_style_public_pages .arakawa-section-heading{ margin-bottom: 44px; }

}


@media (prefers-reduced-motion: reduce) {.class_style_public_pages html{ scroll-behavior: auto; }
.class_style_public_pages .arakawa-activity-grid > a{ transition: none; }

}


/* Contest judging PWA */
.contest-app {
	--contest-ink: #17213c;
	--contest-muted: #69748c;
	--contest-line: #dfe4ee;
	--contest-brand: #3247a7;
	--contest-brand-dark: #23357f;
	--contest-good: #147154;
	background: #f3f5fa;
	color: var(--contest-ink);
	font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Yu Gothic", sans-serif;
	min-height: 100vh;
}

.contest-app * { box-sizing: border-box; }
.class_style_public_pages .contest-app button, .class_style_public_pages .contest-app input, .class_style_public_pages .contest-app select, .class_style_public_pages .contest-app textarea{ font: inherit; }
.class_style_public_pages .contest-app button{ margin: 0; }
.class_style_public_pages .contest-app-header{ align-items: center; background: #fff; border-bottom: 1px solid var(--contest-line); display: flex; justify-content: space-between; min-height: 76px; padding: 12px clamp(18px, 4vw, 48px); position: sticky; top: 0; z-index: 20; }
.class_style_public_pages .contest-brand{ align-items: center; display: flex; gap: 11px; }
.class_style_public_pages .contest-brand-mark{ align-items: center; background: var(--contest-brand); border-radius: 12px; color: #fff; display: inline-flex; font-family: Georgia, serif; font-size: 13px; font-weight: 700; height: 44px; justify-content: center; width: 44px; }
.class_style_public_pages .contest-brand div{ display: grid; }
.class_style_public_pages .contest-brand strong{ font-size: 14px; letter-spacing: .03em; }
.class_style_public_pages .contest-brand small{ color: var(--contest-muted); font-size: 8px; letter-spacing: .12em; margin-top: 3px; text-transform: uppercase; }
.class_style_public_pages .contest-app-header-actions{ align-items: center; display: flex; gap: 8px; }
.class_style_public_pages .contest-network-badge, .class_style_public_pages .contest-pending-badge{ border-radius: 999px; font-size: 11px; font-weight: 800; padding: 7px 10px; white-space: nowrap; }
.class_style_public_pages .contest-network-badge.is-online{ background: #e4f6ee; color: #116d50; }
.class_style_public_pages .contest-network-badge.is-offline{ background: #fff0e3; color: #995315; }
.class_style_public_pages .contest-pending-badge{ background: #edf0f5; color: #626d81; }
.class_style_public_pages .contest-pending-badge.has-pending{ background: #fff0dd; color: #945b12; }
.class_style_public_pages .contest-logout-button{ background: transparent; border: 1px solid #d6dce7; border-radius: 9px; color: #68738a; cursor: pointer; font-size: 11px; font-weight: 700; min-height: 34px; padding: 0 11px; }
.class_style_public_pages .contest-login-shell{ display: grid; gap: clamp(44px, 8vw, 120px); grid-template-columns: minmax(0, 1.1fr) minmax(340px, .7fr); margin: 0 auto; max-width: 1180px; min-height: calc(100vh - 76px); padding: clamp(55px, 9vw, 115px) clamp(22px, 5vw, 60px); }
.class_style_public_pages .contest-login-copy{ align-self: center; }
.class_style_public_pages .contest-eyebrow{ color: var(--contest-brand); font-size: 10px; font-weight: 800; letter-spacing: .17em; margin: 0 0 17px; }
.class_style_public_pages .contest-login-copy h1{ font-family: "Yu Mincho", "Hiragino Mincho ProN", serif; font-size: clamp(34px, 4.6vw, 62px); font-weight: 500; letter-spacing: .035em; line-height: 1.48; margin: 0; }
.class_style_public_pages .contest-login-copy > p:not(.contest-eyebrow){ color: #59657c; font-size: 14px; line-height: 2; margin: 30px 0 0; max-width: 630px; }
.class_style_public_pages .contest-login-copy ul{ display: grid; gap: 11px; list-style: none; margin: 34px 0 0; padding: 0; }
.class_style_public_pages .contest-login-copy li{ align-items: center; display: flex; font-size: 13px; font-weight: 700; gap: 11px; }
.class_style_public_pages .contest-login-copy li::before{ align-items: center; background: var(--contest-brand); border-radius: 50%; color: #fff; content: "✓"; display: inline-flex; font-size: 9px; height: 20px; justify-content: center; width: 20px; }
.class_style_public_pages .contest-login-card{ align-self: center; background: #fff; border: 1px solid #e0e4ed; border-radius: 20px; box-shadow: 0 24px 70px rgba(32, 49, 102, .12); padding: clamp(28px, 4vw, 46px); }
.class_style_public_pages .contest-login-step{ color: var(--contest-brand); font-size: 9px; font-weight: 800; letter-spacing: .14em; }
.class_style_public_pages .contest-login-card h2{ font-size: 27px; margin: 13px 0 8px; }
.class_style_public_pages .contest-login-card > p{ color: var(--contest-muted); font-size: 12px; line-height: 1.7; margin: 0 0 25px; }
.class_style_public_pages .contest-code-field label{ color: #4a566e; font-size: 12px; font-weight: 800; }
.class_style_public_pages .contest-code-field input{ border: 2px solid #cbd3e0 !important; border-radius: 11px !important; font-size: 20px !important; font-weight: 800; height: 58px !important; letter-spacing: .09em; margin-top: 8px; text-align: center; text-transform: uppercase; }
.class_style_public_pages .contest-login-actions{ margin-top: 20px; }
.class_style_public_pages .contest-login-actions .public-actions-main{ width: 100%; }
.class_style_public_pages .contest-login-actions button{ width: 100%; }
.class_style_public_pages .contest-login-card > small{ color: #8992a3; display: block; font-size: 9px; line-height: 1.7; margin-top: 15px; }
.class_style_public_pages .contest-primary-button, .class_style_public_pages .contest-secondary-button, .class_style_public_pages .contest-sync-button{ align-items: center; border: 0; border-radius: 11px; cursor: pointer; display: inline-flex; font-weight: 800; justify-content: center; min-height: 50px; padding: 0 21px; }
.class_style_public_pages .contest-primary-button{ background: var(--contest-brand); color: #fff; }
.class_style_public_pages .contest-primary-button:hover{ background: var(--contest-brand-dark); }
.class_style_public_pages .contest-secondary-button{ background: #edf0f5; color: #3b4862; }
.class_style_public_pages .contest-primary-button:disabled, .class_style_public_pages .contest-secondary-button:disabled, .class_style_public_pages .contest-sync-button:disabled{ cursor: not-allowed; opacity: .5; }
.class_style_public_pages .contest-judge-home{ margin: 0 auto; max-width: 1280px; padding: 28px clamp(18px, 4vw, 46px) 70px; }
.class_style_public_pages .contest-welcome{ align-items: center; display: flex; justify-content: space-between; margin-bottom: 18px; }
.class_style_public_pages .contest-welcome h1{ font-size: clamp(24px, 3vw, 36px); margin: 0 0 7px; }
.class_style_public_pages .contest-welcome > div > p:last-child{ color: var(--contest-muted); font-size: 13px; margin: 0; }
.class_style_public_pages .contest-sync-button{ background: var(--contest-brand); color: #fff; min-width: 130px; }
.class_style_public_pages .contest-offline-notice{ align-items: center; background: #fff1df; border: 1px solid #f1c98f; border-radius: 13px; display: flex; gap: 16px; margin-bottom: 12px; padding: 13px 16px; }
.class_style_public_pages .contest-offline-notice[hidden]{ display: none; }
.class_style_public_pages .contest-offline-notice strong{ color: #92500b; font-size: 12px; white-space: nowrap; }
.class_style_public_pages .contest-offline-notice span{ color: #7f633d; font-size: 11px; }
.class_style_public_pages .contest-app-message{ background: #edf0f8; border-radius: 10px; color: #59657f; font-size: 11px; margin-bottom: 16px; padding: 10px 13px; }
.class_style_public_pages .contest-app-message[data-type="success"]{ background: #e8f6f0; color: #14684e; }
.class_style_public_pages .contest-app-message[data-type="offline"]{ background: #fff3e3; color: #85551c; }
.class_style_public_pages .contest-app-message[data-type="error"]{ background: #fff0ed; color: #a74032; }
.class_style_public_pages .contest-filter-bar{ align-items: end; background: #fff; border: 1px solid var(--contest-line); border-radius: 14px; display: grid; gap: 12px; grid-template-columns: minmax(160px, 240px) minmax(160px, 240px) 1fr; margin-bottom: 13px; padding: 14px; }
.class_style_public_pages .contest-filter-bar label{ color: #657087; display: grid; font-size: 10px; font-weight: 800; gap: 5px; }
.class_style_public_pages .contest-filter-bar select{ background: #fff; border: 1px solid #cbd3df; border-radius: 9px; font-size: 14px; height: 43px; padding: 0 10px; width: 100%; }
.class_style_public_pages .contest-filter-summary{ align-items: baseline; display: flex; gap: 5px; justify-content: flex-end; padding: 0 8px 5px; }
.class_style_public_pages .contest-filter-summary strong{ font-size: 25px; }
.class_style_public_pages .contest-filter-summary span{ color: var(--contest-muted); font-size: 10px; }
.class_style_public_pages .contest-entry-list{ background: #fff; border: 1px solid var(--contest-line); border-radius: 14px; overflow: hidden; }
.class_style_public_pages .contest-entry-card{ align-items: center; background: #fff; border: 0; border-bottom: 1px solid #e8ebf1; cursor: pointer; display: grid; gap: 15px; grid-template-columns: 50px minmax(0, 1fr) auto; min-height: 98px; padding: 14px 17px; text-align: left; width: 100%; }
.class_style_public_pages .contest-entry-card:last-child{ border-bottom: 0; }
.class_style_public_pages .contest-entry-card:hover{ background: #f8f9fc; }
.class_style_public_pages .contest-order{ align-items: center; background: #edf0f8; border-radius: 12px; color: var(--contest-brand); display: inline-flex; font-size: 17px; font-weight: 800; height: 46px; justify-content: center; width: 46px; }
.class_style_public_pages .contest-entry-copy{ display: grid; min-width: 0; }
.class_style_public_pages .contest-entry-copy strong{ font-size: 14px; }
.class_style_public_pages .contest-entry-copy strong i{ color: var(--contest-brand); font-size: 10px; font-style: normal; margin-left: 7px; }
.class_style_public_pages .contest-entry-copy b{ font-size: 14px; line-height: 1.5; margin-top: 5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.class_style_public_pages .contest-entry-copy small{ color: var(--contest-muted); font-size: 10px; margin-top: 5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.class_style_public_pages .contest-entry-state{ border-radius: 999px; font-size: 10px; font-weight: 800; padding: 7px 10px; white-space: nowrap; }
.class_style_public_pages .contest-entry-state.is-empty{ background: #eef0f4; color: #687285; }
.class_style_public_pages .contest-entry-state.is-draft{ background: #e8eeff; color: #3149a5; }
.class_style_public_pages .contest-entry-state.is-pending{ background: #fff0dc; color: #955a0d; }
.class_style_public_pages .contest-entry-state.is-submitted{ background: #e2f5eb; color: #116b4d; }
.class_style_public_pages .contest-entry-state.is-conflict, .class_style_public_pages .contest-entry-state.is-disqualified{ background: #fff0ed; color: #aa4233; }
.class_style_public_pages .contest-scoring-screen{ --contest-score-band: #d2a022; background: #fff; border: 4px solid var(--contest-score-band); border-radius: 18px; box-shadow: 0 20px 54px rgba(31, 49, 102, .08); padding: clamp(20px, 4vw, 42px); transition: border-color .18s ease; }
.class_style_public_pages .contest-scoring-screen.score-band-s{ --contest-score-band: #6c4fc7; }
.class_style_public_pages .contest-scoring-screen.score-band-a{ --contest-score-band: #16805f; }
.class_style_public_pages .contest-scoring-screen.score-band-b{ --contest-score-band: #d2a022; }
.class_style_public_pages .contest-scoring-screen.score-band-c{ --contest-score-band: #dd762f; }
.class_style_public_pages .contest-scoring-screen.score-band-d{ --contest-score-band: #c94c4c; }
.class_style_public_pages .contest-back-button{ background: transparent; border: 0; color: var(--contest-brand); cursor: pointer; font-size: 12px; font-weight: 800; padding: 0; }
.class_style_public_pages .contest-scorecard-head{ align-items: flex-start; border-bottom: 1px solid var(--contest-line); display: flex; justify-content: space-between; margin-top: 24px; padding-bottom: 21px; }
.class_style_public_pages .contest-entry-number{ color: var(--contest-brand); display: block; font-size: 13px; font-weight: 800; letter-spacing: .04em; margin-bottom: 9px; }
.class_style_public_pages .contest-scorecard-head h2{ font-family: "Yu Mincho", "Hiragino Mincho ProN", serif; font-size: clamp(23px, 3.3vw, 38px); font-weight: 500; line-height: 1.5; margin: 0; }
.class_style_public_pages .contest-scorecard-head p{ color: var(--contest-muted); font-size: 11px; margin: 8px 0 0; }
.class_style_public_pages .contest-save-state{ background: #edf0f5; border-radius: 999px; color: #69748a; font-size: 10px; font-weight: 800; padding: 7px 10px; white-space: nowrap; }
.class_style_public_pages .contest-score-layout{ display: grid; gap: clamp(24px, 5vw, 70px); grid-template-columns: minmax(300px, .8fr) minmax(380px, 1.2fr); padding: 30px 0; }
.class_style_public_pages .contest-point-panel, .class_style_public_pages .contest-comment-panel{ min-width: 0; }
.class_style_public_pages .contest-point-panel > p, .class_style_public_pages .contest-comment-panel > label{ color: #46526a; display: flex; font-size: 14px; font-weight: 800; justify-content: space-between; margin: 0 0 16px; }
.class_style_public_pages .contest-point-panel > p span, .class_style_public_pages .contest-comment-panel > label span{ color: #8992a3; font-size: 9px; font-weight: 600; }
.class_style_public_pages .contest-current-band{ align-items: center; background: #fff8df; border-left: 7px solid #d2a022; border-radius: 10px; display: grid; gap: 2px 10px; grid-template-columns: auto 1fr; margin-bottom: 12px; padding: 10px 13px; }
.class_style_public_pages .contest-current-band > span{ color: #747e90; font-size: 9px; font-weight: 800; grid-column: 1 / -1; letter-spacing: .08em; }
.class_style_public_pages .contest-current-band strong{ font-size: 17px; }
.class_style_public_pages .contest-current-band small{ align-self: center; color: #69748a; font-size: 10px; justify-self: end; }
.class_style_public_pages .contest-current-band.is-s{ background: #f0ebff; border-color: #6c4fc7; }
.class_style_public_pages .contest-current-band.is-a{ background: #e3f5ed; border-color: #16805f; }
.class_style_public_pages .contest-current-band.is-b{ background: #fff8df; border-color: #d2a022; }
.class_style_public_pages .contest-current-band.is-c{ background: #fff0e4; border-color: #dd762f; }
.class_style_public_pages .contest-current-band.is-d{ background: #fff0f0; border-color: #c94c4c; }
.class_style_public_pages .contest-stepper{ align-items: center; background: #f1f3f8; border-radius: 17px; display: grid; gap: 12px; grid-template-columns: 72px 1fr 72px; padding: 13px; }
.class_style_public_pages .contest-stepper button{ background: #fff; border: 1px solid #d6dce7; border-radius: 13px; color: var(--contest-brand); cursor: pointer; font-size: 30px; font-weight: 400; height: 70px; }
.class_style_public_pages .contest-stepper output{ color: var(--contest-ink); font-size: clamp(50px, 7vw, 80px); font-weight: 700; letter-spacing: -.04em; text-align: center; }
.class_style_public_pages .contest-quick-points{ display: grid; gap: 7px; grid-template-columns: repeat(5, 1fr); margin-top: 10px; }
.class_style_public_pages .contest-quick-points button{ background: #fff; border: 1px solid #d9dee8; border-radius: 9px; color: #5f6b82; cursor: pointer; height: 38px; }
.class_style_public_pages .contest-score-guide{ display: grid; gap: 6px; margin-top: 14px; }
.class_style_public_pages .contest-score-guide > div{ align-items: center; border-left: 7px solid; border-radius: 9px; display: grid; gap: 3px 8px; grid-template-columns: 1fr auto; padding: 8px 10px; }
.class_style_public_pages .contest-score-guide strong{ font-size: 11px; }
.class_style_public_pages .contest-score-guide span{ font-size: 10px; font-weight: 800; }
.class_style_public_pages .contest-score-guide small{ color: #687386; font-size: 9px; grid-column: 1 / -1; }
.class_style_public_pages .contest-score-guide .is-s{ background: #f0ebff; border-color: #6c4fc7; }
.class_style_public_pages .contest-score-guide .is-a{ background: #e3f5ed; border-color: #16805f; }
.class_style_public_pages .contest-score-guide .is-b{ background: #fff8df; border-color: #d2a022; }
.class_style_public_pages .contest-score-guide .is-c{ background: #fff0e4; border-color: #dd762f; }
.class_style_public_pages .contest-score-guide .is-d{ background: #fff0f0; border-color: #c94c4c; }
.class_style_public_pages .contest-comment-panel textarea{ border: 2px solid #cbd2df; border-radius: 14px; box-sizing: border-box; font-size: 19px; line-height: 1.8; min-height: 250px; padding: 17px; resize: vertical; width: 100%; }
.class_style_public_pages .contest-comment-panel textarea:focus{ border-color: var(--contest-brand); outline: 3px solid rgba(50,71,167,.12); }
.class_style_public_pages .contest-comment-panel > small{ color: #8992a3; display: block; font-size: 9px; margin-top: 6px; text-align: right; }
.class_style_public_pages .contest-score-actions{ border-top: 1px solid var(--contest-line); display: flex; gap: 10px; justify-content: flex-end; padding-top: 20px; }
.class_style_public_pages .contest-score-actions button{ min-width: 160px; }
.class_style_public_pages .contest-lock-note{ background: #fff2e6; border-radius: 10px; color: #8b591f; font-size: 11px; line-height: 1.7; margin: 14px 0 0; padding: 12px 14px; }
.class_style_public_pages .contest-submit-dialog{ border: 0; border-radius: 18px; box-shadow: 0 30px 90px rgba(21,31,65,.28); max-width: 500px; padding: 0; width: calc(100% - 32px); }
.class_style_public_pages .contest-submit-dialog::backdrop{ background: rgba(17, 25, 48, .48); }
.class_style_public_pages .contest-submit-dialog form{ padding: 30px; }
.class_style_public_pages .contest-submit-dialog form > span{ color: var(--contest-brand); font-size: 9px; font-weight: 800; letter-spacing: .16em; }
.class_style_public_pages .contest-submit-dialog h2{ font-size: 24px; margin: 12px 0 17px; }
.class_style_public_pages .contest-submit-dialog p{ background: #f1f3f8; border-radius: 11px; font-size: 18px; margin: 0 0 14px; padding: 13px; }
.class_style_public_pages .contest-submit-dialog small{ color: var(--contest-muted); display: block; font-size: 10px; line-height: 1.7; }
.class_style_public_pages .contest-dialog-buttons{ display: flex; gap: 9px; justify-content: flex-end; margin-top: 22px; }


/* Public contest results */
.contest-public-results { background: #f4f5f8; color: #17213c; font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Yu Gothic", sans-serif; min-height: 100vh; padding: clamp(40px, 8vw, 92px) clamp(18px, 5vw, 60px); }
.class_style_public_pages .contest-public-results > header, .class_style_public_pages .contest-public-results > section, .class_style_public_pages .contest-public-results > footer{ margin-left: auto; margin-right: auto; max-width: 1080px; }
.class_style_public_pages .contest-public-results > header{ border-bottom: 1px solid #d8dde7; padding-bottom: 30px; }
.class_style_public_pages .contest-public-results > header > p, .class_style_public_pages .contest-public-empty > p{ color: #3247a7; font-size: 9px; font-weight: 800; letter-spacing: .18em; margin: 0 0 13px; }
.class_style_public_pages .contest-public-results > header h1{ font-family: "Yu Mincho", "Hiragino Mincho ProN", serif; font-size: clamp(30px, 4.5vw, 56px); font-weight: 500; letter-spacing: .03em; margin: 0; }
.class_style_public_pages .contest-public-results > header > div{ display: flex; gap: 8px; margin-top: 18px; }
.class_style_public_pages .contest-public-results > header span{ background: #e6e9f4; border-radius: 999px; color: #3d4e8e; font-size: 10px; font-weight: 800; padding: 6px 10px; }
.class_style_public_pages .contest-public-division{ padding-top: 42px; }
.class_style_public_pages .contest-public-division h2{ font-size: 18px; margin: 0 0 13px; }
.class_style_public_pages .contest-public-table-scroll{ background: #fff; border: 1px solid #dfe3ea; border-radius: 15px; overflow-x: auto; }
.class_style_public_pages .contest-public-result-table{ border-collapse: collapse; min-width: 980px; width: 100%; }
.class_style_public_pages .contest-public-result-table th{ background: #eceff5; border-bottom: 1px solid #d5dae4; color: #566177; font-size: 10px; letter-spacing: .04em; padding: 11px 12px; text-align: left; white-space: nowrap; }
.class_style_public_pages .contest-public-result-table td{ border-bottom: 1px solid #e8ebf0; font-size: 12px; line-height: 1.55; padding: 13px 12px; vertical-align: middle; }
.class_style_public_pages .contest-public-result-table tr:last-child td{ border-bottom: 0; }
.class_style_public_pages .contest-public-result-table td strong{ display: block; font-size: 14px; white-space: nowrap; }
.class_style_public_pages .contest-public-result-table td small{ color: #7b8598; display: block; font-size: 9px; margin-top: 3px; }
.class_style_public_pages .contest-public-result-table td.piece{ min-width: 240px; }
.class_style_public_pages .contest-public-result-table td.score{ color: #3247a7; font-size: 18px; font-weight: 800; text-align: center; }
.class_style_public_pages .contest-public-result-badge{ background: #ece3c9; border-radius: 999px; color: #725b21; display: inline-flex; font-size: 11px; font-weight: 800; justify-content: center; min-width: 54px; padding: 6px 9px; white-space: nowrap; }
.class_style_public_pages .contest-public-results > footer{ align-items: center; border-top: 1px solid #d8dde7; display: flex; justify-content: space-between; margin-top: 48px; padding-top: 18px; }
.class_style_public_pages .contest-public-results > footer p{ color: #798398; font-size: 10px; margin: 0; }
.class_style_public_pages .contest-public-results > footer a{ color: #3247a7; font-size: 10px; font-weight: 800; }
.class_style_public_pages .contest-public-downloads{ align-items: center; display: flex; gap: 10px; }
.class_style_public_pages .contest-public-pdf-button{ background: #3247a7; border: 0; border-radius: 9px; color: #fff; cursor: pointer; font-size: 10px; font-weight: 800; margin: 0; min-height: 36px; padding: 0 14px; }
.class_style_public_pages .contest-public-downloads .contest-public-feedback-button{ align-items: center; background: #fff; border: 1px solid #3247a7; border-radius: 9px; display: inline-flex; min-height: 36px; padding: 0 14px; text-decoration: none; }
.class_style_public_pages .contest-public-empty{ padding-top: 18vh; text-align: center; }
.class_style_public_pages .contest-public-empty h1{ font-family: "Yu Mincho", serif; font-size: clamp(30px, 5vw, 54px); font-weight: 500; margin: 0 0 18px; }
.class_style_public_pages .contest-public-empty span{ color: #7c8698; font-size: 12px; }


/* Participant result and feedback */
.contest-feedback-page { --contest-brand: #3247a7; --contest-brand-dark: #23357f; background: #f4f5f8; color: #17213c; font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Yu Gothic", sans-serif; min-height: 100vh; padding: clamp(28px, 6vw, 70px) clamp(18px, 5vw, 54px) 80px; }

.contest-feedback-page * { box-sizing: border-box; }
.class_style_public_pages .contest-feedback-page button{ margin: 0; }
.class_style_public_pages .contest-feedback-header{ align-items: flex-end; border-bottom: 1px solid #d8dde7; display: flex; justify-content: space-between; margin: 0 auto; max-width: 980px; padding-bottom: 24px; }
.class_style_public_pages .contest-feedback-header p{ color: #3247a7; font-size: 9px; font-weight: 800; letter-spacing: .18em; margin: 0 0 10px; }
.class_style_public_pages .contest-feedback-header h1{ font-family: "Yu Mincho", "Hiragino Mincho ProN", serif; font-size: clamp(30px, 4.2vw, 50px); font-weight: 500; margin: 0; }
.class_style_public_pages .contest-feedback-header span{ color: #707b90; display: block; font-size: 11px; margin-top: 8px; }
.class_style_public_pages .contest-feedback-header-links{ align-items: center; display: flex; gap: 14px; }
.class_style_public_pages .contest-feedback-header-links a{ color: #3247a7; font-size: 10px; font-weight: 800; text-decoration: none; }
.class_style_public_pages .contest-feedback-login-shell{ display: grid; gap: clamp(34px, 7vw, 90px); grid-template-columns: 1fr minmax(340px, .72fr); margin: 0 auto; max-width: 980px; padding-top: clamp(48px, 8vw, 92px); }
.class_style_public_pages .contest-feedback-login-copy{ align-self: center; }
.class_style_public_pages .contest-feedback-login-copy > span{ color: #3247a7; font-size: 9px; font-weight: 800; letter-spacing: .17em; }
.class_style_public_pages .contest-feedback-login-copy h2{ font-family: "Yu Mincho", "Hiragino Mincho ProN", serif; font-size: clamp(30px, 4vw, 48px); font-weight: 500; line-height: 1.5; margin: 14px 0 20px; }
.class_style_public_pages .contest-feedback-login-copy p{ color: #637087; font-size: 12px; line-height: 1.9; margin: 0; max-width: 540px; }
.class_style_public_pages .contest-feedback-login-form{ align-self: center; background: #fff; border: 1px solid #dfe3ea; border-radius: 18px; box-shadow: 0 22px 65px rgba(32, 49, 102, .1); display: grid; gap: 15px; padding: clamp(25px, 4vw, 40px); }
.class_style_public_pages .contest-feedback-login-form label{ color: #4e5a71; font-size: 11px; font-weight: 800; }
.class_style_public_pages .contest-feedback-login-form input{ border: 2px solid #cbd3e0 !important; border-radius: 10px !important; font-size: 17px !important; font-weight: 800; height: 54px !important; letter-spacing: .05em; margin-top: 7px; text-align: center; }
.class_style_public_pages .contest-feedback-login-form .public-actions-main, .class_style_public_pages .contest-feedback-login-form button{ width: 100%; }
.class_style_public_pages .contest-feedback-login-form > small{ color: #8992a3; font-size: 9px; line-height: 1.7; }
.class_style_public_pages .contest-feedback-empty{ margin: 0 auto; max-width: 980px; padding-top: 18vh; text-align: center; }
.class_style_public_pages .contest-feedback-empty h2{ font-family: "Yu Mincho", serif; font-size: 36px; font-weight: 500; margin: 0 0 12px; }
.class_style_public_pages .contest-feedback-empty p{ color: #7b8597; font-size: 12px; }
.class_style_public_pages .contest-feedback-result{ margin: 0 auto; max-width: 980px; padding-top: 32px; }
.class_style_public_pages .contest-feedback-summary{ display: grid; gap: 12px; grid-template-columns: 1fr 1fr; }
.class_style_public_pages .contest-feedback-summary > div, .class_style_public_pages .contest-feedback-piece{ background: #fff; border: 1px solid #dfe3ea; border-radius: 14px; padding: 20px 22px; }
.class_style_public_pages .contest-feedback-summary span, .class_style_public_pages .contest-feedback-piece > span{ color: #778196; display: block; font-size: 9px; font-weight: 800; letter-spacing: .08em; }
.class_style_public_pages .contest-feedback-summary strong{ color: #263a91; display: block; font-size: 28px; margin-top: 7px; }
.class_style_public_pages .contest-feedback-summary small, .class_style_public_pages .contest-feedback-piece small{ color: #747f92; display: block; font-size: 10px; margin-top: 6px; }
.class_style_public_pages .contest-feedback-piece{ margin-top: 12px; }
.class_style_public_pages .contest-feedback-piece strong{ display: block; font-family: "Yu Mincho", "Hiragino Mincho ProN", serif; font-size: 21px; font-weight: 500; line-height: 1.6; margin-top: 7px; }
.class_style_public_pages .contest-feedback-actions{ display: flex; gap: 9px; justify-content: flex-end; margin-top: 16px; }
.class_style_public_pages .contest-feedback-actions button{ min-height: 44px; }
.class_style_public_pages .contest-feedback-actions .contest-primary-button{ background: var(--contest-brand); color: #fff; }
.class_style_public_pages .contest-feedback-actions .contest-secondary-button{ background: #edf0f5; color: #3b4862; }
.class_style_public_pages .contest-feedback-comments{ margin-top: 38px; }
.class_style_public_pages .contest-feedback-comments > h2{ font-size: 19px; margin: 0 0 13px; }
.class_style_public_pages .contest-feedback-comments article{ background: #fff; border: 1px solid #dfe3ea; border-radius: 14px; margin-top: 10px; overflow: hidden; }
.class_style_public_pages .contest-feedback-comments article header{ align-items: center; background: #eceff6; display: flex; justify-content: space-between; padding: 11px 16px; }
.class_style_public_pages .contest-feedback-comments article header strong{ font-size: 12px; }
.class_style_public_pages .contest-feedback-comments article header span{ color: #3247a7; font-size: 15px; font-weight: 800; }
.class_style_public_pages .contest-feedback-comments article p{ font-size: 13px; line-height: 1.9; margin: 0; padding: 18px; }
.class_style_public_pages .contest-feedback-no-comments{ background: #fff; border-radius: 12px; color: #778196; font-size: 12px; padding: 22px; }


@media (max-width: 820px) {.class_style_public_pages .contest-login-shell{ grid-template-columns: 1fr; min-height: auto; }
.class_style_public_pages .contest-login-copy{ text-align: center; }
.class_style_public_pages .contest-login-copy > p:not(.contest-eyebrow){ margin-left: auto; margin-right: auto; }
.class_style_public_pages .contest-login-copy ul{ display: inline-grid; text-align: left; }
.class_style_public_pages .contest-login-card{ justify-self: center; max-width: 520px; width: 100%; }
.class_style_public_pages .contest-score-layout{ grid-template-columns: 1fr; }
.class_style_public_pages .contest-feedback-login-shell{ grid-template-columns: 1fr; }
.class_style_public_pages .contest-feedback-login-copy{ text-align: center; }
.class_style_public_pages .contest-feedback-login-copy p{ margin-left: auto; margin-right: auto; }
.class_style_public_pages .contest-feedback-login-form{ justify-self: center; max-width: 520px; width: 100%; }

}


@media (max-width: 620px) {.class_style_public_pages .contest-app-header{ min-height: 66px; }
.class_style_public_pages .contest-brand small{ display: none; }
.class_style_public_pages .contest-brand-mark{ border-radius: 10px; height: 38px; width: 38px; }
.class_style_public_pages .contest-app-header-actions{ gap: 4px; }
.class_style_public_pages .contest-network-badge, .class_style_public_pages .contest-pending-badge{ font-size: 9px; padding: 6px 7px; }
.class_style_public_pages .contest-logout-button{ padding: 0 8px; }
.class_style_public_pages .contest-login-shell{ padding-top: 44px; }
.class_style_public_pages .contest-login-copy h1{ font-size: 32px; }
.class_style_public_pages .contest-welcome{ align-items: flex-start; gap: 13px; }
.class_style_public_pages .contest-welcome h1{ font-size: 21px; }
.class_style_public_pages .contest-sync-button{ min-height: 44px; min-width: 105px; padding: 0 12px; }
.class_style_public_pages .contest-filter-bar{ grid-template-columns: 1fr 1fr; }
.class_style_public_pages .contest-filter-summary{ display: none; }
.class_style_public_pages .contest-entry-card{ gap: 10px; grid-template-columns: 42px minmax(0, 1fr); min-height: 112px; padding: 12px; }
.class_style_public_pages .contest-order{ border-radius: 10px; height: 40px; width: 40px; }
.class_style_public_pages .contest-entry-state{ grid-column: 2; justify-self: start; }
.class_style_public_pages .contest-scorecard-head{ display: block; }
.class_style_public_pages .contest-save-state{ display: inline-flex; margin-top: 12px; }
.class_style_public_pages .contest-stepper{ grid-template-columns: 62px 1fr 62px; }
.class_style_public_pages .contest-stepper button{ height: 62px; }
.class_style_public_pages .contest-score-actions{ display: grid; grid-template-columns: 1fr 1fr; }
.class_style_public_pages .contest-score-actions button{ min-width: 0; }
.class_style_public_pages .contest-public-results{ padding-left: 12px; padding-right: 12px; }
.class_style_public_pages .contest-public-result-table{ min-width: 900px; }
.class_style_public_pages .contest-public-results > footer, .class_style_public_pages .contest-feedback-header{ align-items: flex-start; display: grid; gap: 14px; }
.class_style_public_pages .contest-public-downloads, .class_style_public_pages .contest-feedback-header-links{ flex-wrap: wrap; }
.class_style_public_pages .contest-feedback-page{ padding-left: 12px; padding-right: 12px; }
.class_style_public_pages .contest-feedback-summary{ grid-template-columns: 1fr; }
.class_style_public_pages .contest-feedback-actions{ display: grid; grid-template-columns: 1fr; }
.class_style_public_pages .contest-feedback-actions button{ width: 100%; }

}

