/* 0.4.14：🦎目視点検2（0.4.13）の直し。最後に読む */

/* ===== A0 ヒーローの文字は顔・頭・手・持ち物にかぶせない（服・胴の上は可）===== */
@media (min-width: 821px) {
	/* トップ：見出しを親指の手・レンチの手から下げてオーバーオールの上へ。少し小さく */
	.gr-tophero__title { top: 57% !important; font-size: calc(72 * var(--u, 1px)) !important; }
	.gr-tophero__en { top: 87% !important; left: 4.8% !important; text-align: left !important; }
	/* RIDERS BASE：文字の塊を7人から離す（幅を絞り、左を暗く）。スマホ2台は左下の地面へ */
	.gr-hero--rb .gr-hero__in > :not(.gr-hero__phones) { max-width: 25cqw !important; }
	.gr-hero--rb .gr-hero__in { padding-top: 21cqw !important; }
	.gr-hero--rb .gr-hero__title--en { font-size: 4.9cqw !important; }
	.gr-hero--rb .gr-hero__lead { font-size: max(13px, 1.12cqw) !important; }
	.gr-hero--rb::before { background: linear-gradient(90deg, rgba(0,0,0,.72) 0%, rgba(0,0,0,.55) 22%, rgba(0,0,0,0) 32%) !important; }
	.gr-hero--rb .gr-hero__phones { left: 3.5% !important; top: 63% !important; width: 23% !important; height: 31% !important; }
	/* MOVIE：「MOVIE」と本文をカメラの腕から離す */
	.gr-hero--movie .gr-hero__in > * { max-width: 25cqw; }
	.gr-hero--movie .gr-hero__title--en { font-size: 6.6cqw !important; }
	/* STORE・PROFILE：見出しを手から下げ、服（オーバーオール）の上に収める */
	.gr-hero--store .gr-hero__title, .gr-hero--profile .gr-hero__title { font-size: 5.1cqw !important; }
	.gr-hero--store .gr-hero__in, .gr-hero--profile .gr-hero__in { padding-bottom: 4.5cqw !important; }
}
@media (max-width: 820px) {
	.h6-sec .h6-stage { aspect-ratio: 1170 / 1241 !important; }
}
@media (min-width: 821px) { .gr-hero--movie .gr-hero__title { font-size: 5.4cqw !important; } }
/* プライバシー：ヒーローにページ名（手書きの下・バイクにかからない左下） */
.gr-hero__pname { font-size: 3.1cqw !important; margin-top: 0 !important; }
@media (max-width: 820px) { .gr-hero__pname { font-size: 26px !important; } }
/* トップの最後の帯（スマホ）：手書き「また、どこかの道で。」が左端のゴリラの頭に・「RIDE TO LIVE.」の上が切れていた → 空を広く見せ、手書きは空の中だけ */
@media (max-width: 820px) {
	.s-closing { height: calc(100vw / 2.05) !important; }
	.s-closing .closing-bg { object-position: 50% 0% !important; }
	.s-closing .closing-cast { display: none !important; }
	.s-closing .l-seeyou { width: 23% !important; top: 6px !important; left: 8px !important; }
	.s-closing .l-rideblock-t { font-size: 20px !important; top: 16px !important; right: 10px !important; line-height: 1.05 !important; }
}

/* ===== A1 固定 TOP ボタン：小さく・白い丸で暗い所でも見える・フッターが見えたら隠す・スマホはスクロール中だけ ===== */
.gr-totop { right: 14px !important; bottom: 14px !important; gap: 0 !important; width: 58px; height: 58px; justify-content: center; border-radius: 50% !important; background: rgba(255,255,255,.94) !important; box-shadow: 0 4px 14px rgba(0,0,0,.28), 0 0 0 2px var(--gr-orange) inset !important; }
.gr-totop--a .gr-totop__img { width: 40px !important; filter: none !important; margin-top: -4px; }
.gr-totop__txt { position: absolute; bottom: 5px; padding: 0 !important; background: none !important; color: var(--gr-orange) !important; font-size: 10px !important; letter-spacing: .08em !important; }
.gr-totop.is-foot { opacity: 0 !important; visibility: hidden !important; transform: translateY(16px) !important; }
@media (max-width: 767px) {
	.gr-totop { width: 46px; height: 46px; right: 8px !important; bottom: 10px !important; }
	.gr-totop--a .gr-totop__img { width: 32px !important; }
	.gr-totop__txt { font-size: 9px !important; bottom: 3px; }
	.gr-totop.is-show:not(.is-moving) { opacity: 0; visibility: hidden; transition: opacity .4s, visibility 0s .4s; }
	.gr-site .l-footer, .gr-site .s-footer { padding-bottom: 0 !important; }
}

/* ===== A-YouTube・A5：埋め込みは軽い形（サムネ＋再生ボタン） ===== */
.gr-yt, .gr-yt__frame { position: absolute; inset: 0; display: block; width: 100% !important; height: 100% !important; margin: 0; padding: 0; border: 0; border-radius: 8px; overflow: hidden; background: #000; cursor: pointer; }
.wp-block-embed.is-provider-youtube .wp-block-embed__wrapper { position: relative; aspect-ratio: 16 / 9; padding: 0 !important; height: auto !important; overflow: hidden; border-radius: 8px; background: #000; }
.wp-block-embed.is-provider-youtube .wp-block-embed__wrapper::before { content: none !important; }
.gr-yt img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .4s; }
.gr-yt:hover img { transform: scale(1.03); }
.gr-yt__play { position: absolute; left: 50%; top: 50%; width: 68px; height: 48px; margin: -24px 0 0 -34px; border-radius: 14px; background: rgba(255,0,0,.92); box-shadow: 0 4px 14px rgba(0,0,0,.4); }
.gr-yt__play::after { content: ""; position: absolute; left: 27px; top: 14px; border-left: 18px solid #fff; border-top: 10px solid transparent; border-bottom: 10px solid transparent; }
.gr-yt:focus-visible { outline: 3px solid var(--gr-orange); outline-offset: 3px; }

/* ===== A2 まとめ（TIP）のゴリラは追従させない ===== */
.gr-tip__char { position: static !important; }

/* ===== A7 カテゴリの札はアイキャッチの外（本文側の上）へ ===== */
.gr-card__cat { position: static !important; display: inline-block; align-self: flex-start; margin: 0 0 6px; padding: 2px 10px !important; font-size: 11.5px !important; }
.gr-relcat { position: static !important; display: inline-block !important; margin: 0 0 4px !important; padding: 1px 8px !important; border-radius: 999px; background: var(--gr-orange) !important; color: #fff !important; font-size: 11px !important; line-height: 1.6 !important; transform: none !important; }

/* ===== A6・A3 改行の決まり（禁則・ことばの途中で折らない） ===== */
body { line-break: strict; overflow-wrap: break-word; }
.post_content p, .post_content li, .post_content td, .post_content th { overflow-wrap: break-word; }
h1, h2, h3, h4, .c-postTitle__ttl, .p-postList__title, .gr-card__title, .p-toc__link, .c-widget li a, .gr-rank a, .gr-xcard__t, .gr-sh__t, .gr-hero__title, .gr-hero__lead, .gp-pcard span, .gr-profile *, .gr-pcard *, .gp-toc li a, .swell-block-button__link, .gr-btn, .p-pnLinks__title, .c-categoryList__link, .gp-vcard__t, .gp-feat__t, .p-breadcrumb__text, .gr-tip__label + h2, .l-footer a, .s-footer a, .gp-store-head *, .gp-faq * {
	word-break: auto-phrase; text-wrap: pretty; overflow-wrap: break-word;
}
h1, h2, .c-postTitle__ttl, .gr-hero__title, .gp-store-head h1 { text-wrap: balance; }
.gr-nobr { white-space: nowrap; }

/* ===== A4 記事の右の目次（追従）：上下とも切れない高さ・中をスクロール・いまの位置に印 ===== */
.w-fixSide { top: 16px !important; max-height: calc(100vh - 32px) !important; overflow-y: auto !important; -webkit-mask: none !important; mask: none !important; padding-bottom: 8px !important; overscroll-behavior: contain; }
.w-fixSide .p-toc__link.is-current { color: var(--gr-orange) !important; font-weight: 800; }
.w-fixSide .p-toc__list li:has(> .p-toc__link.is-current) { background: rgba(255,89,0,.08); border-radius: 4px; box-shadow: inset 3px 0 0 var(--gr-orange); }

/* ===== A-幅：広い画面でも中身は同じ箱（最大 1296px・左右 48px）に揃える。ヘッダー・パンくず・本文・フッターの左端を同じに ===== */
:root { --gr-box: 1296px; }
.gr-header__in, .gr-footer__in { max-width: var(--gr-box) !important; }
@media (min-width: 1280px) { .gr-header__logo { left: 48px !important; } }
.gr-wrap { max-width: var(--gr-box) !important; padding-left: 48px !important; padding-right: 48px !important; box-sizing: border-box; }
.gp-store-head, .gp-pgrid, .gp-note { max-width: var(--gr-box); margin-left: auto !important; margin-right: auto !important; box-sizing: border-box; }
.gp-pgrid { padding-left: 48px !important; padding-right: 48px !important; }
.gp-policy, .gp-form { max-width: var(--gr-box); margin-left: auto !important; margin-right: auto !important; box-sizing: border-box; }
.gp-policy { padding-left: 48px !important; padding-right: 48px !important; }
.gp-form__panel { max-width: 1200px; margin-left: auto !important; margin-right: auto !important; }
.gp-prof-body > * { max-width: 1200px; margin-left: auto !important; margin-right: auto !important; }
.gp-faq { padding-left: max(16px, calc((100% - var(--gr-box)) / 2 + 48px)) !important; padding-right: max(16px, calc((100% - var(--gr-box)) / 2 + 48px)) !important; }
@media (max-width: 820px) {
	.gr-wrap, .gp-pgrid, .gp-policy { padding-left: 16px !important; padding-right: 16px !important; }
	.gp-faq { padding-left: 16px !important; padding-right: 16px !important; }
}

/* ===== A8 フッター：トップも共通のフッターに。トップの段は夕景（closing）で終わる ===== */
@media (min-width: 821px) { .gr-front .stage { aspect-ratio: 1440 / 3109.6 !important; } }
/* フッターのメニュー：区切り線をやめ、中央にそろえて折り返す（2段目の STORE の左にだけ線・2/3/2 の並びが出ていた） */
.gr-footer__nav { gap: 6px 26px; }
.gr-footer__nav a { border-left: 0 !important; padding-left: 0 !important; padding-right: 0 !important; }
@media (max-width: 767px) {
	.gr-footer__nav { display: grid !important; grid-template-columns: repeat(4, auto); justify-content: center; gap: 0 14px; }
	.gr-footer__nav a { padding: 10px 2px !important; text-align: center; }
	.gr-footer__in, .gr-footer__mid, .gr-footer__sns, .gr-footer__legal { text-align: center; justify-content: center; }
}
@media (min-width: 821px) { .gr-hero--rb .gr-hero__eyebrow { font-size: max(12px, 1.05cqw) !important; white-space: nowrap; } }

/* ===== A10 パンくず：最後（記事名）も見せ、「›」で終わらない ===== */
.p-breadcrumb__item:last-child { display: flex !important; min-width: 0; }
.p-breadcrumb__item:last-child .p-breadcrumb__text { display: block !important; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; max-width: 40em; opacity: .75; }
.p-breadcrumb__item:last-child::after { content: none !important; }
/* ===== A11 関連記事：3列で最後の行が欠けるときは、その行を出さない（4枚目以降のときだけ） ===== */
@media (min-width: 600px) {
	.p-relatedPosts.-type-card > li:nth-child(3n+4):nth-last-child(-n+2), .p-relatedPosts.-type-card > li:nth-child(3n+4):nth-last-child(-n+2) ~ li { display: none !important; }
}
/* ===== A12 コメントを送信：サイトのオレンジの丸ボタンに ===== */
#comments .submit, .form-submit .submit { background: var(--gr-orange) !important; border: 0 !important; border-radius: 999px !important; padding: .8em 2.4em !important; color: #fff !important; font-weight: 700; box-shadow: 0 6px 16px rgba(255,89,0,.28); }
#comments .submit:hover { background: var(--gr-orange2) !important; }

/* ===== B トップ：「近日公開」は「アプリを見る」と同じ丸い形の札（押せない） ===== */
.s-base .base-cta { display: flex !important; align-items: center; gap: calc(10 * var(--u)); flex-wrap: wrap; }
.s-base .soon { display: inline-flex; align-items: center; gap: .4em; border: 1.5px dashed rgba(34,34,34,.45) !important; border-radius: 999px !important; padding: .45em 1.2em !important; color: #444 !important; background: rgba(255,255,255,.7); font-size: max(12px, calc(13 * var(--u))) !important; }
.s-base .soon::before { content: ""; width: .5em; height: .5em; border-radius: 50%; background: var(--gr-orange); }

/* ===== B RIDERS BASE：FAQ の背景の絵（枠が描き込まれて二重に見えた）をやめ、CSS の暗い地に ===== */
.gp-faq { background: #121212 radial-gradient(ellipse at 20% 0%, rgba(255,89,0,.12), transparent 55%) !important; }
.gp-faq::before { content: none !important; }

/* ===== A-その他 MOVIE：ヒーローの本文の下に光の点が透けていた → 左を暗く ===== */
@media (min-width: 821px) {
	.gr-hero--movie::before, .gr-hero--contact::before { content: ""; position: absolute; inset: 0; z-index: 1; pointer-events: none; background: linear-gradient(90deg, rgba(0,0,0,.6) 0%, rgba(0,0,0,.42) 24%, rgba(0,0,0,0) 36%); }
	.gr-hero--contact::before { background: linear-gradient(90deg, rgba(0,0,0,.5) 0%, rgba(0,0,0,.3) 30%, rgba(0,0,0,0) 44%); }
	.gr-hero--movie .gr-hero__in, .gr-hero--contact .gr-hero__in { z-index: 2; }
}

/* お問い合わせ：同意の行は左から（右の列に寄って左 1/3 が空いていた） */
.gr-cf__consent > p { display: block !important; }
.gr-cf__consent .wpcf7-form-control-wrap { display: block; }
/* MOVIE の一覧も同じ箱 */
.gp-flow { max-width: var(--gr-box); margin-left: auto !important; margin-right: auto !important; padding-left: 48px !important; padding-right: 48px !important; box-sizing: border-box; }
@media (max-width: 820px) { .gp-flow { padding-left: 16px !important; padding-right: 16px !important; } }

/* ===== MOVIE：先頭の大きいカードも白いカード（日付つき）・再生ボタンは小さく右下（サムネの文字を隠さない） ===== */
.gp-feat { background: #fff !important; border: 1px solid #eee; border-radius: 8px; overflow: hidden; align-items: stretch !important; }
.gp-feat__body { background: #fff !important; color: #222 !important; display: flex !important; flex-direction: column; justify-content: center; gap: 10px; }
.gp-feat__t { color: #161616 !important; }
.gp-feat__d { color: #555 !important; }
.gp-feat__date { color: #888; font-size: 12px; }
.gp-play, .gr-site .s-movie .play { left: auto !important; top: auto !important; right: 10px !important; bottom: 10px !important; margin: 0 !important; width: 40px !important; height: 40px !important; opacity: .92; }
.gp-feat__img .gp-play { width: 56px !important; height: 56px !important; }
.gp-feat__img img, .gp-vcard__img img, .s-movie .mcard img { transform: scale(1.04); }
/* 絞り込み（スマホ）：横に送れる合図（右端を薄く） */
@media (max-width: 767px) {
	.gp-tabs, .gp-chips, .gp-chips2 { -webkit-mask: linear-gradient(90deg, #000 85%, transparent); mask: linear-gradient(90deg, #000 85%, transparent); }
}

/* ===== RIDERS BASE：役割の札は絵の下（手・持ち物にかぶっていた） ===== */
.gr-castcard .gr-tag { margin-top: 4px !important; }

/* ===== 記事まわり ===== */
/* 公開日と更新日のアイコンを分ける（同じ時計に見えた）：更新日は回る矢印 */
.c-postTimes__modified.icon-modified::before { content: "↻" !important; font-family: inherit !important; font-weight: 700; margin-right: .25em; }
/* 本文の目次：10 以降も番号の幅をそろえる */
.post_content .p-toc__list.is-style-index li::before { min-width: 2.2em; text-align: right; }
.post_content .p-toc__list.is-gr-nonum > li::before, .post_content .p-toc__list.is-gr-nonum li::before { content: "" !important; min-width: 0; width: 6px; height: 6px; margin: .7em .7em 0 .2em; border-radius: 50%; background: var(--gr-orange); }
/* 見出しの横のゴリラ（スマホ）：本文の幅の中・下が切れない */
@media (max-width: 767px) {
	.gr-site.single-post .post_content h2:not(.gr-tip h2) { padding-right: 46px; overflow: visible; }
	.gr-site.single-post .post_content h2:not(.gr-tip h2)::after { right: 2px !important; bottom: 2px !important; width: 34px !important; height: 34px !important; }
}
/* 表：スマホは横に送れる合図（右端をうすく）・狭い列も読める幅 */
@media (max-width: 600px) {
	.post_content table { -webkit-mask: linear-gradient(90deg, #000 88%, rgba(0,0,0,.35)); mask: linear-gradient(90deg, #000 88%, rgba(0,0,0,.35)); }
	.post_content .gr-tablehint { display: block; margin: -6px 0 6px; color: #888; font-size: 12px; text-align: right; }
}
.post_content .gr-tablehint { display: none; }
.post_content table th, .post_content table td { min-width: 7em; }
/* 申し込みボタン：括弧の途中で 2〜3 行に割れない幅 */
.post_content .swell-block-button__link { width: min(100%, 680px) !important; font-size: 15.5px !important; }
.post_content .swell-block-button__link span { word-break: auto-phrase; }

/* ===== プロフィール：SNS のボタンは 1 行（LINEスタンプだけ 2 行目だった） ===== */
.gr-pcard a, .gr-profile a { white-space: nowrap; }
/* ===== お問い合わせ：送信ボタンは押せないときは灰色、押せるときはオレンジ ===== */
.wpcf7-submit:disabled { background: #c9c9c9 !important; border-color: #c9c9c9 !important; color: #fff !important; box-shadow: none !important; cursor: not-allowed; opacity: 1 !important; }
.wpcf7-submit:not(:disabled) { background: var(--gr-orange) !important; border-color: var(--gr-orange) !important; }
/* ===== プライバシー（スマホ）：ページの見出しを目次より先に ===== */
@media (max-width: 820px) {
	.gp-policy { display: flex !important; flex-direction: column; }
	.gp-policy > div { display: contents; }
	.gp-policy .gp-eyebrow { order: -3; margin-bottom: 0; } .gp-policy h1 { order: -2; } .gp-policy .gp-toc { order: -1; margin-bottom: 20px; }
}
/* ===== RIDERS BASE：アプリの案内のカードは「下のページ内へ」なので矢印を下向きに ===== */
.gr-appnav__chev { transform: rotate(90deg); }
/* ===== ブログ一覧：ページ送りの下の空きを詰める ===== */
.gr-list .c-pagination, .gr-site .c-pagination { margin-bottom: 24px !important; }
/* MOVIE の案内帯：指さしゴリラの下端が一直線に切れていた → 下をぼかす */
.gr-chband__char, .gr-chband__img { -webkit-mask: linear-gradient(#000 80%, transparent); mask: linear-gradient(#000 80%, transparent); }
@media (max-width: 820px) { .gr-site .s-movie .play { top: 10px !important; bottom: auto !important; right: 10px !important; width: 36px !important; height: 36px !important; } }
@media (min-width: 821px) {
	.gr-hero--rb .gr-hero__in { padding-top: 17cqw !important; }
	.gr-hero--rb .gr-hero__phones { top: 67% !important; height: 27% !important; width: 21% !important; }
}
/* MOVIE：広い画面で先頭の大きいカードの絵が縦に伸びていた → 列の比で決める */
@media (min-width: 768px) { .gp-feat { grid-template-columns: 62% minmax(0, 1fr) !important; } .gp-feat__img { aspect-ratio: 16 / 9 !important; height: auto !important; align-self: start; } }
/* お問い合わせ：広い画面でフォームの中が狭く詰まっていた（内側の余白が画面幅で増えていた） */
@media (min-width: 821px) { .gp-form__panel { max-width: 960px !important; padding: 40px 56px 48px !important; } }
.gp-form { max-width: none !important; }
@media (min-width: 821px) { .post_content .gr-cf__row > p, .gr-cf__row > p { grid-template-columns: 210px minmax(0, 1fr) !important; } .gr-cf__consent > p { display: block !important; } }
@media (min-width: 821px) { .gp-form .wpcf7-form p { grid-template-columns: 200px minmax(0, 1fr) !important; } .gp-form .wpcf7-form .gr-cf__consent p, .gp-form .wpcf7-form .gr-cf__submit p { display: block !important; } .gp-policy { grid-template-columns: 300px minmax(0, 1fr) !important; gap: 48px !important; } }

/* ===== 0.4.15：🦎再点検の直し ===== */
/* 🔴 記事の h2 が左右2列に割れていた（見出しが flex で、中の <span> が列になった）→ 見出しは普通の段落の並べ方に。キャラは右に絶対配置のまま */
.gr-site.single-post .post_content h2:not(.gr-tip h2) { display: block !important; position: relative; padding-right: 58px; min-height: 0 !important; }
.gr-site.single-post .post_content h2 .gr-nobr { white-space: nowrap; }
@media (max-width: 767px) { .gr-site.single-post .post_content h2:not(.gr-tip h2) { padding-right: 46px; } }
/* 改行：本文も語句のまとまりで折る・最後の行に1〜2字だけ残さない */
body { word-break: auto-phrase; }
.post_content p, .post_content li, .post_content td, .post_content th, .p-postList__title, .gr-card__ex { text-wrap: pretty; }
.gr-nobr { white-space: nowrap; }
/* ブログ一覧・カテゴリ：本文を共通の箱（1296px・左右 48px）に */
.gr-list #content.l-content { max-width: var(--gr-box) !important; padding-left: 48px !important; padding-right: 48px !important; box-sizing: border-box; grid-template-columns: minmax(0, 1fr) minmax(0, 360px) !important; padding-bottom: 32px !important; }
@media (max-width: 1023px) { .gr-list #content.l-content { grid-template-columns: minmax(0, 1fr) !important; padding-left: 16px !important; padding-right: 16px !important; } }
/* ブログの帯（スマホ）：「見つけたい…」の手書きがカメラゴリラの帽子と頭にかかる → スマホでは出さない */
@media (max-width: 767px) { .gr-band--list .gr-band__l--discover { display: none !important; } }
/* YouTube の軽い埋め込み：サムネの縁に入っている白い線が見えていた → 少し拡大して縁を外へ */
.gr-yt img { transform: scale(1.06); }
.gr-yt:hover img { transform: scale(1.09); }
/* フッター直前の帯と黒い帯の間の白いすき間（MOVIE・プライバシー・お問い合わせ） */
.gp-sec--closing, .gp-sec--closing .gp-pic { background: #111 !important; }
.gp-sec--closing .gp-art img { display: block; }
/* お問い合わせ・プロフィール：中身の左端をパンくずと同じに（箱の中で中央寄せにしない） */
.gp-form__panel { max-width: calc(var(--gr-box) - 96px) !important; }
.gp-prof-body > * { max-width: calc(var(--gr-box) - 96px) !important; }
@media (min-width: 821px) { .gp-prof-body { padding-left: 48px !important; padding-right: 48px !important; } }
/* 送信ボタン：右の空き → 中央・同じ幅 */
.gr-cf__submit, .gr-cf__submit p { display: flex !important; justify-content: center; }
.gr-cf__submit .wpcf7-spinner { position: absolute; margin: 14px 0 0 12px; }
/* 表の横スクロールの合図：文字と矢印で見えるように */
.post_content .gr-tablehint { color: var(--gr-orange) !important; font-weight: 700; font-size: 12.5px !important; }
/* プライバシーの目次：最後の「›」が枠の外へ出ていた */
.gp-toc li a { gap: 8px; }
.gp-toc li a::after { flex: none; }
/* 本文の段落は語句区切りにしない（右端ががたがたになった）。禁則と最後の行の調整だけ。見出し・題・ボタン・札・表は語句区切り */
body { word-break: normal; }
.post_content p, .post_content li { word-break: normal !important; }
h1, h2, h3, h4, .c-postTitle__ttl, .p-postList__title, .gr-card__title, .p-toc__link, .gr-rank a, .gr-btn, .swell-block-button__link, .gp-pcard span, .gr-hero__title, .gr-sh__t, .gr-cf label, .gr-cf legend, .gr-formhead__lead, .post_content td, .post_content th, .gr-xcard *, .gp-toc li a, .gr-tag, .gr-castcard *, .gr-appnav *, .gp-vcard__b b, .gp-feat__t, .p-pnLinks__title, .gr-footer a { word-break: auto-phrase !important; }

/* ===== 0.4.16 ===== */
/* 1 商品名：「-RIDE TO LIVE-」を1かたまりに・行間を普通に */
.gp-pcard span { line-height: 1.55 !important; }
.gp-pcard .gr-nobr { white-space: nowrap; }
/* 3 目次の現在地：縦棒と字が重ならないように左に余白 */
.w-fixSide .p-toc__list li { padding-left: 8px; }
.w-fixSide .p-toc__list li:has(> .p-toc__link.is-current) { box-shadow: inset 3px 0 0 var(--gr-orange); }
/* 4 プロフィール：夕景の段を斜めに重ねていた（RB の絵の右下の小ゴリラを横切る線）→ 重ねない。RB の絵の下は煙で暗く溶けている */
.gp-sec--quote { margin-top: 0 !important; clip-path: none !important; }
/* 5 お問い合わせ（スマホ）：フォームの白い箱と帯の間の灰色のすき間 */
@media (max-width: 820px) { .gp-form { padding-bottom: 0 !important; margin-bottom: 0 !important; } .gp-form__panel { margin-bottom: 0 !important; } }
/* 6・8 サイドバー・カード・要約・人気記事：語句で折る（1文字行・カタカナ語の途中を避ける） */
.gr-catcards b, .gr-catcards small, .c-widget a, .c-widget li, .gr-card__ex, .p-postList__excerpt, .s-blog .bcard *, .bcard *, .gr-rank *, .p-postList__title { word-break: auto-phrase !important; text-wrap: pretty; }
.gp-pcard span .gr-nobr, .gp-pcard span span { display: inline !important; margin: 0 !important; -webkit-line-clamp: none; }
/* くっつける語は、親に付けた text-wrap（折り返しの指定）に負けないように */
.gr-nobr, .gr-site .gr-nobr { white-space: nowrap !important; text-wrap-mode: nowrap !important; }
/* カテゴリのカード：「バイク買取・査定」を1行に */
.gr-catcards b { white-space: nowrap; font-size: clamp(15px, 1.3vw, 20px) !important; }
/* お問い合わせ（スマホ）：フォームの下の灰色の地を白に */
@media (max-width: 820px) { .gp-form { background: #fff !important; } }

/* ===== 0.4.17 ===== */
/* 6 商品名：行間は普通・3行で「…」 */
.gp-pcard span { display: -webkit-box !important; -webkit-box-orient: vertical; -webkit-line-clamp: 3 !important; overflow: hidden; text-wrap: wrap !important; word-break: normal !important; }
/* 7 記事の見出し（スマホ）：行の長さをそろえる指定が不自然な区切りを作っていた → そろえない */
@media (max-width: 767px) { .gr-site.single-post .post_content h2, .gr-site.single-post .post_content h3 { text-wrap: pretty !important; } }
/* 7 スマホの関連記事：細い列で語句区切りにすると右が空く → 普通に詰めて折る */
@media (max-width: 767px) { .p-relatedPosts .p-postList__title { word-break: normal !important; text-wrap: wrap !important; } }
/* 4 カテゴリのカード：狭い所では「バイク買取・／査定」で折る */
.gr-catcards b { white-space: normal !important; word-break: auto-phrase !important; }
