/* v1.19.2: article-only responsive visual line breaks and SWELL TOC structure. */
.sumi-root#body_wrap .sumi-detail--article #sumi-article-title .sumi-title-break--desktop,
.sumi-root#body_wrap .sumi-detail--article #sumi-article-title .sumi-title-break--both {
  display: inline;
}
.sumi-root#body_wrap .sumi-detail--article #sumi-article-title .sumi-title-break--mobile {
  display: none;
}
@media (max-width: 767px) {
  .sumi-root#body_wrap .sumi-detail--article #sumi-article-title .sumi-title-break--desktop {
    display: none;
  }
  .sumi-root#body_wrap .sumi-detail--article #sumi-article-title .sumi-title-break--mobile {
    display: inline;
  }
}
/* Preserve the existing editorial width/padding after supplying SWELL's TOC selectors. */
.sumi-root#body_wrap .sumi-detail--article #main_content > .sumi-post-article.l-mainContent__inner {
  width: 100%;
  max-width: 910px;
  margin: 0 auto;
  padding: 0;
}
.sumi-root#body_wrap .sumi-detail--article #main_content .sumi-prose.post_content {
  max-width: 820px;
  margin-left: auto;
  margin-right: auto;
}

/* v1.20.4: article reading rhythm. Deliberately isolated from service pages. */
.sumi-root#body_wrap .sumi-detail--article #sumi-article-title {
  font-size:40px!important;
  line-height:1.5!important;
  letter-spacing:-.025em;
  word-break:normal;
  overflow-wrap:anywhere;
  line-break:strict;
  text-wrap:wrap;
}
.sumi-root#body_wrap .sumi-detail--article #sumi-article-title .sumi-title-phrase {
  white-space:nowrap;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-detail-article-category {
  margin-top:18px!important;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-detail-article-date {
  margin-top:12px!important;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content {
  color:#3c586b;
  line-height:2;
  overflow-wrap:anywhere;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content p {
  font-size:16px!important;
  line-height:2!important;
  margin:0 0 1.5em;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content h2 {
  position:relative;
  font-size:28px!important;
  line-height:1.6!important;
  letter-spacing:-.025em;
  margin:56px 0 24px;
  padding:18px 22px;
  background:#eff6fb;
  border:0;
  border-left:3px solid #346e9b;
  border-radius:0;
  box-shadow:none;
  text-wrap:wrap;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content h2::before,
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content h2::after,
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content h3::before,
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content h3::after {
  content:none;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content h3 {
  font-size:22px!important;
  line-height:1.65!important;
  margin:36px 0 18px;
  padding:0 0 12px;
  border:0;
  border-bottom:1px solid #d5e3ee;
  background:transparent;
  box-shadow:none;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content h4 {
  font-size:18px!important;
  margin:28px 0 14px;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content :is(ul,ol) {
  margin:24px 0 28px;
  padding-left:1.6em;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content li {
  font-size:16px!important;
  line-height:1.95!important;
  margin-block:8px;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content li :is(ul,ol) {
  margin-block:8px;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content li p {
  margin-bottom:8px;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content :is(.wp-block-table,.swell-block-table,pre,blockquote) {
  margin:28px 0 32px;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content :is(.wp-block-table,.swell-block-table) {
  max-width:100%;
  overflow-x:auto;
  overscroll-behavior-inline:contain;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content table {
  width:100%;
  border-collapse:collapse;
  border-spacing:0;
  margin:0;
  background:#fff;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content :is(th,td) {
  border:1px solid #d5e3ee;
  padding:14px 16px;
  vertical-align:top;
  font-size:14px!important;
  line-height:1.85!important;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content thead th {
  background:#244b63;
  color:#fff;
  text-align:left;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content tbody th {
  background:#f3f8fc;
  color:#183b56;
  text-align:left;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content figcaption {
  font-size:13px;
  line-height:1.8;
  margin-top:12px;
  text-align:left;
}
/* Restyle only the TOC surface and spacing; SWELL owns numbering and toggling. */
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content .p-toc {
  margin:32px 0 48px;
  padding:26px 30px;
  border:1px solid #d5e3ee;
  background:#f6f9fc;
  box-shadow:none;
  border-radius:6px;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content .p-toc::before,
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content .p-toc::after {
  content:none;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content .p-toc :is(ul,ol) {
  margin:12px 0 0;
  padding-left:1.4em;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content .p-toc li {
  margin:8px 0;
  font-size:14px!important;
  line-height:1.8!important;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content .p-toc a {
  text-decoration:none;
  border-bottom:0;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content .p-toc a:hover {
  text-decoration:underline;
  text-underline-offset:4px;
}
.sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content :is(h2,h3,h4)[id] {
  scroll-margin-top:calc(110px + var(--wp-admin--admin-bar--height,0px));
}
@media (min-width:768px) and (max-width:1100px) {
  .sumi-root#body_wrap .sumi-detail--article #sumi-article-title {font-size:34px!important;}
}
@media (max-width:767px) {
  .sumi-root#body_wrap .sumi-detail--article #sumi-article-title {font-size:28px!important;line-height:1.55!important;}
  .sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content :is(p,li) {font-size:15px!important;}
  .sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content h2 {font-size:23px!important;margin-top:40px;padding:14px 16px;}
  .sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content h3 {font-size:20px!important;margin-top:30px;}
  .sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content :is(th,td) {font-size:13px!important;padding:12px;}
  .sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content :is(.wp-block-table,.swell-block-table) table {min-width:520px;}
  .sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content .p-toc {padding:20px;margin:28px 0 36px;}
  .sumi-root#body_wrap .sumi-detail--article .sumi-prose.post_content :is(h2,h3,h4)[id] {scroll-margin-top:calc(90px + var(--wp-admin--admin-bar--height,0px));}
}
