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

.cate2 .imgbox{
	position: relative;
	width: 80%;
	max-width: 600px;
	aspect-ratio: 1 / 1;
	margin: 0 auto;
}
.cate2 .imgbox .item{
	position: absolute;
	width: 230px;
	transform: translate(-50%, -50%);
	z-index: 1;
}
.cate2 .imgbox .item img{
	width: 100%;
	height: auto;
	display: block;
}
.cate2 .imgbox .item1{
	top: 28%;
	left: 50%;
}

.cate2 .imgbox .item2{
	top: 50%;
	left: 28%;
}

.cate2 .imgbox .item3{
	top: 50%;
	left: 72%;
}

.cate2 .imgbox .item4{
	top: 72%;
	left: 50%;
}
.cate2 .imgbox .item .itemtxt{
	position: absolute;
	inset: 0;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	pointer-events: none; 
}

.cate3{
	margin-top: -50px;
}
.cate3 .boxwrap .box{
	align-items: flex-start;
	gap: 50px;
}
.cate3 .boxwrap .box:nth-of-type(even){
	flex-direction: row-reverse;
}
.cate3 .boxwrap .box:not(:last-of-type){
	margin-bottom: 60px;
}
.cate3 .boxwrap .box .imgbox{
	width: 50%;
}
.cate3 .boxwrap .box .txtbox{
	width: calc(50% - 50px);
	flex-direction: column;
	align-items: flex-start;
	gap: 20px;
}
.cate3 .boxwrap .box .txtbox .titlebox .num{
	color: #A78834;
	border-right: 1px solid #A78834;
	padding-right: 15px;
	margin-right: 15px;
	line-height: 1;
}
.cate3 .boxwrap .box .txtbox .titlebox h2{font-weight: 400;}

.cate4 .contents{
	background-color: #fff;
	padding: 5%;
}
.cate4 .contents h3{
	font-weight: 400;
}

.cate5 .contents{
	position: relative;
	max-width: 900px;
	margin: 0 auto;
	border: 1px solid #C6C6C6;
	padding: 5%;
}
.cate5 .contents .title-style1{
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%,-50%);
	padding: 0 10px;
	background-color: #F2F2EF;
}
.cate5 .contents .title-style1 h2{
	position: relative;
	padding: 0;
	flex-wrap: nowrap;
	white-space: nowrap;
}
.cate5 .contents .box .imgbox{
	width: 200px;
	aspect-ratio: 1 / 1;
	border-radius: 50%;
	overflow: hidden;
}
.cate5 .contents .box .txtbox{
	width: calc(100% - 200px);
	padding-left: 50px;
}

.cate6{
	background-color: #EFEBD9;
}
.cate6 .webgene-blog{
	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: flex-start;
	flex-direction: row;
	gap: 30px;
}
.cate6 .webgene-blog .webgene-item{
	width: calc(100% / 3 - 60px / 3);
}
/* ---------- IEのみ ---------- */
@media all and (-ms-high-contrast: none) {
}
/* ---------- 1280px ~ ---------- */
@media screen and (max-width: 1280px){
	.cate2 .topbox .imgbox,
	.cate2 .imgbox{
		width: 60%;
	}
	.cate3 .boxwrap .box{
		gap: 40px;
	}
	.cate3 .boxwrap .box:not(:last-of-type){
		margin-bottom: 50px;
	}
	.cate3 .boxwrap .box .txtbox{
		width: calc(50% - 40px);
	}
}
/* ---------- 1080px ~ ---------- */
@media screen and (max-width: 1080px){
}
/* ---------- 768px ~ ---------- */
@media screen and (max-width: 768px){
	.cate2 .topbox .imgbox,
	.cate2 .imgbox{
		width: 80%;
	}
	.cate2 .imgbox .item{
		width: 180px;
	}
	.cate6 .webgene-blog{
		gap: 20px;
	}
	.cate6 .webgene-blog .webgene-item{
		width: calc(100% / 3 - 40px / 3);
	}
}
/* ---------- 576px ~ ---------- */
@media screen and (max-width: 576px){
	.cate2 .imgbox .item {
		width: 140px;
	}
	.cate2 .topbox .txtbox .imgitem {
		width: 120px;
		margin-top: -10px;
	}

	.cate3 .boxwrap .box{
		gap: 30px;
	}
	.cate3 .boxwrap .box:not(:last-of-type){
		margin-bottom: 50px;
	}
	.cate3 .boxwrap .box .imgbox{
		width: 70%;
	}
	.cate3 .boxwrap .box .txtbox{
		width: 100%;
		align-items: center;
	}
	.cate4 .contents{
		background-color: #fff;
		padding: 20px;
	}
	.cate5 .contents .box .imgbox{
		width: 200px;
		margin-bottom: 20px;
		margin-top: 50px;
	}
	.cate5 .contents{
		padding: 40px;
	}
	.cate5 .contents .box .txtbox{
		width: 100%;
		padding-left: 0px;
	}
	.cate5 .contents .title-style1{
		width: 280px;
		text-align: center;
	}
	.cate5 .contents .title-style1 h2{
		width: 100%;
		padding: 0;
		white-space: pre-wrap;
	}
	.cate6 .webgene-blog{
		gap: 40px;
	}
	.cate6 .webgene-blog .webgene-item{
		width: 100%;
	}
.default_title3 span{
  display: inline-block;
  }
}

/* ---------- 350px ~ ---------- */
@media screen and (max-width: 350px){
}

