@charset "utf-8";

body {
  font-family: "HiraKakuProN-W3", Arial, "Helvetica Neue", Meiryo, sans-serif;
	text-align: center;
}

#TopHead{
	width:100%;
	background:#FFF;
	padding: 2px;
	margin:0;
	position:fixed;
	top:0;
	left:0;
	z-index:10;
	border-bottom: solid 1px gray;
}

.Link {
	display: flex;
	margin: 1em auto 0.3em;
}
.Link li {
	list-style: none;
}
.Link li a {
	display: flex;
	text-decoration: none;
	color: black;
	margin-right: 1.3em;
	margin-bottom: 0.5em;
	transition: all 0.5s;
	border-right: solid 1px black;
	padding-right: 1.3em;
}
.Link li a:hover {
	opacity: 0.7;
}

#logo{
	display:block;
	transition:all 0.5s;
	border-right: none;
	padding-right: 0;
}
#logo:hover{
	opacity:0.6;
}
#logo img{
	height: 1.8em;
}
#end {
	border-right: none;
}

/* スライダー */

.image_box {
  width: 75%;
  margin:0 auto;
  display: block;
}

.hover {
  overflow: hidden;
  margin-bottom: 2em;
}
.hover .img_wrap {
  width: 200%;
  height: 100%;
  display: flex;
  transition: 2.5s;
}
.hover .img_wrap img {
  width: 50%;
  height: 50%;
}
/* .hover:hover .img_wrap {
  transform: translateX(-50%);
} */

/* スライダー終了 */

.sites {
	display: inline-flex;
	text-decoration: none;
}
#scheduled {
	width: 20em;
	height: 7em;
	border: solid 2px black;
	margin-right: 2em;
	border-radius: 1em;
	background-color: rgb(255, 250, 241);
	text-decoration: underline rgb(255, 250, 241);
}
#scheduled:hover {
	background-color: rgb(255, 231, 187);
	text-decoration: underline rgb(255, 231, 187);
	transition-duration: 0.2s;
}
#ondemand {
	width: 20em;
	height: 7em;
	border: solid 2px black;
	margin-bottom: 2em;
	border-radius: 1em;
	background-color: rgb(255, 250, 241);
	text-decoration: underline rgb(255, 250, 241);
}
#ondemand:hover {
	background-color: rgb(255, 231, 187);
	text-decoration: underline rgb(255, 231, 187);
	transition-duration: 0.2s;
}
.orange {
	color: rgb(255, 180, 41);
	font-size: 1.8em;
}
.orange2 {
	color: black;
	font-size: 1em;
}

#driveinformation {
	margin-top: 0;
}
.information {
	width: 85%;
	margin: 3em auto 2em;
	border: solid 1px gray;
}
.information h1 {
	width: 90%;
	margin: 0.5em auto 1em;
	padding: 0.5em;
	border-bottom: 1px dashed gray;
}
#in-contents ul {
	display: flex;
	margin: 2em auto 2em 3em;
}
#in-contents li {
	list-style: none;
	margin-right: 5em;
	text-align: left;
}

.section {
	display: block;
	padding-top: 5.5em;
	margin: -5.5em auto 2rem;
    width: 85%;
	border-bottom: dashed 1px gray;
}

#gototop {
  width: 3em;
  height: 3em;
  border: solid 2px black;
  background-color: white;
  position: fixed;
  bottom: 1em;
  right: 1em;
  z-index: 10;
  box-sizing: border-box;
	border-radius: 50%;
	font-family: 'Gill Sans', 'Gill Sans MT', Calibri, 'Trebuchet MS', sans-serif;
	font-size: 150%;
}
#topa {
	display: block;
	text-decoration-line: none;
	position: relative;
	color: black;
	transition: all 0.5s;
}
#topa:visited {
	color: black;
}
#topa:hover {
	opacity: 0.6;
}
#topd {
	position: absolute;
  top: 0.9em;
  right: 0;
  bottom: 0.9em;
  left: 0;
  margin: auto;
  width: 80%;
}

.sectiontitle {
	background-color: orange;
	border-radius: 1em;
	max-width: 10em;
	margin: 1em auto;
	box-shadow: 0 0 8px #bebebe;
}

.red {
	color: rgb(255, 47, 0);
	font-size: 1.8em;
}
.empha {
	font-size: 1.3em;
}

/*
#way {
  background-color: white;
}

#period {
  background-color: rgb(215, 255, 244);
}

#vehicle {
  background-color: rgb(215, 255, 244);
} */

#period {
	border: black solid 1px;
}

.information {
	height: 15em;
	overflow: auto;
}

.links:visited {
	color: black;
}

#summary h2 {
	width: 60%;
	text-align: left;
	margin: 0 20% 1em;
}

#wayimg {
	display: block;
	max-width: 60%;
	margin: 20px auto;
}

#route {
	border-bottom: none;
}

#calenderinner {
	display: block;
	max-width: 800px;
	margin: 10px auto;
}

#sengokutimetable img {
	display: block;
	max-width: 90%;
	margin: 10px auto;
}
#miyaginotimetable img {
	display: block;
	max-width: 90%;
	margin: 10px auto;
}

#sengokumap {
  background-color: rgba(255, 224, 167, 0.2);
  border-radius: 2em;
  padding: 0.5em;
  margin: 0.5em;
}
#sengokumap h3 {
	background-color: rgb(255, 169, 8);
	margin: 0.5em auto 0;
	width: 7em;
	border-radius: 8px;
	/* box-shadow: 0 0 4px black; */
}
#sengokumap img {
	display: block;
	max-width: 96%;
	margin: 10px auto;
}

#miyaginomap {
  background-color: rgba(255, 224, 167, 0.2);
  border-radius: 2em;
  padding: 0.5em;
  margin: 0.5em;
}
#miyaginomap h3 {
	background-color: rgb(255, 169, 8);
	margin: 0.5em auto 0;
	width: 7em;
	border-radius: 8px;
	box-shadow: 0 0 8px white;
}
#miyaginomap img {
	display: block;
	max-width: 96%;
	margin: 10px auto;
}


#timetable img {
	max-width: 100%;
	height: auto;
}

#stoppictures {
	padding: 2em;
	background-color: rgb(197, 197, 197);
	text-align: center;
	padding-left: 2em;
	display: flex;
	height: 6.2em;
	width: 90%;
	border-radius: 2em;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
#stoppictures img {
	width: 4em;
	height: 4em;
}
#stoppictures a {
	font-size: 2.2em;
	height: 2.2em;
	text-decoration: underline;
}
#stoppictures a:visited {
	color: black;
}


#pictures ul {
	list-style: none;
	text-align: left;
	margin-left: 1em;
	background-color: #f3f3f3;
	border-radius: 1em;
	padding: 1em 2em;
	/* display: inline-block; */
}
#pictures h3 {
	text-align: left;
	margin-left: 1em;
	background-color: #d4d4d4;
	border-radius: 1em;
	width:8em;
	padding-left: 1em;
}
.stops {
	display: inline-block;
	width: 20em;
	vertical-align: top;
}


#qanda {
  background-color: #e5e5e5;
	border-radius: 1em;
  width: 90%;
  padding: 1em;
  margin: 1em;
	text-align: left;
	padding-left: 2em;
}
#qanda h2 {
	text-align: center;
}

.call {
	background-color: rgb(224, 224, 224);
	margin: 1em auto;
	width: 90%;
	border-radius: 1em;
	font-size: 1.2em;
}
#callfor {
	color: rgb(255, 68, 0);
	font-size: 1.6em;
}
#callfora {
	font-size: 1.3em;
}

#logos ul {
	display: flex;
	justify-content: center;
	overflow: auto;
}
#logos ul li {
	list-style: none;
}
#logos ul li a:hover{
	opacity: 0.6;
}
#logos ul li:nth-child(2) {
	margin: 0 1.5em;
}
#logos ul li:nth-child(4) {
	margin: 0 1.5em;
}

footer {
  background-color: black;
  color: white;
  padding: 1em;
	width: 100%;
	text-align: left;
	padding-left: 1.5em;
}


/* タブの設定 */
/*タブ切り替え全体のスタイル*/
.tabs {
  margin-top: 50px;
  padding-bottom: 40px;
  background-color: #fff;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  width: 80%;
  margin: 0 auto;}

/*タブのスタイル*/
.tab_item {
  width: calc(100%/3);
  height: 50px;
  border-bottom: 2px solid rgb(200, 200, 200);
  background-color: white;
  line-height: 50px;
  font-size: 16px;
  text-align: center;
  color: black;
  display: block;
  float: left;
  text-align: center;
  font-weight: bold;
  transition: all 0.2s ease;
	user-select: none;
	text-overflow: ellipsis;
	white-space: nowrap;
	overflow: hidden;
}
.tab_item:hover {
  opacity: 0.65;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
  display: none;
  padding: 40px 40px 0;
  clear: both;
  overflow: hidden;
}

/*選択されているタブのコンテンツのみを表示*/
#use:checked ~ #use_content,
#service:checked ~ #service_content,
#other:checked ~ #other_content {
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
  background-color: rgb(200, 200, 200);
  color: black;
}
/* タブの設定終了 */


/* アコーディオンの設定 */
.accordion {
  margin: 1em auto;
  max-width: 60vw;
}
.toggle {
  display: none;
}
.option {
position: relative;
margin-bottom: 1em;
}
.title,
.content {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transform: translateZ(0);
transition: all 0.5s;
border: solid 1px black;
border-radius: 0.5em;
border-top: solid 0px black;
}
.title {
border: none;
padding: 1em;
display: block;
color: black;
font-weight: bold;
user-select: none;
}
.title::after,
.title::before {
content: "";
position: absolute;
right: 0.4em;
top: 1.25em;
width: 0.2em;
height: 0.8em;
background-color: black;
transition: all 0.3s;
box-shadow: 5px #bebebe;
}
.title::after {
transform: rotate(90deg);
}
.content {
max-height: 0;
overflow: hidden;
border: none;
}
.content p {
margin: 0;
padding: 0.5em 1em 1em;
font-size: 1em;
line-height: 1.5;
}
.toggle:checked + .title + .content {
max-height: 500px;
transition: all 1.5s;
}
.toggle:checked + .title::before {
transform: rotate(90deg) !important;
}
/* アコーディオンの設定終了 */

/* スマホ対応 */
@media (max-width : 800px) {
	/* body {
		background-color: #bebebe;
	} */
	#TopHead {
		max-height: 6em;
		overflow: auto;
	}
	.Link {
		display: block;
	}
	.Link li {
		list-style: none;
	}
	.Link li a {
		margin-bottom: 0;
		border-right: none;
		border-bottom: dashed 1px black;
	}

	#in-contents ul {
		display: flex;
		margin: 2em auto 2em 1em;
	}
	#in-contents li {
		list-style: none;
		margin-right: 2em;
		text-align: left;
	}

	.section {
		display: block;
		padding-top: 6em;
		margin: -6em auto 2rem;
	}

	#summary h2 {
		width: 80%;
		text-align: center;
		margin: 0 2em;
		padding:1em 0;
	}

	#wayimg {
		max-width: 86%;
	}
	#calenderinner {
		width: 98%;
	}
	.section {
		width: 98%;
	}
	#sengokumap img {
		max-width: 100%;
	}
	#miyaginomap img {
		max-width: 100%;
	}
	.tabs {
		width: 96%;
	}
	.content {
		width: 100%;
		overflow: auto;
	}
}
