@charset "utf-8";
/* CSS Document */

html{
	scroll-padding-top:80px; /* 固定ヘッダの高さ分 */
}
body {
	margin: 0;
	scroll-padding-top:80px; /* 固定ヘッダの高さ分 */
	font-family: "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
	}
h4 {
    text-decoration: underline;
}
/*------- 目次　開閉　　---------*/
.toc-001 {
    margin-bottom: 30px;
    padding: 1em 1em 1em 2em;
    border: 1px solid #999;
    background-color: #ffffff;
    color: #333333;
}

.toc-001 div {
    display: flex;
    align-items: center;
    margin: 0;
    padding: 5px 0;
}

.toc-001 label::after {
    margin-left: 5px;
    font-size: .8em;
    color: #166c9d;
    content: "[閉じる]";/*- 閉が最初なら「開く」 -*/
    cursor: pointer;
}

.toc-001:has(:checked) label::after {
    content: "[開く]";/*- 閉が最初なら「閉じる」 -*/
}

.toc-001 input {
    display: none;
}

.toc-001 ul {
    list-style-type: disc;
    margin: 0;
    padding: 0 1.2em;
    overflow: hidden;
}

.toc-001 > ul {
    height: auto;/*- 閉から表示は　autoを０に-*/
}

.toc-001:has(:checked) > ul {
    height: 0;/*- 閉から表示は　0をautoに-*/
}

.toc-001 ul ul {
    margin-top: 5px;
}

.toc-001 li {
    padding: 5px 0;
}

.toc-001 a {
    color: #166c9d;
}
/*----------------------------------*/
#kajog li{
	list-style:none;
	margin-left: 2.0em;
}
.kosiki {
	font-size: 1.2em;
	font-weight: bold;
	font-style: italic;
	padding: 0 8px;
	text-decoration: underline;
}
.box26 {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 3px crimson;
    border-radius: 8px;
}
.box26 .box-title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    font-size: 19px;
    background: #FFF;
    color:crimson;
    font-weight: bold;
}
.box26 p {
    margin: 0; 
    padding: 0;
}

.box29 {
    margin: 2em 0;
    background: #dcefff;
}
.box29 .box-title {
    font-size: 1.2em;
    background: #3EB1C6;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box29 p {
    padding: 15px 20px;
    margin: 0;
}
.box29red {
    margin: 2em 0;
    background:#FFDCDC;
}
.box29red .box-title {
    font-size: 1.2em;
    background:#FF7C7C;
    padding: 4px;
    text-align: center;
    color: #FFF;
    font-weight: bold;
    letter-spacing: 0.05em;
}
.box29red p {
    padding: 15px 20px;
    margin: 0;
}
.box27 {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 3px #62c1ce;
}
.box27 .box-title {
    position: absolute;
    display: inline-block;
    top: -27px;
    left: -3px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #62c1ce;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}
.box27 p {
    margin: 0; 
    padding: 0;
}
span.nok {
   display: inline-block;
}
.sanko {
    text-align: right;
    font-size: 0.9em;
}
.txtleft{
	text-align: left
}
.txtcenter{
	text-align:center
}
.related-article {
    padding: 0.5em 1em;
    margin: 2em 0;
    background: #f0f7ff;
    border: dashed 2px #5b8bd0;/*点線*/
}
.related-article p {
    margin: 0; 
    padding: 0;
}
table, th, td {
  border-collapse: collapse;
  border: 1px solid #ccc;
  line-height: 1.5;
}
/*--------------------------*/
table.table01 {
	width:100%;
	border-right:#3EB1C6 solid 1px;
	border-collapse: collapse;
}
table.table01 thead th {
	background:#3EB1C6;
	color:#FFF;
	padding:10px 15px;
	border-right:#FFF solid 1px;
	border-bottom:#FFF solid 1px;
}
table.table01 thead th:last-child {
	border-right:#3EB1C6 solid 1px;
}
table.table01 tbody th {
	background:#3EB1C6;
	color:#FFF;
	padding:10px 15px;
	border-bottom:#FFF solid 1px;
	vertical-align:top;
}
table.table01 tbody tr:last-child th {
	border-bottom:#3EB1C6 solid 1px;
}
table.table01 tbody td {
	background:#FFF;
	padding:10px 15px;
	border-left:#3EB1C6 solid 1px;
	border-bottom:#3EB1C6 solid 1px;
	vertical-align:top;
}

@media screen and (max-width: 640px) {
table.table01 thead {
	display:none;
}
table.table01 tbody th {
	display:block;
}
table.table01 tbody td {
	display:block;
}
table.table01 tbody td::before {
	content: attr(label);
	float: left;
	clear:both;
	font-weight:bold;
}
table.table01 tbody td p{
	padding-left:6em;
}
}
/*---------- table-nomal  ---------------*/
table.table-nomal {
	border-collapse: collapse;
	border: 1px solid #ccc;
	table-layout: fixed;
	vertical-align:middle;
}
table.table-nomal th {
	text-align: center;
	padding: 10px 0;
}
table.table-nomal td {
	padding: 10px;
}
/*-- ttype2  --*/
table.ttype2 {
    width: 100%;
    border: 1px #E3E3E3 solid;
    border-collapse: collapse;
    border-spacing: 0;
	line-height: 1.5em;
}

table.ttype2 th {
    padding: 5px;
    border: #E3E3E3 solid;
    border-width: 0 0 1px 1px;
    background: #F5F5F5;
	font-size: 0.7em;
    font-weight: bold;
    line-height: 1.5em;
    text-align:center;
}
table.ttype2 td {
    padding: 15px;
    border: 1px #E3E3E3 solid;
    border-width: 0 0 1px 1px;
	font-size: 0.8em;
    text-align: left;
}
/* 箇条書き　*/
ul.kajo {
    line-height: 2.0em;
}
ul.kajono li {
    margin-left: 2em;
    padding-left: 0;
	list-style-type:decimal;
    line-height: 1.5em;
}
ul.kajono p {
    margin-left: 1.5em;
    margin-right: 1.0em;
}
ul.kajoroman li {
    margin-left: 3.0em;
	list-style-type:lower-roman;
}
ul.kajodisc li {
    margin-left: 2em;
    padding-left: 0em;
	list-style-type:disc;
    line-height: 1.5em;
}
ul.kajodisc p {
    margin-left: 1.8em;
    margin-right: 0.5em;
}
ul.kajonone {
    padding-left:10px;
    list-style-type:none!important;
    line-height: 1.5em;
}
ul.kajoiroha li {
    margin-left: 3em;
    padding-left: 0em;
	list-style-type: katakana-iroha;
    line-height: 1.5em;
}
ul.kajolroman li {
    margin-left: 4em;
    padding-left: 0em;
	list-style-type: lower-roman;
    line-height: 1.5em;
}
@media screen and (max-width: 640px) {
    ul.kajodisc li {
        margin-left:1.8em;
    }
    ul.kajodisc p {
        margin-left: 2.0em;
        margin-right: 1.0em;
    }
    ul.kajono li {
        margin-left: 1.5em;
    }
    ul.kajono p {
        margin-left: 1.5em;
    }
    ul.kajoiroha li {
        margin-left: 2.8em;
    }
    ul.kajonone li {
        margin-left: 5px;
    }
}