@charset "UTF-8";


/* -------------------------------------
autumn
------------------------------------- */
body article {
	font-family:'FOT-筑紫A丸ゴシック Std D', TsukuARdGothicStd-D, 'Noto Sans Japanese', sans-serif;
}
.fntB {font-family:'FOT-筑紫A丸ゴシック Std B', TsukuARdGothicStd-B;}
.fntM {font-family:'FOT-筑紫A丸ゴシック Std M', TsukuARdGothicStd-M;}
.fntR {font-family:'FOT-筑紫A丸ゴシック Std R', TsukuARdGothicStd-R;}

/* -------------------------------------
langage
------------------------------------- */
#mainimg .langage {
	font-size:0;
	text-align:right;
	margin-bottom:30px;
	position:absolute;
	top:8px;
	right:20px;
	z-index:2;
}
#mainimg .langage li {
	display:inline-block;
	margin-right:10px;
}
#mainimg .langage li:last-child {
	margin-right:0;
}
#mainimg .langage li a {
	font-size:14px;
	color:#fff;
	text-align:center;
	display:block;
	width:120px;
	padding:5px 20px;
	border-radius: 6px;
	background-color: #ea5514;
	box-sizing: border-box;
	transition: color 0.3s, background-color 0.3s	
}
#mainimg .langage li:hover a {
	color:#333;
	background-color:#fff;
	opacity:1;
}
#mainimg .langage li.np a {
	color:#333;
	background-color:#fff;
}
#mainimg .langage li.np a:hover {
	opacity:1;
}



.wrap {
	width:1260px;
	margin:0 auto;
}
.wrap_s {
	width:100%;
	max-width:1040px;
	margin:0 auto;
	padding:0 20px;
	box-sizing:border-box;
}
.img {
	width:100%;
	height:auto;
	display:block;
}
.sptel {
	cursor:default;
	pointer-events:none;
}
.ttlbdr {
	font-size:0;
	text-align:center;
}
.ttlbdr span {
	color:#fe330a;
	line-height:1.2;
	display:inline-block;
	min-width:140px;
	padding:8px 25px 10px 25px;
	background-image:url(../imgs/autumn/ttl_bdr_left.svg), url(../imgs/autumn/ttl_bdr_right.svg);
	background-repeat:no-repeat, no-repeat;
	background-position:left center, right center;
	background-size:auto 100%, auto 100%;
	box-sizing:border-box;
}


#mainimg {
	position:relative;
	overflow:hidden;
}
#mainimg .wrap {
	position:absolute;
	top:40%;
	left:0;
	right:0;
	z-index:1;
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	transform:translateY(-50%);
}
#mainimg .wrap h1 {
	width:37.5%;
	margin:0 auto;
}
#mainimg p {
	width:11.9%;
	max-width:172px;
	min-width:95px;
	position:absolute;
	top:8%;
	right:10%;
	z-index:1;
}
.announce {
	margin-bottom:120px;
}
.announce p {
	font-size:24px;
	color:#fe330a;
	line-height:1.4;
	text-align:center;
	padding:20px 0;
}
#routenavi {
	max-width:960px;
	margin:0 auto 60px auto;
	border-right:1px solid #e6e6e6;
	border-bottom:1px solid #e6e6e6;
	background-color:#fff;
	box-sizing:border-box;
	
}

#routenavi dl {
	width:100%;
	height:116px;
	display:table;
}
#routenavi dl dt, #routenavi dl dd {
	display:table-cell;
	vertical-align:middle;
	box-sizing:border-box;
}
#routenavi dl dt {
	font-size:18px;
	color:#fff;
	width:174px;
	padding:10px 10px 10px 35px;
	background-color:#fe330a;
	position:relative;
}
#routenavi dl dt:after {
	content:"";
	width:55px;
	height:100%;
	display:block;
	position:absolute;
	top:0;
	right:0px;
	z-index:1;
	border-top:116px solid transparent;
	border-right:55px solid #fff;
	box-sizing:border-box;
}
#routenavi dl dd {
	padding:20px 10px 20px 40px;
}
#routenavi dl dd li {
	padding-left:35px;
	margin-bottom:20px;
	background:url(../imgs/autumn/arrow_rgt.svg) no-repeat left center;
	background-size:21px 24px;
	box-sizing:border-box;
}
#routenavi dl dd li:last-child {
	margin-bottom:0px;
}
#routenavi dl dd li a {
	font-size:18px;
	color:#fe330a;
	display:inline-block;
	position:relative;
}
#routenavi dl dd li a:hover {
	opacity:1.0;
}
#routenavi dl dd li a:after {
	content:"";
	width:100%;
	height:1px;
	display:block;
	background-color:#fe330a;
	position:absolute;
	bottom:-1px;
	left:0;
	z-index:1;
	transition:opacity 0.3s;
	opacity:0;
}
#routenavi dl dd li a:hover:after {
	opacity:1.0;
}



#about {
	margin-bottom:135px;
	position:relative;
}
#about .wrap {
	height:100%;
	position:absolute;
	top:50%;
	left:0;
	right:0;
	z-index:2;
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	transform:translateY(-50%);
}
#about .wrap .text {
	width:44%;
	padding:85px 20px 85px 70px;
	border:1px solid #e6e6e6;
	background-color:#fff;
	box-sizing:border-box;
	position:absolute;
	top:50%;
	left:0;
	right:0;
	z-index:2;
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	transform:translateY(-50%);
}
#about .wrap .text h2 {
	font-size:24px;
	color:#fe330a;
	margin-bottom:20px;
}
#about .wrap .text p {
	font-size:16px;
	color:#fe330a;
}
#about .about_slider {
	width:59.7%;
	margin-left:40.3%;
}
#about .about_slider li {
	outline:none;
}
#about .slick-dots {
	font-size:0;
	width:214px;
	margin:0 auto;
	bottom:30px;
	left:0;
	right:0;
	z-index:10;
}
#about .slick-dots:after {
	content:"";
	width:100%;
	height:1px;
	display:block;
	background-color:#fff;
	position:absolute;
	top:8px;
	left:0;
	z-index:-1;
}
#about .slick-dots li {
	width:16px;
	height:16px;
	vertical-align:middle;
	margin:0 50px 0 0;
}
#about .slick-dots li:last-child {
	margin-right:0;
}
#about .slick-dots li button {
	width:16px;
	height:16px;
	padding:0;
}
#about .slick-dots li button::before {
	content:"";
	width:16px;
	height:16px;
	opacity:1.0;
	border-radius:50%;
	background-color:#fff;
	transition:background-color 0.3s, transform 0.3s; 
}
#about .slick-dots li button:hover::before, #about .slick-dots li.slick-active button::before {
	background-color:#5b57c4;
	-webkit-transform:scale(1.6);
    -moz-transform:scale(1.6);
    -o-transform:scale(1.6);
    -ms-transform:scale(1.6);
    transform:scale(1.6);
}



#route1 {
	margin-bottom:190px;
}
#route2 {
	margin-bottom:80px;
}
.route h2 {
	font-size:24px;
	color:#fe330a;
	margin-bottom:20px;
}
.route .service {
	font-size:0;
	text-align:center;
	margin-bottom:25px;
}
.route .service dt, .route .service  dd {
	display:inline-block;
	vertical-align:middle;
}
.route .service dt {
	font-size:14px;
	color:#fff;
	line-height:1.2;
	padding:6px 15px 8px 15px;
	margin-right:15px;
	background-color:#fe330a;
}
.route .service  dd {
	font-size:21px;
	color:#fe330a;
	line-height:1.4;
}
.route .map {
	margin-bottom:50px;
}
.route .map .frame {
	width:50%;
	height:100vh;
	float:left;
	background-color:#000;
	position:relative;
	overflow:hidden;
	z-index:3;
}
.route .map .frame iframe {
	width:100%;
	height:calc(100% + 46px);
	border:none;
	position:absolute;
	top:-46px;
	left:0;
	z-index:1;
}
.route .map .right {
	width:50%;
	min-height:100vh;
	float:right;
}
.route .schedule > li {
	border-bottom:1px solid #fff;
	background-color:#e6e6e6;
}
.route .schedule .time {
	padding:25px 38px;
	box-sizing:border-box;
	position:relative;
	cursor:pointer;
}
.route .schedule .time:after {
	content:"";
	width:100%;
	height:100%;
	display:block;
	background-color:#f6f6f6;
	position:absolute;
	top:0;
	left:-100%;
	z-index:1;
	transition:left 0.3s ease-out;
}
.route .schedule .time:hover:after {
	left:0;
}
.route .schedule .time.is_open:after {
	left:-100%;
}
.route .schedule .time.nohover {
	cursor:default;
}
.route .schedule .time.nohover:after {
	content:none;
}
.route .schedule .time dl {
	font-size:0;
	position:relative;
	z-index:2;
}
.route .schedule .time dt, .route .schedule .time dd {
	color:#fe330a;
	display:inline-block;
	vertical-align:middle;
	box-sizing:border-box;
}
.route .schedule .time dt {
	font-size:18px;
	font-family:'FOT-筑紫A丸ゴシック Std B', TsukuARdGothicStd-B;
	width:130px;
}
.route .schedule .time dd:nth-child(2) {
	width:72px;
}
.route .schedule .time dd:nth-child(3) {
	font-size:16px;
	width:calc(100% - 202px);
	padding-right:20px;
	padding-left:20px;
}
.route .schedule .expand {
	display:none;
	padding:0 38px 25px 38px;
	box-sizing:border-box;
}
.route .schedule .cat {
	font-size:0;
}
.route .schedule .cat li {
	font-size:12px;
	font-family:'FOT-筑紫A丸ゴシック Std R', TsukuARdGothicStd-R;
	color:#fff;
	text-align:center;
	line-height:1.0;
	width:32px;
	display:inline-block;
	vertical-align:middle;
	padding:10px 0 10px 0;
	margin-right:8px;
	border-radius:50%;
	box-sizing:border-box;
}
.route .schedule .cat li:last-child {
	margin-right:0;
}
.route .schedule .cat li.cat1 {
	background-color:#3285bb;
}
.route .schedule .cat li.cat2 {
	background-color:#f38d44;
}
.route .schedule .cat li.cat3 {
	background-color:#d45369;
}
.route .schedule .cat li.cat4 {
	background-color:#00a754;
}
.route .schedule table {
	width:100%;
	margin-bottom:30px;
}
.route .schedule table:last-child {
	margin-bottom:0px;
}
.route .schedule table td {
	font-size:14px;
	font-family:'FOT-筑紫A丸ゴシック Std M', TsukuARdGothicStd-M;
	color:#fe330a;
	padding:3px 0 3px 0;
	box-sizing:border-box;
}
.route .schedule table td:nth-child(1) {
	white-space:nowrap;
	width:10px;
	padding-right:30px;
}
.route .schedule .expand p.cap {
	font-size:16px;
	font-family:'FOT-筑紫A丸ゴシック Std D', TsukuARdGothicStd-D;
	color:#fe330a;
	line-height:1.4;
	margin-bottom:5px;
}
.route .schedule .expand p.cap:last-child {
	margin-bottom:0;
}
.route .schedule .expand ul {
	margin-bottom:10px;
}
.route .schedule .expand ul:last-child {
	margin-bottom:0px;
}
.route .schedule .expand li,.route .schedule .expand li a {
	font-size:14px;
	font-family:'FOT-筑紫A丸ゴシック Std M', TsukuARdGothicStd-M;
	color:#fe330a;
	margin-bottom:5px;
}
.route .schedule .expand li:last-child {
	margin-bottom:0;
}
.route .schedule .expand li a {
	text-decoration:underline;
}
.route .schedule .detail p {
	font-size:14px;
	font-family:'FOT-筑紫A丸ゴシック Std M', TsukuARdGothicStd-M;
	margin-bottom:10px;
}
.route .schedule .detail p .img {
	margin-bottom:10px;
}
.route .schedule .detail a {
	font-size:14px;
	font-family:'FOT-筑紫A丸ゴシック Std B', TsukuARdGothicStd-B;
	color:#fff;
	text-align:center;
	line-height:1.2;
	width:130px;
	display:block;
	padding:6px 5px 8px 5px;
	margin:0 auto;
	border-radius:25px;
	background-color:#ffae31;
}


.route .schedule .time .oc {
	display:inline-block;
	transition:all .4s;
	box-sizing:border-box;
	width:12px;
	height:12px;
	padding:0;
	box-sizing:border-box;
	position:absolute;
	top:50%;
	right:38px;
	z-index:50;
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	transform:translateY(-50%);
}
.route .schedule .time .oc span {
	display:inline-block;
	transition:all .4s;
	box-sizing:border-box;
	width:12px;
	height:3px;
	margin:0 auto;
	background-color:#fe330a;
	position:absolute;
	left:0;
	right:0;
}
.route .schedule .time .oc span:nth-of-type(1) {
	top:4px;
}
.route .schedule .time .oc span:nth-of-type(2) {
	top:4px;
	-webkit-transform:translateY(0px) rotate(-90deg);
	transform:translateY(0px) rotate(-90deg);
}
.route .schedule .time .oc.active {
	opacity:1.0;
}
.route .schedule .time .oc.active span:nth-of-type(1) {
	-webkit-transform:translateY(0px) rotate(-180deg);
	transform:translateY(0px) rotate(-180deg);
}
.route .schedule .time .oc.active span:nth-of-type(2) {
	-webkit-transform:translateY(0px) rotate(180deg);
	transform:translateY(0px) rotate(180deg);
}


.route .price, .route .caps {
	width:50%;
	float:left;
}
.route .price h3, .route .caps h3 {
	font-size:18px;
	color:#fe330a;
	margin-bottom:35px;
}
.route .price p {
	margin:0 auto;
}
.route#route1 .price p {
	width:67.4%;
}
.route#route2 .price p {
	width:80.7%;
}
.route .caps ul {
	max-width:580px;
	margin:0 auto;
}
.route .caps ul li {
	font-size:14px;
	text-indent:-1em;
	line-height:2.2;
	padding-left:1em;
}
.route .caps ul li a {
	text-decoration:underline;
}
.reserves {
	width:100%;
	display:table;
	margin-top:60px;
	border-top:1px solid #b4babe;
	border-bottom:1px solid #b4babe;
}
.reserves .left, .reserves .right {
	width:50%;
	display:table-cell;
	padding:20px 20px;
	vertical-align:middle;
	box-sizing:border-box;
}
.reserves .left {
	font-size:0;
	text-align:center;
	background-color:#ffebe7;
}
.reserves .left .in {
	text-align:left;
	display:inline-block;
}
.reserves .left .in h3 {
	font-size:0px;
	margin-bottom:6px;
}
.reserves .left .in h3 span, .reserves .left .in h3 img {
	display:inline-block;
	vertical-align:middle;
}
.reserves .left .in h3 img {
	width:26px;
	height:auto;
	margin-right:10px;
	vertical-align:-13px;
}
.reserves .left .in h3 span {
	font-size:18px;
	color:#ff7449;
	width:calc(100% - 36px);
}
.reserves .left .in p {
	font-size:15px;
	line-height:1.4;
	margin-bottom:4px;
}
.reserves .left .in a {
	font-size:23px;
	color:#fe330a;
	line-height:1.2;
	display:inline-block;
}
.reserves .left .in a span {
	font-size:15px;
	display:inline-block;
	vertical-align:4px;
	margin-left:10px;
}
.reserves .right a {
	font-size:21px;
	color:#fff;
	text-align:center;
	letter-spacing:0.1em;
	line-height:1.2;
	max-width:480px;
	display:block;
	margin:0 auto;
	padding:25px 20px;
	border-radius:40px;
	background-color:#fe330a;
	position:relative;
}
.reserves .right a:hover {
	opacity:1.0;
}
.reserves .right a:after {
	content:"";
	width:100%;
	height:100%;
	display:block;
	border-radius:40px;f
	background-color:#ffb8aa;
	position:absolute;
	top:4px;
	left:0px;
	z-index:-1;
	transition:top 0.3s;
}
.reserves .right a:hover:after {
	top:0;
}
f



#period {
	margin-bottom:60px;
}
#period .ttlbdr {
	margin-bottom:20px;
}
#period .ttlbdr span {
	font-size:24px;
}
#period .ttlbdr span br {
	display:none;
}
#period dl {
	font-size:0;
	text-align:center;
	margin-bottom:25px;
}
#period dl dt, #period dl dd {
	font-size:18px;
	display:inline-block;
	vertical-align:middle;
}
#period dl dt:after {
	content:"：";
	display:inline-block;
}
#period dl dd br {
	display:none;
}
#period li {
	font-size:12px;
	text-indent:-1em;
	line-height:2.2;
	padding-left:1em;
}


#conditions {
	margin-bottom:60px;
}
#conditions .ttlbdr {
	margin-bottom:20px;
}
#conditions .ttlbdr span {
	font-size:20px;
}
#conditions p {
	font-size:12px;
	line-height:2.2;
}
#conditions li {
	font-size:12px;
	text-indent:-1em;
	line-height:2.2;
	padding-left:1em;
}

/*チラシリンク*/
/*.flierblk {
	text-align:center;
	padding-top:50px;
}
a.busflier {
	color: #fe330a;
	font-size:22px;
	font-weight:bold;
	display:inline-block;
	margin: 0 auto;
	padding:0 20px 3px 20px;
	border-bottom:2px solid #fe330a;
}*/

.linkblk {
	font-size:0;
	text-align:center;
	padding-top:50px;
	margin-bottom:70px;
}

.busflier_btn {
	font-size:16px;
	color:#fe330a;
	text-align:center;
	line-height:1.2;
	letter-spacing:0.2em;
	width:60%;
	max-width:600px;
	display:inline-block;
	padding:18px 10px;
	border:2px solid #fe330a;
	border-radius:40px;
	box-sizing:border-box;
	transition:color 0.3s, background-color 0.3s;
}
.busflier_btn span {
	padding-left:30px;
	position:relative;
}
.busflier_btn span br {
	display:none;
}
.busflier_btn span:before {
	content:"";
	display:block;
	background:url(../imgs/icon_pdf.svg) 0 0 no-repeat;
	background-size:contain;
	width:25px;
	height:30px;
	position:absolute;
	top:50%;
	left:0;
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	transform:translateY(-50%);
	z-index:2;
}

.busflier_btn:hover {
	color:#fff;
	background-color:#fe330a;
	opacity:1.0;
}
.busflier_btn:hover span:before {
	background:url(../imgs/icon_pdf_w.svg) 0 0 no-repeat;
}
.setplan {
	max-width:1260px;
}
.setplan h3 {
	font-size:23px;
	margin-bottom:20px;
	
}
.setplan li {
	margin-bottom: 20px;
	border: 1px solid #ccc;
}
.setplan li h4 {
	font-size:18px;
	font-weight:normal;
	color:#fe330a;
	line-height:1.4;
	padding:10px 23px;
	box-sizing: border-box;
	border-bottom:1px solid #ccc;
}
.setplan li .d_wrap {
	padding:15px 23px 20px;
}
.setplan li img {
	width:300px;
	height:auto;
	margin-right:30px;
	padding-top:10px;
	box-sizing: border-box;
}
.setplan li .detail {
	width:calc(100% - 330px);
}
.setplan li .detail p {
	margin-bottom:20px;
}
.setplan li dl {
	font-size:0;
	margin-bottom:20px;
}
.setplan li dt,.setplan li dd {
	display:inline-block;
	vertical-align:top;
}
.setplan li dt {
	font-size: 14px;
	text-align: center;
	width:100px;
	margin-right: 8px;
	margin-bottom:5px;
	padding: 3px 20px;
	box-sizing: border-box;
	border: 2px solid #ccc;
}
.setplan li dd {
	font-size:14px;
	width:calc(100% - 108px);
	padding-top:2px;
	line-height:1.8;
}
.setplan .btn {
	text-align: center;
	font-size: 16px;
	color: #fff;
	max-width: 198px;
	width: 100%;
	padding: 10px 20px;
	box-sizing: border-box;
	background-color: #fe330a;
	border-radius: 40px;
	box-shadow: 0 3px 0 #d36468;
	display: inline-block;
	position: relative;
	top: -3px;
}
@media screen and (max-width:1400px) {
	.busflier_btn {
		padding:17px 10px;
	}
}


@media screen and (max-width:1320px) {
	.wrap {
		width:100%;
		padding:0 20px;
		box-sizing:border-box;
	}
	
	
	.ttlbdr span {
		padding:8px 24px 10px 24px;
	}
	
	
	#routenavi {
		margin:0 auto 57px auto;
	}
	#routenavi dl {
		height:110px;
	}
	#routenavi dl dt {
		font-size:17px;
		width:170px;
		padding:10px 10px 10px 33px;
	}
	#routenavi dl dt:after {
		width:53px;
		border-top:110px solid transparent;
		border-right:53px solid #fff;
	}
	#routenavi dl dd {
		padding:19px 10px 19px 35px;
	}
	#routenavi dl dd li {
		margin-bottom:19px;
		padding-left:34px;
		background-size:20px 23px;
	}
	#routenavi dl dd li a {
		font-size:17px;
	}
	
	
	#about {
		margin-bottom:125px;
	}
	#about .wrap .text {
		padding:65px 20px 65px 50px;
		left:20px;
	}
	#about .wrap .text h2 {
		font-size:23px;
		margin-bottom:18px;
	}
	#about .wrap .text p {
		font-size:15px;
	}
	#about .slick-dots {
		width:195px;
		bottom:27px;
	}
	#about .slick-dots:after {
		top:7px;
	}
	#about .slick-dots li {
		width:15px;
		height:15px;
		margin:0 45px 0 0;
	}
	#about .slick-dots li button {
		width:15px;
		height:15px;
	}
	
	
	#route1 {
		margin-bottom:170px;
	}
	#route2 {
		margin-bottom:75px;
	}
	.route h2 {
		font-size:23px;
		margin-bottom:19px;
	}
	.route .service {
		margin-bottom:24px;
	}
	.route .service  dd {
		font-size:20px;
	}
	
	
	.route .schedule .time {
		padding:25px 34px;
	}
	.route .schedule .time dt {
		font-size:17px;
		width:128px;
	}
	.route .schedule .time dd:nth-child(3) {
		font-size:15px;
		width:calc(100% - 200px);
		padding-left:18px;
	}
	.route .schedule .time .oc {
		right:34px;
	}
	.route .schedule .expand {
		padding:0 34px 25px 34px;
	}
	.route .schedule table td:nth-child(1) {
		padding-right:26px;
	}
	
	
	.route .price h3, .route .caps h3 {
		font-size:17px;
		margin-bottom:33px;
	}
	.route .caps ul li {
		line-height:2.1;
	}
	.reserves {
		margin-top:57px;
	}
	.reserves .left .in h3 img {
		width:25px;
	}
	.reserves .left .in h3 span {
		font-size:17px;
		width:calc(100% - 35px);
	}
	.reserves .left .in a {
		font-size:22px;
	}
	.reserves .left .in a span {
		vertical-align:-3px;
	}
	.reserves .right a {
		font-size:20px;
		padding:24px 19px;
	}
	
	
	#period {
		margin-bottom:57px;
	}
	#period .ttlbdr {
		margin-bottom:19px;
	}
	#period .ttlbdr span {
		font-size:23px;
	}
	#period dl {
		margin-bottom:25px;
	}
	#period dl dt, #period dl dd {
		font-size:17px;
	}
	#period li {
		line-height:2.1;
	}
	
	#conditions .ttlbdr {
		margin-bottom:19px;
	}
	#conditions .ttlbdr span {
		font-size:19px;
	}
	#conditions p {
		line-height:2.1;
	}
	#conditions li {
		line-height:2.1;
	}
}
@media screen and (max-width:1180px) {
	.ttlbdr span {
		padding:8px 22px 10px 22px;
	}
	
	
	#routenavi {
		margin:0 auto 55px auto;
	}
	#routenavi dl {
		height:108px;
	}
	#routenavi dl dt {
		width:166px;
		padding:10px 10px 10px 31px;
	}
	#routenavi dl dt:after {
		width:52px;
		border-top:108px solid transparent;
		border-right:52px solid #fff;
	}
	#routenavi dl dd {
		padding:18px 10px 18px 30px;
	}
	#routenavi dl dd li {
		margin-bottom:18px;
		padding-left:33px;
		background-size:20px 23px;
	}
	
	
	#about {
		margin-bottom:115px;
	}
	#about .wrap .text {
		padding:45px 15px 45px 35px;
	}
	#about .wrap .text h2 {
		font-size:22px;
		margin-bottom:16px;
	}
	#about .slick-dots {
		width:176px;
		bottom:25px;
	}
	#about .slick-dots:after {
		top:7px;
	}
	#about .slick-dots li {
		width:14px;
		height:14px;
		margin:0 40px 0 0;
	}
	#about .slick-dots li button {
		width:14px;
		height:14px;
	}
	
	
	#route1 {
		margin-bottom:150px;
	}
	#route2 {
		margin-bottom:70px;
	}
	.route h2 {
		font-size:22px;
		margin-bottom:18px;
	}
	.route .service {
		margin-bottom:23px;
	}
	.route .service  dd {
		font-size:19px;
	}
	
	
	.route .schedule .time {
		padding:25px 30px;
	}
	.route .schedule .time .oc {
		right:30px;
	}
	.route .schedule .expand {
		padding:0 30px 25px 30px;
	}
	.route .schedule table td:nth-child(1) {
		padding-right:23px;
	}
	
	
	.route .price h3, .route .caps h3 {
		margin-bottom:31px;
	}
	.route .caps ul li {
		line-height:2.0;
	}
	.reserves {
		margin-top:54px;
	}
	.reserves .left .in a {
		font-size:21px;
	}
	.reserves .right a {
		font-size:19px;
		padding:23px 18px;
	}
	.reserves .left .in a span {
		vertical-align:-2px;
	}
	
	
	#period {
		margin-bottom:54px;
	}
	#period .ttlbdr {
		margin-bottom:18px;
	}
	#period .ttlbdr span {
		font-size:22px;
	}
	#period li {
		line-height:2.0;
	}
	
	#conditions .ttlbdr {
		margin-bottom:18px;
	}
	#conditions .ttlbdr span {
		font-size:18px;
	}
	#conditions p {
		line-height:2.0;
	}
	#conditions li {
		line-height:2.0;
	}

	.busflier_btn {
		padding:16px 10px;
	}
	.setplan h3 {
		font-size:22px;
	}
	.setplan li h4 {
		font-size:17px;
	}



}
@media screen and (max-width:1100px) {
	#about .wrap .text {
		padding-right:35px;
	}
	#about .wrap .text p .brnone {
		display:none;
	}
	
	
	.reserves {
		display:block;
	}
	.reserves .left, .reserves .right {
		width:100%;
		display:block;
	}
	.reserves .left {
		border-bottom:1px solid #b4babe;
	}
	.reserves .left .in {
		text-align:center;
	}
	.reserves .left .in h3 span {
		width:auto;
	}
}
@media screen and (max-width:1020px) {
	#routenavi {
		margin:0 20px 55px 20px;
	}
}
@media screen and (max-width:980px) {
	.ttlbdr span {
		padding:8px 20px 10px 20px;
	}
	
	.announce p {
		font-size:20px;
	}
	#routenavi {
		margin:0 20px 53px 20px;
	}
	#routenavi dl {
		height:105px;
	}
	#routenavi dl dt {
		font-size:16px;
		width:162px;
		padding:10px 10px 10px 28px;
	}
	#routenavi dl dt:after {
		width:50px;
		border-top:105px solid transparent;
		border-right:50px solid #fff;
	}
	#routenavi dl dd {
		padding:17px 10px 17px 25px;
	}
	#routenavi dl dd li {
		margin-bottom:17px;
		padding-left:32px;
		background-size:19px 22px;
	}
	#routenavi dl dd li a {
		font-size:16px;
	}
	
	
	#about {
		margin-bottom:100px;
	}
	#about .wrap .text {
		padding:30px 25px 30px 25px;
	}
	#about .wrap .text h2 {
		font-size:21px;
		margin-bottom:14px;
	}
	#about .wrap .text p {
		font-size:14px;
	}
	#about .slick-dots {
		width:157px;
		bottom:23px;
	}
	#about .slick-dots:after {
		top:7px;
	}
	#about .slick-dots li {
		width:13px;
		height:13px;
		margin:0 35px 0 0;
	}
	#about .slick-dots li button {
		width:13px;
		height:13px;
	}
	
	
	#route1 {
		margin-bottom:125px;
	}
	#route2 {
		margin-bottom:65px;
	}
	.route h2 {
		font-size:21px;
		margin-bottom:17px;
	}
	.route .service {
		margin-bottom:22px;
	}
	.route .service  dd {
		font-size:18px;
	}
	
	
	.route .schedule .time {
		padding:25px 26px;
	}
	.route .schedule .time dt {
		font-size:16px;
		width:125px;
	}
	.route .schedule .time dd:nth-child(3) {
		font-size:14px;
		width:calc(100% - 197px);
		padding-left:15px;
	}
	.route .schedule .time .oc {
		right:26px;
	}
	.route .schedule .expand {
		padding:0 26px 25px 26px;
	}
	.route .schedule table td:nth-child(1) {
		padding-right:20px;
	}
	.route .schedule .expand p.cap {
		font-size:15px;
	}
	
	
	.route .price h3, .route .caps h3 {
		font-size:16px;
		margin-bottom:29px;
	}
	.route .caps ul li {
		line-height:1.9;
	}
	.reserves {
		margin-top:51px;
	}
	.reserves .left .in h3 img {
		width:24px;
		vertical-align:-12px;
	}
	.reserves .left .in h3 span {
		font-size:16px;
	}
	.reserves .left .in p {
		font-size:14px;
	}
	.reserves .left .in a {
		font-size:20px;
	}
	.reserves .left .in a span {
		font-size:14px;
	}
	.reserves .right a {
		font-size:18px;
		padding:22px 17px;
	}
	
	
	#period {
		margin-bottom:51px;
	}
	#period .ttlbdr {
		margin-bottom:17px;
	}
	#period .ttlbdr span {
		font-size:21px;
	}
	#period dl dt, #period dl dd {
		font-size:16px;
	}
	#period li {
		line-height:1.9;
	}
	
	#conditions .ttlbdr {
		margin-bottom:17px;
	}
	#conditions .ttlbdr span {
		font-size:17px;
	}
	#conditions p {
		line-height:1.9;
	}
	#conditions li {
		line-height:1.9;
	}
	
	/*チラシリンク*/
	/*a.busflier {
		font-size:20px;
	}*/
	.busflier_btn {
		font-size:15px;
		padding:15px 10px;
	}
	.setplan h3 {
		font-size:21px;
	}
	.setplan li h4 {
		font-size:16px;
	}
	
}
@media screen and (max-width:880px) {
	#mainimg .mainslide .img {
		width:863px;
		position:relative;
		left:50%;
		-webkit-transform:translateX(-50%);
		-ms-transform:translateX(-50%);
		transform:translateX(-50%);
	}
	#mainimg .wrap {
		top:43%;
	}
	
	
	.route .schedule .time {
		padding:18px 26px 23px 26px;
	}
	.route .schedule .time dd:nth-child(3) {
		width:calc(100% - 0px);
		display:block;
		padding-left:0px;
		margin-top:8px;
	}
	
	
	.route#route1 .price p {
		width:82.4%;
		padding:0 20px;
		box-sizing:border-box;
	}
	.route#route2 .price p {
		width:95.7%;
		padding:0 20px;
		box-sizing:border-box;
	}
	.setplan li img {
		width:38%;
	}
	.setplan li .detail {
		width:calc(62% - 30px);
	}
}
@media screen and (max-width:768px) {
	.sptel {
		cursor:pointer;
		pointer-events:auto;
	}
	
	
	#mainimg p {
		width:95px;
		min-width:initial;
		min-width:auto;
		right:5%;
	}
	
	
	.ttlbdr span {
		padding:8px 18px 10px 18px;
	}
	.announce p {
		font-size:14px;
	}	
	#routenavi dl {
		height:100px;
	}
	#routenavi dl dt {
		font-size:15px;
		width:158px;
		padding:10px 10px 10px 25px;
	}
	#routenavi dl dt:after {
		width:48px;
		border-top:100px solid transparent;
		border-right:48px solid #fff;
	}
	#routenavi dl dd {
		padding:16px 10px 16px 20px;
	}
	#routenavi dl dd li {
		margin-bottom:16px;
		padding-left:31px;
		background-size:18px 21px;
	}
	#routenavi dl dd li a {
		font-size:15px;
	}
	
	
	#about {
		margin-bottom:80px;
	}
	#about .wrap {
		margin-bottom:20px;
		position:static;
		-webkit-transform:translateY(0%);
		-ms-transform:translateY(0%);
		transform:translateY(0%);
	}
	#about .wrap .text {
		width:100%;
		padding:20px 20px 20px 20px;
		position:static;
		-webkit-transform:translateY(0%);
		-ms-transform:translateY(0%);
		transform:translateY(0%);
	}
	#about .wrap .text h2 {
		font-size:20px;
		text-align:center;
		margin-bottom:12px;
	}
	#about .wrap .text p {
		font-size:13px;
	}
	#about .about_slider {
		width:100%;
		margin:0;
		padding:0 20px;
	}
	#about .slick-dots {
		width:138px;
		bottom:20px;
	}
	#about .slick-dots li {
		width:12px;
		height:12px;
		margin:0 30px 0 0;
	}
	#about .slick-dots li button {
		width:12px;
		height:12px;
	}
	
	
	#route1 {
		margin-bottom:100px;
	}
	#route2 {
		margin-bottom:60px;
	}
	.route h2 {
		font-size:20px;
		margin-bottom:16px;
	}
	.route .service {
		margin-bottom:21px;
	}
	.route .service dt {
		font-size:13px;
		padding:6px 13px 8px 13px;
		margin-right:10px;
	}
	.route .service  dd {
		font-size:17px;
	}
	
	
	.route .schedule .time {
		padding:18px 22px 23px 22px;
	}
	.route .schedule .time .oc {
		right:22px;
	}
	.route .schedule .expand {
		padding:0 22px 25px 22px;
	}
	.route .schedule table td:nth-child(1) {
		padding-right:17px;
	}
	
	
	.route .schedule .time dt {
		font-size:15px;
		width:120px;
	}
	.route .schedule .time dd {
		font-size:13px;
		width:calc(100% - 120px);
	}
	.route .schedule .detail p {
		font-size:13px;
	}
	.route .schedule table td {
		font-size:13px;
	}
	.route .schedule .expand li {
		font-size:13px;
	}
	.route .schedule .expand p.cap {
		font-size:14px;
	}
	
	
	.route .price h3, .route .caps h3 {
		font-size:15px;
		margin-bottom:27px;
	}
	.route .caps ul li {
		font-size:13px;
		line-height:1.8;
	}
	.reserves {
		margin-top:48px;
	}
	.reserves .left .in h3 img {
		width:23px;
		vertical-align:-11px;
	}
	.reserves .left .in h3 span {
		font-size:15px;
	}
	.reserves .left .in p {
		font-size:13px;
	}
	.reserves .left .in a {
		font-size:19px;
	}
	.reserves .left .in a span {
		font-size:13px;
	}
	.reserves .right a {
		font-size:17px;
		padding:21px 16px;
	}
	
	
	#period {
		margin-bottom:48px;
	}
	#period .ttlbdr {
		margin-bottom:16px;
	}
	#period .ttlbdr span {
		font-size:20px;
	}
	#period dl dt, #period dl dd {
		font-size:15px;
	}
	#period li {
		line-height:1.8;
	}
	
	#conditions .ttlbdr {
		margin-bottom:16px;
	}
	#conditions .ttlbdr span {
		font-size:16px;
	}
	#conditions p {
		line-height:1.8;
	}
	#conditions li {
		line-height:1.8;
	}
	
	/*チラシリンク*/
	/*a.busflier {
		font-size:18px;
	}*/
	.linkblk {
		margin-bottom:50px;
	}
	.busflier_btn {
		font-size:14px;
		letter-spacing:0;
		width:100%;
		max-width:400px;
		padding:14px 10px;
	}
	.setplan h3 {
		font-size:20px;
	}
	.setplan li h4 {
		font-size:15px;
	}
	.setplan li .d_wrap {
		text-align:center;
		padding:23px;
	}
	.setplan li img {
		width:100%;
		max-width:550px;
		margin:0 0 20px;
		padding:0;
		float:none;
	}
	.setplan li .detail {
		width:100%;
		float:none;
	}
	.setplan li .detail p,.setplan li dd {
		font-size:14px;
		text-align:left;
	}
	.setplan .btn {
		font-size:15px;
		margin:0 auto;
	}
}
@media screen and (max-width:640px) {
	#mainimg {
		margin-bottom:20px;
	}
	/* -------------------------------------
	langage
	------------------------------------- */
	#mainimg .langage li a {
		font-size:13px;
		width:100px;
		padding:5px 15px;
	}	

	#mainimg .wrap {
		top:50%;
	}
	#mainimg .wrap h1 {
		width:50%;
	}
	#mainimg .wrap h1 .img {
		width:100%;
	}
	#mainimg .mainslide .img {
		width:800px;
	}
	
	
	#mainimg p {
		top:40px;
		right:30px;
	}
	#mainimg p .img {
		width:100%;
		left:0;
		-webkit-transform:translateX(0%);
		-ms-transform:translateX(0%);
		transform:translateX(0%);
	}
	
	
	.ttlbdr span {
		padding:8px 17px 10px 17px;
	}
	
	.announce p {
		padding-top:0;
	}
	#routenavi{
		margin-bottom:30px;
		border:1px solid #e6e6e6;
		top:0;
	}
	#routenavi dl {
		height:auto;
		display:block;
	}
	#routenavi dl dt, #routenavi dl dd {
		display:block;
	}
	#routenavi dl dt {
		font-size:14px;
		text-align:center;
		width:100%;
		padding:10px;
	}
	#routenavi dl dt:after {
		content:none;
	}
	#routenavi dl dd {
		padding:15px 15px 15px 15px;
	}
	#routenavi dl dd li {
		margin-bottom:14px;
		padding-left:30px;
		background-size:17px 20px;
	}
	#routenavi dl dd li a {
		font-size:14px;
	}
	
	
	#about {
		margin-bottom:70px;
	}
	#about .wrap .text h2 {
		font-size:19px;
		margin-bottom:10px;
	}
	#about .slick-dots {
		width:119px;
	}
	#about .slick-dots li {
		width:11px;
		height:11px;
		margin:0 25px 0 0;
	}
	#about .slick-dots li button {
		width:11px;
		height:11px;
	}
	
	
	#route1 {
		margin-bottom:80px;
	}
	#route2 {
		margin-bottom:55px;
	}
	.route h2 {
		font-size:19px;
		margin-bottom:15px;
	}
	.route .service {
		margin-bottom:20px;
	}
	
	
	.route .map .frame {
		width:100%;
		height:auto;
		float:none;
		padding-top:74%;
		box-sizing:border-box;
	}
	.route .map .right {
		width:100%;
		min-height:initial;
		min-height:auto;
		float:none;
		background-color:#e6e6e6;
		position:relative;
		z-index:2;
	}
	.route .schedule .time {
		padding:18px 20px 20px 20px;
	}
	.route .schedule table td:nth-child(1) {
		padding-right:15px;
	}
	
	
	.route .price, .route .caps {
		width:100%;
		float:none;
	}
	.route .price {
		margin-bottom:45px;
	}
	.route .price h3, .route .caps h3 {
		margin-bottom:25px;
	}
	.reserves {
		margin-top:45px;
	}
	.reserves .right a {
		font-size:16px;
		padding:20px 15px;
	}
	.reserves .left .in a span {
		display:block;
		margin-left:0;
		margin-top:5px;
	}
	
	
	#period {
		margin-bottom:45px;
	}
	#period .ttlbdr {
		margin-bottom:15px;
	}
	#period .ttlbdr span {
		font-size:19px;
	}
	#period dl dt, #period dl dd {
		font-size:14px;
	}
	
	#conditions .ttlbdr {
		margin-bottom:15px;
	}
	#conditions .ttlbdr span {
		font-size:15px;
	}

	/*チラシリンク*/
	/*a.busflier {
		font-size:16px;
	}*/
	.busflier_btn {
		padding:13px 10px;
	}
	.busflier_btn spa br {
		display:block;
	}
	.busflier_btn span:before {
		width:20px;
		height:25px;
	}
}
@media screen and (max-width:480px) {
	#mainimg .wrap h1 {
		width:65%;
	}
	#mainimg .mainslide .img {
		width:700px;
	}
	#mainimg p {
		top:30px;
		right:10px;
	}
	
	
	.ttlbdr span {
		padding:8px 15px 10px 15px;
	}
	
	.announce p {
		font-size:13px;
	}
	#about {
		margin-bottom:60px;
	}
	#about .wrap .text h2 {
		font-size:18px;
	}
	
	
	#route1 {
		margin-bottom:70px;
	}
	.route h2 {
		font-size:18px;
	}
	.route .service  dd {
		font-size:16px;
	}
	
	.route .schedule .time {
		padding:16px 20px 21px 20px;
	}
	.route .price h3, .route .caps h3 {
		font-size:14px;
		margin-bottom:20px;
	}
	.route#route1 .price p {
		width:86.7%;
		padding:0;
	}
	.route#route2 .price p {
		width:100%;
		padding:0;
	}
	.reserves .left .in a {
		font-size:18px;
	}
	.reserves .right a {
		font-size:15px;
	}
	
	
	#period .ttlbdr span {
		font-size:18px;
	}
	#period .ttlbdr span br {
		display:block;
	}
	#period dl dt, #period dl dd {
		display:block;
	}
	#period dl dt {
		margin-bottom:5px;
	}
	#period dl dt:after {
		content:none;
	}
	#period dl dd br {
		display:block;
	}

	/*チラシリンク*/
	/*a.busflier {
		font-size:14px;
	}*/
	.busflier_btn {
		padding:12px 10px;
	}
	.setplan li h4 {
		padding:10px 15px;
	}
	.setplan li .d_wrap {
		padding:20px 20px 20px;
	}
	.setplan li p {
		font-size:13px;
	}
	.setplan li dt,.setplan li dd {
		font-size:13px;
		display:block;
	}
	.setplan li dd {
		width:100%;
		margin-bottom:10px;
		line-height:1.4;
	}
    .setplan .btn {
	    font-size:14px;
    }
	    
}
@media screen and (max-width:400px) {
	#about .wrap .text h2 {
		font-size:17px;
	}
	
	
	#route1 {
		margin-bottom:60px;
	}
}
@media screen and (max-width:320px) {
	
}
@media screen and (min-width:769px) {
	
}