/* 企画トップ専用。基本単位はPC 1rem=15px / SP 1rem=4vw。
 * award共通・グローバルCSSの後に読み込む。SP専用原稿受領までは一覧のブレークポイントを踏襲。 */
.award_top-wrapper { background: #e2e0db; }
.award_top { color: #000; }
.award_top .l_main__inr { padding-bottom: 0; }
.award_top-intro-band { background: linear-gradient(180deg, #f5f2ef 75%, #efeae4 100%); }
.award_top-terms-band { background: #e2e0db; }
.award_top > .award_top-page-top { background: #e2e0db; }
.award_top-how,
.award_top-entry,
.award_top-terms { padding-bottom: 8rem; }
.award_top-intro { padding-bottom: 5.33333rem; }
.award_top-visual { line-height: 0; }
.award_top-visual img { display: block; width: 100%; height: auto; }
.award_top-lead,
.award_top-entry-lead { font-size: 1.6rem; font-weight: bold; }
.award_top-lead { line-height: 1.68; }
.award_top-lead h2 { font-size: 1.6rem; font-weight: bold; line-height: 1.5; }
.award_top-lead p { margin-top: 1.06rem; }
.award_top .sec .award_top-present-summary { width: 800px; max-width: 100%; margin-right: auto; margin-left: auto; padding-bottom: 1.06667rem; border-bottom: 1px solid #b2aa91; }
.award_top-present-mark { display: flex; align-items: center; gap: 1.06667rem; }
.award_top-present-mark::before,
.award_top-present-mark::after { flex: 1; height: 1px; background: #b2aa91; content: ""; }
.award_top-present-mark img { display: block; width: 40px; height: 40px; }
.award_top-present-summary > p { margin-top: 0; padding-top: 16px; font-size: 1.333rem; font-weight: bold; line-height: 1.8; }
.award_top .sec .award_top-period { width: 800px; max-width: 100%; margin: 2.13333rem auto 0; padding: 1.6rem 2.66667rem; box-sizing: border-box; background: #fff; }
.award_top-period h2 { color: #5f5123; font-size: 1.33333rem; font-weight: bold; line-height: 1.5; }
.award_top-period-dates { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: center; gap: .4em; margin-top: .8rem; color: #5f5123; font-size: 1.6rem; font-weight: bold; line-height: 1.2; }
.award_top-period-dates > span { white-space: nowrap; }
.award_top-date-number { font-size: 2.4rem; }
.award_top-time { font-size: 1.33333rem; }
.award_top-period-note { margin-top: .53333rem; font-size: .93333rem; line-height: 1.8; }
.award_top .sec .award_top-action { margin-top: 3.2rem; }
.award_top .award_top-button,
.award_top-modal .award_top-button { width: 380px; max-width: 100%; padding-right: 2.66667rem; padding-left: 2.66667rem; font-size: 1rem; line-height: 1.5; }
.award_top .award_top-button--vote { width: 442px; font-size: 1.13333rem; }
.award_top .award_top-section-title { align-items: center; min-height: 74px; padding: 13px 34px; font-size: 2.13333rem; line-height: 1.2; font-weight: 600; }
.award_top .award_top-section-title::before,
.award_top .award_top-section-title::after { height: 72px; }
.award_top .award_top-steps { margin-right: -8px; margin-bottom: 0; margin-left: -8px; align-items: stretch; }
.award_top-steps > .award_top-step-col { display: flex; position: relative; margin-bottom: 0; padding-right: 8px; padding-left: 8px; }
.award_top-step { display: flex; flex-direction: column; width: 100%; padding: 1.6rem; box-sizing: border-box; background: #fff; }
.award_top-step h3 { display: flex; align-items: center; justify-content: center; gap: .53333rem; font-size: 1.6rem; font-weight: bold; line-height: 1.5; white-space: nowrap; }
.award_top-step-number { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 32px; height: 32px; border-radius: 50%; color: #fff; background: #5f5123; font-size: 1.33333rem; font-weight: bold; line-height: 1; }
.award_top-steps .award_top-step-icon { display: block; width: 100px; height: 100px; margin: .8rem auto 0; }
.award_top-step-copy { margin-top: 1.33333rem; font-size: 1rem; line-height: 1.8; }
.award_top-step-copy > p + p,
.award_top-step-notes { margin-top: 1.06667rem; }
.award_top-note { padding-left: 1em; text-indent: -1em; }
.award_top-step-actions { margin-top: auto; padding-top: 1.06667rem; }
.award_top-step-actions p + p { margin-top: 1.06667rem; }
.award_top .award_top-step-actions .award_top-button { width: 100%; }
.award_top .award_top-step-actions .btn_bg { font-size: 1.13333rem; }
.award_top-step-col:not(:last-child)::after { position: absolute; top: 50%; right: -8px; z-index: 1; border-top: 16px solid transparent; border-bottom: 16px solid transparent; border-left: 24px solid #93865a; content: ""; transform: translateY(-50%); }
.award_top-icon-zoom { position: absolute; right: 20px; top: 50%; width: 17px; height: 17px; margin-top: -9px; border: 1px solid currentColor; border-radius: 50%; box-sizing: border-box; background: linear-gradient(currentColor,currentColor) center/9px 1px no-repeat, linear-gradient(currentColor,currentColor) center/1px 9px no-repeat; }
.award_top-icon-zoom::after { position: absolute; right: -4px; bottom: -2px; width: 6px; height: 1px; background: currentColor; content: ""; transform: rotate(45deg); }
.award_top-entry-lead { line-height: 1.6; }
.award_top .sec .award_top-categories { margin: 3.2rem 0 0; }
.award_top .sec .award_top-categories-image { display: block; margin-top: 3.2rem; }
.award_top-categories-image img { display: block; width: 100%; height: auto; }
.award_top .award_top-categories > .award_top-category { flex: 0 0 20%; width: 20%; max-width: 20%; padding: 0; margin-bottom: 0; }
.award_top-category a { overflow: hidden; }
.award_top-category img { display: block; width: 100%; height: auto; transition: opacity .3s; }
.award_top-category a:hover img { opacity: .75; }
.award_top .sec .award_top-stores { width: 800px; max-width: 100%; margin: 3.2rem auto 0; }
.award_top-stores h3 { padding-bottom: 12px; border-bottom: 1px solid #b2aa91; font-size: 1.33333rem; line-height: 1.5; font-weight: bold; }
.award_top-stores ul { margin-top: 24px; font-size: 1rem; font-weight: normal; line-height: 1.8; }
.award_top-stores li { display: inline-block; white-space: nowrap; }
.award_top-stores li:not(:last-child)::after { display: inline-block; padding: 0 .3rem; content: "／"; font-weight: normal; }
.award_top .sec .award_top-present { width: 800px; max-width: 100%; margin: 6.93333rem auto 0; padding: 3.63636%; box-sizing: border-box; background: #fff; }
.award_top-present-heading { display: flex; align-items: center; justify-content: center; gap: 16px; color: #5f5123; font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", sans-serif; font-size: 1.6rem; font-weight: bold; line-height: 1.5; }
.award_top-present-heading img { display: block; width: 40px; height: 40px; }
.award_top-present-title { margin-top: 1.6rem; font-family: "Noto Serif JP", "Noto Serif", serif; font-size: 1.33333rem; font-weight: 600; line-height: 1.5; }
.award_top-present .award_top-prize { margin: 2.66667rem 0 0; gap: 6.66667%; }
.award_top-prize > .col-10 { position: relative; flex: 0 0 38.88889%; max-width: 38.88889%; padding: 0; margin-bottom: 0; }
.award_top-prize > .col-14 { flex: 0 0 54.44444%; max-width: 54.44444%; padding: 0; margin-bottom: 0; }
.award_top-prize-image { width: 100%; margin: 0; }
.award_top-prize-image img { display: block; width: 100%; height: auto; }
.award_top-prize h4 { font-size: 1.06667rem; font-weight: bold; line-height: 1.5; }
.award_top-prize h4 + p { margin-top: .8rem; font-size: 1rem; line-height: 1.8; }
.award_top .sec .award_top-entry-action { margin-top: 3.2rem; }
.award_top-entry-notes { width: max-content; max-width: 100%; margin: 1.6rem auto 0; font-size: .93333rem; line-height: 1.8; }
.award_top-entry-notes a { color: inherit; text-decoration: underline; }
.award_top .sec.award_top-terms > .award_top-legal-copy { margin-top: 3.73333rem; }
.award_top-terms > .award__title::after,
.award_top-disclaimer > .award__title::after { display: block; width: 128px; height: 1px; margin: 1.06667rem auto 0; background: #000; content: ""; }
.award_top-legal-copy { font-size: 1rem; line-height: 1.8; overflow-wrap: break-word; }
.award_top-legal-copy > section { margin-top: 3.73333rem; }
.award_top-legal-copy > section:first-child { margin-top: 0; }
.award_top-legal-copy h3 { margin-bottom: 1.6rem; font-size: 1.6rem; font-weight: bold; line-height: 1.5; }
.award_top-terms .award_top-legal-copy h3 { position: relative; padding-left: 1.06667rem; }
.award_top-terms .award_top-legal-copy h3::before { position: absolute; left: 0; top: .55em; width: .5em; height: .5em; background: #93865a; content: ""; transform: rotate(45deg); }
.award_top-legal-copy ul { list-style: disc; padding-left: 1em; }
.award_top-legal-copy ul > li { list-style: disc; }
.award_top-legal-copy li + li { margin-top: .53333rem; }
.award_top-legal-copy p + ul { margin-top: .53333rem; }
.award_top-legal-copy a { text-decoration: underline; }
.award_top-disclaimer { margin-top: 8rem; padding: 2.66667rem; background: #eae9e5; }
.award_top-disclaimer > .award_top-legal-copy { margin-top: 3.73333rem; }
.award_top-modal { color: #000; }
.award_top-modal > .award__title { margin: 0; line-height: 1.5; text-align: center; }
.award_top-modal > .award_top-legal-copy { margin-top: 4.8rem; }
.award_top-detail-step { position: relative; margin-top: 3.73333rem; padding: 2.13333rem; border: 1px solid #b2aa91; }
.award_top-detail-step + .award_top-detail-step { margin-top: 3.2rem; }
.award_top-detail-step + .award_top-detail-step::before { position: absolute; top: -41px; left: 50%; border-top: 32px solid #93865a; border-right: 22px solid transparent; border-left: 22px solid transparent; content: ""; transform: translateX(-50%); }
.award_top-step-label { display: flex; align-items: center; gap: 4px; color: #5f5123; font-size: 2.13333rem; font-weight: bold; line-height: 1.5; }
.award_top-step-label span { display: inline-flex; align-items: center; justify-content: center; width: 32px; height: 32px; border-radius: 50%; color: #fff; background: #5f5123; font-size: 1.33333rem; }
.award_top-member-heading { margin-top: .8rem; padding: .53333rem 1.06667rem; color: #5f5123; background: #f5f2ef; font-size: 1.6rem; font-weight: bold; line-height: 1.5; }
.award_top-step-heading { margin-top: 1.06667rem; font-size: 1.6rem; font-weight: bold; line-height: 1.5; }
.award_top-detail-step p,
.award_top-detail-step ol { font-size: 1rem; line-height: 1.8; }
.award_top-step-heading + p,
.award_top-step-heading + div,
.award_top-step-heading + ol { margin-top: 1.6rem; }
.award_top-detail-step ol { padding-left: 1em; }
.award_top-detail-step li + li { margin-top: 1.33333rem; }
.award_top-detail-step .award_top-note { margin-top: 0; }
.award_top-detail-step:last-of-type .award_top-step-copy > p + p { margin-top: 0; }
.award_top-register-step { padding-left: 1em; }
.award_top-register-step + .award_top-register-step { margin-top: 1.06667rem; }
.award_top-register-step > p { margin-top: 0; }
.award_top-register-step > p:first-child { text-indent: -1em; }
.award_top-detail-step .award_top-detail-action { margin-top: 2.66667rem; }
.award_top-detail-action + .award_top-member-heading { margin-top: 4.26667rem; }
.award_top-guide-image { display: block; width: 800px; max-width: 100%; height: auto; margin: 2.66667rem auto 0; }
.award_top-guide-image img { display: block; width: 100%; height: auto; }
.award_top-detail-step .award_top-detail-grid { margin: .8rem 0 0; justify-content: space-between; }
.award_top-detail-grid > .col-16 { flex: 0 0 64%; max-width: 64%; padding: 0; margin-bottom: 0; }
.award_top-detail-grid > .col-8 { flex: 0 0 30%; max-width: 30%; padding: 0; margin-bottom: 0; }
.award_top-detail-grid .award_top-step-heading { margin-top: 0; }
.award_top-detail-grid .award_top-guide-image { margin-top: 0; }
.award_top-detail-grid p + p { margin-top: 1.33333rem; }

@media screen and (min-width: 768px) and (max-width: 1130px) {
  .award_top-step { padding-right: 1rem; padding-left: 1rem; }
  .award_top-step h3 { font-size: clamp(.93333rem, 1.7vw, 1.6rem); }
  .award_top-step .award_top-button { padding-right: 2rem; padding-left: 1rem; }
}
@media screen and (min-width: 768px) {
  .award_top .sec > .award_top-lead { margin-top: 5.09091%; }
  .award_top .sec > .award_top-present-summary { margin-top: 4.36364%; }
  .award_top .sec.award_top-terms { padding-top: 8rem; }
  .award_top-how,
  .award_top-entry { padding-top: 5.55556%; }
  .award_top-how { padding-bottom: 5.33333rem; }
  .award_top-how > .award_top-steps,
  .award_top-entry > .award_top-entry-lead { margin-top: 5.09091%; }
}
@media screen and (max-width: 767px) {
  .award_top .sec.award_top-terms { padding-top: 4.61538rem; }
  .award_top-how,
  .award_top-entry,
  .award_top-terms { padding-bottom: 18.66667vw; }
  .award_top-how,
  .award_top-entry { padding-top: 14.35897vw; }
  .award_top-intro { padding-bottom: 14.35897vw; }
  .award_top-lead,
  .award_top-entry-lead { font-size: 1.08974rem; }
  .award_top-lead h2 { font-size: 1.33333rem; }
  .award_top-lead p { text-align: center; }
  .award_top-present-summary { font-size: .93333rem; }
  .award_top .sec .award_top-period { padding: 1.33333rem 1rem; }
  .award_top-period h2 { font-size: 1.08974rem; }
  .award_top-period-dates { flex-direction: column; align-items: center; gap: .4rem; font-size: 1.2rem; }
  .award_top-date-number { font-size: 2rem; }
  .award_top-time { font-size: 1rem; }
  .award_top-period-note { font-size: .89744rem; }
  .award_top .award_top-section-title { min-height: 3.46154rem; padding: .4rem calc(8px + .89744rem); font-size: 1.6rem; }
  .award_top .award_top-section-title::before,
  .award_top .award_top-section-title::after { width: 8px; height: 3.46154rem; }
  .award_top .award_top-steps { row-gap: 16px; margin-right: 0; margin-left: 0; }
  .award_top-how > .award_top-steps,
  .award_top-entry > .award_top-entry-lead { margin-top: 8.20513vw; }
  .award_top .award_top-steps > .award_top-step-col { flex: 0 0 100%; max-width: 100%; padding: 0; }
  .award_top-step { padding: 1.6rem; }
  .award_top-step h3 { font-size: 1.28205rem; white-space: normal; }
  .award_top-step-number { flex-basis: 28px; height: 28px; font-size: 1.2rem; }
  .award_top-step-col + .award_top-step-col { margin-top: 0; }
  .award_top-step-col:not(:last-child)::after { top: auto; bottom: -16px; right: auto; left: 50%; border: 16px solid transparent; border-top: 24px solid #93865a; border-bottom: 0; transform: translateX(-50%); }
  .award_top-step-actions { padding-top: 1.6rem; }
  .award_top .award_top-step-actions .btn_bg { font-size: 1.08974rem; }
  .award_top .award_top-button,
  .award_top-modal .award_top-button { font-size: 1rem; }
  .award_top .award_top-button--vote { width: 342px; }
  .award_top .sec .award_top-categories { margin-top: 1.53846rem; justify-content: center; gap: 0; }
  .award_top .sec .award_top-categories-image { width: calc(100% + 8vw); margin-top: 1.53846rem; margin-right: -4vw; margin-left: -4vw; }
  .award_top .award_top-categories > .award_top-category { flex-basis: 33.33333%; width: 33.33333%; max-width: 33.33333%; }
  .award_top .award_top-categories > .award_top-category:nth-child(n+4) { flex-basis: 50%; width: 50%; max-width: 50%; }
  .award_top .sec .award_top-stores { margin-top: 1.53846rem; }
  .award_top-stores h3 { font-size: 1.15385rem; }
  .award_top-stores ul { font-size: 1.02564rem; }
  .award_top .sec .award_top-present { margin-top: 12vw; padding: 8.88889% 6.66667%; }
  .award_top-present-heading { font-size: 1.28205rem; }
  .award_top-present-heading img { width: 30px; height: 30px; }
  .award_top-present-title { margin-top: 1.02564rem; font-size: 1.2rem; }
  .award_top-present .award_top-prize { gap: 0; margin-top: 1.53846rem; }
  .award_top-prize > .col-10,
  .award_top-prize > .col-14 { flex-basis: 100%; max-width: 100%; }
  .award_top-prize > .col-10 { width: 100%; margin-right: auto; margin-left: auto; }
  .award_top-prize > .col-14 { margin-top: 2.13333rem; }
  .award_top-prize h4,
  .award_top-prize h4 + p { font-size: 1.02564rem; }
  .award_top-entry-notes { font-size: .93333rem; }
  .award_top .sec.award_top-terms > .award_top-legal-copy { margin-top: 2.05128rem; }
  .award_top-terms > .award__title,
  .award_top-disclaimer > .award__title { font-size: 1.53846rem; }
  .award_top-terms > .award__title::after,
  .award_top-disclaimer > .award__title::after { width: 96px; margin-top: 1.02564rem; }
  .award_top-legal-copy > section { margin-top: 1.53846rem; }
  .award_top-legal-copy h3 { font-size: 1.28205rem; margin-bottom: 1.33333rem; }
  .award_top-disclaimer { margin-top: 18.66667vw; padding: 4vw; }
  .award_top-disclaimer > .award_top-legal-copy { margin-top: 2.05128rem; font-size: .96154rem; }
  .award_top-modal > .award_top-legal-copy { margin-top: 12vw; }
  .award_top-detail-step { margin-top: 2.66667rem; padding: 1.06667rem; }
  .award_top-step-label { font-size: 1.6rem; }
  .award_top-member-heading,
  .award_top-step-heading { font-size: 1.2rem; }
  .award_top-step-label span { width: 28px; height: 28px; font-size: 1.2rem; }
  .award_top-detail-grid > .col-16,
  .award_top-detail-grid > .col-8 { flex-basis: 100%; max-width: 100%; }
  .award_top-detail-grid > .col-8 { margin-top: 1.6rem; }
  .award_top-detail-grid .award_top-guide-image { width: 260px; max-width: 100%; }
  .award_top-detail-step .award_top-detail-action { margin-top: 1.6rem; }
  .award_top-detail-action + .award_top-member-heading { margin-top: 2.66667rem; }
}
