@charset "UTF-8";

.area_map .g_map{width:100%;-webkit-box-sizing: border-box;box-sizing: border-box;overflow: hidden;}
.area_map .g_map iframe{width:100%;height: 100%;}

.area_access .wrapper > div{margin-right: auto;margin-left: auto;}
.area_access h3{color: #379d5a;font-weight: 500;border-bottom: 1px solid #a5d3b5;}
	.car_route h3{background-image: url(../img/icon_car.svg);background-repeat:  no-repeat;}
	.train_route h3{background-image: url(../img/icon_train.svg);background-repeat:  no-repeat;}
	.bike_route h3{background-image: url(../img/icon_bike.svg);background-repeat:  no-repeat;}

.area_access figure.map{text-align: center;position: relative;}

.car_route p.image{text-align: center;margin-right:auto;margin-left:auto;max-width:690px;}
.car_route .boxes .box h4{display: flex;justify-content: center;align-items: center;color: #379d5a;font-weight: 500;border: 1px solid #a5d3b5;-webkit-border-radius: 0 8px 0 8px;border-radius: 0 8px 0 8px;box-shadow: 4px 4px #a5d3b5;width: calc(100% - 4px);}
.car_route .boxes .box .chart figure:nth-child(2){border: 9px solid #322d2b;margin: 20px 0;}
.car_route .boxes .box span.num{font-size: 1.25rem;font-family: "Montserrat", sans-serif;}
.car_route .boxes .box span.note{display: block;font-size: 0.75rem;}
.car_route .boxes .box span.note.red{color:#ff0000;font-size: 0.9375rem;}
.car_route .boxes .box p.text{font-size: 0.875rem;line-height: 1.7;}
.car_route .boxes .box p.text span.tab{display:block;padding-left:20px;}
.car_route .boxes .box span.t_ttl{display: block;color: #379d5a;}
.car_route .boxes .box .in_contact{max-width:520px;margin:20px auto 0;}
.car_route .boxes .box .in_contact h5{background: #379d5a;color: #fff;border-bottom: none;height: 34px;line-height: 34px;font-size: 0.875rem;text-align: center;margin-bottom: 0;padding-left: 0;}
.car_route .boxes .box .in_contact p{text-align: center;background: #f2f2f2;font-size: 0.875rem;font-weight: 500;padding: 12px 10px;line-height: 1.286;}
.car_route .boxes .box .in_contact p span.tel{color: #ff0000;}
.car_route .boxes .box .in_contact p span.worn{font-size: 0.75rem;margin:10px 0;display:block;}
.car_route .boxes .box:last-of-type p{font-size: 0.875rem;}

.car_route table.list_service{max-width: 690px;margin: 0 auto;width: 100%;border-top: 1px solid #cdcdcd;border-left: 1px solid #cdcdcd;margin-bottom: 40px;}
.car_route table.list_service th,.car_route table.list_service td{border-right: 1px solid #cdcdcd;border-bottom: 1px solid #cdcdcd;padding: 10px;}
.car_route table.list_service th{width: 40%;font-weight: bold;}
.car_route table.list_service td .qr_txt{font-size:0.875rem;display:block;margin:5px 0;}
.car_route table.list_service td .qr_txt a{text-decoration:underline;color:#379d5a;}
.car_route table.list_service td .qr_txt + img{width:92px;}

.station_access{border-top: 1px solid #a5d3b5;border-bottom: 1px solid #a5d3b5;position: relative;}
.station_access ul,
.station_access ul li{display: flex;align-items: center;}
.station_access ul{justify-content: center;}
.station_access h4{position: absolute;background: #fff;top: -13px;}
.station_access p{font-size: 0.75rem;}
.station_access .station{background: #379d5a;color: #fff; height: 24px;font-size: 0.6875rem;line-height: 24px;padding: 0 10px;border-radius: 100vh;}
.station_access .station span{font-size: 0.8125rem;}
.station_access .num{font-size: 1.5rem;font-family: "Montserrat", sans-serif;}

.bike_route .info_box{background: #f1f1f1;color: #4d4d4d;}
.bike_route .info_box ul,
.bike_route .info_box ul li{display: flex;align-items: center;}
.bike_route .info_box ul li{width: 50%;}
.bike_route .info_box p{background: #3d6f48;color: #fff;padding: 10px;text-align: center;max-width: 400px;margin: 0 auto 20px;}

.bike_route .map_box{font-size: 1.125rem;}
.bike_route .map_box ul{padding-top: 10px;background: #FFF;}
.bike_route .map_box li.east h4{background: #ff4b00;}
.bike_route .map_box li.west h4{background: #0073c1;}
.bike_route .map_box li h4{width: 100px;height: 25px;border-radius: 100vh;margin: 0 auto;text-align: center;color: #fff;font-size: 0.875rem;line-height: 25px;letter-spacing: 1rem;text-indent: 1rem;}
.bike_route .map_box li figure{text-align:center;}
.bike_route .map_box ul li p{font-weight: normal;}

.bike_route .contact h3{background: #379d5a;color: #fff;border-bottom: none;height: 34px;line-height: 34px;font-size: 0.875rem;text-align: center;margin-bottom: 0;padding-left: 0;}
.bike_route .contact p{text-align: center;background: #f2f2f2;font-size: 0.875rem;font-weight: 500;padding: 8px 10px;line-height: 1.286;}
.bike_route .contact p span{color: #ff0000;}

@media screen and (min-width:768px){

	.contents_access{padding-top: 60px;}
	.contents_access h2{margin-bottom: 50px;}
	.contents_access .wrapper{max-width: 910px;}
	
	.area_map{padding-bottom: 100px;}
	.area_map .address {background: url(../img/icon_map.svg) no-repeat 7px 2px;padding-left: 60px;background-size: 44px 37px;font-size: 1.125rem;line-height: 1.2;max-width: 845px;margin: 0 auto 40px;}
	.area_map .g_map{height: 380px;max-width: 845px;margin: 0 auto;}

	.area_access .wrapper{padding-bottom: 63px;}
	.area_access .wrapper > div{max-width: 810px;}
	
	.area_access h3{height: 45px;line-height: 45px;font-size: 1.125rem;}
		.car_route h3{padding-left: 65px;background-size: 31px auto;background-position: 18px center;}
		.train_route h3{padding-left: 66px;background-size: 28px auto;background-position: 23px center;margin-bottom: 50px;}
		.bike_route h3{padding-left: 68px;background-size: 34px auto;background-position: 22px center;margin-bottom: 27px;}

	.car_route p.image{margin-top: 35px;}
	.car_route .boxes{max-width: 690px;margin: 20px auto 0;}
	.car_route .boxes > .box{margin-bottom: 30px;}
	/**
	.car_route .boxes > .box:nth-of-type(1),
	.car_route .boxes > .box:nth-of-type(2){display: flex;align-items: center;}
	**/
	.car_route .boxes > .box h4{height: 42px;width: 210px;letter-spacing: 0.1rem;margin: 0 4px;}
	.car_route .boxes > .box:first-of-type h4{width: 168px;}
	.car_route .boxes > .box:first-of-type p{padding-left: 60px;font-size: 0.8125rem;}
	.car_route .boxes > .box:nth-of-type(2) p{padding-left: 27px;font-size: 0.8125rem;}
	.car_route .boxes > .box:last-of-type h4{width: 266px;margin-bottom: 34px;}
	.car_route .boxes > .box:last-of-type p{max-width: 415px;margin: 20px auto 0;}

	.car_route .boxes .box .chart{text-align: center;margin:0 auto;}
	.car_route .boxes .box span.floor{font-size: 18px;display: inline-block;margin-left: -10px;}
	.car_route .boxes .box p.text{padding-top: 33px;}

	.car_route .boxes .in_contact .box{display: block;}
    .car_route .boxes .in_contact .box:first-of-type{padding-bottom: 20px;}

	.station_access{max-width: 440px;margin: 60px auto;padding: 20px 0;}
	.station_access ul li p.time{font-size: 0.75rem;padding: 0 8px;}
	
	.bike_route .info_box{font-size: 0.9375rem;padding: 18px 20px;text-align: center;line-height: 1.6;font-weight: 500;padding: 20px 0;}
	.bike_route .map_box h4{margin-bottom: 45px;}
	.bike_route .map_box{justify-content: center;flex-direction: row-reverse;margin-top: 37px;margin-bottom: 33px;}
	.bike_route .map_box li.east{margin-bottom: 40px;}
	.bike_route .map_box li.west img{max-width: 75%;}


	.bike_route .contact .box{max-width: 420px;margin: 0 auto;}
}


@media screen and (max-width:767px) { 

	.contents_access{padding-top: 30px;}
	.contents_access section .wrapper{padding-left: 20px;padding-right: 20px;padding-bottom: 40px;}

	.area_map .address{background: url(../img/icon_map.svg) no-repeat 0px 0px;padding-left: 50px;background-size: 38px 33px;font-size: 1rem;line-height: 1.2;margin: 20px auto;}
	.area_map .g_map{position: relative;padding-top: 40%;height: 0;}
	.area_map .g_map iframe{position: absolute;top: 0;left: 0;}

	.area_access table th,
	.area_access table td{padding: 10px;line-height: 1.5;}

	.area_access figure{text-align: center;}

	.area_access h3{height: 34px;line-height: 34px;font-size: 1rem;padding-left: 50px;margin-bottom: 20px;}
		.car_route h3{background-size: 26px auto;background-position: 13px center;}
		.train_route h3{background-size: 23px auto;background-position: 14px center;}
		.bike_route h3{background-size: 32px auto;background-position: 10px center;}

	.area_access figure.map a{position: absolute;width: 100%;height: 100%;top: 0;left: 0;display: block;}

	.car_route{padding-bottom: 10px;}
	.car_route .boxes{margin-top: 20px;}
	.car_route .boxes .box{padding-bottom: 20px;}
	.car_route .boxes .box h4{height: 36px;width: 170px;letter-spacing: 0.1rem;font-size: 0.9375rem;margin-bottom: 10px;}
	.car_route .map{padding: 10px 0 20px;}
	.car_route .chart{}
	.car_route .boxes .box .chart figure:nth-child(2){border-width:7px;}

	.train_route{padding-bottom: 30px;}
	.train_route .map{margin-bottom: 40px;}
	.train_route ul li{width: 100%;max-width: 180px;justify-content: space-between;}
	
	.car_route table.list_service th,
	.car_route table.list_service td{display:block;font-size:0.875rem;width:auto;}
	.car_route table.list_service th{background-color:#e3f1e8;}
	
	.station_access{margin-right: 20px;margin-left: 20px;}
	.station_access ul{padding: 15px;flex-direction: column;}
	.station_access li.station{width: 50%;text-align: center;min-width: 100px;}

	.bike_route .info_box{font-size:  0.875rem;padding: 10px;}
	.bike_route .map_box{flex-direction: column;gap: 20px;margin: 30px auto;}
	.bike_route .map_box ul li{position: relative;padding-left: 50px;font-weight: 500;font-size: 0.8125rem;padding-bottom: 10px;}
	.bike_route .map_box h4{margin-bottom: 15px;}
	.bike_route .map_box h5{background: #e3f1e8;padding: 6px 20px;font-weight: 500;font-size: 0.875rem;}
	.bike_route .map_box ul li::before{content: "";display: block;width: 14px;height: 14px;background: #CCC;position: absolute;left: 20px;top: 2px;}
	.bike_route .map_box ul li.type_01::before{background: #f9c456;}
	.bike_route .map_box ul li.type_02::before{background: #358bc5;}
	.bike_route .map_box ul li.type_03::before{background: #66c18f;}
	.bike_route .map_box ul li.type_04::before{background: #ee66b2;}
	.bike_route .map_box ul li.adjustment::before{content:"￥";background: #e50012;color: #fff;font-size: 0.6875rem;text-align: center;}
	.bike_route .map_box figure img{max-height: 250px;}
}


@media screen and (min-width:768px) and (max-width:1080px) {
	.contents_access{padding-right: 30px;padding-left: 30px;}
}