@charset "UTF-8";

/* table */
.tr-bottomline-1{
    border-color: #B7B3B3;
    border-bottom-style: solid;
    border-bottom-width: 1px;
    border-collapse: collapse;
}
.red_bk{
  background:#e81010
}
.red-txt{
  color:#e81010
}

/* テーブル0*/
table.table00{
    width: 80%;
    border-right: 1px none #585858;
    border-collapse: collapse;
}
table.table00 thead th{
    background-color: #585858;
    color: #FFF;
    padding: 10px 15px;
    border-right: #FFF solid 1px;
    border-bottom: #FFF solid 1px;
}
table.table00 thead th:last-child{
    border-right: 1px solid #585858;
}
table.table00 tbody th{
    background-color: #B7B3B3;
    color: #FFF;
    padding: 10px 15px;
    border-bottom: #FFF solid 1px;
    vertical-align: top;
    
}
table.table00 tbody tr:last-child th{
    border-bottom: 1px solid #585858;
}
table.table00 tbody td{
    background: #FFF;
    padding: 10px 15px;
    border-left: 1px solid #585858;
    border-bottom: 1px solid #585858;
    vertical-align: top;
    
}
table.table00 tbody td p{
	margin:0;
}
@media screen and (max-width: 640px) {
table.table00 thead{
	display:none;
}
table.table00 tbody th{
    display: block;
    /* [disabled]background-color: #B7B3B3; */
}
table.table00 tbody td{
	display:block;
}
table.table00 tbody td::before{
    content: attr(label);
    float: left;
    clear: both;
}
table.table00 tbody td p{
	padding-left:6em;
}
}


/* テーブル1*/
table.table01{
    width: 70%;
    border-right: 0px solid #FFFFFF;
    border-collapse: collapse;
    margin-left: auto;
    margin-right: auto;
}
table.table01 thead th{
    background-color: #FFFFFF;
    color: #FFF;
    padding: 10px 15px;
    border-right: 0px solid #FFF;
    border-bottom: 0px solid #FFF;
}
table.table01 thead th:last-child{
    border-right: 1px solid #f0ece9;
    width: auto;
}
table.table01 tbody th{
    color: #323232;
    padding: 15px 15px;
    border-bottom: 0px solid #FFFFFF;
    vertical-align: top;
    font-weight: normal;
    width: 50%;
    font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, sans-serif;
}
table.table01 tbody tr:last-child th{
    border-bottom: 0px solid #FFFFFF;
    width: auto;
}
table.table01 tbody td{
    padding-top: 15px;
    padding-right: 15px;
    padding-left: 15px;
    padding-bottom: 15px;
    border-left: 0px solid #FFFFFF;
    border-bottom: 0px solid #FFFFFF;
    vertical-align: top;
    width: 100%;
    font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, sans-serif;
}
table.table01 tbody td p{
	margin:0;
}
@media screen and (max-width: 640px) {
table.table01 thead{
	display:none;
}
table.table01 tbody th{
    display: block;
    /* [disabled]background-color: #B7B3B3; */
}
table.table01 tbody td{
    display: block;
    font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, sans-serif;
}
table.table01 tbody td::before{
    content: attr(label);
    float: left;
    clear: both;
}
table.table01 tbody td p{
	padding-left:6em;
}
}

/* テーブル2*/
table.table02{
    width: 100%;
    border-right: 1px solid #585858;
    border-collapse: collapse;
}
table.table02 thead th{
    background-color: #f0ece9;
    color: #FFF;
    padding: 10px 15px;
    border-right: #FFF solid 1px;
    border-bottom: #FFF solid 1px;
}
table.table02 thead th:last-child{
    border-right: 1px solid #f0ece9;
}
table.table02 tbody th{
    width: 20%;
	background-color: #f4f4f4;
    color: #323232;
    padding: 10px 15px;
    border-bottom: 1px solid #585858;
    vertical-align: top;
    font-weight: normal;
}
table.table02 tbody tr:last-child th{
    border-bottom: 1px solid #585858;
}
table.table02 tbody td{
    background: #FFF;
    padding: 10px 15px;
    border-left: 1px solid #585858;
    border-bottom: 1px solid #585858;
    vertical-align: top;
}
table.table02 tbody td p{
	margin:0;
}
@media screen and (max-width: 640px) {
table.table01 thead{
	display:none;
}
table.table02 tbody th{
    width: 100%;
	display: block;
    /* [disabled]background-color: #B7B3B3; */
}
table.table02 tbody td{
	display:block;
}
table.table02 tbody td::before{
    content: attr(label);
    float: left;
    clear: both;
}
table.table02 tbody td p{
	padding-left:6em;
}
}

/* テーブル3*/
table{
  border-collapse: collapse;
  width: 100%;
}

.tb01 th,
.tb01 td{
  padding: 10px 15px;
  border: solid 1px #ccc;
  text-align:center;
  box-sizing:border-box;
}
.tb01 th {
  background: #464953;
  color: #fff;
  
}
.red_bk{
  background:#e81010
}
.red-txt{
  color:#e81010
}
@media screen and (max-width: 640px) {
  .tb01 .head{
    display:none;
  }
  .tb01 {
    width: 100%;
  }
  table.tb01 td {
    display: block;
    width: 100%;
    border-bottom:none;
  }
  table.tb01 td:first-child{
    background: #464953;
    color:#fff;
    font-weight:bold;
  }
  table.tb01 td:before{
    content: attr(data-label);
    font-size: .7rem;
    font-weight:bold;
    color: #999;
    display: block;
  }
  .tb01 tr:last-child{
    border-bottom: solid 1px #ccc;
  }
}

/* テーブル001列見出しもあり*/
table.table001 {
	width:100%;
	border-right:#3EB1C6 solid 1px;
	border-collapse: collapse;
}
table.table001 thead th {
	background:#3EB1C6;
	color:#FFF;
	padding:10px 15px;
	border-right:#FFF solid 1px;
	border-bottom:#FFF solid 1px;
}
table.table001 thead th:last-child {
	border-right:#3EB1C6 solid 1px;
}
table.table001 tbody th {
	background:#3EB1C6;
	color:#FFF;
	padding:10px 15px;
	border-bottom:#FFF solid 1px;
	vertical-align:top;
}
table.table001 tbody tr:last-child th {
	border-bottom:#3EB1C6 solid 1px;
}
table.table001 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.table001 thead {
	display:none;
}
table.table001 tbody th {
	display:block;
}
table.table001 tbody td {
	display:block;
}
table.table001 tbody td::before {
	content: attr(label);
	float: left;
	clear:both;
	font-weight:bold;
}
table.table001 tbody td p {
	padding-left:6em;
}
}
/* テーブル4 */
.table_design04 {
    width: 100%;
    border-style: none;
}
.table_design04 tr {
    background-color: #2d3033;
    color: #FFFFFF;
    font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, sans-serif;
    font-size: 16px;
    text-indent: 0px;
    height: 80px;
    vertical-align: middle;
    border-style: none;
}
.table_design04 tr:nth-child(odd) {
    background-color: #787878;
    opacity: 1;
    border-style: none;
}
.table_design04 th, .table_design04 td {
    padding: 1em;
    border-style: none;
}
.table_design04 th {
    font-weight: bold;
    text-align: center;
    width: 20%;
    min-width: 4em;
    opacity: 1;
    border-style: none;
}

/*テーブルカスタム（縦線無し）*/
table.custom-table {
    width: 100%;
    border-collapse: collapse;
    border: none !important; /* テーブル全体の枠線を削除 */
}

table.custom-table th {
	vertical-align: top; /* テキストを上揃え */
    padding-top: 5px; /* 必要に応じて余白を調整 */
　　padding: 10px;
    border-bottom: 1px solid #585858; /* 横線のみ表示 */
    border-left: none !important; /* 左の縦線を削除 */
    border-right: none !important; /* 右の縦線を削除 */
    width: 20%; /* thの幅を指定（適宜調整） */
}

table.custom-table td {
    padding: 10px;
    border-bottom: 1px solid #585858; /* 横線のみ表示 */
    border-left: none !important; /* 左の縦線を削除 */
    border-right: none !important; /* 右の縦線を削除 */
	width: 80%; /* 残りの幅をtdに割り当て */

}

table.custom-table thead th {
    background-color: #f4f4f4; /* ヘッダーの背景 */
    font-weight: bold;
}

table.custom-table tbody tr:last-child td {
    border-bottom: 1px solid #585858 !important; /* 最終行の横線を明示的に適用 */
}
@media (max-width: 768px) {
  table.custom-table th {
    width: 30%; /* thを少し広げる */
    min-width: 80px; /* 幅を一定以上に維持 */
  }

  table.custom-table td {
    width: 70%; /* 残りのスペースをtdに割り当て */
  }
}