@charset "utf-8";

@media all {
	.c-message__title {
		font-size: 3.2rem;
		width: 1100px;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		z-index: 10;
	}
	
	.c-message__name {
		letter-spacing: .075em;
		margin: 0 0 3.5% 62.5%;
		bottom: 0;
		left: 0;
		transform: translate(-50%,0);
		z-index: 10;
	}
	
	.c-message__name em {
		font-size: 3.2rem;
		margin: .35em 0 0;
	}
	
	:lang(en) .c-message__name em {
		letter-spacing: 0;
	}
	
	.is-HomePage .c-message figure {
		padding: 25.5% 0 0;
	}
	
	.c-policy__title {
		margin: 0 0 0 63.5%;
		top: 50%;
		left: 0;
		transform: translate(-50%,-50%);
		z-index: 10;
	}
	
	.c-policy__title span {
		font-size: 3.2rem;
		white-space: nowrap;
	}
	
	.c-policy__title em {
		font-size: 2.4rem;
		white-space: nowrap;
		margin: .5em 0 0;
		position: relative;
	}
	
	.c-policy__title em {
		font-size: 3.2rem;
		letter-spacing: .25em;
	}
	
	:lang(en) .c-policy__title {
		margin-left: 67.5%;
	}
	
	:lang(en) .c-policy__title em {
		font-size: 3.2rem;
		letter-spacing: 0;
		white-space: normal;
		padding-left: 1.25em;
	}
	
	:lang(en) .c-policy__title em:before {
/*		content: '';*/
		width: 1em;
		height: 2px;
		background: #333;
		display: block;
		position: absolute;
		top: .5em;
		left: 0;
	}
	
	.c-policy figure {
		padding: 25.5% 0 0;
	}
	
	.c-product {
		padding: 85px 0 120px;
		background: #ebebeb;
	}
	
	.c-product .u-inner {
		padding: 0 50px;
	}
	
	.c-product__mainTitle em {
		font-size: 3.2rem;
	}
	
	.c-product__items {
		margin: 0 -16px;
	}
	
	.c-product__item {
		padding: 0 16px;
	}
	
	.c-product__item a {
		padding: 0 30px 45px;
		background: #fff;
	}
	
	.c-product__item figure {
		padding: 59.75% 0 0;
	}
	
	.c-product__image {
		margin: 0 -30px;
	}
	
	.c-product__title {
		margin: 35px 0 0;
	}
	
	.c-product__title:after {
		content: '';
		width: 120px;
		height: 1px;
		background: #707070;
		display: block;
		position: absolute;
		bottom: 12px;
		left: 92px;
	}
	
	.c-product__icon {
		width: 80px;
	}
	
	.c-product__name {
		font-size: 2.4rem;
		line-height: 1.25;
		width: calc(100% - 80px);
		padding: 0 0 1em 12px;
	}
	
	.c-product__item:nth-child(3) .c-product__name {
		padding-bottom: .85em;
	}
	
	.c-product__text {
		min-height: 10em;
		margin: 25px 0 0;
	}
	
	.c-product__button span {
		padding: 1em 4em 1.25em 3em;
		border: 1px solid #adadad;
		display: inline-block;
		position: relative;
	}
	
	.u-thumbListMenu {
		margin-bottom: 80px;
	}
	
	.g-main {
		min-height: 440px;
	}
	
	.c-message__text {
		width: 70%;
		padding: 0 40px 0 0;
	}
	
	.c-message__image {
		width: 30%;
	}
	
	.u-thumbListMenu__item figure {
		padding: 51% 0 0;
	}
	
	
	.c-historySlide {
		padding: 0 25px;
		position: relative;
	}
	
	.c-historySlide__item {
		padding: 0 5px;
	}
	
	.c-historySlide__item a {
		padding: 40% 0 0;
		display: block;
		position: relative;
	}
	
	.c-historySlide__item a:after {
		content: '';
		width: 100%;
		height: 100%;
		border: 1px solid rgba(0,0,0,.25);
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 20;
	}
	
	.c-historySlide__title {
		text-align: center;
		width: 100%;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translate(0,-50%);
		z-index: 10;
	}
	
	.c-historySlide__title em {
		color: #fff;
		font-size: 3.4rem;
		font-weight: 700;
		display: block;
		text-shadow: 0 3px 3px #000;
	}
	
	.c-historySlide__title small {
		color: #fff;
		font-size: 1.3rem;
		margin: .5em 0 0;
		display: block;
		text-shadow: 0 3px 3px #000;
	}
	
	.c-historySlide__image {
		width: 100%;
		height: 100%;
		background: #000;
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		overflow: hidden;
		z-index: 0;
	}
	
	.c-historySlide__image img {
		width: 100%;
		height: 100%;
		object-fit: cover;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%,-50%);
		transition: .3s cubic-bezier(0.75, 0, 0.35, 1);
	}
	
	.no-touch .c-historySlide__item a:hover img {
		opacity: .5;
		transform: translate(-50%,-50%) scale(1.1);
	}
	
/*
	.c-historySlide__item:last-child .c-historySlide__title em {
		font-size: 2.6rem;
	}
*/
	
	.slick-arrow {
		text-indent: -9999px;
		width: 20px;
		height: 100%;
		background: url("/_assets/img/common/arrow-01-black.svg") no-repeat center / 70% auto;
		position: absolute;
		top: 50%;
		transform: translate(0,-50%);
		overflow: hidden;
	}
	
	.slick-disabled {
		opacity: .25;
	}
	
	.slick-prev {
		left: 0;
		transform: translate(0,-50%) scale(-1,1);
	}
	
	.slick-next {
		right: 0;
	}
	
	.c-historyList__item {
		padding: 0 0 60px;
		position: relative;
	}
	
	.c-historyList__item:after {
		content: '';
		width: 2px;
		height: 100%;
		background: #000;
		position: absolute;
		top: 10px;
		left: 50px;
		z-index: 0;
	}
	
	.c-historyList__time {
		margin: -10px 0 0;
		padding: 10px 0;
		background: #fff;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 10;
	}
	
	.c-historyList__time em {
		font-size: 3.4rem;
		font-weight: 700;
		text-align: center;
		display: block;
	}
	
	.c-historyList__time em:after {
		content: '～';
		font-size: 2rem;
		padding: 0 0 0 .25em;
		display: inline-block;
		transform: translate(0,-.25em);
	}
	
	.c-historyList__time small {
		font-size: 1.6rem;
		text-align: center;
		margin: .5em 0 0;
		display: block;
	}
	
	.c-historyList__time small:after {
		content: '～';
		font-size: 1.2rem;
		transform: translate(0,-.5em);
	}
	
	.c-historyList__inner {
		padding: 0 0 0 120px;
	}
	
	.c-historyList h3 {
		font-size: 2.2rem;
		margin-bottom: 10px;
	}
	
	.c-historyList__item--last .c-historyList__time em {
		font-size: 3rem;
	}
	
	.c-historyList__item--last .c-historyList__time em:after {
		display: none;
	}
	
	.c-historyList__item--last h3 {
		padding-top: 75px;
	}
	
	.c-outlineMap {
		padding: 50% 0 0;
		position: relative;
	}
	
	.c-outlineMap iframe {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	
	.c-businessMain__title {
		font-size: 3.2rem;
		font-weight: 400;
		line-height: 1.5;
		letter-spacing: .05em;
	}
	
	.c-businessMain__text {
		line-height: 1.75;
		margin: 20px 0 0;
	}
	
	.c-businessList__title {
		display: flex;
		align-items: center;
	}
	
	.c-businessList__titleIcon {
		width: 110px;
	}
	
	.c-businessList__titleName {
		font-size: 2.4rem;
		font-weight: 700;
		margin: 0 0 0 25px;
		padding: 0 0 25px;
		border-bottom: 1px solid #333;
	}
	
	.c-businessList__inner {
		margin: 20px 0 0;
		display: flex;
	}
	
	.c-businessList__image {
		width: 65.35%;
	}
	
	.c-businessList__text {
		width: calc(100% - 65.35%);
		padding: 0 0 0 20px;
	}
	
	.c-businessList__text .u-text {
		font-size: 1.4rem;
		transform: translate(0,-.5em);
	}
	
	.c-groupMap__maparea {
		position: relative;
	}
	
	.c-groupMap__maparea a {
		min-width: 5%;
		min-height: 1.25em;
		display: block;
/*		border: 2px solid #69FF00;*/
		position: absolute;
		top: 0;
		left: 0;
		z-index: 10;
	}
	
	:lang(en) .c-groupMap__maparea a {
		min-width: 8.25%;
	}
	
	.c-groupMap__mapareabutton--1 { margin: 28.3% 0 0 45.7%; }
	.c-groupMap__mapareabutton--2 { margin: 26.7% 0 0 34.7%; }
	.c-groupMap__mapareabutton--2b { margin: 29.2% 0 0 35.5%; }
	.c-groupMap__mapareabutton--3 { margin: 32.2% 0 0 41.1%; }
	.c-groupMap__mapareabutton--4 { margin: 37.9% 0 0 25.9%; width: 10%; }
	.c-groupMap__mapareabutton--5 { margin: 24.7% 0 0 39.5%; }
	.c-groupMap__mapareabutton--6 { margin: 23.3% 0 0 2.1%; width: 7%; }
	.c-groupMap__mapareabutton--6b { margin: 21.5% 0 0 12.6%; width: 7%; }
	.c-groupMap__mapareabutton--7 { margin: 24.4% 0 0 28.25%; width: 7%; }
	
	:lang(en) .c-groupMap__mapareabutton--1 { margin: 28.3% 0 0 45.7%; }
	:lang(en) .c-groupMap__mapareabutton--2 { margin: 26.7% 0 0 30.9%; }
	:lang(en) .c-groupMap__mapareabutton--2b { margin: 29.2% 0 0 31.9%; }
	:lang(en) .c-groupMap__mapareabutton--3 { margin: 32.2% 0 0 41.1%; }
	:lang(en) .c-groupMap__mapareabutton--4 { margin: 37.9% 0 0 26.6%; width: 10%; }
	:lang(en) .c-groupMap__mapareabutton--5 { margin: 24.7% 0 0 37.2%; }
	:lang(en) .c-groupMap__mapareabutton--6 { margin: 23.3% 0 0 2.1%; width: 7%; }
	:lang(en) .c-groupMap__mapareabutton--6b { margin: 21.5% 0 0 12.6%; width: 7%; }
	:lang(en) .c-groupMap__mapareabutton--7 { margin: 24.4% 0 0 28.25%; width: 7%; }
		
	.c-grouList__title {
		font-size: 1.6rem;
		font-weight: 700;
		line-height: 1.5;
		margin: 10px 0 0;
	}
	
	.c-grouList__title small {
		font-size: 1.2rem;
		font-weight: 400;
		display: block;
	}
	
	.c-grouList__item .u-text {
		font-size: 1.4rem;
		line-height: 1.5;
		text-align: left;
		margin: 10px 0 0;
	}
	
	.c-grouList__map {
		font-size: 1.2rem;
		line-height: 1;
		text-align: right;
		margin: 5px 0 0;
	}
	
	.c-grouList__map a:before {
		content: '';
		width: 9px;
		height: 13px;
		margin: 0 5px 0 0;
		display: inline-block;
		background: url("/_assets/img/common/icon-mapPin-01.svg") no-repeat center /cover;
		transform: translate(0,.15em);
	}
	
	.c-grouList__specItems {
		margin: 5px 0 0;
		display: flex;
	}
	
	:lang(en) .c-grouList__specItems {
		display: block;
	}
	
	.c-grouList__specItems--flexNone {
		display: block;
	}
	
	.c-grouList__specItems li {
		color: #fff;
		font-size: 1.3rem;
		line-height: 1.35;
		margin: 3px 3px 0 0;
		padding: .25em .5em .5em;
		background: #333;
	}
	
	:lang(en) .c-grouList__specItems li {
		margin-right: 0;
	}
	
	.c-grouList__item .c-grouList__link {
		font-size: 1.2rem;
		text-align: right;
	}
	
	.c-grouList__item .c-grouList__link .u-icon:before {
		width: 13px;
		height: 12px;
	}
	
	.c-grouList__subInfo {
		font-size: 1.2rem;
		margin: .75em 0 1em;
		display: block;
	}
	
	.c-grouList__subInfo small {
		color: #fff;
		line-height: 1;
		margin: .5em 0 0;
		padding: .5em .75em;
		display: inline-block;
		background: #ff5519;
	}
	
	.u-title__page--small {
		font-size: 2rem;
		font-weight: 400;
		margin: .5em 0 0;
		display: block;
	}
	
	:lang(en).is-groupsingaporePage .g-side__item--group a {
		text-decoration: none;
		background: #eee;
	}
	
}

.l-career_button {
	color: #e76a29;
	font-size: 1.4rem;
	text-decoration: underline;
	display: inline-block;
	margin: 20px 0 0;
	cursor: pointer;
}

.no-touch .l-career_button:hover {
	text-decoration: none;
}

.l-career_details {
	width: 800px;
	max-width: calc(100% - 60px);
	max-height: calc(100dvh - 120px);
	padding: 60px;
	background: #fff;
	position: fixed;
	top:  calc(50% - 20px);
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 700;
	overflow-x: hidden;
	overflow-y: auto;
	opacity: 0;
	visibility: hidden;
	transition: .3s cubic-bezier(0.75, 0, 0.35, 1);
}

.l-career_details figure {
	display: flex;
	align-items: center;
}

.l-career_details figure img {
	width: 200px;
}

.l-career_details figure figcaption {
	width: calc(100% - 200px);
	padding: 0 0 0 30px;
}

.l-career_details figure figcaption b {
	font-size: 2rem;
	vertical-align: baseline;
	margin: 0 0 0 1em;
	display: inline-block;
}

.l-career_details figure + * {
	margin-top: 30px;
}

.l-career_details .birth {
	font-size: 1.6rem;
	margin: 30px 0 1em;
	display: block;
}

.l-career_details dl {
	line-height: 1.5;
	display: flex;
	flex-wrap: wrap;
	border-bottom: 1px solid #ddd;
}

.l-career_details dl dt {
	width: 6.5em;
	padding: .5em 0;
	border-top: 1px solid #ddd;
}

.l-career_details dl dd {
	width: calc(100% - 6.5em);
	padding: .5em 0;
	border-top: 1px solid #ddd;
}

.l-career_stage {
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 700;
	opacity: 0;
	visibility: hidden;
	transition: .6s cubic-bezier(0.75, 0, 0.35, 1);
}

.is-modal .l-career_stage {
	opacity: 1;
	visibility: visible;
}

.is-modal .u-cover {
	opacity: 1;
	visibility: visible;
}

.is-modal .l-career_stage .l-career_details {
	opacity: 1;
	visibility: visible;
}

.l-career_close {
	color: #fff;
	font-size: 1.6rem;
	padding: .45em 2em;
	display: inline-block;
	border: 2px solid #fff;
	position: absolute;
	top: calc(100dvh - 60px);
	left: 50%;
	transform: translate(-50%,0);
	transition: .2s cubic-bezier(0.75, 0, 0.35, 1);
}

.no-touch .l-career_close:hover {
	color: #000;
	background: #fff;
}




