@charset "UTF-8";
/*! destyle.css v2.0.2 | MIT License | https://github.com/nicolas-cusan/destyle.css */
/* Reset box-model and set borders */
/* ============================================ */
*, ::before, ::after {
  box-sizing: border-box;
  border-width: 0;
  border-style: solid;
}

/* Document */
/* ============================================ */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 * 3. Remove gray overlay on links for iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
  -webkit-tap-highlight-color: transparent;
  /* 3*/
}

/* Sections */
/* ============================================ */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/* Vertical rhythm */
/* ============================================ */
p, table, blockquote, address, pre, iframe, form, figure, dl {
  margin: 0;
}

/* Headings */
/* ============================================ */
h1, h2, h3, h4, h5, h6 {
  margin: 0;
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

/* Lists (enumeration) */
/* ============================================ */
ul, ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

/* Lists (definition) */
/* ============================================ */
dt {
  font-weight: bold;
}

dd {
  margin-left: 0;
}

/* Grouping content */
/* ============================================ */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  clear: both;
  /* 1 */
  overflow: visible;
  box-sizing: content-box;
  /* 1 */
  height: 0;
  margin: 0;
  color: inherit;
  /* 2 */
  border-top-width: 1px;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
  font-family: monospace, monospace;
  /* 1 */
  font-size: inherit;
  /* 2 */
}

address {
  font-style: inherit;
}

/* Text-level semantics */
/* ============================================ */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  text-decoration: none;
  color: inherit;
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  text-decoration: underline;
  /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b, strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code, kbd, samp {
  font-family: monospace, monospace;
  /* 1 */
  font-size: inherit;
  /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub, sup {
  position: relative;
  font-size: 75%;
  line-height: 0;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content */
/* ============================================ */
/**
 * Prevent vertical alignment issues.
 */
img, embed, object, iframe {
  vertical-align: bottom;
}

/* Forms */
/* ============================================ */
/**
 * Reset form fields to make them styleable
 */
button, input, optgroup, select, textarea {
  margin: 0;
  padding: 0;
  font: inherit;
  text-align: inherit;
  vertical-align: middle;
  color: inherit;
  border-radius: 0;
  outline: 0;
  background: transparent;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

/**
 * Reset radio and checkbox appearance to preserve their look in iOS.
 */
[type=checkbox] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
       appearance: checkbox;
}

[type=radio] {
  -webkit-appearance: radio;
  -moz-appearance: radio;
       appearance: radio;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button, input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button, select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button, [type=button], [type=reset], [type=submit] {
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

button[disabled], [type=button][disabled], [type=reset][disabled], [type=submit][disabled] {
  cursor: default;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner, [type=button]::-moz-focus-inner, [type=reset]::-moz-focus-inner, [type=submit]::-moz-focus-inner {
  padding: 0;
  border-style: none;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring, [type=button]:-moz-focusring, [type=reset]:-moz-focusring, [type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Remove arrow in IE10 & IE11
 */
select::-ms-expand {
  display: none;
}

/**
 * Remove padding
 */
option {
  padding: 0;
}

/**
 * Reset to invisible
 */
fieldset {
  min-width: 0;
  margin: 0;
  padding: 0;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  color: inherit;
  /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button, [type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the outline style in Safari.
 */
[type=search] {
  outline-offset: -2px;
  /* 1 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  /* 1 */
  font: inherit;
  -webkit-appearance: button;
  /* 2 */
}

/**
 * Clickable labels
 */
label[for] {
  cursor: pointer;
}

/* Interactive */
/* ============================================ */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/*
 * Remove outline for editable content.
 */
[contenteditable] {
  outline: none;
}

/* Table */
/* ============================================ */
table {
  border-spacing: 0;
  border-collapse: collapse;
}

caption {
  text-align: left;
}

td, th {
  padding: 0;
  vertical-align: top;
}

th {
  font-weight: bold;
  text-align: left;
}

/* Misc */
/* ============================================ */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
  display: none;
}

:root {
  --board: 1780;
  --max: 1px;
}

@font-face {
  font-weight: 400;
  font-style: normal;
  font-family: "NewYork";
  src: url("../font/NewYork.otf") format("opentype");
  font-display: swap;
}
:root {
  --colorBlack: #1a1a1a;
  --colorWhite: #fff;
  --colorBg: #f1f0ee;
  --colorBgGray: #e8e7e5;
  --colorBgDark: #1a1a1a;
  --colorBgFooter: #000;
  --colorText: #1a1a1a;
  --colorTextLight: #666;
  --colorBorder: #d8d6d2;
}

:root {
  --fontGothic: 'Noto Sans JP', 'Yu Gothic', YuGothic, 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, 'MS Pゴシック', 'MS PGothic', sans-serif;
  --fontMincho: 'Noto Serif JP', '游明朝体', 'Yu Mincho', YuMincho, 'ヒラギノ明朝 Pro', 'Hiragino Mincho Pro', 'MS P明朝', 'MS PMincho', serif;
  --fontEn: 'Jost', 'Noto Sans JP', sans-serif;
  --fontEnSerif: 'Cormorant Garamond', 'Noto Serif JP', serif;
  --fontDisplay: 'NewYork', 'Noto Serif JP', serif;
}

:root {
  --weightLight: 300;
  --weightRegular: 400;
  --weightMedium: 500;
  --weightBold: 700;
}

:root {
  --fontSize: 16rem;
  --letterSpacing: .04em;
  --lineHeight: 1.9;
  --kerning: unset;
}

:root {
  --bodyBg: var(--colorBg);
  --speed: .4s;
  --zHeader: 50;
  --zNavBtn: 60;
  --zNav: 55;
}

html {
  font-size: clamp(1.5625%, 0.0561797753vw, 6.25%);
}

body {
  background-color: var(--bodyBg);
  color: var(--colorText);
  letter-spacing: var(--letterSpacing);
  font-weight: var(--weightRegular);
  font-size: var(--fontSize);
  font-family: var(--fontGothic);
  line-height: var(--lineHeight);
  font-optical-sizing: auto;
  font-feature-settings: var(--kerning);
  -webkit-font-smoothing: antialiased;
}

@keyframes name {}
html {
  scroll-behavior: smooth;
}

body {
  overflow-x: hidden;
}

a {
  color: inherit;
  text-decoration: none;
  transition: opacity var(--speed), color var(--speed);
}
a img {
  transition: opacity var(--speed);
}
a[href^="tel:"] {
  color: inherit;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

img:not([src])[alt]::before,
img[src=""][alt]::before,
img[src*="./assets/image/"][alt]::before {
  content: "";
}

button {
  padding: 0;
  border: none;
  background: transparent;
  font: inherit;
  color: inherit;
  cursor: pointer;
}

ul, ol {
  list-style: none;
  padding: 0;
  margin: 0;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

/* ===== m-inner ===== */
.m-inner {
  width: 100%;
  max-width: clamp(320px, 10vw / var(--board) * 10 * 1400, var(--max) * 1400);
  padding: 0 clamp(16px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  margin: 0 auto;
}

/* ===== m-fadeIn ===== */
.m-fadeIn {
  opacity: 0;
  transform: translateY(clamp(0px, 10vw / var(--board) * 10 * 10, var(--max) * 10));
  transition: opacity 1s ease, transform 1s ease;
  transition-delay: 0.3s;
}
.m-fadeIn.is-on {
  opacity: 1;
  transform: translateY(0);
}

.m-transition-delay01 {
  transition-delay: 0.1s;
}

.m-transition-delay02 {
  transition-delay: 0.25s;
}

.m-transition-delay03 {
  transition-delay: 0.4s;
}

.m-transition-delay04 {
  transition-delay: 0.55s;
}

/* ===== m-linkBtn =====
   Figma 「ボタン白」(node 1:883) 準拠：200×63 ピル型 / 白枠 / 半透明白背景 / 矢印は画像
   - base = 白バージョン（暗背景セクション用）
   - .--dark = 黒バージョン（明背景セクション用）
*/
.m-linkBtn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  width: clamp(180px, 10vw / var(--board) * 10 * 252, var(--max) * 252);
  height: clamp(52px, 10vw / var(--board) * 10 * 63, var(--max) * 63);
  padding: 0 clamp(12px, 10vw / var(--board) * 10 * 16, var(--max) * 16) 0 clamp(28px, 10vw / var(--board) * 10 * 42, var(--max) * 42);
  border: 1px solid var(--colorWhite);
  border-radius: 999px;
  background-color: rgba(255, 255, 255, 0.2);
  color: var(--colorWhite);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 15, var(--max) * 15);
  font-weight: var(--weightRegular);
  letter-spacing: 0.08em;
  line-height: 1.2;
  transition: background-color var(--speed), color var(--speed);
  mix-blend-mode: multiply;
}
.m-linkBtn .m-linkBtn__arrow {
  display: block;
  width: clamp(26px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  height: clamp(26px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  background-image: url("../image/common/btn_arrow.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  transition: filter var(--speed);
}
.m-linkBtn.--dark {
  padding: 0 clamp(14px, 10vw / var(--board) * 10 * 22, var(--max) * 22) 0 clamp(28px, 10vw / var(--board) * 10 * 42, var(--max) * 42);
  border-color: var(--colorBlack);
  background-color: var(--colorWhite);
  color: var(--colorBlack);
  font-family: var(--fontGothic);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 18, var(--max) * 18);
}
.m-linkBtn.--dark .m-linkBtn__arrow {
  filter: invert(1);
}

/* ===== m-bigEnTtl  英語の大きな見出し ===== */
.m-bigEnTtl {
  font-family: var(--fontEnSerif);
  font-style: italic;
  font-weight: var(--weightLight);
  font-size: clamp(64px, 10vw / var(--board) * 10 * 160, var(--max) * 160);
  line-height: 1;
  letter-spacing: -0.01em;
}

/* ===== m-aboutWhatHead（リード + 欧文大見出しの積み。about What 準拠）===== */
.m-aboutWhatHead {
  position: relative;
  width: clamp(320px, 10vw / var(--board) * 10 * 880, var(--max) * 880);
  top: clamp(var(--max) * -20, 10vw / var(--board) * 10 * -20, 0px);
}
.m-aboutWhatHead__lead {
  position: relative;
  z-index: 2;
  margin-left: clamp(24px, 10vw / var(--board) * 10 * 225, var(--max) * 225);
  padding-top: 0;
  font-family: var(--fontGothic);
  font-size: clamp(16px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  font-weight: var(--weightRegular);
  line-height: 1.4666666667;
  letter-spacing: 0.07em;
  color: var(--colorBlack);
}
.m-aboutWhatHead__ttl {
  position: relative;
  z-index: 2;
  margin: clamp(12px, 10vw / var(--board) * 10 * 18, var(--max) * 18) 0 0 clamp(24px, 10vw / var(--board) * 10 * 223, var(--max) * 223);
  font-family: var(--fontDisplay);
  font-weight: var(--weightRegular);
  font-size: clamp(64px, 10vw / var(--board) * 10 * 160, var(--max) * 160);
  line-height: 0.9375;
  letter-spacing: -0.01em;
  color: var(--colorBlack);
  white-space: nowrap;
}

/* ===== m-mvScroll（MV直下のスクロール案内・縦ライン） ===== */
.m-mvScroll {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(10px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  color: var(--colorWhite);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 25, var(--max) * 25);
  font-weight: var(--weightRegular);
  letter-spacing: 0.06em;
  line-height: 1;
}
.m-mvScroll span {
  writing-mode: vertical-rl;
  text-orientation: mixed;
  font-family: var(--fontDisplay);
}
.m-mvScroll::after {
  content: "";
  position: absolute;
  left: clamp(var(--max) * -10, 10vw / var(--board) * 10 * -10, 0px);
  top: 0;
  z-index: 2;
  width: 1px;
  height: 100%;
  background-color: var(--colorWhite);
  animation: m-mvScroll-line 2s infinite;
  transform-origin: center top;
}

@keyframes m-mvScroll-line {
  0% {
    transform: scaleY(0);
    transform-origin: center top;
  }
  50% {
    transform: scaleY(1);
    transform-origin: center top;
  }
  51% {
    transform: scaleY(1);
    transform-origin: center bottom;
  }
  100% {
    transform: scaleY(0);
    transform-origin: center bottom;
  }
}
/* ===== m-mvBase / m-mvPhoto / MV 直下配置（about の MV 構造・数値が唯一の参照）===== */
.m-mvBase {
  position: relative;
  z-index: 2;
  padding: var(--headerH, 0px) 0 0 clamp(16px, 10vw / var(--board) * 10 * 75, var(--max) * 75);
}
.m-mvBase .m-mvScroll {
  position: absolute;
  bottom: clamp(0px, 10vw / var(--board) * 10 * 0, var(--max) * 0);
  right: clamp(14px, 10vw / var(--board) * 10 * 34, var(--max) * 34);
  z-index: 3;
  height: clamp(0px, 10vw / var(--board) * 10 * 287, var(--max) * 287);
}
.m-mvBase .m-mvBreadcrumb {
  position: absolute;
  top: 100%;
  right: clamp(16px, 10vw / var(--board) * 10 * 39, var(--max) * 39);
  z-index: 3;
  margin-top: clamp(12px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
}

.m-mvPhoto {
  position: relative;
  width: 100%;
  aspect-ratio: 1845/700;
  overflow: hidden;
  background-color: rgba(0, 0, 0, 0.06);
}
.m-mvPhoto img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transform: scale(1.05);
  -o-object-position: 40% 25%;
     object-position: 40% 25%;
}
.p-awardMv .m-mvPhoto img {
  transform: scale(1);
  -o-object-position: center;
     object-position: center;
}
.m-mvPhoto picture {
  display: block;
  width: 100%;
  height: 100%;
}

/* ===== m-mvPlate（MV 下層の白いステップ状プレート装飾・about と同一トークン）===== */
.m-mvPlate {
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 2;
  width: clamp(0px, 10vw / var(--board) * 10 * 882, var(--max) * 882);
  height: clamp(0px, 10vw / var(--board) * 10 * 92, var(--max) * 92);
  background-color: var(--colorWhite);
  pointer-events: none;
  /* ----- data-width-pc / data-width-sp による width override -----
   * - 数値が入っている場合のみ各 view で適用 ("false" or 未設定 → デフォルト)
   * - 数値は r() 関数と同じ clamp ロジック (PC) / calc(N/750*100vw) (SP) で反映
   * - attr() with type は CSS Values Level 5 (modern browser 対応、未対応では自動でデフォルトに fallback)
   */
}

/* ===== m-mvBreadcrumb（MV直下のパンくず） ===== */
.m-mvBreadcrumb {
  display: flex;
  align-items: center;
  gap: clamp(6px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  font-family: var(--fontGothic);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 15, var(--max) * 15);
  line-height: 1;
  letter-spacing: 0.07em;
  color: var(--colorBlack);
}
.m-mvBreadcrumb a {
  color: inherit;
}
.m-mvBreadcrumb > span {
  opacity: 0.5;
}

/* ===== Header (PC) ===== */
.header {
  position: fixed;
  top: 0;
  left: 0;
  z-index: var(--zHeader);
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding: clamp(14px, 10vw / var(--board) * 10 * 15, var(--max) * 15) clamp(16px, 10vw / var(--board) * 10 * 33, var(--max) * 33);
  transition: background-color var(--speed), transform var(--speed), opacity var(--speed);
  pointer-events: none;
}
.header.--light {
  background-color: #fff;
}
.header.--top:not(.is-fixed) {
  padding: clamp(0px, 10vw / var(--board) * 10 * 44, var(--max) * 44) clamp(0px, 10vw / var(--board) * 10 * 33, var(--max) * 33);
}
.header.--top {
  position: absolute;
  background-color: transparent;
  color: var(--colorWhite);
}
.header.--top .header__logo {
  visibility: hidden;
}
.header.--top .header__logo img {
  filter: brightness(0) invert(1);
}
.header.--top .header__navList > li > a {
  color: var(--colorWhite);
}
.header.--top .header__navList > li:not(:first-child):not(.--btn)::before {
  background-color: var(--colorWhite);
}
.header.--top .header__navList > li.--btn > a {
  background-color: transparent;
  border: 0;
  color: var(--colorWhite);
}
.header.--top.is-fixed {
  position: fixed;
  background-color: #fff;
  color: var(--colorBlack);
  animation: headerFadeIn 0.5s ease-out;
}
.header.--top.is-fixed .header__logo {
  visibility: visible;
}
.header.--top.is-fixed .header__logo img {
  filter: none;
}
.header.--top.is-fixed .header__navList > li > a {
  color: var(--colorBlack);
}
.header.--top.is-fixed .header__navList > li:not(:first-child):not(.--btn)::before {
  background-color: var(--colorBlack);
}
.header.--top.is-fixed .header__navList > li.--btn > a {
  background-color: var(--colorBlack);
  border: none;
  color: var(--colorWhite);
}
.header > * {
  pointer-events: auto;
}
.header__logo a {
  display: block;
}
.header__logo img {
  width: clamp(36px, 10vw / var(--board) * 10 * 58, var(--max) * 58);
  height: auto;
}
.header__navList {
  display: flex;
  align-items: center;
  gap: clamp(0px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
}
.header__navList > li {
  position: relative;
}
.header__navList > li > a {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: clamp(4px, 10vw / var(--board) * 10 * 6, var(--max) * 6);
  padding: clamp(6px, 10vw / var(--board) * 10 * 8, var(--max) * 8) clamp(4px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  color: var(--colorBlack);
}
.header__navList > li > a .__en {
  font-size: clamp(13px, 10vw / var(--board) * 10 * 21, var(--max) * 21);
  font-weight: var(--weightRegular);
  letter-spacing: 0.07em;
  line-height: 1.3;
}
.header__navList > li > a .__ja {
  font-family: var(--fontGothic);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 15, var(--max) * 15);
  letter-spacing: 0.07em;
  line-height: 1.3;
}
.header__navList > li:not(:first-child):not(.--btn)::before {
  content: "";
  position: absolute;
  top: 50%;
  left: clamp(var(--max) * -30, 10vw / var(--board) * 10 * -30, 0px);
  width: 1px;
  height: clamp(28px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
  background-color: var(--colorBlack);
  transform: translateY(-50%) rotate(25deg);
}
.--top .header__navList > li.--btn::before {
  content: "";
  position: absolute;
  top: 50%;
  left: clamp(0px, 10vw / var(--board) * 10 * 10, var(--max) * 10);
  width: 1px;
  height: clamp(28px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
  background-color: #fff;
  transform: translateY(-50%) rotate(25deg);
}
.--top.is-fixed .header__navList > li.--btn::before {
  display: none;
}
.header__navList > li.--btn {
  margin-left: clamp(var(--max) * -47, 10vw / var(--board) * 10 * -47, 0px);
  padding-left: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
}
.--top .header__navList > li.--btn {
  padding-left: 0;
}
.--top.is-fixed .header__navList > li.--btn {
  padding-left: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
}
.header__navList > li.--btn > a {
  padding: clamp(4px, 10vw / var(--board) * 10 * 5, var(--max) * 5) clamp(16px, 10vw / var(--board) * 10 * 43.5, var(--max) * 43.5);
  gap: 0;
  background-color: var(--colorBlack);
  color: var(--colorWhite);
  border-radius: clamp(24px, 10vw / var(--board) * 10 * 33, var(--max) * 33);
  transition: opacity var(--speed);
}
.header__navList > li.--btn > a .__en {
  font-size: clamp(12px, 10vw / var(--board) * 10 * 18, var(--max) * 18);
  letter-spacing: 0.07em;
  line-height: 1.7222222222;
}
.header__navList > li.--btn > a .__ja {
  font-size: clamp(12px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  letter-spacing: 0.07em;
  line-height: 1.3571428571;
}
.header__navList > li.is-hover > .header__subMenu {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.header {
  /* ===== Sub Menu (Awards / Regulation hover) ===== */
}
.header__subMenu {
  position: fixed;
  top: clamp(0px, 10vw / var(--board) * 10 * 100, var(--max) * 100);
  right: 0;
  width: clamp(320px, 10vw / var(--board) * 10 * 960, var(--max) * 960);
  padding-top: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.4s, visibility 0.4s;
}
.--top:not(.is-fixed) .header__subMenu {
  padding-top: clamp(0px, 10vw / var(--board) * 10 * 55, var(--max) * 55);
  top: clamp(0px, 10vw / var(--board) * 10 * 100, var(--max) * 100);
}
.header__subMenu.--regulation {
  width: clamp(320px, 10vw / var(--board) * 10 * 1086, var(--max) * 1086);
}
.header__subMenu.--regulation .header__subMenu__ttl {
  flex: 0 0 clamp(120px, 10vw / var(--board) * 10 * 297, var(--max) * 297);
}
.header__subMenu__container {
  display: flex;
  align-items: center;
  padding: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20) 0;
  background-color: rgba(0, 0, 0, 0.75);
  color: var(--colorWhite);
}
.header__subMenu__ttl {
  flex: 0 0 clamp(100px, 10vw / var(--board) * 10 * 170, var(--max) * 170);
  position: relative;
  text-align: center;
}
.header__subMenu__ttl .__en {
  display: block;
  font-size: clamp(16px, 10vw / var(--board) * 10 * 22, var(--max) * 22);
  letter-spacing: 0.07em;
  line-height: 1.3;
}
.header__subMenu__ttl .__ja {
  display: block;
  margin-top: clamp(2px, 10vw / var(--board) * 10 * 2, var(--max) * 2);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  letter-spacing: 0.07em;
  line-height: 1.3;
}
.header__subMenu__ttl::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 1px;
  height: clamp(100px, 10vw / var(--board) * 10 * 190, var(--max) * 190);
  background-color: var(--colorWhite);
  transform: translateY(-50%);
}
.header__subMenu__cont {
  flex: 1;
  display: flex;
  gap: 0 clamp(12px, 10vw / var(--board) * 10 * 28, var(--max) * 28);
  padding: 0 clamp(12px, 10vw / var(--board) * 10 * 28, var(--max) * 28);
}
.header__subMenu__cont > li {
  flex: 1;
}
.header__subMenu__cont a {
  display: block;
  transition: opacity var(--speed);
}
.header__subMenu__contTtl {
  margin-bottom: clamp(4px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  color: var(--colorWhite);
}
.header__subMenu__contTtl .__en {
  display: block;
  font-size: clamp(13px, 10vw / var(--board) * 10 * 18, var(--max) * 18);
  font-weight: var(--weightMedium);
  letter-spacing: 0.07em;
  line-height: 1.9444444444;
  white-space: nowrap;
}
.header__subMenu__contTtl .__ja {
  display: block;
  font-size: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  letter-spacing: 0.07em;
  line-height: 1.5;
  white-space: nowrap;
}
.header__subMenu__img {
  overflow: hidden;
  width: clamp(0px, 10vw / var(--board) * 10 * 227, var(--max) * 227);
  aspect-ratio: 227/139;
  margin-left: auto;
}
.header__subMenu__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.3s;
}

@keyframes headerFadeIn {
  from {
    opacity: 0;
    transform: translateY(-100%);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* ===== gNav (SP用ハンバーガー) ===== */
.gNavBtn {
  position: fixed;
  top: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  right: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  z-index: var(--zNavBtn);
}
.gNavBtn__btn {
  position: relative;
  width: clamp(44px, 10vw / var(--board) * 10 * 50, var(--max) * 50);
  height: clamp(44px, 10vw / var(--board) * 10 * 50, var(--max) * 50);
  border-radius: 50%;
  background-color: var(--colorBlack);
}
.gNavBtn__btn span {
  position: absolute;
  left: 22%;
  width: 56%;
  height: 1.5px;
  background-color: var(--colorWhite);
  transition: transform var(--speed), opacity var(--speed);
}
.gNavBtn__btn span:nth-child(1) {
  top: 36%;
}
.gNavBtn__btn span:nth-child(2) {
  top: 50%;
  transform: translateY(-50%);
}
.gNavBtn__btn span:nth-child(3) {
  top: 64%;
}

.is-menuActive .gNavBtn__btn span:nth-child(1) {
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
}
.is-menuActive .gNavBtn__btn span:nth-child(2) {
  opacity: 0;
}
.is-menuActive .gNavBtn__btn span:nth-child(3) {
  top: 50%;
  transform: translateY(-50%) rotate(-45deg);
}
.gNav {
  position: fixed;
  top: 0;
  right: 0;
  z-index: var(--zNav);
  overflow-y: auto;
  padding: clamp(60px, 10vw / var(--board) * 10 * 80, var(--max) * 80) clamp(20px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  width: 100%;
  height: 100vh;
  background-color: var(--colorBlack);
  color: var(--colorWhite);
  opacity: 0;
  transition: opacity var(--speed);
  pointer-events: none;
}

.is-menuActive .gNav {
  opacity: 1;
  pointer-events: auto;
}

/* ===== Footer ===== */
.footer {
  position: relative;
  z-index: 4;
  background-color: var(--colorBgFooter);
  color: var(--colorWhite);
  padding: clamp(80px, 10vw / var(--board) * 10 * 213, var(--max) * 213) 0;
}
.footer__inner {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  gap: clamp(24px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
  width: 100%;
  max-width: clamp(0px, 10vw / var(--board) * 10 * 1148, var(--max) * 1148);
  padding: 0 clamp(24px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  margin: 0 auto;
}
.footer__logo {
  flex-shrink: 0;
  padding: clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30) clamp(0px, 10vw / var(--board) * 10 * 60, var(--max) * 60) clamp(0px, 10vw / var(--board) * 10 * 10, var(--max) * 10);
  padding-left: 0;
  border-right: 1px solid rgba(255, 255, 255, 0.3);
}
.footer__logo a {
  display: block;
}
.footer__logo img {
  width: clamp(80px, 10vw / var(--board) * 10 * 138, var(--max) * 138);
  height: auto;
  filter: brightness(0) invert(1);
}
.footer__main {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding-top: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
}
.footer__related {
  display: flex;
  align-items: center;
  gap: clamp(30px, 10vw / var(--board) * 10 * 70, var(--max) * 70);
  padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
}
.footer__related a {
  display: block;
}
.footer__related a img {
  height: clamp(24px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  width: auto;
  filter: brightness(0) invert(1);
}
.footer__related .--takara img {
  height: clamp(32px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
}
.footer__related .--lebel img {
  height: clamp(22px, 10vw / var(--board) * 10 * 38, var(--max) * 38);
}
.footer__related .--tbplus img {
  height: clamp(36px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
  filter: none;
}
.footer__bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(20px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  padding-top: clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  border-top: 1px solid rgba(255, 255, 255, 0.25);
}
.footer__links {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: clamp(16px, 10vw / var(--board) * 10 * 50, var(--max) * 50);
  white-space: nowrap;
}
.footer__links a {
  color: var(--colorWhite);
  font-family: var(--fontGothic);
  font-size: clamp(13px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  letter-spacing: 0.07em;
}
.footer__instagram {
  display: inline-flex;
  align-items: center;
  gap: clamp(8px, 10vw / var(--board) * 10 * 10, var(--max) * 10);
  height: clamp(40px, 10vw / var(--board) * 10 * 52, var(--max) * 52);
  padding: 0 clamp(16px, 10vw / var(--board) * 10 * 28, var(--max) * 28);
  border: 1px solid #747474;
  border-radius: clamp(20px, 10vw / var(--board) * 10 * 26, var(--max) * 26);
  color: var(--colorWhite);
  font-family: var(--fontGothic);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 22, var(--max) * 22);
  letter-spacing: 0.07em;
}
.footer__instagramIcon {
  display: inline-block;
  position: relative;
  width: clamp(20px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  height: clamp(20px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  border: 1.5px solid currentColor;
  border-radius: 6px;
}
.footer__instagramIcon::before {
  content: "";
  position: absolute;
  inset: 25%;
  border: 1.5px solid currentColor;
  border-radius: 50%;
}
.footer__instagramIcon::after {
  content: "";
  position: absolute;
  top: 12%;
  right: 12%;
  width: 3px;
  height: 3px;
  border-radius: 50%;
  background-color: currentColor;
}
.footer__copyright {
  display: block;
  margin-top: clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  font-family: var(--fontGothic);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 12, var(--max) * 12);
  letter-spacing: 0.07em;
  color: var(--colorWhite);
}

/* =================================================
 * 下層ページ共通カラー（Figma 2026 準拠）
 * ================================================= */
:root {
  --colorAwardCreative: #475b72;
  --colorAwardSalon: #e26c6d;
  --colorAwardSelfie: #77b5a5;
}

/* =================================================
 * about ページ p-about
 * ================================================= */
.p-about {
  position: relative;
  z-index: 2;
  overflow: hidden;
  background-color: var(--colorWhite);
}

/* =====================================
 * MV（about と同一：`p-aboutMv.m-mvBase` + `.m-mv*`。配置は `_component.scss` の `.m-mvBase` 内に集約）
 * ===================================== */
/* =====================================
 * What About id?
 * ===================================== */
.p-aboutWhat {
  position: relative;
  margin-top: clamp(var(--max) * -92, 10vw / var(--board) * 10 * -92, -40px);
  padding-bottom: clamp(80px, 10vw / var(--board) * 10 * 160, var(--max) * 160);
}
.p-aboutWhat__body {
  position: relative;
  z-index: 2;
  margin: 0;
  padding: clamp(0px, 10vw / var(--board) * 10 * 120, var(--max) * 120) 0 0 clamp(24px, 10vw / var(--board) * 10 * 225, var(--max) * 225);
  max-width: clamp(320px, 10vw / var(--board) * 10 * 1080, var(--max) * 1080);
  width: 100%;
}
.p-aboutWhat__desc p {
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-size: clamp(14px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 2.5;
}
.p-aboutWhat__desc p + p {
  margin-top: 0;
}

/* =====================================
 * id 2025 Final Movie
 * ===================================== */
.p-aboutMovie {
  position: relative;
  z-index: 3;
  padding: clamp(0px, 10vw / var(--board) * 10 * 88, var(--max) * 88) 0 0;
}
.p-aboutMovie__inner {
  padding: 0 clamp(24px, 10vw / var(--board) * 10 * 225, var(--max) * 225);
  width: 100%;
}
.p-aboutMovie__ttl {
  margin-bottom: clamp(20px, 10vw / var(--board) * 10 * 31, var(--max) * 31);
  color: var(--colorBlack);
  letter-spacing: -0.01em;
  font-weight: var(--weightRegular);
  font-size: clamp(36px, 10vw / var(--board) * 10 * 100, var(--max) * 100);
  font-family: var(--fontDisplay);
  line-height: 1.41;
}
.p-aboutMovie__player {
  width: 100%;
  aspect-ratio: 1470/826;
  background-color: #000;
}
.p-aboutMovie__player > div {
  width: 100%;
  height: 100%;
}
.p-aboutMovie__player iframe {
  width: 100%;
  height: 100%;
}

/* =====================================
 * Catch (Your Creativity, Their Identity)
 * ===================================== */
.p-aboutCatch {
  position: relative;
  z-index: 2;
  padding: clamp(0px, 10vw / var(--board) * 10 * 173, var(--max) * 173) 0 clamp(80px, 10vw / var(--board) * 10 * 1000, var(--max) * 1000);
  color: var(--colorWhite);
}
.p-aboutCatch__bg {
  position: absolute;
  top: clamp(var(--max) * -1100, 10vw / var(--board) * 10 * -1100, 0px);
  left: 0;
  z-index: 1;
  width: 100%;
  aspect-ratio: 1920/3646;
  pointer-events: none;
}
.p-aboutCatch__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}
.p-aboutCatch__inner {
  position: relative;
  z-index: 2;
  padding: 0 clamp(24px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  width: 100%;
  text-align: center;
}
.p-aboutCatch__ttl {
  margin: 0 auto;
  width: clamp(280px, 10vw / var(--board) * 10 * 772, var(--max) * 772);
}
.p-aboutCatch__ttl img {
  display: block;
  width: 100%;
  height: auto;
}
.p-aboutCatch__ttlEn {
  margin: clamp(32px, 10vw / var(--board) * 10 * 77, var(--max) * 77) auto 0;
  width: clamp(220px, 10vw / var(--board) * 10 * 468, var(--max) * 468);
}
.p-aboutCatch__ttlEn img {
  display: block;
  width: 100%;
  height: auto;
}
.p-aboutCatch__desc {
  margin-top: clamp(24px, 10vw / var(--board) * 10 * 54, var(--max) * 54);
}
.p-aboutCatch__desc p {
  color: var(--colorWhite);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 25, var(--max) * 25);
  font-family: var(--fontGothic);
  line-height: 3.6;
}
.p-aboutCatch__desc p + p {
  margin-top: 0;
}

/* =====================================
 * Three Awards
 * ===================================== */
.p-aboutAwards {
  position: relative;
  z-index: 3;
  overflow: hidden;
  margin-top: clamp(var(--max) * -500, 10vw / var(--board) * 10 * -500, 0px);
  padding: clamp(60px, 10vw / var(--board) * 10 * 122, var(--max) * 122) 0 clamp(80px, 10vw / var(--board) * 10 * 206, var(--max) * 206);
}
.p-aboutAwards__bg3 {
  position: absolute;
  top: 0;
  left: 33.6458333333%;
  z-index: 1;
  width: 66.3541666667%;
  pointer-events: none;
}
.p-aboutAwards__bg3 img {
  display: block;
  width: 100%;
  height: auto;
}
.p-aboutAwards__head {
  position: relative;
  z-index: 1;
  margin-bottom: 0;
  padding: 0 clamp(24px, 10vw / var(--board) * 10 * 168, var(--max) * 168);
  width: 100%;
  text-align: right;
}
.p-aboutAwards__ttl {
  color: var(--colorBlack);
  letter-spacing: -0.01em;
  font-weight: var(--weightRegular);
  font-size: clamp(64px, 10vw / var(--board) * 10 * 180, var(--max) * 180);
  font-family: var(--fontDisplay);
  line-height: 1.0055555556;
}
.p-aboutAwards__navList {
  margin-top: clamp(24px, 10vw / var(--board) * 10 * 46, var(--max) * 46);
  list-style: none;
}
.p-aboutAwards__navList li {
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(13px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 2.2;
}
.p-aboutAwards__cards {
  position: relative;
  z-index: 2;
  margin: 0 auto;
  margin-top: clamp(var(--max) * -400, 10vw / var(--board) * 10 * -400, 0px);
  width: clamp(0px, 10vw / var(--board) * 10 * 1470, var(--max) * 1470);
  height: clamp(0px, 10vw / var(--board) * 10 * 1245, var(--max) * 1245);
}
.p-aboutAwards__card {
  position: absolute;
  z-index: 2;
  width: clamp(0px, 10vw / var(--board) * 10 * 446, var(--max) * 446);
  aspect-ratio: 446/661;
  background-color: rgba(0, 0, 0, 0.06);
}
.p-aboutAwards__card:nth-child(1) {
  top: 0;
  left: 0;
}
.p-aboutAwards__card:nth-child(2) {
  top: 23.2128514056%;
  left: 34.8299319728%;
}
.p-aboutAwards__card:nth-child(3) {
  top: 46.9879518072%;
  left: 69.6598639456%;
}
.p-aboutAwards__card a {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  color: var(--colorWhite);
}
.p-aboutAwards__card[class~="--creative"] .p-aboutAwards__num {
  background-color: #475b72;
}
.p-aboutAwards__card[class~="--salon"] .p-aboutAwards__num {
  background-color: #e26c6d;
}
.p-aboutAwards__card[class~="--selfie"] .p-aboutAwards__num {
  background-color: #77b5a5;
}
.p-aboutAwards__num {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(44px, 3.5416666667vw, 68px);
  height: clamp(44px, 3.5416666667vw, 68px);
  color: var(--colorWhite);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(13px, 0.9375vw, 18px);
  font-family: var(--fontGothic);
  line-height: 1;
}
.p-aboutAwards__cardImg {
  position: absolute;
  z-index: 1;
  overflow: hidden;
  inset: 0;
}
.p-aboutAwards__cardImg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform var(--speed);
}
.p-aboutAwards__cardImg::after {
  content: "";
  position: absolute;
  top: 9.5310136157%;
  right: 0;
  bottom: 0;
  left: 0;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.55) 55%, rgba(0, 0, 0, 0.85) 100%);
}
.p-aboutAwards__cardText {
  position: absolute;
  right: 0;
  bottom: clamp(24px, 2.2395833333vw, 43px);
  left: 0;
  z-index: 2;
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 0;
  padding: 0 clamp(14px, 1.0416666667vw, 20px);
  color: var(--colorWhite);
  text-align: center;
}
.p-aboutAwards__cardLead {
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 0.9375vw, 18px);
  font-family: var(--fontGothic);
  line-height: 2.4444444444;
}
.p-aboutAwards__cardTtl {
  margin-top: clamp(-8px, -0.4166666667vw, 0px);
  text-transform: uppercase;
  letter-spacing: 0;
  font-weight: var(--weightRegular);
  font-size: clamp(24px, 2.3958333333vw, 46px);
  font-family: var(--fontDisplay);
  line-height: 1.1304347826;
}
.p-aboutAwards__cardBtn {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(10px, 0.8333333333vw, 16px);
  margin-top: clamp(12px, 0.9375vw, 18px);
  padding: 0 clamp(12px, 1.0416666667vw, 20px) 0 clamp(22px, 2.0833333333vw, 40px);
  width: clamp(160px, 13.125vw, 252px);
  height: clamp(44px, 3.28125vw, 63px);
  border: 1px solid var(--colorWhite);
  border-radius: 999px;
  background-color: rgba(255, 255, 255, 0.2);
  color: var(--colorWhite);
  letter-spacing: 0.07em;
  font-size: clamp(13px, 0.9375vw, 18px);
  font-family: var(--fontGothic);
  transition: background-color var(--speed), color var(--speed);
}
.p-aboutAwards__cardBtn .m-linkBtn__arrow {
  position: relative;
  display: block;
  width: clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  height: clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  background-image: url("../image/about/arrow_m-linkBtn.webp");
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}

/* =====================================
 * Our Identity (History)
 * ===================================== */
.p-aboutHistory {
  position: relative;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 1920/1299;
  background-color: #1a1730;
  color: var(--colorWhite);
}
.p-aboutHistory__bg {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
  inset: 0;
}
.p-aboutHistory__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-aboutHistory__bg::after {
  content: "";
  position: absolute;
  background-color: rgba(0, 0, 0, 0.7);
  inset: 0;
}
.p-aboutHistory__inner {
  position: absolute;
  z-index: 2;
  inset: 0;
}
.p-aboutHistory__head {
  position: absolute;
  top: 21.7567359507%;
  left: 11.71875%;
  color: var(--colorWhite);
}
.p-aboutHistory__lead {
  color: var(--colorWhite);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(16px, 1.5625vw, 30px);
  font-family: var(--fontGothic);
  line-height: 1.3333333333;
}
.p-aboutHistory__ttl {
  margin-top: 1.4vw;
  color: var(--colorWhite);
  letter-spacing: -0.01em;
  font-weight: var(--weightRegular);
  font-size: clamp(60px, 9.375vw, 180px);
  font-family: var(--fontDisplay);
  line-height: 0.8333333333;
}
.p-aboutHistory__sub {
  margin-top: 3.8963541667vw;
  width: clamp(180px, 13.6947916667vw, 262.94px);
}
.p-aboutHistory__sub img {
  display: block;
  width: 100%;
  height: auto;
}
.p-aboutHistory__list {
  position: absolute;
  top: 23.8645111624%;
  right: 9.3229166667%;
  left: 55.234375%;
  margin: 0;
  padding: 0;
  color: var(--colorWhite);
  list-style: none;
}
.p-aboutHistory__item {
  display: grid;
  align-items: start;
  margin-bottom: clamp(24px, 3.0208333333vw, 58px);
  list-style: none;
  -moz-column-gap: clamp(16px, 1.8229166667vw, 35px);
       column-gap: clamp(16px, 1.8229166667vw, 35px);
  grid-template-columns: clamp(48px, 5vw, 96px) clamp(20px, 2.03125vw, 39px) 1fr;
}
.p-aboutHistory__item:last-child {
  margin-bottom: 0;
}
.p-aboutHistory__year {
  padding-top: 0.2604166667vw;
  color: var(--colorWhite);
  font-weight: var(--weightRegular);
  font-size: clamp(22px, 1.9791666667vw, 38px);
  font-family: var(--fontDisplay);
  line-height: 1;
  grid-column: 1;
}
.p-aboutHistory__bar {
  align-self: start;
  margin-top: 1.0416666667vw;
  width: 100%;
  height: 1px;
  background-color: var(--colorWhite);
  grid-column: 2;
}
.p-aboutHistory__event {
  color: var(--colorWhite);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(13px, 1.1458333333vw, 22px);
  font-family: var(--fontGothic);
  line-height: 2;
  grid-column: 3;
}

/* =====================================
 * Lebel Brand
 * ===================================== */
.p-aboutBrand {
  position: relative;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 1920/714;
  background-color: var(--colorWhite);
}
.p-aboutBrand__bgText {
  position: absolute;
  top: 75.8837535014%;
  left: -0.6510416667vw;
  z-index: 1;
  margin: 0;
  color: #f2f2f2;
  white-space: nowrap;
  letter-spacing: -0.01em;
  font-weight: var(--weightRegular);
  font-size: clamp(120px, 20.8333333333vw, 400px);
  font-family: var(--fontDisplay);
  line-height: 0.375;
  pointer-events: none;
}
.p-aboutBrand__logo {
  position: absolute;
  top: 44.5014005602%;
  left: 18.7953125%;
  z-index: 3;
  width: 16.2057291667%;
}
.p-aboutBrand__logo img {
  display: block;
  width: 100%;
  height: auto;
}
.p-aboutBrand__text {
  position: absolute;
  top: 30.2521008403%;
  left: 49.9546875%;
  z-index: 3;
  color: var(--colorBlack);
}
.p-aboutBrand__ttl {
  margin: 0;
  color: var(--colorBlack);
  white-space: nowrap;
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(16px, 1.3020833333vw, 25px);
  font-family: var(--fontGothic);
  line-height: 1.6;
}
.p-aboutBrand__desc {
  margin-top: 1.1979166667vw;
}
.p-aboutBrand__desc p {
  margin: 0;
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(13px, 1.0416666667vw, 20px);
  font-family: var(--fontGothic);
  line-height: 2.2;
}

/* =================================================
 * judge ページ p-judge
 * ================================================= */
.p-judge {
  position: relative;
  overflow: hidden;
}

/* =====================================
 * MV（about / .m-mvBase と同一。以下はページ専用だった指定の退避）
 * ===================================== */
.p-judgeMv {
  background-color: #fff;
}
.p-judgeMv + .m-aboutWhatHead {
  z-index: 3;
}
.p-judgeMv + .m-aboutWhatHead::before {
  content: "";
  position: absolute;
  top: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  left: 0;
  z-index: 0;
  display: block;
  width: 100vw;
  height: 100%;
  background-color: var(--colorWhite);
}

/* =====================================
 * bg_judge
 * ===================================== */
.bg_judge {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.bg_judge img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* =====================================
 * Introduction
 * ===================================== */
.p-judgeIntro {
  position: relative;
  z-index: 2;
  margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 253, var(--max) * 253);
  padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 93, var(--max) * 93);
  padding-left: clamp(0px, 10vw / var(--board) * 10 * 223, var(--max) * 223);
  width: 100%;
  background-color: #fff;
}
.p-judgeIntro__bgText {
  position: absolute;
  top: clamp(0px, 10vw / var(--board) * 10 * 1, var(--max) * 1);
  left: clamp(0px, 10vw / var(--board) * 10 * 400, var(--max) * 400);
  z-index: 0;
  margin: 0;
  transform: rotate(90deg);
  transform-origin: top left;
  pointer-events: none;
}
.p-judgeIntro__bgText span {
  display: block;
  color: #f2f2f2;
  white-space: nowrap;
  letter-spacing: -0.009em;
  font-weight: var(--weightRegular);
  font-size: clamp(0px, 10vw / var(--board) * 10 * 400, var(--max) * 400);
  font-family: var(--fontDisplay);
  line-height: 1;
}
.p-judgeIntro__ttl {
  margin: 0;
  color: var(--colorBlack);
  letter-spacing: -0.01em;
  font-weight: var(--weightRegular);
  font-size: clamp(36px, 3.59375vw, 69px);
  font-family: var(--fontDisplay);
  line-height: 1.3188405797;
}
.p-judgeIntro__tag {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin: 1.09375vw 0 0;
  width: clamp(240px, 19.1666666667vw, 368px);
  height: clamp(32px, 2.0833333333vw, 40px);
  border: 1px solid #707070;
  background-color: var(--colorWhite);
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(13px, 1.0416666667vw, 20px);
  font-family: var(--fontGothic);
  line-height: 1;
}
.p-judgeIntro__desc {
  margin-top: 2.34375vw;
}
.p-judgeIntro__desc p {
  margin: 0;
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(13px, 1.0416666667vw, 20px);
  font-family: var(--fontGothic);
  line-height: 2.2;
}
.p-judgeIntro__photoMain {
  position: absolute;
  top: 30.7858687815%;
  left: 50%;
  z-index: 3;
  overflow: hidden;
  width: 50%;
  aspect-ratio: 1/1;
  background-color: rgba(0, 0, 0, 0.06);
}
.p-judgeIntro__photoMain img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* =====================================
 * Creative & Selfie Judge Section
 * ===================================== */
.p-judgeCreative {
  position: relative;
  z-index: 1;
  overflow: hidden;
  padding-top: clamp(0px, 10vw / var(--board) * 10 * 315, var(--max) * 315);
  padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 177, var(--max) * 177);
  width: 100%;
  background-color: #fff;
}
.p-judgeCreative__bgText {
  position: absolute;
  top: 5.8777429467%;
  left: 61.4583333333%;
  z-index: 0;
  margin: 0;
  color: #f2f2f2;
  white-space: nowrap;
  letter-spacing: -0.009em;
  font-weight: var(--weightRegular);
  font-size: clamp(280px, 41.6666666667vw, 800px);
  font-family: var(--fontDisplay);
  line-height: 1;
  pointer-events: none;
}
.p-judgeCreative__inner {
  position: relative;
  z-index: 2;
  margin: 0 auto;
  width: clamp(0px, 10vw / var(--board) * 10 * 1470, var(--max) * 1470);
  inset: 0;
}
.p-judgeCreative__category {
  position: relative;
  display: flex;
  align-items: center;
  gap: clamp(6px, 0.5208333333vw, 10px);
  margin: 0;
  color: #080808;
  letter-spacing: 0;
  font-weight: var(--weightRegular);
  font-size: clamp(36px, 4.4270833333vw, 85px);
  font-family: var(--fontDisplay);
  line-height: 1.2235294118;
}
.p-judgeCreative__category + .p-judgeCreative__category {
  margin-top: 0.3125vw;
}
.p-judgeCreative__category::before {
  content: "";
  display: block;
  margin-right: clamp(0px, 10vw / var(--board) * 10 * 44, var(--max) * 44);
  width: clamp(0px, 10vw / var(--board) * 10 * 94, var(--max) * 94);
  height: clamp(0px, 10vw / var(--board) * 10 * 37, var(--max) * 37);
  background-color: var(--markerColor, var(--colorBlack));
}
.p-judgeCreative__category::after {
  content: "";
  position: absolute;
  top: 50%;
  left: clamp(0px, 10vw / var(--board) * 10 * 66, var(--max) * 66);
  display: block;
  width: clamp(0px, 10vw / var(--board) * 10 * 71, var(--max) * 71);
  height: clamp(0px, 10vw / var(--board) * 10 * 1, var(--max) * 1);
  background-color: #000;
}
.p-judgeCreative__category[class~="--creative"] {
  --markerColor: #475b72;
}
.p-judgeCreative__category[class~="--selfie"] {
  --markerColor: #77b5a5;
}
.p-judgeCreative__category[class~="--salon"] {
  --markerColor: var(--colorAwardSalon);
}
.p-judgeCreative__desc {
  margin-top: 2.1875vw;
}
.p-judgeCreative__desc p {
  margin: 0;
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(13px, 1.0416666667vw, 20px);
  font-family: var(--fontGothic);
  line-height: 2.2;
}
.p-judgeCreative__list {
  display: grid;
  justify-content: space-between;
  margin: 0;
  margin-top: clamp(0px, 10vw / var(--board) * 10 * 103, var(--max) * 103);
  padding: 0;
  list-style: none;
  grid-template-columns: repeat(4, 19.2462987887%);
  row-gap: 2.0833333333vw;
}

.p-judgeCard {
  position: relative;
  display: flex;
  align-items: stretch;
  flex-direction: column;
  list-style: none;
}
.p-judgeCard__date {
  position: absolute;
  top: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  right: 0;
  z-index: 4;
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(10px, 10vw / var(--board) * 10 * 19, var(--max) * 19);
  font-family: var(--fontGothic);
  line-height: 1;
}
.p-judgeCard__bar {
  position: absolute;
  top: 1.3541666667vw;
  left: 58.0104895105%;
  z-index: 3;
  width: 48.0454545455%;
  height: clamp(16px, 1.809375vw, 34.74px);
  background-color: var(--colorWhite);
  clip-path: polygon(0 0, 100% 0, 100% 100%, 16.62% 100%);
}
.p-judgeCard__photo {
  overflow: hidden;
  margin-top: 1.5104166667vw;
  width: 100%;
  aspect-ratio: 286/393;
  background-color: #d6d2cc;
}
.p-judgeCard__photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-judgeCard__name {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: clamp(8px, 0.8333333333vw, 16px);
  margin: 0.9375vw 0 0;
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 27, var(--max) * 27);
  font-family: var(--fontGothic);
  line-height: 2.2222222222;
}
.p-judgeCard__brand {
  color: rgba(0, 0, 0, 0.7);
  letter-spacing: 0.04em;
  font-weight: var(--weightRegular);
  font-size: clamp(13px, 0.9895833333vw, 19px);
}
.p-judgeCard__logo {
  position: absolute;
  right: 0;
  display: inline-flex;
  align-items: center;
}
.p-judgeCard__logo img {
  display: block;
  width: clamp(40px, var(--logo-w) / 1920 * 100vw, var(--logo-w) * 1px);
  height: auto;
}

/* =====================================
 * Special Judge For Final
 * ===================================== */
.p-judgeSpecial {
  position: relative;
  overflow: hidden;
  padding-top: clamp(0px, 10vw / var(--board) * 10 * 180, var(--max) * 180);
  width: 100%;
  color: var(--colorWhite);
}
.p-judgeSpecial__bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  overflow: hidden;
  width: 100%;
  height: 100%;
}
.p-judgeSpecial__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-judgeSpecial__bg::after {
  content: "";
  position: absolute;
  top: 14.0726006962%;
  left: 0;
  width: 100%;
  height: 85.9273993038%;
  background-color: rgba(0, 0, 0, 0.65);
}
.p-judgeSpecial__inner {
  position: relative;
  z-index: 2;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: auto;
  width: clamp(0px, 10vw / var(--board) * 10 * 1470, var(--max) * 1470);
}
.p-judgeSpecial__text {
  width: 100%;
}
.p-judgeSpecial__ttl {
  margin: 0;
  color: var(--colorWhite);
  white-space: nowrap;
  letter-spacing: -0.01em;
  font-weight: var(--weightRegular);
  font-size: clamp(36px, 4.4270833333vw, 85px);
  font-family: var(--fontDisplay);
  line-height: 1.2235294118;
}
.p-judgeSpecial__desc {
  margin-top: 1.6145833333vw;
  width: 31.5625vw;
}
.p-judgeSpecial__desc p {
  margin: 0;
  color: var(--colorWhite);
  white-space: nowrap;
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(13px, 1.0416666667vw, 20px);
  font-family: var(--fontGothic);
  line-height: 2;
}
.p-judgeSpecial__list {
  display: grid;
  justify-content: space-between;
  gap: clamp(0px, 10vw / var(--board) * 10 * 73, var(--max) * 73);
  margin: 0;
  margin-top: clamp(0px, 10vw / var(--board) * 10 * 56, var(--max) * 56);
  padding: 0;
  width: clamp(0px, 10vw / var(--board) * 10 * 708, var(--max) * 708);
  list-style: none;
  grid-template-columns: repeat(3, 1fr);
}
.p-judgeSpecial__photoMain {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  overflow: hidden;
  width: clamp(0px, 10vw / var(--board) * 10 * 565, var(--max) * 565);
  aspect-ratio: 565/752;
}
.p-judgeSpecial__photoMain img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-judgeSpecialCard {
  color: var(--colorWhite);
  list-style: none;
}
.p-judgeSpecialCard__photo {
  overflow: hidden;
  width: 100%;
  aspect-ratio: 187.26/256.71;
  background-color: rgba(255, 255, 255, 0.08);
}
.p-judgeSpecialCard__photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-judgeSpecialCard__name {
  display: flex;
  justify-content: space-between;
  margin: 0.6770833333vw 0 clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  color: var(--colorWhite);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(14px, 1.0416666667vw, 20px);
  font-family: var(--fontGothic);
  line-height: 2;
}
.p-judgeSpecialCard__name img {
  width: clamp(0px, var(--logo-w) / 1920 * 100vw, var(--logo-w) * 1px);
}
.p-judgeSpecialCard__role {
  margin: 0.3645833333vw 0 0;
  color: var(--colorWhite);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(11px, 0.7291666667vw, 14px);
  font-family: var(--fontGothic);
  line-height: 1.4;
}
.p-judgeSpecialCard__year {
  display: flex;
  align-items: baseline;
  gap: 0.4166666667vw;
  margin: 0.1041666667vw 0 0;
}
.p-judgeSpecialCard__year .__num {
  color: var(--colorWhite);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(14px, 1.0416666667vw, 20px);
  font-family: var(--fontGothic);
}
.p-judgeSpecialCard__year .__label {
  color: var(--colorWhite);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(11px, 0.7291666667vw, 14px);
  font-family: var(--fontGothic);
}

/* =====================================
 * Wiseman For Final
 * ===================================== */
.p-judgeWiseman {
  position: relative;
  overflow: hidden;
  padding-top: clamp(0px, 10vw / var(--board) * 10 * 170, var(--max) * 170);
  padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 154, var(--max) * 154);
  width: 100%;
  color: var(--colorWhite);
}
.p-judgeWiseman__inner {
  display: flex;
  justify-content: space-between;
  margin: auto;
  width: clamp(0px, 10vw / var(--board) * 10 * 1470, var(--max) * 1470);
}
.p-judgeWiseman__photoMain {
  z-index: 2;
  overflow: hidden;
  width: clamp(0px, 10vw / var(--board) * 10 * 565, var(--max) * 565);
  aspect-ratio: 565/752;
}
.p-judgeWiseman__photoMain img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-judgeWiseman__personName {
  display: none;
}
.p-judgeWiseman__personBrand {
  display: none;
}
.p-judgeWiseman__info {
  display: flex;
  align-items: flex-end;
  flex-direction: column;
  width: clamp(0px, 10vw / var(--board) * 10 * 698, var(--max) * 698);
}
.p-judgeWiseman__ttl {
  margin: 0;
  margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 36, var(--max) * 36);
  color: var(--colorWhite);
  white-space: nowrap;
  letter-spacing: -0.01em;
  font-weight: var(--weightRegular);
  font-size: clamp(36px, 4.4270833333vw, 85px);
  font-family: var(--fontDisplay);
  line-height: 1.2235294118;
}
.p-judgeWiseman__info__inner {
  display: flex;
  justify-content: flex-end;
  gap: clamp(0px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
}
.p-judgeWiseman__desc {
  text-align: right;
}
.p-judgeWiseman__desc p {
  margin: 0;
  color: var(--colorWhite);
  white-space: nowrap;
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(13px, 1.0416666667vw, 20px);
  font-family: var(--fontGothic);
  line-height: 2;
}
.p-judgeWiseman__personCard {
  width: clamp(0px, 10vw / var(--board) * 10 * 191, var(--max) * 191);
}
.p-judgeWiseman__personPhoto {
  position: relative;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 191/262;
  background-color: rgba(255, 255, 255, 0.08);
}
.p-judgeWiseman__personPhoto img {
  position: absolute;
  top: -15.946388557%;
  left: -41.8773810022%;
  display: block;
  max-width: none;
  width: 183.3136224725%;
  height: 189.7651922629%;
}
.p-judgeWiseman__personName {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: clamp(8px, 0.8333333333vw, 16px);
  margin: 0.6770833333vw 0 0;
  color: var(--colorWhite);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(14px, 1.0416666667vw, 20px);
  font-family: var(--fontGothic);
  line-height: 2;
}
.p-judgeWiseman__personLogo {
  display: inline-flex;
  align-items: center;
}
.p-judgeWiseman__personLogo img {
  display: block;
  width: clamp(28px, 2.6661458333vw, 51.19px);
  height: auto;
}

/* =====================================
 * Salon Style Award
 * ===================================== */
.p-judgeSalon {
  position: relative;
  overflow: hidden;
  padding: clamp(60px, 10vw / var(--board) * 10 * 120, var(--max) * 120) 0 clamp(80px, 10vw / var(--board) * 10 * 160, var(--max) * 160);
  background-color: rgb(255, 255, 255);
}
.p-judgeSalon__bg {
  position: absolute;
  z-index: 1;
  inset: 0;
}
.p-judgeSalon__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0.2;
}
.p-judgeSalon__panel {
  position: relative;
  z-index: 2;
  margin: 0 auto;
  padding: 0;
  width: clamp(0px, 10vw / var(--board) * 10 * 1620, var(--max) * 1620);
  background-color: rgba(255, 255, 255, 0.57);
}
.p-judgeSalon__inner {
  display: flex;
}
.p-judgeSalon__text {
  padding: clamp(0px, 10vw / var(--board) * 10 * 82, var(--max) * 82) clamp(0px, 10vw / var(--board) * 10 * 103, var(--max) * 103) clamp(0px, 10vw / var(--board) * 10 * 84, var(--max) * 84) clamp(0px, 10vw / var(--board) * 10 * 77, var(--max) * 77);
  width: calc(100% - clamp(0px, 10vw / var(--board) * 10 * 565, var(--max) * 565));
  color: var(--colorBlack);
}
.p-judgeSalon__category {
  position: relative;
  display: flex;
  align-items: center;
  gap: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  color: var(--colorBlack);
  letter-spacing: -0.01em;
  font-weight: var(--weightRegular);
  font-size: clamp(30px, 10vw / var(--board) * 10 * 85, var(--max) * 85);
  font-family: var(--fontDisplay);
  line-height: 1.2;
}
.p-judgeSalon__category::before {
  content: "";
  display: block;
  margin-right: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  width: clamp(0px, 10vw / var(--board) * 10 * 94, var(--max) * 94);
  height: clamp(0px, 10vw / var(--board) * 10 * 37, var(--max) * 37);
  background-color: var(--colorAwardSalon);
}
.p-judgeSalon__category::after {
  content: "";
  position: absolute;
  top: 50%;
  left: clamp(0px, 10vw / var(--board) * 10 * 66, var(--max) * 66);
  display: block;
  width: clamp(0px, 10vw / var(--board) * 10 * 71, var(--max) * 71);
  height: clamp(0px, 10vw / var(--board) * 10 * 1, var(--max) * 1);
  background-color: #000;
}
.p-judgeSalon__desc {
  margin-top: clamp(24px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
}
.p-judgeSalon__desc p {
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-size: clamp(13px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 2.2;
}
.p-judgeSalon__samples {
  display: grid;
  gap: clamp(12px, 10vw / var(--board) * 10 * 28, var(--max) * 28);
  margin-top: clamp(28px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
  max-width: clamp(320px, 10vw / var(--board) * 10 * 820, var(--max) * 820);
  grid-template-columns: repeat(3, 1fr);
}
.p-judgeSalon__note {
  margin-top: clamp(18px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  color: #3e3a39;
  font-size: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
}
.p-judgeSalon__photoMain {
  width: clamp(0px, 10vw / var(--board) * 10 * 565, var(--max) * 565);
}
.p-judgeSalon__photoMain img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-judgeSalonCard {
  position: relative;
}
.p-judgeSalonCard__photo {
  overflow: hidden;
  width: 100%;
  aspect-ratio: 240/320;
  background-color: rgba(0, 0, 0, 0.06);
}
.p-judgeSalonCard__photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-judgeSalonCard__age {
  position: absolute;
  right: clamp(0px, 10vw / var(--board) * 10 * 0, var(--max) * 0);
  bottom: clamp(var(--max) * -1, 10vw / var(--board) * 10 * -1, 0px);
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1px, 10vw / var(--board) * 10 * 2, var(--max) * 2);
  padding: 0;
  padding-left: clamp(0px, 10vw / var(--board) * 10 * 10, var(--max) * 10);
  width: clamp(56px, 10vw / var(--board) * 10 * 82, var(--max) * 82);
  height: clamp(24px, 10vw / var(--board) * 10 * 34, var(--max) * 34);
  background-color: var(--colorAwardSalon);
  clip-path: polygon(clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20) 0, 100% 0, 100% 100%, 0 100%);
  color: #e9edf4;
  font-weight: var(--weightRegular);
  font-family: var(--fontDisplay);
  line-height: 1;
}
.p-judgeSalonCard__age .__d {
  font-size: clamp(14px, 10vw / var(--board) * 10 * 22, var(--max) * 22);
}
.p-judgeSalonCard__age .__a {
  font-size: clamp(10px, 10vw / var(--board) * 10 * 15, var(--max) * 15);
}
.p-judgeSalonCard__age .__s {
  font-size: clamp(11px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
}

/* =================================================
 * regulation ページ p-regulation
 * （creative / salon / selfie 共通の応募規定ページ）
 * ================================================= */
.p-regulation {
  position: relative;
  overflow: hidden;
  background-color: var(--colorWhite);
  --regulationAccent: var(--colorAwardCreative);
  --regulationRibbon: #475b72;
  --regulationBgText: #dadee3;
  --regulationRibbonGradient: linear-gradient(90deg, #273bb3 0%, #f26db6 100%);
  /* =================================================
   * Regulation SP overrides — Figma REGULATION_CREATIVE_SP (1:16611)
   * Figma URL: https://www.figma.com/design/rrWDGK57qBKytZZTpEd0LJ/id2026?node-id=1-16611
   *
   * SP 構造:
   *  - MV (m-mvBase): 0-1200 / plate 0,1073 568×352 (Creative)
   *  - PageHead: lead "応募規定" y=1116 / ttl "Regulation" y=1178 / category y=1298 (plate 上)
   *              body (pill y=1397 / desc y=1495)
   *  - Theme banner: y=1753-2463 (h=710) / bg photo + ribbon overlay
   *  - Section 1 (Overview): y=2463-4915 (h=2452) / bg #fafafa (#ededed?)
   *  - Section 2 (Rules):    y=4915-7499 (h=2584)
   *  - Section 3 (Online):   y=7499-10683 (h=3184) + Movie player
   *  - Section 4 (Criteria): y=10683-13422 (h=2739)
   *
   * 規約:
   *  - .p-regulationSec__ttl は Figma SP が崩れているため PC base 構造のまま、
   *    SP では数値リサイズ + bgText 非表示で対応
   * ================================================= */
}
.p-regulation[class~="--creative"] {
  --regulationAccent: var(--colorAwardCreative);
  --regulationRibbon: #475b72;
  --regulationBgText: #dadee3;
  --regulationRibbonGradient: linear-gradient(90deg, #273bb3 0%, #f26db6 100%);
}
.p-regulation[class~="--salon"] {
  --regulationAccent: var(--colorAwardSalon);
  --regulationRibbon: var(--colorAwardSalon);
  --regulationBgText: #f9e2e2;
  --regulationRibbonGradient: linear-gradient(90deg, #e26c6d 0%, #f2a3a4 100%);
}
.p-regulation[class~="--selfie"] {
  --regulationAccent: var(--colorAwardSelfie);
  --regulationRibbon: var(--colorAwardSelfie);
  --regulationBgText: #d7ede5;
  --regulationRibbonGradient: linear-gradient(90deg, #2fbba0 0%, #77b5a5 100%);
}

/* =====================================
 * MV（写真 + 左下白プレート）
 * Figma: Group 17:9730 — 1920 × 816（ヘッダー直下 y=92 から開始）
 *   - 写真 (1:8522 id2025_0537): x=95 / y=0 / w=1825 / h=700（右端=1920）
 *   - 白プレート (1:8523 長方形 400): x=0 / y=608 / w=1167 / h=208（写真の左下に被さる）
 * ===================================== */
/* Regulation MV は .p-aboutMv / .m-mvBase に統一したため旧レイアウトは退避 */
.p-regulationMv {
  /*
  position: relative;
  width: 100%;
  aspect-ratio: 1920 / 816;
  margin-top: r(92);

  @include media() {
    margin-top: vw(60);
  }

  &__photo {
    position: absolute;
    top: 0;
    left: calc(95 / 1920 * 100%);
    right: 0;
    height: calc(700 / 816 * 100%);
    overflow: hidden;
    background-color: rgba(0, 0, 0, .06);
    z-index: 1;

    img {
      width: 100%;
      height: 100%;
      object-fit: cover;
    }

    @include media() {
      left: vw(30);
    }
  }
  */
}

/* =====================================
 * Page Head（応募規定 / Regulation / [Award名] + 部門 + 説明）
 * Figma: Group 17:9056  /  起点 x=225 y=773
 * ===================================== */
.p-regulationHead {
  position: relative;
  z-index: 3;
  padding: 0 11.71875% clamp(40px, 10vw / var(--board) * 10 * 80, var(--max) * 80);
}
.p-regulationHead__inner {
  position: relative;
}
.p-regulationHead__lead {
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  font-family: var(--fontGothic);
  line-height: 1.4666666667;
}
.p-regulationHead__ttl {
  margin: 0.625vw 0 0;
  color: var(--colorBlack);
  letter-spacing: -0.01em;
  font-weight: var(--weightRegular);
  font-size: clamp(48px, 10vw / var(--board) * 10 * 180, var(--max) * 180);
  font-family: var(--fontDisplay);
  line-height: 1;
}
.p-regulationHead__category {
  margin-top: 2.3958333333vw;
  color: var(--colorBlack);
  letter-spacing: -0.01em;
  font-weight: var(--weightLight);
  font-size: clamp(20px, 10vw / var(--board) * 10 * 47, var(--max) * 47);
  font-family: var(--fontGothic);
  line-height: 1.4042553191;
}
.p-regulationHead {
  /*
  &__breadcrumb {
    position: absolute;
    top: calc(42 / 1920 * 100vw);
    right: calc(38 / 1920 * 100%);
    z-index: 3;
    display: flex;
    align-items: center;
    gap: r(20, 6);
    font-family: var(--fontGothic);
    font-size: r(15, 11);
    line-height: calc(40 / 15);
    letter-spacing: .07em;
    color: var(--colorBlack);

    a { color: inherit; }
    span { opacity: .5; }

    @include media() {
      position: relative;
      top: auto;
      right: auto;
      justify-content: flex-end;
      line-height: 1;
      margin-bottom: vw(16);
    }
  }
  */
}
.p-regulationHead__body {
  display: flex;
  align-items: center;
  gap: 2.9166666667vw;
  margin-top: 3.0729166667vw;
}
.p-regulationHead__type {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  justify-content: center;
  padding: 0 clamp(8px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  max-width: 100%;
  width: clamp(200px, 10vw / var(--board) * 10 * 519, var(--max) * 519);
  height: clamp(48px, 10vw / var(--board) * 10 * 74, var(--max) * 74);
  border: 1px solid var(--colorBlack);
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 33, var(--max) * 33);
  font-family: var(--fontGothic);
  line-height: 1.2424242424;
}
.p-regulationHead__desc {
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-size: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 2.2;
}

/* =====================================
 * Theme banner（テーマ告知バナー）
 * Figma: Group 17:9084  /  1920 × 710
 * 上 158 / 下 242（フロントピル下端基準、後ろシャドウピル 15px 含む）
 * ===================================== */
/* =====================================
 * Theme バナー（背景写真 + リボン色オーバーレイ + タイトル + ピル/外部リンク）
 * Figma: Group 17:9756 — 1920 × 710
 *   - bg (id25_0051): 1920×710 full
 *   - overlay (長方形 407): 1920×710 ribbon color 80%
 *   - 中央コンテンツ (Group 546): x=445 y=171 / w=1030 h=325
 *     - タイトル (NewYork 85 / 2行): y=171 h=170 → 下端 341
 *     - ピル (Group 545): y=395 h=101 → 下端 496（前ピル 1030×86 @ y=395 / 後ろシャドウ +15）
 *   - 下余白: 710 − 496 = 214 / 上余白: 171
 * ===================================== */
.p-regulationTheme {
  position: relative;
  overflow: hidden;
  margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 153, var(--max) * 153);
  padding: clamp(80px, 10vw / var(--board) * 10 * 171, var(--max) * 171) clamp(20px, 10vw / var(--board) * 10 * 40, var(--max) * 40) clamp(80px, 10vw / var(--board) * 10 * 214, var(--max) * 214);
  color: var(--colorWhite);
}
.p-regulationTheme__bg {
  position: absolute;
  z-index: 1;
  inset: 0;
}
.p-regulationTheme__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-regulationTheme__bg::after {
  content: "";
  position: absolute;
  background-color: var(--regulationRibbon);
  opacity: 0.8;
  inset: 0;
}
.p-regulationTheme__inner {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  flex-direction: column;
  text-align: center;
}
.p-regulationTheme__ttl {
  color: var(--colorWhite);
  letter-spacing: -0.01em;
  font-weight: var(--weightRegular);
  font-size: clamp(28px, 10vw / var(--board) * 10 * 85, var(--max) * 85);
  font-family: var(--fontDisplay);
  line-height: 1;
}
.p-regulationTheme__link {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: clamp(10px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  margin-top: clamp(28px, 10vw / var(--board) * 10 * 64, var(--max) * 64);
  padding: 0 clamp(16px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
  max-width: 100%;
  width: clamp(280px, 10vw / var(--board) * 10 * 1030, var(--max) * 1030);
  height: clamp(48px, 10vw / var(--board) * 10 * 86, var(--max) * 86);
  border: 1px solid var(--regulationRibbon);
  border-radius: clamp(24px, 10vw / var(--board) * 10 * 43, var(--max) * 43);
  background-color: var(--colorWhite);
  color: var(--regulationRibbon);
  font-family: var(--fontGothic);
  transition: opacity var(--speed) ease;
}
.p-regulationTheme__link::before {
  content: "";
  position: absolute;
  top: clamp(6px, 10vw / var(--board) * 10 * 15, var(--max) * 15);
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  border-radius: clamp(24px, 10vw / var(--board) * 10 * 43, var(--max) * 43);
  background-color: var(--regulationRibbon);
}
.p-regulationTheme__linkLabel {
  flex-shrink: 0;
  color: var(--regulationRibbon);
  white-space: nowrap;
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(11px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
}
.p-regulationTheme__linkText {
  color: var(--regulationRibbon);
  text-align: center;
  letter-spacing: 0.07em;
  font-weight: var(--weightMedium);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 23, var(--max) * 23);
  font-family: var(--fontGothic);
}
.p-regulationTheme__linkIcon {
  position: absolute;
  top: 50%;
  right: clamp(20px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  width: clamp(16px, 10vw / var(--board) * 10 * 25, var(--max) * 25);
  height: clamp(16px, 10vw / var(--board) * 10 * 25, var(--max) * 25);
  background-image: url("../image/creative-regulation/arrow.svg");
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  transform: translateY(-50%);
}
.p-regulationTheme__note {
  margin-top: clamp(20px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  color: var(--colorWhite);
  letter-spacing: 0.07em;
  font-size: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
}

/* =====================================
 * 共通セクション枠（参加概要 / 投稿規定 / オンライン予選作品投稿）
 * Figma: --last (Group 17:9359)  /  bg 1470×2119 #FAFAFA / inner 上89 下99 横75
 * ===================================== */
.p-regulationSec {
  position: relative;
  margin: 0 auto;
  max-width: clamp(0px, 10vw / var(--board) * 10 * 1470, var(--max) * 1470);
  width: 76.5625vw;
}
.p-regulationSec + .p-regulationSec {
  margin-top: clamp(0px, 10vw / var(--board) * 10 * 115, var(--max) * 115);
  padding-top: 0;
}
.p-regulationSec--last {
  padding-bottom: clamp(60px, 10vw / var(--board) * 10 * 160, var(--max) * 160);
}
.p-regulationSec__bgText {
  position: absolute;
  top: 0;
  z-index: 0;
  margin: 0;
  color: var(--regulationBgText);
  letter-spacing: -0.01em;
  font-weight: var(--weightRegular);
  font-size: clamp(70px, 10vw / var(--board) * 10 * 200, var(--max) * 200);
  font-family: var(--fontDisplay);
  line-height: 1;
  pointer-events: none;
  writing-mode: vertical-rl;
  text-orientation: mixed;
}
.p-regulationSec__bgText--left {
  top: clamp(0px, 10vw / var(--board) * 10 * 5, var(--max) * 5);
  left: clamp(0px, 10vw / var(--board) * 10 * 35, var(--max) * 35);
  transform: rotate(180deg) translateX(100%);
}
.p-regulationSec__bgText--right {
  top: clamp(0px, 10vw / var(--board) * 10 * 5, var(--max) * 5);
  right: clamp(0px, 10vw / var(--board) * 10 * 35, var(--max) * 35);
  transform: translateX(100%);
}
.p-regulationSec__inner {
  position: relative;
  z-index: 2;
  margin: 0 auto;
  padding: 4.6354166667vw 3.90625vw 5.15625vw;
  width: 100%;
  background-color: #fafafa;
}
.p-regulationSec__ttl {
  position: relative;
  margin: 0 auto clamp(40px, 10vw / var(--board) * 10 * 75, var(--max) * 75);
  max-width: clamp(0px, 10vw / var(--board) * 10 * 1320, var(--max) * 1320);
  width: 100%;
  height: clamp(56px, 10vw / var(--board) * 10 * 75, var(--max) * 75);
  background-color: var(--regulationBgText);
}
.p-regulationSec__ttl::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: 0;
  width: clamp(180px, 10vw / var(--board) * 10 * 262, var(--max) * 262);
  height: 100%;
  background-color: var(--regulationRibbon);
  clip-path: polygon(0 0, 91.8422680649% 0, 98.907057916% 100%, 0 100%);
}
.p-regulationSec__ttl.is-long::before {
  width: clamp(0px, 10vw / var(--board) * 10 * 520, var(--max) * 520);
}
.p-regulationSec__ttlText {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  padding-left: clamp(20px, 10vw / var(--board) * 10 * 51, var(--max) * 51);
  height: 100%;
  color: var(--colorWhite);
  letter-spacing: 0.28em;
  font-weight: var(--weightRegular);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  font-family: var(--fontGothic);
  line-height: 1.3333333333;
}
.p-regulationSec__topNote {
  margin-bottom: clamp(32px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
  color: var(--regulationAccent);
  text-align: center;
  letter-spacing: 0.07em;
  font-weight: var(--weightMedium);
  font-size: clamp(16px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  font-family: var(--fontGothic);
}
.p-regulationSec__list {
  display: flex;
  flex-direction: column;
  gap: clamp(28px, 10vw / var(--board) * 10 * 64, var(--max) * 64);
}
.p-regulationSec__item {
  position: relative;
  display: grid;
  align-items: center;
  gap: 0;
  padding: 0 clamp(12px, 10vw / var(--board) * 10 * 28, var(--max) * 28);
  grid-template-columns: clamp(80px, 10vw / var(--board) * 10 * 320, var(--max) * 320) 1fr;
}
.p-regulationSec__item::before, .p-regulationSec__item::after {
  content: "";
  position: absolute;
  top: clamp(4px, 10vw / var(--board) * 10 * 9, var(--max) * 9);
  bottom: clamp(4px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  width: clamp(10px, 10vw / var(--board) * 10 * 27, var(--max) * 27);
  border: 1px solid var(--regulationRibbon);
}
.p-regulationSec__item::before {
  left: 0;
  border-right: none;
}
.p-regulationSec__item::after {
  right: 0;
  border-left: none;
}
.p-regulationSec__term {
  padding-right: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  color: var(--regulationAccent);
  text-align: center;
  letter-spacing: 0.07em;
  font-weight: var(--weightMedium);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  font-family: var(--fontGothic);
}
.p-regulationSec__data {
  color: var(--colorBlack);
  font-size: clamp(13px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 1.6;
}
.p-regulationSec__lead {
  color: var(--regulationAccent, var(--colorBlack));
  letter-spacing: 0.07em;
  font-weight: var(--weightMedium);
  font-size: clamp(13px, 10vw / var(--board) * 10 * 25, var(--max) * 25);
  line-height: 1.6;
}
.p-regulationSec__lead + .p-regulationSec__lead {
  margin-top: clamp(12px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
}
.p-regulationSec__note + .p-regulationSec__lead {
  margin-top: 1em;
}
.p-regulationSec__sub {
  margin-left: clamp(4px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  color: var(--regulationAccent);
  font-weight: var(--weightRegular);
  font-size: clamp(11px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
}
.p-regulationSec__note {
  margin-top: clamp(6px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  padding-left: 1em;
  color: var(--colorBlack);
  text-indent: -1em;
  letter-spacing: 0.07em;
  font-size: clamp(11px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  line-height: 1.7;
}
.p-regulationSec__note + .p-regulationSec__note {
  margin-top: 0;
}
.p-regulationSec__link {
  color: inherit;
}

/* =====================================
 * オンライン予選 投稿物（ステップ + 写真）
 * ===================================== */
.p-regulationOnline {
  display: flex;
  flex-direction: column;
  gap: clamp(0px, 10vw / var(--board) * 10 * 70, var(--max) * 70);
  margin-top: clamp(0px, 10vw / var(--board) * 10 * 102, var(--max) * 102);
}
.p-regulationOnline__row:last-child {
  border-bottom: none;
}
.p-regulationOnline__step {
  margin-bottom: clamp(16px, 10vw / var(--board) * 10 * 28, var(--max) * 28);
  padding-bottom: clamp(10px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  border-bottom: 1px solid #475b72;
  color: #475b72;
  letter-spacing: 0.04em;
  font-weight: var(--weightMedium);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  font-family: var(--fontGothic);
}
.is-salon .p-regulationOnline__step {
  color: #e26c6d;
}
.is-selfie .p-regulationOnline__step {
  color: #4d9a86;
}
.p-regulationOnline__body {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: clamp(24px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
}
.p-regulationOnline__text {
  flex: 1;
}
.p-regulationOnline__lead {
  color: #475b72;
  font-weight: var(--weightMedium);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 26, var(--max) * 26);
  font-family: var(--fontGothic);
  line-height: 1.2;
}
.p-regulationOnline__lead + .p-regulationOnline__lead {
  margin-top: clamp(4px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
}
.is-salon .p-regulationOnline__lead, .is-selfie .p-regulationOnline__lead {
  color: #000;
  line-height: 2;
}
.p-regulationOnline__note {
  margin-top: clamp(0px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
  color: --colorBlack;
  font-size: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
}
.p-regulationOnline__highlight {
  color: var(--regulationAccent, var(--colorBlack));
  text-decoration: underline;
  text-underline-offset: clamp(2px, 10vw / var(--board) * 10 * 4, var(--max) * 4);
}
.p-regulationOnline__images {
  display: flex;
  flex-shrink: 0;
  gap: clamp(8px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  width: clamp(0px, 10vw / var(--board) * 10 * 485, var(--max) * 485);
}
.p-regulationOnline__images li {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(80px, 10vw / var(--board) * 10 * 144, var(--max) * 144);
}
.is-salon .p-regulationOnline__images li {
  width: auto;
  height: clamp(0px, 10vw / var(--board) * 10 * 210, var(--max) * 210);
}
.is-selfie .p-regulationOnline__images li {
  width: auto;
  height: clamp(0px, 10vw / var(--board) * 10 * 210, var(--max) * 210);
}
.p-regulationOnline__images img {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}

/* =====================================
 * Online Qualifying Movie（Vimeo 埋め込み）
 * ===================================== */
.p-regulationMovie {
  margin-top: clamp(60px, 10vw / var(--board) * 10 * 120, var(--max) * 120);
  padding: clamp(40px, 10vw / var(--board) * 10 * 80, var(--max) * 80) clamp(20px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  background-color: var(--colorWhite);
  text-align: center;
}
.p-regulationMovie__ttl {
  color: var(--regulationAccent);
  font-weight: var(--weightRegular);
  font-size: clamp(28px, 10vw / var(--board) * 10 * 70, var(--max) * 70);
  font-family: var(--fontDisplay);
  line-height: 1;
}
.p-regulationMovie__sub {
  margin-top: clamp(12px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  color: var(--regulationAccent);
  letter-spacing: 0.07em;
  font-weight: var(--weightMedium);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 25, var(--max) * 25);
  font-family: var(--fontGothic);
}
.p-regulationMovie__player {
  margin: clamp(24px, 10vw / var(--board) * 10 * 50, var(--max) * 50) auto 0;
  padding: clamp(10px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  max-width: 100%;
  width: clamp(280px, 10vw / var(--board) * 10 * 1136, var(--max) * 1136);
  background-color: var(--regulationRibbon);
}
.p-regulationMovie__player iframe {
  display: block;
}

/* =====================================
 * その他留意事項（注釈ブロック）
 * Figma: Group 17:9814 — 1153 × 164
 *   - ttl 「【その他留意事項】」: y=0 / w=192 / h=44（Noto Sans JP 20/44 .07em）
 *   - body 注釈3行（同一テキスト Box）: y=62 / w=1153 / h=102（15/34 .07em / mb=0）
 *   - 内余白: ttl 下端 44 → body 上端 62 = 18px
 * ===================================== */
.p-regulationOther {
  display: flex;
  gap: clamp(0px, 10vw / var(--board) * 10 * 65, var(--max) * 65);
  margin-top: clamp(0px, 10vw / var(--board) * 10 * 100, var(--max) * 100);
  padding-top: clamp(0px, 10vw / var(--board) * 10 * 87, var(--max) * 87);
  border-top: 1px solid #475b72;
}
.p-regulationOther__ttl {
  color: var(--colorBlack);
  white-space: nowrap;
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(13px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 2.2;
}
.p-regulationOther__body {
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-size: clamp(12px, 10vw / var(--board) * 10 * 15, var(--max) * 15);
  font-family: var(--fontGothic);
  line-height: 2.26666667;
}
.p-regulationOther__note {
  margin: 0;
  padding-left: 1em;
  color: var(--colorBlack);
  text-indent: -1em;
}

/* =====================================
 * Theme banner --text variant（salon / selfie 用）
 * Figma: Group 17:9088  /  pill 1030×86 / ラベル + メインテキスト
 * - 白背景 + リボン色 1px ボーダー
 * - 15px 下方向の同色シャドウピル（::before）
 * ===================================== */
.p-regulationTheme__pill {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: clamp(28px, 10vw / var(--board) * 10 * 54, var(--max) * 54);
  max-width: 100%;
  width: clamp(280px, 10vw / var(--board) * 10 * 1030, var(--max) * 1030);
  height: clamp(48px, 10vw / var(--board) * 10 * 86, var(--max) * 86);
  border: 1px solid var(--regulationRibbon);
  border-radius: clamp(24px, 10vw / var(--board) * 10 * 43, var(--max) * 43);
  background-color: var(--colorWhite);
}
.p-regulationTheme__pill::before {
  content: "";
  position: absolute;
  top: clamp(6px, 10vw / var(--board) * 10 * 15, var(--max) * 15);
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background-color: var(--regulationRibbon);
}

.p-regulationTheme__pillLabel {
  position: absolute;
  top: 50%;
  left: 15.6699029126%;
  color: var(--regulationRibbon);
  white-space: nowrap;
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(11px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  transform: translate(-50%, -50%);
}

.p-regulationTheme__pillText {
  color: var(--regulationRibbon);
  text-align: center;
  letter-spacing: 0.07em;
  font-weight: var(--weightMedium);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 23, var(--max) * 23);
  font-family: var(--fontGothic);
  line-height: 1.7391304348;
}

/* =====================================
 * 写真縦横比サンプル（salon 用）
 * ===================================== */
.p-regulationRatio {
  display: grid;
  align-items: center;
  gap: clamp(20px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  grid-template-columns: auto 1fr;
}
.p-regulationRatio__samples {
  display: flex;
  align-items: flex-end;
  gap: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
}
.p-regulationRatio__sample {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-regulationRatio__sample img {
  width: auto;
  height: clamp(80px, 10vw / var(--board) * 10 * 88, var(--max) * 88);
}
.p-regulationRatio__sample--ok img {
  height: clamp(80px, 10vw / var(--board) * 10 * 144, var(--max) * 144);
}
.p-regulationRatio__text {
  padding-left: clamp(8px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
}

/* =====================================
 * 審査の流れ（salon 用 — 1次/2次/Final）
 * ===================================== */
.p-regulationJudge {
  margin-top: clamp(40px, 10vw / var(--board) * 10 * 80, var(--max) * 80);
}
.p-regulationJudge__ttl {
  display: flex;
  align-items: baseline;
  gap: clamp(10px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  margin-bottom: clamp(24px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  color: var(--regulationAccent);
  font-weight: var(--weightMedium);
  font-size: clamp(16px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  font-family: var(--fontGothic);
}
.p-regulationJudge__ttlEn {
  color: var(--regulationAccent);
  font-weight: var(--weightLight);
  font-style: italic;
  font-size: clamp(18px, 10vw / var(--board) * 10 * 28, var(--max) * 28);
  font-family: var(--fontEnSerif);
}
.p-regulationJudge__list {
  display: flex;
  flex-direction: column;
  gap: clamp(16px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
}
.p-regulationJudge__item {
  display: grid;
  align-items: stretch;
  gap: 0;
  padding: 0;
  background-color: transparent;
  grid-template-columns: clamp(140px, 10vw / var(--board) * 10 * 387, var(--max) * 387) 1fr;
}
.p-regulationJudge__item--final {
  background-color: transparent;
  color: inherit;
}
.p-regulationJudge__round {
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  gap: clamp(4px, 10vw / var(--board) * 10 * 6, var(--max) * 6);
  padding: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  min-height: clamp(90px, 10vw / var(--board) * 10 * 152, var(--max) * 152);
  background-color: color-mix(in srgb, var(--regulationRibbon) 18%, transparent);
  color: var(--regulationRibbon);
  text-align: center;
  letter-spacing: 0.28em;
  font-weight: var(--weightRegular);
  font-size: clamp(18px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  font-family: var(--fontGothic);
  line-height: 1.3333333333;
}
.p-regulationJudge__round small {
  display: block;
  color: inherit;
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 2.2;
  opacity: 1;
}
.p-regulationJudge__item--final .p-regulationJudge__round {
  background-color: var(--regulationRibbon);
  color: var(--colorWhite);
  letter-spacing: 0.07em;
}
.p-regulationJudge__desc {
  align-self: center;
  padding-left: clamp(16px, 10vw / var(--board) * 10 * 88, var(--max) * 88);
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-size: clamp(13px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 2.2;
}

/* =================================================
 * award ページ p-award（creative / salon / selfie 共通）
 * ================================================= */
.p-award {
  position: relative;
  overflow: clip;
  background-color: var(--colorWhite);
  /* ===== SP: Figma CREATIVE_SP (1:13827) 準拠 =====
   * 全 SP overrides は @include media() {} 内に閉じ、PC base は無変更
   * Figma URL: https://www.figma.com/design/rrWDGK57qBKytZZTpEd0LJ/id2026?node-id=1-13827
   */
}
.p-award[class~="--creative"] {
  --awardAccent: var(--colorAwardCreative);
  --awardFinalBg: color-mix(in srgb, var(--awardAccent) 20%, #fff);
}
.p-award[class~="--salon"] {
  --awardAccent: var(--colorAwardSalon);
  --awardFinalBg: color-mix(in srgb, var(--awardAccent) 20%, #fff);
}
.p-award[class~="--selfie"] {
  --awardAccent: var(--colorAwardSelfie);
  --awardFinalBg: color-mix(in srgb, var(--awardAccent) 20%, #fff);
}

/* =====================================
 * MV
 * ===================================== */
/* =====================================
 * Award MV — Selfie Award 選択中レイヤー（Group 17:9524）準拠
 * Figma board: 1920 x 1170 (section y=95 から)
 *  - photo  : x:95  y:95   w:1825 h:700
 *  - plate  : x:0   y:700  w:1088 h:470  （画像左下に重なる白プレート）
 *  （旧 Figma メモ）リード／大見出し／bodyBox は HTML では MV 外：`m-aboutWhatHead` / `.p-awardWhat`
 *  - bread  : 右端 x:1845.875 y:818  Noto Sans JP 15 / lh 40 / tracking 1.05px (.07em)
 * ===================================== */
/* Award MV は .p-aboutMv / .m-mvBase と共通。ページ専用指定のみ以下に記述 */

/* アワード MV 直下のリード＋大見出しは about と同じ `div.m-aboutWhatHead`。
 * 部門ボックス等は `section.p-awardWhat`（about の `p-aboutWhat` に相当）。
 */
.p-awardWhat {
  margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 113, var(--max) * 113);
  margin-left: clamp(0px, 10vw / var(--board) * 10 * 223, var(--max) * 223);
}
.p-awardWhat__bodyBox {
  display: flex;
  align-items: center;
  gap: clamp(14px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
  margin-top: clamp(22px, 10vw / var(--board) * 10 * 45, var(--max) * 45);
}
.p-awardWhat__type {
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  justify-content: center;
  padding: 0 clamp(14px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  min-width: clamp(200px, 10vw / var(--board) * 10 * 519, var(--max) * 519);
  height: clamp(38px, 10vw / var(--board) * 10 * 74, var(--max) * 74);
  border: 1px solid var(--colorBlack);
  background-color: var(--colorWhite);
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(13px, 10vw / var(--board) * 10 * 33, var(--max) * 33);
  font-family: var(--fontGothic);
  line-height: 1;
}
.p-awardWhat__typeEn {
  color: var(--colorBlack);
  letter-spacing: 0.01em;
  font-weight: var(--weightLight);
  font-size: clamp(16px, 10vw / var(--board) * 10 * 50, var(--max) * 50);
  font-family: var(--fontGothic);
  line-height: normal;
}

/* =====================================
 * Container（左：sticky nav / 中央：本文 / 右：縦書き装飾）
 * Figma: 左 imgBox 720×1080 / 本文 1050 / 右 縦書きテキスト
 * ===================================== */
.p-awardContainer {
  position: relative;
  display: grid;
  padding: 0 0 clamp(0px, 10vw / var(--board) * 10 * 0, var(--max) * 0);
  min-height: 100vh;
  grid-template-columns: 37.5vw 54.6875vw 7.8125vw;
}
.p-awardContainer__side {
  position: sticky;
  top: clamp(70px, 10vw / var(--board) * 10 * 99, var(--max) * 99);
  display: flex;
  overflow: hidden;
  align-items: center;
  align-self: start;
  justify-content: flex-start;
  margin: 0;
  height: calc(100vh - clamp(70px, 10vw / var(--board) * 10 * 99, var(--max) * 99));
  color: #f2f2f2;
  white-space: nowrap;
  font-weight: var(--weightRegular);
  font-size: clamp(80px, 10vw / var(--board) * 10 * 200, var(--max) * 200);
  font-family: var(--fontDisplay);
  line-height: 1;
  writing-mode: vertical-rl;
  text-orientation: mixed;
}

.p-awardNavArea {
  position: sticky;
  top: clamp(70px, 10vw / var(--board) * 10 * 99, var(--max) * 99);
  overflow: hidden;
  align-self: start;
  height: calc(100vh - clamp(70px, 10vw / var(--board) * 10 * 99, var(--max) * 99));
  color: var(--colorWhite);
}
.p-awardNavArea__imgBox {
  position: absolute;
  z-index: 1;
  inset: 0;
}
.p-awardNavArea__imgBox img {
  position: absolute;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: top center;
     object-position: top center;
  opacity: 0;
  transition: opacity 0.6s ease;
  inset: 0;
}
.p-awardNavArea__imgBox img.is-active {
  opacity: 1;
}
.p-awardNavArea__card {
  position: absolute;
  top: 50%;
  left: 0;
  z-index: 3;
  display: flex;
  flex-direction: column;
  justify-content: center;
  box-sizing: border-box;
  padding: 1.71875vw 2.6041666667vw 1.71875vw 3.90625vw;
  min-width: 140px;
  min-height: 30.8333333333vw;
  width: 13.3333333333vw;
  background-color: var(--awardAccent);
  transform: translateY(-50%);
}
.p-awardNavArea__ttl {
  position: absolute;
  top: 50%;
  right: 0;
  z-index: 4;
  width: 3.5416666667vw;
  transform: translateY(-50%) translateX(50%);
}
.p-awardNavArea__ttl img {
  display: block;
  width: 100%;
  height: auto;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-awardNavArea__ttl span {
  display: block;
  color: var(--awardAccent);
  white-space: nowrap;
  letter-spacing: 0.04em;
  font-weight: var(--weightRegular);
  font-size: clamp(18px, 10vw / var(--board) * 10 * 28, var(--max) * 28);
  font-family: var(--fontDisplay);
  line-height: 1;
  writing-mode: vertical-rl;
  text-orientation: mixed;
}
.p-awardNavArea__ttl:has(span) {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(2px, 10vw / var(--board) * 10 * 6, var(--max) * 6);
  background-color: var(--colorWhite);
}
.p-awardNavArea__nav {
  display: flex;
  flex-direction: column;
}
.p-awardNavArea__nav li a {
  position: relative;
  display: inline-block;
  color: #f2f2f2;
  letter-spacing: 0.04em;
  font-weight: var(--weightRegular);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 4.2;
  transition: opacity var(--speed) ease;
}
.p-awardNavArea__nav li a::before {
  content: "";
  position: absolute;
  bottom: clamp(10px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  left: 0;
  width: 0;
  height: 1px;
  background-color: #f2f2f2;
  opacity: 0;
  transition: width var(--speed) ease, opacity var(--speed) ease;
}
.p-awardNavArea__nav li.is-active a::before {
  width: 100%;
  opacity: 1;
}

/* =====================================
 * 本文サイドの共通セクション
 * ===================================== */
.p-awardMain {
  position: relative;
  background-color: var(--colorWhite);
}

/* =====================================
 * p-awardSec / p-awardAbout（Award セクション）— Selfie Award 選択中レイヤー（Group 17:9549）準拠
 * Figma: 1050 × 1080 / #EDEDED / padding 63 / 125 / 107 / 125 (top/right/bottom/left)
 *  - Header: Award (NewYork 85/104) + 本アワードの特徴 (NS JP 20/36 .07em, gap 18) + 70×4 黒 divider (gap 18)
 *    └ divider 下 → lead 上: 44
 *  - Lead : 704×144 NS JP 20/36 tracking 1.4px (.07em) center, 4行
 *    └ lead 下 → photo 上: 52
 *  - Image: 800×490
 *  - Salon Award の追加要素（catch / cycle / steps）は __catch 以降のクラスで対応
 * ===================================== */
.p-awardSec {
  position: relative;
  padding: clamp(0px, 10vw / var(--board) * 10 * 65, var(--max) * 65) clamp(0px, 10vw / var(--board) * 10 * 125, var(--max) * 125) clamp(0px, 10vw / var(--board) * 10 * 129, var(--max) * 129);
}
.p-awardSec.p-awardAbout, .p-awardSec.p-awardPrize {
  background-color: #ededed;
}
.p-awardSec.p-awardSchedule, .p-awardSec.p-awardCta {
  background-color: #fafafa;
}
.p-awardSec.p-awardEntry {
  background-color: #ededed;
}
.p-awardSec.p-awardEntry.is-salon {
  background-color: #fafafa !important;
}
.p-awardSec.p-awardCta {
  background-color: #fafafa;
}
.p-awardSec.p-awardCta.is-salon {
  background-color: #ededed !important;
}
.p-awardSec__head {
  margin-bottom: clamp(24px, 10vw / var(--board) * 10 * 44, var(--max) * 44);
  color: var(--colorBlack);
  text-align: center;
}
.p-awardSec__ttl {
  color: var(--colorBlack);
  letter-spacing: -0.01em;
  font-weight: var(--weightRegular);
  font-size: clamp(36px, 10vw / var(--board) * 10 * 85, var(--max) * 85);
  font-family: var(--fontDisplay);
  line-height: 1.2235294118;
}
.p-awardSec__sub {
  margin-top: clamp(10px, 10vw / var(--board) * 10 * 18, var(--max) * 18);
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(13px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 1.8;
}
.p-awardSec__divider {
  display: block;
  margin: clamp(10px, 10vw / var(--board) * 10 * 18, var(--max) * 18) auto 0;
  width: clamp(40px, 10vw / var(--board) * 10 * 70, var(--max) * 70);
  height: clamp(2px, 10vw / var(--board) * 10 * 4, var(--max) * 4);
  background-color: var(--colorBlack);
}
.p-awardSec__lead {
  margin: 0 auto clamp(30px, 10vw / var(--board) * 10 * 66, var(--max) * 66);
  max-width: clamp(320px, 10vw / var(--board) * 10 * 760, var(--max) * 760);
  color: var(--colorBlack);
  text-align: center;
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 1.8;
}
.p-awardSec__photo {
  overflow: hidden;
  margin: 0 auto;
  max-width: clamp(320px, 10vw / var(--board) * 10 * 800, var(--max) * 800);
  width: 100%;
  aspect-ratio: 800/490;
  background-color: rgba(0, 0, 0, 0.06);
}
.p-awardSec__photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* =====================================
 * About（本アワードの特徴 + 3ステップサイクル + ステップ詳細）
 * ===================================== */
.p-awardAbout__lead {
  margin: 0 auto clamp(24px, 10vw / var(--board) * 10 * 52, var(--max) * 52);
  max-width: clamp(320px, 10vw / var(--board) * 10 * 800, var(--max) * 800);
  color: var(--colorBlack);
  text-align: center;
  letter-spacing: 0.07em;
  font-size: clamp(13px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 1.8;
}
.p-awardAbout__lead p {
  margin: 0;
}
.p-awardAbout__photo {
  overflow: hidden;
  margin: 0 auto clamp(40px, 10vw / var(--board) * 10 * 96, var(--max) * 96);
  max-width: clamp(320px, 10vw / var(--board) * 10 * 800, var(--max) * 800);
  width: 100%;
  aspect-ratio: 800/490;
  background-color: rgba(0, 0, 0, 0.06);
}
.p-awardAbout__photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-awardAbout__photo:last-child {
  margin-bottom: 0;
}
.p-awardAbout__catch {
  margin-bottom: clamp(16px, 10vw / var(--board) * 10 * 27, var(--max) * 27);
  color: var(--colorBlack);
  text-align: center;
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(13px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 1.8;
}
.p-awardAbout__cycle {
  position: relative;
  margin: 0 auto clamp(30px, 10vw / var(--board) * 10 * 70, var(--max) * 70);
  width: clamp(280px, 10vw / var(--board) * 10 * 548, var(--max) * 548);
  aspect-ratio: 548/388;
}
.p-awardAbout__cycleSteps {
  position: relative;
  width: 100%;
  height: 100%;
}
.p-awardAbout__cycleSteps::before {
  content: "";
  position: absolute;
  border: 1px dashed rgba(0, 0, 0, 0.25);
  border-radius: 50%;
  inset: clamp(20px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
}
.p-awardAbout__cycleStep {
  position: absolute;
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: clamp(4px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
}
.p-awardAbout__cycleStep--01 {
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.p-awardAbout__cycleStep--02 {
  right: 0;
  bottom: clamp(10px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
}
.p-awardAbout__cycleStep--03 {
  bottom: clamp(10px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  left: 0;
}
.p-awardAbout__cycleIcon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: clamp(56px, 10vw / var(--board) * 10 * 80, var(--max) * 80);
  height: clamp(40px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
}
.p-awardAbout__cycleIcon img {
  max-width: 100%;
  max-height: 100%;
}
.p-awardAbout__cycleLabel {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: clamp(2px, 10vw / var(--board) * 10 * 4, var(--max) * 4);
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightMedium);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 18, var(--max) * 18);
  font-family: var(--fontGothic);
}
.p-awardAbout__cycleNum {
  color: inherit;
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: inherit;
  font-family: inherit;
}
.p-awardAbout__cycleCenter {
  position: absolute;
  top: 50%;
  left: 50%;
  color: var(--colorBlack);
  text-align: center;
  font-weight: var(--weightRegular);
  font-size: clamp(16px, 10vw / var(--board) * 10 * 28, var(--max) * 28);
  font-family: var(--fontDisplay);
  line-height: 1.1;
  transform: translate(-50%, -50%);
}
.p-awardAbout__steps {
  display: flex;
  flex-direction: column;
  margin: 0 auto;
  max-width: clamp(320px, 10vw / var(--board) * 10 * 800, var(--max) * 800);
}
.p-awardAbout__step {
  position: relative;
  display: grid;
  align-items: center;
  gap: clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  padding: clamp(32px, 10vw / var(--board) * 10 * 77, var(--max) * 77) 0;
  border-top: 1px solid var(--colorBlack);
  grid-template-columns: clamp(0px, 10vw / var(--board) * 10 * 216, var(--max) * 216) 1fr;
}
.p-awardAbout__step:last-child {
  border-bottom: 1px solid var(--colorBlack);
}
.p-awardAbout__stepIcon {
  display: flex;
  align-items: center;
  justify-content: center;
}
.p-awardAbout__stepIcon img {
  max-width: 100%;
  max-height: 100%;
}
.p-awardAbout__stepBody {
  display: flex;
  flex-direction: column;
  gap: clamp(6px, 10vw / var(--board) * 10 * 9, var(--max) * 9);
}
.p-awardAbout__stepTtl {
  display: flex;
  align-items: baseline;
  gap: clamp(10px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(16px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  font-family: var(--fontGothic);
  line-height: 1.2;
}
.p-awardAbout__stepDesc {
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 1.8;
}

/* =====================================
 * Schedule（日付タイムライン）
 * ===================================== */
/* =====================================
 * p-awardSchedule（Schedule セクション）— Salon 選択中レイヤー（id 16:8957）準拠
 * Figma: 1050 × 1156 / #FAFAFA / padding 89/125/138/125
 *  - Header: Schedule (NewYork 85/104) + スケジュール (NS JP 20/36 .07em) + 70×4 黒 divider
 *    └ divider 下 → lead 上: 41
 *  - Lead: 532×108 NS JP 20/36 .07em 黒 center 3行
 *    └ lead 下 → 1行目: 42
 *  - List: 800×80 × 3行（白背景） + 800×155 final行（淡色背景・accent text）
 *    └ 各行間 50（▼アイコン中央）/ 最終行手前は 62
 *    └ 各行: date 左 33px / event 行中央 (row center)
 *    └ date: NS JP 18 / lh 21.6 / 黒
 *    └ event: NS JP 26 / lh 31.2 / tracking .07em / 黒 center
 *  - Final: date 20 / event 33 lh 44 / venue (small) 20 lh 44 / 全て accent color
 * ===================================== */
.p-awardSchedule {
  padding: clamp(50px, 10vw / var(--board) * 10 * 89, var(--max) * 89) clamp(24px, 10vw / var(--board) * 10 * 125, var(--max) * 125) clamp(60px, 10vw / var(--board) * 10 * 138, var(--max) * 138);
}
.p-awardSchedule__lead {
  margin: 0 auto clamp(24px, 10vw / var(--board) * 10 * 42, var(--max) * 42);
  max-width: clamp(320px, 10vw / var(--board) * 10 * 540, var(--max) * 540);
  color: var(--colorBlack);
  text-align: center;
  letter-spacing: 0.07em;
  font-size: clamp(13px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 1.8;
}
.p-awardSchedule__list {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: clamp(24px, 10vw / var(--board) * 10 * 50, var(--max) * 50);
  margin: 0 auto clamp(28px, 10vw / var(--board) * 10 * 57, var(--max) * 57);
  max-width: clamp(320px, 10vw / var(--board) * 10 * 800, var(--max) * 800);
}
.p-awardSchedule__list + .p-awardSchedule__list {
  margin-top: clamp(30px, 10vw / var(--board) * 10 * 80, var(--max) * 80);
}
.p-awardSchedule__item {
  position: relative;
  display: grid;
  align-items: center;
  padding: 0 clamp(16px, 10vw / var(--board) * 10 * 33, var(--max) * 33);
  min-height: clamp(60px, 10vw / var(--board) * 10 * 80, var(--max) * 80);
  background-color: var(--colorWhite);
  grid-template-columns: 1fr auto 1fr;
}
.p-awardSchedule__item + .p-awardSchedule__item::before {
  content: "";
  position: absolute;
  top: clamp(var(--max) * -38, 10vw / var(--board) * 10 * -38, -16px);
  left: 50%;
  width: 0;
  height: 0;
  border-width: clamp(14px, 10vw / var(--board) * 10 * 26, var(--max) * 26) clamp(8px, 10vw / var(--board) * 10 * 13, var(--max) * 13) 0 clamp(8px, 10vw / var(--board) * 10 * 13, var(--max) * 13);
  border-style: solid;
  border-color: var(--colorBlack) transparent transparent transparent;
  transform: translateX(-50%);
}
.p-awardSchedule__item--final {
  margin-top: clamp(6px, 10vw / var(--board) * 10 * 12, var(--max) * 12);
  min-height: clamp(90px, 10vw / var(--board) * 10 * 155, var(--max) * 155);
  background-color: var(--awardFinalBg);
  color: var(--awardAccent);
}
.p-awardSchedule__item--final::before {
  top: clamp(var(--max) * -44, 10vw / var(--board) * 10 * -44, -18px);
}
.p-awardSchedule__date {
  color: inherit;
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 18, var(--max) * 18);
  font-family: var(--fontGothic);
  line-height: 1.2;
  grid-column: 1;
  justify-self: start;
}
.p-awardSchedule__item--final .p-awardSchedule__date {
  white-space: nowrap;
  font-size: clamp(13px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
}
.p-awardSchedule__event {
  display: flex;
  align-items: center;
  flex-direction: column;
  color: inherit;
  text-align: center;
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(15px, 10vw / var(--board) * 10 * 26, var(--max) * 26);
  font-family: var(--fontGothic);
  line-height: 1.2;
  grid-column: 2;
}
.p-awardSchedule__event small {
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 2.2;
}
.p-awardSchedule__item--final .p-awardSchedule__event {
  padding-left: clamp(0px, 10vw / var(--board) * 10 * 80, var(--max) * 80);
  letter-spacing: 0.07em;
  font-size: clamp(18px, 10vw / var(--board) * 10 * 33, var(--max) * 33);
  line-height: 1.3333333333;
}
.p-awardSchedule__detail {
  display: grid;
  gap: 0 clamp(24px, 10vw / var(--board) * 10 * 92, var(--max) * 92);
  margin: 0 auto clamp(18px, 10vw / var(--board) * 10 * 36, var(--max) * 36);
  padding: 0;
  max-width: clamp(320px, 10vw / var(--board) * 10 * 800, var(--max) * 800);
  grid-template-columns: clamp(100px, 10vw / var(--board) * 10 * 160, var(--max) * 160) 1fr;
}
.p-awardSchedule__detail.p-awardSchedule__detail {
  margin-left: 0;
  background: none;
}
.p-awardSchedule__detailTtl {
  margin: clamp(4px, 10vw / var(--board) * 10 * 10, var(--max) * 10) 0 0;
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightMedium);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 24.7, var(--max) * 24.7);
  font-family: var(--fontGothic);
  line-height: 1.2;
}
.p-awardSchedule__detailText {
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 18, var(--max) * 18);
  font-family: var(--fontGothic);
  line-height: 1.6466666667;
}
.p-awardSchedule__detailDays {
  display: grid;
  align-items: center;
  gap: clamp(16px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  margin: clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30) auto 0;
  padding-top: clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  max-width: clamp(320px, 10vw / var(--board) * 10 * 800, var(--max) * 800);
  border-top: 1px solid #707070;
  grid-template-columns: clamp(120px, 10vw / var(--board) * 10 * 242, var(--max) * 242) 1fr;
}
.p-awardSchedule__detailDaysLabel {
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 17, var(--max) * 17);
  font-family: var(--fontGothic);
  line-height: 1.7647058824;
}
.p-awardSchedule__detailDaysList {
  display: grid;
  gap: clamp(4px, 10vw / var(--board) * 10 * 9, var(--max) * 9) clamp(16px, 10vw / var(--board) * 10 * 38, var(--max) * 38);
  grid-template-columns: 1fr 1fr;
}
.p-awardSchedule__detailDaysList li {
  color: var(--colorBlack);
  white-space: nowrap;
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  font-family: var(--fontGothic);
  line-height: 1.2;
}

/* =====================================
 * Prize（GOLD / SILVER / BRONZE + IMPRESSIVE / GENERATION）
 * — Salon 選択中レイヤー（id 16:9008）準拠
 * Figma: 1050 × 3427 / #EDEDED / padding 126/115/119/125（top/right/bottom/left）
 *  - Header: Prize (NewYork 85/104) + 褒賞 (NS JP 20/36 .07em) + 70×4 黒 divider
 *  - Lead: 810×189 NS JP 20/36 .07em center 5行
 *  - Rank header: 800×104 ランクラベル(左ダーク台形 ~259w) + ライト bg(575w) + "1名"
 *  - List items: 番号(NS JP 38, accent color) | 縦線 | タイトル(NS JP 25/lh37, accent) + note
 *  - GOLD photos: メイン510×340(左) + サブ220×147×2(右stacked)
 *  - IMPRESSIVE/GENERATION: 下線型ヘッダ + 副賞ラベル
 * ===================================== */
.p-awardPrize {
  padding: clamp(60px, 10vw / var(--board) * 10 * 126, var(--max) * 126) clamp(24px, 10vw / var(--board) * 10 * 115, var(--max) * 115) clamp(60px, 10vw / var(--board) * 10 * 119, var(--max) * 119);
}
.p-awardAbout + .p-awardPrize {
  background-color: #fff !important;
}
.p-awardPrize .p-awardSec__head {
  margin-bottom: clamp(32px, 10vw / var(--board) * 10 * 62, var(--max) * 62);
}
.p-awardPrize__lead {
  margin: 0 auto clamp(24px, 10vw / var(--board) * 10 * 48, var(--max) * 48);
  max-width: clamp(320px, 10vw / var(--board) * 10 * 810, var(--max) * 810);
  color: var(--colorBlack);
  text-align: center;
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(13px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 1.8;
}
.p-awardPrize__rank {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: clamp(40px, 10vw / var(--board) * 10 * 80, var(--max) * 80);
}
.p-awardPrize__rank[class~="--gold"] {
  --rankBg: #f4f1ea;
  --rankAccent: #8e7e52;
}
.p-awardPrize__rank[class~="--silver"] {
  --rankBg: #e5e5e5;
  --rankAccent: #7c7c7c;
}
.p-awardPrize__rank[class~="--bronze"] {
  --rankBg: #efe5dc;
  --rankAccent: #99785b;
}
.p-awardPrize__rank[class~="--impressive"], .p-awardPrize__rank[class~="--generation"] {
  --rankBg: transparent;
  --rankAccent: var(--colorBlack);
}
.p-awardPrize__rank[class~="--impressive"] > .p-awardPrize__rankTtl, .p-awardPrize__rank[class~="--generation"] > .p-awardPrize__rankTtl {
  padding: 0 0 clamp(10px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  height: auto;
  border-bottom: 1px solid var(--colorBlack);
  background-color: transparent;
}
.p-awardPrize__rank[class~="--impressive"] > .p-awardPrize__rankTtl > .p-awardPrize__rankLabel, .p-awardPrize__rank[class~="--generation"] > .p-awardPrize__rankTtl > .p-awardPrize__rankLabel {
  padding: 0;
  background-color: transparent;
  clip-path: none;
  color: var(--colorBlack);
  white-space: nowrap;
  font-size: clamp(18px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  line-height: 1.4666666667;
}
.p-awardPrize__rank[class~="--impressive"] > .p-awardPrize__rankTtl > .p-awardPrize__rankCount, .p-awardPrize__rank[class~="--generation"] > .p-awardPrize__rankTtl > .p-awardPrize__rankCount {
  padding-right: 0;
}
.p-awardPrize__rankTtl {
  display: flex;
  align-items: stretch;
  margin-bottom: clamp(28px, 10vw / var(--board) * 10 * 50, var(--max) * 50);
  width: 100%;
  height: clamp(50px, 10vw / var(--board) * 10 * 80, var(--max) * 80);
  background-color: var(--rankBg);
  color: var(--colorBlack);
}
.p-awardPrize__rankTtl--simple {
  align-items: baseline;
  margin-bottom: clamp(18px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  padding-bottom: clamp(10px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  height: auto;
  border-bottom: 1px solid rgba(0, 0, 0, 0.5);
  background-color: transparent;
}
.p-awardPrize__rankLabel {
  display: flex;
  align-items: center;
  padding-right: clamp(30px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
  padding-left: clamp(22px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  background-color: var(--rankAccent);
  clip-path: polygon(0 0, calc(100% - clamp(18px, 10vw / var(--board) * 10 * 28, var(--max) * 28)) 0, 100% 100%, 0 100%);
  color: var(--colorWhite);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(18px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  font-family: var(--fontGothic);
}
.p-awardPrize__rankLabelSimple {
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightMedium);
  font-size: clamp(18px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  font-family: var(--fontGothic);
}
.p-awardPrize__rankCount {
  display: flex;
  align-items: center;
  margin-left: auto;
  padding-right: clamp(18px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 25, var(--max) * 25);
  font-family: var(--fontGothic);
}
.--impressive .p-awardPrize__rankCount, .--generation .p-awardPrize__rankCount {
  font-size: clamp(12px, 10vw / var(--board) * 10 * 18, var(--max) * 18);
}
.p-awardPrize__rankTtl--simple .p-awardPrize__rankCount {
  padding-right: 0;
  padding-bottom: 0;
  font-size: clamp(12px, 10vw / var(--board) * 10 * 18, var(--max) * 18);
}
.p-awardPrize__list {
  display: flex;
  flex-direction: column;
  gap: clamp(0px, 10vw / var(--board) * 10 * 46, var(--max) * 46);
  margin-bottom: clamp(24px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  width: clamp(0px, 10vw / var(--board) * 10 * 526, var(--max) * 526);
}
.p-awardPrize__list.is-salon {
  width: 100%;
}
.p-awardPrize__rank:has(.p-awardPrize__item--withPhoto) > .p-awardPrize__list {
  width: 100%;
}
.p-awardPrize__item {
  display: grid;
  align-items: start;
  gap: clamp(18px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  padding-left: clamp(0px, 10vw / var(--board) * 10 * 0, var(--max) * 0);
  grid-template-columns: clamp(50px, 10vw / var(--board) * 10 * 80, var(--max) * 80) 1fr;
}
.--salon .p-awardPrize__item {
  grid-template-columns: clamp(0px, 10vw / var(--board) * 10 * 80, var(--max) * 80) 1fr;
}
.p-awardPrize__item--withPhoto > .p-awardPrize__body {
  display: grid;
  align-items: start;
  -moz-column-gap: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
       column-gap: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  grid-template-columns: 1fr clamp(0px, 10vw / var(--board) * 10 * 220, var(--max) * 220);
}
.--salon .p-awardPrize__item--withPhoto > .p-awardPrize__body {
  grid-template-columns: 1fr 0;
}
.p-awardPrize__item--withPhoto > .p-awardPrize__body > .p-awardPrize__ttl,
.p-awardPrize__item--withPhoto > .p-awardPrize__body > .p-awardPrize__note,
.p-awardPrize__item--withPhoto > .p-awardPrize__body > .p-awardPrize__schedule {
  grid-column: 1;
}
.p-awardPrize__item--withPhoto > .p-awardPrize__body > .p-awardPrize__photoMain,
.p-awardPrize__item--withPhoto > .p-awardPrize__body > .p-awardPrize__photoSub {
  grid-column: 2;
  grid-row: 1/span 99;
}
.p-awardPrize__schedule {
  display: inline-block;
  margin-top: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  padding: clamp(10px, 10vw / var(--board) * 10 * 20, var(--max) * 20) clamp(18px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  border: 1px solid #707070;
  color: #231815;
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  font-family: var(--fontGothic);
  line-height: 1.7;
}
.p-awardPrize__schedule > p {
  margin: 0;
}
.p-awardPrize__num {
  display: flex;
  align-items: center;
  padding-top: clamp(0px, 10vw / var(--board) * 10 * 2, var(--max) * 2);
  padding-right: clamp(10px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  height: 100%;
  border-right: 2px solid #8e7e52;
  color: var(--rankAccent);
  text-align: left;
  font-weight: var(--weightRegular);
  font-size: clamp(22px, 10vw / var(--board) * 10 * 38, var(--max) * 38);
  font-family: var(--fontGothic);
  line-height: 1;
}
.p-awardPrize__num[class~="--small"] {
  font-size: clamp(14px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
}
.p-awardPrize__body {
  padding-top: clamp(2px, 10vw / var(--board) * 10 * 4, var(--max) * 4);
}
.p-awardPrize__ttl {
  color: var(--rankAccent);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 25, var(--max) * 25);
  font-family: var(--fontGothic);
  line-height: 1.4;
}
.p-awardPrize__ttl small {
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 18, var(--max) * 18);
}
.p-awardPrize__amount {
  margin: 0 clamp(1px, 10vw / var(--board) * 10 * 2, var(--max) * 2);
  font-weight: var(--weightRegular);
  font-size: clamp(20px, 10vw / var(--board) * 10 * 38, var(--max) * 38);
}
.p-awardPrize__note {
  margin-top: clamp(6px, 10vw / var(--board) * 10 * 12, var(--max) * 12);
  color: #231815;
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  font-family: var(--fontGothic);
  line-height: 1.7;
}
.p-awardPrize__photos {
  display: flex;
  flex-direction: column;
  gap: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  width: calc(100% - clamp(0px, 10vw / var(--board) * 10 * 526, var(--max) * 526));
}
.p-awardPrize__photos figcaption {
  text-align: center;
  font-size: clamp(12px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
}
.p-awardPrize__photos.is-salon {
  display: grid;
  width: 100%;
  -moz-column-gap: 4.7461454602%;
       column-gap: 4.7461454602%;
  grid-template-columns: 511.95fr 222fr;
}
.p-awardPrize__photos.is-salon figcaption {
  text-align: left;
}
.p-awardPrize__photoMain {
  display: flex;
  flex-direction: column;
  gap: clamp(6px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
}
.p-awardPrize__photoMain img {
  width: 100%;
}
.p-awardPrize__photoMain figcaption {
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-size: clamp(11px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  font-family: var(--fontGothic);
  line-height: 1.6428571429;
}
.p-awardPrize__photoSubs {
  display: flex;
  flex-direction: column;
  gap: clamp(14px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
}
.p-awardPrize__photoSubs figure {
  display: flex;
  flex-direction: column;
  gap: clamp(6px, 10vw / var(--board) * 10 * 8, var(--max) * 8);
}
.p-awardPrize__photoSubs img {
  width: 100%;
  aspect-ratio: 220/147;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-awardPrize__photoSubs figcaption {
  color: var(--colorBlack);
  white-space: nowrap;
  letter-spacing: 0.07em;
  font-size: clamp(0px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  font-family: var(--fontGothic);
  line-height: 1.6428571429;
}
.p-awardPrize__generation {
  display: grid;
  align-items: start;
  gap: clamp(16px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  grid-template-columns: 1fr clamp(0px, 10vw / var(--board) * 10 * 144, var(--max) * 144);
}
.p-awardPrize__generationBody {
  display: grid;
  align-items: start;
  gap: clamp(18px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  grid-template-columns: clamp(50px, 10vw / var(--board) * 10 * 80, var(--max) * 80) 1fr;
}
.p-awardPrize__generationText {
  padding-top: clamp(2px, 10vw / var(--board) * 10 * 4, var(--max) * 4);
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-size: clamp(12px, 10vw / var(--board) * 10 * 19, var(--max) * 19);
  font-family: var(--fontGothic);
  line-height: 1.8;
}
.p-awardPrize__generationPhoto img {
  width: 100%;
  aspect-ratio: 144/106;
  -o-object-fit: cover;
     object-fit: cover;
}

/* =====================================
 * Entry（5 ステップ）
 * ===================================== */
/* =====================================
 * p-awardEntry（Entry セクション）
 * Figma: 1050 × 1780 / #EDEDED / padding 98/125/115/125
 *  - head 標準
 *  - 各 step: 番号(NewYork 50 / line-h 104) を中央配置、両側に 347×1 黒ライン
 *  - body: 左にアイコン、右(x:230)に説明文(20/line36/.07em)
 *  - step 05: 「クレジット決済」「コンビニ決済」横並び + 縦区切り
 * ===================================== */
.p-awardEntry {
  padding: clamp(50px, 10vw / var(--board) * 10 * 98, var(--max) * 98) clamp(24px, 10vw / var(--board) * 10 * 125, var(--max) * 125) clamp(60px, 10vw / var(--board) * 10 * 115, var(--max) * 115);
}
.p-awardEntry .p-awardSec__head {
  margin-bottom: clamp(32px, 10vw / var(--board) * 10 * 68, var(--max) * 68);
}
.p-awardEntry__diagram {
  display: flex;
  align-items: stretch;
  justify-content: center;
  gap: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  margin: 0 auto;
  max-width: clamp(320px, 10vw / var(--board) * 10 * 800, var(--max) * 800);
}
.p-awardEntry__diagram > .p-awardEntry__step {
  display: flex;
  align-items: center;
  flex: 1;
  flex-direction: column;
  gap: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
}
.p-awardEntry__diagram > .p-awardEntry__step::before {
  display: none;
}
.p-awardEntry__stepImg {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  width: clamp(130px, 10vw / var(--board) * 10 * 220, var(--max) * 220);
  height: clamp(200px, 10vw / var(--board) * 10 * 340, var(--max) * 340);
}
.p-awardEntry__stepImg img {
  max-width: 100%;
  max-height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-awardEntry__stepLabel {
  display: flex;
  align-items: center;
  gap: clamp(10px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
  color: var(--colorBlack);
  text-align: center;
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(13px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
}
.p-awardEntry__diagram .p-awardEntry__stepNum {
  position: static;
  padding: 0;
  background: transparent;
  color: var(--colorBlack);
  letter-spacing: 0.02em;
  font-weight: var(--weightRegular);
  font-size: clamp(28px, 10vw / var(--board) * 10 * 50, var(--max) * 50);
  font-family: var(--fontDisplay);
  line-height: 1;
  transform: none;
}
.p-awardEntry__stepNumLg {
  color: var(--colorBlack);
  letter-spacing: 0.04em;
  font-weight: var(--weightRegular);
  font-size: clamp(28px, 10vw / var(--board) * 10 * 50, var(--max) * 50);
  font-family: var(--fontDisplay);
  line-height: 1;
}
.p-awardEntry__arrow {
  display: flex;
  align-items: center;
  align-self: center;
  justify-content: center;
  width: clamp(24px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  height: clamp(24px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  color: var(--colorBlack);
  font-size: clamp(18px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
}
.p-awardEntry__list {
  display: flex;
  flex-direction: column;
  gap: clamp(16px, 10vw / var(--board) * 10 * 33, var(--max) * 33);
  margin: 0 auto;
  max-width: clamp(320px, 10vw / var(--board) * 10 * 800, var(--max) * 800);
}
.p-awardEntry__step {
  position: relative;
}
.p-awardEntry__stepNum {
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 2;
  padding: 0 clamp(10px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  background-color: transparent;
  color: var(--colorBlack);
  letter-spacing: 0.04em;
  font-weight: var(--weightRegular);
  font-size: clamp(26px, 10vw / var(--board) * 10 * 50, var(--max) * 50);
  font-family: var(--fontDisplay);
  line-height: 2.08;
  transform: translateX(-50%);
}
.p-awardEntry__step::before, .p-awardEntry__step::after {
  content: "";
  position: absolute;
  top: clamp(24px, 10vw / var(--board) * 10 * 52, var(--max) * 52);
  width: calc(50% - clamp(30px, 10vw / var(--board) * 10 * 53, var(--max) * 53));
  height: 1px;
  background-color: var(--colorBlack);
}
.--salon .p-awardEntry__step::before, .--selfie .p-awardEntry__step::before, .--salon .p-awardEntry__step::after, .--selfie .p-awardEntry__step::after {
  display: none;
}
.p-awardEntry__step::before {
  left: 0;
}
.p-awardEntry__step::after {
  right: 0;
}
.p-awardEntry__stepBody {
  display: flex;
  align-items: center;
  gap: 0;
  padding: clamp(50px, 10vw / var(--board) * 10 * 108, var(--max) * 108) 0 0 0;
}
.p-awardEntry__stepIcon {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  justify-content: center;
  width: clamp(0px, 10vw / var(--board) * 10 * 180, var(--max) * 180);
  height: clamp(38px, 10vw / var(--board) * 10 * 70, var(--max) * 70);
  color: var(--colorBlack);
  justify-self: start;
}
.p-awardEntry__stepIcon img {
  width: clamp(40px, var(--img-width) / 1920 * 100vw, var(--img-width) * 1px);
  height: auto;
}
.p-awardEntry__stepDesc {
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  line-height: 1.8;
}
.p-awardEntry__split {
  position: relative;
  display: grid;
  gap: clamp(20px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  grid-template-columns: 1fr 1fr;
}
.p-awardEntry__split::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 1px;
  background-color: var(--colorBlack);
  transform: translateX(-50%);
}
.p-awardEntry__splitItem {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  padding: 0 clamp(10px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
}
.p-awardEntry__splitTtl {
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightMedium);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 22, var(--max) * 22);
  font-family: var(--fontGothic);
}
.p-awardEntry__splitDesc {
  color: var(--colorBlack);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 18, var(--max) * 18);
  font-family: var(--fontGothic);
  line-height: 1.8;
}
.p-awardEntry__step--split .p-awardEntry__stepBody {
  display: block;
}
.p-awardEntry {
  /* =====================================
   * --3step バリエーション (Selfie Award)
   * Figma: Group 17:9606 / 1050×1080 #FAFAFA / padding 98/125/107/125
   *  - head 中央 (Entry 85/104 + sub 20/36 + 70×4 divider, head margin-bottom 44)
   *  - diagram 800幅 / 3 step + 2 arrow
   *    - step 220×578: number 50px Inter, image 220×383, label 20/32 center 2行
   *    - arrow: ▶ 黒 19×19 (Figma 多角形13 を 90° 回転)
   *    - step 間 gap 25 (合計幅 220×3 + 19×2 + 25×4 ≒ 798)
   * ===================================== */
}
.p-awardEntry--3step {
  padding-bottom: clamp(60px, 10vw / var(--board) * 10 * 181, var(--max) * 181);
}
.p-awardEntry--3step .p-awardSec__head {
  margin-bottom: clamp(24px, 10vw / var(--board) * 10 * 44, var(--max) * 44);
}
.p-awardEntry--3step .p-awardEntry__diagram {
  align-items: stretch;
  gap: clamp(10px, 10vw / var(--board) * 10 * 25, var(--max) * 25);
  max-width: clamp(280px, 10vw / var(--board) * 10 * 800, var(--max) * 800);
}
.p-awardEntry--3step .p-awardEntry__diagram > .p-awardEntry__step {
  gap: 0;
}
.p-awardEntry--3step .p-awardEntry__arrow {
  align-self: flex-start;
  margin-top: clamp(120px, 10vw / var(--board) * 10 * 308, var(--max) * 308);
  width: clamp(12px, 10vw / var(--board) * 10 * 19, var(--max) * 19);
  height: clamp(12px, 10vw / var(--board) * 10 * 19, var(--max) * 19);
  color: var(--colorBlack);
  font-size: clamp(10px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
}
.p-awardEntry--3step .p-awardEntry__stepImg {
  margin-top: clamp(16px, 10vw / var(--board) * 10 * 46, var(--max) * 46);
  width: clamp(130px, 10vw / var(--board) * 10 * 220, var(--max) * 220);
  height: clamp(220px, 10vw / var(--board) * 10 * 383, var(--max) * 383);
}
.p-awardEntry--3step .p-awardEntry__stepLabel {
  margin-top: clamp(12px, 10vw / var(--board) * 10 * 35, var(--max) * 35);
  white-space: nowrap;
  line-height: 1.6;
}

/* =====================================
 * Regulation CTA（アクセント色カード + ボタン）
 * ===================================== */
/* =====================================
 * p-awardCta（Regulation & Entry CTA セクション）— Selfie Award 選択中レイヤー（Group 17:9610）準拠
 * Figma: 1050 × 1080 / #EDEDED / padding 140 / 125 / 140 / 125
 *  - card 800×800（中央配置, x=125, y=140 in section）
 *    - bg image 800×800 + awardAccent オーバーレイ (opacity .9)
 *    - 白枠 1px inset 25
 *  - title NewYork 85 / lh 88 / 白 / center (2 行 / h=176)
 *  - divider 70×4 白 (title下 16 / button上 27)
 *  - button 514×59 / rounded 36 / 白 20% 透明 + 白 1px border / 27 白テキスト
 *    - text padding-left 40, arrow 32×32 右端 padding 18
 * ===================================== */
.p-awardCta {
  padding: clamp(60px, 10vw / var(--board) * 10 * 140, var(--max) * 140) clamp(24px, 10vw / var(--board) * 10 * 125, var(--max) * 125);
}
.p-awardCta__box {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0 auto;
  max-width: clamp(320px, 10vw / var(--board) * 10 * 800, var(--max) * 800);
  width: 100%;
  aspect-ratio: 800/800;
  color: var(--colorWhite);
  transition: opacity var(--speed) ease;
}
.p-awardCta__bg {
  position: absolute;
  z-index: 0;
  inset: 0;
}
.p-awardCta__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-awardCta__bg::after {
  content: "";
  position: absolute;
  background-color: var(--awardAccent);
  opacity: 0.9;
  inset: 0;
}
.p-awardCta__bg::before {
  content: "";
  position: absolute;
  z-index: 2;
  border: 1px solid var(--colorWhite);
  pointer-events: none;
  inset: clamp(14px, 10vw / var(--board) * 10 * 25, var(--max) * 25);
}
.p-awardCta__inner {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  flex-direction: column;
  justify-content: center;
  padding: clamp(30px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
  height: 100%;
  text-align: center;
}
.p-awardCta__ttl {
  color: var(--colorWhite);
  letter-spacing: -0.01em;
  font-weight: var(--weightRegular);
  font-size: clamp(36px, 10vw / var(--board) * 10 * 85, var(--max) * 85);
  font-family: var(--fontDisplay);
  line-height: 1.0352941176;
}
.p-awardCta__divider {
  display: block;
  margin: clamp(10px, 10vw / var(--board) * 10 * 16, var(--max) * 16) 0 clamp(14px, 10vw / var(--board) * 10 * 27, var(--max) * 27);
  width: clamp(40px, 10vw / var(--board) * 10 * 70, var(--max) * 70);
  height: clamp(2px, 10vw / var(--board) * 10 * 4, var(--max) * 4);
  background-color: var(--colorWhite);
}
.p-awardCta__btn {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  padding: 0 clamp(10px, 10vw / var(--board) * 10 * 18, var(--max) * 18) clamp(0px, 10vw / var(--board) * 10 * 1, var(--max) * 1) clamp(16px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  min-width: clamp(280px, 10vw / var(--board) * 10 * 514, var(--max) * 514);
  height: clamp(40px, 10vw / var(--board) * 10 * 59, var(--max) * 59);
  border: 1px solid var(--colorWhite);
  border-radius: clamp(30px, 10vw / var(--board) * 10 * 36, var(--max) * 36);
  background-color: rgba(255, 255, 255, 0.2);
  color: var(--colorWhite);
  letter-spacing: 0.07em;
  font-weight: var(--weightRegular);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 27, var(--max) * 27);
  font-family: var(--fontGothic);
  line-height: 1;
}
.p-awardCta__btnArrow {
  position: relative;
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  justify-content: center;
  width: clamp(24px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  height: clamp(24px, 10vw / var(--board) * 10 * 32, var(--max) * 32);
  border: 1px solid var(--colorWhite);
  border-radius: 50%;
}
.p-awardCta__btnArrow::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 22%;
  width: 56%;
  height: 1px;
  background-color: var(--colorWhite);
  transform: translateY(-50%);
}
.p-awardCta__btnArrow::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 26%;
  width: clamp(4px, 10vw / var(--board) * 10 * 6, var(--max) * 6);
  height: clamp(4px, 10vw / var(--board) * 10 * 6, var(--max) * 6);
  border-top: 1px solid var(--colorWhite);
  border-right: 1px solid var(--colorWhite);
  transform: translateY(-50%) rotate(45deg);
}

/* =====================================
 * Regulation Entry — footer 上の Entry 前確認セクション
 * Figma: node 98:2451 (Group 648)
 * セクション = 1920×1303 / 背景 opacity 30% / 黒地
 * ===================================== */
.p-regulationEntry {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: clamp(0px, 10vw / var(--board) * 10 * 160, var(--max) * 160) 0 clamp(0px, 10vw / var(--board) * 10 * 190, var(--max) * 190);
  background-color: var(--colorBgDark);
  color: var(--colorWhite);
  overflow: hidden;
}
.p-regulationEntry::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  z-index: 4;
  display: block;
  width: 100%;
  height: clamp(0px, 10vw / var(--board) * 10 * 160, var(--max) * 160);
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0) 0%, rgb(0, 0, 0) 100%);
  pointer-events: none;
}
.p-regulationEntry__bg {
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
}
.p-regulationEntry__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-regulationEntry__bigTtl {
  position: relative;
  z-index: 2;
  margin: 0 0 clamp(0px, 10vw / var(--board) * 10 * 78, var(--max) * 78);
  font-family: var(--fontDisplay);
  font-weight: var(--weightRegular);
  font-size: clamp(0px, 10vw / var(--board) * 10 * 180, var(--max) * 180);
  line-height: 1;
  letter-spacing: -0.01em;
  text-align: center;
  color: var(--colorWhite);
}
.p-regulationEntry__box {
  position: relative;
  z-index: 2;
  width: clamp(0px, 10vw / var(--board) * 10 * 1321, var(--max) * 1321);
  max-width: calc(100% - clamp(0px, 10vw / var(--board) * 10 * 80, var(--max) * 80));
  margin: 0 auto;
  padding: clamp(0px, 10vw / var(--board) * 10 * 72, var(--max) * 72) clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40) clamp(0px, 10vw / var(--board) * 10 * 68, var(--max) * 68);
  border: 1px solid var(--colorWhite);
  text-align: center;
}
.p-regulationEntry__ttl {
  margin: 0 0 clamp(0px, 10vw / var(--board) * 10 * 35, var(--max) * 35);
  font-family: var(--fontGothic);
  font-weight: var(--weightRegular);
  font-size: clamp(18px, 10vw / var(--board) * 10 * 33, var(--max) * 33);
  line-height: 1.2121212121;
  letter-spacing: 0.07em;
}
.p-regulationEntry__lead {
  margin: 0 0 clamp(0px, 10vw / var(--board) * 10 * 104, var(--max) * 104);
  font-family: var(--fontGothic);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 25, var(--max) * 25);
  line-height: 1.6;
  letter-spacing: 0.07em;
}
.p-regulationEntry__check {
  display: inline-block;
  margin: 0 0 clamp(0px, 10vw / var(--board) * 10 * 70, var(--max) * 70);
  cursor: pointer;
}
.p-regulationEntry__checkInput {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0;
}
.p-regulationEntry__checkBox {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: clamp(0px, 10vw / var(--board) * 10 * 437, var(--max) * 437);
  height: clamp(0px, 10vw / var(--board) * 10 * 69, var(--max) * 69);
  padding: 0 clamp(0px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
  background-color: var(--regulationRibbon);
  color: var(--colorWhite);
  transition: background-color 0.2s ease;
}
.p-regulationEntry__checkLabel {
  font-family: var(--fontGothic);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  line-height: 1;
  letter-spacing: 0.07em;
  text-align: center;
}
.p-regulationEntry__checkMark {
  position: absolute;
  top: 50%;
  right: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  flex-shrink: 0;
  width: clamp(0px, 10vw / var(--board) * 10 * 34, var(--max) * 34);
  height: clamp(0px, 10vw / var(--board) * 10 * 34, var(--max) * 34);
  background-color: var(--colorWhite);
  transform: translateY(-50%);
}
.p-regulationEntry__checkInput:checked + .p-regulationEntry__checkBox .p-regulationEntry__checkMark::after {
  content: "";
  position: absolute;
  top: 48%;
  left: 50%;
  width: 55%;
  height: 32%;
  border-left: 2px solid var(--regulationRibbon);
  border-bottom: 2px solid var(--regulationRibbon);
  transform: translate(-50%, -65%) rotate(-45deg);
}
.p-regulationEntry__note {
  margin: 0;
  font-family: var(--fontGothic);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 15, var(--max) * 15);
  line-height: 2.6666666667;
  letter-spacing: 0.07em;
}
.p-regulationEntry__btn {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  width: clamp(0px, 10vw / var(--board) * 10 * 970, var(--max) * 970);
  max-width: calc(100% - clamp(0px, 10vw / var(--board) * 10 * 80, var(--max) * 80));
  height: clamp(0px, 10vw / var(--board) * 10 * 111, var(--max) * 111);
  margin: clamp(0px, 10vw / var(--board) * 10 * 74, var(--max) * 74) auto 0;
  padding: 0 clamp(0px, 10vw / var(--board) * 10 * 18.42, var(--max) * 18.42) 0 clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  border: 1px solid var(--colorWhite);
  border-radius: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  background-color: rgba(255, 255, 255, 0.2);
  color: var(--colorWhite);
  text-decoration: none;
  transition: opacity 0.3s ease, background-color 0.3s ease;
}
.p-regulationEntry__btn[aria-disabled=true] {
  opacity: 0.5;
  pointer-events: none;
}
.p-regulationEntry__btnText {
  flex: 1;
  font-family: var(--fontGothic);
  font-weight: var(--weightRegular);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 27, var(--max) * 27);
  line-height: 1;
  letter-spacing: 0.07em;
  text-align: center;
}
.p-regulationEntry__btnArrow {
  flex-shrink: 0;
  width: clamp(0px, 10vw / var(--board) * 10 * 60.14, var(--max) * 60.14);
  height: clamp(0px, 10vw / var(--board) * 10 * 59.36, var(--max) * 59.36);
  background: url("../image/creative-regulation/entry_arrow.svg") no-repeat center/contain;
}
.p-regulationEntry + .footer {
  margin-top: clamp(var(--max) * -80, 10vw / var(--board) * 10 * -80, 0px);
  z-index: 1;
}

/* =================================================
 * トップページ p-home
 * ================================================= */
.p-home {
  position: relative;
  background-color: var(--colorBg);
}

/* =====================================
 * MV
 * ===================================== */
.p-homeMv {
  position: relative;
  z-index: 1;
  width: 100%;
  aspect-ratio: 1920/1352;
  overflow: hidden;
  background-color: #b8bdc1;
  color: var(--colorWhite);
}
.p-homeMv__bg {
  position: absolute;
  inset: 0;
  z-index: 1;
  background-color: #B8BDC1;
  will-change: transform;
  padding-top: clamp(0px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
}
.p-homeMv__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transform: scale(1.08);
  transform-origin: center center;
}
.p-homeMv__logo {
  position: absolute;
  top: clamp(24px, 10vw / var(--board) * 10 * 38, var(--max) * 38);
  left: clamp(16px, 10vw / var(--board) * 10 * 81, var(--max) * 81);
  z-index: 4;
}
.p-homeMv__logo img {
  width: clamp(64px, 10vw / var(--board) * 10 * 104, var(--max) * 104);
  height: auto;
}
.p-homeMv__catchTop, .p-homeMv__catchBottom {
  position: absolute;
  z-index: 2;
  margin: 0;
  font-family: var(--fontDisplay);
  font-weight: var(--weightRegular);
  font-size: clamp(50px, 10vw / var(--board) * 10 * 130, var(--max) * 130);
  line-height: 1.0769230769;
  color: var(--colorWhite);
  text-transform: uppercase;
}
.p-homeMv__catchTop {
  top: clamp(120px, 10vw / var(--board) * 10 * 227, var(--max) * 227);
  left: clamp(16px, 10vw / var(--board) * 10 * 75, var(--max) * 75);
}
.p-homeMv__catchBottom {
  top: clamp(360px, 10vw / var(--board) * 10 * 629, var(--max) * 629);
  right: clamp(16px, 10vw / var(--board) * 10 * 25, var(--max) * 25);
  text-align: right;
}
.p-homeMv__lead {
  position: absolute;
  top: clamp(600px, 10vw / var(--board) * 10 * 784, var(--max) * 784);
  left: clamp(16px, 10vw / var(--board) * 10 * 75, var(--max) * 75);
  z-index: 3;
  width: clamp(280px, 10vw / var(--board) * 10 * 342, var(--max) * 342);
  margin: 0;
  font-family: var(--fontGothic);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 15, var(--max) * 15);
  line-height: 1.4666666667;
  color: var(--colorWhite);
}
.p-homeMv__logoText {
  position: absolute;
  top: clamp(380px, 10vw / var(--board) * 10 * 537, var(--max) * 537);
  left: clamp(16px, 10vw / var(--board) * 10 * 75, var(--max) * 75);
  z-index: 3;
  width: clamp(280px, 10vw / var(--board) * 10 * 525, var(--max) * 525);
}
.p-homeMv__logoText img {
  width: 100%;
  height: auto;
}
.p-homeMv__sideText {
  position: absolute;
  top: clamp(160px, 10vw / var(--board) * 10 * 236, var(--max) * 236);
  right: clamp(24px, 10vw / var(--board) * 10 * 80, var(--max) * 80);
  z-index: 3;
  width: clamp(12px, 10vw / var(--board) * 10 * 19, var(--max) * 19);
}
.p-homeMv__sideText__line {
  position: absolute;
  top: 0;
  left: 50%;
  width: 1px;
  height: clamp(28px, 10vw / var(--board) * 10 * 43, var(--max) * 43);
  transform: translateX(-50%);
}
.p-homeMv__sideText__line::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--colorWhite);
  animation: homeMvLineScroll 2.4s cubic-bezier(0.65, 0, 0.35, 1) infinite;
  transform-origin: top center;
}
.p-homeMv__sideText__text {
  width: 100%;
  height: auto;
}

@keyframes homeMvLineScroll {
  0% {
    transform: scaleY(0);
    transform-origin: top center;
  }
  50% {
    transform: scaleY(1);
    transform-origin: top center;
  }
  50.001% {
    transform-origin: bottom center;
  }
  100% {
    transform: scaleY(0);
    transform-origin: bottom center;
  }
}
/* =====================================
 * Intro Bridge
 * ===================================== */
.p-homeIntro {
  position: relative;
  z-index: 2;
  width: 100%;
  padding: clamp(480px, 10vw / var(--board) * 10 * 785, var(--max) * 785) 0 clamp(30px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
  overflow: hidden;
  background-color: #B8BDC1;
}
.p-homeIntro__bg {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  inset: 0;
  z-index: 1;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.5s ease;
}
.p-homeIntro__bg.is-visible {
  opacity: 1;
}
.p-homeIntro__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-homeIntro__catchEn {
  position: absolute;
  top: clamp(80px, 10vw / var(--board) * 10 * 249, var(--max) * 249);
  left: clamp(24px, 10vw / var(--board) * 10 * 226, var(--max) * 226);
  z-index: 2;
  width: clamp(320px, 10vw / var(--board) * 10 * 764, var(--max) * 764);
}
.p-homeIntro__catchEn img {
  width: 100%;
  height: auto;
}
.p-homeIntro__catchJa {
  position: absolute;
  top: clamp(240px, 10vw / var(--board) * 10 * 528, var(--max) * 528);
  left: clamp(24px, 10vw / var(--board) * 10 * 233, var(--max) * 233);
  z-index: 2;
  width: clamp(280px, 10vw / var(--board) * 10 * 597, var(--max) * 597);
}
.p-homeIntro__catchJa img {
  width: 100%;
  height: auto;
}
.p-homeIntro__textWrap {
  position: relative;
  z-index: 3;
  margin-left: clamp(24px, 10vw / var(--board) * 10 * 225, var(--max) * 225);
  width: clamp(280px, 10vw / var(--board) * 10 * 379, var(--max) * 379);
  padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 200, var(--max) * 200);
}
.p-homeIntro__text {
  margin: 0;
  font-family: var(--fontGothic);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 22, var(--max) * 22);
  letter-spacing: 0.07em;
  line-height: 2.7272727273;
  color: var(--colorBlack);
}
.p-homeIntro__text + .p-homeIntro__text {
  margin-top: clamp(30px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
}

/* =====================================
 * About
 * ===================================== */
.p-homeAbout {
  position: relative;
  z-index: 3;
  width: 100%;
  height: clamp(0px, 10vw / var(--board) * 10 * 1420, var(--max) * 1420);
  overflow: hidden;
  background-color: #07002a;
  color: var(--colorWhite);
}
.p-homeAbout::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  width: 100%;
  height: clamp(0px, 10vw / var(--board) * 10 * 300, var(--max) * 300);
  background-color: #000;
}
.p-homeAbout__bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1;
  width: clamp(0px, 10vw / var(--board) * 10 * 1770, var(--max) * 1770);
  height: clamp(0px, 10vw / var(--board) * 10 * 1420, var(--max) * 1420);
}
.p-homeAbout__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-homeAbout__textBox {
  position: absolute;
  top: clamp(0px, 10vw / var(--board) * 10 * 456, var(--max) * 456);
  right: 0;
  z-index: 2;
  width: clamp(0px, 10vw / var(--board) * 10 * 960, var(--max) * 960);
  height: clamp(0px, 10vw / var(--board) * 10 * 847, var(--max) * 847);
  padding: clamp(40px, 10vw / var(--board) * 10 * 145, var(--max) * 145) clamp(24px, 10vw / var(--board) * 10 * 195, var(--max) * 195) clamp(40px, 10vw / var(--board) * 10 * 60, var(--max) * 60) clamp(24px, 10vw / var(--board) * 10 * 125, var(--max) * 125);
  background-color: rgba(0, 0, 0, 0.5);
  color: var(--colorWhite);
}
.p-homeAbout__lead {
  margin: 0;
  font-family: var(--fontGothic);
  font-size: clamp(18px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  letter-spacing: 0.07em;
  line-height: 1.3333333333;
}
.p-homeAbout__ttl {
  margin: clamp(16px, 10vw / var(--board) * 10 * 32, var(--max) * 32) 0 0;
  font-family: var(--fontDisplay);
  font-weight: var(--weightRegular);
  font-size: clamp(80px, 10vw / var(--board) * 10 * 180, var(--max) * 180);
  letter-spacing: -0.009em;
  line-height: 1;
  color: var(--colorWhite);
}
.p-homeAbout__desc {
  margin: clamp(24px, 10vw / var(--board) * 10 * 40, var(--max) * 40) 0 0;
  width: clamp(0px, 10vw / var(--board) * 10 * 534, var(--max) * 534);
  font-family: var(--fontGothic);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  letter-spacing: 0.07em;
  line-height: 2.2;
  color: var(--colorWhite);
}
.p-homeAbout__link {
  margin: clamp(30px, 10vw / var(--board) * 10 * 60, var(--max) * 60) 0 0;
}
.p-homeAbout__movieBox {
  position: absolute;
  top: clamp(0px, 10vw / var(--board) * 10 * 620, var(--max) * 620);
  right: clamp(24px, 10vw / var(--board) * 10 * 918, var(--max) * 918);
  z-index: 3;
  width: clamp(0px, 10vw / var(--board) * 10 * 777, var(--max) * 777);
}
.p-homeAbout__movieTtl {
  margin: 0 0 clamp(16px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  font-family: var(--fontDisplay);
  font-weight: var(--weightRegular);
  font-size: clamp(32px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
  letter-spacing: 0;
  line-height: 2.35;
  color: var(--colorWhite);
}
.p-homeAbout__movie {
  width: 100%;
  aspect-ratio: 777/437;
  overflow: hidden;
}
.p-homeAbout__movie iframe {
  width: 100%;
  height: 100%;
}

/* =====================================
 * Award
 * ===================================== */
.p-homeAward {
  position: relative;
  z-index: 4;
  background-color: var(--colorBgDark);
  color: var(--colorWhite);
}
.p-homeAward__bigTtl, .p-homeAward .p-homeAwardItem__bigTtl {
  position: absolute;
  top: calc(50% - 2.3em);
  left: clamp(24px, 10vw / var(--board) * 10 * 75, var(--max) * 75);
  z-index: 3;
  margin: 0;
  font-family: var(--fontDisplay);
  font-weight: var(--weightRegular);
  font-size: clamp(0px, 10vw / var(--board) * 10 * 180, var(--max) * 180);
  letter-spacing: -0.01em;
  line-height: 1;
  color: var(--colorWhite);
  pointer-events: none;
}
.p-homeAward .p-homeAwardItem__bigTtl {
  display: none;
}
.p-homeAward__intro {
  position: relative;
  width: 100%;
  height: clamp(0px, 10vw / var(--board) * 10 * 1080, var(--max) * 1080);
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-homeAward__introInner {
  position: relative;
  z-index: 2;
  width: clamp(0px, 10vw / var(--board) * 10 * 1460, var(--max) * 1460);
  margin: auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.p-homeAward__bg {
  position: absolute;
  inset: 0;
  z-index: 1;
}
.p-homeAward__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-homeAward__introImg {
  width: clamp(0px, 10vw / var(--board) * 10 * 655, var(--max) * 655);
  height: clamp(0px, 10vw / var(--board) * 10 * 655, var(--max) * 655);
}
.p-homeAward__introImg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-homeAward__introText {
  width: clamp(0px, 10vw / var(--board) * 10 * 575, var(--max) * 575);
  color: var(--colorWhite);
}
.p-homeAward__introLead {
  margin: 0 0 clamp(12px, 10vw / var(--board) * 10 * 22, var(--max) * 22);
  font-family: var(--fontGothic);
  font-size: clamp(18px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  letter-spacing: 0.07em;
  line-height: 1.3333333333;
  text-align: left;
}
.p-homeAward__introDesc {
  position: relative;
  margin: 0;
  padding-top: clamp(12px, 10vw / var(--board) * 10 * 22, var(--max) * 22);
  font-family: var(--fontGothic);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  letter-spacing: 0.07em;
  line-height: 2.2;
}
.p-homeAward__introDesc::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: clamp(100px, 10vw / var(--board) * 10 * 186, var(--max) * 186);
  height: 1px;
  background-color: var(--colorWhite);
}
.p-homeAward__nav {
  position: absolute;
  bottom: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  left: 50%;
  z-index: 2;
  margin: 0;
  text-align: center;
  font-family: var(--fontGothic);
  font-size: clamp(12px, 10vw / var(--board) * 10 * 14, var(--max) * 14);
  letter-spacing: 0.07em;
  color: var(--colorWhite);
  transform: translateX(-50%);
  white-space: nowrap;
}
.p-homeAward__navItem {
  opacity: 0.4;
  transition: opacity 0.3s ease;
}
.p-homeAward__navItem.is-active {
  opacity: 1;
}
.p-homeAward__navSep {
  opacity: 0.4;
}

/* Award #01 / #02 / #03 共通 */
.p-homeAwardItem {
  position: relative;
  width: 100%;
  height: clamp(0px, 10vw / var(--board) * 10 * 1080, var(--max) * 1080);
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
}
.p-homeAwardItem__bg {
  position: absolute;
  inset: 0;
  z-index: 1;
}
.p-homeAwardItem__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-homeAwardItem__photo {
  width: clamp(0px, 10vw / var(--board) * 10 * 655, var(--max) * 655);
  height: clamp(0px, 10vw / var(--board) * 10 * 655, var(--max) * 655);
}
.p-homeAwardItem__photo img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-homeAwardItem__num {
  position: absolute;
  top: 0;
  left: auto;
  right: 0;
  z-index: 2;
  margin: 0;
  opacity: 0.25;
  pointer-events: none;
}
.p-homeAwardItem__num img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-homeAwardItem.--creative .p-homeAwardItem__num {
  right: clamp(24px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  top: clamp(0px, 10vw / var(--board) * 10 * 70, var(--max) * 70);
  width: clamp(220px, 10vw / var(--board) * 10 * 607, var(--max) * 607);
  height: clamp(172px, 10vw / var(--board) * 10 * 475, var(--max) * 475);
}
.p-homeAwardItem.--salon .p-homeAwardItem__num {
  right: clamp(var(--max) * -140, 10vw / var(--board) * 10 * -140, 0px);
  width: clamp(280px, 10vw / var(--board) * 10 * 772, var(--max) * 772);
  height: clamp(168px, 10vw / var(--board) * 10 * 464, var(--max) * 464);
}
.p-homeAwardItem.--selfie .p-homeAwardItem__num {
  right: clamp(var(--max) * -140, 10vw / var(--board) * 10 * -140, 0px);
  width: clamp(276px, 10vw / var(--board) * 10 * 764, var(--max) * 764);
  height: clamp(162px, 10vw / var(--board) * 10 * 450, var(--max) * 450);
}
.p-homeAwardItem__text {
  width: clamp(0px, 10vw / var(--board) * 10 * 627, var(--max) * 627);
  color: var(--colorWhite);
  text-align: right;
}
.p-homeAwardItem__lead {
  margin: 0;
  font-family: var(--fontGothic);
  font-size: clamp(18px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  letter-spacing: 0.07em;
  line-height: 1.3333333333;
}
.p-homeAwardItem__ttl {
  margin: clamp(6px, 10vw / var(--board) * 10 * 10, var(--max) * 10) 0 0;
  font-family: var(--fontDisplay);
  font-weight: var(--weightRegular);
  font-size: clamp(36px, 10vw / var(--board) * 10 * 68, var(--max) * 68);
  letter-spacing: -0.01em;
  line-height: 1.2058823529;
  text-transform: uppercase;
  color: var(--colorWhite);
}
.p-homeAwardItem__desc {
  margin: clamp(12px, 10vw / var(--board) * 10 * 14, var(--max) * 14) 0 0 auto;
  width: clamp(0px, 10vw / var(--board) * 10 * 597, var(--max) * 597);
  font-family: var(--fontGothic);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  letter-spacing: 0.07em;
  line-height: 2.2;
}
.p-homeAwardItem__link {
  margin: clamp(24px, 10vw / var(--board) * 10 * 40, var(--max) * 40) 0 0;
  display: flex;
  justify-content: flex-end;
}

/* =====================================
 * Judge
 * ===================================== */
.p-homeJudge {
  position: relative;
  z-index: 5;
  width: 100%;
  height: clamp(0px, 10vw / var(--board) * 10 * 1244, var(--max) * 1244);
  overflow: hidden;
  background-color: var(--colorWhite);
  color: var(--colorBlack);
}
.p-homeJudge__bgText {
  position: absolute;
  inset: 0;
  z-index: 1;
  margin: 0;
  pointer-events: none;
}
.p-homeJudge__bgText span {
  position: absolute;
  font-family: var(--fontDisplay);
  font-weight: var(--weightRegular);
  color: #f2f2f2;
  letter-spacing: -0.009em;
  line-height: 1;
}
.p-homeJudge__bgText span:first-child {
  top: clamp(0px, 10vw / var(--board) * 10 * 247, var(--max) * 247);
  left: clamp(0px, 10vw / var(--board) * 10 * 17, var(--max) * 17);
  font-size: clamp(180px, 10vw / var(--board) * 10 * 400, var(--max) * 400);
  writing-mode: vertical-rl;
}
.p-homeJudge__bgText span:last-child {
  top: 0;
  right: clamp(0px, 10vw / var(--board) * 10 * 27, var(--max) * 27);
  font-size: clamp(320px, 10vw / var(--board) * 10 * 800, var(--max) * 800);
}
.p-homeJudge__text {
  position: absolute;
  top: clamp(0px, 10vw / var(--board) * 10 * 334, var(--max) * 334);
  left: clamp(24px, 10vw / var(--board) * 10 * 225, var(--max) * 225);
  z-index: 3;
  width: clamp(0px, 10vw / var(--board) * 10 * 623, var(--max) * 623);
  color: var(--colorBlack);
}
.p-homeJudge__lead {
  margin: 0;
  font-family: var(--fontGothic);
  font-size: clamp(18px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  letter-spacing: 0.07em;
  line-height: 1.4666666667;
}
.p-homeJudge__ttl {
  margin: clamp(6px, 10vw / var(--board) * 10 * 8, var(--max) * 8) 0 0;
  font-family: var(--fontDisplay);
  font-weight: var(--weightRegular);
  font-size: clamp(80px, 10vw / var(--board) * 10 * 180, var(--max) * 180);
  letter-spacing: -0.01em;
  line-height: 1;
  color: var(--colorBlack);
}
.p-homeJudge__desc {
  margin: clamp(24px, 10vw / var(--board) * 10 * 40, var(--max) * 40) 0 0;
  font-family: var(--fontGothic);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  letter-spacing: 0.07em;
  line-height: 2.2;
  color: var(--colorBlack);
}
.p-homeJudge__link {
  margin: clamp(24px, 10vw / var(--board) * 10 * 40, var(--max) * 40) 0 0;
}
.p-homeJudge__photo {
  position: absolute;
  top: clamp(0px, 10vw / var(--board) * 10 * 325, var(--max) * 325);
  right: clamp(24px, 10vw / var(--board) * 10 * 280, var(--max) * 280);
  z-index: 3;
  width: clamp(0px, 10vw / var(--board) * 10 * 570, var(--max) * 570);
  height: clamp(0px, 10vw / var(--board) * 10 * 754, var(--max) * 754);
}
.p-homeJudge__photo img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

/* =====================================
 * Archives
 * ===================================== */
.p-homeArchives {
  position: relative;
  z-index: 6;
  width: 100%;
  height: clamp(0px, 10vw / var(--board) * 10 * 1059, var(--max) * 1059);
  overflow: hidden;
  background-color: #4a4a4a;
  color: var(--colorWhite);
}
.p-homeArchives__bg {
  position: absolute;
  inset: 0;
  z-index: 1;
}
.p-homeArchives__bg img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-homeArchives__inner {
  position: absolute;
  top: clamp(0px, 10vw / var(--board) * 10 * 414, var(--max) * 414);
  left: clamp(24px, 10vw / var(--board) * 10 * 1039, var(--max) * 1039);
  z-index: 3;
  width: clamp(0px, 10vw / var(--board) * 10 * 665, var(--max) * 665);
  color: var(--colorWhite);
}
.p-homeArchives__lead {
  margin: 0;
  font-family: var(--fontGothic);
  font-size: clamp(18px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  letter-spacing: 0.07em;
  line-height: 1.3333333333;
  text-align: center;
}
.p-homeArchives__ttl {
  margin: clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20) 0 0;
  font-family: var(--fontDisplay);
  font-weight: var(--weightRegular);
  font-size: clamp(80px, 10vw / var(--board) * 10 * 180, var(--max) * 180);
  letter-spacing: -0.01em;
  line-height: 1;
  color: var(--colorWhite);
  text-align: center;
}
.p-homeArchives__desc {
  margin: clamp(24px, 10vw / var(--board) * 10 * 40, var(--max) * 40) 0 0;
  font-family: var(--fontGothic);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  letter-spacing: 0.07em;
  line-height: 2;
  text-align: right;
}
.p-homeArchives__link {
  margin: clamp(24px, 10vw / var(--board) * 10 * 40, var(--max) * 40) 0 0;
  display: flex;
  justify-content: flex-end;
}

/* =====================================
 * Pamphlet
 * ===================================== */
.p-homePamphlet {
  position: relative;
  z-index: 7;
  width: 100%;
  padding: clamp(80px, 10vw / var(--board) * 10 * 166, var(--max) * 166) 0 clamp(90px, 10vw / var(--board) * 10 * 182, var(--max) * 182);
  background: linear-gradient(to bottom, #fff 0, #fff clamp(180px, 10vw / var(--board) * 10 * 335, var(--max) * 335), #f2f2f2 clamp(180px, 10vw / var(--board) * 10 * 335, var(--max) * 335), #f2f2f2 100%);
  overflow: hidden;
}
.p-homePamphlet__bgText {
  position: absolute;
  inset: 0;
  z-index: 1;
  margin: 0;
  pointer-events: none;
  transform: translateY(clamp(30px, 10vw / var(--board) * 10 * 60, var(--max) * 60));
}
.p-homePamphlet__bgText span {
  position: absolute;
  font-family: var(--fontDisplay);
  font-weight: var(--weightRegular);
  font-size: clamp(160px, 10vw / var(--board) * 10 * 400, var(--max) * 400);
  letter-spacing: -0.01em;
  line-height: 1;
  color: #e6e6e6;
  white-space: nowrap;
}
.p-homePamphlet__bgText span:first-child {
  bottom: clamp(380px, 10vw / var(--board) * 10 * 771, var(--max) * 771);
  left: clamp(0px, 10vw / var(--board) * 10 * 1056, var(--max) * 1056);
}
.p-homePamphlet__bgText span:last-child {
  bottom: 0;
  left: clamp(var(--max) * -869, 10vw / var(--board) * 10 * -869, -200px);
}
.p-homePamphlet__inner {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: clamp(0px, 10vw / var(--board) * 10 * 716, var(--max) * 716) 1fr;
  gap: clamp(30px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  width: 100%;
  max-width: clamp(0px, 10vw / var(--board) * 10 * 1900, var(--max) * 1900);
  padding: 0 0 0 clamp(24px, 10vw / var(--board) * 10 * 225, var(--max) * 225);
  margin: 0 auto;
}
.p-homePamphlet__text {
  position: relative;
  z-index: 2;
  color: var(--colorBlack);
}
.p-homePamphlet__lead {
  margin: 0 0 clamp(12px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  font-family: var(--fontGothic);
  font-size: clamp(18px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
  letter-spacing: 0.07em;
  line-height: 1.4666666667;
}
.p-homePamphlet__ttl {
  margin: 0;
  font-family: var(--fontDisplay);
  font-weight: var(--weightRegular);
  font-size: clamp(70px, 10vw / var(--board) * 10 * 180, var(--max) * 180);
  letter-spacing: -0.01em;
  line-height: 1;
  color: var(--colorBlack);
}
.p-homePamphlet__desc {
  margin: clamp(30px, 10vw / var(--board) * 10 * 60, var(--max) * 60) 0 0;
  font-family: var(--fontGothic);
  font-size: clamp(14px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  letter-spacing: 0.07em;
  line-height: 2.2;
}
.p-homePamphlet__yearList {
  display: grid;
  grid-template-columns: repeat(3, max-content);
  gap: clamp(8px, 10vw / var(--board) * 10 * 14, var(--max) * 14) clamp(22px, 10vw / var(--board) * 10 * 40, var(--max) * 40);
  margin: clamp(24px, 10vw / var(--board) * 10 * 40, var(--max) * 40) 0 0;
}
.p-homePamphlet__yearList button {
  font-family: var(--fontDisplay);
  font-size: clamp(18px, 10vw / var(--board) * 10 * 27, var(--max) * 27);
  letter-spacing: 0.07em;
  color: var(--colorBlack);
  transition: opacity var(--speed), color var(--speed);
}
.p-homePamphlet__yearList button.is-current {
  color: #939393;
}
.p-homePamphlet__move {
  display: flex;
  gap: clamp(14px, 10vw / var(--board) * 10 * 24, var(--max) * 24);
  margin: clamp(24px, 10vw / var(--board) * 10 * 60, var(--max) * 60) 0 0;
}
.p-homePamphlet__move button {
  width: clamp(56px, 10vw / var(--board) * 10 * 115, var(--max) * 115);
  height: clamp(56px, 10vw / var(--board) * 10 * 115, var(--max) * 115);
  transition: opacity var(--speed);
}
.p-homePamphlet__move button img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
}
.p-homePamphlet__sliderWrap {
  position: relative;
  z-index: 1;
  margin-left: calc(-1 * (clamp(0px, 10vw / var(--board) * 10 * 716, var(--max) * 716) + clamp(30px, 10vw / var(--board) * 10 * 40, var(--max) * 40)));
  width: calc(100% + clamp(0px, 10vw / var(--board) * 10 * 716, var(--max) * 716) + clamp(30px, 10vw / var(--board) * 10 * 40, var(--max) * 40));
  align-self: start;
  padding-top: clamp(40px, 10vw / var(--board) * 10 * 479, var(--max) * 479);
}
.p-homePamphlet__slider {
  width: 56.56vw;
  margin-left: auto;
}
.p-homePamphlet__slider .splide__track {
  overflow: hidden;
}
.p-homePamphlet__slider .splide__list {
  align-items: flex-start;
}
.p-homePamphlet__slider .splide__slide a {
  display: block;
  transform: scale(0.83);
  transform-origin: right center;
  transition: transform 0.3s, opacity 0.3s;
}
.p-homePamphlet__slider .splide__slide.is-active a {
  transform: scale(1);
}
.p-homePamphlet__slider .splide__slide.p-homePamphlet__sliderEmpty {
  width: 29.6875vw !important;
}
.p-homePamphlet__sliderImg {
  width: 100%;
  aspect-ratio: 476/641;
  overflow: hidden;
  padding: clamp(24px, 10vw / var(--board) * 10 * 72, var(--max) * 72) clamp(16px, 10vw / var(--board) * 10 * 66, var(--max) * 66) clamp(24px, 10vw / var(--board) * 10 * 82, var(--max) * 82);
  background-color: var(--colorWhite);
}
.p-homePamphlet__sliderImg img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-homePamphlet__sliderTtl {
  display: none;
}

@media (min-width: 769px){
  .m-mvPlate[data-width-pc]:not([data-width-pc=false]) {
    width: clamp(0px, 10vw / var(--board) * 10 * attr(data-width-pc type(<number>), 882), var(--max) * attr(data-width-pc type(<number>), 882));
  }
  .gNavBtn {
    display: none;
  }
  .gNav {
    display: none;
  }
  .p-homeAward {
    height: 400vh;
  }
  .p-homeAward__sticky {
    position: sticky;
    top: var(--headerH, 0px);
    height: calc(100vh - var(--headerH, 0px));
    overflow: hidden;
  }
  .p-homeAward__track {
    display: flex;
    width: 400vw;
    height: calc(100vh - var(--headerH, 0px));
    will-change: transform;
  }
  .p-homeAward__intro {
    flex-shrink: 0;
    overflow: visible;
    width: 100vw;
    height: calc(100vh - var(--headerH, 0px));
  }
  .p-homeAwardItem {
    flex-shrink: 0;
    overflow: visible;
    width: 100vw;
    height: calc(100vh - var(--headerH, 0px));
  }
  .u-sp {
    display: none !important;
  }
  .pc-none {
    display: none !important;
  }
}

@media (max-width: 768px){
  :root {
    --board: 750;
    --max: 9999px;
  }
  html {
    font-size: 0.1333333333vw;
  }
  *,
  *::before,
  *::after {
    max-width: 100%;
  }
  .m-aboutWhatHead {
    width: 100%;
    top: 0;
    margin-top: -11.6vw;
  }
  .m-aboutWhatHead__lead {
    margin: 0;
    padding-left: 3.94vw;
    font-size: 4vw;
    line-height: 1.4666666667;
    letter-spacing: 0.07em;
  }
  .m-aboutWhatHead__ttl {
    margin: 2.9333333333vw 0 0 4.6666666667vw;
    font-size: 13.3333333333vw;
    line-height: 0.9;
    letter-spacing: -0.01em;
  }
  .m-mvBase {
    padding: 0;
    height: 160vw;
  }
  .m-mvBase .m-mvPhoto {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .m-mvBase .m-mvPlate {
    left: -18.8vw;
    top: 142.8vw;
    bottom: auto;
    width: 68.8vw;
    height: 46.6666666667vw;
  }
  .m-mvBase .m-mvScroll {
    top: 127.4466666667vw;
    bottom: auto;
    right: 3.6666666667vw;
    width: 5.4vw;
    height: 38.3333333333vw;
    font-size: 3.3333333333vw;
  }
  .m-mvBase .m-mvScroll span {
    font-size: 3.3333333333vw;
    letter-spacing: 0.06em;
  }
  .m-mvBase .m-mvBreadcrumb {
    top: 100%;
    right: 4.6666666667vw;
    margin-top: 2.6666666667vw;
    font-size: 2.6666666667vw;
  }
  .m-mvPhoto {
    aspect-ratio: 750/1200;
  }
  .m-mvPhoto img {
    transform: none;
    -o-object-position: center;
       object-position: center;
  }
  .m-mvPlate[data-width-sp]:not([data-width-sp=false]) {
    width: calc(attr(data-width-sp type(<number>), 516) / 750 * 100vw);
  }
  .header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    padding: 5.3333333333vw 4.6666666667vw 0;
    background-color: transparent;
    color: var(--colorWhite);
    align-items: flex-start;
  }
  .header .header__logo {
    visibility: visible;
  }
  .header .header__logo img {
    content: url("../image/common/logo-white.svg");
    width: 10vw;
    height: auto;
    filter: brightness(0) invert(1);
  }
  .header.--light {
    background-color: transparent;
  }
  .header.--top.is-fixed {
    background-color: transparent;
    animation: none;
  }
  .header.--top.is-fixed .header__logo img {
    filter: brightness(0) invert(1);
  }
  .header.--top {
    position: fixed;
  }
  .header.--top .header__logo {
    visibility: visible;
  }
  .header__nav {
    display: none;
  }
  .header__subMenu {
    display: none;
  }
  .gNavBtn {
    top: 5.3333333333vw;
    right: 4.6666666667vw;
  }
  .gNavBtn__btn {
    width: 6.4vw;
    height: 5.0666666667vw;
    border-radius: 0;
    background-color: transparent;
  }
  .gNavBtn__btn span {
    left: 0;
    width: 100%;
    height: 2px;
    background-color: var(--colorWhite);
    box-shadow: 0 0 clamp(0px, 10vw / var(--board) * 10 * 10, var(--max) * 10) rgba(0, 0, 0, 0.2);
  }
  .gNavBtn__btn span:nth-child(1) {
    top: 0;
    transform: none;
  }
  .gNavBtn__btn span:nth-child(2) {
    top: 50%;
    transform: translateY(-50%);
  }
  .gNavBtn__btn span:nth-child(3) {
    top: auto;
    bottom: 0;
    transform: none;
  }
  .is-menuActive .gNavBtn__btn span:nth-child(1) {
    top: 50%;
    bottom: auto;
    transform: translateY(-50%) rotate(45deg);
  }
  .is-menuActive .gNavBtn__btn span:nth-child(2) {
    opacity: 0;
  }
  .is-menuActive .gNavBtn__btn span:nth-child(3) {
    top: 50%;
    bottom: auto;
    transform: translateY(-50%) rotate(-45deg);
  }
  .gNav {
    padding: 0;
    height: 100dvh;
    background-color: #707070;
  }
  .gNav-spLogo {
    margin: 0;
    padding: 4.8vw 0 0;
    text-align: center;
  }
  .gNav-spLogo a {
    display: inline-block;
    line-height: 0;
  }
  .gNav-spLogo img {
    margin-bottom: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
    width: 10.1333333333vw;
    height: auto;
    filter: brightness(0) invert(1);
  }
  .gNav-primary {
    margin: 0.1333333333vw 0 0;
    padding: 0;
    border-top: 1px solid rgb(255, 255, 255);
  }
  .gNav-primary > li {
    position: relative;
    padding: 0;
    border-bottom: 1px solid rgb(255, 255, 255);
  }
  .gNav-primary > li:last-of-type {
    border-bottom: 0;
  }
  .gNav-primary > li > a {
    display: flex;
    align-items: center;
    gap: 5.3333333333vw;
    padding: 0 7.7333333333vw;
    height: 17.3333333333vw;
    color: var(--colorWhite);
    letter-spacing: 0.07em;
    font-size: 3.4666666667vw;
    font-family: var(--fontGothic);
    line-height: 1;
  }
  .gNav-primary > li > a .__en {
    color: var(--colorWhite);
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 7.3333333333vw;
    font-family: var(--fontDisplay);
    line-height: 1;
  }
  .gNav-primary > li > a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 7.2vw;
    margin-top: -1.3333333333vw;
    width: 2.6666666667vw;
    height: 2.6666666667vw;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    transform: rotate(45deg);
  }
  .gNav-primary > li > span {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: 0 5.3333333333vw;
    padding: 6.1333333333vw 7.7333333333vw 4.8vw;
    color: var(--colorWhite);
    white-space: nowrap;
    letter-spacing: 0.07em;
    font-size: 3.4666666667vw;
    font-family: var(--fontGothic);
    line-height: 2.2307692308;
  }
  .gNav-primary > li > span .__en {
    color: var(--colorWhite);
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 7.3333333333vw;
    font-family: var(--fontDisplay);
    line-height: 1;
  }
  .gNav-primary > li:nth-child(5) > span {
    align-items: flex-start;
    flex-direction: column;
    gap: 1.3333333333vw;
    padding-bottom: 4.2666666667vw;
  }
  .gNav-subMenu {
    margin: 0 0 8.5333333333vw;
    padding: 0;
  }
  .gNav-subMenu__ttl {
    display: none;
  }
  .gNav-subMenu__img {
    display: none;
  }
  .gNav-subMenu__container {
    padding: 0;
  }
  .gNav-subMenu__cont {
    display: flex;
    flex-direction: column;
    gap: 3.2vw;
    padding: 0 7.7333333333vw;
  }
  .gNav-subMenu__cont > li {
    width: 100%;
  }
  .gNav-subMenu__cont a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 0;
    padding: 0;
    padding-left: clamp(0px, 10vw / var(--board) * 10 * 110, var(--max) * 110);
    width: 100%;
    height: 11.4666666667vw;
    border: none;
    border-radius: 0;
    background-color: #fff;
    color: #707070;
    letter-spacing: 0.07em;
    font-weight: 500;
    font-size: 3.3333333333vw;
    font-family: "Noto Sans JP", sans-serif;
    line-height: 1;
  }
  .gNav-subMenu__cont a::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 8.1333333333vw;
    width: 3.7333333333vw;
    height: 1px;
    background-color: #707070;
    transform: translateY(-50%);
  }
  .gNav-subMenu__cont a::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 5.0666666667vw;
    margin-top: -1.3333333333vw;
    width: 2.6666666667vw;
    height: 2.6666666667vw;
    border-top: 1px solid #707070;
    border-right: 1px solid #707070;
    transform: rotate(45deg);
  }
  .gNav-subMenu__contTtl {
    display: flex;
    flex-direction: column;
    color: #707070;
    font-size: 3.3333333333vw;
  }
  .gNav-subMenu__contTtl .__ja {
    display: none;
  }
  .gNav-subMenu__contTtl .__en {
    letter-spacing: 0.07em;
    font-weight: 500;
    font-size: 3.3333333333vw;
    font-family: "Noto Sans JP", sans-serif;
    line-height: 1;
    opacity: 1;
  }
  .gNav-instagramSp {
    margin: 5.3333333333vw auto 0;
    padding: 0 8vw 10.6666666667vw;
  }
  .gNav-instagramSp a {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2vw;
    width: 100%;
    height: 12.6666666667vw;
    border: 1px solid #fff;
    border-radius: 7.4666666667vw;
    background-color: transparent;
    color: #fff;
    letter-spacing: 0.07em;
    font-weight: 400;
    font-size: 4.6666666667vw;
    font-family: "Noto Sans JP", sans-serif;
    line-height: 1;
  }
  .gNav-instagramIcon {
    position: relative;
    display: inline-block;
    width: 5.0666666667vw;
    height: 5.0666666667vw;
    border: 2px solid currentColor;
    border-radius: 1.2vw;
  }
  .gNav-instagramIcon::before {
    content: "";
    position: absolute;
    border: 2px solid currentColor;
    border-radius: 50%;
    inset: 25%;
  }
  .gNav-instagramIcon::after {
    content: "";
    position: absolute;
    top: 13%;
    right: 13%;
    width: 12%;
    height: 12%;
    border-radius: 50%;
    background-color: currentColor;
  }
  .gNav-instagramLabel {
    display: inline-block;
  }
  .footer {
    position: relative;
    height: 176.6666666667vw;
    padding: 0;
  }
  .footer::before {
    content: "";
    position: absolute;
    top: 102.3333333333vw;
    left: 19.5333333333vw;
    width: 60.9333333333vw;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.25);
  }
  .footer::after {
    content: "";
    position: absolute;
    top: 147.9333333333vw;
    left: 19.5333333333vw;
    width: 60.9333333333vw;
    height: 1px;
    background-color: rgba(255, 255, 255, 0.25);
  }
  .footer__inner {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    padding: 0;
    margin: 0;
    gap: 0;
  }
  .footer__logo {
    position: absolute;
    top: 17.4906666667vw;
    left: 50%;
    transform: translateX(-50%);
    padding: 0;
    border: none;
  }
  .footer__logo img {
    width: 14.5958666667vw;
    height: auto;
  }
  .footer__main {
    display: contents;
  }
  .footer__related {
    display: contents;
  }
  .footer__related a {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
  }
  .footer__related .--lebel img,
  .footer__related .--takara img,
  .footer__related .--tbplus img {
    width: auto;
    height: auto;
  }
  .footer__related .--lebel {
    top: 109.7333333333vw;
  }
  .footer__related .--lebel img {
    width: 26.7338666667vw;
  }
  .footer__related .--takara {
    top: 121.2vw;
  }
  .footer__related .--takara img {
    width: 44.1149333333vw;
  }
  .footer__related .--tbplus {
    top: 132.8vw;
  }
  .footer__related .--tbplus img {
    width: 26.3024vw;
  }
  .footer__bottom {
    display: contents;
  }
  .footer__links {
    position: static;
    display: contents;
  }
  .footer__links li {
    position: absolute;
    left: 0;
    width: 100%;
    text-align: center;
  }
  .footer__links li:nth-child(1) {
    top: 47.4666666667vw;
  }
  .footer__links li:nth-child(2) {
    top: 55.8666666667vw;
  }
  .footer__links li:nth-child(3) {
    top: 64.4vw;
  }
  .footer__links li:nth-child(4) {
    top: 72.8vw;
  }
  .footer__links a {
    font-size: 3.2vw;
    line-height: 3.3333333333;
  }
  .footer__instagram {
    position: absolute;
    top: 85.7733333333vw;
    left: 50%;
    transform: translateX(-50%);
    width: 47.024vw;
    height: 8.2386666667vw;
    padding: 0;
    gap: 1.7333333333vw;
    border-radius: 4.8vw;
    justify-content: center;
    font-size: 3.3333333333vw;
  }
  .footer__instagramIcon {
    width: 4.1730666667vw;
    height: 4.1730666667vw;
  }
  .footer__copyright {
    position: absolute;
    top: 149.7053333333vw;
    left: 0;
    width: 100%;
    margin: 0;
    text-align: center;
    font-size: 2.6666666667vw;
    line-height: 4;
  }
  .p-aboutWhat {
    margin-top: 0;
    padding-bottom: 0;
  }
  .p-aboutWhat__body {
    padding: 6.5333333333vw 4.6666666667vw 0;
    max-width: none;
  }
  .p-aboutWhat__desc p {
    margin: 0;
    letter-spacing: 0.07em;
    font-size: 3.4666666667vw;
    line-height: 2.2307692308;
  }
  .p-aboutWhat__desc p br {
    display: none;
  }
  .p-aboutWhat__desc p + p {
    margin-top: 0;
  }
  .p-aboutMovie {
    padding: 8.1333333333vw 0 0;
  }
  .p-aboutMovie__inner {
    padding: 0 4.6666666667vw;
  }
  .p-aboutMovie__ttl {
    margin: 0 0 1.3333333333vw 1.3333333333vw;
    letter-spacing: -0.01em;
    font-size: 8vw;
    line-height: 2.349;
  }
  .p-aboutMovie__player {
    aspect-ratio: 680/382;
  }
  .p-aboutCatch {
    padding: 15.4666666667vw 0 14.4vw;
  }
  .p-aboutCatch__bg {
    top: clamp(var(--max) * -500, 10vw / var(--board) * 10 * -500, 0px);
    height: clamp(0px, 10vw / var(--board) * 10 * 2736, var(--max) * 2736);
    aspect-ratio: auto;
  }
  .p-aboutCatch__bg img {
    -o-object-position: center top;
       object-position: center top;
  }
  .p-aboutCatch__inner {
    padding: 0;
  }
  .p-aboutCatch__ttl {
    margin: 0 auto;
    width: 80.448vw;
  }
  .p-aboutCatch__ttlEn {
    margin: 7.8666666667vw auto 0;
    width: 66.5253333333vw;
  }
  .p-aboutCatch__desc {
    margin-top: 10.6666666667vw;
  }
  .p-aboutCatch__desc p {
    letter-spacing: 0.07em;
    font-size: 4vw;
    line-height: 2.2666666667;
  }
  .p-aboutCatch__desc p + p {
    margin-top: 9.0666666667vw;
  }
  .p-aboutCatch__desc p:last-of-type {
    margin-top: 0 !important;
  }
  .p-aboutAwards {
    margin-top: 0;
    padding: 11.0666666667vw 0 0;
    background-color: #fff;
  }
  .p-aboutAwards__bg3 {
    display: none;
  }
  .p-aboutAwards__head {
    padding: 0;
    text-align: center;
  }
  .p-aboutAwards__ttl {
    text-align: center;
    letter-spacing: -0.009em;
    font-size: 13.3333333333vw;
    line-height: 0.9;
  }
  .p-aboutAwards__navList {
    margin-top: 3.3333333333vw;
    text-align: center;
  }
  .p-aboutAwards__navList li {
    letter-spacing: 0.07em;
    font-size: 2.6666666667vw;
    line-height: 2.2;
  }
  .p-aboutAwards__cards {
    display: flex;
    flex-direction: column;
    gap: 6.6666666667vw;
    margin: 6.6666666667vw 0 0;
    padding: 0 4.6666666667vw;
    padding-bottom: clamp(0px, 10vw / var(--board) * 10 * 33, var(--max) * 33);
    width: 100%;
    height: auto;
  }
  .p-aboutAwards__card {
    position: relative;
    top: auto !important;
    left: auto !important;
    width: 100%;
    aspect-ratio: 680/1008;
    background-color: transparent;
  }
  .p-aboutAwards__card a {
    color: var(--colorWhite);
  }
  .p-aboutAwards__num {
    width: 13.8666666667vw;
    height: 13.8666666667vw;
    font-size: 3.6vw;
  }
  .p-aboutAwards__cardImg::after {
    top: 39.6825396825%;
  }
  .p-aboutAwards__cardText {
    bottom: 4.9603174603%;
    padding: 0 4.6666666667vw;
  }
  .p-aboutAwards__cardLead {
    letter-spacing: 0.07em;
    font-size: 3.6vw;
    line-height: 2.4444444444;
  }
  .p-aboutAwards__cardTtl {
    margin-top: 1.0666666667vw;
    font-size: 9.3333333333vw;
    line-height: 1.1285714286;
  }
  .p-aboutAwards__cardBtn {
    gap: 2.6666666667vw;
    margin-top: 4vw;
    padding: 0 3.6vw 0 18.1333333333vw;
    width: 52.9333333333vw;
    height: 10.6666666667vw;
    font-size: 3.0666666667vw;
  }
  .p-aboutAwards__cardBtn .m-linkBtn__arrow {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
  }
  .p-aboutHistory {
    aspect-ratio: 750/1368.57;
  }
  .p-aboutHistory__bg {
    position: absolute;
  }
  .p-aboutHistory__bg::after {
    background-color: rgba(0, 0, 0, 0.5);
  }
  .p-aboutHistory__head {
    position: absolute;
    top: 10.8142075305%;
    right: 0;
    left: 0;
  }
  .p-aboutHistory__lead {
    padding-left: 39.4666666667vw;
    letter-spacing: 0.07em;
    font-size: 4vw;
    line-height: 1.3333333333;
  }
  .p-aboutHistory__ttl {
    margin: 0.9333333333vw 0 0 0;
    text-align: center;
    letter-spacing: -0.01em;
    font-size: 13.3333333333vw;
    line-height: 1;
  }
  .p-aboutHistory__sub {
    display: flex;
    justify-content: center;
    width: 100%;
    height: clamp(0px, 10vw / var(--board) * 10 * 36, var(--max) * 36);
  }
  .p-aboutHistory__sub img {
    width: auto;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .p-aboutHistory__list {
    position: absolute;
    top: 32.8810364103%;
    right: 0;
    left: 5.4666666667vw;
  }
  .p-aboutHistory__item {
    margin-bottom: 8vw;
    -moz-column-gap: 3.7333333333vw;
         column-gap: 3.7333333333vw;
    grid-template-columns: 11.2vw 2.8vw 1fr;
  }
  .p-aboutHistory__year {
    padding-top: 0.2666666667vw;
    letter-spacing: 0.03em;
    font-size: 5.3333333333vw;
    line-height: 1;
  }
  .p-aboutHistory__bar {
    margin-top: 2.9333333333vw;
    height: 2px;
  }
  .p-aboutHistory__event {
    letter-spacing: 0.07em;
    font-size: 3.2vw;
    line-height: 1.8333333333;
  }
  .p-aboutHistory__bg::after {
    display: none;
  }
  .p-aboutBrand {
    padding: 30.5333333333vw 0 30.5333333333vw;
    height: auto;
    aspect-ratio: auto;
  }
  .p-aboutBrand__bgText {
    top: 73.3333333333vw;
    bottom: auto;
    left: calc(50% - clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30));
    z-index: 0;
    text-align: center;
    white-space: pre;
    letter-spacing: -0.009em;
    font-size: 41.4666666667vw;
    line-height: 0.8971061093;
    transform: translateX(-50%);
  }
  .p-aboutBrand__logo {
    position: static;
    margin: 0 auto;
    width: 41.4666666667vw;
  }
  .p-aboutBrand__text {
    position: static;
    margin: 7.8666666667vw 0 0;
    padding: 0 4.6666666667vw;
  }
  .p-aboutBrand__ttl {
    text-align: center;
    white-space: normal;
    letter-spacing: 0.07em;
    font-weight: 600;
    font-size: 3.3333333333vw;
    line-height: 1.6;
  }
  .p-aboutBrand__desc {
    margin-top: 7.6vw;
  }
  .p-aboutBrand__desc p {
    display: inline;
    letter-spacing: 0.07em;
    font-size: 3.4666666667vw;
    line-height: 2.2307692308;
  }
  .p-judge .m-aboutWhatHead {
    position: relative;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    margin-top: -11.7333333333vw;
    width: 100%;
    height: auto;
  }
  .p-judge .m-aboutWhatHead__lead {
    position: static;
    margin: 0;
    padding-left: 4.6666666667vw;
    letter-spacing: 0.07em;
    font-size: 4vw;
    line-height: 1.4666666667;
  }
  .p-judge .m-aboutWhatHead__ttl {
    position: static;
    margin: -3.6vw 0 0 5.7333333333vw;
    width: auto;
    letter-spacing: -0.01em;
    font-size: 13.3333333333vw;
    line-height: 1.8;
  }
  .p-judgeMv .m-mvPlate {
    top: 143.0666666667vw;
    left: 0;
    width: 50vw;
    height: 46.9333333333vw;
  }
  .p-judgeMv .m-mvBreadcrumb {
    display: none;
  }
  .p-judgeIntro {
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    margin: 0;
    padding: 0 4.6666666667vw;
    width: 100%;
    height: auto;
  }
  .p-judgeIntro__bgText {
    top: clamp(0px, 10vw / var(--board) * 10 * 105, var(--max) * 105);
    left: clamp(0px, 10vw / var(--board) * 10 * 330, var(--max) * 330);
    font-size: clamp(0px, 10vw / var(--board) * 10 * 400, var(--max) * 400);
  }
  .p-judgeIntro__text {
    position: static;
    display: flex;
    align-items: flex-start;
    flex-direction: column;
    margin: 0;
    width: 100%;
  }
  .p-judgeIntro__ttl {
    position: static;
    margin: 0;
    width: auto;
    color: var(--colorBlack);
    letter-spacing: -0.01em;
    font-size: 8vw;
    font-family: var(--fontDisplay);
    line-height: 1.5166666667;
  }
  .p-judgeIntro__tag {
    position: static;
    display: inline-flex;
    align-items: center;
    justify-content: flex-start;
    margin: 2.9333333333vw 0 0;
    padding: 0 0 0 6vw;
    width: 61.2vw;
    height: 7.7333333333vw;
    border: 1px solid #707070;
    background-color: var(--colorWhite);
    color: var(--colorBlack);
    white-space: nowrap;
    letter-spacing: 0.07em;
    font-size: 3.8666666667vw;
    font-family: var(--fontGothic);
    line-height: 1;
  }
  .p-judgeIntro__desc {
    position: static;
    margin: 8.2666666667vw 0 0;
    width: 90.6666666667vw;
  }
  .p-judgeIntro__desc p {
    display: block;
    margin: 0;
    color: var(--colorBlack);
    letter-spacing: 0.07em;
    font-size: 3.4666666667vw;
    font-family: var(--fontGothic);
    line-height: 2.2307692308;
  }
  .p-judgeIntro__photoMain {
    position: static;
    top: auto;
    left: auto;
    margin: 6.5333333333vw 0 0;
    width: 90.6666666667vw;
    aspect-ratio: 1/1;
  }
  .p-judgeCreative {
    padding-top: 8.9333333333vw;
    padding-bottom: 14.2666666667vw;
  }
  .p-judgeCreative__bgText {
    display: none;
  }
  .p-judgeCreative__inner {
    padding: 0 4.6666666667vw;
    width: 100%;
  }
  .p-judgeCreative__category {
    gap: 0;
    padding-left: 10.1333333333vw;
    white-space: nowrap;
    font-size: 8vw;
    line-height: 1.1833333333;
  }
  .p-judgeCreative__category + .p-judgeCreative__category {
    margin-top: 0;
  }
  .p-judgeCreative__category::before {
    position: absolute;
    top: 50%;
    left: 0;
    margin: 0;
    width: 6.2666666667vw;
    height: 3.3333333333vw;
    transform: translateY(-50%);
  }
  .p-judgeCreative__category::after {
    top: 50%;
    left: clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
    width: 4.6666666667vw;
    height: 1px;
    transform: translateY(-50%);
  }
  .p-judgeCreative__desc {
    margin-top: 6.2666666667vw;
    padding: 0;
  }
  .p-judgeCreative__desc p {
    letter-spacing: 0.07em;
    font-size: 3.4666666667vw;
    line-height: 2.1538461538;
  }
  .p-judgeCreative__list {
    margin: 0;
    margin-top: 15.0666666667vw;
    padding: 0;
    -moz-column-gap: 14.1333333333vw;
         column-gap: 14.1333333333vw;
    grid-template-columns: repeat(2, 38.1333333333vw);
    row-gap: 8.9333333333vw;
  }
  .p-judgeCard__date {
    top: -3.8666666667vw;
    right: 0;
    letter-spacing: 0.07em;
    font-size: 2.5333333333vw;
    line-height: 2.8421052632;
  }
  .p-judgeCard__bar {
    top: 0;
    width: 48.0454545455%;
    height: 4.632vw;
  }
  .p-judgeCard__photo {
    margin-top: 0;
  }
  .p-judgeCard__name {
    gap: 1.0666666667vw;
    margin: 2.4vw 0 0;
    letter-spacing: 0.07em;
    font-size: 3.6vw;
    line-height: 2.2222222222;
  }
  .p-judgeCard__logo img {
    width: calc(var(--logo-w) / 750 * 100vw);
  }
  .p-judgeSpecial {
    padding-top: 8.6666666667vw;
    padding-bottom: 0;
    color: var(--colorWhite);
  }
  .p-judgeSpecial__bg {
    display: block;
    width: 100%;
    height: 100%;
  }
  .p-judgeSpecial__bg::after {
    display: none;
  }
  .p-judgeSpecial__inner {
    flex-direction: column;
    padding: 0 4.6666666667vw;
    width: 100%;
  }
  .p-judgeSpecial__text {
    width: 100%;
  }
  .p-judgeSpecial__ttl {
    margin: 0;
    margin-left: -0.5333333333vw;
    width: 100%;
    white-space: nowrap;
    letter-spacing: -0.01em;
    font-size: 8vw;
    line-height: 1.7333333333;
  }
  .p-judgeSpecial__desc {
    margin-top: 3.8666666667vw;
    width: 100%;
  }
  .p-judgeSpecial__desc p {
    white-space: normal;
    letter-spacing: 0.07em;
    font-size: 3.4666666667vw;
    line-height: 2.2307692308;
  }
  .p-judgeSpecial__list {
    gap: 7.0666666667vw 10.6666666667vw;
    margin: 0;
    margin-top: 8.1333333333vw;
    width: 100%;
    grid-template-columns: repeat(2, 40vw);
  }
  .p-judgeSpecial__photoMain {
    display: none;
  }
  .p-judgeSpecialCard__photo {
    aspect-ratio: 300/411;
  }
  .p-judgeSpecialCard__name {
    margin: 2.9333333333vw 0 0;
    letter-spacing: 0.07em;
    font-size: 4.1333333333vw;
    line-height: 2;
  }
  .p-judgeSpecialCard__name img {
    width: calc(var(--logo-w) / 750 * 100vw);
  }
  .p-judgeSpecialCard__role {
    margin-top: 0.5333333333vw;
    letter-spacing: 0.07em;
    font-size: 2.9333333333vw;
    line-height: 1.6;
  }
  .p-judgeSpecialCard__year {
    gap: 1.3333333333vw;
    margin-top: 0.2666666667vw;
  }
  .p-judgeSpecialCard__year .__num {
    font-size: 4.1333333333vw;
  }
  .p-judgeSpecialCard__year .__label {
    font-size: 2.9333333333vw;
  }
  .p-judgeWiseman {
    padding-top: 21.0666666667vw;
    padding-bottom: 22.1333333333vw;
    color: var(--colorWhite);
  }
  .p-judgeWiseman__inner {
    align-items: stretch;
    flex-direction: column;
    padding: 0 4.6666666667vw;
    width: 100%;
  }
  .p-judgeWiseman__photoMain {
    display: none;
  }
  .p-judgeWiseman__info {
    align-items: stretch;
    width: 100%;
  }
  .p-judgeWiseman__ttl {
    margin: 0;
    width: 100%;
    text-align: left;
    white-space: nowrap;
    letter-spacing: -0.01em;
    font-size: 8vw;
    line-height: 2.08;
  }
  .p-judgeWiseman__info__inner {
    align-items: stretch;
    flex-direction: column;
    gap: 0;
    width: 100%;
  }
  .p-judgeWiseman__desc {
    margin-top: 2.8vw;
    width: 100%;
    text-align: left;
  }
  .p-judgeWiseman__desc p {
    white-space: normal;
    font-size: 3.4666666667vw;
    line-height: 2.2307692308;
  }
  .p-judgeWiseman__personCard {
    align-self: flex-start;
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
    width: 40.2266666667vw;
  }
  .p-judgeWiseman__personPhoto {
    aspect-ratio: 301.7/413.6;
  }
  .p-judgeWiseman__personPhoto img {
    position: static;
    max-width: 100%;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    -o-object-position: center;
       object-position: center;
  }
  .p-judgeWiseman__personName {
    display: flex;
    flex-wrap: wrap;
    gap: 1.0666666667vw;
    margin: 2.8vw 0 0;
    letter-spacing: 0.07em;
    font-size: 4vw;
    line-height: 2;
  }
  .p-judgeWiseman__personLogo img {
    width: 9.3333333333vw;
  }
  .p-judgeSalon {
    padding: 0;
    height: 123.7333333333vw;
  }
  .p-judgeSalon__panel {
    width: 100%;
    background-color: transparent;
  }
  .p-judgeSalon__inner {
    flex-direction: column;
    width: 100%;
  }
  .p-judgeSalon__text {
    padding: 15.0666666667vw 4.6666666667vw 0;
    width: 100%;
    color: var(--colorBlack);
  }
  .p-judgeSalon__category {
    gap: 0;
    padding-left: 10.5333333333vw;
    white-space: nowrap;
    font-size: 8vw;
    line-height: 1.7333333333;
  }
  .p-judgeSalon__category::before {
    position: absolute;
    top: 50%;
    left: 0;
    margin: 0;
    margin-right: 0;
    width: 6.2666666667vw;
    height: 3.3333333333vw;
    transform: translateY(-50%);
  }
  .p-judgeSalon__category::after {
    top: 50%;
    left: 3.8666666667vw;
    width: 4.6666666667vw;
    height: 1px;
    transform: translateY(-50%);
  }
  .p-judgeSalon__desc {
    margin-top: 0.2666666667vw;
  }
  .p-judgeSalon__desc p {
    letter-spacing: 0.07em;
    font-size: 3.4666666667vw;
    line-height: 2.2307692308;
  }
  .p-judgeSalon__samples {
    gap: 0 3.3066666667vw;
    margin-top: 5.6vw;
    max-width: 100%;
    grid-template-columns: repeat(3, 28vw);
  }
  .p-judgeSalon__note {
    margin-top: 3.2vw;
    letter-spacing: 0.07em;
    font-size: 2.6666666667vw;
    line-height: 2.2;
  }
  .p-judgeSalon__photoMain {
    display: none;
  }
  .p-judgeSalonCard__photo {
    aspect-ratio: 210/288;
  }
  .p-judgeSalonCard__age {
    right: 0;
    bottom: 0;
    gap: 0.2666666667vw;
    padding-left: 2vw;
    width: 11.8666666667vw;
    height: 4.5333333333vw;
    clip-path: polygon(22.4719101124% 0, 100% 0, 100% 100%, 0 100%);
  }
  .p-judgeSalonCard__age .__d {
    font-size: 3.4666666667vw;
  }
  .p-judgeSalonCard__age .__a {
    font-size: 2.4vw;
  }
  .p-judgeSalonCard__age .__s {
    font-size: 2.6666666667vw;
  }
  .p-regulation .m-mvBreadcrumb {
    display: none;
  }
  .p-regulation .p-regulationHead {
    position: relative;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 73.7333333333vw;
  }
  .p-regulation .p-regulationHead__inner,
  .p-regulation .p-regulationHead__body {
    display: contents;
  }
  .p-regulation .p-regulationHead__lead {
    position: absolute;
    top: -11.2vw;
    left: 4.6666666667vw;
    margin: 0;
    color: var(--colorBlack);
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 2.6666666667vw;
    font-family: var(--fontGothic);
    line-height: 2.2;
  }
  .p-regulation .p-regulationHead__ttl {
    position: absolute;
    top: -2.9333333333vw;
    left: 4.2666666667vw;
    margin: 0;
    width: 61.2vw;
    color: var(--colorBlack);
    letter-spacing: -0.01em;
    font-weight: var(--weightRegular);
    font-size: 11.3333333333vw;
    font-family: var(--fontDisplay);
    line-height: 1.0588235294;
  }
  .p-regulation .p-regulationHead__category {
    position: absolute;
    top: 13.0666666667vw;
    left: 5.0666666667vw;
    margin: 0;
    color: var(--colorBlack);
    letter-spacing: -0.01em;
    font-weight: var(--weightLight);
    font-size: 5.8666666667vw;
    font-family: var(--fontGothic);
    line-height: 1.5;
  }
  .p-regulation .p-regulationHead__type {
    position: absolute;
    top: 26.2666666667vw;
    left: 4.6666666667vw;
    display: flex;
    align-items: center;
    flex-shrink: 0;
    justify-content: center;
    margin: 0;
    padding: 0;
    max-width: none;
    width: 61.2vw;
    height: 7.7333333333vw;
    border: 1px solid var(--colorBlack);
    color: var(--colorBlack);
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 3.7333333333vw;
    font-family: var(--fontGothic);
    line-height: 1;
  }
  .p-regulation .p-regulationHead__desc {
    position: absolute;
    top: 39.3333333333vw;
    left: 4.6666666667vw;
    margin: 0;
    width: 90.6666666667vw;
    color: var(--colorBlack);
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 3.4666666667vw;
    font-family: var(--fontGothic);
    line-height: 2.2307692308;
  }
  .p-regulation .p-regulationHead__desc br {
    display: none;
  }
  .p-regulation .p-regulationTheme {
    margin: 0;
    padding: 17.0666666667vw 4.6666666667vw 17.3333333333vw;
  }
  .p-regulation .p-regulationTheme__ttl {
    letter-spacing: -0.01em;
    font-weight: var(--weightRegular);
    font-size: 11.3333333333vw;
    font-family: var(--fontDisplay);
    line-height: 1;
  }
  .p-regulation .p-regulationTheme__link {
    position: relative;
    flex-direction: column;
    justify-content: center;
    gap: 0;
    margin-top: 10.4vw;
    padding: 0 7.0666666667vw 0 4.6666666667vw;
    min-height: 14.5333333333vw;
    max-width: none;
    width: 100%;
    height: 14.5333333333vw;
    border: 1px solid var(--regulationRibbon);
    border-radius: 12.2666666667vw;
    background-color: var(--colorWhite);
    color: var(--regulationRibbon);
  }
  .p-regulation .p-regulationTheme__link::before {
    top: 1.3333333333vw;
    border-radius: inherit;
    background-color: var(--regulationRibbon);
  }
  .p-regulation .p-regulationTheme__linkLabel {
    position: absolute;
    top: -8.4vw;
    left: 50%;
    color: var(--colorWhite);
    text-align: center;
    white-space: nowrap;
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 3.4666666667vw;
    font-family: var(--fontGothic);
    line-height: 2.2307692308;
    transform: translateX(-50%);
  }
  .p-regulation .p-regulationTheme__linkText {
    letter-spacing: 0.07em;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 27, var(--max) * 27);
    line-height: 1.2222222222;
  }
  .p-regulation .p-regulationTheme__linkIcon {
    top: 50%;
    right: 7.0666666667vw;
    width: 3.3333333333vw;
    height: 3.3333333333vw;
  }
  .p-regulation .p-regulationTheme__note {
    margin-top: 7.3333333333vw;
    text-align: center;
    letter-spacing: 0.07em;
    font-size: 2.6666666667vw;
    line-height: 2;
  }
  .p-regulation .p-regulationSec {
    padding: 0;
    max-width: none;
    width: 100%;
  }
  .p-regulation .p-regulationSec:nth-of-type(even) {
    background-color: #f7f7f7;
  }
  .p-regulation .p-regulationSec:nth-of-type(odd) {
    background-color: #fff;
  }
  .p-regulation .p-regulationSec.is-sp-grey {
    background-color: #f7f7f7;
  }
  .p-regulation .p-regulationSec + .p-regulationSec {
    margin-top: 0;
  }
  .p-regulation .p-regulationSec__bgText {
    display: none;
  }
  .p-regulation .p-regulationSec__inner {
    padding: 10.6666666667vw 4.6666666667vw;
  }
  .p-regulation .p-regulationSec__ttl {
    margin: 0 auto 8vw;
    max-width: none;
    width: 100%;
    height: 9.7333333333vw;
  }
  .p-regulation .p-regulationSec__ttl::before {
    width: 34.9333333333vw;
  }
  .p-regulation .p-regulationSec__ttl.is-long::before {
    width: 60vw;
  }
  .p-regulation .p-regulationSec__ttlText {
    padding-left: 5.3333333333vw;
    letter-spacing: 0.14em;
    font-size: 3.7333333333vw;
    line-height: 1.4285714286;
  }
  .p-regulation .p-regulationSec__topNote {
    margin-bottom: 5.3333333333vw;
    text-align: left;
    font-size: 3.4666666667vw;
    line-height: 1.5;
  }
  .p-regulation .p-regulationSec__list {
    display: flex;
    flex-direction: column;
    gap: 5.3333333333vw;
  }
  .p-regulation .p-regulationSec__item {
    display: block;
    gap: 0;
    padding: 0;
    grid-template-columns: none;
  }
  .p-regulation .p-regulationSec__item::before, .p-regulation .p-regulationSec__item::after {
    content: none;
    display: none;
  }
  .p-regulation .p-regulationSec__term {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 5.3333333333vw;
    padding: 0;
    width: 100%;
    height: 9.7333333333vw;
    border: 1px solid var(--regulationAccent, #475b72);
    color: var(--regulationAccent, #475b72);
    text-align: center;
    letter-spacing: 0.07em;
    font-weight: var(--weightMedium);
    font-size: 4vw;
    font-family: var(--fontGothic);
    line-height: 1.3333333333;
  }
  .p-regulation .p-regulationSec__data {
    font-size: 3.4666666667vw;
    line-height: 1.6;
  }
  .p-regulation .p-regulationSec__lead {
    color: var(--regulationAccent, #475b72);
    letter-spacing: 0.07em;
    font-weight: var(--weightMedium);
    font-size: 3.4666666667vw;
    font-family: var(--fontGothic);
    line-height: 1.9230769231;
  }
  .p-regulation .p-regulationSec__lead + .p-regulationSec__lead {
    margin-top: 5.0666666667vw;
  }
  .p-regulation .p-regulationSec__note {
    margin-top: 3.7333333333vw;
    color: var(--colorBlack);
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 2.6666666667vw;
    line-height: 1.5;
  }
  .p-regulation .p-regulationSec__note + .p-regulationSec__note {
    margin-top: 4vw;
  }
  .p-regulation .p-regulationSec__note + .p-regulationSec__lead {
    margin-top: 5.0666666667vw;
  }
  .p-regulation .p-regulationOnline {
    gap: 5.3333333333vw;
    margin-top: 8vw;
  }
  .p-regulation .p-regulationOnline__step {
    margin-bottom: 2.1333333333vw;
    padding-bottom: 1.6vw;
    font-size: 3.4666666667vw;
  }
  .p-regulation .p-regulationOnline__body {
    flex-direction: column;
    gap: 3.2vw;
  }
  .p-regulation .p-regulationOnline__lead {
    font-size: 2.9333333333vw;
    line-height: 1.6;
  }
  .p-regulation .p-regulationOnline__note {
    font-size: 2.6666666667vw;
  }
  .p-regulation .p-regulationOnline__images {
    flex-wrap: wrap;
    justify-content: center;
    gap: 2.1333333333vw;
    width: 100%;
  }
  .p-regulation .p-regulationOnline__images li {
    width: 21.3333333333vw;
  }
  .p-regulation .p-regulationMovie {
    margin-top: 10.6666666667vw;
    margin-bottom: clamp(var(--max) * -100, 10vw / var(--board) * 10 * -100, 0px);
    margin-left: calc(50% - 50vw);
    padding: 8vw 4vw;
    max-width: none;
    width: 100vw;
  }
  .p-regulation .p-regulationMovie__ttl {
    font-size: 6.6666666667vw;
    line-height: 1.1;
  }
  .p-regulation .p-regulationMovie__sub {
    margin-top: 2.6666666667vw;
    font-size: 2.9333333333vw;
  }
  .p-regulation .p-regulationMovie__player {
    margin-top: 4vw;
    padding: 2vw;
    width: 100%;
  }
  .p-regulation .p-regulationOther {
    flex-direction: column;
    gap: 1.7333333333vw;
    margin-top: 8vw;
    margin-bottom: clamp(var(--max) * -80, 10vw / var(--board) * 10 * -80, 0px);
    margin-left: calc(50% - 50vw);
    padding: clamp(0px, 10vw / var(--board) * 10 * 92, var(--max) * 92) clamp(0px, 10vw / var(--board) * 10 * 35, var(--max) * 35);
    max-width: none;
    width: 100vw;
    border-top: 0;
    background-color: #fff;
  }
  .p-regulation .p-regulationOther__ttl {
    color: var(--colorBlack);
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 4vw;
    font-family: var(--fontGothic);
    line-height: 1.4666666667;
  }
  .p-regulation .p-regulationOther__lead {
    color: var(--colorBlack);
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 3.4666666667vw;
    font-family: var(--fontGothic);
    line-height: 1.5384615385;
  }
  .p-regulation .p-regulationOther__note {
    color: var(--colorBlack);
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 3.4666666667vw;
    font-family: var(--fontGothic);
    line-height: 1.8461538462;
  }
  .p-regulation .p-regulationOther__lead + .p-regulationOther__note {
    margin-top: 5.2vw;
  }
  .p-regulation .p-regulationOther__note + .p-regulationOther__note {
    margin-top: 6.4vw;
  }
  .p-regulation {
    /* =================================================
     * Salon / Selfie variants
     * Figma URL (Salon): https://www.figma.com/design/rrWDGK57qBKytZZTpEd0LJ/id2026?node-id=1-17427
     * Figma URL (Selfie): https://www.figma.com/design/rrWDGK57qBKytZZTpEd0LJ/id2026?node-id=1-18246
     *
     * Salon / Selfie は Creative と差分が大きいが、SP デザインは共通:
     *  - Theme: link button ではなく label+pill (label "テーマ" は pill の上に絶対配置)
     *  - Section item: L字ブラケットではなく、outline bar (term) + 下に desc
     *  - Ratio samples: 3 silhouette を横並び + 下に説明文
     *
     * Salon 限定:
     *  - Judge timeline (1次/2次/Final の bar + 下に desc) — Selfie HTML には存在しない
     *
     * Selfie 限定:
     *  - Online は 3 step (Salon は 2 step) — Instagram ステップ追加
     *  - Step 1 は 3 silhouette を横並び (Salon は単一合成 SVG)
     * ================================================= */
  }
  .p-regulation[class~="--salon"] .p-regulationTheme--text, .p-regulation[class~="--selfie"] .p-regulationTheme--text {
    padding: 22.4vw 4.6666666667vw 24vw;
  }
  .p-regulation[class~="--salon"] .p-regulationTheme__pill, .p-regulation[class~="--selfie"] .p-regulationTheme__pill {
    flex-direction: row;
    gap: 0;
    margin-top: 11.0666666667vw;
    padding: 0;
    min-height: 0;
    max-width: none;
    width: 90.6666666667vw;
    height: 14.5333333333vw;
    border: none;
    border-radius: 7.2666666667vw;
    background-color: var(--colorWhite);
  }
  .p-regulation[class~="--salon"] .p-regulationTheme__pill::before, .p-regulation[class~="--selfie"] .p-regulationTheme__pill::before {
    display: none;
  }
  .p-regulation[class~="--salon"] .p-regulationTheme__pillLabel, .p-regulation[class~="--selfie"] .p-regulationTheme__pillLabel {
    position: absolute;
    top: -9.6vw;
    left: 50%;
    margin: 0;
    color: var(--colorWhite);
    white-space: nowrap;
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 4.6666666667vw;
    font-family: var(--fontGothic);
    line-height: 1.6571428571;
    transform: translateX(-50%);
  }
  .p-regulation[class~="--salon"] .p-regulationTheme__pillText, .p-regulation[class~="--selfie"] .p-regulationTheme__pillText {
    color: var(--regulationAccent);
    letter-spacing: 0.07em;
    font-weight: var(--weightMedium);
    font-size: 3.7333333333vw;
    font-family: var(--fontGothic);
    line-height: 1;
  }
  .p-regulation[class~="--salon"] .p-regulationSec__item, .p-regulation[class~="--selfie"] .p-regulationSec__item {
    display: block;
    gap: 0;
    padding: 0;
    grid-template-columns: none;
  }
  .p-regulation[class~="--salon"] .p-regulationSec__item::before, .p-regulation[class~="--salon"] .p-regulationSec__item::after, .p-regulation[class~="--selfie"] .p-regulationSec__item::before, .p-regulation[class~="--selfie"] .p-regulationSec__item::after {
    display: none;
  }
  .p-regulation[class~="--salon"] .p-regulationSec__term, .p-regulation[class~="--selfie"] .p-regulationSec__term {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 9.7333333333vw;
    border: 1px solid var(--regulationRibbon);
    background-color: transparent;
    color: var(--regulationRibbon);
    letter-spacing: 0.07em;
    font-weight: var(--weightMedium);
    font-size: 4vw;
    font-family: var(--fontGothic);
    line-height: 1.3333333333;
  }
  .p-regulation[class~="--salon"] .p-regulationSec__data, .p-regulation[class~="--selfie"] .p-regulationSec__data {
    padding: 4.4vw 0 0;
  }
  .p-regulation[class~="--salon"] .p-regulationSec__lead, .p-regulation[class~="--selfie"] .p-regulationSec__lead {
    margin: 0;
    color: var(--regulationAccent);
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 3.4666666667vw;
    font-family: var(--fontGothic);
    line-height: 2.2307692308;
  }
  .p-regulation[class~="--salon"] .p-regulationSec__lead + .p-regulationSec__lead, .p-regulation[class~="--selfie"] .p-regulationSec__lead + .p-regulationSec__lead {
    margin-top: 1.6vw;
  }
  .p-regulation[class~="--salon"] .p-regulationSec__note, .p-regulation[class~="--selfie"] .p-regulationSec__note {
    margin-top: 1.0666666667vw;
    padding-left: 1em;
    color: var(--colorBlack);
    text-indent: -1em;
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 2.6666666667vw;
    font-family: var(--fontGothic);
    line-height: 1.5;
  }
  .p-regulation[class~="--salon"] .p-regulationSec__note + .p-regulationSec__note, .p-regulation[class~="--selfie"] .p-regulationSec__note + .p-regulationSec__note {
    margin-top: 0;
  }
  .p-regulation[class~="--salon"] .p-regulationSec__list, .p-regulation[class~="--selfie"] .p-regulationSec__list {
    gap: 10vw;
  }
  .p-regulation[class~="--salon"] .p-regulationRatio, .p-regulation[class~="--selfie"] .p-regulationRatio {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 4.6666666667vw;
    grid-template-columns: none;
  }
  .p-regulation[class~="--salon"] .p-regulationRatio__samples, .p-regulation[class~="--selfie"] .p-regulationRatio__samples {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: 6vw;
  }
  .p-regulation[class~="--salon"] .p-regulationRatio__sample img, .p-regulation[class~="--selfie"] .p-regulationRatio__sample img {
    width: auto;
  }
  .p-regulation[class~="--salon"] .p-regulationRatio__sample--ng img, .p-regulation[class~="--selfie"] .p-regulationRatio__sample--ng img {
    height: 19.3333333333vw;
  }
  .p-regulation[class~="--salon"] .p-regulationRatio__sample--ok img, .p-regulation[class~="--selfie"] .p-regulationRatio__sample--ok img {
    height: 25.7333333333vw;
  }
  .p-regulation[class~="--salon"] .p-regulationRatio__text, .p-regulation[class~="--selfie"] .p-regulationRatio__text {
    padding-left: 0;
    text-align: center;
  }
  .p-regulation[class~="--salon"] .p-regulationRatio__text .p-regulationSec__note, .p-regulation[class~="--selfie"] .p-regulationRatio__text .p-regulationSec__note {
    padding-left: 0;
    text-align: center;
    text-indent: 0;
  }
  .p-regulation[class~="--salon"] .p-regulationOnline, .p-regulation[class~="--selfie"] .p-regulationOnline {
    gap: 8vw;
  }
  .p-regulation[class~="--salon"] .p-regulationOnline__step, .p-regulation[class~="--selfie"] .p-regulationOnline__step {
    margin-bottom: 6.5333333333vw;
    padding-bottom: 2.1333333333vw;
    border-bottom-color: var(--regulationAccent);
    color: var(--regulationAccent);
    font-weight: var(--weightMedium);
    font-size: 4vw;
    line-height: 1.3333333333;
  }
  .p-regulation[class~="--salon"] .p-regulationOnline__row + .p-regulationOnline__row, .p-regulation[class~="--selfie"] .p-regulationOnline__row + .p-regulationOnline__row {
    margin-top: 8.5333333333vw;
  }
  .p-regulation[class~="--salon"] .p-regulationOnline__body, .p-regulation[class~="--selfie"] .p-regulationOnline__body {
    align-items: center;
    flex-direction: column-reverse;
    gap: 5.3333333333vw;
  }
  .p-regulation[class~="--salon"] .p-regulationOnline__text, .p-regulation[class~="--selfie"] .p-regulationOnline__text {
    width: 100%;
    text-align: center;
  }
  .p-regulation[class~="--salon"] .p-regulationOnline__lead, .p-regulation[class~="--selfie"] .p-regulationOnline__lead {
    margin: 0;
    color: var(--colorBlack);
    text-align: left;
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 3.4666666667vw;
    font-family: var(--fontGothic);
    line-height: 2.2307692308;
  }
  .p-regulation[class~="--salon"] .p-regulationOnline__lead br, .p-regulation[class~="--selfie"] .p-regulationOnline__lead br {
    display: none;
  }
  .p-regulation[class~="--salon"] .p-regulationOnline__note, .p-regulation[class~="--selfie"] .p-regulationOnline__note {
    margin-top: 2.6666666667vw;
    text-align: center;
    font-size: 2.9333333333vw;
    line-height: 2;
  }
  .p-regulation[class~="--salon"] .p-regulationOnline__note br, .p-regulation[class~="--selfie"] .p-regulationOnline__note br {
    display: none;
  }
  .p-regulation[class~="--salon"] .p-regulationOnline__images, .p-regulation[class~="--selfie"] .p-regulationOnline__images {
    flex: none;
    flex-wrap: nowrap;
    justify-content: center;
    gap: 0;
    width: 100%;
  }
  .p-regulation[class~="--salon"] .p-regulationOnline__images li, .p-regulation[class~="--selfie"] .p-regulationOnline__images li {
    max-width: 84.1333333333vw;
    width: 100%;
    height: auto;
  }
  .p-regulation[class~="--salon"] .p-regulationOnline__images li img, .p-regulation[class~="--selfie"] .p-regulationOnline__images li img {
    width: 100%;
    height: auto;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .p-regulation[class~="--salon"] .p-regulationJudge, .p-regulation[class~="--selfie"] .p-regulationJudge {
    margin-top: 10.6666666667vw;
  }
  .p-regulation[class~="--salon"] .p-regulationJudge__list, .p-regulation[class~="--selfie"] .p-regulationJudge__list {
    gap: 8vw;
  }
  .p-regulation[class~="--salon"] .p-regulationJudge__item, .p-regulation[class~="--selfie"] .p-regulationJudge__item {
    display: block;
    grid-template-columns: none;
  }
  .p-regulation[class~="--salon"] .p-regulationJudge__round, .p-regulation[class~="--selfie"] .p-regulationJudge__round {
    display: flex;
    align-items: center;
    flex-direction: row;
    justify-content: center;
    gap: 2.6666666667vw;
    padding: 1.6vw 2.6666666667vw;
    min-height: 9.7333333333vw;
    width: 100%;
    background-color: color-mix(in srgb, var(--regulationRibbon) 18%, transparent);
    color: var(--regulationRibbon);
    letter-spacing: 0.28em;
    font-weight: var(--weightRegular);
    font-size: 4vw;
    font-family: var(--fontGothic);
    line-height: 1.3333333333;
  }
  .p-regulation[class~="--salon"] .p-regulationJudge__round small, .p-regulation[class~="--selfie"] .p-regulationJudge__round small {
    display: inline;
    margin: 0;
    color: inherit;
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 2.6666666667vw;
    font-family: var(--fontGothic);
    line-height: 2.2;
    opacity: 1;
  }
  .p-regulation[class~="--salon"] .p-regulationJudge__item--final .p-regulationJudge__round, .p-regulation[class~="--selfie"] .p-regulationJudge__item--final .p-regulationJudge__round {
    background-color: var(--regulationRibbon);
    color: var(--colorWhite);
    letter-spacing: 0.07em;
  }
  .p-regulation[class~="--salon"] .p-regulationJudge__desc, .p-regulation[class~="--selfie"] .p-regulationJudge__desc {
    align-self: stretch;
    margin-top: 3.3333333333vw;
    padding-left: 0;
    color: var(--colorBlack);
    text-align: left;
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: clamp(0px, 10vw / var(--board) * 10 * 26, var(--max) * 26);
    font-family: var(--fontGothic);
    line-height: 2;
  }
  .p-regulation[class~="--salon"] .p-regulationOther, .p-regulation[class~="--selfie"] .p-regulationOther {
    margin-top: 10.6666666667vw;
  }
  .p-regulation[class~="--salon"] .p-regulationOnline__images li img {
    width: clamp(0px, 10vw / var(--board) * 10 * 558, var(--max) * 558);
  }
  .p-regulation[class~="--selfie"] .p-regulationOnline__images {
    gap: clamp(0px, 10vw / var(--board) * 10 * 56, var(--max) * 56);
    padding-right: clamp(0px, 10vw / var(--board) * 10 * 43, var(--max) * 43);
    padding-left: clamp(0px, 10vw / var(--board) * 10 * 43, var(--max) * 43);
  }
  .p-regulation[class~="--selfie"] .p-regulationOnline__images li img {
    width: clamp(0px, 10vw / var(--board) * 10 * 394, var(--max) * 394);
  }
  .p-regulationHead {
    margin-top: 0.5333333333vw;
    padding: 0 0.5333333333vw 0.8vw;
  }
  .p-regulationHead__ttl {
    margin-top: 0.16vw;
    font-size: 13vw;
  }
  .p-regulationHead__category {
    margin-top: 0.2666666667vw;
    font-size: 5.6vw;
  }
  .p-regulationHead__body {
    align-items: stretch;
    flex-direction: column;
    gap: 0.32vw;
    margin-top: 0.4266666667vw;
  }
  .p-regulationTheme__ttl {
    font-size: 8vw;
  }
  .p-regulationTheme__link {
    flex-direction: column;
    gap: 1.5vw;
    padding: 4vw 6vw;
    width: calc(100% - 8vw);
    height: auto;
    border-radius: 8vw;
  }
  .p-regulationTheme__link::before {
    top: 2vw;
    border-radius: 8vw;
  }
  .p-regulationTheme__linkLabel {
    font-size: 3.4vw;
  }
  .p-regulationTheme__linkText {
    font-size: 3.8vw;
  }
  .p-regulationSec {
    padding: 0.5333333333vw 0.2666666667vw;
  }
  .p-regulationSec__bgText {
    display: none;
  }
  .p-regulationSec__inner {
    padding: 0.8vw 0.32vw;
    background: none;
  }
  .p-regulationSec__ttlText {
    letter-spacing: 0.2em;
    font-size: 4vw;
  }
  .p-regulationSec__list {
    gap: 0.5333333333vw;
  }
  .p-regulationSec__item {
    gap: 0.16vw;
    padding: 0.2666666667vw 0.32vw;
    grid-template-columns: 1fr;
  }
  .p-regulationSec__item::before, .p-regulationSec__item::after {
    top: 0.0533333333vw;
    bottom: 0.0533333333vw;
  }
  .p-regulationSec__term {
    text-align: left;
    font-size: 4.5vw;
  }
  .p-regulationSec__lead {
    font-size: 3.8vw;
  }
  .p-regulationSec__note {
    font-size: 3.2vw;
    line-height: 1.8;
  }
  .p-regulationTheme__pill {
    flex-direction: column;
    gap: 0.0533333333vw;
    padding: 0.16vw 0.2666666667vw;
    min-height: 0.96vw;
    width: calc(100% - 8vw);
    height: auto;
    border-radius: 0.5333333333vw;
  }
  .p-regulationTheme__pill::before {
    top: 0.08vw;
    border-radius: inherit;
  }
  .p-regulationTheme__pillLabel {
    position: static;
    font-size: 3.4vw;
    transform: none;
  }
  .p-regulationTheme__pillText {
    font-size: 3.8vw;
  }
  .p-award .m-aboutWhatHead {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    margin: 0;
    width: 100%;
    height: 0;
  }
  .p-award .m-aboutWhatHead__lead {
    position: absolute;
    top: 148.2666666667vw;
    left: 4.6666666667vw;
    margin: 0;
    padding: 0;
  }
  .p-award .m-aboutWhatHead__ttl {
    position: absolute;
    top: 156.5333333333vw;
    left: 4.6666666667vw;
    margin: 0;
    width: 76.2666666667vw;
    letter-spacing: -0.01em;
    font-size: 13.3333333333vw;
    line-height: 0.9;
  }
  .p-award .p-awardWhat {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 3;
    margin: 0;
    width: 100%;
    height: 0;
  }
  .p-award .p-awardWhat__bodyBox {
    display: block;
    flex-wrap: nowrap;
    gap: 0;
    margin: 0;
  }
  .p-award .p-awardWhat__typeEn {
    position: absolute;
    top: 183.8666666667vw;
    left: 4.4vw;
    color: var(--colorBlack);
    letter-spacing: 0.01em;
    font-weight: var(--weightLight);
    font-size: 5.3333333333vw;
    font-family: var(--fontGothic);
    line-height: 1.75;
  }
  .p-award .p-awardWhat__type {
    position: absolute;
    top: 195.8666666667vw;
    left: 4.6666666667vw;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    min-width: auto;
    width: 61.2vw;
    height: 8.5333333333vw;
    border: 1px solid var(--colorBlack);
    background-color: var(--colorWhite);
    color: var(--colorBlack);
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 3.8666666667vw;
    font-family: var(--fontGothic);
    line-height: 1;
  }
  .p-award .p-awardContainer {
    display: block;
    padding: 59.2vw 0 0;
    min-height: 0;
    grid-template-columns: none;
  }
  .p-award .p-awardContainer__side,
  .p-award .p-awardNavArea {
    display: none;
  }
  .p-award .p-awardMain {
    display: flex;
    flex-direction: column;
    margin: 0;
    padding: 0;
    width: 100%;
  }
  .p-award #award.p-awardSec {
    min-height: 164.1333333333vw;
  }
  .p-award #schedule.p-awardSec {
    min-height: 252.9333333333vw;
  }
  .p-award #studio.p-awardSec {
    min-height: 143.8133333333vw;
  }
  .p-award #prize.p-awardSec {
    min-height: 473.8533333333vw;
  }
  .p-award #entry.p-awardSec {
    min-height: 246vw;
  }
  .p-award .p-awardSec {
    overflow: hidden;
    padding-right: 0;
    padding-bottom: 11.8666666667vw;
    padding-left: 0;
    max-width: none;
    width: 100%;
  }
  .p-award #award.p-awardSec {
    padding-top: 11.3333333333vw;
  }
  .p-award #schedule.p-awardSec {
    padding-top: 11.0666666667vw;
  }
  .p-award #studio.p-awardSec {
    padding-top: 9.3333333333vw;
  }
  .p-award #prize.p-awardSec {
    padding-top: 10.2666666667vw;
  }
  .p-award #entry.p-awardSec {
    padding-top: 11.0666666667vw;
  }
  .p-award .p-awardSec__head {
    margin-bottom: 6.5333333333vw;
    padding: 0 4.6666666667vw;
    text-align: center;
  }
  .p-award #schedule .p-awardSec__head {
    margin-bottom: 3.7333333333vw;
  }
  .p-award #studio .p-awardSec__head {
    margin-bottom: 4.2666666667vw;
  }
  .p-award #prize .p-awardSec__head {
    margin-bottom: 7.6vw;
  }
  .p-award .p-awardSec__ttl {
    color: var(--colorBlack);
    letter-spacing: 0;
    font-weight: var(--weightRegular);
    font-size: 11.3333333333vw;
    font-family: var(--fontDisplay);
    line-height: 1.2235294118;
  }
  .p-award .p-awardSec__sub {
    margin-top: 2.4vw;
    color: var(--colorBlack);
    letter-spacing: 0.07em;
    font-size: 2.6666666667vw;
    font-family: var(--fontGothic);
    line-height: 1.8;
  }
  .p-award .p-awardSec__divider {
    display: block;
    margin: 2.4vw auto 0;
    width: 9.3333333333vw;
    height: 0.5333333333vw;
  }
  .p-award .p-awardSec__lead {
    margin: 0 auto;
    padding: 0 4.6666666667vw;
    max-width: none;
    width: 100%;
    color: var(--colorBlack);
    text-align: left;
    letter-spacing: 0.07em;
    font-size: 3.4666666667vw;
    font-family: var(--fontGothic);
    line-height: 2.2307692308;
  }
  .p-award .p-awardSec__photo {
    margin: 0 auto;
    max-width: none;
    width: 90.6666666667vw;
    height: 60.4vw;
    aspect-ratio: auto;
  }
  .p-award .p-awardAbout {
    display: flex;
    flex-direction: column;
    background-color: var(--colorWhite);
  }
  .p-award {
    /* =================================================
     * Salon Award SP overrides — Figma SALON_SP (1:14791)
     * Figma URL: https://www.figma.com/design/rrWDGK57qBKytZZTpEd0LJ/id2026?node-id=1-14791
     *
     * Salon-specific sections (vs Creative):
     *  - Award: 本文 + 写真 + catch + cycle + 3 steps（線区切り）
     *  - Schedule: シンプル 4 items（detail なし）
     *  - Prize: 5 ランク (GOLD/SILVER/BRONZE/IMPRESSIVE/GENERATION) / GOLD は __photos.is-salon 別 div
     *  - Entry: 2-step diagram (横並び + 中央 ▶)
     *  - CTA: Creative と共通（背景画像差し替えのみ）
     * ================================================= */
    /* =================================================
     * Selfie Award SP overrides — Figma SELFIE_SP (1:15816)
     * Figma URL: https://www.figma.com/design/rrWDGK57qBKytZZTpEd0LJ/id2026?node-id=1-15816
     *
     * Selfie-specific sections (vs Creative/Salon):
     *  - PageHead: "Selfie Award" 1 行 (ttl) / "For Students" / "理美容学生部門" pill — Salon より高め
     *  - Award: シンプル (本文 + 写真のみ。catch / cycle / steps なし) — Salon より小さい
     *  - Schedule: シンプル 4 items (Salon と同構造)
     *  - Prize: 4 ランク (GOLD/SILVER/BRONZE/PHOTOGENIC) — PHOTOGENIC は simple 型
     *  - Entry: --3step 3 columns 横並び (stepNumLg + stepImg + stepLabel + 2 arrows)
     *  - CTA: Creative 共通
     * ================================================= */
  }
  .p-award .p-awardAbout .p-awardSec__head {
    order: 0;
  }
  .p-award .p-awardAbout__photo,
  .p-award .p-awardAbout .p-awardSec__photo {
    order: 1;
  }
  .p-award .p-awardAbout__lead,
  .p-award .p-awardAbout .p-awardSec__lead {
    order: 2;
  }
  .p-award .p-awardAbout__lead,
  .p-award .p-awardAbout .p-awardSec__lead {
    margin: 5.4666666667vw auto 0;
    padding: 0 4.6666666667vw;
    max-width: none;
    text-align: left;
    letter-spacing: 0.07em;
    font-size: 3.4666666667vw;
    line-height: 2.2307692308;
  }
  .p-award .p-awardAbout__photo,
  .p-award .p-awardAbout .p-awardSec__photo {
    flex-shrink: 0;
    margin: 0 auto;
    max-width: none;
    width: 90.6666666667vw;
    height: 60.4vw;
    aspect-ratio: auto;
  }
  .p-award #studio .p-awardSec__photo {
    flex-shrink: 0;
    width: 90.9333333333vw;
    height: 65.3333333333vw;
    aspect-ratio: auto;
  }
  .p-award .p-awardSchedule {
    padding: 11.0666666667vw 0 10.4vw;
    background-color: rgba(0, 0, 0, 0.03);
  }
  .p-award .p-awardSchedule__lead {
    margin: 0 auto 7.2vw;
    padding: 0 13.2vw;
    max-width: none;
    text-align: center;
    letter-spacing: 0.07em;
    font-size: 3.4666666667vw;
    line-height: 2.2307692308;
  }
  .p-award .p-awardSchedule__list {
    display: flex;
    flex-direction: column;
    gap: 6.6666666667vw;
    margin: 0 auto;
    padding: 0 4.6666666667vw;
    max-width: none;
  }
  .p-award .p-awardSchedule__item {
    display: grid;
    align-items: center;
    padding: 0 4.4vw;
    min-height: 10.6666666667vw;
    background-color: var(--colorWhite);
    grid-template-columns: 1fr auto 1fr;
  }
  .p-award .p-awardSchedule__item + .p-award .p-awardSchedule__item::before {
    top: -5.0666666667vw;
    border-width: 3.4666666667vw 1.7333333333vw 0 1.7333333333vw;
  }
  .p-award .p-awardSchedule__date {
    font-size: 2.9333333333vw;
  }
  .p-award .p-awardSchedule__event {
    font-size: 3.7333333333vw;
  }
  .p-award .p-awardSchedule__event small {
    font-size: 3.2vw;
  }
  .p-award .p-awardSchedule__detail:not(li) {
    display: block;
    gap: 0;
    margin: 11.6vw auto 0;
    padding: 0 4.6666666667vw;
    max-width: none;
    background: none;
    grid-template-columns: none;
  }
  .p-award .p-awardSchedule__detailTtl {
    margin: 0;
    color: var(--colorBlack);
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 4vw;
    font-family: var(--fontGothic);
    line-height: 1.4666666667;
  }
  .p-award .p-awardSchedule__detailText {
    margin-top: 1.6vw;
    color: var(--colorBlack);
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 3.4666666667vw;
    font-family: var(--fontGothic);
    line-height: 2.2307692308;
  }
  .p-award .p-awardSchedule__list + .p-award .p-awardSchedule .p-award .p-awardSchedule__list {
    display: none;
  }
  .p-award .p-awardSchedule__list:nth-of-type(2) {
    gap: 0;
    margin-top: 3.0666666667vw;
  }
  .p-award .p-awardSchedule__list:nth-of-type(2) .p-awardSchedule__item:not(.p-awardSchedule__detail):not(.p-awardSchedule__item--final) {
    margin-top: 10.1333333333vw;
  }
  .p-award .p-awardSchedule__list:nth-of-type(2) .p-awardSchedule__item:not(.p-awardSchedule__detail):not(.p-awardSchedule__item--final)::before {
    top: -5.7333333333vw;
  }
  .p-award .p-awardSchedule__list:nth-of-type(2) .p-awardSchedule__item--final {
    margin-top: 7.3333333333vw;
    background-color: #dadee3;
    color: #475b72;
  }
  .p-award .p-awardSchedule__list:nth-of-type(2) .p-awardSchedule__item--final::before {
    top: -5.0666666667vw;
  }
  .p-award .p-awardSchedule__list .p-awardSchedule__item.p-awardSchedule__detail {
    display: block;
    margin: 0;
    padding: 0;
    min-height: 0;
    background-color: transparent;
    grid-template-columns: none;
  }
  .p-award .p-awardSchedule__list .p-awardSchedule__item.p-awardSchedule__detail::before {
    display: none !important;
  }
  .p-award .p-awardSchedule__detailDays {
    display: block;
    gap: 0;
    margin: 0;
    padding: 0;
    max-width: none;
    border-top: none;
    grid-template-columns: none;
  }
  .p-award .p-awardSchedule__detailDaysLabel {
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    width: 100%;
    height: 10.6666666667vw;
    background-color: var(--colorWhite);
    color: var(--colorBlack);
    text-align: center;
    letter-spacing: 0.07em;
    font-size: 2.6666666667vw;
    font-family: var(--fontGothic);
    line-height: 2;
  }
  .p-award .p-awardSchedule__detailDaysList {
    display: grid;
    gap: 1.7333333333vw 0;
    margin: 4vw 0 0;
    padding: 0;
    list-style: none;
    grid-template-columns: 1fr 1fr;
  }
  .p-award .p-awardSchedule__detailDaysList li {
    color: var(--colorBlack);
    white-space: nowrap;
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 4.6666666667vw;
    font-family: var(--fontGothic);
    line-height: 1.3714285714;
  }
  .p-award .p-awardSchedule__detailDaysList li:nth-child(odd) {
    padding-left: 8.6666666667vw;
  }
  .p-award .p-awardSchedule__detailDaysList li:nth-child(even) {
    padding-left: 4vw;
  }
  .p-award .p-awardSchedule .p-awardSchedule__item--final {
    align-items: start;
    padding-top: 8.5333333333vw;
    min-height: 20.6666666667vw;
    background-color: #f9e2e2;
    color: #e26c6d;
  }
  .p-award .p-awardSchedule .p-awardSchedule__item--final .p-awardSchedule__date {
    align-self: start;
    font-size: 2.9333333333vw;
    line-height: 1;
  }
  .p-award .p-awardSchedule .p-awardSchedule__item--final .p-awardSchedule__event {
    margin-top: -3.6vw;
    padding-left: 0;
    font-size: 4.4vw;
    line-height: 1.3333333333;
  }
  .p-award .p-awardSchedule .p-awardSchedule__item--final .p-awardSchedule__event small {
    margin-top: -0.2666666667vw;
    font-size: 2.6666666667vw;
    line-height: 2.2;
  }
  .p-award .p-awardSchedule.is-selfie .p-awardSchedule__item--final {
    background-color: #e4f0ed;
    color: #4d9a86;
  }
  .p-award .p-awardSchedule.is-selfie .p-awardSchedule__item--final .p-awardSchedule__date {
    font-size: 2.6666666667vw;
    line-height: 1.08;
  }
  .p-award .p-awardSchedule.is-selfie .p-awardSchedule__item--final .p-awardSchedule__event {
    letter-spacing: 0.07em;
  }
  .p-award .p-awardSchedule.is-selfie .p-awardSchedule__item--final .p-awardSchedule__event small {
    letter-spacing: 0.07em;
  }
  .p-award .p-awardPrize {
    padding: 10.2666666667vw 0 12.2666666667vw;
    background-color: var(--colorWhite);
  }
  .p-award .p-awardPrize__lead {
    margin: 0 auto;
    padding: 0 4.5333333333vw;
    max-width: none;
    color: var(--colorBlack);
    text-align: left;
    letter-spacing: 0.07em;
    font-size: 3.4666666667vw;
    line-height: 2.2307692308;
  }
  .p-award .p-awardPrize__rank {
    display: block;
    flex-wrap: nowrap;
    margin: 9.4666666667vw 0 0;
    padding: 0 4.6666666667vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--bronze"] {
    margin-top: 8.4vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--impressive"] {
    margin-top: 4vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--impressive"] + .p-awardPrize__rank[class~="--impressive"] {
    margin-top: 4.4vw;
  }
  .p-award .p-awardPrize__rankTtl {
    position: relative;
    display: flex;
    align-items: stretch;
    margin: 0;
    width: 100%;
    height: 10.6666666667vw;
    background: transparent;
  }
  .p-award .p-awardPrize__rankTtl::after {
    content: "";
    position: absolute;
    top: 0;
    left: 14vw;
    z-index: 0;
    width: 76.6666666667vw;
    height: 100%;
    background-color: var(--rankBg);
  }
  .p-award .p-awardPrize__rankLabel {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-right: 10.4693333333vw;
    padding-left: 0;
    width: 45.0026666667vw;
    height: 100%;
    background-color: var(--rankAccent);
    clip-path: polygon(0 0, 80% 0, 90% 100%, 0 100%);
    color: var(--colorWhite);
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 4vw;
    font-family: var(--fontGothic);
    line-height: 1.4666666667;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--silver"] .p-awardPrize__rankLabel {
    width: 47.6693333333vw;
    clip-path: polygon(0 0, 80% 0, 90% 100%, 0 100%);
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--silver"] .p-awardPrize__list {
    gap: 5.0666666667vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--bronze"] .p-awardPrize__rankLabel {
    width: 48.6026666667vw;
    clip-path: polygon(0 0, 80% 0, 90% 100%, 0 100%);
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--bronze"] .p-awardPrize__list {
    gap: 4.8vw;
  }
  .p-award .p-awardPrize__rankCount {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: center;
    margin-left: auto;
    padding-right: 2.6666666667vw;
    height: 100%;
    color: var(--colorBlack);
    white-space: nowrap;
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: clamp(0px, 10vw / var(--board) * 10 * 26, var(--max) * 26);
    font-family: var(--fontGothic);
    line-height: 1;
  }
  .p-award .p-awardPrize__list {
    display: flex;
    flex-direction: column;
    gap: 6.6666666667vw;
    margin: 9.7333333333vw 0 0;
    padding: 0;
    width: 100%;
  }
  .p-award .p-awardPrize__list::before {
    display: none;
  }
  .p-award .p-awardPrize__item {
    display: grid;
    align-items: center;
    gap: 4.4vw;
    padding: 0;
    min-height: 6vw;
    grid-template-columns: 9.3333333333vw 1fr;
  }
  .p-award .p-awardPrize__item--withPhoto > .p-awardPrize__body {
    display: flex;
    flex-direction: column;
    -moz-column-gap: 0;
         column-gap: 0;
    grid-template-columns: 1fr;
  }
  .p-award .p-awardPrize__item--withPhoto > .p-awardPrize__body > .p-awardPrize__photoMain,
  .p-award .p-awardPrize__item--withPhoto > .p-awardPrize__body > .p-awardPrize__photoSub {
    grid-column: auto;
    grid-row: auto;
  }
  .p-award .p-awardPrize__num {
    display: flex;
    align-items: flex-start;
    align-self: stretch;
    justify-content: flex-start;
    padding: 0;
    border-right-width: 1px;
    border-right-color: #8e7e52;
    color: var(--rankAccent);
    letter-spacing: -0.02em;
    font-weight: var(--weightRegular);
    font-size: 4.9333333333vw;
    font-family: var(--fontGothic);
    line-height: 1.1891891892;
  }
  .p-award .p-awardPrize__num[class~="--small"] {
    letter-spacing: 0.07em;
    font-size: 3.3333333333vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--gold"] .p-awardPrize__item:nth-child(1) > .p-awardPrize__num {
    padding-top: 42.8vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--gold"] .p-awardPrize__item:nth-child(3) > .p-awardPrize__num {
    padding-top: 3.4666666667vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--gold"] .p-awardPrize__list.is-salon .p-awardPrize__item:nth-child(1) > .p-awardPrize__num {
    padding-top: 31.8666666667vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--gold"] .p-awardPrize__list.is-salon .p-awardPrize__item:nth-child(3) > .p-awardPrize__num {
    padding-top: 18.2666666667vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--gold"] .p-awardPrize__list.is-salon .p-awardPrize__item:nth-child(4) > .p-awardPrize__num {
    padding-top: 18.6666666667vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--gold"] .p-awardPrize__list.is-salon .p-awardPrize__item:nth-child(1) .p-awardPrize__photoMain {
    width: 48.6666666667vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--gold"] .p-awardPrize__list.is-salon .p-awardPrize__item:nth-child(3) .p-awardPrize__photoSub {
    width: 47.8666666667vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--gold"] .p-awardPrize__list.is-salon .p-awardPrize__item:nth-child(4) .p-awardPrize__photoSub {
    width: 30vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--gold"] .p-awardPrize__list.is-salon .p-awardPrize__photoSub img {
    height: auto;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--gold"] .p-awardPrize__list.is-selfie .p-awardPrize__item:nth-child(1) > .p-awardPrize__num {
    padding-top: 0;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--gold"] .p-awardPrize__list.is-selfie .p-awardPrize__item:nth-child(2) > .p-awardPrize__num {
    padding-top: 8.9333333333vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--gold"] .p-awardPrize__list.is-selfie .p-awardPrize__item:nth-child(3) > .p-awardPrize__num {
    padding-top: 0;
  }
  .p-award .p-awardPrize__body {
    padding-top: 0;
  }
  .p-award .p-awardPrize__ttl {
    color: var(--rankAccent);
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 4.2666666667vw;
    font-family: var(--fontGothic);
    line-height: 1.15625;
  }
  .p-award .p-awardPrize__ttl small {
    letter-spacing: 0.07em;
    font-size: 3.3333333333vw;
  }
  .p-award .p-awardPrize__note {
    margin-top: 2.6666666667vw;
    color: var(--colorBlack);
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 2.6666666667vw;
    font-family: var(--fontGothic);
    line-height: 2.2;
  }
  .p-award .p-awardPrize .p-awardPrize__item:nth-child(3) > .p-awardPrize__body > .p-awardPrize__note {
    line-height: 1.7;
  }
  .p-award .p-awardPrize__photoMain {
    margin: 8.2666666667vw 0 0;
    max-width: none;
    width: 30vw;
  }
  .p-award .p-awardPrize__photoMain img {
    width: 100%;
    height: auto;
  }
  .p-award .p-awardPrize__photoSub {
    margin: 5.2vw 0 0;
    max-width: none;
    width: 30vw;
  }
  .p-award .p-awardPrize__photoSub img {
    width: 100%;
    height: 20vw;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .p-award .p-awardPrize__photoSub figcaption {
    color: var(--colorBlack);
    text-align: left;
    letter-spacing: 0.07em;
    font-size: 2.6666666667vw;
    font-family: var(--fontGothic);
    line-height: 2.2;
  }
  .p-award .p-awardPrize__schedule {
    display: block;
    margin: 6.2666666667vw 0 0;
    padding: 1.4666666667vw 0 1.4666666667vw 4.4vw;
    width: 44.4vw;
    height: 14.9333333333vw;
  }
  .p-award .p-awardPrize__schedule > p {
    margin: 0;
    color: var(--colorBlack);
    white-space: nowrap;
    letter-spacing: 0.07em;
    font-size: 2.6666666667vw;
    font-family: var(--fontGothic);
    line-height: 2.2;
  }
  .p-award .p-awardPrize__schedule > p + .p-award .p-awardPrize__schedule > p {
    line-height: 1.7;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--impressive"] > .p-awardPrize__rankTtl--simple,
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--generation"] > .p-awardPrize__rankTtl--simple,
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--photogenic"] > .p-awardPrize__rankTtl--simple {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin: 0;
    padding: 0;
    width: 100%;
    height: 13.8666666667vw;
    border-bottom: none;
    background: transparent;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--impressive"] > .p-awardPrize__rankTtl--simple::after,
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--generation"] > .p-awardPrize__rankTtl--simple::after,
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--photogenic"] > .p-awardPrize__rankTtl--simple::after {
    content: none;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--impressive"] > .p-awardPrize__rankTtl--simple::before,
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--generation"] > .p-awardPrize__rankTtl--simple::before,
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--photogenic"] > .p-awardPrize__rankTtl--simple::before {
    content: "";
    position: absolute;
    right: 0;
    bottom: 1.5333333333vw;
    left: 0;
    height: 1px;
    background-color: var(--colorBlack);
  }
  .p-award .p-awardPrize__rankLabelSimple {
    color: var(--colorBlack);
    letter-spacing: 0.07em;
    font-weight: var(--weightMedium);
    font-size: 4vw;
    font-family: var(--fontGothic);
    line-height: 1.3333333333;
  }
  .p-award .p-awardPrize .p-awardPrize__rankTtl--simple .p-awardPrize__rankCount {
    margin-left: auto;
    padding: 0;
    height: auto;
    color: var(--colorBlack);
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 2.6666666667vw;
    font-family: var(--fontGothic);
    line-height: 1;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--impressive"] > .p-awardPrize__rankTtl {
    align-items: center;
    padding: 0;
    height: 12.4vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--impressive"] > .p-awardPrize__rankTtl > .p-awardPrize__rankLabel {
    padding: 0;
    letter-spacing: 0.07em;
    font-weight: var(--weightMedium);
    font-size: 4vw;
    font-family: var(--fontGothic);
    line-height: 1.3333333333;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--impressive"] > .p-awardPrize__rankTtl > .p-awardPrize__rankCount {
    padding: 0;
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 2.6666666667vw;
    font-family: var(--fontGothic);
    line-height: 1;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--impressive"] .p-awardPrize__list,
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--photogenic"] .p-awardPrize__list {
    margin-top: 6.2666666667vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--impressive"] .p-awardPrize__list .p-awardPrize__item,
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--photogenic"] .p-awardPrize__list .p-awardPrize__item {
    gap: 5.8666666667vw;
    grid-template-columns: 11.0666666667vw 1fr;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--impressive"] .p-awardPrize__list .p-awardPrize__item > .p-awardPrize__num,
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--photogenic"] .p-awardPrize__list .p-awardPrize__item > .p-awardPrize__num {
    letter-spacing: 0.14em;
    font-size: 2.6666666667vw;
    line-height: 1.9;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--impressive"] .p-awardPrize__list .p-awardPrize__item > .p-awardPrize__body > .p-awardPrize__ttl,
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--photogenic"] .p-awardPrize__list .p-awardPrize__item > .p-awardPrize__body > .p-awardPrize__ttl {
    letter-spacing: 0.14em;
    font-size: 4.2666666667vw;
    line-height: 1.1875;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--generation"] > .p-awardPrize__rankTtl {
    align-items: center;
    padding: 0;
    height: 12.4vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--generation"] > .p-awardPrize__rankTtl > .p-awardPrize__rankLabel {
    padding: 0;
    letter-spacing: 0.07em;
    font-size: 4vw;
    line-height: 1.4666666667;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--generation"] > .p-awardPrize__rankTtl > .p-awardPrize__rankCount {
    padding: 0;
    letter-spacing: 0.07em;
    font-size: 2.6666666667vw;
    line-height: 1;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--generation"] > .p-awardPrize__generation {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 2.6666666667vw;
    margin-top: 3.7333333333vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--generation"] > .p-awardPrize__generation > .p-awardPrize__generationBody {
    display: flex;
    align-items: stretch;
    gap: 6vw;
    width: 100%;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--generation"] > .p-awardPrize__generation .p-awardPrize__num {
    align-self: stretch;
    flex-shrink: 0;
    padding: 5.6vw 0;
    width: 10.9333333333vw;
    height: 100%;
    border-right: 1px solid var(--colorBlack);
    white-space: nowrap;
    font-size: 2.6666666667vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--generation"] > .p-awardPrize__generation > .p-awardPrize__generationBody > .p-awardPrize__generationText {
    flex: 1;
    letter-spacing: 0.07em;
    font-size: 3.3333333333vw;
    line-height: 1.6;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--generation"] > .p-awardPrize__generation > .p-awardPrize__generationPhoto {
    width: 32.8vw;
  }
  .p-award .p-awardPrize .p-awardPrize__rank[class~="--generation"] > .p-awardPrize__generation > .p-awardPrize__generationPhoto img {
    width: 100%;
    height: auto;
  }
  .p-award.--creative .p-awardPrize__rankCount {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  }
  .p-award .p-awardEntry {
    padding: 11.0666666667vw 0 20vw;
  }
  .p-award .p-awardEntry__list {
    margin: 2.6666666667vw auto 0;
    padding: 0 4.6666666667vw;
    list-style: none;
  }
  .p-award .p-awardEntry__step {
    position: relative;
    display: block;
    padding: 0 0 2.6666666667vw;
    border-top: none;
    border-bottom: none;
  }
  .p-award .p-awardEntry__step:first-child {
    border-top: none;
  }
  .p-award .p-awardEntry__step::before, .p-award .p-awardEntry__step::after {
    content: "";
    position: absolute;
    top: 6.9333333333vw;
    width: 38.2666666667vw;
    height: 1px;
    background-color: var(--colorBlack);
  }
  .p-award .p-awardEntry__step::before {
    left: 0;
  }
  .p-award .p-awardEntry__step::after {
    right: 0;
  }
  .p-award .p-awardEntry__stepNum {
    position: absolute;
    top: 0;
    left: 50%;
    z-index: 2;
    display: block;
    padding: 0;
    width: auto;
    height: 13.8666666667vw;
    background-color: transparent;
    color: var(--colorBlack);
    text-align: center;
    letter-spacing: 0;
    font-weight: var(--weightRegular);
    font-size: 6.6666666667vw;
    font-family: var(--fontDisplay);
    line-height: 2.08;
    transform: translateX(-50%);
  }
  .p-award .p-awardEntry__stepBody {
    display: flex;
    align-items: center;
    flex: none;
    gap: 5.3333333333vw;
    padding: 15.7333333333vw 0 0 5.3333333333vw;
  }
  .p-award .p-awardEntry__stepIcon {
    flex-shrink: 0;
    width: 14.6666666667vw;
  }
  .p-award .p-awardEntry__stepIcon img {
    width: 100%;
    height: auto;
  }
  .p-award .p-awardEntry__stepDesc {
    flex: 1;
    letter-spacing: 0.07em;
    font-size: 3.3333333333vw;
    font-family: var(--fontGothic);
    line-height: 2;
  }
  .p-award .p-awardEntry .p-awardEntry__step--split > .p-awardEntry__stepBody {
    display: block;
    padding: 15.7333333333vw 0 0;
  }
  .p-award .p-awardEntry__split {
    position: relative;
    display: grid;
    gap: 0;
    padding: 0;
    width: 100%;
    grid-template-columns: 1fr 1fr;
  }
  .p-award .p-awardEntry__split::after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 1px;
    background-color: var(--colorBlack);
    transform: translateX(-50%);
  }
  .p-award .p-awardEntry__splitItem {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 0;
    padding: 0;
  }
  .p-award .p-awardEntry .p-awardEntry__split > .p-awardEntry__splitItem:first-child {
    padding-right: 5.3333333333vw;
  }
  .p-award .p-awardEntry .p-awardEntry__split > .p-awardEntry__splitItem:last-child {
    padding-left: 7.0666666667vw;
  }
  .p-award .p-awardEntry__splitTtl {
    text-align: center;
    letter-spacing: 0.07em;
    font-weight: var(--weightMedium);
    font-size: 3.3333333333vw;
    font-family: var(--fontGothic);
    line-height: 1.44;
  }
  .p-award .p-awardEntry .p-awardEntry__splitItem > .p-awardEntry__stepIcon {
    margin-top: 2.8vw;
    width: 10.6666666667vw;
    height: auto;
  }
  .p-award .p-awardEntry__splitDesc {
    align-self: stretch;
    margin-top: 3.7333333333vw;
    text-align: left;
    letter-spacing: 0.07em;
    font-size: 2.9333333333vw;
    font-family: var(--fontGothic);
    line-height: 1.8181818182;
  }
  .p-award .p-awardCta {
    padding: 0;
  }
  .p-award .p-awardCta__box {
    max-width: none;
    aspect-ratio: 750/749;
  }
  .p-award .p-awardCta__bg::before {
    inset: 3.0666666667vw;
  }
  .p-award .p-awardCta__inner {
    padding: 0;
  }
  .p-award .p-awardCta__ttl {
    font-size: 10.5333333333vw;
    line-height: 1.0379746835;
  }
  .p-award .p-awardCta__divider {
    margin: 2.1333333333vw 0 3.7333333333vw;
    width: 8.7386666667vw;
    height: 0.5vw;
  }
  .p-award .p-awardCta__btn {
    gap: 2.6666666667vw;
    padding: 0 2.4vw 0.1333333333vw 5.3333333333vw;
    min-width: 68.5333333333vw;
    height: 7.8666666667vw;
    border-radius: 4.8vw;
    font-size: 3.7333333333vw;
  }
  .p-award .p-awardCta__btnArrow {
    width: 4.2666666667vw;
    height: 4.2666666667vw;
  }
  .p-award[class~="--salon"] #award.p-awardSec {
    padding-bottom: 0;
    min-height: 519.3333333333vw;
    background: linear-gradient(to bottom, #ededed 0, #ededed 164.1333333333vw, #f7f7f7 164.1333333333vw, #f7f7f7 100%);
  }
  .p-award[class~="--salon"] #schedule.p-awardSec {
    padding-top: 7.3333333333vw;
    min-height: 149.8666666667vw;
    background-color: #ededed;
  }
  .p-award[class~="--salon"] #schedule .p-awardSchedule__lead {
    padding: 0 4.4vw;
  }
  .p-award[class~="--salon"] #schedule .p-awardSchedule__lead br {
    display: none;
  }
  .p-award[class~="--salon"] #prize.p-awardSec {
    padding-top: 10vw;
    min-height: 553.8666666667vw;
    background-color: #f7f7f7;
  }
  .p-award[class~="--salon"] #entry.p-awardSec {
    padding-top: 10.6666666667vw;
    min-height: 127.4666666667vw;
    background-color: #ededed !important;
  }
  .p-award[class~="--salon"] .p-awardAbout__catch {
    order: 3;
  }
  .p-award[class~="--salon"] .p-awardAbout__cycle {
    order: 4;
  }
  .p-award[class~="--salon"] .p-awardAbout__steps {
    order: 5;
  }
  .p-award[class~="--salon"] .p-awardAbout__lead {
    margin-top: 4.5333333333vw;
    padding: 0 4.4vw;
    text-align: left;
    font-size: 0;
  }
  .p-award[class~="--salon"] .p-awardAbout__lead p {
    display: inline;
    letter-spacing: 0.07em;
    font-size: 3.4666666667vw;
    line-height: 2.2307692308;
  }
  .p-award[class~="--salon"] .p-awardAbout__catch {
    margin: 22.9333333333vw auto 0;
    padding: 0 4.6666666667vw;
    color: var(--colorBlack);
    text-align: center;
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 3.4666666667vw;
    font-family: var(--fontGothic);
    line-height: 2.2307692308;
  }
  .p-award[class~="--salon"] .p-awardAbout__cycle {
    display: block;
    margin: 12.6666666667vw auto 0;
    width: 72.9333333333vw;
    height: auto;
    aspect-ratio: 547/388;
  }
  .p-award[class~="--salon"] .p-awardAbout__cycle img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .p-award[class~="--salon"] .p-awardAbout__steps {
    display: flex;
    flex-direction: column;
    margin: 14.9333333333vw auto 0;
    padding: 0 4.6666666667vw;
    max-width: none;
    width: 100%;
    list-style: none;
  }
  .p-award[class~="--salon"] .p-awardAbout__step {
    position: relative;
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 0;
    padding: 0;
    border-top: 1px solid var(--colorBlack);
    grid-template-columns: none;
  }
  .p-award[class~="--salon"] .p-awardAbout__step:last-child {
    border-bottom: none;
  }
  .p-award[class~="--salon"] .p-awardAbout__stepIcon {
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: 6.5333333333vw;
    height: auto;
  }
  .p-award[class~="--salon"] .p-awardAbout__stepIcon img {
    max-width: 100%;
    width: auto;
    height: auto;
  }
  .p-award[class~="--salon"] .p-awardAbout__step:nth-child(1) .p-awardAbout__stepIcon {
    width: 21.0666666667vw;
    height: 16.9333333333vw;
  }
  .p-award[class~="--salon"] .p-awardAbout__step:nth-child(2) .p-awardAbout__stepIcon {
    width: 17.7333333333vw;
    height: 17.7333333333vw;
  }
  .p-award[class~="--salon"] .p-awardAbout__step:nth-child(3) .p-awardAbout__stepIcon {
    width: 20.9333333333vw;
    height: 16.9333333333vw;
  }
  .p-award[class~="--salon"] .p-awardAbout__stepBody {
    display: flex;
    align-items: stretch;
    flex-direction: column;
    gap: 0;
    width: 100%;
  }
  .p-award[class~="--salon"] .p-awardAbout__stepTtl {
    display: flex;
    align-items: baseline;
    justify-content: center;
    gap: 1.2vw;
    margin: 2vw auto 0;
    padding: 0;
    color: var(--colorBlack);
    text-align: center;
    white-space: nowrap;
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 4vw;
    font-family: var(--fontGothic);
    line-height: 1.2;
  }
  .p-award[class~="--salon"] .p-awardAbout__cycleNum {
    font-weight: inherit;
    font-size: inherit;
    font-family: inherit;
    line-height: inherit;
  }
  .p-award[class~="--salon"] .p-awardAbout__stepDesc {
    margin: 5.8666666667vw auto 10vw;
    width: 100%;
    color: var(--colorBlack);
    text-align: left;
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 3.4666666667vw;
    font-family: var(--fontGothic);
    line-height: 2.2307692308;
  }
  .p-award[class~="--salon"] .p-awardAbout__step:nth-child(2) .p-awardAbout__stepDesc {
    margin-bottom: 11.0666666667vw;
  }
  .p-award[class~="--salon"] .p-awardAbout__step:nth-child(3) .p-awardAbout__stepDesc {
    margin-bottom: 14.6666666667vw;
  }
  .p-award[class~="--salon"] .p-awardPrize__lead {
    padding: 0 4.5333333333vw;
    text-align: left;
    font-size: 0;
  }
  .p-award[class~="--salon"] .p-awardPrize__lead p {
    display: inline;
    letter-spacing: 0.07em;
    font-size: 3.4666666667vw;
    line-height: 2.2307692308;
  }
  .p-award[class~="--salon"] .p-awardPrize__rank[class~="--gold"] .p-awardPrize__item:nth-child(1) > .p-awardPrize__num,
  .p-award[class~="--salon"] .p-awardPrize__rank[class~="--gold"] .p-awardPrize__item:nth-child(3) > .p-awardPrize__num {
    padding-top: 0;
  }
  .p-award[class~="--salon"] .p-awardPrize__rank[class~="--generation"] > .p-awardPrize__rankTtl--simple > .p-awardPrize__rankLabelSimple {
    font-weight: var(--weightRegular);
    line-height: 1.4666666667;
  }
  .p-award[class~="--salon"] .p-awardEntry {
    padding: 10.6666666667vw 0 10.6666666667vw;
    background-color: transparent;
  }
  .p-award[class~="--salon"] .p-awardEntry > .p-awardEntry__list {
    display: none;
  }
  .p-award[class~="--salon"] .p-awardEntry__diagram {
    display: flex;
    align-items: flex-start;
    flex-direction: row;
    justify-content: center;
    gap: 0;
    margin: 4.5333333333vw auto 0;
    padding: 0;
    max-width: none;
    width: 100%;
  }
  .p-award[class~="--salon"] .p-awardEntry__diagram > .p-awardEntry__step {
    display: flex;
    align-items: center;
    flex: 1;
    flex-direction: column;
    gap: 0;
    padding: 0;
    border: none;
  }
  .p-award[class~="--salon"] .p-awardEntry__diagram > .p-awardEntry__step::before, .p-award[class~="--salon"] .p-awardEntry__diagram > .p-awardEntry__step::after {
    content: none;
    display: none;
  }
  .p-award[class~="--salon"] .p-awardEntry .p-awardEntry__stepLabel {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 0;
    margin: 0;
    padding: 0;
    color: var(--colorBlack);
    text-align: center;
    white-space: normal;
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 3.4666666667vw;
    font-family: var(--fontGothic);
    line-height: 1.4615384615;
  }
  .p-award[class~="--salon"] .p-awardEntry .p-awardEntry__stepLabel > .p-awardEntry__stepNum {
    position: static;
    display: block;
    margin: 0;
    padding: 0;
    background: transparent;
    color: var(--colorBlack);
    letter-spacing: 0;
    font-weight: var(--weightRegular);
    font-size: 6.6666666667vw;
    font-family: var(--fontDisplay);
    line-height: 2.08;
    transform: none;
  }
  .p-award[class~="--salon"] .p-awardEntry__stepImg {
    display: flex;
    align-items: flex-end;
    justify-content: center;
  }
  .p-award[class~="--salon"] .p-awardEntry__stepImg img {
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .p-award[class~="--salon"] .p-awardEntry__stepImg--silhouette {
    margin-top: 4.5333333333vw;
    width: 32.8vw;
    height: 45.6vw;
  }
  .p-award[class~="--salon"] .p-awardEntry__stepImg--phone {
    margin-top: 1.7333333333vw;
    width: 28.8vw;
    height: 52vw;
  }
  .p-award[class~="--salon"] .p-awardEntry__arrow {
    align-items: center;
    align-self: flex-start;
    flex-direction: row;
    flex-shrink: 0;
    justify-content: center;
    margin: 53.4666666667vw 0 0;
    width: 3.6vw;
    height: 3.6vw;
    color: var(--colorBlack);
    font-size: 2.6666666667vw;
    transform: rotate(0);
  }
  .p-award[class~="--selfie"] .p-awardContainer {
    padding-top: 43.3333333333vw;
  }
  .p-award[class~="--selfie"] .m-aboutWhatHead__lead {
    top: 148.6666666667vw;
  }
  .p-award[class~="--selfie"] .m-aboutWhatHead__ttl {
    top: 155.6vw;
    width: 90.6666666667vw;
  }
  .p-award[class~="--selfie"] .p-awardWhat__typeEn {
    top: 171.2vw;
  }
  .p-award[class~="--selfie"] .p-awardWhat__type {
    top: 182.5333333333vw;
  }
  .p-award[class~="--selfie"] #award.p-awardSec {
    padding-bottom: 0;
    min-height: 147.6vw;
    background-color: #ededed;
  }
  .p-award[class~="--selfie"] #schedule.p-awardSec {
    padding-top: 7.3333333333vw;
    min-height: 163.0666666667vw;
    background-color: #f7f7f7;
  }
  .p-award[class~="--selfie"] #prize.p-awardSec {
    padding-top: 10vw;
    min-height: 294.4vw;
    background-color: var(--colorWhite);
  }
  .p-award[class~="--selfie"] #entry.p-awardSec {
    padding-top: 10.9333333333vw;
    min-height: 132.6666666667vw;
    background-color: #ededed;
  }
  .p-award[class~="--selfie"] .p-awardAbout__lead {
    margin-top: 4.5333333333vw;
    padding: 0 4.4vw;
    text-align: left;
    font-size: 0;
  }
  .p-award[class~="--selfie"] .p-awardAbout__lead p {
    display: inline;
    letter-spacing: 0.07em;
    font-size: 3.4666666667vw;
    line-height: 2.2307692308;
  }
  .p-award[class~="--selfie"] #schedule .p-awardSchedule__lead {
    padding: 0 4.6666666667vw;
  }
  .p-award[class~="--selfie"] #schedule .p-awardSchedule__lead br {
    display: none;
  }
  .p-award[class~="--selfie"] .p-awardPrize__lead {
    padding: 0 4.5333333333vw;
    text-align: left;
    font-size: 0;
  }
  .p-award[class~="--selfie"] .p-awardPrize__lead p {
    display: inline;
    letter-spacing: 0.07em;
    font-size: 3.4666666667vw;
    line-height: 2.2307692308;
  }
  .p-award[class~="--selfie"] .p-awardPrize__rank[class~="--gold"] .p-awardPrize__item:nth-child(1) > .p-awardPrize__num,
  .p-award[class~="--selfie"] .p-awardPrize__rank[class~="--gold"] .p-awardPrize__item:nth-child(3) > .p-awardPrize__num {
    padding-top: 0;
  }
  .p-award[class~="--selfie"] #entry .p-awardSec__head {
    margin-bottom: 5.0666666667vw;
  }
  .p-award[class~="--selfie"] .p-awardEntry {
    padding: 10.9333333333vw 0 0;
    background-color: transparent;
  }
  .p-award[class~="--selfie"] .p-awardEntry > .p-awardEntry__list {
    display: none;
  }
  .p-award[class~="--selfie"] .p-awardEntry__diagram {
    position: relative;
    display: flex;
    align-items: flex-start;
    flex-direction: row;
    justify-content: flex-start;
    gap: 8.5133333333vw;
    margin: 0 auto;
    padding: 0 4.6666666667vw;
    max-width: none;
    width: 100%;
  }
  .p-award[class~="--selfie"] .p-awardEntry__diagram > .p-awardEntry__step {
    display: flex;
    align-items: center;
    flex: 0 0 auto;
    flex-direction: column;
    gap: 0;
    padding: 0;
    border: none;
  }
  .p-award[class~="--selfie"] .p-awardEntry__diagram > .p-awardEntry__step::before, .p-award[class~="--selfie"] .p-awardEntry__diagram > .p-awardEntry__step::after {
    content: none;
    display: none;
  }
  .p-award[class~="--selfie"] .p-awardEntry__stepNumLg {
    margin: 0;
    padding: 0;
    color: var(--colorBlack);
    letter-spacing: 0;
    font-weight: var(--weightRegular);
    font-size: 5.6vw;
    font-family: var(--fontDisplay);
    line-height: 2.0714285714;
  }
  .p-award[class~="--selfie"] .p-awardEntry__stepImg {
    display: flex;
    align-items: flex-end;
    justify-content: center;
    margin-top: 0;
    width: auto;
    height: auto;
  }
  .p-award[class~="--selfie"] .p-awardEntry__stepImg img {
    max-width: 100%;
    width: 100%;
    height: 100%;
    -o-object-fit: contain;
       object-fit: contain;
  }
  .p-award[class~="--selfie"] .p-awardEntry__stepImg--silhouette {
    margin-top: 2.9333333333vw;
    width: 25.62vw;
    height: 35.6533333333vw;
  }
  .p-award[class~="--selfie"] .p-awardEntry__stepImg--phone {
    margin-top: -0.9333333333vw;
    width: 23.8733333333vw;
    height: 43.112vw;
  }
  .p-award[class~="--selfie"] .p-awardEntry__stepLabel {
    display: block;
    margin-top: 0;
    padding: 0;
    color: var(--colorBlack);
    text-align: center;
    white-space: normal;
    letter-spacing: 0.07em;
    font-weight: var(--weightRegular);
    font-size: 2.6666666667vw;
    font-family: var(--fontGothic);
    line-height: 1.3;
  }
  .p-award[class~="--selfie"] .p-awardEntry__stepImg--silhouette + .p-awardEntry__stepLabel {
    margin-top: 7.3333333333vw;
  }
  .p-award[class~="--selfie"] .p-awardEntry__stepImg--phone + .p-awardEntry__stepLabel {
    margin-top: 4.2666666667vw;
  }
  .p-award[class~="--selfie"] .p-awardEntry__diagram > .p-awardEntry__step:last-child > .p-awardEntry__stepLabel {
    width: 24.1333333333vw;
    text-align: left;
  }
  .p-award[class~="--selfie"] .p-awardEntry__diagram > .p-awardEntry__step:last-child > .p-awardEntry__stepLabel br {
    display: none;
  }
  .p-award[class~="--selfie"] .p-awardEntry__arrow {
    position: absolute;
    top: 33.6vw;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0;
    width: 2.6666666667vw;
    height: 2.6666666667vw;
    color: var(--colorBlack);
    font-size: 2.6666666667vw;
    line-height: 1;
    transform: rotate(0);
  }
  .p-award[class~="--selfie"] .p-awardEntry__diagram > .p-awardEntry__arrow:nth-child(2) {
    left: 33.0666666667vw;
  }
  .p-award[class~="--selfie"] .p-awardEntry__diagram > .p-awardEntry__arrow:nth-child(4) {
    left: 65.4666666667vw;
  }
  .p-awardMv .m-mvPlate {
    top: 143.0666666667vw;
    left: 0;
    width: 75.7333333333vw;
    height: 46.9333333333vw;
  }
  .p-awardMv .m-mvBreadcrumb {
    display: none;
  }
  .p-awardWhat__bodyBox {
    flex-wrap: wrap;
    gap: clamp(16px, 10vw / var(--board) * 10 * 0, var(--max) * 0);
  }
  .p-awardContainer {
    display: block;
  }
  .p-awardContainer__side {
    display: none;
  }
  .p-awardNavArea {
    display: none;
  }
  .p-awardAbout__cycle {
    display: none;
  }
  .p-awardAbout__step {
    gap: 0.2133333333vw;
    grid-template-columns: 1fr;
  }
  .p-awardPrize__photos.is-salon {
    -moz-column-gap: 0;
         column-gap: 0;
    grid-template-columns: 1fr;
    row-gap: clamp(14px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
  }
  .p-awardPrize__generation {
    grid-template-columns: 1fr;
  }
  .p-awardEntry__diagram {
    align-items: center;
    flex-direction: column;
    gap: 0.4vw;
  }
  .p-awardEntry__arrow {
    transform: rotate(90deg);
  }
  .p-regulationEntry::after {
    height: clamp(0px, 10vw / var(--board) * 10 * 140, var(--max) * 140);
  }
  .p-regulationEntry + .footer {
    margin-top: clamp(var(--max) * -100, 10vw / var(--board) * 10 * -100, 0px);
  }
  .p-regulationEntry {
    padding: 26.6666666667vw 0 32vw;
    z-index: 2;
  }
  .p-regulationEntry__bigTtl {
    margin-bottom: 10.6666666667vw;
    font-size: 13.3333333333vw;
  }
  .p-regulationEntry__box {
    width: 88vw;
    max-width: none;
    padding: 10.6666666667vw 5.3333333333vw;
  }
  .p-regulationEntry__ttl {
    margin-bottom: 5.3333333333vw;
    font-size: 4.8vw;
    line-height: 1.3888888889;
  }
  .p-regulationEntry__lead {
    margin-bottom: 5.3333333333vw;
    font-size: 3.4666666667vw;
    line-height: 1.4615384615;
  }
  .p-regulationEntry__check {
    margin-bottom: 8vw;
  }
  .p-regulationEntry__checkBox {
    width: 58.6666666667vw;
    height: 10.6666666667vw;
    padding: 0 8vw;
  }
  .p-regulationEntry__checkLabel {
    font-size: 3.2vw;
  }
  .p-regulationEntry__checkMark {
    right: 2.6666666667vw;
    width: 4.8vw;
    height: 4.8vw;
  }
  .p-regulationEntry__note {
    font-size: 2.2666666667vw;
    line-height: 1.6;
    letter-spacing: 0;
  }
  .p-regulationEntry__btn {
    gap: 2.6666666667vw;
    width: 88vw;
    max-width: none;
    height: 12vw;
    margin-top: 10.6666666667vw;
    padding: 0 4vw 0 5.3333333333vw;
    border-radius: 6.6666666667vw;
  }
  .p-regulationEntry__btnText {
    font-size: 2.9333333333vw;
    letter-spacing: 0;
  }
  .p-regulationEntry__btnArrow {
    width: 6vw;
    height: 5.8666666667vw;
  }
  .p-homeMv {
    aspect-ratio: 750/1200;
  }
  .p-homeMv__bg img {
    transform: scale(1);
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
  }
  .p-homeMv__bg {
    inset: 22.8vw auto auto -17.7333333333vw;
    width: 134.6666666667vw;
    height: 134.6666666667vw;
    max-width: none;
    padding-top: 0;
  }
  .p-homeMv__logo {
    top: 4.8vw;
    left: 4.6666666667vw;
    display: none;
  }
  .p-homeMv__logo img {
    width: 10vw;
  }
  .p-homeMv__catchTop, .p-homeMv__catchBottom {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 88, var(--max) * 88);
    line-height: 1.0795454545;
  }
  .p-homeMv__catchTop {
    top: 22.4vw;
    left: 4.6666666667vw;
  }
  .p-homeMv__catchBottom {
    top: 116.5333333333vw;
    right: 0.8vw;
    text-align: right;
  }
  .p-homeMv__lead {
    top: 24vw;
    left: 57.0666666667vw;
    width: 38.2666666667vw;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 12, var(--max) * 12);
    line-height: 1.1666666667;
    text-align: right;
  }
  .p-homeMv__logoText {
    top: 144.6666666667vw;
    left: 29.0666666667vw;
    width: 66.4vw;
  }
  .p-homeMv__sideText {
    top: 54.1333333333vw;
    right: auto;
    left: 4.1333333333vw;
    width: 2.9333333333vw;
  }
  .p-homeIntro {
    padding: 83.4666666667vw 0 10.6666666667vw;
  }
  .p-homeIntro__bg img {
    -o-object-position: center bottom;
       object-position: center bottom;
  }
  .p-homeIntro__catchEn {
    top: 31.6vw;
    left: 3.4666666667vw;
    width: 69.2vw;
  }
  .p-homeIntro__catchJa {
    top: 56.9333333333vw;
    left: 4.1333333333vw;
    width: 54.1333333333vw;
  }
  .p-homeIntro__textWrap {
    margin-left: 4.6666666667vw;
    width: 90.6666666667vw;
  }
  .p-homeIntro__text {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 35, var(--max) * 35);
    line-height: 2.8571428571;
    letter-spacing: 0.2em;
  }
  .p-homeIntro__text + .p-homeIntro__text {
    margin-top: 13.3333333333vw;
  }
  .p-homeAbout {
    height: 314.8vw;
    padding: 0;
  }
  .p-homeAbout__bg {
    width: 100%;
    height: 186.5333333333vw;
  }
  .p-homeAbout__bg img {
    aspect-ratio: 750/1399;
  }
  .p-homeAbout__textBox {
    top: 126.4vw;
    right: auto;
    left: 0;
    width: 100%;
    height: auto;
    padding: 0;
    background-color: transparent;
  }
  .p-homeAbout__lead {
    position: absolute;
    top: 0;
    left: 4.8vw;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
    line-height: 1.3333333333;
  }
  .p-homeAbout__ttl {
    position: absolute;
    top: 5.0666666667vw;
    left: 4.8vw;
    margin: 0;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 100, var(--max) * 100);
    line-height: 1.4094;
  }
  .p-homeAbout__desc {
    position: absolute;
    top: 25.3333333333vw;
    left: 4.6666666667vw;
    width: 90.6666666667vw;
    margin: 0;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 26, var(--max) * 26);
    line-height: 2.2307692308;
  }
  .p-homeAbout__link {
    position: absolute;
    top: 161.0666666667vw;
    left: 0;
    width: 100%;
    margin: 0;
    display: flex;
    justify-content: center;
  }
  .p-homeAbout__link .m-linkBtn {
    width: 52.9333333333vw;
    height: 10.6666666667vw;
    padding: 0 3.6vw 0 18.1333333333vw;
    border-radius: 5.3333333333vw;
    font-family: var(--fontGothic);
    font-weight: var(--weightRegular);
    font-size: clamp(0px, 10vw / var(--board) * 10 * 23, var(--max) * 23);
    letter-spacing: 0.05em;
  }
  .p-homeAbout__link .m-linkBtn .m-linkBtn__arrow {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
  }
  .p-homeAbout__movieBox {
    top: 207.7333333333vw;
    right: auto;
    left: 0;
    width: 100%;
    margin: 0;
  }
  .p-homeAbout__movieTtl {
    margin: 0;
    padding-left: 12.8vw;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 60, var(--max) * 60);
    line-height: 2.349;
    text-align: left;
  }
  .p-homeAbout__movie {
    position: absolute;
    top: 17.0666666667vw;
    left: 4.6666666667vw;
    width: 90.6666666667vw;
  }
  .p-homeAward__bigTtl {
    top: 7.7333333333vw;
    left: 50%;
    transform: translate(-50%, 40px);
    font-size: clamp(0px, 10vw / var(--board) * 10 * 100, var(--max) * 100);
    line-height: 1.4094;
    text-align: center;
  }
  .p-homeAward__bigTtl.is-on {
    transform: translate(-50%, 0);
  }
  .p-homeAward__intro {
    height: 199.6vw;
    padding: 0;
  }
  .p-homeAward__introInner {
    display: block;
    width: 100%;
    height: 100%;
    margin: 0;
  }
  .p-homeAward__introImg {
    position: absolute;
    top: 43.3333333333vw;
    left: 4.6666666667vw;
    width: 90.6666666667vw;
    height: 90.6666666667vw;
    margin: 0;
    aspect-ratio: 1/1;
    z-index: 2;
  }
  .p-homeAward__introText {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    margin: 0;
    z-index: 2;
  }
  .p-homeAward__introLead {
    position: absolute;
    top: 21.8666666667vw;
    left: 50%;
    transform: translateX(-50%);
    margin: 0;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 35, var(--max) * 35);
    line-height: 2.8571428571;
    text-align: center;
    white-space: nowrap;
  }
  .p-homeAward__introDesc {
    position: absolute;
    top: 140.6666666667vw;
    left: 4.6666666667vw;
    width: 90.6666666667vw;
    margin: 0;
    padding-top: 0;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 26, var(--max) * 26);
    line-height: 2.2307692308;
    text-align: left;
  }
  .p-homeAward__introDesc::before {
    top: -105.7333333333vw;
    left: 50%;
    transform: translateX(-50%);
    width: 24.8vw;
  }
  .p-homeAward__nav {
    display: none;
  }
  .p-homeAwardItem {
    display: block;
    padding: 0;
  }
  .p-homeAwardItem__photo {
    position: absolute;
    top: 18.6666666667vw;
    left: 4.6666666667vw;
    width: 90.6666666667vw;
    height: 90.6666666667vw;
    margin: 0;
    z-index: 2;
  }
  .p-homeAwardItem__num {
    right: auto !important;
    margin: 0;
  }
  .p-homeAwardItem.--creative .p-homeAwardItem__num {
    top: 121.0666666667vw;
    left: 57.8386666667vw;
    width: 37.4946666667vw;
    height: 29.3333333333vw;
  }
  .p-homeAwardItem.--salon .p-homeAwardItem__num {
    top: 122.5346666667vw;
    left: 46.9493333333vw;
    width: 48.384vw;
    height: 29.08vw;
  }
  .p-homeAwardItem.--selfie .p-homeAwardItem__num {
    top: 121.5413333333vw;
    left: 45.896vw;
    width: 49.4373333333vw;
    height: 29.104vw;
  }
  .p-homeAwardItem__text {
    position: absolute;
    top: 0;
    right: auto;
    left: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    text-align: left;
    z-index: 3;
  }
  .p-homeAwardItem__text.m-fadeIn {
    opacity: 1;
    transform: none;
  }
  .p-homeAwardItem__lead {
    position: absolute;
    left: 4.6666666667vw;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
    line-height: 1.3333333333;
  }
  .p-homeAwardItem__ttl {
    position: absolute;
    left: 4.6666666667vw;
    margin: 0;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 68, var(--max) * 68);
    line-height: 1.2058823529;
  }
  .p-homeAwardItem__desc {
    position: absolute;
    left: 4.6666666667vw;
    width: 90.6666666667vw;
    margin: 0;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 26, var(--max) * 26);
    line-height: 2.2307692308;
  }
  .p-homeAwardItem__link {
    position: absolute;
    left: 0;
    width: 100%;
    margin: 0;
    justify-content: center;
  }
  .p-homeAwardItem__link .m-linkBtn {
    width: 52.9333333333vw;
    height: 10.6666666667vw;
    padding: 0 3.6vw 0 18.1333333333vw;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 23, var(--max) * 23);
  }
  .p-homeAwardItem__link .m-linkBtn .m-linkBtn__arrow {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
  }
  .p-homeAwardItem.--creative {
    height: 233.8666666667vw;
  }
  .p-homeAwardItem.--creative .p-homeAwardItem__lead {
    top: 121.6933333333vw;
  }
  .p-homeAwardItem.--creative .p-homeAwardItem__ttl {
    top: 128.4vw;
  }
  .p-homeAwardItem.--creative .p-homeAwardItem__desc {
    top: 157.2vw;
  }
  .p-homeAwardItem.--creative .p-homeAwardItem__link {
    top: 204.4vw;
  }
  .p-homeAwardItem.--salon {
    height: 227.3333333333vw;
  }
  .p-homeAwardItem.--salon .p-homeAwardItem__lead {
    top: 121.7346666667vw;
  }
  .p-homeAwardItem.--salon .p-homeAwardItem__ttl {
    top: 129.5066666667vw;
  }
  .p-homeAwardItem.--salon .p-homeAwardItem__desc {
    top: 158.3066666667vw;
  }
  .p-homeAwardItem.--salon .p-homeAwardItem__link {
    top: 198.2666666667vw;
  }
  .p-homeAwardItem.--selfie {
    height: 231.4666666667vw;
  }
  .p-homeAwardItem.--selfie .p-homeAwardItem__lead {
    top: 120.7413333333vw;
  }
  .p-homeAwardItem.--selfie .p-homeAwardItem__ttl {
    top: 127.8466666667vw;
  }
  .p-homeAwardItem.--selfie .p-homeAwardItem__desc {
    top: 144.752vw;
  }
  .p-homeAwardItem.--selfie .p-homeAwardItem__link {
    top: 201.4666666667vw;
  }
  .p-homeJudge {
    height: 225.3333333333vw;
    padding: 0;
  }
  .p-homeJudge__bgText span:first-child {
    top: 50.5813333333vw;
    left: -20.6666666667vw;
    width: 65.0666666667vw;
    height: 131.8666666667vw;
    display: flex;
    align-items: center;
    justify-content: center;
    writing-mode: horizontal-tb;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 400, var(--max) * 400);
    line-height: 1;
    letter-spacing: -0.009em;
    white-space: nowrap;
    transform: rotate(90deg);
  }
  .p-homeJudge__bgText span:last-child {
    right: auto;
    left: 55.7333333333vw;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 405, var(--max) * 405);
    line-height: normal;
    letter-spacing: -0.009em;
  }
  .p-homeJudge__text {
    top: 0;
    left: 0;
    width: 100%;
    margin: 0;
  }
  .p-homeJudge__lead {
    position: absolute;
    top: 21.7333333333vw;
    left: 4.6666666667vw;
    width: auto;
    margin: 0;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
    line-height: 1.4666666667;
  }
  .p-homeJudge__ttl {
    position: absolute;
    top: 26.4vw;
    left: 5.2vw;
    width: auto;
    margin: 0;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 100, var(--max) * 100);
    line-height: 1.4094;
  }
  .p-homeJudge__desc {
    position: absolute;
    top: 159vw;
    left: 4.6666666667vw;
    width: 90.6666666667vw;
    margin: 0;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 26, var(--max) * 26);
    line-height: 2.2307692308;
  }
  .p-homeJudge__link {
    position: absolute;
    top: 200.8vw;
    left: 0;
    width: 100%;
    margin: 0;
    display: flex;
    justify-content: center;
  }
  .p-homeJudge__link .m-linkBtn {
    width: 52.9333333333vw;
    height: 10.6666666667vw;
    padding: 0 3.6vw 0 18.1333333333vw;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 23, var(--max) * 23);
  }
  .p-homeJudge__link .m-linkBtn .m-linkBtn__arrow {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
  }
  .p-homeJudge__photo {
    top: 46.6666666667vw;
    left: 4.6666666667vw;
    right: auto;
    width: 90.6666666667vw;
    height: 106.6666666667vw;
    margin: 0;
  }
  .p-homeArchives {
    height: 137.6vw;
    padding: 0;
  }
  .p-homeArchives__bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.7);
  }
  .p-homeArchives__inner {
    top: 0;
    left: 0;
    width: 100%;
    margin: 0;
    text-align: left;
  }
  .p-homeArchives__lead {
    position: absolute;
    top: 42vw;
    left: 50%;
    transform: translateX(-50%);
    margin: 0;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
    line-height: 1.3333333333;
    white-space: nowrap;
  }
  .p-homeArchives__ttl {
    position: absolute;
    top: 45.8666666667vw;
    left: 50%;
    transform: translateX(-50%);
    margin: 0;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 100, var(--max) * 100);
    line-height: 1.4094;
    white-space: nowrap;
  }
  .p-homeArchives__desc {
    position: absolute;
    top: 64.2vw;
    left: 0;
    width: 100%;
    margin: 0;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 26, var(--max) * 26);
    line-height: 2.2307692308;
    text-align: center;
  }
  .p-homeArchives__link {
    position: absolute;
    top: 86.1333333333vw;
    left: 0;
    width: 100%;
    margin: 0;
    justify-content: center;
  }
  .p-homeArchives__link .m-linkBtn {
    width: 52.9333333333vw;
    height: 10.6666666667vw;
    padding: 0 3.6vw 0 18.1333333333vw;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 23, var(--max) * 23);
  }
  .p-homeArchives__link .m-linkBtn .m-linkBtn__arrow {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
  }
  .p-homePamphlet__lead {
    margin: 0 0 2.6666666667vw;
    font-size: 4vw;
  }
  .p-homePamphlet__ttl {
    font-size: 16vw;
  }
  .p-homePamphlet__desc {
    margin-top: 8vw;
    font-size: 3.4666666667vw;
    line-height: 1.9230769231;
    text-align: center;
  }
  .p-homePamphlet__yearList {
    justify-content: center;
    gap: 1.8666666667vw 5.3333333333vw;
    margin-top: 8vw;
  }
  .p-homePamphlet__yearList button {
    font-size: 3.6vw;
  }
  .p-homePamphlet__move {
    justify-content: center;
    gap: 3.2vw;
    margin-top: 8vw;
  }
  .p-homePamphlet__move button {
    width: 10.6666666667vw;
    height: 10.6666666667vw;
  }
  .p-homePamphlet__sliderWrap {
    margin-left: 0;
    width: 100%;
    min-width: 0;
    overflow: hidden;
  }
  .p-homePamphlet__slider {
    width: 100%;
    margin-left: 0;
  }
  .p-homePamphlet__slider .splide__slide a {
    transform-origin: center;
  }
  .p-homePamphlet__slider .splide__slide.p-homePamphlet__sliderEmpty {
    width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
  }
  .p-homePamphlet {
    padding: 0;
    height: 230.2666666667vw;
    background: linear-gradient(to bottom, #fff 0, #fff 46.1333333333vw, #f2f2f2 46.1333333333vw, #f2f2f2 100%);
  }
  .p-homePamphlet__inner {
    position: relative;
    display: block;
    grid-template-columns: none;
    padding: 0;
    gap: 0;
    max-width: none;
    margin: 0;
    height: 100%;
  }
  .p-homePamphlet__text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    text-align: left;
    pointer-events: none;
  }
  .p-homePamphlet__lead {
    position: absolute;
    top: 12.2666666667vw;
    left: 4.6666666667vw;
    margin: 0;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 30, var(--max) * 30);
    line-height: 1.4666666667;
  }
  .p-homePamphlet__ttl {
    position: absolute;
    top: 20.5333333333vw;
    left: 4.2666666667vw;
    margin: 0;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 100, var(--max) * 100);
    line-height: normal;
  }
  .p-homePamphlet__sliderWrap {
    position: absolute;
    top: 56.2666666667vw;
    left: 0;
    width: 100%;
    margin: 0;
    padding: 0;
  }
  .p-homePamphlet__desc {
    position: absolute;
    top: 164.5333333333vw;
    left: 0;
    width: 100%;
    margin: 0;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 20, var(--max) * 20);
    line-height: 2.2;
    text-align: center;
    color: var(--colorBlack);
  }
  .p-homePamphlet__yearList {
    position: absolute;
    top: 173.7333333333vw;
    left: 0;
    width: 100%;
    justify-content: center;
    gap: 0 5.3333333333vw;
    margin: 0;
    pointer-events: auto;
  }
  .p-homePamphlet__yearList button {
    font-size: clamp(0px, 10vw / var(--board) * 10 * 41, var(--max) * 41);
    line-height: 2;
    letter-spacing: 0.07em;
  }
  .p-homePamphlet__move {
    display: none;
  }
  .p-homePamphlet__scrollHint {
    position: absolute;
    top: 149.2vw;
    left: 0;
    width: 100%;
    margin: 0;
    text-align: center;
    font-family: var(--fontGothic);
    font-size: clamp(0px, 10vw / var(--board) * 10 * 16, var(--max) * 16);
    line-height: 2.75;
    letter-spacing: 0.07em;
    color: var(--colorBlack);
    pointer-events: none;
  }
  .p-homePamphlet__scrollBar {
    position: absolute;
    top: 155.8666666667vw;
    left: 4.6666666667vw;
    width: 90.6666666667vw;
    height: 1.6vw;
    background-color: #d8d8d8;
    pointer-events: none;
    overflow: hidden;
  }
  .p-homePamphlet__scrollBarFg {
    width: 17.6470588235%;
    height: 100%;
    background-color: #000;
    transition: width 0.3s;
  }
  .p-homePamphlet__bgText {
    display: block;
    transform: none;
    z-index: 0;
  }
  .p-homePamphlet__bgText span {
    max-width: none;
  }
  .p-homePamphlet__bgText span:first-child {
    top: 44.8vw;
    left: 12.6666666667vw;
    bottom: auto;
    font-size: 33.3333333333vw;
  }
  .p-homePamphlet__bgText span:last-child {
    top: 120.4546666667vw;
    left: -102.2666666667vw;
    bottom: auto;
    font-size: 33.3333333333vw;
  }
  .u-pc {
    display: none !important;
  }
  .sp-none {
    display: none !important;
  }
}

@media (max-width: 768px) and (max-width: 768px){
  .m-mvBase .m-mvBreadcrumb {
    display: none;
  }
  .header .header__logo img {
    /* SVG画像にシャドウ */
    filter: drop-shadow(0 4px 12px rgba(0, 0, 0, 0.18));
  }
  .p-judgeIntro__desc p {
    display: inline;
  }
  .p-judgeSpecial__desc p {
    display: inline;
  }
  .p-judgeSpecialCard__name img {
    width: clamp(0px, 10vw / var(--board) * 10 * 65, var(--max) * 65);
  }
  .p-judgeSpecialCard__year {
    margin-top: clamp(0px, 10vw / var(--board) * 10 * 10, var(--max) * 10);
  }
  .p-judgeWiseman__desc p {
    display: inline;
  }
  .p-award .p-awardAbout {
    background-color: #ededed;
  }
  .p-award .p-awardAbout__lead br,
  .p-award .p-awardAbout .p-awardSec__lead br {
    display: none;
  }
  .p-award .p-awardSchedule__lead {
    padding: 0;
  }
  .p-award .p-awardSchedule__item {
    grid-template-columns: auto 1fr;
  }
  .p-award .p-awardSchedule__date {
    width: clamp(0px, 10vw / var(--board) * 10 * 200, var(--max) * 200);
  }
  .p-award .p-awardSchedule__event {
    align-items: flex-start !important;
    width: 100%;
    text-align: left;
  }
  .p-award .p-awardSchedule__detailDaysLabel {
    border: 1px solid #707070;
    background: none;
    font-size: clamp(0px, 10vw / var(--board) * 10 * 26, var(--max) * 26);
  }
}

@media (hover: hover){
  a:hover {
    opacity: 0.65;
  }
  .m-linkBtn:hover {
    opacity: 1;
    background-color: var(--colorWhite);
    color: var(--colorBlack);
  }
  .m-linkBtn:hover .m-linkBtn__arrow {
    filter: invert(1);
  }
  .m-linkBtn.--dark:hover {
    background-color: var(--colorBlack);
    color: var(--colorWhite);
  }
  .m-linkBtn.--dark:hover .m-linkBtn__arrow {
    filter: none;
  }
  .header__subMenu__cont a:hover {
    opacity: 0.8;
  }
  .header__subMenu__cont a:hover .header__subMenu__img img {
    transform: scale(1.06);
  }
  .p-aboutAwards__card:hover {
    opacity: 1;
  }
  .p-aboutAwards__card:hover .p-aboutAwards__cardImg img {
    transform: scale(1.04);
  }
  .p-regulationTheme__link:hover {
    opacity: 1;
  }
  .p-awardNavArea__nav li:hover a {
    opacity: 0.7;
  }
  .p-awardCta__box:hover {
    opacity: 0.9;
  }
  .p-regulationEntry__btn:hover {
    opacity: 0.8;
  }
  .p-homePamphlet__yearList button:hover {
    opacity: 0.55;
  }
  .p-homePamphlet__move button:hover {
    opacity: 0.7;
  }
}

/*# sourceMappingURL=style.css.map */