/*
 * CMN Article Style Kit 1.0.0
 * Applies only inside .cmn-article; no global theme overrides.
 * Maintain this one file as the reference for WordPress and previews.
 */
.cmn-article {
  --cmn-ink:#203447;
  --cmn-muted:#52677a;
  --cmn-border:#d7e3ed;
  --cmn-blue:#1c70ae;
  --cmn-surface:#f6f9fc;
  box-sizing:border-box;
  width:100%; max-width:100%; min-width:0;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,"Noto Sans",sans-serif;
  font-size:16px; line-height:1.75; color:var(--cmn-ink);
  overflow-wrap:break-word;
}
.cmn-article *, .cmn-article *::before, .cmn-article *::after {box-sizing:border-box;}
.cmn-article p {margin:0 0 1.05em; line-height:1.75;}
.cmn-article h2 {color:#183f59; font-size:1.46em; font-weight:750; line-height:1.4; margin:1.65em 0 .65em; clear:both;}
.cmn-article h3 {color:#245a7c; font-size:1.16em; font-weight:700; line-height:1.45; margin:1.4em 0 .6em;}
.cmn-article a {color:#176ca4; text-decoration:underline; text-underline-offset:2px; overflow-wrap:anywhere;}
.cmn-article a:hover,.cmn-article a:focus {color:#0e4d79;}
.cmn-article ul,.cmn-article ol {padding-left:1.45em; margin:.5em 0 1.2em;}
.cmn-article li {line-height:1.7; padding-left:.1em; margin:.25em 0;}
.cmn-article img {max-width:100%; height:auto;}
.cmn-article strong {font-weight:700;}
.cmn-article ruby {ruby-position:over; white-space:nowrap;}
.cmn-article rt {font-size:.62em; line-height:1.15; font-weight:400; color:#52677a; text-align:center;}
.cmn-article [lang="ja"] {font-family:-apple-system,BlinkMacSystemFont,"Hiragino Kaku Gothic ProN","Yu Gothic","Noto Sans JP",sans-serif;}

/* Callouts. Use cmn-note plus cmn-note-info/warning/danger/update. */
.cmn-article .cmn-note,
.single_post .thecontent .cmn-article .cmn-note {
  display:block !important;
  margin:18px 0 22px !important;
  padding:15px 18px !important;
  border:1px solid #cbdbea !important;
  border-left:5px solid #277bb7 !important;
  border-radius:10px !important;
  background:#ecf5fc !important;
  color:#21374a !important;
  line-height:1.8 !important;
  box-shadow:none !important;
  max-width:100%; min-width:0;
  overflow-wrap:break-word;
}
.cmn-article .cmn-note > :last-child {margin-bottom:0 !important;}
.cmn-article .cmn-note-info,
.single_post .thecontent .cmn-article .cmn-note-info {background:#eaf4fc !important; border-color:#cde3f3 !important; border-left-color:#2879b4 !important; color:#21384b !important;}
.cmn-article .cmn-note-update,
.single_post .thecontent .cmn-article .cmn-note-update {background:#eef6fd !important; border-color:#cadff0 !important; border-left-color:#2879b4 !important; color:#183c57 !important;}
.cmn-article .cmn-note-warning,
.single_post .thecontent .cmn-article .cmn-note-warning {background:#fff6e5 !important; border-color:#f2dcad !important; border-left-color:#d58b0a !important; color:#5a431c !important;}
.cmn-article .cmn-note-danger,
.single_post .thecontent .cmn-article .cmn-note-danger {background:#fff0f0 !important; border-color:#f1c9cb !important; border-left-color:#c84d51 !important; color:#612d32 !important;}
.cmn-article .cmn-note h2,.cmn-article .cmn-note h3 {margin-top:.15em !important; color:inherit;}

/* Accessible horizontal tables: retain native <table> semantics. */
.cmn-article .cmn-table-hint {font-size:13px; line-height:1.5; color:#50697c; margin:14px 0 6px;}
.cmn-article .cmn-table-wrap,
.single_post .thecontent .cmn-article .cmn-table-wrap {
  display:block !important; width:100% !important; max-width:100% !important; min-width:0 !important;
  overflow-x:auto !important; overflow-y:hidden !important;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
  border:1px solid var(--cmn-border);
  border-radius:10px;
  margin:7px 0 22px !important;
  background:#fff;
}
.cmn-article .cmn-table-wrap:focus-visible {outline:3px solid #66a8d5; outline-offset:2px;}
.cmn-article .cmn-table-wrap > table.cmn-data-table,
.single_post .thecontent .cmn-article .cmn-table-wrap > table.cmn-data-table {
  display:table !important; table-layout:auto !important;
  width:100% !important; min-width:660px !important; max-width:none !important;
  margin:0 !important; padding:0 !important; border-collapse:collapse !important;
  border-spacing:0 !important; overflow:visible !important;
  text-align:left !important; background:#fff !important;
}
.cmn-article .cmn-table-wrap[data-cmn-cols="2"] > table.cmn-data-table {min-width:500px !important;}
.cmn-article .cmn-table-wrap[data-cmn-cols="3"] > table.cmn-data-table {min-width:610px !important;}
.cmn-article .cmn-table-wrap[data-cmn-cols="4"] > table.cmn-data-table {min-width:700px !important;}
.cmn-article .cmn-table-wrap table.cmn-data-table thead {display:table-header-group !important;}
.cmn-article .cmn-table-wrap table.cmn-data-table tbody {display:table-row-group !important;}
.cmn-article .cmn-table-wrap table.cmn-data-table tr {display:table-row !important; background:transparent;}
.cmn-article .cmn-table-wrap table.cmn-data-table th,
.cmn-article .cmn-table-wrap table.cmn-data-table td,
.single_post .thecontent .cmn-article .cmn-table-wrap table.cmn-data-table td {
  display:table-cell !important;
  padding:11px 13px !important; margin:0 !important;
  border:1px solid #d9e4ed !important;
  vertical-align:top !important; text-align:left !important;
  font-size:14px !important; line-height:1.6 !important;
  min-width:0 !important; max-width:none !important;
  white-space:normal !important;
  overflow-wrap:normal !important; word-break:normal !important;
}
.cmn-article .cmn-table-wrap table.cmn-data-table th {background:#e8f3fa !important; color:#1c405b !important; font-weight:700 !important;}
.cmn-article .cmn-table-wrap table.cmn-data-table tbody tr:nth-child(even) td {background:#f8fafc !important;}
.cmn-article .cmn-holiday-table th:first-child,.cmn-article .cmn-holiday-table td:first-child {width:86px !important; white-space:nowrap !important; font-variant-numeric:tabular-nums;}
.cmn-article .cmn-holiday-table th:nth-child(2),.cmn-article .cmn-holiday-table td:nth-child(2) {width:125px !important; white-space:nowrap !important;}
.cmn-article .cmn-holiday-table th:nth-child(3),.cmn-article .cmn-holiday-table td:nth-child(3) {min-width:190px !important;}
.cmn-article .cmn-table-wrap table a {overflow-wrap:normal; word-break:normal;}
.cmn-article .cmn-table-wrap ruby {white-space:nowrap;}

/* Sources, steps and FAQ. */
.cmn-article .cmn-sources {font-size:.94em; background:#f4f7fa; border:1px solid #e2eaf1; border-radius:9px; padding:14px 16px; margin:22px 0; color:#43596c;}
.cmn-article ul.cmn-sources,.cmn-article ol.cmn-sources {padding-left:2em;}
.cmn-article .cmn-steps {background:#f6f9fc; border-radius:9px; padding:12px 15px 12px 32px; border:1px solid #e0e8f0;}
.cmn-article .cmn-faq {border-top:1px solid #dbe5ed; padding:13px 0;}
.cmn-article .cmn-faq h3 {margin:.2em 0 .4em;}
.cmn-article .cmn-download {display:block; padding:14px 17px; border:1px solid #badcc9; border-radius:10px; background:#f0fbf3; margin:16px 0;}

@media(min-width:860px) {.cmn-article .cmn-table-hint {display:none;}}
@media(max-width:767px) {
  .cmn-article {font-size:16px; line-height:1.7;}
  .cmn-article h2 {font-size:1.32em;}
  .cmn-article h3 {font-size:1.12em;}
  .cmn-article .cmn-note,.single_post .thecontent .cmn-article .cmn-note {padding:13px 14px !important; margin:15px 0 20px !important; border-radius:9px !important;}
  .cmn-article .cmn-table-wrap table.cmn-data-table th,.cmn-article .cmn-table-wrap table.cmn-data-table td {padding:9px 11px !important;}
}
