@charset "UTF-8";

body		{ font-family:Arial, Helvetica, sans-serif; margin:0 auto; background-color:#F7F7F7; font-size:16px; width:100%; color:#333;}
a 		{ text-decoration:none; }
a:active, a:hover { text-decoration:underline;  }

/*ページ幅をレスポンシブルに*/
@media screen and (min-width:767px) { /*PC用*/
div.logo		{ width:100%; }}
@media screen and (min-width:767px) { /*PC用*/
div.main		{ width:auto; max-width:860px; }}
@media screen and (min-width:767px) { /*PC用*/
div.footer	{ width:auto; max-width:860px; }}


@media screen and (max-width:767px) { /*タブレット用*/
div.logo		{ width:100%; }}
@media screen and (max-width:767px) { /*タブレット用*/
div.main		{ width:auto; max-width:750px; }}
@media screen and (max-width:767px) { /*タブレット用*/
div.footer	{ width:auto; max-width:750px; }}


@media screen and (max-width:479px) { /*スマホ用*/
div.logo		{ width:100%; }}
@media screen and (max-width:479px) { /*スマホ用*/
div.main		{ width:auto; max-width:460px; }}
@media screen and (max-width:479px) { /*スマホ用*/
div.footer	{ width:auto; max-width:460px; }}



/*ページ冒頭ロゴ部分*/
div.logo p	{ text-align:center; margin-bottom:0; }
div.logo p img	{ width:auto; max-width:90%;  }
hr.logo		{ border:solid #E4A025; border-width:5px 0 0 0; margin:0.5em 0 2em 0; }

/*ページ最下部ロゴ部分*/
div.footer	{ text-align:left; display:block; margin-right:auto; margin-left:auto; }
div.footer p  	{ margin-left:1em; }
div.footer p img 	{ margin-bottom:0.5em; width:auto; max-width:90%; }
div.footer p span.phone	{ font-size:1.3rem!important; font-weight:bold; margin-right:1em; display:inline-block; }
p.copyright	{ text-align:center; font-size:0.9rem; margin:7em 1em 2em; border-top:1px solid #ddd;  padding:1em;}
hr.footer	{ border:solid #E4A025; border-width:2px 0 0 0; margin:3em 0 1em 0;  }



/*トップへ戻るリンク*/
@media screen and (min-width:550px) { /*PC用*/
#page_top 	{  font-size:3rem; position:fixed; right:10; bottom:10; opacity:0.6; z-index:100; }}
@media screen and (min-width:550px) { /*PC用*/
#page_top a 	{ position:relative; display:block; text-decoration:none; border:1px solid #E71873; background:#E71873; text-align:center;
		color:#fff; padding:0.1rem 1.6rem 0.8rem; border-radius:3em; }}
@media screen and (min-width:550px) { /*PC用*/
#page_top b	{ font-size:1.2rem; }}

@media screen and (max-width:549px) { /*スマホ用*/
#page_top 	{  font-size:2rem; position:fixed; right:10; bottom:10; opacity:0.6; z-index:100; }}
@media screen and (max-width:549px) { /*スマホ用*/
#page_top a 	{ position:relative; display:block; text-decoration:none; border:1px solid #E71873; background:#E71873; text-align:center;
		color:#fff; padding:0.1rem 1.1rem 0.6rem; border-radius:3em; }}
@media screen and (max-width:549px) { /*スマホ用*/
#page_top b	{ font-size:0.8rem; }}

#page_top a:hover	{  position:relative; display:block; text-decoration:none; border:1px solid #E71873; 
		background:#fff; color:#E71873; }



/*本文全体*/
div.main		{ text-align:left; display:block; margin-right:auto; margin-left:auto; }
div.main p		{ width:95%; margin-right:auto; margin-left:auto;  }
a.text { display:inline-block; margin:0 0.2em 0 0; }




/*リンク画像にマウスオーバーで白っぽく*/
a img:hover, a img:active { opacity:0.7; transition:.3s ease-out; }



/*リスト設定*/
div.main ul, #teiki ul
			{ list-style:none; width:95%; margin:1em auto 0 auto; padding:0; text-align:left; }

#news li, #jikoku li, #unchin li, #kaisu li, #teiki li, #bus li, #noriba li, #info li, #toiawase li
			{ padding-left:1.25em; text-indent:-1.25em; color:#000!important;   }

#news li:before, #jikoku li:before, #unchin li:before, #kaisu li:before, #teiki li:before, #teiki li:before, #bus li:before, #noriba li:before, #info li:before, #toiawase li:before
			{ font-family:FontAwesome; content:'\f111'; color:#E71873; aria-hidden:true; margin:0.2em; }

#news li i, #jikoku li i, #unchin li i, #kaisu li i, #teiki li i, #bus li i, #noriba li i, #info li i, #toiawase li i
			{ margin:0 -0.6em 0 0.8em;  }
#news li a i, #jikoku li a i, #unchin li a i, #kaisu li a i, #teiki li a i, #bus li a i, #noriba li a i, #info li a i, #toiawase li a i
			{ margin:0 -0.5em 0 2em;  }

#bus li.add		{ font-size:0.85rem; margin-top:0.1rem; padding-left:1.4rem; text-indent:-1.4rem; }

#bus li.add:before	{ font-family:Arial, Helvetica, sans-serif; content:'※'; color:#000; margin:0 0.3em; }



/*ページトップ画像*/
h1, h1 picture , h1 picture.img		{ margin-top:-0.6em!important; padding:0; }

@media screen and (min-width:550px) { /*PC用*/
img.main-l		{ width:auto; max-width:100%;  }}
@media screen and (min-width:550px) { /*PC用*/
img.main-s		{ display:none!important; }}

@media screen and (max-width:550px) { /*スマホ用*/ 
img.main-l		{ display:none!important; }}
@media screen and (max-width:550px) { /*スマホ用*/
img.main-s		{ width:auto; max-width:100%;  }}



/*冒頭インデックスボタン*/
ul.index		{ list-style:none; width:99%!important; margin:2em auto 0 auto!important; padding:0; }
@media screen and (min-width:876px) { /*PC用*/
ul.index		{ text-align:left;  }}
@media screen and (max-width:876px) { /*スマホ・タブレット用*/
ul.index		{ text-align:center!important; }}
ul.index li	{ display:inline-block!important; }
ul.index	li a	{ display:inline-block; text-align:left; background:linear-gradient( 180deg, #fff4f9, #F7C9D3); color:#E71873;
		 padding:0.5em; margin:0.2em; text-decoration:none; width:9em; border-radius:0.25em; }
ul.index	li a:hover	{ background:#E71873; color:#fff; transition:.5s ease-out; }
ul.index	li:before		{ display:none; }



/*PDFリーフボタン*/
a.pdf-btn		{ display:block; border:1px solid #E71873; padding:0.5em 0.8em; text-align:center; border-radius:0.5em; color:#E71873; background:#fff; width:auto; max-width:95%; }
a.pdf-btn:hover,
a.pdf-btn:active		{ color:#E71873;  text-decoration:none; background:#fad9e6;  transition:.3s ease-out; }



/*ページ内小題*/
h2 		{ color:#fff; font-weight:bold; font-size:1.2rem; padding:0.4em 0.7em; background:linear-gradient( 180deg, #e8468c, #E71873); margin:2.5em 0 0 0; text-align:left;  }
h3		{ color:#E71873; font-weight:bold; text-align:left; }
h4		{ color:#E71873; font-size:1rem;  background:#fad9e6; padding:0.2em 0.6em; margin:1rem 0 0.2rem 0;  }
.list-title		{ color:#E71873; font-weight:bold; text-align:left; border:none; margin:0 0 -0.9em 0;  }
h2 i { margin-right:0.3em!important; font-size:1em; line-height:1em;}



/*お知らせ*/
#news ul  { background:#fff; padding:1em; margin-top:0; width:auto; max-width:100%; }
#news ul li { border:solid #ddd; border-width:1px 0 0 0; padding-top:0.3em; padding-bottom:0.3em; }
#news ul li:last-child { border: solid #ddd; border-width:1px 0;  }
#news ul li.new:before {content:url('./img/new.gif'); width:1.5em; margin-right:0.3em;}
#news i { margin:0; }




/*時刻表①：ボタン開閉*/
#jikoku details summary { width:auto; max-width:100%; margin:1em auto 0.5em; border:solid #ee64a1; border-width:1px; border-radius:0.5em; background:#fad9e6; padding:0.5em 1.5em; color:#E71873; font-weight:bold; text-align:left; list-style: none;  transition:.4s ease-out; }
#jikoku details summary::before {  font-family: FontAwesome;  content: '\f067'; margin-right:0.5em; }
#jikoku details[open] summary {  background:linear-gradient( 180deg, #f397c0, #ee64a1); color:#fff; transition:.2s ease-in-out; }
#jikoku details[open] summary::before {  content: '\f068'; margin-right:0.5em; }
#jikoku div.in-details { width:auto; max-width:97%; margin:-0.5em auto 1em; padding:0.9em 0.5em; background:#fff;  }
#jikoku details[open] div.in-details { border-left:3px solid #ee64a1; }


/*時刻表②：タブ開閉*/
.jikoku-tab { display:flex; flex-wrap:wrap; margin:20px 0; width:auto; }
.jikoku-tab:after { content:''; width:100%; height:0; background:#ee64a1; display:block; order:-1;}
.tab-label-weekday,
.tab-label-holiday { color:#fff; background:LightGray; font-weight:bold; white-space:nowrap; text-align:center; padding:12px .5em; 
							order:-1; position:relative; z-index:1; cursor:pointer; border-radius:5px 5px 0 0; flex:1; }
.tab-label:not(:last-of-type) { margin-right:5px; }
.in-tab-holiday, 
.in-tab-weekday { width:95%; height:0; overflow:hidden; opacity:0; background:#fff; margin:0; }

/* アクティブなタブ */
.tab-switch:checked+.tab-label-holiday {  background:#ee64a1; }
.tab-switch:checked+.tab-label-weekday { background:#42a7f2; }
.tab-switch:checked+.tab-label-weekday+.in-tab-weekday, 
.tab-switch:checked+.tab-label-holiday+.in-tab-holiday { height:auto; overflow:auto; padding:15px; opacity:1; transition:.5s opacity; }
.tab-switch:checked+.tab-label-weekday {  background:#42a7f2; }
.tab-switch:checked+.tab-label-holiday {  background:#ee64a1; }
.tab-switch:checked+.tab-label-weekday+.in-tab-weekday { height:auto; overflow:auto; padding:15px; opacity:1; transition:.5s opacity; border:solid #42a7f2; border-width:0 0 0 3px; }
.tab-switch:checked+.tab-label-holiday+.in-tab-holiday { height:auto; overflow:auto; padding:15px; opacity:1; transition:.5s opacity; border:solid #ee64a1; border-width:0 0 0 3px; }
.in-tab-weekday table td:first-child { color:#217bbf!important; }
.in-tab-holiday table td:first-child { color:#E71873!important; }

/* ラジオボタン非表示 */
.tab-switch {  display:none; }




/*時刻表*/

#jikoku div.jikoku-contents { background:#fff; margin:0; padding:0.8em 1.5em 1.5em 1.5em; width:auto; max-width:100%;  }
#jikoku table, #unchin table	{ width:95%; padding:0.5em; border-collapse:collapse; table-layout:fixed; margin:1em auto 1.5em auto; }
#jikoku table td.title		{ border:none; color:#E71873; font-weight:bold; text-align:left; background:#fff!important; }
#jikoku table td.weekday  { border:solid #fff; border-width:4px 0; background:#d3ebfb!important; color:#217bbf; font-weight:bold; }
#jikoku table td.holiday  { border:solid #fff; border-width:4px 0; background:#fadee9!important; color:#E71873; font-weight:bold; }

#jikoku table td	{ border:solid #ddd; border-width:1px 0; text-align:center; margin:0; padding:0.2em; line-height:1.2em; }
#jikoku table th{ border:solid #ddd; border-width:0 0 1px 0; text-align:center; font-weight:bold; margin:0; padding:0.6em 0.2em 0.2em 0.2em; line-height:1.2em; }

#jikoku div.in-tab-weekday table td:nth-child(2n),
#jikoku div.in-tab-weekday table th:nth-child(2n) { background:#f1f9fd; }
#jikoku div.in-tab-holiday table td:nth-child(2n),
#jikoku div.in-tab-holiday table th:nth-child(2n) { background:#fdf7f8; }

#jikoku table th span { font-weight:normal; font-size:0.95em; display:inline-block;}
#jikoku table td.info  { color:#333!important; }

@media screen and (max-width:767px) { /*タブレット用*/
#jikoku table th b { writing-mode: vertical-rl;  text-orientation: mixed; white-space: pre; -webkit-appearance: none;} 　/*表見出しをタテ書きに*/
#jikoku table th  { text-align:start!important; } 　/*表見出しをタテ書きに*/
}



@media screen and (max-width:479px) { /*スマホ用*/
#jikoku div.jikoku-contents { padding:0.8em 0.4em 1.5em 0.4em!important;}
#jikoku table { width:97%; font-size:0.95em;  } 
#jikoku table th b { writing-mode: vertical-rl;  text-orientation: mixed; white-space: pre; -webkit-appearance: none; }　/*表見出しをタテ書きに*/
#jikoku table th  { text-align:start!important; }　/*表見出しをタテ書きに*/

.in-tab-holiday, 
.in-tab-weekday { width:99%; height:0; overflow:hidden; opacity:0; background:#fff; margin:0; }
}



/*運賃*/
#unchin table th, #unchin table td	{ border:solid #ddd; border-width:1px; text-align:center; margin:0; padding:0.2em; line-height:1.4em; }
#unchin table th.hdn, #unchin table td.hdn		{ border:none; margin:0; padding:0.2em; }
.chld		{ font-size:0.85rem; }
#unchin div { background:#fff; margin:0; padding:0.8em 0.5em; width:auto; max-width:100%;  }


/*回数券*/				
#kaisu table	{ width:95%; padding:0.5em; border-collapse:collapse; margin:1em auto 1.5em auto; }
#kaisu table td	{ border:solid #ddd; border-width:1px 0; text-align:left; margin:0; padding:0.5em; font-size:1.2rem; }
#kaisu span	{ color:#E71873; font-weight:bold; text-align:left; border:none; }
#kaisu div { background:#fff; margin:0; padding:0.8em 0.5em 1.5em 0.5em; width:auto; max-width:100%;  }


/*回数券・定期券のGoogleMapボタン*/			
#kaisu li, #teiki li { margin-bottom:0.2em;}
#kaisu li a, #teiki li a { border:1px solid #ddd; font-size:0.9em;color:#555; padding:0.2em 0.5em 0.2em 0.8em; background:linear-gradient( 180deg, #fff, #ddd); border-radius:0.3em; text-align:center; display:inline-block; margin:0 1em; text-decoration:none;  }
#kaisu li a i, #teiki li a i { margin-right:0; }


/*定期券*/
a.teiki-btn	{ border:1px solid #ddd; color:#555; padding:0.5em 1.2em; background:linear-gradient( 180deg, #fff, #ddd); 
		border-radius:0.3em; text-align:center; display:inline-block; margin:1em; text-decoration:none; width:auto; max-width:85%; }
a.teiki-btn:hover, a.teiki-btn:active	{ font-weight:bold; text-decoration:none; }
#kaisu div { background:#fff; margin:0; padding:0.8em 0.5em 1.5em 0.5em; width:auto; max-width:100%;  }





/*定期券の別ウィンドウ*/
#teiki table		{ width:95%; padding:0.5em; border-collapse:collapse; margin:1em auto 1.5em auto; }
#teiki table th		{ border:1px solid #ddd; text-align:center; margin:0; padding:0.5em; line-height:1.2em; }
#teiki table td		{ border:1px solid #ddd; text-align:right; margin:0; padding:0.5em; }
#teiki div#logo p	{ text-align:center; margin-bottom:0; }
#teiki div#logo p img	{ width:auto; max-width:80%; border:none; margin:0; }
#teiki p.list-title	{ margin-left:1.2rem; }
a.close-btn		{ border:1px solid #ddd; color:#555; background:linear-gradient( 180deg, #fff, #ddd); padding:0.2em 1.5em;  
			 border-radius:0.3em; text-align:center; display:inline-block;  margin:0.5em;  text-decoration:none;  width:auto; font-size:0.9rem; }
a.close-btn:hover, a.close-btn:active	{ font-weight:bold;  }
#teiki div { background:#fff; margin:0; padding:0.8em 0.5em 1.5em 0.5em; width:auto; max-width:100%;  }


/*使用車両*/
#bus p 		{ text-align:center; }
#bus p img	{ width:95%; }
#bus div { background:#fff; margin:0; padding:0.8em 0.5em 1.5em 0.5em; width:auto; max-width:100%;  }



/*のりば案内*/
#noriba p  		{ text-align:center; }
#noriba p img 		{ width:90%; max-width:330px; margin:1.5%; border:1px solid #ddd; padding:1%; }
#noriba div { background:#fff; margin:0; padding:0.8em 0.5em 1.5em 0.5em; width:auto; max-width:100%;  }


/*のりば案内の別ウィンドウ*/
#noriba-2 p  		{ text-align:center; }
#noriba-2 p img 		{ width:85%; margin:0.6em auto; border:1px solid #ddd; padding:1%; }
#noriba-2 h2  		{ margin:0 0 1em; }
#noriba-2 div#logo p	{ text-align:center; margin-bottom:0; }
#noriba-2 div#logo p img	{ width:auto; max-width:80%; border:none; margin:0; }
#noriba p i { color:#E71873; font-size:1.1em; }


/*ご利用案内*/
.scroll-box		{ width:auto; max-width:100%;  height: 20rem;  background-color: #fff;  overflow-y: scroll; padding:2vw; margin:0 auto 0.5em auto;  border:solid #fff; border-width:0.5rem 0.5rem 1rem 0.5rem; }
#info h3			{ margin-top:0; }

div.scroll-box table 	{ width:95%; padding:0.5em; border-collapse:collapse; margin:1em auto 0.7em auto; } }
div.scroll-box table tr td	{ border: 1px solid #ddd; text-align:right; margin:0;  }

div.scroll-box table td	{ border: 1px solid #ddd; padding:0.2em 0.5em; }
div.scroll-box table tr td:nth-of-type(1)	{ width:10%; border-width:1px 1px 1px 0; }
div.scroll-box table tr td:nth-of-type(2) 	{ width:31%; border-width:1px 1px 1px 0; }
div.scroll-box table tr td:nth-of-type(3) 	{ border-width:1px 0 1px 0; }

div.scroll-box table tr.fst td	{ border-top:none!important; }
div.scroll-box table tr.lst td	{ border-bottom:none!important; }


/*お問い合わせ*/
#toiawase p 			{ vertical-align:middle; }
#toiawase p b			{ color:#E71873; }

#toiawase span.phone 		{ font-size:1.8rem!important; font-weight:bold; display:inline-block; margin-right:0.6em; }
@media screen and (min-width:479px) { /*PC用は「電話するボタン」非表示*/
#toiawase a.phone-btn		{ display:none; }}
@media screen and (max-width:479px) { /*スマホ用*/
#toiawase a.phone-btn		{ border:1px solid #ddd; padding:0.3em 0.8em; font-size:0.85rem; background:linear-gradient( 180deg, #fff, #ddd); border-radius:0.3em; text-align:center; 
				display:inline-block; margin:0 0 8px 0; color:#000!important; text-decoration:none; }}
#toiawase a.phone-btn:hover  	{ color:#000!important; font-weight:bold; text-decoration:none; }
#toiawase a.phone-btn:visited 	{ color:#000!important; font-weight:bold; text-decoration:none; }

