@charset "UTF-8";

p.ttl {
	/*text-align: center;*/
	font-size: 16px;
	font-weight: bold;
	text-decoration: underline double #000;
	margin: 10px 0px 10px 100px;
	
}
.indent {
	text-indent: 1em;
}

.flex {
	display: flex;
	align-items: flex-start;
}

/*カレンダー*/
.jup-cal {
  display: grid;
  grid-template-columns: repeat(4, 1fr); /* 4列のカラムを作成 */
  gap: 10px; /* カラム間の間隔 */
}

.jup-cal table {
	border: 1px #999 solid;
	border-collapse: collapse;
	width: 100%;
	font-size: 100%;
	text-align: center;
	line-height: 1.8;
}

.jup-cal th,		/* th, td 両方にスタイルを適用 */
.jup-cal td {
	border: 1px #999 solid;
	padding: 2px; /* パディングを追加すると見やすくなる */
}
.jup-cal thead tr:first-of-type{
	background-color: #000;
	color: #fff;
}

.jup-cal thead tr:nth-of-type(2) {
	 background: #dee4ff;
} /* 1行目 背景色 */
.jup-cal thead tr:nth-child(2) td:first-child { color: red; } /* 1列目日曜 赤 */
.jup-cal thead tr:nth-child(2) td:nth-child(n+2):nth-child(-n+6) { color: #000; } /* 2列目-6列目 平日黒 */
.jup-cal thead tr:nth-child(2) td:nth-child(7) { color: #3366ff; } /*tbody 7列目土曜 青 */

.jup-cal tbody td:nth-child(6) { background-color: Turquoise; }


.box {
	border: 1px solid #000;
	height: 15px;
	width: 50px;
}
dl {
	line-height: 1;
}
dt {
	font-size: 16px;
	font-weight: bold;
}
dd {
  margin: 0.5em 0 0.5em 1em;
	text-indent: -1em;
	padding-left: 1em;
}

/* テーブル共通スタイル */
.tbl { /* time-tbl, fare-tbl など共通のスタイルをまとめる */
  border: 1px #999 solid;
  border-collapse: collapse;
  width: 100%;
  font-size: 95%;
}

.tbl td,
.tbl th { /* th も追加 */
  border: 1px #ccc solid;
  padding: 5px; /* パディングを追加 */
  text-align: center;
  line-height: 1.5; /* 150% は 1.5 と同じ */
}

.tbl thead tr {
  background-color: #dee4ff;
}
.tbl thead td(1) { width: 23%; }
.tbl thead td(2) { width: 40%; }
.tbl thead td(3) { width: 14%; }
.tbl thead td(4) { width: 23%; }
/*--------------------------------------------*/

/*#fare-new */
.fare-new thead tr { background-color: #dee4ff;}
.fare-new thead td:nth-child(1) { width: 30%;}
.fare-new thead td:nth-child(n+2):nth-child(-n+6) { width: 15%;}
.fare-new tbody tr:nth-child(3n-1) { color: #3366ff;}
.fare-new tbody tr:nth-child(3n) { color: #e72718;}
.fare-new tbody td { line-height: 175%;}
.fare-new tbody td:first-child { background-color: #dee4ff;}/* 列目 */
.fare-new tfoot td div {
	text-align: left;
	 margin-left: 10px;
}
/*--------------------------------------------*/
#reserve-tbl {
	font-size: 95%;
  line-height: 1.25;
}
/*チケットの予約購入*/
/*1.電話* の表*/
#reserve-tbl table:first-of-type thead td:nth-child(1) { width: 30%;}
#reserve-tbl table:first-of-type thead td:nth-child(2) { width: 30%;}
#reserve-tbl table:first-of-type thead td:nth-child(3) { width: 40%;}
/*2.インターネットの表*/
#reserve-tbl table:nth-of-type(2) thead td:nth-child(1) { width: 25%;}
#reserve-tbl table:nth-of-type(2) thead td:nth-child(2) { width: 20%;}
#reserve-tbl table:nth-of-type(2) thead td:nth-child(3) { width: 55%;}

#reserve-tbl table td {
	border: 1px #ccc solid;
	padding: 4px;
	text-align: center;
	width: auto;
}
#reserve-tbl p {
	text-align: left;
}
/*----------------------------------------*/
.tourbus table.tbl caption {
	text-align: right;
}
.tourbus thead td {
	background-color: #dee4ff;
	text-align: center;
}
.tourbus td {
	border: 1px #ccc solid;
	font-size: 95%;
	line-height: 125%;
	text-align: left;
}
.tourbus thead tr td:nth-of-type(1){ width: 21%;}
.tourbus thead tr td:nth-of-type(2){ width: 30%;}
.tourbus thead tr td:nth-of-type(3){ width: 49%;}

.tourbus tbody td:first-child {
	background-color: #efefef;
}/* 列目 */

