@charset "UTF-8";
#layer_main .main_img::after{content: "";display: block;width: 100%;height: 100%;position: absolute;left: 0;top: 0;background: linear-gradient(to right,rgba(0,0,0,0.4) 20%,rgba(0,0,0,0))}
#page_tit figure:nth-of-type(1){position: absolute;right: -8em;top: 0.5em;width: 6.85em;animation-name: fadeIn;}
#page_tit figure:nth-of-type(2){position: absolute;bottom: -2.75em;left: -10em;width: 12.5em;animation-name: fadeIn;}
#page_tit figure img{animation: fuwafuwa 6s ease-in-out infinite;}
.route_list{display: flex;justify-content: space-between;flex-wrap: wrap;align-items: flex-end;}
.route_list > .item{width: 25em;}
.route_wrap .lead{border-bottom: 1px solid #555;}
.route_item{font-size: 1.8em;display: flex;align-items: flex-end;}
.route_item small{font-size: 0.45em;line-height: 1.2;align-self: center;}
.route_item span{font-size: 0.7em;}
.route_item strong{font-size: 1.2em;line-height: 1.2;}
.access_map{width: 100%;margin-top: 1.5em;}

#facility{background: #f7f7f7;}
#facility .wrap1024 > div + div{margin-top: 2.5em;}
.facility_tit{display: flex;justify-content: space-between;align-items: center;padding: 0.7em 1em;margin-bottom: 0.7em;}
.facility_tit span{font-size: 1.2em;color:#fff;}
.facility_tit small{font-size: 0.9em;color:#fff;}
#facility .sp_slide{margin-top: 1em;}
#facility figcaption{font-size: 0.7em;}
#facility .cap_out small{font-size: 0.7em;display: inline-block;}
#shopping .facility_tit{background: #e3943d;}
#education .facility_tit{background: #5386b9;}
#park .facility_tit{background: #009e6f;}

#shopping .shop_info{background: #fbf0e2;padding:20px;margin:2em auto 0;}
#shopping .shop_info ul{display:flex;font-size:0.7em;margin-top:20px;}
#shopping .shop_info li.shop_left{width:35%}
#shopping .shop_info li.shop_right{width:60%}
#shopping .shop_info dl{display:flex;font-size:1em;flex-wrap: wrap;justify-content: space-between;align-items: baseline;}
#shopping .shop_info dt{background:#e3943d;padding:5px;color:#fff;width:20%;margin-bottom:10px;text-align:center;}
#shopping .shop_info dd{width:78%;}
#shopping .shop_info big{color: #e3943d;font-size:1em;}
#shopping .shop_info small{color: #000;font-size:0.6em;}
#shopping .shop_info .shop_name{font-size:0.6em;border-top:1px solid #000;margin-top:10px;padding-top:10px;}
#shopping .shop_info .orange{color: #e3943d;font-size:0.6em;}

#etc .facility_tit{display: flex;justify-content: space-between;align-items: center;padding: 0.3em 1em;margin: 1.5em auto 0.3em;margin-bottom: 0;}
#etc #shopping .facility_tit{background: #e3943d;}
#etc #medical .facility_tit{background: #d3699f;}
#etc #education .facility_tit{background: #5386b9;}
#etc #public .facility_tit{background: #876240;}
#etc #bank .facility_tit{background: #6662a4;}

@media screen and (min-width: 769px){
.route_wrap{animation-delay: 0.2s;}
#facility .sp_slide figure{width: 16.75em;}
.etc_item > figure{animation-delay: 0.2s;}
#etc .wrap1024{display: flex;flex-wrap: wrap;justify-content: space-between;}
#etc .wrap1024 > *{width: 100%;}
#etc .wrap1024 > #public{width: 25.133333em;}
#etc .wrap1024 > #bank{width: 25.133333em;}
#etc .sp_slide{flex-wrap: wrap;margin-top: 1.5em;gap: 1em 0.93333em;justify-content: flex-start;}
#etc .sp_slide figure{width: 12.1em;}
#etc .sp_slide figure:last-child{width: 12.1em;margin-right: 0;}
#etc .sp_slide figure:nth-of-type(4n-2){animation-delay: 0.2s;}
#etc .sp_slide figure:nth-of-type(4n-1){animation-delay: 0.4s;}
#etc .sp_slide figure:nth-of-type(4n){animation-delay: 0.6s;}
}

@media screen and (max-width: 768px) {
#page_tit figure:nth-of-type(1){right: 0.5em;top: 0.5em;width: 5em;}
#page_tit figure:nth-of-type(2){bottom: -2em;left: 0.5em;width: 10em;}
.route_wrap{margin-top: 1.5em;}
.route_item{font-size: 1.7em;}
.access_map{width: 100vw; height: 100vw;overflow-x: auto;margin-left: -4vw;margin-right: -4vw;padding: 0 2vw;}
.access_map::before{content: "▶︎▶︎▶︎";font-size: 0.7em;position: absolute;right: 0.8em;top: 0.5em;animation: 1s fadeIn 0s infinite;line-height: 1;color: #a10a0a;letter-spacing: -0.4em;z-index: 1;text-shadow: 0 0 0.2em #fff,0 0 0.2em #fff;}
.access_map::after{content: "▶︎▶︎▶︎";font-size: 0.7em;position: absolute;right: 0.8em;bottom: 0.5em;animation: 1s fadeIn 0s infinite;line-height: 1;color: #a10a0a;letter-spacing: -0.4em;z-index: 1;text-shadow: 0 0 0.2em #fff,0 0 0.2em #fff;}
.access_map.active::before,
.access_map.active::after{display: none;}
.access_map img{object-fit: cover;height: 100%;max-width: none;width: auto;}
}



#etc{padding-bottom: 0;}
.etc_item{display: flex;justify-content: space-between;}
.etc_item > .item{width: 25em;}
.etc_item > figure{width: 24em;}

.ml_tit{font-family: "EB Garamond", serif;letter-spacing: 0.1em;text-align: center;color: #8c6013;font-size: 1.8em;}
.ml_tit + *{margin-top: 1.25em;}

@media screen and (max-width: 768px) {
.etc_item{flex-wrap: wrap;}
.etc_item > .item{width: 100%;}
.etc_item > figure{width: 100%;margin-top: 1.5em;}
}



#map{padding-bottom: 0;}
.map{margin:3em auto 0;animation-name: fadeInUp;}
.map img{border:2px #a3935c solid;padding:0.3em}

#life_information{padding-bottom: 0;}
.life_information_switch{display: flex;gap: 0 0.1em;padding: 0 0 0.25em!important;margin: 1.5em 0 0;border-bottom: 2px solid transparent;overflow: hidden;}
.life_information_switch > li{flex-grow: 1; text-align: center;padding: 0.3em 0;transition: 0.3s all;cursor: pointer;background: #ebe5c4;position: relative;color: #fff;}
.life_information_switch > li::after{content: "";display: block;width: 100%;height: 0.25em;position: absolute;left: 0;bottom: -0.25em;background: none;}
.life_information_switch > li::before{content: "";display: block;width: 1000vw;height: 2px;position: absolute;left: 50%;transform: translateX(-50%);bottom: -0.26em;}
.life_information_switch > li small{font-size: 0.6em;display: block;}
.life_information_switch > li span{font-size: 0.7em;font-family: "EB Garamond", serif;display: block;line-height: 1;}
.life_information_switch > li.public_btn{background: #876240;}
.life_information_switch > li.education_btn{background: #5386b9;}
.life_information_switch > li.bank_btn{background: #6662a4;}
.life_information_switch > li.medical_btn{background: #d3699f;}
.life_information_switch > li.shopping_btn{background: #e3943d;}
.life_information_switch > li.park_btn{background: #009e6f;}
.life_information_switch > li.shrine_btn{background: #581976;}
.life_information_switch > li.active{pointer-events: none;}
.life_information_switch > li.public_btn.active::before,
.life_information_switch > li.public_btn.active::after{background: #876240;}
.life_information_switch > li.education_btn.active::before,
.life_information_switch > li.education_btn.active::after{background: #5386b9;}
.life_information_switch > li.bank_btn.active::before,
.life_information_switch > li.bank_btn.active::after{background: #6662a4;}
.life_information_switch > li.medical_btn.active::before,
.life_information_switch > li.medical_btn.active::after{background: #d3699f;}
.life_information_switch > li.shopping_btn.active::before,
.life_information_switch > li.shopping_btn.active::after{background: #e3943d;}
.life_information_switch > li.park_btn.active::before,
.life_information_switch > li.park_btn.active::after{background: #009e6f;}
.life_information_switch > li.shrine_btn.active::before,
.life_information_switch > li.shrine_btn.active::after{background: #581976;}

.life_information_list{animation-name: fadeInUp;}
.life_information_list > li{column-count: 2;column-gap: 2em;display: none;padding: 1em 1em 0;}
.life_information_list > li.active{display: block;}
.life_information_list ul{display: flex;margin-bottom: 0.2em;}
.life_information_list ul > *{font-size: 0.65em;line-height: 1.3;}
.life_information_list ul .name{flex: 1;}
.life_information_list ul .time{width: 6em;text-align: right;}
.life_information_list ul .far{width: 9.5em;text-align: right;}
.life_infomation_wrap .close_btn{padding: 0.5em 0;font-size: 0.7em;width: 13em;margin: 2em auto 0;text-align: center;border: 1px solid #000;cursor: pointer;}

@media screen and (max-width: 768px) {
.life_information_switch{flex-wrap: wrap; gap: 0.15em 0.1em;border-bottom: none;padding-bottom: 0.15em;margin: 1.5em 0 0;}
.life_information_switch > li{flex: auto;padding: 0.3em 0;width: 25%;border-bottom-width: 1.5vw}
.life_information_list > li{column-count: 1;display: none;padding: 1em 0 0;}
.life_information_list > li.active{display: block;}
.life_information_switch > li small{font-size: 0.7em;}
.life_information_switch > li span{font-size: 0.72em;}
.life_information_list ul{display: flex;width: 100%;}
.life_information_list ul > *{font-size: 0.8em;line-height: 1.2;}
.life_infomation_wrap .close_btn{font-size: 0.8em;}
}

.routehead h3{
	font-size: 1.5em;
	margin-bottom: 40px;
}
.route_section{
	margin-bottom: 40px;
}
.route_section.bottom{
	margin-bottom: 0px;
}
.route_container .note{
	font-size: 0.6em;
	margin-top: 0;
}
.route_section h4{
	font-size: 1.15em;
	margin-bottom: 20px;
}
.route_flex{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	column-gap: 25px;
}
.route_flex .flexleft{
	width: 38.0859375%;
}
.route_flex .flexleft p{
	font-size: 0.75em;
	margin-bottom: 20px;
}
.route_flex .flexleft h5{
	border-bottom: 1px solid #231815;
	font-size: 0.75em;
	margin-bottom: 12px;
	padding-bottom: 2px;
	margin:2em auto 1em;
}
.route_flex .flexright ul.route_infolist{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.route_flex .flexright ul.route_infolist li{
	width: 48%;
	margin:0.5em auto 0;
}
.route_flex .flexright{
	flex: 1;
}
.routemap img{
	width: 100%;
}
.route_flex .flexleft .route_info{
	margin-bottom: 20px;
}
.route_flex .flexleft .route01 img,.route_flex .flexleft .route02 img,.route_flex .flexleft .route03 img,.route_flex .flexleft .route04 img{
	height: 32px;
}
.route_flex .flexleft .route05 img{
	height: 52px;
}
.route_flex .flexleft .route06 img{
	height: 42px;
}
.route_flex .flexleft .route07 img{
	height: 22px;
}
.route_flex .flexleft .route08 img{
	height: 34px;
}
.route_flex .flexleft .route09 img,.route_flex .flexleft .route10 img{
	height: 38px;
}
.route_flex ul.route_img{
	display: flex;
	justify-content: space-between;
	flex-wrap: nowrap;
	margin:3em auto 2em;
}
.routemap_img{
	margin:1em auto;
}

@media screen and (max-width: 768px) {
	.route_flex .flexleft,.route_flex .flexright{
		width: 100%;
		margin-bottom: 10px;
	}
	.route_flex .flexleft .route_info{
		margin-bottom: 15px;
	}
	.route_flex .flexleft .route_info.route05 {
    margin-bottom: 0px;
  }
	.route_flex .flexleft .route01 img,.route_flex .flexleft .route02 img,.route_flex .flexleft .route03 img,.route_flex .flexleft .route04 img{
		height: 29px;
	}
	.route_flex .flexleft .route05 img{
		height: 47px;
	}
	.route_flex .flexleft .route06 img{
		height: 38px;
	}
	.route_flex .flexleft .route07 img{
		height: 20px;
	}
	.route_flex .flexleft .route08 img{
		height: 31px;
	}
	.route_flex .flexleft .route09 img,.route_flex .flexleft .route10 img{
		height: 34px;
	}
	.route_flex .flexright ul.route_infolist li{
		width: 100%;
		padding:.5em 1.5em;
		margin:0.5em auto 0;
	}
	.route_flex ul.route_img{
		flex-wrap: wrap;
		width:100%;
	}
	.route_flex ul.route_img li{
		width:100%;
	}
}
