@charset "utf-8";

/* 
newsrelease
TOP janome added
basic/flex/list/table/mobile/border
 */



/* ======================================================
newsrelease
====================================================== */
/* title ------------------------------ */
.nr-mark{	
	border-bottom: 1px solid rgb(100, 100, 100);
	font-size: 1.5em;
	margin: 1em 0;
}
	@media screen and (max-width:980px) {
		.nr-mark{
		margin-top: 0em;
		}
	}

/* newsrelease textbox -------------------- */
	@media screen and (min-width:980px) {
		.nr-textbox{
			padding: 0 1.5em 0 0;
		}
	}

/* newsrelease date -------------------- */
.nr-date-r{
	text-align: right;
	margin-top: -2em;
}
.nr-date-l{
	text-align: left;
	margin-top: -2em;
	margin-bottom: 2em;
}

/* newsrelease main img-------------------- */
.nr-main-img{
	text-align: center;
}

.nr-main-img img{
	padding:0 0 2em ;
}

/* newsrelease text subbox ----------------- */
.nr-text-subbox{
	margin-bottom: 2em;
}

/* newsrelease h style ----------------- */
	@media screen and (max-width:980px) {
		.nr-textbox h2 {
		line-height: 1.2;
		}
		.nr-text-subbox{
			word-break: break-all;
		}
	}

.nr-textbox h3 {
	padding:0;
	border:none;
	background:none;
	font-size: 1.2em;
	margin-bottom: -0.5em;
	margin-top: 1em;
}

.nr-textbox h4{
	font-size: 1.1em;
	margin-bottom: -0.5em;
	margin-top: 1em;

}

/* newsrelease img---------------------- */
/*flex center*/
.nrbox-flex-ct{
	display: flex;
	text-align: center;
	justify-content: space-evenly;
}
	@media screen and (max-width:768px){
		.nrbox-flex-ct{
		display: block;
		text-align: center;
		padding: 0;
		}
	}

.nrbox-flex-ct div:not(:last-child){
	padding-right: 1em;
}
	@media screen and (max-width:980px){
		.nrbox-flex-ct div:not(:last-child){
			padding:0 0 1em 0;
		}
	}

/* text img flex  */
.nrbox-flex-textimg{
	display: flex;
}

	@media screen and (min-width:769px){
	.nrbox-flex-textimg div:not(:last-child){
		margin-right: 15px;
	}
	}
	@media screen and (max-width:768px){
		.nrbox-flex-textimg{
		display: block;
		padding: 0;
		}
		.nrbox-flex-textimg img{
		width: 100%;
		}
	}

/* w130 */
	@media screen and (min-width:769px){
	.nrbox-flex-textimg>.w130{
		width: 130%;
	}
	}
/* w60 */
	@media screen and (min-width:769px){
	.nrbox-flex-textimg>.w60{
		width: 60%;
	}
	}
/* w50 */
	@media screen and (min-width:769px){
	.nrbox-flex-textimg>.w50{
		width: 50%;
	}
	}
/* w40 */
	@media screen and (min-width:769px){
	.nrbox-flex-textimg>.w40{
		width: 40%;
	}
	}
/* w30 */
	@media screen and (min-width:769px){
	.nrbox-flex-textimg>.w30{
		width: 30%;
	}
	}

/* newsrelease end -------------------- */
.nr-end-r{
	text-align: right;
}

/* newsrelease footbox -------------------- */
.nr-footbox{
	border:1px solid rgb(184, 184, 184);
	text-align: center;
	padding: 0px 10px;
	line-height: 1.5;
}
    @media screen and (max-width: 959px) {
		.nr-footbox{
		margin:0 auto;
		width: 100%;
		padding: 20px 0px;
		}
	}


/* ======================================================
TOP janome added
====================================================== */
 /* PICKUP -----------------------------------------*/
.t-pickup-box{
	display: flex;
	text-align: center;
	justify-content: center;
}
	@media screen and (max-width:768px){
		.t-pickup-box{
		display: block;
		text-align: center;
		padding: 0;
		}
	}

.t-pickup-box div{
	background-color: rgb(255, 255, 255);
	border: 1px solid rgb(223, 223, 223);
	/* padding:1em; del for design*/
	width: 25%;
	position: relative;/*2022 added for category tag*/
}
	@media screen and (max-width:768px){
		.t-pickup-box div{
		display: block;
		width: 100%;
		/* padding: 1em; del for design*/
		}
		.t-pickup-box div img{
		display: block;
		width: 100%;
		}
		.t-pickup-box div:not(:last-child){
		margin-bottom: 2em;
		}
	}

.t-pickup-box div:not(:last-child){
	margin-right: 1em;
}


.t-pickup-box div a{
	text-decoration: none;
}

.t-pickup-box div p{
	 line-height: 1.3;
	padding: 0 1em;
}
	@media screen and (max-width: 960px) {
	.t-pickup-box div p{
		padding: 0;
	}
	}

/* for category tag  -----------------------------------------*/
.t-pickup-box div p.t-pickup-box-tagbox{
	display: block;
	width: 90px;
	background-color: #eee;
	margin: 0px;
	padding: 3px 0px;
	opacity: 0.7;
	font-size: 0.8em;
}
.cbcontents{
	position: absolute;
	top: 0px;
	left: 0;
	right: 0;
	content: "";
	z-index: 100;
}

/* under line */
.pickup-border{
	 border-bottom:1px solid rgb(223, 223, 223);
}


 /* subtitle  -----------------------------------------*/
.t-subtit{
	line-height: 1.2;
	margin-top: 1em;
}
.t-subtit-eng{
	margin: 0 0 5px;
	color: rgba(205, 0, 0, 1.00);
	border-bottom: 1px solid rgba(205, 0, 0, 0.50);
	display: block;
	margin: 0 auto;
	padding: 0 0 5px;
}
.t-subtit-jpn{
	font-size: 0.6em; 
	color: rgb(75, 75, 75);
	margin: 3px 0 0 0;
}
.t-subtit-news{
	font-size: 0.8em;
	color: rgb(31, 31, 31);
	margin: 0;
	text-align: left;
}
.t-subtit-service{
	color: rgb(0, 0, 0);
	margin: 3px 0 0 0;
	font-size: 0.8em;
}

 /* notice box  -----------------------------------------*/
.ex-container {
	padding: 10px 20px;
	text-align: left;
	background-color: rgb(248, 248, 248);
	border: 1px solid rgb(230, 230, 230);
}
.ex-container p{
	margin: 0;
}
.ex-news-title{
	padding-bottom:0.5em;
	font-weight: bold;
}

/* main image (carousel)  -----------------------------------------*/
.carouselimg-bd-ud{
	border-top: 1px rgb(223, 223, 223) solid; 
	border-bottom: 1px rgb(223, 223, 223) solid;
}


/* ======================================================
module
====================================================== */
/*basic -----------------------------------------*/
.center{
	text-align: center;
}

	@media screen and (max-width: 960px) {
	.center-sp{
		text-align: center;
	}
	}

.bold{
	font-weight: bold;
}

.normal{
	font-weight: normal !important;
}

.nobreak{
	word-break: break-all;
}

	@media screen and (min-width: 1000px) {
	.ml100-pc{
	margin-left: 100px;
	}
	}


/*flex -----------------------------------------*/
.box-flex-sb{
	display: flex;
	justify-content: space-between;
}
@media screen and (max-width: 960px) {
	.box-flex-sb {
		display:block;
		width:100%;
		justify-content: space-between;
	}
}

/*flex nomal*/
.box-flex{
	display: flex;
}
	@media screen and (max-width:560px){
	.box-flex{
	display: block;
	}
	}

/*flex center*/
.box-flex-ct{
	display: flex;
	text-align: center;
	justify-content: space-evenly;
}
	@media screen and (max-width:768px){
	.box-flex-ct{
	display: block;
	text-align: center;
	padding: 0;
	}
	}

.box-flex-ct div{
	margin: 0 auto;
	flex-basis: 50%;
}
	@media screen and (max-width:768px){
	.box-flex-ct div{
	display: block;
	text-align: center;
	width: 100%;
	}
	}


/*list -----------------------------------------*/
.list{
	margin-bottom: 1.7em;
}


.list li {
	text-indent: -1em;
	padding-left: 1em;
}

.list-dot li {
	list-style: none;
	text-indent: -1.2em;
	padding-left: 1.2em;
}
.list-dot li:before {
	content: "・";
}

.list-nodot li {
	list-style: none;
	text-indent: -1.2em;
	padding-left: 1.2em;
	margin: 0;
}
.list-nodot li:first-child {
	margin-top: -14px;
}


.list-nodot-fullwidth li {
	list-style: none;
	text-indent: -3em;
	padding-left: 3em;
	margin: 0;
}
.list-nodot-fullwidth li:first-child {
	margin-top: -14px;
}


/* table ----------------------- */
.nowrap{
	white-space: nowrap
}

	/* nowrap (only pc) */
	@media screen and (min-width:1000px){
	.nowrap-pc{
		white-space: nowrap
	}
	}


/* mobile phone  or pc only---------------------------*/
/* Display on mobile phone only */
.sf-ol{
}
	@media screen and (min-width:959px){
	.sf-ol{
		display: none;
	}
	}

/* For xslide (only mobile phone) */
	@media screen and (max-width:980px){
	.jm-tbl-sp{
		width:980px;
	}
	.jm-tbl-nowrap{
		overflow-x: auto;
		/* padding: 0 2px; */
	}
	}

	@media screen and (max-width:980px){
	.br-pc{
		display: none;
	}
	}
	@media screen and (min-width:981px){
	.br-sp{
		display: none;
	}
	}

table.table-w70 {
	width: 70%;
}
	@media screen and (max-width:980px){
	table.table-w70{
	width: 100%;
	}
	}

/* td center  */
table.tdcnt_nf td:nth-child(n+2), th {
	text-align: center;
}


/* border--------------------------------------------------- */
.bd-eee{
	border: 1px solid #eee;
}


/* flex ------------------------------- */
.float-left-pc{
	float: left;
}
	@media screen and (max-width:980px){
		.float-left-pc{
			clear: all;
			width: 100%;
			margin: 0 auto;
			padding: 1em 2em;
		}
	}


/* other ------------------------------- */
.hidden{
	display: none;
}

.underline{
  text-decoration: underline;
}


/* Temporary message ------------------------------- */
.t-message{
	padding: 5px 0;
	border: 1px solid rgb(231, 231, 231);
}

.t-spe-text span{
	display: block;
	padding: 2px 3px;
	background-color:rgb(243, 215, 215);
	margin: 0 30px;
	border-radius: 10px;
	font-size: 12px;
}

.t-spe-text2 span{
	display: block;
	padding: 2px 3px;
	background-color:rgb(243, 215, 215);
	margin: 0px;
	border-radius: 20px;
	font-size: 12px;
}


/* --------------------------------
sustainability・ESG
------------------------------- */
.esgtop-mainbox{
	display: flex;
	justify-content: space-around
}
	@media screen and (max-width:980px){
		.esgtop-mainbox{
			display: block;
			
		}
	}
.esgtop-mainbox a{
	text-decoration: none;
}
.esgtop-mainbox a:hover{
	text-decoration:underline;
}

.esgtop-box{
	padding: 0px 0px;
	
}
	@media screen and (max-width:980px){
	.esgtop-box:nth-child(n+2){
		padding-top: 2em;
	}
	}

.esgtop-box:first-child{
	margin-right: 2em;
}
	@media screen and (max-width:980px){
	.esgtop-box:first-child{
		margin-right: 0em;
	}
	}

/* subtitle-------------------- */
.esgtop-h3{
	font-size: 1.5em;
	font-weight: 700;
	background: #fff;
	margin: 0;	/*common style delete*/
	padding: 0 0.5em;
	line-height: 2.5;
	border-left: 2px solid #CC2C2F;
}

/* img --------------------------*/
.esgtop-subimg{
	width: 560px;
	/* width: 520px; */
	/* width: 493px; */
	/* margin-top:20px; */
	position: relative;
	/* box-shadow: 0px 0px 10px rgb(179, 179, 179); */
}
	@media screen and (max-width:980px){
	.esgtop-subimg{
		width: 100%;
		margin-top:0px;
	}
	}

.esgtop-subimg_text{
	color: #fff;
	font-size: 2em;
	position: absolute;
	top: 0px;
	left: 8px;
	padding: 30px 0 0 50px;
	display: block;
	background: linear-gradient(90deg, rgba(255, 255, 255, 60%), rgba(255, 255, 255, 0));
}

/* under img text------------------------- */
.esgtop-subtit{
	font-size: 1.5em;
	position: relative;
	padding-left: 1.5em;
}
	@media screen and (max-width:980px){
		.esgtop-subtit{
		display: block;
		background:rgb(240, 240, 240);
		padding-left: 0;
		text-decoration: underline;
		}
	}

@media screen and (min-width:1000px){
	.esgtop-subtit::before{
		content: "";
		position: absolute;
		top: 0%;
		left: 0%;
		display: block;
		width: 14px;
		height: 14px;
		margin-top: 10px;
		border-right: 2px solid rgb(121, 121, 121);
		border-top: 2px solid rgb(121, 121, 121);
		transform: rotate(45deg) skew(20deg, 20deg);
	}
}

.esgtop-ul li{
	list-style: none;
	padding-left: 30px;
}
	@media screen and (max-width:980px){
		.esgtop-ul li{
		padding-left: 0px;
		}
	}