@charset "utf-8";

#contents_area {
	--c-bg-gray: #efefef;
}

@media print, screen and (min-width : 768px){
	#contents_area {
		min-width: 1060px;
	}

	.section_inner {
		width: 1060px;
		margin: auto;
	}


/* ----------------------------------------
	section_history
---------------------------------------- */

	#section_history {
		padding: 227px 0 188px;
		background: #fff;
		font-size: 14px;
		line-height: calc(24 / 14);
	}
	#section_history::before,
	#section_history::after {
		content: '';
		position: absolute;
		top: 0;
		bottom: 0;
		z-index: 1;
	}
	#section_history::before {
		left: 50%;
		width: 157px;
		background: var(--c-blue);
		transform: translateX(-50%) scaleY(0);
		transform-origin: 50% 0;
	}
	#section_history::after {
		left: 0;
		right: 0;
		background: url(../img/history_mask_pc.png) 50% 0% / cover;
		mix-blend-mode: darken;
		pointer-events: none;
	}
	
	#section_history.anim_end::before {
		animation: anim_height 2s forwards;
	}

	#section_history h2 {
		width: 548px;
	}

	#section_history .heading {
		margin-top: 70px;
		font-size: 18px;
		line-height: calc(34 / 18);
	}

	#section_history .heading .copy {
		margin-bottom: 30px;
		font-size: 36px;
		line-height: 1;
	}

	#section_history .block {
		display: flex;
		z-index: 2;
		margin-left: 518px;
	}

	#section_history .year1980 {
		margin-top: 115px;
	}
	#section_history .year1999,
	#section_history .year2013,
	#section_history .year2020 {
		flex-direction: row-reverse;
		justify-content: flex-end;
		margin-left: 0;
	}
	#section_history .year1999 {
		margin-top: 60px;
	}

	#section_history .year2012 {
		margin-top: 150px;
	}

	#section_history .year2013 {
		margin-top: 155px;
	}

	#section_history .year2014 {
		margin-top: 105px;
	}

	#section_history .year2020 {
		margin-top: 85px;
	}

	#section_history .year2025 {
		margin-top: 100px;
	}

	#section_history .year,
	#section_history .contents {
		flex-shrink: 0;
	}
	#section_history .year {
		flex-shrink: 0;
		width: 120px;
	}
	#section_history .year img {
		width: auto;
		max-width: none;
		height: 126px;
	}

	#section_history .year1980 .year {
		margin: 0 6px 0 10px;
	}
	#section_history .year1980 .year img {
		height: 143px;
	}

	#section_history .year2025 .year img {
		margin-left: -24px;
	}

	#section_history .contents {
		padding-top: 5px;
	}

	#section_history .year1980 .contents {
		padding-top: 45px;
	}

	#section_history .year1999 .contents {
		width: 445px;
	}

	#section_history .year2013 .contents {
		width: 437px;
	}

	#section_history .year2020 .contents {
		width: 417px;
	}

	#section_history .title {
		margin-bottom: 18px;
		white-space: nowrap;
		color: #fff;
		font-size: 28px;
		line-height: 1;
	}
	#section_history .title span {
		display: inline-flex;
		align-items: center;
		height: 32px;
		margin-bottom: 6px;
		padding: 0 12px;
		background: var(--c-blue);
		vertical-align: top;
	}
	#section_history .title span+span {
		padding-left: 0;
	}

	#section_history .title br.sp+span {
		margin-left: -12px;
		padding-left: 0;
	}
	#section_history .title br.sp+span img {
		margin-left: 12px;
	}

	#section_history .title img {
		width: auto;
		height: 25px;
	}
	#section_history .title sup {
		margin: 0 -2px 0 2px;
		font-size: 12px;
	}

	#section_history .subtitle {
		margin-bottom: 10px;
		font-size: 20px;
		line-height: 1.5;
	}
	#section_history .subtitle:last-child {
		margin-bottom: 0;
	}

	#section_history .contents li {
		position: relative;
		padding-left: 1.2em;
	}
	#section_history .contents li::before {
		content: '⚫︎';
		position: absolute;
		left: 0;
		top: 0;
	}

	#section_history .img {
		overflow: hidden;
		position: absolute;
		z-index: 1;
	}

	#section_history .img01 {
		left: 437px;
		width: 998px;
		margin-top: -307px;
	}

	#section_history .img02 {
		left: -186px;
		width: 1006px;
		margin-top: -264px;
	}

	#section_history .img03 {
		left: 437px;
		width: 919px;
		margin-top: -390px;
	}

	#section_history .img04 {
		left: -575px;
		width: 1178px;
		margin-top: -449px;
	}

	#section_history .img05 {
		left: 365px;
		width: 861px;
		margin-top: -330px;
	}

	#section_history .img06 {
		left: -43px;
		width: 526px;
		margin-top: -233px;
	}

	#section_history .btn {
		z-index: 1;
		width: 370px;
		height: 57px;
		margin: 195px auto 0;
		background: #fff;
		color: var(--c-blue);
	}
	#section_history .btn::after{
		background-image: url(/ehev/img/icon_outerlink_blue.svg);
	}


/* ----------------------------------------
	section_philosophy
---------------------------------------- */

	#section_philosophy {
		padding: 186px 0 224px;
		background: #0f2130;
		color: #fff;
	}
	#section_philosophy::before {
		content: '';
		position: absolute;
		left: 50%;
		top: 0;
		bottom: 0;
		z-index: 1;
		width: 157px;
		background: #102d45;
		transform: translateX(-50%) scaleY(0);
		transform-origin: 50% 0;
	}
	
	#section_philosophy.anim_end::before {
		animation: anim_height 2s forwards;
	}

	#section_philosophy h2 {
		width: 281px;
	}

	#section_philosophy .heading {
		margin-top: 70px;
		font-size: 18px;
		line-height: calc(34 / 18);
	}

	#section_philosophy .heading .copy {
		margin-bottom: 30px;
		font-size: 36px;
		line-height: 1;
	}

	#section_philosophy .nav {
		display: flex;
		margin-top: 127px;
	}
	#section_philosophy .nav li {
		width: 290px;
		height: 113px;
		border-right: 2px solid;
	}
	#section_philosophy .nav li:first-child {
		border-left: 2px solid;
	}
	#section_philosophy .nav a {
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		text-align: center;
		height: 100%;
		font-size: 24px;
		line-height: 1;
	}
	#section_philosophy .nav a::after {
		content: '';
		display: block;
		width: 12px;
		height: 22px;
		margin-top: 24px;
		background: #fff;
		-webkit-mask: url(/ehev/img/btn_arrow_link.svg) 50% 50% / contain no-repeat;
		mask: url(/ehev/img/btn_arrow_link.svg) 50% 50% / contain no-repeat;
		transform: rotate(90deg);
		transition: .3s transform;
	}
	#section_philosophy .nav a:hover::after {
		transform: rotate(90deg) translateX(3px);
	}
	#section_philosophy .nav span span {
		display: block;
		font-size: 20px;
		margin-bottom: 19px;
	}

	#section_philosophy .block {
		margin-top: 170px;
	}

	#section_philosophy h3 {
		display: inline-block;
		padding: 4px 10px;
		background: #fff;
	}
	#section_philosophy h3 span {
		display: inline-block;
		vertical-align: top;
		color: var(--c-text);
		font-size: 32px;
		line-height: calc(34 / 32);
	}
	#section_philosophy h3 span:first-child {
		margin-right: 15px;
		padding-right: 15px;
		border-right: 2px solid;
	}

	#section_philosophy .box {
		display: flex;
		justify-content: space-between;
		margin-top: 83px;
	}

	#section_philosophy .text {
		width: 468px;
	}
	#section_philosophy .text p {
		margin-top: 40px;
	}
	#section_philosophy .text p:first-child {
		margin-top: 0;
	}

	#section_philosophy .text .note {
		margin-top: 14px;
		font-size: 12px;
		line-height: calc(22 / 12);
	}

	#section_philosophy figure {
		width: 545px;
	}
	#section_philosophy figure li {
		margin-top: 10px;
	}
	#section_philosophy figure li:first-child {
		margin-top: 0;
	}
}