/*
Theme Name: nihonkenkokeiei
template: twentytwentyfour
*/

@charset "utf-8";

/*___________ web_root直下のcss ___________ */

@import url("../../../../css/style.css");

body {
    font-size: 16px;
    font-family: "Noto Sans JP", sans-serif;
}
.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    max-width: 780px;
}
.has-global-padding {
    padding-right: 1em;
    padding-left: 1em;
}

.entry-content p {
    line-height: 1.8;
}
a.cv-button {
  text-decoration: none !important;
  display: block;
  width: 80%;
  max-width: 400px;
  font-size: 16px;
  text-align: center;
  padding: 12px 10px;
  background: -webkit-linear-gradient(top, #02bb81 0%, #05b17b 100%);
  background: linear-gradient(to bottom, #02bb81 0%, #05b17b 100%);
  color: #fff !important;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  font-weight: 700;
  box-shadow: 0 3px 0 #058d62;
  margin: 0 auto 2.5em;
}
a.cv-button:hover {
  opacity: 0.7;
  color: #fff !important;
}

.marker-under {
    background: linear-gradient(transparent 60%, #ff9 60%);
  font-weight: bold;
}
.red {
    color: #e60033;
}

.bold-red {
    font-weight: bold;
    color: #e60033;
}
.orange-under {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #ffdacb 60%);
}

.planred {
    font-weight: bold;
    color: #e32920;
    font-size: 17px;
}

.bold {
    font-weight: bold;
}
.purple-under {
    font-weight: bold;
    background: linear-gradient(transparent 60%, #FFE3F2 60%);
}

table {
    max-width: 100%;
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}
tr {
    display: table-row;
    vertical-align: inherit;
    unicode-bidi: isolate;
    border-color: inherit;
}

table th, table td {
    border: 1px solid #ced1d6 !important;
    line-height: 1.6em;
}
th {
    white-space: normal;
    text-align: center;
    vertical-align: middle;
}
td {
    border-collapse: collapse;
    vertical-align: middle;
}

.entry-content img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

/*スクロールテーブル*/
/*---------- スクロール可能なテーブル関連のCSS ----------*/
.table_box {
    display: block;
    overflow: auto !important;
}

.table_box th,
.table_box td {
    white-space: nowrap;
}

/* スクロールバー全体を対象にする */
.table_box::-webkit-scrollbar {
    width: 10px; /* スクロールバーの幅 */
    height: 10px; /* スクロールバーの高さ */
}

/* スクロールバーの背景部分をカスタマイズ */
.table_box::-webkit-scrollbar-track {
    background: #f1f1f1; /* スクロールバーの背景色 */
    border-radius: 5px; /* 角丸にする */
}

/* スクロールバーの操作部分をカスタマイズ */
.table_box::-webkit-scrollbar-thumb {
    background: #888; /* スクロールバーの操作部分の背景色 */
    border-radius: 5px; /* 角丸にする */
}

/* スクロールバーの操作部分にホバーした時のスタイル */
.table_box::-webkit-scrollbar-thumb:hover {
    background: #555; /* ホバー時のスクロールバーの操作部分の背景色 */
}
.sclok {
    font-size: 13px;
    line-height: 1.3em;
     margin-bottom: 13px;
}

.gray_box {
  /* 方眼紙模様に必須のスタイル */
  background-image: linear-gradient(0deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px)),
                    linear-gradient(90deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px));
  background-size: 16px 16px;
  background-repeat: repeat;
  background-position: center center;

  /* 以下任意のスタイル */
  padding: 0 1.2em 0;
  border: 1px solid #f0f0f0;
  margin-bottom: 2em;
}
.wp-block-post-title {
    font-family: "Noto Sans JP", sans-serif;
}
.entry-content > h2 {
  color: #FFF;
  line-height: clamp(25px, 4.2vw, 32px);
  font-size: clamp(18px, 1.8vw, 26px);
  text-align: left;
  background: #9E282C;
  padding: 1.1rem 1.8rem;
  margin: 3rem 0;
  border-radius: 5px;
  font-family: "Noto Sans JP", sans-serif;
}

.entry-content > h3 {
    color: #7f6037;
    background-image: linear-gradient(-45deg, #fff 25%, #f5f5f5 25%, #f5f5f5 50%, #fff 50%, #fff 75%, #f5f5f5 75%, #f5f5f5);
    background-size: 4px 4px;
    border-left: 7px solid #785f3e;
    border-right: 1px solid #ddd;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    font-size: 22px;
    padding: 12px 20px;
    font-family: "Noto Sans JP", sans-serif;
}

.entry-content > h4 {
    position: relative;
    padding: 0.2em 0.3em;
    border-left: 8px solid #785f3e;
    margin-bottom: 0.62em !important;
    line-height: 1.4 !important;
    font-size: 17px !important;
    color: #785f3e;
    font-weight: 500;
    font-family: "Noto Sans JP", sans-serif;
}
.entry-content ul {
    padding: 0em 0em 0em 2.8em;
    position: relative;
}
.entry-content > ul,.entry-content > ul li {
    list-style: disc;
}
.entry-content > ul li, .entry-content > ol li {
    margin: 0.3em;
}

:root :where(.is-layout-constrained) > * {
    margin-block-start: 1.6rem;
}

blockquote {
    background-color: #fafbfc;
    border: 1px solid #ddd;
    padding: 1.4em 1.8em;
    position: relative;
}

blockquote cite {
    font-size: 0.7em;
}

.entry-content > ul {
    list-style-type: disc !important;
}

blockquote p {
    margin-bottom: 0;
}

/* タイトル付枠*/
.kakomi-box {
 position: relative;
 margin: 2em auto;
 padding: 0.2em 1.2em 1em;
 background-color: #fff; /* 背景色 */
 border: 1px solid #555555; /* 枠線の太さ・色 */
 width: 90%;
}
.title-box {
 position: absolute;
 padding: 0 .5em;
 left: 20px;
 top: -15px;
 background-color: #fff; /* タイトル背景色 */
 font-weight: bold;
}

.kakomi-box > ul {
    list-style-type: disc !important;
    padding: 0em 0em 0em 2.8em;
    position: relative;
}

.kakomi-box > ul li, .kakomi-box > ol li {
    margin: 0.3em;
}

.gray_box > ul {
    list-style-type: disc !important;
    padding: 1em 0em 1em 2.8em;
    position: relative;
}
.gray_box > ul li, .gray_box > ol li {
    margin: 0.3em;
}


/*目次のスタイル */
#toc_container p.toc_title+ul.toc_list>li {
 margin-bottom: 0.1em;
 padding-bottom: 0.4em;
}

#toc_container p.toc_title+ul.toc_list {
    margin-top: 1em;
    margin-right: 0.4em;
}

#toc_container li {
 padding-left: 1em !important;
 line-height: 1.8em;
}

#toc_container ul ul {
 margin-bottom: 10px;
}

.toc_number {
 margin-left: -0.5em;
 margin-right: 0.5em;
 font-family: 'Dynalight', cursive;/*数字のフォント*/
}

#toc_container p.toc_title {
    text-align: center;
    font-weight: 700;
    margin: 0 25%;/*25%の部分を変えれば下線の長さを変更できます*/
    padding: 0;
    letter-spacing: 0.05em;
    border-bottom: solid #454545 1px;/*下線のスタイル*/
}

#toc_container ul>li>ul>li {
    font-size: 94% !important;/*小見出しの文字サイズ*/
}

#toc_container {
    background: #fff !important;
    padding: 10px;
    margin-bottom: 1em;
    width: auto;
    display: table;
    border: solid 1px #454545;
    margin-top: 30px;
}

/*リンクの色など*/
#toc_container a {
    text-decoration: none;
    text-shadow: none;
    color: #454545 !important;
}

.sup,.sup2 {
    font-size: 12px;
    margin-top: 5px;
}
figcaption {
    font-size: 12px;
    text-align: center;
    margin-top: 6px !important;
}

/*480px以下*/
@media screen and (max-width: 480px){

.has-x-large-font-size {
    font-size: 26px !important;
}
#toc_container p.toc_title+ul.toc_list {
    padding-left: 2px;
}
.entry-content > h2 {
    font-size: 21px;
    padding: 13px 10px;
}
.entry-content > h3 {
    font-size: 19px;
}
.kakomi-box > ul {
    padding: 0em 0em 0em 1em;
}
.kakomi-box,.title-box {
    background-color: #F9F9F9;
}
table {
    font-size: 0.9em;
}
}