@charset "UTF-8";

/* ==========================================================================
   #mv
========================================================================== */
#mv::before {
	content: '';
	background: linear-gradient(0deg, transparent 0%, #354752 100%);
	width: 100%;
	height: 50vh;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	mix-blend-mode: multiply;
	opacity: .8;
}
#mv .container {
	align-items: flex-end!important;
	position: relative;
	z-index: 3;
}
#mv #mainVideo {
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: absolute;
	top: 0;
	left: 0;
}
#mv .en_ttl {
	font-size: calc(84vw/5.42);
	line-height: 1;
}
#mv .en_txt {
	margin: 0 0 1.5rem;
	line-height: 1.5;
	font-size: min(3vw, .857rem);
}
#mv h2 {
	line-height: 1.5;
	font-size: 2rem;
}
@media (min-width: 576px) {
	#mv .en_ttl {
		font-size: calc(495px/5.42);
	}
}
@media (min-width: 768px) {
	#mv .en_ttl {
		font-size: calc(678px/5.42);
	}
}
@media (min-width: 992px) {
	#mv .en_ttl {
		font-size: 140px;
	}
}

/* ==========================================================================
   #about
========================================================================== */
#about {
	background: linear-gradient(330deg,var(--l-blue) 220px, var(--white) 100%);
	position: relative;
}
#about::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: url(img/about_bg.svg) no-repeat 50% 7rem / 140%;
	mix-blend-mode: multiply;
}
#about .cont-header .en_ttl {
	text-transform: inherit;
}
#about .slide-photo {
	width: 100%;
	height: 360px;
	clip-path: url(#curveClip);
}
@media (orientation: landscape){
    #about {
    	background: linear-gradient(320deg,var(--l-blue) 220px, var(--white) 100%);
    }
    #about::before {
    	background-size: 100%;
    }
}
@media (min-width: 992px) {
	#about::before {
		background-position: 50% 16rem;
	}
	#about .cont-header .huge2 { 
		line-height: 1.3!important;
	}
	#about .slide-photo {
		height: 510px;
	}
}


/* ==========================================================================
   #philosophy
========================================================================== */
#philosophy {
	background: linear-gradient(330deg,var(--l-blue) 0, var(--white) 100%);
	position: relative;
}
#philosophy::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: url(img/ring_bg.svg) no-repeat 50% 5rem / 140%;
	mix-blend-mode: multiply;
}
@media (orientation: landscape){
	#philosophy {
    	background: linear-gradient(320deg,var(--l-blue) 0, var(--white) 100%);
    }
    #philosophy::before {
    	background-size: 100%;
    }
}
@media (min-width: 992px) {
	#philosophy::before {
		display: none;
	}
}


/* ==========================================================================
   #business
========================================================================== */
#business {
	background: linear-gradient(330deg,var(--l-blue) 0, var(--white) 100%);
	position: relative;
}
#business::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: url(img/ring_bg.svg) no-repeat 50% 7rem / 140%;
	mix-blend-mode: multiply;
}
@media (orientation: landscape){
    #business {
    	background: linear-gradient(320deg,var(--l-blue) 0, var(--white) 100%);
    }
    #business::before {
    	background-size: 100%;
    }
}
@media (min-width: 768px) {
	#business .more {
		margin-top: -11.5rem!important;
	}
}
@media (min-width: 992px) {
	#business::before {
		background-position: 50% 5rem;
	}
	#business .container {
		position: relative;
	}
	#business .cards > div:nth-of-type(even) {
		margin-top: 5rem;
	}
	#business .more {
		margin-top: 0!important;
		position: absolute;
		top: 8rem;
		right: 1.5rem;
	}
}

/* ==========================================================================
   #ir
========================================================================== */
#ir {
	background: linear-gradient(rgba(255,255,255,.9), rgba(255,255,255,.9)), url(img/ir_bg.jpg) no-repeat center / cover;
}


/* ==========================================================================
   #sustainability
========================================================================== */
.bg-white:has(#sustainability) {
	position: relative;
}
.bg-white:has(#sustainability)::before {
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background: url(img/ring_bg.svg) no-repeat 50% 19rem / 140%;
	mix-blend-mode: multiply;
}
@media (orientation: landscape){
    .bg-white:has(#sustainability)::before {
    	background-size: 100%;
    }
}
@media (min-width: 992px) {
	.bg-white:has(#sustainability)::before {
		background-position: 50% 45%;
	}
}



.over {
	position: relative;
}
.overlay-txt {
	right: 0;
    bottom: -1px;
}



/* ==========================================================================
   #recruit
========================================================================== */
@media (min-width: 992px) {
	#recruit .overlay-txt {
		left: 0;
		text-align: left;
	}
}
















