/* 角丸レイアウト */
.contact-link, .button { border-radius: 999px; }
.site-header { border-bottom: 0; }
body[data-page=home] .corporate-hero { margin: 8px 16px 0; border-radius: 20px 96px 20px 20px; overflow: hidden; }
.detail-page .page-hero .eyebrow { display: inline-flex; align-items: center; padding: 8px 16px; background: var(--detail-surface); border-radius: 999px; }
.detail-page .subnav { display: flex; flex-wrap: wrap; gap: 8px; padding: 8px; background: #242c2a; border-radius: 999px; }
.detail-page .subnav a { min-height: 48px; padding: 12px 24px; background: transparent; color: #e2e7e3; border-radius: 999px; }
.detail-page .subnav a:hover { background: #ffffff14; color: #fff; }
.detail-page .subnav a[aria-current] { background: #fff; color: var(--ink); }
@media (max-width: 767px) {
 body[data-page=home] .corporate-hero { margin: 0; border-radius: 0; }
 .detail-page .subnav { border-radius: 18px; gap: 4px; }
 .detail-page .subnav a { padding: 10px 16px; font-size: 14px; }
}

/* 関連ページの横スクロール */
.subnav-track {display:contents;}
.subnav-arrow {display:none;}
@media (max-width:1023px) {
 .detail-page .subnav:has(.subnav-track) {display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:4px;padding:8px;border-radius:999px;overflow:hidden;}
 .subnav-track {display:flex;align-items:center;gap:8px;min-width:0;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;scroll-padding-inline:8px;}
 .subnav-track::-webkit-scrollbar {display:none;}
 .detail-page .subnav:has(.subnav-track) a {flex:none;display:inline-flex;justify-content:center;min-height:48px;padding:12px 20px;font-size:14px;line-height:1.6;white-space:nowrap;border-radius:999px;}
 .detail-page .subnav:has(.subnav-track) a[aria-current="page"]::after {content:none;}
 .subnav-arrow {display:flex;align-items:center;justify-content:center;width:44px;height:44px;align-self:center;padding:0;border:1px solid #ffffff40;border-radius:50%;color:white;background:transparent;cursor:pointer;}
 .subnav-arrow svg {width:22px;height:22px;}
 .subnav-arrow:disabled {opacity:.3;cursor:default;}
 .subnav-arrow:not(:disabled):hover {background:#ffffff14;}
 .subnav-arrow:not(:disabled):active {transform:scale(.96);}
 .subnav-arrow:focus-visible,.subnav-track:focus-visible {outline:2px solid white;outline-offset:-3px;}
}
/* 小画面では操作ボタンを下に配置 */
@media (max-width:374px) {
 .detail-page .subnav:has(.subnav-track) {display:flex;position:relative;overflow:visible;}
 .subnav-track {width:100%;}
 .detail-page .subnav:has(.subnav-track).is-scrollable {margin-bottom:54px;}
 .subnav-arrow {position:absolute;bottom:-54px;color:var(--ink);border-color:var(--line);background:white;}
 .subnav-previous {left:0;}
 .subnav-next {right:0;}
 .subnav-arrow:focus-visible {outline-color:var(--ink);}
}

@media(max-width:1023px) {.subnav:not(.is-scrollable) .subnav-arrow {visibility:hidden;}}
