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

/*  TOP ファーストビュー（メインスライド+カルーセルバナー）  */

#top .sp_header {
	position: absolute;
}

/*---------------------------------------------
 MAIN SLIDER SECTION
---------------------------------------------*/
/* ========== box全体 ========== */
.c-container {
	width: 100%;
	position: relative;
}
.swiper-container {
	width: 100%;
	height: 70vh;
	position: absolute;
	z-index: 1;
}
.swiper-container-thumbnail {
	width: 100%;
	overflow: hidden;
	cursor: pointer;
	position: relative;
	bottom: 0;
	z-index: 1;
}
.swiper-wrapper {
	width: 100%;
    display: flex;
	box-sizing: content-box;
	transition-property: transform;
	transform: translate3d(0,0,0);
}
.swiper-container .swiper-wrapper {
	will-change: transform;
}
.swiper-container-thumbnail .swiper-wrapper {
	height: 80vh;
	position: relative;
}

/* ========== slide本体 ========== */
.swiper-slide {
	width: 100%;
	height: 80vh;
	overflow: hidden;
	flex-shrink: 0;
	position: relative;
}
/*mainスライド*/
.swiper-container .swiper-slide span {
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
	position: absolute;
	top: 0;


	right: 0;
	bottom: 0;
	left: 0;
}
.loaded .swiper-container .swiper-slide span.img01{
	background-image:url("/jq/img/img01_sp.webp?20220719");
}
.no-webp .loaded .swiper-container .swiper-slide span.img01{
	background-image:url("/jq/img/img01_sp.jpg?20220719");
}
.loaded .swiper-container .swiper-slide span.img02{
	background-image:url("/jq/img/img02_sp.webp?20220719");
}
.loaded .swiper-container .swiper-slide span.img03{
	background-image:url("/jq/img/img03_sp.webp?20251007");
}
.loaded .swiper-container .swiper-slide span.img04{
	background-image:url("/jq/img/img04_sp.webp?20220719");
}
.no-webp .loaded .swiper-container .swiper-slide span.img02{
	background-image:url("/jq/img/img02_sp.jpg?20220719");
}
.no-webp .loaded .swiper-container .swiper-slide span.img03{
	background-image:url("/jq/img/img03_sp.jpg?20251007");
}
.no-webp .loaded .swiper-container .swiper-slide span.img04{
	background-image:url("/jq/img/img04_sp.jpg?20251013");
}
/*thumbnail*/
.swiper-container-thumbnail .swiper-slide {
	display: table;
	opacity: 0;
	z-index: 0;
}
.swiper-container-thumbnail .swiper-slide-active {
	z-index: 1; /*activeスライドだけ前に出す*/
}
.swiper-container-thumbnail .swiper-slide dl {
	width: 100%;
	box-sizing: border-box;
	color: #ffffff;
	position: absolute;
	bottom: 0;
	background: linear-gradient(to top, rgb(0 0 0), transparent);
}
.swiper-container-thumbnail .swiper-slide dl .inner{
	width: 90%;
	max-width:400px;
	margin:0 auto 20px 20px;
}

.swiper-container-thumbnail .swiper-slide dt span {
	color: #ffffff;
	font-family: 'Jost', sans-serif;
	font-size: 12px;
	border-bottom:1px solid #fff;
}
.swiper-container-thumbnail .swiper-slide dl h2 {
	font-size: 17px;
	font-weight: bold;
	margin: 0.2em 0 0.25em;
}
.swiper-container-thumbnail .swiper-slide dd {
	font-size: 13px;
	margin-bottom: 0.7em;
}
.swiper-container-thumbnail .swiper-slide .mainslide_cont_btn {
	width: 70%;
	max-width:400px;
	margin-top:30px;
}
.swiper-container-thumbnail .swiper-slide .mainslide_cont_btn span {
	font-size: 13px;
	font-weight: 700;
	text-align: center;
}
.swiper-container-thumbnail .swiper-slide .mainslide_cont_btn span a {
	text-decoration: none;
	display: block;
	padding: 7px 10px;
	background: #fff;
	box-sizing: border-box;
	transition: all .3s;
}
.swiper-container-thumbnail .swiper-slide .mainslide_cont_btn span a:hover{
	color: #ffffff;
	text-decoration:none;
	background-color: #000000;
}
.swiper-container-thumbnail .swiper-slide .mainslide_cont_btn span a i {
	font-size: 120%;
	color: #8e451c;
	line-height: 1.3;
	float: right;
}
.swiper-container-thumbnail .swiper-slide .mainslide_cont_btn span a:hover i {
	color: #ffffff;
}
/* arrow */
.swiper-button-next,
.swiper-button-prev {
	width: 20px;
	height: 32px;
	background-position: center;
	background-repeat: no-repeat;
	opacity: 0.6;
	cursor: pointer;
	position: absolute;
	top: 50%;
	z-index: 10;
}
.swiper-button-next{
	background-image:url("/jq/img/sride_prev_pn.svg");
	right: 5px;
	left: auto;
}
.swiper-button-prev{
	background-image:url("/jq/img/sride_next_pn.svg");
	right: auto;
	left: 5px;
}
/* pager */
.swiper-pagination-bullets {
	width: 100%;
	text-align: center;
	transition: .3s;
	transform: translate3d(0,0,0);
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 10;
	padding: 10px 0;
}
.swiper-pagination-bullets .swiper-pagination-bullet {
	width: 8px;
	height: 8px;
	display: inline-block;
	background: #cccccc;
	border-radius: 100%;
	opacity: .5;
	cursor: pointer;
	margin: 0 5px;
}
.swiper-pagination-bullets .swiper-pagination-bullet.swiper-pagination-bullet-active {
	opacity: 1;
	background: #000000;
}


/*---------------------------------------------
 TOP BANNER SECTION
---------------------------------------------*/
.tp_box_banner {
	width:100%;
	background: rgba(248,248,248,0.9);
	padding: 10px 0;
	overflow:hidden;
	margin: 20px 0;
	position: relative;
	z-index: 2;
}
/* TOPバナーカルーセル */
	/* box全体・見出しの設定 */
#bannerCarousel * {
	box-sizing: border-box;
}
#bannerCarousel {
	width: 100%;
	z-index: 1;
}
#bannerCarousel a {
	text-decoration: none;
}
#bannerCarousel img {
	max-width: 100%;
	display: block;
}
#bannerCarousel a img:hover {
	opacity: 1.0;
}
#bannerCarousel .slick-list {
	overflow: visible;
}
	/* スライドの設定 */
#bannerCarousel .slick-slide {
	width: 270px;
	font-size:90%;
	margin: 0 5px;
}
@media screen and (min-width: 480px) {
	#bannerCarousel .slick-slide {
		font-size:100%;
		margin: 0 15px;
	}
}
#bannerCarousel .slick-slide .item {
	width: 100%;
	height: 270px;
	background: #ffffff;
	box-sizing: border-box;
}
#bannerCarousel .slick-slide .item {
	user-select: none;
	margin: 0;
	padding: 0;
	transition: 0.3s;
}
#bannerCarousel .slick-slide .item:hover{
	transform: translate(-7px,-7px);
	box-shadow: 7px 7px 0px 0px #000;
}
#bannerCarousel .slick-slide .item dl {
	height: 100%;
	position: relative;
}
#bannerCarousel .slick-slide .item dl dd img {
	width: 100%;
	display: block;
}
#bannerCarousel .slick-slide dl .cate {
	font-size: 80%;
	padding: 10px 10px 0 10px;
}
#bannerCarousel .slick-slide dl .cate span {
	font-family: 'Jost', sans-serif;
	letter-spacing: 0.1em;
	border-bottom:1px solid #000;
}
#bannerCarousel .slick-slide .item dl dt {
	box-sizing: border-box;
	color: #000000;
	font-weight: bold;
	padding: 5px 10px 10px 10px;
	margin-top: 2px;
}
#bannerCarousel .slick-slide .item dl em {
	width: 100%;
	font-size: 11px;
	color: #000;
	font-weight: 700;
	padding: 7px 10px;
	display: block;
	position: absolute;
	bottom: 0;
	border-top: 1px dotted #ccc;
}
#bannerCarousel .slick-slide .item dl em i {
	color: #8e451c;
	font-size: 150%;
	float: right;
}
	/* pagerの設定 */
#bannerCarousel .slick-dots {
	margin-top: 10px;
}
#bannerCarousel .slick-dots li {
	width: auto;
	height: auto;
	padding: 0;
	margin: 0;
}
#bannerCarousel .slick-dots li button {
	width: 8px;
	height: 8px;
	margin: 5px;
	background: #D6D6D6;
	display: block;
	transition: opacity .2s ease;
	border-radius: 50%;
}
#bannerCarousel .slick-dots li.slick-active button {
	background: #869791;
}
#bannerCarousel .slick-dots li button:before {
	display: none;
}
/* ここまでTOPバナーカルーセル */
