@charset "utf-8";
/* CSS Document */
.fv_wrap{
	background-color: #BA1A23;
}

.top_news{
	background-color: #000000;
	padding: 20px 50px;
}
.top_news .swiper-container{
	overflow: hidden;
	height: 30px;
}
.top_news .webgene-blog .webgene-item{
	opacity: 1;
}
.top_news .webgene-blog .webgene-item a{
	flex-wrap: nowrap;
	gap: 15px;
}
.top_news .webgene-blog .webgene-item a p{
	color: #fff;
	font-weight: 500;
}
.top_news .webgene-blog .webgene-item a .cate_txt,.top_news .webgene-blog .webgene-item a .date{
	white-space: nowrap;
}
.top_news .webgene-blog .webgene-item a .cate_txt{
	padding: 2px 6px;
	border-radius: 3px;
	border: 1px solid #fff;
}

.fv_wrap .fv{
	padding: 50px;
	border-radius: 0 0 50px 50px;
	background-color: #F0D91F;
	overflow: hidden;
}
.fv_wrap .fv .swiper-container{
}
.fv_wrap .fv .swiper-container .swiper-wrapper .swiper-slide{
	opacity: 1;
	border-radius: 20px;
	overflow: hidden;
}
.fv_wrap .fv .swiper-button{
	width: 60px;
	height: 60px;
	background-color: #fff;
	border: 2px solid #BA1A23;
	border-radius: 50%;
}
.fv_wrap .fv .swiper-button i{
	font-size: 20px;
	color: #BA1A23;
}
.fv_wrap .fv .swiper-button.swiper-button-prev{
	top: 50%;
	left: 50px;
	transform: translateY(-50%) translateX(-50%);
}
.fv_wrap .fv .swiper-button.swiper-button-next{
	top: 50%;
	right: 50px;
	transform: translateY(-50%) translateX(50%);
}
.fv_wrap .fv .swiper-pagination-bullet{
	opacity: 1;
}
.fv_wrap .fv .swiper-container-horizontal>.swiper-pagination-bullets{
	position: static;
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    justify-content: center;
    align-items: center;
	padding-top: 30px;
	gap: 15px;
	opacity: 1;
}
.fv_wrap .fv .swiper-pagination-bullet{
	width: 10px;
	height: 10px;
	background-color: #BA1A23;
	transition: ease 0.3s;
}
.fv_wrap .fv .swiper-pagination-bullet-active{
	background-color: #F0D91F;
	border: 1px solid #BA1A23;
}

.fv{
	position: relative;
}
.fv .swiper-container{
	width: 100%;
	margin: 0 auto;
}
.fv .swiper-container .swiper-wrapper .swiper-slide{
	position: relative;
	opacity: 1;
	border-radius: 30px;
}
body.on .fv .swiper-container .swiper-wrapper .swiper-slide{
}
.fv .fv_item1{
	position: absolute;
	width: 20%;
	top: 10%;
	right: 3%;
	z-index: 7;
}
.fv .fv_item2{
	position: absolute;
	width: 15%;
	bottom: 30%;
	left: 10%;
	z-index: 7;
}

.fv_wrap .fv .title_txt{
	position: absolute;
	z-index: 4;
	top: 70px;
	left: 70px;
	line-height: 1.8;
}
.fv_wrap .fv .center_item{
	position: absolute;
	z-index: 5;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	background-color: #fff;
	padding: 50px;
	border-radius: 0 50% 0 50%;
}
.fv_wrap .fv .center_item .txtbox{
	margin-bottom: 20px;
}
.fv_wrap .fv .center_item .txtbox span{
	display: inline-block;
	background-color: #BA1A23;
	color: #fff;
	padding: 3px 6px;
}
.fv_wrap .fv .center_item .txtbox span:first-of-type{
	margin-bottom: 6px;
}
.fv_wrap .fv .center_item .item1,.fv_wrap .fv .center_item .item2{
	position: absolute;
	width: 22%;
}
.fv_wrap .fv .center_item .item1{
	top: 5%;
	right: 0;
}
.fv_wrap .fv .center_item .item2{
	bottom: 0;
	left: 0;
	transform: rotate(180deg);
}

.cate .box_wrap{
	padding-right: 40px;
	padding-left: 40px;
}
.cate_wrap .cate1{
	background-color: #BA1A23;
	color: #fff;
	border-bottom-left-radius: 60px;
}
.cate1 .topbox,
.cate5 .topbox{
	justify-content: space-between;
	width: 100%;
}
.cate1 .topbox .titlebox,
.cate5 .topbox .titlebox{
	width: 55%;
}
.cate1 .topbox .titlebox h2,
.cate5 .topbox .titlebox h2{
	line-height: normal;
}
.cate1 .topbox .imgbox,
.cate5 .topbox .imgbox{
	position: relative;
	width: 40%;
	flex-direction: column;
}
.cate1 .topbox .imgbox .img1,
.cate5 .topbox .imgbox .img1{
	border-radius: 50%;
	z-index: 1;
}
.cate1 .topbox .imgbox .img2,
.cate5 .topbox .imgbox .img2{
	position: absolute;
	bottom: -30px;
	left: -15px;
	z-index: 2;
	width: 40%;
	border-radius: 50%;
}
.cate1 .box-item2 .topbox{
	justify-content: flex-end;
}
.cate1 .box-item2 .topbox .titlebox{
	width: 45%;
}
.cate1 .lineup_wrap{
	gap: 20px;
	flex-wrap: wrap;
}
.cate1 .lineup-item{
	width: calc(50% - 10px);
	box-sizing: border-box;
}
.cate1 .lineup-item .imgbox img{
	border-radius: 20px;
}
.cate1 .lineup-item .imgbox .imgframe{
	border: 5px solid #fff;
}
.cate1 .lineup-item .txtbox h3{
	text-align: center;
	padding: 10px 0;
}
.cate1 .lineup-item .txtbox p{
	line-height: 2;
}

.lineup-item .imgbox {
	position: relative;
	border-radius: 10px;
	overflow: hidden;
}

.lineup-item .circle {
	position: absolute;
	bottom: 15px;
	right: 20px;
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 30px;
	height: 30px;
	border: 1px solid #fff;
	border-radius: 50%;
	background-color: rgba(0, 0, 0, 0.3);
	z-index: 5;
	transition: border-color 0.3s ease, transform 0.3s ease;
}
.lineup-item .imgbox:hover .circle {
	transform: translateX(4px);
}
.lineup-item .arrow {
  position: absolute;
  width: 14px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  transition: opacity 0.3s ease;
}
.more-shop a{
	display: block;
	border: 5px solid #fff;
	padding: 20px 15px;
}
.more-shop a:hover {
	border: 5px solid #BA1A23; 
}

.cate2 .titlebox,
.cate5 .titlebox{
	flex-direction: column;
}
.cate2 .titlebox p,
.cate5 .titlebox p{
	line-height: normal;
}
.cate2 .imgbox img{
	border-radius: 10px;
	height: auto;
	display: block;
}
.cate2 .imgbox{
	width: 100%;
	justify-content: space-between;
	margin-top: 30px;
	align-items: flex-start;
}
.cate2 .imgbox .img1{
	width: 35%;
}
.cate2 .imgbox .img2{
	width: 25%;
	margin-top: 60px;
}
.cate2 .imgbox .img3{
	width: 25%;
}
.cate3{
	background-color: #F0D920;
	border-top-right-radius: 60px;
}
.cate3 .titlebox{
	width: 100%;
	padding-bottom: 50px;
	justify-content: flex-end;
}
.cate3 .titlebox h2{
	width: 50%;
	justify-content: flex-start;
}
.cate3 .titlebox p{
	width: 70%;
	font-weight: 900;
}
.cate3 .imgbox{
	position: relative;
	padding-bottom: 40px;
}
.cate3 .txtitem{
	position: absolute;
	top: -50px;
	left: 20px;
	z-index: 3;
}
.cate3 .txtitem p{
	letter-spacing: 3px;
	color: #fff;
}
.cate3 .txtitem p span{
	display: inline-block;
	background: #BA1A23;
	padding: 10px 0px;	
}
.cate3 .txtitem p span:first-child{
	margin-left: 8px;
}
.cate3 .txt-vertical{
	line-height: normal;
}
.cate4{
	border-bottom: 2px solid #222;
	width: calc(100% - 80px);
	margin: 0 auto;
}
.cate4 .box_wrap{
	padding: 0px;
}
.cate4 .topbox{
	position: relative;
	justify-content: space-between;
	width: 100%;
}
.cate4 .topbox .titlebox{
	width: 30%;
	flex-direction: column;
}
.cate4 .topbox .titlebox h2,
.cate4 .topbox .titlebox p{
	line-height: normal;
}
.cate4 .topbox .morebox{
	display: flex;
	width: 40%;
}
.cate4 .morebox2 {
	display: none;
}

.cate4 .topbox .imgbox .img1{
	border-radius: 50%;
	z-index: 1;
}
.cate4 .topbox .morebox .more a{
	position: absolute;
	top: 0px;
	right: 0px;
	z-index: 2;
	padding: 10px 20px;
	display: block;
	width: 30%;
}
.cate4 .box-item2 .topbox{
	justify-content: flex-end;
}
.cate4 .box-item2 .topbox .titlebox{
	width: 45%;
}
.cate4 .webgene-blog{
	position: relative;
	height: auto;
}
.cate4 .webgene-blog .titlebox h2{
	color: #0C4134;
}
.cate4 .webgene-blog .cateitem{
	display:-webkit-box;
    display:-moz-box;
    display:-ms-box;
    display:-webkit-flexbox;
    display:-moz-flexbox;
    display:-ms-flexbox;
    display:-webkit-flex;
    display:-moz-flex;
    display:-ms-flex;
    display:flex;
    -webkit-box-lines:multiple;
    -moz-box-lines:multiple;
    -webkit-flex-wrap:wrap;
    -moz-flex-wrap:wrap;
    -ms-flex-wrap:wrap;
    flex-wrap:wrap;
    justify-content: flex-start;
    align-items: center;
	flex-direction: row;
	gap: 10px;
}
.cate4 .webgene-blog .cateitem .webgene-item{
	white-space: nowrap;
	min-width: 60px;
}
.cate4 .webgene-blog .webgene-item a{
    justify-content: center;
    align-items: center;
	padding: 5px 8px;
	border-radius: 50px;
}
.cate4 .contents .webgene-item{
	width: 100%;
	padding-bottom: 20px;
	padding-top: 30px;
	border-bottom: 1.5px solid #707070;
}
.cate4 .contents .webgene-item .labelbox{
	width: 100%;
	justify-content: flex-start;
	padding-bottom: 10px;
}
.cate4 .contents .webgene-item .catelabel p{
	padding: 5px 8px;
	border-radius: 50px;
	border: 1.8px solid #333;
	width: fit-content;
}

.contents .webgene-item .newsbox{
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

/* ---------- IEのみ ---------- */
@media all and (-ms-high-contrast: none) {
}
/* ---------- 1280px ~ ---------- */
@media screen and (max-width: 1280px){
}
/* ---------- 1080px ~ ---------- */
@media screen and (max-width: 1080px){
}
/* ---------- 768px ~ ---------- */
@media screen and (max-width: 768px){
	.fv_wrap{
		padding-top: 100px; 
	}
}
/* ---------- 576px ~ ---------- */
@media screen and (max-width: 576px){
	.fv_wrap{
		padding-top: 70px; 
	}
	.top_news{
		padding: 15px 20px;
	}
	.top_news .swiper-container{
		height: 26px;
	}
	.fv_wrap .fv .center_item .item1, .fv_wrap .fv .center_item .item2{
		width: 18%;
	}
	.fv_wrap .fv .swiper-button{
		width: 40px;
		height: 40px;
	}
	.fv_wrap .fv .swiper-button i{
		font-size: 14px;
	}
	.fv_wrap .fv .swiper-button.swiper-button-prev{
		left: 20px;
	}
	.fv_wrap .fv .swiper-button.swiper-button-next{
		right: 20px;
	}
	.fv_wrap .fv .swiper-container-horizontal>.swiper-pagination-bullets{
		padding-top: 20px;
		gap: 10px;
	}
	.fv_wrap .fv .swiper-pagination-bullet{
		width: 8px;
		height: 8px;
	}
	.fv_wrap .fv{
		padding: 20px;
		border-radius: 0 0 30px 30px;
	}
	.fv_wrap .fv .title_txt{
		left: 40px;
		top: 40px;
	}
	.fv_wrap .fv .center_item{
		padding: 20px;
	}
	.fv_wrap .fv .center_item .txtbox{
		margin-bottom: 10px;
	}
	.fv_wrap .fv .center_item .txtbox span{
		font-size: 12px;
	}
	.fv_wrap .fv .center_item .logo{
		padding: 0 20px;
	}
	
	.cate1 .txtbox-1{
		margin-top: 70px;
	}
	.cate1 .topbox .imgbox .img1{
		position: absolute;
		left: 20px;
	}
	.cate1 .topbox .imgbox .img2{
		position: absolute;
		bottom: -70px;
		left: -0px;
	}
	.cate1 .box-item2 .topbox {
		justify-content: flex-start;
	}
	.cate1 .lineup_wrap{
		flex-direction: column;
	}
	.cate1 .lineup-item{
		width: 80%;
		box-sizing: border-box;
	}
	.cate1 .lineup-item .imgbox img {
		border-radius: 10px;
	}
	.cate2 .imgbox .img1{
		width: 40%;
	}
	.cate2 .imgbox .img2{
		width: 25%;
		margin-top: 60px;
	}
	.cate2 .imgbox .img3{
		width: 30%;
	}
	.cate3 .txtitem{
		position: absolute;
		top: -100px;
		left: -10px;
		z-index: 3;
	}
	.cate4 .topbox{
		
	}
	.cate4 .topbox .morebox .more a{
		display: none;
	}
	.cate4 .morebox2 {
		display: flex;
	}
	.cate5 .topbox .imgbox{
		width: 100%;
		justify-content: flex-end;
	}
	.cate5 .topbox .imgbox .img1{
		width: 35%;
		position: absolute;
		bottom: -80px;
		right: -10px;
	}
	.cate5 .topbox .imgbox .img2{
		width: 20%;
		bottom: -90px;
		left: 160px;
	}
	.cate5 .topbox .titlebox{
		width: 100%;
		
	}
}	
/* ---------- 350px ~ ---------- */
@media screen and (max-width: 350px){
}

