/**
 * app.css（本番CDN: music.r10s.jp、編集不可）の @media（ビューポート幅判定）を
 * 全て .pc / .sp（wp_is_mobile()によるbodyクラス）方式に変換した上書き用CSS。
 * combined-condition媒体クエリ（-ms-high-contrast など特殊なもの）は対象外。
 * 自動生成: /tmp/gen_override.py により app.css から機械的に変換したもの。
 * app.cssの元の値が変わった場合はこのファイルも再生成が必要。
 */
/* app.css の @media を .pc/.sp 方式に変換した上書き用CSS（自動生成、388件） */
/* .pc #page .l-header.is-fixed のアニメーションは _common/css/header.css に移設済み */
/* リンクのホバー/フォーカス/クリック時の文字色（本番 app.css の `#page a:hover` と同じ強さ）。
   !important を付けない：ボタンやテキストリンクなど、色を個別に決めているリンクは、その色のままにする（以前は !important で全リンクが水色になっていた）。
   :where(.pc) で .pc の分の強さを0にし、個別の指定（#page .l-content .xxx など）に負けるようにしている */
:where(.pc) #page a:hover, :where(.pc) #page a:focus { color: #a3ddf9; }
:where(.pc) #page a:active { color: #0d6794; }
.pc #page .l-campaign-01 #new_content li.item__card, .pc #page .l-campaign-01 #rankings li.item__card { transition: all 0.2s ease-in !important; }
.pc #page .l-campaign-01 #new_content li.item__card:hover, .pc #page .l-campaign-01 #rankings li.item__card:hover { opacity: 0.8 !important; }
.pc #page .l-campaign-02 #new_content li.item__card, .pc #page .l-campaign-02 #rankings li.item__card { transition: all 0.2s ease-in !important; }
.pc #page .l-campaign-02 #new_content li.item__card:hover, .pc #page .l-campaign-02 #rankings li.item__card:hover { opacity: 0.8 !important; }
.pc #page .l-campaign-03 #new_content li.item__card, .pc #page .l-campaign-03 #rankings li.item__card { transition: all 0.2s ease-in !important; }
.pc #page .l-campaign-03 #new_content li.item__card:hover, .pc #page .l-campaign-03 #rankings li.item__card:hover { opacity: 0.8 !important; }
.pc #page .js-toggle__trigger { display: none !important; }
/* スクロールしてヘッダーが固定表示になったとき、本文がヘッダーの真下から始まるようにする（以前は PC 218px / SP 102px で、ヘッダーの下に白いスペースができていた）。
   固定ヘッダーの高さは PC 134px（ロゴの段74px＋ナビの段60px）、SP 64px。ログイン中の管理バー(PC 32px)の分だけ PC は足す */
.pc #page .l-container.is-fixed { padding-top: 134px !important; }
.pc.admin-bar #page .l-container.is-fixed { padding-top: 166px !important; }
.sp #page .l-container.is-fixed { padding-top: 64px !important; }
.pc #page .l-inner { margin: 0 auto !important; width: 1104px !important; }
.pc #page .l-inner:after { content: '.' !important; display: block !important; clear: both !important; height: 0 !important; visibility: hidden !important; }
.pc #page .l-inner__main { float: left !important; width: 696px !important; }
.pc #page .l-inner__main .feature-list--grid { margin: auto !important; }
.pc #page .l-inner__main .feature-list--grid .feature__card { width: 33.3% !important; padding: 0 !important; }
.pc #page .l-inner__main .s-feature .heading { margin-bottom: 40px !important; font-size: 2.4rem !important; line-height: 1.5 !important; }
.pc #page .l-inner__main .s-feature .heading__sub { font-size: 1.8rem !important; line-height: normal !important; }
.pc #page .l-inner__side { float: right !important; width: 280px !important; }
.pc #page .l-inner__side .s-feature { border-radius: 2px !important; }
.pc #page .l-inner__side .s-feature--latest { padding: 16px 24px 28px !important; }
.pc #page .l-inner__side .s-feature--latest .heading { margin-bottom: 5px !important; font-size: 1.4rem !important; line-height: 2.14 !important; }
.pc #page .l-inner__side .s-feature--latest .heading__sub { font-size: 1rem !important; line-height: normal !important; }
.pc #page .l-inner__side .s-feature--latest .feature__card { border-bottom: 1px solid #ebebeb !important; }
.pc #page .l-inner__side .s-feature--latest .feature__card.is-new::before { top: 8px !important; }
.pc #page .l-inner__side .s-feature--latest .feature__card.is-new::after { top: 21px !important; }
.pc #page .l-inner__side .s-feature--latest .more-button { margin-top: 24px !important; }
.pc #page .l-inner__side .s-feature--latest .more-button .btn { font-size: 1.4rem !important; }
.pc #page .l-inner__side .s-feature--ranking { margin-top: 40px !important; }
.pc #page .l-inner__side .s-feature--ranking .heading { margin-bottom: 7px !important; font-size: 2rem !important; }
.pc #page .l-inner__side .s-feature--ranking .heading__sub { font-size: 1.2rem !important; }
.pc #page .l-inner__side .s-feature--ranking a:hover { background-color: rgba(0, 0, 0, 0.5) !important; box-shadow: 0 2.5px 5px 0 rgba(0, 0, 0, 0.2) !important; }
.pc #page .l-inner__side .s-feature--ranking a:focus { background-color: rgba(0, 0, 0, 0.5) !important; }
.pc #page .l-inner__side .s-feature--ranking a:active { background-color: rgba(0, 0, 0, 0.7) !important; }
.pc #page .btn { display: inline-block !important; }
.pc #page .btn--toggle { display: none !important; }
.pc #page .btn--sns { font-size: 1.3rem !important; }
.pc #page .btn--sns .icon { height: 15px !important; }
.pc #page .btn--sns .icon.has-text--right { margin-right: 8px !important; }
.pc #page .feature__card { margin-bottom: 0 !important; }
.pc #page .feature__card a { animation-name: fadeIn !important; transition: background-color 0.2s ease-out !important; }
.pc #page .feature__card a:hover { background-color: rgba(0, 0, 0, 0.7) !important; box-shadow: 0 2.5px 5px 0 rgba(0, 0, 0, 0.2) !important; }
.pc #page .feature__card a:hover .feature__card__artist, .pc #page .feature__card a:hover .feature__card__title, .pc #page .feature__card a:hover .feature__card__detail { color: #fff !important; }
.pc #page .feature__card a:hover img { transform: scale(1.2, 1.2) !important; }
.pc #page .feature__card a:focus { background-color: rgba(0, 0, 0, 0.7) !important; }
.pc #page .feature__card a:focus .feature__card__artist, .pc #page .feature__card a:focus .feature__card__title, .pc #page .feature__card a:focus .feature__card__detail { color: #fff !important; }
.pc #page .feature__card a:focus img { transform: scale(1.2, 1.2) !important; }
.pc #page .feature__card a:active { background-color: rgba(0, 0, 0, 0.83) !important; }
.pc #page .feature__card a:active .feature__card__artist, .pc #page .feature__card a:active .feature__card__title, .pc #page .feature__card a:active .feature__card__detail { color: #fff !important; }
.pc #page .feature__card a:active img { transform: scale(1.2, 1.2) !important; }
.pc #page .feature__card__image { width: 100% !important; overflow: hidden !important; }
.pc #page .feature__card__image img { width: 100% !important; height: auto !important; transition: all 0.6s ease-out !important; }
.pc #page .feature__card__artist { margin-top: 8px !important; font-size: 1rem !important; line-height: 1.8 !important; }
.pc #page .feature__card__title { margin-top: 4px !important; font-size: 1.4rem !important; line-height: 1.5 !important; }
.pc #page .feature__card__date { margin-top: 8px !important; font-size: 1rem !important; line-height: 1.8 !important; }
.pc #page .feature__card__interview { bottom: 16px !important; padding: 3px 4px 2px 2px !important; font-size: 1rem !important; }
.pc #page .feature__card__interview i { padding-right: 1px !important; font-size: 1rem !important; }
.pc #page .feature__card__rank { width: 31px !important; height: 17px !important; line-height: 17px !important; font-size: 1rem !important; letter-spacing: 1.1px !important; }
.pc #page .feature__card__rank::before { height: 17px !important; border-top-width: 2px !important; border-bottom-width: 2px !important; border-left-width: 31px !important; }
.pc #page .feature__card__rank--in { top: 12px !important; width: 50px !important; height: 24px !important; line-height: 24px !important; font-size: 1.2rem !important; }
.pc #page .feature__card__rank--in i { margin-right: 1px !important; font-size: 1.4rem !important; }
.pc #page .feature__card__rank--in::before { height: 24px !important; border-top-width: 4px !important; border-bottom-width: 4px !important; border-left-width: 50px !important; }
.pc #page .feature__card.is-new::before { top: -15px !important; }
.pc #page .feature__card.is-new::after { top: -2px !important; }
.pc #page .feature-list--grid { margin: auto -12px !important; display: flex !important; flex-wrap: wrap !important; }
.pc #page .feature-list--grid a { display: flex !important; flex-wrap: wrap !important; width: 100% !important; height: 100% !important; word-break: break-all !important; }
.pc #page .feature-list--grid a>* { width: 100% !important; }
.pc #page .feature-list--grid .feature__card { width: 25% !important; margin: 16px 0 !important; padding: 0 12px !important; }
.pc #page .feature-list--grid .feature__card__image { height: 95px !important; display: flex !important; justify-content: center !important; align-items: center !important; }
.pc #page .feature-list--grid .feature__card__artist { margin-top: 17px !important; font-size: 1.2rem !important; line-height: 1 !important; }
.pc #page .feature-list--grid .feature__card__title { margin-top: 6px !important; font-size: 1.6rem !important; }
.pc #page .feature-list--grid .feature__card__detail { align-self: flex-end !important; }
.pc #page .feature-list--grid .feature__card__description { margin-top: 16px !important; line-height: normal !important; overflow: hidden !important; height: 6em !important; display: -webkit-box !important; -webkit-box-orient: vertical !important; -webkit-line-clamp: 4 !important; }
.pc #page .feature-list--grid .feature__card__date { margin-top: 16px !important; }
.pc #page .campaign-list { margin-bottom: 17px !important; display: flex !important; flex-wrap: wrap !important; }
.pc #page .campaign__item { width: 50% !important; padding-top: 20px !important; }
.pc #page .campaign__item:nth-child(odd) { padding-right: 8px !important; }
.pc #page .campaign__item:nth-child(even) { padding-left: 8px !important; }
.pc #page .campaign__item:first-child, .pc #page .campaign__item:nth-child(2) { padding-top: 0 !important; }
.sp #page .campaign__item { padding-top: 12px !important; }
.sp #page .campaign__item:first-child { padding-top: 0 !important; }
.pc #page .campaign__card { display: flex !important; flex-wrap: wrap !important; width: 100% !important; height: 100% !important; }
.pc #page .campaign__card>* { width: 100% !important; }
.pc #page .campaign__image>a:hover { box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.2) !important; opacity: 0.8 !important; }
.pc #page .campaign__image>a:focus, .pc #page .campaign__image>a:active { opacity: 0.8 !important; }
.pc #page .campaign__image img { width: 100% !important; height: auto !important; }
.pc #page .campaign__schedule { align-self: flex-end !important; }
.pc #page .campaign__schedule__box { display: block !important; min-height: 110px !important; text-align: left !important; font-size: 1.6rem !important; line-height: normal !important; }
.pc #page .campaign__schedule__note { font-size: 1.2rem !important; color: #686868 !important; }
.pc #page .campaign-list.has-border .campaign__item { padding-bottom: 20px !important; }
.sp #page .campaign-list.has-border .campaign__item { padding-bottom: 12px !important; }
.pc #page .heading { line-height: 1.5 !important; }
.pc #page .heading__sub { display: inline !important; padding-left: 16px !important; }
.pc #page .heading--l { padding-top: 34px !important; margin-bottom: 48px !important; font-size: 3.4rem !important; }
.pc #page .heading--m { padding-top: 40px !important; margin-bottom: 40px !important; font-size: 2.4rem !important; }
.pc #page .content-box { padding: 40px 0 64px !important; }
.pc #page .content-box:after { content: '.' !important; display: block !important; clear: both !important; height: 0 !important; visibility: hidden !important; }
.pc #page .content-box__image a:hover { box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.2) !important; opacity: 0.8 !important; }
.pc #page .content-box__image a:focus, .pc #page .content-box__image a:active { opacity: 0.8 !important; }
.pc #page .content-box__image img { width: 100% !important; height: auto !important; }
.pc #page .content-box__image-left .content-box__image { float: left !important; margin: auto 24px 24px auto !important; width: 320px !important; }
.pc #page .content-box__image-left .content-box__text { margin-top: 0 !important; }
.pc #page .content-box__image-right .content-box__image { float: right !important; margin: auto auto 24px 24px !important; width: 320px !important; }
.pc #page .content-box__image-right .content-box__text { margin-top: 0 !important; }
.pc #page .rpush-banner a:hover { box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.2) !important; opacity: 0.8 !important; }
.pc #page .rpush-banner a:focus, .pc #page .rpush-banner a:active { opacity: 0.8 !important; }
.pc #page .breadcrumb { display: block !important; padding: 12px 0 !important; border-bottom: 1px solid #ebebeb !important; background-color: #fff !important; }
.pc #page .breadcrumb a { font-size: 1.4rem !important; color: #686868 !important; }
.pc #page .breadcrumb a:hover, .pc #page .breadcrumb a:focus { color: #ff1212 !important; }
.pc #page .breadcrumb a:active { color: #960000 !important; }
.pc #page .breadcrumb__item { float: left !important; }
.pc #page .breadcrumb__item:not(:last-child)::after { -webkit-font-smoothing: antialiased !important; -moz-osx-font-smoothing: grayscale !important; display: inline-block !important; font: normal 16px/1 iconfont !important; content: '\f11d' !important; font-size: 1.4rem !important; margin: 0 16px 0 14px !important; position: relative !important; top: 2px !important; }
.pc #page .tab-nav { margin: 0 0 32px !important; }
.pc #page .tab-nav__list { margin: 0 -11px !important; table-layout: auto !important; }
.pc #page .tab-nav__item { padding: 0 11px !important; }
.pc #page .tab-nav__item a { padding: 20px 22px !important; font-size: 1.8rem !important; }
.pc #page .pagination__controller img { width: 9px !important; }
.pc #page .pagination__controller__first, .pc #page .pagination__controller__last { display: none !important; }
.pc #page .pagination__item>* { width: 24px !important; height: 24px !important; margin: auto 4px !important; }
.pc #page .pagination__item>* a { display: block !important; }
.pc #page .pagination__item .is-current { border-bottom: 1px solid #bf0000 !important; }
.pc #page .pagination__total { display: none !important; }
.pc #page .slider__item { margin: 0 16px !important; }
.pc #page .slider__item a { display: block !important; }
.pc #page .slider__item a:hover { box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.2) !important; opacity: 0.8 !important; }
.pc #page .slider__item a:focus, .pc #page .slider__item a:active { opacity: 0.8 !important; }
.pc #page .slider__item img { width: 100% !important; height: auto !important; }
.pc #page .slider .slick-prev { margin-top: -20px !important; }
.pc #page .slider .slick-prev:hover, .pc #page .slider .slick-prev:focus, .pc #page .slider .slick-prev:active { opacity: 0.8 !important; }
.pc #page .slider .slick-next { margin-top: -20px !important; }
.pc #page .slider .slick-next:hover, .pc #page .slider .slick-next:focus, .pc #page .slider .slick-next:active { opacity: 0.8 !important; }
.pc #page .slick-dots { margin-top: 22px !important; }
.pc #page .slick-dots li button:hover { box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.2) !important; opacity: 0.8 !important; }
.pc #page .slick-dots li button:focus, .pc #page .slick-dots li button:active { opacity: 0.8 !important; }
.pc #page .sns-box { margin-top: 40px !important; text-align: center !important; font-size: 0 !important; display: flex !important; justify-content: center !important; }
.pc #page .sns-box__row { font-size: 0 !important; display: flex !important; }
.pc #page .sns-box__button { margin-left: 16px !important; min-width: 88px !important; height: 30px !important; }
.pc #page .sns-box__button .btn--sns { font-size: 1.3rem !important; padding: 0 11px !important; display: table !important; }
.pc #page .sns-box__button--s { margin-left: 4px !important; min-width: 70px !important; }
.pc #page .l-header { height: 74px !important; margin-bottom: 60px !important; }
.pc #page .l-header .gnav-main-group { max-width: 1280px !important; }
.pc #page .l-header .gnav-sub-menu-list { display: flex !important; flex-direction: column !important; justify-content: center !important; align-items: center !important; align-self: stretch !important; background: #020717 !important; position: absolute !important; top: 74px !important; left: 0 !important; width: 100% !important; }
.pc #page .l-header .gnav-sub-menu-list>ul { display: flex !important; width: 100% !important; max-width: 1280px !important; padding: 0 !important; align-items: left !important; }
.pc #page .l-header .gnav-sub-menu-list>ul>li a.gnav-menu-link { display: flex !important; height: 60px !important; padding: 0 24px !important; flex-direction: column !important; justify-content: center !important; align-items: center !important; color: #fff !important; font-size: 16px !important; font-style: normal !important; font-weight: 700 !important; line-height: 24px !important; transition: all 0.2s ease-in !important; }
.pc #page .l-header .gnav-sub-menu-list>ul>li a.gnav-menu-link.is-selected, .pc #page .l-header .gnav-sub-menu-list>ul>li a.gnav-menu-link:hover { border-bottom: 4px solid #f53a3a !important; color: #f53a3a !important; }
.pc #page .l-header .gnav-sub-menu-list>ul>li a.gnav-menu-link.is-selected span, .pc #page .l-header .gnav-sub-menu-list>ul>li a.gnav-menu-link.is-selected i { transform: translateY(2px) !important; }
.pc #page .l-header .gnav-sub-menu-list>ul>li a.gnav-menu-link:hover span, .pc #page .l-header .gnav-sub-menu-list>ul>li a.gnav-menu-link:hover i { transform: translateY(2px) !important; }
.pc #page .l-header nav.ganv-main-menu-list>ul { display: flex !important; align-items: center !important; }
.pc #page .l-header nav.ganv-main-menu-list>ul>li a.gnav-menu-link { display: flex !important; height: 96px !important; padding: 0 32px !important; flex-direction: column !important; justify-content: center !important; align-items: center !important; gap: 32px !important; color: #000 !important; font-size: 16px !important; font-style: normal !important; font-weight: 700 !important; line-height: 24px !important; transition: all 0.2s ease-in !important; }
.pc #page .l-header nav.ganv-main-menu-list>ul>li a.gnav-menu-link .text-with-icon { display: flex !important; justify-content: center !important; align-items: center !important; gap: 8px !important; }
.pc #page .l-header nav.ganv-main-menu-list>ul>li a.gnav-menu-link.is-selected, .pc #page .l-header nav.ganv-main-menu-list>ul>li a.gnav-menu-link:hover { border-bottom: 4px solid #d80000 !important; }
.pc #page .l-header nav.ganv-main-menu-list>ul>li a.gnav-menu-link.is-selected span, .pc #page .l-header nav.ganv-main-menu-list>ul>li a.gnav-menu-link.is-selected i { transform: translateY(2px) !important; }
.pc #page .l-header nav.ganv-main-menu-list>ul>li a.gnav-menu-link:hover { background: #f7f7f7 !important; }
.pc #page .l-header nav.ganv-main-menu-list>ul>li a.gnav-menu-link:hover span, .pc #page .l-header nav.ganv-main-menu-list>ul>li a.gnav-menu-link:hover i { transform: translateY(2px) !important; }
.pc #page .l-header nav.ganv-main-menu-list>ul>li.ganv-main-menu-list--plan a span { color: #000 !important; font-size: 16px !important; font-style: normal !important; font-weight: 700 !important; line-height: 24px !important; }
.pc #page .l-header .btn-apply a { padding: 16px 24px !important; font-size: 16px !important; transition: all 0.2s ease-in !important; }
.pc #page .l-header .btn-apply a:hover { background: #ec0606 !important; }
.pc #page .floating-cta-button .btn-apply>a { width: 400px !important; padding: 16px 24px !important; gap: 16px !important; transition: all 0.2s ease-in !important; }
.pc #page .floating-cta-button .btn-apply>a:hover { background-color: #ff1212 !important; }
.pc #page .floating-cta-button .btn-apply>a .txt { font-size: 24px !important; font-style: normal !important; font-weight: 700 !important; line-height: 32px !important; }
.pc #page .floating-cta-button .btn-apply>a .txt-small { font-size: 18px !important; font-style: normal !important; font-weight: 400 !important; line-height: 31px !important; }
.pc #page .floating-cta-button .btn-apply>a .txt+svg { width: 24px !important; height: 24px !important; }
/* 手動追加（app.cssの@media変換とは無関係）: フッターをposition:relativeにする指定 */
#page .l-footer { position: relative !important; }
.pc #page .l-footer { padding: 64px 0 !important; box-shadow: 0px 8px 32px 0px rgba(0, 0, 0, 0.1) !important; }
.pc #page .l-footer .footer-group .footer-upper-group { flex-direction: row !important; gap: 64px !important; width: 950px !important; justify-content: flex-start !important; align-self: center !important; }
.pc #page .l-footer .footer-group nav { flex-direction: row !important; gap: 64px !important; }
.pc #page .l-footer .footer-group nav dl dt, .pc #page .l-footer .footer-group nav dl dd { font-size: 16px !important; line-height: 24px !important; }
.pc #page .l-footer .footer-group nav dl dt a, .pc #page .l-footer .footer-group nav dl dd a { transition: all 0.2s ease-in !important; }
.pc #page .l-footer .footer-group nav dl dt a:hover, .pc #page .l-footer .footer-group nav dl dd a:hover { color: #d80000 !important; text-decoration: underline !important; }
.pc #page .footer__trademark .icon { display: inline-block !important; }
.pc #page .footer__trademark br { display: none !important; }
.pc #page .footer__copyright { margin-top: 0 !important; line-height: 1 !important; }
.pc #page .l-feature { padding-bottom: 48px !important; }
.pc #page .s-feature { padding: 40px 0 0 !important; }
.pc #page .s-feature .heading { line-height: 1.5 !important; }
.pc #page .s-feature--latest .more-button { margin-top: 64px !important; }
.pc #page .rpush-trial { padding: 42px 0 39px !important; }
.pc #page .rpush-trial .l-inner { position: relative !important; }
.pc #page .rpush-trial .l-inner::before { display: inline-block !important; content: url('../../../assets/pages/rpush/img/app image.png') !important; position: absolute !important; left: 66px !important; top: -12px !important; }
.pc #page .rpush-trial__button { margin-top: 30px !important; }
.pc #page .rpush-trial__note { margin-top: 24px !important; font-size: 1.6rem !important; }
.pc #page .rpush-hero__bg svg { right: 0 !important; bottom: 0 !important; left: 50% !important; margin-left: -1000px !important; height: 100% !important; }
.pc #page .rpush-hero__top:after { content: '.' !important; display: block !important; clear: both !important; height: 0 !important; visibility: hidden !important; }
.pc #page .rpush-hero__logo { float: left !important; margin: 8px auto 0 !important; width: 338px !important; }
.pc #page .rpush-hero__logo img { width: 100% !important; height: auto !important; }
.pc #page .rpush-hero__banner { float: right !important; margin-top: 0 !important; height: 80% !important; }
.pc #page .rpush-hero__banner img { width: auto !important; height: 100% !important; }
.pc #page .rpush-hero__image { margin-top: 24px !important; height: 445px !important; }
.pc #page .rpush-hero__image a { height: 100% !important; }
.pc #page .rpush-hero__image img { width: auto !important; height: 100% !important; }
.pc #page .rpush-hero__content { margin-top: 24px !important; padding: 0 !important; text-align: center !important; }
.pc #page .rpush-hero__date { right: 0 !important; top: 24px !important; }
.pc #page .rpush-hero__artist { font-size: 2.8rem !important; font-weight: normal !important; }
.pc #page .rpush-hero__title { margin-top: 16px !important; font-size: 3.2rem !important; font-weight: normal !important; }
.pc #page .rpush-hero__title .icon-disk { margin: 0 12px 6px 0 !important; width: 32px !important; height: 32px !important; }
.pc #page .rpush-hero__interview { margin-top: 21px !important; padding: 7px 12px 5px 10px !important; }
.pc #page .rpush-hero__description { font-size: 1.4rem !important; line-height: 1.71 !important; color: #fff !important; text-align: left !important; }
.pc #page .rpush-hero__button { margin-top: 8px !important; }
.pc #page .s-archive { padding-bottom: 48px !important; }
.pc #page .s-archive .s-feature .heading { margin-bottom: 25px !important; font-size: 3.2rem !important; }
.pc #page .s-archive .s-feature .heading__sub { font-size: 1.8rem !important; }
.pc #page .s-archive .pagination { margin: 65px 0 0 !important; }
.pc #page .s-biography { padding: 40px 0 !important; }
.pc #page .biography__bg svg { right: 0 !important; bottom: 0 !important; left: 50% !important; margin-left: -1000px !important; height: 100% !important; }
.pc #page .biography__artist { font-size: 3rem !important; }
.pc #page .biography__image { margin: 32px auto 0 !important; width: 735.11905px !important; height: 325px !important; }
.pc #page .biography__image img { width: auto !important; height: 100% !important; }
.pc #page .biography__description { line-height: 1.86 !important; }
.pc #page .s-biography.has-description .biography__image { margin: 26px auto 0 !important; width: 445.59524px !important; height: 197px !important; }
.pc #page .s-release-info { padding: 46px 0 28px !important; }
.pc #page .s-release-info:after { content: '.' !important; display: block !important; clear: both !important; height: 0 !important; visibility: hidden !important; }
.pc #page .s-release-info .l-inner { position: relative !important; }
.pc #page .latest-release__summary { display: flex !important; flex-wrap: wrap !important; padding-left: 207px !important; width: 592px !important; min-height: 182px !important; position: relative !important; }
.pc #page .latest-release__title { margin-bottom: 0 !important; font-size: 2.6rem !important; text-align: left !important; }
.pc #page .latest-release__image { position: absolute !important; left: 0 !important; top: 0 !important; margin: 0 !important; }
.pc #page .latest-release__image img { max-width: 170px !important; max-height: 182px !important; }
.pc #page .latest-release__date { width: 100% !important; height: 100% !important; align-self: flex-end !important; }
.pc #page .latest-release__date th { word-break: break-all !important; }
.pc #page .latest-release__banner { width: 592px !important; min-height: 80px !important; }
.pc #page .trial-box { margin-top: 0 !important; width: 384px !important; position: absolute !important; right: 16px !important; top: 0 !important; }
.pc #page .trial-box__button .btn { display: block !important; }
.pc #page .s-interview { padding: 28px 0 !important; }
.pc #page .interview__box { padding: 32px !important; }
.pc #page .interview__heading { margin-bottom: 40px !important; font-size: 2rem !important; }
.pc #page .interview__content:after { content: '.' !important; display: block !important; clear: both !important; height: 0 !important; visibility: hidden !important; }
.pc #page .interview__image { float: left !important; width: 316px !important; margin: 0 52px 0 0 !important; }
.pc #page .interview__image img { width: 100% !important; height: auto !important; }
.pc #page .interview__lead { margin: 0 !important; font-size: 2rem !important; }
.pc #page .interview__description { margin-top: 16px !important; line-height: 1.69 !important; }
.pc #page .s-playlist { padding: 28px 0 !important; }
.pc #page .playlist__heading { margin-bottom: 30px !important; }
.pc #page .playlist__list:after { content: '.' !important; display: block !important; clear: both !important; height: 0 !important; visibility: hidden !important; }
.pc #page .playlist__title { float: left !important; padding: 16px 24px !important; font-size: 1.6rem !important; width: 413px !important; clear: left !important; }
.pc #page .playlist__artist { float: left !important; padding: 16px 24px !important; font-size: 1.6rem !important; width: 595px !important; border-top: 1px solid rgba(0, 0, 0, 0.18) !important; }
.pc #page .s-movie { padding: 28px 0 !important; }
.pc #page .movie__grid { display: flex !important; justify-content: center !important; }
.pc #page .movie__grid:after { content: '.' !important; display: block !important; clear: both !important; height: 0 !important; visibility: hidden !important; }
.pc #page .movie__grid.has-hidden-col .movie__col { margin: 0 auto !important; float: none !important; }
.pc #page .movie__col { margin-top: 0 !important; width: 348px !important; }
.pc #page .movie__heading { margin-bottom: 3.2rem !important; font-size: 2rem !important; }
.pc #page .movie__content a:hover { box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.2) !important; position: relative !important; }
.pc #page .movie__content a:hover::after { position: absolute !important; left: 0 !important; top: 0 !important; z-index: 1 !important; content: '' !important; width: 100% !important; height: 100% !important; background-color: rgba(0, 0, 0, 0.3) !important; }
.pc #page .movie__content a:focus { position: relative !important; }
.pc #page .movie__content a:focus::after { position: absolute !important; left: 0 !important; top: 0 !important; z-index: 1 !important; content: '' !important; width: 100% !important; height: 100% !important; background-color: rgba(0, 0, 0, 0.3) !important; }
.pc #page .movie__content a:active { position: relative !important; }
.pc #page .movie__content a:active::after { position: absolute !important; left: 0 !important; top: 0 !important; z-index: 1 !important; content: '' !important; width: 100% !important; height: 100% !important; background-color: rgba(0, 0, 0, 0.5) !important; }
.pc #page .s-books-item { margin-top: 28px !important; padding: 28px 0 48px !important; }
.pc #page .books-item__logo { margin-bottom: 12px !important; width: 368px !important; }
.pc #page .books-item__logo img { width: 100% !important; height: auto !important; }
.pc #page .books-item__heading { margin-bottom: 40px !important; font-size: 2.4rem !important; }
.pc #page .books-item__heading .heading__sub { font-size: 1.8rem !important; }
.pc #page .books-item__list { justify-content: space-around !important; }
.pc #page .books-item__card { width: auto !important; padding-top: 34px !important; }
.pc #page .books-item__card--feature { padding-top: 0 !important; }
.pc #page .books-item__card--feature+.books-item__card { padding-left: 18px !important; }
.pc #page .books-item__card__image { margin: 0 !important; width: 144px !important; text-align: left !important; }
.pc #page .books-item__card__image>a { height: 144px !important; }
.pc #page .books-item__card__image>a:hover { box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.2) !important; position: relative !important; }
.pc #page .books-item__card__image>a:hover::after { position: absolute !important; left: 0 !important; top: 0 !important; z-index: 1 !important; content: '' !important; width: 100% !important; height: 100% !important; background-color: rgba(0, 0, 0, 0.3) !important; }
.pc #page .books-item__card__image>a:focus { position: relative !important; }
.pc #page .books-item__card__image>a:focus::after { position: absolute !important; left: 0 !important; top: 0 !important; z-index: 1 !important; content: '' !important; width: 100% !important; height: 100% !important; background-color: rgba(0, 0, 0, 0.3) !important; }
.pc #page .books-item__card__image>a:active { position: relative !important; }
.pc #page .books-item__card__image>a:active::after { position: absolute !important; left: 0 !important; top: 0 !important; z-index: 1 !important; content: '' !important; width: 100% !important; height: 100% !important; background-color: rgba(0, 0, 0, 0.5) !important; }
.pc #page .books-item__card__image img { width: 100% !important; height: auto !important; vertical-align: bottom !important; }
.pc #page .books-item__card__title a:hover, .pc #page .books-item__card__title a:focus { color: #a3ddf9 !important; }
.pc #page .books-item__card__title a:active { color: #0d6794 !important; }
.pc #page .books-item__button { margin-top: 40px !important; }
.pc #page .books-item__note { margin-top: 24px !important; color: #333333 !important; }
.pc #page .interview-hero__heading { font-size: 3.2rem !important; }
.pc #page .interview-hero__date { margin-top: 18px !important; }
.pc #page .interview-hero__image { margin: 24px 0 0 !important; }
.pc #page .interview-hero__image img { width: 100% !important; height: auto !important; }
.pc #page .interview-hero__description { margin-top: 24px !important; padding: 0 !important; background-color: transparent !important; line-height: 1.71 !important; color: #828282 !important; }
.pc #page .s-back-to-top { padding: 64px 0 !important; }
.pc #page .campaign-hero__image img { width: 100% !important; height: auto !important; }
.pc #page .campaign-hero__schedule { font-size: 1.8rem !important; line-height: 1 !important; }
.pc #page .campaign-hero__schedule__note { font-size: 12px; }
.pc #page .s-entry-form { padding-top: 48px !important; }
.pc #page .s-entry-form .l-inner { width: 624px !important; }
.pc #page .s-delivery-list { border-top: 1px solid #d1d1d1 !important; border-bottom: 1px solid #d1d1d1 !important; }
.pc #page .item-list { padding-bottom: 64px !important; }
.pc #page .item-list .item__list { margin: -32px auto -32px !important; }
.pc #page .item-list .item__card { margin: 32px 0 0 32px !important; width: auto !important; }
.pc #page .item-list .item__card__image { width: 176px !important; }
.pc #page .item-list .item__card__image>a { height: 176px !important; }
.pc #page .item-list .item__card__image>a:hover { box-shadow: 0 5px 10px 0 rgba(0, 0, 0, 0.2) !important; position: relative !important; }
.pc #page .item-list .item__card__image>a:hover::after { position: absolute !important; left: 0 !important; top: 0 !important; z-index: 1 !important; content: '' !important; width: 100% !important; height: 100% !important; background-color: rgba(0, 0, 0, 0.3) !important; }
.pc #page .item-list .item__card__image>a:focus { position: relative !important; }
.pc #page .item-list .item__card__image>a:focus::after { position: absolute !important; left: 0 !important; top: 0 !important; z-index: 1 !important; content: '' !important; width: 100% !important; height: 100% !important; background-color: rgba(0, 0, 0, 0.3) !important; }
.pc #page .item-list .item__card__image>a:active { position: relative !important; }
.pc #page .item-list .item__card__image>a:active::after { position: absolute !important; left: 0 !important; top: 0 !important; z-index: 1 !important; content: '' !important; width: 100% !important; height: 100% !important; background-color: rgba(0, 0, 0, 0.5) !important; }
.pc #page .item-list .item__card__image img { width: 100% !important; height: auto !important; }
.pc #page .s-recommend-list .item-list { padding-bottom: 0 !important; }
.pc #page .s-recommend-list .btn-container { padding-top: 80px !important; }
.pc #page .campaign-detail__title, .pc #page .campaign-detail__note { padding: 24px !important; }
.pc #page .campaign-detail__table { width: 100% !important; }
.pc #page .campaign-detail__table th { border-bottom: 2px solid #ebebeb !important; padding: 24px !important; width: 313px !important; text-align: left !important; vertical-align: top !important; }
.pc #page .campaign-detail__table td { border-bottom: 2px solid #ebebeb !important; padding: 24px !important; }
.pc #page .campaign-detail__table th.js-toggle__trigger { display: table-cell !important; }
/* @keyframes fadeInAnimePc は _common/css/header.css に移設済み */
/* .pc .noWebView { display: none !important; } は本番で検索窓がPC表示されている実態と合わないため削除 */
.pc #page.interview .l-content .l-inner__main { font-size: 1.6rem !important; line-height: 1.69 !important; }
.pc #page.interview .l-content .l-inner__main .text-box, .pc #page.interview .l-content .l-inner__main .content-box { margin-top: 40px !important; }
.pc #page.interview .l-content .l-inner__main .heading { margin-bottom: 40px !important; font-size: 2rem !important; }
.pc #page.interview .l-content .l-inner__main .heading:not(:first-child) { margin-top: 40px !important; }
.pc #page.interview .l-content .l-inner__side .sns-area { margin-top: 40px !important; padding: 16px 24px 32px !important; background-color: #f7f7f7 !important; }
.pc #page.interview .l-content .l-inner__side .sns-area .heading { display: block !important; margin-bottom: 16px !important; font-size: 1.4rem !important; }
.pc #page.interview .l-content .l-inner__side .sns-area .sns-box { margin-top: 0 !important; }
.pc #page.interview .l-content .l-inner__side .sns-area .sns-box__button { margin: 16px 0 0 !important; width: 100% !important; height: 40px !important; }
.pc #page.interview .l-content .l-inner__side .sns-area .sns-box__button .btn--sns { border-radius: 100px !important; }
.pc #page.interview .l-content .l-inner__side .sns-area .sns-box__row--fb { display: block !important; }
.pc #page.interview .l-content .l-inner__side .sns-area .sns-box__row--fb:after { content: '.' !important; display: block !important; clear: both !important; height: 0 !important; visibility: hidden !important; }
.pc #page.interview .l-content .l-inner__side .sns-area .sns-box__row--fb .sns-box__button { margin-top: 0 !important; width: auto !important; }
.pc #page.interview .l-content .l-inner__side .sns-area .sns-box__row--fb .sns-box__button .btn--sns { padding: 0 16px !important; font-size: 1.2rem !important; }
.pc #page.interview .l-content .l-inner__side .sns-area .sns-box__row--fb .sns-box__button:nth-child(odd) { float: left !important; width: 127px !important; }
.pc #page.interview .l-content .l-inner__side .sns-area .sns-box__row--fb .sns-box__button:nth-child(even) { float: right !important; }
.sp #page .header--sp__panel { display: flex !important; flex-direction: column !important; padding: 8px 0 24px !important; gap: 24px !important; }
.sp #page .header--sp__panel .global-nav { padding: 0 !important; }
.sp #page ul.global-nav__list { display: flex !important; flex-direction: row !important; flex-wrap: wrap !important; padding: 0 16px !important; gap: 0 8px !important; }
.sp #page li.global-nav__item { width: calc((100% - 8px) / 2) !important; border-bottom: 1px solid white !important; }
.sp #page .header--sp__bottom_wrapper { display: flex !important; border-bottom: 1px solid white !important; }
.sp #page .header--sp__bottom_wrapper>* { flex: 1 !important; width: 50% !important; }
.sp #page .header--sp__bottom_wrapper .sp-menu-webplayer { padding: 0 !important; }
.sp #page .header--sp__bottom_wrapper .sp-menu-webplayer a { padding: 16px !important; display: flex !important; align-items: center !important; justify-content: center !important; }
.sp #page .header--sp__bottom_wrapper .sp-menu-webplayer a span span { font-size: 12px !important; }
.sp #page .header--sp__bottom_wrapper .sp-menu-mypage { padding: 0 !important; }
.sp #page .header--sp__bottom_wrapper .sp-menu-mypage a { display: flex !important; height: 100% !important; align-items: center !important; justify-content: center !important; font-size: 12px !important; }
.sp #page img { width: 100% !important; height: auto !important; }
.pc #page img.yearly-Polygon { width: 12px !important; height: 9px !important; flex: 0 0 auto !important; }
.sp #page img.yearly-Polygon { width: 12px !important; height: auto !important; flex: 0 0 auto !important; }
.sp #page .plan-item-yearly-price-group img:not(.yearly-Polygon) { width: 49px !important; height: auto !important; }
.sp #page .footer-logo img { width: 180px !important; height: auto !important; }
.sp #page .js-toggle__panel { overflow: hidden !important; max-height: 0 !important; transition: all 0.5s ease-in-out !important; }
.sp #page .js-toggle.is-open .js-toggle__panel { max-height: 1000px !important; }
.sp #page .js-toggle--keep-open.is-open .js-toggle__trigger { display: none !important; }
.sp #page .header__button .trial-button { padding: 0 0 24px !important; }
.sp #page .js-toggle--fade .js-toggle__target { overflow: hidden !important; max-height: 0 !important; opacity: 0 !important; animation-name: fadeIn !important; transition: opacity 2s ease-out !important; }
.sp #page .js-toggle--fade.is-open .js-toggle__target { max-height: 1000px !important; opacity: 1 !important; }
.sp #page .js-toggle--fade.is-closing .js-toggle__target { opacity: 0 !important; animation-name: fadeIn !important; transition: opacity 2s ease-out !important; }
.sp #page .l-inner--sp-full { padding: 0 !important; }
.sp #page .feature__card a { background-color: #fff !important; }
.sp #page .campaign-list--sp-s .campaign__title { display: none !important; }
.sp #page .tab-nav { position: relative !important; }
.sp #page .tab-nav::before { position: absolute !important; top: 0 !important; content: '' !important; width: 30px !important; height: 100% !important; background-color: rgba(255, 255, 255, 0.8) !important; left: 0 !important; border-radius: 0 50% 50% 0 !important; box-shadow: 10px 0 20px 10px rgba(255, 255, 255, 0.8) !important; }
.sp #page .tab-nav::after { position: absolute !important; top: 0 !important; content: '' !important; width: 30px !important; height: 100% !important; background-color: rgba(255, 255, 255, 0.8) !important; right: 0 !important; border-radius: 50% 0 0 50% !important; box-shadow: -10px 0 20px 10px rgba(255, 255, 255, 0.8) !important; }
.sp #page .tab-nav__inner { overflow: scroll !important; }
.sp #page .tab-nav__item { min-width: 135px !important; }
.sp #page .pagination { background-color: #ebebeb !important; padding: 23px 16px 26px !important; }
.sp #page .pagination:after { content: '.' !important; display: block !important; clear: both !important; height: 0 !important; visibility: hidden !important; }
.sp #page .pagination__controller:first-of-type { float: left !important; }
.sp #page .pagination__controller:last-of-type { float: right !important; }
.sp #page .pagination__controller__prev { margin-left: 32px !important; }
.sp #page .pagination__controller__next { margin-right: 32px !important; }
.sp #page .pagination__item { font-weight: bold !important; }
.sp #page .pagination__ellipsis, .sp #page .pagination__num:not(.is-current) { display: none !important; }
.sp #page .pagination__total .delimiter { display: inline-block !important; margin: auto 8px !important; }
.sp #page .sns-box { margin-top: 24px !important; }
.sp #page .sns-box__row { margin-left: -10px !important; }
.sp #page .sns-box__row:after { content: '.' !important; display: block !important; clear: both !important; height: 0 !important; visibility: hidden !important; }
.sp #page .sns-box__row:not(:first-child) { margin-top: 16px !important; }
.sp #page .sns-box__button { float: left !important; width: 33.33% !important; height: 40px !important; padding-left: 10px !important; }
.sp #page .sns-box__button--s { padding-right: 9% !important; }
.sp #page .l-header .l-inner { padding: 0 !important; }
.sp #page .global-nav__item .rex-icon { display: none !important; }
.sp #page .s-feature .feature__card.js-toggle__target { border-bottom-width: 0 !important; margin-bottom: 0 !important; }
.sp #page .s-feature .js-toggle.is-open .feature__card.js-toggle__target { border-bottom-width: 1px !important; margin-bottom: 1px !important; }
.sp #page .s-feature--ranking .feature__card a { background-color: rgba(0, 0, 0, 0.2) !important; }
.sp #page .rpush-hero__bg svg { width: 100% !important; height: auto !important; }
.sp #page .s-archive .s-feature { padding-bottom: 0 !important; }
.sp #page .biography__bg svg { width: 100% !important; height: auto !important; }
.sp #page .books-item__card:not(.books-item__card--feature):nth-child(odd) .books-item__card__image { margin: 0 0 0 auto !important; }
.sp #page .s-entry-form .entry-form__button .btn { width: 100% !important; }
.sp #page .item-list .item__card:nth-child(even) .item__card__image { margin: 0 0 0 auto !important; }
.sp #page .item-list .js-toggle__trigger { background-color: transparent !important; }
.sp #page .item-list .item__card.js-toggle__target { margin-top: 0 !important; }
.sp #page .item-list .js-toggle.is-open { padding-bottom: 48px !important; }
.sp #page .item-list .js-toggle.is-open .item__card.js-toggle__target { margin-top: 26px !important; }
.sp #page .campaign-detail__table { width: 100% !important; }
.sp #page .campaign-detail__table th { text-align: left !important; width: auto !important; display: block !important; padding: 16px 35px 16px 16px !important; border-bottom: 1px solid #ebebeb !important; font-weight: normal !important; position: relative !important; }
.sp #page .campaign-detail__table th::after { display: inline-block !important; content: '' !important; width: 0px !important; height: 0px !important; vertical-align: middle !important; margin: -4px 0 0 6px !important; border-top: 8px solid #686868 !important; border-right: 6px solid transparent !important; border-left: 6px solid transparent !important; position: absolute !important; right: 6px !important; top: 50% !important; }
.sp #page .campaign-detail__table td { text-align: left !important; width: auto !important; display: block !important; padding: 0 16px !important; background-color: #f7f7f7 !important; font-size: 1.4rem !important; }
.sp #page .campaign-detail__table .is-open th::after { transform: rotate(180deg) !important; }
.sp #page .campaign-detail__table .is-open td { padding: 16px !important; }
.sp .noWebView .searchIcon svg { width: 15px !important; height: 15px !important; vertical-align: middle !important; }
.sp .nav-searchbar { margin: 1rem !important; }
.sp .nav-searchbar input::-webkit-input-placeholder { font-size: 14px !important; }
.sp .noMobileView { display: none !important; }
.sp #page.interview .l-content .l-inner__main .text-box, .sp #page.interview .l-content .l-inner__main .content-box, .sp #page.interview .l-content .l-inner__main .content-box__text, .sp #page.interview .l-content .l-inner__main .heading:not(:first-child) { margin-top: 32px !important; }
.sp #page.interview .l-content .l-inner__side .s-feature { display: none !important; }
.sp .noWebView .searchIcon { left: 84% !important; top: 20% !important; position: absolute !important; }
.sp .noWebView input { width: 90% !important; }
.sp .nav-searchbar input::-webkit-input-placeholder { font-size: 10px !important; }
.sp #page .l-inner { width: 100% !important; }
.sp .is-hidden--sp { display: none !important; }
.pc .is-hidden--pc { display: none !important; }
#entmt-common-ui-topbar { display: flex !important; align-items: center; justify-content: flex-end; gap: 16px; height: 32px; line-height: 1; z-index: 99998; background-color: #FFF; }

/* キャンペーン詳細の表：セル間の2px(border-spacing)の隙間で罫線が途切れるのを、全ページ共通でなくす */
#page table.campaign-detail__table { border-spacing: 0 !important; }

/* 「学生プランとは」「その他の料金プランをみる」などの .btn-light-secondary：ホバー時（背景が赤くなる）だけ文字色は白（サイト共通の a:hover の色指定を打ち消す）。
   クリック(:active)・フォーカス(:focus)では文字色を変えない（背景は白のままなので、白にすると文字が消える。ブラウザバックで戻ったときも同じ） */
.pc #page .btn-light-secondary:hover { color: #fff !important; }
.pc #page .btn-light-secondary:focus:not(:hover),
.pc #page .btn-light-secondary:active:not(:hover) { color: #d80000 !important; }

/* 学生プランとは（ダークボタン）：ホバー時の文字色は白（全ページ共通）。クリック・フォーカスでは文字色を変えない */
.pc #page .btn-dark-secondary:hover {
  color: #fff !important;
}
.pc #page .btn-dark-secondary:focus:not(:hover),
.pc #page .btn-dark-secondary:active:not(:hover) {
  color: #f53a3a !important;
}

/* app.css の手直しを、本番の app.css を読む環境（WP）にも効かせるための追記 */
/* PC版は固定幅デザイン。本文の最小幅を下回ったら横スクロール（.sp側には適用しない） */
body.pc { min-width: 1104px !important; }
.pc #page .l-header { min-width: 1104px !important; }
.pc #page .floating-cta-button { min-width: 1104px !important; }
.pc #page section { padding-top: 40px; }
/* ヘッダーのメニューが縮んで縦書きに折れないように */
#page .l-header .gnav-main-inner { flex-shrink: 0; }
/* 余白の調整（app.css 元値 24/24/32 → 12/12/20）。.pc/.sp 個別指定のほうが優先される */
#page .campaign__item { padding-top: 12px; }
#page .campaign-list.has-border .campaign__item { padding-bottom: 12px; }
#page .heading--m { margin-bottom: 20px; }

/* common.css の @media (min-width:768px) を .pc 方式にしたもの */
.pc #page .l-content .btn-dark-secondary, .pc #page .l-content .btn-light-secondary { transition: all 0.2s ease-in !important; font-size: 16px !important; }
.pc #page .l-content .btn-dark-secondary:hover { background: #f53a3a !important; color: #020717 !important; }
.pc #page .l-content .btn-light-secondary:hover { background: #d80000 !important; color: white !important; }
.pc #page .l-content .btn-default-light a, .pc #page .l-content .btn-default-dark a, .pc #page .l-content .btn-secondaly-light a, .pc #page .l-content .btn-secondaly-dark a { font-size: 16px !important; font-style: normal !important; font-weight: 700 !important; line-height: 140% !important; transition: all 0.2s ease-in !important; }
.pc #page .l-content .btn-default-light a:hover { background: #ec0606 !important; }
.pc #page .l-content .btn-default-dark a:hover { background: #d80000 !important; }
.pc #page .l-content .btn-secondaly-light a:hover { background: #d80000 !important; color: white !important; }
.pc #page .l-content .btn-secondaly-dark a:hover { background: #f53a3a !important; color: #020717 !important; }
.pc #page .l-content .multi-step { border-radius: 32px !important; width: 950px !important; margin: 0 auto !important; }
.pc #page .l-content .multi-step>h3 { padding: 24px !important; font-size: 32px !important; font-style: normal !important; font-weight: 700 !important; line-height: 44px !important; }
.pc #page .l-content .multi-step .multi-step-content { padding: 32px !important; gap: 32px !important; }
.pc #page .l-content .multi-step .multi-step-content p.lead { font-size: 20px !important; font-style: normal !important; font-weight: 400 !important; line-height: 28px !important; }
.pc #page .l-content .step-overview ul { gap: 16px !important; }
.pc #page .l-content .step-overview ul li { width: 150px !important; padding: 16px !important; flex-direction: column !important; align-items: center !important; gap: 8px !important; }
.pc #page .l-content .step-overview ul li p.step-overview-number { font-size: 16px !important; font-style: normal !important; font-weight: 700 !important; line-height: 24px !important; }
.pc #page .l-content .step-overview ul li p.txt { font-size: 16px !important; font-style: normal !important; font-weight: 400 !important; line-height: 24px !important; }
.pc #page .l-content .bg-dark, .pc #page .l-content .bg-light { padding: 64px 0px !important; }
.pc #page .l-content .bg-dark .ttl-group h2, .pc #page .l-content .bg-light .ttl-group h2 { font-size: 48px !important; }
.pc #page .l-content .bg-dark .ttl-group sub, .pc #page .l-content .bg-light .ttl-group sub { font-size: 20px !important; }
.pc #page .l-content .bg-dark .summary-group h3, .pc #page .l-content .bg-light .summary-group h3 { font-size: 32px !important; }
.pc #page .l-content .bg-dark .summary-group p, .pc #page .l-content .bg-light .summary-group p { font-size: 16px !important; }
.pc #page .l-content .bg-dark .summary-group a, .pc #page .l-content .bg-light .summary-group a { font-size: 16px !important; }
.pc #page .l-content .bg-dark .summary-group a:hover, .pc #page .l-content .bg-light .summary-group a:hover { text-decoration: none !important; }
.pc #page .l-content .bg-dark .bg-dark-txt { font-size: 192px !important; top: -44px !important; }
/* 「こんな方におすすめ」(#top-section-scene) の各項目の背景テキスト(ECO SYSTEM など)は、セクション見出しの背景テキスト(192px)ではなく本番と同じ96px・top 20px。上の指定は子孫の .bg-dark-txt にも効いてしまうので打ち消す */
.pc #page #top-section-scene ul.scene>li .bg-dark-txt { font-size: 96px !important; top: 20px !important; }
.pc #page .l-content .bg-light .bg-light-txt { font-size: 192px !important; top: -44px !important; }
.pc #page .l-content .trial-group { width: 950px !important; padding: 64px !important; flex-direction: row !important; justify-content: space-between !important; align-items: center !important; }
.pc #page .l-content .trial-group .trial-txt-group { align-items: flex-start !important; }
.pc #page .l-content .trial-group .trial-txt-group p { font-size: 20px !important; }
.pc #page .l-content .trial-group .trial-txt-group p strong { font-size: 32px !important; }
.pc #page .l-content .trial-group .btn-apply>a.trial-btn { font-size: 24px !important; line-height: 32px !important; transition: all 0.2s ease-in !important; }
.pc #page .l-content .trial-group .btn-apply>a.trial-btn:hover { background: #ec0606 !important; }
.pc #page .l-content .price-caption { align-items: center !important; }
.pc #page .l-content .price-caption p { width: 886px !important; }
.pc #page .l-content .price-caption p a:hover { text-decoration: none !important; }
.pc #page .l-content .plan-monthly-group, .pc #page .l-content .plan-yearly-group { padding: 64px 0 !important; align-items: center !important; }
.pc #page .l-content .plan-monthly-group>div, .pc #page .l-content .plan-yearly-group>div { width: 822px !important; margin: 0 auto !important; }
.pc #page .l-content .plan-monthly-group .ttl-group, .pc #page .l-content .plan-yearly-group .ttl-group { padding-bottom: 32px !important; }
.pc #page .l-content .plan-monthly-group .ttl-group h2, .pc #page .l-content .plan-yearly-group .ttl-group h2 { font-size: 32px !important; }
.pc #page .l-content .plan-monthly-group .ttl-group p.caption, .pc #page .l-content .plan-yearly-group .ttl-group p.caption { font-size: 12px !important; line-height: 16px !important; }
.pc #page .l-content .plan-monthly-group .plan-group-outer, .pc #page .l-content .plan-yearly-group .plan-group-outer { flex-direction: row !important; justify-content: space-between !important; }
.pc #page .l-content .plan-monthly-group .plan-group, .pc #page .l-content .plan-yearly-group .plan-group { gap: 16px !important; align-items: center !important; }
.pc #page .l-content .plan-monthly-group .plan-group h3, .pc #page .l-content .plan-yearly-group .plan-group h3 { height: 62px !important; display: flex !important; align-items: center !important; text-align: center !important; flex-direction: column !important; gap: 4px !important; flex: none !important; }
.pc #page .l-content .plan-monthly-group .plan-group h3 span.cap, .pc #page .l-content .plan-yearly-group .plan-group h3 span.cap { text-align: center !important; font-size: 12px !important; font-style: normal !important; font-weight: 700 !important; line-height: normal !important; }
.pc #page .l-content .plan-monthly-group .plan-group .plan-item-group, .pc #page .l-content .plan-yearly-group .plan-group .plan-item-group { flex-direction: row !important; gap: 16px !important; }
.pc #page .l-content .plan-monthly-group .plan-item, .pc #page .l-content .plan-yearly-group .plan-item { border-left: 0 !important; border-top: 8px solid !important; width: 148px !important; height: 100% !important; flex-direction: column !important; gap: 16px !important; padding-bottom: 16px !important; }
.pc #page .l-content .plan-monthly-group .plan-item:hover .view-more, .pc #page .l-content .plan-yearly-group .plan-item:hover .view-more { box-shadow: 0px 4px 24px 0px rgba(0, 0, 0, 0.25) !important; }
.pc #page .l-content .plan-monthly-group .plan-item .plan-item-txt-group, .pc #page .l-content .plan-yearly-group .plan-item .plan-item-txt-group { padding: 16px 0 0 !important; align-items: center !important; height: 62px !important; flex: none !important; }
.pc #page .l-content .plan-monthly-group .plan-item .plan-item-txt-group .plan-name, .pc #page .l-content .plan-yearly-group .plan-item .plan-item-txt-group .plan-name { font-size: 16px !important; line-height: 140% !important; text-align: center !important; }
.pc #page .l-content .plan-monthly-group .plan-item .plan-item-yearly-price-group, .pc #page .l-content .plan-yearly-group .plan-item .plan-item-yearly-price-group { flex-direction: column !important; align-items: center !important; }
.pc #page .l-content .plan-monthly-group .plan-item .plan-item-price, .pc #page .l-content .plan-yearly-group .plan-item .plan-item-price { padding: 0 !important; height: 48px !important; display: flex !important; align-items: center !important; }
.pc #page .l-content .plan-monthly-group .plan-item .plan-item-price .yearly-to-monthly, .pc #page .l-content .plan-yearly-group .plan-item .plan-item-price .yearly-to-monthly { font-size: 24px !important; font-weight: 700 !important; }
.pc #page .l-content .plan-monthly-group .plan-item.standard, .pc #page .l-content .plan-yearly-group .plan-item.standard { border-right: none !important; }
.pc #page .l-content .plan-monthly-group .plan-item .view-more, .pc #page .l-content .plan-yearly-group .plan-item .view-more { transition: all 0.2s ease-in !important; display: flex !important; padding: 8px 16px !important; justify-content: center !important; align-items: center !important; gap: 10px !important; color: #fff !important; text-align: center !important; font-size: 12px !important; font-style: normal !important; font-weight: 700 !important; line-height: 120% !important; width: -moz-fit-content !important; width: fit-content !important; margin: 0 auto !important; border-radius: 24px !important; }
.pc #page .l-content .plan-monthly-group .plan-yearly-ttl-group, .pc #page .l-content .plan-yearly-group .plan-yearly-ttl-group { display: flex !important; flex-direction: column !important; align-items: center !important; gap: 16px !important; }
.pc #page .l-content .plan-yearly-group .plan-group-outer { justify-content: flex-start !important; }
.pc #page .l-content .caption-table { align-items: center !important; }
.pc #page .l-content .caption-table p { width: 886px !important; }
.pc #page .l-content .caption-table p a:hover { text-decoration: none !important; }
.pc #page .l-content .pricing-comparison>h3 { font-size: 24px !important; }
.pc #page .l-content .pricing-comparison ul.pricing-comparison-list { flex-direction: row !important; }
.pc #page .l-content .pricing-comparison ul.pricing-comparison-list>li { width: 160px !important; flex-direction: column !important; padding: 0 0 24px !important; gap: 16px !important; }
.pc #page .l-content .pricing-comparison ul.pricing-comparison-list>li div.service-name { width: 100% !important; height: 114px !important; padding: 24px 0px 16px 0px !important; gap: 16px !important; }
.pc #page .l-content .pricing-comparison ul.pricing-comparison-list>li div.service-name p.plan-name { height: 34px !important; display: flex !important; align-items: center !important; }
.pc #page .l-content .pricing-comparison ul.pricing-comparison-list>li p.compatitor-name { font-size: 16px !important; }
.pc #page .l-content .pricing-comparison ul.pricing-comparison-list>li p.plan-name { font-size: 12px !important; }
.pc #page .l-content .pricing-comparison ul.pricing-comparison-list>li div.plan-price div.plan-price--price { font-size: 24px !important; }
.pc #page .l-content .pricing-comparison ul.pricing-comparison-list>li div.plan-price div.plan-price--price span { font-size: 36px !important; }
.pc #page .l-content .pricing-comparison ul.pricing-comparison-list>li.our-service { width: 180px !important; padding-right: 0 !important; }
.pc #page .l-content .pricing-comparison ul.pricing-comparison-list>li.our-service div.service-name { width: 100% !important; }
.pc #page .l-content .pricing-comparison ul.pricing-comparison-list>li.our-service div.service-name>img { width: 136px !important; height: 24px !important; }
.pc #page .l-content .faq-item { width: 886px !important; }
.pc #page .l-content .faq-item .faq-question, .pc #page .l-content .faq-item .faq-answer { align-items: center !important; }
.pc #page .l-content .faq-item .faq-question p, .pc #page .l-content .faq-item .faq-answer p { font-size: 16px !important; line-height: 140% !important; }
.pc #page .l-content .faq-item .faq-question p a:hover, .pc #page .l-content .faq-item .faq-answer p a:hover { text-decoration: none !important; }
.pc #page .l-content .faq-item .accordion-flag:checked+.accordion-area+.accordion-switch { transition: all 0.2s ease-in !important; padding-top: 24px !important; }
.pc #page .l-content .plan-monthly-group .plan-item.standard { border-left: 0px !important; padding-top: 4px !important; }
.pc #page .l-content .plan-monthly-group .plan-item.cardmobile, .pc #page .l-content .plan-yearly-group .plan-item.cardmobile { border-left: 0px !important; }
.pc #page .l-content .plan-monthly-group .plan-item.cardmobile, .pc #page .l-content .plan-yearly-group .plan-item.cardmobile { border-left: 0px !important; }
.pc #page .l-content .plan-monthly-group .plan-item.student, .pc #page .l-content .plan-yearly-group .plan-item.student { border-left: 0px !important; padding-top: 4px !important; }
.pc #page .l-content .plan-monthly-group .plan-item.lite, .pc #page .l-content .plan-yearly-group .plan-item.lite { border-left: 0px !important; }
.pc #page .l-content .plan-monthly-group .plan-item.yearly, .pc #page .l-content .plan-yearly-group .plan-item.yearly { border-left: 0px !important; }
.pc #page .l-content .plan-yearly-group .plan-item.yearly { width: 148px !important; height: 100% !important; padding: 0 0 16px 0 !important; }
.pc #page .l-content .plan-monthly-group .plan-item.lite, .pc #page .l-content .plan-monthly-group .plan-item.cardmobile { padding-top: 4px !important; }
/* common.css への追加分 */
#page .campaign-detail__title { text-align: center; }

/* 画面下固定バー(PC)：ウィンドウが狭くても、ボタンを縮めず・折り返さない（PCの見た目のまま）。#sticky-apply-btn を使う全ページ共通 */
body.pc #page #sticky-apply-btn { justify-content: safe center !important; }
body.pc #page #sticky-apply-btn .btn-copy-code { flex: 0 0 auto !important; white-space: nowrap !important; }
body.pc #page #sticky-apply-btn .btn-apply { flex: 0 0 auto !important; }
body.pc #page #sticky-apply-btn .trial-btn { flex: 0 0 auto !important; }

/* stack-rakutenmusicrank.css(c5と共用のため上げない)から移したもの：RANKセクション(黒)の画像の左右余白、ニンテンドーカードのPC用 */
#page #stack-section-rakutenmusicrank-dark .rakutenmusic-rank-system { padding: 0 24px; }
.pc #page #stack-section-rakutenmusicrank a.rank-nintendo-prepaidcard { transition: all 0.2s ease-in !important; }
.pc #page #stack-section-rakutenmusicrank a.rank-nintendo-prepaidcard:hover { opacity: 0.8 !important; }
.pc #page #stack-section-rakutenmusicrank a.rank-nintendo-prepaidcard:hover span { text-decoration: none !important; }
.pc #page #stack-section-rakutenmusicrank a.rank-nintendo-prepaidcard span { font-size: 16px !important; font-style: normal !important; font-weight: 700 !important; line-height: 24px !important; }

/* 年額プランの上のスペースを12px狭める（-32px → -44px）。TOPページ(body.home)だけ */
.home.pc #page .l-content .plan-yearly-group { margin-top: -44px !important; }

/* 「アプリ内課金に関して：」の下のスペースを64pxに（年額グループの下64px+セクション下64px=128px → セクション下の64pxだけ）。TOPページ(body.home)だけ。他ページ(/plan/ など)は年額グループの下64pxのまま */
.home.pc #page .l-content .plan-yearly-group { padding-bottom: 0 !important; }

/* 画面下に固定の申込みボタン(#sticky-apply-btn)：ホバー・クリック時も文字色は白のまま、下線も付けない
   （上の `.pc #page a:hover { color: #a3ddf9 !important }` と a:hover の下線を打ち消す。固定ボタンのあるページ共通） */
.pc #page #sticky-apply-btn .trial-btn:hover,
.pc #page #sticky-apply-btn .trial-btn:focus,
.pc #page #sticky-apply-btn .trial-btn:active,
.pc #page #sticky-apply-btn .iap-store-link:hover,
.pc #page #sticky-apply-btn .iap-store-link:focus,
.pc #page #sticky-apply-btn .iap-store-link:active {
  color: #fff !important;
  text-decoration: none !important;
}

/* 最上部のバナー(1440px幅の画像)：画面幅が1440pxより狭いときに右へはみ出して横スクロールになるので、枠幅に収める（#upper-kv .bnr-entertainment のあるページ共通） */
#page #upper-kv .bnr-entertainment img { max-width: 100% !important; height: auto !important; }

/* 紹介キャンペーン系の「楽天ミュージックトップへ」ボタン(#section-overview .btn-secondary)：押して戻った後(:focus)や訪問済みでも文字色は赤のまま。ホバー時のみベージュ
   （上の `.pc #page a:focus { color: #a3ddf9 }` の水色を打ち消す） */
.pc #page #section-overview a.btn-secondary:link,
.pc #page #section-overview a.btn-secondary:visited,
.pc #page #section-overview a.btn-secondary:focus,
.pc #page #section-overview a.btn-secondary:active { color: #bf0000; }
.pc #page #section-overview a.btn-secondary:hover { color: #fff3e1; }

/* ReXエントリーボタン(PC)：「エントリー期間前です」などの無効状態でも、ウィンドウを狭めたときに横へ広がらないよう幅を固定する
   （rex-entry-button.css の `.pc #page .rex-button { width:400px }` と同じ値。そちらが読み込まれない環境でも効かせる） */
.pc #page .rex-button { width: 400px; max-width: 100%; box-sizing: border-box; }
