/*====================================================================================================

  TOPPAGE

====================================================================================================*/

.toppage {
	margin: 0;
	padding: 0;
	overflow: hidden;
}
.toppage h3 { display: flex; align-items: center; column-gap: 13px; }
.toppage h3 b {
	color: #DC000C;
	font-size: 250%;
	letter-spacing: 0.02em;
	font-family: yantramanav, sans-serif;
}
.toppage h3 small {
	color: #1A1311;
	font-size: 100%;
	font-weight: 700;

	font-family: zen-kaku-gothic-new, sans-serif;
}


/*** MAINIMG *******************************************************************/
/* .mainimg {
	height: 738px;
	position: relative;
	background: url(../../image/top/mainimg.jpg) no-repeat center right;
	background-size: cover;
}
.mainimg h2 {
	color: #FFF;
	font-size: 450%;
	font-weight: 700;
	line-height: 160%;
	position: absolute;
	left: 0;
	right: 0;
	top: 50%;
	letter-spacing: 0.1em;
	transform: translateY(-50%);
	text-shadow: 0 3px 16px rgba(0, 0, 0, 0.16);
	font-family: zen-kaku-gothic-new, sans-serif;
} */
.top_slider_wrap {
	--block-gap:75px;
	--slider-width:min(1360px, 66vw);
	--slider-margin-inline:15px;


	position:relative;
	margin-block:var(--block-gap) calc(var(--block-gap) * 2);
}
.top_slider_wrap:before {
	content:"";
	position:absolute;
	display:block;
	width:100%;
	height:calc(100% + var(--block-gap) * 2);
	background-color:#F5F5F5;
	top:calc(var(--block-gap) * -1);
	z-index:-1;
}
.top_slider_wrap .slick-slide {
	margin-inline:var(--slider-margin-inline);
	width:var(--slider-width);
}
.top_slider_wrap .slick-slide img {
	width:100%;
	height:auto;
	aspect-ratio:340/191;
	object-fit:cover;
}

/* arrows */
.top_slider_wrap .slick-arrow {
	--arrow-pos:7rem;

	position:absolute;
	top:50%;
	width: 55px;
	height: 55px;
	display: flex;
	cursor: pointer;
	background: #fff  no-repeat center / auto;
	border-radius: 50%;
	align-items: center;
	justify-content: center;
	border: 1px solid #E1E1E1;
}

.top_slider_wrap .slick-arrow.topSlider_prev {
	left:calc(50% - var(--slider-width) / 2 - var(--slider-margin-inline));
	background-image:url(../image/arrow_left1.svg);
	translate:-50% -50%;
}
.top_slider_wrap .slick-arrow.topSlider_next {
	right:calc(50% - var(--slider-width) / 2 - var(--slider-margin-inline));
	background-image:url(../image/arrow_right1.svg);
	translate:50% -50%;
}


/* dots */
.top_slider_wrap .slick-dots { display:flex; justify-content:center; gap:0 20px; bottom:calc(var(--block-gap) / -2);}
.top_slider_wrap .slick-dots li { width:40px; height:auto; aspect-ratio:40/6;}
.top_slider_wrap .slick-dots li button { width:100%; height:100%; padding:0px;}
.top_slider_wrap .slick-dots li button:before { content:""; display:block; width:100%; height:100%; background-color:#9F9F9F; opacity:1.0;}
.top_slider_wrap .slick-dots li.slick-active button:before { background-color:#DC000C; opacity:1.0;}



/*** PICKUP *******************************************************************/
.pickup { margin-block: 110px 70px; position: relative; }
/* .pickup .pickup_slider { overflow: visible; clip-path: inset(-100% -100% -100% 0); } */
.pickup .pickup_slider { container-type:inline-size;}
.pickup .pickup_slider li {
	/* --margin-right:65px;
	width:335px; */
	--margin-right:8.15cqw;
	width:27.9cqw;
	margin-right:var(--margin-right);
}
.pickup .pickup_slider .slick-list { overflow: visible; }
.pickup .pickup_slider li::before { right:calc((var(--margin-right) / 2) * -1); }
.pickup .slider_navi {
	position: absolute;
	right: 0;
	top: -15px;
	display: flex;
	column-gap: 18px;
} 
.pickup .slider_navi li {
	width: 55px;
	height: 55px;
	display: flex;
	cursor: pointer;
	background: #FFF;
	border-radius: 50%;
	align-items: center;
	justify-content: center;
	border: 1px solid #E1E1E1;
}
.pickup .slider_navi li img { width: auto; }

.pickup .pickup_slider .title:after { translate:0 -50%;}

@media only screen and (min-width:1301px) {
	.pickup { /*margin-block: 145px 160px;*/ margin-block:145px 130px; }
	.pickup .pickup_slider li { width: 400px; margin-right: 100px; }
	.pickup .pickup_slider li::before { right: calc((100px / 2) * -1); }
}


/*** TOP VISUALS (About, Innovation, ESG) *******************************************************************/

.top_visuals .tit1 {
    color: #FFF;
    position: absolute;
    left: -15px;
    right: 0;
    bottom: -52px;
    /* font-size: 10vw; */
	font-size:8.177vw;
    line-height: 80%;
    letter-spacing: 0.06em;
    -webkit-text-stroke-width: 0.008em;
    -webkit-text-stroke-color: #BEBEBE;
    -webkit-text-fill-color: transparent;
    font-family: "Erte Bold Italic", sans-serif;
    /* width: 1000px; */
	width:max-content;
}
@media only screen and (min-width:1301px) {
	.top_visuals .tit1 {
		letter-spacing: initial;
	}
}
.top_visuals .tit1.right {
	left: auto;
	right: 0;
	bottom: 0;
	text-align: right;
}
.top_visuals .tit1.bottom {
	bottom: 0;
}
.top_visuals { position: relative; }
.top_visuals::before {
	content: "";
	--cut: 143px;
	position: absolute;
	top: 50%;
	left: 42%;
	z-index: -1;
	width: 754px;
	height: calc(100% + 140px);
	background: #1A1311;
	transform: translateY(-50%);
	clip-path: polygon(var(--cut) 0,100% 0,100% 100%, 0 100%);
}
@media only screen and (min-width:1301px) {
	.top_visuals::before {
		right: 0;
		width: 100%;
	}
}
.top_visuals .txt_box {
	background: #FFF;
	position: absolute;
	bottom: -71px;
	padding: 40px;
	z-index: 1;
	width: fit-content;
	left: calc((100% - 92.3%) / 2);
}
@media only screen and (min-width:1301px) {
	.top_visuals .txt_box {
		left: calc((100% - 1400px) / 2);
    right: auto;
	}
}
.top_visuals .mid1 { position: absolute; top: auto; bottom: 100%; }
.top_visuals .mid2 {
	color: #1A1311;
	font-size: 231.3%;
	font-weight: 700;
	line-height: 100%;
	font-family: zen-kaku-gothic-new, sans-serif;
}
.top_visuals .mid3 {
	color: #FFF;
	display: none;
	position: absolute;
	font-size: 100%;
	font-weight: 700;
	padding-left: 20px;
	font-family: zen-kaku-gothic-new, sans-serif;
}
.top_visuals .mid3::before {
	content: "";
	position: absolute;
	left: 0;
	top: 50%;
	width: 7px;
	height: 7px;
	border-radius: 50%;
	background: #DC000C;
	transform: translateY(-50%);
}
.top_visuals .come { color: #555; font-weight: 500; margin-block: 20px 30px; }
.top_visuals .b_more { width: 183px; }
.top_visuals .b_more a {
	height: 46px;
	background: #1A1311;
	position:relative;
	overflow:hidden;
	z-index:1;
}
.top_visuals .b_more a:before{
	content:"";
	position:absolute;
	display:block;
	width:0%;
	height:100%;
	inset:0 auto auto 0;
	background:#DC000C;
	transition:width .4s cubic-bezier(.19,1,.22,1);
	z-index:-1;
}
.top_visuals .b_more a:after { right: 8%; transition:background .4s cubic-bezier(.19,1,.22,1);}
.top_visuals .b_more a:hover:before { width:100%;}
.top_visuals .b_more a:hover:after { background:#fff;}
.top_visuals .photo img { height: 400px; object-fit: cover; object-position: center; }

@media only screen and (min-width:1301px) {
	.top_visuals .photo img { height: 600px; }
}


/*** ABOUT *******************************************************************/
.top_about {}
.top_about::before { display: none; }
.top_about .txt_box {
	top: 50%;
	bottom: auto;
	padding: 0;
	width: auto;
	background: none;
	transform: translateY(-50%);
}
.top_about .mid1 { max-width: 24.5%; left: 0; top: 0; }
.top_about .mid2 { color: #FFF; }
.top_about .come { color: #FFF; }





/*** INNOVATION *******************************************************************/
.top_innovation { margin-block: 220px 290px; }
.top_innovation::before {
	left: auto;
	right: 42%;
	top: 50%;
	background: #DC000C;
	clip-path: polygon(0 0,100% 0,calc(100% - var(--cut)) 100%, 0 100%);
}
.top_innovation .mid1 { max-width: 43.7%; right: 0; }
.top_innovation .photo { clip-path: inset(0 0 0 28.1%); }
.top_innovation .photo img { object-position: left; }

@media only screen and (min-width:1301px) {
	.top_innovation::before {
		left: 0;
		width: auto;
	}
}



/*** ESG/SDGs *******************************************************************/
.top_esg { margin-bottom:240px;}
.top_esg .txt_box { left: auto; right: calc((100% - 92.3%) / 2); }
.top_esg .mid1 { max-width: 38.1%; }
.top_esg .photo { clip-path: inset(0 28.1% 0 0); }
.top_esg .photo img { object-position: right; }

@media only screen and (min-width:1301px) {
	.top_esg { margin-bottom:360px;}
	.top_esg .mid1 { max-width: 47.1%; }
	.top_esg .txt_box { right: calc((100% - 1400px) / 2); left: auto; }
	.top_esg .photo { clip-path: inset(0 16% 0 0); }
}



/*** NOTICE (for NEWS, EVENTS, & PRODUCT) *******************************************************************/
.top_notice {
	display: flex;
	overflow: hidden;
	/* margin-block: 220px 150px; */
	margin-block:0;
	justify-content: space-between;
}
.top_notice h3 small { display: none; font-size: 81.3%; }
.top_notice .notice_box { width: 27.9%; }
.top_notice .notice_box .lists_box2::after {
	content: "";
	position: absolute;
	top: 0;
	right: -14.7%;
	width: 1px;
	height: 100%;
	background: #EEE;
}
.top_notice .notice_box .lists_box2 li { border-bottom: none; }
.top_notice .notice_box .lists_box2 li+li { border-top: 1px solid #EEE; }

@media only screen and (min-width:1301px) {
	.top_notice { /*margin-block: 315px 215px;*/ margin-block:0 50px;}
	.top_notice h3 small { display: block; }
}

.home .lists_box2 {
    margin-top: 40px;
}
.home .lists_box2 .title a:hover:after { width:calc(var(--w) + 3px);}
.home .lists_box2 .title a span { font-size:unset}

/*** PRODUCT *******************************************************************/
.top_product {
	height: 400px;
	max-width: 100%;
	position: relative;
	background: url(../../image/top/product_bg2.jpg) no-repeat bottom;
	background-size: cover;
}
.top_product .mid1 {
	color: #FFF;
	position: absolute;
	top: 0;
	left: 15.8vw;
	width: 421px;
	height: 71px;
	text-indent: -9999px;
	background: url(../../image/top/product_tit.svg) no-repeat;
	background-size: contain;
}
.top_product .txt_box { position: relative; top: 50%; left: 28.9vw; transform: translateY(-50%); max-width: fit-content; }
.top_product .catch {
	color: #FFF;
	font-size: 206.3%;
	font-weight: 700;
	line-height: 130%;
	font-family: zen-kaku-gothic-new, sans-serif;
}

.top_product .catch1 { display: none; }
.top_product .b_more { width: 250px; margin-top:20px; }
.top_product .b_more a {
	height: 46px;
	background: rgba(26, 19, 17, 0.61);
}

@media only screen and (min-width:1301px) {
	.top_product {
		height: 620px;
		max-width: 1400px;
		background: url(../../image/top/product_bg2.jpg) no-repeat center -83px;
		background-size: auto 100%;
	}
	.top_product::before {
		content: "";
		position: absolute;
		z-index: -1;
		left: -50vw;
		right:-50vw;
		top: -110px;
		margin: auto;
		width: 100vw;
		height: 420px;
		background: #F8F8F8;
	}
	.top_product .mid1 {
		text-indent: 0;
		position: absolute;
		left: 0;
		top: auto;
		bottom: -33px;
		z-index: 2;
		width: auto;
		height: auto;
		font-size: 975%;
		font-weight: 700;
		line-height: 100%;
		letter-spacing: 0.07em;
		background: none;
		font-family: yantramanav, sans-serif;
		pointer-events:none;
	}
	.top_product .txt_box { position: initial; transform: none; }
	.top_product .catch span { font-size: 109.1%; }
	.top_product .catch1 {
		position: absolute;
		left: 125px;
		bottom: 200px;
		display: block;
	}
	.top_product .catch2 { display: none; }
	.top_product .b_more {
		position: absolute;
		left: 0;
		bottom: 0;
		width: 100%;
	}
	.top_product .b_more a {
		position:relative;
		height: 83px;
		padding: 0 75px;
		border-radius: 0;
		justify-content: flex-end;
		background: #736F6E url(../image/icon_link.svg) no-repeat 97%;
		z-index:1;
	}
	.top_product .b_more a::before {
		content:"";
		position:absolute;
		display:block;
		inset:0 auto auto 0;
		background:#DC000C;
		width:0;
		height:100%;
		transition:width 0.4s cubic-bezier(.19,1,.22,1);
		z-index:-1;
	}
	.top_product .b_more a::after { display: none; }
	.top_product .b_more a:hover:before { width:100%;}
}



/*** SPONSOR *******************************************************************/
.sponsor { margin-block: 150px 210px; }
.sponsor .sponsor_list { display: flex; margin-top: 25px; border-left: 1px solid #EEE; }
.sponsor .sponsor_list li { width: 25%; }
.sponsor .sponsor_list li a {
	display: flex;
	height: 11vw;
	padding: 0 19%;
	position: relative;
	align-items: center;
	border: 1px solid #EEE;
	border-left: none;
}
.sponsor .sponsor_list li a::before {
	content: "";
	opacity: 1;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: calc(100% - 1px);
	height: calc(100% - 1px);
	background-color: #FFF;
	transition-property: transform;
	transition-duration: 0.2s;
	transition-timing-function: cubic-bezier(.165, .84, .44, 1);
}
.sponsor .sponsor_list li a:hover { z-index: 100; }
.sponsor .sponsor_list li a:hover::before {
	opacity: 1;
	transform: scale(1.15);
	box-shadow: 0 30px 60px -8px rgba(26, 19, 17, 0.2);
}
.sponsor .sponsor_list li a:hover img { opacity:1; }


@media only screen and (min-width:1301px) {
	.sponsor { margin-block: 285px 210px; }
}



/*** MOVIES *******************************************************************/
.movies {
    margin-block: 100px;
    display: flex;
    justify-content: space-between;
    gap:4vw;
}
.movies iframe {
    width:100%;
    height:auto;
    aspect-ratio:16/9;
}














