@charset "utf-8";
/*=================================================================================*/
/** 768px未満**/
/*===============================
	h2
===============================*/
.title{
	font-size: 3.2rem;
	font-weight: 800;
	line-height: 0.8;
}
/*===============================
	wrapper
===============================*/
.majo_wrapper{
	border-top: solid 1px #C8C8C8;
}
.majo_wrapper:last-of-type{
	border-bottom: solid 1px #C8C8C8;
	margin: 0 0 5em;
}
.newp_wrapper{
	border-top: solid 1px #C8C8C8;
}
.cont_wrapper{
	background: #140F0F;
	color: #FFF;
}
/*===============================
	container
===============================*/
.exhi_container,
.nsdv_container_over,
.nsdv_container,
.dist_container,
.dist_container_over,
.fssp_container,
.fssp_container_over,
.nsdb_container,
.cont_container{
	width: 90%;
	max-width: 1200px;
	margin: 4em auto;
}
.majo_container{
	width: 90%;
	max-width: 1200px;
	margin: 2.5em auto 1.5em;
}
.newp_container{
	width: 90%;
	max-width: 1200px;
	margin: 4em auto 1.5em;
}
/*===============================
	inner
===============================*/
.nsdv_inner{
	margin: 2em auto 2em;
}
.dist_inner{
	margin: 0.5em auto 0;
}
.fssp_inner{
	margin: 1em auto 0;
}
.majo_inner{
	margin: 1em auto 0;
}
.cont_inner{
	padding: 3em 0 0;
}
/*===============================
	exhibitions
===============================*/
.exhi_contents{
	margin: 1em auto;
}
.exhi_contents_chronology ul,
.exhi_contents_chronology ul>li>ul,
.exhi_contents_chronology ul>li>ul>li>ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
}
.exhi_contents_chronology ul>li{
	width: 100%;
	margin: 0 0 0.5em;
}
.exhi_contents_chronology ul>li>ul>li>p{
	display: inline-block;
	vertical-align: middle;
}
.exhi_contents_chronology__year{
	color: #787878;
	font-size: 2.5rem;
	font-weight: 800;
}
.exhi_contents_chronology ul>li>ul>li>p:nth-of-type(1){
	margin-right: 15px;
}
.exhi_contents_chronology ul>li>ul>li>ul>li{
	width: 48%;
}
/*===============================
	nsd voice
===============================*/
.nsdv_contents_name{
	width: 80%;
	margin: 1em auto 0;
}
.nsdv_contents_over dl,
.nsdv_contents_over_roll dl{
	margin: 0.8em auto 0;
}
.nsdv_contents_over dl dt,
.nsdv_contents_over_roll dl dt,
.nsdv_contents dl dt{
	position: relative;
	color: #FF1E3C;
	font-size: 1.4rem;
	font-weight: 750;
	line-height: 1.4;
	margin: 1.5em auto 0;
	padding-left: 30px;
}
.nsdv_contents_over dl dt::before,
.nsdv_contents_over_roll dl dt::before,
.nsdv_contents dl dt::before{
	font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
	position: absolute;
	content: 'Q.';
	background-position: center;
	background-repeat: no-repeat;
	display: block;
	width: 25px;
	height: 25px;
	top: 12px;
	left: 9px;
	transform: translate(-50%,-50%);
}
.nsdv_contents_over dl dd,
.nsdv_contents_over_roll dl dd,
.nsdv_contents dl dd{
	margin: 1em auto 0;
}
.nsdv_contents dl dd{
	margin: 1em auto 2.5em;
}
/*===============================
	distubutor
===============================*/
.dist_contents_about>ul>li:nth-child(1){
	box-sizing: border-box;
	border: solid 1px #140F0F;
	background: #FFF;
	width: 100%;
	padding: 3em 1.5em 3.5em;
}
.dist_contents_about>ul>li:nth-child(2){
	margin: 1em auto 0;
}
.dist_contents_about>ul>li:nth-child(2) h3{
	font-size: 1.7rem;
	font-weight: 700;
}
.dist_picture>ul>li{
	margin: 0 auto 1em;
}
/*===============================
	fssp voice
===============================*/
.fssp_contents_name{
	width: 80%;
	margin: 1em auto 0;
}
.fssp_contents_over dl,
.fssp_contents_over_roll dl{
	margin: 0.8em auto 0;
}
.fssp_contents_over dl dt,
.fssp_contents_over_roll dl dt,
.fssp_contents dl dt{
	position: relative;
	color: #FF1E3C;
	font-size: 1.4rem;
	font-weight: 750;
	line-height: 1.4;
	margin: 1.5em auto 0;
	padding-left: 30px;
}
.fssp_contents_over dl dt::before,
.fssp_contents_over_roll dl dt::before,
.fssp_contents dl dt::before{
	font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, sans-serif;
	position: absolute;
	content: 'Q.';
	background-position: center;
	background-repeat: no-repeat;
	display: block;
	width: 25px;
	height: 25px;
	top: 12px;
	left: 9px;
	transform: translate(-50%,-50%);
}
.fssp_contents_over dl dd,
.fssp_contents_over_roll dl dd,
.fssp_contents dl dd{
	margin: 1em auto 0;
}
.fssp_contents dl dd{
	margin: 1em auto 2.5em;
}
/*===============================
	nsd booth
===============================*/
.nsdb_contents{
	margin: 1em auto;
}
.nsdb_contents>ul{
	margin: 1em auto 0;
}
.nsdb_contents>ul>li{
	width: 90%;
	margin: 0 auto 1em;
}
.nsdb_contents__img{
	width: 55%;
	margin: 0 auto;
}
.nsdb_contents>ul>li h3{
	font-size: 1.7rem;
	font-weight: 700;
	text-align: center;
	line-height: 1.1;
	margin: 0.6em auto;
}
/*===============================
	major products
===============================*/
.majo_contents>ul{
	display: flex;
	flex-wrap: wrap;
	text-align: center;
}
.majo_contents>ul>li h3{
	font-size: 2.6rem;
	font-weight: 800;
}
.majo_contents>ul>li:nth-child(1){
	order: 2;
	width: 100%;
	margin: 1.5em auto 0;
}
.majo_contents>ul>li:nth-child(2){
	order: 1;
	width: 90%;
	margin: 0 auto;
}
.majo_contents__btn{
	box-sizing: border-box;
	display: block;
	background: #FF1E3C;
	color: #FFF;
	font-weight: 600;
	text-align: center;
	width: 100%;
	max-width: 340px;
	margin: 1em auto 0;
	padding: 1em;
}
.majo_contents__btn:hover{
	background: #BE4B4B;
	color: #FFF;
}
.majo_contents__titlesub{
	font-size: 1.3rem;
}
/*===============================
	new products
===============================*/
.newp_contents>ul{
	display: flex;
	flex-wrap: wrap;
	text-align: center;
}
.newp_contents>ul>li h3{
	font-size: 2.6rem;
	font-weight: 800;
}
.newp_contents__titlesub{
	font-size: 1rem;
	font-weight: 800;
}
.newp_contents>ul>li:nth-child(1){
	order: 2;
	width: 100%;
	margin: 1.5em auto 0;
}
.newp_contents>ul>li:nth-child(2){
	order: 1;
	width: 90%;
	margin: 0 auto;
}
.newp_contents a{
	box-sizing: border-box;
	display: block;
	background: #FF1E3C;
	color: #FFF;
	font-weight: 600;
	text-align: center;
	width: 100%;
	max-width: 340px;
	margin: 1em auto 0;
	padding: 1em;
}
/*===============================
	contact
===============================*/
.cont_contents h3{
	font-size: 2rem;
	font-weight: 800;
	text-align: center;
	line-height: 1;
	margin: 0 auto 0.6em;
}
.cont_container_over img{
	opacity: .2;
	width: 100%;
}
.cont_container_over>ul>li{
	position: relative;
}
.cont_container_over>ul>li h4{
	position: absolute;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1;
	bottom: 7%;
	left: 5%;
}
.cont__btn{
	display: block;
	color: #FFF;
}
.cont__btn:hover{
	color: #EAEAEA;
	text-shadow: 0px 0px 15px rgba(0, 0, 0, 0.4), 0px 0px 20px rgba(0, 0, 0, 0.6);
}
.cont__btn:hover img{
	opacity: 1;
}
/*===============================
	contact
===============================*/
/*=================================================================================*/
/** 768px以上　タブレット縦　サイズ画面  **/
@media (min-width : 768px) {
/*===============================
	h2
===============================*/
.title{
	font-size: 7.6rem;
	font-weight: 800;
}
/*===============================
	container
===============================*/
.exhi_container,
.nsdv_container,
.fssp_container,
.cont_container{
	margin: 4em auto 5em;
}
.nsdb_container{
	margin: 8em auto 5em;
}
.majo_container{
	margin: 2em auto;
}
.newp_container{
	margin: 2em auto;
}
.nsdv_container_over,
.dist_container_over,
.fssp_container_over{
	max-width: 1600px;
}
/*===============================
	inner
===============================*/
.dist_inner{
	margin: 2em auto 0;
}
.fssp_inner{
	margin: 2em auto 0;
}
.majo_inner{
	margin: 2em auto 0;
}
.cont_inner{
	padding: 4em 0 0;
}
/*===============================
	exhibitions
===============================*/
.exhi_contents_chronology ul>li>ul>li{
	width: 48%;
}
.exhi_contents_chronology>ul{
	position: relative;
}
.exhi_contents_chronology>ul::before{
	position: absolute;
	content: '';
	background: #FF1E3C;
	width: 1px;
	height: 90%;
	top: 4.2%;
	left: 133px;
}
.exhi_contents_chronology ul>li>ul>li>p:nth-of-type(1){
	margin-right: 1.5em;
}
.exhi_contents_chronology ul>li>ul>li:nth-child(2){
	max-width: 490px;
}
.exhi_contents_chronology ul>li>ul>li>p:nth-of-type(1){
	margin-right: 0;
}
.exhi_contents_chronology__year{
	position: relative;
	width: 180px;
}
.exhi_contents_chronology__year::after{
	position: absolute;
	content: '';
	background-image: url(../img/common/icon_chronology.svg);
	/*background-size: contain;*/
	background-position: center;
	background-repeat: no-repeat;
	display: block;
	width: 65px;
	height: 13px;
	top: 30px;
	right: 15px;
}
/*===============================
	nsd voice
===============================*/
.nsdv_contents_name{
	width: 60%;
}
/*===============================
	distubutor
===============================*/
.dist_contents_about>ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	vertical-align: middle;
	align-items: center;
}
.dist_contents_about>ul>li:nth-child(1){
	width: 50%;
	padding: 5em 2em 5.5em;
}
.dist_contents_about>ul>li:nth-child(2){
	width: 45%;
	margin: 0;
}
.dist_picture>ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	vertical-align: middle;
	align-items: center;
}
.dist_picture>ul>li{
	width: 46.875%;
	margin: 0;
}
/*===============================
	fssp voice
===============================*/
.fssp_contents_name{
	width: 60%;
}
/*===============================
	nsd booth
===============================*/
.nsdb_contents>ul>li{
	text-align: center;
}
/*===============================
	contact
===============================*/
.cont_contents h3{
	font-size: 3.3rem;

}
.cont_container_over>ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	vertical-align: middle;
}
.cont_container_over>ul>li{
	width: 50%;
}
.cont_container_over>ul>li:first-child{
	box-sizing: border-box;
	border-right: solid 1px #4D4D4D;
}
.cont_container_over>ul>li h4{
	font-size: 1.5rem;
}
}
@media (min-width : 1200px) {
/*===============================
	container
===============================*/
.majo_container,
.newp_container{
	margin: 0.8em auto 2em;
}
.cont_container{
	margin: 5em auto;
}
/*===============================
	inner
===============================*/
.fssp_inner{
	margin: 3em auto 0;
}
.majo_inner{
	margin: 3em auto 0;
}
.newp_inner{
	margin: 3em auto 0;
}
/*===============================
	exhibitions
===============================*/
.exhi_contents_chronology>ul::before{
	height: 90%;
	top: 75px;
	left: 192px;
}
.exhi_contents_chronology__year{
	font-size: 1.846rem;
}
.exhi_contents_chronology__year::after{
	height: 18px;
	right: -45px;
}
.exhi_contents_chronology ul>li>ul>li>p:nth-of-type(1){
	margin-right: 100px;
}
/*===============================
	nsd voice
===============================*/
.nsdv_contents_over>ul,
.nsdv_contents_over_roll>ul{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	vertical-align: middle;
}
.nsdv_contents_over>ul>li:nth-child(1){
	width: 70%;
	margin: 0 0 0 30%;
}
.nsdv_contents_over>ul>li:nth-child(2){
	box-sizing: border-box;
	position: absolute;
	width: 50%;
	padding: 0 0 0 2em;
	top: 50%;
	right: 25%;
	transform: translate(-50%,-50%);
}
.nsdv_contents_over_roll>ul>li:nth-child(1){
	width: 70%;
	margin: 0 30% 0 0;
}
.nsdv_contents_over_roll>ul>li:nth-child(2){
	box-sizing: border-box;
	position: absolute;
	width: 50%;
	padding: 0 0 0 2em;
	top: 50%;
	right: -25%;
	transform: translate(-50%,-50%);
}
.nsdv_contents_name{
	width: 70%;
	margin: 0;
}
.nsdv_contents_over dl dt,
.nsdv_contents_over_roll dl dt,
.nsdv_contents dl dt{
	padding-left: 45px;
}
.nsdv_contents_over dl dt::before,
.nsdv_contents_over_roll dl dt::before,
.nsdv_contents dl dt::before{
	width: 38px;
	height: 43px;
	top: 20px;
	left: 15px;
}
/*===============================
	fssp voice
===============================*/
.fssp_contents_over>ul,
.fssp_contents_over_roll>ul{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	vertical-align: middle;
}
.fssp_contents_over>ul>li:nth-child(1){
	width: 70%;
	margin: 0 0 0 30%;
}
.fssp_contents_over>ul>li:nth-child(2){
	box-sizing: border-box;
	position: absolute;
	width: 50%;
	top: 50%;
	right: 25%;
	transform: translate(-50%,-50%);
}
.fssp_contents_over_roll>ul>li:nth-child(1){
	width: 70%;
	margin: 0 30% 0 0;
}
.fssp_contents_over_roll>ul>li:nth-child(2){
	box-sizing: border-box;
	position: absolute;
	width: 50%;
	top: 50%;
	right: -25%;
	transform: translate(-50%,-50%);
}
.fssp_contents_name{
	width: 70%;
	margin: 0;
}
.fssp_contents_over dl dt,
.fssp_contents_over_roll dl dt,
.fssp_contents dl dt{
	padding-left: 45px;
}
.fssp_contents_over dl dt::before,
.fssp_contents_over_roll dl dt::before,
.fssp_contents dl dt::before{
	width: 38px;
	height: 43px;
	top: 20px;
	left: 15px;
}
/*===============================
	nsd booth
===============================*/
.nsdb_contents{
	margin: 2em auto;
}
.nsdb_contents>ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	vertical-align: middle;
}
.nsdb_contents>ul>li{
	width: 24%;
	margin: 0 auto 1em;
	text-align: left;
}
.nsdb_contents__img{
	width: 100%;
}
/*===============================
	major products
===============================*/
.majo_contents>ul{
	vertical-align: middle;
	align-items: center;
	text-align: left;
}
.majo_contents>ul>li h3{
	font-size: 3.3rem;
	font-weight: 800;
}
.majo_contents>ul>li:nth-child(1){
	order: 1;
	width: 45%;
	margin: 1.5em auto 0;
}
.majo_contents>ul>li:nth-child(2){
	order: 2;
	width: 44.1666%;
	margin: 0;
}
.majo_contents a{
	font-size: 0.9rem;
	margin: 2.5em 0 0;
	padding: 1.2em;
}
/*===============================
	new products
===============================*/
.newp_contents>ul{
	vertical-align: middle;
	align-items: center;
	text-align: left;
}
.newp_contents>ul>li h3{
	font-size: 3.3rem;
	font-weight: 800;
}
.newp_contents__titlesub{
	font-size: 1.4rem;
}
.newp_contents>ul>li:nth-child(1){
	order: 1;
	width: 45%;
	margin: 1.5em auto 0;
}
.newp_contents>ul>li:nth-child(2){
	order: 2;
	width: 44.1666%;
	margin: 0;
}
.newp_contents a{
	font-size: 0.9rem;
	margin: 2.5em 0 0;
	padding: 1.2em;
}
.cont_container_over>ul>li h4{
	font-size: 1.7rem;
}
}
@media (min-width : 1300px) {
/*===============================
	nsd voice
===============================*/
.nsdv_contents_name{
	width: 100%;
}
.fssp_contents_name{
	width: 100%;
}
/*===============================
	FSSP voice
===============================*/
.fssp_contents_over>ul>li:nth-child(2){
	padding: 0 0 3em;
}
}
@media (min-width : 1800px) {
}