@charset "utf-8";

@font-face{font-family:'icomoon';src: url('../fonts/icomoon.eot?oz5eac');src: url('../fonts/icomoon.eot?oz5eac#iefix') format('embedded-opentype'),url('../fonts/icomoon.ttf?oz5eac') format('truetype'),url('../fonts/icomoon.woff?oz5eac') format('woff'),url('../fonts/icomoon.svg?oz5eac#icomoon') format('svg');font-weight:normal;font-style:normal}

[class^="icon-"]:after, [class*=" icon-"]:after{font-family:'icomoon' !important;speak:none;font-style:normal;font-weight:normal;font-variant:normal;text-transform:none;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin-left:.5em;font-size:20px;vertical-align:middle}
.icon-movie:after{content:"\e900"}
.icon-mail:after{content:"\e90d"}
.icon-tel:after{content:"\e90e"}
.icon-blank:after{content:"\e80f"}
.icon-pdf:after{content:"\e812"}
.icon-img:after{content:"\e813"}
.icon-text:after{content:"\e814"}
.icon-excel:after{content:"\e815"}
.icon-word:after{content:"\e916"}
.icon-access1:after{content:"\e918"}
.icon-arrow-l:after{content:"\e90a";font-size:14px}
.icon-arrow-r:after{content:"\e90b";font-size:14px}
.icon-arrow-b:after{content:"\e909";font-size:14px}
.icon-arrow-t:after{content:"\e90c";font-size:14px}

.bayside-blue *{box-sizing:border-box;}
.bBlueBox h2{display:-ms-flexbox;display:-webkit-box;display:-webkit-flex;display:flex;-ms-flex-align:center;-webkit-box-align:center;-webkit-align-items:center;align-items:center;border-bottom:2px solid rgba(0,62,140,1);color:rgba(0,62,140,1);}
.bBlueBox h2:before{content:"";}
.bBlueBox h2:before {background:url(../img/ico_ttl-l.png) no-repeat 100% 0;}
.bBlueBox h3{position:relative; padding-left:16px; background: transparent;}
.bBlueBox h3:before{content:"";position:absolute;width:5px;top:0;left:0;height:100%;color:#FFF;background-image:linear-gradient(to bottom, #BEA4EF, #EFA5A4);}

.bBlueBox p{margin-bottom:1em;}
span.icon-arrow-r {padding: 0 0.5em; display: inline-block;}
a .icon-arrow-r:after{-webkit-transition:all .3s;-moz-transition:all .3s;transition:all .3s;}
a:hover .icon-arrow-r:after{margin-left:1em;}
.bBlueBox .colGroup {position:relative;display:-webkit-box;display:-ms-flexbox;display:-webkit-flex;display:flex;-ms-flex-wrap:wrap;-webkit-flex-wrap:wrap;flex-wrap:wrap;}
.bBlueBox [class^="col-"] {position:relative;min-height:1px;overflow:hidden;}
.bBlueBox .mb0{margin-bottom:0 !important}
.bBlueBox .mb5{margin-bottom:5px !important}
.bBlueBox .mb10{margin-bottom:10px !important}
.bBlueBox .mb1em{margin-bottom:1em !important}
.bBlueBox .mb2em{margin-bottom:2em !important}
.bBlueBox .mt0{margin-top:0 !important}
.bBlueBox .mt5{margin-top:5px !important}
.bBlueBox .mt10{margin-top:10px !important}
.bBlueBox .ml0{margin-left:0 !important}
.bBlueBox .ml5{margin-left:5px !important}
.bBlueBox .ml10{margin-left:10px !important}
.bBlueBox .mr0{margin-right:0 !important}
.bBlueBox .mr5{margin-right:5px !important}
.bBlueBox .mr10{margin-right:10px !important}
.bBlueBox .txtC{text-align:center}
.bBlueBox .fR{float:right}
.bBlueBox .fL{float:left}
.bBlueBox ol.maru {
  counter-reset: my-counter;
  list-style: none;
  padding: 0;
}
.bBlueBox ol.maru li {
  margin-bottom: 10px;
  padding-left: 30px;
  position: relative;
}
.bBlueBox ol.maru li:before {
  content: counter(my-counter);
  counter-increment: my-counter;
  background-color:rgba(0,62,140,1);
  color:#FFF;
  display: block;
  float: left;
  line-height: 22px;
  margin-left: -30px;
  text-align: center;
  height: 22px;
  width: 22px;
  border-radius: 50%;
}

#articleDetail ol,#articleDetail ol li {list-style: none; margin-left: 0;}
#articleDetail ul {margin-left: 0; margin-bottom: 0;}

/*____________________________________________________________base*/
.bBlueBox table td,.bBlueBox table th{
	padding:.5em;
}
.bBlueBox table td{
	border:1px #c9c9c9 solid;
	background:#FFF;
	vertical-align:top
}
.bBlueBox table th{
	border:1px #c9c9c9 solid;
	background:#f4f4f4;
	text-align:center;
}
.bBlueBox .btn{
	text-align:center;
	padding-bottom:1em;
}
.bBlueBox .btn a{
	display:inline-block;
	padding:1em 2em;
	margin:0 1em;
	background:rgba(0,62,140,1);
	border-radius:8px;
	min-width:300px;
	max-width:485px;
	-webkit-transition: all .5s ease;
	-moz-transition: all .5s ease;
	-o-transition: all .5s ease;
	color:#FFF !important;
	text-decoration:none !important;
}
.bBlueBox .btn a:hover {
	background:rgba(0,62,140,.8);
}
.bBlueBox .colGroup .btn a{
	width:100%;
	min-width:auto;
	margin:0
}
.bBlueBox .emphasis{font-size:120%; color:rgba(0,62,140,1); }
.bBlueBox .disc{padding-left:25px;list-style:disc;}
.bBlueBox .rootC{
	display:inline-block;
	background:#ed6c00;
	padding:1px .5em;
	margin:0 .3em;
	border-radius:100px;
	color:#FFF;
}
.bBlueBox .rootM{
	display:inline-block;
	background:#3071b9;
	padding:1px .5em;
	margin:0 .3em;
	border-radius:100px;
	color:#FFF;
}
.bBlueBox h3.rootC,.bBlueBox h3.rootM{
	display:block;
	padding:.5em 1em;
	margin:0 0 1.5em 0;
	border-radius:0;
	text-align:center;
}
.bBlueBox h3.rootC:before,.bBlueBox h3.rootM:before{
	display:none
}
.bBlueBox table{
	width:100%;
	margin-bottom:1em;
	border-spacing:0;
	border-collapse:collapse;
	border-bottom:1px #c9c9c9 solid;
}

/* 目次（2020.10.27 追加）
----------------------------------------------------------------- */
.bBlueBox .linkbox {
    width: 90%;
    margin: 0 auto;
    border: solid 1px rgba(0,62,140,1);
    padding: 1.0em 2.0em;
    background-color: rgba(0,62,140,0.1);
    border-radius: 8px;
}

.bBlueBox .linkbox h3 {
    text-align: center;
    font-size: 18px;
    letter-spacing: 0.25em;
    margin: 5px 0;
}
.bBlueBox .linkbox h3:before {
    background-image: none;
}

.bBlueBox .linkbox ul {
    margin-left: 10px!important;
}

.bBlueBox .linkbox a {
    color:#222 !important;
    text-decoration: none !important;
}

.bBlueBox .linkbox a:hover {
    color:#06F !important;
    text-decoration: underline !important;
}

/*____________________________________________________________マップ*/
.bBlueBox .route .colGroup{
  text-align:center
}
.bBlueBox .routeBus {
	position:relative;
	border: solid 1px #939393;
	border-radius:100px;
	overflow:hidden;
	padding:2px 10px;
  text-align:center;
}
.bBlueBox .routeTime{
	min-height:24px;
	padding-left:80px;
	background:url(../img/arrow-root.png) no-repeat 50% 100%;
	background-size:32px;
}
.bBlueBox .routeTime{
	min-height:24px;
	padding-left:80px;
	background:url(../img/arrow-root.png) no-repeat 50% 100%;
	background-size:32px;
}

/*
.bBlueBox .mapC,.bBlueBox .mapM{
	position:relative;
	border-right:11px solid #c9c9c9;
	text-align:center;
}
.bBlueBox .mapC:before,.bBlueBox .mapC:after,.bBlueBox .mapM:before,.bBlueBox .mapM:after{
	content:"";
	display:block;
	position:absolute;
	width:40px;
	height:32px;
	right:-11px;
}
.bBlueBox .mapC:before,.bBlueBox .mapM:before{
	top:-4px;
	background:url(../img/arrow-root_end2.png) no-repeat 100% 0;
}
.bBlueBox .mapC:after,.bBlueBox .mapM:after{
	bottom:-2px;
	background:url(../img/arrow-root_end1.png) no-repeat 50% 0;
}
.bBlueBox .mapBus .rootC,.bBlueBox .mapBus .rootM{
	position:absolute;
	left:0;top:0;bottom:0;
	min-width:4em;
	height:100%;
	margin:0;
	border-radius:0;
	padding:2px 0;
}


/*____________________________________________________________モデルコース*/
.bBlueBox .courseWrap{
	text-align:center;
	font-size: 14px;
}
.bBlueBox .course{
	position:relative;
}
.bBlueBox .couSpot {
	position: relative;
	background-color: #fff;
	border: solid 1px #939393;
	border-radius:8px;
	font-weight:bold;
}
.bBlueBox .couSpot:before,
.bBlueBox .couSpot:after {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.bBlueBox .couSpot:before {
	border: solid 12px transparent;
	border-top: solid 12px #939393;
}
.bBlueBox .couSpot:after {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);	border: solid 14px transparent;
	border-top: solid 14px #fff;
	margin-top: -3px;
}
.bBlueBox .couSpot img{
	border-radius:8px 8px 0 0;
	margin-bottom:4px;
}
.bBlueBox .couSpot a{
	display:block;
	/*padding-bottom:8px;*/
	text-decoration:none !important;
	color:#222 !important
}
.bBlueBox .couSpot a:hover{
	color:rgba(34,34,34,.8) !important
}
.bBlueBox .couTime{
  min-height:2.8em;
  margin-bottom:2px;
  line-height:1.4
}
.bBlueBox #cou02.course .couTime{line-height:2.8}
.bBlueBox .couBus:before {content: "";display: block;}
/*____________________________________________________________運行ダイヤ*/
.bBlueBox .time{
  display:-webkit-box;display:-ms-flexbox;display:flex;
  -ms-flex-wrap:wrap;flex-wrap:wrap;
  -webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;
  margin:0 auto 1em;
}
/* .bBlueBox .time dt{
	width:5em;
} */

/*____________________________________________________________バス乗り場*/
/*____________________________________________________________運賃*/
/*____________________________________________________________乗り方*/
.bBlueBox .photo{
	margin-bottom:1em;
	position:relative;
}
.bBlueBox .photo .caption{
  position:absolute;
	top:10px;
	left:25px;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background-color: #FFF;
	box-shadow:0 1px 10px rgba(0,0,0,.3);
  line-height: 80px;
  text-align: center;
	font-weight:bold;
}
.bBlueBox .photo .caption:before{
  content: '';
  position: absolute;
  display: block;
  width: 0;
  height: 0;
  right: 2px;
  bottom: 2px;
  border-left: 20px solid #FFF;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  transform: rotate(45deg);
}

/*____________________________________________________________お得な乗車券*/
.bBlueBox .app .col-sp12.col-pc6{
  display:-webkit-box;display:-ms-flexbox;display:flex;
  /* -ms-flex-wrap:wrap;flex-wrap:wrap; */
  -webkit-box-align:center;-ms-flex-align:center;align-items:center;
}
.bBlueBox .ticketImg{
  padding-bottom:10px;
	text-align:center
}
.bBlueBox .ticketImg img{
	box-shadow:0 1px 10px rgba(0,0,0,.3);
}

/*____________________________________________________________ひみつ*/
.bBlueBox.secret{
	background:url(../img/bg_note.jpg) repeat-x #fffaf5;
	padding:52px;
	border-left:1px solid #6b5d5c;
	border-right:1px solid #6b5d5c;
	border-bottom:1px solid #6b5d5c
}
.bBlueBox.secret .colGroup{
	margin-top:2em;
}
.bBlueBox.secret h2{
	-ms-flex-pack:center;-webkit-box-pack:center;-webkit-justify-content:center;justify-content:center;
	border:none;
	color:#6b5d5c;
}
.bBlueBox.secret h2:before,.bBlueBox.secret h2:after{
	content:"";
	display:block;
	width:12px;height:54px;
}
.bBlueBox.secret h2:before {
	margin-right:2rem;
	background:url(../img/ico_secret-l.png) no-repeat 100% 0;
}
.bBlueBox.secret h2:after {
	margin-left:2rem;
	background:url(../img/ico_secret-r.png) no-repeat 0 0;
}
.bBlueBox.secret h2 span:before,.bBlueBox.secret h2 span:after{
	content:"";
	display:block;
	height:1px;
	border-top:1px dotted #6b5d5c;
	border-bottom:1px dotted #6b5d5c;
}
.bBlueBox.secret h2 span:before{
	margin-bottom:10px
}
.bBlueBox.secret h2 span:after{
	margin-top:10px
}
.bBlueBox.secret .colGroup{
	-ms-flex-align:center;-webkit-box-align:center;-webkit-align-items:center;align-items:center;
}
.bBlueBox.secret .bBlueTxt p{
  background: url(../img/bg_line.png) repeat bottom left;
  font-size: 14px;
  line-height: 30px;
  margin:0;
}
.bBlueBox.secret .bBlueTxt h3{
	position:  relative;
	border-bottom:2px solid #6b5d5c;
	padding:0 0 5px 0;
	margin-bottom: 15px;
	color:#6b5d5c;
}
.bBlueBox.secret .bBlueTxt h3:before{
	display:none
}
.bBlueBox.secret .bBlueTxt h3:after {
	content:'';
	width: 100%;
	height: 1px;
	background-color: #6b5d5c;
	display:  block;
	position:  absolute;
	left:  0;
	bottom: -5px;
}
.bBlueBox.secret .bBlueImg{
	position:relative;
  padding-bottom:10px;
}
.bBlueBox.secret .bBlueImg img{
	border:6px solid #FFF;
	box-shadow:0 1px 10px rgba(0,0,0,.3);
	margin-top:10px;
}
.bBlueBox.secret .bBlueImg:before{
	position:absolute;
	top:0;
	left:0;right:0;
	text-align:center;
	opacity:.8
}
.bBlueBox.secret .secret1 .bBlueImg:before{
	content:url(../img/tape03.png);
}
.bBlueBox.secret .secret2 .bBlueImg:before{
	content:url(../img/tape02.png);
}
.bBlueBox.secret .secret3 .bBlueImg:before{
	content:url(../img/tape01.png);
}
/*____________________________________________________________お問い合わせ*/
.bBlueBox .wifi img{
	border:1px #c9c9c9 solid
}


/* アコーディオン部分のCSS（2020.10.26 追加）
----------------------------------------------------------------- */
.ac-container {
  position: relative;
  width: 100%;
  border-top: none;
  outline: 0;
  cursor: pointer
}

.ac-container .ac-menu {
    margin-bottom: 1.5em;
}

.ac-container .ac-title {
  display: block;
  position: relative;
  margin: 0;
  padding: 1em 1em 1em 2em;
  font-weight: normal;
  color: #fff;
  background: rgba(0,62,140,1);
  border-radius: 8px 8px 0 0;
  cursor: pointer;
}

.ac-container .ac-title:hover,
.ac-container .ac-title:active,
.ac-container .content-entry.open .ac-title {
  background-color: rgba(0,62,140,0.7);
  color: white;
}

.ac-container .ac-title:hover i:before,
.ac-container .ac-title:hover i:active,
.ac-container .content-entry.open i {
  color: white;
}

.ac-title{
  position: relative;
}

.ac-title:after {
  content: "";
  position: absolute;
  right: 25px;
  top: 38%;
  transition: all 0.2s ease-in-out;
  display: block;
  width: 8px;
  height: 8px;
  border-top: solid 2px #fff;
  border-right: solid 2px #fff;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.ac-title.open:after {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 45%;
}

.ac-content {
  display: none;
  padding-top: 1em;
}

.ac-container .btn a {
    width: 100%;
    /* max-width: 100%; */
    min-width: auto;
    margin: 0
}