/* ----------------------------------------
共通化CSS
----------------------------------------*/
#CorporateHome h2[class$="-title"] {
	margin: 0 0 40px 0;
	color: #333;
	font-weight: normal;
	text-align: center;}
#CorporateHome h2[class$="-title"] span {
	display: block;
	height: 32px;
	margin: 0 0 15px 0;
	background-repeat: no-repeat;
	background-position: center;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;}


/* ----------------------------------------
catchPhrase
----------------------------------------*/
.catchPhrase {
	/*margin: 0 0 130px 0;*/
	/*padding: 40px 0 0 0;*/
	/*min-height: 654px;*/
	color: #e60012;
	text-align: center;}
#CorporateHome h1 {
	display: block;
	height: 0;
	padding-top: calc(790 / 1600 * 100%);
	background: url(/corporate/images/home/corporateTop_mainimage.jpg) no-repeat;
	background-size: auto 790px;
	background-position: center bottom;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;}
@media (min-width:1601px){
	#CorporateHome h1 {
		background-size: cover;}
}
.catchPhraseArea-wrap {
	position: relative;
					top: -60px;
	width: 1180px;
	margin: 0 auto;
	/*padding: 0 0 130px 0;*/
	border-bottom: 60px solid #fff;}
.catchPhraseArea {
	position: absolute;
		top: 0;
	transform: translateY(-21%);
	width: 100%;
	min-height: 192px;
	/*margin: 0 0 130px 0;*/
	font-weight: normal;
	line-height: 100%;
	background: url(/images/home/txt-SEEK-OUT-INNOVATION.png) no-repeat;
	background-position: center;
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;}
	.catchPhraseArea .bold {
		font-weight: bold;}
.read {
	padding: calc(40px + 30px) 0 50px 0;
	font-size: 3.6rem;
	line-height: 100%;
	background: #fff;}
.read p {
	width: 1180px;
	margin: 0 auto;}
.read span {
	display: inline-block;
	white-space: nowrap;}

.catchPhrase .policy {
	margin: 0 0 60px 0;
	color: #333;
	line-height: 2.6rem;}

.corporateList-btn {
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 280px;
    min-height: 64px;
    margin: 0 auto 80px auto;
    padding: 20px 50px;
    color: #e60012;
    font-size: 1.4rem;
    text-align: center;
    line-height: 1.5;
    background: #fff;
    border: 1px solid #e60012;
    transition-duration: 0.2s;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
	.corporateList-btn.hover{
		color: #fff;
		background: #e60012;}
	.corporateList-btn .redArrowS {
		right: 40px;
		transition: 0.12s;
		transition-property: border, transform;}
	.corporateList-btn.hover .redArrowS {
		border-color: #fff;
		transform: translateX(5px) rotate(-45deg);}

.corporateLocal {
	width: 1180px;
	margin: 0 auto;}
#CorporateHome.Index .imgListArea {
	display: flex;
	justify-content: space-between;
	margin-bottom: 80px;}

#CorporateHome.Index .imgListArea li {
	width: calc((100% - 25px * 2) / 3);}
	#CorporateHome.Index .imgListArea.L li {
		width: calc(50% - 40px / 2);}
#CorporateHome.Index .imgListArea a {
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
#CorporateHome.Index .imgListArea figure {
	margin: 0 0 16px 0;}
#CorporateHome.Index .imgListArea figure > img {
	width: 100.2%;
	height: auto;}
	#CorporateHome.Index .imgListArea.L figure > img {
		width: 100%;
		height: auto;}
#CorporateHome.Index .imgListArea figure.bd1px {
	border: 1px solid #e9ecee;}
#CorporateHome.Index .imgListArea h3 {
	display: inline-block;
	color: #333;
	font-size: 1.8rem;
	transition: color 0.12s;}
	#CorporateHome.Index .imgListArea.L h3 {
		margin: 0 0 20px 0;
		padding: 0;}
	#CorporateHome.Index .imgListArea a.hover h3 {
		color: #e60012;}
#CorporateHome.Index .imgListArea p {
	color: #333;
	font-size: 1.4rem;
	line-height: 2.2rem;}


/* RD
------------------------------*/
.RDArea {
	position: relative;
	margin: 0 0 110px 0;
	padding: 60px 0 90px 0;
	height: 450px;
	color: #fff;
	text-align: center;
	background: url(/corporate/images/home/img_RD_pc.jpg) no-repeat;
	background-size: cover;}
#CorporateHome h2.RD-title {
	margin-bottom: 30px;
	color: #fff;
	font-size: 1.5rem;}
.RD-title span {
	background-image: url(/corporate/images/home/tit-RD.png);
	background-size: 650px;}
.RDArea h3 {
	display: inline-block;
	margin: 0 auto 36px auto;
	padding: 40px 86px;
	font-size: 3.6rem;
	line-height: 100%;
	border: 1px solid rgba(255,255,255,0.3);}
.RDArea h3 strong {
	font-weight: 400;}
.rdInfo {
	font-size: 1.6rem;
	line-height: 2.8rem;}
.RDArea .corporateList-btn {
	position: absolute;
		right: 50%;
		bottom: 0;
		transform: translate(50%, 50%);
	margin-bottom: 0;
	color: #e60012;}
	.RDArea .corporateList-btn.hover {
		color: #fff;}


/* soft99Area
------------------------------*/
#CorporateHome.Index .soft99Area {
	margin: 0 0 120px 0;
	padding: 40px calc((100% - 1180px) / 2);
	background: #f3f5f7;}
#CorporateHome.Index .soft99Area .imgListArea {margin: 0;}
#CorporateHome.Index .soft99Area .imgListArea figure {margin: 0;}

#CorporateHome.Index .soft99Area .imgListArea.L {
  flex-wrap: wrap;
  gap: 40px 40px;}

/* soft99Area
------------------------------*/
.news-title span {
	background-image: url(/images/home/tit-news.png);
	background-size: 142px;}


/* IR
------------------------------*/
.irArea {
	position: relative;
	margin: 0 0 150px 0;}
#CorporateHome h2.IR-title {
	margin-bottom: 60px;}
.IR-title span {
	background-image: url(/corporate/images/home/tit-IR.png);
	background-size: 538px;}
.IR-imgWrap {
	position: relative;
	width: calc(1040px + 60px);
	height: calc(330px + 60px);
	margin: 0 auto;}
	.IR-imgWrap:before,
	.IR-imgWrap:after {
		content: "";
		position: absolute;
		display: block;
		width: 1040px;
		height: 330px;}
	.IR-imgWrap:before {
			top: 0;
			left: 0;
		background: #e60012;}
	.IR-imgWrap:after {
			right: 0;
			bottom: 0;
		background: url(/corporate/images/home/img_IR_pc.jpg);}
.irArea figure {
	color: #e60012;}
.irArea .corporateList-btn {
	position: absolute;
		right: 50%;
		bottom: 0;
		transform: translate(50%, 50%);
	margin-bottom: 0;}

.topic {
	width: 1180px;
	margin: 0 auto 120px auto;}
.topic .tab-content {
	text-align: right;}
.topic .newsList {
	text-align: left;}
.topicList-btn {
	display: inline-block;
	position: relative;
	margin: 20px 0 0 0;
	color: #e60012 !important;
	font-size: 1.2rem;
	padding: 8px 60px;
	border: 1px solid #e60012;
	background: #fff;
	transition-property: color, background;
	transition-duration: 0.12s;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
	transition: 0.12s;
	transition-property: color, background;}
.topicList-btn .redArrowS {
	right: 20px;
	transition: 0.12s;
	transition-property: border, transform;}
	.topicList-btn.hover {
		color: #fff !important;
		background: #e60012;}
	.topicList-btn.hover .redArrowS {
		border-color: #fff;
		transform: translateX(5px) rotate(-45deg);}

.activity {
	width: 1180px;
	margin: 0 auto;}
#CorporateHome .activity h2 {
	margin: 0 0 60px 0;
	color: #333;
	font-weight: normal;
	font-size: 2.8rem;
	text-align: center;
	line-height: 100%;}
#CorporateHome .activity .imgListArea.L {
  flex-wrap: wrap;
  gap: 40px 40px;}

.product .productList-btn {
	position: relative;
	display: flex;
		justify-content: center;
		align-items: center;
	width: 280px;
	min-height: 64px;
	margin: 0 auto 120px auto;
	padding: 20px 50px;
	color: #e60012;
	font-size: 1.4rem;
	text-align: center;
	line-height: 1.5;
	background: #fff;
	border: 1px solid #e60012;
	transition-duration: 0.2s;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);}
	.product .productList-btn.hover{
		color: #fff;
		background: #e60012;}
	.product .productList-btn .redArrowS {
		right: 40px;
		transition: 0.12s;
		transition-property: border, transform;}
	.product .productList-btn.hover .redArrowS {
		border-color: #fff;
		transform: translateX(5px) rotate(-45deg);}


