@charset "UTF-8";
/*+-----+*/
/* highway - style
/*+------------------------------------------------*/

/* img */
.p-highway figure {
	text-align: center;
}
.p-highway img {
	max-width: 100%;
	margin-bottom: 8px;
}
.link_bnr a:hover {
	opacity: 0.7;
}

/* text */
.p-highway figure .highway__txt {
	text-align: left;
}
.highway__wrap p,
.highway__wrap ul,
.highway__wrap ol {
	font-size:116%;
}
.notes {
	padding-left: 1em;
	text-indent: -1em;
}
.hdg_lv2_02 {
	margin-bottom: 24px;
}
.highway__title--sub {
	margin-bottom: 16px;
	padding: 4px 8px 2px;
	border-left: 6px solid #75b159;
	font-size: 130%;
}
.highway__txt {
	margin-bottom: 16px;
}
.-large {
	font-size: 1.2rem;
}
.highway__list {
	margin-bottom: 16px;
	margin-left: 1em;
}
.highway__list__item {
	margin-bottom: 8px;
	padding-left: 1em;
	text-indent: -0.65em;
}
.highway__list__item::before {
	display: inline-block;
	content: "●";
	margin-right: 0.25em;
	color: #1f6c20;
}
.link-pdf::after {
	display: inline-block;
	content: "";
	width: 14px;
	height: 20px;
	margin: 2px 4px 0;
	background: url(../images/icon_pdf.png) no-repeat;
	background-size: contain;
	vertical-align: top;
}


.link-blank::after {
	display: inline-block;
	content: "";
	margin-right: 8px; 
	transform: translateY(4px);
	width: 14px;
	height: 13px;
	background: url(../images/icon_tab_gray.png) no-repeat;
	background-size: contain;
	margin-left: 4px;
}



/* 親要素（リスト全体）の設定 */
.highway__custom-list {
  list-style: none; 
  counter-reset: teiki-number; 
  padding-left: 0; 
}

/* 子要素（各リスト項目）の設定 */
.highway__custom-list li {
  position: relative; 
  padding-left: 24px;
  margin-bottom: 8px; 
}

/* ③ ::beforeを使ってオリジナルの番号を作る */
.highway__custom-list li::before {
  counter-increment: teiki-number; 
  content: counter(teiki-number) "."; 

  /* ▼ ここから下は自由なデザイン設定です ▼ */
  position: absolute;
  left: 0;
  top: -1;
  color: #75b159; 
  font-weight: bold;
}

/* contents */
.highway__wrap {
	margin-bottom: 64px;
}
.highway__wrap dl {
	margin-bottom: 40px;
}



/* table */
.p-highway-table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid #ccc;
	table-layout: fixed;
}

.p-highway-table.-mb30 {
	margin-block-end: 30px;
}

.p-highway-table__cell {
  border: 1px solid #ccc;
  padding: 1em 3em;
	font-weight: bold;
	text-align: center;
  vertical-align: middle;
}

.p-highway-table__inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
}

.p-highway-table__name {
  text-align: left;
}

.p-highway-table__label {
  text-align: right;
}

.p-highway-table__cell.-time {
  text-align: center;
}

/* 矢印 */
.p-highway-route-arrow {
	display: flex;
	align-items: center;
	justify-content: space-around;
	margin-block: .5em;
	font-size: 1.5em;
}

/* 乗り場案内 */
p-highway-map {
  margin: 30px 0;
  margin-left: auto;
  margin-right: auto;
}

.p-highway-map__list {
  display: flex;
  flex-wrap: wrap;
  column-gap: 30px;
	row-gap: 50px;
  list-style: none;
  padding: 0;
	justify-content: center;
}

.p-highway-map__item.-full {
  flex: 1 1 100%;
  max-width: 100%;
}

.p-highway-map__img {
  width: 100%;
  height: auto;
  display: block;
}