@charset "utf-8";
/* CSS Document */
/*--------------- header ---------------*/
body {
	position: relative;
}
/*--------------- KV ---------------*/
section#kv {

}
section#kv > div {
	width: 100%;
	aspect-ratio: 2 / 1;
	overflow: hidden;
}
.swiper-img {
	width: 100vw;
	height: auto;
	position: relative;
}
.swiper-slide img {
  height: auto;
  width: 100%;
  /*position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);*/

}
	@media only screen and (max-width: 768px) {
		section#kv {
			height: 420px;
			min-height: 420px;
		}
		section#kv > div {
			width: auto;
			
			aspect-ratio: auto;
			overflow: hidden;
		}
		.swiper-img {
			width: auto;
			height: 420px;
			position: relative;
		}
		.swiper-slide img {
		  height: 100%;
		  width: auto;
		  position: absolute;
		  top: 50%;
	  left: 50%;
	  transform: translate(-50%, -50%);
	  -webkit-transform: translate(-50%, -50%);
	  -ms-transform: translate(-50%, -50%);
		}
	}
/*-------- KV フェードイン部分 --------*/
@keyframes zoomUp {
  0% {
    transform: scale(1);
  }
  100% {
    transform: scale(1.15);
  }
}
.swiper-slide-active .swiper-img,
.swiper-slide-duplicate-active .swiper-img,
.swiper-slide-prev .swiper-img {
  animation: zoomUp 7s linear 0s normal both;
}

#renew section h2 span:before,
#renew section h2 span:after {
	content: "";
	display: inline-block;
	background-image: url(/common/top/pc/h2_layout.png);
	background-repeat: no-repeat;
	background-size:contain;
	width: 20px;
	height: 3px;
	background-size: contain;
	margin: 0 16px;
	vertical-align: 7px;
}

	@media only screen and (max-width: 768px) {

	}
/*--------------- 緊急のお知らせ ---------------*/

#renew section > div#oshirase > div {
	width: 980px;
	border: #f00 1px solid;
    margin: 40px auto;
    padding: 30px;
	box-sizing: border-box;
}
#renew section > div#oshirase > div  > h2 {
	color: #f00;
	font-size: 24px;
	font-weight: 700;
	margin-bottom: 24px;
}

#renew section > div#oshirase > div  > h2 > span:before,
#renew section > div#oshirase > div  > h2 > span:after {
	content: "";
	display: inline-block;
	background-image: url(/common/top/pc/h2_layout_red.png);
	background-repeat: no-repeat;
	background-size:contain;
	width: 20px;
	height: 3px;
	background-size: contain;
	margin: 0 16px;
	vertical-align: 7px;
}

#renew section > div#oshirase > div > p {
	color: #f00;
    text-align: center;
    line-height: 160%;
	margin-bottom: 16px;
}

	@media only screen and (max-width: 768px) {
		#renew section > div#oshirase > div {
			width: 90%;
		}
		#renew section > div#oshirase > div  > h2 {
			color: #f00;
			font-size: 4.5vw;
			font-weight: 700;
			margin-bottom: 20px;
		}
		
		#renew section > div#oshirase > div  > h2 > span:before,
		#renew section > div#oshirase > div  > h2 > span:after {
			content: "";
			display: none
		}
		#renew section > div#oshirase > div > p {
			text-align: left;
		}

	}
/*--------------- バナー領域 ---------------*/

#renew section#banner {
	width: 980px;
	margin: 40px auto;
}

#renew section#banner > h2 {
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 24px;
}
#renew section#banner > h2.plan {
	width: 100%;
	height: 100px;
	margin-bottom: 50px;
}

	@media only screen and (max-width: 768px) {
		#renew section#banner {
			width: 90%;
			margin: 40px auto;
		}
		
		#renew section#banner > h2 {
			font-size: 5.5vw;
			font-weight: 700;
			margin-bottom: 24px;
		}
		#renew section#banner > h2.plan {
			width: 100%;
			height: 100px;
			margin-bottom: 50px;
		}
	}

#renew section#banner> div {
	margin-bottom: 50px;
}
	
#renew section#banner div.box {
	display: flex;
	flex-wrap: wrap;
}
#renew section#banner div.box > div {
	width: 232px;
	margin-right: 17.3px;
}
#renew section#banner div.box > div:last-of-type {
	margin-right: 0;
}
#renew section#banner div.box > div > a {
	color: #53585a;
	text-decoration: none;
}
#renew section#banner div.box > div > a > div {
	width: 232px;
	height: 154px;
	overflow: hidden;
}
#renew section#banner div.box > div > a > div > img {
	width: 100%;
	height: auto;
}
#renew section#banner div.box > div > a > P {
	font-size: 14px;
	line-height: 150%;
	text-align: left;
	margin-top: 12px;
}
#renew section#banner div.box > div > a > P > span {
	font-size: 15.5px;
	font-weight: 600;
	line-height: 150%;
	text-align: left;
	margin-top: 12px;
}
#renew section#banner > h2.plan > a {
	display: flex;
	justify-content: center; /*横*/
	align-items: center; /*縦*/
	width: 100%;
	height: 100%;
	color: #fff;
	background-image: url(/common/top/pickup/bnr_plan.webp);
	background-size: contain;
}
	@media only screen and (max-width: 768px) {
		#renew section#banner > h2.plan > a {
			background-repeat: no-repeat;
			background-size: cover;
			background-position: 48% 50%;
		}
		#renew section#banner > div {
			overflow-x: scroll;
		}
		#renew section#banner div.box {
			width: 980px;
			margin-bottom: 20px;
			
		}
		.simplebar-track.simplebar-horizontal {
		  height: 10px;
		  background: #ccc;
		  border-radius: 5px;
		  max-width: 372px;
		  margin: 0 auto;
		}
		.simplebar-scrollbar {
		  height: 10px;
		  background: #53585a;
		  border-radius: 5px;
		  top: 0;
		}

	}
/*--------------- News ---------------*/
#renew section#news {
	width: 800px;
	margin: 40px auto 70px ;
}

#renew section#news > h2 {
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 24px;
}
#renew section#news > div > ul > li {
	font-size: 15px;
}
#renew section#news > div > ul > li > a {
	color: #53585a;
	text-decoration: none;
}

#renew div.newsbtn {
	display: inline-block;
	width: 145px;
	font-size: 16px;
	color: #fff;
	background-color: #54585A;
	padding: 12px 26px;
	position: relative;
	letter-spacing: .1em;
}
	@media only screen and (max-width: 768px) {
		
		#renew section#news {
			width: 90%;
		}
	}
/*--------------- News　開閉部JS ---------------*/
.js-accordion ul::after{
  content: "";
  display: block;
  clear: both;
}
.js-accordion ul li {
	width: 800px;
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
}
.js-accordion ul li i {
	display: block;
	width: 100px;
	font-style: normal;
	line-height: 150%;
    margin-bottom: 1em;
	vertical-align: top;
}
.js-accordion ul li a {
	display: block;
	width: 700px;
	text-align: left;
	line-height: 150%;
    margin-bottom: 1em;
}
.js-accordion ul li a:after {
	content: "";
	display: inline-block;
	background-image: url(/common/images/arrow_link.png);
	background-repeat: no-repeat;
	background-size: contain;
	width: 30px;
	height: 6px;
	vertical-align: super;
	margin-left: 15px;	
}

.js-accordion ul li a.none {
	pointer-events: none;
}
.js-btn-more,
.js-btn-close {
	margin-top: 20px;
	cursor:pointer;
}

.js-btn-more::after {
    content: '＋';
    display: inline-block;
    width: 14px;
	position: absolute;
	right: 26px;
}
.js-btn-close::after {
    content: '－';
    display: inline-block;
    width: 14px;
	position: absolute;
	right: 26px;
}
	@media only screen and (max-width: 750px){
		.js-accordion {
			width: 100%;
			font-size: 130%;
			margin: auto;
		}
		.js-accordion ul li {
			width: 100%;
		}
		.js-accordion ul li i {
			width: 25%;
		}
		.js-accordion ul li a {
			width: 75%;
		}
	}




/*--------------- SPOT ---------------*/
div#spot {

}
div#spot > div {
	width: 100vw;
	overflow: hidden;
}
	@media only screen and (max-width: 768px) {
		section#kv {
			height: 420px;
			min-height: 420px;
		}
		section#kv > div {
			width: auto;
			
			aspect-ratio: auto;
			overflow: hidden;
		}
		.swiper-img {
			width: auto;
			height: 420px;
			position: relative;
		}
		.swiper-slide img {
		  height: 100%;
		  width: auto;
		  position: absolute;
		    top: 50%;
	  left: 50%;
	  transform: translate(-50%, -50%);
	  -webkit-transform: translate(-50%, -50%);
	  -ms-transform: translate(-50%, -50%);
		}
	}