@charset "utf-8";
/*=============================================================
 base Layout
=============================================================*/
/* a Element
--------------------------------------------------------------*/
a{
	color:#333;
	text-decoration:none;
}
a:visited{color:#5d3fbb;}
a:hover{
	color:#333;
	text-decoration:underline;
}
/* noLink */
.noLink{
	pointer-events: none;
	color: #ccc!important;
}
/* noLine */
a.noLine,
a.noLine:hover{
	color:#333;
	text-decoration: none!important;
}

/* container
--------------------------------------------------------------*/
#container{
	overflow:hidden;
}
body,
#container{
  display:flex;
  flex-direction:column;
  min-height:100vh;
}
/* pageBody
-------------------------------------------------------------*/
#pageBody{
	padding-top:130px;/*描画時のヘッダーの高さ用*/
}
/* contentsInner
-------------------------------------------------------------*/
.contentsInner{
	max-width:1000px;
	margin:0 auto;
	padding:0 40px;
}
.narrow{
	max-width:600px;
	margin:0 auto;
}
.oldInner{
	max-width: 720px;
	margin:0 auto;
}
/* contentsArea
-------------------------------------------------------------*/
#contentsArea{}
.setLocalMenu{
	display:flex;
	align-items:flex-start;
}
/* contents
-------------------------------------------------------------*/
#contents{
	line-height:1.85;
	margin-top:100px;
	padding-bottom:100px;
}
#contents p + p{margin-top: 1em;}

/* section
-------------------------------------------------------------*/
section:not(:first-child){margin-top: 100px;}
/*section + section{margin-top: 100px!important;}*/
section>section{margin-top: 60px!important;}

/* box-full
-------------------------------------------------------------*/
.box-full{
	background:#e6002d;
	margin-right:calc(50% - 50vw);
	margin-left:calc(50% - 50vw);
	padding-right:calc(50vw - 50%);
	padding-left:calc(50vw - 50%);
	padding-top: 4.0rem;
	padding-bottom: 4.0rem;
}

.bdr-full{
	border-top:1px solid #d2d2d2;
	margin-right:calc(50% - 50vw);
	margin-left:calc(50% - 50vw);
	padding-right:calc(50vw - 50%);
	padding-left:calc(50vw - 50%);
}
.box-fullW {
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
}
/* topicPathArea
-------------------------------------------------------------*/
#topicPathArea{
	padding:10px 0 15px;
}
#topicPathArea a{color: #333;}
#topicPathArea .contentsInner{
	display:flex;
	flex-wrap:wrap;
	align-items:center;
}
/* topicPath */
#topicPath{
	font-size: 14px;
	display:flex;
	flex-wrap:wrap;
	margin-right:auto;
}
#topicPath li{margin:5px 6px 0 0;}
#topicPath li:not(:first-child)::before{
	content:'>';
	padding-right:5px;
}
/* link */
#topicPath+*{
	display:flex;
	flex-wrap:wrap;
	margin-left:auto;
}
#topicPath+* li{margin:5px 0 0 10px;}


/*=============================================================
 text
=============================================================*/
/* font setting
--------------------------------------------------------------*/
.textBold{font-weight:bold;}
.textNormal{font-weight:normal !important;}

/*---.nowrap   --- SmartPhone :nowrap */
/*---.nowrap-spNo --- SmartPhone :normal */
/*---.nowrap-pc --- SmartPhone/tablet P :normal */
.nowrap,
.nowrap-pc{white-space:nowrap;}
.textBreak{word-break:break-all;}

small{font-size:100%;}
.textSS{font-size:75%;}
.textS{font-size:87.5%;}
.textL{font-size:112.5%;} 
.textLL{font-size:125%;}
.textXXL{font-size:200%;}
.font-variable{font-size:calc(0.875rem + ((1vw - 7.48px) * 1.5358));}

/* keyColor
--------------------------------------------------------------*/
.keyColorRed{color: #e6002d;}
.keyColorOrenge{color: #fa9600;}

.keyColorRed-Bg{
	background: #e6002d;
	color: #fff;
	padding: 10px;
	box-sizing: border-box;
}
.keyColorOrenge-Bg{
	background: #fa9600;
	color: #fff;
	padding: 10px;
	box-sizing: border-box;
}

/* indent
--------------------------------------------------------------*/
.indent{
	text-indent: -1.5em;
  padding-left: 1.5em;
}

/* figure
--------------------------------------------------------------*/
figure + figure{margin-top: 40px;}

/* figcaption
--------------------------------------------------------------*/
figure figcaption,
.figcaption{
	font-size:1.4rem;
	line-height: 1.4;
	padding-top:8px;
}

/* bdrT
--------------------------------------------------------------*/
.bdrT{border-top:1px solid #ccc;}

/* atn
--------------------------------------------------------------*/
.text-atnTtl{
	font-size:1.4rem;
	font-weight: bold;
}
.text-atn,
.text-atnNo,
.text-atnNum,
.text-note{
	font-size:1.4rem;
	line-height:1.6;
	margin-top:25px;
}
.text-atnTtl + .text-atn,
.text-atnTtl + .text-atnNo,
.text-atnTtl + .text-atnNum{margin-top: 0;}

.text-atn:not(ul):not(ol),
.text-atn li{
	text-indent:-0.793em;
	margin-left:0.793em;
}
.text-atnNum:not(ul):not(ol),
.text-atnNum li{
	text-indent:-1.507em;
	margin-left:1.507em;
}
.text-note:not(ul):not(ol),
.text-note li{
	text-indent:-3.172em;
	margin-left:3.172em;
}
.text-atnNo>li:not(:first-child){margin-top: 1em;}

/* profile-name
--------------------------------------------------------------*/
.profile-name{
	font-size: 1.4rem;
}
.profile-name>span{
	display: block;
	margin: 14px 0 ;
	font-size: 1.8rem;
	line-height: 1.4;
	font-weight: bold;
}

/*=============================================================
 other
=============================================================*/
.group.global.list .icon{
	width: 17px;
	height: 17px;
	display: inline-block;
	margin: 5px 5px 0 0;
} 

/*=============================================================
 pageTtlArea
=============================================================*/
/* pageTtlArea
-------------------------------------------------------------*/
#pageTtlArea{
	position: relative;
	display: flex;
  align-items: center;
	text-align: center;
	height: 430px;
	box-sizing: border-box;
}
#pageTtlArea.fourth{
	height: inherit;
	padding-bottom: 200px;
}
#pageTtl{
	font-size: 4.2rem;
	line-height: 1.4;
}
#pageTtlArea.pageTtlImg #pageTtl,
#pageTtlArea.fourth #pageTtl{
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	text-align: left;
	line-height: 1.2;
	color:#fff;
	background: rgb(229,0,45);
background: linear-gradient(90deg, rgba(229,0,45,1) 0%, rgba(240,134,2,1) 100%);
	height: 200px;
	width: 95%;
	margin-left: 5%;
	position: absolute;
	bottom: 0;
	padding: 43px;
	margin-bottom: -100px;
	box-sizing: border-box;
}
#pageTtlArea.fourth #pageTtl{
	bottom:inherit;
	top:0;
	margin-bottom: 0;
}
#pageTtlArea.pageTtlImg .pageTtlImg>span{
	display: block;
}
#pageTtlArea.pageTtlImg{
	height: 430px;
	margin-bottom: 180px;
	margin-top: -44px;
	z-index: -1;
}
#pageTtlArea.pageTtlImg.third{
	height: 290px;
	margin-bottom: 175px;
}
#pageTtlArea.pageTtlImg h1{margin-top: 0px;}

/* #PageID/PageClass */
#tmpl .pageTtlImg{background: url("/eng/shared/image/pageTtl_h430.jpg")center center/cover;}
#ID.CLASS .pageTtlImg{background: url("")center center/cover;}

/* business */
#business.group.business .pageTtlImg{background: url("/eng/group/business/image/pageTtl.jpg")center center/cover;}
#business.group.processed .pageTtlImg.third{background: url("/eng/group/business/image/pageTtl_processed.jpg")center center/cover;}
#business.group.meats .pageTtlImg.third{background: url("/eng/group/business/image/pageTtl_meats.jpg")center center/cover;}
#business.group.overseas .pageTtlImg.third{background: url("/eng/group/business/image/pageTtl_overseas.jpg")center center/cover;}
#business.group.others .pageTtlImg.third{background: url("/eng/group/business/image/pageTtl_others.jpg")center center/cover;}
#business.group.global .pageTtlImg.third{background: url("/eng/group/global/image/pageTtl.jpg")center center/cover;}

/* group(about)*/
#about.top .pageTtlImg{background: url("/eng/group/image/pageTtl.jpg")center center/cover;}
#about.business .pageTtlImg{background: url("/eng/group/business/image/pageTtl.jpg")center center/cover;}
/* #about.at_a_glance .pageTtlImg.third{background: url("/eng/group/at_a_glance/image/pageTtl.jpg")center center/cover;} */
#about.vision .pageTtlImg.third{background: url("/eng/group/vision/image/pageTtl.jpg")center center/cover;}
#about.outline.profile .pageTtlImg.third{background: url("/eng/group/outline/image/pageTtl_profile.jpg")center center/cover;}
#about.outline.executive .pageTtlImg.third{background: url("/eng/group/outline/image/pageTtl_executive.jpg")center center/cover;}
#about.rd .pageTtlImg{background: url("/eng/group/rd/image/pageTtl.jpg")center center/cover;}
#about.compliance .pageTtlImg{background: url("/eng/group/compliance/image/pageTtl.jpg")center center/cover;}
#about.quality .pageTtlImg{background: url("/eng/group/quality/image/pageTtl.jpg")center center/cover;}
#about.outline.history .pageTtlImg.third{background: url("/eng/group/outline/image/pageTtl_history.jpg")center center/cover;}
#about.vision2030 .pageTtlImg.third{background: url("/eng/ir/policy/image/pageTtl_vision2030.jpg")center center/cover;}

/* ir(investor) */
#investor.top .pageTtlImg{background: url("/eng/ir/image/pageTtl.jpg")center center/cover;}
#investor.policy .pageTtlImg.third{background: url("/eng/ir/policy/image/pageTtl.jpg")center center/cover;}
#investor.plan .pageTtlImg.third{background: url("/eng/ir/policy/image/pageTtl_plan.jpg")center center/cover;}
#investor.highlight .pageTtlImg.third{background: url("/eng/ir/highlight/image/pageTtl.jpg")center center/cover;}
#investor.stock_info .pageTtlImg.third{background: url("/eng/ir/stock_info/image/pageTtl.jpg")center center/cover;}
#investor.library .pageTtlImg.third{background: url("/eng/ir/library/image/pageTtl.jpg")center center/cover;}
#investor.annual .pageTtlImg.third{background: url("/eng/ir/library/annual/image/pageTtl.jpg")center center/cover;}
#investor.message .pageTtlImg.third{background: url("/eng/ir/library/annual/image/pageTtl_message.jpg")center center/cover;}
#investor.events .pageTtlImg.third{background: url("/eng/ir/events/image/pageTtl.jpg")center center/cover;}
#investor.governance .pageTtlImg.third{background: url("/eng/ir/governance/image/pageTtl.jpg")center center/cover;}


/* csr(sustainability) */
#sustainability.top .pageTtlImg{background: url("/eng/csr/image/pageTtl.jpg")center center/cover;}
#sustainability.nhgroup .pageTtlImg.third{background: url("/eng/csr/nhgroup/image/pageTtl.jpg")center center/cover;}
#sustainability.food_sports .pageTtlImg.third{background: url("/eng/csr/food_sports/image/pageTtl.jpg")center center/cover;}
#sustainability.environment .pageTtlImg.third{background: url("/eng/csr/environment/image/pageTtl.jpg")center center/cover;}
#sustainability.human .pageTtlImg.third{background: url("/eng/csr/human/image/pageTtl.jpg")center center/cover;}


/* navLocalMenu(backnumber) */
#navLocalMenu li.act a{
	pointer-events: none;
	color: #ccc!important;	
}
/*=============================================================
 title
=============================================================*/
[class^="ttl-"]+[class^="ttl-"]{margin-top:40px;}

/* h1
--------------------------------------------------------------*/
.ttl-h1{

}
/* h2
--------------------------------------------------------------*/
.ttl-h2{
	font-size:4.0rem;
	line-height:1.2;
	font-weight:bold;
	margin-bottom: 40px;
}

/* ttl-h2-animation */
.ttl-h2 span{
	position: relative;
}
.ttl-h2 span::after{
	content:"";
	display:block;
	width:100px;
	height:2px;
	background-color:#e6002d;
	position:absolute;
	/*bottom:-10px;*/
	left:0px;
	transform:scaleX(0);
	transform-origin:left bottom;
	transition:all 0.3s ease 0.1s;
}
.ttl-h2.ttl-h2-animation span::after{
	background-color:#e6002d;
	transform:scaleX(1);
}


/* h3
--------------------------------------------------------------*/
.ttl-h3{
	font-size:2.8rem;
	line-height:1.3;
	font-weight:bold;
	margin:80px 0 40px;
}
section .ttl-h3:first-child{margin-top: 0;}
[class^="col-"] figure + .ttl-h3,
[class^="col-"] .ttl-h3 + p{margin: 20px 0 0;}

/* h4
--------------------------------------------------------------*/
.ttl-h4{
	font-size:2.4rem;
	line-height:1.4;
	font-weight:bold;
	margin:80px 0 24px;
}
section .ttl-h4:first-child{margin-top: 0;}

/* h5
--------------------------------------------------------------*/
.ttl-h5{
	font-size:2.0rem;
	line-height:1.4;
	font-weight:bold;
	margin:80px 0 24px;
}
section .ttl-h5:first-child{margin-top: 0;}

/* h6
--------------------------------------------------------------*/
.ttl-h6{
	font-size:1.8rem;
	line-height:1.4;
	font-weight:bold;
	margin-bottom: 10px;
}
section .ttl-h6:first-child{margin-top: 0;}

/* ttl-etc
--------------------------------------------------------------*/
.ttl-20{
	font-size:2.0rem;
	line-height:1.3;
	margin-bottom: 10px;
}
.ttl-18{
	font-size:1.8rem;
	line-height:1.3;
	margin-bottom: 10px;
}

/* ttl-fig
--------------------------------------------------------------*/
.ttl-fig{
	font-size:2.0rem;
	line-height:1.4;
	font-weight:bold;
	margin:20px 0 20px;
}

/* lead
--------------------------------------------------------------*/
.lead{
	font-size:2.4rem;
	line-height:1.4;
	font-weight:bold;
	margin:120px 0;
}


/*=============================================================
 col
=============================================================*/
[class^="col-"]+[class^="col-"]{margin-top:80px;}
/*[class^="col-"] p + p{margin-top: 30px!important;}*/
[class^="col-"] .ttl-h2{
	font-size: 2.4rem;
	margin-top: 20px;
	margin-bottom: 30px;
}

.col-2,.col-3,.col-4{
	display:flex;
	flex-wrap:wrap;
}
.col-2>*,.col-3>*,.col-4>*{
	box-sizing:border-box;
	margin-left:40px;
	margin-top: 40px;
}
.col-3>*{margin-left: 32px;}
.col-4>*{margin-left: 32px;}
.col-2>*{width:calc((99.9999% - 40px) / 2);}
.col-3>*{width:calc((99.9999% - 64px) / 3);}
.col-4>*{width:calc((99.9999% - 96px) / 4);}
.col-2>*:nth-child(2n+1),
.col-3>*:nth-child(3n+1),
.col-4>*:nth-child(4n+1){margin-left:0;}
.col-2>*:nth-child(-n+2),
.col-3>*:nth-child(-n+3),
.col-4>*:nth-child(-n+4){margin-top:0;}

/* col-clm
-------------------------------------------------------------*/
.col-2.col-clm2-1>*:nth-child(even),
.col-2.col-clm3-1>*:nth-child(even){margin-left: 40px;}
.col-2.col-clm2-1>*:nth-child(odd),
.col-2.col-clm1-2>*:nth-child(even){width:calc((100% - 80px) / 3 * 2 + 40px);}
.col-2.col-clm2-1>*:nth-child(even),
.col-2.col-clm1-2>*:nth-child(odd){width:calc((100% - 80px) / 3);}
.col-2.col-clm3-1>*:nth-child(odd),
.col-2.col-clm1-3>*:nth-child(even){width:calc((100% - 80px) / 4 * 3 + 40px);}
.col-2.col-clm3-1>*:nth-child(even),
.col-2.col-clm1-3>*:nth-child(odd){width:calc((100% - 80px) / 4);}

/*=============================================================
 list
=============================================================*/
[class^="list-"] [class^="list-"]{margin-top:1em;}
[class^="list-"]>li>span{
	font-weight: bold;
	display: block;
	margin-bottom: .6em;
}
/* list-circle
-------------------------------------------------------------*/
.list-circle{
	line-height:1.6;
	margin-top:20px;
}
.list-circle>li{
	padding-left:1em;
	margin-top:1em;
	position:relative;
}
.list-circle>li::before{
	content:"";
	background:#333;
	display:block;
	width:0.4em;
	height:0.4em;
	border-radius:100%;
	position:absolute;
	top:0.5em;
	left:0;
}

/* list-num
-------------------------------------------------------------*/
.list-num{
	line-height:1.4;	
	margin-top:20px;
	margin-left:2em;
}
.list-num>li{
	list-style-type:decimal;
	margin-top:1em;
}

/* list-line
-------------------------------------------------------------*/
.list-line{
	line-height:1.4;	
	margin-top:20px;
}
.list-line>li{
	margin-top:1em;
	padding-bottom: 1em;
	border-bottom: 1px solid #ccc;
}
.list-line>li:last-child{
	padding-bottom: 0;
	border: none;
}

/* list-date
-------------------------------------------------------------*/
.list-date{line-height:1.6;border-top:1px solid #ccc;}
.list-date dt{
	white-space:nowrap;
	width:160px;
	padding:24px 20px 0 0;
	position:relative;
}
.list-date dd{
	margin-top:-1.6em;
	padding:0 0 20px 180px;
	border-bottom:1px solid #ccc;
}
.list-date.label dt{
	width: 100%;
	padding:24px 0 0 0;
}
.list-date.label dt>span{
	display: inline-block;
	line-height: 1.2;
	font-size: 1.2rem;
	width:80px;
	text-align: center;
	margin-left: 10px;
	color: #fff;
	background: #e6002d;
	padding: 2px 2px 1px;
	box-sizing: border-box;
}
.list-date.label dd{
	margin-top:0em;
	padding:0 0 20px 0;
}
/*=============================================================
 box
=============================================================*/
[class^="boxed-color0"]+[class^="boxed-color0"]{margin-top:4em;}
[class^="boxed-color0"]>[class^="col-"],
[class^="boxed-bdr"]>[class^="col-"]{margin-bottom: 0;}

[class^="boxed-color0"],[class^="boxed-bdr"]{
	padding: 40px;
	box-sizing: border-box;
}

/* boxed-color01
-------------------------------------------------------------*/
.boxed-color01{background: #f3f5f8;}

/* boxed-color02
-------------------------------------------------------------*/
.boxed-color02{background: #f3f5f8;}

/* boxed-bdr
-------------------------------------------------------------*/
.boxed-bdr{border: 1px solid #ccc;}

/* boxed-ttl
-------------------------------------------------------------*/
.boxed-ttl{
	font-size: 2.0rem;
	font-weight: bold;
	margin-bottom: 1em;
}
.boxed-ttl-XXL{
	font-size: 4.0rem;
}
/*=============================================================
 table / dl
=============================================================*/
/* table-default 
-------------------------------------------------------------*/
.table-dl [class^="col-"]{margin-bottom:0;}
.table-dl [class^="col-"] .list-circle>li{margin-top: .4em;}

.table-default{
	width:100%;
	border-collapse:collapse;
	line-height: 1.5;
}
.table-default th,
.table-default td{
	background-color:#fff;
	padding:10px 20px;
	border-bottom:1px solid #ccc;
}
.table-default .bdrT{border-top:1px solid #ccc;}
.table-default .bdrR{border-right:1px solid #ccc;}
.table-default .bdrB{border-bottom:1px solid #ccc;}
.table-default .bdrL{border-left:1px solid #ccc;}
.table-default th{font-weight:bold;}
.table-default th{background-color:#f3f5f8;}
.table-default thead th{
	background-color:#e9ebee;
	border-top:1px solid #ccc;
}
.table-default tr:last-child th,
.table-default tr:last-child td{border-bottom:1px solid #ccc;}
.table-default .ttl{background-color:#fff;}
.table-default .bg,
.table-default .bg th,
.table-default .bg td{background-color:#f3f5f8;}

/*table-dl
--------------------------------------------------------------*/
/* table-dl */
.table-dl{
	display: flex;
	flex-wrap: wrap;
	/*border-top: 1px solid #999999;*/
	border-bottom: 1px solid #ccc;
}
.table-dl dt,
.table-dl dd{
	border-top: 1px dotted #ccc;
	box-sizing: border-box;
	padding: 20px;
}
.table-dl dt{
	display: flex;
	align-items: center;
	background: #f3f5f8;
	font-weight: 700;
	width: 20%;
}
.table-dl dd{width: calc(100% - 20%);}

/*=============================================================
 link
=============================================================*/
/* base setting
-------------------------------------------------------------*/
a.inline{
	color:#e6002d!important;
	text-decoration: none!important;
}
a.inline:hover{text-decoration: underline!important;}

.link-arw a,
a.link-arw,
a .link-arw,
a[href^="#ac"]{
	color:#333;
	line-height:1.4;
	display:inline-block;
	padding:4px 0 4px 20px;
	position:relative;
	text-decoration: none;
}
.link-arw a:hover,
.link-arw:hover,
a[href^="#ac"]:hover{text-decoration: underline;}

ul.link-arw>li>ul.link-arw{
	padding-left: 1em;
	box-sizing: border-box;
}

.link-arw a::before,
a.link-arw::before,
a .link-arw::before,
a[href^="#ac"]::before{
	content: "";
	display: block;
	width: 6px;
	height: 6px;
	border-bottom: 2px solid #e6002d;
	border-right: 2px solid #e6002d;
	position: absolute;
	top: calc(0.8em - 2.6px);
	left: 3px;
}
a[target="_blank"]::after, a[href$=".pdf"]::after,
a.iconPdf::after{
	content: '';
	display: inline-block;
	margin: 0 5px;
	margin-bottom: -3px;
}
/* link-arw
-------------------------------------------------------------*/
.link-arw a::before,
a.link-arw::before,
a .link-arw::before{transform: rotate(-45deg);}

/* link-ac
-------------------------------------------------------------*/
a[href^="#ac"]::before{transform: rotate(45deg);top: calc(0.8em - 5px);}
a[href^="#ac"].ac-up::before{transform: rotate(-135deg);top: calc(0.8em - 0px);}


/* link-flow
-------------------------------------------------------------*/
.link-flow{
	display:flex;
	flex-wrap:wrap;
	align-items:flex-start;
	margin-left:-3.0rem;
}
.link-flow li{margin-left:3.0rem;}
.link-list li + li{margin-top: .8rem;}

/* link-icon / base setting
-------------------------------------------------------------*/
a[target="_blank"],a[href$=".pdf"],a.iconPdf{
	line-height:1.4;
	display: inline-block;
	padding:4px 0 4px 0;
	box-sizing: border-box;
	color: #333;
	text-decoration: none;
}
a[target="_blank"]:hover,a[href$=".pdf"]:hover,a.iconPdf:hover{text-decoration: underline;}

.link-arw a[target="_blank"],
a[target="_blank"].link-arw{padding:4px 0 4px 20px;}
.link-arw a[href$=".pdf"],
a[href$=".pdf"],
a.iconPdf{
	position: relative;
	padding:4px 0 4px 32px;
}

/* link-icon
-------------------------------------------------------------*/
/* blank */
a[target="_blank"]::after{
	background: url("/eng/shared/image/icon_blank.png")no-repeat;
	width: 12px;
	height:12px;
	margin-bottom: -1px;
}

/* pdf */
a[href$=".pdf"]::after,
a.iconPdf::after{
	background: url("/eng/shared/image/icon_pdf.png")no-repeat;
	width: 20px;
	height:21px;
	position: absolute;
	top: 0.2em;
	left: -2px;
}

a.iconPdf-white{color: #fff;}
a.iconPdf-white::after{
	background: url("/eng/shared/image/icon_pdf_w.png")no-repeat;
	width: 20px;
	height:21px;
	position: absolute;
	top: 0.2em;
	left: -2px;
}

/*=============================================================
 link-btn
=============================================================*/
/* btn setting
-------------------------------------------------------------*/
[class^="link-btn"]>*+*{
	margin-top: .4em;
}

.link-btn a,
a.link-btn,
.link-btn-gray a,
a.link-btn-gray{
	position:relative;
	display:inline-block;
	line-height: 1.2;
	border-radius: 100px;
	transition:all .3s;
	text-decoration: none;
	overflow: hidden;
	z-index: 1;
	text-align: center;
  outline: none;
}
.link-btn a>span,
a.link-btn>span,
.link-btn-gray a>span,
a.link-btn-gray>span{
	display: flex;
	justify-content: center;
	align-items: center;
	color:#e6002d;
	border: 1px solid #e6002d;
	border-radius: 100px;
	font-size: 1.8rem;
	min-height: 3.8rem;
	padding: 0.3em 2.4em 0.3em 2.4em;
	box-sizing:border-box;
	position: relative;
	z-index: 3
}
.link-btn-gray a>span,
a.link-btn-gray>span{
	color:#333;
	border: 1px solid #ccc;
}

.link-btn a:hover span,
a.link-btn:hover span{color: #fff;}

.link-btn a:before,
a.link-btn:before,
.link-btn-gray a:before,
a.link-btn-gray:before{
	content: '';
 	position: absolute;
 	top: 0;
 	left: 0;
 	z-index: 0;
 	background:#e6002d;
 	width: 100%;
	height: 100%;
 	transition: transform .6s cubic-bezier(0.8, 0, 0.2, 1) 0s;
 	transform: scale(0, 1);
	transform-origin: right top;
}
.link-btn-gray a:before,
a.link-btn-gray:before{background:#ccc;}

.link-btn a:hover:before,
a.link-btn:hover:before,
.link-btn-gray a:hover:before,
a.link-btn-gray:hover:before{
	transform-origin:left top;
	transform:scale(1, 1);
}

/* btn-flow
-------------------------------------------------------------*/
.btn-flow{
	display:flex;
	flex-wrap:wrap;
	justify-content: center;
	align-items:center;
	margin-left:-3.0rem;
}
.btn-flow li{margin:1.0rem 0 0 3.0rem;}


/* link-icon
-------------------------------------------------------------*/
.link-btn a,
.link-btn-gray a{padding: 0;}

.link-btn a:not([target="_blank"])::after,
a:not([target="_blank"]).link-btn::after,
.link-btn-gray a:not([target="_blank"])::after,
a:not([target="_blank"]).link-btn-gray::after{
	content: "";
	display: block;
	width: 6px;
	height: 6px;
	border-bottom: 2px solid #e6002d;
	border-right: 2px solid #e6002d;
	position: absolute;
	top: 50%;
	margin-top: -3px;
	right: 20px;
}

.link-btn a::after,
a.link-btn::after,
.link-btn-gray a::after,
a.link-btn-gray::after{transform: rotate(-45deg);}

.link-btn a:not([target="_blank"]):hover::after,
a:not([target="_blank"]):hover.link-btn::after{
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
}

/* blank */
.link-btn a[target="_blank"]::after,
a[target="_blank"].link-btn::after,
.link-btn-gray a[target="_blank"]::after,
a[target="_blank"].link-btn-gray::after{
	background: url("/eng/shared/image/icon_blank_red.png")no-repeat;
	width: 12px;
	height:12px;
	margin-bottom: -1px;
	position: absolute;
	top: 50%;
	margin-top: -6px;
	right: 16px;
	transform:none;
}
.link-btn a:hover[target="_blank"],
a:hover[target="_blank"].link-btn,
.link-btn-gray a:hover[target="_blank"],
a:hover[target="_blank"].link-btn-gray{text-decoration: none;}

.link-btn a:hover[target="_blank"]::after,
a:hover[target="_blank"].link-btn::after{
	background: url("/eng/shared/image/icon_blank_white.png")no-repeat;
	width: 12px;
	height:12px;
}

/* .box-full .link-btn */
.box-full .link-btn a>span,
.box-full a.link-btn>span{
	color:#fff;
	border: 1px solid #fff;
}
.box-full .link-btn a:hover span,
.box-full a.link-btn:hover span{
	color: #e6002d;
	border: 1px solid #e6002d;
}
.box-full .link-btn a:before,
.box-full a.link-btn:before{
	background: #fff;
}
.box-full .link-btn a:not([target="_blank"])::after,
.box-full a:not([target="_blank"]).link-btn::after{
	border-bottom: 2px solid #fff;
	border-right: 2px solid #fff;
}
.box-full .link-btn a:not([target="_blank"]):hover::after,
.box-full a:not([target="_blank"]).link-btn:hover::after{
	border-bottom: 2px solid #e6002d;
	border-right: 2px solid #e6002d;
}


/*=============================================================
 seclect-box
=============================================================*/
.seclect-box{
	position: relative;
  width: 312px;
  margin: 20px 0 20px;	
}
.seclect-box:after{
  position: absolute;
  top: 50%;
  right: 15px;
  width: 6px; 
  height: 6px; 
	margin-top: -6px;
  border-top: 2px solid #e70632;
  border-right: 2px solid #e70632; 
  transform: rotate(135deg);
  pointer-events: none;
  content: ""; 
 }
.seclect-box .pulldown{
  appearance: none; 
  width: 312px;
  height: 60px;
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 2px;
  color: #333;
  padding: 10px 30px;
  cursor: pointer;
}
::-ms-expand {
  display: none;
}

/*=============================================================
 toggle
=============================================================*/
/* toggle-set
--------------------------------------------------------------*/
.toggle-set .toggle-btn,
.toggle-set .toggle-close{
	cursor:pointer;
	-webkit-user-select:none;
	-moz-user-select:none;
	-ms-user-select:none;
	user-select:none;
}
.toggle-set>.toggle-box{display:none;}
.toggle-set.open>.toggle-box{display:block;}

/* toggle-sp */
.toggle-sp .toggle-btn{cursor:auto;}
.toggle-sp .toggle-close{display:none;}
.toggle-sp>.toggle-box{display:block;}
.sp-noLink{}

/* delete JS Style */
@media only screen and (min-width:768px){
.toggle-sp>.toggle-box{display:block !important;}
}
/* box-toggle
--------------------------------------------------------------*/
.box-toggle{
	margin-top:70px;
	border-bottom:1px dotted #aaa;
}
.box-toggle+.box-toggle{margin-top:-1px;}
.box-toggle .toggle-btn,
.box-toggle .toggle-close{transition:.3s;}
.box-toggle>.toggle-btn{
	font-size:1.8rem;
	line-height:1.4;
	box-sizing:border-box;
	display:table;
	width:100%;
	border-top:1px dotted #ccc;
	position:relative;
}
.box-toggle>.toggle-btn>span{
	box-sizing:border-box;
	display:table-cell;
	vertical-align:middle;
	height:80px;
	padding:15px 40px 15px 0;
}
.box-toggle>.toggle-btn:after,
.box-toggle>.toggle-btn:before{
	content:"";
	background-color:#e6002d;
	display:block;
	width:12px;
	height:2px;
	margin-top:-1px;
	position:absolute;
	top:50%;
	right:3px;
	transition:all 0.3s ease;
}
.box-toggle>.toggle-btn:after{transform:rotate(90deg);}
.box-toggle.open>.toggle-btn:after{transform:rotate(0);}
.box-toggle>.toggle-box{display:none;}
.box-toggle.open>.toggle-box{
	font-size: 1.2rem;
	display:block;
	background: #f3f5f8;
	padding:20px;
}
/*=============================================================
 tabs
=============================================================*/
/* tab-set
--------------------------------------------------------------*/
.tab-set{margin-top: 60px;}

/* tab-btn */
.tab-btn{
	line-height:1.25;
	font-size:100%;
	font-weight:bold;
	display:flex;
	justify-content:space-between;
	flex-wrap:nowrap;
	margin-bottom:20px;
}
.tab-btn>li{
	font-size:93.75%;
	background-color:#f0f0f0;
	box-sizing:border-box;
	min-height:50px;
	width:calc((100% - 5px) / 4);
}
.tab-btn a{
	color:#aaa;
	display:table;
	width:100%;
	height:100%;
	box-sizing:border-box;
	text-decoration:none;
}
.tab-btn a:hover{
	color:#fff;
	background:#e6002d;
}
.tab-btn a.act{
	color:#fff;
	background-color:#e6002d;
}
.tab-btn a>span{
	display:table-cell;
	text-align:center;
	vertical-align:middle;
	padding:4px;
}
/* tab-panel */
.tab-set .tab-panel{display:none;}
.tab-set .tab-panel.act{display:block;}


/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 PC-large
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media (min-width:1920px){

}

/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Tab
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:1023px){
#pageBody{padding-top: 60px;}
#topicPathArea{display: none;}
#pageTtlArea.fourth{margin-top: 20px;}	
#pageTtlArea.fourth #pageTtl {top: inherit;}	
}
/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Smartphones
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*/
@media only screen and (max-width:767px){
/*=============================================================
 base Layout
=============================================================*/
/* a Element
--------------------------------------------------------------*/

/* container
--------------------------------------------------------------*/
#container{min-width:320px;}
body,
#container{}	
	
/* pageBody
-------------------------------------------------------------*/
#pageBody{padding-top: 60px;}
	
/* contentsInner
-------------------------------------------------------------*/
.contentsInner{padding:0 4%;}
	
/* contentsArea
-------------------------------------------------------------*/
.setLocalMenu{
	flex-direction:column;
}
	
/* contents
-------------------------------------------------------------*/
#contents{
	margin-top:20px;
	padding-bottom:50px;
}	
	
/* section
-------------------------------------------------------------*/
section:not(:first-child){margin-top: 60px;}
section>section{margin-top: 40px!important;}
	
/* topicPathArea
-------------------------------------------------------------*/
#topicPathArea{
	display: none;
}

/*=============================================================
 text
=============================================================*/
/* font setting
--------------------------------------------------------------*/

/* keyColor
--------------------------------------------------------------*/

/* figcaption
--------------------------------------------------------------*/

/* atn
--------------------------------------------------------------*/

/* profile-name
--------------------------------------------------------------*/

	 
	
/*=============================================================
 pageTtlArea
=============================================================*/
/* pageTtlArea
-------------------------------------------------------------*/
#pageTtl{font-size: 2.8rem;line-height: 1.1!important;}	
.food_sports #pageTtl{font-size: 2.2rem;}		
#pageTtlArea.pageTtlImg{
	height: 280px;
	margin-bottom: 140px;
	margin-top: -44px;
}	
#pageTtlArea.pageTtlImg #pageTtl,
#pageTtlArea.fourth #pageTtl{
	height: 120px;
	bottom: 0;
	padding: 16px;
	margin-bottom: -60px;
	box-sizing: border-box;
}
#pageTtlArea.pageTtlImg.third{
	height: 200px;
	margin-bottom: 100px;
}
#pageTtlArea.fourth{
	margin-top: 0;
	margin-bottom: 60px;
	padding-bottom: 140px;
}	
#pageTtlArea.fourth #pageTtl{
	top:inherit;
	margin-bottom: 0;
}
	
/*=============================================================
 title
=============================================================*/
[class^="ttl-"]+[class^="ttl-"]{}

/* h1
--------------------------------------------------------------*/
	
/* h2
--------------------------------------------------------------*/
.ttl-h2{
	font-size:2.8rem;
	margin-bottom: 40px;
}

/* h3
--------------------------------------------------------------*/
.ttl-h3{
	font-size:2.4rem;
	margin:60px 0 32px;
}
section .ttl-h3:first-child{margin-top: 0;}

/* h4
--------------------------------------------------------------*/
.ttl-h4{
	font-size:2.0rem;
	margin:60px 0 32px;
}
section .ttl-h4:first-child{margin-top: 0;}

/* h5
--------------------------------------------------------------*/
.ttl-h5{
	font-size:1.8rem;
	line-height:1.4;
	font-weight:bold;
	margin:60px 0 32px;
}
section .ttl-h5:first-child{margin-top: 0;}

/* h6
--------------------------------------------------------------*/

/* ttl-fig
--------------------------------------------------------------*/

/* lead
--------------------------------------------------------------*/
.lead{
	font-size:2.2rem;
	margin:100px 0;
}
	
	
/*=============================================================
 col
=============================================================*/
[class^="col-"]+[class^="col-"]{margin-top:60px;}	
	
.col-2,.col-3,.col-4{
	display:flex;
	flex-wrap:wrap;
}	
.col-2>*, .col-3>*, .col-4>*{margin-top: 0;}	
.col-2>*:nth-child(n),.col-3>*:nth-child(n),.col-4>*:nth-child(n){
	width:100%;
	margin-left:0;
	margin-bottom: 40px;
}
[class^="boxed-"]>[class^="col-"]>*:nth-child(n):not(:last-child){margin-bottom: 40px;}
.col-2>*:last-child,.col-3>*:last-child,.col-4>*:last-child{margin-bottom: 0;}
/*.col-2>*:nth-child(n+2),
.col-3>*:nth-child(n+2){margin-top:15px;}*/

.sp-col-2>*:nth-child(n){width:calc((99.9999% - 15px) / 2);}
.sp-col-3>*:nth-child(n){width:calc((99.9999% - 30px) / 3);}

.sp-col-2>*:nth-child(n),
.sp-col-3>*:nth-child(n){
	margin-top:15px;
	margin-left:15px;
}
.sp-col-2>*:nth-child(2n+1),
.sp-col-3>*:nth-child(3n+1){margin-left:0;}
.sp-col-2>*:nth-child(-n+2),
.sp-col-3>*:nth-child(-n+3){margin-top:0;}
	
/* col-clm
-------------------------------------------------------------*/
.col-2.col-clm2-1>*:nth-child(n),
.col-2.col-clm1-2>*:nth-child(n),
.col-2.col-clm3-1>*:nth-child(n),
.col-2.col-clm1-3>*:nth-child(n){width:100%;margin-left: 0;}

.table-dl [class^="col-"]>*:nth-child(n),	
.table-dl [class^="col-"].col-clm2-1>*:nth-child(n),
.table-dl [class^="col-"].col-clm1-2>*:nth-child(n),
.table-dl [class^="col-"].col-clm3-1>*:nth-child(n),
.table-dl [class^="col-"].col-clm1-3>*:nth-child(n){margin-bottom: 10px;}
	
/*=============================================================
 list
=============================================================*/
[class^="list-"] [class^="list-"]{}
[class^="list-"]>li>span{}
	
/* list-circle
-------------------------------------------------------------*/

/* list-num
-------------------------------------------------------------*/

/* list-date
-------------------------------------------------------------*/
.list-news a{line-height: 1.8;}	
.list-date dt{
	width:auto;
	padding: 1.6rem 0 0;
	font-weight: bold;
}
.list-date dd{
	margin-top:.5rem;
	padding:.4rem 0 1.4rem 0;
}
	
/*=============================================================
 box
=============================================================*/
[class^="boxed-color0"]+[class^="boxed-color0"]{margin-top:4em;}

[class^="boxed-color0"]{padding: 20px;}
	
	
/* boxed-color01
-------------------------------------------------------------*/

/* boxed-color02
-------------------------------------------------------------*/

/* boxed-ttl
-------------------------------------------------------------*/
.boxed-ttl-XXL{font-size: 3.0rem;}
	
/*=============================================================
 table / dl
=============================================================*/
/* table-default
--------------------------------------------------------------*/
.table-default th,
.table-default td{padding:5px;}

/* sp-table-scroll 
--------------------------------------------------------------*/
.sp-table-scroll{
	overflow:auto;
	/*white-space:nowrap;*/
	table-layout:auto;
	-webkit-overflow-scrolling:touch;
	position:relative;
	z-index:2;
}
.sp-table-scroll>table{margin-bottom:5px;}
.sp-table-scroll .cellFix{
	position:-webkit-sticky;
	position:sticky;
	top:0;
	left:0;
	z-index:1;
}
html:not(.win) .sp-table-scroll::-webkit-scrollbar{height:5px;}
html:not(.win) .sp-table-scroll::-webkit-scrollbar-track{
	background:#e3e4e5;
	border-radius:10px;
}
html:not(.win) .sp-table-scroll::-webkit-scrollbar-thumb{
	background:#84919d;
	border-radius:10px;
}
.sp-table-scroll .arwSc{
	background:url(/eng/shared/image/table-arw.png) no-repeat 0 0/auto 100px;
	width:100px;
	height:100px;
	margin:-50px 0 0 -50px;
	position:absolute;
	top:50%;
	left:50%;
	z-index:2;
	opacity:0;
	visibility:hidden;
	overflow:hidden;
	transition:opacity 0.2s ease-out;
}
.sp-table-scroll.sc .arwSc{
	opacity:1;
	visibility:visible;
}
/* table-default */
.sp-table-scroll .table-default{
	border-collapse:separate;
	border-spacing:0;
	width: 1000px;
}
.sp-table-scroll .table-default th,
.sp-table-scroll .table-default td{
	border-left:none;
	vertical-align: top;
}	
	
/*table-dl
--------------------------------------------------------------*/
.table-dl{display: block;}
.table-dl dt{
	display: block;
	width: 100%;
}
.table-dl dd{
	width: 100%;
	border-top: none;
}	

/*=============================================================
 link
=============================================================*/
	
/*=============================================================
 link-btn
=============================================================*/
	
/* btn-flow
-------------------------------------------------------------*/
.btn-flow{
	display:block;
	text-align: center;
	margin-left:0;
}
.btn-flow li{
	width: 80%;
	margin:1.0rem auto 0;
}
/*=============================================================
 tabs
=============================================================*/
/* tab-set
--------------------------------------------------------------*/
.tab-btn{flex-wrap: wrap;}
.tab-btn>li{
	width: calc((100% - 5px) / 2);
	margin-bottom: 5px;
}
	
}