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

.topSec01{
	background-color:#E2E2E2;
	background-image:url(../img/top/mas01.png);
	padding:60px 10px;
}

.topSec01W{

}

.topSec01WTtl{
	color:#323232;
}

.topSec01WTtlJa{
	font-size: 20px;
	letter-spacing: 0.03em;
	line-height: 32px;
}

.topSec01WImgF01Img{
    text-align: center;
    img{
        width:250px;
        margin:0 auto;
    }
}

.topSec01WTtlEn{
	font-family: Abel;
	font-size: 60px;
    line-height: 1;
    margin-bottom:30px;
}

.topSec01WImgF{
	img{
		box-shadow: 8px 24px 32px rgba(0, 0, 0, 0.3);
	}
}

.topSec01WImgF01{

}

  .topSec01WImgF02,.topSec01WImgF03,.topSec01WImgF04 {
    width:250px;
    margin:0 auto 30px;
  }

.topSec01WImgF01Txt{
	padding:50px 0;
}

.topSec01WImgF01TxtTtl{
	font-family: "Hiragino Mincho ProN";
	font-size: 22px;
	line-height: 21px;
	color: #323232;
	
	span{
        width:fit-content;
		background-color:#FFF;
		display: block;
		padding:10px;
		margin-bottom:10px;
	}
}

.topSec01WImgF01TxtSub{
	span{
		background-color:#323232;
		color:#FFF;
		display: block;
		padding:5px 10px;
		margin-bottom:10px;
		font-size: 14px;
		letter-spacing: 0.04em;
		line-height: 40px;
		width:fit-content
	}
}

.topSec01WImgF01TxtName{
	color: #323232;
}


.topSec02{
	background-image:url(../img/top/sec02_bg.png);
	padding:60px 10px 60px;
}

.topSec02Ttl{
	background-color:#222222;
	padding:20px;
	width:fit-content;
	margin-bottom:50px;
}

.topSec02TtlSub01{
	font-family: Amiri;
	font-size: 22px;
	color: #FFF;
	span{
		color: #eaff00;
	}
}

.topSec02Ttl01{
	font-family: Abel;
	font-size: 60px;
	line-height: 66px;
	color: #eaff00;
	border-bottom:2px solid #eaff00;
	margin-bottom:10px;
}

.topSec02TtlSub02{
	font-family: "Hiragino Mincho ProN";
	font-size: 22px;
	letter-spacing: 0.03em;
	line-height: 32px;
	color:#FFF;
	span{
		color: #eaff00;
	}
}

.topSec02W{
	margin:0 auto 60px;
}

.topSec02Desc{
	font-family: "Hiragino Mincho ProN";
	margin-bottom:60px;
}

.topSec02Desc .desc01{
	font-size: 22px;
	letter-spacing: 0.06em;
	line-height: 32px;
	color: #323232;
	background-color:#eaff00;
	padding:15px 10px;
	font-weight: bold;
	display: block;
	width: fit-content;
	margin-bottom:5px;
}



.topSec02Desc .desc02{
	font-family: "Hiragino Mincho ProN";
	font-size: 22px;
	letter-spacing: 0.06em;
	line-height: 32px;
	color: #323232;
	padding:10px;
	background-color:#FFF;
	font-weight: bold;
	display: block;
	width: fit-content;
}

.topSec02WList{
	position: relative;
	background: rgba(255, 255, 255, 0.9);
	border: 1px solid #323232;
	border-radius: 24px;
	width: fit-content;
	padding:5px 20px 5px 40px;
	color:#323232
}

.topSec02WLists{
	display: flex;
	gap:10px 3px;
	flex-wrap: wrap;
}

.topSec02WList:before{
	content: url(../img/top/check.png);
	position: absolute;
	top: 50%;
	left: 20px;
	transform: translateY(-50%);
}

.topSec02W2{
	position: relative;
	padding-top:250px;
}

.topSec02W2Ttl{
	position: absolute;
	right:0px;
	top:0px;
}

.topSec02W2Ttl{
	background-color:#222222;
	padding:20px;
	width:fit-content;
	margin-bottom:50px;
}

.topSec02W2TtlSub{
	font-family: Amiri;
	font-size: 22px;
	color: #FFF;
	text-align: right;
	span{
		color: #eaff00;
	}
}

.topSec02W2Ttl01{
	font-family: Abel;
	font-size: 60px;
	line-height: 66px;
	color: #eaff00;
	border-bottom:2px solid #eaff00;
	margin-bottom:10px;
}

.topSec02W2TtlSub02{
	font-family: "Hiragino Mincho ProN";
	font-size: 22px;
	letter-spacing: 0.03em;
	line-height: 32px;
	color:#FFF;
	span{
		color: #eaff00;
	}
}

.topSec03{
    padding:60px 10px;
}

.topSec02W3{
	display: flex;
	justify-content: flex-end;
}

.topSec02W3W{
	position: relative;
}

.topSec02W3W2{
	position: relative;
	z-index: 11;
}

.topSec02W3WImg{
	position: absolute;
	left:0px;
	bottom:0px;
	z-index: 1;
}

.topSec02W3Ttl{
	color:#323232;
	position: relative;
	z-index: 11;
	margin-bottom:20px;
}

.topSec02W3Ttl01{
	font-family: "Hiragino Mincho ProN";
	font-size: 22px;
	line-height: 32px;
	background-color:#FFF;
	padding:15px 10px;
	display: block;
	margin-bottom:10px;
	width:fit-content;
	span{
		font-size: 16px;
	}
}

.topSec02W3DescP{
	background-color:#323232;
	color:#FFF;
	padding:5px 10px;
	margin-bottom:10px;
}


.topSec03W01{

}

.topSec03W01Ttl{

}

.topSec03W01TtlEn{
	font-family: Abel;
	font-size: 60px;
	line-height: 66px;
	color: #eaff00;
	border-left:2px solid #eaff00;
	margin-bottom:10px;
}

.topSec03W01TtlJa{
	font-family: "Hiragino Mincho ProN";
	font-size: 22px;
	letter-spacing: 0.03em;
	line-height: 32px;
	color: #fff;
    margin-bottom:20px;
}

.topSec03W02{
	display: flex;
	justify-content: flex-end;
	margin-bottom:60px;
}

.topSec03W02_01{
	position: relative;
	z-index: 2;
}

.topSec03W02_02_pc{
	display: none;
}

.topSec03W02_02_sp{
    margin-bottom:20px;
}

.topSec03W02En{
  font-family: Abel;
  font-size: 40px;
  color: #EAFF00;
  background-color:#222222;
  padding:20px 0px 0 0px;
  display:flex;
  align-items:center;      /* テキストの縦中央 */
  gap:12px;                /* 文字と線の間隔 */
  position:relative;
  margin-bottom:30px;
}

/* テキスト側（下線を引きたいなら） */
.topSec03W02En > span{
  display:inline-block;    /* 下線位置を安定させる */
  line-height:1;
  border-bottom:2px solid #EAFF00;
}

/* 右側へ伸びるライン */
.topSec03W02En::after{
  content:"";
  height:2px;              /* 線の太さ */
  background:#EAFF00;
  flex:1 1 auto;           /* 余白分いっぱいに伸びる */
}


.topSec03W02Ja{
	font-family: "Hiragino Mincho ProN";
	font-size: 22px;
	letter-spacing: 0.06em;
	color: #323232;
	background-color:#eaff00;
	width:fit-content;
	padding: 5px 10px;
	margin-bottom:10px;
}

.topSec03W02Ja01{
	font-family: "Hiragino Mincho ProN";
	font-size: 22px;
	letter-spacing: 0.06em;
	color: #323232;
	background-color:#FFF;
	width:fit-content;
	padding: 2px 5px;
	margin-bottom:30px;
}

.topSec03W02_03{
	position: relative;
	z-index: 10;
}

.topSec03W02Desc{
	margin-bottom:40px;
}

.topSec03W02Desc span{
	font-family: "Hiragino Sans";
	font-size: 14px;
	letter-spacing: 0.02em;
	padding: 5px;
	color: #fff;
	background-color:#323232;
	display: block;
	margin-bottom:5px;
	width:fit-content;
}

.topSec03W02Lists{
}

.topSec03W02List{
	background: #fff;
	border: 1px solid #323232;
	border-radius: 25px;
	padding:10px 15px 10px 45px;
	position: relative;
	color: #323232;
    margin-bottom:10px;
}

.topSec03W02List:before{
	content: url(../img/top/check02.png);
	position: absolute;
	top: 50%;
	left: 20px;
	transform: translateY(-50%);
}


.topSec03W03{
	display: flex;
	margin-bottom:60px;
}

.topSec03W03_01{
	position: relative;
	z-index: 2;
}

.topSec03W03_02_pc{
	display: none;
}

.topSec03W03_02_sp{
	margin-bottom:20px;
}

.topSec03W03En {
  font-family: Abel;
  font-size: 40px;
  color: #EAFF00;
  background-color: #222222;
  padding: 20px 0px 0 20px;
  margin-bottom: 30px;
  position: relative; /* 子要素の absolute の基準 */
  display: flex;
  justify-content: flex-end;
  line-height: 1.2;
}

.topSec03W03En span {
  border-bottom: 2px solid #EAFF00;
  position: relative;   /* ::before の基準 */
  z-index: 1;           /* 線より上に表示 */
  padding-left: 20px;   /* 線と文字の間隔 */
}

/* 左側に伸びる線 */
.topSec03W03En span::before {
  content: "";
  position: absolute;
  top: 50%;               /* 縦中央 */
  left: -9998px;                /* span の左端から開始 */
  transform: translateY(-50%);
  width: 9999px;          /* 十分大きくして左方向に伸ばす */
  height: 2px;
  background: #EAFF00;
  z-index: 0;
}


.topSec03W03Ja{
	font-family: "Hiragino Mincho ProN";
	font-size: 22px;
	letter-spacing: 0.06em;
	color: #323232;
	background-color:#eaff00;
	width:fit-content;
	padding: 5px 10px;
	margin-bottom:10px;
}

.topSec03W03Ja01{
	font-family: "Hiragino Mincho ProN";
	font-size: 22px;
	letter-spacing: 0.06em;
	color: #323232;
	background-color:#FFF;
	width:fit-content;
	padding: 2px 5px;
	margin-bottom:30px;
}

.topSec03W03_03{
	position: relative;
	z-index: 10;
}

.topSec03W03Desc{
	margin-bottom:40px;
}

.topSec03W03Desc span{
	font-family: "Hiragino Sans";
	font-size: 14px;
	letter-spacing: 0.02em;
	padding: 5px;
	color: #fff;
	background-color:#323232;
	display: block;
	margin-bottom:5px;
	width:fit-content;
}

.topSec03W03Lists{
	gap:40px;
}

.topSec03W03List{
	background: #fff;
	border: 1px solid #323232;
	border-radius: 25px;
	padding:10px 15px 10px 45px;
	position: relative;
	color: #323232;
    margin-bottom:10px;
}

.topSec03W03List:before{
	content: url(../img/top/check02.png);
	position: absolute;
	top: 50%;
	left: 20px;
	transform: translateY(-50%);
}


.topSec03W04{
	display: flex;
	justify-content: flex-end;
	margin-bottom:80px;
}

.topSec03W04_01{
	position: relative;
	z-index: 2;
}

.topSec03W04_02_pc{
	display: none;
}

.topSec03W04_02_sp{
	margin-bottom:20px;
}

.topSec03W04En{
  font-family: Abel;
  font-size: 40px;
  color: #EAFF00;
  background-color:#222222;
  padding:20px 0px 0 20px;
  display:flex;
  align-items:center;      /* テキストの縦中央 */
  gap:12px;                /* 文字と線の間隔 */
  position:relative;
  margin-bottom:30px;
}

/* テキスト側（下線を引きたいなら） */
.topSec03W04En > span{
  display:inline-block;    /* 下線位置を安定させる */
  line-height:1;
  border-bottom:2px solid #EAFF00;
}

/* 右側へ伸びるライン */
.topSec03W04En::after{
  content:"";
  height:2px;              /* 線の太さ */
  background:#EAFF00;
  flex:1 1 auto;           /* 余白分いっぱいに伸びる */
}

.topSec03W04Ja{
	font-family: "Hiragino Mincho ProN";
	font-size: 22px;
	letter-spacing: 0.06em;
	color: #323232;
	background-color:#eaff00;
	width:fit-content;
	padding: 5px 10px;
	margin-bottom:10px;
}

.topSec03W04Ja01{
	font-family: "Hiragino Mincho ProN";
	font-size: 20px;
	letter-spacing: 0.06em;
	color: #323232;
	background-color:#FFF;
	width:fit-content;
	padding: 2px 5px;
	margin-bottom:30px;
}

.topSec03W04_03{
	position: relative;
	z-index: 10;
}

.topSec03W04Desc{
	margin-bottom:40px;
}

.topSec03W04Desc span{
	font-family: "Hiragino Sans";
	font-size: 14px;
	letter-spacing: 0.02em;
	padding: 5px;
	color: #fff;
	background-color:#323232;
	display: block;
	margin-bottom:5px;
	width:fit-content;
}

.topSec03W04Lists{
}

.topSec03W04List{
	background: #fff;
	border: 1px solid #323232;
	border-radius: 25px;
	padding:10px 15px 10px 45px;
	position: relative;
	color: #323232;
    margin-bottom:10px;
}

.topSec03W04List:before{
	content: url(../img/top/check02.png);
	position: absolute;
	top: 50%;
	left: 20px;
	transform: translateY(-50%);
}


.top_producer_01{
	background-color: #E2E2E2;
	background-image: url(../img/top/mas01.png);
	padding: 60px 0;
}

.prodSec{
	background-color: #E2E2E2;
	background-image: url(../img/top/mas01.png);
	padding: 60px 10px 60px;
	position: relative;
}

.prodSecTtl{
	color:#222;
}

.prodSecTtlEn{
	font-family: Abel;
    font-size: 60px;
	border-left:4px solid #eaff00;
	line-height: 0.7;
}

.prodSecTtlJa{
	font-family: "Hiragino Mincho ProN";
    font-size: 32px;
}

.prodSecW02{
	margin:0 auto 120px;

}

.prodSecW02Img{
    margin-bottom:20px;
}

.prodSecW02TxtF{
	position: relative;
}

.prodSecW02TxtFAb{
}

.prodSecW02TxtFTtl{
	background-color:#E2E2E2;
	padding:20px;
	color: #323232;
}

.prodSecW02TxtFTtlSub {
  position: relative;       /* ::before の基準 */
  line-height: 1.2;
  margin-bottom:20px;
}

/* 左側の線 */
.prodSecW02TxtFTtlSub::before {
  content: "";
  position: absolute;
  top: 50%;
  left: -1020px;
  transform: translateY(-50%);
  width: 1000px;             /* 線の長さ */
  height: 2px;              /* 線の太さ */
  background: #323232;      /* 線の色 */
}



.prodSecW02TxtFTtlW{
	gap:20px;
}

.prodSecW02TxtFTtlWEn{
	font-family: Abel;
    font-size: 60px;
	margin-bottom:10px;
	span{
		border-bottom:4px solid #eaff00;
		line-height: 0.7;
		display: block;
        width:fit-content;
	}
}

.prodSecW02TxtFTtlWJa{
	font-size:20px;
	font-weight: bold;
}

.prodSecW02TxtFTtlRl{
	font-family: "Hiragino Mincho ProN";
}

.prodSecW02TxtFDesc{
	padding:30px 0 0 20px;
	color: #323232;
}

.prodSecW02TxtFDesc01{
	margin-bottom:30px;
}


.prodSecW02TxtFDesc01Ttl{
	font-family: Amiri;
	font-size: 22px;
	line-height: 32px;
}

.prodSecW02TxtFList{
	font-family: "Hiragino Sans";
	font-size: 14px;
	line-height: 32px;
	color: #323232;
}



.prodSecW03{
	margin:0 auto 30px;

}
        
.prodSecW03TxtF{
	position: relative;
}

.prodSecW03TxtFTtl{
	background-color:#E2E2E2;
	padding:20px;
	color: #323232;
}


.prodSecW03TxtFTtlWEn{
	font-family: Abel;
    font-size: 60px;
	margin-bottom:10px;
	span{
		border-bottom:4px solid #eaff00;
		line-height: 0.7;
		display: block;
        width:fit-content;
	}
}

.prodSecW03TxtFTtlSubW{
	display: flex;
	justify-content: flex-end;
	margin-bottom:20px;
}

.prodSecW03TxtFTtlSub {
  position: relative;       /* ::after の基準 */
  display: inline-block;    /* 横幅をテキストに合わせる */
  line-height: 1.2;
}

/* 右側の線 */
.prodSecW03TxtFTtlSub::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 110%;              /* テキストの右端から開始 */
  transform: translateY(-50%);
  width: 1000px;            /* 線の長さ（調整可） */
  height: 2px;             /* 線の太さ */
  background: #323232;     /* 線の色（テキストと同じ） */
}


.prodSecW03TxtFTtlWJa{
	font-size:20px;
	font-weight: bold;
}

.prodSecW03TxtFTtlRl{
	font-family: "Hiragino Mincho ProN";
}

.prodSecW03TxtFDesc{
	padding:30px 0px 0px 20px;
	color: #323232;
}

.prodSecW03TxtFDesc01{
	margin-bottom:30px;
}


.prodSecW03TxtFDesc01Ttl{
	font-family: Amiri;
	font-size: 22px;
	line-height: 32px;
}

.prodSecW03TxtFList{
	font-family: "Hiragino Sans";
	font-size: 14px;
	line-height: 32px;
	color: #323232;
}


.VoSec{
	background-color: #E2E2E2;
    background-image: url(../img/top/mas01.png);
    padding: 60px 10px;
}

.VoSecW{
	color:#323232;
}

.VoSecWTtlEn{
	font-family: Abel;
    font-size: 60px;
    margin-bottom: 10px;
	border-bottom: 4px solid #323232;
	line-height: 0.7;;
	width:fit-content;
}

.VoSecWTtlJa{
    font-family: "Hiragino Mincho ProN";
    font-size: 22px;
    letter-spacing: 0.03em;
    line-height: 32px;
	margin-bottom:30px;
}

.VoSecW01{
	margin-bottom:60px;
}

.VoSecW01Img{
	position: relative;
    margin-bottom:30px;
}

.VoSecW01Img02{
	position: absolute;
	right: 0px;
    bottom: -10px;
    width:80px;
}

.VoSecW01Txt{
}

.VoSecW01TxtTtl{
	font-family: "Hiragino Mincho ProN";
	font-size: 22px;
	letter-spacing: 0.06em;
	color: #323232;
	margin-bottom:20px;
	span{
		display: block;
		padding:10px;
		background-color:#FFF;
		width:fit-content;
		margin-bottom:10px;
	}
}

.VoSecW01TxtSubTtl{
	font-family: "Hiragino Mincho ProN";
	font-size: 22px;
	letter-spacing: 0.06em;
	line-height: 32px;
	margin-bottom:5px;
}

.VoSecW01TxtJan{
	border-radius: 15.5px;
	background: rgba(80, 80, 80, 0.8);
	border: 1px solid #fff;
	padding:5px 20px;
	color:#FFF;
	width:fit-content;
	margin-bottom:10px;
}


.topShowcase{
	padding:60px 10px;
}

.topShowcaseSec{
}

.topShowcaseSecTtlEn{
    font-family: Abel;
    font-size: 60px;
    margin-bottom: 10px;
    color: #eaff00;
    line-height: 0.7;
    width: fit-content;
	border-bottom:1px solid #eaff00;
}
.topShowcaseSecTtlJa{
	font-family: "Hiragino Mincho ProN";
    font-size: 22px;
    letter-spacing: 0.03em;
    line-height: 32px;
    margin-bottom: 30px;
	color:#FFF;
}

.topShowcaseSecList{
	margin-bottom:60px;
}

.topNews01W{

}

.topNews01WTtl{
    margin-bottom:30px;
}

.topNews01WTtlEn{
    font-family: Abel;
    font-size: 60px;
    margin-bottom: 10px;
    color: #eaff00;
    line-height: 0.7;
    width: fit-content;
	border-bottom:1px solid #eaff00;

}

.topNews01WTtlJa{
	font-family: "Hiragino Mincho ProN";
    font-size: 22px;
    letter-spacing: 0.03em;
    line-height: 32px;
	color:#FFF;
}

.topNews01WLists{

}

.topNews01WList{

}

.topNews01WListDate{
	color: #eaff00;
	font-family: "Hiragino Sans";
	font-size: 14px;
}

.topNews01WListTxt{
	font-family: "Hiragino Sans";
	font-size: 14px;
	color: #fff;
}

.topNews01WList{
	border-bottom:1px solid #FFF;
	padding-bottom:10px;
	margin-bottom:10px;
}

.topNews01WList:first-of-type{
	border-top:1px solid #FFF;
	padding-top:10px;
}

.newBu01{
    display: none;
}