@charset "UTF-8";
/* CSS Document */

/*共通*/
html{
	font-family: 'Noto Sans JP', sans-serif;
}

body{
	font-weight: 400;
	color: #333333;

}
a{
	text-decoration: none;
	color: #333333;
}

a:hover{
	transition: 0.3s;
	opacity: 0.7;
	cursor: pointer;
}



p{
	color: #333333;
}

h4{
	font-size: 24px;
	font-weight: 600;
	text-align: center;
	margin-top: 50px;
	margin-bottom: 30px;
}

.only-pc{
	display: block;
}

.only-sp{
	display: none;
}


/*nav上*/
.head{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;
	width: 960px;
	margin: 0 auto;
	height: 60px;
	justify-content: space-between;
}

.head div{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: center;

}

h2{
	font-size: 24px;
	font-weight: 600;
	padding-left: 30px;
}
h1 img{
	width: 70px;
}



.head-nav{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	font-size: 14px;
	align-items: center;
	font-weight: 600;
}

.head-nav li{
	position: relative;
	margin-left: 40px;
}

.head-nav li a:before{
	content: "";
    position: absolute;
    top: 25%;
	left: -15px;
	display: block;
    width: 0;
    height: 0;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 6px solid #333333;
	z-index: 999;
}

.head-nav .btn-01{
	margin-left: 25px;	

}

.btn-01 a{
	display: block;
	background-color: #004d86;
	border-radius: 8px;
	color: #ffffff;
	padding: 6px 19px 6px 33px;
}


.head-nav .btn-01 a::before{
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
 	border-left: 6px solid #ffffff;
	left: 18px;
	margin-top: 3px;

}


/*gnav*/

.nav{
	border-top: 1px solid #dbdbdb;
}


.nav::after{
	content: "";
	background-image: url("../img/line.png");
	background-size: contain;
    width: 100%;
    height: 7px;
	display: block;
	background-position: center;
}

.g-nav li a{
	width: 100%;
	height: 100%;
	display: flex;
	padding: 20px;
	box-sizing: border-box;
    align-items: center;
	
}

.g-nav li a:hover{
	opacity: 0.7;
	transition: 0.5s;

}

.g-nav .goriyou a{
	padding: 13px 69px 13px 20px;
}

.g-nav .kashikiri a{
	padding: 13px 21px 13px 20px;
}

.color-line{
	border: none;
	background-image: url("../img/line.png");
	height: 7px;
	margin-top: 0;
    background-position: center;
}



.g-nav{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	width: 960px;
	margin: 0 auto;
	height: 80px;
 }

.g-nav li{
	width: 240px;
	border-right: 1px solid #d7d7d7;
	font-weight: 600;

}

.g-nav li:first-child{
	border-left: 1px solid #d7d7d7;

}

.g-nav li img{
	width: 55px;
	margin-right: 15px;
}



/*スライド*/


/*==================================================
スライダーのためのcss
===================================*/

.swiper{
	max-width: 760px;
	width: 100%;
	height: 370px;
	overflow: visible;
	padding-top: 20px;
}

.swiper li img{
	height: 370px;
	width: 760px;
	border: 1px solid #dbdbdb;
}

.swiper-slide{
	transform: scale(0.85);
	transition: 0.2s;
	opacity: 0.8
}

.swiper-slide-active{
	transform: scale(1);
	opacity: 1
}

.swp-btn{
	display: none;
}

.active .swp-btn{
	display: block;
}

.swiper-button-prev img, .swiper-rtl .swiper-button-next img,
.swiper-button-next img, .swiper-rtl .swiper-button-prev img{
	height: 50px;
	width: 50px
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after,
.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after{
	display: none;
}

.swiper-button-prev, .swiper-rtl .swiper-button-next{
	left: -80px
}

.swiper-button-next, .swiper-rtl .swiper-button-prev{
	right: -60px
}

.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction{
	bottom: -40px;
	display: none;
}

.swiper-pagination-bullet {
	background-color: #f5f5f5;
    opacity: 1;
}

.swiper-pagination-bullet-active {
	background-color: #004d9e;
}

 

/*町並み*/
.town{
	height: 380px;
	background-image: url("../img/head_bg.png");
	background-size: contain;
	background-repeat-y: no-repeat;
}

.town::after{
	width: 100%;
	content: "";
	display: inline-block;
	background-size: contain;
	background-image: url("../img/town.svg");
	background-repeat: repeat-x;
	height: 50px;	
	margin-top: 35px;
}

/*バスナビ*/
.inner{
	width: 960px;
	margin: 0 auto;
	margin-top: 150px;
}

.busnavi_container:hover{
	opacity: 0.7;
	transition: 0.3s;
}
.busnavi_container img a:hover{
	cursor: pointer;
}

/*お知らせ*/
h5{
	font-size: 16px;
	font-weight: 600;
	padding: 10px 30px;
	background-color: #f3f3f3;
	width: 470px;
	position: relative;
}

h5::before{
    content: "";
    background-color: #004d9d;
    width: 5px;
    position: absolute;
    display: block;
	height: 48px;
    top: 0px;
    left: 0px;
}



.news{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
}

.news ul {
	padding: 5px 20px;
	border: 1px solid #cecece;
	font-size: 14px;
	font-weight: 400;
	height: 200px;
	overflow-y: scroll;
}

.news ul li{
	border-bottom: 1px solid #cecece;
	padding-bottom: 15px;
	padding-top: 15px;
	width: 420px;
}

.news ul li:last-child{
	border-bottom: none;
}

.tag{
	font-size: 10px;
	font-weight: 600;
	border: 2px solid #e08016;
	border-radius: 5px;
	padding: 2px 7px;
	width: 60px;
	display: inline-block;
	position: absolute;
}

.tag-rec{
	color: #e08016;
}

.tag-new{
	color: #008200;
	border: 2px solid #008200;
	padding: 2px 16px;
}

.tag-change{
	padding: 2px 17px;
	color: #b52a0c;	
	border: 2px solid #b52a0c;

}


.news ul li a{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	align-items: flex-start;
	position: relative;

}

.news ul li .tag{
	position: absolute;
	left: 85px;
}

.news ul li .date{
	display: inline-block;
	width: 85px;
}
.news ul li .title{
	display: inline-block;
	width: 270px;
	margin-left: 65px;
}

.news-more{
	text-decoration: underline;
	font-size: 14px;

}

.news-more::before{
	content: "";
    position: absolute;
	display: block;
    width: 0;
    height: 0;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 6px solid #333333;
    margin-top: 10px;
    margin-left: -12px;}

.news-new_ttl{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	background-color: #f3f3f3;
	align-items: center;
	width: 470px;
}

.news-new_ttl div{
	width: 100px;
	margin-right: 30px;
	margin-top: -5px;
}
/*バナーたち*/

.banner-container_01{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	margin-bottom: 110px;
	justify-content: space-between;
}

.banner-container_01 div{
	width: 470px;
}

.banner-container_02{
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	margin: 0 auto;
	width: 880px;
	margin-bottom: 50px;

}

.banner-container_02 div{
	width: 280px;
}



/*footer*/
footer{
	background-color: #e6e9eb;

}

footer ul{
	font-size: 12px;
	font-weight: 400;
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	width: 750px;
	justify-content: space-between;
	margin: 0 auto;
	margin-bottom: 40px;

}

footer img{
	width: 120px;
	margin: 0 auto;
	text-align: center;
	padding-top: 20px;
	margin-bottom: 35px;

}

.logo-container{
	margin: 0 auto;
	text-align: center;
}

footer p{
	font-size: 10px;
	font-weight: 400;
	text-align: center;
	padding-bottom: 15px;
	color: #6666666;
}

@media screen and (max-width: 1350px){
	.town::after{
		background-size: cover;
	}
	
}

@media screen and (max-width: 960px){
	
	.inner{
		width: 96%;
	}
	
	.only-pc{
		display: none;
	}
	
	.only-sp{
		display: block;
	}
	
	.nav::after{
		display: none;
		}
	
/*ハンバーガー調整*/	
.nav{
	display: flex;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 998;
	 padding: 22.5px 20px;
    background-color: #004d9e;
	border-top: none;
}
	
.nav_toggle {
  display: block;
  position: relative;
  width: 2rem;
  height: 1.5rem;
}
	
.nav_toggle i {
  display: block;
  width: 100%;
  height: 2px;
  background-color: #ffffff;
  position: absolute;
  transition: transform .5s, opacity .5s;
	z-index: 999;
}
.nav_toggle i:nth-child(1) {
  top: 0;
}
.nav_toggle i:nth-child(2) {
  top: 0;
  bottom: 0;
  margin: auto;
}
.nav_toggle i:nth-child(3) {
  bottom: 0;
}

.nav_toggle.show i:nth-child(1) {
  transform: translateY(6px) rotate(-45deg);
}
.nav_toggle.show i:nth-child(2) {
  opacity: 0;
}
.nav_toggle.show i:nth-child(3) {
  transform: translateY(-7px) rotate(45deg);
}

	.head.fixed{
	position: fixed;
}

.g-nav {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity .5s, visibility .5s;
}
	
.g-nav.show {
 	opacity: 1;
 	visibility: visible;
	background-color: #fff;
	top: 60px;
	margin-right: 0;
}

	.g-nav .nav-title img{
		width: 150px;
		margin-bottom: 30px;
	}
	
		
	.g-nav{
		flex-direction: column;
		width: 100%;
	}
	

	h1 img{
		width: 60px;
	}
	
	h2{
		padding-left: 10px;
		font-size: 18px;
	}
	
	.g-nav{
		border-top: 1px solid #d7d7d7;
		margin-top: 0;
	}
	
	.g-nav li:first-child {
		border-left: none;
	}
	.g-nav li{
		border: none;
	}
	
	.g-nav li{
		border-bottom: 1px solid #d7d7d7;
		width: 100%;
		margin-bottom: 0;
		background-color: #fff;
	}
	
	.g-nav li a{
		width: 100%;
	}
	
	.head{
    background-color: #fff;
    z-index: 50;
	}
	
	.head::after{
		content: "";
		background-image: url(../img/line.png);
		background-size: contain;
		width: 100%;
		height: 7px;
		display: block;
	    background-position: unset;
		position: absolute;
		margin-top: 53px;
	}
	
	.head-nav{
		flex-direction: column;
		align-items: flex-start;
		display: none;
	}
	
	.head-nav.show{
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
		position: absolute;
		top: 415px;
		z-index: 999;
		background-color: #fff;
		width: 100%;
		padding-top: 60px;
		padding-bottom: 40px;
		right: 0;
		opacity: 1;
	}
	
	.head div{
		margin-left: 20px;
		margin-top: -7px;	
	}
	
	.head-nav li{
		margin-bottom: 20px;
		margin-left: 56px;
	}
	
	.head-nav .btn-01{
		margin-bottom: 40px;
		margin-bottom: 30px;
		width: 110px;
	}
	
	.list-one{
		-webkit-box-ordinal-group:1;
	  -ms-flex-order:1;
	  -webkit-order:1;
	  order:1;
	}
	
	.list-two{
		-webkit-box-ordinal-group:2;
	  -ms-flex-order:2;
	  -webkit-order:2;
	  order:2;
	}

	.list-three{
		-webkit-box-ordinal-group:3;
	  -ms-flex-order:3;
	  -webkit-order:3;
	  order:3;
	}
	
	.swiper{
		height: auto;
	}

	.swiper li img{
		height: auto;
		width: 100%;
	}

	.swp-btn,.active .swp-btn{
		display: none;
	}

	.swiper-horizontal>.swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction{
		display: block;
	}


	.town{
		height: 370px;
	}
	
	.town::after{
		background-size: cover;
		margin-top: 55px;
	}
	
	.busnavi_container .only-pc{
		display: block;
	}
	
	.busnavi_container .only-sp{
		display: none;
	}

	
/*news*/
	.news{
		flex-direction: column;
		width: 100%;
   		margin: 0 auto;
	}
	
	.news ul{
		margin-bottom: 30px;
		padding: 5px 40px;
	}
	
	.news ul li{
		width: 100%;
	}
	
	.news ul li .title{
		width: 100%;
		margin-left: 80px;
	}
	
	.news-new_ttl{
		width: 100%;
	}
	
	h5{
		width: 	100%;
	}
	
/*.banners*/
	.banner-container_01{
		flex-direction: column;
		align-items: center;
	}
	
	.banner-container_01 div{
		margin-bottom: 30px;
	}
	
	.banner-container_02{
		width: 100%;
		flex-direction: column;
		align-items: center;

	}
	
	.banner-container_02 div{
		margin-bottom: 20px;
	}
	
	footer ul{
		width: 95%;
		flex-wrap: wrap;
	}
	
	footer ul li{
		margin-right: 10px;
		margin-left: 10px;
	}

}




/*メディアクエリ基準値*/
@media screen and (max-width: 768px){
}
/*メディアクエリ基準値*/







@media screen and (max-width: 570px){
	
	.g-nav.show{
		width: 100%;
	}
	
	.head-nav.show{
		z-index: 999;
		left: 0;
	}
	
	h4{
		margin-top: 30px;
  		margin-bottom: 15px;
	}
	
	.town{
		height: auto;	
	}
	
	.busnavi_container .only-pc{
		display: none;
	}
	
	.busnavi_container .only-sp{
		display: block;
	}
	
	.news ul{
		padding: 5px 15px;
	}
	
	
	.news-new_ttl div {
		width: 170px;
	}
	
	.banner-container_01 div {
    max-width: 100%;
	}
	
	.sp-nav.show{
		width: 100%;
		opacity: 1;
	}
	
	.town::after{
		height: 35px;
	}
	
	.inner{
		margin-top: 25px;
	}
	
	.news ul li a{
		flex-direction: column;
	}
	
	.news ul li .title{
		margin-left: 0;
	}
	
	.news ul li .date{
		margin-bottom: 10px;
	}
	
	.banner-container_01{
		margin-bottom: 60px;
	}

	.banner-container_02 div{
		width: 200px;
	}
	
	footer ul{
		flex-direction: column;
		width: 200px;
		text-align: center;
	}
	
	footer ul li{
		margin-bottom: 15px;
	}

	
}

