@charset "UTF-8";

/* ▼▼▼ トップ
======================================================*/

/* ▼ メインビジュアル
----------------------------------------*/
#mainVisual{
	width: 100%;
	max-width: 100%;
	margin: 0;
	padding-left: 200px;
	position: relative;
}
#mainVisual .mv_inner{
	width: 100%;
	height: calc((100vw - 200px)*0.5357);
	background: url(../img/top/mv_bg_pc.jpg) no-repeat center center/cover;
	position: relative;
}
#mainVisual h1{
	width: 45.1%;
	position: absolute;
	top: 13.7%;
	left: 12.4%;
}
#mainVisual h1 img{
	width: 100%;
}
.en #mainVisual h1{
	width: 40.1%;
}

/* ▼ メイン
----------------------------------------*/
a.arrow{position: relative;}
a.arrow::before,a.arrow::after{
	content: '';
	display: inline-block;
	position: absolute;
}
a.arrow::before{
	border-bottom: 1px solid #FFF;
	width: 19px;
	height: 10px;
	top: -8px;
	right: 0;
}
a.arrow::after{
	border-top: 1px solid #FFF;
	width: 8px;
	height: 10px;
	-webkit-transform: rotate(40deg);
	transform: rotate(40deg);
	top: -2px;
	right: 3px;
}
h2.top_title{
	margin-bottom: 50px;
	color: #D4013B;
	font-size: 22px;
	text-align: center;
}
h2.top_title img{
	display: block;
	width: auto;
	height: 66px;
	margin: 0 auto;
}
.top_menu_flex{
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	-ms-align-items: stretch;
	align-items: stretch;
	align-content: flex-start;
	justify-content: center;
}
.top_menu_flex li{
	-webkit-flex: 1 1 auto;
	-ms-flex: 1 1 auto;
	flex: 1 1 auto;
}
.more{
	display: block;
	width: 200px;
	max-width: calc(100% - 20px);
	padding: 17px 0;
	text-align: center;
	font-size: 14px;
	font-weight: 600;
	font-family: Arial,sans-serif;
}

#intro{
	padding: 50px;
	position: relative;
}
#intro::before{
	content: '';
	width: 22.2vw;
	max-width: 342px;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background:#677D95;
	-webkit-transform: skewX(-28deg);
	-moz-transform: skewX(-28deg);
	-ms-transform: skewX(-28deg);
	-o-transform: skewX(-28deg);
	transform: skewX(-28deg);
	-webkit-transform-origin:left top 0;
	-moz-transform-origin:left top 0;
	-ms-transform-origin:left top 0;
	-o-transform-origin:left top 0;
	transform-origin:left top 0;
	mix-blend-mode: multiply;
	z-index: 0;
	-ms-filter: "alpha(opacity=70)";
	-moz-opacity: 0.7;
	-khtml-opacity: 0.7;
	opacity: 0.7;
	z-index: 1;
}
#intro::after{
	content: '';
	display: block;
	width: 100%;
	height: 410px;
	background: #EFEFEF;
	position: absolute;
	top: 117px;
	left: 0;
}
#intro .img_wrap{
	width: 58.9%;
	height: calc(100% - 120px);
	background: url(../img/top/intro_img01.jpg) no-repeat center center/cover;
	position: absolute;
	top: 50px;
	right: 0;
	z-index: 2;
}
#intro .intro_container{
	width: 1300px;
	max-width: 100%;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
#intro h2 img{
	width: auto;
	height: 114px;
	margin-bottom: 25px;
}
#intro .txt_wrap{
	width: 570px;
	max-width: 100%;
	background: #D4013B;
	margin: 0 auto 0 0;
	padding: 65px 50px;
	z-index: 3;
}
#intro h3{
	margin-bottom: 20px;
	color: #FFF;
	font-size: 22px;
}
#intro p{
	margin-bottom: 40px;
	color: #FFF;
	line-height: 2.2;
}
#intro a.more{
	border: #FFF 2px solid;
	padding: 12px 0;
	color: #FFF;
}

#product{
	padding: 60px 0 120px;
	background: #EFEFEF;
}
#product h2.top_title{
	position: relative;
}
#product h2.top_title::before{
	content: '';
	width: 22.2vw;
	max-width: 342px;
	height: 642px;
	position: absolute;
	right: 0;
	bottom: -50px;
	background:#D4013B;
	-webkit-transform: skewX(-28deg);
	-moz-transform: skewX(-28deg);
	-ms-transform: skewX(-28deg);
	-o-transform: skewX(-28deg);
	transform: skewX(-28deg);
	-webkit-transform-origin:left bottom 0;
	-moz-transform-origin:left bottom 0;
	-ms-transform-origin:left bottom 0;
	-o-transform-origin:left bottom 0;
	transform-origin:left bottom 0;
	mix-blend-mode: multiply;
	z-index: 3;
}

#product .top_menu_flex li{
	position: relative;
}
#product .top_menu_flex li .img_wrap{
	width: 100%;
	padding-top: 68.5%;
	position: absolute;
	top: 0;
	left: 0;
	overflow: hidden;
}
#product .top_menu_flex li .img_wrap::before{
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	transition: 0.5s
}
#product .top_menu_flex li:nth-child(1) .img_wrap::before{
	background: url(../img/top/pro_img01_pc.jpg) no-repeat center center/cover;
}
#product .top_menu_flex li:nth-child(2) .img_wrap::before{
	background: url(../img/top/pro_img02_pc.jpg) no-repeat center center/cover;
}
#product .top_menu_flex li:nth-child(3) .img_wrap::before{
	background: url(../img/top/pro_img03_pc.jpg) no-repeat center center/cover;
}
#product .top_menu_flex li:hover .img_wrap::before,#business .top_menu_flex li:hover::before{
	-webkit-transform: scale(1.2);
	-ms-transform: scale(1.2);
	transform: scale(1.2);
	transition: 1s;
}
#product .top_menu_flex li .top_menu_inner{
	padding-top: calc(68.5% - 42px);
	position: relative;
	z-index: 1;
}
#product .top_menu_flex li a{
	display: block;
	width: 250px;
	max-width: 250px;
	margin: 0 auto;
	padding: 17px 0;
	background: #D4013B;
	color: #FFF;
	font-size: 20px;
	font-weight: 600;
	text-align: center;
}
#product .top_menu_flex li a span{
	display: block;
	font-size: 12px;
	font-weight: normal;
	text-align: center;
	font-family: 'Bebas',sans-serif;
}
.en #product .top_menu_flex li a{
	padding: 24px 0;
}
.en #product .top_menu_flex li a span{
	display: block;
	font-size: 20px;
	font-weight: normal;
	text-align: center;
	font-family: 'Bebas',sans-serif;
}
#product .top_menu_flex li a.arrow::before{
	border-bottom: 1px solid #FFF;
	width: 19px;
	height: 10px;
	top: 31px;
	right: 10PX;
}
#product .top_menu_flex li a.arrow::after{
	-webkit-transform: rotate(40deg);
	transform: rotate(40deg);
	top: 37px;
	right: 13px;
}
#product .top_menu_flex li a:hover,
#business .top_menu_flex li a:hover{
	-ms-filter: "alpha(opacity=100)";
	-moz-opacity:1;
	-khtml-opacity: 1;
	opacity: 1;
}

#business{
	padding: 50px 0 80px;
	position: relative;
}
#business::before{
	content: '';
	width: 22.2vw;
	max-width: 342px;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	background:#677D95;
	-webkit-transform: skewX(-28deg);
	-moz-transform: skewX(-28deg);
	-ms-transform: skewX(-28deg);
	-o-transform: skewX(-28deg);
	transform: skewX(-28deg);
	-webkit-transform-origin:left top 0;
	-moz-transform-origin:left top 0;
	-ms-transform-origin:left top 0;
	-o-transform-origin:left top 0;
	transform-origin:left top 0;
	mix-blend-mode: multiply;
	z-index: 0;
	-ms-filter: "alpha(opacity=70)";
	-moz-opacity: 0.7;
	-khtml-opacity: 0.7;
	opacity: 0.7;
}

#business .top_menu_flex li{
	padding: 60px 0;
	position: relative;
	overflow: hidden;
}
#business .top_menu_flex li::before{
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	transition: 0.5s
}
#business .top_menu_flex li:nth-child(1)::before{
	background: url(../img/top/buis_img01_pc.jpg) no-repeat center center/cover;
}
#business .top_menu_flex li:nth-child(2)::before{
	background: url(../img/top/buis_img02_pc.jpg) no-repeat center center/cover;
}
#business .top_menu_flex li .top_menu_inner{
	width: 370px;
	max-width: calc(100% - 60px);
	margin: 0 auto;
	padding: 40px 0;
	background: rgba(255,255,255,0.8);
	position: relative;
	z-index:1;
}
#business .top_menu_flex li h3{
	margin-bottom: 8px;
	color: #D4013B;
	font-size: 22px;
	text-align: center;
}
#business .top_menu_flex li p{
	margin-bottom: 15px;
	color: #191919;
	font-size: 14px;
	text-align: center;
}
#business .top_menu_flex li a{
	margin: 0 auto;
	border: #D4013B 2px solid;
	color: #D4013B;
}

#topics{
	background: url(../img/top/topics_bg_pc.jpg) no-repeat center center/cover;
	padding: 50px 0 95px;
	position: relative;
}
#topics::before{
	content: '';
	width: 22.2vw;
	max-width: 342px;
	height: 642px;
	position: absolute;
	right: 0;
	bottom: 0;
	background:#D4013B;
	-webkit-transform: skewX(-28deg);
	-moz-transform: skewX(-28deg);
	-ms-transform: skewX(-28deg);
	-o-transform: skewX(-28deg);
	transform: skewX(-28deg);
	-webkit-transform-origin:left bottom 0;
	-moz-transform-origin:left bottom 0;
	-ms-transform-origin:left bottom 0;
	-o-transform-origin:left bottom 0;
	transform-origin:left bottom 0;
	mix-blend-mode: multiply;
	z-index: 1;
}
#topics #topics_wrap{
	width: 1300px;
	max-width: 100%;
	padding: 50px 50px 0;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
#topics .topics_tab{
	display: -webkit-flex;
	display: -ms-flex;
	display: flex;
	justify-content: center;
	-ms-align-items: stretch;
	align-items: stretch;
	align-content: flex-start;
	margin-bottom: 30px;
}
#topics .topics_tab li{
	-webkit-flex: 0 0 25%;
	-ms-flex: 0 0 25%;
	flex: 0 0 25%;
	width: 25%;
	max-width: 25%;
}
#topics .topics_tab li a{
	display: block;
	padding: 17px 0;
	background: #FFF;
	border: #D75558 1px solid;
	color: #D75558;
	text-align: center;
}
#topics .topics_tab li:not(:last-child) a{
	border-right: 0;
}
#topics .topics_tab li a.active,
#topics .topics_tab li a:hover{
	background: #D75558;
	color: #FFF;
	-ms-filter: "alpha(opacity=100)";
	-moz-opacity:1;
	-khtml-opacity: 1;
	opacity: 1;
}
#topics .topics_list_wrap .list_inner{
	display: table;
	width: 100%;
	background: #FFF;
}
#topics .topics_list_wrap li:not(:last-child){
	margin-bottom: 10px;
}
#topics .topics_list_wrap .list_inner p{
	display: table-cell;
	width: 100%;
	height: 80px;
	vertical-align: middle;
	padding: 0 0 0 30px
}
#topics .topics_list_wrap .list_inner span{
	display: inline-block;
}
#topics .topics_list_wrap .list_inner span.topics_date{
	width: 100px;
}
#topics .topics_list_wrap .list_inner span.topics_category{
	width: 95px;
	margin: 0 20px;
	color: #FFF;
	line-height: 30px;
	text-align: center;
}
#topics .topics_list_wrap .list_inner span.topics_category.topics_category_info{
	background: #D75558;
}
#topics .topics_list_wrap .list_inner span.topics_category.topics_category_event{
	background: #6689AC;
}
#topics .topics_list_wrap .list_inner span.topics_category.topics_category_product{
	background: #AC9F66;
}
#topics #topics_wrap .arrow.more{
	width: 137px;
	height: 30px;
	border-radius: 15px;
	background: #D4013B;
	padding: 0;
	color: #FFF;
	line-height: 30px;
	position: absolute;
	top: 0;
	right: 50px;
}
#topics #topics_wrap .arrow.more::before{
	border-bottom: 1px solid #FFF;
	width: 10px;
	height: 10px;
	top: 6px;
	right: 10px;
}
#topics #topics_wrap .arrow.more::after{
	border-top: 1px solid #FFF;
	width: 5px;
	height: 10px;
	-webkit-transform: rotate(40deg);
	transform: rotate(40deg);
	top: 13px;
	right: 13px;
}
.topics_list:not(#topics_list1){
	display: none;
}
/* ▼▼▼ 480px〜768px
======================================================*/
@media screen and (max-width: 768px) {

	/* ▼ メインビジュアル
	----------------------------------------*/
	#mainVisual{
		padding-left: 0;
		position: relative;
	}
	#mainVisual .mv_inner {
		padding: 0;
		width: 100%;
		height: 128vw;
		background: url(../img/top/mv_bg_sp.jpg) no-repeat center center/cover;
		margin: 0 auto;
		position: relative;
	}
	#mainVisual h1{
		width: 76%;
		position: absolute;
		top: 33%;
		left: 9%;
	}
	#mainVisual h1 img{
		width: 100%;
	}
	.en #mainVisual h1{
		width: 69.6%;
		position: absolute;
		top: 33%;
		left: 9%;
	}
	/* ▼ メイン
	----------------------------------------*/
	#main{
		padding: 0;
	}
	h2.top_title{
		margin-bottom: 30px;
		font-size: 14px;
	}
	h2.top_title img{
		height: 47px;
	}
	.top_menu_flex{
		display: block;
	}

	#intro{
		padding: 30px 0 40px;
	}
	#intro::before{
		width: 125px;
	}
	#intro::after{
		content: '';
		display: block;
		width: 100%;
		height: 250px;
		background: #EFEFEF;
		position: absolute;
		top: 63px;
		left: 0;
	}
	#intro .img_wrap{
		width: calc(100% - 30px);
		height: 225px;
		top: 100px;
		right: 0;
	}
	#intro .intro_container{
		margin: 0 auto;
		padding: 0 35px 0 0;
		position: relative;
		z-index: 2;
	}
	#intro h2 img{
		width: auto;
		height: 59px;
		margin: 0 0 205px 30px;
	}
	#intro .txt_wrap{
		padding: 40px 25px;
	}
	#intro h3{
		margin-bottom: 18px;
		font-size: 18px;
	}
	#intro p{
		margin-bottom: 25px;
		line-height: 1.6;
	}

	#product{
		padding: 45px 0 65px;
	}
	#product h2.top_title{
		position: relative;
	}
	#product h2.top_title::before{
		width: 125px;
		bottom: -30px;
	}
	#product .top_menu_flex li:not(:last-child){
		margin-bottom: 30px;
	}
	#product .top_menu_flex li .img_wrap{
		padding-top: 53.3%;
	}
	#product .top_menu_flex li:nth-child(1) .img_wrap::before{
		background: url(../img/top/pro_img01_sp.jpg) no-repeat center center/cover;
	}
	#product .top_menu_flex li:nth-child(2) .img_wrap::before{
		background: url(../img/top/pro_img02_sp.jpg) no-repeat center center/cover;
	}
	#product .top_menu_flex li:nth-child(3) .img_wrap::before{
		background: url(../img/top/pro_img03_sp.jpg) no-repeat center center/cover;
	}
	#product .top_menu_flex li .top_menu_inner{
		padding-top: calc(53.3% - 42px);
	}

	#business{
		padding: 45px 0 40px;
	}
	#business::before{
		width: 125px;
	}
	#business .top_menu_flex li{
		padding: 40px 0;
	}
	#business .top_menu_flex li:nth-child(1)::before{
		background: url(../img/top/buis_img01_sp.jpg) no-repeat center center/cover;
	}
	#business .top_menu_flex li:nth-child(2)::before{
		background: url(../img/top/buis_img02_sp.jpg) no-repeat center center/cover;
	}
	#business .top_menu_flex li .top_menu_inner{
		width: 300px;
		max-width: calc(100% - 40px);
		padding: 30px 0;
	}
	#business .top_menu_flex li h3{
		font-size: 18px;
	}
	#business .top_menu_flex li p{
		margin-bottom: 18px;
	}

	#topics{
		background: url(../img/top/topics_bg_sp.jpg) no-repeat center center/cover;
		padding: 40px 0 50px;
	}
	#topics::before{
		width: 125px;
	}
	#topics #topics_wrap{
		padding: 0 20px 0;
	}
	#topics .topics_tab{
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		margin-bottom: 30px;
	}
	#topics .topics_tab li{
		-webkit-flex: 0 0 50%;
		-ms-flex: 0 0 50%;
		flex: 0 0 50%;
		width: 50%;
		max-width: 50%;
		font-size: 14px;
	}
	#topics .topics_tab li:not(:last-child) a{
		border-right: #D75558 1px solid;
	}
	#topics .topics_tab li:nth-child(2n) a{
		border-left: 0;
	}
	#topics .topics_tab li:nth-child(n+3) a{
		border-top: 0;
	}
	#topics .topics_list_wrap{
		margin-bottom: 20px;
	}
	#topics .topics_list_wrap .list_inner p{
		height: auto;
		padding: 15px 20px;
		position: 14px;
	}
	#topics .topics_list_wrap .list_inner span.topics_date{
		width: 82px;
	}
	#topics .topics_list_wrap .list_inner span.topics_category{
		width: 70px;
		margin: 0;
		line-height: 25px;
	}
	#topics .topics_list_wrap .list_inner span.topics_doc{
		display: block;
	}
	#topics #topics_wrap .arrow.more{
		width: 160px;
		height: 34px;
		border-radius: 17px;
		margin: 0 auto;
		line-height: 34px;
		position: relative;
		top: auto;
		right: auto;
	}
	#topics #topics_wrap .arrow.more::before{
		border-bottom: 1px solid #FFF;
		width: 10px;
		height: 10px;
		top: 6px;
		right: 10px;
	}
	#topics #topics_wrap .arrow.more::after{
		border-top: 1px solid #FFF;
		width: 5px;
		height: 10px;
		-webkit-transform: rotate(40deg);
		transform: rotate(40deg);
		top: 13px;
		right: 13px;
	}
	.topics_list:not(#topics_list1){
		display: none;
	}
}
